@slkiser/opencode-quota 4.0.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (266) hide show
  1. package/README.md +37 -25
  2. package/dist/bin/opencode-quota.d.ts.map +1 -1
  3. package/dist/bin/opencode-quota.js +8 -0
  4. package/dist/bin/opencode-quota.js.map +1 -1
  5. package/dist/index.d.ts +2 -2
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/lib/anthropic.d.ts.map +1 -1
  8. package/dist/lib/anthropic.js +78 -72
  9. package/dist/lib/anthropic.js.map +1 -1
  10. package/dist/lib/api-key-resolver.d.ts.map +1 -1
  11. package/dist/lib/api-key-resolver.js +14 -24
  12. package/dist/lib/api-key-resolver.js.map +1 -1
  13. package/dist/lib/atomic-json.d.ts +3 -1
  14. package/dist/lib/atomic-json.d.ts.map +1 -1
  15. package/dist/lib/atomic-json.js +23 -9
  16. package/dist/lib/atomic-json.js.map +1 -1
  17. package/dist/lib/chutes.d.ts.map +1 -1
  18. package/dist/lib/chutes.js +28 -23
  19. package/dist/lib/chutes.js.map +1 -1
  20. package/dist/lib/cli-show.d.ts +9 -0
  21. package/dist/lib/cli-show.d.ts.map +1 -1
  22. package/dist/lib/cli-show.js +34 -5
  23. package/dist/lib/cli-show.js.map +1 -1
  24. package/dist/lib/cli-status.d.ts +8 -0
  25. package/dist/lib/cli-status.d.ts.map +1 -0
  26. package/dist/lib/cli-status.js +125 -0
  27. package/dist/lib/cli-status.js.map +1 -0
  28. package/dist/lib/config.d.ts +1 -1
  29. package/dist/lib/config.d.ts.map +1 -1
  30. package/dist/lib/config.js +47 -12
  31. package/dist/lib/config.js.map +1 -1
  32. package/dist/lib/copilot.d.ts +11 -5
  33. package/dist/lib/copilot.d.ts.map +1 -1
  34. package/dist/lib/copilot.js +300 -52
  35. package/dist/lib/copilot.js.map +1 -1
  36. package/dist/lib/deepseek.d.ts.map +1 -1
  37. package/dist/lib/deepseek.js +22 -17
  38. package/dist/lib/deepseek.js.map +1 -1
  39. package/dist/lib/display-sanitize.d.ts.map +1 -1
  40. package/dist/lib/display-sanitize.js +8 -0
  41. package/dist/lib/display-sanitize.js.map +1 -1
  42. package/dist/lib/entries.d.ts +14 -1
  43. package/dist/lib/entries.d.ts.map +1 -1
  44. package/dist/lib/entries.js.map +1 -1
  45. package/dist/lib/format-utils.d.ts +7 -0
  46. package/dist/lib/format-utils.d.ts.map +1 -1
  47. package/dist/lib/format-utils.js +18 -0
  48. package/dist/lib/format-utils.js.map +1 -1
  49. package/dist/lib/format.d.ts +1 -0
  50. package/dist/lib/format.d.ts.map +1 -1
  51. package/dist/lib/format.js +22 -7
  52. package/dist/lib/format.js.map +1 -1
  53. package/dist/lib/google-agy.d.ts.map +1 -1
  54. package/dist/lib/google-agy.js +203 -92
  55. package/dist/lib/google-agy.js.map +1 -1
  56. package/dist/lib/google-gemini-cli.d.ts.map +1 -1
  57. package/dist/lib/google-gemini-cli.js +53 -41
  58. package/dist/lib/google-gemini-cli.js.map +1 -1
  59. package/dist/lib/google-token-cache.d.ts.map +1 -1
  60. package/dist/lib/google-token-cache.js +87 -34
  61. package/dist/lib/google-token-cache.js.map +1 -1
  62. package/dist/lib/google.d.ts.map +1 -1
  63. package/dist/lib/google.js +57 -39
  64. package/dist/lib/google.js.map +1 -1
  65. package/dist/lib/grouped-entry-normalization.d.ts.map +1 -1
  66. package/dist/lib/grouped-entry-normalization.js +7 -1
  67. package/dist/lib/grouped-entry-normalization.js.map +1 -1
  68. package/dist/lib/http.d.ts +12 -7
  69. package/dist/lib/http.d.ts.map +1 -1
  70. package/dist/lib/http.js +28 -15
  71. package/dist/lib/http.js.map +1 -1
  72. package/dist/lib/init-installer.d.ts +2 -1
  73. package/dist/lib/init-installer.d.ts.map +1 -1
  74. package/dist/lib/init-installer.js +29 -2
  75. package/dist/lib/init-installer.js.map +1 -1
  76. package/dist/lib/kimi.d.ts.map +1 -1
  77. package/dist/lib/kimi.js +20 -15
  78. package/dist/lib/kimi.js.map +1 -1
  79. package/dist/lib/maintainer-announcements.d.ts.map +1 -1
  80. package/dist/lib/maintainer-announcements.js +10 -13
  81. package/dist/lib/maintainer-announcements.js.map +1 -1
  82. package/dist/lib/mimo-config.d.ts +29 -0
  83. package/dist/lib/mimo-config.d.ts.map +1 -0
  84. package/dist/lib/mimo-config.js +147 -0
  85. package/dist/lib/mimo-config.js.map +1 -0
  86. package/dist/lib/mimo.d.ts +35 -0
  87. package/dist/lib/mimo.d.ts.map +1 -0
  88. package/dist/lib/mimo.js +236 -0
  89. package/dist/lib/mimo.js.map +1 -0
  90. package/dist/lib/modelsdev-pricing.d.ts.map +1 -1
  91. package/dist/lib/modelsdev-pricing.js +39 -27
  92. package/dist/lib/modelsdev-pricing.js.map +1 -1
  93. package/dist/lib/nanogpt.d.ts.map +1 -1
  94. package/dist/lib/nanogpt.js +40 -30
  95. package/dist/lib/nanogpt.js.map +1 -1
  96. package/dist/lib/ollama-cloud.d.ts +1 -1
  97. package/dist/lib/ollama-cloud.d.ts.map +1 -1
  98. package/dist/lib/ollama-cloud.js +73 -68
  99. package/dist/lib/ollama-cloud.js.map +1 -1
  100. package/dist/lib/openai.d.ts.map +1 -1
  101. package/dist/lib/openai.js +65 -45
  102. package/dist/lib/openai.js.map +1 -1
  103. package/dist/lib/opencode-config-editor.d.ts +6 -0
  104. package/dist/lib/opencode-config-editor.d.ts.map +1 -1
  105. package/dist/lib/opencode-config-editor.js +47 -1
  106. package/dist/lib/opencode-config-editor.js.map +1 -1
  107. package/dist/lib/opencode-config-providers.d.ts.map +1 -1
  108. package/dist/lib/opencode-config-providers.js +13 -16
  109. package/dist/lib/opencode-config-providers.js.map +1 -1
  110. package/dist/lib/opencode-config-read.d.ts +23 -0
  111. package/dist/lib/opencode-config-read.d.ts.map +1 -0
  112. package/dist/lib/opencode-config-read.js +30 -0
  113. package/dist/lib/opencode-config-read.js.map +1 -0
  114. package/dist/lib/opencode-go.d.ts.map +1 -1
  115. package/dist/lib/opencode-go.js +44 -39
  116. package/dist/lib/opencode-go.js.map +1 -1
  117. package/dist/lib/opencode-zen-config.d.ts +34 -0
  118. package/dist/lib/opencode-zen-config.d.ts.map +1 -0
  119. package/dist/lib/opencode-zen-config.js +103 -0
  120. package/dist/lib/opencode-zen-config.js.map +1 -0
  121. package/dist/lib/opencode-zen.d.ts +27 -0
  122. package/dist/lib/opencode-zen.d.ts.map +1 -0
  123. package/dist/lib/opencode-zen.js +143 -0
  124. package/dist/lib/opencode-zen.js.map +1 -0
  125. package/dist/lib/provider-add-command.d.ts.map +1 -1
  126. package/dist/lib/provider-add-command.js +21 -2
  127. package/dist/lib/provider-add-command.js.map +1 -1
  128. package/dist/lib/provider-add-json-v1-questionnaire.d.ts +32 -0
  129. package/dist/lib/provider-add-json-v1-questionnaire.d.ts.map +1 -0
  130. package/dist/lib/provider-add-json-v1-questionnaire.js +336 -0
  131. package/dist/lib/provider-add-json-v1-questionnaire.js.map +1 -0
  132. package/dist/lib/provider-add.d.ts.map +1 -1
  133. package/dist/lib/provider-add.js +11 -2
  134. package/dist/lib/provider-add.js.map +1 -1
  135. package/dist/lib/provider-availability.d.ts +2 -2
  136. package/dist/lib/provider-availability.d.ts.map +1 -1
  137. package/dist/lib/provider-availability.js +2 -3
  138. package/dist/lib/provider-availability.js.map +1 -1
  139. package/dist/lib/provider-metadata.d.ts +289 -1
  140. package/dist/lib/provider-metadata.d.ts.map +1 -1
  141. package/dist/lib/provider-metadata.js +321 -227
  142. package/dist/lib/provider-metadata.js.map +1 -1
  143. package/dist/lib/quota-command-format.d.ts.map +1 -1
  144. package/dist/lib/quota-command-format.js +12 -16
  145. package/dist/lib/quota-command-format.js.map +1 -1
  146. package/dist/lib/quota-dialog-commands.d.ts +59 -2
  147. package/dist/lib/quota-dialog-commands.d.ts.map +1 -1
  148. package/dist/lib/quota-dialog-commands.js +71 -30
  149. package/dist/lib/quota-dialog-commands.js.map +1 -1
  150. package/dist/lib/quota-entry-display.d.ts +2 -0
  151. package/dist/lib/quota-entry-display.d.ts.map +1 -1
  152. package/dist/lib/quota-entry-display.js +27 -13
  153. package/dist/lib/quota-entry-display.js.map +1 -1
  154. package/dist/lib/quota-providers-remote.d.ts +6 -1
  155. package/dist/lib/quota-providers-remote.d.ts.map +1 -1
  156. package/dist/lib/quota-providers-remote.js +376 -12
  157. package/dist/lib/quota-providers-remote.js.map +1 -1
  158. package/dist/lib/quota-providers.d.ts +84 -3
  159. package/dist/lib/quota-providers.d.ts.map +1 -1
  160. package/dist/lib/quota-providers.js +561 -24
  161. package/dist/lib/quota-providers.js.map +1 -1
  162. package/dist/lib/quota-render-data.d.ts +4 -0
  163. package/dist/lib/quota-render-data.d.ts.map +1 -1
  164. package/dist/lib/quota-render-data.js +101 -121
  165. package/dist/lib/quota-render-data.js.map +1 -1
  166. package/dist/lib/quota-runtime-context.d.ts +9 -1
  167. package/dist/lib/quota-runtime-context.d.ts.map +1 -1
  168. package/dist/lib/quota-runtime-context.js +5 -0
  169. package/dist/lib/quota-runtime-context.js.map +1 -1
  170. package/dist/lib/quota-state.d.ts.map +1 -1
  171. package/dist/lib/quota-state.js +26 -2
  172. package/dist/lib/quota-state.js.map +1 -1
  173. package/dist/lib/quota-stats.d.ts +1 -0
  174. package/dist/lib/quota-stats.d.ts.map +1 -1
  175. package/dist/lib/quota-stats.js +14 -4
  176. package/dist/lib/quota-stats.js.map +1 -1
  177. package/dist/lib/quota-status.d.ts.map +1 -1
  178. package/dist/lib/quota-status.js +96 -1
  179. package/dist/lib/quota-status.js.map +1 -1
  180. package/dist/lib/runtime-provider-ids.d.ts +4 -0
  181. package/dist/lib/runtime-provider-ids.d.ts.map +1 -0
  182. package/dist/lib/runtime-provider-ids.js +10 -0
  183. package/dist/lib/runtime-provider-ids.js.map +1 -0
  184. package/dist/lib/session-tokens.d.ts +2 -0
  185. package/dist/lib/session-tokens.d.ts.map +1 -1
  186. package/dist/lib/session-tokens.js +4 -2
  187. package/dist/lib/session-tokens.js.map +1 -1
  188. package/dist/lib/synthetic.d.ts.map +1 -1
  189. package/dist/lib/synthetic.js +37 -32
  190. package/dist/lib/synthetic.js.map +1 -1
  191. package/dist/lib/toast-format-grouped.d.ts +1 -0
  192. package/dist/lib/toast-format-grouped.d.ts.map +1 -1
  193. package/dist/lib/toast-format-grouped.js +33 -29
  194. package/dist/lib/toast-format-grouped.js.map +1 -1
  195. package/dist/lib/tui-refresh-lifecycle.d.ts +17 -0
  196. package/dist/lib/tui-refresh-lifecycle.d.ts.map +1 -0
  197. package/dist/lib/tui-refresh-lifecycle.js +83 -0
  198. package/dist/lib/tui-refresh-lifecycle.js.map +1 -0
  199. package/dist/lib/tui-runtime.d.ts +0 -5
  200. package/dist/lib/tui-runtime.d.ts.map +1 -1
  201. package/dist/lib/tui-runtime.js +1 -6
  202. package/dist/lib/tui-runtime.js.map +1 -1
  203. package/dist/lib/tui-sidebar-format.d.ts +1 -1
  204. package/dist/lib/tui-sidebar-format.d.ts.map +1 -1
  205. package/dist/lib/tui-sidebar-format.js +1 -0
  206. package/dist/lib/tui-sidebar-format.js.map +1 -1
  207. package/dist/lib/types.d.ts +61 -7
  208. package/dist/lib/types.d.ts.map +1 -1
  209. package/dist/lib/types.js +2 -0
  210. package/dist/lib/types.js.map +1 -1
  211. package/dist/lib/xai.d.ts +39 -0
  212. package/dist/lib/xai.d.ts.map +1 -0
  213. package/dist/lib/xai.js +153 -0
  214. package/dist/lib/xai.js.map +1 -0
  215. package/dist/lib/zai.d.ts.map +1 -1
  216. package/dist/lib/zai.js +62 -56
  217. package/dist/lib/zai.js.map +1 -1
  218. package/dist/lib/zhipu.d.ts.map +1 -1
  219. package/dist/lib/zhipu.js +55 -50
  220. package/dist/lib/zhipu.js.map +1 -1
  221. package/dist/plugin.d.ts.map +1 -1
  222. package/dist/plugin.js +36 -157
  223. package/dist/plugin.js.map +1 -1
  224. package/dist/providers/copilot.d.ts.map +1 -1
  225. package/dist/providers/copilot.js +24 -3
  226. package/dist/providers/copilot.js.map +1 -1
  227. package/dist/providers/glm-coding-plan-provider.d.ts +35 -0
  228. package/dist/providers/glm-coding-plan-provider.d.ts.map +1 -0
  229. package/dist/providers/glm-coding-plan-provider.js +40 -0
  230. package/dist/providers/glm-coding-plan-provider.js.map +1 -0
  231. package/dist/providers/google-agy.d.ts.map +1 -1
  232. package/dist/providers/google-agy.js +60 -36
  233. package/dist/providers/google-agy.js.map +1 -1
  234. package/dist/providers/mimo.d.ts +3 -0
  235. package/dist/providers/mimo.d.ts.map +1 -0
  236. package/dist/providers/mimo.js +120 -0
  237. package/dist/providers/mimo.js.map +1 -0
  238. package/dist/providers/minimax-coding-plan.d.ts.map +1 -1
  239. package/dist/providers/minimax-coding-plan.js +60 -37
  240. package/dist/providers/minimax-coding-plan.js.map +1 -1
  241. package/dist/providers/opencode-zen.d.ts +3 -0
  242. package/dist/providers/opencode-zen.d.ts.map +1 -0
  243. package/dist/providers/opencode-zen.js +94 -0
  244. package/dist/providers/opencode-zen.js.map +1 -0
  245. package/dist/providers/quota-providers.d.ts.map +1 -1
  246. package/dist/providers/quota-providers.js +5 -3
  247. package/dist/providers/quota-providers.js.map +1 -1
  248. package/dist/providers/registry.d.ts.map +1 -1
  249. package/dist/providers/registry.js +6 -0
  250. package/dist/providers/registry.js.map +1 -1
  251. package/dist/providers/xai.d.ts +6 -0
  252. package/dist/providers/xai.d.ts.map +1 -0
  253. package/dist/providers/xai.js +51 -0
  254. package/dist/providers/xai.js.map +1 -0
  255. package/dist/providers/zai.d.ts +1 -7
  256. package/dist/providers/zai.d.ts.map +1 -1
  257. package/dist/providers/zai.js +9 -45
  258. package/dist/providers/zai.js.map +1 -1
  259. package/dist/providers/zhipu.d.ts +1 -7
  260. package/dist/providers/zhipu.d.ts.map +1 -1
  261. package/dist/providers/zhipu.js +9 -45
  262. package/dist/providers/zhipu.js.map +1 -1
  263. package/dist/tui.d.ts.map +1 -1
  264. package/dist/tui.js +47 -136
  265. package/dist/tui.tsx +62 -179
  266. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"quota-entry-display.js","sourceRoot":"","sources":["../../src/lib/quota-entry-display.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,MAAM,UAAU,8BAA8B,CAAC,KAAc;IAC3D,OAAO,KAAK,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,IAAY;IACzD,MAAM,KAAK,GAAG,8BAA8B,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACjE,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,IAAI,wCAAwC,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvE,IAAI,2DAA2D,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzF,IAAI,2CAA2C,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7E,IAAI,yCAAyC,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC3E,IAAI,uCAAuC,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACxE,IAAI,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3D,IAAI,sCAAsC,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IACxE,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC;IAEzD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,wCAAwC,CAAC,KAAsB;IAC7E,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IAClC,MAAM,WAAW,GACf,8BAA8B,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QACjD,8BAA8B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE7C,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAC9B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,WAAW,EAAE,CAAC;IAClG,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC/D,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"quota-entry-display.js","sourceRoot":"","sources":["../../src/lib/quota-entry-display.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,11 @@
1
1
  import type { QuotaToastEntry } from "./entries.js";
2
2
  import type { RemoteApiQuotaProviderDefinition } from "./quota-providers.js";
3
3
  export declare const QUOTA_PROVIDER_MAX_BODY_BYTES: number;
4
- export declare const QUOTA_PROVIDER_MAX_ACCOUNTING_ROWS = 100;
4
+ export declare const QUOTA_PROVIDER_MAX_REMOTE_ROWS = 100;
5
+ export declare const JSON_V1_MAX_RESPONSE_DEPTH = 32;
6
+ export declare const JSON_V1_MAX_CANDIDATES = 1600;
7
+ export declare const JSON_V1_MAX_ENTRIES = 100;
8
+ export declare const JSON_V1_MAX_DETAILED_ERRORS = 16;
5
9
  export declare const QUOTA_PROVIDER_CONCURRENCY = 4;
6
10
  export type QuotaProviderAuthSource = "env" | "opencode.json" | "opencode.jsonc" | "auth.json";
7
11
  export interface QuotaProviderAuthResolution {
@@ -13,6 +17,7 @@ export interface QuotaProviderAuthResolution {
13
17
  export type RemoteQuotaProviderResult = {
14
18
  success: true;
15
19
  entries: QuotaToastEntry[];
20
+ rowErrors?: string[];
16
21
  } | {
17
22
  success: false;
18
23
  error: string;
@@ -1 +1 @@
1
- {"version":3,"file":"quota-providers-remote.d.ts","sourceRoot":"","sources":["../../src/lib/quota-providers-remote.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,eAAe,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AAW7E,eAAO,MAAM,6BAA6B,QAAa,CAAC;AACxD,eAAO,MAAM,kCAAkC,MAAM,CAAC;AACtD,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAa5C,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,eAAe,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAE/F,MAAM,WAAW,2BAA2B;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,uBAAuB,GAAG,IAAI,CAAC;IACvC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,MAAM,yBAAyB,GACjC;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,eAAe,EAAE,CAAA;CAAE,GAC7C;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAyCtC,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,2BAA2B,CAAC,CAyBtC;AA6ND,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,gCAAgC,EACxC,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,yBAAyB,CAAC,CAgDpC;AAED,wBAAsB,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAC3C,MAAM,EAAE,SAAS,CAAC,EAAE,EACpB,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAC3C,OAAO,CAAC,CAAC,EAAE,CAAC,CAiBd"}
1
+ {"version":3,"file":"quota-providers-remote.d.ts","sourceRoot":"","sources":["../../src/lib/quota-providers-remote.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,eAAe,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAMV,gCAAgC,EACjC,MAAM,sBAAsB,CAAC;AAgB9B,eAAO,MAAM,6BAA6B,QAAa,CAAC;AACxD,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAClD,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAC5C,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAa5C,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,eAAe,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAE/F,MAAM,WAAW,2BAA2B;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,uBAAuB,GAAG,IAAI,CAAC;IACvC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,MAAM,yBAAyB,GACjC;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,eAAe,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACnE;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAyCtC,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,2BAA2B,CAAC,CAyBtC;AA6lBD,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,gCAAgC,EACxC,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,yBAAyB,CAAC,CAqDpC;AAED,wBAAsB,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAC3C,MAAM,EAAE,SAAS,CAAC,EAAE,EACpB,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAC3C,OAAO,CAAC,CAAC,EAAE,CAAC,CAiBd"}
@@ -1,9 +1,14 @@
1
1
  import { createProviderApiKeyResolver, getApiKeyCheckedPaths, getGlobalOpencodeConfigCandidatePaths, } from "./api-key-resolver.js";
2
2
  import { sanitizeSingleLineDisplayText } from "./display-sanitize.js";
3
+ import { JSON_V1_MAX_DISPLAY_CODE_POINTS, JSON_V1_MAX_NUMBER_MAGNITUDE, normalizeJsonV1Timestamp, } from "./quota-providers.js";
3
4
  import { getAuthPaths, readAuthFile } from "./opencode-auth.js";
4
5
  import { REQUEST_TIMEOUT_MS } from "./types.js";
5
6
  export const QUOTA_PROVIDER_MAX_BODY_BYTES = 256 * 1024;
6
- export const QUOTA_PROVIDER_MAX_ACCOUNTING_ROWS = 100;
7
+ export const QUOTA_PROVIDER_MAX_REMOTE_ROWS = 100;
8
+ export const JSON_V1_MAX_RESPONSE_DEPTH = 32;
9
+ export const JSON_V1_MAX_CANDIDATES = 1_600;
10
+ export const JSON_V1_MAX_ENTRIES = 100;
11
+ export const JSON_V1_MAX_DETAILED_ERRORS = 16;
7
12
  export const QUOTA_PROVIDER_CONCURRENCY = 4;
8
13
  const RESULT_TYPES = new Set([
9
14
  "quota",
@@ -125,15 +130,15 @@ async function readBoundedJson(response) {
125
130
  throw new Error("Invalid JSON response");
126
131
  }
127
132
  }
128
- function parseAccountingV1(source, body) {
133
+ function parseQuotaV1(source, body) {
129
134
  if (!isRecord(body) ||
130
135
  !hasOnlyKeys(body, ["version", "entries"]) ||
131
- body.version !== "accounting-v1" ||
136
+ body.version !== "quota-v1" ||
132
137
  !Array.isArray(body.entries)) {
133
- return { success: false, error: "Invalid accounting-v1 response" };
138
+ return { success: false, error: "Invalid quota-v1 response" };
134
139
  }
135
- if (body.entries.length < 1 || body.entries.length > QUOTA_PROVIDER_MAX_ACCOUNTING_ROWS) {
136
- return { success: false, error: "Invalid accounting-v1 response" };
140
+ if (body.entries.length < 1 || body.entries.length > QUOTA_PROVIDER_MAX_REMOTE_ROWS) {
141
+ return { success: false, error: "Invalid quota-v1 response" };
137
142
  }
138
143
  const entries = [];
139
144
  for (const raw of body.entries) {
@@ -149,7 +154,7 @@ function parseAccountingV1(source, body) {
149
154
  "resetTimeIso",
150
155
  "observedAtIso",
151
156
  ])) {
152
- return { success: false, error: "Invalid accounting-v1 response" };
157
+ return { success: false, error: "Invalid quota-v1 response" };
153
158
  }
154
159
  const name = boundedDisplayText(raw.name, 80);
155
160
  const resultType = typeof raw.resultType === "string" && RESULT_TYPES.has(raw.resultType)
@@ -173,7 +178,7 @@ function parseAccountingV1(source, body) {
173
178
  (raw.right !== undefined && right === null) ||
174
179
  resetTimeIso === null ||
175
180
  observedAtIso === null) {
176
- return { success: false, error: "Invalid accounting-v1 response" };
181
+ return { success: false, error: "Invalid quota-v1 response" };
177
182
  }
178
183
  const common = {
179
184
  accounting: accountingMetadata(resultType, observedAtIso),
@@ -197,10 +202,364 @@ function parseAccountingV1(source, body) {
197
202
  entries.push({ ...common, kind: "value", value });
198
203
  continue;
199
204
  }
200
- return { success: false, error: "Invalid accounting-v1 response" };
205
+ return { success: false, error: "Invalid quota-v1 response" };
201
206
  }
202
207
  return { success: true, entries };
203
208
  }
209
+ function isJsonV1ResponseDepthValid(value) {
210
+ if (!value || typeof value !== "object")
211
+ return true;
212
+ const stack = [{ value, depth: 1 }];
213
+ while (stack.length > 0) {
214
+ const current = stack.pop();
215
+ if (current.depth > JSON_V1_MAX_RESPONSE_DEPTH)
216
+ return false;
217
+ const children = Array.isArray(current.value) ? current.value : Object.values(current.value);
218
+ for (const child of children) {
219
+ if (child && typeof child === "object") {
220
+ stack.push({ value: child, depth: current.depth + 1 });
221
+ }
222
+ }
223
+ }
224
+ return true;
225
+ }
226
+ function resolveJsonV1Path(root, path) {
227
+ let current = root;
228
+ for (let index = 0; index < path.length; index += 1) {
229
+ if (!isRecord(current))
230
+ return { state: "wrong-type" };
231
+ const segment = path[index];
232
+ if (!Object.prototype.hasOwnProperty.call(current, segment))
233
+ return { state: "missing" };
234
+ current = current[segment];
235
+ if (current === null)
236
+ return { state: "null" };
237
+ if (index < path.length - 1 && !isRecord(current))
238
+ return { state: "wrong-type" };
239
+ }
240
+ return { state: "value", value: current };
241
+ }
242
+ function jsonV1SourceValue(row, source) {
243
+ if ("literal" in source) {
244
+ return source.literal === null ? { state: "null" } : { state: "value", value: source.literal };
245
+ }
246
+ return resolveJsonV1Path(row, source.path);
247
+ }
248
+ function jsonV1ResolutionIssue(resolution) {
249
+ switch (resolution.state) {
250
+ case "missing":
251
+ return "was missing";
252
+ case "null":
253
+ return "was null";
254
+ case "wrong-type":
255
+ return "had wrong type";
256
+ }
257
+ }
258
+ function resolveJsonV1Number(row, source) {
259
+ const resolution = jsonV1SourceValue(row, source);
260
+ if (resolution.state !== "value") {
261
+ return { ok: false, issue: jsonV1ResolutionIssue(resolution) };
262
+ }
263
+ if (typeof resolution.value !== "number" || !Number.isFinite(resolution.value)) {
264
+ return { ok: false, issue: "had wrong type" };
265
+ }
266
+ if (Math.abs(resolution.value) > JSON_V1_MAX_NUMBER_MAGNITUDE) {
267
+ return { ok: false, issue: "exceeded the numeric magnitude limit" };
268
+ }
269
+ const value = "path" in source && source.divideBy !== undefined
270
+ ? resolution.value / source.divideBy
271
+ : resolution.value;
272
+ return Number.isFinite(value)
273
+ ? { ok: true, value }
274
+ : { ok: false, issue: "did not resolve to a finite number" };
275
+ }
276
+ function resolveJsonV1Text(row, source) {
277
+ const resolution = jsonV1SourceValue(row, source);
278
+ if (resolution.state !== "value") {
279
+ return { ok: false, issue: jsonV1ResolutionIssue(resolution) };
280
+ }
281
+ if (typeof resolution.value !== "string") {
282
+ return { ok: false, issue: "had wrong type" };
283
+ }
284
+ const normalized = boundedDisplayText(resolution.value, JSON_V1_MAX_DISPLAY_CODE_POINTS);
285
+ return normalized
286
+ ? { ok: true, value: normalized }
287
+ : { ok: false, issue: "did not resolve to bounded display text" };
288
+ }
289
+ function resolveJsonV1TimestampSource(row, source) {
290
+ const resolution = jsonV1SourceValue(row, source);
291
+ if (resolution.state !== "value") {
292
+ return { ok: false, issue: jsonV1ResolutionIssue(resolution) };
293
+ }
294
+ const normalized = normalizeJsonV1Timestamp(resolution.value, source.encoding);
295
+ return normalized
296
+ ? { ok: true, value: normalized }
297
+ : { ok: false, issue: "did not resolve to a valid timestamp" };
298
+ }
299
+ function jsonV1CandidateError(mappingIndex, field, issue, rowIndex) {
300
+ return `adapter.mappings[${mappingIndex}].${field} ${issue} at row ${rowIndex}`;
301
+ }
302
+ function formatJsonV1Value(value, mapping) {
303
+ const text = String(value);
304
+ if (!mapping.unit)
305
+ return text;
306
+ return mapping.unitPosition === "prefix" ? `${mapping.unit}${text}` : `${text} ${mapping.unit}`;
307
+ }
308
+ function formatJsonV1Pair(left, right, mapping) {
309
+ const pair = `${String(left)}/${String(right)}`;
310
+ if (!mapping.unit)
311
+ return pair;
312
+ return mapping.unitPosition === "prefix"
313
+ ? `${mapping.unit}${String(left)}/${mapping.unit}${String(right)}`
314
+ : `${pair} ${mapping.unit}`;
315
+ }
316
+ function jsonV1DerivedPercentageIssue(value) {
317
+ if (!Number.isFinite(value))
318
+ return "produced a non-finite percentage";
319
+ if (Math.abs(value) > JSON_V1_MAX_NUMBER_MAGNITUDE) {
320
+ return "produced a percentage beyond the numeric magnitude limit";
321
+ }
322
+ return null;
323
+ }
324
+ function mapJsonV1Candidate(source, row, rowIndex, mapping, mappingIndex) {
325
+ const fail = (field, issue) => ({
326
+ error: jsonV1CandidateError(mappingIndex, field, issue, rowIndex),
327
+ });
328
+ let resetTimeIso;
329
+ if (mapping.resetTime) {
330
+ const resolved = resolveJsonV1TimestampSource(row, mapping.resetTime);
331
+ if (!resolved.ok)
332
+ return fail("resetTime", resolved.issue);
333
+ resetTimeIso = resolved.value;
334
+ }
335
+ let observedAtIso;
336
+ if (mapping.observedTime) {
337
+ const resolved = resolveJsonV1TimestampSource(row, mapping.observedTime);
338
+ if (!resolved.ok)
339
+ return fail("observedTime", resolved.issue);
340
+ observedAtIso = resolved.value;
341
+ }
342
+ const common = {
343
+ accounting: accountingMetadata(mapping.resultType, observedAtIso),
344
+ name: `${source.label} ${mapping.name}`,
345
+ group: source.label,
346
+ ...(mapping.label ? { label: mapping.label } : {}),
347
+ ...(resetTimeIso ? { resetTimeIso } : {}),
348
+ };
349
+ switch (mapping.metric.type) {
350
+ case "percentage": {
351
+ const percentage = resolveJsonV1Number(row, mapping.metric.percentage);
352
+ if (!percentage.ok)
353
+ return fail("metric.percentage", percentage.issue);
354
+ if (mapping.metric.meaning === "remaining" && percentage.value > 100) {
355
+ return fail("metric.percentage", "must not exceed 100 for remaining meaning");
356
+ }
357
+ if (mapping.metric.meaning === "used" && percentage.value < 0) {
358
+ return fail("metric.percentage", "must be non-negative for used meaning");
359
+ }
360
+ return {
361
+ entry: {
362
+ ...common,
363
+ kind: "percent",
364
+ percentRemaining: mapping.metric.meaning === "remaining" ? percentage.value : 100 - percentage.value,
365
+ },
366
+ };
367
+ }
368
+ case "used-limit": {
369
+ const used = resolveJsonV1Number(row, mapping.metric.used);
370
+ if (!used.ok)
371
+ return fail("metric.used", used.issue);
372
+ const limit = resolveJsonV1Number(row, mapping.metric.limit);
373
+ if (!limit.ok)
374
+ return fail("metric.limit", limit.issue);
375
+ if (used.value < 0)
376
+ return fail("metric.used", "must be non-negative");
377
+ if (limit.value <= 0)
378
+ return fail("metric.limit", "must be greater than zero");
379
+ const percentRemaining = ((limit.value - used.value) / limit.value) * 100;
380
+ const percentageIssue = jsonV1DerivedPercentageIssue(percentRemaining);
381
+ if (percentageIssue)
382
+ return fail("metric.limit", percentageIssue);
383
+ return {
384
+ entry: {
385
+ ...common,
386
+ kind: "percent",
387
+ percentRemaining,
388
+ right: formatJsonV1Pair(used.value, limit.value, mapping),
389
+ },
390
+ };
391
+ }
392
+ case "remaining-limit": {
393
+ const remaining = resolveJsonV1Number(row, mapping.metric.remaining);
394
+ if (!remaining.ok)
395
+ return fail("metric.remaining", remaining.issue);
396
+ const limit = resolveJsonV1Number(row, mapping.metric.limit);
397
+ if (!limit.ok)
398
+ return fail("metric.limit", limit.issue);
399
+ if (limit.value <= 0)
400
+ return fail("metric.limit", "must be greater than zero");
401
+ if (remaining.value > limit.value) {
402
+ return fail("metric.remaining", "must not exceed limit");
403
+ }
404
+ const percentRemaining = (remaining.value / limit.value) * 100;
405
+ const percentageIssue = jsonV1DerivedPercentageIssue(percentRemaining);
406
+ if (percentageIssue)
407
+ return fail("metric.limit", percentageIssue);
408
+ return {
409
+ entry: {
410
+ ...common,
411
+ kind: "percent",
412
+ percentRemaining,
413
+ right: formatJsonV1Pair(remaining.value, limit.value, mapping),
414
+ },
415
+ };
416
+ }
417
+ case "spend-budget": {
418
+ const spend = resolveJsonV1Number(row, mapping.metric.spend);
419
+ if (!spend.ok)
420
+ return fail("metric.spend", spend.issue);
421
+ const budget = resolveJsonV1Number(row, mapping.metric.budget);
422
+ if (!budget.ok)
423
+ return fail("metric.budget", budget.issue);
424
+ if (spend.value < 0)
425
+ return fail("metric.spend", "must be non-negative");
426
+ if (budget.value <= 0)
427
+ return fail("metric.budget", "must be greater than zero");
428
+ const percentRemaining = ((budget.value - spend.value) / budget.value) * 100;
429
+ const percentageIssue = jsonV1DerivedPercentageIssue(percentRemaining);
430
+ if (percentageIssue)
431
+ return fail("metric.budget", percentageIssue);
432
+ return {
433
+ entry: {
434
+ ...common,
435
+ kind: "percent",
436
+ percentRemaining,
437
+ right: formatJsonV1Pair(spend.value, budget.value, mapping),
438
+ },
439
+ };
440
+ }
441
+ case "remaining-budget": {
442
+ const remaining = resolveJsonV1Number(row, mapping.metric.remaining);
443
+ if (!remaining.ok)
444
+ return fail("metric.remaining", remaining.issue);
445
+ const budget = resolveJsonV1Number(row, mapping.metric.budget);
446
+ if (!budget.ok)
447
+ return fail("metric.budget", budget.issue);
448
+ if (budget.value <= 0)
449
+ return fail("metric.budget", "must be greater than zero");
450
+ if (remaining.value > budget.value) {
451
+ return fail("metric.remaining", "must not exceed budget");
452
+ }
453
+ const percentRemaining = (remaining.value / budget.value) * 100;
454
+ const percentageIssue = jsonV1DerivedPercentageIssue(percentRemaining);
455
+ if (percentageIssue)
456
+ return fail("metric.budget", percentageIssue);
457
+ return {
458
+ entry: {
459
+ ...common,
460
+ kind: "percent",
461
+ percentRemaining,
462
+ right: formatJsonV1Pair(remaining.value, budget.value, mapping),
463
+ },
464
+ };
465
+ }
466
+ case "value": {
467
+ const value = resolveJsonV1Number(row, mapping.metric.value);
468
+ if (!value.ok)
469
+ return fail("metric.value", value.issue);
470
+ if (!["remaining", "balance"].includes(mapping.metric.valueType) && value.value < 0) {
471
+ return fail("metric.value", "must be non-negative");
472
+ }
473
+ return {
474
+ entry: {
475
+ ...common,
476
+ kind: "value",
477
+ value: formatJsonV1Value(value.value, mapping),
478
+ },
479
+ };
480
+ }
481
+ case "status": {
482
+ const value = resolveJsonV1Text(row, mapping.metric.value);
483
+ if (!value.ok)
484
+ return fail("metric.value", value.issue);
485
+ return { entry: { ...common, kind: "value", value: value.value } };
486
+ }
487
+ }
488
+ }
489
+ function parseJsonV1(source, body) {
490
+ const invalid = (message) => ({
491
+ success: false,
492
+ error: `Invalid json-v1 response: ${message}`,
493
+ });
494
+ if (!isJsonV1ResponseDepthValid(body)) {
495
+ return invalid(`nesting depth exceeded ${JSON_V1_MAX_RESPONSE_DEPTH}`);
496
+ }
497
+ let rows;
498
+ if (source.adapter.rowsPath) {
499
+ if (!isRecord(body))
500
+ return invalid("adapter.rowsPath requires an object root");
501
+ const resolved = resolveJsonV1Path(body, source.adapter.rowsPath);
502
+ if (resolved.state !== "value") {
503
+ return invalid(`adapter.rowsPath ${jsonV1ResolutionIssue(resolved)}`);
504
+ }
505
+ if (!Array.isArray(resolved.value)) {
506
+ return invalid("adapter.rowsPath did not resolve to an array");
507
+ }
508
+ rows = resolved.value;
509
+ }
510
+ else if (Array.isArray(body)) {
511
+ rows = body;
512
+ }
513
+ else if (isRecord(body)) {
514
+ rows = [body];
515
+ }
516
+ else {
517
+ return invalid("expected an object or array root");
518
+ }
519
+ if (rows.length < 1 || rows.length > QUOTA_PROVIDER_MAX_REMOTE_ROWS) {
520
+ return invalid(`selected rows must contain 1-${QUOTA_PROVIDER_MAX_REMOTE_ROWS} elements`);
521
+ }
522
+ if (rows.length * source.adapter.mappings.length > JSON_V1_MAX_CANDIDATES) {
523
+ return invalid(`candidate count exceeded ${JSON_V1_MAX_CANDIDATES}`);
524
+ }
525
+ const entries = [];
526
+ const rowErrors = [];
527
+ let errorCount = 0;
528
+ const recordError = (error) => {
529
+ errorCount += 1;
530
+ if (rowErrors.length < JSON_V1_MAX_DETAILED_ERRORS)
531
+ rowErrors.push(error);
532
+ };
533
+ for (let rowIndex = 0; rowIndex < rows.length; rowIndex += 1) {
534
+ const row = rows[rowIndex];
535
+ for (let mappingIndex = 0; mappingIndex < source.adapter.mappings.length; mappingIndex += 1) {
536
+ if (!isRecord(row)) {
537
+ recordError(jsonV1CandidateError(mappingIndex, "metric", "requires an object row", rowIndex));
538
+ continue;
539
+ }
540
+ const mapped = mapJsonV1Candidate(source, row, rowIndex, source.adapter.mappings[mappingIndex], mappingIndex);
541
+ if ("error" in mapped) {
542
+ recordError(mapped.error);
543
+ continue;
544
+ }
545
+ entries.push(mapped.entry);
546
+ if (entries.length > JSON_V1_MAX_ENTRIES) {
547
+ return invalid(`more than ${JSON_V1_MAX_ENTRIES} entries were produced`);
548
+ }
549
+ }
550
+ }
551
+ if (entries.length === 0) {
552
+ return invalid(rowErrors[0] ?? "no mappings produced entries");
553
+ }
554
+ if (errorCount > rowErrors.length) {
555
+ rowErrors.push("Additional json-v1 mapping errors omitted");
556
+ }
557
+ return {
558
+ success: true,
559
+ entries,
560
+ ...(rowErrors.length > 0 ? { rowErrors } : {}),
561
+ };
562
+ }
204
563
  function parseOpenRouterKeyV1(source, body) {
205
564
  if (!isRecord(body) || !isRecord(body.data)) {
206
565
  return { success: false, error: "Invalid openrouter-key-v1 response" };
@@ -275,9 +634,14 @@ export async function fetchRemoteQuotaProvider(source, apiKey, requestTimeoutMs)
275
634
  return { success: false, error: `HTTP ${response.status}` };
276
635
  }
277
636
  const body = await readBoundedJson(response);
278
- return source.format === "accounting-v1"
279
- ? parseAccountingV1(source, body)
280
- : parseOpenRouterKeyV1(source, body);
637
+ switch (source.format) {
638
+ case "quota-v1":
639
+ return parseQuotaV1(source, body);
640
+ case "openrouter-key-v1":
641
+ return parseOpenRouterKeyV1(source, body);
642
+ case "json-v1":
643
+ return parseJsonV1(source, body);
644
+ }
281
645
  }
282
646
  catch (error) {
283
647
  if (controller.signal.aborted || (error instanceof Error && error.name === "AbortError")) {
@@ -1 +1 @@
1
- {"version":3,"file":"quota-providers-remote.js","sourceRoot":"","sources":["../../src/lib/quota-providers-remote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quota-providers-remote.js","sourceRoot":"","sources":["../../src/lib/quota-providers-remote.ts"],"names":[],"mappings":"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"}