playlist-data-engine 1.5.3 → 1.5.4

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.
@@ -489,7 +489,7 @@ function Ol(s) {
489
489
  return i != null;
490
490
  });
491
491
  }
492
- const Ll = {
492
+ const zl = {
493
493
  0: "",
494
494
  1: "I",
495
495
  2: "II",
@@ -501,7 +501,7 @@ const Ll = {
501
501
  8: "VIII",
502
502
  9: "IX",
503
503
  10: "X"
504
- }, ni = 10, zl = 10, Wl = 1e3, ja = 1.5;
504
+ }, ni = 10, Ll = 10, Wl = 1e3, ja = 1.5;
505
505
  function Yv(s) {
506
506
  return typeof s == "number" && Number.isInteger(s) && s >= 0 && s <= 10;
507
507
  }
@@ -7822,7 +7822,7 @@ const tt = {
7822
7822
  amplitude: 0.7,
7823
7823
  treble: 0.5
7824
7824
  }
7825
- }, Lr = {
7825
+ }, zr = {
7826
7826
  // Cantrips (Level 0)
7827
7827
  "Acid Splash": { name: "Acid Splash", level: 0, school: "Evocation", casting_time: "1 action", range: "60 feet", components: ["V", "S"], duration: "Instantaneous", description: "Hurls a bubble of acid at a creature or point. On hit, deals acid damage to creatures in a small splash radius. Dexterity save for half damage." },
7828
7828
  "Fire Bolt": { name: "Fire Bolt", level: 0, school: "Evocation", casting_time: "1 action", range: "120 feet", components: ["V", "S"], duration: "Instantaneous", description: "Hurls a mote of fire at a creature or object. On hit, deals fire damage. One of the most reliable damaging cantrips for ranged combat." },
@@ -8141,7 +8141,7 @@ const tt = {
8141
8141
  20: { 1: 4, 2: 4, 3: 4, 4: 4, 5: 4 }
8142
8142
  }
8143
8143
  };
8144
- function zr(s) {
8144
+ function Lr(s) {
8145
8145
  if (s in tt)
8146
8146
  return tt[s];
8147
8147
  try {
@@ -13995,7 +13995,7 @@ const Ou = (s) => s * 5, nt = {
13995
13995
  },
13996
13996
  maxMultiplier: 5
13997
13997
  };
13998
- function Lu(s) {
13998
+ function zu(s) {
13999
13999
  const e = nt.combo;
14000
14000
  return s ? {
14001
14001
  enabled: s.enabled ?? e.enabled,
@@ -14008,7 +14008,7 @@ function Lu(s) {
14008
14008
  }
14009
14009
  } : e;
14010
14010
  }
14011
- function zu(s) {
14011
+ function Lu(s) {
14012
14012
  const e = nt.groove;
14013
14013
  return s ? {
14014
14014
  perHitMultiplier: s.perHitMultiplier ?? e.perHitMultiplier,
@@ -14026,8 +14026,8 @@ function Pn(s) {
14026
14026
  ...s.baseXP
14027
14027
  },
14028
14028
  xpRatio: s.xpRatio ?? nt.xpRatio,
14029
- combo: Lu(s.combo),
14030
- groove: zu(s.groove),
14029
+ combo: zu(s.combo),
14030
+ groove: Lu(s.groove),
14031
14031
  maxMultiplier: s.maxMultiplier ?? nt.maxMultiplier
14032
14032
  } : nt;
14033
14033
  }
@@ -14437,7 +14437,7 @@ const na = (s) => (e, t, i, n) => {
14437
14437
  throw Xr(o, n?.callee), o;
14438
14438
  }
14439
14439
  return r.value;
14440
- }, Li = (s) => (e, t, i) => {
14440
+ }, zi = (s) => (e, t, i) => {
14441
14441
  const n = i ? { ...i, async: !1 } : { async: !1 }, a = e._zod.run({ value: t, issues: [] }, n);
14442
14442
  if (a instanceof Promise)
14443
14443
  throw new kt();
@@ -14445,26 +14445,26 @@ const na = (s) => (e, t, i, n) => {
14445
14445
  success: !1,
14446
14446
  error: new (s ?? eo)(a.issues.map((r) => ct(r, n, ot())))
14447
14447
  } : { success: !0, data: a.value };
14448
- }, id = /* @__PURE__ */ Li(to), zi = (s) => async (e, t, i) => {
14448
+ }, id = /* @__PURE__ */ zi(to), Li = (s) => async (e, t, i) => {
14449
14449
  const n = i ? Object.assign(i, { async: !0 }) : { async: !0 };
14450
14450
  let a = e._zod.run({ value: t, issues: [] }, n);
14451
14451
  return a instanceof Promise && (a = await a), a.issues.length ? {
14452
14452
  success: !1,
14453
14453
  error: new s(a.issues.map((r) => ct(r, n, ot())))
14454
14454
  } : { success: !0, data: a.value };
14455
- }, nd = /* @__PURE__ */ zi(to), ad = (s) => (e, t, i) => {
14455
+ }, nd = /* @__PURE__ */ Li(to), ad = (s) => (e, t, i) => {
14456
14456
  const n = i ? Object.assign(i, { direction: "backward" }) : { direction: "backward" };
14457
14457
  return na(s)(e, t, n);
14458
14458
  }, sd = (s) => (e, t, i) => na(s)(e, t, i), rd = (s) => async (e, t, i) => {
14459
14459
  const n = i ? Object.assign(i, { direction: "backward" }) : { direction: "backward" };
14460
14460
  return aa(s)(e, t, n);
14461
14461
  }, od = (s) => async (e, t, i) => aa(s)(e, t, i), cd = (s) => (e, t, i) => {
14462
- const n = i ? Object.assign(i, { direction: "backward" }) : { direction: "backward" };
14463
- return Li(s)(e, t, n);
14464
- }, ld = (s) => (e, t, i) => Li(s)(e, t, i), ud = (s) => async (e, t, i) => {
14465
14462
  const n = i ? Object.assign(i, { direction: "backward" }) : { direction: "backward" };
14466
14463
  return zi(s)(e, t, n);
14467
- }, dd = (s) => async (e, t, i) => zi(s)(e, t, i), hd = /^[cC][^\s-]{8,}$/, md = /^[0-9a-z]+$/, fd = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/, gd = /^[0-9a-vA-V]{20}$/, pd = /^[A-Za-z0-9]{27}$/, yd = /^[a-zA-Z0-9_-]{21}$/, vd = /^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/, bd = /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/, As = (s) => s ? new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${s}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`) : /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/, wd = /^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/, Sd = "^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";
14464
+ }, ld = (s) => (e, t, i) => zi(s)(e, t, i), ud = (s) => async (e, t, i) => {
14465
+ const n = i ? Object.assign(i, { direction: "backward" }) : { direction: "backward" };
14466
+ return Li(s)(e, t, n);
14467
+ }, dd = (s) => async (e, t, i) => Li(s)(e, t, i), hd = /^[cC][^\s-]{8,}$/, md = /^[0-9a-z]+$/, fd = /^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/, gd = /^[0-9a-vA-V]{20}$/, pd = /^[A-Za-z0-9]{27}$/, yd = /^[a-zA-Z0-9_-]{21}$/, vd = /^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/, bd = /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/, As = (s) => s ? new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${s}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`) : /^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/, wd = /^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/, Sd = "^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";
14468
14468
  function _d() {
14469
14469
  return new RegExp(Sd, "u");
14470
14470
  }
@@ -14603,7 +14603,7 @@ const Rd = (s) => {
14603
14603
  continue: !e.abort
14604
14604
  });
14605
14605
  };
