LogoLogo

Schema Benchmarks

    • home
      Home

    • download_2
      Download

    • timer
      Initialization
    • check_circle
      Validation
    • output_circle
      Parsing
    • swap_horiz
      Codec
    • schema
      Standard Schema
    • format_quote
      String

    • error
      Stack

    • deployed_code
      Libraries

    • article
      Blog
Expand sidebarExpand sidebar
ajv/Compiled (minified)Compiled (minified)
github
GitHubGitHub
DiscordDiscord
PreferencesPreferences
schemas/libraries/ajv/download_compiled/minified.js
code_off
View RawView Raw
Copy to clipboardCopy to clipboard
var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescriptor, r = Object.getOwnPropertyNames, i = Object.getPrototypeOf, a = Object.prototype.hasOwnProperty, o = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), (e = null)), t.exports), s = (e, i, o, s) => { if ((i && typeof i == `object`) || typeof i == `function`) for (var c = r(i), l = 0, u = c.length, d; l < u; l++) ((d = c[l]), !a.call(e, d) && d !== o && t(e, d, { get: ((e) => i[e]).bind(null, d), enumerable: !(s = n(i, d)) || s.enumerable, })); return e; }, c = (n, r, a) => ( (a = n == null ? {} : e(i(n))), s(r || !n || !n.__esModule ? t(a, `default`, { value: n, enumerable: !0 }) : a, n) ), l = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.regexpCode = e.getEsmExportName = e.getProperty = e.safeStringify = e.stringify = e.strConcat = e.addCodeArg = e.str = e._ = e.nil = e._Code = e.Name = e.IDENTIFIER = e._CodeOrName = void 0)); var t = class {}; ((e._CodeOrName = t), (e.IDENTIFIER = /^[a-z$_][a-z$_0-9]*$/i)); var n = class extends t { constructor(t) { if ((super(), !e.IDENTIFIER.test(t))) throw Error(`CodeGen: name must be a valid identifier`); this.str = t; } toString() { return this.str; } emptyStr() { return !1; } get names() { return { [this.str]: 1 }; } }; e.Name = n; var r = class extends t { constructor(e) { (super(), (this._items = typeof e == `string` ? [e] : e)); } toString() { return this.str; } emptyStr() { if (this._items.length > 1) return !1; let e = this._items[0]; return e === `` || e === `""`; } get str() { return (this._str ??= this._items.reduce((e, t) => `${e}${t}`, ``)); } get names() { return (this._names ??= this._items.reduce( (e, t) => (t instanceof n && (e[t.str] = (e[t.str] || 0) + 1), e), {}, )); } }; ((e._Code = r), (e.nil = new r(``))); function i(e, ...t) { let n = [e[0]], i = 0; for (; i < t.length;) (s(n, t[i]), n.push(e[++i])); return new r(n); } e._ = i; let a = new r(`+`); function o(e, ...t) { let n = [p(e[0])], i = 0; for (; i < t.length;) (n.push(a), s(n, t[i]), n.push(a, p(e[++i]))); return (c(n), new r(n)); } e.str = o; function s(e, t) { t instanceof r ? e.push(...t._items) : t instanceof n ? e.push(t) : e.push(d(t)); } e.addCodeArg = s; function c(e) { let t = 1; for (; t < e.length - 1;) { if (e[t] === a) { let n = l(e[t - 1], e[t + 1]); if (n !== void 0) { e.splice(t - 1, 3, n); continue; } e[t++] = `+`; } t++; } } function l(e, t) { if (t === `""`) return e; if (e === `""`) return t; if (typeof e == `string`) return t instanceof n || e[e.length - 1] !== `"` ? void 0 : typeof t == `string` ? t[0] === `"` ? e.slice(0, -1) + t.slice(1) : void 0 : `${e.slice(0, -1)}${t}"`; if (typeof t == `string` && t[0] === `"` && !(e instanceof n)) return `"${e}${t.slice(1)}`; } function u(e, t) { return t.emptyStr() ? e : e.emptyStr() ? t : o`${e}${t}`; } e.strConcat = u; function d(e) { return typeof e == `number` || typeof e == `boolean` || e === null ? e : p(Array.isArray(e) ? e.join(`,`) : e); } function f(e) { return new r(p(e)); } e.stringify = f; function p(e) { return JSON.stringify(e) .replace(/\u2028/g, `\\u2028`) .replace(/\u2029/g, `\\u2029`); } e.safeStringify = p; function m(t) { return typeof t == `string` && e.IDENTIFIER.test(t) ? new r(`.${t}`) : i`[${t}]`; } e.getProperty = m; function h(t) { if (typeof t == `string` && e.IDENTIFIER.test(t)) return new r(`${t}`); throw Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`); } e.getEsmExportName = h; function g(e) { return new r(e.toString()); } e.regexpCode = g; }), u = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.ValueScope = e.ValueScopeName = e.Scope = e.varKinds = e.UsedValueState = void 0)); let t = l(); var n = class extends Error { constructor(e) { (super(`CodeGen: "code" for ${e} not defined`), (this.value = e.value)); } }, r; ((function (e) { ((e[(e.Started = 0)] = `Started`), (e[(e.Completed = 1)] = `Completed`)); })(r || (e.UsedValueState = r = {})), (e.varKinds = { const: new t.Name(`const`), let: new t.Name(`let`), var: new t.Name(`var`), })); var i = class { constructor({ prefixes: e, parent: t } = {}) { ((this._names = {}), (this._prefixes = e), (this._parent = t)); } toName(e) { return e instanceof t.Name ? e : this.name(e); } name(e) { return new t.Name(this._newName(e)); } _newName(e) { let t = this._names[e] || this._nameGroup(e); return `${e}${t.index++}`; } _nameGroup(e) { if (this._parent?._prefixes?.has(e) || (this._prefixes && !this._prefixes.has(e))) throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`); return (this._names[e] = { prefix: e, index: 0 }); } }; e.Scope = i; var a = class extends t.Name { constructor(e, t) { (super(t), (this.prefix = e)); } setValue(e, { property: n, itemIndex: r }) { ((this.value = e), (this.scopePath = (0, t._)`.${new t.Name(n)}[${r}]`)); } }; e.ValueScopeName = a; let o = (0, t._)`\n`; e.ValueScope = class extends i { constructor(e) { (super(e), (this._values = {}), (this._scope = e.scope), (this.opts = { ...e, _n: e.lines ? o : t.nil })); } get() { return this._scope; } name(e) { return new a(e, this._newName(e)); } value(e, t) { if (t.ref === void 0) throw Error(`CodeGen: ref must be passed in value`); let n = this.toName(e), { prefix: r } = n, i = t.key ?? t.ref, a = this._values[r]; if (a) { let e = a.get(i); if (e) return e; } else a = this._values[r] = new Map(); a.set(i, n); let o = this._scope[r] || (this._scope[r] = []), s = o.length; return ((o[s] = t.ref), n.setValue(t, { property: r, itemIndex: s }), n); } getValue(e, t) { let n = this._values[e]; if (n) return n.get(t); } scopeRefs(e, n = this._values) { return this._reduceValues(n, (n) => { if (n.scopePath === void 0) throw Error(`CodeGen: name "${n}" has no value`); return (0, t._)`${e}${n.scopePath}`; }); } scopeCode(e = this._values, t, n) { return this._reduceValues( e, (e) => { if (e.value === void 0) throw Error(`CodeGen: name "${e}" has no value`); return e.value.code; }, t, n, ); } _reduceValues(i, a, o = {}, s) { let c = t.nil; for (let l in i) { let u = i[l]; if (!u) continue; let d = (o[l] = o[l] || new Map()); u.forEach((i) => { if (d.has(i)) return; d.set(i, r.Started); let o = a(i); if (o) { let n = this.opts.es5 ? e.varKinds.var : e.varKinds.const; c = (0, t._)`${c}${n} ${i} = ${o};${this.opts._n}`; } else if ((o = s?.(i))) c = (0, t._)`${c}${o}${this.opts._n}`; else throw new n(i); d.set(i, r.Completed); }); } return c; } }; }), d = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.or = e.and = e.not = e.CodeGen = e.operators = e.varKinds = e.ValueScopeName = e.ValueScope = e.Scope = e.Name = e.regexpCode = e.stringify = e.getProperty = e.nil = e.strConcat = e.str = e._ = void 0)); let t = l(), n = u(); var r = l(); (Object.defineProperty(e, "_", { enumerable: !0, get: function () { return r._; }, }), Object.defineProperty(e, "str", { enumerable: !0, get: function () { return r.str; }, }), Object.defineProperty(e, "strConcat", { enumerable: !0, get: function () { return r.strConcat; }, }), Object.defineProperty(e, "nil", { enumerable: !0, get: function () { return r.nil; }, }), Object.defineProperty(e, "getProperty", { enumerable: !0, get: function () { return r.getProperty; }, }), Object.defineProperty(e, "stringify", { enumerable: !0, get: function () { return r.stringify; }, }), Object.defineProperty(e, "regexpCode", { enumerable: !0, get: function () { return r.regexpCode; }, }), Object.defineProperty(e, "Name", { enumerable: !0, get: function () { return r.Name; }, })); var i = u(); (Object.defineProperty(e, "Scope", { enumerable: !0, get: function () { return i.Scope; }, }), Object.defineProperty(e, "ValueScope", { enumerable: !0, get: function () { return i.ValueScope; }, }), Object.defineProperty(e, "ValueScopeName", { enumerable: !0, get: function () { return i.ValueScopeName; }, }), Object.defineProperty(e, "varKinds", { enumerable: !0, get: function () { return i.varKinds; }, }), (e.operators = { GT: new t._Code(`>`), GTE: new t._Code(`>=`), LT: new t._Code(`<`), LTE: new t._Code(`<=`), EQ: new t._Code(`===`), NEQ: new t._Code(`!==`), NOT: new t._Code(`!`), OR: new t._Code(`||`), AND: new t._Code(`&&`), ADD: new t._Code(`+`), })); var a = class { optimizeNodes() { return this; } optimizeNames(e, t) { return this; } }, o = class extends a { constructor(e, t, n) { (super(), (this.varKind = e), (this.name = t), (this.rhs = n)); } render({ es5: e, _n: t }) { let r = e ? n.varKinds.var : this.varKind, i = this.rhs === void 0 ? `` : ` = ${this.rhs}`; return `${r} ${this.name}${i};` + t; } optimizeNames(e, t) { if (e[this.name.str]) return ((this.rhs &&= j(this.rhs, e, t)), this); } get names() { return this.rhs instanceof t._CodeOrName ? this.rhs.names : {}; } }, s = class extends a { constructor(e, t, n) { (super(), (this.lhs = e), (this.rhs = t), (this.sideEffects = n)); } render({ _n: e }) { return `${this.lhs} = ${this.rhs};` + e; } optimizeNames(e, n) { if (!(this.lhs instanceof t.Name && !e[this.lhs.str] && !this.sideEffects)) return ((this.rhs = j(this.rhs, e, n)), this); } get names() { return A(this.lhs instanceof t.Name ? {} : { ...this.lhs.names }, this.rhs); } }, c = class extends s { constructor(e, t, n, r) { (super(e, n, r), (this.op = t)); } render({ _n: e }) { return `${this.lhs} ${this.op}= ${this.rhs};` + e; } }, d = class extends a { constructor(e) { (super(), (this.label = e), (this.names = {})); } render({ _n: e }) { return `${this.label}:` + e; } }, f = class extends a { constructor(e) { (super(), (this.label = e), (this.names = {})); } render({ _n: e }) { return `break${this.label ? ` ${this.label}` : ``};` + e; } }, p = class extends a { constructor(e) { (super(), (this.error = e)); } render({ _n: e }) { return `throw ${this.error};` + e; } get names() { return this.error.names; } }, m = class extends a { constructor(e) { (super(), (this.code = e)); } render({ _n: e }) { return `${this.code};` + e; } optimizeNodes() { return `${this.code}` ? this : void 0; } optimizeNames(e, t) { return ((this.code = j(this.code, e, t)), this); } get names() { return this.code instanceof t._CodeOrName ? this.code.names : {}; } }, h = class extends a { constructor(e = []) { (super(), (this.nodes = e)); } render(e) { return this.nodes.reduce((t, n) => t + n.render(e), ``); } optimizeNodes() { let { nodes: e } = this, t = e.length; for (; t--;) { let n = e[t].optimizeNodes(); Array.isArray(n) ? e.splice(t, 1, ...n) : n ? (e[t] = n) : e.splice(t, 1); } return e.length > 0 ? this : void 0; } optimizeNames(e, t) { let { nodes: n } = this, r = n.length; for (; r--;) { let i = n[r]; i.optimizeNames(e, t) || (M(e, i.names), n.splice(r, 1)); } return n.length > 0 ? this : void 0; } get names() { return this.nodes.reduce((e, t) => k(e, t.names), {}); } }, g = class extends h { render(e) { return `{` + e._n + super.render(e) + `}` + e._n; } }, _ = class extends h {}, v = class extends g {}; v.kind = `else`; var y = class e extends g { constructor(e, t) { (super(t), (this.condition = e)); } render(e) { let t = `if(${this.condition})` + super.render(e); return (this.else && (t += `else ` + this.else.render(e)), t); } optimizeNodes() { super.optimizeNodes(); let t = this.condition; if (t === !0) return this.nodes; let n = this.else; if (n) { let e = n.optimizeNodes(); n = this.else = Array.isArray(e) ? new v(e) : e; } if (n) return t === !1 ? n instanceof e ? n : n.nodes : this.nodes.length ? this : new e(N(t), n instanceof e ? [n] : n.nodes); if (!(t === !1 || !this.nodes.length)) return this; } optimizeNames(e, t) { if (((this.else = this.else?.optimizeNames(e, t)), super.optimizeNames(e, t) || this.else)) return ((this.condition = j(this.condition, e, t)), this); } get names() { let e = super.names; return (A(e, this.condition), this.else && k(e, this.else.names), e); } }; y.kind = `if`; var b = class extends g {}; b.kind = `for`; var x = class extends b { constructor(e) { (super(), (this.iteration = e)); } render(e) { return `for(${this.iteration})` + super.render(e); } optimizeNames(e, t) { if (super.optimizeNames(e, t)) return ((this.iteration = j(this.iteration, e, t)), this); } get names() { return k(super.names, this.iteration.names); } }, S = class extends b { constructor(e, t, n, r) { (super(), (this.varKind = e), (this.name = t), (this.from = n), (this.to = r)); } render(e) { let t = e.es5 ? n.varKinds.var : this.varKind, { name: r, from: i, to: a } = this; return `for(${t} ${r}=${i}; ${r}<${a}; ${r}++)` + super.render(e); } get names() { return A(A(super.names, this.from), this.to); } }, C = class extends b { constructor(e, t, n, r) { (super(), (this.loop = e), (this.varKind = t), (this.name = n), (this.iterable = r)); } render(e) { return ( `for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})` + super.render(e) ); } optimizeNames(e, t) { if (super.optimizeNames(e, t)) return ((this.iterable = j(this.iterable, e, t)), this); } get names() { return k(super.names, this.iterable.names); } }, w = class extends g { constructor(e, t, n) { (super(), (this.name = e), (this.args = t), (this.async = n)); } render(e) { return ( `${this.async ? `async ` : ``}function ${this.name}(${this.args})` + super.render(e) ); } }; w.kind = `func`; var T = class extends h { render(e) { return `return ` + super.render(e); } }; T.kind = `return`; var E = class extends g { render(e) { let t = `try` + super.render(e); return ( this.catch && (t += this.catch.render(e)), this.finally && (t += this.finally.render(e)), t ); } optimizeNodes() { var e, t; return ( super.optimizeNodes(), (e = this.catch) == null || e.optimizeNodes(), (t = this.finally) == null || t.optimizeNodes(), this ); } optimizeNames(e, t) { var n, r; return ( super.optimizeNames(e, t), (n = this.catch) == null || n.optimizeNames(e, t), (r = this.finally) == null || r.optimizeNames(e, t), this ); } get names() { let e = super.names; return ( this.catch && k(e, this.catch.names), this.finally && k(e, this.finally.names), e ); } }, D = class extends g { constructor(e) { (super(), (this.error = e)); } render(e) { return `catch(${this.error})` + super.render(e); } }; D.kind = `catch`; var O = class extends g { render(e) { return `finally` + super.render(e); } }; ((O.kind = `finally`), (e.CodeGen = class { constructor(e, t = {}) { ((this._values = {}), (this._blockStarts = []), (this._constants = {}), (this.opts = { ...t, _n: t.lines ? ` ` : ``, }), (this._extScope = e), (this._scope = new n.Scope({ parent: e })), (this._nodes = [new _()])); } toString() { return this._root.render(this.opts); } name(e) { return this._scope.name(e); } scopeName(e) { return this._extScope.name(e); } scopeValue(e, t) { let n = this._extScope.value(e, t); return ((this._values[n.prefix] || (this._values[n.prefix] = new Set())).add(n), n); } getScopeValue(e, t) { return this._extScope.getValue(e, t); } scopeRefs(e) { return this._extScope.scopeRefs(e, this._values); } scopeCode() { return this._extScope.scopeCode(this._values); } _def(e, t, n, r) { let i = this._scope.toName(t); return ( n !== void 0 && r && (this._constants[i.str] = n), this._leafNode(new o(e, i, n)), i ); } const(e, t, r) { return this._def(n.varKinds.const, e, t, r); } let(e, t, r) { return this._def(n.varKinds.let, e, t, r); } var(e, t, r) { return this._def(n.varKinds.var, e, t, r); } assign(e, t, n) { return this._leafNode(new s(e, t, n)); } add(t, n) { return this._leafNode(new c(t, e.operators.ADD, n)); } code(e) { return (typeof e == `function` ? e() : e !== t.nil && this._leafNode(new m(e)), this); } object(...e) { let n = [`{`]; for (let [r, i] of e) (n.length > 1 && n.push(`,`), n.push(r), (r !== i || this.opts.es5) && (n.push(`:`), (0, t.addCodeArg)(n, i))); return (n.push(`}`), new t._Code(n)); } if(e, t, n) { if ((this._blockNode(new y(e)), t && n)) this.code(t).else().code(n).endIf(); else if (t) this.code(t).endIf(); else if (n) throw Error(`CodeGen: "else" body without "then" body`); return this; } elseIf(e) { return this._elseNode(new y(e)); } else() { return this._elseNode(new v()); } endIf() { return this._endBlockNode(y, v); } _for(e, t) { return (this._blockNode(e), t && this.code(t).endFor(), this); } for(e, t) { return this._for(new x(e), t); } forRange(e, t, r, i, a = this.opts.es5 ? n.varKinds.var : n.varKinds.let) { let o = this._scope.toName(e); return this._for(new S(a, o, t, r), () => i(o)); } forOf(e, r, i, a = n.varKinds.const) { let o = this._scope.toName(e); if (this.opts.es5) { let e = r instanceof t.Name ? r : this.var(`_arr`, r); return this.forRange(`_i`, 0, (0, t._)`${e}.length`, (n) => { (this.var(o, (0, t._)`${e}[${n}]`), i(o)); }); } return this._for(new C(`of`, a, o, r), () => i(o)); } forIn(e, r, i, a = this.opts.es5 ? n.varKinds.var : n.varKinds.const) { if (this.opts.ownProperties) return this.forOf(e, (0, t._)`Object.keys(${r})`, i); let o = this._scope.toName(e); return this._for(new C(`in`, a, o, r), () => i(o)); } endFor() { return this._endBlockNode(b); } label(e) { return this._leafNode(new d(e)); } break(e) { return this._leafNode(new f(e)); } return(e) { let t = new T(); if ((this._blockNode(t), this.code(e), t.nodes.length !== 1)) throw Error(`CodeGen: "return" should have one node`); return this._endBlockNode(T); } try(e, t, n) { if (!t && !n) throw Error(`CodeGen: "try" without "catch" and "finally"`); let r = new E(); if ((this._blockNode(r), this.code(e), t)) { let e = this.name(`e`); ((this._currNode = r.catch = new D(e)), t(e)); } return ( n && ((this._currNode = r.finally = new O()), this.code(n)), this._endBlockNode(D, O) ); } throw(e) { return this._leafNode(new p(e)); } block(e, t) { return (this._blockStarts.push(this._nodes.length), e && this.code(e).endBlock(t), this); } endBlock(e) { let t = this._blockStarts.pop(); if (t === void 0) throw Error(`CodeGen: not in self-balancing block`); let n = this._nodes.length - t; if (n < 0 || (e !== void 0 && n !== e)) throw Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`); return ((this._nodes.length = t), this); } func(e, n = t.nil, r, i) { return (this._blockNode(new w(e, n, r)), i && this.code(i).endFunc(), this); } endFunc() { return this._endBlockNode(w); } optimize(e = 1) { for (; e-- > 0;) (this._root.optimizeNodes(), this._root.optimizeNames(this._root.names, this._constants)); } _leafNode(e) { return (this._currNode.nodes.push(e), this); } _blockNode(e) { (this._currNode.nodes.push(e), this._nodes.push(e)); } _endBlockNode(e, t) { let n = this._currNode; if (n instanceof e || (t && n instanceof t)) return (this._nodes.pop(), this); throw Error(`CodeGen: not in block "${t ? `${e.kind}/${t.kind}` : e.kind}"`); } _elseNode(e) { let t = this._currNode; if (!(t instanceof y)) throw Error(`CodeGen: "else" without "if"`); return ((this._currNode = t.else = e), this); } get _root() { return this._nodes[0]; } get _currNode() { let e = this._nodes; return e[e.length - 1]; } set _currNode(e) { let t = this._nodes; t[t.length - 1] = e; } })); function k(e, t) { for (let n in t) e[n] = (e[n] || 0) + (t[n] || 0); return e; } function A(e, n) { return n instanceof t._CodeOrName ? k(e, n.names) : e; } function j(e, n, r) { if (e instanceof t.Name) return i(e); if (!a(e)) return e; return new t._Code( e._items.reduce( (e, n) => ( n instanceof t.Name && (n = i(n)), n instanceof t._Code ? e.push(...n._items) : e.push(n), e ), [], ), ); function i(e) { let t = r[e.str]; return t === void 0 || n[e.str] !== 1 ? e : (delete n[e.str], t); } function a(e) { return ( e instanceof t._Code && e._items.some((e) => e instanceof t.Name && n[e.str] === 1 && r[e.str] !== void 0) ); } } function M(e, t) { for (let n in t) e[n] = (e[n] || 0) - (t[n] || 0); } function N(e) { return typeof e == `boolean` || typeof e == `number` || e === null ? !e : (0, t._)`!${z(e)}`; } e.not = N; let P = R(e.operators.AND); function F(...e) { return e.reduce(P); } e.and = F; let I = R(e.operators.OR); function L(...e) { return e.reduce(I); } e.or = L; function R(e) { return (n, r) => (n === t.nil ? r : r === t.nil ? n : (0, t._)`${z(n)} ${e} ${z(r)}`); } function z(e) { return e instanceof t.Name ? e : (0, t._)`(${e})`; } }), f = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.checkStrictMode = e.getErrorPath = e.Type = e.useFunc = e.setEvaluated = e.evaluatedPropsToName = e.mergeEvaluated = e.eachItem = e.unescapeJsonPointer = e.escapeJsonPointer = e.escapeFragment = e.unescapeFragment = e.schemaRefOrVal = e.schemaHasRulesButRef = e.schemaHasRules = e.checkUnknownRules = e.alwaysValidSchema = e.toHash = void 0)); let t = d(), n = l(); function r(e) { let t = {}; for (let n of e) t[n] = !0; return t; } e.toHash = r; function i(e, t) { return typeof t == `boolean` ? t : Object.keys(t).length === 0 ? !0 : (a(e, t), !o(t, e.self.RULES.all)); } e.alwaysValidSchema = i; function a(e, t = e.schema) { let { opts: n, self: r } = e; if (!n.strictSchema || typeof t == `boolean`) return; let i = r.RULES.keywords; for (let n in t) i[n] || C(e, `unknown keyword: "${n}"`); } e.checkUnknownRules = a; function o(e, t) { if (typeof e == `boolean`) return !e; for (let n in e) if (t[n]) return !0; return !1; } e.schemaHasRules = o; function s(e, t) { if (typeof e == `boolean`) return !e; for (let n in e) if (n !== `$ref` && t.all[n]) return !0; return !1; } e.schemaHasRulesButRef = s; function c({ topSchemaRef: e, schemaPath: n }, r, i, a) { if (!a) { if (typeof r == `number` || typeof r == `boolean`) return r; if (typeof r == `string`) return (0, t._)`${r}`; } return (0, t._)`${e}${n}${(0, t.getProperty)(i)}`; } e.schemaRefOrVal = c; function u(e) { return m(decodeURIComponent(e)); } e.unescapeFragment = u; function f(e) { return encodeURIComponent(p(e)); } e.escapeFragment = f; function p(e) { return typeof e == `number` ? `${e}` : e.replace(/~/g, `~0`).replace(/\//g, `~1`); } e.escapeJsonPointer = p; function m(e) { return e.replace(/~1/g, `/`).replace(/~0/g, `~`); } e.unescapeJsonPointer = m; function h(e, t) { if (Array.isArray(e)) for (let n of e) t(n); else t(e); } e.eachItem = h; function g({ mergeNames: e, mergeToName: n, mergeValues: r, resultToName: i }) { return (a, o, s, c) => { let l = s === void 0 ? o : s instanceof t.Name ? (o instanceof t.Name ? e(a, o, s) : n(a, o, s), s) : o instanceof t.Name ? (n(a, s, o), o) : r(o, s); return c === t.Name && !(l instanceof t.Name) ? i(a, l) : l; }; } e.mergeEvaluated = { props: g({ mergeNames: (e, n, r) => e.if((0, t._)`${r} !== true && ${n} !== undefined`, () => { e.if( (0, t._)`${n} === true`, () => e.assign(r, !0), () => e.assign(r, (0, t._)`${r} || {}`).code((0, t._)`Object.assign(${r}, ${n})`), ); }), mergeToName: (e, n, r) => e.if((0, t._)`${r} !== true`, () => { n === !0 ? e.assign(r, !0) : (e.assign(r, (0, t._)`${r} || {}`), v(e, r, n)); }), mergeValues: (e, t) => e === !0 || { ...e, ...t }, resultToName: _, }), items: g({ mergeNames: (e, n, r) => e.if((0, t._)`${r} !== true && ${n} !== undefined`, () => e.assign(r, (0, t._)`${n} === true ? true : ${r} > ${n} ? ${r} : ${n}`), ), mergeToName: (e, n, r) => e.if((0, t._)`${r} !== true`, () => e.assign(r, n === !0 || (0, t._)`${r} > ${n} ? ${r} : ${n}`), ), mergeValues: (e, t) => e === !0 || Math.max(e, t), resultToName: (e, t) => e.var(`items`, t), }), }; function _(e, n) { if (n === !0) return e.var(`props`, !0); let r = e.var(`props`, (0, t._)`{}`); return (n !== void 0 && v(e, r, n), r); } e.evaluatedPropsToName = _; function v(e, n, r) { Object.keys(r).forEach((r) => e.assign((0, t._)`${n}${(0, t.getProperty)(r)}`, !0)); } e.setEvaluated = v; let y = {}; function b(e, t) { return e.scopeValue(`func`, { ref: t, code: y[t.code] || (y[t.code] = new n._Code(t.code)) }); } e.useFunc = b; var x; (function (e) { ((e[(e.Num = 0)] = `Num`), (e[(e.Str = 1)] = `Str`)); })(x || (e.Type = x = {})); function S(e, n, r) { if (e instanceof t.Name) { let i = n === x.Num; return r ? i ? (0, t._)`"[" + ${e} + "]"` : (0, t._)`"['" + ${e} + "']"` : i ? (0, t._)`"/" + ${e}` : (0, t._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`; } return r ? (0, t.getProperty)(e).toString() : `/` + p(e); } e.getErrorPath = S; function C(e, t, n = e.opts.strictSchema) { if (n) { if (((t = `strict mode: ${t}`), n === !0)) throw Error(t); e.self.logger.warn(t); } } e.checkStrictMode = C; }), p = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(); e.default = { data: new t.Name(`data`), valCxt: new t.Name(`valCxt`), instancePath: new t.Name(`instancePath`), parentData: new t.Name(`parentData`), parentDataProperty: new t.Name(`parentDataProperty`), rootData: new t.Name(`rootData`), dynamicAnchors: new t.Name(`dynamicAnchors`), vErrors: new t.Name(`vErrors`), errors: new t.Name(`errors`), this: new t.Name(`this`), self: new t.Name(`self`), scope: new t.Name(`scope`), json: new t.Name(`json`), jsonPos: new t.Name(`jsonPos`), jsonLen: new t.Name(`jsonLen`), jsonPart: new t.Name(`jsonPart`), }; }), m = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.extendErrors = e.resetErrorsCount = e.reportExtraError = e.reportError = e.keyword$DataError = e.keywordError = void 0)); let t = d(), n = f(), r = p(); ((e.keywordError = { message: ({ keyword: e }) => (0, t.str)`must pass "${e}" keyword validation`, }), (e.keyword$DataError = { message: ({ keyword: e, schemaType: n }) => n ? (0, t.str)`"${e}" keyword must be ${n} ($data)` : (0, t.str)`"${e}" keyword is invalid ($data)`, })); function i(n, r = e.keywordError, i, a) { let { it: o } = n, { gen: s, compositeRule: u, allErrors: d } = o, f = m(n, r, i); (a ?? (u || d)) ? c(s, f) : l(o, (0, t._)`[${f}]`); } e.reportError = i; function a(t, n = e.keywordError, i) { let { it: a } = t, { gen: o, compositeRule: s, allErrors: u } = a; (c(o, m(t, n, i)), s || u || l(a, r.default.vErrors)); } e.reportExtraError = a; function o(e, n) { (e.assign(r.default.errors, n), e.if((0, t._)`${r.default.vErrors} !== null`, () => e.if( n, () => e.assign((0, t._)`${r.default.vErrors}.length`, n), () => e.assign(r.default.vErrors, null), ), )); } e.resetErrorsCount = o; function s({ gen: e, keyword: n, schemaValue: i, data: a, errsCount: o, it: s }) { if (o === void 0) throw Error(`ajv implementation error`); let c = e.name(`err`); e.forRange(`i`, o, r.default.errors, (o) => { (e.const(c, (0, t._)`${r.default.vErrors}[${o}]`), e.if((0, t._)`${c}.instancePath === undefined`, () => e.assign( (0, t._)`${c}.instancePath`, (0, t.strConcat)(r.default.instancePath, s.errorPath), ), ), e.assign((0, t._)`${c}.schemaPath`, (0, t.str)`${s.errSchemaPath}/${n}`), s.opts.verbose && (e.assign((0, t._)`${c}.schema`, i), e.assign((0, t._)`${c}.data`, a))); }); } e.extendErrors = s; function c(e, n) { let i = e.const(`err`, n); (e.if( (0, t._)`${r.default.vErrors} === null`, () => e.assign(r.default.vErrors, (0, t._)`[${i}]`), (0, t._)`${r.default.vErrors}.push(${i})`, ), e.code((0, t._)`${r.default.errors}++`)); } function l(e, n) { let { gen: r, validateName: i, schemaEnv: a } = e; a.$async ? r.throw((0, t._)`new ${e.ValidationError}(${n})`) : (r.assign((0, t._)`${i}.errors`, n), r.return(!1)); } let u = { keyword: new t.Name(`keyword`), schemaPath: new t.Name(`schemaPath`), params: new t.Name(`params`), propertyName: new t.Name(`propertyName`), message: new t.Name(`message`), schema: new t.Name(`schema`), parentSchema: new t.Name(`parentSchema`), }; function m(e, n, r) { let { createErrors: i } = e.it; return i === !1 ? (0, t._)`{}` : h(e, n, r); } function h(e, t, n = {}) { let { gen: r, it: i } = e, a = [g(i, n), _(e, n)]; return (v(e, t, a), r.object(...a)); } function g({ errorPath: e }, { instancePath: i }) { let a = i ? (0, t.str)`${e}${(0, n.getErrorPath)(i, n.Type.Str)}` : e; return [r.default.instancePath, (0, t.strConcat)(r.default.instancePath, a)]; } function _({ keyword: e, it: { errSchemaPath: r } }, { schemaPath: i, parentSchema: a }) { let o = a ? r : (0, t.str)`${r}/${e}`; return (i && (o = (0, t.str)`${o}${(0, n.getErrorPath)(i, n.Type.Str)}`), [u.schemaPath, o]); } function v(e, { params: n, message: i }, a) { let { keyword: o, data: s, schemaValue: c, it: l } = e, { opts: d, propertyName: f, topSchemaRef: p, schemaPath: m } = l; (a.push([u.keyword, o], [u.params, typeof n == `function` ? n(e) : n || (0, t._)`{}`]), d.messages && a.push([u.message, typeof i == `function` ? i(e) : i]), d.verbose && a.push([u.schema, c], [u.parentSchema, (0, t._)`${p}${m}`], [r.default.data, s]), f && a.push([u.propertyName, f])); } }), h = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.boolOrEmptySchema = e.topBoolOrEmptySchema = void 0)); let t = m(), n = d(), r = p(), i = { message: `boolean schema is false` }; function a(e) { let { gen: t, schema: i, validateName: a } = e; i === !1 ? s(e, !1) : typeof i == `object` && i.$async === !0 ? t.return(r.default.data) : (t.assign((0, n._)`${a}.errors`, null), t.return(!0)); } e.topBoolOrEmptySchema = a; function o(e, t) { let { gen: n, schema: r } = e; r === !1 ? (n.var(t, !1), s(e)) : n.var(t, !0); } e.boolOrEmptySchema = o; function s(e, n) { let { gen: r, data: a } = e, o = { gen: r, keyword: `false schema`, data: a, schema: !1, schemaCode: !1, schemaValue: !1, params: {}, it: e, }; (0, t.reportError)(o, i, void 0, n); } }), g = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.getRules = e.isJSONType = void 0)); let t = new Set([`string`, `number`, `integer`, `boolean`, `null`, `object`, `array`]); function n(e) { return typeof e == `string` && t.has(e); } e.isJSONType = n; function r() { let e = { number: { type: `number`, rules: [] }, string: { type: `string`, rules: [] }, array: { type: `array`, rules: [] }, object: { type: `object`, rules: [] }, }; return { types: { ...e, integer: !0, boolean: !0, null: !0 }, rules: [{ rules: [] }, e.number, e.string, e.array, e.object], post: { rules: [] }, all: {}, keywords: {}, }; } e.getRules = r; }), _ = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.shouldUseRule = e.shouldUseGroup = e.schemaHasRulesForType = void 0)); function t({ schema: e, self: t }, r) { let i = t.RULES.types[r]; return i && i !== !0 && n(e, i); } e.schemaHasRulesForType = t; function n(e, t) { return t.rules.some((t) => r(e, t)); } e.shouldUseGroup = n; function r(e, t) { return e[t.keyword] !== void 0 || t.definition.implements?.some((t) => e[t] !== void 0); } e.shouldUseRule = r; }), v = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.reportTypeError = e.checkDataTypes = e.checkDataType = e.coerceAndCheckDataType = e.getJSONTypes = e.getSchemaTypes = e.DataType = void 0)); let t = g(), n = _(), r = m(), i = d(), a = f(); var o; (function (e) { ((e[(e.Correct = 0)] = `Correct`), (e[(e.Wrong = 1)] = `Wrong`)); })(o || (e.DataType = o = {})); function s(e) { let t = c(e.type); if (t.includes(`null`)) { if (e.nullable === !1) throw Error(`type: null contradicts nullable: false`); } else { if (!t.length && e.nullable !== void 0) throw Error(`"nullable" cannot be used without "type"`); e.nullable === !0 && t.push(`null`); } return t; } e.getSchemaTypes = s; function c(e) { let n = Array.isArray(e) ? e : e ? [e] : []; if (n.every(t.isJSONType)) return n; throw Error(`type must be JSONType or JSONType[]: ` + n.join(`,`)); } e.getJSONTypes = c; function l(e, t) { let { gen: r, data: i, opts: a } = e, s = p(t, a.coerceTypes), c = t.length > 0 && !(s.length === 0 && t.length === 1 && (0, n.schemaHasRulesForType)(e, t[0])); if (c) { let n = b(t, i, a.strictNumbers, o.Wrong); r.if(n, () => { s.length ? h(e, t, s) : S(e); }); } return c; } e.coerceAndCheckDataType = l; let u = new Set([`string`, `number`, `integer`, `boolean`, `null`]); function p(e, t) { return t ? e.filter((e) => u.has(e) || (t === `array` && e === `array`)) : []; } function h(e, t, n) { let { gen: r, data: a, opts: o } = e, s = r.let(`dataType`, (0, i._)`typeof ${a}`), c = r.let(`coerced`, (0, i._)`undefined`); (o.coerceTypes === `array` && r.if((0, i._)`${s} == 'object' && Array.isArray(${a}) && ${a}.length == 1`, () => r .assign(a, (0, i._)`${a}[0]`) .assign(s, (0, i._)`typeof ${a}`) .if(b(t, a, o.strictNumbers), () => r.assign(c, a)), ), r.if((0, i._)`${c} !== undefined`)); for (let e of n) (u.has(e) || (e === `array` && o.coerceTypes === `array`)) && l(e); (r.else(), S(e), r.endIf(), r.if((0, i._)`${c} !== undefined`, () => { (r.assign(a, c), v(e, c)); })); function l(e) { switch (e) { case `string`: r.elseIf((0, i._)`${s} == "number" || ${s} == "boolean"`) .assign(c, (0, i._)`"" + ${a}`) .elseIf((0, i._)`${a} === null`) .assign(c, (0, i._)`""`); return; case `number`: r.elseIf((0, i._)`${s} == "boolean" || ${a} === null || (${s} == "string" && ${a} && ${a} == +${a})`).assign(c, (0, i._)`+${a}`); return; case `integer`: r.elseIf((0, i._)`${s} === "boolean" || ${a} === null || (${s} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign( c, (0, i._)`+${a}`, ); return; case `boolean`: r.elseIf((0, i._)`${a} === "false" || ${a} === 0 || ${a} === null`) .assign(c, !1) .elseIf((0, i._)`${a} === "true" || ${a} === 1`) .assign(c, !0); return; case `null`: (r.elseIf((0, i._)`${a} === "" || ${a} === 0 || ${a} === false`), r.assign(c, null)); return; case `array`: r.elseIf((0, i._)`${s} === "string" || ${s} === "number" || ${s} === "boolean" || ${a} === null`).assign(c, (0, i._)`[${a}]`); } } } function v({ gen: e, parentData: t, parentDataProperty: n }, r) { e.if((0, i._)`${t} !== undefined`, () => e.assign((0, i._)`${t}[${n}]`, r)); } function y(e, t, n, r = o.Correct) { let a = r === o.Correct ? i.operators.EQ : i.operators.NEQ, s; switch (e) { case `null`: return (0, i._)`${t} ${a} null`; case `array`: s = (0, i._)`Array.isArray(${t})`; break; case `object`: s = (0, i._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`; break; case `integer`: s = c((0, i._)`!(${t} % 1) && !isNaN(${t})`); break; case `number`: s = c(); break; default: return (0, i._)`typeof ${t} ${a} ${e}`; } return r === o.Correct ? s : (0, i.not)(s); function c(e = i.nil) { return (0, i.and)( (0, i._)`typeof ${t} == "number"`, e, n ? (0, i._)`isFinite(${t})` : i.nil, ); } } e.checkDataType = y; function b(e, t, n, r) { if (e.length === 1) return y(e[0], t, n, r); let o, s = (0, a.toHash)(e); if (s.array && s.object) { let e = (0, i._)`typeof ${t} != "object"`; ((o = s.null ? e : (0, i._)`!${t} || ${e}`), delete s.null, delete s.array, delete s.object); } else o = i.nil; s.number && delete s.integer; for (let e in s) o = (0, i.and)(o, y(e, t, n, r)); return o; } e.checkDataTypes = b; let x = { message: ({ schema: e }) => `must be ${e}`, params: ({ schema: e, schemaValue: t }) => typeof e == `string` ? (0, i._)`{type: ${e}}` : (0, i._)`{type: ${t}}`, }; function S(e) { let t = C(e); (0, r.reportError)(t, x); } e.reportTypeError = S; function C(e) { let { gen: t, data: n, schema: r } = e, i = (0, a.schemaRefOrVal)(e, r, `type`); return { gen: t, keyword: `type`, data: n, schema: r.type, schemaCode: i, schemaValue: i, parentSchema: r, params: {}, it: e, }; } }), y = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.assignDefaults = void 0)); let t = d(), n = f(); function r(e, t) { let { properties: n, items: r } = e.schema; if (t === `object` && n) for (let t in n) i(e, t, n[t].default); else t === `array` && Array.isArray(r) && r.forEach((t, n) => i(e, n, t.default)); } e.assignDefaults = r; function i(e, r, i) { let { gen: a, compositeRule: o, data: s, opts: c } = e; if (i === void 0) return; let l = (0, t._)`${s}${(0, t.getProperty)(r)}`; if (o) { (0, n.checkStrictMode)(e, `default is ignored for: ${l}`); return; } let u = (0, t._)`${l} === undefined`; (c.useDefaults === `empty` && (u = (0, t._)`${u} || ${l} === null || ${l} === ""`), a.if(u, (0, t._)`${l} = ${(0, t.stringify)(i)}`)); } }), b = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.validateUnion = e.validateArray = e.usePattern = e.callValidateCode = e.schemaProperties = e.allSchemaProperties = e.noPropertyInData = e.propertyInData = e.isOwnProperty = e.hasPropFunc = e.reportMissingProp = e.checkMissingProp = e.checkReportMissingProp = void 0)); let t = d(), n = f(), r = p(), i = f(); function a(e, n) { let { gen: r, data: i, it: a } = e; r.if(m(r, i, n, a.opts.ownProperties), () => { (e.setParams({ missingProperty: (0, t._)`${n}` }, !0), e.error()); }); } e.checkReportMissingProp = a; function o({ gen: e, data: n, it: { opts: r } }, i, a) { return (0, t.or)( ...i.map((i) => (0, t.and)(m(e, n, i, r.ownProperties), (0, t._)`${a} = ${i}`)), ); } e.checkMissingProp = o; function s(e, t) { (e.setParams({ missingProperty: t }, !0), e.error()); } e.reportMissingProp = s; function c(e) { return e.scopeValue(`func`, { ref: Object.prototype.hasOwnProperty, code: (0, t._)`Object.prototype.hasOwnProperty`, }); } e.hasPropFunc = c; function l(e, n, r) { return (0, t._)`${c(e)}.call(${n}, ${r})`; } e.isOwnProperty = l; function u(e, n, r, i) { let a = (0, t._)`${n}${(0, t.getProperty)(r)} !== undefined`; return i ? (0, t._)`${a} && ${l(e, n, r)}` : a; } e.propertyInData = u; function m(e, n, r, i) { let a = (0, t._)`${n}${(0, t.getProperty)(r)} === undefined`; return i ? (0, t.or)(a, (0, t.not)(l(e, n, r))) : a; } e.noPropertyInData = m; function h(e) { return e ? Object.keys(e).filter((e) => e !== `__proto__`) : []; } e.allSchemaProperties = h; function g(e, t) { return h(t).filter((r) => !(0, n.alwaysValidSchema)(e, t[r])); } e.schemaProperties = g; function _( { schemaCode: e, data: n, it: { gen: i, topSchemaRef: a, schemaPath: o, errorPath: s }, it: c, }, l, u, d, ) { let f = d ? (0, t._)`${e}, ${n}, ${a}${o}` : n, p = [ [r.default.instancePath, (0, t.strConcat)(r.default.instancePath, s)], [r.default.parentData, c.parentData], [r.default.parentDataProperty, c.parentDataProperty], [r.default.rootData, r.default.rootData], ]; c.opts.dynamicRef && p.push([r.default.dynamicAnchors, r.default.dynamicAnchors]); let m = (0, t._)`${f}, ${i.object(...p)}`; return u === t.nil ? (0, t._)`${l}(${m})` : (0, t._)`${l}.call(${u}, ${m})`; } e.callValidateCode = _; let v = (0, t._)`new RegExp`; function y({ gen: e, it: { opts: n } }, r) { let a = n.unicodeRegExp ? `u` : ``, { regExp: o } = n.code, s = o(r, a); return e.scopeValue(`pattern`, { key: s.toString(), ref: s, code: (0, t._)`${o.code === `new RegExp` ? v : (0, i.useFunc)(e, o)}(${r}, ${a})`, }); } e.usePattern = y; function b(e) { let { gen: r, data: i, keyword: a, it: o } = e, s = r.name(`valid`); if (o.allErrors) { let e = r.let(`valid`, !0); return (c(() => r.assign(e, !1)), e); } return (r.var(s, !0), c(() => r.break()), s); function c(o) { let c = r.const(`len`, (0, t._)`${i}.length`); r.forRange(`i`, 0, c, (i) => { (e.subschema({ keyword: a, dataProp: i, dataPropType: n.Type.Num }, s), r.if((0, t.not)(s), o)); }); } } e.validateArray = b; function x(e) { let { gen: r, schema: i, keyword: a, it: o } = e; if (!Array.isArray(i)) throw Error(`ajv implementation error`); if (i.some((e) => (0, n.alwaysValidSchema)(o, e)) && !o.opts.unevaluated) return; let s = r.let(`valid`, !1), c = r.name(`_valid`); (r.block(() => i.forEach((n, i) => { let o = e.subschema({ keyword: a, schemaProp: i, compositeRule: !0 }, c); (r.assign(s, (0, t._)`${s} || ${c}`), e.mergeValidEvaluated(o, c) || r.if((0, t.not)(s))); }), ), e.result( s, () => e.reset(), () => e.error(!0), )); } e.validateUnion = x; }), x = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.validateKeywordUsage = e.validSchemaType = e.funcKeywordCode = e.macroKeywordCode = void 0)); let t = d(), n = p(), r = b(), i = m(); function a(e, n) { let { gen: r, keyword: i, schema: a, parentSchema: o, it: s } = e, c = n.macro.call(s.self, a, o, s), l = u(r, i, c); s.opts.validateSchema !== !1 && s.self.validateSchema(c, !0); let d = r.name(`valid`); (e.subschema( { schema: c, schemaPath: t.nil, errSchemaPath: `${s.errSchemaPath}/${i}`, topSchemaRef: l, compositeRule: !0, }, d, ), e.pass(d, () => e.error(!0))); } e.macroKeywordCode = a; function o(e, i) { let { gen: a, keyword: o, schema: d, parentSchema: f, $data: p, it: m } = e; l(m, i); let h = u(a, o, !p && i.compile ? i.compile.call(m.self, d, f, m) : i.validate), g = a.let(`valid`); (e.block$data(g, _), e.ok(i.valid ?? g)); function _() { if (i.errors === !1) (b(), i.modifying && s(e), x(() => e.error())); else { let t = i.async ? v() : y(); (i.modifying && s(e), x(() => c(e, t))); } } function v() { let e = a.let(`ruleErrs`, null); return ( a.try( () => b((0, t._)`await `), (n) => a.assign(g, !1).if( (0, t._)`${n} instanceof ${m.ValidationError}`, () => a.assign(e, (0, t._)`${n}.errors`), () => a.throw(n), ), ), e ); } function y() { let e = (0, t._)`${h}.errors`; return (a.assign(e, null), b(t.nil), e); } function b(o = i.async ? (0, t._)`await ` : t.nil) { let s = m.opts.passContext ? n.default.this : n.default.self, c = !((`compile` in i && !p) || i.schema === !1); a.assign(g, (0, t._)`${o}${(0, r.callValidateCode)(e, h, s, c)}`, i.modifying); } function x(e) { a.if((0, t.not)(i.valid ?? g), e); } } e.funcKeywordCode = o; function s(e) { let { gen: n, data: r, it: i } = e; n.if(i.parentData, () => n.assign(r, (0, t._)`${i.parentData}[${i.parentDataProperty}]`)); } function c(e, r) { let { gen: a } = e; a.if( (0, t._)`Array.isArray(${r})`, () => { (a .assign( n.default.vErrors, (0, t._)`${n.default.vErrors} === null ? ${r} : ${n.default.vErrors}.concat(${r})`, ) .assign(n.default.errors, (0, t._)`${n.default.vErrors}.length`), (0, i.extendErrors)(e)); }, () => e.error(), ); } function l({ schemaEnv: e }, t) { if (t.async && !e.$async) throw Error(`async keyword in sync schema`); } function u(e, n, r) { if (r === void 0) throw Error(`keyword "${n}" failed to compile`); return e.scopeValue( `keyword`, typeof r == `function` ? { ref: r } : { ref: r, code: (0, t.stringify)(r) }, ); } function f(e, t, n = !1) { return ( !t.length || t.some((t) => t === `array` ? Array.isArray(e) : t === `object` ? e && typeof e == `object` && !Array.isArray(e) : typeof e == t || (n && e === void 0), ) ); } e.validSchemaType = f; function h({ schema: e, opts: t, self: n, errSchemaPath: r }, i, a) { if (Array.isArray(i.keyword) ? !i.keyword.includes(a) : i.keyword !== a) throw Error(`ajv implementation error`); let o = i.dependencies; if (o?.some((t) => !Object.prototype.hasOwnProperty.call(e, t))) throw Error(`parent schema must have dependencies of ${a}: ${o.join(`,`)}`); if (i.validateSchema && !i.validateSchema(e[a])) { let e = `keyword "${a}" value is invalid at path "${r}": ` + n.errorsText(i.validateSchema.errors); if (t.validateSchema === `log`) n.logger.error(e); else throw Error(e); } } e.validateKeywordUsage = h; }), S = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.extendSubschemaMode = e.extendSubschemaData = e.getSubschema = void 0)); let t = d(), n = f(); function r( e, { keyword: r, schemaProp: i, schema: a, schemaPath: o, errSchemaPath: s, topSchemaRef: c }, ) { if (r !== void 0 && a !== void 0) throw Error(`both "keyword" and "schema" passed, only one allowed`); if (r !== void 0) { let a = e.schema[r]; return i === void 0 ? { schema: a, schemaPath: (0, t._)`${e.schemaPath}${(0, t.getProperty)(r)}`, errSchemaPath: `${e.errSchemaPath}/${r}`, } : { schema: a[i], schemaPath: (0, t._)`${e.schemaPath}${(0, t.getProperty)(r)}${(0, t.getProperty)(i)}`, errSchemaPath: `${e.errSchemaPath}/${r}/${(0, n.escapeFragment)(i)}`, }; } if (a !== void 0) { if (o === void 0 || s === void 0 || c === void 0) throw Error( `"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"`, ); return { schema: a, schemaPath: o, topSchemaRef: c, errSchemaPath: s }; } throw Error(`either "keyword" or "schema" must be passed`); } e.getSubschema = r; function i(e, r, { dataProp: i, dataPropType: a, data: o, dataTypes: s, propertyName: c }) { if (o !== void 0 && i !== void 0) throw Error(`both "data" and "dataProp" passed, only one allowed`); let { gen: l } = r; if (i !== void 0) { let { errorPath: o, dataPathArr: s, opts: c } = r; (u(l.let(`data`, (0, t._)`${r.data}${(0, t.getProperty)(i)}`, !0)), (e.errorPath = (0, t.str)`${o}${(0, n.getErrorPath)(i, a, c.jsPropertySyntax)}`), (e.parentDataProperty = (0, t._)`${i}`), (e.dataPathArr = [...s, e.parentDataProperty])); } (o !== void 0 && (u(o instanceof t.Name ? o : l.let(`data`, o, !0)), c !== void 0 && (e.propertyName = c)), s && (e.dataTypes = s)); function u(t) { ((e.data = t), (e.dataLevel = r.dataLevel + 1), (e.dataTypes = []), (r.definedProperties = new Set()), (e.parentData = r.data), (e.dataNames = [...r.dataNames, t])); } } e.extendSubschemaData = i; function a( e, { jtdDiscriminator: t, jtdMetadata: n, compositeRule: r, createErrors: i, allErrors: a }, ) { (r !== void 0 && (e.compositeRule = r), i !== void 0 && (e.createErrors = i), a !== void 0 && (e.allErrors = a), (e.jtdDiscriminator = t), (e.jtdMetadata = n)); } e.extendSubschemaMode = a; }), C = o((e, t) => { t.exports = function e(t, n) { if (t === n) return !0; if (t && n && typeof t == `object` && typeof n == `object`) { if (t.constructor !== n.constructor) return !1; var r, i, a; if (Array.isArray(t)) { if (((r = t.length), r != n.length)) return !1; for (i = r; i-- !== 0;) if (!e(t[i], n[i])) return !1; return !0; } if (t.constructor === RegExp) return t.source === n.source && t.flags === n.flags; if (t.valueOf !== Object.prototype.valueOf) return t.valueOf() === n.valueOf(); if (t.toString !== Object.prototype.toString) return t.toString() === n.toString(); if (((a = Object.keys(t)), (r = a.length), r !== Object.keys(n).length)) return !1; for (i = r; i-- !== 0;) if (!Object.prototype.hasOwnProperty.call(n, a[i])) return !1; for (i = r; i-- !== 0;) { var o = a[i]; if (!e(t[o], n[o])) return !1; } return !0; } return t !== t && n !== n; }; }), w = o((e, t) => { var n = (t.exports = function (e, t, n) { (typeof t == `function` && ((n = t), (t = {})), (n = t.cb || n)); var i = typeof n == `function` ? n : n.pre || function () {}, a = n.post || function () {}; r(t, i, a, e, ``, e); }); ((n.keywords = { additionalItems: !0, items: !0, contains: !0, additionalProperties: !0, propertyNames: !0, not: !0, if: !0, then: !0, else: !0, }), (n.arrayKeywords = { items: !0, allOf: !0, anyOf: !0, oneOf: !0 }), (n.propsKeywords = { $defs: !0, definitions: !0, properties: !0, patternProperties: !0, dependencies: !0, }), (n.skipKeywords = { default: !0, enum: !0, const: !0, required: !0, maximum: !0, minimum: !0, exclusiveMaximum: !0, exclusiveMinimum: !0, multipleOf: !0, maxLength: !0, minLength: !0, pattern: !0, format: !0, maxItems: !0, minItems: !0, uniqueItems: !0, maxProperties: !0, minProperties: !0, })); function r(e, t, a, o, s, c, l, u, d, f) { if (o && typeof o == `object` && !Array.isArray(o)) { for (var p in (t(o, s, c, l, u, d, f), o)) { var m = o[p]; if (Array.isArray(m)) { if (p in n.arrayKeywords) for (var h = 0; h < m.length; h++) r(e, t, a, m[h], s + `/` + p + `/` + h, c, s, p, o, h); } else if (p in n.propsKeywords) { if (m && typeof m == `object`) for (var g in m) r(e, t, a, m[g], s + `/` + p + `/` + i(g), c, s, p, o, g); } else (p in n.keywords || (e.allKeys && !(p in n.skipKeywords))) && r(e, t, a, m, s + `/` + p, c, s, p, o); } a(o, s, c, l, u, d, f); } } function i(e) { return e.replace(/~/g, `~0`).replace(/\//g, `~1`); } }), T = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.getSchemaRefs = e.resolveUrl = e.normalizeId = e._getFullPath = e.getFullPath = e.inlineRef = void 0)); let t = f(), n = C(), r = w(), i = new Set([ `type`, `format`, `pattern`, `maxLength`, `minLength`, `maxProperties`, `minProperties`, `maxItems`, `minItems`, `maximum`, `minimum`, `uniqueItems`, `multipleOf`, `required`, `enum`, `const`, ]); function a(e, t = !0) { return typeof e == `boolean` ? !0 : t === !0 ? !s(e) : t ? c(e) <= t : !1; } e.inlineRef = a; let o = new Set([`$ref`, `$recursiveRef`, `$recursiveAnchor`, `$dynamicRef`, `$dynamicAnchor`]); function s(e) { for (let t in e) { if (o.has(t)) return !0; let n = e[t]; if ((Array.isArray(n) && n.some(s)) || (typeof n == `object` && s(n))) return !0; } return !1; } function c(e) { let n = 0; for (let r in e) if ( r === `$ref` || (n++, !i.has(r) && (typeof e[r] == `object` && (0, t.eachItem)(e[r], (e) => (n += c(e))), n === 1 / 0)) ) return 1 / 0; return n; } function l(e, t = ``, n) { return (n !== !1 && (t = p(t)), u(e, e.parse(t))); } e.getFullPath = l; function u(e, t) { return e.serialize(t).split(`#`)[0] + `#`; } e._getFullPath = u; let d = /#\/?$/; function p(e) { return e ? e.replace(d, ``) : ``; } e.normalizeId = p; function m(e, t, n) { return ((n = p(n)), e.resolve(t, n)); } e.resolveUrl = m; let h = /^[a-z_][-a-z0-9._]*$/i; function g(e, t) { if (typeof e == `boolean`) return {}; let { schemaId: i, uriResolver: a } = this.opts, o = p(e[i] || t), s = { "": o }, c = l(a, o, !1), u = {}, d = new Set(); return ( r(e, { allKeys: !0 }, (e, t, n, r) => { if (r === void 0) return; let a = c + t, o = s[r]; (typeof e[i] == `string` && (o = l.call(this, e[i])), g.call(this, e.$anchor), g.call(this, e.$dynamicAnchor), (s[t] = o)); function l(t) { let n = this.opts.uriResolver.resolve; if (((t = p(o ? n(o, t) : t)), d.has(t))) throw m(t); d.add(t); let r = this.refs[t]; return ( typeof r == `string` && (r = this.refs[r]), typeof r == `object` ? f(e, r.schema, t) : t !== p(a) && (t[0] === `#` ? (f(e, u[t], t), (u[t] = e)) : (this.refs[t] = a)), t ); } function g(e) { if (typeof e == `string`) { if (!h.test(e)) throw Error(`invalid anchor "${e}"`); l.call(this, `#${e}`); } } }), u ); function f(e, t, r) { if (t !== void 0 && !n(e, t)) throw m(r); } function m(e) { return Error(`reference "${e}" resolves to more than one schema`); } } e.getSchemaRefs = g; }), E = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.getData = e.KeywordCxt = e.validateFunctionCode = void 0)); let t = h(), n = v(), r = _(), i = v(), a = y(), o = x(), s = S(), c = d(), l = p(), u = T(), g = f(), b = m(); function C(e) { if (N(e) && (F(e), M(e))) { O(e); return; } w(e, () => (0, t.topBoolOrEmptySchema)(e)); } e.validateFunctionCode = C; function w({ gen: e, validateName: t, schema: n, schemaEnv: r, opts: i }, a) { i.code.es5 ? e.func(t, (0, c._)`${l.default.data}, ${l.default.valCxt}`, r.$async, () => { (e.code((0, c._)`"use strict"; ${A(n, i)}`), D(e, i), e.code(a)); }) : e.func(t, (0, c._)`${l.default.data}, ${E(i)}`, r.$async, () => e.code(A(n, i)).code(a)); } function E(e) { return (0, c._)`{${l.default.instancePath}="", ${l.default.parentData}, ${l.default.parentDataProperty}, ${l.default.rootData}=${l.default.data}${e.dynamicRef ? (0, c._)`, ${l.default.dynamicAnchors}={}` : c.nil}}={}`; } function D(e, t) { e.if( l.default.valCxt, () => { (e.var(l.default.instancePath, (0, c._)`${l.default.valCxt}.${l.default.instancePath}`), e.var(l.default.parentData, (0, c._)`${l.default.valCxt}.${l.default.parentData}`), e.var( l.default.parentDataProperty, (0, c._)`${l.default.valCxt}.${l.default.parentDataProperty}`, ), e.var(l.default.rootData, (0, c._)`${l.default.valCxt}.${l.default.rootData}`), t.dynamicRef && e.var( l.default.dynamicAnchors, (0, c._)`${l.default.valCxt}.${l.default.dynamicAnchors}`, )); }, () => { (e.var(l.default.instancePath, (0, c._)`""`), e.var(l.default.parentData, (0, c._)`undefined`), e.var(l.default.parentDataProperty, (0, c._)`undefined`), e.var(l.default.rootData, l.default.data), t.dynamicRef && e.var(l.default.dynamicAnchors, (0, c._)`{}`)); }, ); } function O(e) { let { schema: t, opts: n, gen: r } = e; w(e, () => { (n.$comment && t.$comment && V(e), R(e), r.let(l.default.vErrors, null), r.let(l.default.errors, 0), n.unevaluated && k(e), I(e), H(e)); }); } function k(e) { let { gen: t, validateName: n } = e; ((e.evaluated = t.const(`evaluated`, (0, c._)`${n}.evaluated`)), t.if((0, c._)`${e.evaluated}.dynamicProps`, () => t.assign((0, c._)`${e.evaluated}.props`, (0, c._)`undefined`), ), t.if((0, c._)`${e.evaluated}.dynamicItems`, () => t.assign((0, c._)`${e.evaluated}.items`, (0, c._)`undefined`), )); } function A(e, t) { let n = typeof e == `object` && e[t.schemaId]; return n && (t.code.source || t.code.process) ? (0, c._)`/*# sourceURL=${n} */` : c.nil; } function j(e, n) { if (N(e) && (F(e), M(e))) { P(e, n); return; } (0, t.boolOrEmptySchema)(e, n); } function M({ schema: e, self: t }) { if (typeof e == `boolean`) return !e; for (let n in e) if (t.RULES.all[n]) return !0; return !1; } function N(e) { return typeof e.schema != `boolean`; } function P(e, t) { let { schema: n, gen: r, opts: i } = e; (i.$comment && n.$comment && V(e), z(e), B(e)); let a = r.const(`_errs`, l.default.errors); (I(e, a), r.var(t, (0, c._)`${a} === ${l.default.errors}`)); } function F(e) { ((0, g.checkUnknownRules)(e), L(e)); } function I(e, t) { if (e.opts.jtd) return W(e, [], !1, t); let r = (0, n.getSchemaTypes)(e.schema); W(e, r, !(0, n.coerceAndCheckDataType)(e, r), t); } function L(e) { let { schema: t, errSchemaPath: n, opts: r, self: i } = e; t.$ref && r.ignoreKeywordsWithRef && (0, g.schemaHasRulesButRef)(t, i.RULES) && i.logger.warn(`$ref: keywords ignored in schema at path "${n}"`); } function R(e) { let { schema: t, opts: n } = e; t.default !== void 0 && n.useDefaults && n.strictSchema && (0, g.checkStrictMode)(e, `default is ignored in the schema root`); } function z(e) { let t = e.schema[e.opts.schemaId]; t && (e.baseId = (0, u.resolveUrl)(e.opts.uriResolver, e.baseId, t)); } function B(e) { if (e.schema.$async && !e.schemaEnv.$async) throw Error(`async schema in sync schema`); } function V({ gen: e, schemaEnv: t, schema: n, errSchemaPath: r, opts: i }) { let a = n.$comment; if (i.$comment === !0) e.code((0, c._)`${l.default.self}.logger.log(${a})`); else if (typeof i.$comment == `function`) { let n = (0, c.str)`${r}/$comment`, i = e.scopeValue(`root`, { ref: t.root }); e.code((0, c._)`${l.default.self}.opts.$comment(${a}, ${n}, ${i}.schema)`); } } function H(e) { let { gen: t, schemaEnv: n, validateName: r, ValidationError: i, opts: a } = e; n.$async ? t.if( (0, c._)`${l.default.errors} === 0`, () => t.return(l.default.data), () => t.throw((0, c._)`new ${i}(${l.default.vErrors})`), ) : (t.assign((0, c._)`${r}.errors`, l.default.vErrors), a.unevaluated && U(e), t.return((0, c._)`${l.default.errors} === 0`)); } function U({ gen: e, evaluated: t, props: n, items: r }) { (n instanceof c.Name && e.assign((0, c._)`${t}.props`, n), r instanceof c.Name && e.assign((0, c._)`${t}.items`, r)); } function W(e, t, n, a) { let { gen: o, schema: s, data: u, allErrors: d, opts: f, self: p } = e, { RULES: m } = p; if (s.$ref && (f.ignoreKeywordsWithRef || !(0, g.schemaHasRulesButRef)(s, m))) { o.block(() => Z(e, `$ref`, m.all.$ref.definition)); return; } (f.jtd || ee(e, t), o.block(() => { for (let e of m.rules) h(e); h(m.post); })); function h(p) { (0, r.shouldUseGroup)(s, p) && (p.type ? (o.if((0, i.checkDataType)(p.type, u, f.strictNumbers)), G(e, p), t.length === 1 && t[0] === p.type && n && (o.else(), (0, i.reportTypeError)(e)), o.endIf()) : G(e, p), d || o.if((0, c._)`${l.default.errors} === ${a || 0}`)); } } function G(e, t) { let { gen: n, schema: i, opts: { useDefaults: o }, } = e; (o && (0, a.assignDefaults)(e, t.type), n.block(() => { for (let n of t.rules) (0, r.shouldUseRule)(i, n) && Z(e, n.keyword, n.definition, t.type); })); } function ee(e, t) { e.schemaEnv.meta || !e.opts.strictTypes || (K(e, t), e.opts.allowUnionTypes || te(e, t), ne(e, e.dataTypes)); } function K(e, t) { if (t.length) { if (!e.dataTypes.length) { e.dataTypes = t; return; } (t.forEach((t) => { q(e.dataTypes, t) || Y(e, `type "${t}" not allowed by context "${e.dataTypes.join(`,`)}"`); }), J(e, t)); } } function te(e, t) { t.length > 1 && !(t.length === 2 && t.includes(`null`)) && Y(e, `use allowUnionTypes to allow union type keyword`); } function ne(e, t) { let n = e.self.RULES.all; for (let i in n) { let a = n[i]; if (typeof a == `object` && (0, r.shouldUseRule)(e.schema, a)) { let { type: n } = a.definition; n.length && !n.some((e) => re(t, e)) && Y(e, `missing type "${n.join(`,`)}" for keyword "${i}"`); } } } function re(e, t) { return e.includes(t) || (t === `number` && e.includes(`integer`)); } function q(e, t) { return e.includes(t) || (t === `integer` && e.includes(`number`)); } function J(e, t) { let n = []; for (let r of e.dataTypes) q(t, r) ? n.push(r) : t.includes(`integer`) && r === `number` && n.push(`integer`); e.dataTypes = n; } function Y(e, t) { let n = e.schemaEnv.baseId + e.errSchemaPath; ((t += ` at "${n}" (strictTypes)`), (0, g.checkStrictMode)(e, t, e.opts.strictTypes)); } var X = class { constructor(e, t, n) { if ( ((0, o.validateKeywordUsage)(e, t, n), (this.gen = e.gen), (this.allErrors = e.allErrors), (this.keyword = n), (this.data = e.data), (this.schema = e.schema[n]), (this.$data = t.$data && e.opts.$data && this.schema && this.schema.$data), (this.schemaValue = (0, g.schemaRefOrVal)(e, this.schema, n, this.$data)), (this.schemaType = t.schemaType), (this.parentSchema = e.schema), (this.params = {}), (this.it = e), (this.def = t), this.$data) ) this.schemaCode = e.gen.const(`vSchema`, Q(this.$data, e)); else if ( ((this.schemaCode = this.schemaValue), !(0, o.validSchemaType)(this.schema, t.schemaType, t.allowUndefined)) ) throw Error(`${n} value must be ${JSON.stringify(t.schemaType)}`); (`code` in t ? t.trackErrors : t.errors !== !1) && (this.errsCount = e.gen.const(`_errs`, l.default.errors)); } result(e, t, n) { this.failResult((0, c.not)(e), t, n); } failResult(e, t, n) { (this.gen.if(e), n ? n() : this.error(), t ? (this.gen.else(), t(), this.allErrors && this.gen.endIf()) : this.allErrors ? this.gen.endIf() : this.gen.else()); } pass(e, t) { this.failResult((0, c.not)(e), void 0, t); } fail(e) { if (e === void 0) { (this.error(), this.allErrors || this.gen.if(!1)); return; } (this.gen.if(e), this.error(), this.allErrors ? this.gen.endIf() : this.gen.else()); } fail$data(e) { if (!this.$data) return this.fail(e); let { schemaCode: t } = this; this.fail((0, c._)`${t} !== undefined && (${(0, c.or)(this.invalid$data(), e)})`); } error(e, t, n) { if (t) { (this.setParams(t), this._error(e, n), this.setParams({})); return; } this._error(e, n); } _error(e, t) { (e ? b.reportExtraError : b.reportError)(this, this.def.error, t); } $dataError() { (0, b.reportError)(this, this.def.$dataError || b.keyword$DataError); } reset() { if (this.errsCount === void 0) throw Error(`add "trackErrors" to keyword definition`); (0, b.resetErrorsCount)(this.gen, this.errsCount); } ok(e) { this.allErrors || this.gen.if(e); } setParams(e, t) { t ? Object.assign(this.params, e) : (this.params = e); } block$data(e, t, n = c.nil) { this.gen.block(() => { (this.check$data(e, n), t()); }); } check$data(e = c.nil, t = c.nil) { if (!this.$data) return; let { gen: n, schemaCode: r, schemaType: i, def: a } = this; (n.if((0, c.or)((0, c._)`${r} === undefined`, t)), e !== c.nil && n.assign(e, !0), (i.length || a.validateSchema) && (n.elseIf(this.invalid$data()), this.$dataError(), e !== c.nil && n.assign(e, !1)), n.else()); } invalid$data() { let { gen: e, schemaCode: t, schemaType: n, def: r, it: a } = this; return (0, c.or)(o(), s()); function o() { if (n.length) { if (!(t instanceof c.Name)) throw Error(`ajv implementation error`); let e = Array.isArray(n) ? n : [n]; return (0, c._)`${(0, i.checkDataTypes)(e, t, a.opts.strictNumbers, i.DataType.Wrong)}`; } return c.nil; } function s() { if (r.validateSchema) { let n = e.scopeValue(`validate$data`, { ref: r.validateSchema }); return (0, c._)`!${n}(${t})`; } return c.nil; } } subschema(e, t) { let n = (0, s.getSubschema)(this.it, e); ((0, s.extendSubschemaData)(n, this.it, e), (0, s.extendSubschemaMode)(n, e)); let r = { ...this.it, ...n, items: void 0, props: void 0 }; return (j(r, t), r); } mergeEvaluated(e, t) { let { it: n, gen: r } = this; n.opts.unevaluated && (n.props !== !0 && e.props !== void 0 && (n.props = g.mergeEvaluated.props(r, e.props, n.props, t)), n.items !== !0 && e.items !== void 0 && (n.items = g.mergeEvaluated.items(r, e.items, n.items, t))); } mergeValidEvaluated(e, t) { let { it: n, gen: r } = this; if (n.opts.unevaluated && (n.props !== !0 || n.items !== !0)) return (r.if(t, () => this.mergeEvaluated(e, c.Name)), !0); } }; e.KeywordCxt = X; function Z(e, t, n, r) { let i = new X(e, n, t); `code` in n ? n.code(i, r) : i.$data && n.validate ? (0, o.funcKeywordCode)(i, n) : `macro` in n ? (0, o.macroKeywordCode)(i, n) : (n.compile || n.validate) && (0, o.funcKeywordCode)(i, n); } let ie = /^\/(?:[^~]|~0|~1)*$/, ae = /^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/; function Q(e, { dataLevel: t, dataNames: n, dataPathArr: r }) { let i, a; if (e === ``) return l.default.rootData; if (e[0] === `/`) { if (!ie.test(e)) throw Error(`Invalid JSON-pointer: ${e}`); ((i = e), (a = l.default.rootData)); } else { let o = ae.exec(e); if (!o) throw Error(`Invalid JSON-pointer: ${e}`); let s = +o[1]; if (((i = o[2]), i === `#`)) { if (s >= t) throw Error(u(`property/index`, s)); return r[t - s]; } if (s > t) throw Error(u(`data`, s)); if (((a = n[t - s]), !i)) return a; } let o = a, s = i.split(`/`); for (let e of s) e && ((a = (0, c._)`${a}${(0, c.getProperty)((0, g.unescapeJsonPointer)(e))}`), (o = (0, c._)`${o} && ${a}`)); return o; function u(e, n) { return `Cannot access ${e} ${n} levels up, current level is ${t}`; } } e.getData = Q; }), D = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.default = class extends Error { constructor(e) { (super(`validation failed`), (this.errors = e), (this.ajv = this.validation = !0)); } })); }), O = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = T(); e.default = class extends Error { constructor(e, n, r, i) { (super(i || `can't resolve reference ${r} from id ${n}`), (this.missingRef = (0, t.resolveUrl)(e, n, r)), (this.missingSchema = (0, t.normalizeId)((0, t.getFullPath)(e, this.missingRef)))); } }; }), k = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.resolveSchema = e.getCompilingSchema = e.resolveRef = e.compileSchema = e.SchemaEnv = void 0)); let t = d(), n = D(), r = p(), i = T(), a = f(), o = E(); var s = class { constructor(e) { ((this.refs = {}), (this.dynamicAnchors = {})); let t; (typeof e.schema == `object` && (t = e.schema), (this.schema = e.schema), (this.schemaId = e.schemaId), (this.root = e.root || this), (this.baseId = e.baseId ?? (0, i.normalizeId)(t?.[e.schemaId || `$id`])), (this.schemaPath = e.schemaPath), (this.localRefs = e.localRefs), (this.meta = e.meta), (this.$async = t?.$async), (this.refs = {})); } }; e.SchemaEnv = s; function c(e) { let a = m.call(this, e); if (a) return a; let s = (0, i.getFullPath)(this.opts.uriResolver, e.root.baseId), { es5: c, lines: l } = this.opts.code, { ownProperties: u } = this.opts, d = new t.CodeGen(this.scope, { es5: c, lines: l, ownProperties: u }), f; e.$async && (f = d.scopeValue(`Error`, { ref: n.default, code: (0, t._)`require("ajv/dist/runtime/validation_error").default`, })); let p = d.scopeName(`validate`); e.validateName = p; let h = { gen: d, allErrors: this.opts.allErrors, data: r.default.data, parentData: r.default.parentData, parentDataProperty: r.default.parentDataProperty, dataNames: [r.default.data], dataPathArr: [t.nil], dataLevel: 0, dataTypes: [], definedProperties: new Set(), topSchemaRef: d.scopeValue( `schema`, this.opts.code.source === !0 ? { ref: e.schema, code: (0, t.stringify)(e.schema) } : { ref: e.schema }, ), validateName: p, ValidationError: f, schema: e.schema, schemaEnv: e, rootId: s, baseId: e.baseId || s, schemaPath: t.nil, errSchemaPath: e.schemaPath || (this.opts.jtd ? `` : `#`), errorPath: (0, t._)`""`, opts: this.opts, self: this, }, g; try { (this._compilations.add(e), (0, o.validateFunctionCode)(h), d.optimize(this.opts.code.optimize)); let n = d.toString(); ((g = `${d.scopeRefs(r.default.scope)}return ${n}`), this.opts.code.process && (g = this.opts.code.process(g, e))); let i = Function(`${r.default.self}`, `${r.default.scope}`, g)(this, this.scope.get()); if ( (this.scope.value(p, { ref: i }), (i.errors = null), (i.schema = e.schema), (i.schemaEnv = e), e.$async && (i.$async = !0), this.opts.code.source === !0 && (i.source = { validateName: p, validateCode: n, scopeValues: d._values }), this.opts.unevaluated) ) { let { props: e, items: n } = h; ((i.evaluated = { props: e instanceof t.Name ? void 0 : e, items: n instanceof t.Name ? void 0 : n, dynamicProps: e instanceof t.Name, dynamicItems: n instanceof t.Name, }), i.source && (i.source.evaluated = (0, t.stringify)(i.evaluated))); } return ((e.validate = i), e); } catch (t) { throw ( delete e.validate, delete e.validateName, g && this.logger.error(`Error compiling schema, function code:`, g), t ); } finally { this._compilations.delete(e); } } e.compileSchema = c; function l(e, t, n) { n = (0, i.resolveUrl)(this.opts.uriResolver, t, n); let r = e.refs[n]; if (r) return r; let a = g.call(this, e, n); if (a === void 0) { let r = e.localRefs?.[n], { schemaId: i } = this.opts; r && (a = new s({ schema: r, schemaId: i, root: e, baseId: t })); } if (a !== void 0) return (e.refs[n] = u.call(this, a)); } e.resolveRef = l; function u(e) { return (0, i.inlineRef)(e.schema, this.opts.inlineRefs) ? e.schema : e.validate ? e : c.call(this, e); } function m(e) { for (let t of this._compilations) if (h(t, e)) return t; } e.getCompilingSchema = m; function h(e, t) { return e.schema === t.schema && e.root === t.root && e.baseId === t.baseId; } function g(e, t) { let n; for (; typeof (n = this.refs[t]) == `string`;) t = n; return n || this.schemas[t] || _.call(this, e, t); } function _(e, t) { let n = this.opts.uriResolver.parse(t), r = (0, i._getFullPath)(this.opts.uriResolver, n), a = (0, i.getFullPath)(this.opts.uriResolver, e.baseId, void 0); if (Object.keys(e.schema).length > 0 && r === a) return y.call(this, n, e); let o = (0, i.normalizeId)(r), l = this.refs[o] || this.schemas[o]; if (typeof l == `string`) { let t = _.call(this, e, l); return typeof t?.schema == `object` ? y.call(this, n, t) : void 0; } if (typeof l?.schema == `object`) { if ((l.validate || c.call(this, l), o === (0, i.normalizeId)(t))) { let { schema: t } = l, { schemaId: n } = this.opts, r = t[n]; return ( r && (a = (0, i.resolveUrl)(this.opts.uriResolver, a, r)), new s({ schema: t, schemaId: n, root: e, baseId: a }) ); } return y.call(this, n, l); } } e.resolveSchema = _; let v = new Set([`properties`, `patternProperties`, `enum`, `dependencies`, `definitions`]); function y(e, { baseId: t, schema: n, root: r }) { if (e.fragment?.[0] !== `/`) return; for (let r of e.fragment.slice(1).split(`/`)) { if (typeof n == `boolean`) return; let e = n[(0, a.unescapeFragment)(r)]; if (e === void 0) return; n = e; let o = typeof n == `object` && n[this.opts.schemaId]; !v.has(r) && o && (t = (0, i.resolveUrl)(this.opts.uriResolver, t, o)); } let o; if (typeof n != `boolean` && n.$ref && !(0, a.schemaHasRulesButRef)(n, this.RULES)) { let e = (0, i.resolveUrl)(this.opts.uriResolver, t, n.$ref); o = _.call(this, r, e); } let { schemaId: c } = this.opts; if ( ((o ||= new s({ schema: n, schemaId: c, root: r, baseId: t })), o.schema !== o.root.schema) ) return o; } }), A = o((e, t) => { t.exports = { $id: `https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#`, description: `Meta-schema for $data reference (JSON AnySchema extension proposal)`, type: `object`, required: [`$data`], properties: { $data: { type: `string`, anyOf: [{ format: `relative-json-pointer` }, { format: `json-pointer` }], }, }, additionalProperties: !1, }; }), j = o((e, t) => { let n = RegExp.prototype.test.bind( /^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu, ), r = RegExp.prototype.test.bind( /^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u, ), i = RegExp.prototype.test.bind(/^[\da-f]{2}$/iu), a = RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu), o = RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu); function s(e) { let t = ``, n = 0, r = 0; for (r = 0; r < e.length; r++) if (((n = e[r].charCodeAt(0)), n !== 48)) { if (!((n >= 48 && n <= 57) || (n >= 65 && n <= 70) || (n >= 97 && n <= 102))) return ``; t += e[r]; break; } for (r += 1; r < e.length; r++) { if ( ((n = e[r].charCodeAt(0)), !((n >= 48 && n <= 57) || (n >= 65 && n <= 70) || (n >= 97 && n <= 102))) ) return ``; t += e[r]; } return t; } let c = RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u); function l(e) { return ((e.length = 0), !0); } function u(e, t, n) { if (e.length) { let r = s(e); if (r !== ``) t.push(r); else return ((n.error = !0), !1); e.length = 0; } return !0; } function d(e) { let t = 0, n = { error: !1, address: ``, zone: `` }, r = [], i = [], a = !1, o = !1, c = u; for (let s = 0; s < e.length; s++) { let u = e[s]; if (u !== `[` && u !== `]`) if (u === `:`) { if ((a === !0 && (o = !0), !c(i, r, n))) break; if (++t > 7) { n.error = !0; break; } (s > 0 && e[s - 1] === `:` && (a = !0), r.push(`:`)); continue; } else if (u === `%`) { if (!c(i, r, n)) break; c = l; } else { i.push(u); continue; } } return ( i.length && (c === l ? (n.zone = i.join(``)) : o ? r.push(i.join(``)) : r.push(s(i))), (n.address = r.join(``)), n ); } function f(e) { if (p(e, `:`) < 2) return { host: e, isIPV6: !1 }; let t = d(e); if (t.error) return { host: e, isIPV6: !1 }; { let e = t.address, n = t.address; return ( t.zone && ((e += `%` + t.zone), (n += `%25` + t.zone)), { host: e, isIPV6: !0, escapedHost: n } ); } } function p(e, t) { let n = 0; for (let r = 0; r < e.length; r++) e[r] === t && n++; return n; } function m(e) { let t = e, n = [], r = -1, i = 0; for (; (i = t.length);) { if (i === 1) { if (t === `.`) break; if (t === `/`) { n.push(`/`); break; } else { n.push(t); break; } } else if (i === 2) { if (t[0] === `.`) { if (t[1] === `.`) break; if (t[1] === `/`) { t = t.slice(2); continue; } } else if (t[0] === `/` && (t[1] === `.` || t[1] === `/`)) { n.push(`/`); break; } } else if (i === 3 && t === `/..`) { (n.length !== 0 && n.pop(), n.push(`/`)); break; } if (t[0] === `.`) { if (t[1] === `.`) { if (t[2] === `/`) { t = t.slice(3); continue; } } else if (t[1] === `/`) { t = t.slice(2); continue; } } else if (t[0] === `/` && t[1] === `.`) { if (t[2] === `/`) { t = t.slice(2); continue; } else if (t[2] === `.` && t[3] === `/`) { ((t = t.slice(3)), n.length !== 0 && n.pop()); continue; } } if ((r = t.indexOf(`/`, 1)) === -1) { n.push(t); break; } else (n.push(t.slice(0, r)), (t = t.slice(r))); } return n.join(``); } let h = { "@": `%40`, "/": `%2F`, "?": `%3F`, "#": `%23`, ":": `%3A` }, g = /[@/?#:]/g, _ = /[@/?#]/g; function v(e, t) { let n = t ? _ : g; return ((n.lastIndex = 0), e.replace(n, (e) => h[e])); } function y(e, t = !1) { if (e.indexOf(`%`) === -1) return e; let n = ``; for (let r = 0; r < e.length; r++) { if (e[r] === `%` && r + 2 < e.length) { let o = e.slice(r + 1, r + 3); if (i(o)) { let e = o.toUpperCase(), i = String.fromCharCode(parseInt(e, 16)); (t && a(i) ? (n += i) : (n += `%` + e), (r += 2)); continue; } } n += e[r]; } return n; } function b(e) { let t = ``; for (let n = 0; n < e.length; n++) { if (e[n] === `%` && n + 2 < e.length) { let r = e.slice(n + 1, n + 3); if (i(r)) { let e = r.toUpperCase(), i = String.fromCharCode(parseInt(e, 16)); (i !== `.` && a(i) ? (t += i) : (t += `%` + e), (n += 2)); continue; } } o(e[n]) ? (t += e[n]) : (t += escape(e[n])); } return t; } function x(e) { let t = ``; for (let n = 0; n < e.length; n++) { if (e[n] === `%` && n + 2 < e.length) { let r = e.slice(n + 1, n + 3); if (i(r)) { ((t += `%` + r.toUpperCase()), (n += 2)); continue; } } t += escape(e[n]); } return t; } function S(e) { let t = []; if ((e.userinfo !== void 0 && (t.push(e.userinfo), t.push(`@`)), e.host !== void 0)) { let n = unescape(e.host); if (!r(n)) { let e = f(n); n = e.isIPV6 === !0 ? `[${e.escapedHost}]` : v(n, !1); } t.push(n); } return ( (typeof e.port == `number` || typeof e.port == `string`) && (t.push(`:`), t.push(String(e.port))), t.length ? t.join(``) : void 0 ); } t.exports = { nonSimpleDomain: c, recomposeAuthority: S, reescapeHostDelimiters: v, normalizePercentEncoding: y, normalizePathEncoding: b, escapePreservingEscapes: x, removeDotSegments: m, isIPv4: r, isUUID: n, normalizeIPv6: f, stringArrayToHexStripped: s, }; }), M = o((e, t) => { let { isUUID: n } = j(), r = /([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu, i = [`http`, `https`, `ws`, `wss`, `urn`, `urn:uuid`]; function a(e) { return i.indexOf(e) !== -1; } function o(e) { return e.secure === !0 ? !0 : e.secure === !1 ? !1 : e.scheme ? e.scheme.length === 3 && (e.scheme[0] === `w` || e.scheme[0] === `W`) && (e.scheme[1] === `s` || e.scheme[1] === `S`) && (e.scheme[2] === `s` || e.scheme[2] === `S`) : !1; } function s(e) { return (e.host || (e.error = e.error || `HTTP URIs must have a host.`), e); } function c(e) { let t = String(e.scheme).toLowerCase() === `https`; return ( (e.port === (t ? 443 : 80) || e.port === ``) && (e.port = void 0), (e.path ||= `/`), e ); } function l(e) { return ( (e.secure = o(e)), (e.resourceName = (e.path || `/`) + (e.query ? `?` + e.query : ``)), (e.path = void 0), (e.query = void 0), e ); } function u(e) { if ( ((e.port === (o(e) ? 443 : 80) || e.port === ``) && (e.port = void 0), typeof e.secure == `boolean` && ((e.scheme = e.secure ? `wss` : `ws`), (e.secure = void 0)), e.resourceName) ) { let [t, n] = e.resourceName.split(`?`); ((e.path = t && t !== `/` ? t : void 0), (e.query = n), (e.resourceName = void 0)); } return ((e.fragment = void 0), e); } function d(e, t) { if (!e.path) return ((e.error = `URN can not be parsed`), e); let n = e.path.match(r); if (n) { let r = t.scheme || e.scheme || `urn`; ((e.nid = n[1].toLowerCase()), (e.nss = n[2])); let i = y(`${r}:${t.nid || e.nid}`); ((e.path = void 0), i && (e = i.parse(e, t))); } else e.error = e.error || `URN can not be parsed.`; return e; } function f(e, t) { if (e.nid === void 0) throw Error(`URN without nid cannot be serialized`); let n = t.scheme || e.scheme || `urn`, r = e.nid.toLowerCase(), i = y(`${n}:${t.nid || r}`); i && (e = i.serialize(e, t)); let a = e, o = e.nss; return ((a.path = `${r || t.nid}:${o}`), (t.skipEscape = !0), a); } function p(e, t) { let r = e; return ( (r.uuid = r.nss), (r.nss = void 0), !t.tolerant && (!r.uuid || !n(r.uuid)) && (r.error = r.error || `UUID is not valid.`), r ); } function m(e) { let t = e; return ((t.nss = (e.uuid || ``).toLowerCase()), t); } let h = { scheme: `http`, domainHost: !0, parse: s, serialize: c }, g = { scheme: `https`, domainHost: h.domainHost, parse: s, serialize: c }, _ = { scheme: `ws`, domainHost: !0, parse: l, serialize: u }, v = { http: h, https: g, ws: _, wss: { scheme: `wss`, domainHost: _.domainHost, parse: _.parse, serialize: _.serialize }, urn: { scheme: `urn`, parse: d, serialize: f, skipNormalize: !0 }, "urn:uuid": { scheme: `urn:uuid`, parse: p, serialize: m, skipNormalize: !0 }, }; Object.setPrototypeOf(v, null); function y(e) { return (e && (v[e] || v[e.toLowerCase()])) || void 0; } t.exports = { wsIsSecure: o, SCHEMES: v, isValidSchemeName: a, getSchemeHandler: y }; }), N = o((e, t) => { let { normalizeIPv6: n, removeDotSegments: r, recomposeAuthority: i, normalizePercentEncoding: a, normalizePathEncoding: o, escapePreservingEscapes: s, reescapeHostDelimiters: c, isIPv4: l, nonSimpleDomain: u, } = j(), { SCHEMES: d, getSchemeHandler: f } = M(); function p(e, t) { return ( typeof e == `string` ? (e = C(e, t)) : typeof e == `object` && (e = S(_(e, t), t)), e ); } function m(e, t, n) { let r = n ? Object.assign({ scheme: `null` }, n) : { scheme: `null` }, i = h(S(e, r), S(t, r), r, !0); return ((r.skipEscape = !0), _(i, r)); } function h(e, t, n, i) { let a = {}; return ( i || ((e = S(_(e, n), n)), (t = S(_(t, n), n))), (n ||= {}), !n.tolerant && t.scheme ? ((a.scheme = t.scheme), (a.userinfo = t.userinfo), (a.host = t.host), (a.port = t.port), (a.path = r(t.path || ``)), (a.query = t.query)) : (t.userinfo !== void 0 || t.host !== void 0 || t.port !== void 0 ? ((a.userinfo = t.userinfo), (a.host = t.host), (a.port = t.port), (a.path = r(t.path || ``)), (a.query = t.query)) : (t.path ? (t.path[0] === `/` ? (a.path = r(t.path)) : ((e.userinfo !== void 0 || e.host !== void 0 || e.port !== void 0) && !e.path ? (a.path = `/` + t.path) : e.path ? (a.path = e.path.slice(0, e.path.lastIndexOf(`/`) + 1) + t.path) : (a.path = t.path), (a.path = r(a.path))), (a.query = t.query)) : ((a.path = e.path), t.query === void 0 ? (a.query = e.query) : (a.query = t.query)), (a.userinfo = e.userinfo), (a.host = e.host), (a.port = e.port)), (a.scheme = e.scheme)), (a.fragment = t.fragment), a ); } function g(e, t, n) { let r = T(e, n), i = T(t, n); return r !== void 0 && i !== void 0 && r.toLowerCase() === i.toLowerCase(); } function _(e, t) { let n = { host: e.host, scheme: e.scheme, userinfo: e.userinfo, port: e.port, path: e.path, query: e.query, nid: e.nid, nss: e.nss, uuid: e.uuid, fragment: e.fragment, reference: e.reference, resourceName: e.resourceName, secure: e.secure, error: ``, }, o = Object.assign({}, t), c = [], l = f(o.scheme || n.scheme); (l && l.serialize && l.serialize(n, o), n.path !== void 0 && (o.skipEscape ? (n.path = a(n.path)) : ((n.path = s(n.path)), n.scheme !== void 0 && (n.path = n.path.split(`%3A`).join(`:`)))), o.reference !== `suffix` && n.scheme && c.push(n.scheme, `:`)); let u = i(n); if ( (u !== void 0 && (o.reference !== `suffix` && c.push(`//`), c.push(u), n.path && n.path[0] !== `/` && c.push(`/`)), n.path !== void 0) ) { let e = n.path; (!o.absolutePath && (!l || !l.absolutePath) && (e = r(e)), u === void 0 && e[0] === `/` && e[1] === `/` && (e = `/%2F` + e.slice(2)), c.push(e)); } return ( n.query !== void 0 && c.push(`?`, n.query), n.fragment !== void 0 && c.push(`#`, n.fragment), c.join(``) ); } let v = /^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u, y = /^(?:[^#/:?]+:)?\/\/([^/?#]*)/; function b(e, t) { if (t[2] !== void 0 && e.path && e.path[0] !== `/`) return `URI path must start with "/" when authority is present.`; if (typeof e.port == `number` && (e.port < 0 || e.port > 65535)) return `URI port is malformed.`; } function x(e, t) { let r = Object.assign({}, t), i = { scheme: void 0, userinfo: void 0, host: ``, port: void 0, path: ``, query: void 0, fragment: void 0, }, a = !1, s = !1; r.reference === `suffix` && (e = r.scheme ? r.scheme + `:` + e : `//` + e); let d = e.match(y); d !== null && d[1].indexOf(`\\`) !== -1 && ((i.error = `URI authority must not contain a literal backslash.`), (a = !0)); let p = e.match(v); if (p) { ((i.scheme = p[1]), (i.userinfo = p[3]), (i.host = p[4]), (i.port = parseInt(p[5], 10)), (i.path = p[6] || ``), (i.query = p[7]), (i.fragment = p[8]), isNaN(i.port) && (i.port = p[5])); let t = b(i, p); if ((t !== void 0 && ((i.error = i.error || t), (a = !0)), i.host)) if (l(i.host) === !1) { let e = n(i.host); ((i.host = e.host.toLowerCase()), (s = e.isIPV6)); } else s = !0; (i.scheme === void 0 && i.userinfo === void 0 && i.host === void 0 && i.port === void 0 && i.query === void 0 && !i.path ? (i.reference = `same-document`) : i.scheme === void 0 ? (i.reference = `relative`) : i.fragment === void 0 ? (i.reference = `absolute`) : (i.reference = `uri`), r.reference && r.reference !== `suffix` && r.reference !== i.reference && (i.error = i.error || `URI is not a ` + r.reference + ` reference.`)); let d = f(r.scheme || i.scheme); if ( !r.unicodeSupport && (!d || !d.unicodeSupport) && i.host && (r.domainHost || (d && d.domainHost)) && s === !1 && u(i.host) ) try { i.host = new URL(`http://` + i.host).hostname; } catch (e) { i.error = i.error || `Host's domain name can not be converted to ASCII: ` + e; } if ( (!d || (d && !d.skipNormalize)) && (e.indexOf(`%`) !== -1 && (i.scheme !== void 0 && (i.scheme = unescape(i.scheme)), i.host !== void 0 && (i.host = c(unescape(i.host), s))), (i.path &&= o(i.path)), i.fragment) ) try { i.fragment = encodeURI(decodeURIComponent(i.fragment)); } catch { i.error = i.error || `URI malformed`; } d && d.parse && d.parse(i, r); } else i.error = i.error || `URI can not be parsed.`; return { parsed: i, malformedAuthorityOrPort: a }; } function S(e, t) { return x(e, t).parsed; } function C(e, t) { return w(e, t).normalized; } function w(e, t) { let { parsed: n, malformedAuthorityOrPort: r } = x(e, t); return { normalized: r ? e : _(n, t), malformedAuthorityOrPort: r }; } function T(e, t) { if (typeof e == `string`) { let { normalized: n, malformedAuthorityOrPort: r } = w(e, t); return r ? void 0 : n; } if (typeof e == `object`) return _(e, t); } let E = { SCHEMES: d, normalize: p, resolve: m, resolveComponent: h, equal: g, serialize: _, parse: S, }; ((t.exports = E), (t.exports.default = E), (t.exports.fastUri = E)); }), P = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = N(); ((t.code = `require("ajv/dist/runtime/uri").default`), (e.default = t)); }), F = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.CodeGen = e.Name = e.nil = e.stringify = e.str = e._ = e.KeywordCxt = void 0)); var t = E(); Object.defineProperty(e, "KeywordCxt", { enumerable: !0, get: function () { return t.KeywordCxt; }, }); var n = d(); (Object.defineProperty(e, "_", { enumerable: !0, get: function () { return n._; }, }), Object.defineProperty(e, "str", { enumerable: !0, get: function () { return n.str; }, }), Object.defineProperty(e, "stringify", { enumerable: !0, get: function () { return n.stringify; }, }), Object.defineProperty(e, "nil", { enumerable: !0, get: function () { return n.nil; }, }), Object.defineProperty(e, "Name", { enumerable: !0, get: function () { return n.Name; }, }), Object.defineProperty(e, "CodeGen", { enumerable: !0, get: function () { return n.CodeGen; }, })); let r = D(), i = O(), a = g(), o = k(), s = d(), c = T(), l = v(), u = f(), p = A(), m = P(), h = (e, t) => new RegExp(e, t); h.code = `new RegExp`; let _ = [`removeAdditional`, `useDefaults`, `coerceTypes`], y = new Set([ `validate`, `serialize`, `parse`, `wrapper`, `root`, `schema`, `keyword`, `pattern`, `formats`, `validate$data`, `func`, `obj`, `Error`, ]), b = { errorDataPath: ``, format: "`validateFormats: false` can be used instead.", nullable: `"nullable" keyword is supported by default.`, jsonPointers: `Deprecated jsPropertySyntax can be used instead.`, extendRefs: `Deprecated ignoreKeywordsWithRef can be used instead.`, missingRefs: `Pass empty schema with $id that should be ignored to ajv.addSchema.`, processCode: "Use option `code: {process: (code, schemaEnv: object) => string}`", sourceCode: "Use option `code: {source: true}`", strictDefaults: "It is default now, see option `strict`.", strictKeywords: "It is default now, see option `strict`.", uniqueItems: `"uniqueItems" keyword is always validated.`, unknownFormats: "Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).", cache: `Map is used as cache, schema object as key.`, serialize: `Map is used as cache, schema object as key.`, ajvErrors: `It is default now.`, }, x = { ignoreKeywordsWithRef: ``, jsPropertySyntax: ``, unicode: `"minLength"/"maxLength" account for unicode characters by default.`, }; function S(e) { let t = e.strict, n = e.code?.optimize, r = n === !0 || n === void 0 ? 1 : n || 0, i = e.code?.regExp ?? h, a = e.uriResolver ?? m.default; return { strictSchema: e.strictSchema ?? t ?? !0, strictNumbers: e.strictNumbers ?? t ?? !0, strictTypes: e.strictTypes ?? t ?? `log`, strictTuples: e.strictTuples ?? t ?? `log`, strictRequired: e.strictRequired ?? t ?? !1, code: e.code ? { ...e.code, optimize: r, regExp: i } : { optimize: r, regExp: i }, loopRequired: e.loopRequired ?? 200, loopEnum: e.loopEnum ?? 200, meta: e.meta ?? !0, messages: e.messages ?? !0, inlineRefs: e.inlineRefs ?? !0, schemaId: e.schemaId ?? `$id`, addUsedSchema: e.addUsedSchema ?? !0, validateSchema: e.validateSchema ?? !0, validateFormats: e.validateFormats ?? !0, unicodeRegExp: e.unicodeRegExp ?? !0, int32range: e.int32range ?? !0, uriResolver: a, }; } var C = class { constructor(e = {}) { ((this.schemas = {}), (this.refs = {}), (this.formats = Object.create(null)), (this._compilations = new Set()), (this._loading = {}), (this._cache = new Map()), (e = this.opts = { ...e, ...S(e) })); let { es5: t, lines: n } = this.opts.code; ((this.scope = new s.ValueScope({ scope: {}, prefixes: y, es5: t, lines: n })), (this.logger = R(e.logger))); let r = e.validateFormats; ((e.validateFormats = !1), (this.RULES = (0, a.getRules)()), w.call(this, b, e, `NOT SUPPORTED`), w.call(this, x, e, `DEPRECATED`, `warn`), (this._metaOpts = I.call(this)), e.formats && N.call(this), this._addVocabularies(), this._addDefaultMetaSchema(), e.keywords && F.call(this, e.keywords), typeof e.meta == `object` && this.addMetaSchema(e.meta), M.call(this), (e.validateFormats = r)); } _addVocabularies() { this.addKeyword(`$async`); } _addDefaultMetaSchema() { let { $data: e, meta: t, schemaId: n } = this.opts, r = p; (n === `id` && ((r = { ...p }), (r.id = r.$id), delete r.$id), t && e && this.addMetaSchema(r, r[n], !1)); } defaultMeta() { let { meta: e, schemaId: t } = this.opts; return (this.opts.defaultMeta = typeof e == `object` ? e[t] || e : void 0); } validate(e, t) { let n; if (typeof e == `string`) { if (((n = this.getSchema(e)), !n)) throw Error(`no schema with key or ref "${e}"`); } else n = this.compile(e); let r = n(t); return (`$async` in n || (this.errors = n.errors), r); } compile(e, t) { let n = this._addSchema(e, t); return n.validate || this._compileSchemaEnv(n); } compileAsync(e, t) { if (typeof this.opts.loadSchema != `function`) throw Error(`options.loadSchema should be a function`); let { loadSchema: n } = this.opts; return r.call(this, e, t); async function r(e, t) { await a.call(this, e.$schema); let n = this._addSchema(e, t); return n.validate || o.call(this, n); } async function a(e) { e && !this.getSchema(e) && (await r.call(this, { $ref: e }, !0)); } async function o(e) { try { return this._compileSchemaEnv(e); } catch (t) { if (!(t instanceof i.default)) throw t; return (s.call(this, t), await c.call(this, t.missingSchema), o.call(this, e)); } } function s({ missingSchema: e, missingRef: t }) { if (this.refs[e]) throw Error(`AnySchema ${e} is loaded but ${t} cannot be resolved`); } async function c(e) { let n = await l.call(this, e); (this.refs[e] || (await a.call(this, n.$schema)), this.refs[e] || this.addSchema(n, e, t)); } async function l(e) { let t = this._loading[e]; if (t) return t; try { return await (this._loading[e] = n(e)); } finally { delete this._loading[e]; } } } addSchema(e, t, n, r = this.opts.validateSchema) { if (Array.isArray(e)) { for (let t of e) this.addSchema(t, void 0, n, r); return this; } let i; if (typeof e == `object`) { let { schemaId: t } = this.opts; if (((i = e[t]), i !== void 0 && typeof i != `string`)) throw Error(`schema ${t} must be string`); } return ( (t = (0, c.normalizeId)(t || i)), this._checkUnique(t), (this.schemas[t] = this._addSchema(e, n, t, r, !0)), this ); } addMetaSchema(e, t, n = this.opts.validateSchema) { return (this.addSchema(e, t, !0, n), this); } validateSchema(e, t) { if (typeof e == `boolean`) return !0; let n; if (((n = e.$schema), n !== void 0 && typeof n != `string`)) throw Error(`$schema must be a string`); if (((n = n || this.opts.defaultMeta || this.defaultMeta()), !n)) return (this.logger.warn(`meta-schema not available`), (this.errors = null), !0); let r = this.validate(n, e); if (!r && t) { let e = `schema is invalid: ` + this.errorsText(); if (this.opts.validateSchema === `log`) this.logger.error(e); else throw Error(e); } return r; } getSchema(e) { let t; for (; typeof (t = j.call(this, e)) == `string`;) e = t; if (t === void 0) { let { schemaId: n } = this.opts, r = new o.SchemaEnv({ schema: {}, schemaId: n }); if (((t = o.resolveSchema.call(this, r, e)), !t)) return; this.refs[e] = t; } return t.validate || this._compileSchemaEnv(t); } removeSchema(e) { if (e instanceof RegExp) return ( this._removeAllSchemas(this.schemas, e), this._removeAllSchemas(this.refs, e), this ); switch (typeof e) { case `undefined`: return ( this._removeAllSchemas(this.schemas), this._removeAllSchemas(this.refs), this._cache.clear(), this ); case `string`: { let t = j.call(this, e); return ( typeof t == `object` && this._cache.delete(t.schema), delete this.schemas[e], delete this.refs[e], this ); } case `object`: { let t = e; this._cache.delete(t); let n = e[this.opts.schemaId]; return ( n && ((n = (0, c.normalizeId)(n)), delete this.schemas[n], delete this.refs[n]), this ); } default: throw Error(`ajv.removeSchema: invalid parameter`); } } addVocabulary(e) { for (let t of e) this.addKeyword(t); return this; } addKeyword(e, t) { let n; if (typeof e == `string`) ((n = e), typeof t == `object` && (this.logger.warn(`these parameters are deprecated, see docs for addKeyword`), (t.keyword = n))); else if (typeof e == `object` && t === void 0) { if (((t = e), (n = t.keyword), Array.isArray(n) && !n.length)) throw Error(`addKeywords: keyword must be string or non-empty array`); } else throw Error(`invalid addKeywords parameters`); if ((B.call(this, n, t), !t)) return ((0, u.eachItem)(n, (e) => V.call(this, e)), this); U.call(this, t); let r = { ...t, type: (0, l.getJSONTypes)(t.type), schemaType: (0, l.getJSONTypes)(t.schemaType), }; return ( (0, u.eachItem)( n, r.type.length === 0 ? (e) => V.call(this, e, r) : (e) => r.type.forEach((t) => V.call(this, e, r, t)), ), this ); } getKeyword(e) { let t = this.RULES.all[e]; return typeof t == `object` ? t.definition : !!t; } removeKeyword(e) { let { RULES: t } = this; (delete t.keywords[e], delete t.all[e]); for (let n of t.rules) { let t = n.rules.findIndex((t) => t.keyword === e); t >= 0 && n.rules.splice(t, 1); } return this; } addFormat(e, t) { return (typeof t == `string` && (t = new RegExp(t)), (this.formats[e] = t), this); } errorsText(e = this.errors, { separator: t = `, `, dataVar: n = `data` } = {}) { return !e || e.length === 0 ? `No errors` : e.map((e) => `${n}${e.instancePath} ${e.message}`).reduce((e, n) => e + t + n); } $dataMetaSchema(e, t) { let n = this.RULES.all; e = JSON.parse(JSON.stringify(e)); for (let r of t) { let t = r.split(`/`).slice(1), i = e; for (let e of t) i = i[e]; for (let e in n) { let t = n[e]; if (typeof t != `object`) continue; let { $data: r } = t.definition, a = i[e]; r && a && (i[e] = G(a)); } } return e; } _removeAllSchemas(e, t) { for (let n in e) { let r = e[n]; (!t || t.test(n)) && (typeof r == `string` ? delete e[n] : r && !r.meta && (this._cache.delete(r.schema), delete e[n])); } } _addSchema(e, t, n, r = this.opts.validateSchema, i = this.opts.addUsedSchema) { let a, { schemaId: s } = this.opts; if (typeof e == `object`) a = e[s]; else if (this.opts.jtd) throw Error(`schema must be object`); else if (typeof e != `boolean`) throw Error(`schema must be object or boolean`); let l = this._cache.get(e); if (l !== void 0) return l; n = (0, c.normalizeId)(a || n); let u = c.getSchemaRefs.call(this, e, n); return ( (l = new o.SchemaEnv({ schema: e, schemaId: s, meta: t, baseId: n, localRefs: u })), this._cache.set(l.schema, l), i && !n.startsWith(`#`) && (n && this._checkUnique(n), (this.refs[n] = l)), r && this.validateSchema(e, !0), l ); } _checkUnique(e) { if (this.schemas[e] || this.refs[e]) throw Error(`schema with key or id "${e}" already exists`); } _compileSchemaEnv(e) { if ((e.meta ? this._compileMetaSchema(e) : o.compileSchema.call(this, e), !e.validate)) throw Error(`ajv implementation error`); return e.validate; } _compileMetaSchema(e) { let t = this.opts; this.opts = this._metaOpts; try { o.compileSchema.call(this, e); } finally { this.opts = t; } } }; ((C.ValidationError = r.default), (C.MissingRefError = i.default), (e.default = C)); function w(e, t, n, r = `error`) { for (let i in e) { let a = i; a in t && this.logger[r](`${n}: option ${i}. ${e[a]}`); } } function j(e) { return ((e = (0, c.normalizeId)(e)), this.schemas[e] || this.refs[e]); } function M() { let e = this.opts.schemas; if (e) if (Array.isArray(e)) this.addSchema(e); else for (let t in e) this.addSchema(e[t], t); } function N() { for (let e in this.opts.formats) { let t = this.opts.formats[e]; t && this.addFormat(e, t); } } function F(e) { if (Array.isArray(e)) { this.addVocabulary(e); return; } this.logger.warn(`keywords option as map is deprecated, pass array`); for (let t in e) { let n = e[t]; ((n.keyword ||= t), this.addKeyword(n)); } } function I() { let e = { ...this.opts }; for (let t of _) delete e[t]; return e; } let L = { log() {}, warn() {}, error() {} }; function R(e) { if (e === !1) return L; if (e === void 0) return console; if (e.log && e.warn && e.error) return e; throw Error(`logger must implement log, warn and error methods`); } let z = /^[a-z_$][a-z0-9_$:-]*$/i; function B(e, t) { let { RULES: n } = this; if ( ((0, u.eachItem)(e, (e) => { if (n.keywords[e]) throw Error(`Keyword ${e} is already defined`); if (!z.test(e)) throw Error(`Keyword ${e} has invalid name`); }), t && t.$data && !(`code` in t || `validate` in t)) ) throw Error(`$data keyword must have "code" or "validate" function`); } function V(e, t, n) { var r; let i = t?.post; if (n && i) throw Error(`keyword with "post" flag cannot have "type"`); let { RULES: a } = this, o = i ? a.post : a.rules.find(({ type: e }) => e === n); if ((o || ((o = { type: n, rules: [] }), a.rules.push(o)), (a.keywords[e] = !0), !t)) return; let s = { keyword: e, definition: { ...t, type: (0, l.getJSONTypes)(t.type), schemaType: (0, l.getJSONTypes)(t.schemaType), }, }; (t.before ? H.call(this, o, s, t.before) : o.rules.push(s), (a.all[e] = s), (r = t.implements) == null || r.forEach((e) => this.addKeyword(e))); } function H(e, t, n) { let r = e.rules.findIndex((e) => e.keyword === n); r >= 0 ? e.rules.splice(r, 0, t) : (e.rules.push(t), this.logger.warn(`rule ${n} is not defined`)); } function U(e) { let { metaSchema: t } = e; t !== void 0 && (e.$data && this.opts.$data && (t = G(t)), (e.validateSchema = this.compile(t, !0))); } let W = { $ref: `https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#`, }; function G(e) { return { anyOf: [e, W] }; } }), I = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.default = { keyword: `id`, code() { throw Error(`NOT SUPPORTED: keyword "id", use "$id" for schema ID`); }, })); }), L = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.callRef = e.getValidate = void 0)); let t = O(), n = b(), r = d(), i = p(), a = k(), o = f(), s = { keyword: `$ref`, schemaType: `string`, code(e) { let { gen: n, schema: i, it: o } = e, { baseId: s, schemaEnv: u, validateName: d, opts: f, self: p } = o, { root: m } = u; if ((i === `#` || i === `#/`) && s === m.baseId) return g(); let h = a.resolveRef.call(p, m, s, i); if (h === void 0) throw new t.default(o.opts.uriResolver, s, i); if (h instanceof a.SchemaEnv) return _(h); return v(h); function g() { if (u === m) return l(e, d, u, u.$async); let t = n.scopeValue(`root`, { ref: m }); return l(e, (0, r._)`${t}.validate`, m, m.$async); } function _(t) { l(e, c(e, t), t, t.$async); } function v(t) { let a = n.scopeValue( `schema`, f.code.source === !0 ? { ref: t, code: (0, r.stringify)(t) } : { ref: t }, ), o = n.name(`valid`), s = e.subschema( { schema: t, dataTypes: [], schemaPath: r.nil, topSchemaRef: a, errSchemaPath: i }, o, ); (e.mergeEvaluated(s), e.ok(o)); } }, }; function c(e, t) { let { gen: n } = e; return t.validate ? n.scopeValue(`validate`, { ref: t.validate }) : (0, r._)`${n.scopeValue(`wrapper`, { ref: t })}.validate`; } e.getValidate = c; function l(e, t, a, s) { let { gen: c, it: l } = e, { allErrors: u, schemaEnv: d, opts: f } = l, p = f.passContext ? i.default.this : r.nil; s ? m() : h(); function m() { if (!d.$async) throw Error(`async schema referenced by sync schema`); let i = c.let(`valid`); (c.try( () => { (c.code((0, r._)`await ${(0, n.callValidateCode)(e, t, p)}`), _(t), u || c.assign(i, !0)); }, (e) => { (c.if((0, r._)`!(${e} instanceof ${l.ValidationError})`, () => c.throw(e)), g(e), u || c.assign(i, !1)); }, ), e.ok(i)); } function h() { e.result( (0, n.callValidateCode)(e, t, p), () => _(t), () => g(t), ); } function g(e) { let t = (0, r._)`${e}.errors`; (c.assign( i.default.vErrors, (0, r._)`${i.default.vErrors} === null ? ${t} : ${i.default.vErrors}.concat(${t})`, ), c.assign(i.default.errors, (0, r._)`${i.default.vErrors}.length`)); } function _(e) { if (!l.opts.unevaluated) return; let t = a?.validate?.evaluated; if (l.props !== !0) if (t && !t.dynamicProps) t.props !== void 0 && (l.props = o.mergeEvaluated.props(c, t.props, l.props)); else { let t = c.var(`props`, (0, r._)`${e}.evaluated.props`); l.props = o.mergeEvaluated.props(c, t, l.props, r.Name); } if (l.items !== !0) if (t && !t.dynamicItems) t.items !== void 0 && (l.items = o.mergeEvaluated.items(c, t.items, l.items)); else { let t = c.var(`items`, (0, r._)`${e}.evaluated.items`); l.items = o.mergeEvaluated.items(c, t, l.items, r.Name); } } } ((e.callRef = l), (e.default = s)); }), R = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = I(), n = L(); e.default = [ `$schema`, `$id`, `$defs`, `$vocabulary`, { keyword: `$comment` }, `definitions`, t.default, n.default, ]; }), z = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = t.operators, r = { maximum: { okStr: `<=`, ok: n.LTE, fail: n.GT }, minimum: { okStr: `>=`, ok: n.GTE, fail: n.LT }, exclusiveMaximum: { okStr: `<`, ok: n.LT, fail: n.GTE }, exclusiveMinimum: { okStr: `>`, ok: n.GT, fail: n.LTE }, }; e.default = { keyword: Object.keys(r), type: `number`, schemaType: `number`, $data: !0, error: { message: ({ keyword: e, schemaCode: n }) => (0, t.str)`must be ${r[e].okStr} ${n}`, params: ({ keyword: e, schemaCode: n }) => (0, t._)`{comparison: ${r[e].okStr}, limit: ${n}}`, }, code(e) { let { keyword: n, data: i, schemaCode: a } = e; e.fail$data((0, t._)`${i} ${r[n].fail} ${a} || isNaN(${i})`); }, }; }), B = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(); e.default = { keyword: `multipleOf`, type: `number`, schemaType: `number`, $data: !0, error: { message: ({ schemaCode: e }) => (0, t.str)`must be multiple of ${e}`, params: ({ schemaCode: e }) => (0, t._)`{multipleOf: ${e}}`, }, code(e) { let { gen: n, data: r, schemaCode: i, it: a } = e, o = a.opts.multipleOfPrecision, s = n.let(`res`), c = o ? (0, t._)`Math.abs(Math.round(${s}) - ${s}) > 1e-${o}` : (0, t._)`${s} !== parseInt(${s})`; e.fail$data((0, t._)`(${i} === 0 || (${s} = ${r}/${i}, ${c}))`); }, }; }), V = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); function t(e) { let t = e.length, n = 0, r = 0, i; for (; r < t;) (n++, (i = e.charCodeAt(r++)), i >= 55296 && i <= 56319 && r < t && ((i = e.charCodeAt(r)), (i & 64512) == 56320 && r++)); return n; } ((e.default = t), (t.code = `require("ajv/dist/runtime/ucs2length").default`)); }), H = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = f(), r = V(); e.default = { keyword: [`maxLength`, `minLength`], type: `string`, schemaType: `number`, $data: !0, error: { message({ keyword: e, schemaCode: n }) { let r = e === `maxLength` ? `more` : `fewer`; return (0, t.str)`must NOT have ${r} than ${n} characters`; }, params: ({ schemaCode: e }) => (0, t._)`{limit: ${e}}`, }, code(e) { let { keyword: i, data: a, schemaCode: o, it: s } = e, c = i === `maxLength` ? t.operators.GT : t.operators.LT, l = s.opts.unicode === !1 ? (0, t._)`${a}.length` : (0, t._)`${(0, n.useFunc)(e.gen, r.default)}(${a})`; e.fail$data((0, t._)`${l} ${c} ${o}`); }, }; }), U = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = b(), n = f(), r = d(); e.default = { keyword: `pattern`, type: `string`, schemaType: `string`, $data: !0, error: { message: ({ schemaCode: e }) => (0, r.str)`must match pattern "${e}"`, params: ({ schemaCode: e }) => (0, r._)`{pattern: ${e}}`, }, code(e) { let { gen: i, data: a, $data: o, schema: s, schemaCode: c, it: l } = e, u = l.opts.unicodeRegExp ? `u` : ``; if (o) { let { regExp: t } = l.opts.code, o = t.code === `new RegExp` ? (0, r._)`new RegExp` : (0, n.useFunc)(i, t), s = i.let(`valid`); (i.try( () => i.assign(s, (0, r._)`${o}(${c}, ${u}).test(${a})`), () => i.assign(s, !1), ), e.fail$data((0, r._)`!${s}`)); } else { let n = (0, t.usePattern)(e, s); e.fail$data((0, r._)`!${n}.test(${a})`); } }, }; }), W = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(); e.default = { keyword: [`maxProperties`, `minProperties`], type: `object`, schemaType: `number`, $data: !0, error: { message({ keyword: e, schemaCode: n }) { let r = e === `maxProperties` ? `more` : `fewer`; return (0, t.str)`must NOT have ${r} than ${n} properties`; }, params: ({ schemaCode: e }) => (0, t._)`{limit: ${e}}`, }, code(e) { let { keyword: n, data: r, schemaCode: i } = e, a = n === `maxProperties` ? t.operators.GT : t.operators.LT; e.fail$data((0, t._)`Object.keys(${r}).length ${a} ${i}`); }, }; }), G = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = b(), n = d(), r = f(); e.default = { keyword: `required`, type: `object`, schemaType: `array`, $data: !0, error: { message: ({ params: { missingProperty: e } }) => (0, n.str)`must have required property '${e}'`, params: ({ params: { missingProperty: e } }) => (0, n._)`{missingProperty: ${e}}`, }, code(e) { let { gen: i, schema: a, schemaCode: o, data: s, $data: c, it: l } = e, { opts: u } = l; if (!c && a.length === 0) return; let d = a.length >= u.loopRequired; if ((l.allErrors ? f() : p(), u.strictRequired)) { let t = e.parentSchema.properties, { definedProperties: n } = e.it; for (let e of a) if (t?.[e] === void 0 && !n.has(e)) { let t = `required property "${e}" is not defined at "${l.schemaEnv.baseId + l.errSchemaPath}" (strictRequired)`; (0, r.checkStrictMode)(l, t, l.opts.strictRequired); } } function f() { if (d || c) e.block$data(n.nil, m); else for (let n of a) (0, t.checkReportMissingProp)(e, n); } function p() { let n = i.let(`missing`); if (d || c) { let t = i.let(`valid`, !0); (e.block$data(t, () => h(n, t)), e.ok(t)); } else (i.if((0, t.checkMissingProp)(e, a, n)), (0, t.reportMissingProp)(e, n), i.else()); } function m() { i.forOf(`prop`, o, (n) => { (e.setParams({ missingProperty: n }), i.if((0, t.noPropertyInData)(i, s, n, u.ownProperties), () => e.error())); }); } function h(r, a) { (e.setParams({ missingProperty: r }), i.forOf( r, o, () => { (i.assign(a, (0, t.propertyInData)(i, s, r, u.ownProperties)), i.if((0, n.not)(a), () => { (e.error(), i.break()); })); }, n.nil, )); } }, }; }), ee = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(); e.default = { keyword: [`maxItems`, `minItems`], type: `array`, schemaType: `number`, $data: !0, error: { message({ keyword: e, schemaCode: n }) { let r = e === `maxItems` ? `more` : `fewer`; return (0, t.str)`must NOT have ${r} than ${n} items`; }, params: ({ schemaCode: e }) => (0, t._)`{limit: ${e}}`, }, code(e) { let { keyword: n, data: r, schemaCode: i } = e, a = n === `maxItems` ? t.operators.GT : t.operators.LT; e.fail$data((0, t._)`${r}.length ${a} ${i}`); }, }; }), K = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = C(); ((t.code = `require("ajv/dist/runtime/equal").default`), (e.default = t)); }), te = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = v(), n = d(), r = f(), i = K(); e.default = { keyword: `uniqueItems`, type: `array`, schemaType: `boolean`, $data: !0, error: { message: ({ params: { i: e, j: t } }) => (0, n.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`, params: ({ params: { i: e, j: t } }) => (0, n._)`{i: ${e}, j: ${t}}`, }, code(e) { let { gen: a, data: o, $data: s, schema: c, parentSchema: l, schemaCode: u, it: d } = e; if (!s && !c) return; let f = a.let(`valid`), p = l.items ? (0, t.getSchemaTypes)(l.items) : []; (e.block$data(f, m, (0, n._)`${u} === false`), e.ok(f)); function m() { let t = a.let(`i`, (0, n._)`${o}.length`), r = a.let(`j`); (e.setParams({ i: t, j: r }), a.assign(f, !0), a.if((0, n._)`${t} > 1`, () => (h() ? g : _)(t, r))); } function h() { return p.length > 0 && !p.some((e) => e === `object` || e === `array`); } function g(r, i) { let s = a.name(`item`), c = (0, t.checkDataTypes)(p, s, d.opts.strictNumbers, t.DataType.Wrong), l = a.const(`indices`, (0, n._)`{}`); a.for((0, n._)`;${r}--;`, () => { (a.let(s, (0, n._)`${o}[${r}]`), a.if(c, (0, n._)`continue`), p.length > 1 && a.if((0, n._)`typeof ${s} == "string"`, (0, n._)`${s} += "_"`), a .if((0, n._)`typeof ${l}[${s}] == "number"`, () => { (a.assign(i, (0, n._)`${l}[${s}]`), e.error(), a.assign(f, !1).break()); }) .code((0, n._)`${l}[${s}] = ${r}`)); }); } function _(t, s) { let c = (0, r.useFunc)(a, i.default), l = a.name(`outer`); a.label(l).for((0, n._)`;${t}--;`, () => a.for((0, n._)`${s} = ${t}; ${s}--;`, () => a.if((0, n._)`${c}(${o}[${t}], ${o}[${s}])`, () => { (e.error(), a.assign(f, !1).break(l)); }), ), ); } }, }; }), ne = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = f(), r = K(); e.default = { keyword: `const`, $data: !0, error: { message: `must be equal to constant`, params: ({ schemaCode: e }) => (0, t._)`{allowedValue: ${e}}`, }, code(e) { let { gen: i, data: a, $data: o, schemaCode: s, schema: c } = e; o || (c && typeof c == `object`) ? e.fail$data((0, t._)`!${(0, n.useFunc)(i, r.default)}(${a}, ${s})`) : e.fail((0, t._)`${c} !== ${a}`); }, }; }), re = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = f(), r = K(); e.default = { keyword: `enum`, schemaType: `array`, $data: !0, error: { message: `must be equal to one of the allowed values`, params: ({ schemaCode: e }) => (0, t._)`{allowedValues: ${e}}`, }, code(e) { let { gen: i, data: a, $data: o, schema: s, schemaCode: c, it: l } = e; if (!o && s.length === 0) throw Error(`enum must have non-empty array`); let u = s.length >= l.opts.loopEnum, d, f = () => (d ??= (0, n.useFunc)(i, r.default)), p; if (u || o) ((p = i.let(`valid`)), e.block$data(p, m)); else { if (!Array.isArray(s)) throw Error(`ajv implementation error`); let e = i.const(`vSchema`, c); p = (0, t.or)(...s.map((t, n) => h(e, n))); } e.pass(p); function m() { (i.assign(p, !1), i.forOf(`v`, c, (e) => i.if((0, t._)`${f()}(${a}, ${e})`, () => i.assign(p, !0).break()), )); } function h(e, n) { let r = s[n]; return typeof r == `object` && r ? (0, t._)`${f()}(${a}, ${e}[${n}])` : (0, t._)`${a} === ${r}`; } }, }; }), q = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = z(), n = B(), r = H(), i = U(), a = W(), o = G(), s = ee(), c = te(), l = ne(), u = re(); e.default = [ t.default, n.default, r.default, i.default, a.default, o.default, s.default, c.default, { keyword: `type`, schemaType: [`string`, `array`] }, { keyword: `nullable`, schemaType: `boolean` }, l.default, u.default, ]; }), J = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.validateAdditionalItems = void 0)); let t = d(), n = f(), r = { keyword: `additionalItems`, type: `array`, schemaType: [`boolean`, `object`], before: `uniqueItems`, error: { message: ({ params: { len: e } }) => (0, t.str)`must NOT have more than ${e} items`, params: ({ params: { len: e } }) => (0, t._)`{limit: ${e}}`, }, code(e) { let { parentSchema: t, it: r } = e, { items: a } = t; if (!Array.isArray(a)) { (0, n.checkStrictMode)( r, `"additionalItems" is ignored when "items" is not an array of schemas`, ); return; } i(e, a); }, }; function i(e, r) { let { gen: i, schema: a, data: o, keyword: s, it: c } = e; c.items = !0; let l = i.const(`len`, (0, t._)`${o}.length`); if (a === !1) (e.setParams({ len: r.length }), e.pass((0, t._)`${l} <= ${r.length}`)); else if (typeof a == `object` && !(0, n.alwaysValidSchema)(c, a)) { let n = i.var(`valid`, (0, t._)`${l} <= ${r.length}`); (i.if((0, t.not)(n), () => u(n)), e.ok(n)); } function u(a) { i.forRange(`i`, r.length, l, (r) => { (e.subschema({ keyword: s, dataProp: r, dataPropType: n.Type.Num }, a), c.allErrors || i.if((0, t.not)(a), () => i.break())); }); } } ((e.validateAdditionalItems = i), (e.default = r)); }), Y = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.validateTuple = void 0)); let t = d(), n = f(), r = b(), i = { keyword: `items`, type: `array`, schemaType: [`object`, `array`, `boolean`], before: `uniqueItems`, code(e) { let { schema: t, it: i } = e; if (Array.isArray(t)) return a(e, `additionalItems`, t); ((i.items = !0), !(0, n.alwaysValidSchema)(i, t) && e.ok((0, r.validateArray)(e))); }, }; function a(e, r, i = e.schema) { let { gen: a, parentSchema: o, data: s, keyword: c, it: l } = e; (f(o), l.opts.unevaluated && i.length && l.items !== !0 && (l.items = n.mergeEvaluated.items(a, i.length, l.items))); let u = a.name(`valid`), d = a.const(`len`, (0, t._)`${s}.length`); i.forEach((r, i) => { (0, n.alwaysValidSchema)(l, r) || (a.if((0, t._)`${d} > ${i}`, () => e.subschema({ keyword: c, schemaProp: i, dataProp: i }, u), ), e.ok(u)); }); function f(e) { let { opts: t, errSchemaPath: a } = l, o = i.length, s = o === e.minItems && (o === e.maxItems || e[r] === !1); if (t.strictTuples && !s) { let e = `"${c}" is ${o}-tuple, but minItems or maxItems/${r} are not specified or different at path "${a}"`; (0, n.checkStrictMode)(l, e, t.strictTuples); } } } ((e.validateTuple = a), (e.default = i)); }), X = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = Y(); e.default = { keyword: `prefixItems`, type: `array`, schemaType: [`array`], before: `uniqueItems`, code: (e) => (0, t.validateTuple)(e, `items`), }; }), Z = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = f(), r = b(), i = J(); e.default = { keyword: `items`, type: `array`, schemaType: [`object`, `boolean`], before: `uniqueItems`, error: { message: ({ params: { len: e } }) => (0, t.str)`must NOT have more than ${e} items`, params: ({ params: { len: e } }) => (0, t._)`{limit: ${e}}`, }, code(e) { let { schema: t, parentSchema: a, it: o } = e, { prefixItems: s } = a; ((o.items = !0), !(0, n.alwaysValidSchema)(o, t) && (s ? (0, i.validateAdditionalItems)(e, s) : e.ok((0, r.validateArray)(e)))); }, }; }), ie = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = f(); e.default = { keyword: `contains`, type: `array`, schemaType: [`object`, `boolean`], before: `uniqueItems`, trackErrors: !0, error: { message: ({ params: { min: e, max: n } }) => n === void 0 ? (0, t.str)`must contain at least ${e} valid item(s)` : (0, t.str)`must contain at least ${e} and no more than ${n} valid item(s)`, params: ({ params: { min: e, max: n } }) => n === void 0 ? (0, t._)`{minContains: ${e}}` : (0, t._)`{minContains: ${e}, maxContains: ${n}}`, }, code(e) { let { gen: r, schema: i, parentSchema: a, data: o, it: s } = e, c, l, { minContains: u, maxContains: d } = a; s.opts.next ? ((c = u === void 0 ? 1 : u), (l = d)) : (c = 1); let f = r.const(`len`, (0, t._)`${o}.length`); if ((e.setParams({ min: c, max: l }), l === void 0 && c === 0)) { (0, n.checkStrictMode)( s, `"minContains" == 0 without "maxContains": "contains" keyword ignored`, ); return; } if (l !== void 0 && c > l) { ((0, n.checkStrictMode)(s, `"minContains" > "maxContains" is always invalid`), e.fail()); return; } if ((0, n.alwaysValidSchema)(s, i)) { let n = (0, t._)`${f} >= ${c}`; (l !== void 0 && (n = (0, t._)`${n} && ${f} <= ${l}`), e.pass(n)); return; } s.items = !0; let p = r.name(`valid`); (l === void 0 && c === 1 ? h(p, () => r.if(p, () => r.break())) : c === 0 ? (r.let(p, !0), l !== void 0 && r.if((0, t._)`${o}.length > 0`, m)) : (r.let(p, !1), m()), e.result(p, () => e.reset())); function m() { let e = r.name(`_valid`), t = r.let(`count`, 0); h(e, () => r.if(e, () => g(t))); } function h(t, i) { r.forRange(`i`, 0, f, (r) => { (e.subschema( { keyword: `contains`, dataProp: r, dataPropType: n.Type.Num, compositeRule: !0 }, t, ), i()); }); } function g(e) { (r.code((0, t._)`${e}++`), l === void 0 ? r.if((0, t._)`${e} >= ${c}`, () => r.assign(p, !0).break()) : (r.if((0, t._)`${e} > ${l}`, () => r.assign(p, !1).break()), c === 1 ? r.assign(p, !0) : r.if((0, t._)`${e} >= ${c}`, () => r.assign(p, !0)))); } }, }; }), ae = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.validateSchemaDeps = e.validatePropertyDeps = e.error = void 0)); let t = d(), n = f(), r = b(); e.error = { message: ({ params: { property: e, depsCount: n, deps: r } }) => { let i = n === 1 ? `property` : `properties`; return (0, t.str)`must have ${i} ${r} when property ${e} is present`; }, params: ({ params: { property: e, depsCount: n, deps: r, missingProperty: i } }) => (0, t._)`{property: ${e}, missingProperty: ${i}, depsCount: ${n}, deps: ${r}}`, }; let i = { keyword: `dependencies`, type: `object`, schemaType: `object`, error: e.error, code(e) { let [t, n] = a(e); (o(e, t), s(e, n)); }, }; function a({ schema: e }) { let t = {}, n = {}; for (let r in e) { if (r === `__proto__`) continue; let i = Array.isArray(e[r]) ? t : n; i[r] = e[r]; } return [t, n]; } function o(e, n = e.schema) { let { gen: i, data: a, it: o } = e; if (Object.keys(n).length === 0) return; let s = i.let(`missing`); for (let c in n) { let l = n[c]; if (l.length === 0) continue; let u = (0, r.propertyInData)(i, a, c, o.opts.ownProperties); (e.setParams({ property: c, depsCount: l.length, deps: l.join(`, `) }), o.allErrors ? i.if(u, () => { for (let t of l) (0, r.checkReportMissingProp)(e, t); }) : (i.if((0, t._)`${u} && (${(0, r.checkMissingProp)(e, l, s)})`), (0, r.reportMissingProp)(e, s), i.else())); } } e.validatePropertyDeps = o; function s(e, t = e.schema) { let { gen: i, data: a, keyword: o, it: s } = e, c = i.name(`valid`); for (let l in t) (0, n.alwaysValidSchema)(s, t[l]) || (i.if( (0, r.propertyInData)(i, a, l, s.opts.ownProperties), () => { let t = e.subschema({ keyword: o, schemaProp: l }, c); e.mergeValidEvaluated(t, c); }, () => i.var(c, !0), ), e.ok(c)); } ((e.validateSchemaDeps = s), (e.default = i)); }), Q = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = f(); e.default = { keyword: `propertyNames`, type: `object`, schemaType: [`object`, `boolean`], error: { message: `property name must be valid`, params: ({ params: e }) => (0, t._)`{propertyName: ${e.propertyName}}`, }, code(e) { let { gen: r, schema: i, data: a, it: o } = e; if ((0, n.alwaysValidSchema)(o, i)) return; let s = r.name(`valid`); (r.forIn(`key`, a, (n) => { (e.setParams({ propertyName: n }), e.subschema( { keyword: `propertyNames`, data: n, dataTypes: [`string`], propertyName: n, compositeRule: !0, }, s, ), r.if((0, t.not)(s), () => { (e.error(!0), o.allErrors || r.break()); })); }), e.ok(s)); }, }; }), oe = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = b(), n = d(), r = p(), i = f(); e.default = { keyword: `additionalProperties`, type: [`object`], schemaType: [`boolean`, `object`], allowUndefined: !0, trackErrors: !0, error: { message: `must NOT have additional properties`, params: ({ params: e }) => (0, n._)`{additionalProperty: ${e.additionalProperty}}`, }, code(e) { let { gen: a, schema: o, parentSchema: s, data: c, errsCount: l, it: u } = e; if (!l) throw Error(`ajv implementation error`); let { allErrors: d, opts: f } = u; if (((u.props = !0), f.removeAdditional !== `all` && (0, i.alwaysValidSchema)(u, o))) return; let p = (0, t.allSchemaProperties)(s.properties), m = (0, t.allSchemaProperties)(s.patternProperties); (h(), e.ok((0, n._)`${l} === ${r.default.errors}`)); function h() { a.forIn(`key`, c, (e) => { !p.length && !m.length ? v(e) : a.if(g(e), () => v(e)); }); } function g(r) { let o; if (p.length > 8) { let e = (0, i.schemaRefOrVal)(u, s.properties, `properties`); o = (0, t.isOwnProperty)(a, e, r); } else o = p.length ? (0, n.or)(...p.map((e) => (0, n._)`${r} === ${e}`)) : n.nil; return ( m.length && (o = (0, n.or)(o, ...m.map((i) => (0, n._)`${(0, t.usePattern)(e, i)}.test(${r})`))), (0, n.not)(o) ); } function _(e) { a.code((0, n._)`delete ${c}[${e}]`); } function v(t) { if (f.removeAdditional === `all` || (f.removeAdditional && o === !1)) { _(t); return; } if (o === !1) { (e.setParams({ additionalProperty: t }), e.error(), d || a.break()); return; } if (typeof o == `object` && !(0, i.alwaysValidSchema)(u, o)) { let r = a.name(`valid`); f.removeAdditional === `failing` ? (y(t, r, !1), a.if((0, n.not)(r), () => { (e.reset(), _(t)); })) : (y(t, r), d || a.if((0, n.not)(r), () => a.break())); } } function y(t, n, r) { let a = { keyword: `additionalProperties`, dataProp: t, dataPropType: i.Type.Str }; (r === !1 && Object.assign(a, { compositeRule: !0, createErrors: !1, allErrors: !1 }), e.subschema(a, n)); } }, }; }), se = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = E(), n = b(), r = f(), i = oe(); e.default = { keyword: `properties`, type: `object`, schemaType: `object`, code(e) { let { gen: a, schema: o, parentSchema: s, data: c, it: l } = e; l.opts.removeAdditional === `all` && s.additionalProperties === void 0 && i.default.code(new t.KeywordCxt(l, i.default, `additionalProperties`)); let u = (0, n.allSchemaProperties)(o); for (let e of u) l.definedProperties.add(e); l.opts.unevaluated && u.length && l.props !== !0 && (l.props = r.mergeEvaluated.props(a, (0, r.toHash)(u), l.props)); let d = u.filter((e) => !(0, r.alwaysValidSchema)(l, o[e])); if (d.length === 0) return; let f = a.name(`valid`); for (let t of d) (p(t) ? m(t) : (a.if((0, n.propertyInData)(a, c, t, l.opts.ownProperties)), m(t), l.allErrors || a.else().var(f, !0), a.endIf()), e.it.definedProperties.add(t), e.ok(f)); function p(e) { return l.opts.useDefaults && !l.compositeRule && o[e].default !== void 0; } function m(t) { e.subschema({ keyword: `properties`, schemaProp: t, dataProp: t }, f); } }, }; }), ce = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = b(), n = d(), r = f(), i = f(); e.default = { keyword: `patternProperties`, type: `object`, schemaType: `object`, code(e) { let { gen: a, schema: o, data: s, parentSchema: c, it: l } = e, { opts: u } = l, d = (0, t.allSchemaProperties)(o), f = d.filter((e) => (0, r.alwaysValidSchema)(l, o[e])); if (d.length === 0 || (f.length === d.length && (!l.opts.unevaluated || l.props === !0))) return; let p = u.strictSchema && !u.allowMatchingProperties && c.properties, m = a.name(`valid`); l.props !== !0 && !(l.props instanceof n.Name) && (l.props = (0, i.evaluatedPropsToName)(a, l.props)); let { props: h } = l; g(); function g() { for (let e of d) (p && _(e), l.allErrors ? v(e) : (a.var(m, !0), v(e), a.if(m))); } function _(e) { for (let t in p) new RegExp(e).test(t) && (0, r.checkStrictMode)( l, `property ${t} matches pattern ${e} (use allowMatchingProperties)`, ); } function v(r) { a.forIn(`key`, s, (o) => { a.if((0, n._)`${(0, t.usePattern)(e, r)}.test(${o})`, () => { let t = f.includes(r); (t || e.subschema( { keyword: `patternProperties`, schemaProp: r, dataProp: o, dataPropType: i.Type.Str, }, m, ), l.opts.unevaluated && h !== !0 ? a.assign((0, n._)`${h}[${o}]`, !0) : !t && !l.allErrors && a.if((0, n.not)(m), () => a.break())); }); }); } }, }; }), le = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = f(); e.default = { keyword: `not`, schemaType: [`object`, `boolean`], trackErrors: !0, code(e) { let { gen: n, schema: r, it: i } = e; if ((0, t.alwaysValidSchema)(i, r)) { e.fail(); return; } let a = n.name(`valid`); (e.subschema({ keyword: `not`, compositeRule: !0, createErrors: !1, allErrors: !1 }, a), e.failResult( a, () => e.reset(), () => e.error(), )); }, error: { message: `must NOT be valid` }, }; }), ue = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.default = { keyword: `anyOf`, schemaType: `array`, trackErrors: !0, code: b().validateUnion, error: { message: `must match a schema in anyOf` }, })); }), de = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = f(); e.default = { keyword: `oneOf`, schemaType: `array`, trackErrors: !0, error: { message: `must match exactly one schema in oneOf`, params: ({ params: e }) => (0, t._)`{passingSchemas: ${e.passing}}`, }, code(e) { let { gen: r, schema: i, parentSchema: a, it: o } = e; if (!Array.isArray(i)) throw Error(`ajv implementation error`); if (o.opts.discriminator && a.discriminator) return; let s = i, c = r.let(`valid`, !1), l = r.let(`passing`, null), u = r.name(`_valid`); (e.setParams({ passing: l }), r.block(d), e.result( c, () => e.reset(), () => e.error(!0), )); function d() { s.forEach((i, a) => { let s; ((0, n.alwaysValidSchema)(o, i) ? r.var(u, !0) : (s = e.subschema({ keyword: `oneOf`, schemaProp: a, compositeRule: !0 }, u)), a > 0 && r .if((0, t._)`${u} && ${c}`) .assign(c, !1) .assign(l, (0, t._)`[${l}, ${a}]`) .else(), r.if(u, () => { (r.assign(c, !0), r.assign(l, a), s && e.mergeEvaluated(s, t.Name)); })); }); } }, }; }), fe = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = f(); e.default = { keyword: `allOf`, schemaType: `array`, code(e) { let { gen: n, schema: r, it: i } = e; if (!Array.isArray(r)) throw Error(`ajv implementation error`); let a = n.name(`valid`); r.forEach((n, r) => { if ((0, t.alwaysValidSchema)(i, n)) return; let o = e.subschema({ keyword: `allOf`, schemaProp: r }, a); (e.ok(a), e.mergeEvaluated(o)); }); }, }; }), pe = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = f(), r = { keyword: `if`, schemaType: [`object`, `boolean`], trackErrors: !0, error: { message: ({ params: e }) => (0, t.str)`must match "${e.ifClause}" schema`, params: ({ params: e }) => (0, t._)`{failingKeyword: ${e.ifClause}}`, }, code(e) { let { gen: r, parentSchema: a, it: o } = e; a.then === void 0 && a.else === void 0 && (0, n.checkStrictMode)(o, `"if" without "then" and "else" is ignored`); let s = i(o, `then`), c = i(o, `else`); if (!s && !c) return; let l = r.let(`valid`, !0), u = r.name(`_valid`); if ((d(), e.reset(), s && c)) { let t = r.let(`ifClause`); (e.setParams({ ifClause: t }), r.if(u, f(`then`, t), f(`else`, t))); } else s ? r.if(u, f(`then`)) : r.if((0, t.not)(u), f(`else`)); e.pass(l, () => e.error(!0)); function d() { let t = e.subschema( { keyword: `if`, compositeRule: !0, createErrors: !1, allErrors: !1 }, u, ); e.mergeEvaluated(t); } function f(n, i) { return () => { let a = e.subschema({ keyword: n }, u); (r.assign(l, u), e.mergeValidEvaluated(a, l), i ? r.assign(i, (0, t._)`${n}`) : e.setParams({ ifClause: n })); }; } }, }; function i(e, t) { let r = e.schema[t]; return r !== void 0 && !(0, n.alwaysValidSchema)(e, r); } e.default = r; }), me = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = f(); e.default = { keyword: [`then`, `else`], schemaType: [`object`, `boolean`], code({ keyword: e, parentSchema: n, it: r }) { n.if === void 0 && (0, t.checkStrictMode)(r, `"${e}" without "if" is ignored`); }, }; }), he = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = J(), n = X(), r = Y(), i = Z(), a = ie(), o = ae(), s = Q(), c = oe(), l = se(), u = ce(), d = le(), f = ue(), p = de(), m = fe(), h = pe(), g = me(); function _(e = !1) { let _ = [ d.default, f.default, p.default, m.default, h.default, g.default, s.default, c.default, o.default, l.default, u.default, ]; return ( e ? _.push(n.default, i.default) : _.push(t.default, r.default), _.push(a.default), _ ); } e.default = _; }), ge = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(); e.default = { keyword: `format`, type: [`number`, `string`], schemaType: `string`, $data: !0, error: { message: ({ schemaCode: e }) => (0, t.str)`must match format "${e}"`, params: ({ schemaCode: e }) => (0, t._)`{format: ${e}}`, }, code(e, n) { let { gen: r, data: i, $data: a, schema: o, schemaCode: s, it: c } = e, { opts: l, errSchemaPath: u, schemaEnv: d, self: f } = c; if (!l.validateFormats) return; a ? p() : m(); function p() { let a = r.scopeValue(`formats`, { ref: f.formats, code: l.code.formats }), o = r.const(`fDef`, (0, t._)`${a}[${s}]`), c = r.let(`fType`), u = r.let(`format`); (r.if( (0, t._)`typeof ${o} == "object" && !(${o} instanceof RegExp)`, () => r.assign(c, (0, t._)`${o}.type || "string"`).assign(u, (0, t._)`${o}.validate`), () => r.assign(c, (0, t._)`"string"`).assign(u, o), ), e.fail$data((0, t.or)(p(), m()))); function p() { return l.strictSchema === !1 ? t.nil : (0, t._)`${s} && !${u}`; } function m() { let e = d.$async ? (0, t._)`(${o}.async ? await ${u}(${i}) : ${u}(${i}))` : (0, t._)`${u}(${i})`, r = (0, t._)`(typeof ${u} == "function" ? ${e} : ${u}.test(${i}))`; return (0, t._)`${u} && ${u} !== true && ${c} === ${n} && !${r}`; } } function m() { let a = f.formats[o]; if (!a) { m(); return; } if (a === !0) return; let [s, c, p] = h(a); s === n && e.pass(g()); function m() { if (l.strictSchema === !1) { f.logger.warn(e()); return; } throw Error(e()); function e() { return `unknown format "${o}" ignored in schema at path "${u}"`; } } function h(e) { let n = e instanceof RegExp ? (0, t.regexpCode)(e) : l.code.formats ? (0, t._)`${l.code.formats}${(0, t.getProperty)(o)}` : void 0, i = r.scopeValue(`formats`, { key: o, ref: e, code: n }); return typeof e == `object` && !(e instanceof RegExp) ? [e.type || `string`, e.validate, (0, t._)`${i}.validate`] : [`string`, e, i]; } function g() { if (typeof a == `object` && !(a instanceof RegExp) && a.async) { if (!d.$async) throw Error(`async format in sync schema`); return (0, t._)`await ${p}(${i})`; } return typeof c == `function` ? (0, t._)`${p}(${i})` : (0, t._)`${p}.test(${i})`; } } }, }; }), _e = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.default = [ge().default])); }), ve = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.contentVocabulary = e.metadataVocabulary = void 0), (e.metadataVocabulary = [ `title`, `description`, `default`, `deprecated`, `readOnly`, `writeOnly`, `examples`, ]), (e.contentVocabulary = [`contentMediaType`, `contentEncoding`, `contentSchema`])); }), ye = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = R(), n = q(), r = he(), i = _e(), a = ve(); e.default = [ t.default, n.default, (0, r.default)(), i.default, a.metadataVocabulary, a.contentVocabulary, ]; }), be = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.DiscrError = void 0)); var t; (function (e) { ((e.Tag = `tag`), (e.Mapping = `mapping`)); })(t || (e.DiscrError = t = {})); }), xe = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); let t = d(), n = be(), r = k(), i = O(), a = f(); e.default = { keyword: `discriminator`, type: `object`, schemaType: `object`, error: { message: ({ params: { discrError: e, tagName: t } }) => e === n.DiscrError.Tag ? `tag "${t}" must be string` : `value of tag "${t}" must be in oneOf`, params: ({ params: { discrError: e, tag: n, tagName: r } }) => (0, t._)`{error: ${e}, tag: ${r}, tagValue: ${n}}`, }, code(e) { let { gen: o, data: s, schema: c, parentSchema: l, it: u } = e, { oneOf: d } = l; if (!u.opts.discriminator) throw Error(`discriminator: requires discriminator option`); let f = c.propertyName; if (typeof f != `string`) throw Error(`discriminator: requires propertyName`); if (c.mapping) throw Error(`discriminator: mapping is not supported`); if (!d) throw Error(`discriminator: requires oneOf keyword`); let p = o.let(`valid`, !1), m = o.const(`tag`, (0, t._)`${s}${(0, t.getProperty)(f)}`); (o.if( (0, t._)`typeof ${m} == "string"`, () => h(), () => e.error(!1, { discrError: n.DiscrError.Tag, tag: m, tagName: f }), ), e.ok(p)); function h() { let r = _(); o.if(!1); for (let e in r) (o.elseIf((0, t._)`${m} === ${e}`), o.assign(p, g(r[e]))); (o.else(), e.error(!1, { discrError: n.DiscrError.Mapping, tag: m, tagName: f }), o.endIf()); } function g(n) { let r = o.name(`valid`), i = e.subschema({ keyword: `oneOf`, schemaProp: n }, r); return (e.mergeEvaluated(i, t.Name), r); } function _() { let e = {}, t = o(l), n = !0; for (let e = 0; e < d.length; e++) { let c = d[e]; if (c?.$ref && !(0, a.schemaHasRulesButRef)(c, u.self.RULES)) { let e = c.$ref; if ( ((c = r.resolveRef.call(u.self, u.schemaEnv.root, u.baseId, e)), c instanceof r.SchemaEnv && (c = c.schema), c === void 0) ) throw new i.default(u.opts.uriResolver, u.baseId, e); } let l = c?.properties?.[f]; if (typeof l != `object`) throw Error( `discriminator: oneOf subschemas (or referenced schemas) must have "properties/${f}"`, ); ((n &&= t || o(c)), s(l, e)); } if (!n) throw Error(`discriminator: "${f}" must be required`); return e; function o({ required: e }) { return Array.isArray(e) && e.includes(f); } function s(e, t) { if (e.const) c(e.const, t); else if (e.enum) for (let n of e.enum) c(n, t); else throw Error(`discriminator: "properties/${f}" must have "const" or "enum"`); } function c(t, n) { if (typeof t != `string` || t in e) throw Error(`discriminator: "${f}" values must be unique strings`); e[t] = n; } } }, }; }), Se = o((e, t) => { t.exports = { $schema: `http://json-schema.org/draft-07/schema#`, $id: `http://json-schema.org/draft-07/schema#`, title: `Core schema meta-schema`, definitions: { schemaArray: { type: `array`, minItems: 1, items: { $ref: `#` } }, nonNegativeInteger: { type: `integer`, minimum: 0 }, nonNegativeIntegerDefault0: { allOf: [{ $ref: `#/definitions/nonNegativeInteger` }, { default: 0 }], }, simpleTypes: { enum: [`array`, `boolean`, `integer`, `null`, `number`, `object`, `string`], }, stringArray: { type: `array`, items: { type: `string` }, uniqueItems: !0, default: [] }, }, type: [`object`, `boolean`], properties: { $id: { type: `string`, format: `uri-reference` }, $schema: { type: `string`, format: `uri` }, $ref: { type: `string`, format: `uri-reference` }, $comment: { type: `string` }, title: { type: `string` }, description: { type: `string` }, default: !0, readOnly: { type: `boolean`, default: !1 }, examples: { type: `array`, items: !0 }, multipleOf: { type: `number`, exclusiveMinimum: 0 }, maximum: { type: `number` }, exclusiveMaximum: { type: `number` }, minimum: { type: `number` }, exclusiveMinimum: { type: `number` }, maxLength: { $ref: `#/definitions/nonNegativeInteger` }, minLength: { $ref: `#/definitions/nonNegativeIntegerDefault0` }, pattern: { type: `string`, format: `regex` }, additionalItems: { $ref: `#` }, items: { anyOf: [{ $ref: `#` }, { $ref: `#/definitions/schemaArray` }], default: !0 }, maxItems: { $ref: `#/definitions/nonNegativeInteger` }, minItems: { $ref: `#/definitions/nonNegativeIntegerDefault0` }, uniqueItems: { type: `boolean`, default: !1 }, contains: { $ref: `#` }, maxProperties: { $ref: `#/definitions/nonNegativeInteger` }, minProperties: { $ref: `#/definitions/nonNegativeIntegerDefault0` }, required: { $ref: `#/definitions/stringArray` }, additionalProperties: { $ref: `#` }, definitions: { type: `object`, additionalProperties: { $ref: `#` }, default: {} }, properties: { type: `object`, additionalProperties: { $ref: `#` }, default: {} }, patternProperties: { type: `object`, additionalProperties: { $ref: `#` }, propertyNames: { format: `regex` }, default: {}, }, dependencies: { type: `object`, additionalProperties: { anyOf: [{ $ref: `#` }, { $ref: `#/definitions/stringArray` }] }, }, propertyNames: { $ref: `#` }, const: !0, enum: { type: `array`, items: !0, minItems: 1, uniqueItems: !0 }, type: { anyOf: [ { $ref: `#/definitions/simpleTypes` }, { type: `array`, items: { $ref: `#/definitions/simpleTypes` }, minItems: 1, uniqueItems: !0, }, ], }, format: { type: `string` }, contentMediaType: { type: `string` }, contentEncoding: { type: `string` }, if: { $ref: `#` }, then: { $ref: `#` }, else: { $ref: `#` }, allOf: { $ref: `#/definitions/schemaArray` }, anyOf: { $ref: `#/definitions/schemaArray` }, oneOf: { $ref: `#/definitions/schemaArray` }, not: { $ref: `#` }, }, default: !0, }; }), Ce = o((e, t) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.MissingRefError = e.ValidationError = e.CodeGen = e.Name = e.nil = e.stringify = e.str = e._ = e.KeywordCxt = e.Ajv = void 0)); let n = F(), r = ye(), i = xe(), a = Se(), o = [`/properties`], s = `http://json-schema.org/draft-07/schema`; var c = class extends n.default { _addVocabularies() { (super._addVocabularies(), r.default.forEach((e) => this.addVocabulary(e)), this.opts.discriminator && this.addKeyword(i.default)); } _addDefaultMetaSchema() { if ((super._addDefaultMetaSchema(), !this.opts.meta)) return; let e = this.opts.$data ? this.$dataMetaSchema(a, o) : a; (this.addMetaSchema(e, s, !1), (this.refs[`http://json-schema.org/schema`] = s)); } defaultMeta() { return (this.opts.defaultMeta = super.defaultMeta() || (this.getSchema(s) ? s : void 0)); } }; ((e.Ajv = c), (t.exports = e = c), (t.exports.Ajv = c), Object.defineProperty(e, "__esModule", { value: !0 }), (e.default = c)); var l = E(); Object.defineProperty(e, "KeywordCxt", { enumerable: !0, get: function () { return l.KeywordCxt; }, }); var u = d(); (Object.defineProperty(e, "_", { enumerable: !0, get: function () { return u._; }, }), Object.defineProperty(e, "str", { enumerable: !0, get: function () { return u.str; }, }), Object.defineProperty(e, "stringify", { enumerable: !0, get: function () { return u.stringify; }, }), Object.defineProperty(e, "nil", { enumerable: !0, get: function () { return u.nil; }, }), Object.defineProperty(e, "Name", { enumerable: !0, get: function () { return u.Name; }, }), Object.defineProperty(e, "CodeGen", { enumerable: !0, get: function () { return u.CodeGen; }, })); var f = D(); Object.defineProperty(e, "ValidationError", { enumerable: !0, get: function () { return f.default; }, }); var p = O(); Object.defineProperty(e, "MissingRefError", { enumerable: !0, get: function () { return p.default; }, }); }), we = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.formatNames = e.fastFormats = e.fullFormats = void 0)); function t(e, t) { return { validate: e, compare: t }; } ((e.fullFormats = { date: t(a, o), time: t(c(!0), l), "date-time": t(f(!0), p), "iso-time": t(c(), u), "iso-date-time": t(f(), m), duration: /^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/, uri: _, "uri-reference": /^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i, "uri-template": /^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i, url: /^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu, email: /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i, hostname: /^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i, ipv4: /^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/, ipv6: /^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i, regex: E, uuid: /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i, "json-pointer": /^(?:\/(?:[^~/]|~0|~1)*)*$/, "json-pointer-uri-fragment": /^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i, "relative-json-pointer": /^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/, byte: y, int32: { type: `number`, validate: S }, int64: { type: `number`, validate: C }, float: { type: `number`, validate: w }, double: { type: `number`, validate: w }, password: !0, binary: !0, }), (e.fastFormats = { ...e.fullFormats, date: t(/^\d\d\d\d-[0-1]\d-[0-3]\d$/, o), time: t(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i, l), "date-time": t( /^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i, p, ), "iso-time": t( /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i, u, ), "iso-date-time": t( /^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i, m, ), uri: /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i, "uri-reference": /^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i, email: /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i, }), (e.formatNames = Object.keys(e.fullFormats))); function n(e) { return e % 4 == 0 && (e % 100 != 0 || e % 400 == 0); } let r = /^(\d\d\d\d)-(\d\d)-(\d\d)$/, i = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; function a(e) { let t = r.exec(e); if (!t) return !1; let a = +t[1], o = +t[2], s = +t[3]; return o >= 1 && o <= 12 && s >= 1 && s <= (o === 2 && n(a) ? 29 : i[o]); } function o(e, t) { if (e && t) return e > t ? 1 : e < t ? -1 : 0; } let s = /^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i; function c(e) { return function (t) { let n = s.exec(t); if (!n) return !1; let r = +n[1], i = +n[2], a = +n[3], o = n[4], c = n[5] === `-` ? -1 : 1, l = +(n[6] || 0), u = +(n[7] || 0); if (l > 23 || u > 59 || (e && !o)) return !1; if (r <= 23 && i <= 59 && a < 60) return !0; let d = i - u * c, f = r - l * c - +(d < 0); return (f === 23 || f === -1) && (d === 59 || d === -1) && a < 61; }; } function l(e, t) { if (!(e && t)) return; let n = new Date(`2020-01-01T` + e).valueOf(), r = new Date(`2020-01-01T` + t).valueOf(); if (n && r) return n - r; } function u(e, t) { if (!(e && t)) return; let n = s.exec(e), r = s.exec(t); if (n && r) return ((e = n[1] + n[2] + n[3]), (t = r[1] + r[2] + r[3]), e > t ? 1 : e < t ? -1 : 0); } let d = /t|\s/i; function f(e) { let t = c(e); return function (e) { let n = e.split(d); return n.length === 2 && a(n[0]) && t(n[1]); }; } function p(e, t) { if (!(e && t)) return; let n = new Date(e).valueOf(), r = new Date(t).valueOf(); if (n && r) return n - r; } function m(e, t) { if (!(e && t)) return; let [n, r] = e.split(d), [i, a] = t.split(d), s = o(n, i); if (s !== void 0) return s || l(r, a); } let h = /\/|:/, g = /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i; function _(e) { return h.test(e) && g.test(e); } let v = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm; function y(e) { return ((v.lastIndex = 0), v.test(e)); } let b = -(2 ** 31), x = 2 ** 31 - 1; function S(e) { return Number.isInteger(e) && e <= x && e >= b; } function C(e) { return Number.isInteger(e); } function w() { return !0; } let T = /[^\\]\\Z/; function E(e) { if (T.test(e)) return !1; try { return (new RegExp(e), !0); } catch { return !1; } } }), Te = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.formatLimitDefinition = void 0)); let t = Ce(), n = d(), r = n.operators, i = { formatMaximum: { okStr: `<=`, ok: r.LTE, fail: r.GT }, formatMinimum: { okStr: `>=`, ok: r.GTE, fail: r.LT }, formatExclusiveMaximum: { okStr: `<`, ok: r.LT, fail: r.GTE }, formatExclusiveMinimum: { okStr: `>`, ok: r.GT, fail: r.LTE }, }; ((e.formatLimitDefinition = { keyword: Object.keys(i), type: `string`, schemaType: `string`, $data: !0, error: { message: ({ keyword: e, schemaCode: t }) => (0, n.str)`should be ${i[e].okStr} ${t}`, params: ({ keyword: e, schemaCode: t }) => (0, n._)`{comparison: ${i[e].okStr}, limit: ${t}}`, }, code(e) { let { gen: r, data: a, schemaCode: o, keyword: s, it: c } = e, { opts: l, self: u } = c; if (!l.validateFormats) return; let d = new t.KeywordCxt(c, u.RULES.all.format.definition, `format`); d.$data ? f() : p(); function f() { let t = r.scopeValue(`formats`, { ref: u.formats, code: l.code.formats }), i = r.const(`fmt`, (0, n._)`${t}[${d.schemaCode}]`); e.fail$data( (0, n.or)( (0, n._)`typeof ${i} != "object"`, (0, n._)`${i} instanceof RegExp`, (0, n._)`typeof ${i}.compare != "function"`, m(i), ), ); } function p() { let t = d.schema, i = u.formats[t]; if (!i || i === !0) return; if (typeof i != `object` || i instanceof RegExp || typeof i.compare != `function`) throw Error(`"${s}": format "${t}" does not define "compare" function`); let a = r.scopeValue(`formats`, { key: t, ref: i, code: l.code.formats ? (0, n._)`${l.code.formats}${(0, n.getProperty)(t)}` : void 0, }); e.fail$data(m(a)); } function m(e) { return (0, n._)`${e}.compare(${a}, ${o}) ${i[s].fail} 0`; } }, dependencies: [`format`], }), (e.default = (t) => (t.addKeyword(e.formatLimitDefinition), t))); }), Ee = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = we(), r = Te(), i = d(), a = new i.Name(`fullFormats`), o = new i.Name(`fastFormats`), s = (e, t = { keywords: !0 }) => { if (Array.isArray(t)) return (c(e, t, n.fullFormats, a), e); let [i, s] = t.mode === `fast` ? [n.fastFormats, o] : [n.fullFormats, a]; return (c(e, t.formats || n.formatNames, i, s), t.keywords && (0, r.default)(e), e); }; s.get = (e, t = `full`) => { let r = (t === `fast` ? n.fastFormats : n.fullFormats)[e]; if (!r) throw Error(`Unknown format "${e}"`); return r; }; function c(e, t, n, r) { var a; (a = e.opts.code).formats ?? (a.formats = (0, i._)`require("ajv-formats/dist/formats").${r}`); for (let r of t) e.addFormat(r, n[r]); } ((t.exports = e = s), Object.defineProperty(e, "__esModule", { value: !0 }), (e.default = s)); }), De = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = d(), r = [`undefined`, `string`, `number`, `object`, `function`, `boolean`, `symbol`]; function i() { return { keyword: `typeof`, schemaType: [`string`, `array`], code(e) { let { data: t, schema: r, schemaValue: i } = e; e.fail( typeof r == `string` ? (0, n._)`typeof ${t} != ${r}` : (0, n._)`${i}.indexOf(typeof ${t}) < 0`, ); }, metaSchema: { anyOf: [ { type: `string`, enum: r }, { type: `array`, items: { type: `string`, enum: r } }, ], }, }; } ((e.default = i), (t.exports = i)); }), Oe = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(De()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), ke = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = { Object, Array, Function, Number, String, Date, RegExp }; (typeof Buffer < `u` && (n.Buffer = Buffer), typeof Promise < `u` && (n.Promise = Promise)); let r = Object.assign(i, { CONSTRUCTORS: n }); function i() { return { keyword: `instanceof`, schemaType: [`string`, `array`], compile(e) { if (typeof e == `string`) { let t = a(e); return (e) => e instanceof t; } if (Array.isArray(e)) { let t = e.map(a); return (e) => { for (let n of t) if (e instanceof n) return !0; return !1; }; } throw Error(`ajv implementation error`); }, metaSchema: { anyOf: [{ type: `string` }, { type: `array`, items: { type: `string` } }] }, }; } function a(e) { let t = n[e]; if (t) return t; throw Error(`invalid "instanceof" keyword value ${e}`); } ((e.default = r), (t.exports = r)); }), Ae = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(ke()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), je = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); function t(e) { return () => ({ keyword: e, type: `number`, schemaType: `array`, macro: function ([n, r]) { return ( t(n, r), e === `range` ? { minimum: n, maximum: r } : { exclusiveMinimum: n, exclusiveMaximum: r } ); }, metaSchema: { type: `array`, minItems: 2, maxItems: 2, items: { type: `number` } }, }); function t(t, n) { if (t > n || (e === `exclusiveRange` && t === n)) throw Error(`There are no numbers in range`); } } e.default = t; }), Me = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = (0, n(je()).default)(`range`); ((e.default = r), (t.exports = r)); }), Ne = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Me()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), Pe = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = (0, n(je()).default)(`exclusiveRange`); ((e.default = r), (t.exports = r)); }), Fe = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Pe()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), $ = o((e) => { (Object.defineProperty(e, "__esModule", { value: !0 }), (e.usePattern = e.metaSchemaRef = void 0)); let t = d(); function n({ defaultMeta: e } = {}) { return e === !1 ? {} : { $ref: e || `http://json-schema.org/schema` }; } e.metaSchemaRef = n; function r({ gen: e, it: { opts: n } }, r, i = n.unicodeRegExp ? `u` : ``) { let a = new RegExp(r, i); return e.scopeValue(`pattern`, { key: a.toString(), ref: a, code: (0, t._)`new RegExp(${r}, ${i})`, }); } e.usePattern = r; }), Ie = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = d(), r = $(), i = { type: `object`, properties: { pattern: { type: `string` }, flags: { type: `string`, nullable: !0 } }, required: [`pattern`], additionalProperties: !1, }, a = /^\/(.*)\/([gimuy]*)$/; function o() { return { keyword: `regexp`, type: `string`, schemaType: [`string`, `object`], code(e) { let { data: t, schema: i } = e, o = s(i); e.pass((0, n._)`${o}.test(${t})`); function s(t) { if (typeof t == `object`) return (0, r.usePattern)(e, t.pattern, t.flags); let n = a.exec(t); if (n) return (0, r.usePattern)(e, n[1], n[2]); throw Error(`cannot parse string into RegExp`); } }, metaSchema: { anyOf: [{ type: `string` }, i] }, }; } ((e.default = o), (t.exports = o)); }), Le = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Ie()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), Re = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = d(), r = { trimStart: (e) => e.trimStart(), trimEnd: (e) => e.trimEnd(), trimLeft: (e) => e.trimStart(), trimRight: (e) => e.trimEnd(), trim: (e) => e.trim(), toLowerCase: (e) => e.toLowerCase(), toUpperCase: (e) => e.toUpperCase(), toEnumCase: (e, t) => t?.hash[s(e)] || e, }, i = Object.assign(a, { transform: r }); function a() { return { keyword: `transform`, schemaType: `array`, before: `enum`, code(e) { let { gen: t, data: i, schema: a, parentSchema: s, it: c } = e, { parentData: l, parentDataProperty: u } = c, d = a; if (!d.length) return; let f; if (d.includes(`toEnumCase`)) { let e = o(s); f = t.scopeValue(`obj`, { ref: e, code: (0, n.stringify)(e) }); } t.if((0, n._)`typeof ${i} == "string" && ${l} !== undefined`, () => { (t.assign(i, p(d.slice())), t.assign((0, n._)`${l}[${u}]`, i)); }); function p(e) { if (!e.length) return i; let a = e.pop(); if (!(a in r)) throw Error(`transform: unknown transformation ${a}`); let o = t.scopeValue(`func`, { ref: r[a], code: (0, n._)`require("ajv-keywords/dist/definitions/transform").transform${(0, n.getProperty)(a)}`, }), s = p(e); return f && a === `toEnumCase` ? (0, n._)`${o}(${s}, ${f})` : (0, n._)`${o}(${s})`; } }, metaSchema: { type: `array`, items: { type: `string`, enum: Object.keys(r) } }, }; } function o(e) { let t = { hash: {} }; if (!e.enum) throw Error(`transform: "toEnumCase" requires "enum"`); for (let n of e.enum) { if (typeof n != `string`) continue; let e = s(n); if (t.hash[e]) throw Error(`transform: "toEnumCase" requires all lowercased "enum" values to be unique`); t.hash[e] = n; } return t; } function s(e) { return e.toLowerCase(); } ((e.default = i), (t.exports = i)); }), ze = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Re()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), Be = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = C(), r = [`number`, `integer`, `string`, `boolean`, `null`]; function i() { return { keyword: `uniqueItemProperties`, type: `array`, schemaType: `array`, compile(e, t) { let r = a(e, t); return (t) => { if (t.length <= 1) return !0; for (let i = 0; i < e.length; i++) { let a = e[i]; if (r[i]) { let e = {}; for (let n of t) { if (!n || typeof n != `object`) continue; let t = n[a]; if (!(t && typeof t == `object`)) { if ((typeof t == `string` && (t = `"` + t), e[t])) return !1; e[t] = !0; } } } else for (let e = t.length; e--;) { let r = t[e]; if (!(!r || typeof r != `object`)) for (let i = e; i--;) { let e = t[i]; if (e && typeof e == `object` && n(r[a], e[a])) return !1; } } } return !0; }; }, metaSchema: { type: `array`, items: { type: `string` } }, }; } e.default = i; function a(e, t) { return e.map((e) => { let n = t.items?.properties?.[e]?.type; return Array.isArray(n) ? !n.includes(`object`) && !n.includes(`array`) : r.includes(n); }); } t.exports = i; }), Ve = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Be()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), He = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); function n() { return { keyword: `allRequired`, type: `object`, schemaType: `boolean`, macro(e, t) { if (!e) return !0; let n = Object.keys(t.properties); return n.length === 0 || { required: n }; }, dependencies: [`properties`], }; } ((e.default = n), (t.exports = n)); }), Ue = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(He()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), We = o((e) => { Object.defineProperty(e, "__esModule", { value: !0 }); function t(e) { return () => ({ keyword: e, type: `object`, schemaType: `array`, macro(t) { return t.length === 0 ? !0 : t.length === 1 ? { required: t } : { [e === `anyRequired` ? `anyOf` : `oneOf`]: t.map((e) => ({ required: [e] })) }; }, metaSchema: { type: `array`, items: { type: `string` } }, }); } e.default = t; }), Ge = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = (0, n(We()).default)(`anyRequired`); ((e.default = r), (t.exports = r)); }), Ke = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Ge()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), qe = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = (0, n(We()).default)(`oneRequired`); ((e.default = r), (t.exports = r)); }), Je = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(qe()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), Ye = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = d(), r = $(), i = { message: ({ params: { missingPattern: e } }) => (0, n.str)`should have property matching pattern '${e}'`, params: ({ params: { missingPattern: e } }) => (0, n._)`{missingPattern: ${e}}`, }; function a() { return { keyword: `patternRequired`, type: `object`, schemaType: `array`, error: i, code(e) { let { gen: t, schema: i, data: a } = e; if (i.length === 0) return; let o = t.let(`valid`, !0); for (let e of i) s(e); function s(i) { let s = t.let(`matched`, !1); (t.forIn(`key`, a, (a) => { (t.assign(s, (0, n._)`${(0, r.usePattern)(e, i)}.test(${a})`), t.if(s, () => t.break())); }), e.setParams({ missingPattern: i }), t.assign(o, (0, n.and)(o, s)), e.pass(o)); } }, metaSchema: { type: `array`, items: { type: `string`, format: `regex` }, uniqueItems: !0 }, }; } ((e.default = a), (t.exports = a)); }), Xe = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Ye()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), Ze = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); function n() { return { keyword: `prohibited`, type: `object`, schemaType: `array`, macro: function (e) { return e.length === 0 ? !0 : e.length === 1 ? { not: { required: e } } : { not: { anyOf: e.map((e) => ({ required: [e] })) } }; }, metaSchema: { type: `array`, items: { type: `string` } }, }; } ((e.default = n), (t.exports = n)); }), Qe = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Ze()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), $e = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = $(); function r(e) { return { keyword: `deepProperties`, type: `object`, schemaType: `object`, macro: function (e) { let t = []; for (let n in e) t.push(i(n, e[n])); return { allOf: t }; }, metaSchema: { type: `object`, propertyNames: { type: `string`, format: `json-pointer` }, additionalProperties: (0, n.metaSchemaRef)(e), }, }; } e.default = r; function i(e, t) { let n = e.split(`/`), r = {}, i = r; for (let e = 1; e < n.length; e++) { let r = n[e], o = e === n.length - 1; r = a(r); let s = (i.properties = {}), c; if (/[0-9]+/.test(r)) { let e = +r; for (c = i.items = [], i.type = [`object`, `array`]; e--;) c.push({}); } else i.type = `object`; ((i = o ? t : {}), (s[r] = i), c && c.push(i)); } return r; } function a(e) { return e.replace(/~1/g, `/`).replace(/~0/g, `~`); } t.exports = r; }), et = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n($e()), i = (e, t) => e.addKeyword((0, r.default)(t)); ((e.default = i), (t.exports = i)); }), tt = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = d(); function r() { return { keyword: `deepRequired`, type: `object`, schemaType: `array`, code(e) { let { schema: t, data: r } = e, a = t.map((e) => (0, n._)`(${o(e)}) === undefined`); e.fail((0, n.or)(...a)); function o(e) { if (e === ``) throw Error(`empty JSON pointer not allowed`); let t = e.split(`/`), a = r, o = t.map((e, t) => (t ? (a = (0, n._)`${a}${(0, n.getProperty)(i(e))}`) : a)); return (0, n.and)(...o); } }, metaSchema: { type: `array`, items: { type: `string`, format: `json-pointer` } }, }; } e.default = r; function i(e) { return e.replace(/~1/g, `/`).replace(/~0/g, `~`); } t.exports = r; }), nt = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(tt()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), rt = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = {}, r = { timestamp: () => () => Date.now(), datetime: () => () => new Date().toISOString(), date: () => () => new Date().toISOString().slice(0, 10), time: () => () => new Date().toISOString().slice(11), random: () => () => Math.random(), randomint: (e) => { let t = e?.max ?? 2; return () => Math.floor(Math.random() * t); }, seq: (e) => { let t = e?.name ?? ``; return (n[t] || (n[t] = 0), () => n[t]++); }, }, i = Object.assign(a, { DEFAULTS: r }); function a() { return { keyword: `dynamicDefaults`, type: `object`, schemaType: [`string`, `object`], modifying: !0, valid: !0, compile(e, t, n) { if (!n.opts.useDefaults || n.compositeRule) return () => !0; let r = {}; for (let t in e) r[t] = o(e[t]); let i = n.opts.useDefaults === `empty`; return (t) => { for (let n in e) (t[n] === void 0 || (i && (t[n] === null || t[n] === ``))) && (t[n] = r[n]()); return !0; }; }, metaSchema: { type: `object`, additionalProperties: { anyOf: [ { type: `string` }, { type: `object`, additionalProperties: !1, required: [`func`, `args`], properties: { func: { type: `string` }, args: { type: `object` } }, }, ], }, }, }; } function o(e) { return typeof e == `object` ? s(e) : c(e); } function s({ func: e, args: t }) { let n = r[e]; return (l(e, n), n(t)); } function c(e = ``) { let t = r[e]; return (l(e, t), t()); } function l(e, t) { if (!t) throw Error(`invalid "dynamicDefaults" keyword property value: ${e}`); } ((e.default = i), (t.exports = i)); }), it = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(rt()), i = (e) => e.addKeyword((0, r.default)()); ((e.default = i), (t.exports = i)); }), at = o((e, t) => { Object.defineProperty(e, "__esModule", { value: !0 }); let n = d(), r = $(), i = { message: ({ params: { schemaProp: e } }) => e ? (0, n.str)`should match case "${e}" schema` : (0, n.str)`should match default case schema`, params: ({ params: { schemaProp: e } }) => e ? (0, n._)`{failingCase: ${e}}` : (0, n._)`{failingDefault: true}`, }; function a(e) { let t = (0, r.metaSchemaRef)(e); return [ { keyword: `select`, schemaType: [`string`, `number`, `boolean`, `null`], $data: !0, error: i, dependencies: [`selectCases`], code(e) { let { gen: t, schemaCode: r, parentSchema: i } = e; e.block$data(n.nil, () => { let a = t.let(`valid`, !0), o = t.name(`_valid`), s = t.const(`value`, (0, n._)`${r} === null ? "null" : ${r}`); t.if(!1); for (let r in i.selectCases) { (e.setParams({ schemaProp: r }), t.elseIf((0, n._)`"" + ${s} == ${r}`)); let i = e.subschema({ keyword: `selectCases`, schemaProp: r }, o); (e.mergeEvaluated(i, n.Name), t.assign(a, o)); } if ((t.else(), i.selectDefault !== void 0)) { e.setParams({ schemaProp: void 0 }); let r = e.subschema({ keyword: `selectDefault` }, o); (e.mergeEvaluated(r, n.Name), t.assign(a, o)); } (t.endIf(), e.pass(a)); }); }, }, { keyword: `selectCases`, dependencies: [`select`], metaSchema: { type: `object`, additionalProperties: t }, }, { keyword: `selectDefault`, dependencies: [`select`, `selectCases`], metaSchema: t }, ]; } ((e.default = a), (t.exports = a)); }), ot = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(at()), i = (e, t) => ((0, r.default)(t).forEach((t) => e.addKeyword(t)), e); ((e.default = i), (t.exports = i)); }), st = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(Oe()), i = n(Ae()), a = n(Ne()), o = n(Fe()), s = n(Le()), c = n(ze()), l = n(Ve()), u = n(Ue()), d = n(Ke()), f = n(Je()), p = n(Xe()), m = n(Qe()), h = n(et()), g = n(nt()), _ = n(it()), v = n(ot()), y = { typeof: r.default, instanceof: i.default, range: a.default, exclusiveRange: o.default, regexp: s.default, transform: c.default, uniqueItemProperties: l.default, allRequired: u.default, anyRequired: d.default, oneRequired: f.default, patternRequired: p.default, prohibited: m.default, deepProperties: h.default, deepRequired: g.default, dynamicDefaults: _.default, select: v.default, }; ((e.default = y), (t.exports = y)); }), ct = o((e, t) => { var n = (e && e.__importDefault) || function (e) { return e && e.__esModule ? e : { default: e }; }; Object.defineProperty(e, "__esModule", { value: !0 }); let r = n(st()), i = (e, t) => { if (Array.isArray(t)) { for (let n of t) a(n)(e); return e; } if (t) return (a(t)(e), e); for (t in r.default) a(t)(e); return e; }; i.get = a; function a(e) { let t = r.default[e]; if (!t) throw Error(`Unknown keyword ` + e); return t; } ((e.default = i), (t.exports = i), (t.exports.default = i)); }), lt = Ce(), ut = c(Ee(), 1), dt = c(ct(), 1); const ft = new lt.Ajv(); ((0, ut.default)(ft, { formats: [`url`] }), (0, dt.default)(ft, [`instanceof`])); const pt = { type: `object`, instanceof: `Date`, required: [] }, mt = { type: `object`, properties: { id: { type: `number` }, created: pt, title: { type: `string`, minLength: 1, maxLength: 100 }, type: { type: `string`, enum: [`jpg`, `png`] }, size: { type: `number` }, url: { type: `string`, format: `url` }, }, required: [`id`, `created`, `title`, `type`, `size`, `url`], }, ht = { type: `object`, properties: { id: { type: `number` }, created: pt, title: { type: `string`, minLength: 1, maxLength: 100 }, brand: { type: `string`, minLength: 1, maxLength: 30 }, description: { type: `string`, minLength: 1, maxLength: 500 }, price: { type: `number`, minimum: 1, maximum: 1e4 }, discount: { type: `number`, minimum: 1, maximum: 100, nullable: !0 }, quantity: { type: `number`, minimum: 0, maximum: 10 }, tags: { type: `array`, items: { type: `string`, minLength: 1, maxLength: 30 } }, images: { type: `array`, items: mt }, ratings: { type: `array`, items: { type: `object`, properties: { id: { type: `number` }, stars: { type: `number`, minimum: 0, maximum: 5 }, title: { type: `string`, minLength: 1, maxLength: 100 }, text: { type: `string`, minLength: 1, maxLength: 1e3 }, images: { type: `array`, items: mt }, }, required: [`id`, `stars`, `title`, `text`, `images`], }, }, }, required: [ `id`, `created`, `title`, `brand`, `description`, `price`, `discount`, `quantity`, `tags`, `images`, `ratings`, ], }; ft.validate(ht, {});
Created by eskimojo for Open Circle

Preferences

Style
Theme
NPM browser
Code ligatures