@skuba-lib/api 2.0.0-node-24-20251204121724 → 2.0.0-node-24-20251205024935

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.
@@ -1,6 +1,6 @@
1
- require('../error-CNXEIv8x.cjs');
2
- require('../exec-8JvuPL56.cjs');
3
- const require_buildkite = require('../buildkite-D6vGtaVa.cjs');
1
+ require('../error-CVifReol.cjs');
2
+ require('../exec-D1GJDDjG.cjs');
3
+ const require_buildkite = require('../buildkite-C8WlNLy0.cjs');
4
4
 
5
5
  exports.annotate = require_buildkite.annotate;
6
6
  exports.md = require_buildkite.md;
@@ -1,5 +1,5 @@
1
- import "../exec-CQpelaVh.mjs";
2
- import "../error-DFGohsZ4.mjs";
3
- import { n as md, r as annotate } from "../buildkite-iiWXomhx.mjs";
1
+ import "../exec-HwUg7-Rf.mjs";
2
+ import "../error-CyYI05iP.mjs";
3
+ import { n as md, r as annotate } from "../buildkite-Caw9s_bL.mjs";
4
4
 
5
5
  export { annotate, md };
@@ -1,5 +1,5 @@
1
- const require_error = require('./error-CNXEIv8x.cjs');
2
- const require_exec = require('./exec-8JvuPL56.cjs');
1
+ const require_error = require('./error-CVifReol.cjs');
2
+ const require_exec = require('./exec-D1GJDDjG.cjs');
3
3
 
4
4
  //#region src/buildkite/annotate.ts
5
5
  const isAnnotationEnabled = async () => Boolean(process.env.BUILDKITE && process.env.BUILDKITE_AGENT_ACCESS_TOKEN && process.env.BUILDKITE_JOB_ID && await require_exec.hasCommand("buildkite-agent"));
@@ -1,6 +1,6 @@
1
1
  import { n as __export } from "./chunk-vrZdfYgq.mjs";
2
- import { n as exec, r as hasCommand } from "./exec-CQpelaVh.mjs";
3
- import { n as log } from "./error-DFGohsZ4.mjs";
2
+ import { n as exec, r as hasCommand } from "./exec-HwUg7-Rf.mjs";
3
+ import { n as log } from "./error-CyYI05iP.mjs";
4
4
 
5
5
  //#region src/buildkite/annotate.ts
6
6
  const isAnnotationEnabled = async () => Boolean(process.env.BUILDKITE && process.env.BUILDKITE_AGENT_ACCESS_TOKEN && process.env.BUILDKITE_JOB_ID && await hasCommand("buildkite-agent"));
@@ -49,31 +49,37 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
49
49
  let util = require("util");
50
50
  let node_util = require("node:util");
51
51
 
52
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/core.js
52
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/core.js
53
53
  /** A special constant with type `never` */
54
54
  const NEVER = Object.freeze({ status: "aborted" });
