codex-multi-auth 0.1.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/LICENSE +1 -0
- package/README.md +162 -0
- package/assets/opencode-logo-ornate-dark.svg +18 -0
- package/assets/readme-hero.svg +31 -0
- package/config/README.md +87 -0
- package/config/minimal-opencode.json +13 -0
- package/config/opencode-legacy.json +571 -0
- package/config/opencode-modern.json +239 -0
- package/dist/index.d.ts +45 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3160 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/accounts/rate-limits.d.ts +22 -0
- package/dist/lib/accounts/rate-limits.d.ts.map +1 -0
- package/dist/lib/accounts/rate-limits.js +63 -0
- package/dist/lib/accounts/rate-limits.js.map +1 -0
- package/dist/lib/accounts.d.ts +95 -0
- package/dist/lib/accounts.d.ts.map +1 -0
- package/dist/lib/accounts.js +668 -0
- package/dist/lib/accounts.js.map +1 -0
- package/dist/lib/audit.d.ts +45 -0
- package/dist/lib/audit.d.ts.map +1 -0
- package/dist/lib/audit.js +131 -0
- package/dist/lib/audit.js.map +1 -0
- package/dist/lib/auth/auth.d.ts +56 -0
- package/dist/lib/auth/auth.d.ts.map +1 -0
- package/dist/lib/auth/auth.js +214 -0
- package/dist/lib/auth/auth.js.map +1 -0
- package/dist/lib/auth/browser.d.ts +34 -0
- package/dist/lib/auth/browser.d.ts.map +1 -0
- package/dist/lib/auth/browser.js +185 -0
- package/dist/lib/auth/browser.js.map +1 -0
- package/dist/lib/auth/server.d.ts +24 -0
- package/dist/lib/auth/server.d.ts.map +1 -0
- package/dist/lib/auth/server.js +116 -0
- package/dist/lib/auth/server.js.map +1 -0
- package/dist/lib/auth/token-utils.d.ts +59 -0
- package/dist/lib/auth/token-utils.d.ts.map +1 -0
- package/dist/lib/auth/token-utils.js +331 -0
- package/dist/lib/auth/token-utils.js.map +1 -0
- package/dist/lib/auth-rate-limit.d.ts +20 -0
- package/dist/lib/auth-rate-limit.d.ts.map +1 -0
- package/dist/lib/auth-rate-limit.js +91 -0
- package/dist/lib/auth-rate-limit.js.map +1 -0
- package/dist/lib/auto-update-checker.d.ts +10 -0
- package/dist/lib/auto-update-checker.d.ts.map +1 -0
- package/dist/lib/auto-update-checker.js +216 -0
- package/dist/lib/auto-update-checker.js.map +1 -0
- package/dist/lib/capability-policy.d.ts +18 -0
- package/dist/lib/capability-policy.d.ts.map +1 -0
- package/dist/lib/capability-policy.js +150 -0
- package/dist/lib/capability-policy.js.map +1 -0
- package/dist/lib/circuit-breaker.d.ts +34 -0
- package/dist/lib/circuit-breaker.d.ts.map +1 -0
- package/dist/lib/circuit-breaker.js +124 -0
- package/dist/lib/circuit-breaker.js.map +1 -0
- package/dist/lib/cli.d.ts +64 -0
- package/dist/lib/cli.d.ts.map +1 -0
- package/dist/lib/cli.js +274 -0
- package/dist/lib/cli.js.map +1 -0
- package/dist/lib/codex-cli/observability.d.ts +22 -0
- package/dist/lib/codex-cli/observability.d.ts.map +1 -0
- package/dist/lib/codex-cli/observability.js +36 -0
- package/dist/lib/codex-cli/observability.js.map +1 -0
- package/dist/lib/codex-cli/state.d.ts +86 -0
- package/dist/lib/codex-cli/state.d.ts.map +1 -0
- package/dist/lib/codex-cli/state.js +470 -0
- package/dist/lib/codex-cli/state.js.map +1 -0
- package/dist/lib/codex-cli/sync.d.ts +27 -0
- package/dist/lib/codex-cli/sync.d.ts.map +1 -0
- package/dist/lib/codex-cli/sync.js +325 -0
- package/dist/lib/codex-cli/sync.js.map +1 -0
- package/dist/lib/codex-cli/writer.d.ts +12 -0
- package/dist/lib/codex-cli/writer.d.ts.map +1 -0
- package/dist/lib/codex-cli/writer.js +388 -0
- package/dist/lib/codex-cli/writer.js.map +1 -0
- package/dist/lib/codex-manager.d.ts +2 -0
- package/dist/lib/codex-manager.d.ts.map +1 -0
- package/dist/lib/codex-manager.js +4841 -0
- package/dist/lib/codex-manager.js.map +1 -0
- package/dist/lib/config.d.ts +269 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +789 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/constants.d.ts +78 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +78 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/context-overflow.d.ts +27 -0
- package/dist/lib/context-overflow.d.ts.map +1 -0
- package/dist/lib/context-overflow.js +124 -0
- package/dist/lib/context-overflow.js.map +1 -0
- package/dist/lib/dashboard-settings.d.ts +90 -0
- package/dist/lib/dashboard-settings.d.ts.map +1 -0
- package/dist/lib/dashboard-settings.js +327 -0
- package/dist/lib/dashboard-settings.js.map +1 -0
- package/dist/lib/entitlement-cache.d.ts +41 -0
- package/dist/lib/entitlement-cache.d.ts.map +1 -0
- package/dist/lib/entitlement-cache.js +137 -0
- package/dist/lib/entitlement-cache.js.map +1 -0
- package/dist/lib/errors.d.ts +113 -0
- package/dist/lib/errors.d.ts.map +1 -0
- package/dist/lib/errors.js +103 -0
- package/dist/lib/errors.js.map +1 -0
- package/dist/lib/forecast.d.ts +42 -0
- package/dist/lib/forecast.d.ts.map +1 -0
- package/dist/lib/forecast.js +256 -0
- package/dist/lib/forecast.js.map +1 -0
- package/dist/lib/health.d.ts +33 -0
- package/dist/lib/health.d.ts.map +1 -0
- package/dist/lib/health.js +70 -0
- package/dist/lib/health.js.map +1 -0
- package/dist/lib/index.d.ts +32 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +32 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/live-account-sync.d.ts +39 -0
- package/dist/lib/live-account-sync.d.ts.map +1 -0
- package/dist/lib/live-account-sync.js +196 -0
- package/dist/lib/live-account-sync.js.map +1 -0
- package/dist/lib/logger.d.ts +40 -0
- package/dist/lib/logger.d.ts.map +1 -0
- package/dist/lib/logger.js +364 -0
- package/dist/lib/logger.js.map +1 -0
- package/dist/lib/oauth-success.html +338 -0
- package/dist/lib/parallel-probe.d.ts +28 -0
- package/dist/lib/parallel-probe.d.ts.map +1 -0
- package/dist/lib/parallel-probe.js +97 -0
- package/dist/lib/parallel-probe.js.map +1 -0
- package/dist/lib/preemptive-quota-scheduler.d.ts +53 -0
- package/dist/lib/preemptive-quota-scheduler.d.ts.map +1 -0
- package/dist/lib/preemptive-quota-scheduler.js +220 -0
- package/dist/lib/preemptive-quota-scheduler.js.map +1 -0
- package/dist/lib/proactive-refresh.d.ts +66 -0
- package/dist/lib/proactive-refresh.d.ts.map +1 -0
- package/dist/lib/proactive-refresh.js +143 -0
- package/dist/lib/proactive-refresh.js.map +1 -0
- package/dist/lib/prompts/codex-opencode-bridge.d.ts +19 -0
- package/dist/lib/prompts/codex-opencode-bridge.d.ts.map +1 -0
- package/dist/lib/prompts/codex-opencode-bridge.js +169 -0
- package/dist/lib/prompts/codex-opencode-bridge.js.map +1 -0
- package/dist/lib/prompts/codex.d.ts +41 -0
- package/dist/lib/prompts/codex.d.ts.map +1 -0
- package/dist/lib/prompts/codex.js +383 -0
- package/dist/lib/prompts/codex.js.map +1 -0
- package/dist/lib/prompts/opencode-codex.d.ts +25 -0
- package/dist/lib/prompts/opencode-codex.d.ts.map +1 -0
- package/dist/lib/prompts/opencode-codex.js +270 -0
- package/dist/lib/prompts/opencode-codex.js.map +1 -0
- package/dist/lib/quota-cache.d.ts +68 -0
- package/dist/lib/quota-cache.d.ts.map +1 -0
- package/dist/lib/quota-cache.js +224 -0
- package/dist/lib/quota-cache.js.map +1 -0
- package/dist/lib/quota-probe.d.ts +49 -0
- package/dist/lib/quota-probe.d.ts.map +1 -0
- package/dist/lib/quota-probe.js +368 -0
- package/dist/lib/quota-probe.js.map +1 -0
- package/dist/lib/recovery/constants.d.ts +12 -0
- package/dist/lib/recovery/constants.d.ts.map +1 -0
- package/dist/lib/recovery/constants.js +31 -0
- package/dist/lib/recovery/constants.js.map +1 -0
- package/dist/lib/recovery/index.d.ts +12 -0
- package/dist/lib/recovery/index.d.ts.map +1 -0
- package/dist/lib/recovery/index.js +12 -0
- package/dist/lib/recovery/index.js.map +1 -0
- package/dist/lib/recovery/storage.d.ts +24 -0
- package/dist/lib/recovery/storage.d.ts.map +1 -0
- package/dist/lib/recovery/storage.js +362 -0
- package/dist/lib/recovery/storage.js.map +1 -0
- package/dist/lib/recovery/types.d.ts +116 -0
- package/dist/lib/recovery/types.d.ts.map +1 -0
- package/dist/lib/recovery/types.js +7 -0
- package/dist/lib/recovery/types.js.map +1 -0
- package/dist/lib/recovery.d.ts +31 -0
- package/dist/lib/recovery.d.ts.map +1 -0
- package/dist/lib/recovery.js +313 -0
- package/dist/lib/recovery.js.map +1 -0
- package/dist/lib/refresh-guardian.d.ts +31 -0
- package/dist/lib/refresh-guardian.d.ts.map +1 -0
- package/dist/lib/refresh-guardian.js +151 -0
- package/dist/lib/refresh-guardian.js.map +1 -0
- package/dist/lib/refresh-lease.d.ts +37 -0
- package/dist/lib/refresh-lease.d.ts.map +1 -0
- package/dist/lib/refresh-lease.js +335 -0
- package/dist/lib/refresh-lease.js.map +1 -0
- package/dist/lib/refresh-queue.d.ts +117 -0
- package/dist/lib/refresh-queue.d.ts.map +1 -0
- package/dist/lib/refresh-queue.js +297 -0
- package/dist/lib/refresh-queue.js.map +1 -0
- package/dist/lib/request/failure-policy.d.ts +42 -0
- package/dist/lib/request/failure-policy.d.ts.map +1 -0
- package/dist/lib/request/failure-policy.js +133 -0
- package/dist/lib/request/failure-policy.js.map +1 -0
- package/dist/lib/request/fetch-helpers.d.ts +152 -0
- package/dist/lib/request/fetch-helpers.d.ts.map +1 -0
- package/dist/lib/request/fetch-helpers.js +704 -0
- package/dist/lib/request/fetch-helpers.js.map +1 -0
- package/dist/lib/request/helpers/input-utils.d.ts +7 -0
- package/dist/lib/request/helpers/input-utils.d.ts.map +1 -0
- package/dist/lib/request/helpers/input-utils.js +214 -0
- package/dist/lib/request/helpers/input-utils.js.map +1 -0
- package/dist/lib/request/helpers/model-map.d.ts +28 -0
- package/dist/lib/request/helpers/model-map.d.ts.map +1 -0
- package/dist/lib/request/helpers/model-map.js +133 -0
- package/dist/lib/request/helpers/model-map.js.map +1 -0
- package/dist/lib/request/helpers/tool-utils.d.ts +29 -0
- package/dist/lib/request/helpers/tool-utils.d.ts.map +1 -0
- package/dist/lib/request/helpers/tool-utils.js +117 -0
- package/dist/lib/request/helpers/tool-utils.js.map +1 -0
- package/dist/lib/request/rate-limit-backoff.d.ts +17 -0
- package/dist/lib/request/rate-limit-backoff.d.ts.map +1 -0
- package/dist/lib/request/rate-limit-backoff.js +83 -0
- package/dist/lib/request/rate-limit-backoff.js.map +1 -0
- package/dist/lib/request/request-transformer.d.ts +107 -0
- package/dist/lib/request/request-transformer.d.ts.map +1 -0
- package/dist/lib/request/request-transformer.js +814 -0
- package/dist/lib/request/request-transformer.js.map +1 -0
- package/dist/lib/request/response-handler.d.ts +23 -0
- package/dist/lib/request/response-handler.d.ts.map +1 -0
- package/dist/lib/request/response-handler.js +155 -0
- package/dist/lib/request/response-handler.js.map +1 -0
- package/dist/lib/request/stream-failover.d.ts +21 -0
- package/dist/lib/request/stream-failover.d.ts.map +1 -0
- package/dist/lib/request/stream-failover.js +204 -0
- package/dist/lib/request/stream-failover.js.map +1 -0
- package/dist/lib/rotation.d.ts +146 -0
- package/dist/lib/rotation.d.ts.map +1 -0
- package/dist/lib/rotation.js +321 -0
- package/dist/lib/rotation.js.map +1 -0
- package/dist/lib/runtime-paths.d.ts +58 -0
- package/dist/lib/runtime-paths.d.ts.map +1 -0
- package/dist/lib/runtime-paths.js +164 -0
- package/dist/lib/runtime-paths.js.map +1 -0
- package/dist/lib/schemas.d.ts +435 -0
- package/dist/lib/schemas.d.ts.map +1 -0
- package/dist/lib/schemas.js +268 -0
- package/dist/lib/schemas.js.map +1 -0
- package/dist/lib/session-affinity.d.ts +23 -0
- package/dist/lib/session-affinity.d.ts.map +1 -0
- package/dist/lib/session-affinity.js +127 -0
- package/dist/lib/session-affinity.js.map +1 -0
- package/dist/lib/shutdown.d.ts +7 -0
- package/dist/lib/shutdown.d.ts.map +1 -0
- package/dist/lib/shutdown.js +43 -0
- package/dist/lib/shutdown.js.map +1 -0
- package/dist/lib/storage/migrations.d.ts +59 -0
- package/dist/lib/storage/migrations.d.ts.map +1 -0
- package/dist/lib/storage/migrations.js +41 -0
- package/dist/lib/storage/migrations.js.map +1 -0
- package/dist/lib/storage/paths.d.ts +51 -0
- package/dist/lib/storage/paths.d.ts.map +1 -0
- package/dist/lib/storage/paths.js +152 -0
- package/dist/lib/storage/paths.js.map +1 -0
- package/dist/lib/storage.d.ts +106 -0
- package/dist/lib/storage.d.ts.map +1 -0
- package/dist/lib/storage.js +896 -0
- package/dist/lib/storage.js.map +1 -0
- package/dist/lib/table-formatter.d.ts +32 -0
- package/dist/lib/table-formatter.d.ts.map +1 -0
- package/dist/lib/table-formatter.js +44 -0
- package/dist/lib/table-formatter.js.map +1 -0
- package/dist/lib/tools/hashline-tools.d.ts +51 -0
- package/dist/lib/tools/hashline-tools.d.ts.map +1 -0
- package/dist/lib/tools/hashline-tools.js +456 -0
- package/dist/lib/tools/hashline-tools.js.map +1 -0
- package/dist/lib/types.d.ts +130 -0
- package/dist/lib/types.d.ts.map +1 -0
- package/dist/lib/types.js +2 -0
- package/dist/lib/types.js.map +1 -0
- package/dist/lib/ui/ansi.d.ts +40 -0
- package/dist/lib/ui/ansi.d.ts.map +1 -0
- package/dist/lib/ui/ansi.js +68 -0
- package/dist/lib/ui/ansi.js.map +1 -0
- package/dist/lib/ui/auth-menu.d.ts +76 -0
- package/dist/lib/ui/auth-menu.d.ts.map +1 -0
- package/dist/lib/ui/auth-menu.js +590 -0
- package/dist/lib/ui/auth-menu.js.map +1 -0
- package/dist/lib/ui/confirm.d.ts +11 -0
- package/dist/lib/ui/confirm.d.ts.map +1 -0
- package/dist/lib/ui/confirm.js +29 -0
- package/dist/lib/ui/confirm.js.map +1 -0
- package/dist/lib/ui/copy.d.ts +123 -0
- package/dist/lib/ui/copy.d.ts.map +1 -0
- package/dist/lib/ui/copy.js +127 -0
- package/dist/lib/ui/copy.js.map +1 -0
- package/dist/lib/ui/format.d.ts +62 -0
- package/dist/lib/ui/format.d.ts.map +1 -0
- package/dist/lib/ui/format.js +205 -0
- package/dist/lib/ui/format.js.map +1 -0
- package/dist/lib/ui/runtime.d.ts +43 -0
- package/dist/lib/ui/runtime.d.ts.map +1 -0
- package/dist/lib/ui/runtime.js +69 -0
- package/dist/lib/ui/runtime.js.map +1 -0
- package/dist/lib/ui/select.d.ts +60 -0
- package/dist/lib/ui/select.d.ts.map +1 -0
- package/dist/lib/ui/select.js +467 -0
- package/dist/lib/ui/select.js.map +1 -0
- package/dist/lib/ui/theme.d.ts +56 -0
- package/dist/lib/ui/theme.d.ts.map +1 -0
- package/dist/lib/ui/theme.js +186 -0
- package/dist/lib/ui/theme.js.map +1 -0
- package/dist/lib/unified-settings.d.ts +71 -0
- package/dist/lib/unified-settings.d.ts.map +1 -0
- package/dist/lib/unified-settings.js +299 -0
- package/dist/lib/unified-settings.js.map +1 -0
- package/dist/lib/utils.d.ts +29 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +54 -0
- package/dist/lib/utils.js.map +1 -0
- package/package.json +115 -0
- package/scripts/audit-dev-allowlist.js +128 -0
- package/scripts/bench-format/hashline-v2.mjs +642 -0
- package/scripts/bench-format/models.mjs +105 -0
- package/scripts/bench-format/opencode.mjs +205 -0
- package/scripts/bench-format/render.mjs +496 -0
- package/scripts/bench-format/stats.mjs +54 -0
- package/scripts/bench-format/tasks.mjs +151 -0
- package/scripts/benchmark-edit-formats.mjs +1161 -0
- package/scripts/benchmark-render-dashboard.mjs +49 -0
- package/scripts/codex-multi-auth.js +6 -0
- package/scripts/codex-routing.js +34 -0
- package/scripts/codex.js +122 -0
- package/scripts/copy-oauth-success.js +37 -0
- package/scripts/install-opencode-codex-auth.js +193 -0
- package/scripts/test-all-models.sh +7 -0
- package/scripts/test-model-matrix.js +424 -0
- package/scripts/validate-model-map.sh +7 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constants used throughout the plugin
|
|
3
|
+
* Centralized for easy maintenance and configuration
|
|
4
|
+
*/
|
|
5
|
+
/** Plugin identifier for logging and error messages */
|
|
6
|
+
export declare const PLUGIN_NAME = "codex-multi-auth";
|
|
7
|
+
/** Base URL for ChatGPT backend API */
|
|
8
|
+
export declare const CODEX_BASE_URL = "https://chatgpt.com/backend-api";
|
|
9
|
+
/** Dummy API key used for OpenAI SDK (actual auth via OAuth) */
|
|
10
|
+
export declare const DUMMY_API_KEY = "chatgpt-oauth";
|
|
11
|
+
/** Provider ID for UI display - shows under "OpenAI" in auth dropdown */
|
|
12
|
+
export declare const PROVIDER_ID = "openai";
|
|
13
|
+
/** HTTP Status Codes */
|
|
14
|
+
export declare const HTTP_STATUS: {
|
|
15
|
+
readonly BAD_REQUEST: 400;
|
|
16
|
+
readonly OK: 200;
|
|
17
|
+
readonly FORBIDDEN: 403;
|
|
18
|
+
readonly UNAUTHORIZED: 401;
|
|
19
|
+
readonly NOT_FOUND: 404;
|
|
20
|
+
readonly TOO_MANY_REQUESTS: 429;
|
|
21
|
+
};
|
|
22
|
+
/** OpenAI-specific headers */
|
|
23
|
+
export declare const OPENAI_HEADERS: {
|
|
24
|
+
readonly BETA: "OpenAI-Beta";
|
|
25
|
+
readonly ACCOUNT_ID: "chatgpt-account-id";
|
|
26
|
+
readonly ORIGINATOR: "originator";
|
|
27
|
+
readonly SESSION_ID: "session_id";
|
|
28
|
+
readonly CONVERSATION_ID: "conversation_id";
|
|
29
|
+
};
|
|
30
|
+
/** OpenAI-specific header values */
|
|
31
|
+
export declare const OPENAI_HEADER_VALUES: {
|
|
32
|
+
readonly BETA_RESPONSES: "responses=experimental";
|
|
33
|
+
readonly ORIGINATOR_CODEX: "codex_cli_rs";
|
|
34
|
+
};
|
|
35
|
+
/** URL path segments */
|
|
36
|
+
export declare const URL_PATHS: {
|
|
37
|
+
readonly RESPONSES: "/responses";
|
|
38
|
+
readonly CODEX_RESPONSES: "/codex/responses";
|
|
39
|
+
};
|
|
40
|
+
/** JWT claim path for ChatGPT account ID */
|
|
41
|
+
export declare const JWT_CLAIM_PATH: "https://api.openai.com/auth";
|
|
42
|
+
/** Error messages */
|
|
43
|
+
export declare const ERROR_MESSAGES: {
|
|
44
|
+
readonly NO_ACCOUNT_ID: "Failed to extract accountId from token";
|
|
45
|
+
readonly TOKEN_REFRESH_FAILED: "Failed to refresh token, authentication required";
|
|
46
|
+
readonly REQUEST_PARSE_ERROR: "Error parsing request";
|
|
47
|
+
};
|
|
48
|
+
/** Log stages for request logging */
|
|
49
|
+
export declare const LOG_STAGES: {
|
|
50
|
+
readonly BEFORE_TRANSFORM: "before-transform";
|
|
51
|
+
readonly AFTER_TRANSFORM: "after-transform";
|
|
52
|
+
readonly RESPONSE: "response";
|
|
53
|
+
readonly ERROR_RESPONSE: "error-response";
|
|
54
|
+
};
|
|
55
|
+
/** Platform-specific browser opener commands */
|
|
56
|
+
export declare const PLATFORM_OPENERS: {
|
|
57
|
+
readonly darwin: "open";
|
|
58
|
+
readonly win32: "start";
|
|
59
|
+
readonly linux: "xdg-open";
|
|
60
|
+
};
|
|
61
|
+
/** OAuth authorization labels */
|
|
62
|
+
export declare const AUTH_LABELS: {
|
|
63
|
+
readonly OAUTH: "ChatGPT Plus/Pro MULTI (Codex Subscription)";
|
|
64
|
+
readonly OAUTH_MANUAL: "ChatGPT Plus/Pro MULTI (Manual URL Paste)";
|
|
65
|
+
readonly API_KEY: "Manually enter API Key MULTI";
|
|
66
|
+
readonly INSTRUCTIONS: "A browser window should open. If it doesn't, copy the URL and open it manually.";
|
|
67
|
+
readonly INSTRUCTIONS_MANUAL: "After logging in, copy the full redirect URL and paste it here.";
|
|
68
|
+
};
|
|
69
|
+
/** Multi-account configuration */
|
|
70
|
+
export declare const ACCOUNT_LIMITS: {
|
|
71
|
+
/** Maximum number of OAuth accounts that can be registered */
|
|
72
|
+
readonly MAX_ACCOUNTS: 20;
|
|
73
|
+
/** Cooldown period (ms) after auth failure before retrying account */
|
|
74
|
+
readonly AUTH_FAILURE_COOLDOWN_MS: 30000;
|
|
75
|
+
/** Number of consecutive auth failures before auto-removing account */
|
|
76
|
+
readonly MAX_AUTH_FAILURES_BEFORE_REMOVAL: 3;
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,uDAAuD;AACvD,eAAO,MAAM,WAAW,qBAAqB,CAAC;AAE9C,uCAAuC;AACvC,eAAO,MAAM,cAAc,oCAAoC,CAAC;AAEhE,gEAAgE;AAChE,eAAO,MAAM,aAAa,kBAAkB,CAAC;AAE7C,yEAAyE;AACzE,eAAO,MAAM,WAAW,WAAW,CAAC;AAEpC,wBAAwB;AACxB,eAAO,MAAM,WAAW;;;;;;;CAOd,CAAC;AAEX,8BAA8B;AAC9B,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AAEX,oCAAoC;AACpC,eAAO,MAAM,oBAAoB;;;CAGvB,CAAC;AAEX,wBAAwB;AACxB,eAAO,MAAM,SAAS;;;CAGZ,CAAC;AAEX,4CAA4C;AAC5C,eAAO,MAAM,cAAc,EAAG,6BAAsC,CAAC;AAErE,qBAAqB;AACrB,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AAEX,qCAAqC;AACrC,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX,gDAAgD;AAChD,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,iCAAiC;AACjC,eAAO,MAAM,WAAW;;;;;;CAQd,CAAC;AAEX,kCAAkC;AAClC,eAAO,MAAM,cAAc;IAC1B,8DAA8D;;IAE9D,sEAAsE;;IAEtE,uEAAuE;;CAE9D,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constants used throughout the plugin
|
|
3
|
+
* Centralized for easy maintenance and configuration
|
|
4
|
+
*/
|
|
5
|
+
/** Plugin identifier for logging and error messages */
|
|
6
|
+
export const PLUGIN_NAME = "codex-multi-auth";
|
|
7
|
+
/** Base URL for ChatGPT backend API */
|
|
8
|
+
export const CODEX_BASE_URL = "https://chatgpt.com/backend-api";
|
|
9
|
+
/** Dummy API key used for OpenAI SDK (actual auth via OAuth) */
|
|
10
|
+
export const DUMMY_API_KEY = "chatgpt-oauth";
|
|
11
|
+
/** Provider ID for UI display - shows under "OpenAI" in auth dropdown */
|
|
12
|
+
export const PROVIDER_ID = "openai";
|
|
13
|
+
/** HTTP Status Codes */
|
|
14
|
+
export const HTTP_STATUS = {
|
|
15
|
+
BAD_REQUEST: 400,
|
|
16
|
+
OK: 200,
|
|
17
|
+
FORBIDDEN: 403,
|
|
18
|
+
UNAUTHORIZED: 401,
|
|
19
|
+
NOT_FOUND: 404,
|
|
20
|
+
TOO_MANY_REQUESTS: 429,
|
|
21
|
+
};
|
|
22
|
+
/** OpenAI-specific headers */
|
|
23
|
+
export const OPENAI_HEADERS = {
|
|
24
|
+
BETA: "OpenAI-Beta",
|
|
25
|
+
ACCOUNT_ID: "chatgpt-account-id",
|
|
26
|
+
ORIGINATOR: "originator",
|
|
27
|
+
SESSION_ID: "session_id",
|
|
28
|
+
CONVERSATION_ID: "conversation_id",
|
|
29
|
+
};
|
|
30
|
+
/** OpenAI-specific header values */
|
|
31
|
+
export const OPENAI_HEADER_VALUES = {
|
|
32
|
+
BETA_RESPONSES: "responses=experimental",
|
|
33
|
+
ORIGINATOR_CODEX: "codex_cli_rs",
|
|
34
|
+
};
|
|
35
|
+
/** URL path segments */
|
|
36
|
+
export const URL_PATHS = {
|
|
37
|
+
RESPONSES: "/responses",
|
|
38
|
+
CODEX_RESPONSES: "/codex/responses",
|
|
39
|
+
};
|
|
40
|
+
/** JWT claim path for ChatGPT account ID */
|
|
41
|
+
export const JWT_CLAIM_PATH = "https://api.openai.com/auth";
|
|
42
|
+
/** Error messages */
|
|
43
|
+
export const ERROR_MESSAGES = {
|
|
44
|
+
NO_ACCOUNT_ID: "Failed to extract accountId from token",
|
|
45
|
+
TOKEN_REFRESH_FAILED: "Failed to refresh token, authentication required",
|
|
46
|
+
REQUEST_PARSE_ERROR: "Error parsing request",
|
|
47
|
+
};
|
|
48
|
+
/** Log stages for request logging */
|
|
49
|
+
export const LOG_STAGES = {
|
|
50
|
+
BEFORE_TRANSFORM: "before-transform",
|
|
51
|
+
AFTER_TRANSFORM: "after-transform",
|
|
52
|
+
RESPONSE: "response",
|
|
53
|
+
ERROR_RESPONSE: "error-response",
|
|
54
|
+
};
|
|
55
|
+
/** Platform-specific browser opener commands */
|
|
56
|
+
export const PLATFORM_OPENERS = {
|
|
57
|
+
darwin: "open",
|
|
58
|
+
win32: "start",
|
|
59
|
+
linux: "xdg-open",
|
|
60
|
+
};
|
|
61
|
+
/** OAuth authorization labels */
|
|
62
|
+
export const AUTH_LABELS = {
|
|
63
|
+
OAUTH: "ChatGPT Plus/Pro MULTI (Codex Subscription)",
|
|
64
|
+
OAUTH_MANUAL: "ChatGPT Plus/Pro MULTI (Manual URL Paste)",
|
|
65
|
+
API_KEY: "Manually enter API Key MULTI",
|
|
66
|
+
INSTRUCTIONS: "A browser window should open. If it doesn't, copy the URL and open it manually.",
|
|
67
|
+
INSTRUCTIONS_MANUAL: "After logging in, copy the full redirect URL and paste it here.",
|
|
68
|
+
};
|
|
69
|
+
/** Multi-account configuration */
|
|
70
|
+
export const ACCOUNT_LIMITS = {
|
|
71
|
+
/** Maximum number of OAuth accounts that can be registered */
|
|
72
|
+
MAX_ACCOUNTS: 20,
|
|
73
|
+
/** Cooldown period (ms) after auth failure before retrying account */
|
|
74
|
+
AUTH_FAILURE_COOLDOWN_MS: 30_000,
|
|
75
|
+
/** Number of consecutive auth failures before auto-removing account */
|
|
76
|
+
MAX_AUTH_FAILURES_BEFORE_REMOVAL: 3,
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,uDAAuD;AACvD,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAE9C,uCAAuC;AACvC,MAAM,CAAC,MAAM,cAAc,GAAG,iCAAiC,CAAC;AAEhE,gEAAgE;AAChE,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;AAE7C,yEAAyE;AACzE,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC;AAEpC,wBAAwB;AACxB,MAAM,CAAC,MAAM,WAAW,GAAG;IAC1B,WAAW,EAAE,GAAG;IAChB,EAAE,EAAE,GAAG;IACP,SAAS,EAAE,GAAG;IACd,YAAY,EAAE,GAAG;IACjB,SAAS,EAAE,GAAG;IACd,iBAAiB,EAAE,GAAG;CACb,CAAC;AAEX,8BAA8B;AAC9B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,UAAU,EAAE,oBAAoB;IAChC,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,eAAe,EAAE,iBAAiB;CACzB,CAAC;AAEX,oCAAoC;AACpC,MAAM,CAAC,MAAM,oBAAoB,GAAG;IACnC,cAAc,EAAE,wBAAwB;IACxC,gBAAgB,EAAE,cAAc;CACvB,CAAC;AAEX,wBAAwB;AACxB,MAAM,CAAC,MAAM,SAAS,GAAG;IACxB,SAAS,EAAE,YAAY;IACvB,eAAe,EAAE,kBAAkB;CAC1B,CAAC;AAEX,4CAA4C;AAC5C,MAAM,CAAC,MAAM,cAAc,GAAG,6BAAsC,CAAC;AAErE,qBAAqB;AACrB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,aAAa,EAAE,wCAAwC;IACvD,oBAAoB,EAAE,kDAAkD;IACxE,mBAAmB,EAAE,uBAAuB;CACnC,CAAC;AAEX,qCAAqC;AACrC,MAAM,CAAC,MAAM,UAAU,GAAG;IACzB,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,gBAAgB;CACvB,CAAC;AAEX,gDAAgD;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC/B,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,UAAU;CACR,CAAC;AAEX,iCAAiC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG;IAC1B,KAAK,EAAE,6CAA6C;IACpD,YAAY,EAAE,2CAA2C;IACzD,OAAO,EAAE,8BAA8B;IACvC,YAAY,EACX,iFAAiF;IAClF,mBAAmB,EAClB,iEAAiE;CACzD,CAAC;AAEX,kCAAkC;AAClC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,8DAA8D;IAC9D,YAAY,EAAE,EAAE;IAChB,sEAAsE;IACtE,wBAAwB,EAAE,MAAM;IAChC,uEAAuE;IACvE,gCAAgC,EAAE,CAAC;CAC1B,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context Overflow Handler
|
|
3
|
+
*
|
|
4
|
+
* Handles "Prompt too long" / context length exceeded errors by returning
|
|
5
|
+
* a synthetic SSE response that advises the user to use /compact or /clear.
|
|
6
|
+
* This prevents the OpenCode session from getting locked on 400 errors.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Check if an error body indicates context overflow
|
|
10
|
+
*/
|
|
11
|
+
export declare function isContextOverflowError(status: number, bodyText: string): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Creates a synthetic SSE response for context overflow errors.
|
|
14
|
+
* This returns a 200 OK with the error message as assistant text,
|
|
15
|
+
* preventing the session from getting locked.
|
|
16
|
+
*/
|
|
17
|
+
export declare function createContextOverflowResponse(model?: string): Response;
|
|
18
|
+
/**
|
|
19
|
+
* Check response for context overflow and return synthetic response if needed
|
|
20
|
+
*/
|
|
21
|
+
export declare function handleContextOverflow(response: Response, model?: string): Promise<{
|
|
22
|
+
handled: true;
|
|
23
|
+
response: Response;
|
|
24
|
+
} | {
|
|
25
|
+
handled: false;
|
|
26
|
+
}>;
|
|
27
|
+
//# sourceMappingURL=context-overflow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-overflow.d.ts","sourceRoot":"","sources":["../../lib/context-overflow.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAiBH;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAMhF;AAiBD;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,GAAE,MAAkB,GAAG,QAAQ,CAyDjF;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,QAAQ,EAClB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAA;CAAE,CAAC,CAmBrE"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context Overflow Handler
|
|
3
|
+
*
|
|
4
|
+
* Handles "Prompt too long" / context length exceeded errors by returning
|
|
5
|
+
* a synthetic SSE response that advises the user to use /compact or /clear.
|
|
6
|
+
* This prevents the OpenCode session from getting locked on 400 errors.
|
|
7
|
+
*/
|
|
8
|
+
import { logDebug } from "./logger.js";
|
|
9
|
+
/**
|
|
10
|
+
* Error patterns that indicate context overflow
|
|
11
|
+
*/
|
|
12
|
+
const CONTEXT_OVERFLOW_PATTERNS = [
|
|
13
|
+
"prompt is too long",
|
|
14
|
+
"prompt_too_long",
|
|
15
|
+
"context length exceeded",
|
|
16
|
+
"context_length_exceeded",
|
|
17
|
+
"maximum context length",
|
|
18
|
+
"token limit exceeded",
|
|
19
|
+
"too many tokens",
|
|
20
|
+
];
|
|
21
|
+
/**
|
|
22
|
+
* Check if an error body indicates context overflow
|
|
23
|
+
*/
|
|
24
|
+
export function isContextOverflowError(status, bodyText) {
|
|
25
|
+
if (status !== 400)
|
|
26
|
+
return false;
|
|
27
|
+
if (!bodyText)
|
|
28
|
+
return false;
|
|
29
|
+
const lowerBody = bodyText.toLowerCase();
|
|
30
|
+
return CONTEXT_OVERFLOW_PATTERNS.some(pattern => lowerBody.includes(pattern));
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The message shown to users when context overflow occurs
|
|
34
|
+
*/
|
|
35
|
+
const CONTEXT_OVERFLOW_MESSAGE = `[Plugin Notice] Context is too long for this model.
|
|
36
|
+
|
|
37
|
+
Please use one of these commands to reduce context size:
|
|
38
|
+
|
|
39
|
+
• **/compact** - Compress conversation history (recommended)
|
|
40
|
+
• **/clear** - Start fresh with empty context
|
|
41
|
+
• **/undo** - Remove recent messages
|
|
42
|
+
|
|
43
|
+
Then retry your request.
|
|
44
|
+
|
|
45
|
+
Alternatively, you can switch to a model with a larger context window.`;
|
|
46
|
+
/**
|
|
47
|
+
* Creates a synthetic SSE response for context overflow errors.
|
|
48
|
+
* This returns a 200 OK with the error message as assistant text,
|
|
49
|
+
* preventing the session from getting locked.
|
|
50
|
+
*/
|
|
51
|
+
export function createContextOverflowResponse(model = "unknown") {
|
|
52
|
+
const messageId = `msg_synthetic_overflow_${Date.now()}`;
|
|
53
|
+
const events = [];
|
|
54
|
+
// message_start
|
|
55
|
+
events.push(`event: message_start\ndata: ${JSON.stringify({
|
|
56
|
+
type: "message_start",
|
|
57
|
+
message: {
|
|
58
|
+
id: messageId,
|
|
59
|
+
type: "message",
|
|
60
|
+
role: "assistant",
|
|
61
|
+
content: [],
|
|
62
|
+
model,
|
|
63
|
+
usage: { input_tokens: 0, output_tokens: 0 },
|
|
64
|
+
},
|
|
65
|
+
})}\n\n`);
|
|
66
|
+
// content_block_start
|
|
67
|
+
events.push(`event: content_block_start\ndata: ${JSON.stringify({
|
|
68
|
+
type: "content_block_start",
|
|
69
|
+
index: 0,
|
|
70
|
+
content_block: { type: "text", text: "" },
|
|
71
|
+
})}\n\n`);
|
|
72
|
+
// content_block_delta (the actual message)
|
|
73
|
+
events.push(`event: content_block_delta\ndata: ${JSON.stringify({
|
|
74
|
+
type: "content_block_delta",
|
|
75
|
+
index: 0,
|
|
76
|
+
delta: { type: "text_delta", text: CONTEXT_OVERFLOW_MESSAGE },
|
|
77
|
+
})}\n\n`);
|
|
78
|
+
// content_block_stop
|
|
79
|
+
events.push(`event: content_block_stop\ndata: ${JSON.stringify({
|
|
80
|
+
type: "content_block_stop",
|
|
81
|
+
index: 0,
|
|
82
|
+
})}\n\n`);
|
|
83
|
+
// message_delta (end_turn)
|
|
84
|
+
events.push(`event: message_delta\ndata: ${JSON.stringify({
|
|
85
|
+
type: "message_delta",
|
|
86
|
+
delta: { stop_reason: "end_turn" },
|
|
87
|
+
usage: { output_tokens: 0 },
|
|
88
|
+
})}\n\n`);
|
|
89
|
+
// message_stop
|
|
90
|
+
events.push(`event: message_stop\ndata: ${JSON.stringify({
|
|
91
|
+
type: "message_stop",
|
|
92
|
+
})}\n\n`);
|
|
93
|
+
return new Response(events.join(""), {
|
|
94
|
+
status: 200,
|
|
95
|
+
headers: {
|
|
96
|
+
"Content-Type": "text/event-stream",
|
|
97
|
+
"X-Codex-Plugin-Synthetic": "true",
|
|
98
|
+
"X-Codex-Plugin-Error-Type": "context_overflow",
|
|
99
|
+
},
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Check response for context overflow and return synthetic response if needed
|
|
104
|
+
*/
|
|
105
|
+
export async function handleContextOverflow(response, model) {
|
|
106
|
+
if (response.status !== 400) {
|
|
107
|
+
return { handled: false };
|
|
108
|
+
}
|
|
109
|
+
try {
|
|
110
|
+
const bodyText = await response.clone().text();
|
|
111
|
+
if (isContextOverflowError(response.status, bodyText)) {
|
|
112
|
+
logDebug("Context overflow detected, returning synthetic response");
|
|
113
|
+
return {
|
|
114
|
+
handled: true,
|
|
115
|
+
response: createContextOverflowResponse(model),
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
catch {
|
|
120
|
+
// Ignore read errors
|
|
121
|
+
}
|
|
122
|
+
return { handled: false };
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=context-overflow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-overflow.js","sourceRoot":"","sources":["../../lib/context-overflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
export type DashboardThemePreset = "green" | "blue";
|
|
2
|
+
export type DashboardAccentColor = "green" | "cyan" | "blue" | "yellow";
|
|
3
|
+
export type DashboardAccountSortMode = "manual" | "ready-first";
|
|
4
|
+
export type DashboardLayoutMode = "compact-details" | "expanded-rows";
|
|
5
|
+
export type DashboardFocusStyle = "row-invert";
|
|
6
|
+
export interface DashboardDisplaySettings {
|
|
7
|
+
showPerAccountRows: boolean;
|
|
8
|
+
showQuotaDetails: boolean;
|
|
9
|
+
showForecastReasons: boolean;
|
|
10
|
+
showRecommendations: boolean;
|
|
11
|
+
showLiveProbeNotes: boolean;
|
|
12
|
+
actionAutoReturnMs?: number;
|
|
13
|
+
actionPauseOnKey?: boolean;
|
|
14
|
+
menuAutoFetchLimits?: boolean;
|
|
15
|
+
menuSortEnabled?: boolean;
|
|
16
|
+
menuSortMode?: DashboardAccountSortMode;
|
|
17
|
+
menuSortPinCurrent?: boolean;
|
|
18
|
+
menuSortQuickSwitchVisibleRow?: boolean;
|
|
19
|
+
uiThemePreset?: DashboardThemePreset;
|
|
20
|
+
uiAccentColor?: DashboardAccentColor;
|
|
21
|
+
menuShowStatusBadge?: boolean;
|
|
22
|
+
menuShowCurrentBadge?: boolean;
|
|
23
|
+
menuShowLastUsed?: boolean;
|
|
24
|
+
menuShowQuotaSummary?: boolean;
|
|
25
|
+
menuShowQuotaCooldown?: boolean;
|
|
26
|
+
menuShowFetchStatus?: boolean;
|
|
27
|
+
menuShowDetailsForUnselectedRows?: boolean;
|
|
28
|
+
menuLayoutMode?: DashboardLayoutMode;
|
|
29
|
+
menuQuotaTtlMs?: number;
|
|
30
|
+
menuFocusStyle?: DashboardFocusStyle;
|
|
31
|
+
menuHighlightCurrentRow?: boolean;
|
|
32
|
+
menuStatuslineFields?: DashboardStatuslineField[];
|
|
33
|
+
}
|
|
34
|
+
export type DashboardStatuslineField = "last-used" | "limits" | "status";
|
|
35
|
+
export declare const DASHBOARD_DISPLAY_SETTINGS_VERSION: 1;
|
|
36
|
+
export declare const DEFAULT_DASHBOARD_DISPLAY_SETTINGS: DashboardDisplaySettings;
|
|
37
|
+
/**
|
|
38
|
+
* Filesystem path to the unified dashboard settings file.
|
|
39
|
+
*
|
|
40
|
+
* This path is the canonical location used by the load/save helpers. Callers should assume the file may be concurrently modified by other processes and use atomic write strategies when persisting. On Windows the returned path may contain backslashes; redact any sensitive tokens before logging or external reporting.
|
|
41
|
+
*
|
|
42
|
+
* @returns The absolute path to the unified dashboard settings file.
|
|
43
|
+
*/
|
|
44
|
+
export declare function getDashboardSettingsPath(): string;
|
|
45
|
+
/**
|
|
46
|
+
* Normalize an untrusted value into a complete, validated DashboardDisplaySettings object.
|
|
47
|
+
*
|
|
48
|
+
* Produces a settings object where missing or invalid fields are replaced with sensible defaults,
|
|
49
|
+
* layout-derived fields are resolved, numeric values are clamped to allowed ranges, and enumerations
|
|
50
|
+
* are coerced to allowed values.
|
|
51
|
+
*
|
|
52
|
+
* Concurrency: pure and deterministic; safe to call concurrently. This function performs no I/O,
|
|
53
|
+
* so Windows filesystem semantics do not apply. It does not perform token redaction or any
|
|
54
|
+
* sensitive-data filtering.
|
|
55
|
+
*
|
|
56
|
+
* @param value - The input to normalize (may be any type, typically parsed JSON or a partial settings record)
|
|
57
|
+
* @returns A DashboardDisplaySettings object with all fields validated and defaulted
|
|
58
|
+
*/
|
|
59
|
+
export declare function normalizeDashboardDisplaySettings(value: unknown): DashboardDisplaySettings;
|
|
60
|
+
/**
|
|
61
|
+
* Load and return the normalized dashboard display settings, migrating legacy settings when present.
|
|
62
|
+
*
|
|
63
|
+
* Attempts to read unified settings first; if absent, loads legacy dashboard-settings.json, normalizes
|
|
64
|
+
* its contents, and tries to migrate the normalized result to the unified settings store. On any read,
|
|
65
|
+
* parse, or validation error, or if no settings are found, returns the built-in defaults.
|
|
66
|
+
*
|
|
67
|
+
* @returns The normalized DashboardDisplaySettings to apply.
|
|
68
|
+
*
|
|
69
|
+
* @remarks
|
|
70
|
+
* - Concurrency: callers may race with other processes performing migration or writes; callers should
|
|
71
|
+
* not assume exclusive access and should tolerate eventual consistency.
|
|
72
|
+
* - Filesystem (Windows): legacy-path checks use case-insensitive filesystem semantics implicitly; ensure
|
|
73
|
+
* any external tooling accounts for that when placing or removing legacy files.
|
|
74
|
+
* - Token handling: persisted settings are stored as-is; remove or redact any sensitive tokens from
|
|
75
|
+
* settings before calling this function if they must not be written unmodified to persistent stores.
|
|
76
|
+
*/
|
|
77
|
+
export declare function loadDashboardDisplaySettings(): Promise<DashboardDisplaySettings>;
|
|
78
|
+
/**
|
|
79
|
+
* Persist normalized dashboard display settings to the unified settings store.
|
|
80
|
+
*
|
|
81
|
+
* Normalizes `settings` and writes the resulting record via the unified settings API.
|
|
82
|
+
* Concurrent callers may race and overwrite each other; callers should serialize updates
|
|
83
|
+
* when strong write ordering is required. On Windows, underlying filesystem writes may
|
|
84
|
+
* not be atomic across processes. Any sensitive tokens or secrets present in settings
|
|
85
|
+
* are written as provided; callers must remove or redact sensitive values before saving.
|
|
86
|
+
*
|
|
87
|
+
* @param settings - The dashboard display settings to normalize and save
|
|
88
|
+
*/
|
|
89
|
+
export declare function saveDashboardDisplaySettings(settings: DashboardDisplaySettings): Promise<void>;
|
|
90
|
+
//# sourceMappingURL=dashboard-settings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard-settings.d.ts","sourceRoot":"","sources":["../../lib/dashboard-settings.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,MAAM,CAAC;AACpD,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AACxE,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,aAAa,CAAC;AAChE,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GAAG,eAAe,CAAC;AACtE,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAE/C,MAAM,WAAW,wBAAwB;IACxC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACxC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gCAAgC,CAAC,EAAE,OAAO,CAAC;IAC3C,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,oBAAoB,CAAC,EAAE,wBAAwB,EAAE,CAAC;CAClD;AAED,MAAM,MAAM,wBAAwB,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEzE,eAAO,MAAM,kCAAkC,EAAG,CAAU,CAAC;AAE7D,eAAO,MAAM,kCAAkC,EAAE,wBA2BhD,CAAC;AA4LF;;;;;;GAMG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iCAAiC,CAChD,KAAK,EAAE,OAAO,GACZ,wBAAwB,CAoG1B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,wBAAwB,CAAC,CA+BtF;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,4BAA4B,CACjD,QAAQ,EAAE,wBAAwB,GAChC,OAAO,CAAC,IAAI,CAAC,CAGf"}
|