@ai-sdk/llamaindex 3.0.0-beta.10 → 3.0.0-beta.101

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,621 @@
1
1
  # @ai-sdk/llamaindex
2
2
 
3
+ ## 3.0.0-beta.101
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [4873966]
8
+ - ai@7.0.0-beta.101
9
+
10
+ ## 3.0.0-beta.100
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies [add1126]
15
+ - ai@7.0.0-beta.100
16
+
17
+ ## 3.0.0-beta.99
18
+
19
+ ### Patch Changes
20
+
21
+ - Updated dependencies [2a9c144]
22
+ - ai@7.0.0-beta.99
23
+
24
+ ## 3.0.0-beta.98
25
+
26
+ ### Patch Changes
27
+
28
+ - ai@7.0.0-beta.98
29
+
30
+ ## 3.0.0-beta.97
31
+
32
+ ### Patch Changes
33
+
34
+ - Updated dependencies [208d045]
35
+ - ai@7.0.0-beta.97
36
+
37
+ ## 3.0.0-beta.96
38
+
39
+ ### Patch Changes
40
+
41
+ - ai@7.0.0-beta.96
42
+
43
+ ## 3.0.0-beta.95
44
+
45
+ ### Patch Changes
46
+
47
+ - Updated dependencies [c4f4b5f]
48
+ - ai@7.0.0-beta.95
49
+
50
+ ## 3.0.0-beta.94
51
+
52
+ ### Patch Changes
53
+
54
+ - Updated dependencies [1582efa]
55
+ - ai@7.0.0-beta.94
56
+
57
+ ## 3.0.0-beta.93
58
+
59
+ ### Patch Changes
60
+
61
+ - Updated dependencies [bc47739]
62
+ - ai@7.0.0-beta.93
63
+
64
+ ## 3.0.0-beta.92
65
+
66
+ ### Patch Changes
67
+
68
+ - ai@7.0.0-beta.92
69
+
70
+ ## 3.0.0-beta.91
71
+
72
+ ### Patch Changes
73
+
74
+ - ai@7.0.0-beta.91
75
+
76
+ ## 3.0.0-beta.90
77
+
78
+ ### Patch Changes
79
+
80
+ - Updated dependencies [1db29c8]
81
+ - ai@7.0.0-beta.90
82
+
83
+ ## 3.0.0-beta.89
84
+
85
+ ### Patch Changes
86
+
87
+ - Updated dependencies [ff5eba1]
88
+ - ai@7.0.0-beta.89
89
+
90
+ ## 3.0.0-beta.88
91
+
92
+ ### Major Changes
93
+
94
+ - ef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only (`"type": "module"`). Consumers using `require()` must switch to ESM `import` syntax.
95
+
96
+ ### Patch Changes
97
+
98
+ - Updated dependencies [ef992f8]
99
+ - ai@7.0.0-beta.88
100
+
101
+ ## 3.0.0-beta.87
102
+
103
+ ### Patch Changes
104
+
105
+ - ai@7.0.0-beta.87
106
+
107
+ ## 3.0.0-beta.86
108
+
109
+ ### Patch Changes
110
+
111
+ - Updated dependencies [5a6f514]
112
+ - ai@7.0.0-beta.86
113
+
114
+ ## 3.0.0-beta.85
115
+
116
+ ### Patch Changes
117
+
118
+ - Updated dependencies [57bf606]
119
+ - ai@7.0.0-beta.85
120
+
121
+ ## 3.0.0-beta.84
122
+
123
+ ### Patch Changes
124
+
125
+ - Updated dependencies [90e2d8a]
126
+ - ai@7.0.0-beta.84
127
+
128
+ ## 3.0.0-beta.83
129
+
130
+ ### Patch Changes
131
+
132
+ - ai@7.0.0-beta.83
133
+
134
+ ## 3.0.0-beta.82
135
+
136
+ ### Patch Changes
137
+
138
+ - Updated dependencies [e27ed76]
139
+ - ai@7.0.0-beta.82
140
+
141
+ ## 3.0.0-beta.81
142
+
143
+ ### Patch Changes
144
+
145
+ - Updated dependencies [2fe1099]
146
+ - Updated dependencies [f04adcb]
147
+ - ai@7.0.0-beta.81
148
+
149
+ ## 3.0.0-beta.80
150
+
151
+ ### Patch Changes
152
+
153
+ - Updated dependencies [3ae1786]
154
+ - ai@7.0.0-beta.80
155
+
156
+ ## 3.0.0-beta.79
157
+
158
+ ### Patch Changes
159
+
160
+ - Updated dependencies [6866afe]
161
+ - ai@7.0.0-beta.79
162
+
163
+ ## 3.0.0-beta.78
164
+
165
+ ### Patch Changes
166
+
167
+ - Updated dependencies [f372547]
168
+ - ai@7.0.0-beta.78
169
+
170
+ ## 3.0.0-beta.77
171
+
172
+ ### Patch Changes
173
+
174
+ - Updated dependencies [2add429]
175
+ - ai@7.0.0-beta.77
176
+
177
+ ## 3.0.0-beta.76
178
+
179
+ ### Patch Changes
180
+
181
+ - Updated dependencies [fcc6869]
182
+ - ai@7.0.0-beta.76
183
+
184
+ ## 3.0.0-beta.75
185
+
186
+ ### Patch Changes
187
+
188
+ - Updated dependencies [176466a]
189
+ - ai@7.0.0-beta.75
190
+
191
+ ## 3.0.0-beta.74
192
+
193
+ ### Patch Changes
194
+
195
+ - Updated dependencies [e311194]
196
+ - ai@7.0.0-beta.74
197
+
198
+ ## 3.0.0-beta.73
199
+
200
+ ### Patch Changes
201
+
202
+ - ai@7.0.0-beta.73
203
+
204
+ ## 3.0.0-beta.72
205
+
206
+ ### Patch Changes
207
+
208
+ - Updated dependencies [664a0eb]
209
+ - ai@7.0.0-beta.72
210
+
211
+ ## 3.0.0-beta.71
212
+
213
+ ### Patch Changes
214
+
215
+ - Updated dependencies [e68be55]
216
+ - ai@7.0.0-beta.71
217
+
218
+ ## 3.0.0-beta.70
219
+
220
+ ### Patch Changes
221
+
222
+ - ai@7.0.0-beta.70
223
+
224
+ ## 3.0.0-beta.69
225
+
226
+ ### Patch Changes
227
+
228
+ - Updated dependencies [34bd95d]
229
+ - Updated dependencies [008271d]
230
+ - Updated dependencies [72223e7]
231
+ - ai@7.0.0-beta.69
232
+
233
+ ## 3.0.0-beta.68
234
+
235
+ ### Patch Changes
236
+
237
+ - Updated dependencies [b0c2869]
238
+ - Updated dependencies [7e26e81]
239
+ - ai@7.0.0-beta.68
240
+
241
+ ## 3.0.0-beta.67
242
+
243
+ ### Patch Changes
244
+
245
+ - Updated dependencies [d1a8bed]
246
+ - ai@7.0.0-beta.67
247
+
248
+ ## 3.0.0-beta.66
249
+
250
+ ### Patch Changes
251
+
252
+ - ai@7.0.0-beta.66
253
+
254
+ ## 3.0.0-beta.65
255
+
256
+ ### Patch Changes
257
+
258
+ - ai@7.0.0-beta.65
259
+
260
+ ## 3.0.0-beta.64
261
+
262
+ ### Patch Changes
263
+
264
+ - ai@7.0.0-beta.64
265
+
266
+ ## 3.0.0-beta.63
267
+
268
+ ### Patch Changes
269
+
270
+ - Updated dependencies [6fd51c0]
271
+ - ai@7.0.0-beta.63
272
+
273
+ ## 3.0.0-beta.62
274
+
275
+ ### Patch Changes
276
+
277
+ - ai@7.0.0-beta.62
278
+
279
+ ## 3.0.0-beta.61
280
+
281
+ ### Patch Changes
282
+
283
+ - Updated dependencies [c29a26f]
284
+ - ai@7.0.0-beta.61
285
+
286
+ ## 3.0.0-beta.60
287
+
288
+ ### Patch Changes
289
+
290
+ - Updated dependencies [38fc777]
291
+ - ai@7.0.0-beta.60
292
+
293
+ ## 3.0.0-beta.59
294
+
295
+ ### Patch Changes
296
+
297
+ - ai@7.0.0-beta.59
298
+
299
+ ## 3.0.0-beta.58
300
+
301
+ ### Patch Changes
302
+
303
+ - Updated dependencies [2e17091]
304
+ - ai@7.0.0-beta.58
305
+
306
+ ## 3.0.0-beta.57
307
+
308
+ ### Patch Changes
309
+
310
+ - Updated dependencies [986c6fd]
311
+ - Updated dependencies [493295c]
312
+ - ai@7.0.0-beta.57
313
+
314
+ ## 3.0.0-beta.56
315
+
316
+ ### Patch Changes
317
+
318
+ - ai@7.0.0-beta.56
319
+
320
+ ## 3.0.0-beta.55
321
+
322
+ ### Patch Changes
323
+
324
+ - Updated dependencies [b3c9f6a]
325
+ - ai@7.0.0-beta.55
326
+
327
+ ## 3.0.0-beta.54
328
+
329
+ ### Patch Changes
330
+
331
+ - Updated dependencies [5d0f18e]
332
+ - ai@7.0.0-beta.54
333
+
334
+ ## 3.0.0-beta.53
335
+
336
+ ### Patch Changes
337
+
338
+ - Updated dependencies [9b47dea]
339
+ - ai@7.0.0-beta.53
340
+
341
+ ## 3.0.0-beta.52
342
+
343
+ ### Patch Changes
344
+
345
+ - Updated dependencies [b56301c]
346
+ - ai@7.0.0-beta.52
347
+
348
+ ## 3.0.0-beta.51
349
+
350
+ ### Patch Changes
351
+
352
+ - Updated dependencies [6abd098]
353
+ - ai@7.0.0-beta.51
354
+
355
+ ## 3.0.0-beta.50
356
+
357
+ ### Patch Changes
358
+
359
+ - Updated dependencies [3debdb7]
360
+ - ai@7.0.0-beta.50
361
+
362
+ ## 3.0.0-beta.49
363
+
364
+ ### Patch Changes
365
+
366
+ - ai@7.0.0-beta.49
367
+
368
+ ## 3.0.0-beta.48
369
+
370
+ ### Patch Changes
371
+
372
+ - Updated dependencies [5c4d910]
373
+ - ai@7.0.0-beta.48
374
+
375
+ ## 3.0.0-beta.47
376
+
377
+ ### Patch Changes
378
+
379
+ - Updated dependencies [bc67b4f]
380
+ - ai@7.0.0-beta.47
381
+
382
+ ## 3.0.0-beta.46
383
+
384
+ ### Patch Changes
385
+
386
+ - Updated dependencies [31ee822]
387
+ - ai@7.0.0-beta.46
388
+
389
+ ## 3.0.0-beta.45
390
+
391
+ ### Patch Changes
392
+
393
+ - ai@7.0.0-beta.45
394
+
395
+ ## 3.0.0-beta.44
396
+
397
+ ### Patch Changes
398
+
399
+ - ai@7.0.0-beta.44
400
+
401
+ ## 3.0.0-beta.43
402
+
403
+ ### Patch Changes
404
+
405
+ - ai@7.0.0-beta.43
406
+
407
+ ## 3.0.0-beta.42
408
+
409
+ ### Patch Changes
410
+
411
+ - Updated dependencies [a3fd75b]
412
+ - ai@7.0.0-beta.42
413
+
414
+ ## 3.0.0-beta.41
415
+
416
+ ### Patch Changes
417
+
418
+ - ai@7.0.0-beta.41
419
+
420
+ ## 3.0.0-beta.40
421
+
422
+ ### Patch Changes
423
+
424
+ - Updated dependencies [989d3d2]
425
+ - ai@7.0.0-beta.40
426
+
427
+ ## 3.0.0-beta.39
428
+
429
+ ### Patch Changes
430
+
431
+ - Updated dependencies [f4cfccd]
432
+ - ai@7.0.0-beta.39
433
+
434
+ ## 3.0.0-beta.38
435
+
436
+ ### Patch Changes
437
+
438
+ - Updated dependencies [1f509d4]
439
+ - ai@7.0.0-beta.38
440
+
441
+ ## 3.0.0-beta.37
442
+
443
+ ### Patch Changes
444
+
445
+ - ai@7.0.0-beta.37
446
+
447
+ ## 3.0.0-beta.36
448
+
449
+ ### Patch Changes
450
+
451
+ - Updated dependencies [118b953]
452
+ - ai@7.0.0-beta.36
453
+
454
+ ## 3.0.0-beta.35
455
+
456
+ ### Patch Changes
457
+
458
+ - Updated dependencies [99bf941]
459
+ - ai@7.0.0-beta.35
460
+
461
+ ## 3.0.0-beta.34
462
+
463
+ ### Patch Changes
464
+
465
+ - ai@7.0.0-beta.34
466
+
467
+ ## 3.0.0-beta.33
468
+
469
+ ### Patch Changes
470
+
471
+ - Updated dependencies [caf1b6f]
472
+ - ai@7.0.0-beta.33
473
+
474
+ ## 3.0.0-beta.32
475
+
476
+ ### Patch Changes
477
+
478
+ - Updated dependencies [4b46062]
479
+ - ai@7.0.0-beta.32
480
+
481
+ ## 3.0.0-beta.31
482
+
483
+ ### Patch Changes
484
+
485
+ - Updated dependencies [e79e644]
486
+ - ai@7.0.0-beta.31
487
+
488
+ ## 3.0.0-beta.30
489
+
490
+ ### Patch Changes
491
+
492
+ - Updated dependencies [f5a6f89]
493
+ - ai@7.0.0-beta.30
494
+
495
+ ## 3.0.0-beta.29
496
+
497
+ ### Patch Changes
498
+
499
+ - Updated dependencies [877bf12]
500
+ - ai@7.0.0-beta.29
501
+
502
+ ## 3.0.0-beta.28
503
+
504
+ ### Patch Changes
505
+
506
+ - Updated dependencies [b9cf502]
507
+ - ai@7.0.0-beta.28
508
+
509
+ ## 3.0.0-beta.27
510
+
511
+ ### Patch Changes
512
+
513
+ - Updated dependencies [3887c70]
514
+ - ai@7.0.0-beta.27
515
+
516
+ ## 3.0.0-beta.26
517
+
518
+ ### Patch Changes
519
+
520
+ - Updated dependencies [f0b0b20]
521
+ - ai@7.0.0-beta.26
522
+
523
+ ## 3.0.0-beta.25
524
+
525
+ ### Patch Changes
526
+
527
+ - Updated dependencies [ff9ce30]
528
+ - ai@7.0.0-beta.25
529
+
530
+ ## 3.0.0-beta.24
531
+
532
+ ### Patch Changes
533
+
534
+ - Updated dependencies [776b617]
535
+ - ai@7.0.0-beta.24
536
+
537
+ ## 3.0.0-beta.23
538
+
539
+ ### Patch Changes
540
+
541
+ - Updated dependencies [80d4dde]
542
+ - ai@7.0.0-beta.23
543
+
544
+ ## 3.0.0-beta.22
545
+
546
+ ### Patch Changes
547
+
548
+ - ai@7.0.0-beta.22
549
+
550
+ ## 3.0.0-beta.21
551
+
552
+ ### Patch Changes
553
+
554
+ - Updated dependencies [34fd051]
555
+ - ai@7.0.0-beta.21
556
+
557
+ ## 3.0.0-beta.20
558
+
559
+ ### Patch Changes
560
+
561
+ - ai@7.0.0-beta.20
562
+
563
+ ## 3.0.0-beta.19
564
+
565
+ ### Patch Changes
566
+
567
+ - ai@7.0.0-beta.19
568
+
569
+ ## 3.0.0-beta.18
570
+
571
+ ### Patch Changes
572
+
573
+ - ai@7.0.0-beta.18
574
+
575
+ ## 3.0.0-beta.17
576
+
577
+ ### Patch Changes
578
+
579
+ - ai@7.0.0-beta.17
580
+
581
+ ## 3.0.0-beta.16
582
+
583
+ ### Patch Changes
584
+
585
+ - Updated dependencies [5b8c58f]
586
+ - ai@7.0.0-beta.16
587
+
588
+ ## 3.0.0-beta.15
589
+
590
+ ### Patch Changes
591
+
592
+ - ai@7.0.0-beta.15
593
+
594
+ ## 3.0.0-beta.14
595
+
596
+ ### Patch Changes
597
+
598
+ - ai@7.0.0-beta.14
599
+
600
+ ## 3.0.0-beta.13
601
+
602
+ ### Patch Changes
603
+
604
+ - Updated dependencies [c26ca8d]
605
+ - ai@7.0.0-beta.13
606
+
607
+ ## 3.0.0-beta.12
608
+
609
+ ### Patch Changes
610
+
611
+ - ai@7.0.0-beta.12
612
+
613
+ ## 3.0.0-beta.11
614
+
615
+ ### Patch Changes
616
+
617
+ - ai@7.0.0-beta.11
618
+
3
619
  ## 3.0.0-beta.10
