@forge/cli
13.4.0-next.3-experimental-f258a6d13.4.0-next.5-experimental-016ed9d
out/site/graphql-client.js+
out/site/graphql-client.jsNew file+86
Index: package/out/site/graphql-client.js
===================================================================
--- package/out/site/graphql-client.js
+++ package/out/site/graphql-client.js
@@ -0,0 +1,86 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.DemoSiteGraphQLClient = void 0;
+const cli_shared_1 = require("@forge/cli-shared");
+class DemoSiteGraphQLClient {
+ graphqlClient;
+ constructor(graphqlClient) {
+ this.graphqlClient = graphqlClient;
+ }
+ async provisionDemoSite() {
+ const mutation = `
+ mutation forge_cli_provisionDemoSite {
+ provisionDemoSite {
+ success
+ errors {
+ message
+ extensions {
+ errorType
+ statusCode
+ }
+ }
+ taskId
+ cloudName
+ xnId
+ }
+ }
+ `;
+ const { response, requestId } = await this.graphqlClient.mutate(mutation, {});
+ const payload = response?.provisionDemoSite;
+ if (!payload || payload.success === false || !payload.taskId) {
+ const error = (0, cli_shared_1.getError)(payload?.errors);
+ const message = error.message ?? 'Failed to start demo site provisioning';
+ throw new cli_shared_1.GraphQlMutationError(`${message} (requestId: ${requestId || 'unknown'})`, {
+ requestId,
+ code: error.code,
+ statusCode: error.statusCode
+ });
+ }
+ return {
+ taskId: payload.taskId,
+ cloudName: payload.cloudName,
+ xnId: payload.xnId
+ };
+ }
+ async getDemoSiteProvisioning(taskId) {
+ const query = `
+ query forge_cli_demoSiteProvisioning($taskId: ID!) {
+ demoSiteProvisioning(taskId: $taskId) {
+ taskId
+ cloudName
+ status
+ startedAt
+ finishedAt
+ site {
+ dfId
+ cloudName
+ siteUrl
+ status
+ createdAt
+ expiresAt
+ }
+ }
+ }
+ `;
+ const result = await this.graphqlClient.query(query, { taskId });
+ return result?.demoSiteProvisioning ?? undefined;
+ }
+ async getDemoSite() {
+ const query = `
+ query forge_cli_demoSite {
+ demoSite {
+ dfId
+ cloudName
+ siteUrl
+ status
+ createdAt
+ expiresAt
+ }
+ }
+ `;
+ const result = await this.graphqlClient.query(query, {});
+ return result?.demoSite ?? undefined;
+ }
+}
+exports.DemoSiteGraphQLClient = DemoSiteGraphQLClient;
+//# sourceMappingURL=graphql-client.js.map
\ No newline at end of file