14606
- }), Ld = /* @__PURE__ */ E("$ZodCheckMaxLength", (s, e) => {
14606
+ }), zd = /* @__PURE__ */ E("$ZodCheckMaxLength", (s, e) => {
14607
14607
  var t;
14608
14608
  Be.init(s, e), (t = s._zod.def).when ?? (t.when = (i) => {
14609
14609
  const n = i.value;
@@ -14626,7 +14626,7 @@ const Rd = (s) => {
14626
14626
  continue: !e.abort
14627
14627
  });
14628
14628
  };
14629
- }), zd = /* @__PURE__ */ E("$ZodCheckMinLength", (s, e) => {
14629
+ }), Ld = /* @__PURE__ */ E("$ZodCheckMinLength", (s, e) => {
14630
14630
  var t;
14631
14631
  Be.init(s, e), (t = s._zod.def).when ?? (t.when = (i) => {
14632
14632
  const n = i.value;
@@ -15538,7 +15538,7 @@ function xs(s, e) {
15538
15538
  inst: e
15539
15539
  }), s;
15540
15540
  }
15541
- const Lh = /* @__PURE__ */ E("$ZodCatch", (s, e) => {
15541
+ const zh = /* @__PURE__ */ E("$ZodCatch", (s, e) => {
15542
15542
  he.init(s, e), ae(s._zod, "optin", () => e.innerType._zod.optin), ae(s._zod, "optout", () => e.innerType._zod.optout), ae(s._zod, "values", () => e.innerType._zod.values), s._zod.parse = (t, i) => {
15543
15543
  if (i.direction === "backward")
15544
15544
  return e.innerType._zod.run(t, i);
@@ -15557,7 +15557,7 @@ const Lh = /* @__PURE__ */ E("$ZodCatch", (s, e) => {
15557
15557
  input: t.value
15558
15558
  }), t.issues = []), t);
15559
15559
  };
15560
- }), zh = /* @__PURE__ */ E("$ZodPipe", (s, e) => {
15560
+ }), Lh = /* @__PURE__ */ E("$ZodPipe", (s, e) => {
15561
15561
  he.init(s, e), ae(s._zod, "values", () => e.in._zod.values), ae(s._zod, "optin", () => e.in._zod.optin), ae(s._zod, "optout", () => e.out._zod.optout), ae(s._zod, "propValues", () => e.in._zod.propValues), s._zod.parse = (t, i) => {
15562
15562
  if (i.direction === "backward") {
15563
15563
  const a = e.out._zod.run(t, i);
@@ -15638,7 +15638,7 @@ function Gh() {
15638
15638
  return new qh();
15639
15639
  }
15640
15640
  (Bs = globalThis).__zod_globalRegistry ?? (Bs.__zod_globalRegistry = Gh());
15641
- const zt = globalThis.__zod_globalRegistry;
15641
+ const Lt = globalThis.__zod_globalRegistry;
15642
15642
  // @__NO_SIDE_EFFECTS__
15643
15643
  function Uh(s, e) {
15644
15644
  return new s({
@@ -15993,7 +15993,7 @@ function Os(s, e) {
15993
15993
  }
15994
15994
  // @__NO_SIDE_EFFECTS__
15995
15995
  function go(s, e) {
15996
- return new Ld({
15996
+ return new zd({
15997
15997
  check: "max_length",
15998
15998
  ...K(e),
15999
15999
  maximum: s
@@ -16001,7 +16001,7 @@ function go(s, e) {
16001
16001
  }
16002
16002
  // @__NO_SIDE_EFFECTS__
16003
16003
  function xi(s, e) {
16004
- return new zd({
16004
+ return new Ld({
16005
16005
  check: "min_length",
16006
16006
  ...K(e),
16007
16007
  minimum: s
@@ -16138,7 +16138,7 @@ function yo(s) {
16138
16138
  let e = s?.target ?? "draft-2020-12";
16139
16139
  return e === "draft-4" && (e = "draft-04"), e === "draft-7" && (e = "draft-07"), {
16140
16140
  processors: s.processors ?? {},
16141
- metadataRegistry: s?.metadata ?? zt,
16141
+ metadataRegistry: s?.metadata ?? Lt,
16142
16142
  target: e,
16143
16143
  unrepresentable: s?.unrepresentable ?? "throw",
16144
16144
  override: s?.override ?? (() => {
@@ -16374,7 +16374,7 @@ const $m = (s, e = {}) => (t) => {
16374
16374
  json_string: "json-string",
16375
16375
  regex: ""
16376
16376
  // do not set
16377
- }, Lm = (s, e, t, i) => {
16377
+ }, zm = (s, e, t, i) => {
16378
16378
  const n = t;
16379
16379
  n.type = "string";
16380
16380
  const { minimum: a, maximum: r, format: o, patterns: c, contentEncoding: l } = s._zod.bag;
@@ -16387,7 +16387,7 @@ const $m = (s, e = {}) => (t) => {
16387
16387
  }))
16388
16388
  ]);
16389
16389
  }
16390
- }, zm = (s, e, t, i) => {
16390
+ }, Lm = (s, e, t, i) => {
16391
16391
  const n = t, { minimum: a, maximum: r, format: o, multipleOf: c, exclusiveMaximum: l, exclusiveMinimum: u } = s._zod.bag;
16392
16392
  typeof o == "string" && o.includes("int") ? n.type = "integer" : n.type = "number", typeof u == "number" && (e.target === "draft-04" || e.target === "openapi-3.0" ? (n.minimum = u, n.exclusiveMinimum = !0) : n.exclusiveMinimum = u), typeof a == "number" && (n.minimum = a, typeof u == "number" && e.target !== "draft-04" && (u >= a ? delete n.minimum : delete n.exclusiveMinimum)), typeof l == "number" && (e.target === "draft-04" || e.target === "openapi-3.0" ? (n.maximum = l, n.exclusiveMaximum = !0) : n.exclusiveMaximum = l), typeof r == "number" && (n.maximum = r, typeof l == "number" && e.target !== "draft-04" && (l <= r ? delete n.maximum : delete n.exclusiveMaximum)), typeof c == "number" && (n.multipleOf = c);
16393
16393
  }, Wm = (s, e, t, i) => {
@@ -16567,7 +16567,7 @@ const ff = (s, e) => {
16567
16567
  });
16568
16568
  }, Oe = E("ZodError", ff, {
16569
16569
  Parent: Error
16570
- }), gf = /* @__PURE__ */ na(Oe), pf = /* @__PURE__ */ aa(Oe), yf = /* @__PURE__ */ Li(Oe), vf = /* @__PURE__ */ zi(Oe), bf = /* @__PURE__ */ ad(Oe), wf = /* @__PURE__ */ sd(Oe), Sf = /* @__PURE__ */ rd(Oe), _f = /* @__PURE__ */ od(Oe), Tf = /* @__PURE__ */ cd(Oe), Cf = /* @__PURE__ */ ld(Oe), Af = /* @__PURE__ */ ud(Oe), Mf = /* @__PURE__ */ dd(Oe), me = /* @__PURE__ */ E("ZodType", (s, e) => (he.init(s, e), Object.assign(s["~standard"], {
16570
+ }), gf = /* @__PURE__ */ na(Oe), pf = /* @__PURE__ */ aa(Oe), yf = /* @__PURE__ */ zi(Oe), vf = /* @__PURE__ */ Li(Oe), bf = /* @__PURE__ */ ad(Oe), wf = /* @__PURE__ */ sd(Oe), Sf = /* @__PURE__ */ rd(Oe), _f = /* @__PURE__ */ od(Oe), Tf = /* @__PURE__ */ cd(Oe), Cf = /* @__PURE__ */ ld(Oe), Af = /* @__PURE__ */ ud(Oe), Mf = /* @__PURE__ */ dd(Oe), me = /* @__PURE__ */ E("ZodType", (s, e) => (he.init(s, e), Object.assign(s["~standard"], {
16571
16571
  jsonSchema: {
16572
16572
  input: Ri(s, "input"),
16573
16573
  output: Ri(s, "output")
@@ -16581,23 +16581,23 @@ const ff = (s, e) => {
16581
16581
  parent: !0
16582
16582
  }), s.with = s.check, s.clone = (t, i) => ut(s, t, i), s.brand = () => s, s.register = ((t, i) => (t.add(s, i), s)), s.parse = (t, i) => gf(s, t, i, { callee: s.parse }), s.safeParse = (t, i) => yf(s, t, i), s.parseAsync = async (t, i) => pf(s, t, i, { callee: s.parseAsync }), s.safeParseAsync = async (t, i) => vf(s, t, i), s.spa = s.safeParseAsync, s.encode = (t, i) => bf(s, t, i), s.decode = (t, i) => wf(s, t, i), s.encodeAsync = async (t, i) => Sf(s, t, i), s.decodeAsync = async (t, i) => _f(s, t, i), s.safeEncode = (t, i) => Tf(s, t, i), s.safeDecode = (t, i) => Cf(s, t, i), s.safeEncodeAsync = async (t, i) => Af(s, t, i), s.safeDecodeAsync = async (t, i) => Mf(s, t, i), s.refine = (t, i) => s.check(vg(t, i)), s.superRefine = (t) => s.check(bg(t)), s.overwrite = (t) => s.check(/* @__PURE__ */ Et(t)), s.optional = () => Hs(s), s.exactOptional = () => sg(s), s.nullable = () => qs(s), s.nullish = () => Hs(qs(s)), s.nonoptional = (t) => dg(s, t), s.array = () => Te(s), s.or = (t) => ra([s, t]), s.and = (t) => eg(s, t), s.transform = (t) => Gs(s, ng(t)), s.default = (t) => cg(s, t), s.prefault = (t) => ug(s, t), s.catch = (t) => mg(s, t), s.pipe = (t) => Gs(s, t), s.readonly = () => pg(s), s.describe = (t) => {
16583
16583
  const i = s.clone();
16584
- return zt.add(i, { description: t }), i;
16584
+ return Lt.add(i, { description: t }), i;
16585
16585
  }, Object.defineProperty(s, "description", {
16586
16586
  get() {
16587
- return zt.get(s)?.description;
16587
+ return Lt.get(s)?.description;
16588
16588
  },
16589
16589
  configurable: !0
16590
16590
  }), s.meta = (...t) => {
16591
16591
  if (t.length === 0)
16592
- return zt.get(s);
16592
+ return Lt.get(s);
16593
16593
  const i = s.clone();
16594
- return zt.add(i, t[0]), i;
16594
+ return Lt.add(i, t[0]), i;
16595
16595
  }, s.isOptional = () => s.safeParse(void 0).success, s.isNullable = () => s.safeParse(null).success, s.apply = (t) => t(s), s)), So = /* @__PURE__ */ E("_ZodString", (s, e) => {
16596
- sa.init(s, e), me.init(s, e), s._zod.processJSONSchema = (i, n, a) => Lm(s, i, n);
16596
+ sa.init(s, e), me.init(s, e), s._zod.processJSONSchema = (i, n, a) => zm(s, i, n);
16597
16597
  const t = s._zod.bag;
16598
16598
  s.format = t.format ?? null, s.minLength = t.minimum ?? null, s.maxLength = t.maximum ?? null, s.regex = (...i) => s.check(/* @__PURE__ */ _m(...i)), s.includes = (...i) => s.check(/* @__PURE__ */ Am(...i)), s.startsWith = (...i) => s.check(/* @__PURE__ */ Mm(...i)), s.endsWith = (...i) => s.check(/* @__PURE__ */ km(...i)), s.min = (...i) => s.check(/* @__PURE__ */ xi(...i)), s.max = (...i) => s.check(/* @__PURE__ */ go(...i)), s.length = (...i) => s.check(/* @__PURE__ */ po(...i)), s.nonempty = (...i) => s.check(/* @__PURE__ */ xi(1, ...i)), s.lowercase = (i) => s.check(/* @__PURE__ */ Tm(i)), s.uppercase = (i) => s.check(/* @__PURE__ */ Cm(i)), s.trim = () => s.check(/* @__PURE__ */ Dm()), s.normalize = (...i) => s.check(/* @__PURE__ */ Im(...i)), s.toLowerCase = () => s.check(/* @__PURE__ */ Em()), s.toUpperCase = () => s.check(/* @__PURE__ */ xm()), s.slugify = () => s.check(/* @__PURE__ */ Rm());
16599
16599
  }), kf = /* @__PURE__ */ E("ZodString", (s, e) => {
16600
- sa.init(s, e), So.init(s, e), s.email = (t) => s.check(/* @__PURE__ */ Vh(If, t)), s.url = (t) => s.check(/* @__PURE__ */ Xh(Df, t)), s.jwt = (t) => s.check(/* @__PURE__ */ hm(Gf, t)), s.emoji = (t) => s.check(/* @__PURE__ */ Jh(Ef, t)), s.guid = (t) => s.check(/* @__PURE__ */ Ns(Ls, t)), s.uuid = (t) => s.check(/* @__PURE__ */ jh(pi, t)), s.uuidv4 = (t) => s.check(/* @__PURE__ */ Kh(pi, t)), s.uuidv6 = (t) => s.check(/* @__PURE__ */ Yh(pi, t)), s.uuidv7 = (t) => s.check(/* @__PURE__ */ Zh(pi, t)), s.nanoid = (t) => s.check(/* @__PURE__ */ Qh(xf, t)), s.guid = (t) => s.check(/* @__PURE__ */ Ns(Ls, t)), s.cuid = (t) => s.check(/* @__PURE__ */ em(Rf, t)), s.cuid2 = (t) => s.check(/* @__PURE__ */ tm(Pf, t)), s.ulid = (t) => s.check(/* @__PURE__ */ im(Bf, t)), s.base64 = (t) => s.check(/* @__PURE__ */ lm(Wf, t)), s.base64url = (t) => s.check(/* @__PURE__ */ um(Hf, t)), s.xid = (t) => s.check(/* @__PURE__ */ nm(Nf, t)), s.ksuid = (t) => s.check(/* @__PURE__ */ am(Ff, t)), s.ipv4 = (t) => s.check(/* @__PURE__ */ sm($f, t)), s.ipv6 = (t) => s.check(/* @__PURE__ */ rm(Of, t)), s.cidrv4 = (t) => s.check(/* @__PURE__ */ om(Lf, t)), s.cidrv6 = (t) => s.check(/* @__PURE__ */ cm(zf, t)), s.e164 = (t) => s.check(/* @__PURE__ */ dm(qf, t)), s.datetime = (t) => s.check(of(t)), s.date = (t) => s.check(lf(t)), s.time = (t) => s.check(df(t)), s.duration = (t) => s.check(mf(t));
16600
+ sa.init(s, e), So.init(s, e), s.email = (t) => s.check(/* @__PURE__ */ Vh(If, t)), s.url = (t) => s.check(/* @__PURE__ */ Xh(Df, t)), s.jwt = (t) => s.check(/* @__PURE__ */ hm(Gf, t)), s.emoji = (t) => s.check(/* @__PURE__ */ Jh(Ef, t)), s.guid = (t) => s.check(/* @__PURE__ */ Ns(zs, t)), s.uuid = (t) => s.check(/* @__PURE__ */ jh(pi, t)), s.uuidv4 = (t) => s.check(/* @__PURE__ */ Kh(pi, t)), s.uuidv6 = (t) => s.check(/* @__PURE__ */ Yh(pi, t)), s.uuidv7 = (t) => s.check(/* @__PURE__ */ Zh(pi, t)), s.nanoid = (t) => s.check(/* @__PURE__ */ Qh(xf, t)), s.guid = (t) => s.check(/* @__PURE__ */ Ns(zs, t)), s.cuid = (t) => s.check(/* @__PURE__ */ em(Rf, t)), s.cuid2 = (t) => s.check(/* @__PURE__ */ tm(Pf, t)), s.ulid = (t) => s.check(/* @__PURE__ */ im(Bf, t)), s.base64 = (t) => s.check(/* @__PURE__ */ lm(Wf, t)), s.base64url = (t) => s.check(/* @__PURE__ */ um(Hf, t)), s.xid = (t) => s.check(/* @__PURE__ */ nm(Nf, t)), s.ksuid = (t) => s.check(/* @__PURE__ */ am(Ff, t)), s.ipv4 = (t) => s.check(/* @__PURE__ */ sm($f, t)), s.ipv6 = (t) => s.check(/* @__PURE__ */ rm(Of, t)), s.cidrv4 = (t) => s.check(/* @__PURE__ */ om(zf, t)), s.cidrv6 = (t) => s.check(/* @__PURE__ */ cm(Lf, t)), s.e164 = (t) => s.check(/* @__PURE__ */ dm(qf, t)), s.datetime = (t) => s.check(of(t)), s.date = (t) => s.check(lf(t)), s.time = (t) => s.check(df(t)), s.duration = (t) => s.check(mf(t));
16601
16601
  });
16602
16602
  function G(s) {
16603
16603
  return /* @__PURE__ */ Uh(kf, s);
@@ -16606,7 +16606,7 @@ const de = /* @__PURE__ */ E("ZodStringFormat", (s, e) => {
16606
16606
  ce.init(s, e), So.init(s, e);
16607
16607
  }), If = /* @__PURE__ */ E("ZodEmail", (s, e) => {
16608
16608
  Qd.init(s, e), de.init(s, e);
16609
- }), Ls = /* @__PURE__ */ E("ZodGUID", (s, e) => {
16609
+ }), zs = /* @__PURE__ */ E("ZodGUID", (s, e) => {
16610
16610
  Xd.init(s, e), de.init(s, e);
16611
16611
  }), pi = /* @__PURE__ */ E("ZodUUID", (s, e) => {
16612
16612
  Jd.init(s, e), de.init(s, e);
@@ -16630,9 +16630,9 @@ const de = /* @__PURE__ */ E("ZodStringFormat", (s, e) => {
16630
16630
  hh.init(s, e), de.init(s, e);
16631
16631
  }), Of = /* @__PURE__ */ E("ZodIPv6", (s, e) => {
16632
16632
  mh.init(s, e), de.init(s, e);
16633
- }), Lf = /* @__PURE__ */ E("ZodCIDRv4", (s, e) => {
16633
+ }), zf = /* @__PURE__ */ E("ZodCIDRv4", (s, e) => {
16634
16634
  fh.init(s, e), de.init(s, e);
16635
- }), zf = /* @__PURE__ */ E("ZodCIDRv6", (s, e) => {
16635
+ }), Lf = /* @__PURE__ */ E("ZodCIDRv6", (s, e) => {
16636
16636
  gh.init(s, e), de.init(s, e);
16637
16637
  }), Wf = /* @__PURE__ */ E("ZodBase64", (s, e) => {
16638
16638
  ph.init(s, e), de.init(s, e);
@@ -16643,17 +16643,17 @@ const de = /* @__PURE__ */ E("ZodStringFormat", (s, e) => {
16643
16643
  }), Gf = /* @__PURE__ */ E("ZodJWT", (s, e) => {
16644
16644
  Sh.init(s, e), de.init(s, e);
16645
16645
  }), _o = /* @__PURE__ */ E("ZodNumber", (s, e) => {
16646
- uo.init(s, e), me.init(s, e), s._zod.processJSONSchema = (i, n, a) => zm(s, i, n), s.gt = (i, n) => s.check(/* @__PURE__ */ $s(i, n)), s.gte = (i, n) => s.check(/* @__PURE__ */ ln(i, n)), s.min = (i, n) => s.check(/* @__PURE__ */ ln(i, n)), s.lt = (i, n) => s.check(/* @__PURE__ */ Fs(i, n)), s.lte = (i, n) => s.check(/* @__PURE__ */ cn(i, n)), s.max = (i, n) => s.check(/* @__PURE__ */ cn(i, n)), s.int = (i) => s.check(zs(i)), s.safe = (i) => s.check(zs(i)), s.positive = (i) => s.check(/* @__PURE__ */ $s(0, i)), s.nonnegative = (i) => s.check(/* @__PURE__ */ ln(0, i)), s.negative = (i) => s.check(/* @__PURE__ */ Fs(0, i)), s.nonpositive = (i) => s.check(/* @__PURE__ */ cn(0, i)), s.multipleOf = (i, n) => s.check(/* @__PURE__ */ Os(i, n)), s.step = (i, n) => s.check(/* @__PURE__ */ Os(i, n)), s.finite = () => s;
16646
+ uo.init(s, e), me.init(s, e), s._zod.processJSONSchema = (i, n, a) => Lm(s, i, n), s.gt = (i, n) => s.check(/* @__PURE__ */ $s(i, n)), s.gte = (i, n) => s.check(/* @__PURE__ */ ln(i, n)), s.min = (i, n) => s.check(/* @__PURE__ */ ln(i, n)), s.lt = (i, n) => s.check(/* @__PURE__ */ Fs(i, n)), s.lte = (i, n) => s.check(/* @__PURE__ */ cn(i, n)), s.max = (i, n) => s.check(/* @__PURE__ */ cn(i, n)), s.int = (i) => s.check(Ls(i)), s.safe = (i) => s.check(Ls(i)), s.positive = (i) => s.check(/* @__PURE__ */ $s(0, i)), s.nonnegative = (i) => s.check(/* @__PURE__ */ ln(0, i)), s.negative = (i) => s.check(/* @__PURE__ */ Fs(0, i)), s.nonpositive = (i) => s.check(/* @__PURE__ */ cn(0, i)), s.multipleOf = (i, n) => s.check(/* @__PURE__ */ Os(i, n)), s.step = (i, n) => s.check(/* @__PURE__ */ Os(i, n)), s.finite = () => s;
16647
16647
  const t = s._zod.bag;
16648
16648
  s.minValue = Math.max(t.minimum ?? Number.NEGATIVE_INFINITY, t.exclusiveMinimum ?? Number.NEGATIVE_INFINITY) ?? null, s.maxValue = Math.min(t.maximum ?? Number.POSITIVE_INFINITY, t.exclusiveMaximum ?? Number.POSITIVE_INFINITY) ?? null, s.isInt = (t.format ?? "").includes("int") || Number.isSafeInteger(t.multipleOf ?? 0.5), s.isFinite = !0, s.format = t.format ?? null;
16649
16649
  });
16650
- function z(s) {
16650
+ function L(s) {
16651
16651
  return /* @__PURE__ */ ym(_o, s);
16652
16652
  }
16653
16653
  const Uf = /* @__PURE__ */ E("ZodNumberFormat", (s, e) => {
16654
16654
  _h.init(s, e), _o.init(s, e);
16655
16655
  });
16656
- function zs(s) {
16656
+ function Ls(s) {
16657
16657
  return /* @__PURE__ */ vm(Uf, s);
16658
16658
  }
16659
16659
  const Vf = /* @__PURE__ */ E("ZodBoolean", (s, e) => {
@@ -16845,7 +16845,7 @@ function dg(s, e) {
16845
16845
  });
16846
16846
  }
16847
16847
  const hg = /* @__PURE__ */ E("ZodCatch", (s, e) => {
16848
- Lh.init(s, e), me.init(s, e), s._zod.processJSONSchema = (t, i, n) => nf(s, t, i, n), s.unwrap = () => s._zod.def.innerType, s.removeCatch = s.unwrap;
16848
+ zh.init(s, e), me.init(s, e), s._zod.processJSONSchema = (t, i, n) => nf(s, t, i, n), s.unwrap = () => s._zod.def.innerType, s.removeCatch = s.unwrap;
16849
16849
  });
16850
16850
  function mg(s, e) {
16851
16851
  return new hg({
@@ -16855,7 +16855,7 @@ function mg(s, e) {
16855
16855
  });
16856
16856
  }
16857
16857
  const fg = /* @__PURE__ */ E("ZodPipe", (s, e) => {
16858
- zh.init(s, e), me.init(s, e), s._zod.processJSONSchema = (t, i, n) => af(s, t, i, n), s.in = e.in, s.out = e.out;
16858
+ Lh.init(s, e), me.init(s, e), s._zod.processJSONSchema = (t, i, n) => af(s, t, i, n), s.in = e.in, s.out = e.out;
16859
16859
  });
16860
16860
  function Gs(s, e) {
16861
16861
  return new fg({
@@ -16886,7 +16886,7 @@ function bg(s) {
16886
16886
  const wg = et.map((s) => s), Sg = re({
16887
16887
  id: G(),
16888
16888
  uuid: G(),
16889
- playlist_index: z().nonnegative(),
16889
+ playlist_index: L().nonnegative(),
16890
16890
  chain_name: G(),
16891
16891
  token_address: G().optional(),
16892
16892
  token_id: G().optional(),
@@ -16900,12 +16900,12 @@ const wg = et.map((s) => s), Sg = re({
16900
16900
  image_thumb_url: G().url().optional(),
16901
16901
  audio_url: G().url(),
16902
16902
  audio_url_lossless: G().url().optional(),
16903
- duration: z().nonnegative(),
16903
+ duration: L().nonnegative(),
16904
16904
  genre: G(),
16905
16905
  tags: Te(G()),
16906
- bpm: z().positive().optional(),
16906
+ bpm: L().positive().optional(),
16907
16907
  key: G().optional(),
16908
- attributes: Ci(G(), ra([G(), z()])).optional()
16908
+ attributes: Ci(G(), ra([G(), L()])).optional()
16909
16909
  }).refine(
16910
16910
  (s) => s.chain_name === "AR" ? !!s.tx_id : !!s.token_address && !!s.token_id,
16911
16911
  {
@@ -16921,59 +16921,59 @@ const wg = et.map((s) => s), Sg = re({
16921
16921
  tags: Te(G()).optional(),
16922
16922
  tracks: Te(Sg)
16923
16923
  }), Bb = re({
16924
- bass_dominance: z().min(0).max(1),
16925
- mid_dominance: z().min(0).max(1),
16926
- treble_dominance: z().min(0).max(1),
16927
- average_amplitude: z().min(0).max(1),
16928
- spectral_centroid: z().optional(),
16929
- spectral_rolloff: z().optional(),
16930
- zero_crossing_rate: z().optional(),
16924
+ bass_dominance: L().min(0).max(1),
16925
+ mid_dominance: L().min(0).max(1),
16926
+ treble_dominance: L().min(0).max(1),
16927
+ average_amplitude: L().min(0).max(1),
16928
+ spectral_centroid: L().optional(),
16929
+ spectral_rolloff: L().optional(),
16930
+ zero_crossing_rate: L().optional(),
16931
16931
  color_palette: re({
16932
16932
  colors: Te(G()),
16933
16933
  primary_color: G(),
16934
16934
  secondary_color: G().optional(),
16935
16935
  accent_color: G().optional(),
16936
- brightness: z().min(0).max(1),
16937
- saturation: z().min(0).max(1),
16936
+ brightness: L().min(0).max(1),
16937
+ saturation: L().min(0).max(1),
16938
16938
  is_monochrome: Fn()
16939
16939
  }).optional(),
16940
16940
  analysis_metadata: re({
16941
- duration_analyzed: z().positive(),
16941
+ duration_analyzed: L().positive(),
16942
16942
  full_buffer_analyzed: Fn(),
16943
- sample_positions: Te(z()),
16943
+ sample_positions: Te(L()),
16944
16944
  analyzed_at: G()
16945
16945
  })
16946
16946
  }), Us = re({
16947
- STR: z().min(1).max(20),
16948
- DEX: z().min(1).max(20),
16949
- CON: z().min(1).max(20),
16950
- INT: z().min(1).max(20),
16951
- WIS: z().min(1).max(20),
16952
- CHA: z().min(1).max(20)
16947
+ STR: L().min(1).max(20),
16948
+ DEX: L().min(1).max(20),
16949
+ CON: L().min(1).max(20),
16950
+ INT: L().min(1).max(20),
16951
+ WIS: L().min(1).max(20),
16952
+ CHA: L().min(1).max(20)
16953
16953
  }), Nb = re({
16954
16954
  name: G(),
16955
16955
  race: Ai(["Human", "Elf", "Dwarf", "Halfling", "Dragonborn", "Gnome", "Half-Elf", "Half-Orc", "Tiefling"]),
16956
16956
  class: Ai(wg),
16957
- level: z().min(1).max(20),
16957
+ level: L().min(1).max(20),
16958
16958
  ability_scores: Us,
16959
16959
  ability_modifiers: Us,
16960
- proficiency_bonus: z().min(2).max(6),
16960
+ proficiency_bonus: L().min(2).max(6),
16961
16961
  hp: re({
16962
- current: z().nonnegative(),
16963
- max: z().positive(),
16964
- temp: z().nonnegative()
16962
+ current: L().nonnegative(),
16963
+ max: L().positive(),
16964
+ temp: L().nonnegative()
16965
16965
  }),
16966
- armor_class: z().positive(),
16967
- initiative: z(),
16968
- speed: z().positive(),
16966
+ armor_class: L().positive(),
16967
+ initiative: L(),
16968
+ speed: L().positive(),
16969
16969
  skills: Ci(G(), Ai(["none", "proficient", "expertise"])),
16970
16970
  saving_throws: Ci(G(), Fn()),
16971
16971
  racial_traits: Te(G()),
16972
16972
  class_features: Te(G()),
16973
16973
  spells: re({
16974
16974
  spell_slots: Ci(G(), re({
16975
- total: z().nonnegative(),
16976
- used: z().nonnegative()
16975
+ total: L().nonnegative(),
16976
+ used: L().nonnegative()
16977
16977
  })),
16978
16978
  known_spells: Te(G()),
16979
16979
  cantrips: Te(G())
@@ -16995,8 +16995,8 @@ const wg = et.map((s) => s), Sg = re({
16995
16995
  aura_color: G().optional()
16996
16996
  }).optional(),
16997
16997
  xp: re({
16998
- current: z().nonnegative(),
16999
- next_level: z().positive()
16998
+ current: L().nonnegative(),
16999
+ next_level: L().positive()
17000
17000
  }),
17001
17001
  seed: G(),
17002
17002
  generated_at: G()
@@ -17434,7 +17434,7 @@ function Ob(s) {
17434
17434
  }
17435
17435
  return e;
17436
17436
  }
17437
- function Lb(s) {
17437
+ function zb(s) {
17438
17438
  const e = [];
17439
17439
  for (const t of s.tracks) {
17440
17440
  if ("title" in t && typeof t.title == "string") {
@@ -17451,7 +17451,7 @@ function Lb(s) {
17451
17451
  }
17452
17452
  return e;
17453
17453
  }
17454
- function zb(s) {
17454
+ function Lb(s) {
17455
17455
  const e = [];
17456
17456
  for (const t of s.tracks) {
17457
17457
  if ("artist" in t && typeof t.artist == "string") {
@@ -17924,7 +17924,7 @@ class Eg {
17924
17924
  if (this.wayfinder && !m) {
17925
17925
  const f = Date.now();
17926
17926
  this.logger.info("[gateway] Step 4 (wayfinder): trying");
17927
- const g = await this.tryWayfinder(e, t, i, n, c), p = Date.now() - f;
17927
+ const g = await this.tryWayfinder(t, i, n, c), p = Date.now() - f;
17928
17928
  if (g)
17929
17929
  return this.logger.info("[gateway] Step 4 (wayfinder): success", { ms: p, totalMs: Date.now() - r }), g;
17930
17930
  this.logger.info("[gateway] Step 4 (wayfinder): failed", { ms: p });
@@ -17967,7 +17967,7 @@ class Eg {
17967
17967
  if (m) return m;
17968
17968
  }
17969
17969
  if (this.wayfinder) {
17970
- const m = await this.tryWayfinder(e, o, c, i);
17970
+ const m = await this.tryWayfinder(o, c, i);
17971
17971
  if (m) return m;
17972
17972
  }
17973
17973
  const d = this.gateways;
@@ -18107,81 +18107,82 @@ class Eg {
18107
18107
  }), this.rankedGatewaysCache) : null;
18108
18108
  }
18109
18109
  }
18110
- async tryWayfinder(e, t, i, n, a) {
18110
+ async tryWayfinder(e, t, i, n) {
18111
18111
  if (!this.wayfinder) return null;
18112
- const r = 10, o = /* @__PURE__ */ new Set();
18113
- a && o.add(a);
18112
+ const a = 10, r = /* @__PURE__ */ new Set();
18113
+ n && r.add(n);
18114
+ const o = `https://arweave.net/${e}${t}`;
18114
18115
  try {
18115
- this.logger.debug("Resolving via Wayfinder (first pick)", { txId: t });
18116
+ this.logger.debug("Resolving via Wayfinder (first pick)", { txId: e, normalizedUrl: o });
18116
18117
  const u = await this.withTimeout(
18117
- this.wayfinder.resolveUrl({ originalUrl: e }),
18118
+ this.wayfinder.resolveUrl({ originalUrl: o }),
18118
18119
  this.timeout + 2e3,
18119
18120
  "Wayfinder resolution timed out"
18120
18121
  );
18121
- if (n?.aborted) return null;
18122
+ if (i?.aborted) return null;
18122
18123
  const d = u.hostname;
18123
- if (o.has(d))
18124
+ if (r.has(d))
18124
18125
  this.logger.debug("Wayfinder first pick was already excluded, skipping to walk", { host: d });
18125
18126
  else {
18126
18127
  const h = u.protocol.replace(":", ""), m = {
18127
18128
  host: d,
18128
18129
  protocol: h,
18129
18130
  priority: 0
18130
- }, f = await this.checkGateway(t, m, i, n);
18131
+ }, f = await this.checkGateway(e, m, t, i);
18131
18132
  if (f) {
18132
- const g = qe(t, m, i);
18133
- return f === !0 ? (this.setActiveGateway(m, t), this.logger.info("Gateway resolved via Wayfinder (first pick)", {
18134
- txId: t,
18133
+ const g = qe(e, m, t);
18134
+ return f === !0 ? (this.setActiveGateway(m, e), this.logger.info("Gateway resolved via Wayfinder (first pick)", {
18135
+ txId: e,
18135
18136
  gateway: d,
18136
- pathSuffix: i,
18137
+ pathSuffix: t,
18137
18138
  workingUrl: g
18138
18139
  })) : this.logger.info("Gateway maybe resolved via Wayfinder (first pick, no-cors)", {
18139
- txId: t,
18140
+ txId: e,
18140
18141
  gateway: d,
18141
- pathSuffix: i,
18142
+ pathSuffix: t,
18142
18143
  workingUrl: g
18143
18144
  }), g;
18144
18145
  }
18145
- this.logger.debug("Wayfinder first pick failed verify, will walk ranked list", { host: d }), o.add(d);
18146
+ this.logger.debug("Wayfinder first pick failed verify, will walk ranked list", { host: d }), r.add(d);
18146
18147
  }
18147
18148
  } catch (u) {
18148
18149
  this.logger.debug("Wayfinder first pick threw, will walk ranked list", { error: u });
18149
18150
  }
18150
- if (n?.aborted) return null;
18151
- const c = await this.getRankedGatewaysCached(n);
18152
- if (!c || c.length === 0 || n?.aborted) return null;
18153
- const l = c.filter((u) => !o.has(u.hostname)).slice(0, r);
18151
+ if (i?.aborted) return null;
18152
+ const c = await this.getRankedGatewaysCached(i);
18153
+ if (!c || c.length === 0 || i?.aborted) return null;
18154
+ const l = c.filter((u) => !r.has(u.hostname)).slice(0, a);
18154
18155
  this.logger.debug("Walking Wayfinder ranked list", {
18155
- txId: t,
18156
+ txId: e,
18156
18157
  poolSize: c.length,
18157
18158
  walkSize: l.length
18158
18159
  });
18159
18160
  for (const u of l) {
18160
- if (n?.aborted) return null;
18161
+ if (i?.aborted) return null;
18161
18162
  const d = {
18162
18163
  host: u.hostname,
18163
18164
  protocol: u.protocol.replace(":", ""),
18164
18165
  priority: 0
18165
- }, h = await this.checkGateway(t, d, i, n);
18166
+ }, h = await this.checkGateway(e, d, t, i);
18166
18167
  if (h) {
18167
- const m = qe(t, d, i);
18168
- return h === !0 ? (this.setActiveGateway(d, t), this.logger.info("Gateway resolved via Wayfinder ranked walk", {
18169
- txId: t,
18168
+ const m = qe(e, d, t);
18169
+ return h === !0 ? (this.setActiveGateway(d, e), this.logger.info("Gateway resolved via Wayfinder ranked walk", {
18170
+ txId: e,
18170
18171
  gateway: d.host,
18171
- pathSuffix: i,
18172
+ pathSuffix: t,
18172
18173
  workingUrl: m
18173
18174
  })) : this.logger.info("Gateway maybe resolved via Wayfinder ranked walk (no-cors)", {
18174
- txId: t,
18175
+ txId: e,
18175
18176
  gateway: d.host,
18176
- pathSuffix: i,
18177
+ pathSuffix: t,
18177
18178
  workingUrl: m
18178
18179
  }), m;
18179
18180
  }
18180
- o.add(d.host);
18181
+ r.add(d.host);
18181
18182
  }
18182
18183
  return this.logger.debug("Wayfinder ranked walk exhausted with no match", {
18183
- txId: t,
18184
- checkedHosts: Array.from(o)
18184
+ txId: e,
18185
+ checkedHosts: Array.from(r)
18185
18186
  }), null;
18186
18187
  }
18187
18188
  /**
@@ -19841,7 +19842,7 @@ function Bg() {
19841
19842
  });
19842
19843
  return h(w, b), w;
19843
19844
  }
19844
- function Lc(b, C) {
19845
+ function zc(b, C) {
19845
19846
  var w = this, M = new d(function(k, A) {
19846
19847
  w.ready().then(function() {
19847
19848
  var x = w._dbInfo;
@@ -19857,7 +19858,7 @@ function Bg() {
19857
19858
  });
19858
19859
  return h(M, C), M;
19859
19860
  }
19860
- function zc(b) {
19861
+ function Lc(b) {
19861
19862
  var C = this, w = new d(function(M, k) {
19862
19863
  C.ready().then(function() {
19863
19864
  var A = C._dbInfo;
@@ -19938,8 +19939,8 @@ function Bg() {
19938
19939
  removeItem: Fc,
19939
19940
  clear: $c,
19940
19941
  length: Oc,
19941
- key: Lc,
19942
- keys: zc,
19942
+ key: zc,
19943
+ keys: Lc,
19943
19944
  dropInstance: Hc
19944
19945
  };
19945
19946
  function Gc() {
@@ -20099,9 +20100,9 @@ function Bg() {
20099
20100
  k++;
20100
20101
  }
20101
20102
  return !1;
20102
- }, La = Array.isArray || function(b) {
20103
+ }, za = Array.isArray || function(b) {
20103
20104
  return Object.prototype.toString.call(b) === "[object Array]";
20104
- }, xt = {}, za = {}, yt = {
20105
+ }, xt = {}, La = {}, yt = {
20105
20106
  INDEXEDDB: kc,
20106
20107
  WEBSQL: qc,
20107
20108
  LOCALSTORAGE: nl
@@ -20128,7 +20129,7 @@ function Bg() {
20128
20129
  var C = arguments[b];
20129
20130
  if (C)
20130
20131
  for (var w in C)
20131
- C.hasOwnProperty(w) && (La(C[w]) ? arguments[0][w] = C[w].slice() : arguments[0][w] = C[w]);
20132
+ C.hasOwnProperty(w) && (za(C[w]) ? arguments[0][w] = C[w].slice() : arguments[0][w] = C[w]);
20132
20133
  }
20133
20134
  return arguments[0];
20134
20135
  }
@@ -20182,7 +20183,7 @@ function Bg() {
20182
20183
  };
20183
20184
  ve();
20184
20185
  var pe = function(Rt) {
20185
- xt[B] && console.info("Redefining LocalForage driver: " + B), xt[B] = w, za[B] = Rt, x();
20186
+ xt[B] && console.info("Redefining LocalForage driver: " + B), xt[B] = w, La[B] = Rt, x();
20186
20187
  };
20187
20188
  "_support" in w ? w._support && typeof w._support == "function" ? w._support().then(pe, P) : pe(!!w._support) : pe(!0);
20188
20189
  } catch (Fe) {
@@ -20205,7 +20206,7 @@ function Bg() {
20205
20206
  return m(k, w, w), k;
20206
20207
  }, b.prototype.setDriver = function(w, M, k) {
20207
20208
  var A = this;
20208
- La(w) || (w = [w]);
20209
+ za(w) || (w = [w]);
20209
20210
  var x = this._getSupportedDrivers(w);
20210
20211
  function P() {
20211
20212
  A._config.driver = A.driver();
@@ -20242,7 +20243,7 @@ function Bg() {
20242
20243
  return A._driverSet = d.reject(V), A._driverSet;
20243
20244
  }), m(this._driverSet, M, k), this._driverSet;
20244
20245
  }, b.prototype.supports = function(w) {
20245
- return !!za[w];
20246
+ return !!La[w];
20246
20247
  }, b.prototype._extend = function(w) {
20247
20248
  Xi(this, w);
20248
20249
  }, b.prototype._getSupportedDrivers = function(w) {
@@ -20358,7 +20359,7 @@ function Io(s) {
20358
20359
  }
20359
20360
  const Do = /* @__PURE__ */ new Map();
20360
20361
  let Ys = !1;
20361
- function Lg() {
20362
+ function zg() {
20362
20363
  Ys || (Ys = !0, import("@tensorflow/tfjs").then((s) => {
20363
20364
  s.io.registerLoadRouter(((e) => {
20364
20365
  if (typeof e == "string" && e.startsWith("cached://")) {
@@ -20377,8 +20378,8 @@ function Lg() {
20377
20378
  }));
20378
20379
  }));
20379
20380
  }
20380
- Lg();
20381
- class zg {
20381
+ zg();
20382
+ class Lg {
20382
20383
  constructor(e = {}) {
20383
20384
  this.store = Fg.createInstance({
20384
20385
  name: e.storeName ?? "playlist-data-engine-models",
@@ -20493,7 +20494,7 @@ class zg {
20493
20494
  }), e;
20494
20495
  }
20495
20496
  }
20496
- const Ht = new zg();
20497
+ const Ht = new Lg();
20497
20498
  function Jb(s) {
20498
20499
  if (!s || !s.metadata) return null;
20499
20500
  if (typeof s.metadata == "string")
@@ -20962,7 +20963,7 @@ class Jg {
20962
20963
  return i.length > 0 ? i[0] : "default";
20963
20964
  }
20964
20965
  }
20965
- class Le {
20966
+ class ze {
20966
20967
  /**
20967
20968
  * Select a single item based on weights
20968
20969
  *
@@ -21105,18 +21106,18 @@ class Le {
21105
21106
  static normalizeWeights(e, t, i = "relative") {
21106
21107
  if (e.length === 0)
21107
21108
  return {};
21108
- const n = Le.getFinalWeights(e, t, i), a = Object.values(n).reduce((o, c) => o + c, 0);
21109
+ const n = ze.getFinalWeights(e, t, i), a = Object.values(n).reduce((o, c) => o + c, 0);
21109
21110
  if (a === 0) {
21110
21111
  const o = {};
21111
21112
  for (const c of e) {
21112
- const l = Le.getItemKey(c);
21113
+ const l = ze.getItemKey(c);
21113
21114
  o[l] = 1 / e.length;
21114
21115
  }
21115
21116
  return o;
21116
21117
  }
21117
21118
  const r = {};
21118
21119
  for (const o of e) {
21119
- const c = Le.getItemKey(o);
21120
+ const c = ze.getItemKey(o);
21120
21121
  r[c] = n[c] / a;
21121
21122
  }
21122
21123
  return r;
@@ -22858,7 +22859,7 @@ function ep() {
22858
22859
  function xo() {
22859
22860
  ep() || Eo();
22860
22861
  }
22861
- const tp = Object.values(Lr), ip = Object.entries(Rn).map(([s, e]) => ({
22862
+ const tp = Object.values(zr), ip = Object.entries(Rn).map(([s, e]) => ({
22862
22863
  class: s,
22863
22864
  cantrips: e.cantrips,
22864
22865
  spells_by_level: e.spells_by_level
@@ -22874,7 +22875,7 @@ function Ro() {
22874
22875
  function np() {
22875
22876
  return Y.getInstance().getRegisteredCategories().some((t) => String(t).startsWith("spells"));
22876
22877
  }
22877
- function Ln() {
22878
+ function zn() {
22878
22879
  np() || Ro();
22879
22880
  }
22880
22881
  const ap = Object.values(Vt).map((s) => ({
@@ -22917,16 +22918,16 @@ function Oo() {
22917
22918
  function lp() {
22918
22919
  return Y.getInstance().getRegisteredCategories().some((t) => t === "classes");
22919
22920
  }
22920
- function Lo() {
22921
+ function zo() {
22921
22922
  lp() || Oo();
22922
22923
  }
22923
22924
  function t0() {
22924
- Eo(), Ro(), Po(), No(), $o(), Oo(), zo(), Ho();
22925
+ Eo(), Ro(), Po(), No(), $o(), Oo(), Lo(), Ho();
22925
22926
  }
22926
22927
  function i0() {
22927
- xo(), Ln(), Bo(), Fo(), cp(), Lo(), Wo(), hp();
22928
+ xo(), zn(), Bo(), Fo(), cp(), zo(), Wo(), hp();
22928
22929
  }
22929
- function zo() {
22930
+ function Lo() {
22930
22931
  const s = Y.getInstance(), e = {};
22931
22932
  for (const i of Js)
22932
22933
  e[i.class] || (e[i.class] = []), e[i.class].push(i);
@@ -22948,7 +22949,7 @@ function up() {
22948
22949
  return Y.getInstance().getRegisteredCategories().some((t) => t === "classFeatures" || t === "racialTraits");
22949
22950
  }
22950
22951
  function Wo() {
22951
- up() || zo();
22952
+ up() || Lo();
22952
22953
  }
22953
22954
  function Ho() {
22954
22955
  const s = Y.getInstance(), e = {
@@ -23018,7 +23019,7 @@ class mp {
23018
23019
  static select(e) {
23019
23020
  Fo();
23020
23021
  const t = Y.getInstance(), i = t.get("races"), n = t.getWeights("races"), a = t.getMode("races") || "default";
23021
- return Le.select(i, n, e, a);
23022
+ return ze.select(i, n, e, a);
23022
23023
  }
23023
23024
  }
23024
23025
  const wa = class wa {
@@ -23073,7 +23074,7 @@ const wa = class wa {
23073
23074
  * ```
23074
23075
  */
23075
23076
  static suggest(e, t) {
23076
- Lo();
23077
+ zo();
23077
23078
  const i = Y.getInstance(), n = i.get("classes"), a = this.calculateAllAffinities(e, n), r = this.calculateProbabilities(a), o = i.getWeights("classes"), c = this.applyCustomWeights(r, o, n), l = Object.entries(c).map(([u, d]) => [u, d]);
23078
23079
  return t.weightedChoice(l);
23079
23080
  }
@@ -23246,7 +23247,7 @@ const wa = class wa {
23246
23247
  }
23247
23248
  };
23248
23249
  wa.BASELINE_PROBABILITY = 0.04;
23249
- let zn = wa;
23250
+ let Ln = wa;
23250
23251
  class pn {
23251
23252
  /**
23252
23253
  * Get a spiced audio value for a frequency band
@@ -23416,7 +23417,7 @@ class fp {
23416
23417
  const n = Ne.getInstance(), a = n.getAllSkills(), r = {};
23417
23418
  for (const h of a)
23418
23419
  r[h.id] = "none";
23419
- const o = zr(e);
23420
+ const o = Lr(e);
23420
23421
  if (!o)
23421
23422
  return console.warn(`SkillAssigner: Unknown class "${e}", using default skill assignment`), r;
23422
23423
  const c = this.validateSkills(o.available_skills, n), l = i ? this.filterSkillsByPrerequisites(c, n, i) : c, u = this.getSkillListDefinition(e), d = this.selectSkills(
@@ -23553,7 +23554,7 @@ class pp {
23553
23554
  */
23554
23555
  static generate(e, t, i) {
23555
23556
  xo();
23556
- const n = new Ve(e), a = Y.getInstance(), r = a.get("appearance.bodyTypes"), o = a.getWeights("appearance.bodyTypes"), c = a.getMode("appearance.bodyTypes") || "default", l = a.get("appearance.skinTones"), u = a.getWeights("appearance.skinTones"), d = a.getMode("appearance.skinTones") || "default", h = a.get("appearance.hairStyles"), m = a.getWeights("appearance.hairStyles"), f = a.getMode("appearance.hairStyles") || "default", g = a.get("appearance.hairColors"), p = a.getWeights("appearance.hairColors"), y = a.getMode("appearance.hairColors") || "default", v = a.get("appearance.eyeColors"), S = a.getWeights("appearance.eyeColors"), T = a.getMode("appearance.eyeColors") || "default", _ = a.get("appearance.facialFeatures"), I = a.getWeights("appearance.facialFeatures"), D = a.getMode("appearance.facialFeatures") || "default", R = Le.select(r, o, n, c), q = Le.select(l, u, n, d), O = Le.select(h, m, n, f), W = Le.select(g, p, n, y), Z = Le.select(v, S, n, T), Q = n.randomInt(1, 4), se = Le.selectMultiple(
23557
+ const n = new Ve(e), a = Y.getInstance(), r = a.get("appearance.bodyTypes"), o = a.getWeights("appearance.bodyTypes"), c = a.getMode("appearance.bodyTypes") || "default", l = a.get("appearance.skinTones"), u = a.getWeights("appearance.skinTones"), d = a.getMode("appearance.skinTones") || "default", h = a.get("appearance.hairStyles"), m = a.getWeights("appearance.hairStyles"), f = a.getMode("appearance.hairStyles") || "default", g = a.get("appearance.hairColors"), p = a.getWeights("appearance.hairColors"), y = a.getMode("appearance.hairColors") || "default", v = a.get("appearance.eyeColors"), S = a.getWeights("appearance.eyeColors"), T = a.getMode("appearance.eyeColors") || "default", _ = a.get("appearance.facialFeatures"), I = a.getWeights("appearance.facialFeatures"), D = a.getMode("appearance.facialFeatures") || "default", R = ze.select(r, o, n, c), q = ze.select(l, u, n, d), O = ze.select(h, m, n, f), W = ze.select(g, p, n, y), Z = ze.select(v, S, n, T), Q = n.randomInt(1, 4), se = ze.selectMultiple(
23557
23558
  _,
23558
23559
  I,
23559
23560
  n,
@@ -23650,7 +23651,7 @@ class tr {
23650
23651
  static getCantrips(e) {
23651
23652
  if (!this.isSpellcaster(e))
23652
23653
  return [];
23653
- Ln();
23654
+ zn();
23654
23655
  const t = Y.getInstance(), i = fs(e), n = i ? [...i.cantrips] : [], a = `spells.${e}`, r = t.get(a);
23655
23656
  for (const o of r) {
23656
23657
  const c = o;
@@ -23675,7 +23676,7 @@ class tr {
23675
23676
  static getKnownSpells(e, t, i) {
23676
23677
  if (!this.isSpellcaster(e))
23677
23678
  return [];
23678
- Ln();
23679
+ zn();
23679
23680
  const n = Y.getInstance(), a = fs(e);
23680
23681
  if (!a || !a.spells_by_level)
23681
23682
  return [];
@@ -23719,7 +23720,7 @@ class tr {
23719
23720
  static filterSpellsByPrerequisites(e, t) {
23720
23721
  const i = [];
23721
23722
  for (const n of e) {
23722
- const a = Lr[n];
23723
+ const a = zr[n];
23723
23724
  if (!a) {
23724
23725
  i.push(n);
23725
23726
  continue;
@@ -25088,13 +25089,13 @@ class ua {
25088
25089
  const le = ["pure", ...c.getAvailableSubraces(h)], dt = a.randomChoice(le);
25089
25090
  l = dt === "pure" ? void 0 : dt;
25090
25091
  }
25091
- const m = n.forceClass || zn.suggest(t, a), f = n.forceName || new Jg().generateName(
25092
+ const m = n.forceClass || Ln.suggest(t, a), f = n.forceName || new Jg().generateName(
25092
25093
  e,
25093
25094
  i,
25094
25095
  t,
25095
25096
  m,
25096
25097
  n.deterministicName || !0
25097
- ), g = pn.calculateBaseScores(t, a), p = pn.applyRacialBonuses(g, h), y = pn.calculateModifiers(p), v = zr(m);
25098
+ ), g = pn.calculateBaseScores(t, a), p = pn.applyRacialBonuses(g, h), y = pn.calculateModifiers(p), v = Lr(m);
25098
25099
  if (!v)
25099
25100
  throw new Error(`Unknown class: ${m}. Cannot generate character.`);
25100
25101
  const T = Xn(h)?.speed ?? 30, _ = v.hit_die + y.CON, I = 10 + y.DEX, D = y.DEX, R = Wr[r], q = fp.assignSkills(m, a), O = {
@@ -26865,7 +26866,7 @@ function n0(s) {
26865
26866
  bandBiasWeights: { ...$p }
26866
26867
  };
26867
26868
  }
26868
- class Lp {
26869
+ class zp {
26869
26870
  constructor(e = {}) {
26870
26871
  this.config = { ...Yo, ...e };
26871
26872
  }
@@ -27065,14 +27066,14 @@ class Lp {
27065
27066
  this.config = { ...this.config, ...e };
27066
27067
  }
27067
27068
  }
27068
- const zp = {
27069
+ const Lp = {
27069
27070
  transitionOverlapBeats: 0,
27070
27071
  // No overlap by default - clean section boundaries
27071
27072
  preserveGridDecisions: !0
27072
27073
  }, Wp = 1, Hp = 1.5;
27073
27074
  class qp {
27074
27075
  constructor(e = {}) {
27075
- this.config = { ...zp, ...e };
27076
+ this.config = { ...Lp, ...e };
27076
27077
  }
27077
27078
  /**
27078
27079
  * Generate a composite stream from quantized band streams and scoring results
@@ -29410,7 +29411,7 @@ class mt {
29410
29411
  }), this.rhythmQuantizer = new jo({
29411
29412
  minimumTransientIntensity: this.options.minimumTransientIntensity,
29412
29413
  densityValidation: this.options.densityValidation
29413
- }), this.phraseAnalyzer = new Bp(this.options.phraseAnalyzerConfig), this.densityAnalyzer = new Fp(), this.streamScorer = new Lp(this.options.scoringConfig), this.compositeGenerator = new qp(), this.variantGenerator = new Un({
29414
+ }), this.phraseAnalyzer = new Bp(this.options.phraseAnalyzerConfig), this.densityAnalyzer = new Fp(), this.streamScorer = new zp(this.options.scoringConfig), this.compositeGenerator = new qp(), this.variantGenerator = new Un({
29414
29415
  seed: this.options.seed,
29415
29416
  rhythmicBalanceConfig: t
29416
29417
  }), this.rhythmicBalancer = new Zp(this.options.rhythmicBalanceConfig), this.tempoAwareQuantizer = new Rp(
@@ -33235,7 +33236,7 @@ function wi(s, e, t, i, n) {
33235
33236
  }
33236
33237
  return !0;
33237
33238
  }
33238
- function Ly(s, e, t, i, n) {
33239
+ function zy(s, e, t, i, n) {
33239
33240
  const a = [], r = e.filter(
33240
33241
  (h) => h.difficulty <= t && h.keys.length > 0
33241
33242
  );
@@ -33332,7 +33333,7 @@ function Si(s, e = Math.random) {
33332
33333
  const t = s[0].keys.length, i = s.filter((n) => n.keys.length === t);
33333
33334
  return i[Math.floor(e() * i.length)];
33334
33335
  }
33335
- function zy(s, e, t) {
33336
+ function Ly(s, e, t) {
33336
33337
  const i = s.length, n = [...s], a = new Array(i).fill(void 0);
33337
33338
  for (let r = 0; r < e.length; r++) {
33338
33339
  const o = t[r];
@@ -33524,7 +33525,7 @@ class bn {
33524
33525
  ), d = c.map(
33525
33526
  (v, S) => v !== null && u[S] ? v : null
33526
33527
  ), h = this.config.controllerMode === "ddr" ? ec.patterns : tc.patterns, m = Oy(d), f = /* @__PURE__ */ new Set(), g = m.map((v, S) => {
33527
- const T = Ly(
33528
+ const T = zy(
33528
33529
  v,
33529
33530
  h,
33530
33531
  r,
@@ -33534,7 +33535,7 @@ class bn {
33534
33535
  for (const _ of T)
33535
33536
  _.pattern.id !== "__interpolated__" && f.add(_.pattern.id);
33536
33537
  return T;
33537
- }), { keys: p, patternIds: y } = zy(
33538
+ }), { keys: p, patternIds: y } = Ly(
33538
33539
  d,
33539
33540
  m,
33540
33541
  g
@@ -42111,7 +42112,7 @@ function O0(s) {
42111
42112
  return Array.from(t).sort();
42112
42113
  }
42113
42114
  const we = Se.for("SubdivisionPlaybackController");
42114
- class L0 {
42115
+ class z0 {
42115
42116
  /**
42116
42117
  * Create a new SubdivisionPlaybackController
42117
42118
  *
@@ -42982,7 +42983,7 @@ class lc {
42982
42983
  return { ...this.config };
42983
42984
  }
42984
42985
  }
42985
- class z0 {
42986
+ class L0 {
42986
42987
  /**
42987
42988
  * Create a new SessionTracker
42988
42989
  * @param xpCalculator - Optional custom XPCalculator instance
@@ -44026,7 +44027,7 @@ const Sa = class Sa {
44026
44027
  */
44027
44028
  static getPlaysThreshold(e) {
44028
44029
  const t = this.customThresholds.get(e);
44029
- return t?.playsThreshold !== void 0 && t.playsThreshold !== null ? t.playsThreshold : Math.floor(zl * Math.pow(ja, e));
44030
+ return t?.playsThreshold !== void 0 && t.playsThreshold !== null ? t.playsThreshold : Math.floor(Ll * Math.pow(ja, e));
44030
44031
  }
44031
44032
  /**
44032
44033
  * Get the XP threshold for a given prestige level.
@@ -44200,7 +44201,7 @@ const Sa = class Sa {
44200
44201
  * @returns Roman numeral string (empty string for level 0)
44201
44202
  */
44202
44203
  static toRomanNumeral(e) {
44203
- return Ll[e];
44204
+ return zl[e];
44204
44205
  }
44205
44206
  /**
44206
44207
  * Get the next prestige level after prestiging.
@@ -46592,69 +46593,69 @@ class kv {
46592
46593
  }
46593
46594
  }
46594
46595
  const uc = re({
46595
- id: z(),
46596
+ id: L(),
46596
46597
  main: G(),
46597
46598
  description: G(),
46598
46599
  icon: G().optional()
46599
46600
  }), dc = re({
46600
- temp: z(),
46601
- feels_like: z().optional(),
46602
- temp_min: z().optional(),
46603
- temp_max: z().optional(),
46604
- pressure: z(),
46605
- humidity: z().nonnegative(),
46606
- sea_level: z().optional(),
46607
- grnd_level: z().optional(),
46608
- temp_kf: z().optional()
46601
+ temp: L(),
46602
+ feels_like: L().optional(),
46603
+ temp_min: L().optional(),
46604
+ temp_max: L().optional(),
46605
+ pressure: L(),
46606
+ humidity: L().nonnegative(),
46607
+ sea_level: L().optional(),
46608
+ grnd_level: L().optional(),
46609
+ temp_kf: L().optional()
46609
46610
  }), hc = re({
46610
- speed: z().nonnegative(),
46611
- deg: z().min(0).max(360).optional(),
46612
- gust: z().optional()
46611
+ speed: L().nonnegative(),
46612
+ deg: L().min(0).max(360).optional(),
46613
+ gust: L().optional()
46613
46614
  }), mc = re({
46614
- all: z().min(0).max(100)
46615
+ all: L().min(0).max(100)
46615
46616
  }), Iv = re({
46616
- type: z().optional(),
46617
- id: z().optional(),
46617
+ type: L().optional(),
46618
+ id: L().optional(),
46618
46619
  country: G().optional(),
46619
- sunrise: z().nonnegative(),
46620
- sunset: z().nonnegative(),
46620
+ sunrise: L().nonnegative(),
46621
+ sunset: L().nonnegative(),
46621
46622
  pod: G().optional()
46622
46623
  // Part of day (d/n) - forecast only
46623
46624
  }), fc = re({
46624
- "1h": z().optional(),
46625
+ "1h": L().optional(),
46625
46626
  // Precipitation volume for last 1 hour
46626
- "3h": z().optional()
46627
+ "3h": L().optional()
46627
46628
  // Precipitation volume for last 3 hours
46628
46629
  }), gc = re({
46629
- "1h": z().optional(),
46630
- "3h": z().optional()
46630
+ "1h": L().optional(),
46631
+ "3h": L().optional()
46631
46632
  }), pc = re({
46632
- lon: z().min(-180).max(180),
46633
- lat: z().min(-90).max(90)
46633
+ lon: L().min(-180).max(180),
46634
+ lat: L().min(-90).max(90)
46634
46635
  }), Dv = re({
46635
46636
  coord: pc.optional(),
46636
46637
  weather: Te(uc).min(1),
46637
46638
  base: G().optional(),
46638
46639
  main: dc,
46639
- visibility: z().nonnegative().optional(),
46640
+ visibility: L().nonnegative().optional(),
46640
46641
  wind: hc.optional(),
46641
46642
  rain: fc.optional(),
46642
46643
  snow: gc.optional(),
46643
46644
  clouds: mc.optional(),
46644
- dt: z().nonnegative(),
46645
+ dt: L().nonnegative(),
46645
46646
  sys: Iv,
46646
- timezone: z().optional(),
46647
- id: z().optional(),
46647
+ timezone: L().optional(),
46648
+ id: L().optional(),
46648
46649
  name: G().optional(),
46649
- cod: z().optional()
46650
+ cod: L().optional()
46650
46651
  }), Ev = re({
46651
- dt: z().nonnegative(),
46652
+ dt: L().nonnegative(),
46652
46653
  main: dc,
46653
46654
  weather: Te(uc).min(1),
46654
46655
  clouds: mc.optional(),
46655
46656
  wind: hc.optional(),
46656
- visibility: z().nonnegative().optional(),
46657
- pop: z().min(0).max(1).optional(),
46657
+ visibility: L().nonnegative().optional(),
46658
+ pop: L().min(0).max(1).optional(),
46658
46659
  // Probability of precipitation
46659
46660
  rain: fc.optional(),
46660
46661
  snow: gc.optional(),
@@ -46663,19 +46664,19 @@ const uc = re({
46663
46664
  }).optional(),
46664
46665
  dt_txt: G().optional()
46665
46666
  }), xv = re({
46666
- cod: ra([G(), z()]),
46667
- message: z().optional(),
46668
- cnt: z().nonnegative().optional(),
46667
+ cod: ra([G(), L()]),
46668
+ message: L().optional(),
46669
+ cnt: L().nonnegative().optional(),
46669
46670
  list: Te(Ev).min(1),
46670
46671
  city: re({
46671
- id: z(),
46672
+ id: L(),
46672
46673
  name: G(),
46673
46674
  coord: pc,
46674
46675
  country: G().optional(),
46675
- population: z().optional(),
46676
- timezone: z().optional(),
46677
- sunrise: z().optional(),
46678
- sunset: z().optional()
46676
+ population: L().optional(),
46677
+ timezone: L().optional(),
46678
+ sunrise: L().optional(),
46679
+ sunset: L().optional()
46679
46680
  }).optional()
46680
46681
  }), wr = "weather_api_cache";
46681
46682
  class Rv {
@@ -48586,7 +48587,7 @@ const Ov = {
48586
48587
  backoffMultiplier: 2
48587
48588
  }
48588
48589
  };
48589
- function Lv() {
48590
+ function zv() {
48590
48591
  const s = {};
48591
48592
  if (typeof process < "u" && process.env?.WEATHER_API_KEY && (s.weather = { ...s.weather, apiKey: process.env.WEATHER_API_KEY }), typeof process < "u" && process.env?.STEAM_API_KEY && (s.gaming = {
48592
48593
  ...s.gaming,
@@ -48601,7 +48602,7 @@ function Lv() {
48601
48602
  return s;
48602
48603
  }
48603
48604
  function j0(s = {}) {
48604
- const e = Lv();
48605
+ const e = zv();
48605
48606
  return Kn(Ov, Kn(e, s));
48606
48607
  }
48607
48608
  function Kn(s, e) {
@@ -48612,7 +48613,7 @@ function Kn(s, e) {
48612
48613
  }
48613
48614
  return t;
48614
48615
  }
48615
- const zv = [
48616
+ const Lv = [
48616
48617
  0,
48617
48618
  300,
48618
48619
  900,
@@ -48633,9 +48634,9 @@ const zv = [
48633
48634
  265e3,
48634
48635
  305e3,
48635
48636
  355e3
48636
- ], Lt = {
48637
+ ], zt = {
48637
48638
  xp: {
48638
- level_thresholds: zv,
48639
+ level_thresholds: Lv,
48639
48640
  xp_per_second: 1,
48640
48641
  xp_per_track_completion: 50,
48641
48642
  activity_bonuses: {
@@ -48674,24 +48675,24 @@ const zv = [
48674
48675
  function K0(s) {
48675
48676
  return s ? {
48676
48677
  xp: {
48677
- ...Lt.xp,
48678
+ ...zt.xp,
48678
48679
  ...s.xp,
48679
48680
  activity_bonuses: {
48680
- ...Lt.xp.activity_bonuses,
48681
+ ...zt.xp.activity_bonuses,
48681
48682
  ...s.xp?.activity_bonuses
48682
48683
  },
48683
48684
  // Merge rhythmXP using its dedicated helper
48684
48685
  rhythmXP: Pn(s.xp?.rhythmXP)
48685
48686
  },
48686
48687
  statIncrease: {
48687
- ...Lt.statIncrease,
48688
+ ...zt.statIncrease,
48688
48689
  ...s.statIncrease
48689
48690
  },
48690
48691
  levelUp: {
48691
- ...Lt.levelUp,
48692
+ ...zt.levelUp,
48692
48693
  ...s.levelUp
48693
48694
  }
48694
- } : Lt;
48695
+ } : zt;
48695
48696
  }
48696
48697
  const Jt = [
48697
48698
  // ========================================================================
@@ -49832,7 +49833,7 @@ const Jt = [
49832
49833
  source: "custom",
49833
49834
  tags: ["magic", "weapon", "cold", "frost", "template"]
49834
49835
  }
49835
- ], L = {
49836
+ ], z = {
49836
49837
  // ========================================================================
49837
49838
  // WEAPON_ENCHANTMENTS
49838
49839
  // ========================================================================
@@ -50915,38 +50916,38 @@ const Jt = [
50915
50916
  */
50916
50917
  ALL_ENCHANTMENTS: {}
50917
50918
  };
50918
- L.ALL_ENCHANTMENTS.plusOne = L.WEAPON_ENCHANTMENTS.plusOne;
50919
- L.ALL_ENCHANTMENTS.plusTwo = L.WEAPON_ENCHANTMENTS.plusTwo;
50920
- L.ALL_ENCHANTMENTS.plusThree = L.WEAPON_ENCHANTMENTS.plusThree;
50921
- L.ALL_ENCHANTMENTS.flaming = L.WEAPON_ENCHANTMENTS.flaming;
50922
- L.ALL_ENCHANTMENTS.frost = L.WEAPON_ENCHANTMENTS.frost;
50923
- L.ALL_ENCHANTMENTS.shocking = L.WEAPON_ENCHANTMENTS.shocking;
50924
- L.ALL_ENCHANTMENTS.thundering = L.WEAPON_ENCHANTMENTS.thundering;
50925
- L.ALL_ENCHANTMENTS.acidic = L.WEAPON_ENCHANTMENTS.acidic;
50926
- L.ALL_ENCHANTMENTS.poison = L.WEAPON_ENCHANTMENTS.poison;
50927
- L.ALL_ENCHANTMENTS.holy = L.WEAPON_ENCHANTMENTS.holy;
50928
- L.ALL_ENCHANTMENTS.vampiric = L.WEAPON_ENCHANTMENTS.vampiric;
50929
- L.ALL_ENCHANTMENTS.vorpalEdge = L.WEAPON_ENCHANTMENTS.vorpalEdge;
50930
- L.ALL_ENCHANTMENTS.keenEdge = L.WEAPON_ENCHANTMENTS.keenEdge;
50931
- L.ALL_ENCHANTMENTS.mighty = L.WEAPON_ENCHANTMENTS.mighty;
50932
- L.ALL_ENCHANTMENTS.returning = L.WEAPON_ENCHANTMENTS.returning;
50933
- L.ALL_ENCHANTMENTS.lifestealing = L.WEAPON_ENCHANTMENTS.lifestealing;
50934
- L.ALL_ENCHANTMENTS.plusOneArmor = L.ARMOR_ENCHANTMENTS.plusOne;
50935
- L.ALL_ENCHANTMENTS.plusTwoArmor = L.ARMOR_ENCHANTMENTS.plusTwo;
50936
- L.ALL_ENCHANTMENTS.fire = L.RESISTANCE_ENCHANTMENTS.fire;
50937
- L.ALL_ENCHANTMENTS.cold = L.RESISTANCE_ENCHANTMENTS.cold;
50938
- L.ALL_ENCHANTMENTS.lightning = L.RESISTANCE_ENCHANTMENTS.lightning;
50939
- L.ALL_ENCHANTMENTS.acid = L.RESISTANCE_ENCHANTMENTS.acid;
50940
- L.ALL_ENCHANTMENTS.poisonResistance = L.RESISTANCE_ENCHANTMENTS.poison;
50941
- L.ALL_ENCHANTMENTS.necrotic = L.RESISTANCE_ENCHANTMENTS.necrotic;
50942
- L.ALL_ENCHANTMENTS.radiant = L.RESISTANCE_ENCHANTMENTS.radiant;
50943
- L.ALL_ENCHANTMENTS.thunder = L.RESISTANCE_ENCHANTMENTS.thunder;
50944
- L.ALL_ENCHANTMENTS.allResistance = L.RESISTANCE_ENCHANTMENTS.all;
50945
- L.ALL_ENCHANTMENTS.holyAvenger = L.COMBO_ENCHANTMENTS.holyAvenger;
50946
- L.ALL_ENCHANTMENTS.dragonSlayer = L.COMBO_ENCHANTMENTS.dragonSlayer;
50947
- L.ALL_ENCHANTMENTS.demonHunter = L.COMBO_ENCHANTMENTS.demonHunter;
50948
- L.ALL_ENCHANTMENTS.undeadBane = L.COMBO_ENCHANTMENTS.undeadBane;
50949
- class ze {
50919
+ z.ALL_ENCHANTMENTS.plusOne = z.WEAPON_ENCHANTMENTS.plusOne;
50920
+ z.ALL_ENCHANTMENTS.plusTwo = z.WEAPON_ENCHANTMENTS.plusTwo;
50921
+ z.ALL_ENCHANTMENTS.plusThree = z.WEAPON_ENCHANTMENTS.plusThree;
50922
+ z.ALL_ENCHANTMENTS.flaming = z.WEAPON_ENCHANTMENTS.flaming;
50923
+ z.ALL_ENCHANTMENTS.frost = z.WEAPON_ENCHANTMENTS.frost;
50924
+ z.ALL_ENCHANTMENTS.shocking = z.WEAPON_ENCHANTMENTS.shocking;
50925
+ z.ALL_ENCHANTMENTS.thundering = z.WEAPON_ENCHANTMENTS.thundering;
50926
+ z.ALL_ENCHANTMENTS.acidic = z.WEAPON_ENCHANTMENTS.acidic;
50927
+ z.ALL_ENCHANTMENTS.poison = z.WEAPON_ENCHANTMENTS.poison;
50928
+ z.ALL_ENCHANTMENTS.holy = z.WEAPON_ENCHANTMENTS.holy;
50929
+ z.ALL_ENCHANTMENTS.vampiric = z.WEAPON_ENCHANTMENTS.vampiric;
50930
+ z.ALL_ENCHANTMENTS.vorpalEdge = z.WEAPON_ENCHANTMENTS.vorpalEdge;
50931
+ z.ALL_ENCHANTMENTS.keenEdge = z.WEAPON_ENCHANTMENTS.keenEdge;
50932
+ z.ALL_ENCHANTMENTS.mighty = z.WEAPON_ENCHANTMENTS.mighty;
50933
+ z.ALL_ENCHANTMENTS.returning = z.WEAPON_ENCHANTMENTS.returning;
50934
+ z.ALL_ENCHANTMENTS.lifestealing = z.WEAPON_ENCHANTMENTS.lifestealing;
50935
+ z.ALL_ENCHANTMENTS.plusOneArmor = z.ARMOR_ENCHANTMENTS.plusOne;
50936
+ z.ALL_ENCHANTMENTS.plusTwoArmor = z.ARMOR_ENCHANTMENTS.plusTwo;
50937
+ z.ALL_ENCHANTMENTS.fire = z.RESISTANCE_ENCHANTMENTS.fire;
50938
+ z.ALL_ENCHANTMENTS.cold = z.RESISTANCE_ENCHANTMENTS.cold;
50939
+ z.ALL_ENCHANTMENTS.lightning = z.RESISTANCE_ENCHANTMENTS.lightning;
50940
+ z.ALL_ENCHANTMENTS.acid = z.RESISTANCE_ENCHANTMENTS.acid;
50941
+ z.ALL_ENCHANTMENTS.poisonResistance = z.RESISTANCE_ENCHANTMENTS.poison;
50942
+ z.ALL_ENCHANTMENTS.necrotic = z.RESISTANCE_ENCHANTMENTS.necrotic;
50943
+ z.ALL_ENCHANTMENTS.radiant = z.RESISTANCE_ENCHANTMENTS.radiant;
50944
+ z.ALL_ENCHANTMENTS.thunder = z.RESISTANCE_ENCHANTMENTS.thunder;
50945
+ z.ALL_ENCHANTMENTS.allResistance = z.RESISTANCE_ENCHANTMENTS.all;
50946
+ z.ALL_ENCHANTMENTS.holyAvenger = z.COMBO_ENCHANTMENTS.holyAvenger;
50947
+ z.ALL_ENCHANTMENTS.dragonSlayer = z.COMBO_ENCHANTMENTS.dragonSlayer;
50948
+ z.ALL_ENCHANTMENTS.demonHunter = z.COMBO_ENCHANTMENTS.demonHunter;
50949
+ z.ALL_ENCHANTMENTS.undeadBane = z.COMBO_ENCHANTMENTS.undeadBane;
50950
+ class Le {
50950
50951
  // ========================================================================
50951
50952
  // PRIVATE CONSTRUCTOR - Utility class with only static methods
50952
50953
  // ========================================================================
@@ -50979,7 +50980,7 @@ class ze {
50979
50980
  * ```
50980
50981
  */
50981
50982
  static getEnchantment(e) {
50982
- return Object.values(L.ALL_ENCHANTMENTS).find((t) => t.id === e);
50983
+ return Object.values(z.ALL_ENCHANTMENTS).find((t) => t.id === e);
50983
50984
  }
50984
50985
  /**
50985
50986
  * Get curse by ID
@@ -50996,7 +50997,7 @@ class ze {
50996
50997
  * ```
50997
50998
  */
50998
50999
  static getCurse(e) {
50999
- return Object.values(L.CURSES).find((t) => t.id === e);
51000
+ return Object.values(z.CURSES).find((t) => t.id === e);
51000
51001
  }
51001
51002
  // ========================================================================
51002
51003
  // COLLECTION METHODS
@@ -51016,7 +51017,7 @@ class ze {
51016
51017
  * ```
51017
51018
  */
51018
51019
  static getAllEnchantments() {
51019
- return Object.values(L.ALL_ENCHANTMENTS);
51020
+ return Object.values(z.ALL_ENCHANTMENTS);
51020
51021
  }
51021
51022
  /**
51022
51023
  * Get all curses
@@ -51032,7 +51033,7 @@ class ze {
51032
51033
  * ```
51033
51034
  */
51034
51035
  static getAllCurses() {
51035
- return Object.values(L.CURSES);
51036
+ return Object.values(z.CURSES);
51036
51037
  }
51037
51038
  /**
51038
51039
  * Get enchantments by type
@@ -51053,13 +51054,13 @@ class ze {
51053
51054
  static getEnchantmentsByType(e) {
51054
51055
  switch (e) {
51055
51056
  case "weapon":
51056
- return Object.values(L.WEAPON_ENCHANTMENTS);
51057
+ return Object.values(z.WEAPON_ENCHANTMENTS);
51057
51058
  case "armor":
51058
- return Object.values(L.ARMOR_ENCHANTMENTS);
51059
+ return Object.values(z.ARMOR_ENCHANTMENTS);
51059
51060
  case "resistance":
51060
- return Object.values(L.RESISTANCE_ENCHANTMENTS);
51061
+ return Object.values(z.RESISTANCE_ENCHANTMENTS);
51061
51062
  case "combo":
51062
- return Object.values(L.COMBO_ENCHANTMENTS);
51063
+ return Object.values(z.COMBO_ENCHANTMENTS);
51063
51064
  default:
51064
51065
  return [];
51065
51066
  }
@@ -51254,7 +51255,7 @@ class ze {
51254
51255
  };
51255
51256
  }
51256
51257
  }
51257
- const Y0 = L.WEAPON_ENCHANTMENTS, Z0 = L.ARMOR_ENCHANTMENTS, X0 = L.RESISTANCE_ENCHANTMENTS, J0 = L.CURSES, Q0 = L.ALL_ENCHANTMENTS, ew = (s) => ze.getEnchantment(s), tw = (s) => ze.getCurse(s), iw = () => ze.getAllEnchantments(), nw = () => ze.getAllCurses(), aw = (s) => ze.getEnchantmentsByType(s), sw = (s) => ze.createStrengthEnchantment(s), rw = (s) => ze.createDexterityEnchantment(s), ow = (s) => ze.createConstitutionEnchantment(s), cw = (s) => ze.createIntelligenceEnchantment(s), lw = (s) => ze.createWisdomEnchantment(s), uw = (s) => ze.createCharismaEnchantment(s);
51258
+ const Y0 = z.WEAPON_ENCHANTMENTS, Z0 = z.ARMOR_ENCHANTMENTS, X0 = z.RESISTANCE_ENCHANTMENTS, J0 = z.CURSES, Q0 = z.ALL_ENCHANTMENTS, ew = (s) => Le.getEnchantment(s), tw = (s) => Le.getCurse(s), iw = () => Le.getAllEnchantments(), nw = () => Le.getAllCurses(), aw = (s) => Le.getEnchantmentsByType(s), sw = (s) => Le.createStrengthEnchantment(s), rw = (s) => Le.createDexterityEnchantment(s), ow = (s) => Le.createConstitutionEnchantment(s), cw = (s) => Le.createIntelligenceEnchantment(s), lw = (s) => Le.createWisdomEnchantment(s), uw = (s) => Le.createCharismaEnchantment(s);
51258
51259
  function dw(s) {
51259
51260
  return Jt.find((e) => e.name === s);
51260
51261
  }
@@ -51304,7 +51305,7 @@ export {
51304
51305
  Re as AttackResolver,
51305
51306
  hr as AudioAnalyzer,
51306
51307
  Bb as AudioProfileSchema,
51307
- zl as BASE_PLAYS_THRESHOLD,
51308
+ Ll as BASE_PLAYS_THRESHOLD,
51308
51309
  Wl as BASE_XP_THRESHOLD,
51309
51310
  qv as BEAT_ACCURACY_THRESHOLDS,
51310
51311
  Ml as BEAT_DETECTION_ALGORITHM,
@@ -51329,7 +51330,7 @@ export {
51329
51330
  ua as CharacterGenerator,
51330
51331
  Nb as CharacterSheetSchema,
51331
51332
  W0 as CharacterUpdater,
51332
- zn as ClassSuggester,
51333
+ Ln as ClassSuggester,
51333
51334
  D0 as ColorExtractor,
51334
51335
  Gl as CombatAI,
51335
51336
  Jl as CombatEngine,
@@ -51353,7 +51354,7 @@ export {
51353
51354
  ko as DEFAULT_GATEWAYS,
51354
51355
  Il as DEFAULT_GROOVE_OPTIONS,
51355
51356
  xg as DEFAULT_IPFS_GATEWAY,
51356
- Lt as DEFAULT_PROGRESSION_CONFIG,
51357
+ zt as DEFAULT_PROGRESSION_CONFIG,
51357
51358
  Tu as DEFAULT_RACE_DATA_ARRAY,
51358
51359
  Qs as DEFAULT_RACIAL_TRAITS,
51359
51360
  da as DEFAULT_RHYTHMIC_BALANCE_CONFIG,
@@ -51375,10 +51376,10 @@ export {
51375
51376
  yl as EASY_ACCURACY_THRESHOLDS,
51376
51377
  Dl as EASY_GROOVE_PENALTIES,
51377
51378
  Qp as EASY_QUARTER_NOTE_BPM,
51378
- L as ENCHANTMENT_LIBRARY,
51379
+ z as ENCHANTMENT_LIBRARY,
51379
51380
  Za as ENEMY_COUNT_MULTIPLIER,
51380
51381
  jr as EXPECTED_WIN_RATES,
51381
- ze as EnchantmentLibrary,
51382
+ Le as EnchantmentLibrary,
51382
51383
  Yt as EnemyGenerator,
51383
51384
  U0 as EnvironmentalSensors,
51384
51385
  xe as EquipmentEffectApplier,
@@ -51426,12 +51427,12 @@ export {
51426
51427
  oc as MOOD_PRESETS,
51427
51428
  Tv as ManualStrategy,
51428
51429
  ee as MetadataExtractor,
51429
- zg as ModelCache,
51430
+ Lg as ModelCache,
51430
51431
  Ip as MultiBandAnalyzer,
51431
51432
  I0 as MusicClassifier,
51432
51433
  Jg as NamingEngine,
51433
51434
  Yy as OnsetStrengthEnvelope,
51434
- Ll as PRESTIGE_ROMAN_NUMERALS,
51435
+ zl as PRESTIGE_ROMAN_NUMERALS,
51435
51436
  ja as PRESTIGE_SCALING_FACTOR,
51436
51437
  Wr as PROFICIENCY_BONUS,
51437
51438
  Eb as ParameterSweep,
@@ -51455,14 +51456,14 @@ export {
51455
51456
  H0 as RhythmXPCalculator,
51456
51457
  Zp as RhythmicBalancer,
51457
51458
  Tb as SKILL_ABILITY_MAP,
51458
- Lr as SPELL_DATABASE,
51459
+ zr as SPELL_DATABASE,
51459
51460
  ms as SPELL_SLOTS_BY_CLASS,
51460
51461
  Ge as SUBDIVISION_LIMITS,
51461
51462
  iu as SeededDiceRoller,
51462
51463
  Ve as SeededRNG,
51463
51464
  bc as SensorDashboard,
51464
51465
  Pb as ServerlessPlaylistSchema,
51465
- z0 as SessionTracker,
51466
+ L0 as SessionTracker,
51466
51467
  Fu as SimulationAggregator,
51467
51468
  fp as SkillAssigner,
51468
51469
  Ne as SkillQuery,
@@ -51473,15 +51474,15 @@ export {
51473
51474
  it as SpellQuery,
51474
51475
  rt as SpellValidator,
51475
51476
  Av as StatManager,
51476
- Lp as StreamScorer,
51477
- L0 as SubdivisionPlaybackController,
51477
+ zp as StreamScorer,
51478
+ z0 as SubdivisionPlaybackController,
51478
51479
  Qv as TUNING_FACTORS,
51479
51480
  Rp as TempoAwareQuantizer,
51480
51481
  Xy as TempoDetector,
51481
51482
  Ep as TransientDetector,
51482
51483
  Mn as VALID_SUBDIVISION_TYPES,
51483
51484
  Y0 as WEAPON_ENCHANTMENTS,
51484
- Le as WeightedSelector,
51485
+ ze as WeightedSelector,
51485
51486
  lc as XPCalculator,
51486
51487
  Yl as XP_BUDGET_PER_LEVEL,
51487
51488
  Ii as XP_THRESHOLDS,
@@ -51527,13 +51528,13 @@ export {
51527
51528
  Fv as displaySystemDashboard,
51528
51529
  i0 as ensureAllDefaultsInitialized,
51529
51530
  xo as ensureAppearanceDefaultsInitialized,
51530
- Lo as ensureClassDefaultsInitialized,
51531
+ zo as ensureClassDefaultsInitialized,
51531
51532
  Bo as ensureEquipmentDefaultsInitialized,
51532
51533
  Wo as ensureFeatureDefaultsInitialized,
51533
51534
  cp as ensureRaceDataDefaultsInitialized,
51534
51535
  Fo as ensureRaceDefaultsInitialized,
51535
51536
  hp as ensureSkillDefaultsInitialized,
51536
- Ln as ensureSpellDefaultsInitialized,
51537
+ zn as ensureSpellDefaultsInitialized,
51537
51538
  Qb as evaluateMixConditions,
51538
51539
  Rg as extractIPFSPath,
51539
51540
  B0 as extractKeyMap,
@@ -51547,11 +51548,11 @@ export {
51547
51548
  Yb as getAllGatewayUrls,
51548
51549
  uu as getAllRarities,
51549
51550
  o0 as getAllowedGridTypes,
51550
- zb as getArtists,
51551
+ Lb as getArtists,
51551
51552
  $b as getAudioUrls,
51552
51553
  Xl as getAveragePartyLevel,
51553
51554
  Br as getCRFromXP,
51554
- zr as getClassData,
51555
+ Lr as getClassData,
51555
51556
  fs as getClassSpellList,
51556
51557
  yp as getClassStartingEquipment,
51557
51558
  Pl as getConsecutiveKeyLimit,
@@ -51608,7 +51609,7 @@ export {
51608
51609
  Gb as getTrackCount,
51609
51610
  Wg as getTrackExtras,
51610
51611
  Jb as getTrackMetadata,
51611
- Lb as getTrackTitles,
51612
+ zb as getTrackTitles,
51612
51613
  Ub as getTracks,
51613
51614
  O0 as getUsedKeys,
51614
51615
  Kb as getVRMTracks,
@@ -51625,7 +51626,7 @@ export {
51625
51626
  Eo as initializeAppearanceDefaults,
51626
51627
  Oo as initializeClassDefaults,
51627
51628
  Po as initializeEquipmentDefaults,
51628
- zo as initializeFeatureDefaults,
51629
+ Lo as initializeFeatureDefaults,
51629
51630
  $o as initializeRaceDataDefaults,
51630
51631
  No as initializeRaceDefaults,
51631
51632
  Ho as initializeSkillDefaults,
@@ -51649,7 +51650,7 @@ export {
51649
51650
  S0 as isValidEnemyCategory,
51650
51651
  _0 as isValidEnemyRarity,
51651
51652
  kn as isValidSubdivisionType,
51652
- Lv as loadConfigFromEnv,
51653
+ zv as loadConfigFromEnv,
51653
51654
  Nl as mapGridToSubdivision,
51654
51655
  vp as melToHz,
51655
51656
  xr as mergeButtonMappingConfig,