opencode-openai-codex-multi-auth 4.5.5 → 4.5.6

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 (42) hide show
  1. package/README.md +10 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +186 -28
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/account-matching.d.ts.map +1 -1
  6. package/dist/lib/account-matching.js +3 -37
  7. package/dist/lib/account-matching.js.map +1 -1
  8. package/dist/lib/accounts.d.ts +15 -1
  9. package/dist/lib/accounts.d.ts.map +1 -1
  10. package/dist/lib/accounts.js +187 -42
  11. package/dist/lib/accounts.js.map +1 -1
  12. package/dist/lib/auth/auth.d.ts.map +1 -1
  13. package/dist/lib/auth/auth.js +3 -1
  14. package/dist/lib/auth/auth.js.map +1 -1
  15. package/dist/lib/cli.d.ts +3 -1
  16. package/dist/lib/cli.d.ts.map +1 -1
  17. package/dist/lib/cli.js +37 -3
  18. package/dist/lib/cli.js.map +1 -1
  19. package/dist/lib/config.d.ts +8 -0
  20. package/dist/lib/config.d.ts.map +1 -1
  21. package/dist/lib/config.js +35 -0
  22. package/dist/lib/config.js.map +1 -1
  23. package/dist/lib/oauth-success.html +1 -1
  24. package/dist/lib/rate-limit.d.ts +36 -0
  25. package/dist/lib/rate-limit.d.ts.map +1 -0
  26. package/dist/lib/rate-limit.js +78 -0
  27. package/dist/lib/rate-limit.js.map +1 -0
  28. package/dist/lib/refresh-queue.d.ts +37 -0
  29. package/dist/lib/refresh-queue.d.ts.map +1 -0
  30. package/dist/lib/refresh-queue.js +83 -0
  31. package/dist/lib/refresh-queue.js.map +1 -0
  32. package/dist/lib/rotation.d.ts +1 -1
  33. package/dist/lib/rotation.d.ts.map +1 -1
  34. package/dist/lib/rotation.js +15 -3
  35. package/dist/lib/rotation.js.map +1 -1
  36. package/dist/lib/storage.d.ts +2 -0
  37. package/dist/lib/storage.d.ts.map +1 -1
  38. package/dist/lib/storage.js +201 -29
  39. package/dist/lib/storage.js.map +1 -1
  40. package/dist/lib/types.d.ts +45 -0
  41. package/dist/lib/types.d.ts.map +1 -1
  42. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../lib/accounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../lib/accounts.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { decodeJWT, refreshAccessToken } from "./auth/auth.js";
2
2
  import { JWT_CLAIM_PATH } from "./constants.js";
3
- import { loadAccounts, saveAccounts } from "./storage.js";
3
+ import { backupAccountsFile, loadAccounts, saveAccounts } from "./storage.js";
4
4
  import { MODEL_FAMILIES } from "./prompts/codex.js";
5
5
  import { getHealthTracker, getTokenTracker, selectHybridAccount } from "./rotation.js";
6
6
  import { findAccountMatchIndex } from "./account-matching.js";
@@ -56,6 +56,7 @@ const PLAN_TYPE_LABELS = {
56
56
  enterprise: "Enterprise",
57
57
  edu: "Edu",
58
58
  };
