tempo-api-mcp 2.0.2 → 2.1.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.
package/dist/bundle.js CHANGED
@@ -72,12 +72,12 @@ var require_code = __commonJS({
72
72
  return item === "" || item === '""';
73
73
  }
74
74
  get str() {
75
- var _a2;
76
- return (_a2 = this._str) !== null && _a2 !== void 0 ? _a2 : this._str = this._items.reduce((s, c) => `${s}${c}`, "");
75
+ var _a3;
76
+ return (_a3 = this._str) !== null && _a3 !== void 0 ? _a3 : this._str = this._items.reduce((s, c) => `${s}${c}`, "");
77
77
  }
78
78
  get names() {
79
- var _a2;
80
- return (_a2 = this._names) !== null && _a2 !== void 0 ? _a2 : this._names = this._items.reduce((names, c) => {
79
+ var _a3;
80
+ return (_a3 = this._names) !== null && _a3 !== void 0 ? _a3 : this._names = this._items.reduce((names, c) => {
81
81
  if (c instanceof Name)
82
82
  names[c.str] = (names[c.str] || 0) + 1;
83
83
  return names;
@@ -223,8 +223,8 @@ var require_scope = __commonJS({
223
223
  return `${prefix}${ng.index++}`;
224
224
  }
225
225
  _nameGroup(prefix) {
226
- var _a2, _b;
227
- if (((_b = (_a2 = this._parent) === null || _a2 === void 0 ? void 0 : _a2._prefixes) === null || _b === void 0 ? void 0 : _b.has(prefix)) || this._prefixes && !this._prefixes.has(prefix)) {
226
+ var _a3, _b;
227
+ if (((_b = (_a3 = this._parent) === null || _a3 === void 0 ? void 0 : _a3._prefixes) === null || _b === void 0 ? void 0 : _b.has(prefix)) || this._prefixes && !this._prefixes.has(prefix)) {
228
228
  throw new Error(`CodeGen: prefix "${prefix}" is not allowed in this scope`);
229
229
  }
230
230
  return this._names[prefix] = { prefix, index: 0 };
@@ -257,12 +257,12 @@ var require_scope = __commonJS({
257
257
  return new ValueScopeName(prefix, this._newName(prefix));
258
258
  }
259
259
  value(nameOrPrefix, value) {
260
- var _a2;
260
+ var _a3;
261
261
  if (value.ref === void 0)
262
262
  throw new Error("CodeGen: ref must be passed in value");
263
263
  const name = this.toName(nameOrPrefix);
264
264
  const { prefix } = name;
265
- const valueKey = (_a2 = value.key) !== null && _a2 !== void 0 ? _a2 : value.ref;
265
+ const valueKey = (_a3 = value.key) !== null && _a3 !== void 0 ? _a3 : value.ref;
266
266
  let vs = this._values[prefix];
267
267
  if (vs) {
268
268
  const _name = vs.get(valueKey);
@@ -469,9 +469,9 @@ var require_codegen = __commonJS({
469
469
  }
470
470
  };
471
471
  var Throw = class extends Node {
472
- constructor(error48) {
472
+ constructor(error51) {
473
473
  super();
474
- this.error = error48;
474
+ this.error = error51;
475
475
  }
476
476
  render({ _n }) {
477
477
  return `throw ${this.error};` + _n;
@@ -580,8 +580,8 @@ var require_codegen = __commonJS({
580
580
  return this;
581
581
  }
582
582
  optimizeNames(names, constants) {
583
- var _a2;
584
- this.else = (_a2 = this.else) === null || _a2 === void 0 ? void 0 : _a2.optimizeNames(names, constants);
583
+ var _a3;
584
+ this.else = (_a3 = this.else) === null || _a3 === void 0 ? void 0 : _a3.optimizeNames(names, constants);
585
585
  if (!(super.optimizeNames(names, constants) || this.else))
586
586
  return;
587
587
  this.condition = optimizeExpr(this.condition, names, constants);
@@ -685,16 +685,16 @@ var require_codegen = __commonJS({
685
685
  return code;
686
686
  }
687
687
  optimizeNodes() {
688
- var _a2, _b;
688
+ var _a3, _b;
689
689
  super.optimizeNodes();
690
- (_a2 = this.catch) === null || _a2 === void 0 ? void 0 : _a2.optimizeNodes();
690
+ (_a3 = this.catch) === null || _a3 === void 0 ? void 0 : _a3.optimizeNodes();
691
691
  (_b = this.finally) === null || _b === void 0 ? void 0 : _b.optimizeNodes();
692
692
  return this;
693
693
  }
694
694
  optimizeNames(names, constants) {
695
- var _a2, _b;
695
+ var _a3, _b;
696
696
  super.optimizeNames(names, constants);
697
- (_a2 = this.catch) === null || _a2 === void 0 ? void 0 : _a2.optimizeNames(names, constants);
697
+ (_a3 = this.catch) === null || _a3 === void 0 ? void 0 : _a3.optimizeNames(names, constants);
698
698
  (_b = this.finally) === null || _b === void 0 ? void 0 : _b.optimizeNames(names, constants);
699
699
  return this;
700
700
  }
@@ -708,9 +708,9 @@ var require_codegen = __commonJS({
708
708
  }
709
709
  };
710
710
  var Catch = class extends BlockNode {
711
- constructor(error48) {
711
+ constructor(error51) {
712
712
  super();
713
- this.error = error48;
713
+ this.error = error51;
714
714
  }
715
715
  render(opts) {
716
716
  return `catch(${this.error})` + super.render(opts);
@@ -901,9 +901,9 @@ var require_codegen = __commonJS({
901
901
  this._blockNode(node);
902
902
  this.code(tryBody);
903
903
  if (catchCode) {
904
- const error48 = this.name("e");
905
- this._currNode = node.catch = new Catch(error48);
906
- catchCode(error48);
904
+ const error51 = this.name("e");
905
+ this._currNode = node.catch = new Catch(error51);
906
+ catchCode(error51);
907
907
  }
908
908
  if (finallyCode) {
909
909
  this._currNode = node.finally = new Finally();
@@ -912,8 +912,8 @@ var require_codegen = __commonJS({
912
912
  return this._endBlockNode(Catch, Finally);
913
913
  }
914
914
  // `throw` statement
915
- throw(error48) {
916
- return this._leafNode(new Throw(error48));
915
+ throw(error51) {
916
+ return this._leafNode(new Throw(error51));
917
917
  }
918
918
  // start self-balancing block
919
919
  block(body, nodeCount) {
@@ -1269,10 +1269,10 @@ var require_errors = __commonJS({
1269
1269
  exports.keyword$DataError = {
1270
1270
  message: ({ keyword, schemaType }) => schemaType ? (0, codegen_1.str)`"${keyword}" keyword must be ${schemaType} ($data)` : (0, codegen_1.str)`"${keyword}" keyword is invalid ($data)`
1271
1271
  };
1272
- function reportError(cxt, error48 = exports.keywordError, errorPaths, overrideAllErrors) {
1272
+ function reportError(cxt, error51 = exports.keywordError, errorPaths, overrideAllErrors) {
1273
1273
  const { it } = cxt;
1274
1274
  const { gen, compositeRule, allErrors } = it;
1275
- const errObj = errorObjectCode(cxt, error48, errorPaths);
1275
+ const errObj = errorObjectCode(cxt, error51, errorPaths);
1276
1276
  if (overrideAllErrors !== null && overrideAllErrors !== void 0 ? overrideAllErrors : compositeRule || allErrors) {
1277
1277
  addError(gen, errObj);
1278
1278
  } else {
@@ -1280,10 +1280,10 @@ var require_errors = __commonJS({
1280
1280
  }
1281
1281
  }
1282
1282
  exports.reportError = reportError;
1283
- function reportExtraError(cxt, error48 = exports.keywordError, errorPaths) {
1283
+ function reportExtraError(cxt, error51 = exports.keywordError, errorPaths) {
1284
1284
  const { it } = cxt;
1285
1285
  const { gen, compositeRule, allErrors } = it;
1286
- const errObj = errorObjectCode(cxt, error48, errorPaths);
1286
+ const errObj = errorObjectCode(cxt, error51, errorPaths);
1287
1287
  addError(gen, errObj);
1288
1288
  if (!(compositeRule || allErrors)) {
1289
1289
  returnErrors(it, names_1.default.vErrors);
@@ -1334,19 +1334,19 @@ var require_errors = __commonJS({
1334
1334
  schema: new codegen_1.Name("schema"),
1335
1335
  parentSchema: new codegen_1.Name("parentSchema")
1336
1336
  };
1337
- function errorObjectCode(cxt, error48, errorPaths) {
1337
+ function errorObjectCode(cxt, error51, errorPaths) {
1338
1338
  const { createErrors } = cxt.it;
1339
1339
  if (createErrors === false)
1340
1340
  return (0, codegen_1._)`{}`;
1341
- return errorObject(cxt, error48, errorPaths);
1341
+ return errorObject(cxt, error51, errorPaths);
1342
1342
  }
1343
- function errorObject(cxt, error48, errorPaths = {}) {
1343
+ function errorObject(cxt, error51, errorPaths = {}) {
1344
1344
  const { gen, it } = cxt;
1345
1345
  const keyValues = [
1346
1346
  errorInstancePath(it, errorPaths),
1347
1347
  errorSchemaPath(cxt, errorPaths)
1348
1348
  ];
1349
- extraErrorProps(cxt, error48, keyValues);
1349
+ extraErrorProps(cxt, error51, keyValues);
1350
1350
  return gen.object(...keyValues);
1351
1351
  }
1352
1352
  function errorInstancePath({ errorPath }, { instancePath }) {
@@ -1474,8 +1474,8 @@ var require_applicability = __commonJS({
1474
1474
  }
1475
1475
  exports.shouldUseGroup = shouldUseGroup;
1476
1476
  function shouldUseRule(schema, rule) {
1477
- var _a2;
1478
- return schema[rule.keyword] !== void 0 || ((_a2 = rule.definition.implements) === null || _a2 === void 0 ? void 0 : _a2.some((kwd) => schema[kwd] !== void 0));
1477
+ var _a3;
1478
+ return schema[rule.keyword] !== void 0 || ((_a3 = rule.definition.implements) === null || _a3 === void 0 ? void 0 : _a3.some((kwd) => schema[kwd] !== void 0));
1479
1479
  }
1480
1480
  exports.shouldUseRule = shouldUseRule;
1481
1481
  }
@@ -1863,14 +1863,14 @@ var require_keyword = __commonJS({
1863
1863
  }
1864
1864
  exports.macroKeywordCode = macroKeywordCode;
1865
1865
  function funcKeywordCode(cxt, def) {
1866
- var _a2;
1866
+ var _a3;
1867
1867
  const { gen, keyword, schema, parentSchema, $data, it } = cxt;
1868
1868
  checkAsyncKeyword(it, def);
1869
1869
  const validate = !$data && def.compile ? def.compile.call(it.self, schema, parentSchema, it) : def.validate;
1870
1870
  const validateRef = useKeyword(gen, keyword, validate);
1871
1871
  const valid = gen.let("valid");
1872
1872
  cxt.block$data(valid, validateKeyword);
1873
- cxt.ok((_a2 = def.valid) !== null && _a2 !== void 0 ? _a2 : valid);
1873
+ cxt.ok((_a3 = def.valid) !== null && _a3 !== void 0 ? _a3 : valid);
1874
1874
  function validateKeyword() {
1875
1875
  if (def.errors === false) {
1876
1876
  assignValid();
@@ -1901,8 +1901,8 @@ var require_keyword = __commonJS({
1901
1901
  gen.assign(valid, (0, codegen_1._)`${_await}${(0, code_1.callValidateCode)(cxt, validateRef, passCxt, passSchema)}`, def.modifying);
1902
1902
  }
1903
1903
  function reportErrs(errors) {
1904
- var _a3;
1905
- gen.if((0, codegen_1.not)((_a3 = def.valid) !== null && _a3 !== void 0 ? _a3 : valid), errors);
1904
+ var _a4;
1905
+ gen.if((0, codegen_1.not)((_a4 = def.valid) !== null && _a4 !== void 0 ? _a4 : valid), errors);
1906
1906
  }
1907
1907
  }
1908
1908
  exports.funcKeywordCode = funcKeywordCode;
@@ -2870,7 +2870,7 @@ var require_compile = __commonJS({
2870
2870
  var validate_1 = require_validate();
2871
2871
  var SchemaEnv = class {
2872
2872
  constructor(env) {
2873
- var _a2;
2873
+ var _a3;
2874
2874
  this.refs = {};
2875
2875
  this.dynamicAnchors = {};
2876
2876
  let schema;
@@ -2879,7 +2879,7 @@ var require_compile = __commonJS({
2879
2879
  this.schema = env.schema;
2880
2880
  this.schemaId = env.schemaId;
2881
2881
  this.root = env.root || this;
2882
- this.baseId = (_a2 = env.baseId) !== null && _a2 !== void 0 ? _a2 : (0, resolve_1.normalizeId)(schema === null || schema === void 0 ? void 0 : schema[env.schemaId || "$id"]);
2882
+ this.baseId = (_a3 = env.baseId) !== null && _a3 !== void 0 ? _a3 : (0, resolve_1.normalizeId)(schema === null || schema === void 0 ? void 0 : schema[env.schemaId || "$id"]);
2883
2883
  this.schemaPath = env.schemaPath;
2884
2884
  this.localRefs = env.localRefs;
2885
2885
  this.meta = env.meta;
@@ -2975,14 +2975,14 @@ var require_compile = __commonJS({
2975
2975
  }
2976
2976
  exports.compileSchema = compileSchema;
2977
2977
  function resolveRef2(root, baseId, ref) {
2978
- var _a2;
2978
+ var _a3;
2979
2979
  ref = (0, resolve_1.resolveUrl)(this.opts.uriResolver, baseId, ref);
2980
2980
  const schOrFunc = root.refs[ref];
2981
2981
  if (schOrFunc)
2982
2982
  return schOrFunc;
2983
2983
  let _sch = resolve.call(this, root, ref);
2984
2984
  if (_sch === void 0) {
2985
- const schema = (_a2 = root.localRefs) === null || _a2 === void 0 ? void 0 : _a2[ref];
2985
+ const schema = (_a3 = root.localRefs) === null || _a3 === void 0 ? void 0 : _a3[ref];
2986
2986
  const { schemaId } = this.opts;
2987
2987
  if (schema)
2988
2988
  _sch = new SchemaEnv({ schema, schemaId, root, baseId });
@@ -3051,8 +3051,8 @@ var require_compile = __commonJS({
3051
3051
  "definitions"
3052
3052
  ]);
3053
3053
  function getJsonPointer(parsedRef, { baseId, schema, root }) {
3054
- var _a2;
3055
- if (((_a2 = parsedRef.fragment) === null || _a2 === void 0 ? void 0 : _a2[0]) !== "/")
3054
+ var _a3;
3055
+ if (((_a3 = parsedRef.fragment) === null || _a3 === void 0 ? void 0 : _a3[0]) !== "/")
3056
3056
  return;
3057
3057
  for (const part of parsedRef.fragment.slice(1).split("/")) {
3058
3058
  if (typeof schema === "boolean")
@@ -3913,9 +3913,9 @@ var require_core = __commonJS({
3913
3913
  };
3914
3914
  var MAX_EXPRESSION = 200;
3915
3915
  function requiredOptions(o) {
3916
- var _a2, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0;
3916
+ var _a3, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0;
3917
3917
  const s = o.strict;
3918
- const _optz = (_a2 = o.code) === null || _a2 === void 0 ? void 0 : _a2.optimize;
3918
+ const _optz = (_a3 = o.code) === null || _a3 === void 0 ? void 0 : _a3.optimize;
3919
3919
  const optimize = _optz === true || _optz === void 0 ? 1 : _optz || 0;
3920
3920
  const regExp = (_c = (_b = o.code) === null || _b === void 0 ? void 0 : _b.regExp) !== null && _c !== void 0 ? _c : defaultRegExp;
3921
3921
  const uriResolver = (_d = o.uriResolver) !== null && _d !== void 0 ? _d : uri_1.default;
@@ -4389,7 +4389,7 @@ var require_core = __commonJS({
4389
4389
  }
4390
4390
  }
4391
4391
  function addRule(keyword, definition, dataType) {
4392
- var _a2;
4392
+ var _a3;
4393
4393
  const post = definition === null || definition === void 0 ? void 0 : definition.post;
4394
4394
  if (dataType && post)
4395
4395
  throw new Error('keyword with "post" flag cannot have "type"');
@@ -4415,7 +4415,7 @@ var require_core = __commonJS({
4415
4415
  else
4416
4416
  ruleGroup.rules.push(rule);
4417
4417
  RULES.all[keyword] = rule;
4418
- (_a2 = definition.implements) === null || _a2 === void 0 ? void 0 : _a2.forEach((kwd) => this.addKeyword(kwd));
4418
+ (_a3 = definition.implements) === null || _a3 === void 0 ? void 0 : _a3.forEach((kwd) => this.addKeyword(kwd));
4419
4419
  }
4420
4420
  function addBeforeRule(ruleGroup, rule, before) {
4421
4421
  const i = ruleGroup.rules.findIndex((_rule) => _rule.keyword === before);
@@ -4549,10 +4549,10 @@ var require_ref = __commonJS({
4549
4549
  gen.assign(names_1.default.errors, (0, codegen_1._)`${names_1.default.vErrors}.length`);
4550
4550
  }
4551
4551
  function addEvaluatedFrom(source) {
4552
- var _a2;
4552
+ var _a3;
4553
4553
  if (!it.opts.unevaluated)
4554
4554
  return;
4555
- const schEvaluated = (_a2 = sch === null || sch === void 0 ? void 0 : sch.validate) === null || _a2 === void 0 ? void 0 : _a2.evaluated;
4555
+ const schEvaluated = (_a3 = sch === null || sch === void 0 ? void 0 : sch.validate) === null || _a3 === void 0 ? void 0 : _a3.evaluated;
4556
4556
  if (it.props !== true) {
4557
4557
  if (schEvaluated && !schEvaluated.dynamicProps) {
4558
4558
  if (schEvaluated.props !== void 0) {
@@ -4614,7 +4614,7 @@ var require_limitNumber = __commonJS({
4614
4614
  exclusiveMaximum: { okStr: "<", ok: ops.LT, fail: ops.GTE },
4615
4615
  exclusiveMinimum: { okStr: ">", ok: ops.GT, fail: ops.LTE }
4616
4616
  };
4617
- var error48 = {
4617
+ var error51 = {
4618
4618
  message: ({ keyword, schemaCode }) => (0, codegen_1.str)`must be ${KWDs[keyword].okStr} ${schemaCode}`,
4619
4619
  params: ({ keyword, schemaCode }) => (0, codegen_1._)`{comparison: ${KWDs[keyword].okStr}, limit: ${schemaCode}}`
4620
4620
  };
@@ -4623,7 +4623,7 @@ var require_limitNumber = __commonJS({
4623
4623
  type: "number",
4624
4624
  schemaType: "number",
4625
4625
  $data: true,
4626
- error: error48,
4626
+ error: error51,
4627
4627
  code(cxt) {
4628
4628
  const { keyword, data, schemaCode } = cxt;
4629
4629
  cxt.fail$data((0, codegen_1._)`${data} ${KWDs[keyword].fail} ${schemaCode} || isNaN(${data})`);
@@ -4639,7 +4639,7 @@ var require_multipleOf = __commonJS({
4639
4639
  "use strict";
4640
4640
  Object.defineProperty(exports, "__esModule", { value: true });
4641
4641
  var codegen_1 = require_codegen();
4642
- var error48 = {
4642
+ var error51 = {
4643
4643
  message: ({ schemaCode }) => (0, codegen_1.str)`must be multiple of ${schemaCode}`,
4644
4644
  params: ({ schemaCode }) => (0, codegen_1._)`{multipleOf: ${schemaCode}}`
4645
4645
  };
@@ -4648,7 +4648,7 @@ var require_multipleOf = __commonJS({
4648
4648
  type: "number",
4649
4649
  schemaType: "number",
4650
4650
  $data: true,
4651
- error: error48,
4651
+ error: error51,
4652
4652
  code(cxt) {
4653
4653
  const { gen, data, schemaCode, it } = cxt;
4654
4654
  const prec = it.opts.multipleOfPrecision;
@@ -4695,7 +4695,7 @@ var require_limitLength = __commonJS({
4695
4695
  var codegen_1 = require_codegen();
4696
4696
  var util_1 = require_util();
4697
4697
  var ucs2length_1 = require_ucs2length();
4698
- var error48 = {
4698
+ var error51 = {
4699
4699
  message({ keyword, schemaCode }) {
4700
4700
  const comp = keyword === "maxLength" ? "more" : "fewer";
4701
4701
  return (0, codegen_1.str)`must NOT have ${comp} than ${schemaCode} characters`;
@@ -4707,7 +4707,7 @@ var require_limitLength = __commonJS({
4707
4707
  type: "string",
4708
4708
  schemaType: "number",
4709
4709
  $data: true,
4710
- error: error48,
4710
+ error: error51,
4711
4711
  code(cxt) {
4712
4712
  const { keyword, data, schemaCode, it } = cxt;
4713
4713
  const op = keyword === "maxLength" ? codegen_1.operators.GT : codegen_1.operators.LT;
@@ -4727,7 +4727,7 @@ var require_pattern = __commonJS({
4727
4727
  var code_1 = require_code2();
4728
4728
  var util_1 = require_util();
4729
4729
  var codegen_1 = require_codegen();
4730
- var error48 = {
4730
+ var error51 = {
4731
4731
  message: ({ schemaCode }) => (0, codegen_1.str)`must match pattern "${schemaCode}"`,
4732
4732
  params: ({ schemaCode }) => (0, codegen_1._)`{pattern: ${schemaCode}}`
4733
4733
  };
@@ -4736,7 +4736,7 @@ var require_pattern = __commonJS({
4736
4736
  type: "string",
4737
4737
  schemaType: "string",
4738
4738
  $data: true,
4739
- error: error48,
4739
+ error: error51,
4740
4740
  code(cxt) {
4741
4741
  const { gen, data, $data, schema, schemaCode, it } = cxt;
4742
4742
  const u = it.opts.unicodeRegExp ? "u" : "";
@@ -4762,7 +4762,7 @@ var require_limitProperties = __commonJS({
4762
4762
  "use strict";
4763
4763
  Object.defineProperty(exports, "__esModule", { value: true });
4764
4764
  var codegen_1 = require_codegen();
4765
- var error48 = {
4765
+ var error51 = {
4766
4766
  message({ keyword, schemaCode }) {
4767
4767
  const comp = keyword === "maxProperties" ? "more" : "fewer";
4768
4768
  return (0, codegen_1.str)`must NOT have ${comp} than ${schemaCode} properties`;
@@ -4774,7 +4774,7 @@ var require_limitProperties = __commonJS({
4774
4774
  type: "object",
4775
4775
  schemaType: "number",
4776
4776
  $data: true,
4777
- error: error48,
4777
+ error: error51,
4778
4778
  code(cxt) {
4779
4779
  const { keyword, data, schemaCode } = cxt;
4780
4780
  const op = keyword === "maxProperties" ? codegen_1.operators.GT : codegen_1.operators.LT;
@@ -4793,7 +4793,7 @@ var require_required = __commonJS({
4793
4793
  var code_1 = require_code2();
4794
4794
  var codegen_1 = require_codegen();
4795
4795
  var util_1 = require_util();
4796
- var error48 = {
4796
+ var error51 = {
4797
4797
  message: ({ params: { missingProperty } }) => (0, codegen_1.str)`must have required property '${missingProperty}'`,
4798
4798
  params: ({ params: { missingProperty } }) => (0, codegen_1._)`{missingProperty: ${missingProperty}}`
4799
4799
  };
@@ -4802,7 +4802,7 @@ var require_required = __commonJS({
4802
4802
  type: "object",
4803
4803
  schemaType: "array",
4804
4804
  $data: true,
4805
- error: error48,
4805
+ error: error51,
4806
4806
  code(cxt) {
4807
4807
  const { gen, schema, schemaCode, data, $data, it } = cxt;
4808
4808
  const { opts } = it;
@@ -4873,7 +4873,7 @@ var require_limitItems = __commonJS({
4873
4873
  "use strict";
4874
4874
  Object.defineProperty(exports, "__esModule", { value: true });
4875
4875
  var codegen_1 = require_codegen();
4876
- var error48 = {
4876
+ var error51 = {
4877
4877
  message({ keyword, schemaCode }) {
4878
4878
  const comp = keyword === "maxItems" ? "more" : "fewer";
4879
4879
  return (0, codegen_1.str)`must NOT have ${comp} than ${schemaCode} items`;
@@ -4885,7 +4885,7 @@ var require_limitItems = __commonJS({
4885
4885
  type: "array",
4886
4886
  schemaType: "number",
4887
4887
  $data: true,
4888
- error: error48,
4888
+ error: error51,
4889
4889
  code(cxt) {
4890
4890
  const { keyword, data, schemaCode } = cxt;
4891
4891
  const op = keyword === "maxItems" ? codegen_1.operators.GT : codegen_1.operators.LT;
@@ -4916,7 +4916,7 @@ var require_uniqueItems = __commonJS({
4916
4916
  var codegen_1 = require_codegen();
4917
4917
  var util_1 = require_util();
4918
4918
  var equal_1 = require_equal();
4919
- var error48 = {
4919
+ var error51 = {
4920
4920
  message: ({ params: { i, j } }) => (0, codegen_1.str)`must NOT have duplicate items (items ## ${j} and ${i} are identical)`,
4921
4921
  params: ({ params: { i, j } }) => (0, codegen_1._)`{i: ${i}, j: ${j}}`
4922
4922
  };
@@ -4925,7 +4925,7 @@ var require_uniqueItems = __commonJS({
4925
4925
  type: "array",
4926
4926
  schemaType: "boolean",
4927
4927
  $data: true,
4928
- error: error48,
4928
+ error: error51,
4929
4929
  code(cxt) {
4930
4930
  const { gen, data, $data, schema, parentSchema, schemaCode, it } = cxt;
4931
4931
  if (!$data && !schema)
@@ -4982,14 +4982,14 @@ var require_const = __commonJS({
4982
4982
  var codegen_1 = require_codegen();
4983
4983
  var util_1 = require_util();
4984
4984
  var equal_1 = require_equal();
4985
- var error48 = {
4985
+ var error51 = {
4986
4986
  message: "must be equal to constant",
4987
4987
  params: ({ schemaCode }) => (0, codegen_1._)`{allowedValue: ${schemaCode}}`
4988
4988
  };
4989
4989
  var def = {
4990
4990
  keyword: "const",
4991
4991
  $data: true,
4992
- error: error48,
4992
+ error: error51,
4993
4993
  code(cxt) {
4994
4994
  const { gen, data, $data, schemaCode, schema } = cxt;
4995
4995
  if ($data || schema && typeof schema == "object") {
@@ -5011,7 +5011,7 @@ var require_enum = __commonJS({
5011
5011
  var codegen_1 = require_codegen();
5012
5012
  var util_1 = require_util();
5013
5013
  var equal_1 = require_equal();
5014
- var error48 = {
5014
+ var error51 = {
5015
5015
  message: "must be equal to one of the allowed values",
5016
5016
  params: ({ schemaCode }) => (0, codegen_1._)`{allowedValues: ${schemaCode}}`
5017
5017
  };
@@ -5019,7 +5019,7 @@ var require_enum = __commonJS({
5019
5019
  keyword: "enum",
5020
5020
  schemaType: "array",
5021
5021
  $data: true,
5022
- error: error48,
5022
+ error: error51,
5023
5023
  code(cxt) {
5024
5024
  const { gen, data, $data, schema, schemaCode, it } = cxt;
5025
5025
  if (!$data && schema.length === 0)
@@ -5098,7 +5098,7 @@ var require_additionalItems = __commonJS({
5098
5098
  exports.validateAdditionalItems = void 0;
5099
5099
  var codegen_1 = require_codegen();
5100
5100
  var util_1 = require_util();
5101
- var error48 = {
5101
+ var error51 = {
5102
5102
  message: ({ params: { len } }) => (0, codegen_1.str)`must NOT have more than ${len} items`,
5103
5103
  params: ({ params: { len } }) => (0, codegen_1._)`{limit: ${len}}`
5104
5104
  };
@@ -5107,7 +5107,7 @@ var require_additionalItems = __commonJS({
5107
5107
  type: "array",
5108
5108
  schemaType: ["boolean", "object"],
5109
5109
  before: "uniqueItems",
5110
- error: error48,
5110
+ error: error51,
5111
5111
  code(cxt) {
5112
5112
  const { parentSchema, it } = cxt;
5113
5113
  const { items } = parentSchema;
@@ -5226,7 +5226,7 @@ var require_items2020 = __commonJS({
5226
5226
  var util_1 = require_util();
5227
5227
  var code_1 = require_code2();
5228
5228
  var additionalItems_1 = require_additionalItems();
5229
- var error48 = {
5229
+ var error51 = {
5230
5230
  message: ({ params: { len } }) => (0, codegen_1.str)`must NOT have more than ${len} items`,
5231
5231
  params: ({ params: { len } }) => (0, codegen_1._)`{limit: ${len}}`
5232
5232
  };
@@ -5235,7 +5235,7 @@ var require_items2020 = __commonJS({
5235
5235
  type: "array",
5236
5236
  schemaType: ["object", "boolean"],
5237
5237
  before: "uniqueItems",
5238
- error: error48,
5238
+ error: error51,
5239
5239
  code(cxt) {
5240
5240
  const { schema, parentSchema, it } = cxt;
5241
5241
  const { prefixItems } = parentSchema;
@@ -5259,7 +5259,7 @@ var require_contains = __commonJS({
5259
5259
  Object.defineProperty(exports, "__esModule", { value: true });
5260
5260
  var codegen_1 = require_codegen();
5261
5261
  var util_1 = require_util();
5262
- var error48 = {
5262
+ var error51 = {
5263
5263
  message: ({ params: { min, max } }) => max === void 0 ? (0, codegen_1.str)`must contain at least ${min} valid item(s)` : (0, codegen_1.str)`must contain at least ${min} and no more than ${max} valid item(s)`,
5264
5264
  params: ({ params: { min, max } }) => max === void 0 ? (0, codegen_1._)`{minContains: ${min}}` : (0, codegen_1._)`{minContains: ${min}, maxContains: ${max}}`
5265
5265
  };
@@ -5269,7 +5269,7 @@ var require_contains = __commonJS({
5269
5269
  schemaType: ["object", "boolean"],
5270
5270
  before: "uniqueItems",
5271
5271
  trackErrors: true,
5272
- error: error48,
5272
+ error: error51,
5273
5273
  code(cxt) {
5274
5274
  const { gen, schema, parentSchema, data, it } = cxt;
5275
5275
  let min;
@@ -5447,7 +5447,7 @@ var require_propertyNames = __commonJS({
5447
5447
  Object.defineProperty(exports, "__esModule", { value: true });
5448
5448
  var codegen_1 = require_codegen();
5449
5449
  var util_1 = require_util();
5450
- var error48 = {
5450
+ var error51 = {
5451
5451
  message: "property name must be valid",
5452
5452
  params: ({ params }) => (0, codegen_1._)`{propertyName: ${params.propertyName}}`
5453
5453
  };
@@ -5455,7 +5455,7 @@ var require_propertyNames = __commonJS({
5455
5455
  keyword: "propertyNames",
5456
5456
  type: "object",
5457
5457
  schemaType: ["object", "boolean"],
5458
- error: error48,
5458
+ error: error51,
5459
5459
  code(cxt) {
5460
5460
  const { gen, schema, data, it } = cxt;
5461
5461
  if ((0, util_1.alwaysValidSchema)(it, schema))
@@ -5492,7 +5492,7 @@ var require_additionalProperties = __commonJS({
5492
5492
  var codegen_1 = require_codegen();
5493
5493
  var names_1 = require_names();
5494
5494
  var util_1 = require_util();
5495
- var error48 = {
5495
+ var error51 = {
5496
5496
  message: "must NOT have additional properties",
5497
5497
  params: ({ params }) => (0, codegen_1._)`{additionalProperty: ${params.additionalProperty}}`
5498
5498
  };
@@ -5502,7 +5502,7 @@ var require_additionalProperties = __commonJS({
5502
5502
  schemaType: ["boolean", "object"],
5503
5503
  allowUndefined: true,
5504
5504
  trackErrors: true,
5505
- error: error48,
5505
+ error: error51,
5506
5506
  code(cxt) {
5507
5507
  const { gen, schema, parentSchema, data, errsCount, it } = cxt;
5508
5508
  if (!errsCount)
@@ -5776,7 +5776,7 @@ var require_oneOf = __commonJS({
5776
5776
  Object.defineProperty(exports, "__esModule", { value: true });
5777
5777
  var codegen_1 = require_codegen();
5778
5778
  var util_1 = require_util();
5779
- var error48 = {
5779
+ var error51 = {
5780
5780
  message: "must match exactly one schema in oneOf",
5781
5781
  params: ({ params }) => (0, codegen_1._)`{passingSchemas: ${params.passing}}`
5782
5782
  };
@@ -5784,7 +5784,7 @@ var require_oneOf = __commonJS({
5784
5784
  keyword: "oneOf",
5785
5785
  schemaType: "array",
5786
5786
  trackErrors: true,
5787
- error: error48,
5787
+ error: error51,
5788
5788
  code(cxt) {
5789
5789
  const { gen, schema, parentSchema, it } = cxt;
5790
5790
  if (!Array.isArray(schema))
@@ -5861,7 +5861,7 @@ var require_if = __commonJS({
5861
5861
  Object.defineProperty(exports, "__esModule", { value: true });
5862
5862
  var codegen_1 = require_codegen();
5863
5863
  var util_1 = require_util();
5864
- var error48 = {
5864
+ var error51 = {
5865
5865
  message: ({ params }) => (0, codegen_1.str)`must match "${params.ifClause}" schema`,
5866
5866
  params: ({ params }) => (0, codegen_1._)`{failingKeyword: ${params.ifClause}}`
5867
5867
  };
@@ -5869,7 +5869,7 @@ var require_if = __commonJS({
5869
5869
  keyword: "if",
5870
5870
  schemaType: ["object", "boolean"],
5871
5871
  trackErrors: true,
5872
- error: error48,
5872
+ error: error51,
5873
5873
  code(cxt) {
5874
5874
  const { gen, parentSchema, it } = cxt;
5875
5875
  if (parentSchema.then === void 0 && parentSchema.else === void 0) {
@@ -5995,7 +5995,7 @@ var require_format = __commonJS({
5995
5995
  "use strict";
5996
5996
  Object.defineProperty(exports, "__esModule", { value: true });
5997
5997
  var codegen_1 = require_codegen();
5998
- var error48 = {
5998
+ var error51 = {
5999
5999
  message: ({ schemaCode }) => (0, codegen_1.str)`must match format "${schemaCode}"`,
6000
6000
  params: ({ schemaCode }) => (0, codegen_1._)`{format: ${schemaCode}}`
6001
6001
  };
@@ -6004,7 +6004,7 @@ var require_format = __commonJS({
6004
6004
  type: ["number", "string"],
6005
6005
  schemaType: "string",
6006
6006
  $data: true,
6007
- error: error48,
6007
+ error: error51,
6008
6008
  code(cxt, ruleType) {
6009
6009
  const { gen, data, $data, schema, schemaCode, it } = cxt;
6010
6010
  const { opts, errSchemaPath, schemaEnv, self } = it;
@@ -6159,7 +6159,7 @@ var require_discriminator = __commonJS({
6159
6159
  var compile_1 = require_compile();
6160
6160
  var ref_error_1 = require_ref_error();
6161
6161
  var util_1 = require_util();
6162
- var error48 = {
6162
+ var error51 = {
6163
6163
  message: ({ params: { discrError, tagName } }) => discrError === types_1.DiscrError.Tag ? `tag "${tagName}" must be string` : `value of tag "${tagName}" must be in oneOf`,
6164
6164
  params: ({ params: { discrError, tag, tagName } }) => (0, codegen_1._)`{error: ${discrError}, tag: ${tagName}, tagValue: ${tag}}`
6165
6165
  };
@@ -6167,7 +6167,7 @@ var require_discriminator = __commonJS({
6167
6167
  keyword: "discriminator",
6168
6168
  type: "object",
6169
6169
  schemaType: "object",
6170
- error: error48,
6170
+ error: error51,
6171
6171
  code(cxt) {
6172
6172
  const { gen, data, schema, parentSchema, it } = cxt;
6173
6173
  const { oneOf } = parentSchema;
@@ -6203,7 +6203,7 @@ var require_discriminator = __commonJS({
6203
6203
  return _valid;
6204
6204
  }
6205
6205
  function getMapping() {
6206
- var _a2;
6206
+ var _a3;
6207
6207
  const oneOfMapping = {};
6208
6208
  const topRequired = hasRequired(parentSchema);
6209
6209
  let tagRequired = true;
@@ -6217,7 +6217,7 @@ var require_discriminator = __commonJS({
6217
6217
  if (sch === void 0)
6218
6218
  throw new ref_error_1.default(it.opts.uriResolver, it.baseId, ref);
6219
6219
  }
6220
- const propSch = (_a2 = sch === null || sch === void 0 ? void 0 : sch.properties) === null || _a2 === void 0 ? void 0 : _a2[tagName];
6220
+ const propSch = (_a3 = sch === null || sch === void 0 ? void 0 : sch.properties) === null || _a3 === void 0 ? void 0 : _a3[tagName];
6221
6221
  if (typeof propSch != "object") {
6222
6222
  throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${tagName}"`);
6223
6223
  }
@@ -6699,7 +6699,7 @@ var require_limit = __commonJS({
6699
6699
  formatExclusiveMaximum: { okStr: "<", ok: ops.LT, fail: ops.GTE },
6700
6700
  formatExclusiveMinimum: { okStr: ">", ok: ops.GT, fail: ops.LTE }
6701
6701
  };
6702
- var error48 = {
6702
+ var error51 = {
6703
6703
  message: ({ keyword, schemaCode }) => (0, codegen_1.str)`should be ${KWDs[keyword].okStr} ${schemaCode}`,
6704
6704
  params: ({ keyword, schemaCode }) => (0, codegen_1._)`{comparison: ${KWDs[keyword].okStr}, limit: ${schemaCode}}`
6705
6705
  };
@@ -6708,7 +6708,7 @@ var require_limit = __commonJS({
6708
6708
  type: "string",
6709
6709
  schemaType: "string",
6710
6710
  $data: true,
6711
- error: error48,
6711
+ error: error51,
6712
6712
  code(cxt) {
6713
6713
  const { gen, data, schemaCode, keyword, it } = cxt;
6714
6714
  const { opts, self } = it;
@@ -6786,9 +6786,9 @@ var require_dist = __commonJS({
6786
6786
  return f;
6787
6787
  };
6788
6788
  function addFormats(ajv, list, fs, exportName) {
6789
- var _a2;
6789
+ var _a3;
6790
6790
  var _b;
6791
- (_a2 = (_b = ajv.opts.code).formats) !== null && _a2 !== void 0 ? _a2 : _b.formats = (0, codegen_1._)`require("ajv-formats/dist/formats").${exportName}`;
6791
+ (_a3 = (_b = ajv.opts.code).formats) !== null && _a3 !== void 0 ? _a3 : _b.formats = (0, codegen_1._)`require("ajv-formats/dist/formats").${exportName}`;
6792
6792
  for (const f of list)
6793
6793
  ajv.addFormat(f, fs[f]);
6794
6794
  }
@@ -6978,8 +6978,8 @@ var ZodError = class _ZodError extends Error {
6978
6978
  return issue2.message;
6979
6979
  };
6980
6980
  const fieldErrors = { _errors: [] };
6981
- const processError = (error48) => {
6982
- for (const issue2 of error48.issues) {
6981
+ const processError = (error51) => {
6982
+ for (const issue2 of error51.issues) {
6983
6983
  if (issue2.code === "invalid_union") {
6984
6984
  issue2.unionErrors.map(processError);
6985
6985
  } else if (issue2.code === "invalid_return_type") {
@@ -7042,8 +7042,8 @@ var ZodError = class _ZodError extends Error {
7042
7042
  }
7043
7043
  };
7044
7044
  ZodError.create = (issues) => {
7045
- const error48 = new ZodError(issues);
7046
- return error48;
7045
+ const error51 = new ZodError(issues);
7046
+ return error51;
7047
7047
  };
7048
7048
 
7049
7049
  // node_modules/zod/v3/locales/en.js
@@ -7303,8 +7303,8 @@ var handleResult = (ctx, result) => {
7303
7303
  get error() {
7304
7304
  if (this._error)
7305
7305
  return this._error;
7306
- const error48 = new ZodError(ctx.common.issues);
7307
- this._error = error48;
7306
+ const error51 = new ZodError(ctx.common.issues);
7307
+ this._error = error51;
7308
7308
  return this._error;
7309
7309
  }
7310
7310
  };
@@ -9959,25 +9959,25 @@ var ZodFunction = class _ZodFunction extends ZodType {
9959
9959
  });
9960
9960
  return INVALID;
9961
9961
  }
9962
- function makeArgsIssue(args, error48) {
9962
+ function makeArgsIssue(args, error51) {
9963
9963
  return makeIssue({
9964
9964
  data: args,
9965
9965
  path: ctx.path,
9966
9966
  errorMaps: [ctx.common.contextualErrorMap, ctx.schemaErrorMap, getErrorMap(), en_default].filter((x) => !!x),
9967
9967
  issueData: {
9968
9968
  code: ZodIssueCode.invalid_arguments,
9969
- argumentsError: error48
9969
+ argumentsError: error51
9970
9970
  }
9971
9971
  });
9972
9972
  }
9973
- function makeReturnsIssue(returns, error48) {
9973
+ function makeReturnsIssue(returns, error51) {
9974
9974
  return makeIssue({
9975
9975
  data: returns,
9976
9976
  path: ctx.path,
9977
9977
  errorMaps: [ctx.common.contextualErrorMap, ctx.schemaErrorMap, getErrorMap(), en_default].filter((x) => !!x),
9978
9978
  issueData: {
9979
9979
  code: ZodIssueCode.invalid_return_type,
9980
- returnTypeError: error48
9980
+ returnTypeError: error51
9981
9981
  }
9982
9982
  });
9983
9983
  }
@@ -9986,15 +9986,15 @@ var ZodFunction = class _ZodFunction extends ZodType {
9986
9986
  if (this._def.returns instanceof ZodPromise) {
9987
9987
  const me = this;
9988
9988
  return OK(async function(...args) {
9989
- const error48 = new ZodError([]);
9989
+ const error51 = new ZodError([]);
9990
9990
  const parsedArgs = await me._def.args.parseAsync(args, params).catch((e) => {
9991
- error48.addIssue(makeArgsIssue(args, e));
9992
- throw error48;
9991
+ error51.addIssue(makeArgsIssue(args, e));
9992
+ throw error51;
9993
9993
  });
9994
9994
  const result = await Reflect.apply(fn, this, parsedArgs);
9995
9995
  const parsedReturns = await me._def.returns._def.type.parseAsync(result, params).catch((e) => {
9996
- error48.addIssue(makeReturnsIssue(result, e));
9997
- throw error48;
9996
+ error51.addIssue(makeReturnsIssue(result, e));
9997
+ throw error51;
9998
9998
  });
9999
9999
  return parsedReturns;
10000
10000
  });
@@ -10754,6 +10754,7 @@ __export(core_exports2, {
10754
10754
  $ZodOptional: () => $ZodOptional,
10755
10755
  $ZodPipe: () => $ZodPipe,
10756
10756
  $ZodPrefault: () => $ZodPrefault,
10757
+ $ZodPreprocess: () => $ZodPreprocess,
10757
10758
  $ZodPromise: () => $ZodPromise,
10758
10759
  $ZodReadonly: () => $ZodReadonly,
10759
10760
  $ZodRealError: () => $ZodRealError,
@@ -10953,7 +10954,8 @@ __export(core_exports2, {
10953
10954
  });
10954
10955
 
10955
10956
  // node_modules/zod/v4/core/core.js
10956
- var NEVER = Object.freeze({
10957
+ var _a;
10958
+ var NEVER = /* @__PURE__ */ Object.freeze({
10957
10959
  status: "aborted"
10958
10960
  });
10959
10961
  // @__NO_SIDE_EFFECTS__
@@ -10988,10 +10990,10 @@ function $constructor(name, initializer3, params) {
10988
10990
  }
10989
10991
  Object.defineProperty(Definition, "name", { value: name });
10990
10992
  function _(def) {
10991
- var _a2;
10993
+ var _a3;
10992
10994
  const inst = params?.Parent ? new Definition() : this;
10993
10995
  init(inst, def);
10994
- (_a2 = inst._zod).deferred ?? (_a2.deferred = []);
10996
+ (_a3 = inst._zod).deferred ?? (_a3.deferred = []);
10995
10997
  for (const fn of inst._zod.deferred) {
10996
10998
  fn();
10997
10999
  }
@@ -11020,7 +11022,8 @@ var $ZodEncodeError = class extends Error {
11020
11022
  this.name = "ZodEncodeError";
11021
11023
  }
11022
11024
  };
11023
- var globalConfig = {};
11025
+ (_a = globalThis).__zod_globalConfig ?? (_a.__zod_globalConfig = {});
11026
+ var globalConfig = globalThis.__zod_globalConfig;
11024
11027
  function config(newConfig) {
11025
11028
  if (newConfig)
11026
11029
  Object.assign(globalConfig, newConfig);
@@ -11053,6 +11056,7 @@ __export(util_exports, {
11053
11056
  defineLazy: () => defineLazy,
11054
11057
  esc: () => esc,
11055
11058
  escapeRegex: () => escapeRegex,
11059
+ explicitlyAborted: () => explicitlyAborted,
11056
11060
  extend: () => extend,
11057
11061
  finalizeIssue: () => finalizeIssue,
11058
11062
  floatSafeRemainder: () => floatSafeRemainder2,
@@ -11141,19 +11145,12 @@ function cleanRegex(source) {
11141
11145
  return source.slice(start, end);
11142
11146
  }
11143
11147
  function floatSafeRemainder2(val, step) {
11144
- const valDecCount = (val.toString().split(".")[1] || "").length;
11145
- const stepString = step.toString();
11146
- let stepDecCount = (stepString.split(".")[1] || "").length;
11147
- if (stepDecCount === 0 && /\d?e-\d?/.test(stepString)) {
11148
- const match = stepString.match(/\d?e-(\d?)/);
11149
- if (match?.[1]) {
11150
- stepDecCount = Number.parseInt(match[1]);
11151
- }
11152
- }
11153
- const decCount = valDecCount > stepDecCount ? valDecCount : stepDecCount;
11154
- const valInt = Number.parseInt(val.toFixed(decCount).replace(".", ""));
11155
- const stepInt = Number.parseInt(step.toFixed(decCount).replace(".", ""));
11156
- return valInt % stepInt / 10 ** decCount;
11148
+ const ratio = val / step;
11149
+ const roundedRatio = Math.round(ratio);
11150
+ const tolerance = Number.EPSILON * Math.max(Math.abs(ratio), 1);
11151
+ if (Math.abs(ratio - roundedRatio) < tolerance)
11152
+ return 0;
11153
+ return ratio - roundedRatio;
11157
11154
  }
11158
11155
  var EVALUATING = /* @__PURE__ */ Symbol("evaluating");
11159
11156
  function defineLazy(object3, key, getter) {
@@ -11235,7 +11232,10 @@ var captureStackTrace = "captureStackTrace" in Error ? Error.captureStackTrace :
11235
11232
  function isObject(data) {
11236
11233
  return typeof data === "object" && data !== null && !Array.isArray(data);
11237
11234
  }
11238
- var allowsEval = cached(() => {
11235
+ var allowsEval = /* @__PURE__ */ cached(() => {
11236
+ if (globalConfig.jitless) {
11237
+ return false;
11238
+ }
11239
11239
  if (typeof navigator !== "undefined" && navigator?.userAgent?.includes("Cloudflare")) {
11240
11240
  return false;
11241
11241
  }
@@ -11268,6 +11268,10 @@ function shallowClone(o) {
11268
11268
  return { ...o };
11269
11269
  if (Array.isArray(o))
11270
11270
  return [...o];
11271
+ if (o instanceof Map)
11272
+ return new Map(o);
11273
+ if (o instanceof Set)
11274
+ return new Set(o);
11271
11275
  return o;
11272
11276
  }
11273
11277
  function numKeys(data) {
@@ -11324,7 +11328,14 @@ var getParsedType2 = (data) => {
11324
11328
  }
11325
11329
  };
11326
11330
  var propertyKeyTypes = /* @__PURE__ */ new Set(["string", "number", "symbol"]);
11327
- var primitiveTypes = /* @__PURE__ */ new Set(["string", "number", "bigint", "boolean", "symbol", "undefined"]);
11331
+ var primitiveTypes = /* @__PURE__ */ new Set([
11332
+ "string",
11333
+ "number",
11334
+ "bigint",
11335
+ "boolean",
11336
+ "symbol",
11337
+ "undefined"
11338
+ ]);
11328
11339
  function escapeRegex(str) {
11329
11340
  return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
11330
11341
  }
@@ -11493,6 +11504,9 @@ function safeExtend(schema, shape) {
11493
11504
  return clone(schema, def);
11494
11505
  }
11495
11506
  function merge(a, b) {
11507
+ if (a._zod.def.checks?.length) {
11508
+ throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");
11509
+ }
11496
11510
  const def = mergeDefs(a._zod.def, {
11497
11511
  get shape() {
11498
11512
  const _shape = { ...a._zod.def.shape, ...b._zod.def.shape };
@@ -11502,8 +11516,7 @@ function merge(a, b) {
11502
11516
  get catchall() {
11503
11517
  return b._zod.def.catchall;
11504
11518
  },
11505
- checks: []
11506
- // delete existing checks
11519
+ checks: b._zod.def.checks ?? []
11507
11520
  });
11508
11521
  return clone(a, def);
11509
11522
  }
@@ -11586,10 +11599,20 @@ function aborted(x, startIndex = 0) {
11586
11599
  }
11587
11600
  return false;
11588
11601
  }
11602
+ function explicitlyAborted(x, startIndex = 0) {
11603
+ if (x.aborted === true)
11604
+ return true;
11605
+ for (let i = startIndex; i < x.issues.length; i++) {
11606
+ if (x.issues[i]?.continue === false) {
11607
+ return true;
11608
+ }
11609
+ }
11610
+ return false;
11611
+ }
11589
11612
  function prefixIssues(path, issues) {
11590
11613
  return issues.map((iss) => {
11591
- var _a2;
11592
- (_a2 = iss).path ?? (_a2.path = []);
11614
+ var _a3;
11615
+ (_a3 = iss).path ?? (_a3.path = []);
11593
11616
  iss.path.unshift(path);
11594
11617
  return iss;
11595
11618
  });
@@ -11598,17 +11621,14 @@ function unwrapMessage(message) {
11598
11621
  return typeof message === "string" ? message : message?.message;
11599
11622
  }
11600
11623
  function finalizeIssue(iss, ctx, config2) {
11601
- const full = { ...iss, path: iss.path ?? [] };
11602
- if (!iss.message) {
11603
- const message = unwrapMessage(iss.inst?._zod.def?.error?.(iss)) ?? unwrapMessage(ctx?.error?.(iss)) ?? unwrapMessage(config2.customError?.(iss)) ?? unwrapMessage(config2.localeError?.(iss)) ?? "Invalid input";
11604
- full.message = message;
11605
- }
11606
- delete full.inst;
11607
- delete full.continue;
11608
- if (!ctx?.reportInput) {
11609
- delete full.input;
11624
+ const message = iss.message ? iss.message : unwrapMessage(iss.inst?._zod.def?.error?.(iss)) ?? unwrapMessage(ctx?.error?.(iss)) ?? unwrapMessage(config2.customError?.(iss)) ?? unwrapMessage(config2.localeError?.(iss)) ?? "Invalid input";
11625
+ const { inst: _inst, continue: _continue, input: _input, ...rest } = iss;
11626
+ rest.path ?? (rest.path = []);
11627
+ rest.message = message;
11628
+ if (ctx?.reportInput) {
11629
+ rest.input = _input;
11610
11630
  }
11611
- return full;
11631
+ return rest;
11612
11632
  }
11613
11633
  function getSizableOrigin(input) {
11614
11634
  if (input instanceof Set)
@@ -11725,10 +11745,10 @@ var initializer = (inst, def) => {
11725
11745
  };
11726
11746
  var $ZodError = $constructor("$ZodError", initializer);
11727
11747
  var $ZodRealError = $constructor("$ZodError", initializer, { Parent: Error });
11728
- function flattenError(error48, mapper = (issue2) => issue2.message) {
11748
+ function flattenError(error51, mapper = (issue2) => issue2.message) {
11729
11749
  const fieldErrors = {};
11730
11750
  const formErrors = [];
11731
- for (const sub of error48.issues) {
11751
+ for (const sub of error51.issues) {
11732
11752
  if (sub.path.length > 0) {
11733
11753
  fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];
11734
11754
  fieldErrors[sub.path[0]].push(mapper(sub));
@@ -11738,50 +11758,53 @@ function flattenError(error48, mapper = (issue2) => issue2.message) {
11738
11758
  }
11739
11759
  return { formErrors, fieldErrors };
11740
11760
  }
11741
- function formatError(error48, mapper = (issue2) => issue2.message) {
11761
+ function formatError(error51, mapper = (issue2) => issue2.message) {
11742
11762
  const fieldErrors = { _errors: [] };
11743
- const processError = (error49) => {
11744
- for (const issue2 of error49.issues) {
11763
+ const processError = (error52, path = []) => {
11764
+ for (const issue2 of error52.issues) {
11745
11765
  if (issue2.code === "invalid_union" && issue2.errors.length) {
11746
- issue2.errors.map((issues) => processError({ issues }));
11766
+ issue2.errors.map((issues) => processError({ issues }, [...path, ...issue2.path]));
11747
11767
  } else if (issue2.code === "invalid_key") {
11748
- processError({ issues: issue2.issues });
11768
+ processError({ issues: issue2.issues }, [...path, ...issue2.path]);
11749
11769
  } else if (issue2.code === "invalid_element") {
11750
- processError({ issues: issue2.issues });
11751
- } else if (issue2.path.length === 0) {
11752
- fieldErrors._errors.push(mapper(issue2));
11770
+ processError({ issues: issue2.issues }, [...path, ...issue2.path]);
11753
11771
  } else {
11754
- let curr = fieldErrors;
11755
- let i = 0;
11756
- while (i < issue2.path.length) {
11757
- const el = issue2.path[i];
11758
- const terminal = i === issue2.path.length - 1;
11759
- if (!terminal) {
11760
- curr[el] = curr[el] || { _errors: [] };
11761
- } else {
11762
- curr[el] = curr[el] || { _errors: [] };
11763
- curr[el]._errors.push(mapper(issue2));
11772
+ const fullpath = [...path, ...issue2.path];
11773
+ if (fullpath.length === 0) {
11774
+ fieldErrors._errors.push(mapper(issue2));
11775
+ } else {
11776
+ let curr = fieldErrors;
11777
+ let i = 0;
11778
+ while (i < fullpath.length) {
11779
+ const el = fullpath[i];
11780
+ const terminal = i === fullpath.length - 1;
11781
+ if (!terminal) {
11782
+ curr[el] = curr[el] || { _errors: [] };
11783
+ } else {
11784
+ curr[el] = curr[el] || { _errors: [] };
11785
+ curr[el]._errors.push(mapper(issue2));
11786
+ }
11787
+ curr = curr[el];
11788
+ i++;
11764
11789
  }
11765
- curr = curr[el];
11766
- i++;
11767
11790
  }
11768
11791
  }
11769
11792
  }
11770
11793
  };
11771
- processError(error48);
11794
+ processError(error51);
11772
11795
  return fieldErrors;
11773
11796
  }
11774
- function treeifyError(error48, mapper = (issue2) => issue2.message) {
11797
+ function treeifyError(error51, mapper = (issue2) => issue2.message) {
11775
11798
  const result = { errors: [] };
11776
- const processError = (error49, path = []) => {
11777
- var _a2, _b;
11778
- for (const issue2 of error49.issues) {
11799
+ const processError = (error52, path = []) => {
11800
+ var _a3, _b;
11801
+ for (const issue2 of error52.issues) {
11779
11802
  if (issue2.code === "invalid_union" && issue2.errors.length) {
11780
- issue2.errors.map((issues) => processError({ issues }, issue2.path));
11803
+ issue2.errors.map((issues) => processError({ issues }, [...path, ...issue2.path]));
11781
11804
  } else if (issue2.code === "invalid_key") {
11782
- processError({ issues: issue2.issues }, issue2.path);
11805
+ processError({ issues: issue2.issues }, [...path, ...issue2.path]);
11783
11806
  } else if (issue2.code === "invalid_element") {
11784
- processError({ issues: issue2.issues }, issue2.path);
11807
+ processError({ issues: issue2.issues }, [...path, ...issue2.path]);
11785
11808
  } else {
11786
11809
  const fullpath = [...path, ...issue2.path];
11787
11810
  if (fullpath.length === 0) {
@@ -11795,7 +11818,7 @@ function treeifyError(error48, mapper = (issue2) => issue2.message) {
11795
11818
  const terminal = i === fullpath.length - 1;
11796
11819
  if (typeof el === "string") {
11797
11820
  curr.properties ?? (curr.properties = {});
11798
- (_a2 = curr.properties)[el] ?? (_a2[el] = { errors: [] });
11821
+ (_a3 = curr.properties)[el] ?? (_a3[el] = { errors: [] });
11799
11822
  curr = curr.properties[el];
11800
11823
  } else {
11801
11824
  curr.items ?? (curr.items = []);
@@ -11810,7 +11833,7 @@ function treeifyError(error48, mapper = (issue2) => issue2.message) {
11810
11833
  }
11811
11834
  }
11812
11835
  };
11813
- processError(error48);
11836
+ processError(error51);
11814
11837
  return result;
11815
11838
  }
11816
11839
  function toDotPath(_path) {
@@ -11831,9 +11854,9 @@ function toDotPath(_path) {
11831
11854
  }
11832
11855
  return segs.join("");
11833
11856
  }
11834
- function prettifyError(error48) {
11857
+ function prettifyError(error51) {
11835
11858
  const lines = [];
11836
- const issues = [...error48.issues].sort((a, b) => (a.path ?? []).length - (b.path ?? []).length);
11859
+ const issues = [...error51.issues].sort((a, b) => (a.path ?? []).length - (b.path ?? []).length);
11837
11860
  for (const issue2 of issues) {
11838
11861
  lines.push(`\u2716 ${issue2.message}`);
11839
11862
  if (issue2.path?.length)
@@ -11844,7 +11867,7 @@ function prettifyError(error48) {
11844
11867
 
11845
11868
  // node_modules/zod/v4/core/parse.js
11846
11869
  var _parse = (_Err) => (schema, value, _ctx, _params) => {
11847
- const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
11870
+ const ctx = _ctx ? { ..._ctx, async: false } : { async: false };
11848
11871
  const result = schema._zod.run({ value, issues: [] }, ctx);
11849
11872
  if (result instanceof Promise) {
11850
11873
  throw new $ZodAsyncError();
@@ -11858,7 +11881,7 @@ var _parse = (_Err) => (schema, value, _ctx, _params) => {
11858
11881
  };
11859
11882
  var parse = /* @__PURE__ */ _parse($ZodRealError);
11860
11883
  var _parseAsync = (_Err) => async (schema, value, _ctx, params) => {
11861
- const ctx = _ctx ? Object.assign(_ctx, { async: true }) : { async: true };
11884
+ const ctx = _ctx ? { ..._ctx, async: true } : { async: true };
11862
11885
  let result = schema._zod.run({ value, issues: [] }, ctx);
11863
11886
  if (result instanceof Promise)
11864
11887
  result = await result;
@@ -11883,7 +11906,7 @@ var _safeParse = (_Err) => (schema, value, _ctx) => {
11883
11906
  };
11884
11907
  var safeParse = /* @__PURE__ */ _safeParse($ZodRealError);
11885
11908
  var _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
11886
- const ctx = _ctx ? Object.assign(_ctx, { async: true }) : { async: true };
11909
+ const ctx = _ctx ? { ..._ctx, async: true } : { async: true };
11887
11910
  let result = schema._zod.run({ value, issues: [] }, ctx);
11888
11911
  if (result instanceof Promise)
11889
11912
  result = await result;
@@ -11894,7 +11917,7 @@ var _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
11894
11917
  };
11895
11918
  var safeParseAsync = /* @__PURE__ */ _safeParseAsync($ZodRealError);
11896
11919
  var _encode = (_Err) => (schema, value, _ctx) => {
11897
- const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" }) : { direction: "backward" };
11920
+ const ctx = _ctx ? { ..._ctx, direction: "backward" } : { direction: "backward" };
11898
11921
  return _parse(_Err)(schema, value, ctx);
11899
11922
  };
11900
11923
  var encode = /* @__PURE__ */ _encode($ZodRealError);
@@ -11903,7 +11926,7 @@ var _decode = (_Err) => (schema, value, _ctx) => {
11903
11926
  };
11904
11927
  var decode = /* @__PURE__ */ _decode($ZodRealError);
11905
11928
  var _encodeAsync = (_Err) => async (schema, value, _ctx) => {
11906
- const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" }) : { direction: "backward" };
11929
+ const ctx = _ctx ? { ..._ctx, direction: "backward" } : { direction: "backward" };
11907
11930
  return _parseAsync(_Err)(schema, value, ctx);
11908
11931
  };
11909
11932
  var encodeAsync = /* @__PURE__ */ _encodeAsync($ZodRealError);
@@ -11912,7 +11935,7 @@ var _decodeAsync = (_Err) => async (schema, value, _ctx) => {
11912
11935
  };
11913
11936
  var decodeAsync = /* @__PURE__ */ _decodeAsync($ZodRealError);
11914
11937
  var _safeEncode = (_Err) => (schema, value, _ctx) => {
11915
- const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" }) : { direction: "backward" };
11938
+ const ctx = _ctx ? { ..._ctx, direction: "backward" } : { direction: "backward" };
11916
11939
  return _safeParse(_Err)(schema, value, ctx);
11917
11940
  };
11918
11941
  var safeEncode = /* @__PURE__ */ _safeEncode($ZodRealError);
@@ -11921,7 +11944,7 @@ var _safeDecode = (_Err) => (schema, value, _ctx) => {
11921
11944
  };
11922
11945
  var safeDecode = /* @__PURE__ */ _safeDecode($ZodRealError);
11923
11946
  var _safeEncodeAsync = (_Err) => async (schema, value, _ctx) => {
11924
- const ctx = _ctx ? Object.assign(_ctx, { direction: "backward" }) : { direction: "backward" };
11947
+ const ctx = _ctx ? { ..._ctx, direction: "backward" } : { direction: "backward" };
11925
11948
  return _safeParseAsync(_Err)(schema, value, ctx);
11926
11949
  };
11927
11950
  var safeEncodeAsync = /* @__PURE__ */ _safeEncodeAsync($ZodRealError);
@@ -11954,6 +11977,7 @@ __export(regexes_exports, {
11954
11977
  hex: () => hex,
11955
11978
  hostname: () => hostname,
11956
11979
  html5Email: () => html5Email,
11980
+ httpProtocol: () => httpProtocol,
11957
11981
  idnEmail: () => idnEmail,
11958
11982
  integer: () => integer,
11959
11983
  ipv4: () => ipv4,
@@ -11992,7 +12016,7 @@ __export(regexes_exports, {
11992
12016
  uuid7: () => uuid7,
11993
12017
  xid: () => xid
11994
12018
  });
11995
- var cuid = /^[cC][^\s-]{8,}$/;
12019
+ var cuid = /^[cC][0-9a-z]{6,}$/;
11996
12020
  var cuid2 = /^[0-9a-z]+$/;
11997
12021
  var ulid = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/;
11998
12022
  var xid = /^[0-9a-vA-V]{20}$/;
@@ -12031,6 +12055,7 @@ var base64 = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/
12031
12055
  var base64url = /^[A-Za-z0-9_-]*$/;
12032
12056
  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])?)*\.?$/;
12033
12057
  var domain = /^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/;
12058
+ var httpProtocol = /^https?$/;
12034
12059
  var e164 = /^\+[1-9]\d{6,14}$/;
12035
12060
  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])))`;
12036
12061
  var date = /* @__PURE__ */ new RegExp(`^${dateSource}$`);
@@ -12089,10 +12114,10 @@ var sha512_base64url = /* @__PURE__ */ fixedBase64url(86);
12089
12114
 
12090
12115
  // node_modules/zod/v4/core/checks.js
12091
12116
  var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
12092
- var _a2;
12117
+ var _a3;
12093
12118
  inst._zod ?? (inst._zod = {});
12094
12119
  inst._zod.def = def;
12095
- (_a2 = inst._zod).onattach ?? (_a2.onattach = []);
12120
+ (_a3 = inst._zod).onattach ?? (_a3.onattach = []);
12096
12121
  });
12097
12122
  var numericOriginMap = {
12098
12123
  number: "number",
@@ -12158,8 +12183,8 @@ var $ZodCheckGreaterThan = /* @__PURE__ */ $constructor("$ZodCheckGreaterThan",
12158
12183
  var $ZodCheckMultipleOf = /* @__PURE__ */ $constructor("$ZodCheckMultipleOf", (inst, def) => {
12159
12184
  $ZodCheck.init(inst, def);
12160
12185
  inst._zod.onattach.push((inst2) => {
12161
- var _a2;
12162
- (_a2 = inst2._zod.bag).multipleOf ?? (_a2.multipleOf = def.value);
12186
+ var _a3;
12187
+ (_a3 = inst2._zod.bag).multipleOf ?? (_a3.multipleOf = def.value);
12163
12188
  });
12164
12189
  inst._zod.check = (payload) => {
12165
12190
  if (typeof payload.value !== typeof def.value)
@@ -12292,9 +12317,9 @@ var $ZodCheckBigIntFormat = /* @__PURE__ */ $constructor("$ZodCheckBigIntFormat"
12292
12317
  };
12293
12318
  });
12294
12319
  var $ZodCheckMaxSize = /* @__PURE__ */ $constructor("$ZodCheckMaxSize", (inst, def) => {
12295
- var _a2;
12320
+ var _a3;
12296
12321
  $ZodCheck.init(inst, def);
12297
- (_a2 = inst._zod.def).when ?? (_a2.when = (payload) => {
12322
+ (_a3 = inst._zod.def).when ?? (_a3.when = (payload) => {
12298
12323
  const val = payload.value;
12299
12324
  return !nullish(val) && val.size !== void 0;
12300
12325
  });
@@ -12320,9 +12345,9 @@ var $ZodCheckMaxSize = /* @__PURE__ */ $constructor("$ZodCheckMaxSize", (inst, d
12320
12345
  };
12321
12346
  });
12322
12347
  var $ZodCheckMinSize = /* @__PURE__ */ $constructor("$ZodCheckMinSize", (inst, def) => {
12323
- var _a2;
12348
+ var _a3;
12324
12349
  $ZodCheck.init(inst, def);
12325
- (_a2 = inst._zod.def).when ?? (_a2.when = (payload) => {
12350
+ (_a3 = inst._zod.def).when ?? (_a3.when = (payload) => {
12326
12351
  const val = payload.value;
12327
12352
  return !nullish(val) && val.size !== void 0;
12328
12353
  });
@@ -12348,9 +12373,9 @@ var $ZodCheckMinSize = /* @__PURE__ */ $constructor("$ZodCheckMinSize", (inst, d
12348
12373
  };
12349
12374
  });
12350
12375
  var $ZodCheckSizeEquals = /* @__PURE__ */ $constructor("$ZodCheckSizeEquals", (inst, def) => {
12351
- var _a2;
12376
+ var _a3;
12352
12377
  $ZodCheck.init(inst, def);
12353
- (_a2 = inst._zod.def).when ?? (_a2.when = (payload) => {
12378
+ (_a3 = inst._zod.def).when ?? (_a3.when = (payload) => {
12354
12379
  const val = payload.value;
12355
12380
  return !nullish(val) && val.size !== void 0;
12356
12381
  });
@@ -12378,9 +12403,9 @@ var $ZodCheckSizeEquals = /* @__PURE__ */ $constructor("$ZodCheckSizeEquals", (i
12378
12403
  };
12379
12404
  });
12380
12405
  var $ZodCheckMaxLength = /* @__PURE__ */ $constructor("$ZodCheckMaxLength", (inst, def) => {
12381
- var _a2;
12406
+ var _a3;
12382
12407
  $ZodCheck.init(inst, def);
12383
- (_a2 = inst._zod.def).when ?? (_a2.when = (payload) => {
12408
+ (_a3 = inst._zod.def).when ?? (_a3.when = (payload) => {
12384
12409
  const val = payload.value;
12385
12410
  return !nullish(val) && val.length !== void 0;
12386
12411
  });
@@ -12407,9 +12432,9 @@ var $ZodCheckMaxLength = /* @__PURE__ */ $constructor("$ZodCheckMaxLength", (ins
12407
12432
  };
12408
12433
  });
12409
12434
  var $ZodCheckMinLength = /* @__PURE__ */ $constructor("$ZodCheckMinLength", (inst, def) => {
12410
- var _a2;
12435
+ var _a3;
12411
12436
  $ZodCheck.init(inst, def);
12412
- (_a2 = inst._zod.def).when ?? (_a2.when = (payload) => {
12437
+ (_a3 = inst._zod.def).when ?? (_a3.when = (payload) => {
12413
12438
  const val = payload.value;
12414
12439
  return !nullish(val) && val.length !== void 0;
12415
12440
  });
@@ -12436,9 +12461,9 @@ var $ZodCheckMinLength = /* @__PURE__ */ $constructor("$ZodCheckMinLength", (ins
12436
12461
  };
12437
12462
  });
12438
12463
  var $ZodCheckLengthEquals = /* @__PURE__ */ $constructor("$ZodCheckLengthEquals", (inst, def) => {
12439
- var _a2;
12464
+ var _a3;
12440
12465
  $ZodCheck.init(inst, def);
12441
- (_a2 = inst._zod.def).when ?? (_a2.when = (payload) => {
12466
+ (_a3 = inst._zod.def).when ?? (_a3.when = (payload) => {
12442
12467
  const val = payload.value;
12443
12468
  return !nullish(val) && val.length !== void 0;
12444
12469
  });
@@ -12467,7 +12492,7 @@ var $ZodCheckLengthEquals = /* @__PURE__ */ $constructor("$ZodCheckLengthEquals"
12467
12492
  };
12468
12493
  });
12469
12494
  var $ZodCheckStringFormat = /* @__PURE__ */ $constructor("$ZodCheckStringFormat", (inst, def) => {
12470
- var _a2, _b;
12495
+ var _a3, _b;
12471
12496
  $ZodCheck.init(inst, def);
12472
12497
  inst._zod.onattach.push((inst2) => {
12473
12498
  const bag = inst2._zod.bag;
@@ -12478,7 +12503,7 @@ var $ZodCheckStringFormat = /* @__PURE__ */ $constructor("$ZodCheckStringFormat"
12478
12503
  }
12479
12504
  });
12480
12505
  if (def.pattern)
12481
- (_a2 = inst._zod).check ?? (_a2.check = (payload) => {
12506
+ (_a3 = inst._zod).check ?? (_a3.check = (payload) => {
12482
12507
  def.pattern.lastIndex = 0;
12483
12508
  if (def.pattern.test(payload.value))
12484
12509
  return;
@@ -12674,13 +12699,13 @@ var Doc = class {
12674
12699
  // node_modules/zod/v4/core/versions.js
12675
12700
  var version = {
12676
12701
  major: 4,
12677
- minor: 3,
12678
- patch: 6
12702
+ minor: 4,
12703
+ patch: 3
12679
12704
  };
12680
12705
 
12681
12706
  // node_modules/zod/v4/core/schemas.js
12682
12707
  var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
12683
- var _a2;
12708
+ var _a3;
12684
12709
  inst ?? (inst = {});
12685
12710
  inst._zod.def = def;
12686
12711
  inst._zod.bag = inst._zod.bag || {};
@@ -12695,7 +12720,7 @@ var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
12695
12720
  }
12696
12721
  }
12697
12722
  if (checks.length === 0) {
12698
- (_a2 = inst._zod).deferred ?? (_a2.deferred = []);
12723
+ (_a3 = inst._zod).deferred ?? (_a3.deferred = []);
12699
12724
  inst._zod.deferred?.push(() => {
12700
12725
  inst._zod.run = inst._zod.parse;
12701
12726
  });
@@ -12705,6 +12730,8 @@ var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
12705
12730
  let asyncResult;
12706
12731
  for (const ch of checks2) {
12707
12732
  if (ch._zod.def.when) {
12733
+ if (explicitlyAborted(payload))
12734
+ continue;
12708
12735
  const shouldRun = ch._zod.def.when(payload);
12709
12736
  if (!shouldRun)
12710
12737
  continue;
@@ -12845,6 +12872,19 @@ var $ZodURL = /* @__PURE__ */ $constructor("$ZodURL", (inst, def) => {
12845
12872
  inst._zod.check = (payload) => {
12846
12873
  try {
12847
12874
  const trimmed = payload.value.trim();
12875
+ if (!def.normalize && def.protocol?.source === httpProtocol.source) {
12876
+ if (!/^https?:\/\//i.test(trimmed)) {
12877
+ payload.issues.push({
12878
+ code: "invalid_format",
12879
+ format: "url",
12880
+ note: "Invalid URL format",
12881
+ input: payload.value,
12882
+ inst,
12883
+ continue: !def.abort
12884
+ });
12885
+ return;
12886
+ }
12887
+ }
12848
12888
  const url2 = new URL(trimmed);
12849
12889
  if (def.hostname) {
12850
12890
  def.hostname.lastIndex = 0;
@@ -12998,6 +13038,8 @@ var $ZodCIDRv6 = /* @__PURE__ */ $constructor("$ZodCIDRv6", (inst, def) => {
12998
13038
  function isValidBase64(data) {
12999
13039
  if (data === "")
13000
13040
  return true;
13041
+ if (/\s/.test(data))
13042
+ return false;
13001
13043
  if (data.length % 4 !== 0)
13002
13044
  return false;
13003
13045
  try {
@@ -13190,8 +13232,6 @@ var $ZodUndefined = /* @__PURE__ */ $constructor("$ZodUndefined", (inst, def) =>
13190
13232
  $ZodType.init(inst, def);
13191
13233
  inst._zod.pattern = _undefined;
13192
13234
  inst._zod.values = /* @__PURE__ */ new Set([void 0]);
13193
- inst._zod.optin = "optional";
13194
- inst._zod.optout = "optional";
13195
13235
  inst._zod.parse = (payload, _ctx) => {
13196
13236
  const input = payload.value;
13197
13237
  if (typeof input === "undefined")
@@ -13320,15 +13360,27 @@ var $ZodArray = /* @__PURE__ */ $constructor("$ZodArray", (inst, def) => {
13320
13360
  return payload;
13321
13361
  };
13322
13362
  });
13323
- function handlePropertyResult(result, final, key, input, isOptionalOut) {
13363
+ function handlePropertyResult(result, final, key, input, isOptionalIn, isOptionalOut) {
13364
+ const isPresent = key in input;
13324
13365
  if (result.issues.length) {
13325
- if (isOptionalOut && !(key in input)) {
13366
+ if (isOptionalIn && isOptionalOut && !isPresent) {
13326
13367
  return;
13327
13368
  }
13328
13369
  final.issues.push(...prefixIssues(key, result.issues));
13329
13370
  }
13371
+ if (!isPresent && !isOptionalIn) {
13372
+ if (!result.issues.length) {
13373
+ final.issues.push({
13374
+ code: "invalid_type",
13375
+ expected: "nonoptional",
13376
+ input: void 0,
13377
+ path: [key]
13378
+ });
13379
+ }
13380
+ return;
13381
+ }
13330
13382
  if (result.value === void 0) {
13331
- if (key in input) {
13383
+ if (isPresent) {
13332
13384
  final.value[key] = void 0;
13333
13385
  }
13334
13386
  } else {
@@ -13356,8 +13408,11 @@ function handleCatchall(proms, input, payload, ctx, def, inst) {
13356
13408
  const keySet = def.keySet;
13357
13409
  const _catchall = def.catchall._zod;
13358
13410
  const t = _catchall.def.type;
13411
+ const isOptionalIn = _catchall.optin === "optional";
13359
13412
  const isOptionalOut = _catchall.optout === "optional";
13360
13413
  for (const key in input) {
13414
+ if (key === "__proto__")
13415
+ continue;
13361
13416
  if (keySet.has(key))
13362
13417
  continue;
13363
13418
  if (t === "never") {
@@ -13366,9 +13421,9 @@ function handleCatchall(proms, input, payload, ctx, def, inst) {
13366
13421
  }
13367
13422
  const r = _catchall.run({ value: input[key], issues: [] }, ctx);
13368
13423
  if (r instanceof Promise) {
13369
- proms.push(r.then((r2) => handlePropertyResult(r2, payload, key, input, isOptionalOut)));
13424
+ proms.push(r.then((r2) => handlePropertyResult(r2, payload, key, input, isOptionalIn, isOptionalOut)));
13370
13425
  } else {
13371
- handlePropertyResult(r, payload, key, input, isOptionalOut);
13426
+ handlePropertyResult(r, payload, key, input, isOptionalIn, isOptionalOut);
13372
13427
  }
13373
13428
  }
13374
13429
  if (unrecognized.length) {
@@ -13434,12 +13489,13 @@ var $ZodObject = /* @__PURE__ */ $constructor("$ZodObject", (inst, def) => {
13434
13489
  const shape = value.shape;
13435
13490
  for (const key of value.keys) {
13436
13491
  const el = shape[key];
13492
+ const isOptionalIn = el._zod.optin === "optional";
13437
13493
  const isOptionalOut = el._zod.optout === "optional";
13438
13494
  const r = el._zod.run({ value: input[key], issues: [] }, ctx);
13439
13495
  if (r instanceof Promise) {
13440
- proms.push(r.then((r2) => handlePropertyResult(r2, payload, key, input, isOptionalOut)));
13496
+ proms.push(r.then((r2) => handlePropertyResult(r2, payload, key, input, isOptionalIn, isOptionalOut)));
13441
13497
  } else {
13442
- handlePropertyResult(r, payload, key, input, isOptionalOut);
13498
+ handlePropertyResult(r, payload, key, input, isOptionalIn, isOptionalOut);
13443
13499
  }
13444
13500
  }
13445
13501
  if (!catchall) {
@@ -13470,9 +13526,10 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
13470
13526
  const id = ids[key];
13471
13527
  const k = esc(key);
13472
13528
  const schema = shape[key];
13529
+ const isOptionalIn = schema?._zod?.optin === "optional";
13473
13530
  const isOptionalOut = schema?._zod?.optout === "optional";
13474
13531
  doc.write(`const ${id} = ${parseStr(key)};`);
13475
- if (isOptionalOut) {
13532
+ if (isOptionalIn && isOptionalOut) {
13476
13533
  doc.write(`
13477
13534
  if (${id}.issues.length) {
13478
13535
  if (${k} in input) {
@@ -13491,6 +13548,33 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
13491
13548
  newResult[${k}] = ${id}.value;
13492
13549
  }
13493
13550
 
13551
+ `);
13552
+ } else if (!isOptionalIn) {
13553
+ doc.write(`
13554
+ const ${id}_present = ${k} in input;
13555
+ if (${id}.issues.length) {
13556
+ payload.issues = payload.issues.concat(${id}.issues.map(iss => ({
13557
+ ...iss,
13558
+ path: iss.path ? [${k}, ...iss.path] : [${k}]
13559
+ })));
13560
+ }
13561
+ if (!${id}_present && !${id}.issues.length) {
13562
+ payload.issues.push({
13563
+ code: "invalid_type",
13564
+ expected: "nonoptional",
13565
+ input: undefined,
13566
+ path: [${k}]
13567
+ });
13568
+ }
13569
+
13570
+ if (${id}_present) {
13571
+ if (${id}.value === undefined) {
13572
+ newResult[${k}] = undefined;
13573
+ } else {
13574
+ newResult[${k}] = ${id}.value;
13575
+ }
13576
+ }
13577
+
13494
13578
  `);
13495
13579
  } else {
13496
13580
  doc.write(`
@@ -13584,10 +13668,9 @@ var $ZodUnion = /* @__PURE__ */ $constructor("$ZodUnion", (inst, def) => {
13584
13668
  }
13585
13669
  return void 0;
13586
13670
  });
13587
- const single = def.options.length === 1;
13588
- const first = def.options[0]._zod.run;
13671
+ const first = def.options.length === 1 ? def.options[0]._zod.run : null;
13589
13672
  inst._zod.parse = (payload, ctx) => {
13590
- if (single) {
13673
+ if (first) {
13591
13674
  return first(payload, ctx);
13592
13675
  }
13593
13676
  let async = false;
@@ -13640,10 +13723,9 @@ function handleExclusiveUnionResults(results, final, inst, ctx) {
13640
13723
  var $ZodXor = /* @__PURE__ */ $constructor("$ZodXor", (inst, def) => {
13641
13724
  $ZodUnion.init(inst, def);
13642
13725
  def.inclusive = false;
13643
- const single = def.options.length === 1;
13644
- const first = def.options[0]._zod.run;
13726
+ const first = def.options.length === 1 ? def.options[0]._zod.run : null;
13645
13727
  inst._zod.parse = (payload, ctx) => {
13646
- if (single) {
13728
+ if (first) {
13647
13729
  return first(payload, ctx);
13648
13730
  }
13649
13731
  let async = false;
@@ -13718,7 +13800,7 @@ var $ZodDiscriminatedUnion = /* @__PURE__ */ $constructor("$ZodDiscriminatedUnio
13718
13800
  if (opt) {
13719
13801
  return opt._zod.run(payload, ctx);
13720
13802
  }
13721
- if (def.unionFallback) {
13803
+ if (def.unionFallback || ctx.direction === "backward") {
13722
13804
  return _super(payload, ctx);
13723
13805
  }
13724
13806
  payload.issues.push({
@@ -13726,6 +13808,7 @@ var $ZodDiscriminatedUnion = /* @__PURE__ */ $constructor("$ZodDiscriminatedUnio
13726
13808
  errors: [],
13727
13809
  note: "No matching discriminator",
13728
13810
  discriminator: def.discriminator,
13811
+ options: Array.from(disc.value.keys()),
13729
13812
  input,
13730
13813
  path: [def.discriminator],
13731
13814
  inst
@@ -13847,64 +13930,96 @@ var $ZodTuple = /* @__PURE__ */ $constructor("$ZodTuple", (inst, def) => {
13847
13930
  }
13848
13931
  payload.value = [];
13849
13932
  const proms = [];
13850
- const reversedIndex = [...items].reverse().findIndex((item) => item._zod.optin !== "optional");
13851
- const optStart = reversedIndex === -1 ? 0 : items.length - reversedIndex;
13933
+ const optinStart = getTupleOptStart(items, "optin");
13934
+ const optoutStart = getTupleOptStart(items, "optout");
13852
13935
  if (!def.rest) {
13853
- const tooBig = input.length > items.length;
13854
- const tooSmall = input.length < optStart - 1;
13855
- if (tooBig || tooSmall) {
13936
+ if (input.length < optinStart) {
13856
13937
  payload.issues.push({
13857
- ...tooBig ? { code: "too_big", maximum: items.length, inclusive: true } : { code: "too_small", minimum: items.length },
13938
+ code: "too_small",
13939
+ minimum: optinStart,
13940
+ inclusive: true,
13858
13941
  input,
13859
13942
  inst,
13860
13943
  origin: "array"
13861
13944
  });
13862
13945
  return payload;
13863
13946
  }
13864
- }
13865
- let i = -1;
13866
- for (const item of items) {
13867
- i++;
13868
- if (i >= input.length) {
13869
- if (i >= optStart)
13870
- continue;
13947
+ if (input.length > items.length) {
13948
+ payload.issues.push({
13949
+ code: "too_big",
13950
+ maximum: items.length,
13951
+ inclusive: true,
13952
+ input,
13953
+ inst,
13954
+ origin: "array"
13955
+ });
13871
13956
  }
13872
- const result = item._zod.run({
13873
- value: input[i],
13874
- issues: []
13875
- }, ctx);
13876
- if (result instanceof Promise) {
13877
- proms.push(result.then((result2) => handleTupleResult(result2, payload, i)));
13957
+ }
13958
+ const itemResults = new Array(items.length);
13959
+ for (let i = 0; i < items.length; i++) {
13960
+ const r = items[i]._zod.run({ value: input[i], issues: [] }, ctx);
13961
+ if (r instanceof Promise) {
13962
+ proms.push(r.then((rr) => {
13963
+ itemResults[i] = rr;
13964
+ }));
13878
13965
  } else {
13879
- handleTupleResult(result, payload, i);
13966
+ itemResults[i] = r;
13880
13967
  }
13881
13968
  }
13882
13969
  if (def.rest) {
13970
+ let i = items.length - 1;
13883
13971
  const rest = input.slice(items.length);
13884
13972
  for (const el of rest) {
13885
13973
  i++;
13886
- const result = def.rest._zod.run({
13887
- value: el,
13888
- issues: []
13889
- }, ctx);
13974
+ const result = def.rest._zod.run({ value: el, issues: [] }, ctx);
13890
13975
  if (result instanceof Promise) {
13891
- proms.push(result.then((result2) => handleTupleResult(result2, payload, i)));
13976
+ proms.push(result.then((r) => handleTupleResult(r, payload, i)));
13892
13977
  } else {
13893
13978
  handleTupleResult(result, payload, i);
13894
13979
  }
13895
13980
  }
13896
13981
  }
13897
- if (proms.length)
13898
- return Promise.all(proms).then(() => payload);
13899
- return payload;
13982
+ if (proms.length) {
13983
+ return Promise.all(proms).then(() => handleTupleResults(itemResults, payload, items, input, optoutStart));
13984
+ }
13985
+ return handleTupleResults(itemResults, payload, items, input, optoutStart);
13900
13986
  };
13901
13987
  });
13988
+ function getTupleOptStart(items, key) {
13989
+ for (let i = items.length - 1; i >= 0; i--) {
13990
+ if (items[i]._zod[key] !== "optional")
13991
+ return i + 1;
13992
+ }
13993
+ return 0;
13994
+ }
13902
13995
  function handleTupleResult(result, final, index) {
13903
13996
  if (result.issues.length) {
13904
13997
  final.issues.push(...prefixIssues(index, result.issues));
13905
13998
  }
13906
13999
  final.value[index] = result.value;
13907
14000
  }
14001
+ function handleTupleResults(itemResults, final, items, input, optoutStart) {
14002
+ for (let i = 0; i < items.length; i++) {
14003
+ const r = itemResults[i];
14004
+ const isPresent = i < input.length;
14005
+ if (r.issues.length) {
14006
+ if (!isPresent && i >= optoutStart) {
14007
+ final.value.length = i;
14008
+ break;
14009
+ }
14010
+ final.issues.push(...prefixIssues(i, r.issues));
14011
+ }
14012
+ final.value[i] = r.value;
14013
+ }
14014
+ for (let i = final.value.length - 1; i >= input.length; i--) {
14015
+ if (items[i]._zod.optout === "optional" && final.value[i] === void 0) {
14016
+ final.value.length = i;
14017
+ } else {
14018
+ break;
14019
+ }
14020
+ }
14021
+ return final;
14022
+ }
13908
14023
  var $ZodRecord = /* @__PURE__ */ $constructor("$ZodRecord", (inst, def) => {
13909
14024
  $ZodType.init(inst, def);
13910
14025
  inst._zod.parse = (payload, ctx) => {
@@ -13926,19 +14041,35 @@ var $ZodRecord = /* @__PURE__ */ $constructor("$ZodRecord", (inst, def) => {
13926
14041
  for (const key of values) {
13927
14042
  if (typeof key === "string" || typeof key === "number" || typeof key === "symbol") {
13928
14043
  recordKeys.add(typeof key === "number" ? key.toString() : key);
14044
+ const keyResult = def.keyType._zod.run({ value: key, issues: [] }, ctx);
14045
+ if (keyResult instanceof Promise) {
14046
+ throw new Error("Async schemas not supported in object keys currently");
14047
+ }
14048
+ if (keyResult.issues.length) {
14049
+ payload.issues.push({
14050
+ code: "invalid_key",
14051
+ origin: "record",
14052
+ issues: keyResult.issues.map((iss) => finalizeIssue(iss, ctx, config())),
14053
+ input: key,
14054
+ path: [key],
14055
+ inst
14056
+ });
14057
+ continue;
14058
+ }
14059
+ const outKey = keyResult.value;
13929
14060
  const result = def.valueType._zod.run({ value: input[key], issues: [] }, ctx);
13930
14061
  if (result instanceof Promise) {
13931
14062
  proms.push(result.then((result2) => {
13932
14063
  if (result2.issues.length) {
13933
14064
  payload.issues.push(...prefixIssues(key, result2.issues));
13934
14065
  }
13935
- payload.value[key] = result2.value;
14066
+ payload.value[outKey] = result2.value;
13936
14067
  }));
13937
14068
  } else {
13938
14069
  if (result.issues.length) {
13939
14070
  payload.issues.push(...prefixIssues(key, result.issues));
13940
14071
  }
13941
- payload.value[key] = result.value;
14072
+ payload.value[outKey] = result.value;
13942
14073
  }
13943
14074
  }
13944
14075
  }
@@ -13962,6 +14093,8 @@ var $ZodRecord = /* @__PURE__ */ $constructor("$ZodRecord", (inst, def) => {
13962
14093
  for (const key of Reflect.ownKeys(input)) {
13963
14094
  if (key === "__proto__")
13964
14095
  continue;
14096
+ if (!Object.prototype.propertyIsEnumerable.call(input, key))
14097
+ continue;
13965
14098
  let keyResult = def.keyType._zod.run({ value: key, issues: [] }, ctx);
13966
14099
  if (keyResult instanceof Promise) {
13967
14100
  throw new Error("Async schemas not supported in object keys currently");
@@ -14166,6 +14299,7 @@ var $ZodFile = /* @__PURE__ */ $constructor("$ZodFile", (inst, def) => {
14166
14299
  });
14167
14300
  var $ZodTransform = /* @__PURE__ */ $constructor("$ZodTransform", (inst, def) => {
14168
14301
  $ZodType.init(inst, def);
14302
+ inst._zod.optin = "optional";
14169
14303
  inst._zod.parse = (payload, ctx) => {
14170
14304
  if (ctx.direction === "backward") {
14171
14305
  throw new $ZodEncodeError(inst.constructor.name);
@@ -14175,6 +14309,7 @@ var $ZodTransform = /* @__PURE__ */ $constructor("$ZodTransform", (inst, def) =>
14175
14309
  const output = _out instanceof Promise ? _out : Promise.resolve(_out);
14176
14310
  return output.then((output2) => {
14177
14311
  payload.value = output2;
14312
+ payload.fallback = true;
14178
14313
  return payload;
14179
14314
  });
14180
14315
  }
@@ -14182,11 +14317,12 @@ var $ZodTransform = /* @__PURE__ */ $constructor("$ZodTransform", (inst, def) =>
14182
14317
  throw new $ZodAsyncError();
14183
14318
  }
14184
14319
  payload.value = _out;
14320
+ payload.fallback = true;
14185
14321
  return payload;
14186
14322
  };
14187
14323
  });
14188
14324
  function handleOptionalResult(result, input) {
14189
- if (result.issues.length && input === void 0) {
14325
+ if (input === void 0 && (result.issues.length || result.fallback)) {
14190
14326
  return { issues: [], value: void 0 };
14191
14327
  }
14192
14328
  return result;
@@ -14204,10 +14340,11 @@ var $ZodOptional = /* @__PURE__ */ $constructor("$ZodOptional", (inst, def) => {
14204
14340
  });
14205
14341
  inst._zod.parse = (payload, ctx) => {
14206
14342
  if (def.innerType._zod.optin === "optional") {
14343
+ const input = payload.value;
14207
14344
  const result = def.innerType._zod.run(payload, ctx);
14208
14345
  if (result instanceof Promise)
14209
- return result.then((r) => handleOptionalResult(r, payload.value));
14210
- return handleOptionalResult(result, payload.value);
14346
+ return result.then((r) => handleOptionalResult(r, input));
14347
+ return handleOptionalResult(result, input);
14211
14348
  }
14212
14349
  if (payload.value === void 0) {
14213
14350
  return payload;
@@ -14323,7 +14460,7 @@ var $ZodSuccess = /* @__PURE__ */ $constructor("$ZodSuccess", (inst, def) => {
14323
14460
  });
14324
14461
  var $ZodCatch = /* @__PURE__ */ $constructor("$ZodCatch", (inst, def) => {
14325
14462
  $ZodType.init(inst, def);
14326
- defineLazy(inst._zod, "optin", () => def.innerType._zod.optin);
14463
+ inst._zod.optin = "optional";
14327
14464
  defineLazy(inst._zod, "optout", () => def.innerType._zod.optout);
14328
14465
  defineLazy(inst._zod, "values", () => def.innerType._zod.values);
14329
14466
  inst._zod.parse = (payload, ctx) => {
@@ -14343,6 +14480,7 @@ var $ZodCatch = /* @__PURE__ */ $constructor("$ZodCatch", (inst, def) => {
14343
14480
  input: payload.value
14344
14481
  });
14345
14482
  payload.issues = [];
14483
+ payload.fallback = true;
14346
14484
  }
14347
14485
  return payload;
14348
14486
  });
@@ -14357,6 +14495,7 @@ var $ZodCatch = /* @__PURE__ */ $constructor("$ZodCatch", (inst, def) => {
14357
14495
  input: payload.value
14358
14496
  });
14359
14497
  payload.issues = [];
14498
+ payload.fallback = true;
14360
14499
  }
14361
14500
  return payload;
14362
14501
  };
@@ -14402,7 +14541,7 @@ function handlePipeResult(left, next, ctx) {
14402
14541
  left.aborted = true;
14403
14542
  return left;
14404
14543
  }
14405
- return next._zod.run({ value: left.value, issues: left.issues }, ctx);
14544
+ return next._zod.run({ value: left.value, issues: left.issues, fallback: left.fallback }, ctx);
14406
14545
  }
14407
14546
  var $ZodCodec = /* @__PURE__ */ $constructor("$ZodCodec", (inst, def) => {
14408
14547
  $ZodType.init(inst, def);
@@ -14454,6 +14593,9 @@ function handleCodecTxResult(left, value, nextSchema, ctx) {
14454
14593
  }
14455
14594
  return nextSchema._zod.run({ value, issues: left.issues }, ctx);
14456
14595
  }
14596
+ var $ZodPreprocess = /* @__PURE__ */ $constructor("$ZodPreprocess", (inst, def) => {
14597
+ $ZodPipe.init(inst, def);
14598
+ });
14457
14599
  var $ZodReadonly = /* @__PURE__ */ $constructor("$ZodReadonly", (inst, def) => {
14458
14600
  $ZodType.init(inst, def);
14459
14601
  defineLazy(inst._zod, "propValues", () => def.innerType._zod.propValues);
@@ -14605,7 +14747,12 @@ var $ZodPromise = /* @__PURE__ */ $constructor("$ZodPromise", (inst, def) => {
14605
14747
  });
14606
14748
  var $ZodLazy = /* @__PURE__ */ $constructor("$ZodLazy", (inst, def) => {
14607
14749
  $ZodType.init(inst, def);
14608
- defineLazy(inst._zod, "innerType", () => def.getter());
14750
+ defineLazy(inst._zod, "innerType", () => {
14751
+ const d = def;
14752
+ if (!d._cachedInner)
14753
+ d._cachedInner = def.getter();
14754
+ return d._cachedInner;
14755
+ });
14609
14756
  defineLazy(inst._zod, "pattern", () => inst._zod.innerType?._zod?.pattern);
14610
14757
  defineLazy(inst._zod, "propValues", () => inst._zod.innerType?._zod?.propValues);
14611
14758
  defineLazy(inst._zod, "optin", () => inst._zod.innerType?._zod?.optin ?? void 0);
@@ -14660,6 +14807,7 @@ __export(locales_exports, {
14660
14807
  cs: () => cs_default,
14661
14808
  da: () => da_default,
14662
14809
  de: () => de_default,
14810
+ el: () => el_default,
14663
14811
  en: () => en_default2,
14664
14812
  eo: () => eo_default,
14665
14813
  es: () => es_default,
@@ -14668,6 +14816,7 @@ __export(locales_exports, {
14668
14816
  fr: () => fr_default,
14669
14817
  frCA: () => fr_CA_default,
14670
14818
  he: () => he_default,
14819
+ hr: () => hr_default,
14671
14820
  hu: () => hu_default,
14672
14821
  hy: () => hy_default,
14673
14822
  id: () => id_default,
@@ -14687,6 +14836,7 @@ __export(locales_exports, {
14687
14836
  pl: () => pl_default,
14688
14837
  ps: () => ps_default,
14689
14838
  pt: () => pt_default,
14839
+ ro: () => ro_default,
14690
14840
  ru: () => ru_default,
14691
14841
  sl: () => sl_default,
14692
14842
  sv: () => sv_default,
@@ -15640,8 +15790,118 @@ function de_default() {
15640
15790
  };
15641
15791
  }
15642
15792
 
15643
- // node_modules/zod/v4/locales/en.js
15793
+ // node_modules/zod/v4/locales/el.js
15644
15794
  var error9 = () => {
15795
+ const Sizable = {
15796
+ string: { unit: "\u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2", verb: "\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9" },
15797
+ file: { unit: "bytes", verb: "\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9" },
15798
+ array: { unit: "\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1", verb: "\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9" },
15799
+ set: { unit: "\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1", verb: "\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9" },
15800
+ map: { unit: "\u03BA\u03B1\u03C4\u03B1\u03C7\u03C9\u03C1\u03AE\u03C3\u03B5\u03B9\u03C2", verb: "\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9" }
15801
+ };
15802
+ function getSizing(origin) {
15803
+ return Sizable[origin] ?? null;
15804
+ }
15805
+ const FormatDictionary = {
15806
+ regex: "\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2",
15807
+ email: "\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 email",
15808
+ url: "URL",
15809
+ emoji: "emoji",
15810
+ uuid: "UUID",
15811
+ uuidv4: "UUIDv4",
15812
+ uuidv6: "UUIDv6",
15813
+ nanoid: "nanoid",
15814
+ guid: "GUID",
15815
+ cuid: "cuid",
15816
+ cuid2: "cuid2",
15817
+ ulid: "ULID",
15818
+ xid: "XID",
15819
+ ksuid: "KSUID",
15820
+ datetime: "ISO \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BA\u03B1\u03B9 \u03CE\u03C1\u03B1",
15821
+ date: "ISO \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",
15822
+ time: "ISO \u03CE\u03C1\u03B1",
15823
+ duration: "ISO \u03B4\u03B9\u03AC\u03C1\u03BA\u03B5\u03B9\u03B1",
15824
+ ipv4: "\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv4",
15825
+ ipv6: "\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv6",
15826
+ mac: "\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 MAC",
15827
+ cidrv4: "\u03B5\u03CD\u03C1\u03BF\u03C2 IPv4",
15828
+ cidrv6: "\u03B5\u03CD\u03C1\u03BF\u03C2 IPv6",
15829
+ base64: "\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64",
15830
+ base64url: "\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64url",
15831
+ json_string: "\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC JSON",
15832
+ e164: "\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 E.164",
15833
+ jwt: "JWT",
15834
+ template_literal: "\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"
15835
+ };
15836
+ const TypeDictionary = {
15837
+ nan: "NaN"
15838
+ };
15839
+ return (issue2) => {
15840
+ switch (issue2.code) {
15841
+ case "invalid_type": {
15842
+ const expected = TypeDictionary[issue2.expected] ?? issue2.expected;
15843
+ const receivedType = parsedType(issue2.input);
15844
+ const received = TypeDictionary[receivedType] ?? receivedType;
15845
+ if (typeof issue2.expected === "string" && /^[A-Z]/.test(issue2.expected)) {
15846
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD instanceof ${issue2.expected}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${received}`;
15847
+ }
15848
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${expected}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${received}`;
15849
+ }
15850
+ case "invalid_value":
15851
+ if (issue2.values.length === 1)
15852
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${stringifyPrimitive(issue2.values[0])}`;
15853
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD \u03AD\u03BD\u03B1 \u03B1\u03C0\u03CC ${joinValues(issue2.values, "|")}`;
15854
+ case "too_big": {
15855
+ const adj = issue2.inclusive ? "<=" : "<";
15856
+ const sizing = getSizing(issue2.origin);
15857
+ if (sizing)
15858
+ return `\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${issue2.origin ?? "\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${adj}${issue2.maximum.toString()} ${sizing.unit ?? "\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1"}`;
15859
+ return `\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${issue2.origin ?? "\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${adj}${issue2.maximum.toString()}`;
15860
+ }
15861
+ case "too_small": {
15862
+ const adj = issue2.inclusive ? ">=" : ">";
15863
+ const sizing = getSizing(issue2.origin);
15864
+ if (sizing) {
15865
+ return `\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${issue2.origin} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${adj}${issue2.minimum.toString()} ${sizing.unit}`;
15866
+ }
15867
+ return `\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${issue2.origin} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${adj}${issue2.minimum.toString()}`;
15868
+ }
15869
+ case "invalid_format": {
15870
+ const _issue = issue2;
15871
+ if (_issue.format === "starts_with") {
15872
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03BE\u03B5\u03BA\u03B9\u03BD\u03AC \u03BC\u03B5 "${_issue.prefix}"`;
15873
+ }
15874
+ if (_issue.format === "ends_with")
15875
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B5\u03BB\u03B5\u03B9\u03CE\u03BD\u03B5\u03B9 \u03BC\u03B5 "${_issue.suffix}"`;
15876
+ if (_issue.format === "includes")
15877
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 "${_issue.includes}"`;
15878
+ if (_issue.format === "regex")
15879
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03B5\u03B9 \u03BC\u03B5 \u03C4\u03BF \u03BC\u03BF\u03C4\u03AF\u03B2\u03BF ${_issue.pattern}`;
15880
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF: ${FormatDictionary[_issue.format] ?? issue2.format}`;
15881
+ }
15882
+ case "not_multiple_of":
15883
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF\u03C2 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03AC\u03C3\u03B9\u03BF \u03C4\u03BF\u03C5 ${issue2.divisor}`;
15884
+ case "unrecognized_keys":
15885
+ return `\u0386\u03B3\u03BD\u03C9\u03C3\u03C4${issue2.keys.length > 1 ? "\u03B1" : "\u03BF"} \u03BA\u03BB\u03B5\u03B9\u03B4${issue2.keys.length > 1 ? "\u03B9\u03AC" : "\u03AF"}: ${joinValues(issue2.keys, ", ")}`;
15886
+ case "invalid_key":
15887
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF \u03C3\u03C4\u03BF ${issue2.origin}`;
15888
+ case "invalid_union":
15889
+ return "\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2";
15890
+ case "invalid_element":
15891
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C4\u03B9\u03BC\u03AE \u03C3\u03C4\u03BF ${issue2.origin}`;
15892
+ default:
15893
+ return `\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2`;
15894
+ }
15895
+ };
15896
+ };
15897
+ function el_default() {
15898
+ return {
15899
+ localeError: error9()
15900
+ };
15901
+ }
15902
+
15903
+ // node_modules/zod/v4/locales/en.js
15904
+ var error10 = () => {
15645
15905
  const Sizable = {
15646
15906
  string: { unit: "characters", verb: "to have" },
15647
15907
  file: { unit: "bytes", verb: "to have" },
@@ -15735,6 +15995,10 @@ var error9 = () => {
15735
15995
  case "invalid_key":
15736
15996
  return `Invalid key in ${issue2.origin}`;
15737
15997
  case "invalid_union":
15998
+ if (issue2.options && Array.isArray(issue2.options) && issue2.options.length > 0) {
15999
+ const opts = issue2.options.map((o) => `'${o}'`).join(" | ");
16000
+ return `Invalid discriminator value. Expected ${opts}`;
16001
+ }
15738
16002
  return "Invalid input";
15739
16003
  case "invalid_element":
15740
16004
  return `Invalid value in ${issue2.origin}`;
@@ -15745,12 +16009,12 @@ var error9 = () => {
15745
16009
  };
15746
16010
  function en_default2() {
15747
16011
  return {
15748
- localeError: error9()
16012
+ localeError: error10()
15749
16013
  };
15750
16014
  }
15751
16015
 
15752
16016
  // node_modules/zod/v4/locales/eo.js
15753
- var error10 = () => {
16017
+ var error11 = () => {
15754
16018
  const Sizable = {
15755
16019
  string: { unit: "karaktrojn", verb: "havi" },
15756
16020
  file: { unit: "bajtojn", verb: "havi" },
@@ -15855,12 +16119,12 @@ var error10 = () => {
15855
16119
  };
15856
16120
  function eo_default() {
15857
16121
  return {
15858
- localeError: error10()
16122
+ localeError: error11()
15859
16123
  };
15860
16124
  }
15861
16125
 
15862
16126
  // node_modules/zod/v4/locales/es.js
15863
- var error11 = () => {
16127
+ var error12 = () => {
15864
16128
  const Sizable = {
15865
16129
  string: { unit: "caracteres", verb: "tener" },
15866
16130
  file: { unit: "bytes", verb: "tener" },
@@ -15988,12 +16252,12 @@ var error11 = () => {
15988
16252
  };
15989
16253
  function es_default() {
15990
16254
  return {
15991
- localeError: error11()
16255
+ localeError: error12()
15992
16256
  };
15993
16257
  }
15994
16258
 
15995
16259
  // node_modules/zod/v4/locales/fa.js
15996
- var error12 = () => {
16260
+ var error13 = () => {
15997
16261
  const Sizable = {
15998
16262
  string: { unit: "\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631", verb: "\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F" },
15999
16263
  file: { unit: "\u0628\u0627\u06CC\u062A", verb: "\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F" },
@@ -16103,12 +16367,12 @@ var error12 = () => {
16103
16367
  };
16104
16368
  function fa_default() {
16105
16369
  return {
16106
- localeError: error12()
16370
+ localeError: error13()
16107
16371
  };
16108
16372
  }
16109
16373
 
16110
16374
  // node_modules/zod/v4/locales/fi.js
16111
- var error13 = () => {
16375
+ var error14 = () => {
16112
16376
  const Sizable = {
16113
16377
  string: { unit: "merkki\xE4", subject: "merkkijonon" },
16114
16378
  file: { unit: "tavua", subject: "tiedoston" },
@@ -16216,12 +16480,12 @@ var error13 = () => {
16216
16480
  };
16217
16481
  function fi_default() {
16218
16482
  return {
16219
- localeError: error13()
16483
+ localeError: error14()
16220
16484
  };
16221
16485
  }
16222
16486
 
16223
16487
  // node_modules/zod/v4/locales/fr.js
16224
- var error14 = () => {
16488
+ var error15 = () => {
16225
16489
  const Sizable = {
16226
16490
  string: { unit: "caract\xE8res", verb: "avoir" },
16227
16491
  file: { unit: "octets", verb: "avoir" },
@@ -16262,9 +16526,27 @@ var error14 = () => {
16262
16526
  template_literal: "entr\xE9e"
16263
16527
  };
16264
16528
  const TypeDictionary = {
16265
- nan: "NaN",
16529
+ string: "cha\xEEne",
16266
16530
  number: "nombre",
16267
- array: "tableau"
16531
+ int: "entier",
16532
+ boolean: "bool\xE9en",
16533
+ bigint: "grand entier",
16534
+ symbol: "symbole",
16535
+ undefined: "ind\xE9fini",
16536
+ null: "null",
16537
+ never: "jamais",
16538
+ void: "vide",
16539
+ date: "date",
16540
+ array: "tableau",
16541
+ object: "objet",
16542
+ tuple: "tuple",
16543
+ record: "enregistrement",
16544
+ map: "carte",
16545
+ set: "ensemble",
16546
+ file: "fichier",
16547
+ nonoptional: "non-optionnel",
16548
+ nan: "NaN",
16549
+ function: "fonction"
16268
16550
  };
16269
16551
  return (issue2) => {
16270
16552
  switch (issue2.code) {
@@ -16285,16 +16567,15 @@ var error14 = () => {
16285
16567
  const adj = issue2.inclusive ? "<=" : "<";
16286
16568
  const sizing = getSizing(issue2.origin);
16287
16569
  if (sizing)
16288
- return `Trop grand : ${issue2.origin ?? "valeur"} doit ${sizing.verb} ${adj}${issue2.maximum.toString()} ${sizing.unit ?? "\xE9l\xE9ment(s)"}`;
16289
- return `Trop grand : ${issue2.origin ?? "valeur"} doit \xEAtre ${adj}${issue2.maximum.toString()}`;
16570
+ return `Trop grand : ${TypeDictionary[issue2.origin] ?? "valeur"} doit ${sizing.verb} ${adj}${issue2.maximum.toString()} ${sizing.unit ?? "\xE9l\xE9ment(s)"}`;
16571
+ return `Trop grand : ${TypeDictionary[issue2.origin] ?? "valeur"} doit \xEAtre ${adj}${issue2.maximum.toString()}`;
16290
16572
  }
16291
16573
  case "too_small": {
16292
16574
  const adj = issue2.inclusive ? ">=" : ">";
16293
16575
  const sizing = getSizing(issue2.origin);
16294
- if (sizing) {
16295
- return `Trop petit : ${issue2.origin} doit ${sizing.verb} ${adj}${issue2.minimum.toString()} ${sizing.unit}`;
16296
- }
16297
- return `Trop petit : ${issue2.origin} doit \xEAtre ${adj}${issue2.minimum.toString()}`;
16576
+ if (sizing)
16577
+ return `Trop petit : ${TypeDictionary[issue2.origin] ?? "valeur"} doit ${sizing.verb} ${adj}${issue2.minimum.toString()} ${sizing.unit}`;
16578
+ return `Trop petit : ${TypeDictionary[issue2.origin] ?? "valeur"} doit \xEAtre ${adj}${issue2.minimum.toString()}`;
16298
16579
  }
16299
16580
  case "invalid_format": {
16300
16581
  const _issue = issue2;
@@ -16325,12 +16606,12 @@ var error14 = () => {
16325
16606
  };
16326
16607
  function fr_default() {
16327
16608
  return {
16328
- localeError: error14()
16609
+ localeError: error15()
16329
16610
  };
16330
16611
  }
16331
16612
 
16332
16613
  // node_modules/zod/v4/locales/fr-CA.js
16333
- var error15 = () => {
16614
+ var error16 = () => {
16334
16615
  const Sizable = {
16335
16616
  string: { unit: "caract\xE8res", verb: "avoir" },
16336
16617
  file: { unit: "octets", verb: "avoir" },
@@ -16433,12 +16714,12 @@ var error15 = () => {
16433
16714
  };
16434
16715
  function fr_CA_default() {
16435
16716
  return {
16436
- localeError: error15()
16717
+ localeError: error16()
16437
16718
  };
16438
16719
  }
16439
16720
 
16440
16721
  // node_modules/zod/v4/locales/he.js
16441
- var error16 = () => {
16722
+ var error17 = () => {
16442
16723
  const TypeNames = {
16443
16724
  string: { label: "\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA", gender: "f" },
16444
16725
  number: { label: "\u05DE\u05E1\u05E4\u05E8", gender: "m" },
@@ -16628,23 +16909,146 @@ var error16 = () => {
16628
16909
  };
16629
16910
  function he_default() {
16630
16911
  return {
16631
- localeError: error16()
16912
+ localeError: error17()
16632
16913
  };
16633
16914
  }
16634
16915
 
16635
- // node_modules/zod/v4/locales/hu.js
16636
- var error17 = () => {
16916
+ // node_modules/zod/v4/locales/hr.js
16917
+ var error18 = () => {
16637
16918
  const Sizable = {
16638
- string: { unit: "karakter", verb: "legyen" },
16639
- file: { unit: "byte", verb: "legyen" },
16640
- array: { unit: "elem", verb: "legyen" },
16641
- set: { unit: "elem", verb: "legyen" }
16919
+ string: { unit: "znakova", verb: "imati" },
16920
+ file: { unit: "bajtova", verb: "imati" },
16921
+ array: { unit: "stavki", verb: "imati" },
16922
+ set: { unit: "stavki", verb: "imati" }
16642
16923
  };
16643
16924
  function getSizing(origin) {
16644
16925
  return Sizable[origin] ?? null;
16645
16926
  }
16646
16927
  const FormatDictionary = {
16647
- regex: "bemenet",
16928
+ regex: "unos",
16929
+ email: "email adresa",
16930
+ url: "URL",
16931
+ emoji: "emoji",
16932
+ uuid: "UUID",
16933
+ uuidv4: "UUIDv4",
16934
+ uuidv6: "UUIDv6",
16935
+ nanoid: "nanoid",
16936
+ guid: "GUID",
16937
+ cuid: "cuid",
16938
+ cuid2: "cuid2",
16939
+ ulid: "ULID",
16940
+ xid: "XID",
16941
+ ksuid: "KSUID",
16942
+ datetime: "ISO datum i vrijeme",
16943
+ date: "ISO datum",
16944
+ time: "ISO vrijeme",
16945
+ duration: "ISO trajanje",
16946
+ ipv4: "IPv4 adresa",
16947
+ ipv6: "IPv6 adresa",
16948
+ cidrv4: "IPv4 raspon",
16949
+ cidrv6: "IPv6 raspon",
16950
+ base64: "base64 kodirani tekst",
16951
+ base64url: "base64url kodirani tekst",
16952
+ json_string: "JSON tekst",
16953
+ e164: "E.164 broj",
16954
+ jwt: "JWT",
16955
+ template_literal: "unos"
16956
+ };
16957
+ const TypeDictionary = {
16958
+ nan: "NaN",
16959
+ string: "tekst",
16960
+ number: "broj",
16961
+ boolean: "boolean",
16962
+ array: "niz",
16963
+ object: "objekt",
16964
+ set: "skup",
16965
+ file: "datoteka",
16966
+ date: "datum",
16967
+ bigint: "bigint",
16968
+ symbol: "simbol",
16969
+ undefined: "undefined",
16970
+ null: "null",
16971
+ function: "funkcija",
16972
+ map: "mapa"
16973
+ };
16974
+ return (issue2) => {
16975
+ switch (issue2.code) {
16976
+ case "invalid_type": {
16977
+ const expected = TypeDictionary[issue2.expected] ?? issue2.expected;
16978
+ const receivedType = parsedType(issue2.input);
16979
+ const received = TypeDictionary[receivedType] ?? receivedType;
16980
+ if (/^[A-Z]/.test(issue2.expected)) {
16981
+ return `Neispravan unos: o\u010Dekuje se instanceof ${issue2.expected}, a primljeno je ${received}`;
16982
+ }
16983
+ return `Neispravan unos: o\u010Dekuje se ${expected}, a primljeno je ${received}`;
16984
+ }
16985
+ case "invalid_value":
16986
+ if (issue2.values.length === 1)
16987
+ return `Neispravna vrijednost: o\u010Dekivano ${stringifyPrimitive(issue2.values[0])}`;
16988
+ return `Neispravna opcija: o\u010Dekivano jedno od ${joinValues(issue2.values, "|")}`;
16989
+ case "too_big": {
16990
+ const adj = issue2.inclusive ? "<=" : "<";
16991
+ const sizing = getSizing(issue2.origin);
16992
+ const origin = TypeDictionary[issue2.origin] ?? issue2.origin;
16993
+ if (sizing)
16994
+ return `Preveliko: o\u010Dekivano da ${origin ?? "vrijednost"} ima ${adj}${issue2.maximum.toString()} ${sizing.unit ?? "elemenata"}`;
16995
+ return `Preveliko: o\u010Dekivano da ${origin ?? "vrijednost"} bude ${adj}${issue2.maximum.toString()}`;
16996
+ }
16997
+ case "too_small": {
16998
+ const adj = issue2.inclusive ? ">=" : ">";
16999
+ const sizing = getSizing(issue2.origin);
17000
+ const origin = TypeDictionary[issue2.origin] ?? issue2.origin;
17001
+ if (sizing) {
17002
+ return `Premalo: o\u010Dekivano da ${origin} ima ${adj}${issue2.minimum.toString()} ${sizing.unit}`;
17003
+ }
17004
+ return `Premalo: o\u010Dekivano da ${origin} bude ${adj}${issue2.minimum.toString()}`;
17005
+ }
17006
+ case "invalid_format": {
17007
+ const _issue = issue2;
17008
+ if (_issue.format === "starts_with")
17009
+ return `Neispravan tekst: mora zapo\u010Dinjati s "${_issue.prefix}"`;
17010
+ if (_issue.format === "ends_with")
17011
+ return `Neispravan tekst: mora zavr\u0161avati s "${_issue.suffix}"`;
17012
+ if (_issue.format === "includes")
17013
+ return `Neispravan tekst: mora sadr\u017Eavati "${_issue.includes}"`;
17014
+ if (_issue.format === "regex")
17015
+ return `Neispravan tekst: mora odgovarati uzorku ${_issue.pattern}`;
17016
+ return `Neispravna ${FormatDictionary[_issue.format] ?? issue2.format}`;
17017
+ }
17018
+ case "not_multiple_of":
17019
+ return `Neispravan broj: mora biti vi\u0161ekratnik od ${issue2.divisor}`;
17020
+ case "unrecognized_keys":
17021
+ return `Neprepoznat${issue2.keys.length > 1 ? "i klju\u010Devi" : " klju\u010D"}: ${joinValues(issue2.keys, ", ")}`;
17022
+ case "invalid_key":
17023
+ return `Neispravan klju\u010D u ${TypeDictionary[issue2.origin] ?? issue2.origin}`;
17024
+ case "invalid_union":
17025
+ return "Neispravan unos";
17026
+ case "invalid_element":
17027
+ return `Neispravna vrijednost u ${TypeDictionary[issue2.origin] ?? issue2.origin}`;
17028
+ default:
17029
+ return `Neispravan unos`;
17030
+ }
17031
+ };
17032
+ };
17033
+ function hr_default() {
17034
+ return {
17035
+ localeError: error18()
17036
+ };
17037
+ }
17038
+
17039
+ // node_modules/zod/v4/locales/hu.js
17040
+ var error19 = () => {
17041
+ const Sizable = {
17042
+ string: { unit: "karakter", verb: "legyen" },
17043
+ file: { unit: "byte", verb: "legyen" },
17044
+ array: { unit: "elem", verb: "legyen" },
17045
+ set: { unit: "elem", verb: "legyen" }
17046
+ };
17047
+ function getSizing(origin) {
17048
+ return Sizable[origin] ?? null;
17049
+ }
17050
+ const FormatDictionary = {
17051
+ regex: "bemenet",
16648
17052
  email: "email c\xEDm",
16649
17053
  url: "URL",
16650
17054
  emoji: "emoji",
@@ -16737,7 +17141,7 @@ var error17 = () => {
16737
17141
  };
16738
17142
  function hu_default() {
16739
17143
  return {
16740
- localeError: error17()
17144
+ localeError: error19()
16741
17145
  };
16742
17146
  }
16743
17147
 
@@ -16752,7 +17156,7 @@ function withDefiniteArticle(word) {
16752
17156
  const lastChar = word[word.length - 1];
16753
17157
  return word + (vowels.includes(lastChar) ? "\u0576" : "\u0568");
16754
17158
  }
16755
- var error18 = () => {
17159
+ var error20 = () => {
16756
17160
  const Sizable = {
16757
17161
  string: {
16758
17162
  unit: {
@@ -16885,12 +17289,12 @@ var error18 = () => {
16885
17289
  };
16886
17290
  function hy_default() {
16887
17291
  return {
16888
- localeError: error18()
17292
+ localeError: error20()
16889
17293
  };
16890
17294
  }
16891
17295
 
16892
17296
  // node_modules/zod/v4/locales/id.js
16893
- var error19 = () => {
17297
+ var error21 = () => {
16894
17298
  const Sizable = {
16895
17299
  string: { unit: "karakter", verb: "memiliki" },
16896
17300
  file: { unit: "byte", verb: "memiliki" },
@@ -16992,12 +17396,12 @@ var error19 = () => {
16992
17396
  };
16993
17397
  function id_default() {
16994
17398
  return {
16995
- localeError: error19()
17399
+ localeError: error21()
16996
17400
  };
16997
17401
  }
16998
17402
 
16999
17403
  // node_modules/zod/v4/locales/is.js
17000
- var error20 = () => {
17404
+ var error22 = () => {
17001
17405
  const Sizable = {
17002
17406
  string: { unit: "stafi", verb: "a\xF0 hafa" },
17003
17407
  file: { unit: "b\xE6ti", verb: "a\xF0 hafa" },
@@ -17102,12 +17506,12 @@ var error20 = () => {
17102
17506
  };
17103
17507
  function is_default() {
17104
17508
  return {
17105
- localeError: error20()
17509
+ localeError: error22()
17106
17510
  };
17107
17511
  }
17108
17512
 
17109
17513
  // node_modules/zod/v4/locales/it.js
17110
- var error21 = () => {
17514
+ var error23 = () => {
17111
17515
  const Sizable = {
17112
17516
  string: { unit: "caratteri", verb: "avere" },
17113
17517
  file: { unit: "byte", verb: "avere" },
@@ -17192,7 +17596,7 @@ var error21 = () => {
17192
17596
  return `Stringa non valida: deve includere "${_issue.includes}"`;
17193
17597
  if (_issue.format === "regex")
17194
17598
  return `Stringa non valida: deve corrispondere al pattern ${_issue.pattern}`;
17195
- return `Invalid ${FormatDictionary[_issue.format] ?? issue2.format}`;
17599
+ return `Input non valido: ${FormatDictionary[_issue.format] ?? issue2.format}`;
17196
17600
  }
17197
17601
  case "not_multiple_of":
17198
17602
  return `Numero non valido: deve essere un multiplo di ${issue2.divisor}`;
@@ -17211,12 +17615,12 @@ var error21 = () => {
17211
17615
  };
17212
17616
  function it_default() {
17213
17617
  return {
17214
- localeError: error21()
17618
+ localeError: error23()
17215
17619
  };
17216
17620
  }
17217
17621
 
17218
17622
  // node_modules/zod/v4/locales/ja.js
17219
- var error22 = () => {
17623
+ var error24 = () => {
17220
17624
  const Sizable = {
17221
17625
  string: { unit: "\u6587\u5B57", verb: "\u3067\u3042\u308B" },
17222
17626
  file: { unit: "\u30D0\u30A4\u30C8", verb: "\u3067\u3042\u308B" },
@@ -17319,12 +17723,12 @@ var error22 = () => {
17319
17723
  };
17320
17724
  function ja_default() {
17321
17725
  return {
17322
- localeError: error22()
17726
+ localeError: error24()
17323
17727
  };
17324
17728
  }
17325
17729
 
17326
17730
  // node_modules/zod/v4/locales/ka.js
17327
- var error23 = () => {
17731
+ var error25 = () => {
17328
17732
  const Sizable = {
17329
17733
  string: { unit: "\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD", verb: "\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1" },
17330
17734
  file: { unit: "\u10D1\u10D0\u10D8\u10E2\u10D8", verb: "\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1" },
@@ -17357,9 +17761,9 @@ var error23 = () => {
17357
17761
  ipv6: "IPv6 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",
17358
17762
  cidrv4: "IPv4 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",
17359
17763
  cidrv6: "IPv6 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",
17360
- base64: "base64-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",
17361
- base64url: "base64url-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",
17362
- json_string: "JSON \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",
17764
+ base64: "base64-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",
17765
+ base64url: "base64url-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",
17766
+ json_string: "JSON \u10D5\u10D4\u10DA\u10D8",
17363
17767
  e164: "E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",
17364
17768
  jwt: "JWT",
17365
17769
  template_literal: "\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"
@@ -17367,7 +17771,7 @@ var error23 = () => {
17367
17771
  const TypeDictionary = {
17368
17772
  nan: "NaN",
17369
17773
  number: "\u10E0\u10D8\u10EA\u10EE\u10D5\u10D8",
17370
- string: "\u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8",
17774
+ string: "\u10D5\u10D4\u10DA\u10D8",
17371
17775
  boolean: "\u10D1\u10E3\u10DA\u10D4\u10D0\u10DC\u10D8",
17372
17776
  function: "\u10E4\u10E3\u10DC\u10E5\u10EA\u10D8\u10D0",
17373
17777
  array: "\u10DB\u10D0\u10E1\u10D8\u10D5\u10D8"
@@ -17405,14 +17809,14 @@ var error23 = () => {
17405
17809
  case "invalid_format": {
17406
17810
  const _issue = issue2;
17407
17811
  if (_issue.format === "starts_with") {
17408
- return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10EC\u10E7\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${_issue.prefix}"-\u10D8\u10D7`;
17812
+ return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10EC\u10E7\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${_issue.prefix}"-\u10D8\u10D7`;
17409
17813
  }
17410
17814
  if (_issue.format === "ends_with")
17411
- return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10DB\u10D7\u10D0\u10D5\u10E0\u10D3\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${_issue.suffix}"-\u10D8\u10D7`;
17815
+ return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10DB\u10D7\u10D0\u10D5\u10E0\u10D3\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${_issue.suffix}"-\u10D8\u10D7`;
17412
17816
  if (_issue.format === "includes")
17413
- return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1 "${_issue.includes}"-\u10E1`;
17817
+ return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1 "${_issue.includes}"-\u10E1`;
17414
17818
  if (_issue.format === "regex")
17415
- return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E1\u10E2\u10E0\u10D8\u10DC\u10D2\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D4\u10E1\u10D0\u10D1\u10D0\u10DB\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 \u10E8\u10D0\u10D1\u10DA\u10DD\u10DC\u10E1 ${_issue.pattern}`;
17819
+ return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D4\u10E1\u10D0\u10D1\u10D0\u10DB\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 \u10E8\u10D0\u10D1\u10DA\u10DD\u10DC\u10E1 ${_issue.pattern}`;
17416
17820
  return `\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 ${FormatDictionary[_issue.format] ?? issue2.format}`;
17417
17821
  }
17418
17822
  case "not_multiple_of":
@@ -17432,12 +17836,12 @@ var error23 = () => {
17432
17836
  };
17433
17837
  function ka_default() {
17434
17838
  return {
17435
- localeError: error23()
17839
+ localeError: error25()
17436
17840
  };
17437
17841
  }
17438
17842
 
17439
17843
  // node_modules/zod/v4/locales/km.js
17440
- var error24 = () => {
17844
+ var error26 = () => {
17441
17845
  const Sizable = {
17442
17846
  string: { unit: "\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A", verb: "\u1782\u17BD\u179A\u1798\u17B6\u1793" },
17443
17847
  file: { unit: "\u1794\u17C3", verb: "\u1782\u17BD\u179A\u1798\u17B6\u1793" },
@@ -17543,7 +17947,7 @@ var error24 = () => {
17543
17947
  };
17544
17948
  function km_default() {
17545
17949
  return {
17546
- localeError: error24()
17950
+ localeError: error26()
17547
17951
  };
17548
17952
  }
17549
17953
 
@@ -17553,7 +17957,7 @@ function kh_default() {
17553
17957
  }
17554
17958
 
17555
17959
  // node_modules/zod/v4/locales/ko.js
17556
- var error25 = () => {
17960
+ var error27 = () => {
17557
17961
  const Sizable = {
17558
17962
  string: { unit: "\uBB38\uC790", verb: "to have" },
17559
17963
  file: { unit: "\uBC14\uC774\uD2B8", verb: "to have" },
@@ -17660,7 +18064,7 @@ var error25 = () => {
17660
18064
  };
17661
18065
  function ko_default() {
17662
18066
  return {
17663
- localeError: error25()
18067
+ localeError: error27()
17664
18068
  };
17665
18069
  }
17666
18070
 
@@ -17678,7 +18082,7 @@ function getUnitTypeFromNumber(number4) {
17678
18082
  return "one";
17679
18083
  return "few";
17680
18084
  }
17681
- var error26 = () => {
18085
+ var error28 = () => {
17682
18086
  const Sizable = {
17683
18087
  string: {
17684
18088
  unit: {
@@ -17864,12 +18268,12 @@ var error26 = () => {
17864
18268
  };
17865
18269
  function lt_default() {
17866
18270
  return {
17867
- localeError: error26()
18271
+ localeError: error28()
17868
18272
  };
17869
18273
  }
17870
18274
 
17871
18275
  // node_modules/zod/v4/locales/mk.js
17872
- var error27 = () => {
18276
+ var error29 = () => {
17873
18277
  const Sizable = {
17874
18278
  string: { unit: "\u0437\u043D\u0430\u0446\u0438", verb: "\u0434\u0430 \u0438\u043C\u0430\u0430\u0442" },
17875
18279
  file: { unit: "\u0431\u0430\u0458\u0442\u0438", verb: "\u0434\u0430 \u0438\u043C\u0430\u0430\u0442" },
@@ -17974,12 +18378,12 @@ var error27 = () => {
17974
18378
  };
17975
18379
  function mk_default() {
17976
18380
  return {
17977
- localeError: error27()
18381
+ localeError: error29()
17978
18382
  };
17979
18383
  }
17980
18384
 
17981
18385
  // node_modules/zod/v4/locales/ms.js
17982
- var error28 = () => {
18386
+ var error30 = () => {
17983
18387
  const Sizable = {
17984
18388
  string: { unit: "aksara", verb: "mempunyai" },
17985
18389
  file: { unit: "bait", verb: "mempunyai" },
@@ -18082,12 +18486,12 @@ var error28 = () => {
18082
18486
  };
18083
18487
  function ms_default() {
18084
18488
  return {
18085
- localeError: error28()
18489
+ localeError: error30()
18086
18490
  };
18087
18491
  }
18088
18492
 
18089
18493
  // node_modules/zod/v4/locales/nl.js
18090
- var error29 = () => {
18494
+ var error31 = () => {
18091
18495
  const Sizable = {
18092
18496
  string: { unit: "tekens", verb: "heeft" },
18093
18497
  file: { unit: "bytes", verb: "heeft" },
@@ -18193,12 +18597,12 @@ var error29 = () => {
18193
18597
  };
18194
18598
  function nl_default() {
18195
18599
  return {
18196
- localeError: error29()
18600
+ localeError: error31()
18197
18601
  };
18198
18602
  }
18199
18603
 
18200
18604
  // node_modules/zod/v4/locales/no.js
18201
- var error30 = () => {
18605
+ var error32 = () => {
18202
18606
  const Sizable = {
18203
18607
  string: { unit: "tegn", verb: "\xE5 ha" },
18204
18608
  file: { unit: "bytes", verb: "\xE5 ha" },
@@ -18302,12 +18706,12 @@ var error30 = () => {
18302
18706
  };
18303
18707
  function no_default() {
18304
18708
  return {
18305
- localeError: error30()
18709
+ localeError: error32()
18306
18710
  };
18307
18711
  }
18308
18712
 
18309
18713
  // node_modules/zod/v4/locales/ota.js
18310
- var error31 = () => {
18714
+ var error33 = () => {
18311
18715
  const Sizable = {
18312
18716
  string: { unit: "harf", verb: "olmal\u0131d\u0131r" },
18313
18717
  file: { unit: "bayt", verb: "olmal\u0131d\u0131r" },
@@ -18412,12 +18816,12 @@ var error31 = () => {
18412
18816
  };
18413
18817
  function ota_default() {
18414
18818
  return {
18415
- localeError: error31()
18819
+ localeError: error33()
18416
18820
  };
18417
18821
  }
18418
18822
 
18419
18823
  // node_modules/zod/v4/locales/ps.js
18420
- var error32 = () => {
18824
+ var error34 = () => {
18421
18825
  const Sizable = {
18422
18826
  string: { unit: "\u062A\u0648\u06A9\u064A", verb: "\u0648\u0644\u0631\u064A" },
18423
18827
  file: { unit: "\u0628\u0627\u06CC\u067C\u0633", verb: "\u0648\u0644\u0631\u064A" },
@@ -18527,12 +18931,12 @@ var error32 = () => {
18527
18931
  };
18528
18932
  function ps_default() {
18529
18933
  return {
18530
- localeError: error32()
18934
+ localeError: error34()
18531
18935
  };
18532
18936
  }
18533
18937
 
18534
18938
  // node_modules/zod/v4/locales/pl.js
18535
- var error33 = () => {
18939
+ var error35 = () => {
18536
18940
  const Sizable = {
18537
18941
  string: { unit: "znak\xF3w", verb: "mie\u0107" },
18538
18942
  file: { unit: "bajt\xF3w", verb: "mie\u0107" },
@@ -18637,12 +19041,12 @@ var error33 = () => {
18637
19041
  };
18638
19042
  function pl_default() {
18639
19043
  return {
18640
- localeError: error33()
19044
+ localeError: error35()
18641
19045
  };
18642
19046
  }
18643
19047
 
18644
19048
  // node_modules/zod/v4/locales/pt.js
18645
- var error34 = () => {
19049
+ var error36 = () => {
18646
19050
  const Sizable = {
18647
19051
  string: { unit: "caracteres", verb: "ter" },
18648
19052
  file: { unit: "bytes", verb: "ter" },
@@ -18746,7 +19150,127 @@ var error34 = () => {
18746
19150
  };
18747
19151
  function pt_default() {
18748
19152
  return {
18749
- localeError: error34()
19153
+ localeError: error36()
19154
+ };
19155
+ }
19156
+
19157
+ // node_modules/zod/v4/locales/ro.js
19158
+ var error37 = () => {
19159
+ const Sizable = {
19160
+ string: { unit: "caractere", verb: "s\u0103 aib\u0103" },
19161
+ file: { unit: "octe\u021Bi", verb: "s\u0103 aib\u0103" },
19162
+ array: { unit: "elemente", verb: "s\u0103 aib\u0103" },
19163
+ set: { unit: "elemente", verb: "s\u0103 aib\u0103" },
19164
+ map: { unit: "intr\u0103ri", verb: "s\u0103 aib\u0103" }
19165
+ };
19166
+ function getSizing(origin) {
19167
+ return Sizable[origin] ?? null;
19168
+ }
19169
+ const FormatDictionary = {
19170
+ regex: "intrare",
19171
+ email: "adres\u0103 de email",
19172
+ url: "URL",
19173
+ emoji: "emoji",
19174
+ uuid: "UUID",
19175
+ uuidv4: "UUIDv4",
19176
+ uuidv6: "UUIDv6",
19177
+ nanoid: "nanoid",
19178
+ guid: "GUID",
19179
+ cuid: "cuid",
19180
+ cuid2: "cuid2",
19181
+ ulid: "ULID",
19182
+ xid: "XID",
19183
+ ksuid: "KSUID",
19184
+ datetime: "dat\u0103 \u0219i or\u0103 ISO",
19185
+ date: "dat\u0103 ISO",
19186
+ time: "or\u0103 ISO",
19187
+ duration: "durat\u0103 ISO",
19188
+ ipv4: "adres\u0103 IPv4",
19189
+ ipv6: "adres\u0103 IPv6",
19190
+ mac: "adres\u0103 MAC",
19191
+ cidrv4: "interval IPv4",
19192
+ cidrv6: "interval IPv6",
19193
+ base64: "\u0219ir codat base64",
19194
+ base64url: "\u0219ir codat base64url",
19195
+ json_string: "\u0219ir JSON",
19196
+ e164: "num\u0103r E.164",
19197
+ jwt: "JWT",
19198
+ template_literal: "intrare"
19199
+ };
19200
+ const TypeDictionary = {
19201
+ nan: "NaN",
19202
+ string: "\u0219ir",
19203
+ number: "num\u0103r",
19204
+ boolean: "boolean",
19205
+ function: "func\u021Bie",
19206
+ array: "matrice",
19207
+ object: "obiect",
19208
+ undefined: "nedefinit",
19209
+ symbol: "simbol",
19210
+ bigint: "num\u0103r mare",
19211
+ void: "void",
19212
+ never: "never",
19213
+ map: "hart\u0103",
19214
+ set: "set"
19215
+ };
19216
+ return (issue2) => {
19217
+ switch (issue2.code) {
19218
+ case "invalid_type": {
19219
+ const expected = TypeDictionary[issue2.expected] ?? issue2.expected;
19220
+ const receivedType = parsedType(issue2.input);
19221
+ const received = TypeDictionary[receivedType] ?? receivedType;
19222
+ return `Intrare invalid\u0103: a\u0219teptat ${expected}, primit ${received}`;
19223
+ }
19224
+ case "invalid_value":
19225
+ if (issue2.values.length === 1)
19226
+ return `Intrare invalid\u0103: a\u0219teptat ${stringifyPrimitive(issue2.values[0])}`;
19227
+ return `Op\u021Biune invalid\u0103: a\u0219teptat una dintre ${joinValues(issue2.values, "|")}`;
19228
+ case "too_big": {
19229
+ const adj = issue2.inclusive ? "<=" : "<";
19230
+ const sizing = getSizing(issue2.origin);
19231
+ if (sizing)
19232
+ return `Prea mare: a\u0219teptat ca ${issue2.origin ?? "valoarea"} ${sizing.verb} ${adj}${issue2.maximum.toString()} ${sizing.unit ?? "elemente"}`;
19233
+ return `Prea mare: a\u0219teptat ca ${issue2.origin ?? "valoarea"} s\u0103 fie ${adj}${issue2.maximum.toString()}`;
19234
+ }
19235
+ case "too_small": {
19236
+ const adj = issue2.inclusive ? ">=" : ">";
19237
+ const sizing = getSizing(issue2.origin);
19238
+ if (sizing) {
19239
+ return `Prea mic: a\u0219teptat ca ${issue2.origin} ${sizing.verb} ${adj}${issue2.minimum.toString()} ${sizing.unit}`;
19240
+ }
19241
+ return `Prea mic: a\u0219teptat ca ${issue2.origin} s\u0103 fie ${adj}${issue2.minimum.toString()}`;
19242
+ }
19243
+ case "invalid_format": {
19244
+ const _issue = issue2;
19245
+ if (_issue.format === "starts_with") {
19246
+ return `\u0218ir invalid: trebuie s\u0103 \xEEnceap\u0103 cu "${_issue.prefix}"`;
19247
+ }
19248
+ if (_issue.format === "ends_with")
19249
+ return `\u0218ir invalid: trebuie s\u0103 se termine cu "${_issue.suffix}"`;
19250
+ if (_issue.format === "includes")
19251
+ return `\u0218ir invalid: trebuie s\u0103 includ\u0103 "${_issue.includes}"`;
19252
+ if (_issue.format === "regex")
19253
+ return `\u0218ir invalid: trebuie s\u0103 se potriveasc\u0103 cu modelul ${_issue.pattern}`;
19254
+ return `Format invalid: ${FormatDictionary[_issue.format] ?? issue2.format}`;
19255
+ }
19256
+ case "not_multiple_of":
19257
+ return `Num\u0103r invalid: trebuie s\u0103 fie multiplu de ${issue2.divisor}`;
19258
+ case "unrecognized_keys":
19259
+ return `Chei nerecunoscute: ${joinValues(issue2.keys, ", ")}`;
19260
+ case "invalid_key":
19261
+ return `Cheie invalid\u0103 \xEEn ${issue2.origin}`;
19262
+ case "invalid_union":
19263
+ return "Intrare invalid\u0103";
19264
+ case "invalid_element":
19265
+ return `Valoare invalid\u0103 \xEEn ${issue2.origin}`;
19266
+ default:
19267
+ return `Intrare invalid\u0103`;
19268
+ }
19269
+ };
19270
+ };
19271
+ function ro_default() {
19272
+ return {
19273
+ localeError: error37()
18750
19274
  };
18751
19275
  }
18752
19276
 
@@ -18766,7 +19290,7 @@ function getRussianPlural(count, one, few, many) {
18766
19290
  }
18767
19291
  return many;
18768
19292
  }
18769
- var error35 = () => {
19293
+ var error38 = () => {
18770
19294
  const Sizable = {
18771
19295
  string: {
18772
19296
  unit: {
@@ -18903,12 +19427,12 @@ var error35 = () => {
18903
19427
  };
18904
19428
  function ru_default() {
18905
19429
  return {
18906
- localeError: error35()
19430
+ localeError: error38()
18907
19431
  };
18908
19432
  }
18909
19433
 
18910
19434
  // node_modules/zod/v4/locales/sl.js
18911
- var error36 = () => {
19435
+ var error39 = () => {
18912
19436
  const Sizable = {
18913
19437
  string: { unit: "znakov", verb: "imeti" },
18914
19438
  file: { unit: "bajtov", verb: "imeti" },
@@ -19013,12 +19537,12 @@ var error36 = () => {
19013
19537
  };
19014
19538
  function sl_default() {
19015
19539
  return {
19016
- localeError: error36()
19540
+ localeError: error39()
19017
19541
  };
19018
19542
  }
19019
19543
 
19020
19544
  // node_modules/zod/v4/locales/sv.js
19021
- var error37 = () => {
19545
+ var error40 = () => {
19022
19546
  const Sizable = {
19023
19547
  string: { unit: "tecken", verb: "att ha" },
19024
19548
  file: { unit: "bytes", verb: "att ha" },
@@ -19124,12 +19648,12 @@ var error37 = () => {
19124
19648
  };
19125
19649
  function sv_default() {
19126
19650
  return {
19127
- localeError: error37()
19651
+ localeError: error40()
19128
19652
  };
19129
19653
  }
19130
19654
 
19131
19655
  // node_modules/zod/v4/locales/ta.js
19132
- var error38 = () => {
19656
+ var error41 = () => {
19133
19657
  const Sizable = {
19134
19658
  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" },
19135
19659
  file: { unit: "\u0BAA\u0BC8\u0B9F\u0BCD\u0B9F\u0BC1\u0B95\u0BB3\u0BCD", verb: "\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD" },
@@ -19235,12 +19759,12 @@ var error38 = () => {
19235
19759
  };
19236
19760
  function ta_default() {
19237
19761
  return {
19238
- localeError: error38()
19762
+ localeError: error41()
19239
19763
  };
19240
19764
  }
19241
19765
 
19242
19766
  // node_modules/zod/v4/locales/th.js
19243
- var error39 = () => {
19767
+ var error42 = () => {
19244
19768
  const Sizable = {
19245
19769
  string: { unit: "\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
19246
19770
  file: { unit: "\u0E44\u0E1A\u0E15\u0E4C", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
@@ -19346,12 +19870,12 @@ var error39 = () => {
19346
19870
  };
19347
19871
  function th_default() {
19348
19872
  return {
19349
- localeError: error39()
19873
+ localeError: error42()
19350
19874
  };
19351
19875
  }
19352
19876
 
19353
19877
  // node_modules/zod/v4/locales/tr.js
19354
- var error40 = () => {
19878
+ var error43 = () => {
19355
19879
  const Sizable = {
19356
19880
  string: { unit: "karakter", verb: "olmal\u0131" },
19357
19881
  file: { unit: "bayt", verb: "olmal\u0131" },
@@ -19452,12 +19976,12 @@ var error40 = () => {
19452
19976
  };
19453
19977
  function tr_default() {
19454
19978
  return {
19455
- localeError: error40()
19979
+ localeError: error43()
19456
19980
  };
19457
19981
  }
19458
19982
 
19459
19983
  // node_modules/zod/v4/locales/uk.js
19460
- var error41 = () => {
19984
+ var error44 = () => {
19461
19985
  const Sizable = {
19462
19986
  string: { unit: "\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432", verb: "\u043C\u0430\u0442\u0438\u043C\u0435" },
19463
19987
  file: { unit: "\u0431\u0430\u0439\u0442\u0456\u0432", verb: "\u043C\u0430\u0442\u0438\u043C\u0435" },
@@ -19561,7 +20085,7 @@ var error41 = () => {
19561
20085
  };
19562
20086
  function uk_default() {
19563
20087
  return {
19564
- localeError: error41()
20088
+ localeError: error44()
19565
20089
  };
19566
20090
  }
19567
20091
 
@@ -19571,7 +20095,7 @@ function ua_default() {
19571
20095
  }
19572
20096
 
19573
20097
  // node_modules/zod/v4/locales/ur.js
19574
- var error42 = () => {
20098
+ var error45 = () => {
19575
20099
  const Sizable = {
19576
20100
  string: { unit: "\u062D\u0631\u0648\u0641", verb: "\u06C1\u0648\u0646\u0627" },
19577
20101
  file: { unit: "\u0628\u0627\u0626\u0679\u0633", verb: "\u06C1\u0648\u0646\u0627" },
@@ -19677,17 +20201,18 @@ var error42 = () => {
19677
20201
  };
19678
20202
  function ur_default() {
19679
20203
  return {
19680
- localeError: error42()
20204
+ localeError: error45()
19681
20205
  };
19682
20206
  }
19683
20207
 
19684
20208
  // node_modules/zod/v4/locales/uz.js
19685
- var error43 = () => {
20209
+ var error46 = () => {
19686
20210
  const Sizable = {
19687
20211
  string: { unit: "belgi", verb: "bo\u2018lishi kerak" },
19688
20212
  file: { unit: "bayt", verb: "bo\u2018lishi kerak" },
19689
20213
  array: { unit: "element", verb: "bo\u2018lishi kerak" },
19690
- set: { unit: "element", verb: "bo\u2018lishi kerak" }
20214
+ set: { unit: "element", verb: "bo\u2018lishi kerak" },
20215
+ map: { unit: "yozuv", verb: "bo\u2018lishi kerak" }
19691
20216
  };
19692
20217
  function getSizing(origin) {
19693
20218
  return Sizable[origin] ?? null;
@@ -19787,12 +20312,12 @@ var error43 = () => {
19787
20312
  };
19788
20313
  function uz_default() {
19789
20314
  return {
19790
- localeError: error43()
20315
+ localeError: error46()
19791
20316
  };
19792
20317
  }
19793
20318
 
19794
20319
  // node_modules/zod/v4/locales/vi.js
19795
- var error44 = () => {
20320
+ var error47 = () => {
19796
20321
  const Sizable = {
19797
20322
  string: { unit: "k\xFD t\u1EF1", verb: "c\xF3" },
19798
20323
  file: { unit: "byte", verb: "c\xF3" },
@@ -19896,12 +20421,12 @@ var error44 = () => {
19896
20421
  };
19897
20422
  function vi_default() {
19898
20423
  return {
19899
- localeError: error44()
20424
+ localeError: error47()
19900
20425
  };
19901
20426
  }
19902
20427
 
19903
20428
  // node_modules/zod/v4/locales/zh-CN.js
19904
- var error45 = () => {
20429
+ var error48 = () => {
19905
20430
  const Sizable = {
19906
20431
  string: { unit: "\u5B57\u7B26", verb: "\u5305\u542B" },
19907
20432
  file: { unit: "\u5B57\u8282", verb: "\u5305\u542B" },
@@ -20006,12 +20531,12 @@ var error45 = () => {
20006
20531
  };
20007
20532
  function zh_CN_default() {
20008
20533
  return {
20009
- localeError: error45()
20534
+ localeError: error48()
20010
20535
  };
20011
20536
  }
20012
20537
 
20013
20538
  // node_modules/zod/v4/locales/zh-TW.js
20014
- var error46 = () => {
20539
+ var error49 = () => {
20015
20540
  const Sizable = {
20016
20541
  string: { unit: "\u5B57\u5143", verb: "\u64C1\u6709" },
20017
20542
  file: { unit: "\u4F4D\u5143\u7D44", verb: "\u64C1\u6709" },
@@ -20114,12 +20639,12 @@ var error46 = () => {
20114
20639
  };
20115
20640
  function zh_TW_default() {
20116
20641
  return {
20117
- localeError: error46()
20642
+ localeError: error49()
20118
20643
  };
20119
20644
  }
20120
20645
 
20121
20646
  // node_modules/zod/v4/locales/yo.js
20122
- var error47 = () => {
20647
+ var error50 = () => {
20123
20648
  const Sizable = {
20124
20649
  string: { unit: "\xE0mi", verb: "n\xED" },
20125
20650
  file: { unit: "bytes", verb: "n\xED" },
@@ -20222,12 +20747,12 @@ var error47 = () => {
20222
20747
  };
20223
20748
  function yo_default() {
20224
20749
  return {
20225
- localeError: error47()
20750
+ localeError: error50()
20226
20751
  };
20227
20752
  }
20228
20753
 
20229
20754
  // node_modules/zod/v4/core/registries.js
20230
- var _a;
20755
+ var _a2;
20231
20756
  var $output = /* @__PURE__ */ Symbol("ZodOutput");
20232
20757
  var $input = /* @__PURE__ */ Symbol("ZodInput");
20233
20758
  var $ZodRegistry = class {
@@ -20273,7 +20798,7 @@ var $ZodRegistry = class {
20273
20798
  function registry() {
20274
20799
  return new $ZodRegistry();
20275
20800
  }
20276
- (_a = globalThis).__zod_globalRegistry ?? (_a.__zod_globalRegistry = registry());
20801
+ (_a2 = globalThis).__zod_globalRegistry ?? (_a2.__zod_globalRegistry = registry());
20277
20802
  var globalRegistry = globalThis.__zod_globalRegistry;
20278
20803
 
20279
20804
  // node_modules/zod/v4/core/api.js
@@ -21191,7 +21716,7 @@ function _refine(Class2, fn, _params) {
21191
21716
  return schema;
21192
21717
  }
21193
21718
  // @__NO_SIDE_EFFECTS__
21194
- function _superRefine(fn) {
21719
+ function _superRefine(fn, params) {
21195
21720
  const ch = /* @__PURE__ */ _check((payload) => {
21196
21721
  payload.addIssue = (issue2) => {
21197
21722
  if (typeof issue2 === "string") {
@@ -21208,7 +21733,7 @@ function _superRefine(fn) {
21208
21733
  }
21209
21734
  };
21210
21735
  return fn(payload.value, payload);
21211
- });
21736
+ }, params);
21212
21737
  return ch;
21213
21738
  }
21214
21739
  // @__NO_SIDE_EFFECTS__
@@ -21338,7 +21863,7 @@ function initializeContext(params) {
21338
21863
  };
21339
21864
  }
21340
21865
  function process2(schema, ctx, _params = { path: [], schemaPath: [] }) {
21341
- var _a2;
21866
+ var _a3;
21342
21867
  const def = schema._zod.def;
21343
21868
  const seen = ctx.seen.get(schema);
21344
21869
  if (seen) {
@@ -21385,8 +21910,8 @@ function process2(schema, ctx, _params = { path: [], schemaPath: [] }) {
21385
21910
  delete result.schema.examples;
21386
21911
  delete result.schema.default;
21387
21912
  }
21388
- if (ctx.io === "input" && result.schema._prefault)
21389
- (_a2 = result.schema).default ?? (_a2.default = result.schema._prefault);
21913
+ if (ctx.io === "input" && "_prefault" in result.schema)
21914
+ (_a3 = result.schema).default ?? (_a3.default = result.schema._prefault);
21390
21915
  delete result.schema._prefault;
21391
21916
  const _result = ctx.seen.get(schema);
21392
21917
  return _result.schema;
@@ -21567,10 +22092,15 @@ function finalize(ctx, schema) {
21567
22092
  result.$id = ctx.external.uri(id);
21568
22093
  }
21569
22094
  Object.assign(result, root.def ?? root.schema);
22095
+ const rootMetaId = ctx.metadataRegistry.get(schema)?.id;
22096
+ if (rootMetaId !== void 0 && result.id === rootMetaId)
22097
+ delete result.id;
21570
22098
  const defs = ctx.external?.defs ?? {};
21571
22099
  for (const entry of ctx.seen.entries()) {
21572
22100
  const seen = entry[1];
21573
22101
  if (seen.def && seen.defId) {
22102
+ if (seen.def.id === seen.defId)
22103
+ delete seen.def.id;
21574
22104
  defs[seen.defId] = seen.def;
21575
22105
  }
21576
22106
  }
@@ -21626,6 +22156,8 @@ function isTransforming(_schema, _ctx) {
21626
22156
  return isTransforming(def.keyType, ctx) || isTransforming(def.valueType, ctx);
21627
22157
  }
21628
22158
  if (def.type === "pipe") {
22159
+ if (_schema._zod.traits.has("$ZodCodec"))
22160
+ return true;
21629
22161
  return isTransforming(def.in, ctx) || isTransforming(def.out, ctx);
21630
22162
  }
21631
22163
  if (def.type === "object") {
@@ -21715,39 +22247,28 @@ var numberProcessor = (schema, ctx, _json, _params) => {
21715
22247
  json2.type = "integer";
21716
22248
  else
21717
22249
  json2.type = "number";
21718
- if (typeof exclusiveMinimum === "number") {
21719
- if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
22250
+ const exMin = typeof exclusiveMinimum === "number" && exclusiveMinimum >= (minimum ?? Number.NEGATIVE_INFINITY);
22251
+ const exMax = typeof exclusiveMaximum === "number" && exclusiveMaximum <= (maximum ?? Number.POSITIVE_INFINITY);
22252
+ const legacy = ctx.target === "draft-04" || ctx.target === "openapi-3.0";
22253
+ if (exMin) {
22254
+ if (legacy) {
21720
22255
  json2.minimum = exclusiveMinimum;
21721
22256
  json2.exclusiveMinimum = true;
21722
22257
  } else {
21723
22258
  json2.exclusiveMinimum = exclusiveMinimum;
21724
22259
  }
21725
- }
21726
- if (typeof minimum === "number") {
22260
+ } else if (typeof minimum === "number") {
21727
22261
  json2.minimum = minimum;
21728
- if (typeof exclusiveMinimum === "number" && ctx.target !== "draft-04") {
21729
- if (exclusiveMinimum >= minimum)
21730
- delete json2.minimum;
21731
- else
21732
- delete json2.exclusiveMinimum;
21733
- }
21734
22262
  }
21735
- if (typeof exclusiveMaximum === "number") {
21736
- if (ctx.target === "draft-04" || ctx.target === "openapi-3.0") {
22263
+ if (exMax) {
22264
+ if (legacy) {
21737
22265
  json2.maximum = exclusiveMaximum;
21738
22266
  json2.exclusiveMaximum = true;
21739
22267
  } else {
21740
22268
  json2.exclusiveMaximum = exclusiveMaximum;
21741
22269
  }
21742
- }
21743
- if (typeof maximum === "number") {
22270
+ } else if (typeof maximum === "number") {
21744
22271
  json2.maximum = maximum;
21745
- if (typeof exclusiveMaximum === "number" && ctx.target !== "draft-04") {
21746
- if (exclusiveMaximum <= maximum)
21747
- delete json2.maximum;
21748
- else
21749
- delete json2.exclusiveMaximum;
21750
- }
21751
22272
  }
21752
22273
  if (typeof multipleOf === "number")
21753
22274
  json2.multipleOf = multipleOf;
@@ -21919,7 +22440,10 @@ var arrayProcessor = (schema, ctx, _json, params) => {
21919
22440
  if (typeof maximum === "number")
21920
22441
  json2.maxItems = maximum;
21921
22442
  json2.type = "array";
21922
- json2.items = process2(def.element, ctx, { ...params, path: [...params.path, "items"] });
22443
+ json2.items = process2(def.element, ctx, {
22444
+ ...params,
22445
+ path: [...params.path, "items"]
22446
+ });
21923
22447
  };
21924
22448
  var objectProcessor = (schema, ctx, _json, params) => {
21925
22449
  const json2 = _json;
@@ -22112,7 +22636,8 @@ var catchProcessor = (schema, ctx, json2, params) => {
22112
22636
  };
22113
22637
  var pipeProcessor = (schema, ctx, _json, params) => {
22114
22638
  const def = schema._zod.def;
22115
- const innerType = ctx.io === "input" ? def.in._zod.def.type === "transform" ? def.out : def.in : def.out;
22639
+ const inIsTransform = def.in._zod.traits.has("$ZodTransform");
22640
+ const innerType = ctx.io === "input" ? inIsTransform ? def.out : def.in : def.out;
22116
22641
  process2(innerType, ctx, params);
22117
22642
  const seen = ctx.seen.get(schema);
22118
22643
  seen.ref = innerType;
@@ -22312,7 +22837,9 @@ var ZodMiniType = /* @__PURE__ */ $constructor("ZodMiniType", (inst, def) => {
22312
22837
  ...def,
22313
22838
  checks: [
22314
22839
  ...def.checks ?? [],
22315
- ...checks.map((ch) => typeof ch === "function" ? { _zod: { check: ch, def: { check: "custom" }, onattach: [] } } : ch)
22840
+ ...checks.map((ch) => typeof ch === "function" ? {
22841
+ _zod: { check: ch, def: { check: "custom" }, onattach: [] }
22842
+ } : ch)
22316
22843
  ]
22317
22844
  }, { parent: true });
22318
22845
  };
@@ -22424,24 +22951,24 @@ function normalizeObjectSchema(schema) {
22424
22951
  }
22425
22952
  return void 0;
22426
22953
  }
22427
- function getParseErrorMessage(error48) {
22428
- if (error48 && typeof error48 === "object") {
22429
- if ("message" in error48 && typeof error48.message === "string") {
22430
- return error48.message;
22954
+ function getParseErrorMessage(error51) {
22955
+ if (error51 && typeof error51 === "object") {
22956
+ if ("message" in error51 && typeof error51.message === "string") {
22957
+ return error51.message;
22431
22958
  }
22432
- if ("issues" in error48 && Array.isArray(error48.issues) && error48.issues.length > 0) {
22433
- const firstIssue = error48.issues[0];
22959
+ if ("issues" in error51 && Array.isArray(error51.issues) && error51.issues.length > 0) {
22960
+ const firstIssue = error51.issues[0];
22434
22961
  if (firstIssue && typeof firstIssue === "object" && "message" in firstIssue) {
22435
22962
  return String(firstIssue.message);
22436
22963
  }
22437
22964
  }
22438
22965
  try {
22439
- return JSON.stringify(error48);
22966
+ return JSON.stringify(error51);
22440
22967
  } catch {
22441
- return String(error48);
22968
+ return String(error51);
22442
22969
  }
22443
22970
  }
22444
- return String(error48);
22971
+ return String(error51);
22445
22972
  }
22446
22973
  function getSchemaDescription(schema) {
22447
22974
  return schema.description;
@@ -22485,8 +23012,8 @@ function getLiteralValue(schema) {
22485
23012
  }
22486
23013
 
22487
23014
  // node_modules/zod/v4/classic/external.js
22488
- var external_exports3 = {};
22489
- __export(external_exports3, {
23015
+ var external_exports = {};
23016
+ __export(external_exports, {
22490
23017
  $brand: () => $brand,
22491
23018
  $input: () => $input,
22492
23019
  $output: () => $output,
@@ -22546,6 +23073,7 @@ __export(external_exports3, {
22546
23073
  ZodOptional: () => ZodOptional2,
22547
23074
  ZodPipe: () => ZodPipe,
22548
23075
  ZodPrefault: () => ZodPrefault,
23076
+ ZodPreprocess: () => ZodPreprocess,
22549
23077
  ZodPromise: () => ZodPromise2,
22550
23078
  ZodReadonly: () => ZodReadonly2,
22551
23079
  ZodRealError: () => ZodRealError,
@@ -22624,6 +23152,7 @@ __export(external_exports3, {
22624
23152
  int32: () => int32,
22625
23153
  int64: () => int64,
22626
23154
  intersection: () => intersection,
23155
+ invertCodec: () => invertCodec,
22627
23156
  ipv4: () => ipv42,
22628
23157
  ipv6: () => ipv62,
22629
23158
  iso: () => iso_exports2,
@@ -22726,8 +23255,8 @@ __export(external_exports3, {
22726
23255
  });
22727
23256
 
22728
23257
  // node_modules/zod/v4/classic/schemas.js
22729
- var schemas_exports3 = {};
22730
- __export(schemas_exports3, {
23258
+ var schemas_exports2 = {};
23259
+ __export(schemas_exports2, {
22731
23260
  ZodAny: () => ZodAny2,
22732
23261
  ZodArray: () => ZodArray2,
22733
23262
  ZodBase64: () => ZodBase64,
@@ -22775,6 +23304,7 @@ __export(schemas_exports3, {
22775
23304
  ZodOptional: () => ZodOptional2,
22776
23305
  ZodPipe: () => ZodPipe,
22777
23306
  ZodPrefault: () => ZodPrefault,
23307
+ ZodPreprocess: () => ZodPreprocess,
22778
23308
  ZodPromise: () => ZodPromise2,
22779
23309
  ZodReadonly: () => ZodReadonly2,
22780
23310
  ZodRecord: () => ZodRecord2,
@@ -22835,6 +23365,7 @@ __export(schemas_exports3, {
22835
23365
  int32: () => int32,
22836
23366
  int64: () => int64,
22837
23367
  intersection: () => intersection,
23368
+ invertCodec: () => invertCodec,
22838
23369
  ipv4: () => ipv42,
22839
23370
  ipv6: () => ipv62,
22840
23371
  json: () => json,
@@ -23004,8 +23535,8 @@ var initializer2 = (inst, issues) => {
23004
23535
  }
23005
23536
  });
23006
23537
  };
23007
- var ZodError2 = $constructor("ZodError", initializer2);
23008
- var ZodRealError = $constructor("ZodError", initializer2, {
23538
+ var ZodError2 = /* @__PURE__ */ $constructor("ZodError", initializer2);
23539
+ var ZodRealError = /* @__PURE__ */ $constructor("ZodError", initializer2, {
23009
23540
  Parent: Error
23010
23541
  });
23011
23542
 
@@ -23024,6 +23555,43 @@ var safeEncodeAsync2 = /* @__PURE__ */ _safeEncodeAsync(ZodRealError);
23024
23555
  var safeDecodeAsync2 = /* @__PURE__ */ _safeDecodeAsync(ZodRealError);
23025
23556
 
23026
23557
  // node_modules/zod/v4/classic/schemas.js
23558
+ var _installedGroups = /* @__PURE__ */ new WeakMap();
23559
+ function _installLazyMethods(inst, group, methods) {
23560
+ const proto = Object.getPrototypeOf(inst);
23561
+ let installed = _installedGroups.get(proto);
23562
+ if (!installed) {
23563
+ installed = /* @__PURE__ */ new Set();
23564
+ _installedGroups.set(proto, installed);
23565
+ }
23566
+ if (installed.has(group))
23567
+ return;
23568
+ installed.add(group);
23569
+ for (const key in methods) {
23570
+ const fn = methods[key];
23571
+ Object.defineProperty(proto, key, {
23572
+ configurable: true,
23573
+ enumerable: false,
23574
+ get() {
23575
+ const bound = fn.bind(this);
23576
+ Object.defineProperty(this, key, {
23577
+ configurable: true,
23578
+ writable: true,
23579
+ enumerable: true,
23580
+ value: bound
23581
+ });
23582
+ return bound;
23583
+ },
23584
+ set(v) {
23585
+ Object.defineProperty(this, key, {
23586
+ configurable: true,
23587
+ writable: true,
23588
+ enumerable: true,
23589
+ value: v
23590
+ });
23591
+ }
23592
+ });
23593
+ }
23594
+ }
23027
23595
  var ZodType2 = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
23028
23596
  $ZodType.init(inst, def);
23029
23597
  Object.assign(inst["~standard"], {
@@ -23036,23 +23604,6 @@ var ZodType2 = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
23036
23604
  inst.def = def;
23037
23605
  inst.type = def.type;
23038
23606
  Object.defineProperty(inst, "_def", { value: def });
23039
- inst.check = (...checks) => {
23040
- return inst.clone(util_exports.mergeDefs(def, {
23041
- checks: [
23042
- ...def.checks ?? [],
23043
- ...checks.map((ch) => typeof ch === "function" ? { _zod: { check: ch, def: { check: "custom" }, onattach: [] } } : ch)
23044
- ]
23045
- }), {
23046
- parent: true
23047
- });
23048
- };
23049
- inst.with = inst.check;
23050
- inst.clone = (def2, params) => clone(inst, def2, params);
23051
- inst.brand = () => inst;
23052
- inst.register = ((reg, meta3) => {
23053
- reg.add(inst, meta3);
23054
- return inst;
23055
- });
23056
23607
  inst.parse = (data, params) => parse2(inst, data, params, { callee: inst.parse });
23057
23608
  inst.safeParse = (data, params) => safeParse3(inst, data, params);
23058
23609
  inst.parseAsync = async (data, params) => parseAsync2(inst, data, params, { callee: inst.parseAsync });
@@ -23066,45 +23617,108 @@ var ZodType2 = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
23066
23617
  inst.safeDecode = (data, params) => safeDecode2(inst, data, params);
23067
23618
  inst.safeEncodeAsync = async (data, params) => safeEncodeAsync2(inst, data, params);
23068
23619
  inst.safeDecodeAsync = async (data, params) => safeDecodeAsync2(inst, data, params);
23069
- inst.refine = (check2, params) => inst.check(refine(check2, params));
23070
- inst.superRefine = (refinement) => inst.check(superRefine(refinement));
23071
- inst.overwrite = (fn) => inst.check(_overwrite(fn));
23072
- inst.optional = () => optional(inst);
23073
- inst.exactOptional = () => exactOptional(inst);
23074
- inst.nullable = () => nullable(inst);
23075
- inst.nullish = () => optional(nullable(inst));
23076
- inst.nonoptional = (params) => nonoptional(inst, params);
23077
- inst.array = () => array(inst);
23078
- inst.or = (arg) => union([inst, arg]);
23079
- inst.and = (arg) => intersection(inst, arg);
23080
- inst.transform = (tx) => pipe(inst, transform(tx));
23081
- inst.default = (def2) => _default2(inst, def2);
23082
- inst.prefault = (def2) => prefault(inst, def2);
23083
- inst.catch = (params) => _catch2(inst, params);
23084
- inst.pipe = (target) => pipe(inst, target);
23085
- inst.readonly = () => readonly(inst);
23086
- inst.describe = (description) => {
23087
- const cl = inst.clone();
23088
- globalRegistry.add(cl, { description });
23089
- return cl;
23090
- };
23620
+ _installLazyMethods(inst, "ZodType", {
23621
+ check(...chks) {
23622
+ const def2 = this.def;
23623
+ return this.clone(util_exports.mergeDefs(def2, {
23624
+ checks: [
23625
+ ...def2.checks ?? [],
23626
+ ...chks.map((ch) => typeof ch === "function" ? { _zod: { check: ch, def: { check: "custom" }, onattach: [] } } : ch)
23627
+ ]
23628
+ }), { parent: true });
23629
+ },
23630
+ with(...chks) {
23631
+ return this.check(...chks);
23632
+ },
23633
+ clone(def2, params) {
23634
+ return clone(this, def2, params);
23635
+ },
23636
+ brand() {
23637
+ return this;
23638
+ },
23639
+ register(reg, meta3) {
23640
+ reg.add(this, meta3);
23641
+ return this;
23642
+ },
23643
+ refine(check2, params) {
23644
+ return this.check(refine(check2, params));
23645
+ },
23646
+ superRefine(refinement, params) {
23647
+ return this.check(superRefine(refinement, params));
23648
+ },
23649
+ overwrite(fn) {
23650
+ return this.check(_overwrite(fn));
23651
+ },
23652
+ optional() {
23653
+ return optional(this);
23654
+ },
23655
+ exactOptional() {
23656
+ return exactOptional(this);
23657
+ },
23658
+ nullable() {
23659
+ return nullable(this);
23660
+ },
23661
+ nullish() {
23662
+ return optional(nullable(this));
23663
+ },
23664
+ nonoptional(params) {
23665
+ return nonoptional(this, params);
23666
+ },
23667
+ array() {
23668
+ return array(this);
23669
+ },
23670
+ or(arg) {
23671
+ return union([this, arg]);
23672
+ },
23673
+ and(arg) {
23674
+ return intersection(this, arg);
23675
+ },
23676
+ transform(tx) {
23677
+ return pipe(this, transform(tx));
23678
+ },
23679
+ default(d) {
23680
+ return _default2(this, d);
23681
+ },
23682
+ prefault(d) {
23683
+ return prefault(this, d);
23684
+ },
23685
+ catch(params) {
23686
+ return _catch2(this, params);
23687
+ },
23688
+ pipe(target) {
23689
+ return pipe(this, target);
23690
+ },
23691
+ readonly() {
23692
+ return readonly(this);
23693
+ },
23694
+ describe(description) {
23695
+ const cl = this.clone();
23696
+ globalRegistry.add(cl, { description });
23697
+ return cl;
23698
+ },
23699
+ meta(...args) {
23700
+ if (args.length === 0)
23701
+ return globalRegistry.get(this);
23702
+ const cl = this.clone();
23703
+ globalRegistry.add(cl, args[0]);
23704
+ return cl;
23705
+ },
23706
+ isOptional() {
23707
+ return this.safeParse(void 0).success;
23708
+ },
23709
+ isNullable() {
23710
+ return this.safeParse(null).success;
23711
+ },
23712
+ apply(fn) {
23713
+ return fn(this);
23714
+ }
23715
+ });
23091
23716
  Object.defineProperty(inst, "description", {
23092
23717
  get() {
23093
23718
  return globalRegistry.get(inst)?.description;
23094
23719
  },
23095
23720
  configurable: true
23096
23721
  });
23097
- inst.meta = (...args) => {
23098
- if (args.length === 0) {
23099
- return globalRegistry.get(inst);
23100
- }
23101
- const cl = inst.clone();
23102
- globalRegistry.add(cl, args[0]);
23103
- return cl;
23104
- };
23105
- inst.isOptional = () => inst.safeParse(void 0).success;
23106
- inst.isNullable = () => inst.safeParse(null).success;
23107
- inst.apply = (fn) => fn(inst);
23108
23722
  return inst;
23109
23723
  });
23110
23724
  var _ZodString = /* @__PURE__ */ $constructor("_ZodString", (inst, def) => {
@@ -23115,21 +23729,53 @@ var _ZodString = /* @__PURE__ */ $constructor("_ZodString", (inst, def) => {
23115
23729
  inst.format = bag.format ?? null;
23116
23730
  inst.minLength = bag.minimum ?? null;
23117
23731
  inst.maxLength = bag.maximum ?? null;
23118
- inst.regex = (...args) => inst.check(_regex(...args));
23119
- inst.includes = (...args) => inst.check(_includes(...args));
23120
- inst.startsWith = (...args) => inst.check(_startsWith(...args));
23121
- inst.endsWith = (...args) => inst.check(_endsWith(...args));
23122
- inst.min = (...args) => inst.check(_minLength(...args));
23123
- inst.max = (...args) => inst.check(_maxLength(...args));
23124
- inst.length = (...args) => inst.check(_length(...args));
23125
- inst.nonempty = (...args) => inst.check(_minLength(1, ...args));
23126
- inst.lowercase = (params) => inst.check(_lowercase(params));
23127
- inst.uppercase = (params) => inst.check(_uppercase(params));
23128
- inst.trim = () => inst.check(_trim());
23129
- inst.normalize = (...args) => inst.check(_normalize(...args));
23130
- inst.toLowerCase = () => inst.check(_toLowerCase());
23131
- inst.toUpperCase = () => inst.check(_toUpperCase());
23132
- inst.slugify = () => inst.check(_slugify());
23732
+ _installLazyMethods(inst, "_ZodString", {
23733
+ regex(...args) {
23734
+ return this.check(_regex(...args));
23735
+ },
23736
+ includes(...args) {
23737
+ return this.check(_includes(...args));
23738
+ },
23739
+ startsWith(...args) {
23740
+ return this.check(_startsWith(...args));
23741
+ },
23742
+ endsWith(...args) {
23743
+ return this.check(_endsWith(...args));
23744
+ },
23745
+ min(...args) {
23746
+ return this.check(_minLength(...args));
23747
+ },
23748
+ max(...args) {
23749
+ return this.check(_maxLength(...args));
23750
+ },
23751
+ length(...args) {
23752
+ return this.check(_length(...args));
23753
+ },
23754
+ nonempty(...args) {
23755
+ return this.check(_minLength(1, ...args));
23756
+ },
23757
+ lowercase(params) {
23758
+ return this.check(_lowercase(params));
23759
+ },
23760
+ uppercase(params) {
23761
+ return this.check(_uppercase(params));
23762
+ },
23763
+ trim() {
23764
+ return this.check(_trim());
23765
+ },
23766
+ normalize(...args) {
23767
+ return this.check(_normalize(...args));
23768
+ },
23769
+ toLowerCase() {
23770
+ return this.check(_toLowerCase());
23771
+ },
23772
+ toUpperCase() {
23773
+ return this.check(_toUpperCase());
23774
+ },
23775
+ slugify() {
23776
+ return this.check(_slugify());
23777
+ }
23778
+ });
23133
23779
  });
23134
23780
  var ZodString2 = /* @__PURE__ */ $constructor("ZodString", (inst, def) => {
23135
23781
  $ZodString.init(inst, def);
@@ -23208,7 +23854,7 @@ function url(params) {
23208
23854
  }
23209
23855
  function httpUrl(params) {
23210
23856
  return _url(ZodURL, {
23211
- protocol: /^https?$/,
23857
+ protocol: regexes_exports.httpProtocol,
23212
23858
  hostname: regexes_exports.domain,
23213
23859
  ...util_exports.normalizeParams(params)
23214
23860
  });
@@ -23350,21 +23996,53 @@ var ZodNumber2 = /* @__PURE__ */ $constructor("ZodNumber", (inst, def) => {
23350
23996
  $ZodNumber.init(inst, def);
23351
23997
  ZodType2.init(inst, def);
23352
23998
  inst._zod.processJSONSchema = (ctx, json2, params) => numberProcessor(inst, ctx, json2, params);
23353
- inst.gt = (value, params) => inst.check(_gt(value, params));
23354
- inst.gte = (value, params) => inst.check(_gte(value, params));
23355
- inst.min = (value, params) => inst.check(_gte(value, params));
23356
- inst.lt = (value, params) => inst.check(_lt(value, params));
23357
- inst.lte = (value, params) => inst.check(_lte(value, params));
23358
- inst.max = (value, params) => inst.check(_lte(value, params));
23359
- inst.int = (params) => inst.check(int(params));
23360
- inst.safe = (params) => inst.check(int(params));
23361
- inst.positive = (params) => inst.check(_gt(0, params));
23362
- inst.nonnegative = (params) => inst.check(_gte(0, params));
23363
- inst.negative = (params) => inst.check(_lt(0, params));
23364
- inst.nonpositive = (params) => inst.check(_lte(0, params));
23365
- inst.multipleOf = (value, params) => inst.check(_multipleOf(value, params));
23366
- inst.step = (value, params) => inst.check(_multipleOf(value, params));
23367
- inst.finite = () => inst;
23999
+ _installLazyMethods(inst, "ZodNumber", {
24000
+ gt(value, params) {
24001
+ return this.check(_gt(value, params));
24002
+ },
24003
+ gte(value, params) {
24004
+ return this.check(_gte(value, params));
24005
+ },
24006
+ min(value, params) {
24007
+ return this.check(_gte(value, params));
24008
+ },
24009
+ lt(value, params) {
24010
+ return this.check(_lt(value, params));
24011
+ },
24012
+ lte(value, params) {
24013
+ return this.check(_lte(value, params));
24014
+ },
24015
+ max(value, params) {
24016
+ return this.check(_lte(value, params));
24017
+ },
24018
+ int(params) {
24019
+ return this.check(int(params));
24020
+ },
24021
+ safe(params) {
24022
+ return this.check(int(params));
24023
+ },
24024
+ positive(params) {
24025
+ return this.check(_gt(0, params));
24026
+ },
24027
+ nonnegative(params) {
24028
+ return this.check(_gte(0, params));
24029
+ },
24030
+ negative(params) {
24031
+ return this.check(_lt(0, params));
24032
+ },
24033
+ nonpositive(params) {
24034
+ return this.check(_lte(0, params));
24035
+ },
24036
+ multipleOf(value, params) {
24037
+ return this.check(_multipleOf(value, params));
24038
+ },
24039
+ step(value, params) {
24040
+ return this.check(_multipleOf(value, params));
24041
+ },
24042
+ finite() {
24043
+ return this;
24044
+ }
24045
+ });
23368
24046
  const bag = inst._zod.bag;
23369
24047
  inst.minValue = Math.max(bag.minimum ?? Number.NEGATIVE_INFINITY, bag.exclusiveMinimum ?? Number.NEGATIVE_INFINITY) ?? null;
23370
24048
  inst.maxValue = Math.min(bag.maximum ?? Number.POSITIVE_INFINITY, bag.exclusiveMaximum ?? Number.POSITIVE_INFINITY) ?? null;
@@ -23511,11 +24189,23 @@ var ZodArray2 = /* @__PURE__ */ $constructor("ZodArray", (inst, def) => {
23511
24189
  ZodType2.init(inst, def);
23512
24190
  inst._zod.processJSONSchema = (ctx, json2, params) => arrayProcessor(inst, ctx, json2, params);
23513
24191
  inst.element = def.element;
23514
- inst.min = (minLength, params) => inst.check(_minLength(minLength, params));
23515
- inst.nonempty = (params) => inst.check(_minLength(1, params));
23516
- inst.max = (maxLength, params) => inst.check(_maxLength(maxLength, params));
23517
- inst.length = (len, params) => inst.check(_length(len, params));
23518
- inst.unwrap = () => inst.element;
24192
+ _installLazyMethods(inst, "ZodArray", {
24193
+ min(n, params) {
24194
+ return this.check(_minLength(n, params));
24195
+ },
24196
+ nonempty(params) {
24197
+ return this.check(_minLength(1, params));
24198
+ },
24199
+ max(n, params) {
24200
+ return this.check(_maxLength(n, params));
24201
+ },
24202
+ length(n, params) {
24203
+ return this.check(_length(n, params));
24204
+ },
24205
+ unwrap() {
24206
+ return this.element;
24207
+ }
24208
+ });
23519
24209
  });
23520
24210
  function array(element, params) {
23521
24211
  return _array(ZodArray2, element, params);
@@ -23531,23 +24221,47 @@ var ZodObject2 = /* @__PURE__ */ $constructor("ZodObject", (inst, def) => {
23531
24221
  util_exports.defineLazy(inst, "shape", () => {
23532
24222
  return def.shape;
23533
24223
  });
23534
- inst.keyof = () => _enum2(Object.keys(inst._zod.def.shape));
23535
- inst.catchall = (catchall) => inst.clone({ ...inst._zod.def, catchall });
23536
- inst.passthrough = () => inst.clone({ ...inst._zod.def, catchall: unknown() });
23537
- inst.loose = () => inst.clone({ ...inst._zod.def, catchall: unknown() });
23538
- inst.strict = () => inst.clone({ ...inst._zod.def, catchall: never() });
23539
- inst.strip = () => inst.clone({ ...inst._zod.def, catchall: void 0 });
23540
- inst.extend = (incoming) => {
23541
- return util_exports.extend(inst, incoming);
23542
- };
23543
- inst.safeExtend = (incoming) => {
23544
- return util_exports.safeExtend(inst, incoming);
23545
- };
23546
- inst.merge = (other) => util_exports.merge(inst, other);
23547
- inst.pick = (mask) => util_exports.pick(inst, mask);
23548
- inst.omit = (mask) => util_exports.omit(inst, mask);
23549
- inst.partial = (...args) => util_exports.partial(ZodOptional2, inst, args[0]);
23550
- inst.required = (...args) => util_exports.required(ZodNonOptional, inst, args[0]);
24224
+ _installLazyMethods(inst, "ZodObject", {
24225
+ keyof() {
24226
+ return _enum2(Object.keys(this._zod.def.shape));
24227
+ },
24228
+ catchall(catchall) {
24229
+ return this.clone({ ...this._zod.def, catchall });
24230
+ },
24231
+ passthrough() {
24232
+ return this.clone({ ...this._zod.def, catchall: unknown() });
24233
+ },
24234
+ loose() {
24235
+ return this.clone({ ...this._zod.def, catchall: unknown() });
24236
+ },
24237
+ strict() {
24238
+ return this.clone({ ...this._zod.def, catchall: never() });
24239
+ },
24240
+ strip() {
24241
+ return this.clone({ ...this._zod.def, catchall: void 0 });
24242
+ },
24243
+ extend(incoming) {
24244
+ return util_exports.extend(this, incoming);
24245
+ },
24246
+ safeExtend(incoming) {
24247
+ return util_exports.safeExtend(this, incoming);
24248
+ },
24249
+ merge(other) {
24250
+ return util_exports.merge(this, other);
24251
+ },
24252
+ pick(mask) {
24253
+ return util_exports.pick(this, mask);
24254
+ },
24255
+ omit(mask) {
24256
+ return util_exports.omit(this, mask);
24257
+ },
24258
+ partial(...args) {
24259
+ return util_exports.partial(ZodOptional2, this, args[0]);
24260
+ },
24261
+ required(...args) {
24262
+ return util_exports.required(ZodNonOptional, this, args[0]);
24263
+ }
24264
+ });
23551
24265
  });
23552
24266
  function object2(shape, params) {
23553
24267
  const def = {
@@ -23652,6 +24366,14 @@ var ZodRecord2 = /* @__PURE__ */ $constructor("ZodRecord", (inst, def) => {
23652
24366
  inst.valueType = def.valueType;
23653
24367
  });
23654
24368
  function record(keyType, valueType, params) {
24369
+ if (!valueType || !valueType._zod) {
24370
+ return new ZodRecord2({
24371
+ type: "record",
24372
+ keyType: string2(),
24373
+ valueType: keyType,
24374
+ ...util_exports.normalizeParams(valueType)
24375
+ });
24376
+ }
23655
24377
  return new ZodRecord2({
23656
24378
  type: "record",
23657
24379
  keyType,
@@ -23823,10 +24545,12 @@ var ZodTransform = /* @__PURE__ */ $constructor("ZodTransform", (inst, def) => {
23823
24545
  if (output instanceof Promise) {
23824
24546
  return output.then((output2) => {
23825
24547
  payload.value = output2;
24548
+ payload.fallback = true;
23826
24549
  return payload;
23827
24550
  });
23828
24551
  }
23829
24552
  payload.value = output;
24553
+ payload.fallback = true;
23830
24554
  return payload;
23831
24555
  };
23832
24556
  });
@@ -23981,6 +24705,20 @@ function codec(in_, out, params) {
23981
24705
  reverseTransform: params.encode
23982
24706
  });
23983
24707
  }
24708
+ function invertCodec(codec2) {
24709
+ const def = codec2._zod.def;
24710
+ return new ZodCodec({
24711
+ type: "pipe",
24712
+ in: def.out,
24713
+ out: def.in,
24714
+ transform: def.reverseTransform,
24715
+ reverseTransform: def.transform
24716
+ });
24717
+ }
24718
+ var ZodPreprocess = /* @__PURE__ */ $constructor("ZodPreprocess", (inst, def) => {
24719
+ ZodPipe.init(inst, def);
24720
+ $ZodPreprocess.init(inst, def);
24721
+ });
23984
24722
  var ZodReadonly2 = /* @__PURE__ */ $constructor("ZodReadonly", (inst, def) => {
23985
24723
  $ZodReadonly.init(inst, def);
23986
24724
  ZodType2.init(inst, def);
@@ -24060,8 +24798,8 @@ function custom(fn, _params) {
24060
24798
  function refine(fn, _params = {}) {
24061
24799
  return _refine(ZodCustom, fn, _params);
24062
24800
  }
24063
- function superRefine(fn) {
24064
- return _superRefine(fn);
24801
+ function superRefine(fn, params) {
24802
+ return _superRefine(fn, params);
24065
24803
  }
24066
24804
  var describe2 = describe;
24067
24805
  var meta2 = meta;
@@ -24099,7 +24837,11 @@ function json(params) {
24099
24837
  return jsonSchema;
24100
24838
  }
24101
24839
  function preprocess(fn, schema) {
24102
- return pipe(transform(fn), schema);
24840
+ return new ZodPreprocess({
24841
+ type: "pipe",
24842
+ in: transform(fn),
24843
+ out: schema
24844
+ });
24103
24845
  }
24104
24846
 
24105
24847
  // node_modules/zod/v4/classic/compat.js
@@ -24130,7 +24872,7 @@ var ZodFirstPartyTypeKind2;
24130
24872
 
24131
24873
  // node_modules/zod/v4/classic/from-json-schema.js
24132
24874
  var z = {
24133
- ...schemas_exports3,
24875
+ ...schemas_exports2,
24134
24876
  ...checks_exports2,
24135
24877
  iso: iso_exports2
24136
24878
  };
@@ -24520,12 +25262,6 @@ function convertBaseSchema(schema, ctx) {
24520
25262
  default:
24521
25263
  throw new Error(`Unsupported type: ${type}`);
24522
25264
  }
24523
- if (schema.description) {
24524
- zodSchema = zodSchema.describe(schema.description);
24525
- }
24526
- if (schema.default !== void 0) {
24527
- zodSchema = zodSchema.default(schema.default);
24528
- }
24529
25265
  return zodSchema;
24530
25266
  }
24531
25267
  function convertSchema(schema, ctx) {
@@ -24562,6 +25298,9 @@ function convertSchema(schema, ctx) {
24562
25298
  if (schema.readOnly === true) {
24563
25299
  baseSchema = z.readonly(baseSchema);
24564
25300
  }
25301
+ if (schema.default !== void 0) {
25302
+ baseSchema = baseSchema.default(schema.default);
25303
+ }
24565
25304
  const extraMeta = {};
24566
25305
  const coreMetadataKeys = ["$id", "id", "$comment", "$anchor", "$vocabulary", "$dynamicRef", "$dynamicAnchor"];
24567
25306
  for (const key of coreMetadataKeys) {
@@ -24583,23 +25322,32 @@ function convertSchema(schema, ctx) {
24583
25322
  if (Object.keys(extraMeta).length > 0) {
24584
25323
  ctx.registry.add(baseSchema, extraMeta);
24585
25324
  }
25325
+ if (schema.description) {
25326
+ baseSchema = baseSchema.describe(schema.description);
25327
+ }
24586
25328
  return baseSchema;
24587
25329
  }
24588
25330
  function fromJSONSchema(schema, params) {
24589
25331
  if (typeof schema === "boolean") {
24590
25332
  return schema ? z.any() : z.never();
24591
25333
  }
24592
- const version2 = detectVersion(schema, params?.defaultTarget);
24593
- const defs = schema.$defs || schema.definitions || {};
25334
+ let normalized;
25335
+ try {
25336
+ normalized = JSON.parse(JSON.stringify(schema));
25337
+ } catch {
25338
+ throw new Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas");
25339
+ }
25340
+ const version2 = detectVersion(normalized, params?.defaultTarget);
25341
+ const defs = normalized.$defs || normalized.definitions || {};
24594
25342
  const ctx = {
24595
25343
  version: version2,
24596
25344
  defs,
24597
25345
  refs: /* @__PURE__ */ new Map(),
24598
25346
  processing: /* @__PURE__ */ new Set(),
24599
- rootSchema: schema,
25347
+ rootSchema: normalized,
24600
25348
  registry: params?.registry ?? globalRegistry
24601
25349
  };
24602
- return convertSchema(schema, ctx);
25350
+ return convertSchema(normalized, ctx);
24603
25351
  }
24604
25352
 
24605
25353
  // node_modules/zod/v4/classic/coerce.js
@@ -27546,8 +28294,8 @@ var Protocol = class {
27546
28294
  resolver(message);
27547
28295
  } else {
27548
28296
  const errorMessage = message;
27549
- const error48 = new McpError(errorMessage.error.code, errorMessage.error.message, errorMessage.error.data);
27550
- resolver(error48);
28297
+ const error51 = new McpError(errorMessage.error.code, errorMessage.error.message, errorMessage.error.data);
28298
+ resolver(error51);
27551
28299
  }
27552
28300
  } else {
27553
28301
  const messageType = queuedMessage.type === "response" ? "Response" : "Error";
@@ -27591,8 +28339,8 @@ var Protocol = class {
27591
28339
  nextCursor,
27592
28340
  _meta: {}
27593
28341
  };
27594
- } catch (error48) {
27595
- throw new McpError(ErrorCode.InvalidParams, `Failed to list tasks: ${error48 instanceof Error ? error48.message : String(error48)}`);
28342
+ } catch (error51) {
28343
+ throw new McpError(ErrorCode.InvalidParams, `Failed to list tasks: ${error51 instanceof Error ? error51.message : String(error51)}`);
27596
28344
  }
27597
28345
  });
27598
28346
  this.setRequestHandler(CancelTaskRequestSchema, async (request, extra) => {
@@ -27614,11 +28362,11 @@ var Protocol = class {
27614
28362
  _meta: {},
27615
28363
  ...cancelledTask
27616
28364
  };
27617
- } catch (error48) {
27618
- if (error48 instanceof McpError) {
27619
- throw error48;
28365
+ } catch (error51) {
28366
+ if (error51 instanceof McpError) {
28367
+ throw error51;
27620
28368
  }
27621
- throw new McpError(ErrorCode.InvalidRequest, `Failed to cancel task: ${error48 instanceof Error ? error48.message : String(error48)}`);
28369
+ throw new McpError(ErrorCode.InvalidRequest, `Failed to cancel task: ${error51 instanceof Error ? error51.message : String(error51)}`);
27622
28370
  }
27623
28371
  });
27624
28372
  }
@@ -27679,9 +28427,9 @@ var Protocol = class {
27679
28427
  this._onclose();
27680
28428
  };
27681
28429
  const _onerror = this.transport?.onerror;
27682
- this._transport.onerror = (error48) => {
27683
- _onerror?.(error48);
27684
- this._onerror(error48);
28430
+ this._transport.onerror = (error51) => {
28431
+ _onerror?.(error51);
28432
+ this._onerror(error51);
27685
28433
  };
27686
28434
  const _onmessage = this._transport?.onmessage;
27687
28435
  this._transport.onmessage = (message, extra) => {
@@ -27712,22 +28460,22 @@ var Protocol = class {
27712
28460
  controller.abort();
27713
28461
  }
27714
28462
  this._requestHandlerAbortControllers.clear();
27715
- const error48 = McpError.fromError(ErrorCode.ConnectionClosed, "Connection closed");
28463
+ const error51 = McpError.fromError(ErrorCode.ConnectionClosed, "Connection closed");
27716
28464
  this._transport = void 0;
27717
28465
  this.onclose?.();
27718
28466
  for (const handler of responseHandlers.values()) {
27719
- handler(error48);
28467
+ handler(error51);
27720
28468
  }
27721
28469
  }
27722
- _onerror(error48) {
27723
- this.onerror?.(error48);
28470
+ _onerror(error51) {
28471
+ this.onerror?.(error51);
27724
28472
  }
27725
28473
  _onnotification(notification) {
27726
28474
  const handler = this._notificationHandlers.get(notification.method) ?? this.fallbackNotificationHandler;
27727
28475
  if (handler === void 0) {
27728
28476
  return;
27729
28477
  }
27730
- Promise.resolve().then(() => handler(notification)).catch((error48) => this._onerror(new Error(`Uncaught error in notification handler: ${error48}`)));
28478
+ Promise.resolve().then(() => handler(notification)).catch((error51) => this._onerror(new Error(`Uncaught error in notification handler: ${error51}`)));
27731
28479
  }
27732
28480
  _onrequest(request, extra) {
27733
28481
  const handler = this._requestHandlers.get(request.method) ?? this.fallbackRequestHandler;
@@ -27747,9 +28495,9 @@ var Protocol = class {
27747
28495
  type: "error",
27748
28496
  message: errorResponse,
27749
28497
  timestamp: Date.now()
27750
- }, capturedTransport?.sessionId).catch((error48) => this._onerror(new Error(`Failed to enqueue error response: ${error48}`)));
28498
+ }, capturedTransport?.sessionId).catch((error51) => this._onerror(new Error(`Failed to enqueue error response: ${error51}`)));
27751
28499
  } else {
27752
- capturedTransport?.send(errorResponse).catch((error48) => this._onerror(new Error(`Failed to send an error response: ${error48}`)));
28500
+ capturedTransport?.send(errorResponse).catch((error51) => this._onerror(new Error(`Failed to send an error response: ${error51}`)));
27753
28501
  }
27754
28502
  return;
27755
28503
  }
@@ -27815,7 +28563,7 @@ var Protocol = class {
27815
28563
  } else {
27816
28564
  await capturedTransport?.send(response);
27817
28565
  }
27818
- }, async (error48) => {
28566
+ }, async (error51) => {
27819
28567
  if (abortController.signal.aborted) {
27820
28568
  return;
27821
28569
  }
@@ -27823,9 +28571,9 @@ var Protocol = class {
27823
28571
  jsonrpc: "2.0",
27824
28572
  id: request.id,
27825
28573
  error: {
27826
- code: Number.isSafeInteger(error48["code"]) ? error48["code"] : ErrorCode.InternalError,
27827
- message: error48.message ?? "Internal error",
27828
- ...error48["data"] !== void 0 && { data: error48["data"] }
28574
+ code: Number.isSafeInteger(error51["code"]) ? error51["code"] : ErrorCode.InternalError,
28575
+ message: error51.message ?? "Internal error",
28576
+ ...error51["data"] !== void 0 && { data: error51["data"] }
27829
28577
  }
27830
28578
  };
27831
28579
  if (relatedTaskId && this._taskMessageQueue) {
@@ -27837,7 +28585,7 @@ var Protocol = class {
27837
28585
  } else {
27838
28586
  await capturedTransport?.send(errorResponse);
27839
28587
  }
27840
- }).catch((error48) => this._onerror(new Error(`Failed to send response: ${error48}`))).finally(() => {
28588
+ }).catch((error51) => this._onerror(new Error(`Failed to send response: ${error51}`))).finally(() => {
27841
28589
  if (this._requestHandlerAbortControllers.get(request.id) === abortController) {
27842
28590
  this._requestHandlerAbortControllers.delete(request.id);
27843
28591
  }
@@ -27856,11 +28604,11 @@ var Protocol = class {
27856
28604
  if (timeoutInfo && responseHandler && timeoutInfo.resetTimeoutOnProgress) {
27857
28605
  try {
27858
28606
  this._resetTimeout(messageId);
27859
- } catch (error48) {
28607
+ } catch (error51) {
27860
28608
  this._responseHandlers.delete(messageId);
27861
28609
  this._progressHandlers.delete(messageId);
27862
28610
  this._cleanupTimeout(messageId);
27863
- responseHandler(error48);
28611
+ responseHandler(error51);
27864
28612
  return;
27865
28613
  }
27866
28614
  }
@@ -27874,8 +28622,8 @@ var Protocol = class {
27874
28622
  if (isJSONRPCResultResponse(response)) {
27875
28623
  resolver(response);
27876
28624
  } else {
27877
- const error48 = new McpError(response.error.code, response.error.message, response.error.data);
27878
- resolver(error48);
28625
+ const error51 = new McpError(response.error.code, response.error.message, response.error.data);
28626
+ resolver(error51);
27879
28627
  }
27880
28628
  return;
27881
28629
  }
@@ -27903,8 +28651,8 @@ var Protocol = class {
27903
28651
  if (isJSONRPCResultResponse(response)) {
27904
28652
  handler(response);
27905
28653
  } else {
27906
- const error48 = McpError.fromError(response.error.code, response.error.message, response.error.data);
27907
- handler(error48);
28654
+ const error51 = McpError.fromError(response.error.code, response.error.message, response.error.data);
28655
+ handler(error51);
27908
28656
  }
27909
28657
  }
27910
28658
  get transport() {
@@ -27949,10 +28697,10 @@ var Protocol = class {
27949
28697
  try {
27950
28698
  const result = await this.request(request, resultSchema, options);
27951
28699
  yield { type: "result", result };
27952
- } catch (error48) {
28700
+ } catch (error51) {
27953
28701
  yield {
27954
28702
  type: "error",
27955
- error: error48 instanceof McpError ? error48 : new McpError(ErrorCode.InternalError, String(error48))
28703
+ error: error51 instanceof McpError ? error51 : new McpError(ErrorCode.InternalError, String(error51))
27956
28704
  };
27957
28705
  }
27958
28706
  return;
@@ -27995,10 +28743,10 @@ var Protocol = class {
27995
28743
  await new Promise((resolve) => setTimeout(resolve, pollInterval));
27996
28744
  options?.signal?.throwIfAborted();
27997
28745
  }
27998
- } catch (error48) {
28746
+ } catch (error51) {
27999
28747
  yield {
28000
28748
  type: "error",
28001
- error: error48 instanceof McpError ? error48 : new McpError(ErrorCode.InternalError, String(error48))
28749
+ error: error51 instanceof McpError ? error51 : new McpError(ErrorCode.InternalError, String(error51))
28002
28750
  };
28003
28751
  }
28004
28752
  }
@@ -28010,8 +28758,8 @@ var Protocol = class {
28010
28758
  request(request, resultSchema, options) {
28011
28759
  const { relatedRequestId, resumptionToken, onresumptiontoken, task, relatedTask } = options ?? {};
28012
28760
  return new Promise((resolve, reject) => {
28013
- const earlyReject = (error48) => {
28014
- reject(error48);
28761
+ const earlyReject = (error51) => {
28762
+ reject(error51);
28015
28763
  };
28016
28764
  if (!this._transport) {
28017
28765
  earlyReject(new Error("Not connected"));
@@ -28071,9 +28819,9 @@ var Protocol = class {
28071
28819
  requestId: messageId,
28072
28820
  reason: String(reason)
28073
28821
  }
28074
- }, { relatedRequestId, resumptionToken, onresumptiontoken }).catch((error49) => this._onerror(new Error(`Failed to send cancellation: ${error49}`)));
28075
- const error48 = reason instanceof McpError ? reason : new McpError(ErrorCode.RequestTimeout, String(reason));
28076
- reject(error48);
28822
+ }, { relatedRequestId, resumptionToken, onresumptiontoken }).catch((error52) => this._onerror(new Error(`Failed to send cancellation: ${error52}`)));
28823
+ const error51 = reason instanceof McpError ? reason : new McpError(ErrorCode.RequestTimeout, String(reason));
28824
+ reject(error51);
28077
28825
  };
28078
28826
  this._responseHandlers.set(messageId, (response) => {
28079
28827
  if (options?.signal?.aborted) {
@@ -28089,8 +28837,8 @@ var Protocol = class {
28089
28837
  } else {
28090
28838
  resolve(parseResult.data);
28091
28839
  }
28092
- } catch (error48) {
28093
- reject(error48);
28840
+ } catch (error51) {
28841
+ reject(error51);
28094
28842
  }
28095
28843
  });
28096
28844
  options?.signal?.addEventListener("abort", () => {
@@ -28114,14 +28862,14 @@ var Protocol = class {
28114
28862
  type: "request",
28115
28863
  message: jsonrpcRequest,
28116
28864
  timestamp: Date.now()
28117
- }).catch((error48) => {
28865
+ }).catch((error51) => {
28118
28866
  this._cleanupTimeout(messageId);
28119
- reject(error48);
28867
+ reject(error51);
28120
28868
  });
28121
28869
  } else {
28122
- this._transport.send(jsonrpcRequest, { relatedRequestId, resumptionToken, onresumptiontoken }).catch((error48) => {
28870
+ this._transport.send(jsonrpcRequest, { relatedRequestId, resumptionToken, onresumptiontoken }).catch((error51) => {
28123
28871
  this._cleanupTimeout(messageId);
28124
- reject(error48);
28872
+ reject(error51);
28125
28873
  });
28126
28874
  }
28127
28875
  });
@@ -28214,7 +28962,7 @@ var Protocol = class {
28214
28962
  }
28215
28963
  };
28216
28964
  }
28217
- this._transport?.send(jsonrpcNotification2, options).catch((error48) => this._onerror(error48));
28965
+ this._transport?.send(jsonrpcNotification2, options).catch((error51) => this._onerror(error51));
28218
28966
  });
28219
28967
  return;
28220
28968
  }
@@ -29076,11 +29824,11 @@ var Server = class extends Protocol {
29076
29824
  if (!validationResult.valid) {
29077
29825
  throw new McpError(ErrorCode.InvalidParams, `Elicitation response content does not match requested schema: ${validationResult.errorMessage}`);
29078
29826
  }
29079
- } catch (error48) {
29080
- if (error48 instanceof McpError) {
29081
- throw error48;
29827
+ } catch (error51) {
29828
+ if (error51 instanceof McpError) {
29829
+ throw error51;
29082
29830
  }
29083
- throw new McpError(ErrorCode.InternalError, `Error validating elicitation response: ${error48 instanceof Error ? error48.message : String(error48)}`);
29831
+ throw new McpError(ErrorCode.InternalError, `Error validating elicitation response: ${error51 instanceof Error ? error51.message : String(error51)}`);
29084
29832
  }
29085
29833
  }
29086
29834
  return result;
@@ -29339,13 +30087,13 @@ var McpServer = class {
29339
30087
  }
29340
30088
  await this.validateToolOutput(tool, result, request.params.name);
29341
30089
  return result;
29342
- } catch (error48) {
29343
- if (error48 instanceof McpError) {
29344
- if (error48.code === ErrorCode.UrlElicitationRequired) {
29345
- throw error48;
30090
+ } catch (error51) {
30091
+ if (error51 instanceof McpError) {
30092
+ if (error51.code === ErrorCode.UrlElicitationRequired) {
30093
+ throw error51;
29346
30094
  }
29347
30095
  }
29348
- return this.createToolError(error48 instanceof Error ? error48.message : String(error48));
30096
+ return this.createToolError(error51 instanceof Error ? error51.message : String(error51));
29349
30097
  }
29350
30098
  });
29351
30099
  this._toolHandlersInitialized = true;
@@ -29378,8 +30126,8 @@ var McpServer = class {
29378
30126
  const schemaToParse = inputObj ?? tool.inputSchema;
29379
30127
  const parseResult = await safeParseAsync2(schemaToParse, args);
29380
30128
  if (!parseResult.success) {
29381
- const error48 = "error" in parseResult ? parseResult.error : "Unknown error";
29382
- const errorMessage = getParseErrorMessage(error48);
30129
+ const error51 = "error" in parseResult ? parseResult.error : "Unknown error";
30130
+ const errorMessage = getParseErrorMessage(error51);
29383
30131
  throw new McpError(ErrorCode.InvalidParams, `Input validation error: Invalid arguments for tool ${toolName}: ${errorMessage}`);
29384
30132
  }
29385
30133
  return parseResult.data;
@@ -29403,8 +30151,8 @@ var McpServer = class {
29403
30151
  const outputObj = normalizeObjectSchema(tool.outputSchema);
29404
30152
  const parseResult = await safeParseAsync2(outputObj, result.structuredContent);
29405
30153
  if (!parseResult.success) {
29406
- const error48 = "error" in parseResult ? parseResult.error : "Unknown error";
29407
- const errorMessage = getParseErrorMessage(error48);
30154
+ const error51 = "error" in parseResult ? parseResult.error : "Unknown error";
30155
+ const errorMessage = getParseErrorMessage(error51);
29408
30156
  throw new McpError(ErrorCode.InvalidParams, `Output validation error: Invalid structured content for tool ${toolName}: ${errorMessage}`);
29409
30157
  }
29410
30158
  }
@@ -29616,8 +30364,8 @@ var McpServer = class {
29616
30364
  const argsObj = normalizeObjectSchema(prompt.argsSchema);
29617
30365
  const parseResult = await safeParseAsync2(argsObj, request.params.arguments);
29618
30366
  if (!parseResult.success) {
29619
- const error48 = "error" in parseResult ? parseResult.error : "Unknown error";
29620
- const errorMessage = getParseErrorMessage(error48);
30367
+ const error51 = "error" in parseResult ? parseResult.error : "Unknown error";
30368
+ const errorMessage = getParseErrorMessage(error51);
29621
30369
  throw new McpError(ErrorCode.InvalidParams, `Invalid arguments for prompt ${request.params.name}: ${errorMessage}`);
29622
30370
  }
29623
30371
  const args = parseResult.data;
@@ -30063,8 +30811,8 @@ var StdioServerTransport = class {
30063
30811
  this._readBuffer.append(chunk);
30064
30812
  this.processReadBuffer();
30065
30813
  };
30066
- this._onerror = (error48) => {
30067
- this.onerror?.(error48);
30814
+ this._onerror = (error51) => {
30815
+ this.onerror?.(error51);
30068
30816
  };
30069
30817
  }
30070
30818
  /**
@@ -30086,8 +30834,8 @@ var StdioServerTransport = class {
30086
30834
  break;
30087
30835
  }
30088
30836
  this.onmessage?.(message);
30089
- } catch (error48) {
30090
- this.onerror?.(error48);
30837
+ } catch (error51) {
30838
+ this.onerror?.(error51);
30091
30839
  }
30092
30840
  }
30093
30841
  }
@@ -30134,17 +30882,32 @@ function readVar(key) {
30134
30882
  var BASE_URL = "https://api.tempo.io";
30135
30883
  var TempoClient = class {
30136
30884
  apiToken;
30885
+ configError;
30886
+ /**
30887
+ * Defer the config error so the server can still start (and respond to the
30888
+ * host's install-time smoke test) when TEMPO_API_TOKEN isn't set yet.
30889
+ * Tool calls re-raise the error at request time.
30890
+ */
30137
30891
  constructor() {
30138
30892
  const token = readVar("TEMPO_API_TOKEN");
30139
- if (!token) throw new Error("TEMPO_API_TOKEN environment variable is required");
30140
- this.apiToken = token;
30893
+ if (!token) {
30894
+ this.apiToken = null;
30895
+ this.configError = new Error("TEMPO_API_TOKEN environment variable is required");
30896
+ } else {
30897
+ this.apiToken = token;
30898
+ this.configError = null;
30899
+ }
30900
+ }
30901
+ requireToken() {
30902
+ if (this.configError) throw this.configError;
30903
+ return this.apiToken;
30141
30904
  }
30142
30905
  async request(method, path, body, queryParams) {
30143
30906
  return this.doRequest(method, path, body, queryParams, false);
30144
30907
  }
30145
30908
  async doRequest(method, path, body, queryParams, isRetry) {
30146
30909
  const headers = {
30147
- Authorization: `Bearer ${this.apiToken}`,
30910
+ Authorization: `Bearer ${this.requireToken()}`,
30148
30911
  "Content-Type": "application/json",
30149
30912
  Accept: "application/json"
30150
30913
  };
@@ -30202,14 +30965,14 @@ function register(server2, client2) {
30202
30965
  description: "Retrieve a list of Tempo worklogs matching the given search parameters. Supports filtering by project, issue, date range, and more.",
30203
30966
  annotations: { readOnlyHint: true },
30204
30967
  inputSchema: {
30205
- projectId: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by project ids"),
30206
- issueId: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by issue ids"),
30207
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30208
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)"),
30209
- updatedFrom: external_exports3.string().optional().describe("Filter by update date/time (YYYY-MM-DD or YYYY-MM-DDTHH:mm:ssZ)"),
30210
- offset: external_exports3.number().int().optional().describe("Pagination offset (default 0)"),
30211
- limit: external_exports3.number().int().optional().describe("Max results (default 50)"),
30212
- orderBy: external_exports3.enum(["ID", "START_DATE_TIME", "UPDATED"]).optional().describe("Sort order (descending)")
30968
+ projectId: external_exports.array(external_exports.number().int()).optional().describe("Filter by project ids"),
30969
+ issueId: external_exports.array(external_exports.number().int()).optional().describe("Filter by issue ids"),
30970
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
30971
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)"),
30972
+ updatedFrom: external_exports.string().optional().describe("Filter by update date/time (YYYY-MM-DD or YYYY-MM-DDTHH:mm:ssZ)"),
30973
+ offset: external_exports.number().int().optional().describe("Pagination offset (default 0)"),
30974
+ limit: external_exports.number().int().optional().describe("Max results (default 50)"),
30975
+ orderBy: external_exports.enum(["ID", "START_DATE_TIME", "UPDATED"]).optional().describe("Sort order (descending)")
30213
30976
  }
30214
30977
  }, async ({ projectId, issueId, from, to, updatedFrom, offset, limit, orderBy }) => {
30215
30978
  const data = await client2.request("GET", "/4/worklogs", void 0, {
@@ -30228,7 +30991,7 @@ function register(server2, client2) {
30228
30991
  description: "Retrieve a single Tempo worklog by its id.",
30229
30992
  annotations: { readOnlyHint: true },
30230
30993
  inputSchema: {
30231
- id: external_exports3.string().describe("Worklog id")
30994
+ id: external_exports.string().describe("Worklog id")
30232
30995
  }
30233
30996
  }, async ({ id }) => {
30234
30997
  const data = await client2.request("GET", `/4/worklogs/${id}`);
@@ -30238,14 +31001,14 @@ function register(server2, client2) {
30238
31001
  description: "Create a new Tempo worklog.",
30239
31002
  annotations: { readOnlyHint: false },
30240
31003
  inputSchema: {
30241
- authorAccountId: external_exports3.string().describe("Atlassian account id of the worklog author"),
30242
- issueId: external_exports3.number().int().describe("Jira issue id to log time against"),
30243
- startDate: external_exports3.string().describe("Work date (YYYY-MM-DD)"),
30244
- timeSpentSeconds: external_exports3.number().int().describe("Time spent in seconds (e.g. 3600 = 1 hour)"),
30245
- startTime: external_exports3.string().regex(/^([0-1]?[0-9]|2[0-3])(:[0-5][0-9])(:[0-5][0-9])$/).optional().describe("Start time (HH:mm:ss)"),
30246
- description: external_exports3.string().optional().describe("Description of work done"),
30247
- billableSeconds: external_exports3.number().int().optional().describe("Billable seconds (defaults to timeSpentSeconds)"),
30248
- remainingEstimateSeconds: external_exports3.number().int().optional().describe("Remaining estimate in seconds")
31004
+ authorAccountId: external_exports.string().describe("Atlassian account id of the worklog author"),
31005
+ issueId: external_exports.number().int().describe("Jira issue id to log time against"),
31006
+ startDate: external_exports.string().describe("Work date (YYYY-MM-DD)"),
31007
+ timeSpentSeconds: external_exports.number().int().describe("Time spent in seconds (e.g. 3600 = 1 hour)"),
31008
+ startTime: external_exports.string().regex(/^([0-1]?[0-9]|2[0-3])(:[0-5][0-9])(:[0-5][0-9])$/).optional().describe("Start time (HH:mm:ss)"),
31009
+ description: external_exports.string().optional().describe("Description of work done"),
31010
+ billableSeconds: external_exports.number().int().optional().describe("Billable seconds (defaults to timeSpentSeconds)"),
31011
+ remainingEstimateSeconds: external_exports.number().int().optional().describe("Remaining estimate in seconds")
30249
31012
  }
30250
31013
  }, async ({ authorAccountId, issueId, startDate, timeSpentSeconds, startTime, description, billableSeconds, remainingEstimateSeconds }) => {
30251
31014
  const body = { authorAccountId, issueId, startDate, timeSpentSeconds };
@@ -30260,14 +31023,14 @@ function register(server2, client2) {
30260
31023
  description: "Update an existing Tempo worklog by id.",
30261
31024
  annotations: { readOnlyHint: false },
30262
31025
  inputSchema: {
30263
- id: external_exports3.string().describe("Worklog id"),
30264
- authorAccountId: external_exports3.string().describe("Atlassian account id of the worklog author"),
30265
- startDate: external_exports3.string().describe("Work date (YYYY-MM-DD)"),
30266
- timeSpentSeconds: external_exports3.number().int().describe("Time spent in seconds"),
30267
- startTime: external_exports3.string().optional().describe("Start time (HH:mm:ss)"),
30268
- description: external_exports3.string().optional().describe("Description of work done"),
30269
- billableSeconds: external_exports3.number().int().optional().describe("Billable seconds"),
30270
- remainingEstimateSeconds: external_exports3.number().int().optional().describe("Remaining estimate in seconds")
31026
+ id: external_exports.string().describe("Worklog id"),
31027
+ authorAccountId: external_exports.string().describe("Atlassian account id of the worklog author"),
31028
+ startDate: external_exports.string().describe("Work date (YYYY-MM-DD)"),
31029
+ timeSpentSeconds: external_exports.number().int().describe("Time spent in seconds"),
31030
+ startTime: external_exports.string().optional().describe("Start time (HH:mm:ss)"),
31031
+ description: external_exports.string().optional().describe("Description of work done"),
31032
+ billableSeconds: external_exports.number().int().optional().describe("Billable seconds"),
31033
+ remainingEstimateSeconds: external_exports.number().int().optional().describe("Remaining estimate in seconds")
30271
31034
  }
30272
31035
  }, async ({ id, authorAccountId, startDate, timeSpentSeconds, startTime, description, billableSeconds, remainingEstimateSeconds }) => {
30273
31036
  const body = { authorAccountId, startDate, timeSpentSeconds };
@@ -30282,8 +31045,8 @@ function register(server2, client2) {
30282
31045
  description: "Delete a Tempo worklog by id.",
30283
31046
  annotations: { readOnlyHint: false },
30284
31047
  inputSchema: {
30285
- id: external_exports3.string().describe("Worklog id"),
30286
- bypassPeriodClosuresAndApprovals: external_exports3.boolean().optional().describe("Bypass period closures/approvals (requires Tempo Admin + Override Mode)")
31048
+ id: external_exports.string().describe("Worklog id"),
31049
+ bypassPeriodClosuresAndApprovals: external_exports.boolean().optional().describe("Bypass period closures/approvals (requires Tempo Admin + Override Mode)")
30287
31050
  }
30288
31051
  }, async ({ id, bypassPeriodClosuresAndApprovals }) => {
30289
31052
  await client2.request("DELETE", `/4/worklogs/${id}`, void 0, {
@@ -30295,16 +31058,16 @@ function register(server2, client2) {
30295
31058
  description: "Search Tempo worklogs using a POST body with advanced filters (author ids, issue ids, project ids, date range).",
30296
31059
  annotations: { readOnlyHint: true },
30297
31060
  inputSchema: {
30298
- authorIds: external_exports3.array(external_exports3.string()).optional().describe("Atlassian account ids of worklog authors"),
30299
- issueIds: external_exports3.array(external_exports3.number().int()).optional().describe("Jira issue ids"),
30300
- projectIds: external_exports3.array(external_exports3.number().int()).optional().describe("Jira project ids"),
30301
- teamIds: external_exports3.array(external_exports3.number().int()).optional().describe("Tempo team ids"),
30302
- accountIds: external_exports3.array(external_exports3.string()).optional().describe("Tempo account keys"),
30303
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30304
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)"),
30305
- updatedFrom: external_exports3.string().optional().describe("Filter by update date"),
30306
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30307
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31061
+ authorIds: external_exports.array(external_exports.string()).optional().describe("Atlassian account ids of worklog authors"),
31062
+ issueIds: external_exports.array(external_exports.number().int()).optional().describe("Jira issue ids"),
31063
+ projectIds: external_exports.array(external_exports.number().int()).optional().describe("Jira project ids"),
31064
+ teamIds: external_exports.array(external_exports.number().int()).optional().describe("Tempo team ids"),
31065
+ accountIds: external_exports.array(external_exports.string()).optional().describe("Tempo account keys"),
31066
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
31067
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)"),
31068
+ updatedFrom: external_exports.string().optional().describe("Filter by update date"),
31069
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31070
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30308
31071
  }
30309
31072
  }, async ({ authorIds, issueIds, projectIds, teamIds, accountIds, from, to, updatedFrom, offset, limit }) => {
30310
31073
  const query = {};
@@ -30326,11 +31089,11 @@ function register(server2, client2) {
30326
31089
  description: "Retrieve all Tempo worklogs for a specific user (Atlassian account id).",
30327
31090
  annotations: { readOnlyHint: true },
30328
31091
  inputSchema: {
30329
- accountId: external_exports3.string().describe("Atlassian account id of the user"),
30330
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30331
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)"),
30332
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30333
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31092
+ accountId: external_exports.string().describe("Atlassian account id of the user"),
31093
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
31094
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)"),
31095
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31096
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30334
31097
  }
30335
31098
  }, async ({ accountId, from, to, offset, limit }) => {
30336
31099
  const data = await client2.request("GET", `/4/worklogs/user/${accountId}`, void 0, { from, to, offset, limit });
@@ -30340,11 +31103,11 @@ function register(server2, client2) {
30340
31103
  description: "Retrieve all Tempo worklogs for a specific Jira project.",
30341
31104
  annotations: { readOnlyHint: true },
30342
31105
  inputSchema: {
30343
- projectId: external_exports3.number().int().describe("Jira project id"),
30344
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30345
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)"),
30346
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30347
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31106
+ projectId: external_exports.number().int().describe("Jira project id"),
31107
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
31108
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)"),
31109
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31110
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30348
31111
  }
30349
31112
  }, async ({ projectId, from, to, offset, limit }) => {
30350
31113
  const data = await client2.request("GET", `/4/worklogs/project/${projectId}`, void 0, { from, to, offset, limit });
@@ -30354,11 +31117,11 @@ function register(server2, client2) {
30354
31117
  description: "Retrieve all Tempo worklogs for a specific Jira issue.",
30355
31118
  annotations: { readOnlyHint: true },
30356
31119
  inputSchema: {
30357
- issueId: external_exports3.number().int().describe("Jira issue id"),
30358
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30359
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)"),
30360
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30361
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31120
+ issueId: external_exports.number().int().describe("Jira issue id"),
31121
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
31122
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)"),
31123
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31124
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30362
31125
  }
30363
31126
  }, async ({ issueId, from, to, offset, limit }) => {
30364
31127
  const data = await client2.request("GET", `/4/worklogs/issue/${issueId}`, void 0, { from, to, offset, limit });
@@ -30368,11 +31131,11 @@ function register(server2, client2) {
30368
31131
  description: "Retrieve all Tempo worklogs for a specific Tempo team.",
30369
31132
  annotations: { readOnlyHint: true },
30370
31133
  inputSchema: {
30371
- teamId: external_exports3.number().int().describe("Tempo team id"),
30372
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30373
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)"),
30374
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30375
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31134
+ teamId: external_exports.number().int().describe("Tempo team id"),
31135
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
31136
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)"),
31137
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31138
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30376
31139
  }
30377
31140
  }, async ({ teamId, from, to, offset, limit }) => {
30378
31141
  const data = await client2.request("GET", `/4/worklogs/team/${teamId}`, void 0, { from, to, offset, limit });
@@ -30382,11 +31145,11 @@ function register(server2, client2) {
30382
31145
  description: "Retrieve all Tempo worklogs associated to a Tempo account key.",
30383
31146
  annotations: { readOnlyHint: true },
30384
31147
  inputSchema: {
30385
- accountKey: external_exports3.string().describe("Tempo account key (e.g. ACCOUNT-123)"),
30386
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30387
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)"),
30388
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30389
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31148
+ accountKey: external_exports.string().describe("Tempo account key (e.g. ACCOUNT-123)"),
31149
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
31150
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)"),
31151
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31152
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30390
31153
  }
30391
31154
  }, async ({ accountKey, from, to, offset, limit }) => {
30392
31155
  const data = await client2.request("GET", `/4/worklogs/account/${accountKey}`, void 0, { from, to, offset, limit });
@@ -30415,39 +31178,39 @@ function buildPlanBody(args) {
30415
31178
  return body;
30416
31179
  }
30417
31180
  var planFields = {
30418
- assigneeId: external_exports3.string().describe("Atlassian account id (for USER) or generic resource id (for GENERIC)"),
30419
- assigneeType: external_exports3.enum(["USER", "GENERIC"]).describe("Type of assignee"),
30420
- planItemId: external_exports3.string().describe("Id of the issue or project to plan against"),
30421
- planItemType: external_exports3.enum(["ISSUE", "PROJECT"]).describe("Type of plan item"),
30422
- startDate: external_exports3.string().describe("Plan start date (YYYY-MM-DD)"),
30423
- endDate: external_exports3.string().describe("Plan end date (YYYY-MM-DD)"),
30424
- plannedSeconds: external_exports3.number().int().optional().describe("Total seconds planned (for TOTAL_SECONDS persistence type)"),
30425
- plannedSecondsPerDay: external_exports3.number().int().optional().describe("Seconds planned per day (for SECONDS_PER_DAY persistence type)"),
30426
- effortPersistenceType: external_exports3.enum(["SECONDS_PER_DAY", "TOTAL_SECONDS"]).optional().describe("How effort is distributed"),
30427
- description: external_exports3.string().optional().describe("Plan description"),
30428
- startTime: external_exports3.string().regex(/^([0-1]?[0-9]|2[0-3])(:[0-5][0-9])$/).optional().describe("Start time (HH:mm)"),
30429
- includeNonWorkingDays: external_exports3.boolean().optional().describe("Include non-working days in plan"),
30430
- rule: external_exports3.enum(["NEVER", "WEEKLY", "BI_WEEKLY", "MONTHLY"]).optional().describe("Recurrence rule"),
30431
- recurrenceEndDate: external_exports3.string().optional().describe("End date for recurrence (YYYY-MM-DD)")
31181
+ assigneeId: external_exports.string().describe("Atlassian account id (for USER) or generic resource id (for GENERIC)"),
31182
+ assigneeType: external_exports.enum(["USER", "GENERIC"]).describe("Type of assignee"),
31183
+ planItemId: external_exports.string().describe("Id of the issue or project to plan against"),
31184
+ planItemType: external_exports.enum(["ISSUE", "PROJECT"]).describe("Type of plan item"),
31185
+ startDate: external_exports.string().describe("Plan start date (YYYY-MM-DD)"),
31186
+ endDate: external_exports.string().describe("Plan end date (YYYY-MM-DD)"),
31187
+ plannedSeconds: external_exports.number().int().optional().describe("Total seconds planned (for TOTAL_SECONDS persistence type)"),
31188
+ plannedSecondsPerDay: external_exports.number().int().optional().describe("Seconds planned per day (for SECONDS_PER_DAY persistence type)"),
31189
+ effortPersistenceType: external_exports.enum(["SECONDS_PER_DAY", "TOTAL_SECONDS"]).optional().describe("How effort is distributed"),
31190
+ description: external_exports.string().optional().describe("Plan description"),
31191
+ startTime: external_exports.string().regex(/^([0-1]?[0-9]|2[0-3])(:[0-5][0-9])$/).optional().describe("Start time (HH:mm)"),
31192
+ includeNonWorkingDays: external_exports.boolean().optional().describe("Include non-working days in plan"),
31193
+ rule: external_exports.enum(["NEVER", "WEEKLY", "BI_WEEKLY", "MONTHLY"]).optional().describe("Recurrence rule"),
31194
+ recurrenceEndDate: external_exports.string().optional().describe("End date for recurrence (YYYY-MM-DD)")
30432
31195
  };
30433
31196
  function register2(server2, client2) {
30434
31197
  server2.registerTool("tempo_get_plans", {
30435
31198
  description: "Retrieve a list of Tempo plans (resource allocations) matching the given parameters. Requires from and to dates.",
30436
31199
  annotations: { readOnlyHint: true },
30437
31200
  inputSchema: {
30438
- from: external_exports3.string().describe("Start date (YYYY-MM-DD) \u2014 required"),
30439
- to: external_exports3.string().describe("End date (YYYY-MM-DD) \u2014 required"),
30440
- accountIds: external_exports3.array(external_exports3.string()).optional().describe("Filter by user account ids"),
30441
- assigneeTypes: external_exports3.array(external_exports3.enum(["USER", "GENERIC"])).optional().describe("Filter by assignee type"),
30442
- genericResourceIds: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by generic resource ids"),
30443
- issueIds: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by Jira issue ids"),
30444
- projectIds: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by Jira project ids"),
30445
- planIds: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by specific plan ids"),
30446
- planItemTypes: external_exports3.array(external_exports3.enum(["ISSUE", "PROJECT"])).optional().describe("Filter by plan item type"),
30447
- plannedTimeBreakdown: external_exports3.array(external_exports3.enum(["DAILY", "PERIOD"])).optional().describe("Time breakdown granularity"),
30448
- updatedFrom: external_exports3.string().optional().describe("Filter by update date"),
30449
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30450
- limit: external_exports3.number().int().optional().describe("Max results (max 5000)")
31201
+ from: external_exports.string().describe("Start date (YYYY-MM-DD) \u2014 required"),
31202
+ to: external_exports.string().describe("End date (YYYY-MM-DD) \u2014 required"),
31203
+ accountIds: external_exports.array(external_exports.string()).optional().describe("Filter by user account ids"),
31204
+ assigneeTypes: external_exports.array(external_exports.enum(["USER", "GENERIC"])).optional().describe("Filter by assignee type"),
31205
+ genericResourceIds: external_exports.array(external_exports.number().int()).optional().describe("Filter by generic resource ids"),
31206
+ issueIds: external_exports.array(external_exports.number().int()).optional().describe("Filter by Jira issue ids"),
31207
+ projectIds: external_exports.array(external_exports.number().int()).optional().describe("Filter by Jira project ids"),
31208
+ planIds: external_exports.array(external_exports.number().int()).optional().describe("Filter by specific plan ids"),
31209
+ planItemTypes: external_exports.array(external_exports.enum(["ISSUE", "PROJECT"])).optional().describe("Filter by plan item type"),
31210
+ plannedTimeBreakdown: external_exports.array(external_exports.enum(["DAILY", "PERIOD"])).optional().describe("Time breakdown granularity"),
31211
+ updatedFrom: external_exports.string().optional().describe("Filter by update date"),
31212
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31213
+ limit: external_exports.number().int().optional().describe("Max results (max 5000)")
30451
31214
  }
30452
31215
  }, async (args) => {
30453
31216
  const data = await client2.request("GET", "/4/plans", void 0, args);
@@ -30457,7 +31220,7 @@ function register2(server2, client2) {
30457
31220
  description: "Retrieve a single Tempo plan (resource allocation) by id.",
30458
31221
  annotations: { readOnlyHint: true },
30459
31222
  inputSchema: {
30460
- id: external_exports3.number().int().describe("Plan id")
31223
+ id: external_exports.number().int().describe("Plan id")
30461
31224
  }
30462
31225
  }, async ({ id }) => {
30463
31226
  const data = await client2.request("GET", `/4/plans/${id}`);
@@ -30476,7 +31239,7 @@ function register2(server2, client2) {
30476
31239
  description: "Update an existing Tempo plan (resource allocation) by id.",
30477
31240
  annotations: { readOnlyHint: false },
30478
31241
  inputSchema: {
30479
- id: external_exports3.number().int().describe("Plan id"),
31242
+ id: external_exports.number().int().describe("Plan id"),
30480
31243
  ...planFields
30481
31244
  }
30482
31245
  }, async ({ id, ...rest }) => {
@@ -30488,7 +31251,7 @@ function register2(server2, client2) {
30488
31251
  description: "Delete a Tempo plan (resource allocation) by id.",
30489
31252
  annotations: { readOnlyHint: false },
30490
31253
  inputSchema: {
30491
- id: external_exports3.number().int().describe("Plan id")
31254
+ id: external_exports.number().int().describe("Plan id")
30492
31255
  }
30493
31256
  }, async ({ id }) => {
30494
31257
  await client2.request("DELETE", `/4/plans/${id}`);
@@ -30509,12 +31272,12 @@ function register3(server2, client2) {
30509
31272
  description: "Retrieve a list of Tempo teams. Can filter by name, member account ids, or specific team ids.",
30510
31273
  annotations: { readOnlyHint: true },
30511
31274
  inputSchema: {
30512
- name: external_exports3.string().optional().describe("Filter by team name"),
30513
- teamIds: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by specific team ids"),
30514
- teamMembers: external_exports3.array(external_exports3.string()).optional().describe("Filter by member Atlassian account ids"),
30515
- includeMemberships: external_exports3.boolean().optional().describe("Include team member memberships in response"),
30516
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30517
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31275
+ name: external_exports.string().optional().describe("Filter by team name"),
31276
+ teamIds: external_exports.array(external_exports.number().int()).optional().describe("Filter by specific team ids"),
31277
+ teamMembers: external_exports.array(external_exports.string()).optional().describe("Filter by member Atlassian account ids"),
31278
+ includeMemberships: external_exports.boolean().optional().describe("Include team member memberships in response"),
31279
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31280
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30518
31281
  }
30519
31282
  }, async ({ name: teamName, teamIds, teamMembers, includeMemberships, offset, limit }) => {
30520
31283
  const data = await client2.request("GET", "/4/teams", void 0, {
@@ -30531,7 +31294,7 @@ function register3(server2, client2) {
30531
31294
  description: "Retrieve a single Tempo team by id.",
30532
31295
  annotations: { readOnlyHint: true },
30533
31296
  inputSchema: {
30534
- id: external_exports3.number().int().describe("Team id")
31297
+ id: external_exports.number().int().describe("Team id")
30535
31298
  }
30536
31299
  }, async ({ id }) => {
30537
31300
  const data = await client2.request("GET", `/4/teams/${id}`);
@@ -30541,10 +31304,10 @@ function register3(server2, client2) {
30541
31304
  description: "Create a new Tempo team.",
30542
31305
  annotations: { readOnlyHint: false },
30543
31306
  inputSchema: {
30544
- name: external_exports3.string().describe("Team name"),
30545
- summary: external_exports3.string().optional().describe("Short description of the team"),
30546
- leadAccountId: external_exports3.string().optional().describe("Atlassian account id of the team lead"),
30547
- programId: external_exports3.number().int().optional().describe("Id of the program this team belongs to")
31307
+ name: external_exports.string().describe("Team name"),
31308
+ summary: external_exports.string().optional().describe("Short description of the team"),
31309
+ leadAccountId: external_exports.string().optional().describe("Atlassian account id of the team lead"),
31310
+ programId: external_exports.number().int().optional().describe("Id of the program this team belongs to")
30548
31311
  }
30549
31312
  }, async (args) => {
30550
31313
  const body = buildTeamBody(args);
@@ -30555,11 +31318,11 @@ function register3(server2, client2) {
30555
31318
  description: "Update an existing Tempo team by id.",
30556
31319
  annotations: { readOnlyHint: false },
30557
31320
  inputSchema: {
30558
- id: external_exports3.number().int().describe("Team id"),
30559
- name: external_exports3.string().describe("Team name"),
30560
- summary: external_exports3.string().optional().describe("Short description of the team"),
30561
- leadAccountId: external_exports3.string().optional().describe("Atlassian account id of the team lead"),
30562
- programId: external_exports3.number().int().optional().describe("Id of the program this team belongs to")
31321
+ id: external_exports.number().int().describe("Team id"),
31322
+ name: external_exports.string().describe("Team name"),
31323
+ summary: external_exports.string().optional().describe("Short description of the team"),
31324
+ leadAccountId: external_exports.string().optional().describe("Atlassian account id of the team lead"),
31325
+ programId: external_exports.number().int().optional().describe("Id of the program this team belongs to")
30563
31326
  }
30564
31327
  }, async ({ id, ...rest }) => {
30565
31328
  const body = buildTeamBody(rest);
@@ -30570,7 +31333,7 @@ function register3(server2, client2) {
30570
31333
  description: "Delete a Tempo team by id.",
30571
31334
  annotations: { readOnlyHint: false },
30572
31335
  inputSchema: {
30573
- id: external_exports3.number().int().describe("Team id")
31336
+ id: external_exports.number().int().describe("Team id")
30574
31337
  }
30575
31338
  }, async ({ id }) => {
30576
31339
  await client2.request("DELETE", `/4/teams/${id}`);
@@ -30580,10 +31343,10 @@ function register3(server2, client2) {
30580
31343
  description: "Retrieve team memberships, optionally filtered by account id or team id.",
30581
31344
  annotations: { readOnlyHint: true },
30582
31345
  inputSchema: {
30583
- accountIds: external_exports3.array(external_exports3.string()).optional().describe("Filter by Atlassian account ids"),
30584
- teamIds: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by team ids"),
30585
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30586
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31346
+ accountIds: external_exports.array(external_exports.string()).optional().describe("Filter by Atlassian account ids"),
31347
+ teamIds: external_exports.array(external_exports.number().int()).optional().describe("Filter by team ids"),
31348
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31349
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30587
31350
  }
30588
31351
  }, async ({ accountIds, teamIds, offset, limit }) => {
30589
31352
  const data = await client2.request("GET", "/4/team-memberships", void 0, {
@@ -30598,12 +31361,12 @@ function register3(server2, client2) {
30598
31361
  description: "Search Tempo team memberships with advanced filters via POST.",
30599
31362
  annotations: { readOnlyHint: true },
30600
31363
  inputSchema: {
30601
- teamIds: external_exports3.array(external_exports3.number().int()).optional().describe("Filter by team ids"),
30602
- accountIds: external_exports3.array(external_exports3.string()).optional().describe("Filter by Atlassian account ids"),
30603
- from: external_exports3.string().optional().describe("Membership active from date (YYYY-MM-DD)"),
30604
- to: external_exports3.string().optional().describe("Membership active to date (YYYY-MM-DD)"),
30605
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30606
- limit: external_exports3.number().int().optional().describe("Max results")
31364
+ teamIds: external_exports.array(external_exports.number().int()).optional().describe("Filter by team ids"),
31365
+ accountIds: external_exports.array(external_exports.string()).optional().describe("Filter by Atlassian account ids"),
31366
+ from: external_exports.string().optional().describe("Membership active from date (YYYY-MM-DD)"),
31367
+ to: external_exports.string().optional().describe("Membership active to date (YYYY-MM-DD)"),
31368
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31369
+ limit: external_exports.number().int().optional().describe("Max results")
30607
31370
  }
30608
31371
  }, async ({ teamIds, accountIds, from, to, offset, limit }) => {
30609
31372
  const query = {};
@@ -30635,8 +31398,8 @@ function register4(server2, client2) {
30635
31398
  description: "Retrieve a list of all Tempo accounts (OPEN and CLOSED).",
30636
31399
  annotations: { readOnlyHint: true },
30637
31400
  inputSchema: {
30638
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30639
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31401
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31402
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30640
31403
  }
30641
31404
  }, async ({ offset, limit }) => {
30642
31405
  const data = await client2.request("GET", "/4/accounts", void 0, { offset, limit });
@@ -30646,7 +31409,7 @@ function register4(server2, client2) {
30646
31409
  description: "Retrieve a single Tempo account by its key.",
30647
31410
  annotations: { readOnlyHint: true },
30648
31411
  inputSchema: {
30649
- key: external_exports3.string().describe("Account key (e.g. ACCOUNT-123)")
31412
+ key: external_exports.string().describe("Account key (e.g. ACCOUNT-123)")
30650
31413
  }
30651
31414
  }, async ({ key }) => {
30652
31415
  const data = await client2.request("GET", `/4/accounts/${key}`);
@@ -30656,12 +31419,12 @@ function register4(server2, client2) {
30656
31419
  description: "Search Tempo accounts with advanced filters (status, category, project).",
30657
31420
  annotations: { readOnlyHint: true },
30658
31421
  inputSchema: {
30659
- query: external_exports3.string().optional().describe("Text search across account name and key"),
30660
- statusList: external_exports3.array(external_exports3.enum(["OPEN", "CLOSED", "ARCHIVED"])).optional().describe("Filter by account status"),
30661
- accountCategoryKeys: external_exports3.array(external_exports3.string()).optional().describe("Filter by account category keys"),
30662
- projectKeys: external_exports3.array(external_exports3.string()).optional().describe("Filter by associated Jira project keys"),
30663
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30664
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31422
+ query: external_exports.string().optional().describe("Text search across account name and key"),
31423
+ statusList: external_exports.array(external_exports.enum(["OPEN", "CLOSED", "ARCHIVED"])).optional().describe("Filter by account status"),
31424
+ accountCategoryKeys: external_exports.array(external_exports.string()).optional().describe("Filter by account category keys"),
31425
+ projectKeys: external_exports.array(external_exports.string()).optional().describe("Filter by associated Jira project keys"),
31426
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31427
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30665
31428
  }
30666
31429
  }, async ({ query, statusList, accountCategoryKeys, projectKeys, offset, limit }) => {
30667
31430
  const qs = {};
@@ -30679,14 +31442,14 @@ function register4(server2, client2) {
30679
31442
  description: "Create a new Tempo account.",
30680
31443
  annotations: { readOnlyHint: false },
30681
31444
  inputSchema: {
30682
- key: external_exports3.string().describe("Unique account key"),
30683
- name: external_exports3.string().describe("Account name"),
30684
- status: external_exports3.enum(["OPEN", "CLOSED", "ARCHIVED"]).optional().describe("Account status (default OPEN)"),
30685
- leadAccountId: external_exports3.string().optional().describe("Atlassian account id of the account lead"),
30686
- categoryKey: external_exports3.string().optional().describe("Account category key"),
30687
- contactAccountId: external_exports3.string().optional().describe("Atlassian account id of the contact person"),
30688
- externalContactName: external_exports3.string().optional().describe("Name of external contact"),
30689
- monthlyBudget: external_exports3.number().int().optional().describe("Monthly budget in seconds")
31445
+ key: external_exports.string().describe("Unique account key"),
31446
+ name: external_exports.string().describe("Account name"),
31447
+ status: external_exports.enum(["OPEN", "CLOSED", "ARCHIVED"]).optional().describe("Account status (default OPEN)"),
31448
+ leadAccountId: external_exports.string().optional().describe("Atlassian account id of the account lead"),
31449
+ categoryKey: external_exports.string().optional().describe("Account category key"),
31450
+ contactAccountId: external_exports.string().optional().describe("Atlassian account id of the contact person"),
31451
+ externalContactName: external_exports.string().optional().describe("Name of external contact"),
31452
+ monthlyBudget: external_exports.number().int().optional().describe("Monthly budget in seconds")
30690
31453
  }
30691
31454
  }, async (args) => {
30692
31455
  const body = buildAccountBody(args);
@@ -30697,14 +31460,14 @@ function register4(server2, client2) {
30697
31460
  description: "Update an existing Tempo account by its key.",
30698
31461
  annotations: { readOnlyHint: false },
30699
31462
  inputSchema: {
30700
- key: external_exports3.string().describe("Account key to update"),
30701
- name: external_exports3.string().describe("Account name"),
30702
- status: external_exports3.enum(["OPEN", "CLOSED", "ARCHIVED"]).optional().describe("Account status"),
30703
- leadAccountId: external_exports3.string().optional().describe("Atlassian account id of the account lead"),
30704
- categoryKey: external_exports3.string().optional().describe("Account category key"),
30705
- contactAccountId: external_exports3.string().optional().describe("Atlassian account id of the contact person"),
30706
- externalContactName: external_exports3.string().optional().describe("Name of external contact"),
30707
- monthlyBudget: external_exports3.number().int().optional().describe("Monthly budget in seconds")
31463
+ key: external_exports.string().describe("Account key to update"),
31464
+ name: external_exports.string().describe("Account name"),
31465
+ status: external_exports.enum(["OPEN", "CLOSED", "ARCHIVED"]).optional().describe("Account status"),
31466
+ leadAccountId: external_exports.string().optional().describe("Atlassian account id of the account lead"),
31467
+ categoryKey: external_exports.string().optional().describe("Account category key"),
31468
+ contactAccountId: external_exports.string().optional().describe("Atlassian account id of the contact person"),
31469
+ externalContactName: external_exports.string().optional().describe("Name of external contact"),
31470
+ monthlyBudget: external_exports.number().int().optional().describe("Monthly budget in seconds")
30708
31471
  }
30709
31472
  }, async ({ key, ...rest }) => {
30710
31473
  const body = buildAccountBody({ key, ...rest });
@@ -30715,7 +31478,7 @@ function register4(server2, client2) {
30715
31478
  description: "Delete a Tempo account by its key.",
30716
31479
  annotations: { readOnlyHint: false },
30717
31480
  inputSchema: {
30718
- key: external_exports3.string().describe("Account key to delete")
31481
+ key: external_exports.string().describe("Account key to delete")
30719
31482
  }
30720
31483
  }, async ({ key }) => {
30721
31484
  await client2.request("DELETE", `/4/accounts/${key}`);
@@ -30725,8 +31488,8 @@ function register4(server2, client2) {
30725
31488
  description: "Retrieve all Tempo account categories.",
30726
31489
  annotations: { readOnlyHint: true },
30727
31490
  inputSchema: {
30728
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30729
- limit: external_exports3.number().int().optional().describe("Max results")
31491
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31492
+ limit: external_exports.number().int().optional().describe("Max results")
30730
31493
  }
30731
31494
  }, async ({ offset, limit }) => {
30732
31495
  const data = await client2.request("GET", "/4/account-categories", void 0, { offset, limit });
@@ -30740,8 +31503,8 @@ function register5(server2, client2) {
30740
31503
  description: "Retrieve a paginated list of all Tempo Financial Manager projects.",
30741
31504
  annotations: { readOnlyHint: true },
30742
31505
  inputSchema: {
30743
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30744
- limit: external_exports3.number().int().optional().describe("Max results (default 50)")
31506
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31507
+ limit: external_exports.number().int().optional().describe("Max results (default 50)")
30745
31508
  }
30746
31509
  }, async ({ offset, limit }) => {
30747
31510
  const data = await client2.request("GET", "/4/projects", void 0, { offset, limit });
@@ -30751,7 +31514,7 @@ function register5(server2, client2) {
30751
31514
  description: "Retrieve a single Tempo Financial Manager project by id.",
30752
31515
  annotations: { readOnlyHint: true },
30753
31516
  inputSchema: {
30754
- id: external_exports3.string().describe("Project id")
31517
+ id: external_exports.string().describe("Project id")
30755
31518
  }
30756
31519
  }, async ({ id }) => {
30757
31520
  const data = await client2.request("GET", `/4/projects/${id}`);
@@ -30761,9 +31524,9 @@ function register5(server2, client2) {
30761
31524
  description: "Retrieve the current timesheet approval status for a user in the given period.",
30762
31525
  annotations: { readOnlyHint: true },
30763
31526
  inputSchema: {
30764
- accountId: external_exports3.string().describe("Atlassian account id of the user"),
30765
- from: external_exports3.string().optional().describe("Period start date (YYYY-MM-DD)"),
30766
- to: external_exports3.string().optional().describe("Period end date (YYYY-MM-DD)")
31527
+ accountId: external_exports.string().describe("Atlassian account id of the user"),
31528
+ from: external_exports.string().optional().describe("Period start date (YYYY-MM-DD)"),
31529
+ to: external_exports.string().optional().describe("Period end date (YYYY-MM-DD)")
30767
31530
  }
30768
31531
  }, async ({ accountId, from, to }) => {
30769
31532
  const data = await client2.request("GET", `/4/timesheet-approvals/user/${accountId}`, void 0, { from, to });
@@ -30773,8 +31536,8 @@ function register5(server2, client2) {
30773
31536
  description: "Retrieve all timesheets that are currently waiting for approval.",
30774
31537
  annotations: { readOnlyHint: true },
30775
31538
  inputSchema: {
30776
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30777
- limit: external_exports3.number().int().optional().describe("Max results")
31539
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31540
+ limit: external_exports.number().int().optional().describe("Max results")
30778
31541
  }
30779
31542
  }, async ({ offset, limit }) => {
30780
31543
  const data = await client2.request("GET", "/4/timesheet-approvals/waiting", void 0, { offset, limit });
@@ -30784,12 +31547,12 @@ function register5(server2, client2) {
30784
31547
  description: "Search timesheet approval audit logs.",
30785
31548
  annotations: { readOnlyHint: true },
30786
31549
  inputSchema: {
30787
- accountIds: external_exports3.array(external_exports3.string()).optional().describe("Filter by Atlassian account ids"),
30788
- reviewerIds: external_exports3.array(external_exports3.string()).optional().describe("Filter by reviewer account ids"),
30789
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30790
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)"),
30791
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30792
- limit: external_exports3.number().int().optional().describe("Max results")
31550
+ accountIds: external_exports.array(external_exports.string()).optional().describe("Filter by Atlassian account ids"),
31551
+ reviewerIds: external_exports.array(external_exports.string()).optional().describe("Filter by reviewer account ids"),
31552
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
31553
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)"),
31554
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31555
+ limit: external_exports.number().int().optional().describe("Max results")
30793
31556
  }
30794
31557
  }, async ({ accountIds, reviewerIds, from, to, offset, limit }) => {
30795
31558
  const qs = {};
@@ -30807,8 +31570,8 @@ function register5(server2, client2) {
30807
31570
  description: "Retrieve Tempo period definitions (used for timesheet approval cycles).",
30808
31571
  annotations: { readOnlyHint: true },
30809
31572
  inputSchema: {
30810
- from: external_exports3.string().optional().describe("Start date (YYYY-MM-DD)"),
30811
- to: external_exports3.string().optional().describe("End date (YYYY-MM-DD)")
31573
+ from: external_exports.string().optional().describe("Start date (YYYY-MM-DD)"),
31574
+ to: external_exports.string().optional().describe("End date (YYYY-MM-DD)")
30812
31575
  }
30813
31576
  }, async ({ from, to }) => {
30814
31577
  const data = await client2.request("GET", "/4/periods", void 0, { from, to });
@@ -30818,9 +31581,9 @@ function register5(server2, client2) {
30818
31581
  description: "Retrieve the work schedule for a user, including planned working hours per day.",
30819
31582
  annotations: { readOnlyHint: true },
30820
31583
  inputSchema: {
30821
- accountId: external_exports3.string().describe("Atlassian account id of the user"),
30822
- from: external_exports3.string().describe("Start date (YYYY-MM-DD)"),
30823
- to: external_exports3.string().describe("End date (YYYY-MM-DD)")
31584
+ accountId: external_exports.string().describe("Atlassian account id of the user"),
31585
+ from: external_exports.string().describe("Start date (YYYY-MM-DD)"),
31586
+ to: external_exports.string().describe("End date (YYYY-MM-DD)")
30824
31587
  }
30825
31588
  }, async ({ accountId, from, to }) => {
30826
31589
  const data = await client2.request("GET", `/4/user-schedule`, void 0, { accountId, from, to });
@@ -30837,8 +31600,8 @@ function register5(server2, client2) {
30837
31600
  description: "Retrieve all Tempo work attributes (custom fields on worklogs).",
30838
31601
  annotations: { readOnlyHint: true },
30839
31602
  inputSchema: {
30840
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30841
- limit: external_exports3.number().int().optional().describe("Max results")
31603
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31604
+ limit: external_exports.number().int().optional().describe("Max results")
30842
31605
  }
30843
31606
  }, async ({ offset, limit }) => {
30844
31607
  const data = await client2.request("GET", "/4/work-attributes", void 0, { offset, limit });
@@ -30848,8 +31611,8 @@ function register5(server2, client2) {
30848
31611
  description: "Retrieve all Tempo roles.",
30849
31612
  annotations: { readOnlyHint: true },
30850
31613
  inputSchema: {
30851
- offset: external_exports3.number().int().optional().describe("Pagination offset"),
30852
- limit: external_exports3.number().int().optional().describe("Max results")
31614
+ offset: external_exports.number().int().optional().describe("Pagination offset"),
31615
+ limit: external_exports.number().int().optional().describe("Max results")
30853
31616
  }
30854
31617
  }, async ({ offset, limit }) => {
30855
31618
  const data = await client2.request("GET", "/4/roles", void 0, { offset, limit });
@@ -30860,7 +31623,8 @@ function register5(server2, client2) {
30860
31623
  // src/index.ts
30861
31624
  var client = new TempoClient();
30862
31625
  var server = new McpServer(
30863
- { name: "tempo-api-mcp", version: "2.0.2" }
31626
+ { name: "tempo-api-mcp", version: "2.1.3" }
31627
+ // x-release-please-version
30864
31628
  );
30865
31629
  register(server, client);
30866
31630
  register2(server, client);