UNPKG

@lljj/vue-json-schema-form

Version:

基于 Vue 、ElementUi、JsonSchema快速构建一个带完整校验的form表单

4 lines 184 kB
/** @license @lljj/vue-json-schema-form (c) 2020-2023 Liu.Jun License: Apache-2.0 */ !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self).vueJsonSchemaForm={},e.Vue)}(this,(function(e,r){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=t(r);function o(e){return(o="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 i(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function n(){return(n=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 s(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 l(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?s(Object(t),!0).forEach((function(r){i(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):s(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function c(e,r){if(null==e)return{};var t,a,o=function(e,r){if(null==e)return{};var t,a,o={},i=Object.keys(e);for(a=0;a<i.length;a++)t=i[a],r.indexOf(t)>=0||(o[t]=e[t]);return o}(e,r);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)t=i[a],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}function u(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,i=void 0;try{for(var n,s=e[Symbol.iterator]();!(a=(n=s.next()).done)&&(t.push(n.value),!r||t.length!==r);a=!0);}catch(e){o=!0,i=e}finally{try{a||null==s.return||s.return()}finally{if(o)throw i}}return t}(e,r)||p(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 d(e){return function(e){if(Array.isArray(e))return h(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||p(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 p(e,r){if(e){if("string"==typeof e)return h(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)?h(e,r):void 0}}function h(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 m(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 f(e){return"[object Object]"===Object.prototype.toString.call(e)}function v(e){return"[object Arguments]"===Object.prototype.toString.call(e)}function g(e,r){var t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=Object.assign({},e);return f(r)?Object.keys(r).reduce((function(a,o){var i=e?e[o]:{},n=r[o];return e&&e.hasOwnProperty(o)&&f(n)?a[o]=g(i,n,t):t&&Array.isArray(i)&&Array.isArray(n)?a[o]=i.concat(n):a[o]=n,a}),a):a}function y(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"===o(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 b(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"!==o(e)||"object"!==o(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(v(e)||v(r)){if(!v(e)||!v(r))return!1;var i=Array.prototype.slice;return b(i.call(e),i.call(r),t,a)}if(e.constructor!==r.constructor)return!1;var n=Object.keys(e),s=Object.keys(r);if(0===n.length&&0===s.length)return!0;if(n.length!==s.length)return!1;for(var l,c=t.length;c--;)if(t[c]===e)return a[c]===r;t.push(e),a.push(r),n.sort(),s.sort();for(var u=n.length-1;u>=0;u--)if(n[u]!==s[u])return!1;for(var d=n.length-1;d>=0;d--)if(!b(e[l=n[d]],r[l],t,a))return!1;return t.pop(),a.pop(),!0}var P,w,E=(P="".concat(+new Date),w=0,function(){var e="".concat(+new Date);return e===P?w+=1:w=0,"".concat(P=e,"x").concat(w)});function S(e){if(!e)return!0;for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r))return!1;return!0}function F(e,r){return Object.entries(e).reduce((function(e,t){var a=u(t,2),o=a[0],i=a[1],n=r(o,i);return void 0!==n&&(e[n]=i),e}),{})}function x(e){return void 0===e?e:String(e).replace(/^./,(function(e){return e.toLocaleLowerCase()}))}function O(e,r){return e*r/function e(r,t){return 0===t?r:e(t,r%t)}(e,r)}function _(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 D(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=_(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")?D(a.$ref,r):a}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function $(e,r){return e(r={exports:{}},r.exports),r.exports}function k(e){return e&&e.default||e}var j,I=$((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 i(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)),i="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",n=r("[\\:\\/\\?\\#\\[\\]\\@]",i),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,i,"[\\:]"))+"*");var c=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]"),u=t(c+"\\."+c+"\\."+c+"\\."+c),d=t(a+"{1,4}"),p=t(t(d+"\\:"+d)+"|"+u),h=t(t(d+"\\:")+"{6}"+p),m=t("\\:\\:"+t(d+"\\:")+"{5}"+p),f=t(t(d)+"?\\:\\:"+t(d+"\\:")+"{4}"+p),v=t(t(t(d+"\\:")+"{0,1}"+d)+"?\\:\\:"+t(d+"\\:")+"{3}"+p),g=t(t(t(d+"\\:")+"{0,2}"+d)+"?\\:\\:"+t(d+"\\:")+"{2}"+p),y=t(t(t(d+"\\:")+"{0,3}"+d)+"?\\:\\:"+d+"\\:"+p),b=t(t(t(d+"\\:")+"{0,4}"+d)+"?\\:\\:"+p),P=t(t(t(d+"\\:")+"{0,5}"+d)+"?\\:\\:"+d),w=t(t(t(d+"\\:")+"{0,6}"+d)+"?\\:\\:"),E=t([h,m,f,v,g,y,b,P,w].join("|")),S=t(t(l+"|"+o)+"+");t("[vV]"+a+"+\\."+r(l,i,"[\\:]")+"+"),t(t(o+"|"+r(l,i))+"*");var F=t(o+"|"+r(l,i,"[\\:\\@]"));return t(t(o+"|"+r(l,i,"[\\@]"))+"+"),t(t(F+"|"+r("[\\/\\?]",s))+"*"),{NOT_SCHEME:new RegExp(r("[^]","[A-Za-z]","[0-9]","[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(r("[^\\%\\:]",l,i),"g"),NOT_HOST:new RegExp(r("[^\\%\\[\\]\\:]",l,i),"g"),NOT_PATH:new RegExp(r("[^\\%\\/\\:\\@]",l,i),"g"),NOT_PATH_NOSCHEME:new RegExp(r("[^\\%\\/\\@]",l,i),"g"),NOT_QUERY:new RegExp(r("[^\\%]",l,i,"[\\:\\@\\/\\?]",s),"g"),NOT_FRAGMENT:new RegExp(r("[^\\%]",l,i,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(r("[^]",l,i),"g"),UNRESERVED:new RegExp(l,"g"),OTHER_CHARS:new RegExp(r("[^\\%]",l,n),"g"),PCT_ENCODED:new RegExp(o,"g"),IPV4ADDRESS:new RegExp("^("+u+")$"),IPV6ADDRESS:new RegExp("^\\[?("+E+")"+t(t("\\%25|\\%(?!"+a+"{2})")+"("+S+")")+"?\\]?$")}}var n=i(!1),s=i(!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,i=void 0;try{for(var n,s=e[Symbol.iterator]();!(a=(n=s.next()).done)&&(t.push(n.value),!r||t.length!==r);a=!0);}catch(e){o=!0,i=e}finally{try{!a&&s.return&&s.return()}finally{if(o)throw i}}return t}(e,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")},c=2147483647,u=/^xn--/,d=/[^\0-\x7E]/,p=/[\x2E\u3002\uFF0E\uFF61]/g,h={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},m=Math.floor,f=String.fromCharCode;function v(e){throw new RangeError(h[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(p,".")).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 i=e.charCodeAt(t++);56320==(64512&i)?r.push(((1023&o)<<10)+(1023&i)+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?m(e/700):e>>1,e+=m(e/r);e>455;a+=36)e=m(e/35);return m(a+36*e/(e+38))},w=function(e){var r,t=[],a=e.length,o=0,i=128,n=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 u=s>0?s+1:0;u<a;){for(var d=o,p=1,h=36;;h+=36){u>=a&&v("invalid-input");var f=(r=e.charCodeAt(u++))-48<10?r-22:r-65<26?r-65:r-97<26?r-97:36;(f>=36||f>m((c-o)/p))&&v("overflow"),o+=f*p;var g=h<=n?1:h>=n+26?26:h-n;if(f<g)break;var y=36-g;p>m(c/y)&&v("overflow"),p*=y}var b=t.length+1;n=P(o-d,b,0==d),m(o/b)>c-i&&v("overflow"),i+=m(o/b),o%=b,t.splice(o++,0,i)}return String.fromCodePoint.apply(String,t)},E=function(e){var r=[],t=(e=y(e)).length,a=128,o=0,i=72,n=!0,s=!1,l=void 0;try{for(var u,d=e[Symbol.iterator]();!(n=(u=d.next()).done);n=!0){var p=u.value;p<128&&r.push(f(p))}}catch(e){s=!0,l=e}finally{try{!n&&d.return&&d.return()}finally{if(s)throw l}}var h=r.length,g=h;for(h&&r.push("-");g<t;){var w=c,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>m((c-o)/D)&&v("overflow"),o+=(w-a)*D,a=w;var $=!0,k=!1,j=void 0;try{for(var I,A=e[Symbol.iterator]();!($=(I=A.next()).done);$=!0){var C=I.value;if(C<a&&++o>c&&v("overflow"),C==a){for(var R=o,N=36;;N+=36){var L=N<=i?1:N>=i+26?26:N-i;if(R<L)break;var T=R-L,z=36-L;r.push(f(b(L+T%z,0))),R=m(T/z)}r.push(f(b(R,0))),i=P(o,D,g==h),o=0,++g}}}catch(e){k=!0,j=e}finally{try{!$&&A.return&&A.return()}finally{if(k)throw j}}++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 u.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 i=parseInt(e.substr(t+4,2),16);r+=String.fromCharCode((31&o)<<6|63&i)}else r+=e.substr(t,6);t+=6}else if(o>=224){if(a-t>=9){var n=parseInt(e.substr(t+4,2),16),s=parseInt(e.substr(t+7,2),16);r+=String.fromCharCode((15&o)<<12|(63&n)<<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 $(e){return e.replace(/^0*(.*)/,"$1")||"0"}function k(e,r){var t=e.match(r.IPV4ADDRESS)||[],a=l(t,2)[1];return a?a.split(".").map($).join("."):e}function j(e,r){var t=e.match(r.IPV6ADDRESS)||[],a=l(t,3),o=a[1],i=a[2];if(o){for(var n=o.toLowerCase().split("::").reverse(),s=l(n,2),c=s[0],u=s[1],d=u?u.split(":").map($):[],p=c.split(":").map($),h=r.IPV4ADDRESS.test(p[p.length-1]),m=h?7:8,f=p.length-m,v=Array(m),g=0;g<m;++g)v[g]=d[g]||p[f+g]||"";h&&(v[m-1]=k(v[m-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 i&&(b+="%"+i),b}return e}var I=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,A=void 0==="".match(/(){0}/)[1];function C(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t={},a=!1!==r.iri?s:n;"suffix"===r.reference&&(e=(r.scheme?r.scheme+":":"")+"//"+e);var o=e.match(I);if(o){A?(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=j(k(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 i=x[(r.scheme||t.scheme||"").toLowerCase()];if(r.unicodeSupport||i&&i.unicodeSupport)D(t,a);else{if(t.host&&(r.domainHost||i&&i.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,n)}i&&i.parse&&i.parse(t,r)}else t.error=t.error||"URI can not be parsed.";return t}function R(e,r){var t=!1!==r.iri?s:n,a=[];return void 0!==e.userinfo&&(a.push(e.userinfo),a.push("@")),void 0!==e.host&&a.push(j(k(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 q(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 V(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=r.iri?s:n,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 i=R(e,r);if(void 0!==i&&("suffix"!==r.reference&&a.push("//"),a.push(i),e.path&&"/"!==e.path.charAt(0)&&a.push("/")),void 0!==e.path){var l=e.path;r.absolutePath||o&&o.absolutePath||(l=q(l)),void 0===i&&(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=C(V(e,t),t),r=C(V(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=q(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=q(r.path||""),o.query=r.query):(r.path?("/"===r.path.charAt(0)?o.path=q(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=q(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 B(e,r){return e&&e.toString().replace(r&&r.iri?s.PCT_ENCODED:n.PCT_ENCODED,_)}var W={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}},U={scheme:"https",domainHost:W.domainHost,parse:W.parse,serialize:W.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],i=a[1];e.path=o&&"/"!==o?o:void 0,e.query=i,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]",X=t(t("%[EFef]"+Z+"%"+Z+Z+"%"+Z+Z)+"|"+t("%[89A-Fa-f]"+Z+"%"+Z+Z)+"|"+t("%"+Z+Z)),Y=r("[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",'[\\"\\\\]'),ee=new RegExp(J,"g"),re=new RegExp(X,"g"),te=new RegExp(r("[^]","[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]","[\\.]",'[\\"]',Y),"g"),ae=new RegExp(r("[^]",J,"[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"),"g"),oe=ae;function ie(e){var r=_(e);return r.match(ee)?r:e}var ne={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,i={},n=t.query.split("&"),s=0,l=n.length;s<l;++s){var c=n[s].split("=");switch(c[0]){case"to":for(var u=c[1].split(","),d=0,p=u.length;d<p;++d)a.push(u[d]);break;case"subject":t.subject=B(c[1],r);break;case"body":t.body=B(c[1],r);break;default:o=!0,i[B(c[0],r)]=B(c[1],r)}}o&&(t.headers=i)}t.query=void 0;for(var h=0,m=a.length;h<m;++h){var f=a[h].split("@");if(f[0]=B(f[0]),r.unicodeSupport)f[1]=B(f[1],r).toLowerCase();else try{f[1]=S(B(f[1],r).toLowerCase())}catch(e){t.error=t.error||"Email address's domain name can not be converted to ASCII via punycode: "+e}a[h]=f.join("@")}return t},serialize:function(e,r){var t,a=e,i=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(i){for(var n=0,s=i.length;n<s;++n){var l=String(i[n]),c=l.lastIndexOf("@"),u=l.slice(0,c).replace(re,ie).replace(re,o).replace(te,O),d=l.slice(c+1);try{d=r.iri?F(d):S(B(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}i[n]=u+"@"+d}a.path=i.join(",")}var p=e.headers=e.headers||{};e.subject&&(p.subject=e.subject),e.body&&(p.body=e.body);var h=[];for(var m in p)p[m]!==G[m]&&h.push(m.replace(re,ie).replace(re,o).replace(ae,O)+"="+p[m].replace(re,ie).replace(re,o).replace(oe,O));return h.length&&(a.query=h.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",i=t[1].toLowerCase(),n=t[2],s=o+":"+(r.nid||i),l=x[s];a.nid=i,a.nss=n,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),i=x[o];i&&(e=i.serialize(e,r));var n=e,s=e.nss;return n.path=(a||r.nid)+":"+s,n}},ce=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,ue={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(ce)||(t.error=t.error||"UUID is not valid."),t},serialize:function(e,r){var t=e;return t.nss=(e.uuid||"").toLowerCase(),t}};x[W.scheme]=W,x[U.scheme]=U,x[H.scheme]=H,x[K.scheme]=K,x[ne.scheme]=ne,x[le.scheme]=le,x[ue.scheme]=ue,e.SCHEMES=x,e.pctEncChar=O,e.pctDecChars=_,e.parse=C,e.removeDotSegments=q,e.serialize=V,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 V(M(C(e,a),C(r,a),a,!0),a)},e.normalize=function(e,r){return"string"==typeof e?e=V(C(e,r),r):"object"===a(e)&&(e=C(V(e,r),r)),e},e.equal=function(e,r,t){return"string"==typeof e?e=V(C(e,t),t):"object"===a(e)&&(e=V(e,t)),"string"==typeof r?r=V(C(r,t),t):"object"===a(r)&&(r=V(r,t)),e===r},e.escapeComponent=function(e,r){return e&&e.toString().replace(r&&r.iri?s.ESCAPE:n.ESCAPE,O)},e.unescapeComponent=B,Object.defineProperty(e,"__esModule",{value:!0})}(r)}));(j=I)&&j.__esModule&&Object.prototype.hasOwnProperty.call(j,"default")&&j.default;var A=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,i;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=(i=Object.keys(r)).length)!==Object.keys(t).length)return!1;for(o=a;0!=o--;)if(!Object.prototype.hasOwnProperty.call(t,i[o]))return!1;for(o=a;0!=o--;){var n=i[o];if(!e(r[n],t[n]))return!1}return!0}return r!=r&&t!=t},C={copy:function(e,r){for(var t in r=r||{},e)r[t]=e[t];return r},checkDataType:R,checkDataTypes:function(e,r,t){switch(e.length){case 1:return R(e[0],r,t,!0);default:var a="",o=L(e);for(var i 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?" && ":"")+R(i,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];(N[o]||"array"===e&&"array"===o)&&(t[t.length]=o)}if(t.length)return t}else{if(N[r])return[r];if("array"===e&&"array"===r)return["array"]}},toHash:L,getProperty:q,escapeQuotes:V,equal:A,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:M,getPathExpr:function(e,r,t,a){return U(e,t?"'/' + "+r+(a?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):a?"'[' + "+r+" + ']'":"'[\\'' + "+r+" + '\\']'")},getPath:function(e,r,t){var a=M(t?"/"+Q(r):q(r));return U(e,a)},getData:function(e,r,t){var a,o,i,n;if(""===e)return"rootData";if("/"==e[0]){if(!B.test(e))throw new Error("Invalid JSON-pointer: "+e);o=e,i="rootData"}else{if(!(n=e.match(W)))throw new Error("Invalid JSON-pointer: "+e);if(a=+n[1],"#"==(o=n[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(i="data"+(r-a||""),!o)return i}for(var s=i,l=o.split("/"),c=0;c<l.length;c++){var u=l[c];u&&(i+=q(H(u)),s+=" && "+i)}return s},unescapeFragment:function(e){return H(decodeURIComponent(e))},unescapeJsonPointer:H,escapeFragment:function(e){return encodeURIComponent(Q(e))},escapeJsonPointer:Q};function R(e,r,t,a){var o=a?" !== ":" === ",i=a?" || ":" && ",n=a?"!":"",s=a?"":"!";switch(e){case"null":return r+o+"null";case"array":return n+"Array.isArray("+r+")";case"object":return"("+n+r+i+"typeof "+r+o+'"object"'+i+s+"Array.isArray("+r+"))";case"integer":return"(typeof "+r+o+'"number"'+i+s+"("+r+" % 1)"+i+r+o+r+(t?i+n+"isFinite("+r+")":"")+")";case"number":return"(typeof "+r+o+'"'+e+'"'+(t?i+n+"isFinite("+r+")":"")+")";default:return"typeof "+r+o+'"'+e+'"'}}var N=L(["string","number","integer","boolean","null"]);function L(e){for(var r={},t=0;t<e.length;t++)r[e[t]]=!0;return r}var T=/^[a-z$_][a-z$_0-9]*$/i,z=/'|\\/g;function q(e){return"number"==typeof e?"["+e+"]":T.test(e)?"."+e:"['"+V(e)+"']"}function V(e){return e.replace(z,"\\$&").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\f/g,"\\f").replace(/\t/g,"\\t")}function M(e){return"'"+V(e)+"'"}var B=/^\/(?:[^~]|~0|~1)*$/,W=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function U(e,r){return'""'==e?r:(e+" + "+r).replace(/([^\\])' \+ '/g,"$1")}function Q(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function H(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}var K=function(e){C.copy(e,this)};var G=$((function(e){var r=e.exports=function(e,t,a){"function"==typeof t&&(a=t,t={}),function e(t,a,o,i,n,s,l,c,u,d){if(i&&"object"==typeof i&&!Array.isArray(i)){for(var p in a(i,n,s,l,c,u,d),i){var h=i[p];if(Array.isArray(h)){if(p in r.arrayKeywords)for(var m=0;m<h.length;m++)e(t,a,o,h[m],n+"/"+p+"/"+m,s,n,p,i,m)}else if(p in r.propsKeywords){if(h&&"object"==typeof h)for(var f in h)e(t,a,o,h[f],n+"/"+p+"/"+f.replace(/~/g,"~0").replace(/\//g,"~1"),s,n,p,i,f)}else(p in r.keywords||t.allKeys&&!(p in r.skipKeywords))&&e(t,a,o,h,n+"/"+p,s,n,p,i)}o(i,n,s,l,c,u,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}})),J=Z;function Z(e,r,t){var a=this._refs[t];if("string"==typeof a){if(!this._refs[a])return Z.call(this,e,r,a);a=this._refs[a]}if((a=a||this._schemas[t])instanceof K)return ae(a.schema,this._opts.inlineRefs)?a.schema:a.validate||this._compile(a);var o,i,n,s=X.call(this,r,t);return s&&(o=s.schema,r=s.root,n=s.baseId),o instanceof K?i=o.validate||e.call(this,o.schema,r,void 0,n):void 0!==o&&(i=ae(o,this._opts.inlineRefs)?o:e.call(this,o,r,void 0,n)),i}function X(e,r){var t=I.parse(r),a=ie(t),o=oe(this._getId(e.schema));if(0===Object.keys(e.schema).length||a!==o){var i=se(a),n=this._refs[i];if("string"==typeof n)return Y.call(this,e,n,t);if(n instanceof K)n.validate||this._compile(n),e=n;else{if(!((n=this._schemas[i])instanceof K))return;if(n.validate||this._compile(n),i==se(r))return{schema:n,root:e,baseId:o};e=n}if(!e.schema)return;o=oe(this._getId(e.schema))}return re.call(this,t,o,e.schema,e)}function Y(e,r,t){var a=X.call(this,e,r);if(a){var o=a.schema,i=a.baseId;e=a.root;var n=this._getId(o);return n&&(i=le(i,n)),re.call(this,t,i,o,e)}}Z.normalizeId=se,Z.fullPath=oe,Z.url=le,Z.ids=function(e){var r=se(this._getId(e)),t={"":r},a={"":oe(r,!1)},o={},i=this;return G(e,{allKeys:!0},(function(e,r,n,s,l,c,u){if(""!==r){var d=i._getId(e),p=t[s],h=a[s]+"/"+l;if(void 0!==u&&(h+="/"+("number"==typeof u?u:C.escapeFragment(u))),"string"==typeof d){d=p=se(p?I.resolve(p,d):d);var m=i._refs[d];if("string"==typeof m&&(m=i._refs[m]),m&&m.schema){if(!A(e,m.schema))throw new Error('id "'+d+'" resolves to more than one schema')}else if(d!=se(h))if("#"==d[0]){if(o[d]&&!A(e,o[d]))throw new Error('id "'+d+'" resolves to more than one schema');o[d]=e}else i._refs[d]=h}t[r]=p,a[r]=h}})),o},Z.inlineRef=ae,Z.schema=X;var ee=C.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function re(e,r,t,a){if(e.fragment=e.fragment||"","/"==e.fragment.slice(0,1)){for(var o=e.fragment.split("/"),i=1;i<o.length;i++){var n=o[i];if(n){if(void 0===(t=t[n=C.unescapeFragment(n)]))break;var s;if(!ee[n]&&((s=this._getId(t))&&(r=le(r,s)),t.$ref)){var l=le(r,t.$ref),c=X.call(this,a,l);c&&(t=c.schema,a=c.root,r=c.baseId)}}}return void 0!==t&&t!==a.schema?{schema:t,root:a,baseId:r}:void 0}}var te=C.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 i in r){if("$ref"==i)return 1/0;if(te[i])a++;else if("object"==typeof(t=r[i])&&(a+=e(t)+1),a==1/0)return 1/0}return a}(e)<=r:void 0)}function oe(e,r){return!1!==r&&(e=se(e)),ie(I.parse(e))}function ie(e){return I.serialize(e).split("#")[0]+"#"}var ne=/#\/?$/;function se(e){return e?e.replace(ne,""):""}function le(e,r){return r=se(r),I.resolve(e,r)}var ce={Validation:de((function(e){this.message="validation failed",this.errors=e,this.ajv=this.validation=!0})),MissingRef:de(ue)};function ue(e,r,t){this.message=t||ue.message(e,r),this.missingRef=J.url(e,r),this.missingSchema=J.normalizeId(J.fullPath(this.missingRef))}function de(e){return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}ue.message=function(e,r){return"can't resolve reference "+r+" from id "+e};var pe=function(e,r){r||(r={}),"function"==typeof r&&(r={cmp:r});var t,a="boolean"==typeof r.cycles&&r.cycles,o=r.cmp&&(t=r.cmp,function(e){return function(r,a){var o={key:r,value:e[r]},i={key:a,value:e[a]};return t(o,i)}}),i=[];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 t,n;if(Array.isArray(r)){for(n="[",t=0;t<r.length;t++)t&&(n+=","),n+=e(r[t])||"null";return n+"]"}if(null===r)return"null";if(-1!==i.indexOf(r)){if(a)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var s=i.push(r)-1,l=Object.keys(r).sort(o&&o(r));for(n="",t=0;t<l.length;t++){var c=l[t],u=e(r[c]);u&&(n&&(n+=","),n+=JSON.stringify(c)+":"+u)}return i.splice(s,1),"{"+n+"}"}}(e)},he=function(e,r,t){var a="",o=!0===e.schema.$async,i=e.util.schemaHasRulesExcept(e.schema,e.RULES.all,"$ref"),n=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'; ",n&&(e.opts.sourceCode||e.opts.processCode)&&(a+=" /*# sourceURL="+n+" */ ")),"boolean"==typeof e.schema||!i&&!e.schema.$ref){var c=e.level,u=e.dataLevel,d=e.schema["false schema"],p=e.schemaPath+e.util.getProperty("false schema"),h=e.errSchemaPath+"/false schema",m=!e.opts.allErrors,f="data"+(u||""),v="valid"+c;if(!1===e.schema){e.isTop?m=!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(h)+" , params: {} ",!1!==e.opts.messages&&(a+=" , message: 'boolean schema is false' "),e.opts.verbose&&(a+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";var g=a;a=J.pop(),!e.compositeRule&&m?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;c=e.level=0,u=e.dataLevel=0,f="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{c=e.level,f="data"+((u=e.dataLevel)||"");if(n&&(e.baseId=e.resolve.url(e.baseId,n)),o&&!e.async)throw new Error("async schema in sync schema");a+=" var errs_"+c+" = errors;"}v="valid"+c,m=!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&&i){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&&(i=!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)){p=e.schemaPath+".type",h=e.errSchemaPath+"/type",p=e.schemaPath+".type",h=e.errSchemaPath+"/type";var O=S?"checkDataTypes":"checkDataType";if(a+=" if ("+e.util[O](E,f,e.opts.strictNumbers,!0)+") { ",F){var _="dataType"+c,D="coerced"+c;a+=" var "+_+" = typeof "+f+"; var "+D+" = undefined; ","array"==e.opts.coerceTypes&&(a+=" if ("+_+" == 'object' && Array.isArray("+f+") && "+f+".length == 1) { "+f+" = "+f+"[0]; "+_+" = typeof "+f+"; if ("+e.util.checkDataType(e.schema.type,f,e.opts.strictNumbers)+") "+D+" = "+f+"; } "),a+=" if ("+D+" !== undefined) ; ";var $=F;if($)for(var k,j=-1,I=$.length-1;j<I;)"string"==(k=$[j+=1])?a+=" else if ("+_+" == 'number' || "+_+" == 'boolean') "+D+" = '' + "+f+"; else if ("+f+" === null) "+D+" = ''; ":"number"==k||"integer"==k?(a+=" else if ("+_+" == 'boolean' || "+f+" === null || ("+_+" == 'string' && "+f+" && "+f+" == +"+f+" ","integer"==k&&(a+=" && !("+f+" % 1)"),a+=")) "+D+" = +"+f+"; "):"boolean"==k?a+=" else if ("+f+" === 'false' || "+f+" === 0 || "+f+" === null) "+D+" = false; else if ("+f+" === 'true' || "+f+" === 1) "+D+" = true; ":"null"==k?a+=" else if ("+f+" === '' || "+f+" === 0 || "+f+" === false) "+D+" = null; ":"array"==e.opts.coerceTypes&&"array"==k&&(a+=" else if ("+_+" == 'string' || "+_+" == 'number' || "+_+" == 'boolean' || "+f+" == null) "+D+" = ["+f+"]; ");a+=" else { ",(J=J||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(h)+" , 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"+p+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";g=a;a=J.pop(),!e.compositeRule&&m?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 A=u?"data"+(u-1||""):"parentData";a+=" "+f+" = "+D+"; ",u||(a+="if ("+A+" !== undefined)"),a+=" "+A+"["+(u?e.dataPathArr[u]:"parentDataProperty")+"] = "+D+"; } "}else{(J=J||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(h)+" , 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"+p+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";g=a;a=J.pop(),!e.compositeRule&&m?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&&!i)a+=" "+e.RULES.all.$ref.code(e,"$ref")+" ",m&&(a+=" } if (errors === ",a+=y?"0":"errs_"+c,a+=") { ",w+="}");else{var C=e.RULES;if(C)for(var R=-1,N=C.length-1;R<N;)if(Z(x=C[R+=1])){if(x.type&&(a+=" if ("+e.util.checkDataType(x.type,f,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,q=L.length-1;z<q;){if(void 0!==(B=d[T=L[z+=1]]).default){var V=f+e.util.getProperty(T);if(e.compositeRule){if(e.opts.strictDefaults){b="default is ignored for: "+V;if("log"!==e.opts.strictDefaults)throw new Error(b);e.logger.warn(b)}}else a+=" if ("+V+" === undefined ","empty"==e.opts.useDefaults&&(a+=" || "+V+" === null || "+V+" === '' "),a+=" ) "+V+" = ","shared"==e.opts.useDefaults?a+=" "+e.useDefault(B.default)+" ":a+=" "+JSON.stringify(B.default)+" ",a+="; "}}}else if("array"==x.type&&Array.isArray(e.schema.items)){var M=e.schema.items;if(M){j=-1;for(var B,W=M.length-1;j<W;)if(void 0!==(B=M[j+=1]).default){V=f+"["+j+"]";if(e.compositeRule){if(e.opts.strictDefaults){b="default is ignored for: "+V;if("log"!==e.opts.strictDefaults)throw new Error(b);e.logger.warn(b)}}else a+=" if ("+V+" === undefined ","empty"==e.opts.useDefaults&&(a+=" || "+V+" === null || "+V+" === '' "),a+=" ) "+V+" = ","shared"==e.opts.useDefaults?a+=" "+e.useDefault(B.default)+" ":a+=" "+JSON.stringify(B.default)+" ",a+="; "}}}var U=x.rules;if(U)for(var Q,H=-1,K=U.length-1;H<K;)if(X(Q=U[H+=1])){var G=Q.code(e,Q.keyword,x.type);G&&(a+=" "+G+" ",m&&(P+="}"))}if(m&&(a+=" "+P+" ",P=""),x.type&&(a+=" } ",E&&E===x.type&&!F)){a+=" else { ";var J;p=e.schemaPath+".type",h=e.errSchemaPath+"/type";(J=J||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(h)+" , 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"+p+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";g=a;a=J.pop(),!e.compositeRule&&m?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+=" } "}m&&(a+=" if (errors === ",a+=y?"0":"errs_"+c,a+=") { ",w+="}")}}function Z(e){for(var r=e.rules,t=0;t<r.length;t++)if(X(r[t]))return!0}function X(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 m&&(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_"+c+";",a},me=C.ucs2length,fe=ce.Validation,ve=function e(r,t,a,o){var i=this,n=this._opts,s=[void 0],l={},c=[],u={},d=[],p={},h=[];t=t||{schema:r,refVal:s,refs:l};var m=ge.call(this,r,t,o),f=this._compilations[m.index];if(m.compiling)return f.callValidate=function e(){var r=f.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);f.validate=y;var b=f.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,n.sourceCode&&(b.source=y.source)),y}finally{ye.call(this,r,t,o)}function P(r,a,o,u){var p=!a||a&&a.schema==r;if(a.schema!=t.schema)return e.call(i,r,a,o,u);var m,f=!0===r.$async,y=he({isTop:!0,schema:r,isRoot:p,baseId:u,root:a,schemaPath:"",errSchemaPath:"#",errorPath:'""',MissingRefError:ce.MissingRef,RULES:g,validate:he,util:C,resolve:J,resolveRef:w,usePattern:F,useDefault:x,useCustomRule:O,opts:n,formats:v,logger:i.logger,self:i});y=Fe(s,Ee)+Fe(c,Pe)+Fe(d,we)+Fe(h,Se)+y,n.processCode&&(y=n.processCode(y,r));try{m=new Function("self","RULES","formats","root","refVal","defaults","customRules","equal","ucs2length","ValidationError",y)(i,g,v,t,s,d,h,A,me,fe),s[0]=m}catch(e){throw i.logger.error("Error compiling schema, function code:",y),e}return m.schema=r,m.errors=null,m.refs=l,m.refVal=s,m.root=p?m:a,f&&(m.$async=!0),!0===n.sourceCode&&(m.source={code:y,patterns:c,defaults:d}),m}function w(r,o,c){o=J.url(r,o);var u,d,p=l[o];if(void 0!==p)return S(u=s[p],d="refVal["+p+"]");if(!c&&t.refs){var h=t.refs[o];if(void 0!==h)return S(u=t.refVal[h],d=E(o,u))}d=E(o);var m=J.call(i,P,t,o);if(void 0===m){var f=a&&a[o];f&&(m=J.inlineRef(f,n.inlineRefs)?f:e.call(i,f,t,a,r))}if(void 0!==m)return function(e,r){var t=l[e];s[t]=r}(o,m),S(m,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=u[e];return void 0===r&&(r=u[e]=c.length,c[r]=e),"pattern"+r}function x(e){switch(typeof e){case"boolean":case"number":return""+e;case"string":return C.toQuotedString(e);case"object":if(null===e)return"null";var r=pe(e),t=p[r];return void 0===t&&(t=p[r]=d.length,d[t]=e),"default"+t}}function O(e,r,t,a){if(!1!==i._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: "+i.errorsText(s.errors);if("log"!=i._opts.validateSchema)throw new Error(l);i.logger.error(l)}}var c,u=e.definition.compile,d=e.definition.inline,p=e.definition.macro;if(u)c=u.call(i,r,t,a);else if(p)c=p.call(i,r,t,a),!1!==n.validateSchema&&i.validateSchema(c,!0);else if(d)c=d.call(i,a,e.keyword,r,t);else if(!(c=e.definition.validate))return;if(void 0===c)throw new Error('custom keyword "'+e.keyword+'"failed to compile');var m=h.length;return h[m]=c,{code:"customRule"+m,validate:c}}};function ge(e,r,t){var a=be.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 ye(e,r,t){var a=be.call(this,e,r,t);a>=0&&this._compilations.splice(a,1)}function be(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 Pe(e,r){return"var pattern"+e+" = new RegExp("+C.toQuotedString(r[e])+");"}function we(e){return"var default"+e+" = defaults["+e+"];"}function Ee(e,r){return void 0===r[e]?"":"var refVal"+e+" = refVal["+e+"];"}function Se(e){return"var customRule"+e+" = customRules["+e+"];"}function Fe(e,r){if(!e.length)return"";for(var t="",a=0;a<e.length;a++)t+=r(a,e);return t}var xe=$((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={}}})),Oe=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,_e=[0,31,28,31,30,31,30,31,31,30,31,30,31],De=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,$e=/^(?=.{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,ke=/^(?:[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,je=/^(?:(?:[^\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,Ie=/^(?:(?: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})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\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])*)?$/i,Ae=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,Ce=/^(?:\/(?:[^~/]|~0|~1)*)*$/,Re=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,Ne=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,Le=Te;function Te(e){return e="full"==e?"full":"fast",C.copy(Te[e])}function ze(e){var r=e.match(Oe);if(!r)return!1;var t=+r[1],a=+r[2],o=+r[3];return a>=1&&a<=12&&o>=1&&o<=(2==a&&function(e){return e%4==0&&(e%100!=0||e%400==0)}(t)?29:_e[a])}function qe(e,r){var t=e.match(De);if(!t)return!1;var a=t[1],o=t[2],i=t[3],n=t[5];return(a<=23&&o<=59&&i<=59||23==a&&59==o&&60==