@jini-ai/integrations 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +51 -0
  3. package/dist/composio/bounded-data.d.ts +36 -0
  4. package/dist/composio/bounded-data.d.ts.map +1 -0
  5. package/dist/composio/bounded-data.js +181 -0
  6. package/dist/composio/bounded-data.js.map +1 -0
  7. package/dist/composio/catalog.d.ts +147 -0
  8. package/dist/composio/catalog.d.ts.map +1 -0
  9. package/dist/composio/catalog.js +126 -0
  10. package/dist/composio/catalog.js.map +1 -0
  11. package/dist/composio/composio-config.d.ts +42 -0
  12. package/dist/composio/composio-config.d.ts.map +1 -0
  13. package/dist/composio/composio-config.js +145 -0
  14. package/dist/composio/composio-config.js.map +1 -0
  15. package/dist/composio/composio-descriptions.d.ts +16 -0
  16. package/dist/composio/composio-descriptions.d.ts.map +1 -0
  17. package/dist/composio/composio-descriptions.js +766 -0
  18. package/dist/composio/composio-descriptions.js.map +1 -0
  19. package/dist/composio/composio.d.ts +364 -0
  20. package/dist/composio/composio.d.ts.map +1 -0
  21. package/dist/composio/composio.js +1902 -0
  22. package/dist/composio/composio.js.map +1 -0
  23. package/dist/composio/errors.d.ts +15 -0
  24. package/dist/composio/errors.d.ts.map +1 -0
  25. package/dist/composio/errors.js +16 -0
  26. package/dist/composio/errors.js.map +1 -0
  27. package/dist/composio/file-lock.d.ts +13 -0
  28. package/dist/composio/file-lock.d.ts.map +1 -0
  29. package/dist/composio/file-lock.js +92 -0
  30. package/dist/composio/file-lock.js.map +1 -0
  31. package/dist/composio/index.d.ts +18 -0
  32. package/dist/composio/index.d.ts.map +1 -0
  33. package/dist/composio/index.js +7 -0
  34. package/dist/composio/index.js.map +1 -0
  35. package/dist/composio/json-schema.d.ts +93 -0
  36. package/dist/composio/json-schema.d.ts.map +1 -0
  37. package/dist/composio/json-schema.js +498 -0
  38. package/dist/composio/json-schema.js.map +1 -0
  39. package/dist/composio/output-protection.d.ts +32 -0
  40. package/dist/composio/output-protection.d.ts.map +1 -0
  41. package/dist/composio/output-protection.js +105 -0
  42. package/dist/composio/output-protection.js.map +1 -0
  43. package/dist/composio/service.d.ts +181 -0
  44. package/dist/composio/service.d.ts.map +1 -0
  45. package/dist/composio/service.js +758 -0
  46. package/dist/composio/service.js.map +1 -0
  47. package/dist/media-providers/capability-registry.d.ts +28 -0
  48. package/dist/media-providers/capability-registry.d.ts.map +1 -0
  49. package/dist/media-providers/capability-registry.js +27 -0
  50. package/dist/media-providers/capability-registry.js.map +1 -0
  51. package/dist/media-providers/catalog.d.ts +20 -0
  52. package/dist/media-providers/catalog.d.ts.map +1 -0
  53. package/dist/media-providers/catalog.js +20 -0
  54. package/dist/media-providers/catalog.js.map +1 -0
  55. package/dist/media-providers/dispatch/context.d.ts +21 -0
  56. package/dist/media-providers/dispatch/context.d.ts.map +1 -0
  57. package/dist/media-providers/dispatch/context.js +36 -0
  58. package/dist/media-providers/dispatch/context.js.map +1 -0
  59. package/dist/media-providers/dispatch/credentials.d.ts +4 -0
  60. package/dist/media-providers/dispatch/credentials.d.ts.map +1 -0
  61. package/dist/media-providers/dispatch/credentials.js +25 -0
  62. package/dist/media-providers/dispatch/credentials.js.map +1 -0
  63. package/dist/media-providers/dispatch/engine.d.ts +30 -0
  64. package/dist/media-providers/dispatch/engine.d.ts.map +1 -0
  65. package/dist/media-providers/dispatch/engine.js +208 -0
  66. package/dist/media-providers/dispatch/engine.js.map +1 -0
  67. package/dist/media-providers/dispatch/index.d.ts +25 -0
  68. package/dist/media-providers/dispatch/index.d.ts.map +1 -0
  69. package/dist/media-providers/dispatch/index.js +24 -0
  70. package/dist/media-providers/dispatch/index.js.map +1 -0
  71. package/dist/media-providers/dispatch/openai-compatible.d.ts +44 -0
  72. package/dist/media-providers/dispatch/openai-compatible.d.ts.map +1 -0
  73. package/dist/media-providers/dispatch/openai-compatible.js +214 -0
  74. package/dist/media-providers/dispatch/openai-compatible.js.map +1 -0
  75. package/dist/media-providers/dispatch/providers/aihubmix-shared.d.ts +72 -0
  76. package/dist/media-providers/dispatch/providers/aihubmix-shared.d.ts.map +1 -0
  77. package/dist/media-providers/dispatch/providers/aihubmix-shared.js +131 -0
  78. package/dist/media-providers/dispatch/providers/aihubmix-shared.js.map +1 -0
  79. package/dist/media-providers/dispatch/providers/aihubmix.d.ts +4 -0
  80. package/dist/media-providers/dispatch/providers/aihubmix.d.ts.map +1 -0
  81. package/dist/media-providers/dispatch/providers/aihubmix.js +205 -0
  82. package/dist/media-providers/dispatch/providers/aihubmix.js.map +1 -0
  83. package/dist/media-providers/dispatch/providers/custom-image.d.ts +6 -0
  84. package/dist/media-providers/dispatch/providers/custom-image.d.ts.map +1 -0
  85. package/dist/media-providers/dispatch/providers/custom-image.js +94 -0
  86. package/dist/media-providers/dispatch/providers/custom-image.js.map +1 -0
  87. package/dist/media-providers/dispatch/providers/elevenlabs.d.ts +4 -0
  88. package/dist/media-providers/dispatch/providers/elevenlabs.d.ts.map +1 -0
  89. package/dist/media-providers/dispatch/providers/elevenlabs.js +163 -0
  90. package/dist/media-providers/dispatch/providers/elevenlabs.js.map +1 -0
  91. package/dist/media-providers/dispatch/providers/fishaudio.d.ts +3 -0
  92. package/dist/media-providers/dispatch/providers/fishaudio.d.ts.map +1 -0
  93. package/dist/media-providers/dispatch/providers/fishaudio.js +83 -0
  94. package/dist/media-providers/dispatch/providers/fishaudio.js.map +1 -0
  95. package/dist/media-providers/dispatch/providers/grok.d.ts +15 -0
  96. package/dist/media-providers/dispatch/providers/grok.d.ts.map +1 -0
  97. package/dist/media-providers/dispatch/providers/grok.js +150 -0
  98. package/dist/media-providers/dispatch/providers/grok.js.map +1 -0
  99. package/dist/media-providers/dispatch/providers/imagerouter.d.ts +6 -0
  100. package/dist/media-providers/dispatch/providers/imagerouter.d.ts.map +1 -0
  101. package/dist/media-providers/dispatch/providers/imagerouter.js +131 -0
  102. package/dist/media-providers/dispatch/providers/imagerouter.js.map +1 -0
  103. package/dist/media-providers/dispatch/providers/minimax.d.ts +3 -0
  104. package/dist/media-providers/dispatch/providers/minimax.d.ts.map +1 -0
  105. package/dist/media-providers/dispatch/providers/minimax.js +96 -0
  106. package/dist/media-providers/dispatch/providers/minimax.js.map +1 -0
  107. package/dist/media-providers/dispatch/providers/nanobanana.d.ts +3 -0
  108. package/dist/media-providers/dispatch/providers/nanobanana.d.ts.map +1 -0
  109. package/dist/media-providers/dispatch/providers/nanobanana.js +142 -0
  110. package/dist/media-providers/dispatch/providers/nanobanana.js.map +1 -0
  111. package/dist/media-providers/dispatch/providers/openai.d.ts +4 -0
  112. package/dist/media-providers/dispatch/providers/openai.d.ts.map +1 -0
  113. package/dist/media-providers/dispatch/providers/openai.js +231 -0
  114. package/dist/media-providers/dispatch/providers/openai.js.map +1 -0
  115. package/dist/media-providers/dispatch/providers/openrouter.d.ts +13 -0
  116. package/dist/media-providers/dispatch/providers/openrouter.d.ts.map +1 -0
  117. package/dist/media-providers/dispatch/providers/openrouter.js +152 -0
  118. package/dist/media-providers/dispatch/providers/openrouter.js.map +1 -0
  119. package/dist/media-providers/dispatch/providers/senseaudio.d.ts +4 -0
  120. package/dist/media-providers/dispatch/providers/senseaudio.d.ts.map +1 -0
  121. package/dist/media-providers/dispatch/providers/senseaudio.js +190 -0
  122. package/dist/media-providers/dispatch/providers/senseaudio.js.map +1 -0
  123. package/dist/media-providers/dispatch/providers/volcengine.d.ts +3 -0
  124. package/dist/media-providers/dispatch/providers/volcengine.d.ts.map +1 -0
  125. package/dist/media-providers/dispatch/providers/volcengine.js +95 -0
  126. package/dist/media-providers/dispatch/providers/volcengine.js.map +1 -0
  127. package/dist/media-providers/dispatch/response-parsers.d.ts +44 -0
  128. package/dist/media-providers/dispatch/response-parsers.d.ts.map +1 -0
  129. package/dist/media-providers/dispatch/response-parsers.js +103 -0
  130. package/dist/media-providers/dispatch/response-parsers.js.map +1 -0
  131. package/dist/media-providers/dispatch/ssrf-guard.d.ts +51 -0
  132. package/dist/media-providers/dispatch/ssrf-guard.d.ts.map +1 -0
  133. package/dist/media-providers/dispatch/ssrf-guard.js +215 -0
  134. package/dist/media-providers/dispatch/ssrf-guard.js.map +1 -0
  135. package/dist/media-providers/dispatch/stub.d.ts +5 -0
  136. package/dist/media-providers/dispatch/stub.d.ts.map +1 -0
  137. package/dist/media-providers/dispatch/stub.js +98 -0
  138. package/dist/media-providers/dispatch/stub.js.map +1 -0
  139. package/dist/media-providers/dispatch/types.d.ts +133 -0
  140. package/dist/media-providers/dispatch/types.d.ts.map +1 -0
  141. package/dist/media-providers/dispatch/types.js +2 -0
  142. package/dist/media-providers/dispatch/types.js.map +1 -0
  143. package/dist/media-providers/dispatch/vendor-adapter.d.ts +54 -0
  144. package/dist/media-providers/dispatch/vendor-adapter.d.ts.map +1 -0
  145. package/dist/media-providers/dispatch/vendor-adapter.js +68 -0
  146. package/dist/media-providers/dispatch/vendor-adapter.js.map +1 -0
  147. package/dist/media-providers/dispatch/vendor-registry.d.ts +36 -0
  148. package/dist/media-providers/dispatch/vendor-registry.d.ts.map +1 -0
  149. package/dist/media-providers/dispatch/vendor-registry.js +46 -0
  150. package/dist/media-providers/dispatch/vendor-registry.js.map +1 -0
  151. package/dist/media-providers/index.d.ts +22 -0
  152. package/dist/media-providers/index.d.ts.map +1 -0
  153. package/dist/media-providers/index.js +22 -0
  154. package/dist/media-providers/index.js.map +1 -0
  155. package/dist/media-providers/policy.d.ts +49 -0
  156. package/dist/media-providers/policy.d.ts.map +1 -0
  157. package/dist/media-providers/policy.js +39 -0
  158. package/dist/media-providers/policy.js.map +1 -0
  159. package/dist/media-providers/providers.d.ts +33 -0
  160. package/dist/media-providers/providers.d.ts.map +1 -0
  161. package/dist/media-providers/providers.js +200 -0
  162. package/dist/media-providers/providers.js.map +1 -0
  163. package/dist/media-providers/seed.d.ts +14 -0
  164. package/dist/media-providers/seed.d.ts.map +1 -0
  165. package/dist/media-providers/seed.js +109 -0
  166. package/dist/media-providers/seed.js.map +1 -0
  167. package/dist/media-providers/sqlite-task-store.d.ts +29 -0
  168. package/dist/media-providers/sqlite-task-store.d.ts.map +1 -0
  169. package/dist/media-providers/sqlite-task-store.js +234 -0
  170. package/dist/media-providers/sqlite-task-store.js.map +1 -0
  171. package/dist/media-providers/staging.d.ts +29 -0
  172. package/dist/media-providers/staging.d.ts.map +1 -0
  173. package/dist/media-providers/staging.js +141 -0
  174. package/dist/media-providers/staging.js.map +1 -0
  175. package/dist/media-providers/task-store.d.ts +94 -0
  176. package/dist/media-providers/task-store.d.ts.map +1 -0
  177. package/dist/media-providers/task-store.js +160 -0
  178. package/dist/media-providers/task-store.js.map +1 -0
  179. package/dist/media-providers/tokens.d.ts +7 -0
  180. package/dist/media-providers/tokens.d.ts.map +1 -0
  181. package/dist/media-providers/tokens.js +13 -0
  182. package/dist/media-providers/tokens.js.map +1 -0
  183. package/dist/media-providers/types.d.ts +123 -0
  184. package/dist/media-providers/types.d.ts.map +1 -0
  185. package/dist/media-providers/types.js +12 -0
  186. package/dist/media-providers/types.js.map +1 -0
  187. package/dist/media-providers/video-request.d.ts +62 -0
  188. package/dist/media-providers/video-request.d.ts.map +1 -0
  189. package/dist/media-providers/video-request.js +219 -0
  190. package/dist/media-providers/video-request.js.map +1 -0
  191. package/package.json +93 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/composio/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Injection-style capability registry. Ported verbatim (pattern-for-pattern)
