@blueking/bkui-form 1.0.1-beta.3 → 1.0.1-beta.5

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.
Files changed (209) hide show
  1. package/dist/adapter/common/FieldGroupWrap.d.ts +209 -0
  2. package/dist/adapter/field/ArrayField.d.ts +147 -0
  3. package/dist/adapter/field/BooleanField.d.ts +145 -0
  4. package/dist/adapter/field/CompositionField.d.ts +151 -0
  5. package/dist/adapter/field/FieldProps.d.ts +70 -0
  6. package/dist/adapter/field/NumberField.d.ts +145 -0
  7. package/dist/adapter/field/ObjectField.d.ts +147 -0
  8. package/dist/adapter/field/SchemaField.d.ts +145 -0
  9. package/dist/adapter/field/StringField.d.ts +4 -0
  10. package/dist/adapter/widget/ArrayWidget.d.ts +154 -0
  11. package/dist/adapter/widget/ButtonWidget.d.ts +16 -0
  12. package/dist/adapter/widget/CheckboxWidget.d.ts +34 -0
  13. package/dist/adapter/widget/CollapseGroupWidget.d.ts +196 -0
  14. package/dist/adapter/widget/ColorPickerWidget.d.ts +8 -0
  15. package/dist/adapter/widget/InputWidget.d.ts +30 -0
  16. package/dist/adapter/widget/KeyValueArrayWidget.d.ts +157 -0
  17. package/dist/adapter/widget/RadioWidget.d.ts +37 -0
  18. package/dist/adapter/widget/SelectWidget.d.ts +37 -0
  19. package/dist/adapter/widget/SwitchWidget.d.ts +10 -0
  20. package/dist/adapter/widget/TabGroupWidget.d.ts +187 -0
  21. package/dist/adapter/widget/TableWidget.d.ts +154 -0
  22. package/dist/adapter/widget/Widget.d.ts +182 -0
  23. package/dist/controller/form.d.ts +141 -0
  24. package/dist/controller/props.d.ts +62 -0
  25. package/dist/core/events.d.ts +10 -0
  26. package/dist/core/expression.d.ts +13 -0
  27. package/dist/core/form.d.ts +5 -0
  28. package/dist/core/lang.d.ts +1 -0
  29. package/dist/core/layout.d.ts +20 -0
  30. package/dist/core/lifecycle.d.ts +0 -0
  31. package/dist/core/path.d.ts +9 -0
  32. package/dist/core/proxy.d.ts +3 -0
  33. package/dist/core/reaction.d.ts +5 -0
  34. package/dist/core/register.d.ts +19 -0
  35. package/dist/core/schema.d.ts +26 -0
  36. package/dist/core/validator.d.ts +35 -0
  37. package/dist/core/widgetTree.d.ts +40 -0
  38. package/dist/index.d.ts +6 -0
  39. package/dist/index.es.js +7443 -0
  40. package/dist/index.umd.js +12 -0
  41. package/dist/style.css +1 -0
  42. package/dist/util/fetch.d.ts +10 -0
  43. package/dist/util/index.d.ts +23 -0
  44. package/package.json +24 -12
  45. package/esm/adapter/common/FieldGroupWrap.tsx.js +0 -199
  46. package/esm/adapter/field/ArrayField.tsx.js +0 -55
  47. package/esm/adapter/field/BooleanField.tsx.js +0 -41
  48. package/esm/adapter/field/CompositionField.tsx.js +0 -113
  49. package/esm/adapter/field/FieldProps.ts.js +0 -85
  50. package/esm/adapter/field/NumberField.tsx.js +0 -19
  51. package/esm/adapter/field/ObjectField.tsx.js +0 -58
  52. package/esm/adapter/field/SchemaField.tsx.js +0 -28
  53. package/esm/adapter/field/StringField.tsx.js +0 -4
  54. package/esm/adapter/widget/ArrayWidget.ts.js +0 -196
  55. package/esm/adapter/widget/ButtonWidget.ts.js +0 -76
  56. package/esm/adapter/widget/CheckboxWidget.ts.js +0 -101
  57. package/esm/adapter/widget/CollapseGroupWidget.ts.js +0 -140
  58. package/esm/adapter/widget/ColorPickerWidget.ts.js +0 -71
  59. package/esm/adapter/widget/InputWidget.ts.js +0 -79
  60. package/esm/adapter/widget/KeyValueArrayWidget.tsx.js +0 -156
  61. package/esm/adapter/widget/RadioWidget.ts.js +0 -98
  62. package/esm/adapter/widget/SelectWidget.ts.js +0 -98
  63. package/esm/adapter/widget/SwitchWidget.ts.js +0 -73
  64. package/esm/adapter/widget/TabGroupWidget.ts.js +0 -145
  65. package/esm/adapter/widget/TableWidget.ts.js +0 -205
  66. package/esm/adapter/widget/Widget.ts.js +0 -497
  67. package/esm/assets/fonts/iconcool.eot +0 -0
  68. package/esm/assets/fonts/iconcool.svg +0 -53
  69. package/esm/assets/fonts/iconcool.ttf +0 -0
  70. package/esm/assets/fonts/iconcool.woff +0 -0
  71. package/esm/assets/style.css +0 -43
  72. package/esm/controller/form.css +0 -164
  73. package/esm/controller/form.tsx.js +0 -159
  74. package/esm/controller/props.ts.js +0 -75
  75. package/esm/core/events.ts.js +0 -74
  76. package/esm/core/expression.ts.js +0 -67
  77. package/esm/core/lang.ts.js +0 -25
  78. package/esm/core/layout.ts.js +0 -149
  79. package/esm/core/path.ts.js +0 -60
  80. package/esm/core/proxy.ts.js +0 -10
  81. package/esm/core/reaction.ts.js +0 -116
  82. package/esm/core/register.ts.js +0 -74
  83. package/esm/core/schema.ts.js +0 -302
  84. package/esm/core/validator.ts.js +0 -248
  85. package/esm/core/widgetTree.ts.js +0 -163
  86. package/esm/index.ts.js +0 -6
  87. package/esm/node_modules/@blueking/cli-service/dist/lib/path.js +0 -35
  88. package/esm/node_modules/@blueking/cli-service/dist/lib/util.js +0 -233
  89. package/esm/node_modules/@blueking/cli-service/dist/tools/rust/helper/path.js +0 -172
  90. package/esm/node_modules/ajv/dist/ajv.js +0 -50
  91. package/esm/node_modules/ajv/dist/compile/codegen/code.js +0 -156
  92. package/esm/node_modules/ajv/dist/compile/codegen/index.js +0 -697
  93. package/esm/node_modules/ajv/dist/compile/codegen/scope.js +0 -143
  94. package/esm/node_modules/ajv/dist/compile/errors.js +0 -123
  95. package/esm/node_modules/ajv/dist/compile/index.js +0 -242
  96. package/esm/node_modules/ajv/dist/compile/names.js +0 -28
  97. package/esm/node_modules/ajv/dist/compile/ref_error.js +0 -12
  98. package/esm/node_modules/ajv/dist/compile/resolve.js +0 -155
  99. package/esm/node_modules/ajv/dist/compile/rules.js +0 -26
  100. package/esm/node_modules/ajv/dist/compile/util.js +0 -178
  101. package/esm/node_modules/ajv/dist/compile/validate/applicability.js +0 -19
  102. package/esm/node_modules/ajv/dist/compile/validate/boolSchema.js +0 -50
  103. package/esm/node_modules/ajv/dist/compile/validate/dataType.js +0 -203
  104. package/esm/node_modules/ajv/dist/compile/validate/defaults.js +0 -35
  105. package/esm/node_modules/ajv/dist/compile/validate/index.js +0 -520
  106. package/esm/node_modules/ajv/dist/compile/validate/keyword.js +0 -124
  107. package/esm/node_modules/ajv/dist/compile/validate/subschema.js +0 -81
  108. package/esm/node_modules/ajv/dist/core.js +0 -618
  109. package/esm/node_modules/ajv/dist/refs/data.json +0 -13
  110. package/esm/node_modules/ajv/dist/refs/json-schema-draft-07.json +0 -151
  111. package/esm/node_modules/ajv/dist/runtime/equal.js +0 -7
  112. package/esm/node_modules/ajv/dist/runtime/ucs2length.js +0 -24
  113. package/esm/node_modules/ajv/dist/runtime/uri.js +0 -6
  114. package/esm/node_modules/ajv/dist/runtime/validation_error.js +0 -11
  115. package/esm/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +0 -49
  116. package/esm/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +0 -106
  117. package/esm/node_modules/ajv/dist/vocabularies/applicator/allOf.js +0 -23
  118. package/esm/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +0 -12
  119. package/esm/node_modules/ajv/dist/vocabularies/applicator/contains.js +0 -95
  120. package/esm/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +0 -85
  121. package/esm/node_modules/ajv/dist/vocabularies/applicator/if.js +0 -66
  122. package/esm/node_modules/ajv/dist/vocabularies/applicator/index.js +0 -44
  123. package/esm/node_modules/ajv/dist/vocabularies/applicator/items.js +0 -52
  124. package/esm/node_modules/ajv/dist/vocabularies/applicator/items2020.js +0 -30
  125. package/esm/node_modules/ajv/dist/vocabularies/applicator/not.js +0 -26
  126. package/esm/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +0 -60
  127. package/esm/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +0 -75
  128. package/esm/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +0 -12
  129. package/esm/node_modules/ajv/dist/vocabularies/applicator/properties.js +0 -54
  130. package/esm/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +0 -38
  131. package/esm/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +0 -13
  132. package/esm/node_modules/ajv/dist/vocabularies/code.js +0 -131
  133. package/esm/node_modules/ajv/dist/vocabularies/core/id.js +0 -10
  134. package/esm/node_modules/ajv/dist/vocabularies/core/index.js +0 -16
  135. package/esm/node_modules/ajv/dist/vocabularies/core/ref.js +0 -122
  136. package/esm/node_modules/ajv/dist/vocabularies/discriminator/index.js +0 -104
  137. package/esm/node_modules/ajv/dist/vocabularies/discriminator/types.js +0 -9
  138. package/esm/node_modules/ajv/dist/vocabularies/draft7.js +0 -17
  139. package/esm/node_modules/ajv/dist/vocabularies/format/format.js +0 -92
  140. package/esm/node_modules/ajv/dist/vocabularies/format/index.js +0 -6
  141. package/esm/node_modules/ajv/dist/vocabularies/metadata.js +0 -18
  142. package/esm/node_modules/ajv/dist/vocabularies/validation/const.js +0 -25
  143. package/esm/node_modules/ajv/dist/vocabularies/validation/enum.js +0 -48
  144. package/esm/node_modules/ajv/dist/vocabularies/validation/index.js +0 -33
  145. package/esm/node_modules/ajv/dist/vocabularies/validation/limitItems.js +0 -24
  146. package/esm/node_modules/ajv/dist/vocabularies/validation/limitLength.js +0 -27
  147. package/esm/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +0 -27
  148. package/esm/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +0 -24
  149. package/esm/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +0 -26
  150. package/esm/node_modules/ajv/dist/vocabularies/validation/pattern.js +0 -24
  151. package/esm/node_modules/ajv/dist/vocabularies/validation/required.js +0 -79
  152. package/esm/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +0 -64
  153. package/esm/node_modules/ajv-formats/dist/formats.js +0 -173
  154. package/esm/node_modules/ajv-formats/dist/index.js +0 -37
  155. package/esm/node_modules/ajv-formats/dist/limit.js +0 -69
  156. package/esm/node_modules/ajv-i18n/localize/zh/index.js +0 -154
  157. package/esm/node_modules/fast-deep-equal/index.js +0 -46
  158. package/esm/node_modules/fast-uri/index.js +0 -303
  159. package/esm/node_modules/fast-uri/lib/schemes.js +0 -188
  160. package/esm/node_modules/fast-uri/lib/scopedChars.js +0 -30
  161. package/esm/node_modules/fast-uri/lib/utils.js +0 -244
  162. package/esm/node_modules/json-schema-traverse/index.js +0 -89
  163. package/esm/node_modules/semver/classes/comparator.js +0 -143
  164. package/esm/node_modules/semver/classes/range.js +0 -557
  165. package/esm/node_modules/semver/classes/semver.js +0 -333
  166. package/esm/node_modules/semver/functions/clean.js +0 -8
  167. package/esm/node_modules/semver/functions/cmp.js +0 -54
  168. package/esm/node_modules/semver/functions/coerce.js +0 -62
  169. package/esm/node_modules/semver/functions/compare-build.js +0 -9
  170. package/esm/node_modules/semver/functions/compare-loose.js +0 -5
  171. package/esm/node_modules/semver/functions/compare.js +0 -7
  172. package/esm/node_modules/semver/functions/diff.js +0 -60
  173. package/esm/node_modules/semver/functions/eq.js +0 -5
  174. package/esm/node_modules/semver/functions/gt.js +0 -5
  175. package/esm/node_modules/semver/functions/gte.js +0 -5
  176. package/esm/node_modules/semver/functions/inc.js +0 -21
  177. package/esm/node_modules/semver/functions/lt.js +0 -5
  178. package/esm/node_modules/semver/functions/lte.js +0 -5
  179. package/esm/node_modules/semver/functions/major.js +0 -5
  180. package/esm/node_modules/semver/functions/minor.js +0 -5
  181. package/esm/node_modules/semver/functions/neq.js +0 -5
  182. package/esm/node_modules/semver/functions/parse.js +0 -18
  183. package/esm/node_modules/semver/functions/patch.js +0 -5
  184. package/esm/node_modules/semver/functions/prerelease.js +0 -8
  185. package/esm/node_modules/semver/functions/rcompare.js +0 -5
  186. package/esm/node_modules/semver/functions/rsort.js +0 -5
  187. package/esm/node_modules/semver/functions/satisfies.js +0 -12
  188. package/esm/node_modules/semver/functions/sort.js +0 -5
  189. package/esm/node_modules/semver/functions/valid.js +0 -8
  190. package/esm/node_modules/semver/index.js +0 -91
  191. package/esm/node_modules/semver/internal/constants.js +0 -37
  192. package/esm/node_modules/semver/internal/debug.js +0 -11
  193. package/esm/node_modules/semver/internal/identifiers.js +0 -29
  194. package/esm/node_modules/semver/internal/lrucache.js +0 -42
  195. package/esm/node_modules/semver/internal/parse-options.js +0 -17
  196. package/esm/node_modules/semver/internal/re.js +0 -223
  197. package/esm/node_modules/semver/ranges/gtr.js +0 -6
  198. package/esm/node_modules/semver/ranges/intersects.js +0 -9
  199. package/esm/node_modules/semver/ranges/ltr.js +0 -6
  200. package/esm/node_modules/semver/ranges/max-satisfying.js +0 -27
  201. package/esm/node_modules/semver/ranges/min-satisfying.js +0 -26
  202. package/esm/node_modules/semver/ranges/min-version.js +0 -63
  203. package/esm/node_modules/semver/ranges/outside.js +0 -82
  204. package/esm/node_modules/semver/ranges/simplify.js +0 -49
  205. package/esm/node_modules/semver/ranges/subset.js +0 -249
  206. package/esm/node_modules/semver/ranges/to-comparators.js +0 -10
  207. package/esm/node_modules/semver/ranges/valid.js +0 -13
  208. package/esm/util/fetch.ts.js +0 -190
  209. package/esm/util/index.ts.js +0 -276
