UNPKG

@suecoding/vue2-form-vant

Version:

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

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