z-schema 12.1.0 → 12.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cjs/index.js CHANGED
@@ -1742,8 +1742,10 @@ const isValidHostname = (hostname) => {
1742
1742
  if (labels === null) return false;
1743
1743
  for (const label of labels) {
1744
1744
  if (!isAsciiHostnameLabel(label)) return false;
1745
- const unicodeLabel = toUnicodeLabel(label);
1746
- if (unicodeLabel === null || !isValidIdnUnicodeLabel(unicodeLabel)) return false;
1745
+ if (/^xn--/i.test(label)) {
1746
+ const unicodeLabel = toUnicodeLabel(label);
1747
+ if (unicodeLabel === null || !isValidIdnUnicodeLabel(unicodeLabel)) return false;
1748
+ }
1747
1749
  }
1748
1750
  return true;
1749
1751
  };
@@ -55,8 +55,10 @@ const isValidHostname = (hostname) => {
55
55
  if (labels === null) return false;
56
56
  for (const label of labels) {
57
57
  if (!isAsciiHostnameLabel(label)) return false;
58
- const unicodeLabel = toUnicodeLabel(label);
59
- if (unicodeLabel === null || !isValidIdnUnicodeLabel(unicodeLabel)) return false;
58
+ if (/^xn--/i.test(label)) {
59
+ const unicodeLabel = toUnicodeLabel(label);
60
+ if (unicodeLabel === null || !isValidIdnUnicodeLabel(unicodeLabel)) return false;
61
+ }
60
62
  }
61
63
  return true;
62
64
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "z-schema",
3
- "version": "12.1.0",
3
+ "version": "12.1.1",
4
4
  "description": "Fast, lightweight JSON Schema validator for Node.js and browsers — full support for draft-04, draft-06, draft-07, draft-2019-09, and draft-2020-12 (latest)",
5
5
  "keywords": [
6
6
  "draft-04",
@@ -147,9 +147,12 @@ export const isValidHostname = (hostname: string): boolean => {
147
147
  return false;
148
148
  }
149
149
 
150
- const unicodeLabel = toUnicodeLabel(label);
151
- if (unicodeLabel === null || !isValidIdnUnicodeLabel(unicodeLabel)) {
152
- return false;
150
+ // Punycode (A-label) hostnames encode IDN labels, so validate the decoded Unicode form
151
+ if (/^xn--/i.test(label)) {
152
+ const unicodeLabel = toUnicodeLabel(label);
153
+ if (unicodeLabel === null || !isValidIdnUnicodeLabel(unicodeLabel)) {
154
+ return false;
155
+ }
153
156
  }
154
157
  }
155
158
 
package/umd/ZSchema.js CHANGED
@@ -2482,8 +2482,10 @@
2482
2482
  if (labels === null) return false;
2483
2483
  for (const label of labels) {
2484
2484
  if (!isAsciiHostnameLabel(label)) return false;
2485
- const unicodeLabel = toUnicodeLabel(label);
2486
- if (unicodeLabel === null || !isValidIdnUnicodeLabel(unicodeLabel)) return false;
2485
+ if (/^xn--/i.test(label)) {
2486
+ const unicodeLabel = toUnicodeLabel(label);
2487
+ if (unicodeLabel === null || !isValidIdnUnicodeLabel(unicodeLabel)) return false;
2488
+ }
2487
2489
  }
2488
2490
  return true;
2489
2491
  };
@@ -1,2 +1,2 @@
1
1
  (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports):typeof define==`function`&&define.amd?define([`exports`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.ZSchema={}))})(this,function(e){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var t=Object.create,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.getPrototypeOf,o=Object.prototype.hasOwnProperty,s=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),c=(e,t,a,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var c=i(t),l=0,u=c.length,d;l<u;l++)d=c[l],!o.call(e,d)&&d!==a&&n(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(s=r(t,d))||s.enumerable});return e},l=(e,r,i)=>(i=e==null?{}:t(a(e)),c(r||!e||!e.__esModule?n(i,`default`,{value:e,enumerable:!0}):i,e));let u=e=>{let t=e.indexOf(`#`);return t===-1?void 0:e.slice(t+1)},d=e=>{let t=e.indexOf(`#`);return t===-1?e:e.slice(0,t)},f=e=>/^[a-zA-Z][a-zA-Z\d+.-]*:/.test(e),p=6e4,m=e=>typeof e==`object`?e===null?`null`:Array.isArray(e)?`array`:`object`:typeof e==`number`?Number.isFinite(e)?e%1==0?`integer`:`number`:Number.isNaN(e)?`not-a-number`:`unknown-number`:typeof e;function h(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function g(e){return typeof e==`number`&&Number.isFinite(e)&&e%1==0}let _=[`enum`,`const`,`default`,`examples`],v=e=>e.startsWith(`__$`),y=e=>typeof e.$schema==`string`&&e.$schema.includes(`draft-04`)?e.id:e.$id??e.id,b=(e,t,n,r,i=100,a=0)=>{if(typeof e!=`object`||!e)return;if(!t)return e;if(a>=i)throw Error(`Maximum recursion depth (${i}) exceeded in findId. If your schema is deeply nested and valid, increase the maxRecursionDepth option.`);let o=r??n,s=y(e),c=o;if(s){if(f(s))c=d(s);else if(o&&f(o))try{c=d(new URL(s,o).toString())}catch{}}if((!n||c===n)&&(s&&(s===t||s[0]===`#`&&s.substring(1)===t)||e.$anchor===t||e.$dynamicAnchor===t))return e;let l;if(Array.isArray(e)){for(let r=0;r<e.length;r++)if(l=b(e[r],t,n,c,i,a+1),l)return l}if(h(e)){let r=Object.keys(e);for(let o=r.length-1;o>=0;o--){let s=r[o];if(!(v(s)||_.includes(s))&&(l=b(e[s],t,n,c,i,a+1),l))return l}}},x={INVALID_TYPE:`Expected type {0} but found type {1}`,INVALID_FORMAT:`Object didn't pass validation for format {0}: {1}`,ENUM_MISMATCH:`No enum match for: {0}`,ENUM_CASE_MISMATCH:`Enum does not match case for: {0}`,ANY_OF_MISSING:`Data does not match any schemas from 'anyOf'`,ONE_OF_MISSING:`Data does not match any schemas from 'oneOf'`,ONE_OF_MULTIPLE:`Data is valid against more than one schema from 'oneOf'`,NOT_PASSED:`Data matches schema from 'not'`,ARRAY_LENGTH_SHORT:`Array is too short ({0}), minimum {1}`,ARRAY_LENGTH_LONG:`Array is too long ({0}), maximum {1}`,ARRAY_UNIQUE:`Array items are not unique (indexes {0} and {1})`,ARRAY_ADDITIONAL_ITEMS:`Additional items not allowed`,ARRAY_UNEVALUATED_ITEMS:`Unevaluated items are not allowed`,MULTIPLE_OF:`Value {0} is not a multiple of {1}`,MINIMUM:`Value {0} is less than minimum {1}`,MINIMUM_EXCLUSIVE:`Value {0} is equal or less than exclusive minimum {1}`,MAXIMUM:`Value {0} is greater than maximum {1}`,MAXIMUM_EXCLUSIVE:`Value {0} is equal or greater than exclusive maximum {1}`,OBJECT_PROPERTIES_MINIMUM:`Too few properties defined ({0}), minimum {1}`,OBJECT_PROPERTIES_MAXIMUM:`Too many properties defined ({0}), maximum {1}`,OBJECT_MISSING_REQUIRED_PROPERTY:`Missing required property: {0}`,OBJECT_ADDITIONAL_PROPERTIES:`Additional properties not allowed: {0}`,OBJECT_UNEVALUATED_PROPERTIES:`Unevaluated properties are not allowed: {0}`,OBJECT_DEPENDENCY_KEY:`Dependency failed - key must exist: {0} (due to key: {1})`,MIN_LENGTH:`String is too short ({0} chars), minimum {1}`,MAX_LENGTH:`String is too long ({0} chars), maximum {1}`,PATTERN:`String does not match pattern {0}: {1}`,KEYWORD_TYPE_EXPECTED:`Keyword '{0}' is expected to be of type '{1}'`,KEYWORD_UNDEFINED_STRICT:`Keyword '{0}' must be defined in strict mode`,KEYWORD_UNEXPECTED:`Keyword '{0}' is not expected to appear in the schema`,KEYWORD_MUST_BE:`Keyword '{0}' must be {1}`,KEYWORD_DEPENDENCY:`Keyword '{0}' requires keyword '{1}'`,KEYWORD_PATTERN:`Keyword '{0}' is not a valid RegExp pattern: {1}`,KEYWORD_VALUE_TYPE:`Each element of keyword '{0}' array must be a '{1}'`,UNKNOWN_FORMAT:`There is no validation function for format '{0}'`,CUSTOM_MODE_FORCE_PROPERTIES:`{0} must define at least one property if present`,REF_UNRESOLVED:`Reference has not been resolved during compilation: {0}`,UNRESOLVABLE_REFERENCE:`Reference could not be resolved: {0}`,SCHEMA_NOT_REACHABLE:`Validator was not able to read schema with uri: {0}`,SCHEMA_TYPE_EXPECTED:`Schema is expected to be of type 'object'`,SCHEMA_NOT_AN_OBJECT:`Schema is not an object: {0}`,ASYNC_TIMEOUT:`{0} asynchronous task(s) have timed out after {1} ms`,PARENT_SCHEMA_VALIDATION_FAILED:`Schema failed to validate against its parent schema, see inner errors for details.`,REMOTE_NOT_VALID:`Remote reference didn't compile successfully: {0}`,SCHEMA_IS_FALSE:`Boolean schema "false" is always invalid.`,CONST:`Value does not match const: {0}`,CONTAINS:`Array does not contain an item matching the schema`,PROPERTY_NAMES:`Property name {0} does not match the propertyNames schema`,COLLECT_EVALUATED_DEPTH_EXCEEDED:`Schema nesting depth exceeded maximum ({0}) during unevaluated items/properties collection`,MAX_RECURSION_DEPTH_EXCEEDED:`Maximum recursion depth ({0}) exceeded. If your schema or data is deeply nested and valid, increase the maxRecursionDepth option.`};var S=class extends Error{name;details;constructor(e,t){super(e),this.name=`z-schema validation error`,this.details=t}};function C({message:e,details:t}){return new S(e||``,t)}function w(e,t,n,r){Object.hasOwn(e,n)&&Object.defineProperty(t,n,{value:r?r(e[n]):e[n],enumerable:!0,writable:!0,configurable:!0})}let T=e=>{if(typeof e!=`object`||!e)return e;let t;if(Array.isArray(e)){t=[];for(let n=0;n<e.length;n++)t[n]=e[n]}else{t={};let n=Object.keys(e).sort();for(let r of n)w(e,t,r)}return t},E=(e,t=100)=>{let n=0,r=new Map,i=[],a=(e,o)=>{if(typeof e!=`object`||!e)return e;if(o>=t)throw Error(`Maximum recursion depth (${t}) exceeded in deepClone. If your schema or data is deeply nested and valid, increase the maxRecursionDepth option.`);let s,c=r.get(e);if(c!==void 0)return i[c];if(r.set(e,n++),Array.isArray(e)){s=[],i.push(s);for(let t=0;t<e.length;t++)s[t]=a(e[t],o+1)}else{s={},i.push(s);let t=Object.keys(e).sort();for(let n of t)w(e,s,n,e=>a(e,o+1))}return s};return a(e,0)},D=(e,t,n,r=0)=>{let i=n?.caseInsensitiveComparison||!1,a=n?.maxDepth??100;if(e===t||i===!0&&typeof e==`string`&&typeof t==`string`&&e.toUpperCase()===t.toUpperCase())return!0;if(r>=a)throw Error(`Maximum recursion depth (${a}) exceeded in areEqual. If your data is deeply nested and valid, increase the maxRecursionDepth option.`);let o,s;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(s=e.length,o=0;o<s;o++)if(!D(e[o],t[o],n,r+1))return!1;return!0}if(h(e)&&h(t)){let i=k(e);if(!D(i,k(t),n,r+1))return!1;for(s=i.length,o=0;o<s;o++)if(!D(e[i[o]],t[i[o]],n,r+1))return!1;return!0}return!1},O=e=>decodeURIComponent(e).replace(/~[0-1]/g,e=>e===`~1`?`/`:`~`),k=e=>Object.keys(e).sort(),A=(e,t)=>(typeof t==`string`&&(t=t.split(`.`)),t.reduce((e,t)=>e&&e[t]!==void 0?e[t]:void 0,e)),j=Symbol.for(`z-schema/json`),ee=Symbol.for(`z-schema/schema`);var M=class e{asyncTasks=[];commonErrorMessage;__$recursiveAnchorStack=[];__$dynamicScopeStack=[];__validationResultCache=new Map;errors=[];json;path=[];schemaPath=[];rootSchema;parentReport;options;reportOptions;validateOptions={};constructor(t,n,r){this.parentReport=t instanceof e?t:void 0,this.options=t instanceof e?t.options:t||{},t instanceof e?(this.reportOptions=n||{},this.validateOptions=r||t.validateOptions,this.__$recursiveAnchorStack=[...t.__$recursiveAnchorStack],this.__$dynamicScopeStack=[...t.__$dynamicScopeStack],this.__validationResultCache=t.__validationResultCache):(this.reportOptions={},this.validateOptions=n||{},this.__$recursiveAnchorStack=[],this.__$dynamicScopeStack=[],this.__validationResultCache=new Map)}isValid(){if(this.asyncTasks.length>0)throw Error(`Async tasks pending, can't answer isValid`);return this.errors.length===0}addAsyncTask(e,t,n){this.asyncTasks.push([e,t,n])}addAsyncTaskWithPath(e,t,n){let r=T(this.path);this.asyncTasks.push([e,t,e=>{let t=this.path;this.path=r,n(e),this.path=t}])}getAncestor(e){if(this.parentReport)return this.parentReport.getSchemaId()===e?this.parentReport:this.parentReport.getAncestor(e)}processAsyncTasks(e,t){let n=Math.min(Math.max(e||2e3,0),p),r=Date.now()+n,i=this.asyncTasks.length,a=!1,o=()=>{setTimeout(()=>{let e=this.errors.length===0;t(e?void 0:C({details:this.errors}),e)},0)},s=e=>t=>{a||(e(t),--i===0&&o())};if(i===0||this.errors.length>0&&this.options.breakOnFirstError){o();return}for(let e=0;e<this.asyncTasks.length;e++){let[t,n,r]=this.asyncTasks[e],i=s(r);t(...n,i)}let c=()=>{if(!(a||i<=0)){if(Date.now()>=r){a=!0,this.addError(`ASYNC_TIMEOUT`,[i,n]),t(C({details:this.errors}),!1);return}setTimeout(c,10)}};setTimeout(c,10)}getPath(e){let t=[];return this.parentReport&&(t=t.concat(this.parentReport.path)),t=t.concat(this.path),e===!0?t:`#/`+t.map(function(e){return e=e.toString(),f(e)?`uri(`+e+`)`:e.replace(/~/g,`~0`).replace(/\//g,`~1`)}).join(`/`)}getSchemaPath(){let e=[];return this.parentReport&&(e=e.concat(this.parentReport.schemaPath)),e=e.concat(this.schemaPath),e}getSchemaId(){if(!this.rootSchema)return;let e=[];for(this.parentReport&&(e=e.concat(this.parentReport.path)),e=e.concat(this.path);e.length>0;){let t=A(this.rootSchema,e);if(t&&t.id)return t.id;e.pop()}return this.rootSchema.id}hasError(e,t){for(let n=0;n<this.errors.length;n++)if(this.errors[n].code===e){let e=!0;for(let r=0;r<this.errors[n].params.length;r++)this.errors[n].params[r]!==t[r]&&(e=!1);if(e)return e}return!1}addError(e,t,n,r,i){if(!e)throw Error(`No errorCode passed into addError()`);this.addCustomError(e,x[e],t,n,r,i)}getJson(){if(this.json)return this.json;if(this.parentReport)return this.parentReport.getJson()}addCustomError(e,t,n,r,i,a){if(typeof this.reportOptions.maxErrors==`number`&&this.errors.length>=this.reportOptions.maxErrors)return;if(!t)throw Error(`No errorMessage known for code `+e);n||=[];for(let e=0;e<n.length;e++){let r=n[e]===null||h(n[e])?JSON.stringify(n[e]):n[e];t=t.replace(`{`+e+`}`,r.toString())}let o={code:e,params:n,message:t,path:this.getPath(this.options.reportPathAsArray),schemaPath:this.getSchemaPath(),schemaId:this.getSchemaId(),keyword:a};if(o[ee]=i,o[j]=this.getJson(),i&&typeof i==`string`?o.description=i:i&&typeof i==`object`&&(i.title&&(o.title=i.title),i.description&&(o.description=i.description)),r!=null){Array.isArray(r)||(r=[r]),o.inner=[];for(let e of r)for(let t of e.errors)o.inner.push(t);o.inner.length===0&&(o.inner=void 0)}Array.isArray(this.validateOptions.excludeErrors)&&this.validateOptions.excludeErrors.includes(e)||this.errors.push(o)}};let te={"draft-04":`http://json-schema.org/draft-04/schema#`,"draft-06":`http://json-schema.org/draft-06/schema#`,"draft-07":`http://json-schema.org/draft-07/schema#`,"draft2019-09":`https://json-schema.org/draft/2019-09/schema`,"draft2020-12":`https://json-schema.org/draft/2020-12/schema`},N={version:`draft2020-12`,asyncTimeout:2e3,forceAdditional:!1,assumeAdditional:!1,enumCaseInsensitiveComparison:!1,forceItems:!1,forceMinItems:!1,forceMaxItems:!1,forceMinLength:!1,forceMaxLength:!1,forceProperties:!1,ignoreUnresolvableReferences:!1,noExtraKeywords:!1,noTypeless:!1,noEmptyStrings:!1,noEmptyArrays:!1,strictUris:!1,strictMode:!1,reportPathAsArray:!1,breakOnFirstError:!1,pedanticCheck:!1,ignoreUnknownFormats:!1,formatAssertions:null,customValidator:null,maxRecursionDepth:100},ne=e=>{let t;if(typeof e==`object`){let n=Object.keys(e);for(let e of n)if(N[e]===void 0)throw Error(`Unexpected option passed to constructor: `+e);n=Object.keys(N);for(let t of n)e[t]===void 0&&(e[t]=T(N[t]));t=e}else t=T(N);return t.asyncTimeout!=null&&(t.asyncTimeout=Math.min(Math.max(t.asyncTimeout,0),p)),t.strictMode===!0&&(t.forceAdditional=!0,t.forceItems=!0,t.forceMaxLength=!0,t.forceProperties=!0,t.noExtraKeywords=!0,t.noTypeless=!0,t.noEmptyStrings=!0,t.noEmptyArrays=!0),t};function P(e){let t=d(e);if(t&&!(t===`__proto__`||t===`constructor`||t===`prototype`))return t}let re=e=>{let t=y(e);return(!t||!f(t))&&typeof e.id==`string`&&f(e.id)&&(t=e.id),t};function ie(e,t,n,r){let i;return i=typeof e==`string`?JSON.parse(e):E(e,r),i.id||=t,n&&(i.__$validationOptions=ne(n)),i}var ae=class e{static global_cache=Object.create(null);cache=Object.create(null);constructor(e){this.validator=e}static cacheSchemaByUri(e,t){let n=P(e);n&&(this.global_cache[n]=t)}cacheSchemaByUri(e,t){let n=P(e);n&&(this.cache[n]=t)}removeFromCacheByUri(e){let t=P(e);t&&delete this.cache[t]}checkCacheForUri(e){let t=P(e);return t?this.cache[t]!=null:!1}getSchema(e,t){return Array.isArray(t)?t.map(t=>this.getSchema(e,t)):typeof t==`string`?this.getSchemaByUri(e,t):E(t,this.validator.options.maxRecursionDepth)}fromCache(t){if(t===`__proto__`||t===`constructor`||t===`prototype`)return;let n=this.cache[t];if(n)return n;if(n=e.global_cache[t],n){let e=E(n,this.validator.options.maxRecursionDepth);return(!e.id||!f(e.id)&&f(t))&&(e.id=t),this.cache[t]=e,e}}getSchemaByUri(e,t,n){if(n&&!f(t)){let e=re(n);if(e&&f(e)){let n=e.indexOf(`#`),r=n===-1?e:e.slice(0,n);try{t=new URL(t,r).toString()}catch{}}}let r=P(t),i=u(t),a,o=!1;if(r){let t=e.getAncestor(r);t?.rootSchema&&(a=t.rootSchema,o=!0)}if(!a&&n&&r){let e=re(n),t=e?d(e):void 0;t&&t===r&&(a=n)}if(a||=r?this.fromCache(r):n,a&&r&&f(r)&&(!a.id||!f(a.id))&&(a.id=r),a&&r&&a!==n&&!o){e.path.push(r);let n,i=!1,o=a.id?e.getAncestor(a.id):void 0;if(o)n=o,i=!0;else{n=new M(e);let t=!(a.id&&f(a.id));if(this.validator.sc.compileSchema(n,a,{noCache:t})){let t=this.validator.options;try{this.validator.options=a.__$validationOptions||this.validator.options;let t=typeof a.$schema==`string`?d(a.$schema):void 0,r=e.getSchemaId();t&&t.length>0&&(r===t||e.getAncestor(t))||this.validator.sv.validateSchema(n,a)}finally{this.validator.options=t}}}let s=i?!0:n.isValid();if(s||e.addError(`REMOTE_NOT_VALID`,[t],n),e.path.pop(),!s)return}let s=a;if(a&&i){let e=i.split(`/`);for(let t=0,n=e.length;a&&t<n;t++){let n=O(e[t]);a=t===0?b(a,n,r,r,this.validator.options.maxRecursionDepth):a[n]}}return a&&typeof a==`object`&&s&&typeof s==`object`&&(a.__$resourceRoot=s),a}},oe={id:`http://json-schema.org/draft-04/schema#`,$schema:`http://json-schema.org/draft-04/schema#`,description:`Core schema meta-schema`,definitions:{schemaArray:{type:`array`,minItems:1,items:{$ref:`#`}},positiveInteger:{type:`integer`,minimum:0},positiveIntegerDefault0:{allOf:[{$ref:`#/definitions/positiveInteger`},{default:0}]},simpleTypes:{enum:[`array`,`boolean`,`integer`,`null`,`number`,`object`,`string`]},stringArray:{type:`array`,items:{type:`string`},minItems:1,uniqueItems:!0}},type:`object`,properties:{id:{type:`string`},$schema:{type:`string`},title:{type:`string`},description:{type:`string`},default:{},multipleOf:{type:`number`,minimum:0,exclusiveMinimum:!0},maximum:{type:`number`},exclusiveMaximum:{type:`boolean`,default:!1},minimum:{type:`number`},exclusiveMinimum:{type:`boolean`,default:!1},maxLength:{$ref:`#/definitions/positiveInteger`},minLength:{$ref:`#/definitions/positiveIntegerDefault0`},pattern:{type:`string`,format:`regex`},additionalItems:{anyOf:[{type:`boolean`},{$ref:`#`}],default:{}},items:{anyOf:[{$ref:`#`},{$ref:`#/definitions/schemaArray`}],default:{}},maxItems:{$ref:`#/definitions/positiveInteger`},minItems:{$ref:`#/definitions/positiveIntegerDefault0`},uniqueItems:{type:`boolean`,default:!1},maxProperties:{$ref:`#/definitions/positiveInteger`},minProperties:{$ref:`#/definitions/positiveIntegerDefault0`},required:{$ref:`#/definitions/stringArray`},additionalProperties:{anyOf:[{type:`boolean`},{$ref:`#`}],default:{}},definitions:{type:`object`,additionalProperties:{$ref:`#`},default:{}},properties:{type:`object`,additionalProperties:{$ref:`#`},default:{}},patternProperties:{type:`object`,additionalProperties:{$ref:`#`},default:{}},dependencies:{type:`object`,additionalProperties:{anyOf:[{$ref:`#`},{$ref:`#/definitions/stringArray`}]}},enum:{type:`array`,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:`#/definitions/simpleTypes`},{type:`array`,items:{$ref:`#/definitions/simpleTypes`},minItems:1,uniqueItems:!0}]},format:{type:`string`},allOf:{$ref:`#/definitions/schemaArray`},anyOf:{$ref:`#/definitions/schemaArray`},oneOf:{$ref:`#/definitions/schemaArray`},not:{$ref:`#`}},dependencies:{exclusiveMaximum:[`maximum`],exclusiveMinimum:[`minimum`]},default:{}},se={$schema:`http://json-schema.org/draft-06/schema#`,$id:`http://json-schema.org/draft-06/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`},title:{type:`string`},description:{type:`string`},default:{},examples:{type:`array`,items:{}},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:{}},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:{},enum:{type:`array`,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:`#/definitions/simpleTypes`},{type:`array`,items:{$ref:`#/definitions/simpleTypes`},minItems:1,uniqueItems:!0}]},format:{type:`string`},allOf:{$ref:`#/definitions/schemaArray`},anyOf:{$ref:`#/definitions/schemaArray`},oneOf:{$ref:`#/definitions/schemaArray`},not:{$ref:`#`}},default:{}},ce={$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},writeOnly:{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},le={$schema:`https://json-schema.org/draft/2019-09/schema`,$id:`https://json-schema.org/draft/2019-09/meta/applicator`,$recursiveAnchor:!0,title:`Applicator vocabulary meta-schema`,type:[`object`,`boolean`],properties:{additionalItems:{$recursiveRef:`#`},unevaluatedItems:{$recursiveRef:`#`},items:{anyOf:[{$recursiveRef:`#`},{$ref:`#/$defs/schemaArray`}]},contains:{$recursiveRef:`#`},additionalProperties:{$recursiveRef:`#`},unevaluatedProperties:{$recursiveRef:`#`},properties:{type:`object`,additionalProperties:{$recursiveRef:`#`},default:{}},patternProperties:{type:`object`,additionalProperties:{$recursiveRef:`#`},propertyNames:{format:`regex`},default:{}},dependentSchemas:{type:`object`,additionalProperties:{$recursiveRef:`#`}},propertyNames:{$recursiveRef:`#`},if:{$recursiveRef:`#`},then:{$recursiveRef:`#`},else:{$recursiveRef:`#`},allOf:{$ref:`#/$defs/schemaArray`},anyOf:{$ref:`#/$defs/schemaArray`},oneOf:{$ref:`#/$defs/schemaArray`},not:{$recursiveRef:`#`}},$defs:{schemaArray:{type:`array`,minItems:1,items:{$recursiveRef:`#`}}}},ue={$schema:`https://json-schema.org/draft/2019-09/schema`,$id:`https://json-schema.org/draft/2019-09/meta/content`,$recursiveAnchor:!0,title:`Content vocabulary meta-schema`,type:[`object`,`boolean`],properties:{contentMediaType:{type:`string`},contentEncoding:{type:`string`},contentSchema:{$recursiveRef:`#`}}},de={$schema:`https://json-schema.org/draft/2019-09/schema`,$id:`https://json-schema.org/draft/2019-09/meta/core`,$recursiveAnchor:!0,title:`Core vocabulary meta-schema`,type:[`object`,`boolean`],properties:{$id:{type:`string`,format:`uri-reference`,$comment:`Non-empty fragments not allowed.`,pattern:`^[^#]*#?$`},$schema:{type:`string`,format:`uri`},$anchor:{type:`string`,pattern:`^[A-Za-z][-A-Za-z0-9.:_]*$`},$ref:{type:`string`,format:`uri-reference`},$recursiveRef:{type:`string`,format:`uri-reference`},$recursiveAnchor:{type:`boolean`,default:!1},$vocabulary:{type:`object`,propertyNames:{type:`string`,format:`uri`},additionalProperties:{type:`boolean`}},$comment:{type:`string`},$defs:{type:`object`,additionalProperties:{$recursiveRef:`#`},default:{}}}},fe={$schema:`https://json-schema.org/draft/2019-09/schema`,$id:`https://json-schema.org/draft/2019-09/meta/format`,$recursiveAnchor:!0,title:`Format vocabulary meta-schema`,type:[`object`,`boolean`],properties:{format:{type:`string`}}},pe={$schema:`https://json-schema.org/draft/2019-09/schema`,$id:`https://json-schema.org/draft/2019-09/meta/meta-data`,$recursiveAnchor:!0,title:`Meta-data vocabulary meta-schema`,type:[`object`,`boolean`],properties:{title:{type:`string`},description:{type:`string`},default:!0,deprecated:{type:`boolean`,default:!1},readOnly:{type:`boolean`,default:!1},writeOnly:{type:`boolean`,default:!1},examples:{type:`array`,items:!0}}},me={$schema:`https://json-schema.org/draft/2019-09/schema`,$id:`https://json-schema.org/draft/2019-09/meta/validation`,$recursiveAnchor:!0,title:`Validation vocabulary meta-schema`,type:[`object`,`boolean`],properties:{multipleOf:{type:`number`,exclusiveMinimum:0},maximum:{type:`number`},exclusiveMaximum:{type:`number`},minimum:{type:`number`},exclusiveMinimum:{type:`number`},maxLength:{$ref:`#/$defs/nonNegativeInteger`},minLength:{$ref:`#/$defs/nonNegativeIntegerDefault0`},pattern:{type:`string`,format:`regex`},maxItems:{$ref:`#/$defs/nonNegativeInteger`},minItems:{$ref:`#/$defs/nonNegativeIntegerDefault0`},uniqueItems:{type:`boolean`,default:!1},maxContains:{$ref:`#/$defs/nonNegativeInteger`},minContains:{$ref:`#/$defs/nonNegativeInteger`,default:1},maxProperties:{$ref:`#/$defs/nonNegativeInteger`},minProperties:{$ref:`#/$defs/nonNegativeIntegerDefault0`},required:{$ref:`#/$defs/stringArray`},dependentRequired:{type:`object`,additionalProperties:{$ref:`#/$defs/stringArray`}},const:!0,enum:{type:`array`,items:!0},type:{anyOf:[{$ref:`#/$defs/simpleTypes`},{type:`array`,items:{$ref:`#/$defs/simpleTypes`},minItems:1,uniqueItems:!0}]}},$defs:{nonNegativeInteger:{type:`integer`,minimum:0},nonNegativeIntegerDefault0:{$ref:`#/$defs/nonNegativeInteger`,default:0},simpleTypes:{enum:[`array`,`boolean`,`integer`,`null`,`number`,`object`,`string`]},stringArray:{type:`array`,items:{type:`string`},uniqueItems:!0,default:[]}}},he={$schema:`https://json-schema.org/draft/2019-09/schema`,$id:`https://json-schema.org/draft/2019-09/schema`,$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/core":!0,"https://json-schema.org/draft/2019-09/vocab/applicator":!0,"https://json-schema.org/draft/2019-09/vocab/validation":!0,"https://json-schema.org/draft/2019-09/vocab/meta-data":!0,"https://json-schema.org/draft/2019-09/vocab/format":!1,"https://json-schema.org/draft/2019-09/vocab/content":!0},$recursiveAnchor:!0,title:`Core and Validation specifications meta-schema`,allOf:[{$ref:`meta/core`},{$ref:`meta/applicator`},{$ref:`meta/validation`},{$ref:`meta/meta-data`},{$ref:`meta/format`},{$ref:`meta/content`}],type:[`object`,`boolean`],properties:{definitions:{$comment:`While no longer an official keyword as it is replaced by $defs, this keyword is retained in the meta-schema to prevent incompatible extensions as it remains in common use.`,type:`object`,additionalProperties:{$recursiveRef:`#`},default:{}},dependencies:{$comment:`"dependencies" is no longer a keyword, but schema authors should avoid redefining it to facilitate a smooth transition to "dependentSchemas" and "dependentRequired"`,type:`object`,additionalProperties:{anyOf:[{$recursiveRef:`#`},{$ref:`meta/validation#/$defs/stringArray`}]}}}},ge={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/meta/applicator`,$dynamicAnchor:`meta`,title:`Applicator vocabulary meta-schema`,type:[`object`,`boolean`],properties:{prefixItems:{$ref:`#/$defs/schemaArray`},items:{$dynamicRef:`#meta`},contains:{$dynamicRef:`#meta`},additionalProperties:{$dynamicRef:`#meta`},properties:{type:`object`,additionalProperties:{$dynamicRef:`#meta`},default:{}},patternProperties:{type:`object`,additionalProperties:{$dynamicRef:`#meta`},propertyNames:{format:`regex`},default:{}},dependentSchemas:{type:`object`,additionalProperties:{$dynamicRef:`#meta`},default:{}},propertyNames:{$dynamicRef:`#meta`},if:{$dynamicRef:`#meta`},then:{$dynamicRef:`#meta`},else:{$dynamicRef:`#meta`},allOf:{$ref:`#/$defs/schemaArray`},anyOf:{$ref:`#/$defs/schemaArray`},oneOf:{$ref:`#/$defs/schemaArray`},not:{$dynamicRef:`#meta`}},$defs:{schemaArray:{type:`array`,minItems:1,items:{$dynamicRef:`#meta`}}}},_e={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/meta/content`,$dynamicAnchor:`meta`,title:`Content vocabulary meta-schema`,type:[`object`,`boolean`],properties:{contentEncoding:{type:`string`},contentMediaType:{type:`string`},contentSchema:{$dynamicRef:`#meta`}}},ve={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/meta/core`,$dynamicAnchor:`meta`,title:`Core vocabulary meta-schema`,type:[`object`,`boolean`],properties:{$id:{$ref:`#/$defs/uriReferenceString`,$comment:`Non-empty fragments not allowed.`,pattern:`^[^#]*#?$`},$schema:{$ref:`#/$defs/uriString`},$ref:{$ref:`#/$defs/uriReferenceString`},$anchor:{$ref:`#/$defs/anchorString`},$dynamicRef:{$ref:`#/$defs/uriReferenceString`},$dynamicAnchor:{$ref:`#/$defs/anchorString`},$vocabulary:{type:`object`,propertyNames:{$ref:`#/$defs/uriString`},additionalProperties:{type:`boolean`}},$comment:{type:`string`},$defs:{type:`object`,additionalProperties:{$dynamicRef:`#meta`}}},$defs:{anchorString:{type:`string`,pattern:`^[A-Za-z_][-A-Za-z0-9._]*$`},uriString:{type:`string`,format:`uri`},uriReferenceString:{type:`string`,format:`uri-reference`}}},ye={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/meta/format-annotation`,$dynamicAnchor:`meta`,title:`Format vocabulary meta-schema for annotation results`,type:[`object`,`boolean`],properties:{format:{type:`string`}}},be={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/meta/format-assertion`,$dynamicAnchor:`meta`,title:`Format vocabulary meta-schema for assertion results`,type:[`object`,`boolean`],properties:{format:{type:`string`}}},xe={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/meta/meta-data`,$dynamicAnchor:`meta`,title:`Meta-data vocabulary meta-schema`,type:[`object`,`boolean`],properties:{title:{type:`string`},description:{type:`string`},default:!0,deprecated:{type:`boolean`,default:!1},readOnly:{type:`boolean`,default:!1},writeOnly:{type:`boolean`,default:!1},examples:{type:`array`,items:!0}}},Se={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/meta/unevaluated`,$dynamicAnchor:`meta`,title:`Unevaluated applicator vocabulary meta-schema`,type:[`object`,`boolean`],properties:{unevaluatedItems:{$dynamicRef:`#meta`},unevaluatedProperties:{$dynamicRef:`#meta`}}},Ce={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/meta/validation`,$dynamicAnchor:`meta`,title:`Validation vocabulary meta-schema`,type:[`object`,`boolean`],properties:{type:{anyOf:[{$ref:`#/$defs/simpleTypes`},{type:`array`,items:{$ref:`#/$defs/simpleTypes`},minItems:1,uniqueItems:!0}]},const:!0,enum:{type:`array`,items:!0},multipleOf:{type:`number`,exclusiveMinimum:0},maximum:{type:`number`},exclusiveMaximum:{type:`number`},minimum:{type:`number`},exclusiveMinimum:{type:`number`},maxLength:{$ref:`#/$defs/nonNegativeInteger`},minLength:{$ref:`#/$defs/nonNegativeIntegerDefault0`},pattern:{type:`string`,format:`regex`},maxItems:{$ref:`#/$defs/nonNegativeInteger`},minItems:{$ref:`#/$defs/nonNegativeIntegerDefault0`},uniqueItems:{type:`boolean`,default:!1},maxContains:{$ref:`#/$defs/nonNegativeInteger`},minContains:{$ref:`#/$defs/nonNegativeInteger`,default:1},maxProperties:{$ref:`#/$defs/nonNegativeInteger`},minProperties:{$ref:`#/$defs/nonNegativeIntegerDefault0`},required:{$ref:`#/$defs/stringArray`},dependentRequired:{type:`object`,additionalProperties:{$ref:`#/$defs/stringArray`}}},$defs:{nonNegativeInteger:{type:`integer`,minimum:0},nonNegativeIntegerDefault0:{$ref:`#/$defs/nonNegativeInteger`,default:0},simpleTypes:{enum:[`array`,`boolean`,`integer`,`null`,`number`,`object`,`string`]},stringArray:{type:`array`,items:{type:`string`},uniqueItems:!0,default:[]}}},we={$schema:`https://json-schema.org/draft/2020-12/schema`,$id:`https://json-schema.org/draft/2020-12/schema`,$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0,"https://json-schema.org/draft/2020-12/vocab/applicator":!0,"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0,"https://json-schema.org/draft/2020-12/vocab/validation":!0,"https://json-schema.org/draft/2020-12/vocab/meta-data":!0,"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0,"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:`meta`,title:`Core and Validation specifications meta-schema`,allOf:[{$ref:`meta/core`},{$ref:`meta/applicator`},{$ref:`meta/unevaluated`},{$ref:`meta/validation`},{$ref:`meta/meta-data`},{$ref:`meta/format-annotation`},{$ref:`meta/content`}],type:[`object`,`boolean`],$comment:`This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.`,properties:{definitions:{$comment:`"definitions" has been replaced by "$defs".`,type:`object`,additionalProperties:{$dynamicRef:`#meta`},deprecated:!0,default:{}},dependencies:{$comment:`"dependencies" has been split and replaced by "dependentSchemas" and "dependentRequired" in order to serve their differing semantics.`,type:`object`,additionalProperties:{anyOf:[{$dynamicRef:`#meta`},{$ref:`meta/validation#/$defs/stringArray`}]},deprecated:!0,default:{}},$recursiveAnchor:{$comment:`"$recursiveAnchor" has been replaced by "$dynamicAnchor".`,$ref:`meta/core#/$defs/anchorString`,deprecated:!0},$recursiveRef:{$comment:`"$recursiveRef" has been replaced by "$dynamicRef".`,$ref:`meta/core#/$defs/uriReferenceString`,deprecated:!0}}};let Te=oe,Ee=se,De=ce,Oe=he,ke=le,Ae=ue,je=de,Me=fe,Ne=pe,Pe=me,Fe=we,Ie=ge,Le=_e,Re=ve,ze=ye,Be=be,Ve=xe,He=Se,Ue=Ce,F=(e,t,n)=>{let r=t;r.id||=e,n&&(r.__$validationOptions=ne(n)),ae.cacheSchemaByUri(e,r)};F(`http://json-schema.org/draft-04/schema`,Te,{version:`none`}),F(`http://json-schema.org/draft-06/schema`,Ee,{version:`none`}),F(`http://json-schema.org/draft-07/schema`,De,{version:`none`}),F(`https://json-schema.org/draft/2019-09/schema`,Oe,{version:`none`}),F(`https://json-schema.org/draft/2019-09/meta/applicator`,ke,{version:`none`}),F(`https://json-schema.org/draft/2019-09/meta/content`,Ae,{version:`none`}),F(`https://json-schema.org/draft/2019-09/meta/core`,je,{version:`none`}),F(`https://json-schema.org/draft/2019-09/meta/format`,Me,{version:`none`}),F(`https://json-schema.org/draft/2019-09/meta/meta-data`,Ne,{version:`none`}),F(`https://json-schema.org/draft/2019-09/meta/validation`,Pe,{version:`none`}),F(`https://json-schema.org/draft/2020-12/schema`,Fe,{version:`none`}),F(`https://json-schema.org/draft/2020-12/meta/applicator`,Ie,{version:`none`}),F(`https://json-schema.org/draft/2020-12/meta/content`,Le,{version:`none`}),F(`https://json-schema.org/draft/2020-12/meta/core`,Re,{version:`none`}),F(`https://json-schema.org/draft/2020-12/meta/format-annotation`,ze,{version:`none`}),F(`https://json-schema.org/draft/2020-12/meta/format-assertion`,Be,{version:`none`}),F(`https://json-schema.org/draft/2020-12/meta/meta-data`,Ve,{version:`none`}),F(`https://json-schema.org/draft/2020-12/meta/unevaluated`,He,{version:`none`}),F(`https://json-schema.org/draft/2020-12/meta/validation`,Ue,{version:`none`});var I=s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=n;function n(e){if(e==null)throw TypeError(`Expected a string but received a ${e}`);if(e.constructor.name!==`String`)throw TypeError(`Expected a string but received a ${e.constructor.name}`)}t.exports=e.default,t.exports.default=e.default})),We=s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=r;function n(e){return Object.prototype.toString.call(e)===`[object RegExp]`}function r(e,t){for(var r=0;r<t.length;r++){var i=t[r];if(e===i||n(i)&&i.test(e))return!0}return!1}t.exports=e.default,t.exports.default=e.default})),Ge=s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=a;var n=r(I());function r(e){return e&&e.__esModule?e:{default:e}}function i(e){"@babel/helpers - typeof";return i=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},i(e)}function a(e,t){(0,n.default)(e);var r,a;i(t)===`object`?(r=t.min||0,a=t.max):(r=arguments[1],a=arguments[2]);var o=encodeURI(e).split(/%..|./).length-1;return o>=r&&(a===void 0||o<=a)}t.exports=e.default,t.exports.default=e.default})),Ke=s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=n;function n(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;for(var n in t)e[n]===void 0&&(e[n]=t[n]);return e}t.exports=e.default,t.exports.default=e.default})),qe=s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=o;var n=i(I()),r=i(Ke());function i(e){return e&&e.__esModule?e:{default:e}}var a={require_tld:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_numeric_tld:!1,allow_wildcard:!1,ignore_max_length:!1};function o(e,t){(0,n.default)(e),t=(0,r.default)(t,a),t.allow_trailing_dot&&e[e.length-1]===`.`&&(e=e.substring(0,e.length-1)),t.allow_wildcard===!0&&e.indexOf(`*.`)===0&&(e=e.substring(2));var i=e.split(`.`),o=i[i.length-1];return t.require_tld&&(i.length<2||!t.allow_numeric_tld&&!/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(o)||/\s/.test(o))||!t.allow_numeric_tld&&/^\d+$/.test(o)?!1:i.every(function(e){return!(e.length>63&&!t.ignore_max_length||!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(e)||/[\uff01-\uff5e]/.test(e)||/^-|-$/.test(e)||!t.allow_underscores&&/_/.test(e))})}t.exports=e.default,t.exports.default=e.default})),Je=s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=u;var n=r(I());function r(e){return e&&e.__esModule?e:{default:e}}function i(e){"@babel/helpers - typeof";return i=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},i(e)}var a=`(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])`,o=`(${a}[.]){3}${a}`,s=RegExp(`^${o}\$`),c=`(?:[0-9a-fA-F]{1,4})`,l=RegExp(`^((?:${c}:){7}(?:${c}|:)|(?:${c}:){6}(?:${o}|:${c}|:)|(?:${c}:){5}(?::${o}|(:${c}){1,2}|:)|(?:${c}:){4}(?:(:${c}){0,1}:${o}|(:${c}){1,3}|:)|(?:${c}:){3}(?:(:${c}){0,2}:${o}|(:${c}){1,4}|:)|(?:${c}:){2}(?:(:${c}){0,3}:${o}|(:${c}){1,5}|:)|(?:${c}:){1}(?:(:${c}){0,4}:${o}|(:${c}){1,6}|:)|(?::((?::${c}){0,5}:${o}|(?::${c}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?\$`);function u(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};(0,n.default)(e);var r=(i(t)===`object`?t.version:arguments[1])||``;return r?r.toString()===`4`?s.test(e):r.toString()===`6`?l.test(e):!1:u(e,{version:4})||u(e,{version:6})}t.exports=e.default,t.exports.default=e.default})),Ye=s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=v;var n=c(I()),r=c(We()),i=c(Ge()),a=c(qe()),o=c(Je()),s=c(Ke());function c(e){return e&&e.__esModule?e:{default:e}}var l={allow_display_name:!1,allow_underscores:!1,require_display_name:!1,allow_utf8_local_part:!0,require_tld:!0,blacklisted_chars:``,ignore_max_length:!1,host_blacklist:[],host_whitelist:[]},u=/^([^\x00-\x1F\x7F-\x9F\cX]+)</i,d=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i,f=/^[a-z\d]+$/,p=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i,m=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A1-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i,h=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i,g=254;function _(e){var t=e.replace(/^"(.+)"$/,`$1`);return!(!t.trim()||/[\.";<>]/.test(t)&&(t===e||t.split(`"`).length!==t.split(`\\"`).length))}function v(e,t){if((0,n.default)(e),t=(0,s.default)(t,l),t.require_display_name||t.allow_display_name){var c=e.match(u);if(c){var v=c[1];if(e=e.replace(v,``).replace(/(^<|>$)/g,``),v.endsWith(` `)&&(v=v.slice(0,-1)),!_(v))return!1}else if(t.require_display_name)return!1}if(!t.ignore_max_length&&e.length>g)return!1;var y=e.split(`@`),b=y.pop(),x=b.toLowerCase();if(t.host_blacklist.length>0&&(0,r.default)(x,t.host_blacklist)||t.host_whitelist.length>0&&!(0,r.default)(x,t.host_whitelist))return!1;var S=y.join(`@`);if(t.domain_specific_validation&&(x===`gmail.com`||x===`googlemail.com`)){S=S.toLowerCase();var C=S.split(`+`)[0];if(!(0,i.default)(C.replace(/\./g,``),{min:6,max:30}))return!1;for(var w=C.split(`.`),T=0;T<w.length;T++)if(!f.test(w[T]))return!1}if(t.ignore_max_length===!1&&(!(0,i.default)(S,{max:64})||!(0,i.default)(b,{max:254})))return!1;if(!(0,a.default)(b,{require_tld:t.require_tld,ignore_max_length:t.ignore_max_length,allow_underscores:t.allow_underscores})){if(!t.allow_ip_domain)return!1;if(!(0,o.default)(b)){if(!b.startsWith(`[`)||!b.endsWith(`]`))return!1;var E=b.slice(1,-1);if(E.length===0||!(0,o.default)(E))return!1}}if(t.blacklisted_chars&&S.search(RegExp(`[${t.blacklisted_chars}]+`,`g`))!==-1)return!1;if(S[0]===`"`&&S[S.length-1]===`"`)return S=S.slice(1,S.length-1),t.allow_utf8_local_part?h.test(S):p.test(S);for(var D=t.allow_utf8_local_part?m:d,O=S.split(`.`),k=0;k<O.length;k++)if(!D.test(O[k]))return!1;return!0}t.exports=e.default,t.exports.default=e.default})),Xe=s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=void 0,e.default=function(e,t){return e.indexOf(t)!==-1},t.exports=e.default,t.exports.default=e.default})),Ze=l(s(((e,t)=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.default=_;var n=c(I()),r=c(We()),i=c(Xe()),a=c(qe()),o=c(Je()),s=c(Ke());function c(e){return e&&e.__esModule?e:{default:e}}function l(e,t){return m(e)||p(e,t)||d(e,t)||u()}function u(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
2
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function d(e,t){if(e){if(typeof e==`string`)return f(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?f(e,t):void 0}}function f(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function p(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function m(e){if(Array.isArray(e))return e}var h={protocols:[`http`,`https`,`ftp`],require_tld:!0,require_protocol:!1,require_host:!0,require_port:!1,require_valid_protocol:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_protocol_relative_urls:!1,allow_fragments:!0,allow_query_components:!0,validate_length:!0,max_allowed_length:2084},g=/^\[([^\]]+)\](?::([0-9]+))?$/;function _(e,t){if((0,n.default)(e),!e||/[\s<>]/.test(e)||e.indexOf(`mailto:`)===0||(t=(0,s.default)(t,h),t.validate_length&&e.length>t.max_allowed_length)||!t.allow_fragments&&(0,i.default)(e,`#`)||!t.allow_query_components&&((0,i.default)(e,`?`)||(0,i.default)(e,`&`)))return!1;var c,u,d,f,p,m,_=e.split(`#`),v;e=_.shift(),_=e.split(`?`),e=_.shift();var y=e.match(/^([a-z][a-z0-9+\-.]*):/i),b=!1,x=function(n){return b=!0,c=n.toLowerCase(),t.require_valid_protocol&&t.protocols.indexOf(c)===-1?!1:e.substring(y[0].length)};if(y){var S=y[1],C=e.substring(y[0].length);if(C.slice(0,2)!==`//`){var w=C.indexOf(`/`),T=w===-1?C:C.substring(0,w),E=T.indexOf(`@`);if(E!==-1){var D=T.substring(0,E),O=/^[a-zA-Z0-9\-_.%:]*$/.test(D),k=/%[0-9a-fA-F]{2}/.test(D);if(O&&!k){if(t.require_protocol)return!1}else if(e=x(S),e===!1)return!1}else if(/^[0-9]/.test(C)){if(t.require_protocol)return!1}else if(e=x(S),e===!1)return!1}else if(e=x(S),e===!1)return!1}else if(t.require_protocol)return!1;if(e.slice(0,2)===`//`){if(!b&&!t.allow_protocol_relative_urls)return!1;e=e.slice(2)}if(e===``)return!1;if(_=e.split(`/`),e=_.shift(),e===``&&!t.require_host)return!0;if(_=e.split(`@`),_.length>1){if(t.disallow_auth||_[0]===``||(u=_.shift(),u.indexOf(`:`)>=0&&u.split(`:`).length>2))return!1;var A=l(u.split(`:`),2),j=A[0],ee=A[1];if(j===``&&ee===``)return!1}f=_.join(`@`),m=null,v=null;var M=f.match(g);if(M?(d=``,v=M[1],m=M[2]||null):(_=f.split(`:`),d=_.shift(),_.length&&(m=_.join(`:`))),m!==null&&m.length>0){if(p=parseInt(m,10),!/^[0-9]+$/.test(m)||p<=0||p>65535)return!1}else if(t.require_port)return!1;return t.host_whitelist?(0,r.default)(d,t.host_whitelist):d===``&&!t.require_host?!0:!(!(0,o.default)(d)&&!(0,a.default)(d,t)&&(!v||!(0,o.default)(v,6))||(d||=v,t.host_blacklist&&(0,r.default)(d,t.host_blacklist)))}t.exports=e.default,t.exports.default=e.default}))(),1),Qe=l(Ye(),1),L=l(Je(),1);let $e=e=>e%4==0&&(e%100!=0||e%400==0),et=(e,t)=>{switch(t){case 2:return $e(e)?29:28;case 4:case 6:case 9:case 11:return 30;default:return 31}},tt=(e,t,n)=>{if(t<1||t>12)return!1;let r=et(e,t);return n>=1&&n<=r};var nt=l(s(((e,t)=>{let n=2147483647,r=/^xn--/,i=/[^\0-\x7F]/,a=/[\x2E\u3002\uFF0E\uFF61]/g,o={overflow:`Overflow: input needs wider integers to process`,"not-basic":`Illegal input >= 0x80 (not a basic code point)`,"invalid-input":`Invalid input`},s=Math.floor,c=String.fromCharCode;function l(e){throw RangeError(o[e])}function u(e,t){let n=[],r=e.length;for(;r--;)n[r]=t(e[r]);return n}function d(e,t){let n=e.split(`@`),r=``;n.length>1&&(r=n[0]+`@`,e=n[1]),e=e.replace(a,`.`);let i=u(e.split(`.`),t).join(`.`);return r+i}function f(e){let t=[],n=0,r=e.length;for(;n<r;){let i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){let r=e.charCodeAt(n++);(r&64512)==56320?t.push(((i&1023)<<10)+(r&1023)+65536):(t.push(i),n--)}else t.push(i)}return t}let p=e=>String.fromCodePoint(...e),m=function(e){return e>=48&&e<58?26+(e-48):e>=65&&e<91?e-65:e>=97&&e<123?e-97:36},h=function(e,t){return e+22+75*(e<26)-((t!=0)<<5)},g=function(e,t,n){let r=0;for(e=n?s(e/700):e>>1,e+=s(e/t);e>455;r+=36)e=s(e/35);return s(r+36*e/(e+38))},_=function(e){let t=[],r=e.length,i=0,a=128,o=72,c=e.lastIndexOf(`-`);c<0&&(c=0);for(let n=0;n<c;++n)e.charCodeAt(n)>=128&&l(`not-basic`),t.push(e.charCodeAt(n));for(let u=c>0?c+1:0;u<r;){let c=i;for(let t=1,a=36;;a+=36){u>=r&&l(`invalid-input`);let c=m(e.charCodeAt(u++));c>=36&&l(`invalid-input`),c>s((n-i)/t)&&l(`overflow`),i+=c*t;let d=a<=o?1:a>=o+26?26:a-o;if(c<d)break;let f=36-d;t>s(n/f)&&l(`overflow`),t*=f}let d=t.length+1;o=g(i-c,d,c==0),s(i/d)>n-a&&l(`overflow`),a+=s(i/d),i%=d,t.splice(i++,0,a)}return String.fromCodePoint(...t)},v=function(e){let t=[];e=f(e);let r=e.length,i=128,a=0,o=72;for(let n of e)n<128&&t.push(c(n));let u=t.length,d=u;for(u&&t.push(`-`);d<r;){let r=n;for(let t of e)t>=i&&t<r&&(r=t);let f=d+1;r-i>s((n-a)/f)&&l(`overflow`),a+=(r-i)*f,i=r;for(let r of e)if(r<i&&++a>n&&l(`overflow`),r===i){let e=a;for(let n=36;;n+=36){let r=n<=o?1:n>=o+26?26:n-o;if(e<r)break;let i=e-r,a=36-r;t.push(c(h(r+i%a,0))),e=s(i/a)}t.push(c(h(e,0))),o=g(a,f,d===u),a=0,++d}++a,++i}return t.join(``)};t.exports={version:`2.3.1`,ucs2:{decode:f,encode:p},decode:_,encode:v,toASCII:function(e){return d(e,function(e){return i.test(e)?`xn--`+v(e):e})},toUnicode:function(e){return d(e,function(e){return r.test(e)?_(e.slice(4).toLowerCase()):e})}}}))(),1);let rt=/[\u3002\uff0e\uff61]/g,it=/[\u3002\uff0e\uff61]/,at=e=>{if(e.length===0||e.length>255||e.startsWith(`.`)||e.endsWith(`.`))return null;let t=e.split(`.`);return t.some(e=>e.length===0||e.length>63)?null:t},ot=e=>/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i.test(e),st=e=>/\p{Script=Greek}/u.test(e),ct=e=>/\p{Script=Hebrew}/u.test(e),lt=e=>/[\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Han}]/u.test(e),ut=e=>{if(!/^xn--/i.test(e))return e;try{return nt.default.toUnicode(e.toLowerCase())}catch{return null}},dt=e=>{if(e.startsWith(`-`)||e.endsWith(`-`)||e.length>=4&&e[2]===`-`&&e[3]===`-`&&!/^xn--/i.test(e)||/^\p{M}/u.test(e)||/[\u302e\u302f\u0640\u07fa]/u.test(e))return!1;for(let t=0;t<e.length;t++){let n=e[t];if(n===`·`&&(t===0||t===e.length-1||e[t-1]!==`l`||e[t+1]!==`l`)||n===`͵`&&(t===e.length-1||!st(e[t+1]))||(n===`׳`||n===`״`)&&(t===0||!ct(e[t-1]))||n===`‍`&&(t===0||e[t-1]!==`्`))return!1}if(e.includes(`・`)&&!lt(e.replace(/\u30fb/g,``)))return!1;let t=/[\u0660-\u0669]/.test(e),n=/[\u06f0-\u06f9]/.test(e);return!(t&&n)},ft=e=>{if(it.test(e)||/[^\x00-\x7F]/.test(e)||L.default.default(e,4))return!1;let t=at(e);if(t===null)return!1;for(let e of t){if(!ot(e))return!1;let t=ut(e);if(t===null||!dt(t))return!1}return!0},pt=e=>{let t=at(e.replace(rt,`.`));if(t===null)return!1;for(let e of t){let t=ut(e);if(t===null||!dt(t))return!1}return!0},mt=(e,t,n,r,i)=>{let a=e*60+t,o=r*60+i,s=((n===`+`?a-o:a+o)%1440+1440)%1440;return{hour:Math.floor(s/60),minute:s%60}},ht=/^([0-9]{2}):([0-9]{2}):([0-9]{2})(\.[0-9]+)?(z|([+-][0-9]{2}:[0-9]{2}))$/i,gt=e=>{let t=ht.exec(e);if(t===null)return null;let n=parseInt(t[1],10),r=parseInt(t[2],10),i=parseInt(t[3],10);if(n>23||r>59||i>60)return null;let a=n,o=r;if(t[5].toLowerCase()!==`z`){let e=/^([+-])([0-9]{2}):([0-9]{2})$/.exec(t[5]);if(e===null)return null;let i=e[1],s=parseInt(e[2],10),c=parseInt(e[3],10);if(s>23||c>59)return null;let l=mt(n,r,i,s,c);a=l.hour,o=l.minute}return i===60&&(a!==23||o!==59)?null:{hour:n,minute:r,second:i,utcHour:a,utcMinute:o}},_t=e=>{if(typeof e!=`string`)return!0;let t=/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/.exec(e);return t===null?!1:tt(parseInt(t[1],10),parseInt(t[2],10),parseInt(t[3],10))},vt=e=>{if(typeof e!=`string`)return!0;let t=e.toLowerCase().split(`t`);if(t.length!==2)return!1;let n=t[0],r=t[1],i=/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/.exec(n);return i===null||!tt(parseInt(i[1],10),parseInt(i[2],10),parseInt(i[3],10))?!1:gt(r)!==null},yt=e=>{if(typeof e!=`string`||Qe.default.default(e,{require_tld:!0,allow_ip_domain:!0}))return!0;let t=/^(.+)@\[IPv6:([^\]]+)\]$/i.exec(e);if(!t)return!1;let n=t[1],r=t[2];return L.default.default(r,6)?Qe.default.default(`${n}@example.com`,{require_tld:!0}):!1},bt=e=>typeof e==`string`?ft(e):!0,xt=e=>typeof e==`string`?L.default.default(e,4):!0,St=e=>typeof e==`string`?e.includes(`%`)?!1:L.default.default(e,6):!0,Ct=e=>{if(typeof e!=`string`)return!0;let t=new Set([`a`]);for(let n=0;n<e.length;n++){if(e[n]!==`\\`)continue;if(n++,n>=e.length)return!1;let r=e[n];if(t.has(r))return!1}try{return RegExp(e),!0}catch{return!1}},wt=e=>{if(typeof e!=`string`)return!0;if(!/^P[\x00-\x7F]*$/.test(e)||!e.startsWith(`P`))return!1;let t=e.slice(1);if(t.length===0)return!1;if(t.includes(`W`))return/^\d+W$/.test(t);let n=t.split(`T`);if(n.length>2)return!1;let r=n[0],i=n.length===2?n[1]:void 0;if(r.length>0&&!/^(?:\d+Y(?:\d+M(?:\d+D)?)?|\d+M(?:\d+D)?|\d+D)$/.test(r))return!1;let a=/\d+[YMD]/.test(r),o=!1;return i!==void 0&&(i.length===0||!/^(?:\d+H(?:\d+M(?:\d+S)?)?|\d+M(?:\d+S)?|\d+S)$/.test(i)||(o=/\d+[HMS]/.test(i),!o))?!1:a||o},Tt=e=>typeof e==`string`?/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(e):!0,Et=e=>typeof e!=`string`||Ze.default.default(e),Dt=e=>{for(let t=0;t<e.length;t++)if(e[t]===`%`&&(t+2>=e.length||!/[0-9a-fA-F]/.test(e[t+1])||!/[0-9a-fA-F]/.test(e[t+2])))return!1;return!0},Ot=function(e){if(typeof e!=`string`)return!0;if(/[^\x00-\x7F]/.test(e)||!Dt(e))return!1;let t=e.match(/^([a-zA-Z][a-zA-Z0-9+.-]*):\/\/([^/?#]*)/);if(t){let e=t[2],n=e.indexOf(`@`);if(n>0){let t=e.substring(0,n);if(t.includes(`[`)||t.includes(`]`))return!1}let r=n>=0?e.substring(n+1):e;if(r.startsWith(`[`)){let e=r.indexOf(`]`);e>=0&&(r=r.substring(e+1))}let i=r.lastIndexOf(`:`);if(i>=0){let e=r.substring(i+1);if(e.length>0&&!/^\d+$/.test(e))return!1}}return/^[a-zA-Z][a-zA-Z0-9+.-]*:[^"\\<>^{}^`| ]*$/.test(e)},kt=e=>typeof e==`string`?/[^\x00-\x7F]/.test(e)?!1:/^([a-zA-Z][a-zA-Z0-9+.-]*:)?[^"\\<>^{}^`| ]*$/.test(e):!0,At=e=>{if(typeof e!=`string`)return!0;if(!/^([a-zA-Z][a-zA-Z0-9+.-]*:)?[^"\\<>^`| ]*$/.test(e))return!1;let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(r===`{`){if(t)return!1;t=!0}else if(r===`}`){if(!t)return!1;t=!1}}return!t},jt=e=>{for(let t=0;t<e.length;t++)if(e[t]===`~`){let n=e[t+1];if(n!==`0`&&n!==`1`)return!1;t++}return!0},Mt=e=>{if(typeof e!=`string`||e===``)return!0;if(!/^(?:\/[^/]*)+$/.test(e))return!1;let t=e.split(`/`).slice(1);for(let e of t)if(!jt(e))return!1;return!0},Nt=e=>{if(typeof e!=`string`)return!0;let t=e.match(/^(0|[1-9]\d*)(.*)$/);if(!t)return!1;let n=t[2];if(n===``||n===`#`)return!0;if(!n.startsWith(`/`)||!/^(?:\/[^/]*)+$/.test(n))return!1;let r=n.split(`/`).slice(1);for(let e of r)if(!jt(e))return!1;return!0},Pt=e=>typeof e==`string`?gt(e)!==null:!0,Ft=e=>typeof e==`string`?/^[^\s@]+@[^\s@]+$/.test(e):!0,It=e=>typeof e==`string`?pt(e):!0,Lt=e=>{if(typeof e!=`string`)return!0;if(!/^[a-zA-Z][a-zA-Z0-9+.-]*:[^"\\<>^{}^`| ]*$/u.test(e))return!1;try{return new URL(e),!0}catch{return!1}},Rt=e=>typeof e==`string`?/^([a-zA-Z][a-zA-Z0-9+.-]*:)?[^"\\<>^{}^`| ]*$/u.test(e):!0,zt={date:_t,"date-time":vt,email:yt,hostname:bt,"host-name":bt,ipv4:xt,ipv6:St,regex:Ct,uri:Ot,"strict-uri":Et,"uri-reference":kt,"uri-template":At,"json-pointer":Mt,"relative-json-pointer":Nt,time:Pt,"idn-email":Ft,"idn-hostname":It,iri:Lt,"iri-reference":Rt,duration:wt,uuid:Tt},R={};function Bt(e){return{...zt,...e?.strictUris?{uri:Et}:{},...R,...e?.customFormats||{}}}function Vt(e,t){R[e]=t}function Ht(e){delete R[e]}function Ut(e){let t={...zt,...R,...e};return k(t).filter(e=>t[e]!=null)}function Wt(e,t){if(t){let n=t[e];if(n===null)return!1;if(n!=null)return!0}return e in R?R[e]!=null:e in zt}function Gt(){return k(R)}var Kt=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0})})),qt=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.types=void 0,(function(e){e[e.ROOT=0]=`ROOT`,e[e.GROUP=1]=`GROUP`,e[e.POSITION=2]=`POSITION`,e[e.SET=3]=`SET`,e[e.RANGE=4]=`RANGE`,e[e.REPETITION=5]=`REPETITION`,e[e.REFERENCE=6]=`REFERENCE`,e[e.CHAR=7]=`CHAR`})(e.types||={})})),Jt=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0})})),z=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__exportStar||function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(e,`__esModule`,{value:!0}),n(Kt(),e),n(qt(),e),n(Jt(),e)})),B=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.anyChar=e.notWhitespace=e.whitespace=e.notInts=e.ints=e.notWords=e.words=void 0;let t=z(),n=()=>[{type:t.types.RANGE,from:48,to:57}],r=()=>[{type:t.types.CHAR,value:95},{type:t.types.RANGE,from:97,to:122},{type:t.types.RANGE,from:65,to:90},{type:t.types.RANGE,from:48,to:57}],i=()=>[{type:t.types.CHAR,value:9},{type:t.types.CHAR,value:10},{type:t.types.CHAR,value:11},{type:t.types.CHAR,value:12},{type:t.types.CHAR,value:13},{type:t.types.CHAR,value:32},{type:t.types.CHAR,value:160},{type:t.types.CHAR,value:5760},{type:t.types.RANGE,from:8192,to:8202},{type:t.types.CHAR,value:8232},{type:t.types.CHAR,value:8233},{type:t.types.CHAR,value:8239},{type:t.types.CHAR,value:8287},{type:t.types.CHAR,value:12288},{type:t.types.CHAR,value:65279}],a=()=>[{type:t.types.CHAR,value:10},{type:t.types.CHAR,value:13},{type:t.types.CHAR,value:8232},{type:t.types.CHAR,value:8233}];e.words=()=>({type:t.types.SET,set:r(),not:!1}),e.notWords=()=>({type:t.types.SET,set:r(),not:!0}),e.ints=()=>({type:t.types.SET,set:n(),not:!1}),e.notInts=()=>({type:t.types.SET,set:n(),not:!0}),e.whitespace=()=>({type:t.types.SET,set:i(),not:!1}),e.notWhitespace=()=>({type:t.types.SET,set:i(),not:!0}),e.anyChar=()=>({type:t.types.SET,set:a(),not:!0})})),Yt=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.tokenizeClass=e.strToChars=void 0;let i=z(),a=r(B());e.strToChars=e=>e.replace(/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g,(e,t,n,r,i,a,o)=>{if(n)return e;let s=t?8:r?parseInt(r,16):i?parseInt(i,16):a?`@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?`.indexOf(a):{0:0,t:9,n:10,v:11,f:12,r:13}[o],c=String.fromCharCode(s);return/[[\]{}^$.|?*+()]/.test(c)?`\\${c}`:c}),e.tokenizeClass=(e,t)=>{let n=[],r,o,s=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(r=s.exec(e))!==null;){let e=(r[1]&&a.words())??(r[2]&&a.ints())??(r[3]&&a.whitespace())??(r[4]&&a.notWords())??(r[5]&&a.notInts())??(r[6]&&a.notWhitespace())??(r[7]&&{type:i.types.RANGE,from:(r[8]||r[9]).charCodeAt(0),to:(o=r[10]).charCodeAt(o.length-1)})??((o=r[16])&&{type:i.types.CHAR,value:o.charCodeAt(0)});if(e)n.push(e);else return[n,s.lastIndex]}throw SyntaxError(`Invalid regular expression: /${t}/: Unterminated character class`)}})),Xt=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.tokenizer=void 0;let i=r(Yt()),a=z(),o=r(B()),s=/^[a-zA-Z_$]$/i,c=/^[a-zA-Z0-9_$]$/i,l=/\d/;e.tokenizer=e=>{let t=0,n,r={type:a.types.ROOT,stack:[]},d=r,f=r.stack,p=[],m=[],h=0,g=t=>{throw SyntaxError(`Invalid regular expression: /${e}/: Nothing to repeat at column ${t-1}`)},_=i.strToChars(e);for(;t<_.length;)switch(n=_[t++]){case`\\`:if(t===_.length)throw SyntaxError(`Invalid regular expression: /${e}/: \\ at end of pattern`);switch(n=_[t++]){case`b`:f.push({type:a.types.POSITION,value:`b`});break;case`B`:f.push({type:a.types.POSITION,value:`B`});break;case`w`:f.push(o.words());break;case`W`:f.push(o.notWords());break;case`d`:f.push(o.ints());break;case`D`:f.push(o.notInts());break;case`s`:f.push(o.whitespace());break;case`S`:f.push(o.notWhitespace());break;default:if(l.test(n)){let e=n;for(;t<_.length&&l.test(_[t]);)e+=_[t++];let r=parseInt(e,10),i={type:a.types.REFERENCE,value:r};f.push(i),m.push({reference:i,stack:f,index:f.length-1})}else f.push({type:a.types.CHAR,value:n.charCodeAt(0)})}break;case`^`:f.push({type:a.types.POSITION,value:`^`});break;case`$`:f.push({type:a.types.POSITION,value:`$`});break;case`[`:{let n;_[t]===`^`?(n=!0,t++):n=!1;let r=i.tokenizeClass(_.slice(t),e);t+=r[1],f.push({type:a.types.SET,set:r[0],not:n});break}case`.`:f.push(o.anyChar());break;case`(`:{let r={type:a.types.GROUP,stack:[],remember:!0};if(_[t]===`?`)if(n=_[t+1],t+=2,n===`=`)r.followedBy=!0,r.remember=!1;else if(n===`!`)r.notFollowedBy=!0,r.remember=!1;else if(n===`<`){let n=``;if(s.test(_[t]))n+=_[t],t++;else throw SyntaxError(`Invalid regular expression: /${e}/: Invalid capture group name, character '${_[t]}' after '<' at column ${t+1}`);for(;t<_.length&&c.test(_[t]);)n+=_[t],t++;if(!n)throw SyntaxError(`Invalid regular expression: /${e}/: Invalid capture group name, character '${_[t]}' after '<' at column ${t+1}`);if(_[t]!==`>`)throw SyntaxError(`Invalid regular expression: /${e}/: Unclosed capture group name, expected '>', found '${_[t]}' at column ${t+1}`);r.name=n,t++}else if(n===`:`)r.remember=!1;else throw SyntaxError(`Invalid regular expression: /${e}/: Invalid group, character '${n}' after '?' at column ${t-1}`);else h+=1;f.push(r),p.push(d),d=r,f=r.stack;break}case`)`:if(p.length===0)throw SyntaxError(`Invalid regular expression: /${e}/: Unmatched ) at column ${t-1}`);d=p.pop(),f=d.options?d.options[d.options.length-1]:d.stack;break;case`|`:{d.options||(d.options=[d.stack],delete d.stack);let e=[];d.options.push(e),f=e;break}case`{`:{let e=/^(\d+)(,(\d+)?)?\}/.exec(_.slice(t)),n,r;e===null?f.push({type:a.types.CHAR,value:123}):(f.length===0&&g(t),n=parseInt(e[1],10),r=e[2]?e[3]?parseInt(e[3],10):1/0:n,t+=e[0].length,f.push({type:a.types.REPETITION,min:n,max:r,value:f.pop()}));break}case`?`:f.length===0&&g(t),f.push({type:a.types.REPETITION,min:0,max:1,value:f.pop()});break;case`+`:f.length===0&&g(t),f.push({type:a.types.REPETITION,min:1,max:1/0,value:f.pop()});break;case`*`:f.length===0&&g(t),f.push({type:a.types.REPETITION,min:0,max:1/0,value:f.pop()});break;default:f.push({type:a.types.CHAR,value:n.charCodeAt(0)})}if(p.length!==0)throw SyntaxError(`Invalid regular expression: /${e}/: Unterminated group`);return u(m,h),r};function u(e,t){for(let n of e.reverse())if(t<n.reference.value){n.reference.type=a.types.CHAR;let e=n.reference.value.toString();if(n.reference.value=parseInt(e,8),!/^[0-7]+$/.test(e)){let t=0;for(;e[t]!==`8`&&e[t]!==`9`;)t+=1;if(t===0?(n.reference.value=e.charCodeAt(0),t+=1):n.reference.value=parseInt(e.slice(0,t),8),e.length>t){let r=n.stack.splice(n.index+1);for(let r of e.slice(t))n.stack.push({type:a.types.CHAR,value:r.charCodeAt(0)});n.stack.push(...r)}}}}})),Zt=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.NOTANYCHAR=e.WHITESPACE=e.WORDS=e.INTS=void 0;let i=r(B()),a=z();function o(e){let t={},n=0;for(let r of e)r.type===a.types.CHAR&&(t[r.value]=!0),r.type===a.types.RANGE&&(t[`${r.from}-${r.to}`]=!0),n+=1;return{lookup:()=>Object.assign({},t),len:n}}e.INTS=o(i.ints().set),e.WORDS=o(i.words().set),e.WHITESPACE=o(i.whitespace().set),e.NOTANYCHAR=o(i.anyChar().set)})),Qt=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.writeSetTokens=e.setChar=void 0;let i=z(),a=r(Zt());function o(e){return e===94?`\\^`:e===92?`\\\\`:e===93?`\\]`:e===45?`\\-`:String.fromCharCode(e)}e.setChar=o;function s(e,{lookup:t,len:n}){if(n!==e.length)return!1;let r=t();for(let t of e){if(t.type===i.types.SET)return!1;let e=t.type===i.types.CHAR?t.value:`${t.from}-${t.to}`;if(r[e])r[e]=!1;else return!1}return!0}function c(e,t=!1){if(s(e.set,a.INTS))return e.not?`\\D`:`\\d`;if(s(e.set,a.WORDS))return e.not?`\\W`:`\\w`;if(e.not&&s(e.set,a.NOTANYCHAR))return`.`;if(s(e.set,a.WHITESPACE))return e.not?`\\S`:`\\s`;let n=``;for(let t=0;t<e.set.length;t++){let r=e.set[t];n+=l(r)}let r=`${e.not?`^`:``}${n}`;return t?r:`[${r}]`}e.writeSetTokens=c;function l(e){return e.type===i.types.CHAR?o(e.value):e.type===i.types.RANGE?`${o(e.from)}-${o(e.to)}`:c(e,!0)}})),$t=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.reconstruct=void 0;let t=z(),n=Qt(),r=t=>t.map(e.reconstruct).join(``),i=e=>{if(`options`in e)return e.options.map(r).join(`|`);if(`stack`in e)return r(e.stack);throw Error(`options or stack must be Root or Group token`)};e.reconstruct=r=>{switch(r.type){case t.types.ROOT:return i(r);case t.types.CHAR:{let e=String.fromCharCode(r.value);return(/[[\\{}$^.|?*+()]/.test(e)?`\\`:``)+e}case t.types.POSITION:return r.value===`^`||r.value===`$`?r.value:`\\${r.value}`;case t.types.REFERENCE:return`\\${r.value}`;case t.types.SET:return n.writeSetTokens(r);case t.types.GROUP:return`(${r.name?`?<${r.name}>`:r.remember?``:r.followedBy?`?=`:r.notFollowedBy?`?!`:`?:`}${i(r)})`;case t.types.REPETITION:{let{min:t,max:n}=r,i;return i=t===0&&n===1?`?`:t===1&&n===1/0?`+`:t===0&&n===1/0?`*`:n===1/0?`{${t},}`:t===n?`{${t}}`:`{${t},${n}}`,`${e.reconstruct(r.value)}${i}`}case t.types.RANGE:return`${n.setChar(r.from)}-${n.setChar(r.to)}`;default:throw Error(`Invalid token type ${r}`)}}})),en=s(((e,t)=>{var n=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),r=e&&e.__exportStar||function(e,t){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(t,r)&&n(t,e,r)};Object.defineProperty(e,`__esModule`,{value:!0}),e.types=void 0;let i=z();Object.defineProperty(e,`types`,{enumerable:!0,get:function(){return i.types}}),r(Xt(),e),r($t(),e);let a=Xt(),o=$t();r(z(),e),e.default=a.tokenizer,t.exports=a.tokenizer,t.exports.types=i.types,t.exports.reconstruct=o.reconstruct})),tn=l(s(((e,t)=>{let n=en(),{types:r}=en();function i(e,t,n){let a,o,s;if(e.type===r.REPETITION&&(n++,t.reps++,n>1||t.reps>t.limit))return!1;if(e.options){for(a=0,s=e.options.length;a<s;a++)if(o=i({stack:e.options[a]},t,n),!o)return!1}let c=e.stack||e.value?.stack;if(!c)return!0;for(a=0,s=c.length;a<s;a++)if(o=i(c[a],t,n),!o)return!1;return!0}function a(e,t){let r={reps:0,limit:t?.limit??25};o(e)?e=e.source:typeof e!=`string`&&(e=String(e));try{return i(n(e),r,0)}catch{return!1}}function o(e){return Object.prototype.toString.call(e)===`[object RegExp]`}t.exports=a,t.exports.default=a,t.exports.safeRegex=a}))(),1);function V(e){if(e.length>1e4)return{ok:!1,error:{pattern:e,message:`Pattern length ${e.length} exceeds maximum allowed length of 10000`}};if(!(0,tn.default)(e))return{ok:!1,error:{pattern:e,message:`Pattern rejected as potentially unsafe (ReDoS)`}};if(/\\[pP]{/.test(e)||/[\u{10000}-\u{10FFFF}]/u.test(e)||/\\uD[89AB][0-9A-Fa-f]{2}\\uD[CDEF][0-9A-Fa-f]{2}/.test(e))try{return{ok:!0,value:new RegExp(e,`u`)}}catch(t){return{ok:!1,error:{pattern:e,message:t&&t.message?t.message:`Invalid regular expression`}}}else try{return{ok:!0,value:new RegExp(e)}}catch(t){return{ok:!1,error:{pattern:e,message:t&&t.message?t.message:`Invalid regular expression`}}}}let H=(e,t,n)=>{let r=e.length;if(r<=1)return!0;let i=!0;for(let t=0;t<r;t++){let n=e[t];if(typeof n==`object`&&n){i=!1;break}}if(i){let n=new Set;for(let i=0;i<r;i++){let r=e[i],a=typeof r+`:`+String(r);if(n.has(a)){if(t)for(let n=0;n<i;n++){let a=e[n];if(typeof a==typeof r&&a===r){t.push(n,i);break}}return!1}n.add(a)}return!0}for(let i=0;i<r;i++)for(let a=i+1;a<r;a++)if(D(e[i],e[a],{maxDepth:n}))return t&&t.push(i,a),!1;return!0},nn=(e,t)=>{let n=new Set(t),r=[],i=e.length;for(;i--;)n.has(e[i])||r.push(e[i]);return r},U=function(e,t){return e&&Array.isArray(e.includeErrors)&&e.includeErrors.length>0&&!t.some(function(t){return e.includeErrors.includes(t)})},rn=(e,t)=>typeof e.$schema==`string`?!/draft-04|draft-06|draft-07/.test(e.$schema):!(t===`draft-04`||t===`draft-06`||t===`draft-07`),an=`https://json-schema.org/draft/2019-09/vocab/validation`,on=`https://json-schema.org/draft/2020-12/vocab/validation`,sn=`https://json-schema.org/draft/2019-09/vocab/format`,cn=`https://json-schema.org/draft/2020-12/vocab/format-assertion`,ln=new Set([`type`,`multipleOf`,`maximum`,`exclusiveMaximum`,`minimum`,`exclusiveMinimum`,`maxLength`,`minLength`,`pattern`,`maxItems`,`minItems`,`uniqueItems`,`maxContains`,`minContains`,`maxProperties`,`minProperties`,`required`,`dependentRequired`,`enum`,`const`,`contentEncoding`,`contentMediaType`]),un=(e,t,n)=>{if(n!==`draft2019-09`&&n!==`draft2020-12`)return!0;let r=e.__$schemaResolved,i=t.rootSchema&&typeof t.rootSchema!=`boolean`?t.rootSchema.__$schemaResolved:void 0,a=r||i;if(!a||typeof a!=`object`||!h(a.$vocabulary))return!0;let o=a.$vocabulary;return Object.hasOwn(o,an)||Object.hasOwn(o,on)?o[an]===!0||o[on]===!0:!1},dn=(e,t,n)=>{if(n!==`draft2019-09`&&n!==`draft2020-12`)return!0;let r=e.__$schemaResolved,i=t.rootSchema&&typeof t.rootSchema!=`boolean`?t.rootSchema.__$schemaResolved:void 0,a=r||i;if(!a||typeof a!=`object`||!h(a.$vocabulary))return!1;let o=a.$vocabulary;return Object.hasOwn(o,cn)?o[cn]===!0:Object.hasOwn(o,sn)?o[sn]===!0:!1};function W(e,t,n,r){let i=e.__validationResultCache.get(t);i||(i=new Map,e.__validationResultCache.set(t,i)),i.set(n,r)}function G(e,t,n){return e.__validationResultCache.get(t)?.get(n)}function K(e,t,n){let r=e.asyncTasks.length;for(let n of t)e.asyncTasks.push(...n.asyncTasks);e.asyncTasks.length>r?e.addAsyncTaskWithPath(e=>{setTimeout(()=>e(null),0)},[],()=>{n()}):n()}function fn(e,t,n){U(this.validateOptions,[`ARRAY_ADDITIONAL_ITEMS`])||Array.isArray(n)&&t.additionalItems===!1&&Array.isArray(t.items)&&n.length>t.items.length&&e.addError(`ARRAY_ADDITIONAL_ITEMS`,void 0,void 0,t,`additionalItems`)}function pn(){}function mn(){}function hn(e,t,n){U(this.validateOptions,[`ARRAY_LENGTH_LONG`])||Array.isArray(n)&&n.length>t.maxItems&&e.addError(`ARRAY_LENGTH_LONG`,[n.length,t.maxItems],void 0,t,`maxItems`)}function gn(e,t,n){U(this.validateOptions,[`ARRAY_LENGTH_SHORT`])||Array.isArray(n)&&n.length<t.minItems&&e.addError(`ARRAY_LENGTH_SHORT`,[n.length,t.minItems],void 0,t,`minItems`)}function _n(e,t,n){if(!U(this.validateOptions,[`ARRAY_UNIQUE`])&&Array.isArray(n)&&t.uniqueItems===!0){let r=[];H(n,r,this.options.maxRecursionDepth)===!1&&e.addError(`ARRAY_UNIQUE`,r,void 0,t,`uniqueItems`)}}function vn(e,t,n){if(U(this.validateOptions,[`CONTAINS`])||!Array.isArray(n))return;let r=t.contains;if(r===void 0)return;let i=e.constructor,a=[];for(let t=0;t<n.length;t++){let o=new i(e);a.push(o),this._jsonValidate(o,r,n[t]),W(e,r,n[t],o.errors.length===0)}K(e,a,()=>{let n=0;for(let e of a)e.errors.length===0&&(n+=1);let r=this.options.version===`draft2019-09`||this.options.version===`draft2020-12`,i=r&&typeof t.minContains==`number`?t.minContains??1:1,o=r&&typeof t.maxContains==`number`?t.maxContains:void 0;(!(n>=i)||!(o===void 0||n<=o))&&e.addError(`CONTAINS`,void 0,a,t,void 0)})}function yn(){}function bn(){}function xn(e,t,n){for(let r=0;r<t.allOf.length;r++){let i=this._jsonValidate(e,t.allOf[r],n);if(this.options.breakOnFirstError&&i===!1)break}}function Sn(e,t,n){let r=[];for(let i=0;i<t.anyOf.length;i++){let a=new M(e);r.push(a),this._jsonValidate(a,t.anyOf[i],n),W(e,t.anyOf[i],n,a.errors.length===0)}K(e,r,()=>{let n=!1;for(let e of r)if(e.errors.length===0){n=!0;break}n===!1&&e.addError(`ANY_OF_MISSING`,void 0,r,t,`anyOf`)})}function Cn(e,t,n){let r=[];for(let i=0;i<t.oneOf.length;i++){let a=new M(e);r.push(a),this._jsonValidate(a,t.oneOf[i],n),W(e,t.oneOf[i],n,a.errors.length===0)}K(e,r,()=>{let n=0;for(let e of r)e.errors.length===0&&n++;n===0?e.addError(`ONE_OF_MISSING`,void 0,r,t,`oneOf`):n>1&&e.addError(`ONE_OF_MULTIPLE`,void 0,void 0,t,`oneOf`)})}function wn(e,t,n){let r=new M(e);this._jsonValidate(r,t.not,n)===!0&&e.addError(`NOT_PASSED`,void 0,void 0,t,`not`)}function Tn(e,t,n){if(this.options.version===`draft-04`||this.options.version===`draft-06`)return;let r=t.if,i=t.then,a=t.else;if(r===void 0||i===void 0&&a===void 0)return;let o=new M(e);this._jsonValidate(o,r,n),W(e,r,n,o.errors.length===0);let s=o.errors.length===0?i:a;s!==void 0&&this._jsonValidate(e,s,n)}function En(){}function Dn(){}function On(e,t,n){if(U(this.validateOptions,[`MULTIPLE_OF`])||typeof n!=`number`)return;let r=n/t.multipleOf;(!Number.isFinite(r)||Math.abs(r-Math.round(r))>=1e-10)&&e.addError(`MULTIPLE_OF`,[n,t.multipleOf],void 0,t,`multipleOf`)}function kn(e,t,n){U(this.validateOptions,[`MAXIMUM`,`MAXIMUM_EXCLUSIVE`])||typeof n==`number`&&(t.exclusiveMaximum===!0?n>=t.maximum&&e.addError(`MAXIMUM_EXCLUSIVE`,[n,t.maximum],void 0,t,`maximum`):n>t.maximum&&e.addError(`MAXIMUM`,[n,t.maximum],void 0,t,`maximum`))}function An(e,t,n){if(typeof t.exclusiveMaximum==`number`){if(U(this.validateOptions,[`MAXIMUM_EXCLUSIVE`])||typeof n!=`number`)return;n>=t.exclusiveMaximum&&e.addError(`MAXIMUM_EXCLUSIVE`,[n,t.exclusiveMaximum],void 0,t,`exclusiveMaximum`)}}function jn(e,t,n){U(this.validateOptions,[`MINIMUM`,`MINIMUM_EXCLUSIVE`])||typeof n==`number`&&(t.exclusiveMinimum===!0?n<=t.minimum&&e.addError(`MINIMUM_EXCLUSIVE`,[n,t.minimum],void 0,t,`minimum`):n<t.minimum&&e.addError(`MINIMUM`,[n,t.minimum],void 0,t,`minimum`))}function Mn(e,t,n){if(typeof t.exclusiveMinimum==`number`){if(U(this.validateOptions,[`MINIMUM_EXCLUSIVE`])||typeof n!=`number`)return;n<=t.exclusiveMinimum&&e.addError(`MINIMUM_EXCLUSIVE`,[n,t.exclusiveMinimum],void 0,t,`exclusiveMinimum`)}}function Nn(e,t,n){if(U(this.validateOptions,[`OBJECT_PROPERTIES_MAXIMUM`])||!h(n))return;let r=Object.keys(n).length;r>t.maxProperties&&e.addError(`OBJECT_PROPERTIES_MAXIMUM`,[r,t.maxProperties],void 0,t,`maxProperties`)}function Pn(e,t,n){if(U(this.validateOptions,[`OBJECT_PROPERTIES_MINIMUM`])||!h(n))return;let r=Object.keys(n).length;r<t.minProperties&&e.addError(`OBJECT_PROPERTIES_MINIMUM`,[r,t.minProperties],void 0,t,`minProperties`)}function Fn(e,t,n){if(U(this.validateOptions,[`OBJECT_MISSING_REQUIRED_PROPERTY`])||!h(n))return;let r=t.required.length;for(let i=0;i<r;i++){let r=t.required[i];Object.hasOwn(n,r)||e.addError(`OBJECT_MISSING_REQUIRED_PROPERTY`,[r],void 0,t,`required`)}}function In(e,t,n){if(t.properties===void 0&&t.patternProperties===void 0)return q.call(this,e,t,n)}function Ln(e,t,n){if(t.properties===void 0)return q.call(this,e,t,n)}function q(e,t,n){if(U(this.validateOptions,[`OBJECT_ADDITIONAL_PROPERTIES`])||!h(n))return;let r=t.properties===void 0?{}:t.properties,i=t.patternProperties===void 0?{}:t.patternProperties;if(t.additionalProperties===!1){let a=Object.keys(n),o=Object.keys(r),s=Object.keys(i);a=nn(a,o);for(let e of s){let t=V(e);if(!t.ok)continue;let n=t.value;for(let e=a.length-1;e>=0;e--)n.test(a[e])===!0&&a.splice(e,1)}if(a.length>0){if(Array.isArray(this.options.assumeAdditional))for(let e of this.options.assumeAdditional){let t=a.indexOf(e);t!==-1&&a.splice(t,1)}if(a.length>0)for(let n of a)e.addError(`OBJECT_ADDITIONAL_PROPERTIES`,[n],void 0,t,`properties`)}}}function Rn(e,t,n){if(U(this.validateOptions,[`OBJECT_DEPENDENCY_KEY`])||!h(n))return;let r=Object.keys(t.dependencies);for(let i of r)if(Object.hasOwn(n,i)){let r=t.dependencies[i];if(Array.isArray(r))for(let a of r)Object.hasOwn(n,a)||e.addError(`OBJECT_DEPENDENCY_KEY`,[a,i],void 0,t,`dependencies`);else this._jsonValidate(e,r,n)}}function zn(e,t,n){if(!rn(t,this.options.version)||!h(n)||!h(t.dependentSchemas))return;let r=Object.keys(t.dependentSchemas);for(let i of r)if(Object.hasOwn(n,i)){let r=t.dependentSchemas[i];this._jsonValidate(e,r,n)}}function Bn(e,t,n){if(!rn(t,this.options.version)||U(this.validateOptions,[`OBJECT_DEPENDENCY_KEY`])||!h(n)||!h(t.dependentRequired))return;let r=Object.keys(t.dependentRequired);for(let i of r){if(!Object.hasOwn(n,i))continue;let r=t.dependentRequired[i];if(Array.isArray(r))for(let a of r)Object.hasOwn(n,a)||e.addError(`OBJECT_DEPENDENCY_KEY`,[a,i],void 0,t,`dependentRequired`)}}function Vn(e,t,n){if(U(this.validateOptions,[`PROPERTY_NAMES`])||!h(n))return;let r=t.propertyNames;if(r===void 0)return;let i=e.constructor,a=Object.keys(n),o=[];for(let t of a){let n=new i(e);o.push(n),this._jsonValidate(n,r,t)}K(e,o,()=>{for(let n=0;n<a.length;n++)o[n].errors.length>0&&e.addError(`PROPERTY_NAMES`,[a[n]],o[n],t,void 0)})}let Hn=e=>{let t=e.indexOf(`#`);if(t===-1)return;let n=e.slice(t+1);if(!(!n||n[0]===`/`))return n},Un=(e,t)=>{let n=y(e),r=n?d(n):void 0,i=b(e,t,r,r);if(i&&i.$dynamicAnchor===t)return i},Wn=(e,t)=>{let n=e.__$recursiveRefResolved;if(!n)return;let r=n;if(typeof r==`object`&&r.$recursiveAnchor===!0){let e=t[0];e&&(r=e)}return r},Gn=(e,t)=>{let n=e.__$dynamicRefResolved;if(n===void 0||!e.$dynamicRef)return n;let r=n,i=Hn(e.$dynamicRef);if(i&&typeof r==`object`&&r.$dynamicAnchor===i)for(let e=0;e<t.length;e++){let n=t[e],a=Un(n,i);if(a){r=a;break}}return r},Kn=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,qn=e=>e.length%4==0?Kn.test(e):!1,Jn=e=>{if(qn(e)){if(typeof atob==`function`)try{return atob(e)}catch{return}if(typeof Buffer<`u`)try{return Buffer.from(e,`base64`).toString(`utf8`)}catch{return}}};function Yn(e){let t=0;for(let n of e)t++;return t}function Xn(e,t,n){U(this.validateOptions,[`MIN_LENGTH`])||typeof n==`string`&&Yn(n)<t.minLength&&e.addError(`MIN_LENGTH`,[n.length,t.minLength],void 0,t,`minLength`)}function Zn(e,t,n){U(this.validateOptions,[`MAX_LENGTH`])||typeof n==`string`&&Yn(n)>t.maxLength&&e.addError(`MAX_LENGTH`,[n.length,t.maxLength],void 0,t,`maxLength`)}function Qn(e,t,n){if(U(this.validateOptions,[`PATTERN`])||typeof n!=`string`)return;let r=V(t.pattern);if(!r.ok){e.addError(`PATTERN`,[t.pattern,n,r.error.message],void 0,t,`pattern`);return}r.value.test(n)||e.addError(`PATTERN`,[t.pattern,n],void 0,t,`pattern`)}function $n(e,t,n){if(this.options.formatAssertions===!1||this.options.formatAssertions===!0&&!dn(t,e,this.options.version))return;let r=this.options.version===`draft2019-09`||this.options.version===`draft2020-12`,i=Bt(this.options)[t.format];if(typeof i==`function`){if(U(this.validateOptions,[`INVALID_FORMAT`])||e.hasError(`INVALID_TYPE`,[t.type,m(n)]))return;if(i.length===2)e.addAsyncTaskWithPath(i,[n],function(r){r!==!0&&e.addError(`INVALID_FORMAT`,[t.format,JSON.stringify(n)],void 0,t,`format`)});else{let r=i.call(this,n);if(r instanceof Promise){let i=r;e.addAsyncTaskWithPath(async e=>{try{e(await i)}catch{e(!1)}},[],function(r){r!==!0&&e.addError(`INVALID_FORMAT`,[t.format,JSON.stringify(n)],void 0,t,`format`)})}else r!==!0&&e.addError(`INVALID_FORMAT`,[t.format,JSON.stringify(n)],void 0,t,`format`)}}else this.options.ignoreUnknownFormats!==!0&&!r&&e.addError(`UNKNOWN_FORMAT`,[t.format],void 0,t,`format`)}function er(e,t,n){this.options.version===`draft-07`&&typeof n==`string`&&t.contentEncoding===`base64`&&(qn(n)||e.addError(`INVALID_FORMAT`,[`contentEncoding:base64`,JSON.stringify(n)],void 0,t,`contentEncoding`))}function tr(e,t,n){if(this.options.version!==`draft-07`||typeof n!=`string`||t.contentMediaType!==`application/json`)return;let r=n;if(t.contentEncoding===`base64`){let i=Jn(n);if(i===void 0){e.addError(`INVALID_FORMAT`,[`contentEncoding:base64`,JSON.stringify(n)],void 0,t,`contentEncoding`);return}r=i}try{JSON.parse(r)}catch{e.addError(`INVALID_FORMAT`,[`contentMediaType:application/json`,JSON.stringify(n)],void 0,t,`contentMediaType`)}}function nr(e,t,n){if(U(this.validateOptions,[`INVALID_TYPE`]))return;let r=m(n);typeof t.type==`string`?r!==t.type&&(r!==`integer`||t.type!==`number`)&&e.addError(`INVALID_TYPE`,[t.type,r],void 0,t,`type`):!t.type.includes(r)&&(r!==`integer`||!t.type.includes(`number`))&&e.addError(`INVALID_TYPE`,[JSON.stringify(t.type),r],void 0,t,`type`)}function rr(e,t,n){if(U(this.validateOptions,[`ENUM_CASE_MISMATCH`,`ENUM_MISMATCH`]))return;let r=!1,i=!1;for(let e of t.enum)if(D(n,e,{maxDepth:this.options.maxRecursionDepth})){r=!0;break}else D(n,e,{caseInsensitiveComparison:!0,maxDepth:this.options.maxRecursionDepth})&&(i=!0);if(r===!1){let r=i&&this.options.enumCaseInsensitiveComparison?`ENUM_CASE_MISMATCH`:`ENUM_MISMATCH`;e.addError(r,[JSON.stringify(n)],void 0,t,`enum`)}}function ir(e,t,n){let r=t.const;D(n,r,{maxDepth:this.options.maxRecursionDepth})===!1&&e.addError(`CONST`,[JSON.stringify(r)],void 0,t,void 0)}function J(e){let{report:t,currentSchema:n,json:r,mode:i,depth:a}=e;if(!n||typeof n==`boolean`)return new Set;if(a>(this.options.maxRecursionDepth??100))return t.addError(`COLLECT_EVALUATED_DEPTH_EXCEEDED`,[a]),new Set;let o=new Set,s=e=>{if(e===`all`)return!0;for(let t of e)o.add(t);return!1},c=n=>i===`items`?J.call(this,{report:t,currentSchema:n,json:r,mode:`items`,jsonArr:e.jsonArr,depth:a+1}):J.call(this,{report:t,currentSchema:n,json:r,mode:`properties`,jsonData:e.jsonData,depth:a+1});if(i===`items`){let r=e.jsonArr;if(Array.isArray(n.prefixItems)){let e=Math.min(n.prefixItems.length,r.length);for(let t=0;t<e;t++)o.add(t)}if(n.items!==void 0){if(Array.isArray(n.items)){let e=Math.min(n.items.length,r.length);for(let t=0;t<e;t++)o.add(t)}else if(n.items!==!1)return`all`}if(n.additionalItems!==void 0&&n.additionalItems!==!1&&Array.isArray(n.items))return`all`;if(n.contains!==void 0)for(let e=0;e<r.length;e++){let i=G(t,n.contains,r[e]);if(i===void 0){let a=new M(t);Y.call(this,a,n.contains,r[e]),i=a.errors.length===0}i&&o.add(e)}if(n.unevaluatedItems===!0)return`all`}else{let t=e.jsonData;if(h(n.properties))for(let e of Object.keys(n.properties))Object.hasOwn(t,e)&&o.add(e);if(h(n.patternProperties))for(let e of Object.keys(n.patternProperties)){let n=V(e);if(n.ok)for(let e of Object.keys(t))n.value.test(e)&&o.add(e)}if(n.additionalProperties!==void 0){let e=h(n.properties)?Object.keys(n.properties):[],r=[];if(h(n.patternProperties))for(let e of Object.keys(n.patternProperties)){let t=V(e);t.ok&&r.push(t.value)}for(let n of Object.keys(t))e.includes(n)||r.some(e=>e.test(n))||o.add(n)}if(h(n.dependentSchemas)){for(let[e,r]of Object.entries(n.dependentSchemas))if(Object.hasOwn(t,e)&&s(c(r)))return`all`}if(n.unevaluatedProperties===!0)return`all`}if(Array.isArray(n.allOf)){for(let e of n.allOf)if(s(c(e)))return`all`}if(Array.isArray(n.anyOf))for(let e of n.anyOf){let n=G(t,e,r);if(n===void 0){let i=new M(t);Y.call(this,i,e,r),n=i.errors.length===0}if(n&&s(c(e)))return`all`}if(Array.isArray(n.oneOf))for(let e of n.oneOf){let n=G(t,e,r);if(n===void 0){let i=new M(t);Y.call(this,i,e,r),n=i.errors.length===0}if(n&&s(c(e)))return`all`}if(n.if!==void 0){let e=G(t,n.if,r);if(e===void 0){let i=new M(t);Y.call(this,i,n.if,r),e=i.errors.length===0}if(e){if(s(c(n.if))||n.then!==void 0&&s(c(n.then)))return`all`}else if(n.else!==void 0&&s(c(n.else)))return`all`}if(n.__$refResolved&&n.__$refResolved!==n&&s(c(n.__$refResolved)))return`all`;let l=Wn(n,t.__$recursiveAnchorStack);if(l&&l!==n&&s(c(l)))return`all`;let u=Gn(n,t.__$dynamicScopeStack);return u&&u!==n&&s(c(u))?`all`:o}function ar(e,t,n){if(!Array.isArray(n)||t.unevaluatedItems===!0)return;let r=t.unevaluatedItems;if(r===void 0||n.length===0)return;let i=J.call(this,{report:e,currentSchema:t,json:n,mode:`items`,jsonArr:n,depth:0});if(i===`all`)return;let a=[];for(let e=0;e<n.length;e++)i.has(e)||a.push(e);if(a.length!==0)if(r===!1)e.addError(`ARRAY_UNEVALUATED_ITEMS`,void 0,void 0,t,`unevaluatedItems`);else for(let i of a){let a=new M(e);if(Y.call(this,a,r,n[i]),a.errors.length>0){e.addError(`ARRAY_UNEVALUATED_ITEMS`,void 0,void 0,t,`unevaluatedItems`);break}}}function or(e,t,n){if(!h(n)||t.unevaluatedProperties===!0)return;let r=t.unevaluatedProperties;if(r===void 0)return;let i=Object.keys(n);if(i.length===0)return;let a=J.call(this,{report:e,currentSchema:t,json:n,mode:`properties`,jsonData:n,depth:0});if(a===`all`)return;let o=i.filter(e=>!a.has(e));if(o.length!==0)if(r===!1)e.addError(`OBJECT_UNEVALUATED_PROPERTIES`,[o.join(`, `)],void 0,t,`unevaluatedProperties`);else for(let i of o){let a=new M(e);Y.call(this,a,r,n[i]),a.errors.length>0&&e.addError(`OBJECT_UNEVALUATED_PROPERTIES`,[i],void 0,t,`unevaluatedProperties`)}}function sr(){}let cr={id:()=>{},$id:()=>{},$ref:()=>{},$schema:()=>{},$dynamicAnchor:()=>{},$dynamicRef:()=>{},$anchor:()=>{},$defs:()=>{},$vocabulary:()=>{},$recursiveAnchor:()=>{},$recursiveRef:()=>{},examples:()=>{},title:()=>{},description:()=>{},default:()=>{},type:nr,enum:rr,const:ir,multipleOf:On,maximum:kn,exclusiveMaximum:An,minimum:jn,exclusiveMinimum:Mn,maxLength:Zn,minLength:Xn,pattern:Qn,format:$n,contentEncoding:er,contentMediaType:tr,additionalItems:fn,items:pn,prefixItems:mn,maxItems:hn,minItems:gn,uniqueItems:_n,contains:vn,maxContains:yn,minContains:bn,unevaluatedItems:ar,maxProperties:Nn,minProperties:Pn,required:Fn,additionalProperties:In,patternProperties:Ln,properties:q,dependencies:Rn,dependentSchemas:zn,dependentRequired:Bn,propertyNames:Vn,unevaluatedProperties:or,allOf:xn,anyOf:Sn,oneOf:Cn,not:wn,if:Tn,then:En,else:Dn,definitions:sr},lr=function(e,t,n){let r=typeof t.$schema==`string`?t.$schema:void 0,i=(r===`https://json-schema.org/draft/2020-12/schema`||!r&&this.options.version===`draft2020-12`)&&Array.isArray(t.prefixItems)?t.prefixItems:void 0;if(i){for(let r=0;r<n.length;r++)r<i.length?(e.path.push(r),Y.call(this,e,i[r],n[r]),e.path.pop()):t.items!==void 0&&!Array.isArray(t.items)&&(e.path.push(r),e.schemaPath.push(`items`),Y.call(this,e,t.items,n[r]),e.schemaPath.pop(),e.path.pop());return}if(Array.isArray(t.items))for(let r=0;r<n.length;r++)r<t.items.length?(e.path.push(r),Y.call(this,e,t.items[r],n[r]),e.path.pop()):typeof t.additionalItems==`object`&&(e.path.push(r),Y.call(this,e,t.additionalItems,n[r]),e.path.pop());else if(typeof t.items==`object`||typeof t.items==`boolean`)for(let r=0;r<n.length;r++)e.path.push(r),e.schemaPath.push(`items`),Y.call(this,e,t.items,n[r]),e.schemaPath.pop(),e.path.pop()},ur=function(e,t,n){let r=t.additionalProperties;(r===!0||r===void 0)&&(r={});let i=t.properties?Object.keys(t.properties):[],a=t.patternProperties?Object.keys(t.patternProperties):[],o=Object.keys(n);for(let s of o){let o=n[s],c=[];i.includes(s)&&c.push(t.properties[s]);for(let e of a){let n=V(e);n.ok&&n.value.test(s)===!0&&c.push(t.patternProperties[e])}c.length===0&&r!==!1&&c.push(r);for(let t of c)e.path.push(s),i.includes(s)?(e.schemaPath.push(`properties`),e.schemaPath.push(s)):e.schemaPath.push(`additionalProperties`),Y.call(this,e,t,o),e.path.pop(),e.schemaPath.pop(),i.includes(s)&&e.schemaPath.pop()}};function Y(e,t,n){if(e.commonErrorMessage=`JSON_OBJECT_VALIDATION_FAILED`,t===!0)return!0;if(t===!1)return e.addError(`SCHEMA_IS_FALSE`,[],void 0,t),!1;if(!h(t))return e.addError(`SCHEMA_NOT_AN_OBJECT`,[m(t)],void 0,t),!1;let r=Object.keys(t);if(r.length===0)return!0;let i=!1;e.rootSchema||(e.rootSchema=t,i=!0);let a=e.__$recursiveAnchorStack,o=e.__$dynamicScopeStack,s=!1,c=!1,l=y(t),u=t.__$resourceRoot||(i||typeof l==`string`?t:void 0);if(u&&o[o.length-1]!==u&&(o.push(u),c=!0),t.$recursiveAnchor===!0&&(a.push(t),s=!0),t.$ref!==void 0)if(this.options.version===`draft2019-09`||this.options.version===`draft2020-12`)t.__$refResolved?Y.call(this,e,t.__$refResolved,n):e.addError(`REF_UNRESOLVED`,[t.$ref],void 0,t),r=r.filter(e=>e!==`$ref`);else{let n=99;for(;t.$ref&&n>0;){if(!t.__$refResolved){e.addError(`REF_UNRESOLVED`,[t.$ref],void 0,t);break}else if(t.__$refResolved===t)break;else t=t.__$refResolved,r=Object.keys(t);n--}if(n===0)throw Error(`Circular dependency by $ref references!`);e.schemaPath=[]}if(t.$recursiveRef!==void 0&&(this.options.version===`draft2019-09`||this.options.version===`draft2020-12`)){let i=Wn(t,a);i?Y.call(this,e,i,n):e.addError(`REF_UNRESOLVED`,[t.$recursiveRef],void 0,t),r=r.filter(e=>e!==`$recursiveRef`)}if(t.$dynamicRef!==void 0&&this.options.version===`draft2020-12`){let i=Gn(t,o);i===void 0?e.addError(`REF_UNRESOLVED`,[t.$dynamicRef],void 0,t):Y.call(this,e,i,n),r=r.filter(e=>e!==`$dynamicRef`)}let d=un(t,e,this.options.version);if(d||(r=r.filter(e=>!ln.has(e))),d&&t.type&&(r.splice(r.indexOf(`type`),1),e.schemaPath.push(`type`),cr.type.call(this,e,t,n),e.schemaPath.pop(),e.errors.length&&this.options.breakOnFirstError))return s&&a.pop(),c&&o.pop(),!1;let f=[];for(let i of r){if(i===`unevaluatedItems`||i===`unevaluatedProperties`){f.push(i);continue}let r=cr[i];if(r&&(r.call(this,e,t,n),e.errors.length&&this.options.breakOnFirstError))break}if(f.length>0&&!(e.errors.length>0&&this.options.breakOnFirstError))for(let r of f){let i=cr[r];if(i&&(i.call(this,e,t,n),e.errors.length&&this.options.breakOnFirstError))break}return(e.errors.length===0||this.options.breakOnFirstError===!1)&&(Array.isArray(n)?lr.call(this,e,t,n):h(n)&&ur.call(this,e,t,n)),typeof this.options.customValidator==`function`&&this.options.customValidator.call(this,e,t,n),s&&a.pop(),c&&o.pop(),i&&(e.rootSchema=void 0),e.errors.length===0}let dr;function fr(){return dr}function pr(e){dr=e}let mr=[Object.prototype,Function.prototype,Array.prototype];function X(e){return mr.includes(e)}function hr(e,t,n){X(e)||t!==`__proto__`&&t!==`constructor`&&t!==`prototype`&&(e[t]=n)}function gr(e,t){X(e)||t!==`__proto__`&&t!==`constructor`&&t!==`prototype`&&delete e[t]}let _r=(e,t=100)=>{let n=[];function r(e,i,a=0){if(typeof e!=`object`||!e)return;if(a>=t)throw Error(`Maximum recursion depth (${t}) exceeded in collectIds. If your schema is deeply nested and valid, increase the maxRecursionDepth option.`);let o=!1,s=y(e);if(typeof s==`string`){let t=f(s)?`absolute`:`relative`;i.length===0&&(t=`root`);let r={id:s,type:t,obj:e};t===`absolute`||t===`root`&&f(s)?r.absoluteUri=s:t===`root`&&typeof e.id==`string`&&f(e.id)&&e.id!==s?r.absoluteUri=xr(e.id,e,s):t===`relative`&&(r.absoluteParent=i.filter(e=>e.type===`absolute`||e.type===`root`&&e.absoluteUri).slice(-1)[0],r.absoluteParent&&(r.absoluteUri=xr(r.absoluteParent.absoluteUri||r.absoluteParent.id,e,r.id))),n.push(r),i.push(r),o=!0}if(Array.isArray(e))for(let t of e)r(t,i,a+1);else for(let t of Object.keys(e))v(t)||_.includes(t)||r(e[t],i,a+1);o&&i.pop()}return r(e,[]),n},vr=(e,t,n,r,i,a=100,o=0)=>{if(t||=[],n||=[],r||=[],i||={},typeof e!=`object`||!e)return t;if(o>=a)throw Error(`Maximum recursion depth (${a}) exceeded in collectReferences. If your schema is deeply nested and valid, increase the maxRecursionDepth option.`);let s=typeof e.$ref==`string`&&e.__$refResolved===void 0,c=!1,l=n.length===0,u=y(e);if(typeof e.id==`string`&&f(e.id)&&(!u||!f(u))&&(u=e.id),typeof u==`string`&&(l||!s||i.useRefObjectScope===!0)){let t=n.length>0?n[n.length-1]:void 0;n.push(xr(t,e,u)),c=!0}if(s&&t.push({ref:Z(n[n.length-1],e.$ref),key:`$ref`,obj:e,path:r.slice(0)}),typeof e.$recursiveRef==`string`&&e.__$recursiveRefResolved===void 0&&t.push({ref:Z(n[n.length-1],e.$recursiveRef),key:`$recursiveRef`,obj:e,path:r.slice(0)}),typeof e.$dynamicRef==`string`&&e.__$dynamicRefResolved===void 0&&t.push({ref:Z(n[n.length-1],e.$dynamicRef),key:`$dynamicRef`,obj:e,path:r.slice(0)}),typeof e.$schema==`string`&&e.__$schemaResolved===void 0&&t.push({ref:Z(n[n.length-1],e.$schema),key:`$schema`,obj:e,path:r.slice(0)}),Array.isArray(e))for(let s=0;s<e.length;s++)r.push(s),vr(e[s],t,n,r,i,a,o+1),r.pop();else{let s=Object.keys(e);for(let c of s)v(c)||_.includes(c)||(r.push(c),vr(e[c],t,n,r,i,a,o+1),r.pop())}return c&&n.pop(),t},Z=(e,t)=>{if(f(t))return t;let n=e??``;if(t[0]===`#`){let e=n.indexOf(`#`);return(e===-1?n:n.slice(0,e))+t}if(!n)return t;let r=n.indexOf(`#`),i=r===-1?n:n.slice(0,r);if(f(i))try{return new URL(t,i).toString()}catch{}let a=i;if(!a.endsWith(`/`)){let e=a.lastIndexOf(`/`);a=e===-1?``:a.slice(0,e+1)}return a+t},yr=e=>e[0]!==`#`&&!e.includes(`/`)&&!e.includes(`.`)&&!e.includes(`#`),br=(e,t)=>{if(f(t))return t;let n=e??``;if(yr(t)){let e=n.indexOf(`#`);return(e===-1?n:n.slice(0,e))+`#`+t}return Z(e,t)},xr=(e,t,n)=>typeof t.$id==`string`?Z(e,n):br(e,n);var Sr=class{constructor(e){this.validator=e}collectAndCacheIds(e){let t=_r(e,this.validator.options.maxRecursionDepth);for(let e of t)if(e.absoluteUri){if(this.validator.scache.cacheSchemaByUri(e.absoluteUri,e.obj),e.type===`relative`&&e.absoluteParent&&yr(e.id)){let t=Z(e.absoluteParent.absoluteUri||e.absoluteParent.id,e.id);this.validator.scache.cacheSchemaByUri(t,e.obj)}}else e.type===`root`&&this.validator.scache.cacheSchemaByUri(e.id,e.obj)}compileSchema(e,t,n){if(e.commonErrorMessage=`SCHEMA_COMPILATION_FAILED`,typeof t==`string`){let n=this.validator.scache.getSchemaByUri(e,t);if(n===void 0)return e.addError(`SCHEMA_NOT_REACHABLE`,[t]),!1;t=n}if(Array.isArray(t))return n?.noCache||t.forEach(e=>this.collectAndCacheIds(e)),this.compileArrayOfSchemas(e,t);if(typeof t==`boolean`)return!0;n?.noCache||this.collectAndCacheIds(t);let r=t!==Object.prototype&&t!==Function.prototype&&t!==Array.prototype;if(r&&t.__$compiled&&t.id&&this.validator.scache.checkCacheForUri(t.id)===!1&&(t.__$compiled=void 0),t.__$compiled)return!0;r&&!t.$schema&&this.validator.options.version!==`none`&&(t.$schema=this.validator.getDefaultSchemaId()),t.id&&typeof t.id==`string`&&!n?.noCache&&this.validator.scache.cacheSchemaByUri(t.id,t);let i=!1;e.rootSchema||(e.rootSchema=t,i=!0);let a=e.isValid();r&&gr(t,`__$missingReferences`);let o=this.validator.options.version===`draft2019-09`||this.validator.options.version===`draft2020-12`,s=vr(t,void 0,void 0,void 0,{useRefObjectScope:o},this.validator.options.maxRecursionDepth);for(let n of s){let i=this.validator.scache.getSchemaByUri(e,n.ref,t);if(i===void 0){let r=fr();if(r){let a=d(n.ref),o=r(a);if(o){o.id=a;let r=new M(e);this.compileSchema(r,o)?i=this.validator.scache.getSchemaByUri(e,n.ref,t):e.errors=e.errors.concat(r.errors)}}}if(i===void 0){let i=e.hasError(`REMOTE_NOT_VALID`,[n.ref]),o=f(n.ref),s=!1,c=this.validator.options.ignoreUnresolvableReferences===!0;o&&(s=this.validator.scache.checkCacheForUri(n.ref)),i||c&&o||s||(e.path.push(...n.path),e.addError(`UNRESOLVABLE_REFERENCE`,[n.ref]),e.path=e.path.slice(0,-n.path.length),a&&r&&!X(t)&&(t.__$missingReferences=t.__$missingReferences||[],t.__$missingReferences.push(n)))}hr(n.obj,`__${n.key}Resolved`,i)}let c=e.isValid();return c&&r&&(t.__$compiled=!0),i&&(e.rootSchema=void 0),c}compileArrayOfSchemas(e,t){let n=0,r;do{e.errors=e.errors.filter(e=>e.code!==`UNRESOLVABLE_REFERENCE`),r=n,n=this.compileArrayOfSchemasLoop(e,t);for(let e of t)if(e.__$missingReferences){for(let n=e.__$missingReferences.length-1;n>=0;n--){let r=e.__$missingReferences[n],i=t.find(e=>e.id===r.ref);i&&(hr(r.obj,`__${r.key}Resolved`,i),e.__$missingReferences.splice(n,1))}e.__$missingReferences.length===0&&gr(e,`__$missingReferences`)}}while(n!==t.length&&n!==r);return e.isValid()}compileArrayOfSchemasLoop(e,t){let n=0;for(let r of t){let t=new M(e);this.compileSchema(t,r)&&n++,e.errors=e.errors.concat(t.errors)}return n}};let Cr={$ref:function(e,t){typeof t.$ref!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`$ref`,`string`],void 0,t,`$ref`)},$schema:function(e,t){typeof t.$schema!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`$schema`,`string`],void 0,t,`$schema`)},multipleOf:function(e,t){typeof t.multipleOf==`number`?t.multipleOf<=0&&e.addError(`KEYWORD_MUST_BE`,[`multipleOf`,`strictly greater than 0`],void 0,t,`multipleOf`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`multipleOf`,`number`],void 0,t,`multipleOf`)},maximum:function(e,t){typeof t.maximum!=`number`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`maximum`,`number`],void 0,t,`maximum`)},exclusiveMaximum:function(e,t){e.options.version===`draft-04`?typeof t.exclusiveMaximum==`boolean`?t.maximum===void 0&&e.addError(`KEYWORD_DEPENDENCY`,[`exclusiveMaximum`,`maximum`],void 0,t,`exclusiveMaximum`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`exclusiveMaximum`,`boolean`],void 0,t,`exclusiveMaximum`):typeof t.exclusiveMaximum!=`boolean`&&typeof t.exclusiveMaximum!=`number`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`exclusiveMaximum`,[`boolean`,`number`]],void 0,t,`exclusiveMaximum`)},minimum:function(e,t){typeof t.minimum!=`number`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`minimum`,`number`],void 0,t,`minimum`)},exclusiveMinimum:function(e,t){e.options.version===`draft-04`?typeof t.exclusiveMinimum==`boolean`?t.minimum===void 0&&e.addError(`KEYWORD_DEPENDENCY`,[`exclusiveMinimum`,`minimum`],void 0,t,`exclusiveMinimum`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`exclusiveMinimum`,`boolean`],void 0,t,`exclusiveMinimum`):typeof t.exclusiveMinimum!=`boolean`&&typeof t.exclusiveMinimum!=`number`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`exclusiveMinimum`,[`boolean`,`number`]],void 0,t,`exclusiveMinimum`)},maxLength:function(e,t){g(t.maxLength)?t.maxLength<0&&e.addError(`KEYWORD_MUST_BE`,[`maxLength`,`greater than, or equal to 0`],void 0,t,`maxLength`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`maxLength`,`integer`],void 0,t,`maxLength`)},minLength:function(e,t){g(t.minLength)?t.minLength<0&&e.addError(`KEYWORD_MUST_BE`,[`minLength`,`greater than, or equal to 0`],void 0,t,`minLength`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`minLength`,`integer`],void 0,t,`minLength`)},pattern:function(e,t){if(typeof t.pattern!=`string`)e.addError(`KEYWORD_TYPE_EXPECTED`,[`pattern`,`string`],void 0,t,`pattern`);else{let n=V(t.pattern);n.ok||e.addError(`KEYWORD_PATTERN`,[`pattern`,t.pattern,n.error.message],void 0,t,`pattern`)}},additionalItems:function(e,t){typeof t.additionalItems!=`boolean`&&!h(t.additionalItems)?e.addError(`KEYWORD_TYPE_EXPECTED`,[`additionalItems`,[`boolean`,`object`]],void 0,t,`additionalItems`):h(t.additionalItems)&&(e.path.push(`additionalItems`),this.validateSchema(e,t.additionalItems),e.path.pop())},items:function(e,t){if(Array.isArray(t.items))for(let n=0;n<t.items.length;n++)e.path.push(`items`),e.path.push(n),this.validateSchema(e,t.items[n]),e.path.pop(),e.path.pop();else h(t.items)||e.options.version!==`draft-04`&&typeof t.items==`boolean`?(e.path.push(`items`),this.validateSchema(e,t.items),e.path.pop()):e.addError(`KEYWORD_TYPE_EXPECTED`,[`items`,e.options.version===`draft-04`?[`array`,`object`]:[`array`,`object`,`boolean`]],void 0,t,`items`);this.options.forceAdditional===!0&&t.additionalItems===void 0&&Array.isArray(t.items)&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`additionalItems`],void 0,t,`additionalItems`),this.options.assumeAdditional&&t.additionalItems===void 0&&Array.isArray(t.items)&&(t.additionalItems=!1)},maxItems:function(e,t){typeof t.maxItems==`number`?t.maxItems<0&&e.addError(`KEYWORD_MUST_BE`,[`maxItems`,`greater than, or equal to 0`],void 0,t,`maxItems`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`maxItems`,`integer`],void 0,t,`maxItems`)},minItems:function(e,t){g(t.minItems)?t.minItems<0&&e.addError(`KEYWORD_MUST_BE`,[`minItems`,`greater than, or equal to 0`],void 0,t,`minItems`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`minItems`,`integer`],void 0,t,`minItems`)},uniqueItems:function(e,t){typeof t.uniqueItems!=`boolean`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`uniqueItems`,`boolean`],void 0,t,`uniqueItems`)},maxProperties:function(e,t){g(t.maxProperties)?t.maxProperties<0&&e.addError(`KEYWORD_MUST_BE`,[`maxProperties`,`greater than, or equal to 0`],void 0,t,`maxProperties`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`maxProperties`,`integer`],void 0,t,`maxProperties`)},minProperties:function(e,t){g(t.minProperties)?t.minProperties<0&&e.addError(`KEYWORD_MUST_BE`,[`minProperties`,`greater than, or equal to 0`],void 0,t,`minProperties`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`minProperties`,`integer`],void 0,t,`minProperties`)},required:function(e,t){if(!Array.isArray(t.required))e.addError(`KEYWORD_TYPE_EXPECTED`,[`required`,`array`],void 0,t,`required`);else if(e.options.version===`draft-04`&&t.required.length===0)e.addError(`KEYWORD_MUST_BE`,[`required`,`an array with at least one element`],void 0,t,`required`);else{for(let n of t.required)typeof n!=`string`&&e.addError(`KEYWORD_VALUE_TYPE`,[`required`,`string`],void 0,t,`required`);H(t.required)===!1&&e.addError(`KEYWORD_MUST_BE`,[`required`,`an array with unique items`],void 0,t,`required`)}},additionalProperties:function(e,t){typeof t.additionalProperties!=`boolean`&&!h(t.additionalProperties)?e.addError(`KEYWORD_TYPE_EXPECTED`,[`additionalProperties`,[`boolean`,`object`]],void 0,t,`additionalProperties`):h(t.additionalProperties)&&(e.path.push(`additionalProperties`),this.validateSchema(e,t.additionalProperties),e.path.pop())},properties:function(e,t){if(!h(t.properties)){e.addError(`KEYWORD_TYPE_EXPECTED`,[`properties`,`object`],void 0,t,`properties`);return}let n=Object.keys(t.properties);for(let r of n){let n=t.properties[r];e.path.push(`properties`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop()}this.options.forceAdditional===!0&&t.additionalProperties===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`additionalProperties`],void 0,t,`additionalProperties`),this.options.assumeAdditional&&t.additionalProperties===void 0&&(t.additionalProperties=!1),this.options.forceProperties===!0&&n.length===0&&e.addError(`CUSTOM_MODE_FORCE_PROPERTIES`,[`properties`],void 0,t,`properties`)},patternProperties:function(e,t){if(!h(t.patternProperties)){e.addError(`KEYWORD_TYPE_EXPECTED`,[`patternProperties`,`object`],void 0,t,`patternProperties`);return}let n=Object.keys(t.patternProperties);for(let r of n){let n=t.patternProperties[r],i=V(r);i.ok||e.addError(`KEYWORD_PATTERN`,[`patternProperties`,r,i.error.message],void 0,t,`patternProperties`),e.path.push(`patternProperties`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop()}this.options.forceProperties===!0&&n.length===0&&e.addError(`CUSTOM_MODE_FORCE_PROPERTIES`,[`patternProperties`],void 0,t,`patternProperties`)},dependencies:function(e,t){if(!h(t.dependencies))e.addError(`KEYWORD_TYPE_EXPECTED`,[`dependencies`,`object`],void 0,t,`dependencies`);else{let n=Object.keys(t.dependencies);for(let r of n){let n=t.dependencies[r];if(h(n)||e.options.version!==`draft-04`&&typeof n==`boolean`)e.path.push(`dependencies`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop();else if(Array.isArray(n)){let r=n;e.options.version===`draft-04`&&r.length===0&&e.addError(`KEYWORD_MUST_BE`,[`dependencies`,`not empty array`],void 0,t,`dependencies`);for(let n of r)typeof n!=`string`&&e.addError(`KEYWORD_VALUE_TYPE`,[`dependencies`,`string`],void 0,t,`dependencies`);H(r)===!1&&e.addError(`KEYWORD_MUST_BE`,[`dependencies`,`an array with unique items`],void 0,t,`dependencies`)}else e.addError(`KEYWORD_VALUE_TYPE`,[`dependencies`,e.options.version===`draft-04`?`object or array`:`boolean, object or array`],void 0,t,`dependencies`)}}},enum:function(e,t){Array.isArray(t.enum)===!1?e.addError(`KEYWORD_TYPE_EXPECTED`,[`enum`,`array`],void 0,t,`enum`):t.enum.length===0?e.addError(`KEYWORD_MUST_BE`,[`enum`,`an array with at least one element`],void 0,t,`enum`):H(t.enum)===!1&&e.addError(`KEYWORD_MUST_BE`,[`enum`,`an array with unique elements`],void 0,t,`enum`)},type:function(e,t){let n=[`array`,`boolean`,`integer`,`number`,`null`,`object`,`string`],r=n.join(`,`),i=Array.isArray(t.type);if(Array.isArray(t.type)){for(let i of t.type)n.includes(i)||e.addError(`KEYWORD_TYPE_EXPECTED`,[`type`,r],void 0,t,`type`);H(t.type)===!1&&e.addError(`KEYWORD_MUST_BE`,[`type`,`an object with unique properties`],void 0,t,`type`)}else typeof t.type==`string`?n.includes(t.type)||e.addError(`KEYWORD_TYPE_EXPECTED`,[`type`,r],void 0,t,`type`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`type`,[`string`,`array`]],void 0,t,`type`);this.options.noEmptyStrings===!0&&(t.type===`string`||i&&t.type.includes(`string`))&&t.minLength===void 0&&t.enum===void 0&&t.format===void 0&&(t.minLength=1),this.options.noEmptyArrays===!0&&(t.type===`array`||i&&t.type.includes(`array`))&&t.minItems===void 0&&(t.minItems=1),this.options.forceProperties===!0&&(t.type===`object`||i&&t.type.includes(`object`))&&t.properties===void 0&&t.patternProperties===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`properties`],void 0,t,`properties`),this.options.forceItems===!0&&(t.type===`array`||i&&t.type.includes(`array`))&&t.items===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`items`],void 0,t,`items`),this.options.forceMinItems===!0&&(t.type===`array`||i&&t.type.includes(`array`))&&t.minItems===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`minItems`],void 0,t,`minItems`),this.options.forceMaxItems===!0&&(t.type===`array`||i&&t.type.includes(`array`))&&t.maxItems===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`maxItems`],void 0,t,`maxItems`),this.options.forceMinLength===!0&&(t.type===`string`||i&&t.type.includes(`string`))&&t.minLength===void 0&&t.format===void 0&&t.enum===void 0&&t.pattern===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`minLength`],void 0,t,`minLength`),this.options.forceMaxLength===!0&&(t.type===`string`||i&&t.type.includes(`string`))&&t.maxLength===void 0&&t.format===void 0&&t.enum===void 0&&t.pattern===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`maxLength`],void 0,t,`maxLength`)},allOf:function(e,t){if(Array.isArray(t.allOf)===!1)e.addError(`KEYWORD_TYPE_EXPECTED`,[`allOf`,`array`],void 0,t,`allOf`);else if(t.allOf.length===0)e.addError(`KEYWORD_MUST_BE`,[`allOf`,`an array with at least one element`],void 0,t,`allOf`);else for(let n=0;n<t.allOf.length;n++)e.path.push(`allOf`),e.path.push(n),this.validateSchema(e,t.allOf[n]),e.path.pop(),e.path.pop()},anyOf:function(e,t){if(Array.isArray(t.anyOf)===!1)e.addError(`KEYWORD_TYPE_EXPECTED`,[`anyOf`,`array`],void 0,t,`anyOf`);else if(t.anyOf.length===0)e.addError(`KEYWORD_MUST_BE`,[`anyOf`,`an array with at least one element`],void 0,t,`anyOf`);else for(let n=0;n<t.anyOf.length;n++)e.path.push(`anyOf`),e.path.push(n),this.validateSchema(e,t.anyOf[n]),e.path.pop(),e.path.pop()},oneOf:function(e,t){if(Array.isArray(t.oneOf)===!1)e.addError(`KEYWORD_TYPE_EXPECTED`,[`oneOf`,`array`],void 0,t,`oneOf`);else if(t.oneOf.length===0)e.addError(`KEYWORD_MUST_BE`,[`oneOf`,`an array with at least one element`],void 0,t,`oneOf`);else for(let n=0;n<t.oneOf.length;n++)e.path.push(`oneOf`),e.path.push(n),this.validateSchema(e,t.oneOf[n]),e.path.pop(),e.path.pop()},not:function(e,t){let n=t.not;(e.options.version===`draft-04`?h(n):typeof n==`boolean`||h(n))?(e.path.push(`not`),this.validateSchema(e,n),e.path.pop()):e.addError(`KEYWORD_TYPE_EXPECTED`,[`not`,e.options.version===`draft-04`?`object`:[`boolean`,`object`]],void 0,t,`not`)},if:function(e,t){if(e.options.version!==`draft-07`)return;let n=t.if;if(!(typeof n==`boolean`||h(n))){e.addError(`KEYWORD_TYPE_EXPECTED`,[`if`,[`boolean`,`object`]],void 0,t,`if`);return}e.path.push(`if`),this.validateSchema(e,n),e.path.pop()},then:function(e,t){if(e.options.version!==`draft-07`)return;let n=t.then;if(!(typeof n==`boolean`||h(n))){e.addError(`KEYWORD_TYPE_EXPECTED`,[`then`,[`boolean`,`object`]],void 0,t,`then`);return}e.path.push(`then`),this.validateSchema(e,n),e.path.pop()},else:function(e,t){if(e.options.version!==`draft-07`)return;let n=t.else;if(!(typeof n==`boolean`||h(n))){e.addError(`KEYWORD_TYPE_EXPECTED`,[`else`,[`boolean`,`object`]],void 0,t,`else`);return}e.path.push(`else`),this.validateSchema(e,n),e.path.pop()},definitions:function(e,t){if(!h(t.definitions))e.addError(`KEYWORD_TYPE_EXPECTED`,[`definitions`,`object`],void 0,t,`definitions`);else{let n=Object.keys(t.definitions);for(let r of n){let n=t.definitions[r];e.path.push(`definitions`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop()}}},$defs:function(e,t){if(e.options.version!==`draft2019-09`&&e.options.version!==`draft2020-12`)return;if(!h(t.$defs)){e.addError(`KEYWORD_TYPE_EXPECTED`,[`$defs`,`object`],void 0,t,`$defs`);return}let n=Object.keys(t.$defs);for(let r of n){let n=t.$defs[r];e.path.push(`$defs`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop()}},format:function(e,t){if(this.options.formatAssertions!==!1)if(typeof t.format!=`string`)e.addError(`KEYWORD_TYPE_EXPECTED`,[`format`,`string`],void 0,t,`format`);else{let n=this.options.version===`draft2019-09`||this.options.version===`draft2020-12`;!Wt(t.format,this.options.customFormats)&&this.options.ignoreUnknownFormats!==!0&&!n&&e.addError(`UNKNOWN_FORMAT`,[t.format],void 0,t,`format`)}},contentEncoding:function(e,t){e.options.version===`draft-07`&&typeof t.contentEncoding!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`contentEncoding`,`string`],void 0,t,`contentEncoding`)},contentMediaType:function(e,t){e.options.version===`draft-07`&&typeof t.contentMediaType!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`contentMediaType`,`string`],void 0,t,`contentMediaType`)},id:function(e,t){typeof t.id!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`id`,`string`],void 0,t,`id`)},title:function(e,t){typeof t.title!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`title`,`string`],void 0,t,`title`)},description:function(e,t){typeof t.description!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`description`,`string`],void 0,t,`description`)},default:function(){}};var wr=class{constructor(e){this.validator=e}get options(){return this.validator.options}validateArrayOfSchemas(e,t){for(let n of t)this.validateSchema(e,n);return e.isValid()}validateSchema(e,t){if(e.commonErrorMessage=`SCHEMA_VALIDATION_FAILED`,Array.isArray(t))return this.validateArrayOfSchemas(e,t);if(typeof t==`boolean`||t.__$validated)return!0;let n=t.$schema&&y(t)!==t.$schema;if(n)if(t.__$schemaResolved&&t.__$schemaResolved!==t){let n=new M(e);Y.call(this.validator,n,t.__$schemaResolved,t)===!1&&e.addError(`PARENT_SCHEMA_VALIDATION_FAILED`,void 0,n,t,`$schema`)}else this.validator.options.ignoreUnresolvableReferences!==!0&&e.addError(`REF_UNRESOLVED`,[t.$schema],void 0,t,`$schema`);if(this.validator.options.noTypeless===!0){if(t.type!==void 0){let e=[];Array.isArray(t.anyOf)&&(e=e.concat(t.anyOf)),Array.isArray(t.oneOf)&&(e=e.concat(t.oneOf)),Array.isArray(t.allOf)&&(e=e.concat(t.allOf)),e.forEach(function(e){e.type||=t.type})}t.enum===void 0&&t.type===void 0&&t.anyOf===void 0&&t.oneOf===void 0&&t.not===void 0&&t.$ref===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`type`],void 0,t,`type`)}let r=Object.keys(t);for(let i of r)i.startsWith(`__`)||(Object.hasOwn(Cr,i)?Cr[i].call(this,e,t):n||this.validator.options.noExtraKeywords===!0&&e.addError(`KEYWORD_UNEXPECTED`,[i],void 0,t,void 0));if(this.validator.options.pedanticCheck===!0){if(t.enum){let n=T(t);delete n.enum,delete n.default,e.path.push(`enum`);for(let r=0;r<t.enum.length;r++)e.path.push(r),Y.call(this.validator,e,n,t.enum[r]),e.path.pop();e.path.pop()}t.default&&(e.path.push(`default`),Y.call(this.validator,e,t,t.default),e.path.pop())}let i=e.isValid();return i&&(t.__$validated=!0),i}};let Q=Symbol(`ZSchema.factory`);var $=class{scache;sc;sv;validateOptions={};options;constructor(e,t){if(t!==Q)throw Error(`do not use new ZSchema(), use ZSchema.create() instead`);this.scache=new ae(this),this.sc=new Sr(this),this.sv=new wr(this),this.options=ne(e)}_jsonValidate(e,t,n){return Y.call(this,e,t,n)}getDefaultSchemaId(){return this.options.version&&this.options.version!==`none`?te[this.options.version]:te[N.version]}_validate(e,t,n,r){if(typeof n==`function`&&(r=n,n={}),n||={},this.validateOptions=n,typeof t!=`string`&&typeof t!=`boolean`&&!h(t)){let e=Error(`Invalid .validate call - schema must be a string or object but `+m(t)+` was passed!`);if(r){setTimeout(function(){r(e,!1)},0);return}throw e}let i=!1,a=new M(this.options,n);a.json=e;let o;if(typeof t==`string`){let e=t;if(o=this.scache.getSchema(a,e),!o){let t=Error(`Schema with id '`+e+`' wasn't found in the validator cache!`);if(r){setTimeout(function(){r(t,!1)},0);return}throw t}}else o=this.scache.getSchema(a,t);let s=!1;i||(s=this.sc.compileSchema(a,o)),s||(i=!0);let c=!1;if(i||(c=this.sv.validateSchema(a,o)),c||(i=!0),n.schemaPath&&(a.rootSchema=o,o=A(o,n.schemaPath),!o)){let e=Error(`Schema path '`+n.schemaPath+`' wasn't found in the schema!`);if(r){setTimeout(function(){r(e,!1)},0);return}throw e}if(i||Y.call(this,a,o,e),r){a.processAsyncTasks(this.options.asyncTimeout,r);return}else if(a.asyncTasks.length>0)throw Error(`This validation has async tasks and cannot be done in sync mode, please provide callback argument.`);if(!a.isValid())throw C({message:a.commonErrorMessage,details:a.errors});return!0}_validateSchema(e){if(Array.isArray(e)&&e.length===0)throw Error(`.compileSchema was called with an empty array`);let t=new M(this.options);if(Array.isArray(e)){let n=this.scache.getSchema(t,e);this.sc.compileSchema(t,n)&&this.sv.validateSchema(t,n)}else{let n=this.scache.getSchema(t,e);this.sc.compileSchema(t,n)&&this.sv.validateSchema(t,n)}if(!t.isValid())throw C({message:t.commonErrorMessage,details:t.errors});return!0}registerFormat(e,t){this.options.customFormats||(this.options.customFormats={}),this.options.customFormats[e]=t}unregisterFormat(e){this.options.customFormats||(this.options.customFormats={}),this.options.customFormats[e]=null}getRegisteredFormats(){return k(this.options.customFormats||{}).filter(e=>this.options.customFormats?.[e]!=null)}getSupportedFormats(){return Ut(this.options.customFormats)}setRemoteReference(e,t,n){let r=ie(t,e,n,this.options.maxRecursionDepth);this.scache.cacheSchemaByUri(e,r)}getMissingReferences(e){if(!e)return[];let t=e.details||[],n=[];function r(e){for(let t of e)(t.code===`UNRESOLVABLE_REFERENCE`||t.code===`SCHEMA_NOT_REACHABLE`)&&n.push(t.params[0]),t.inner&&r(t.inner)}return r(t),n}getMissingRemoteReferences(e){let t=this.getMissingReferences(e),n=[];for(let e of t){let t=d(e);t&&!n.includes(t)&&n.push(t)}return n}getResolvedSchema(e){let t=new M(this.options),n=this.scache.getSchemaByUri(t,e);if(!n)return;let r=E(n,this.options.maxRecursionDepth),i=new WeakSet,a=function(e){let t,n=m(e);if(!(n!==`object`&&n!==`array`)&&!i.has(e)){if(i.add(e),e.$ref&&e.__$refResolved){let n=e.__$refResolved,r=e;for(t in delete e.$ref,delete e.__$refResolved,n)w(n,r,t)}for(t in e)Object.hasOwn(e,t)&&(v(t)?delete e[t]:a(e[t]))}};return a(r),r}},Tr=class e extends ${constructor(e,t){super(e,t)}static registerFormat(e,t){return Vt(e,t)}static unregisterFormat(e){return Ht(e)}static getRegisteredFormats(){return Gt()}static getDefaultOptions(){return E(N)}static setRemoteReference(e,t,n){let r=ie(t,e,n);ae.cacheSchemaByUri(e,r)}static getSchemaReader(){return fr()}static setSchemaReader(e){return pr(e)}static schemaSymbol=ee;static jsonSymbol=j;static create(t={}){let n=t.async,r=t.safe;return delete t.async,delete t.safe,n&&r?new Or(t,Q):n?new Dr(t,Q):r?new Er(t,Q):new e(t,Q)}validate(e,t,n={}){return this._validate(e,t,n)}validateSafe(e,t,n){try{return this._validate(e,t,n??{}),{valid:!0}}catch(e){return{valid:!1,err:e}}}validateAsync(e,t,n){return new Promise((r,i)=>{try{this._validate(e,t,n||{},(e,t)=>e||t!==!0?i(e):r(t))}catch(e){i(e)}})}validateAsyncSafe(e,t,n){return new Promise(r=>{try{this._validate(e,t,n||{},(e,t)=>{r({valid:t,err:e})})}catch(e){r({valid:!1,err:e})}})}validateSchema(e){return this._validateSchema(e)}validateSchemaSafe(e){try{return this._validateSchema(e),{valid:!0}}catch(e){return{valid:!1,err:e}}}},Er=class extends ${constructor(e,t){super(e,t)}validate(e,t,n={}){try{return this._validate(e,t,n),{valid:!0}}catch(e){return{valid:!1,err:e}}}validateSchema(e){try{return this._validateSchema(e),{valid:!0}}catch(e){return{valid:!1,err:e}}}},Dr=class extends ${constructor(e,t){super(e,t)}validate(e,t,n={}){return new Promise((r,i)=>{try{this._validate(e,t,n,(e,t)=>e||t!==!0?i(e):r(t))}catch(e){i(e)}})}validateSchema(e){return this._validateSchema(e)}},Or=class extends ${constructor(e,t){super(e,t)}validate(e,t,n={}){return new Promise(r=>{try{this._validate(e,t,n,(e,t)=>{r({valid:t,err:e})})}catch(e){r({valid:!1,err:e})}})}validateSchema(e){try{return this._validateSchema(e),{valid:!0}}catch(e){return{valid:!1,err:e}}}};e.ZSchema=Tr,e.ZSchemaAsync=Dr,e.ZSchemaAsyncSafe=Or,e.ZSchemaSafe=Er});
2
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function d(e,t){if(e){if(typeof e==`string`)return f(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?f(e,t):void 0}}function f(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function p(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function m(e){if(Array.isArray(e))return e}var h={protocols:[`http`,`https`,`ftp`],require_tld:!0,require_protocol:!1,require_host:!0,require_port:!1,require_valid_protocol:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_protocol_relative_urls:!1,allow_fragments:!0,allow_query_components:!0,validate_length:!0,max_allowed_length:2084},g=/^\[([^\]]+)\](?::([0-9]+))?$/;function _(e,t){if((0,n.default)(e),!e||/[\s<>]/.test(e)||e.indexOf(`mailto:`)===0||(t=(0,s.default)(t,h),t.validate_length&&e.length>t.max_allowed_length)||!t.allow_fragments&&(0,i.default)(e,`#`)||!t.allow_query_components&&((0,i.default)(e,`?`)||(0,i.default)(e,`&`)))return!1;var c,u,d,f,p,m,_=e.split(`#`),v;e=_.shift(),_=e.split(`?`),e=_.shift();var y=e.match(/^([a-z][a-z0-9+\-.]*):/i),b=!1,x=function(n){return b=!0,c=n.toLowerCase(),t.require_valid_protocol&&t.protocols.indexOf(c)===-1?!1:e.substring(y[0].length)};if(y){var S=y[1],C=e.substring(y[0].length);if(C.slice(0,2)!==`//`){var w=C.indexOf(`/`),T=w===-1?C:C.substring(0,w),E=T.indexOf(`@`);if(E!==-1){var D=T.substring(0,E),O=/^[a-zA-Z0-9\-_.%:]*$/.test(D),k=/%[0-9a-fA-F]{2}/.test(D);if(O&&!k){if(t.require_protocol)return!1}else if(e=x(S),e===!1)return!1}else if(/^[0-9]/.test(C)){if(t.require_protocol)return!1}else if(e=x(S),e===!1)return!1}else if(e=x(S),e===!1)return!1}else if(t.require_protocol)return!1;if(e.slice(0,2)===`//`){if(!b&&!t.allow_protocol_relative_urls)return!1;e=e.slice(2)}if(e===``)return!1;if(_=e.split(`/`),e=_.shift(),e===``&&!t.require_host)return!0;if(_=e.split(`@`),_.length>1){if(t.disallow_auth||_[0]===``||(u=_.shift(),u.indexOf(`:`)>=0&&u.split(`:`).length>2))return!1;var A=l(u.split(`:`),2),j=A[0],ee=A[1];if(j===``&&ee===``)return!1}f=_.join(`@`),m=null,v=null;var M=f.match(g);if(M?(d=``,v=M[1],m=M[2]||null):(_=f.split(`:`),d=_.shift(),_.length&&(m=_.join(`:`))),m!==null&&m.length>0){if(p=parseInt(m,10),!/^[0-9]+$/.test(m)||p<=0||p>65535)return!1}else if(t.require_port)return!1;return t.host_whitelist?(0,r.default)(d,t.host_whitelist):d===``&&!t.require_host?!0:!(!(0,o.default)(d)&&!(0,a.default)(d,t)&&(!v||!(0,o.default)(v,6))||(d||=v,t.host_blacklist&&(0,r.default)(d,t.host_blacklist)))}t.exports=e.default,t.exports.default=e.default}))(),1),Qe=l(Ye(),1),L=l(Je(),1);let $e=e=>e%4==0&&(e%100!=0||e%400==0),et=(e,t)=>{switch(t){case 2:return $e(e)?29:28;case 4:case 6:case 9:case 11:return 30;default:return 31}},tt=(e,t,n)=>{if(t<1||t>12)return!1;let r=et(e,t);return n>=1&&n<=r};var nt=l(s(((e,t)=>{let n=2147483647,r=/^xn--/,i=/[^\0-\x7F]/,a=/[\x2E\u3002\uFF0E\uFF61]/g,o={overflow:`Overflow: input needs wider integers to process`,"not-basic":`Illegal input >= 0x80 (not a basic code point)`,"invalid-input":`Invalid input`},s=Math.floor,c=String.fromCharCode;function l(e){throw RangeError(o[e])}function u(e,t){let n=[],r=e.length;for(;r--;)n[r]=t(e[r]);return n}function d(e,t){let n=e.split(`@`),r=``;n.length>1&&(r=n[0]+`@`,e=n[1]),e=e.replace(a,`.`);let i=u(e.split(`.`),t).join(`.`);return r+i}function f(e){let t=[],n=0,r=e.length;for(;n<r;){let i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){let r=e.charCodeAt(n++);(r&64512)==56320?t.push(((i&1023)<<10)+(r&1023)+65536):(t.push(i),n--)}else t.push(i)}return t}let p=e=>String.fromCodePoint(...e),m=function(e){return e>=48&&e<58?26+(e-48):e>=65&&e<91?e-65:e>=97&&e<123?e-97:36},h=function(e,t){return e+22+75*(e<26)-((t!=0)<<5)},g=function(e,t,n){let r=0;for(e=n?s(e/700):e>>1,e+=s(e/t);e>455;r+=36)e=s(e/35);return s(r+36*e/(e+38))},_=function(e){let t=[],r=e.length,i=0,a=128,o=72,c=e.lastIndexOf(`-`);c<0&&(c=0);for(let n=0;n<c;++n)e.charCodeAt(n)>=128&&l(`not-basic`),t.push(e.charCodeAt(n));for(let u=c>0?c+1:0;u<r;){let c=i;for(let t=1,a=36;;a+=36){u>=r&&l(`invalid-input`);let c=m(e.charCodeAt(u++));c>=36&&l(`invalid-input`),c>s((n-i)/t)&&l(`overflow`),i+=c*t;let d=a<=o?1:a>=o+26?26:a-o;if(c<d)break;let f=36-d;t>s(n/f)&&l(`overflow`),t*=f}let d=t.length+1;o=g(i-c,d,c==0),s(i/d)>n-a&&l(`overflow`),a+=s(i/d),i%=d,t.splice(i++,0,a)}return String.fromCodePoint(...t)},v=function(e){let t=[];e=f(e);let r=e.length,i=128,a=0,o=72;for(let n of e)n<128&&t.push(c(n));let u=t.length,d=u;for(u&&t.push(`-`);d<r;){let r=n;for(let t of e)t>=i&&t<r&&(r=t);let f=d+1;r-i>s((n-a)/f)&&l(`overflow`),a+=(r-i)*f,i=r;for(let r of e)if(r<i&&++a>n&&l(`overflow`),r===i){let e=a;for(let n=36;;n+=36){let r=n<=o?1:n>=o+26?26:n-o;if(e<r)break;let i=e-r,a=36-r;t.push(c(h(r+i%a,0))),e=s(i/a)}t.push(c(h(e,0))),o=g(a,f,d===u),a=0,++d}++a,++i}return t.join(``)};t.exports={version:`2.3.1`,ucs2:{decode:f,encode:p},decode:_,encode:v,toASCII:function(e){return d(e,function(e){return i.test(e)?`xn--`+v(e):e})},toUnicode:function(e){return d(e,function(e){return r.test(e)?_(e.slice(4).toLowerCase()):e})}}}))(),1);let rt=/[\u3002\uff0e\uff61]/g,it=/[\u3002\uff0e\uff61]/,at=e=>{if(e.length===0||e.length>255||e.startsWith(`.`)||e.endsWith(`.`))return null;let t=e.split(`.`);return t.some(e=>e.length===0||e.length>63)?null:t},ot=e=>/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i.test(e),st=e=>/\p{Script=Greek}/u.test(e),ct=e=>/\p{Script=Hebrew}/u.test(e),lt=e=>/[\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Han}]/u.test(e),ut=e=>{if(!/^xn--/i.test(e))return e;try{return nt.default.toUnicode(e.toLowerCase())}catch{return null}},dt=e=>{if(e.startsWith(`-`)||e.endsWith(`-`)||e.length>=4&&e[2]===`-`&&e[3]===`-`&&!/^xn--/i.test(e)||/^\p{M}/u.test(e)||/[\u302e\u302f\u0640\u07fa]/u.test(e))return!1;for(let t=0;t<e.length;t++){let n=e[t];if(n===`·`&&(t===0||t===e.length-1||e[t-1]!==`l`||e[t+1]!==`l`)||n===`͵`&&(t===e.length-1||!st(e[t+1]))||(n===`׳`||n===`״`)&&(t===0||!ct(e[t-1]))||n===`‍`&&(t===0||e[t-1]!==`्`))return!1}if(e.includes(`・`)&&!lt(e.replace(/\u30fb/g,``)))return!1;let t=/[\u0660-\u0669]/.test(e),n=/[\u06f0-\u06f9]/.test(e);return!(t&&n)},ft=e=>{if(it.test(e)||/[^\x00-\x7F]/.test(e)||L.default.default(e,4))return!1;let t=at(e);if(t===null)return!1;for(let e of t){if(!ot(e))return!1;if(/^xn--/i.test(e)){let t=ut(e);if(t===null||!dt(t))return!1}}return!0},pt=e=>{let t=at(e.replace(rt,`.`));if(t===null)return!1;for(let e of t){let t=ut(e);if(t===null||!dt(t))return!1}return!0},mt=(e,t,n,r,i)=>{let a=e*60+t,o=r*60+i,s=((n===`+`?a-o:a+o)%1440+1440)%1440;return{hour:Math.floor(s/60),minute:s%60}},ht=/^([0-9]{2}):([0-9]{2}):([0-9]{2})(\.[0-9]+)?(z|([+-][0-9]{2}:[0-9]{2}))$/i,gt=e=>{let t=ht.exec(e);if(t===null)return null;let n=parseInt(t[1],10),r=parseInt(t[2],10),i=parseInt(t[3],10);if(n>23||r>59||i>60)return null;let a=n,o=r;if(t[5].toLowerCase()!==`z`){let e=/^([+-])([0-9]{2}):([0-9]{2})$/.exec(t[5]);if(e===null)return null;let i=e[1],s=parseInt(e[2],10),c=parseInt(e[3],10);if(s>23||c>59)return null;let l=mt(n,r,i,s,c);a=l.hour,o=l.minute}return i===60&&(a!==23||o!==59)?null:{hour:n,minute:r,second:i,utcHour:a,utcMinute:o}},_t=e=>{if(typeof e!=`string`)return!0;let t=/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/.exec(e);return t===null?!1:tt(parseInt(t[1],10),parseInt(t[2],10),parseInt(t[3],10))},vt=e=>{if(typeof e!=`string`)return!0;let t=e.toLowerCase().split(`t`);if(t.length!==2)return!1;let n=t[0],r=t[1],i=/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/.exec(n);return i===null||!tt(parseInt(i[1],10),parseInt(i[2],10),parseInt(i[3],10))?!1:gt(r)!==null},yt=e=>{if(typeof e!=`string`||Qe.default.default(e,{require_tld:!0,allow_ip_domain:!0}))return!0;let t=/^(.+)@\[IPv6:([^\]]+)\]$/i.exec(e);if(!t)return!1;let n=t[1],r=t[2];return L.default.default(r,6)?Qe.default.default(`${n}@example.com`,{require_tld:!0}):!1},bt=e=>typeof e==`string`?ft(e):!0,xt=e=>typeof e==`string`?L.default.default(e,4):!0,St=e=>typeof e==`string`?e.includes(`%`)?!1:L.default.default(e,6):!0,Ct=e=>{if(typeof e!=`string`)return!0;let t=new Set([`a`]);for(let n=0;n<e.length;n++){if(e[n]!==`\\`)continue;if(n++,n>=e.length)return!1;let r=e[n];if(t.has(r))return!1}try{return RegExp(e),!0}catch{return!1}},wt=e=>{if(typeof e!=`string`)return!0;if(!/^P[\x00-\x7F]*$/.test(e)||!e.startsWith(`P`))return!1;let t=e.slice(1);if(t.length===0)return!1;if(t.includes(`W`))return/^\d+W$/.test(t);let n=t.split(`T`);if(n.length>2)return!1;let r=n[0],i=n.length===2?n[1]:void 0;if(r.length>0&&!/^(?:\d+Y(?:\d+M(?:\d+D)?)?|\d+M(?:\d+D)?|\d+D)$/.test(r))return!1;let a=/\d+[YMD]/.test(r),o=!1;return i!==void 0&&(i.length===0||!/^(?:\d+H(?:\d+M(?:\d+S)?)?|\d+M(?:\d+S)?|\d+S)$/.test(i)||(o=/\d+[HMS]/.test(i),!o))?!1:a||o},Tt=e=>typeof e==`string`?/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(e):!0,Et=e=>typeof e!=`string`||Ze.default.default(e),Dt=e=>{for(let t=0;t<e.length;t++)if(e[t]===`%`&&(t+2>=e.length||!/[0-9a-fA-F]/.test(e[t+1])||!/[0-9a-fA-F]/.test(e[t+2])))return!1;return!0},Ot=function(e){if(typeof e!=`string`)return!0;if(/[^\x00-\x7F]/.test(e)||!Dt(e))return!1;let t=e.match(/^([a-zA-Z][a-zA-Z0-9+.-]*):\/\/([^/?#]*)/);if(t){let e=t[2],n=e.indexOf(`@`);if(n>0){let t=e.substring(0,n);if(t.includes(`[`)||t.includes(`]`))return!1}let r=n>=0?e.substring(n+1):e;if(r.startsWith(`[`)){let e=r.indexOf(`]`);e>=0&&(r=r.substring(e+1))}let i=r.lastIndexOf(`:`);if(i>=0){let e=r.substring(i+1);if(e.length>0&&!/^\d+$/.test(e))return!1}}return/^[a-zA-Z][a-zA-Z0-9+.-]*:[^"\\<>^{}^`| ]*$/.test(e)},kt=e=>typeof e==`string`?/[^\x00-\x7F]/.test(e)?!1:/^([a-zA-Z][a-zA-Z0-9+.-]*:)?[^"\\<>^{}^`| ]*$/.test(e):!0,At=e=>{if(typeof e!=`string`)return!0;if(!/^([a-zA-Z][a-zA-Z0-9+.-]*:)?[^"\\<>^`| ]*$/.test(e))return!1;let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(r===`{`){if(t)return!1;t=!0}else if(r===`}`){if(!t)return!1;t=!1}}return!t},jt=e=>{for(let t=0;t<e.length;t++)if(e[t]===`~`){let n=e[t+1];if(n!==`0`&&n!==`1`)return!1;t++}return!0},Mt=e=>{if(typeof e!=`string`||e===``)return!0;if(!/^(?:\/[^/]*)+$/.test(e))return!1;let t=e.split(`/`).slice(1);for(let e of t)if(!jt(e))return!1;return!0},Nt=e=>{if(typeof e!=`string`)return!0;let t=e.match(/^(0|[1-9]\d*)(.*)$/);if(!t)return!1;let n=t[2];if(n===``||n===`#`)return!0;if(!n.startsWith(`/`)||!/^(?:\/[^/]*)+$/.test(n))return!1;let r=n.split(`/`).slice(1);for(let e of r)if(!jt(e))return!1;return!0},Pt=e=>typeof e==`string`?gt(e)!==null:!0,Ft=e=>typeof e==`string`?/^[^\s@]+@[^\s@]+$/.test(e):!0,It=e=>typeof e==`string`?pt(e):!0,Lt=e=>{if(typeof e!=`string`)return!0;if(!/^[a-zA-Z][a-zA-Z0-9+.-]*:[^"\\<>^{}^`| ]*$/u.test(e))return!1;try{return new URL(e),!0}catch{return!1}},Rt=e=>typeof e==`string`?/^([a-zA-Z][a-zA-Z0-9+.-]*:)?[^"\\<>^{}^`| ]*$/u.test(e):!0,zt={date:_t,"date-time":vt,email:yt,hostname:bt,"host-name":bt,ipv4:xt,ipv6:St,regex:Ct,uri:Ot,"strict-uri":Et,"uri-reference":kt,"uri-template":At,"json-pointer":Mt,"relative-json-pointer":Nt,time:Pt,"idn-email":Ft,"idn-hostname":It,iri:Lt,"iri-reference":Rt,duration:wt,uuid:Tt},R={};function Bt(e){return{...zt,...e?.strictUris?{uri:Et}:{},...R,...e?.customFormats||{}}}function Vt(e,t){R[e]=t}function Ht(e){delete R[e]}function Ut(e){let t={...zt,...R,...e};return k(t).filter(e=>t[e]!=null)}function Wt(e,t){if(t){let n=t[e];if(n===null)return!1;if(n!=null)return!0}return e in R?R[e]!=null:e in zt}function Gt(){return k(R)}var Kt=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0})})),qt=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.types=void 0,(function(e){e[e.ROOT=0]=`ROOT`,e[e.GROUP=1]=`GROUP`,e[e.POSITION=2]=`POSITION`,e[e.SET=3]=`SET`,e[e.RANGE=4]=`RANGE`,e[e.REPETITION=5]=`REPETITION`,e[e.REFERENCE=6]=`REFERENCE`,e[e.CHAR=7]=`CHAR`})(e.types||={})})),Jt=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0})})),z=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__exportStar||function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(e,`__esModule`,{value:!0}),n(Kt(),e),n(qt(),e),n(Jt(),e)})),B=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.anyChar=e.notWhitespace=e.whitespace=e.notInts=e.ints=e.notWords=e.words=void 0;let t=z(),n=()=>[{type:t.types.RANGE,from:48,to:57}],r=()=>[{type:t.types.CHAR,value:95},{type:t.types.RANGE,from:97,to:122},{type:t.types.RANGE,from:65,to:90},{type:t.types.RANGE,from:48,to:57}],i=()=>[{type:t.types.CHAR,value:9},{type:t.types.CHAR,value:10},{type:t.types.CHAR,value:11},{type:t.types.CHAR,value:12},{type:t.types.CHAR,value:13},{type:t.types.CHAR,value:32},{type:t.types.CHAR,value:160},{type:t.types.CHAR,value:5760},{type:t.types.RANGE,from:8192,to:8202},{type:t.types.CHAR,value:8232},{type:t.types.CHAR,value:8233},{type:t.types.CHAR,value:8239},{type:t.types.CHAR,value:8287},{type:t.types.CHAR,value:12288},{type:t.types.CHAR,value:65279}],a=()=>[{type:t.types.CHAR,value:10},{type:t.types.CHAR,value:13},{type:t.types.CHAR,value:8232},{type:t.types.CHAR,value:8233}];e.words=()=>({type:t.types.SET,set:r(),not:!1}),e.notWords=()=>({type:t.types.SET,set:r(),not:!0}),e.ints=()=>({type:t.types.SET,set:n(),not:!1}),e.notInts=()=>({type:t.types.SET,set:n(),not:!0}),e.whitespace=()=>({type:t.types.SET,set:i(),not:!1}),e.notWhitespace=()=>({type:t.types.SET,set:i(),not:!0}),e.anyChar=()=>({type:t.types.SET,set:a(),not:!0})})),Yt=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.tokenizeClass=e.strToChars=void 0;let i=z(),a=r(B());e.strToChars=e=>e.replace(/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g,(e,t,n,r,i,a,o)=>{if(n)return e;let s=t?8:r?parseInt(r,16):i?parseInt(i,16):a?`@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?`.indexOf(a):{0:0,t:9,n:10,v:11,f:12,r:13}[o],c=String.fromCharCode(s);return/[[\]{}^$.|?*+()]/.test(c)?`\\${c}`:c}),e.tokenizeClass=(e,t)=>{let n=[],r,o,s=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(r=s.exec(e))!==null;){let e=(r[1]&&a.words())??(r[2]&&a.ints())??(r[3]&&a.whitespace())??(r[4]&&a.notWords())??(r[5]&&a.notInts())??(r[6]&&a.notWhitespace())??(r[7]&&{type:i.types.RANGE,from:(r[8]||r[9]).charCodeAt(0),to:(o=r[10]).charCodeAt(o.length-1)})??((o=r[16])&&{type:i.types.CHAR,value:o.charCodeAt(0)});if(e)n.push(e);else return[n,s.lastIndex]}throw SyntaxError(`Invalid regular expression: /${t}/: Unterminated character class`)}})),Xt=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.tokenizer=void 0;let i=r(Yt()),a=z(),o=r(B()),s=/^[a-zA-Z_$]$/i,c=/^[a-zA-Z0-9_$]$/i,l=/\d/;e.tokenizer=e=>{let t=0,n,r={type:a.types.ROOT,stack:[]},d=r,f=r.stack,p=[],m=[],h=0,g=t=>{throw SyntaxError(`Invalid regular expression: /${e}/: Nothing to repeat at column ${t-1}`)},_=i.strToChars(e);for(;t<_.length;)switch(n=_[t++]){case`\\`:if(t===_.length)throw SyntaxError(`Invalid regular expression: /${e}/: \\ at end of pattern`);switch(n=_[t++]){case`b`:f.push({type:a.types.POSITION,value:`b`});break;case`B`:f.push({type:a.types.POSITION,value:`B`});break;case`w`:f.push(o.words());break;case`W`:f.push(o.notWords());break;case`d`:f.push(o.ints());break;case`D`:f.push(o.notInts());break;case`s`:f.push(o.whitespace());break;case`S`:f.push(o.notWhitespace());break;default:if(l.test(n)){let e=n;for(;t<_.length&&l.test(_[t]);)e+=_[t++];let r=parseInt(e,10),i={type:a.types.REFERENCE,value:r};f.push(i),m.push({reference:i,stack:f,index:f.length-1})}else f.push({type:a.types.CHAR,value:n.charCodeAt(0)})}break;case`^`:f.push({type:a.types.POSITION,value:`^`});break;case`$`:f.push({type:a.types.POSITION,value:`$`});break;case`[`:{let n;_[t]===`^`?(n=!0,t++):n=!1;let r=i.tokenizeClass(_.slice(t),e);t+=r[1],f.push({type:a.types.SET,set:r[0],not:n});break}case`.`:f.push(o.anyChar());break;case`(`:{let r={type:a.types.GROUP,stack:[],remember:!0};if(_[t]===`?`)if(n=_[t+1],t+=2,n===`=`)r.followedBy=!0,r.remember=!1;else if(n===`!`)r.notFollowedBy=!0,r.remember=!1;else if(n===`<`){let n=``;if(s.test(_[t]))n+=_[t],t++;else throw SyntaxError(`Invalid regular expression: /${e}/: Invalid capture group name, character '${_[t]}' after '<' at column ${t+1}`);for(;t<_.length&&c.test(_[t]);)n+=_[t],t++;if(!n)throw SyntaxError(`Invalid regular expression: /${e}/: Invalid capture group name, character '${_[t]}' after '<' at column ${t+1}`);if(_[t]!==`>`)throw SyntaxError(`Invalid regular expression: /${e}/: Unclosed capture group name, expected '>', found '${_[t]}' at column ${t+1}`);r.name=n,t++}else if(n===`:`)r.remember=!1;else throw SyntaxError(`Invalid regular expression: /${e}/: Invalid group, character '${n}' after '?' at column ${t-1}`);else h+=1;f.push(r),p.push(d),d=r,f=r.stack;break}case`)`:if(p.length===0)throw SyntaxError(`Invalid regular expression: /${e}/: Unmatched ) at column ${t-1}`);d=p.pop(),f=d.options?d.options[d.options.length-1]:d.stack;break;case`|`:{d.options||(d.options=[d.stack],delete d.stack);let e=[];d.options.push(e),f=e;break}case`{`:{let e=/^(\d+)(,(\d+)?)?\}/.exec(_.slice(t)),n,r;e===null?f.push({type:a.types.CHAR,value:123}):(f.length===0&&g(t),n=parseInt(e[1],10),r=e[2]?e[3]?parseInt(e[3],10):1/0:n,t+=e[0].length,f.push({type:a.types.REPETITION,min:n,max:r,value:f.pop()}));break}case`?`:f.length===0&&g(t),f.push({type:a.types.REPETITION,min:0,max:1,value:f.pop()});break;case`+`:f.length===0&&g(t),f.push({type:a.types.REPETITION,min:1,max:1/0,value:f.pop()});break;case`*`:f.length===0&&g(t),f.push({type:a.types.REPETITION,min:0,max:1/0,value:f.pop()});break;default:f.push({type:a.types.CHAR,value:n.charCodeAt(0)})}if(p.length!==0)throw SyntaxError(`Invalid regular expression: /${e}/: Unterminated group`);return u(m,h),r};function u(e,t){for(let n of e.reverse())if(t<n.reference.value){n.reference.type=a.types.CHAR;let e=n.reference.value.toString();if(n.reference.value=parseInt(e,8),!/^[0-7]+$/.test(e)){let t=0;for(;e[t]!==`8`&&e[t]!==`9`;)t+=1;if(t===0?(n.reference.value=e.charCodeAt(0),t+=1):n.reference.value=parseInt(e.slice(0,t),8),e.length>t){let r=n.stack.splice(n.index+1);for(let r of e.slice(t))n.stack.push({type:a.types.CHAR,value:r.charCodeAt(0)});n.stack.push(...r)}}}}})),Zt=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.NOTANYCHAR=e.WHITESPACE=e.WORDS=e.INTS=void 0;let i=r(B()),a=z();function o(e){let t={},n=0;for(let r of e)r.type===a.types.CHAR&&(t[r.value]=!0),r.type===a.types.RANGE&&(t[`${r.from}-${r.to}`]=!0),n+=1;return{lookup:()=>Object.assign({},t),len:n}}e.INTS=o(i.ints().set),e.WORDS=o(i.words().set),e.WHITESPACE=o(i.whitespace().set),e.NOTANYCHAR=o(i.anyChar().set)})),Qt=s((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.writeSetTokens=e.setChar=void 0;let i=z(),a=r(Zt());function o(e){return e===94?`\\^`:e===92?`\\\\`:e===93?`\\]`:e===45?`\\-`:String.fromCharCode(e)}e.setChar=o;function s(e,{lookup:t,len:n}){if(n!==e.length)return!1;let r=t();for(let t of e){if(t.type===i.types.SET)return!1;let e=t.type===i.types.CHAR?t.value:`${t.from}-${t.to}`;if(r[e])r[e]=!1;else return!1}return!0}function c(e,t=!1){if(s(e.set,a.INTS))return e.not?`\\D`:`\\d`;if(s(e.set,a.WORDS))return e.not?`\\W`:`\\w`;if(e.not&&s(e.set,a.NOTANYCHAR))return`.`;if(s(e.set,a.WHITESPACE))return e.not?`\\S`:`\\s`;let n=``;for(let t=0;t<e.set.length;t++){let r=e.set[t];n+=l(r)}let r=`${e.not?`^`:``}${n}`;return t?r:`[${r}]`}e.writeSetTokens=c;function l(e){return e.type===i.types.CHAR?o(e.value):e.type===i.types.RANGE?`${o(e.from)}-${o(e.to)}`:c(e,!0)}})),$t=s((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.reconstruct=void 0;let t=z(),n=Qt(),r=t=>t.map(e.reconstruct).join(``),i=e=>{if(`options`in e)return e.options.map(r).join(`|`);if(`stack`in e)return r(e.stack);throw Error(`options or stack must be Root or Group token`)};e.reconstruct=r=>{switch(r.type){case t.types.ROOT:return i(r);case t.types.CHAR:{let e=String.fromCharCode(r.value);return(/[[\\{}$^.|?*+()]/.test(e)?`\\`:``)+e}case t.types.POSITION:return r.value===`^`||r.value===`$`?r.value:`\\${r.value}`;case t.types.REFERENCE:return`\\${r.value}`;case t.types.SET:return n.writeSetTokens(r);case t.types.GROUP:return`(${r.name?`?<${r.name}>`:r.remember?``:r.followedBy?`?=`:r.notFollowedBy?`?!`:`?:`}${i(r)})`;case t.types.REPETITION:{let{min:t,max:n}=r,i;return i=t===0&&n===1?`?`:t===1&&n===1/0?`+`:t===0&&n===1/0?`*`:n===1/0?`{${t},}`:t===n?`{${t}}`:`{${t},${n}}`,`${e.reconstruct(r.value)}${i}`}case t.types.RANGE:return`${n.setChar(r.from)}-${n.setChar(r.to)}`;default:throw Error(`Invalid token type ${r}`)}}})),en=s(((e,t)=>{var n=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),r=e&&e.__exportStar||function(e,t){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(t,r)&&n(t,e,r)};Object.defineProperty(e,`__esModule`,{value:!0}),e.types=void 0;let i=z();Object.defineProperty(e,`types`,{enumerable:!0,get:function(){return i.types}}),r(Xt(),e),r($t(),e);let a=Xt(),o=$t();r(z(),e),e.default=a.tokenizer,t.exports=a.tokenizer,t.exports.types=i.types,t.exports.reconstruct=o.reconstruct})),tn=l(s(((e,t)=>{let n=en(),{types:r}=en();function i(e,t,n){let a,o,s;if(e.type===r.REPETITION&&(n++,t.reps++,n>1||t.reps>t.limit))return!1;if(e.options){for(a=0,s=e.options.length;a<s;a++)if(o=i({stack:e.options[a]},t,n),!o)return!1}let c=e.stack||e.value?.stack;if(!c)return!0;for(a=0,s=c.length;a<s;a++)if(o=i(c[a],t,n),!o)return!1;return!0}function a(e,t){let r={reps:0,limit:t?.limit??25};o(e)?e=e.source:typeof e!=`string`&&(e=String(e));try{return i(n(e),r,0)}catch{return!1}}function o(e){return Object.prototype.toString.call(e)===`[object RegExp]`}t.exports=a,t.exports.default=a,t.exports.safeRegex=a}))(),1);function V(e){if(e.length>1e4)return{ok:!1,error:{pattern:e,message:`Pattern length ${e.length} exceeds maximum allowed length of 10000`}};if(!(0,tn.default)(e))return{ok:!1,error:{pattern:e,message:`Pattern rejected as potentially unsafe (ReDoS)`}};if(/\\[pP]{/.test(e)||/[\u{10000}-\u{10FFFF}]/u.test(e)||/\\uD[89AB][0-9A-Fa-f]{2}\\uD[CDEF][0-9A-Fa-f]{2}/.test(e))try{return{ok:!0,value:new RegExp(e,`u`)}}catch(t){return{ok:!1,error:{pattern:e,message:t&&t.message?t.message:`Invalid regular expression`}}}else try{return{ok:!0,value:new RegExp(e)}}catch(t){return{ok:!1,error:{pattern:e,message:t&&t.message?t.message:`Invalid regular expression`}}}}let H=(e,t,n)=>{let r=e.length;if(r<=1)return!0;let i=!0;for(let t=0;t<r;t++){let n=e[t];if(typeof n==`object`&&n){i=!1;break}}if(i){let n=new Set;for(let i=0;i<r;i++){let r=e[i],a=typeof r+`:`+String(r);if(n.has(a)){if(t)for(let n=0;n<i;n++){let a=e[n];if(typeof a==typeof r&&a===r){t.push(n,i);break}}return!1}n.add(a)}return!0}for(let i=0;i<r;i++)for(let a=i+1;a<r;a++)if(D(e[i],e[a],{maxDepth:n}))return t&&t.push(i,a),!1;return!0},nn=(e,t)=>{let n=new Set(t),r=[],i=e.length;for(;i--;)n.has(e[i])||r.push(e[i]);return r},U=function(e,t){return e&&Array.isArray(e.includeErrors)&&e.includeErrors.length>0&&!t.some(function(t){return e.includeErrors.includes(t)})},rn=(e,t)=>typeof e.$schema==`string`?!/draft-04|draft-06|draft-07/.test(e.$schema):!(t===`draft-04`||t===`draft-06`||t===`draft-07`),an=`https://json-schema.org/draft/2019-09/vocab/validation`,on=`https://json-schema.org/draft/2020-12/vocab/validation`,sn=`https://json-schema.org/draft/2019-09/vocab/format`,cn=`https://json-schema.org/draft/2020-12/vocab/format-assertion`,ln=new Set([`type`,`multipleOf`,`maximum`,`exclusiveMaximum`,`minimum`,`exclusiveMinimum`,`maxLength`,`minLength`,`pattern`,`maxItems`,`minItems`,`uniqueItems`,`maxContains`,`minContains`,`maxProperties`,`minProperties`,`required`,`dependentRequired`,`enum`,`const`,`contentEncoding`,`contentMediaType`]),un=(e,t,n)=>{if(n!==`draft2019-09`&&n!==`draft2020-12`)return!0;let r=e.__$schemaResolved,i=t.rootSchema&&typeof t.rootSchema!=`boolean`?t.rootSchema.__$schemaResolved:void 0,a=r||i;if(!a||typeof a!=`object`||!h(a.$vocabulary))return!0;let o=a.$vocabulary;return Object.hasOwn(o,an)||Object.hasOwn(o,on)?o[an]===!0||o[on]===!0:!1},dn=(e,t,n)=>{if(n!==`draft2019-09`&&n!==`draft2020-12`)return!0;let r=e.__$schemaResolved,i=t.rootSchema&&typeof t.rootSchema!=`boolean`?t.rootSchema.__$schemaResolved:void 0,a=r||i;if(!a||typeof a!=`object`||!h(a.$vocabulary))return!1;let o=a.$vocabulary;return Object.hasOwn(o,cn)?o[cn]===!0:Object.hasOwn(o,sn)?o[sn]===!0:!1};function W(e,t,n,r){let i=e.__validationResultCache.get(t);i||(i=new Map,e.__validationResultCache.set(t,i)),i.set(n,r)}function G(e,t,n){return e.__validationResultCache.get(t)?.get(n)}function K(e,t,n){let r=e.asyncTasks.length;for(let n of t)e.asyncTasks.push(...n.asyncTasks);e.asyncTasks.length>r?e.addAsyncTaskWithPath(e=>{setTimeout(()=>e(null),0)},[],()=>{n()}):n()}function fn(e,t,n){U(this.validateOptions,[`ARRAY_ADDITIONAL_ITEMS`])||Array.isArray(n)&&t.additionalItems===!1&&Array.isArray(t.items)&&n.length>t.items.length&&e.addError(`ARRAY_ADDITIONAL_ITEMS`,void 0,void 0,t,`additionalItems`)}function pn(){}function mn(){}function hn(e,t,n){U(this.validateOptions,[`ARRAY_LENGTH_LONG`])||Array.isArray(n)&&n.length>t.maxItems&&e.addError(`ARRAY_LENGTH_LONG`,[n.length,t.maxItems],void 0,t,`maxItems`)}function gn(e,t,n){U(this.validateOptions,[`ARRAY_LENGTH_SHORT`])||Array.isArray(n)&&n.length<t.minItems&&e.addError(`ARRAY_LENGTH_SHORT`,[n.length,t.minItems],void 0,t,`minItems`)}function _n(e,t,n){if(!U(this.validateOptions,[`ARRAY_UNIQUE`])&&Array.isArray(n)&&t.uniqueItems===!0){let r=[];H(n,r,this.options.maxRecursionDepth)===!1&&e.addError(`ARRAY_UNIQUE`,r,void 0,t,`uniqueItems`)}}function vn(e,t,n){if(U(this.validateOptions,[`CONTAINS`])||!Array.isArray(n))return;let r=t.contains;if(r===void 0)return;let i=e.constructor,a=[];for(let t=0;t<n.length;t++){let o=new i(e);a.push(o),this._jsonValidate(o,r,n[t]),W(e,r,n[t],o.errors.length===0)}K(e,a,()=>{let n=0;for(let e of a)e.errors.length===0&&(n+=1);let r=this.options.version===`draft2019-09`||this.options.version===`draft2020-12`,i=r&&typeof t.minContains==`number`?t.minContains??1:1,o=r&&typeof t.maxContains==`number`?t.maxContains:void 0;(!(n>=i)||!(o===void 0||n<=o))&&e.addError(`CONTAINS`,void 0,a,t,void 0)})}function yn(){}function bn(){}function xn(e,t,n){for(let r=0;r<t.allOf.length;r++){let i=this._jsonValidate(e,t.allOf[r],n);if(this.options.breakOnFirstError&&i===!1)break}}function Sn(e,t,n){let r=[];for(let i=0;i<t.anyOf.length;i++){let a=new M(e);r.push(a),this._jsonValidate(a,t.anyOf[i],n),W(e,t.anyOf[i],n,a.errors.length===0)}K(e,r,()=>{let n=!1;for(let e of r)if(e.errors.length===0){n=!0;break}n===!1&&e.addError(`ANY_OF_MISSING`,void 0,r,t,`anyOf`)})}function Cn(e,t,n){let r=[];for(let i=0;i<t.oneOf.length;i++){let a=new M(e);r.push(a),this._jsonValidate(a,t.oneOf[i],n),W(e,t.oneOf[i],n,a.errors.length===0)}K(e,r,()=>{let n=0;for(let e of r)e.errors.length===0&&n++;n===0?e.addError(`ONE_OF_MISSING`,void 0,r,t,`oneOf`):n>1&&e.addError(`ONE_OF_MULTIPLE`,void 0,void 0,t,`oneOf`)})}function wn(e,t,n){let r=new M(e);this._jsonValidate(r,t.not,n)===!0&&e.addError(`NOT_PASSED`,void 0,void 0,t,`not`)}function Tn(e,t,n){if(this.options.version===`draft-04`||this.options.version===`draft-06`)return;let r=t.if,i=t.then,a=t.else;if(r===void 0||i===void 0&&a===void 0)return;let o=new M(e);this._jsonValidate(o,r,n),W(e,r,n,o.errors.length===0);let s=o.errors.length===0?i:a;s!==void 0&&this._jsonValidate(e,s,n)}function En(){}function Dn(){}function On(e,t,n){if(U(this.validateOptions,[`MULTIPLE_OF`])||typeof n!=`number`)return;let r=n/t.multipleOf;(!Number.isFinite(r)||Math.abs(r-Math.round(r))>=1e-10)&&e.addError(`MULTIPLE_OF`,[n,t.multipleOf],void 0,t,`multipleOf`)}function kn(e,t,n){U(this.validateOptions,[`MAXIMUM`,`MAXIMUM_EXCLUSIVE`])||typeof n==`number`&&(t.exclusiveMaximum===!0?n>=t.maximum&&e.addError(`MAXIMUM_EXCLUSIVE`,[n,t.maximum],void 0,t,`maximum`):n>t.maximum&&e.addError(`MAXIMUM`,[n,t.maximum],void 0,t,`maximum`))}function An(e,t,n){if(typeof t.exclusiveMaximum==`number`){if(U(this.validateOptions,[`MAXIMUM_EXCLUSIVE`])||typeof n!=`number`)return;n>=t.exclusiveMaximum&&e.addError(`MAXIMUM_EXCLUSIVE`,[n,t.exclusiveMaximum],void 0,t,`exclusiveMaximum`)}}function jn(e,t,n){U(this.validateOptions,[`MINIMUM`,`MINIMUM_EXCLUSIVE`])||typeof n==`number`&&(t.exclusiveMinimum===!0?n<=t.minimum&&e.addError(`MINIMUM_EXCLUSIVE`,[n,t.minimum],void 0,t,`minimum`):n<t.minimum&&e.addError(`MINIMUM`,[n,t.minimum],void 0,t,`minimum`))}function Mn(e,t,n){if(typeof t.exclusiveMinimum==`number`){if(U(this.validateOptions,[`MINIMUM_EXCLUSIVE`])||typeof n!=`number`)return;n<=t.exclusiveMinimum&&e.addError(`MINIMUM_EXCLUSIVE`,[n,t.exclusiveMinimum],void 0,t,`exclusiveMinimum`)}}function Nn(e,t,n){if(U(this.validateOptions,[`OBJECT_PROPERTIES_MAXIMUM`])||!h(n))return;let r=Object.keys(n).length;r>t.maxProperties&&e.addError(`OBJECT_PROPERTIES_MAXIMUM`,[r,t.maxProperties],void 0,t,`maxProperties`)}function Pn(e,t,n){if(U(this.validateOptions,[`OBJECT_PROPERTIES_MINIMUM`])||!h(n))return;let r=Object.keys(n).length;r<t.minProperties&&e.addError(`OBJECT_PROPERTIES_MINIMUM`,[r,t.minProperties],void 0,t,`minProperties`)}function Fn(e,t,n){if(U(this.validateOptions,[`OBJECT_MISSING_REQUIRED_PROPERTY`])||!h(n))return;let r=t.required.length;for(let i=0;i<r;i++){let r=t.required[i];Object.hasOwn(n,r)||e.addError(`OBJECT_MISSING_REQUIRED_PROPERTY`,[r],void 0,t,`required`)}}function In(e,t,n){if(t.properties===void 0&&t.patternProperties===void 0)return q.call(this,e,t,n)}function Ln(e,t,n){if(t.properties===void 0)return q.call(this,e,t,n)}function q(e,t,n){if(U(this.validateOptions,[`OBJECT_ADDITIONAL_PROPERTIES`])||!h(n))return;let r=t.properties===void 0?{}:t.properties,i=t.patternProperties===void 0?{}:t.patternProperties;if(t.additionalProperties===!1){let a=Object.keys(n),o=Object.keys(r),s=Object.keys(i);a=nn(a,o);for(let e of s){let t=V(e);if(!t.ok)continue;let n=t.value;for(let e=a.length-1;e>=0;e--)n.test(a[e])===!0&&a.splice(e,1)}if(a.length>0){if(Array.isArray(this.options.assumeAdditional))for(let e of this.options.assumeAdditional){let t=a.indexOf(e);t!==-1&&a.splice(t,1)}if(a.length>0)for(let n of a)e.addError(`OBJECT_ADDITIONAL_PROPERTIES`,[n],void 0,t,`properties`)}}}function Rn(e,t,n){if(U(this.validateOptions,[`OBJECT_DEPENDENCY_KEY`])||!h(n))return;let r=Object.keys(t.dependencies);for(let i of r)if(Object.hasOwn(n,i)){let r=t.dependencies[i];if(Array.isArray(r))for(let a of r)Object.hasOwn(n,a)||e.addError(`OBJECT_DEPENDENCY_KEY`,[a,i],void 0,t,`dependencies`);else this._jsonValidate(e,r,n)}}function zn(e,t,n){if(!rn(t,this.options.version)||!h(n)||!h(t.dependentSchemas))return;let r=Object.keys(t.dependentSchemas);for(let i of r)if(Object.hasOwn(n,i)){let r=t.dependentSchemas[i];this._jsonValidate(e,r,n)}}function Bn(e,t,n){if(!rn(t,this.options.version)||U(this.validateOptions,[`OBJECT_DEPENDENCY_KEY`])||!h(n)||!h(t.dependentRequired))return;let r=Object.keys(t.dependentRequired);for(let i of r){if(!Object.hasOwn(n,i))continue;let r=t.dependentRequired[i];if(Array.isArray(r))for(let a of r)Object.hasOwn(n,a)||e.addError(`OBJECT_DEPENDENCY_KEY`,[a,i],void 0,t,`dependentRequired`)}}function Vn(e,t,n){if(U(this.validateOptions,[`PROPERTY_NAMES`])||!h(n))return;let r=t.propertyNames;if(r===void 0)return;let i=e.constructor,a=Object.keys(n),o=[];for(let t of a){let n=new i(e);o.push(n),this._jsonValidate(n,r,t)}K(e,o,()=>{for(let n=0;n<a.length;n++)o[n].errors.length>0&&e.addError(`PROPERTY_NAMES`,[a[n]],o[n],t,void 0)})}let Hn=e=>{let t=e.indexOf(`#`);if(t===-1)return;let n=e.slice(t+1);if(!(!n||n[0]===`/`))return n},Un=(e,t)=>{let n=y(e),r=n?d(n):void 0,i=b(e,t,r,r);if(i&&i.$dynamicAnchor===t)return i},Wn=(e,t)=>{let n=e.__$recursiveRefResolved;if(!n)return;let r=n;if(typeof r==`object`&&r.$recursiveAnchor===!0){let e=t[0];e&&(r=e)}return r},Gn=(e,t)=>{let n=e.__$dynamicRefResolved;if(n===void 0||!e.$dynamicRef)return n;let r=n,i=Hn(e.$dynamicRef);if(i&&typeof r==`object`&&r.$dynamicAnchor===i)for(let e=0;e<t.length;e++){let n=t[e],a=Un(n,i);if(a){r=a;break}}return r},Kn=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,qn=e=>e.length%4==0?Kn.test(e):!1,Jn=e=>{if(qn(e)){if(typeof atob==`function`)try{return atob(e)}catch{return}if(typeof Buffer<`u`)try{return Buffer.from(e,`base64`).toString(`utf8`)}catch{return}}};function Yn(e){let t=0;for(let n of e)t++;return t}function Xn(e,t,n){U(this.validateOptions,[`MIN_LENGTH`])||typeof n==`string`&&Yn(n)<t.minLength&&e.addError(`MIN_LENGTH`,[n.length,t.minLength],void 0,t,`minLength`)}function Zn(e,t,n){U(this.validateOptions,[`MAX_LENGTH`])||typeof n==`string`&&Yn(n)>t.maxLength&&e.addError(`MAX_LENGTH`,[n.length,t.maxLength],void 0,t,`maxLength`)}function Qn(e,t,n){if(U(this.validateOptions,[`PATTERN`])||typeof n!=`string`)return;let r=V(t.pattern);if(!r.ok){e.addError(`PATTERN`,[t.pattern,n,r.error.message],void 0,t,`pattern`);return}r.value.test(n)||e.addError(`PATTERN`,[t.pattern,n],void 0,t,`pattern`)}function $n(e,t,n){if(this.options.formatAssertions===!1||this.options.formatAssertions===!0&&!dn(t,e,this.options.version))return;let r=this.options.version===`draft2019-09`||this.options.version===`draft2020-12`,i=Bt(this.options)[t.format];if(typeof i==`function`){if(U(this.validateOptions,[`INVALID_FORMAT`])||e.hasError(`INVALID_TYPE`,[t.type,m(n)]))return;if(i.length===2)e.addAsyncTaskWithPath(i,[n],function(r){r!==!0&&e.addError(`INVALID_FORMAT`,[t.format,JSON.stringify(n)],void 0,t,`format`)});else{let r=i.call(this,n);if(r instanceof Promise){let i=r;e.addAsyncTaskWithPath(async e=>{try{e(await i)}catch{e(!1)}},[],function(r){r!==!0&&e.addError(`INVALID_FORMAT`,[t.format,JSON.stringify(n)],void 0,t,`format`)})}else r!==!0&&e.addError(`INVALID_FORMAT`,[t.format,JSON.stringify(n)],void 0,t,`format`)}}else this.options.ignoreUnknownFormats!==!0&&!r&&e.addError(`UNKNOWN_FORMAT`,[t.format],void 0,t,`format`)}function er(e,t,n){this.options.version===`draft-07`&&typeof n==`string`&&t.contentEncoding===`base64`&&(qn(n)||e.addError(`INVALID_FORMAT`,[`contentEncoding:base64`,JSON.stringify(n)],void 0,t,`contentEncoding`))}function tr(e,t,n){if(this.options.version!==`draft-07`||typeof n!=`string`||t.contentMediaType!==`application/json`)return;let r=n;if(t.contentEncoding===`base64`){let i=Jn(n);if(i===void 0){e.addError(`INVALID_FORMAT`,[`contentEncoding:base64`,JSON.stringify(n)],void 0,t,`contentEncoding`);return}r=i}try{JSON.parse(r)}catch{e.addError(`INVALID_FORMAT`,[`contentMediaType:application/json`,JSON.stringify(n)],void 0,t,`contentMediaType`)}}function nr(e,t,n){if(U(this.validateOptions,[`INVALID_TYPE`]))return;let r=m(n);typeof t.type==`string`?r!==t.type&&(r!==`integer`||t.type!==`number`)&&e.addError(`INVALID_TYPE`,[t.type,r],void 0,t,`type`):!t.type.includes(r)&&(r!==`integer`||!t.type.includes(`number`))&&e.addError(`INVALID_TYPE`,[JSON.stringify(t.type),r],void 0,t,`type`)}function rr(e,t,n){if(U(this.validateOptions,[`ENUM_CASE_MISMATCH`,`ENUM_MISMATCH`]))return;let r=!1,i=!1;for(let e of t.enum)if(D(n,e,{maxDepth:this.options.maxRecursionDepth})){r=!0;break}else D(n,e,{caseInsensitiveComparison:!0,maxDepth:this.options.maxRecursionDepth})&&(i=!0);if(r===!1){let r=i&&this.options.enumCaseInsensitiveComparison?`ENUM_CASE_MISMATCH`:`ENUM_MISMATCH`;e.addError(r,[JSON.stringify(n)],void 0,t,`enum`)}}function ir(e,t,n){let r=t.const;D(n,r,{maxDepth:this.options.maxRecursionDepth})===!1&&e.addError(`CONST`,[JSON.stringify(r)],void 0,t,void 0)}function J(e){let{report:t,currentSchema:n,json:r,mode:i,depth:a}=e;if(!n||typeof n==`boolean`)return new Set;if(a>(this.options.maxRecursionDepth??100))return t.addError(`COLLECT_EVALUATED_DEPTH_EXCEEDED`,[a]),new Set;let o=new Set,s=e=>{if(e===`all`)return!0;for(let t of e)o.add(t);return!1},c=n=>i===`items`?J.call(this,{report:t,currentSchema:n,json:r,mode:`items`,jsonArr:e.jsonArr,depth:a+1}):J.call(this,{report:t,currentSchema:n,json:r,mode:`properties`,jsonData:e.jsonData,depth:a+1});if(i===`items`){let r=e.jsonArr;if(Array.isArray(n.prefixItems)){let e=Math.min(n.prefixItems.length,r.length);for(let t=0;t<e;t++)o.add(t)}if(n.items!==void 0){if(Array.isArray(n.items)){let e=Math.min(n.items.length,r.length);for(let t=0;t<e;t++)o.add(t)}else if(n.items!==!1)return`all`}if(n.additionalItems!==void 0&&n.additionalItems!==!1&&Array.isArray(n.items))return`all`;if(n.contains!==void 0)for(let e=0;e<r.length;e++){let i=G(t,n.contains,r[e]);if(i===void 0){let a=new M(t);Y.call(this,a,n.contains,r[e]),i=a.errors.length===0}i&&o.add(e)}if(n.unevaluatedItems===!0)return`all`}else{let t=e.jsonData;if(h(n.properties))for(let e of Object.keys(n.properties))Object.hasOwn(t,e)&&o.add(e);if(h(n.patternProperties))for(let e of Object.keys(n.patternProperties)){let n=V(e);if(n.ok)for(let e of Object.keys(t))n.value.test(e)&&o.add(e)}if(n.additionalProperties!==void 0){let e=h(n.properties)?Object.keys(n.properties):[],r=[];if(h(n.patternProperties))for(let e of Object.keys(n.patternProperties)){let t=V(e);t.ok&&r.push(t.value)}for(let n of Object.keys(t))e.includes(n)||r.some(e=>e.test(n))||o.add(n)}if(h(n.dependentSchemas)){for(let[e,r]of Object.entries(n.dependentSchemas))if(Object.hasOwn(t,e)&&s(c(r)))return`all`}if(n.unevaluatedProperties===!0)return`all`}if(Array.isArray(n.allOf)){for(let e of n.allOf)if(s(c(e)))return`all`}if(Array.isArray(n.anyOf))for(let e of n.anyOf){let n=G(t,e,r);if(n===void 0){let i=new M(t);Y.call(this,i,e,r),n=i.errors.length===0}if(n&&s(c(e)))return`all`}if(Array.isArray(n.oneOf))for(let e of n.oneOf){let n=G(t,e,r);if(n===void 0){let i=new M(t);Y.call(this,i,e,r),n=i.errors.length===0}if(n&&s(c(e)))return`all`}if(n.if!==void 0){let e=G(t,n.if,r);if(e===void 0){let i=new M(t);Y.call(this,i,n.if,r),e=i.errors.length===0}if(e){if(s(c(n.if))||n.then!==void 0&&s(c(n.then)))return`all`}else if(n.else!==void 0&&s(c(n.else)))return`all`}if(n.__$refResolved&&n.__$refResolved!==n&&s(c(n.__$refResolved)))return`all`;let l=Wn(n,t.__$recursiveAnchorStack);if(l&&l!==n&&s(c(l)))return`all`;let u=Gn(n,t.__$dynamicScopeStack);return u&&u!==n&&s(c(u))?`all`:o}function ar(e,t,n){if(!Array.isArray(n)||t.unevaluatedItems===!0)return;let r=t.unevaluatedItems;if(r===void 0||n.length===0)return;let i=J.call(this,{report:e,currentSchema:t,json:n,mode:`items`,jsonArr:n,depth:0});if(i===`all`)return;let a=[];for(let e=0;e<n.length;e++)i.has(e)||a.push(e);if(a.length!==0)if(r===!1)e.addError(`ARRAY_UNEVALUATED_ITEMS`,void 0,void 0,t,`unevaluatedItems`);else for(let i of a){let a=new M(e);if(Y.call(this,a,r,n[i]),a.errors.length>0){e.addError(`ARRAY_UNEVALUATED_ITEMS`,void 0,void 0,t,`unevaluatedItems`);break}}}function or(e,t,n){if(!h(n)||t.unevaluatedProperties===!0)return;let r=t.unevaluatedProperties;if(r===void 0)return;let i=Object.keys(n);if(i.length===0)return;let a=J.call(this,{report:e,currentSchema:t,json:n,mode:`properties`,jsonData:n,depth:0});if(a===`all`)return;let o=i.filter(e=>!a.has(e));if(o.length!==0)if(r===!1)e.addError(`OBJECT_UNEVALUATED_PROPERTIES`,[o.join(`, `)],void 0,t,`unevaluatedProperties`);else for(let i of o){let a=new M(e);Y.call(this,a,r,n[i]),a.errors.length>0&&e.addError(`OBJECT_UNEVALUATED_PROPERTIES`,[i],void 0,t,`unevaluatedProperties`)}}function sr(){}let cr={id:()=>{},$id:()=>{},$ref:()=>{},$schema:()=>{},$dynamicAnchor:()=>{},$dynamicRef:()=>{},$anchor:()=>{},$defs:()=>{},$vocabulary:()=>{},$recursiveAnchor:()=>{},$recursiveRef:()=>{},examples:()=>{},title:()=>{},description:()=>{},default:()=>{},type:nr,enum:rr,const:ir,multipleOf:On,maximum:kn,exclusiveMaximum:An,minimum:jn,exclusiveMinimum:Mn,maxLength:Zn,minLength:Xn,pattern:Qn,format:$n,contentEncoding:er,contentMediaType:tr,additionalItems:fn,items:pn,prefixItems:mn,maxItems:hn,minItems:gn,uniqueItems:_n,contains:vn,maxContains:yn,minContains:bn,unevaluatedItems:ar,maxProperties:Nn,minProperties:Pn,required:Fn,additionalProperties:In,patternProperties:Ln,properties:q,dependencies:Rn,dependentSchemas:zn,dependentRequired:Bn,propertyNames:Vn,unevaluatedProperties:or,allOf:xn,anyOf:Sn,oneOf:Cn,not:wn,if:Tn,then:En,else:Dn,definitions:sr},lr=function(e,t,n){let r=typeof t.$schema==`string`?t.$schema:void 0,i=(r===`https://json-schema.org/draft/2020-12/schema`||!r&&this.options.version===`draft2020-12`)&&Array.isArray(t.prefixItems)?t.prefixItems:void 0;if(i){for(let r=0;r<n.length;r++)r<i.length?(e.path.push(r),Y.call(this,e,i[r],n[r]),e.path.pop()):t.items!==void 0&&!Array.isArray(t.items)&&(e.path.push(r),e.schemaPath.push(`items`),Y.call(this,e,t.items,n[r]),e.schemaPath.pop(),e.path.pop());return}if(Array.isArray(t.items))for(let r=0;r<n.length;r++)r<t.items.length?(e.path.push(r),Y.call(this,e,t.items[r],n[r]),e.path.pop()):typeof t.additionalItems==`object`&&(e.path.push(r),Y.call(this,e,t.additionalItems,n[r]),e.path.pop());else if(typeof t.items==`object`||typeof t.items==`boolean`)for(let r=0;r<n.length;r++)e.path.push(r),e.schemaPath.push(`items`),Y.call(this,e,t.items,n[r]),e.schemaPath.pop(),e.path.pop()},ur=function(e,t,n){let r=t.additionalProperties;(r===!0||r===void 0)&&(r={});let i=t.properties?Object.keys(t.properties):[],a=t.patternProperties?Object.keys(t.patternProperties):[],o=Object.keys(n);for(let s of o){let o=n[s],c=[];i.includes(s)&&c.push(t.properties[s]);for(let e of a){let n=V(e);n.ok&&n.value.test(s)===!0&&c.push(t.patternProperties[e])}c.length===0&&r!==!1&&c.push(r);for(let t of c)e.path.push(s),i.includes(s)?(e.schemaPath.push(`properties`),e.schemaPath.push(s)):e.schemaPath.push(`additionalProperties`),Y.call(this,e,t,o),e.path.pop(),e.schemaPath.pop(),i.includes(s)&&e.schemaPath.pop()}};function Y(e,t,n){if(e.commonErrorMessage=`JSON_OBJECT_VALIDATION_FAILED`,t===!0)return!0;if(t===!1)return e.addError(`SCHEMA_IS_FALSE`,[],void 0,t),!1;if(!h(t))return e.addError(`SCHEMA_NOT_AN_OBJECT`,[m(t)],void 0,t),!1;let r=Object.keys(t);if(r.length===0)return!0;let i=!1;e.rootSchema||(e.rootSchema=t,i=!0);let a=e.__$recursiveAnchorStack,o=e.__$dynamicScopeStack,s=!1,c=!1,l=y(t),u=t.__$resourceRoot||(i||typeof l==`string`?t:void 0);if(u&&o[o.length-1]!==u&&(o.push(u),c=!0),t.$recursiveAnchor===!0&&(a.push(t),s=!0),t.$ref!==void 0)if(this.options.version===`draft2019-09`||this.options.version===`draft2020-12`)t.__$refResolved?Y.call(this,e,t.__$refResolved,n):e.addError(`REF_UNRESOLVED`,[t.$ref],void 0,t),r=r.filter(e=>e!==`$ref`);else{let n=99;for(;t.$ref&&n>0;){if(!t.__$refResolved){e.addError(`REF_UNRESOLVED`,[t.$ref],void 0,t);break}else if(t.__$refResolved===t)break;else t=t.__$refResolved,r=Object.keys(t);n--}if(n===0)throw Error(`Circular dependency by $ref references!`);e.schemaPath=[]}if(t.$recursiveRef!==void 0&&(this.options.version===`draft2019-09`||this.options.version===`draft2020-12`)){let i=Wn(t,a);i?Y.call(this,e,i,n):e.addError(`REF_UNRESOLVED`,[t.$recursiveRef],void 0,t),r=r.filter(e=>e!==`$recursiveRef`)}if(t.$dynamicRef!==void 0&&this.options.version===`draft2020-12`){let i=Gn(t,o);i===void 0?e.addError(`REF_UNRESOLVED`,[t.$dynamicRef],void 0,t):Y.call(this,e,i,n),r=r.filter(e=>e!==`$dynamicRef`)}let d=un(t,e,this.options.version);if(d||(r=r.filter(e=>!ln.has(e))),d&&t.type&&(r.splice(r.indexOf(`type`),1),e.schemaPath.push(`type`),cr.type.call(this,e,t,n),e.schemaPath.pop(),e.errors.length&&this.options.breakOnFirstError))return s&&a.pop(),c&&o.pop(),!1;let f=[];for(let i of r){if(i===`unevaluatedItems`||i===`unevaluatedProperties`){f.push(i);continue}let r=cr[i];if(r&&(r.call(this,e,t,n),e.errors.length&&this.options.breakOnFirstError))break}if(f.length>0&&!(e.errors.length>0&&this.options.breakOnFirstError))for(let r of f){let i=cr[r];if(i&&(i.call(this,e,t,n),e.errors.length&&this.options.breakOnFirstError))break}return(e.errors.length===0||this.options.breakOnFirstError===!1)&&(Array.isArray(n)?lr.call(this,e,t,n):h(n)&&ur.call(this,e,t,n)),typeof this.options.customValidator==`function`&&this.options.customValidator.call(this,e,t,n),s&&a.pop(),c&&o.pop(),i&&(e.rootSchema=void 0),e.errors.length===0}let dr;function fr(){return dr}function pr(e){dr=e}let mr=[Object.prototype,Function.prototype,Array.prototype];function X(e){return mr.includes(e)}function hr(e,t,n){X(e)||t!==`__proto__`&&t!==`constructor`&&t!==`prototype`&&(e[t]=n)}function gr(e,t){X(e)||t!==`__proto__`&&t!==`constructor`&&t!==`prototype`&&delete e[t]}let _r=(e,t=100)=>{let n=[];function r(e,i,a=0){if(typeof e!=`object`||!e)return;if(a>=t)throw Error(`Maximum recursion depth (${t}) exceeded in collectIds. If your schema is deeply nested and valid, increase the maxRecursionDepth option.`);let o=!1,s=y(e);if(typeof s==`string`){let t=f(s)?`absolute`:`relative`;i.length===0&&(t=`root`);let r={id:s,type:t,obj:e};t===`absolute`||t===`root`&&f(s)?r.absoluteUri=s:t===`root`&&typeof e.id==`string`&&f(e.id)&&e.id!==s?r.absoluteUri=xr(e.id,e,s):t===`relative`&&(r.absoluteParent=i.filter(e=>e.type===`absolute`||e.type===`root`&&e.absoluteUri).slice(-1)[0],r.absoluteParent&&(r.absoluteUri=xr(r.absoluteParent.absoluteUri||r.absoluteParent.id,e,r.id))),n.push(r),i.push(r),o=!0}if(Array.isArray(e))for(let t of e)r(t,i,a+1);else for(let t of Object.keys(e))v(t)||_.includes(t)||r(e[t],i,a+1);o&&i.pop()}return r(e,[]),n},vr=(e,t,n,r,i,a=100,o=0)=>{if(t||=[],n||=[],r||=[],i||={},typeof e!=`object`||!e)return t;if(o>=a)throw Error(`Maximum recursion depth (${a}) exceeded in collectReferences. If your schema is deeply nested and valid, increase the maxRecursionDepth option.`);let s=typeof e.$ref==`string`&&e.__$refResolved===void 0,c=!1,l=n.length===0,u=y(e);if(typeof e.id==`string`&&f(e.id)&&(!u||!f(u))&&(u=e.id),typeof u==`string`&&(l||!s||i.useRefObjectScope===!0)){let t=n.length>0?n[n.length-1]:void 0;n.push(xr(t,e,u)),c=!0}if(s&&t.push({ref:Z(n[n.length-1],e.$ref),key:`$ref`,obj:e,path:r.slice(0)}),typeof e.$recursiveRef==`string`&&e.__$recursiveRefResolved===void 0&&t.push({ref:Z(n[n.length-1],e.$recursiveRef),key:`$recursiveRef`,obj:e,path:r.slice(0)}),typeof e.$dynamicRef==`string`&&e.__$dynamicRefResolved===void 0&&t.push({ref:Z(n[n.length-1],e.$dynamicRef),key:`$dynamicRef`,obj:e,path:r.slice(0)}),typeof e.$schema==`string`&&e.__$schemaResolved===void 0&&t.push({ref:Z(n[n.length-1],e.$schema),key:`$schema`,obj:e,path:r.slice(0)}),Array.isArray(e))for(let s=0;s<e.length;s++)r.push(s),vr(e[s],t,n,r,i,a,o+1),r.pop();else{let s=Object.keys(e);for(let c of s)v(c)||_.includes(c)||(r.push(c),vr(e[c],t,n,r,i,a,o+1),r.pop())}return c&&n.pop(),t},Z=(e,t)=>{if(f(t))return t;let n=e??``;if(t[0]===`#`){let e=n.indexOf(`#`);return(e===-1?n:n.slice(0,e))+t}if(!n)return t;let r=n.indexOf(`#`),i=r===-1?n:n.slice(0,r);if(f(i))try{return new URL(t,i).toString()}catch{}let a=i;if(!a.endsWith(`/`)){let e=a.lastIndexOf(`/`);a=e===-1?``:a.slice(0,e+1)}return a+t},yr=e=>e[0]!==`#`&&!e.includes(`/`)&&!e.includes(`.`)&&!e.includes(`#`),br=(e,t)=>{if(f(t))return t;let n=e??``;if(yr(t)){let e=n.indexOf(`#`);return(e===-1?n:n.slice(0,e))+`#`+t}return Z(e,t)},xr=(e,t,n)=>typeof t.$id==`string`?Z(e,n):br(e,n);var Sr=class{constructor(e){this.validator=e}collectAndCacheIds(e){let t=_r(e,this.validator.options.maxRecursionDepth);for(let e of t)if(e.absoluteUri){if(this.validator.scache.cacheSchemaByUri(e.absoluteUri,e.obj),e.type===`relative`&&e.absoluteParent&&yr(e.id)){let t=Z(e.absoluteParent.absoluteUri||e.absoluteParent.id,e.id);this.validator.scache.cacheSchemaByUri(t,e.obj)}}else e.type===`root`&&this.validator.scache.cacheSchemaByUri(e.id,e.obj)}compileSchema(e,t,n){if(e.commonErrorMessage=`SCHEMA_COMPILATION_FAILED`,typeof t==`string`){let n=this.validator.scache.getSchemaByUri(e,t);if(n===void 0)return e.addError(`SCHEMA_NOT_REACHABLE`,[t]),!1;t=n}if(Array.isArray(t))return n?.noCache||t.forEach(e=>this.collectAndCacheIds(e)),this.compileArrayOfSchemas(e,t);if(typeof t==`boolean`)return!0;n?.noCache||this.collectAndCacheIds(t);let r=t!==Object.prototype&&t!==Function.prototype&&t!==Array.prototype;if(r&&t.__$compiled&&t.id&&this.validator.scache.checkCacheForUri(t.id)===!1&&(t.__$compiled=void 0),t.__$compiled)return!0;r&&!t.$schema&&this.validator.options.version!==`none`&&(t.$schema=this.validator.getDefaultSchemaId()),t.id&&typeof t.id==`string`&&!n?.noCache&&this.validator.scache.cacheSchemaByUri(t.id,t);let i=!1;e.rootSchema||(e.rootSchema=t,i=!0);let a=e.isValid();r&&gr(t,`__$missingReferences`);let o=this.validator.options.version===`draft2019-09`||this.validator.options.version===`draft2020-12`,s=vr(t,void 0,void 0,void 0,{useRefObjectScope:o},this.validator.options.maxRecursionDepth);for(let n of s){let i=this.validator.scache.getSchemaByUri(e,n.ref,t);if(i===void 0){let r=fr();if(r){let a=d(n.ref),o=r(a);if(o){o.id=a;let r=new M(e);this.compileSchema(r,o)?i=this.validator.scache.getSchemaByUri(e,n.ref,t):e.errors=e.errors.concat(r.errors)}}}if(i===void 0){let i=e.hasError(`REMOTE_NOT_VALID`,[n.ref]),o=f(n.ref),s=!1,c=this.validator.options.ignoreUnresolvableReferences===!0;o&&(s=this.validator.scache.checkCacheForUri(n.ref)),i||c&&o||s||(e.path.push(...n.path),e.addError(`UNRESOLVABLE_REFERENCE`,[n.ref]),e.path=e.path.slice(0,-n.path.length),a&&r&&!X(t)&&(t.__$missingReferences=t.__$missingReferences||[],t.__$missingReferences.push(n)))}hr(n.obj,`__${n.key}Resolved`,i)}let c=e.isValid();return c&&r&&(t.__$compiled=!0),i&&(e.rootSchema=void 0),c}compileArrayOfSchemas(e,t){let n=0,r;do{e.errors=e.errors.filter(e=>e.code!==`UNRESOLVABLE_REFERENCE`),r=n,n=this.compileArrayOfSchemasLoop(e,t);for(let e of t)if(e.__$missingReferences){for(let n=e.__$missingReferences.length-1;n>=0;n--){let r=e.__$missingReferences[n],i=t.find(e=>e.id===r.ref);i&&(hr(r.obj,`__${r.key}Resolved`,i),e.__$missingReferences.splice(n,1))}e.__$missingReferences.length===0&&gr(e,`__$missingReferences`)}}while(n!==t.length&&n!==r);return e.isValid()}compileArrayOfSchemasLoop(e,t){let n=0;for(let r of t){let t=new M(e);this.compileSchema(t,r)&&n++,e.errors=e.errors.concat(t.errors)}return n}};let Cr={$ref:function(e,t){typeof t.$ref!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`$ref`,`string`],void 0,t,`$ref`)},$schema:function(e,t){typeof t.$schema!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`$schema`,`string`],void 0,t,`$schema`)},multipleOf:function(e,t){typeof t.multipleOf==`number`?t.multipleOf<=0&&e.addError(`KEYWORD_MUST_BE`,[`multipleOf`,`strictly greater than 0`],void 0,t,`multipleOf`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`multipleOf`,`number`],void 0,t,`multipleOf`)},maximum:function(e,t){typeof t.maximum!=`number`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`maximum`,`number`],void 0,t,`maximum`)},exclusiveMaximum:function(e,t){e.options.version===`draft-04`?typeof t.exclusiveMaximum==`boolean`?t.maximum===void 0&&e.addError(`KEYWORD_DEPENDENCY`,[`exclusiveMaximum`,`maximum`],void 0,t,`exclusiveMaximum`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`exclusiveMaximum`,`boolean`],void 0,t,`exclusiveMaximum`):typeof t.exclusiveMaximum!=`boolean`&&typeof t.exclusiveMaximum!=`number`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`exclusiveMaximum`,[`boolean`,`number`]],void 0,t,`exclusiveMaximum`)},minimum:function(e,t){typeof t.minimum!=`number`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`minimum`,`number`],void 0,t,`minimum`)},exclusiveMinimum:function(e,t){e.options.version===`draft-04`?typeof t.exclusiveMinimum==`boolean`?t.minimum===void 0&&e.addError(`KEYWORD_DEPENDENCY`,[`exclusiveMinimum`,`minimum`],void 0,t,`exclusiveMinimum`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`exclusiveMinimum`,`boolean`],void 0,t,`exclusiveMinimum`):typeof t.exclusiveMinimum!=`boolean`&&typeof t.exclusiveMinimum!=`number`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`exclusiveMinimum`,[`boolean`,`number`]],void 0,t,`exclusiveMinimum`)},maxLength:function(e,t){g(t.maxLength)?t.maxLength<0&&e.addError(`KEYWORD_MUST_BE`,[`maxLength`,`greater than, or equal to 0`],void 0,t,`maxLength`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`maxLength`,`integer`],void 0,t,`maxLength`)},minLength:function(e,t){g(t.minLength)?t.minLength<0&&e.addError(`KEYWORD_MUST_BE`,[`minLength`,`greater than, or equal to 0`],void 0,t,`minLength`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`minLength`,`integer`],void 0,t,`minLength`)},pattern:function(e,t){if(typeof t.pattern!=`string`)e.addError(`KEYWORD_TYPE_EXPECTED`,[`pattern`,`string`],void 0,t,`pattern`);else{let n=V(t.pattern);n.ok||e.addError(`KEYWORD_PATTERN`,[`pattern`,t.pattern,n.error.message],void 0,t,`pattern`)}},additionalItems:function(e,t){typeof t.additionalItems!=`boolean`&&!h(t.additionalItems)?e.addError(`KEYWORD_TYPE_EXPECTED`,[`additionalItems`,[`boolean`,`object`]],void 0,t,`additionalItems`):h(t.additionalItems)&&(e.path.push(`additionalItems`),this.validateSchema(e,t.additionalItems),e.path.pop())},items:function(e,t){if(Array.isArray(t.items))for(let n=0;n<t.items.length;n++)e.path.push(`items`),e.path.push(n),this.validateSchema(e,t.items[n]),e.path.pop(),e.path.pop();else h(t.items)||e.options.version!==`draft-04`&&typeof t.items==`boolean`?(e.path.push(`items`),this.validateSchema(e,t.items),e.path.pop()):e.addError(`KEYWORD_TYPE_EXPECTED`,[`items`,e.options.version===`draft-04`?[`array`,`object`]:[`array`,`object`,`boolean`]],void 0,t,`items`);this.options.forceAdditional===!0&&t.additionalItems===void 0&&Array.isArray(t.items)&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`additionalItems`],void 0,t,`additionalItems`),this.options.assumeAdditional&&t.additionalItems===void 0&&Array.isArray(t.items)&&(t.additionalItems=!1)},maxItems:function(e,t){typeof t.maxItems==`number`?t.maxItems<0&&e.addError(`KEYWORD_MUST_BE`,[`maxItems`,`greater than, or equal to 0`],void 0,t,`maxItems`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`maxItems`,`integer`],void 0,t,`maxItems`)},minItems:function(e,t){g(t.minItems)?t.minItems<0&&e.addError(`KEYWORD_MUST_BE`,[`minItems`,`greater than, or equal to 0`],void 0,t,`minItems`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`minItems`,`integer`],void 0,t,`minItems`)},uniqueItems:function(e,t){typeof t.uniqueItems!=`boolean`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`uniqueItems`,`boolean`],void 0,t,`uniqueItems`)},maxProperties:function(e,t){g(t.maxProperties)?t.maxProperties<0&&e.addError(`KEYWORD_MUST_BE`,[`maxProperties`,`greater than, or equal to 0`],void 0,t,`maxProperties`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`maxProperties`,`integer`],void 0,t,`maxProperties`)},minProperties:function(e,t){g(t.minProperties)?t.minProperties<0&&e.addError(`KEYWORD_MUST_BE`,[`minProperties`,`greater than, or equal to 0`],void 0,t,`minProperties`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`minProperties`,`integer`],void 0,t,`minProperties`)},required:function(e,t){if(!Array.isArray(t.required))e.addError(`KEYWORD_TYPE_EXPECTED`,[`required`,`array`],void 0,t,`required`);else if(e.options.version===`draft-04`&&t.required.length===0)e.addError(`KEYWORD_MUST_BE`,[`required`,`an array with at least one element`],void 0,t,`required`);else{for(let n of t.required)typeof n!=`string`&&e.addError(`KEYWORD_VALUE_TYPE`,[`required`,`string`],void 0,t,`required`);H(t.required)===!1&&e.addError(`KEYWORD_MUST_BE`,[`required`,`an array with unique items`],void 0,t,`required`)}},additionalProperties:function(e,t){typeof t.additionalProperties!=`boolean`&&!h(t.additionalProperties)?e.addError(`KEYWORD_TYPE_EXPECTED`,[`additionalProperties`,[`boolean`,`object`]],void 0,t,`additionalProperties`):h(t.additionalProperties)&&(e.path.push(`additionalProperties`),this.validateSchema(e,t.additionalProperties),e.path.pop())},properties:function(e,t){if(!h(t.properties)){e.addError(`KEYWORD_TYPE_EXPECTED`,[`properties`,`object`],void 0,t,`properties`);return}let n=Object.keys(t.properties);for(let r of n){let n=t.properties[r];e.path.push(`properties`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop()}this.options.forceAdditional===!0&&t.additionalProperties===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`additionalProperties`],void 0,t,`additionalProperties`),this.options.assumeAdditional&&t.additionalProperties===void 0&&(t.additionalProperties=!1),this.options.forceProperties===!0&&n.length===0&&e.addError(`CUSTOM_MODE_FORCE_PROPERTIES`,[`properties`],void 0,t,`properties`)},patternProperties:function(e,t){if(!h(t.patternProperties)){e.addError(`KEYWORD_TYPE_EXPECTED`,[`patternProperties`,`object`],void 0,t,`patternProperties`);return}let n=Object.keys(t.patternProperties);for(let r of n){let n=t.patternProperties[r],i=V(r);i.ok||e.addError(`KEYWORD_PATTERN`,[`patternProperties`,r,i.error.message],void 0,t,`patternProperties`),e.path.push(`patternProperties`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop()}this.options.forceProperties===!0&&n.length===0&&e.addError(`CUSTOM_MODE_FORCE_PROPERTIES`,[`patternProperties`],void 0,t,`patternProperties`)},dependencies:function(e,t){if(!h(t.dependencies))e.addError(`KEYWORD_TYPE_EXPECTED`,[`dependencies`,`object`],void 0,t,`dependencies`);else{let n=Object.keys(t.dependencies);for(let r of n){let n=t.dependencies[r];if(h(n)||e.options.version!==`draft-04`&&typeof n==`boolean`)e.path.push(`dependencies`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop();else if(Array.isArray(n)){let r=n;e.options.version===`draft-04`&&r.length===0&&e.addError(`KEYWORD_MUST_BE`,[`dependencies`,`not empty array`],void 0,t,`dependencies`);for(let n of r)typeof n!=`string`&&e.addError(`KEYWORD_VALUE_TYPE`,[`dependencies`,`string`],void 0,t,`dependencies`);H(r)===!1&&e.addError(`KEYWORD_MUST_BE`,[`dependencies`,`an array with unique items`],void 0,t,`dependencies`)}else e.addError(`KEYWORD_VALUE_TYPE`,[`dependencies`,e.options.version===`draft-04`?`object or array`:`boolean, object or array`],void 0,t,`dependencies`)}}},enum:function(e,t){Array.isArray(t.enum)===!1?e.addError(`KEYWORD_TYPE_EXPECTED`,[`enum`,`array`],void 0,t,`enum`):t.enum.length===0?e.addError(`KEYWORD_MUST_BE`,[`enum`,`an array with at least one element`],void 0,t,`enum`):H(t.enum)===!1&&e.addError(`KEYWORD_MUST_BE`,[`enum`,`an array with unique elements`],void 0,t,`enum`)},type:function(e,t){let n=[`array`,`boolean`,`integer`,`number`,`null`,`object`,`string`],r=n.join(`,`),i=Array.isArray(t.type);if(Array.isArray(t.type)){for(let i of t.type)n.includes(i)||e.addError(`KEYWORD_TYPE_EXPECTED`,[`type`,r],void 0,t,`type`);H(t.type)===!1&&e.addError(`KEYWORD_MUST_BE`,[`type`,`an object with unique properties`],void 0,t,`type`)}else typeof t.type==`string`?n.includes(t.type)||e.addError(`KEYWORD_TYPE_EXPECTED`,[`type`,r],void 0,t,`type`):e.addError(`KEYWORD_TYPE_EXPECTED`,[`type`,[`string`,`array`]],void 0,t,`type`);this.options.noEmptyStrings===!0&&(t.type===`string`||i&&t.type.includes(`string`))&&t.minLength===void 0&&t.enum===void 0&&t.format===void 0&&(t.minLength=1),this.options.noEmptyArrays===!0&&(t.type===`array`||i&&t.type.includes(`array`))&&t.minItems===void 0&&(t.minItems=1),this.options.forceProperties===!0&&(t.type===`object`||i&&t.type.includes(`object`))&&t.properties===void 0&&t.patternProperties===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`properties`],void 0,t,`properties`),this.options.forceItems===!0&&(t.type===`array`||i&&t.type.includes(`array`))&&t.items===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`items`],void 0,t,`items`),this.options.forceMinItems===!0&&(t.type===`array`||i&&t.type.includes(`array`))&&t.minItems===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`minItems`],void 0,t,`minItems`),this.options.forceMaxItems===!0&&(t.type===`array`||i&&t.type.includes(`array`))&&t.maxItems===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`maxItems`],void 0,t,`maxItems`),this.options.forceMinLength===!0&&(t.type===`string`||i&&t.type.includes(`string`))&&t.minLength===void 0&&t.format===void 0&&t.enum===void 0&&t.pattern===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`minLength`],void 0,t,`minLength`),this.options.forceMaxLength===!0&&(t.type===`string`||i&&t.type.includes(`string`))&&t.maxLength===void 0&&t.format===void 0&&t.enum===void 0&&t.pattern===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`maxLength`],void 0,t,`maxLength`)},allOf:function(e,t){if(Array.isArray(t.allOf)===!1)e.addError(`KEYWORD_TYPE_EXPECTED`,[`allOf`,`array`],void 0,t,`allOf`);else if(t.allOf.length===0)e.addError(`KEYWORD_MUST_BE`,[`allOf`,`an array with at least one element`],void 0,t,`allOf`);else for(let n=0;n<t.allOf.length;n++)e.path.push(`allOf`),e.path.push(n),this.validateSchema(e,t.allOf[n]),e.path.pop(),e.path.pop()},anyOf:function(e,t){if(Array.isArray(t.anyOf)===!1)e.addError(`KEYWORD_TYPE_EXPECTED`,[`anyOf`,`array`],void 0,t,`anyOf`);else if(t.anyOf.length===0)e.addError(`KEYWORD_MUST_BE`,[`anyOf`,`an array with at least one element`],void 0,t,`anyOf`);else for(let n=0;n<t.anyOf.length;n++)e.path.push(`anyOf`),e.path.push(n),this.validateSchema(e,t.anyOf[n]),e.path.pop(),e.path.pop()},oneOf:function(e,t){if(Array.isArray(t.oneOf)===!1)e.addError(`KEYWORD_TYPE_EXPECTED`,[`oneOf`,`array`],void 0,t,`oneOf`);else if(t.oneOf.length===0)e.addError(`KEYWORD_MUST_BE`,[`oneOf`,`an array with at least one element`],void 0,t,`oneOf`);else for(let n=0;n<t.oneOf.length;n++)e.path.push(`oneOf`),e.path.push(n),this.validateSchema(e,t.oneOf[n]),e.path.pop(),e.path.pop()},not:function(e,t){let n=t.not;(e.options.version===`draft-04`?h(n):typeof n==`boolean`||h(n))?(e.path.push(`not`),this.validateSchema(e,n),e.path.pop()):e.addError(`KEYWORD_TYPE_EXPECTED`,[`not`,e.options.version===`draft-04`?`object`:[`boolean`,`object`]],void 0,t,`not`)},if:function(e,t){if(e.options.version!==`draft-07`)return;let n=t.if;if(!(typeof n==`boolean`||h(n))){e.addError(`KEYWORD_TYPE_EXPECTED`,[`if`,[`boolean`,`object`]],void 0,t,`if`);return}e.path.push(`if`),this.validateSchema(e,n),e.path.pop()},then:function(e,t){if(e.options.version!==`draft-07`)return;let n=t.then;if(!(typeof n==`boolean`||h(n))){e.addError(`KEYWORD_TYPE_EXPECTED`,[`then`,[`boolean`,`object`]],void 0,t,`then`);return}e.path.push(`then`),this.validateSchema(e,n),e.path.pop()},else:function(e,t){if(e.options.version!==`draft-07`)return;let n=t.else;if(!(typeof n==`boolean`||h(n))){e.addError(`KEYWORD_TYPE_EXPECTED`,[`else`,[`boolean`,`object`]],void 0,t,`else`);return}e.path.push(`else`),this.validateSchema(e,n),e.path.pop()},definitions:function(e,t){if(!h(t.definitions))e.addError(`KEYWORD_TYPE_EXPECTED`,[`definitions`,`object`],void 0,t,`definitions`);else{let n=Object.keys(t.definitions);for(let r of n){let n=t.definitions[r];e.path.push(`definitions`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop()}}},$defs:function(e,t){if(e.options.version!==`draft2019-09`&&e.options.version!==`draft2020-12`)return;if(!h(t.$defs)){e.addError(`KEYWORD_TYPE_EXPECTED`,[`$defs`,`object`],void 0,t,`$defs`);return}let n=Object.keys(t.$defs);for(let r of n){let n=t.$defs[r];e.path.push(`$defs`),e.path.push(r),this.validateSchema(e,n),e.path.pop(),e.path.pop()}},format:function(e,t){if(this.options.formatAssertions!==!1)if(typeof t.format!=`string`)e.addError(`KEYWORD_TYPE_EXPECTED`,[`format`,`string`],void 0,t,`format`);else{let n=this.options.version===`draft2019-09`||this.options.version===`draft2020-12`;!Wt(t.format,this.options.customFormats)&&this.options.ignoreUnknownFormats!==!0&&!n&&e.addError(`UNKNOWN_FORMAT`,[t.format],void 0,t,`format`)}},contentEncoding:function(e,t){e.options.version===`draft-07`&&typeof t.contentEncoding!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`contentEncoding`,`string`],void 0,t,`contentEncoding`)},contentMediaType:function(e,t){e.options.version===`draft-07`&&typeof t.contentMediaType!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`contentMediaType`,`string`],void 0,t,`contentMediaType`)},id:function(e,t){typeof t.id!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`id`,`string`],void 0,t,`id`)},title:function(e,t){typeof t.title!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`title`,`string`],void 0,t,`title`)},description:function(e,t){typeof t.description!=`string`&&e.addError(`KEYWORD_TYPE_EXPECTED`,[`description`,`string`],void 0,t,`description`)},default:function(){}};var wr=class{constructor(e){this.validator=e}get options(){return this.validator.options}validateArrayOfSchemas(e,t){for(let n of t)this.validateSchema(e,n);return e.isValid()}validateSchema(e,t){if(e.commonErrorMessage=`SCHEMA_VALIDATION_FAILED`,Array.isArray(t))return this.validateArrayOfSchemas(e,t);if(typeof t==`boolean`||t.__$validated)return!0;let n=t.$schema&&y(t)!==t.$schema;if(n)if(t.__$schemaResolved&&t.__$schemaResolved!==t){let n=new M(e);Y.call(this.validator,n,t.__$schemaResolved,t)===!1&&e.addError(`PARENT_SCHEMA_VALIDATION_FAILED`,void 0,n,t,`$schema`)}else this.validator.options.ignoreUnresolvableReferences!==!0&&e.addError(`REF_UNRESOLVED`,[t.$schema],void 0,t,`$schema`);if(this.validator.options.noTypeless===!0){if(t.type!==void 0){let e=[];Array.isArray(t.anyOf)&&(e=e.concat(t.anyOf)),Array.isArray(t.oneOf)&&(e=e.concat(t.oneOf)),Array.isArray(t.allOf)&&(e=e.concat(t.allOf)),e.forEach(function(e){e.type||=t.type})}t.enum===void 0&&t.type===void 0&&t.anyOf===void 0&&t.oneOf===void 0&&t.not===void 0&&t.$ref===void 0&&e.addError(`KEYWORD_UNDEFINED_STRICT`,[`type`],void 0,t,`type`)}let r=Object.keys(t);for(let i of r)i.startsWith(`__`)||(Object.hasOwn(Cr,i)?Cr[i].call(this,e,t):n||this.validator.options.noExtraKeywords===!0&&e.addError(`KEYWORD_UNEXPECTED`,[i],void 0,t,void 0));if(this.validator.options.pedanticCheck===!0){if(t.enum){let n=T(t);delete n.enum,delete n.default,e.path.push(`enum`);for(let r=0;r<t.enum.length;r++)e.path.push(r),Y.call(this.validator,e,n,t.enum[r]),e.path.pop();e.path.pop()}t.default&&(e.path.push(`default`),Y.call(this.validator,e,t,t.default),e.path.pop())}let i=e.isValid();return i&&(t.__$validated=!0),i}};let Q=Symbol(`ZSchema.factory`);var $=class{scache;sc;sv;validateOptions={};options;constructor(e,t){if(t!==Q)throw Error(`do not use new ZSchema(), use ZSchema.create() instead`);this.scache=new ae(this),this.sc=new Sr(this),this.sv=new wr(this),this.options=ne(e)}_jsonValidate(e,t,n){return Y.call(this,e,t,n)}getDefaultSchemaId(){return this.options.version&&this.options.version!==`none`?te[this.options.version]:te[N.version]}_validate(e,t,n,r){if(typeof n==`function`&&(r=n,n={}),n||={},this.validateOptions=n,typeof t!=`string`&&typeof t!=`boolean`&&!h(t)){let e=Error(`Invalid .validate call - schema must be a string or object but `+m(t)+` was passed!`);if(r){setTimeout(function(){r(e,!1)},0);return}throw e}let i=!1,a=new M(this.options,n);a.json=e;let o;if(typeof t==`string`){let e=t;if(o=this.scache.getSchema(a,e),!o){let t=Error(`Schema with id '`+e+`' wasn't found in the validator cache!`);if(r){setTimeout(function(){r(t,!1)},0);return}throw t}}else o=this.scache.getSchema(a,t);let s=!1;i||(s=this.sc.compileSchema(a,o)),s||(i=!0);let c=!1;if(i||(c=this.sv.validateSchema(a,o)),c||(i=!0),n.schemaPath&&(a.rootSchema=o,o=A(o,n.schemaPath),!o)){let e=Error(`Schema path '`+n.schemaPath+`' wasn't found in the schema!`);if(r){setTimeout(function(){r(e,!1)},0);return}throw e}if(i||Y.call(this,a,o,e),r){a.processAsyncTasks(this.options.asyncTimeout,r);return}else if(a.asyncTasks.length>0)throw Error(`This validation has async tasks and cannot be done in sync mode, please provide callback argument.`);if(!a.isValid())throw C({message:a.commonErrorMessage,details:a.errors});return!0}_validateSchema(e){if(Array.isArray(e)&&e.length===0)throw Error(`.compileSchema was called with an empty array`);let t=new M(this.options);if(Array.isArray(e)){let n=this.scache.getSchema(t,e);this.sc.compileSchema(t,n)&&this.sv.validateSchema(t,n)}else{let n=this.scache.getSchema(t,e);this.sc.compileSchema(t,n)&&this.sv.validateSchema(t,n)}if(!t.isValid())throw C({message:t.commonErrorMessage,details:t.errors});return!0}registerFormat(e,t){this.options.customFormats||(this.options.customFormats={}),this.options.customFormats[e]=t}unregisterFormat(e){this.options.customFormats||(this.options.customFormats={}),this.options.customFormats[e]=null}getRegisteredFormats(){return k(this.options.customFormats||{}).filter(e=>this.options.customFormats?.[e]!=null)}getSupportedFormats(){return Ut(this.options.customFormats)}setRemoteReference(e,t,n){let r=ie(t,e,n,this.options.maxRecursionDepth);this.scache.cacheSchemaByUri(e,r)}getMissingReferences(e){if(!e)return[];let t=e.details||[],n=[];function r(e){for(let t of e)(t.code===`UNRESOLVABLE_REFERENCE`||t.code===`SCHEMA_NOT_REACHABLE`)&&n.push(t.params[0]),t.inner&&r(t.inner)}return r(t),n}getMissingRemoteReferences(e){let t=this.getMissingReferences(e),n=[];for(let e of t){let t=d(e);t&&!n.includes(t)&&n.push(t)}return n}getResolvedSchema(e){let t=new M(this.options),n=this.scache.getSchemaByUri(t,e);if(!n)return;let r=E(n,this.options.maxRecursionDepth),i=new WeakSet,a=function(e){let t,n=m(e);if(!(n!==`object`&&n!==`array`)&&!i.has(e)){if(i.add(e),e.$ref&&e.__$refResolved){let n=e.__$refResolved,r=e;for(t in delete e.$ref,delete e.__$refResolved,n)w(n,r,t)}for(t in e)Object.hasOwn(e,t)&&(v(t)?delete e[t]:a(e[t]))}};return a(r),r}},Tr=class e extends ${constructor(e,t){super(e,t)}static registerFormat(e,t){return Vt(e,t)}static unregisterFormat(e){return Ht(e)}static getRegisteredFormats(){return Gt()}static getDefaultOptions(){return E(N)}static setRemoteReference(e,t,n){let r=ie(t,e,n);ae.cacheSchemaByUri(e,r)}static getSchemaReader(){return fr()}static setSchemaReader(e){return pr(e)}static schemaSymbol=ee;static jsonSymbol=j;static create(t={}){let n=t.async,r=t.safe;return delete t.async,delete t.safe,n&&r?new Or(t,Q):n?new Dr(t,Q):r?new Er(t,Q):new e(t,Q)}validate(e,t,n={}){return this._validate(e,t,n)}validateSafe(e,t,n){try{return this._validate(e,t,n??{}),{valid:!0}}catch(e){return{valid:!1,err:e}}}validateAsync(e,t,n){return new Promise((r,i)=>{try{this._validate(e,t,n||{},(e,t)=>e||t!==!0?i(e):r(t))}catch(e){i(e)}})}validateAsyncSafe(e,t,n){return new Promise(r=>{try{this._validate(e,t,n||{},(e,t)=>{r({valid:t,err:e})})}catch(e){r({valid:!1,err:e})}})}validateSchema(e){return this._validateSchema(e)}validateSchemaSafe(e){try{return this._validateSchema(e),{valid:!0}}catch(e){return{valid:!1,err:e}}}},Er=class extends ${constructor(e,t){super(e,t)}validate(e,t,n={}){try{return this._validate(e,t,n),{valid:!0}}catch(e){return{valid:!1,err:e}}}validateSchema(e){try{return this._validateSchema(e),{valid:!0}}catch(e){return{valid:!1,err:e}}}},Dr=class extends ${constructor(e,t){super(e,t)}validate(e,t,n={}){return new Promise((r,i)=>{try{this._validate(e,t,n,(e,t)=>e||t!==!0?i(e):r(t))}catch(e){i(e)}})}validateSchema(e){return this._validateSchema(e)}},Or=class extends ${constructor(e,t){super(e,t)}validate(e,t,n={}){return new Promise(r=>{try{this._validate(e,t,n,(e,t)=>{r({valid:t,err:e})})}catch(e){r({valid:!1,err:e})}})}validateSchema(e){try{return this._validateSchema(e),{valid:!0}}catch(e){return{valid:!1,err:e}}}};e.ZSchema=Tr,e.ZSchemaAsync=Dr,e.ZSchemaAsyncSafe=Or,e.ZSchemaSafe=Er});