gws-axi 0.5.0 → 0.6.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/auth/health.d.ts +45 -0
- package/dist/src/auth/health.js +112 -0
- package/dist/src/auth/health.js.map +1 -0
- package/dist/src/auth/loopback.js +68 -16
- package/dist/src/auth/loopback.js.map +1 -1
- package/dist/src/auth/setup-html.d.ts +3 -0
- package/dist/src/auth/setup-html.js +19 -0
- package/dist/src/auth/setup-html.js.map +1 -1
- package/dist/src/commands/auth.d.ts +1 -1
- package/dist/src/commands/auth.js +235 -34
- package/dist/src/commands/auth.js.map +1 -1
- package/dist/src/commands/doctor.js +51 -0
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/config.d.ts +3 -0
- package/dist/src/config.js.map +1 -1
- package/dist/src/google/client.js +10 -4
- package/dist/src/google/client.js.map +1 -1
- package/dist/src/google/probe.js +4 -1
- package/dist/src/google/probe.js.map +1 -1
- package/dist/src/util/typo.d.ts +14 -0
- package/dist/src/util/typo.js +51 -0
- package/dist/src/util/typo.js.map +1 -0
- package/dist/src/util/typo.test.d.ts +1 -0
- package/dist/src/util/typo.test.js +50 -0
- package/dist/src/util/typo.test.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { type StoredTokens } from "../google/tokens.js";
|
|
2
|
+
export type Permanence = "permanent" | "testing-7-day" | "pre-publish-7-day";
|
|
3
|
+
export interface AccountHealth {
|
|
4
|
+
email: string;
|
|
5
|
+
obtained_at: string;
|
|
6
|
+
permanence: Permanence;
|
|
7
|
+
permanence_detail: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Compare an account's token-issuance timestamp against the publish
|
|
11
|
+
* timestamp in setup state to classify token permanence. Returns null when
|
|
12
|
+
* the account has no stored tokens.
|
|
13
|
+
*/
|
|
14
|
+
export declare function summarizeAccountHealth(email: string): AccountHealth | null;
|
|
15
|
+
export type UnverifiedAppWarning = "always" | "maybe";
|
|
16
|
+
/**
|
|
17
|
+
* Predict whether the "Google hasn't verified this app" intermediate
|
|
18
|
+
* screen will appear during the OAuth consent flow for `email`.
|
|
19
|
+
*
|
|
20
|
+
* - "always": personal Gmail account, OR app still in Testing state.
|
|
21
|
+
* The warning shows every time and the user must click "Advanced"
|
|
22
|
+
* and then "Go to <app name> (unsafe)" to proceed.
|
|
23
|
+
* - "maybe": Workspace account + published app. The warning is
|
|
24
|
+
* suppressed if the Workspace admin has added the OAuth client to
|
|
25
|
+
* their app-trust policy; otherwise it appears. We can't detect
|
|
26
|
+
* admin policy from this side, so we hedge.
|
|
27
|
+
*
|
|
28
|
+
* The action is the same either way (click Advanced → Go to (unsafe)),
|
|
29
|
+
* but the instruction can be more emphatic when we know it will fire.
|
|
30
|
+
*/
|
|
31
|
+
export declare function predictUnverifiedAppWarning(email: string | undefined, published: boolean): UnverifiedAppWarning;
|
|
32
|
+
export interface RestrictedScopeProbe {
|
|
33
|
+
ok: boolean;
|
|
34
|
+
detail: string;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Probe the user's most-restricted scope to verify the unverified-app
|
|
38
|
+
* Restricted-scope access is actually working at the API level. We use
|
|
39
|
+
* Gmail's `users/me/profile` endpoint because it requires `gmail.modify`
|
|
40
|
+
* (a Restricted scope per Google's classification). A 200 here is the
|
|
41
|
+
* positive signal that "your tokens work for the most-stringent scope
|
|
42
|
+
* Google checks." Skipped (returned ok with a note) if the gmail scope
|
|
43
|
+
* wasn't granted to begin with.
|
|
44
|
+
*/
|
|
45
|
+
export declare function probeRestrictedScope(tokens: StoredTokens): Promise<RestrictedScopeProbe>;
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { readSetupState } from "../config.js";
|
|
2
|
+
import { readTokens } from "../google/tokens.js";
|
|
3
|
+
import { SERVICE_SCOPES } from "./scopes.js";
|
|
4
|
+
/**
|
|
5
|
+
* Compare an account's token-issuance timestamp against the publish
|
|
6
|
+
* timestamp in setup state to classify token permanence. Returns null when
|
|
7
|
+
* the account has no stored tokens.
|
|
8
|
+
*/
|
|
9
|
+
export function summarizeAccountHealth(email) {
|
|
10
|
+
const tokens = readTokens(email);
|
|
11
|
+
if (!tokens)
|
|
12
|
+
return null;
|
|
13
|
+
const state = readSetupState();
|
|
14
|
+
const obtainedMs = new Date(tokens.obtained_at).getTime();
|
|
15
|
+
if (!state.published) {
|
|
16
|
+
return {
|
|
17
|
+
email,
|
|
18
|
+
obtained_at: tokens.obtained_at,
|
|
19
|
+
permanence: "testing-7-day",
|
|
20
|
+
permanence_detail: "consent screen still in Testing — token expires after 7 days; run `auth publish` to lift the expiry",
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
const publishedMs = new Date(state.published.confirmed_at).getTime();
|
|
24
|
+
if (obtainedMs >= publishedMs) {
|
|
25
|
+
return {
|
|
26
|
+
email,
|
|
27
|
+
obtained_at: tokens.obtained_at,
|
|
28
|
+
permanence: "permanent",
|
|
29
|
+
permanence_detail: `permanent — issued ${formatDelta(obtainedMs - publishedMs)} after publish`,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
email,
|
|
34
|
+
obtained_at: tokens.obtained_at,
|
|
35
|
+
permanence: "pre-publish-7-day",
|
|
36
|
+
permanence_detail: `7-day clock — issued ${formatDelta(publishedMs - obtainedMs)} before publish; re-auth (\`gws-axi auth login --account ${email}\`) to upgrade`,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
function formatDelta(ms) {
|
|
40
|
+
if (ms < 60_000)
|
|
41
|
+
return `${Math.round(ms / 1000)}s`;
|
|
42
|
+
if (ms < 3_600_000)
|
|
43
|
+
return `${Math.round(ms / 60_000)}m`;
|
|
44
|
+
if (ms < 86_400_000)
|
|
45
|
+
return `${Math.round(ms / 3_600_000)}h`;
|
|
46
|
+
return `${Math.round(ms / 86_400_000)}d`;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Predict whether the "Google hasn't verified this app" intermediate
|
|
50
|
+
* screen will appear during the OAuth consent flow for `email`.
|
|
51
|
+
*
|
|
52
|
+
* - "always": personal Gmail account, OR app still in Testing state.
|
|
53
|
+
* The warning shows every time and the user must click "Advanced"
|
|
54
|
+
* and then "Go to <app name> (unsafe)" to proceed.
|
|
55
|
+
* - "maybe": Workspace account + published app. The warning is
|
|
56
|
+
* suppressed if the Workspace admin has added the OAuth client to
|
|
57
|
+
* their app-trust policy; otherwise it appears. We can't detect
|
|
58
|
+
* admin policy from this side, so we hedge.
|
|
59
|
+
*
|
|
60
|
+
* The action is the same either way (click Advanced → Go to (unsafe)),
|
|
61
|
+
* but the instruction can be more emphatic when we know it will fire.
|
|
62
|
+
*/
|
|
63
|
+
export function predictUnverifiedAppWarning(email, published) {
|
|
64
|
+
if (!email)
|
|
65
|
+
return "maybe";
|
|
66
|
+
const domain = email.split("@")[1]?.toLowerCase() ?? "";
|
|
67
|
+
const isPersonalGoogle = domain === "gmail.com" || domain === "googlemail.com";
|
|
68
|
+
if (!published)
|
|
69
|
+
return "always";
|
|
70
|
+
if (isPersonalGoogle)
|
|
71
|
+
return "always";
|
|
72
|
+
return "maybe";
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Probe the user's most-restricted scope to verify the unverified-app
|
|
76
|
+
* Restricted-scope access is actually working at the API level. We use
|
|
77
|
+
* Gmail's `users/me/profile` endpoint because it requires `gmail.modify`
|
|
78
|
+
* (a Restricted scope per Google's classification). A 200 here is the
|
|
79
|
+
* positive signal that "your tokens work for the most-stringent scope
|
|
80
|
+
* Google checks." Skipped (returned ok with a note) if the gmail scope
|
|
81
|
+
* wasn't granted to begin with.
|
|
82
|
+
*/
|
|
83
|
+
export async function probeRestrictedScope(tokens) {
|
|
84
|
+
const granted = tokens.scope.split(" ").filter(Boolean);
|
|
85
|
+
if (!granted.includes(SERVICE_SCOPES.gmail)) {
|
|
86
|
+
return {
|
|
87
|
+
ok: true,
|
|
88
|
+
detail: "skipped — gmail scope not granted (no restricted scope to verify)",
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
try {
|
|
92
|
+
const res = await fetch("https://gmail.googleapis.com/gmail/v1/users/me/profile", { headers: { authorization: `Bearer ${tokens.access_token}` } });
|
|
93
|
+
if (res.status === 200) {
|
|
94
|
+
return {
|
|
95
|
+
ok: true,
|
|
96
|
+
detail: "gmail.modify ✓ (verified via users/me/profile)",
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
const text = await res.text();
|
|
100
|
+
return {
|
|
101
|
+
ok: false,
|
|
102
|
+
detail: `${res.status} — ${text.slice(0, 120)}`,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
catch (err) {
|
|
106
|
+
return {
|
|
107
|
+
ok: false,
|
|
108
|
+
detail: `network error: ${err instanceof Error ? err.message : String(err)}`,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=health.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health.js","sourceRoot":"","sources":["../../../src/auth/health.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,11 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
|
3
3
|
import { createServer, } from "node:http";
|
|
4
4
|
import { dirname } from "node:path";
|
|
5
5
|
import { URL } from "node:url";
|
|
6
|
-
import { credentialsPath, listAccounts, normalizeEmail, profilePathForAccount, setDefaultAccount, tokensPathForAccount, } from "../config.js";
|
|
6
|
+
import { credentialsPath, listAccounts, normalizeEmail, profilePathForAccount, readSetupState, setDefaultAccount, tokensPathForAccount, } from "../config.js";
|
|
7
7
|
import { markStepDone } from "./state.js";
|
|
8
|
+
import { predictUnverifiedAppWarning } from "./health.js";
|
|
8
9
|
import { allScopes } from "./scopes.js";
|
|
10
|
+
import { editDistance } from "../util/typo.js";
|
|
9
11
|
import { clearPendingAuth, isPendingAuthExpired, readPendingAuth, writePendingAuth, } from "./pending.js";
|
|
10
12
|
import { setupHtmlPath, writeSetupHtml } from "./setup-html.js";
|
|
11
13
|
function collapseHome(path) {
|
|
@@ -113,23 +115,41 @@ async function waitForCallback(server, expectedState) {
|
|
|
113
115
|
const code = u.searchParams.get("code");
|
|
114
116
|
const state = u.searchParams.get("state");
|
|
115
117
|
const errorParam = u.searchParams.get("error");
|
|
116
|
-
res.statusCode = 200;
|
|
117
|
-
res.setHeader("content-type", "text/html; charset=utf-8");
|
|
118
118
|
if (errorParam) {
|
|
119
|
+
res.statusCode = 200;
|
|
120
|
+
res.setHeader("content-type", "text/html; charset=utf-8");
|
|
119
121
|
res.end(errorPage(errorParam));
|
|
120
122
|
clearTimeout(timeout);
|
|
121
123
|
reject(new Error(`OAuth error: ${errorParam}`));
|
|
122
124
|
return;
|
|
123
125
|
}
|
|
124
126
|
if (!code || state !== expectedState) {
|
|
127
|
+
res.statusCode = 200;
|
|
128
|
+
res.setHeader("content-type", "text/html; charset=utf-8");
|
|
125
129
|
res.end(errorPage("invalid_state_or_missing_code"));
|
|
126
130
|
clearTimeout(timeout);
|
|
127
131
|
reject(new Error("OAuth callback missing code or state mismatch"));
|
|
128
132
|
return;
|
|
129
133
|
}
|
|
130
|
-
|
|
134
|
+
// Don't respond yet — hold the connection so the browser page can
|
|
135
|
+
// reflect the actual exchange/write outcome. The caller calls
|
|
136
|
+
// finalize() after attempting the rest of the flow.
|
|
137
|
+
const finalize = (result) => {
|
|
138
|
+
res.statusCode = 200;
|
|
139
|
+
res.setHeader("content-type", "text/html; charset=utf-8");
|
|
140
|
+
if (result.ok) {
|
|
141
|
+
res.end(successPage());
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
res.end(errorPage(result.error));
|
|
145
|
+
}
|
|
146
|
+
};
|
|
131
147
|
clearTimeout(timeout);
|
|
132
|
-
resolve({
|
|
148
|
+
resolve({
|
|
149
|
+
code,
|
|
150
|
+
scope: u.searchParams.get("scope") ?? undefined,
|
|
151
|
+
finalize,
|
|
152
|
+
});
|
|
133
153
|
});
|
|
134
154
|
});
|
|
135
155
|
}
|
|
@@ -205,8 +225,18 @@ export async function preparePendingAuth(options = {}) {
|
|
|
205
225
|
expires_at: expiresAt.toISOString(),
|
|
206
226
|
};
|
|
207
227
|
writePendingAuth(pending);
|
|
228
|
+
// Predict the unverified-app warning so the setup.html pending-auth
|
|
229
|
+
// panel can surface it prominently — users miss the small "Advanced"
|
|
230
|
+
// link and bail thinking the app is broken.
|
|
231
|
+
const setupState = readSetupState();
|
|
208
232
|
writeSetupHtml({
|
|
209
|
-
pendingAuth: {
|
|
233
|
+
pendingAuth: {
|
|
234
|
+
url: authUrl,
|
|
235
|
+
account: options.expectedAccount,
|
|
236
|
+
warnings: {
|
|
237
|
+
unverifiedApp: predictUnverifiedAppWarning(options.expectedAccount, !!setupState.published),
|
|
238
|
+
},
|
|
239
|
+
},
|
|
210
240
|
});
|
|
211
241
|
return {
|
|
212
242
|
pending,
|
|
@@ -285,12 +315,13 @@ export async function awaitPendingAuth() {
|
|
|
285
315
|
// whether this is the first-ever account (should be promoted to
|
|
286
316
|
// default) vs. an additional one (default stays put).
|
|
287
317
|
const accountsBefore = listAccounts();
|
|
318
|
+
let handle;
|
|
288
319
|
try {
|
|
289
|
-
|
|
320
|
+
handle = await waitForCallback(server, pending.state);
|
|
290
321
|
const tokens = await exchangeCode({
|
|
291
322
|
clientId: creds.client_id,
|
|
292
323
|
clientSecret: creds.client_secret,
|
|
293
|
-
code,
|
|
324
|
+
code: handle.code,
|
|
294
325
|
redirectUri,
|
|
295
326
|
verifier: pending.verifier,
|
|
296
327
|
});
|
|
@@ -298,19 +329,34 @@ export async function awaitPendingAuth() {
|
|
|
298
329
|
const authenticatedEmail = normalizeEmail(userinfo.email);
|
|
299
330
|
if (pending.expected_account &&
|
|
300
331
|
normalizeEmail(pending.expected_account) !== authenticatedEmail) {
|
|
332
|
+
const expected = pending.expected_account;
|
|
333
|
+
const distance = editDistance(expected, authenticatedEmail);
|
|
334
|
+
const looksLikeTypo = distance <= 2 && Math.abs(expected.length - authenticatedEmail.length) <= 2;
|
|
335
|
+
const browserMsg = looksLikeTypo
|
|
336
|
+
? `Likely typo in --account. You signed in as ${authenticatedEmail}, but --account was ${expected} (off by ${distance} character${distance === 1 ? "" : "s"}). Re-run \`gws-axi auth login --account ${authenticatedEmail}\` to use the account you signed in as.`
|
|
337
|
+
: `Expected ${expected}, got ${authenticatedEmail}. Sign in as ${expected} and retry, or re-run with \`--account ${authenticatedEmail}\` if you meant the account you actually signed in as.`;
|
|
338
|
+
handle.finalize({ ok: false, error: browserMsg });
|
|
339
|
+
const cliInstructions = looksLikeTypo
|
|
340
|
+
? [
|
|
341
|
+
`Looks like \`--account ${expected}\` had a typo (differs from the signed-in \`${authenticatedEmail}\` by ${distance} character${distance === 1 ? "" : "s"})`,
|
|
342
|
+
`Re-run: \`gws-axi auth login --account ${authenticatedEmail}\``,
|
|
343
|
+
]
|
|
344
|
+
: [
|
|
345
|
+
`Re-run with: \`gws-axi auth login --account ${expected}\` and sign in as that account`,
|
|
346
|
+
`Or, if you meant the account you actually signed in as: \`gws-axi auth login --account ${authenticatedEmail}\``,
|
|
347
|
+
];
|
|
301
348
|
return {
|
|
302
349
|
step,
|
|
303
350
|
advanced: false,
|
|
304
|
-
title:
|
|
305
|
-
|
|
351
|
+
title: looksLikeTypo
|
|
352
|
+
? "Account mismatch — likely a typo in --account"
|
|
353
|
+
: "Authenticated account does not match expected",
|
|
354
|
+
error: `Expected ${expected}, got ${authenticatedEmail}`,
|
|
306
355
|
code: "ACCOUNT_MISMATCH",
|
|
307
|
-
instructions:
|
|
308
|
-
`Re-run with: \`gws-axi auth login --account ${pending.expected_account}\``,
|
|
309
|
-
"Make sure you sign in as the correct account in the browser",
|
|
310
|
-
],
|
|
356
|
+
instructions: cliInstructions,
|
|
311
357
|
};
|
|
312
358
|
}
|
|
313
|
-
const grantedScopes = (scope ?? tokens.scope).split(" ").filter(Boolean);
|
|
359
|
+
const grantedScopes = (handle.scope ?? tokens.scope).split(" ").filter(Boolean);
|
|
314
360
|
const stored = {
|
|
315
361
|
client_id: creds.client_id,
|
|
316
362
|
access_token: tokens.access_token,
|
|
@@ -343,6 +389,8 @@ export async function awaitPendingAuth() {
|
|
|
343
389
|
accounts: listAccounts(),
|
|
344
390
|
latest_account: authenticatedEmail,
|
|
345
391
|
});
|
|
392
|
+
// Token write succeeded — let the browser render the success page.
|
|
393
|
+
handle.finalize({ ok: true });
|
|
346
394
|
return {
|
|
347
395
|
step,
|
|
348
396
|
advanced: true,
|
|
@@ -356,11 +404,15 @@ export async function awaitPendingAuth() {
|
|
|
356
404
|
};
|
|
357
405
|
}
|
|
358
406
|
catch (err) {
|
|
407
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
408
|
+
// If the browser request is still open (waitForCallback succeeded but
|
|
409
|
+
// a later step blew up), surface the error there too.
|
|
410
|
+
handle?.finalize({ ok: false, error: message });
|
|
359
411
|
return {
|
|
360
412
|
step,
|
|
361
413
|
advanced: false,
|
|
362
414
|
title: "OAuth flow failed",
|
|
363
|
-
error:
|
|
415
|
+
error: message,
|
|
364
416
|
code: "OAUTH_FAILED",
|
|
365
417
|
instructions: [
|
|
366
418
|
"Check that the consent screen (step 5) and test user (step 6) are configured",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loopback.js","sourceRoot":"","sources":["../../../src/auth/loopback.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loopback.js","sourceRoot":"","sources":["../../../src/auth/loopback.ts"],"names":[],"mappings":"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"}
|
|
@@ -111,11 +111,28 @@ export function writeSetupHtml(options = {}) {
|
|
|
111
111
|
}).join("\n");
|
|
112
112
|
const now = new Date();
|
|
113
113
|
const nowLabel = now.toLocaleTimeString();
|
|
114
|
+
const warnings = options.pendingAuth?.warnings;
|
|
115
|
+
const unverifiedBlock = warnings?.unverifiedApp === "always"
|
|
116
|
+
? `<p class="warn-block">
|
|
117
|
+
<strong>⚠️ A "Google hasn't verified this app" screen will appear.</strong>
|
|
118
|
+
To proceed, click <strong>Advanced</strong> (small link below the warning),
|
|
119
|
+
then <strong>Go to <app name> (unsafe)</strong>. This is normal for
|
|
120
|
+
unverified personal-use OAuth apps and does not indicate any actual risk.
|
|
121
|
+
</p>`
|
|
122
|
+
: warnings?.unverifiedApp === "maybe"
|
|
123
|
+
? `<p class="warn-block-soft">
|
|
124
|
+
If a "Google hasn't verified this app" screen appears, click
|
|
125
|
+
<strong>Advanced</strong> then <strong>Go to <app name> (unsafe)</strong>.
|
|
126
|
+
Workspace admins may have trusted this app already, in which case you
|
|
127
|
+
won't see the warning.
|
|
128
|
+
</p>`
|
|
129
|
+
: "";
|
|
114
130
|
const pendingAuthBlock = options.pendingAuth
|
|
115
131
|
? `<div class="pending-auth">
|
|
116
132
|
<div class="pending-auth-title">Waiting for authentication${options.pendingAuth.account ? ` as <code>${options.pendingAuth.account}</code>` : ""}</div>
|
|
117
133
|
<p><strong>Wrong browser profile?</strong> If you're not currently signed into ${options.pendingAuth.account ? `<code>${options.pendingAuth.account}</code>` : "the target account"} in this browser, open <code>~/.config/gws-axi/setup.html</code> in the correct profile before clicking below — Google will pick up whichever account is active here.</p>
|
|
118
134
|
<a class="auth-button" href="${options.pendingAuth.url}" target="_blank" rel="noopener">Authenticate with Google →</a>
|
|
135
|
+
${unverifiedBlock}
|
|
119
136
|
<p class="pending-auth-note">The CLI is listening for the callback on 127.0.0.1 — this button only works while <code>gws-axi auth login --wait</code> is blocking in your terminal. Sign in${options.pendingAuth.account ? ` as <code>${options.pendingAuth.account}</code>` : ""} at Google's prompt and approve the scopes.</p>
|
|
120
137
|
</div>`
|
|
121
138
|
: "";
|
|
@@ -178,6 +195,8 @@ ${accounts
|
|
|
178
195
|
.pending-auth-note { font-size: 13px; color: #78350f; }
|
|
179
196
|
.auth-button { display: inline-block; padding: 10px 20px; background: #4285f4; color: white; text-decoration: none; border-radius: 6px; font-weight: 500; margin: 8px 0; }
|
|
180
197
|
.auth-button:hover { background: #3367d6; }
|
|
198
|
+
.warn-block { background: #fff7ed; border: 1px solid #fb923c; border-radius: 4px; padding: 10px 14px; margin: 12px 0; font-size: 14px; color: #7c2d12; }
|
|
199
|
+
.warn-block-soft { background: #fafafa; border: 1px solid #d4d4d8; border-radius: 4px; padding: 10px 14px; margin: 12px 0; font-size: 13px; color: #52525b; }
|
|
181
200
|
table { width: 100%; border-collapse: collapse; }
|
|
182
201
|
th, td { padding: 10px 12px; text-align: left; border-bottom: 1px solid #e4e4e7; vertical-align: top; }
|
|
183
202
|
th { background: #fafafa; font-size: 13px; color: #555; text-transform: uppercase; letter-spacing: 0.5px; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-html.js","sourceRoot":"","sources":["../../../src/auth/setup-html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,gBAAgB,GAEjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAOtD,MAAM,WAAW,GAAiC;IAChD,WAAW,EAAE,8BAA8B;IAC3C,YAAY,EAAE,8BAA8B;IAC5C,YAAY,EAAE,6BAA6B;IAC3C,iBAAiB,EAAE,qCAAqC;IACxD,cAAc,EAAE,gCAAgC;IAChD,eAAe,EAAE,0DAA0D;IAC3E,eAAe,EAAE,0CAA0C;CAC5D,CAAC;AAEF,SAAS,YAAY,CACnB,GAAiB,EACjB,SAA6B;IAE7B,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,aAAa;YAChB,OAAO;gBACL;oBACE,KAAK,EAAE,2BAA2B;oBAClC,GAAG,EAAE,gDAAgD;iBACtD;aACF,CAAC;QACJ,KAAK,cAAc;YACjB,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC1B,KAAK,EAAE,UAAU,CAAC,EAAE;gBACpB,GAAG,EAAE,UAAU,CAAC,iBAAiB,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC;aAChE,CAAC,CAAC,CAAC;QACN,KAAK,cAAc;YACjB,OAAO;gBACL;oBACE,KAAK,EAAE,+BAA+B;oBACtC,GAAG,EAAE,UAAU,CAAC,eAAe,EAAE,SAAS,CAAC;iBAC5C;aACF,CAAC;QACJ,KAAK,gBAAgB;YACnB,OAAO;gBACL;oBACE,KAAK,EAAE,6BAA6B;oBACpC,GAAG,EAAE,UAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC;iBAC7C;gBACD;oBACE,KAAK,EAAE,sBAAsB;oBAC7B,GAAG,EAAE,UAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC;iBAC7C;aACF,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL;oBACE,KAAK,EAAE,uBAAuB;oBAC9B,GAAG,EAAE,UAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC;iBAC7C;aACF,CAAC;QACJ;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,CAAC,SAAS,EAAE,EAAE,YAAY,CAAC,CAAC;AACzC,CAAC;
|
|
1
|
+
{"version":3,"file":"setup-html.js","sourceRoot":"","sources":["../../../src/auth/setup-html.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const AUTH_HELP = "usage: gws-axi auth <subcommand> [flags]\nsubcommands[
|
|
1
|
+
export declare const AUTH_HELP = "usage: gws-axi auth <subcommand> [flags]\nsubcommands[8]:\n setup Progressive agent-guided OAuth setup (run repeatedly until complete)\n login Authenticate or re-auth an account (prepares + blocks on callback by default)\n publish Walk through publishing the consent screen to \"In Production\"\n (lifts the 7-day Testing-state refresh-token expiry)\n accounts List authenticated accounts\n use Set the default account: gws-axi auth use <email>\n revoke Delete an account's tokens: gws-axi auth revoke <email>\n status Terse one-line status\n reset Clear setup state, optionally from a specific step\nsetup flags[6]:\n --project <id> Use existing GCP project (step 1)\n --create-project <id> Create new GCP project (step 1, needs gcloud)\n --project-name <name> Display name when creating (step 1)\n --credentials-json <path> Path to downloaded OAuth client JSON (step 4)\n --test-user <email> Record test user email (step 6 metadata)\n --confirm-step <step> Mark a manual step done (consent_screen, test_user_added)\nlogin flags[3]:\n --account <email> Authenticate or re-auth a specific account\n --no-wait Prepare only and return fast (for agent flows\n that want to relay instructions to the user\n before binding the callback server). Pair\n with a follow-up `auth login --wait`.\n --wait Block on the callback for a previously\n prepared session (paired with --no-wait).\npublish flags[1]:\n --confirm Mark the consent screen as published in\n setup state (after clicking \"PUBLISH APP\"\n in the Console).\nreset flags[1]:\n --from <step> Clear from this step forward\nexamples:\n gws-axi auth setup\n gws-axi auth setup --create-project gws-axi-chris-9f3a\n gws-axi auth setup --credentials-json ~/Downloads/client_secret_xxx.json\n gws-axi auth login --account chris@personal.com # prepares + blocks (default)\n gws-axi auth login --account chris@personal.com --no-wait # agent prepare-only\n gws-axi auth login --wait # agent block-only\n gws-axi auth publish # show publish walkthrough\n gws-axi auth publish --confirm # mark consent screen as published\n gws-axi auth accounts\n gws-axi auth use chris@jarv.us\n gws-axi auth revoke chris@personal.com\nflow:\n Humans: `gws-axi auth login --account <email>` is one command that\n prepares, prints a brief instruction, and waits for the OAuth\n callback (up to 5 min).\n Agents: pass --no-wait so the prepare returns immediately, relay the\n instructions to the user, then call `gws-axi auth login --wait` in\n a SEPARATE bash turn \u2014 the wait command binds the callback server\n and must be listening before the user clicks.\n";
|
|
2
2
|
export declare function authCommand(args: string[]): Promise<string | Record<string, unknown>>;
|