@effect-uai/core 0.17.0 → 0.19.0-dev-20261109183959

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 (218) hide show
  1. package/README.md +5 -5
  2. package/dist/Content-D_Qfn8Ja.d.mts +48 -0
  3. package/dist/Content-D_Qfn8Ja.d.mts.map +1 -0
  4. package/dist/File-B923KvZ9.d.mts +46 -0
  5. package/dist/File-B923KvZ9.d.mts.map +1 -0
  6. package/dist/{Image-Cv6iBLTy.d.mts → Image-Bzc1H_UK.d.mts} +19 -8
  7. package/dist/Image-Bzc1H_UK.d.mts.map +1 -0
  8. package/dist/{Items-C7MyrYPX.d.mts → Items-Bvx8s9QH.d.mts} +109 -16
  9. package/dist/Items-Bvx8s9QH.d.mts.map +1 -0
  10. package/dist/{Loop-ChpaO-ya.d.mts → Loop-CeA0AelN.d.mts} +7 -6
  11. package/dist/Loop-CeA0AelN.d.mts.map +1 -0
  12. package/dist/Tool-Bkryw6-h.d.mts +206 -0
  13. package/dist/Tool-Bkryw6-h.d.mts.map +1 -0
  14. package/dist/ToolEvent-9inLx5cI.d.mts +22 -0
  15. package/dist/ToolEvent-9inLx5cI.d.mts.map +1 -0
  16. package/dist/ToolOutput-BNTIQgGB.d.mts +151 -0
  17. package/dist/ToolOutput-BNTIQgGB.d.mts.map +1 -0
  18. package/dist/Toolkit-D2VGeD5R.d.mts +212 -0
  19. package/dist/Toolkit-D2VGeD5R.d.mts.map +1 -0
  20. package/dist/browser/BrowserTool.d.mts +84 -22
  21. package/dist/browser/BrowserTool.d.mts.map +1 -1
  22. package/dist/browser/BrowserTool.mjs +5 -0
  23. package/dist/browser/BrowserTool.mjs.map +1 -1
  24. package/dist/capabilities/Capabilities.d.mts +1 -1
  25. package/dist/decision-model/Decision.test.mjs +4 -4
  26. package/dist/dist-B5K-y4Be.mjs +191 -0
  27. package/dist/dist-B5K-y4Be.mjs.map +1 -0
  28. package/dist/dist-CorQTQL-.mjs +1533 -0
  29. package/dist/dist-CorQTQL-.mjs.map +1 -0
  30. package/dist/dist-DNeuh84d.mjs +7 -0
  31. package/dist/dist-DNeuh84d.mjs.map +1 -0
  32. package/dist/dist-DzeSyeYF.mjs +10253 -0
  33. package/dist/dist-DzeSyeYF.mjs.map +1 -0
  34. package/dist/domain/File.d.mts +2 -0
  35. package/dist/domain/File.mjs +51 -0
  36. package/dist/domain/File.mjs.map +1 -0
  37. package/dist/domain/Image.d.mts +2 -2
  38. package/dist/domain/Image.mjs +12 -2
  39. package/dist/domain/Image.mjs.map +1 -1
  40. package/dist/domain/Items.d.mts +2 -2
  41. package/dist/domain/Items.mjs +65 -4
  42. package/dist/domain/Items.mjs.map +1 -1
  43. package/dist/domain/Realtime.d.mts +72 -490
  44. package/dist/domain/Realtime.d.mts.map +1 -1
  45. package/dist/domain/Research.d.mts +1 -1
  46. package/dist/domain/Transcript.test.mjs +3 -3
  47. package/dist/domain/Turn.d.mts +57 -262
  48. package/dist/domain/Turn.d.mts.map +1 -1
  49. package/dist/domain/Turn.mjs +1 -1
  50. package/dist/domain/Turn.test.mjs +2 -2
  51. package/dist/embedding-model/Embedding.d.mts +1 -1
  52. package/dist/embedding-model/EmbeddingModel.test.mjs +2 -2
  53. package/dist/embedding-model/EmbeddingModel.test.mjs.map +1 -1
  54. package/dist/image-generator/ImageGenerator.d.mts +10 -66
  55. package/dist/image-generator/ImageGenerator.d.mts.map +1 -1
  56. package/dist/index.C4tKZ0yW-LuFnBtmu.mjs +7042 -0
  57. package/dist/index.C4tKZ0yW-LuFnBtmu.mjs.map +1 -0
  58. package/dist/index.d.mts +10 -9
  59. package/dist/index.mjs +7 -6
  60. package/dist/language-model/LanguageModel.d.mts +2 -2
  61. package/dist/language-model/LanguageModel.test.mjs +2 -2
  62. package/dist/loop/Loop.d.mts +1 -1
  63. package/dist/loop/Loop.mjs.map +1 -1
  64. package/dist/loop/Loop.test.mjs +3 -3
  65. package/dist/math/Probability.test.mjs +2 -2
  66. package/dist/messenger/Messenger.d.mts +43 -289
  67. package/dist/messenger/Messenger.d.mts.map +1 -1
  68. package/dist/messenger/MessengerAdapter.test.mjs +3 -3
  69. package/dist/music-generator/MusicGenerator.test.mjs +3 -3
  70. package/dist/observability/Metrics.d.mts +1 -1
  71. package/dist/observability/Metrics.test.mjs +3 -3
  72. package/dist/observability/Telemetry.d.mts +1 -1
  73. package/dist/observability/Telemetry.mjs +1 -1
  74. package/dist/observability/Telemetry.mjs.map +1 -1
  75. package/dist/observability/Telemetry.test.mjs +4 -4
  76. package/dist/observability/Telemetry.test.mjs.map +1 -1
  77. package/dist/realtime/RealtimeSession.d.mts +1 -1
  78. package/dist/realtime/RealtimeSession.test.mjs +4 -4
  79. package/dist/retry/Retry.test.mjs +2 -2
  80. package/dist/sandbox/Sandbox.d.mts +32 -237
  81. package/dist/sandbox/Sandbox.d.mts.map +1 -1
  82. package/dist/speech-synthesizer/SpeechSynthesizer.test.mjs +3 -3
  83. package/dist/streaming/JSONL.test.mjs +2 -2
  84. package/dist/streaming/Multipart.d.mts +1 -1
  85. package/dist/streaming/Multipart.mjs +3 -2
  86. package/dist/streaming/Multipart.mjs.map +1 -1
  87. package/dist/streaming/Multipart.test.mjs +28 -0
  88. package/dist/streaming/Multipart.test.mjs.map +1 -0
  89. package/dist/streaming/SSE.d.mts +1 -1
  90. package/dist/streaming/SSE.mjs +2 -2
  91. package/dist/streaming/SSE.mjs.map +1 -1
  92. package/dist/streaming/SSE.test.mjs +2 -2
  93. package/dist/streaming/Settle.test.mjs +3 -3
  94. package/dist/streaming/WebSocketSession.d.mts +5 -3
  95. package/dist/streaming/WebSocketSession.d.mts.map +1 -1
  96. package/dist/streaming/WebSocketSession.mjs +22 -10
  97. package/dist/streaming/WebSocketSession.mjs.map +1 -1
  98. package/dist/streaming/WebSocketSession.test.mjs +41 -5
  99. package/dist/streaming/WebSocketSession.test.mjs.map +1 -1
  100. package/dist/structured-format/StructuredFormat.mjs.map +1 -1
  101. package/dist/structured-format/StructuredFormat.test.mjs +2 -2
  102. package/dist/testing/FakeWebSocket.d.mts +5 -1
  103. package/dist/testing/FakeWebSocket.d.mts.map +1 -1
  104. package/dist/testing/FakeWebSocket.mjs +12 -6
  105. package/dist/testing/FakeWebSocket.mjs.map +1 -1
  106. package/dist/testing/MockMessenger.d.mts +19 -134
  107. package/dist/testing/MockMessenger.d.mts.map +1 -1
  108. package/dist/testing/MockProvider.d.mts +1 -1
  109. package/dist/testing/MockSandbox.d.mts +65 -446
  110. package/dist/testing/MockSandbox.d.mts.map +1 -1
  111. package/dist/tool/Content.d.mts +2 -0
  112. package/dist/tool/Content.mjs +46 -0
  113. package/dist/tool/Content.mjs.map +1 -0
  114. package/dist/tool/Content.test.d.mts +1 -0
  115. package/dist/tool/Content.test.mjs +48 -0
  116. package/dist/tool/Content.test.mjs.map +1 -0
  117. package/dist/tool/HistoryCheck.d.mts +6 -15
  118. package/dist/tool/HistoryCheck.d.mts.map +1 -1
  119. package/dist/tool/HistoryCheck.mjs +10 -24
  120. package/dist/tool/HistoryCheck.mjs.map +1 -1
  121. package/dist/tool/Tool.d.mts +2 -2
  122. package/dist/tool/Tool.mjs +55 -130
  123. package/dist/tool/Tool.mjs.map +1 -1
  124. package/dist/tool/Tool.test.mjs +222 -178
  125. package/dist/tool/Tool.test.mjs.map +1 -1
  126. package/dist/tool/ToolDecision.d.mts +164 -0
  127. package/dist/tool/ToolDecision.d.mts.map +1 -0
  128. package/dist/tool/ToolDecision.mjs +146 -0
  129. package/dist/tool/ToolDecision.mjs.map +1 -0
  130. package/dist/tool/ToolDecision.test.d.mts +1 -0
  131. package/dist/tool/ToolDecision.test.mjs +330 -0
  132. package/dist/tool/ToolDecision.test.mjs.map +1 -0
  133. package/dist/tool/ToolEvent.d.mts +2 -2
  134. package/dist/tool/ToolEvent.mjs +2 -34
  135. package/dist/tool/ToolEvent.mjs.map +1 -1
  136. package/dist/tool/ToolOutput.d.mts +2 -0
  137. package/dist/tool/ToolOutput.mjs +128 -0
  138. package/dist/tool/ToolOutput.mjs.map +1 -0
  139. package/dist/tool/ToolOutput.test.d.mts +1 -0
  140. package/dist/tool/ToolOutput.test.mjs +153 -0
  141. package/dist/tool/ToolOutput.test.mjs.map +1 -0
  142. package/dist/tool/Toolkit.d.mts +2 -2
  143. package/dist/tool/Toolkit.mjs +230 -165
  144. package/dist/tool/Toolkit.mjs.map +1 -1
  145. package/dist/tool/Toolkit.test.mjs +433 -391
  146. package/dist/tool/Toolkit.test.mjs.map +1 -1
  147. package/dist/transcriber/Transcriber.test.mjs +3 -3
  148. package/dist/web-read/WebReadTool.d.mts +2 -2
  149. package/dist/web-read/WebReadTool.mjs +1 -0
  150. package/dist/web-read/WebReadTool.mjs.map +1 -1
  151. package/dist/web-search/WebSearchTool.d.mts +2 -2
  152. package/dist/web-search/WebSearchTool.mjs +1 -0
  153. package/dist/web-search/WebSearchTool.mjs.map +1 -1
  154. package/package.json +18 -10
  155. package/src/browser/BrowserTool.ts +5 -0
  156. package/src/domain/File.ts +79 -0
  157. package/src/domain/Image.ts +14 -4
  158. package/src/domain/Items.ts +39 -3
  159. package/src/embedding-model/EmbeddingModel.test.ts +2 -2
  160. package/src/index.ts +3 -2
  161. package/src/loop/Loop.ts +25 -14
  162. package/src/observability/Telemetry.test.ts +1 -1
  163. package/src/observability/Telemetry.ts +2 -2
  164. package/src/streaming/Multipart.test.ts +26 -0
  165. package/src/streaming/Multipart.ts +6 -5
  166. package/src/streaming/SSE.ts +2 -2
  167. package/src/streaming/WebSocketSession.test.ts +54 -2
  168. package/src/streaming/WebSocketSession.ts +27 -6
  169. package/src/structured-format/StructuredFormat.ts +1 -1
  170. package/src/testing/FakeWebSocket.ts +21 -6
  171. package/src/tool/Content.test.ts +40 -0
  172. package/src/tool/Content.ts +38 -0
  173. package/src/tool/HistoryCheck.ts +21 -26
  174. package/src/tool/Tool.test.ts +240 -241
  175. package/src/tool/Tool.ts +204 -309
  176. package/src/tool/ToolDecision.test.ts +301 -0
  177. package/src/tool/ToolDecision.ts +360 -0
  178. package/src/tool/ToolEvent.ts +21 -41
  179. package/src/tool/ToolOutput.test.ts +132 -0
  180. package/src/tool/ToolOutput.ts +198 -0
  181. package/src/tool/Toolkit.test.ts +594 -454
  182. package/src/tool/Toolkit.ts +631 -356
  183. package/src/web-read/WebReadTool.ts +2 -1
  184. package/src/web-search/WebSearchTool.ts +2 -1
  185. package/dist/Image-Cv6iBLTy.d.mts.map +0 -1
  186. package/dist/Items-C7MyrYPX.d.mts.map +0 -1
  187. package/dist/Loop-ChpaO-ya.d.mts.map +0 -1
  188. package/dist/Tool-BF78QWtn.d.mts +0 -314
  189. package/dist/Tool-BF78QWtn.d.mts.map +0 -1
  190. package/dist/ToolEvent-Di4a723B.d.mts +0 -144
  191. package/dist/ToolEvent-Di4a723B.d.mts.map +0 -1
  192. package/dist/ToolResult-BsYQRjmW.d.mts +0 -152
  193. package/dist/ToolResult-BsYQRjmW.d.mts.map +0 -1
  194. package/dist/Toolkit-tlL0F2YR.d.mts +0 -193
  195. package/dist/Toolkit-tlL0F2YR.d.mts.map +0 -1
  196. package/dist/dist-BaenoU1A.mjs +0 -145
  197. package/dist/dist-BaenoU1A.mjs.map +0 -1
  198. package/dist/dist-nohcnkD6.mjs +0 -182
  199. package/dist/dist-nohcnkD6.mjs.map +0 -1
  200. package/dist/magic-string.es-CB2hOw9v.mjs +0 -1014
  201. package/dist/magic-string.es-CB2hOw9v.mjs.map +0 -1
  202. package/dist/test.DNmyFkvJ-YPzDR0Co.mjs +0 -10254
  203. package/dist/test.DNmyFkvJ-YPzDR0Co.mjs.map +0 -1
  204. package/dist/tool/Approval.d.mts +0 -113
  205. package/dist/tool/Approval.d.mts.map +0 -1
  206. package/dist/tool/Approval.mjs +0 -80
  207. package/dist/tool/Approval.mjs.map +0 -1
  208. package/dist/tool/Approval.test.mjs +0 -371
  209. package/dist/tool/Approval.test.mjs.map +0 -1
  210. package/dist/tool/ToolResult.d.mts +0 -2
  211. package/dist/tool/ToolResult.mjs +0 -85
  212. package/dist/tool/ToolResult.mjs.map +0 -1
  213. package/dist/utils-CiH_DjFW.mjs +0 -3918
  214. package/dist/utils-CiH_DjFW.mjs.map +0 -1
  215. package/src/tool/Approval.test.ts +0 -400
  216. package/src/tool/Approval.ts +0 -181
  217. package/src/tool/ToolResult.ts +0 -114
  218. /package/dist/{tool/Approval.test.d.mts → streaming/Multipart.test.d.mts} +0 -0