4
620
 
5
621
  ### Patch Changes
package/dist/index.js CHANGED
@@ -1,31 +1,5 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/index.ts
21
- var src_exports = {};
22
- __export(src_exports, {
23
- toUIMessageStream: () => toUIMessageStream
24
- });
25
- module.exports = __toCommonJS(src_exports);
26
-
27
1
  // src/llamaindex-adapter.ts
28
- var import_internal = require("ai/internal");
2
+ import { convertAsyncIteratorToReadableStream } from "ai/internal";
29
3
 
30
4
  // src/stream-callbacks.ts
31
5
  function createCallbacksTransformer(callbacks = {}) {
@@ -53,7 +27,7 @@ function createCallbacksTransformer(callbacks = {}) {
53
27
  // src/llamaindex-adapter.ts
54
28
  function toUIMessageStream(stream, callbacks) {
55
29
  const trimStart = trimStartOfStream();
56
- return (0, import_internal.convertAsyncIteratorToReadableStream)(stream[Symbol.asyncIterator]()).pipeThrough(
30
+ return convertAsyncIteratorToReadableStream(stream[Symbol.asyncIterator]()).pipeThrough(
57
31
  new TransformStream({
58
32
  async transform(message, controller) {
59
33
  controller.enqueue(trimStart(message.delta));
@@ -83,8 +57,7 @@ function trimStartOfStream() {
83
57
  return text;
84
58
  };
85
59
  }
86
- // Annotate the CommonJS export names for ESM import in node:
87
- 0 && (module.exports = {
60
+ export {
88
61
  toUIMessageStream
89
- });
62
+ };
90
63
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/llamaindex-adapter.ts","../src/stream-callbacks.ts"],"sourcesContent":["export * from './llamaindex-adapter';\n","import { UIMessageChunk } from 'ai';\nimport { convertAsyncIteratorToReadableStream } from 'ai/internal';\nimport {\n createCallbacksTransformer,\n StreamCallbacks,\n} from './stream-callbacks';\n\ntype EngineResponse = {\n delta: string;\n};\n\nexport function toUIMessageStream(\n stream: AsyncIterable<EngineResponse>,\n callbacks?: StreamCallbacks,\n) {\n const trimStart = trimStartOfStream();\n\n return convertAsyncIteratorToReadableStream(stream[Symbol.asyncIterator]())\n .pipeThrough(\n new TransformStream({\n async transform(message, controller): Promise<void> {\n controller.enqueue(trimStart(message.delta));\n },\n }),\n )\n .pipeThrough(createCallbacksTransformer(callbacks))\n .pipeThrough(\n new TransformStream<string, UIMessageChunk>({\n start: async controller => {\n controller.enqueue({ type: 'text-start', id: '1' });\n },\n transform: async (chunk, controller) => {\n controller.enqueue({ type: 'text-delta', delta: chunk, id: '1' });\n },\n flush: async controller => {\n controller.enqueue({ type: 'text-end', id: '1' });\n },\n }),\n );\n}\n\nfunction trimStartOfStream(): (text: string) => string {\n let isStreamStart = true;\n\n return (text: string): string => {\n if (isStreamStart) {\n text = text.trimStart();\n if (text) isStreamStart = false;\n }\n return text;\n };\n}\n","/**\n * Configuration options and helper callback methods for stream lifecycle events.\n */\nexport interface StreamCallbacks {\n /** `onStart`: Called once when the stream is initialized. */\n onStart?: () => Promise<void> | void;\n\n /** `onFinal`: Called once when the stream is closed with the final completion message. */\n onFinal?: (completion: string) => Promise<void> | void;\n\n /** `onToken`: Called for each tokenized message. */\n onToken?: (token: string) => Promise<void> | void;\n\n /** `onText`: Called for each text chunk. */\n onText?: (text: string) => Promise<void> | void;\n}\n\n/**\n * Creates a transform stream that encodes input messages and invokes optional callback functions.\n * The transform stream uses the provided callbacks to execute custom logic at different stages of the stream's lifecycle.\n * - `onStart`: Called once when the stream is initialized.\n * - `onToken`: Called for each tokenized message.\n * - `onFinal`: Called once when the stream is closed with the final completion message.\n *\n * This function is useful when you want to process a stream of messages and perform specific actions during the stream's lifecycle.\n *\n * @param {StreamCallbacks} [callbacks] - An object containing the callback functions.\n * @return {TransformStream<string, Uint8Array>} A transform stream that encodes input messages as Uint8Array and allows the execution of custom logic through callbacks.\n *\n * @example\n * const callbacks = {\n * onStart: async () => console.log('Stream started'),\n * onToken: async (token) => console.log(`Token: ${token}`),\n * onFinal: async () => data.close()\n * };\n * const transformer = createCallbacksTransformer(callbacks);\n */\nexport function createCallbacksTransformer(\n callbacks: StreamCallbacks | undefined = {},\n): TransformStream<string, string> {\n let aggregatedResponse = '';\n\n return new TransformStream({\n async start(): Promise<void> {\n if (callbacks.onStart) await callbacks.onStart();\n },\n\n async transform(message, controller): Promise<void> {\n controller.enqueue(message);\n\n aggregatedResponse += message;\n\n if (callbacks.onToken) await callbacks.onToken(message);\n if (callbacks.onText && typeof message === 'string') {\n await callbacks.onText(message);\n }\n },\n\n async flush(): Promise<void> {\n if (callbacks.onFinal) {\n await callbacks.onFinal(aggregatedResponse);\n }\n },\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,sBAAqD;;;ACoC9C,SAAS,2BACd,YAAyC,CAAC,GACT;AACjC,MAAI,qBAAqB;AAEzB,SAAO,IAAI,gBAAgB;AAAA,IACzB,MAAM,QAAuB;AAC3B,UAAI,UAAU,QAAS,OAAM,UAAU,QAAQ;AAAA,IACjD;AAAA,IAEA,MAAM,UAAU,SAAS,YAA2B;AAClD,iBAAW,QAAQ,OAAO;AAE1B,4BAAsB;AAEtB,UAAI,UAAU,QAAS,OAAM,UAAU,QAAQ,OAAO;AACtD,UAAI,UAAU,UAAU,OAAO,YAAY,UAAU;AACnD,cAAM,UAAU,OAAO,OAAO;AAAA,MAChC;AAAA,IACF;AAAA,IAEA,MAAM,QAAuB;AAC3B,UAAI,UAAU,SAAS;AACrB,cAAM,UAAU,QAAQ,kBAAkB;AAAA,MAC5C;AAAA,IACF;AAAA,EACF,CAAC;AACH;;;ADrDO,SAAS,kBACd,QACA,WACA;AACA,QAAM,YAAY,kBAAkB;AAEpC,aAAO,sDAAqC,OAAO,OAAO,aAAa,EAAE,CAAC,EACvE;AAAA,IACC,IAAI,gBAAgB;AAAA,MAClB,MAAM,UAAU,SAAS,YAA2B;AAClD,mBAAW,QAAQ,UAAU,QAAQ,KAAK,CAAC;AAAA,MAC7C;AAAA,IACF,CAAC;AAAA,EACH,EACC,YAAY,2BAA2B,SAAS,CAAC,EACjD;AAAA,IACC,IAAI,gBAAwC;AAAA,MAC1C,OAAO,OAAM,eAAc;AACzB,mBAAW,QAAQ,EAAE,MAAM,cAAc,IAAI,IAAI,CAAC;AAAA,MACpD;AAAA,MACA,WAAW,OAAO,OAAO,eAAe;AACtC,mBAAW,QAAQ,EAAE,MAAM,cAAc,OAAO,OAAO,IAAI,IAAI,CAAC;AAAA,MAClE;AAAA,MACA,OAAO,OAAM,eAAc;AACzB,mBAAW,QAAQ,EAAE,MAAM,YAAY,IAAI,IAAI,CAAC;AAAA,MAClD;AAAA,IACF,CAAC;AAAA,EACH;AACJ;AAEA,SAAS,oBAA8C;AACrD,MAAI,gBAAgB;AAEpB,SAAO,CAAC,SAAyB;AAC/B,QAAI,eAAe;AACjB,aAAO,KAAK,UAAU;AACtB,UAAI,KAAM,iBAAgB;AAAA,IAC5B;AACA,WAAO;AAAA,EACT;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/llamaindex-adapter.ts","../src/stream-callbacks.ts"],"sourcesContent":["import { UIMessageChunk } from 'ai';\nimport { convertAsyncIteratorToReadableStream } from 'ai/internal';\nimport {\n createCallbacksTransformer,\n StreamCallbacks,\n} from './stream-callbacks';\n\ntype EngineResponse = {\n delta: string;\n};\n\nexport function toUIMessageStream(\n stream: AsyncIterable<EngineResponse>,\n callbacks?: StreamCallbacks,\n) {\n const trimStart = trimStartOfStream();\n\n return convertAsyncIteratorToReadableStream(stream[Symbol.asyncIterator]())\n .pipeThrough(\n new TransformStream({\n async transform(message, controller): Promise<void> {\n controller.enqueue(trimStart(message.delta));\n },\n }),\n )\n .pipeThrough(createCallbacksTransformer(callbacks))\n .pipeThrough(\n new TransformStream<string, UIMessageChunk>({\n start: async controller => {\n controller.enqueue({ type: 'text-start', id: '1' });\n },\n transform: async (chunk, controller) => {\n controller.enqueue({ type: 'text-delta', delta: chunk, id: '1' });\n },\n flush: async controller => {\n controller.enqueue({ type: 'text-end', id: '1' });\n },\n }),\n );\n}\n\nfunction trimStartOfStream(): (text: string) => string {\n let isStreamStart = true;\n\n return (text: string): string => {\n if (isStreamStart) {\n text = text.trimStart();\n if (text) isStreamStart = false;\n }\n return text;\n };\n}\n","/**\n * Configuration options and helper callback methods for stream lifecycle events.\n */\nexport interface StreamCallbacks {\n /** `onStart`: Called once when the stream is initialized. */\n onStart?: () => Promise<void> | void;\n\n /** `onFinal`: Called once when the stream is closed with the final completion message. */\n onFinal?: (completion: string) => Promise<void> | void;\n\n /** `onToken`: Called for each tokenized message. */\n onToken?: (token: string) => Promise<void> | void;\n\n /** `onText`: Called for each text chunk. */\n onText?: (text: string) => Promise<void> | void;\n}\n\n/**\n * Creates a transform stream that encodes input messages and invokes optional callback functions.\n * The transform stream uses the provided callbacks to execute custom logic at different stages of the stream's lifecycle.\n * - `onStart`: Called once when the stream is initialized.\n * - `onToken`: Called for each tokenized message.\n * - `onFinal`: Called once when the stream is closed with the final completion message.\n *\n * This function is useful when you want to process a stream of messages and perform specific actions during the stream's lifecycle.\n *\n * @param {StreamCallbacks} [callbacks] - An object containing the callback functions.\n * @return {TransformStream<string, Uint8Array>} A transform stream that encodes input messages as Uint8Array and allows the execution of custom logic through callbacks.\n *\n * @example\n * const callbacks = {\n * onStart: async () => console.log('Stream started'),\n * onToken: async (token) => console.log(`Token: ${token}`),\n * onFinal: async () => data.close()\n * };\n * const transformer = createCallbacksTransformer(callbacks);\n */\nexport function createCallbacksTransformer(\n callbacks: StreamCallbacks | undefined = {},\n): TransformStream<string, string> {\n let aggregatedResponse = '';\n\n return new TransformStream({\n async start(): Promise<void> {\n if (callbacks.onStart) await callbacks.onStart();\n },\n\n async transform(message, controller): Promise<void> {\n controller.enqueue(message);\n\n aggregatedResponse += message;\n\n if (callbacks.onToken) await callbacks.onToken(message);\n if (callbacks.onText && typeof message === 'string') {\n await callbacks.onText(message);\n }\n },\n\n async flush(): Promise<void> {\n if (callbacks.onFinal) {\n await callbacks.onFinal(aggregatedResponse);\n }\n },\n });\n}\n"],"mappings":";AACA,SAAS,4CAA4C;;;ACoC9C,SAAS,2BACd,YAAyC,CAAC,GACT;AACjC,MAAI,qBAAqB;AAEzB,SAAO,IAAI,gBAAgB;AAAA,IACzB,MAAM,QAAuB;AAC3B,UAAI,UAAU,QAAS,OAAM,UAAU,QAAQ;AAAA,IACjD;AAAA,IAEA,MAAM,UAAU,SAAS,YAA2B;AAClD,iBAAW,QAAQ,OAAO;AAE1B,4BAAsB;AAEtB,UAAI,UAAU,QAAS,OAAM,UAAU,QAAQ,OAAO;AACtD,UAAI,UAAU,UAAU,OAAO,YAAY,UAAU;AACnD,cAAM,UAAU,OAAO,OAAO;AAAA,MAChC;AAAA,IACF;AAAA,IAEA,MAAM,QAAuB;AAC3B,UAAI,UAAU,SAAS;AACrB,cAAM,UAAU,QAAQ,kBAAkB;AAAA,MAC5C;AAAA,IACF;AAAA,EACF,CAAC;AACH;;;ADrDO,SAAS,kBACd,QACA,WACA;AACA,QAAM,YAAY,kBAAkB;AAEpC,SAAO,qCAAqC,OAAO,OAAO,aAAa,EAAE,CAAC,EACvE;AAAA,IACC,IAAI,gBAAgB;AAAA,MAClB,MAAM,UAAU,SAAS,YAA2B;AAClD,mBAAW,QAAQ,UAAU,QAAQ,KAAK,CAAC;AAAA,MAC7C;AAAA,IACF,CAAC;AAAA,EACH,EACC,YAAY,2BAA2B,SAAS,CAAC,EACjD;AAAA,IACC,IAAI,gBAAwC;AAAA,MAC1C,OAAO,OAAM,eAAc;AACzB,mBAAW,QAAQ,EAAE,MAAM,cAAc,IAAI,IAAI,CAAC;AAAA,MACpD;AAAA,MACA,WAAW,OAAO,OAAO,eAAe;AACtC,mBAAW,QAAQ,EAAE,MAAM,cAAc,OAAO,OAAO,IAAI,IAAI,CAAC;AAAA,MAClE;AAAA,MACA,OAAO,OAAM,eAAc;AACzB,mBAAW,QAAQ,EAAE,MAAM,YAAY,IAAI,IAAI,CAAC;AAAA,MAClD;AAAA,IACF,CAAC;AAAA,EACH;AACJ;AAEA,SAAS,oBAA8C;AACrD,MAAI,gBAAgB;AAEpB,SAAO,CAAC,SAAyB;AAC/B,QAAI,eAAe;AACjB,aAAO,KAAK,UAAU;AACtB,UAAI,KAAM,iBAAgB;AAAA,IAC5B;AACA,WAAO;AAAA,EACT;AACF;","names":[]}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@ai-sdk/llamaindex",
3
- "version": "3.0.0-beta.10",
3
+ "version": "3.0.0-beta.101",
4
+ "type": "module",
4
5
  "license": "Apache-2.0",
5
6
  "sideEffects": false,
6
7
  "main": "./dist/index.js",
7
- "module": "./dist/index.mjs",
8
8
  "types": "./dist/index.d.ts",
9
9
  "files": [
10
10
  "dist/**/*",
@@ -20,12 +20,12 @@
20
20
  "./package.json": "./package.json",
21
21
  ".": {
22
22
  "types": "./dist/index.d.ts",
23
- "import": "./dist/index.mjs",
24
- "require": "./dist/index.js"
23
+ "import": "./dist/index.js",
24
+ "default": "./dist/index.js"
25
25
  }
26
26
  },
27
27
  "dependencies": {
28
- "ai": "7.0.0-beta.10"
28
+ "ai": "7.0.0-beta.101"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/node": "20.17.24",
@@ -54,9 +54,7 @@
54
54
  "build": "pnpm clean && tsup --tsconfig tsconfig.build.json",
55
55
  "build:watch": "pnpm clean && tsup --watch",
56
56
  "clean": "del-cli dist *.tsbuildinfo",
57
- "lint": "eslint \"./**/*.ts*\"",
58
57
  "type-check": "tsc --build",
59
- "prettier-check": "prettier --check \"./**/*.ts*\"",
60
58
  "test": "pnpm test:node && pnpm test:edge",
61
59
  "test:update": "pnpm test:node -u",
62
60
  "test:watch": "vitest --config vitest.node.config.js",
package/dist/index.d.mts DELETED
@@ -1,22 +0,0 @@
1
- import { UIMessageChunk } from 'ai';
2
-
3
- /**
4
- * Configuration options and helper callback methods for stream lifecycle events.
5
- */
6
- interface StreamCallbacks {
7
- /** `onStart`: Called once when the stream is initialized. */
8
- onStart?: () => Promise<void> | void;
9
- /** `onFinal`: Called once when the stream is closed with the final completion message. */
10
- onFinal?: (completion: string) => Promise<void> | void;
11
- /** `onToken`: Called for each tokenized message. */
12
- onToken?: (token: string) => Promise<void> | void;
13
- /** `onText`: Called for each text chunk. */
14
- onText?: (text: string) => Promise<void> | void;
15
- }
16
-
17
- type EngineResponse = {
18
- delta: string;
19
- };
20
- declare function toUIMessageStream(stream: AsyncIterable<EngineResponse>, callbacks?: StreamCallbacks): ReadableStream<UIMessageChunk>;
21
-
22
- export { toUIMessageStream };
package/dist/index.mjs DELETED
@@ -1,63 +0,0 @@
1
- // src/llamaindex-adapter.ts
2
- import { convertAsyncIteratorToReadableStream } from "ai/internal";
3
-
4
- // src/stream-callbacks.ts
5
- function createCallbacksTransformer(callbacks = {}) {
6
- let aggregatedResponse = "";
7
- return new TransformStream({
8
- async start() {
9
- if (callbacks.onStart) await callbacks.onStart();
10
- },
11
- async transform(message, controller) {
12
- controller.enqueue(message);
13
- aggregatedResponse += message;
14
- if (callbacks.onToken) await callbacks.onToken(message);
15
- if (callbacks.onText && typeof message === "string") {
16
- await callbacks.onText(message);
17
- }
18
- },
19
- async flush() {
20
- if (callbacks.onFinal) {
21
- await callbacks.onFinal(aggregatedResponse);
22
- }
23
- }
24
- });
25
- }
26
-
27
- // src/llamaindex-adapter.ts
28
- function toUIMessageStream(stream, callbacks) {
29
- const trimStart = trimStartOfStream();
30
- return convertAsyncIteratorToReadableStream(stream[Symbol.asyncIterator]()).pipeThrough(
31
- new TransformStream({
32
- async transform(message, controller) {
33
- controller.enqueue(trimStart(message.delta));
34
- }
35
- })
36
- ).pipeThrough(createCallbacksTransformer(callbacks)).pipeThrough(
37
- new TransformStream({
38
- start: async (controller) => {
39
- controller.enqueue({ type: "text-start", id: "1" });
40
- },
41
- transform: async (chunk, controller) => {
42
- controller.enqueue({ type: "text-delta", delta: chunk, id: "1" });
43
- },
44
- flush: async (controller) => {
45
- controller.enqueue({ type: "text-end", id: "1" });
46
- }
47
- })
48
- );
49
- }
50
- function trimStartOfStream() {
51
- let isStreamStart = true;
52
- return (text) => {
53
- if (isStreamStart) {
54
- text = text.trimStart();
55
- if (text) isStreamStart = false;
56
- }
57
- return text;
58
- };
59
- }
60
- export {
61
- toUIMessageStream
62
- };
63
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/llamaindex-adapter.ts","../src/stream-callbacks.ts"],"sourcesContent":["import { UIMessageChunk } from 'ai';\nimport { convertAsyncIteratorToReadableStream } from 'ai/internal';\nimport {\n createCallbacksTransformer,\n StreamCallbacks,\n} from './stream-callbacks';\n\ntype EngineResponse = {\n delta: string;\n};\n\nexport function toUIMessageStream(\n stream: AsyncIterable<EngineResponse>,\n callbacks?: StreamCallbacks,\n) {\n const trimStart = trimStartOfStream();\n\n return convertAsyncIteratorToReadableStream(stream[Symbol.asyncIterator]())\n .pipeThrough(\n new TransformStream({\n async transform(message, controller): Promise<void> {\n controller.enqueue(trimStart(message.delta));\n },\n }),\n )\n .pipeThrough(createCallbacksTransformer(callbacks))\n .pipeThrough(\n new TransformStream<string, UIMessageChunk>({\n start: async controller => {\n controller.enqueue({ type: 'text-start', id: '1' });\n },\n transform: async (chunk, controller) => {\n controller.enqueue({ type: 'text-delta', delta: chunk, id: '1' });\n },\n flush: async controller => {\n controller.enqueue({ type: 'text-end', id: '1' });\n },\n }),\n );\n}\n\nfunction trimStartOfStream(): (text: string) => string {\n let isStreamStart = true;\n\n return (text: string): string => {\n if (isStreamStart) {\n text = text.trimStart();\n if (text) isStreamStart = false;\n }\n return text;\n };\n}\n","/**\n * Configuration options and helper callback methods for stream lifecycle events.\n */\nexport interface StreamCallbacks {\n /** `onStart`: Called once when the stream is initialized. */\n onStart?: () => Promise<void> | void;\n\n /** `onFinal`: Called once when the stream is closed with the final completion message. */\n onFinal?: (completion: string) => Promise<void> | void;\n\n /** `onToken`: Called for each tokenized message. */\n onToken?: (token: string) => Promise<void> | void;\n\n /** `onText`: Called for each text chunk. */\n onText?: (text: string) => Promise<void> | void;\n}\n\n/**\n * Creates a transform stream that encodes input messages and invokes optional callback functions.\n * The transform stream uses the provided callbacks to execute custom logic at different stages of the stream's lifecycle.\n * - `onStart`: Called once when the stream is initialized.\n * - `onToken`: Called for each tokenized message.\n * - `onFinal`: Called once when the stream is closed with the final completion message.\n *\n * This function is useful when you want to process a stream of messages and perform specific actions during the stream's lifecycle.\n *\n * @param {StreamCallbacks} [callbacks] - An object containing the callback functions.\n * @return {TransformStream<string, Uint8Array>} A transform stream that encodes input messages as Uint8Array and allows the execution of custom logic through callbacks.\n *\n * @example\n * const callbacks = {\n * onStart: async () => console.log('Stream started'),\n * onToken: async (token) => console.log(`Token: ${token}`),\n * onFinal: async () => data.close()\n * };\n * const transformer = createCallbacksTransformer(callbacks);\n */\nexport function createCallbacksTransformer(\n callbacks: StreamCallbacks | undefined = {},\n): TransformStream<string, string> {\n let aggregatedResponse = '';\n\n return new TransformStream({\n async start(): Promise<void> {\n if (callbacks.onStart) await callbacks.onStart();\n },\n\n async transform(message, controller): Promise<void> {\n controller.enqueue(message);\n\n aggregatedResponse += message;\n\n if (callbacks.onToken) await callbacks.onToken(message);\n if (callbacks.onText && typeof message === 'string') {\n await callbacks.onText(message);\n }\n },\n\n async flush(): Promise<void> {\n if (callbacks.onFinal) {\n await callbacks.onFinal(aggregatedResponse);\n }\n },\n });\n}\n"],"mappings":";AACA,SAAS,4CAA4C;;;ACoC9C,SAAS,2BACd,YAAyC,CAAC,GACT;AACjC,MAAI,qBAAqB;AAEzB,SAAO,IAAI,gBAAgB;AAAA,IACzB,MAAM,QAAuB;AAC3B,UAAI,UAAU,QAAS,OAAM,UAAU,QAAQ;AAAA,IACjD;AAAA,IAEA,MAAM,UAAU,SAAS,YAA2B;AAClD,iBAAW,QAAQ,OAAO;AAE1B,4BAAsB;AAEtB,UAAI,UAAU,QAAS,OAAM,UAAU,QAAQ,OAAO;AACtD,UAAI,UAAU,UAAU,OAAO,YAAY,UAAU;AACnD,cAAM,UAAU,OAAO,OAAO;AAAA,MAChC;AAAA,IACF;AAAA,IAEA,MAAM,QAAuB;AAC3B,UAAI,UAAU,SAAS;AACrB,cAAM,UAAU,QAAQ,kBAAkB;AAAA,MAC5C;AAAA,IACF;AAAA,EACF,CAAC;AACH;;;ADrDO,SAAS,kBACd,QACA,WACA;AACA,QAAM,YAAY,kBAAkB;AAEpC,SAAO,qCAAqC,OAAO,OAAO,aAAa,EAAE,CAAC,EACvE;AAAA,IACC,IAAI,gBAAgB;AAAA,MAClB,MAAM,UAAU,SAAS,YAA2B;AAClD,mBAAW,QAAQ,UAAU,QAAQ,KAAK,CAAC;AAAA,MAC7C;AAAA,IACF,CAAC;AAAA,EACH,EACC,YAAY,2BAA2B,SAAS,CAAC,EACjD;AAAA,IACC,IAAI,gBAAwC;AAAA,MAC1C,OAAO,OAAM,eAAc;AACzB,mBAAW,QAAQ,EAAE,MAAM,cAAc,IAAI,IAAI,CAAC;AAAA,MACpD;AAAA,MACA,WAAW,OAAO,OAAO,eAAe;AACtC,mBAAW,QAAQ,EAAE,MAAM,cAAc,OAAO,OAAO,IAAI,IAAI,CAAC;AAAA,MAClE;AAAA,MACA,OAAO,OAAM,eAAc;AACzB,mBAAW,QAAQ,EAAE,MAAM,YAAY,IAAI,IAAI,CAAC;AAAA,MAClD;AAAA,IACF,CAAC;AAAA,EACH;AACJ;AAEA,SAAS,oBAA8C;AACrD,MAAI,gBAAgB;AAEpB,SAAO,CAAC,SAAyB;AAC/B,QAAI,eAAe;AACjB,aAAO,KAAK,UAAU;AACtB,UAAI,KAAM,iBAAgB;AAAA,IAC5B;AACA,WAAO;AAAA,EACT;AACF;","names":[]}