3
+ * from OD's `apps/daemon/src/media-adapters/capabilities.ts` — the
4
+ * task brief's own research flagged this as "a clean, already-generic port."
5
+ * The registry holds NO data of its own: callers seed it, and every consumer
6
+ * depends only on `get()`/`register()`/`all()`, never on the raw seed, so
7
+ * swapping the data source (a hardcoded const today, a live vendor-API fetch
8
+ * tomorrow) touches nothing downstream.
9
+ */
10
+ import type { ModelCapability } from './types.js';
11
+ export interface CapabilityRegistry {
12
+ /** Looks up a model by catalogue id (an aggregator prefix, if any, is stripped first — see `normalizeModelId`). */
13
+ get(id: string): ModelCapability | undefined;
14
+ /** Adds/overrides capabilities (later calls win on a duplicate id). */
15
+ register(caps: readonly ModelCapability[]): void;
16
+ /** All registered capabilities. */
17
+ all(): ModelCapability[];
18
+ }
19
+ /**
20
+ * Normalizes a catalogue id by stripping a leading `aihubmix-` aggregator
21
+ * prefix and trimming whitespace. The prefix convention comes from this
22
+ * package's one ported reference seed (`seed.ts`) — a different aggregator's
23
+ * prefix is the caller's own normalization to apply before `register`/`get`.
24
+ */
25
+ export declare function normalizeModelId(id: string): string;
26
+ /** Creates a `CapabilityRegistry`, optionally pre-seeded with `seed`. */
27
+ export declare function createCapabilityRegistry(seed?: readonly ModelCapability[]): CapabilityRegistry;
28
+ //# sourceMappingURL=capability-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capability-registry.d.ts","sourceRoot":"","sources":["../../src/media-providers/capability-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,kBAAkB;IACjC,mHAAmH;IACnH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;IAC7C,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,SAAS,eAAe,EAAE,GAAG,IAAI,CAAC;IACjD,mCAAmC;IACnC,GAAG,IAAI,eAAe,EAAE,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,yEAAyE;AACzE,wBAAgB,wBAAwB,CAAC,IAAI,GAAE,SAAS,eAAe,EAAO,GAAG,kBAAkB,CAelG"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Normalizes a catalogue id by stripping a leading `aihubmix-` aggregator
3
+ * prefix and trimming whitespace. The prefix convention comes from this
4
+ * package's one ported reference seed (`seed.ts`) — a different aggregator's
5
+ * prefix is the caller's own normalization to apply before `register`/`get`.
6
+ */
7
+ export function normalizeModelId(id) {
8
+ return (id || '').trim().replace(/^aihubmix-/, '');
9
+ }
10
+ /** Creates a `CapabilityRegistry`, optionally pre-seeded with `seed`. */
11
+ export function createCapabilityRegistry(seed = []) {
12
+ const map = new Map();
13
+ const register = (caps) => {
14
+ for (const cap of caps) {
15
+ if (cap && typeof cap.id === 'string' && cap.id) {
16
+ map.set(normalizeModelId(cap.id), cap);
17
+ }
18
+ }
19
+ };
20
+ register(seed);
21
+ return {
22
+ get: (id) => map.get(normalizeModelId(id)),
23
+ register,
24
+ all: () => [...map.values()],
25
+ };
26
+ }
27
+ //# sourceMappingURL=capability-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capability-registry.js","sourceRoot":"","sources":["../../src/media-providers/capability-registry.ts"],"names":[],"mappings":"AAoBA;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAU;IACzC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,wBAAwB,CAAC,OAAmC,EAAE;IAC5E,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC/C,MAAM,QAAQ,GAAG,CAAC,IAAgC,EAAQ,EAAE;QAC1D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBAChD,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,QAAQ,CAAC,IAAI,CAAC,CAAC;IACf,OAAO;QACL,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAC1C,QAAQ;QACR,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;KAC7B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * `@jini-ai/integrations/media-providers/catalog` — the vendor catalogue and its types, and
3
+ * NOTHING else.
4
+ *
5
+ * Why this exists as its own subpath: the main `./media-providers` entry is `jini.runtime: "node"`
6
+ * — its barrel statically pulls in `node:crypto`/`node:fs`/`node:path` (`staging.ts`),
7
+ * `node:dns` (`dispatch/ssrf-guard.ts`), and `undici` (`dispatch/providers/openai.ts`). A host's
8
+ * browser bundle needs the provider list to render a credentials screen, but must not drag the
9
+ * dispatch engine in to get it. `providers.ts` imports only types from `types.ts`, and `types.ts`
10
+ * imports nothing at all, so this pair is genuinely dependency-free and safe to mark
11
+ * `"universal"`.
12
+ *
13
+ * The constraint this file encodes: **it may only ever re-export modules with no runtime imports.**
14
+ * Adding anything that reaches `dispatch/`, `staging.ts`, or `sqlite-task-store.ts` silently
15
+ * reintroduces the node dependency for every browser consumer. `__tests__/catalog.test.ts` asserts
16
+ * the import graph stays clean, so that mistake fails a test rather than a downstream bundle.
17
+ */
18
+ export * from './types.js';
19
+ export * from './providers.js';
20
+ //# sourceMappingURL=catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/media-providers/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * `@jini-ai/integrations/media-providers/catalog` — the vendor catalogue and its types, and
3
+ * NOTHING else.
4
+ *
5
+ * Why this exists as its own subpath: the main `./media-providers` entry is `jini.runtime: "node"`
6
+ * — its barrel statically pulls in `node:crypto`/`node:fs`/`node:path` (`staging.ts`),
7
+ * `node:dns` (`dispatch/ssrf-guard.ts`), and `undici` (`dispatch/providers/openai.ts`). A host's
8
+ * browser bundle needs the provider list to render a credentials screen, but must not drag the
9
+ * dispatch engine in to get it. `providers.ts` imports only types from `types.ts`, and `types.ts`
10
+ * imports nothing at all, so this pair is genuinely dependency-free and safe to mark
11
+ * `"universal"`.
12
+ *
13
+ * The constraint this file encodes: **it may only ever re-export modules with no runtime imports.**
14
+ * Adding anything that reaches `dispatch/`, `staging.ts`, or `sqlite-task-store.ts` silently
15
+ * reintroduces the node dependency for every browser consumer. `__tests__/catalog.test.ts` asserts
16
+ * the import graph stays clean, so that mistake fails a test rather than a downstream bundle.
17
+ */
18
+ export * from './types.js';
19
+ export * from './providers.js';
20
+ //# sourceMappingURL=catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/media-providers/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Builds the per-generation `RenderContext` threaded into every `render*`
3
+ * provider function. Pulled out of `engine.ts`'s dispatch flow into its own
4
+ * pure function specifically so it can be unit-tested directly — several of
5
+ * its fields (`promptInfluence`, `imageRefs`) aren't consumed by any vendor
6
+ * ported so far in this pass, so the only way to prove their computation is
7
+ * correct without a real renderer to observe them through is to test this
8
+ * function's return value directly, rather than leave them untested or
9
+ * drop them from the type surface. See `source-map.md` for why both fields
10
+ * are kept despite having no current consumer.
11
+ */
12
+ import type { AudioKind } from '../types.js';
13
+ import type { MediaGenerationRequest, RenderContext } from './types.js';
14
+ /**
15
+ * @param request The caller's original request.
16
+ * @param resolvedAudioKind Already resolved by the caller (defaults to `'music'` for an audio surface with no explicit `audioKind`).
17
+ * @param length Already clamped by the caller (video surface only).
18
+ * @param duration Already clamped by the caller (audio surface only).
19
+ */
20
+ export declare function buildRenderContext(request: MediaGenerationRequest, resolvedAudioKind: AudioKind | undefined, length: number | undefined, duration: number | undefined): RenderContext;
21
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/media-providers/dispatch/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,aAAa,CAAC;AAE3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAQxE;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,sBAAsB,EAC/B,iBAAiB,EAAE,SAAS,GAAG,SAAS,EACxC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,aAAa,CAoBf"}
@@ -0,0 +1,36 @@
1
+ import { resolveSpeechFormat } from './openai-compatible.js';
2
+ function defaultAspectFor(surface) {
3
+ if (surface === 'image')
4
+ return '1:1';
5
+ if (surface === 'video')
6
+ return '16:9';
7
+ return undefined;
8
+ }
9
+ /**
10
+ * @param request The caller's original request.
11
+ * @param resolvedAudioKind Already resolved by the caller (defaults to `'music'` for an audio surface with no explicit `audioKind`).
12
+ * @param length Already clamped by the caller (video surface only).
13
+ * @param duration Already clamped by the caller (audio surface only).
14
+ */
15
+ export function buildRenderContext(request, resolvedAudioKind, length, duration) {
16
+ return {
17
+ surface: request.surface,
18
+ model: request.model,
19
+ wireModel: request.wireModel ?? request.model,
20
+ prompt: request.prompt || '',
21
+ aspect: request.aspect || defaultAspectFor(request.surface),
22
+ length,
23
+ duration,
24
+ voice: request.voice || '',
25
+ audioKind: resolvedAudioKind,
26
+ language: request.language || '',
27
+ loop: request.loop === true,
28
+ promptInfluence: typeof request.promptInfluence === 'number' && Number.isFinite(request.promptInfluence) ? request.promptInfluence : undefined,
29
+ imageRef: request.imageRef ?? null,
30
+ imageRefs: request.imageRefs ?? (request.imageRef ? [request.imageRef] : []),
31
+ requestInit: request.requestInit || {},
32
+ speechFormat: resolveSpeechFormat(request.speechFormat),
33
+ onProgress: request.onProgress,
34
+ };
35
+ }
36
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/media-providers/dispatch/context.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7D,SAAS,gBAAgB,CAAC,OAAqB;IAC7C,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC;IACvC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAA+B,EAC/B,iBAAwC,EACxC,MAA0B,EAC1B,QAA4B;IAE5B,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK;QAC7C,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;QAC5B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC;QAC3D,MAAM;QACN,QAAQ;QACR,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;QAC1B,SAAS,EAAE,iBAAiB;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI;QAC3B,eAAe,EAAE,OAAO,OAAO,CAAC,eAAe,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;QAC9I,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;QAClC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;QACtC,YAAY,EAAE,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC;QACvD,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ProviderCredentials } from './types.js';
2
+ /** Resolves `{ apiKey }` for `providerId` from the first set environment variable in its priority list, or `{}` if none are set / the provider has no known env vars. */
3
+ export declare function resolveProviderCredentialsFromEnv(providerId: string, env?: NodeJS.ProcessEnv): ProviderCredentials;
4
+ //# sourceMappingURL=credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../../src/media-providers/dispatch/credentials.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,yKAAyK;AACzK,wBAAgB,iCAAiC,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,mBAAmB,CAU/H"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * An opt-in reference credential resolver — reads a provider's API key
3
+ * from the first set environment variable in `PROVIDER_CREDENTIAL_ENV_VARS`
4
+ * priority order. The dispatch engine itself never reads `process.env`
5
+ * (see `types.ts`'s `MediaDispatchEngineOptions.credentials` doc); a host
6
+ * that's fine with plain env-var credentials can use this to build that
7
+ * map instead of writing its own resolver. A host with its own secrets
8
+ * layer (a config file, a vault, a project-scoped override var) should
9
+ * build the credentials map itself instead of using this.
10
+ */
11
+ import { PROVIDER_CREDENTIAL_ENV_VARS } from '../providers.js';
12
+ /** Resolves `{ apiKey }` for `providerId` from the first set environment variable in its priority list, or `{}` if none are set / the provider has no known env vars. */
13
+ export function resolveProviderCredentialsFromEnv(providerId, env = process.env) {
14
+ const candidates = PROVIDER_CREDENTIAL_ENV_VARS[providerId];
15
+ if (!candidates)
16
+ return {};
17
+ for (const name of candidates) {
18
+ const value = env[name];
19
+ if (typeof value === 'string' && value.trim()) {
20
+ return { apiKey: value.trim() };
21
+ }
22
+ }
23
+ return {};
24
+ }
25
+ //# sourceMappingURL=credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../../src/media-providers/dispatch/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAG/D,yKAAyK;AACzK,MAAM,UAAU,iCAAiC,CAAC,UAAkB,EAAE,MAAyB,OAAO,CAAC,GAAG;IACxG,MAAM,UAAU,GAAG,4BAA4B,CAAC,UAAU,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9C,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -0,0 +1,30 @@
1
+ import './providers/aihubmix.js';
2
+ import './providers/elevenlabs.js';
3
+ import './providers/fishaudio.js';
4
+ import './providers/grok.js';
5
+ import './providers/imagerouter.js';
6
+ import './providers/minimax.js';
7
+ import './providers/nanobanana.js';
8
+ import './providers/openai.js';
9
+ import './providers/openrouter.js';
10
+ import './providers/senseaudio.js';
11
+ import './providers/volcengine.js';
12
+ import type { MediaDispatchEngine, MediaDispatchEngineOptions, ProviderCredentials, RenderContext, RenderResult } from './types.js';
13
+ export type Renderer = (ctx: RenderContext, credentials: ProviderCredentials) => Promise<RenderResult>;
14
+ /**
15
+ * Looks up `providerId`/`routeKey` in a ROUTES-shaped table. Pulled out of
16
+ * `resolveRenderer` into its own pure, exported function (operating on a
17
+ * `routes` parameter rather than closing over the module-level `ROUTES`
18
+ * constant) specifically so its `providerId`-found/not-found and
19
+ * `routeKey`-found/not-found branches stay directly testable even while
20
+ * the production `ROUTES` table itself is empty (every vendor wired into
21
+ * this engine has migrated onto `mediaVendorRegistry` — see `ROUTES`'s own
22
+ * doc comment above): exercising every branch through `resolveRenderer`
23
+ * end-to-end would otherwise need a real, currently-nonexistent
24
+ * ROUTES-only vendor to hit the "found" side. Same "extract to a
25
+ * directly-testable pure function" pattern `context.ts`'s
26
+ * `buildRenderContext` already established for the same reason.
27
+ */
28
+ export declare function lookupRoute(routes: Readonly<Record<string, Readonly<Record<string, Renderer>>>>, providerId: string, routeKey: string): Renderer | undefined;
29
+ export declare function createMediaDispatchEngine(options?: MediaDispatchEngineOptions): MediaDispatchEngine;
30
+ //# sourceMappingURL=engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/media-providers/dispatch/engine.ts"],"names":[],"mappings":"AA+BA,OAAO,yBAAyB,CAAC;AAEjC,OAAO,2BAA2B,CAAC;AACnC,OAAO,0BAA0B,CAAC;AAClC,OAAO,qBAAqB,CAAC;AAC7B,OAAO,4BAA4B,CAAC;AACpC,OAAO,wBAAwB,CAAC;AAChC,OAAO,2BAA2B,CAAC;AACnC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,2BAA2B,CAAC;AACnC,OAAO,2BAA2B,CAAC;AACnC,OAAO,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EACV,mBAAmB,EACnB,0BAA0B,EAG1B,mBAAmB,EACnB,aAAa,EACb,YAAY,EACb,MAAM,YAAY,CAAC;AA6CpB,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,mBAAmB,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;AAwBvG;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAE5J;AAeD,wBAAgB,yBAAyB,CAAC,OAAO,GAAE,0BAA+B,GAAG,mBAAmB,CAoFvG"}
@@ -0,0 +1,208 @@
1
+ /**
2
+ * The media dispatch engine — validates a generation request against the
3
+ * catalogue, clamps registry-bound numeric inputs, resolves per-provider
4
+ * credentials, and routes to the matching renderer (or a deterministic
5
+ * placeholder when `allowStubFallback` is set and no real renderer is
6
+ * wired up for the pair). Generalized from Open Design's
7
+ * `apps/daemon/src/media/index.ts` `generateMedia` orchestration — see
8
+ * `types.ts`'s module doc for the boundary redesign (no filesystem I/O,
9
+ * no OD project resolution) and `source-map.md` for the full port record.
10
+ *
11
+ * 2026-07-21: renderer resolution now checks `vendor-registry.ts`'s
12
+ * `mediaVendorRegistry` first (populated by every vendor migrated onto the
13
+ * generic vendor-adapter dispatch engine — see `vendor-adapter.ts`'s
14
+ * module doc), falling back to the static `ROUTES` table below for vendors
15
+ * not yet migrated. Every vendor wired into this engine as of this pass
16
+ * (`openai`/`minimax`/`senseaudio`/`fishaudio`/`imagerouter`/`custom-image`/
17
+ * `grok`/`nanobanana`/`openrouter`/`volcengine`/`elevenlabs`/`aihubmix`) is
18
+ * now registered in `mediaVendorRegistry` instead — every module below is
19
+ * imported for its registration side effect only (not by name), except
20
+ * `custom-image.js`, whose `renderCustomOpenAIImage`/
21
+ * `customImageOverridesOpenAIModel` exports are still referenced directly
22
+ * by the openai-image-override branch further down. `ROUTES` itself is
23
+ * therefore empty right now — kept as the fallback mechanism `resolveRenderer`
24
+ * still checks second, for whichever vendor is ported next without going
25
+ * through the registry (e.g. one of the async-polling vendors in
26
+ * `source-map.md`'s deferred bucket, if a future pass chooses not to build
27
+ * its own polling-aware adapter shape).
28
+ */
29
+ import { AUDIO_DURATIONS_SEC, VIDEO_LENGTHS_SEC, findMediaModel, findProvider, modelsForSurface } from '../providers.js';
30
+ import { buildRenderContext } from './context.js';
31
+ import './providers/aihubmix.js';
32
+ import { renderCustomOpenAIImage, customImageOverridesOpenAIModel } from './providers/custom-image.js';
33
+ import './providers/elevenlabs.js';
34
+ import './providers/fishaudio.js';
35
+ import './providers/grok.js';
36
+ import './providers/imagerouter.js';
37
+ import './providers/minimax.js';
38
+ import './providers/nanobanana.js';
39
+ import './providers/openai.js';
40
+ import './providers/openrouter.js';
41
+ import './providers/senseaudio.js';
42
+ import './providers/volcengine.js';
43
+ import { renderStub } from './stub.js';
44
+ import { dispatchVendorRequest } from './vendor-adapter.js';
45
+ import { mediaVendorRegistry } from './vendor-registry.js';
46
+ const SURFACES = new Set(['image', 'video', 'audio']);
47
+ const AUDIO_KINDS = new Set(['music', 'speech', 'sfx']);
48
+ /**
49
+ * Snaps `value` to the nearest entry in `allowed` (exact match wins ties
50
+ * toward the first-listed value) so a hallucinated out-of-range number
51
+ * never reaches a paid provider as-is.
52
+ */
53
+ function clampNumber(value, allowed) {
54
+ if (typeof value !== 'number' || !Number.isFinite(value))
55
+ return undefined;
56
+ // No empty-array guard: this is only ever called (via clampWithWarning,
57
+ // below) with providers.ts's module-level VIDEO_LENGTHS_SEC/
58
+ // AUDIO_DURATIONS_SEC constants, both proven non-empty by
59
+ // providers.test.ts's "MEDIA_ASPECTS/VIDEO_LENGTHS_SEC/AUDIO_DURATIONS_SEC
60
+ // are non-empty" test — an empty `allowed` is unreachable through this
61
+ // module's only call sites, not a case worth guarding defensively.
62
+ if (allowed.includes(value))
63
+ return value;
64
+ let best = allowed[0];
65
+ let bestDiff = Math.abs(value - best);
66
+ for (const a of allowed) {
67
+ const d = Math.abs(value - a);
68
+ if (d < bestDiff) {
69
+ best = a;
70
+ bestDiff = d;
71
+ }
72
+ }
73
+ return best;
74
+ }
75
+ function clampWithWarning(value, allowed, flagName) {
76
+ const clamped = clampNumber(value, allowed);
77
+ if (typeof value === 'number' && Number.isFinite(value) && typeof clamped === 'number' && clamped !== value) {
78
+ return { value: clamped, warning: `${flagName} ${value} clamped to ${clamped} (allowed: ${allowed.join(', ')})` };
79
+ }
80
+ return { value: clamped, warning: null };
81
+ }
82
+ /**
83
+ * Routing table: `providerId` -> `surface` (or `surface:audioKind` for
84
+ * audio) -> renderer, for vendors NOT yet migrated onto the generic
85
+ * vendor-adapter dispatch engine. Mirrors the origin's if/else-if dispatch
86
+ * chain — see `source-map.md` for exactly which (provider, surface) pairs
87
+ * from the origin are ported here vs deferred to a later pass.
88
+ *
89
+ * Empty as of 2026-07-21: every vendor previously listed here
90
+ * (`imagerouter`/`custom-image`/`grok`/`nanobanana`/`openrouter`/
91
+ * `volcengine`/`elevenlabs`/`aihubmix`) has migrated onto
92
+ * `vendor-registry.ts`'s `mediaVendorRegistry` (see `resolveRenderer`
93
+ * below and each vendor's own module for its `mediaVendorRegistry.register(...)`
94
+ * call) — joining `openai`/`minimax`/`senseaudio`/`fishaudio`, migrated the
95
+ * pass before. Kept (not deleted) as `resolveRenderer`'s fallback path for
96
+ * the next vendor this engine wires up.
97
+ */
98
+ const ROUTES = {};
99
+ function routeKeyFor(surface, audioKind) {
100
+ return surface === 'audio' && audioKind ? `audio:${audioKind}` : surface;
101
+ }
102
+ /**
103
+ * Looks up `providerId`/`routeKey` in a ROUTES-shaped table. Pulled out of
104
+ * `resolveRenderer` into its own pure, exported function (operating on a
105
+ * `routes` parameter rather than closing over the module-level `ROUTES`
106
+ * constant) specifically so its `providerId`-found/not-found and
107
+ * `routeKey`-found/not-found branches stay directly testable even while
108
+ * the production `ROUTES` table itself is empty (every vendor wired into
109
+ * this engine has migrated onto `mediaVendorRegistry` — see `ROUTES`'s own
110
+ * doc comment above): exercising every branch through `resolveRenderer`
111
+ * end-to-end would otherwise need a real, currently-nonexistent
112
+ * ROUTES-only vendor to hit the "found" side. Same "extract to a
113
+ * directly-testable pure function" pattern `context.ts`'s
114
+ * `buildRenderContext` already established for the same reason.
115
+ */
116
+ export function lookupRoute(routes, providerId, routeKey) {
117
+ return routes[providerId]?.[routeKey];
118
+ }
119
+ /**
120
+ * Resolves the renderer for `(providerId, routeKey)`: checks
121
+ * `mediaVendorRegistry` first (vendors migrated onto the generic engine),
122
+ * falling back to the static `ROUTES` table for everything else.
123
+ */
124
+ function resolveRenderer(providerId, routeKey) {
125
+ const adapter = mediaVendorRegistry.get(providerId, routeKey);
126
+ if (adapter) {
127
+ return (ctx, credentials) => dispatchVendorRequest(adapter, ctx, credentials);
128
+ }
129
+ return lookupRoute(ROUTES, providerId, routeKey);
130
+ }
131
+ export function createMediaDispatchEngine(options = {}) {
132
+ const allowStubFallback = options.allowStubFallback === true;
133
+ return {
134
+ async generate(request) {
135
+ const { surface, model } = request;
136
+ if (!SURFACES.has(surface)) {
137
+ throw new Error(`unsupported surface: ${String(surface)}`);
138
+ }
139
+ if (typeof model !== 'string' || !model) {
140
+ throw new Error('model required');
141
+ }
142
+ if (surface === 'audio' && request.audioKind && !AUDIO_KINDS.has(request.audioKind)) {
143
+ throw new Error(`unsupported audioKind: ${request.audioKind}. Allowed: music | speech | sfx.`);
144
+ }
145
+ const def = findMediaModel(model);
146
+ if (!def) {
147
+ throw new Error(`unknown model: ${model}. Pass a model from the registered catalogue (see @jini-ai/integrations/media-providers's modelsForSurface()).`);
148
+ }
149
+ const resolvedAudioKind = surface === 'audio' ? request.audioKind || 'music' : undefined;
150
+ const allowed = modelsForSurface(surface, resolvedAudioKind);
151
+ if (!allowed.some((m) => m.id === model)) {
152
+ const ids = allowed.map((m) => m.id).join(', ');
153
+ const where = surface === 'audio' ? `audio · ${resolvedAudioKind}` : surface;
154
+ throw new Error(`model "${model}" is not registered for surface "${where}". Allowed: ${ids}.`);
155
+ }
156
+ const warnings = [];
157
+ let length;
158
+ let duration;
159
+ if (surface === 'video') {
160
+ const clamp = clampWithWarning(request.length, VIDEO_LENGTHS_SEC, 'length');
161
+ length = clamp.value;
162
+ if (clamp.warning)
163
+ warnings.push(clamp.warning);
164
+ }
165
+ if (surface === 'audio') {
166
+ const clamp = clampWithWarning(request.duration, AUDIO_DURATIONS_SEC, 'duration');
167
+ duration = clamp.value;
168
+ if (clamp.warning)
169
+ warnings.push(clamp.warning);
170
+ }
171
+ // Every catalogued model's `provider` id resolves via `findProvider` —
172
+ // proven by providers.test.ts's "every model provider id exists in
173
+ // MEDIA_PROVIDERS" catalogue-integrity test, given `def` itself is
174
+ // already a real catalogued model at this point (findMediaModel
175
+ // above didn't throw). Not re-guarded with a runtime null check.
176
+ const provider = findProvider(def.provider);
177
+ const ctx = buildRenderContext(request, resolvedAudioKind, length, duration);
178
+ const credentials = options.credentials?.[def.provider] ?? {};
179
+ // `openai` + image can be overridden by a caller-configured
180
+ // `custom-image` credential that names the same model — mirrors the
181
+ // origin's `customImageOverridesOpenAIModel` precedence.
182
+ let providerId = def.provider;
183
+ let renderer;
184
+ let effectiveCredentials = credentials;
185
+ if (def.provider === 'openai' && surface === 'image') {
186
+ const customImageCredentials = options.credentials?.['custom-image'] ?? null;
187
+ if (customImageOverridesOpenAIModel(ctx, customImageCredentials)) {
188
+ providerId = 'custom-image';
189
+ renderer = renderCustomOpenAIImage;
190
+ effectiveCredentials = customImageCredentials;
191
+ }
192
+ }
193
+ if (!renderer) {
194
+ renderer = resolveRenderer(def.provider, routeKeyFor(surface, resolvedAudioKind));
195
+ }
196
+ if (!renderer) {
197
+ if (!allowStubFallback) {
198
+ throw new Error(`no renderer configured for provider "${def.provider}" / surface "${routeKeyFor(surface, resolvedAudioKind)}" — pass allowStubFallback: true to get placeholder bytes instead, or wire up a real integration for this pair.`);
199
+ }
200
+ const stub = await renderStub(ctx, providerId, provider.integrated);
201
+ return { ...stub, providerId, usedStubFallback: true, warnings };
202
+ }
203
+ const result = await renderer(ctx, effectiveCredentials);
204
+ return { ...result, providerId, usedStubFallback: false, warnings };
205
+ },
206
+ };
207
+ }
208
+ //# sourceMappingURL=engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/media-providers/dispatch/engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ export { buildRenderContext } from './context.js';
2
+ export { resolveProviderCredentialsFromEnv } from './credentials.js';
3
+ export { createMediaDispatchEngine } from './engine.js';
4
+ export { renderAIHubMixImage, renderAIHubMixTTS } from './providers/aihubmix.js';
5
+ export { renderCustomOpenAIImage, customImageOverridesOpenAIModel, CUSTOM_IMAGE_MODEL_ID } from './providers/custom-image.js';
6
+ export { renderElevenLabsSfx, renderElevenLabsTTS } from './providers/elevenlabs.js';
7
+ export { renderFishAudioTTS } from './providers/fishaudio.js';
8
+ export { renderGrokImage, renderXAITTS, grokAspectFor } from './providers/grok.js';
9
+ export { renderImageRouterImage, renderImageRouterVideo, imageRouterSizeFor } from './providers/imagerouter.js';
10
+ export { renderMinimaxTTS } from './providers/minimax.js';
11
+ export { renderNanoBananaImage } from './providers/nanobanana.js';
12
+ export { renderOpenAIImage, renderOpenAISpeech } from './providers/openai.js';
13
+ export { renderOpenRouterImage, openRouterAspectFor } from './providers/openrouter.js';
14
+ export { renderSenseAudioImage, renderSenseAudioTTS } from './providers/senseaudio.js';
15
+ export { renderVolcengineImage } from './providers/volcengine.js';
16
+ export { renderStub, svgPlaceholder } from './stub.js';
17
+ export { assertAndFetchExternalAsset, assertExternalAssetUrl, isBlockedExternalApiHostname, isLoopbackApiHost, validateBaseUrlResolved } from './ssrf-guard.js';
18
+ export type { DnsLookupAddress, DnsLookupFn } from './ssrf-guard.js';
19
+ export type { MediaDispatchEngine, MediaDispatchEngineOptions, MediaGenerationRequest, MediaGenerationRequestInit, MediaGenerationResult, MediaImageReference, MediaSpeechFormat, ProviderCredentials, } from './types.js';
20
+ export { dispatchVendorRequest, requireApiKey } from './vendor-adapter.js';
21
+ export type { VendorAdapter, VendorCredentialGuard, VendorRequest, VendorRequestBuilder, VendorResponseParser } from './vendor-adapter.js';
22
+ export { createVendorAdapterRegistry, mediaVendorRegistry, VendorAdapterRegistry } from './vendor-registry.js';
23
+ export { createHexEnvelopeAudioParser, createRawBytesParser } from './response-parsers.js';
24
+ export type { HexEnvelopeAudioMeta, HexEnvelopeAudioParserOptions, RawBytesParserOptions } from './response-parsers.js';
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/media-providers/dispatch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,+BAA+B,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAC9H,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChH,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAChK,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACrE,YAAY,EACV,mBAAmB,EACnB,0BAA0B,EAC1B,sBAAsB,EACtB,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC3E,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3I,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,YAAY,EAAE,oBAAoB,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,24 @@
1
+ export { buildRenderContext } from './context.js';
2
+ export { resolveProviderCredentialsFromEnv } from './credentials.js';
3
+ export { createMediaDispatchEngine } from './engine.js';
4
+ export { renderAIHubMixImage, renderAIHubMixTTS } from './providers/aihubmix.js';
5
+ export { renderCustomOpenAIImage, customImageOverridesOpenAIModel, CUSTOM_IMAGE_MODEL_ID } from './providers/custom-image.js';
6
+ export { renderElevenLabsSfx, renderElevenLabsTTS } from './providers/elevenlabs.js';
7
+ export { renderFishAudioTTS } from './providers/fishaudio.js';
8
+ export { renderGrokImage, renderXAITTS, grokAspectFor } from './providers/grok.js';
9
+ export { renderImageRouterImage, renderImageRouterVideo, imageRouterSizeFor } from './providers/imagerouter.js';
10
+ export { renderMinimaxTTS } from './providers/minimax.js';
11
+ export { renderNanoBananaImage } from './providers/nanobanana.js';
12
+ export { renderOpenAIImage, renderOpenAISpeech } from './providers/openai.js';
13
+ export { renderOpenRouterImage, openRouterAspectFor } from './providers/openrouter.js';
14
+ export { renderSenseAudioImage, renderSenseAudioTTS } from './providers/senseaudio.js';
15
+ export { renderVolcengineImage } from './providers/volcengine.js';
16
+ export { renderStub, svgPlaceholder } from './stub.js';
17
+ export { assertAndFetchExternalAsset, assertExternalAssetUrl, isBlockedExternalApiHostname, isLoopbackApiHost, validateBaseUrlResolved } from './ssrf-guard.js';
18
+ // The generic vendor-adapter dispatch engine (added 2026-07-21) — see
19
+ // `vendor-adapter.ts`'s module doc and `source-map.md` for the design and
20
+ // which vendors are registered onto it.
21
+ export { dispatchVendorRequest, requireApiKey } from './vendor-adapter.js';
22
+ export { createVendorAdapterRegistry, mediaVendorRegistry, VendorAdapterRegistry } from './vendor-registry.js';
23
+ export { createHexEnvelopeAudioParser, createRawBytesParser } from './response-parsers.js';
24
+ //# sourceMappingURL=index.js.map