dsh-coding-subscription-oauth 0.6.4 → 0.7.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 (151) hide show
  1. package/CHANGELOG.md +291 -255
  2. package/CONTRIBUTING.md +138 -129
  3. package/INSTALL.md +261 -256
  4. package/LICENSE +19 -19
  5. package/NOTICE +11 -11
  6. package/README.de.md +303 -303
  7. package/README.es.md +304 -304
  8. package/README.fr.md +304 -304
  9. package/README.ja.md +304 -304
  10. package/README.ko.md +304 -304
  11. package/README.md +321 -320
  12. package/README.pt-BR.md +304 -304
  13. package/README.ru.md +304 -304
  14. package/README.zh-CN.md +319 -318
  15. package/compatibility/dsh-bom.json +36 -30
  16. package/cordis.patch.yml +13 -13
  17. package/docs/00-project-rules.md +213 -212
  18. package/docs/02-architecture.md +142 -138
  19. package/docs/02-architecture.zh-CN.md +142 -138
  20. package/lib/auth-routes.d.ts +10 -1
  21. package/lib/auth-routes.d.ts.map +1 -1
  22. package/lib/bin.js +483 -50
  23. package/lib/bin.js.map +4 -4
  24. package/lib/client.js +5 -5
  25. package/lib/client.js.map +4 -4
  26. package/lib/compatibility.d.ts +0 -1
  27. package/lib/compatibility.d.ts.map +1 -1
  28. package/lib/gateway-protocol.d.ts +3 -46
  29. package/lib/gateway-protocol.d.ts.map +1 -1
  30. package/lib/gateway-routes.d.ts.map +1 -1
  31. package/lib/grok-errors.d.ts +2 -12
  32. package/lib/grok-errors.d.ts.map +1 -1
  33. package/lib/grok-imagine/client.d.ts +73 -0
  34. package/lib/grok-imagine/client.d.ts.map +1 -0
  35. package/lib/grok-imagine/index.d.ts +8 -0
  36. package/lib/grok-imagine/index.d.ts.map +1 -0
  37. package/lib/grok-imagine/net.d.ts +10 -0
  38. package/lib/grok-imagine/net.d.ts.map +1 -0
  39. package/lib/grok-imagine/parse.d.ts +20 -0
  40. package/lib/grok-imagine/parse.d.ts.map +1 -0
  41. package/lib/grok-imagine/types.d.ts +191 -0
  42. package/lib/grok-imagine/types.d.ts.map +1 -0
  43. package/lib/grok-imagine.d.ts +3 -263
  44. package/lib/grok-imagine.d.ts.map +1 -1
  45. package/lib/http-json.d.ts +2 -9
  46. package/lib/http-json.d.ts.map +1 -1
  47. package/lib/ids.d.ts +4 -0
  48. package/lib/ids.d.ts.map +1 -1
  49. package/lib/index.d.ts +2 -1
  50. package/lib/index.d.ts.map +1 -1
  51. package/lib/index.js +730 -196
  52. package/lib/index.js.map +4 -4
  53. package/lib/invariant.js.map +1 -1
  54. package/lib/kimi-errors.d.ts +2 -12
  55. package/lib/kimi-errors.d.ts.map +1 -1
  56. package/lib/oauth-session.d.ts +2 -0
  57. package/lib/oauth-session.d.ts.map +1 -1
  58. package/lib/session.d.ts +2 -0
  59. package/lib/session.d.ts.map +1 -1
  60. package/lib/store.d.ts +73 -1
  61. package/lib/store.d.ts.map +1 -1
  62. package/media/en/settings_accounts.png +0 -0
  63. package/media/en/settings_capabilities.png +0 -0
  64. package/media/en/settings_gateway.png +0 -0
  65. package/media/settings_accounts.png +0 -0
  66. package/media/settings_capabilities.png +0 -0
  67. package/media/settings_gateway.png +0 -0
  68. package/media/settings_overview.png +0 -0
  69. package/media/zh-CN/settings_accounts.png +0 -0
  70. package/media/zh-CN/settings_capabilities.png +0 -0
  71. package/media/zh-CN/settings_gateway.png +0 -0
  72. package/package.json +224 -221
  73. package/patches/dsh-agy@0.1.2.patch +25 -25
  74. package/scripts/release.mjs +187 -186
  75. package/scripts/smoke-deployed-routes.mjs +146 -146
  76. package/scripts/verify-deployed-catalog.mjs +87 -87
  77. package/src/adapter.ts +0 -348
  78. package/src/alias-adapter.ts +0 -147
  79. package/src/auth-routes.ts +0 -921
  80. package/src/auth.ts +0 -67
  81. package/src/bin.ts +0 -350
  82. package/src/capability-routes.ts +0 -279
  83. package/src/capability-runtime.ts +0 -314
  84. package/src/capability-settings.ts +0 -671
  85. package/src/capability-tools.ts +0 -685
  86. package/src/catalog.ts +0 -271
  87. package/src/client/GrokBuildSettings.tsx +0 -771
  88. package/src/client/api.ts +0 -88
  89. package/src/client/components/AboutTab.tsx +0 -30
  90. package/src/client/components/AccountsTab.tsx +0 -241
  91. package/src/client/components/Badge.tsx +0 -33
  92. package/src/client/components/CapabilitiesTab.tsx +0 -265
  93. package/src/client/components/CliPullPreview.tsx +0 -116
  94. package/src/client/components/CopyButton.tsx +0 -57
  95. package/src/client/components/GatewayTab.tsx +0 -469
  96. package/src/client/components/NoticeBanner.tsx +0 -46
  97. package/src/client/components/ProgressBar.tsx +0 -53
  98. package/src/client/components/ProviderCard.tsx +0 -606
  99. package/src/client/components/SettingsTabs.tsx +0 -75
  100. package/src/client/components/ToggleSwitch.tsx +0 -71
  101. package/src/client/constants.ts +0 -230
  102. package/src/client/display.ts +0 -61
  103. package/src/client/dshClientAdapter.ts +0 -127
  104. package/src/client/gatewaySnippets.ts +0 -37
  105. package/src/client/index.tsx +0 -156
  106. package/src/client/locales.ts +0 -540
  107. package/src/client/microStyles.ts +0 -52
  108. package/src/client/parsers.ts +0 -398
  109. package/src/client/styles.ts +0 -325
  110. package/src/client/types.ts +0 -199
  111. package/src/codex-http.ts +0 -447
  112. package/src/codex-images.ts +0 -503
  113. package/src/codex-model-capabilities.ts +0 -320
  114. package/src/codex-search.ts +0 -245
  115. package/src/codex-usage.ts +0 -263
  116. package/src/compatibility.ts +0 -55
  117. package/src/dsh-host-adapter.ts +0 -173
  118. package/src/gateway-anthropic-messages.ts +0 -84
  119. package/src/gateway-auth.ts +0 -102
  120. package/src/gateway-backend.ts +0 -274
  121. package/src/gateway-body.ts +0 -49
  122. package/src/gateway-config.ts +0 -76
  123. package/src/gateway-http.ts +0 -104
  124. package/src/gateway-openai-chat.ts +0 -124
  125. package/src/gateway-openai-responses.ts +0 -53
  126. package/src/gateway-parse.ts +0 -224
  127. package/src/gateway-protocol.ts +0 -52
  128. package/src/gateway-routes.ts +0 -158
  129. package/src/gateway.ts +0 -258
  130. package/src/grok-errors.ts +0 -24
  131. package/src/grok-imagine.ts +0 -1627
  132. package/src/grok-import.ts +0 -151
  133. package/src/http-json.ts +0 -82
  134. package/src/ids.ts +0 -59
  135. package/src/imagine-routes.ts +0 -463
  136. package/src/index.ts +0 -735
  137. package/src/invariant.ts +0 -17
  138. package/src/kimi-errors.ts +0 -26
  139. package/src/media-store.ts +0 -927
  140. package/src/oauth-import-routes.ts +0 -324
  141. package/src/oauth-providers.ts +0 -152
  142. package/src/oauth-session.ts +0 -183
  143. package/src/oauth-sources.ts +0 -1104
  144. package/src/oauth.ts +0 -620
  145. package/src/provider.ts +0 -128
  146. package/src/proxy.ts +0 -11
  147. package/src/redact.ts +0 -72
  148. package/src/session.ts +0 -218
  149. package/src/store.ts +0 -217
  150. package/src/web-origin.ts +0 -296
  151. package/src/web-routes.ts +0 -38
