@eddyskywalker/dsh-chatgpt-subscription 0.4.0 → 0.5.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.
Files changed (78) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/lib/client.js +703 -534
  3. package/lib/client.js.map +1 -1
  4. package/lib/index.js +5106 -3793
  5. package/lib/types/client/CodexSubscriptionSection.d.ts +1 -1
  6. package/lib/types/client/CodexSubscriptionSection.d.ts.map +1 -1
  7. package/lib/types/client/antigravity/AntigravitySection.d.ts.map +1 -1
  8. package/lib/types/client/antigravity/locales.d.ts +24 -192
  9. package/lib/types/client/antigravity/locales.d.ts.map +1 -1
  10. package/lib/types/client/api.d.ts +13 -1
  11. package/lib/types/client/api.d.ts.map +1 -1
  12. package/lib/types/client/command-code/CommandCodeSection.d.ts.map +1 -1
  13. package/lib/types/client/command-code/locales.d.ts +66 -201
  14. package/lib/types/client/command-code/locales.d.ts.map +1 -1
  15. package/lib/types/client/common/AccountPoolSection.d.ts +41 -0
  16. package/lib/types/client/common/AccountPoolSection.d.ts.map +1 -0
  17. package/lib/types/client/common/account-pool-labels.d.ts +43 -0
  18. package/lib/types/client/common/account-pool-labels.d.ts.map +1 -0
  19. package/lib/types/client/common/styles.d.ts +11 -0
  20. package/lib/types/client/common/styles.d.ts.map +1 -0
  21. package/lib/types/client/index.d.ts.map +1 -1
  22. package/lib/types/client/kimi-code/KimiCodeSection.d.ts.map +1 -1
  23. package/lib/types/client/kimi-code/locales.d.ts +63 -336
  24. package/lib/types/client/kimi-code/locales.d.ts.map +1 -1
  25. package/lib/types/client/locales.d.ts +41 -1
  26. package/lib/types/client/locales.d.ts.map +1 -1
  27. package/lib/types/host/antigravity/account-pool.d.ts +15 -5
  28. package/lib/types/host/antigravity/account-pool.d.ts.map +1 -1
  29. package/lib/types/host/antigravity/routes.d.ts.map +1 -1
  30. package/lib/types/host/codex-account-pool.d.ts +64 -0
  31. package/lib/types/host/codex-account-pool.d.ts.map +1 -0
  32. package/lib/types/host/command-code/account-pool.d.ts +60 -0
  33. package/lib/types/host/command-code/account-pool.d.ts.map +1 -0
  34. package/lib/types/host/command-code/adapter.d.ts +11 -1
  35. package/lib/types/host/command-code/adapter.d.ts.map +1 -1
  36. package/lib/types/host/command-code/client.d.ts +17 -1
  37. package/lib/types/host/command-code/client.d.ts.map +1 -1
  38. package/lib/types/host/command-code/oauth.d.ts +4 -1
  39. package/lib/types/host/command-code/oauth.d.ts.map +1 -1
  40. package/lib/types/host/command-code/routes.d.ts +11 -2
  41. package/lib/types/host/command-code/routes.d.ts.map +1 -1
  42. package/lib/types/host/common/account-pool.d.ts +179 -0
  43. package/lib/types/host/common/account-pool.d.ts.map +1 -0
  44. package/lib/types/host/common/home.d.ts +8 -0
  45. package/lib/types/host/common/home.d.ts.map +1 -0
  46. package/lib/types/host/kimi-code/account-pool.d.ts +48 -0
  47. package/lib/types/host/kimi-code/account-pool.d.ts.map +1 -0
  48. package/lib/types/host/kimi-code/adapter.d.ts +10 -1
  49. package/lib/types/host/kimi-code/adapter.d.ts.map +1 -1
  50. package/lib/types/host/kimi-code/client.d.ts +16 -0
  51. package/lib/types/host/kimi-code/client.d.ts.map +1 -1
  52. package/lib/types/host/kimi-code/oauth.d.ts +2 -0
  53. package/lib/types/host/kimi-code/oauth.d.ts.map +1 -1
  54. package/lib/types/host/kimi-code/routes.d.ts +10 -2
  55. package/lib/types/host/kimi-code/routes.d.ts.map +1 -1
  56. package/lib/types/host/oauth-service.d.ts +41 -2
  57. package/lib/types/host/oauth-service.d.ts.map +1 -1
  58. package/lib/types/host/preset-sync.d.ts +7 -1
  59. package/lib/types/host/preset-sync.d.ts.map +1 -1
  60. package/lib/types/host/responses-client.d.ts +15 -0
  61. package/lib/types/host/responses-client.d.ts.map +1 -1
  62. package/lib/types/host/routes.d.ts +2 -1
  63. package/lib/types/host/routes.d.ts.map +1 -1
  64. package/lib/types/host/usage-service.d.ts +15 -0
  65. package/lib/types/host/usage-service.d.ts.map +1 -1
  66. package/lib/types/index.d.ts +5 -0
  67. package/lib/types/index.d.ts.map +1 -1
  68. package/lib/types/shared/account-pool-contracts.d.ts +47 -0
  69. package/lib/types/shared/account-pool-contracts.d.ts.map +1 -0
  70. package/lib/types/shared/antigravity-contracts.d.ts +4 -10
  71. package/lib/types/shared/antigravity-contracts.d.ts.map +1 -1
  72. package/lib/types/shared/command-code-contracts.d.ts +14 -0
  73. package/lib/types/shared/command-code-contracts.d.ts.map +1 -1
  74. package/lib/types/shared/contracts.d.ts +6 -0
  75. package/lib/types/shared/contracts.d.ts.map +1 -1
  76. package/lib/types/shared/kimi-code-contracts.d.ts +14 -0
  77. package/lib/types/shared/kimi-code-contracts.d.ts.map +1 -1
  78. package/package.json +1 -1
