@weapp-core/schematics 4.0.1-alpha.0 → 6.0.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/dist/index.js CHANGED
@@ -100,7 +100,7 @@ function generateWxss() {
100
100
  return "";
101
101
  }
102
102
 
103
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/core.js
103
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/core.js
104
104
  var NEVER = Object.freeze({
105
105
  status: "aborted"
106
106
  });
@@ -174,7 +174,7 @@ function config(newConfig) {
174
174
  return globalConfig;
175
175
  }
176
176
 
177
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/util.js
177
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/util.js
178
178
  var util_exports = {};
179
179
  __export(util_exports, {
180
180
  BIGINT_FORMAT_RANGES: () => BIGINT_FORMAT_RANGES,
@@ -222,6 +222,7 @@ __export(util_exports, {
222
222
  objectClone: () => objectClone,
223
223
  omit: () => omit,
224
224
  optionalKeys: () => optionalKeys,
225
+ parsedType: () => parsedType,
225
226
  partial: () => partial,
226
227
  pick: () => pick,
227
228
  prefixIssues: () => prefixIssues,
@@ -554,6 +555,11 @@ var BIGINT_FORMAT_RANGES = {
554
555
  };
555
556
  function pick(schema, mask) {
556
557
  const currDef = schema._zod.def;
558
+ const checks = currDef.checks;
559
+ const hasChecks = checks && checks.length > 0;
560
+ if (hasChecks) {
561
+ throw new Error(".pick() cannot be used on object schemas containing refinements");
562
+ }
557
563
  const def = mergeDefs(schema._zod.def, {
558
564
  get shape() {
559
565
  const newShape = {};
@@ -574,6 +580,11 @@ function pick(schema, mask) {
574
580
  }
575
581
  function omit(schema, mask) {
576
582
  const currDef = schema._zod.def;
583
+ const checks = currDef.checks;
584
+ const hasChecks = checks && checks.length > 0;
585
+ if (hasChecks) {
586
+ throw new Error(".omit() cannot be used on object schemas containing refinements");
587
+ }
577
588
  const def = mergeDefs(schema._zod.def, {
578
589
  get shape() {
579
590
  const newShape = { ...schema._zod.def.shape };
@@ -599,15 +610,19 @@ function extend(schema, shape) {
599
610
  const checks = schema._zod.def.checks;
600
611
  const hasChecks = checks && checks.length > 0;
601
612
  if (hasChecks) {
602
- throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");
613
+ const existingShape = schema._zod.def.shape;
614
+ for (const key in shape) {
615
+ if (Object.getOwnPropertyDescriptor(existingShape, key) !== void 0) {
616
+ throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.");
617
+ }
618
+ }
603
619
  }
604
620
  const def = mergeDefs(schema._zod.def, {
605
621
  get shape() {
606
622
  const _shape = { ...schema._zod.def.shape, ...shape };
607
623
  assignProp(this, "shape", _shape);
608
624
  return _shape;
609
- },
610
- checks: []
625
+ }
611
626
  });
612
627
  return clone(schema, def);
613
628
  }
@@ -615,15 +630,13 @@ function safeExtend(schema, shape) {
615
630
  if (!isPlainObject(shape)) {
616
631
  throw new Error("Invalid input to safeExtend: expected a plain object");
617
632
  }
618
- const def = {
619
- ...schema._zod.def,
633
+ const def = mergeDefs(schema._zod.def, {
620
634
  get shape() {
621
635
  const _shape = { ...schema._zod.def.shape, ...shape };
622
636
  assignProp(this, "shape", _shape);
623
637
  return _shape;
624
- },
625
- checks: schema._zod.def.checks
626
- };
638
+ }
639
+ });
627
640
  return clone(schema, def);
628
641
  }
629
642
  function merge(a, b) {
@@ -642,6 +655,12 @@ function merge(a, b) {
642
655
  return clone(a, def);
643
656
  }
644
657
  function partial(Class2, schema, mask) {
658
+ const currDef = schema._zod.def;
659
+ const checks = currDef.checks;
660
+ const hasChecks = checks && checks.length > 0;
661
+ if (hasChecks) {
662
+ throw new Error(".partial() cannot be used on object schemas containing refinements");
663
+ }
645
664
  const def = mergeDefs(schema._zod.def, {
646
665
  get shape() {
647
666
  const oldShape = schema._zod.def.shape;
@@ -700,8 +719,7 @@ function required(Class2, schema, mask) {
700
719
  }
701
720
  assignProp(this, "shape", shape);
702
721
  return shape;
703
- },
704
- checks: []
722
+ }
705
723
  });
706
724
  return clone(schema, def);
707
725
  }
@@ -755,6 +773,27 @@ function getLengthableOrigin(input) {
755
773
  return "string";
756
774
  return "unknown";
757
775
  }
776
+ function parsedType(data) {
777
+ const t = typeof data;
778
+ switch (t) {
779
+ case "number": {
780
+ return Number.isNaN(data) ? "nan" : "number";
781
+ }
782
+ case "object": {
783
+ if (data === null) {
784
+ return "null";
785
+ }
786
+ if (Array.isArray(data)) {
787
+ return "array";
788
+ }
789
+ const obj = data;
790
+ if (obj && Object.getPrototypeOf(obj) !== Object.prototype && "constructor" in obj && obj.constructor) {
791
+ return obj.constructor.name;
792
+ }
793
+ }
794
+ }
795
+ return t;
796
+ }
758
797
  function issue(...args) {
759
798
  const [iss, input, inst] = args;
760
799
  if (typeof iss === "string") {
@@ -814,7 +853,7 @@ var Class = class {
814
853
  }
815
854
  };
816
855
 
817
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/errors.js
856
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/errors.js
818
857
  var initializer = (inst, def) => {
819
858
  inst.name = "$ZodError";
820
859
  Object.defineProperty(inst, "_zod", {
@@ -880,7 +919,7 @@ function formatError(error2, mapper = (issue2) => issue2.message) {
880
919
  return fieldErrors;
881
920
  }
882
921
 
883
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/parse.js
922
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/parse.js
884
923
  var _parse = (_Err) => (schema, value, _ctx, _params) => {
885
924
  const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
886
925
  const result = schema._zod.run({ value, issues: [] }, ctx);
@@ -960,7 +999,7 @@ var _safeDecodeAsync = (_Err) => async (schema, value, _ctx) => {
960
999
  return _safeParseAsync(_Err)(schema, value, _ctx);
961
1000
  };
962
1001
 
963
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/regexes.js
1002
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/regexes.js
964
1003
  var regexes_exports = {};
965
1004
  __export(regexes_exports, {
966
1005
  base64: () => base64,
@@ -1061,7 +1100,7 @@ var base64 = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/
1061
1100
  var base64url = /^[A-Za-z0-9_-]*$/;
1062
1101
  var hostname = /^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/;
1063
1102
  var domain = /^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/;
1064
- var e164 = /^\+(?:[0-9]){6,14}[0-9]$/;
1103
+ var e164 = /^\+[1-9]\d{6,14}$/;
1065
1104
  var dateSource = `(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`;
1066
1105
  var date = /* @__PURE__ */ new RegExp(`^${dateSource}$`);
1067
1106
  function timeSource(args) {
@@ -1088,7 +1127,7 @@ var string = (params) => {
1088
1127
  };
1089
1128
  var bigint = /^-?\d+n?$/;
1090
1129
  var integer = /^-?\d+$/;
1091
- var number = /^-?\d+(?:\.\d+)?/;
1130
+ var number = /^-?\d+(?:\.\d+)?$/;
1092
1131
  var boolean = /^(?:true|false)$/i;
1093
1132
  var _null = /^null$/i;
1094
1133
  var _undefined = /^undefined$/i;
@@ -1117,7 +1156,7 @@ var sha512_hex = /^[0-9a-fA-F]{128}$/;
1117
1156
  var sha512_base64 = /* @__PURE__ */ fixedBase64(86, "==");
1118
1157
  var sha512_base64url = /* @__PURE__ */ fixedBase64url(86);
1119
1158
 
1120
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/checks.js
1159
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/checks.js
1121
1160
  var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
1122
1161
  var _a2;
1123
1162
  inst._zod ?? (inst._zod = {});
@@ -1149,7 +1188,7 @@ var $ZodCheckLessThan = /* @__PURE__ */ $constructor("$ZodCheckLessThan", (inst,
1149
1188
  payload.issues.push({
1150
1189
  origin,
1151
1190
  code: "too_big",
1152
- maximum: def.value,
1191
+ maximum: typeof def.value === "object" ? def.value.getTime() : def.value,
1153
1192
  input: payload.value,
1154
1193
  inclusive: def.inclusive,
1155
1194
  inst,
@@ -1177,7 +1216,7 @@ var $ZodCheckGreaterThan = /* @__PURE__ */ $constructor("$ZodCheckGreaterThan",
1177
1216
  payload.issues.push({
1178
1217
  origin,
1179
1218
  code: "too_small",
1180
- minimum: def.value,
1219
+ minimum: typeof def.value === "object" ? def.value.getTime() : def.value,
1181
1220
  input: payload.value,
1182
1221
  inclusive: def.inclusive,
1183
1222
  inst,
@@ -1244,6 +1283,7 @@ var $ZodCheckNumberFormat = /* @__PURE__ */ $constructor("$ZodCheckNumberFormat"
1244
1283
  note: "Integers must be within the safe integer range.",
1245
1284
  inst,
1246
1285
  origin,
1286
+ inclusive: true,
1247
1287
  continue: !def.abort
1248
1288
  });
1249
1289
  } else {
@@ -1254,6 +1294,7 @@ var $ZodCheckNumberFormat = /* @__PURE__ */ $constructor("$ZodCheckNumberFormat"
1254
1294
  note: "Integers must be within the safe integer range.",
1255
1295
  inst,
1256
1296
  origin,
1297
+ inclusive: true,
1257
1298
  continue: !def.abort
1258
1299
  });
1259
1300
  }
@@ -1277,7 +1318,9 @@ var $ZodCheckNumberFormat = /* @__PURE__ */ $constructor("$ZodCheckNumberFormat"
1277
1318
  input,
1278
1319
  code: "too_big",
1279
1320
  maximum,
1280
- inst
1321
+ inclusive: true,
1322
+ inst,
1323
+ continue: !def.abort
1281
1324
  });
1282
1325
  }
1283
1326
  };
@@ -1310,7 +1353,9 @@ var $ZodCheckBigIntFormat = /* @__PURE__ */ $constructor("$ZodCheckBigIntFormat"
1310
1353
  input,
1311
1354
  code: "too_big",
1312
1355
  maximum,
1313
- inst
1356
+ inclusive: true,
1357
+ inst,
1358
+ continue: !def.abort
1314
1359
  });
1315
1360
  }
1316
1361
  };
@@ -1659,7 +1704,7 @@ var $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (ins
1659
1704
  };
1660
1705
  });
1661
1706
 
1662
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/doc.js
1707
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/doc.js
1663
1708
  var Doc = class {
1664
1709
  constructor(args = []) {
1665
1710
  this.content = [];
@@ -1695,14 +1740,14 @@ var Doc = class {
1695
1740
  }
1696
1741
  };
1697
1742
 
1698
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/versions.js
1743
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/versions.js
1699
1744
  var version = {
1700
1745
  major: 4,
1701
- minor: 2,
1702
- patch: 1
1746
+ minor: 3,
1747
+ patch: 5
1703
1748
  };
1704
1749
 
1705
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/schemas.js
1750
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/schemas.js
1706
1751
  var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
1707
1752
  var _a2;
1708
1753
  inst ?? (inst = {});
@@ -1799,7 +1844,7 @@ var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
1799
1844
  return runChecks(result, checks, ctx);
1800
1845
  };
1801
1846
  }
1802
- inst["~standard"] = {
1847
+ defineLazy(inst, "~standard", () => ({
1803
1848
  validate: (value) => {
1804
1849
  try {
1805
1850
  const r = safeParse(inst, value);
@@ -1810,7 +1855,7 @@ var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
1810
1855
  },
1811
1856
  vendor: "zod",
1812
1857
  version: 1
1813
- };
1858
+ }));
1814
1859
  });
1815
1860
  var $ZodString = /* @__PURE__ */ $constructor("$ZodString", (inst, def) => {
1816
1861
  $ZodType.init(inst, def);
@@ -2344,8 +2389,11 @@ var $ZodArray = /* @__PURE__ */ $constructor("$ZodArray", (inst, def) => {
2344
2389
  return payload;
2345
2390
  };
2346
2391
  });
2347
- function handlePropertyResult(result, final, key, input) {
2392
+ function handlePropertyResult(result, final, key, input, isOptionalOut) {
2348
2393
  if (result.issues.length) {
2394
+ if (isOptionalOut && !(key in input)) {
2395
+ return;
2396
+ }
2349
2397
  final.issues.push(...prefixIssues(key, result.issues));
2350
2398
  }
2351
2399
  if (result.value === void 0) {
@@ -2377,6 +2425,7 @@ function handleCatchall(proms, input, payload, ctx, def, inst) {
2377
2425
  const keySet = def.keySet;
2378
2426
  const _catchall = def.catchall._zod;
2379
2427
  const t = _catchall.def.type;
2428
+ const isOptionalOut = _catchall.optout === "optional";
2380
2429
  for (const key in input) {
2381
2430
  if (keySet.has(key))
2382
2431
  continue;
@@ -2386,9 +2435,9 @@ function handleCatchall(proms, input, payload, ctx, def, inst) {
2386
2435
  }
2387
2436
  const r = _catchall.run({ value: input[key], issues: [] }, ctx);
2388
2437
  if (r instanceof Promise) {
2389
- proms.push(r.then((r2) => handlePropertyResult(r2, payload, key, input)));
2438
+ proms.push(r.then((r2) => handlePropertyResult(r2, payload, key, input, isOptionalOut)));
2390
2439
  } else {
2391
- handlePropertyResult(r, payload, key, input);
2440
+ handlePropertyResult(r, payload, key, input, isOptionalOut);
2392
2441
  }
2393
2442
  }
2394
2443
  if (unrecognized.length) {
@@ -2454,11 +2503,12 @@ var $ZodObject = /* @__PURE__ */ $constructor("$ZodObject", (inst, def) => {
2454
2503
  const shape = value.shape;
2455
2504
  for (const key of value.keys) {
2456
2505
  const el = shape[key];
2506
+ const isOptionalOut = el._zod.optout === "optional";
2457
2507
  const r = el._zod.run({ value: input[key], issues: [] }, ctx);
2458
2508
  if (r instanceof Promise) {
2459
- proms.push(r.then((r2) => handlePropertyResult(r2, payload, key, input)));
2509
+ proms.push(r.then((r2) => handlePropertyResult(r2, payload, key, input, isOptionalOut)));
2460
2510
  } else {
2461
- handlePropertyResult(r, payload, key, input);
2511
+ handlePropertyResult(r, payload, key, input, isOptionalOut);
2462
2512
  }
2463
2513
  }
2464
2514
  if (!catchall) {
@@ -2488,8 +2538,31 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
2488
2538
  for (const key of normalized.keys) {
2489
2539
  const id = ids[key];
2490
2540
  const k = esc(key);
2541
+ const schema = shape[key];
2542
+ const isOptionalOut = schema?._zod?.optout === "optional";
2491
2543
  doc.write(`const ${id} = ${parseStr(key)};`);
2492
- doc.write(`
2544
+ if (isOptionalOut) {
2545
+ doc.write(`
2546
+ if (${id}.issues.length) {
2547
+ if (${k} in input) {
2548
+ payload.issues = payload.issues.concat(${id}.issues.map(iss => ({
2549
+ ...iss,
2550
+ path: iss.path ? [${k}, ...iss.path] : [${k}]
2551
+ })));
2552
+ }
2553
+ }
2554
+
2555
+ if (${id}.value === undefined) {
2556
+ if (${k} in input) {
2557
+ newResult[${k}] = undefined;
2558
+ }
2559
+ } else {
2560
+ newResult[${k}] = ${id}.value;
2561
+ }
2562
+
2563
+ `);
2564
+ } else {
2565
+ doc.write(`
2493
2566
  if (${id}.issues.length) {
2494
2567
  payload.issues = payload.issues.concat(${id}.issues.map(iss => ({
2495
2568
  ...iss,
@@ -2497,7 +2570,6 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
2497
2570
  })));
2498
2571
  }
2499
2572
 
2500
-
2501
2573
  if (${id}.value === undefined) {
2502
2574
  if (${k} in input) {
2503
2575
  newResult[${k}] = undefined;
@@ -2507,6 +2579,7 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
2507
2579
  }
2508
2580
 
2509
2581
  `);
2582
+ }
2510
2583
  }
2511
2584
  doc.write(`payload.value = newResult;`);
2512
2585
  doc.write(`return payload;`);
@@ -2789,11 +2862,34 @@ function mergeValues(a, b) {
2789
2862
  return { valid: false, mergeErrorPath: [] };
2790
2863
  }
2791
2864
  function handleIntersectionResults(result, left, right) {
2792
- if (left.issues.length) {
2793
- result.issues.push(...left.issues);
2865
+ const unrecKeys = /* @__PURE__ */ new Map();
2866
+ let unrecIssue;
2867
+ for (const iss of left.issues) {
2868
+ if (iss.code === "unrecognized_keys") {
2869
+ unrecIssue ?? (unrecIssue = iss);
2870
+ for (const k of iss.keys) {
2871
+ if (!unrecKeys.has(k))
2872
+ unrecKeys.set(k, {});
2873
+ unrecKeys.get(k).l = true;
2874
+ }
2875
+ } else {
2876
+ result.issues.push(iss);
2877
+ }
2794
2878
  }
2795
- if (right.issues.length) {
2796
- result.issues.push(...right.issues);
2879
+ for (const iss of right.issues) {
2880
+ if (iss.code === "unrecognized_keys") {
2881
+ for (const k of iss.keys) {
2882
+ if (!unrecKeys.has(k))
2883
+ unrecKeys.set(k, {});
2884
+ unrecKeys.get(k).r = true;
2885
+ }
2886
+ } else {
2887
+ result.issues.push(iss);
2888
+ }
2889
+ }
2890
+ const bothKeys = [...unrecKeys].filter(([, f]) => f.l && f.r).map(([k]) => k);
2891
+ if (bothKeys.length && unrecIssue) {
2892
+ result.issues.push({ ...unrecIssue, keys: bothKeys });
2797
2893
  }
2798
2894
  if (aborted(result))
2799
2895
  return result;
@@ -2827,7 +2923,7 @@ var $ZodTuple = /* @__PURE__ */ $constructor("$ZodTuple", (inst, def) => {
2827
2923
  const tooSmall = input.length < optStart - 1;
2828
2924
  if (tooBig || tooSmall) {
2829
2925
  payload.issues.push({
2830
- ...tooBig ? { code: "too_big", maximum: items.length } : { code: "too_small", minimum: items.length },
2926
+ ...tooBig ? { code: "too_big", maximum: items.length, inclusive: true } : { code: "too_small", minimum: items.length },
2831
2927
  input,
2832
2928
  inst,
2833
2929
  origin: "array"
@@ -2935,10 +3031,20 @@ var $ZodRecord = /* @__PURE__ */ $constructor("$ZodRecord", (inst, def) => {
2935
3031
  for (const key of Reflect.ownKeys(input)) {
2936
3032
  if (key === "__proto__")
2937
3033
  continue;
2938
- const keyResult = def.keyType._zod.run({ value: key, issues: [] }, ctx);
3034
+ let keyResult = def.keyType._zod.run({ value: key, issues: [] }, ctx);
2939
3035
  if (keyResult instanceof Promise) {
2940
3036
  throw new Error("Async schemas not supported in object keys currently");
2941
3037
  }
3038
+ const checkNumericKey = typeof key === "string" && number.test(key) && keyResult.issues.length && keyResult.issues.some((iss) => iss.code === "invalid_type" && iss.expected === "number");
3039
+ if (checkNumericKey) {
3040
+ const retryResult = def.keyType._zod.run({ value: Number(key), issues: [] }, ctx);
3041
+ if (retryResult instanceof Promise) {
3042
+ throw new Error("Async schemas not supported in object keys currently");
3043
+ }
3044
+ if (retryResult.issues.length === 0) {
3045
+ keyResult = retryResult;
3046
+ }
3047
+ }
2942
3048
  if (keyResult.issues.length) {
2943
3049
  if (def.mode === "loose") {
2944
3050
  payload.value[key] = input[key];
@@ -3178,6 +3284,14 @@ var $ZodOptional = /* @__PURE__ */ $constructor("$ZodOptional", (inst, def) => {
3178
3284
  return def.innerType._zod.run(payload, ctx);
3179
3285
  };
3180
3286
  });
3287
+ var $ZodExactOptional = /* @__PURE__ */ $constructor("$ZodExactOptional", (inst, def) => {
3288
+ $ZodOptional.init(inst, def);
3289
+ defineLazy(inst._zod, "values", () => def.innerType._zod.values);
3290
+ defineLazy(inst._zod, "pattern", () => def.innerType._zod.pattern);
3291
+ inst._zod.parse = (payload, ctx) => {
3292
+ return def.innerType._zod.run(payload, ctx);
3293
+ };
3294
+ });
3181
3295
  var $ZodNullable = /* @__PURE__ */ $constructor("$ZodNullable", (inst, def) => {
3182
3296
  $ZodType.init(inst, def);
3183
3297
  defineLazy(inst._zod, "optin", () => def.innerType._zod.optin);
@@ -3456,7 +3570,7 @@ var $ZodTemplateLiteral = /* @__PURE__ */ $constructor("$ZodTemplateLiteral", (i
3456
3570
  payload.issues.push({
3457
3571
  input: payload.value,
3458
3572
  inst,
3459
- expected: "template_literal",
3573
+ expected: "string",
3460
3574
  code: "invalid_type"
3461
3575
  });
3462
3576
  return payload;
@@ -3604,38 +3718,19 @@ function handleRefineResult(result, payload, input, inst) {
3604
3718
  }
3605
3719
  }
3606
3720
 
3607
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/locales/en.js
3608
- var parsedType = (data) => {
3609
- const t = typeof data;
3610
- switch (t) {
3611
- case "number": {
3612
- return Number.isNaN(data) ? "NaN" : "number";
3613
- }
3614
- case "object": {
3615
- if (Array.isArray(data)) {
3616
- return "array";
3617
- }
3618
- if (data === null) {
3619
- return "null";
3620
- }
3621
- if (Object.getPrototypeOf(data) !== Object.prototype && data.constructor) {
3622
- return data.constructor.name;
3623
- }
3624
- }
3625
- }
3626
- return t;
3627
- };
3721
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/locales/en.js
3628
3722
  var error = () => {
3629
3723
  const Sizable = {
3630
3724
  string: { unit: "characters", verb: "to have" },
3631
3725
  file: { unit: "bytes", verb: "to have" },
3632
3726
  array: { unit: "items", verb: "to have" },
3633
- set: { unit: "items", verb: "to have" }
3727
+ set: { unit: "items", verb: "to have" },
3728
+ map: { unit: "entries", verb: "to have" }
3634
3729
  };
3635
3730
  function getSizing(origin) {
3636
3731
  return Sizable[origin] ?? null;
3637
3732
  }
3638
- const Nouns = {
3733
+ const FormatDictionary = {
3639
3734
  regex: "input",
3640
3735
  email: "email address",
3641
3736
  url: "URL",
@@ -3666,10 +3761,19 @@ var error = () => {
3666
3761
  jwt: "JWT",
3667
3762
  template_literal: "input"
3668
3763
  };
3764
+ const TypeDictionary = {
3765
+ // Compatibility: "nan" -> "NaN" for display
3766
+ nan: "NaN"
3767
+ // All other type names omitted - they fall back to raw values via ?? operator
3768
+ };
3669
3769
  return (issue2) => {
3670
3770
  switch (issue2.code) {
3671
- case "invalid_type":
3672
- return `Invalid input: expected ${issue2.expected}, received ${parsedType(issue2.input)}`;
3771
+ case "invalid_type": {
3772
+ const expected = TypeDictionary[issue2.expected] ?? issue2.expected;
3773
+ const receivedType = parsedType(issue2.input);
3774
+ const received = TypeDictionary[receivedType] ?? receivedType;
3775
+ return `Invalid input: expected ${expected}, received ${received}`;
3776
+ }
3673
3777
  case "invalid_value":
3674
3778
  if (issue2.values.length === 1)
3675
3779
  return `Invalid input: expected ${stringifyPrimitive(issue2.values[0])}`;
@@ -3700,7 +3804,7 @@ var error = () => {
3700
3804
  return `Invalid string: must include "${_issue.includes}"`;
3701
3805
  if (_issue.format === "regex")
3702
3806
  return `Invalid string: must match pattern ${_issue.pattern}`;
3703
- return `Invalid ${Nouns[_issue.format] ?? issue2.format}`;
3807
+ return `Invalid ${FormatDictionary[_issue.format] ?? issue2.format}`;
3704
3808
  }
3705
3809
  case "not_multiple_of":
3706
3810
  return `Invalid number: must be a multiple of ${issue2.divisor}`;
@@ -3723,7 +3827,7 @@ function en_default() {
3723
3827
  };
3724
3828
  }
3725
3829
 
3726
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/registries.js
3830
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/registries.js
3727
3831
  var _a;
3728
3832
  var $ZodRegistry = class {
3729
3833
  constructor() {
@@ -3734,9 +3838,6 @@ var $ZodRegistry = class {
3734
3838
  const meta3 = _meta[0];
3735
3839
  this._map.set(schema, meta3);
3736
3840
  if (meta3 && typeof meta3 === "object" && "id" in meta3) {
3737
- if (this._idmap.has(meta3.id)) {
3738
- throw new Error(`ID ${meta3.id} already exists in the registry`);
3739
- }
3740
3841
  this._idmap.set(meta3.id, schema);
3741
3842
  }
3742
3843
  return this;
@@ -3774,13 +3875,15 @@ function registry() {
3774
3875
  (_a = globalThis).__zod_globalRegistry ?? (_a.__zod_globalRegistry = registry());
3775
3876
  var globalRegistry = globalThis.__zod_globalRegistry;
3776
3877
 
3777
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/api.js
3878
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/api.js
3879
+ // @__NO_SIDE_EFFECTS__
3778
3880
  function _string(Class2, params) {
3779
3881
  return new Class2({
3780
3882
  type: "string",
3781
3883
  ...normalizeParams(params)
3782
3884
  });
3783
3885
  }
3886
+ // @__NO_SIDE_EFFECTS__
3784
3887
  function _email(Class2, params) {
3785
3888
  return new Class2({
3786
3889
  type: "string",
@@ -3790,6 +3893,7 @@ function _email(Class2, params) {
3790
3893
  ...normalizeParams(params)
3791
3894
  });
3792
3895
  }
3896
+ // @__NO_SIDE_EFFECTS__
3793
3897
  function _guid(Class2, params) {
3794
3898
  return new Class2({
3795
3899
  type: "string",
@@ -3799,6 +3903,7 @@ function _guid(Class2, params) {
3799
3903
  ...normalizeParams(params)
3800
3904
  });
3801
3905
  }
3906
+ // @__NO_SIDE_EFFECTS__
3802
3907
  function _uuid(Class2, params) {
3803
3908
  return new Class2({
3804
3909
  type: "string",
@@ -3808,6 +3913,7 @@ function _uuid(Class2, params) {
3808
3913
  ...normalizeParams(params)
3809
3914
  });
3810
3915
  }
3916
+ // @__NO_SIDE_EFFECTS__
3811
3917
  function _uuidv4(Class2, params) {
3812
3918
  return new Class2({
3813
3919
  type: "string",
@@ -3818,6 +3924,7 @@ function _uuidv4(Class2, params) {
3818
3924
  ...normalizeParams(params)
3819
3925
  });
3820
3926
  }
3927
+ // @__NO_SIDE_EFFECTS__
3821
3928
  function _uuidv6(Class2, params) {
3822
3929
  return new Class2({
3823
3930
  type: "string",
@@ -3828,6 +3935,7 @@ function _uuidv6(Class2, params) {
3828
3935
  ...normalizeParams(params)
3829
3936
  });
3830
3937
  }
3938
+ // @__NO_SIDE_EFFECTS__
3831
3939
  function _uuidv7(Class2, params) {
3832
3940
  return new Class2({
3833
3941
  type: "string",
@@ -3838,6 +3946,7 @@ function _uuidv7(Class2, params) {
3838
3946
  ...normalizeParams(params)
3839
3947
  });
3840
3948
  }
3949
+ // @__NO_SIDE_EFFECTS__
3841
3950
  function _url(Class2, params) {
3842
3951
  return new Class2({
3843
3952
  type: "string",
@@ -3847,6 +3956,7 @@ function _url(Class2, params) {
3847
3956
  ...normalizeParams(params)
3848
3957
  });
3849
3958
  }
3959
+ // @__NO_SIDE_EFFECTS__
3850
3960
  function _emoji2(Class2, params) {
3851
3961
  return new Class2({
3852
3962
  type: "string",
@@ -3856,6 +3966,7 @@ function _emoji2(Class2, params) {
3856
3966
  ...normalizeParams(params)
3857
3967
  });
3858
3968
  }
3969
+ // @__NO_SIDE_EFFECTS__
3859
3970
  function _nanoid(Class2, params) {
3860
3971
  return new Class2({
3861
3972
  type: "string",
@@ -3865,6 +3976,7 @@ function _nanoid(Class2, params) {
3865
3976
  ...normalizeParams(params)
3866
3977
  });
3867
3978
  }
3979
+ // @__NO_SIDE_EFFECTS__
3868
3980
  function _cuid(Class2, params) {
3869
3981
  return new Class2({
3870
3982
  type: "string",
@@ -3874,6 +3986,7 @@ function _cuid(Class2, params) {
3874
3986
  ...normalizeParams(params)
3875
3987
  });
3876
3988
  }
3989
+ // @__NO_SIDE_EFFECTS__
3877
3990
  function _cuid2(Class2, params) {
3878
3991
  return new Class2({
3879
3992
  type: "string",
@@ -3883,6 +3996,7 @@ function _cuid2(Class2, params) {
3883
3996
  ...normalizeParams(params)
3884
3997
  });
3885
3998
  }
3999
+ // @__NO_SIDE_EFFECTS__
3886
4000
  function _ulid(Class2, params) {
3887
4001
  return new Class2({
3888
4002
  type: "string",
@@ -3892,6 +4006,7 @@ function _ulid(Class2, params) {
3892
4006
  ...normalizeParams(params)
3893
4007
  });
3894
4008
  }
4009
+ // @__NO_SIDE_EFFECTS__
3895
4010
  function _xid(Class2, params) {
3896
4011
  return new Class2({
3897
4012
  type: "string",
@@ -3901,6 +4016,7 @@ function _xid(Class2, params) {
3901
4016
  ...normalizeParams(params)
3902
4017
  });
3903
4018
  }
4019
+ // @__NO_SIDE_EFFECTS__
3904
4020
  function _ksuid(Class2, params) {
3905
4021
  return new Class2({
3906
4022
  type: "string",
@@ -3910,6 +4026,7 @@ function _ksuid(Class2, params) {
3910
4026
  ...normalizeParams(params)
3911
4027
  });
3912
4028
  }
4029
+ // @__NO_SIDE_EFFECTS__
3913
4030
  function _ipv4(Class2, params) {
3914
4031
  return new Class2({
3915
4032
  type: "string",
@@ -3919,6 +4036,7 @@ function _ipv4(Class2, params) {
3919
4036
  ...normalizeParams(params)
3920
4037
  });
3921
4038
  }
4039
+ // @__NO_SIDE_EFFECTS__
3922
4040
  function _ipv6(Class2, params) {
3923
4041
  return new Class2({
3924
4042
  type: "string",
@@ -3928,6 +4046,7 @@ function _ipv6(Class2, params) {
3928
4046
  ...normalizeParams(params)
3929
4047
  });
3930
4048
  }
4049
+ // @__NO_SIDE_EFFECTS__
3931
4050
  function _mac(Class2, params) {
3932
4051
  return new Class2({
3933
4052
  type: "string",
@@ -3937,6 +4056,7 @@ function _mac(Class2, params) {
3937
4056
  ...normalizeParams(params)
3938
4057
  });
3939
4058
  }
4059
+ // @__NO_SIDE_EFFECTS__
3940
4060
  function _cidrv4(Class2, params) {
3941
4061
  return new Class2({
3942
4062
  type: "string",
@@ -3946,6 +4066,7 @@ function _cidrv4(Class2, params) {
3946
4066
  ...normalizeParams(params)
3947
4067
  });
3948
4068
  }
4069
+ // @__NO_SIDE_EFFECTS__
3949
4070
  function _cidrv6(Class2, params) {
3950
4071
  return new Class2({
3951
4072
  type: "string",
@@ -3955,6 +4076,7 @@ function _cidrv6(Class2, params) {
3955
4076
  ...normalizeParams(params)
3956
4077
  });
3957
4078
  }
4079
+ // @__NO_SIDE_EFFECTS__
3958
4080
  function _base64(Class2, params) {
3959
4081
  return new Class2({
3960
4082
  type: "string",
@@ -3964,6 +4086,7 @@ function _base64(Class2, params) {
3964
4086
  ...normalizeParams(params)
3965
4087
  });
3966
4088
  }
4089
+ // @__NO_SIDE_EFFECTS__
3967
4090
  function _base64url(Class2, params) {
3968
4091
  return new Class2({
3969
4092
  type: "string",
@@ -3973,6 +4096,7 @@ function _base64url(Class2, params) {
3973
4096
  ...normalizeParams(params)
3974
4097
  });
3975
4098
  }
4099
+ // @__NO_SIDE_EFFECTS__
3976
4100
  function _e164(Class2, params) {
3977
4101
  return new Class2({
3978
4102
  type: "string",
@@ -3982,6 +4106,7 @@ function _e164(Class2, params) {
3982
4106
  ...normalizeParams(params)
3983
4107
  });
3984
4108
  }
4109
+ // @__NO_SIDE_EFFECTS__
3985
4110
  function _jwt(Class2, params) {
3986
4111
  return new Class2({
3987
4112
  type: "string",
@@ -3991,6 +4116,7 @@ function _jwt(Class2, params) {
3991
4116
  ...normalizeParams(params)
3992
4117
  });
3993
4118
  }
4119
+ // @__NO_SIDE_EFFECTS__
3994
4120
  function _isoDateTime(Class2, params) {
3995
4121
  return new Class2({
3996
4122
  type: "string",
@@ -4002,6 +4128,7 @@ function _isoDateTime(Class2, params) {
4002
4128
  ...normalizeParams(params)
4003
4129
  });
4004
4130
  }
4131
+ // @__NO_SIDE_EFFECTS__
4005
4132
  function _isoDate(Class2, params) {
4006
4133
  return new Class2({
4007
4134
  type: "string",
@@ -4010,6 +4137,7 @@ function _isoDate(Class2, params) {
4010
4137
  ...normalizeParams(params)
4011
4138
  });
4012
4139
  }
4140
+ // @__NO_SIDE_EFFECTS__
4013
4141
  function _isoTime(Class2, params) {
4014
4142
  return new Class2({
4015
4143
  type: "string",
@@ -4019,6 +4147,7 @@ function _isoTime(Class2, params) {
4019
4147
  ...normalizeParams(params)
4020
4148
  });
4021
4149
  }
4150
+ // @__NO_SIDE_EFFECTS__
4022
4151
  function _isoDuration(Class2, params) {
4023
4152
  return new Class2({
4024
4153
  type: "string",
@@ -4027,6 +4156,7 @@ function _isoDuration(Class2, params) {
4027
4156
  ...normalizeParams(params)
4028
4157
  });
4029
4158
  }
4159
+ // @__NO_SIDE_EFFECTS__
4030
4160
  function _number(Class2, params) {
4031
4161
  return new Class2({
4032
4162
  type: "number",
@@ -4034,6 +4164,7 @@ function _number(Class2, params) {
4034
4164
  ...normalizeParams(params)
4035
4165
  });
4036
4166
  }
4167
+ // @__NO_SIDE_EFFECTS__
4037
4168
  function _int(Class2, params) {
4038
4169
  return new Class2({
4039
4170
  type: "number",
@@ -4043,6 +4174,7 @@ function _int(Class2, params) {
4043
4174
  ...normalizeParams(params)
4044
4175
  });
4045
4176
  }
4177
+ // @__NO_SIDE_EFFECTS__
4046
4178
  function _float32(Class2, params) {
4047
4179
  return new Class2({
4048
4180
  type: "number",
@@ -4052,6 +4184,7 @@ function _float32(Class2, params) {
4052
4184
  ...normalizeParams(params)
4053
4185
  });
4054
4186
  }
4187
+ // @__NO_SIDE_EFFECTS__
4055
4188
  function _float64(Class2, params) {
4056
4189
  return new Class2({
4057
4190
  type: "number",
@@ -4061,6 +4194,7 @@ function _float64(Class2, params) {
4061
4194
  ...normalizeParams(params)
4062
4195
  });
4063
4196
  }
4197
+ // @__NO_SIDE_EFFECTS__
4064
4198
  function _int32(Class2, params) {
4065
4199
  return new Class2({
4066
4200
  type: "number",
@@ -4070,6 +4204,7 @@ function _int32(Class2, params) {
4070
4204
  ...normalizeParams(params)
4071
4205
  });
4072
4206
  }
4207
+ // @__NO_SIDE_EFFECTS__
4073
4208
  function _uint32(Class2, params) {
4074
4209
  return new Class2({
4075
4210
  type: "number",
@@ -4079,18 +4214,21 @@ function _uint32(Class2, params) {
4079
4214
  ...normalizeParams(params)
4080
4215
  });
4081
4216
  }
4217
+ // @__NO_SIDE_EFFECTS__
4082
4218
  function _boolean(Class2, params) {
4083
4219
  return new Class2({
4084
4220
  type: "boolean",
4085
4221
  ...normalizeParams(params)
4086
4222
  });
4087
4223
  }
4224
+ // @__NO_SIDE_EFFECTS__
4088
4225
  function _bigint(Class2, params) {
4089
4226
  return new Class2({
4090
4227
  type: "bigint",
4091
4228
  ...normalizeParams(params)
4092
4229
  });
4093
4230
  }
4231
+ // @__NO_SIDE_EFFECTS__
4094
4232
  function _int64(Class2, params) {
4095
4233
  return new Class2({
4096
4234
  type: "bigint",
@@ -4100,6 +4238,7 @@ function _int64(Class2, params) {
4100
4238
  ...normalizeParams(params)
4101
4239
  });
4102
4240
  }
4241
+ // @__NO_SIDE_EFFECTS__
4103
4242
  function _uint64(Class2, params) {
4104
4243
  return new Class2({
4105
4244
  type: "bigint",
@@ -4109,58 +4248,68 @@ function _uint64(Class2, params) {
4109
4248
  ...normalizeParams(params)
4110
4249
  });
4111
4250
  }
4251
+ // @__NO_SIDE_EFFECTS__
4112
4252
  function _symbol(Class2, params) {
4113
4253
  return new Class2({
4114
4254
  type: "symbol",
4115
4255
  ...normalizeParams(params)
4116
4256
  });
4117
4257
  }
4258
+ // @__NO_SIDE_EFFECTS__
4118
4259
  function _undefined2(Class2, params) {
4119
4260
  return new Class2({
4120
4261
  type: "undefined",
4121
4262
  ...normalizeParams(params)
4122
4263
  });
4123
4264
  }
4265
+ // @__NO_SIDE_EFFECTS__
4124
4266
  function _null2(Class2, params) {
4125
4267
  return new Class2({
4126
4268
  type: "null",
4127
4269
  ...normalizeParams(params)
4128
4270
  });
4129
4271
  }
4272
+ // @__NO_SIDE_EFFECTS__
4130
4273
  function _any(Class2) {
4131
4274
  return new Class2({
4132
4275
  type: "any"
4133
4276
  });
4134
4277
  }
4278
+ // @__NO_SIDE_EFFECTS__
4135
4279
  function _unknown(Class2) {
4136
4280
  return new Class2({
4137
4281
  type: "unknown"
4138
4282
  });
4139
4283
  }
4284
+ // @__NO_SIDE_EFFECTS__
4140
4285
  function _never(Class2, params) {
4141
4286
  return new Class2({
4142
4287
  type: "never",
4143
4288
  ...normalizeParams(params)
4144
4289
  });
4145
4290
  }
4291
+ // @__NO_SIDE_EFFECTS__
4146
4292
  function _void(Class2, params) {
4147
4293
  return new Class2({
4148
4294
  type: "void",
4149
4295
  ...normalizeParams(params)
4150
4296
  });
4151
4297
  }
4298
+ // @__NO_SIDE_EFFECTS__
4152
4299
  function _date(Class2, params) {
4153
4300
  return new Class2({
4154
4301
  type: "date",
4155
4302
  ...normalizeParams(params)
4156
4303
  });
4157
4304
  }
4305
+ // @__NO_SIDE_EFFECTS__
4158
4306
  function _nan(Class2, params) {
4159
4307
  return new Class2({
4160
4308
  type: "nan",
4161
4309
  ...normalizeParams(params)
4162
4310
  });
4163
4311
  }
4312
+ // @__NO_SIDE_EFFECTS__
4164
4313
  function _lt(value, params) {
4165
4314
  return new $ZodCheckLessThan({
4166
4315
  check: "less_than",
@@ -4169,6 +4318,7 @@ function _lt(value, params) {
4169
4318
  inclusive: false
4170
4319
  });
4171
4320
  }
4321
+ // @__NO_SIDE_EFFECTS__
4172
4322
  function _lte(value, params) {
4173
4323
  return new $ZodCheckLessThan({
4174
4324
  check: "less_than",
@@ -4177,6 +4327,7 @@ function _lte(value, params) {
4177
4327
  inclusive: true
4178
4328
  });
4179
4329
  }
4330
+ // @__NO_SIDE_EFFECTS__
4180
4331
  function _gt(value, params) {
4181
4332
  return new $ZodCheckGreaterThan({
4182
4333
  check: "greater_than",
@@ -4185,6 +4336,7 @@ function _gt(value, params) {
4185
4336
  inclusive: false
4186
4337
  });
4187
4338
  }
4339
+ // @__NO_SIDE_EFFECTS__
4188
4340
  function _gte(value, params) {
4189
4341
  return new $ZodCheckGreaterThan({
4190
4342
  check: "greater_than",
@@ -4193,18 +4345,23 @@ function _gte(value, params) {
4193
4345
  inclusive: true
4194
4346
  });
4195
4347
  }
4348
+ // @__NO_SIDE_EFFECTS__
4196
4349
  function _positive(params) {
4197
- return _gt(0, params);
4350
+ return /* @__PURE__ */ _gt(0, params);
4198
4351
  }
4352
+ // @__NO_SIDE_EFFECTS__
4199
4353
  function _negative(params) {
4200
- return _lt(0, params);
4354
+ return /* @__PURE__ */ _lt(0, params);
4201
4355
  }
4356
+ // @__NO_SIDE_EFFECTS__
4202
4357
  function _nonpositive(params) {
4203
- return _lte(0, params);
4358
+ return /* @__PURE__ */ _lte(0, params);
4204
4359
  }
4360
+ // @__NO_SIDE_EFFECTS__
4205
4361
  function _nonnegative(params) {
4206
- return _gte(0, params);
4362
+ return /* @__PURE__ */ _gte(0, params);
4207
4363
  }
4364
+ // @__NO_SIDE_EFFECTS__
4208
4365
  function _multipleOf(value, params) {
4209
4366
  return new $ZodCheckMultipleOf({
4210
4367
  check: "multiple_of",
@@ -4212,6 +4369,7 @@ function _multipleOf(value, params) {
4212
4369
  value
4213
4370
  });
4214
4371
  }
4372
+ // @__NO_SIDE_EFFECTS__
4215
4373
  function _maxSize(maximum, params) {
4216
4374
  return new $ZodCheckMaxSize({
4217
4375
  check: "max_size",
@@ -4219,6 +4377,7 @@ function _maxSize(maximum, params) {
4219
4377
  maximum
4220
4378
  });
4221
4379
  }
4380
+ // @__NO_SIDE_EFFECTS__
4222
4381
  function _minSize(minimum, params) {
4223
4382
  return new $ZodCheckMinSize({
4224
4383
  check: "min_size",
@@ -4226,6 +4385,7 @@ function _minSize(minimum, params) {
4226
4385
  minimum
4227
4386
  });
4228
4387
  }
4388
+ // @__NO_SIDE_EFFECTS__
4229
4389
  function _size(size, params) {
4230
4390
  return new $ZodCheckSizeEquals({
4231
4391
  check: "size_equals",
@@ -4233,6 +4393,7 @@ function _size(size, params) {
4233
4393
  size
4234
4394
  });
4235
4395
  }
4396
+ // @__NO_SIDE_EFFECTS__
4236
4397
  function _maxLength(maximum, params) {
4237
4398
  const ch = new $ZodCheckMaxLength({
4238
4399
  check: "max_length",
@@ -4241,6 +4402,7 @@ function _maxLength(maximum, params) {
4241
4402
  });
4242
4403
  return ch;
4243
4404
  }
4405
+ // @__NO_SIDE_EFFECTS__
4244
4406
  function _minLength(minimum, params) {
4245
4407
  return new $ZodCheckMinLength({
4246
4408
  check: "min_length",
@@ -4248,6 +4410,7 @@ function _minLength(minimum, params) {
4248
4410
  minimum
4249
4411
  });
4250
4412
  }
4413
+ // @__NO_SIDE_EFFECTS__
4251
4414
  function _length(length, params) {
4252
4415
  return new $ZodCheckLengthEquals({
4253
4416
  check: "length_equals",
@@ -4255,6 +4418,7 @@ function _length(length, params) {
4255
4418
  length
4256
4419
  });
4257
4420
  }
4421
+ // @__NO_SIDE_EFFECTS__
4258
4422
  function _regex(pattern, params) {
4259
4423
  return new $ZodCheckRegex({
4260
4424
  check: "string_format",
@@ -4263,6 +4427,7 @@ function _regex(pattern, params) {
4263
4427
  pattern
4264
4428
  });
4265
4429
  }
4430
+ // @__NO_SIDE_EFFECTS__
4266
4431
  function _lowercase(params) {
4267
4432
  return new $ZodCheckLowerCase({
4268
4433
  check: "string_format",
@@ -4270,6 +4435,7 @@ function _lowercase(params) {
4270
4435
  ...normalizeParams(params)
4271
4436
  });
4272
4437
  }
4438
+ // @__NO_SIDE_EFFECTS__
4273
4439
  function _uppercase(params) {
4274
4440
  return new $ZodCheckUpperCase({
4275
4441
  check: "string_format",
@@ -4277,6 +4443,7 @@ function _uppercase(params) {
4277
4443
  ...normalizeParams(params)
4278
4444
  });
4279
4445
  }
4446
+ // @__NO_SIDE_EFFECTS__
4280
4447
  function _includes(includes, params) {
4281
4448
  return new $ZodCheckIncludes({
4282
4449
  check: "string_format",
@@ -4285,6 +4452,7 @@ function _includes(includes, params) {
4285
4452
  includes
4286
4453
  });
4287
4454
  }
4455
+ // @__NO_SIDE_EFFECTS__
4288
4456
  function _startsWith(prefix, params) {
4289
4457
  return new $ZodCheckStartsWith({
4290
4458
  check: "string_format",
@@ -4293,6 +4461,7 @@ function _startsWith(prefix, params) {
4293
4461
  prefix
4294
4462
  });
4295
4463
  }
4464
+ // @__NO_SIDE_EFFECTS__
4296
4465
  function _endsWith(suffix, params) {
4297
4466
  return new $ZodCheckEndsWith({
4298
4467
  check: "string_format",
@@ -4301,6 +4470,7 @@ function _endsWith(suffix, params) {
4301
4470
  suffix
4302
4471
  });
4303
4472
  }
4473
+ // @__NO_SIDE_EFFECTS__
4304
4474
  function _property(property, schema, params) {
4305
4475
  return new $ZodCheckProperty({
4306
4476
  check: "property",
@@ -4309,6 +4479,7 @@ function _property(property, schema, params) {
4309
4479
  ...normalizeParams(params)
4310
4480
  });
4311
4481
  }
4482
+ // @__NO_SIDE_EFFECTS__
4312
4483
  function _mime(types, params) {
4313
4484
  return new $ZodCheckMimeType({
4314
4485
  check: "mime_type",
@@ -4316,27 +4487,34 @@ function _mime(types, params) {
4316
4487
  ...normalizeParams(params)
4317
4488
  });
4318
4489
  }
4490
+ // @__NO_SIDE_EFFECTS__
4319
4491
  function _overwrite(tx) {
4320
4492
  return new $ZodCheckOverwrite({
4321
4493
  check: "overwrite",
4322
4494
  tx
4323
4495
  });
4324
4496
  }
4497
+ // @__NO_SIDE_EFFECTS__
4325
4498
  function _normalize(form) {
4326
- return _overwrite((input) => input.normalize(form));
4499
+ return /* @__PURE__ */ _overwrite((input) => input.normalize(form));
4327
4500
  }
4501
+ // @__NO_SIDE_EFFECTS__
4328
4502
  function _trim() {
4329
- return _overwrite((input) => input.trim());
4503
+ return /* @__PURE__ */ _overwrite((input) => input.trim());
4330
4504
  }
4505
+ // @__NO_SIDE_EFFECTS__
4331
4506
  function _toLowerCase() {
4332
- return _overwrite((input) => input.toLowerCase());
4507
+ return /* @__PURE__ */ _overwrite((input) => input.toLowerCase());
4333
4508
  }
4509
+ // @__NO_SIDE_EFFECTS__
4334
4510
  function _toUpperCase() {
4335
- return _overwrite((input) => input.toUpperCase());
4511
+ return /* @__PURE__ */ _overwrite((input) => input.toUpperCase());
4336
4512
  }
4513
+ // @__NO_SIDE_EFFECTS__
4337
4514
  function _slugify() {
4338
- return _overwrite((input) => slugify(input));
4515
+ return /* @__PURE__ */ _overwrite((input) => slugify(input));
4339
4516
  }
4517
+ // @__NO_SIDE_EFFECTS__
4340
4518
  function _array(Class2, element, params) {
4341
4519
  return new Class2({
4342
4520
  type: "array",
@@ -4347,12 +4525,14 @@ function _array(Class2, element, params) {
4347
4525
  ...normalizeParams(params)
4348
4526
  });
4349
4527
  }
4528
+ // @__NO_SIDE_EFFECTS__
4350
4529
  function _file(Class2, params) {
4351
4530
  return new Class2({
4352
4531
  type: "file",
4353
4532
  ...normalizeParams(params)
4354
4533
  });
4355
4534
  }
4535
+ // @__NO_SIDE_EFFECTS__
4356
4536
  function _custom(Class2, fn, _params) {
4357
4537
  const norm = normalizeParams(_params);
4358
4538
  norm.abort ?? (norm.abort = true);
@@ -4364,6 +4544,7 @@ function _custom(Class2, fn, _params) {
4364
4544
  });
4365
4545
  return schema;
4366
4546
  }
4547
+ // @__NO_SIDE_EFFECTS__
4367
4548
  function _refine(Class2, fn, _params) {
4368
4549
  const schema = new Class2({
4369
4550
  type: "custom",
@@ -4373,8 +4554,9 @@ function _refine(Class2, fn, _params) {
4373
4554
  });
4374
4555
  return schema;
4375
4556
  }
4557
+ // @__NO_SIDE_EFFECTS__
4376
4558
  function _superRefine(fn) {
4377
- const ch = _check((payload) => {
4559
+ const ch = /* @__PURE__ */ _check((payload) => {
4378
4560
  payload.addIssue = (issue2) => {
4379
4561
  if (typeof issue2 === "string") {
4380
4562
  payload.issues.push(issue(issue2, payload.value, ch._zod.def));
@@ -4393,6 +4575,7 @@ function _superRefine(fn) {
4393
4575
  });
4394
4576
  return ch;
4395
4577
  }
4578
+ // @__NO_SIDE_EFFECTS__
4396
4579
  function _check(fn, params) {
4397
4580
  const ch = new $ZodCheck({
4398
4581
  check: "custom",
@@ -4401,6 +4584,7 @@ function _check(fn, params) {
4401
4584
  ch._zod.check = fn;
4402
4585
  return ch;
4403
4586
  }
4587
+ // @__NO_SIDE_EFFECTS__
4404
4588
  function describe(description) {
4405
4589
  const ch = new $ZodCheck({ check: "describe" });
4406
4590
  ch._zod.onattach = [
@@ -4413,6 +4597,7 @@ function describe(description) {
4413
4597
  };
4414
4598
  return ch;
4415
4599
  }
4600
+ // @__NO_SIDE_EFFECTS__
4416
4601
  function meta(metadata) {
4417
4602
  const ch = new $ZodCheck({ check: "meta" });
4418
4603
  ch._zod.onattach = [
@@ -4425,6 +4610,7 @@ function meta(metadata) {
4425
4610
  };
4426
4611
  return ch;
4427
4612
  }
4613
+ // @__NO_SIDE_EFFECTS__
4428
4614
  function _stringbool(Classes, _params) {
4429
4615
  const params = normalizeParams(_params);
4430
4616
  let truthyArray = params.truthy ?? ["true", "1", "yes", "on", "y", "enabled"];
@@ -4475,6 +4661,7 @@ function _stringbool(Classes, _params) {
4475
4661
  });
4476
4662
  return codec2;
4477
4663
  }
4664
+ // @__NO_SIDE_EFFECTS__
4478
4665
  function _stringFormat(Class2, format, fnOrRegex, _params = {}) {
4479
4666
  const params = normalizeParams(_params);
4480
4667
  const def = {
@@ -4492,7 +4679,7 @@ function _stringFormat(Class2, format, fnOrRegex, _params = {}) {
4492
4679
  return inst;
4493
4680
  }
4494
4681
 
4495
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/to-json-schema.js
4682
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/to-json-schema.js
4496
4683
  function initializeContext(params) {
4497
4684
  let target = params?.target ?? "draft-2020-12";
4498
4685
  if (target === "draft-4")
@@ -4537,12 +4724,7 @@ function process2(schema, ctx, _params = { path: [], schemaPath: [] }) {
4537
4724
  schemaPath: [..._params.schemaPath, schema],
4538
4725
  path: _params.path
4539
4726
  };
4540
- const parent = schema._zod.parent;
4541
- if (parent) {
4542
- result.ref = parent;
4543
- process2(parent, ctx, params);
4544
- ctx.seen.get(parent).isParent = true;
4545
- } else if (schema._zod.processJSONSchema) {
4727
+ if (schema._zod.processJSONSchema) {
4546
4728
  schema._zod.processJSONSchema(ctx, result.schema, params);
4547
4729
  } else {
4548
4730
  const _json = result.schema;
@@ -4552,6 +4734,13 @@ function process2(schema, ctx, _params = { path: [], schemaPath: [] }) {
4552
4734
  }
4553
4735
  processor(schema, ctx, _json, params);
4554
4736
  }
4737
+ const parent = schema._zod.parent;
4738
+ if (parent) {
4739
+ if (!result.ref)
4740
+ result.ref = parent;
4741
+ process2(parent, ctx, params);
4742
+ ctx.seen.get(parent).isParent = true;
4743
+ }
4555
4744
  }
4556
4745
  const meta3 = ctx.metadataRegistry.get(schema);
4557
4746
  if (meta3)
@@ -4570,6 +4759,17 @@ function extractDefs(ctx, schema) {
4570
4759
  const root = ctx.seen.get(schema);
4571
4760
  if (!root)
4572
4761
  throw new Error("Unprocessed schema. This is a bug in Zod.");
4762
+ const idToSchema = /* @__PURE__ */ new Map();
4763
+ for (const entry of ctx.seen.entries()) {
4764
+ const id = ctx.metadataRegistry.get(entry[0])?.id;
4765
+ if (id) {
4766
+ const existing = idToSchema.get(id);
4767
+ if (existing && existing !== entry[0]) {
4768
+ throw new Error(`Duplicate schema id "${id}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);
4769
+ }
4770
+ idToSchema.set(id, entry[0]);
4771
+ }
4772
+ }
4573
4773
  const makeURI = (entry) => {
4574
4774
  const defsSegment = ctx.target === "draft-2020-12" ? "$defs" : "definitions";
4575
4775
  if (ctx.external) {
@@ -4651,30 +4851,65 @@ function finalize(ctx, schema) {
4651
4851
  throw new Error("Unprocessed schema. This is a bug in Zod.");
4652
4852
  const flattenRef = (zodSchema) => {
4653
4853
  const seen = ctx.seen.get(zodSchema);
4854
+ if (seen.ref === null)
4855
+ return;
4654
4856
  const schema2 = seen.def ?? seen.schema;
4655
4857
  const _cached = { ...schema2 };
4656
- if (seen.ref === null) {
4657
- return;
4658
- }
4659
4858
  const ref = seen.ref;
4660
4859
  seen.ref = null;
4661
4860
  if (ref) {
4662
4861
  flattenRef(ref);
4663
- const refSchema = ctx.seen.get(ref).schema;
4862
+ const refSeen = ctx.seen.get(ref);
4863
+ const refSchema = refSeen.schema;
4664
4864
  if (refSchema.$ref && (ctx.target === "draft-07" || ctx.target === "draft-04" || ctx.target === "openapi-3.0")) {
4665
4865
  schema2.allOf = schema2.allOf ?? [];
4666
4866
  schema2.allOf.push(refSchema);
4667
4867
  } else {
4668
4868
  Object.assign(schema2, refSchema);
4669
- Object.assign(schema2, _cached);
4869
+ }
4870
+ Object.assign(schema2, _cached);
4871
+ const isParentRef = zodSchema._zod.parent === ref;
4872
+ if (isParentRef) {
4873
+ for (const key in schema2) {
4874
+ if (key === "$ref" || key === "allOf")
4875
+ continue;
4876
+ if (!(key in _cached)) {
4877
+ delete schema2[key];
4878
+ }
4879
+ }
4880
+ }
4881
+ if (refSchema.$ref) {
4882
+ for (const key in schema2) {
4883
+ if (key === "$ref" || key === "allOf")
4884
+ continue;
4885
+ if (key in refSeen.def && JSON.stringify(schema2[key]) === JSON.stringify(refSeen.def[key])) {
4886
+ delete schema2[key];
4887
+ }
4888
+ }
4670
4889
  }
4671
4890
  }
4672
- if (!seen.isParent)
4673
- ctx.override({
4674
- zodSchema,
4675
- jsonSchema: schema2,
4676
- path: seen.path ?? []
4677
- });
4891
+ const parent = zodSchema._zod.parent;
4892
+ if (parent && parent !== ref) {
4893
+ flattenRef(parent);
4894
+ const parentSeen = ctx.seen.get(parent);
4895
+ if (parentSeen?.schema.$ref) {
4896
+ schema2.$ref = parentSeen.schema.$ref;
4897
+ if (parentSeen.def) {
4898
+ for (const key in schema2) {
4899
+ if (key === "$ref" || key === "allOf")
4900
+ continue;
4901
+ if (key in parentSeen.def && JSON.stringify(schema2[key]) === JSON.stringify(parentSeen.def[key])) {
4902
+ delete schema2[key];
4903
+ }
4904
+ }
4905
+ }
4906
+ }
4907
+ }
4908
+ ctx.override({
4909
+ zodSchema,
4910
+ jsonSchema: schema2,
4911
+ path: seen.path ?? []
4912
+ });
4678
4913
  };
4679
4914
  for (const entry of [...ctx.seen.entries()].reverse()) {
4680
4915
  flattenRef(entry[0]);
@@ -4719,8 +4954,8 @@ function finalize(ctx, schema) {
4719
4954
  value: {
4720
4955
  ...schema["~standard"],
4721
4956
  jsonSchema: {
4722
- input: createStandardJSONSchemaMethod(schema, "input"),
4723
- output: createStandardJSONSchemaMethod(schema, "output")
4957
+ input: createStandardJSONSchemaMethod(schema, "input", ctx.processors),
4958
+ output: createStandardJSONSchemaMethod(schema, "output", ctx.processors)
4724
4959
  }
4725
4960
  },
4726
4961
  enumerable: false,
@@ -4788,15 +5023,15 @@ var createToJSONSchemaMethod = (schema, processors = {}) => (params) => {
4788
5023
  extractDefs(ctx, schema);
4789
5024
  return finalize(ctx, schema);
4790
5025
  };
4791
- var createStandardJSONSchemaMethod = (schema, io) => (params) => {
5026
+ var createStandardJSONSchemaMethod = (schema, io, processors = {}) => (params) => {
4792
5027
  const { libraryOptions, target } = params ?? {};
4793
- const ctx = initializeContext({ ...libraryOptions ?? {}, target, io, processors: {} });
5028
+ const ctx = initializeContext({ ...libraryOptions ?? {}, target, io, processors });
4794
5029
  process2(schema, ctx);
4795
5030
  extractDefs(ctx, schema);
4796
5031
  return finalize(ctx, schema);
4797
5032
  };
4798
5033
 
4799
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/core/json-schema-processors.js
5034
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/core/json-schema-processors.js
4800
5035
  var formatMap = {
4801
5036
  guid: "uuid",
4802
5037
  url: "uri",
@@ -4817,6 +5052,9 @@ var stringProcessor = (schema, ctx, _json, _params) => {
4817
5052
  json2.format = formatMap[format] ?? format;
4818
5053
  if (json2.format === "")
4819
5054
  delete json2.format;
5055
+ if (format === "time") {
5056
+ delete json2.format;
5057
+ }
4820
5058
  }
4821
5059
  if (contentEncoding)
4822
5060
  json2.contentEncoding = contentEncoding;
@@ -5001,10 +5239,8 @@ var fileProcessor = (schema, _ctx, json2, _params) => {
5001
5239
  file2.contentMediaType = mime[0];
5002
5240
  Object.assign(_json, file2);
5003
5241
  } else {
5004
- _json.anyOf = mime.map((m) => {
5005
- const mFile = { ...file2, contentMediaType: m };
5006
- return mFile;
5007
- });
5242
+ Object.assign(_json, file2);
5243
+ _json.anyOf = mime.map((m) => ({ contentMediaType: m }));
5008
5244
  }
5009
5245
  } else {
5010
5246
  Object.assign(_json, file2);
@@ -5161,16 +5397,37 @@ var recordProcessor = (schema, ctx, _json, params) => {
5161
5397
  const json2 = _json;
5162
5398
  const def = schema._zod.def;
5163
5399
  json2.type = "object";
5164
- if (ctx.target === "draft-07" || ctx.target === "draft-2020-12") {
5165
- json2.propertyNames = process2(def.keyType, ctx, {
5400
+ const keyType = def.keyType;
5401
+ const keyBag = keyType._zod.bag;
5402
+ const patterns = keyBag?.patterns;
5403
+ if (def.mode === "loose" && patterns && patterns.size > 0) {
5404
+ const valueSchema = process2(def.valueType, ctx, {
5166
5405
  ...params,
5167
- path: [...params.path, "propertyNames"]
5406
+ path: [...params.path, "patternProperties", "*"]
5407
+ });
5408
+ json2.patternProperties = {};
5409
+ for (const pattern of patterns) {
5410
+ json2.patternProperties[pattern.source] = valueSchema;
5411
+ }
5412
+ } else {
5413
+ if (ctx.target === "draft-07" || ctx.target === "draft-2020-12") {
5414
+ json2.propertyNames = process2(def.keyType, ctx, {
5415
+ ...params,
5416
+ path: [...params.path, "propertyNames"]
5417
+ });
5418
+ }
5419
+ json2.additionalProperties = process2(def.valueType, ctx, {
5420
+ ...params,
5421
+ path: [...params.path, "additionalProperties"]
5168
5422
  });
5169
5423
  }
5170
- json2.additionalProperties = process2(def.valueType, ctx, {
5171
- ...params,
5172
- path: [...params.path, "additionalProperties"]
5173
- });
5424
+ const keyValues = keyType._zod.values;
5425
+ if (keyValues) {
5426
+ const validKeyValues = [...keyValues].filter((v) => typeof v === "string" || typeof v === "number");
5427
+ if (validKeyValues.length > 0) {
5428
+ json2.required = validKeyValues;
5429
+ }
5430
+ }
5174
5431
  };
5175
5432
  var nullableProcessor = (schema, ctx, json2, params) => {
5176
5433
  const def = schema._zod.def;
@@ -5325,7 +5582,7 @@ function toJSONSchema(input, params) {
5325
5582
  return finalize(ctx, input);
5326
5583
  }
5327
5584
 
5328
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/schemas.js
5585
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/schemas.js
5329
5586
  var schemas_exports2 = {};
5330
5587
  __export(schemas_exports2, {
5331
5588
  ZodAny: () => ZodAny,
@@ -5350,6 +5607,7 @@ __export(schemas_exports2, {
5350
5607
  ZodEmail: () => ZodEmail,
5351
5608
  ZodEmoji: () => ZodEmoji,
5352
5609
  ZodEnum: () => ZodEnum,
5610
+ ZodExactOptional: () => ZodExactOptional,
5353
5611
  ZodFile: () => ZodFile,
5354
5612
  ZodFunction: () => ZodFunction,
5355
5613
  ZodGUID: () => ZodGUID,
@@ -5419,6 +5677,7 @@ __export(schemas_exports2, {
5419
5677
  email: () => email2,
5420
5678
  emoji: () => emoji2,
5421
5679
  enum: () => _enum,
5680
+ exactOptional: () => exactOptional,
5422
5681
  file: () => file,
5423
5682
  float32: () => float32,
5424
5683
  float64: () => float64,
@@ -5492,7 +5751,7 @@ __export(schemas_exports2, {
5492
5751
  xor: () => xor
5493
5752
  });
5494
5753
 
5495
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/checks.js
5754
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/checks.js
5496
5755
  var checks_exports2 = {};
5497
5756
  __export(checks_exports2, {
5498
5757
  endsWith: () => _endsWith,
@@ -5526,7 +5785,7 @@ __export(checks_exports2, {
5526
5785
  uppercase: () => _uppercase
5527
5786
  });
5528
5787
 
5529
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/iso.js
5788
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/iso.js
5530
5789
  var iso_exports = {};
5531
5790
  __export(iso_exports, {
5532
5791
  ZodISODate: () => ZodISODate,
@@ -5567,7 +5826,7 @@ function duration2(params) {
5567
5826
  return _isoDuration(ZodISODuration, params);
5568
5827
  }
5569
5828
 
5570
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/errors.js
5829
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/errors.js
5571
5830
  var initializer2 = (inst, issues) => {
5572
5831
  $ZodError.init(inst, issues);
5573
5832
  inst.name = "ZodError";
@@ -5607,7 +5866,7 @@ var ZodRealError = $constructor("ZodError", initializer2, {
5607
5866
  Parent: Error
5608
5867
  });
5609
5868
 
5610
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/parse.js
5869
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/parse.js
5611
5870
  var parse2 = /* @__PURE__ */ _parse(ZodRealError);
5612
5871
  var parseAsync2 = /* @__PURE__ */ _parseAsync(ZodRealError);
5613
5872
  var safeParse2 = /* @__PURE__ */ _safeParse(ZodRealError);
@@ -5621,7 +5880,7 @@ var safeDecode = /* @__PURE__ */ _safeDecode(ZodRealError);
5621
5880
  var safeEncodeAsync = /* @__PURE__ */ _safeEncodeAsync(ZodRealError);
5622
5881
  var safeDecodeAsync = /* @__PURE__ */ _safeDecodeAsync(ZodRealError);
5623
5882
 
5624
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/schemas.js
5883
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/schemas.js
5625
5884
  var ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
5626
5885
  $ZodType.init(inst, def);
5627
5886
  Object.assign(inst["~standard"], {
@@ -5640,8 +5899,11 @@ var ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
5640
5899
  ...def.checks ?? [],
5641
5900
  ...checks.map((ch) => typeof ch === "function" ? { _zod: { check: ch, def: { check: "custom" }, onattach: [] } } : ch)
5642
5901
  ]
5643
- }));
5902
+ }), {
5903
+ parent: true
5904
+ });
5644
5905
  };
5906
+ inst.with = inst.check;
5645
5907
  inst.clone = (def2, params) => clone(inst, def2, params);
5646
5908
  inst.brand = () => inst;
5647
5909
  inst.register = ((reg, meta3) => {
@@ -5665,6 +5927,7 @@ var ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
5665
5927
  inst.superRefine = (refinement) => inst.check(superRefine(refinement));
5666
5928
  inst.overwrite = (fn) => inst.check(_overwrite(fn));
5667
5929
  inst.optional = () => optional(inst);
5930
+ inst.exactOptional = () => exactOptional(inst);
5668
5931
  inst.nullable = () => nullable(inst);
5669
5932
  inst.nullish = () => optional(nullable(inst));
5670
5933
  inst.nonoptional = (params) => nonoptional(inst, params);
@@ -5698,6 +5961,7 @@ var ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
5698
5961
  };
5699
5962
  inst.isOptional = () => inst.safeParse(void 0).success;
5700
5963
  inst.isNullable = () => inst.safeParse(null).success;
5964
+ inst.apply = (fn) => fn(inst);
5701
5965
  return inst;
5702
5966
  });
5703
5967
  var _ZodString = /* @__PURE__ */ $constructor("_ZodString", (inst, def) => {
@@ -6277,6 +6541,10 @@ var ZodMap = /* @__PURE__ */ $constructor("ZodMap", (inst, def) => {
6277
6541
  inst._zod.processJSONSchema = (ctx, json2, params) => mapProcessor(inst, ctx, json2, params);
6278
6542
  inst.keyType = def.keyType;
6279
6543
  inst.valueType = def.valueType;
6544
+ inst.min = (...args) => inst.check(_minSize(...args));
6545
+ inst.nonempty = (params) => inst.check(_minSize(1, params));
6546
+ inst.max = (...args) => inst.check(_maxSize(...args));
6547
+ inst.size = (...args) => inst.check(_size(...args));
6280
6548
  });
6281
6549
  function map(keyType, valueType, params) {
6282
6550
  return new ZodMap({
@@ -6437,6 +6705,18 @@ function optional(innerType) {
6437
6705
  innerType
6438
6706
  });
6439
6707
  }
6708
+ var ZodExactOptional = /* @__PURE__ */ $constructor("ZodExactOptional", (inst, def) => {
6709
+ $ZodExactOptional.init(inst, def);
6710
+ ZodType.init(inst, def);
6711
+ inst._zod.processJSONSchema = (ctx, json2, params) => optionalProcessor(inst, ctx, json2, params);
6712
+ inst.unwrap = () => inst._zod.def.innerType;
6713
+ });
6714
+ function exactOptional(innerType) {
6715
+ return new ZodExactOptional({
6716
+ type: "optional",
6717
+ innerType
6718
+ });
6719
+ }
6440
6720
  var ZodNullable = /* @__PURE__ */ $constructor("ZodNullable", (inst, def) => {
6441
6721
  $ZodNullable.init(inst, def);
6442
6722
  ZodType.init(inst, def);
@@ -6642,9 +6922,7 @@ function superRefine(fn) {
6642
6922
  }
6643
6923
  var describe2 = describe;
6644
6924
  var meta2 = meta;
6645
- function _instanceof(cls, params = {
6646
- error: `Input not instance of ${cls.name}`
6647
- }) {
6925
+ function _instanceof(cls, params = {}) {
6648
6926
  const inst = new ZodCustom({
6649
6927
  type: "custom",
6650
6928
  check: "custom",
@@ -6653,6 +6931,17 @@ function _instanceof(cls, params = {
6653
6931
  ...util_exports.normalizeParams(params)
6654
6932
  });
6655
6933
  inst._zod.bag.Class = cls;
6934
+ inst._zod.check = (payload) => {
6935
+ if (!(payload.value instanceof cls)) {
6936
+ payload.issues.push({
6937
+ code: "invalid_type",
6938
+ expected: cls.name,
6939
+ input: payload.value,
6940
+ inst,
6941
+ path: [...inst._zod.def.path ?? []]
6942
+ });
6943
+ }
6944
+ };
6656
6945
  return inst;
6657
6946
  }
6658
6947
  var stringbool = (...args) => _stringbool({
@@ -6670,19 +6959,19 @@ function preprocess(fn, schema) {
6670
6959
  return pipe(transform(fn), schema);
6671
6960
  }
6672
6961
 
6673
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/compat.js
6962
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/compat.js
6674
6963
  var ZodFirstPartyTypeKind;
6675
6964
  /* @__PURE__ */ (function(ZodFirstPartyTypeKind2) {
6676
6965
  })(ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {}));
6677
6966
 
6678
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/from-json-schema.js
6967
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/from-json-schema.js
6679
6968
  var z = {
6680
6969
  ...schemas_exports2,
6681
6970
  ...checks_exports2,
6682
6971
  iso: iso_exports
6683
6972
  };
6684
6973
 
6685
- // ../../node_modules/.pnpm/zod@4.2.1/node_modules/zod/v4/classic/external.js
6974
+ // ../../node_modules/.pnpm/zod@4.3.5/node_modules/zod/v4/classic/external.js
6686
6975
  config(en_default());
6687
6976
 
6688
6977
  // scripts/json.ts