@agentick/core 0.12.1 → 0.12.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"com-state.js","sourceRoot":"","sources":["../../src/hooks/com-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"com-state.js","sourceRoot":"","sources":["../../src/hooks/com-state.ts"],"names":[],"mappings":"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"}
@@ -293,6 +293,8 @@ export interface AdapterOptions<TProviderInput, TProviderOutput, TChunk> {
293
293
  inputTokens: number;
294
294
  outputTokens: number;
295
295
  totalTokens: number;
296
+ reasoningTokens?: number;
297
+ cachedInputTokens?: number;
296
298
  };
297
299
  stopReason: string;
298
300
  model: string;
@@ -356,7 +358,205 @@ export interface AdapterOptions<TProviderInput, TProviderOutput, TChunk> {
356
358
  * This allows a single adapter to support both text generation and embedding.
357
359
  */
358
360
  embed?: (texts: string[], options?: EmbedOptions) => Promise<EmbedResult>;
361
+ /**
362
+ * Custom blocks to intercept from the model's text output.
363
+ *
364
+ * Keys are semantic names used in application code. Each definition
365
+ * specifies what XML tag to intercept and how to handle the block.
366
+ *
367
+ * Internally creates a StreamTagParser + CustomBlockTransform pipeline,
368
+ * composed before any user-provided deltaTransform.
369
+ *
370
+ * @example
371
+ * ```typescript
372
+ * createAdapter({
373
+ * customBlocks: {
374
+ * interpretation: {
375
+ * transform(block) {
376
+ * return [{ type: "text", delta: `[${block.content}]` }];
377
+ * },
378
+ * },
379
+ * done: { transform() { return []; } },
380
+ * "debug-info": {},
381
+ * },
382
+ * });
383
+ * ```
384
+ */
385
+ customBlocks?: Record<string, CustomBlockDefinition>;
386
+ /**
387
+ * Adapter-internal delta transform(s), applied FIRST in the pipeline.
388
+ *
389
+ * Runs before custom blocks and before the user's deltaTransform. Use for
390
+ * provider-specific stream cleanup (e.g., ThinkTagParser strips `<think>`
391
+ * tags before custom blocks see the text).
392
+ *
393
+ * Pipeline order: adapterTransform → customBlocks → deltaTransform
394
+ *
395
+ * Accepts a single transform, an array, or a factory function.
396
+ */
397
+ adapterTransform?: DeltaTransformInput;
398
+ /**
399
+ * User-facing delta transform applied after custom blocks, before accumulation.
400
+ *
401
+ * Runs AFTER adapter transforms and custom blocks extraction. Use for
402
+ * arbitrary stream manipulation (markdown buffering, content rewriting, etc.).
403
+ *
404
+ * Accepts a single transform, an array, or a factory function that returns
405
+ * a fresh transform per stream call. Use a factory for stateful transforms
406
+ * (parsers with buffers) so each stream gets clean state.
407
+ *
408
+ * @example
409
+ * ```typescript
410
+ * // Stateless transform — single instance is fine
411
+ * createAdapter({ ...options, deltaTransform: myStatelessTransform });
412
+ *
413
+ * // Stateful transform — factory ensures fresh state per stream
414
+ * createAdapter({ ...options, deltaTransform: () => new ThinkTagParser() });
415
+ *
416
+ * // Pipeline
417
+ * createAdapter({
418
+ * ...options,
419
+ * deltaTransform: [transform1, transform2],
420
+ * });
421
+ * ```
422
+ */
423
+ deltaTransform?: DeltaTransformInput;
424
+ }
425
+ /**
426
+ * A stateful transform that processes AdapterDeltas in the streaming pipeline.
427
+ * Sits between mapChunk output and StreamAccumulator input.
428
+ *
429
+ * Transforms can be composed into pipelines via {@link composeDeltaTransforms}.
430
+ */
431
+ export interface DeltaTransform {
432
+ /** Process a delta, returning zero or more transformed deltas. */
433
+ process(delta: AdapterDelta): AdapterDelta[];
434
+ /** Flush any buffered content at stream end. */
435
+ flush(): AdapterDelta[];
359
436
  }
437
+ /** Factory that creates a fresh DeltaTransform per stream call. */
438
+ export type DeltaTransformFactory = () => DeltaTransform;
439
+ /** Accepted forms for the deltaTransform adapter option. */
440
+ export type DeltaTransformInput = DeltaTransform | DeltaTransformFactory | DeltaTransform[];
441
+ /**
442
+ * Input passed to a custom block's transform function.
443
+ */
444
+ export interface CustomBlockInput {
445
+ tag: string;
446
+ content: string;
447
+ attrs: Record<string, string>;
448
+ selfClosing?: boolean;
449
+ }
450
+ /**
451
+ * Definition for a custom block type.
452
+ *
453
+ * Custom blocks are XML-like tags in the model's text output that get
454
+ * intercepted, stripped from text, and handled by the application.
455
+ *
456
+ * @example
457
+ * ```typescript
458
+ * createAdapter({
459
+ * customBlocks: {
460
+ * // Passthrough — accumulate as CustomContentBlock
461
+ * citation: {},
462
+ *
463
+ * // Transform — rewrite into a text block
464
+ * interpretation: {
465
+ * transform(block) {
466
+ * return [{ type: "text", delta: `[${block.content}]` }];
467
+ * },
468
+ * },
469
+ *
470
+ * // Suppress — consume as side effect only
471
+ * done: {
472
+ * transform() { setDone(true); return []; },
473
+ * },
474
+ *
475
+ * // Override XML tag name
476
+ * debugInfo: {
477
+ * tag: "debug-info", // intercepts <debug-info>, key is "debugInfo"
478
+ * },
479
+ * },
480
+ * });
481
+ * ```
482
+ */
483
+ export interface CustomBlockDefinition {
484
+ /**
485
+ * XML tag to intercept in the text stream.
486
+ * Defaults to the config key.
487
+ */
488
+ tag?: string;
489
+ /**
490
+ * Short description of what this block represents.
491
+ * Appears in the auto-generated tag listing in the system prompt.
492
+ *
493
+ * When provided (alone or with `instructions`), the adapter automatically
494
+ * appends block documentation to the system prompt.
495
+ *
496
+ * @example
497
+ * ```typescript
498
+ * customBlocks: {
499
+ * citation: {
500
+ * description: "A quoted passage from a source.",
501
+ * },
502
+ * }
503
+ * ```
504
+ */
505
+ description?: string;
506
+ /**
507
+ * Detailed usage instructions for the model.
508
+ * Appended after the description in the system prompt.
509
+ * Use for elaboration on when to use the block, constraints,
510
+ * expected attributes, or examples.
511
+ *
512
+ * @example
513
+ * ```typescript
514
+ * customBlocks: {
515
+ * interpretation: {
516
+ * description: "Analytical insight derived from evidence.",
517
+ * instructions: "Use when synthesizing information or drawing conclusions from multiple sources. Do not use for direct observations.",
518
+ * },
519
+ * done: {
520
+ * description: "Signals task completion.",
521
+ * instructions: "Output <done/> only when the task is fully complete and no further action is needed.",
522
+ * transform() { return []; },
523
+ * },
524
+ * }
525
+ * ```
526
+ */
527
+ instructions?: string;
528
+ /**
529
+ * Transform the complete block before it enters the content array.
530
+ *
531
+ * - Return `void` → passthrough as CustomContentBlock (default)
532
+ * - Return `AdapterDelta[]` → emit these instead (`[]` suppresses the block)
533
+ */
534
+ transform?(block: CustomBlockInput): AdapterDelta[] | void;
535
+ /**
536
+ * Called when the opening tag is found, before content arrives.
537
+ * Side-effect only — does not affect output.
538
+ */
539
+ onStart?(attrs: Record<string, string>): void;
540
+ }
541
+ /**
542
+ * Compose multiple DeltaTransforms into a single pipeline.
543
+ *
544
+ * Each transform's output feeds the next transform's input.
545
+ * On flush, each transform's buffered output cascades through
546
+ * subsequent transforms before they flush their own state.
547
+ *
548
+ * @example
549
+ * ```typescript
550
+ * const pipeline = composeDeltaTransforms(
551
+ * thinkTagParser, // strips <think> tags, emits reasoning
552
+ * customTagParser, // strips app-specific tags, emits custom blocks
553
+ * markdownBufferer, // coalesces text into render-friendly chunks
554
+ * );
555
+ *
556
+ * createAdapter({ ...opts, deltaTransform: pipeline });
557
+ * ```
558
+ */
559
+ export declare function composeDeltaTransforms(...transforms: DeltaTransform[]): DeltaTransform;
360
560
  /**
361
561
  * Declarative options using ChunkMapping instead of mapChunk function.
362
562
  */
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/model/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/model/adapter.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,7 @@ import { createEngineProcedure } from "../procedure/index.js";
52
52
  import { StreamAccumulator, createChunkMapper, } from "./stream-accumulator.js";
53
53
  import { fromEngineState, toEngineState } from "./utils/language-model.js";
54
54
  import { Model } from "../jsx/components/model.js";
55
+ import { StreamTagParser } from "./stream-tag-parser.js";
55
56
  // ============================================================================
56
57
  // Re-exports for adapter convenience
57
58
  // ============================================================================
@@ -186,6 +187,160 @@ export function extractAdapterOptions(libraryKey, providerKey, input, defaults)
186
187
  },
