@ai-sdk-tool/parser 4.1.0 → 4.1.1

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/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _ai_sdk_provider from '@ai-sdk/provider';
2
- import { LanguageModelV3FunctionTool, LanguageModelV3StreamPart, LanguageModelV3ToolCall, LanguageModelV3Content, LanguageModelV3ProviderTool, JSONSchema7, LanguageModelV3, LanguageModelV3TextPart, LanguageModelV3FilePart, LanguageModelV3Middleware, LanguageModelV3Prompt, SharedV3ProviderOptions } from '@ai-sdk/provider';
2
+ import { LanguageModelV3FunctionTool, LanguageModelV3StreamPart, LanguageModelV3ToolCall, LanguageModelV3Content, LanguageModelV3ProviderTool, JSONSchema7, SharedV3ProviderOptions, LanguageModelV3, LanguageModelV3TextPart, LanguageModelV3FilePart, LanguageModelV3Middleware, LanguageModelV3Prompt } from '@ai-sdk/provider';
3
3
  import { ToolResultPart } from '@ai-sdk/provider-utils';
4
4
  export { ParseOptions, parse, stringify, transform } from './rjson.cjs';
5
5
 
@@ -37,7 +37,7 @@ interface TCMProtocol {
37
37
  }
38
38
  type TCMCoreProtocol = TCMProtocol;
39
39
  declare function isProtocolFactory(protocol: TCMProtocol | (() => TCMProtocol)): protocol is () => TCMProtocol;
40
- declare function isTCMProtocolFactory(protocol: TCMProtocol | (() => TCMProtocol)): protocol is () => TCMProtocol;
40
+ declare const isTCMProtocolFactory: typeof isProtocolFactory;
41
41
 