@@ -0,0 +1,12 @@
1
+ (function(z,U){typeof exports=="object"&&typeof module<"u"?U(exports,require("vue"),require("bkui-vue")):typeof define=="function"&&define.amd?define(["exports","vue","bkui-vue"],U):(z=typeof globalThis<"u"?globalThis:z||self,U(z.bkSchemaForm={},z.Vue,z.bkuiVue))})(this,function(exports,vue,bkuiVue){"use strict";var ge=Object.defineProperty;var $e=(z,U,e)=>U in z?ge(z,U,{enumerable:!0,configurable:!0,writable:!0,value:e}):z[U]=e;var L=(z,U,e)=>$e(z,typeof U!="symbol"?U+"":U,e);const isRegExp=e=>{var t;return((t=new Function(`return ${e};`)())==null?void 0:t.constructor)===RegExp},isObj=e=>Object.prototype.toString.call(e)==="[object Object]";(function(){try{if(typeof self<"u")return self}catch{}try{if(typeof window<"u")return window}catch{}try{if(typeof global<"u")return global}catch{}return Function("return this")()})();const hasOwnProperty=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),valueType=e=>Array.isArray(e)?"array":typeof e=="string"?"string":typeof e=="boolean"?"boolean":isNaN(e)?e===null?"null":typeof e=="object"?"object":typeof e:"number",merge=(e,t)=>isObj(t)?Object.keys(t).reduce((r,s)=>(r[s]=merge((e==null?void 0:e[s])||{},t[s]),r),JSON.parse(JSON.stringify(e))):Array.isArray(t)?(e=Array.isArray(e)?e:[],t.map((r,s)=>e[s]?merge(e[s],r):r)):t;function initializationValue(e,t={integer:void 0,number:void 0}){switch(e){case"any":return;case"array":return[];case"boolean":return!1;case"integer":return t.integer;case"null":return null;case"number":return t.number;case"object":return{};case"string":return""}}function isObject(e){return Object.prototype.toString.call(e)==="[object Object]"}function mergeObject(e,t){const r={...e};for(const[s,a]of Object.entries(t))isObject(a)&&s in e?r[s]=mergeObject(r[s],a):r[s]=a;return r}function mergeDeep(e,...t){return t.reduce(mergeObject,e)}function isArguments(e){return Object.prototype.toString.call(e)==="[object Arguments]"}function deepEquals(e,t,r=[],s=[]){if(e===t||typeof e=="function"||typeof t=="function")return!0;if(typeof e!="object"||typeof t!="object"||e===null||t===null)return!1;if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(e instanceof RegExp&&t instanceof RegExp)return e.source===t.source&&e.global===t.global&&e.multiline===t.multiline&&e.lastIndex===t.lastIndex&&e.ignoreCase===t.ignoreCase;if(isArguments(e)||isArguments(t)){if(!(isArguments(e)&&isArguments(t)))return!1;const{slice:d}=Array.prototype;return deepEquals(d.call(e),d.call(t),r,s)}if(e.constructor!==t.constructor)return!1;const a=Object.keys(e),n=Object.keys(t);if(a.length===0&&n.length===0)return!0;if(a.length!==n.length)return!1;let o=r.length;for(;o--;)if(r[o]===e)return s[o]===t;r.push(e),s.push(t),a.sort(),n.sort();for(let d=a.length-1;d>=0;d--)if(a[d]!==n[d])return!1;let i;for(let d=a.length-1;d>=0;d--)if(i=a[d],!deepEquals(e[i],t[i],r,s))return!1;return r.pop(),s.pop(),!0}function orderProperties(e,t){if(!Array.isArray(t)||!t.length)return e;const r=u=>u.reduce((f,w)=>(f[w]=!0,f),{}),s=u=>u.length>1?`properties '${u.join("', '")}'`:`property '${u[0]}'`,a=r(e),n=t.filter(u=>u==="*"||a[u]),o=r(n),i=e.filter(u=>!o[u]),d=n.indexOf("*");if(d===-1){if(i.length)throw new Error(`uiSchema order list does not contain ${s(i)}`);return n}if(d!==n.lastIndexOf("*"))throw new Error("uiSchema order list contains more than one wildcard item");const l=[...n];return l.splice(d,1,...i),l}const getCookie=e=>{const t=document.cookie.split(";");for(let r=0;r<t.length;r++){const s=t[r],[a,n]=s.split("=");if(a.trim()===e)return n}return null};function capitalizeFirstLetter(e){return e.charAt(0).toUpperCase()+e.slice(1)}const z=class z{constructor(){L(this,"widgets",new Map);L(this,"components",new Map);L(this,"fields",new Map)}addComponentsMap(t={}){this.addMap("components",t)}getComponent(t){return this.components.get(t)}addFieldsMap(t={}){this.addMap("fields",t)}getField(t){return this.fields.get(t)}addBaseWidgets(t={}){this.addMap("widgets",t)}getBaseWidget(t){if(!t){console.warn("base widget name is empty");return}return this.widgets.has(t)?this.widgets.get(t):t&&t.indexOf(z.namespace)!==0?vue.resolveComponent(`${z.namespace}-${t}`):vue.resolveComponent(t)}addMap(t,r){!t||!r||Object.entries(r).forEach(([s,a])=>{if(this[t].has(s)){console.warn("repeat key",s);return}typeof a=="string"?this[t].set(s,vue.resolveComponent(a)):this[t].set(s,a)})}};L(z,"namespace","bk"),L(z,"context",{});let Registry=z;const registry=new Registry,U=class U{static resolveRef(){}static resolveDependencies(){}static resolveAdditionalProperties(){}static resolveSchema(t){return isObj(t)?(hasOwnProperty(t,"allOf"),hasOwnProperty(t,"$ref"),t):{}}static getSchemaDefaultValue(t){const r=isObj(t)?t:{};switch(this.getSchemaType(r)){case"null":return null;case"object":return Object.keys(r.properties||{}).reduce((s,a)=>{var o;const n=this.getSchemaDefaultValue((o=r.properties)==null?void 0:o[a]);return s[a]=n,s},{});case"array":return r.default&&Array.isArray(r.default)?r.default:Array.isArray(r.items)?r.items.map(s=>this.getSchemaDefaultValue(s)):[]}return r.default!==void 0?r.default:initializationValue(r.type||"any")}static getSchemaType(t){const{type:r}=t;return!r&&t.const?valueType(t.const):!r&&t.enum?"string":!r&&t.items?"array":r}static getUiProps(t,r){return(!t||!t.startsWith("ui:"))&&console.warn("ui props must start with ui:"),r[t]||{}}static getSchemaField(t){var a,n;const r=t["ui:field"];if(r)return r;if((a=t.oneOf)!=null&&a.length)return{name:registry.getField("composition"),composition:"oneOf"};if((n=t.anyOf)!=null&&n.length)return{name:registry.getField("composition"),composition:"anyOf"};const s=registry.getField(this.getSchemaType(t));return s?{name:s}:{name:null}}static isMultiSelect(t){return!t.uniqueItems||!t.items?!1:Array.isArray(t.items.enum)}static isTupleArray(t){var r;return Array.isArray(t.items)&&((r=t.items)==null?void 0:r.length)>0&&t.items.every(s=>isObj(s))}static isCustomArrayWidget(t){var s;const r=(s=t["ui:component"])==null?void 0:s.name;return t.type==="array"&&r}static resolveFormComponent(t){return typeof t=="string"&&t?vue.resolveComponent(t):t}static getGroupWrap(t){const{name:r,...s}=t["ui:group"]||{};return{...s,name:this.resolveFormComponent(registry.getComponent(r)||r||registry.getComponent("group"))}}static getUiComponent(t){const{name:r,...s}=t["ui:component"]||{};return{name:this.resolveFormComponent(registry.getComponent(r)||r),...s}}static getDefaultWidget(t){var i,d,l,u;const r=this.getSchemaType(t);let s=null;if(r==="string"&&Array.isArray(t.enum)&&(s=registry.getComponent("select")),r==="array"&&U.isMultiSelect(t)&&(s=registry.getComponent("checkbox")),typeof r!="object"&&((i=t.oneOf)!=null&&i.length&&((d=t.oneOf)!=null&&d.every(f=>f.const))||(l=t.anyOf)!=null&&l.length&&((u=t.anyOf)!=null&&u.every(f=>f.const)))&&(s=registry.getComponent("select")),s)return s;const n={string:"input",number:"input",integer:"input",boolean:"switcher",null:""}[r],o=registry.getComponent(n)||registry.getBaseWidget(n);return o||(console.warn(`未注册类型${r}对应的默认表单项`),null)}static isRequired(t,r){return Array.isArray(t.required)&&t.required.includes(r)}static getUiOptions(t){const r={showTitle:!0,label:t.title,desc:t.description,minLength:t.minLength,maxLength:t.maxLength,...t["ui:props"]||{}};return{...r,description:r.desc||r.description,labelWidth:r.showTitle?r.labelWidth:.1}}static getDependencies(t,r){return Object.entries(t.dependencies||{}).find(s=>Array.isArray(s[1])&&s[1].includes(r))}static resolveDefaultDatasource(t){var r,s;if((r=t["ui:component"])!=null&&r.datasource)return t["ui:component"].datasource;if(Array.isArray(t.enum))return t.enum.map(n=>({value:n,label:n}));if(Array.isArray((s=t.items)==null?void 0:s.enum))return(t.items.enum||[]).map(n=>({value:n,label:n}));if(typeof t.type!="object"&&t.oneOf&&t.oneOf.every(a=>a.const))return t.oneOf.map(n=>({value:n.const,label:n.title||n.const}));if(typeof t.type!="object"&&t.anyOf&&t.anyOf.every(a=>a.const))return t.anyOf.map(n=>({value:n.const,label:n.title||n.const}))}constructor(t){U.rootSchema=t}};L(U,"rootSchema");let Schema=U;class Layout{constructor(t=[]){L(this,"layout");Array.isArray(t)?this.layout=this.parseLayout({prop:"",group:t}):this.layout=this.parseLayout(t)}static findLayoutByProp(t,r){let s;return r.find(a=>(s=a.find(n=>n.prop===t),s)),s}transformValueToPixel(t){return typeof t=="number"?`${t}px`:t}parseLayout(t){const r=this.getLayoutDimension(t.group),s=this.parseGridTemplate(r),a=(t.group||[]).map(i=>Array.isArray(i)?i.map(l=>typeof l=="string"||typeof l=="number"?{prop:l,item:{gridArea:l,overflow:"hidden"}}:typeof l=="object"&&Reflect.has(l,"group")?this.parseLayout(l):l):(console.error(`layout ${JSON.stringify(i)} error, must be a array`),[])),n=this.parseGridTemplateAreas(r,a);return{prop:t.prop||"",item:{gridArea:t.prop,overflow:"hidden",...t.item},container:{display:"grid",gridTemplateAreas:n,gridGap:"24px",...s,...t.container},group:a}}getLayoutDimension(t=[]){return t.reduce((r,s)=>(Array.isArray(s)||console.error(`layout ${JSON.stringify(s)} error, must be a array`),s&&(r.columns=Math.max(r.columns,s.length||0)),r.rows+=1,r),{columns:0,rows:0})}parseGridTemplate(t){return{gridTemplateColumns:this.repeatTemplate(t.columns,!1),gridTemplateRows:this.repeatTemplate(t.rows)}}parseGridTemplateAreas(t,r){return r.reduce((s,a)=>{const n=this.autoFillColumns(a,t.columns);return s.push(`"${n.join(" ")}"`),s},[]).join(`
2
+ `)}autoFillColumns(t,r){if(t.length===r)return t.map(n=>n.prop);const s=Math.floor((r-t.length)/t.length),a=t.reduce((n,o)=>{n.push(o.prop);const i=new Array(s).fill(o.prop);return n.concat(i)},[]);if(a.length<r){const n=new Array(r-a.length).fill(".");return a.concat(n)}return a}repeatTemplate(t,r=!0){return new Array(t+1).join(r?"auto ":"1fr ").trim()}}function createProxy(e,t){return new Proxy(e,{get(r,s,a){return typeof r[s]=="function"?r[s].apply(t):Reflect.get(r,s,a)}})}class Path{static getCurPath(t,r){return t===""?r:[t,r].join(this.separator)}static getPathVal(t,r,s=0){if(!r)return t;const a=r.split(this.separator);for(let n=0;n<a.length-s;n+=1){if(t===void 0)return;t=a[n]===""?t:t[a[n]]}return t}static setPathValue(t={},r,s){const a=JSON.parse(JSON.stringify(t)),n=r.split(this.separator),o=n.pop()||"";let i=a;return n.forEach(d=>{i[d]||(i[d]={}),i=i[d]}),i[o]=s,a}static getSubPath(t,r){return r.replace(`${t}.`,"")}static getPathLastProp(t){return t.split(this.separator).pop()}static getParentPath(t){const r=t.split(this.separator);return r.length<=1?"":r.slice(0,r.length-1).join(this.separator)}}L(Path,"separator",".");const methodsWithoutData=["GET","HEAD","OPTIONS","DELETE"],defaultConfig={responseType:"json",method:"GET",params:{},headers:{},cache:"no-cache"},request=async(e,t={})=>{const{params:r,responseType:s="json",method:a="GET",headers:n={},responseParse:o,...i}=mergeDeep(defaultConfig,t);let d,l=e;methodsWithoutData.includes(a.toUpperCase())?l=`${l}?${isObj(r)?new URLSearchParams(r):r||""}`:isObj(r)?(n["Content-Type"]="application/json;charset=utf-8",d=JSON.stringify(r)):d=r;try{const u=await fetch(l,{...i,method:a.toLocaleUpperCase(),headers:n,body:d});if(u.ok){const f=await u[s]();if(o){if(typeof o=="function")return Promise.resolve(o(f));if(isObj(o)){const{dataKey:w="data",labelKey:b,valueKey:y}=o,_=((f==null?void 0:f[w])||[]).map(m=>({...m,label:m==null?void 0:m[b],value:m==null?void 0:m[y]}));return Promise.resolve(_)}return Promise.resolve(f)}return Promise.resolve(f)}switch(u.status){case 400:break;case 401:break;case 403:case 500:break}}catch(u){console.error("Request Failed",u),Promise.reject(u)}},props$1={modelValue:{type:Object,default:()=>({})},rules:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},width:{type:[String,Number],default:"100%"},layout:{type:[Array,Object],default:()=>[]},formType:{type:String,default:"default"},context:{type:Object,default:()=>({})},httpAdapter:{type:Object,default:()=>({request,responseParse:e=>e})},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonlyMode:{type:String,default:"value",validator:e=>["value","custom"].includes(e)},labelWidth:{type:Number,default:150},showResetDefault:{type:Boolean,default:!1}},props={schema:{type:Object,default:()=>({})},path:{type:String,default:""},required:{type:Boolean,default:!1},rootData:{type:Object,default:()=>({})},modelValue:{type:[String,Number,Array,Object,Boolean]},layout:{type:Object,default:()=>({})},context:{type:Object,default:()=>({})},removeable:{type:Boolean,default:!1},httpAdapter:{type:Object,default:()=>({request,responseParse:e=>e})},visible:{type:Boolean,default:!0},error:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},readonlyMode:{type:String,default:"value",validator:e=>["value","custom"].includes(e)},showResetDefault:{type:Boolean,default:!1}},SchemaField=vue.defineComponent({name:"SchemaField",props,render(){const{schema:e,rootData:t,path:r}=this.$props,s=Schema.resolveSchema(e);if(!Object.keys(e).length)return null;const{name:a,...n}=Schema.getSchemaField(s);return a?vue.h(a,{...this.$attrs,...this.$props,...n,modelValue:Path.getPathVal(t,r),schema:s},this.$slots):null}}),getContext=e=>{const{context:t,loadDataSource:r,validate:s,schema:a,rootData:n,widgetNode:o}=e;return{$self:e,$context:t,$schema:a,$rules:a.rules,$loadDataSource:r,$validate:s,$rootData:n,$widgetNode:o}},executeExpression=(expression,instance,$dep=[])=>{const{$self,$context,$schema,$rules,$loadDataSource,$validate,$rootData,$widgetNode}=getContext(instance),context={$self,$context,$schema,$rules,$loadDataSource,$validate,$rootData,$widgetNode,$dep};if(typeof expression=="string"){if(!/^{{.+}}$/.test(expression.trim()))return expression;const expStr=expression.trim().replace(/(^{{)|(}}$)/g,"").trim(),innerFuncs=["$loadDataSource","$validate"],func=function({$self,$context,$schema,$rules,$loadDataSource,$validate,$rootData,$widgetNode,$dep}){try{return innerFuncs.includes(expStr)?eval(`${expStr}()`):eval(expStr)}catch(e){console.error(`execute ${expStr} error, please check.
3
+ `,e)}};return func(context)}if(isObj(expression))return Object.keys(expression).forEach(e=>{expression[e]=executeExpression(expression[e],instance)}),expression},isExpression=e=>typeof e=="string"&&/{{.*}}/.test(e);class WidgetNode{constructor(t){L(this,"id");L(this,"instance");L(this,"parent");L(this,"type");L(this,"index");L(this,"children");const{id:r,instance:s,parent:a,index:n,type:o,children:i=[]}=t;this.id=r,this.type=o,this.index=n,this.instance=s,this.parent=a,this.children=i}get value(){var t;return(t=this.instance)==null?void 0:t.value}get isChildrenVisible(){var t;return this.type==="node"?(t=this.instance)==null?void 0:t.state.visible:this.children.some(r=>r.isChildrenVisible)}get parents(){return this.parent?[...this.parent.parents,this.parent]:[]}get firstChild(){return this.children[0]||null}get lastChild(){return this.children[this.children.length-1]||null}getSibling(t){var a;const r=new RegExp(`${Path.getPathLastProp(this.id)||""}$`),s=this.id.replace(r,t);return(a=this.parent)==null?void 0:a.children.find(n=>n.id===s)}getSiblings(){var t;return((t=this.parent)==null?void 0:t.children.filter(r=>r.instance!==this.instance))||[]}get isLeaf(){return!this.children.length}appendChild(t){const r=Array.isArray(t)?t:[t],s=t.index!==void 0?t.index:this.children.length;return this.children.splice(s,0,...r),this.children.slice(s).forEach((a,n)=>{a.index=s+n}),r}removeChild(t){const r=Array.isArray(t)?t:[t],s=[];r.forEach(n=>{const{index:o}=n;s.push(o),this.children.splice(o,1)});const a=Math.min(...s);return this.children.slice(a).forEach((n,o)=>{n.index=a+o}),r}}class WidgetTree{constructor(){L(this,"widgetMap",{})}addWidgetNode(t,r,s,a){if(t===""){const n=new WidgetNode({id:"",type:s,index:a,parent:null,instance:r,children:[]});this.widgetMap[t]=n}else{const n=Path.getParentPath(t),o=this.widgetMap[n],i=new WidgetNode({id:(r==null?void 0:r.path)||t,type:s,index:a,parent:o,instance:r,children:[]});o?o.appendChild(i):console.warn("Unexpected parent id, please check widget node",i),this.widgetMap[t]=i}}removeWidgetNode(t,r){const s=this.widgetMap[t];if(s){if(s.parent){const{children:a}=s.parent,n=a.findIndex(o=>o.instance===r);n>-1&&(a.splice(n,1),a.slice(n).forEach((o,i)=>{o.index=n+i}))}s.instance===r&&delete this.widgetMap[t]}}}const widgetTree=new WidgetTree,reactionsMap={},subscribe=(e,t,r)=>{if(reactionsMap[e]||(reactionsMap[e]={lifetime:{},effect:{},fns:[]}),t==="valChange")reactionsMap[e].fns.push(r);else{const[s,a]=t.split("/");reactionsMap[e][s][a]?reactionsMap[e][s][a].push(r):reactionsMap[e][s][a]=[r]}},resolveReaction=(e,t,r)=>()=>{const{instance:s}=widgetTree.widgetMap[e]||{},{instance:a}=widgetTree.widgetMap[t]||{};let n=!0;const o=[];r.source&&(Array.isArray(r.source)?r.source:[r.source]).forEach(l=>{const{instance:u}=widgetTree.widgetMap[parsePath(l,e)];o.push(u)}),typeof r.if=="string"&&(n=executeExpression(r.if,s,o));const i=n?r.then:r.else;executeOperations(i,a,o)},executeOperations=(e,t,r)=>{e&&(e.state&&Object.keys(e.state).forEach(s=>{let a=e.state[s];typeof a=="string"&&/^{{.+}}$/.test(a.trim())&&(a=executeExpression(a,t,r)),t.setState(s,a)}),Array.isArray(e.actions)&&e.actions.forEach(s=>{executeExpression(s,t,r)}))},parsePath=(e,t)=>isExpression(e)?executeExpression(e,t):e,reactionRegister=(e,t=[])=>{const{instance:r}=widgetTree.widgetMap[e]||{};t&&Array.isArray(t)&&t.forEach(s=>{const a=s.source?Array.isArray(s.source)?s.source:[s.source]:[e],n=parsePath(typeof s.target=="string"?s.target:e,r);a.forEach(o=>{const i=parsePath(o,r);typeof s.lifetime=="string"&&subscribe(i,`lifetime/${s.lifetime}`,resolveReaction(e,n,s)),typeof s.effect=="string"&&subscribe(i,`effect/${s.effect}`,resolveReaction(e,n,s)),!s.lifetime&&!s.effect&&subscribe(i,"valChange",resolveReaction(e,n,s))})})},reactionUnRegister=e=>{delete reactionsMap[e]},reactionDispatch=(e,t)=>{var n,o;const[r="",s=""]=t.split("/");let a=[];reactionsMap[e]&&(r==="valChange"?a=reactionsMap[e].fns:(o=(n=reactionsMap[e])==null?void 0:n[r])!=null&&o[s]&&(a=reactionsMap[e][r][s]),a.forEach(i=>{i()}))};function getDefaultExportFromCjs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ajv$1={exports:{}},core$2={},validate$1={},boolSchema={},errors={},codegen={},code$1={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.regexpCode=e.getEsmExportName=e.getProperty=e.safeStringify=e.stringify=e.strConcat=e.addCodeArg=e.str=e._=e.nil=e._Code=e.Name=e.IDENTIFIER=e._CodeOrName=void 0;class t{}e._CodeOrName=t,e.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class r extends t{constructor(g){if(super(),!e.IDENTIFIER.test(g))throw new Error("CodeGen: name must be a valid identifier");this.str=g}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}e.Name=r;class s extends t{constructor(g){super(),this._items=typeof g=="string"?[g]:g}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;const g=this._items[0];return g===""||g==='""'}get str(){var g;return(g=this._str)!==null&&g!==void 0?g:this._str=this._items.reduce((E,k)=>`${E}${k}`,"")}get names(){var g;return(g=this._names)!==null&&g!==void 0?g:this._names=this._items.reduce((E,k)=>(k instanceof r&&(E[k.str]=(E[k.str]||0)+1),E),{})}}e._Code=s,e.nil=new s("");function a(p,...g){const E=[p[0]];let k=0;for(;k<g.length;)i(E,g[k]),E.push(p[++k]);return new s(E)}e._=a;const n=new s("+");function o(p,...g){const E=[b(p[0])];let k=0;for(;k<g.length;)E.push(n),i(E,g[k]),E.push(n,b(p[++k]));return d(E),new s(E)}e.str=o;function i(p,g){g instanceof s?p.push(...g._items):g instanceof r?p.push(g):p.push(f(g))}e.addCodeArg=i;function d(p){let g=1;for(;g<p.length-1;){if(p[g]===n){const E=l(p[g-1],p[g+1]);if(E!==void 0){p.splice(g-1,3,E);continue}p[g++]="+"}g++}}function l(p,g){if(g==='""')return p;if(p==='""')return g;if(typeof p=="string")return g instanceof r||p[p.length-1]!=='"'?void 0:typeof g!="string"?`${p.slice(0,-1)}${g}"`:g[0]==='"'?p.slice(0,-1)+g.slice(1):void 0;if(typeof g=="string"&&g[0]==='"'&&!(p instanceof r))return`"${p}${g.slice(1)}`}function u(p,g){return g.emptyStr()?p:p.emptyStr()?g:o`${p}${g}`}e.strConcat=u;function f(p){return typeof p=="number"||typeof p=="boolean"||p===null?p:b(Array.isArray(p)?p.join(","):p)}function w(p){return new s(b(p))}e.stringify=w;function b(p){return JSON.stringify(p).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}e.safeStringify=b;function y(p){return typeof p=="string"&&e.IDENTIFIER.test(p)?new s(`.${p}`):a`[${p}]`}e.getProperty=y;function _(p){if(typeof p=="string"&&e.IDENTIFIER.test(p))return new s(`${p}`);throw new Error(`CodeGen: invalid export name: ${p}, use explicit $id name mapping`)}e.getEsmExportName=_;function m(p){return new s(p.toString())}e.regexpCode=m})(code$1);var scope={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ValueScope=e.ValueScopeName=e.Scope=e.varKinds=e.UsedValueState=void 0;const t=code$1;class r extends Error{constructor(l){super(`CodeGen: "code" for ${l} not defined`),this.value=l.value}}var s;(function(d){d[d.Started=0]="Started",d[d.Completed=1]="Completed"})(s||(e.UsedValueState=s={})),e.varKinds={const:new t.Name("const"),let:new t.Name("let"),var:new t.Name("var")};class a{constructor({prefixes:l,parent:u}={}){this._names={},this._prefixes=l,this._parent=u}toName(l){return l instanceof t.Name?l:this.name(l)}name(l){return new t.Name(this._newName(l))}_newName(l){const u=this._names[l]||this._nameGroup(l);return`${l}${u.index++}`}_nameGroup(l){var u,f;if(!((f=(u=this._parent)===null||u===void 0?void 0:u._prefixes)===null||f===void 0)&&f.has(l)||this._prefixes&&!this._prefixes.has(l))throw new Error(`CodeGen: prefix "${l}" is not allowed in this scope`);return this._names[l]={prefix:l,index:0}}}e.Scope=a;class n extends t.Name{constructor(l,u){super(u),this.prefix=l}setValue(l,{property:u,itemIndex:f}){this.value=l,this.scopePath=(0,t._)`.${new t.Name(u)}[${f}]`}}e.ValueScopeName=n;const o=(0,t._)`\n`;class i extends a{constructor(l){super(l),this._values={},this._scope=l.scope,this.opts={...l,_n:l.lines?o:t.nil}}get(){return this._scope}name(l){return new n(l,this._newName(l))}value(l,u){var f;if(u.ref===void 0)throw new Error("CodeGen: ref must be passed in value");const w=this.toName(l),{prefix:b}=w,y=(f=u.key)!==null&&f!==void 0?f:u.ref;let _=this._values[b];if(_){const g=_.get(y);if(g)return g}else _=this._values[b]=new Map;_.set(y,w);const m=this._scope[b]||(this._scope[b]=[]),p=m.length;return m[p]=u.ref,w.setValue(u,{property:b,itemIndex:p}),w}getValue(l,u){const f=this._values[l];if(f)return f.get(u)}scopeRefs(l,u=this._values){return this._reduceValues(u,f=>{if(f.scopePath===void 0)throw new Error(`CodeGen: name "${f}" has no value`);return(0,t._)`${l}${f.scopePath}`})}scopeCode(l=this._values,u,f){return this._reduceValues(l,w=>{if(w.value===void 0)throw new Error(`CodeGen: name "${w}" has no value`);return w.value.code},u,f)}_reduceValues(l,u,f={},w){let b=t.nil;for(const y in l){const _=l[y];if(!_)continue;const m=f[y]=f[y]||new Map;_.forEach(p=>{if(m.has(p))return;m.set(p,s.Started);let g=u(p);if(g){const E=this.opts.es5?e.varKinds.var:e.varKinds.const;b=(0,t._)`${b}${E} ${p} = ${g};${this.opts._n}`}else if(g=w==null?void 0:w(p))b=(0,t._)`${b}${g}${this.opts._n}`;else throw new r(p);m.set(p,s.Completed)})}return b}}e.ValueScope=i})(scope),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.or=e.and=e.not=e.CodeGen=e.operators=e.varKinds=e.ValueScopeName=e.ValueScope=e.Scope=e.Name=e.regexpCode=e.stringify=e.getProperty=e.nil=e.strConcat=e.str=e._=void 0;const t=code$1,r=scope;var s=code$1;Object.defineProperty(e,"_",{enumerable:!0,get:function(){return s._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return s.str}}),Object.defineProperty(e,"strConcat",{enumerable:!0,get:function(){return s.strConcat}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return s.nil}}),Object.defineProperty(e,"getProperty",{enumerable:!0,get:function(){return s.getProperty}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return s.stringify}}),Object.defineProperty(e,"regexpCode",{enumerable:!0,get:function(){return s.regexpCode}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return s.Name}});var a=scope;Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return a.Scope}}),Object.defineProperty(e,"ValueScope",{enumerable:!0,get:function(){return a.ValueScope}}),Object.defineProperty(e,"ValueScopeName",{enumerable:!0,get:function(){return a.ValueScopeName}}),Object.defineProperty(e,"varKinds",{enumerable:!0,get:function(){return a.varKinds}}),e.operators={GT:new t._Code(">"),GTE:new t._Code(">="),LT:new t._Code("<"),LTE:new t._Code("<="),EQ:new t._Code("==="),NEQ:new t._Code("!=="),NOT:new t._Code("!"),OR:new t._Code("||"),AND:new t._Code("&&"),ADD:new t._Code("+")};class n{optimizeNodes(){return this}optimizeNames(c,h){return this}}class o extends n{constructor(c,h,S){super(),this.varKind=c,this.name=h,this.rhs=S}render({es5:c,_n:h}){const S=c?r.varKinds.var:this.varKind,N=this.rhs===void 0?"":` = ${this.rhs}`;return`${S} ${this.name}${N};`+h}optimizeNames(c,h){if(c[this.name.str])return this.rhs&&(this.rhs=x(this.rhs,c,h)),this}get names(){return this.rhs instanceof t._CodeOrName?this.rhs.names:{}}}class i extends n{constructor(c,h,S){super(),this.lhs=c,this.rhs=h,this.sideEffects=S}render({_n:c}){return`${this.lhs} = ${this.rhs};`+c}optimizeNames(c,h){if(!(this.lhs instanceof t.Name&&!c[this.lhs.str]&&!this.sideEffects))return this.rhs=x(this.rhs,c,h),this}get names(){const c=this.lhs instanceof t.Name?{}:{...this.lhs.names};return K(c,this.rhs)}}class d extends i{constructor(c,h,S,N){super(c,S,N),this.op=h}render({_n:c}){return`${this.lhs} ${this.op}= ${this.rhs};`+c}}class l extends n{constructor(c){super(),this.label=c,this.names={}}render({_n:c}){return`${this.label}:`+c}}class u extends n{constructor(c){super(),this.label=c,this.names={}}render({_n:c}){return`break${this.label?` ${this.label}`:""};`+c}}class f extends n{constructor(c){super(),this.error=c}render({_n:c}){return`throw ${this.error};`+c}get names(){return this.error.names}}class w extends n{constructor(c){super(),this.code=c}render({_n:c}){return`${this.code};`+c}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(c,h){return this.code=x(this.code,c,h),this}get names(){return this.code instanceof t._CodeOrName?this.code.names:{}}}class b extends n{constructor(c=[]){super(),this.nodes=c}render(c){return this.nodes.reduce((h,S)=>h+S.render(c),"")}optimizeNodes(){const{nodes:c}=this;let h=c.length;for(;h--;){const S=c[h].optimizeNodes();Array.isArray(S)?c.splice(h,1,...S):S?c[h]=S:c.splice(h,1)}return c.length>0?this:void 0}optimizeNames(c,h){const{nodes:S}=this;let N=S.length;for(;N--;){const j=S[N];j.optimizeNames(c,h)||(G(c,j.names),S.splice(N,1))}return S.length>0?this:void 0}get names(){return this.nodes.reduce((c,h)=>A(c,h.names),{})}}class y extends b{render(c){return"{"+c._n+super.render(c)+"}"+c._n}}class _ extends b{}class m extends y{}m.kind="else";class p extends y{constructor(c,h){super(h),this.condition=c}render(c){let h=`if(${this.condition})`+super.render(c);return this.else&&(h+="else "+this.else.render(c)),h}optimizeNodes(){super.optimizeNodes();const c=this.condition;if(c===!0)return this.nodes;let h=this.else;if(h){const S=h.optimizeNodes();h=this.else=Array.isArray(S)?new m(S):S}if(h)return c===!1?h instanceof p?h:h.nodes:this.nodes.length?this:new p(J(c),h instanceof p?[h]:h.nodes);if(!(c===!1||!this.nodes.length))return this}optimizeNames(c,h){var S;if(this.else=(S=this.else)===null||S===void 0?void 0:S.optimizeNames(c,h),!!(super.optimizeNames(c,h)||this.else))return this.condition=x(this.condition,c,h),this}get names(){const c=super.names;return K(c,this.condition),this.else&&A(c,this.else.names),c}}p.kind="if";class g extends y{}g.kind="for";class E extends g{constructor(c){super(),this.iteration=c}render(c){return`for(${this.iteration})`+super.render(c)}optimizeNames(c,h){if(super.optimizeNames(c,h))return this.iteration=x(this.iteration,c,h),this}get names(){return A(super.names,this.iteration.names)}}class k extends g{constructor(c,h,S,N){super(),this.varKind=c,this.name=h,this.from=S,this.to=N}render(c){const h=c.es5?r.varKinds.var:this.varKind,{name:S,from:N,to:j}=this;return`for(${h} ${S}=${N}; ${S}<${j}; ${S}++)`+super.render(c)}get names(){const c=K(super.names,this.from);return K(c,this.to)}}class T extends g{constructor(c,h,S,N){super(),this.loop=c,this.varKind=h,this.name=S,this.iterable=N}render(c){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(c)}optimizeNames(c,h){if(super.optimizeNames(c,h))return this.iterable=x(this.iterable,c,h),this}get names(){return A(super.names,this.iterable.names)}}class I extends y{constructor(c,h,S){super(),this.name=c,this.args=h,this.async=S}render(c){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(c)}}I.kind="func";class M extends b{render(c){return"return "+super.render(c)}}M.kind="return";class W extends y{render(c){let h="try"+super.render(c);return this.catch&&(h+=this.catch.render(c)),this.finally&&(h+=this.finally.render(c)),h}optimizeNodes(){var c,h;return super.optimizeNodes(),(c=this.catch)===null||c===void 0||c.optimizeNodes(),(h=this.finally)===null||h===void 0||h.optimizeNodes(),this}optimizeNames(c,h){var S,N;return super.optimizeNames(c,h),(S=this.catch)===null||S===void 0||S.optimizeNames(c,h),(N=this.finally)===null||N===void 0||N.optimizeNames(c,h),this}get names(){const c=super.names;return this.catch&&A(c,this.catch.names),this.finally&&A(c,this.finally.names),c}}class C extends y{constructor(c){super(),this.error=c}render(c){return`catch(${this.error})`+super.render(c)}}C.kind="catch";class R extends y{render(c){return"finally"+super.render(c)}}R.kind="finally";class F{constructor(c,h={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...h,_n:h.lines?`
4
+ `:""},this._extScope=c,this._scope=new r.Scope({parent:c}),this._nodes=[new _]}toString(){return this._root.render(this.opts)}name(c){return this._scope.name(c)}scopeName(c){return this._extScope.name(c)}scopeValue(c,h){const S=this._extScope.value(c,h);return(this._values[S.prefix]||(this._values[S.prefix]=new Set)).add(S),S}getScopeValue(c,h){return this._extScope.getValue(c,h)}scopeRefs(c){return this._extScope.scopeRefs(c,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(c,h,S,N){const j=this._scope.toName(h);return S!==void 0&&N&&(this._constants[j.str]=S),this._leafNode(new o(c,j,S)),j}const(c,h,S){return this._def(r.varKinds.const,c,h,S)}let(c,h,S){return this._def(r.varKinds.let,c,h,S)}var(c,h,S){return this._def(r.varKinds.var,c,h,S)}assign(c,h,S){return this._leafNode(new i(c,h,S))}add(c,h){return this._leafNode(new d(c,e.operators.ADD,h))}code(c){return typeof c=="function"?c():c!==t.nil&&this._leafNode(new w(c)),this}object(...c){const h=["{"];for(const[S,N]of c)h.length>1&&h.push(","),h.push(S),(S!==N||this.opts.es5)&&(h.push(":"),(0,t.addCodeArg)(h,N));return h.push("}"),new t._Code(h)}if(c,h,S){if(this._blockNode(new p(c)),h&&S)this.code(h).else().code(S).endIf();else if(h)this.code(h).endIf();else if(S)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(c){return this._elseNode(new p(c))}else(){return this._elseNode(new m)}endIf(){return this._endBlockNode(p,m)}_for(c,h){return this._blockNode(c),h&&this.code(h).endFor(),this}for(c,h){return this._for(new E(c),h)}forRange(c,h,S,N,j=this.opts.es5?r.varKinds.var:r.varKinds.let){const V=this._scope.toName(c);return this._for(new k(j,V,h,S),()=>N(V))}forOf(c,h,S,N=r.varKinds.const){const j=this._scope.toName(c);if(this.opts.es5){const V=h instanceof t.Name?h:this.var("_arr",h);return this.forRange("_i",0,(0,t._)`${V}.length`,D=>{this.var(j,(0,t._)`${V}[${D}]`),S(j)})}return this._for(new T("of",N,j,h),()=>S(j))}forIn(c,h,S,N=this.opts.es5?r.varKinds.var:r.varKinds.const){if(this.opts.ownProperties)return this.forOf(c,(0,t._)`Object.keys(${h})`,S);const j=this._scope.toName(c);return this._for(new T("in",N,j,h),()=>S(j))}endFor(){return this._endBlockNode(g)}label(c){return this._leafNode(new l(c))}break(c){return this._leafNode(new u(c))}return(c){const h=new M;if(this._blockNode(h),this.code(c),h.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(M)}try(c,h,S){if(!h&&!S)throw new Error('CodeGen: "try" without "catch" and "finally"');const N=new W;if(this._blockNode(N),this.code(c),h){const j=this.name("e");this._currNode=N.catch=new C(j),h(j)}return S&&(this._currNode=N.finally=new R,this.code(S)),this._endBlockNode(C,R)}throw(c){return this._leafNode(new f(c))}block(c,h){return this._blockStarts.push(this._nodes.length),c&&this.code(c).endBlock(h),this}endBlock(c){const h=this._blockStarts.pop();if(h===void 0)throw new Error("CodeGen: not in self-balancing block");const S=this._nodes.length-h;if(S<0||c!==void 0&&S!==c)throw new Error(`CodeGen: wrong number of nodes: ${S} vs ${c} expected`);return this._nodes.length=h,this}func(c,h=t.nil,S,N){return this._blockNode(new I(c,h,S)),N&&this.code(N).endFunc(),this}endFunc(){return this._endBlockNode(I)}optimize(c=1){for(;c-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(c){return this._currNode.nodes.push(c),this}_blockNode(c){this._currNode.nodes.push(c),this._nodes.push(c)}_endBlockNode(c,h){const S=this._currNode;if(S instanceof c||h&&S instanceof h)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${h?`${c.kind}/${h.kind}`:c.kind}"`)}_elseNode(c){const h=this._currNode;if(!(h instanceof p))throw new Error('CodeGen: "else" without "if"');return this._currNode=h.else=c,this}get _root(){return this._nodes[0]}get _currNode(){const c=this._nodes;return c[c.length-1]}set _currNode(c){const h=this._nodes;h[h.length-1]=c}}e.CodeGen=F;function A(v,c){for(const h in c)v[h]=(v[h]||0)+(c[h]||0);return v}function K(v,c){return c instanceof t._CodeOrName?A(v,c.names):v}function x(v,c,h){if(v instanceof t.Name)return S(v);if(!N(v))return v;return new t._Code(v._items.reduce((j,V)=>(V instanceof t.Name&&(V=S(V)),V instanceof t._Code?j.push(...V._items):j.push(V),j),[]));function S(j){const V=h[j.str];return V===void 0||c[j.str]!==1?j:(delete c[j.str],V)}function N(j){return j instanceof t._Code&&j._items.some(V=>V instanceof t.Name&&c[V.str]===1&&h[V.str]!==void 0)}}function G(v,c){for(const h in c)v[h]=(v[h]||0)-(c[h]||0)}function J(v){return typeof v=="boolean"||typeof v=="number"||v===null?!v:(0,t._)`!${P(v)}`}e.not=J;const Z=$(e.operators.AND);function Y(...v){return v.reduce(Z)}e.and=Y;const X=$(e.operators.OR);function O(...v){return v.reduce(X)}e.or=O;function $(v){return(c,h)=>c===t.nil?h:h===t.nil?c:(0,t._)`${P(c)} ${v} ${P(h)}`}function P(v){return v instanceof t.Name?v:(0,t._)`(${v})`}}(codegen);var util={};Object.defineProperty(util,"__esModule",{value:!0}),util.checkStrictMode=util.getErrorPath=util.Type=util.useFunc=util.setEvaluated=util.evaluatedPropsToName=util.mergeEvaluated=util.eachItem=util.unescapeJsonPointer=util.escapeJsonPointer=util.escapeFragment=util.unescapeFragment=util.schemaRefOrVal=util.schemaHasRulesButRef=util.schemaHasRules=util.checkUnknownRules=util.alwaysValidSchema=util.toHash=void 0;const codegen_1$v=codegen,code_1$a=code$1;function toHash(e){const t={};for(const r of e)t[r]=!0;return t}util.toHash=toHash;function alwaysValidSchema(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(checkUnknownRules(e,t),!schemaHasRules(t,e.self.RULES.all))}util.alwaysValidSchema=alwaysValidSchema;function checkUnknownRules(e,t=e.schema){const{opts:r,self:s}=e;if(!r.strictSchema||typeof t=="boolean")return;const a=s.RULES.keywords;for(const n in t)a[n]||checkStrictMode(e,`unknown keyword: "${n}"`)}util.checkUnknownRules=checkUnknownRules;function schemaHasRules(e,t){if(typeof e=="boolean")return!e;for(const r in e)if(t[r])return!0;return!1}util.schemaHasRules=schemaHasRules;function schemaHasRulesButRef(e,t){if(typeof e=="boolean")return!e;for(const r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}util.schemaHasRulesButRef=schemaHasRulesButRef;function schemaRefOrVal({topSchemaRef:e,schemaPath:t},r,s,a){if(!a){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,codegen_1$v._)`${r}`}return(0,codegen_1$v._)`${e}${t}${(0,codegen_1$v.getProperty)(s)}`}util.schemaRefOrVal=schemaRefOrVal;function unescapeFragment(e){return unescapeJsonPointer(decodeURIComponent(e))}util.unescapeFragment=unescapeFragment;function escapeFragment(e){return encodeURIComponent(escapeJsonPointer(e))}util.escapeFragment=escapeFragment;function escapeJsonPointer(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}util.escapeJsonPointer=escapeJsonPointer;function unescapeJsonPointer(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}util.unescapeJsonPointer=unescapeJsonPointer;function eachItem(e,t){if(Array.isArray(e))for(const r of e)t(r);else t(e)}util.eachItem=eachItem;function makeMergeEvaluated({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:s}){return(a,n,o,i)=>{const d=o===void 0?n:o instanceof codegen_1$v.Name?(n instanceof codegen_1$v.Name?e(a,n,o):t(a,n,o),o):n instanceof codegen_1$v.Name?(t(a,o,n),n):r(n,o);return i===codegen_1$v.Name&&!(d instanceof codegen_1$v.Name)?s(a,d):d}}util.mergeEvaluated={props:makeMergeEvaluated({mergeNames:(e,t,r)=>e.if((0,codegen_1$v._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,codegen_1$v._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,codegen_1$v._)`${r} || {}`).code((0,codegen_1$v._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,codegen_1$v._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,codegen_1$v._)`${r} || {}`),setEvaluated(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:evaluatedPropsToName}),items:makeMergeEvaluated({mergeNames:(e,t,r)=>e.if((0,codegen_1$v._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,codegen_1$v._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,codegen_1$v._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,codegen_1$v._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function evaluatedPropsToName(e,t){if(t===!0)return e.var("props",!0);const r=e.var("props",(0,codegen_1$v._)`{}`);return t!==void 0&&setEvaluated(e,r,t),r}util.evaluatedPropsToName=evaluatedPropsToName;function setEvaluated(e,t,r){Object.keys(r).forEach(s=>e.assign((0,codegen_1$v._)`${t}${(0,codegen_1$v.getProperty)(s)}`,!0))}util.setEvaluated=setEvaluated;const snippets={};function useFunc(e,t){return e.scopeValue("func",{ref:t,code:snippets[t.code]||(snippets[t.code]=new code_1$a._Code(t.code))})}util.useFunc=useFunc;var Type;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Type||(util.Type=Type={}));function getErrorPath(e,t,r){if(e instanceof codegen_1$v.Name){const s=t===Type.Num;return r?s?(0,codegen_1$v._)`"[" + ${e} + "]"`:(0,codegen_1$v._)`"['" + ${e} + "']"`:s?(0,codegen_1$v._)`"/" + ${e}`:(0,codegen_1$v._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,codegen_1$v.getProperty)(e).toString():"/"+escapeJsonPointer(e)}util.getErrorPath=getErrorPath;function checkStrictMode(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}util.checkStrictMode=checkStrictMode;var names$1={};Object.defineProperty(names$1,"__esModule",{value:!0});const codegen_1$u=codegen,names={data:new codegen_1$u.Name("data"),valCxt:new codegen_1$u.Name("valCxt"),instancePath:new codegen_1$u.Name("instancePath"),parentData:new codegen_1$u.Name("parentData"),parentDataProperty:new codegen_1$u.Name("parentDataProperty"),rootData:new codegen_1$u.Name("rootData"),dynamicAnchors:new codegen_1$u.Name("dynamicAnchors"),vErrors:new codegen_1$u.Name("vErrors"),errors:new codegen_1$u.Name("errors"),this:new codegen_1$u.Name("this"),self:new codegen_1$u.Name("self"),scope:new codegen_1$u.Name("scope"),json:new codegen_1$u.Name("json"),jsonPos:new codegen_1$u.Name("jsonPos"),jsonLen:new codegen_1$u.Name("jsonLen"),jsonPart:new codegen_1$u.Name("jsonPart")};names$1.default=names,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.extendErrors=e.resetErrorsCount=e.reportExtraError=e.reportError=e.keyword$DataError=e.keywordError=void 0;const t=codegen,r=util,s=names$1;e.keywordError={message:({keyword:m})=>(0,t.str)`must pass "${m}" keyword validation`},e.keyword$DataError={message:({keyword:m,schemaType:p})=>p?(0,t.str)`"${m}" keyword must be ${p} ($data)`:(0,t.str)`"${m}" keyword is invalid ($data)`};function a(m,p=e.keywordError,g,E){const{it:k}=m,{gen:T,compositeRule:I,allErrors:M}=k,W=f(m,p,g);E??(I||M)?d(T,W):l(k,(0,t._)`[${W}]`)}e.reportError=a;function n(m,p=e.keywordError,g){const{it:E}=m,{gen:k,compositeRule:T,allErrors:I}=E,M=f(m,p,g);d(k,M),T||I||l(E,s.default.vErrors)}e.reportExtraError=n;function o(m,p){m.assign(s.default.errors,p),m.if((0,t._)`${s.default.vErrors} !== null`,()=>m.if(p,()=>m.assign((0,t._)`${s.default.vErrors}.length`,p),()=>m.assign(s.default.vErrors,null)))}e.resetErrorsCount=o;function i({gen:m,keyword:p,schemaValue:g,data:E,errsCount:k,it:T}){if(k===void 0)throw new Error("ajv implementation error");const I=m.name("err");m.forRange("i",k,s.default.errors,M=>{m.const(I,(0,t._)`${s.default.vErrors}[${M}]`),m.if((0,t._)`${I}.instancePath === undefined`,()=>m.assign((0,t._)`${I}.instancePath`,(0,t.strConcat)(s.default.instancePath,T.errorPath))),m.assign((0,t._)`${I}.schemaPath`,(0,t.str)`${T.errSchemaPath}/${p}`),T.opts.verbose&&(m.assign((0,t._)`${I}.schema`,g),m.assign((0,t._)`${I}.data`,E))})}e.extendErrors=i;function d(m,p){const g=m.const("err",p);m.if((0,t._)`${s.default.vErrors} === null`,()=>m.assign(s.default.vErrors,(0,t._)`[${g}]`),(0,t._)`${s.default.vErrors}.push(${g})`),m.code((0,t._)`${s.default.errors}++`)}function l(m,p){const{gen:g,validateName:E,schemaEnv:k}=m;k.$async?g.throw((0,t._)`new ${m.ValidationError}(${p})`):(g.assign((0,t._)`${E}.errors`,p),g.return(!1))}const u={keyword:new t.Name("keyword"),schemaPath:new t.Name("schemaPath"),params:new t.Name("params"),propertyName:new t.Name("propertyName"),message:new t.Name("message"),schema:new t.Name("schema"),parentSchema:new t.Name("parentSchema")};function f(m,p,g){const{createErrors:E}=m.it;return E===!1?(0,t._)`{}`:w(m,p,g)}function w(m,p,g={}){const{gen:E,it:k}=m,T=[b(k,g),y(m,g)];return _(m,p,T),E.object(...T)}function b({errorPath:m},{instancePath:p}){const g=p?(0,t.str)`${m}${(0,r.getErrorPath)(p,r.Type.Str)}`:m;return[s.default.instancePath,(0,t.strConcat)(s.default.instancePath,g)]}function y({keyword:m,it:{errSchemaPath:p}},{schemaPath:g,parentSchema:E}){let k=E?p:(0,t.str)`${p}/${m}`;return g&&(k=(0,t.str)`${k}${(0,r.getErrorPath)(g,r.Type.Str)}`),[u.schemaPath,k]}function _(m,{params:p,message:g},E){const{keyword:k,data:T,schemaValue:I,it:M}=m,{opts:W,propertyName:C,topSchemaRef:R,schemaPath:F}=M;E.push([u.keyword,k],[u.params,typeof p=="function"?p(m):p||(0,t._)`{}`]),W.messages&&E.push([u.message,typeof g=="function"?g(m):g]),W.verbose&&E.push([u.schema,I],[u.parentSchema,(0,t._)`${R}${F}`],[s.default.data,T]),C&&E.push([u.propertyName,C])}}(errors),Object.defineProperty(boolSchema,"__esModule",{value:!0}),boolSchema.boolOrEmptySchema=boolSchema.topBoolOrEmptySchema=void 0;const errors_1$3=errors,codegen_1$t=codegen,names_1$6=names$1,boolError={message:"boolean schema is false"};function topBoolOrEmptySchema(e){const{gen:t,schema:r,validateName:s}=e;r===!1?falseSchemaError(e,!1):typeof r=="object"&&r.$async===!0?t.return(names_1$6.default.data):(t.assign((0,codegen_1$t._)`${s}.errors`,null),t.return(!0))}boolSchema.topBoolOrEmptySchema=topBoolOrEmptySchema;function boolOrEmptySchema(e,t){const{gen:r,schema:s}=e;s===!1?(r.var(t,!1),falseSchemaError(e)):r.var(t,!0)}boolSchema.boolOrEmptySchema=boolOrEmptySchema;function falseSchemaError(e,t){const{gen:r,data:s}=e,a={gen:r,keyword:"false schema",data:s,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,errors_1$3.reportError)(a,boolError,void 0,t)}var dataType={},rules={};Object.defineProperty(rules,"__esModule",{value:!0}),rules.getRules=rules.isJSONType=void 0;const _jsonTypes=["string","number","integer","boolean","null","object","array"],jsonTypes=new Set(_jsonTypes);function isJSONType(e){return typeof e=="string"&&jsonTypes.has(e)}rules.isJSONType=isJSONType;function getRules(){const e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}rules.getRules=getRules;var applicability={};Object.defineProperty(applicability,"__esModule",{value:!0}),applicability.shouldUseRule=applicability.shouldUseGroup=applicability.schemaHasRulesForType=void 0;function schemaHasRulesForType({schema:e,self:t},r){const s=t.RULES.types[r];return s&&s!==!0&&shouldUseGroup(e,s)}applicability.schemaHasRulesForType=schemaHasRulesForType;function shouldUseGroup(e,t){return t.rules.some(r=>shouldUseRule(e,r))}applicability.shouldUseGroup=shouldUseGroup;function shouldUseRule(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(s=>e[s]!==void 0))}applicability.shouldUseRule=shouldUseRule,Object.defineProperty(dataType,"__esModule",{value:!0}),dataType.reportTypeError=dataType.checkDataTypes=dataType.checkDataType=dataType.coerceAndCheckDataType=dataType.getJSONTypes=dataType.getSchemaTypes=dataType.DataType=void 0;const rules_1=rules,applicability_1$1=applicability,errors_1$2=errors,codegen_1$s=codegen,util_1$q=util;var DataType;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(DataType||(dataType.DataType=DataType={}));function getSchemaTypes(e){const t=getJSONTypes(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}dataType.getSchemaTypes=getSchemaTypes;function getJSONTypes(e){const t=Array.isArray(e)?e:e?[e]:[];if(t.every(rules_1.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}dataType.getJSONTypes=getJSONTypes;function coerceAndCheckDataType(e,t){const{gen:r,data:s,opts:a}=e,n=coerceToTypes(t,a.coerceTypes),o=t.length>0&&!(n.length===0&&t.length===1&&(0,applicability_1$1.schemaHasRulesForType)(e,t[0]));if(o){const i=checkDataTypes(t,s,a.strictNumbers,DataType.Wrong);r.if(i,()=>{n.length?coerceData(e,t,n):reportTypeError(e)})}return o}dataType.coerceAndCheckDataType=coerceAndCheckDataType;const COERCIBLE=new Set(["string","number","integer","boolean","null"]);function coerceToTypes(e,t){return t?e.filter(r=>COERCIBLE.has(r)||t==="array"&&r==="array"):[]}function coerceData(e,t,r){const{gen:s,data:a,opts:n}=e,o=s.let("dataType",(0,codegen_1$s._)`typeof ${a}`),i=s.let("coerced",(0,codegen_1$s._)`undefined`);n.coerceTypes==="array"&&s.if((0,codegen_1$s._)`${o} == 'object' && Array.isArray(${a}) && ${a}.length == 1`,()=>s.assign(a,(0,codegen_1$s._)`${a}[0]`).assign(o,(0,codegen_1$s._)`typeof ${a}`).if(checkDataTypes(t,a,n.strictNumbers),()=>s.assign(i,a))),s.if((0,codegen_1$s._)`${i} !== undefined`);for(const l of r)(COERCIBLE.has(l)||l==="array"&&n.coerceTypes==="array")&&d(l);s.else(),reportTypeError(e),s.endIf(),s.if((0,codegen_1$s._)`${i} !== undefined`,()=>{s.assign(a,i),assignParentData(e,i)});function d(l){switch(l){case"string":s.elseIf((0,codegen_1$s._)`${o} == "number" || ${o} == "boolean"`).assign(i,(0,codegen_1$s._)`"" + ${a}`).elseIf((0,codegen_1$s._)`${a} === null`).assign(i,(0,codegen_1$s._)`""`);return;case"number":s.elseIf((0,codegen_1$s._)`${o} == "boolean" || ${a} === null
5
+ || (${o} == "string" && ${a} && ${a} == +${a})`).assign(i,(0,codegen_1$s._)`+${a}`);return;case"integer":s.elseIf((0,codegen_1$s._)`${o} === "boolean" || ${a} === null
6
+ || (${o} === "string" && ${a} && ${a} == +${a} && !(${a} % 1))`).assign(i,(0,codegen_1$s._)`+${a}`);return;case"boolean":s.elseIf((0,codegen_1$s._)`${a} === "false" || ${a} === 0 || ${a} === null`).assign(i,!1).elseIf((0,codegen_1$s._)`${a} === "true" || ${a} === 1`).assign(i,!0);return;case"null":s.elseIf((0,codegen_1$s._)`${a} === "" || ${a} === 0 || ${a} === false`),s.assign(i,null);return;case"array":s.elseIf((0,codegen_1$s._)`${o} === "string" || ${o} === "number"
7
+ || ${o} === "boolean" || ${a} === null`).assign(i,(0,codegen_1$s._)`[${a}]`)}}}function assignParentData({gen:e,parentData:t,parentDataProperty:r},s){e.if((0,codegen_1$s._)`${t} !== undefined`,()=>e.assign((0,codegen_1$s._)`${t}[${r}]`,s))}function checkDataType(e,t,r,s=DataType.Correct){const a=s===DataType.Correct?codegen_1$s.operators.EQ:codegen_1$s.operators.NEQ;let n;switch(e){case"null":return(0,codegen_1$s._)`${t} ${a} null`;case"array":n=(0,codegen_1$s._)`Array.isArray(${t})`;break;case"object":n=(0,codegen_1$s._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":n=o((0,codegen_1$s._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":n=o();break;default:return(0,codegen_1$s._)`typeof ${t} ${a} ${e}`}return s===DataType.Correct?n:(0,codegen_1$s.not)(n);function o(i=codegen_1$s.nil){return(0,codegen_1$s.and)((0,codegen_1$s._)`typeof ${t} == "number"`,i,r?(0,codegen_1$s._)`isFinite(${t})`:codegen_1$s.nil)}}dataType.checkDataType=checkDataType;function checkDataTypes(e,t,r,s){if(e.length===1)return checkDataType(e[0],t,r,s);let a;const n=(0,util_1$q.toHash)(e);if(n.array&&n.object){const o=(0,codegen_1$s._)`typeof ${t} != "object"`;a=n.null?o:(0,codegen_1$s._)`!${t} || ${o}`,delete n.null,delete n.array,delete n.object}else a=codegen_1$s.nil;n.number&&delete n.integer;for(const o in n)a=(0,codegen_1$s.and)(a,checkDataType(o,t,r,s));return a}dataType.checkDataTypes=checkDataTypes;const typeError={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,codegen_1$s._)`{type: ${e}}`:(0,codegen_1$s._)`{type: ${t}}`};function reportTypeError(e){const t=getTypeErrorContext(e);(0,errors_1$2.reportError)(t,typeError)}dataType.reportTypeError=reportTypeError;function getTypeErrorContext(e){const{gen:t,data:r,schema:s}=e,a=(0,util_1$q.schemaRefOrVal)(e,s,"type");return{gen:t,keyword:"type",data:r,schema:s.type,schemaCode:a,schemaValue:a,parentSchema:s,params:{},it:e}}var defaults={};Object.defineProperty(defaults,"__esModule",{value:!0}),defaults.assignDefaults=void 0;const codegen_1$r=codegen,util_1$p=util;function assignDefaults(e,t){const{properties:r,items:s}=e.schema;if(t==="object"&&r)for(const a in r)assignDefault(e,a,r[a].default);else t==="array"&&Array.isArray(s)&&s.forEach((a,n)=>assignDefault(e,n,a.default))}defaults.assignDefaults=assignDefaults;function assignDefault(e,t,r){const{gen:s,compositeRule:a,data:n,opts:o}=e;if(r===void 0)return;const i=(0,codegen_1$r._)`${n}${(0,codegen_1$r.getProperty)(t)}`;if(a){(0,util_1$p.checkStrictMode)(e,`default is ignored for: ${i}`);return}let d=(0,codegen_1$r._)`${i} === undefined`;o.useDefaults==="empty"&&(d=(0,codegen_1$r._)`${d} || ${i} === null || ${i} === ""`),s.if(d,(0,codegen_1$r._)`${i} = ${(0,codegen_1$r.stringify)(r)}`)}var keyword={},code={};Object.defineProperty(code,"__esModule",{value:!0}),code.validateUnion=code.validateArray=code.usePattern=code.callValidateCode=code.schemaProperties=code.allSchemaProperties=code.noPropertyInData=code.propertyInData=code.isOwnProperty=code.hasPropFunc=code.reportMissingProp=code.checkMissingProp=code.checkReportMissingProp=void 0;const codegen_1$q=codegen,util_1$o=util,names_1$5=names$1,util_2$1=util;function checkReportMissingProp(e,t){const{gen:r,data:s,it:a}=e;r.if(noPropertyInData(r,s,t,a.opts.ownProperties),()=>{e.setParams({missingProperty:(0,codegen_1$q._)`${t}`},!0),e.error()})}code.checkReportMissingProp=checkReportMissingProp;function checkMissingProp({gen:e,data:t,it:{opts:r}},s,a){return(0,codegen_1$q.or)(...s.map(n=>(0,codegen_1$q.and)(noPropertyInData(e,t,n,r.ownProperties),(0,codegen_1$q._)`${a} = ${n}`)))}code.checkMissingProp=checkMissingProp;function reportMissingProp(e,t){e.setParams({missingProperty:t},!0),e.error()}code.reportMissingProp=reportMissingProp;function hasPropFunc(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,codegen_1$q._)`Object.prototype.hasOwnProperty`})}code.hasPropFunc=hasPropFunc;function isOwnProperty(e,t,r){return(0,codegen_1$q._)`${hasPropFunc(e)}.call(${t}, ${r})`}code.isOwnProperty=isOwnProperty;function propertyInData(e,t,r,s){const a=(0,codegen_1$q._)`${t}${(0,codegen_1$q.getProperty)(r)} !== undefined`;return s?(0,codegen_1$q._)`${a} && ${isOwnProperty(e,t,r)}`:a}code.propertyInData=propertyInData;function noPropertyInData(e,t,r,s){const a=(0,codegen_1$q._)`${t}${(0,codegen_1$q.getProperty)(r)} === undefined`;return s?(0,codegen_1$q.or)(a,(0,codegen_1$q.not)(isOwnProperty(e,t,r))):a}code.noPropertyInData=noPropertyInData;function allSchemaProperties(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}code.allSchemaProperties=allSchemaProperties;function schemaProperties(e,t){return allSchemaProperties(t).filter(r=>!(0,util_1$o.alwaysValidSchema)(e,t[r]))}code.schemaProperties=schemaProperties;function callValidateCode({schemaCode:e,data:t,it:{gen:r,topSchemaRef:s,schemaPath:a,errorPath:n},it:o},i,d,l){const u=l?(0,codegen_1$q._)`${e}, ${t}, ${s}${a}`:t,f=[[names_1$5.default.instancePath,(0,codegen_1$q.strConcat)(names_1$5.default.instancePath,n)],[names_1$5.default.parentData,o.parentData],[names_1$5.default.parentDataProperty,o.parentDataProperty],[names_1$5.default.rootData,names_1$5.default.rootData]];o.opts.dynamicRef&&f.push([names_1$5.default.dynamicAnchors,names_1$5.default.dynamicAnchors]);const w=(0,codegen_1$q._)`${u}, ${r.object(...f)}`;return d!==codegen_1$q.nil?(0,codegen_1$q._)`${i}.call(${d}, ${w})`:(0,codegen_1$q._)`${i}(${w})`}code.callValidateCode=callValidateCode;const newRegExp=(0,codegen_1$q._)`new RegExp`;function usePattern({gen:e,it:{opts:t}},r){const s=t.unicodeRegExp?"u":"",{regExp:a}=t.code,n=a(r,s);return e.scopeValue("pattern",{key:n.toString(),ref:n,code:(0,codegen_1$q._)`${a.code==="new RegExp"?newRegExp:(0,util_2$1.useFunc)(e,a)}(${r}, ${s})`})}code.usePattern=usePattern;function validateArray(e){const{gen:t,data:r,keyword:s,it:a}=e,n=t.name("valid");if(a.allErrors){const i=t.let("valid",!0);return o(()=>t.assign(i,!1)),i}return t.var(n,!0),o(()=>t.break()),n;function o(i){const d=t.const("len",(0,codegen_1$q._)`${r}.length`);t.forRange("i",0,d,l=>{e.subschema({keyword:s,dataProp:l,dataPropType:util_1$o.Type.Num},n),t.if((0,codegen_1$q.not)(n),i)})}}code.validateArray=validateArray;function validateUnion(e){const{gen:t,schema:r,keyword:s,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(d=>(0,util_1$o.alwaysValidSchema)(a,d))&&!a.opts.unevaluated)return;const o=t.let("valid",!1),i=t.name("_valid");t.block(()=>r.forEach((d,l)=>{const u=e.subschema({keyword:s,schemaProp:l,compositeRule:!0},i);t.assign(o,(0,codegen_1$q._)`${o} || ${i}`),e.mergeValidEvaluated(u,i)||t.if((0,codegen_1$q.not)(o))})),e.result(o,()=>e.reset(),()=>e.error(!0))}code.validateUnion=validateUnion,Object.defineProperty(keyword,"__esModule",{value:!0}),keyword.validateKeywordUsage=keyword.validSchemaType=keyword.funcKeywordCode=keyword.macroKeywordCode=void 0;const codegen_1$p=codegen,names_1$4=names$1,code_1$9=code,errors_1$1=errors;function macroKeywordCode(e,t){const{gen:r,keyword:s,schema:a,parentSchema:n,it:o}=e,i=t.macro.call(o.self,a,n,o),d=useKeyword(r,s,i);o.opts.validateSchema!==!1&&o.self.validateSchema(i,!0);const l=r.name("valid");e.subschema({schema:i,schemaPath:codegen_1$p.nil,errSchemaPath:`${o.errSchemaPath}/${s}`,topSchemaRef:d,compositeRule:!0},l),e.pass(l,()=>e.error(!0))}keyword.macroKeywordCode=macroKeywordCode;function funcKeywordCode(e,t){var r;const{gen:s,keyword:a,schema:n,parentSchema:o,$data:i,it:d}=e;checkAsyncKeyword(d,t);const l=!i&&t.compile?t.compile.call(d.self,n,o,d):t.validate,u=useKeyword(s,a,l),f=s.let("valid");e.block$data(f,w),e.ok((r=t.valid)!==null&&r!==void 0?r:f);function w(){if(t.errors===!1)_(),t.modifying&&modifyData(e),m(()=>e.error());else{const p=t.async?b():y();t.modifying&&modifyData(e),m(()=>addErrs(e,p))}}function b(){const p=s.let("ruleErrs",null);return s.try(()=>_((0,codegen_1$p._)`await `),g=>s.assign(f,!1).if((0,codegen_1$p._)`${g} instanceof ${d.ValidationError}`,()=>s.assign(p,(0,codegen_1$p._)`${g}.errors`),()=>s.throw(g))),p}function y(){const p=(0,codegen_1$p._)`${u}.errors`;return s.assign(p,null),_(codegen_1$p.nil),p}function _(p=t.async?(0,codegen_1$p._)`await `:codegen_1$p.nil){const g=d.opts.passContext?names_1$4.default.this:names_1$4.default.self,E=!("compile"in t&&!i||t.schema===!1);s.assign(f,(0,codegen_1$p._)`${p}${(0,code_1$9.callValidateCode)(e,u,g,E)}`,t.modifying)}function m(p){var g;s.if((0,codegen_1$p.not)((g=t.valid)!==null&&g!==void 0?g:f),p)}}keyword.funcKeywordCode=funcKeywordCode;function modifyData(e){const{gen:t,data:r,it:s}=e;t.if(s.parentData,()=>t.assign(r,(0,codegen_1$p._)`${s.parentData}[${s.parentDataProperty}]`))}function addErrs(e,t){const{gen:r}=e;r.if((0,codegen_1$p._)`Array.isArray(${t})`,()=>{r.assign(names_1$4.default.vErrors,(0,codegen_1$p._)`${names_1$4.default.vErrors} === null ? ${t} : ${names_1$4.default.vErrors}.concat(${t})`).assign(names_1$4.default.errors,(0,codegen_1$p._)`${names_1$4.default.vErrors}.length`),(0,errors_1$1.extendErrors)(e)},()=>e.error())}function checkAsyncKeyword({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function useKeyword(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,codegen_1$p.stringify)(r)})}function validSchemaType(e,t,r=!1){return!t.length||t.some(s=>s==="array"?Array.isArray(e):s==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==s||r&&typeof e>"u")}keyword.validSchemaType=validSchemaType;function validateKeywordUsage({schema:e,opts:t,self:r,errSchemaPath:s},a,n){if(Array.isArray(a.keyword)?!a.keyword.includes(n):a.keyword!==n)throw new Error("ajv implementation error");const o=a.dependencies;if(o!=null&&o.some(i=>!Object.prototype.hasOwnProperty.call(e,i)))throw new Error(`parent schema must have dependencies of ${n}: ${o.join(",")}`);if(a.validateSchema&&!a.validateSchema(e[n])){const d=`keyword "${n}" value is invalid at path "${s}": `+r.errorsText(a.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(d);else throw new Error(d)}}keyword.validateKeywordUsage=validateKeywordUsage;var subschema={};Object.defineProperty(subschema,"__esModule",{value:!0}),subschema.extendSubschemaMode=subschema.extendSubschemaData=subschema.getSubschema=void 0;const codegen_1$o=codegen,util_1$n=util;function getSubschema(e,{keyword:t,schemaProp:r,schema:s,schemaPath:a,errSchemaPath:n,topSchemaRef:o}){if(t!==void 0&&s!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){const i=e.schema[t];return r===void 0?{schema:i,schemaPath:(0,codegen_1$o._)`${e.schemaPath}${(0,codegen_1$o.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:i[r],schemaPath:(0,codegen_1$o._)`${e.schemaPath}${(0,codegen_1$o.getProperty)(t)}${(0,codegen_1$o.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,util_1$n.escapeFragment)(r)}`}}if(s!==void 0){if(a===void 0||n===void 0||o===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:s,schemaPath:a,topSchemaRef:o,errSchemaPath:n}}throw new Error('either "keyword" or "schema" must be passed')}subschema.getSubschema=getSubschema;function extendSubschemaData(e,t,{dataProp:r,dataPropType:s,data:a,dataTypes:n,propertyName:o}){if(a!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');const{gen:i}=t;if(r!==void 0){const{errorPath:l,dataPathArr:u,opts:f}=t,w=i.let("data",(0,codegen_1$o._)`${t.data}${(0,codegen_1$o.getProperty)(r)}`,!0);d(w),e.errorPath=(0,codegen_1$o.str)`${l}${(0,util_1$n.getErrorPath)(r,s,f.jsPropertySyntax)}`,e.parentDataProperty=(0,codegen_1$o._)`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(a!==void 0){const l=a instanceof codegen_1$o.Name?a:i.let("data",a,!0);d(l),o!==void 0&&(e.propertyName=o)}n&&(e.dataTypes=n);function d(l){e.data=l,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,l]}}subschema.extendSubschemaData=extendSubschemaData;function extendSubschemaMode(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:s,createErrors:a,allErrors:n}){s!==void 0&&(e.compositeRule=s),a!==void 0&&(e.createErrors=a),n!==void 0&&(e.allErrors=n),e.jtdDiscriminator=t,e.jtdMetadata=r}subschema.extendSubschemaMode=extendSubschemaMode;var resolve$2={},fastDeepEqual=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var s,a,n;if(Array.isArray(t)){if(s=t.length,s!=r.length)return!1;for(a=s;a--!==0;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(n=Object.keys(t),s=n.length,s!==Object.keys(r).length)return!1;for(a=s;a--!==0;)if(!Object.prototype.hasOwnProperty.call(r,n[a]))return!1;for(a=s;a--!==0;){var o=n[a];if(!e(t[o],r[o]))return!1}return!0}return t!==t&&r!==r},jsonSchemaTraverse={exports:{}},traverse$1=jsonSchemaTraverse.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var s=typeof r=="function"?r:r.pre||function(){},a=r.post||function(){};_traverse(t,s,a,e,"",e)};traverse$1.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0},traverse$1.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},traverse$1.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},traverse$1.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function _traverse(e,t,r,s,a,n,o,i,d,l){if(s&&typeof s=="object"&&!Array.isArray(s)){t(s,a,n,o,i,d,l);for(var u in s){var f=s[u];if(Array.isArray(f)){if(u in traverse$1.arrayKeywords)for(var w=0;w<f.length;w++)_traverse(e,t,r,f[w],a+"/"+u+"/"+w,n,a,u,s,w)}else if(u in traverse$1.propsKeywords){if(f&&typeof f=="object")for(var b in f)_traverse(e,t,r,f[b],a+"/"+u+"/"+escapeJsonPtr(b),n,a,u,s,b)}else(u in traverse$1.keywords||e.allKeys&&!(u in traverse$1.skipKeywords))&&_traverse(e,t,r,f,a+"/"+u,n,a,u,s)}r(s,a,n,o,i,d,l)}}function escapeJsonPtr(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}var jsonSchemaTraverseExports=jsonSchemaTraverse.exports;Object.defineProperty(resolve$2,"__esModule",{value:!0}),resolve$2.getSchemaRefs=resolve$2.resolveUrl=resolve$2.normalizeId=resolve$2._getFullPath=resolve$2.getFullPath=resolve$2.inlineRef=void 0;const util_1$m=util,equal$3=fastDeepEqual,traverse=jsonSchemaTraverseExports,SIMPLE_INLINED=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function inlineRef(e,t=!0){return typeof e=="boolean"?!0:t===!0?!hasRef(e):t?countKeys(e)<=t:!1}resolve$2.inlineRef=inlineRef;const REF_KEYWORDS=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function hasRef(e){for(const t in e){if(REF_KEYWORDS.has(t))return!0;const r=e[t];if(Array.isArray(r)&&r.some(hasRef)||typeof r=="object"&&hasRef(r))return!0}return!1}function countKeys(e){let t=0;for(const r in e){if(r==="$ref")return 1/0;if(t++,!SIMPLE_INLINED.has(r)&&(typeof e[r]=="object"&&(0,util_1$m.eachItem)(e[r],s=>t+=countKeys(s)),t===1/0))return 1/0}return t}function getFullPath(e,t="",r){r!==!1&&(t=normalizeId(t));const s=e.parse(t);return _getFullPath(e,s)}resolve$2.getFullPath=getFullPath;function _getFullPath(e,t){return e.serialize(t).split("#")[0]+"#"}resolve$2._getFullPath=_getFullPath;const TRAILING_SLASH_HASH=/#\/?$/;function normalizeId(e){return e?e.replace(TRAILING_SLASH_HASH,""):""}resolve$2.normalizeId=normalizeId;function resolveUrl(e,t,r){return r=normalizeId(r),e.resolve(t,r)}resolve$2.resolveUrl=resolveUrl;const ANCHOR=/^[a-z_][-a-z0-9._]*$/i;function getSchemaRefs(e,t){if(typeof e=="boolean")return{};const{schemaId:r,uriResolver:s}=this.opts,a=normalizeId(e[r]||t),n={"":a},o=getFullPath(s,a,!1),i={},d=new Set;return traverse(e,{allKeys:!0},(f,w,b,y)=>{if(y===void 0)return;const _=o+w;let m=n[y];typeof f[r]=="string"&&(m=p.call(this,f[r])),g.call(this,f.$anchor),g.call(this,f.$dynamicAnchor),n[w]=m;function p(E){const k=this.opts.uriResolver.resolve;if(E=normalizeId(m?k(m,E):E),d.has(E))throw u(E);d.add(E);let T=this.refs[E];return typeof T=="string"&&(T=this.refs[T]),typeof T=="object"?l(f,T.schema,E):E!==normalizeId(_)&&(E[0]==="#"?(l(f,i[E],E),i[E]=f):this.refs[E]=_),E}function g(E){if(typeof E=="string"){if(!ANCHOR.test(E))throw new Error(`invalid anchor "${E}"`);p.call(this,`#${E}`)}}}),i;function l(f,w,b){if(w!==void 0&&!equal$3(f,w))throw u(b)}function u(f){return new Error(`reference "${f}" resolves to more than one schema`)}}resolve$2.getSchemaRefs=getSchemaRefs,Object.defineProperty(validate$1,"__esModule",{value:!0}),validate$1.getData=validate$1.KeywordCxt=validate$1.validateFunctionCode=void 0;const boolSchema_1=boolSchema,dataType_1$1=dataType,applicability_1=applicability,dataType_2=dataType,defaults_1=defaults,keyword_1=keyword,subschema_1=subschema,codegen_1$n=codegen,names_1$3=names$1,resolve_1$2=resolve$2,util_1$l=util,errors_1=errors;function validateFunctionCode(e){if(isSchemaObj(e)&&(checkKeywords(e),schemaCxtHasRules(e))){topSchemaObjCode(e);return}validateFunction(e,()=>(0,boolSchema_1.topBoolOrEmptySchema)(e))}validate$1.validateFunctionCode=validateFunctionCode;function validateFunction({gen:e,validateName:t,schema:r,schemaEnv:s,opts:a},n){a.code.es5?e.func(t,(0,codegen_1$n._)`${names_1$3.default.data}, ${names_1$3.default.valCxt}`,s.$async,()=>{e.code((0,codegen_1$n._)`"use strict"; ${funcSourceUrl(r,a)}`),destructureValCxtES5(e,a),e.code(n)}):e.func(t,(0,codegen_1$n._)`${names_1$3.default.data}, ${destructureValCxt(a)}`,s.$async,()=>e.code(funcSourceUrl(r,a)).code(n))}function destructureValCxt(e){return(0,codegen_1$n._)`{${names_1$3.default.instancePath}="", ${names_1$3.default.parentData}, ${names_1$3.default.parentDataProperty}, ${names_1$3.default.rootData}=${names_1$3.default.data}${e.dynamicRef?(0,codegen_1$n._)`, ${names_1$3.default.dynamicAnchors}={}`:codegen_1$n.nil}}={}`}function destructureValCxtES5(e,t){e.if(names_1$3.default.valCxt,()=>{e.var(names_1$3.default.instancePath,(0,codegen_1$n._)`${names_1$3.default.valCxt}.${names_1$3.default.instancePath}`),e.var(names_1$3.default.parentData,(0,codegen_1$n._)`${names_1$3.default.valCxt}.${names_1$3.default.parentData}`),e.var(names_1$3.default.parentDataProperty,(0,codegen_1$n._)`${names_1$3.default.valCxt}.${names_1$3.default.parentDataProperty}`),e.var(names_1$3.default.rootData,(0,codegen_1$n._)`${names_1$3.default.valCxt}.${names_1$3.default.rootData}`),t.dynamicRef&&e.var(names_1$3.default.dynamicAnchors,(0,codegen_1$n._)`${names_1$3.default.valCxt}.${names_1$3.default.dynamicAnchors}`)},()=>{e.var(names_1$3.default.instancePath,(0,codegen_1$n._)`""`),e.var(names_1$3.default.parentData,(0,codegen_1$n._)`undefined`),e.var(names_1$3.default.parentDataProperty,(0,codegen_1$n._)`undefined`),e.var(names_1$3.default.rootData,names_1$3.default.data),t.dynamicRef&&e.var(names_1$3.default.dynamicAnchors,(0,codegen_1$n._)`{}`)})}function topSchemaObjCode(e){const{schema:t,opts:r,gen:s}=e;validateFunction(e,()=>{r.$comment&&t.$comment&&commentKeyword(e),checkNoDefault(e),s.let(names_1$3.default.vErrors,null),s.let(names_1$3.default.errors,0),r.unevaluated&&resetEvaluated(e),typeAndKeywords(e),returnResults(e)})}function resetEvaluated(e){const{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,codegen_1$n._)`${r}.evaluated`),t.if((0,codegen_1$n._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,codegen_1$n._)`${e.evaluated}.props`,(0,codegen_1$n._)`undefined`)),t.if((0,codegen_1$n._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,codegen_1$n._)`${e.evaluated}.items`,(0,codegen_1$n._)`undefined`))}function funcSourceUrl(e,t){const r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,codegen_1$n._)`/*# sourceURL=${r} */`:codegen_1$n.nil}function subschemaCode(e,t){if(isSchemaObj(e)&&(checkKeywords(e),schemaCxtHasRules(e))){subSchemaObjCode(e,t);return}(0,boolSchema_1.boolOrEmptySchema)(e,t)}function schemaCxtHasRules({schema:e,self:t}){if(typeof e=="boolean")return!e;for(const r in e)if(t.RULES.all[r])return!0;return!1}function isSchemaObj(e){return typeof e.schema!="boolean"}function subSchemaObjCode(e,t){const{schema:r,gen:s,opts:a}=e;a.$comment&&r.$comment&&commentKeyword(e),updateContext(e),checkAsyncSchema(e);const n=s.const("_errs",names_1$3.default.errors);typeAndKeywords(e,n),s.var(t,(0,codegen_1$n._)`${n} === ${names_1$3.default.errors}`)}function checkKeywords(e){(0,util_1$l.checkUnknownRules)(e),checkRefsAndKeywords(e)}function typeAndKeywords(e,t){if(e.opts.jtd)return schemaKeywords(e,[],!1,t);const r=(0,dataType_1$1.getSchemaTypes)(e.schema),s=(0,dataType_1$1.coerceAndCheckDataType)(e,r);schemaKeywords(e,r,!s,t)}function checkRefsAndKeywords(e){const{schema:t,errSchemaPath:r,opts:s,self:a}=e;t.$ref&&s.ignoreKeywordsWithRef&&(0,util_1$l.schemaHasRulesButRef)(t,a.RULES)&&a.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function checkNoDefault(e){const{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,util_1$l.checkStrictMode)(e,"default is ignored in the schema root")}function updateContext(e){const t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,resolve_1$2.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function checkAsyncSchema(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function commentKeyword({gen:e,schemaEnv:t,schema:r,errSchemaPath:s,opts:a}){const n=r.$comment;if(a.$comment===!0)e.code((0,codegen_1$n._)`${names_1$3.default.self}.logger.log(${n})`);else if(typeof a.$comment=="function"){const o=(0,codegen_1$n.str)`${s}/$comment`,i=e.scopeValue("root",{ref:t.root});e.code((0,codegen_1$n._)`${names_1$3.default.self}.opts.$comment(${n}, ${o}, ${i}.schema)`)}}function returnResults(e){const{gen:t,schemaEnv:r,validateName:s,ValidationError:a,opts:n}=e;r.$async?t.if((0,codegen_1$n._)`${names_1$3.default.errors} === 0`,()=>t.return(names_1$3.default.data),()=>t.throw((0,codegen_1$n._)`new ${a}(${names_1$3.default.vErrors})`)):(t.assign((0,codegen_1$n._)`${s}.errors`,names_1$3.default.vErrors),n.unevaluated&&assignEvaluated(e),t.return((0,codegen_1$n._)`${names_1$3.default.errors} === 0`))}function assignEvaluated({gen:e,evaluated:t,props:r,items:s}){r instanceof codegen_1$n.Name&&e.assign((0,codegen_1$n._)`${t}.props`,r),s instanceof codegen_1$n.Name&&e.assign((0,codegen_1$n._)`${t}.items`,s)}function schemaKeywords(e,t,r,s){const{gen:a,schema:n,data:o,allErrors:i,opts:d,self:l}=e,{RULES:u}=l;if(n.$ref&&(d.ignoreKeywordsWithRef||!(0,util_1$l.schemaHasRulesButRef)(n,u))){a.block(()=>keywordCode(e,"$ref",u.all.$ref.definition));return}d.jtd||checkStrictTypes(e,t),a.block(()=>{for(const w of u.rules)f(w);f(u.post)});function f(w){(0,applicability_1.shouldUseGroup)(n,w)&&(w.type?(a.if((0,dataType_2.checkDataType)(w.type,o,d.strictNumbers)),iterateKeywords(e,w),t.length===1&&t[0]===w.type&&r&&(a.else(),(0,dataType_2.reportTypeError)(e)),a.endIf()):iterateKeywords(e,w),i||a.if((0,codegen_1$n._)`${names_1$3.default.errors} === ${s||0}`))}}function iterateKeywords(e,t){const{gen:r,schema:s,opts:{useDefaults:a}}=e;a&&(0,defaults_1.assignDefaults)(e,t.type),r.block(()=>{for(const n of t.rules)(0,applicability_1.shouldUseRule)(s,n)&&keywordCode(e,n.keyword,n.definition,t.type)})}function checkStrictTypes(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(checkContextTypes(e,t),e.opts.allowUnionTypes||checkMultipleTypes(e,t),checkKeywordTypes(e,e.dataTypes))}function checkContextTypes(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{includesType(e.dataTypes,r)||strictTypesError(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),narrowSchemaTypes(e,t)}}function checkMultipleTypes(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&strictTypesError(e,"use allowUnionTypes to allow union type keyword")}function checkKeywordTypes(e,t){const r=e.self.RULES.all;for(const s in r){const a=r[s];if(typeof a=="object"&&(0,applicability_1.shouldUseRule)(e.schema,a)){const{type:n}=a.definition;n.length&&!n.some(o=>hasApplicableType(t,o))&&strictTypesError(e,`missing type "${n.join(",")}" for keyword "${s}"`)}}}function hasApplicableType(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function includesType(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function narrowSchemaTypes(e,t){const r=[];for(const s of e.dataTypes)includesType(t,s)?r.push(s):t.includes("integer")&&s==="number"&&r.push("integer");e.dataTypes=r}function strictTypesError(e,t){const r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,util_1$l.checkStrictMode)(e,t,e.opts.strictTypes)}class KeywordCxt{constructor(t,r,s){if((0,keyword_1.validateKeywordUsage)(t,r,s),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=s,this.data=t.data,this.schema=t.schema[s],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,util_1$l.schemaRefOrVal)(t,this.schema,s,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",getData(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,keyword_1.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${s} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",names_1$3.default.errors))}result(t,r,s){this.failResult((0,codegen_1$n.not)(t),r,s)}failResult(t,r,s){this.gen.if(t),s?s():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,codegen_1$n.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);const{schemaCode:r}=this;this.fail((0,codegen_1$n._)`${r} !== undefined && (${(0,codegen_1$n.or)(this.invalid$data(),t)})`)}error(t,r,s){if(r){this.setParams(r),this._error(t,s),this.setParams({});return}this._error(t,s)}_error(t,r){(t?errors_1.reportExtraError:errors_1.reportError)(this,this.def.error,r)}$dataError(){(0,errors_1.reportError)(this,this.def.$dataError||errors_1.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,errors_1.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,s=codegen_1$n.nil){this.gen.block(()=>{this.check$data(t,s),r()})}check$data(t=codegen_1$n.nil,r=codegen_1$n.nil){if(!this.$data)return;const{gen:s,schemaCode:a,schemaType:n,def:o}=this;s.if((0,codegen_1$n.or)((0,codegen_1$n._)`${a} === undefined`,r)),t!==codegen_1$n.nil&&s.assign(t,!0),(n.length||o.validateSchema)&&(s.elseIf(this.invalid$data()),this.$dataError(),t!==codegen_1$n.nil&&s.assign(t,!1)),s.else()}invalid$data(){const{gen:t,schemaCode:r,schemaType:s,def:a,it:n}=this;return(0,codegen_1$n.or)(o(),i());function o(){if(s.length){if(!(r instanceof codegen_1$n.Name))throw new Error("ajv implementation error");const d=Array.isArray(s)?s:[s];return(0,codegen_1$n._)`${(0,dataType_2.checkDataTypes)(d,r,n.opts.strictNumbers,dataType_2.DataType.Wrong)}`}return codegen_1$n.nil}function i(){if(a.validateSchema){const d=t.scopeValue("validate$data",{ref:a.validateSchema});return(0,codegen_1$n._)`!${d}(${r})`}return codegen_1$n.nil}}subschema(t,r){const s=(0,subschema_1.getSubschema)(this.it,t);(0,subschema_1.extendSubschemaData)(s,this.it,t),(0,subschema_1.extendSubschemaMode)(s,t);const a={...this.it,...s,items:void 0,props:void 0};return subschemaCode(a,r),a}mergeEvaluated(t,r){const{it:s,gen:a}=this;s.opts.unevaluated&&(s.props!==!0&&t.props!==void 0&&(s.props=util_1$l.mergeEvaluated.props(a,t.props,s.props,r)),s.items!==!0&&t.items!==void 0&&(s.items=util_1$l.mergeEvaluated.items(a,t.items,s.items,r)))}mergeValidEvaluated(t,r){const{it:s,gen:a}=this;if(s.opts.unevaluated&&(s.props!==!0||s.items!==!0))return a.if(r,()=>this.mergeEvaluated(t,codegen_1$n.Name)),!0}}validate$1.KeywordCxt=KeywordCxt;function keywordCode(e,t,r,s){const a=new KeywordCxt(e,r,t);"code"in r?r.code(a,s):a.$data&&r.validate?(0,keyword_1.funcKeywordCode)(a,r):"macro"in r?(0,keyword_1.macroKeywordCode)(a,r):(r.compile||r.validate)&&(0,keyword_1.funcKeywordCode)(a,r)}const JSON_POINTER=/^\/(?:[^~]|~0|~1)*$/,RELATIVE_JSON_POINTER=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function getData(e,{dataLevel:t,dataNames:r,dataPathArr:s}){let a,n;if(e==="")return names_1$3.default.rootData;if(e[0]==="/"){if(!JSON_POINTER.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);a=e,n=names_1$3.default.rootData}else{const l=RELATIVE_JSON_POINTER.exec(e);if(!l)throw new Error(`Invalid JSON-pointer: ${e}`);const u=+l[1];if(a=l[2],a==="#"){if(u>=t)throw new Error(d("property/index",u));return s[t-u]}if(u>t)throw new Error(d("data",u));if(n=r[t-u],!a)return n}let o=n;const i=a.split("/");for(const l of i)l&&(n=(0,codegen_1$n._)`${n}${(0,codegen_1$n.getProperty)((0,util_1$l.unescapeJsonPointer)(l))}`,o=(0,codegen_1$n._)`${o} && ${n}`);return o;function d(l,u){return`Cannot access ${l} ${u} levels up, current level is ${t}`}}validate$1.getData=getData;var validation_error={};Object.defineProperty(validation_error,"__esModule",{value:!0});class ValidationError extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}}validation_error.default=ValidationError;var ref_error={};Object.defineProperty(ref_error,"__esModule",{value:!0});const resolve_1$1=resolve$2;class MissingRefError extends Error{constructor(t,r,s,a){super(a||`can't resolve reference ${s} from id ${r}`),this.missingRef=(0,resolve_1$1.resolveUrl)(t,r,s),this.missingSchema=(0,resolve_1$1.normalizeId)((0,resolve_1$1.getFullPath)(t,this.missingRef))}}ref_error.default=MissingRefError;var compile={};Object.defineProperty(compile,"__esModule",{value:!0}),compile.resolveSchema=compile.getCompilingSchema=compile.resolveRef=compile.compileSchema=compile.SchemaEnv=void 0;const codegen_1$m=codegen,validation_error_1=validation_error,names_1$2=names$1,resolve_1=resolve$2,util_1$k=util,validate_1$1=validate$1;class SchemaEnv{constructor(t){var r;this.refs={},this.dynamicAnchors={};let s;typeof t.schema=="object"&&(s=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,resolve_1.normalizeId)(s==null?void 0:s[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=s==null?void 0:s.$async,this.refs={}}}compile.SchemaEnv=SchemaEnv;function compileSchema(e){const t=getCompilingSchema.call(this,e);if(t)return t;const r=(0,resolve_1.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:s,lines:a}=this.opts.code,{ownProperties:n}=this.opts,o=new codegen_1$m.CodeGen(this.scope,{es5:s,lines:a,ownProperties:n});let i;e.$async&&(i=o.scopeValue("Error",{ref:validation_error_1.default,code:(0,codegen_1$m._)`require("ajv/dist/runtime/validation_error").default`}));const d=o.scopeName("validate");e.validateName=d;const l={gen:o,allErrors:this.opts.allErrors,data:names_1$2.default.data,parentData:names_1$2.default.parentData,parentDataProperty:names_1$2.default.parentDataProperty,dataNames:[names_1$2.default.data],dataPathArr:[codegen_1$m.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,codegen_1$m.stringify)(e.schema)}:{ref:e.schema}),validateName:d,ValidationError:i,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:codegen_1$m.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,codegen_1$m._)`""`,opts:this.opts,self:this};let u;try{this._compilations.add(e),(0,validate_1$1.validateFunctionCode)(l),o.optimize(this.opts.code.optimize);const f=o.toString();u=`${o.scopeRefs(names_1$2.default.scope)}return ${f}`,this.opts.code.process&&(u=this.opts.code.process(u,e));const b=new Function(`${names_1$2.default.self}`,`${names_1$2.default.scope}`,u)(this,this.scope.get());if(this.scope.value(d,{ref:b}),b.errors=null,b.schema=e.schema,b.schemaEnv=e,e.$async&&(b.$async=!0),this.opts.code.source===!0&&(b.source={validateName:d,validateCode:f,scopeValues:o._values}),this.opts.unevaluated){const{props:y,items:_}=l;b.evaluated={props:y instanceof codegen_1$m.Name?void 0:y,items:_ instanceof codegen_1$m.Name?void 0:_,dynamicProps:y instanceof codegen_1$m.Name,dynamicItems:_ instanceof codegen_1$m.Name},b.source&&(b.source.evaluated=(0,codegen_1$m.stringify)(b.evaluated))}return e.validate=b,e}catch(f){throw delete e.validate,delete e.validateName,u&&this.logger.error("Error compiling schema, function code:",u),f}finally{this._compilations.delete(e)}}compile.compileSchema=compileSchema;function resolveRef(e,t,r){var s;r=(0,resolve_1.resolveUrl)(this.opts.uriResolver,t,r);const a=e.refs[r];if(a)return a;let n=resolve$1.call(this,e,r);if(n===void 0){const o=(s=e.localRefs)===null||s===void 0?void 0:s[r],{schemaId:i}=this.opts;o&&(n=new SchemaEnv({schema:o,schemaId:i,root:e,baseId:t}))}if(n!==void 0)return e.refs[r]=inlineOrCompile.call(this,n)}compile.resolveRef=resolveRef;function inlineOrCompile(e){return(0,resolve_1.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:compileSchema.call(this,e)}function getCompilingSchema(e){for(const t of this._compilations)if(sameSchemaEnv(t,e))return t}compile.getCompilingSchema=getCompilingSchema;function sameSchemaEnv(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function resolve$1(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||resolveSchema.call(this,e,t)}function resolveSchema(e,t){const r=this.opts.uriResolver.parse(t),s=(0,resolve_1._getFullPath)(this.opts.uriResolver,r);let a=(0,resolve_1.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&s===a)return getJsonPointer.call(this,r,e);const n=(0,resolve_1.normalizeId)(s),o=this.refs[n]||this.schemas[n];if(typeof o=="string"){const i=resolveSchema.call(this,e,o);return typeof(i==null?void 0:i.schema)!="object"?void 0:getJsonPointer.call(this,r,i)}if(typeof(o==null?void 0:o.schema)=="object"){if(o.validate||compileSchema.call(this,o),n===(0,resolve_1.normalizeId)(t)){const{schema:i}=o,{schemaId:d}=this.opts,l=i[d];return l&&(a=(0,resolve_1.resolveUrl)(this.opts.uriResolver,a,l)),new SchemaEnv({schema:i,schemaId:d,root:e,baseId:a})}return getJsonPointer.call(this,r,o)}}compile.resolveSchema=resolveSchema;const PREVENT_SCOPE_CHANGE=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function getJsonPointer(e,{baseId:t,schema:r,root:s}){var a;if(((a=e.fragment)===null||a===void 0?void 0:a[0])!=="/")return;for(const i of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;const d=r[(0,util_1$k.unescapeFragment)(i)];if(d===void 0)return;r=d;const l=typeof r=="object"&&r[this.opts.schemaId];!PREVENT_SCOPE_CHANGE.has(i)&&l&&(t=(0,resolve_1.resolveUrl)(this.opts.uriResolver,t,l))}let n;if(typeof r!="boolean"&&r.$ref&&!(0,util_1$k.schemaHasRulesButRef)(r,this.RULES)){const i=(0,resolve_1.resolveUrl)(this.opts.uriResolver,t,r.$ref);n=resolveSchema.call(this,s,i)}const{schemaId:o}=this.opts;if(n=n||new SchemaEnv({schema:r,schemaId:o,root:s,baseId:t}),n.schema!==n.root.schema)return n}const $id$1="https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description="Meta-schema for $data reference (JSON AnySchema extension proposal)",type$1="object",required$1=["$data"],properties$2={$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties$1=!1,require$$9={$id:$id$1,description,type:type$1,required:required$1,properties:properties$2,additionalProperties:additionalProperties$1};var uri$1={},fastUri$1={exports:{}};const HEX$1={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};var scopedChars={HEX:HEX$1};const{HEX}=scopedChars,IPV4_REG=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function normalizeIPv4$1(e){if(findToken(e,".")<3)return{host:e,isIPV4:!1};const t=e.match(IPV4_REG)||[],[r]=t;return r?{host:stripLeadingZeros(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function stringArrayToHexStripped(e,t=!1){let r="",s=!0;for(const a of e){if(HEX[a]===void 0)return;a!=="0"&&s===!0&&(s=!1),s||(r+=a)}return t&&r.length===0&&(r="0"),r}function getIPV6(e){let t=0;const r={error:!1,address:"",zone:""},s=[],a=[];let n=!1,o=!1,i=!1;function d(){if(a.length){if(n===!1){const l=stringArrayToHexStripped(a);if(l!==void 0)s.push(l);else return r.error=!0,!1}a.length=0}return!0}for(let l=0;l<e.length;l++){const u=e[l];if(!(u==="["||u==="]"))if(u===":"){if(o===!0&&(i=!0),!d())break;if(t++,s.push(":"),t>7){r.error=!0;break}l-1>=0&&e[l-1]===":"&&(o=!0);continue}else if(u==="%"){if(!d())break;n=!0}else{a.push(u);continue}}return a.length&&(n?r.zone=a.join(""):i?s.push(a.join("")):s.push(stringArrayToHexStripped(a))),r.address=s.join(""),r}function normalizeIPv6$1(e){if(findToken(e,":")<2)return{host:e,isIPV6:!1};const t=getIPV6(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,s=t.address;return t.zone&&(r+="%"+t.zone,s+="%25"+t.zone),{host:r,escapedHost:s,isIPV6:!0}}}function stripLeadingZeros(e,t){let r="",s=!0;const a=e.length;for(let n=0;n<a;n++){const o=e[n];o==="0"&&s?(n+1<=a&&e[n+1]===t||n+1===a)&&(r+=o,s=!1):(o===t?s=!0:s=!1,r+=o)}return r}function findToken(e,t){let r=0;for(let s=0;s<e.length;s++)e[s]===t&&r++;return r}const RDS1=/^\.\.?\//u,RDS2=/^\/\.(?:\/|$)/u,RDS3=/^\/\.\.(?:\/|$)/u,RDS5=/^\/?(?:.|\n)*?(?=\/|$)/u;function removeDotSegments$1(e){const t=[];for(;e.length;)if(e.match(RDS1))e=e.replace(RDS1,"");else if(e.match(RDS2))e=e.replace(RDS2,"/");else if(e.match(RDS3))e=e.replace(RDS3,"/"),t.pop();else if(e==="."||e==="..")e="";else{const r=e.match(RDS5);if(r){const s=r[0];e=e.slice(s.length),t.push(s)}else throw new Error("Unexpected dot segment condition")}return t.join("")}function normalizeComponentEncoding$1(e,t){const r=t!==!0?escape:unescape;return e.scheme!==void 0&&(e.scheme=r(e.scheme)),e.userinfo!==void 0&&(e.userinfo=r(e.userinfo)),e.host!==void 0&&(e.host=r(e.host)),e.path!==void 0&&(e.path=r(e.path)),e.query!==void 0&&(e.query=r(e.query)),e.fragment!==void 0&&(e.fragment=r(e.fragment)),e}function recomposeAuthority$1(e){const t=[];if(e.userinfo!==void 0&&(t.push(e.userinfo),t.push("@")),e.host!==void 0){let r=unescape(e.host);const s=normalizeIPv4$1(r);if(s.isIPV4)r=s.host;else{const a=normalizeIPv6$1(s.host);a.isIPV6===!0?r=`[${a.escapedHost}]`:r=e.host}t.push(r)}return(typeof e.port=="number"||typeof e.port=="string")&&(t.push(":"),t.push(String(e.port))),t.length?t.join(""):void 0}var utils={recomposeAuthority:recomposeAuthority$1,normalizeComponentEncoding:normalizeComponentEncoding$1,removeDotSegments:removeDotSegments$1,normalizeIPv4:normalizeIPv4$1,normalizeIPv6:normalizeIPv6$1};const UUID_REG=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,URN_REG=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function isSecure(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function httpParse(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function httpSerialize(e){const t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function wsParse(e){return e.secure=isSecure(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function wsSerialize(e){if((e.port===(isSecure(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){const[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function urnParse(e,t){if(!e.path)return e.error="URN can not be parsed",e;const r=e.path.match(URN_REG);if(r){const s=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];const a=`${s}:${t.nid||e.nid}`,n=SCHEMES$1[a];e.path=void 0,n&&(e=n.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function urnSerialize(e,t){const r=t.scheme||e.scheme||"urn",s=e.nid.toLowerCase(),a=`${r}:${t.nid||s}`,n=SCHEMES$1[a];n&&(e=n.serialize(e,t));const o=e,i=e.nss;return o.path=`${s||t.nid}:${i}`,t.skipEscape=!0,o}function urnuuidParse(e,t){const r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!UUID_REG.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function urnuuidSerialize(e){const t=e;return t.nss=(e.uuid||"").toLowerCase(),t}const http={scheme:"http",domainHost:!0,parse:httpParse,serialize:httpSerialize},https={scheme:"https",domainHost:http.domainHost,parse:httpParse,serialize:httpSerialize},ws={scheme:"ws",domainHost:!0,parse:wsParse,serialize:wsSerialize},wss={scheme:"wss",domainHost:ws.domainHost,parse:ws.parse,serialize:ws.serialize},urn={scheme:"urn",parse:urnParse,serialize:urnSerialize,skipNormalize:!0},urnuuid={scheme:"urn:uuid",parse:urnuuidParse,serialize:urnuuidSerialize,skipNormalize:!0},SCHEMES$1={http,https,ws,wss,urn,"urn:uuid":urnuuid};var schemes=SCHEMES$1;const{normalizeIPv6,normalizeIPv4,removeDotSegments,recomposeAuthority,normalizeComponentEncoding}=utils,SCHEMES=schemes;function normalize(e,t){return typeof e=="string"?e=serialize(parse(e,t),t):typeof e=="object"&&(e=parse(serialize(e,t),t)),e}function resolve(e,t,r){const s=Object.assign({scheme:"null"},r),a=resolveComponents(parse(e,s),parse(t,s),s,!0);return serialize(a,{...s,skipEscape:!0})}function resolveComponents(e,t,r,s){const a={};return s||(e=parse(serialize(e,r),r),t=parse(serialize(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=removeDotSegments(t.path||""),a.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=removeDotSegments(t.path||""),a.query=t.query):(t.path?(t.path.charAt(0)==="/"?a.path=removeDotSegments(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?a.path="/"+t.path:e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path,a.path=removeDotSegments(a.path)),a.query=t.query):(a.path=e.path,t.query!==void 0?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function equal$2(e,t,r){return typeof e=="string"?(e=unescape(e),e=serialize(normalizeComponentEncoding(parse(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=serialize(normalizeComponentEncoding(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=serialize(normalizeComponentEncoding(parse(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=serialize(normalizeComponentEncoding(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function serialize(e,t){const r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},s=Object.assign({},t),a=[],n=SCHEMES[(s.scheme||r.scheme||"").toLowerCase()];n&&n.serialize&&n.serialize(r,s),r.path!==void 0&&(s.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),s.reference!=="suffix"&&r.scheme&&a.push(r.scheme,":");const o=recomposeAuthority(r);if(o!==void 0&&(s.reference!=="suffix"&&a.push("//"),a.push(o),r.path&&r.path.charAt(0)!=="/"&&a.push("/")),r.path!==void 0){let i=r.path;!s.absolutePath&&(!n||!n.absolutePath)&&(i=removeDotSegments(i)),o===void 0&&(i=i.replace(/^\/\//u,"/%2F")),a.push(i)}return r.query!==void 0&&a.push("?",r.query),r.fragment!==void 0&&a.push("#",r.fragment),a.join("")}const hexLookUp=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function nonSimpleDomain(e){let t=0;for(let r=0,s=e.length;r<s;++r)if(t=e.charCodeAt(r),t>126||hexLookUp[t])return!0;return!1}const URI_PARSE=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function parse(e,t){const r=Object.assign({},t),s={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},a=e.indexOf("%")!==-1;let n=!1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);const o=e.match(URI_PARSE);if(o){if(s.scheme=o[1],s.userinfo=o[3],s.host=o[4],s.port=parseInt(o[5],10),s.path=o[6]||"",s.query=o[7],s.fragment=o[8],isNaN(s.port)&&(s.port=o[5]),s.host){const d=normalizeIPv4(s.host);if(d.isIPV4===!1){const l=normalizeIPv6(d.host);s.host=l.host.toLowerCase(),n=l.isIPV6}else s.host=d.host,n=!0}s.scheme===void 0&&s.userinfo===void 0&&s.host===void 0&&s.port===void 0&&s.query===void 0&&!s.path?s.reference="same-document":s.scheme===void 0?s.reference="relative":s.fragment===void 0?s.reference="absolute":s.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==s.reference&&(s.error=s.error||"URI is not a "+r.reference+" reference.");const i=SCHEMES[(r.scheme||s.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&s.host&&(r.domainHost||i&&i.domainHost)&&n===!1&&nonSimpleDomain(s.host))try{s.host=URL.domainToASCII(s.host.toLowerCase())}catch(d){s.error=s.error||"Host's domain name can not be converted to ASCII: "+d}(!i||i&&!i.skipNormalize)&&(a&&s.scheme!==void 0&&(s.scheme=unescape(s.scheme)),a&&s.host!==void 0&&(s.host=unescape(s.host)),s.path&&(s.path=escape(unescape(s.path))),s.fragment&&(s.fragment=encodeURI(decodeURIComponent(s.fragment)))),i&&i.parse&&i.parse(s,r)}else s.error=s.error||"URI can not be parsed.";return s}const fastUri={SCHEMES,normalize,resolve,resolveComponents,equal:equal$2,serialize,parse};fastUri$1.exports=fastUri,fastUri$1.exports.default=fastUri,fastUri$1.exports.fastUri=fastUri;var fastUriExports=fastUri$1.exports;Object.defineProperty(uri$1,"__esModule",{value:!0});const uri=fastUriExports;uri.code='require("ajv/dist/runtime/uri").default',uri$1.default=uri,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CodeGen=e.Name=e.nil=e.stringify=e.str=e._=e.KeywordCxt=void 0;var t=validate$1;Object.defineProperty(e,"KeywordCxt",{enumerable:!0,get:function(){return t.KeywordCxt}});var r=codegen;Object.defineProperty(e,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(e,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(e,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(e,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return r.Name}}),Object.defineProperty(e,"CodeGen",{enumerable:!0,get:function(){return r.CodeGen}});const s=validation_error,a=ref_error,n=rules,o=compile,i=codegen,d=resolve$2,l=dataType,u=util,f=require$$9,w=uri$1,b=(O,$)=>new RegExp(O,$);b.code="new RegExp";const y=["removeAdditional","useDefaults","coerceTypes"],_=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),m={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},p={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},g=200;function E(O){var $,P,v,c,h,S,N,j,V,D,q,B,Q,ee,te,re,se,ae,ne,oe,ie,ce,le,de,ue;const H=O.strict,fe=($=O.code)===null||$===void 0?void 0:$.optimize,he=fe===!0||fe===void 0?1:fe||0,pe=(v=(P=O.code)===null||P===void 0?void 0:P.regExp)!==null&&v!==void 0?v:b,me=(c=O.uriResolver)!==null&&c!==void 0?c:w.default;return{strictSchema:(S=(h=O.strictSchema)!==null&&h!==void 0?h:H)!==null&&S!==void 0?S:!0,strictNumbers:(j=(N=O.strictNumbers)!==null&&N!==void 0?N:H)!==null&&j!==void 0?j:!0,strictTypes:(D=(V=O.strictTypes)!==null&&V!==void 0?V:H)!==null&&D!==void 0?D:"log",strictTuples:(B=(q=O.strictTuples)!==null&&q!==void 0?q:H)!==null&&B!==void 0?B:"log",strictRequired:(ee=(Q=O.strictRequired)!==null&&Q!==void 0?Q:H)!==null&&ee!==void 0?ee:!1,code:O.code?{...O.code,optimize:he,regExp:pe}:{optimize:he,regExp:pe},loopRequired:(te=O.loopRequired)!==null&&te!==void 0?te:g,loopEnum:(re=O.loopEnum)!==null&&re!==void 0?re:g,meta:(se=O.meta)!==null&&se!==void 0?se:!0,messages:(ae=O.messages)!==null&&ae!==void 0?ae:!0,inlineRefs:(ne=O.inlineRefs)!==null&&ne!==void 0?ne:!0,schemaId:(oe=O.schemaId)!==null&&oe!==void 0?oe:"$id",addUsedSchema:(ie=O.addUsedSchema)!==null&&ie!==void 0?ie:!0,validateSchema:(ce=O.validateSchema)!==null&&ce!==void 0?ce:!0,validateFormats:(le=O.validateFormats)!==null&&le!==void 0?le:!0,unicodeRegExp:(de=O.unicodeRegExp)!==null&&de!==void 0?de:!0,int32range:(ue=O.int32range)!==null&&ue!==void 0?ue:!0,uriResolver:me}}class k{constructor($={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,$=this.opts={...$,...E($)};const{es5:P,lines:v}=this.opts.code;this.scope=new i.ValueScope({scope:{},prefixes:_,es5:P,lines:v}),this.logger=A($.logger);const c=$.validateFormats;$.validateFormats=!1,this.RULES=(0,n.getRules)(),T.call(this,m,$,"NOT SUPPORTED"),T.call(this,p,$,"DEPRECATED","warn"),this._metaOpts=R.call(this),$.formats&&W.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),$.keywords&&C.call(this,$.keywords),typeof $.meta=="object"&&this.addMetaSchema($.meta),M.call(this),$.validateFormats=c}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){const{$data:$,meta:P,schemaId:v}=this.opts;let c=f;v==="id"&&(c={...f},c.id=c.$id,delete c.$id),P&&$&&this.addMetaSchema(c,c[v],!1)}defaultMeta(){const{meta:$,schemaId:P}=this.opts;return this.opts.defaultMeta=typeof $=="object"?$[P]||$:void 0}validate($,P){let v;if(typeof $=="string"){if(v=this.getSchema($),!v)throw new Error(`no schema with key or ref "${$}"`)}else v=this.compile($);const c=v(P);return"$async"in v||(this.errors=v.errors),c}compile($,P){const v=this._addSchema($,P);return v.validate||this._compileSchemaEnv(v)}compileAsync($,P){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");const{loadSchema:v}=this.opts;return c.call(this,$,P);async function c(D,q){await h.call(this,D.$schema);const B=this._addSchema(D,q);return B.validate||S.call(this,B)}async function h(D){D&&!this.getSchema(D)&&await c.call(this,{$ref:D},!0)}async function S(D){try{return this._compileSchemaEnv(D)}catch(q){if(!(q instanceof a.default))throw q;return N.call(this,q),await j.call(this,q.missingSchema),S.call(this,D)}}function N({missingSchema:D,missingRef:q}){if(this.refs[D])throw new Error(`AnySchema ${D} is loaded but ${q} cannot be resolved`)}async function j(D){const q=await V.call(this,D);this.refs[D]||await h.call(this,q.$schema),this.refs[D]||this.addSchema(q,D,P)}async function V(D){const q=this._loading[D];if(q)return q;try{return await(this._loading[D]=v(D))}finally{delete this._loading[D]}}}addSchema($,P,v,c=this.opts.validateSchema){if(Array.isArray($)){for(const S of $)this.addSchema(S,void 0,v,c);return this}let h;if(typeof $=="object"){const{schemaId:S}=this.opts;if(h=$[S],h!==void 0&&typeof h!="string")throw new Error(`schema ${S} must be string`)}return P=(0,d.normalizeId)(P||h),this._checkUnique(P),this.schemas[P]=this._addSchema($,v,P,c,!0),this}addMetaSchema($,P,v=this.opts.validateSchema){return this.addSchema($,P,!0,v),this}validateSchema($,P){if(typeof $=="boolean")return!0;let v;if(v=$.$schema,v!==void 0&&typeof v!="string")throw new Error("$schema must be a string");if(v=v||this.opts.defaultMeta||this.defaultMeta(),!v)return this.logger.warn("meta-schema not available"),this.errors=null,!0;const c=this.validate(v,$);if(!c&&P){const h="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(h);else throw new Error(h)}return c}getSchema($){let P;for(;typeof(P=I.call(this,$))=="string";)$=P;if(P===void 0){const{schemaId:v}=this.opts,c=new o.SchemaEnv({schema:{},schemaId:v});if(P=o.resolveSchema.call(this,c,$),!P)return;this.refs[$]=P}return P.validate||this._compileSchemaEnv(P)}removeSchema($){if($ instanceof RegExp)return this._removeAllSchemas(this.schemas,$),this._removeAllSchemas(this.refs,$),this;switch(typeof $){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{const P=I.call(this,$);return typeof P=="object"&&this._cache.delete(P.schema),delete this.schemas[$],delete this.refs[$],this}case"object":{const P=$;this._cache.delete(P);let v=$[this.opts.schemaId];return v&&(v=(0,d.normalizeId)(v),delete this.schemas[v],delete this.refs[v]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary($){for(const P of $)this.addKeyword(P);return this}addKeyword($,P){let v;if(typeof $=="string")v=$,typeof P=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),P.keyword=v);else if(typeof $=="object"&&P===void 0){if(P=$,v=P.keyword,Array.isArray(v)&&!v.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(x.call(this,v,P),!P)return(0,u.eachItem)(v,h=>G.call(this,h)),this;Z.call(this,P);const c={...P,type:(0,l.getJSONTypes)(P.type),schemaType:(0,l.getJSONTypes)(P.schemaType)};return(0,u.eachItem)(v,c.type.length===0?h=>G.call(this,h,c):h=>c.type.forEach(S=>G.call(this,h,c,S))),this}getKeyword($){const P=this.RULES.all[$];return typeof P=="object"?P.definition:!!P}removeKeyword($){const{RULES:P}=this;delete P.keywords[$],delete P.all[$];for(const v of P.rules){const c=v.rules.findIndex(h=>h.keyword===$);c>=0&&v.rules.splice(c,1)}return this}addFormat($,P){return typeof P=="string"&&(P=new RegExp(P)),this.formats[$]=P,this}errorsText($=this.errors,{separator:P=", ",dataVar:v="data"}={}){return!$||$.length===0?"No errors":$.map(c=>`${v}${c.instancePath} ${c.message}`).reduce((c,h)=>c+P+h)}$dataMetaSchema($,P){const v=this.RULES.all;$=JSON.parse(JSON.stringify($));for(const c of P){const h=c.split("/").slice(1);let S=$;for(const N of h)S=S[N];for(const N in v){const j=v[N];if(typeof j!="object")continue;const{$data:V}=j.definition,D=S[N];V&&D&&(S[N]=X(D))}}return $}_removeAllSchemas($,P){for(const v in $){const c=$[v];(!P||P.test(v))&&(typeof c=="string"?delete $[v]:c&&!c.meta&&(this._cache.delete(c.schema),delete $[v]))}}_addSchema($,P,v,c=this.opts.validateSchema,h=this.opts.addUsedSchema){let S;const{schemaId:N}=this.opts;if(typeof $=="object")S=$[N];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof $!="boolean")throw new Error("schema must be object or boolean")}let j=this._cache.get($);if(j!==void 0)return j;v=(0,d.normalizeId)(S||v);const V=d.getSchemaRefs.call(this,$,v);return j=new o.SchemaEnv({schema:$,schemaId:N,meta:P,baseId:v,localRefs:V}),this._cache.set(j.schema,j),h&&!v.startsWith("#")&&(v&&this._checkUnique(v),this.refs[v]=j),c&&this.validateSchema($,!0),j}_checkUnique($){if(this.schemas[$]||this.refs[$])throw new Error(`schema with key or id "${$}" already exists`)}_compileSchemaEnv($){if($.meta?this._compileMetaSchema($):o.compileSchema.call(this,$),!$.validate)throw new Error("ajv implementation error");return $.validate}_compileMetaSchema($){const P=this.opts;this.opts=this._metaOpts;try{o.compileSchema.call(this,$)}finally{this.opts=P}}}k.ValidationError=s.default,k.MissingRefError=a.default,e.default=k;function T(O,$,P,v="error"){for(const c in O){const h=c;h in $&&this.logger[v](`${P}: option ${c}. ${O[h]}`)}}function I(O){return O=(0,d.normalizeId)(O),this.schemas[O]||this.refs[O]}function M(){const O=this.opts.schemas;if(O)if(Array.isArray(O))this.addSchema(O);else for(const $ in O)this.addSchema(O[$],$)}function W(){for(const O in this.opts.formats){const $=this.opts.formats[O];$&&this.addFormat(O,$)}}function C(O){if(Array.isArray(O)){this.addVocabulary(O);return}this.logger.warn("keywords option as map is deprecated, pass array");for(const $ in O){const P=O[$];P.keyword||(P.keyword=$),this.addKeyword(P)}}function R(){const O={...this.opts};for(const $ of y)delete O[$];return O}const F={log(){},warn(){},error(){}};function A(O){if(O===!1)return F;if(O===void 0)return console;if(O.log&&O.warn&&O.error)return O;throw new Error("logger must implement log, warn and error methods")}const K=/^[a-z_$][a-z0-9_$:-]*$/i;function x(O,$){const{RULES:P}=this;if((0,u.eachItem)(O,v=>{if(P.keywords[v])throw new Error(`Keyword ${v} is already defined`);if(!K.test(v))throw new Error(`Keyword ${v} has invalid name`)}),!!$&&$.$data&&!("code"in $||"validate"in $))throw new Error('$data keyword must have "code" or "validate" function')}function G(O,$,P){var v;const c=$==null?void 0:$.post;if(P&&c)throw new Error('keyword with "post" flag cannot have "type"');const{RULES:h}=this;let S=c?h.post:h.rules.find(({type:j})=>j===P);if(S||(S={type:P,rules:[]},h.rules.push(S)),h.keywords[O]=!0,!$)return;const N={keyword:O,definition:{...$,type:(0,l.getJSONTypes)($.type),schemaType:(0,l.getJSONTypes)($.schemaType)}};$.before?J.call(this,S,N,$.before):S.rules.push(N),h.all[O]=N,(v=$.implements)===null||v===void 0||v.forEach(j=>this.addKeyword(j))}function J(O,$,P){const v=O.rules.findIndex(c=>c.keyword===P);v>=0?O.rules.splice(v,0,$):(O.rules.push($),this.logger.warn(`rule ${P} is not defined`))}function Z(O){let{metaSchema:$}=O;$!==void 0&&(O.$data&&this.opts.$data&&($=X($)),O.validateSchema=this.compile($,!0))}const Y={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function X(O){return{anyOf:[O,Y]}}}(core$2);var draft7={},core$1={},id={};Object.defineProperty(id,"__esModule",{value:!0});const def$s={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};id.default=def$s;var ref={};Object.defineProperty(ref,"__esModule",{value:!0}),ref.callRef=ref.getValidate=void 0;const ref_error_1$1=ref_error,code_1$8=code,codegen_1$l=codegen,names_1$1=names$1,compile_1$1=compile,util_1$j=util,def$r={keyword:"$ref",schemaType:"string",code(e){const{gen:t,schema:r,it:s}=e,{baseId:a,schemaEnv:n,validateName:o,opts:i,self:d}=s,{root:l}=n;if((r==="#"||r==="#/")&&a===l.baseId)return f();const u=compile_1$1.resolveRef.call(d,l,a,r);if(u===void 0)throw new ref_error_1$1.default(s.opts.uriResolver,a,r);if(u instanceof compile_1$1.SchemaEnv)return w(u);return b(u);function f(){if(n===l)return callRef(e,o,n,n.$async);const y=t.scopeValue("root",{ref:l});return callRef(e,(0,codegen_1$l._)`${y}.validate`,l,l.$async)}function w(y){const _=getValidate(e,y);callRef(e,_,y,y.$async)}function b(y){const _=t.scopeValue("schema",i.code.source===!0?{ref:y,code:(0,codegen_1$l.stringify)(y)}:{ref:y}),m=t.name("valid"),p=e.subschema({schema:y,dataTypes:[],schemaPath:codegen_1$l.nil,topSchemaRef:_,errSchemaPath:r},m);e.mergeEvaluated(p),e.ok(m)}}};function getValidate(e,t){const{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,codegen_1$l._)`${r.scopeValue("wrapper",{ref:t})}.validate`}ref.getValidate=getValidate;function callRef(e,t,r,s){const{gen:a,it:n}=e,{allErrors:o,schemaEnv:i,opts:d}=n,l=d.passContext?names_1$1.default.this:codegen_1$l.nil;s?u():f();function u(){if(!i.$async)throw new Error("async schema referenced by sync schema");const y=a.let("valid");a.try(()=>{a.code((0,codegen_1$l._)`await ${(0,code_1$8.callValidateCode)(e,t,l)}`),b(t),o||a.assign(y,!0)},_=>{a.if((0,codegen_1$l._)`!(${_} instanceof ${n.ValidationError})`,()=>a.throw(_)),w(_),o||a.assign(y,!1)}),e.ok(y)}function f(){e.result((0,code_1$8.callValidateCode)(e,t,l),()=>b(t),()=>w(t))}function w(y){const _=(0,codegen_1$l._)`${y}.errors`;a.assign(names_1$1.default.vErrors,(0,codegen_1$l._)`${names_1$1.default.vErrors} === null ? ${_} : ${names_1$1.default.vErrors}.concat(${_})`),a.assign(names_1$1.default.errors,(0,codegen_1$l._)`${names_1$1.default.vErrors}.length`)}function b(y){var _;if(!n.opts.unevaluated)return;const m=(_=r==null?void 0:r.validate)===null||_===void 0?void 0:_.evaluated;if(n.props!==!0)if(m&&!m.dynamicProps)m.props!==void 0&&(n.props=util_1$j.mergeEvaluated.props(a,m.props,n.props));else{const p=a.var("props",(0,codegen_1$l._)`${y}.evaluated.props`);n.props=util_1$j.mergeEvaluated.props(a,p,n.props,codegen_1$l.Name)}if(n.items!==!0)if(m&&!m.dynamicItems)m.items!==void 0&&(n.items=util_1$j.mergeEvaluated.items(a,m.items,n.items));else{const p=a.var("items",(0,codegen_1$l._)`${y}.evaluated.items`);n.items=util_1$j.mergeEvaluated.items(a,p,n.items,codegen_1$l.Name)}}}ref.callRef=callRef,ref.default=def$r,Object.defineProperty(core$1,"__esModule",{value:!0});const id_1=id,ref_1=ref,core=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",id_1.default,ref_1.default];core$1.default=core;var validation$1={},limitNumber={};Object.defineProperty(limitNumber,"__esModule",{value:!0});const codegen_1$k=codegen,ops=codegen_1$k.operators,KWDs={maximum:{okStr:"<=",ok:ops.LTE,fail:ops.GT},minimum:{okStr:">=",ok:ops.GTE,fail:ops.LT},exclusiveMaximum:{okStr:"<",ok:ops.LT,fail:ops.GTE},exclusiveMinimum:{okStr:">",ok:ops.GT,fail:ops.LTE}},error$i={message:({keyword:e,schemaCode:t})=>(0,codegen_1$k.str)`must be ${KWDs[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,codegen_1$k._)`{comparison: ${KWDs[e].okStr}, limit: ${t}}`},def$q={keyword:Object.keys(KWDs),type:"number",schemaType:"number",$data:!0,error:error$i,code(e){const{keyword:t,data:r,schemaCode:s}=e;e.fail$data((0,codegen_1$k._)`${r} ${KWDs[t].fail} ${s} || isNaN(${r})`)}};limitNumber.default=def$q;var multipleOf={};Object.defineProperty(multipleOf,"__esModule",{value:!0});const codegen_1$j=codegen,error$h={message:({schemaCode:e})=>(0,codegen_1$j.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,codegen_1$j._)`{multipleOf: ${e}}`},def$p={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:error$h,code(e){const{gen:t,data:r,schemaCode:s,it:a}=e,n=a.opts.multipleOfPrecision,o=t.let("res"),i=n?(0,codegen_1$j._)`Math.abs(Math.round(${o}) - ${o}) > 1e-${n}`:(0,codegen_1$j._)`${o} !== parseInt(${o})`;e.fail$data((0,codegen_1$j._)`(${s} === 0 || (${o} = ${r}/${s}, ${i}))`)}};multipleOf.default=def$p;var limitLength={},ucs2length$1={};Object.defineProperty(ucs2length$1,"__esModule",{value:!0});function ucs2length(e){const t=e.length;let r=0,s=0,a;for(;s<t;)r++,a=e.charCodeAt(s++),a>=55296&&a<=56319&&s<t&&(a=e.charCodeAt(s),(a&64512)===56320&&s++);return r}ucs2length$1.default=ucs2length,ucs2length.code='require("ajv/dist/runtime/ucs2length").default',Object.defineProperty(limitLength,"__esModule",{value:!0});const codegen_1$i=codegen,util_1$i=util,ucs2length_1=ucs2length$1,error$g={message({keyword:e,schemaCode:t}){const r=e==="maxLength"?"more":"fewer";return(0,codegen_1$i.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,codegen_1$i._)`{limit: ${e}}`},def$o={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:error$g,code(e){const{keyword:t,data:r,schemaCode:s,it:a}=e,n=t==="maxLength"?codegen_1$i.operators.GT:codegen_1$i.operators.LT,o=a.opts.unicode===!1?(0,codegen_1$i._)`${r}.length`:(0,codegen_1$i._)`${(0,util_1$i.useFunc)(e.gen,ucs2length_1.default)}(${r})`;e.fail$data((0,codegen_1$i._)`${o} ${n} ${s}`)}};limitLength.default=def$o;var pattern={};Object.defineProperty(pattern,"__esModule",{value:!0});const code_1$7=code,codegen_1$h=codegen,error$f={message:({schemaCode:e})=>(0,codegen_1$h.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,codegen_1$h._)`{pattern: ${e}}`},def$n={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:error$f,code(e){const{data:t,$data:r,schema:s,schemaCode:a,it:n}=e,o=n.opts.unicodeRegExp?"u":"",i=r?(0,codegen_1$h._)`(new RegExp(${a}, ${o}))`:(0,code_1$7.usePattern)(e,s);e.fail$data((0,codegen_1$h._)`!${i}.test(${t})`)}};pattern.default=def$n;var limitProperties={};Object.defineProperty(limitProperties,"__esModule",{value:!0});const codegen_1$g=codegen,error$e={message({keyword:e,schemaCode:t}){const r=e==="maxProperties"?"more":"fewer";return(0,codegen_1$g.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,codegen_1$g._)`{limit: ${e}}`},def$m={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:error$e,code(e){const{keyword:t,data:r,schemaCode:s}=e,a=t==="maxProperties"?codegen_1$g.operators.GT:codegen_1$g.operators.LT;e.fail$data((0,codegen_1$g._)`Object.keys(${r}).length ${a} ${s}`)}};limitProperties.default=def$m;var required={};Object.defineProperty(required,"__esModule",{value:!0});const code_1$6=code,codegen_1$f=codegen,util_1$h=util,error$d={message:({params:{missingProperty:e}})=>(0,codegen_1$f.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,codegen_1$f._)`{missingProperty: ${e}}`},def$l={keyword:"required",type:"object",schemaType:"array",$data:!0,error:error$d,code(e){const{gen:t,schema:r,schemaCode:s,data:a,$data:n,it:o}=e,{opts:i}=o;if(!n&&r.length===0)return;const d=r.length>=i.loopRequired;if(o.allErrors?l():u(),i.strictRequired){const b=e.parentSchema.properties,{definedProperties:y}=e.it;for(const _ of r)if((b==null?void 0:b[_])===void 0&&!y.has(_)){const m=o.schemaEnv.baseId+o.errSchemaPath,p=`required property "${_}" is not defined at "${m}" (strictRequired)`;(0,util_1$h.checkStrictMode)(o,p,o.opts.strictRequired)}}function l(){if(d||n)e.block$data(codegen_1$f.nil,f);else for(const b of r)(0,code_1$6.checkReportMissingProp)(e,b)}function u(){const b=t.let("missing");if(d||n){const y=t.let("valid",!0);e.block$data(y,()=>w(b,y)),e.ok(y)}else t.if((0,code_1$6.checkMissingProp)(e,r,b)),(0,code_1$6.reportMissingProp)(e,b),t.else()}function f(){t.forOf("prop",s,b=>{e.setParams({missingProperty:b}),t.if((0,code_1$6.noPropertyInData)(t,a,b,i.ownProperties),()=>e.error())})}function w(b,y){e.setParams({missingProperty:b}),t.forOf(b,s,()=>{t.assign(y,(0,code_1$6.propertyInData)(t,a,b,i.ownProperties)),t.if((0,codegen_1$f.not)(y),()=>{e.error(),t.break()})},codegen_1$f.nil)}}};required.default=def$l;var limitItems={};Object.defineProperty(limitItems,"__esModule",{value:!0});const codegen_1$e=codegen,error$c={message({keyword:e,schemaCode:t}){const r=e==="maxItems"?"more":"fewer";return(0,codegen_1$e.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,codegen_1$e._)`{limit: ${e}}`},def$k={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:error$c,code(e){const{keyword:t,data:r,schemaCode:s}=e,a=t==="maxItems"?codegen_1$e.operators.GT:codegen_1$e.operators.LT;e.fail$data((0,codegen_1$e._)`${r}.length ${a} ${s}`)}};limitItems.default=def$k;var uniqueItems={},equal$1={};Object.defineProperty(equal$1,"__esModule",{value:!0});const equal=fastDeepEqual;equal.code='require("ajv/dist/runtime/equal").default',equal$1.default=equal,Object.defineProperty(uniqueItems,"__esModule",{value:!0});const dataType_1=dataType,codegen_1$d=codegen,util_1$g=util,equal_1$2=equal$1,error$b={message:({params:{i:e,j:t}})=>(0,codegen_1$d.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,codegen_1$d._)`{i: ${e}, j: ${t}}`},def$j={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:error$b,code(e){const{gen:t,data:r,$data:s,schema:a,parentSchema:n,schemaCode:o,it:i}=e;if(!s&&!a)return;const d=t.let("valid"),l=n.items?(0,dataType_1.getSchemaTypes)(n.items):[];e.block$data(d,u,(0,codegen_1$d._)`${o} === false`),e.ok(d);function u(){const y=t.let("i",(0,codegen_1$d._)`${r}.length`),_=t.let("j");e.setParams({i:y,j:_}),t.assign(d,!0),t.if((0,codegen_1$d._)`${y} > 1`,()=>(f()?w:b)(y,_))}function f(){return l.length>0&&!l.some(y=>y==="object"||y==="array")}function w(y,_){const m=t.name("item"),p=(0,dataType_1.checkDataTypes)(l,m,i.opts.strictNumbers,dataType_1.DataType.Wrong),g=t.const("indices",(0,codegen_1$d._)`{}`);t.for((0,codegen_1$d._)`;${y}--;`,()=>{t.let(m,(0,codegen_1$d._)`${r}[${y}]`),t.if(p,(0,codegen_1$d._)`continue`),l.length>1&&t.if((0,codegen_1$d._)`typeof ${m} == "string"`,(0,codegen_1$d._)`${m} += "_"`),t.if((0,codegen_1$d._)`typeof ${g}[${m}] == "number"`,()=>{t.assign(_,(0,codegen_1$d._)`${g}[${m}]`),e.error(),t.assign(d,!1).break()}).code((0,codegen_1$d._)`${g}[${m}] = ${y}`)})}function b(y,_){const m=(0,util_1$g.useFunc)(t,equal_1$2.default),p=t.name("outer");t.label(p).for((0,codegen_1$d._)`;${y}--;`,()=>t.for((0,codegen_1$d._)`${_} = ${y}; ${_}--;`,()=>t.if((0,codegen_1$d._)`${m}(${r}[${y}], ${r}[${_}])`,()=>{e.error(),t.assign(d,!1).break(p)})))}}};uniqueItems.default=def$j;var _const={};Object.defineProperty(_const,"__esModule",{value:!0});const codegen_1$c=codegen,util_1$f=util,equal_1$1=equal$1,error$a={message:"must be equal to constant",params:({schemaCode:e})=>(0,codegen_1$c._)`{allowedValue: ${e}}`},def$i={keyword:"const",$data:!0,error:error$a,code(e){const{gen:t,data:r,$data:s,schemaCode:a,schema:n}=e;s||n&&typeof n=="object"?e.fail$data((0,codegen_1$c._)`!${(0,util_1$f.useFunc)(t,equal_1$1.default)}(${r}, ${a})`):e.fail((0,codegen_1$c._)`${n} !== ${r}`)}};_const.default=def$i;var _enum={};Object.defineProperty(_enum,"__esModule",{value:!0});const codegen_1$b=codegen,util_1$e=util,equal_1=equal$1,error$9={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,codegen_1$b._)`{allowedValues: ${e}}`},def$h={keyword:"enum",schemaType:"array",$data:!0,error:error$9,code(e){const{gen:t,data:r,$data:s,schema:a,schemaCode:n,it:o}=e;if(!s&&a.length===0)throw new Error("enum must have non-empty array");const i=a.length>=o.opts.loopEnum;let d;const l=()=>d??(d=(0,util_1$e.useFunc)(t,equal_1.default));let u;if(i||s)u=t.let("valid"),e.block$data(u,f);else{if(!Array.isArray(a))throw new Error("ajv implementation error");const b=t.const("vSchema",n);u=(0,codegen_1$b.or)(...a.map((y,_)=>w(b,_)))}e.pass(u);function f(){t.assign(u,!1),t.forOf("v",n,b=>t.if((0,codegen_1$b._)`${l()}(${r}, ${b})`,()=>t.assign(u,!0).break()))}function w(b,y){const _=a[y];return typeof _=="object"&&_!==null?(0,codegen_1$b._)`${l()}(${r}, ${b}[${y}])`:(0,codegen_1$b._)`${r} === ${_}`}}};_enum.default=def$h,Object.defineProperty(validation$1,"__esModule",{value:!0});const limitNumber_1=limitNumber,multipleOf_1=multipleOf,limitLength_1=limitLength,pattern_1=pattern,limitProperties_1=limitProperties,required_1=required,limitItems_1=limitItems,uniqueItems_1=uniqueItems,const_1=_const,enum_1=_enum,validation=[limitNumber_1.default,multipleOf_1.default,limitLength_1.default,pattern_1.default,limitProperties_1.default,required_1.default,limitItems_1.default,uniqueItems_1.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},const_1.default,enum_1.default];validation$1.default=validation;var applicator={},additionalItems={};Object.defineProperty(additionalItems,"__esModule",{value:!0}),additionalItems.validateAdditionalItems=void 0;const codegen_1$a=codegen,util_1$d=util,error$8={message:({params:{len:e}})=>(0,codegen_1$a.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,codegen_1$a._)`{limit: ${e}}`},def$g={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:error$8,code(e){const{parentSchema:t,it:r}=e,{items:s}=t;if(!Array.isArray(s)){(0,util_1$d.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}validateAdditionalItems(e,s)}};function validateAdditionalItems(e,t){const{gen:r,schema:s,data:a,keyword:n,it:o}=e;o.items=!0;const i=r.const("len",(0,codegen_1$a._)`${a}.length`);if(s===!1)e.setParams({len:t.length}),e.pass((0,codegen_1$a._)`${i} <= ${t.length}`);else if(typeof s=="object"&&!(0,util_1$d.alwaysValidSchema)(o,s)){const l=r.var("valid",(0,codegen_1$a._)`${i} <= ${t.length}`);r.if((0,codegen_1$a.not)(l),()=>d(l)),e.ok(l)}function d(l){r.forRange("i",t.length,i,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:util_1$d.Type.Num},l),o.allErrors||r.if((0,codegen_1$a.not)(l),()=>r.break())})}}additionalItems.validateAdditionalItems=validateAdditionalItems,additionalItems.default=def$g;var prefixItems={},items={};Object.defineProperty(items,"__esModule",{value:!0}),items.validateTuple=void 0;const codegen_1$9=codegen,util_1$c=util,code_1$5=code,def$f={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){const{schema:t,it:r}=e;if(Array.isArray(t))return validateTuple(e,"additionalItems",t);r.items=!0,!(0,util_1$c.alwaysValidSchema)(r,t)&&e.ok((0,code_1$5.validateArray)(e))}};function validateTuple(e,t,r=e.schema){const{gen:s,parentSchema:a,data:n,keyword:o,it:i}=e;u(a),i.opts.unevaluated&&r.length&&i.items!==!0&&(i.items=util_1$c.mergeEvaluated.items(s,r.length,i.items));const d=s.name("valid"),l=s.const("len",(0,codegen_1$9._)`${n}.length`);r.forEach((f,w)=>{(0,util_1$c.alwaysValidSchema)(i,f)||(s.if((0,codegen_1$9._)`${l} > ${w}`,()=>e.subschema({keyword:o,schemaProp:w,dataProp:w},d)),e.ok(d))});function u(f){const{opts:w,errSchemaPath:b}=i,y=r.length,_=y===f.minItems&&(y===f.maxItems||f[t]===!1);if(w.strictTuples&&!_){const m=`"${o}" is ${y}-tuple, but minItems or maxItems/${t} are not specified or different at path "${b}"`;(0,util_1$c.checkStrictMode)(i,m,w.strictTuples)}}}items.validateTuple=validateTuple,items.default=def$f,Object.defineProperty(prefixItems,"__esModule",{value:!0});const items_1$1=items,def$e={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,items_1$1.validateTuple)(e,"items")};prefixItems.default=def$e;var items2020={};Object.defineProperty(items2020,"__esModule",{value:!0});const codegen_1$8=codegen,util_1$b=util,code_1$4=code,additionalItems_1$1=additionalItems,error$7={message:({params:{len:e}})=>(0,codegen_1$8.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,codegen_1$8._)`{limit: ${e}}`},def$d={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:error$7,code(e){const{schema:t,parentSchema:r,it:s}=e,{prefixItems:a}=r;s.items=!0,!(0,util_1$b.alwaysValidSchema)(s,t)&&(a?(0,additionalItems_1$1.validateAdditionalItems)(e,a):e.ok((0,code_1$4.validateArray)(e)))}};items2020.default=def$d;var contains={};Object.defineProperty(contains,"__esModule",{value:!0});const codegen_1$7=codegen,util_1$a=util,error$6={message:({params:{min:e,max:t}})=>t===void 0?(0,codegen_1$7.str)`must contain at least ${e} valid item(s)`:(0,codegen_1$7.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,codegen_1$7._)`{minContains: ${e}}`:(0,codegen_1$7._)`{minContains: ${e}, maxContains: ${t}}`},def$c={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:error$6,code(e){const{gen:t,schema:r,parentSchema:s,data:a,it:n}=e;let o,i;const{minContains:d,maxContains:l}=s;n.opts.next?(o=d===void 0?1:d,i=l):o=1;const u=t.const("len",(0,codegen_1$7._)`${a}.length`);if(e.setParams({min:o,max:i}),i===void 0&&o===0){(0,util_1$a.checkStrictMode)(n,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&o>i){(0,util_1$a.checkStrictMode)(n,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,util_1$a.alwaysValidSchema)(n,r)){let _=(0,codegen_1$7._)`${u} >= ${o}`;i!==void 0&&(_=(0,codegen_1$7._)`${_} && ${u} <= ${i}`),e.pass(_);return}n.items=!0;const f=t.name("valid");i===void 0&&o===1?b(f,()=>t.if(f,()=>t.break())):o===0?(t.let(f,!0),i!==void 0&&t.if((0,codegen_1$7._)`${a}.length > 0`,w)):(t.let(f,!1),w()),e.result(f,()=>e.reset());function w(){const _=t.name("_valid"),m=t.let("count",0);b(_,()=>t.if(_,()=>y(m)))}function b(_,m){t.forRange("i",0,u,p=>{e.subschema({keyword:"contains",dataProp:p,dataPropType:util_1$a.Type.Num,compositeRule:!0},_),m()})}function y(_){t.code((0,codegen_1$7._)`${_}++`),i===void 0?t.if((0,codegen_1$7._)`${_} >= ${o}`,()=>t.assign(f,!0).break()):(t.if((0,codegen_1$7._)`${_} > ${i}`,()=>t.assign(f,!1).break()),o===1?t.assign(f,!0):t.if((0,codegen_1$7._)`${_} >= ${o}`,()=>t.assign(f,!0)))}}};contains.default=def$c;var dependencies={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.validateSchemaDeps=e.validatePropertyDeps=e.error=void 0;const t=codegen,r=util,s=code;e.error={message:({params:{property:d,depsCount:l,deps:u}})=>{const f=l===1?"property":"properties";return(0,t.str)`must have ${f} ${u} when property ${d} is present`},params:({params:{property:d,depsCount:l,deps:u,missingProperty:f}})=>(0,t._)`{property: ${d},
8
+ missingProperty: ${f},
9
+ depsCount: ${l},
10
+ deps: ${u}}`};const a={keyword:"dependencies",type:"object",schemaType:"object",error:e.error,code(d){const[l,u]=n(d);o(d,l),i(d,u)}};function n({schema:d}){const l={},u={};for(const f in d){if(f==="__proto__")continue;const w=Array.isArray(d[f])?l:u;w[f]=d[f]}return[l,u]}function o(d,l=d.schema){const{gen:u,data:f,it:w}=d;if(Object.keys(l).length===0)return;const b=u.let("missing");for(const y in l){const _=l[y];if(_.length===0)continue;const m=(0,s.propertyInData)(u,f,y,w.opts.ownProperties);d.setParams({property:y,depsCount:_.length,deps:_.join(", ")}),w.allErrors?u.if(m,()=>{for(const p of _)(0,s.checkReportMissingProp)(d,p)}):(u.if((0,t._)`${m} && (${(0,s.checkMissingProp)(d,_,b)})`),(0,s.reportMissingProp)(d,b),u.else())}}e.validatePropertyDeps=o;function i(d,l=d.schema){const{gen:u,data:f,keyword:w,it:b}=d,y=u.name("valid");for(const _ in l)(0,r.alwaysValidSchema)(b,l[_])||(u.if((0,s.propertyInData)(u,f,_,b.opts.ownProperties),()=>{const m=d.subschema({keyword:w,schemaProp:_},y);d.mergeValidEvaluated(m,y)},()=>u.var(y,!0)),d.ok(y))}e.validateSchemaDeps=i,e.default=a})(dependencies);var propertyNames={};Object.defineProperty(propertyNames,"__esModule",{value:!0});const codegen_1$6=codegen,util_1$9=util,error$5={message:"property name must be valid",params:({params:e})=>(0,codegen_1$6._)`{propertyName: ${e.propertyName}}`},def$b={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:error$5,code(e){const{gen:t,schema:r,data:s,it:a}=e;if((0,util_1$9.alwaysValidSchema)(a,r))return;const n=t.name("valid");t.forIn("key",s,o=>{e.setParams({propertyName:o}),e.subschema({keyword:"propertyNames",data:o,dataTypes:["string"],propertyName:o,compositeRule:!0},n),t.if((0,codegen_1$6.not)(n),()=>{e.error(!0),a.allErrors||t.break()})}),e.ok(n)}};propertyNames.default=def$b;var additionalProperties={};Object.defineProperty(additionalProperties,"__esModule",{value:!0});const code_1$3=code,codegen_1$5=codegen,names_1=names$1,util_1$8=util,error$4={message:"must NOT have additional properties",params:({params:e})=>(0,codegen_1$5._)`{additionalProperty: ${e.additionalProperty}}`},def$a={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:error$4,code(e){const{gen:t,schema:r,parentSchema:s,data:a,errsCount:n,it:o}=e;if(!n)throw new Error("ajv implementation error");const{allErrors:i,opts:d}=o;if(o.props=!0,d.removeAdditional!=="all"&&(0,util_1$8.alwaysValidSchema)(o,r))return;const l=(0,code_1$3.allSchemaProperties)(s.properties),u=(0,code_1$3.allSchemaProperties)(s.patternProperties);f(),e.ok((0,codegen_1$5._)`${n} === ${names_1.default.errors}`);function f(){t.forIn("key",a,m=>{!l.length&&!u.length?y(m):t.if(w(m),()=>y(m))})}function w(m){let p;if(l.length>8){const g=(0,util_1$8.schemaRefOrVal)(o,s.properties,"properties");p=(0,code_1$3.isOwnProperty)(t,g,m)}else l.length?p=(0,codegen_1$5.or)(...l.map(g=>(0,codegen_1$5._)`${m} === ${g}`)):p=codegen_1$5.nil;return u.length&&(p=(0,codegen_1$5.or)(p,...u.map(g=>(0,codegen_1$5._)`${(0,code_1$3.usePattern)(e,g)}.test(${m})`))),(0,codegen_1$5.not)(p)}function b(m){t.code((0,codegen_1$5._)`delete ${a}[${m}]`)}function y(m){if(d.removeAdditional==="all"||d.removeAdditional&&r===!1){b(m);return}if(r===!1){e.setParams({additionalProperty:m}),e.error(),i||t.break();return}if(typeof r=="object"&&!(0,util_1$8.alwaysValidSchema)(o,r)){const p=t.name("valid");d.removeAdditional==="failing"?(_(m,p,!1),t.if((0,codegen_1$5.not)(p),()=>{e.reset(),b(m)})):(_(m,p),i||t.if((0,codegen_1$5.not)(p),()=>t.break()))}}function _(m,p,g){const E={keyword:"additionalProperties",dataProp:m,dataPropType:util_1$8.Type.Str};g===!1&&Object.assign(E,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(E,p)}}};additionalProperties.default=def$a;var properties$1={};Object.defineProperty(properties$1,"__esModule",{value:!0});const validate_1=validate$1,code_1$2=code,util_1$7=util,additionalProperties_1$1=additionalProperties,def$9={keyword:"properties",type:"object",schemaType:"object",code(e){const{gen:t,schema:r,parentSchema:s,data:a,it:n}=e;n.opts.removeAdditional==="all"&&s.additionalProperties===void 0&&additionalProperties_1$1.default.code(new validate_1.KeywordCxt(n,additionalProperties_1$1.default,"additionalProperties"));const o=(0,code_1$2.allSchemaProperties)(r);for(const f of o)n.definedProperties.add(f);n.opts.unevaluated&&o.length&&n.props!==!0&&(n.props=util_1$7.mergeEvaluated.props(t,(0,util_1$7.toHash)(o),n.props));const i=o.filter(f=>!(0,util_1$7.alwaysValidSchema)(n,r[f]));if(i.length===0)return;const d=t.name("valid");for(const f of i)l(f)?u(f):(t.if((0,code_1$2.propertyInData)(t,a,f,n.opts.ownProperties)),u(f),n.allErrors||t.else().var(d,!0),t.endIf()),e.it.definedProperties.add(f),e.ok(d);function l(f){return n.opts.useDefaults&&!n.compositeRule&&r[f].default!==void 0}function u(f){e.subschema({keyword:"properties",schemaProp:f,dataProp:f},d)}}};properties$1.default=def$9;var patternProperties={};Object.defineProperty(patternProperties,"__esModule",{value:!0});const code_1$1=code,codegen_1$4=codegen,util_1$6=util,util_2=util,def$8={keyword:"patternProperties",type:"object",schemaType:"object",code(e){const{gen:t,schema:r,data:s,parentSchema:a,it:n}=e,{opts:o}=n,i=(0,code_1$1.allSchemaProperties)(r),d=i.filter(_=>(0,util_1$6.alwaysValidSchema)(n,r[_]));if(i.length===0||d.length===i.length&&(!n.opts.unevaluated||n.props===!0))return;const l=o.strictSchema&&!o.allowMatchingProperties&&a.properties,u=t.name("valid");n.props!==!0&&!(n.props instanceof codegen_1$4.Name)&&(n.props=(0,util_2.evaluatedPropsToName)(t,n.props));const{props:f}=n;w();function w(){for(const _ of i)l&&b(_),n.allErrors?y(_):(t.var(u,!0),y(_),t.if(u))}function b(_){for(const m in l)new RegExp(_).test(m)&&(0,util_1$6.checkStrictMode)(n,`property ${m} matches pattern ${_} (use allowMatchingProperties)`)}function y(_){t.forIn("key",s,m=>{t.if((0,codegen_1$4._)`${(0,code_1$1.usePattern)(e,_)}.test(${m})`,()=>{const p=d.includes(_);p||e.subschema({keyword:"patternProperties",schemaProp:_,dataProp:m,dataPropType:util_2.Type.Str},u),n.opts.unevaluated&&f!==!0?t.assign((0,codegen_1$4._)`${f}[${m}]`,!0):!p&&!n.allErrors&&t.if((0,codegen_1$4.not)(u),()=>t.break())})})}}};patternProperties.default=def$8;var not={};Object.defineProperty(not,"__esModule",{value:!0});const util_1$5=util,def$7={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){const{gen:t,schema:r,it:s}=e;if((0,util_1$5.alwaysValidSchema)(s,r)){e.fail();return}const a=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),e.failResult(a,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};not.default=def$7;var anyOf={};Object.defineProperty(anyOf,"__esModule",{value:!0});const code_1=code,def$6={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:code_1.validateUnion,error:{message:"must match a schema in anyOf"}};anyOf.default=def$6;var oneOf={};Object.defineProperty(oneOf,"__esModule",{value:!0});const codegen_1$3=codegen,util_1$4=util,error$3={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,codegen_1$3._)`{passingSchemas: ${e.passing}}`},def$5={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:error$3,code(e){const{gen:t,schema:r,parentSchema:s,it:a}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(a.opts.discriminator&&s.discriminator)return;const n=r,o=t.let("valid",!1),i=t.let("passing",null),d=t.name("_valid");e.setParams({passing:i}),t.block(l),e.result(o,()=>e.reset(),()=>e.error(!0));function l(){n.forEach((u,f)=>{let w;(0,util_1$4.alwaysValidSchema)(a,u)?t.var(d,!0):w=e.subschema({keyword:"oneOf",schemaProp:f,compositeRule:!0},d),f>0&&t.if((0,codegen_1$3._)`${d} && ${o}`).assign(o,!1).assign(i,(0,codegen_1$3._)`[${i}, ${f}]`).else(),t.if(d,()=>{t.assign(o,!0),t.assign(i,f),w&&e.mergeEvaluated(w,codegen_1$3.Name)})})}}};oneOf.default=def$5;var allOf={};Object.defineProperty(allOf,"__esModule",{value:!0});const util_1$3=util,def$4={keyword:"allOf",schemaType:"array",code(e){const{gen:t,schema:r,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");const a=t.name("valid");r.forEach((n,o)=>{if((0,util_1$3.alwaysValidSchema)(s,n))return;const i=e.subschema({keyword:"allOf",schemaProp:o},a);e.ok(a),e.mergeEvaluated(i)})}};allOf.default=def$4;var _if={};Object.defineProperty(_if,"__esModule",{value:!0});const codegen_1$2=codegen,util_1$2=util,error$2={message:({params:e})=>(0,codegen_1$2.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,codegen_1$2._)`{failingKeyword: ${e.ifClause}}`},def$3={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:error$2,code(e){const{gen:t,parentSchema:r,it:s}=e;r.then===void 0&&r.else===void 0&&(0,util_1$2.checkStrictMode)(s,'"if" without "then" and "else" is ignored');const a=hasSchema(s,"then"),n=hasSchema(s,"else");if(!a&&!n)return;const o=t.let("valid",!0),i=t.name("_valid");if(d(),e.reset(),a&&n){const u=t.let("ifClause");e.setParams({ifClause:u}),t.if(i,l("then",u),l("else",u))}else a?t.if(i,l("then")):t.if((0,codegen_1$2.not)(i),l("else"));e.pass(o,()=>e.error(!0));function d(){const u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},i);e.mergeEvaluated(u)}function l(u,f){return()=>{const w=e.subschema({keyword:u},i);t.assign(o,i),e.mergeValidEvaluated(w,o),f?t.assign(f,(0,codegen_1$2._)`${u}`):e.setParams({ifClause:u})}}}};function hasSchema(e,t){const r=e.schema[t];return r!==void 0&&!(0,util_1$2.alwaysValidSchema)(e,r)}_if.default=def$3;var thenElse={};Object.defineProperty(thenElse,"__esModule",{value:!0});const util_1$1=util,def$2={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,util_1$1.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};thenElse.default=def$2,Object.defineProperty(applicator,"__esModule",{value:!0});const additionalItems_1=additionalItems,prefixItems_1=prefixItems,items_1=items,items2020_1=items2020,contains_1=contains,dependencies_1=dependencies,propertyNames_1=propertyNames,additionalProperties_1=additionalProperties,properties_1=properties$1,patternProperties_1=patternProperties,not_1=not,anyOf_1=anyOf,oneOf_1=oneOf,allOf_1=allOf,if_1=_if,thenElse_1=thenElse;function getApplicator(e=!1){const t=[not_1.default,anyOf_1.default,oneOf_1.default,allOf_1.default,if_1.default,thenElse_1.default,propertyNames_1.default,additionalProperties_1.default,dependencies_1.default,properties_1.default,patternProperties_1.default];return e?t.push(prefixItems_1.default,items2020_1.default):t.push(additionalItems_1.default,items_1.default),t.push(contains_1.default),t}applicator.default=getApplicator;var format$2={},format$1={};Object.defineProperty(format$1,"__esModule",{value:!0});const codegen_1$1=codegen,error$1={message:({schemaCode:e})=>(0,codegen_1$1.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,codegen_1$1._)`{format: ${e}}`},def$1={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:error$1,code(e,t){const{gen:r,data:s,$data:a,schema:n,schemaCode:o,it:i}=e,{opts:d,errSchemaPath:l,schemaEnv:u,self:f}=i;if(!d.validateFormats)return;a?w():b();function w(){const y=r.scopeValue("formats",{ref:f.formats,code:d.code.formats}),_=r.const("fDef",(0,codegen_1$1._)`${y}[${o}]`),m=r.let("fType"),p=r.let("format");r.if((0,codegen_1$1._)`typeof ${_} == "object" && !(${_} instanceof RegExp)`,()=>r.assign(m,(0,codegen_1$1._)`${_}.type || "string"`).assign(p,(0,codegen_1$1._)`${_}.validate`),()=>r.assign(m,(0,codegen_1$1._)`"string"`).assign(p,_)),e.fail$data((0,codegen_1$1.or)(g(),E()));function g(){return d.strictSchema===!1?codegen_1$1.nil:(0,codegen_1$1._)`${o} && !${p}`}function E(){const k=u.$async?(0,codegen_1$1._)`(${_}.async ? await ${p}(${s}) : ${p}(${s}))`:(0,codegen_1$1._)`${p}(${s})`,T=(0,codegen_1$1._)`(typeof ${p} == "function" ? ${k} : ${p}.test(${s}))`;return(0,codegen_1$1._)`${p} && ${p} !== true && ${m} === ${t} && !${T}`}}function b(){const y=f.formats[n];if(!y){g();return}if(y===!0)return;const[_,m,p]=E(y);_===t&&e.pass(k());function g(){if(d.strictSchema===!1){f.logger.warn(T());return}throw new Error(T());function T(){return`unknown format "${n}" ignored in schema at path "${l}"`}}function E(T){const I=T instanceof RegExp?(0,codegen_1$1.regexpCode)(T):d.code.formats?(0,codegen_1$1._)`${d.code.formats}${(0,codegen_1$1.getProperty)(n)}`:void 0,M=r.scopeValue("formats",{key:n,ref:T,code:I});return typeof T=="object"&&!(T instanceof RegExp)?[T.type||"string",T.validate,(0,codegen_1$1._)`${M}.validate`]:["string",T,M]}function k(){if(typeof y=="object"&&!(y instanceof RegExp)&&y.async){if(!u.$async)throw new Error("async format in sync schema");return(0,codegen_1$1._)`await ${p}(${s})`}return typeof m=="function"?(0,codegen_1$1._)`${p}(${s})`:(0,codegen_1$1._)`${p}.test(${s})`}}}};format$1.default=def$1,Object.defineProperty(format$2,"__esModule",{value:!0});const format_1$1=format$1,format=[format_1$1.default];format$2.default=format;var metadata={};Object.defineProperty(metadata,"__esModule",{value:!0}),metadata.contentVocabulary=metadata.metadataVocabulary=void 0,metadata.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"],metadata.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"],Object.defineProperty(draft7,"__esModule",{value:!0});const core_1=core$1,validation_1=validation$1,applicator_1=applicator,format_1=format$2,metadata_1=metadata,draft7Vocabularies=[core_1.default,validation_1.default,(0,applicator_1.default)(),format_1.default,metadata_1.metadataVocabulary,metadata_1.contentVocabulary];draft7.default=draft7Vocabularies;var discriminator={},types={};Object.defineProperty(types,"__esModule",{value:!0}),types.DiscrError=void 0;var DiscrError;(function(e){e.Tag="tag",e.Mapping="mapping"})(DiscrError||(types.DiscrError=DiscrError={})),Object.defineProperty(discriminator,"__esModule",{value:!0});const codegen_1=codegen,types_1=types,compile_1=compile,ref_error_1=ref_error,util_1=util,error={message:({params:{discrError:e,tagName:t}})=>e===types_1.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,codegen_1._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},def={keyword:"discriminator",type:"object",schemaType:"object",error,code(e){const{gen:t,data:r,schema:s,parentSchema:a,it:n}=e,{oneOf:o}=a;if(!n.opts.discriminator)throw new Error("discriminator: requires discriminator option");const i=s.propertyName;if(typeof i!="string")throw new Error("discriminator: requires propertyName");if(s.mapping)throw new Error("discriminator: mapping is not supported");if(!o)throw new Error("discriminator: requires oneOf keyword");const d=t.let("valid",!1),l=t.const("tag",(0,codegen_1._)`${r}${(0,codegen_1.getProperty)(i)}`);t.if((0,codegen_1._)`typeof ${l} == "string"`,()=>u(),()=>e.error(!1,{discrError:types_1.DiscrError.Tag,tag:l,tagName:i})),e.ok(d);function u(){const b=w();t.if(!1);for(const y in b)t.elseIf((0,codegen_1._)`${l} === ${y}`),t.assign(d,f(b[y]));t.else(),e.error(!1,{discrError:types_1.DiscrError.Mapping,tag:l,tagName:i}),t.endIf()}function f(b){const y=t.name("valid"),_=e.subschema({keyword:"oneOf",schemaProp:b},y);return e.mergeEvaluated(_,codegen_1.Name),y}function w(){var b;const y={},_=p(a);let m=!0;for(let k=0;k<o.length;k++){let T=o[k];if(T!=null&&T.$ref&&!(0,util_1.schemaHasRulesButRef)(T,n.self.RULES)){const M=T.$ref;if(T=compile_1.resolveRef.call(n.self,n.schemaEnv.root,n.baseId,M),T instanceof compile_1.SchemaEnv&&(T=T.schema),T===void 0)throw new ref_error_1.default(n.opts.uriResolver,n.baseId,M)}const I=(b=T==null?void 0:T.properties)===null||b===void 0?void 0:b[i];if(typeof I!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);m=m&&(_||p(T)),g(I,k)}if(!m)throw new Error(`discriminator: "${i}" must be required`);return y;function p({required:k}){return Array.isArray(k)&&k.includes(i)}function g(k,T){if(k.const)E(k.const,T);else if(k.enum)for(const I of k.enum)E(I,T);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function E(k,T){if(typeof k!="string"||k in y)throw new Error(`discriminator: "${i}" values must be unique strings`);y[k]=T}}}};discriminator.default=def;const $schema="http://json-schema.org/draft-07/schema#",$id="http://json-schema.org/draft-07/schema#",title="Core schema meta-schema",definitions={schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type=["object","boolean"],properties={$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},require$$3={$schema,$id,title,definitions,type,properties,default:!0};(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.MissingRefError=t.ValidationError=t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=t.Ajv=void 0;const r=core$2,s=draft7,a=discriminator,n=require$$3,o=["/properties"],i="http://json-schema.org/draft-07/schema";class d extends r.default{_addVocabularies(){super._addVocabularies(),s.default.forEach(y=>this.addVocabulary(y)),this.opts.discriminator&&this.addKeyword(a.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;const y=this.opts.$data?this.$dataMetaSchema(n,o):n;this.addMetaSchema(y,i,!1),this.refs["http://json-schema.org/schema"]=i}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(i)?i:void 0)}}t.Ajv=d,e.exports=t=d,e.exports.Ajv=d,Object.defineProperty(t,"__esModule",{value:!0}),t.default=d;var l=validate$1;Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return l.KeywordCxt}});var u=codegen;Object.defineProperty(t,"_",{enumerable:!0,get:function(){return u._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return u.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return u.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return u.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return u.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return u.CodeGen}});var f=validation_error;Object.defineProperty(t,"ValidationError",{enumerable:!0,get:function(){return f.default}});var w=ref_error;Object.defineProperty(t,"MissingRefError",{enumerable:!0,get:function(){return w.default}})})(ajv$1,ajv$1.exports);var ajvExports=ajv$1.exports;const Ajv=getDefaultExportFromCjs(ajvExports);var dist={exports:{}},formats={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.formatNames=e.fastFormats=e.fullFormats=void 0;function t(C,R){return{validate:C,compare:R}}e.fullFormats={date:t(n,o),time:t(d,l),"date-time":t(f,w),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:_,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:W,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:p,int32:{type:"number",validate:k},int64:{type:"number",validate:T},float:{type:"number",validate:I},double:{type:"number",validate:I},password:!0,binary:!0},e.fastFormats={...e.fullFormats,date:t(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,o),time:t(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,l),"date-time":t(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,w),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i},e.formatNames=Object.keys(e.fullFormats);function r(C){return C%4===0&&(C%100!==0||C%400===0)}const s=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,a=[0,31,28,31,30,31,30,31,31,30,31,30,31];function n(C){const R=s.exec(C);if(!R)return!1;const F=+R[1],A=+R[2],K=+R[3];return A>=1&&A<=12&&K>=1&&K<=(A===2&&r(F)?29:a[A])}function o(C,R){if(C&&R)return C>R?1:C<R?-1:0}const i=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i;function d(C,R){const F=i.exec(C);if(!F)return!1;const A=+F[1],K=+F[2],x=+F[3],G=F[5];return(A<=23&&K<=59&&x<=59||A===23&&K===59&&x===60)&&(!R||G!=="")}function l(C,R){if(!(C&&R))return;const F=i.exec(C),A=i.exec(R);if(F&&A)return C=F[1]+F[2]+F[3]+(F[4]||""),R=A[1]+A[2]+A[3]+(A[4]||""),C>R?1:C<R?-1:0}const u=/t|\s/i;function f(C){const R=C.split(u);return R.length===2&&n(R[0])&&d(R[1],!0)}function w(C,R){if(!(C&&R))return;const[F,A]=C.split(u),[K,x]=R.split(u),G=o(F,K);if(G!==void 0)return G||l(A,x)}const b=/\/|:/,y=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function _(C){return b.test(C)&&y.test(C)}const m=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function p(C){return m.lastIndex=0,m.test(C)}const g=-2147483648,E=2**31-1;function k(C){return Number.isInteger(C)&&C<=E&&C>=g}function T(C){return Number.isInteger(C)}function I(){return!0}const M=/[^\\]\\Z/;function W(C){if(M.test(C))return!1;try{return new RegExp(C),!0}catch{return!1}}})(formats);var limit={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.formatLimitDefinition=void 0;const t=ajvExports,r=codegen,s=r.operators,a={formatMaximum:{okStr:"<=",ok:s.LTE,fail:s.GT},formatMinimum:{okStr:">=",ok:s.GTE,fail:s.LT},formatExclusiveMaximum:{okStr:"<",ok:s.LT,fail:s.GTE},formatExclusiveMinimum:{okStr:">",ok:s.GT,fail:s.LTE}},n={message:({keyword:i,schemaCode:d})=>r.str`should be ${a[i].okStr} ${d}`,params:({keyword:i,schemaCode:d})=>r._`{comparison: ${a[i].okStr}, limit: ${d}}`};e.formatLimitDefinition={keyword:Object.keys(a),type:"string",schemaType:"string",$data:!0,error:n,code(i){const{gen:d,data:l,schemaCode:u,keyword:f,it:w}=i,{opts:b,self:y}=w;if(!b.validateFormats)return;const _=new t.KeywordCxt(w,y.RULES.all.format.definition,"format");_.$data?m():p();function m(){const E=d.scopeValue("formats",{ref:y.formats,code:b.code.formats}),k=d.const("fmt",r._`${E}[${_.schemaCode}]`);i.fail$data(r.or(r._`typeof ${k} != "object"`,r._`${k} instanceof RegExp`,r._`typeof ${k}.compare != "function"`,g(k)))}function p(){const E=_.schema,k=y.formats[E];if(!k||k===!0)return;if(typeof k!="object"||k instanceof RegExp||typeof k.compare!="function")throw new Error(`"${f}": format "${E}" does not define "compare" function`);const T=d.scopeValue("formats",{key:E,ref:k,code:b.code.formats?r._`${b.code.formats}${r.getProperty(E)}`:void 0});i.fail$data(g(T))}function g(E){return r._`${E}.compare(${l}, ${u}) ${a[f].fail} 0`}},dependencies:["format"]};const o=i=>(i.addKeyword(e.formatLimitDefinition),i);e.default=o})(limit),function(e,t){Object.defineProperty(t,"__esModule",{value:!0});const r=formats,s=limit,a=codegen,n=new a.Name("fullFormats"),o=new a.Name("fastFormats"),i=(l,u={keywords:!0})=>{if(Array.isArray(u))return d(l,u,r.fullFormats,n),l;const[f,w]=u.mode==="fast"?[r.fastFormats,o]:[r.fullFormats,n],b=u.formats||r.formatNames;return d(l,b,f,w),u.keywords&&s.default(l),l};i.get=(l,u="full")=>{const w=(u==="fast"?r.fastFormats:r.fullFormats)[l];if(!w)throw new Error(`Unknown format "${l}"`);return w};function d(l,u,f,w){var b,y;(b=(y=l.opts.code).formats)!==null&&b!==void 0||(y.formats=a._`require("ajv-formats/dist/formats").${w}`);for(const _ of u)l.addFormat(_,f[_])}e.exports=t=i,Object.defineProperty(t,"__esModule",{value:!0}),t.default=i}(dist,dist.exports);var distExports=dist.exports;const addFormats=getDefaultExportFromCjs(distExports);var zh=function e(t){if(t&&t.length)for(const a of t){let n;switch(a.keyword){case"additionalItems":case"items":n="";var s=a.params.limit;n+="不允许超过"+s+"个元素";break;case"additionalProperties":n="不允许有额外的属性";break;case"anyOf":n="数据应为 anyOf 所指定的其中一个";break;case"const":n="应当等于常量";break;case"contains":n="应当包含一个有效项";break;case"dependencies":case"dependentRequired":n="";var s=a.params.depsCount;n+="应当拥有属性"+a.params.property+"的依赖属性"+a.params.deps;break;case"discriminator":switch(a.params.error){case"tag":n='标签 "'+a.params.tag+'" 的类型必须为字符串';break;case"mapping":n='标签 "'+a.params.tag+'" 的值必须在 oneOf 之中';break;default:n='应当通过 "'+a.keyword+' 关键词校验"'}break;case"enum":n="应当是预设定的枚举值之一";break;case"false schema":n="布尔模式出错";break;case"format":n='应当匹配格式 "'+a.params.format+'"';break;case"formatMaximum":case"formatExclusiveMaximum":n="";var r=a.params.comparison+" "+a.params.limit;n+="应当是 "+r;break;case"formatMinimum":case"formatExclusiveMinimum":n="";var r=a.params.comparison+" "+a.params.limit;n+="应当是 "+r;break;case"if":n='应当匹配模式 "'+a.params.failingKeyword+'" ';break;case"maximum":case"exclusiveMaximum":n="";var r=a.params.comparison+" "+a.params.limit;n+="应当为 "+r;break;case"maxItems":n="";var s=a.params.limit;n+="不应多于 "+s+" 个项";break;case"maxLength":n="";var s=a.params.limit;n+="不应多于 "+s+" 个字符";break;case"maxProperties":n="";var s=a.params.limit;n+="不应有多于 "+s+" 个属性";break;case"minimum":case"exclusiveMinimum":n="";var r=a.params.comparison+" "+a.params.limit;n+="应当为 "+r;break;case"minItems":n="";var s=a.params.limit;n+="不应少于 "+s+" 个项";break;case"minLength":n="";var s=a.params.limit;n+="不应少于 "+s+" 个字符";break;case"minProperties":n="";var s=a.params.limit;n+="不应有少于 "+s+" 个属性";break;case"multipleOf":n="应当是 "+a.params.multipleOf+" 的整数倍";break;case"not":n='不应当匹配 "not" schema';break;case"oneOf":n='只能匹配一个 "oneOf" 中的 schema';break;case"pattern":n='应当匹配模式 "'+a.params.pattern+'"';break;case"patternRequired":n="应当有属性匹配模式 "+a.params.missingPattern;break;case"propertyNames":n="属性名 无效";break;case"required":n="应当有必需属性 "+a.params.missingProperty;break;case"type":n="应当是 "+a.params.type+" 类型";break;case"unevaluatedItems":n="";var s=a.params.len;n+=" 不允许有超过 "+s+" 个元素";break;case"unevaluatedProperties":n="不允许存在未求值的属性";break;case"uniqueItems":n="不应当含有重复项 (第 "+a.params.j+" 项与第 "+a.params.i+" 项是重复的)";break;default:n='应当通过 "'+a.keyword+' 关键词校验"'}a.message=n}};const localizeZh=getDefaultExportFromCjs(zh),ajv=new Ajv({strict:!1});addFormats(ajv);const VALIDATOR="validator",OWN_RULE_PROPERTY="ui:rules",DEBUG_PREFIX="[bk-schema-form-validator]",DEFAULT_RULES={required:{message:"必填项",validator:"{{ $self.value !== '' }}"}},throwErr=e=>{throw new Error(`${DEBUG_PREFIX} ${e}`)},globalRules=new Map,registryGlobalRules=e=>{try{if(!e)return;(e==null?void 0:e.constructor)!==Object&&throwErr("global rules must be an object"),Object.keys(e).forEach(t=>{const r=e[t];hasOwnProperty(r,VALIDATOR)||throwErr(`'${t}' rule must have a validator property`);const s=r[VALIDATOR];isExpression(s)||isRegExp(s)||(s==null?void 0:s.constructor)===Function||throwErr(`'${t}' must be one of expression or regexp or function`),globalRules.set(t,r)})}catch(t){throwErr(t)}},validate=(rule,instance)=>{let theRule=rule;typeof rule=="string"&&(theRule=globalRules.get(rule),theRule||throwErr(`'${rule} is not a valid global rule, you can registry it to global rules node or use form item own custom rules`));const{validator,message}=theRule;let valid=!0;return isExpression(validator)?valid=executeExpression(validator,instance):typeof validator=="function"?valid=validator(instance):eval(validator)instanceof RegExp&&(valid=new RegExp(eval(validator)).test(instance.value)),{valid,message}},setWidgetErrorTips=(e,t,r)=>{const s=widgetTree.widgetMap[e],{instance:a}=s;s.type==="node"&&(a==null||a.setState("error",!0),a==null||a.setErrorTips(r));const n=e.split("."),o=[];n.forEach((i,d)=>{var b;const l=n.slice(0,n.length-d),u=l.join("."),f=widgetTree.widgetMap[u],w=f.instance.schema.type==="array"||!f.instance.schema.title;if(o.push(w?l.pop():f.instance.schema.title),(b=f.instance)!=null&&b.verifiable&&f.type==="group"){const y=`${o.reverse().join("-")}: ${r}`;f.instance.setGroupErrorTips(e,y)}})},validateFormItem=e=>{var u;const t=widgetTree.widgetMap[e];if(!t)return{result:!0,message:"",path:""};const{instance:r}=t;if(t.type==="group")r==null||r.clearGroupErrorTips();else{r==null||r.setState("error",!1),r==null||r.setErrorTips("");const f=e.split(".");f.forEach((w,b)=>{var m;const y=f.slice(0,f.length-b).join("."),_=widgetTree.widgetMap[y];(m=_.instance)!=null&&m.verifiable&&_.type==="group"&&_.instance.removeGroupErrorTips(e)})}const s=r.schema,a=ajv.compile(s),n=r.value===void 0?initializationValue(s.type,{integer:0,number:0}):r.value;if(!a(n)){localizeZh(a.errors);const f=ajv.errorsText(a.errors,{separator:`
11
+ `});return setWidgetErrorTips(e,!0,f),{result:!1,message:f,path:e}}const i=((u=r.schema)==null?void 0:u[OWN_RULE_PROPERTY])||[];let d=!1,l="";for(const f of i){const w=validate(f,r);if(!w.valid){d=!0,l=w.message;break}}return d?(setWidgetErrorTips(e,!0,l),{result:!1,message:l,path:e}):{result:!0,message:l,path:e}},validateForm=()=>{let e=!0;return Object.keys(widgetTree.widgetMap).forEach(t=>{var r;(r=validateFormItem(t))!=null&&r.result||(e=!1)}),e},validateFormWithResult=()=>new Promise((e,t)=>{const r=Object.keys(widgetTree.widgetMap).filter(s=>{var a;return((a=widgetTree.widgetMap[s])==null?void 0:a.type)==="node"}).reduce((s,a)=>{const n=validateFormItem(a);return n!=null&&n.result||s.push(n),s},[]);r.length?t(r):e([])}),validateSchema=async e=>{try{return await ajv.validateSchema(e,!0)}catch(t){return console.error("Schema不符合规范, 请检查",t),!1}},dispatchValidate=e=>validateFormItem(e);class FormEvent{constructor(){L(this,"callbacks");this.callbacks=Object.create(null)}on(t,r,s){return t in this.callbacks||(this.callbacks[t]={}),r in this.callbacks[t]||(this.callbacks[t][r]=[]),this.callbacks[t][r].push(s),this}off(t,r,s){if(!(t&&r))this.callbacks=Object.create(null);else if(t&&!r)delete this.callbacks[t];else if(t&&r&&!s)delete this.callbacks[t][r];else{const a=this.callbacks[t][r];for(const n in a)s===a[n]&&a.splice(Number(n),1)}return this}once(t,r,s){const a=this;function n(...o){s(...o),a.off(t,r,n)}return n.fn=s,this.on(t,r,n),this}emit(t,r,...s){if(this.callbacks[t]&&r in this.callbacks[t]){const a=[...this.callbacks[t][r]];for(const n of a)n(...s)}}}const events=new FormEvent,Widget=vue.defineComponent({name:"Widget",inheritAttrs:!1,props,data(){return{loading:!1,datasource:Schema.resolveDefaultDatasource(this.schema),formItemProps:{tips:"",label:""},state:{visible:this.visible,disabled:this.disabled,readonly:this.readonly,error:this.error},errorTips:"",privateSchema:{},key:""}},computed:{widgetMap(){return widgetTree.widgetMap},widgetNode(){return widgetTree.widgetMap[this.path]},parent(){var e;return(e=this.widgetNode)==null?void 0:e.parent},widgetSchema(){return mergeDeep({},this.schema,this.privateSchema)},value(){return this.modelValue}},watch:{modelValue:{handler(e,t){deepEquals(e,t)||setTimeout(()=>{reactionDispatch(this.path,"valChange"),dispatchValidate(this.path)},0)}},widgetSchema:{deep:!0,handler(e,t){deepEquals(e,t)||(this.resetDatasource(),this.key=new Date().getTime().toString())}}},created(){const e=Schema.getUiOptions(this.widgetSchema);this.formItemProps={...e,label:e.showTitle?e.label||Path.getPathLastProp(this.path):"",required:this.required};const t=Schema.getUiComponent(this.widgetSchema),r=Object.assign({},this.formItemProps,t||{});Object.keys(r).forEach(s=>{Reflect.has(this.state,s)&&this.setState(s,r[s])}),widgetTree.addWidgetNode(this.path,this,"node")},mounted(){reactionRegister(this.path,this.widgetSchema["ui:reactions"]),reactionDispatch(this.path,"valChange"),reactionDispatch(this.path,"lifetime/init")},beforeUnmount(){widgetTree.removeWidgetNode(this.path,this),reactionUnRegister(this.path)},methods:{setState(e,t){Reflect.has(this.state,e)?this.state[e]=t:e==="value"?this.$emit("update:modelValue",{path:this.path,value:t}):console.warn(`Widget unsupported ${e} state, please check`)},async loadDataSource(){var t,r;const e=(r=(t=this.widgetSchema)==null?void 0:t["ui:component"])==null?void 0:r.remoteConfig;if(e){const{url:s,params:a,...n}=e,{request:o=request,responseParse:i}=this.httpAdapter;try{this.loading=!0;const d=executeExpression(s,this),l=isObj(a)?executeExpression(a,this):a;this.datasource=await o(d,{...n,params:l,responseParse:i}),this.loading=!1}catch(d){this.loading=!1,console.error(d)}}},setErrorTips(e){this.errorTips=e},getValue(e){return Path.getPathVal(this.rootData,e)},getReadonlyValue(){var r,s;let e=this.modelValue;if(((r=this.widgetSchema["ui:component"])==null?void 0:r.type)==="password")e="******";else if(this.datasource){const a=(s=this.datasource)==null?void 0:s.find(n=>n.value===this.modelValue);a&&(e=a.label)}let t=e===""?"--":e;return Object.prototype.toString.call(t)==="[Object Object]"?t=JSON.stringify(t):Array.isArray(t)?t.some(n=>n&&typeof n=="object")?t=JSON.stringify(t):t=t.join(","):t=String(t),t},getSchema(){return this.widgetSchema},setSchema(e){try{this.privateSchema=JSON.parse(JSON.stringify(e))}catch(t){console.warn(t)}return this.widgetSchema},resetDatasource(){var t,r;((r=(t=this.widgetSchema)==null?void 0:t["ui:component"])==null?void 0:r.remoteConfig)?this.loadDataSource():this.datasource=Schema.resolveDefaultDatasource(this.widgetSchema)},getDefaultValue(){return Schema.getSchemaDefaultValue(this.widgetSchema)},resetToDefault(){const e=this.getDefaultValue();this.$emit("update:modelValue",{path:this.path,value:e})},isDefaultValue(){const e=this.getDefaultValue();return deepEquals(this.modelValue,e)}},render(){var _,m,p;const{name:e,...t}=Schema.getUiComponent(this.widgetSchema),r={...this.$props,loading:this.loading,modelValue:this.modelValue},s=this,a=registry.getComponent(e)||e||Schema.getDefaultWidget(this.widgetSchema),n=((_=events.callbacks)==null?void 0:_[this.path])||{},o=()=>{var g;return this.state.readonly&&this.readonlyMode==="value"&&((g=this.widgetSchema["ui:component"])==null?void 0:g.name)!=="table"?l:i},i=((p=(m=this.$slots).default)==null?void 0:p.call(m,{path:this.path}))??vue.h(a,mergeDeep({...r,...t||{},...Object.keys(n).reduce((g,E)=>(g[`on${capitalizeFirstLetter(E)}`]=n[E],g),{}),schema:this.widgetSchema,onClick(){var g;reactionDispatch(s.path,"effect/click"),(g=n.click)==null||g.forEach(E=>E())},"onUpdate:modelValue":g=>{var E;s.$emit("update:modelValue",{path:s.path,value:g}),(E=n["update:modelValue"])==null||E.forEach(k=>k())}},t,{...this.state,datasource:this.datasource,readonly:this.readonly,readonlyMode:this.readonlyMode})),d=()=>{var g,E;return(E=(g=this.$slots).suffix)==null?void 0:E.call(g,{path:this.path,schema:this.widgetSchema})},l=vue.h("div",{},{default:()=>this.getReadonlyValue()}),u=()=>this.removeable?vue.h("span",{class:["bk-schema-form-group-delete"],onClick:()=>{s.$emit("remove",s.path)}},[vue.h("i",{class:["bk-form-icon icon-close3-shape"]})]):null,f=()=>{var k;const g=(k=this.widgetSchema["ui:props"])==null?void 0:k.showResetDefault;return!(g!==void 0?g:this.showResetDefault)||this.isDefaultValue()||this.state.readonly||this.state.disabled?null:vue.withDirectives(vue.h("span",{class:["bk-schema-form-reset-default","bk-form-icon icon-reset"],onClick:()=>{s.resetToDefault()}}),[[bkuiVue.bkTooltips,{content:"恢复默认值"}]])},w=()=>this.state.error?vue.h("p",{class:"bk-schema-form-item__error-tips"},{default:()=>this.errorTips}):null,b=()=>this.formItemProps.tips?vue.h("p",{class:["mt5","mb0","f12"],style:{color:"#5e6d82",lineHeight:"1.5em"}},{default:()=>this.formItemProps.tips}):null,y=()=>{const g=this.formItemProps.label,{description:E}=this.widgetSchema;return E?[vue.withDirectives(vue.h("span",{class:{"bk-schema-form-label-description":E}},g),[[bkuiVue.bkTooltips,{content:E,disabled:!E}]]),f()]:[g,f()]};return vue.h(registry.getBaseWidget("form-item"),{key:this.key,...this.formItemProps,style:{...this.layout.item||{},...this.layout.container||{},display:this.state.visible?"":"none"},class:{"bk-schema-form-item--error":this.state.error}},{label:y,default:()=>[o(),d(),u(),w(),b()]})}}),ObjectField=vue.defineComponent({name:"ObjectField",props,render(){const{schema:e,path:t,layout:r,rootData:s}=this.$props,a=orderProperties(Object.keys(e.properties||{}),e["ui:order"]);let n=[];a.length?n=a.map(d=>{var w;const l=Path.getCurPath(t,d),u=l.split(".").pop(),f=Layout.findLayoutByProp(u,r.group||[])||{};return vue.h(SchemaField,{...this.$props,...this.$attrs,key:l,modelValue:Path.getPathVal(s,l),schema:(w=e.properties)==null?void 0:w[d],required:Schema.isRequired(e,d),path:l,layout:f,removeable:!1},this.$slots)}):Schema.getUiComponent(e)&&(n=[vue.h(Widget,{...this.$props,...this.$attrs},this.$slots)]);const{name:o,...i}=Schema.getGroupWrap(e);return vue.h(o,mergeDeep({...this.$props,...this.$attrs,modelValue:Path.getPathVal(s,t),path:t},i),{default:()=>[...n]})}}),StringField=(e,t)=>vue.h(Widget,{...e,...t.attrs},t.slots),NumberField=vue.defineComponent({name:"NumberField",props,render(){var e;return vue.h(StringField,{...this.$props,...this.$attrs,schema:mergeDeep({"ui:component":{type:"number",min:((e=this.$props.schema)==null?void 0:e.type)==="integer"?0:-1/0}},this.$props.schema)},this.$slots)}}),messages={"zh-CN":{add:"添加"},"en-US":{add:"Add"}};function locale(e){var r;let t=getCookie("blueking_language")||"zh-CN";return["en-US","enUS","enus","en-us","en"].includes(t)?t="en-US":t="zh-CN",((r=messages[t])==null?void 0:r[e])||""}const ArrayWidget=vue.defineComponent({name:"ArrayWidget",props:{...props,modelValue:{type:Array,default:()=>[]}},mounted(){this.handleFillItem()},methods:{handleFillItem(){const{minItems:e=0}=this.schema,t=this.modelValue?this.modelValue.length:0;if(t<e){const r=Schema.getSchemaDefaultValue(this.schema.items),s=new Array(e-t).fill(r);this.$emit("update:modelValue",{path:this.path,value:[...this.modelValue||[],...s]})}},handleAddItem(){const e=Schema.getSchemaDefaultValue(this.schema.items),t=JSON.parse(JSON.stringify(this.modelValue||[]));t.push(e),this.$emit("update:modelValue",{path:this.path,value:t})},handleDeleteItem(e){const t=Number(Path.getPathLastProp(e)),r=JSON.parse(JSON.stringify(this.modelValue||[]));r.splice(t,1),this.$emit("update:modelValue",{path:this.path,value:r})}},render(){const e=this,t=(Array.isArray(this.modelValue)?this.modelValue:[]).map((a,n)=>{const o=Path.getCurPath(this.path,n);return vue.h(SchemaField,{...this.$props,...this.$attrs,key:`${o}-${this.modelValue.length}`,schema:this.schema.items,path:o,layout:{...this.layout,item:{}},removeable:!0,onRemove(i){e.handleDeleteItem(i)}})}),{name:r,...s}=Schema.getGroupWrap(this.schema);return vue.h(r,mergeDeep({...this.$props,layout:{},showTitle:!0,style:{...this.layout.item||{}},"onUpdate:modelValue":a=>{e.$emit("update:modelValue",a)}},s),{default:()=>[...t,this.readonly?void 0:vue.h(registry.getBaseWidget("form-item"),{labelWidth:0,class:{"bk-schema-form-item-auto-height":!0}},{default:()=>[vue.h("span",{class:["bk-schema-form-group-add"],onClick(){e.handleAddItem()}},[vue.h("i",{class:["bk-form-icon icon-plus-circle-shape mr5"]}),locale("add")])]})]})}}),ArrayField=vue.defineComponent({name:"ArrayField",props,render(){const{schema:e,path:t}=this.$props;if(Schema.isMultiSelect(e)||Schema.isCustomArrayWidget(e))return vue.h(Widget,{...this.$props,...this.$attrs,key:t,schema:mergeDeep({"ui:component":{multiple:!0}},this.$props.schema)},this.$slots);if(Schema.isTupleArray(e)){const{name:r,...s}=Schema.getGroupWrap(e),a=e.items.map((n,o)=>vue.h(SchemaField,{...this.$props,...this.$attrs,key:Path.getCurPath(t,o),schema:n,path:Path.getCurPath(t,o)},this.$slots));return vue.h(r,mergeDeep({...this.$props,path:t,showTitle:!0},s),{default:()=>[...a]})}return vue.h(ArrayWidget,{...this.$attrs,...this.$props},this.$slots)}}),BooleanField=vue.defineComponent({name:"BooleanField",props,render(){var r;const{name:e}=this.$props.schema["ui:component"]||{};let t={};return["radio","select"].includes(e)?t={datasource:[{label:"False",value:!1},{label:"True",value:!0}]}:e==="checkbox"&&(t={label:(r=this.$props.schema)==null?void 0:r.title}),vue.h(Widget,{...this.$props,...this.$attrs,schema:mergeDeep({"ui:component":{...t}},this.$props.schema)},this.$slots)}}),CompositionField=vue.defineComponent({name:"CompositionField",props:{...props},data(){return{activeIndex:-1}},computed:{composition(){var e,t;return(e=this.schema.anyOf)!=null&&e.length?"anyOf":(t=this.schema.oneOf)!=null&&t.length?"oneOf":""}},created(){const t=(this.schema[this.composition]||[]).findIndex(r=>ajv.validate(r,this.modelValue));this.activeIndex=t>-1?t:0},render(){const e=this.schema[this.composition]||[],t=e.map(o=>{const i=mergeDeep({},this.schema,o);return delete i[this.composition],i}),{name:r="radio",...s}=Schema.getUiProps(`ui:${this.composition}`,this.schema);if(typeof this.schema.type!="object"&&t.every(o=>o.const))return vue.h(Widget,{...this.$props,...this.$attrs},this.$slots);const{...n}=Schema.getUiProps("ui:composition",this.schema);return vue.h(registry.getComponent("group"),mergeDeep({...this.$props,rootData:this.rootData,schema:this.schema,modelValue:Path.getPathVal(this.rootData,this.path),path:this.path,onRemove(){this.$emit("remove",this.path)}},n),{default:()=>[vue.h(registry.getBaseWidget("form-item"),{label:s==null?void 0:s.title},{default:()=>vue.h(registry.getComponent(r),mergeDeep({modelValue:this.activeIndex,datasource:t.map((o,i)=>({label:o.title||"",value:i})),clearable:!1,"onUpdate:modelValue":o=>{if(this.activeIndex=o,isObj(this.modelValue)){const i=JSON.parse(JSON.stringify(this.modelValue));e.filter((l,u)=>u!==this.activeIndex).reduce((l,u)=>{const{properties:f={}}=u;return l.push(...Object.keys(f)),l},[]).forEach(l=>{delete i[l]}),this.$emit("update:modelValue",{path:this.path,value:i})}}},s||{}))}),vue.h(SchemaField,{...this.$props,...this.$attrs,key:this.activeIndex,removeable:!1,schema:t[this.activeIndex]},this.$slots)]})}}),CheckboxWidget=vue.defineComponent({name:"CheckboxWidget",props:{datasource:{type:Array,default:()=>[]},modelValue:{type:[Array,Boolean],default:()=>[]},label:{type:String,default:""}},methods:{handleChange(e){this.$emit("update:modelValue",e)}},render(){return Array.isArray(this.modelValue)?vue.h(registry.getBaseWidget("checkbox-group"),{modelValue:this.modelValue,onChange:this.handleChange},{default:()=>this.datasource.map(e=>vue.h(registry.getBaseWidget("checkbox"),{...this.$attrs,key:e.value,class:["mr24"],label:e.value},{default:()=>e.label}))}):vue.h(registry.getBaseWidget("checkbox"),{modelValue:this.modelValue,onChange:this.handleChange},{default:()=>this.label})}}),SelectWidget=vue.defineComponent({name:"SelectWidget",props:{datasource:{type:Array,default:()=>[]},modelValue:{type:[Array,String,Number,Boolean],default:""},loading:{type:Boolean,default:!1}},methods:{handleSelectChange(e){this.$emit("update:modelValue",e)}},render(){return vue.h(registry.getBaseWidget("select"),{...this.$attrs,loading:this.loading,modelValue:this.modelValue,onChange:this.handleSelectChange},{default:()=>{var e;return(e=this.datasource)==null?void 0:e.map(t=>vue.withDirectives(vue.h(registry.getBaseWidget("option"),{key:t.value,name:t.label,id:t.value,disabled:t.disabled}),[]))}})}}),RadioWidget=vue.defineComponent({name:"RadioWidget",props:{datasource:{type:Array,default:()=>[]},modelValue:{type:[String,Number,Boolean],default:""},disabled:{type:Boolean,default:!1}},methods:{handleChange(e){this.$emit("update:modelValue",e)}},render(){return vue.h(registry.getBaseWidget("radio-group"),{...this.$attrs,modelValue:this.modelValue,onChange:this.handleChange},{default:()=>this.datasource.map(e=>vue.h(registry.getBaseWidget("radio"),{key:e.value,class:["mr24"],modelValue:e.value,label:e.value,disabled:e.disabled||this.disabled},{default:()=>e.label}))})}}),ButtonWidget=vue.defineComponent({name:"ButtonWidget",props:{word:{type:String,default:""}},methods:{handleClick(){this.$emit("click")}},render(){const e=this;return vue.h(registry.getBaseWidget("button"),{...this.$attrs,onClick:e.handleClick()},{default:()=>this.word})}}),getRowDefaultData=(e={})=>{const t=Object.keys(e),r={};return t.forEach(s=>{r[s]=Schema.getSchemaDefaultValue(e[s])}),[r]},TableWidget=vue.defineComponent({name:"TableWidget",props:{...props,modelValue:{type:Array}},watch:{modelValue:{immediate:!0,handler(){var e;(e=this.modelValue)==null||e.forEach((t,r)=>{const s=`${this.path}.${r}`;widgetTree.removeWidgetNode(s,null),widgetTree.addWidgetNode(s,null,"group")})}}},methods:{handleCellValChange({path:e,value:t}){const r=Path.getSubPath(this.path,e),s=Path.setPathValue(this.modelValue,r,t);this.$emit("update:modelValue",s)},handleAddRow(e){var r,s,a;if((r=this.schema["ui:props"])!=null&&r.disabled)return;const t=((s=this.modelValue)==null?void 0:s.slice(0))||[];t.splice(e+1,0,...getRowDefaultData((a=this.$props.schema.items)==null?void 0:a.properties)),this.$emit("update:modelValue",t)},handleDelRow(e){var r,s;if((r=this.schema["ui:props"])!=null&&r.disabled)return;const t=((s=this.modelValue)==null?void 0:s.slice(0))||[];t.splice(e,1),this.$emit("update:modelValue",t)}},render(){const e=this,{schema:t,path:r,modelValue:s}=this,a=t.items;let n={};a!=null&&a.properties?n=a==null?void 0:a.properties:console.warn("The current schema type is not supported table component",a);const o=Schema.getUiOptions(t),i=()=>{const d=Object.keys(n).map(l=>{const u=n[l];return{...u["ui:props"]||{},label:u==null?void 0:u.title,field:l,render:({row:w,index:b})=>vue.h(SchemaField,{...this.$props,schema:mergeDeep(u,{"ui:props":{showTitle:!1,labelWidth:.1}}),path:Path.getCurPath(r,`${b}.${l}`),modelValue:w[l],"onUpdate:modelValue"(y){e.handleCellValChange(y)}})}});return!this.readonly&&o.modifyRows!==!1&&d.push({label:"操作",width:100,fixed:"right",render:({index:l})=>{var u;return vue.h("div",{class:{"table-widget-actions":!0,"is-disabled":(u=t["ui:props"])==null?void 0:u.disabled}},{default:()=>[vue.h("i",{class:"bk-form-icon icon-plus-line action-btn",onClick(){e.handleAddRow(l)}}),vue.h("i",{class:"bk-form-icon icon-minus-line action-btn",onClick(){e.handleDelRow(l)}})]})}}),d};return vue.h(registry.getBaseWidget("table"),{...t["ui:component"]||{},data:s,columns:i()},{empty:()=>this.readonly||o.modifyRows===!1?null:vue.h("div",{style:{color:"#3a84ff",cursor:"pointer"},onClick:()=>{e.handleAddRow(0)}},"点击添加数据")})}}),FieldGroupWrap=vue.defineComponent({name:"FieldGroupWrap",props:{...props,type:{type:String,default:"default",validator:e=>["default","normal","card"].includes(e)},showTitle:{type:Boolean,default:!1},border:{type:Boolean,default:!1},verifiable:{type:Boolean,default:!1},hideEmptyRow:{type:Boolean,default:!1},showResetDefault:{type:Boolean,default:!1}},data(){return{groupErrorTips:{},state:{visible:!0}}},computed:{value(){return this.modelValue}},created(){widgetTree.addWidgetNode(this.path,this,"group")},mounted(){this.$forceUpdate()},beforeUnmount(){widgetTree.removeWidgetNode(this.path,this)},methods:{setState(e,t){Reflect.has(this.state,e)?this.state[e]=t:console.warn(`Group unsupported ${e} state, please check`)},setGroupErrorTips(e,t){this.groupErrorTips[e]=t},removeGroupErrorTips(e){delete this.groupErrorTips[e]},clearGroupErrorTips(){this.groupErrorTips={}},getDefaultValue(){return Schema.getSchemaDefaultValue(this.schema)},resetToDefault(){const e=this.getDefaultValue();this.$emit("update:modelValue",{path:this.path,value:e})},isDefaultValue(){const e=this.getDefaultValue();return deepEquals(this.modelValue,e)}},render(){var d,l,u,f,w,b;const e={position:"relative",border:this.border?"1px solid #dcdee5":"none",display:this.state.visible?"":"none",...((d=this.layout)==null?void 0:d.item)||{}},t={...((l=this.layout)==null?void 0:l.container)||{display:"grid",gridGap:"24px"}},r=this,s=()=>vue.h("span",{class:["bk-schema-form-group-delete"],onClick(){r.$emit("remove",r.path)}},[vue.h("i",{class:["bk-form-icon icon-close3-shape"]})]),a=((u=this.schema)==null?void 0:u.title)||((f=this.layout)==null?void 0:f.prop),n=Object.keys(this.groupErrorTips).map(y=>vue.createVNode("p",null,[this.groupErrorTips[y]])),o=JSON.stringify(this.groupErrorTips)!=="{}",i=()=>!this.showResetDefault||this.isDefaultValue()||this.readonly||this.disabled?null:vue.withDirectives(vue.h("span",{class:["bk-schema-form-reset-default","bk-form-icon icon-reset"],onClick:()=>{r.resetToDefault()}}),[[bkuiVue.bkTooltips,{content:"恢复默认值"}]]);return vue.createVNode("div",{class:["bk-schema-form-group",this.type,{"hide-empty-row":this.hideEmptyRow},{"bk-schema-form-group--error":o}],style:e},[a&&this.showTitle?vue.createVNode("span",{class:["bk-schema-form-group-title",this.type]},[a,i(),o?vue.createVNode("span",{class:"bk-schema-form-group__error-tips"},[vue.createVNode("span",{class:"bk-schema-form-group__error-tips-popover"},[n])]):null]):null,vue.createVNode("div",{style:t,class:"bk-schema-form-group-content"},[(b=(w=this.$slots)==null?void 0:w.default)==null?void 0:b.call(w)]),this.removeable&&s()])}}),KeyValueArrayWidget=vue.defineComponent({name:"KeyValueArrayWidget",props:{...props,modelValue:{type:Array,default:()=>[]}},mounted(){var t;const{minItems:e=0}=this.schema;if(((t=this.modelValue)==null?void 0:t.length)<e){const r=Schema.getSchemaDefaultValue(this.schema.items),s=new Array(e-this.modelValue.length).fill(r);this.$emit("update:modelValue",[...this.modelValue,...s])}},methods:{handleAddItem(){if(this.disabled)return;const e=Schema.getSchemaDefaultValue(this.schema.items);this.$emit("update:modelValue",[...this.modelValue,e])},handleRemoveItem(e){if(this.disabled)return;const t=JSON.parse(JSON.stringify(this.modelValue));t.splice(e,1),this.$emit("update:modelValue",t)},handleInput({path:e,value:t}){const r=Path.getSubPath(this.path,e),s=Path.setPathValue(this.modelValue,r,t);this.$emit("update:modelValue",s)}},render(){var l,u,f,w,b;const e={"font-size":"16px",color:"#979ba5",cursor:this.disabled?"not-allowed":"pointer",display:"inline-block"},t=(u=(l=this.schema)==null?void 0:l.items)==null?void 0:u.properties,r=orderProperties(Object.keys(t||{}),(w=(f=this.schema)==null?void 0:f.items)==null?void 0:w["ui:order"]),s=Object.keys(t||{}).length,a=t?new Array(s).fill("1fr").concat("20px").join(" "):"1fr 20px",n={...this.layout.container||{display:"grid",gridGap:"24px","grid-template-columns":a}},o=this,i=y=>mergeDeep({"ui:component":{placeholder:y.title},"ui:props":{showTitle:!1,labelWidth:.1}},y),d=y=>{const{path:_,schema:m,required:p,layout:g}=y;return vue.h(SchemaField,{...this.$props,key:_,schema:m,required:p,path:_,layout:g,style:{marginBottom:"10px"},"onUpdate:modelValue"(E){o.handleInput(E)}})};return vue.createVNode("div",null,[(b=this.modelValue)==null?void 0:b.map((y,_)=>{const m=Path.getCurPath(this.path,`${_}`);return vue.createVNode(FieldGroupWrap,vue.mergeProps({...this.$props,path:m,modelValue:Path.getPathVal(this.rootData,m),schema:this.schema.items,layout:{...this.layout,container:{...n}}},{class:"mb10"}),{default:()=>{var p;return[r!=null&&r.length?r.map(g=>{var M,W;const E=(W=(M=this.schema)==null?void 0:M.items)==null?void 0:W.properties[g],k=Path.getCurPath(this.path,`${_}.${g}`),T=k.split(".").pop(),I=Layout.findLayoutByProp(T,this.layout.group||[])||{};return d({path:k,schema:i(E),layout:I,required:Schema.isRequired(E,g)})}):d({path:Path.getCurPath(this.path,_),schema:i(((p=this.schema)==null?void 0:p.items)||{}),layout:{},required:!1}),vue.createVNode("span",{style:e,onClick:()=>this.handleRemoveItem(_)},[vue.createVNode("i",{class:"bk-form-icon icon-minus-line"},null)])]}})}),vue.createVNode("span",{onClick:this.handleAddItem,style:e},[vue.createVNode("i",{class:"bk-form-icon icon-plus-line"},null)])])}}),TabGroupWidget=vue.defineComponent({name:"TabWidget",props:{...props,type:{type:String,default:"default",validator:e=>["default","normal","card"].includes(e)},showTitle:{type:Boolean,default:!1},border:{type:Boolean,default:!1},verifiable:{type:Boolean,default:!1}},data(){return{active:""}},beforeMount(){var t;const e=orderProperties(Object.keys(((t=this.schema)==null?void 0:t.properties)||{}),this.schema["ui:order"]);this.active=e==null?void 0:e[0]},render(){var s;const e={...this.$props,layout:{...this.layout,container:{}},title:this.schema.title},t=this,r=orderProperties(Object.keys(((s=this.schema)==null?void 0:s.properties)||{}),this.schema["ui:order"]);return vue.h(FieldGroupWrap,{...e,onRemove(a){t.$emit("remove",a)}},{default:()=>[vue.h(registry.getBaseWidget("tab"),{type:"border-card",active:this.active,onChange:a=>{this.active=a}},{default:()=>r.map(a=>{var l,u;const n=(u=(l=this.schema)==null?void 0:l.properties)==null?void 0:u[a],o=Path.getCurPath(this.path,a),i=o.split(".").pop(),d=Layout.findLayoutByProp(i,this.layout.group||[])||{};return vue.h(registry.getBaseWidget("tab-panel"),{key:a,name:a,label:n==null?void 0:n.title},{default:()=>vue.h(SchemaField,{...this.$props,...this.$attrs,key:o,schema:n,required:Schema.isRequired(n,a),path:o,layout:d,removeable:!1})})})})]})}}),CollapseGroupWidget=vue.defineComponent({name:"CollapseWidget",props:{...props,type:{type:String,default:"default",validator:e=>["default","normal","card"].includes(e)},showTitle:{type:Boolean,default:!1},border:{type:Boolean,default:!1},defaultActiveName:{type:Array,default:()=>[]},verifiable:{type:Boolean,default:!1}},data(){return{activeName:this.defaultActiveName}},render(){var a;const e={...this.$props,layout:{...this.layout,container:{}},title:this.schema.title},r=orderProperties(Object.keys(((a=this.schema)==null?void 0:a.properties)||{}),this.schema["ui:order"]).map(n=>{var u,f;const o=(f=(u=this.schema)==null?void 0:u.properties)==null?void 0:f[n],i=Path.getCurPath(this.path,n),d=i.split(".").pop(),l=Layout.findLayoutByProp(d,this.layout.group||[])||{};return vue.h(registry.getBaseWidget("collapse-panel"),{key:n,name:n,title:o.title},{content:()=>vue.h(SchemaField,{key:i,...this.$props,...this.$attrs,schema:o,required:Schema.isRequired(o,n),path:i,layout:l,removeable:!1})})}),s=this;return vue.h(FieldGroupWrap,{...e},{default:()=>vue.h(registry.getBaseWidget("collapse"),{"use-card-theme":!0,modelValue:this.activeName,"onUpdate:modelValue"(n){s.activeName=n}},{default:()=>r})})}}),SwitcherWidget=vue.defineComponent({name:"SwitchWidget",props:{modelValue:Boolean},methods:{handleChange(e){this.$emit("update:modelValue",e)}},render(){return vue.h(registry.getBaseWidget("switcher"),{...this.$attrs,modelValue:this.modelValue,onChange:e=>{this.handleChange(e)}})}}),ColorWidget=vue.defineComponent({name:"ColorPicker",props:{modelValue:String},methods:{handleChange(e){this.$emit("update:modelValue",e)}},render(){return vue.h(registry.getBaseWidget("color-picker"),{...this.$attrs,modelValue:this.modelValue,onChange:this.handleChange})}}),InputWidget=vue.defineComponent({name:"InputWidget",props:{modelValue:[String,Number],unit:{type:String,default:""},maxRows:{type:Number,default:0}},computed:{rows(){const e=String(this.modelValue).split(`
12
+ `).length;return e<=this.maxRows?e:this.maxRows}},methods:{handleInput(e){this.$attrs.type==="number"?this.$emit("update:modelValue",isNaN(e)||e===""?e:Number(e)):this.$emit("update:modelValue",e)},handleBlur(e){var r;const t=(r=e==null?void 0:e.target)==null?void 0:r.value;this.$attrs.type==="number"&&isNaN(t)&&this.$emit("update:modelValue",this.$attrs.min||0)}},render(){return vue.h(registry.getBaseWidget("input"),{suffix:this.unit,modelValue:this.modelValue,rows:this.rows,type:this.maxRows>1||Number(this.$attrs.rows)>1?"textarea":"text",onInput:this.handleInput,onBlur:this.handleBlur,...this.$attrs})}}),defaultOptions={namespace:"bk",components:{button:ButtonWidget,select:SelectWidget,radio:RadioWidget,checkbox:CheckboxWidget,table:TableWidget,group:FieldGroupWrap,bfArray:KeyValueArrayWidget,tab:TabGroupWidget,collapse:CollapseGroupWidget,switcher:SwitcherWidget,color:ColorWidget,bfInput:InputWidget},fields:{object:ObjectField,string:StringField,any:"",array:ArrayField,boolean:BooleanField,null:"",integer:NumberField,number:NumberField,composition:CompositionField}};function createForm(e={}){const t=mergeDeep(defaultOptions,e),{namespace:r,components:s,fields:a,baseWidgets:n={}}=t;return Registry.namespace=r,registry.addComponentsMap(s),registry.addFieldsMap(a),registry.addBaseWidgets(n),vue.defineComponent({name:"BkuiForm",props:props$1,data(){return{rootData:{},formKey:"bk-ui-form"}},watch:{schema(o,i){JSON.stringify(o)!==JSON.stringify(i)&&(this.validateSchema(this.schema),this.initFormData(),this.formKey=`bk-ui-form-${new Date().getTime()}`)},context:{handler(o){Registry.context=o,hasOwnProperty(o,"rules")&&registryGlobalRules(o.rules)},immediate:!0},rules:{immediate:!0,handler(o){registryGlobalRules(o)}},modelValue(){this.initFormData()}},beforeCreate(){registryGlobalRules(DEFAULT_RULES)},created(){this.validateSchema(this.schema),this.initFormData()},methods:{initFormData(){this.rootData=merge(Schema.getSchemaDefaultValue(createProxy(this.schema,this))||{},this.modelValue),this.emitFormValueChange(this.rootData,this.modelValue)},emitFormValueChange(o,i){deepEquals(o,i)||(this.rootData=o,this.$emit("update:modelValue",o),this.$emit("change",o,i))},validateForm,validateFormItem,validate:validateFormWithResult,validateSchema},render(){const o=this;return vue.h(registry.getBaseWidget("form"),{ref:"bkui-form",key:this.formKey,model:this.modelValue,formType:this.formType,labelWidth:this.labelWidth,class:{"bk-schema-form":!0},style:{width:typeof this.width=="number"?`${this.width}px`:this.width}},{default:()=>vue.h(SchemaField,{...this.$props,schema:createProxy(this.schema,this),rootData:this.rootData,modelValue:this.modelValue,layout:new Layout(this.layout).layout,"onUpdate:modelValue":({path:i="",value:d})=>{if(!i)o.emitFormValueChange(d,o.modelValue);else{const l=Path.setPathValue(o.rootData,i,d);o.emitFormValueChange(l,o.modelValue)}}},this.$slots)})}})}exports.Schema=Schema,exports.default=createForm,exports.events=events,Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
package/dist/style.css ADDED
@@ -0,0 +1 @@
1
+ .bk-schema-form{font-size:12px}.bk-schema-form .mb10{margin-bottom:10px}.bk-schema-form .mb0{margin-bottom:0}.bk-schema-form .mt5{margin-top:5px}.bk-schema-form .mr24{margin-right:24px}.bk-schema-form .mr5{margin-right:5px}.bk-schema-form .pr20{padding-right:20px}.bk-schema-form .bk-form-item{margin-top:unset!important;margin-bottom:unset!important}.bk-schema-form .bk-schema-form-group.normal{padding:24px;position:relative}.bk-schema-form .bk-schema-form-group.card{background:#fff;padding:0 24px 24px;border-radius:2px}.bk-schema-form .bk-schema-form-group.hide-empty-row .bk-schema-form-group-content{row-gap:0!important}.bk-schema-form .bk-schema-form-group.hide-empty-row .bk-schema-form-group-content .bk-form-item{margin-bottom:20px}.bk-schema-form .bk-schema-form-group--error{border-color:#f5222d!important}.bk-schema-form .bk-schema-form-group__error-tips{position:relative;display:block;width:10px;height:10px}.bk-schema-form .bk-schema-form-group__error-tips-popover{position:absolute;top:-5px;left:0;z-index:1;background:#fff;border:1px solid #f5222d;color:#f5222d;font-size:12px;margin-left:10px;font-weight:400;padding:5px 10px;border-radius:2px;max-height:50px;overflow:hidden}.bk-schema-form .bk-schema-form-group__error-tips-popover:hover{max-height:unset}.bk-schema-form .bk-schema-form-group__error-tips-popover>p{padding:0;margin:0;white-space:nowrap}.bk-schema-form .bk-schema-form-group .bk-schema-form-group-title{font-size:14px;font-weight:600;color:#63656e}.bk-schema-form .bk-schema-form-group .bk-schema-form-group-title.default{display:inline-block;margin-bottom:10px}.bk-schema-form .bk-schema-form-group .bk-schema-form-group-title.normal{position:absolute;top:-1em;left:10px;line-height:2em;padding:0 .5em;background:#fff}.bk-schema-form .bk-schema-form-group .bk-schema-form-group-title.card{display:flex;height:50px;align-items:center;padding:0 24px;margin:0 -24px 8px}.bk-schema-form .bk-schema-form-group-add{font-size:14px;color:#3a84ff;cursor:pointer;display:flex;align-items:center}.bk-schema-form .bk-schema-form-group-delete{display:flex;align-items:center;justify-content:center;position:absolute;right:8px;top:6px;cursor:pointer;color:#979ba5;font-size:14px}.bk-schema-form .bk-schema-form-group-delete:hover{color:#3a84ff}.bk-schema-form .bk-schema-form-reset-default{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;cursor:pointer;color:#979ba5;font-size:14px}.bk-schema-form .bk-schema-form-reset-default:hover{color:#3a84ff}.bk-schema-form .bk-schema-form-label-description{cursor:pointer;border-bottom:1px dashed #979ba5}.bk-schema-form .bk-schema-form-item__error-tips{color:#f5222d;font-size:12px;margin:0;line-height:1.5em}.bk-schema-form .bk-schema-form-item--error .bk-input,.bk-schema-form .bk-schema-form-item--error .bk-textarea-wrapper,.bk-schema-form .bk-schema-form-item--error .bk-select{border:1px solid #f5222d;box-shadow:none}.bk-schema-form .bk-schema-form-item-auto-height .bk-form-content{min-height:auto;line-height:1}.bk-schema-form .table-widget-actions .action-btn{margin-right:8px;font-size:14px;cursor:pointer}.bk-schema-form .table-widget-actions .action-btn:hover{color:#3a84ff}.bk-schema-form .is-disabled .action-btn{color:#dcdee5!important;cursor:not-allowed}@font-face{font-family:bk-form;src:url("data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%20%3e%3csvg%3e%3cmetadata%3e%20Created%20by%20font-carrier%20%3c/metadata%3e%3cdefs%3e%3cfont%20id='iconfont'%20horiz-adv-x='1024'%20vert-adv-y='1024'%20%3e%3cfont-face%20font-family='iconfont'%20font-weight='400'%20font-stretch='normal'%20units-per-em='1024'%20ascent='812'%20descent='-212'%20/%3e%3cmissing-glyph%20/%3e%3cglyph%20glyph-name='x'%20unicode='&%23x78;'%20horiz-adv-x='100'%20d='M20%2020%20L50%2020%20L50%20-20%20Z'%20/%3e%3cglyph%20glyph-name='uniE102'%20unicode='&%23xE102;'%20d='M128%20364H896V236H128V364Z'%20horiz-adv-x='1024'%20vert-adv-y='1024'%20/%3e%3cglyph%20glyph-name='uniE104'%20unicode='&%23xE104;'%20d='M896%20364L576%20364%20576%20684%20448%20684%20448%20364%20128%20364%20128%20236%20448%20236%20448-84%20576-84%20576%20236%20896%20236Z'%20horiz-adv-x='1024'%20vert-adv-y='1024'%20/%3e%3cglyph%20glyph-name='uniE105'%20unicode='&%23xE105;'%20d='M512%20748C264%20748%2064%20548%2064%20300S264-148%20512-148%20960%2052%20960%20300%20760%20748%20512%20748ZM736%20268H544V76H480V268H288V332H480V524H544V332H736V268Z'%20horiz-adv-x='1024'%20vert-adv-y='1024'%20/%3e%3cglyph%20glyph-name='uniE106'%20unicode='&%23xE106;'%20d='M672%20588V652C672%20687.2%20643.2%20716%20608%20716H416C380.8%20716%20352%20687.2%20352%20652V588H96V524H208V-52C208-87.2%20236.8-116%20272-116H752C787.2-116%20816-87.2%20816-52V524H928V588H672ZM416%20636C416%20645.6%20422.4%20652%20432%20652H592C601.6%20652%20608%20645.6%20608%20636V588H416V636ZM448%2060H384V412H448V60ZM640%2060H576V412H640V60Z'%20horiz-adv-x='1024'%20vert-adv-y='1024'%20/%3e%3cglyph%20glyph-name='uniE107'%20unicode='&%23xE107;'%20d='M512%2044C505.6%2044%20498.56%2046.56%20493.44%2052.32L136.96%20436.32C128.64%20445.28%20126.08%20459.36%20129.92%20471.52S144%20492%20155.52%20492H868.48C880%20492%20889.6%20483.68%20894.08%20471.52S895.36%20445.28%20887.04%20436.32L530.56%2052.32C525.44%2046.56%20518.4%2044%20512%2044Z'%20horiz-adv-x='1024'%20vert-adv-y='1024'%20/%3e%3cglyph%20glyph-name='uniE108'%20unicode='&%23xE108;'%20d='M999.6664%20615.2059C980.5775%20622.5955%20959.5207%20611.8279%20952.8297%20591.3483L924.4915%20506.0519C891.2335%20586.4923%20838.6898%20657.2207%20771.7802%20710.2143%20559.0471%20879.118%20255.9861%20833.0917%2096.5838%20607.183%2019.441%20497.8179-13.2266%20363.1171%204.8783%20227.9942%2022.9833%2092.2378%2090.0896-27.895%20193.4059-110.0244%20279.9948-178.6415%20381.3431-212%20481.9043-212%20628.9086-212%20773.945-141.2716%20868.6024-7.2042%20910.5192%2052.1232%20939.0542%20118.4179%20953.8137%20190.202%20958.1431%20211.5261%20945.5484%20232.4279%20925.8691%20237.0727%20906.1898%20241.7176%20886.5105%20228.4164%20882.1811%20207.0923%20869.7831%20146.4981%20845.5776%2090.3376%20810.1549%2040.2999%20674.9581-151.1947%20417.7498-190.2536%20237.0939-46.6855%20149.5211%2022.7762%2092.8447%20124.3295%2077.4949%20239.184%2062.1451%20353.4052%2089.6961%20467.2041%20155.0313%20559.6788%20290.0312%20751.1734%20547.0428%20790.4435%20727.8954%20646.8754%20793.4275%20594.9375%20842.4289%20522.9423%20868.9959%20441.6574L742.8517%20494.4398C723.9596%20502.2516%20702.7059%20492.3285%20695.2278%20472.06%20687.7497%20451.7916%20697.1957%20428.9896%20716.0879%20420.9667L901.8604%20343.0598C906.1898%20341.1597%20910.716%20340.3151%20915.2423%20340.3151%20915.8327%20340.3151%20916.423%20340.5263%20917.0134%20340.5263%20918.391%20340.3151%20919.7685%20339.6818%20921.1461%20339.6818%20936.2991%20339.6818%20950.4682%20349.816%20955.7816%20365.8618L1021.904%20564.3237C1028.595%20585.2255%201018.7553%20607.8164%20999.6664%20615.2059Z'%20horiz-adv-x='1024'%20vert-adv-y='1024'%20/%3e%3c/font%3e%3c/defs%3e%3c/svg%3e") format("svg"),url(data:font/ttf;base64,AAEAAAALAIAAAwAwR1NVQrD+s+0AAAE4AAAAQk9TLzJW70H3AAABfAAAAFZjbWFwxM9UTgAAAfQAAAHUZ2x5Zjmq6XMAAAPcAAACSGhlYWQuNKV+AAAA4AAAADZoaGVhB4UDMgAAALwAAAAkaG10eBxk//cAAAHUAAAAIGxvY2ECAgE2AAADyAAAABJtYXhwARYASgAAARgAAAAgbmFtZZAIaAsAAAYkAAAChXBvc3Qz9+vJAAAIrAAAAGcAAQAAAyz/LABcBAD/9//9BAMAAQAAAAAAAAAAAAAAAAAAAAgAAQAAAAEAAB8FullfDzz1AAsEAAAAAADljbEJAAAAAOWNsQn/9/8rBAMDRAAAAAgAAgAAAAAAAAABAAAACAA+AAQAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAAAAQONAZAABQAIAokCzAAAAI8CiQLMAAAB6wAyAQgAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABAAHjhCAMs/ywAXANEANUAAAABAAAAAAAABAAAAABkAAAEAAAABAAAAAQAAAAEAAAABAAAAAQA//cAAAAFAAAAAwAAACwAAAAEAAABcAABAAAAAABqAAMAAQAAACwAAwAKAAABcAAEAD4AAAAIAAgAAgAAAHjhAuEI//8AAAB44QLhBP//AAAAAAAAAAEACAAIAAgAAAABAAIAAwAEAAUABgAHAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAABkAAAAAAAAAAcAAAB4AAAAeAAAAAEAAOECAADhAgAAAAIAAOEEAADhBAAAAAMAAOEFAADhBQAAAAQAAOEGAADhBgAAAAUAAOEHAADhBwAAAAYAAOEIAADhCAAAAAcAAAAAAAwAGgA0AFwAngDAASQAAAABAAD/7AAyABQAAgAANzMVFB4UKAAAAAABAAAAAAOAAWwAAwAAEyEVIYADAP0AAWyAAAAAAQAA/6wDgAKsAAsAAAEhESMRIRUhETMRIQOA/sCA/sABQIABQAFsAUD+wID+wAFAAAAAAAIAAP9sA8AC7AALABcAAAEOAQceARc+ATcuARMjFSM1IzUzNTMVMwIAv/wFBfy/v/wFBfwhwEDAwEDAAuwF/L+//AUF/L+//P4lwMBAwMAABAAA/4wDoALMABcAHwAjACcAAAE1LgEnIw4BBxUhFTMRHgEXIT4BNxEzNSU2NzMWFxUjEyMRMxMjETMCoAEkG8AbJAH/AHABJBsB4BskAXD+AAEPoA8BwCBAQMBAQAJMQBskAQEkG0BA/cAbJAEBJBsCQEAwDwEBDzD98AFg/qABYAAAAQAAAAADggHsABAAACUiJwEuAT4BMyEWFxYGBwEGAgAKCf6cBgQGDgkCyBMHAwQG/pwJLAgBgAcTEwsBEwoTB/6ACAAB//f/KwQDA0QAPQAAASYGDwEuAScmBAcOAR4BFx4BMzI2NzY3Ni4BBgcGBwYEJy4CNjc2JBceARcnJg4BFh8BFjM3FzI2PwE2JgPoDxsFHRlNMqf+gn46MBxhTUKTTHDKST8WAxAeGQQTNWv+vI5CUhcoMWsBRI4xSBR+DxsLDA66BgcCBAwTBEIFDQJnBQ0QVT1nKH46q1PCza0+MzNoZVlsERoHERBbTJAxajWSrqRGkDJrJ2k9NAYNHxwHTgMBAQ4MxhEcAAAAEgDeAAEAAAAAAAAAHQAAAAEAAAAAAAEACAAdAAEAAAAAAAIABwAlAAEAAAAAAAMACAAsAAEAAAAAAAQACAA0AAEAAAAAAAUACwA8AAEAAAAAAAYACABHAAEAAAAAAAoAKwBPAAEAAAAAAAsAEwB6AAMAAQQJAAAAOgCNAAMAAQQJAAEAEADHAAMAAQQJAAIADgDXAAMAAQQJAAMAEADlAAMAAQQJAAQAEAD1AAMAAQQJAAUAFgEFAAMAAQQJAAYAEAEbAAMAAQQJAAoAVgErAAMAAQQJAAsAJgGBCiAgQ3JlYXRlZCBieSBmb250LWNhcnJpZXIKICBpY29uZm9udFJlZ3VsYXJpY29uZm9udGljb25mb250VmVyc2lvbiAxLjBpY29uZm9udEdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAAoAIAAgAEMAcgBlAGEAdABlAGQAIABiAHkAIABmAG8AbgB0AC0AYwBhAHIAcgBpAGUAcgAKACAAIABpAGMAbwBuAGYAbwBuAHQAUgBlAGcAdQBsAGEAcgBpAGMAbwBuAGYAbwBuAHQAaQBjAG8AbgBmAG8AbgB0AFYAZQByAHMAaQBvAG4AIAAxAC4AMABpAGMAbwBuAGYAbwBuAHQARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAAIAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAECAQMBBAEFAQYBBwEIAQkAAXgHdW5pRTEwMgd1bmlFMTA0B3VuaUUxMDUHdW5pRTEwNgd1bmlFMTA3B3VuaUUxMDgAAAA=) format("truetype"),url(data:font/woff;base64,d09GRgABAAAAAAYgAAsAAAAACRQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFZW70H3Y21hcAAAAYAAAAB6AAAB1MTPVE5nbHlmAAAB/AAAAfMAAAJIOarpc2hlYWQAAAPwAAAAMQAAADYuNKV+aGhlYQAABCQAAAAgAAAAJAeFAzJobXR4AAAERAAAABQAAAAgHGT/92xvY2EAAARYAAAAEgAAABICAgE2bWF4cAAABGwAAAAfAAAAIAEWAEpuYW1lAAAEjAAAAVcAAAKFkAhoC3Bvc3QAAAXkAAAAOwAAAGcz9+vJeJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk7mWcwMDKwMHUyXSGgYGhH0IzvmYwYuRgYGBiYGVmwAoC0lxTGBwYKh5yMOv812GIYXZhuAoUZgTJAQD2uQt1eJzFkcENgCAMRX+xAjGO4gxO48mTR9ftJPrbcnECP3nQ/kBKWgAzgIlsRAG5IHCddCX8CUv4ip155yo8byvWn2dEGpFL4kaPqPCtskJFY1rxm+S/0l+tsR8jY1dwD/hFK4n31zTx2dic+HysJj43awnc6wnaC0dXFyMAAHicNZDPaxNREMdn3tvsNs2PzbLZXWpi4rpJNqCEJM9NoJD0EYoopB4UD+KlHqRqcshfEJaepRS99pCD4MHqHyBCFw8iov+DRw85ePPS7Dqx9s28Yeb7ZT7wHiBAsoQuFIEB9IVVrBSbQAfXhYc4BQ5gupYbclgBTsMLLznlITuFDA2u4RnkG8JweRhHlChDlDhF+X9ao4ieTHnElrTj0FYetQo6Q+y30PQsL/ACEQhLMDg7T6XOz/5VN5IRJVteClTj+lqKQCHeS75g34lWBQ98YgYt9D0CW64lDKK7hDdEUO/1he1YnukZYn3ZAmulqFTDBGbU4U9qZzGgvtAxuiZlJCUbSxLJlHIVXXRMyraOqLdXv3E/XuD+5R8d4hIKAPXrPrZwiMK1HVvVUGWwmY5PVEXNp9lXU+OKGp+kb25gqJlmBs1NU4vDDcDkT3JD4XwXBgRsqDpB/Iai5ZEeUEHR7fUpWqhqFIrfYjTVyHD8Rh7tKtqi73R7O9hr8F96KXV1a6/7Nj6cb7fLT/ZGr8ezb3d3bF6obClmMIk/HY3uO83OBHePOneKc72UyeY/qhpTsqYySuXYQSpXeDg4aM633z34/OP9UIhnTx9NjSuaUXg8Pu68CF59eHP7uDvxnw9uqblqWbvHEfPZL0b5Ly7KgeAAeJxjYGRgYABiedZdkfH8Nl8ZuFkYQOBp70ZOGP3/+39tFmZmFyCXg4EJJAoAHjcKuAAAAHicY2BkYGDW+a/DEMPC8P/7/78szAxAERTAAQCMWwW+eJxjYQCCFAYGFgZs+P93AA9xAncAAAAAAAwAGgA0AFwAngDAASQAAHicY2BkYGDgYLBjYGEAASYg5gJCBob/YD4DAA+MAWEAeJxlkbtuwkAURMc88gApQomUJoq0TdIQzEOpUDokKCNR0BuzBiO/tF6QSJcPyHflE9Klyyekz2CuG8cr7547M3d9JQO4xjccnJ57vid2cMHqxDWc40G4Tv1JuEF+Fm6ijRfhM+oz4Ra6eBVu4wZvvMFpXLIa40PYQQefwjVc4Uu4Tv1HuEH+FW7i1mkKn6Hj3Am3sHC6wm08Ou8tpSZGe1av1PKggjSxPd8zJtSGTuinyVGa6/Uu8kxZludCmzxMEzV0B6U004k25W35fj2yNlCBSWM1paujKFWZSbfat+7G2mzc7weiu34aczzFNYGBhgfLfcV6iQP3ACkSaj349AxXSN9IT0j16JepOb01doiKbNWt1ovippz6sVYYwsXgX2rGVFIkq7Pl2PNrI6qW6eOshj0xaSq9mpNEZIWs8LZUfOouNkVXxp/d5woqebeYIf4D2J1ywQB4nGNgYoAALgbsgIORiZGZkYWRlZGNkZ2Rg5GTgbGCvTQv09XQwAhKm0BpUyhtBqXNobQFAwMAiEgN2AA=) format("woff"),url(data:application/vnd.ms-fontobject;base64,vAkAABQJAAABAAIAAAAAAAIABQMAAAAAAAABAJABAAAAAExQAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAWboFHwAAAAAAAAAAAAAAAAAAAAAAABAAaQBjAG8AbgBmAG8AbgB0AAAADgBSAGUAZwB1AGwAYQByAAAAFgBWAGUAcgBzAGkAbwBuACAAMQAuADAAAAAQAGkAYwBvAG4AZgBvAG4AdAAAAAAAAAEAAAALAIAAAwAwR1NVQrD+s+0AAAE4AAAAQk9TLzJW70H3AAABfAAAAFZjbWFwxM9UTgAAAfQAAAHUZ2x5Zjmq6XMAAAPcAAACSGhlYWQuNKV+AAAA4AAAADZoaGVhB4UDMgAAALwAAAAkaG10eBxk//cAAAHUAAAAIGxvY2ECAgE2AAADyAAAABJtYXhwARYASgAAARgAAAAgbmFtZZAIaAsAAAYkAAAChXBvc3Qz9+vJAAAIrAAAAGcAAQAAAyz/LABcBAD/9//9BAMAAQAAAAAAAAAAAAAAAAAAAAgAAQAAAAEAAB8FullfDzz1AAsEAAAAAADljbEJAAAAAOWNsQn/9/8rBAMDRAAAAAgAAgAAAAAAAAABAAAACAA+AAQAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAAAAQONAZAABQAIAokCzAAAAI8CiQLMAAAB6wAyAQgAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABAAHjhCAMs/ywAXANEANUAAAABAAAAAAAABAAAAABkAAAEAAAABAAAAAQAAAAEAAAABAAAAAQA//cAAAAFAAAAAwAAACwAAAAEAAABcAABAAAAAABqAAMAAQAAACwAAwAKAAABcAAEAD4AAAAIAAgAAgAAAHjhAuEI//8AAAB44QLhBP//AAAAAAAAAAEACAAIAAgAAAABAAIAAwAEAAUABgAHAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAABkAAAAAAAAAAcAAAB4AAAAeAAAAAEAAOECAADhAgAAAAIAAOEEAADhBAAAAAMAAOEFAADhBQAAAAQAAOEGAADhBgAAAAUAAOEHAADhBwAAAAYAAOEIAADhCAAAAAcAAAAAAAwAGgA0AFwAngDAASQAAAABAAD/7AAyABQAAgAANzMVFB4UKAAAAAABAAAAAAOAAWwAAwAAEyEVIYADAP0AAWyAAAAAAQAA/6wDgAKsAAsAAAEhESMRIRUhETMRIQOA/sCA/sABQIABQAFsAUD+wID+wAFAAAAAAAIAAP9sA8AC7AALABcAAAEOAQceARc+ATcuARMjFSM1IzUzNTMVMwIAv/wFBfy/v/wFBfwhwEDAwEDAAuwF/L+//AUF/L+//P4lwMBAwMAABAAA/4wDoALMABcAHwAjACcAAAE1LgEnIw4BBxUhFTMRHgEXIT4BNxEzNSU2NzMWFxUjEyMRMxMjETMCoAEkG8AbJAH/AHABJBsB4BskAXD+AAEPoA8BwCBAQMBAQAJMQBskAQEkG0BA/cAbJAEBJBsCQEAwDwEBDzD98AFg/qABYAAAAQAAAAADggHsABAAACUiJwEuAT4BMyEWFxYGBwEGAgAKCf6cBgQGDgkCyBMHAwQG/pwJLAgBgAcTEwsBEwoTB/6ACAAB//f/KwQDA0QAPQAAASYGDwEuAScmBAcOAR4BFx4BMzI2NzY3Ni4BBgcGBwYEJy4CNjc2JBceARcnJg4BFh8BFjM3FzI2PwE2JgPoDxsFHRlNMqf+gn46MBxhTUKTTHDKST8WAxAeGQQTNWv+vI5CUhcoMWsBRI4xSBR+DxsLDA66BgcCBAwTBEIFDQJnBQ0QVT1nKH46q1PCza0+MzNoZVlsERoHERBbTJAxajWSrqRGkDJrJ2k9NAYNHxwHTgMBAQ4MxhEcAAAAEgDeAAEAAAAAAAAAHQAAAAEAAAAAAAEACAAdAAEAAAAAAAIABwAlAAEAAAAAAAMACAAsAAEAAAAAAAQACAA0AAEAAAAAAAUACwA8AAEAAAAAAAYACABHAAEAAAAAAAoAKwBPAAEAAAAAAAsAEwB6AAMAAQQJAAAAOgCNAAMAAQQJAAEAEADHAAMAAQQJAAIADgDXAAMAAQQJAAMAEADlAAMAAQQJAAQAEAD1AAMAAQQJAAUAFgEFAAMAAQQJAAYAEAEbAAMAAQQJAAoAVgErAAMAAQQJAAsAJgGBCiAgQ3JlYXRlZCBieSBmb250LWNhcnJpZXIKICBpY29uZm9udFJlZ3VsYXJpY29uZm9udGljb25mb250VmVyc2lvbiAxLjBpY29uZm9udEdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAAoAIAAgAEMAcgBlAGEAdABlAGQAIABiAHkAIABmAG8AbgB0AC0AYwBhAHIAcgBpAGUAcgAKACAAIABpAGMAbwBuAGYAbwBuAHQAUgBlAGcAdQBsAGEAcgBpAGMAbwBuAGYAbwBuAHQAaQBjAG8AbgBmAG8AbgB0AFYAZQByAHMAaQBvAG4AIAAxAC4AMABpAGMAbwBuAGYAbwBuAHQARwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABzAHYAZwAyAHQAdABmACAAZgByAG8AbQAgAEYAbwBuAHQAZQBsAGwAbwAgAHAAcgBvAGoAZQBjAHQALgBoAHQAdABwADoALwAvAGYAbwBuAHQAZQBsAGwAbwAuAGMAbwBtAAAAAAIAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAECAQMBBAEFAQYBBwEIAQkAAXgHdW5pRTEwMgd1bmlFMTA0B3VuaUUxMDUHdW5pRTEwNgd1bmlFMTA3B3VuaUUxMDgAAAA=) format("embedded-opentype");font-weight:400;font-style:normal}.bk-form-icon{font-family:bk-form!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-minus-line:before{content:""}.icon-plus-line:before{content:""}.icon-plus-circle-shape:before{content:""}.icon-close3-shape:before{content:""}.icon-down-shape:before{content:""}.icon-reset:before{content:""}
@@ -0,0 +1,10 @@
1
+ import { IResParse } from '../@types';
2
+
3
+ export type MethodType = 'get' | 'head' | 'post' | 'put' | 'delete' | 'connect' | 'options' | 'trace' | 'patch';
4
+ export interface IFetchConfig extends RequestInit {
5
+ params: Record<string, any> | BodyInit | null;
6
+ responseParse?: IResParse;
7
+ responseType?: 'text' | 'json' | 'blob' | 'formData' | 'arrayBuffer';
8
+ }
9
+ declare const _default: (url: string, config?: Partial<IFetchConfig>) => Promise<any>;
10
+ export default _default;
@@ -0,0 +1,23 @@
1
+ import { JSONSchema6TypeName } from 'json-schema';
2
+
3
+ export declare const isRegExp: (regExpStr: any) => boolean;
4
+ export declare const isObj: (val: unknown) => val is object;
5
+ export declare const globalThisPolyfill: any;
6
+ export declare const getBrowserlanguage: () => any;
7
+ export declare const hasOwnProperty: (obj: any, key: any) => boolean;
8
+ export declare const valueType: (value: any) => "string" | "number" | "bigint" | "boolean" | "symbol" | "undefined" | "object" | "function" | "array" | "null";
9
+ export declare const merge: (target: any, source: any) => any;
10
+ export declare function intersection(arr1: any, arr2: any): any;
11
+ export declare function gcd(a: any, b: any): any;
12
+ export declare function scm(a: any, b: any): number;
13
+ export declare function initializationValue(type: JSONSchema6TypeName, defaultInitValue?: Partial<Record<JSONSchema6TypeName, any>>): any;
14
+ type PlainObject = {
15
+ [key: string]: any;
16
+ };
17
+ export declare function mergeDeep<T extends PlainObject>(target: T, ...sources: T[]): T;
18
+ export declare function deepEquals(a: any, b: any, ca?: any[], cb?: any[]): any;
19
+ export declare function orderProperties(properties: any, order: any): string[];
20
+ export declare function upperFirstLetter(str: string): string;
21
+ export declare const getCookie: (name: any) => string | null;
22
+ export declare function capitalizeFirstLetter(string: any): any;
23
+ export {};