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

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAQ,KAAK,MAAM,EAAoB,MAAM,qBAAqB,CAAC;AA4G1E;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAu5B9B,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAQ,KAAK,MAAM,EAAoB,MAAM,qBAAqB,CAAC;AAyH1E;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAylC9B,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -22,7 +22,7 @@
22
22
  * @repository https://github.com/numman-ali/opencode-openai-codex-auth
23
23
  */
24
24
  import { tool } from "@opencode-ai/plugin";
25
- import { createAuthorizationFlow, exchangeAuthorizationCode, parseAuthorizationInput, REDIRECT_URI, } from "./lib/auth/auth.js";
25
+ import { createAuthorizationFlow, exchangeAuthorizationCode, parseAuthorizationInputForFlow, REDIRECT_URI, } from "./lib/auth/auth.js";
26
26
  import { openBrowserUrl } from "./lib/auth/browser.js";
27
27
  import { startLocalOAuthServer } from "./lib/auth/server.js";
28
28
  import { getAccountSelectionStrategy, getCodexMode, getDefaultRetryAfterMs, getMaxBackoffMs, getMaxCacheFirstWaitSeconds, getPidOffsetEnabled, getQuietMode, getRateLimitDedupWindowMs, getRateLimitStateResetMs, getRateLimitToastDebounceMs, getRequestJitterMaxMs, getRetryAllAccountsMaxRetries, getRetryAllAccountsMaxWaitMs, getRetryAllAccountsRateLimited, getSchedulingMode, getSwitchOnFirstRateLimit, getTokenRefreshSkewMs, loadPluginConfig, } from "./lib/config.js";
