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