@kaitranntt/ccs 8.4.0 → 8.5.0-dev.2
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/README.md +5 -2
- package/config/base-claude.settings.json +1 -1
- package/config/base-glm.settings.json +4 -4
- package/config/base-glmt.settings.json +4 -4
- package/config/base-km.settings.json +4 -4
- package/config/base-mm.settings.json +4 -4
- package/dist/api/services/cliproxy-profile-bridge.d.ts.map +1 -1
- package/dist/api/services/cliproxy-profile-bridge.js +20 -9
- package/dist/api/services/cliproxy-profile-bridge.js.map +1 -1
- package/dist/api/services/profile-lifecycle-validation.d.ts.map +1 -1
- package/dist/api/services/profile-lifecycle-validation.js +2 -0
- package/dist/api/services/profile-lifecycle-validation.js.map +1 -1
- package/dist/api/services/profile-writer.d.ts.map +1 -1
- package/dist/api/services/profile-writer.js +18 -8
- package/dist/api/services/profile-writer.js.map +1 -1
- package/dist/auth/commands/backup-command.d.ts.map +1 -1
- package/dist/auth/commands/backup-command.js +0 -1
- package/dist/auth/commands/backup-command.js.map +1 -1
- package/dist/auth/commands/create-command.d.ts.map +1 -1
- package/dist/auth/commands/create-command.js +4 -14
- package/dist/auth/commands/create-command.js.map +1 -1
- package/dist/auth/commands/default-command.d.ts.map +1 -1
- package/dist/auth/commands/default-command.js +0 -1
- package/dist/auth/commands/default-command.js.map +1 -1
- package/dist/auth/commands/index.d.ts +2 -1
- package/dist/auth/commands/index.d.ts.map +1 -1
- package/dist/auth/commands/index.js +0 -1
- package/dist/auth/commands/index.js.map +1 -1
- package/dist/auth/commands/remove-command.d.ts.map +1 -1
- package/dist/auth/commands/remove-command.js +0 -2
- package/dist/auth/commands/remove-command.js.map +1 -1
- package/dist/auth/commands/resources-command.d.ts.map +1 -1
- package/dist/auth/commands/resources-command.js +0 -1
- package/dist/auth/commands/resources-command.js.map +1 -1
- package/dist/auth/commands/show-command.d.ts.map +1 -1
- package/dist/auth/commands/show-command.js +0 -1
- package/dist/auth/commands/show-command.js.map +1 -1
- package/dist/auth/commands/types.d.ts.map +1 -1
- package/dist/auth/commands/types.js +0 -1
- package/dist/auth/commands/types.js.map +1 -1
- package/dist/auth/profile-registry.d.ts +3 -1
- package/dist/auth/profile-registry.d.ts.map +1 -1
- package/dist/auth/profile-registry.js +21 -15
- package/dist/auth/profile-registry.js.map +1 -1
- package/dist/ccs.js +27 -21
- package/dist/ccs.js.map +1 -1
- package/dist/cliproxy/accounts/account-safety.d.ts.map +1 -1
- package/dist/cliproxy/accounts/account-safety.js +56 -56
- package/dist/cliproxy/accounts/account-safety.js.map +1 -1
- package/dist/cliproxy/auth/antigravity-responsibility.d.ts.map +1 -1
- package/dist/cliproxy/auth/antigravity-responsibility.js +15 -15
- package/dist/cliproxy/auth/antigravity-responsibility.js.map +1 -1
- package/dist/cliproxy/auth/auth-token-manager.d.ts.map +1 -1
- package/dist/cliproxy/auth/auth-token-manager.js +2 -1
- package/dist/cliproxy/auth/auth-token-manager.js.map +1 -1
- package/dist/cliproxy/auth/auth-types.d.ts.map +1 -1
- package/dist/cliproxy/auth/auth-types.js +3 -2
- package/dist/cliproxy/auth/auth-types.js.map +1 -1
- package/dist/cliproxy/auth/oauth-handler.d.ts.map +1 -1
- package/dist/cliproxy/auth/oauth-handler.js +16 -5
- package/dist/cliproxy/auth/oauth-handler.js.map +1 -1
- package/dist/cliproxy/auth/provider-refreshers/index.d.ts +2 -1
- package/dist/cliproxy/auth/provider-refreshers/index.d.ts.map +1 -1
- package/dist/cliproxy/auth/provider-refreshers/index.js +4 -2
- package/dist/cliproxy/auth/provider-refreshers/index.js.map +1 -1
- package/dist/cliproxy/auth/token-manager.d.ts +2 -1
- package/dist/cliproxy/auth/token-manager.d.ts.map +1 -1
- package/dist/cliproxy/auth/token-manager.js +2 -1
- package/dist/cliproxy/auth/token-manager.js.map +1 -1
- package/dist/cliproxy/binary/lifecycle.d.ts.map +1 -1
- package/dist/cliproxy/binary/lifecycle.js +3 -2
- package/dist/cliproxy/binary/lifecycle.js.map +1 -1
- package/dist/cliproxy/binary/platform-detector.d.ts +1 -1
- package/dist/cliproxy/binary/platform-detector.d.ts.map +1 -1
- package/dist/cliproxy/config/env-builder.d.ts +7 -2
- package/dist/cliproxy/config/env-builder.d.ts.map +1 -1
- package/dist/cliproxy/config/env-builder.js +53 -18
- package/dist/cliproxy/config/env-builder.js.map +1 -1
- package/dist/cliproxy/config/model-config.d.ts.map +1 -1
- package/dist/cliproxy/config/model-config.js +32 -32
- package/dist/cliproxy/config/model-config.js.map +1 -1
- package/dist/cliproxy/config/provider-route.d.ts +13 -0
- package/dist/cliproxy/config/provider-route.d.ts.map +1 -0
- package/dist/cliproxy/config/provider-route.js +38 -0
- package/dist/cliproxy/config/provider-route.js.map +1 -0
- package/dist/cliproxy/executor/arg-parser.d.ts.map +1 -1
- package/dist/cliproxy/executor/arg-parser.js +26 -26
- package/dist/cliproxy/executor/arg-parser.js.map +1 -1
- package/dist/cliproxy/executor/auth-coordinator.d.ts.map +1 -1
- package/dist/cliproxy/executor/auth-coordinator.js +15 -14
- package/dist/cliproxy/executor/auth-coordinator.js.map +1 -1
- package/dist/cliproxy/executor/browser-launch-setup.d.ts.map +1 -1
- package/dist/cliproxy/executor/browser-launch-setup.js +6 -2
- package/dist/cliproxy/executor/browser-launch-setup.js.map +1 -1
- package/dist/cliproxy/executor/env-resolver.d.ts.map +1 -1
- package/dist/cliproxy/executor/env-resolver.js +5 -1
- package/dist/cliproxy/executor/env-resolver.js.map +1 -1
- package/dist/cliproxy/executor/index.d.ts.map +1 -1
- package/dist/cliproxy/executor/index.js +27 -17
- package/dist/cliproxy/executor/index.js.map +1 -1
- package/dist/cliproxy/executor/lifecycle-manager.d.ts.map +1 -1
- package/dist/cliproxy/executor/lifecycle-manager.js +18 -16
- package/dist/cliproxy/executor/lifecycle-manager.js.map +1 -1
- package/dist/cliproxy/executor/model-warnings.d.ts.map +1 -1
- package/dist/cliproxy/executor/model-warnings.js +24 -13
- package/dist/cliproxy/executor/model-warnings.js.map +1 -1
- package/dist/cliproxy/executor/proxy-chain-builder.d.ts.map +1 -1
- package/dist/cliproxy/executor/proxy-chain-builder.js +5 -1
- package/dist/cliproxy/executor/proxy-chain-builder.js.map +1 -1
- package/dist/cliproxy/executor/retry-handler.d.ts.map +1 -1
- package/dist/cliproxy/executor/retry-handler.js +13 -11
- package/dist/cliproxy/executor/retry-handler.js.map +1 -1
- package/dist/cliproxy/executor/session-bridge.d.ts.map +1 -1
- package/dist/cliproxy/executor/session-bridge.js +18 -10
- package/dist/cliproxy/executor/session-bridge.js.map +1 -1
- package/dist/cliproxy/management/remote-token-uploader.d.ts.map +1 -1
- package/dist/cliproxy/management/remote-token-uploader.js +11 -11
- package/dist/cliproxy/management/remote-token-uploader.js.map +1 -1
- package/dist/cliproxy/provider-capabilities.d.ts +6 -0
- package/dist/cliproxy/provider-capabilities.d.ts.map +1 -1
- package/dist/cliproxy/provider-capabilities.js +28 -3
- package/dist/cliproxy/provider-capabilities.js.map +1 -1
- package/dist/cliproxy/proxy/https-tunnel-proxy.d.ts +5 -1
- package/dist/cliproxy/proxy/https-tunnel-proxy.d.ts.map +1 -1
- package/dist/cliproxy/proxy/https-tunnel-proxy.js +22 -10
- package/dist/cliproxy/proxy/https-tunnel-proxy.js.map +1 -1
- package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts +0 -12
- package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts.map +1 -1
- package/dist/cliproxy/proxy/tool-sanitization-proxy.js +42 -72
- package/dist/cliproxy/proxy/tool-sanitization-proxy.js.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher/account-quota-fetcher.d.ts +21 -0
- package/dist/cliproxy/quota/quota-fetcher/account-quota-fetcher.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/account-quota-fetcher.js +154 -0
- package/dist/cliproxy/quota/quota-fetcher/account-quota-fetcher.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/all-accounts-fetcher.d.ts +35 -0
- package/dist/cliproxy/quota/quota-fetcher/all-accounts-fetcher.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/all-accounts-fetcher.js +98 -0
- package/dist/cliproxy/quota/quota-fetcher/all-accounts-fetcher.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/auth-file-reader.d.ts +22 -0
- package/dist/cliproxy/quota/quota-fetcher/auth-file-reader.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/auth-file-reader.js +111 -0
- package/dist/cliproxy/quota/quota-fetcher/auth-file-reader.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/available-models-fetcher.d.ts +17 -0
- package/dist/cliproxy/quota/quota-fetcher/available-models-fetcher.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/available-models-fetcher.js +85 -0
- package/dist/cliproxy/quota/quota-fetcher/available-models-fetcher.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/constants.d.ts +25 -0
- package/dist/cliproxy/quota/quota-fetcher/constants.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/constants.js +31 -0
- package/dist/cliproxy/quota/quota-fetcher/constants.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/http-client.d.ts +29 -0
- package/dist/cliproxy/quota/quota-fetcher/http-client.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/http-client.js +199 -0
- package/dist/cliproxy/quota/quota-fetcher/http-client.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/project-lookup.d.ts +16 -0
- package/dist/cliproxy/quota/quota-fetcher/project-lookup.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/project-lookup.js +89 -0
- package/dist/cliproxy/quota/quota-fetcher/project-lookup.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/status-classifier.d.ts +29 -0
- package/dist/cliproxy/quota/quota-fetcher/status-classifier.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/status-classifier.js +168 -0
- package/dist/cliproxy/quota/quota-fetcher/status-classifier.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/types.d.ts +165 -0
- package/dist/cliproxy/quota/quota-fetcher/types.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher/types.js +9 -0
- package/dist/cliproxy/quota/quota-fetcher/types.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-claude.d.ts.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-claude.js +14 -3
- package/dist/cliproxy/quota/quota-fetcher-claude.js.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-codex.d.ts.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-codex.js +36 -9
- package/dist/cliproxy/quota/quota-fetcher-codex.js.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/auth-file-discovery.d.ts +26 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/auth-file-discovery.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/auth-file-discovery.js +132 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/auth-file-discovery.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/bucket-building.d.ts +23 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/bucket-building.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/bucket-building.js +54 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/bucket-building.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/constants.d.ts +26 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/constants.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/constants.js +29 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/constants.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/error-parsing.d.ts +61 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/error-parsing.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/error-parsing.js +259 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/error-parsing.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/index.d.ts +20 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/index.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/index.js +38 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/index.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.d.ts +82 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.js +263 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.d.ts +46 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.js +188 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/shared-utils.d.ts +35 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/shared-utils.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/shared-utils.js +65 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/shared-utils.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/supplementary-metadata.d.ts +37 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/supplementary-metadata.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/supplementary-metadata.js +117 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/supplementary-metadata.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/token-parsing.d.ts +31 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/token-parsing.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/token-parsing.js +77 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/token-parsing.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/types.d.ts +114 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/types.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/types.js +10 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli/types.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli.d.ts +13 -58
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli.d.ts.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli.js +20 -819
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli.js.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-ghcp.d.ts.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher-ghcp.js +19 -4
- package/dist/cliproxy/quota/quota-fetcher-ghcp.js.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher.d.ts +12 -108
- package/dist/cliproxy/quota/quota-fetcher.d.ts.map +1 -1
- package/dist/cliproxy/quota/quota-fetcher.js +23 -766
- package/dist/cliproxy/quota/quota-fetcher.js.map +1 -1
- package/dist/cliproxy/quota/quota-manager.d.ts.map +1 -1
- package/dist/cliproxy/quota/quota-manager.js +7 -3
- package/dist/cliproxy/quota/quota-manager.js.map +1 -1
- package/dist/cliproxy/routing/routing-strategy.d.ts.map +1 -1
- package/dist/cliproxy/routing/routing-strategy.js +11 -3
- package/dist/cliproxy/routing/routing-strategy.js.map +1 -1
- package/dist/commands/api-command/create-command.d.ts.map +1 -1
- package/dist/commands/api-command/create-command.js +17 -8
- package/dist/commands/api-command/create-command.js.map +1 -1
- package/dist/commands/bar/bar-server-probe.d.ts +16 -3
- package/dist/commands/bar/bar-server-probe.d.ts.map +1 -1
- package/dist/commands/bar/bar-server-probe.js +83 -18
- package/dist/commands/bar/bar-server-probe.js.map +1 -1
- package/dist/commands/bar/help-subcommand.d.ts.map +1 -1
- package/dist/commands/bar/help-subcommand.js +3 -2
- package/dist/commands/bar/help-subcommand.js.map +1 -1
- package/dist/commands/bar/index.d.ts.map +1 -1
- package/dist/commands/bar/index.js +1 -0
- package/dist/commands/bar/index.js.map +1 -1
- package/dist/commands/bar/install-subcommand.d.ts +4 -10
- package/dist/commands/bar/install-subcommand.d.ts.map +1 -1
- package/dist/commands/bar/install-subcommand.js +44 -53
- package/dist/commands/bar/install-subcommand.js.map +1 -1
- package/dist/commands/bar/launch-subcommand.d.ts +11 -1
- package/dist/commands/bar/launch-subcommand.d.ts.map +1 -1
- package/dist/commands/bar/launch-subcommand.js +82 -15
- package/dist/commands/bar/launch-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/help-subcommand.js +5 -5
- package/dist/commands/cliproxy/help-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/index.d.ts.map +1 -1
- package/dist/commands/cliproxy/index.js +7 -2
- package/dist/commands/cliproxy/index.js.map +1 -1
- package/dist/commands/cliproxy/pool-subcommand.d.ts.map +1 -1
- package/dist/commands/cliproxy/pool-subcommand.js +4 -2
- package/dist/commands/cliproxy/pool-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/proxy-lifecycle-subcommand.d.ts +1 -1
- package/dist/commands/cliproxy/proxy-lifecycle-subcommand.d.ts.map +1 -1
- package/dist/commands/cliproxy/proxy-lifecycle-subcommand.js +13 -1
- package/dist/commands/cliproxy/proxy-lifecycle-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/quota-subcommand/claude-window-helpers.d.ts +26 -0
- package/dist/commands/cliproxy/quota-subcommand/claude-window-helpers.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/claude-window-helpers.js +82 -0
- package/dist/commands/cliproxy/quota-subcommand/claude-window-helpers.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/codex-window-helpers.d.ts +41 -0
- package/dist/commands/cliproxy/quota-subcommand/codex-window-helpers.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/codex-window-helpers.js +202 -0
- package/dist/commands/cliproxy/quota-subcommand/codex-window-helpers.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/format-helpers.d.ts +32 -0
- package/dist/commands/cliproxy/quota-subcommand/format-helpers.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/format-helpers.js +90 -0
- package/dist/commands/cliproxy/quota-subcommand/format-helpers.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/handlers.d.ts +25 -0
- package/dist/commands/cliproxy/quota-subcommand/handlers.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/handlers.js +245 -0
- package/dist/commands/cliproxy/quota-subcommand/handlers.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/profile-args.d.ts +10 -0
- package/dist/commands/cliproxy/quota-subcommand/profile-args.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/profile-args.js +37 -0
- package/dist/commands/cliproxy/quota-subcommand/profile-args.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/provider-runtime.d.ts +12 -0
- package/dist/commands/cliproxy/quota-subcommand/provider-runtime.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/provider-runtime.js +64 -0
- package/dist/commands/cliproxy/quota-subcommand/provider-runtime.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/quota-failure-display.d.ts +27 -0
- package/dist/commands/cliproxy/quota-subcommand/quota-failure-display.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/quota-failure-display.js +74 -0
- package/dist/commands/cliproxy/quota-subcommand/quota-failure-display.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/antigravity.d.ts +10 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/antigravity.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/antigravity.js +46 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/antigravity.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/claude.d.ts +14 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/claude.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/claude.js +68 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/claude.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/codex.d.ts +14 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/codex.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/codex.js +82 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/codex.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/gemini-cli.d.ts +14 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/gemini-cli.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/gemini-cli.js +61 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/gemini-cli.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/ghcp.d.ts +13 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/ghcp.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/ghcp.js +63 -0
- package/dist/commands/cliproxy/quota-subcommand/sections/ghcp.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/test-exports.d.ts +19 -0
- package/dist/commands/cliproxy/quota-subcommand/test-exports.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/test-exports.js +22 -0
- package/dist/commands/cliproxy/quota-subcommand/test-exports.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/types.d.ts +42 -0
- package/dist/commands/cliproxy/quota-subcommand/types.d.ts.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand/types.js +9 -0
- package/dist/commands/cliproxy/quota-subcommand/types.js.map +1 -0
- package/dist/commands/cliproxy/quota-subcommand.d.ts +14 -36
- package/dist/commands/cliproxy/quota-subcommand.d.ts.map +1 -1
- package/dist/commands/cliproxy/quota-subcommand.js +21 -872
- package/dist/commands/cliproxy/quota-subcommand.js.map +1 -1
- package/dist/commands/command-catalog.js +1 -1
- package/dist/commands/command-catalog.js.map +1 -1
- package/dist/commands/config-channels-command.d.ts +1 -1
- package/dist/commands/config-channels-command.d.ts.map +1 -1
- package/dist/commands/config-channels-command.js +3 -3
- package/dist/commands/config-channels-command.js.map +1 -1
- package/dist/commands/config-command-options.d.ts.map +1 -1
- package/dist/commands/config-command-options.js +11 -2
- package/dist/commands/config-command-options.js.map +1 -1
- package/dist/commands/persist-command/arg-parsing.d.ts +14 -0
- package/dist/commands/persist-command/arg-parsing.d.ts.map +1 -0
- package/dist/commands/persist-command/arg-parsing.js +84 -0
- package/dist/commands/persist-command/arg-parsing.js.map +1 -0
- package/dist/commands/persist-command/backup-rotation.d.ts +23 -0
- package/dist/commands/persist-command/backup-rotation.d.ts.map +1 -0
- package/dist/commands/persist-command/backup-rotation.js +265 -0
- package/dist/commands/persist-command/backup-rotation.js.map +1 -0
- package/dist/commands/persist-command/handler.d.ts +10 -0
- package/dist/commands/persist-command/handler.d.ts.map +1 -0
- package/dist/commands/persist-command/handler.js +267 -0
- package/dist/commands/persist-command/handler.js.map +1 -0
- package/dist/commands/persist-command/help.d.ts +9 -0
- package/dist/commands/persist-command/help.d.ts.map +1 -0
- package/dist/commands/persist-command/help.js +86 -0
- package/dist/commands/persist-command/help.js.map +1 -0
- package/dist/commands/persist-command/receipt.d.ts +13 -0
- package/dist/commands/persist-command/receipt.d.ts.map +1 -0
- package/dist/commands/persist-command/receipt.js +102 -0
- package/dist/commands/persist-command/receipt.js.map +1 -0
- package/dist/commands/persist-command/secret-detection.d.ts +11 -0
- package/dist/commands/persist-command/secret-detection.d.ts.map +1 -0
- package/dist/commands/persist-command/secret-detection.js +54 -0
- package/dist/commands/persist-command/secret-detection.js.map +1 -0
- package/dist/commands/persist-command/secure-file.d.ts +21 -0
- package/dist/commands/persist-command/secure-file.d.ts.map +1 -0
- package/dist/commands/persist-command/secure-file.js +231 -0
- package/dist/commands/persist-command/secure-file.js.map +1 -0
- package/dist/commands/persist-command/types.d.ts +42 -0
- package/dist/commands/persist-command/types.d.ts.map +1 -0
- package/dist/commands/persist-command/types.js +34 -0
- package/dist/commands/persist-command/types.js.map +1 -0
- package/dist/commands/persist-command.d.ts +7 -2
- package/dist/commands/persist-command.d.ts.map +1 -1
- package/dist/commands/persist-command.js +17 -933
- package/dist/commands/persist-command.js.map +1 -1
- package/dist/commands/proxy-command.d.ts.map +1 -1
- package/dist/commands/proxy-command.js +7 -1
- package/dist/commands/proxy-command.js.map +1 -1
- package/dist/commands/setup-command.d.ts.map +1 -1
- package/dist/commands/setup-command.js +11 -1
- package/dist/commands/setup-command.js.map +1 -1
- package/dist/commands/tokens-command.d.ts.map +1 -1
- package/dist/commands/tokens-command.js +6 -0
- package/dist/commands/tokens-command.js.map +1 -1
- package/dist/config/config-loader-facade.d.ts +1 -1
- package/dist/config/config-loader-facade.d.ts.map +1 -1
- package/dist/config/config-loader-facade.js +3 -1
- package/dist/config/config-loader-facade.js.map +1 -1
- package/dist/config/loader/config-getters.d.ts +16 -0
- package/dist/config/loader/config-getters.d.ts.map +1 -1
- package/dist/config/loader/config-getters.js +33 -1
- package/dist/config/loader/config-getters.js.map +1 -1
- package/dist/config/loader/defaults-merger.d.ts.map +1 -1
- package/dist/config/loader/defaults-merger.js +4 -0
- package/dist/config/loader/defaults-merger.js.map +1 -1
- package/dist/config/loader/yaml-serializer.d.ts.map +1 -1
- package/dist/config/loader/yaml-serializer.js +13 -0
- package/dist/config/loader/yaml-serializer.js.map +1 -1
- package/dist/config/schemas/index.d.ts +2 -0
- package/dist/config/schemas/index.d.ts.map +1 -1
- package/dist/config/schemas/index.js +5 -1
- package/dist/config/schemas/index.js.map +1 -1
- package/dist/config/schemas/runtime.d.ts +57 -0
- package/dist/config/schemas/runtime.d.ts.map +1 -0
- package/dist/config/schemas/runtime.js +51 -0
- package/dist/config/schemas/runtime.js.map +1 -0
- package/dist/config/schemas/unified-config.d.ts +3 -0
- package/dist/config/schemas/unified-config.d.ts.map +1 -1
- package/dist/config/schemas/unified-config.js.map +1 -1
- package/dist/config/unified-config-loader.d.ts +1 -1
- package/dist/config/unified-config-loader.d.ts.map +1 -1
- package/dist/config/unified-config-loader.js +25 -13
- package/dist/config/unified-config-loader.js.map +1 -1
- package/dist/copilot/copilot-executor.js +25 -25
- package/dist/copilot/copilot-executor.js.map +1 -1
- package/dist/cursor/cursor-daemon-entry.d.ts.map +1 -1
- package/dist/cursor/cursor-daemon-entry.js +34 -9
- package/dist/cursor/cursor-daemon-entry.js.map +1 -1
- package/dist/cursor/cursor-daemon.d.ts.map +1 -1
- package/dist/cursor/cursor-daemon.js +1 -0
- package/dist/cursor/cursor-daemon.js.map +1 -1
- package/dist/cursor/cursor-profile-executor.d.ts.map +1 -1
- package/dist/cursor/cursor-profile-executor.js +18 -17
- package/dist/cursor/cursor-profile-executor.js.map +1 -1
- package/dist/delegation/delegation-handler.d.ts.map +1 -1
- package/dist/delegation/delegation-handler.js +29 -23
- package/dist/delegation/delegation-handler.js.map +1 -1
- package/dist/delegation/headless-executor.d.ts +1 -0
- package/dist/delegation/headless-executor.d.ts.map +1 -1
- package/dist/delegation/headless-executor.js +36 -15
- package/dist/delegation/headless-executor.js.map +1 -1
- package/dist/delegation/session-manager.d.ts.map +1 -1
- package/dist/delegation/session-manager.js +12 -4
- package/dist/delegation/session-manager.js.map +1 -1
- package/dist/dispatcher/cli-argument-parser.d.ts +1 -1
- package/dist/dispatcher/cli-argument-parser.d.ts.map +1 -1
- package/dist/dispatcher/cli-argument-parser.js +24 -23
- package/dist/dispatcher/cli-argument-parser.js.map +1 -1
- package/dist/dispatcher/flows/cliproxy-flow.d.ts.map +1 -1
- package/dist/dispatcher/flows/cliproxy-flow.js +12 -15
- package/dist/dispatcher/flows/cliproxy-flow.js.map +1 -1
- package/dist/dispatcher/flows/copilot-flow.js +1 -1
- package/dist/dispatcher/flows/copilot-flow.js.map +1 -1
- package/dist/dispatcher/flows/cursor-flow.js +1 -1
- package/dist/dispatcher/flows/cursor-flow.js.map +1 -1
- package/dist/dispatcher/flows/settings-flow.d.ts.map +1 -1
- package/dist/dispatcher/flows/settings-flow.js +32 -29
- package/dist/dispatcher/flows/settings-flow.js.map +1 -1
- package/dist/dispatcher/pre-dispatch.d.ts.map +1 -1
- package/dist/dispatcher/pre-dispatch.js +26 -10
- package/dist/dispatcher/pre-dispatch.js.map +1 -1
- package/dist/dispatcher/profile-resolver.d.ts +1 -1
- package/dist/dispatcher/profile-resolver.d.ts.map +1 -1
- package/dist/dispatcher/profile-resolver.js +36 -23
- package/dist/dispatcher/profile-resolver.js.map +1 -1
- package/dist/docker/supervisord-lifecycle.d.ts.map +1 -1
- package/dist/docker/supervisord-lifecycle.js +5 -1
- package/dist/docker/supervisord-lifecycle.js.map +1 -1
- package/dist/errors/error-types.d.ts +26 -22
- package/dist/errors/error-types.d.ts.map +1 -1
- package/dist/errors/error-types.js +15 -12
- package/dist/errors/error-types.js.map +1 -1
- package/dist/errors/exit-codes.d.ts +20 -13
- package/dist/errors/exit-codes.d.ts.map +1 -1
- package/dist/errors/exit-codes.js +32 -28
- package/dist/errors/exit-codes.js.map +1 -1
- package/dist/glmt/delta-accumulator.d.ts +1 -0
- package/dist/glmt/delta-accumulator.d.ts.map +1 -1
- package/dist/glmt/delta-accumulator.js +12 -4
- package/dist/glmt/delta-accumulator.js.map +1 -1
- package/dist/glmt/glmt-proxy.d.ts.map +1 -1
- package/dist/glmt/glmt-proxy.js +39 -10
- package/dist/glmt/glmt-proxy.js.map +1 -1
- package/dist/glmt/glmt-transformer.d.ts.map +1 -1
- package/dist/glmt/glmt-transformer.js +1 -4
- package/dist/glmt/glmt-transformer.js.map +1 -1
- package/dist/glmt/pipeline/request-transformer.d.ts.map +1 -1
- package/dist/glmt/pipeline/request-transformer.js +5 -1
- package/dist/glmt/pipeline/request-transformer.js.map +1 -1
- package/dist/glmt/pipeline/response-builder.d.ts.map +1 -1
- package/dist/glmt/pipeline/response-builder.js +7 -3
- package/dist/glmt/pipeline/response-builder.js.map +1 -1
- package/dist/glmt/pipeline/stream-parser.d.ts.map +1 -1
- package/dist/glmt/pipeline/stream-parser.js +11 -5
- package/dist/glmt/pipeline/stream-parser.js.map +1 -1
- package/dist/glmt/pipeline/tool-call-handler.d.ts.map +1 -1
- package/dist/glmt/pipeline/tool-call-handler.js +7 -1
- package/dist/glmt/pipeline/tool-call-handler.js.map +1 -1
- package/dist/glmt/sse-parser.d.ts +1 -0
- package/dist/glmt/sse-parser.d.ts.map +1 -1
- package/dist/glmt/sse-parser.js +7 -3
- package/dist/glmt/sse-parser.js.map +1 -1
- package/dist/management/checks/cliproxy-check.d.ts.map +1 -1
- package/dist/management/checks/cliproxy-check.js +15 -1
- package/dist/management/checks/cliproxy-check.js.map +1 -1
- package/dist/management/checks/config-check.d.ts.map +1 -1
- package/dist/management/checks/config-check.js +4 -1
- package/dist/management/checks/config-check.js.map +1 -1
- package/dist/management/checks/profile-check.d.ts.map +1 -1
- package/dist/management/checks/profile-check.js +10 -6
- package/dist/management/checks/profile-check.js.map +1 -1
- package/dist/management/doctor.d.ts +7 -0
- package/dist/management/doctor.d.ts.map +1 -1
- package/dist/management/doctor.js +31 -9
- package/dist/management/doctor.js.map +1 -1
- package/dist/management/shared-manager/fs-helpers.d.ts +69 -0
- package/dist/management/shared-manager/fs-helpers.d.ts.map +1 -0
- package/dist/management/shared-manager/fs-helpers.js +241 -0
- package/dist/management/shared-manager/fs-helpers.js.map +1 -0
- package/dist/management/shared-manager/migrations.d.ts +21 -0
- package/dist/management/shared-manager/migrations.d.ts.map +1 -0
- package/dist/management/shared-manager/migrations.js +187 -0
- package/dist/management/shared-manager/migrations.js.map +1 -0
- package/dist/management/shared-manager/orchestrator.d.ts +87 -0
- package/dist/management/shared-manager/orchestrator.d.ts.map +1 -0
- package/dist/management/shared-manager/orchestrator.js +161 -0
- package/dist/management/shared-manager/orchestrator.js.map +1 -0
- package/dist/management/shared-manager/plugin-layout-internals.d.ts +42 -0
- package/dist/management/shared-manager/plugin-layout-internals.d.ts.map +1 -0
- package/dist/management/shared-manager/plugin-layout-internals.js +192 -0
- package/dist/management/shared-manager/plugin-layout-internals.js.map +1 -0
- package/dist/management/shared-manager/plugin-metadata-normalizer.d.ts +53 -0
- package/dist/management/shared-manager/plugin-metadata-normalizer.d.ts.map +1 -0
- package/dist/management/shared-manager/plugin-metadata-normalizer.js +253 -0
- package/dist/management/shared-manager/plugin-metadata-normalizer.js.map +1 -0
- package/dist/management/shared-manager/project-context-sync.d.ts +36 -0
- package/dist/management/shared-manager/project-context-sync.d.ts.map +1 -0
- package/dist/management/shared-manager/project-context-sync.js +204 -0
- package/dist/management/shared-manager/project-context-sync.js.map +1 -0
- package/dist/management/shared-manager/project-memory-sync.d.ts +21 -0
- package/dist/management/shared-manager/project-memory-sync.d.ts.map +1 -0
- package/dist/management/shared-manager/project-memory-sync.js +113 -0
- package/dist/management/shared-manager/project-memory-sync.js.map +1 -0
- package/dist/management/shared-manager/shared-dir-linker.d.ts +41 -0
- package/dist/management/shared-manager/shared-dir-linker.d.ts.map +1 -0
- package/dist/management/shared-manager/shared-dir-linker.js +227 -0
- package/dist/management/shared-manager/shared-dir-linker.js.map +1 -0
- package/dist/management/shared-manager/symlink-helpers.d.ts +61 -0
- package/dist/management/shared-manager/symlink-helpers.d.ts.map +1 -0
- package/dist/management/shared-manager/symlink-helpers.js +243 -0
- package/dist/management/shared-manager/symlink-helpers.js.map +1 -0
- package/dist/management/shared-manager/types.d.ts +45 -0
- package/dist/management/shared-manager/types.d.ts.map +1 -0
- package/dist/management/shared-manager/types.js +57 -0
- package/dist/management/shared-manager/types.js.map +1 -0
- package/dist/management/shared-manager.d.ts +13 -160
- package/dist/management/shared-manager.d.ts.map +1 -1
- package/dist/management/shared-manager.js +18 -1294
- package/dist/management/shared-manager.js.map +1 -1
- package/dist/proxy/proxy-daemon-entry.js +1 -1
- package/dist/proxy/proxy-daemon-entry.js.map +1 -1
- package/dist/proxy/server/messages-route.d.ts +10 -0
- package/dist/proxy/server/messages-route.d.ts.map +1 -1
- package/dist/proxy/server/messages-route.js +34 -7
- package/dist/proxy/server/messages-route.js.map +1 -1
- package/dist/proxy/server/proxy-server.d.ts.map +1 -1
- package/dist/proxy/server/proxy-server.js +1 -1
- package/dist/proxy/server/proxy-server.js.map +1 -1
- package/dist/proxy/transformers/sse-stream-transformer.d.ts.map +1 -1
- package/dist/proxy/transformers/sse-stream-transformer.js +12 -17
- package/dist/proxy/transformers/sse-stream-transformer.js.map +1 -1
- package/dist/services/logging/index.d.ts +1 -1
- package/dist/services/logging/index.d.ts.map +1 -1
- package/dist/services/logging/index.js +6 -1
- package/dist/services/logging/index.js.map +1 -1
- package/dist/services/logging/log-context.d.ts +27 -2
- package/dist/services/logging/log-context.d.ts.map +1 -1
- package/dist/services/logging/log-context.js +43 -4
- package/dist/services/logging/log-context.js.map +1 -1
- package/dist/services/logging/log-redaction.d.ts +9 -0
- package/dist/services/logging/log-redaction.d.ts.map +1 -1
- package/dist/services/logging/log-redaction.js +31 -3
- package/dist/services/logging/log-redaction.js.map +1 -1
- package/dist/services/logging/logger.js +2 -2
- package/dist/services/logging/logger.js.map +1 -1
- package/dist/shared/provider-preset-catalog.d.ts +1 -1
- package/dist/shared/provider-preset-catalog.d.ts.map +1 -1
- package/dist/shared/provider-preset-catalog.js +21 -7
- package/dist/shared/provider-preset-catalog.js.map +1 -1
- package/dist/targets/claude-adapter.d.ts.map +1 -1
- package/dist/targets/claude-adapter.js +5 -0
- package/dist/targets/claude-adapter.js.map +1 -1
- package/dist/targets/codex-adapter.d.ts.map +1 -1
- package/dist/targets/codex-adapter.js +11 -10
- package/dist/targets/codex-adapter.js.map +1 -1
- package/dist/targets/codex-cliproxy-provider-config.d.ts.map +1 -1
- package/dist/targets/codex-cliproxy-provider-config.js +51 -14
- package/dist/targets/codex-cliproxy-provider-config.js.map +1 -1
- package/dist/targets/codex-detector.d.ts.map +1 -1
- package/dist/targets/codex-detector.js +14 -0
- package/dist/targets/codex-detector.js.map +1 -1
- package/dist/targets/droid-adapter.d.ts.map +1 -1
- package/dist/targets/droid-adapter.js +12 -12
- package/dist/targets/droid-adapter.js.map +1 -1
- package/dist/ui/assets/{Trans-RG_sMDEu.js → Trans-GYzYLs2D.js} +1 -1
- package/dist/ui/assets/{accounts-yTXURc-q.js → accounts-DC1QuyI9.js} +1 -1
- package/dist/ui/assets/{alert-dialog-DjvPgzFs.js → alert-dialog-6SiedqmE.js} +1 -1
- package/dist/ui/assets/{api-Ck1dtNEM.js → api-3s21dbNJ.js} +1 -1
- package/dist/ui/assets/{auth-section-DBnY_LPz.js → auth-section-XBfNgVN4.js} +1 -1
- package/dist/ui/assets/{backups-section-Ci-uL4Of.js → backups-section-BidiiVlq.js} +1 -1
- package/dist/ui/assets/{channels-BeS9O5q0.js → channels-pfgPUDGt.js} +1 -1
- package/dist/ui/assets/{checkbox-DFeFDZBp.js → checkbox-CJw_-nvC.js} +1 -1
- package/dist/ui/assets/{claude-extension-DS5qN19Z.js → claude-extension-BIIUOvTJ.js} +1 -1
- package/dist/ui/assets/{cliproxy-D7HJH4mZ.js → cliproxy-Cq8OX0Pu.js} +1 -1
- package/dist/ui/assets/{cliproxy-ai-providers-oJQZXrtc.js → cliproxy-ai-providers-DI760ZF0.js} +1 -1
- package/dist/ui/assets/{cliproxy-control-panel-2mRPEcRj.js → cliproxy-control-panel-CBqvpOqj.js} +1 -1
- package/dist/ui/assets/{codex-D0AUQ6jA.js → codex-DL4OLBUu.js} +1 -1
- package/dist/ui/assets/{confirm-dialog-B37-CVuq.js → confirm-dialog-CC_Cc3EO.js} +1 -1
- package/dist/ui/assets/{copilot-KaaW-mko.js → copilot-D2kEhTXR.js} +1 -1
- package/dist/ui/assets/{cursor-BKiTgYi5.js → cursor-BashLrYk.js} +1 -1
- package/dist/ui/assets/{droid-DHdqGnFw.js → droid-DaKTINFL.js} +1 -1
- package/dist/ui/assets/{globalenv-section-SfZO97nU.js → globalenv-section-BQicL8L0.js} +1 -1
- package/dist/ui/assets/{health-CSRS9O0D.js → health-bRbE_ADg.js} +1 -1
- package/dist/ui/assets/{index-CGgavq2X.js → index-B2JEyN3d.js} +36 -36
- package/dist/ui/assets/{index-Cu_F55_O.js → index-BwZdl1HU.js} +1 -1
- package/dist/ui/assets/{index-DWUuSBUe.js → index-CgeAb1-K.js} +1 -1
- package/dist/ui/assets/{index-iQuEEGbH.js → index-DAQ0qIQ_.js} +1 -1
- package/dist/ui/assets/{index-ChTYEBCZ.js → index-O2x1grGh.js} +1 -1
- package/dist/ui/assets/{index-DycwEe96.js → index-WA7tK6np.js} +1 -1
- package/dist/ui/assets/{index-DJ66NrBH.js → index-mf2X1GwS.js} +1 -1
- package/dist/ui/assets/{logs-tiZ_51mo.js → logs-qrBHUJ0H.js} +1 -1
- package/dist/ui/assets/{masked-input-D9FVoeMA.js → masked-input-CXwQ4E-g.js} +1 -1
- package/dist/ui/assets/{proxy-status-widget-2k26d8pS.js → proxy-status-widget-DPz4nCzR.js} +1 -1
- package/dist/ui/assets/{raw-json-settings-editor-panel-CguBh93H.js → raw-json-settings-editor-panel-CcvsWVh1.js} +1 -1
- package/dist/ui/assets/{searchable-select-C4wShshD.js → searchable-select-EXSjNCRu.js} +1 -1
- package/dist/ui/assets/{separator-mvGlDdEW.js → separator-D2CTfWBQ.js} +1 -1
- package/dist/ui/assets/{shared-Ck0yAwbs.js → shared-DpgzhFqe.js} +1 -1
- package/dist/ui/assets/{table-DrUJOxKL.js → table-DwbiGRYk.js} +1 -1
- package/dist/ui/assets/{updates-BVHBFcq8.js → updates-D8jfIb2y.js} +1 -1
- package/dist/ui/assets/{use-accounts-DLtuaniS.js → use-accounts-Bwtpnx-x.js} +1 -1
- package/dist/ui/index.html +1 -1
- package/dist/utils/bar-auth-token.d.ts +4 -0
- package/dist/utils/bar-auth-token.d.ts.map +1 -0
- package/dist/utils/bar-auth-token.js +60 -0
- package/dist/utils/bar-auth-token.js.map +1 -0
- package/dist/utils/browser/browser-settings.d.ts +3 -1
- package/dist/utils/browser/browser-settings.d.ts.map +1 -1
- package/dist/utils/browser/browser-settings.js +2 -2
- package/dist/utils/browser/browser-settings.js.map +1 -1
- package/dist/utils/browser/browser-setup.d.ts.map +1 -1
- package/dist/utils/browser/browser-setup.js +3 -1
- package/dist/utils/browser/browser-setup.js.map +1 -1
- package/dist/utils/browser/browser-status.d.ts.map +1 -1
- package/dist/utils/browser/browser-status.js +4 -2
- package/dist/utils/browser/browser-status.js.map +1 -1
- package/dist/utils/fetch-proxy-setup.d.ts +3 -2
- package/dist/utils/fetch-proxy-setup.d.ts.map +1 -1
- package/dist/utils/fetch-proxy-setup.js +10 -6
- package/dist/utils/fetch-proxy-setup.js.map +1 -1
- package/dist/utils/image-analysis/mcp-installer.d.ts.map +1 -1
- package/dist/utils/image-analysis/mcp-installer.js +16 -13
- package/dist/utils/image-analysis/mcp-installer.js.map +1 -1
- package/dist/utils/websearch/index.d.ts +1 -1
- package/dist/utils/websearch/index.d.ts.map +1 -1
- package/dist/utils/websearch/index.js +2 -1
- package/dist/utils/websearch/index.js.map +1 -1
- package/dist/utils/websearch/mcp-installer.d.ts +8 -0
- package/dist/utils/websearch/mcp-installer.d.ts.map +1 -1
- package/dist/utils/websearch/mcp-installer.js +34 -13
- package/dist/utils/websearch/mcp-installer.js.map +1 -1
- package/dist/utils/websearch-manager.d.ts +1 -1
- package/dist/utils/websearch-manager.d.ts.map +1 -1
- package/dist/utils/websearch-manager.js +2 -1
- package/dist/utils/websearch-manager.js.map +1 -1
- package/dist/web-server/middleware/request-logging-middleware.d.ts.map +1 -1
- package/dist/web-server/middleware/request-logging-middleware.js +14 -9
- package/dist/web-server/middleware/request-logging-middleware.js.map +1 -1
- package/dist/web-server/model-pricing.d.ts.map +1 -1
- package/dist/web-server/model-pricing.js +22 -2
- package/dist/web-server/model-pricing.js.map +1 -1
- package/dist/web-server/routes/bar-routes.d.ts +12 -1
- package/dist/web-server/routes/bar-routes.d.ts.map +1 -1
- package/dist/web-server/routes/bar-routes.js +22 -6
- package/dist/web-server/routes/bar-routes.js.map +1 -1
- package/dist/web-server/routes/claude-extension-routes.d.ts.map +1 -1
- package/dist/web-server/routes/claude-extension-routes.js +3 -2
- package/dist/web-server/routes/claude-extension-routes.js.map +1 -1
- package/dist/web-server/routes/cliproxy-auth-routes.d.ts +1 -0
- package/dist/web-server/routes/cliproxy-auth-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-auth-routes.js +20 -5
- package/dist/web-server/routes/cliproxy-auth-routes.js.map +1 -1
- package/dist/web-server/routes/cliproxy-stats-routes/config-routes.d.ts +16 -0
- package/dist/web-server/routes/cliproxy-stats-routes/config-routes.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/config-routes.js +219 -0
- package/dist/web-server/routes/cliproxy-stats-routes/config-routes.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/error-log-routes.d.ts +12 -0
- package/dist/web-server/routes/cliproxy-stats-routes/error-log-routes.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/error-log-routes.js +153 -0
- package/dist/web-server/routes/cliproxy-stats-routes/error-log-routes.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/quota-helpers.d.ts +19 -0
- package/dist/web-server/routes/cliproxy-stats-routes/quota-helpers.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/quota-helpers.js +38 -0
- package/dist/web-server/routes/cliproxy-stats-routes/quota-helpers.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/quota-routes.d.ts +13 -0
- package/dist/web-server/routes/cliproxy-stats-routes/quota-routes.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/quota-routes.js +195 -0
- package/dist/web-server/routes/cliproxy-stats-routes/quota-routes.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/restart-route.d.ts +17 -0
- package/dist/web-server/routes/cliproxy-stats-routes/restart-route.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/restart-route.js +34 -0
- package/dist/web-server/routes/cliproxy-stats-routes/restart-route.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/router.d.ts +10 -0
- package/dist/web-server/routes/cliproxy-stats-routes/router.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/router.js +245 -0
- package/dist/web-server/routes/cliproxy-stats-routes/router.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/shared.d.ts +35 -0
- package/dist/web-server/routes/cliproxy-stats-routes/shared.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/shared.js +59 -0
- package/dist/web-server/routes/cliproxy-stats-routes/shared.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/version-helpers.d.ts +44 -0
- package/dist/web-server/routes/cliproxy-stats-routes/version-helpers.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes/version-helpers.js +66 -0
- package/dist/web-server/routes/cliproxy-stats-routes/version-helpers.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes.d.ts +16 -57
- package/dist/web-server/routes/cliproxy-stats-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-stats-routes.js +25 -926
- package/dist/web-server/routes/cliproxy-stats-routes.js.map +1 -1
- package/dist/web-server/routes/cliproxy-sync-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-sync-routes.js +9 -2
- package/dist/web-server/routes/cliproxy-sync-routes.js.map +1 -1
- package/dist/web-server/routes/copilot-settings-routes.d.ts.map +1 -1
- package/dist/web-server/routes/copilot-settings-routes.js +2 -1
- package/dist/web-server/routes/copilot-settings-routes.js.map +1 -1
- package/dist/web-server/routes/cursor-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cursor-routes.js +3 -1
- package/dist/web-server/routes/cursor-routes.js.map +1 -1
- package/dist/web-server/routes/image-analysis-routes.d.ts.map +1 -1
- package/dist/web-server/routes/image-analysis-routes.js +2 -1
- package/dist/web-server/routes/image-analysis-routes.js.map +1 -1
- package/dist/web-server/routes/index.d.ts.map +1 -1
- package/dist/web-server/routes/index.js +6 -0
- package/dist/web-server/routes/index.js.map +1 -1
- package/dist/web-server/routes/persist-routes.d.ts.map +1 -1
- package/dist/web-server/routes/persist-routes.js +8 -1
- package/dist/web-server/routes/persist-routes.js.map +1 -1
- package/dist/web-server/routes/proxy-routes.d.ts.map +1 -1
- package/dist/web-server/routes/proxy-routes.js +33 -5
- package/dist/web-server/routes/proxy-routes.js.map +1 -1
- package/dist/web-server/routes/route-helpers.d.ts.map +1 -1
- package/dist/web-server/routes/route-helpers.js +18 -6
- package/dist/web-server/routes/route-helpers.js.map +1 -1
- package/dist/web-server/routes/settings-routes.d.ts.map +1 -1
- package/dist/web-server/routes/settings-routes.js +7 -6
- package/dist/web-server/routes/settings-routes.js.map +1 -1
- package/dist/web-server/usage/aggregator.d.ts.map +1 -1
- package/dist/web-server/usage/aggregator.js +8 -8
- package/dist/web-server/usage/aggregator.js.map +1 -1
- package/dist/web-server/usage/bar-analytics.d.ts +21 -0
- package/dist/web-server/usage/bar-analytics.d.ts.map +1 -1
- package/dist/web-server/usage/bar-analytics.js +78 -9
- package/dist/web-server/usage/bar-analytics.js.map +1 -1
- package/dist/web-server/usage/cliproxy-usage-transformer.d.ts.map +1 -1
- package/dist/web-server/usage/cliproxy-usage-transformer.js +9 -4
- package/dist/web-server/usage/cliproxy-usage-transformer.js.map +1 -1
- package/dist/web-server/usage/codex-local-quota-collector.d.ts +2 -2
- package/dist/web-server/usage/codex-local-quota-collector.d.ts.map +1 -1
- package/dist/web-server/usage/codex-local-quota-collector.js +39 -11
- package/dist/web-server/usage/codex-local-quota-collector.js.map +1 -1
- package/dist/web-server/usage/handlers.d.ts.map +1 -1
- package/dist/web-server/usage/handlers.js +1 -1
- package/dist/web-server/usage/handlers.js.map +1 -1
- package/dist/web-server/usage/native-quota-collector.d.ts +37 -9
- package/dist/web-server/usage/native-quota-collector.d.ts.map +1 -1
- package/dist/web-server/usage/native-quota-collector.js +226 -23
- package/dist/web-server/usage/native-quota-collector.js.map +1 -1
- package/package.json +1 -1
- package/scripts/ci-parity-gate.sh +31 -0
- package/scripts/generate-throw-error-baseline.js +103 -0
- package/scripts/github/stable-release-issue-cleanup-lib.mjs +51 -11
- package/scripts/hardening-inventory.js +62 -4
- package/scripts/maintainability-metrics.js +356 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Barrel for the Gemini CLI quota fetcher submodule.
|
|
3
|
+
*
|
|
4
|
+
* Re-exports the original public surface of `quota-fetcher-gemini-cli.ts`
|
|
5
|
+
* so the file at the original path can be reduced to a thin re-export
|
|
6
|
+
* (preserving import paths and signatures). Submodules are private
|
|
7
|
+
* implementation detail; only the symbols below are part of the contract.
|
|
8
|
+
*/
|
|
9
|
+
export { fetchGeminiCliQuota, fetchAllGeminiCliQuotas } from './quota-fetcher';
|
|
10
|
+
export { resolveGeminiCliProjectId } from './token-parsing';
|
|
11
|
+
export { buildGeminiCliBuckets } from './bucket-building';
|
|
12
|
+
export { sanitizeGeminiCliErrorDetail, extractGeminiCliNestedMessage, parseGeminiCliErrorBody, buildGeminiCliForbiddenActionHint, } from './error-parsing';
|
|
13
|
+
import { sanitizeGeminiCliErrorDetail, extractGeminiCliNestedMessage, parseGeminiCliErrorBody, buildGeminiCliForbiddenActionHint } from './error-parsing';
|
|
14
|
+
export declare const __testExports: {
|
|
15
|
+
sanitizeGeminiCliErrorDetail: typeof sanitizeGeminiCliErrorDetail;
|
|
16
|
+
extractGeminiCliNestedMessage: typeof extractGeminiCliNestedMessage;
|
|
17
|
+
parseGeminiCliErrorBody: typeof parseGeminiCliErrorBody;
|
|
18
|
+
buildGeminiCliForbiddenActionHint: typeof buildGeminiCliForbiddenActionHint;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cliproxy/quota/quota-fetcher-gemini-cli/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAI/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAI1D,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,GAClC,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,uBAAuB,EACvB,iCAAiC,EAClC,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,aAAa;;;;;CAKzB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Barrel for the Gemini CLI quota fetcher submodule.
|
|
4
|
+
*
|
|
5
|
+
* Re-exports the original public surface of `quota-fetcher-gemini-cli.ts`
|
|
6
|
+
* so the file at the original path can be reduced to a thin re-export
|
|
7
|
+
* (preserving import paths and signatures). Submodules are private
|
|
8
|
+
* implementation detail; only the symbols below are part of the contract.
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.__testExports = exports.buildGeminiCliForbiddenActionHint = exports.parseGeminiCliErrorBody = exports.extractGeminiCliNestedMessage = exports.sanitizeGeminiCliErrorDetail = exports.buildGeminiCliBuckets = exports.resolveGeminiCliProjectId = exports.fetchAllGeminiCliQuotas = exports.fetchGeminiCliQuota = void 0;
|
|
12
|
+
// Public API
|
|
13
|
+
var quota_fetcher_1 = require("./quota-fetcher");
|
|
14
|
+
Object.defineProperty(exports, "fetchGeminiCliQuota", { enumerable: true, get: function () { return quota_fetcher_1.fetchGeminiCliQuota; } });
|
|
15
|
+
Object.defineProperty(exports, "fetchAllGeminiCliQuotas", { enumerable: true, get: function () { return quota_fetcher_1.fetchAllGeminiCliQuotas; } });
|
|
16
|
+
// Exported helpers (also part of the public surface - used by tests and
|
|
17
|
+
// the bucket/grouping normalization tests).
|
|
18
|
+
var token_parsing_1 = require("./token-parsing");
|
|
19
|
+
Object.defineProperty(exports, "resolveGeminiCliProjectId", { enumerable: true, get: function () { return token_parsing_1.resolveGeminiCliProjectId; } });
|
|
20
|
+
var bucket_building_1 = require("./bucket-building");
|
|
21
|
+
Object.defineProperty(exports, "buildGeminiCliBuckets", { enumerable: true, get: function () { return bucket_building_1.buildGeminiCliBuckets; } });
|
|
22
|
+
// Test exports: keep the original `__testExports` bag shape stable so the
|
|
23
|
+
// existing test suite (which destructures `__testExports`) keeps working.
|
|
24
|
+
var error_parsing_1 = require("./error-parsing");
|
|
25
|
+
Object.defineProperty(exports, "sanitizeGeminiCliErrorDetail", { enumerable: true, get: function () { return error_parsing_1.sanitizeGeminiCliErrorDetail; } });
|
|
26
|
+
Object.defineProperty(exports, "extractGeminiCliNestedMessage", { enumerable: true, get: function () { return error_parsing_1.extractGeminiCliNestedMessage; } });
|
|
27
|
+
Object.defineProperty(exports, "parseGeminiCliErrorBody", { enumerable: true, get: function () { return error_parsing_1.parseGeminiCliErrorBody; } });
|
|
28
|
+
Object.defineProperty(exports, "buildGeminiCliForbiddenActionHint", { enumerable: true, get: function () { return error_parsing_1.buildGeminiCliForbiddenActionHint; } });
|
|
29
|
+
// Re-export `__testExports` as a single object to preserve the original
|
|
30
|
+
// named-const export shape (`__testExports`).
|
|
31
|
+
const error_parsing_2 = require("./error-parsing");
|
|
32
|
+
exports.__testExports = {
|
|
33
|
+
sanitizeGeminiCliErrorDetail: error_parsing_2.sanitizeGeminiCliErrorDetail,
|
|
34
|
+
extractGeminiCliNestedMessage: error_parsing_2.extractGeminiCliNestedMessage,
|
|
35
|
+
parseGeminiCliErrorBody: error_parsing_2.parseGeminiCliErrorBody,
|
|
36
|
+
buildGeminiCliForbiddenActionHint: error_parsing_2.buildGeminiCliForbiddenActionHint,
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cliproxy/quota/quota-fetcher-gemini-cli/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,aAAa;AACb,iDAA+E;AAAtE,oHAAA,mBAAmB,OAAA;AAAE,wHAAA,uBAAuB,OAAA;AAErD,wEAAwE;AACxE,4CAA4C;AAC5C,iDAA4D;AAAnD,0HAAA,yBAAyB,OAAA;AAClC,qDAA0D;AAAjD,wHAAA,qBAAqB,OAAA;AAE9B,0EAA0E;AAC1E,0EAA0E;AAC1E,iDAKyB;AAJvB,6HAAA,4BAA4B,OAAA;AAC5B,8HAAA,6BAA6B,OAAA;AAC7B,wHAAA,uBAAuB,OAAA;AACvB,kIAAA,iCAAiC,OAAA;AAGnC,wEAAwE;AACxE,8CAA8C;AAC9C,mDAKyB;AAEZ,QAAA,aAAa,GAAG;IAC3B,4BAA4B,EAA5B,4CAA4B;IAC5B,6BAA6B,EAA7B,6CAA6B;IAC7B,uBAAuB,EAAvB,uCAAuB;IACvB,iCAAiC,EAAjC,iDAAiC;CAClC,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Managed and direct HTTP request machinery for the Gemini CLI quota fetcher.
|
|
3
|
+
*
|
|
4
|
+
* Wraps the two upstream call paths used when fetching Gemini CLI quota and
|
|
5
|
+
* supplementary metadata:
|
|
6
|
+
* - managed: delegated through the CLIProxy management API (uses $TOKEN$
|
|
7
|
+
* substitution so the local process never holds the live token)
|
|
8
|
+
* - direct: bearer-token fetch against the Google Cloud Code endpoint
|
|
9
|
+
*
|
|
10
|
+
* The preferred path is configurable per call. On a 401 from the direct path,
|
|
11
|
+
* the managed path is retried as a delegated-auth refresh fallback. A
|
|
12
|
+
* `GeminiManagedAuthUnavailableError` is thrown when managed auth is required
|
|
13
|
+
* but unreachable, so callers can surface a retryable failure result.
|
|
14
|
+
*/
|
|
15
|
+
/// <reference types="bun-types" />
|
|
16
|
+
/// <reference types="node" />
|
|
17
|
+
import type { ManagedGeminiAuthContext, ManagedGeminiAuthLookupResult, ManagedGeminiRequestResult, ManagedResponse, ManagementAuthFile } from './types';
|
|
18
|
+
/**
|
|
19
|
+
* Thrown when Gemini delegated auth refresh via the CLIProxy management API
|
|
20
|
+
* is required but temporarily unreachable. Callers translate this into a
|
|
21
|
+
* retryable failure result.
|
|
22
|
+
*/
|
|
23
|
+
export declare class GeminiManagedAuthUnavailableError extends Error {
|
|
24
|
+
constructor();
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Read a fetch Response into the normalized {@link ManagedResponse} shape.
|
|
28
|
+
* `viaManagement` marks whether the response came through the managed API so
|
|
29
|
+
* downstream log messages can attribute the source correctly.
|
|
30
|
+
*/
|
|
31
|
+
export declare function readManagedResponse(response: Response, viaManagement: boolean): Promise<ManagedResponse>;
|
|
32
|
+
/**
|
|
33
|
+
* Check whether a filename matches the Gemini CLI auth file naming patterns.
|
|
34
|
+
* Recognizes three patterns:
|
|
35
|
+
* - legacy: gemini-*.json
|
|
36
|
+
* - new: *-gen-lang-client-*.json
|
|
37
|
+
* - email: contains "@" (verified against type inside the payload later)
|
|
38
|
+
*/
|
|
39
|
+
export declare function isGeminiAuthFile(filename: string): boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Determine whether a management-API auth-file descriptor belongs to the
|
|
42
|
+
* given Gemini account. Matches on provider/type normalized to "gemini",
|
|
43
|
+
* then on email, filename, or sanitized email substring.
|
|
44
|
+
*/
|
|
45
|
+
export declare function isGeminiAuthFileForAccount(file: ManagementAuthFile, accountId: string): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Look up the management-API auth index for a Gemini account.
|
|
48
|
+
* Hits `/v0/management/auth-files` and matches the entry for this account.
|
|
49
|
+
* Returns `{ unavailable: true }` if the management API is unreachable or
|
|
50
|
+
* returns a non-OK response, so callers can fall back to direct auth.
|
|
51
|
+
*/
|
|
52
|
+
export declare function findManagedGeminiAuthIndex(accountId: string, timeoutMs: number): Promise<ManagedGeminiAuthLookupResult>;
|
|
53
|
+
/**
|
|
54
|
+
* Look up the management auth index for a Gemini account, deduping concurrent
|
|
55
|
+
* lookups for the same account via the shared {@link ManagedGeminiAuthContext}.
|
|
56
|
+
* The first caller wins; subsequent callers await the same promise.
|
|
57
|
+
*/
|
|
58
|
+
export declare function getManagedGeminiAuthIndex(accountId: string, timeoutMs: number, context?: ManagedGeminiAuthContext): Promise<ManagedGeminiAuthLookupResult>;
|
|
59
|
+
/**
|
|
60
|
+
* Perform a single upstream request to the Gemini CLI API via the CLIProxy
|
|
61
|
+
* management `/v0/management/api-call` endpoint. Uses `$TOKEN$` substitution
|
|
62
|
+
* so the live token never leaves the management API. Returns
|
|
63
|
+
* `{ unavailable: true }` if the management path is unreachable; returns
|
|
64
|
+
* `{ response: null, unavailable: false }` if the request succeeded but no
|
|
65
|
+
* matching auth file was found.
|
|
66
|
+
*/
|
|
67
|
+
export declare function performManagedGeminiRequest(accountId: string, url: string, body: string, timeoutMs: number, authContext?: ManagedGeminiAuthContext): Promise<ManagedGeminiRequestResult>;
|
|
68
|
+
/**
|
|
69
|
+
* Perform a Gemini CLI upstream request, preferring the managed path when
|
|
70
|
+
* requested and falling back to direct bearer-token auth. On a 401 from the
|
|
71
|
+
* direct path, retries via managed auth as a delegated-auth refresh; throws
|
|
72
|
+
* {@link GeminiManagedAuthUnavailableError} if that retry is unreachable.
|
|
73
|
+
*
|
|
74
|
+
* @param accountId Account identifier (email), used for managed auth lookup.
|
|
75
|
+
* @param accessToken Bearer token for the direct path. Never logged.
|
|
76
|
+
* @param url Target Gemini CLI API URL.
|
|
77
|
+
* @param body JSON request body string.
|
|
78
|
+
* @param preferManagement When true, try the managed path first.
|
|
79
|
+
* @param authContext Optional shared context to dedupe auth-index lookups.
|
|
80
|
+
*/
|
|
81
|
+
export declare function performGeminiCliRequest(accountId: string, accessToken: string, url: string, body: string, preferManagement?: boolean, authContext?: ManagedGeminiAuthContext): Promise<ManagedResponse>;
|
|
82
|
+
//# sourceMappingURL=managed-request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-request.d.ts","sourceRoot":"","sources":["../../../../src/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;;;AAWH,OAAO,KAAK,EACV,wBAAwB,EACxB,6BAA6B,EAC7B,0BAA0B,EAC1B,eAAe,EAEf,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB;;;;GAIG;AACH,qBAAa,iCAAkC,SAAQ,KAAK;;CAK3D;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,eAAe,CAAC,CAQ1B;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAS1D;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAwB/F;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC9C,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,6BAA6B,CAAC,CAuBxC;AAED;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,6BAA6B,CAAC,CAOxC;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,wBAAwB,GACrC,OAAO,CAAC,0BAA0B,CAAC,CA2DrC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,gBAAgB,UAAQ,EACxB,WAAW,CAAC,EAAE,wBAAwB,GACrC,OAAO,CAAC,eAAe,CAAC,CAmE1B"}
|
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Managed and direct HTTP request machinery for the Gemini CLI quota fetcher.
|
|
4
|
+
*
|
|
5
|
+
* Wraps the two upstream call paths used when fetching Gemini CLI quota and
|
|
6
|
+
* supplementary metadata:
|
|
7
|
+
* - managed: delegated through the CLIProxy management API (uses $TOKEN$
|
|
8
|
+
* substitution so the local process never holds the live token)
|
|
9
|
+
* - direct: bearer-token fetch against the Google Cloud Code endpoint
|
|
10
|
+
*
|
|
11
|
+
* The preferred path is configurable per call. On a 401 from the direct path,
|
|
12
|
+
* the managed path is retried as a delegated-auth refresh fallback. A
|
|
13
|
+
* `GeminiManagedAuthUnavailableError` is thrown when managed auth is required
|
|
14
|
+
* but unreachable, so callers can surface a retryable failure result.
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.performGeminiCliRequest = exports.performManagedGeminiRequest = exports.getManagedGeminiAuthIndex = exports.findManagedGeminiAuthIndex = exports.isGeminiAuthFileForAccount = exports.isGeminiAuthFile = exports.readManagedResponse = exports.GeminiManagedAuthUnavailableError = void 0;
|
|
18
|
+
const proxy_target_resolver_1 = require("../../proxy/proxy-target-resolver");
|
|
19
|
+
const provider_capabilities_1 = require("../../provider-capabilities");
|
|
20
|
+
const auth_utils_1 = require("../../auth/auth-utils");
|
|
21
|
+
const constants_1 = require("./constants");
|
|
22
|
+
const shared_utils_1 = require("./shared-utils");
|
|
23
|
+
/**
|
|
24
|
+
* Thrown when Gemini delegated auth refresh via the CLIProxy management API
|
|
25
|
+
* is required but temporarily unreachable. Callers translate this into a
|
|
26
|
+
* retryable failure result.
|
|
27
|
+
*/
|
|
28
|
+
class GeminiManagedAuthUnavailableError extends Error {
|
|
29
|
+
constructor() {
|
|
30
|
+
super('CLIProxy managed Gemini auth is temporarily unavailable');
|
|
31
|
+
this.name = 'GeminiManagedAuthUnavailableError';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.GeminiManagedAuthUnavailableError = GeminiManagedAuthUnavailableError;
|
|
35
|
+
/**
|
|
36
|
+
* Read a fetch Response into the normalized {@link ManagedResponse} shape.
|
|
37
|
+
* `viaManagement` marks whether the response came through the managed API so
|
|
38
|
+
* downstream log messages can attribute the source correctly.
|
|
39
|
+
*/
|
|
40
|
+
async function readManagedResponse(response, viaManagement) {
|
|
41
|
+
const bodyText = await response.text();
|
|
42
|
+
return {
|
|
43
|
+
status: response.status,
|
|
44
|
+
bodyText,
|
|
45
|
+
json: (0, shared_utils_1.safeParseJson)(bodyText),
|
|
46
|
+
viaManagement,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
exports.readManagedResponse = readManagedResponse;
|
|
50
|
+
/**
|
|
51
|
+
* Check whether a filename matches the Gemini CLI auth file naming patterns.
|
|
52
|
+
* Recognizes three patterns:
|
|
53
|
+
* - legacy: gemini-*.json
|
|
54
|
+
* - new: *-gen-lang-client-*.json
|
|
55
|
+
* - email: contains "@" (verified against type inside the payload later)
|
|
56
|
+
*/
|
|
57
|
+
function isGeminiAuthFile(filename) {
|
|
58
|
+
if (!filename.endsWith('.json'))
|
|
59
|
+
return false;
|
|
60
|
+
// Legacy pattern: gemini-email.json
|
|
61
|
+
if (filename.startsWith('gemini-'))
|
|
62
|
+
return true;
|
|
63
|
+
// New pattern: email-gen-lang-client-projectId.json
|
|
64
|
+
if (filename.includes('-gen-lang-client-'))
|
|
65
|
+
return true;
|
|
66
|
+
// Check if contains @ (email pattern) - will verify type inside
|
|
67
|
+
if (filename.includes('@'))
|
|
68
|
+
return true;
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
exports.isGeminiAuthFile = isGeminiAuthFile;
|
|
72
|
+
/**
|
|
73
|
+
* Determine whether a management-API auth-file descriptor belongs to the
|
|
74
|
+
* given Gemini account. Matches on provider/type normalized to "gemini",
|
|
75
|
+
* then on email, filename, or sanitized email substring.
|
|
76
|
+
*/
|
|
77
|
+
function isGeminiAuthFileForAccount(file, accountId) {
|
|
78
|
+
const rawProvider = (0, shared_utils_1.normalizeStringValue)(file.provider ?? file.type);
|
|
79
|
+
if (!rawProvider || (0, provider_capabilities_1.mapExternalProviderName)(rawProvider) !== 'gemini') {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
const email = (0, shared_utils_1.normalizeStringValue)(file.email);
|
|
83
|
+
const normalizedAccountId = accountId.trim().toLowerCase();
|
|
84
|
+
if (email?.toLowerCase() === normalizedAccountId) {
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
const normalizedName = (0, shared_utils_1.normalizeStringValue)(file.name);
|
|
88
|
+
if (!normalizedName) {
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
const normalizedFileName = normalizedName.toLowerCase();
|
|
92
|
+
const sanitizedAccount = (0, auth_utils_1.sanitizeEmail)(accountId).toLowerCase();
|
|
93
|
+
return (normalizedFileName === `gemini-${sanitizedAccount}.json` ||
|
|
94
|
+
normalizedFileName.startsWith(`${normalizedAccountId}-gen-lang-client-`) ||
|
|
95
|
+
normalizedFileName.includes(sanitizedAccount));
|
|
96
|
+
}
|
|
97
|
+
exports.isGeminiAuthFileForAccount = isGeminiAuthFileForAccount;
|
|
98
|
+
/**
|
|
99
|
+
* Look up the management-API auth index for a Gemini account.
|
|
100
|
+
* Hits `/v0/management/auth-files` and matches the entry for this account.
|
|
101
|
+
* Returns `{ unavailable: true }` if the management API is unreachable or
|
|
102
|
+
* returns a non-OK response, so callers can fall back to direct auth.
|
|
103
|
+
*/
|
|
104
|
+
async function findManagedGeminiAuthIndex(accountId, timeoutMs) {
|
|
105
|
+
const target = (0, proxy_target_resolver_1.getProxyTarget)();
|
|
106
|
+
const controller = new AbortController();
|
|
107
|
+
const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
|
|
108
|
+
try {
|
|
109
|
+
const response = await fetch((0, proxy_target_resolver_1.buildProxyUrl)(target, '/v0/management/auth-files'), {
|
|
110
|
+
signal: controller.signal,
|
|
111
|
+
headers: (0, proxy_target_resolver_1.buildManagementHeaders)(target),
|
|
112
|
+
});
|
|
113
|
+
clearTimeout(timeoutId);
|
|
114
|
+
if (!response.ok) {
|
|
115
|
+
return { authIndex: null, unavailable: true };
|
|
116
|
+
}
|
|
117
|
+
const data = (await response.json());
|
|
118
|
+
const match = data.files?.find((file) => isGeminiAuthFileForAccount(file, accountId));
|
|
119
|
+
return { authIndex: match?.auth_index ?? null, unavailable: false };
|
|
120
|
+
}
|
|
121
|
+
catch {
|
|
122
|
+
clearTimeout(timeoutId);
|
|
123
|
+
return { authIndex: null, unavailable: true };
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
exports.findManagedGeminiAuthIndex = findManagedGeminiAuthIndex;
|
|
127
|
+
/**
|
|
128
|
+
* Look up the management auth index for a Gemini account, deduping concurrent
|
|
129
|
+
* lookups for the same account via the shared {@link ManagedGeminiAuthContext}.
|
|
130
|
+
* The first caller wins; subsequent callers await the same promise.
|
|
131
|
+
*/
|
|
132
|
+
async function getManagedGeminiAuthIndex(accountId, timeoutMs, context) {
|
|
133
|
+
if (!context) {
|
|
134
|
+
return await findManagedGeminiAuthIndex(accountId, timeoutMs);
|
|
135
|
+
}
|
|
136
|
+
context.authIndexLookupPromise ?? (context.authIndexLookupPromise = findManagedGeminiAuthIndex(accountId, timeoutMs));
|
|
137
|
+
return await context.authIndexLookupPromise;
|
|
138
|
+
}
|
|
139
|
+
exports.getManagedGeminiAuthIndex = getManagedGeminiAuthIndex;
|
|
140
|
+
/**
|
|
141
|
+
* Perform a single upstream request to the Gemini CLI API via the CLIProxy
|
|
142
|
+
* management `/v0/management/api-call` endpoint. Uses `$TOKEN$` substitution
|
|
143
|
+
* so the live token never leaves the management API. Returns
|
|
144
|
+
* `{ unavailable: true }` if the management path is unreachable; returns
|
|
145
|
+
* `{ response: null, unavailable: false }` if the request succeeded but no
|
|
146
|
+
* matching auth file was found.
|
|
147
|
+
*/
|
|
148
|
+
async function performManagedGeminiRequest(accountId, url, body, timeoutMs, authContext) {
|
|
149
|
+
const deadlineMs = Date.now() + timeoutMs;
|
|
150
|
+
const lookupResult = await getManagedGeminiAuthIndex(accountId, (0, shared_utils_1.getRemainingTimeoutMs)(deadlineMs), authContext);
|
|
151
|
+
if (lookupResult.unavailable) {
|
|
152
|
+
return { response: null, unavailable: true };
|
|
153
|
+
}
|
|
154
|
+
const authIndex = lookupResult.authIndex;
|
|
155
|
+
if (authIndex === null || authIndex === undefined) {
|
|
156
|
+
return { response: null, unavailable: false };
|
|
157
|
+
}
|
|
158
|
+
const target = (0, proxy_target_resolver_1.getProxyTarget)();
|
|
159
|
+
const controller = new AbortController();
|
|
160
|
+
const timeoutId = setTimeout(() => controller.abort(), (0, shared_utils_1.getRemainingTimeoutMs)(deadlineMs));
|
|
161
|
+
try {
|
|
162
|
+
const response = await fetch((0, proxy_target_resolver_1.buildProxyUrl)(target, '/v0/management/api-call'), {
|
|
163
|
+
method: 'POST',
|
|
164
|
+
signal: controller.signal,
|
|
165
|
+
headers: (0, proxy_target_resolver_1.buildManagementHeaders)(target, {
|
|
166
|
+
'Content-Type': 'application/json',
|
|
167
|
+
}),
|
|
168
|
+
body: JSON.stringify({
|
|
169
|
+
auth_index: authIndex,
|
|
170
|
+
method: 'POST',
|
|
171
|
+
url,
|
|
172
|
+
header: {
|
|
173
|
+
Authorization: 'Bearer $TOKEN$',
|
|
174
|
+
'Content-Type': 'application/json',
|
|
175
|
+
},
|
|
176
|
+
data: body,
|
|
177
|
+
}),
|
|
178
|
+
});
|
|
179
|
+
clearTimeout(timeoutId);
|
|
180
|
+
if (!response.ok) {
|
|
181
|
+
return { response: null, unavailable: true };
|
|
182
|
+
}
|
|
183
|
+
const apiResponse = (await response.json());
|
|
184
|
+
const bodyText = typeof apiResponse.body === 'string' ? apiResponse.body : '';
|
|
185
|
+
return {
|
|
186
|
+
response: {
|
|
187
|
+
status: typeof apiResponse.status_code === 'number' ? apiResponse.status_code : 500,
|
|
188
|
+
bodyText,
|
|
189
|
+
json: (0, shared_utils_1.safeParseJson)(bodyText),
|
|
190
|
+
viaManagement: true,
|
|
191
|
+
},
|
|
192
|
+
unavailable: false,
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
catch {
|
|
196
|
+
clearTimeout(timeoutId);
|
|
197
|
+
return { response: null, unavailable: true };
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
exports.performManagedGeminiRequest = performManagedGeminiRequest;
|
|
201
|
+
/**
|
|
202
|
+
* Perform a Gemini CLI upstream request, preferring the managed path when
|
|
203
|
+
* requested and falling back to direct bearer-token auth. On a 401 from the
|
|
204
|
+
* direct path, retries via managed auth as a delegated-auth refresh; throws
|
|
205
|
+
* {@link GeminiManagedAuthUnavailableError} if that retry is unreachable.
|
|
206
|
+
*
|
|
207
|
+
* @param accountId Account identifier (email), used for managed auth lookup.
|
|
208
|
+
* @param accessToken Bearer token for the direct path. Never logged.
|
|
209
|
+
* @param url Target Gemini CLI API URL.
|
|
210
|
+
* @param body JSON request body string.
|
|
211
|
+
* @param preferManagement When true, try the managed path first.
|
|
212
|
+
* @param authContext Optional shared context to dedupe auth-index lookups.
|
|
213
|
+
*/
|
|
214
|
+
async function performGeminiCliRequest(accountId, accessToken, url, body, preferManagement = false, authContext) {
|
|
215
|
+
let managementAttempted = false;
|
|
216
|
+
let managementUnavailable = false;
|
|
217
|
+
if (preferManagement) {
|
|
218
|
+
managementAttempted = true;
|
|
219
|
+
const managedResult = await performManagedGeminiRequest(accountId, url, body, constants_1.MANAGEMENT_API_TIMEOUT_MS, authContext);
|
|
220
|
+
managementUnavailable = managedResult.unavailable;
|
|
221
|
+
if (managedResult.response) {
|
|
222
|
+
return managedResult.response;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
const controller = new AbortController();
|
|
226
|
+
const timeoutId = setTimeout(() => controller.abort(), managementAttempted ? constants_1.SECONDARY_REQUEST_TIMEOUT_MS : constants_1.MANAGEMENT_API_TIMEOUT_MS);
|
|
227
|
+
try {
|
|
228
|
+
const response = await fetch(url, {
|
|
229
|
+
method: 'POST',
|
|
230
|
+
signal: controller.signal,
|
|
231
|
+
headers: {
|
|
232
|
+
Authorization: `Bearer ${accessToken}`,
|
|
233
|
+
'Content-Type': 'application/json',
|
|
234
|
+
},
|
|
235
|
+
body,
|
|
236
|
+
});
|
|
237
|
+
clearTimeout(timeoutId);
|
|
238
|
+
const directResult = await readManagedResponse(response, false);
|
|
239
|
+
if (directResult.status !== 401) {
|
|
240
|
+
return directResult;
|
|
241
|
+
}
|
|
242
|
+
if (managementAttempted) {
|
|
243
|
+
if (managementUnavailable) {
|
|
244
|
+
throw new GeminiManagedAuthUnavailableError();
|
|
245
|
+
}
|
|
246
|
+
return directResult;
|
|
247
|
+
}
|
|
248
|
+
const managedResult = await performManagedGeminiRequest(accountId, url, body, constants_1.SECONDARY_REQUEST_TIMEOUT_MS, authContext);
|
|
249
|
+
if (managedResult.response) {
|
|
250
|
+
return managedResult.response;
|
|
251
|
+
}
|
|
252
|
+
if (managedResult.unavailable) {
|
|
253
|
+
throw new GeminiManagedAuthUnavailableError();
|
|
254
|
+
}
|
|
255
|
+
return directResult;
|
|
256
|
+
}
|
|
257
|
+
catch (error) {
|
|
258
|
+
clearTimeout(timeoutId);
|
|
259
|
+
throw error;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
exports.performGeminiCliRequest = performGeminiCliRequest;
|
|
263
|
+
//# sourceMappingURL=managed-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-request.js","sourceRoot":"","sources":["../../../../src/cliproxy/quota/quota-fetcher-gemini-cli/managed-request.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Top-level quota fetch orchestration for Gemini CLI accounts.
|
|
3
|
+
*
|
|
4
|
+
* Coordinates auth-file discovery, the managed/direct upstream quota request,
|
|
5
|
+
* supplementary tier/credit metadata, and structured failure-result building.
|
|
6
|
+
* Preserves the structured logging from the original god file (events:
|
|
7
|
+
* gemini_cli.fetch_start, gemini_cli.auth_file_missing, gemini_cli.token_expired,
|
|
8
|
+
* gemini_cli.missing_project_id, gemini_cli.api_status, gemini_cli.buckets_found,
|
|
9
|
+
* gemini_cli.quota_fetch_error). Token values are never logged.
|
|
10
|
+
*/
|
|
11
|
+
import type { GeminiCliQuotaResult } from '../quota-types';
|
|
12
|
+
import type { GeminiCliAuthData } from './types';
|
|
13
|
+
/**
|
|
14
|
+
* Internal helper: fetch quota with already-validated auth data.
|
|
15
|
+
*
|
|
16
|
+
* Extracted to support the auto-refresh retry path: the caller resolves auth
|
|
17
|
+
* data once (legacy file or managed), then this function performs the upstream
|
|
18
|
+
* quota request and supplementary metadata fetch in parallel. On success it
|
|
19
|
+
* persists the resolved tier back to the account via `setAccountTier`.
|
|
20
|
+
*/
|
|
21
|
+
export declare function fetchWithAuthData(authData: GeminiCliAuthData, accountId: string, verbose: boolean): Promise<GeminiCliQuotaResult>;
|
|
22
|
+
/**
|
|
23
|
+
* Fetch quota for a single Gemini CLI account.
|
|
24
|
+
*
|
|
25
|
+
* Reads the on-disk auth file, emits the structured `gemini_cli.fetch_start`
|
|
26
|
+
* and `gemini_cli.auth_file_missing` / `gemini_cli.token_expired` log events
|
|
27
|
+
* (gated on `verbose`), and delegates to {@link fetchWithAuthData}. Token
|
|
28
|
+
* values are never logged; only the expiry label is surfaced.
|
|
29
|
+
*
|
|
30
|
+
* @param accountId - Account identifier (email)
|
|
31
|
+
* @param verbose - Show detailed diagnostics
|
|
32
|
+
* @returns Quota result with buckets, percentages, tier, and entitlement evidence
|
|
33
|
+
*/
|
|
34
|
+
export declare function fetchGeminiCliQuota(accountId: string, verbose?: boolean): Promise<GeminiCliQuotaResult>;
|
|
35
|
+
/**
|
|
36
|
+
* Fetch quota for all configured Gemini CLI accounts in parallel.
|
|
37
|
+
*
|
|
38
|
+
* @param verbose - Show detailed diagnostics (forwarded to each per-account fetch)
|
|
39
|
+
* @returns Array of `{ account, quota }` entries, one per active Gemini account.
|
|
40
|
+
* Returns an empty array when there are no Gemini accounts configured.
|
|
41
|
+
*/
|
|
42
|
+
export declare function fetchAllGeminiCliQuotas(verbose?: boolean): Promise<{
|
|
43
|
+
account: string;
|
|
44
|
+
quota: GeminiCliQuotaResult;
|
|
45
|
+
}[]>;
|
|
46
|
+
//# sourceMappingURL=quota-fetcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quota-fetcher.d.ts","sourceRoot":"","sources":["../../../../src/cliproxy/quota/quota-fetcher-gemini-cli/quota-fetcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAQ3D,OAAO,KAAK,EAAE,iBAAiB,EAAoD,MAAM,SAAS,CAAC;AAEnG;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,oBAAoB,CAAC,CA8H/B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,UAAQ,GACd,OAAO,CAAC,oBAAoB,CAAC,CAoC/B;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,UAAQ,GACd,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,oBAAoB,CAAA;CAAE,EAAE,CAAC,CAe7D"}
|