@@ -30,14 +30,15 @@ import { AUTH_LABELS, CODEX_BASE_URL, DUMMY_API_KEY, HTTP_STATUS, LOG_STAGES, PL
30
30
  import { logRequest, logDebug } from "./lib/logger.js";
31
31
  import { createCodexHeaders, extractRequestUrl, handleErrorResponse, handleSuccessResponse, rewriteUrlForCodex, transformRequestForCodex, } from "./lib/request/fetch-helpers.js";
32
32
  import { AccountManager, extractAccountEmail, extractAccountId, extractAccountPlan, formatAccountLabel, formatWaitTime, isOAuthAuth, needsIdentityHydration, sanitizeEmail, } from "./lib/accounts.js";
33
- import { promptAddAnotherAccount, promptLoginMode, promptManageAccounts, promptOAuthCallbackValue, } from "./lib/cli.js";
33
+ import { promptAddAnotherAccount, promptLoginMode, promptManageAccounts, promptOAuthCallbackValue, promptRepairAccounts, } from "./lib/cli.js";
34
34
  import { withTerminalModeRestored } from "./lib/terminal.js";
35
- import { getStoragePath, loadAccounts, saveAccounts, toggleAccountEnabled } from "./lib/storage.js";
35
+ import { getStoragePath, autoQuarantineCorruptAccountsFile, inspectAccountsFile, loadAccounts, quarantineAccounts, quarantineCorruptFile, replaceAccountsFile, saveAccounts, toggleAccountEnabled, writeQuarantineFile, } from "./lib/storage.js";
36
36
  import { findAccountMatchIndex } from "./lib/account-matching.js";
37
37
  import { getModelFamily, MODEL_FAMILIES } from "./lib/prompts/codex.js";
38
38
  import { getHealthTracker, getTokenTracker } from "./lib/rotation.js";
39
39
  import { RateLimitTracker, decideRateLimitAction, parseRateLimitReason } from "./lib/rate-limit.js";
40
40
  import { ProactiveRefreshQueue, createRefreshScheduler, } from "./lib/refresh-queue.js";
41
+ import { formatRateLimitStatusMessage, formatToastMessage } from "./lib/formatting.js";
41
42
  const RATE_LIMIT_SHORT_RETRY_THRESHOLD_MS = 5_000;
42
43
  const AUTH_FAILURE_COOLDOWN_MS = 60_000;
43
44
  const MAX_ACCOUNTS = 10;
@@ -87,18 +88,21 @@ export const OpenAIAuthPlugin = async ({ client }) => {
87
88
  if (quietMode)
88
89
  return;
89
90
  try {
90
- await client.tui.showToast({ body: { message, variant } });
91
+ await client.tui.showToast({ body: { message: formatToastMessage(message), variant } });
91
92
  }
92
93
  catch {
93
94
  // ignore (non-TUI contexts)
94
95
  }
95
96
  };
96
- const buildManualOAuthFlow = (pkce, url, onSuccess) => ({
97
+ const buildManualOAuthFlow = (pkce, expectedState, url, onSuccess) => ({
97
98
  url,
98
99
  method: "code",
99
100
  instructions: AUTH_LABELS.INSTRUCTIONS_MANUAL,
100
101
  callback: async (input) => {
101
- const parsed = parseAuthorizationInput(input);
102
+ const parsed = parseAuthorizationInputForFlow(input, expectedState);
103
+ if (parsed.stateStatus === "mismatch") {
104
+ return { type: "failed" };
105
+ }
102
106
  if (!parsed.code) {
103
107
  return { type: "failed" };
104
108
  }
@@ -181,9 +185,15 @@ export const OpenAIAuthPlugin = async ({ client }) => {
181
185
  if (!isOAuthAuth(auth)) {
182
186
  return {};
183
187
  }
188
+ const pluginConfig = loadPluginConfig();
189
+ const quietMode = getQuietMode(pluginConfig);
184
190
  const accountManager = await AccountManager.loadFromDisk(auth);
185
191
  cachedAccountManager = accountManager;
186
192
  if (accountManager.getAccountCount() === 0) {
193
+ const quarantinePath = await autoQuarantineCorruptAccountsFile();
194
+ if (quarantinePath) {
195
+ await showToast("Accounts file was corrupted and has been quarantined. Run `opencode auth login`.", "warning", quietMode);
196
+ }
187
197
  logDebug(`[${PLUGIN_NAME}] No OAuth accounts available (run opencode auth login)`);
188
198
  return {};
189
199
  }
@@ -193,11 +203,9 @@ export const OpenAIAuthPlugin = async ({ client }) => {
193
203
  global: providerConfig?.options || {},
194
204
  models: providerConfig?.models || {},
195
205
  };
196
- const pluginConfig = loadPluginConfig();
197
206
  const codexMode = getCodexMode(pluginConfig);
198
207
  const accountSelectionStrategy = getAccountSelectionStrategy(pluginConfig);
199
208
  const pidOffsetEnabled = getPidOffsetEnabled(pluginConfig);
200
- const quietMode = getQuietMode(pluginConfig);
201
209
  const tokenRefreshSkewMs = getTokenRefreshSkewMs(pluginConfig);
202
210
  const proactiveRefreshEnabled = (() => {
203
211
  const rawConfig = pluginConfig;
@@ -236,6 +244,8 @@ export const OpenAIAuthPlugin = async ({ client }) => {
236
244
  getTasks: () => {
237
245
  const tasks = [];
238
246
  for (const account of accountManager.getAccountsSnapshot()) {
247
+ if (account.enabled === false)
248
+ continue;
239
249
  if (!Number.isFinite(account.expires))
240
250
  continue;
241
251
  tasks.push({
@@ -243,7 +253,7 @@ export const OpenAIAuthPlugin = async ({ client }) => {
243
253
  expires: account.expires ?? 0,
244
254
  refresh: async () => {
245
255
  const live = accountManager.getAccountByIndex(account.index);
246
- if (!live)
256
+ if (!live || live.enabled === false)
247
257
  return { type: "failed" };
248
258
  const refreshed = await accountManager.refreshAccountWithFallback(live);
249
259
  if (refreshed.type !== "success")
@@ -327,8 +337,35 @@ export const OpenAIAuthPlugin = async ({ client }) => {
327
337
  abortSignal?.addEventListener("abort", onAbort, { once: true });
328
338
  });
329
339
  let allRateLimitedRetries = 0;
340
+ let autoRepairAttempted = false;
330
341
  while (true) {
331
342
  const accountCount = accountManager.getAccountCount();
343
+ if (!autoRepairAttempted && accountCount === 0) {
344
+ const legacyAccounts = accountManager.getLegacyAccounts();
345
+ if (legacyAccounts.length > 0) {
346
+ autoRepairAttempted = true;
347
+ const repair = await accountManager.repairLegacyAccounts();
348
+ const snapshot = accountManager.getStorageSnapshot();
349
+ let quarantinePath = null;
350
+ if (repair.quarantined.length > 0) {
351
+ const quarantinedTokens = new Set(repair.quarantined.map((account) => account.refreshToken));
352
+ const quarantineEntries = snapshot.accounts.filter((account) => quarantinedTokens.has(account.refreshToken));
353
+ const quarantineResult = await quarantineAccounts(snapshot, quarantineEntries, "legacy-auto-repair-failed");
354
+ quarantinePath = quarantineResult.quarantinePath;
355
+ accountManager.removeAccountsByRefreshToken(quarantinedTokens);
356
+ }
357
+ else {
358
+ await replaceAccountsFile(snapshot);
359
+ }
360
+ if (repair.quarantined.length > 0 && quarantinePath) {
361
+ await showToast(`Auto-repair failed for ${repair.quarantined.length} account(s). Quarantined: ${quarantinePath}`, "warning", quietMode);
362
+ }
363
+ else if (repair.repaired.length > 0) {
364
+ await showToast(`Auto-repaired ${repair.repaired.length} account(s).`, "success", quietMode);
365
+ }
366
+ continue;
367
+ }
368
+ }
332
369
  const attempted = new Set();
333
370
  while (attempted.size < Math.max(1, accountCount)) {
334
371
  const account = accountManager.getCurrentOrNextForFamily(modelFamily, model, accountSelectionStrategy, usePidOffset);
@@ -497,11 +534,11 @@ export const OpenAIAuthPlugin = async ({ client }) => {
497
534
  await sleep(waitMs);
498
535
  continue;
499
536
  }
500
- const storePath = getStoragePath();
501
- const waitLabel = waitMs > 0 ? formatWaitTime(waitMs) : "a bit";
502
- const message = accountManager.getAccountCount() === 0
503
- ? "No OpenAI accounts configured. Run `opencode auth login`."
504
- : `All ${accountManager.getAccountCount()} account(s) are rate-limited. Try again in ${waitLabel} or add another account with \`opencode auth login\`. (Storage: ${storePath})`;
537
+ const message = formatRateLimitStatusMessage({
538
+ accountCount: accountManager.getAccountCount(),
539
+ waitMs,
540
+ storagePath: getStoragePath(),
541
+ });
505
542
  return new Response(JSON.stringify({ error: { message } }), {
506
543
  status: 429,
507
544
  headers: { "content-type": "application/json; charset=utf-8" },
@@ -530,6 +567,71 @@ export const OpenAIAuthPlugin = async ({ client }) => {
530
567
  const pluginConfig = loadPluginConfig();
531
568
  const quietMode = getQuietMode(pluginConfig);
532
569
  const isCliFlow = Boolean(inputs);
570
+ const notifyRepairResult = async (message) => {
571
+ if (isCliFlow) {
572
+ console.log(`\n${message}\n`);
573
+ return;
574
+ }
575
+ await showToast(message, "info", quietMode);
576
+ };
577
+ const maybeRepairAccounts = async () => {
578
+ const inspection = await inspectAccountsFile();
579
+ if (inspection.status === "missing" || inspection.status === "ok") {
580
+ return null;
581
+ }
582
+ const corruptCount = inspection.status === "corrupt-file"
583
+ ? 1
584
+ : inspection.corruptEntries.length;
585
+ const legacyCount = inspection.status === "needs-repair" ? inspection.legacyEntries.length : 0;
586
+ const shouldRepair = await promptRepairAccounts({
587
+ legacyCount,
588
+ corruptCount,
589
+ });
590
+ if (!shouldRepair)
591
+ return null;
592
+ const quarantinePaths = [];
593
+ if (inspection.status === "corrupt-file") {
594
+ const quarantinePath = await quarantineCorruptFile();
595
+ if (quarantinePath) {
596
+ quarantinePaths.push(quarantinePath);
597
+ await notifyRepairResult(`Accounts file was corrupted. Quarantined to ${quarantinePath}.`);
598
+ }
599
+ return await loadAccounts();
600
+ }
601
+ if (inspection.corruptEntries.length > 0) {
602
+ const quarantinePath = await writeQuarantineFile(inspection.corruptEntries, "corrupt-entry");
603
+ quarantinePaths.push(quarantinePath);
604
+ }
605
+ const storage = await loadAccounts();
606
+ if (!storage) {
607
+ await notifyRepairResult("Repair skipped: no valid accounts found.");
608
+ return null;
609
+ }
610
+ const manager = new AccountManager(undefined, storage);
611
+ const repair = await manager.repairLegacyAccounts();
612
+ const snapshot = manager.getStorageSnapshot();
613
+ let updatedStorage = snapshot;
614
+ if (repair.quarantined.length > 0) {
615
+ const quarantinedTokens = new Set(repair.quarantined.map((account) => account.refreshToken));
616
+ const quarantineEntries = snapshot.accounts.filter((account) => quarantinedTokens.has(account.refreshToken));
617
+ const quarantineResult = await quarantineAccounts(snapshot, quarantineEntries, "legacy-repair-failed");
618
+ updatedStorage = quarantineResult.storage;
619
+ quarantinePaths.push(quarantineResult.quarantinePath);
620
+ }
621
+ else {
622
+ await replaceAccountsFile(snapshot);
623
+ }
624
+ const summaryParts = [
625
+ `Repaired ${repair.repaired.length}`,
626
+ `quarantined ${repair.quarantined.length}`,
627
+ ];
628
+ const detail = quarantinePaths.length
629
+ ? ` Quarantine: ${quarantinePaths.join(", ")}.`
630
+ : "";
631
+ await notifyRepairResult(`Account repair complete. ${summaryParts.join(", ")}.${detail}`);
632
+ return updatedStorage;
633
+ };
634
+ const repairedStorage = await maybeRepairAccounts();
533
635
  // CLI flow (`opencode auth login`) passes inputs; TUI does not.
534
636
  if (isCliFlow) {
535
637
  debugAuth("[OAuthAuthorize] Starting OAuth flow in CLI mode");
@@ -541,8 +643,15 @@ export const OpenAIAuthPlugin = async ({ client }) => {
541
643
  const { pkce, state, url } = await createAuthorizationFlow();
542
644
  console.log("\nOAuth URL:\n" + url + "\n");
543
645
  if (noBrowser) {
544
- const callbackInput = await promptOAuthCallbackValue("Paste the redirect URL (or just the code) here: ");
545
- const parsed = parseAuthorizationInput(callbackInput);
646
+ const callbackInput = await promptOAuthCallbackValue("Paste the full redirect URL (recommended). You can also paste code#state or just the code: ");
647
+ const parsed = parseAuthorizationInputForFlow(callbackInput, state);
648
+ if (parsed.stateStatus === "mismatch") {
649
+ console.log("\nOAuth state mismatch. Paste the redirect URL from this login session (the one shown above).\n");
650
+ return { type: "failed" };
651
+ }
652
+ if (parsed.stateStatus === "missing") {
653
+ console.log("\nWarning: redirect state not provided. For best security, paste the full redirect URL.\n");
654
+ }
546
655
  if (!parsed.code)
547
656
  return { type: "failed" };
548
657
  return await exchangeAuthorizationCode(parsed.code, pkce.verifier, REDIRECT_URI);
@@ -557,8 +666,15 @@ export const OpenAIAuthPlugin = async ({ client }) => {
557
666
  openBrowserUrl(url);
558
667
  if (!serverInfo || !serverInfo.ready) {
559
668
  serverInfo?.close();
560
- const callbackInput = await promptOAuthCallbackValue("Paste the redirect URL (or just the code) here: ");
561
- const parsed = parseAuthorizationInput(callbackInput);
669
+ const callbackInput = await promptOAuthCallbackValue("Paste the full redirect URL (recommended). You can also paste code#state or just the code: ");
670
+ const parsed = parseAuthorizationInputForFlow(callbackInput, state);
671
+ if (parsed.stateStatus === "mismatch") {
672
+ console.log("\nOAuth state mismatch. Paste the redirect URL from this login session (the one shown above).\n");
673
+ return { type: "failed" };
674
+ }
675
+ if (parsed.stateStatus === "missing") {
676
+ console.log("\nWarning: redirect state not provided. For best security, paste the full redirect URL.\n");
677
+ }
562
678
  if (!parsed.code)
563
679
  return { type: "failed" };
564
680
  return await exchangeAuthorizationCode(parsed.code, pkce.verifier, REDIRECT_URI);
@@ -571,7 +687,7 @@ export const OpenAIAuthPlugin = async ({ client }) => {
571
687
  };
572
688
  const authenticated = [];
573
689
  let startFresh = true;
574
- let existingStorage = await loadAccounts();
690
+ let existingStorage = repairedStorage ?? (await loadAccounts());
575
691
  if (existingStorage && existingStorage.accounts.length > 0) {
576
692
  const needsHydration = needsIdentityHydration(existingStorage.accounts);
577
693
  if (needsHydration) {
@@ -684,7 +800,7 @@ export const OpenAIAuthPlugin = async ({ client }) => {
684
800
  process.env.SSH_TTY ||
685
801
  process.env.OPENCODE_HEADLESS);
686
802
  const useManualFlow = isHeadless || process.env.OPENCODE_NO_BROWSER === "1";
687
- const existingStorage = await loadAccounts();
803
+ const existingStorage = repairedStorage ?? (await loadAccounts());
688
804
  const existingCount = existingStorage?.accounts.length ?? 0;
689
805
  const { pkce, state, url } = await createAuthorizationFlow();
690
806
  let serverInfo = null;
@@ -730,10 +846,14 @@ export const OpenAIAuthPlugin = async ({ client }) => {
730
846
  serverInfo?.close();
731
847
  return {
732
848
  url,
733
- instructions: "Visit the URL above, complete OAuth, then paste either the full redirect URL or the authorization code.",
849
+ instructions: "Visit the URL above, complete OAuth, then paste the full redirect URL (recommended) or the authorization code.",
734
850
  method: "code",
735
851
  callback: async (input) => {
736
- const parsed = parseAuthorizationInput(input);
852
+ const parsed = parseAuthorizationInputForFlow(input, state);
853
+ if (parsed.stateStatus === "mismatch") {
854
+ await showToast("OAuth state mismatch. Paste the redirect URL from this login session.", "error", quietMode);
855
+ return { type: "failed" };
856
+ }
737
857
  if (!parsed.code)
738
858
  return { type: "failed" };
739
859
  const tokens = await exchangeAuthorizationCode(parsed.code, pkce.verifier, REDIRECT_URI);
@@ -759,8 +879,8 @@ export const OpenAIAuthPlugin = async ({ client }) => {
759
879
  label: AUTH_LABELS.OAUTH_MANUAL,
760
880
  type: "oauth",
761
881
  authorize: async () => {
762
- const { pkce, url } = await createAuthorizationFlow();
763
- return buildManualOAuthFlow(pkce, url, async (tokens) => {
882
+ const { pkce, state, url } = await createAuthorizationFlow();
883
+ return buildManualOAuthFlow(pkce, state, url, async (tokens) => {
764
884
  await persistAccount(tokens);
765
885
  });
766
886
  },
@@ -851,6 +971,36 @@ export const OpenAIAuthPlugin = async ({ client }) => {
851
971
  return `Switched to ${formatAccountLabel(account, targetIndex)}`;
852
972
  },
853
973
  }),
974
+ "openai-accounts-toggle": tool({
975
+ description: "Enable or disable an OpenAI account by index (1-based).",
976
+ args: {
977
+ index: tool.schema.number().describe("Account number (1-based)"),
978
+ },
979
+ async execute({ index }) {
980
+ const storage = await loadAccounts();
981
+ if (!storage || storage.accounts.length === 0) {
982
+ return "No OpenAI accounts configured. Run: opencode auth login";
983
+ }
984
+ const targetIndex = Math.floor((index ?? 0) - 1);
985
+ if (targetIndex < 0 || targetIndex >= storage.accounts.length) {
986
+ return `Invalid account number: ${index}\nValid range: 1-${storage.accounts.length}`;
987
+ }
988
+ const updated = toggleAccountEnabled(storage, targetIndex);
989
+ if (!updated) {
990
+ return `Failed to toggle account number: ${index}`;
991
+ }
992
+ await saveAccounts(updated);
993
+ const account = updated.accounts[targetIndex];
994
+ if (cachedAccountManager) {
995
+ const live = cachedAccountManager.getAccountByIndex(targetIndex);
996
+ if (live)
997
+ live.enabled = account?.enabled !== false;
998
+ }
999
+ const enabled = account?.enabled !== false;
1000
+ const verb = enabled ? "Enabled" : "Disabled";
1001
+ return `${verb} ${formatAccountLabel(account, targetIndex)} (${targetIndex + 1}/${updated.accounts.length})`;
1002
+ },
1003
+ }),
854
1004
  },
855
1005
  };
856
1006
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,8 @@ export declare class AccountManager {
47
47
  static loadFromDisk(authFallback?: OAuthAuthDetails): Promise<AccountManager>;
48
48
  constructor(authFallback?: OAuthAuthDetails, stored?: AccountStorageV3 | null);
49
49
  getAccountCount(): number;
50
+ getLegacyAccounts(): ManagedAccount[];
51
+ removeAccountsByRefreshToken(tokens: Set<string>): number;
50
52
  getAccountsSnapshot(): ManagedAccount[];
51
53
  getAccountByIndex(index: number): ManagedAccount | null;
52
54
  getActiveIndexForFamily(family: ModelFamily): number;
@@ -65,11 +67,16 @@ export declare class AccountManager {
65
67
  updateFromAuth(account: ManagedAccount, auth: OAuthAuthDetails): void;
66
68
  toAuthDetails(account: ManagedAccount): OAuthAuthDetails;
67
69
  hydrateMissingEmails(): Promise<void>;
70
+ repairLegacyAccounts(): Promise<{
71
+ repaired: ManagedAccount[];
72
+ quarantined: ManagedAccount[];
73
+ }>;
68
74
  getMinWaitTimeForFamilyWithHydration(family: ModelFamily, model?: string | null): Promise<number>;
69
75
  getMinWaitTimeForFamily(family: ModelFamily, model?: string | null): number;
70
76
  refreshAccountWithLock(account: ManagedAccount, refreshFn?: (refreshToken: string) => Promise<TokenResult>): Promise<TokenResult>;
71
77
  refreshAccountWithFallback(account: ManagedAccount, refreshFn?: (refreshToken: string) => Promise<TokenResult>): Promise<TokenResult>;
72
78
  saveToDisk(): Promise<void>;
79
+ getStorageSnapshot(): AccountStorageV3;
73
80
  }
74
81
  export declare function isOAuthAuth(auth: Auth): auth is OAuthAuthDetails;
75
82
  //# sourceMappingURL=accounts.d.ts.map
@@ -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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"}