@lljj/vue3-form-element
Version:
基于 Vue3 、ElementPlus、JsonSchema快速构建一个带完整校验的form表单
4 lines • 183 kB
JavaScript
/** @license @lljj/vue3-form-element (c) 2020-2023 Liu.Jun License: Apache-2.0 */
import{resolveComponent as e,defineComponent as r,h as t,openBlock as a,createBlock as o,toDisplayString as n,createCommentVNode as i,createVNode as s,renderSlot as l,inject as u,computed as c,ref as d,watch as m,toRaw as p,getCurrentInstance as f,toRef as h,provide as v,withCtx as g,Fragment as y,renderList as b,createTextVNode as P,onMounted as w}from"vue";function E(e){return(E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function S(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function F(){return(F=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e}).apply(this,arguments)}function x(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,a)}return t}function O(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?x(Object(t),!0).forEach((function(r){S(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):x(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function _(e,r){if(null==e)return{};var t,a,o=function(e,r){if(null==e)return{};var t,a,o={},n=Object.keys(e);for(a=0;a<n.length;a++)t=n[a],r.indexOf(t)>=0||(o[t]=e[t]);return o}(e,r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)t=n[a],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}function D(e,r){return function(e){if(Array.isArray(e))return e}(e)||function(e,r){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var t=[],a=!0,o=!1,n=void 0;try{for(var i,s=e[Symbol.iterator]();!(a=(i=s.next()).done)&&(t.push(i.value),!r||t.length!==r);a=!0);}catch(e){o=!0,n=e}finally{try{a||null==s.return||s.return()}finally{if(o)throw n}}return t}(e,r)||j(e,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function k(e){return function(e){if(Array.isArray(e))return I(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||j(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(e,r){if(e){if("string"==typeof e)return I(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?I(e,r):void 0}}function I(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t<r;t++)a[t]=e[t];return a}function A(e){var r=function(e,r){if("object"!=typeof e||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,r||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:String(r)}function C(e){return e?"".concat("__pathRoot",".").concat(e).replace(/\./g,"_"):"__pathRoot"}function R(e){return""===e}function $(e,r){return""===e?r:[e,r].join(".")}function N(e,r){for(var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=r.split("."),o=0;o<a.length-t;o+=1){if(void 0===e)return;e=""===a[o]?e:e[a[o]]}return e}function L(e){return e}function T(e,r){delete e[r]}function z(e,r,t){for(var a=r.split("."),o=0;o<a.length;o+=1){if(a.length-o<2){e[a[a.length-1]]=t;break}e=e[a[o]]}}function V(r){return"string"==typeof r?e(r):r}var q=Object.freeze({__proto__:null,deletePathVal:T,setPathVal:z,resolveComponent:V,modelValueComponent:function(e){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=a.model,n=void 0===o?"value":o;return r({inheritAttrs:!1,setup:function(r,a){var o=a.attrs,i=a.slots;return function(){var r,a=o.modelValue,s=o["onUpdate:modelValue"],l=_(o,["modelValue","onUpdate:modelValue"]);return t(V(e),O((S(r={},n,a),S(r,"onUpdate:".concat(n),s),r),l),i)}}})},nodePath2ClassName:C,isRootNodePath:R,computedCurPath:$,getPathVal:N,path2prop:L,pathSeparator:"."});function M(e){return"[object Object]"===Object.prototype.toString.call(e)}function W(e){return"[object Arguments]"===Object.prototype.toString.call(e)}function U(e,r){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=Object.assign({},e);return M(r)?Object.keys(r).reduce((function(a,o){var n=e?e[o]:{},i=r[o];return e&&e.hasOwnProperty(o)&&M(i)?a[o]=U(n,i,t):t&&Array.isArray(n)&&Array.isArray(i)?a[o]=n.concat(i):a[o]=i,a}),a):a}function B(e){var r,t=e.type;return!t&&e.const?(r=e.const,Array.isArray(r)?"array":"string"==typeof r?"string":null==r?"null":"boolean"==typeof r?"boolean":isNaN(r)?"object"===E(r)?"object":"string":"number"):!t&&e.enum?"string":!t&&e.items?"array":t||!e.properties&&!e.additionalProperties?t instanceof Array&&2===t.length&&t.includes("null")?t.find((function(e){return"null"!==e})):t:"object"}function Q(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];if(e===r)return!0;if("function"==typeof e||"function"==typeof r)return!0;if("object"!==E(e)||"object"!==E(r))return!1;if(null===e||null===r)return!1;if(e instanceof Date&&r instanceof Date)return e.getTime()===r.getTime();if(e instanceof RegExp&&r instanceof RegExp)return e.source===r.source&&e.global===r.global&&e.multiline===r.multiline&&e.lastIndex===r.lastIndex&&e.ignoreCase===r.ignoreCase;if(W(e)||W(r)){if(!W(e)||!W(r))return!1;var o=Array.prototype.slice;return Q(o.call(e),o.call(r),t,a)}if(e.constructor!==r.constructor)return!1;var n=Object.keys(e),i=Object.keys(r);if(0===n.length&&0===i.length)return!0;if(n.length!==i.length)return!1;for(var s,l=t.length;l--;)if(t[l]===e)return a[l]===r;t.push(e),a.push(r),n.sort(),i.sort();for(var u=n.length-1;u>=0;u--)if(n[u]!==i[u])return!1;for(var c=n.length-1;c>=0;c--)if(!Q(e[s=n[c]],r[s],t,a))return!1;return t.pop(),a.pop(),!0}var H,K,G=(H="".concat(+new Date),K=0,function(){var e="".concat(+new Date);return e===H?K+=1:K=0,"".concat(H=e,"x").concat(K)});function J(e){if(!e)return!0;for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r))return!1;return!0}function Z(e,r){return Object.entries(e).reduce((function(e,t){var a=D(t,2),o=a[0],n=a[1],i=r(o,n);return void 0!==i&&(e[i]=n),e}),{})}var Y=function(e){return"0".concat(e).substr(-2)};function X(e){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!e)return{year:-1,month:-1,day:-1,hour:r?-1:0,minute:r?-1:0,second:r?-1:0};var t=new Date(e);if(Number.isNaN(t.getTime()))throw new Error("Unable to parse date ".concat(e));return{year:t.getFullYear(),month:Y(t.getMonth()+1),day:Y(t.getDate()),hour:Y(r?t.getHours():0),minute:Y(r?t.getMinutes():0),second:Y(r?t.getSeconds():0)}}function ee(e){return void 0===e?e:String(e).replace(/^./,(function(e){return e.toLocaleLowerCase()}))}function re(e,r){return e*r/function e(r,t){return 0===t?r:e(t,r%t)}(e,r)}function te(e,r){for(var t=r.split("/"),a=0;a<t.length;a+=1){if(void 0===e)return;e=""===t[a]?e:e[t[a]]}return e}function ae(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=e;if(!e.startsWith("#"))throw new Error("Could not find a definition for ".concat(t,"."));var a=te(r,e=decodeURIComponent(e.substring(1)));if(void 0===a)throw new Error("Could not find a definition for ".concat(t,"."));return a.hasOwnProperty("$ref")?ae(a.$ref,r):a}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function oe(e,r){return e(r={exports:{}},r.exports),r.exports}function ne(e){return e&&e.default||e}var ie,se=oe((function(e,r){
/** @license URI.js v4.4.1 (c) 2011 Gary Court. License: http://github.com/garycourt/uri-js */
!function(e){function r(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];if(r.length>1){r[0]=r[0].slice(0,-1);for(var a=r.length-1,o=1;o<a;++o)r[o]=r[o].slice(1,-1);return r[a]=r[a].slice(1),r.join("")}return r[0]}function t(e){return"(?:"+e+")"}function a(e){return void 0===e?"undefined":null===e?"null":Object.prototype.toString.call(e).split(" ").pop().split("]").shift().toLowerCase()}function o(e){return e.toUpperCase()}function n(e){var a=r("[0-9]","[A-Fa-f]"),o=t(t("%[EFef]"+a+"%"+a+a+"%"+a+a)+"|"+t("%[89A-Fa-f]"+a+"%"+a+a)+"|"+t("%"+a+a)),n="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",i=r("[\\:\\/\\?\\#\\[\\]\\@]",n),s=e?"[\\uE000-\\uF8FF]":"[]",l=r("[A-Za-z]","[0-9]","[\\-\\.\\_\\~]",e?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]");t("[A-Za-z]"+r("[A-Za-z]","[0-9]","[\\+\\-\\.]")+"*"),t(t(o+"|"+r(l,n,"[\\:]"))+"*");var u=t(t("25[0-5]")+"|"+t("2[0-4][0-9]")+"|"+t("1[0-9][0-9]")+"|"+t("0?[1-9][0-9]")+"|0?0?[0-9]"),c=t(u+"\\."+u+"\\."+u+"\\."+u),d=t(a+"{1,4}"),m=t(t(d+"\\:"+d)+"|"+c),p=t(t(d+"\\:")+"{6}"+m),f=t("\\:\\:"+t(d+"\\:")+"{5}"+m),h=t(t(d)+"?\\:\\:"+t(d+"\\:")+"{4}"+m),v=t(t(t(d+"\\:")+"{0,1}"+d)+"?\\:\\:"+t(d+"\\:")+"{3}"+m),g=t(t(t(d+"\\:")+"{0,2}"+d)+"?\\:\\:"+t(d+"\\:")+"{2}"+m),y=t(t(t(d+"\\:")+"{0,3}"+d)+"?\\:\\:"+d+"\\:"+m),b=t(t(t(d+"\\:")+"{0,4}"+d)+"?\\:\\:"+m),P=t(t(t(d+"\\:")+"{0,5}"+d)+"?\\:\\:"+d),w=t(t(t(d+"\\:")+"{0,6}"+d)+"?\\:\\:"),E=t([p,f,h,v,g,y,b,P,w].join("|")),S=t(t(l+"|"+o)+"+");t("[vV]"+a+"+\\."+r(l,n,"[\\:]")+"+"),t(t(o+"|"+r(l,n))+"*");var F=t(o+"|"+r(l,n,"[\\:\\@]"));return t(t(o+"|"+r(l,n,"[\\@]"))+"+"),t(t(F+"|"+r("[\\/\\?]",s))+"*"),{NOT_SCHEME:new RegExp(r("[^]","[A-Za-z]","[0-9]","[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(r("[^\\%\\:]",l,n),"g"),NOT_HOST:new RegExp(r("[^\\%\\[\\]\\:]",l,n),"g"),NOT_PATH:new RegExp(r("[^\\%\\/\\:\\@]",l,n),"g"),NOT_PATH_NOSCHEME:new RegExp(r("[^\\%\\/\\@]",l,n),"g"),NOT_QUERY:new RegExp(r("[^\\%]",l,n,"[\\:\\@\\/\\?]",s),"g"),NOT_FRAGMENT:new RegExp(r("[^\\%]",l,n,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(r("[^]",l,n),"g"),UNRESERVED:new RegExp(l,"g"),OTHER_CHARS:new RegExp(r("[^\\%]",l,i),"g"),PCT_ENCODED:new RegExp(o,"g"),IPV4ADDRESS:new RegExp("^("+c+")$"),IPV6ADDRESS:new RegExp("^\\[?("+E+")"+t(t("\\%25|\\%(?!"+a+"{2})")+"("+S+")")+"?\\]?$")}}var i=n(!1),s=n(!0),l=function(e,r){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,r){var t=[],a=!0,o=!1,n=void 0;try{for(var i,s=e[Symbol.iterator]();!(a=(i=s.next()).done)&&(t.push(i.value),!r||t.length!==r);a=!0);}catch(e){o=!0,n=e}finally{try{!a&&s.return&&s.return()}finally{if(o)throw n}}return t}(e,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")},u=2147483647,c=/^xn--/,d=/[^\0-\x7E]/,m=/[\x2E\u3002\uFF0E\uFF61]/g,p={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},f=Math.floor,h=String.fromCharCode;function v(e){throw new RangeError(p[e])}function g(e,r){var t=e.split("@"),a="";t.length>1&&(a=t[0]+"@",e=t[1]);var o=function(e,r){for(var t=[],a=e.length;a--;)t[a]=r(e[a]);return t}((e=e.replace(m,".")).split("."),r).join(".");return a+o}function y(e){for(var r=[],t=0,a=e.length;t<a;){var o=e.charCodeAt(t++);if(o>=55296&&o<=56319&&t<a){var n=e.charCodeAt(t++);56320==(64512&n)?r.push(((1023&o)<<10)+(1023&n)+65536):(r.push(o),t--)}else r.push(o)}return r}var b=function(e,r){return e+22+75*(e<26)-((0!=r)<<5)},P=function(e,r,t){var a=0;for(e=t?f(e/700):e>>1,e+=f(e/r);e>455;a+=36)e=f(e/35);return f(a+36*e/(e+38))},w=function(e){var r,t=[],a=e.length,o=0,n=128,i=72,s=e.lastIndexOf("-");s<0&&(s=0);for(var l=0;l<s;++l)e.charCodeAt(l)>=128&&v("not-basic"),t.push(e.charCodeAt(l));for(var c=s>0?s+1:0;c<a;){for(var d=o,m=1,p=36;;p+=36){c>=a&&v("invalid-input");var h=(r=e.charCodeAt(c++))-48<10?r-22:r-65<26?r-65:r-97<26?r-97:36;(h>=36||h>f((u-o)/m))&&v("overflow"),o+=h*m;var g=p<=i?1:p>=i+26?26:p-i;if(h<g)break;var y=36-g;m>f(u/y)&&v("overflow"),m*=y}var b=t.length+1;i=P(o-d,b,0==d),f(o/b)>u-n&&v("overflow"),n+=f(o/b),o%=b,t.splice(o++,0,n)}return String.fromCodePoint.apply(String,t)},E=function(e){var r=[],t=(e=y(e)).length,a=128,o=0,n=72,i=!0,s=!1,l=void 0;try{for(var c,d=e[Symbol.iterator]();!(i=(c=d.next()).done);i=!0){var m=c.value;m<128&&r.push(h(m))}}catch(e){s=!0,l=e}finally{try{!i&&d.return&&d.return()}finally{if(s)throw l}}var p=r.length,g=p;for(p&&r.push("-");g<t;){var w=u,E=!0,S=!1,F=void 0;try{for(var x,O=e[Symbol.iterator]();!(E=(x=O.next()).done);E=!0){var _=x.value;_>=a&&_<w&&(w=_)}}catch(e){S=!0,F=e}finally{try{!E&&O.return&&O.return()}finally{if(S)throw F}}var D=g+1;w-a>f((u-o)/D)&&v("overflow"),o+=(w-a)*D,a=w;var k=!0,j=!1,I=void 0;try{for(var A,C=e[Symbol.iterator]();!(k=(A=C.next()).done);k=!0){var R=A.value;if(R<a&&++o>u&&v("overflow"),R==a){for(var $=o,N=36;;N+=36){var L=N<=n?1:N>=n+26?26:N-n;if($<L)break;var T=$-L,z=36-L;r.push(h(b(L+T%z,0))),$=f(T/z)}r.push(h(b($,0))),n=P(o,D,g==p),o=0,++g}}}catch(e){j=!0,I=e}finally{try{!k&&C.return&&C.return()}finally{if(j)throw I}}++o,++a}return r.join("")},S=function(e){return g(e,(function(e){return d.test(e)?"xn--"+E(e):e}))},F=function(e){return g(e,(function(e){return c.test(e)?w(e.slice(4).toLowerCase()):e}))},x={};function O(e){var r=e.charCodeAt(0);return r<16?"%0"+r.toString(16).toUpperCase():r<128?"%"+r.toString(16).toUpperCase():r<2048?"%"+(r>>6|192).toString(16).toUpperCase()+"%"+(63&r|128).toString(16).toUpperCase():"%"+(r>>12|224).toString(16).toUpperCase()+"%"+(r>>6&63|128).toString(16).toUpperCase()+"%"+(63&r|128).toString(16).toUpperCase()}function _(e){for(var r="",t=0,a=e.length;t<a;){var o=parseInt(e.substr(t+1,2),16);if(o<128)r+=String.fromCharCode(o),t+=3;else if(o>=194&&o<224){if(a-t>=6){var n=parseInt(e.substr(t+4,2),16);r+=String.fromCharCode((31&o)<<6|63&n)}else r+=e.substr(t,6);t+=6}else if(o>=224){if(a-t>=9){var i=parseInt(e.substr(t+4,2),16),s=parseInt(e.substr(t+7,2),16);r+=String.fromCharCode((15&o)<<12|(63&i)<<6|63&s)}else r+=e.substr(t,9);t+=9}else r+=e.substr(t,3),t+=3}return r}function D(e,r){function t(e){var t=_(e);return t.match(r.UNRESERVED)?t:e}return e.scheme&&(e.scheme=String(e.scheme).replace(r.PCT_ENCODED,t).toLowerCase().replace(r.NOT_SCHEME,"")),void 0!==e.userinfo&&(e.userinfo=String(e.userinfo).replace(r.PCT_ENCODED,t).replace(r.NOT_USERINFO,O).replace(r.PCT_ENCODED,o)),void 0!==e.host&&(e.host=String(e.host).replace(r.PCT_ENCODED,t).toLowerCase().replace(r.NOT_HOST,O).replace(r.PCT_ENCODED,o)),void 0!==e.path&&(e.path=String(e.path).replace(r.PCT_ENCODED,t).replace(e.scheme?r.NOT_PATH:r.NOT_PATH_NOSCHEME,O).replace(r.PCT_ENCODED,o)),void 0!==e.query&&(e.query=String(e.query).replace(r.PCT_ENCODED,t).replace(r.NOT_QUERY,O).replace(r.PCT_ENCODED,o)),void 0!==e.fragment&&(e.fragment=String(e.fragment).replace(r.PCT_ENCODED,t).replace(r.NOT_FRAGMENT,O).replace(r.PCT_ENCODED,o)),e}function k(e){return e.replace(/^0*(.*)/,"$1")||"0"}function j(e,r){var t=e.match(r.IPV4ADDRESS)||[],a=l(t,2)[1];return a?a.split(".").map(k).join("."):e}function I(e,r){var t=e.match(r.IPV6ADDRESS)||[],a=l(t,3),o=a[1],n=a[2];if(o){for(var i=o.toLowerCase().split("::").reverse(),s=l(i,2),u=s[0],c=s[1],d=c?c.split(":").map(k):[],m=u.split(":").map(k),p=r.IPV4ADDRESS.test(m[m.length-1]),f=p?7:8,h=m.length-f,v=Array(f),g=0;g<f;++g)v[g]=d[g]||m[h+g]||"";p&&(v[f-1]=j(v[f-1],r));var y=v.reduce((function(e,r,t){if(!r||"0"===r){var a=e[e.length-1];a&&a.index+a.length===t?a.length++:e.push({index:t,length:1})}return e}),[]).sort((function(e,r){return r.length-e.length}))[0],b=void 0;if(y&&y.length>1){var P=v.slice(0,y.index),w=v.slice(y.index+y.length);b=P.join(":")+"::"+w.join(":")}else b=v.join(":");return n&&(b+="%"+n),b}return e}var A=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,C=void 0==="".match(/(){0}/)[1];function R(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t={},a=!1!==r.iri?s:i;"suffix"===r.reference&&(e=(r.scheme?r.scheme+":":"")+"//"+e);var o=e.match(A);if(o){C?(t.scheme=o[1],t.userinfo=o[3],t.host=o[4],t.port=parseInt(o[5],10),t.path=o[6]||"",t.query=o[7],t.fragment=o[8],isNaN(t.port)&&(t.port=o[5])):(t.scheme=o[1]||void 0,t.userinfo=-1!==e.indexOf("@")?o[3]:void 0,t.host=-1!==e.indexOf("//")?o[4]:void 0,t.port=parseInt(o[5],10),t.path=o[6]||"",t.query=-1!==e.indexOf("?")?o[7]:void 0,t.fragment=-1!==e.indexOf("#")?o[8]:void 0,isNaN(t.port)&&(t.port=e.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?o[4]:void 0)),t.host&&(t.host=I(j(t.host,a),a)),void 0!==t.scheme||void 0!==t.userinfo||void 0!==t.host||void 0!==t.port||t.path||void 0!==t.query?void 0===t.scheme?t.reference="relative":void 0===t.fragment?t.reference="absolute":t.reference="uri":t.reference="same-document",r.reference&&"suffix"!==r.reference&&r.reference!==t.reference&&(t.error=t.error||"URI is not a "+r.reference+" reference.");var n=x[(r.scheme||t.scheme||"").toLowerCase()];if(r.unicodeSupport||n&&n.unicodeSupport)D(t,a);else{if(t.host&&(r.domainHost||n&&n.domainHost))try{t.host=S(t.host.replace(a.PCT_ENCODED,_).toLowerCase())}catch(e){t.error=t.error||"Host's domain name can not be converted to ASCII via punycode: "+e}D(t,i)}n&&n.parse&&n.parse(t,r)}else t.error=t.error||"URI can not be parsed.";return t}function $(e,r){var t=!1!==r.iri?s:i,a=[];return void 0!==e.userinfo&&(a.push(e.userinfo),a.push("@")),void 0!==e.host&&a.push(I(j(String(e.host),t),t).replace(t.IPV6ADDRESS,(function(e,r,t){return"["+r+(t?"%25"+t:"")+"]"}))),"number"!=typeof e.port&&"string"!=typeof e.port||(a.push(":"),a.push(String(e.port))),a.length?a.join(""):void 0}var N=/^\.\.?\//,L=/^\/\.(\/|$)/,T=/^\/\.\.(\/|$)/,z=/^\/?(?:.|\n)*?(?=\/|$)/;function V(e){for(var r=[];e.length;)if(e.match(N))e=e.replace(N,"");else if(e.match(L))e=e.replace(L,"/");else if(e.match(T))e=e.replace(T,"/"),r.pop();else if("."===e||".."===e)e="";else{var t=e.match(z);if(!t)throw new Error("Unexpected dot segment condition");var a=t[0];e=e.slice(a.length),r.push(a)}return r.join("")}function q(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=r.iri?s:i,a=[],o=x[(r.scheme||e.scheme||"").toLowerCase()];if(o&&o.serialize&&o.serialize(e,r),e.host)if(t.IPV6ADDRESS.test(e.host));else if(r.domainHost||o&&o.domainHost)try{e.host=r.iri?F(e.host):S(e.host.replace(t.PCT_ENCODED,_).toLowerCase())}catch(t){e.error=e.error||"Host's domain name can not be converted to "+(r.iri?"Unicode":"ASCII")+" via punycode: "+t}D(e,t),"suffix"!==r.reference&&e.scheme&&(a.push(e.scheme),a.push(":"));var n=$(e,r);if(void 0!==n&&("suffix"!==r.reference&&a.push("//"),a.push(n),e.path&&"/"!==e.path.charAt(0)&&a.push("/")),void 0!==e.path){var l=e.path;r.absolutePath||o&&o.absolutePath||(l=V(l)),void 0===n&&(l=l.replace(/^\/\//,"/%2F")),a.push(l)}return void 0!==e.query&&(a.push("?"),a.push(e.query)),void 0!==e.fragment&&(a.push("#"),a.push(e.fragment)),a.join("")}function M(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments[3],o={};return a||(e=R(q(e,t),t),r=R(q(r,t),t)),!(t=t||{}).tolerant&&r.scheme?(o.scheme=r.scheme,o.userinfo=r.userinfo,o.host=r.host,o.port=r.port,o.path=V(r.path||""),o.query=r.query):(void 0!==r.userinfo||void 0!==r.host||void 0!==r.port?(o.userinfo=r.userinfo,o.host=r.host,o.port=r.port,o.path=V(r.path||""),o.query=r.query):(r.path?("/"===r.path.charAt(0)?o.path=V(r.path):(void 0===e.userinfo&&void 0===e.host&&void 0===e.port||e.path?e.path?o.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+r.path:o.path=r.path:o.path="/"+r.path,o.path=V(o.path)),o.query=r.query):(o.path=e.path,void 0!==r.query?o.query=r.query:o.query=e.query),o.userinfo=e.userinfo,o.host=e.host,o.port=e.port),o.scheme=e.scheme),o.fragment=r.fragment,o}function W(e,r){return e&&e.toString().replace(r&&r.iri?s.PCT_ENCODED:i.PCT_ENCODED,_)}var U={scheme:"http",domainHost:!0,parse:function(e,r){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e},serialize:function(e,r){var t="https"===String(e.scheme).toLowerCase();return e.port!==(t?443:80)&&""!==e.port||(e.port=void 0),e.path||(e.path="/"),e}},B={scheme:"https",domainHost:U.domainHost,parse:U.parse,serialize:U.serialize};function Q(e){return"boolean"==typeof e.secure?e.secure:"wss"===String(e.scheme).toLowerCase()}var H={scheme:"ws",domainHost:!0,parse:function(e,r){var t=e;return t.secure=Q(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t},serialize:function(e,r){if(e.port!==(Q(e)?443:80)&&""!==e.port||(e.port=void 0),"boolean"==typeof e.secure&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){var t=e.resourceName.split("?"),a=l(t,2),o=a[0],n=a[1];e.path=o&&"/"!==o?o:void 0,e.query=n,e.resourceName=void 0}return e.fragment=void 0,e}},K={scheme:"wss",domainHost:H.domainHost,parse:H.parse,serialize:H.serialize},G={},J="[A-Za-z0-9\\-\\.\\_\\~\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]",Z="[0-9A-Fa-f]",Y=t(t("%[EFef]"+Z+"%"+Z+Z+"%"+Z+Z)+"|"+t("%[89A-Fa-f]"+Z+"%"+Z+Z)+"|"+t("%"+Z+Z)),X=r("[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",'[\\"\\\\]'),ee=new RegExp(J,"g"),re=new RegExp(Y,"g"),te=new RegExp(r("[^]","[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]","[\\.]",'[\\"]',X),"g"),ae=new RegExp(r("[^]",J,"[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"),"g"),oe=ae;function ne(e){var r=_(e);return r.match(ee)?r:e}var ie={scheme:"mailto",parse:function(e,r){var t=e,a=t.to=t.path?t.path.split(","):[];if(t.path=void 0,t.query){for(var o=!1,n={},i=t.query.split("&"),s=0,l=i.length;s<l;++s){var u=i[s].split("=");switch(u[0]){case"to":for(var c=u[1].split(","),d=0,m=c.length;d<m;++d)a.push(c[d]);break;case"subject":t.subject=W(u[1],r);break;case"body":t.body=W(u[1],r);break;default:o=!0,n[W(u[0],r)]=W(u[1],r)}}o&&(t.headers=n)}t.query=void 0;for(var p=0,f=a.length;p<f;++p){var h=a[p].split("@");if(h[0]=W(h[0]),r.unicodeSupport)h[1]=W(h[1],r).toLowerCase();else try{h[1]=S(W(h[1],r).toLowerCase())}catch(e){t.error=t.error||"Email address's domain name can not be converted to ASCII via punycode: "+e}a[p]=h.join("@")}return t},serialize:function(e,r){var t,a=e,n=null!=(t=e.to)?t instanceof Array?t:"number"!=typeof t.length||t.split||t.setInterval||t.call?[t]:Array.prototype.slice.call(t):[];if(n){for(var i=0,s=n.length;i<s;++i){var l=String(n[i]),u=l.lastIndexOf("@"),c=l.slice(0,u).replace(re,ne).replace(re,o).replace(te,O),d=l.slice(u+1);try{d=r.iri?F(d):S(W(d,r).toLowerCase())}catch(e){a.error=a.error||"Email address's domain name can not be converted to "+(r.iri?"Unicode":"ASCII")+" via punycode: "+e}n[i]=c+"@"+d}a.path=n.join(",")}var m=e.headers=e.headers||{};e.subject&&(m.subject=e.subject),e.body&&(m.body=e.body);var p=[];for(var f in m)m[f]!==G[f]&&p.push(f.replace(re,ne).replace(re,o).replace(ae,O)+"="+m[f].replace(re,ne).replace(re,o).replace(oe,O));return p.length&&(a.query=p.join("&")),a}},se=/^([^\:]+)\:(.*)/,le={scheme:"urn",parse:function(e,r){var t=e.path&&e.path.match(se),a=e;if(t){var o=r.scheme||a.scheme||"urn",n=t[1].toLowerCase(),i=t[2],s=o+":"+(r.nid||n),l=x[s];a.nid=n,a.nss=i,a.path=void 0,l&&(a=l.parse(a,r))}else a.error=a.error||"URN can not be parsed.";return a},serialize:function(e,r){var t=r.scheme||e.scheme||"urn",a=e.nid,o=t+":"+(r.nid||a),n=x[o];n&&(e=n.serialize(e,r));var i=e,s=e.nss;return i.path=(a||r.nid)+":"+s,i}},ue=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,ce={scheme:"urn:uuid",parse:function(e,r){var t=e;return t.uuid=t.nss,t.nss=void 0,r.tolerant||t.uuid&&t.uuid.match(ue)||(t.error=t.error||"UUID is not valid."),t},serialize:function(e,r){var t=e;return t.nss=(e.uuid||"").toLowerCase(),t}};x[U.scheme]=U,x[B.scheme]=B,x[H.scheme]=H,x[K.scheme]=K,x[ie.scheme]=ie,x[le.scheme]=le,x[ce.scheme]=ce,e.SCHEMES=x,e.pctEncChar=O,e.pctDecChars=_,e.parse=R,e.removeDotSegments=V,e.serialize=q,e.resolveComponents=M,e.resolve=function(e,r,t){var a=function(e,r){var t=e;if(r)for(var a in r)t[a]=r[a];return t}({scheme:"null"},t);return q(M(R(e,a),R(r,a),a,!0),a)},e.normalize=function(e,r){return"string"==typeof e?e=q(R(e,r),r):"object"===a(e)&&(e=R(q(e,r),r)),e},e.equal=function(e,r,t){return"string"==typeof e?e=q(R(e,t),t):"object"===a(e)&&(e=q(e,t)),"string"==typeof r?r=q(R(r,t),t):"object"===a(r)&&(r=q(r,t)),e===r},e.escapeComponent=function(e,r){return e&&e.toString().replace(r&&r.iri?s.ESCAPE:i.ESCAPE,O)},e.unescapeComponent=W,Object.defineProperty(e,"__esModule",{value:!0})}(r)}));(ie=se)&&ie.__esModule&&Object.prototype.hasOwnProperty.call(ie,"default")&&ie.default;var le=function e(r,t){if(r===t)return!0;if(r&&t&&"object"==typeof r&&"object"==typeof t){if(r.constructor!==t.constructor)return!1;var a,o,n;if(Array.isArray(r)){if((a=r.length)!=t.length)return!1;for(o=a;0!=o--;)if(!e(r[o],t[o]))return!1;return!0}if(r.constructor===RegExp)return r.source===t.source&&r.flags===t.flags;if(r.valueOf!==Object.prototype.valueOf)return r.valueOf()===t.valueOf();if(r.toString!==Object.prototype.toString)return r.toString()===t.toString();if((a=(n=Object.keys(r)).length)!==Object.keys(t).length)return!1;for(o=a;0!=o--;)if(!Object.prototype.hasOwnProperty.call(t,n[o]))return!1;for(o=a;0!=o--;){var i=n[o];if(!e(r[i],t[i]))return!1}return!0}return r!=r&&t!=t},ue={copy:function(e,r){for(var t in r=r||{},e)r[t]=e[t];return r},checkDataType:ce,checkDataTypes:function(e,r,t){switch(e.length){case 1:return ce(e[0],r,t,!0);default:var a="",o=me(e);for(var n in o.array&&o.object&&(a=o.null?"(":"(!"+r+" || ",a+="typeof "+r+' !== "object")',delete o.null,delete o.array,delete o.object),o.number&&delete o.integer,o)a+=(a?" && ":"")+ce(n,r,t,!0);return a}},coerceToTypes:function(e,r){if(Array.isArray(r)){for(var t=[],a=0;a<r.length;a++){var o=r[a];(de[o]||"array"===e&&"array"===o)&&(t[t.length]=o)}if(t.length)return t}else{if(de[r])return[r];if("array"===e&&"array"===r)return["array"]}},toHash:me,getProperty:he,escapeQuotes:ve,equal:le,ucs2length:function(e){for(var r,t=0,a=e.length,o=0;o<a;)t++,(r=e.charCodeAt(o++))>=55296&&r<=56319&&o<a&&56320==(64512&(r=e.charCodeAt(o)))&&o++;return t},varOccurences:function(e,r){r+="[^0-9]";var t=e.match(new RegExp(r,"g"));return t?t.length:0},varReplace:function(e,r,t){return r+="([^0-9])",t=t.replace(/\$/g,"$$$$"),e.replace(new RegExp(r,"g"),t+"$1")},schemaHasRules:function(e,r){if("boolean"==typeof e)return!e;for(var t in e)if(r[t])return!0},schemaHasRulesExcept:function(e,r,t){if("boolean"==typeof e)return!e&&"not"!=t;for(var a in e)if(a!=t&&r[a])return!0},schemaUnknownRules:function(e,r){if("boolean"==typeof e)return;for(var t in e)if(!r[t])return t},toQuotedString:ge,getPathExpr:function(e,r,t,a){return Pe(e,t?"'/' + "+r+(a?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):a?"'[' + "+r+" + ']'":"'[\\'' + "+r+" + '\\']'")},getPath:function(e,r,t){var a=ge(t?"/"+we(r):he(r));return Pe(e,a)},getData:function(e,r,t){var a,o,n,i;if(""===e)return"rootData";if("/"==e[0]){if(!ye.test(e))throw new Error("Invalid JSON-pointer: "+e);o=e,n="rootData"}else{if(!(i=e.match(be)))throw new Error("Invalid JSON-pointer: "+e);if(a=+i[1],"#"==(o=i[2])){if(a>=r)throw new Error("Cannot access property/index "+a+" levels up, current level is "+r);return t[r-a]}if(a>r)throw new Error("Cannot access data "+a+" levels up, current level is "+r);if(n="data"+(r-a||""),!o)return n}for(var s=n,l=o.split("/"),u=0;u<l.length;u++){var c=l[u];c&&(n+=he(Ee(c)),s+=" && "+n)}return s},unescapeFragment:function(e){return Ee(decodeURIComponent(e))},unescapeJsonPointer:Ee,escapeFragment:function(e){return encodeURIComponent(we(e))},escapeJsonPointer:we};function ce(e,r,t,a){var o=a?" !== ":" === ",n=a?" || ":" && ",i=a?"!":"",s=a?"":"!";switch(e){case"null":return r+o+"null";case"array":return i+"Array.isArray("+r+")";case"object":return"("+i+r+n+"typeof "+r+o+'"object"'+n+s+"Array.isArray("+r+"))";case"integer":return"(typeof "+r+o+'"number"'+n+s+"("+r+" % 1)"+n+r+o+r+(t?n+i+"isFinite("+r+")":"")+")";case"number":return"(typeof "+r+o+'"'+e+'"'+(t?n+i+"isFinite("+r+")":"")+")";default:return"typeof "+r+o+'"'+e+'"'}}var de=me(["string","number","integer","boolean","null"]);function me(e){for(var r={},t=0;t<e.length;t++)r[e[t]]=!0;return r}var pe=/^[a-z$_][a-z$_0-9]*$/i,fe=/'|\\/g;function he(e){return"number"==typeof e?"["+e+"]":pe.test(e)?"."+e:"['"+ve(e)+"']"}function ve(e){return e.replace(fe,"\\$&").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\f/g,"\\f").replace(/\t/g,"\\t")}function ge(e){return"'"+ve(e)+"'"}var ye=/^\/(?:[^~]|~0|~1)*$/,be=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Pe(e,r){return'""'==e?r:(e+" + "+r).replace(/([^\\])' \+ '/g,"$1")}function we(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Ee(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}var Se=function(e){ue.copy(e,this)};var Fe=oe((function(e){var r=e.exports=function(e,t,a){"function"==typeof t&&(a=t,t={}),function e(t,a,o,n,i,s,l,u,c,d){if(n&&"object"==typeof n&&!Array.isArray(n)){for(var m in a(n,i,s,l,u,c,d),n){var p=n[m];if(Array.isArray(p)){if(m in r.arrayKeywords)for(var f=0;f<p.length;f++)e(t,a,o,p[f],i+"/"+m+"/"+f,s,i,m,n,f)}else if(m in r.propsKeywords){if(p&&"object"==typeof p)for(var h in p)e(t,a,o,p[h],i+"/"+m+"/"+h.replace(/~/g,"~0").replace(/\//g,"~1"),s,i,m,n,h)}else(m in r.keywords||t.allKeys&&!(m in r.skipKeywords))&&e(t,a,o,p,i+"/"+m,s,i,m,n)}o(n,i,s,l,u,c,d)}}(t,"function"==typeof(a=t.cb||a)?a:a.pre||function(){},a.post||function(){},e,"",e)};r.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},r.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},r.propsKeywords={definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},r.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}})),xe=Oe;function Oe(e,r,t){var a=this._refs[t];if("string"==typeof a){if(!this._refs[a])return Oe.call(this,e,r,a);a=this._refs[a]}if((a=a||this._schemas[t])instanceof Se)return Ae(a.schema,this._opts.inlineRefs)?a.schema:a.validate||this._compile(a);var o,n,i,s=_e.call(this,r,t);return s&&(o=s.schema,r=s.root,i=s.baseId),o instanceof Se?n=o.validate||e.call(this,o.schema,r,void 0,i):void 0!==o&&(n=Ae(o,this._opts.inlineRefs)?o:e.call(this,o,r,void 0,i)),n}function _e(e,r){var t=se.parse(r),a=Re(t),o=Ce(this._getId(e.schema));if(0===Object.keys(e.schema).length||a!==o){var n=Ne(a),i=this._refs[n];if("string"==typeof i)return De.call(this,e,i,t);if(i instanceof Se)i.validate||this._compile(i),e=i;else{if(!((i=this._schemas[n])instanceof Se))return;if(i.validate||this._compile(i),n==Ne(r))return{schema:i,root:e,baseId:o};e=i}if(!e.schema)return;o=Ce(this._getId(e.schema))}return je.call(this,t,o,e.schema,e)}function De(e,r,t){var a=_e.call(this,e,r);if(a){var o=a.schema,n=a.baseId;e=a.root;var i=this._getId(o);return i&&(n=Le(n,i)),je.call(this,t,n,o,e)}}Oe.normalizeId=Ne,Oe.fullPath=Ce,Oe.url=Le,Oe.ids=function(e){var r=Ne(this._getId(e)),t={"":r},a={"":Ce(r,!1)},o={},n=this;return Fe(e,{allKeys:!0},(function(e,r,i,s,l,u,c){if(""!==r){var d=n._getId(e),m=t[s],p=a[s]+"/"+l;if(void 0!==c&&(p+="/"+("number"==typeof c?c:ue.escapeFragment(c))),"string"==typeof d){d=m=Ne(m?se.resolve(m,d):d);var f=n._refs[d];if("string"==typeof f&&(f=n._refs[f]),f&&f.schema){if(!le(e,f.schema))throw new Error('id "'+d+'" resolves to more than one schema')}else if(d!=Ne(p))if("#"==d[0]){if(o[d]&&!le(e,o[d]))throw new Error('id "'+d+'" resolves to more than one schema');o[d]=e}else n._refs[d]=p}t[r]=m,a[r]=p}})),o},Oe.inlineRef=Ae,Oe.schema=_e;var ke=ue.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function je(e,r,t,a){if(e.fragment=e.fragment||"","/"==e.fragment.slice(0,1)){for(var o=e.fragment.split("/"),n=1;n<o.length;n++){var i=o[n];if(i){if(void 0===(t=t[i=ue.unescapeFragment(i)]))break;var s;if(!ke[i]&&((s=this._getId(t))&&(r=Le(r,s)),t.$ref)){var l=Le(r,t.$ref),u=_e.call(this,a,l);u&&(t=u.schema,a=u.root,r=u.baseId)}}}return void 0!==t&&t!==a.schema?{schema:t,root:a,baseId:r}:void 0}}var Ie=ue.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]);function Ae(e,r){return!1!==r&&(void 0===r||!0===r?function e(r){var t;if(Array.isArray(r)){for(var a=0;a<r.length;a++)if("object"==typeof(t=r[a])&&!e(t))return!1}else for(var o in r){if("$ref"==o)return!1;if("object"==typeof(t=r[o])&&!e(t))return!1}return!0}(e):r?function e(r){var t,a=0;if(Array.isArray(r)){for(var o=0;o<r.length;o++)if("object"==typeof(t=r[o])&&(a+=e(t)),a==1/0)return 1/0}else for(var n in r){if("$ref"==n)return 1/0;if(Ie[n])a++;else if("object"==typeof(t=r[n])&&(a+=e(t)+1),a==1/0)return 1/0}return a}(e)<=r:void 0)}function Ce(e,r){return!1!==r&&(e=Ne(e)),Re(se.parse(e))}function Re(e){return se.serialize(e).split("#")[0]+"#"}var $e=/#\/?$/;function Ne(e){return e?e.replace($e,""):""}function Le(e,r){return r=Ne(r),se.resolve(e,r)}var Te={Validation:Ve((function(e){this.message="validation failed",this.errors=e,this.ajv=this.validation=!0})),MissingRef:Ve(ze)};function ze(e,r,t){this.message=t||ze.message(e,r),this.missingRef=xe.url(e,r),this.missingSchema=xe.normalizeId(xe.fullPath(this.missingRef))}function Ve(e){return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}ze.message=function(e,r){return"can't resolve reference "+r+" from id "+e};var qe=function(e,r){r||(r={}),"function"==typeof r&&(r={cmp:r});var t="boolean"==typeof r.cycles&&r.cycles,a=r.cmp&&function(e){return function(r){return function(t,a){var o={key:t,value:r[t]},n={key:a,value:r[a]};return e(o,n)}}}(r.cmp),o=[];return function e(r){if(r&&r.toJSON&&"function"==typeof r.toJSON&&(r=r.toJSON()),void 0!==r){if("number"==typeof r)return isFinite(r)?""+r:"null";if("object"!=typeof r)return JSON.stringify(r);var n,i;if(Array.isArray(r)){for(i="[",n=0;n<r.length;n++)n&&(i+=","),i+=e(r[n])||"null";return i+"]"}if(null===r)return"null";if(-1!==o.indexOf(r)){if(t)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var s=o.push(r)-1,l=Object.keys(r).sort(a&&a(r));for(i="",n=0;n<l.length;n++){var u=l[n],c=e(r[u]);c&&(i&&(i+=","),i+=JSON.stringify(u)+":"+c)}return o.splice(s,1),"{"+i+"}"}}(e)},Me=function(e,r,t){var a="",o=!0===e.schema.$async,n=e.util.schemaHasRulesExcept(e.schema,e.RULES.all,"$ref"),i=e.self._getId(e.schema);if(e.opts.strictKeywords){var s=e.util.schemaUnknownRules(e.schema,e.RULES.keywords);if(s){var l="unknown keyword: "+s;if("log"!==e.opts.strictKeywords)throw new Error(l);e.logger.warn(l)}}if(e.isTop&&(a+=" var validate = ",o&&(e.async=!0,a+="async "),a+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",i&&(e.opts.sourceCode||e.opts.processCode)&&(a+=" /*# sourceURL="+i+" */ ")),"boolean"==typeof e.schema||!n&&!e.schema.$ref){var u=e.level,c=e.dataLevel,d=e.schema["false schema"],m=e.schemaPath+e.util.getProperty("false schema"),p=e.errSchemaPath+"/false schema",f=!e.opts.allErrors,h="data"+(c||""),v="valid"+u;if(!1===e.schema){e.isTop?f=!0:a+=" var "+v+" = false; ",(J=J||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'false schema' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(p)+" , params: {} ",!1!==e.opts.messages&&(a+=" , message: 'boolean schema is false' "),e.opts.verbose&&(a+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var g=a;a=J.pop(),!e.compositeRule&&f?e.async?a+=" throw new ValidationError(["+g+"]); ":a+=" validate.errors = ["+g+"]; return false; ":a+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else e.isTop?a+=o?" return data; ":" validate.errors = null; return true; ":a+=" var "+v+" = true; ";return e.isTop&&(a+=" }; return validate; "),a}if(e.isTop){var y=e.isTop;u=e.level=0,c=e.dataLevel=0,h="data";if(e.rootId=e.resolve.fullPath(e.self._getId(e.root.schema)),e.baseId=e.baseId||e.rootId,delete e.isTop,e.dataPathArr=[""],void 0!==e.schema.default&&e.opts.useDefaults&&e.opts.strictDefaults){var b="default is ignored in the schema root";if("log"!==e.opts.strictDefaults)throw new Error(b);e.logger.warn(b)}a+=" var vErrors = null; ",a+=" var errors = 0; ",a+=" if (rootData === undefined) rootData = data; "}else{u=e.level,h="data"+((c=e.dataLevel)||"");if(i&&(e.baseId=e.resolve.url(e.baseId,i)),o&&!e.async)throw new Error("async schema in sync schema");a+=" var errs_"+u+" = errors;"}v="valid"+u,f=!e.opts.allErrors;var P="",w="",E=e.schema.type,S=Array.isArray(E);if(E&&e.opts.nullable&&!0===e.schema.nullable&&(S?-1==E.indexOf("null")&&(E=E.concat("null")):"null"!=E&&(E=[E,"null"],S=!0)),S&&1==E.length&&(E=E[0],S=!1),e.schema.$ref&&n){if("fail"==e.opts.extendRefs)throw new Error('$ref: validation keywords used in schema at path "'+e.errSchemaPath+'" (see option extendRefs)');!0!==e.opts.extendRefs&&(n=!1,e.logger.warn('$ref: keywords ignored in schema at path "'+e.errSchemaPath+'"'))}if(e.schema.$comment&&e.opts.$comment&&(a+=" "+e.RULES.all.$comment.code(e,"$comment")),E){if(e.opts.coerceTypes)var F=e.util.coerceToTypes(e.opts.coerceTypes,E);var x=e.RULES.types[E];if(F||S||!0===x||x&&!Z(x)){m=e.schemaPath+".type",p=e.errSchemaPath+"/type",m=e.schemaPath+".type",p=e.errSchemaPath+"/type";var O=S?"checkDataTypes":"checkDataType";if(a+=" if ("+e.util[O](E,h,e.opts.strictNumbers,!0)+") { ",F){var _="dataType"+u,D="coerced"+u;a+=" var "+_+" = typeof "+h+"; var "+D+" = undefined; ","array"==e.opts.coerceTypes&&(a+=" if ("+_+" == 'object' && Array.isArray("+h+") && "+h+".length == 1) { "+h+" = "+h+"[0]; "+_+" = typeof "+h+"; if ("+e.util.checkDataType(e.schema.type,h,e.opts.strictNumbers)+") "+D+" = "+h+"; } "),a+=" if ("+D+" !== undefined) ; ";var k=F;if(k)for(var j,I=-1,A=k.length-1;I<A;)"string"==(j=k[I+=1])?a+=" else if ("+_+" == 'number' || "+_+" == 'boolean') "+D+" = '' + "+h+"; else if ("+h+" === null) "+D+" = ''; ":"number"==j||"integer"==j?(a+=" else if ("+_+" == 'boolean' || "+h+" === null || ("+_+" == 'string' && "+h+" && "+h+" == +"+h+" ","integer"==j&&(a+=" && !("+h+" % 1)"),a+=")) "+D+" = +"+h+"; "):"boolean"==j?a+=" else if ("+h+" === 'false' || "+h+" === 0 || "+h+" === null) "+D+" = false; else if ("+h+" === 'true' || "+h+" === 1) "+D+" = true; ":"null"==j?a+=" else if ("+h+" === '' || "+h+" === 0 || "+h+" === false) "+D+" = null; ":"array"==e.opts.coerceTypes&&"array"==j&&(a+=" else if ("+_+" == 'string' || "+_+" == 'number' || "+_+" == 'boolean' || "+h+" == null) "+D+" = ["+h+"]; ");a+=" else { ",(J=J||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(p)+" , params: { type: '",a+=S?""+E.join(","):""+E,a+="' } ",!1!==e.opts.messages&&(a+=" , message: 'should be ",a+=S?""+E.join(","):""+E,a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+m+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";g=a;a=J.pop(),!e.compositeRule&&f?e.async?a+=" throw new ValidationError(["+g+"]); ":a+=" validate.errors = ["+g+"]; return false; ":a+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } if ("+D+" !== undefined) { ";var C=c?"data"+(c-1||""):"parentData";a+=" "+h+" = "+D+"; ",c||(a+="if ("+C+" !== undefined)"),a+=" "+C+"["+(c?e.dataPathArr[c]:"parentDataProperty")+"] = "+D+"; } "}else{(J=J||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(p)+" , params: { type: '",a+=S?""+E.join(","):""+E,a+="' } ",!1!==e.opts.messages&&(a+=" , message: 'should be ",a+=S?""+E.join(","):""+E,a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+m+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";g=a;a=J.pop(),!e.compositeRule&&f?e.async?a+=" throw new ValidationError(["+g+"]); ":a+=" validate.errors = ["+g+"]; return false; ":a+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}a+=" } "}}if(e.schema.$ref&&!n)a+=" "+e.RULES.all.$ref.code(e,"$ref")+" ",f&&(a+=" } if (errors === ",a+=y?"0":"errs_"+u,a+=") { ",w+="}");else{var R=e.RULES;if(R)for(var $=-1,N=R.length-1;$<N;)if(Z(x=R[$+=1])){if(x.type&&(a+=" if ("+e.util.checkDataType(x.type,h,e.opts.strictNumbers)+") { "),e.opts.useDefaults)if("object"==x.type&&e.schema.properties){d=e.schema.properties;var L=Object.keys(d);if(L)for(var T,z=-1,V=L.length-1;z<V;){if(void 0!==(W=d[T=L[z+=1]]).default){var q=h+e.util.getProperty(T);if(e.compositeRule){if(e.opts.strictDefaults){b="default is ignored for: "+q;if("log"!==e.opts.strictDefaults)throw new Error(b);e.logger.warn(b)}}else a+=" if ("+q+" === undefined ","empty"==e.opts.useDefaults&&(a+=" || "+q+" === null || "+q+" === '' "),a+=" ) "+q+" = ","shared"==e.opts.useDefaults?a+=" "+e.useDefault(W.default)+" ":a+=" "+JSON.stringify(W.default)+" ",a+="; "}}}else if("array"==x.type&&Array.isArray(e.schema.items)){var M=e.schema.items;if(M){I=-1;for(var W,U=M.length-1;I<U;)if(void 0!==(W=M[I+=1]).default){q=h+"["+I+"]";if(e.compositeRule){if(e.opts.strictDefaults){b="default is ignored for: "+q;if("log"!==e.opts.strictDefaults)throw new Error(b);e.logger.warn(b)}}else a+=" if ("+q+" === undefined ","empty"==e.opts.useDefaults&&(a+=" || "+q+" === null || "+q+" === '' "),a+=" ) "+q+" = ","shared"==e.opts.useDefaults?a+=" "+e.useDefault(W.default)+" ":a+=" "+JSON.stringify(W.default)+" ",a+="; "}}}var B=x.rules;if(B)for(var Q,H=-1,K=B.length-1;H<K;)if(Y(Q=B[H+=1])){var G=Q.code(e,Q.keyword,x.type);G&&(a+=" "+G+" ",f&&(P+="}"))}if(f&&(a+=" "+P+" ",P=""),x.type&&(a+=" } ",E&&E===x.type&&!F)){a+=" else { ";var J;m=e.schemaPath+".type",p=e.errSchemaPath+"/type";(J=J||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(p)+" , params: { type: '",a+=S?""+E.join(","):""+E,a+="' } ",!1!==e.opts.messages&&(a+=" , message: 'should be ",a+=S?""+E.join(","):""+E,a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+m+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";g=a;a=J.pop(),!e.compositeRule&&f?e.async?a+=" throw new ValidationError(["+g+"]); ":a+=" validate.errors = ["+g+"]; return false; ":a+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } "}f&&(a+=" if (errors === ",a+=y?"0":"errs_"+u,a+=") { ",w+="}")}}function Z(e){for(var r=e.rules,t=0;t<r.length;t++)if(Y(r[t]))return!0}function Y(r){return void 0!==e.schema[r.keyword]||r.implements&&function(r){for(var t=r.implements,a=0;a<t.length;a++)if(void 0!==e.schema[t[a]])return!0}(r)}return f&&(a+=" "+w+" "),y?(o?(a+=" if (errors === 0) return data; ",a+=" else throw new ValidationError(vErrors); "):(a+=" validate.errors = vErrors; ",a+=" return errors === 0; "),a+=" }; return validate;"):a+=" var "+v+" = errors === errs_"+u+";",a},We=ue.ucs2length,Ue=Te.Validation,Be=function e(r,t,a,o){var n=this,i=this._opts,s=[void 0],l={},u=[],c={},d=[],m={},p=[];t=t||{schema:r,refVal:s,refs:l};var f=Qe.call(this,r,t,o),h=this._compilations[f.index];if(f.compiling)return h.callValidate=function e(){var r=h.validate,t=r.apply(this,arguments);return e.errors=r.errors,t};var v=this._formats,g=this.RULES;try{var y=P(r,t,a,o);h.validate=y;var b=h.callValidate;return b&&(b.schema=y.schema,b.errors=null,b.refs=y.refs,b.refVal=y.refVal,b.root=y.root,b.$async=y.$async,i.sourceCode&&(b.source=y.source)),y}finally{He.call(this,r,t,o)}function P(r,a,o,c){var m=!a||a&&a.schema==r;if(a.schema!=t.schema)return e.call(n,r,a,o,c);var f,h=!0===r.$async,y=Me({isTop:!0,schema:r,isRoot:m,baseId:c,root:a,schemaPath:"",errSchemaPath:"#",errorPath:'""',MissingRefError:Te.MissingRef,RULES:g,validate:Me,util:ue,resolve:xe,resolveRef:w,usePattern:F,useDefault:x,useCustomRule:O,opts:i,formats:v,logger:n.logger,self:n});y=Xe(s,Ze)+Xe(u,Ge)+Xe(d,Je)+Xe(p,Ye)+y,i.processCode&&(y=i.processCode(y,r));try{f=new Function("self","RULES","formats","root","refVal","defaults","customRules","equal","ucs2length","ValidationError",y)(n,g,v,t,s,d,p,le,We,Ue),s[0]=f}catch(e){throw n.logger.error("Error compiling schema, function code:",y),e}return f.schema=r,f.errors=null,f.refs=l,f.refVal=s,f.root=m?f:a,h&&(f.$async=!0),!0===i.sourceCode&&(f.source={code:y,patterns:u,defaults:d}),f}function w(r,o,u){o=xe.url(r,o);var c,d,m=l[o];if(void 0!==m)return S(c=s[m],d="refVal["+m+"]");if(!u&&t.refs){var p=t.refs[o];if(void 0!==p)return S(c=t.refVal[p],d=E(o,c))}d=E(o);var f=xe.call(n,P,t,o);if(void 0===f){var h=a&&a[o];h&&(f=xe.inlineRef(h,i.inlineRefs)?h:e.call(n,h,t,a,r))}if(void 0!==f)return function(e,r){var t=l[e];s[t]=r}(o,f),S(f,d);!function(e){delete l[e]}(o)}function E(e,r){var t=s.length;return s[t]=r,l[e]=t,"refVal"+t}function S(e,r){return"object"==typeof e||"boolean"==typeof e?{code:r,schema:e,inline:!0}:{code:r,$async:e&&!!e.$async}}function F(e){var r=c[e];return void 0===r&&(r=c[e]=u.length,u[r]=e),"pattern"+r}function x(e){switch(typeof e){case"boolean":case"number":return""+e;case"string":return ue.toQuotedString(e);case"object":if(null===e)return"null";var r=qe(e),t=m[r];return void 0===t&&(t=m[r]=d.length,d[t]=e),"default"+t}}function O(e,r,t,a){if(!1!==n._opts.validateSchema){var o=e.definition.dependencies;if(o&&!o.every((function(e){return Object.prototype.hasOwnProperty.call(t,e)})))throw new Error("parent schema must have all required keywords: "+o.join(","));var s=e.definition.validateSchema;if(s)if(!s(r)){var l="keyword schema is invalid: "+n.errorsText(s.errors);if("log"!=n._opts.validateSchema)throw new Error(l);n.logger.error(l)}}var u,c=e.definition.compile,d=e.definition.inline,m=e.definition.macro;if(c)u=c.call(n,r,t,a);else if(m)u=m.call(n,r,t,a),!1!==i.validateSchema&&n.validateSchema(u,!0);else if(d)u=d.call(n,a,e.keyword,r,t);else if(!(u=e.definition.validate))return;if(void 0===u)throw new Error('custom keyword "'+e.keyword+'"failed to compile');var f=p.length;return p[f]=u,{code:"customRule"+f,validate:u}}};function Qe(e,r,t){var a=Ke.call(this,e,r,t);return a>=0?{index:a,compiling:!0}:(a=this._compilations.length,this._compilations[a]={schema:e,root:r,baseId:t},{index:a,compiling:!1})}function He(e,r,t){var a=Ke.call(this,e,r,t);a>=0&&this._compilations.splice(a,1)}function Ke(e,r,t){for(var a=0;a<this._compilations.length;a++){var o=this._compilations[a];if(o.schema==e&&o.root==r&&o.baseId==t)return a}return-1}function Ge(e,r){return"var pattern"+e+" = new RegExp("+ue.toQuotedString(r[e])+");"}function Je(e){return"var default"+e+" = defaults["+e+"];"}function Ze(e,r){return void 0===r[e]?"":"var refVal"+e+" = refVal["+e+"];"}function Ye(e){return"var customRule"+e+" = customRules["+e+"];"}function Xe(e,r){if(!e.length)return"";for(var t="",a=0;a<e.length;a++)t+=r(a,e);return t}var er=oe((function(e){var r=e.exports=function(){this._cache={}};r.prototype.put=function(e,r){this._cache[e]=r},r.prototype.get=function(e){return this._cache[e]},r.prototype.del=function(e){delete this._cache[e]},r.prototype.clear=function(){this._cache={}}})),rr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,tr=[0,31,28,31,30,31,30,31,31,30,31,30,31],ar=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,or=/^(?=.{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,nr=/^(?:[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,ir=/^(?:(?:[^\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,sr=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!1