@@ -1,5 +1,6 @@
1
- import { o as ImageSource } from "../Image-Cv6iBLTy.mjs";
2
- import { S as Usage, b as ToolCallOutput, d as Message, h as Reasoning, o as HistoryItem, t as Annotation, y as ToolCall } from "../Items-C7MyrYPX.mjs";
1
+ import { i as FileSource } from "../File-B923KvZ9.mjs";
2
+ import { o as ImageSource } from "../Image-Bzc1H_UK.mjs";
3
+ import { S as ToolCallOutput, T as Usage, _ as Reasoning, o as HistoryItem, p as Message, t as Annotation, x as ToolCall } from "../Items-Bvx8s9QH.mjs";
3
4
  import { i as StructuredFormat, n as JsonParseError, r as StructuredDecodeError } from "../StructuredFormat-BlZhyOsi.mjs";
4
5
  import { Data, Effect, Schema, Stream } from "effect";
5
6
  declare namespace Turn_d_exports {
@@ -19,7 +20,7 @@ declare const Turn: Schema.Struct<{
19
20
  readonly text: Schema.String;
20
21
  }>, Schema.Struct<{
21
22
  readonly type: Schema.Literal<"input_image">;
22
- readonly source: Schema.Schema<ImageSource>;
23
+ readonly source: Schema.Codec<ImageSource, ImageSource, never, never>;
23
24
  }>, Schema.Struct<{
24
25
  readonly type: Schema.Literal<"output_text">;
25
26
  readonly text: Schema.String;
@@ -48,7 +49,7 @@ declare const Turn: Schema.Struct<{
48
49
  }>]>>>;
49
50
  }>, Schema.Struct<{
50
51
  readonly type: Schema.Literal<"output_image">;
51
- readonly source: Schema.Schema<ImageSource>;
52
+ readonly source: Schema.Codec<ImageSource, ImageSource, never, never>;
52
53
  }>, Schema.Struct<{
53
54
  readonly type: Schema.Literal<"refusal">;
54
55
  readonly text: Schema.String;
@@ -63,7 +64,21 @@ declare const Turn: Schema.Struct<{
63
64
  }>, Schema.Struct<{
64
65
  readonly type: Schema.Literal<"function_call_output">;
65
66
  readonly call_id: Schema.String;
66
- readonly output: Schema.String;
67
+ readonly output: Schema.$Array<Schema.Union<readonly [Schema.Struct<{
68
+ readonly type: Schema.Literal<"input_text">;
69
+ readonly text: Schema.String;
70
+ }>, Schema.Struct<{
71
+ readonly type: Schema.Literal<"input_json">;
72
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
73
+ }>, Schema.Struct<{
74
+ readonly type: Schema.Literal<"input_image">;
75
+ readonly source: Schema.Codec<ImageSource, ImageSource, never, never>;
76
+ }>, Schema.Struct<{
77
+ readonly type: Schema.Literal<"input_file">;
78
+ readonly source: Schema.Codec<FileSource, FileSource, never, never>;
79
+ readonly filename: Schema.optionalKey<Schema.String>;
80
+ }>]>>;
81
+ readonly isError: Schema.optionalKey<Schema.Boolean>;
67
82
  readonly providerData: Schema.optional<Schema.Unknown>;
68
83
  }>, Schema.Struct<{
69
84
  readonly type: Schema.Literal<"reasoning">;
@@ -159,263 +174,43 @@ type TurnEvent = Data.TaggedEnum<{
159
174
  readonly turn: Turn;
160
175
  };
161
176
  }>;
162
- declare const TurnEvent: {
163
- readonly $is: <Tag extends "CitationAdded" | "ImageOutput" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall">(tag: Tag) => (u: unknown) => u is Extract<{
164
- readonly _tag: "CitationAdded";
165
- readonly annotation: Annotation;
166
- }, {
167
- readonly _tag: Tag;
168
- }> | Extract<{
169
- readonly _tag: "ImageOutput";
170
- readonly image: ImageSource;
171
- readonly partialIndex?: number;
172
- }, {
173
- readonly _tag: Tag;
174
- }> | Extract<{
175
- readonly _tag: "ReasoningDelta";
176
- readonly text: string;
177
- readonly kind: "trace" | "summary";
178
- }, {
179
- readonly _tag: Tag;
180
- }> | Extract<{
181
- readonly _tag: "RefusalDelta";
182
- readonly text: string;
183
- }, {
184
- readonly _tag: Tag;
185
- }> | Extract<{
186
- readonly _tag: "TextDelta";
187
- readonly text: string;
188
- }, {
189
- readonly _tag: Tag;
190
- }> | Extract<{
191
- readonly _tag: "ToolCallArgsDelta";
192
- readonly call_id: string;
193
- readonly delta: string;
194
- }, {
195
- readonly _tag: Tag;
196
- }> | Extract<{
197
- readonly _tag: "ToolCallStart";
198
- readonly call_id: string;
199
- readonly name: string;
200
- }, {
201
- readonly _tag: Tag;
202
- }> | Extract<{
203
- readonly _tag: "TurnComplete";
204
- readonly turn: Turn;
205
- }, {
206
- readonly _tag: Tag;
207
- }> | Extract<{
208
- readonly _tag: "UsageUpdate";
209
- readonly usage: Usage;
210
- }, {
211
- readonly _tag: Tag;
212
- }> | Extract<{
213
- readonly _tag: "WebSearchCall";
214
- readonly status: "started" | "searching" | "completed";
215
- readonly query?: string;
216
- readonly action?: "search" | "open_page" | "find_in_page";
217
- }, {
218
- readonly _tag: Tag;
219
- }>;
220
- readonly $match: {
221
- <Cases extends { readonly [Tag in "CitationAdded" | "ImageOutput" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall"]: (args: Extract<{
222
- readonly _tag: "CitationAdded";
223
- readonly annotation: Annotation;
224
- } | {
225
- readonly _tag: "ImageOutput";
226
- readonly image: ImageSource;
227
- readonly partialIndex?: number;
228
- } | {
229
- readonly _tag: "ReasoningDelta";
230
- readonly text: string;
231
- readonly kind: "trace" | "summary";
232
- } | {
233
- readonly _tag: "RefusalDelta";
234
- readonly text: string;
235
- } | {
236
- readonly _tag: "TextDelta";
237
- readonly text: string;
238
- } | {
239
- readonly _tag: "ToolCallArgsDelta";
240
- readonly call_id: string;
241
- readonly delta: string;
242
- } | {
243
- readonly _tag: "ToolCallStart";
244
- readonly call_id: string;
245
- readonly name: string;
246
- } | {
247
- readonly _tag: "TurnComplete";
248
- readonly turn: Turn;
249
- } | {
250
- readonly _tag: "UsageUpdate";
251
- readonly usage: Usage;
252
- } | {
253
- readonly _tag: "WebSearchCall";
254
- readonly status: "started" | "searching" | "completed";
255
- readonly query?: string;
256
- readonly action?: "search" | "open_page" | "find_in_page";
257
- }, {
258
- readonly _tag: Tag;
259
- }>) => any; }>(cases: Cases): (value: {
260
- readonly _tag: "CitationAdded";
261
- readonly annotation: Annotation;
262
- } | {
263
- readonly _tag: "ImageOutput";
264
- readonly image: ImageSource;
265
- readonly partialIndex?: number;
266
- } | {
267
- readonly _tag: "ReasoningDelta";
268
- readonly text: string;
269
- readonly kind: "trace" | "summary";
270
- } | {
271
- readonly _tag: "RefusalDelta";
272
- readonly text: string;
273
- } | {
274
- readonly _tag: "TextDelta";
275
- readonly text: string;
276
- } | {
277
- readonly _tag: "ToolCallArgsDelta";
278
- readonly call_id: string;
279
- readonly delta: string;
280
- } | {
281
- readonly _tag: "ToolCallStart";
282
- readonly call_id: string;
283
- readonly name: string;
284
- } | {
285
- readonly _tag: "TurnComplete";
286
- readonly turn: Turn;
287
- } | {
288
- readonly _tag: "UsageUpdate";
289
- readonly usage: Usage;
290
- } | {
291
- readonly _tag: "WebSearchCall";
292
- readonly status: "started" | "searching" | "completed";
293
- readonly query?: string;
294
- readonly action?: "search" | "open_page" | "find_in_page";
295
- }) => import("effect/Unify").Unify<ReturnType<Cases["CitationAdded" | "ImageOutput" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall"]>>;
296
- <Cases extends { readonly [Tag in "CitationAdded" | "ImageOutput" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall"]: (args: Extract<{
297
- readonly _tag: "CitationAdded";
298
- readonly annotation: Annotation;
299
- } | {
300
- readonly _tag: "ImageOutput";
301
- readonly image: ImageSource;
302
- readonly partialIndex?: number;
303
- } | {
304
- readonly _tag: "ReasoningDelta";
305
- readonly text: string;
306
- readonly kind: "trace" | "summary";
307
- } | {
308
- readonly _tag: "RefusalDelta";
309
- readonly text: string;
310
- } | {
311
- readonly _tag: "TextDelta";
312
- readonly text: string;
313
- } | {
314
- readonly _tag: "ToolCallArgsDelta";
315
- readonly call_id: string;
316
- readonly delta: string;
317
- } | {
318
- readonly _tag: "ToolCallStart";
319
- readonly call_id: string;
320
- readonly name: string;
321
- } | {
322
- readonly _tag: "TurnComplete";
323
- readonly turn: Turn;
324
- } | {
325
- readonly _tag: "UsageUpdate";
326
- readonly usage: Usage;
327
- } | {
328
- readonly _tag: "WebSearchCall";
329
- readonly status: "started" | "searching" | "completed";
330
- readonly query?: string;
331
- readonly action?: "search" | "open_page" | "find_in_page";
332
- }, {
333
- readonly _tag: Tag;
334
- }>) => any; }>(value: {
335
- readonly _tag: "CitationAdded";
336
- readonly annotation: Annotation;
337
- } | {
338
- readonly _tag: "ImageOutput";
339
- readonly image: ImageSource;
340
- readonly partialIndex?: number;
341
- } | {
342
- readonly _tag: "ReasoningDelta";
343
- readonly text: string;
344
- readonly kind: "trace" | "summary";
345
- } | {
346
- readonly _tag: "RefusalDelta";
347
- readonly text: string;
348
- } | {
349
- readonly _tag: "TextDelta";
350
- readonly text: string;
351
- } | {
352
- readonly _tag: "ToolCallArgsDelta";
353
- readonly call_id: string;
354
- readonly delta: string;
355
- } | {
356
- readonly _tag: "ToolCallStart";
357
- readonly call_id: string;
358
- readonly name: string;
359
- } | {
360
- readonly _tag: "TurnComplete";
361
- readonly turn: Turn;
362
- } | {
363
- readonly _tag: "UsageUpdate";
364
- readonly usage: Usage;
365
- } | {
366
- readonly _tag: "WebSearchCall";
367
- readonly status: "started" | "searching" | "completed";
368
- readonly query?: string;
369
- readonly action?: "search" | "open_page" | "find_in_page";
370
- }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["CitationAdded" | "ImageOutput" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall"]>>;
371
- };
372
- readonly CitationAdded: Data.TaggedEnum.ConstructorFrom<{
373
- readonly _tag: "CitationAdded";
374
- readonly annotation: Annotation;
375
- }, "_tag">;
376
- readonly ImageOutput: Data.TaggedEnum.ConstructorFrom<{
377
- readonly _tag: "ImageOutput";
378
- readonly image: ImageSource;
379
- readonly partialIndex?: number;
380
- }, "_tag">;
381
- readonly ReasoningDelta: Data.TaggedEnum.ConstructorFrom<{
382
- readonly _tag: "ReasoningDelta";
383
- readonly text: string;
384
- readonly kind: "trace" | "summary";
385
- }, "_tag">;
386
- readonly RefusalDelta: Data.TaggedEnum.ConstructorFrom<{
387
- readonly _tag: "RefusalDelta";
388
- readonly text: string;
389
- }, "_tag">;
390
- readonly TextDelta: Data.TaggedEnum.ConstructorFrom<{
391
- readonly _tag: "TextDelta";
392
- readonly text: string;
393
- }, "_tag">;
394
- readonly ToolCallArgsDelta: Data.TaggedEnum.ConstructorFrom<{
395
- readonly _tag: "ToolCallArgsDelta";
396
- readonly call_id: string;
397
- readonly delta: string;
398
- }, "_tag">;
399
- readonly ToolCallStart: Data.TaggedEnum.ConstructorFrom<{
400
- readonly _tag: "ToolCallStart";
401
- readonly call_id: string;
402
- readonly name: string;
403
- }, "_tag">;
404
- readonly TurnComplete: Data.TaggedEnum.ConstructorFrom<{
405
- readonly _tag: "TurnComplete";
406
- readonly turn: Turn;
407
- }, "_tag">;
408
- readonly UsageUpdate: Data.TaggedEnum.ConstructorFrom<{
409
- readonly _tag: "UsageUpdate";
410
- readonly usage: Usage;
411
- }, "_tag">;
412
- readonly WebSearchCall: Data.TaggedEnum.ConstructorFrom<{
413
- readonly _tag: "WebSearchCall";
414
- readonly status: "started" | "searching" | "completed";
415
- readonly query?: string;
416
- readonly action?: "search" | "open_page" | "find_in_page";
417
- }, "_tag">;
418
- };
177
+ declare const TurnEvent: Data.TaggedEnum.Constructor<{
178
+ readonly _tag: "CitationAdded";
179
+ readonly annotation: Annotation;
180
+ } | {
181
+ readonly _tag: "ImageOutput";
182
+ readonly image: ImageSource;
183
+ readonly partialIndex?: number;
184
+ } | {
185
+ readonly _tag: "ReasoningDelta";
186
+ readonly text: string;
187
+ readonly kind: "trace" | "summary";
188
+ } | {
189
+ readonly _tag: "RefusalDelta";
190
+ readonly text: string;
191
+ } | {
192
+ readonly _tag: "TextDelta";
193
+ readonly text: string;
194
+ } | {
195
+ readonly _tag: "ToolCallArgsDelta";
196
+ readonly call_id: string;
197
+ readonly delta: string;
198
+ } | {
199
+ readonly _tag: "ToolCallStart";
200
+ readonly call_id: string;
201
+ readonly name: string;
202
+ } | {
203
+ readonly _tag: "TurnComplete";
204
+ readonly turn: Turn;
205
+ } | {
206
+ readonly _tag: "UsageUpdate";
207
+ readonly usage: Usage;
208
+ } | {
209
+ readonly _tag: "WebSearchCall";
210
+ readonly status: "started" | "searching" | "completed";
211
+ readonly query?: string;
212
+ readonly action?: "search" | "open_page" | "find_in_page";
213
+ }>;
419
214
  /**
420
215
  * What flows out of an agent loop body to its consumer per turn: every
421
216
  * `TurnEvent` the provider emits (including the terminal `TurnComplete`
@@ -1 +1 @@
1
- {"version":3,"file":"Turn.d.mts","names":[],"sources":["../../src/domain/Turn.ts"],"mappings":";;;;;;;;;;;;cAwBa,MAAI,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAKL,cAAc,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmCnB,YAAY,KAAK;EAC3B;aAAsB;;EACtB;aAA2B;aAAuB;;EAClD;aAAyB;;EACzB;aAA0B;aAA0B;;EACpD;aAA8B;aAA0B;;EACxD;aAAwB,OAAO;;EAC/B;aACW;aACA;aACA;;EAEX;aACW,OAAO;;aAEP;;EAEX;aAA0B,YAAY;;EACtC;aAAyB,MAAM;;;cAGpB;;;aAJ2B,YAAA;;;;;aAJpB,OAAA;aAEQ;;;;;aAbO;aAAuB;;;;;aACzB;;;;;aAFH;;;;;aAIW;aAAwB;;;;;aAD5B;aAAuB;;;;;aAc3B,MAAA;;;;;aAZA,OAAA;;;;;aAEZ;aACA;aACC;;;;;;;eAOkB,YAAA;;;eAJpB,OAAA;eAEQ;;;eAbO;eAAuB;;;eACzB;;;eAFH;;;eAIW;eAAwB;;;eAD5B;eAAuB;;;eAc3B,MAAA;;;eAZA,OAAA;;;eAEZ;eACA;eACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAOkB,YAAA;;;eAJpB,OAAA;eAEQ;;;eAbO;eAAuB;;;eACzB;;;eAFH;;;eAIW;eAAwB;;;eAD5B;eAAuB;;;eAc3B,MAAA;;;eAZA,OAAA;;;eAEZ;eACA;eACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAOkB,YAAA;;;;aAJpB,OAAA;aAEQ;;;;aAbO;aAAuB;;;;aACzB;;;;aAFH;;;;aAIW;aAAwB;;;;aAD5B;aAAuB;;;;aAc3B,MAAA;;;;aAZA,OAAA;;;;aAEZ;aACA;aACC;;;;;;;;;KAmBV,mBAAmB,YAAY;cAE9B,iBAAc,eAAA;;WAbM,MAAA;;cAepB,eAAY,MAAU,SAAO,cAAc;cAE3C,aAAU,MAAU,SAAO,cAAc;cAEzC,oBAAiB,MAAU,SAAO,cAAc;;;;;;;;cAUhD,iBAAc,MAAU,SAAO;;;;;;cAW/B,gBAAa,MAAU;;;;;;cAOvB,kBAAe,MAAU,SAAO,cAAc;;;;;;;;;;;;;;;;;cAsB9C,gBAAa,SAAa,cAAc,iBAAe,cAAc;;;;;;cAqBrE,YAAS,MAAU,SAAO,cAAc;;;;;;cAWxC,kBAAmB;WAAqB,SAAS,cAAc;GAAc,OACjF,GAAC,MACF,MAAI,QACH,cAAc,iBACpB;;;;;;cAcU,aAAc,GAAG,GAAC,MACvB,OAAO,OAAO,WAAW,GAAG,OACjC,OAAO,eAAe,GAAG;;;;;;;;;cAcf,wBAAwB;WAC1B,MAAM;;;;;;;;;;;;cAyBJ,mBAAoB,GAAC,MAC1B,MAAI,QACF,iBAAkC,OACzC,OAAO,OACR,GACA,kBAAkB,iBAAkC"}
1
+ {"version":3,"file":"Turn.d.mts","names":[],"sources":["../../src/domain/Turn.ts"],"mappings":";;;;;;;;;;;;;cAwBa,MAAI,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAKL,cAAc,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmCnB,YAAY,KAAK;EAC3B;aAAsB;;EACtB;aAA2B;aAAuB;;EAClD;aAAyB;;EACzB;aAA0B;aAA0B;;EACpD;aAA8B;aAA0B;;EACxD;aAAwB,OAAO;;EAC/B;aACW;aACA;aACA;;EAEX;aACW,OAAO;;aAEP;;EAEX;aAA0B,YAAY;;EACtC;aAAyB,MAAM;;;cAGpB,WAAS,KAAA,WAAA;;WAJkB,YAAA;;;WAJpB,OAAA;WAEQ;;;WAbO;WAAuB;;;WACzB;;;WAFH;;;WAIW;WAAwB;;;WAD5B;WAAuB;;;WAc3B,MAAA;;;WAZA,OAAA;;;WAEZ;WACA;WACC;;;;;;;;KAmBV,mBAAmB,YAAY;cAE9B,iBAAc,eAAA;;WAbM,MAAA;;cAepB,eAAY,MAAU,SAAO,cAAc;cAE3C,aAAU,MAAU,SAAO,cAAc;cAEzC,oBAAiB,MAAU,SAAO,cAAc;;;;;;;;cAUhD,iBAAc,MAAU,SAAO;;;;;;cAW/B,gBAAa,MAAU;;;;;;cAOvB,kBAAe,MAAU,SAAO,cAAc;;;;;;;;;;;;;;;;;cAsB9C,gBAAa,SAAa,cAAc,iBAAe,cAAc;;;;;;cAqBrE,YAAS,MAAU,SAAO,cAAc;;;;;;cAWxC,kBAAmB;WAAqB,SAAS,cAAc;GAAc,OACjF,GAAC,MACF,MAAI,QACH,cAAc,iBACpB;;;;;;cAcU,aAAc,GAAG,GAAC,MACvB,OAAO,OAAO,WAAW,GAAG,OACjC,OAAO,eAAe,GAAG;;;;;;;;;cAcf,wBAAwB;WAC1B,MAAM;;;;;;;;;;;;cAyBJ,mBAAoB,GAAC,MAC1B,MAAI,QACF,iBAAkC,OACzC,OAAO,OACR,GACA,kBAAkB,iBAAkC"}
@@ -1,6 +1,6 @@
1
1
  import { n as __exportAll } from "../rolldown-runtime-EAsCxrDo.mjs";
2
- import { HistoryItem, StopReason, Usage, isOutputImage, isOutputText, isReasoning, isRefusal, isToolCall } from "./Items.mjs";
3
2
  import { parseJson } from "../structured-format/StructuredFormat.mjs";
3
+ import { HistoryItem, StopReason, Usage, isOutputImage, isOutputText, isReasoning, isRefusal, isToolCall } from "./Items.mjs";
4
4
  import { Data, Effect, Result, Schema, Stream, pipe } from "effect";
5
5
  //#region src/domain/Turn.ts
6
6
  var Turn_exports = /* @__PURE__ */ __exportAll({
@@ -1,7 +1,7 @@
1
1
  import { assistantText, systemText, userText } from "./Items.mjs";
2
2
  import { assistantText as assistantText$1, assistantTexts } from "./Turn.mjs";
3
- import { m as it, o as describe } from "../utils-CiH_DjFW.mjs";
4
- import { n as globalExpect } from "../test.DNmyFkvJ-YPzDR0Co.mjs";
3
+ import { b as it, m as describe } from "../dist-DzeSyeYF.mjs";
4
+ import { n as globalExpect } from "../index.C4tKZ0yW-LuFnBtmu.mjs";
5
5
  //#region src/domain/Turn.test.ts
6
6
  const turnOf = (items) => ({
7
7
  items,
@@ -1,4 +1,4 @@
1
- import { o as ImageSource } from "../Image-Cv6iBLTy.mjs";
1
+ import { o as ImageSource } from "../Image-Bzc1H_UK.mjs";
2
2
  declare namespace Embedding_d_exports {
3
3
  export { BinaryEmbedding, EmbedContentPart, EmbedInput, Embedding, EmbeddingFor, Float32Embedding, Int8Embedding, MultivectorEmbedding, ResponseEncoding, SparseEmbedding, Usage, isBinary, isFloat32, isInt8, isMultivector, isSparse };
4
4
  }
@@ -1,6 +1,6 @@
1
1
  import { embed, embedMany } from "./EmbeddingModel.mjs";
2
- import { m as it, o as describe } from "../utils-CiH_DjFW.mjs";
3
- import { t as import_dist } from "../dist-BaenoU1A.mjs";
2
+ import { b as it, m as describe } from "../dist-DzeSyeYF.mjs";
3
+ import { t as import_dist } from "../dist-DNeuh84d.mjs";
4
4
  //#region src/embedding-model/EmbeddingModel.test.ts
5
5
  describe("EmbedResponse<E> conditional narrowing", () => {
6
6
  it("defaults to Float32Embedding when E is undefined", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"EmbeddingModel.test.mjs","names":[],"sources":["../../src/embedding-model/EmbeddingModel.test.ts"],"sourcesContent":["import { Effect } from \"effect\"\nimport { describe, expectTypeOf, it } from \"vitest\"\nimport type * as AiError from \"../domain/AiError.js\"\nimport type {\n BinaryEmbedding,\n Float32Embedding,\n Int8Embedding,\n MultivectorEmbedding,\n SparseEmbedding,\n} from \"./Embedding.js\"\nimport {\n type EmbedEncoding,\n embed,\n embedMany,\n type EmbedManyResponse,\n type EmbedResponse,\n EmbeddingModel,\n} from \"./EmbeddingModel.js\"\n\n// Type-level tests only. The actual narrowing happens at the type system\n// boundary — the runtime impl is exercised in provider-specific test files.\ndescribe(\"EmbedResponse<E> conditional narrowing\", () => {\n it(\"defaults to Float32Embedding when E is undefined\", () => {\n expectTypeOf<EmbedResponse>().toEqualTypeOf<{\n readonly embedding: Float32Embedding\n readonly usage: import(\"./Embedding.js\").Usage\n }>()\n })\n\n it(\"maps each encoding literal to the matching Embedding variant\", () => {\n expectTypeOf<EmbedResponse<\"float32\">[\"embedding\"]>().toEqualTypeOf<Float32Embedding>()\n expectTypeOf<EmbedResponse<\"int8\">[\"embedding\"]>().toEqualTypeOf<Int8Embedding>()\n expectTypeOf<EmbedResponse<\"binary\">[\"embedding\"]>().toEqualTypeOf<BinaryEmbedding>()\n expectTypeOf<EmbedResponse<\"sparse\">[\"embedding\"]>().toEqualTypeOf<SparseEmbedding>()\n expectTypeOf<EmbedResponse<\"multivector\">[\"embedding\"]>().toEqualTypeOf<MultivectorEmbedding>()\n })\n\n it(\"falls back to the open Embedding union when E is the full EmbedEncoding\", () => {\n expectTypeOf<EmbedResponse<EmbedEncoding>[\"embedding\"]>().toEqualTypeOf<\n Float32Embedding | Int8Embedding | BinaryEmbedding | SparseEmbedding | MultivectorEmbedding\n >()\n })\n})\n\ndescribe(\"EmbedManyResponse<E> mirrors EmbedResponse<E>\", () => {\n it(\"defaults to ReadonlyArray<Float32Embedding>\", () => {\n expectTypeOf<EmbedManyResponse[\"embeddings\"]>().toEqualTypeOf<ReadonlyArray<Float32Embedding>>()\n })\n\n it(\"narrows per encoding\", () => {\n expectTypeOf<EmbedManyResponse<\"int8\">[\"embeddings\"]>().toEqualTypeOf<\n ReadonlyArray<Int8Embedding>\n >()\n })\n})\n\ndescribe(\"embed / embedMany free exports preserve E in their return type\", () => {\n it(\"embed with no encoding returns EmbedResponse<undefined> = Float32\", () => {\n const result = embed({ input: \"x\", model: \"m\" })\n expectTypeOf(result).toEqualTypeOf<\n Effect.Effect<EmbedResponse<undefined>, AiError.AiError, EmbeddingModel>\n >()\n })\n\n it(\"embed with encoding: int8 returns EmbedResponse<int8>\", () => {\n const result = embed({ input: \"x\", model: \"m\", encoding: \"int8\" })\n expectTypeOf(result).toEqualTypeOf<\n Effect.Effect<EmbedResponse<\"int8\">, AiError.AiError, EmbeddingModel>\n >()\n })\n\n it(\"embedMany with encoding: binary returns EmbedManyResponse<binary>\", () => {\n const result = embedMany({ inputs: [\"x\"], model: \"m\", encoding: \"binary\" })\n expectTypeOf(result).toEqualTypeOf<\n Effect.Effect<EmbedManyResponse<\"binary\">, AiError.AiError, EmbeddingModel>\n >()\n })\n\n it(\"rejects non-dense encodings on the generic path (trimmed EmbedEncoding)\", () => {\n // `sparse` / `multivector` are Jina-only representation kinds, not part\n // of the cross-provider request set. Requesting them on the generic\n // helper is a compile error; they're reachable only via the typed\n // `JinaEmbedding` tag.\n // These calls exist only to assert the encoding is a compile error; they\n // are intentionally never run, so the floating-effect check is off here.\n // @effect-diagnostics effect/floatingEffect:off\n // @ts-expect-error \"multivector\" is not an EmbedEncoding\n embedMany({ inputs: [\"x\"], model: \"m\", encoding: \"multivector\" })\n // @ts-expect-error \"sparse\" is not an EmbedEncoding\n embed({ input: \"x\", model: \"m\", encoding: \"sparse\" })\n // @effect-diagnostics effect/floatingEffect:error\n })\n\n it(\"when the request is widened to CommonEmbedRequest, the response is the open union\", () => {\n // Demonstrates the documented case: annotating the request type erases\n // the literal `encoding` and the response falls back to `Embedding`.\n const req: { input: string; model: string; encoding?: EmbedEncoding } = {\n input: \"x\",\n model: \"m\",\n encoding: \"int8\",\n }\n const result = embed(req)\n expectTypeOf(result).toEqualTypeOf<\n Effect.Effect<EmbedResponse<EmbedEncoding>, AiError.AiError, EmbeddingModel>\n >()\n })\n})\n"],"mappings":";;;;AAqBA,SAAS,gDAAgD;CACvD,GAAG,0DAA0D;EAC3D,CAAA,GAAA,YAAA,aAAA,CAA4B,CAAC,CAAC,cAG3B;CACL,CAAC;CAED,GAAG,sEAAsE;EACvE,CAAA,GAAA,YAAA,aAAA,CAAoD,CAAC,CAAC,cAAgC;EACtF,CAAA,GAAA,YAAA,aAAA,CAAiD,CAAC,CAAC,cAA6B;EAChF,CAAA,GAAA,YAAA,aAAA,CAAmD,CAAC,CAAC,cAA+B;EACpF,CAAA,GAAA,YAAA,aAAA,CAAmD,CAAC,CAAC,cAA+B;EACpF,CAAA,GAAA,YAAA,aAAA,CAAwD,CAAC,CAAC,cAAoC;CAChG,CAAC;CAED,GAAG,iFAAiF;EAClF,CAAA,GAAA,YAAA,aAAA,CAAwD,CAAC,CAAC,cAExD;CACJ,CAAC;AACH,CAAC;AAED,SAAS,uDAAuD;CAC9D,GAAG,qDAAqD;EACtD,CAAA,GAAA,YAAA,aAAA,CAA8C,CAAC,CAAC,cAA+C;CACjG,CAAC;CAED,GAAG,8BAA8B;EAC/B,CAAA,GAAA,YAAA,aAAA,CAAsD,CAAC,CAAC,cAEtD;CACJ,CAAC;AACH,CAAC;AAED,SAAS,wEAAwE;CAC/E,GAAG,2EAA2E;EAC5E,MAAM,SAAS,MAAM;GAAE,OAAO;GAAK,OAAO;EAAI,CAAC;EAC/C,CAAA,GAAA,YAAA,aAAA,CAAa,MAAM,CAAC,CAAC,cAEnB;CACJ,CAAC;CAED,GAAG,+DAA+D;EAChE,MAAM,SAAS,MAAM;GAAE,OAAO;GAAK,OAAO;GAAK,UAAU;EAAO,CAAC;EACjE,CAAA,GAAA,YAAA,aAAA,CAAa,MAAM,CAAC,CAAC,cAEnB;CACJ,CAAC;CAED,GAAG,2EAA2E;EAC5E,MAAM,SAAS,UAAU;GAAE,QAAQ,CAAC,GAAG;GAAG,OAAO;GAAK,UAAU;EAAS,CAAC;EAC1E,CAAA,GAAA,YAAA,aAAA,CAAa,MAAM,CAAC,CAAC,cAEnB;CACJ,CAAC;CAED,GAAG,iFAAiF;EASlF,UAAU;GAAE,QAAQ,CAAC,GAAG;GAAG,OAAO;GAAK,UAAU;EAAc,CAAC;EAEhE,MAAM;GAAE,OAAO;GAAK,OAAO;GAAK,UAAU;EAAS,CAAC;CAEtD,CAAC;CAED,GAAG,2FAA2F;EAQ5F,MAAM,SAAS,MAAM;GAJnB,OAAO;GACP,OAAO;GACP,UAAU;EAEW,CAAC;EACxB,CAAA,GAAA,YAAA,aAAA,CAAa,MAAM,CAAC,CAAC,cAEnB;CACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"EmbeddingModel.test.mjs","names":[],"sources":["../../src/embedding-model/EmbeddingModel.test.ts"],"sourcesContent":["import { Effect } from \"effect\"\nimport { describe, expectTypeOf, it } from \"vitest\"\nimport type * as AiError from \"../domain/AiError.js\"\nimport type {\n BinaryEmbedding,\n Float32Embedding,\n Int8Embedding,\n MultivectorEmbedding,\n SparseEmbedding,\n} from \"./Embedding.js\"\nimport {\n type EmbedEncoding,\n embed,\n embedMany,\n type EmbedManyResponse,\n type EmbedResponse,\n EmbeddingModel,\n} from \"./EmbeddingModel.js\"\n\n// Type-level tests only. The actual narrowing happens at the type system\n// boundary — the runtime impl is exercised in provider-specific test files.\ndescribe(\"EmbedResponse<E> conditional narrowing\", () => {\n it(\"defaults to Float32Embedding when E is undefined\", () => {\n expectTypeOf<EmbedResponse>().toEqualTypeOf<{\n readonly embedding: Float32Embedding\n readonly usage: import(\"./Embedding.js\").Usage\n }>()\n })\n\n it(\"maps each encoding literal to the matching Embedding variant\", () => {\n expectTypeOf<EmbedResponse<\"float32\">[\"embedding\"]>().toEqualTypeOf<Float32Embedding>()\n expectTypeOf<EmbedResponse<\"int8\">[\"embedding\"]>().toEqualTypeOf<Int8Embedding>()\n expectTypeOf<EmbedResponse<\"binary\">[\"embedding\"]>().toEqualTypeOf<BinaryEmbedding>()\n expectTypeOf<EmbedResponse<\"sparse\">[\"embedding\"]>().toEqualTypeOf<SparseEmbedding>()\n expectTypeOf<EmbedResponse<\"multivector\">[\"embedding\"]>().toEqualTypeOf<MultivectorEmbedding>()\n })\n\n it(\"falls back to the open Embedding union when E is the full EmbedEncoding\", () => {\n expectTypeOf<EmbedResponse<EmbedEncoding>[\"embedding\"]>().toEqualTypeOf<\n Float32Embedding | Int8Embedding | BinaryEmbedding | SparseEmbedding | MultivectorEmbedding\n >()\n })\n})\n\ndescribe(\"EmbedManyResponse<E> mirrors EmbedResponse<E>\", () => {\n it(\"defaults to ReadonlyArray<Float32Embedding>\", () => {\n expectTypeOf<EmbedManyResponse[\"embeddings\"]>().toEqualTypeOf<ReadonlyArray<Float32Embedding>>()\n })\n\n it(\"narrows per encoding\", () => {\n expectTypeOf<EmbedManyResponse<\"int8\">[\"embeddings\"]>().toEqualTypeOf<\n ReadonlyArray<Int8Embedding>\n >()\n })\n})\n\ndescribe(\"embed / embedMany free exports preserve E in their return type\", () => {\n it(\"embed with no encoding returns EmbedResponse<undefined> = Float32\", () => {\n const result = embed({ input: \"x\", model: \"m\" })\n expectTypeOf(result).toEqualTypeOf<\n Effect.Effect<EmbedResponse<undefined>, AiError.AiError, EmbeddingModel>\n >()\n })\n\n it(\"embed with encoding: int8 returns EmbedResponse<int8>\", () => {\n const result = embed({ input: \"x\", model: \"m\", encoding: \"int8\" })\n expectTypeOf(result).toEqualTypeOf<\n Effect.Effect<EmbedResponse<\"int8\">, AiError.AiError, EmbeddingModel>\n >()\n })\n\n it(\"embedMany with encoding: binary returns EmbedManyResponse<binary>\", () => {\n const result = embedMany({ inputs: [\"x\"], model: \"m\", encoding: \"binary\" })\n expectTypeOf(result).toEqualTypeOf<\n Effect.Effect<EmbedManyResponse<\"binary\">, AiError.AiError, EmbeddingModel>\n >()\n })\n\n it(\"rejects non-dense encodings on the generic path (trimmed EmbedEncoding)\", () => {\n // `sparse` / `multivector` are Jina-only representation kinds, not part\n // of the cross-provider request set. Requesting them on the generic\n // helper is a compile error; they're reachable only via the typed\n // `JinaEmbedding` tag.\n // These calls exist only to assert the encoding is a compile error; they\n // are intentionally never run, so the floating-effect check is off here.\n // @effect-diagnostics floatingEffect:off\n // @ts-expect-error \"multivector\" is not an EmbedEncoding\n embedMany({ inputs: [\"x\"], model: \"m\", encoding: \"multivector\" })\n // @ts-expect-error \"sparse\" is not an EmbedEncoding\n embed({ input: \"x\", model: \"m\", encoding: \"sparse\" })\n // @effect-diagnostics floatingEffect:error\n })\n\n it(\"when the request is widened to CommonEmbedRequest, the response is the open union\", () => {\n // Demonstrates the documented case: annotating the request type erases\n // the literal `encoding` and the response falls back to `Embedding`.\n const req: { input: string; model: string; encoding?: EmbedEncoding } = {\n input: \"x\",\n model: \"m\",\n encoding: \"int8\",\n }\n const result = embed(req)\n expectTypeOf(result).toEqualTypeOf<\n Effect.Effect<EmbedResponse<EmbedEncoding>, AiError.AiError, EmbeddingModel>\n >()\n })\n})\n"],"mappings":";;;;AAqBA,SAAS,gDAAgD;CACvD,GAAG,0DAA0D;EAC3D,CAAA,GAAA,YAAA,aAAA,CAA4B,CAAC,CAAC,cAG3B;CACL,CAAC;CAED,GAAG,sEAAsE;EACvE,CAAA,GAAA,YAAA,aAAA,CAAoD,CAAC,CAAC,cAAgC;EACtF,CAAA,GAAA,YAAA,aAAA,CAAiD,CAAC,CAAC,cAA6B;EAChF,CAAA,GAAA,YAAA,aAAA,CAAmD,CAAC,CAAC,cAA+B;EACpF,CAAA,GAAA,YAAA,aAAA,CAAmD,CAAC,CAAC,cAA+B;EACpF,CAAA,GAAA,YAAA,aAAA,CAAwD,CAAC,CAAC,cAAoC;CAChG,CAAC;CAED,GAAG,iFAAiF;EAClF,CAAA,GAAA,YAAA,aAAA,CAAwD,CAAC,CAAC,cAExD;CACJ,CAAC;AACH,CAAC;AAED,SAAS,uDAAuD;CAC9D,GAAG,qDAAqD;EACtD,CAAA,GAAA,YAAA,aAAA,CAA8C,CAAC,CAAC,cAA+C;CACjG,CAAC;CAED,GAAG,8BAA8B;EAC/B,CAAA,GAAA,YAAA,aAAA,CAAsD,CAAC,CAAC,cAEtD;CACJ,CAAC;AACH,CAAC;AAED,SAAS,wEAAwE;CAC/E,GAAG,2EAA2E;EAC5E,MAAM,SAAS,MAAM;GAAE,OAAO;GAAK,OAAO;EAAI,CAAC;EAC/C,CAAA,GAAA,YAAA,aAAA,CAAa,MAAM,CAAC,CAAC,cAEnB;CACJ,CAAC;CAED,GAAG,+DAA+D;EAChE,MAAM,SAAS,MAAM;GAAE,OAAO;GAAK,OAAO;GAAK,UAAU;EAAO,CAAC;EACjE,CAAA,GAAA,YAAA,aAAA,CAAa,MAAM,CAAC,CAAC,cAEnB;CACJ,CAAC;CAED,GAAG,2EAA2E;EAC5E,MAAM,SAAS,UAAU;GAAE,QAAQ,CAAC,GAAG;GAAG,OAAO;GAAK,UAAU;EAAS,CAAC;EAC1E,CAAA,GAAA,YAAA,aAAA,CAAa,MAAM,CAAC,CAAC,cAEnB;CACJ,CAAC;CAED,GAAG,iFAAiF;EASlF,UAAU;GAAE,QAAQ,CAAC,GAAG;GAAG,OAAO;GAAK,UAAU;EAAc,CAAC;EAEhE,MAAM;GAAE,OAAO;GAAK,OAAO;GAAK,UAAU;EAAS,CAAC;CAEtD,CAAC;CAED,GAAG,2FAA2F;EAQ5F,MAAM,SAAS,MAAM;GAJnB,OAAO;GACP,OAAO;GACP,UAAU;EAEW,CAAC;EACxB,CAAA,GAAA,YAAA,aAAA,CAAa,MAAM,CAAC,CAAC,cAEnB;CACJ,CAAC;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { t as AspectRatio } from "../Media-BbX7BAaO.mjs";
2
- import { a as ImageResolution, l as ProviderData, o as ImageSource, t as GeneratedImage } from "../Image-Cv6iBLTy.mjs";
2
+ import { a as ImageResolution, o as ImageSource, t as GeneratedImage, u as ProviderData } from "../Image-Bzc1H_UK.mjs";
3
3
  import { t as AiError } from "../AiError-DvhLIbmd.mjs";
4
4
  import { Context, Data, Effect, Stream } from "effect";
5
5
  declare namespace ImageGenerator_d_exports {
@@ -74,71 +74,15 @@ type ImageStreamEvent = Data.TaggedEnum<{
74
74
  * Namespace of constructors, type guards, and matchers for
75
75
  * `ImageStreamEvent`, provided by `Data.taggedEnum`.
76
76
  */
77
- declare const ImageStreamEvent: {
78
- readonly $is: <Tag extends "Complete" | "PartialImage">(tag: Tag) => (u: unknown) => u is Extract<{
79
- readonly _tag: "Complete";
80
- readonly images: ReadonlyArray<GeneratedImage>;
81
- readonly usage: ImageUsage;
82
- }, {
83
- readonly _tag: Tag;
84
- }> | Extract<{
85
- readonly _tag: "PartialImage";
86
- readonly image: ImageSource;
87
- readonly index: number;
88
- }, {
89
- readonly _tag: Tag;
90
- }>;
91
- readonly $match: {
92
- <Cases extends { readonly [Tag in "Complete" | "PartialImage"]: (args: Extract<{
93
- readonly _tag: "Complete";
94
- readonly images: ReadonlyArray<GeneratedImage>;
95
- readonly usage: ImageUsage;
96
- } | {
97
- readonly _tag: "PartialImage";
98
- readonly image: ImageSource;
99
- readonly index: number;
100
- }, {
101
- readonly _tag: Tag;
102
- }>) => any; }>(cases: Cases): (value: {
103
- readonly _tag: "Complete";
104
- readonly images: ReadonlyArray<GeneratedImage>;
105
- readonly usage: ImageUsage;
106
- } | {
107
- readonly _tag: "PartialImage";
108
- readonly image: ImageSource;
109
- readonly index: number;
110
- }) => import("effect/Unify").Unify<ReturnType<Cases["Complete" | "PartialImage"]>>;
111
- <Cases extends { readonly [Tag in "Complete" | "PartialImage"]: (args: Extract<{
112
- readonly _tag: "Complete";
113
- readonly images: ReadonlyArray<GeneratedImage>;
114
- readonly usage: ImageUsage;
115
- } | {
116
- readonly _tag: "PartialImage";
117
- readonly image: ImageSource;
118
- readonly index: number;
119
- }, {
120
- readonly _tag: Tag;
121
- }>) => any; }>(value: {
122
- readonly _tag: "Complete";
123
- readonly images: ReadonlyArray<GeneratedImage>;
124
- readonly usage: ImageUsage;
125
- } | {
126
- readonly _tag: "PartialImage";
127
- readonly image: ImageSource;
128
- readonly index: number;
129
- }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Complete" | "PartialImage"]>>;
130
- };
131
- readonly Complete: Data.TaggedEnum.ConstructorFrom<{
132
- readonly _tag: "Complete";
133
- readonly images: ReadonlyArray<GeneratedImage>;
134
- readonly usage: ImageUsage;
135
- }, "_tag">;
136
- readonly PartialImage: Data.TaggedEnum.ConstructorFrom<{
137
- readonly _tag: "PartialImage";
138
- readonly image: ImageSource;
139
- readonly index: number;
140
- }, "_tag">;
141
- };
77
+ declare const ImageStreamEvent: Data.TaggedEnum.Constructor<{
78
+ readonly _tag: "Complete";
79
+ readonly images: ReadonlyArray<GeneratedImage>;
80
+ readonly usage: ImageUsage;
81
+ } | {
82
+ readonly _tag: "PartialImage";
83
+ readonly image: ImageSource;
84
+ readonly index: number;
85
+ }>;
142
86
  declare const isPartialImage: (u: unknown) => u is {
143
87
  readonly _tag: "PartialImage";
144
88
  readonly image: ImageSource;
@@ -1 +1 @@
1
- {"version":3,"file":"ImageGenerator.d.mts","names":[],"sources":["../../src/image-generator/ImageGenerator.ts"],"mappings":";;;;;;;;;;;;;;KAmBY;WACD;;WAEA;WACA,cAAc;WACd,aAAa;;WAEb;;;;;;;;KASC,yBAAyB;WAC1B,QAAQ,cAAc;;;KAIrB,2BAA2B;WAC5B;;;KAIC,+BAA+B;WAChC;;;KAIC;WACD;WACA;WACA;;KAGC;WACD,QAAQ,cAAc;WACtB,OAAO;;;;;;WAMP,eAAe;;;;;;;KAQd,mBAAmB,KAAK;EAClC;aACW,OAAO;;aAEP;;EAEX;aACW,QAAQ,cAAc;aACtB,OAAO;;;;;;;cAQP;;;aATQ,QAAA,cAAc;aACf,OAAA;;;;;aANA,OAAA;aAEA;;;;;;;eAGC,QAAA,cAAc;eACf,OAAA;;;eANA,OAAA;eAEA;;;;;;;;;;;;;;eAGC,QAAA,cAAc;eACf,OAAA;;;eANA,OAAA;eAEA;;;;;;;;;;;;;;;aAGC,QAAA,cAAc;aACf,OAAA;;;;aANA,OAAA;aAEA;;;cAcP,iBAAc,eAAA;;WAhBP,OAAA;WAEA;;cAeP,aAAU,eAAA;;WAZF,QAAA,cAAc;WACf,OAAA;;KAaR;;WAED,WACP,SAAS,+BACN,OAAO,OAAO,eAAe;;WAEzB,OAAO,SAAS,2BAA2B,OAAO,OAAO,eAAe;;;;;;;WAOxE,mBACP,SAAS,6BACN,OAAO,OAAO,kBAAkB;;WAE5B,aACP,SAAS,iCACN,OAAO,OAAO,kBAAkB;;;cAG1B,uBAAuB;;;;;;;;;cAWvB,uBAAuB;;cAKvB,WAAQ,SACV,+BACR,OAAO,OAAO,eAAe,SAAiB;;cAIpC,OAAI,SACN,2BACR,OAAO,OAAO,eAAe,SAAiB;;cAIpC,mBAAgB,SAClB,6BACR,OAAO,OAAO,kBAAkB,SAAiB,iBAAiB;;cAUxD,aAAU,SACZ,iCACR,OAAO,OAAO,kBAAkB,SAAiB,iBAAiB"}
1
+ {"version":3,"file":"ImageGenerator.d.mts","names":[],"sources":["../../src/image-generator/ImageGenerator.ts"],"mappings":";;;;;;;;;;;;;;KAmBY;WACD;;WAEA;WACA,cAAc;WACd,aAAa;;WAEb;;;;;;;;KASC,yBAAyB;WAC1B,QAAQ,cAAc;;;KAIrB,2BAA2B;WAC5B;;;KAIC,+BAA+B;WAChC;;;KAIC;WACD;WACA;WACA;;KAGC;WACD,QAAQ,cAAc;WACtB,OAAO;;;;;;WAMP,eAAe;;;;;;;KAQd,mBAAmB,KAAK;EAClC;aACW,OAAO;;aAEP;;EAEX;aACW,QAAQ,cAAc;aACtB,OAAO;;;;;;;cAQP,kBAAgB,KAAA,WAAA;;WATR,QAAA,cAAc;WACf,OAAA;;;WANA,OAAA;WAEA;;cAcP,iBAAc,eAAA;;WAhBP,OAAA;WAEA;;cAeP,aAAU,eAAA;;WAZF,QAAA,cAAc;WACf,OAAA;;KAaR;;WAED,WACP,SAAS,+BACN,OAAO,OAAO,eAAe;;WAEzB,OAAO,SAAS,2BAA2B,OAAO,OAAO,eAAe;;;;;;;WAOxE,mBACP,SAAS,6BACN,OAAO,OAAO,kBAAkB;;WAE5B,aACP,SAAS,iCACN,OAAO,OAAO,kBAAkB;;;cAG1B,uBAAuB;;;;;;;;;cAWvB,uBAAuB;;cAKvB,WAAQ,SACV,+BACR,OAAO,OAAO,eAAe,SAAiB;;cAIpC,OAAI,SACN,2BACR,OAAO,OAAO,eAAe,SAAiB;;cAIpC,mBAAgB,SAClB,6BACR,OAAO,OAAO,kBAAkB,SAAiB,iBAAiB;;cAUxD,aAAU,SACZ,iCACR,OAAO,OAAO,kBAAkB,SAAiB,iBAAiB"}