@mastra/schema-compat 0.11.7-alpha.0 → 0.11.8-alpha.0
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 +42 -0
- package/dist/index.cjs +61 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +62 -14
- package/dist/index.js.map +1 -1
- package/dist/provider-compats/openai-reasoning.d.ts.map +1 -1
- package/dist/provider-compats/openai.d.ts.map +1 -1
- package/dist/schema-compatibility-v3.d.ts +4 -3
- package/dist/schema-compatibility-v3.d.ts.map +1 -1
- package/dist/schema-compatibility-v4.d.ts +7 -3
- package/dist/schema-compatibility-v4.d.ts.map +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/zodTypes.d.ts +2 -0
- package/dist/zodTypes.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -8,4 +8,5 @@ export { GoogleSchemaCompatLayer } from './provider-compats/google.js';
|
|
|
8
8
|
export { MetaSchemaCompatLayer } from './provider-compats/meta.js';
|
|
9
9
|
export { OpenAISchemaCompatLayer } from './provider-compats/openai.js';
|
|
10
10
|
export { OpenAIReasoningSchemaCompatLayer } from './provider-compats/openai-reasoning.js';
|
|
11
|
+
export { type ModelInformation } from './types.js';
|
|
11
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,IAAI,mBAAmB,EACxC,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EAEb,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,UAAU,EAEf,UAAU,EACV,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,GACT,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,iBAAiB,IAAI,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG3D,OAAO,EAAE,6BAA6B,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAG9F,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,qCAAqC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,IAAI,mBAAmB,EACxC,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EAEb,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,UAAU,EAEf,UAAU,EACV,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,GACT,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,iBAAiB,IAAI,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG3D,OAAO,EAAE,6BAA6B,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAG9F,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,qCAAqC,CAAC;AAEvF,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { z, ZodOptional, ZodObject, ZodArray, ZodUnion, ZodString, ZodNumber, Zo
|
|
|
3
3
|
import { jsonSchema } from 'ai';
|
|
4
4
|
import { convertJsonSchemaToZod } from 'zod-from-json-schema';
|
|
5
5
|
import { convertJsonSchemaToZod as convertJsonSchemaToZod$1 } from 'zod-from-json-schema-v3';
|
|
6
|
-
import { ZodOptional as ZodOptional$1, ZodObject as ZodObject$1, ZodNull as ZodNull$1, ZodArray as ZodArray$1, ZodUnion as ZodUnion$1, ZodString as ZodString$1, ZodNumber as ZodNumber$1, ZodDate as ZodDate$1, ZodDefault as ZodDefault$1, z as z$1 } from 'zod/v4';
|
|
6
|
+
import { ZodOptional as ZodOptional$1, ZodObject as ZodObject$1, ZodNull as ZodNull$1, ZodNullable, ZodArray as ZodArray$1, ZodUnion as ZodUnion$1, ZodString as ZodString$1, ZodNumber as ZodNumber$1, ZodDate as ZodDate$1, ZodDefault as ZodDefault$1, z as z$1 } from 'zod/v4';
|
|
7
7
|
|
|
8
8
|
function convertZodSchemaToAISDKSchema(zodSchema, target = "jsonSchema7") {
|
|
9
9
|
const jsonSchemaToUse = zodToJsonSchema(zodSchema, target);
|
|
@@ -84,7 +84,8 @@ var SUPPORTED_ZOD_TYPES = [
|
|
|
84
84
|
"ZodNumber",
|
|
85
85
|
"ZodDate",
|
|
86
86
|
"ZodAny",
|
|
87
|
-
"ZodDefault"
|
|
87
|
+
"ZodDefault",
|
|
88
|
+
"ZodNullable"
|
|
88
89
|
];
|
|
89
90
|
var ALL_ZOD_TYPES = [...SUPPORTED_ZOD_TYPES, ...UNSUPPORTED_ZOD_TYPES];
|
|
90
91
|
var SchemaCompatLayer = class {
|
|
@@ -501,7 +502,8 @@ var SUPPORTED_ZOD_TYPES2 = [
|
|
|
501
502
|
"ZodNumber",
|
|
502
503
|
"ZodDate",
|
|
503
504
|
"ZodAny",
|
|
504
|
-
"ZodDefault"
|
|
505
|
+
"ZodDefault",
|
|
506
|
+
"ZodNullable"
|
|
505
507
|
];
|
|
506
508
|
var SchemaCompatLayer2 = class {
|
|
507
509
|
model;
|
|
@@ -544,6 +546,12 @@ var SchemaCompatLayer2 = class {
|
|
|
544
546
|
isNull(v) {
|
|
545
547
|
return v instanceof ZodNull$1;
|
|
546
548
|
}
|
|
549
|
+
/**
|
|
550
|
+
* Type guard for nullable Zod types
|
|
551
|
+
*/
|
|
552
|
+
isNullable(v) {
|
|
553
|
+
return v instanceof ZodNullable;
|
|
554
|
+
}
|
|
547
555
|
/**
|
|
548
556
|
* Type guard for array Zod types
|
|
549
557
|
*/
|
|
@@ -1137,6 +1145,9 @@ function isDate(z10) {
|
|
|
1137
1145
|
function isDefault(z10) {
|
|
1138
1146
|
return (v) => v instanceof z10["ZodDefault"];
|
|
1139
1147
|
}
|
|
1148
|
+
function isNullable(z10) {
|
|
1149
|
+
return (v) => v instanceof z10["ZodNullable"];
|
|
1150
|
+
}
|
|
1140
1151
|
|
|
1141
1152
|
// src/provider-compats/anthropic.ts
|
|
1142
1153
|
var AnthropicSchemaCompatLayer = class extends SchemaCompatLayer3 {
|
|
@@ -1277,15 +1288,30 @@ var OpenAISchemaCompatLayer = class extends SchemaCompatLayer3 {
|
|
|
1277
1288
|
}
|
|
1278
1289
|
processZodType(value) {
|
|
1279
1290
|
if (isOptional2(z)(value)) {
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1291
|
+
const innerType = "_def" in value ? value._def.innerType : value._zod?.def?.innerType;
|
|
1292
|
+
if (innerType) {
|
|
1293
|
+
if (isNullable(z)(innerType)) {
|
|
1294
|
+
const processed = this.processZodType(innerType);
|
|
1295
|
+
return processed.transform((val) => val === null ? void 0 : val);
|
|
1296
|
+
}
|
|
1297
|
+
const processedInner = this.processZodType(innerType);
|
|
1298
|
+
return processedInner.nullable().transform((val) => val === null ? void 0 : val);
|
|
1299
|
+
}
|
|
1300
|
+
return value;
|
|
1301
|
+
} else if (isNullable(z)(value)) {
|
|
1302
|
+
const innerType = "_def" in value ? value._def.innerType : value._zod?.def?.innerType;
|
|
1303
|
+
if (innerType) {
|
|
1304
|
+
if (isOptional2(z)(innerType)) {
|
|
1305
|
+
const innerInnerType = "_def" in innerType ? innerType._def.innerType : innerType._zod?.def?.innerType;
|
|
1306
|
+
if (innerInnerType) {
|
|
1307
|
+
const processedInnerInner = this.processZodType(innerInnerType);
|
|
1308
|
+
return processedInnerInner.nullable().transform((val) => val === null ? void 0 : val);
|
|
1309
|
+
}
|
|
1310
|
+
}
|
|
1311
|
+
const processedInner = this.processZodType(innerType);
|
|
1312
|
+
return processedInner.nullable();
|
|
1313
|
+
}
|
|
1314
|
+
return value;
|
|
1289
1315
|
} else if (isObj2(z)(value)) {
|
|
1290
1316
|
return this.defaultZodObjectHandler(value);
|
|
1291
1317
|
} else if (isUnion2(z)(value)) {
|
|
@@ -1325,8 +1351,30 @@ var OpenAIReasoningSchemaCompatLayer = class extends SchemaCompatLayer3 {
|
|
|
1325
1351
|
}
|
|
1326
1352
|
processZodType(value) {
|
|
1327
1353
|
if (isOptional2(z)(value)) {
|
|
1328
|
-
const
|
|
1329
|
-
|
|
1354
|
+
const innerType = "_def" in value ? value._def.innerType : value._zod?.def?.innerType;
|
|
1355
|
+
if (innerType) {
|
|
1356
|
+
if (isNullable(z)(innerType)) {
|
|
1357
|
+
const processed = this.processZodType(innerType);
|
|
1358
|
+
return processed.transform((val) => val === null ? void 0 : val);
|
|
1359
|
+
}
|
|
1360
|
+
const processedInner = this.processZodType(innerType);
|
|
1361
|
+
return processedInner.nullable().transform((val) => val === null ? void 0 : val);
|
|
1362
|
+
}
|
|
1363
|
+
return value;
|
|
1364
|
+
} else if (isNullable(z)(value)) {
|
|
1365
|
+
const innerType = "_def" in value ? value._def.innerType : value._zod?.def?.innerType;
|
|
1366
|
+
if (innerType && isOptional2(z)(innerType)) {
|
|
1367
|
+
const innerInnerType = "_def" in innerType ? innerType._def.innerType : innerType._zod?.def?.innerType;
|
|
1368
|
+
if (innerInnerType) {
|
|
1369
|
+
const processedInnerInner = this.processZodType(innerInnerType);
|
|
1370
|
+
return processedInnerInner.nullable().transform((val) => val === null ? void 0 : val);
|
|
1371
|
+
}
|
|
1372
|
+
}
|
|
1373
|
+
if (innerType) {
|
|
1374
|
+
const processedInner = this.processZodType(innerType);
|
|
1375
|
+
return processedInner.nullable();
|
|
1376
|
+
}
|
|
1377
|
+
return value;
|
|
1330
1378
|
} else if (isObj2(z)(value)) {
|
|
1331
1379
|
return this.defaultZodObjectHandler(value, { passthrough: false });
|
|
1332
1380
|
} else if (isArr2(z)(value)) {
|