@@ -0,0 +1,41 @@
1
+ import React, { type ReactNode } from 'react';
2
+ import type { AccountPoolStatusDto, AccountRotationStrategy, PoolAccountSummaryDto } from '../../shared/account-pool-contracts.ts';
3
+ import { type AccountPoolLabels } from './account-pool-labels.ts';
4
+ export type { AccountPoolLabels } from './account-pool-labels.ts';
5
+ export interface AccountPoolSectionProps<TAccount extends PoolAccountSummaryDto = PoolAccountSummaryDto> extends Omit<Pick<AccountPoolStatusDto, 'activeAccountId' | 'rotationStrategy'>, 'accounts'> {
6
+ accounts: TAccount[];
7
+ /** Label set of the hosting tab; see {@link AccountPoolLabels}. */
8
+ labels: AccountPoolLabels;
9
+ /** Action currently in flight, used to disable every control at once. */
10
+ busy: string | null;
11
+ /** Overrides the login button text while a sign-in flow is running. */
12
+ loginBusyLabel?: string;
13
+ onLogin(): void;
14
+ onSetPrimary(accountId: string): void;
15
+ onDelete(accountId: string): void;
16
+ onClearCooldown(accountId: string): void;
17
+ /** Offered on an account whose credential no longer authenticates. */
18
+ onRelogin?(accountId: string): void;
19
+ onSetStrategy(strategy: AccountRotationStrategy): void;
20
+ /** Provider-specific detail rows, rendered before the shared ones. */
21
+ renderDetails?(account: TAccount): ReactNode;
22
+ /** Value shown beside the storage label; defaults to a generic description. */
23
+ storageValue?: string;
24
+ /** Extra controls inside the group, after the account list. */
25
+ children?: ReactNode;
26
+ }
27
+ /** Format one account timestamp the way every tab renders it. */
28
+ export declare function formatAccountDate(ms?: number): string;
29
+ /** Whole minutes left in a cooldown, never below one. */
30
+ export declare function cooldownMinutesLeft(cooldownUntil: number, now?: number): number;
31
+ /** Whether one account currently carries a live 429 cooldown. */
32
+ export declare function isCoolingDown(account: PoolAccountSummaryDto, now?: number): boolean;
33
+ /**
34
+ * The account-management group every provider tab renders.
35
+ *
36
+ * One component rather than four near-identical blocks: the account card, its
37
+ * badges, the rotation-strategy picker and the storage notice are identical
38
+ * across providers, and only the identity details differ.
39
+ */
40
+ export declare function AccountPoolSection<TAccount extends PoolAccountSummaryDto = PoolAccountSummaryDto>(props: AccountPoolSectionProps<TAccount>): React.ReactElement;
41
+ //# sourceMappingURL=AccountPoolSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountPoolSection.d.ts","sourceRoot":"","sources":["../../../../src/client/common/AccountPoolSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAC7C,OAAO,KAAK,EACV,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAElF,YAAY,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAEjE,MAAM,WAAW,uBAAuB,CACtC,QAAQ,SAAS,qBAAqB,GAAG,qBAAqB,CAC9D,SAAQ,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,iBAAiB,GAAG,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAC5F,QAAQ,EAAE,QAAQ,EAAE,CAAA;IACpB,mEAAmE;IACnE,MAAM,EAAE,iBAAiB,CAAA;IACzB,yEAAyE;IACzE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,uEAAuE;IACvE,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,OAAO,IAAI,IAAI,CAAA;IACf,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,sEAAsE;IACtE,SAAS,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,aAAa,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI,CAAA;IACtD,sEAAsE;IACtE,aAAa,CAAC,CAAC,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC5C,+EAA+E;IAC/E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED,iEAAiE;AACjE,wBAAgB,iBAAiB,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAOrD;AAED,yDAAyD;AACzD,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,SAAa,GAAG,MAAM,CAEnF;AAED,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,OAAO,EAAE,qBAAqB,EAAE,GAAG,SAAa,GAAG,OAAO,CAEvF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,SAAS,qBAAqB,GAAG,qBAAqB,EAC/F,KAAK,EAAE,uBAAuB,CAAC,QAAQ,CAAC,GACvC,KAAK,CAAC,YAAY,CAqIpB"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Labels every provider tab's account-pool card renders.
3
+ *
4
+ * They live here rather than in each provider's locale file so the four tabs
5
+ * cannot drift apart in wording, ordering or meaning. The active locale is the
6
+ * one the host already selects per provider; each `locales.ts` spreads the set
7
+ * it needs and may override individual keys.
8
+ */
9
+ /** Labels the shared card needs, in the order its markup uses them. */
10
+ export interface AccountPoolLabels {
11
+ accountPool: string;
12
+ addAccount: string;
13
+ /** `{count}` is replaced with the number of signed-in accounts. */
14
+ accountCount: string;
15
+ primaryAccount: string;
16
+ activeAccount: string;
17
+ setPrimary: string;
18
+ deleteAccount: string;
19
+ cooling: string;
20
+ /** `{minutes}` is replaced with the remaining cooldown in whole minutes. */
21
+ cooldownLeft: string;
22
+ clearCooldown: string;
23
+ needsRelogin: string;
24
+ relogin: string;
25
+ rotationStrategy: string;
26
+ strategySequential: string;
27
+ strategyRoundRobin: string;
28
+ strategySticky: string;
29
+ noAccounts: string;
30
+ storage: string;
31
+ storageNotice: string;
32
+ email: string;
33
+ expires: string;
34
+ lastUsed: string;
35
+ accountId: string;
36
+ }
37
+ /** Chinese labels; the wording the Antigravity card shipped with. */
38
+ export declare const accountPoolZh: AccountPoolLabels;
39
+ /** English labels for the ChatGPT tab, which is the bilingual one. */
40
+ export declare const accountPoolEn: AccountPoolLabels;
41
+ /** Replace `{name}` placeholders in one label. */
42
+ export declare function formatPoolLabel(template: string, values: Record<string, string | number>): string;
43
+ //# sourceMappingURL=account-pool-labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"account-pool-labels.d.ts","sourceRoot":"","sources":["../../../../src/client/common/account-pool-labels.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,uEAAuE;AACvE,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAA;IAC1B,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,qEAAqE;AACrE,eAAO,MAAM,aAAa,EAAE,iBAwB3B,CAAA;AAED,sEAAsE;AACtE,eAAO,MAAM,aAAa,EAAE,iBAwB3B,CAAA;AAED,kDAAkD;AAClD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAIjG"}
@@ -0,0 +1,11 @@
1
+ export declare const POOL_STYLE_ID = "dsh-provider-pool-style";
2
+ /**
3
+ * Styles the shared account-pool card adds on top of the existing provider
4
+ * stylesheets: the badge variants no single provider tab owned before.
5
+ *
6
+ * Additive on purpose — the shared `.dsha-*` block and each provider's own
7
+ * tweaks keep living in their own modules, in the order the client installs
8
+ * them, so nothing that already rendered changes appearance.
9
+ */
10
+ export declare function installPoolStyles(): void;
11
+ //# sourceMappingURL=styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/client/common/styles.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,4BAA4B,CAAA;AAEtD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CASxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAenE,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAY/D,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAU,kBAAkB;QAC1B,0BAA0B,EAAE,SAAS,CAAA;QACrC,iBAAiB,EAAE,GAAG,CAAA;QACtB,kBAAkB,EAAE,GAAG,CAAA;QACvB,eAAe,EAAE,GAAG,CAAA;KACrB;CACF;AAED,eAAO,MAAM,MAAM,UAA0D,CAAA;AAE7E,wBAAgB,KAAK,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAoH9C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAenE,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,cAAc,CAAA;AAa/D,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAU,kBAAkB;QAC1B,0BAA0B,EAAE,SAAS,CAAA;QACrC,iBAAiB,EAAE,GAAG,CAAA;QACtB,kBAAkB,EAAE,GAAG,CAAA;QACvB,eAAe,EAAE,GAAG,CAAA;KACrB;CACF;AAED,eAAO,MAAM,MAAM,UAA0D,CAAA;AAE7E,wBAAgB,KAAK,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CA0H9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"KimiCodeSection.d.ts","sourceRoot":"","sources":["../../../../src/client/kimi-code/KimiCodeSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAa/D,UAAU,KAAK;IACb,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;CAChC;AAiBD,wEAAwE;AACxE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOlE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIpD;AAyCD,wBAAgB,eAAe,CAAC,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAE,KAAK,GAAG,KAAK,CAAC,YAAY,CAinBhG"}
1
+ {"version":3,"file":"KimiCodeSection.d.ts","sourceRoot":"","sources":["../../../../src/client/kimi-code/KimiCodeSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAe/D,UAAU,KAAK;IACb,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;CAChC;AAiBD,wEAAwE;AACxE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOlE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIpD;AAyCD,wBAAgB,eAAe,CAAC,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAE,KAAK,GAAG,KAAK,CAAC,YAAY,CAinBhG"}
@@ -110,119 +110,28 @@ export declare const zh: {
110
110
  readonly loginFailed: "登录失败";
111
111
  readonly requests: "次请求";
112
112
  readonly tokens: "tokens";
113
+ readonly accountPool: string;
114
+ readonly addAccount: string;
115
+ readonly accountCount: string;
116
+ readonly primaryAccount: string;
117
+ readonly activeAccount: string;
118
+ readonly setPrimary: string;
119
+ readonly deleteAccount: string;
120
+ readonly cooling: string;
121
+ readonly cooldownLeft: string;
122
+ readonly clearCooldown: string;
123
+ readonly needsRelogin: string;
124
+ readonly relogin: string;
125
+ readonly rotationStrategy: string;
126
+ readonly strategySequential: string;
127
+ readonly strategyRoundRobin: string;
128
+ readonly strategySticky: string;
129
+ readonly noAccounts: string;
130
+ readonly expires: string;
131
+ readonly lastUsed: string;
132
+ readonly accountId: string;
113
133
  };
114
- export declare const en: {
115
- readonly title: "Kimi Code";
116
- readonly pageDesc: "Sign in to the Kimi Code subscription and manage models, thinking level, context windows, and quota.";
117
- readonly account: "Account";
118
- readonly signedIn: "Signed in";
119
- readonly signedOut: "Not signed in";
120
- readonly nickname: "Nickname";
121
- readonly email: "Email";
122
- readonly plan: "Plan";
123
- readonly planUnknown: "—";
124
- readonly region: "Region";
125
- readonly regionMainland: "Mainland China (kimi.com)";
126
- readonly regionGlobal: "Global (kimi.ai)";
127
- readonly authenticatedAt: "Signed in at";
128
- readonly storage: "Credential storage";
129
- readonly storageNotice: "The OAuth credential is stored locally by the Host ($DSH_HOME/storages/kimi-code-credentials.json) and never reaches the browser. Access tokens refresh automatically.";
130
- readonly refreshRejected: "The refresh token was rejected — sign in again.";
131
- readonly signIn: "Sign in with device code";
132
- readonly signInAgain: "Sign in again";
133
- readonly signingIn: "Signing in...";
134
- readonly signOut: "Sign out";
135
- readonly cancelSignIn: "Cancel";
136
- readonly deviceCodeSection: "Device authorization";
137
- readonly deviceCodeHint: "Open the link below in a browser (the user code is pre-filled) and approve it with the same account.";
138
- readonly openSignInPage: "Open the sign-in page";
139
- readonly copyCode: "Copy user code";
140
- readonly copied: "Copied";
141
- readonly userCode: "User code";
142
- readonly codeExpires: "Expires at";
143
- readonly waitingAuthorization: "Waiting for browser authorization...";
144
- readonly requestingCode: "Requesting a device code...";
145
- readonly connection: "Connection";
146
- readonly provider: "Provider";
147
- readonly providerValue: "Kimi Code · kimi-code";
148
- readonly oauthHost: "OAuth host";
149
- readonly codingEndpoint: "Model endpoint";
150
- readonly connectionState: "Connection state";
151
- readonly connected: "Connected";
152
- readonly untested: "Untested";
153
- readonly testConnection: "Test connection";
154
- readonly testingConnection: "Testing...";
155
- readonly testSuccess: "Connection OK";
156
- readonly testFailed: "Connection failed: Kimi Code did not accept the stored credential";
157
- readonly routeOwned: "This plugin serves the model route";
158
- readonly routeConflict: "Another provider already owns the model route: {detail}. Remove the duplicate provider configuration in DSH settings and reload.";
159
- readonly modelsSection: "Models";
160
- readonly enableProvider: "Enable this provider";
161
- readonly modelsHint: "Checked models appear in the DSH conversation model list; unchecking all or turning off the switch hides this provider.";
162
- readonly refreshCatalog: "Refresh catalog";
163
- readonly refreshingCatalog: "Refreshing...";
164
- readonly selectAll: "Select all";
165
- readonly unselectAll: "Deselect all";
166
- readonly wireAnthropic: "Anthropic";
167
- readonly wireOpenai: "OpenAI";
168
- readonly capVideo: "Video*";
169
- readonly capDynamicTools: "Dynamic tools";
170
- readonly capImageOnly: "Images";
171
- readonly capNone: "—";
172
- readonly capVideoFootnote: "* Video input is attached with the kimi_attach_video tool (an absolute local path or an http(s) URL); the paste/upload path still accepts images only.";
173
- readonly capabilitiesTitle: "Capabilities";
174
- readonly capColMedia: "Multimodal";
175
- readonly capColTools: "Dynamic tools";
176
- readonly capColNotes: "Notes";
177
- readonly capPlan: "Requires plan: {plan}";
178
- readonly speedRegular: "Regular";
179
- readonly speedHighspeed: "HighSpeed (~6x)";
180
- readonly quotaCost: "Quota cost";
181
- readonly minimumPlan: "Required plan";
182
- readonly enhanced: "Thinking";
183
- readonly defaultReasoningEffort: "Default thinking level";
184
- readonly defaultReasoningEffortHint: "Kimi Code accepts only low / high / max; none disables thinking. Switching the level invalidates the context cache, so keep it steady within a session.";
185
- readonly defaultEffortAuto: "Use the model default";
186
- readonly effortLow: "Low";
187
- readonly effortHigh: "High";
188
- readonly effortMax: "Max";
189
- readonly effortNone: "Thinking off";
190
- readonly contextWindowSection: "Model context window";
191
- readonly contextWindowHint: "Defaults to the catalog context length. k3 reaches 1M only on Allegretto and above, so it defaults to 256K; raise the override here after upgrading.";
192
- readonly contextWindowPlan: "Full context requires the {plan} plan";
193
- readonly save: "Save";
194
- readonly saved: "Saved";
195
- readonly saving: "Saving...";
196
- readonly cacheSection: "Cache & K3 tuning";
197
- readonly cacheDesc: "Kimi's prefix cache is automatic and content-hash based — there is no marker to set — so the cache-read ratio is the only evidence it is working.";
198
- readonly cacheEmpty: "No request in this process has reported usage yet.";
199
- readonly cacheHitRatio: "Cache hit ratio";
200
- readonly cacheCached: "Cached tokens";
201
- readonly cacheFresh: "Fresh tokens";
202
- readonly cacheOutput: "Output tokens";
203
- readonly cacheRequests: "Requests";
204
- readonly cacheHint: "Within one session: any change to the system prompt or the tool list invalidates the whole prefix cache, so keep the tool set stable and append new material at the tail for the best hit rate.";
205
- readonly preserveThinking: "Preserved Thinking";
206
- readonly preserveOn: "On (the official default): reasoning_content is retained across turns, which keeps multi-step tool use coherent — its tokens are billed as output.";
207
- readonly preserveOff: "Off: the service is not asked to return reasoning. Set DSH_KIMI_CODE_PRESERVE_THINKING=0 to disable.";
208
- readonly outputCap: "Output cap follows the context window, so long reasoning is not cut off at 32K";
209
- readonly quotaSection: "Usage & quota";
210
- readonly quotaDesc: "Read from the Kimi Code account endpoints; refreshes at most once every 60 seconds while visible.";
211
- readonly refreshQuota: "Refresh quota";
212
- readonly refreshingQuota: "Refreshing...";
213
- readonly quotaEmpty: "No quota data yet — use \"Refresh quota\" to retry.";
214
- readonly quotaPlan: "Current plan";
215
- readonly quotaWallet: "Booster wallet";
216
- readonly quotaWalletLimit: "Monthly cap";
217
- readonly quotaWalletUsed: "Used this month";
218
- readonly quotaUnlimited: "Unlimited";
219
- readonly updatedAt: "Updated at: {time}";
220
- readonly resetAt: "Reset: {time}";
221
- readonly loading: "Loading...";
222
- readonly loginFailed: "Sign-in failed";
223
- readonly requests: "requests";
224
- readonly tokens: "tokens";
225
- };
134
+ export declare const en: Record<keyof typeof zh, string>;
226
135
  export declare const dictionaries: {
227
136
  zh: {
228
137
  readonly title: "Kimi Code";
@@ -335,6 +244,26 @@ export declare const dictionaries: {
335
244
  readonly loginFailed: "登录失败";
336
245
  readonly requests: "次请求";
337
246
  readonly tokens: "tokens";
247
+ readonly accountPool: string;
248
+ readonly addAccount: string;
249
+ readonly accountCount: string;
250
+ readonly primaryAccount: string;
251
+ readonly activeAccount: string;
252
+ readonly setPrimary: string;
253
+ readonly deleteAccount: string;
254
+ readonly cooling: string;
255
+ readonly cooldownLeft: string;
256
+ readonly clearCooldown: string;
257
+ readonly needsRelogin: string;
258
+ readonly relogin: string;
259
+ readonly rotationStrategy: string;
260
+ readonly strategySequential: string;
261
+ readonly strategyRoundRobin: string;
262
+ readonly strategySticky: string;
263
+ readonly noAccounts: string;
264
+ readonly expires: string;
265
+ readonly lastUsed: string;
266
+ readonly accountId: string;
338
267
  };
339
268
  'zh-CN': {
340
269
  readonly title: "Kimi Code";
@@ -447,231 +376,29 @@ export declare const dictionaries: {
447
376
  readonly loginFailed: "登录失败";
448
377
  readonly requests: "次请求";
449
378
  readonly tokens: "tokens";
379
+ readonly accountPool: string;
380
+ readonly addAccount: string;
381
+ readonly accountCount: string;
382
+ readonly primaryAccount: string;
383
+ readonly activeAccount: string;
384
+ readonly setPrimary: string;
385
+ readonly deleteAccount: string;
386
+ readonly cooling: string;
387
+ readonly cooldownLeft: string;
388
+ readonly clearCooldown: string;
389
+ readonly needsRelogin: string;
390
+ readonly relogin: string;
391
+ readonly rotationStrategy: string;
392
+ readonly strategySequential: string;
393
+ readonly strategyRoundRobin: string;
394
+ readonly strategySticky: string;
395
+ readonly noAccounts: string;
396
+ readonly expires: string;
397
+ readonly lastUsed: string;
398
+ readonly accountId: string;
450
399
  };
451
- en: {
452
- readonly title: "Kimi Code";
453
- readonly pageDesc: "Sign in to the Kimi Code subscription and manage models, thinking level, context windows, and quota.";
454
- readonly account: "Account";
455
- readonly signedIn: "Signed in";
456
- readonly signedOut: "Not signed in";
457
- readonly nickname: "Nickname";
458
- readonly email: "Email";
459
- readonly plan: "Plan";
460
- readonly planUnknown: "—";
461
- readonly region: "Region";
462
- readonly regionMainland: "Mainland China (kimi.com)";
463
- readonly regionGlobal: "Global (kimi.ai)";
464
- readonly authenticatedAt: "Signed in at";
465
- readonly storage: "Credential storage";
466
- readonly storageNotice: "The OAuth credential is stored locally by the Host ($DSH_HOME/storages/kimi-code-credentials.json) and never reaches the browser. Access tokens refresh automatically.";
467
- readonly refreshRejected: "The refresh token was rejected — sign in again.";
468
- readonly signIn: "Sign in with device code";
469
- readonly signInAgain: "Sign in again";
470
- readonly signingIn: "Signing in...";
471
- readonly signOut: "Sign out";
472
- readonly cancelSignIn: "Cancel";
473
- readonly deviceCodeSection: "Device authorization";
474
- readonly deviceCodeHint: "Open the link below in a browser (the user code is pre-filled) and approve it with the same account.";
475
- readonly openSignInPage: "Open the sign-in page";
476
- readonly copyCode: "Copy user code";
477
- readonly copied: "Copied";
478
- readonly userCode: "User code";
479
- readonly codeExpires: "Expires at";
480
- readonly waitingAuthorization: "Waiting for browser authorization...";
481
- readonly requestingCode: "Requesting a device code...";
482
- readonly connection: "Connection";
483
- readonly provider: "Provider";
484
- readonly providerValue: "Kimi Code · kimi-code";
485
- readonly oauthHost: "OAuth host";
486
- readonly codingEndpoint: "Model endpoint";
487
- readonly connectionState: "Connection state";
488
- readonly connected: "Connected";
489
- readonly untested: "Untested";
490
- readonly testConnection: "Test connection";
491
- readonly testingConnection: "Testing...";
492
- readonly testSuccess: "Connection OK";
493
- readonly testFailed: "Connection failed: Kimi Code did not accept the stored credential";
494
- readonly routeOwned: "This plugin serves the model route";
495
- readonly routeConflict: "Another provider already owns the model route: {detail}. Remove the duplicate provider configuration in DSH settings and reload.";
496
- readonly modelsSection: "Models";
497
- readonly enableProvider: "Enable this provider";
498
- readonly modelsHint: "Checked models appear in the DSH conversation model list; unchecking all or turning off the switch hides this provider.";
499
- readonly refreshCatalog: "Refresh catalog";
500
- readonly refreshingCatalog: "Refreshing...";
501
- readonly selectAll: "Select all";
502
- readonly unselectAll: "Deselect all";
503
- readonly wireAnthropic: "Anthropic";
504
- readonly wireOpenai: "OpenAI";
505
- readonly capVideo: "Video*";
506
- readonly capDynamicTools: "Dynamic tools";
507
- readonly capImageOnly: "Images";
508
- readonly capNone: "—";
509
- readonly capVideoFootnote: "* Video input is attached with the kimi_attach_video tool (an absolute local path or an http(s) URL); the paste/upload path still accepts images only.";
510
- readonly capabilitiesTitle: "Capabilities";
511
- readonly capColMedia: "Multimodal";
512
- readonly capColTools: "Dynamic tools";
513
- readonly capColNotes: "Notes";
514
- readonly capPlan: "Requires plan: {plan}";
515
- readonly speedRegular: "Regular";
516
- readonly speedHighspeed: "HighSpeed (~6x)";
517
- readonly quotaCost: "Quota cost";
518
- readonly minimumPlan: "Required plan";
519
- readonly enhanced: "Thinking";
520
- readonly defaultReasoningEffort: "Default thinking level";
521
- readonly defaultReasoningEffortHint: "Kimi Code accepts only low / high / max; none disables thinking. Switching the level invalidates the context cache, so keep it steady within a session.";
522
- readonly defaultEffortAuto: "Use the model default";
523
- readonly effortLow: "Low";
524
- readonly effortHigh: "High";
525
- readonly effortMax: "Max";
526
- readonly effortNone: "Thinking off";
527
- readonly contextWindowSection: "Model context window";
528
- readonly contextWindowHint: "Defaults to the catalog context length. k3 reaches 1M only on Allegretto and above, so it defaults to 256K; raise the override here after upgrading.";
529
- readonly contextWindowPlan: "Full context requires the {plan} plan";
530
- readonly save: "Save";
531
- readonly saved: "Saved";
532
- readonly saving: "Saving...";
533
- readonly cacheSection: "Cache & K3 tuning";
534
- readonly cacheDesc: "Kimi's prefix cache is automatic and content-hash based — there is no marker to set — so the cache-read ratio is the only evidence it is working.";
535
- readonly cacheEmpty: "No request in this process has reported usage yet.";
536
- readonly cacheHitRatio: "Cache hit ratio";
537
- readonly cacheCached: "Cached tokens";
538
- readonly cacheFresh: "Fresh tokens";
539
- readonly cacheOutput: "Output tokens";
540
- readonly cacheRequests: "Requests";
541
- readonly cacheHint: "Within one session: any change to the system prompt or the tool list invalidates the whole prefix cache, so keep the tool set stable and append new material at the tail for the best hit rate.";
542
- readonly preserveThinking: "Preserved Thinking";
543
- readonly preserveOn: "On (the official default): reasoning_content is retained across turns, which keeps multi-step tool use coherent — its tokens are billed as output.";
544
- readonly preserveOff: "Off: the service is not asked to return reasoning. Set DSH_KIMI_CODE_PRESERVE_THINKING=0 to disable.";
545
- readonly outputCap: "Output cap follows the context window, so long reasoning is not cut off at 32K";
546
- readonly quotaSection: "Usage & quota";
547
- readonly quotaDesc: "Read from the Kimi Code account endpoints; refreshes at most once every 60 seconds while visible.";
548
- readonly refreshQuota: "Refresh quota";
549
- readonly refreshingQuota: "Refreshing...";
550
- readonly quotaEmpty: "No quota data yet — use \"Refresh quota\" to retry.";
551
- readonly quotaPlan: "Current plan";
552
- readonly quotaWallet: "Booster wallet";
553
- readonly quotaWalletLimit: "Monthly cap";
554
- readonly quotaWalletUsed: "Used this month";
555
- readonly quotaUnlimited: "Unlimited";
556
- readonly updatedAt: "Updated at: {time}";
557
- readonly resetAt: "Reset: {time}";
558
- readonly loading: "Loading...";
559
- readonly loginFailed: "Sign-in failed";
560
- readonly requests: "requests";
561
- readonly tokens: "tokens";
562
- };
563
- 'en-US': {
564
- readonly title: "Kimi Code";
565
- readonly pageDesc: "Sign in to the Kimi Code subscription and manage models, thinking level, context windows, and quota.";
566
- readonly account: "Account";
567
- readonly signedIn: "Signed in";
568
- readonly signedOut: "Not signed in";
569
- readonly nickname: "Nickname";
570
- readonly email: "Email";
571
- readonly plan: "Plan";
572
- readonly planUnknown: "—";
573
- readonly region: "Region";
574
- readonly regionMainland: "Mainland China (kimi.com)";
575
- readonly regionGlobal: "Global (kimi.ai)";
576
- readonly authenticatedAt: "Signed in at";
577
- readonly storage: "Credential storage";
578
- readonly storageNotice: "The OAuth credential is stored locally by the Host ($DSH_HOME/storages/kimi-code-credentials.json) and never reaches the browser. Access tokens refresh automatically.";
579
- readonly refreshRejected: "The refresh token was rejected — sign in again.";
580
- readonly signIn: "Sign in with device code";
581
- readonly signInAgain: "Sign in again";
582
- readonly signingIn: "Signing in...";
583
- readonly signOut: "Sign out";
584
- readonly cancelSignIn: "Cancel";
585
- readonly deviceCodeSection: "Device authorization";
586
- readonly deviceCodeHint: "Open the link below in a browser (the user code is pre-filled) and approve it with the same account.";
587
- readonly openSignInPage: "Open the sign-in page";
588
- readonly copyCode: "Copy user code";
589
- readonly copied: "Copied";
590
- readonly userCode: "User code";
591
- readonly codeExpires: "Expires at";
592
- readonly waitingAuthorization: "Waiting for browser authorization...";
593
- readonly requestingCode: "Requesting a device code...";
594
- readonly connection: "Connection";
595
- readonly provider: "Provider";
596
- readonly providerValue: "Kimi Code · kimi-code";
597
- readonly oauthHost: "OAuth host";
598
- readonly codingEndpoint: "Model endpoint";
599
- readonly connectionState: "Connection state";
600
- readonly connected: "Connected";
601
- readonly untested: "Untested";
602
- readonly testConnection: "Test connection";
603
- readonly testingConnection: "Testing...";
604
- readonly testSuccess: "Connection OK";
605
- readonly testFailed: "Connection failed: Kimi Code did not accept the stored credential";
606
- readonly routeOwned: "This plugin serves the model route";
607
- readonly routeConflict: "Another provider already owns the model route: {detail}. Remove the duplicate provider configuration in DSH settings and reload.";
608
- readonly modelsSection: "Models";
609
- readonly enableProvider: "Enable this provider";
610
- readonly modelsHint: "Checked models appear in the DSH conversation model list; unchecking all or turning off the switch hides this provider.";
611
- readonly refreshCatalog: "Refresh catalog";
612
- readonly refreshingCatalog: "Refreshing...";
613
- readonly selectAll: "Select all";
614
- readonly unselectAll: "Deselect all";
615
- readonly wireAnthropic: "Anthropic";
616
- readonly wireOpenai: "OpenAI";
617
- readonly capVideo: "Video*";
618
- readonly capDynamicTools: "Dynamic tools";
619
- readonly capImageOnly: "Images";
620
- readonly capNone: "—";
621
- readonly capVideoFootnote: "* Video input is attached with the kimi_attach_video tool (an absolute local path or an http(s) URL); the paste/upload path still accepts images only.";
622
- readonly capabilitiesTitle: "Capabilities";
623
- readonly capColMedia: "Multimodal";
624
- readonly capColTools: "Dynamic tools";
625
- readonly capColNotes: "Notes";
626
- readonly capPlan: "Requires plan: {plan}";
627
- readonly speedRegular: "Regular";
628
- readonly speedHighspeed: "HighSpeed (~6x)";
629
- readonly quotaCost: "Quota cost";
630
- readonly minimumPlan: "Required plan";
631
- readonly enhanced: "Thinking";
632
- readonly defaultReasoningEffort: "Default thinking level";
633
- readonly defaultReasoningEffortHint: "Kimi Code accepts only low / high / max; none disables thinking. Switching the level invalidates the context cache, so keep it steady within a session.";
634
- readonly defaultEffortAuto: "Use the model default";
635
- readonly effortLow: "Low";
636
- readonly effortHigh: "High";
637
- readonly effortMax: "Max";
638
- readonly effortNone: "Thinking off";
639
- readonly contextWindowSection: "Model context window";
640
- readonly contextWindowHint: "Defaults to the catalog context length. k3 reaches 1M only on Allegretto and above, so it defaults to 256K; raise the override here after upgrading.";
641
- readonly contextWindowPlan: "Full context requires the {plan} plan";
642
- readonly save: "Save";
643
- readonly saved: "Saved";
644
- readonly saving: "Saving...";
645
- readonly cacheSection: "Cache & K3 tuning";
646
- readonly cacheDesc: "Kimi's prefix cache is automatic and content-hash based — there is no marker to set — so the cache-read ratio is the only evidence it is working.";
647
- readonly cacheEmpty: "No request in this process has reported usage yet.";
648
- readonly cacheHitRatio: "Cache hit ratio";
649
- readonly cacheCached: "Cached tokens";
650
- readonly cacheFresh: "Fresh tokens";
651
- readonly cacheOutput: "Output tokens";
652
- readonly cacheRequests: "Requests";
653
- readonly cacheHint: "Within one session: any change to the system prompt or the tool list invalidates the whole prefix cache, so keep the tool set stable and append new material at the tail for the best hit rate.";
654
- readonly preserveThinking: "Preserved Thinking";
655
- readonly preserveOn: "On (the official default): reasoning_content is retained across turns, which keeps multi-step tool use coherent — its tokens are billed as output.";
656
- readonly preserveOff: "Off: the service is not asked to return reasoning. Set DSH_KIMI_CODE_PRESERVE_THINKING=0 to disable.";
657
- readonly outputCap: "Output cap follows the context window, so long reasoning is not cut off at 32K";
658
- readonly quotaSection: "Usage & quota";
659
- readonly quotaDesc: "Read from the Kimi Code account endpoints; refreshes at most once every 60 seconds while visible.";
660
- readonly refreshQuota: "Refresh quota";
661
- readonly refreshingQuota: "Refreshing...";
662
- readonly quotaEmpty: "No quota data yet — use \"Refresh quota\" to retry.";
663
- readonly quotaPlan: "Current plan";
664
- readonly quotaWallet: "Booster wallet";
665
- readonly quotaWalletLimit: "Monthly cap";
666
- readonly quotaWalletUsed: "Used this month";
667
- readonly quotaUnlimited: "Unlimited";
668
- readonly updatedAt: "Updated at: {time}";
669
- readonly resetAt: "Reset: {time}";
670
- readonly loading: "Loading...";
671
- readonly loginFailed: "Sign-in failed";
672
- readonly requests: "requests";
673
- readonly tokens: "tokens";
674
- };
400
+ en: Record<"tokens" | "title" | "pageDesc" | "account" | "signedIn" | "signedOut" | "accountPool" | "addAccount" | "primaryAccount" | "activeAccount" | "setPrimary" | "deleteAccount" | "cooling" | "clearCooldown" | "rotationStrategy" | "strategySequential" | "strategyRoundRobin" | "strategySticky" | "noAccounts" | "plan" | "accountId" | "expires" | "storage" | "storageNotice" | "signInAgain" | "signOut" | "signIn" | "signingIn" | "connection" | "provider" | "providerValue" | "connectionState" | "connected" | "untested" | "enableProvider" | "modelsHint" | "selectAll" | "unselectAll" | "enhanced" | "defaultReasoningEffort" | "defaultReasoningEffortHint" | "defaultEffortAuto" | "contextWindowSection" | "contextWindowHint" | "save" | "saved" | "saving" | "quotaSection" | "quotaDesc" | "refreshQuota" | "refreshingQuota" | "quotaEmpty" | "updatedAt" | "loading" | "loginFailed" | "planUnknown" | "authenticatedAt" | "cancelSignIn" | "openSignInPage" | "testConnection" | "testingConnection" | "routeOwned" | "routeConflict" | "modelsSection" | "refreshCatalog" | "refreshingCatalog" | "wireAnthropic" | "wireOpenai" | "quotaUnlimited" | "accountCount" | "cooldownLeft" | "needsRelogin" | "relogin" | "email" | "lastUsed" | "nickname" | "region" | "regionMainland" | "regionGlobal" | "refreshRejected" | "deviceCodeSection" | "deviceCodeHint" | "copyCode" | "copied" | "userCode" | "codeExpires" | "waitingAuthorization" | "requestingCode" | "oauthHost" | "codingEndpoint" | "testSuccess" | "testFailed" | "capVideo" | "capDynamicTools" | "capImageOnly" | "capNone" | "capVideoFootnote" | "capabilitiesTitle" | "capColMedia" | "capColTools" | "capColNotes" | "capPlan" | "speedRegular" | "speedHighspeed" | "quotaCost" | "minimumPlan" | "effortLow" | "effortHigh" | "effortMax" | "effortNone" | "contextWindowPlan" | "cacheSection" | "cacheDesc" | "cacheEmpty" | "cacheHitRatio" | "cacheCached" | "cacheFresh" | "cacheOutput" | "cacheRequests" | "cacheHint" | "preserveThinking" | "preserveOn" | "preserveOff" | "outputCap" | "quotaPlan" | "quotaWallet" | "quotaWalletLimit" | "quotaWalletUsed" | "resetAt" | "requests", string>;
401
+ 'en-US': Record<"tokens" | "title" | "pageDesc" | "account" | "signedIn" | "signedOut" | "accountPool" | "addAccount" | "primaryAccount" | "activeAccount" | "setPrimary" | "deleteAccount" | "cooling" | "clearCooldown" | "rotationStrategy" | "strategySequential" | "strategyRoundRobin" | "strategySticky" | "noAccounts" | "plan" | "accountId" | "expires" | "storage" | "storageNotice" | "signInAgain" | "signOut" | "signIn" | "signingIn" | "connection" | "provider" | "providerValue" | "connectionState" | "connected" | "untested" | "enableProvider" | "modelsHint" | "selectAll" | "unselectAll" | "enhanced" | "defaultReasoningEffort" | "defaultReasoningEffortHint" | "defaultEffortAuto" | "contextWindowSection" | "contextWindowHint" | "save" | "saved" | "saving" | "quotaSection" | "quotaDesc" | "refreshQuota" | "refreshingQuota" | "quotaEmpty" | "updatedAt" | "loading" | "loginFailed" | "planUnknown" | "authenticatedAt" | "cancelSignIn" | "openSignInPage" | "testConnection" | "testingConnection" | "routeOwned" | "routeConflict" | "modelsSection" | "refreshCatalog" | "refreshingCatalog" | "wireAnthropic" | "wireOpenai" | "quotaUnlimited" | "accountCount" | "cooldownLeft" | "needsRelogin" | "relogin" | "email" | "lastUsed" | "nickname" | "region" | "regionMainland" | "regionGlobal" | "refreshRejected" | "deviceCodeSection" | "deviceCodeHint" | "copyCode" | "copied" | "userCode" | "codeExpires" | "waitingAuthorization" | "requestingCode" | "oauthHost" | "codingEndpoint" | "testSuccess" | "testFailed" | "capVideo" | "capDynamicTools" | "capImageOnly" | "capNone" | "capVideoFootnote" | "capabilitiesTitle" | "capColMedia" | "capColTools" | "capColNotes" | "capPlan" | "speedRegular" | "speedHighspeed" | "quotaCost" | "minimumPlan" | "effortLow" | "effortHigh" | "effortMax" | "effortNone" | "contextWindowPlan" | "cacheSection" | "cacheDesc" | "cacheEmpty" | "cacheHitRatio" | "cacheCached" | "cacheFresh" | "cacheOutput" | "cacheRequests" | "cacheHint" | "preserveThinking" | "preserveOn" | "preserveOff" | "outputCap" | "quotaPlan" | "quotaWallet" | "quotaWalletLimit" | "quotaWalletUsed" | "resetAt" | "requests", string>;
675
402
  };
676
403
  export type KimiCodeLocaleKey = keyof typeof zh;
677
404
  //# sourceMappingURL=locales.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../../src/client/kimi-code/locales.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,kBAAkB,CAAA;AAE3C,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+GL,CAAA;AAEV,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+GL,CAAA;AAEV,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKxB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,EAAE,CAAA"}
1
+ {"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../../src/client/kimi-code/locales.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,kBAAkB,CAAA;AAE3C,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiHL,CAAA;AAEV,eAAO,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,OAAO,EAAE,EAAE,MAAM,CAgHrC,CAAA;AAEV,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKxB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,EAAE,CAAA"}
@@ -126,6 +126,26 @@ export declare const zh: {
126
126
  readonly imagePreviewOpenOriginal: "打开原图";
127
127
  readonly retry: "重试";
128
128
  readonly unknown: "未知";
129
+ readonly accountPool: string;
130
+ readonly addAccount: string;
131
+ readonly accountCount: string;
132
+ readonly primaryAccount: string;
133
+ readonly activeAccount: string;
134
+ readonly setPrimary: string;
135
+ readonly deleteAccount: string;
136
+ readonly cooling: string;
137
+ readonly cooldownLeft: string;
138
+ readonly clearCooldown: string;
139
+ readonly needsRelogin: string;
140
+ readonly relogin: string;
141
+ readonly rotationStrategy: string;
142
+ readonly strategySequential: string;
143
+ readonly strategyRoundRobin: string;
144
+ readonly strategySticky: string;
145
+ readonly noAccounts: string;
146
+ readonly storageNotice: string;
147
+ readonly email: string;
148
+ readonly lastUsed: string;
129
149
  };
130
150
  export declare const en: Record<keyof typeof zh, string>;
131
151
  export type LocaleKey = keyof typeof zh;
@@ -257,7 +277,27 @@ export declare const dictionaries: {
257
277
  readonly imagePreviewOpenOriginal: "打开原图";
258
278
  readonly retry: "重试";
259
279
  readonly unknown: "未知";
280
+ readonly accountPool: string;
281
+ readonly addAccount: string;
282
+ readonly accountCount: string;
283
+ readonly primaryAccount: string;
284
+ readonly activeAccount: string;
285
+ readonly setPrimary: string;
286
+ readonly deleteAccount: string;
287
+ readonly cooling: string;
288
+ readonly cooldownLeft: string;
289
+ readonly clearCooldown: string;
290
+ readonly needsRelogin: string;
291
+ readonly relogin: string;
292
+ readonly rotationStrategy: string;
293
+ readonly strategySequential: string;
294
+ readonly strategyRoundRobin: string;
295
+ readonly strategySticky: string;
296
+ readonly noAccounts: string;
297
+ readonly storageNotice: string;
298
+ readonly email: string;
299
+ readonly lastUsed: string;
260
300
  };
261
- en: Record<"quota" | "account" | "storage" | "stale" | "pending" | "tokens" | "title" | "hubTitle" | "intro" | "signedOut" | "signedIn" | "plan" | "accountId" | "expires" | "storageWindows" | "storageMacKeychain" | "storageLinuxFile" | "storageMemory" | "storageUnavailable" | "securityWindows" | "securityMacKeychain" | "securityLinuxFile" | "securityMemory" | "securityUnavailable" | "signIn" | "signInAgain" | "cancel" | "signOut" | "refreshToken" | "popupBlocked" | "continueLogin" | "loading" | "connection" | "provider" | "connectionState" | "connected" | "untested" | "testConnection" | "testing" | "latency" | "enableProvider" | "selectAll" | "unselectAll" | "models" | "modelsHint" | "proxySettings" | "proxyMode" | "proxyModeHint" | "proxyModeAuto" | "proxyModeCustom" | "proxyModeDirect" | "customProxyUrl" | "customProxyUrlHint" | "customProxyUrlPlaceholder" | "saveProxyUrl" | "proxyDetected" | "proxyDetectedEffective" | "proxyNoneDetected" | "proxyDirectHint" | "enhancements" | "fastMode" | "fastModeHint" | "outputVerbosity" | "outputVerbosityHint" | "verbosityLow" | "verbosityMedium" | "verbosityHigh" | "reasoningSummary" | "reasoningSummaryHint" | "summaryAuto" | "summaryConcise" | "summaryDetailed" | "summaryNone" | "searchProvider" | "searchProviderHint" | "searchProviderDsh" | "searchProviderCodex" | "providerDefault" | "contextWindows" | "contextWindowsHint" | "contextWindow" | "contextWindowInvalid" | "saveContextWindow" | "save" | "quickQuota" | "quickQuotaHint" | "quotaIntro" | "refreshQuota" | "refreshing" | "noQuota" | "quotaSignedOut" | "updated" | "primary" | "secondary" | "limitWindow" | "used" | "remaining" | "available" | "unavailable" | "unlimited" | "credits" | "monthlySpend" | "resetCredits" | "resetCreditExpires" | "useResetCredit" | "usingResetCredit" | "useResetCreditConfirm" | "resetCreditUsed" | "spendControlReached" | "limit" | "exhausted" | "resets" | "quickQuotaLabel" | "quickQuotaLoading" | "imageToolRunning" | "imageToolDone" | "imageToolFailed" | "image" | "openImage" | "openNamedImage" | "imageLoading" | "imageLoadFailed" | "imagePreviewClose" | "imagePreviewOpenOriginal" | "retry" | "unknown", string>;
301
+ en: Record<"accountId" | "relogin" | "pending" | "tokens" | "title" | "hubTitle" | "intro" | "account" | "signedOut" | "signedIn" | "plan" | "expires" | "storage" | "storageWindows" | "storageMacKeychain" | "storageLinuxFile" | "storageMemory" | "storageUnavailable" | "securityWindows" | "securityMacKeychain" | "securityLinuxFile" | "securityMemory" | "securityUnavailable" | "signIn" | "signInAgain" | "cancel" | "signOut" | "refreshToken" | "popupBlocked" | "continueLogin" | "loading" | "connection" | "provider" | "connectionState" | "connected" | "untested" | "testConnection" | "testing" | "latency" | "enableProvider" | "selectAll" | "unselectAll" | "models" | "modelsHint" | "proxySettings" | "proxyMode" | "proxyModeHint" | "proxyModeAuto" | "proxyModeCustom" | "proxyModeDirect" | "customProxyUrl" | "customProxyUrlHint" | "customProxyUrlPlaceholder" | "saveProxyUrl" | "proxyDetected" | "proxyDetectedEffective" | "proxyNoneDetected" | "proxyDirectHint" | "enhancements" | "fastMode" | "fastModeHint" | "outputVerbosity" | "outputVerbosityHint" | "verbosityLow" | "verbosityMedium" | "verbosityHigh" | "reasoningSummary" | "reasoningSummaryHint" | "summaryAuto" | "summaryConcise" | "summaryDetailed" | "summaryNone" | "searchProvider" | "searchProviderHint" | "searchProviderDsh" | "searchProviderCodex" | "providerDefault" | "contextWindows" | "contextWindowsHint" | "contextWindow" | "contextWindowInvalid" | "saveContextWindow" | "save" | "quickQuota" | "quickQuotaHint" | "quota" | "quotaIntro" | "refreshQuota" | "refreshing" | "noQuota" | "quotaSignedOut" | "stale" | "updated" | "primary" | "secondary" | "limitWindow" | "used" | "remaining" | "available" | "unavailable" | "unlimited" | "credits" | "monthlySpend" | "resetCredits" | "resetCreditExpires" | "useResetCredit" | "usingResetCredit" | "useResetCreditConfirm" | "resetCreditUsed" | "spendControlReached" | "limit" | "exhausted" | "resets" | "quickQuotaLabel" | "quickQuotaLoading" | "imageToolRunning" | "imageToolDone" | "imageToolFailed" | "image" | "openImage" | "openNamedImage" | "imageLoading" | "imageLoadFailed" | "imagePreviewClose" | "imagePreviewOpenOriginal" | "retry" | "unknown" | "accountPool" | "addAccount" | "accountCount" | "primaryAccount" | "activeAccount" | "setPrimary" | "deleteAccount" | "cooling" | "cooldownLeft" | "clearCooldown" | "needsRelogin" | "rotationStrategy" | "strategySequential" | "strategyRoundRobin" | "strategySticky" | "noAccounts" | "storageNotice" | "email" | "lastUsed", string>;
262
302
  };
263
303
  //# sourceMappingURL=locales.d.ts.map