@forgecart/cli 2.202610121941.0 → 2.202610122208.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/dist/src/admin-api/admin-api-interruption.error.d.ts +11 -0
  2. package/dist/src/admin-api/admin-api-interruption.error.js +17 -0
  3. package/dist/src/admin-api/admin-api-interruption.error.js.map +1 -0
  4. package/dist/src/{sync/sync-api.error.d.ts → admin-api/admin-api-refusal.error.d.ts} +2 -2
  5. package/dist/src/{sync/sync-api.error.js → admin-api/admin-api-refusal.error.js} +5 -5
  6. package/dist/src/admin-api/admin-api-refusal.error.js.map +1 -0
  7. package/dist/src/admin-api/admin-api.client.d.ts +51 -0
  8. package/dist/src/admin-api/admin-api.client.js +157 -0
  9. package/dist/src/admin-api/admin-api.client.js.map +1 -0
  10. package/dist/src/admin-api/admin-api.result.d.ts +24 -0
  11. package/dist/src/admin-api/admin-api.result.js +75 -0
  12. package/dist/src/admin-api/admin-api.result.js.map +1 -0
  13. package/dist/src/admin-api/type/admin-api.types.d.ts +10 -0
  14. package/dist/src/admin-api/type/admin-api.types.js +2 -0
  15. package/dist/src/admin-api/type/admin-api.types.js.map +1 -0
  16. package/dist/src/authorization/cli-credential-check.d.ts +9 -1
  17. package/dist/src/authorization/cli-credential-check.js +19 -1
  18. package/dist/src/authorization/cli-credential-check.js.map +1 -1
  19. package/dist/src/cli.js +2 -1
  20. package/dist/src/cli.js.map +1 -1
  21. package/dist/src/commands/deploy.d.ts +8 -0
  22. package/dist/src/commands/deploy.js +23 -0
  23. package/dist/src/commands/deploy.js.map +1 -0
  24. package/dist/src/commands/placeholders.d.ts +0 -2
  25. package/dist/src/commands/placeholders.js +0 -9
  26. package/dist/src/commands/placeholders.js.map +1 -1
  27. package/dist/src/commands/sync.js +2 -8
  28. package/dist/src/commands/sync.js.map +1 -1
  29. package/dist/src/deploy/deploy-follow-bound.d.ts +37 -0
  30. package/dist/src/deploy/deploy-follow-bound.js +83 -0
  31. package/dist/src/deploy/deploy-follow-bound.js.map +1 -0
  32. package/dist/src/deploy/deploy-publish-refusal.d.ts +17 -0
  33. package/dist/src/deploy/deploy-publish-refusal.js +30 -0
  34. package/dist/src/deploy/deploy-publish-refusal.js.map +1 -0
  35. package/dist/src/deploy/deploy.runner.d.ts +23 -0
  36. package/dist/src/deploy/deploy.runner.js +58 -0
  37. package/dist/src/deploy/deploy.runner.js.map +1 -0
  38. package/dist/src/deploy/deployment-follow.d.ts +22 -0
  39. package/dist/src/deploy/deployment-follow.js +56 -0
  40. package/dist/src/deploy/deployment-follow.js.map +1 -0
  41. package/dist/src/deploy/deployment.client.d.ts +26 -0
  42. package/dist/src/deploy/deployment.client.js +70 -0
  43. package/dist/src/deploy/deployment.client.js.map +1 -0
  44. package/dist/src/deploy/type/deploy.types.d.ts +35 -0
  45. package/dist/src/deploy/type/deploy.types.js +15 -0
  46. package/dist/src/deploy/type/deploy.types.js.map +1 -0
  47. package/dist/src/sync/sync-repository.js +1 -0
  48. package/dist/src/sync/sync-repository.js.map +1 -1
  49. package/dist/src/sync/sync-round.js +3 -3
  50. package/dist/src/sync/sync-round.js.map +1 -1
  51. package/dist/src/sync/sync.runner.d.ts +0 -6
  52. package/dist/src/sync/sync.runner.js +3 -18
  53. package/dist/src/sync/sync.runner.js.map +1 -1
  54. package/dist/src/sync/workspace-sync.client.d.ts +7 -50
  55. package/dist/src/sync/workspace-sync.client.js +24 -214
  56. package/dist/src/sync/workspace-sync.client.js.map +1 -1
  57. package/dist/src/util/timeout-seconds.util.d.ts +2 -0
  58. package/dist/src/util/timeout-seconds.util.js +9 -0
  59. package/dist/src/util/timeout-seconds.util.js.map +1 -0
  60. package/package.json +1 -1
  61. package/dist/src/sync/sync-api.error.js.map +0 -1
@@ -1,6 +1,6 @@
1
+ import { AdminApiRefusal } from '../admin-api/admin-api-refusal.error.js';
1
2
  import { CliExitLadder, CliRefusal } from '../exit-ladder.js';
