@forgecart/cli 2.202610131355.0 → 2.202610131722.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.
- package/dist/src/authorization/cli-authorization-flow.d.ts +9 -5
- package/dist/src/authorization/cli-authorization-flow.js +22 -13
- package/dist/src/authorization/cli-authorization-flow.js.map +1 -1
- package/dist/src/authorization/cli-authorization.client.d.ts +7 -1
- package/dist/src/authorization/cli-authorization.client.js +31 -5
- package/dist/src/authorization/cli-authorization.client.js.map +1 -1
- package/dist/src/authorization/type/cli-authorization.types.d.ts +15 -2
- package/package.json +1 -1
|
@@ -12,8 +12,9 @@ import { type CliCredentials } from './type/cli-authorization.types.js';
|
|
|
12
12
|
* the request named until the authorization settles or the wait ends: at the
|
|
13
13
|
* window's close, or at `timeoutSec` when that comes first. The wait is quiet
|
|
14
14
|
* (no countdown, no interval, no attempt count), so an approval on the third
|
|
15
|
-
* poll reads exactly as one on the first.
|
|
16
|
-
*
|
|
15
|
+
* poll reads exactly as one on the first. An approval is reported with the
|
|
16
|
+
* store it names, `✓ Authorized · <store name> · channel <code>` (launch#62
|
|
17
|
+
* N2). The device code is the poll's secret and is never printed.
|
|
17
18
|
*/
|
|
18
19
|
export declare class CliAuthorizationFlow {
|
|
19
20
|
private readonly client;
|
|
@@ -24,8 +25,9 @@ export declare class CliAuthorizationFlow {
|
|
|
24
25
|
*/
|
|
25
26
|
constructor(client: CliAuthorizationClient, timeoutSec: number | undefined);
|
|
26
27
|
/**
|
|
27
|
-
* Authorize this machine
|
|
28
|
-
* delivers. A denial, an expiry or an elapsed wait ends
|
|
28
|
+
* Authorize this machine, name the store the approval names, and answer the
|
|
29
|
+
* four credentials it delivers. A denial, an expiry or an elapsed wait ends
|
|
30
|
+
* the run on exit 3.
|
|
29
31
|
*
|
|
30
32
|
* @param report why the run authorizes, printed first.
|
|
31
33
|
* @param channelToken the channel token the project's sources name: the store `/authorize` preselects.
|
|
@@ -33,8 +35,10 @@ export declare class CliAuthorizationFlow {
|
|
|
33
35
|
authorize(report: readonly string[], channelToken: string | undefined): Promise<CliCredentials>;
|
|
34
36
|
/** Poll until the authorization settles or the deadline passes. */
|
|
35
37
|
private awaitApproval;
|
|
36
|
-
/** The
|
|
38
|
+
/** The grant an APPROVED answer delivers; null while PENDING. DENIED and EXPIRED end the run. */
|
|
37
39
|
private settle;
|
|
40
|
+
/** The approval, naming the store: `✓ Authorized · <store name> · channel <code>` — a nameless store by its code alone. */
|
|
41
|
+
private authorizedLine;
|
|
38
42
|
/** The window's close — or `--timeout` from now, when that comes first. */
|
|
39
43
|
private deadlineOf;
|
|
40
44
|
/** What the run prints once the authorization is open, for a terminal or for a log. */
|
|
@@ -17,8 +17,9 @@ import { CliAuthorizationState, } from './type/cli-authorization.types.js';
|
|
|
17
17
|
* the request named until the authorization settles or the wait ends: at the
|
|
18
18
|
* window's close, or at `timeoutSec` when that comes first. The wait is quiet
|
|
19
19
|
* (no countdown, no interval, no attempt count), so an approval on the third
|
|
20
|
-
* poll reads exactly as one on the first.
|
|
21
|
-
*
|
|
20
|
+
* poll reads exactly as one on the first. An approval is reported with the
|
|
21
|
+
* store it names, `✓ Authorized · <store name> · channel <code>` (launch#62
|
|
22
|
+
* N2). The device code is the poll's secret and is never printed.
|
|
22
23
|
*/
|
|
23
24
|
export class CliAuthorizationFlow {
|
|
24
25
|
client;
|
|
@@ -32,8 +33,9 @@ export class CliAuthorizationFlow {
|
|
|
32
33
|
this.timeoutSec = timeoutSec;
|
|
33
34
|
}
|
|
34
35
|
/**
|
|
35
|
-
* Authorize this machine
|
|
36
|
-
* delivers. A denial, an expiry or an elapsed wait ends
|
|
36
|
+
* Authorize this machine, name the store the approval names, and answer the
|
|
37
|
+
* four credentials it delivers. A denial, an expiry or an elapsed wait ends
|
|
38
|
+
* the run on exit 3.
|
|
37
39
|
*
|
|
38
40
|
* @param report why the run authorizes, printed first.
|
|
39
41
|
* @param channelToken the channel token the project's sources name: the store `/authorize` preselects.
|
|
@@ -51,10 +53,10 @@ export class CliAuthorizationFlow {
|
|
|
51
53
|
print(line);
|
|
52
54
|
if (interactive)
|
|
53
55
|
this.openBrowser(authorization.verificationUrl);
|
|
54
|
-
const
|
|
56
|
+
const grant = await this.awaitApproval(authorization);
|
|
55
57
|
print('');
|
|
56
|
-
print(
|
|
57
|
-
return credentials;
|
|
58
|
+
print(` ${this.authorizedLine(grant.store)}`);
|
|
59
|
+
return grant.credentials;
|
|
58
60
|
}
|
|
59
61
|
/** Poll until the authorization settles or the deadline passes. */
|
|
60
62
|
async awaitApproval(authorization) {
|
|
@@ -65,12 +67,12 @@ export class CliAuthorizationFlow {
|
|
|
65
67
|
if (remainingMs <= 0)
|
|
66
68
|
throw new CliUnauthorizedRefusal(deadline.reason);
|
|
67
69
|
await sleep(Math.min(intervalMs, remainingMs));
|
|
68
|
-
const
|
|
69
|
-
if (
|
|
70
|
-
return
|
|
70
|
+
const grant = this.settle(await this.client.status(authorization.deviceCode));
|
|
71
|
+
if (grant !== null)
|
|
72
|
+
return grant;
|
|
71
73
|
}
|
|
72
74
|
}
|
|
73
|
-
/** The
|
|
75
|
+
/** The grant an APPROVED answer delivers; null while PENDING. DENIED and EXPIRED end the run. */
|
|
74
76
|
settle(status) {
|
|
75
77
|
if (status.state === CliAuthorizationState.DENIED) {
|
|
76
78
|
throw new CliUnauthorizedRefusal(CliUnauthorizedReason.DENIED);
|
|
@@ -80,10 +82,17 @@ export class CliAuthorizationFlow {
|
|
|
80
82
|
}
|
|
81
83
|
if (status.state === CliAuthorizationState.PENDING)
|
|
82
84
|
return null;
|
|
83
|
-
if (status.
|
|
85
|
+
if (status.grant === null) {
|
|
84
86
|
throw new Error('The admin API answered APPROVED without the credentials an approval delivers.');
|
|
85
87
|
}
|
|
86
|
-
return status.
|
|
88
|
+
return status.grant;
|
|
89
|
+
}
|
|
90
|
+
/** The approval, naming the store: `✓ Authorized · <store name> · channel <code>` — a nameless store by its code alone. */
|
|
91
|
+
authorizedLine(store) {
|
|
92
|
+
const channel = `channel ${store.channelCode}`;
|
|
93
|
+
if (store.storeName === null)
|
|
94
|
+
return `✓ Authorized · ${channel}`;
|
|
95
|
+
return `✓ Authorized · ${store.storeName} · ${channel}`;
|
|
87
96
|
}
|
|
88
97
|
/** The window's close — or `--timeout` from now, when that comes first. */
|
|
89
98
|
deadlineOf(authorization) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-authorization-flow.js","sourceRoot":"","sources":["../../../src/authorization/cli-authorization-flow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EACL,qBAAqB,
|
|
1
|
+
{"version":3,"file":"cli-authorization-flow.js","sourceRoot":"","sources":["../../../src/authorization/cli-authorization-flow.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,9 +25,15 @@ export declare class CliAuthorizationClient {
|
|
|
25
25
|
private assertNoErrors;
|
|
26
26
|
/** The `ErrorCode` a GraphQL error carries in its extensions. */
|
|
27
27
|
private errorCode;
|
|
28
|
-
/**
|
|
28
|
+
/**
|
|
29
|
+
* The grant an answer carries — the credentials and the approved store's
|
|
30
|
+
* channel code and store name; null on every answer but APPROVED.
|
|
31
|
+
*/
|
|
32
|
+
private readGrant;
|
|
29
33
|
private readCredentials;
|
|
30
34
|
private readString;
|
|
35
|
+
/** A string the answer may leave null — absent, null and empty all read as null. */
|
|
36
|
+
private readOptionalString;
|
|
31
37
|
private isState;
|
|
32
38
|
private unreadable;
|
|
33
39
|
private notGraphQlMessage;
|
|
@@ -11,7 +11,10 @@ const REQUEST_DOCUMENT = `mutation CliAuthorizationRequest($input: CliAuthorizat
|
|
|
11
11
|
pollIntervalSec
|
|
12
12
|
}
|
|
13
13
|
}`;
|
|
14
|
-
/**
|
|
14
|
+
/**
|
|
15
|
+
* The SDK's `CliAuthorizationStatus` operation, verbatim — the poll, keyed on
|
|
16
|
+
* the device code: the credentials and the approved store ride its APPROVED answer.
|
|
17
|
+
*/
|
|
15
18
|
const STATUS_DOCUMENT = `mutation CliAuthorizationStatus($deviceCode: String!) {
|
|
16
19
|
cliAuthorizationStatus(deviceCode: $deviceCode) {
|
|
17
20
|
state
|
|
@@ -21,6 +24,8 @@ const STATUS_DOCUMENT = `mutation CliAuthorizationStatus($deviceCode: String!) {
|
|
|
21
24
|
shopApiUrl
|
|
22
25
|
adminApiUrl
|
|
23
26
|
}
|
|
27
|
+
channelCode
|
|
28
|
+
storeName
|
|
24
29
|
}
|
|
25
30
|
}`;
|
|
26
31
|
/**
|
|
@@ -72,7 +77,7 @@ export class CliAuthorizationClient {
|
|
|
72
77
|
const state = result.state;
|
|
73
78
|
if (!this.isState(state))
|
|
74
79
|
throw this.unreadable('cliAuthorizationStatus');
|
|
75
|
-
return { state,
|
|
80
|
+
return { state, grant: this.readGrant(result) };
|
|
76
81
|
}
|
|
77
82
|
/** POST one operation and answer its root field's object. */
|
|
78
83
|
async send(document, variables, field) {
|
|
@@ -130,10 +135,23 @@ export class CliAuthorizationClient {
|
|
|
130
135
|
const code = error.extensions.code;
|
|
131
136
|
return typeof code === 'string' ? code : undefined;
|
|
132
137
|
}
|
|
133
|
-
/**
|
|
134
|
-
|
|
135
|
-
|
|
138
|
+
/**
|
|
139
|
+
* The grant an answer carries — the credentials and the approved store's
|
|
140
|
+
* channel code and store name; null on every answer but APPROVED.
|
|
141
|
+
*/
|
|
142
|
+
readGrant(result) {
|
|
143
|
+
const credentials = result.credentials;
|
|
144
|
+
if (credentials === null || credentials === undefined)
|
|
136
145
|
return null;
|
|
146
|
+
return {
|
|
147
|
+
credentials: this.readCredentials(credentials),
|
|
148
|
+
store: {
|
|
149
|
+
channelCode: this.readString(result, 'channelCode', 'cliAuthorizationStatus'),
|
|
150
|
+
storeName: this.readOptionalString(result.storeName, 'cliAuthorizationStatus'),
|
|
151
|
+
},
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
readCredentials(value) {
|
|
137
155
|
if (!isJsonObject(value))
|
|
138
156
|
throw this.unreadable('cliAuthorizationStatus');
|
|
139
157
|
return {
|
|
@@ -149,6 +167,14 @@ export class CliAuthorizationClient {
|
|
|
149
167
|
throw this.unreadable(field);
|
|
150
168
|
return value;
|
|
151
169
|
}
|
|
170
|
+
/** A string the answer may leave null — absent, null and empty all read as null. */
|
|
171
|
+
readOptionalString(value, field) {
|
|
172
|
+
if (value === null || value === undefined || value === '')
|
|
173
|
+
return null;
|
|
174
|
+
if (typeof value !== 'string')
|
|
175
|
+
throw this.unreadable(field);
|
|
176
|
+
return value;
|
|
177
|
+
}
|
|
152
178
|
isState(value) {
|
|
153
179
|
return Object.values(CliAuthorizationState).includes(value);
|
|
154
180
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-authorization.client.js","sourceRoot":"","sources":["../../../src/authorization/cli-authorization.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC9F,OAAO,EACL,qBAAqB,
|
|
1
|
+
{"version":3,"file":"cli-authorization.client.js","sourceRoot":"","sources":["../../../src/authorization/cli-authorization.client.ts"],"names":[],"mappings":"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"}
|
|
@@ -94,8 +94,21 @@ export interface CliAuthorizationRequestResult {
|
|
|
94
94
|
/** The cadence the poll keeps. */
|
|
95
95
|
pollIntervalSec: number;
|
|
96
96
|
}
|
|
97
|
-
/**
|
|
97
|
+
/**
|
|
98
|
+
* The store an approval names (launch#62 N2): its channel code, and its store
|
|
99
|
+
* name (`ChannelSettings.shopName`) — null when the store carries none.
|
|
100
|
+
*/
|
|
101
|
+
export interface CliAuthorizedStore {
|
|
102
|
+
channelCode: string;
|
|
103
|
+
storeName: string | null;
|
|
104
|
+
}
|
|
105
|
+
/** What an approval delivers: the four credentials, and the store they are the credentials of. */
|
|
106
|
+
export interface CliAuthorizationGrant {
|
|
107
|
+
credentials: CliCredentials;
|
|
108
|
+
store: CliAuthorizedStore;
|
|
109
|
+
}
|
|
110
|
+
/** One status poll's answer: the grant rides the APPROVED answer, exactly once. */
|
|
98
111
|
export interface CliAuthorizationStatusResult {
|
|
99
112
|
state: CliAuthorizationState;
|
|
100
|
-
|
|
113
|
+
grant: CliAuthorizationGrant | null;
|
|
101
114
|
}
|