@@ -26,7 +26,6 @@ export declare const DSH_EXACT_BOM: Readonly<{
26
26
  readonly "@deepseek-ai/dsh-atomic-write": "0.1.1-rc.2";
27
27
  readonly "@deepseek-ai/dsh-attachment": "0.1.1-rc.2";
28
28
  readonly "@deepseek-ai/dsh-client-locale": "0.1.1-rc.2";
29
- readonly "@deepseek-ai/dsh-client-runtime": "0.1.1-rc.2";
30
29
  readonly "@deepseek-ai/dsh-client-ui-settings": "0.1.1-rc.2";
31
30
  readonly "@deepseek-ai/dsh-client-ui-slots": "0.1.1-rc.2";
32
31
  readonly "@deepseek-ai/dsh-client-web": "0.1.1-rc.2";
@@ -1 +1 @@
1
- {"version":3,"file":"compatibility.d.ts","sourceRoot":"","sources":["../../src/compatibility.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAEhF,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEhF,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,GAAG,eAAe,GAAG,SAAS,CAAC;IACpE,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sCAAsC;IACtD,QAAQ,CAAC,aAAa,EAAE,2BAA2B,CAAC;IACpD,WAAW,IAAI,SAAS,0BAA0B,EAAE,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,cAAc,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,KAAK,GAAG,YAAY,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACnE,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;EAoBf,CAAC;AAEZ,wBAAgB,uBAAuB,CACtC,WAAW,EAAE,SAAS,0BAA0B,EAAE,GAChD,0BAA0B,EAAE,CAE9B"}
1
+ {"version":3,"file":"compatibility.d.ts","sourceRoot":"","sources":["../../src/compatibility.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAEhF,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEhF,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,GAAG,eAAe,GAAG,SAAS,CAAC;IACpE,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sCAAsC;IACtD,QAAQ,CAAC,aAAa,EAAE,2BAA2B,CAAC;IACpD,WAAW,IAAI,SAAS,0BAA0B,EAAE,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,cAAc,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,KAAK,GAAG,YAAY,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACnE,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;EAmBf,CAAC;AAEZ,wBAAgB,uBAAuB,CACtC,WAAW,EAAE,SAAS,0BAA0B,EAAE,GAChD,0BAA0B,EAAE,CAE9B"}
@@ -1,47 +1,4 @@
1
- /**
2
- * Shared request/stream types for the local coding-subscription gateway.
3
- * @module dsh-coding-subscription-oauth/gateway-protocol
4
- */
5
- export interface GatewayToolCall {
6
- id: string;
7
- name: string;
8
- arguments: string;
9
- }
10
- export interface GatewayTool {
11
- name: string;
12
- description: string;
13
- parameters: Record<string, unknown>;
14
- }
15
- export interface GatewayChatMessage {
16
- role: string;
17
- content: string;
18
- tool_calls?: readonly GatewayToolCall[];
19
- reasoning_content?: string;
20
- tool_call_id?: string;
21
- tool_name?: string;
22
- }
23
- export interface GatewayCompletionRequest {
24
- model: string;
25
- messages: readonly GatewayChatMessage[];
26
- tools?: readonly GatewayTool[];
27
- reasoning?: string;
28
- }
29
- export type GatewayStreamPart = {
30
- type: "text";
31
- text: string;
32
- } | {
33
- type: "thinking";
34
- text: string;
35
- } | {
36
- type: "tool_call";
37
- index: number;
38
- id: string;
39
- name: string;
40
- arguments: string;
41
- } | {
42
- type: "done";
43
- finish: "stop" | "tool_calls" | "length";
44
- };
45
- export type GatewayThinkingLevel = "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max";
46
- export declare function isThinkingLevel(value: string): value is GatewayThinkingLevel;
1
+ /** Compatibility facade — implementation lives in published `dsh-coding-oauth-core`. */
2
+ export type { GatewayChatMessage, GatewayCompletionRequest, GatewayStreamPart, GatewayThinkingLevel, GatewayTool, GatewayToolCall, } from "dsh-coding-oauth-core/gateway-protocol";
3
+ export { isThinkingLevel } from "dsh-coding-oauth-core/gateway-protocol";
47
4
  //# sourceMappingURL=gateway-protocol.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-protocol.d.ts","sourceRoot":"","sources":["../../src/gateway-protocol.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,eAAe;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACxC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,iBAAiB,GAC1B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACjF;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,QAAQ,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAEnG,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,oBAAoB,CAU5E"}
1
+ {"version":3,"file":"gateway-protocol.d.ts","sourceRoot":"","sources":["../../src/gateway-protocol.ts"],"names":[],"mappings":"AAAA,wFAAwF;AAExF,YAAY,EACX,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,WAAW,EACX,eAAe,GACf,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-routes.d.ts","sourceRoot":"","sources":["../../src/gateway-routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAKjE,OAAO,EAAiC,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGzF,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAE3F,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,SAAS,EAAE;QACnB,QAAQ,CAAC,KAAK,EAAE;YACf,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;YACzB,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;SAC7E,GAAG,MAAM,IAAI,CAAC;KACf,CAAC;IACF,MAAM,CAAC,QAAQ,EAAE,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5E;AAED,wBAAgB,qBAAqB,CACpC,GAAG,EAAE,mBAAmB,EACxB,UAAU,EAAE,4BAA4B,EACxC,kBAAkB,GAAE,kBAAkD,GACpE,MAAM,IAAI,CAuBZ"}
1
+ {"version":3,"file":"gateway-routes.d.ts","sourceRoot":"","sources":["../../src/gateway-routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAKjE,OAAO,EAAiC,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGzF,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAe3F,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,SAAS,EAAE;QACnB,QAAQ,CAAC,KAAK,EAAE;YACf,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;YACzB,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;SAC7E,GAAG,MAAM,IAAI,CAAC;KACf,CAAC;IACF,MAAM,CAAC,QAAQ,EAAE,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5E;AAED,wBAAgB,qBAAqB,CACpC,GAAG,EAAE,mBAAmB,EACxB,UAAU,EAAE,4BAA4B,EACxC,kBAAkB,GAAE,kBAAkD,GACpE,MAAM,IAAI,CAuBZ"}
@@ -1,13 +1,3 @@
1
- /**
2
- * xAI / Grok Build error remapping.
3
- * @module dsh-coding-subscription-oauth/grok-errors
4
- */
5
- export declare function isXaiCapacityError(detail: string): boolean;
6
- export declare function remapXaiCapacityFailure(failure: {
7
- message: string;
8
- code: string;
9
- }): {
10
- message: string;
11
- code: string;
12
- };
1
+ /** Compatibility facade — implementation lives in published `dsh-coding-oauth-core`. */
2
+ export { isXaiCapacityError, remapXaiCapacityFailure } from "dsh-coding-oauth-core/grok-errors";
13
3
  //# sourceMappingURL=grok-errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"grok-errors.d.ts","sourceRoot":"","sources":["../../src/grok-errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IACpF,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACb,CAGA"}
1
+ {"version":3,"file":"grok-errors.d.ts","sourceRoot":"","sources":["../../src/grok-errors.ts"],"names":[],"mappings":"AAAA,wFAAwF;AAExF,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Grok Imagine pinned transport and official API client.
3
+ * Prefer the facade `../grok-imagine.ts` for public imports.
4
+ */
5
+ import { type TrustedImagineAuthz } from "../media-store.js";
6
+ import { type GenerateImagineImageInput, type GrokImagineClientOptions, type ImagineAttachmentStore, type ImagineDnsLookup, type ImagineDownloader, type ImagineDownloadResult, type ImagineFetch, type ImagineImageAttachmentRef, type ImagineImageDownloadView, type ImagineImageResult, type ImagineMediaTransport, type ImagineVideoStartResult, type ImagineVideoStatusResult, type StartImagineVideoInput } from "./types.js";
7
+ export declare function defaultImagineLookup(hostname: string): Promise<readonly string[]>;
8
+ export declare function assertSafeRemoteMediaUrl(raw: string, lookup: ImagineDnsLookup): Promise<URL>;
9
+ export declare function createPinnedMediaTransport(lookup?: ImagineDnsLookup): ImagineMediaTransport;
10
+ export declare function createPinnedApiFetch(lookup?: ImagineDnsLookup, maxBytes?: number): ImagineFetch;
11
+ export declare function downloadRemoteImagineMedia(initialUrl: string, transport: ImagineMediaTransport, options: {
12
+ lookup: ImagineDnsLookup;
13
+ timeoutMs: number;
14
+ maxBytes: number;
15
+ accept: string;
16
+ maxRedirects: number;
17
+ signal?: AbortSignal;
18
+ }): Promise<ImagineDownloadResult>;
19
+ export declare function createPinnedImagineDownloader(options?: {
20
+ lookup?: ImagineDnsLookup;
21
+ maxRedirects?: number;
22
+ }): ImagineDownloader;
23
+ /**
24
+ * Test-only adapter around an injected fetch. Ordinary mock fetch is not
25
+ * production-safe: it cannot pin DNS at connect time.
26
+ */
27
+ export declare function createImagineDownloaderFromFetch(fetchImpl: ImagineFetch, options: {
28
+ trustedTestTransport: true;
29
+ lookup?: ImagineDnsLookup;
30
+ maxRedirects?: number;
31
+ }): ImagineDownloader;
32
+ export declare class GrokImagineClient {
33
+ private readonly resolveApiKey;
34
+ private readonly attachments;
35
+ private readonly media;
36
+ private readonly apiFetch;
37
+ private readonly downloader;
38
+ private readonly imageDownloadTimeoutMs;
39
+ private readonly videoDownloadTimeoutMs;
40
+ private readonly apiTimeoutMs;
41
+ private readonly maxRedirects;
42
+ private readonly imageMaxBytes;
43
+ private readonly apiJsonMaxBytes;
44
+ private readonly videoResults;
45
+ private readonly videoInflight;
46
+ private readonly disposeController;
47
+ private disposed;
48
+ constructor(options: GrokImagineClientOptions);
49
+ /**
50
+ * Permanently retire this client. In-flight API calls, downloads, and
51
+ * media persistence operations are aborted; subsequent operations fail
52
+ * closed with an `INVALID_INPUT` error until callers construct a new client.
53
+ */
54
+ dispose(): void;
55
+ /** @returns true once {@link dispose} has been called. */
56
+ get isDisposed(): boolean;
57
+ private assertWritable;
58
+ generateImage(input: GenerateImagineImageInput, signal?: AbortSignal): Promise<ImagineImageResult>;
59
+ startVideo(input: StartImagineVideoInput, signal?: AbortSignal): Promise<ImagineVideoStartResult>;
60
+ videoStatus(requestId: string, options?: {
61
+ name?: string;
62
+ signal?: AbortSignal;
63
+ }): Promise<ImagineVideoStatusResult>;
64
+ private pollVideo;
65
+ private rememberVideo;
66
+ private persistGeneratedImage;
67
+ private resolveCredential;
68
+ private apiJson;
69
+ }
70
+ export declare function createGrokImagineClient(options: GrokImagineClientOptions): GrokImagineClient;
71
+ /** Gate a same-origin image download. Requires an explicit trusted/authz token. */
72
+ export declare function openTrustedImagineImageDownload(attachments: ImagineAttachmentStore, ref: ImagineImageAttachmentRef, authz: TrustedImagineAuthz): Promise<ImagineImageDownloadView>;
73
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/grok-imagine/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Internal barrel for Grok Imagine modules.
3
+ */
4
+ export { assertSafeRemoteMediaUrl, createGrokImagineClient, createImagineDownloaderFromFetch, createPinnedApiFetch, createPinnedImagineDownloader, createPinnedMediaTransport, defaultImagineLookup, downloadRemoteImagineMedia, GrokImagineClient, openTrustedImagineImageDownload, } from "./client.js";
5
+ export * from "./net.js";
6
+ export * from "./parse.js";
7
+ export * from "./types.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/grok-imagine/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACN,wBAAwB,EACxB,uBAAuB,EACvB,gCAAgC,EAChC,oBAAoB,EACpB,6BAA6B,EAC7B,0BAA0B,EAC1B,oBAAoB,EACpB,0BAA0B,EAC1B,iBAAiB,EACjB,+BAA+B,GAC/B,MAAM,aAAa,CAAC;AACrB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Grok Imagine network allowlist / private-IP helpers.
3
+ * Prefer the facade `../grok-imagine.ts` for public imports.
4
+ */
5
+ /** True when an address is loopback, private, reserved, documentation, or an embedded special form. */
6
+ export declare function isBlockedIp(address: string): boolean;
7
+ export declare function normalizeHostname(hostname: string): string;
8
+ export declare function isBlockedHostname(hostname: string): boolean;
9
+ export declare function isAllowlistedImagineHost(hostname: string): boolean;
10
+ //# sourceMappingURL=net.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"net.d.ts","sourceRoot":"","sources":["../../../src/grok-imagine/net.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA+GH,uGAAuG;AACvG,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAWpD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAU3D;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAElE"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Grok Imagine pure parse / path / media-type helpers.
3
+ * Prefer the facade `../grok-imagine.ts` for public imports.
4
+ */
5
+ import type { MediaStoreVideoType } from "../media-store.js";
6
+ import { type ImagineImageAttachmentRef, type ImagineImageDownloadHeaders, type ImagineImageMediaType } from "./types.js";
7
+ declare function isRecord(value: unknown): value is Record<string, unknown>;
8
+ export { isRecord };
9
+ export declare function redactImagineMessage(error: unknown): string;
10
+ export declare function grokImagineVideoStatusPath(requestId: string): string;
11
+ export declare function isSafeImagineAttachmentId(attachmentId: string): boolean;
12
+ export declare function imagineImagePath(attachmentId: string): string;
13
+ export declare function parseImagineImagePath(pathname: string): string | undefined;
14
+ export declare function imagineImageDownloadHeaders(ref: ImagineImageAttachmentRef): ImagineImageDownloadHeaders;
15
+ export declare function detectImageMediaType(data: Uint8Array): ImagineImageMediaType | undefined;
16
+ export declare function detectVideoMediaType(data: Uint8Array): MediaStoreVideoType | undefined;
17
+ export declare function parseVideoRequestId(value: unknown): string;
18
+ /** Enforce min/max bounds on a candidate image-id array. */
19
+ export declare function clampImagineImageIds(ids: readonly unknown[]): readonly string[];
20
+ //# sourceMappingURL=parse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/grok-imagine/parse.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAKN,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,EAE1B,MAAM,YAAY,CAAC;AAEpB,iBAAS,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAElE;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAM3D;AAED,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAKpE;AAED,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAavE;AAED,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAK7D;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAc1E;AAsCD,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,yBAAyB,GAAG,2BAA2B,CAgBvG;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,qBAAqB,GAAG,SAAS,CA8BxF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,mBAAmB,GAAG,SAAS,CAQtF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAW1D;AAED,4DAA4D;AAC5D,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,MAAM,EAAE,CAgB/E"}
@@ -0,0 +1,191 @@
1
+ /**
2
+ * Grok Imagine shared types and constants.
3
+ * Prefer the facade `../grok-imagine.ts` for public imports.
4
+ */
5
+ import type { MediaArtifactMeta, MediaStore } from "../media-store.js";
6
+ export declare const XAI_API_ORIGIN = "https://api.x.ai";
7
+ export declare const GROK_IMAGINE_IMAGE_PATH = "/v1/images/generations";
8
+ export declare const GROK_IMAGINE_VIDEO_START_PATH = "/v1/videos/generations";
9
+ export declare const GROK_IMAGINE_IMAGE_MODEL = "grok-imagine-image-2.0";
10
+ export declare const GROK_IMAGINE_VIDEO_MODEL = "grok-imagine-video-1.5";
11
+ export declare const GROK_IMAGINE_IMAGE_TOOL = "grok_imagine_image";
12
+ export declare const GROK_IMAGINE_VIDEO_TOOL = "grok_imagine_video";
13
+ export declare const GROK_IMAGINE_VIDEO_STATUS_TOOL = "grok_imagine_video_status";
14
+ export declare const IMAGINE_IMAGE_ROUTE_PREFIX = "/plugins/dsh-grok-build/imagine/images/";
15
+ /** Frozen xAI output hosts. Callers cannot widen this list. */
16
+ export declare const XAI_OUTPUT_HOSTS: readonly ["imgen.x.ai", "videogen.x.ai", "vidgen.x.ai"];
17
+ export declare const IMAGINE_IMAGE_RESOLUTIONS: readonly ["1k", "2k"];
18
+ export declare const IMAGINE_VIDEO_RESOLUTIONS: readonly ["480p", "720p", "1080p"];
19
+ export declare const IMAGINE_IMAGE_ASPECT_RATIOS: readonly ["1:1", "3:4", "4:3", "9:16", "16:9", "2:3", "3:2", "9:19.5", "19.5:9", "9:20", "20:9", "1:2", "2:1", "auto"];
20
+ export declare const IMAGINE_VIDEO_ASPECT_RATIOS: readonly ["1:1", "16:9", "9:16", "4:3", "3:4", "3:2", "2:3"];
21
+ export declare const IMAGINE_VIDEO_MIN_DURATION_SECONDS = 1;
22
+ export declare const IMAGINE_VIDEO_MAX_DURATION_SECONDS = 15;
23
+ export declare const IMAGINE_IMAGE_MAX_N = 10;
24
+ /**
25
+ * Hard ceilings enforced both at the tool boundary (consumer guard) and inside
26
+ * the Imagine client (defence-in-depth). The prompt ceiling uses UTF-16 code
27
+ * units because that is what the JSON wire format bounds; the image-id arrays
28
+ * are bounded so a runaway caller cannot exhaust the bounded body reader.
29
+ */
30
+ export declare const IMAGINE_PROMPT_MAX_LENGTH = 4000;
31
+ export declare const IMAGINE_IMAGE_IDS_MIN = 1;
32
+ export declare const IMAGINE_IMAGE_IDS_MAX = 5;
33
+ export declare const DEFAULT_IMAGE_DOWNLOAD_MAX_BYTES: number;
34
+ export declare const DEFAULT_API_TIMEOUT_MS = 30000;
35
+ export declare const DEFAULT_IMAGE_DOWNLOAD_TIMEOUT_MS = 15000;
36
+ export declare const DEFAULT_VIDEO_DOWNLOAD_TIMEOUT_MS = 60000;
37
+ export declare const DEFAULT_MAX_REDIRECTS = 3;
38
+ export declare const DEFAULT_API_JSON_MAX_BYTES: number;
39
+ export declare const MAX_CACHED_VIDEO_JOBS = 256;
40
+ export type ImagineOperation = "image.generate" | "video.start" | "video.status";
41
+ export type ImagineImageResolution = (typeof IMAGINE_IMAGE_RESOLUTIONS)[number];
42
+ export type ImagineVideoResolution = (typeof IMAGINE_VIDEO_RESOLUTIONS)[number];
43
+ export type ImagineImageAspectRatio = (typeof IMAGINE_IMAGE_ASPECT_RATIOS)[number];
44
+ export type ImagineVideoAspectRatio = (typeof IMAGINE_VIDEO_ASPECT_RATIOS)[number];
45
+ export type ImagineApiKeyResolver = (operation: ImagineOperation) => Promise<string>;
46
+ export type ImagineFetch = (input: string | URL, init?: RequestInit) => Promise<Response>;
47
+ export type ImagineDnsLookup = (hostname: string) => Promise<readonly string[]>;
48
+ export type ImagineImageMediaType = "image/png" | "image/jpeg" | "image/webp" | "image/gif";
49
+ export interface ImagineMediaHopRequest {
50
+ timeoutMs: number;
51
+ maxBytes: number;
52
+ accept: string;
53
+ signal?: AbortSignal;
54
+ }
55
+ export interface ImagineMediaHop {
56
+ status: number;
57
+ location?: string;
58
+ contentType?: string;
59
+ data?: Uint8Array;
60
+ }
61
+ /** Single-hop GET. Must not follow redirects or attach credentials. */
62
+ export interface ImagineMediaTransport {
63
+ get(url: URL, request: ImagineMediaHopRequest): Promise<ImagineMediaHop>;
64
+ }
65
+ export interface ImagineDownloadRequest {
66
+ url: string;
67
+ timeoutMs: number;
68
+ maxBytes: number;
69
+ accept: string;
70
+ signal?: AbortSignal;
71
+ }
72
+ export interface ImagineDownloadResult {
73
+ data: Uint8Array;
74
+ contentType?: string;
75
+ }
76
+ /** Full download including redirect revalidation. Production default is pinned. */
77
+ export interface ImagineDownloader {
78
+ download(request: ImagineDownloadRequest): Promise<ImagineDownloadResult>;
79
+ }
80
+ export type GrokImagineErrorCode = "MISSING_CREDENTIAL" | "AUTH" | "QUOTA" | "RATE_LIMIT" | "SSRF" | "INVALID_INPUT" | "UPSTREAM" | "TIMEOUT" | "MEDIA";
81
+ export declare class GrokImagineError extends Error {
82
+ readonly code: GrokImagineErrorCode;
83
+ readonly status?: number;
84
+ constructor(code: GrokImagineErrorCode, message: string, options?: {
85
+ cause?: unknown;
86
+ status?: number;
87
+ });
88
+ }
89
+ export interface ImagineImageAttachmentRef {
90
+ attachmentId: string;
91
+ mediaType: ImagineImageMediaType;
92
+ bytes: number;
93
+ width: number;
94
+ height: number;
95
+ name?: string;
96
+ }
97
+ export interface ImagineImageLimits {
98
+ maxImageBytes?: number;
99
+ mediaTypes?: readonly string[];
100
+ }
101
+ /** Structural AttachmentStore surface used by Imagine. */
102
+ export interface ImagineAttachmentStore {
103
+ imageLimits?: ImagineImageLimits;
104
+ saveImage(input: {
105
+ data: Uint8Array;
106
+ mediaType: ImagineImageMediaType;
107
+ name?: string;
108
+ }): Promise<ImagineImageAttachmentRef>;
109
+ readImage?(ref: ImagineImageAttachmentRef, signal?: AbortSignal): Promise<{
110
+ ref: ImagineImageAttachmentRef;
111
+ data: Uint8Array;
112
+ }>;
113
+ }
114
+ export interface GenerateImagineImageInput {
115
+ prompt: string;
116
+ model?: string;
117
+ n?: number;
118
+ aspectRatio?: string;
119
+ resolution?: string;
120
+ name?: string;
121
+ }
122
+ export interface ImagineImageResult {
123
+ model: string;
124
+ images: readonly ImaginePersistedImage[];
125
+ attachment: ImagineImageAttachmentRef;
126
+ path: string;
127
+ }
128
+ export interface ImaginePersistedImage {
129
+ attachment: ImagineImageAttachmentRef;
130
+ path: string;
131
+ }
132
+ export interface StartImagineVideoInput {
133
+ prompt: string;
134
+ model?: string;
135
+ duration?: number;
136
+ aspectRatio?: string;
137
+ resolution?: string;
138
+ name?: string;
139
+ }
140
+ export interface ImagineVideoStartResult {
141
+ model: string;
142
+ requestId: string;
143
+ status: "pending";
144
+ }
145
+ export type ImagineVideoJobStatus = "pending" | "completed" | "failed";
146
+ export interface ImagineVideoStatusResult {
147
+ requestId: string;
148
+ status: ImagineVideoJobStatus;
149
+ artifact?: MediaArtifactMeta;
150
+ path?: string;
151
+ error?: string;
152
+ }
153
+ export interface GrokImagineClientOptions {
154
+ resolveApiKey: ImagineApiKeyResolver;
155
+ attachments: ImagineAttachmentStore;
156
+ media: MediaStore;
157
+ /** API-only test seam. Never used for media and never a production default. */
158
+ fetch?: ImagineFetch;
159
+ /** Media downloads. Production default pins DNS at connect time via undici. */
160
+ downloader?: ImagineDownloader;
161
+ now?: () => number;
162
+ imageDownloadTimeoutMs?: number;
163
+ videoDownloadTimeoutMs?: number;
164
+ apiTimeoutMs?: number;
165
+ maxRedirects?: number;
166
+ imageMaxBytes?: number;
167
+ apiJsonMaxBytes?: number;
168
+ }
169
+ export interface ImagineImageDownloadHeaders {
170
+ "Content-Type": string;
171
+ "Content-Length": string;
172
+ "Content-Disposition": string;
173
+ "Cache-Control": string;
174
+ "X-Content-Type-Options": "nosniff";
175
+ }
176
+ export interface ImagineImageDownloadView {
177
+ ref: ImagineImageAttachmentRef;
178
+ body: Uint8Array;
179
+ headers: ImagineImageDownloadHeaders;
180
+ }
181
+ /**
182
+ * Safe official-xAI request-id pattern: ASCII letters, digits, dashes, and
183
+ * underscores. Limited to 256 characters. Public boundary validator.
184
+ */
185
+ export declare const VIDEO_REQUEST_ID_PATTERN: RegExp;
186
+ export declare const FROZEN_OUTPUT_HOSTS: Set<string>;
187
+ export declare const IMAGE_RESOLUTION_SET: Set<string>;
188
+ export declare const VIDEO_RESOLUTION_SET: Set<string>;
189
+ export declare const IMAGE_ASPECT_SET: Set<string>;
190
+ export declare const VIDEO_ASPECT_SET: Set<string>;
191
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/grok-imagine/types.ts"],"names":[],"mappings":"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"}