@typia/vercel 12.0.0-dev.20260306 → 12.0.0-dev.20260307-2

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/README.md CHANGED
@@ -70,7 +70,7 @@ Use `typia.llm.parameters<T>()` with Vercel's `jsonSchema()` to generate structu
70
70
  ```typescript
71
71
  import { openai } from "@ai-sdk/openai";
72
72
  import { generateObject, jsonSchema } from "ai";
73
- import { dedent, stringifyValidationFailure } from "@typia/utils";
73
+ import { dedent, LlmJson } from "@typia/utils";
74
74
  import typia, { tags } from "typia";
75
75
 
76
76
  interface IMember {
@@ -89,7 +89,7 @@ const { object } = await generateObject({
89
89
  if (result.success) return { success: true, value: result.data };
90
90
  return {
91
91
  success: false,
92
- error: new Error(stringifyValidationFailure(result)),
92
+ error: new Error(LlmJson.stringify(result)),
93
93
  };
94
94
  },
95
95
  }),
package/lib/index.d.ts CHANGED
@@ -8,7 +8,7 @@ import { IHttpLlmController, ILlmController } from "@typia/interface";
8
8
  * can be used with any LLM provider (OpenAI, Anthropic, Google, etc.).
9
9
  *
10
10
  * Every tool call is validated by typia. If the LLM provides invalid arguments,
11
- * returns a validation error formatted by {@link stringifyValidationFailure}
11
+ * returns a validation error formatted by {@link LlmJson.stringify}
12
12
  * so the LLM can auto-correct in the next turn.
13
13
  *
14
14
  * ## Example with OpenAI
package/lib/index.js CHANGED
@@ -10,7 +10,7 @@ const VercelToolsRegistrar_1 = require("./internal/VercelToolsRegistrar");
10
10
  * can be used with any LLM provider (OpenAI, Anthropic, Google, etc.).
11
11
  *
12
12
  * Every tool call is validated by typia. If the LLM provides invalid arguments,
13
- * returns a validation error formatted by {@link stringifyValidationFailure}
13
+ * returns a validation error formatted by {@link LlmJson.stringify}
14
14
  * so the LLM can auto-correct in the next turn.
15
15
  *
16
16
  * ## Example with OpenAI
package/lib/index.mjs CHANGED
@@ -8,7 +8,7 @@ import { VercelToolsRegistrar } from './internal/VercelToolsRegistrar.mjs';
8
8
  * can be used with any LLM provider (OpenAI, Anthropic, Google, etc.).
9
9
  *
10
10
  * Every tool call is validated by typia. If the LLM provides invalid arguments,
11
- * returns a validation error formatted by {@link stringifyValidationFailure}
11
+ * returns a validation error formatted by {@link LlmJson.stringify}
12
12
  * so the LLM can auto-correct in the next turn.
13
13
  *
14
14
  * ## Example with OpenAI
@@ -102,13 +102,14 @@ var VercelToolsRegistrar;
102
102
  // Convert ILlmSchema.IParameters to Vercel jsonSchema
103
103
  parameters: (0, ai_1.jsonSchema)(convertParameters(func.parameters)),
104
104
  execute: (args) => __awaiter(this, void 0, void 0, function* () {
105
- // Validate using typia's built-in validator
106
- const validation = func.validate(args);
105
+ // Coerce and validate using typia's built-in functions
106
+ const coerced = utils_1.LlmJson.coerce(args, func.parameters);
107
+ const validation = func.validate(coerced);
107
108
  if (!validation.success) {
108
109
  // Return validation error in LLM-friendly format
109
110
  return {
110
111
  error: true,
111
- message: (0, utils_1.stringifyValidationFailure)(validation),
112
+ message: utils_1.LlmJson.stringify(validation),
112
113
  };
113
114
  }
114
115
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"VercelToolsRegistrar.js","sourceRoot":"","sources":["../../src/internal/VercelToolsRegistrar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VercelToolsRegistrar.js","sourceRoot":"","sources":["../../src/internal/VercelToolsRegistrar.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { tool, jsonSchema } from 'ai';
2
- import { stringifyValidationFailure, HttpLlm } from '@typia/utils';
2
+ import { LlmJson, HttpLlm } from '@typia/utils';
3
3
 
4
4
  var VercelToolsRegistrar;
5
5
  (function (VercelToolsRegistrar) {
@@ -90,13 +90,14 @@ var VercelToolsRegistrar;
90
90
  // Convert ILlmSchema.IParameters to Vercel jsonSchema
91
91
  parameters: jsonSchema(convertParameters(func.parameters)),
92
92
  execute: async (args) => {
93
- // Validate using typia's built-in validator
94
- const validation = func.validate(args);
93
+ // Coerce and validate using typia's built-in functions
94
+ const coerced = LlmJson.coerce(args, func.parameters);
95
+ const validation = func.validate(coerced);
95
96
  if (!validation.success) {
96
97
  // Return validation error in LLM-friendly format
97
98
  return {
98
99
  error: true,
99
- message: stringifyValidationFailure(validation),
100
+ message: LlmJson.stringify(validation),
100
101
  };
101
102
  }
102
103
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"VercelToolsRegistrar.mjs","sources":["../../src/internal/VercelToolsRegistrar.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VercelToolsRegistrar.mjs","sources":["../../src/internal/VercelToolsRegistrar.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typia/vercel",
3
- "version": "12.0.0-dev.20260306",
3
+ "version": "12.0.0-dev.20260307-2",
4
4
  "description": "Vercel AI SDK integration for typia",
5
5
  "main": "lib/index.js",
6
6
  "exports": {
@@ -22,8 +22,8 @@
22
22
  },
23
23
  "homepage": "https://typia.io",
24
24
  "dependencies": {
25
- "@typia/interface": "^12.0.0-dev.20260306",
26
- "@typia/utils": "^12.0.0-dev.20260306"
25
+ "@typia/utils": "^12.0.0-dev.20260307-2",
26
+ "@typia/interface": "^12.0.0-dev.20260307-2"
27
27
  },
28
28
  "peerDependencies": {
29
29
  "ai": ">=4.0.0"
package/src/index.ts CHANGED
@@ -11,7 +11,7 @@ import { VercelToolsRegistrar } from "./internal/VercelToolsRegistrar";
11
11
  * can be used with any LLM provider (OpenAI, Anthropic, Google, etc.).
12
12
  *
13
13
  * Every tool call is validated by typia. If the LLM provides invalid arguments,
14
- * returns a validation error formatted by {@link stringifyValidationFailure}
14
+ * returns a validation error formatted by {@link LlmJson.stringify}
15
15
  * so the LLM can auto-correct in the next turn.
16
16
  *
17
17
  * ## Example with OpenAI
@@ -9,7 +9,7 @@ import {
9
9
  ILlmSchema,
10
10
  IValidation,
11
11
  } from "@typia/interface";
12
- import { HttpLlm, stringifyValidationFailure } from "@typia/utils";
12
+ import { HttpLlm, LlmJson } from "@typia/utils";
13
13
 
14
14
  export namespace VercelToolsRegistrar {
15
15
  /**
@@ -135,13 +135,14 @@ export namespace VercelToolsRegistrar {
135
135
  ),
136
136
 
137
137
  execute: async (args: object) => {
138
- // Validate using typia's built-in validator
139
- const validation: IValidation<unknown> = func.validate(args);
138
+ // Coerce and validate using typia's built-in functions
139
+ const coerced: unknown = LlmJson.coerce(args, func.parameters);
140
+ const validation: IValidation<unknown> = func.validate(coerced);
140
141
  if (!validation.success) {
141
142
  // Return validation error in LLM-friendly format
142
143
  return {
143
144
  error: true,
144
- message: stringifyValidationFailure(validation),
145
+ message: LlmJson.stringify(validation),
145
146
  };
146
147
  }
147
148