59
+ const HYDRATION_ATTEMPT_COOLDOWN_MS = 60_000;
59
60
  function normalizePlanType(planType) {
60
61
  if (typeof planType !== "string")
61
62
  return undefined;
@@ -97,6 +98,15 @@ export function formatWaitTime(ms) {
97
98
  return `${minutes}m ${seconds}s`;
98
99
  return `${seconds}s`;
99
100
  }
101
+ function hasCompleteIdentity(account) {
102
+ return Boolean(account.accountId && account.email && account.plan);
103
+ }
104
+ function isAccountEnabled(account) {
105
+ return account.enabled !== false;
106
+ }
107
+ export function needsIdentityHydration(accounts) {
108
+ return accounts.some((account) => isAccountEnabled(account) && !hasCompleteIdentity(account));
109
+ }
100
110
  function clearExpiredRateLimits(account) {
101
111
  const now = nowMs();
102
112
  for (const key of Object.keys(account.rateLimitResetTimes)) {
@@ -119,6 +129,55 @@ function isRateLimitedForFamily(account, family, model) {
119
129
  const baseKey = getQuotaKey(family);
120
130
  return isRateLimitedForQuotaKey(account, baseKey);
121
131
  }
132
+ async function migrateLegacyAccounts(storage) {
133
+ const needsMigration = storage.accounts.some((record) => !hasCompleteIdentity(record));
134
+ if (!needsMigration)
135
+ return storage;
136
+ let updated = false;
137
+ const migratedAccounts = [];
138
+ for (const record of storage.accounts) {
139
+ if (hasCompleteIdentity(record)) {
140
+ migratedAccounts.push(record);
141
+ continue;
142
+ }
143
+ if (!record.refreshToken) {
144
+ migratedAccounts.push(record);
145
+ continue;
146
+ }
147
+ const result = await refreshAccessToken(record.refreshToken);
148
+ if (result.type !== "success") {
149
+ migratedAccounts.push(record);
150
+ continue;
151
+ }
152
+ const token = result.idToken ?? result.access;
153
+ const accountId = extractAccountId(token);
154
+ const email = sanitizeEmail(extractAccountEmail(token));
155
+ const plan = extractAccountPlan(token);
156
+ if (!accountId || !email || !plan) {
157
+ migratedAccounts.push(record);
158
+ continue;
159
+ }
160
+ updated = true;
161
+ migratedAccounts.push({
162
+ ...record,
163
+ accountId,
164
+ email,
165
+ plan,
166
+ refreshToken: result.refresh,
167
+ });
168
+ }
169
+ if (!updated)
170
+ return storage;
171
+ const backupPath = await backupAccountsFile();
172
+ if (!backupPath)
173
+ return storage;
174
+ const migrated = {
175
+ ...storage,
176
+ accounts: migratedAccounts,
177
+ };
178
+ await saveAccounts(migrated);
179
+ return migrated;
180
+ }
122
181
  function mergeAccountRecords(existing, incoming) {
123
182
  const merged = existing.map((account) => ({
124
183
  ...account,
@@ -157,6 +216,9 @@ function mergeAccountRecords(existing, incoming) {
157
216
  if (!updated.plan && candidate.plan) {
158
217
  updated.plan = candidate.plan;
159
218
  }
219
+ if (typeof candidate.enabled === "boolean" && candidate.enabled !== updated.enabled) {
220
+ updated.enabled = candidate.enabled;
221
+ }
160
222
  if (typeof candidate.addedAt === "number" &&
161
223
  Number.isFinite(candidate.addedAt) &&
162
224
  (typeof updated.addedAt !== "number" || candidate.addedAt < updated.addedAt)) {
@@ -217,40 +279,28 @@ export class AccountManager {
217
279
  };
218
280
  lastToastAccountIndex = -1;
219
281
  lastToastTime = 0;
282
+ refreshInFlight = new Map();
283
+ lastHydrationAttemptAt = null;
220
284
  static async loadFromDisk(authFallback) {
221
285
  const stored = await loadAccounts();
222
- return new AccountManager(authFallback, stored);
286
+ const migrated = stored ? await migrateLegacyAccounts(stored) : stored;
287
+ return new AccountManager(authFallback, migrated);
223
288
  }
224
289
  constructor(authFallback, stored) {
225
290
  const fallbackAccountId = extractAccountId(authFallback?.access);
226
291
  const fallbackEmail = sanitizeEmail(extractAccountEmail(authFallback?.access));
227
292
  const fallbackPlan = extractAccountPlan(authFallback?.access);
293
+ const hasFallbackIdentity = Boolean(fallbackAccountId && fallbackEmail && fallbackPlan);
228
294
  if (stored && stored.accounts.length > 0) {
229
295
  const baseNow = nowMs();
230
296
  const fallbackMatchIndex = (() => {
231
- if (!authFallback)
297
+ if (!authFallback || !hasFallbackIdentity)
232
298
  return -1;
233
- if (fallbackAccountId && fallbackPlan) {
234
- const exact = findAccountMatchIndex(stored.accounts, {
235
- accountId: fallbackAccountId,
236
- plan: fallbackPlan,
237
- email: fallbackEmail,
238
- });
239
- if (exact >= 0)
240
- return exact;
241
- }
242
- if (authFallback.refresh) {
243
- const refreshIndex = stored.accounts.findIndex((record) => record.refreshToken === authFallback.refresh);
244
- if (refreshIndex >= 0)
245
- return refreshIndex;
246
- }
247
- if (fallbackAccountId) {
248
- const matches = stored.accounts.filter((record) => record.accountId === fallbackAccountId);
249
- if (matches.length === 1) {
250
- return stored.accounts.findIndex((record) => record.accountId === fallbackAccountId);
251
- }
252
- }
253
- return -1;
299
+ return findAccountMatchIndex(stored.accounts, {
300
+ accountId: fallbackAccountId,
301
+ plan: fallbackPlan,
302
+ email: fallbackEmail,
303
+ });
254
304
  })();
255
305
  this.accounts = stored.accounts
256
306
  .map((record, index) => {
@@ -262,6 +312,7 @@ export class AccountManager {
262
312
  accountId: matchesFallback ? fallbackAccountId ?? record.accountId : record.accountId,
263
313
  email: matchesFallback ? fallbackEmail ?? record.email : sanitizeEmail(record.email),
264
314
  plan: matchesFallback ? fallbackPlan ?? record.plan : record.plan,
315
+ enabled: record.enabled !== false,
265
316
  refreshToken: matchesFallback && authFallback ? authFallback.refresh : record.refreshToken,
266
317
  access: matchesFallback && authFallback ? authFallback.access : undefined,
267
318
  expires: matchesFallback && authFallback ? authFallback.expires : undefined,
@@ -275,13 +326,14 @@ export class AccountManager {
275
326
  })
276
327
  .filter((a) => a !== null);
277
328
  const hasMatchingFallback = !!authFallback && fallbackMatchIndex >= 0;
278
- if (authFallback && !hasMatchingFallback) {
329
+ if (authFallback && hasFallbackIdentity && !hasMatchingFallback) {
279
330
  const now = nowMs();
280
331
  this.accounts.push({
281
332
  index: this.accounts.length,
282
333
  accountId: fallbackAccountId,
283
334
  email: fallbackEmail,
284
335
  plan: fallbackPlan,
336
+ enabled: true,
285
337
  refreshToken: authFallback.refresh,
286
338
  access: authFallback.access,
287
339
  expires: authFallback.expires,
@@ -302,7 +354,7 @@ export class AccountManager {
302
354
  }
303
355
  return;
304
356
  }
305
- if (authFallback) {
357
+ if (authFallback && hasFallbackIdentity) {
306
358
  const now = nowMs();
307
359
  this.accounts = [
308
360
  {
@@ -310,6 +362,7 @@ export class AccountManager {
310
362
  accountId: fallbackAccountId,
311
363
  email: fallbackEmail,
312
364
  plan: fallbackPlan,
365
+ enabled: true,
313
366
  refreshToken: authFallback.refresh,
314
367
  access: authFallback.access,
315
368
  expires: authFallback.expires,
@@ -326,11 +379,16 @@ export class AccountManager {
326
379
  }
327
380
  }
328
381
  getAccountCount() {
329
- return this.accounts.length;
382
+ return this.accounts.filter((account) => hasCompleteIdentity(account) && isAccountEnabled(account)).length;
330
383
  }
331
384
  getAccountsSnapshot() {
332
385
  return this.accounts.map((a) => ({ ...a, rateLimitResetTimes: { ...a.rateLimitResetTimes } }));
333
386
  }
387
+ getAccountByIndex(index) {
388
+ if (!Number.isFinite(index))
389
+ return null;
390
+ return this.accounts[index] ?? null;
391
+ }
334
392
  getActiveIndexForFamily(family) {
335
393
  const idx = this.currentAccountIndexByFamily[family];
336
394
  if (idx < 0 || idx >= this.accounts.length)
@@ -381,7 +439,8 @@ export class AccountManager {
381
439
  if (strategy === "hybrid") {
382
440
  const healthTracker = getHealthTracker();
383
441
  const tokenTracker = getTokenTracker();
384
- const accountsWithMetrics = this.accounts.map((acc) => {
442
+ const eligibleAccounts = this.accounts.filter((acc) => hasCompleteIdentity(acc) && isAccountEnabled(acc));
443
+ const accountsWithMetrics = eligibleAccounts.map((acc) => {
385
444
  clearExpiredRateLimits(acc);
386
445
  return {
387
446
  index: acc.index,
@@ -391,11 +450,13 @@ export class AccountManager {
391
450
  isCoolingDown: this.isAccountCoolingDown(acc),
392
451
  };
393
452
  });
394
- const selectedIndex = selectHybridAccount(accountsWithMetrics, tokenTracker);
453
+ const currentIndex = this.currentAccountIndexByFamily[family] >= 0
454
+ ? this.currentAccountIndexByFamily[family]
455
+ : null;
456
+ const selectedIndex = selectHybridAccount(accountsWithMetrics, tokenTracker, currentIndex);
395
457
  if (selectedIndex !== null) {
396
458
  const selected = this.accounts[selectedIndex];
397
459
  if (selected) {
398
- selected.lastUsed = nowMs();
399
460
  this.currentAccountIndexByFamily[family] = selected.index;
400
461
  return selected;
401
462
  }
@@ -411,10 +472,9 @@ export class AccountManager {
411
472
  return next;
412
473
  }
413
474
  const current = this.getCurrentAccountForFamily(family);
414
- if (current) {
475
+ if (current && hasCompleteIdentity(current) && isAccountEnabled(current)) {
415
476
  clearExpiredRateLimits(current);
416
477
  if (!isRateLimitedForFamily(current, family, model) && !this.isAccountCoolingDown(current)) {
417
- current.lastUsed = nowMs();
418
478
  return current;
419
479
  }
420
480
  }
@@ -426,7 +486,10 @@ export class AccountManager {
426
486
  getNextForFamily(family, model) {
427
487
  const available = this.accounts.filter((a) => {
428
488
  clearExpiredRateLimits(a);
429
- return !isRateLimitedForFamily(a, family, model) && !this.isAccountCoolingDown(a);
489
+ return (hasCompleteIdentity(a) &&
490
+ isAccountEnabled(a) &&
491
+ !isRateLimitedForFamily(a, family, model) &&
492
+ !this.isAccountCoolingDown(a));
430
493
  });
431
494
  if (available.length === 0)
432
495
  return null;
@@ -434,7 +497,6 @@ export class AccountManager {
434
497
  if (!account)
435
498
  return null;
436
499
  this.cursor += 1;
437
- account.lastUsed = nowMs();
438
500
  return account;
439
501
  }
440
502
  markSwitched(account, reason, family) {
@@ -477,6 +539,12 @@ export class AccountManager {
477
539
  this.lastToastAccountIndex = accountIndex;
478
540
  this.lastToastTime = nowMs();
479
541
  }
542
+ markAccountUsed(accountIndex) {
543
+ const account = this.accounts.find((a) => a.index === accountIndex);
544
+ if (!account)
545
+ return;
546
+ account.lastUsed = nowMs();
547
+ }
480
548
  updateFromAuth(account, auth) {
481
549
  account.refreshToken = auth.refresh;
482
550
  account.access = auth.access;
@@ -495,17 +563,33 @@ export class AccountManager {
495
563
  }
496
564
  async hydrateMissingEmails() {
497
565
  // Best-effort: refresh tokens to decode emails/accountId.
566
+ try {
567
+ await backupAccountsFile();
568
+ }
569
+ catch {
570
+ // ignore backup failures
571
+ }
498
572
  for (const account of this.accounts) {
499
- if (account.email && account.accountId)
573
+ if (account.enabled === false)
574
+ continue;
575
+ if (account.enabled === undefined)
576
+ account.enabled = true;
577
+ if (hasCompleteIdentity(account))
500
578
  continue;
501
579
  try {
502
- const refreshed = await refreshAccessToken(account.refreshToken);
580
+ const refreshed = await this.refreshAccountWithLock(account);
503
581
  if (refreshed.type !== "success")
504
582
  continue;
505
- const tokenForClaims = refreshed.idToken ?? refreshed.access;
506
- account.accountId = extractAccountId(tokenForClaims) ?? account.accountId;
507
- account.email = sanitizeEmail(extractAccountEmail(tokenForClaims)) ?? account.email;
508
- account.plan = extractAccountPlan(tokenForClaims) ?? account.plan;
583
+ const idToken = refreshed.idToken;
584
+ const accessToken = refreshed.access;
585
+ account.accountId =
586
+ extractAccountId(idToken) ?? extractAccountId(accessToken) ?? account.accountId;
587
+ account.email =
588
+ sanitizeEmail(extractAccountEmail(idToken)) ??
589
+ sanitizeEmail(extractAccountEmail(accessToken)) ??
590
+ account.email;
591
+ account.plan =
592
+ extractAccountPlan(idToken) ?? extractAccountPlan(accessToken) ?? account.plan;
509
593
  account.refreshToken = refreshed.refresh;
510
594
  }
511
595
  catch {
@@ -513,9 +597,27 @@ export class AccountManager {
513
597
  }
514
598
  }
515
599
  }
600
+ async getMinWaitTimeForFamilyWithHydration(family, model) {
601
+ const now = nowMs();
602
+ const needsHydration = this.accounts.some((account) => account.enabled !== false && !hasCompleteIdentity(account));
603
+ const shouldAttemptHydration = this.lastHydrationAttemptAt === null ||
604
+ now - this.lastHydrationAttemptAt >= HYDRATION_ATTEMPT_COOLDOWN_MS;
605
+ if (needsHydration && shouldAttemptHydration) {
606
+ this.lastHydrationAttemptAt = now;
607
+ try {
608
+ await this.hydrateMissingEmails();
609
+ await this.saveToDisk();
610
+ }
611
+ catch {
612
+ // Best-effort; ignore hydration failures here.
613
+ }
614
+ }
615
+ return this.getMinWaitTimeForFamily(family, model);
616
+ }
516
617
  getMinWaitTimeForFamily(family, model) {
517
618
  const now = nowMs();
518
- const available = this.accounts.filter((a) => {
619
+ const eligible = this.accounts.filter((a) => hasCompleteIdentity(a) && isAccountEnabled(a));
620
+ const available = eligible.filter((a) => {
519
621
  clearExpiredRateLimits(a);
520
622
  return !isRateLimitedForFamily(a, family, model) && !this.isAccountCoolingDown(a);
521
623
  });
@@ -524,7 +626,7 @@ export class AccountManager {
524
626
  const waitTimes = [];
525
627
  const baseKey = getQuotaKey(family);
526
628
  const modelKey = model ? getQuotaKey(family, model) : null;
527
- for (const account of this.accounts) {
629
+ for (const account of eligible) {
528
630
  const baseReset = account.rateLimitResetTimes[baseKey];
529
631
  if (typeof baseReset === "number")
530
632
  waitTimes.push(Math.max(0, baseReset - now));
@@ -539,6 +641,48 @@ export class AccountManager {
539
641
  }
540
642
  return waitTimes.length > 0 ? Math.min(...waitTimes) : 0;
541
643
  }
644
+ async refreshAccountWithLock(account, refreshFn = refreshAccessToken) {
645
+ const existing = this.refreshInFlight.get(account.index);
646
+ if (existing)
647
+ return existing;
648
+ const refreshPromise = (async () => {
649
+ try {
650
+ return await refreshFn(account.refreshToken);
651
+ }
652
+ finally {
653
+ this.refreshInFlight.delete(account.index);
654
+ }
655
+ })();
656
+ this.refreshInFlight.set(account.index, refreshPromise);
657
+ return refreshPromise;
658
+ }
659
+ async refreshAccountWithFallback(account, refreshFn = refreshAccessToken) {
660
+ const first = await this.refreshAccountWithLock(account, refreshFn);
661
+ if (first.type === "success")
662
+ return first;
663
+ const latest = await loadAccounts().catch(() => null);
664
+ if (!latest?.accounts || latest.accounts.length === 0)
665
+ return first;
666
+ const matchIndex = findAccountMatchIndex(latest.accounts, {
667
+ accountId: account.accountId,
668
+ plan: account.plan,
669
+ email: account.email,
670
+ });
671
+ if (matchIndex < 0)
672
+ return first;
673
+ const latestRecord = latest.accounts[matchIndex];
674
+ if (!latestRecord?.refreshToken || latestRecord.refreshToken === account.refreshToken) {
675
+ return first;
676
+ }
677
+ account.refreshToken = latestRecord.refreshToken;
678
+ if (!account.accountId && latestRecord.accountId)
679
+ account.accountId = latestRecord.accountId;
680
+ if (!account.email && latestRecord.email)
681
+ account.email = latestRecord.email;
682
+ if (!account.plan && latestRecord.plan)
683
+ account.plan = latestRecord.plan;
684
+ return this.refreshAccountWithLock(account, refreshFn);
685
+ }
542
686
  async saveToDisk() {
543
687
  const activeIndexByFamily = {};
544
688
  for (const family of MODEL_FAMILIES) {
@@ -550,6 +694,7 @@ export class AccountManager {
550
694
  accountId: a.accountId,
551
695
  email: a.email,
552
696
  plan: a.plan,
697
+ enabled: a.enabled !== false,
553
698
  addedAt: a.addedAt,
554
699
  lastUsed: a.lastUsed,
555
700
  lastSwitchReason: a.lastSwitchReason,
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../lib/accounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../lib/accounts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../lib/auth/auth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAY,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzG,eAAO,MAAM,SAAS,iCAAiC,CAAC;AACxD,eAAO,MAAM,aAAa,4CAA4C,CAAC;AACvE,eAAO,MAAM,SAAS,wCAAwC,CAAC;AAC/D,eAAO,MAAM,YAAY,wCAAwC,CAAC;AAClE,eAAO,MAAM,KAAK,wCAAwC,CAAC;AAE3D;;;GAGG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAwBtE;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC9C,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,GAAE,MAAqB,GAChC,OAAO,CAAC,WAAW,CAAC,CAsCtB;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAU1D;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAoDnF;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAiB1E"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../lib/auth/auth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAY,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzG,eAAO,MAAM,SAAS,iCAAiC,CAAC;AACxD,eAAO,MAAM,aAAa,4CAA4C,CAAC;AACvE,eAAO,MAAM,SAAS,wCAAwC,CAAC;AAC/D,eAAO,MAAM,YAAY,wCAAwC,CAAC;AAClE,eAAO,MAAM,KAAK,wCAAwC,CAAC;AAE3D;;;GAGG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAwBtE;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC9C,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,GAAE,MAAqB,GAChC,OAAO,CAAC,WAAW,CAAC,CAsCtB;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAW1D;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAoDnF;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAiB1E"}
@@ -93,7 +93,9 @@ export function decodeJWT(token) {
93
93
  if (parts.length !== 3)
94
94
  return null;
95
95
  const payload = parts[1];
96
- const decoded = Buffer.from(payload, "base64").toString("utf-8");
96
+ if (!/^[A-Za-z0-9_-]+={0,2}$/.test(payload))
97
+ return null;
98
+ const decoded = Buffer.from(payload, "base64url").toString("utf-8");
97
99
  return JSON.parse(decoded);
98
100
  }
99
101
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../lib/auth/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,sCAAsC;AACtC,MAAM,CAAC,MAAM,SAAS,GAAG,8BAA8B,CAAC;AACxD,MAAM,CAAC,MAAM,aAAa,GAAG,yCAAyC,CAAC;AACvE,MAAM,CAAC,MAAM,SAAS,GAAG,qCAAqC,CAAC;AAC/D,MAAM,CAAC,MAAM,YAAY,GAAG,qCAAqC,CAAC;AAClE,MAAM,CAAC,MAAM,KAAK,GAAG,qCAAqC,CAAC;AAE3D;;;GAGG;AACH,MAAM,UAAU,WAAW;IAC1B,OAAO,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACpD,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IAEtB,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3B,OAAO;YACN,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;YAC/C,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;SACjD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IAEV,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC1C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACxB,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;QAC1C,OAAO;YACN,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS;YACrC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS;SACvC,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACxB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,IAAY,EACZ,QAAgB,EAChB,cAAsB,YAAY;IAElC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE;QAClC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;QAChE,IAAI,EAAE,IAAI,eAAe,CAAC;YACzB,UAAU,EAAE,oBAAoB;YAChC,SAAS,EAAE,SAAS;YACpB,IAAI;YACJ,aAAa,EAAE,QAAQ;YACvB,YAAY,EAAE,WAAW;SACzB,CAAC;KACF,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC7E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC3B,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAK7B,CAAC;IACF,IACC,CAAC,IAAI,EAAE,YAAY;QACnB,CAAC,IAAI,EAAE,aAAa;QACpB,OAAO,IAAI,EAAE,UAAU,KAAK,QAAQ,EACnC,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,sDAAsD,EAAE,IAAI,CAAC,CAAC;QAC5E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC3B,CAAC;IACD,OAAO;QACN,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,IAAI,CAAC,YAAY;QACzB,OAAO,EAAE,IAAI,CAAC,aAAa;QAC3B,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI;QAC5C,OAAO,EAAE,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;KAC9F,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa;IACtC,IAAI,CAAC;QACJ,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACpC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACzB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAe,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,YAAoB;IAC5D,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE;YACvC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;YAChE,IAAI,EAAE,IAAI,eAAe,CAAC;gBACzB,UAAU,EAAE,eAAe;gBAC3B,aAAa,EAAE,YAAY;gBAC3B,SAAS,EAAE,SAAS;aACpB,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,KAAK,CACZ,6CAA6C,EAC7C,QAAQ,CAAC,MAAM,EACf,IAAI,CACJ,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC3B,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAKlC,CAAC;QACF,IACC,CAAC,IAAI,EAAE,YAAY;YACnB,CAAC,IAAI,EAAE,aAAa;YACpB,OAAO,IAAI,EAAE,UAAU,KAAK,QAAQ,EACnC,CAAC;YACF,OAAO,CAAC,KAAK,CACZ,8DAA8D,EAC9D,IAAI,CACJ,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC3B,CAAC;QAED,OAAO;YACN,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,OAAO,EAAE,IAAI,CAAC,aAAa;YAC3B,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI;YAC5C,OAAO,EAAE,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SAC9F,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,GAAG,GAAG,KAAc,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;QACjE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC3B,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC5C,MAAM,IAAI,GAAG,CAAC,MAAM,YAAY,EAAE,CAAa,CAAC;IAChD,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;IAE5B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;IACnC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAC9C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC7C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IACnD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;IACtD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAAC;IAC3D,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;IAC1D,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAEnD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../lib/auth/auth.ts"],"names":[],"mappings":"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"}
package/dist/lib/cli.d.ts CHANGED
@@ -3,8 +3,10 @@ export interface ExistingAccountLabel {
3
3
  email?: string;
4
4
  plan?: string;
5
5
  accountId?: string;
6
+ enabled?: boolean;
6
7
  }
7
- export declare function promptLoginMode(existing: ExistingAccountLabel[]): Promise<"add" | "fresh">;
8
+ export declare function promptLoginMode(existing: ExistingAccountLabel[]): Promise<"add" | "fresh" | "manage">;
9
+ export declare function promptManageAccounts(existing: ExistingAccountLabel[]): Promise<number | null>;
8
10
  export declare function promptAddAnotherAccount(currentCount: number, maxAccounts: number): Promise<boolean>;
9
11
  export declare function promptOAuthCallbackValue(message: string): Promise<string>;
10
12
  //# sourceMappingURL=cli.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../lib/cli.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,eAAe,CACpC,QAAQ,EAAE,oBAAoB,EAAE,GAC9B,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,CA2B1B;AAED,wBAAsB,uBAAuB,CAC5C,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CAalB;AAED,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAS/E"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../lib/cli.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,eAAe,CACpC,QAAQ,EAAE,oBAAoB,EAAE,GAC9B,OAAO,CAAC,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC,CA6BrC;AAED,wBAAsB,oBAAoB,CACzC,QAAQ,EAAE,oBAAoB,EAAE,GAC9B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgCxB;AAED,wBAAsB,uBAAuB,CAC5C,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CAalB;AAED,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAS/E"}