2
3
  import { print } from '../output.js';
3
- import { SyncApiError } from './sync-api.error.js';
4
4
  import { SYNC_DIVERGED_CODE, SyncDivergedRefusal, } from './sync-divergence.js';
5
5
  import { SyncDivergenceChoice, SyncVerdict, } from './type/sync.types.js';
6
6
  /** How many times one round reads both sides when the board moves under its push, before it stops on the divergence. */
@@ -264,7 +264,7 @@ export class SyncRound {
264
264
  return await this.client.bundle(record.servingSha);
265
265
  }
266
266
  catch (error) {
267
- if (!(error instanceof SyncApiError) || error.code !== SYNC_FAILED_CODE)
267
+ if (!(error instanceof AdminApiRefusal) || error.code !== SYNC_FAILED_CODE)
268
268
  throw error;
269
269
  print(` fetch the workspace cut no delta (${error.code}): the whole board instead`);
270
270
  return this.client.bundle('');
@@ -286,7 +286,7 @@ export class SyncRound {
286
286
  return await this.client.push(bundle, envLines);
287
287
  }
288
288
  catch (error) {
289
- if (error instanceof SyncApiError && error.code === SYNC_DIVERGED_CODE)
289
+ if (error instanceof AdminApiRefusal && error.code === SYNC_DIVERGED_CODE)
290
290
  return null;
291
291
  throw error;
292
292
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sync-round.js","sourceRoot":"","sources":["../../../src/sync/sync-round.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-round.js","sourceRoot":"","sources":["../../../src/sync/sync-round.ts"],"names":[],"mappings":"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"}
@@ -18,12 +18,6 @@ export declare class SyncRunner {
18
18
  run(): Promise<void>;
19
19
  /** `--dry-run` plans one round and moves nothing; it cannot watch. */
20
20
  private assertFlags;
21
- /**
22
- * The four credentials, from the first source carrying each. With one in no
23
- * source the run prints where it looked — key names, never values — and exits
24
- * 3 before any request.
25
- */
26
- private settleCredentials;
27
21
  /** The storefront must be a directory — `--pull` makes a new one to take the workspace's tree into. */
28
22
  private assertStorefront;
29
23
  /** Watch until Ctrl-C, which ends the run in flight and prints where it stood. */
@@ -1,9 +1,8 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { mkdir, stat } from 'node:fs/promises';
3
3
  import { resolve } from 'node:path';
4
+ import { AdminApiClient } from '../admin-api/admin-api.client.js';
4
5
  import { CliCredentialCheck } from '../authorization/cli-credential-check.js';
5
- import { CliUnauthorizedReason, CliUnauthorizedRefusal, } from '../authorization/cli-unauthorized-refusal.js';
6
- import { print } from '../output.js';
7
6
  import { QuestionPromptAdapter } from '../question/question-prompt.adapter.js';
8
7
  import { SyncDivergenceSelection } from './sync-divergence.js';
9
8
  import { SyncDotenvFile } from './sync-dotenv.file.js';
@@ -34,7 +33,7 @@ export class SyncRunner {
34
33
  async run() {
35
34
  this.assertFlags();
36
35
  const storefront = this.name ? resolve(process.cwd(), this.name) : process.cwd();
37
- const credentials = await this.settleCredentials(storefront);
36
+ const credentials = await CliCredentialCheck.settle(storefront);
38
37
  await SyncRepository.assertGitOnPath();
39
38
  await this.assertStorefront(storefront);
40
39
  if (this.options.watch === true) {
@@ -50,20 +49,6 @@ export class SyncRunner {
50
49
  return;
51
50
  throw new Error('--dry-run plans one round and moves nothing, so it cannot --watch.');
52
51
  }
53
- /**
54
- * The four credentials, from the first source carrying each. With one in no
55
- * source the run prints where it looked — key names, never values — and exits
56
- * 3 before any request.
57
- */
58
- async settleCredentials(storefront) {
59
- const check = await CliCredentialCheck.read(storefront);
60
- const credentials = check.credentials();
61
- if (credentials !== undefined)
62
- return credentials;
63
- for (const line of check.report())
64
- print(line);
65
- throw new CliUnauthorizedRefusal(CliUnauthorizedReason.MISSING);
66
- }
67
52
  /** The storefront must be a directory — `--pull` makes a new one to take the workspace's tree into. */
68
53
  async assertStorefront(storefront) {
69
54
  if (await this.isDirectory(storefront))
@@ -92,7 +77,7 @@ export class SyncRunner {
92
77
  }
93
78
  assemble(storefront, credentials, interrupt) {
94
79
  const pullOnly = this.options.pull === true;
95
- const client = new WorkspaceSyncClient(credentials, this.options.timeout, interrupt);
80
+ const client = new WorkspaceSyncClient(new AdminApiClient(credentials, this.options.timeout), interrupt);
96
81
  const repository = new SyncRepository(storefront);
97
82
  const round = new SyncRound({ storefront: this.displayName(), pullOnly, dryRun: this.options.dryRun === true }, credentials, client, repository, new SyncRecordFile(storefront, this.channelOf(credentials)), new SyncDotenvFile(storefront), new SyncDivergenceSelection(new QuestionPromptAdapter(this.options), pullOnly));
98
83
  return { client, repository, round };
@@ -1 +1 @@
1
- {"version":3,"file":"sync.runner.js","sourceRoot":"","sources":["../../../src/sync/sync.runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.runner.js","sourceRoot":"","sources":["../../../src/sync/sync.runner.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,19 @@
1
- import type { CliCredentials } from '../authorization/type/cli-authorization.types.js';
1
+ import type { AdminApiClient } from '../admin-api/admin-api.client.js';
2
2
  import type { SyncPulledBundle, SyncPushResult, SyncServingState } from './type/sync.types.js';
3
3
  /**
4
- * The admin API's three workspace-sync operations (#2781), over GraphQL on
5
- * HTTP with the channel token and the admin secret as the `forgecart-token` and
6
- * `forgecart-secret` headers — the one surface `forgecart sync` reaches the
7
- * shop through. Every request goes to FORGECART_ADMIN_API_URL as given, and
4
+ * The admin API's three workspace-sync operations (#2781) — the surface
5
+ * `forgecart sync` reaches the shop through, over the {@link AdminApiClient}:
8
6
  * every exchange is bounded by `--timeout` and ends when the run is
9
- * interrupted. Answers are read field by field: one the CLI cannot read is an
10
- * error naming the endpoint, never a guess. Credentials the API refuses end the
11
- * run on exit 3; any other refusal is a {@link SyncApiError} carrying its code.
7
+ * interrupted, and answers are read field by field.
12
8
  */
13
9
  export declare class WorkspaceSyncClient {
14
- private readonly credentials;
15
- private readonly timeoutSeconds;
10
+ private readonly api;
16
11
  private readonly interrupt;
17
12
  /**
18
- * @param credentials the four credentials the run settled.
19
- * @param timeoutSeconds the bound on one exchange — `--timeout`.
13
+ * @param api the admin API, authenticated with the run's credentials and bounded by `--timeout`.
20
14
  * @param interrupt ends every exchange in flight when the run is interrupted.
21
15
  */
22
- constructor(credentials: CliCredentials, timeoutSeconds: number, interrupt: AbortSignal);
16
+ constructor(api: AdminApiClient, interrupt: AbortSignal);
23
17
  /** The board's serving commit, read from the pod. */
24
18
  state(): Promise<SyncServingState>;
25
19
  /**
@@ -36,8 +30,6 @@ export declare class WorkspaceSyncClient {
36
30
  push(bundle: Buffer | null, envLines: readonly string[]): Promise<SyncPushResult>;
37
31
  /** A push with a bundle is an upload; one with `.env` lines alone is plain JSON. */
38
32
  private pushRequest;
39
- /** A GraphQL request as JSON. */
40
- private jsonRequest;
41
33
  /**
42
34
  * The push as a GraphQL multipart request: the operation, the map naming the
43
35
  * bundle's variable, and the bundle itself, declared by its byte length and
@@ -45,41 +37,6 @@ export declare class WorkspaceSyncClient {
45
37
  * header; the boundary is the form's own.
46
38
  */
47
39
  private uploadRequest;
48
- private authHeaders;
49
- /**
50
- * POST one operation and answer its root field's object. The exchange — the
51
- * response and its whole body — is bounded by `--timeout` and ends with the
52
- * run's interrupt.
53
- */
54
- private exchange;
55
- private post;
56
- /** Why an exchange ended without an answer: the run's interrupt, `--timeout`, or the network. */
57
- private exchangeFailure;
58
- /** The response's GraphQL body — an answer that is not one names its HTTP status. */
59
- private parseBody;
60
- /** The root field's object, once the body carries no error. */
61
- private rootField;
62
- /**
63
- * A GraphQL error ends the call: credentials refused as UNAUTHORIZED or
64
- * FORBIDDEN on exit 3, any other code as the typed {@link SyncApiError}.
65
- */
66
- private assertNoErrors;
67
- private extensionsOf;
68
- private messageOf;
69
- /** The variables a typed error carries, as text — none when it carries none. */
70
- private errorVariables;
71
40
  /** A pulled bundle's bytes against what it declares: its length, then its sha256. */
72
41
  private assertDeclared;
73
- /** A string field that must carry text. */
74
- private readString;
75
- /** A string field that may be empty. */
76
- private readText;
77
- private readNullableString;
78
- private readStringList;
79
- private readCount;
80
- private readBoolean;
81
- private unreadable;
82
- private notGraphQlMessage;
83
- /** What failed to connect: fetch's own message names nothing, its cause names the socket error. */
84
- private failureDetail;
85
42
  }
@@ -1,7 +1,4 @@
1
1
  import { createHash } from 'node:crypto';
2
- import { CliUnauthorizedReason, CliUnauthorizedRefusal, } from '../authorization/cli-unauthorized-refusal.js';
3
- import { isJsonObject } from '../json.js';
4
- import { SyncApiError } from './sync-api.error.js';
5
2
  /** The SDK's `WorkspaceSyncRetrieve` operation, verbatim. */
6
3
  const STATE_DOCUMENT = `query WorkspaceSyncRetrieve {
7
4
  workspaceSyncState {
@@ -32,43 +29,31 @@ const PUSH_DOCUMENT = `mutation WorkspaceSyncPush($input: PushWorkspaceSyncInput
32
29
  envKeys
33
30
  }
34
31
  }`;
35
- /** The codes the admin API refuses an admin operation's credentials with. */
36
- const CREDENTIAL_REFUSALS = new Set(['UNAUTHORIZED', 'FORBIDDEN']);
37
32
  /** The multipart part a push's bundle travels in, and the variable it answers (GraphQL multipart request spec). */
38
33
  const BUNDLE_PART = '0';
39
34
  const BUNDLE_VARIABLE = 'variables.input.bundle';
40
35
  const BUNDLE_FILE_NAME = 'serving.bundle';
41
- /** Milliseconds in a second — `--timeout` is given in seconds. */
42
- const MS_PER_SECOND = 1000;
43
36
  /**
44
- * The admin API's three workspace-sync operations (#2781), over GraphQL on
45
- * HTTP with the channel token and the admin secret as the `forgecart-token` and
46
- * `forgecart-secret` headers — the one surface `forgecart sync` reaches the
47
- * shop through. Every request goes to FORGECART_ADMIN_API_URL as given, and
37
+ * The admin API's three workspace-sync operations (#2781) — the surface
38
+ * `forgecart sync` reaches the shop through, over the {@link AdminApiClient}:
48
39
  * every exchange is bounded by `--timeout` and ends when the run is
49
- * interrupted. Answers are read field by field: one the CLI cannot read is an
50
- * error naming the endpoint, never a guess. Credentials the API refuses end the
51
- * run on exit 3; any other refusal is a {@link SyncApiError} carrying its code.
40
+ * interrupted, and answers are read field by field.
52
41
  */
53
42
  export class WorkspaceSyncClient {
54
- credentials;
55
- timeoutSeconds;
43
+ api;
56
44
  interrupt;
57
45
  /**
58
- * @param credentials the four credentials the run settled.
59
- * @param timeoutSeconds the bound on one exchange — `--timeout`.
46
+ * @param api the admin API, authenticated with the run's credentials and bounded by `--timeout`.
60
47
  * @param interrupt ends every exchange in flight when the run is interrupted.
61
48
  */
62
- constructor(credentials, timeoutSeconds, interrupt) {
63
- this.credentials = credentials;
64
- this.timeoutSeconds = timeoutSeconds;
49
+ constructor(api, interrupt) {
50
+ this.api = api;
65
51
  this.interrupt = interrupt;
66
52
  }
67
53
  /** The board's serving commit, read from the pod. */
68
54
  async state() {
69
- const field = 'workspaceSyncState';
70
- const result = await this.exchange(this.jsonRequest(STATE_DOCUMENT, {}), field);
71
- return { servingSha: this.readString(result, 'servingSha', field) };
55
+ const result = await this.api.exchange(this.api.jsonRequest(STATE_DOCUMENT, {}), 'workspaceSyncState', this.interrupt);
56
+ return { servingSha: result.readString('servingSha') };
72
57
  }
73
58
  /**
74
59
  * The serving branch since `sinceSha` — all of it for `''` — as ONE git
@@ -76,14 +61,13 @@ export class WorkspaceSyncClient {
76
61
  * reads it: a short or mismatched bundle is an error, and nothing is written.
77
62
  */
78
63
  async bundle(sinceSha) {
79
- const field = 'workspaceSyncBundle';
80
- const result = await this.exchange(this.jsonRequest(BUNDLE_DOCUMENT, { input: { sinceSha } }), field);
81
- const bytes = Buffer.from(this.readString(result, 'data', field), 'base64');
82
- this.assertDeclared(bytes, this.readCount(result, 'byteLength', field), this.readString(result, 'sha256', field));
64
+ const result = await this.api.exchange(this.api.jsonRequest(BUNDLE_DOCUMENT, { input: { sinceSha } }), 'workspaceSyncBundle', this.interrupt);
65
+ const bytes = Buffer.from(result.readString('data'), 'base64');
66
+ this.assertDeclared(bytes, result.readCount('byteLength'), result.readString('sha256'));
83
67
  return {
84
- sinceSha: this.readText(result, 'sinceSha', field),
68
+ sinceSha: result.readText('sinceSha'),
85
69
  bytes,
86
- envLines: this.readStringList(result, 'envLines', field),
70
+ envLines: result.readStringList('envLines'),
87
71
  };
88
72
  }
89
73
  /**
@@ -92,30 +76,22 @@ export class WorkspaceSyncClient {
92
76
  * without a bundle carries the lines alone.
93
77
  */
94
78
  async push(bundle, envLines) {
95
- const field = 'pushWorkspaceSync';
96
- const result = await this.exchange(this.pushRequest(bundle, envLines), field);
79
+ const result = await this.api.exchange(this.pushRequest(bundle, envLines), 'pushWorkspaceSync', this.interrupt);
97
80
  return {
98
- accepted: this.readBoolean(result, 'accepted', field),
99
- servingSha: this.readNullableString(result, 'servingSha', field),
100
- gateMessages: this.readStringList(result, 'gateMessages', field),
101
- runtimeError: this.readNullableString(result, 'runtimeError', field),
102
- seoFindings: this.readStringList(result, 'seoFindings', field),
103
- envKeys: this.readCount(result, 'envKeys', field),
81
+ accepted: result.readBoolean('accepted'),
82
+ servingSha: result.readNullableString('servingSha'),
83
+ gateMessages: result.readStringList('gateMessages'),
84
+ runtimeError: result.readNullableString('runtimeError'),
85
+ seoFindings: result.readStringList('seoFindings'),
86
+ envKeys: result.readCount('envKeys'),
104
87
  };
105
88
  }
106
89
  /** A push with a bundle is an upload; one with `.env` lines alone is plain JSON. */
107
90
  pushRequest(bundle, envLines) {
108
91
  if (bundle === null)
109
- return this.jsonRequest(PUSH_DOCUMENT, { input: { envLines } });
92
+ return this.api.jsonRequest(PUSH_DOCUMENT, { input: { envLines } });
110
93
  return this.uploadRequest(bundle, envLines);
111
94
  }
112
- /** A GraphQL request as JSON. */
113
- jsonRequest(document, variables) {
114
- return {
115
- body: JSON.stringify({ query: document, variables }),
116
- headers: { ...this.authHeaders(), 'content-type': 'application/json' },
117
- };
118
- }
119
95
  /**
120
96
  * The push as a GraphQL multipart request: the operation, the map naming the
121
97
  * bundle's variable, and the bundle itself, declared by its byte length and
@@ -133,118 +109,10 @@ export class WorkspaceSyncClient {
133
109
  form.append('operations', JSON.stringify({ query: PUSH_DOCUMENT, variables: { input } }));
134
110
  form.append('map', JSON.stringify({ [BUNDLE_PART]: [BUNDLE_VARIABLE] }));
135
111
  form.append(BUNDLE_PART, new Blob([new Uint8Array(bundle)]), BUNDLE_FILE_NAME);
136
- return { body: form, headers: { ...this.authHeaders(), 'apollo-require-preflight': 'true' } };
137
- }
138
- authHeaders() {
139
112
  return {
140
- accept: 'application/json',
141
- 'forgecart-token': this.credentials.channelToken,
142
- 'forgecart-secret': this.credentials.adminSecret,
143
- };
144
- }
145
- /**
146
- * POST one operation and answer its root field's object. The exchange — the
147
- * response and its whole body — is bounded by `--timeout` and ends with the
148
- * run's interrupt.
149
- */
150
- async exchange(request, field) {
151
- const bound = new AbortController();
152
- const timer = setTimeout(() => {
153
- bound.abort();
154
- }, this.timeoutSeconds * MS_PER_SECOND);
155
- const relay = () => {
156
- bound.abort();
113
+ body: form,
114
+ headers: { ...this.api.authHeaders(), 'apollo-require-preflight': 'true' },
157
115
  };
158
- this.interrupt.addEventListener('abort', relay, { once: true });
159
- try {
160
- const { status, text } = await this.post(request, bound.signal, field);
161
- return this.rootField(this.parseBody(text, status), field);
162
- }
163
- finally {
164
- clearTimeout(timer);
165
- this.interrupt.removeEventListener('abort', relay);
166
- }
167
- }
168
- async post(request, signal, field) {
169
- try {
170
- const response = await fetch(this.credentials.adminApiUrl, {
171
- method: 'POST',
172
- headers: request.headers,
173
- body: request.body,
174
- signal,
175
- });
176
- return { status: response.status, text: await response.text() };
177
- }
178
- catch (error) {
179
- throw this.exchangeFailure(error, signal, field);
180
- }
181
- }
182
- /** Why an exchange ended without an answer: the run's interrupt, `--timeout`, or the network. */
183
- exchangeFailure(error, signal, field) {
184
- const endpoint = this.credentials.adminApiUrl;
185
- if (this.interrupt.aborted) {
186
- return new Error(`Interrupted while the admin API at ${endpoint} answered ${field}.`, {
187
- cause: error,
188
- });
189
- }
190
- if (signal.aborted) {
191
- return new Error(`The admin API at ${endpoint} did not answer ${field} within --timeout ${String(this.timeoutSeconds)} s.`, { cause: error });
192
- }
193
- return new Error(`Could not reach the admin API at ${endpoint}: ${this.failureDetail(error)}.`, {
194
- cause: error,
195
- });
196
- }
197
- /** The response's GraphQL body — an answer that is not one names its HTTP status. */
198
- parseBody(text, status) {
199
- let parsed;
200
- try {
201
- parsed = JSON.parse(text);
202
- }
203
- catch (error) {
204
- throw new Error(this.notGraphQlMessage(status), { cause: error });
205
- }
206
- if (!isJsonObject(parsed))
207
- throw new Error(this.notGraphQlMessage(status));
208
- return parsed;
209
- }
210
- /** The root field's object, once the body carries no error. */
211
- rootField(body, field) {
212
- this.assertNoErrors(body.errors, field);
213
- const data = body.data;
214
- const result = isJsonObject(data) ? data[field] : undefined;
215
- if (!isJsonObject(result))
216
- throw this.unreadable(field);
217
- return result;
218
- }
219
- /**
220
- * A GraphQL error ends the call: credentials refused as UNAUTHORIZED or
221
- * FORBIDDEN on exit 3, any other code as the typed {@link SyncApiError}.
222
- */
223
- assertNoErrors(errors, field) {
224
- if (!Array.isArray(errors) || errors.length === 0)
225
- return;
226
- const first = errors[0];
227
- const extensions = this.extensionsOf(first);
228
- const code = typeof extensions.code === 'string' ? extensions.code : undefined;
229
- if (code !== undefined && CREDENTIAL_REFUSALS.has(code)) {
230
- throw new CliUnauthorizedRefusal(CliUnauthorizedReason.REFUSED);
231
- }
232
- throw new SyncApiError(this.credentials.adminApiUrl, field, code ?? this.messageOf(first), this.errorVariables(extensions.variables));
233
- }
234
- extensionsOf(error) {
235
- return isJsonObject(error) && isJsonObject(error.extensions) ? error.extensions : {};
236
- }
237
- messageOf(error) {
238
- return isJsonObject(error) && typeof error.message === 'string' ? error.message : '';
239
- }
240
- /** The variables a typed error carries, as text — none when it carries none. */
241
- errorVariables(variables) {
242
- if (!isJsonObject(variables))
243
- return {};
244
- return Object.fromEntries(Object.entries(variables).map(([key, value]) => [
245
- key,
246
- typeof value === 'string' ? value : JSON.stringify(value),
247
- ]));
248
116
  }
249
117
  /** A pulled bundle's bytes against what it declares: its length, then its sha256. */
250
118
  assertDeclared(bytes, byteLength, sha256) {
@@ -255,63 +123,5 @@ export class WorkspaceSyncClient {
255
123
  throw new Error('The pulled bundle does not hash to the sha256 it declares; nothing was written.');
256
124
  }
257
125
  }
258
- /** A string field that must carry text. */
259
- readString(record, key, field) {
260
- const value = record[key];
261
- if (typeof value !== 'string' || value === '')
262
- throw this.unreadable(field);
263
- return value;
264
- }
265
- /** A string field that may be empty. */
266
- readText(record, key, field) {
267
- const value = record[key];
268
- if (typeof value !== 'string')
269
- throw this.unreadable(field);
270
- return value;
271
- }
272
- readNullableString(record, key, field) {
273
- const value = record[key];
274
- if (value === null)
275
- return null;
276
- if (typeof value !== 'string')
277
- throw this.unreadable(field);
278
- return value;
279
- }
280
- readStringList(record, key, field) {
281
- const value = record[key];
282
- if (!Array.isArray(value))
283
- throw this.unreadable(field);
284
- const items = value;
285
- if (!items.every((item) => typeof item === 'string')) {
286
- throw this.unreadable(field);
287
- }
288
- return items;
289
- }
290
- readCount(record, key, field) {
291
- const value = record[key];
292
- if (typeof value !== 'number' || !Number.isSafeInteger(value) || value < 0) {
293
- throw this.unreadable(field);
294
- }
295
- return value;
296
- }
297
- readBoolean(record, key, field) {
298
- const value = record[key];
299
- if (typeof value !== 'boolean')
300
- throw this.unreadable(field);
301
- return value;
302
- }
303
- unreadable(field) {
304
- return new Error(`The admin API at ${this.credentials.adminApiUrl} answered a ${field} result the CLI cannot read.`);
305
- }
306
- notGraphQlMessage(status) {
307
- return `The admin API at ${this.credentials.adminApiUrl} answered HTTP ${String(status)} without a GraphQL response.`;
308
- }
309
- /** What failed to connect: fetch's own message names nothing, its cause names the socket error. */
310
- failureDetail(error) {
311
- const cause = error instanceof Error ? error.cause : undefined;
312
- if (cause instanceof Error)
313
- return cause.message;
314
- return error instanceof Error ? error.message : String(error);
315
- }
316
126
  }
317
127
  //# sourceMappingURL=workspace-sync.client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-sync.client.js","sourceRoot":"","sources":["../../../src/sync/workspace-sync.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,6DAA6D;AAC7D,MAAM,cAAc,GAAG;;;;;EAKrB,CAAC;AAEH,yDAAyD;AACzD,MAAM,eAAe,GAAG;;;;;;;;;EAStB,CAAC;AAEH,yDAAyD;AACzD,MAAM,aAAa,GAAG;;;;;;;;;;EAUpB,CAAC;AAEH,6EAA6E;AAC7E,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC;AAExF,mHAAmH;AACnH,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,MAAM,eAAe,GAAG,wBAAwB,CAAC;AACjD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAE1C,kEAAkE;AAClE,MAAM,aAAa,GAAG,IAAI,CAAC;AAc3B;;;;;;;;;GASG;AACH,MAAM,OAAO,mBAAmB;IAOX;IACA;IACA;IARnB;;;;OAIG;IACH,YACmB,WAA2B,EAC3B,cAAsB,EACtB,SAAsB;QAFtB,gBAAW,GAAX,WAAW,CAAgB;QAC3B,mBAAc,GAAd,cAAc,CAAQ;QACtB,cAAS,GAAT,SAAS,CAAa;IACtC,CAAC;IAEJ,qDAAqD;IACrD,KAAK,CAAC,KAAK;QACT,MAAM,KAAK,GAAG,oBAAoB,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QAChF,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IACtE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,MAAM,KAAK,GAAG,qBAAqB,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAChC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,EAC1D,KAAK,CACN,CAAC;QACF,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC5E,IAAI,CAAC,cAAc,CACjB,KAAK,EACL,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,EAC3C,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CACzC,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC;YAClD,KAAK;YACL,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC;SACzD,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,MAAqB,EAAE,QAA2B;QAC3D,MAAM,KAAK,GAAG,mBAAmB,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAC9E,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC;YACrD,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC;YAChE,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,CAAC;YAChE,YAAY,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,CAAC;YACpE,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC;YAC9D,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,oFAAoF;IAC5E,WAAW,CAAC,MAAqB,EAAE,QAA2B;QACpE,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QACrF,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED,iCAAiC;IACzB,WAAW,CAAC,QAAgB,EAAE,SAAkC;QACtE,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;YACpD,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;SACvE,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACK,aAAa,CAAC,MAAc,EAAE,QAA2B;QAC/D,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YACzD,QAAQ;SACT,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAC/E,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE,0BAA0B,EAAE,MAAM,EAAE,EAAE,CAAC;IAChG,CAAC;IAEO,WAAW;QACjB,OAAO;YACL,MAAM,EAAE,kBAAkB;YAC1B,iBAAiB,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY;YAChD,kBAAkB,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW;SACjD,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,QAAQ,CAAC,OAAoB,EAAE,KAAa;QACxD,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC,EAAE,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,GAAS,EAAE;YACvB,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACvE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,IAAI,CAAC,OAAoB,EAAE,MAAmB,EAAE,KAAa;QACzE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;gBACzD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM;aACP,CAAC,CAAC;YACH,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,iGAAiG;IACzF,eAAe,CAAC,KAAc,EAAE,MAAmB,EAAE,KAAa;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;QAC9C,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC3B,OAAO,IAAI,KAAK,CAAC,sCAAsC,QAAQ,aAAa,KAAK,GAAG,EAAE;gBACpF,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;QACL,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,IAAI,KAAK,CACd,oBAAoB,QAAQ,mBAAmB,KAAK,qBAAqB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EACzG,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,KAAK,CAAC,oCAAoC,QAAQ,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE;YAC9F,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAED,qFAAqF;IAC7E,SAAS,CAAC,IAAY,EAAE,MAAc;QAC5C,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+DAA+D;IACvD,SAAS,CAAC,IAA6B,EAAE,KAAa;QAC5D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5D,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACxD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,MAAe,EAAE,KAAa;QACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC1D,MAAM,KAAK,GAAY,MAAM,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,IAAI,IAAI,KAAK,SAAS,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,sBAAsB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,IAAI,YAAY,CACpB,IAAI,CAAC,WAAW,CAAC,WAAW,EAC5B,KAAK,EACL,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAC7B,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAC1C,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,KAAc;QACjC,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACvF,CAAC;IAEO,SAAS,CAAC,KAAc;QAC9B,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACvF,CAAC;IAED,gFAAgF;IACxE,cAAc,CAAC,SAAkB;QACvC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;YAAE,OAAO,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YAC9C,GAAG;YACH,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;SAC1D,CAAC,CACH,CAAC;IACJ,CAAC;IAED,qFAAqF;IAC7E,cAAc,CAAC,KAAa,EAAE,UAAkB,EAAE,MAAc;QACtE,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,wBAAwB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,MAAM,CAAC,UAAU,CAAC,oCAAoC,CACtH,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,2CAA2C;IACnC,UAAU,CAAC,MAA+B,EAAE,GAAW,EAAE,KAAa;QAC5E,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE;YAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wCAAwC;IAChC,QAAQ,CAAC,MAA+B,EAAE,GAAW,EAAE,KAAa;QAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC5D,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,kBAAkB,CACxB,MAA+B,EAC/B,GAAW,EACX,KAAa;QAEb,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC5D,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,cAAc,CAAC,MAA+B,EAAE,GAAW,EAAE,KAAa;QAChF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,KAAK,GAAc,KAAK,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;YACrE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,SAAS,CAAC,MAA+B,EAAE,GAAW,EAAE,KAAa;QAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,WAAW,CAAC,MAA+B,EAAE,GAAW,EAAE,KAAa;QAC7E,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,UAAU,CAAC,KAAa;QAC9B,OAAO,IAAI,KAAK,CACd,oBAAoB,IAAI,CAAC,WAAW,CAAC,WAAW,eAAe,KAAK,8BAA8B,CACnG,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,MAAc;QACtC,OAAO,oBAAoB,IAAI,CAAC,WAAW,CAAC,WAAW,kBAAkB,MAAM,CAAC,MAAM,CAAC,8BAA8B,CAAC;IACxH,CAAC;IAED,mGAAmG;IAC3F,aAAa,CAAC,KAAc;QAClC,MAAM,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,IAAI,KAAK,YAAY,KAAK;YAAE,OAAO,KAAK,CAAC,OAAO,CAAC;QACjD,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChE,CAAC;CACF"}
1
+ {"version":3,"file":"workspace-sync.client.js","sourceRoot":"","sources":["../../../src/sync/workspace-sync.client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ /** A `--timeout <seconds>` value: a positive whole number of seconds — anything else is refused as commander refuses an argument. */
2
+ export declare function parseTimeoutSeconds(value: string): number;
@@ -0,0 +1,9 @@
1
+ import { InvalidArgumentError } from 'commander';
2
+ /** A `--timeout <seconds>` value: a positive whole number of seconds — anything else is refused as commander refuses an argument. */
3
+ export function parseTimeoutSeconds(value) {
4
+ if (!/^\d+$/.test(value) || Number(value) === 0) {
5
+ throw new InvalidArgumentError('Pass a positive whole number of seconds.');
6
+ }
7
+ return Number(value);
8
+ }
9
+ //# sourceMappingURL=timeout-seconds.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeout-seconds.util.js","sourceRoot":"","sources":["../../../src/util/timeout-seconds.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjD,qIAAqI;AACrI,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,oBAAoB,CAAC,0CAA0C,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forgecart/cli",
3
- "version": "2.202610121941.0",
3
+ "version": "2.202610122208.0",
4
4
  "type": "module",
5
5
  "description": "CLI for scaffolding and operating ForgeCart channel storefronts",
6
6
  "bin": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-api.error.js","sourceRoot":"","sources":["../../../src/sync/sync-api.error.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IAE1B;IACA;IACA;IACA;IAJX,YACW,QAAgB,EAChB,KAAa,EACb,IAAY,EACZ,SAA2C;QAEpD,KAAK,CACH,oBAAoB,QAAQ,YAAY,KAAK,KAAK,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAC7F,CAAC;QAPO,aAAQ,GAAR,QAAQ,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAQ;QACb,SAAI,GAAJ,IAAI,CAAQ;QACZ,cAAS,GAAT,SAAS,CAAkC;QAKpD,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;IAED,wEAAwE;IAChE,MAAM,CAAC,QAAQ,CAAC,SAA2C;QACjE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;QACjF,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAC5D,CAAC;CACF"}