@go-labs-sg/registration 1.2.1 → 1.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +1505 -724
  2. package/package.json +6 -1
package/dist/index.js CHANGED
@@ -409,12 +409,13 @@ var createPkcePair = () => {
409
409
  verifier
410
410
  };
411
411
  };
412
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/external.js
412
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/external.js
413
413
  var exports_external = {};
414
414
  __export(exports_external, {
415
415
  $brand: () => $brand,
416
416
  $input: () => $input,
417
417
  $output: () => $output,
418
+ INVALID: () => INVALID,
418
419
  NEVER: () => NEVER,
419
420
  TimePrecision: () => TimePrecision,
420
421
  ZodAny: () => ZodAny,
@@ -448,12 +449,14 @@ __export(exports_external, {
448
449
  ZodFirstPartyTypeKind: () => ZodFirstPartyTypeKind,
449
450
  ZodFunction: () => ZodFunction,
450
451
  ZodGUID: () => ZodGUID,
452
+ ZodIBAN: () => ZodIBAN,
451
453
  ZodIPv4: () => ZodIPv4,
452
454
  ZodIPv6: () => ZodIPv6,
453
455
  ZodISODate: () => ZodISODate,
454
456
  ZodISODateTime: () => ZodISODateTime,
455
457
  ZodISODuration: () => ZodISODuration,
456
458
  ZodISOTime: () => ZodISOTime,
459
+ ZodInstanceOf: () => ZodInstanceOf,
457
460
  ZodIntersection: () => ZodIntersection,
458
461
  ZodIssueCode: () => ZodIssueCode,
459
462
  ZodJWT: () => ZodJWT,
@@ -519,6 +522,7 @@ __export(exports_external, {
519
522
  creditCard: () => creditCard2,
520
523
  cuid: () => cuid3,
521
524
  cuid2: () => cuid22,
525
+ currencyCode: () => currencyCode2,
522
526
  custom: () => custom,
523
527
  date: () => date2,
524
528
  decode: () => decode2,
@@ -551,6 +555,7 @@ __export(exports_external, {
551
555
  hex: () => hex2,
552
556
  hostname: () => hostname2,
553
557
  httpUrl: () => httpUrl,
558
+ iban: () => iban2,
554
559
  includes: () => _includes,
555
560
  input: () => input,
556
561
  instanceof: () => _instanceof,
@@ -662,11 +667,12 @@ __export(exports_external, {
662
667
  validate: () => validate,
663
668
  validateAsync: () => validateAsync,
664
669
  void: () => _void2,
670
+ withParser: () => withParser,
665
671
  xid: () => xid2,
666
672
  xor: () => xor
667
673
  });
668
674
 
669
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/index.js
675
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/index.js
670
676
  var exports_core2 = {};
671
677
  __export(exports_core2, {
672
678
  $ZodAny: () => $ZodAny,
@@ -698,6 +704,7 @@ __export(exports_core2, {
698
704
  $ZodCheckMultipleOf: () => $ZodCheckMultipleOf,
699
705
  $ZodCheckNumberFormat: () => $ZodCheckNumberFormat,
700
706
  $ZodCheckOverwrite: () => $ZodCheckOverwrite,
707
+ $ZodCheckProperties: () => $ZodCheckProperties,
701
708
  $ZodCheckProperty: () => $ZodCheckProperty,
702
709
  $ZodCheckRegex: () => $ZodCheckRegex,
703
710
  $ZodCheckSizeEquals: () => $ZodCheckSizeEquals,
@@ -722,6 +729,7 @@ __export(exports_core2, {
722
729
  $ZodFile: () => $ZodFile,
723
730
  $ZodFunction: () => $ZodFunction,
724
731
  $ZodGUID: () => $ZodGUID,
732
+ $ZodIBAN: () => $ZodIBAN,
725
733
  $ZodIPv4: () => $ZodIPv4,
726
734
  $ZodIPv6: () => $ZodIPv6,
727
735
  $ZodISODate: () => $ZodISODate,
@@ -823,6 +831,7 @@ __export(exports_core2, {
823
831
  _gt: () => _gt,
824
832
  _gte: () => _gte,
825
833
  _guid: () => _guid,
834
+ _iban: () => _iban,
826
835
  _includes: () => _includes,
827
836
  _int: () => _int,
828
837
  _int32: () => _int32,
@@ -914,6 +923,9 @@ __export(exports_core2, {
914
923
  _void: () => _void,
915
924
  _xid: () => _xid,
916
925
  _xor: () => _xor,
926
+ base64Charset: () => base64Charset,
927
+ base64urlCharset: () => base64urlCharset,
928
+ canParseURL: () => canParseURL,
917
929
  clone: () => clone,
918
930
  compile: () => compile,
919
931
  compileFn: () => compileFn,
@@ -940,6 +952,7 @@ __export(exports_core2, {
940
952
  isValidBase64URL: () => isValidBase64URL,
941
953
  isValidCIDRv6: () => isValidCIDRv6,
942
954
  isValidCreditCard: () => isValidCreditCard,
955
+ isValidIBAN: () => isValidIBAN,
943
956
  isValidIPv6: () => isValidIPv6,
944
957
  isValidJWT: () => isValidJWT,
945
958
  locales: () => exports_locales,
@@ -950,7 +963,8 @@ __export(exports_core2, {
950
963
  parseAsync: () => parseAsync,
951
964
  parseURLObject: () => parseURLObject,
952
965
  prettifyError: () => prettifyError,
953
- process: () => process2,
966
+ process: () => processSchema,
967
+ processSchema: () => processSchema,
954
968
  regexes: () => exports_regexes,
955
969
  registry: () => registry,
956
970
  safeDecode: () => safeDecode,
@@ -970,10 +984,12 @@ __export(exports_core2, {
970
984
  util: () => exports_util,
971
985
  validate: () => validate,
972
986
  validateAsync: () => validateAsync,
973
- version: () => version
987
+ validateURL: () => validateURL,
988
+ version: () => version,
989
+ withParser: () => withParser
974
990
  });
975
991
 
976
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/util.js
992
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/util.js
977
993
  var exports_util = {};
978
994
  __export(exports_util, {
979
995
  BIGINT_FORMAT_RANGES: () => BIGINT_FORMAT_RANGES,
@@ -1002,6 +1018,7 @@ __export(exports_util, {
1002
1018
  createTransparentProxy: () => createTransparentProxy,
1003
1019
  defineLazy: () => defineLazy,
1004
1020
  defineLazyInternal: () => defineLazyInternal,
1021
+ derived: () => derived,
1005
1022
  esc: () => esc,
1006
1023
  escapeRegex: () => escapeRegex,
1007
1024
  explicitlyAborted: () => explicitlyAborted,
@@ -1039,6 +1056,7 @@ __export(exports_util, {
1039
1056
  promiseAllObject: () => promiseAllObject,
1040
1057
  propertyKeyTypes: () => propertyKeyTypes,
1041
1058
  randomString: () => randomString,
1059
+ rawShape: () => rawShape,
1042
1060
  required: () => required,
1043
1061
  safeExtend: () => safeExtend,
1044
1062
  shallowClone: () => shallowClone,
@@ -1077,18 +1095,23 @@ function jsonStringifyReplacer(_, value) {
1077
1095
  return value.toString();
1078
1096
  return value;
1079
1097
  }
1080
- function cached(getter) {
1081
- const set = false;
1082
- return {
1083
- get value() {
1084
- if (!set) {
1085
- const value = getter();
1086
- Object.defineProperty(this, "value", { value });
1087
- return value;
1088
- }
1089
- throw new Error("cached value already set");
1098
+
1099
+ class Cached {
1100
+ constructor(getter) {
1101
+ this._getter = getter;
1102
+ this._value = undefined;
1103
+ }
1104
+ get value() {
1105
+ const getter = this._getter;
1106
+ if (getter !== undefined) {
1107
+ this._value = getter();
1108
+ this._getter = undefined;
1090
1109
  }
1091
- };
1110
+ return this._value;
1111
+ }
1112
+ }
1113
+ function cached(getter) {
1114
+ return new Cached(getter);
1092
1115
  }
1093
1116
  function nullish(input) {
1094
1117
  return input === null || input === undefined;
@@ -1139,6 +1162,56 @@ function assignProp(target, prop, value) {
1139
1162
  configurable: true
1140
1163
  });
1141
1164
  }
1165
+ function rawShape(def) {
1166
+ const desc = Object.getOwnPropertyDescriptor(def, "shape");
1167
+ return desc?.get ? desc.get.raw : desc?.value;
1168
+ }
1169
+ function sourceShape(schema) {
1170
+ return rawShape(schema._zod.def) ?? schema._zod.def.shape;
1171
+ }
1172
+ function deferProp(target, key, getter) {
1173
+ Object.defineProperty(target, key, {
1174
+ get() {
1175
+ const value = getter();
1176
+ assignProp(this, key, value);
1177
+ return value;
1178
+ },
1179
+ enumerable: true,
1180
+ configurable: true
1181
+ });
1182
+ }
1183
+ function putProp(target, key, value) {
1184
+ if (key in target)
1185
+ assignProp(target, key, value);
1186
+ else
1187
+ target[key] = value;
1188
+ }
1189
+ function mirrorShape(target, source, keys, wrap) {
1190
+ const raw = sourceShape(source);
1191
+ for (const key of keys) {
1192
+ const desc = Object.getOwnPropertyDescriptor(raw, key);
1193
+ if (!desc.enumerable)
1194
+ continue;
1195
+ if (desc.get) {
1196
+ deferProp(target, key, () => {
1197
+ const value = source._zod.def.shape[key];
1198
+ return wrap ? wrap(value, key) : value;
1199
+ });
1200
+ } else
1201
+ putProp(target, key, wrap ? wrap(desc.value, key) : desc.value);
1202
+ }
1203
+ }
1204
+ function mirrorProps(target, source) {
1205
+ for (const key of Reflect.ownKeys(source)) {
1206
+ const desc = Object.getOwnPropertyDescriptor(source, key);
1207
+ if (!desc.enumerable)
1208
+ continue;
1209
+ if (desc.get)
1210
+ deferProp(target, key, () => source[key]);
1211
+ else
1212
+ putProp(target, key, desc.value);
1213
+ }
1214
+ }
1142
1215
  function mergeDefs(...defs) {
1143
1216
  const mergedDescriptors = {};
1144
1217
  for (const def of defs) {
@@ -1376,23 +1449,21 @@ function pick(schema, mask) {
1376
1449
  if (hasChecks) {
1377
1450
  throw new Error(".pick() cannot be used on object schemas containing refinements");
1378
1451
  }
1379
- const def = mergeDefs(schema._zod.def, {
1380
- get shape() {
1381
- const newShape = {};
1382
- for (const key of Reflect.ownKeys(mask)) {
1383
- if (!Object.prototype.hasOwnProperty.call(currDef.shape, key)) {
1384
- throw new Error(`Unrecognized key: "${String(key)}"`);
1385
- }
1386
- if (!mask[key])
1387
- continue;
1388
- assignProp(newShape, key, currDef.shape[key]);
1389
- }
1390
- assignProp(this, "shape", newShape);
1391
- return newShape;
1392
- },
1393
- checks: []
1394
- });
1395
- return clone(schema, def);
1452
+ const newShape = {};
1453
+ mirrorShape(newShape, schema, maskedKeys(schema, mask));
1454
+ return clone(schema, mergeDefs(currDef, { shape: newShape, checks: [] }));
1455
+ }
1456
+ function maskedKeys(schema, mask) {
1457
+ const raw = sourceShape(schema);
1458
+ const keys = [];
1459
+ for (const key of Reflect.ownKeys(mask)) {
1460
+ if (!Object.getOwnPropertyDescriptor(raw, key)?.enumerable) {
1461
+ throw new Error(`Unrecognized key: "${String(key)}"`);
1462
+ }
1463
+ if (mask[key])
1464
+ keys.push(key);
1465
+ }
1466
+ return keys;
1396
1467
  }
1397
1468
  function omit(schema, mask) {
1398
1469
  const currDef = schema._zod.def;
@@ -1401,23 +1472,10 @@ function omit(schema, mask) {
1401
1472
  if (hasChecks) {
1402
1473
  throw new Error(".omit() cannot be used on object schemas containing refinements");
1403
1474
  }
1404
- const def = mergeDefs(schema._zod.def, {
1405
- get shape() {
1406
- const newShape = { ...schema._zod.def.shape };
1407
- for (const key of Reflect.ownKeys(mask)) {
1408
- if (!Object.prototype.hasOwnProperty.call(currDef.shape, key)) {
1409
- throw new Error(`Unrecognized key: "${String(key)}"`);
1410
- }
1411
- if (!mask[key])
1412
- continue;
1413
- delete newShape[key];
1414
- }
1415
- assignProp(this, "shape", newShape);
1416
- return newShape;
1417
- },
1418
- checks: []
1419
- });
1420
- return clone(schema, def);
1475
+ const omitted = new Set(maskedKeys(schema, mask));
1476
+ const newShape = {};
1477
+ mirrorShape(newShape, schema, Reflect.ownKeys(sourceShape(schema)).filter((key) => !omitted.has(key)));
1478
+ return clone(schema, mergeDefs(currDef, { shape: newShape, checks: [] }));
1421
1479
  }
1422
1480
  function extend(schema, shape) {
1423
1481
  if (!isPlainObject(shape)) {
@@ -1426,34 +1484,26 @@ function extend(schema, shape) {
1426
1484
  const checks = schema._zod.def.checks;
1427
1485
  const hasChecks = checks && checks.length > 0;
1428
1486
  if (hasChecks) {
1429
- const existingShape = schema._zod.def.shape;
1487
+ const existingShape = sourceShape(schema);
1430
1488
  for (const key of Reflect.ownKeys(shape)) {
1431
1489
  if (Object.getOwnPropertyDescriptor(existingShape, key) !== undefined) {
1432
1490
  throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.");
1433
1491
  }
1434
1492
  }
1435
1493
  }
1436
- const def = mergeDefs(schema._zod.def, {
1437
- get shape() {
1438
- const _shape = { ...schema._zod.def.shape, ...shape };
1439
- assignProp(this, "shape", _shape);
1440
- return _shape;
1441
- }
1442
- });
1443
- return clone(schema, def);
1494
+ return clone(schema, mergeDefs(schema._zod.def, { shape: extended(schema, shape) }));
1495
+ }
1496
+ function extended(schema, shape) {
1497
+ const newShape = {};
1498
+ mirrorShape(newShape, schema, Reflect.ownKeys(sourceShape(schema)));
1499
+ mirrorProps(newShape, shape);
1500
+ return newShape;
1444
1501
  }
1445
1502
  function safeExtend(schema, shape) {
1446
1503
  if (!isPlainObject(shape)) {
1447
1504
  throw new Error("Invalid input to safeExtend: expected a plain object");
1448
1505
  }
1449
- const def = mergeDefs(schema._zod.def, {
1450
- get shape() {
1451
- const _shape = { ...schema._zod.def.shape, ...shape };
1452
- assignProp(this, "shape", _shape);
1453
- return _shape;
1454
- }
1455
- });
1456
- return clone(schema, def);
1506
+ return clone(schema, mergeDefs(schema._zod.def, { shape: extended(schema, shape) }));
1457
1507
  }
1458
1508
  function merge(a, b) {
1459
1509
  if (!b?._zod?.def) {
@@ -1462,12 +1512,11 @@ function merge(a, b) {
1462
1512
  if (a._zod.def.checks?.length) {
1463
1513
  throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");
1464
1514
  }
1515
+ const newShape = {};
1516
+ mirrorShape(newShape, a, Reflect.ownKeys(sourceShape(a)));
1517
+ mirrorShape(newShape, b, Reflect.ownKeys(sourceShape(b)));
1465
1518
  const def = mergeDefs(a._zod.def, {
1466
- get shape() {
1467
- const _shape = { ...a._zod.def.shape, ...b._zod.def.shape };
1468
- assignProp(this, "shape", _shape);
1469
- return _shape;
1470
- },
1519
+ shape: newShape,
1471
1520
  get catchall() {
1472
1521
  return b._zod.def.catchall;
1473
1522
  },
@@ -1482,67 +1531,16 @@ function partial(Class, schema, mask, name = "partial") {
1482
1531
  if (hasChecks) {
1483
1532
  throw new Error(`.${name}() cannot be used on object schemas containing refinements`);
1484
1533
  }
1485
- const def = mergeDefs(schema._zod.def, {
1486
- get shape() {
1487
- const oldShape = schema._zod.def.shape;
1488
- const shape = { ...oldShape };
1489
- if (mask) {
1490
- for (const key of Reflect.ownKeys(mask)) {
1491
- if (!Object.prototype.hasOwnProperty.call(oldShape, key)) {
1492
- throw new Error(`Unrecognized key: "${String(key)}"`);
1493
- }
1494
- if (!mask[key])
1495
- continue;
1496
- shape[key] = Class ? new Class({
1497
- type: "optional",
1498
- innerType: oldShape[key]
1499
- }) : oldShape[key];
1500
- }
1501
- } else {
1502
- for (const key of Reflect.ownKeys(oldShape)) {
1503
- shape[key] = Class ? new Class({
1504
- type: "optional",
1505
- innerType: oldShape[key]
1506
- }) : oldShape[key];
1507
- }
1508
- }
1509
- assignProp(this, "shape", shape);
1510
- return shape;
1511
- },
1512
- checks: []
1513
- });
1514
- return clone(schema, def);
1534
+ const selected = mask ? new Set(maskedKeys(schema, mask)) : undefined;
1535
+ const newShape = {};
1536
+ mirrorShape(newShape, schema, Reflect.ownKeys(sourceShape(schema)), Class && ((value, key) => selected && !selected.has(key) ? value : new Class({ type: "optional", innerType: value })));
1537
+ return clone(schema, mergeDefs(schema._zod.def, { shape: newShape, checks: [] }));
1515
1538
  }
1516
1539
  function required(Class, schema, mask) {
1517
- const def = mergeDefs(schema._zod.def, {
1518
- get shape() {
1519
- const oldShape = schema._zod.def.shape;
1520
- const shape = { ...oldShape };
1521
- if (mask) {
1522
- for (const key of Reflect.ownKeys(mask)) {
1523
- if (!Object.prototype.hasOwnProperty.call(shape, key)) {
1524
- throw new Error(`Unrecognized key: "${String(key)}"`);
1525
- }
1526
- if (!mask[key])
1527
- continue;
1528
- shape[key] = new Class({
1529
- type: "nonoptional",
1530
- innerType: oldShape[key]
1531
- });
1532
- }
1533
- } else {
1534
- for (const key of Reflect.ownKeys(oldShape)) {
1535
- shape[key] = new Class({
1536
- type: "nonoptional",
1537
- innerType: oldShape[key]
1538
- });
1539
- }
1540
- }
1541
- assignProp(this, "shape", shape);
1542
- return shape;
1543
- }
1544
- });
1545
- return clone(schema, def);
1540
+ const selected = mask ? new Set(maskedKeys(schema, mask)) : undefined;
1541
+ const newShape = {};
1542
+ mirrorShape(newShape, schema, Reflect.ownKeys(sourceShape(schema)), (value, key) => selected && !selected.has(key) ? value : new Class({ type: "nonoptional", innerType: value }));
1543
+ return clone(schema, mergeDefs(schema._zod.def, { shape: newShape }));
1546
1544
  }
1547
1545
  function aborted(x, startIndex = 0) {
1548
1546
  if (x.aborted === true)
@@ -1592,13 +1590,18 @@ function finalizeIssue(iss, ctx, config2) {
1592
1590
  }
1593
1591
  const schemaError = iss.schema !== iss.inst ? iss.schema?._zod.def?.error : undefined;
1594
1592
  const message = iss.message ? iss.message : unwrapMessage(iss.inst?._zod.def?.error?.(iss)) ?? unwrapMessage(schemaError?.(iss)) ?? unwrapMessage(ctx?.error?.(iss)) ?? unwrapMessage(config2.customError?.(iss)) ?? unwrapMessage(config2.localeError?.(iss)) ?? "Invalid input";
1595
- const { inst: _inst, schema: _schema, continue: _continue, input: _input, ...rest } = iss;
1596
- rest.path ?? (rest.path = []);
1597
- rest.message = message;
1593
+ const full = {};
1594
+ for (const k of Object.keys(iss)) {
1595
+ if (k === "inst" || k === "schema" || k === "continue" || k === "input" || k === "__proto__")
1596
+ continue;
1597
+ full[k] = iss[k];
1598
+ }
1599
+ full.path ?? (full.path = []);
1600
+ full.message = message;
1598
1601
  if (ctx?.reportInput) {
1599
- rest.input = _input;
1602
+ full.input = iss.input;
1600
1603
  }
1601
- return rest;
1604
+ return full;
1602
1605
  }
1603
1606
  function getSizableOrigin(input) {
1604
1607
  if (input instanceof Set)
@@ -1725,6 +1728,22 @@ function own(inst, key, value, enumerable = true) {
1725
1728
  function hide(inst, key, value) {
1726
1729
  return own(inst, key, value, false);
1727
1730
  }
1731
+ function derived(computes, table) {
1732
+ for (const key in computes) {
1733
+ const compute = computes[key];
1734
+ Object.defineProperty(table, key, {
1735
+ configurable: true,
1736
+ enumerable: true,
1737
+ get() {
1738
+ return own(this, key, compute(this));
1739
+ },
1740
+ set(value) {
1741
+ own(this, key, value);
1742
+ }
1743
+ });
1744
+ }
1745
+ return table;
1746
+ }
1728
1747
  function defineBound(proto, key, fn) {
1729
1748
  Object.defineProperty(proto, key, {
1730
1749
  configurable: true,
@@ -1806,7 +1825,7 @@ function constantCatch(value) {
1806
1825
  return fn;
1807
1826
  }
1808
1827
 
1809
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/core.js
1828
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/core.js
1810
1829
  var _a;
1811
1830
  var NEVER = /* @__PURE__ */ Object.freeze({
1812
1831
  status: "aborted"
@@ -1851,8 +1870,7 @@ function $constructor(name, initializer, proto, params) {
1851
1870
  } finally {
1852
1871
  _zodDesc.value = undefined;
1853
1872
  }
1854
- }
1855
- if (inst._zod.traits.has(name)) {
1873
+ } else if (inst._zod.traits.has(name)) {
1856
1874
  return;
1857
1875
  }
1858
1876
  inst._zod.traits.add(name);
@@ -1930,7 +1948,7 @@ function config2(newConfig) {
1930
1948
  Object.assign(globalConfig, newConfig);
1931
1949
  return globalConfig;
1932
1950
  }
1933
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/errors.js
1951
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/errors.js
1934
1952
  function _getMessage() {
1935
1953
  const internals = this._zod;
1936
1954
  internals.message ?? (internals.message = JSON.stringify(internals.def, jsonStringifyReplacer, 2));
@@ -1945,16 +1963,12 @@ var _messageDesc = {
1945
1963
  enumerable: true,
1946
1964
  configurable: true
1947
1965
  };
1948
- var _zodDesc2 = { value: undefined, enumerable: false };
1949
1966
  var _issuesDesc = { value: undefined, enumerable: false };
1950
1967
  var _installedToString = /* @__PURE__ */ new WeakSet([Object.prototype, Error.prototype]);
1951
1968
  var initializer = (inst, def) => {
1952
1969
  inst.name = "$ZodError";
1953
- _zodDesc2.value = inst._zod;
1954
- Object.defineProperty(inst, "_zod", _zodDesc2);
1955
1970
  _issuesDesc.value = def;
1956
1971
  Object.defineProperty(inst, "issues", _issuesDesc);
1957
- _zodDesc2.value = undefined;
1958
1972
  _issuesDesc.value = undefined;
1959
1973
  Object.defineProperty(inst, "message", _messageDesc);
1960
1974
  const proto = Object.getPrototypeOf(inst);
@@ -2127,7 +2141,7 @@ function prettifyError(error) {
2127
2141
  `);
2128
2142
  }
2129
2143
 
2130
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/parse.js
2144
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/parse.js
2131
2145
  function finalizeParams(callee, params) {
2132
2146
  return { callee: params?.callee ?? callee, Err: params?.Err };
2133
2147
  }
@@ -2170,33 +2184,50 @@ var _safeParse = (_Err) => (schema, value, _ctx) => {
2170
2184
  if (result instanceof Promise) {
2171
2185
  throw new $ZodAsyncError;
2172
2186
  }
2173
- return result.issues.length ? {
2174
- success: false,
2175
- error: new (_Err ?? $ZodError)(result.issues.map((iss) => finalizeIssue(iss, ctx, config2())))
2176
- } : { success: true, data: result.value };
2187
+ return result.issues.length ? failure(_Err, result.issues, ctx) : { success: true, data: result.value };
2177
2188
  };
2178
2189
  var safeParse = /* @__PURE__ */ _safeParse($ZodRealError);
2190
+ function failure(Err, issues, ctx) {
2191
+ let error;
2192
+ return {
2193
+ success: false,
2194
+ get error() {
2195
+ if (!error) {
2196
+ error = new Err(issues.map((iss) => finalizeIssue(iss, ctx, config2())));
2197
+ issues = undefined;
2198
+ ctx = undefined;
2199
+ }
2200
+ return error;
2201
+ },
2202
+ set error(e) {
2203
+ error = e;
2204
+ issues = undefined;
2205
+ ctx = undefined;
2206
+ }
2207
+ };
2208
+ }
2179
2209
  var _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
2180
2210
  const ctx = _ctx ? { ..._ctx, async: true } : { async: true };
2181
2211
  let result = schema._zod.run({ value, issues: [] }, ctx);
2182
2212
  if (result instanceof Promise)
2183
2213
  result = await result;
2184
- return result.issues.length ? {
2185
- success: false,
2186
- error: new _Err(result.issues.map((iss) => finalizeIssue(iss, ctx, config2())))
2187
- } : { success: true, data: result.value };
2214
+ return result.issues.length ? failure(_Err, result.issues, ctx) : { success: true, data: result.value };
2188
2215
  };
2189
2216
  var safeParseAsync = /* @__PURE__ */ _safeParseAsync($ZodRealError);
2190
2217
  var COMPILE_INVALID = /* @__PURE__ */ Symbol.for("zod.compile.invalid");
2191
2218
  var COMPILE_FALLBACK = /* @__PURE__ */ Symbol.for("zod.compile.fallback");
2192
2219
  var validate = (schema, value, _ctx) => {
2193
2220
  const validator = schema._zod.bag.validator;
2194
- if (validator !== undefined && validator(value) !== COMPILE_INVALID)
2195
- return true;
2221
+ if (validator !== undefined) {
2222
+ if (validator(value) !== COMPILE_INVALID)
2223
+ return true;
2224
+ if (validator.definite === true && _ctx === undefined)
2225
+ return false;
2226
+ }
2196
2227
  return validateFallback(schema, value, _ctx);
2197
2228
  };
2198
2229
  function validateFallback(schema, value, _ctx) {
2199
- const ctx = _ctx ? { ..._ctx, async: false } : { async: false };
2230
+ const ctx = _ctx ? { ..._ctx, async: false, abortEarly: true } : { async: false, abortEarly: true };
2200
2231
  const fallbackRun = schema._zod.bag.fallbackRun;
2201
2232
  let result;
2202
2233
  if (fallbackRun) {
@@ -2211,7 +2242,7 @@ function validateFallback(schema, value, _ctx) {
2211
2242
  return result.issues.length === 0;
2212
2243
  }
2213
2244
  var validateAsync = async (schema, value, _ctx) => {
2214
- const ctx = _ctx ? { ..._ctx, async: true } : { async: true };
2245
+ const ctx = _ctx ? { ..._ctx, async: true, abortEarly: true } : { async: true, abortEarly: true };
2215
2246
  let result = schema._zod.run({ value, issues: [] }, ctx);
2216
2247
  if (result instanceof Promise)
2217
2248
  result = await result;
@@ -2269,9 +2300,10 @@ var _safeDecodeAsync = (_Err) => async (schema, value, _ctx) => {
2269
2300
  return _safeParseAsync(_Err)(schema, value, _ctx);
2270
2301
  };
2271
2302
  var safeDecodeAsync = /* @__PURE__ */ _safeDecodeAsync($ZodRealError);
2272
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/regexes.js
2303
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/regexes.js
2273
2304
  var exports_regexes = {};
2274
2305
  __export(exports_regexes, {
2306
+ anyString: () => anyString,
2275
2307
  base64: () => base64,
2276
2308
  base64url: () => base64url,
2277
2309
  bigint: () => bigint,
@@ -2282,6 +2314,7 @@ __export(exports_regexes, {
2282
2314
  creditCard: () => creditCard,
2283
2315
  cuid: () => cuid,
2284
2316
  cuid2: () => cuid2,
2317
+ currencyCode: () => currencyCode,
2285
2318
  date: () => date,
2286
2319
  datetime: () => datetime,
2287
2320
  domain: () => domain,
@@ -2295,6 +2328,7 @@ __export(exports_regexes, {
2295
2328
  hostname: () => hostname,
2296
2329
  html5Email: () => html5Email,
2297
2330
  httpProtocol: () => httpProtocol,
2331
+ iban: () => iban,
2298
2332
  idnEmail: () => idnEmail,
2299
2333
  integer: () => integer,
2300
2334
  ipv4: () => ipv4,
@@ -2354,13 +2388,13 @@ var uuid = (version) => {
2354
2388
  var uuid4 = /* @__PURE__ */ uuid(4);
2355
2389
  var uuid6 = /* @__PURE__ */ uuid(6);
2356
2390
  var uuid7 = /* @__PURE__ */ uuid(7);
2357
- var email = /^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;
2391
+ var email = /^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;
2358
2392
  var html5Email = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
2359
2393
  var rfc5322Email = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
2360
2394
  var unicodeEmail = /^[^\s@"]{1,64}@[^\s@]{1,255}$/u;
2361
2395
  var idnEmail = unicodeEmail;
2362
2396
  var browserEmail = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
2363
- var _emoji = `^[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$`;
2397
+ var _emoji = `^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$`;
2364
2398
  function emoji() {
2365
2399
  return new RegExp(_emoji, "u");
2366
2400
  }
@@ -2373,12 +2407,14 @@ var mac = (delimiter) => {
2373
2407
  var cidrv4 = /^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/;
2374
2408
  var cidrv6 = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/;
2375
2409
  var base64 = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/;
2376
- var base64url = /^[A-Za-z0-9_-]*$/;
2410
+ var base64url = /^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;
2377
2411
  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])?)*\.?$/;
2378
2412
  var domain = /^(?=.{1,253}$)([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,63}$/;
2379
2413
  var httpProtocol = /^https?$/;
2380
2414
  var e164 = /^\+[1-9]\d{6,14}$/;
2381
2415
  var creditCard = /^\d(?:[ -]?\d){11,18}$/;
2416
+ var currencyCode = /^(?:AED|AFN|ALL|AMD|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLE|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|UYI|UYU|UYW|UZS|VED|VES|VND|VUV|WST|XAD|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XCG|XDR|XOF|XPD|XPF|XPT|XSU|XTS|XUA|XXX|YER|ZAR|ZMW|ZWG)$/;
2417
+ var iban = /^[A-Z]{2}(?!00|01|99)\d{2}[A-Z0-9]{11,30}$/;
2382
2418
  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])))`;
2383
2419
  function anchor(source) {
2384
2420
  return new RegExp(`^${source}$`);
@@ -2400,6 +2436,7 @@ function datetime(args) {
2400
2436
  const timeRegex = args.local ? `${qualified}|${timeSource({ precision: args.precision })}` : qualified;
2401
2437
  return new RegExp(`^${dateSource}T(?:${timeRegex})$`);
2402
2438
  }
2439
+ var anyString = /^[\s\S]{0,}$/;
2403
2440
  var string = (params) => {
2404
2441
  const regex = params ? `[\\s\\S]{${params?.minimum ?? 0},${params?.maximum ?? ""}}` : `[\\s\\S]*`;
2405
2442
  return new RegExp(`^${regex}$`);
@@ -2435,7 +2472,7 @@ var sha512_hex = /^[0-9a-fA-F]{128}$/;
2435
2472
  var sha512_base64 = /* @__PURE__ */ fixedBase64(86, "==");
2436
2473
  var sha512_base64url = /* @__PURE__ */ fixedBase64url(86);
2437
2474
 
2438
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/checks.js
2475
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/checks.js
2439
2476
  var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
2440
2477
  var _a2;
2441
2478
  inst._zod ?? (inst._zod = {});
@@ -2458,16 +2495,6 @@ var numericOriginMap = {
2458
2495
  var $ZodCheckLessThan = /* @__PURE__ */ $constructor("$ZodCheckLessThan", (inst, def) => {
2459
2496
  $ZodCheck.init(inst, def);
2460
2497
  const origin = numericOriginMap[typeof def.value];
2461
- inst._zod.onattach.push((inst2) => {
2462
- const bag = inst2._zod.bag;
2463
- const curr = (def.inclusive ? bag.maximum : bag.exclusiveMaximum) ?? Number.POSITIVE_INFINITY;
2464
- if (def.value < curr) {
2465
- if (def.inclusive)
2466
- bag.maximum = def.value;
2467
- else
2468
- bag.exclusiveMaximum = def.value;
2469
- }
2470
- });
2471
2498
  inst._zod.check = (payload) => {
2472
2499
  if (def.inclusive ? payload.value <= def.value : payload.value < def.value) {
2473
2500
  return;
@@ -2486,16 +2513,6 @@ var $ZodCheckLessThan = /* @__PURE__ */ $constructor("$ZodCheckLessThan", (inst,
2486
2513
  var $ZodCheckGreaterThan = /* @__PURE__ */ $constructor("$ZodCheckGreaterThan", (inst, def) => {
2487
2514
  $ZodCheck.init(inst, def);
2488
2515
  const origin = numericOriginMap[typeof def.value];
2489
- inst._zod.onattach.push((inst2) => {
2490
- const bag = inst2._zod.bag;
2491
- const curr = (def.inclusive ? bag.minimum : bag.exclusiveMinimum) ?? Number.NEGATIVE_INFINITY;
2492
- if (def.value > curr) {
2493
- if (def.inclusive)
2494
- bag.minimum = def.value;
2495
- else
2496
- bag.exclusiveMinimum = def.value;
2497
- }
2498
- });
2499
2516
  inst._zod.check = (payload) => {
2500
2517
  if (def.inclusive ? payload.value >= def.value : payload.value > def.value) {
2501
2518
  return;
@@ -2513,10 +2530,6 @@ var $ZodCheckGreaterThan = /* @__PURE__ */ $constructor("$ZodCheckGreaterThan",
2513
2530
  });
2514
2531
  var $ZodCheckMultipleOf = /* @__PURE__ */ $constructor("$ZodCheckMultipleOf", (inst, def) => {
2515
2532
  $ZodCheck.init(inst, def);
2516
- inst._zod.onattach.push((inst2) => {
2517
- var _a2;
2518
- (_a2 = inst2._zod.bag).multipleOf ?? (_a2.multipleOf = def.value);
2519
- });
2520
2533
  inst._zod.check = (payload) => {
2521
2534
  if (typeof payload.value !== typeof def.value)
2522
2535
  throw new Error("Cannot mix number and bigint in multiple_of check.");
@@ -2539,14 +2552,6 @@ var $ZodCheckNumberFormat = /* @__PURE__ */ $constructor("$ZodCheckNumberFormat"
2539
2552
  const isInt = def.format?.includes("int");
2540
2553
  const origin = isInt ? "int" : "number";
2541
2554
  const [minimum, maximum] = NUMBER_FORMAT_RANGES[def.format];
2542
- inst._zod.onattach.push((inst2) => {
2543
- const bag = inst2._zod.bag;
2544
- bag.format = def.format;
2545
- bag.minimum = minimum;
2546
- bag.maximum = maximum;
2547
- if (isInt)
2548
- bag.pattern = integer;
2549
- });
2550
2555
  inst._zod.check = (payload) => {
2551
2556
  const input = payload.value;
2552
2557
  if (isInt) {
@@ -2615,12 +2620,6 @@ var $ZodCheckNumberFormat = /* @__PURE__ */ $constructor("$ZodCheckNumberFormat"
2615
2620
  var $ZodCheckBigIntFormat = /* @__PURE__ */ $constructor("$ZodCheckBigIntFormat", (inst, def) => {
2616
2621
  $ZodCheck.init(inst, def);
2617
2622
  const [minimum, maximum] = BIGINT_FORMAT_RANGES[def.format];
2618
- inst._zod.onattach.push((inst2) => {
2619
- const bag = inst2._zod.bag;
2620
- bag.format = def.format;
2621
- bag.minimum = minimum;
2622
- bag.maximum = maximum;
2623
- });
2624
2623
  inst._zod.check = (payload) => {
2625
2624
  const input = payload.value;
2626
2625
  if (input < minimum) {
@@ -2651,11 +2650,6 @@ var $ZodCheckMaxSize = /* @__PURE__ */ $constructor("$ZodCheckMaxSize", (inst, d
2651
2650
  var _a2;
2652
2651
  $ZodCheck.init(inst, def);
2653
2652
  (_a2 = inst._zod.def).when ?? (_a2.when = _whenHasSize);
2654
- inst._zod.onattach.push((inst2) => {
2655
- const curr = inst2._zod.bag.maximum ?? Number.POSITIVE_INFINITY;
2656
- if (def.maximum < curr)
2657
- inst2._zod.bag.maximum = def.maximum;
2658
- });
2659
2653
  inst._zod.check = (payload) => {
2660
2654
  const input = payload.value;
2661
2655
  const size = input.size;
@@ -2676,11 +2670,6 @@ var $ZodCheckMinSize = /* @__PURE__ */ $constructor("$ZodCheckMinSize", (inst, d
2676
2670
  var _a2;
2677
2671
  $ZodCheck.init(inst, def);
2678
2672
  (_a2 = inst._zod.def).when ?? (_a2.when = _whenHasSize);
2679
- inst._zod.onattach.push((inst2) => {
2680
- const curr = inst2._zod.bag.minimum ?? Number.NEGATIVE_INFINITY;
2681
- if (def.minimum > curr)
2682
- inst2._zod.bag.minimum = def.minimum;
2683
- });
2684
2673
  inst._zod.check = (payload) => {
2685
2674
  const input = payload.value;
2686
2675
  const size = input.size;
@@ -2701,12 +2690,6 @@ var $ZodCheckSizeEquals = /* @__PURE__ */ $constructor("$ZodCheckSizeEquals", (i
2701
2690
  var _a2;
2702
2691
  $ZodCheck.init(inst, def);
2703
2692
  (_a2 = inst._zod.def).when ?? (_a2.when = _whenHasSize);
2704
- inst._zod.onattach.push((inst2) => {
2705
- const bag = inst2._zod.bag;
2706
- bag.minimum = def.size;
2707
- bag.maximum = def.size;
2708
- bag.size = def.size;
2709
- });
2710
2693
  inst._zod.check = (payload) => {
2711
2694
  const input = payload.value;
2712
2695
  const size = input.size;
@@ -2728,11 +2711,6 @@ var $ZodCheckMaxLength = /* @__PURE__ */ $constructor("$ZodCheckMaxLength", (ins
2728
2711
  var _a2;
2729
2712
  $ZodCheck.init(inst, def);
2730
2713
  (_a2 = inst._zod.def).when ?? (_a2.when = _whenHasLength);
2731
- inst._zod.onattach.push((inst2) => {
2732
- const curr = inst2._zod.bag.maximum ?? Number.POSITIVE_INFINITY;
2733
- if (def.maximum < curr)
2734
- inst2._zod.bag.maximum = def.maximum;
2735
- });
2736
2714
  inst._zod.check = (payload) => {
2737
2715
  const input = payload.value;
2738
2716
  const units = input.length;
@@ -2755,11 +2733,6 @@ var $ZodCheckMinLength = /* @__PURE__ */ $constructor("$ZodCheckMinLength", (ins
2755
2733
  var _a2;
2756
2734
  $ZodCheck.init(inst, def);
2757
2735
  (_a2 = inst._zod.def).when ?? (_a2.when = _whenHasLength);
2758
- inst._zod.onattach.push((inst2) => {
2759
- const curr = inst2._zod.bag.minimum ?? Number.NEGATIVE_INFINITY;
2760
- if (def.minimum > curr)
2761
- inst2._zod.bag.minimum = def.minimum;
2762
- });
2763
2736
  inst._zod.check = (payload) => {
2764
2737
  const input = payload.value;
2765
2738
  const units = input.length;
@@ -2782,12 +2755,6 @@ var $ZodCheckLengthEquals = /* @__PURE__ */ $constructor("$ZodCheckLengthEquals"
2782
2755
  var _a2;
2783
2756
  $ZodCheck.init(inst, def);
2784
2757
  (_a2 = inst._zod.def).when ?? (_a2.when = _whenHasLength);
2785
- inst._zod.onattach.push((inst2) => {
2786
- const bag = inst2._zod.bag;
2787
- bag.minimum = def.length;
2788
- bag.maximum = def.length;
2789
- bag.length = def.length;
2790
- });
2791
2758
  inst._zod.check = (payload) => {
2792
2759
  const input = payload.value;
2793
2760
  const units = input.length;
@@ -2810,14 +2777,6 @@ var $ZodCheckLengthEquals = /* @__PURE__ */ $constructor("$ZodCheckLengthEquals"
2810
2777
  var $ZodCheckStringFormat = /* @__PURE__ */ $constructor("$ZodCheckStringFormat", (inst, def) => {
2811
2778
  var _a2, _b;
2812
2779
  $ZodCheck.init(inst, def);
2813
- inst._zod.onattach.push((inst2) => {
2814
- const bag = inst2._zod.bag;
2815
- bag.format = def.format;
2816
- if (def.pattern) {
2817
- bag.patterns ?? (bag.patterns = new Set);
2818
- bag.patterns.add(def.pattern);
2819
- }
2820
- });
2821
2780
  if (def.pattern)
2822
2781
  (_a2 = inst._zod).check ?? (_a2.check = (payload) => {
2823
2782
  def.pattern.lastIndex = 0;
@@ -2866,11 +2825,6 @@ var $ZodCheckIncludes = /* @__PURE__ */ $constructor("$ZodCheckIncludes", (inst,
2866
2825
  const escapedRegex = escapeRegex(def.includes);
2867
2826
  const pattern = new RegExp(typeof def.position === "number" ? `^.{${def.position},}${escapedRegex}` : escapedRegex);
2868
2827
  def.pattern = pattern;
2869
- inst._zod.onattach.push((inst2) => {
2870
- const bag = inst2._zod.bag;
2871
- bag.patterns ?? (bag.patterns = new Set);
2872
- bag.patterns.add(pattern);
2873
- });
2874
2828
  inst._zod.check = (payload) => {
2875
2829
  if (payload.value.includes(def.includes, def.position))
2876
2830
  return;
@@ -2889,11 +2843,6 @@ var $ZodCheckStartsWith = /* @__PURE__ */ $constructor("$ZodCheckStartsWith", (i
2889
2843
  $ZodCheck.init(inst, def);
2890
2844
  const pattern = new RegExp(`^${escapeRegex(def.prefix)}.*`);
2891
2845
  def.pattern ?? (def.pattern = pattern);
2892
- inst._zod.onattach.push((inst2) => {
2893
- const bag = inst2._zod.bag;
2894
- bag.patterns ?? (bag.patterns = new Set);
2895
- bag.patterns.add(pattern);
2896
- });
2897
2846
  inst._zod.check = (payload) => {
2898
2847
  if (payload.value.startsWith(def.prefix))
2899
2848
  return;
@@ -2912,11 +2861,6 @@ var $ZodCheckEndsWith = /* @__PURE__ */ $constructor("$ZodCheckEndsWith", (inst,
2912
2861
  $ZodCheck.init(inst, def);
2913
2862
  const pattern = new RegExp(`.*${escapeRegex(def.suffix)}$`);
2914
2863
  def.pattern ?? (def.pattern = pattern);
2915
- inst._zod.onattach.push((inst2) => {
2916
- const bag = inst2._zod.bag;
2917
- bag.patterns ?? (bag.patterns = new Set);
2918
- bag.patterns.add(pattern);
2919
- });
2920
2864
  inst._zod.check = (payload) => {
2921
2865
  if (payload.value.endsWith(def.suffix))
2922
2866
  return;
@@ -2950,12 +2894,39 @@ var $ZodCheckProperty = /* @__PURE__ */ $constructor("$ZodCheckProperty", (inst,
2950
2894
  return;
2951
2895
  };
2952
2896
  });
2897
+ var $ZodCheckProperties = /* @__PURE__ */ $constructor("$ZodCheckProperties", (inst, def) => {
2898
+ $ZodCheck.init(inst, def);
2899
+ hide(inst, Symbol.iterator, function* () {
2900
+ yield inst;
2901
+ });
2902
+ let entries;
2903
+ inst._zod.check = (payload) => {
2904
+ if (payload.value == null) {
2905
+ payload.issues.push({ expected: "object", code: "invalid_type", input: payload.value, inst });
2906
+ return;
2907
+ }
2908
+ entries ?? (entries = Reflect.ownKeys(def.shape).map((key) => [key, def.shape[key]]));
2909
+ const input = payload.value;
2910
+ let proms;
2911
+ for (const [key, schema] of entries) {
2912
+ const result = schema._zod.run({ value: input[key], issues: [] }, {});
2913
+ if (result instanceof Promise) {
2914
+ proms ?? (proms = []);
2915
+ proms.push(result.then((result2) => handleCheckPropertyResult(result2, payload, key)));
2916
+ } else {
2917
+ handleCheckPropertyResult(result, payload, key);
2918
+ }
2919
+ }
2920
+ if (proms)
2921
+ return Promise.all(proms).then(() => {
2922
+ return;
2923
+ });
2924
+ return;
2925
+ };
2926
+ });
2953
2927
  var $ZodCheckMimeType = /* @__PURE__ */ $constructor("$ZodCheckMimeType", (inst, def) => {
2954
2928
  $ZodCheck.init(inst, def);
2955
2929
  const mimeSet = new Set(def.mime);
2956
- inst._zod.onattach.push((inst2) => {
2957
- inst2._zod.bag.mime = def.mime;
2958
- });
2959
2930
  inst._zod.check = (payload) => {
2960
2931
  if (mimeSet.has(payload.value.type))
2961
2932
  return;
@@ -2975,7 +2946,7 @@ var $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (ins
2975
2946
  };
2976
2947
  });
2977
2948
 
2978
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/doc.js
2949
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/doc.js
2979
2950
  class Doc {
2980
2951
  constructor(args = [], closed = {}) {
2981
2952
  this.content = [];
@@ -2985,8 +2956,11 @@ class Doc {
2985
2956
  }
2986
2957
  indented(fn) {
2987
2958
  this.indent += 1;
2988
- fn(this);
2989
- this.indent -= 1;
2959
+ try {
2960
+ fn(this);
2961
+ } finally {
2962
+ this.indent -= 1;
2963
+ }
2990
2964
  }
2991
2965
  write(arg) {
2992
2966
  if (typeof arg === "function") {
@@ -3014,14 +2988,14 @@ ${content.join(`
3014
2988
  }
3015
2989
  }
3016
2990
 
3017
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/versions.js
2991
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/versions.js
3018
2992
  var version = {
3019
2993
  major: 4,
3020
- minor: 5,
3021
- patch: 4
2994
+ minor: 6,
2995
+ patch: 5
3022
2996
  };
3023
2997
 
3024
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/schemas.js
2998
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/schemas.js
3025
2999
  var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
3026
3000
  var _a2;
3027
3001
  inst ?? (inst = {});
@@ -3130,15 +3104,21 @@ var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
3130
3104
  own(this, "~standard", value);
3131
3105
  }
3132
3106
  });
3133
- var toStandardResult = (r) => r.success ? { value: r.data } : { issues: r.error?.issues };
3107
+ var toStandardResult = (r, ctx) => r.issues.length ? { issues: r.issues.map((iss) => finalizeIssue(iss, ctx, config2())) } : { value: r.value };
3108
+ async function validateAsync2(inst, value) {
3109
+ const ctx = { async: true };
3110
+ return toStandardResult(await inst._zod.run({ value, issues: [] }, ctx), ctx);
3111
+ }
3134
3112
  function standardProps(inst) {
3135
3113
  return {
3136
3114
  validate: (value) => {
3115
+ const ctx = { async: false };
3137
3116
  try {
3138
- return toStandardResult(safeParse(inst, value));
3139
- } catch (_) {
3140
- return safeParseAsync(inst, value).then(toStandardResult);
3141
- }
3117
+ const r = inst._zod.run({ value, issues: [] }, ctx);
3118
+ if (!(r instanceof Promise))
3119
+ return toStandardResult(r, ctx);
3120
+ } catch (_) {}
3121
+ return validateAsync2(inst, value);
3142
3122
  },
3143
3123
  vendor: "zod",
3144
3124
  version: 1
@@ -3146,7 +3126,7 @@ function standardProps(inst) {
3146
3126
  }
3147
3127
  var $ZodString = /* @__PURE__ */ $constructor("$ZodString", (inst, def) => {
3148
3128
  $ZodType.init(inst, def);
3149
- inst._zod.pattern = [...inst?._zod.bag?.patterns ?? []].pop() ?? string(inst._zod.bag);
3129
+ inst._zod.pattern = def.pattern ?? anyString;
3150
3130
  inst._zod.parse = (payload, _) => {
3151
3131
  if (def.coerce)
3152
3132
  try {
@@ -3197,11 +3177,32 @@ var $ZodEmail = /* @__PURE__ */ $constructor("$ZodEmail", (inst, def) => {
3197
3177
  });
3198
3178
  var URL_BAD_FORMAT = 1;
3199
3179
  var URL_UNPARSEABLE = 2;
3180
+ function canParseURL(input) {
3181
+ try {
3182
+ if (typeof URL !== "undefined" && typeof URL.canParse === "function")
3183
+ return URL.canParse(input);
3184
+ new URL(input);
3185
+ return true;
3186
+ } catch {
3187
+ return false;
3188
+ }
3189
+ }
3190
+ function validateURL(trimmed, def) {
3191
+ if (!("normalize" in def) && !("hostname" in def) && !("protocol" in def)) {
3192
+ return canParseURL(trimmed) || URL_UNPARSEABLE;
3193
+ }
3194
+ return parseURLObject(trimmed, def);
3195
+ }
3200
3196
  function parseURLObject(trimmed, def) {
3201
3197
  if (!def.normalize && def.protocol?.source === httpProtocol.source && !/^https?:\/\//i.test(trimmed)) {
3202
3198
  return URL_BAD_FORMAT;
3203
3199
  }
3204
3200
  try {
3201
+ if (typeof URL !== "undefined") {
3202
+ const URLStatic = URL;
3203
+ if (typeof URLStatic.parse === "function")
3204
+ return URLStatic.parse(trimmed) ?? URL_UNPARSEABLE;
3205
+ }
3205
3206
  return new URL(trimmed);
3206
3207
  } catch {
3207
3208
  return URL_UNPARSEABLE;
@@ -3224,7 +3225,7 @@ var $ZodURL = /* @__PURE__ */ $constructor("$ZodURL", (inst, def) => {
3224
3225
  inst._zod.check = (payload) => {
3225
3226
  try {
3226
3227
  const trimmed = payload.value.trim();
3227
- const url = parseURLObject(trimmed, def);
3228
+ const url = validateURL(trimmed, def);
3228
3229
  if (url === URL_BAD_FORMAT) {
3229
3230
  payload.issues.push({
3230
3231
  code: "invalid_format",
@@ -3246,6 +3247,10 @@ var $ZodURL = /* @__PURE__ */ $constructor("$ZodURL", (inst, def) => {
3246
3247
  });
3247
3248
  return;
3248
3249
  }
3250
+ if (url === true) {
3251
+ payload.value = stripTabAndNewline(trimmed);
3252
+ return;
3253
+ }
3249
3254
  if (def.hostname && !urlHostnameOk(url, def.hostname)) {
3250
3255
  payload.issues.push({
3251
3256
  code: "invalid_format",
@@ -3314,12 +3319,6 @@ var $ZodKSUID = /* @__PURE__ */ $constructor("$ZodKSUID", (inst, def) => {
3314
3319
  var $ZodISODateTime = /* @__PURE__ */ $constructor("$ZodISODateTime", (inst, def) => {
3315
3320
  def.pattern ?? (def.pattern = datetime(def));
3316
3321
  $ZodStringFormat.init(inst, def);
3317
- if (def.local || def.precision === -1) {
3318
- inst._zod.bag.laxFormat = true;
3319
- inst._zod.onattach.push((s) => {
3320
- s._zod.bag.laxFormat = true;
3321
- });
3322
- }
3323
3322
  });
3324
3323
  var $ZodISODate = /* @__PURE__ */ $constructor("$ZodISODate", (inst, def) => {
3325
3324
  def.pattern ?? (def.pattern = date);
@@ -3336,23 +3335,16 @@ var $ZodISODuration = /* @__PURE__ */ $constructor("$ZodISODuration", (inst, def
3336
3335
  var $ZodIPv4 = /* @__PURE__ */ $constructor("$ZodIPv4", (inst, def) => {
3337
3336
  def.pattern ?? (def.pattern = ipv4);
3338
3337
  $ZodStringFormat.init(inst, def);
3339
- inst._zod.bag.format = `ipv4`;
3340
3338
  });
3341
3339
  var ipv6Alphabet = /^[0-9a-fA-F:.]+$/;
3342
3340
  function isValidIPv6(value) {
3343
3341
  if (!ipv6Alphabet.test(value))
3344
3342
  return false;
3345
- try {
3346
- new URL(`http://[${value}]`);
3347
- return true;
3348
- } catch {
3349
- return false;
3350
- }
3343
+ return canParseURL(`http://[${value}]`);
3351
3344
  }
3352
3345
  var $ZodIPv6 = /* @__PURE__ */ $constructor("$ZodIPv6", (inst, def) => {
3353
3346
  def.pattern ?? (def.pattern = ipv6);
3354
3347
  $ZodStringFormat.init(inst, def);
3355
- inst._zod.bag.format = `ipv6`;
3356
3348
  inst._zod.check = (payload) => {
3357
3349
  if (!isValidIPv6(payload.value)) {
3358
3350
  payload.issues.push({
@@ -3368,7 +3360,6 @@ var $ZodIPv6 = /* @__PURE__ */ $constructor("$ZodIPv6", (inst, def) => {
3368
3360
  var $ZodMAC = /* @__PURE__ */ $constructor("$ZodMAC", (inst, def) => {
3369
3361
  def.pattern ?? (def.pattern = mac(def.delimiter));
3370
3362
  $ZodStringFormat.init(inst, def);
3371
- inst._zod.bag.format = `mac`;
3372
3363
  });
3373
3364
  var $ZodCIDRv4 = /* @__PURE__ */ $constructor("$ZodCIDRv4", (inst, def) => {
3374
3365
  def.pattern ?? (def.pattern = cidrv4);
@@ -3417,10 +3408,10 @@ function isValidBase64(data) {
3417
3408
  return false;
3418
3409
  }
3419
3410
  }
3411
+ var base64Charset = /^[0-9a-zA-Z+/]*={0,2}$/;
3420
3412
  var $ZodBase64 = /* @__PURE__ */ $constructor("$ZodBase64", (inst, def) => {
3421
- def.pattern ?? (def.pattern = base64);
3413
+ def.pattern ?? (def.pattern = base64Charset);
3422
3414
  $ZodStringFormat.init(inst, def);
3423
- inst._zod.bag.contentEncoding = "base64";
3424
3415
  inst._zod.check = (payload) => {
3425
3416
  if (isValidBase64(payload.value))
3426
3417
  return;
@@ -3433,17 +3424,17 @@ var $ZodBase64 = /* @__PURE__ */ $constructor("$ZodBase64", (inst, def) => {
3433
3424
  });
3434
3425
  };
3435
3426
  });
3427
+ var base64urlCharset = /^[A-Za-z0-9_-]*$/;
3436
3428
  function isValidBase64URL(data) {
3437
- if (!base64url.test(data))
3429
+ if (!base64urlCharset.test(data))
3438
3430
  return false;
3439
3431
  const base642 = data.replace(/[-_]/g, (c) => c === "-" ? "+" : "/");
3440
3432
  const padded = base642.padEnd(Math.ceil(base642.length / 4) * 4, "=");
3441
3433
  return isValidBase64(padded);
3442
3434
  }
3443
3435
  var $ZodBase64URL = /* @__PURE__ */ $constructor("$ZodBase64URL", (inst, def) => {
3444
- def.pattern ?? (def.pattern = base64url);
3436
+ def.pattern ?? (def.pattern = base64urlCharset);
3445
3437
  $ZodStringFormat.init(inst, def);
3446
- inst._zod.bag.contentEncoding = "base64url";
3447
3438
  inst._zod.check = (payload) => {
3448
3439
  if (isValidBase64URL(payload.value))
3449
3440
  return;
@@ -3466,7 +3457,7 @@ function isLuhnAlgo(digits) {
3466
3457
  let bit = 1;
3467
3458
  let sum = 0;
3468
3459
  while (length) {
3469
- const value = +digits[--length];
3460
+ const value = digits.charCodeAt(--length) - 48;
3470
3461
  bit ^= 1;
3471
3462
  sum += bit ? [0, 2, 4, 6, 8, 1, 3, 5, 7, 9][value] : value;
3472
3463
  }
@@ -3492,6 +3483,39 @@ var $ZodCreditCard = /* @__PURE__ */ $constructor("$ZodCreditCard", (inst, def)
3492
3483
  });
3493
3484
  };
3494
3485
  });
3486
+ function isIso7064Mod97(iban2) {
3487
+ let remainder = 0;
3488
+ const len = iban2.length;
3489
+ for (let i = 4;i < len; i++) {
3490
+ const code = iban2.charCodeAt(i);
3491
+ remainder = (code >= 65 ? remainder * 100 + (code - 55) : remainder * 10 + (code - 48)) % 97;
3492
+ }
3493
+ for (let i = 0;i < 4; i++) {
3494
+ const code = iban2.charCodeAt(i);
3495
+ remainder = (code >= 65 ? remainder * 100 + (code - 55) : remainder * 10 + (code - 48)) % 97;
3496
+ }
3497
+ return remainder === 1;
3498
+ }
3499
+ function isValidIBAN(input) {
3500
+ if (!iban.test(input))
3501
+ return false;
3502
+ return isIso7064Mod97(input);
3503
+ }
3504
+ var $ZodIBAN = /* @__PURE__ */ $constructor("$ZodIBAN", (inst, def) => {
3505
+ def.pattern ?? (def.pattern = iban);
3506
+ $ZodStringFormat.init(inst, def);
3507
+ inst._zod.check = (payload) => {
3508
+ if (isValidIBAN(payload.value))
3509
+ return;
3510
+ payload.issues.push({
3511
+ code: "invalid_format",
3512
+ format: "iban",
3513
+ input: payload.value,
3514
+ inst,
3515
+ continue: !def.abort
3516
+ });
3517
+ };
3518
+ });
3495
3519
  function isValidJWT(token, algorithm = null) {
3496
3520
  try {
3497
3521
  const tokensParts = token.split(".");
@@ -3542,7 +3566,7 @@ var $ZodCustomStringFormat = /* @__PURE__ */ $constructor("$ZodCustomStringForma
3542
3566
  });
3543
3567
  var $ZodNumber = /* @__PURE__ */ $constructor("$ZodNumber", (inst, def) => {
3544
3568
  $ZodType.init(inst, def);
3545
- inst._zod.pattern = inst._zod.bag.pattern ?? number;
3569
+ inst._zod.pattern = number;
3546
3570
  inst._zod.parse = (payload, _ctx) => {
3547
3571
  if (def.coerce)
3548
3572
  try {
@@ -3740,6 +3764,7 @@ var $ZodArray = /* @__PURE__ */ $constructor("$ZodArray", (inst, def) => {
3740
3764
  }
3741
3765
  payload.value = memo ? memo.alloc(inst, payload, Array(input.length), ctx) : Array(input.length);
3742
3766
  const proms = [];
3767
+ const abortEarly = ctx?.abortEarly;
3743
3768
  for (let i = 0;i < input.length; i++) {
3744
3769
  const item = input[i];
3745
3770
  const result = def.element._zod.run({
@@ -3750,6 +3775,8 @@ var $ZodArray = /* @__PURE__ */ $constructor("$ZodArray", (inst, def) => {
3750
3775
  proms.push(result.then((result2) => handleArrayResult(result2, payload, i)));
3751
3776
  } else {
3752
3777
  handleArrayResult(result, payload, i);
3778
+ if (abortEarly && result.issues.length !== 0 && aborted(result))
3779
+ break;
3753
3780
  }
3754
3781
  }
3755
3782
  if (proms.length) {
@@ -3782,7 +3809,7 @@ function handlePropertyResult(result, final, key, input, optin, optout) {
3782
3809
  return;
3783
3810
  }
3784
3811
  if (result.value === undefined) {
3785
- if (isPresent) {
3812
+ if (isPresent || optin === "defaulted" && !isOptionalOut) {
3786
3813
  final.value[key] = undefined;
3787
3814
  }
3788
3815
  } else {
@@ -3810,14 +3837,20 @@ function normalizeDef(def) {
3810
3837
  optionalKeys: new Set(okeys)
3811
3838
  };
3812
3839
  }
3813
- function handleCatchall(proms, input, payload, ctx, def, inst) {
3840
+ function handleCatchall(proms, input, payload, ctx, def, inst, abortEarly) {
3814
3841
  const unrecognized = [];
3815
3842
  const keySet = def.keySet;
3816
3843
  const _catchall = def.catchall._zod;
3817
3844
  const t = _catchall.def.type;
3818
3845
  const optin = _catchall.optin;
3819
3846
  const optout = _catchall.optout;
3847
+ let seen = 0;
3820
3848
  for (const key in input) {
3849
+ if (abortEarly && payload.issues.length !== seen) {
3850
+ if (aborted(payload, seen))
3851
+ break;
3852
+ seen = payload.issues.length;
3853
+ }
3821
3854
  if (keySet.has(key))
3822
3855
  continue;
3823
3856
  if (key === "__proto__") {
@@ -3851,23 +3884,19 @@ function handleCatchall(proms, input, payload, ctx, def, inst) {
3851
3884
  return payload;
3852
3885
  });
3853
3886
  }
3854
- var propShapes = new WeakMap;
3855
3887
  var $ZodObject = /* @__PURE__ */ $constructor("$ZodObject", (inst, def) => {
3856
3888
  $ZodType.init(inst, def);
3857
3889
  const desc = Object.getOwnPropertyDescriptor(def, "shape");
3858
- if (!desc?.get) {
3859
- const sh = def.shape;
3860
- propShapes.set(def, sh);
3861
- Object.defineProperty(def, "shape", {
3862
- get: () => {
3863
- const newSh = { ...sh };
3864
- Object.defineProperty(def, "shape", {
3865
- value: newSh
3866
- });
3867
- propShapes.set(def, newSh);
3868
- return newSh;
3869
- }
3870
- });
3890
+ const sh = desc?.get ? desc.get.raw : def.shape ?? {};
3891
+ if (sh) {
3892
+ const get = () => {
3893
+ const newSh = { ...sh };
3894
+ Object.defineProperty(def, "shape", { value: newSh });
3895
+ get.raw = newSh;
3896
+ return newSh;
3897
+ };
3898
+ get.raw = sh;
3899
+ Object.defineProperty(def, "shape", { get });
3871
3900
  }
3872
3901
  const _normalized = cached(() => normalizeDef(def));
3873
3902
  defineLazyInternal(inst, "propValues", (zod) => {
@@ -3907,7 +3936,14 @@ var $ZodObject = /* @__PURE__ */ $constructor("$ZodObject", (inst, def) => {
3907
3936
  payload.value = memo ? memo.alloc(inst, payload, {}, ctx) : {};
3908
3937
  const proms = [];
3909
3938
  const shape = value.shape;
3939
+ const abortEarly = ctx?.abortEarly;
3940
+ let seen = payload.issues.length;
3910
3941
  for (const key of value.allKeys) {
3942
+ if (abortEarly && payload.issues.length !== seen) {
3943
+ if (aborted(payload, seen))
3944
+ break;
3945
+ seen = payload.issues.length;
3946
+ }
3911
3947
  if (key === "__proto__")
3912
3948
  continue;
3913
3949
  const el = shape[key];
@@ -3923,7 +3959,7 @@ var $ZodObject = /* @__PURE__ */ $constructor("$ZodObject", (inst, def) => {
3923
3959
  if (!catchall) {
3924
3960
  return proms.length ? Promise.all(proms).then(() => payload) : payload;
3925
3961
  }
3926
- return handleCatchall(proms, input, payload, ctx, _normalized.value, inst);
3962
+ return handleCatchall(proms, input, payload, ctx, _normalized.value, inst, abortEarly === true);
3927
3963
  };
3928
3964
  });
3929
3965
  var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) => {
@@ -3937,10 +3973,16 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
3937
3973
  const doc = new Doc(["payload", "ctx"], { shape, inst, memo, syms });
3938
3974
  const parseStr = (k) => `shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`;
3939
3975
  const prefixStr = (id, k) => `
3976
+ let ${id}_ab = false;
3940
3977
  for (let i = 0; i < ${id}.issues.length; i++) {
3941
3978
  const iss = ${id}.issues[i];
3942
3979
  iss.path = iss.path ? [${k}, ...iss.path] : [${k}];
3943
3980
  payload.issues.push(iss);
3981
+ if (iss.continue !== true) ${id}_ab = true;
3982
+ }
3983
+ if (${id}_ab && ctx && ctx.abortEarly) {
3984
+ payload.value = newResult;
3985
+ return payload;
3944
3986
  }`;
3945
3987
  doc.write(`const input = payload.value;`);
3946
3988
  const ids = Object.create(null);
@@ -3986,6 +4028,10 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
3986
4028
  input: undefined,
3987
4029
  path: [${k}]
3988
4030
  });
4031
+ if (ctx && ctx.abortEarly) {
4032
+ payload.value = newResult;
4033
+ return payload;
4034
+ }
3989
4035
  }
3990
4036
 
3991
4037
  if (${id}_present) {
@@ -3997,16 +4043,16 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
3997
4043
  doc.write(`
3998
4044
  if (${id}.issues.length) {${prefixStr(id, k)}
3999
4045
  }
4000
-
4001
- if (${id}.value === undefined) {
4002
- if (${isPresent}) {
4003
- newResult[${k}] = undefined;
4004
- }
4046
+ `);
4047
+ if (optin === "defaulted") {
4048
+ doc.write(`newResult[${k}] = ${id}.value;`);
4005
4049
  } else {
4050
+ doc.write(`
4051
+ if (${id}.value !== undefined || ${isPresent}) {
4006
4052
  newResult[${k}] = ${id}.value;
4007
4053
  }
4008
-
4009
4054
  `);
4055
+ }
4010
4056
  }
4011
4057
  }
4012
4058
  doc.write(`payload.value = newResult;`);
@@ -4038,7 +4084,7 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
4038
4084
  payload = fastpass(payload, ctx);
4039
4085
  if (!catchall)
4040
4086
  return payload;
4041
- return handleCatchall([], input, payload, ctx, value, inst);
4087
+ return handleCatchall([], input, payload, ctx, value, inst, ctx?.abortEarly === true);
4042
4088
  }
4043
4089
  return superParse(payload, ctx);
4044
4090
  };
@@ -4170,16 +4216,31 @@ function getDiscriminatedOption(union, value) {
4170
4216
  const internals = union._zod;
4171
4217
  let map = internals.bag.optionsMap;
4172
4218
  if (!map) {
4173
- map = new Map;
4174
- const { options, discriminator } = internals.def;
4175
- for (const option of options) {
4176
- for (const v of option._zod.propValues?.[discriminator] ?? [])
4177
- if (!map.has(v))
4178
- map.set(v, option);
4179
- }
4219
+ map = discriminatorMap(internals.def);
4180
4220
  internals.bag.optionsMap = map;
4181
4221
  }
4182
- return map.get(value);
4222
+ const option = map.get(value);
4223
+ if (option === null)
4224
+ throw new Error(`Ambiguous discriminator value "${String(value)}"`);
4225
+ return option;
4226
+ }
4227
+ function discriminatorMap(def) {
4228
+ const map = new Map;
4229
+ for (const option of def.options) {
4230
+ const values = option._zod.propValues?.[def.discriminator];
4231
+ if (!values || values.size === 0)
4232
+ throw new Error(`Invalid discriminated union option at index "${def.options.indexOf(option)}"`);
4233
+ for (const value of values) {
4234
+ if (map.has(value)) {
4235
+ if (value !== undefined)
4236
+ throw new Error(`Duplicate discriminator value "${String(value)}"`);
4237
+ map.set(value, null);
4238
+ } else {
4239
+ map.set(value, option);
4240
+ }
4241
+ }
4242
+ }
4243
+ return map;
4183
4244
  }
4184
4245
  var $ZodDiscriminatedUnion = /* @__PURE__ */ $constructor("$ZodDiscriminatedUnion", (inst, def) => {
4185
4246
  def.inclusive = false;
@@ -4187,10 +4248,13 @@ var $ZodDiscriminatedUnion = /* @__PURE__ */ $constructor("$ZodDiscriminatedUnio
4187
4248
  const _super = inst._zod.parse;
4188
4249
  defineLazyInternal(inst, "propValues", (zod) => {
4189
4250
  const propValues = {};
4251
+ let undefinedCount = 0;
4190
4252
  for (const option of zod.def.options) {
4191
4253
  const pv = option._zod.propValues;
4192
4254
  if (!pv || Object.keys(pv).length === 0)
4193
4255
  throw new Error(`Invalid discriminated union option at index "${zod.def.options.indexOf(option)}"`);
4256
+ if (pv[zod.def.discriminator]?.has(undefined))
4257
+ undefinedCount++;
4194
4258
  for (const [k, v] of Object.entries(pv)) {
4195
4259
  if (!Object.prototype.hasOwnProperty.call(propValues, k)) {
4196
4260
  assignProp(propValues, k, new Set);
@@ -4200,30 +4264,17 @@ var $ZodDiscriminatedUnion = /* @__PURE__ */ $constructor("$ZodDiscriminatedUnio
4200
4264
  }
4201
4265
  }
4202
4266
  }
4267
+ if (!zod.def.unionFallback && undefinedCount > 1)
4268
+ propValues[zod.def.discriminator]?.delete(undefined);
4203
4269
  return propValues;
4204
4270
  });
4205
4271
  def.options.forEach((option, i) => {
4206
- const propShape = propShapes.get(option._zod.def);
4272
+ const propShape = rawShape(option._zod.def);
4207
4273
  if (propShape && !Object.prototype.hasOwnProperty.call(propShape, def.discriminator)) {
4208
4274
  throw new Error(`Invalid discriminated union option at index "${i}"`);
4209
4275
  }
4210
4276
  });
4211
- const disc = cached(() => {
4212
- const opts = def.options;
4213
- const map = new Map;
4214
- for (const o of opts) {
4215
- const values = o._zod.propValues?.[def.discriminator];
4216
- if (!values || values.size === 0)
4217
- throw new Error(`Invalid discriminated union option at index "${def.options.indexOf(o)}"`);
4218
- for (const v of values) {
4219
- if (map.has(v)) {
4220
- throw new Error(`Duplicate discriminator value "${String(v)}"`);
4221
- }
4222
- map.set(v, o);
4223
- }
4224
- }
4225
- return map;
4226
- });
4277
+ const disc = cached(() => discriminatorMap(def));
4227
4278
  inst._zod.parse = (payload, ctx) => {
4228
4279
  const input = payload.value;
4229
4280
  if (!isObject(input)) {
@@ -4235,8 +4286,9 @@ var $ZodDiscriminatedUnion = /* @__PURE__ */ $constructor("$ZodDiscriminatedUnio
4235
4286
  });
4236
4287
  return payload;
4237
4288
  }
4238
- const opt = disc.value.get(input?.[def.discriminator]);
4239
- if (opt) {
4289
+ const value = input?.[def.discriminator];
4290
+ const opt = disc.value.get(value);
4291
+ if (opt && (value !== undefined || ctx.direction !== "backward")) {
4240
4292
  return opt._zod.run(payload, ctx);
4241
4293
  }
4242
4294
  if (def.unionFallback || ctx.direction === "backward") {
@@ -4247,7 +4299,7 @@ var $ZodDiscriminatedUnion = /* @__PURE__ */ $constructor("$ZodDiscriminatedUnio
4247
4299
  errors: [],
4248
4300
  note: "No matching discriminator",
4249
4301
  discriminator: def.discriminator,
4250
- options: Array.from(disc.value.keys()),
4302
+ options: Array.from(disc.value.keys()).filter((value2) => disc.value.get(value2) !== null),
4251
4303
  input,
4252
4304
  path: [def.discriminator],
4253
4305
  inst
@@ -4413,6 +4465,8 @@ var $ZodTuple = /* @__PURE__ */ $constructor("$ZodTuple", (inst, def) => {
4413
4465
  }
4414
4466
  }
4415
4467
  const itemResults = new Array(items.length);
4468
+ const abortEarly = def.rest ? ctx?.abortEarly : undefined;
4469
+ let itemAborted = false;
4416
4470
  for (let i = 0;i < items.length; i++) {
4417
4471
  const r = items[i]._zod.run({ value: input[i], issues: [] }, ctx);
4418
4472
  if (r instanceof Promise) {
@@ -4421,12 +4475,20 @@ var $ZodTuple = /* @__PURE__ */ $constructor("$ZodTuple", (inst, def) => {
4421
4475
  }));
4422
4476
  } else {
4423
4477
  itemResults[i] = r;
4478
+ if (abortEarly && !itemAborted && r.issues.length)
4479
+ itemAborted = aborted(r);
4424
4480
  }
4425
4481
  }
4426
- if (def.rest) {
4482
+ if (def.rest && !itemAborted) {
4427
4483
  let i = items.length - 1;
4428
4484
  const rest = input.slice(items.length);
4485
+ let seen = payload.issues.length;
4429
4486
  for (const el of rest) {
4487
+ if (abortEarly && payload.issues.length !== seen) {
4488
+ if (aborted(payload, seen))
4489
+ break;
4490
+ seen = payload.issues.length;
4491
+ }
4430
4492
  i++;
4431
4493
  const result = def.rest._zod.run({ value: el, issues: [] }, ctx);
4432
4494
  if (result instanceof Promise) {
@@ -4654,7 +4716,14 @@ var $ZodMap = /* @__PURE__ */ $constructor("$ZodMap", (inst, def) => {
4654
4716
  }
4655
4717
  const proms = [];
4656
4718
  payload.value = memo ? memo.alloc(inst, payload, new Map, ctx) : new Map;
4719
+ const abortEarly = ctx?.abortEarly;
4720
+ let seen = payload.issues.length;
4657
4721
  for (const [key, value] of input) {
4722
+ if (abortEarly && payload.issues.length !== seen) {
4723
+ if (aborted(payload, seen))
4724
+ break;
4725
+ seen = payload.issues.length;
4726
+ }
4658
4727
  const keyResult = def.keyType._zod.run({ value: key, issues: [] }, ctx);
4659
4728
  const valueResult = def.valueType._zod.run({ value, issues: [] }, ctx);
4660
4729
  if (keyResult instanceof Promise || valueResult instanceof Promise) {
@@ -4717,7 +4786,14 @@ var $ZodSet = /* @__PURE__ */ $constructor("$ZodSet", (inst, def) => {
4717
4786
  }
4718
4787
  const proms = [];
4719
4788
  payload.value = memo ? memo.alloc(inst, payload, new Set, ctx) : new Set;
4789
+ const abortEarly = ctx?.abortEarly;
4790
+ let seen = payload.issues.length;
4720
4791
  for (const item of input) {
4792
+ if (abortEarly && payload.issues.length !== seen) {
4793
+ if (aborted(payload, seen))
4794
+ break;
4795
+ seen = payload.issues.length;
4796
+ }
4721
4797
  const result = def.valueType._zod.run({ value: item, issues: [] }, ctx);
4722
4798
  if (result instanceof Promise) {
4723
4799
  proms.push(result.then((result2) => handleSetResult(result2, payload)));
@@ -4740,8 +4816,10 @@ var $ZodEnum = /* @__PURE__ */ $constructor("$ZodEnum", (inst, def) => {
4740
4816
  const values = getEnumValues(def.entries);
4741
4817
  const valuesSet = new Set(values);
4742
4818
  inst._zod.values = valuesSet;
4743
- const patternValues = values.filter((k) => propertyKeyTypes.has(typeof k));
4744
- inst._zod.pattern = new RegExp(patternValues.length ? `^(${patternValues.map((o) => escapeRegex(o.toString())).join("|")})$` : "^[^\\s\\S]$");
4819
+ defineLazyInternal(inst, "pattern", (zod) => {
4820
+ const patternValues = getEnumValues(zod.def.entries).filter((k) => propertyKeyTypes.has(typeof k));
4821
+ return new RegExp(patternValues.length ? `^(${patternValues.map((o) => escapeRegex(o.toString())).join("|")})$` : "^[^\\s\\S]$");
4822
+ });
4745
4823
  inst._zod.parse = (payload, _ctx) => {
4746
4824
  const input = payload.value;
4747
4825
  if (valuesSet.has(input)) {
@@ -4760,7 +4838,10 @@ var $ZodLiteral = /* @__PURE__ */ $constructor("$ZodLiteral", (inst, def) => {
4760
4838
  $ZodType.init(inst, def);
4761
4839
  const values = new Set(def.values);
4762
4840
  inst._zod.values = values;
4763
- inst._zod.pattern = new RegExp(def.values.length ? `^(${def.values.map((o) => typeof o === "string" ? escapeRegex(o) : o ? escapeRegex(o.toString()) : String(o)).join("|")})$` : "^[^\\s\\S]$");
4841
+ defineLazyInternal(inst, "pattern", (zod) => {
4842
+ const vals = zod.def.values;
4843
+ return new RegExp(vals.length ? `^(${vals.map((o) => typeof o === "string" ? escapeRegex(o) : o ? escapeRegex(o.toString()) : String(o)).join("|")})$` : "^[^\\s\\S]$");
4844
+ });
4764
4845
  inst._zod.parse = (payload, _ctx) => {
4765
4846
  const input = payload.value;
4766
4847
  if (values.has(input)) {
@@ -5098,20 +5179,62 @@ function handleReadonlyResult(payload) {
5098
5179
  payload.value = Object.freeze(payload.value);
5099
5180
  return payload;
5100
5181
  }
5182
+ function leafPattern(schema) {
5183
+ const def = schema._zod.def;
5184
+ let pattern = def.pattern;
5185
+ let isInt = !!def.format?.includes("int");
5186
+ let minimum;
5187
+ let maximum;
5188
+ for (const ch of def.checks ?? []) {
5189
+ const d = ch._zod.def;
5190
+ if (d.pattern)
5191
+ pattern = d.pattern;
5192
+ isInt || (isInt = !!d.format?.includes("int"));
5193
+ const lo = d.minimum ?? d.length;
5194
+ const hi = d.maximum ?? d.length;
5195
+ if (lo !== undefined && (minimum === undefined || lo > minimum))
5196
+ minimum = lo;
5197
+ if (hi !== undefined && (maximum === undefined || hi < maximum))
5198
+ maximum = hi;
5199
+ }
5200
+ if (pattern)
5201
+ return pattern.source;
5202
+ if (minimum !== undefined && maximum !== undefined && minimum > maximum)
5203
+ return "(?!)";
5204
+ if (minimum !== undefined || maximum !== undefined)
5205
+ return string({ minimum, maximum }).source;
5206
+ const own2 = schema._zod.pattern;
5207
+ return (isInt && own2 === number ? integer : own2)?.source;
5208
+ }
5209
+ function partPattern(schema) {
5210
+ const def = schema._zod.def;
5211
+ const own2 = schema._zod.pattern?.source;
5212
+ const inner = def.innerType ?? schema._zod.innerType;
5213
+ if (inner) {
5214
+ const before = inner._zod.pattern?.source;
5215
+ const after = partPattern(inner);
5216
+ if (own2 && before && after && after !== before) {
5217
+ return own2.replace(cleanRegex(before), () => cleanRegex(after));
5218
+ }
5219
+ return own2;
5220
+ }
5221
+ if (def.options) {
5222
+ const sources = def.options.map(partPattern);
5223
+ if (sources.every(Boolean))
5224
+ return `^(${sources.map((s) => cleanRegex(s)).join("|")})$`;
5225
+ }
5226
+ return leafPattern(schema);
5227
+ }
5101
5228
  var $ZodTemplateLiteral = /* @__PURE__ */ $constructor("$ZodTemplateLiteral", (inst, def) => {
5102
5229
  $ZodType.init(inst, def);
5103
5230
  const regexParts = [];
5104
5231
  for (const part of def.parts) {
5105
5232
  if (typeof part === "object" && part !== null) {
5106
- if (!part._zod.pattern) {
5233
+ const source = partPattern(part);
5234
+ if (!source) {
5107
5235
  throw new Error(`Invalid template literal part, no pattern found: ${[...part._zod.traits].shift()}`);
5108
5236
  }
5109
- const source = part._zod.pattern instanceof RegExp ? part._zod.pattern.source : part._zod.pattern;
5110
- if (!source)
5111
- throw new Error(`Invalid template literal part: ${part._zod.traits}`);
5112
- const start = source.startsWith("^") ? 1 : 0;
5113
- const end = source.endsWith("$") ? source.length - 1 : source.length;
5114
- regexParts.push(source.slice(start, end));
5237
+ regexParts.push(cleanRegex(source));
5115
5238
  } else if (part === null || primitiveTypes.has(typeof part)) {
5116
5239
  regexParts.push(escapeRegex(`${part}`));
5117
5240
  } else {
@@ -5273,7 +5396,7 @@ function handleRefineResult(result, payload, input, inst) {
5273
5396
  payload.issues.push(issue(_iss));
5274
5397
  }
5275
5398
  }
5276
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/memoizer.js
5399
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/memoizer.js
5277
5400
  class $ZodCyclicError extends Error {
5278
5401
  constructor() {
5279
5402
  super(`Cannot parse a reference cycle that closes through a transform`);
@@ -5282,28 +5405,53 @@ class $ZodCyclicError extends Error {
5282
5405
  }
5283
5406
  var STATE = "~memo";
5284
5407
  var NO_ISSUES = [];
5408
+ function isRef(value) {
5409
+ return value !== null && typeof value === "object";
5410
+ }
5285
5411
  function cloneIssues(issues) {
5286
5412
  return issues.map((iss) => iss.path ? { ...iss, path: iss.path.slice() } : { ...iss });
5287
5413
  }
5288
5414
  var recursive = /* @__PURE__ */ new WeakMap;
5289
- function isRecursive(inst, stack) {
5415
+ var NONE = 0;
5416
+ var ASSUMED = 1;
5417
+ var PROVEN = 2;
5418
+ function isRecursive(inst, stack, resolve) {
5290
5419
  const cached2 = recursive.get(inst);
5291
5420
  if (cached2 !== undefined)
5292
- return cached2;
5421
+ return cached2 ? PROVEN : NONE;
5293
5422
  if (stack.has(inst))
5294
- return true;
5423
+ return PROVEN;
5295
5424
  stack.add(inst);
5296
- let result = false;
5425
+ let result = NONE;
5297
5426
  const check = (child) => {
5298
- if (!result && child?._zod && isRecursive(child, stack))
5299
- result = true;
5427
+ if (result !== PROVEN && child?._zod) {
5428
+ const answer = isRecursive(child, stack, resolve);
5429
+ if (answer > result)
5430
+ result = answer;
5431
+ }
5432
+ };
5433
+ const shape = (sh, spread) => {
5434
+ let answer = NONE;
5435
+ for (const key of Reflect.ownKeys(sh)) {
5436
+ const desc = Object.getOwnPropertyDescriptor(sh, key);
5437
+ if (spread && !desc.enumerable)
5438
+ continue;
5439
+ const child = desc.get ? ASSUMED : desc.value?._zod ? isRecursive(desc.value, stack, resolve) : NONE;
5440
+ if (child > answer)
5441
+ answer = child;
5442
+ }
5443
+ return answer;
5444
+ };
5445
+ const merge2 = (answer) => {
5446
+ if (answer > result)
5447
+ result = answer;
5300
5448
  };
5301
5449
  const def = inst._zod.def;
5302
5450
  const kind = def.type;
5303
5451
  switch (kind) {
5304
5452
  case "object": {
5305
- for (const key of Reflect.ownKeys(def.shape))
5306
- check(def.shape[key]);
5453
+ const raw = rawShape(def);
5454
+ merge2(raw ? shape(raw, true) : ASSUMED);
5307
5455
  check(def.catchall);
5308
5456
  break;
5309
5457
  }
@@ -5350,9 +5498,11 @@ function isRecursive(inst, stack) {
5350
5498
  check(def.input);
5351
5499
  check(def.output);
5352
5500
  break;
5353
- case "lazy":
5354
- check(inst._zod.innerType);
5501
+ case "lazy": {
5502
+ const inner = def._cachedInner ?? (resolve ? inst._zod.innerType : undefined);
5503
+ merge2(inner ? isRecursive(inner, stack, false) : ASSUMED);
5355
5504
  break;
5505
+ }
5356
5506
  case "template_literal":
5357
5507
  case "string":
5358
5508
  case "number":
@@ -5391,16 +5541,20 @@ function isRecursive(inst, stack) {
5391
5541
  }
5392
5542
  }
5393
5543
  stack.delete(inst);
5394
- recursive.set(inst, result);
5395
- return result;
5544
+ return settle(inst, result);
5545
+ }
5546
+ function settle(inst, answer) {
5547
+ if (answer !== ASSUMED)
5548
+ recursive.set(inst, answer === PROVEN);
5549
+ return answer;
5396
5550
  }
5397
5551
  function isRecursiveSchema(inst) {
5398
- return isRecursive(inst, new Set);
5552
+ return isRecursive(inst, new Set, true) !== NONE;
5399
5553
  }
5400
5554
  function bucketFor(state, inst) {
5401
5555
  let bucket = state.buckets.get(inst);
5402
5556
  if (!bucket) {
5403
- bucket = new Map;
5557
+ bucket = new WeakMap;
5404
5558
  state.buckets.set(inst, bucket);
5405
5559
  }
5406
5560
  return bucket;
@@ -5436,6 +5590,7 @@ var memo = {
5436
5590
  attach(inst) {
5437
5591
  var _a2;
5438
5592
  let isRecursiveInst;
5593
+ let rechecked = false;
5439
5594
  let lastCtx;
5440
5595
  let lastBucket;
5441
5596
  (_a2 = inst._zod).deferred ?? (_a2.deferred = []);
@@ -5443,20 +5598,24 @@ var memo = {
5443
5598
  const base = inst._zod.parse;
5444
5599
  const wrapped = (payload, ctx) => {
5445
5600
  if (isRecursiveInst === undefined) {
5446
- isRecursiveInst = isRecursive(inst, new Set);
5447
- if (!isRecursiveInst) {
5601
+ const walked = isRecursive(inst, new Set, false);
5602
+ if (walked === NONE) {
5448
5603
  inst._zod.parse = base;
5449
5604
  if (inst._zod.run === wrapped)
5450
5605
  inst._zod.run = base;
5451
5606
  return base(payload, ctx);
5452
5607
  }
5608
+ if (walked === PROVEN || rechecked)
5609
+ isRecursiveInst = true;
5610
+ else
5611
+ rechecked = true;
5453
5612
  }
5454
5613
  const input = payload.value;
5455
- if (input === null || typeof input !== "object")
5614
+ if (!isRef(input))
5456
5615
  return base(payload, ctx);
5457
5616
  let state = ctx[STATE];
5458
5617
  if (!state) {
5459
- state = { buckets: new Map, backEdges: undefined };
5618
+ state = { buckets: new WeakMap, backEdges: undefined };
5460
5619
  ctx[STATE] = state;
5461
5620
  }
5462
5621
  let bucket;
@@ -5475,7 +5634,7 @@ var memo = {
5475
5634
  payload.issues.push(...cloneIssues(hit.issues));
5476
5635
  } else {
5477
5636
  payload.memo = true;
5478
- state.backEdges ?? (state.backEdges = new Set);
5637
+ state.backEdges ?? (state.backEdges = new WeakSet);
5479
5638
  state.backEdges.add(hit.value);
5480
5639
  }
5481
5640
  return payload;
@@ -5507,9 +5666,9 @@ function memoizer() {
5507
5666
  }
5508
5667
  function isBackEdge(ctx, value) {
5509
5668
  const backEdges = ctx[STATE]?.backEdges;
5510
- return backEdges !== undefined && value !== null && typeof value === "object" && backEdges.has(value);
5669
+ return backEdges !== undefined && isRef(value) && backEdges.has(value);
5511
5670
  }
5512
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/index.js
5671
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/index.js
5513
5672
  var exports_locales = {};
5514
5673
  __export(exports_locales, {
5515
5674
  ar: () => ar_default,
@@ -5563,6 +5722,7 @@ __export(exports_locales, {
5563
5722
  sl: () => sl_default,
5564
5723
  sv: () => sv_default,
5565
5724
  ta: () => ta_default,
5725
+ tg: () => tg_default,
5566
5726
  th: () => th_default,
5567
5727
  tk: () => tk_default,
5568
5728
  tr: () => tr_default,
@@ -5576,7 +5736,7 @@ __export(exports_locales, {
5576
5736
  zhTW: () => zh_TW_default
5577
5737
  });
5578
5738
 
5579
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ar.js
5739
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ar.js
5580
5740
  var error = () => {
5581
5741
  const Sizable = {
5582
5742
  string: { unit: "\u062D\u0631\u0641", verb: "\u0623\u0646 \u064A\u062D\u0648\u064A" },
@@ -5617,6 +5777,8 @@ var error = () => {
5617
5777
  json_string: "\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",
5618
5778
  e164: "\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",
5619
5779
  credit_card: "\u0631\u0642\u0645 \u0628\u0637\u0627\u0642\u0629 \u0627\u0644\u0627\u0626\u062A\u0645\u0627\u0646",
5780
+ currency_code: "\u0631\u0645\u0632 \u0627\u0644\u0639\u0645\u0644\u0629",
5781
+ iban: "IBAN",
5620
5782
  jwt: "JWT",
5621
5783
  template_literal: "\u0645\u062F\u062E\u0644"
5622
5784
  };
@@ -5685,7 +5847,7 @@ function ar_default() {
5685
5847
  localeError: error()
5686
5848
  };
5687
5849
  }
5688
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/az.js
5850
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/az.js
5689
5851
  var error2 = () => {
5690
5852
  const Sizable = {
5691
5853
  string: { unit: "simvol", verb: "olmal\u0131d\u0131r" },
@@ -5726,6 +5888,8 @@ var error2 = () => {
5726
5888
  json_string: "JSON string",
5727
5889
  e164: "E.164 number",
5728
5890
  credit_card: "kredit kart\u0131 n\xF6mr\u0259si",
5891
+ currency_code: "valyuta kodu",
5892
+ iban: "IBAN",
5729
5893
  jwt: "JWT",
5730
5894
  template_literal: "input"
5731
5895
  };
@@ -5793,7 +5957,7 @@ function az_default() {
5793
5957
  localeError: error2()
5794
5958
  };
5795
5959
  }
5796
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/be.js
5960
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/be.js
5797
5961
  function getBelarusianPlural(count, one, few, many) {
5798
5962
  const absCount = Math.abs(count);
5799
5963
  const lastDigit = absCount % 10;
@@ -5884,6 +6048,8 @@ var error3 = () => {
5884
6048
  json_string: "JSON \u0440\u0430\u0434\u043E\u043A",
5885
6049
  e164: "\u043D\u0443\u043C\u0430\u0440 E.164",
5886
6050
  credit_card: "\u043D\u0443\u043C\u0430\u0440 \u043A\u0440\u044D\u0434\u044B\u0442\u043D\u0430\u0439 \u043A\u0430\u0440\u0442\u044B",
6051
+ currency_code: "\u043A\u043E\u0434 \u0432\u0430\u043B\u044E\u0442\u044B",
6052
+ iban: "IBAN",
5887
6053
  jwt: "JWT",
5888
6054
  template_literal: "\u0443\u0432\u043E\u0434"
5889
6055
  };
@@ -5959,7 +6125,7 @@ function be_default() {
5959
6125
  localeError: error3()
5960
6126
  };
5961
6127
  }
5962
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/bg.js
6128
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/bg.js
5963
6129
  var error4 = () => {
5964
6130
  const Sizable = {
5965
6131
  string: { unit: "\u0441\u0438\u043C\u0432\u043E\u043B\u0430", verb: "\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430" },
@@ -6000,6 +6166,8 @@ var error4 = () => {
6000
6166
  json_string: "JSON \u043D\u0438\u0437",
6001
6167
  e164: "E.164 \u043D\u043E\u043C\u0435\u0440",
6002
6168
  credit_card: "\u043D\u043E\u043C\u0435\u0440 \u043D\u0430 \u043A\u0440\u0435\u0434\u0438\u0442\u043D\u0430 \u043A\u0430\u0440\u0442\u0430",
6169
+ currency_code: "\u043A\u043E\u0434 \u043D\u0430 \u0432\u0430\u043B\u0443\u0442\u0430",
6170
+ iban: "IBAN",
6003
6171
  jwt: "JWT",
6004
6172
  template_literal: "\u0432\u0445\u043E\u0434"
6005
6173
  };
@@ -6082,7 +6250,7 @@ function bg_default() {
6082
6250
  localeError: error4()
6083
6251
  };
6084
6252
  }
6085
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/bn.js
6253
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/bn.js
6086
6254
  var error5 = () => {
6087
6255
  const Sizable = {
6088
6256
  string: { unit: "\u0985\u0995\u09CD\u09B7\u09B0", verb: "\u09A5\u09BE\u0995\u09A4\u09C7 \u09B9\u09AC\u09C7" },
@@ -6123,6 +6291,8 @@ var error5 = () => {
6123
6291
  json_string: "JSON \u09B8\u09CD\u099F\u09CD\u09B0\u09BF\u0982",
6124
6292
  e164: "E.164 \u09A8\u09AE\u09CD\u09AC\u09B0",
6125
6293
  credit_card: "\u0995\u09CD\u09B0\u09C7\u09A1\u09BF\u099F \u0995\u09BE\u09B0\u09CD\u09A1 \u09A8\u09AE\u09CD\u09AC\u09B0",
6294
+ currency_code: "\u09AE\u09C1\u09A6\u09CD\u09B0\u09BE \u0995\u09CB\u09A1",
6295
+ iban: "IBAN",
6126
6296
  jwt: "JWT",
6127
6297
  template_literal: "\u0987\u09A8\u09AA\u09C1\u099F"
6128
6298
  };
@@ -6193,7 +6363,7 @@ function bn_default() {
6193
6363
  localeError: error5()
6194
6364
  };
6195
6365
  }
6196
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ca.js
6366
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ca.js
6197
6367
  var error6 = () => {
6198
6368
  const Sizable = {
6199
6369
  string: { unit: "car\xE0cters", verb: "contenir" },
@@ -6234,6 +6404,8 @@ var error6 = () => {
6234
6404
  json_string: "cadena JSON",
6235
6405
  e164: "n\xFAmero E.164",
6236
6406
  credit_card: "n\xFAmero de targeta de cr\xE8dit",
6407
+ currency_code: "codi de moneda",
6408
+ iban: "IBAN",
6237
6409
  jwt: "JWT",
6238
6410
  template_literal: "entrada"
6239
6411
  };
@@ -6303,7 +6475,7 @@ function ca_default() {
6303
6475
  localeError: error6()
6304
6476
  };
6305
6477
  }
6306
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ckb.js
6478
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ckb.js
6307
6479
  var error7 = () => {
6308
6480
  const Sizable = {
6309
6481
  string: { unit: "\u067E\u06CC\u062A", verb: "\u0628\u06CE\u062A" },
@@ -6344,6 +6516,8 @@ var error7 = () => {
6344
6516
  json_string: "\u062F\u06D5\u0642\u06CC JSON",
6345
6517
  e164: "\u0698\u0645\u0627\u0631\u06D5\u06CC E.164",
6346
6518
  credit_card: "\u0698\u0645\u0627\u0631\u06D5\u06CC \u06A9\u0627\u0631\u062A\u06CC \u06A9\u0631\u06CE\u062F\u06CC\u062A",
6519
+ currency_code: "\u06A9\u06C6\u062F\u06CC \u062F\u0631\u0627\u0648",
6520
+ iban: "IBAN",
6347
6521
  jwt: "JWT",
6348
6522
  template_literal: "\u062A\u06CE\u06A9\u0631\u062F\u06D5"
6349
6523
  };
@@ -6433,7 +6607,7 @@ function ckb_default() {
6433
6607
  localeError: error7()
6434
6608
  };
6435
6609
  }
6436
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/cs.js
6610
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/cs.js
6437
6611
  var error8 = () => {
6438
6612
  const Sizable = {
6439
6613
  string: { unit: "znak\u016F", verb: "m\xEDt" },
@@ -6474,6 +6648,8 @@ var error8 = () => {
6474
6648
  json_string: "\u0159et\u011Bzec ve form\xE1tu JSON",
6475
6649
  e164: "\u010D\xEDslo E.164",
6476
6650
  credit_card: "\u010D\xEDslo kreditn\xED karty",
6651
+ currency_code: "k\xF3d m\u011Bny",
6652
+ iban: "IBAN",
6477
6653
  jwt: "JWT",
6478
6654
  template_literal: "vstup"
6479
6655
  };
@@ -6547,7 +6723,7 @@ function cs_default() {
6547
6723
  localeError: error8()
6548
6724
  };
6549
6725
  }
6550
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/da.js
6726
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/da.js
6551
6727
  var error9 = () => {
6552
6728
  const Sizable = {
6553
6729
  string: { unit: "tegn", verb: "havde" },
@@ -6588,6 +6764,8 @@ var error9 = () => {
6588
6764
  json_string: "JSON-streng",
6589
6765
  e164: "E.164-nummer",
6590
6766
  credit_card: "kreditkortnummer",
6767
+ currency_code: "valutakode",
6768
+ iban: "IBAN",
6591
6769
  jwt: "JWT",
6592
6770
  template_literal: "input"
6593
6771
  };
@@ -6665,7 +6843,7 @@ function da_default() {
6665
6843
  localeError: error9()
6666
6844
  };
6667
6845
  }
6668
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/de.js
6846
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/de.js
6669
6847
  var error10 = () => {
6670
6848
  const Sizable = {
6671
6849
  string: { unit: "Zeichen", verb: "zu haben" },
@@ -6706,6 +6884,8 @@ var error10 = () => {
6706
6884
  json_string: "JSON-String",
6707
6885
  e164: "E.164-Nummer",
6708
6886
  credit_card: "Kreditkartennummer",
6887
+ currency_code: "W\xE4hrungscode",
6888
+ iban: "IBAN",
6709
6889
  jwt: "JWT",
6710
6890
  template_literal: "Eingabe"
6711
6891
  };
@@ -6776,7 +6956,7 @@ function de_default() {
6776
6956
  localeError: error10()
6777
6957
  };
6778
6958
  }
6779
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/el.js
6959
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/el.js
6780
6960
  var error11 = () => {
6781
6961
  const Sizable = {
6782
6962
  string: { unit: "\u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2", verb: "\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9" },
@@ -6817,6 +6997,8 @@ var error11 = () => {
6817
6997
  json_string: "\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC JSON",
6818
6998
  e164: "\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 E.164",
6819
6999
  credit_card: "\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 \u03C0\u03B9\u03C3\u03C4\u03C9\u03C4\u03B9\u03BA\u03AE\u03C2 \u03BA\u03AC\u03C1\u03C4\u03B1\u03C2",
7000
+ currency_code: "\u03BA\u03C9\u03B4\u03B9\u03BA\u03CC\u03C2 \u03BD\u03BF\u03BC\u03AF\u03C3\u03BC\u03B1\u03C4\u03BF\u03C2",
7001
+ iban: "IBAN",
6820
7002
  jwt: "JWT",
6821
7003
  template_literal: "\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"
6822
7004
  };
@@ -6886,7 +7068,7 @@ function el_default() {
6886
7068
  localeError: error11()
6887
7069
  };
6888
7070
  }
6889
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/en.js
7071
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/en.js
6890
7072
  var error12 = () => {
6891
7073
  const Sizable = {
6892
7074
  string: { unit: "characters", verb: "to have" },
@@ -6926,7 +7108,9 @@ var error12 = () => {
6926
7108
  base64url: "base64url-encoded string",
6927
7109
  json_string: "JSON string",
6928
7110
  e164: "E.164 number",
7111
+ currency_code: "currency code",
6929
7112
  credit_card: "credit card number",
7113
+ iban: "IBAN",
6930
7114
  jwt: "JWT",
6931
7115
  template_literal: "input"
6932
7116
  };
@@ -7006,7 +7190,7 @@ function en_default() {
7006
7190
  localeError: error12()
7007
7191
  };
7008
7192
  }
7009
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/eo.js
7193
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/eo.js
7010
7194
  var error13 = () => {
7011
7195
  const Sizable = {
7012
7196
  string: { unit: "karaktrojn", verb: "havi" },
@@ -7047,6 +7231,8 @@ var error13 = () => {
7047
7231
  json_string: "JSON-karaktraro",
7048
7232
  e164: "E.164-nombro",
7049
7233
  credit_card: "kreditkarta numero",
7234
+ currency_code: "valuta kodo",
7235
+ iban: "IBAN",
7050
7236
  jwt: "JWT",
7051
7237
  template_literal: "enigo"
7052
7238
  };
@@ -7118,7 +7304,7 @@ function eo_default() {
7118
7304
  localeError: error13()
7119
7305
  };
7120
7306
  }
7121
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/es.js
7307
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/es.js
7122
7308
  var error14 = () => {
7123
7309
  const Sizable = {
7124
7310
  string: { unit: "caracteres", verb: "tener" },
@@ -7158,6 +7344,8 @@ var error14 = () => {
7158
7344
  json_string: "cadena JSON",
7159
7345
  e164: "n\xFAmero E.164",
7160
7346
  credit_card: "n\xFAmero de tarjeta de cr\xE9dito",
7347
+ currency_code: "c\xF3digo de moneda",
7348
+ iban: "IBAN",
7161
7349
  jwt: "JWT",
7162
7350
  template_literal: "entrada"
7163
7351
  };
@@ -7252,7 +7440,7 @@ function es_default() {
7252
7440
  localeError: error14()
7253
7441
  };
7254
7442
  }
7255
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/fa.js
7443
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/fa.js
7256
7444
  var error15 = () => {
7257
7445
  const Sizable = {
7258
7446
  string: { unit: "\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631", verb: "\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F" },
@@ -7293,6 +7481,8 @@ var error15 = () => {
7293
7481
  json_string: "JSON \u0631\u0634\u062A\u0647",
7294
7482
  e164: "E.164 \u0639\u062F\u062F",
7295
7483
  credit_card: "\u0634\u0645\u0627\u0631\u0647 \u06A9\u0627\u0631\u062A \u0627\u0639\u062A\u0628\u0627\u0631\u06CC",
7484
+ currency_code: "\u06A9\u062F \u0627\u0631\u0632",
7485
+ iban: "IBAN",
7296
7486
  jwt: "JWT",
7297
7487
  template_literal: "\u0648\u0631\u0648\u062F\u06CC"
7298
7488
  };
@@ -7369,7 +7559,7 @@ function fa_default() {
7369
7559
  localeError: error15()
7370
7560
  };
7371
7561
  }
7372
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/fi.js
7562
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/fi.js
7373
7563
  var error16 = () => {
7374
7564
  const Sizable = {
7375
7565
  string: { unit: "merkki\xE4", subject: "merkkijonon" },
@@ -7414,6 +7604,8 @@ var error16 = () => {
7414
7604
  json_string: "JSON-merkkijono",
7415
7605
  e164: "E.164-luku",
7416
7606
  credit_card: "luottokortin numero",
7607
+ currency_code: "valuuttakoodi",
7608
+ iban: "IBAN",
7417
7609
  jwt: "JWT",
7418
7610
  template_literal: "templaattimerkkijono"
7419
7611
  };
@@ -7484,7 +7676,7 @@ function fi_default() {
7484
7676
  localeError: error16()
7485
7677
  };
7486
7678
  }
7487
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/fr.js
7679
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/fr.js
7488
7680
  var error17 = () => {
7489
7681
  const Sizable = {
7490
7682
  string: { unit: "caract\xE8res", verb: "avoir" },
@@ -7524,6 +7716,8 @@ var error17 = () => {
7524
7716
  json_string: "cha\xEEne de caract\xE8res JSON",
7525
7717
  e164: "num\xE9ro au format E.164",
7526
7718
  credit_card: "num\xE9ro de carte de cr\xE9dit",
7719
+ currency_code: "code de devise",
7720
+ iban: "IBAN",
7527
7721
  jwt: "JWT",
7528
7722
  template_literal: "entr\xE9e"
7529
7723
  };
@@ -7611,7 +7805,7 @@ function fr_default() {
7611
7805
  localeError: error17()
7612
7806
  };
7613
7807
  }
7614
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/fr-CA.js
7808
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/fr-CA.js
7615
7809
  var error18 = () => {
7616
7810
  const Sizable = {
7617
7811
  string: { unit: "caract\xE8res", verb: "avoir" },
@@ -7652,6 +7846,8 @@ var error18 = () => {
7652
7846
  json_string: "cha\xEEne JSON",
7653
7847
  e164: "num\xE9ro E.164",
7654
7848
  credit_card: "num\xE9ro de carte de cr\xE9dit",
7849
+ currency_code: "code de devise",
7850
+ iban: "IBAN",
7655
7851
  jwt: "JWT",
7656
7852
  template_literal: "entr\xE9e"
7657
7853
  };
@@ -7721,7 +7917,7 @@ function fr_CA_default() {
7721
7917
  localeError: error18()
7722
7918
  };
7723
7919
  }
7724
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/gu.js
7920
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/gu.js
7725
7921
  var error19 = () => {
7726
7922
  const Sizable = {
7727
7923
  string: { unit: "\u0A85\u0A95\u0ACD\u0AB7\u0AB0", verb: "\u0AB9\u0ACB\u0AB5\u0ABE \u0A9C\u0ACB\u0A88\u0A8F" },
@@ -7762,6 +7958,8 @@ var error19 = () => {
7762
7958
  json_string: "JSON \u0AB8\u0ACD\u0A9F\u0ACD\u0AB0\u0ABF\u0A82\u0A97",
7763
7959
  e164: "E.164 \u0AA8\u0A82\u0AAC\u0AB0",
7764
7960
  credit_card: "\u0A95\u0ACD\u0AB0\u0AC7\u0AA1\u0ABF\u0A9F \u0A95\u0ABE\u0AB0\u0ACD\u0AA1 \u0AA8\u0A82\u0AAC\u0AB0",
7961
+ currency_code: "\u0A9A\u0AB2\u0AA3 \u0A95\u0ACB\u0AA1",
7962
+ iban: "IBAN",
7765
7963
  jwt: "JWT",
7766
7964
  template_literal: "\u0A87\u0AA8\u0AAA\u0AC1\u0A9F"
7767
7965
  };
@@ -7832,7 +8030,7 @@ function gu_default() {
7832
8030
  localeError: error19()
7833
8031
  };
7834
8032
  }
7835
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/he.js
8033
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/he.js
7836
8034
  var error20 = () => {
7837
8035
  const TypeNames = {
7838
8036
  string: { label: "\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA", gender: "f" },
@@ -7908,6 +8106,8 @@ var error20 = () => {
7908
8106
  json_string: { label: "\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON", gender: "f" },
7909
8107
  e164: { label: "\u05DE\u05E1\u05E4\u05E8 E.164", gender: "m" },
7910
8108
  credit_card: { label: "\u05DE\u05E1\u05E4\u05E8 \u05DB\u05E8\u05D8\u05D9\u05E1 \u05D0\u05E9\u05E8\u05D0\u05D9", gender: "m" },
8109
+ currency_code: { label: "\u05E7\u05D5\u05D3 \u05DE\u05D8\u05D1\u05E2", gender: "m" },
8110
+ iban: { label: "IBAN", gender: "m" },
7911
8111
  jwt: { label: "JWT", gender: "m" },
7912
8112
  template_literal: { label: "\u05E7\u05DC\u05D8", gender: "m" },
7913
8113
  ends_with: { label: "\u05E7\u05DC\u05D8", gender: "m" },
@@ -8030,7 +8230,7 @@ function he_default() {
8030
8230
  localeError: error20()
8031
8231
  };
8032
8232
  }
8033
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/hi.js
8233
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/hi.js
8034
8234
  var error21 = () => {
8035
8235
  const Sizable = {
8036
8236
  string: { unit: "\u0905\u0915\u094D\u0937\u0930", verb: "\u0930\u0916\u0928\u0947 \u0915\u0947 \u0932\u093F\u090F" },
@@ -8071,6 +8271,8 @@ var error21 = () => {
8071
8271
  json_string: "JSON \u0938\u094D\u091F\u094D\u0930\u093F\u0902\u0917",
8072
8272
  e164: "E.164 \u0938\u0902\u0916\u094D\u092F\u093E",
8073
8273
  credit_card: "\u0915\u094D\u0930\u0947\u0921\u093F\u091F \u0915\u093E\u0930\u094D\u0921 \u0938\u0902\u0916\u094D\u092F\u093E",
8274
+ currency_code: "\u092E\u0941\u0926\u094D\u0930\u093E \u0915\u094B\u0921",
8275
+ iban: "IBAN",
8074
8276
  jwt: "JWT",
8075
8277
  template_literal: "\u0907\u0928\u092A\u0941\u091F"
8076
8278
  };
@@ -8139,7 +8341,7 @@ function hi_default() {
8139
8341
  localeError: error21()
8140
8342
  };
8141
8343
  }
8142
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/hr.js
8344
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/hr.js
8143
8345
  var error22 = () => {
8144
8346
  const Sizable = {
8145
8347
  string: { unit: "znakova", verb: "imati" },
@@ -8179,6 +8381,8 @@ var error22 = () => {
8179
8381
  json_string: "JSON tekst",
8180
8382
  e164: "E.164 broj",
8181
8383
  credit_card: "broj kreditne kartice",
8384
+ currency_code: "kod valute",
8385
+ iban: "IBAN",
8182
8386
  jwt: "JWT",
8183
8387
  template_literal: "unos"
8184
8388
  };
@@ -8263,7 +8467,7 @@ function hr_default() {
8263
8467
  localeError: error22()
8264
8468
  };
8265
8469
  }
8266
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/hu.js
8470
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/hu.js
8267
8471
  var error23 = () => {
8268
8472
  const Sizable = {
8269
8473
  string: { unit: "karakter", verb: "legyen" },
@@ -8304,6 +8508,8 @@ var error23 = () => {
8304
8508
  json_string: "JSON string",
8305
8509
  e164: "E.164 sz\xE1m",
8306
8510
  credit_card: "hitelk\xE1rtyasz\xE1m",
8511
+ currency_code: "p\xE9nznemk\xF3d",
8512
+ iban: "IBAN",
8307
8513
  jwt: "JWT",
8308
8514
  template_literal: "bemenet"
8309
8515
  };
@@ -8374,7 +8580,7 @@ function hu_default() {
8374
8580
  localeError: error23()
8375
8581
  };
8376
8582
  }
8377
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/hy.js
8583
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/hy.js
8378
8584
  function getArmenianPlural(count, one, many) {
8379
8585
  return Math.abs(count) === 1 ? one : many;
8380
8586
  }
@@ -8455,6 +8661,8 @@ var error24 = () => {
8455
8661
  json_string: "JSON \u057F\u0578\u0572",
8456
8662
  e164: "E.164 \u0570\u0561\u0574\u0561\u0580",
8457
8663
  credit_card: "\u056F\u0580\u0565\u0564\u056B\u057F \u0584\u0561\u0580\u057F\u056B \u0570\u0561\u0574\u0561\u0580",
8664
+ currency_code: "\u0561\u0580\u056A\u0578\u0582\u0575\u0569\u056B \u056F\u0578\u0564",
8665
+ iban: "IBAN",
8458
8666
  jwt: "JWT",
8459
8667
  template_literal: "\u0574\u0578\u0582\u057F\u0584"
8460
8668
  };
@@ -8530,7 +8738,7 @@ function hy_default() {
8530
8738
  localeError: error24()
8531
8739
  };
8532
8740
  }
8533
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/id.js
8741
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/id.js
8534
8742
  var error25 = () => {
8535
8743
  const Sizable = {
8536
8744
  string: { unit: "karakter", verb: "memiliki" },
@@ -8571,6 +8779,8 @@ var error25 = () => {
8571
8779
  json_string: "string JSON",
8572
8780
  e164: "angka E.164",
8573
8781
  credit_card: "nomor kartu kredit",
8782
+ currency_code: "kode mata uang",
8783
+ iban: "IBAN",
8574
8784
  jwt: "JWT",
8575
8785
  template_literal: "input"
8576
8786
  };
@@ -8639,7 +8849,7 @@ function id_default() {
8639
8849
  localeError: error25()
8640
8850
  };
8641
8851
  }
8642
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/is.js
8852
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/is.js
8643
8853
  var error26 = () => {
8644
8854
  const Sizable = {
8645
8855
  string: { unit: "stafi", verb: "a\xF0 hafa" },
@@ -8680,6 +8890,8 @@ var error26 = () => {
8680
8890
  json_string: "JSON strengur",
8681
8891
  e164: "E.164 t\xF6lugildi",
8682
8892
  credit_card: "kreditkortan\xFAmer",
8893
+ currency_code: "gjaldmi\xF0ilsk\xF3\xF0i",
8894
+ iban: "IBAN",
8683
8895
  jwt: "JWT",
8684
8896
  template_literal: "gildi"
8685
8897
  };
@@ -8751,7 +8963,7 @@ function is_default() {
8751
8963
  localeError: error26()
8752
8964
  };
8753
8965
  }
8754
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/it.js
8966
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/it.js
8755
8967
  var error27 = () => {
8756
8968
  const Sizable = {
8757
8969
  string: { unit: "caratteri", verb: "avere" },
@@ -8792,6 +9004,8 @@ var error27 = () => {
8792
9004
  json_string: "stringa JSON",
8793
9005
  e164: "numero E.164",
8794
9006
  credit_card: "numero di carta di credito",
9007
+ currency_code: "codice valuta",
9008
+ iban: "IBAN",
8795
9009
  jwt: "JWT",
8796
9010
  template_literal: "input"
8797
9011
  };
@@ -8862,7 +9076,7 @@ function it_default() {
8862
9076
  localeError: error27()
8863
9077
  };
8864
9078
  }
8865
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ja.js
9079
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ja.js
8866
9080
  var error28 = () => {
8867
9081
  const Sizable = {
8868
9082
  string: { unit: "\u6587\u5B57", verb: "\u3067\u3042\u308B" },
@@ -8903,6 +9117,8 @@ var error28 = () => {
8903
9117
  json_string: "JSON\u6587\u5B57\u5217",
8904
9118
  e164: "E.164\u756A\u53F7",
8905
9119
  credit_card: "\u30AF\u30EC\u30B8\u30C3\u30C8\u30AB\u30FC\u30C9\u756A\u53F7",
9120
+ currency_code: "\u901A\u8CA8\u30B3\u30FC\u30C9",
9121
+ iban: "IBAN",
8906
9122
  jwt: "JWT",
8907
9123
  template_literal: "\u5165\u529B\u5024"
8908
9124
  };
@@ -8972,7 +9188,7 @@ function ja_default() {
8972
9188
  localeError: error28()
8973
9189
  };
8974
9190
  }
8975
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ka.js
9191
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ka.js
8976
9192
  var error29 = () => {
8977
9193
  const Sizable = {
8978
9194
  string: { unit: "\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD", verb: "\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1" },
@@ -9013,6 +9229,8 @@ var error29 = () => {
9013
9229
  json_string: "JSON \u10D5\u10D4\u10DA\u10D8",
9014
9230
  e164: "E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",
9015
9231
  credit_card: "\u10E1\u10D0\u10D9\u10E0\u10D4\u10D3\u10D8\u10E2\u10DD \u10D1\u10D0\u10E0\u10D0\u10D7\u10D8\u10E1 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",
9232
+ currency_code: "\u10D5\u10D0\u10DA\u10E3\u10E2\u10D8\u10E1 \u10D9\u10DD\u10D3\u10D8",
9233
+ iban: "IBAN",
9016
9234
  jwt: "JWT",
9017
9235
  template_literal: "\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"
9018
9236
  };
@@ -9087,7 +9305,7 @@ function ka_default() {
9087
9305
  localeError: error29()
9088
9306
  };
9089
9307
  }
9090
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/km.js
9308
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/km.js
9091
9309
  var error30 = () => {
9092
9310
  const Sizable = {
9093
9311
  string: { unit: "\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A", verb: "\u1782\u17BD\u179A\u1798\u17B6\u1793" },
@@ -9128,6 +9346,8 @@ var error30 = () => {
9128
9346
  json_string: "\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",
9129
9347
  e164: "\u179B\u17C1\u1781 E.164",
9130
9348
  credit_card: "\u179B\u17C1\u1781\u1794\u17D0\u178E\u17D2\u178E\u17A5\u178E\u1791\u17B6\u1793",
9349
+ currency_code: "\u1780\u17BC\u178A\u179A\u17BC\u1794\u17B7\u1799\u1794\u17D0\u178E\u17D2\u178E",
9350
+ iban: "IBAN",
9131
9351
  jwt: "JWT",
9132
9352
  template_literal: "\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"
9133
9353
  };
@@ -9201,11 +9421,11 @@ function km_default() {
9201
9421
  };
9202
9422
  }
9203
9423
 
9204
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/kh.js
9424
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/kh.js
9205
9425
  function kh_default() {
9206
9426
  return km_default();
9207
9427
  }
9208
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/kn.js
9428
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/kn.js
9209
9429
  var error31 = () => {
9210
9430
  const Sizable = {
9211
9431
  string: { unit: "\u0C85\u0C95\u0CCD\u0CB7\u0CB0\u0C97\u0CB3\u0CC1", verb: "\u0CB9\u0CCA\u0C82\u0CA6\u0CB2\u0CC1" },
@@ -9246,6 +9466,8 @@ var error31 = () => {
9246
9466
  json_string: "JSON\u0CB8\u0CCD\u0C9F\u0CCD\u0CB0\u0CBF\u0C82\u0C97\u0CCD",
9247
9467
  e164: "E.164 \u0CB8\u0C82\u0C96\u0CCD\u0CAF\u0CC6",
9248
9468
  credit_card: "\u0C95\u0CCD\u0CB0\u0CC6\u0CA1\u0CBF\u0C9F\u0CCD \u0C95\u0CBE\u0CB0\u0CCD\u0CA1\u0CCD \u0CB8\u0C82\u0C96\u0CCD\u0CAF\u0CC6",
9469
+ currency_code: "\u0C95\u0CB0\u0CC6\u0CA8\u0CCD\u0CB8\u0CBF \u0C95\u0CCB\u0CA1\u0CCD",
9470
+ iban: "IBAN",
9249
9471
  jwt: "JWT",
9250
9472
  template_literal: "\u0C87\u0CA8\u0CCD\u0CAA\u0CC1\u0C9F\u0CCD"
9251
9473
  };
@@ -9316,7 +9538,7 @@ function kn_default() {
9316
9538
  localeError: error31()
9317
9539
  };
9318
9540
  }
9319
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ko.js
9541
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ko.js
9320
9542
  var error32 = () => {
9321
9543
  const Sizable = {
9322
9544
  string: { unit: "\uBB38\uC790", verb: "to have" },
@@ -9357,6 +9579,8 @@ var error32 = () => {
9357
9579
  json_string: "JSON \uBB38\uC790\uC5F4",
9358
9580
  e164: "E.164 \uBC88\uD638",
9359
9581
  credit_card: "\uC2E0\uC6A9\uCE74\uB4DC \uBC88\uD638",
9582
+ currency_code: "\uD1B5\uD654 \uCF54\uB4DC",
9583
+ iban: "IBAN",
9360
9584
  jwt: "JWT",
9361
9585
  template_literal: "\uC785\uB825"
9362
9586
  };
@@ -9430,7 +9654,7 @@ function ko_default() {
9430
9654
  localeError: error32()
9431
9655
  };
9432
9656
  }
9433
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/lt.js
9657
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/lt.js
9434
9658
  var capitalizeFirstCharacter = (text) => {
9435
9659
  return text.charAt(0).toUpperCase() + text.slice(1);
9436
9660
  };
@@ -9553,6 +9777,8 @@ var error33 = () => {
9553
9777
  json_string: "JSON eilut\u0117",
9554
9778
  e164: "E.164 numeris",
9555
9779
  credit_card: "kredito kortel\u0117s numeris",
9780
+ currency_code: "valiutos kodas",
9781
+ iban: "IBAN",
9556
9782
  jwt: "JWT",
9557
9783
  template_literal: "\u012Fvestis"
9558
9784
  };
@@ -9635,7 +9861,7 @@ function lt_default() {
9635
9861
  localeError: error33()
9636
9862
  };
9637
9863
  }
9638
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/mk.js
9864
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/mk.js
9639
9865
  var error34 = () => {
9640
9866
  const Sizable = {
9641
9867
  string: { unit: "\u0437\u043D\u0430\u0446\u0438", verb: "\u0434\u0430 \u0438\u043C\u0430\u0430\u0442" },
@@ -9676,6 +9902,8 @@ var error34 = () => {
9676
9902
  json_string: "JSON \u043D\u0438\u0437\u0430",
9677
9903
  e164: "E.164 \u0431\u0440\u043E\u0458",
9678
9904
  credit_card: "\u0431\u0440\u043E\u0458 \u043D\u0430 \u043A\u0440\u0435\u0434\u0438\u0442\u043D\u0430 \u043A\u0430\u0440\u0442\u0438\u0447\u043A\u0430",
9905
+ currency_code: "\u043A\u043E\u0434 \u043D\u0430 \u0432\u0430\u043B\u0443\u0442\u0430",
9906
+ iban: "IBAN",
9679
9907
  jwt: "JWT",
9680
9908
  template_literal: "\u0432\u043D\u0435\u0441"
9681
9909
  };
@@ -9747,7 +9975,7 @@ function mk_default() {
9747
9975
  localeError: error34()
9748
9976
  };
9749
9977
  }
9750
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ms.js
9978
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ms.js
9751
9979
  var error35 = () => {
9752
9980
  const Sizable = {
9753
9981
  string: { unit: "aksara", verb: "mempunyai" },
@@ -9788,6 +10016,8 @@ var error35 = () => {
9788
10016
  json_string: "string JSON",
9789
10017
  e164: "nombor E.164",
9790
10018
  credit_card: "nombor kad kredit",
10019
+ currency_code: "kod mata wang",
10020
+ iban: "IBAN",
9791
10021
  jwt: "JWT",
9792
10022
  template_literal: "input"
9793
10023
  };
@@ -9857,7 +10087,7 @@ function ms_default() {
9857
10087
  localeError: error35()
9858
10088
  };
9859
10089
  }
9860
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ne.js
10090
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ne.js
9861
10091
  var error36 = () => {
9862
10092
  const Sizable = {
9863
10093
  string: { unit: "\u0905\u0915\u094D\u0937\u0930", verb: "\u0939\u0941\u0928\u0941\u092A\u0930\u094D\u091B" },
@@ -9898,6 +10128,8 @@ var error36 = () => {
9898
10128
  json_string: "JSON \u0938\u094D\u091F\u094D\u0930\u093F\u0919",
9899
10129
  e164: "E.164 \u0928\u092E\u094D\u092C\u0930",
9900
10130
  credit_card: "\u0915\u094D\u0930\u0947\u0921\u093F\u091F \u0915\u093E\u0930\u094D\u0921 \u0928\u092E\u094D\u092C\u0930",
10131
+ currency_code: "\u092E\u0941\u0926\u094D\u0930\u093E \u0915\u094B\u0921",
10132
+ iban: "IBAN",
9901
10133
  jwt: "JWT",
9902
10134
  template_literal: "\u0907\u0928\u092A\u0941\u091F"
9903
10135
  };
@@ -9966,7 +10198,7 @@ function ne_default() {
9966
10198
  localeError: error36()
9967
10199
  };
9968
10200
  }
9969
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/nl.js
10201
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/nl.js
9970
10202
  var error37 = () => {
9971
10203
  const Sizable = {
9972
10204
  string: { unit: "tekens", verb: "heeft" },
@@ -10007,6 +10239,8 @@ var error37 = () => {
10007
10239
  json_string: "JSON string",
10008
10240
  e164: "E.164-nummer",
10009
10241
  credit_card: "creditcardnummer",
10242
+ currency_code: "valutacode",
10243
+ iban: "IBAN",
10010
10244
  jwt: "JWT",
10011
10245
  template_literal: "invoer"
10012
10246
  };
@@ -10079,7 +10313,7 @@ function nl_default() {
10079
10313
  localeError: error37()
10080
10314
  };
10081
10315
  }
10082
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/nn.js
10316
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/nn.js
10083
10317
  var error38 = () => {
10084
10318
  const Sizable = {
10085
10319
  string: { unit: "teikn", verb: "\xE5 ha" },
@@ -10120,6 +10354,8 @@ var error38 = () => {
10120
10354
  json_string: "JSON-streng",
10121
10355
  e164: "E.164-nummer",
10122
10356
  credit_card: "kredittkortnummer",
10357
+ currency_code: "valutakode",
10358
+ iban: "IBAN",
10123
10359
  jwt: "JWT",
10124
10360
  template_literal: "input"
10125
10361
  };
@@ -10190,7 +10426,7 @@ function nn_default() {
10190
10426
  localeError: error38()
10191
10427
  };
10192
10428
  }
10193
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/no.js
10429
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/no.js
10194
10430
  var error39 = () => {
10195
10431
  const Sizable = {
10196
10432
  string: { unit: "tegn", verb: "\xE5 ha" },
@@ -10231,6 +10467,8 @@ var error39 = () => {
10231
10467
  json_string: "JSON-streng",
10232
10468
  e164: "E.164-nummer",
10233
10469
  credit_card: "kredittkortnummer",
10470
+ currency_code: "valutakode",
10471
+ iban: "IBAN",
10234
10472
  jwt: "JWT",
10235
10473
  template_literal: "input"
10236
10474
  };
@@ -10301,7 +10539,7 @@ function no_default() {
10301
10539
  localeError: error39()
10302
10540
  };
10303
10541
  }
10304
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ota.js
10542
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ota.js
10305
10543
  var error40 = () => {
10306
10544
  const Sizable = {
10307
10545
  string: { unit: "harf", verb: "olmal\u0131d\u0131r" },
@@ -10342,6 +10580,8 @@ var error40 = () => {
10342
10580
  json_string: "JSON metin",
10343
10581
  e164: "E.164 say\u0131s\u0131",
10344
10582
  credit_card: "i'tib\xE2r kart\u0131 numaras\u0131",
10583
+ currency_code: "para birimi kodu",
10584
+ iban: "IBAN",
10345
10585
  jwt: "JWT",
10346
10586
  template_literal: "giren"
10347
10587
  };
@@ -10413,7 +10653,7 @@ function ota_default() {
10413
10653
  localeError: error40()
10414
10654
  };
10415
10655
  }
10416
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ps.js
10656
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ps.js
10417
10657
  var error41 = () => {
10418
10658
  const Sizable = {
10419
10659
  string: { unit: "\u062A\u0648\u06A9\u064A", verb: "\u0648\u0644\u0631\u064A" },
@@ -10454,6 +10694,8 @@ var error41 = () => {
10454
10694
  json_string: "JSON \u0645\u062A\u0646",
10455
10695
  e164: "\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",
10456
10696
  credit_card: "\u062F \u06A9\u0631\u06CC\u0689\u06CC\u067C \u06A9\u0627\u0631\u062A \u0634\u0645\u06CC\u0631\u0647",
10697
+ currency_code: "\u062F \u0627\u0633\u0639\u0627\u0631\u0648 \u06A9\u0648\u0689",
10698
+ iban: "IBAN",
10457
10699
  jwt: "JWT",
10458
10700
  template_literal: "\u0648\u0631\u0648\u062F\u064A"
10459
10701
  };
@@ -10530,7 +10772,7 @@ function ps_default() {
10530
10772
  localeError: error41()
10531
10773
  };
10532
10774
  }
10533
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/pl.js
10775
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/pl.js
10534
10776
  var error42 = () => {
10535
10777
  const Sizable = {
10536
10778
  string: { unit: "znak\xF3w", verb: "mie\u0107" },
@@ -10571,6 +10813,8 @@ var error42 = () => {
10571
10813
  json_string: "ci\u0105g znak\xF3w w formacie JSON",
10572
10814
  e164: "liczba E.164",
10573
10815
  credit_card: "numer karty kredytowej",
10816
+ currency_code: "kod waluty",
10817
+ iban: "IBAN",
10574
10818
  jwt: "JWT",
10575
10819
  template_literal: "wej\u015Bcie"
10576
10820
  };
@@ -10642,7 +10886,7 @@ function pl_default() {
10642
10886
  localeError: error42()
10643
10887
  };
10644
10888
  }
10645
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/pt.js
10889
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/pt.js
10646
10890
  var error43 = () => {
10647
10891
  const Sizable = {
10648
10892
  string: { unit: "caracteres" },
@@ -10683,6 +10927,8 @@ var error43 = () => {
10683
10927
  json_string: "o texto JSON",
10684
10928
  e164: "o n\xFAmero E.164",
10685
10929
  credit_card: "o n\xFAmero de cart\xE3o de cr\xE9dito",
10930
+ currency_code: "o c\xF3digo de moeda",
10931
+ iban: "o IBAN",
10686
10932
  jwt: "o JWT",
10687
10933
  template_literal: "a entrada"
10688
10934
  };
@@ -10782,7 +11028,7 @@ function pt_default() {
10782
11028
  localeError: error43()
10783
11029
  };
10784
11030
  }
10785
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/pt-BR.js
11031
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/pt-BR.js
10786
11032
  var error44 = () => {
10787
11033
  const Sizable = {
10788
11034
  string: { unit: "caracteres" },
@@ -10823,6 +11069,8 @@ var error44 = () => {
10823
11069
  json_string: "o texto JSON",
10824
11070
  e164: "o n\xFAmero E.164",
10825
11071
  credit_card: "o n\xFAmero de cart\xE3o de cr\xE9dito",
11072
+ currency_code: "o c\xF3digo de moeda",
11073
+ iban: "o IBAN",
10826
11074
  jwt: "o JWT",
10827
11075
  template_literal: "a entrada"
10828
11076
  };
@@ -10923,7 +11171,7 @@ function pt_BR_default() {
10923
11171
  localeError: error44()
10924
11172
  };
10925
11173
  }
10926
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ro.js
11174
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ro.js
10927
11175
  var error45 = () => {
10928
11176
  const Sizable = {
10929
11177
  string: { unit: "caractere", verb: "s\u0103 aib\u0103" },
@@ -10964,6 +11212,8 @@ var error45 = () => {
10964
11212
  json_string: "\u0219ir JSON",
10965
11213
  e164: "num\u0103r E.164",
10966
11214
  credit_card: "num\u0103r de card de credit",
11215
+ currency_code: "cod valutar",
11216
+ iban: "IBAN",
10967
11217
  jwt: "JWT",
10968
11218
  template_literal: "intrare"
10969
11219
  };
@@ -11043,7 +11293,7 @@ function ro_default() {
11043
11293
  localeError: error45()
11044
11294
  };
11045
11295
  }
11046
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ru.js
11296
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ru.js
11047
11297
  function getRussianPlural(count, one, few, many) {
11048
11298
  const absCount = Math.abs(count);
11049
11299
  const lastDigit = absCount % 10;
@@ -11134,6 +11384,8 @@ var error46 = () => {
11134
11384
  json_string: "JSON \u0441\u0442\u0440\u043E\u043A\u0430",
11135
11385
  e164: "\u043D\u043E\u043C\u0435\u0440 E.164",
11136
11386
  credit_card: "\u043D\u043E\u043C\u0435\u0440 \u043A\u0440\u0435\u0434\u0438\u0442\u043D\u043E\u0439 \u043A\u0430\u0440\u0442\u044B",
11387
+ currency_code: "\u043A\u043E\u0434 \u0432\u0430\u043B\u044E\u0442\u044B",
11388
+ iban: "IBAN",
11137
11389
  jwt: "JWT",
11138
11390
  template_literal: "\u0432\u0432\u043E\u0434"
11139
11391
  };
@@ -11209,7 +11461,7 @@ function ru_default() {
11209
11461
  localeError: error46()
11210
11462
  };
11211
11463
  }
11212
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/sk.js
11464
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/sk.js
11213
11465
  var error47 = () => {
11214
11466
  const Sizable = {
11215
11467
  string: { unit: "znakov", verb: "ma\u0165" },
@@ -11250,6 +11502,8 @@ var error47 = () => {
11250
11502
  json_string: "re\u0165azec vo form\xE1te JSON",
11251
11503
  e164: "\u010D\xEDslo E.164",
11252
11504
  credit_card: "\u010D\xEDslo kreditnej karty",
11505
+ currency_code: "k\xF3d meny",
11506
+ iban: "IBAN",
11253
11507
  jwt: "JWT",
11254
11508
  template_literal: "vstup"
11255
11509
  };
@@ -11323,7 +11577,7 @@ function sk_default() {
11323
11577
  localeError: error47()
11324
11578
  };
11325
11579
  }
11326
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/sl.js
11580
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/sl.js
11327
11581
  var error48 = () => {
11328
11582
  const Sizable = {
11329
11583
  string: { unit: "znakov", verb: "imeti" },
@@ -11364,6 +11618,8 @@ var error48 = () => {
11364
11618
  json_string: "JSON niz",
11365
11619
  e164: "E.164 \u0161tevilka",
11366
11620
  credit_card: "\u0161tevilka kreditne kartice",
11621
+ currency_code: "koda valute",
11622
+ iban: "IBAN",
11367
11623
  jwt: "JWT",
11368
11624
  template_literal: "vnos"
11369
11625
  };
@@ -11435,7 +11691,7 @@ function sl_default() {
11435
11691
  localeError: error48()
11436
11692
  };
11437
11693
  }
11438
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/sv.js
11694
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/sv.js
11439
11695
  var error49 = () => {
11440
11696
  const Sizable = {
11441
11697
  string: { unit: "tecken", verb: "att ha" },
@@ -11476,6 +11732,8 @@ var error49 = () => {
11476
11732
  json_string: "JSON-str\xE4ng",
11477
11733
  e164: "E.164-nummer",
11478
11734
  credit_card: "kreditkortsnummer",
11735
+ currency_code: "valutakod",
11736
+ iban: "IBAN",
11479
11737
  jwt: "JWT",
11480
11738
  template_literal: "mall-literal"
11481
11739
  };
@@ -11548,7 +11806,7 @@ function sv_default() {
11548
11806
  localeError: error49()
11549
11807
  };
11550
11808
  }
11551
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ta.js
11809
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ta.js
11552
11810
  var error50 = () => {
11553
11811
  const Sizable = {
11554
11812
  string: { unit: "\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD", verb: "\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD" },
@@ -11589,6 +11847,8 @@ var error50 = () => {
11589
11847
  json_string: "JSON \u0B9A\u0BB0\u0BAE\u0BCD",
11590
11848
  e164: "E.164 \u0B8E\u0BA3\u0BCD",
11591
11849
  credit_card: "\u0B95\u0B9F\u0BA9\u0BCD \u0B85\u0B9F\u0BCD\u0B9F\u0BC8 \u0B8E\u0BA3\u0BCD",
11850
+ currency_code: "\u0BA8\u0BBE\u0BA3\u0BAF\u0B95\u0BCD \u0B95\u0BC1\u0BB1\u0BBF\u0BAF\u0BC0\u0B9F\u0BC1",
11851
+ iban: "IBAN",
11592
11852
  jwt: "JWT",
11593
11853
  template_literal: "input"
11594
11854
  };
@@ -11661,23 +11921,23 @@ function ta_default() {
11661
11921
  localeError: error50()
11662
11922
  };
11663
11923
  }
11664
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/th.js
11924
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/tg.js
11665
11925
  var error51 = () => {
11666
11926
  const Sizable = {
11667
- string: { unit: "\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
11668
- file: { unit: "\u0E44\u0E1A\u0E15\u0E4C", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
11669
- array: { unit: "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
11670
- set: { unit: "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
11671
- map: { unit: "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" }
11927
+ string: { unit: "\u0430\u043B\u043E\u043C\u0430\u0442", verb: "\u0434\u043E\u0448\u0442\u0430 \u0431\u043E\u0448\u0430\u0434" },
11928
+ file: { unit: "\u0431\u0430\u0439\u0442", verb: "\u0434\u043E\u0448\u0442\u0430 \u0431\u043E\u0448\u0430\u0434" },
11929
+ array: { unit: "\u0443\u043D\u0441\u0443\u0440", verb: "\u0434\u043E\u0448\u0442\u0430 \u0431\u043E\u0448\u0430\u0434" },
11930
+ set: { unit: "\u0443\u043D\u0441\u0443\u0440", verb: "\u0434\u043E\u0448\u0442\u0430 \u0431\u043E\u0448\u0430\u0434" },
11931
+ map: { unit: "\u0441\u0430\u0431\u0442", verb: "\u0434\u043E\u0448\u0442\u0430 \u0431\u043E\u0448\u0430\u0434" }
11672
11932
  };
11673
11933
  function getSizing(origin) {
11674
11934
  return Sizable[origin] ?? null;
11675
11935
  }
11676
11936
  const FormatDictionary = {
11677
- regex: "\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",
11678
- email: "\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",
11937
+ regex: "\u0432\u0443\u0440\u0443\u0434",
11938
+ email: "\u0441\u0443\u0440\u043E\u0493\u0430\u0438 email",
11679
11939
  url: "URL",
11680
- emoji: "\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",
11940
+ emoji: "\u044D\u043C\u043E\u04B7\u0438",
11681
11941
  uuid: "UUID",
11682
11942
  uuidv4: "UUIDv4",
11683
11943
  uuidv6: "UUIDv6",
@@ -11688,28 +11948,32 @@ var error51 = () => {
11688
11948
  ulid: "ULID",
11689
11949
  xid: "XID",
11690
11950
  ksuid: "KSUID",
11691
- datetime: "\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",
11692
- date: "\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",
11693
- time: "\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",
11694
- duration: "\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",
11695
- ipv4: "\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",
11696
- ipv6: "\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",
11697
- mac: "\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 MAC",
11698
- cidrv4: "\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",
11699
- cidrv6: "\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",
11700
- base64: "\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",
11701
- base64url: "\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",
11702
- json_string: "\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",
11703
- e164: "\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",
11704
- credit_card: "\u0E2B\u0E21\u0E32\u0E22\u0E40\u0E25\u0E02\u0E1A\u0E31\u0E15\u0E23\u0E40\u0E04\u0E23\u0E14\u0E34\u0E15",
11705
- jwt: "\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",
11706
- template_literal: "\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"
11951
+ datetime: "\u0441\u0430\u043D\u0430\u0432\u0443 \u0432\u0430\u049B\u0442\u0438 ISO",
11952
+ date: "\u0441\u0430\u043D\u0430\u0438 ISO",
11953
+ time: "\u0432\u0430\u049B\u0442\u0438 ISO",
11954
+ duration: "\u0434\u0430\u0432\u043E\u043C\u043D\u043E\u043A\u0438\u0438 ISO",
11955
+ ipv4: "\u0441\u0443\u0440\u043E\u0493\u0430\u0438 IPv4",
11956
+ ipv6: "\u0441\u0443\u0440\u043E\u0493\u0430\u0438 IPv6",
11957
+ mac: "\u0441\u0443\u0440\u043E\u0493\u0430\u0438 MAC",
11958
+ cidrv4: "\u043C\u0430\u04B3\u0434\u0443\u0434\u0430\u0438 IPv4",
11959
+ cidrv6: "\u043C\u0430\u04B3\u0434\u0443\u0434\u0430\u0438 IPv6",
11960
+ base64: "\u0441\u0430\u0442\u0440\u0438 \u0434\u0430\u0440 \u0444\u043E\u0440\u043C\u0430\u0442\u0438 base64",
11961
+ base64url: "\u0441\u0430\u0442\u0440\u0438 \u0434\u0430\u0440 \u0444\u043E\u0440\u043C\u0430\u0442\u0438 base64url",
11962
+ json_string: "\u0441\u0430\u0442\u0440\u0438 JSON",
11963
+ e164: "\u0440\u0430\u049B\u0430\u043C\u0438 E.164",
11964
+ credit_card: "\u0440\u0430\u049B\u0430\u043C\u0438 \u043A\u043E\u0440\u0442\u0438 \u043A\u0440\u0435\u0434\u0438\u0442\u04E3",
11965
+ currency_code: "\u0440\u0430\u043C\u0437\u0438 \u0430\u0441\u044A\u043E\u0440",
11966
+ iban: "IBAN",
11967
+ jwt: "JWT",
11968
+ template_literal: "\u0432\u0443\u0440\u0443\u0434"
11707
11969
  };
11708
11970
  const TypeDictionary = {
11709
11971
  nan: "NaN",
11710
- number: "\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02",
11711
- array: "\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)",
11712
- null: "\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)"
11972
+ number: "\u0440\u0430\u049B\u0430\u043C",
11973
+ string: "\u0441\u0430\u0442\u0440",
11974
+ array: "\u043C\u0430\u0441\u0441\u0438\u0432",
11975
+ object: "\u043E\u0431\u044A\u0435\u043A\u0442",
11976
+ date: "\u0441\u0430\u043D\u0430"
11713
11977
  };
11714
11978
  return (issue2) => {
11715
11979
  switch (issue2.code) {
@@ -11717,10 +11981,124 @@ var error51 = () => {
11717
11981
  const expected = TypeDictionary[issue2.expected] ?? issue2.expected;
11718
11982
  const receivedType = parsedType(issue2.input);
11719
11983
  const received = TypeDictionary[receivedType] ?? receivedType;
11720
- if (/^[A-Z]/.test(issue2.expected)) {
11721
- return `\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 instanceof ${issue2.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${received}`;
11722
- }
11723
- return `\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${received}`;
11984
+ return `\u0412\u0443\u0440\u0443\u0434\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442: ${expected} \u0438\u043D\u0442\u0438\u0437\u043E\u0440 \u043C\u0435\u0440\u0430\u0444\u0442, ${received} \u0433\u0438\u0440\u0438\u0444\u0442\u0430 \u0448\u0443\u0434`;
11985
+ }
11986
+ case "invalid_value":
11987
+ if (issue2.values.length === 1)
11988
+ return `\u0412\u0443\u0440\u0443\u0434\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442: ${stringifyPrimitive(issue2.values[0])} \u0438\u043D\u0442\u0438\u0437\u043E\u0440 \u043C\u0435\u0440\u0430\u0444\u0442`;
11989
+ return `\u0418\u043D\u0442\u0438\u0445\u043E\u0431\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442: \u044F\u043A\u0435 \u0430\u0437 ${joinValues(issue2.values, "|")} \u0438\u043D\u0442\u0438\u0437\u043E\u0440 \u043C\u0435\u0440\u0430\u0444\u0442`;
11990
+ case "too_big": {
11991
+ const adj = issue2.inclusive ? "<=" : "<";
11992
+ const sizing = getSizing(issue2.origin);
11993
+ if (sizing)
11994
+ return `\u0425\u0435\u043B\u0435 \u043A\u0430\u043B\u043E\u043D: ${issue2.origin ?? "\u049B\u0438\u043C\u0430\u0442"} \u0431\u043E\u044F\u0434 ${adj}${issue2.maximum.toString()} ${sizing.unit} ${sizing.verb}`;
11995
+ return `\u0425\u0435\u043B\u0435 \u043A\u0430\u043B\u043E\u043D: ${issue2.origin ?? "\u049B\u0438\u043C\u0430\u0442"} \u0431\u043E\u044F\u0434 ${adj}${issue2.maximum.toString()} \u0431\u043E\u0448\u0430\u0434`;
11996
+ }
11997
+ case "too_small": {
11998
+ const adj = issue2.inclusive ? ">=" : ">";
11999
+ const sizing = getSizing(issue2.origin);
12000
+ if (sizing)
12001
+ return `\u0425\u0435\u043B\u0435 \u0445\u0443\u0440\u0434: ${issue2.origin} \u0431\u043E\u044F\u0434 ${adj}${issue2.minimum.toString()} ${sizing.unit} ${sizing.verb}`;
12002
+ return `\u0425\u0435\u043B\u0435 \u0445\u0443\u0440\u0434: ${issue2.origin} \u0431\u043E\u044F\u0434 ${adj}${issue2.minimum.toString()} \u0431\u043E\u0448\u0430\u0434`;
12003
+ }
12004
+ case "invalid_format": {
12005
+ const _issue = issue2;
12006
+ if (_issue.format === "starts_with")
12007
+ return `\u0421\u0430\u0442\u0440\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442: \u0431\u043E\u044F\u0434 \u0431\u043E "${_issue.prefix}" \u043E\u0493\u043E\u0437 \u0448\u0430\u0432\u0430\u0434`;
12008
+ if (_issue.format === "ends_with")
12009
+ return `\u0421\u0430\u0442\u0440\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442: \u0431\u043E\u044F\u0434 \u0431\u043E "${_issue.suffix}" \u0430\u043D\u04B7\u043E\u043C \u0451\u0431\u0430\u0434`;
12010
+ if (_issue.format === "includes")
12011
+ return `\u0421\u0430\u0442\u0440\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442: \u0431\u043E\u044F\u0434 "${_issue.includes}"-\u0440\u043E \u0434\u0430\u0440 \u0431\u0430\u0440 \u0433\u0438\u0440\u0430\u0434`;
12012
+ if (_issue.format === "regex")
12013
+ return `\u0421\u0430\u0442\u0440\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442: \u0431\u043E\u044F\u0434 \u0431\u0430 \u043D\u0430\u043C\u0443\u043D\u0430\u0438 ${_issue.pattern} \u043C\u0443\u0432\u043E\u0444\u0438\u049B\u0430\u0442 \u043A\u0443\u043D\u0430\u0434`;
12014
+ return `${FormatDictionary[_issue.format] ?? issue2.format}-\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442`;
12015
+ }
12016
+ case "not_multiple_of":
12017
+ return `\u0420\u0430\u049B\u0430\u043C\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442: \u0431\u043E\u044F\u0434 \u0431\u0430 ${issue2.divisor} \u0431\u0435 \u0431\u0430\u049B\u0438\u044F \u0442\u0430\u049B\u0441\u0438\u043C \u0448\u0430\u0432\u0430\u0434`;
12018
+ case "unrecognized_keys":
12019
+ return `\u041A\u0430\u043B\u0438\u0434${issue2.keys.length > 1 ? "\u04B3\u043E\u0438" : "\u0438"} \u043D\u043E\u043C\u0430\u044A\u043B\u0443\u043C: ${joinValues(issue2.keys, ", ")}`;
12020
+ case "invalid_key":
12021
+ return `\u041A\u0430\u043B\u0438\u0434\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442 \u0434\u0430\u0440 ${issue2.origin}`;
12022
+ case "invalid_union":
12023
+ if (issue2.options && Array.isArray(issue2.options) && issue2.options.length > 0) {
12024
+ const opts = issue2.options.map((o) => `'${o}'`).join(" | ");
12025
+ return `\u049A\u0438\u043C\u0430\u0442\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442\u0438 \u0434\u0438\u0441\u043A\u0440\u0438\u043C\u0438\u043D\u0430\u0442\u043E\u0440: ${opts} \u0438\u043D\u0442\u0438\u0437\u043E\u0440 \u043C\u0435\u0440\u0430\u0444\u0442`;
12026
+ }
12027
+ return "\u0412\u0443\u0440\u0443\u0434\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442";
12028
+ case "invalid_element":
12029
+ return `\u049A\u0438\u043C\u0430\u0442\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442 \u0434\u0430\u0440 ${issue2.origin}`;
12030
+ default:
12031
+ return `\u0412\u0443\u0440\u0443\u0434\u0438 \u043D\u043E\u0434\u0443\u0440\u0443\u0441\u0442`;
12032
+ }
12033
+ };
12034
+ };
12035
+ function tg_default() {
12036
+ return {
12037
+ localeError: error51()
12038
+ };
12039
+ }
12040
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/th.js
12041
+ var error52 = () => {
12042
+ const Sizable = {
12043
+ string: { unit: "\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
12044
+ file: { unit: "\u0E44\u0E1A\u0E15\u0E4C", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
12045
+ array: { unit: "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
12046
+ set: { unit: "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
12047
+ map: { unit: "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" }
12048
+ };
12049
+ function getSizing(origin) {
12050
+ return Sizable[origin] ?? null;
12051
+ }
12052
+ const FormatDictionary = {
12053
+ regex: "\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",
12054
+ email: "\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",
12055
+ url: "URL",
12056
+ emoji: "\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",
12057
+ uuid: "UUID",
12058
+ uuidv4: "UUIDv4",
12059
+ uuidv6: "UUIDv6",
12060
+ nanoid: "nanoid",
12061
+ guid: "GUID",
12062
+ cuid: "cuid",
12063
+ cuid2: "cuid2",
12064
+ ulid: "ULID",
12065
+ xid: "XID",
12066
+ ksuid: "KSUID",
12067
+ datetime: "\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",
12068
+ date: "\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",
12069
+ time: "\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",
12070
+ duration: "\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",
12071
+ ipv4: "\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",
12072
+ ipv6: "\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",
12073
+ mac: "\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 MAC",
12074
+ cidrv4: "\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",
12075
+ cidrv6: "\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",
12076
+ base64: "\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",
12077
+ base64url: "\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",
12078
+ json_string: "\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",
12079
+ e164: "\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",
12080
+ credit_card: "\u0E2B\u0E21\u0E32\u0E22\u0E40\u0E25\u0E02\u0E1A\u0E31\u0E15\u0E23\u0E40\u0E04\u0E23\u0E14\u0E34\u0E15",
12081
+ currency_code: "\u0E23\u0E2B\u0E31\u0E2A\u0E2A\u0E01\u0E38\u0E25\u0E40\u0E07\u0E34\u0E19",
12082
+ iban: "IBAN",
12083
+ jwt: "\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",
12084
+ template_literal: "\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"
12085
+ };
12086
+ const TypeDictionary = {
12087
+ nan: "NaN",
12088
+ number: "\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02",
12089
+ array: "\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)",
12090
+ null: "\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)"
12091
+ };
12092
+ return (issue2) => {
12093
+ switch (issue2.code) {
12094
+ case "invalid_type": {
12095
+ const expected = TypeDictionary[issue2.expected] ?? issue2.expected;
12096
+ const receivedType = parsedType(issue2.input);
12097
+ const received = TypeDictionary[receivedType] ?? receivedType;
12098
+ if (/^[A-Z]/.test(issue2.expected)) {
12099
+ return `\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 instanceof ${issue2.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${received}`;
12100
+ }
12101
+ return `\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${received}`;
11724
12102
  }
11725
12103
  case "invalid_value":
11726
12104
  if (issue2.values.length === 1)
@@ -11771,11 +12149,11 @@ var error51 = () => {
11771
12149
  };
11772
12150
  function th_default() {
11773
12151
  return {
11774
- localeError: error51()
12152
+ localeError: error52()
11775
12153
  };
11776
12154
  }
11777
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/tk.js
11778
- var error52 = () => {
12155
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/tk.js
12156
+ var error53 = () => {
11779
12157
  const Sizable = {
11780
12158
  string: { unit: "simwol", verb: "bolmaly" },
11781
12159
  file: { unit: "ba\xFDt", verb: "bolmaly" },
@@ -11815,6 +12193,8 @@ var error52 = () => {
11815
12193
  json_string: "JSON setiri",
11816
12194
  e164: "E.164 nomeri",
11817
12195
  credit_card: "kredit kartyny\u0148 nomeri",
12196
+ currency_code: "wal\xFDuta kody",
12197
+ iban: "IBAN",
11818
12198
  jwt: "JWT",
11819
12199
  template_literal: "\u015Fablon"
11820
12200
  };
@@ -11876,11 +12256,11 @@ var error52 = () => {
11876
12256
  };
11877
12257
  function tk_default() {
11878
12258
  return {
11879
- localeError: error52()
12259
+ localeError: error53()
11880
12260
  };
11881
12261
  }
11882
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/tr.js
11883
- var error53 = () => {
12262
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/tr.js
12263
+ var error54 = () => {
11884
12264
  const Sizable = {
11885
12265
  string: { unit: "karakter", verb: "olmal\u0131" },
11886
12266
  file: { unit: "bayt", verb: "olmal\u0131" },
@@ -11920,6 +12300,8 @@ var error53 = () => {
11920
12300
  json_string: "JSON dizesi",
11921
12301
  e164: "E.164 say\u0131s\u0131",
11922
12302
  credit_card: "kredi kart\u0131 numaras\u0131",
12303
+ currency_code: "para birimi kodu",
12304
+ iban: "IBAN",
11923
12305
  jwt: "JWT",
11924
12306
  template_literal: "\u015Eablon dizesi"
11925
12307
  };
@@ -11984,11 +12366,11 @@ var error53 = () => {
11984
12366
  };
11985
12367
  function tr_default() {
11986
12368
  return {
11987
- localeError: error53()
12369
+ localeError: error54()
11988
12370
  };
11989
12371
  }
11990
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/uk.js
11991
- var error54 = () => {
12372
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/uk.js
12373
+ var error55 = () => {
11992
12374
  const Sizable = {
11993
12375
  string: { unit: "\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432", verb: "\u043C\u0430\u0442\u0438\u043C\u0435" },
11994
12376
  file: { unit: "\u0431\u0430\u0439\u0442\u0456\u0432", verb: "\u043C\u0430\u0442\u0438\u043C\u0435" },
@@ -12028,6 +12410,8 @@ var error54 = () => {
12028
12410
  json_string: "\u0440\u044F\u0434\u043E\u043A JSON",
12029
12411
  e164: "\u043D\u043E\u043C\u0435\u0440 E.164",
12030
12412
  credit_card: "\u043D\u043E\u043C\u0435\u0440 \u043A\u0440\u0435\u0434\u0438\u0442\u043D\u043E\u0457 \u043A\u0430\u0440\u0442\u043A\u0438",
12413
+ currency_code: "\u043A\u043E\u0434 \u0432\u0430\u043B\u044E\u0442\u0438",
12414
+ iban: "IBAN",
12031
12415
  jwt: "JWT",
12032
12416
  template_literal: "\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"
12033
12417
  };
@@ -12095,16 +12479,16 @@ var error54 = () => {
12095
12479
  };
12096
12480
  function uk_default() {
12097
12481
  return {
12098
- localeError: error54()
12482
+ localeError: error55()
12099
12483
  };
12100
12484
  }
12101
12485
 
12102
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ua.js
12486
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ua.js
12103
12487
  function ua_default() {
12104
12488
  return uk_default();
12105
12489
  }
12106
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/ur.js
12107
- var error55 = () => {
12490
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/ur.js
12491
+ var error56 = () => {
12108
12492
  const Sizable = {
12109
12493
  string: { unit: "\u062D\u0631\u0648\u0641", verb: "\u06C1\u0648\u0646\u0627" },
12110
12494
  file: { unit: "\u0628\u0627\u0626\u0679\u0633", verb: "\u06C1\u0648\u0646\u0627" },
@@ -12144,6 +12528,8 @@ var error55 = () => {
12144
12528
  json_string: "\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",
12145
12529
  e164: "\u0627\u06CC 164 \u0646\u0645\u0628\u0631",
12146
12530
  credit_card: "\u06A9\u0631\u06CC\u0688\u0679 \u06A9\u0627\u0631\u0688 \u0646\u0645\u0628\u0631",
12531
+ currency_code: "\u06A9\u0631\u0646\u0633\u06CC \u06A9\u0648\u0688",
12532
+ iban: "IBAN",
12147
12533
  jwt: "\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",
12148
12534
  template_literal: "\u0627\u0646 \u067E\u0679"
12149
12535
  };
@@ -12213,11 +12599,11 @@ var error55 = () => {
12213
12599
  };
12214
12600
  function ur_default() {
12215
12601
  return {
12216
- localeError: error55()
12602
+ localeError: error56()
12217
12603
  };
12218
12604
  }
12219
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/uz.js
12220
- var error56 = () => {
12605
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/uz.js
12606
+ var error57 = () => {
12221
12607
  const Sizable = {
12222
12608
  string: { unit: "belgi", verb: "bo\u2018lishi kerak" },
12223
12609
  file: { unit: "bayt", verb: "bo\u2018lishi kerak" },
@@ -12257,6 +12643,8 @@ var error56 = () => {
12257
12643
  json_string: "JSON satr",
12258
12644
  e164: "E.164 raqam",
12259
12645
  credit_card: "kredit karta raqami",
12646
+ currency_code: "valyuta kodi",
12647
+ iban: "IBAN",
12260
12648
  jwt: "JWT",
12261
12649
  template_literal: "kirish"
12262
12650
  };
@@ -12324,11 +12712,11 @@ var error56 = () => {
12324
12712
  };
12325
12713
  function uz_default() {
12326
12714
  return {
12327
- localeError: error56()
12715
+ localeError: error57()
12328
12716
  };
12329
12717
  }
12330
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/vi.js
12331
- var error57 = () => {
12718
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/vi.js
12719
+ var error58 = () => {
12332
12720
  const Sizable = {
12333
12721
  string: { unit: "k\xFD t\u1EF1", verb: "c\xF3" },
12334
12722
  file: { unit: "byte", verb: "c\xF3" },
@@ -12368,6 +12756,8 @@ var error57 = () => {
12368
12756
  json_string: "chu\u1ED7i JSON",
12369
12757
  e164: "s\u1ED1 E.164",
12370
12758
  credit_card: "s\u1ED1 th\u1EBB t\xEDn d\u1EE5ng",
12759
+ currency_code: "m\xE3 ti\u1EC1n t\u1EC7",
12760
+ iban: "IBAN",
12371
12761
  jwt: "JWT",
12372
12762
  template_literal: "\u0111\u1EA7u v\xE0o"
12373
12763
  };
@@ -12435,11 +12825,11 @@ var error57 = () => {
12435
12825
  };
12436
12826
  function vi_default() {
12437
12827
  return {
12438
- localeError: error57()
12828
+ localeError: error58()
12439
12829
  };
12440
12830
  }
12441
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/zh-CN.js
12442
- var error58 = () => {
12831
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/zh-CN.js
12832
+ var error59 = () => {
12443
12833
  const Sizable = {
12444
12834
  string: { unit: "\u5B57\u7B26", verb: "\u5305\u542B" },
12445
12835
  file: { unit: "\u5B57\u8282", verb: "\u5305\u542B" },
@@ -12479,6 +12869,8 @@ var error58 = () => {
12479
12869
  json_string: "JSON\u5B57\u7B26\u4E32",
12480
12870
  e164: "E.164\u53F7\u7801",
12481
12871
  credit_card: "\u4FE1\u7528\u5361\u53F7",
12872
+ currency_code: "\u8D27\u5E01\u4EE3\u7801",
12873
+ iban: "IBAN",
12482
12874
  jwt: "JWT",
12483
12875
  template_literal: "\u8F93\u5165"
12484
12876
  };
@@ -12547,11 +12939,11 @@ var error58 = () => {
12547
12939
  };
12548
12940
  function zh_CN_default() {
12549
12941
  return {
12550
- localeError: error58()
12942
+ localeError: error59()
12551
12943
  };
12552
12944
  }
12553
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/zh-TW.js
12554
- var error59 = () => {
12945
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/zh-TW.js
12946
+ var error60 = () => {
12555
12947
  const Sizable = {
12556
12948
  string: { unit: "\u5B57\u5143", verb: "\u64C1\u6709" },
12557
12949
  file: { unit: "\u4F4D\u5143\u7D44", verb: "\u64C1\u6709" },
@@ -12591,6 +12983,8 @@ var error59 = () => {
12591
12983
  json_string: "JSON \u5B57\u4E32",
12592
12984
  e164: "E.164 \u6578\u503C",
12593
12985
  credit_card: "\u4FE1\u7528\u5361\u865F",
12986
+ currency_code: "\u8CA8\u5E63\u4EE3\u78BC",
12987
+ iban: "IBAN",
12594
12988
  jwt: "JWT",
12595
12989
  template_literal: "\u8F38\u5165"
12596
12990
  };
@@ -12657,11 +13051,11 @@ var error59 = () => {
12657
13051
  };
12658
13052
  function zh_TW_default() {
12659
13053
  return {
12660
- localeError: error59()
13054
+ localeError: error60()
12661
13055
  };
12662
13056
  }
12663
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/locales/yo.js
12664
- var error60 = () => {
13057
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/locales/yo.js
13058
+ var error61 = () => {
12665
13059
  const Sizable = {
12666
13060
  string: { unit: "\xE0mi", verb: "n\xED" },
12667
13061
  file: { unit: "bytes", verb: "n\xED" },
@@ -12701,6 +13095,8 @@ var error60 = () => {
12701
13095
  json_string: "\u1ECD\u0300r\u1ECD\u0300 JSON",
12702
13096
  e164: "n\u1ECD\u0301mb\xE0 E.164",
12703
13097
  credit_card: "n\u1ECDmba kaadi gbese",
13098
+ currency_code: "koodu ow\xF3",
13099
+ iban: "IBAN",
12704
13100
  jwt: "JWT",
12705
13101
  template_literal: "\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"
12706
13102
  };
@@ -12767,10 +13163,10 @@ var error60 = () => {
12767
13163
  };
12768
13164
  function yo_default() {
12769
13165
  return {
12770
- localeError: error60()
13166
+ localeError: error61()
12771
13167
  };
12772
13168
  }
12773
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/registries.js
13169
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/registries.js
12774
13170
  var _a2;
12775
13171
  var $output = /* @__PURE__ */ Symbol("ZodOutput");
12776
13172
  var $input = /* @__PURE__ */ Symbol("ZodInput");
@@ -12820,7 +13216,7 @@ function registry() {
12820
13216
  }
12821
13217
  (_a2 = globalThis).__zod_globalRegistry ?? (_a2.__zod_globalRegistry = registry());
12822
13218
  var globalRegistry = globalThis.__zod_globalRegistry;
12823
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/compile.js
13219
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/compile.js
12824
13220
  var INVALID = Symbol.for("zod.compile.invalid");
12825
13221
  var FALLBACK_FLAG = Symbol.for("zod.compile.fallback");
12826
13222
 
@@ -12848,31 +13244,8 @@ function compileValidator(schema, parser) {
12848
13244
  function compile(schema, options) {
12849
13245
  try {
12850
13246
  const parser = compileFn(schema);
12851
- const clone2 = clone(schema);
12852
- const liveRun = schema._zod.run;
12853
- const originalRun = liveRun.__originalRun ?? liveRun;
12854
- const wrapped = (payload, ctx) => {
12855
- if (ctx?.async || ctx?.direction === "backward" || ctx?.skipChecks || ctx?.[FALLBACK_FLAG]) {
12856
- return originalRun(payload, ctx);
12857
- }
12858
- if (ctx && isBackEdge(ctx, payload.value)) {
12859
- return originalRun(payload, ctx);
12860
- }
12861
- const out = parser(payload.value);
12862
- if (out !== INVALID) {
12863
- payload.value = out;
12864
- return payload;
12865
- }
12866
- if (ctx)
12867
- ctx[FALLBACK_FLAG] = true;
12868
- return originalRun(payload, ctx);
12869
- };
12870
- wrapped.__originalRun = originalRun;
12871
- clone2._zod.bag.fallbackRun = originalRun;
13247
+ const clone2 = withParser(schema, parser);
12872
13248
  clone2._zod.bag.validator = compileValidator(schema, parser);
12873
- clone2._zod.run = wrapped;
12874
- if (!liveRun.__originalRun)
12875
- installCompiledUserMethods(clone2, schema, parser);
12876
13249
  return clone2;
12877
13250
  } catch (err) {
12878
13251
  if (options?.strict)
@@ -12880,6 +13253,37 @@ function compile(schema, options) {
12880
13253
  return schema;
12881
13254
  }
12882
13255
  }
13256
+ function withParser(schema, parser) {
13257
+ if (isRecursiveSchema(schema)) {
13258
+ throw new ZodCompileUnsupportedError("a schema whose subtree contains a reference cycle");
13259
+ }
13260
+ const clone2 = clone(schema);
13261
+ const liveRun = schema._zod.run;
13262
+ const originalRun = liveRun.__originalRun ?? liveRun;
13263
+ const wrapped = (payload, ctx) => {
13264
+ if (ctx?.async || ctx?.direction === "backward" || ctx?.skipChecks || ctx?.[FALLBACK_FLAG]) {
13265
+ return originalRun(payload, ctx);
13266
+ }
13267
+ if (ctx && isBackEdge(ctx, payload.value)) {
13268
+ return originalRun(payload, ctx);
13269
+ }
13270
+ const out = parser(payload.value);
13271
+ if (out !== INVALID) {
13272
+ payload.value = out;
13273
+ return payload;
13274
+ }
13275
+ if (ctx)
13276
+ ctx[FALLBACK_FLAG] = true;
13277
+ return originalRun(payload, ctx);
13278
+ };
13279
+ wrapped.__originalRun = originalRun;
13280
+ clone2._zod.bag.fallbackRun = originalRun;
13281
+ clone2._zod.bag.validator = parser;
13282
+ clone2._zod.run = wrapped;
13283
+ if (!liveRun.__originalRun)
13284
+ installCompiledUserMethods(clone2, schema, parser);
13285
+ return clone2;
13286
+ }
12883
13287
  function installCompiledUserMethods(target, source, parser) {
12884
13288
  const targetAny = target;
12885
13289
  const sourceAny = source;
@@ -12915,7 +13319,8 @@ function compileFn(schema, options) {
12915
13319
  const ctx = {
12916
13320
  constants: new Map,
12917
13321
  constantCounter: 0,
12918
- varCounter: 0
13322
+ varCounter: 0,
13323
+ definite: true
12919
13324
  };
12920
13325
  const doc = new Doc(["input"]);
12921
13326
  const outputAccessor = generateCheck(doc, ctx, schema, "input", !options?.assertOnly);
@@ -12940,6 +13345,7 @@ ${code}
12940
13345
  if (options?.debug) {
12941
13346
  fn.code = fullCode;
12942
13347
  }
13348
+ fn.definite = ctx.definite;
12943
13349
  return fn;
12944
13350
  }
12945
13351
  function addConstant(ctx, value) {
@@ -12951,6 +13357,10 @@ function addConstant(ctx, value) {
12951
13357
  ctx.constants.set(name, value);
12952
13358
  return name;
12953
13359
  }
13360
+ function addUserConstant(ctx, fn) {
13361
+ ctx.definite = false;
13362
+ return addConstant(ctx, fn);
13363
+ }
12954
13364
  function newVar(ctx) {
12955
13365
  return `v${ctx.varCounter++}`;
12956
13366
  }
@@ -12983,6 +13393,7 @@ function compileChild(doc, ctx, schema, accessor, needsValue = true) {
12983
13393
  }
12984
13394
  }
12985
13395
  function emitRuntimeIsland(doc, ctx, schema, accessor) {
13396
+ ctx.definite = false;
12986
13397
  const schemaConst = addConstant(ctx, schema);
12987
13398
  const runConst = addConstant(ctx, runtimeRun);
12988
13399
  const outVar = newVar(ctx);
@@ -13063,6 +13474,9 @@ function generateChecks(doc, ctx, schema, accessor) {
13063
13474
  case "property":
13064
13475
  generatePropertyCheck(doc, ctx, def, currentAccessor);
13065
13476
  break;
13477
+ case "properties":
13478
+ generatePropertiesChecks(doc, ctx, def, currentAccessor);
13479
+ break;
13066
13480
  case "overwrite": {
13067
13481
  const newAccessor = newVar(ctx);
13068
13482
  generateOverwriteCheck(doc, ctx, check, currentAccessor, newAccessor);
@@ -13168,6 +13582,19 @@ function generateMimeTypeCheck(doc, ctx, def, accessor) {
13168
13582
  doc.write(`if (!${mimeSet}.has(${accessor}.type)) return INVALID;`);
13169
13583
  }
13170
13584
  }
13585
+ function generatePropertiesChecks(doc, ctx, def, accessor) {
13586
+ if (def.when) {
13587
+ throw new ZodCompileUnsupportedError(`check with a custom "when" condition`);
13588
+ }
13589
+ doc.write(`if (${accessor} == null) return INVALID;`);
13590
+ const shape = def.shape;
13591
+ for (const key of Reflect.ownKeys(shape)) {
13592
+ const keyExpr = typeof key === "symbol" ? addConstant(ctx, key) : esc(key);
13593
+ const inputVar = newVar(ctx);
13594
+ doc.write(`const ${inputVar} = ${accessor}[${keyExpr}];`);
13595
+ compileChild(doc, ctx, shape[key], inputVar, false);
13596
+ }
13597
+ }
13171
13598
  function generatePropertyCheck(doc, ctx, def, accessor) {
13172
13599
  const propAccessor = `${accessor}[${JSON.stringify(def.property)}]`;
13173
13600
  generateCheck(doc, ctx, def.schema, propAccessor);
@@ -13195,7 +13622,7 @@ function generateCustomRefineCheck(doc, ctx, check, accessor) {
13195
13622
  if (isAsyncFunction(def.fn)) {
13196
13623
  throw new ZodCompileAsyncError("z.compile: async .refine() predicates are not supported");
13197
13624
  }
13198
- const fnConst = addConstant(ctx, def.fn);
13625
+ const fnConst = addUserConstant(ctx, def.fn);
13199
13626
  const throwAsyncConst = addConstant(ctx, throwAsync);
13200
13627
  const resVar = newVar(ctx);
13201
13628
  doc.write(`const ${resVar} = ${fnConst}(${accessor});`);
@@ -13215,7 +13642,7 @@ function generateCustomRefineCheck(doc, ctx, check, accessor) {
13215
13642
  throwAsync();
13216
13643
  return fakePayload.issues.length === 0 ? fakePayload.value : INVALID;
13217
13644
  };
13218
- const helperConst = addConstant(ctx, helperFn);
13645
+ const helperConst = addUserConstant(ctx, helperFn);
13219
13646
  const outVar = newVar(ctx);
13220
13647
  doc.write(`const ${outVar} = ${helperConst}(${accessor});`);
13221
13648
  doc.write(`if (${outVar} === INVALID) return INVALID;`);
@@ -13249,7 +13676,7 @@ var PATTERN_IS_COMPLETE = new Set([
13249
13676
  "uuid",
13250
13677
  "xid"
13251
13678
  ]);
13252
- function generateStringFormatCheck(doc, ctx, def, accessor) {
13679
+ function generateStringFormatCheck(doc, ctx, def, accessor, needsValue = true) {
13253
13680
  const fmt = def.format;
13254
13681
  if (fmt === "base64") {
13255
13682
  const validator = addConstant(ctx, isValidBase64);
@@ -13282,9 +13709,14 @@ function generateStringFormatCheck(doc, ctx, def, accessor) {
13282
13709
  doc.write(`if (!${validator}(${accessor})) return INVALID;`);
13283
13710
  return accessor;
13284
13711
  }
13712
+ if (fmt === "iban") {
13713
+ const validator = addConstant(ctx, isValidIBAN);
13714
+ doc.write(`if (!${validator}(${accessor})) return INVALID;`);
13715
+ return accessor;
13716
+ }
13285
13717
  const formatDef = def;
13286
13718
  if (fmt === "url" || fmt === "httpurl" || formatDef.normalize || formatDef.hostname !== undefined || formatDef.protocol !== undefined) {
13287
- const parseConst = addConstant(ctx, parseURLObject);
13719
+ const parseConst = addConstant(ctx, validateURL);
13288
13720
  const defConst = addConstant(ctx, def);
13289
13721
  const trimVar = newVar(ctx);
13290
13722
  const urlVar = newVar(ctx);
@@ -13299,6 +13731,8 @@ function generateStringFormatCheck(doc, ctx, def, accessor) {
13299
13731
  const protocolConst = addConstant(ctx, urlProtocolOk);
13300
13732
  doc.write(`if (!${protocolConst}(${urlVar}, ${defConst}.protocol)) return INVALID;`);
13301
13733
  }
13734
+ if (!needsValue)
13735
+ return null;
13302
13736
  const outputVar = newVar(ctx);
13303
13737
  const outputExpr = formatDef.normalize ? `${urlVar}.href` : `${addConstant(ctx, stripTabAndNewline)}(${trimVar})`;
13304
13738
  doc.write(`const ${outputVar} = ${outputExpr};`);
@@ -13357,7 +13791,7 @@ function generateCheck(doc, ctx, schema, accessor, needsValue = true) {
13357
13791
  let typeAccessor;
13358
13792
  switch (type) {
13359
13793
  case "string":
13360
- typeAccessor = generateStringCheck(doc, ctx, schema, accessor);
13794
+ typeAccessor = generateStringCheck(doc, ctx, schema, accessor, buildsValue);
13361
13795
  break;
13362
13796
  case "number":
13363
13797
  typeAccessor = generateNumberCheck(doc, schema, accessor);
@@ -13477,12 +13911,12 @@ function generateCheck(doc, ctx, schema, accessor, needsValue = true) {
13477
13911
  return null;
13478
13912
  return generateChecks(doc, ctx, schema, typeAccessor);
13479
13913
  }
13480
- function generateStringCheck(doc, ctx, schema, accessor) {
13914
+ function generateStringCheck(doc, ctx, schema, accessor, needsValue = true) {
13481
13915
  doc.write(`if (typeof ${accessor} !== "string") return INVALID;`);
13482
13916
  const def = schema._zod.def;
13483
13917
  if (def.format === undefined)
13484
13918
  return accessor;
13485
- return generateStringFormatCheck(doc, ctx, def, accessor);
13919
+ return generateStringFormatCheck(doc, ctx, def, accessor, needsValue);
13486
13920
  }
13487
13921
  function generateNumberCheck(doc, schema, accessor) {
13488
13922
  doc.write(`if (typeof ${accessor} !== "number" || !Number.isFinite(${accessor})) return INVALID;`);
@@ -13600,7 +14034,7 @@ function generateObjectCheck(doc, ctx, schema, accessor, buildsValue = true) {
13600
14034
  }
13601
14035
  }
13602
14036
  const outputVar = newVar(ctx);
13603
- const hasConditionalKeys = allKeys.some((k) => mayOutputUndefined(propShape[k]) || dropsWhenAbsent(propShape[k]));
14037
+ const hasConditionalKeys = allKeys.some((k) => mayOmitUndefined(propShape[k]) || dropsWhenAbsent(propShape[k]));
13604
14038
  if (!buildsValue) {
13605
14039
  if (unknownKeysMode === "schema") {
13606
14040
  const knownSet = keys.length > 0 ? addConstant(ctx, new Set(keys)) : null;
@@ -13627,7 +14061,7 @@ function generateObjectCheck(doc, ctx, schema, accessor, buildsValue = true) {
13627
14061
  const out = propOutputs.get(k);
13628
14062
  if (dropsWhenAbsent(propShape[k])) {
13629
14063
  doc.write(`if (${kx} in ${accessor}) ${outputVar}[${kx}] = ${out};`);
13630
- } else if (mayOutputUndefined(propShape[k])) {
14064
+ } else if (mayOmitUndefined(propShape[k])) {
13631
14065
  doc.write(`if (${out} !== undefined || ${kx} in ${accessor}) ${outputVar}[${kx}] = ${out};`);
13632
14066
  } else {
13633
14067
  doc.write(`${outputVar}[${kx}] = ${out};`);
@@ -13760,6 +14194,9 @@ function fastPathAcceptsAbsence(schema) {
13760
14194
  function dropsWhenAbsent(schema) {
13761
14195
  return schema._zod.optin === "optional" && schema._zod.optout === "optional";
13762
14196
  }
14197
+ function mayOmitUndefined(schema) {
14198
+ return (schema._zod.optin !== "defaulted" || schema._zod.optout === "optional") && mayOutputUndefined(schema);
14199
+ }
13763
14200
  function mayOutputUndefined(schema) {
13764
14201
  const def = schema._zod.def;
13765
14202
  switch (def.type) {
@@ -14102,6 +14539,7 @@ function literalEquality(ctx, accessor, value) {
14102
14539
  }
14103
14540
  function generateIntersectionCheck(doc, ctx, schema, accessor) {
14104
14541
  const def = schema._zod.def;
14542
+ ctx.definite = false;
14105
14543
  const leftOutput = compileChild(doc, ctx, def.left, accessor);
14106
14544
  const rightOutput = compileChild(doc, ctx, def.right, accessor);
14107
14545
  const mergeConst = addConstant(ctx, mergeValues);
@@ -14155,14 +14593,13 @@ function generateRecordCheck(doc, ctx, schema, accessor) {
14155
14593
  const keyIsBareString = keyDef.type === "string" && keyDef.format === undefined && !keyDef.coerce && (keyDef.checks?.length ?? 0) === 0;
14156
14594
  if (!keyIsBareString) {
14157
14595
  const isLoose = def.mode === "loose";
14158
- const keyFast = addConstant(ctx, compileFn(def.keyType));
14596
+ const keyFn = compileFn(def.keyType);
14597
+ if (keyFn.definite === false)
14598
+ ctx.definite = false;
14599
+ const keyFast = addConstant(ctx, keyFn);
14159
14600
  const numericConst = addConstant(ctx, number);
14160
- const propIsEnumerableConst = addConstant(ctx, Object.prototype.propertyIsEnumerable);
14161
14601
  const outKeyVar = newVar(ctx);
14162
- doc.write(`for (const ${kVar} of Reflect.ownKeys(${accessor})) {`);
14163
- doc.indented((d) => {
14164
- d.write(`if (${kVar} === "__proto__") continue;`);
14165
- d.write(`if (!${propIsEnumerableConst}.call(${accessor}, ${kVar})) continue;`);
14602
+ emitOwnKeys(doc, ctx, accessor, kVar, (d) => {
14166
14603
  d.write(`let ${outKeyVar} = ${keyFast}(${kVar});`);
14167
14604
  d.write(`if (${outKeyVar} === INVALID && typeof ${kVar} === "string" && ${numericConst}.test(${kVar})) ${outKeyVar} = ${keyFast}(Number(${kVar}));`);
14168
14605
  if (isLoose) {
@@ -14176,21 +14613,39 @@ function generateRecordCheck(doc, ctx, schema, accessor) {
14176
14613
  const valOutput = compileChild(d, ctx, def.valueType, valueVar);
14177
14614
  d.write(`${outputVar}[${outKeyVar}] = ${valOutput};`);
14178
14615
  });
14179
- doc.write(`}`);
14180
14616
  return outputVar;
14181
14617
  }
14182
- const propIsEnumerable = addConstant(ctx, Object.prototype.propertyIsEnumerable);
14183
- doc.write(`for (const ${kVar} of Reflect.ownKeys(${accessor})) {`);
14184
- doc.indented((d) => {
14185
- d.write(`if (${kVar} === "__proto__") continue;`);
14186
- d.write(`if (!${propIsEnumerable}.call(${accessor}, ${kVar})) continue;`);
14187
- d.write(`if (typeof ${kVar} !== "string") return INVALID;`);
14618
+ emitOwnKeys(doc, ctx, accessor, kVar, (d) => {
14188
14619
  d.write(`const ${valVar} = ${accessor}[${kVar}];`);
14189
14620
  const valOutput = compileChild(d, ctx, def.valueType, valVar);
14190
14621
  d.write(`${outputVar}[${kVar}] = ${valOutput};`);
14622
+ }, `return INVALID;`);
14623
+ return outputVar;
14624
+ }
14625
+ function emitOwnKeys(doc, ctx, accessor, kVar, body, onSymbol) {
14626
+ const propIsEnumerableConst = addConstant(ctx, Object.prototype.propertyIsEnumerable);
14627
+ const symsVar = newVar(ctx);
14628
+ const keysVar = newVar(ctx);
14629
+ const iVar = newVar(ctx);
14630
+ doc.write(`const ${symsVar} = Object.getOwnPropertySymbols(${accessor});`);
14631
+ doc.write(`const ${keysVar} = Object.getOwnPropertyNames(${accessor});`);
14632
+ doc.write(`for (let ${iVar} = 0; ${iVar} < ${keysVar}.length; ${iVar}++) {`);
14633
+ doc.indented((d) => {
14634
+ d.write(`const ${kVar} = ${keysVar}[${iVar}];`);
14635
+ d.write(`if (${kVar} === "__proto__" || !${propIsEnumerableConst}.call(${accessor}, ${kVar})) continue;`);
14636
+ body(d);
14637
+ });
14638
+ doc.write(`}`);
14639
+ doc.write(`for (let ${iVar} = 0; ${iVar} < ${symsVar}.length; ${iVar}++) {`);
14640
+ doc.indented((d) => {
14641
+ d.write(`const ${kVar} = ${symsVar}[${iVar}];`);
14642
+ d.write(`if (!${propIsEnumerableConst}.call(${accessor}, ${kVar})) continue;`);
14643
+ if (onSymbol)
14644
+ d.write(onSymbol);
14645
+ else
14646
+ body(d);
14191
14647
  });
14192
14648
  doc.write(`}`);
14193
- return outputVar;
14194
14649
  }
14195
14650
  function literalPropertyKey(ctx, key) {
14196
14651
  if (typeof key === "string")
@@ -14243,7 +14698,7 @@ function generateTemplateLiteralCheck(doc, ctx, schema, accessor) {
14243
14698
  }
14244
14699
  function generateLazyCheck(doc, ctx, schema, accessor) {
14245
14700
  const def = schema._zod.def;
14246
- const getterConst = addConstant(ctx, def.getter);
14701
+ const getterConst = addUserConstant(ctx, def.getter);
14247
14702
  const cacheConst = addConstant(ctx, { parser: null });
14248
14703
  doc.write(`if (!${cacheConst}.parser) {`);
14249
14704
  doc.indented((d) => {
@@ -14276,7 +14731,7 @@ function generatePipeCheck(doc, ctx, schema, accessor) {
14276
14731
  return INVALID;
14277
14732
  return fakePayload.issues.length === 0 ? result : INVALID;
14278
14733
  };
14279
- const helperConst = addConstant(ctx, helperFn);
14734
+ const helperConst = addUserConstant(ctx, helperFn);
14280
14735
  const transformedVar = newVar(ctx);
14281
14736
  doc.write(`const ${transformedVar} = ${helperConst}(${inputOutput});`);
14282
14737
  doc.write(`if (${transformedVar} === INVALID) return INVALID;`);
@@ -14294,7 +14749,7 @@ function generateCustomCheck(doc, ctx, schema, accessor) {
14294
14749
  if (isAsyncFunction(def.fn)) {
14295
14750
  throw new ZodCompileAsyncError("z.compile: async custom predicates are not supported");
14296
14751
  }
14297
- const fnConst = addConstant(ctx, def.fn);
14752
+ const fnConst = addUserConstant(ctx, def.fn);
14298
14753
  const throwAsyncConst = addConstant(ctx, throwAsync);
14299
14754
  const resVar = newVar(ctx);
14300
14755
  doc.write(`const ${resVar} = ${fnConst}(${accessor});`);
@@ -14327,7 +14782,7 @@ function generateCatchCheck(doc, ctx, schema, accessor) {
14327
14782
  });
14328
14783
  doc.write(`})();`);
14329
14784
  const innerConst = addConstant(ctx, def.innerType);
14330
- const catchConst = addConstant(ctx, def.catchValue);
14785
+ const catchConst = addUserConstant(ctx, def.catchValue);
14331
14786
  const catchHelperConst = addConstant(ctx, runtimeCatch);
14332
14787
  doc.write(`if (${outputVar} === INVALID) {`);
14333
14788
  doc.indented((d) => {
@@ -14351,7 +14806,7 @@ function generateTransformCheck(doc, ctx, schema, accessor) {
14351
14806
  return INVALID;
14352
14807
  return fakePayload.issues.length === 0 ? result : INVALID;
14353
14808
  };
14354
- const helperConst = addConstant(ctx, helperFn);
14809
+ const helperConst = addUserConstant(ctx, helperFn);
14355
14810
  const outputVar = newVar(ctx);
14356
14811
  doc.write(`const ${outputVar} = ${helperConst}(${accessor});`);
14357
14812
  doc.write(`if (${outputVar} === INVALID) return INVALID;`);
@@ -14359,19 +14814,17 @@ function generateTransformCheck(doc, ctx, schema, accessor) {
14359
14814
  }
14360
14815
  return accessor;
14361
14816
  }
14362
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/api.js
14817
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/api.js
14818
+ function snapshotChecks(def) {
14819
+ if (def.checks)
14820
+ def.checks = [...def.checks];
14821
+ return def;
14822
+ }
14363
14823
  function _string(Class2, params) {
14364
- return new Class2({
14365
- type: "string",
14366
- ...normalizeParams(params)
14367
- });
14824
+ return new Class2(snapshotChecks({ type: "string", ...normalizeParams(params) }));
14368
14825
  }
14369
14826
  function _coercedString(Class2, params) {
14370
- return new Class2({
14371
- type: "string",
14372
- coerce: true,
14373
- ...normalizeParams(params)
14374
- });
14827
+ return new Class2(snapshotChecks({ type: "string", coerce: true, ...normalizeParams(params) }));
14375
14828
  }
14376
14829
  function _email(Class2, params) {
14377
14830
  return new Class2({
@@ -14583,6 +15036,15 @@ function _creditCard(Class2, params) {
14583
15036
  ...normalizeParams(params)
14584
15037
  });
14585
15038
  }
15039
+ function _iban(Class2, params) {
15040
+ return new Class2({
15041
+ type: "string",
15042
+ format: "iban",
15043
+ check: "string_format",
15044
+ abort: false,
15045
+ ...normalizeParams(params)
15046
+ });
15047
+ }
14586
15048
  function _jwt(Class2, params) {
14587
15049
  return new Class2({
14588
15050
  type: "string",
@@ -14636,19 +15098,10 @@ function _isoDuration(Class2, params) {
14636
15098
  });
14637
15099
  }
14638
15100
  function _number(Class2, params) {
14639
- return new Class2({
14640
- type: "number",
14641
- checks: [],
14642
- ...normalizeParams(params)
14643
- });
15101
+ return new Class2(snapshotChecks({ type: "number", checks: [], ...normalizeParams(params) }));
14644
15102
  }
14645
15103
  function _coercedNumber(Class2, params) {
14646
- return new Class2({
14647
- type: "number",
14648
- coerce: true,
14649
- checks: [],
14650
- ...normalizeParams(params)
14651
- });
15104
+ return new Class2(snapshotChecks({ type: "number", coerce: true, checks: [], ...normalizeParams(params) }));
14652
15105
  }
14653
15106
  function _int(Class2, params) {
14654
15107
  return new Class2({
@@ -14946,8 +15399,12 @@ function _property(property, schema, params) {
14946
15399
  ...normalizeParams(params)
14947
15400
  });
14948
15401
  }
14949
- function _properties(shape) {
14950
- return Object.entries(shape).map(([property, schema]) => new $ZodCheckProperty({ check: "property", property, schema }));
15402
+ function _properties(shape, params) {
15403
+ return new $ZodCheckProperties({
15404
+ check: "properties",
15405
+ shape,
15406
+ ...normalizeParams(params)
15407
+ });
14951
15408
  }
14952
15409
  function _mime(types, params) {
14953
15410
  return new $ZodCheckMimeType({
@@ -15294,7 +15751,7 @@ function _stringFormat(Class2, format, fnOrRegex, _params = {}) {
15294
15751
  const inst = new Class2(def);
15295
15752
  return inst;
15296
15753
  }
15297
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/to-json-schema.js
15754
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/to-json-schema.js
15298
15755
  function assignProps(target, ...sources) {
15299
15756
  for (const source of sources) {
15300
15757
  for (const key of Reflect.ownKeys(source)) {
@@ -15338,7 +15795,7 @@ function handleUnrepresentable(schema, ctx, json, params, message) {
15338
15795
  Object.assign(json, result);
15339
15796
  return true;
15340
15797
  }
15341
- function process2(schema, ctx, _params = { path: [], schemaPath: [] }) {
15798
+ function processSchema(schema, ctx, _params = { path: [], schemaPath: [] }) {
15342
15799
  var _a3;
15343
15800
  const def = schema._zod.def;
15344
15801
  const seen = ctx.seen.get(schema);
@@ -15377,7 +15834,7 @@ function process2(schema, ctx, _params = { path: [], schemaPath: [] }) {
15377
15834
  if (parent) {
15378
15835
  if (!result.ref)
15379
15836
  result.ref = parent;
15380
- process2(parent, ctx, params);
15837
+ processSchema(parent, ctx, params);
15381
15838
  ctx.seen.get(parent).isParent = true;
15382
15839
  }
15383
15840
  }
@@ -15482,7 +15939,6 @@ function extractDefs(ctx, schema) {
15482
15939
  if (seen.count > 1) {
15483
15940
  if (ctx.reused === "ref") {
15484
15941
  extractToDef(entry);
15485
- continue;
15486
15942
  }
15487
15943
  }
15488
15944
  }
@@ -15807,18 +16263,106 @@ function isTransforming(_schema, _ctx) {
15807
16263
  }
15808
16264
  var createToJSONSchemaMethod = (schema, processors = {}) => (params) => {
15809
16265
  const ctx = initializeContext({ ...params, processors });
15810
- process2(schema, ctx);
16266
+ processSchema(schema, ctx);
15811
16267
  extractDefs(ctx, schema);
15812
16268
  return finalize(ctx, schema);
15813
16269
  };
15814
16270
  var createStandardJSONSchemaMethod = (schema, io, processors = {}) => (params) => {
15815
16271
  const { libraryOptions, target } = params ?? {};
15816
16272
  const ctx = initializeContext({ ...libraryOptions ?? {}, target, io, processors });
15817
- process2(schema, ctx);
16273
+ processSchema(schema, ctx);
15818
16274
  extractDefs(ctx, schema);
15819
16275
  return finalize(ctx, schema);
15820
16276
  };
15821
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/json-schema-processors.js
16277
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/json-schema-processors.js
16278
+ var narrowMin = (agg, key, value) => {
16279
+ if (agg[key] === undefined || value > agg[key])
16280
+ agg[key] = value;
16281
+ };
16282
+ var narrowMax = (agg, key, value) => {
16283
+ if (agg[key] === undefined || value < agg[key])
16284
+ agg[key] = value;
16285
+ };
16286
+ var narrowBoth = (agg, value) => {
16287
+ narrowMin(agg, "minimum", value);
16288
+ narrowMax(agg, "maximum", value);
16289
+ };
16290
+ var addDivisor = (agg, value) => {
16291
+ agg.multipleOf ?? (agg.multipleOf = []);
16292
+ if (!agg.multipleOf.includes(value))
16293
+ agg.multipleOf.push(value);
16294
+ };
16295
+ var addPattern = (agg, pattern) => {
16296
+ agg.patterns ?? (agg.patterns = new Set);
16297
+ agg.patterns.add(pattern);
16298
+ };
16299
+ var intersectMime = (agg, mime) => {
16300
+ agg.mime = agg.mime ? agg.mime.filter((m) => mime.includes(m)) : [...mime];
16301
+ };
16302
+ var setFormat = (agg, format) => {
16303
+ agg.format = format;
16304
+ if (format.includes("int"))
16305
+ agg.isInt = true;
16306
+ };
16307
+ var minContributor = (agg, def) => narrowMin(agg, "minimum", def.minimum);
16308
+ var maxContributor = (agg, def) => narrowMax(agg, "maximum", def.maximum);
16309
+ var formatContributor = (ranges) => (agg, def) => {
16310
+ setFormat(agg, def.format);
16311
+ const [minimum, maximum] = ranges[def.format];
16312
+ narrowMin(agg, "minimum", minimum);
16313
+ narrowMax(agg, "maximum", maximum);
16314
+ };
16315
+ var contributors = {
16316
+ greater_than: (agg, def) => narrowMin(agg, def.inclusive ? "minimum" : "exclusiveMinimum", def.value),
16317
+ less_than: (agg, def) => narrowMax(agg, def.inclusive ? "maximum" : "exclusiveMaximum", def.value),
16318
+ multiple_of: (agg, def) => addDivisor(agg, def.value),
16319
+ number_format: formatContributor(NUMBER_FORMAT_RANGES),
16320
+ bigint_format: formatContributor(BIGINT_FORMAT_RANGES),
16321
+ min_length: minContributor,
16322
+ max_length: maxContributor,
16323
+ length_equals: (agg, def) => narrowBoth(agg, def.length),
16324
+ min_size: minContributor,
16325
+ max_size: maxContributor,
16326
+ size_equals: (agg, def) => narrowBoth(agg, def.size),
16327
+ string_format: (agg, def) => {
16328
+ setFormat(agg, def.format);
16329
+ if (def.pattern)
16330
+ addPattern(agg, def.pattern);
16331
+ if (def.format === "base64" || def.format === "base64url")
16332
+ agg.contentEncoding = def.format;
16333
+ if (def.local || def.precision === -1)
16334
+ agg.laxFormat = true;
16335
+ },
16336
+ mime_type: (agg, def) => intersectMime(agg, def.mime)
16337
+ };
16338
+ function aggregateChecks(schema) {
16339
+ const agg = {};
16340
+ const def = schema._zod.def;
16341
+ const list = schema._zod.traits.has("$ZodCheck") ? [schema, ...def.checks ?? []] : def.checks ?? [];
16342
+ for (const ch of list)
16343
+ contributors[ch._zod.def.check]?.(agg, ch._zod.def);
16344
+ const bag = schema._zod.bag;
16345
+ if (bag.minimum !== undefined)
16346
+ narrowMin(agg, "minimum", bag.minimum);
16347
+ if (bag.exclusiveMinimum !== undefined)
16348
+ narrowMin(agg, "exclusiveMinimum", bag.exclusiveMinimum);
16349
+ if (bag.maximum !== undefined)
16350
+ narrowMax(agg, "maximum", bag.maximum);
16351
+ if (bag.exclusiveMaximum !== undefined)
16352
+ narrowMax(agg, "exclusiveMaximum", bag.exclusiveMaximum);
16353
+ if (bag.multipleOf !== undefined)
16354
+ addDivisor(agg, bag.multipleOf);
16355
+ if (bag.format !== undefined) {
16356
+ agg.format ?? (agg.format = bag.format);
16357
+ if (bag.format.includes("int"))
16358
+ agg.isInt = true;
16359
+ }
16360
+ if (bag.mime)
16361
+ intersectMime(agg, bag.mime);
16362
+ for (const pattern of bag.patterns ?? [])
16363
+ addPattern(agg, pattern);
16364
+ return agg;
16365
+ }
15822
16366
  var formatMap = {
15823
16367
  guid: "uuid",
15824
16368
  url: "uri",
@@ -15826,10 +16370,15 @@ var formatMap = {
15826
16370
  json_string: "json-string",
15827
16371
  regex: ""
15828
16372
  };
16373
+ var exactPatterns = new Map([
16374
+ [base64Charset, base64],
16375
+ [base64urlCharset, base64url]
16376
+ ]);
16377
+ var exactPattern = (p) => exactPatterns.get(p) ?? p;
15829
16378
  var stringProcessor = (schema, ctx, _json, _params) => {
15830
16379
  const json = _json;
15831
16380
  json.type = "string";
15832
- const { minimum, maximum, format, patterns, contentEncoding, laxFormat } = schema._zod.bag;
16381
+ const { minimum, maximum, format, patterns, contentEncoding, laxFormat } = aggregateChecks(schema);
15833
16382
  if (typeof minimum === "number")
15834
16383
  json.minLength = minimum;
15835
16384
  if (typeof maximum === "number")
@@ -15845,7 +16394,7 @@ var stringProcessor = (schema, ctx, _json, _params) => {
15845
16394
  if (contentEncoding)
15846
16395
  json.contentEncoding = contentEncoding;
15847
16396
  if (patterns && patterns.size > 0) {
15848
- const patternList = [...patterns];
16397
+ const patternList = [...patterns].map(exactPattern);
15849
16398
  if (patternList.length === 1)
15850
16399
  json.pattern = patternList[0].source;
15851
16400
  else if (patternList.length > 1) {
@@ -15860,11 +16409,8 @@ var stringProcessor = (schema, ctx, _json, _params) => {
15860
16409
  };
15861
16410
  var numberProcessor = (schema, ctx, _json, params) => {
15862
16411
  const json = _json;
15863
- const { minimum, maximum, format, multipleOf, exclusiveMaximum, exclusiveMinimum } = schema._zod.bag;
15864
- if (typeof format === "string" && format.includes("int"))
15865
- json.type = "integer";
15866
- else
15867
- json.type = "number";
16412
+ const { minimum, maximum, multipleOf, exclusiveMaximum, exclusiveMinimum, isInt } = aggregateChecks(schema);
16413
+ json.type = isInt ? "integer" : "number";
15868
16414
  const exMin = typeof exclusiveMinimum === "number" && exclusiveMinimum >= (minimum ?? Number.NEGATIVE_INFINITY);
15869
16415
  const exMax = typeof exclusiveMaximum === "number" && exclusiveMaximum <= (maximum ?? Number.POSITIVE_INFINITY);
15870
16416
  const legacy = ctx.target === "draft-04" || ctx.target === "openapi-3.0";
@@ -15888,11 +16434,19 @@ var numberProcessor = (schema, ctx, _json, params) => {
15888
16434
  } else if (typeof maximum === "number") {
15889
16435
  json.maximum = maximum;
15890
16436
  }
15891
- if (typeof multipleOf === "number") {
15892
- if (Number.isFinite(multipleOf) && multipleOf !== 0)
15893
- json.multipleOf = Math.abs(multipleOf);
15894
- else
15895
- handleUnrepresentable(schema, ctx, json, params, `A multipleOf divisor of ${multipleOf} cannot be represented in JSON Schema`);
16437
+ if (multipleOf) {
16438
+ const divisors = new Set;
16439
+ for (const divisor of multipleOf) {
16440
+ if (Number.isFinite(divisor) && divisor !== 0)
16441
+ divisors.add(Math.abs(divisor));
16442
+ else
16443
+ handleUnrepresentable(schema, ctx, json, params, `A multipleOf divisor of ${divisor} cannot be represented in JSON Schema`);
16444
+ }
16445
+ const [first, ...rest] = divisors;
16446
+ if (first !== undefined)
16447
+ json.multipleOf = first;
16448
+ if (rest.length)
16449
+ json.allOf = [...json.allOf ?? [], ...rest.map((m) => ({ multipleOf: m }))];
15896
16450
  }
15897
16451
  };
15898
16452
  var booleanProcessor = (_schema, _ctx, json, _params) => {
@@ -15992,27 +16546,22 @@ var templateLiteralProcessor = (schema, _ctx, json, _params) => {
15992
16546
  };
15993
16547
  var fileProcessor = (schema, _ctx, json, _params) => {
15994
16548
  const _json = json;
15995
- const file = {
15996
- type: "string",
15997
- format: "binary",
15998
- contentEncoding: "binary"
15999
- };
16000
- const { minimum, maximum, mime } = schema._zod.bag;
16549
+ _json.type = "string";
16550
+ _json.format = "binary";
16551
+ _json.contentEncoding = "binary";
16552
+ const { minimum, maximum, mime } = aggregateChecks(schema);
16001
16553
  if (minimum !== undefined)
16002
- file.minLength = minimum;
16554
+ _json.minLength = minimum;
16003
16555
  if (maximum !== undefined)
16004
- file.maxLength = maximum;
16005
- if (mime) {
16006
- if (mime.length === 1) {
16007
- file.contentMediaType = mime[0];
16008
- Object.assign(_json, file);
16009
- } else {
16010
- Object.assign(_json, file);
16011
- _json.anyOf = mime.map((m) => ({ contentMediaType: m }));
16012
- }
16013
- } else {
16014
- Object.assign(_json, file);
16015
- }
16556
+ _json.maxLength = maximum;
16557
+ if (!mime)
16558
+ return;
16559
+ if (mime.length === 0)
16560
+ _json.not = {};
16561
+ else if (mime.length === 1)
16562
+ _json.contentMediaType = mime[0];
16563
+ else
16564
+ _json.anyOf = mime.map((m) => ({ contentMediaType: m }));
16016
16565
  };
16017
16566
  var successProcessor = (_schema, _ctx, json, _params) => {
16018
16567
  json.type = "boolean";
@@ -16035,13 +16584,13 @@ var setProcessor = (schema, ctx, json, params) => {
16035
16584
  var arrayProcessor = (schema, ctx, _json, params) => {
16036
16585
  const json = _json;
16037
16586
  const def = schema._zod.def;
16038
- const { minimum, maximum } = schema._zod.bag;
16587
+ const { minimum, maximum } = aggregateChecks(schema);
16039
16588
  if (typeof minimum === "number")
16040
16589
  json.minItems = minimum;
16041
16590
  if (typeof maximum === "number")
16042
16591
  json.maxItems = maximum;
16043
16592
  json.type = "array";
16044
- json.items = process2(def.element, ctx, {
16593
+ json.items = processSchema(def.element, ctx, {
16045
16594
  ...params,
16046
16595
  path: [...params.path, "items"]
16047
16596
  });
@@ -16067,22 +16616,20 @@ var objectProcessor = (schema, ctx, _json, params) => {
16067
16616
  json.type = "object";
16068
16617
  json.properties = {};
16069
16618
  for (const key in shape) {
16070
- assignProp(json.properties, key, process2(shape[key], ctx, {
16619
+ assignProp(json.properties, key, processSchema(shape[key], ctx, {
16071
16620
  ...params,
16072
16621
  path: [...params.path, "properties", key]
16073
16622
  }));
16074
16623
  }
16075
- const allKeys = new Set(Object.keys(shape));
16076
- const requiredKeys = new Set([...allKeys].filter((key) => {
16624
+ const requiredKeys = [];
16625
+ for (const key of Object.keys(shape)) {
16077
16626
  const field = def.shape[key];
16078
- if (ctx.io === "input") {
16079
- return inputOptin(field) === undefined;
16080
- } else {
16081
- return field._zod.optout === undefined;
16627
+ if (ctx.io === "input" ? inputOptin(field) === undefined : field._zod.optout === undefined) {
16628
+ requiredKeys.push(key);
16082
16629
  }
16083
- }));
16084
- if (requiredKeys.size > 0) {
16085
- json.required = Array.from(requiredKeys);
16630
+ }
16631
+ if (requiredKeys.length > 0) {
16632
+ json.required = requiredKeys;
16086
16633
  }
16087
16634
  if (def.catchall?._zod.def.type === "never") {
16088
16635
  json.additionalProperties = false;
@@ -16090,7 +16637,7 @@ var objectProcessor = (schema, ctx, _json, params) => {
16090
16637
  if (ctx.io === "output")
16091
16638
  json.additionalProperties = false;
16092
16639
  } else if (def.catchall) {
16093
- json.additionalProperties = process2(def.catchall, ctx, {
16640
+ json.additionalProperties = processSchema(def.catchall, ctx, {
16094
16641
  ...params,
16095
16642
  path: [...params.path, "additionalProperties"]
16096
16643
  });
@@ -16099,7 +16646,7 @@ var objectProcessor = (schema, ctx, _json, params) => {
16099
16646
  var unionProcessor = (schema, ctx, json, params) => {
16100
16647
  const def = schema._zod.def;
16101
16648
  const isExclusive = def.inclusive === false;
16102
- const options = def.options.map((x, i) => process2(x, ctx, {
16649
+ const options = def.options.map((x, i) => processSchema(x, ctx, {
16103
16650
  ...params,
16104
16651
  path: [...params.path, isExclusive ? "oneOf" : "anyOf", i]
16105
16652
  }));
@@ -16111,11 +16658,11 @@ var unionProcessor = (schema, ctx, json, params) => {
16111
16658
  };
16112
16659
  var intersectionProcessor = (schema, ctx, json, params) => {
16113
16660
  const def = schema._zod.def;
16114
- const a = process2(def.left, ctx, {
16661
+ const a = processSchema(def.left, ctx, {
16115
16662
  ...params,
16116
16663
  path: [...params.path, "allOf", 0]
16117
16664
  });
16118
- const b = process2(def.right, ctx, {
16665
+ const b = processSchema(def.right, ctx, {
16119
16666
  ...params,
16120
16667
  path: [...params.path, "allOf", 1]
16121
16668
  });
@@ -16133,11 +16680,11 @@ var tupleProcessor = (schema, ctx, _json, params) => {
16133
16680
  json.type = "array";
16134
16681
  const prefixPath = ctx.target === "draft-2020-12" ? "prefixItems" : "items";
16135
16682
  const restPath = ctx.target === "draft-2020-12" ? "items" : ctx.target === "openapi-3.0" ? "items" : "additionalItems";
16136
- const prefixItems = def.items.map((x, i) => process2(x, ctx, {
16683
+ const prefixItems = def.items.map((x, i) => processSchema(x, ctx, {
16137
16684
  ...params,
16138
16685
  path: [...params.path, prefixPath, i]
16139
16686
  }));
16140
- const rest = def.rest ? process2(def.rest, ctx, {
16687
+ const rest = def.rest ? processSchema(def.rest, ctx, {
16141
16688
  ...params,
16142
16689
  path: [...params.path, restPath, ...ctx.target === "openapi-3.0" ? [def.items.length] : []]
16143
16690
  }) : null;
@@ -16185,7 +16732,7 @@ var tupleProcessor = (schema, ctx, _json, params) => {
16185
16732
  if (isClosed)
16186
16733
  json.maxItems = maxItems;
16187
16734
  }
16188
- const { minimum, maximum } = schema._zod.bag;
16735
+ const { minimum, maximum } = aggregateChecks(schema);
16189
16736
  if (typeof minimum === "number")
16190
16737
  json.minItems = minimum;
16191
16738
  if (typeof maximum === "number")
@@ -16259,20 +16806,19 @@ var recordProcessor = (schema, ctx, _json, params) => {
16259
16806
  const def = schema._zod.def;
16260
16807
  json.type = "object";
16261
16808
  const keyType = def.keyType;
16262
- const keyBag = keyType._zod.bag;
16263
- const patterns = keyBag?.patterns;
16809
+ const patterns = aggregateChecks(keyType).patterns;
16264
16810
  if (def.mode === "loose" && patterns && patterns.size > 0) {
16265
- const valueSchema = process2(def.valueType, ctx, {
16811
+ const valueSchema = processSchema(def.valueType, ctx, {
16266
16812
  ...params,
16267
16813
  path: [...params.path, "patternProperties", "*"]
16268
16814
  });
16269
16815
  json.patternProperties = {};
16270
16816
  for (const pattern of patterns) {
16271
- assignProp(json.patternProperties, pattern.source, valueSchema);
16817
+ assignProp(json.patternProperties, exactPattern(pattern).source, valueSchema);
16272
16818
  }
16273
16819
  } else {
16274
16820
  if (ctx.target === "draft-07" || ctx.target === "draft-2020-12") {
16275
- json.propertyNames = process2(def.keyType, ctx, {
16821
+ json.propertyNames = processSchema(def.keyType, ctx, {
16276
16822
  ...params,
16277
16823
  path: [...params.path, "propertyNames"]
16278
16824
  });
@@ -16284,7 +16830,7 @@ var recordProcessor = (schema, ctx, _json, params) => {
16284
16830
  }
16285
16831
  pending.push(schema);
16286
16832
  }
16287
- json.additionalProperties = process2(def.valueType, ctx, {
16833
+ json.additionalProperties = processSchema(def.valueType, ctx, {
16288
16834
  ...params,
16289
16835
  path: [...params.path, "additionalProperties"]
16290
16836
  });
@@ -16300,7 +16846,7 @@ var recordProcessor = (schema, ctx, _json, params) => {
16300
16846
  };
16301
16847
  var nullableProcessor = (schema, ctx, json, params) => {
16302
16848
  const def = schema._zod.def;
16303
- const inner = process2(def.innerType, ctx, params);
16849
+ const inner = processSchema(def.innerType, ctx, params);
16304
16850
  const seen = ctx.seen.get(schema);
16305
16851
  if (ctx.target === "openapi-3.0") {
16306
16852
  seen.ref = def.innerType;
@@ -16311,7 +16857,7 @@ var nullableProcessor = (schema, ctx, json, params) => {
16311
16857
  };
16312
16858
  var nonoptionalProcessor = (schema, ctx, _json, params) => {
16313
16859
  const def = schema._zod.def;
16314
- process2(def.innerType, ctx, params);
16860
+ processSchema(def.innerType, ctx, params);
16315
16861
  const seen = ctx.seen.get(schema);
16316
16862
  seen.ref = def.innerType;
16317
16863
  };
@@ -16331,7 +16877,7 @@ function serializeDefaultValue(value, schema, ctx, json, params) {
16331
16877
  }
16332
16878
  var defaultProcessor = (schema, ctx, json, params) => {
16333
16879
  const def = schema._zod.def;
16334
- process2(def.innerType, ctx, params);
16880
+ processSchema(def.innerType, ctx, params);
16335
16881
  const seen = ctx.seen.get(schema);
16336
16882
  seen.ref = def.innerType;
16337
16883
  const value = serializeDefaultValue(def.defaultValue, schema, ctx, json, params);
@@ -16340,7 +16886,7 @@ var defaultProcessor = (schema, ctx, json, params) => {
16340
16886
  };
16341
16887
  var prefaultProcessor = (schema, ctx, json, params) => {
16342
16888
  const def = schema._zod.def;
16343
- process2(def.innerType, ctx, params);
16889
+ processSchema(def.innerType, ctx, params);
16344
16890
  const seen = ctx.seen.get(schema);
16345
16891
  seen.ref = def.innerType;
16346
16892
  if (ctx.io !== "input")
@@ -16351,7 +16897,7 @@ var prefaultProcessor = (schema, ctx, json, params) => {
16351
16897
  };
16352
16898
  var catchProcessor = (schema, ctx, json, params) => {
16353
16899
  const def = schema._zod.def;
16354
- process2(def.innerType, ctx, params);
16900
+ processSchema(def.innerType, ctx, params);
16355
16901
  const seen = ctx.seen.get(schema);
16356
16902
  seen.ref = def.innerType;
16357
16903
  let catchValue;
@@ -16367,32 +16913,32 @@ var pipeProcessor = (schema, ctx, _json, params) => {
16367
16913
  const def = schema._zod.def;
16368
16914
  const inIsTransform = def.in._zod.traits.has("$ZodTransform");
16369
16915
  const innerType = ctx.io === "input" ? inIsTransform ? def.out : def.in : def.out;
16370
- process2(innerType, ctx, params);
16916
+ processSchema(innerType, ctx, params);
16371
16917
  const seen = ctx.seen.get(schema);
16372
16918
  seen.ref = innerType;
16373
16919
  };
16374
16920
  var readonlyProcessor = (schema, ctx, json, params) => {
16375
16921
  const def = schema._zod.def;
16376
- process2(def.innerType, ctx, params);
16922
+ processSchema(def.innerType, ctx, params);
16377
16923
  const seen = ctx.seen.get(schema);
16378
16924
  seen.ref = def.innerType;
16379
16925
  json.readOnly = true;
16380
16926
  };
16381
16927
  var promiseProcessor = (schema, ctx, _json, params) => {
16382
16928
  const def = schema._zod.def;
16383
- process2(def.innerType, ctx, params);
16929
+ processSchema(def.innerType, ctx, params);
16384
16930
  const seen = ctx.seen.get(schema);
16385
16931
  seen.ref = def.innerType;
16386
16932
  };
16387
16933
  var optionalProcessor = (schema, ctx, _json, params) => {
16388
16934
  const def = schema._zod.def;
16389
- process2(def.innerType, ctx, params);
16935
+ processSchema(def.innerType, ctx, params);
16390
16936
  const seen = ctx.seen.get(schema);
16391
16937
  seen.ref = def.innerType;
16392
16938
  };
16393
16939
  var lazyProcessor = (schema, ctx, _json, params) => {
16394
16940
  const innerType = schema._zod.innerType;
16395
- process2(innerType, ctx, params);
16941
+ processSchema(innerType, ctx, params);
16396
16942
  const seen = ctx.seen.get(schema);
16397
16943
  seen.ref = innerType;
16398
16944
  };
@@ -16444,7 +16990,7 @@ function toJSONSchema(input, params) {
16444
16990
  const defs = {};
16445
16991
  for (const entry of registry2._idmap.entries()) {
16446
16992
  const [_, schema] = entry;
16447
- process2(schema, ctx2);
16993
+ processSchema(schema, ctx2);
16448
16994
  }
16449
16995
  const schemas = {};
16450
16996
  const external = {
@@ -16467,11 +17013,11 @@ function toJSONSchema(input, params) {
16467
17013
  return { schemas };
16468
17014
  }
16469
17015
  const ctx = initializeContext({ ...params, processors: allProcessors });
16470
- process2(input, ctx);
17016
+ processSchema(input, ctx);
16471
17017
  extractDefs(ctx, input);
16472
17018
  return finalize(ctx, input);
16473
17019
  }
16474
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/json-schema-generator.js
17020
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/json-schema-generator.js
16475
17021
  class JSONSchemaGenerator {
16476
17022
  get metadataRegistry() {
16477
17023
  return this.ctx.metadataRegistry;
@@ -16513,7 +17059,7 @@ class JSONSchemaGenerator {
16513
17059
  });
16514
17060
  }
16515
17061
  process(schema, _params = { path: [], schemaPath: [] }) {
16516
- return process2(schema, this.ctx, _params);
17062
+ return processSchema(schema, this.ctx, _params);
16517
17063
  }
16518
17064
  emit(schema, _params) {
16519
17065
  if (_params) {
@@ -16532,9 +17078,9 @@ class JSONSchemaGenerator {
16532
17078
  return plainResult;
16533
17079
  }
16534
17080
  }
16535
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/json-schema.js
17081
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/json-schema.js
16536
17082
  var exports_json_schema = {};
16537
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/schemas.js
17083
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/schemas.js
16538
17084
  var exports_schemas2 = {};
16539
17085
  __export(exports_schemas2, {
16540
17086
  ZodAny: () => ZodAny,
@@ -16564,12 +17110,14 @@ __export(exports_schemas2, {
16564
17110
  ZodFile: () => ZodFile,
16565
17111
  ZodFunction: () => ZodFunction,
16566
17112
  ZodGUID: () => ZodGUID,
17113
+ ZodIBAN: () => ZodIBAN,
16567
17114
  ZodIPv4: () => ZodIPv4,
16568
17115
  ZodIPv6: () => ZodIPv6,
16569
17116
  ZodISODate: () => ZodISODate,
16570
17117
  ZodISODateTime: () => ZodISODateTime,
16571
17118
  ZodISODuration: () => ZodISODuration,
16572
17119
  ZodISOTime: () => ZodISOTime,
17120
+ ZodInstanceOf: () => ZodInstanceOf,
16573
17121
  ZodIntersection: () => ZodIntersection,
16574
17122
  ZodJWT: () => ZodJWT,
16575
17123
  ZodKSUID: () => ZodKSUID,
@@ -16628,6 +17176,7 @@ __export(exports_schemas2, {
16628
17176
  creditCard: () => creditCard2,
16629
17177
  cuid: () => cuid3,
16630
17178
  cuid2: () => cuid22,
17179
+ currencyCode: () => currencyCode2,
16631
17180
  custom: () => custom,
16632
17181
  date: () => date2,
16633
17182
  describe: () => describe2,
@@ -16646,6 +17195,7 @@ __export(exports_schemas2, {
16646
17195
  hex: () => hex2,
16647
17196
  hostname: () => hostname2,
16648
17197
  httpUrl: () => httpUrl,
17198
+ iban: () => iban2,
16649
17199
  instanceof: () => _instanceof,
16650
17200
  int: () => int,
16651
17201
  int32: () => int32,
@@ -16711,7 +17261,7 @@ __export(exports_schemas2, {
16711
17261
  xor: () => xor
16712
17262
  });
16713
17263
 
16714
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/checks.js
17264
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/checks.js
16715
17265
  var exports_checks2 = {};
16716
17266
  __export(exports_checks2, {
16717
17267
  endsWith: () => _endsWith,
@@ -16746,7 +17296,7 @@ __export(exports_checks2, {
16746
17296
  uppercase: () => _uppercase
16747
17297
  });
16748
17298
 
16749
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/errors.js
17299
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/errors.js
16750
17300
  var _installedErrorProtos = /* @__PURE__ */ new WeakSet([Object.prototype, Error.prototype]);
16751
17301
  function _lazyMethod(proto, key, make) {
16752
17302
  Object.defineProperty(proto, key, {
@@ -16792,7 +17342,7 @@ var ZodRealError = /* @__PURE__ */ $constructor("ZodError", initializer2, undefi
16792
17342
  Parent: Error
16793
17343
  });
16794
17344
 
16795
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/parse.js
17345
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/parse.js
16796
17346
  var parse3 = /* @__PURE__ */ _parse(ZodRealError);
16797
17347
  var parseAsync2 = /* @__PURE__ */ _parseAsync(ZodRealError);
16798
17348
  var safeParse2 = /* @__PURE__ */ _safeParse(ZodRealError);
@@ -16806,7 +17356,7 @@ var safeDecode2 = /* @__PURE__ */ _safeDecode(ZodRealError);
16806
17356
  var safeEncodeAsync2 = /* @__PURE__ */ _safeEncodeAsync(ZodRealError);
16807
17357
  var safeDecodeAsync2 = /* @__PURE__ */ _safeDecodeAsync(ZodRealError);
16808
17358
 
16809
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/schemas.js
17359
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/schemas.js
16810
17360
  function _ensureDefaultLocale() {
16811
17361
  if (!globalConfig.localeError)
16812
17362
  config2(en_default());
@@ -16946,6 +17496,12 @@ var ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
16946
17496
  set spa(value) {
16947
17497
  exports_util.own(this, "spa", value);
16948
17498
  },
17499
+ validate(data, params) {
17500
+ return validate(this, data, params);
17501
+ },
17502
+ validateAsync(data, params) {
17503
+ return validateAsync(this, data, params);
17504
+ },
16949
17505
  encode: function _encode2(data, params) {
16950
17506
  return encode2(this, data, params, { callee: _encode2 });
16951
17507
  },
@@ -16984,10 +17540,10 @@ var _ZodString = /* @__PURE__ */ $constructor("_ZodString", (inst, def) => {
16984
17540
  $ZodString.init(inst, def);
16985
17541
  ZodType.init(inst, def);
16986
17542
  inst._zod.processJSONSchema = (ctx, json, params) => stringProcessor(inst, ctx, json, params);
16987
- const bag = inst._zod.bag;
16988
- inst.format = bag.format ?? null;
16989
- inst.minLength = bag.minimum ?? null;
16990
- inst.maxLength = bag.maximum ?? null;
17543
+ }, /* @__PURE__ */ exports_util.derived({
17544
+ format: (inst) => aggregateChecks(inst).format ?? null,
17545
+ minLength: (inst) => aggregateChecks(inst).minimum ?? null,
17546
+ maxLength: (inst) => aggregateChecks(inst).maximum ?? null
16991
17547
  }, {
16992
17548
  regex(...args) {
16993
17549
  return this.check(_regex(...args));
@@ -17034,7 +17590,7 @@ var _ZodString = /* @__PURE__ */ $constructor("_ZodString", (inst, def) => {
17034
17590
  slugify() {
17035
17591
  return this.check(_slugify());
17036
17592
  }
17037
- });
17593
+ }));
17038
17594
  var ZodString = /* @__PURE__ */ $constructor("ZodString", (inst, def) => {
17039
17595
  $ZodString.init(inst, def);
17040
17596
  _ZodString.init(inst, def);
@@ -17180,8 +17736,8 @@ function url(params) {
17180
17736
  }
17181
17737
  function httpUrl(params) {
17182
17738
  return _url(ZodURL, {
17183
- protocol: exports_regexes.httpProtocol,
17184
- hostname: exports_regexes.domain,
17739
+ protocol: httpProtocol,
17740
+ hostname: domain,
17185
17741
  ...exports_util.normalizeParams(params)
17186
17742
  });
17187
17743
  }
@@ -17297,6 +17853,13 @@ var ZodCreditCard = /* @__PURE__ */ $constructor("ZodCreditCard", (inst, def) =>
17297
17853
  function creditCard2(params) {
17298
17854
  return _creditCard(ZodCreditCard, params);
17299
17855
  }
17856
+ var ZodIBAN = /* @__PURE__ */ $constructor("ZodIBAN", (inst, def) => {
17857
+ $ZodIBAN.init(inst, def);
17858
+ ZodStringFormat.init(inst, def);
17859
+ });
17860
+ function iban2(params) {
17861
+ return _iban(ZodIBAN, params);
17862
+ }
17300
17863
  var ZodJWT = /* @__PURE__ */ $constructor("ZodJWT", (inst, def) => {
17301
17864
  $ZodJWT.init(inst, def);
17302
17865
  ZodStringFormat.init(inst, def);
@@ -17312,10 +17875,13 @@ function stringFormat(format, fnOrRegex, _params = {}) {
17312
17875
  return _stringFormat(ZodCustomStringFormat, format, fnOrRegex, _params);
17313
17876
  }
17314
17877
  function hostname2(_params) {
17315
- return _stringFormat(ZodCustomStringFormat, "hostname", exports_regexes.hostname, _params);
17878
+ return _stringFormat(ZodCustomStringFormat, "hostname", hostname, _params);
17316
17879
  }
17317
17880
  function hex2(_params) {
17318
- return _stringFormat(ZodCustomStringFormat, "hex", exports_regexes.hex, _params);
17881
+ return _stringFormat(ZodCustomStringFormat, "hex", hex, _params);
17882
+ }
17883
+ function currencyCode2(_params) {
17884
+ return _stringFormat(ZodCustomStringFormat, "currency_code", currencyCode, _params);
17319
17885
  }
17320
17886
  function hash(alg, params) {
17321
17887
  const enc = params?.enc ?? "hex";
@@ -17329,12 +17895,21 @@ var ZodNumber = /* @__PURE__ */ $constructor("ZodNumber", (inst, def) => {
17329
17895
  $ZodNumber.init(inst, def);
17330
17896
  ZodType.init(inst, def);
17331
17897
  inst._zod.processJSONSchema = (ctx, json, params) => numberProcessor(inst, ctx, json, params);
17332
- const bag = inst._zod.bag;
17333
- inst.minValue = Math.max(bag.minimum ?? Number.NEGATIVE_INFINITY, bag.exclusiveMinimum ?? Number.NEGATIVE_INFINITY) ?? null;
17334
- inst.maxValue = Math.min(bag.maximum ?? Number.POSITIVE_INFINITY, bag.exclusiveMaximum ?? Number.POSITIVE_INFINITY) ?? null;
17335
- inst.isInt = (bag.format ?? "").includes("int") || Number.isSafeInteger(bag.multipleOf ?? 0.5);
17336
17898
  inst.isFinite = true;
17337
- inst.format = bag.format ?? null;
17899
+ }, /* @__PURE__ */ exports_util.derived({
17900
+ minValue: (inst) => {
17901
+ const { minimum, exclusiveMinimum } = aggregateChecks(inst);
17902
+ return Math.max(minimum ?? Number.NEGATIVE_INFINITY, exclusiveMinimum ?? Number.NEGATIVE_INFINITY);
17903
+ },
17904
+ maxValue: (inst) => {
17905
+ const { maximum, exclusiveMaximum } = aggregateChecks(inst);
17906
+ return Math.min(maximum ?? Number.POSITIVE_INFINITY, exclusiveMaximum ?? Number.POSITIVE_INFINITY);
17907
+ },
17908
+ isInt: (inst) => {
17909
+ const { isInt, multipleOf } = aggregateChecks(inst);
17910
+ return !!isInt || !!multipleOf?.some(Number.isSafeInteger);
17911
+ },
17912
+ format: (inst) => aggregateChecks(inst).format ?? null
17338
17913
  }, {
17339
17914
  gt(value, params) {
17340
17915
  return this.check(_gt(value, params));
@@ -17381,7 +17956,7 @@ var ZodNumber = /* @__PURE__ */ $constructor("ZodNumber", (inst, def) => {
17381
17956
  finite() {
17382
17957
  return this;
17383
17958
  }
17384
- });
17959
+ }));
17385
17960
  function number2(params) {
17386
17961
  return _number(ZodNumber, params);
17387
17962
  }
@@ -17416,10 +17991,10 @@ var ZodBigInt = /* @__PURE__ */ $constructor("ZodBigInt", (inst, def) => {
17416
17991
  $ZodBigInt.init(inst, def);
17417
17992
  ZodType.init(inst, def);
17418
17993
  inst._zod.processJSONSchema = (ctx, json, params) => bigintProcessor(inst, ctx, json, params);
17419
- const bag = inst._zod.bag;
17420
- inst.minValue = bag.minimum ?? null;
17421
- inst.maxValue = bag.maximum ?? null;
17422
- inst.format = bag.format ?? null;
17994
+ }, /* @__PURE__ */ exports_util.derived({
17995
+ minValue: (inst) => aggregateChecks(inst).minimum ?? null,
17996
+ maxValue: (inst) => aggregateChecks(inst).maximum ?? null,
17997
+ format: (inst) => aggregateChecks(inst).format ?? null
17423
17998
  }, {
17424
17999
  gte(value, params) {
17425
18000
  return this.check(_gte(value, params));
@@ -17454,7 +18029,7 @@ var ZodBigInt = /* @__PURE__ */ $constructor("ZodBigInt", (inst, def) => {
17454
18029
  multipleOf(value, params) {
17455
18030
  return this.check(_multipleOf(value, params));
17456
18031
  }
17457
- });
18032
+ }));
17458
18033
  function bigint2(params) {
17459
18034
  return _bigint(ZodBigInt, params);
17460
18035
  }
@@ -17530,10 +18105,16 @@ var ZodDate = /* @__PURE__ */ $constructor("ZodDate", (inst, def) => {
17530
18105
  inst._zod.processJSONSchema = (ctx, json, params) => dateProcessor(inst, ctx, json, params);
17531
18106
  inst.min = (value, params) => inst.check(_gte(value, params));
17532
18107
  inst.max = (value, params) => inst.check(_lte(value, params));
17533
- const c = inst._zod.bag;
17534
- inst.minDate = c.minimum ? new Date(c.minimum) : null;
17535
- inst.maxDate = c.maximum ? new Date(c.maximum) : null;
17536
- });
18108
+ }, /* @__PURE__ */ exports_util.derived({
18109
+ minDate: (inst) => {
18110
+ const { minimum } = aggregateChecks(inst);
18111
+ return minimum ? new Date(minimum) : null;
18112
+ },
18113
+ maxDate: (inst) => {
18114
+ const { maximum } = aggregateChecks(inst);
18115
+ return maximum ? new Date(maximum) : null;
18116
+ }
18117
+ }, {}));
17537
18118
  function date2(params) {
17538
18119
  return _date(ZodDate, params);
17539
18120
  }
@@ -17578,19 +18159,19 @@ var ZodObject = /* @__PURE__ */ $constructor("ZodObject", (inst, def) => {
17578
18159
  return _enum2(Object.keys(this._zod.def.shape));
17579
18160
  },
17580
18161
  catchall(catchall) {
17581
- return this.clone({ ...this._zod.def, catchall });
18162
+ return this.clone(exports_util.mergeDefs(this._zod.def, { catchall }));
17582
18163
  },
17583
18164
  passthrough() {
17584
- return this.clone({ ...this._zod.def, catchall: unknown() });
18165
+ return this.clone(exports_util.mergeDefs(this._zod.def, { catchall: unknown() }));
17585
18166
  },
17586
18167
  loose() {
17587
- return this.clone({ ...this._zod.def, catchall: unknown() });
18168
+ return this.clone(exports_util.mergeDefs(this._zod.def, { catchall: unknown() }));
17588
18169
  },
17589
18170
  strict() {
17590
- return this.clone({ ...this._zod.def, catchall: never() });
18171
+ return this.clone(exports_util.mergeDefs(this._zod.def, { catchall: never() }));
17591
18172
  },
17592
18173
  strip() {
17593
- return this.clone({ ...this._zod.def, catchall: undefined });
18174
+ return this.clone(exports_util.mergeDefs(this._zod.def, { catchall: undefined }));
17594
18175
  },
17595
18176
  extend(incoming) {
17596
18177
  return exports_util.extend(this, incoming);
@@ -17809,7 +18390,7 @@ var ZodEnum = /* @__PURE__ */ $constructor("ZodEnum", (inst, def) => {
17809
18390
  ZodType.init(inst, def);
17810
18391
  inst._zod.processJSONSchema = (ctx, json, params) => enumProcessor(inst, ctx, json, params);
17811
18392
  inst.enum = def.entries;
17812
- inst.options = Object.values(def.entries);
18393
+ inst.options = [...inst._zod.values];
17813
18394
  const keys = new Set(Object.keys(def.entries));
17814
18395
  inst.extract = (values, params) => {
17815
18396
  const newEntries = {};
@@ -18170,8 +18751,15 @@ function superRefine(fn, params) {
18170
18751
  }
18171
18752
  var describe2 = describe;
18172
18753
  var meta2 = meta;
18754
+ var ZodInstanceOf = /* @__PURE__ */ $constructor("ZodInstanceOf", (inst, def) => {
18755
+ ZodCustom.init(inst, def);
18756
+ }, {
18757
+ properties(shape, params) {
18758
+ return this.check(_properties(shape, params));
18759
+ }
18760
+ });
18173
18761
  function _instanceof(cls, params = {}) {
18174
- const inst = new ZodCustom({
18762
+ const inst = new ZodInstanceOf({
18175
18763
  type: "custom",
18176
18764
  check: "custom",
18177
18765
  fn: (data) => data instanceof cls,
@@ -18210,7 +18798,7 @@ function preprocess(fn, schema) {
18210
18798
  out: schema
18211
18799
  });
18212
18800
  }
18213
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/compat.js
18801
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/compat.js
18214
18802
  var ZodIssueCode = {
18215
18803
  invalid_type: "invalid_type",
18216
18804
  too_big: "too_big",
@@ -18234,7 +18822,7 @@ function getErrorMap() {
18234
18822
  }
18235
18823
  var ZodFirstPartyTypeKind;
18236
18824
  (function(ZodFirstPartyTypeKind2) {})(ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {}));
18237
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/iso.js
18825
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/iso.js
18238
18826
  var exports_iso = {};
18239
18827
  __export(exports_iso, {
18240
18828
  ZodISODate: () => ZodISODate,
@@ -18259,7 +18847,7 @@ function duration2(params) {
18259
18847
  return _isoDuration(ZodISODuration, params);
18260
18848
  }
18261
18849
 
18262
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/from-json-schema.js
18850
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/from-json-schema.js
18263
18851
  var z = {
18264
18852
  ...exports_schemas2,
18265
18853
  ...exports_checks2,
@@ -18361,27 +18949,188 @@ function resolveRef(ref, ctx) {
18361
18949
  }
18362
18950
  throw new Error(`Reference not found: ${ref}`);
18363
18951
  }
18364
- function checkPropertyNames(objectSchema, keySchema) {
18952
+ function checkObjectGuards(objectSchema, guards) {
18365
18953
  const guard = z.transform((value) => value).check((payload) => {
18366
18954
  const value = payload.value;
18367
18955
  if (typeof value !== "object" || value === null || Array.isArray(value))
18368
18956
  return;
18369
- for (const key of Object.getOwnPropertyNames(value)) {
18370
- const result = keySchema.safeParse(key);
18371
- if (result.success)
18372
- continue;
18957
+ const keys = Object.getOwnPropertyNames(value);
18958
+ if (guards.minProperties !== undefined && keys.length < guards.minProperties) {
18373
18959
  payload.issues.push({
18374
- code: "invalid_key",
18375
- origin: "record",
18376
- issues: result.error.issues,
18377
- input: key,
18378
- path: [key],
18960
+ origin: "object",
18961
+ code: "too_small",
18962
+ minimum: guards.minProperties,
18963
+ inclusive: true,
18964
+ message: `Too small: expected object to have >=${guards.minProperties} properties`,
18965
+ input: value,
18966
+ inst: objectSchema,
18379
18967
  continue: true
18380
18968
  });
18381
18969
  }
18970
+ if (guards.maxProperties !== undefined && keys.length > guards.maxProperties) {
18971
+ payload.issues.push({
18972
+ origin: "object",
18973
+ code: "too_big",
18974
+ maximum: guards.maxProperties,
18975
+ inclusive: true,
18976
+ message: `Too big: expected object to have <=${guards.maxProperties} properties`,
18977
+ input: value,
18978
+ inst: objectSchema,
18979
+ continue: true
18980
+ });
18981
+ }
18982
+ if (guards.keySchema) {
18983
+ for (const key of keys) {
18984
+ const result = guards.keySchema.safeParse(key);
18985
+ if (result.success)
18986
+ continue;
18987
+ payload.issues.push({
18988
+ code: "invalid_key",
18989
+ origin: "record",
18990
+ issues: result.error.issues,
18991
+ input: key,
18992
+ path: [key],
18993
+ continue: true
18994
+ });
18995
+ }
18996
+ }
18382
18997
  });
18383
18998
  return guard.pipe(objectSchema);
18384
18999
  }
19000
+ function canonicalKey(value, seen) {
19001
+ if (value === null)
19002
+ return "z";
19003
+ const type = typeof value;
19004
+ if (type !== "object") {
19005
+ if (type === "number" && Number.isNaN(value))
19006
+ return null;
19007
+ const raw = String(value);
19008
+ return `${type[0]}${raw.length}:${raw}`;
19009
+ }
19010
+ if (seen.has(value))
19011
+ return null;
19012
+ seen.add(value);
19013
+ try {
19014
+ if (Array.isArray(value)) {
19015
+ const parts2 = [];
19016
+ for (const item of value) {
19017
+ const key = canonicalKey(item, seen);
19018
+ if (key === null)
19019
+ return null;
19020
+ parts2.push(key);
19021
+ }
19022
+ return `a${parts2.length}:[${parts2.join(",")}]`;
19023
+ }
19024
+ const keys = Object.keys(value).sort();
19025
+ const parts = [];
19026
+ for (const k of keys) {
19027
+ const key = canonicalKey(value[k], seen);
19028
+ if (key === null)
19029
+ return null;
19030
+ parts.push(`${k.length}:${k}=${key}`);
19031
+ }
19032
+ return `o${parts.length}:{${parts.join(",")}}`;
19033
+ } finally {
19034
+ seen.delete(value);
19035
+ }
19036
+ }
19037
+ var SCHEMA_KEYWORDS = /* @__PURE__ */ new Set([
19038
+ "items",
19039
+ "prefixItems",
19040
+ "additionalItems",
19041
+ "additionalProperties",
19042
+ "contains",
19043
+ "propertyNames",
19044
+ "not",
19045
+ "if",
19046
+ "then",
19047
+ "else",
19048
+ "allOf",
19049
+ "anyOf",
19050
+ "oneOf",
19051
+ "unevaluatedItems",
19052
+ "unevaluatedProperties",
19053
+ "contentSchema"
19054
+ ]);
19055
+ var SCHEMA_MAP_KEYWORDS = /* @__PURE__ */ new Set([
19056
+ "properties",
19057
+ "patternProperties",
19058
+ "dependentSchemas",
19059
+ "dependencies",
19060
+ "$defs",
19061
+ "definitions"
19062
+ ]);
19063
+ function containsRef(value) {
19064
+ if (typeof value !== "object" || value === null)
19065
+ return false;
19066
+ if (Array.isArray(value))
19067
+ return value.some(containsRef);
19068
+ if (typeof value.$ref === "string")
19069
+ return true;
19070
+ return Object.entries(value).some(([key, sub]) => {
19071
+ if (SCHEMA_KEYWORDS.has(key))
19072
+ return containsRef(sub);
19073
+ if (!SCHEMA_MAP_KEYWORDS.has(key) || typeof sub !== "object" || sub === null)
19074
+ return false;
19075
+ return Object.values(sub).some(containsRef);
19076
+ });
19077
+ }
19078
+ function plural(n) {
19079
+ return n === 1 ? "element" : "elements";
19080
+ }
19081
+ function checkArrayGuards(arraySchema, guards) {
19082
+ const guard = z.transform((value) => value).check((payload) => {
19083
+ const items = payload.value;
19084
+ if (!Array.isArray(items))
19085
+ return;
19086
+ if (guards.uniqueItems === true) {
19087
+ const firstSeen = new Map;
19088
+ for (let i = 0;i < items.length; i++) {
19089
+ const key = canonicalKey(items[i], new Set);
19090
+ if (key === null)
19091
+ continue;
19092
+ const first = firstSeen.get(key);
19093
+ if (first === undefined) {
19094
+ firstSeen.set(key, i);
19095
+ continue;
19096
+ }
19097
+ payload.issues.push({
19098
+ code: "custom",
19099
+ message: `Array items must be unique: element at index ${i} duplicates the one at index ${first}`,
19100
+ input: items,
19101
+ path: [i],
19102
+ continue: true
19103
+ });
19104
+ }
19105
+ }
19106
+ if (guards.containsSchema) {
19107
+ const minContains = guards.minContains ?? 1;
19108
+ const ceiling = guards.maxContains !== undefined ? guards.maxContains + 1 : Number.POSITIVE_INFINITY;
19109
+ let matches = 0;
19110
+ for (const item of items) {
19111
+ if (guards.containsSchema.safeParse(item).success && ++matches >= ceiling)
19112
+ break;
19113
+ }
19114
+ if (matches < minContains) {
19115
+ payload.issues.push({
19116
+ code: "custom",
19117
+ message: `Array must contain at least ${minContains} matching ${plural(minContains)}; found ${matches}`,
19118
+ input: items,
19119
+ continue: true
19120
+ });
19121
+ }
19122
+ if (guards.maxContains !== undefined && matches > guards.maxContains) {
19123
+ payload.issues.push({
19124
+ code: "custom",
19125
+ message: `Array must contain at most ${guards.maxContains} matching ${plural(guards.maxContains)}`,
19126
+ input: items,
19127
+ continue: true
19128
+ });
19129
+ }
19130
+ }
19131
+ });
19132
+ return guard.pipe(arraySchema);
19133
+ }
18385
19134
  function getTupleRest(restSchema, ctx) {
18386
19135
  if (restSchema === false) {
18387
19136
  return;
@@ -18511,6 +19260,8 @@ function convertBaseSchema(schema, ctx) {
18511
19260
  stringSchema = stringSchema.check(z.e164());
18512
19261
  } else if (format === "credit_card") {
18513
19262
  stringSchema = stringSchema.check(z.creditCard());
19263
+ } else if (format === "iban") {
19264
+ stringSchema = stringSchema.check(z.iban());
18514
19265
  } else if (format === "jwt") {
18515
19266
  stringSchema = stringSchema.check(z.jwt());
18516
19267
  } else if (format === "emoji") {
@@ -18643,9 +19394,16 @@ function convertBaseSchema(schema, ctx) {
18643
19394
  zodSchema = objectSchema.passthrough();
18644
19395
  }
18645
19396
  }
18646
- if (schema.propertyNames !== undefined && schema.propertyNames !== true) {
18647
- const keyJSONSchema = typeof schema.propertyNames === "object" && schema.propertyNames.type === undefined ? { type: "string", ...schema.propertyNames } : schema.propertyNames;
18648
- zodSchema = checkPropertyNames(zodSchema, convertSchema(keyJSONSchema, ctx));
19397
+ const hasKeyGuard = schema.propertyNames !== undefined && schema.propertyNames !== true;
19398
+ const minProperties = typeof schema.minProperties === "number" ? schema.minProperties : undefined;
19399
+ const maxProperties = typeof schema.maxProperties === "number" ? schema.maxProperties : undefined;
19400
+ if (hasKeyGuard || minProperties !== undefined || maxProperties !== undefined) {
19401
+ let keySchema;
19402
+ if (hasKeyGuard) {
19403
+ const keyJSONSchema = typeof schema.propertyNames === "object" && schema.propertyNames.type === undefined ? { type: "string", ...schema.propertyNames } : schema.propertyNames;
19404
+ keySchema = convertSchema(keyJSONSchema, ctx);
19405
+ }
19406
+ zodSchema = checkObjectGuards(zodSchema, { keySchema, minProperties, maxProperties });
18649
19407
  }
18650
19408
  break;
18651
19409
  }
@@ -18691,6 +19449,14 @@ function convertBaseSchema(schema, ctx) {
18691
19449
  } else {
18692
19450
  zodSchema = z.array(z.any());
18693
19451
  }
19452
+ if (schema.uniqueItems === true || schema.contains !== undefined) {
19453
+ zodSchema = checkArrayGuards(zodSchema, {
19454
+ uniqueItems: schema.uniqueItems === true,
19455
+ containsSchema: schema.contains !== undefined ? convertSchema(schema.contains, ctx) : undefined,
19456
+ minContains: typeof schema.minContains === "number" ? schema.minContains : undefined,
19457
+ maxContains: typeof schema.maxContains === "number" ? schema.maxContains : undefined
19458
+ });
19459
+ }
18694
19460
  break;
18695
19461
  }
18696
19462
  default:
@@ -18748,8 +19514,23 @@ function convertSchema(schema, ctx) {
18748
19514
  extraMeta[key] = schema[key];
18749
19515
  }
18750
19516
  }
18751
- if (schema.propertyNames !== undefined && schema.type === "object" && schema.$ref === undefined) {
18752
- extraMeta.propertyNames = schema.propertyNames;
19517
+ if (schema.type === "object" && schema.$ref === undefined) {
19518
+ if (schema.propertyNames !== undefined && !containsRef(schema.propertyNames)) {
19519
+ extraMeta.propertyNames = schema.propertyNames;
19520
+ }
19521
+ for (const key of ["minProperties", "maxProperties"]) {
19522
+ if (schema[key] !== undefined)
19523
+ extraMeta[key] = schema[key];
19524
+ }
19525
+ }
19526
+ if (schema.type === "array" && schema.$ref === undefined) {
19527
+ if (schema.contains !== undefined && !containsRef(schema.contains)) {
19528
+ extraMeta.contains = schema.contains;
19529
+ }
19530
+ for (const key of ["uniqueItems", "minContains", "maxContains"]) {
19531
+ if (schema[key] !== undefined)
19532
+ extraMeta[key] = schema[key];
19533
+ }
18753
19534
  }
18754
19535
  for (const key of Object.keys(schema)) {
18755
19536
  if (!RECOGNIZED_KEYS.has(key)) {
@@ -18786,7 +19567,7 @@ function fromJSONSchema(schema, params) {
18786
19567
  };
18787
19568
  return convertSchema(normalized, ctx);
18788
19569
  }
18789
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/core/visit.js
19570
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/core/visit.js
18790
19571
  var RESOLVING = Symbol("z.visit/resolving");
18791
19572
  function visit(schema, fnOrHandlers) {
18792
19573
  const fn = typeof fnOrHandlers === "function" ? fnOrHandlers : (node2, rewritten) => {
@@ -18938,7 +19719,7 @@ function visit(schema, fnOrHandlers) {
18938
19719
  return run(schema);
18939
19720
  }
18940
19721
 
18941
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/deep-partial.js
19722
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/deep-partial.js
18942
19723
  function deepPartial(schema) {
18943
19724
  return visit(schema, {
18944
19725
  object: (s) => s.partial(),
@@ -18948,7 +19729,7 @@ function deepPartial(schema) {
18948
19729
  }
18949
19730
  });
18950
19731
  }
18951
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/in-out.js
19732
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/in-out.js
18952
19733
  function withChecks(side, checks2) {
18953
19734
  if (!checks2?.length)
18954
19735
  return side;
@@ -18974,7 +19755,7 @@ function output(schema) {
18974
19755
  prefault: (s, rewritten) => rewritten ? s._zod.def.innerType : s
18975
19756
  });
18976
19757
  }
18977
- // ../../../node_modules/.bun/zod@4.5.4/node_modules/zod/v4/classic/coerce.js
19758
+ // ../../../node_modules/.bun/zod@4.6.5/node_modules/zod/v4/classic/coerce.js
18978
19759
  var exports_coerce = {};
18979
19760
  __export(exports_coerce, {
18980
19761
  bigint: () => bigint3,
@@ -19283,8 +20064,8 @@ var openSystemBrowser = async (url2) => {
19283
20064
  url2
19284
20065
  ] : ["xdg-open", url2];
19285
20066
  try {
19286
- const process3 = Bun.spawn(command, { stderr: "ignore", stdout: "ignore" });
19287
- return await process3.exited === 0;
20067
+ const process2 = Bun.spawn(command, { stderr: "ignore", stdout: "ignore" });
20068
+ return await process2.exited === 0;
19288
20069
  } catch {
19289
20070
  return false;
19290
20071
  }
@@ -19332,17 +20113,17 @@ var loginWithBrowser = async ({
19332
20113
  await withCredentialLock(store, () => store.set(credentials));
19333
20114
  return credentials;
19334
20115
  }
19335
- const error61 = deviceTokenErrorSchema.safeParse(payload);
19336
- if (!error61.success) {
20116
+ const error62 = deviceTokenErrorSchema.safeParse(payload);
20117
+ if (!error62.success) {
19337
20118
  throw new Error(`CLI authentication failed with HTTP ${response.status}.`);
19338
20119
  }
19339
- if (error61.data.error === "authorization_pending")
20120
+ if (error62.data.error === "authorization_pending")
19340
20121
  continue;
19341
- if (error61.data.error === "slow_down") {
20122
+ if (error62.data.error === "slow_down") {
19342
20123
  intervalMs += 5000;
19343
20124
  continue;
19344
20125
  }
19345
- if (error61.data.error === "access_denied") {
20126
+ if (error62.data.error === "access_denied") {
19346
20127
  throw new Error("CLI authentication was denied in the browser.");
19347
20128
  }
19348
20129
  throw new Error("CLI authentication expired. Run auth login again.");
@@ -19933,15 +20714,15 @@ Effects: ${effects.join(", ")}
19933
20714
  reader.close();
19934
20715
  }
19935
20716
  };
19936
- var normalizeError = (error61) => {
19937
- if (error61 instanceof CliError)
20717
+ var normalizeError = (error62) => {
20718
+ if (error62 instanceof CliError)
19938
20719
  return {
19939
- code: error61.code,
19940
- message: error61.message,
19941
- ...error61.details ? { details: error61.details } : {}
20720
+ code: error62.code,
20721
+ message: error62.message,
20722
+ ...error62.details ? { details: error62.details } : {}
19942
20723
  };
19943
- if (typeof error61 === "object" && error61 !== null) {
19944
- const record2 = error61;
20724
+ if (typeof error62 === "object" && error62 !== null) {
20725
+ const record2 = error62;
19945
20726
  const codeMap = {
19946
20727
  UNAUTHORIZED: "AUTHENTICATION",
19947
20728
  FORBIDDEN: "AUTHORIZATION",
@@ -19957,7 +20738,7 @@ var normalizeError = (error61) => {
19957
20738
  ...record2.data?.details ? { details: record2.data.details } : {}
19958
20739
  };
19959
20740
  }
19960
- const message = error61 instanceof Error ? error61.message : String(error61);
20741
+ const message = error62 instanceof Error ? error62.message : String(error62);
19961
20742
  return {
19962
20743
  code: /fetch failed|econnrefused|network/i.test(message) ? "NETWORK" : "INTERNAL",
19963
20744
  message
@@ -20008,8 +20789,8 @@ var inputFromFlag = (flags) => {
20008
20789
  if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed))
20009
20790
  throw new Error("--input must be a JSON object.");
20010
20791
  return reviveInputDates(parsed);
20011
- } catch (error61) {
20012
- throw error61 instanceof CliError ? error61 : new CliError("VALIDATION", error61 instanceof Error && error61.message === "--input must be a JSON object." ? error61.message : "--input must be valid JSON object.");
20792
+ } catch (error62) {
20793
+ throw error62 instanceof CliError ? error62 : new CliError("VALIDATION", error62 instanceof Error && error62.message === "--input must be a JSON object." ? error62.message : "--input must be valid JSON object.");
20013
20794
  }
20014
20795
  };
20015
20796
  var collectValuesForKey = (value, targetKey) => {
@@ -20182,8 +20963,8 @@ Waiting for approval\u2026
20182
20963
  }
20183
20964
  });
20184
20965
  return 0;
20185
- } catch (error61) {
20186
- const normalized = error61 instanceof Error && (error61.message.includes("API URL") || error61.message.startsWith("Unknown option") || error61.message.startsWith("Invalid option") || /^--.+ requires a value$/.test(error61.message)) ? { code: "USAGE", message: error61.message } : normalizeError(error61);
20966
+ } catch (error62) {
20967
+ const normalized = error62 instanceof Error && (error62.message.includes("API URL") || error62.message.startsWith("Unknown option") || error62.message.startsWith("Invalid option") || /^--.+ requires a value$/.test(error62.message)) ? { code: "USAGE", message: error62.message } : normalizeError(error62);
20187
20968
  write(io.stderr, {
20188
20969
  ok: false,
20189
20970
  error: sanitize(normalized),