var e = (e, t) => (e & t) !== 0,
t = 0,
n = 1,
r = ``,
i = `[]`,
a = (e) =>
e.includes(`"`) ||
e.includes(`
`)
? JSON.stringify(e)
: `"${e}"`,
o = (e) => `[${e}]`,
s = (e) => (e === `` ? [] : JSON.parse(e.split(`"]["`).join(`","`))),
c = (e, t) => e + t,
l = `string`,
u = `number`,
d = `bigint`,
f = `boolean`,
ee = `symbol`,
p = `null`,
m = `undefined`,
h = `nan`,
g = `function`,
_ = `instance`,
v = `array`,
y = `object`,
b = `anyOf`,
x = `never`,
S = `unknown`,
te = `ref`,
C = 1,
w = 2,
ne = 4,
re = 8,
T = 16,
ie = 32,
E = 64,
D = 128,
O = 256,
k = 512,
ae = 1024,
A = 2048,
oe = 4096,
j = 8192,
se = 16384,
ce = 32768,
M = {
[S]: 1,
[l]: 2,
[u]: 4,
[f]: 8,
[m]: 16,
[p]: 32,
[y]: 64,
[v]: 128,
[b]: 256,
[te]: 512,
[d]: 1024,
[h]: 2048,
[g]: 4096,
[_]: 8192,
[x]: 32768,
[ee]: 16384,
},
le = `sury`,
ue = Symbol(le);
le + ``;
var N = void 0,
de = [],
fe = Object.create(null),
pe = (e) => typeof e === y && e !== null && `~standard` in e,
me = `const`,
P = (e) => me in e,
he = (e) => e.type === m || (e.type === b && m in e.has),
ge = (t) => {
let n = M[typeof t];
if (e(n, T)) return m;
if (e(n, E)) {
if (t === null) return p;
if (Array.isArray(t)) return `[${t.map(ge).join(`, `)}]`;
if (t.constructor === Object) {
let e = t;
return `{ ${Object.keys(e)
.map((t) => `${t}: ${ge(e[t])}; `)
.join(``)}}`;
}
return Object.prototype.toString.call(t);
}
return e(n, w) ? `"${t}"` : e(n, ae) ? `${t}n` : e(n, oe) ? `Function` : t.toString();
},
F = (e) => {
if (e.name !== N) return e.name;
if (e.const !== N) return ge(e.const);
if (e.anyOf !== N) return [...new Set(e.anyOf)].map(F).join(` | `);
if (e.format === `compactColumns`) {
let t = e.to;
if (t !== N) {
let e = t.properties;
return e === N
? `unknown[][]`
: `[${Object.keys(e)
.map((t) => {
let n = e[t];
return `${F(n)}[]`;
})
.join(`, `)}]`;
}
{
let t = e.additionalItems;
return t !== N && typeof t == `object` ? `${F(t)}[]` : `unknown[][]`;
}
}
if (e.format !== N) return e.format;
if (e.type === y) {
let t = e.properties,
n = Object.keys(t);
if (n.length === 0) {
if (typeof e.additionalItems === y) {
let t = e.additionalItems;
return `{ [key: string]: ${F(t)}; }`;
}
return `{}`;
}
return `{ ${n.map((e) => `${e}: ${F(t[e])};`).join(` `)} }`;
}
if (e.type === h) return `NaN`;
if (e.type === v) {
let t = e.items;
if (typeof e.additionalItems === y) {
let t = e.additionalItems,
n = F(t);
return (t.type === b ? `(${n})` : n) + `[]`;
}
return `[${t.map((e) => F(e)).join(`, `)}]`;
}
return e.type === _ ? e.class.name : e.type;
};
function _e() {}
var ve = Object.create(null);
(Object.defineProperty(ve, "with", {
value(e, ...t) {
return e(this, ...t);
},
}),
(_e.prototype = ve));
var ye = 1,
be = {},
xe = class extends Error {
constructor(e) {
(super(), Object.assign(this, e));
}
get message() {
return we(this);
}
get _1() {
return this;
}
get RE_EXN_ID() {
return be;
}
};
(Object.defineProperty(xe.prototype, "name", { value: `SuryError` }),
Object.defineProperty(xe.prototype, "s", { value: ue }));
var Se = (e) => {
if (e && e.s === ue) return e;
throw e;
},
Ce = (e) => {
throw Error(`[Sury] ${e}`);
},
we = (e) => `${e.path === `` ? `` : `Failed at ${e.path}: `}${e.reason}`,
Te = { m: we, d: N, a: `strip`, f: t },
Ee = {},
De = `value`,
Oe = `r`,
ke = _e,
I = (e, t) => {
let n = new ke();
return ((n.type = e), (n.seq = ye++), t && ((Ee[De] = n), Object.defineProperty(n, Oe, Ee)), n);
},
Ae = (e) => e,
je = {},
Me = (e, t, n) => {
let r = je[e];
if (r !== N) return r;
{
let r = I(t, !0);
return (n(r), (je[e] = r), r);
}
},
L = I(S, !0);
L.decoder = Ae;
var Ne = (e) => {
let t = Object.assign(new ke(), e);
return ((t.seq = ye++), t);
},
Pe = (e, t) => {
let n = Ne(e),
r = n;
for (; r.to !== N;) {
let e = Ne(r.to);
((r.to = e), (r = e));
}
return (t(r), n);
},
Fe = (t, n) => {
t[e(M[n], O | k) ? S : n] = !0;
},
Ie = `JSON`;
function R() {
return this.i;
}
function Le() {
return this.b.v();
}
function Re() {
return this.prev.v();
}
function ze() {
let e = this,
t = V(e.g);
return ((e.cp = `let ${t}=${e.i};`), (e.i = t), (e.v = R), t);
}
function Be() {
let e = this,
t = e.p;
if (t.fz) return ((e.v = R), e.i);
{
let n = V(e.g);
return (We(t, `${n}=${e.i}`), (e.v = R), (e.i = n), n);
}
}
function Ve() {
let e = this;
if (e.fz) return ((e.v = R), (e.i = `(${e.i})`), e.i);
{
let t = V(e.g);
return (
e.prev === N
? e.i === ``
? We(e, t)
: We(e, `${t}=${e.i}`)
: e.i === ``
? (e.cp = `let ${t};` + e.cp)
: (e.cp += `let ${t}=${e.i};`),
(e.v = R),
(e.i = t),
t
);
}
}
var He = `i`,
z = (e) => {
let t = e.e.errorMessage;
return Qe(N, N, t === N ? N : t.type === N ? t._ : t.type)(e);
},
B = (e, t) => {
let n = e.g.e,
r = n.length;
return ((n[r] = t), e.g.t++, `e[${r}]`);
},
Ue = (t, n) => {
let r = M[n.type],
i = n.const;
return e(r, T)
? `void 0`
: e(r, w)
? a(i)
: e(r, ae)
? i + `n`
: e(r, se | oe | j)
? B(t, n.const)
: i;
},
V = (e) => {
let t = e.v + 1;
return ((e.v = t), `v${t}`);
},
We = (e, t) => {
e.hd = e.hd === `` ? t : e.hd + `,` + t;
},
Ge = (e, n, i, a) => ({
b: N,
p: N,
v: R,
i: He,
s: e,
io: N,
e: n,
prev: N,
f: t,
d: N,
fv: N,
cp: ``,
hd: ``,
fz: N,
vc: N,
u: N,
t: N,
path: r,
g: { d: a, o: i, e: [], v: -1, t: 0 },
o: N,
}),
Ke = (e) => {
throw new xe(e);
},
qe = (e, t, n) =>
Ke({
code: `unsupported_decode`,
from: t,
to: n,
reason: `Can't decode ${F(t)} to ${F(n)}. Use S.to to define a custom decoder`,
path: e.path,
}),
Je = (e, t, n) =>
`${B(e, (e) => {
Ke(t(e));
})}(${n})`,
Ye = (e) => {
e.g.t++;
},
Xe = (e) => (e.prev === N ? e.s : e.prev.s),
Ze = (e, t, n, r, i, a, o) => {
let s = o === N ? `Expected ${F(e)}, received ${i ? ge(r) : F(t)}` : o;
if (a !== N) {
let e = a,
t = new Set();
for (let n = 0; n < e.length; n++) {
let r = e[n],
i = r.reason.split(`
`).join(`
`),
a = `
- ${r.path === `` ? `` : `At ${r.path}: `}${i}`;
t.has(a) || (t.add(a), (s += a));
}
}
let c = { code: `invalid_input`, expected: e, received: t, path: n, reason: s, unionErrors: a };
return (i && (c.input = r), c);
},
Qe =
(e, t = r, n, i = !0) =>
(a) => {
let o = e === N ? a.e : e,
s = Xe(a),
l = t === r ? a.path : c(a.path, t);
return (e) => Ze(o, s, l, e, i, N, n);
},
H = (e, t) => (n) => {
let r = n.e.errorMessage,
i = r === N ? N : r[e] === N ? r._ : r[e],
a = i === N ? t : i;
return a === N ? z(n) : Qe(N, N, a)(n);
},
$e = (e, t = e.e) => Je(e, Qe(t)(e), e.v()),
et = (e, t) => {
let n = e.vc,
r = n.length;
if (r === 1) {
let r = n[0];
return `${r.c(t)}||${Je(e, r.f(e), t)};`;
}
{
let i = ``,
a = 0;
for (; a < r;) {
let o = n[a],
s = o.f,
c = o.c(t);
for (a += 1; a < r && n[a].f === s;) ((c = c + `&&` + n[a].c(t)), (a += 1));
i += `${c}||${Je(e, s(e), t)};`;
}
return i;
}
},
tt = (e) => e.t !== !0 || (e.prev.t !== !0 && e.cp === ``),
U = (e, t) => {
let n = e,
r = ``;
for (; n !== N;) {
let e = n;
n = e.prev;
let i = ``;
if (e.vc) {
if (t !== N && tt(e)) {
let r = n.v(),
a = e.vc,
o = ``;
for (let t = 0; t < a.length; t++) {
let n = a[t],
s = n.c(r);
n.f === z
? (o = o ? `${o}&&${s}` : s)
: e.e.noValidation !== !0 && (i += `${s}||${Je(e, n.f(e), r)};`);
}
o && ((t.c = t.c ? `${o}&&${t.c}` : o), t.h.unshift({ v: e, i: r, c: o }));
} else e.e.noValidation !== !0 && (i = et(e, n.v()));
}
(e.hd !== `` && (i += `let ${e.hd};`), (e.fz = !0), (i = e.cp + i), (r = i + r));
}
return r;
},
nt = (e, t) => {
let n = e.v.bind(e);
e.v = () => {
let e = n();
return ((t.i = e), (t.v = R), e);
};
},
W = (e, n, r, i = e.e) => ({
b: N,
p: N,
v: Ve,
i: n,
s: r,
io: N,
e: i,
prev: e,
f: t,
d: e.d,
fv: N,
cp: ``,
hd: ``,
fz: N,
vc: N,
u: N,
t: !0,
path: e.path,
g: e.g,
o: N,
}),
G = (e, t = e.s, n, r = e.e) => {
let i = e.v !== R,
a = {
b: N,
p: N,
v: i ? Re : R,
i: e.i,
s: t,
io: N,
e: r,
prev: e,
f: e.f,
d: e.d,
fv: N,
cp: ``,
hd: ``,
fz: N,
vc: n,
u: N,
t: e.t,
path: e.path,
g: e.g,
o: N,
};
return (i && nt(e, a), a);
},
rt = (e, t) => {
e.vc === N ? (e.vc = [t]) : e.vc.push(t);
},
it = (e, t) => {
let n,
r = t.e.inputRefiner;
if (r !== N) {
let e = r(t);
if (e.length > 0) {
if (t.prev !== N) {
for (let n = 0; n < e.length; n++) rt(t, e[n]);
n = N;
} else n = e;
} else n = N;
} else n = N;
let i,
a = e.e.refiner;
if (a !== N) {
let t = a(e);
i = t.length > 0 ? t : N;
} else i = N;
let o;
return (
(o =
n !== N && i !== N
? G(e, N, n.concat(i))
: n === N
? i === N
? e
: G(e, N, i)
: G(e, N, n)),
(o.io = !0),
o
);
},
at = (e, t, n) => {
if (t.vc) {
let r = o(a(n));
(t.vc.forEach((t) => {
rt(e, { c: (e) => t.c(e + r), f: t.f });
}),
(t.vc = N));
}
},
ot = (e, t) => {
let n = e.s.additionalItems,
i = e.e.additionalItems;
return {
b: N,
p: e,
v: ze,
i: `${e.v()}[${t}]`,
s: n !== N && typeof n != `string` ? n : L,
io: N,
e: i !== N && typeof i != `string` ? i : L,
prev: N,
f: e.f,
d: N,
fv: N,
cp: ``,
hd: ``,
fz: N,
vc: N,
u: N,
t: N,
path: r,
g: e.g,
o: N,
};
},
st = (e, t, n) => W(e, Ue(e, t), t, n),
ct = (e, t) => {
let r = W(e, t, e.s);
return ((r.f = n), r);
},
lt = (t, r, i) => {
(t.s.type === v
? t.s.items.push(i.s)
: (i.o || t.s.required.push(r), (t.s.properties[r] = i.s)),
e(i.f, n) && i.v(),
(t.cp += U(i)),
(t.d[r] = i));
},
ut = (e, t, n) => `${e.v()}[${t}]=${n.i}`,
dt = (e) => {
let t = e.v !== R,
n = {
b: e,
p: N,
v: t ? Le : R,
i: e.i,
s: e.s,
io: e.io,
e: e.e,
prev: N,
f: 0,
d: e.d,
fv: N,
cp: ``,
hd: ``,
fz: N,
vc: N,
u: !1,
t: !1,
path: e.path,
g: e.g,
o: N,
};
return (t && nt(e, n), n);
},
ft = (e, t) => Ke({ code: `invalid_operation`, reason: t, path: e.path }),
pt = (t, r, i) => {
let a = U(t);
if (a === `` && !e(t.f, n)) return a + (i === N ? `` : i());
{
let o = V(t.g);
Ye(t);
let s = `${r(o)};throw ${o}`;
return (
e(t.f, n) && (t.i = `${t.i}.catch(${o}=>{${s}})`),
`try{${a}${i === N ? `` : i()}}catch(${o}){${s}}`
);
}
},
mt = (e, t, n, i) =>
e.path === r && n === N
? U(e)
: pt(
e,
(e) =>
`${e}.path=${t.path === `` ? `` : `${a(t.path)}+`}${n === N ? `` : `'["'+${n}+'"]'+`}${e}.path`,
i,
);
function ht(e) {
return e;
}
ht.embedded = de;
var gt = (e) => `${e}<=2147483647&&${e}>=-2147483648&&${e}%1===0`,
_t = {},
vt = (e) => _t[e] || (_t[e] = (t) => `typeof ${t}==="${e}"`),
yt = (e) => `Number.isNaN(${e})`,
bt = (e) => `Array.isArray(${e})`,
xt = (e) => `${vt(y)(e)}&&${e}`,
St = (e, t) => (n) => `${n} instanceof ${B(e, t)}`,
Ct = {},
wt = (e) => Ct[e] || (Ct[e] = { c: vt(e), f: z }),
Tt = { c: (e) => `!${yt(e)}`, f: z },
Et = { c: gt, f: z },
Dt = { c: yt, f: z },
Ot = (e, t) => G(e, e.e, [wt(t)]),
kt = (e, t) => {
let n = W(e, V(e.g), t);
return ((n.v = R), n);
},
At = (t) => {
let n = M[t.s.type];
if (e(n, C)) {
let n = [wt(u)];
return (t.e.format === `int32` ? n.push(Et) : e(t.g.o, 2) || n.push(Tt), G(t, t.e, n));
}
if (e(n, w)) {
let e = kt(t, t.e);
return (
(e.cp = `let ${e.i}=+${t.v()};`),
(e.vc = [{ c: (n) => (t.e.format === `int32` ? gt(e.i) : `!${yt(e.i)}`), f: z }]),
e
);
}
return e(n, A) && t.e.format !== `int32` && e(t.g.o, 2)
? G(t, t.e)
: e(n, ne)
? t.s.format !== t.e.format && t.e.format === `int32`
? G(t, t.e, [Et])
: t
: qe(t, t.s, t.e);
},
jt = () =>
Me(u, u, (e) => {
e.decoder = At;
}),
Mt = (e) => W(e, `""+${e.i}`, Pt()),
Nt = (t) => {
let n = M[t.s.type];
if (e(n, C)) return Ot(t, l);
if (e(n, re | ne | ae | T | ie | A) && P(t.s)) {
let e = `` + t.s.const,
n = I(l, !1);
return ((n.const = e), W(t, `"${e}"`, n));
}
return e(n, re | ne | ae) ? Mt(t) : e(n, w) ? t : qe(t, t.s, t.e);
},
Pt = () =>
Me(l, l, (e) => {
e.decoder = Nt;
}),
Ft = (t) => {
let n = t.e;
if (n.noValidation && !t.u) return st(t, n);
if (P(t.s)) return t.s.const === n.const ? t : st(t, n);
{
let r = M[n.type];
if (e(M[t.s.type], w) && e(r, re | ne | ae | T | ie | A)) {
let e = I(l, !1);
e.const = `` + n.const;
let r = st(t, e, e);
return ((r.vc = [{ c: (t) => `${t}==="${e.const}"`, f: z }]), st(r, n, n));
}
return e(r, A) ? G(t, n, [Dt]) : G(t, n, [{ c: (e) => `${e}===${Ue(t, n)}`, f: z }]);
}
},
It = () =>
Me(m, m, (e) => {
((e.const = N), (e.decoder = Ft));
}),
Lt = () =>
Me(p, p, (e) => {
((e.const = null), (e.decoder = Ft));
}),
Rt = () =>
Me(h, h, (e) => {
((e.const = NaN), (e.decoder = Ft));
}),
zt = (e) => {
if (e === null) return Lt();
{
let t = typeof e;
if (t === m) return It();
if (t === u && Number.isNaN(e)) return Rt();
if (t === y) {
let t = I(_, !0);
return ((t.class = e.constructor), (t.const = e), (t.decoder = Ft), t);
}
{
let n = I(t, !0);
return ((n.const = e), (n.decoder = Ft), n);
}
}
},
K = (t) => {
let r = t,
i = N,
a = 0;
for (; !r.io || r.e.to;) {
let t = i;
i = N;
let o = r;
if (((a += 1), a > 50)) throw Error(`Loop count exceeded 50`);
if (
(o.e.$defs && (o.g.d ? Object.assign(o.g.d, o.e.$defs) : (o.g.d = o.e.$defs)), e(o.f, n))
) {
let e = o.v(),
t = dt(o),
i = K(t),
a = U(i);
((r =
t.i !== i.i || a !== ``
? W(o, `${e}.then(${e}=>{${a}return ${i.i}})`, i.s, i.e)
: G(o, i.s, N, i.e)),
(r.f |= n),
(r.io = !0));
} else if (o.io) {
let e = o.e.to;
r = o.e.parser === N ? G(r, N, N, e) : o.e.parser(o);
} else {
let e = o.s.encoder;
(e && e !== t && o.s !== o.e && o.e.type !== S && !o.e.noValidation && (r = e(o, o.e)),
o === r ? ((r = o.e.decoder(o)), r.io || (r = it(r, r))) : (i = e));
}
}
return r;
},
Bt = (e) => {
try {
return K(e);
} catch (t) {
let n = Se(t);
throw ((n.path = c(e.p === N ? r : e.p.path, c(c(e.path, i), n.path))), n);
}
},
Vt = (t, r, i, a) => {
let o = Ge(P(t) ? L : t, r, i, a),
s = K(o),
c = U(s),
l = e(s.f, n);
if (
((r.isAsync = l),
(r.hasTransform = s.t === !0),
c === `` && (s === o || s.i === o.i) && !e(i, 1))
)
return ht;
{
let t = s.i;
e(i, 1) && !l && !a && (t = `Promise.resolve(${t})`);
let n = `${He}=>{${c}return ${t}}`,
r = Function(`e`, `s`, `return ${n}`)(o.g.e, ue);
return ((r.embedded = o.g.e), r);
}
},
Ht = (e) => (e.to === N ? e : Ht(e.to));
function Ut(...e) {
let t = arguments,
n = 0,
r = N,
i = ``,
a = 0,
o = N;
for (; r === N;) {
let e = t[n];
if (!e) {
let e = Te.f;
((r = e), (i = i + `-` + e));
} else if (typeof e === u) {
let t = e | Te.f;
((r = t), (i = i + `-` + t));
} else {
let t = e,
r = t.seq;
(r > a && ((a = r), (o = t)), (i = i + r + `-`), (n += 1));
}
}
if (o === N) return Ce(`No schema provided for decoder.`);
{
let e = i,
a = o;
if (e in a) return a[e];
{
let i = t[n - 1];
for (let e = n - 2; e >= 0; e--) {
let n = i;
i = Pe(t[e], (e) => {
e.to = n;
});
}
let a = Vt(i, i, r, N);
return ((Ee[De] = a), Object.defineProperty(o, e, Ee), a);
}
}
}
var Wt = `BS_PRIVATE_NESTED_SOME_NONE`,
Gt = (e) => {
let t = G(e, Kt(), N, Kt());
return ((t.cp = $e(e) + `;`), t);
},
Kt = () =>
Me(x, x, (e) => {
e.decoder = Gt;
}),
qt = (e) => {
let t = e.e.to;
return W(e, `{${Wt}:${Ht(e.e).properties[Wt].const}}`, t, t);
},
Jt = (t) => {
let n = M[t.s.type];
return e(n, C)
? G(t, t.e, [{ c: St(t, t.e.class), f: z }])
: e(n, j) && t.s.class === t.e.class
? t
: qe(t, t.s, t.e);
},
Yt = (t, n, r) => {
let i = M[n.type];
if (e(i, E)) return `${xt(r)}&&!${bt(r)}`;
if (e(i, D)) return bt(r);
if (e(i, j)) return St(t, n.class)(r);
if (e(i, ne)) {
let n = vt(u)(r);
return e(t.g.o, 2) ? n : `${n}&&!${yt(r)}`;
}
return e(i, A)
? yt(r)
: e(i, T | ie)
? `${r}===${Ue(t, n)}`
: e(i, w | re | ae | se)
? vt(n.type)(r)
: ``;
},
Xt = -1,
Zt = O | k | oe,
Qt = C | Zt | ce,
$t = (e, t) => e.type === t.type && e.class === t.class,
en = (e, t) => e === t || ($t(e, t) && !(M[e.type] & (k | O)) && e.format === t.format),
tn = (e, t) => e === t || (e !== e && t !== t),
q = (e) => {
let t = e;
for (; t.type !== x && t.to !== N;) t = t.to;
return t;
},
nn = (e) => {
if (e.type !== b) return !1;
let t = 0;
for (let n in e) n !== `isAsync` && n !== `hasTransform` && t++;
return t === 6;
},
rn = (e) => {
let t = M[e.type],
n = 0;
if (t & Zt || e.parser !== N) return 15;
(e.refiner !== N || e.inputRefiner !== N ? (n |= 3) : t & (E | D | j) && (n |= 2),
(e.format !== N || P(e)) && (n |= 1));
let r = e.to;
r !== N &&
(r === e || r.parser !== N || M[r.type] & Zt
? (n |= 15)
: r.noValidation === !0 || M[r.type] & C || $t(e, r) || (r.type === b && pn(r, 1) & t)
? (n |= rn(r))
: (n |= 9));
let i = e.items || e.properties;
for (let e in i) {
let t = i[e];
n |= rn(t);
}
return (typeof e.additionalItems == `object` && (n |= rn(e.additionalItems)), n);
},
an = (e) => {
if (e.to !== N || e.parser !== N || M[e.type] & k) return !1;
let t = e.anyOf || e.items || e.properties;
for (let e in t) if (!an(t[e])) return !1;
return typeof e.additionalItems != `object` || an(e.additionalItems);
},
on = (e, t) =>
t.every((t, n) => {
let r = e[n];
return (
r !== N &&
!(M[t.type] & (D | j | k | O | E)) &&
t.type === r.type &&
tn(t.const, r.const) &&
t.to === N &&
r.to === N
);
}),
sn = (e, t, n, ...r) => Ke(Ze(e, L, t, n, !0, r.length ? r : N)),
cn = (e, t) => {
if (e.length === 1) {
let n = e[0];
return n.b === `` && n.c === ``
? ``
: n.b === ``
? `if(!(${n.c})){${t.f(``)}}`
: n.c === ``
? n.b + `;`
: `if(${n.c}){${n.b}}else{${t.f(``)}}`;
}
let n = ``,
r = !1,
i = !1,
a = (e, n) => {
if (e.b === ``) return `break`;
let i = e.b.endsWith(`;`) ? e.b : `${e.b};`;
return e.f & 1 && (e.f & J || r)
? ((r = !0),
`try{${i}break}catch(x){${e.f & 4 ? `x=${t.r()}(x);if(x.expected===${t.s()}){x=x.unionErrors;x&&(r||(r=[])).push(...x)}else{(r||(r=[])).push(x)}` : `(r||(r=[])).push(${t.r()}(x))`}${!(e.f & J) && o > n ? `;${t.f(`,...(r||[])`)}` : ``}}`)
: `${i}break`;
},
o = -1;
for (let t = 0; t < e.length; t++) e[t].c === `` && (o = t);
let s = ``,
c = !1;
for (let t = 0; t < e.length; t++) {
let r = e[t],
o = r.c !== `` && r.c === s;
if (o && !c) continue;
let l = a(r, t);
if (((c = l[0] === `t`), (s = r.c), o)) n = `${n.slice(0, -1)}${l}}`;
else if (r.c === ``) {
if (((n += c ? l : `${l};`), !c)) {
i = !0;
break;
}
} else n += l === `break` ? `if(${r.c})break;` : `if(${r.c}){${l}}`;
}
return (i || (n += t.f(r ? `,...(r||[])` : ``)), `for(;;){${r ? `let r;` : ``}${n}}`);
},
ln = (e) => {
let t = M[e.type],
n = E | D,
r = I(e.type, !1);
return (
(r.encoder = e.encoder),
t & j
? (r.class = e.class)
: t & n
? ((r.additionalItems = L), t & E ? (r.properties = fe) : (r.items = de))
: t & (ie | T | A) && (r.const = e.const),
(r.decoder = (i) =>
M[i.s.type] & C
? G(i, i.e, [{ c: (t) => Yt(i, e, t), f: z }])
: $t(i.s, r)
? t & n
? G(i, i.e)
: i
: e.decoder(i)),
r
);
},
un = E | j,
dn = E | D | j | k | O,
fn = (e, t) => e | (e & un ? un : e & M[u] ? t : 0),
pn = (e, t, n = 0) => {
if (t === 2) {
let t = e.$defs,
r = e.$ref;
if (t !== N && r !== N) {
let i = t[r.slice(r.lastIndexOf(`/`) + 1)];
if (i !== N && i !== e) return pn(i, 1, n);
}
}
let r = M[e.type];
if (!t && r & ce) return 0;
if (t && r & O) {
let t = 0,
r = e.anyOf;
for (let e = 0; e < r.length; e++) t |= pn(r[e], 1, n);
return t;
}
return r & (C | O | k) ? Xt : fn(r, n);
},
J = 8,
mn = 16,
hn = (e) => ({ m: e.m, a: [e], f: e.f & mn, p: e.p, o: !1 }),
gn = (e) => {
if (P(e)) return [``, e.const];
let t = e.properties || e.items;
for (let e in t) {
let n = t[e];
if (P(n)) return [e, n.const];
}
return N;
},
_n = (e, t, n, r, i) => {
let a = i ? n : t,
o = N,
s = !1;
for (let e = 0; e < r.length; e++) {
let t = r[e],
n = i ? q(t) : t;
t.type === x || (i && n.type === x) || (en(a, n) ? (o ||= t) : (s = !0));
}
o !== N &&
s &&
yn(
e,
t,
n,
`${F(o)} has the same type as the ${i ? `target` : `source`} and the others don't`,
);
},
vn = (e, t, n, r) => yn(e, t, n, `${F(r)} has no same-type variant on the other side`),
yn = (e, t, n, r) =>
ft(
e,
`Invalid operation: can't convert ${F(t)} to ${F(n)} \u2014 ${r}. Use S.to to say what you mean, or S.never to mark a variant unreachable`,
),
bn = (e, t, n, r) => {
let i = n ? T : 0,
a = P(t);
for (let n = 0; n < e.length; n++) {
let r = e[n];
(a && P(r) && tn(r.const, t.const) && (i |= C), (i |= M[r.type] & (E | M[u])));
}
return { m: pn(t, 2, r), f: i, t: M[t.type] };
},
xn = (e, t, n, r) => {
let i = e.m,
a = e.f,
o = [],
s = e.t,
c = s & C,
l = s & (O | k),
d = l && i !== Xt,
f = gn(n),
ee = a & C,
h = a & E,
g = a & M[u],
_ = M[u] | A;
for (let e = 0; e < t.length; e++) {
let s = t[e],
u = M[s.type],
v = pn(s, 1, r),
b = gn(s),
S = $t(n, s),
te = f !== N && b !== N && S && f[0] === b[0] && !tn(f[1], b[1]),
C = !(u & ce) && !(a & T && u & T) && !te && (!ee || (P(s) ? tn(s.const, n.const) : i & v)),
ne = i & u,
re = C && !c && !(d ? ne : S),
E = q(s),
O = rn(s),
k = l && (!d || re),
ae = E.type === x ? 3 : O & 4 || k ? 4 : re || O & 8 ? 2 : O & 1 || u & dn ? 1 : 0,
oe = s.type === y && Wt in s.properties,
se = (O & 7) | (ae === 0 ? 0 : 1) | (k ? 4 : 0) | ((!c && S) || u & Qt ? mn : 0),
le = oe || (h && u & (D | j)) || (g && u & A) ? 0 : b === N ? 2 : 1;
o.push({
i: e,
s,
m: C
? c
? v
: d
? ne
? v
: s.type === m && i & ie
? ie
: s.type === p && i & T
? T
: i & w
? w
: i
: i
: 0,
o: !!C && E.type !== x,
e: ae,
f: se,
p: le,
k: u & j ? s.class : s.type,
r: u & un ? un : u & _ ? _ : fn(u, r),
d: b,
});
}
return o;
},
Sn = (e) => {
var t;
let n = [],
r = [],
i = [],
a = 0,
o = 0;
for (let t = 0; t < e.length; t++) {
let n = e[t];
n.e > 1 ? (o |= n.m) : n.e || (a |= n.m);
}
for (let s = 0; s < e.length; s++) {
let c = e[s];
if (c.m === 0 || (c.e === 1 && !(c.f & 2) && !(c.m & (o | ~a)))) continue;
let l = c.r !== Xt && (c.m & ~c.r) === 0,
u = c.e < 2 || (c.e === 4 && c.d?.[0] === ``),
d = l ? (c.p === 0 && i[c.r]) || r[c.r] : N,
f = N,
ee = !1;
if (d !== N)
for (let e = 0; e < d.t.length; e++) {
let t = d.t[e],
n = t.a[0];
((ee ||= t.p === 2),
f === N && u && t.o && n.k === c.k && n.e < 2 == c.e < 2 && (t.p === 0) == (c.p === 0)
? (f = t)
: t.o && t.m & c.m && (t.o = !1));
}
for (let e in r) {
let t = r[+e];
t !== d && t.m & c.m && delete r[+e];
}
if (!l) {
for (let e in i) i[+e].m & c.m && delete i[+e];
n.push(hn(c));
continue;
}
if (
(d !== N && f === N && c.p === 1 && ee && (delete r[c.r], (d = N)),
d === N && ((d = { m: 0, t: [] }), (r[c.r] = d), i[(t = c.r)] || (i[t] = d), n.push(d)),
(d.m |= c.m),
f !== N)
)
(f.a.push(c), (f.m |= c.m), (f.f &= ~mn));
else {
let e = hn(c);
((e.o = u), d.t.push(e));
}
u || delete r[c.r];
}
let s = [];
for (let e = 0; e < n.length; e++) {
let t = n[e];
`a` in t ? s.push(t) : s.push(...t.t.sort((e, t) => e.p - t.p));
}
let c = [],
l = 0,
u = 0;
for (let e = s.length - 1; e >= 0; e--) {
let t = s[e],
n = N,
r;
for (let e = t.a.length - 1; e >= 0; e--) {
let i = t.a[e],
a = i.d,
o = a === N || n === !1 || (n !== N && n !== a[0]);
(n !== N && (o || r.has(a[1])) && ((i.f |= J), (t.f |= 2)),
o ? (n = !1) : ((n = a[0]), (r ||= new Set()).add(a[1])));
}
let i = t.a[0].r,
a = c[i],
o = !!(l & t.m) && (!!(u & t.m) || n === !1 || a === N || a === !1 || a[0] !== n);
if (!o && a !== N && a !== !1) {
for (let e of r)
if (a[1].has(e)) {
o = !0;
break;
}
}
if (
((o || (l && M[t.a[0].s.type] & Qt && (t.a[0].s.to !== N || t.a[0].s.parser !== N))) &&
(t.f |= J | 2),
(t.a.length !== 1 || !(t.f & mn)) && (t.n = ln(t.a[0].s)),
i !== Xt && (t.m & ~i) === 0)
) {
if (n === !1) c[i] = !1;
else if (a === N) c[i] = [n, r];
else if (a !== !1) {
if (a[0] !== n) c[i] = !1;
else for (let e of r) a[1].add(e);
}
} else u |= t.m;
l |= t.m;
}
return s;
},
Cn = (e, t, r, i) => {
let a = e.i,
o = G(e),
s = r.some((e) => e.f & 2),
c = [],
l = ``,
u = ``,
d = ``,
f = {
f: (n) => `${B(e, sn.bind(N, t, e.path))}(${e.v()}${l}${n})`,
r: () => (u ||= B(e, Se)),
s: () => (d ||= B(e, t)),
},
ee = (r, i, a = i) => {
let u = e.g.t,
d = dt(i);
((d.u = !0), (d.t = i.t), (d.io = !1), (d.e = r.s));
let f,
ee = e.g.o;
e.g.o |= 4;
try {
if (t.perVariant)
try {
f = K(d);
} catch (t) {
return ((l += `,${B(e, Se(t))}`), N);
}
else f = K(d);
} finally {
e.g.o = ee;
}
r.o && (c[r.i] = f.s);
let p = { c: ``, h: [] },
m = r.f & J,
h = U(f, p),
g = f.f & n;
if (((o.f |= g), f.t)) {
o.t = !0;
let e = a.v();
(g || f.i !== e) && (h += `${e}=${g && s ? `await ` : ``}${f.i}`);
}
let _ = (h !== `` && e.g.t !== u) | (g && s ? 2 : 0) | (m ? J : 0);
return { c: p.c, b: h, f: _ };
},
p = [];
for (let t = 0; t < r.length; t++) {
let n = r[t];
if (n.a.length === 1 && n.f & mn) {
let t = ee(n.a[0], e);
if (t !== N && (n.f & J && (t.f |= J), p.push(t), t.c === `` && t.b === ``)) break;
continue;
}
let i = e.g.t,
a = dt(e);
((a.io = !1), (a.e = n.n));
let o = K(a),
s = [];
for (let e = 0; e < n.a.length; e++) {
let t = ee(n.a[e], o, a);
if (t !== N && (s.push(t), t.c === `` && t.b === ``)) break;
}
if (!s.length) continue;
let c = { c: ``, h: [] },
l,
u = !1;
if (s.every((e) => e.b === ``)) {
if (!s.some((e) => e.c === ``)) {
let e = s.map((e) => e.c).join(`||`);
(s.length > 1 && (e = `(${e})`), rt(o, { c: () => e, f: z }));
}
l = U(o, c);
} else {
let e = U(o, c),
t = s.length === 1 ? s[0] : N;
t !== N && e === ``
? (t.c !== `` && (c.c = c.c ? `${c.c}&&${t.c}` : t.c), (l = t.b))
: ((l = e + cn(s, f)), (u = s.length > 1));
}
let d =
(l !== `` && e.g.t !== i) | (s.some((e) => e.f & 2) ? 2 : 0) | (n.f & J) | (u ? 4 : 0);
if ((p.push({ c: c.c, b: l, f: d }), l === `` && c.c === ``)) break;
}
let m = p.length > 0 && p.every((e) => e.b === ``) && p.some((e) => e.c === ``),
h = !m && p.length > 0 && p.every((e) => e.c !== `` && e.b === ``),
g = p.some((e) => e.f & 2);
if (h) {
let e = p.map((e) => e.c).join(`||`);
(p.length > 1 && (e = `(${e})`), (o = G(G(o, o.s, [{ c: () => e, f: z }], t))));
} else if (!m) {
let t = cn(p, f);
if (g) {
let n = e.v();
o.i = `(async(${n})=>{${t};return ${n}})(${n})`;
} else o.cp += t;
}
g || (o.i = e.i);
let _;
o.f & n
? ((o.i = `Promise.resolve(${o.i})`), (o.v = Ve), (_ = o))
: o.v === R && e.cp === `` && o.cp === `` && !h && a === `i`
? ((e.hd = ``), (e.v = Ve), (e.i = a), (_ = e))
: (_ = o);
let v = c.filter(Boolean);
return (
(_.s = v.length ? Pn(v) : Kt()),
i === N ? ((_.e = t), it(_, e)) : ((_.io = !0), (_.e = q(i)), _)
);
},
wn = (t) => {
let n = t.e,
r = n.parser === N && n.to !== N && n.to.noValidation !== !0 ? n.to : N,
i = n.anyOf;
if (
(t.io && t.e === t.s) ||
(t.s === n && r === N && i.every(an)) ||
(t.s.type === b && r === N && on(i, t.s.anyOf))
)
return t;
let a = M[t.s.type];
(a & O || (t.s.encoder === N && a & k)) && (t.s = L);
let o = t.s,
s = e(t.g.o, 2) ? A : 0,
c = bn(i, o, `fromDefault` in n, s);
if ((!(c.t & C) && !(c.f & C) && _n(t, o, n, i, !1), r !== N)) {
let e = Dn(r) ? i.map((e) => (q(e).type === x ? N : r)) : jn(t, n, i, r),
a = n.refiner !== N || n.inputRefiner !== N ? Tn(n) : N;
i = i.map((t, n) => {
let r = e[n];
return r === N && a === N
? t
: Pe(t, (e) => {
(a !== N && a(e), r !== N && (e.to = r));
});
});
}
return Cn(t, n, Sn(xn(c, i, o, s)), r);
},
Tn = (e) => {
let t = [];
return (n) => {
for (let r = 0; r < 2; r++) {
let i = r ? `inputRefiner` : `refiner`,
a = e[i];
if (a !== N) {
let e = n[i];
n[i] = (n) => {
let i = t[r] || (t[r] = a(n));
return e === N ? i : e(n).concat(i);
};
}
}
};
},
En = (e, t) => {
let n = e.s.anyOf,
r = [],
i = {};
for (let e = 0; e < n.length; e++) {
let a = t(n[e], e);
(r.push(a), Fe(i, a.type));
}
let a = I(b, !1);
return (
(a.anyOf = r),
(a.has = i),
(a.decoder = wn),
(a.encoder = On),
(a.perVariant = e.s.perVariant),
G(e, L, N, a)
);
},
Dn = (e) =>
e.noValidation === !0 ||
M[q(e).type] & k ||
(e.type === b && e.anyOf.some((e) => M[e.type] & k)),
On = (e, t) => {
if (Dn(t)) return e;
let n = e.s.anyOf;
if (t.perVariant && t.anyOf.length === n.length) {
let r = t.anyOf;
return r.every((e, t) => e === n[t]) ? e : En(e, (e, t) => r[t]);
}
let r = jn(e, e.s, n, t);
return r.every((e) => e === N)
? e
: En(e, (e, t) => {
let n = r[t];
return n === N
? e
: Pe(e, (e) => {
e.to = n;
});
});
},
kn = ie | T,
An = (e) => (e.type === m ? p : e.type === p ? m : N),
jn = (e, t, n, r) =>
t.perVariant
? n.map(() => r)
: nn(r)
? Mn(e, t, n, r)
: (!(M[r.type] & C) && !r.noValidation && _n(e, t, r, n, !0),
n.map((e) => (q(e).type === x ? N : r))),
Mn = (e, t, n, r) => {
let i = r.anyOf,
a = [],
o = [],
s = 0;
for (let c = 0; c < n.length; c++) {
let l = n[c],
u = q(l);
if (l.type === x || u.type === x) continue;
let d = i.filter((e, t) => e.type !== x && en(u, e) && (o[t] = !0));
if (
((s |= M[u.type] & kn),
d.length === 1
? (a[c] = d[0])
: d.length > 1 && (a[c] = M[u.type] & dn && d.includes(u) ? u : Pn(d)),
a[c] !== N)
)
continue;
let f = An(u);
(f !== N && (a[c] = i.find((e) => e.type === f && q(e).type !== x)),
a[c] === N && vn(e, t, r, u));
}
for (let n = 0; n < i.length; n++) {
let a = i[n],
c = An(a);
a.type !== x && !o[n] && (c === N || q(a).type === x || !(s & M[c])) && vn(e, t, r, a);
}
return a.map((e, t) => (e !== N && Nn(e, q(n[t])) ? N : e));
},
Nn = (e, t) =>
e === t ||
(an(e) &&
e.refiner === N &&
e.inputRefiner === N &&
e.noValidation === N &&
(e.const === N || tn(e.const, t.const)) &&
!(M[e.type] & dn) &&
en(e, t)),
Pn = (e) => {
if (e.length === 0) return Ce(`S.union requires at least one item`);
if (e.length === 1) return e[0];
let t = {},
n = [];
for (let r = 0; r < e.length; r++) {
let i = e[r],
a = nn(i) ? i.anyOf : N;
for (let e = 0; e < (a === N ? 1 : a.length); e++) {
let r = a === N ? i : a[e];
(n.push(r), Fe(t, r.type));
}
}
let r = I(b, !1);
return ((r.anyOf = n), (r.decoder = wn), (r.encoder = On), (r.has = t), r);
},
Y = (e, t) =>
Pe(e, (e) => {
let n = t(e),
r = e.refiner;
e.refiner =
r === N
? n
: (e) => {
let t = r(e);
return (t.push(...n(e)), t);
};
}),
X = (e) => {
let t = e.errorMessage ? { ...e.errorMessage } : {};
return ((e.errorMessage = t), t);
},
Z = (e) => e !== N && typeof e != `string`,
Fn = (e, n) => ({
b: N,
p: N,
v: Ve,
i: ``,
s:
n.type === v
? { type: v, items: [], additionalItems: `strict`, decoder: Rn }
: {
type: y,
required: [],
properties: Object.create(null),
additionalItems: `strict`,
decoder: zn,
},
io: N,
e: e.e,
prev: e,
f: t,
d: Object.create(null),
fv: N,
cp: ``,
hd: ``,
fz: N,
vc: N,
u: N,
t: !0,
path: e.path,
g: e.g,
o: N,
}),
In = (t) => {
let r = t.s.type === v,
i = ``,
o = ``,
s = N,
c = Object.keys(t.d);
for (let l = 0; l < c.length; l++) {
let u = c[l],
d = t.d[u];
if ((e(d.f, n) && (o = o + d.i + `,`), d.o)) {
let e = s;
s = (t) => (e === N ? `` : e(t)) + `if(${d.v()}!==void 0){${t}[${a(u)}]=${d.i}}`;
} else i = i + (r ? `${d.i}` : `${a(u)}:${d.i}`) + `,`;
}
t.i = r ? `[` + i + `]` : `{` + i + `}`;
let l = t;
if (o) {
let e = dt(l);
e.io = !0;
let t = K(e),
r = U(t);
return (
(l.i =
r === `` && o === `${t.i},`
? t.i
: `Promise.all([${o}]).then(([${o}])=>{${r}return ${t.i}})`),
(l.f |= n),
(l.s = t.s),
(l.e = t.e),
(l.io = !0),
l
);
}
if (s === N) return l;
{
let e = s(l.v()),
t = G(l);
return ((t.cp += e), t);
}
},
Ln = (e) => {
let t = e,
n = I(v, t.r === t);
return ((n.additionalItems = t), (n.items = de), (n.decoder = Rn), n);
},
Rn = (t) => {
let r = t.u,
i = t.e,
a = M[t.s.type],
o = i.items,
s = o.length,
c;
if (e(a, C | D)) {
let n = e(a, D),
r;
r = n ? t.s : Ln(L);
let o = [];
n || o.push({ c: bt, f: z });
let l = r.additionalItems;
if (!(!Z(l) && r.items.length === s)) {
let e = i.additionalItems;
e === `strict`
? o.push({ c: (e) => `${e}.length===${s}`, f: z })
: e === `strip` && o.push({ c: (e) => `${e}.length>=${s}`, f: z });
}
c = o.length > 0 ? G(t, r, o) : G(t, r);
} else c = qe(t, t.s, i);
let l,
u = i.additionalItems;
if (Z(u)) {
if (u === L) l = c;
else {
let t = c.v(),
r = V(c.g),
a = Bt(ot(c, r)),
o = a.t,
u = o ? W(c, `new Array(${t}.length)`, Ln(a.s)) : G(c, i),
d = mt(a, c, r, o ? () => ut(u, r, a) : N);
((o || d !== ``) && (u.cp += `for(let ${r}=${s};${r}<${t}.length;++${r}){${d}}`),
(l = e(a.f, n) ? ct(u, `Promise.all(${u.i})`) : u));
}
} else {
let e = Fn(c, i),
t;
{
let e = i.additionalItems;
if (e === `strict`) t = !1;
else if (e === `strip`) {
let e = c.s.additionalItems;
t = Z(e) ? !0 : c.s.items.length !== s;
} else t = !0;
}
for (let n = 0; n < s; n++) {
let i = o[n],
a = String(n),
s = Gn(c, a);
((s.e = i), (s.io = !1), (s.u = r));
let l = K(s);
(r && P(i) && at(c, l, a), lt(e, a, l), (t ||= l.t));
}
if (t) l = In(e);
else {
let t = G(c, i);
((t.cp = e.cp), (t.d = e.d), (l = t));
}
}
return it(l, c);
},
zn = (t) => {
let r = t.u,
i = t.e,
o = M[t.s.type],
s;
if (e(o, C | E)) {
let n = e(o, E),
r;
if (n) r = t.s;
else {
let e = I(y, !1);
((e.properties = fe), (e.additionalItems = L), (r = e));
}
let i = [];
(n || (i.push({ c: xt, f: z }), i.push({ c: (e) => `!${bt(e)}`, f: z })),
(s = i.length > 0 ? G(t, r, i) : G(t, r)));
} else s = qe(t, t.s, i);
let c = i.additionalItems,
l = Z(c) ? c : N,
u = s.s.additionalItems,
d = Z(u),
f;
if (l !== N && l === L) f = s;
else if (l !== N && d) {
let t = s.v(),
r = V(s.g),
a = Bt(ot(s, r)),
o = a.t,
c = o ? W(s, `{}`, Bn(a.s)) : G(s, i),
l = mt(a, s, r, o ? () => ut(c, r, a) : N);
if (((o || l !== ``) && (c.cp += `for(let ${r} in ${t}){${l}}`), e(a.f, n))) {
let e = V(c.g),
t = V(c.g),
n = V(c.g),
i = V(c.g),
a = c.v();
f = ct(
c,
`new Promise((${e},${t})=>{let ${i}=Object.keys(${a}).length;for(let ${r} in ${a}){${a}[${r}].then(${n}=>{${a}[${r}]=${n};if(${i}--===1){${e}(${a})}},${t})}})`,
);
} else f = c;
} else if (l !== N) {
let e = l,
t = Fn(s, i),
n = Object.keys(s.s.properties);
for (let i = 0; i < n.length; i++) {
let a = n[i],
o = Gn(s, a);
((o.e = e), (o.io = !1), (o.u = r), lt(t, a, K(o)));
}
f = In(t);
} else {
let e = i.properties,
t = Object.keys(e),
n = t.length,
o = Fn(s, i),
c;
{
let e = i.additionalItems;
c = e === `strict` ? !1 : e !== `strip` || d || Object.keys(s.s.properties).length !== n;
}
let l = Z(u) ? u.name === Ie : !1;
for (let i = 0; i < n; i++) {
let n = t[i],
a = e[n],
u = Gn(s, n);
((u.e = a),
(u.io = !1),
(u.u = r),
l && a.type === b && a.has[m] && (u.i = `(${u.i}??null)`));
let d = K(u);
(r && P(a) && at(s, d, n), lt(o, n, d), (c ||= d.t));
}
if (i.additionalItems === `strict` && Z(u)) {
let e = V(o.g);
if ((We(s, e), (o.cp += `for(${e} in ${s.v()}){if(`), t.length === 0)) o.cp += `true`;
else
for (let n = 0; n < t.length; n++) {
let r = t[n];
(n !== 0 && (o.cp += `&&`), (o.cp += `${e}!==${a(r)}`));
}
o.cp += `){${Je(s, (e) => ({ code: `unrecognized_keys`, path: o.path, reason: `Unrecognized key "${e}"`, keys: [e] }), e)}}}`;
}
if (c) f = In(o);
else {
let e = G(s, i);
((e.cp = o.cp), (e.d = o.d), (f = e));
}
}
return it(f, s);
},
Bn = (e) => {
let t = I(y, e.r === e);
return ((t.properties = fe), (t.additionalItems = e), (t.decoder = zn), t);
},
Vn = () => {
let e = zt(0),
t = {};
return (
(t[Wt] = e),
{
type: y,
required: [Wt],
properties: t,
additionalItems: `strip`,
decoder: zn,
serializer: (e) => {
let t = e.e.to;
return st(e, t, t);
},
}
);
},
Hn = (e) =>
Pe(e, (e) => {
((e.to = Vn()), (e.parser = qt));
}),
Un = (e, t = It()) => {
let n = Ht(e);
if (n.type === m) return Pn([t, Hn(e)]);
if (n.type === b) {
let r = n.anyOf,
i = n.has;
return Pe(e, (e) => {
let n = r,
a = { ...i },
o = [];
for (let e = 0; e < n.length; e++) {
let r = n[e],
i,
s = Ht(r);
if (s.type === m) ((a[t.type] = !0), o.push(t), (i = Hn(r)));
else if (s.properties !== N) {
let e = s.properties[Wt];
i =
e === N
? r
: Pe(r, (t) => {
let n = {};
((n[Wt] = { ...e, const: e.const + 1 }), (t.properties = n));
});
} else i = r;
o.push(i);
}
(o.length === n.length && ((a[t.type] = !0), o.push(t)), (e.anyOf = o), (e.has = a));
});
}
return Pn([e, t]);
},
Wn = (e) => Un(e, It()),
Gn = (n, r) => {
let i;
if (n.d !== N) i = n.d;
else {
let e = Object.create(null);
((n.d = e), (i = e));
}
let s = i[r];
if (s !== N) return dt(s);
{
let s;
s = n.s.type === y ? n.s.properties[r] : n.s.items[Number(r)];
let l;
if (s !== N) l = s;
else {
let t = n.s.additionalItems;
if (Z(t)) {
let r = t;
n.s.type === y && r.type !== S && !e(M[r.type], k) && !he(r)
? ((l = Wn(r)), (l.perVariant = !0))
: (l = r);
} else l = qe(n, n.s, n.e);
}
let u = o(a(r)),
d = {
b: N,
p: n,
v: Be,
i: P(l) ? Ue(n, l) : `${n.v()}${u}`,
s: l,
io: N,
e: l,
prev: N,
f: t,
d: N,
fv: N,
cp: ``,
hd: ``,
fz: N,
vc: N,
u: N,
t: N,
path: c(n.path, u),
g: n.g,
o: N,
};
return ((i[r] = d), d);
}
},
Kn = (e) => G(e, e.e, [{ c: (e) => `!Number.isNaN(${e}.getTime())`, f: z }]),
qn = () =>
Me(_, _, (t) => {
((t.class = Date),
(t.decoder = (n) => {
let r = M[n.s.type];
return e(r, w)
? Kn(W(n, `new Date(${n.i})`, t))
: e(r, C)
? Kn(Jt(n))
: e(r, j) && n.s.class === t.class
? n
: qe(n, n.s, n.e);
}),
(t.encoder = (t, n) => {
let r = M[n.type];
if (e(r, w)) {
let e = I(l, !1);
return ((e.format = `date-time`), K(W(t, `${t.i}.toISOString()`, e, n)));
}
return t;
}));
}),
Jn = (e) => Yn(e, (e) => (pe(e) ? e : N)),
Yn = (e, t) => {
if (typeof e === y && e !== null) {
let n = t(e);
if (n !== N) return n;
if (Array.isArray(e)) {
let n = e;
for (let e = 0; e < n.length; e++) n[e] = Yn(n[e], t);
let r = n,
i = I(v, !1);
return ((i.items = r), (i.additionalItems = `strict`), (i.decoder = Rn), i);
}
{
let n = Object.getPrototypeOf(e);
if (n !== null && n !== Object.prototype) {
let t = I(_, !0);
return ((t.class = e.constructor), (t.const = e), (t.decoder = Ft), t);
}
{
let n = e,
r = Object.keys(n),
i = r.length;
for (let e = 0; e < i; e++) {
let i = r[e];
n[i] = Yn(n[i], t);
}
let a = I(y, !1);
return (
(a.required = r), (a.properties = n), (a.additionalItems = Te.a), (a.decoder = zn), a
);
}
}
}
return zt(e);
},
Xn = (e) => Jn(e),
Zn = (e, t) => {
if (typeof t !== u || Number.isNaN(t))
throw new xe({
code: `invalid_operation`,
path: r,
reason: `[S.${e}] Expected number, received ${ge(t)}`,
});
},
Qn = (e, t, n) => {
Zn(`min`, t);
let r = n ?? `Number must be greater than or equal to ${t}`;
return Y(
e,
(e) => (
(e.minimum = t),
(X(e).minimum = r),
(e) => [{ c: (e) => `${e}>${t - 1}`, f: H(`minimum`, r) }]
),
);
},
$n = (e, t, n) => {
Zn(`max`, t);
let r = n ?? `Number must be lower than or equal to ${t}`;
return Y(
e,
(e) => (
(e.maximum = t),
(X(e).maximum = r),
(e) => [{ c: (e) => `${e}<${t + 1}`, f: H(`maximum`, r) }]
),
);
},
er = (e, t, n) => {
Zn(`min`, t);
let r = n ?? `Number must be greater than or equal to ${t}`;
return Y(
e,
(e) => (
(e.minimum = t),
(X(e).minimum = r),
(e) => [{ c: (n) => `${n}>=${B(e, t)}`, f: H(`minimum`, r) }]
),
);
},
tr = (e, t, n) => {
Zn(`max`, t);
let r = n ?? `Number must be lower than or equal to ${t}`;
return Y(
e,
(e) => (
(e.maximum = t),
(X(e).maximum = r),
(e) => [{ c: (n) => `${n}<=${B(e, t)}`, f: H(`maximum`, r) }]
),
);
},
nr = (e, t, n) => {
Zn(`min`, t);
let r = n ?? `Array must be ${t} or more items long`;
return Y(
e,
(e) => (
(e.minItems = t),
(X(e).minItems = r),
(e) => [{ c: (e) => `${e}.length>${t - 1}`, f: H(`minItems`, r) }]
),
);
},
rr = (e, t, n) => {
Zn(`max`, t);
let r = n ?? `Array must be ${t} or fewer items long`;
return Y(
e,
(e) => (
(e.maxItems = t),
(X(e).maxItems = r),
(e) => [{ c: (e) => `${e}.length<${t + 1}`, f: H(`maxItems`, r) }]
),
);
},
ir = (e, t, n) => {
Zn(`min`, t);
let r = n ?? `String must be ${t} or more characters long`;
return Y(
e,
(e) => (
(e.minLength = t),
(X(e).minLength = r),
(e) => [{ c: (e) => `${e}.length>${t - 1}`, f: H(`minLength`, r) }]
),
);
},
ar = (e, t, n) => {
Zn(`max`, t);
let r = n ?? `String must be ${t} or fewer characters long`;
return Y(
e,
(e) => (
(e.maxLength = t),
(X(e).maxLength = r),
(e) => [{ c: (e) => `${e}.length<${t + 1}`, f: H(`maxLength`, r) }]
),
);
},
or = () =>
Me(`url`, l, (e) => {
let t = (e) => {
try {
return (new URL(e), !0);
} catch {
return !1;
}
};
((e.decoder = Nt),
(e.format = `url`),
(e.refiner = (e) => [{ c: (n) => `${B(e, t)}(${n})`, f: H(`format`) }]));
}),
sr,
cr = (e, t, n) => {
if (sr !== N) return sr(e, t, n);
throw new xe({
code: `invalid_operation`,
path: r,
reason: `~standard.jsonSchema requires S.enableStandardJSONSchema() to be called first`,
});
};
Object.defineProperty(ve, "~standard", {
get: function () {
let e = this,
t = {
version: 1,
vendor: le,
validate: (t) => {
try {
return { value: Ut(L, e)(t) };
} catch (e) {
let t = Se(e);
return { issues: [{ message: t.reason, path: t.path === r ? N : s(t.path) }] };
}
},
jsonSchema: { input: (t) => cr(e, t, !1), output: (t) => cr(e, t, !0) },
};
return ((Ee[De] = t), Object.defineProperty(e, "~standard", Ee), t);
},
});
var lr = (...e) => Ut(L, ...e),
ur = (e) => Pn(e.map(Jn)),
Q = (e, t, n) => {
switch (e.type) {
case l:
return ir(e, t, n);
case v:
return nr(e, t, n);
case u:
return e.format === `int32` || e.format === `port` ? Qn(e, t, n) : er(e, t, n);
default:
return Ce(
`S.min is not supported for ${F(e)} schema. Coerce the schema to string, number or array using S.to first.`,
);
}
},
$ = (e, t, n) => {
switch (e.type) {
case l:
return ar(e, t, n);
case v:
return rr(e, t, n);
case u:
return e.format === `int32` || e.format === `port` ? $n(e, t, n) : tr(e, t, n);
default:
return Ce(
`S.max is not supported for ${F(e)} schema. Coerce the schema to string, number or array using S.to first.`,
);
}
},
dr = Pt(),
fr = jt(),
pr = qn();
const mr = Xn({
id: fr,
created: pr,
title: Q($(dr, 100), 1),
type: ur([`jpg`, `png`]),
size: fr,
url: or(),
});
lr(
Xn({
id: fr,
created: pr,
title: Q($(dr, 100), 1),
brand: Q($(dr, 30), 1),
description: Q($(dr, 500), 1),
price: Q($(fr, 1e4), 1),
discount: ur([Q($(fr, 100), 1), null]),
quantity: Q($(fr, 10), 0),
tags: Ln(Q($(dr, 30), 1)),
images: Ln(mr),
ratings: Ln(
Xn({
id: fr,
stars: Q($(fr, 5), 0),
title: Q($(dr, 100), 1),
text: Q($(dr, 1e3), 1),
images: Ln(mr),
}),
),
}),
)({});