42
42
  interface HermesProtocolOptions {
43
43
  toolCallEnd?: string;
@@ -106,12 +106,11 @@ declare function createDynamicIfThenElseSchema(tools: (LanguageModelV3FunctionTo
106
106
  */
107
107
  declare function getPotentialStartIndex(text: string, searchedText: string): number | null;
108
108
 
109
- type OnErrorFn$1 = (message: string, metadata?: Record<string, unknown>) => void;
109
+ type OnErrorFn = (message: string, metadata?: Record<string, unknown>) => void;
110
110
  declare function extractOnErrorOption(providerOptions?: unknown): {
111
- onError?: OnErrorFn$1;
111
+ onError?: OnErrorFn;
112
112
  } | undefined;
113
113
 
114
- type OnErrorFn = (message: string, metadata?: Record<string, unknown>) => void;
115
114
  interface ToolCallMiddlewareProviderOptions {
116
115
  toolCallMiddleware?: {
117
116
  debugSummary?: {
@@ -144,10 +143,13 @@ declare function encodeOriginalTools(tools: LanguageModelV3FunctionTool[] | unde
144
143
  inputSchema: string;
145
144
  }>;
146
145
  declare function decodeOriginalTools(originalTools: EncodedOriginalTool[] | undefined, options?: DecodeOriginalToolsOptions): LanguageModelV3FunctionTool[];
146
+ declare function decodeOriginalToolsFromProviderOptions(providerOptions: ToolCallMiddlewareProviderOptions | undefined, options?: DecodeOriginalToolsOptions): LanguageModelV3FunctionTool[];
147
147
  declare function extractToolNamesFromOriginalTools(originalTools: Array<{
148
148
  name: string;
149
149
  inputSchema: string;
150
150
  }> | undefined): string[];
151
+ declare function getToolCallMiddlewareOptions(providerOptions?: unknown): Record<string, unknown>;
152
+ declare function mergeToolCallMiddlewareOptions(providerOptions: unknown, overrides: Record<string, unknown>): SharedV3ProviderOptions;
151
153
  declare function isToolChoiceActive(params: {
152
154
  providerOptions?: {
153
155
  toolCallMiddleware?: {
@@ -248,40 +250,7 @@ declare function transformParams({ params, protocol, toolSystemPromptTemplate, t
248
250
  prompt: LanguageModelV3Prompt;
249
251
  tools: never[];
250
252
  toolChoice: undefined;
251
- providerOptions: SharedV3ProviderOptions;
252
- } | {
253
- responseFormat: {
254
- type: "json";
255
- schema: JSONSchema7;
256
- name: string;
257
- description: string | undefined;
258
- };
259
- providerOptions: {
260
- toolCallMiddleware: {
261
- toolChoice?: {
262
- type: string;
263
- toolName?: string;
264
- } | undefined;
265
- };
266
- };
267
- prompt: LanguageModelV3Prompt;
268
- tools: never[];
269
- toolChoice: undefined;
270
- } | {
271
- responseFormat: {
272
- type: "json";
273
- schema: JSONSchema7;
274
- };
275
- providerOptions: {
276
- toolCallMiddleware: {
277
- toolChoice: {
278
- type: "required";
279
- };
280
- };
281
- };
282
- prompt: LanguageModelV3Prompt;
283
- tools: never[];
284
- toolChoice: undefined;
253
+ providerOptions: _ai_sdk_provider.SharedV3ProviderOptions;
285
254
  };
286
255
 
287
- export { type DebugLevel, type MorphXmlProtocolOptions, type OnErrorFn$1 as OnErrorFn, type ParserOptions, Qwen3CoderToolParser, type TCMCoreProtocol, type TCMProtocol, type ToolCallMiddlewareProviderOptions, type YamlXmlProtocolOptions, createDynamicIfThenElseSchema, createToolMiddleware, decodeOriginalTools, encodeOriginalTools, escapeRegExp, extractOnErrorOption, extractToolNamesFromOriginalTools, getDebugLevel, getPotentialStartIndex, hasInputProperty, hermesProtocol, hermesToolMiddleware, isProtocolFactory, isTCMProtocolFactory, isToolChoiceActive, isToolResultPart, logParseFailure, logParsedChunk, logParsedSummary, logRawChunk, morphXmlProtocol, morphXmlToolMiddleware, originalToolsSchema, qwen3CoderProtocol, qwen3CoderToolMiddleware, toolChoiceStream, transformParams, uiTarsXmlProtocol, wrapGenerate, wrapStream, yamlXmlProtocol, yamlXmlToolMiddleware };
256
+ export { type DebugLevel, type MorphXmlProtocolOptions, type OnErrorFn, type ParserOptions, Qwen3CoderToolParser, type TCMCoreProtocol, type TCMProtocol, type ToolCallMiddlewareProviderOptions, type YamlXmlProtocolOptions, createDynamicIfThenElseSchema, createToolMiddleware, decodeOriginalTools, decodeOriginalToolsFromProviderOptions, encodeOriginalTools, escapeRegExp, extractOnErrorOption, extractToolNamesFromOriginalTools, getDebugLevel, getPotentialStartIndex, getToolCallMiddlewareOptions, hasInputProperty, hermesProtocol, hermesToolMiddleware, isProtocolFactory, isTCMProtocolFactory, isToolChoiceActive, isToolResultPart, logParseFailure, logParsedChunk, logParsedSummary, logRawChunk, mergeToolCallMiddlewareOptions, morphXmlProtocol, morphXmlToolMiddleware, originalToolsSchema, qwen3CoderProtocol, qwen3CoderToolMiddleware, toolChoiceStream, transformParams, uiTarsXmlProtocol, wrapGenerate, wrapStream, yamlXmlProtocol, yamlXmlToolMiddleware };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _ai_sdk_provider from '@ai-sdk/provider';
2
- import { LanguageModelV3FunctionTool, LanguageModelV3StreamPart, LanguageModelV3ToolCall, LanguageModelV3Content, LanguageModelV3ProviderTool, JSONSchema7, LanguageModelV3, LanguageModelV3TextPart, LanguageModelV3FilePart, LanguageModelV3Middleware, LanguageModelV3Prompt, SharedV3ProviderOptions } from '@ai-sdk/provider';
2
+ import { LanguageModelV3FunctionTool, LanguageModelV3StreamPart, LanguageModelV3ToolCall, LanguageModelV3Content, LanguageModelV3ProviderTool, JSONSchema7, SharedV3ProviderOptions, LanguageModelV3, LanguageModelV3TextPart, LanguageModelV3FilePart, LanguageModelV3Middleware, LanguageModelV3Prompt } from '@ai-sdk/provider';
3
3
  import { ToolResultPart } from '@ai-sdk/provider-utils';
4
4
  export { ParseOptions, parse, stringify, transform } from './rjson.js';
5
5
 
@@ -37,7 +37,7 @@ interface TCMProtocol {
37
37
  }
38
38
  type TCMCoreProtocol = TCMProtocol;
39
39
  declare function isProtocolFactory(protocol: TCMProtocol | (() => TCMProtocol)): protocol is () => TCMProtocol;
40
- declare function isTCMProtocolFactory(protocol: TCMProtocol | (() => TCMProtocol)): protocol is () => TCMProtocol;
40
+ declare const isTCMProtocolFactory: typeof isProtocolFactory;
41
41
 
42
42
  interface HermesProtocolOptions {
43
43
  toolCallEnd?: string;
@@ -106,12 +106,11 @@ declare function createDynamicIfThenElseSchema(tools: (LanguageModelV3FunctionTo
106
106
  */
107
107
  declare function getPotentialStartIndex(text: string, searchedText: string): number | null;
108
108
 
109
- type OnErrorFn$1 = (message: string, metadata?: Record<string, unknown>) => void;
109
+ type OnErrorFn = (message: string, metadata?: Record<string, unknown>) => void;
110
110
  declare function extractOnErrorOption(providerOptions?: unknown): {
111
- onError?: OnErrorFn$1;
111
+ onError?: OnErrorFn;
112
112
  } | undefined;
113
113
 
114
- type OnErrorFn = (message: string, metadata?: Record<string, unknown>) => void;
115
114
  interface ToolCallMiddlewareProviderOptions {
116
115
  toolCallMiddleware?: {
117
116
  debugSummary?: {
@@ -144,10 +143,13 @@ declare function encodeOriginalTools(tools: LanguageModelV3FunctionTool[] | unde
144
143
  inputSchema: string;
145
144
  }>;
146
145
  declare function decodeOriginalTools(originalTools: EncodedOriginalTool[] | undefined, options?: DecodeOriginalToolsOptions): LanguageModelV3FunctionTool[];
146
+ declare function decodeOriginalToolsFromProviderOptions(providerOptions: ToolCallMiddlewareProviderOptions | undefined, options?: DecodeOriginalToolsOptions): LanguageModelV3FunctionTool[];
147
147
  declare function extractToolNamesFromOriginalTools(originalTools: Array<{
148
148
  name: string;
149
149
  inputSchema: string;
150
150
  }> | undefined): string[];
151
+ declare function getToolCallMiddlewareOptions(providerOptions?: unknown): Record<string, unknown>;
152
+ declare function mergeToolCallMiddlewareOptions(providerOptions: unknown, overrides: Record<string, unknown>): SharedV3ProviderOptions;
151
153
  declare function isToolChoiceActive(params: {
152
154
  providerOptions?: {
153
155
  toolCallMiddleware?: {
@@ -248,40 +250,7 @@ declare function transformParams({ params, protocol, toolSystemPromptTemplate, t
248
250
  prompt: LanguageModelV3Prompt;
249
251
  tools: never[];
250
252
  toolChoice: undefined;
251
- providerOptions: SharedV3ProviderOptions;
252
- } | {
253
- responseFormat: {
254
- type: "json";
255
- schema: JSONSchema7;
256
- name: string;
257
- description: string | undefined;
258
- };
259
- providerOptions: {
260
- toolCallMiddleware: {
261
- toolChoice?: {
262
- type: string;
263
- toolName?: string;
264
- } | undefined;
265
- };
266
- };
267
- prompt: LanguageModelV3Prompt;
268
- tools: never[];
269
- toolChoice: undefined;
270
- } | {
271
- responseFormat: {
272
- type: "json";
273
- schema: JSONSchema7;
274
- };
275
- providerOptions: {
276
- toolCallMiddleware: {
277
- toolChoice: {
278
- type: "required";
279
- };
280
- };
281
- };
282
- prompt: LanguageModelV3Prompt;
283
- tools: never[];
284
- toolChoice: undefined;
253
+ providerOptions: _ai_sdk_provider.SharedV3ProviderOptions;
285
254
  };
286
255
 
287
- export { type DebugLevel, type MorphXmlProtocolOptions, type OnErrorFn$1 as OnErrorFn, type ParserOptions, Qwen3CoderToolParser, type TCMCoreProtocol, type TCMProtocol, type ToolCallMiddlewareProviderOptions, type YamlXmlProtocolOptions, createDynamicIfThenElseSchema, createToolMiddleware, decodeOriginalTools, encodeOriginalTools, escapeRegExp, extractOnErrorOption, extractToolNamesFromOriginalTools, getDebugLevel, getPotentialStartIndex, hasInputProperty, hermesProtocol, hermesToolMiddleware, isProtocolFactory, isTCMProtocolFactory, isToolChoiceActive, isToolResultPart, logParseFailure, logParsedChunk, logParsedSummary, logRawChunk, morphXmlProtocol, morphXmlToolMiddleware, originalToolsSchema, qwen3CoderProtocol, qwen3CoderToolMiddleware, toolChoiceStream, transformParams, uiTarsXmlProtocol, wrapGenerate, wrapStream, yamlXmlProtocol, yamlXmlToolMiddleware };
256
+ export { type DebugLevel, type MorphXmlProtocolOptions, type OnErrorFn, type ParserOptions, Qwen3CoderToolParser, type TCMCoreProtocol, type TCMProtocol, type ToolCallMiddlewareProviderOptions, type YamlXmlProtocolOptions, createDynamicIfThenElseSchema, createToolMiddleware, decodeOriginalTools, decodeOriginalToolsFromProviderOptions, encodeOriginalTools, escapeRegExp, extractOnErrorOption, extractToolNamesFromOriginalTools, getDebugLevel, getPotentialStartIndex, getToolCallMiddlewareOptions, hasInputProperty, hermesProtocol, hermesToolMiddleware, isProtocolFactory, isTCMProtocolFactory, isToolChoiceActive, isToolResultPart, logParseFailure, logParsedChunk, logParsedSummary, logRawChunk, mergeToolCallMiddlewareOptions, morphXmlProtocol, morphXmlToolMiddleware, originalToolsSchema, qwen3CoderProtocol, qwen3CoderToolMiddleware, toolChoiceStream, transformParams, uiTarsXmlProtocol, wrapGenerate, wrapStream, yamlXmlProtocol, yamlXmlToolMiddleware };
package/dist/index.js CHANGED
@@ -3,11 +3,13 @@ import {
3
3
  createDynamicIfThenElseSchema,
4
4
  createToolMiddleware,
5
5
  decodeOriginalTools,
6
+ decodeOriginalToolsFromProviderOptions,
6
7
  encodeOriginalTools,
7
8
  extractOnErrorOption,
8
9
  extractToolNamesFromOriginalTools,
9
10
  getDebugLevel,
10
11
  getPotentialStartIndex,
12
+ getToolCallMiddlewareOptions,
11
13
  hasInputProperty,
12
14
  hermesProtocol,
13
15
  hermesToolMiddleware,
@@ -19,6 +21,7 @@ import {
19
21
  logParsedChunk,
20
22
  logParsedSummary,
21
23
  logRawChunk,
24
+ mergeToolCallMiddlewareOptions,
22
25
  morphXmlProtocol,
23
26
  morphXmlToolMiddleware,
24
27
  originalToolsSchema,
@@ -31,10 +34,10 @@ import {
31
34
  wrapStream,
32
35
  yamlXmlProtocol,
33
36
  yamlXmlToolMiddleware
34
- } from "./chunk-O6NWVXQD.js";
37
+ } from "./chunk-722D5BGD.js";
35
38
  import {
36
39
  escapeRegExp
37
- } from "./chunk-MHZC45AC.js";
40
+ } from "./chunk-D4YULTAO.js";
38
41
  import {
39
42
  parse,
40
43
  stringify,
@@ -46,12 +49,14 @@ export {
46
49
  createDynamicIfThenElseSchema,
47
50
  createToolMiddleware,
48
51
  decodeOriginalTools,
52
+ decodeOriginalToolsFromProviderOptions,
49
53
  encodeOriginalTools,
50
54
  escapeRegExp,
51
55
  extractOnErrorOption,
52
56
  extractToolNamesFromOriginalTools,
53
57
  getDebugLevel,
54
58
  getPotentialStartIndex,
59
+ getToolCallMiddlewareOptions,
55
60
  hasInputProperty,
56
61
  hermesProtocol,
57
62
  hermesToolMiddleware,
@@ -63,6 +68,7 @@ export {
63
68
  logParsedChunk,
64
69
  logParsedSummary,
65
70
  logRawChunk,
71
+ mergeToolCallMiddlewareOptions,
66
72
  morphXmlProtocol,
67
73
  morphXmlToolMiddleware,
68
74
  originalToolsSchema,
package/dist/rxml.cjs CHANGED
@@ -1472,7 +1472,7 @@ function updateBestMatch(depth, bestDepth, contentStart, contentEnd) {
1472
1472
  }
1473
1473
  function processTargetTag(options) {
1474
1474
  const { xmlContent, tagEnd, isSelfClosing, target, len, depth, bestDepth } = options;
1475
- const contentStart = xmlContent[tagEnd] === ">" ? tagEnd + 1 : tagEnd + 1;
1475
+ const contentStart = tagEnd + 1;
1476
1476
  if (isSelfClosing) {
1477
1477
  return updateBestMatch(depth, bestDepth, contentStart, contentStart);
1478
1478
  }
@@ -1508,7 +1508,7 @@ function processOpeningTagInExtract(options) {
1508
1508
  });
1509
1509
  }
1510
1510
  return {
1511
- newPos: xmlContent[tagEnd] === ">" ? tagEnd + 1 : tagEnd + 1,
1511
+ newPos: tagEnd + 1,
1512
1512
  newDepth: depth + (isSelfClosing ? 0 : 1),
1513
1513
  bestMatch
1514
1514
  };
@@ -1562,7 +1562,7 @@ function extractRawInner(xmlContent, tagName) {
1562
1562
  }
1563
1563
  function processOpeningTag(options) {
1564
1564
  const { xmlContent, tagEnd, isSelfClosing, target, len, ranges } = options;
1565
- const contentStart = xmlContent[tagEnd] === ">" ? tagEnd + 1 : tagEnd + 1;
1565
+ const contentStart = tagEnd + 1;
1566
1566
  if (isSelfClosing) {
1567
1567
  ranges.push({ start: contentStart, end: contentStart });
1568
1568
  return contentStart;
@@ -1605,7 +1605,7 @@ function findAllInnerRanges(xmlContent, tagName) {
1605
1605
  const tagEnd = tagEndInfo.pos;
1606
1606
  const isSelfClosing = tagEndInfo.isSelfClosing;
1607
1607
  if (tagInfo.name !== target) {
1608
- i = xmlContent[tagEnd] === ">" ? tagEnd + 1 : tagEnd + 1;
1608
+ i = tagEnd + 1;
1609
1609
  continue;
1610
1610
  }
1611
1611
  const nextPos = processOpeningTag({
@@ -1625,7 +1625,7 @@ function findAllInnerRanges(xmlContent, tagName) {
1625
1625
  }
1626
1626
  function findTopLevelTargetRange(options) {
1627
1627
  const { xmlContent, tagEnd, isSelfClosing, target, len } = options;
1628
- const contentStart = xmlContent[tagEnd] === ">" ? tagEnd + 1 : tagEnd + 1;
1628
+ const contentStart = tagEnd + 1;
1629
1629
  if (isSelfClosing) {
1630
1630
  return { start: contentStart, end: contentStart };
1631
1631
  }
@@ -1678,7 +1678,7 @@ function findFirstTopLevelRange(xmlContent, tagName) {
1678
1678
  len
1679
1679
  });
1680
1680
  }
1681
- i = xmlContent[tagEnd] === ">" ? tagEnd + 1 : tagEnd + 1;
1681
+ i = tagEnd + 1;
1682
1682
  depth += isSelfClosing ? 0 : 1;
1683
1683
  }
1684
1684
  return;