187
188
  };
188
189
  }
190
+ /**
191
+ * DeltaTransform that applies per-tag transform functions from CustomBlockDefinitions.
192
+ * Intercepts `custom_block` deltas, runs the tag's transform if defined,
193
+ * and remaps the tag from XML name to semantic config key.
194
+ */
195
+ class CustomBlockTransform {
196
+ defs;
197
+ constructor(config) {
198
+ this.defs = new Map();
199
+ for (const [key, def] of Object.entries(config)) {
200
+ const xmlTag = def.tag ?? key;
201
+ this.defs.set(xmlTag, { key, def });
202
+ }
203
+ }
204
+ process(delta) {
205
+ if (delta.type !== "custom_block")
206
+ return [delta];
207
+ const entry = this.defs.get(delta.tag);
208
+ if (!entry)
209
+ return [delta];
210
+ const { key, def } = entry;
211
+ // Remap tag from XML name to semantic config key
212
+ const block = {
213
+ tag: key,
214
+ content: delta.content,
215
+ attrs: delta.attrs,
216
+ selfClosing: delta.selfClosing,
217
+ };
218
+ if (def.transform) {
219
+ const result = def.transform(block);
220
+ if (result !== undefined)
221
+ return result;
222
+ }
223
+ // Default: passthrough with remapped tag
224
+ return [
225
+ {
226
+ ...delta,
227
+ tag: key,
228
+ },
229
+ ];
230
+ }
231
+ flush() {
232
+ return [];
233
+ }
234
+ }
235
+ /**
236
+ * Build StreamTagParser handlers from CustomBlockDefinitions.
237
+ */
238
+ function buildTagHandlers(config) {
239
+ const handlers = {};
240
+ for (const [key, def] of Object.entries(config)) {
241
+ const xmlTag = def.tag ?? key;
242
+ handlers[xmlTag] = {
243
+ onStart: def.onStart,
244
+ };
245
+ }
246
+ return handlers;
247
+ }
248
+ /**
249
+ * Build system prompt text from custom block descriptions and instructions.
250
+ * Returns null if no blocks have description or instructions.
251
+ */
252
+ function buildCustomBlockInstructions(config) {
253
+ if (!config)
254
+ return null;
255
+ const lines = [];
256
+ for (const [key, def] of Object.entries(config)) {
257
+ if (!def.description && !def.instructions)
258
+ continue;
259
+ const xmlTag = def.tag ?? key;
260
+ if (def.description && def.instructions) {
261
+ lines.push(`- <${xmlTag}>: ${def.description}\n ${def.instructions}`);
262
+ }
263
+ else {
264
+ lines.push(`- <${xmlTag}>: ${def.description ?? def.instructions}`);
265
+ }
266
+ }
267
+ if (lines.length === 0)
268
+ return null;
269
+ return `You can use the following XML tags in your output:\n${lines.join("\n")}`;
270
+ }
271
+ /**
272
+ * Inject custom block instructions into the first system message.
273
+ * If no system message exists, prepend one. System prompt is always first.
274
+ * Mutates modelInput.messages in place.
275
+ */
276
+ function injectCustomBlockInstructions(modelInput, instructions) {
277
+ const instructionBlock = { type: "text", text: instructions };
278
+ // Find the first system message
279
+ for (let i = 0; i < modelInput.messages.length; i++) {
280
+ if (modelInput.messages[i].role === "system") {
281
+ modelInput.messages[i] = {
282
+ ...modelInput.messages[i],
283
+ content: [...modelInput.messages[i].content, instructionBlock],
284
+ };
285
+ return;
286
+ }
287
+ }
288
+ // No system message — prepend one
289
+ modelInput.messages.unshift({
290
+ role: "system",
291
+ content: [instructionBlock],
292
+ });
293
+ }
294
+ /**
295
+ * Compose multiple DeltaTransforms into a single pipeline.
296
+ *
297
+ * Each transform's output feeds the next transform's input.
298
+ * On flush, each transform's buffered output cascades through
299
+ * subsequent transforms before they flush their own state.
300
+ *
301
+ * @example
302
+ * ```typescript
303
+ * const pipeline = composeDeltaTransforms(
304
+ * thinkTagParser, // strips <think> tags, emits reasoning
305
+ * customTagParser, // strips app-specific tags, emits custom blocks
306
+ * markdownBufferer, // coalesces text into render-friendly chunks
307
+ * );
308
+ *
309
+ * createAdapter({ ...opts, deltaTransform: pipeline });
310
+ * ```
311
+ */
312
+ export function composeDeltaTransforms(...transforms) {
313
+ if (transforms.length === 0) {
314
+ return { process: (d) => [d], flush: () => [] };
315
+ }
316
+ if (transforms.length === 1)
317
+ return transforms[0];
318
+ return {
319
+ process(delta) {
320
+ let deltas = [delta];
321
+ for (const t of transforms) {
322
+ const next = [];
323
+ for (const d of deltas)
324
+ next.push(...t.process(d));
325
+ deltas = next;
326
+ }
327
+ return deltas;
328
+ },
329
+ flush() {
330
+ let pending = [];
331
+ for (const t of transforms) {
332
+ // Feed pending output from upstream flushes through this transform
333
+ const processed = [];
334
+ for (const d of pending)
335
+ processed.push(...t.process(d));
336
+ // Then flush this transform's own buffered state
337
+ const flushed = t.flush();
338
+ pending = [...processed, ...flushed];
339
+ }
340
+ return pending;
341
+ },
342
+ };
343
+ }
189
344
  // ============================================================================