55
55
  function $constructor(name, initializer$2, params) {
56
56
  function init(inst, def) {
57
- var _a;
58
- Object.defineProperty(inst, "_zod", {
59
- value: inst._zod ?? {},
57
+ if (!inst._zod) Object.defineProperty(inst, "_zod", {
58
+ value: {
59
+ def,
60
+ constr: _,
61
+ traits: /* @__PURE__ */ new Set()
62
+ },
60
63
  enumerable: false
61
64
  });
62
- (_a = inst._zod).traits ?? (_a.traits = /* @__PURE__ */ new Set());
65
+ if (inst._zod.traits.has(name)) return;
63
66
  inst._zod.traits.add(name);
64
67
  initializer$2(inst, def);
65
- for (const k in _.prototype) if (!(k in inst)) Object.defineProperty(inst, k, { value: _.prototype[k].bind(inst) });
66
- inst._zod.constr = _;
67
- inst._zod.def = def;
68
+ const proto = _.prototype;
69
+ const keys = Object.keys(proto);
70
+ for (let i = 0; i < keys.length; i++) {
71
+ const k = keys[i];
72
+ if (!(k in inst)) inst[k] = proto[k].bind(inst);
73
+ }
68
74
  }
69
75
  const Parent = params?.Parent ?? Object;
70
76
  class Definition extends Parent {}
71
77
  Object.defineProperty(Definition, "name", { value: name });
72
78
  function _(def) {
73
- var _a;
79
+ var _a$1;
74
80
  const inst = params?.Parent ? new Definition() : this;
75
81
  init(inst, def);
76
- (_a = inst._zod).deferred ?? (_a.deferred = []);
82
+ (_a$1 = inst._zod).deferred ?? (_a$1.deferred = []);
77
83
  for (const fn of inst._zod.deferred) fn();
78
84
  return inst;
79
85
  }
@@ -103,7 +109,7 @@ function config(newConfig) {
103
109
  }
104
110
 
105
111
  //#endregion
106
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/util.js
112
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/util.js
107
113
  function getEnumValues(entries) {
108
114
  const numericValues = Object.values(entries).filter((v) => typeof v === "number");
109
115
  return Object.entries(entries).filter(([k, _]) => numericValues.indexOf(+k) === -1).map(([_, v]) => v);
@@ -178,6 +184,9 @@ function mergeDefs(...defs) {
178
184
  function esc(str) {
179
185
  return JSON.stringify(str);
180
186
  }
187
+ function slugify(input) {
188
+ return input.toLowerCase().trim().replace(/[^\w\s-]/g, "").replace(/[\s_-]+/g, "-").replace(/^-+|-+$/g, "");
189
+ }
181
190
  const captureStackTrace = "captureStackTrace" in Error ? Error.captureStackTrace : (..._args) => {};
182
191
  function isObject$1(data) {
183
192
  return typeof data === "object" && data !== null && !Array.isArray(data);
@@ -195,6 +204,7 @@ function isPlainObject(o) {
195
204
  if (isObject$1(o) === false) return false;
196
205
  const ctor = o.constructor;
197
206
  if (ctor === void 0) return true;
207
+ if (typeof ctor !== "function") return true;
198
208
  const prot = ctor.prototype;
199
209
  if (isObject$1(prot) === false) return false;
200
210
  if (Object.prototype.hasOwnProperty.call(prot, "isPrototypeOf") === false) return false;
@@ -377,8 +387,8 @@ function aborted(x, startIndex = 0) {
377
387
  }
378
388
  function prefixIssues(path, issues) {
379
389
  return issues.map((iss) => {
380
- var _a;
381
- (_a = iss).path ?? (_a.path = []);
390
+ var _a$1;
391
+ (_a$1 = iss).path ?? (_a$1.path = []);
382
392
  iss.path.unshift(path);
383
393
  return iss;
384
394
  });
@@ -414,7 +424,7 @@ function issue(...args) {
414
424
  }
415
425
 
416
426
  //#endregion
417
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/errors.js
427
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/errors.js
418
428
  const initializer$1 = (inst, def) => {
419
429
  inst.name = "$ZodError";
420
430
  Object.defineProperty(inst, "_zod", {
@@ -472,7 +482,7 @@ function formatError(error, mapper = (issue$1) => issue$1.message) {
472
482
  }
473
483
 
474
484
  //#endregion
475
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/parse.js
485
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/parse.js
476
486
  const _parse = (_Err) => (schema, value, _ctx, _params) => {
477
487
  const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
478
488
  const result = schema._zod.run({
@@ -576,7 +586,7 @@ const _safeDecodeAsync = (_Err) => async (schema, value, _ctx) => {
576
586
  const safeDecodeAsync$1 = /* @__PURE__ */ _safeDecodeAsync($ZodRealError);
577
587
 
578
588
  //#endregion
579
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/regexes.js
589
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/regexes.js
580
590
  const cuid = /^[cC][^\s-]{8,}$/;
581
591
  const cuid2 = /^[0-9a-z]+$/;
582
592
  const ulid = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/;
@@ -606,7 +616,6 @@ const cidrv4 = /^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-
606
616
  const cidrv6 = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/;
607
617
  const base64 = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/;
608
618
  const base64url = /^[A-Za-z0-9_-]*$/;
609
- const 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])?)*\.?$/;
610
619
  const e164 = /^\+(?:[0-9]){6,14}[0-9]$/;
611
620
  const 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])))`;
612
621
  const date$1 = /* @__PURE__ */ new RegExp(`^${dateSource}$`);
@@ -635,12 +644,12 @@ const lowercase = /^[^A-Z]*$/;
635
644
  const uppercase = /^[^a-z]*$/;
636
645
 
637
646
  //#endregion
638
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/checks.js
647
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/checks.js
639
648
  const $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
640
- var _a;
649
+ var _a$1;
641
650
  inst._zod ?? (inst._zod = {});
642
651
  inst._zod.def = def;
643
- (_a = inst._zod).onattach ?? (_a.onattach = []);
652
+ (_a$1 = inst._zod).onattach ?? (_a$1.onattach = []);
644
653
  });
645
654
  const numericOriginMap = {
646
655
  number: "number",
@@ -694,8 +703,8 @@ const $ZodCheckGreaterThan = /* @__PURE__ */ $constructor("$ZodCheckGreaterThan"
694
703
  const $ZodCheckMultipleOf = /* @__PURE__ */ $constructor("$ZodCheckMultipleOf", (inst, def) => {
695
704
  $ZodCheck.init(inst, def);
696
705
  inst._zod.onattach.push((inst$1) => {
697
- var _a;
698
- (_a = inst$1._zod.bag).multipleOf ?? (_a.multipleOf = def.value);
706
+ var _a$1;
707
+ (_a$1 = inst$1._zod.bag).multipleOf ?? (_a$1.multipleOf = def.value);
699
708
  });
700
709
  inst._zod.check = (payload) => {
701
710
  if (typeof payload.value !== typeof def.value) throw new Error("Cannot mix number and bigint in multiple_of check.");
@@ -778,9 +787,9 @@ const $ZodCheckNumberFormat = /* @__PURE__ */ $constructor("$ZodCheckNumberForma
778
787
  };
779
788
  });
780
789
  const $ZodCheckMaxLength = /* @__PURE__ */ $constructor("$ZodCheckMaxLength", (inst, def) => {
781
- var _a;
790
+ var _a$1;
782
791
  $ZodCheck.init(inst, def);
783
- (_a = inst._zod.def).when ?? (_a.when = (payload) => {
792
+ (_a$1 = inst._zod.def).when ?? (_a$1.when = (payload) => {
784
793
  const val = payload.value;
785
794
  return !nullish(val) && val.length !== void 0;
786
795
  });
@@ -804,9 +813,9 @@ const $ZodCheckMaxLength = /* @__PURE__ */ $constructor("$ZodCheckMaxLength", (i
804
813
  };
805
814
  });
806
815
  const $ZodCheckMinLength = /* @__PURE__ */ $constructor("$ZodCheckMinLength", (inst, def) => {
807
- var _a;
816
+ var _a$1;
808
817
  $ZodCheck.init(inst, def);
809
- (_a = inst._zod.def).when ?? (_a.when = (payload) => {
818
+ (_a$1 = inst._zod.def).when ?? (_a$1.when = (payload) => {
810
819
  const val = payload.value;
811
820
  return !nullish(val) && val.length !== void 0;
812
821
  });
@@ -830,9 +839,9 @@ const $ZodCheckMinLength = /* @__PURE__ */ $constructor("$ZodCheckMinLength", (i
830
839
  };
831
840
  });
832
841
  const $ZodCheckLengthEquals = /* @__PURE__ */ $constructor("$ZodCheckLengthEquals", (inst, def) => {
833
- var _a;
842
+ var _a$1;
834
843
  $ZodCheck.init(inst, def);
835
- (_a = inst._zod.def).when ?? (_a.when = (payload) => {
844
+ (_a$1 = inst._zod.def).when ?? (_a$1.when = (payload) => {
836
845
  const val = payload.value;
837
846
  return !nullish(val) && val.length !== void 0;
838
847
  });
@@ -866,7 +875,7 @@ const $ZodCheckLengthEquals = /* @__PURE__ */ $constructor("$ZodCheckLengthEqual
866
875
  };
867
876
  });
868
877
  const $ZodCheckStringFormat = /* @__PURE__ */ $constructor("$ZodCheckStringFormat", (inst, def) => {
869
- var _a, _b;
878
+ var _a$1, _b;
870
879
  $ZodCheck.init(inst, def);
871
880
  inst._zod.onattach.push((inst$1) => {
872
881
  const bag = inst$1._zod.bag;
@@ -876,7 +885,7 @@ const $ZodCheckStringFormat = /* @__PURE__ */ $constructor("$ZodCheckStringForma
876
885
  bag.patterns.add(def.pattern);
877
886
  }
878
887
  });
879
- if (def.pattern) (_a = inst._zod).check ?? (_a.check = (payload) => {
888
+ if (def.pattern) (_a$1 = inst._zod).check ?? (_a$1.check = (payload) => {
880
889
  def.pattern.lastIndex = 0;
881
890
  if (def.pattern.test(payload.value)) return;
882
891
  payload.issues.push({
@@ -990,7 +999,7 @@ const $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (i
990
999
  });
991
1000
 
992
1001
  //#endregion
993
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/doc.js
1002
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/doc.js
994
1003
  var Doc = class {
995
1004
  constructor(args = []) {
996
1005
  this.content = [];
@@ -1022,17 +1031,17 @@ var Doc = class {
1022
1031
  };
1023
1032
 
1024
1033
  //#endregion
1025
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/versions.js
1034
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/versions.js
1026
1035
  const version = {
1027
1036
  major: 4,
1028
1037
  minor: 1,
1029
- patch: 12
1038
+ patch: 13
1030
1039
  };
1031
1040
 
1032
1041
  //#endregion
1033
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/schemas.js
1042
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/schemas.js
1034
1043
  const $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
1035
- var _a;
1044
+ var _a$1;
1036
1045
  inst ?? (inst = {});
1037
1046
  inst._zod.def = def;
1038
1047
  inst._zod.bag = inst._zod.bag || {};
@@ -1041,7 +1050,7 @@ const $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
1041
1050
  if (inst._zod.traits.has("$ZodCheck")) checks.unshift(inst);
1042
1051
  for (const ch of checks) for (const fn of ch._zod.onattach) fn(inst);
1043
1052
  if (checks.length === 0) {
1044
- (_a = inst._zod).deferred ?? (_a.deferred = []);
1053
+ (_a$1 = inst._zod).deferred ?? (_a$1.deferred = []);
1045
1054
  inst._zod.deferred?.push(() => {
1046
1055
  inst._zod.run = inst._zod.parse;
1047
1056
  });
@@ -1177,7 +1186,7 @@ const $ZodURL = /* @__PURE__ */ $constructor("$ZodURL", (inst, def) => {
1177
1186
  code: "invalid_format",
1178
1187
  format: "url",
1179
1188
  note: "Invalid hostname",
1180
- pattern: hostname.source,
1189
+ pattern: def.hostname.source,
1181
1190
  input: payload.value,
1182
1191
  inst,
1183
1192
  continue: !def.abort
@@ -1256,18 +1265,12 @@ const $ZodISODuration = /* @__PURE__ */ $constructor("$ZodISODuration", (inst, d
1256
1265
  const $ZodIPv4 = /* @__PURE__ */ $constructor("$ZodIPv4", (inst, def) => {
1257
1266
  def.pattern ?? (def.pattern = ipv4);
1258
1267
  $ZodStringFormat.init(inst, def);
1259
- inst._zod.onattach.push((inst$1) => {
1260
- const bag = inst$1._zod.bag;
1261
- bag.format = `ipv4`;
1262
- });
1268
+ inst._zod.bag.format = `ipv4`;
1263
1269
  });
1264
1270
  const $ZodIPv6 = /* @__PURE__ */ $constructor("$ZodIPv6", (inst, def) => {
1265
1271
  def.pattern ?? (def.pattern = ipv6);
1266
1272
  $ZodStringFormat.init(inst, def);
1267
- inst._zod.onattach.push((inst$1) => {
1268
- const bag = inst$1._zod.bag;
1269
- bag.format = `ipv6`;
1270
- });
1273
+ inst._zod.bag.format = `ipv6`;
1271
1274
  inst._zod.check = (payload) => {
1272
1275
  try {
1273
1276
  new URL(`http://[${payload.value}]`);
@@ -1323,9 +1326,7 @@ function isValidBase64(data) {
1323
1326
  const $ZodBase64 = /* @__PURE__ */ $constructor("$ZodBase64", (inst, def) => {
1324
1327
  def.pattern ?? (def.pattern = base64);
1325
1328
  $ZodStringFormat.init(inst, def);
1326
- inst._zod.onattach.push((inst$1) => {
1327
- inst$1._zod.bag.contentEncoding = "base64";
1328
- });
1329
+ inst._zod.bag.contentEncoding = "base64";
1329
1330
  inst._zod.check = (payload) => {
1330
1331
  if (isValidBase64(payload.value)) return;
1331
1332
  payload.issues.push({
@@ -1345,9 +1346,7 @@ function isValidBase64URL(data) {
1345
1346
  const $ZodBase64URL = /* @__PURE__ */ $constructor("$ZodBase64URL", (inst, def) => {
1346
1347
  def.pattern ?? (def.pattern = base64url);
1347
1348
  $ZodStringFormat.init(inst, def);
1348
- inst._zod.onattach.push((inst$1) => {
1349
- inst$1._zod.bag.contentEncoding = "base64url";
1350
- });
1349
+ inst._zod.bag.contentEncoding = "base64url";
1351
1350
  inst._zod.check = (payload) => {
1352
1351
  if (isValidBase64URL(payload.value)) return;
1353
1352
  payload.issues.push({
@@ -1411,7 +1410,7 @@ const $ZodNumber = /* @__PURE__ */ $constructor("$ZodNumber", (inst, def) => {
1411
1410
  return payload;
1412
1411
  };
1413
1412
  });
1414
- const $ZodNumberFormat = /* @__PURE__ */ $constructor("$ZodNumber", (inst, def) => {
1413
+ const $ZodNumberFormat = /* @__PURE__ */ $constructor("$ZodNumberFormat", (inst, def) => {
1415
1414
  $ZodCheckNumberFormat.init(inst, def);
1416
1415
  $ZodNumber.init(inst, def);
1417
1416
  });
@@ -1486,7 +1485,7 @@ function handleCatchall(proms, input, payload, ctx, def, inst) {
1486
1485
  const keySet = def.keySet;
1487
1486
  const _catchall = def.catchall._zod;
1488
1487
  const t = _catchall.def.type;
1489
- for (const key of Object.keys(input)) {
1488
+ for (const key in input) {
1490
1489
  if (keySet.has(key)) continue;
1491
1490
  if (t === "never") {
1492
1491
  unrecognized.push(key);
@@ -1969,8 +1968,8 @@ const $ZodReadonly = /* @__PURE__ */ $constructor("$ZodReadonly", (inst, def) =>
1969
1968
  $ZodType.init(inst, def);
1970
1969
  defineLazy(inst._zod, "propValues", () => def.innerType._zod.propValues);
1971
1970
  defineLazy(inst._zod, "values", () => def.innerType._zod.values);
1972
- defineLazy(inst._zod, "optin", () => def.innerType._zod.optin);
1973
- defineLazy(inst._zod, "optout", () => def.innerType._zod.optout);
1971
+ defineLazy(inst._zod, "optin", () => def.innerType?._zod?.optin);
1972
+ defineLazy(inst._zod, "optout", () => def.innerType?._zod?.optout);
1974
1973
  inst._zod.parse = (payload, ctx) => {
1975
1974
  if (ctx.direction === "backward") return def.innerType._zod.run(payload, ctx);
1976
1975
  const result = def.innerType._zod.run(payload, ctx);
@@ -2010,18 +2009,19 @@ function handleRefineResult(result, payload, input, inst) {
2010
2009
  }
2011
2010
 
2012
2011
  //#endregion
2013
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/registries.js
2012
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/registries.js
2013
+ var _a;
2014
2014
  var $ZodRegistry = class {
2015
2015
  constructor() {
2016
2016
  this._map = /* @__PURE__ */ new WeakMap();
2017
2017
  this._idmap = /* @__PURE__ */ new Map();
2018
2018
  }
2019
2019
  add(schema, ..._meta) {
2020
- const meta = _meta[0];
2021
- this._map.set(schema, meta);
2022
- if (meta && typeof meta === "object" && "id" in meta) {
2023
- if (this._idmap.has(meta.id)) throw new Error(`ID ${meta.id} already exists in the registry`);
2024
- this._idmap.set(meta.id, schema);
2020
+ const meta$2 = _meta[0];
2021
+ this._map.set(schema, meta$2);
2022
+ if (meta$2 && typeof meta$2 === "object" && "id" in meta$2) {
2023
+ if (this._idmap.has(meta$2.id)) throw new Error(`ID ${meta$2.id} already exists in the registry`);
2024
+ this._idmap.set(meta$2.id, schema);
2025
2025
  }
2026
2026
  return this;
2027
2027
  }
@@ -2031,8 +2031,8 @@ var $ZodRegistry = class {
2031
2031
  return this;
2032
2032
  }
2033
2033
  remove(schema) {
2034
- const meta = this._map.get(schema);
2035
- if (meta && typeof meta === "object" && "id" in meta) this._idmap.delete(meta.id);
2034
+ const meta$2 = this._map.get(schema);
2035
+ if (meta$2 && typeof meta$2 === "object" && "id" in meta$2) this._idmap.delete(meta$2.id);
2036
2036
  this._map.delete(schema);
2037
2037
  return this;
2038
2038
  }
@@ -2056,10 +2056,11 @@ var $ZodRegistry = class {
2056
2056
  function registry() {
2057
2057
  return new $ZodRegistry();
2058
2058
  }
2059
- const globalRegistry = /* @__PURE__ */ registry();
2059
+ (_a = globalThis).__zod_globalRegistry ?? (_a.__zod_globalRegistry = registry());
2060
+ const globalRegistry = globalThis.__zod_globalRegistry;
2060
2061
 
2061
2062
  //#endregion
2062
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/api.js
2063
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/api.js
2063
2064
  function _string(Class, params) {
2064
2065
  return new Class({
2065
2066
  type: "string",
@@ -2452,6 +2453,9 @@ function _toLowerCase() {
2452
2453
  function _toUpperCase() {
2453
2454
  return _overwrite((input) => input.toUpperCase());
2454
2455
  }
2456
+ function _slugify() {
2457
+ return _overwrite((input) => slugify(input));
2458
+ }
2455
2459
  function _array(Class, element, params) {
2456
2460
  return new Class({
2457
2461
  type: "array",
@@ -2493,9 +2497,33 @@ function _check(fn, params) {
2493
2497
  ch._zod.check = fn;
2494
2498
  return ch;
2495
2499
  }
2500
+ function describe$1(description) {
2501
+ const ch = new $ZodCheck({ check: "describe" });
2502
+ ch._zod.onattach = [(inst) => {
2503
+ const existing = globalRegistry.get(inst) ?? {};
2504
+ globalRegistry.add(inst, {
2505
+ ...existing,
2506
+ description
2507
+ });
2508
+ }];
2509
+ ch._zod.check = () => {};
2510
+ return ch;
2511
+ }
2512
+ function meta$1(metadata) {
2513
+ const ch = new $ZodCheck({ check: "meta" });
2514
+ ch._zod.onattach = [(inst) => {
2515
+ const existing = globalRegistry.get(inst) ?? {};
2516
+ globalRegistry.add(inst, {
2517
+ ...existing,
2518
+ ...metadata
2519
+ });
2520
+ }];
2521
+ ch._zod.check = () => {};
2522
+ return ch;
2523
+ }
2496
2524
 
2497
2525
  //#endregion
2498
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/iso.js
2526
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/iso.js
2499
2527
  const ZodISODateTime = /* @__PURE__ */ $constructor("ZodISODateTime", (inst, def) => {
2500
2528
  $ZodISODateTime.init(inst, def);
2501
2529
  ZodStringFormat.init(inst, def);
@@ -2526,7 +2554,7 @@ function duration(params) {
2526
2554
  }
2527
2555
 
2528
2556
  //#endregion
2529
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/errors.js
2557
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/errors.js
2530
2558
  const initializer = (inst, issues) => {
2531
2559
  $ZodError.init(inst, issues);
2532
2560
  inst.name = "ZodError";
@@ -2550,7 +2578,7 @@ const ZodError = $constructor("ZodError", initializer);
2550
2578
  const ZodRealError = $constructor("ZodError", initializer, { Parent: Error });
2551
2579
 
2552
2580
  //#endregion
2553
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/parse.js
2581
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/parse.js
2554
2582
  const parse = /* @__PURE__ */ _parse(ZodRealError);
2555
2583
  const parseAsync = /* @__PURE__ */ _parseAsync(ZodRealError);
2556
2584
  const safeParse = /* @__PURE__ */ _safeParse(ZodRealError);
@@ -2565,7 +2593,7 @@ const safeEncodeAsync = /* @__PURE__ */ _safeEncodeAsync(ZodRealError);
2565
2593
  const safeDecodeAsync = /* @__PURE__ */ _safeDecodeAsync(ZodRealError);
2566
2594
 
2567
2595
  //#endregion
2568
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/schemas.js
2596
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/schemas.js
2569
2597
  const ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
2570
2598
  $ZodType.init(inst, def);
2571
2599
  inst.def = def;
@@ -2580,8 +2608,8 @@ const ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
2580
2608
  };
2581
2609
  inst.clone = (def$1, params) => clone(inst, def$1, params);
2582
2610
  inst.brand = () => inst;
2583
- inst.register = ((reg, meta) => {
2584
- reg.add(inst, meta);
2611
+ inst.register = ((reg, meta$2) => {
2612
+ reg.add(inst, meta$2);
2585
2613
  return inst;
2586
2614
  });
2587
2615
  inst.parse = (data, params) => parse(inst, data, params, { callee: inst.parse });
@@ -2656,6 +2684,7 @@ const _ZodString = /* @__PURE__ */ $constructor("_ZodString", (inst, def) => {
2656
2684
  inst.normalize = (...args) => inst.check(_normalize(...args));
2657
2685
  inst.toLowerCase = () => inst.check(_toLowerCase());
2658
2686
  inst.toUpperCase = () => inst.check(_toUpperCase());
2687
+ inst.slugify = () => inst.check(_slugify());
2659
2688
  });
2660
2689
  const ZodString = /* @__PURE__ */ $constructor("ZodString", (inst, def) => {
2661
2690
  $ZodString.init(inst, def);
@@ -3079,6 +3108,8 @@ function refine(fn, _params = {}) {
3079
3108
  function superRefine(fn) {
3080
3109
  return _superRefine(fn);
3081
3110
  }
3111
+ const describe = describe$1;
3112
+ const meta = meta$1;
3082
3113
 
3083
3114
  //#endregion
3084
3115
  //#region ../../src/utils/logging.ts
@@ -1,30 +1,36 @@
1
1
  import { styleText } from "node:util";
2
2
 
3
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/core.js
3
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/core.js
4
4
  /** A special constant with type `never` */
5
5
  const NEVER = Object.freeze({ status: "aborted" });
6
6
  function $constructor(name, initializer$2, params) {
7
7
  function init(inst, def) {
8
- var _a;
9
- Object.defineProperty(inst, "_zod", {
10
- value: inst._zod ?? {},
8
+ if (!inst._zod) Object.defineProperty(inst, "_zod", {
9
+ value: {
10
+ def,
11
+ constr: _,
12
+ traits: /* @__PURE__ */ new Set()
13
+ },
11
14
  enumerable: false
12
15
  });
13
- (_a = inst._zod).traits ?? (_a.traits = /* @__PURE__ */ new Set());
16
+ if (inst._zod.traits.has(name)) return;
14
17
  inst._zod.traits.add(name);
15
18
  initializer$2(inst, def);
16
- for (const k in _.prototype) if (!(k in inst)) Object.defineProperty(inst, k, { value: _.prototype[k].bind(inst) });
17
- inst._zod.constr = _;
18
- inst._zod.def = def;
19
+ const proto = _.prototype;
20
+ const keys = Object.keys(proto);
21
+ for (let i = 0; i < keys.length; i++) {
22
+ const k = keys[i];
23
+ if (!(k in inst)) inst[k] = proto[k].bind(inst);
24
+ }
19
25
  }
20
26
  const Parent = params?.Parent ?? Object;
21
27
  class Definition extends Parent {}
22
28
  Object.defineProperty(Definition, "name", { value: name });
23
29
  function _(def) {
24
- var _a;
30
+ var _a$1;
25
31
  const inst = params?.Parent ? new Definition() : this;
26
32
  init(inst, def);
27
- (_a = inst._zod).deferred ?? (_a.deferred = []);
33
+ (_a$1 = inst._zod).deferred ?? (_a$1.deferred = []);
28
34
  for (const fn of inst._zod.deferred) fn();
29
35
  return inst;
30
36
  }
@@ -54,7 +60,7 @@ function config(newConfig) {
54
60
  }
55
61
 
56
62
  //#endregion
57
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/util.js
63
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/util.js
58
64
  function getEnumValues(entries) {
59
65
  const numericValues = Object.values(entries).filter((v) => typeof v === "number");
60
66
  return Object.entries(entries).filter(([k, _]) => numericValues.indexOf(+k) === -1).map(([_, v]) => v);
@@ -129,6 +135,9 @@ function mergeDefs(...defs) {
129
135
  function esc(str) {
130
136
  return JSON.stringify(str);
131
137
  }
138
+ function slugify(input) {
139
+ return input.toLowerCase().trim().replace(/[^\w\s-]/g, "").replace(/[\s_-]+/g, "-").replace(/^-+|-+$/g, "");
140
+ }
132
141
  const captureStackTrace = "captureStackTrace" in Error ? Error.captureStackTrace : (..._args) => {};
133
142
  function isObject$1(data) {
134
143
  return typeof data === "object" && data !== null && !Array.isArray(data);
@@ -146,6 +155,7 @@ function isPlainObject(o) {
146
155
  if (isObject$1(o) === false) return false;
147
156
  const ctor = o.constructor;
148
157
  if (ctor === void 0) return true;
158
+ if (typeof ctor !== "function") return true;
149
159
  const prot = ctor.prototype;
150
160
  if (isObject$1(prot) === false) return false;
151
161
  if (Object.prototype.hasOwnProperty.call(prot, "isPrototypeOf") === false) return false;
@@ -328,8 +338,8 @@ function aborted(x, startIndex = 0) {
328
338
  }
329
339
  function prefixIssues(path, issues) {
330
340
  return issues.map((iss) => {
331
- var _a;
332
- (_a = iss).path ?? (_a.path = []);
341
+ var _a$1;
342
+ (_a$1 = iss).path ?? (_a$1.path = []);
333
343
  iss.path.unshift(path);
334
344
  return iss;
335
345
  });
@@ -365,7 +375,7 @@ function issue(...args) {
365
375
  }
366
376
 
367
377
  //#endregion
368
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/errors.js
378
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/errors.js
369
379
  const initializer$1 = (inst, def) => {
370
380
  inst.name = "$ZodError";
371
381
  Object.defineProperty(inst, "_zod", {
@@ -423,7 +433,7 @@ function formatError(error, mapper = (issue$1) => issue$1.message) {
423
433
  }
424
434
 
425
435
  //#endregion
426
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/parse.js
436
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/parse.js
427
437
  const _parse = (_Err) => (schema, value, _ctx, _params) => {
428
438
  const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
429
439
  const result = schema._zod.run({
@@ -527,7 +537,7 @@ const _safeDecodeAsync = (_Err) => async (schema, value, _ctx) => {
527
537
  const safeDecodeAsync$1 = /* @__PURE__ */ _safeDecodeAsync($ZodRealError);
528
538
 
529
539
  //#endregion
530
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/regexes.js
540
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/regexes.js
531
541
  const cuid = /^[cC][^\s-]{8,}$/;
532
542
  const cuid2 = /^[0-9a-z]+$/;
533
543
  const ulid = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/;
@@ -557,7 +567,6 @@ const cidrv4 = /^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-
557
567
  const cidrv6 = /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/;
558
568
  const base64 = /^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/;
559
569
  const base64url = /^[A-Za-z0-9_-]*$/;
560
- const 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])?)*\.?$/;
561
570
  const e164 = /^\+(?:[0-9]){6,14}[0-9]$/;
562
571
  const 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])))`;
563
572
  const date$1 = /* @__PURE__ */ new RegExp(`^${dateSource}$`);
@@ -586,12 +595,12 @@ const lowercase = /^[^A-Z]*$/;
586
595
  const uppercase = /^[^a-z]*$/;
587
596
 
588
597
  //#endregion
589
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/checks.js
598
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/checks.js
590
599
  const $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
591
- var _a;
600
+ var _a$1;
592
601
  inst._zod ?? (inst._zod = {});
593
602
  inst._zod.def = def;
594
- (_a = inst._zod).onattach ?? (_a.onattach = []);
603
+ (_a$1 = inst._zod).onattach ?? (_a$1.onattach = []);
595
604
  });
596
605
  const numericOriginMap = {
597
606
  number: "number",
@@ -645,8 +654,8 @@ const $ZodCheckGreaterThan = /* @__PURE__ */ $constructor("$ZodCheckGreaterThan"
645
654
  const $ZodCheckMultipleOf = /* @__PURE__ */ $constructor("$ZodCheckMultipleOf", (inst, def) => {
646
655
  $ZodCheck.init(inst, def);
647
656
  inst._zod.onattach.push((inst$1) => {
648
- var _a;
649
- (_a = inst$1._zod.bag).multipleOf ?? (_a.multipleOf = def.value);
657
+ var _a$1;
658
+ (_a$1 = inst$1._zod.bag).multipleOf ?? (_a$1.multipleOf = def.value);
650
659
  });
651
660
  inst._zod.check = (payload) => {
652
661
  if (typeof payload.value !== typeof def.value) throw new Error("Cannot mix number and bigint in multiple_of check.");
@@ -729,9 +738,9 @@ const $ZodCheckNumberFormat = /* @__PURE__ */ $constructor("$ZodCheckNumberForma
729
738
  };
730
739
  });
731
740
  const $ZodCheckMaxLength = /* @__PURE__ */ $constructor("$ZodCheckMaxLength", (inst, def) => {
732
- var _a;
741
+ var _a$1;
733
742
  $ZodCheck.init(inst, def);
734
- (_a = inst._zod.def).when ?? (_a.when = (payload) => {
743
+ (_a$1 = inst._zod.def).when ?? (_a$1.when = (payload) => {
735
744
  const val = payload.value;
736
745
  return !nullish(val) && val.length !== void 0;
737
746
  });
@@ -755,9 +764,9 @@ const $ZodCheckMaxLength = /* @__PURE__ */ $constructor("$ZodCheckMaxLength", (i
755
764
  };
756
765
  });
757
766
  const $ZodCheckMinLength = /* @__PURE__ */ $constructor("$ZodCheckMinLength", (inst, def) => {
758
- var _a;
767
+ var _a$1;
759
768
  $ZodCheck.init(inst, def);
760
- (_a = inst._zod.def).when ?? (_a.when = (payload) => {
769
+ (_a$1 = inst._zod.def).when ?? (_a$1.when = (payload) => {
761
770
  const val = payload.value;
762
771
  return !nullish(val) && val.length !== void 0;
763
772
  });
@@ -781,9 +790,9 @@ const $ZodCheckMinLength = /* @__PURE__ */ $constructor("$ZodCheckMinLength", (i
781
790
  };
782
791
  });
783
792
  const $ZodCheckLengthEquals = /* @__PURE__ */ $constructor("$ZodCheckLengthEquals", (inst, def) => {
784
- var _a;
793
+ var _a$1;
785
794
  $ZodCheck.init(inst, def);
786
- (_a = inst._zod.def).when ?? (_a.when = (payload) => {
795
+ (_a$1 = inst._zod.def).when ?? (_a$1.when = (payload) => {
787
796
  const val = payload.value;
788
797
  return !nullish(val) && val.length !== void 0;
789
798
  });
@@ -817,7 +826,7 @@ const $ZodCheckLengthEquals = /* @__PURE__ */ $constructor("$ZodCheckLengthEqual
817
826
  };
818
827
  });
819
828
  const $ZodCheckStringFormat = /* @__PURE__ */ $constructor("$ZodCheckStringFormat", (inst, def) => {
820
- var _a, _b;
829
+ var _a$1, _b;
821
830
  $ZodCheck.init(inst, def);
822
831
  inst._zod.onattach.push((inst$1) => {
823
832
  const bag = inst$1._zod.bag;
@@ -827,7 +836,7 @@ const $ZodCheckStringFormat = /* @__PURE__ */ $constructor("$ZodCheckStringForma
827
836
  bag.patterns.add(def.pattern);
828
837
  }
829
838
  });
830
- if (def.pattern) (_a = inst._zod).check ?? (_a.check = (payload) => {
839
+ if (def.pattern) (_a$1 = inst._zod).check ?? (_a$1.check = (payload) => {
831
840
  def.pattern.lastIndex = 0;
832
841
  if (def.pattern.test(payload.value)) return;
833
842
  payload.issues.push({
@@ -941,7 +950,7 @@ const $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (i
941
950
  });
942
951
 
943
952
  //#endregion
944
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/doc.js
953
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/doc.js
945
954
  var Doc = class {
946
955
  constructor(args = []) {
947
956
  this.content = [];
@@ -973,17 +982,17 @@ var Doc = class {
973
982
  };
974
983
 
975
984
  //#endregion
976
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/versions.js
985
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/versions.js
977
986
  const version = {
978
987
  major: 4,
979
988
  minor: 1,
980
- patch: 12
989
+ patch: 13
981
990
  };
982
991
 
983
992
  //#endregion
984
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/schemas.js
993
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/schemas.js
985
994
  const $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
986
- var _a;
995
+ var _a$1;
987
996
  inst ?? (inst = {});
988
997
  inst._zod.def = def;
989
998
  inst._zod.bag = inst._zod.bag || {};
@@ -992,7 +1001,7 @@ const $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
992
1001
  if (inst._zod.traits.has("$ZodCheck")) checks.unshift(inst);
993
1002
  for (const ch of checks) for (const fn of ch._zod.onattach) fn(inst);
994
1003
  if (checks.length === 0) {
995
- (_a = inst._zod).deferred ?? (_a.deferred = []);
1004
+ (_a$1 = inst._zod).deferred ?? (_a$1.deferred = []);
996
1005
  inst._zod.deferred?.push(() => {
997
1006
  inst._zod.run = inst._zod.parse;
998
1007
  });
@@ -1128,7 +1137,7 @@ const $ZodURL = /* @__PURE__ */ $constructor("$ZodURL", (inst, def) => {
1128
1137
  code: "invalid_format",
1129
1138
  format: "url",
1130
1139
  note: "Invalid hostname",
1131
- pattern: hostname.source,
1140
+ pattern: def.hostname.source,
1132
1141
  input: payload.value,
1133
1142
  inst,
1134
1143
  continue: !def.abort
@@ -1207,18 +1216,12 @@ const $ZodISODuration = /* @__PURE__ */ $constructor("$ZodISODuration", (inst, d
1207
1216
  const $ZodIPv4 = /* @__PURE__ */ $constructor("$ZodIPv4", (inst, def) => {
1208
1217
  def.pattern ?? (def.pattern = ipv4);
1209
1218
  $ZodStringFormat.init(inst, def);
1210
- inst._zod.onattach.push((inst$1) => {
1211
- const bag = inst$1._zod.bag;
1212
- bag.format = `ipv4`;
1213
- });
1219
+ inst._zod.bag.format = `ipv4`;
1214
1220
  });
1215
1221
  const $ZodIPv6 = /* @__PURE__ */ $constructor("$ZodIPv6", (inst, def) => {
1216
1222
  def.pattern ?? (def.pattern = ipv6);
1217
1223
  $ZodStringFormat.init(inst, def);
1218
- inst._zod.onattach.push((inst$1) => {
1219
- const bag = inst$1._zod.bag;
1220
- bag.format = `ipv6`;
1221
- });
1224
+ inst._zod.bag.format = `ipv6`;
1222
1225
  inst._zod.check = (payload) => {
1223
1226
  try {
1224
1227
  new URL(`http://[${payload.value}]`);
@@ -1274,9 +1277,7 @@ function isValidBase64(data) {
1274
1277
  const $ZodBase64 = /* @__PURE__ */ $constructor("$ZodBase64", (inst, def) => {
1275
1278
  def.pattern ?? (def.pattern = base64);
1276
1279
  $ZodStringFormat.init(inst, def);
1277
- inst._zod.onattach.push((inst$1) => {
1278
- inst$1._zod.bag.contentEncoding = "base64";
1279
- });
1280
+ inst._zod.bag.contentEncoding = "base64";
1280
1281
  inst._zod.check = (payload) => {
1281
1282
  if (isValidBase64(payload.value)) return;
1282
1283
  payload.issues.push({
@@ -1296,9 +1297,7 @@ function isValidBase64URL(data) {
1296
1297
  const $ZodBase64URL = /* @__PURE__ */ $constructor("$ZodBase64URL", (inst, def) => {
1297
1298
  def.pattern ?? (def.pattern = base64url);
1298
1299
  $ZodStringFormat.init(inst, def);
1299
- inst._zod.onattach.push((inst$1) => {
1300
- inst$1._zod.bag.contentEncoding = "base64url";
1301
- });
1300
+ inst._zod.bag.contentEncoding = "base64url";
1302
1301
  inst._zod.check = (payload) => {
1303
1302
  if (isValidBase64URL(payload.value)) return;
1304
1303
  payload.issues.push({
@@ -1362,7 +1361,7 @@ const $ZodNumber = /* @__PURE__ */ $constructor("$ZodNumber", (inst, def) => {
1362
1361
  return payload;
1363
1362
  };
1364
1363
  });
1365
- const $ZodNumberFormat = /* @__PURE__ */ $constructor("$ZodNumber", (inst, def) => {
1364
+ const $ZodNumberFormat = /* @__PURE__ */ $constructor("$ZodNumberFormat", (inst, def) => {
1366
1365
  $ZodCheckNumberFormat.init(inst, def);
1367
1366
  $ZodNumber.init(inst, def);
1368
1367
  });
@@ -1437,7 +1436,7 @@ function handleCatchall(proms, input, payload, ctx, def, inst) {
1437
1436
  const keySet = def.keySet;
1438
1437
  const _catchall = def.catchall._zod;
1439
1438
  const t = _catchall.def.type;
1440
- for (const key of Object.keys(input)) {
1439
+ for (const key in input) {
1441
1440
  if (keySet.has(key)) continue;
1442
1441
  if (t === "never") {
1443
1442
  unrecognized.push(key);
@@ -1920,8 +1919,8 @@ const $ZodReadonly = /* @__PURE__ */ $constructor("$ZodReadonly", (inst, def) =>
1920
1919
  $ZodType.init(inst, def);
1921
1920
  defineLazy(inst._zod, "propValues", () => def.innerType._zod.propValues);
1922
1921
  defineLazy(inst._zod, "values", () => def.innerType._zod.values);
1923
- defineLazy(inst._zod, "optin", () => def.innerType._zod.optin);
1924
- defineLazy(inst._zod, "optout", () => def.innerType._zod.optout);
1922
+ defineLazy(inst._zod, "optin", () => def.innerType?._zod?.optin);
1923
+ defineLazy(inst._zod, "optout", () => def.innerType?._zod?.optout);
1925
1924
  inst._zod.parse = (payload, ctx) => {
1926
1925
  if (ctx.direction === "backward") return def.innerType._zod.run(payload, ctx);
1927
1926
  const result = def.innerType._zod.run(payload, ctx);
@@ -1961,18 +1960,19 @@ function handleRefineResult(result, payload, input, inst) {
1961
1960
  }
1962
1961
 
1963
1962
  //#endregion
1964
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/registries.js
1963
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/registries.js
1964
+ var _a;
1965
1965
  var $ZodRegistry = class {
1966
1966
  constructor() {
1967
1967
  this._map = /* @__PURE__ */ new WeakMap();
1968
1968
  this._idmap = /* @__PURE__ */ new Map();
1969
1969
  }
1970
1970
  add(schema, ..._meta) {
1971
- const meta = _meta[0];
1972
- this._map.set(schema, meta);
1973
- if (meta && typeof meta === "object" && "id" in meta) {
1974
- if (this._idmap.has(meta.id)) throw new Error(`ID ${meta.id} already exists in the registry`);
1975
- this._idmap.set(meta.id, schema);
1971
+ const meta$2 = _meta[0];
1972
+ this._map.set(schema, meta$2);
1973
+ if (meta$2 && typeof meta$2 === "object" && "id" in meta$2) {
1974
+ if (this._idmap.has(meta$2.id)) throw new Error(`ID ${meta$2.id} already exists in the registry`);
1975
+ this._idmap.set(meta$2.id, schema);
1976
1976
  }
1977
1977
  return this;
1978
1978
  }
@@ -1982,8 +1982,8 @@ var $ZodRegistry = class {
1982
1982
  return this;
1983
1983
  }
1984
1984
  remove(schema) {
1985
- const meta = this._map.get(schema);
1986
- if (meta && typeof meta === "object" && "id" in meta) this._idmap.delete(meta.id);
1985
+ const meta$2 = this._map.get(schema);
1986
+ if (meta$2 && typeof meta$2 === "object" && "id" in meta$2) this._idmap.delete(meta$2.id);
1987
1987
  this._map.delete(schema);
1988
1988
  return this;
1989
1989
  }
@@ -2007,10 +2007,11 @@ var $ZodRegistry = class {
2007
2007
  function registry() {
2008
2008
  return new $ZodRegistry();
2009
2009
  }
2010
- const globalRegistry = /* @__PURE__ */ registry();
2010
+ (_a = globalThis).__zod_globalRegistry ?? (_a.__zod_globalRegistry = registry());
2011
+ const globalRegistry = globalThis.__zod_globalRegistry;
2011
2012
 
2012
2013
  //#endregion
2013
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/core/api.js
2014
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/api.js
2014
2015
  function _string(Class, params) {
2015
2016
  return new Class({
2016
2017
  type: "string",
@@ -2403,6 +2404,9 @@ function _toLowerCase() {
2403
2404
  function _toUpperCase() {
2404
2405
  return _overwrite((input) => input.toUpperCase());
2405
2406
  }
2407
+ function _slugify() {
2408
+ return _overwrite((input) => slugify(input));
2409
+ }
2406
2410
  function _array(Class, element, params) {
2407
2411
  return new Class({
2408
2412
  type: "array",
@@ -2444,9 +2448,33 @@ function _check(fn, params) {
2444
2448
  ch._zod.check = fn;
2445
2449
  return ch;
2446
2450
  }
2451
+ function describe$1(description) {
2452
+ const ch = new $ZodCheck({ check: "describe" });
2453
+ ch._zod.onattach = [(inst) => {
2454
+ const existing = globalRegistry.get(inst) ?? {};
2455
+ globalRegistry.add(inst, {
2456
+ ...existing,
2457
+ description
2458
+ });
2459
+ }];
2460
+ ch._zod.check = () => {};
2461
+ return ch;
2462
+ }
2463
+ function meta$1(metadata) {
2464
+ const ch = new $ZodCheck({ check: "meta" });
2465
+ ch._zod.onattach = [(inst) => {
2466
+ const existing = globalRegistry.get(inst) ?? {};
2467
+ globalRegistry.add(inst, {
2468
+ ...existing,
2469
+ ...metadata
2470
+ });
2471
+ }];
2472
+ ch._zod.check = () => {};
2473
+ return ch;
2474
+ }
2447
2475
 
2448
2476
  //#endregion
2449
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/iso.js
2477
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/iso.js
2450
2478
  const ZodISODateTime = /* @__PURE__ */ $constructor("ZodISODateTime", (inst, def) => {
2451
2479
  $ZodISODateTime.init(inst, def);
2452
2480
  ZodStringFormat.init(inst, def);
@@ -2477,7 +2505,7 @@ function duration(params) {
2477
2505
  }
2478
2506
 
2479
2507
  //#endregion
2480
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/errors.js
2508
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/errors.js
2481
2509
  const initializer = (inst, issues) => {
2482
2510
  $ZodError.init(inst, issues);
2483
2511
  inst.name = "ZodError";
@@ -2501,7 +2529,7 @@ const ZodError = $constructor("ZodError", initializer);
2501
2529
  const ZodRealError = $constructor("ZodError", initializer, { Parent: Error });
2502
2530
 
2503
2531
  //#endregion
2504
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/parse.js
2532
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/parse.js
2505
2533
  const parse = /* @__PURE__ */ _parse(ZodRealError);
2506
2534
  const parseAsync = /* @__PURE__ */ _parseAsync(ZodRealError);
2507
2535
  const safeParse = /* @__PURE__ */ _safeParse(ZodRealError);
@@ -2516,7 +2544,7 @@ const safeEncodeAsync = /* @__PURE__ */ _safeEncodeAsync(ZodRealError);
2516
2544
  const safeDecodeAsync = /* @__PURE__ */ _safeDecodeAsync(ZodRealError);
2517
2545
 
2518
2546
  //#endregion
2519
- //#region ../../node_modules/.pnpm/zod@4.1.12/node_modules/zod/v4/classic/schemas.js
2547
+ //#region ../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/schemas.js
2520
2548
  const ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
2521
2549
  $ZodType.init(inst, def);
2522
2550
  inst.def = def;
@@ -2531,8 +2559,8 @@ const ZodType = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
2531
2559
  };
2532
2560
  inst.clone = (def$1, params) => clone(inst, def$1, params);
2533
2561
  inst.brand = () => inst;
2534
- inst.register = ((reg, meta) => {
2535
- reg.add(inst, meta);
2562
+ inst.register = ((reg, meta$2) => {
2563
+ reg.add(inst, meta$2);
2536
2564
  return inst;
2537
2565
  });
2538
2566
  inst.parse = (data, params) => parse(inst, data, params, { callee: inst.parse });
@@ -2607,6 +2635,7 @@ const _ZodString = /* @__PURE__ */ $constructor("_ZodString", (inst, def) => {
2607
2635
  inst.normalize = (...args) => inst.check(_normalize(...args));
2608
2636
  inst.toLowerCase = () => inst.check(_toLowerCase());
2609
2637
  inst.toUpperCase = () => inst.check(_toUpperCase());
2638
+ inst.slugify = () => inst.check(_slugify());
2610
2639
  });
2611
2640
  const ZodString = /* @__PURE__ */ $constructor("ZodString", (inst, def) => {
2612
2641
  $ZodString.init(inst, def);
@@ -3030,6 +3059,8 @@ function refine(fn, _params = {}) {
3030
3059
  function superRefine(fn) {
3031
3060
  return _superRefine(fn);
3032
3061
  }
3062
+ const describe = describe$1;
3063
+ const meta = meta$1;
3033
3064
 
3034
3065
  //#endregion
3035
3066
  //#region ../../src/utils/logging.ts
@@ -1,4 +1,4 @@
1
- const require_error$1 = require('./error-CNXEIv8x.cjs');
1
+ const require_error$1 = require('./error-CVifReol.cjs');
2
2
  let stream = require("stream");
3
3
  stream = require_error$1.__toESM(stream);
4
4
  let util = require("util");
@@ -1,5 +1,5 @@
1
1
  import { a as __toESM, i as __require, r as __reExport, t as __commonJSMin } from "./chunk-vrZdfYgq.mjs";
2
- import { t as isErrorWithCode } from "./error-DFGohsZ4.mjs";
2
+ import { t as isErrorWithCode } from "./error-CyYI05iP.mjs";
3
3
  import stream from "stream";
4
4
  import util from "util";
5
5
 
package/lib/git/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
- require('../error-CNXEIv8x.cjs');
2
- const require_git = require('../git-Dzyho_v8.cjs');
1
+ require('../error-CVifReol.cjs');
2
+ const require_git = require('../git-BOa8Z9YH.cjs');
3
3
 
4
4
  exports.commit = require_git.commit;
5
5
  exports.commitAllChanges = require_git.commitAllChanges;
package/lib/git/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import "../error-DFGohsZ4.mjs";
2
- import { a as push, d as getHeadCommitMessage, f as currentBranch, g as commit, h as findRoot, i as fastForwardBranch, l as getOwnerAndRepo, m as getChangedFiles, n as isFileGitIgnored, p as commitAllChanges, r as reset, u as getHeadCommitId } from "../git-6hC5KO0W.mjs";
1
+ import "../error-CyYI05iP.mjs";
2
+ import { a as push, d as getHeadCommitMessage, f as currentBranch, g as commit, h as findRoot, i as fastForwardBranch, l as getOwnerAndRepo, m as getChangedFiles, n as isFileGitIgnored, p as commitAllChanges, r as reset, u as getHeadCommitId } from "../git-BDyBLdYI.mjs";
3
3
 
4
4
  export { commit, commitAllChanges, currentBranch, fastForwardBranch, findRoot, getChangedFiles, getHeadCommitId, getHeadCommitMessage, getOwnerAndRepo, isFileGitIgnored, push, reset };
@@ -1,5 +1,5 @@
1
1
  import { n as __export } from "./chunk-vrZdfYgq.mjs";
2
- import { t as isErrorWithCode } from "./error-DFGohsZ4.mjs";
2
+ import { t as isErrorWithCode } from "./error-CyYI05iP.mjs";
3
3
  import path from "path";
4
4
  import fs from "fs-extra";
5
5
  import git, { findRoot } from "isomorphic-git";
@@ -1,4 +1,4 @@
1
- const require_error = require('./error-CNXEIv8x.cjs');
1
+ const require_error = require('./error-CVifReol.cjs');
2
2
  let path = require("path");
3
3
  path = require_error.__toESM(path);
4
4
  let fs_extra = require("fs-extra");
@@ -1,6 +1,6 @@
1
- require('../error-CNXEIv8x.cjs');
2
- const require_git = require('../git-Dzyho_v8.cjs');
3
- const require_github = require('../github-D-X4p9E7.cjs');
1
+ require('../error-CVifReol.cjs');
2
+ const require_git = require('../git-BOa8Z9YH.cjs');
3
+ const require_github = require('../github-CE1EXi_Q.cjs');
4
4
 
5
5
  exports.apiTokenFromEnvironment = require_git.apiTokenFromEnvironment;
6
6
  exports.buildNameFromEnvironment = require_git.buildNameFromEnvironment;
@@ -1,5 +1,5 @@
1
- import "../error-DFGohsZ4.mjs";
2
- import { c as enabledFromEnvironment, o as apiTokenFromEnvironment, s as buildNameFromEnvironment } from "../git-6hC5KO0W.mjs";
3
- import { a as putIssueComment, i as uploadFileChanges, n as readFileChanges, o as getPullRequestNumber, r as uploadAllFileChanges, s as createCheckRun } from "../github-CBi1ew0f.mjs";
1
+ import "../error-CyYI05iP.mjs";
2
+ import { c as enabledFromEnvironment, o as apiTokenFromEnvironment, s as buildNameFromEnvironment } from "../git-BDyBLdYI.mjs";
3
+ import { a as putIssueComment, i as uploadFileChanges, n as readFileChanges, o as getPullRequestNumber, r as uploadAllFileChanges, s as createCheckRun } from "../github-Bx_r3mJe.mjs";
4
4
 
5
5
  export { apiTokenFromEnvironment, buildNameFromEnvironment, createCheckRun, enabledFromEnvironment, getPullRequestNumber, putIssueComment, readFileChanges, uploadAllFileChanges, uploadFileChanges };
@@ -1,6 +1,6 @@
1
1
  import { n as __export } from "./chunk-vrZdfYgq.mjs";
2
- import { r as pluralise } from "./error-DFGohsZ4.mjs";
3
- import { c as enabledFromEnvironment, h as findRoot, i as fastForwardBranch, l as getOwnerAndRepo, m as getChangedFiles, o as apiTokenFromEnvironment, s as buildNameFromEnvironment, u as getHeadCommitId } from "./git-6hC5KO0W.mjs";
2
+ import { r as pluralise } from "./error-CyYI05iP.mjs";
3
+ import { c as enabledFromEnvironment, h as findRoot, i as fastForwardBranch, l as getOwnerAndRepo, m as getChangedFiles, o as apiTokenFromEnvironment, s as buildNameFromEnvironment, u as getHeadCommitId } from "./git-BDyBLdYI.mjs";
4
4
  import path from "path";
5
5
  import fs from "fs-extra";
6
6
 
@@ -1,5 +1,5 @@
1
- const require_error = require('./error-CNXEIv8x.cjs');
2
- const require_git = require('./git-Dzyho_v8.cjs');
1
+ const require_error = require('./error-CVifReol.cjs');
2
+ const require_git = require('./git-BOa8Z9YH.cjs');
3
3
  let path = require("path");
4
4
  path = require_error.__toESM(path);
5
5
  let fs_extra = require("fs-extra");
package/lib/index.cjs CHANGED
@@ -1,9 +1,9 @@
1
- require('./error-CNXEIv8x.cjs');
2
- require('./exec-8JvuPL56.cjs');
3
- const require_buildkite = require('./buildkite-D6vGtaVa.cjs');
4
- const require_git = require('./git-Dzyho_v8.cjs');
5
- const require_github = require('./github-D-X4p9E7.cjs');
6
- const require_net = require('./net-dn-Bz5xs.cjs');
1
+ require('./error-CVifReol.cjs');
2
+ require('./exec-D1GJDDjG.cjs');
3
+ const require_buildkite = require('./buildkite-C8WlNLy0.cjs');
4
+ const require_git = require('./git-BOa8Z9YH.cjs');
5
+ const require_github = require('./github-CE1EXi_Q.cjs');
6
+ const require_net = require('./net-BH0aA0R-.cjs');
7
7
 
8
8
  Object.defineProperty(exports, 'Buildkite', {
9
9
  enumerable: true,
package/lib/index.mjs CHANGED
@@ -1,8 +1,8 @@
1
- import "./exec-CQpelaVh.mjs";
2
- import "./error-DFGohsZ4.mjs";
3
- import { t as buildkite_exports } from "./buildkite-iiWXomhx.mjs";
4
- import { t as git_exports } from "./git-6hC5KO0W.mjs";
5
- import { t as github_exports } from "./github-CBi1ew0f.mjs";
6
- import { t as net_exports } from "./net-5MzSVlsV.mjs";
1
+ import "./exec-HwUg7-Rf.mjs";
2
+ import "./error-CyYI05iP.mjs";
3
+ import { t as buildkite_exports } from "./buildkite-Caw9s_bL.mjs";
4
+ import { t as git_exports } from "./git-BDyBLdYI.mjs";
5
+ import { t as github_exports } from "./github-Bx_r3mJe.mjs";
6
+ import { t as net_exports } from "./net-BCifS6X8.mjs";
7
7
 
8
8
  export { buildkite_exports as Buildkite, git_exports as Git, github_exports as GitHub, net_exports as Net };
package/lib/net/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
- require('../error-CNXEIv8x.cjs');
2
- require('../exec-8JvuPL56.cjs');
3
- const require_net = require('../net-dn-Bz5xs.cjs');
1
+ require('../error-CVifReol.cjs');
2
+ require('../exec-D1GJDDjG.cjs');
3
+ const require_net = require('../net-BH0aA0R-.cjs');
4
4
 
5
5
  exports.waitFor = require_net.waitFor;
package/lib/net/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
- import "../exec-CQpelaVh.mjs";
2
- import "../error-DFGohsZ4.mjs";
3
- import { n as waitFor } from "../net-5MzSVlsV.mjs";
1
+ import "../exec-HwUg7-Rf.mjs";
2
+ import "../error-CyYI05iP.mjs";
3
+ import { n as waitFor } from "../net-BCifS6X8.mjs";
4
4
 
5
5
  export { waitFor };
@@ -1,5 +1,5 @@
1
1
  import { n as __export } from "./chunk-vrZdfYgq.mjs";
2
- import { t as createExec } from "./exec-CQpelaVh.mjs";
2
+ import { t as createExec } from "./exec-HwUg7-Rf.mjs";
3
3
  import net from "net";
4
4
 
5
5
  //#region src/net/compose.ts
@@ -1,5 +1,5 @@
1
- const require_error = require('./error-CNXEIv8x.cjs');
2
- const require_exec = require('./exec-8JvuPL56.cjs');
1
+ const require_error = require('./error-CVifReol.cjs');
2
+ const require_exec = require('./exec-D1GJDDjG.cjs');
3
3
  let net = require("net");
4
4
  net = require_error.__toESM(net);
5
5
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skuba-lib/api",
3
- "version": "2.0.0-node-24-20251204121724",
3
+ "version": "2.0.0-node-24-20251205024935",
4
4
  "description": "Node.js development API for skuba",
5
5
  "homepage": "https://github.com/seek-oss/skuba#readme",
6
6
  "bugs": {
@@ -56,7 +56,7 @@
56
56
  "tsdown": "^0.16.0"
57
57
  },
58
58
  "engines": {
59
- "node": ">=22.11.0"
59
+ "node": ">=22.14.0"
60
60
  },
61
61
  "scripts": {
62
62
  "build": "tsdown && ./scripts/fix-types.sh"