190
345
  // Factory Functions
191
346
  // ============================================================================
@@ -277,7 +432,41 @@ function createAdapterEventBase() {
277
432
  * - For direct calls: `await model.generate(input)`
278
433
  */
279
434
  export function createAdapter(options) {
280
- const { metadata, prepareInput, mapChunk, execute, executeStream, processOutput, extractMetadata, reconstructRaw, onMount: adapterOnMount, onUnmount: adapterOnUnmount, } = options;
435
+ const { metadata, prepareInput, mapChunk, execute, executeStream, processOutput, extractMetadata, reconstructRaw, adapterTransform: rawAdapterTransform, deltaTransform: rawDeltaTransform, customBlocks: customBlockConfig, onMount: adapterOnMount, onUnmount: adapterOnUnmount, } = options;
436
+ // Build a fresh delta transform pipeline per stream call.
437
+ // Pipeline order: adapterTransform → customBlocks → deltaTransform
438
+ // Transforms like StreamTagParser are stateful (buffers, mode) and must not
439
+ // be shared across streams. Factory ensures clean state each time.
440
+ const hasAdapterTransform = !!rawAdapterTransform;
441
+ const hasCustomBlocks = customBlockConfig && Object.keys(customBlockConfig).length > 0;
442
+ const hasDeltaTransform = !!rawDeltaTransform;
443
+ function isDeltaTransform(t) {
444
+ return typeof t === "object" && !Array.isArray(t) && "process" in t;
445
+ }
446
+ function resolveTransformInput(input) {
447
+ if (Array.isArray(input))
448
+ return input;
449
+ if (isDeltaTransform(input))
450
+ return [input];
451
+ return [input()]; // factory
452
+ }
453
+ function createDeltaTransform() {
454
+ const transforms = [];
455
+ // 1. Adapter-internal transforms (provider-specific cleanup)
456
+ if (hasAdapterTransform) {
457
+ transforms.push(...resolveTransformInput(rawAdapterTransform));
458
+ }
459
+ // 2. Custom blocks extraction (StreamTagParser + CustomBlockTransform)
460
+ if (hasCustomBlocks) {
461
+ transforms.push(new StreamTagParser({ tags: buildTagHandlers(customBlockConfig) }));
462
+ transforms.push(new CustomBlockTransform(customBlockConfig));
463
+ }
464
+ // 3. User-provided delta transforms
465
+ if (hasDeltaTransform) {
466
+ transforms.push(...resolveTransformInput(rawDeltaTransform));
467
+ }
468
+ return transforms.length > 0 ? composeDeltaTransforms(...transforms) : undefined;
469
+ }
281
470
  // Create generate procedure
282
471
  const generate = createEngineProcedure({
283
472
  name: "model:generate",
@@ -330,7 +519,8 @@ export function createAdapter(options) {
330
519
  provider: metadata.provider,
331
520
  providerInput,
332
521
  };
333
- // Use StreamAccumulator for clean lifecycle management
522
+ // Fresh transform + accumulator per stream call
523
+ const deltaTransform = createDeltaTransform();
334
524
  const accumulator = new StreamAccumulator({ modelId: metadata.id });
335
525
  const rawChunks = [];
336
526
  for await (const chunk of executeStream(providerInput)) {
@@ -351,18 +541,30 @@ export function createAdapter(options) {
351
541
  }
352
542
  }
353
543
  }
354
- // Map chunk to AdapterDelta(s) and push to accumulator
544
+ // Map chunk to AdapterDelta(s), optionally transform, then push to accumulator
355
545
  const delta = mapChunk(chunk);
356
546
  if (delta) {
357
- const deltas = Array.isArray(delta) ? delta : [delta];
358
- for (const d of deltas) {
359
- const events = accumulator.push(d);
360
- for (const event of events) {
361
- yield event;
547
+ const rawDeltas = Array.isArray(delta) ? delta : [delta];
548
+ for (const d of rawDeltas) {
549
+ const transformed = deltaTransform ? deltaTransform.process(d) : [d];
550
+ for (const td of transformed) {
551
+ const events = accumulator.push(td);
552
+ for (const event of events) {
553
+ yield event;
554
+ }
362
555
  }
363
556
  }
364
557
  }
365
558
  }
559
+ // Flush delta transform at stream end (e.g., partial tag buffers)
560
+ if (deltaTransform) {
561
+ for (const d of deltaTransform.flush()) {
562
+ const events = accumulator.push(d);
563
+ for (const event of events) {
564
+ yield event;
565
+ }
566
+ }
567
+ }
366
568
  // Get final accumulated output
367
569
  const accumulatedOutput = accumulator.toModelOutput();
368
570
  // Reconstruct raw provider response if adapter provides reconstructRaw
@@ -416,10 +618,16 @@ export function createAdapter(options) {
416
618
  yield messageEvent;
417
619
  })
418
620
  : undefined;
621
+ // Build custom block instructions for system prompt injection
622
+ const customBlockInstructions = buildCustomBlockInstructions(customBlockConfig);
419
623
  // Default fromEngineState using model metadata for transformation config
420
624
  const defaultFromEngineState = async (input) => {
421
625
  const modelInstance = { metadata };
422
- return fromEngineState(input, undefined, modelInstance);
626
+ const modelInput = (await fromEngineState(input, undefined, modelInstance));
627
+ if (customBlockInstructions) {
628
+ injectCustomBlockInstructions(modelInput, customBlockInstructions);
629
+ }
630
+ return modelInput;
423
631
  };
424
632
  // Build the EngineModel properties
425
633
  const engineModel = {
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/model/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/model/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EACL,iBAAiB,EAGjB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAQjC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAI3E,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAyB,MAAM,wBAAwB,CAAC;AAEhF,+EAA+E;AAC/E,qCAAqC;AACrC,+EAA+E;AAE/E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAqD5D,+EAA+E;AAC/E,4BAA4B;AAC5B,+EAA+E;AAE/E;;;GAGG;AACH,SAAS,SAAS,CAAmB,GAAG,OAA0B;IAChE,MAAM,MAAM,GAAG,EAAO,CAAC;IAEvB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAgB,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAE7B,IAAI,KAAK,KAAK,SAAS;gBAAE,SAAS;YAElC,IACE,OAAO,KAAK,KAAK,QAAQ;gBACzB,KAAK,KAAK,IAAI;gBACd,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBACrB,OAAO,QAAQ,KAAK,QAAQ;gBAC5B,QAAQ,KAAK,IAAI;gBACjB,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EACxB,CAAC;gBACD,4BAA4B;gBAC5B,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,QAAkB,EAAE,KAAe,CAAe,CAAC;YAC7E,CAAC;iBAAM,CAAC;gBACN,yCAAyC;gBACzC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,oBAAoB,CAClC,WAAmB,EACnB,eAA4B,EAC5B,oBAAgD,EAChD,cAAyC;IAEzC,qDAAqD;IACrD,MAAM,WAAW,GAAG,eAAe,IAAI,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAE5D,wEAAwE;IACxE,mFAAmF;IACnF,IAAI,mBAAmB,GAA4B,EAAE,CAAC;IACtD,IAAI,cAAc,EAAE,CAAC;QACnB,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;YACrD,MAAM,YAAY,GAAG,cAAc,CAAC,UAAU,CAAwC,CAAC;YACvF,MAAM,kBAAkB,GACtB,YAAY,EAAE,eACf,EAAE,CAAC,WAAW,CAAC,CAAC;YACjB,IAAI,kBAAkB,EAAE,CAAC;gBACvB,mBAAmB,GAAG,SAAS,CAC7B,mBAAmB,EACnB,kBAA6C,CAC9C,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC,WAAgB,EAAE,SAAc,EAAE,mBAAwB,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CACjC,UAAkB,EAClB,eAA4B,EAC5B,mBAA8C;IAE9C,MAAM,WAAW,GAAG,eAAe,IAAI,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAE1D,OAAO,SAAS,CAAC,WAAgB,EAAE,SAAc,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,qBAAqB,CAInC,UAAkB,EAClB,WAAmB,EACnB,KAAiB,EACjB,QAGC;IAcD,MAAM,OAAO,GAAG,mBAAmB,CACjC,UAAU,EACV,QAAQ,EAAE,eAAe,EACzB,KAAK,CAAC,cAAc,CACrB,CAAC;IAEF,MAAM,QAAQ,GAAG,oBAAoB,CACnC,WAAW,EACX,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,CAAC,eAAe,EACrB,KAAK,CAAC,cAAc,CACrB,CAAC;IAEF,OAAO;QACL,OAAO;QACP,QAAQ;QACR,QAAQ,EAAE;YACR,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB;KACF,CAAC;AACJ,CAAC;AA2YD;;;;GAIG;AACH,MAAM,oBAAoB;IACP,IAAI,CAA2D;IAEhF,YAAY,MAA6C;QACvD,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAChD,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,KAAmB;QACzB,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc;YAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAElD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAE3B,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;QAE3B,iDAAiD;QACjD,MAAM,KAAK,GAAqB;YAC9B,GAAG,EAAE,GAAG;YACR,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC;QAEF,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC;QAC1C,CAAC;QAED,yCAAyC;QACzC,OAAO;YACL;gBACE,GAAG,KAAK;gBACR,GAAG,EAAE,GAAG;aACT;SACF,CAAC;IACJ,CAAC;IAED,KAAK;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAED;;GAEG;AACH,SAAS,gBAAgB,CACvB,MAA6C;IAE7C,MAAM,QAAQ,GAAqC,EAAE,CAAC;IACtD,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;QAC9B,QAAQ,CAAC,MAAM,CAAC,GAAG;YACjB,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,4BAA4B,CACnC,MAAyD;IAEzD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,GAAG,CAAC,YAAY;YAAE,SAAS;QACpD,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;QAE9B,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,MAAM,MAAM,MAAM,GAAG,CAAC,WAAW,OAAO,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,MAAM,MAAM,MAAM,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,OAAO,uDAAuD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACnF,CAAC;AAED;;;;GAIG;AACH,SAAS,6BAA6B,CAAC,UAAsB,EAAE,YAAoB;IACjF,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAEvE,gCAAgC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpD,IAAK,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAa,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzD,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAa,GAAG;gBACpC,GAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAa;gBACtC,OAAO,EAAE,CAAC,GAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAa,CAAC,OAAO,EAAE,gBAAgB,CAAC;aAC5E,CAAC;YACF,OAAO;QACT,CAAC;IACH,CAAC;IAED,kCAAkC;IACjC,UAAU,CAAC,QAAsB,CAAC,OAAO,CAAC;QACzC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,gBAAgB,CAAC;KAC5B,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAG,UAA4B;IACpE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAClD,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IAElD,OAAO;QACL,OAAO,CAAC,KAAmB;YACzB,IAAI,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC;YACrB,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAmB,EAAE,CAAC;gBAChC,KAAK,MAAM,CAAC,IAAI,MAAM;oBAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,GAAG,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,KAAK;YACH,IAAI,OAAO,GAAmB,EAAE,CAAC;YACjC,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;gBAC3B,mEAAmE;gBACnE,MAAM,SAAS,GAAmB,EAAE,CAAC;gBACrC,KAAK,MAAM,CAAC,IAAI,OAAO;oBAAE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzD,iDAAiD;gBACjD,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;gBAC1B,OAAO,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC;AAgBD,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH;;GAEG;AACH,IAAI,qBAAqB,GAAG,CAAC,CAAC;AAE9B,SAAS,sBAAsB;IAC7B,OAAO,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO;QACL,EAAE,EAAE,sBAAsB,EAAE;QAC5B,QAAQ,EAAE,CAAC,EAAE,0DAA0D;QACvE,IAAI,EAAE,CAAC;QACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAgE;IAEhE,MAAM,EACJ,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,aAAa,EACb,aAAa,EACb,eAAe,EACf,cAAc,EACd,gBAAgB,EAAE,mBAAmB,EACrC,cAAc,EAAE,iBAAiB,EACjC,YAAY,EAAE,iBAAiB,EAC/B,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,gBAAgB,GAC5B,GAAG,OAAO,CAAC;IAEZ,0DAA0D;IAC1D,mEAAmE;IACnE,4EAA4E;IAC5E,mEAAmE;IACnE,MAAM,mBAAmB,GAAG,CAAC,CAAC,mBAAmB,CAAC;IAClD,MAAM,eAAe,GAAG,iBAAiB,IAAI,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACvF,MAAM,iBAAiB,GAAG,CAAC,CAAC,iBAAiB,CAAC;IAE9C,SAAS,gBAAgB,CAAC,CAAsB;QAC9C,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS,IAAI,CAAC,CAAC;IACtE,CAAC;IAED,SAAS,qBAAqB,CAAC,KAA0B;QACvD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACvC,IAAI,gBAAgB,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU;IAC9B,CAAC;IAED,SAAS,oBAAoB;QAC3B,MAAM,UAAU,GAAqB,EAAE,CAAC;QAExC,6DAA6D;QAC7D,IAAI,mBAAmB,EAAE,CAAC;YACxB,UAAU,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,mBAAoB,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,uEAAuE;QACvE,IAAI,eAAe,EAAE,CAAC;YACpB,UAAU,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,iBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC;YACrF,UAAU,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,iBAAkB,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,oCAAoC;QACpC,IAAI,iBAAiB,EAAE,CAAC;YACtB,UAAU,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,iBAAkB,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,CAAC;IAED,4BAA4B;IAC5B,MAAM,QAAQ,GAAG,qBAAqB,CACpC;QACE,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE;YACR,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,SAAS,EAAE,UAAU;SACtB;QACD,iBAAiB,EAAE,OAAO;QAC1B,aAAa,EAAE,OAAO;KACvB,EACD,KAAK,EAAE,KAAiB,EAAE,EAAE;QAC1B,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;QAEpD,6DAA6D;QAC7D,MAAM,MAAM,GAAgB,aAAa;YACvC,CAAC,CAAC,MAAM,aAAa,CAAC,cAAc,CAAC;YACrC,CAAC,CAAE;gBACC,KAAK,EAAE,QAAQ,CAAC,EAAE;gBAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE;gBAC3C,QAAQ,EAAE,EAAE;gBACZ,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;gBAC1D,UAAU,EAAE,aAAa;gBACzB,GAAG,EAAE,cAAc;aACJ,CAAC;QAEtB,sEAAsE;QACrE,MAAc,CAAC,cAAc,GAAG,aAAa,CAAC;QAC/C,OAAO,MAAM,CAAC;IAChB,CAAC,CACF,CAAC;IAEF,kDAAkD;IAClD,MAAM,MAAM,GAAG,aAAa;QAC1B,CAAC,CAAC,qBAAqB,CACnB;YACE,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,SAAS,EAAE,QAAQ;aACpB;YACD,aAAa,EAAE,KAAK,EAAE,4CAA4C;YAClE,iBAAiB,EAAE,OAAO;YAC1B,aAAa,EAAE,OAAO;SACvB,EACD,KAAK,SAAS,CAAC,EAAE,KAAiB;YAChC,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;YAEhD,wEAAwE;YACxE,+EAA+E;YAC/E,MAAM;gBACJ,GAAG,sBAAsB,EAAE;gBAC3B,IAAI,EAAE,kBAA2B;gBACjC,OAAO,EAAE,QAAQ,CAAC,EAAE;gBACpB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,aAAa;aACQ,CAAC;YAExB,gDAAgD;YAChD,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC;YAC9C,MAAM,WAAW,GAAG,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;YACpE,MAAM,SAAS,GAAa,EAAE,CAAC;YAE/B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;gBACvD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAEtB,oCAAoC;gBACpC,IAAI,eAAe,EAAE,CAAC;oBACpB,MAAM,eAAe,GAAG,eAAe,CAAC,KAAK,EAAE;wBAC7C,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE;wBAC3B,SAAS,EAAE,WAAW,CAAC,YAAY,EAAE;qBACtC,CAAC,CAAC;oBACH,IAAI,eAAe,EAAE,CAAC;wBACpB,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC;4BACtC,IAAI,EAAE,kBAAkB;4BACxB,QAAQ,EAAE,eAAe;yBAC1B,CAAC,CAAC;wBACH,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;4BACnC,MAAM,KAAK,CAAC;wBACd,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,+EAA+E;gBAC/E,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC9B,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACzD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;wBAC1B,MAAM,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACrE,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;4BAC7B,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACpC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCAC3B,MAAM,KAAK,CAAC;4BACd,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,kEAAkE;YAClE,IAAI,cAAc,EAAE,CAAC;gBACnB,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC;oBACvC,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC3B,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YAED,+BAA+B;YAC/B,MAAM,iBAAiB,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC;YAEtD,uEAAuE;YACvE,MAAM,WAAW,GAAG,cAAc;gBAChC,CAAC,CAAC,cAAc,CAAC;oBACb,IAAI,EAAE,iBAAiB,CAAC,GAAG,EAAE,IAAI,IAAI,EAAE;oBACvC,SAAS,EAAE,iBAAiB,CAAC,GAAG,EAAE,SAAS,IAAI,EAAE;oBACjD,SAAS,EAAE,iBAAiB,CAAC,SAAS,IAAI,EAAE;oBAC5C,KAAK,EAAE,iBAAiB,CAAC,KAAK;oBAC9B,UAAU,EAAE,iBAAiB,CAAC,UAAU;oBACxC,KAAK,EAAE,iBAAiB,CAAC,KAAK;oBAC9B,MAAM,EAAE,SAAS;iBAClB,CAAC;gBACJ,CAAC,CAAC,SAAS,CAAC;YAEd,8BAA8B;YAC9B,MAAM,OAAO,GAAmB,EAAE,CAAC;YACnC,IAAI,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC;gBACrC,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,SAAS;iBACtB,CAAC,CAAC;YACrB,CAAC;YACD,IAAI,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;gBAChC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACnE,CAAC;YACD,IAAI,iBAAiB,CAAC,SAAS,EAAE,CAAC;gBAChC,KAAK,MAAM,EAAE,IAAI,iBAAiB,CAAC,SAAS,EAAE,CAAC;oBAC7C,OAAO,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,EAAE,CAAC,EAAE;wBAChB,IAAI,EAAE,EAAE,CAAC,IAAI;wBACb,KAAK,EAAE,EAAE,CAAC,KAAK;qBACA,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;YAED,sDAAsD;YACtD,MAAM,YAAY,GAAqC;gBACrD,IAAI,EAAE,SAAS;gBACf,GAAG,sBAAsB,EAAE;gBAC3B,OAAO,EAAE;oBACP,IAAI,EAAE,WAAoB;oBAC1B,OAAO;iBACR;gBACD,UAAU,EAAE,iBAAiB,CAAC,UAAU;gBACxC,KAAK,EAAE,iBAAiB,CAAC,KAAK;gBAC9B,KAAK,EAAE,iBAAiB,CAAC,KAAK;gBAC9B,SAAS,EAAE,iBAAiB,CAAC,SAAS;gBACtC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACrC,GAAG,EAAE,WAAW;aACjB,CAAC;YAEF,MAAM,YAAY,CAAC;QACrB,CAAC,CACF;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,8DAA8D;IAC9D,MAAM,uBAAuB,GAAG,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;IAEhF,yEAAyE;IACzE,MAAM,sBAAsB,GAAG,KAAK,EAAE,KAAe,EAAuB,EAAE;QAC5E,MAAM,aAAa,GAAG,EAAE,QAAQ,EAAS,CAAC;QAC1C,MAAM,UAAU,GAAG,CAAC,MAAM,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC,CAAe,CAAC;QAE1F,IAAI,uBAAuB,EAAE,CAAC;YAC5B,6BAA6B,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;IAEF,mCAAmC;IACnC,MAAM,WAAW,GAAyC;QACxD,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,eAAe,EAAE,OAAO,CAAC,eAAe;YACtC,CAAC,CAAC,KAAK,EAAE,KAAe,EAAE,EAAE,CAAC,OAAO,CAAC,eAAgB,CAAC,KAAK,CAAC;YAC5D,CAAC,CAAC,sBAAsB;QAC1B,aAAa,EAAE,OAAO,CAAC,aAAa;YAClC,CAAC,CAAC,KAAK,EAAE,MAAmB,EAAE,EAAE,CAAC,OAAO,CAAC,aAAc,CAAC,MAAM,CAAC;YAC/D,CAAC,CAAC,CAAC,MAAmB,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC;QAClD,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC;IAEF,iDAAiD;IACjD,MAAM,cAAc,GAAG,SAAS,cAAc,CAAC,KAAsB;QACnE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK,CAAC;QAE9F,yDAAyD;QACzD,MAAM,OAAO,GAAG,YAAY,IAAI,cAAc,CAAC;QAC/C,MAAM,SAAS,GAAG,cAAc,IAAI,gBAAgB,CAAC;QAErD,OAAO,KAAK,CAAC,aAAa,CACxB,KAAK,EACL;YACE,KAAK,EAAE,WAAW;YAClB,OAAO;YACP,SAAS;YACT,GAAG,YAAY;SAChB,EACD,QAAQ,CACT,CAAC;IACJ,CAAC,CAAC;IAEF,sCAAsC;IACtC,cAAc,CAAC,WAAW,GAAG,SAAS,QAAQ,CAAC,EAAE,GAAG,CAAC;IAErD,8DAA8D;IAC7D,cAAsB,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3C,cAAsB,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3C,cAAsB,CAAC,MAAM,GAAG,MAAM,CAAC;IACvC,cAAsB,CAAC,eAAe,GAAG,WAAW,CAAC,eAAe,CAAC;IACrE,cAAsB,CAAC,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;IAClE,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjB,cAAsB,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAChD,CAAC;IAED,OAAO,cAAuC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,wBAAwB,CAItC,OAAoE;IACpE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAC1C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAEjD,OAAO,aAAa,CAAC;QACnB,GAAG,IAAI;QACP,QAAQ;KACT,CAAC,CAAC;AACL,CAAC"}
@@ -51,5 +51,6 @@ export * from "./utils/index.js";
51
51
  export * from "./stream-accumulator.js";
52
52
  export * from "./adapter.js";
53
53
  export * from "./adapter-helpers.js";
54
+ export * from "./stream-tag-parser.js";
54
55
  export * from "./embedding.js";
55
56
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AAGrC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AAGrC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,gBAAgB,CAAC"}
@@ -52,6 +52,8 @@ export * from "./utils/index.js";
52
52
  export * from "./stream-accumulator.js"; // AdapterDelta, StreamAccumulator
53
53
  export * from "./adapter.js"; // createAdapter factory
54
54
  export * from "./adapter-helpers.js"; // Composable helpers for adapters
55
+ // Stream tag parsing
56
+ export * from "./stream-tag-parser.js"; // StreamTagParser, StreamTagHandler
55
57
  // Embedding adapters
56
58
  export * from "./embedding.js";
57
59
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AAEjC,mBAAmB;AACnB,cAAc,yBAAyB,CAAC,CAAC,kCAAkC;AAC3E,cAAc,cAAc,CAAC,CAAC,wBAAwB;AACtD,cAAc,sBAAsB,CAAC,CAAC,kCAAkC;AAExE,qBAAqB;AACrB,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/model/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AAEjC,mBAAmB;AACnB,cAAc,yBAAyB,CAAC,CAAC,kCAAkC;AAC3E,cAAc,cAAc,CAAC,CAAC,wBAAwB;AACtD,cAAc,sBAAsB,CAAC,CAAC,kCAAkC;AAExE,qBAAqB;AACrB,cAAc,wBAAwB,CAAC,CAAC,oCAAoC;AAE5E,qBAAqB;AACrB,cAAc,gBAAgB,CAAC"}
@@ -103,6 +103,23 @@ export type AdapterDelta = {
103
103
  } | {
104
104
  type: "reasoning_metadata";
105
105
  metadata: ContentMetadata;
106
+ } | {
107
+ type: "custom_block_start";
108
+ tag: string;
109
+ attrs: Record<string, string>;
110
+ } | {
111
+ type: "custom_block_delta";
112
+ tag: string;
113
+ delta: string;
114
+ } | {
115
+ type: "custom_block_end";
116
+ tag: string;
117
+ } | {
118
+ type: "custom_block";
119
+ tag: string;
120
+ content: string;
121
+ attrs: Record<string, string>;
122
+ selfClosing?: boolean;
106
123
  };
107
124
  /**
108
125
  * Options for StreamAccumulator.
@@ -150,6 +167,7 @@ export declare class StreamAccumulator {
150
167
  private modelId?;
151
168
  private contentMetadata?;
152
169
  private reasoningMetadata?;
170
+ private orderedContent;
153
171
  private messageStarted;
154
172
  private messageStartedAt?;
155
173
  private textStarted;