ddan-js 1.2.7 → 1.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/ddan-js.esm.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={gbkLength:function(e){let t=0;if(!e)return 0;for(let r=0;r<e.length;r++)e.charCodeAt(r)>127||94===e.charCodeAt(r)?t+=2:t++;return t},gbkCut:function(e,t){if(!e||t<=0)return"";let r=0,n=0;for(let i=0;i<e.length&&(e.charCodeAt(i)>127||94===e.charCodeAt(i)?r+=2:r++,!(r>t));i++)n=i;return e.substr(0,n+1)}};const t=(e,t="yyyy-MM-dd hh:mm:ss")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e,n={};return n.yyyy=r.getFullYear(),n.yy=`${n.yyyy}`.substr(2),n.M=r.getMonth()+1,n.MM=(n.M<10?"0":"")+n.M,n.d=r.getDate(),n.dd=(n.d<10?"0":"")+n.d,n.h=r.getHours(),n.hh=(n.h<10?"0":"")+n.h,n.m=r.getMinutes(),n.mm=(n.m<10?"0":"")+n.m,n.s=r.getSeconds(),n.ss=(n.s<10?"0":"")+n.s,n.S=r.getMilliseconds(),n.SS=(n.S<10?"0":"")+n.S,n.SSS=n.S.toString().padStart(3,0),t.replace(/\byyyy|yy|MM|M|dd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>n[e]))};function r(){return Date.now()}var n={now:r,isToday:e=>(new Date).toDateString()===new Date(e).toDateString(),format:t,parseTime:function({year:e=0,month:r=0,date:n=0,hour:i=0,minute:s=0,second:o=0}){const a=`${e||"yyyy"}/${r||"MM"}/${n||"dd"} ${i}:${s}:${o}`;return new Date(t(Date.now(),a)).getTime()},todayZero:()=>new Date(t(r(),"yyyy/MM/dd 00:00:00")).getTime(),oneDay:864e5,oneHour:36e5,oneMinute:6e4,oneSecond:1e3},i="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self;const o=(i||s||Function("return this")()).Symbol,{toString:a,hasOwnProperty:u,propertyIsEnumerable:l}=Object.prototype,c=o?o.toStringTag:void 0;function f(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":c&&c in Object(e)?function(e){const t=u.call(e,c),r=e[c];let n=!1;try{e[c]=void 0,n=!0}catch(e){}const i=a.call(e);return n&&(t?e[c]=r:delete e[c]),i}(e):a.call(e)}var d={getTag:f,getType:function(e){return(f(e).match(/\w+/g)||["object","Undefined"])[1]||""},toString:a,hasOwnProperty:u,propertyIsEnumerable:l},g="[object Function]",p="[object GeneratorFunction]",h="[object AsyncFunction]",y=9007199254740991;const m=/^(?:0|[1-9]\d*)$/;function b(e){const t=typeof e;return null!=e&&("object"==t||"function"==t)}function v(e){return null!=e&&"object"==typeof e}const w=Array.isArray;function O(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=y}(e.length)&&!$(e)}function j(e){return v(e)&&O(e)}function $(e){var t=b(e)?d.getTag(e):"";return t===g||t===p||t===h}var A={is:function(e,t){return d.getTag(e)===`[object ${t}]`},isNumber:function(e){return"[object Number]"===d.getTag(e)},isString:function(e){return"string"==typeof e||!w(e)&&v(e)&&"[object String]"==d.getTag(e)},isChinese:function(e){return!!e&&!!/^[\u4E00-\u9FA5]+$/.test(e)},isObject:b,isObjectLike:v,isSymbol:function(e){return"symbol"==typeof e||v(e)&&"[object Symbol]"===d.getTag(e)},isFunction:$,isArray:w,isArrayLikeObject:j,isIndex:function(e,t){return!!(t=null==t?y:t)&&("number"==typeof e||m.test(e))&&e>-1&&e%1==0&&e<t},isArrayLike:O,isPrototype:function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Object.prototype)},isArguments:function(e){return j(e)&&d.hasOwnProperty.call(e,"callee")&&(!d.propertyIsEnumerable.call(e,"callee")||"[object Arguments]"==d.toString.call(e))},isPromise:function(e){return"[object Promise]"===(b(e)?d.getTag(e):"")}};const q=NaN,F=/^\s+|\s+$/g,x=/^[-+]0x[0-9a-f]+$/i,S=/^0b[01]+$/i,E=/^0o[0-7]+$/i,P=parseInt,k=1/0,M=17976931348623157e292;function R(e){if("number"==typeof e)return e;if(A.isSymbol(e))return q;if(A.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=A.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(F,"");const t=S.test(e);return t||E.test(e)?P(e.slice(2),t?2:8):x.test(e)?q:+e}function D(e){return e?(e=R(e))===k||e===-k?(e<0?-1:1)*M:e==e?e:0:0===e?e:0}var T={toNumber:R,toFinite:D,toInteger:function(e){var t=D(e),r=t%1;return t==t?r?t-r:t:0}};const N="Expected a function",C=Math.max,I=Math.min;function _(e,t=0,r={}){var n,i,s,o,a,u,l=0,c=!1,f=!1,d=!0;if("function"!=typeof e)throw new TypeError(N);function g(t){var r=n,s=i;return n=i=void 0,l=t,o=e.apply(s,r)}function p(e){var r=e-u;return void 0===u||r>=t||r<0||f&&e-l>=s}function h(){var e=Date.now();if(p(e))return y(e);a=setTimeout(h,function(e){var r=t-(e-u);return f?I(r,s-(e-l)):r}(e))}function y(e){return a=void 0,d&&n?g(e):(n=i=void 0,o)}function m(...e){var r=Date.now(),s=p(r);if(n=arguments,i=this,u=r,s){if(void 0===a)return function(e){return l=e,a=setTimeout(h,t),c?g(e):o}(u);if(f)return a=setTimeout(h,t),g(u)}return void 0===a&&(a=setTimeout(h,t)),o}return t=T.toNumber(t)||0,A.isObject(r)&&(c=!!r.leading,s=(f="maxWait"in r)?C(T.toNumber(r.maxWait)||0,t):s,d="trailing"in r?!!r.trailing:d),m.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=u=i=a=void 0},m.flush=function(){return void 0===a?o:y(Date.now())},m}class V{constructor(e){this.source=e}run(){let e;try{let t;return t=A.isFunction(this.source)?this.source():this.source,e=A.isPromise(t)?t:Promise.resolve(t),e.then((e=>[null,e])).catch((e=>[e,void 0]))}catch(e){return Promise.resolve([e,void 0])}}}var z={sleep:(e=1e3)=>new Promise((t=>{setTimeout(t,e)})),run:e=>new V(e).run(),debounce:_,throttle:function(e,t=0,r={}){var n=!1,i=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return A.isObject(r)&&(n=r.leading?!!r.leading:n,i=r.trailing?!!r.trailing:i),_(e,t,{leading:n,maxWait:t,trailing:i})}};var U={random:function(e){return Math.floor(Math.random()*e)},randomRange:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},lerp:function(e,t,r){return e*(1-r)+t*r},randomString:function(e,t=!1){e=e||32;const r="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";let i="";for(let t=0;t<e;t++)i+=r.charAt(Math.floor(62*Math.random()));return t?n.format(new Date,"yyyyMMddhhmmss")+i:i}};function L(e){return e!=e}function B(e,t){return function(e,t){for(var r=-1,n=e?e.length:0,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}(t,(function(t){return e[t]}))}var J,W,Z=(J=Object.keys,W=Object,function(e){return J(W(e))}),H=Math.max;function Y(e,t){var r=A.isArray(e)||A.isArguments(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,i=!!n;for(var s in e)!t&&!d.hasOwnProperty.call(e,s)||i&&("length"==s||A.isIndex(s,n))||r.push(s);return r}var G=Object.assign(Object.assign(Object.assign({},A),d),{includes:function(e,t,r,n){e=A.isArrayLike(e)?e:function(e){return e?B(e,function(e){return A.isArrayLike(e)?Y(e):function(e){if(!A.isPrototype(e))return Z(e);var t=[];for(var r in Object(e))d.hasOwnProperty.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}(e)):[]}(e),r=r&&!n?T.toInteger(r):0;var i=e.length;return r<0&&(r=H(i+r,0)),A.isString(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&function(e,t,r){if(t!=t)return function(e,t,r,n){for(var i=e.length,s=r+(n?1:-1);n?s--:++s<i;)if(t(e[s],s,e))return s;return-1}(e,L,r);for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}(e,t,r)>-1},merge:function(e,t){return t?e?(Object.keys(t).forEach((r=>{Array.isArray(e[r])&&Array.isArray(t[r])?e[r]=e[r].concat(t[r]):"object"==typeof e[r]&&"object"==typeof t[r]?e[r]=Object.assign(e[r],t[r]):e[r]=t[r]})),e):t:e},compareArray:function(e,t){if(!Array.isArray(e)||!Array.isArray(t))return!1;if(e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(e[r]!==t[r])return!1;return!0}});class K{constructor(){this._map=new Map}clear(){return this._map.clear(),this}on(e,t){if(!t)return this;let r=this._map.get(e);return r||(r=new Set,this._map.set(e,r)),r.add(t),this}emit(e,...t){const r=this._map.get(e);if(!r)return this;return[...r].forEach((e=>e(...t))),this}off(e="",t){if(!e)return this._map.clear(),this;if(!t)return this._map.delete(e.toString()),this;const r=this._map.get(e);return r?(r.delete(t),this):this}once(e,t){const r=(...n)=>{t(...n),this.off(e,r)};return this.on(e,r),this}has(e){return this._map.has(e)}}var Q={groupBy:(e,t)=>e.reduce(((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e)),{}),stepAction:function(e,t,r=100){if(!A.isFunction(t))return;if(!A.isArray(e)||e.length<=0)return;let n=0;for(;e.length>n;){let i=r+n,s=e.slice(n,i);t&&t(s),n=i}},skip:(e,t)=>{if(!A.isArray(e)||e.length<=0)return[];const r=t;return e.slice(r)},take:(e,t,r=0)=>{if(!A.isArray(e)||e.length<=0)return[];const n=r||0;if(n>=e.length)return[];const i=t+n;return e.slice(n,e.length<i?e.length:i)||[]},distinct:e=>!A.isArray(e)||e.length<=0?[]:[...new Set(e)]};const X="[object Object]",ee="[object Array]",te=e=>Object.prototype.toString.call(e),re=(e,t,r=!1)=>{if(e===t)return;const n=te(e);if(n===te(t))if(n===ee&&e.length>=t.length)for(let r=0;r<t.length;r++)re(e[r],t[r]);else if(n===X&&Object.keys(e).length>=Object.keys(t).length)for(let n in t)r||void 0!==e[n]?re(e[n],t[n]):e[n]=null},ne=(e,t,r,n="",i=!1)=>{if(e===t)return;const s=te(e),o=te(t);if(s===ee&&o===s&&e.length>=t.length)for(let i=0;i<e.length;i++)ne(e[i],t[i],r,`${n}[${i}]`);else if(s===X&&o===s&&(i||Object.keys(e).length>=Object.keys(t).length)){const i=Object.keys(e);for(let s of i){const i=e[s],o=t[s],a=te(i),u=te(o);if(i!==o)if(a===ee&&u===a&&i.length>=o.length)for(let e=0;e<i.length;e++)ne(i[e],o[e],r,`${n?n+".":""}${s}[${e}]`);else if(a===X&&u===a&&Object.keys(i).length>=Object.keys(o).length)for(let e in i)ne(i[e],o[e],r,`${n?n+".":""}${s}.${e}`);else r[`${n?n+".":""}${s}`]=i}}else r[n]=e};const ie=e=>"function"!=typeof e?e:(t={})=>new Promise(((r,n)=>{e(Object.assign(t,{success:r,fail:n}))}));var se={diff:function(e,t){const r={};return(e=>{if(te(e)===X)for(let t in e)if(/\w+\.\w+/g.test(t)&&-1===t.indexOf("[")){const r=t.split(".");let n=e,i=r.length;for(let e=0;e<i-1;e++){const t=r[e];te(n[t])!==X&&(n[t]={}),n=n[t]}n[r[i-1]]=e[t],delete e[t]}})(e),re(e,t,!0),ne(e,t,r,"",!0),r},promixify:ie,run:(e,t={})=>{if(e)return z.run(ie(e)(t))},formatList:function(e,t,r){return(e||[]).reduce(((e,n,i)=>Object.assign(Object.assign({},e),{[`${r}[${t+i}]`]:n})),{})},ruleValidator:function(e,t){return!!t&&(!Array.isArray(t)||!(t.length<=0)&&t.every((e=>!!e)))}};function oe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}const ae=function(e,{sep:t="&",eq:r="=",max:n=1e3,multiple:i=!1}={}){t=t||"&",r=r||"=";const s={};if("string"!=typeof e||0===e.length)return s;const o=/\+/g,a=n||1e3;let u=(e=e.split(t)).length;a>0&&u>a&&(u=a);for(let t=0;t<u;++t){let n,a,u,l,c=e[t].replace(o,"%20"),f=c.indexOf(r);f>=0?(n=c.substr(0,f),a=c.substr(f+1)):(n=c,a=""),u=decodeURIComponent(n),l=decodeURIComponent(a),oe(s,u)&&i?Array.isArray(s[u])?s[u].push(l):s[u]=[s[u],l]:s[u]=l}return s},ue=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}},le=function(e,{sep:t="&",eq:r="=",name:n=null,multiple:i=!1}={}){return t=t||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(n){const s=encodeURIComponent(ue(n))+r;return i&&Array.isArray(e[n])?e[n].map((function(e){return s+encodeURIComponent(ue(e))})).join(t):s+encodeURIComponent(ue(e[n]))})).filter(Boolean).join(t):n?encodeURIComponent(ue(n))+r+encodeURIComponent(ue(e)):""};var ce={parse:ae,decode:ae,stringify:le,encode:le,useHttps:function(e){if(!e)return e;const t=e.trim();return"string"!=typeof e?e:t.indexOf("https")<0?t.replace("http","https"):t}};const fe=/%[sdj%]/g;let de=()=>{};function ge(e){if(!e||!e.length)return null;const t={};return e.forEach((e=>{const r=e.field;t[r]=t[r]||[],t[r].push(e)})),t}function pe(e,...t){let r=0;const n=t.length;if("function"==typeof e)return e.apply(null,t);if("string"==typeof e){return e.replace(fe,(e=>{if("%%"===e)return"%";if(r>=n)return e;switch(e){case"%s":return String(t[r++]);case"%d":return Number(t[r++]);case"%j":try{return JSON.stringify(t[r++])}catch(e){return"[Circular]"}break;default:return e}}))}return e}function he(e,t){return null==e||(!("array"!==t||!Array.isArray(e)||e.length)||!(!function(e){return"string"===e||"url"===e||"hex"===e||"email"===e||"date"===e||"pattern"===e}(t)||"string"!=typeof e||e))}function ye(e,t,r){let n=0;const i=e.length;!function s(o){if(o&&o.length)return void r(o);const a=n;n+=1,a<i?t(e[a],s):r([])}([])}"undefined"!=typeof process&&process.env&&"production"!==process.env.NODE_ENV&&"undefined"!=typeof window&&"undefined"!=typeof document&&(de=(e,t)=>{"undefined"!=typeof console&&console.warn&&"undefined"==typeof ASYNC_VALIDATOR_NO_WARNING&&t.every((e=>"string"==typeof e))&&console.warn(e,t)});class me extends Error{constructor(e,t){super("Async Validation Error"),this.errors=e,this.fields=t}}function be(e,t,r,n,i){if(t.first){const t=new Promise(((t,s)=>{const o=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push(...e[r]||[])})),t}(e);ye(o,r,(e=>(n(e),e.length?s(new me(e,ge(e))):t(i))))}));return t.catch((e=>e)),t}const s=!0===t.firstFields?Object.keys(e):t.firstFields||[],o=Object.keys(e),a=o.length;let u=0;const l=[],c=new Promise(((t,c)=>{const f=e=>{if(l.push.apply(l,e),u++,u===a)return n(l),l.length?c(new me(l,ge(l))):t(i)};o.length||(n(l),t(i)),o.forEach((t=>{const n=e[t];-1!==s.indexOf(t)?ye(n,r,f):function(e,t,r){const n=[];let i=0;const s=e.length;function o(e){n.push(...e||[]),i++,i===s&&r(n)}e.forEach((e=>{t(e,o)}))}(n,r,f)}))}));return c.catch((e=>e)),c}function ve(e,t){return r=>{let n;return n=e.fullFields?function(e,t){let r=e;for(let e=0;e<t.length;e++){if(null==r)return r;r=r[t[e]]}return r}(t,e.fullFields):t[r.field||e.fullField],(i=r)&&void 0!==i.message?(r.field=r.field||e.fullField,r.fieldValue=n,r):{message:"function"==typeof r?r():r,fieldValue:n,field:r.field||e.fullField};var i}}function we(e,t){if(t)for(const r in t)if(t.hasOwnProperty(r)){const n=t[r];"object"==typeof n&&"object"==typeof e[r]?e[r]=Object.assign(Object.assign({},e[r]),n):e[r]=n}return e}const Oe=(e,t,r,n,i,s)=>{!e.required||r.hasOwnProperty(e.field||"")&&!he(t,s||e.type)||n.push(pe(i.messages.required,e.fullField))};let je;const $e=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,Ae=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,qe={integer:e=>qe.number(e)&&parseInt(e,10)===e,float:e=>qe.number(e)&&!qe.integer(e),array:e=>Array.isArray(e),regexp(e){if(e instanceof RegExp)return!0;try{return!!new RegExp(e)}catch(e){return!1}},date:e=>"function"==typeof e.getTime&&"function"==typeof e.getMonth&&"function"==typeof e.getYear&&!isNaN(e.getTime()),number:e=>!isNaN(e)&&"number"==typeof e,object:e=>"object"==typeof e&&!qe.array(e),method:e=>"function"==typeof e,email:e=>"string"==typeof e&&e.length<=320&&!!e.match($e),url:e=>"string"==typeof e&&e.length<=2048&&!!e.match((()=>{if(je)return je;const e="[a-fA-F\\d:]",t=t=>t&&t.includeBoundaries?`(?:(?<=\\s|^)(?=${e})|(?<=${e})(?=\\s|$))`:"",r="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",n="[a-fA-F\\d]{1,4}",i=`\n(?:\n(?:${n}:){7}(?:${n}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${n}:){6}(?:${r}|:${n}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${n}:){5}(?::${r}|(?::${n}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${n}:){4}(?:(?::${n}){0,1}:${r}|(?::${n}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${n}:){3}(?:(?::${n}){0,2}:${r}|(?::${n}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${n}:){2}(?:(?::${n}){0,3}:${r}|(?::${n}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${n}:){1}(?:(?::${n}){0,4}:${r}|(?::${n}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${n}){0,5}:${r}|(?::${n}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),s=new RegExp(`(?:^${r}$)|(?:^${i}$)`),o=new RegExp(`^${r}$`),a=new RegExp(`^${i}$`),u=e=>e&&e.exact?s:new RegExp(`(?:${t(e)}${r}${t(e)})|(?:${t(e)}${i}${t(e)})`,"g");u.v4=e=>e&&e.exact?o:new RegExp(`${t(e)}${r}${t(e)}`,"g"),u.v6=e=>e&&e.exact?a:new RegExp(`${t(e)}${i}${t(e)}`,"g");const l=u.v4().source,c=u.v6().source;return je=new RegExp(`(?:^(?:(?:(?:[a-z]+:)?//)|www\\.)(?:\\S+(?::\\S*)?@)?(?:localhost|${l}|${c}|(?:(?:[a-z\\u00a1-\\uffff0-9][-_]*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:[/?#][^\\s"]*)?$)`,"i"),je})()),hex:e=>"string"==typeof e&&!!e.match(Ae)},Fe="enum";var xe={required:Oe,whitespace:(e,t,r,n,i)=>{(/^\s+$/.test(t)||""===t)&&n.push(pe(i.messages.whitespace,e.fullField))},type:(e,t,r,n,i)=>{if(e.required&&void 0===t)return void Oe(e,t,r,n,i);const s=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(s)>-1?qe[s](t)||n.push(pe(i.messages.types[s],e.fullField,e.type)):s&&typeof t!==e.type&&n.push(pe(i.messages.types[s],e.fullField,e.type))},range:(e,t,r,n,i)=>{const s="number"==typeof e.len,o="number"==typeof e.min,a="number"==typeof e.max,u=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;let l=t,c="";const f="number"==typeof t,d="string"==typeof t,g=Array.isArray(t);if(f?c="number":d?c="string":g&&(c="array"),!c)return!1;g&&(l=t.length),d&&(l=t.replace(u,"_").length),s?l!==e.len&&n.push(pe(i.messages[c].len,e.fullField,e.len)):o&&!a&&l<e.min?n.push(pe(i.messages[c].min,e.fullField,e.min)):a&&!o&&l>e.max?n.push(pe(i.messages[c].max,e.fullField,e.max)):o&&a&&(l<e.min||l>e.max)&&n.push(pe(i.messages[c].range,e.fullField,e.min,e.max))},enum:(e,t,r,n,i)=>{e[Fe]=Array.isArray(e[Fe])?e[Fe]:[],-1===e[Fe].indexOf(t)&&n.push(pe(i.messages[Fe],e.fullField,e[Fe].join(", ")))},pattern:(e,t,r,n,i)=>{if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(pe(i.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(pe(i.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};const Se=(e,t,r,n,i)=>{const s=e.type,o=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t,s)&&!e.required)return r();xe.required(e,t,n,o,i,s),he(t,s)||xe.type(e,t,n,o,i)}r(o)};var Ee={string:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field||"")){if(he(t,"string")&&!e.required)return r();xe.required(e,t,n,s,i,"string"),he(t,"string")||(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i),xe.pattern(e,t,n,s,i),!0===e.whitespace&&xe.whitespace(e,t,n,s,i))}r(s)},method:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},number:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},boolean:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},regexp:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),he(t)||xe.type(e,t,n,s,i)}r(s)},integer:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},float:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},array:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(null==t&&!e.required)return r();xe.required(e,t,n,s,i,"array"),null!=t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},object:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},enum:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.enum(e,t,n,s,i)}r(s)},pattern:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t,"string")&&!e.required)return r();xe.required(e,t,n,s,i),he(t,"string")||xe.pattern(e,t,n,s,i)}r(s)},date:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t,"date")&&!e.required)return r();if(xe.required(e,t,n,s,i),!he(t,"date")){let r;r=t instanceof Date?t:new Date(t),xe.type(e,r,n,s,i),r&&xe.range(e,r.getTime(),n,s,i)}}r(s)},url:Se,hex:Se,email:Se,required:(e,t,r,n,i)=>{const s=[],o=Array.isArray(t)?"array":typeof t;xe.required(e,t,n,s,i,o),r(s)},any:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i)}r(s)}};function Pe(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone(){const e=JSON.parse(JSON.stringify(this));return e.clone=this.clone,e}}}const ke=Pe();class Me{constructor(e){this.rules={},this._messages=ke,this.define(e)}define(e){if(!e)throw new Error("Cannot configure a schema with no rules");if("object"!=typeof e||Array.isArray(e))throw new Error("Rules must be an object");this.rules={},Object.keys(e).forEach((t=>{const r=e[t];this.rules[t]=Array.isArray(r)?r:[r]}))}messages(e){return e&&(this._messages=we(Pe(),e)),this._messages}validate(e,t={},r=(()=>{})){let n=e,i=t,s=r;if("function"==typeof i&&(s=i,i={}),!this.rules||0===Object.keys(this.rules).length)return s&&s(null,n),Promise.resolve(n);if(i.messages){let e=this.messages();e===ke&&(e=Pe()),we(e,i.messages),i.messages=e}else i.messages=this.messages();const o={};(i.keys||Object.keys(this.rules)).forEach((t=>{const r=this.rules[t];let i=n[t];r.forEach((r=>{let s=r;"function"==typeof s.transform&&(n===e&&(n=Object.assign({},n)),i=n[t]=s.transform(i)),s="function"==typeof s?{validator:s}:Object.assign({},s),s.validator=this.getValidationMethod(s),s.validator&&(s.field=t,s.fullField=s.fullField||t,s.type=this.getType(s),o[t]=o[t]||[],o[t].push({rule:s,value:i,source:n,field:t}))}))}));const a={};return be(o,i,((e,t)=>{var r;const s=e.rule;let o,u=!("object"!==s.type&&"array"!==s.type||"object"!=typeof s.fields&&"object"!=typeof s.defaultField);function l(e,t){return Object.assign(Object.assign({},t),{fullField:`${s.fullField}.${e}`,fullFields:s.fullFields?[...s.fullFields,e]:[e]})}function c(r=[]){let o=Array.isArray(r)?r:[r];!0===i.suppressWarning&&o.length&&Me.warning("async-validator:",o),o.length&&void 0!==s.message&&(o=[].concat(s.message));let c=o.map(ve(s,n));if(i.first&&c.length)return a[s.field]=1,t(c);if(u){if(s.required&&!e.value)return void 0!==s.message?c=[].concat(s.message).map(ve(s,n)):i.error&&(c=[i.error(s,pe(i.messages.required,s.field))]),t(c);let r={};s.defaultField&&Object.keys(e.value).map((e=>{r[e]=s.defaultField})),r=Object.assign(Object.assign({},r),e.rule.fields);const o={};Object.keys(r).forEach((e=>{const t=r[e],n=Array.isArray(t)?t:[t];o[e]=n.map(l.bind(null,e))}));const a=new Me(o);a.messages(i.messages),e.rule.options&&(e.rule.options.messages=i.messages,e.rule.options.error=i.error),a.validate(e.value,e.rule.options||i,(e=>{const r=[];c&&c.length&&r.push(...c),e&&e.length&&r.push(...e),t(r.length?r:null)}))}else t(c)}if(u=u&&(s.required||!s.required&&e.value),s.field=e.field,s.asyncValidator)o=s.asyncValidator(s,e.value,c,e.source,i);else if(s.validator){try{o=s.validator(s,e.value,c,e.source,i)}catch(e){null===(r=console.error)||void 0===r||r.call(console,e),i.suppressValidatorError||setTimeout((()=>{throw e}),0),c(e.message)}!0===o?c():!1===o?c("function"==typeof s.message?s.message(s.fullField||s.field):s.message||`${s.fullField||s.field} fails`):o instanceof Array?c(o):o instanceof Error&&c(o.message)}o&&o.then&&o.then((()=>c()),(e=>c(e)))}),(e=>{!function(e){let t=[],r={};for(let r=0;r<e.length;r++)i=e[r],Array.isArray(i)?t=t.concat(...i):t.push(i);var i;t.length?(r=ge(t),s(t,r)):s(null,n)}(e)}),n)}getType(e){if(void 0===e.type&&e.pattern instanceof RegExp&&(e.type="pattern"),"function"!=typeof e.validator&&e.type&&!Ee.hasOwnProperty(e.type))throw new Error(pe("Unknown rule type %s",e.type));return e.type||"string"}getValidationMethod(e){if("function"==typeof e.validator)return e.validator;const t=Object.keys(e),r=t.indexOf("message");return-1!==r&&t.splice(r,1),1===t.length&&"required"===t[0]?Ee.required:Ee[this.getType(e)]||void 0}}function Re(e){return new Me(e)}Me.register=function(e,t){if("function"!=typeof t)throw new Error("Cannot register a validator by type, validator is not a function");Ee[e]=t},Me.warning=de,Me.messages=ke,Me.validators=Ee;var De={validateId:function(e){return!!e&&(!(e.length<6)&&!!/^[A-Za-z0-9_-]+$/.test(e))},validatePhone:function(e){return!!e&&!!/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/.test(e)},validator:Re,validate:function(e,t,r={},n=(()=>{})){return z.run(Re(e).validate(t,r,n))}};function Te(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{u(n.next(e))}catch(e){s(e)}}function a(e){try{u(n.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}u((n=n.apply(e,t||[])).next())}))}class Ne extends K{constructor(){super(),this.getters={},this.setters={},this.actions={}}dispatch(e,t=void 0){return Te(this,void 0,void 0,(function*(){const r=Reflect.get(this.actions,e);if(!A.isFunction(r))return;const[,n]=yield z.run(r(this,t));return n}))}getByOnce(e){return Te(this,void 0,void 0,(function*(){const t=Reflect.get(this,e);let r;return r=null!=t&&""!==t?JSON.parse(JSON.stringify(t)):yield this.dispatch(e),r}))}}var Ce={gbk:e,time:n,hook:z,math:U,util:G,list:Q,mini:se,url:ce,rule:De,DEvent:K,store:Ne,storeRef:e=>{const t=Object.assign(new Ne,e||{});return new Proxy(t,{get:(e,t,r)=>{const n=Reflect.get(e.getters,t);return A.isFunction(n)?n():Reflect.get(e,t,r)},set:(e,t,r,n)=>{const i=Reflect.get(e.setters,t);if(A.isFunction(i)&&!i(r))return!0;const s=Reflect.set(e,t,r,n);return s&&e.emit(t.toString(),r),s},has:(e,t)=>Reflect.has(e,t)})}};export{Ce as default};
|
|
1
|
+
var e={gbkLength:function(e){let t=0;if(!e)return 0;for(let r=0;r<e.length;r++)e.charCodeAt(r)>127||94===e.charCodeAt(r)?t+=2:t++;return t},gbkCut:function(e,t){if(!e||t<=0)return"";let r=0,n=0;for(let i=0;i<e.length&&(e.charCodeAt(i)>127||94===e.charCodeAt(i)?r+=2:r++,!(r>t));i++)n=i;return e.substr(0,n+1)}};const t=(e,t="yyyy-MM-dd hh:mm:ss")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e,n={};return n.yyyy=r.getFullYear(),n.yy=`${n.yyyy}`.substr(2),n.M=r.getMonth()+1,n.MM=(n.M<10?"0":"")+n.M,n.d=r.getDate(),n.dd=(n.d<10?"0":"")+n.d,n.h=r.getHours(),n.hh=(n.h<10?"0":"")+n.h,n.m=r.getMinutes(),n.mm=(n.m<10?"0":"")+n.m,n.s=r.getSeconds(),n.ss=(n.s<10?"0":"")+n.s,n.S=r.getMilliseconds(),n.SS=(n.S<10?"0":"")+n.S,n.SSS=n.S.toString().padStart(3,0),t.replace(/\byyyy|yy|MM|M|dd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>n[e]))};function r(){return Date.now()}var n={now:r,isToday:e=>(new Date).toDateString()===new Date(e).toDateString(),format:t,parseTime:function({year:e=0,month:r=0,date:n=0,hour:i=0,minute:s=0,second:o=0}){const a=`${e||"yyyy"}/${r||"MM"}/${n||"dd"} ${i}:${s}:${o}`;return new Date(t(Date.now(),a)).getTime()},todayZero:()=>new Date(t(r(),"yyyy/MM/dd 00:00:00")).getTime(),oneDay:864e5,oneHour:36e5,oneMinute:6e4,oneSecond:1e3},i="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self;const o=(i||s||Function("return this")()).Symbol,{toString:a,hasOwnProperty:u,propertyIsEnumerable:l}=Object.prototype,c=o?o.toStringTag:void 0;function f(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":c&&c in Object(e)?function(e){const t=u.call(e,c),r=e[c];let n=!1;try{e[c]=void 0,n=!0}catch(e){}const i=a.call(e);return n&&(t?e[c]=r:delete e[c]),i}(e):a.call(e)}var d={getTag:f,getType:function(e){return(f(e).match(/\w+/g)||["object","Undefined"])[1]||""},toString:a,hasOwnProperty:u,propertyIsEnumerable:l},g="[object Function]",p="[object GeneratorFunction]",h="[object AsyncFunction]",y=9007199254740991;const m=/^(?:0|[1-9]\d*)$/;function b(e){const t=typeof e;return null!=e&&("object"==t||"function"==t)}function v(e){return null!=e&&"object"==typeof e}const w=Array.isArray;function O(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=y}(e.length)&&!$(e)}function j(e){return v(e)&&O(e)}function $(e){var t=b(e)?d.getTag(e):"";return t===g||t===p||t===h}var A={is:function(e,t){return d.getTag(e)===`[object ${t}]`},isNumber:function(e){return"[object Number]"===d.getTag(e)},isString:function(e){return"string"==typeof e||!w(e)&&v(e)&&"[object String]"==d.getTag(e)},isChinese:function(e){return!!e&&!!/^[\u4E00-\u9FA5]+$/.test(e)},isObject:b,isObjectLike:v,isSymbol:function(e){return"symbol"==typeof e||v(e)&&"[object Symbol]"===d.getTag(e)},isFunction:$,isArray:w,isArrayLikeObject:j,isIndex:function(e,t){return!!(t=null==t?y:t)&&("number"==typeof e||m.test(e))&&e>-1&&e%1==0&&e<t},isArrayLike:O,isPrototype:function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Object.prototype)},isArguments:function(e){return j(e)&&d.hasOwnProperty.call(e,"callee")&&(!d.propertyIsEnumerable.call(e,"callee")||"[object Arguments]"==d.toString.call(e))},isPromise:function(e){return"[object Promise]"===(b(e)?d.getTag(e):"")}};const q=NaN,F=/^\s+|\s+$/g,x=/^[-+]0x[0-9a-f]+$/i,S=/^0b[01]+$/i,E=/^0o[0-7]+$/i,P=parseInt,k=1/0,M=17976931348623157e292;function R(e){if("number"==typeof e)return e;if(A.isSymbol(e))return q;if(A.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=A.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(F,"");const t=S.test(e);return t||E.test(e)?P(e.slice(2),t?2:8):x.test(e)?q:+e}function D(e){return e?(e=R(e))===k||e===-k?(e<0?-1:1)*M:e==e?e:0:0===e?e:0}var T={toNumber:R,toFinite:D,toInteger:function(e){var t=D(e),r=t%1;return t==t?r?t-r:t:0}};const N="Expected a function",C=Math.max,I=Math.min;function _(e,t=0,r={}){var n,i,s,o,a,u,l=0,c=!1,f=!1,d=!0;if("function"!=typeof e)throw new TypeError(N);function g(t){var r=n,s=i;return n=i=void 0,l=t,o=e.apply(s,r)}function p(e){var r=e-u;return void 0===u||r>=t||r<0||f&&e-l>=s}function h(){var e=Date.now();if(p(e))return y(e);a=setTimeout(h,function(e){var r=t-(e-u);return f?I(r,s-(e-l)):r}(e))}function y(e){return a=void 0,d&&n?g(e):(n=i=void 0,o)}function m(...e){var r=Date.now(),s=p(r);if(n=arguments,i=this,u=r,s){if(void 0===a)return function(e){return l=e,a=setTimeout(h,t),c?g(e):o}(u);if(f)return a=setTimeout(h,t),g(u)}return void 0===a&&(a=setTimeout(h,t)),o}return t=T.toNumber(t)||0,A.isObject(r)&&(c=!!r.leading,s=(f="maxWait"in r)?C(T.toNumber(r.maxWait)||0,t):s,d="trailing"in r?!!r.trailing:d),m.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=u=i=a=void 0},m.flush=function(){return void 0===a?o:y(Date.now())},m}class V{constructor(e){this.source=e}run(){let e;try{let t;return t=A.isFunction(this.source)?this.source():this.source,e=A.isPromise(t)?t:Promise.resolve(t),e.then((e=>[null,e])).catch((e=>[e,void 0]))}catch(e){return Promise.resolve([e,void 0])}}}var z={sleep:(e=1e3)=>new Promise((t=>{setTimeout(t,e)})),run:e=>new V(e).run(),debounce:_,throttle:function(e,t=0,r={}){var n=!1,i=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return A.isObject(r)&&(n=r.leading?!!r.leading:n,i=r.trailing?!!r.trailing:i),_(e,t,{leading:n,maxWait:t,trailing:i})}};var U={random:function(e){return Math.floor(Math.random()*e)},randomRange:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},lerp:function(e,t,r){return e*(1-r)+t*r},randomString:function(e,t=!1){e=e||32;const r="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";let i="";for(let t=0;t<e;t++)i+=r.charAt(Math.floor(62*Math.random()));return t?n.format(new Date,"yyyyMMddhhmmss")+i:i}};function L(e){return e!=e}function B(e,t){return function(e,t){for(var r=-1,n=e?e.length:0,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}(t,(function(t){return e[t]}))}var J,W,Z=(J=Object.keys,W=Object,function(e){return J(W(e))}),H=Math.max;function Y(e,t){var r=A.isArray(e)||A.isArguments(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,i=!!n;for(var s in e)!t&&!d.hasOwnProperty.call(e,s)||i&&("length"==s||A.isIndex(s,n))||r.push(s);return r}var G=Object.assign(Object.assign(Object.assign({},A),d),{includes:function(e,t,r,n){e=A.isArrayLike(e)?e:function(e){return e?B(e,function(e){return A.isArrayLike(e)?Y(e):function(e){if(!A.isPrototype(e))return Z(e);var t=[];for(var r in Object(e))d.hasOwnProperty.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}(e)):[]}(e),r=r&&!n?T.toInteger(r):0;var i=e.length;return r<0&&(r=H(i+r,0)),A.isString(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&function(e,t,r){if(t!=t)return function(e,t,r,n){for(var i=e.length,s=r+(n?1:-1);n?s--:++s<i;)if(t(e[s],s,e))return s;return-1}(e,L,r);for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}(e,t,r)>-1},merge:function(e,t){return t?e?(Object.keys(t).forEach((r=>{Array.isArray(e[r])&&Array.isArray(t[r])?e[r]=e[r].concat(t[r]):"object"==typeof e[r]&&"object"==typeof t[r]?e[r]=Object.assign(e[r],t[r]):e[r]=t[r]})),e):t:e},compareArray:function(e,t){if(!Array.isArray(e)||!Array.isArray(t))return!1;if(e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(e[r]!==t[r])return!1;return!0}});class K{constructor(){this._map=new Map}clear(){return this._map.clear(),this}on(e,t){if(!t)return this;let r=this._map.get(e);return r||(r=new Set,this._map.set(e,r)),r.add(t),this}emit(e,...t){const r=this._map.get(e);if(!r)return this;return[...r].forEach((e=>e(...t))),this}off(e="",t){if(!e)return this._map.clear(),this;if(!t)return this._map.delete(e.toString()),this;const r=this._map.get(e);return r?(r.delete(t),this):this}once(e,t){const r=(...n)=>{t(...n),this.off(e,r)};return this.on(e,r),this}has(e){return this._map.has(e)}}var Q={groupBy:(e,t)=>e.reduce(((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e)),{}),stepAction:function(e,t,r=100){if(!A.isFunction(t))return;if(!A.isArray(e)||e.length<=0)return;let n=0;for(;e.length>n;){let i=r+n,s=e.slice(n,i);t&&t(s),n=i}},skip:(e,t)=>{if(!A.isArray(e)||e.length<=0)return[];const r=t;return e.slice(r)},take:(e,t,r=0)=>{if(!A.isArray(e)||e.length<=0)return[];const n=r||0;if(n>=e.length)return[];const i=t+n;return e.slice(n,e.length<i?e.length:i)||[]},distinct:e=>!A.isArray(e)||e.length<=0?[]:[...new Set(e)]};const X="[object Object]",ee="[object Array]",te=e=>Object.prototype.toString.call(e),re=(e,t,r=!1)=>{if(e===t)return;const n=te(e);if(n===te(t))if(n===ee&&e.length>=t.length)for(let r=0;r<t.length;r++)re(e[r],t[r]);else if(n===X&&Object.keys(e).length>=Object.keys(t).length)for(let n in t)r||void 0!==e[n]?re(e[n],t[n]):e[n]=null},ne=(e,t,r,n="",i=!1)=>{if(e===t)return;const s=te(e),o=te(t);if(s===ee&&o===s&&e.length>=t.length)for(let i=0;i<e.length;i++)ne(e[i],t[i],r,`${n}[${i}]`);else if(s===X&&o===s&&(i||Object.keys(e).length>=Object.keys(t).length)){const i=Object.keys(e);for(let s of i){const i=e[s],o=t[s],a=te(i),u=te(o);if(i!==o)if(a===ee&&u===a&&i.length>=o.length)for(let e=0;e<i.length;e++)ne(i[e],o[e],r,`${n?n+".":""}${s}[${e}]`);else if(a===X&&u===a&&Object.keys(i).length>=Object.keys(o).length)for(let e in i)ne(i[e],o[e],r,`${n?n+".":""}${s}.${e}`);else r[`${n?n+".":""}${s}`]=i}}else r[n]=e};const ie=e=>"function"!=typeof e?e:(t={})=>new Promise(((r,n)=>{e(Object.assign(t,{success:r,fail:n}))}));var se={diff:function(e,t){const r={};return(e=>{if(te(e)===X)for(let t in e)if(/\w+\.\w+/g.test(t)&&-1===t.indexOf("[")){const r=t.split(".");let n=e,i=r.length;for(let e=0;e<i-1;e++){const t=r[e];te(n[t])!==X&&(n[t]={}),n=n[t]}n[r[i-1]]=e[t],delete e[t]}})(e),re(e,t,!0),ne(e,t,r,"",!0),r},promixify:ie,run:(e,t={})=>{if(e)return z.run(ie(e)(t))},formatList:(e,t,r)=>(e||[]).reduce(((e,n,i)=>Object.assign(Object.assign({},e),{[`${r}[${t+i}]`]:n})),{}),ruleValidator:(e,t)=>!!t&&(!Array.isArray(t)||!(t.length<=0)&&t.every((e=>!!e)))};function oe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}const ae=function(e,{sep:t="&",eq:r="=",max:n=1e3,multiple:i=!1}={}){t=t||"&",r=r||"=";const s={};if("string"!=typeof e||0===e.length)return s;const o=/\+/g,a=n||1e3;let u=(e=e.split(t)).length;a>0&&u>a&&(u=a);for(let t=0;t<u;++t){let n,a,u,l,c=e[t].replace(o,"%20"),f=c.indexOf(r);f>=0?(n=c.substr(0,f),a=c.substr(f+1)):(n=c,a=""),u=decodeURIComponent(n),l=decodeURIComponent(a),oe(s,u)&&i?Array.isArray(s[u])?s[u].push(l):s[u]=[s[u],l]:s[u]=l}return s},ue=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}},le=function(e,{sep:t="&",eq:r="=",name:n=null,multiple:i=!1}={}){return t=t||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(n){const s=encodeURIComponent(ue(n))+r;return i&&Array.isArray(e[n])?e[n].map((function(e){return s+encodeURIComponent(ue(e))})).join(t):s+encodeURIComponent(ue(e[n]))})).filter(Boolean).join(t):n?encodeURIComponent(ue(n))+r+encodeURIComponent(ue(e)):""};var ce={parse:ae,decode:ae,stringify:le,encode:le,useHttps:function(e){if(!e)return e;const t=e.trim();return"string"!=typeof e?e:t.indexOf("https")<0?t.replace("http","https"):t}};const fe=/%[sdj%]/g;let de=()=>{};function ge(e){if(!e||!e.length)return null;const t={};return e.forEach((e=>{const r=e.field;t[r]=t[r]||[],t[r].push(e)})),t}function pe(e,...t){let r=0;const n=t.length;if("function"==typeof e)return e.apply(null,t);if("string"==typeof e){return e.replace(fe,(e=>{if("%%"===e)return"%";if(r>=n)return e;switch(e){case"%s":return String(t[r++]);case"%d":return Number(t[r++]);case"%j":try{return JSON.stringify(t[r++])}catch(e){return"[Circular]"}break;default:return e}}))}return e}function he(e,t){return null==e||(!("array"!==t||!Array.isArray(e)||e.length)||!(!function(e){return"string"===e||"url"===e||"hex"===e||"email"===e||"date"===e||"pattern"===e}(t)||"string"!=typeof e||e))}function ye(e,t,r){let n=0;const i=e.length;!function s(o){if(o&&o.length)return void r(o);const a=n;n+=1,a<i?t(e[a],s):r([])}([])}"undefined"!=typeof process&&process.env&&"production"!==process.env.NODE_ENV&&"undefined"!=typeof window&&"undefined"!=typeof document&&(de=(e,t)=>{"undefined"!=typeof console&&console.warn&&"undefined"==typeof ASYNC_VALIDATOR_NO_WARNING&&t.every((e=>"string"==typeof e))&&console.warn(e,t)});class me extends Error{constructor(e,t){super("Async Validation Error"),this.errors=e,this.fields=t}}function be(e,t,r,n,i){if(t.first){const t=new Promise(((t,s)=>{const o=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push(...e[r]||[])})),t}(e);ye(o,r,(e=>(n(e),e.length?s(new me(e,ge(e))):t(i))))}));return t.catch((e=>e)),t}const s=!0===t.firstFields?Object.keys(e):t.firstFields||[],o=Object.keys(e),a=o.length;let u=0;const l=[],c=new Promise(((t,c)=>{const f=e=>{if(l.push.apply(l,e),u++,u===a)return n(l),l.length?c(new me(l,ge(l))):t(i)};o.length||(n(l),t(i)),o.forEach((t=>{const n=e[t];-1!==s.indexOf(t)?ye(n,r,f):function(e,t,r){const n=[];let i=0;const s=e.length;function o(e){n.push(...e||[]),i++,i===s&&r(n)}e.forEach((e=>{t(e,o)}))}(n,r,f)}))}));return c.catch((e=>e)),c}function ve(e,t){return r=>{let n;return n=e.fullFields?function(e,t){let r=e;for(let e=0;e<t.length;e++){if(null==r)return r;r=r[t[e]]}return r}(t,e.fullFields):t[r.field||e.fullField],(i=r)&&void 0!==i.message?(r.field=r.field||e.fullField,r.fieldValue=n,r):{message:"function"==typeof r?r():r,fieldValue:n,field:r.field||e.fullField};var i}}function we(e,t){if(t)for(const r in t)if(t.hasOwnProperty(r)){const n=t[r];"object"==typeof n&&"object"==typeof e[r]?e[r]=Object.assign(Object.assign({},e[r]),n):e[r]=n}return e}const Oe=(e,t,r,n,i,s)=>{!e.required||r.hasOwnProperty(e.field||"")&&!he(t,s||e.type)||n.push(pe(i.messages.required,e.fullField))};let je;const $e=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,Ae=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,qe={integer:e=>qe.number(e)&&parseInt(e,10)===e,float:e=>qe.number(e)&&!qe.integer(e),array:e=>Array.isArray(e),regexp(e){if(e instanceof RegExp)return!0;try{return!!new RegExp(e)}catch(e){return!1}},date:e=>"function"==typeof e.getTime&&"function"==typeof e.getMonth&&"function"==typeof e.getYear&&!isNaN(e.getTime()),number:e=>!isNaN(e)&&"number"==typeof e,object:e=>"object"==typeof e&&!qe.array(e),method:e=>"function"==typeof e,email:e=>"string"==typeof e&&e.length<=320&&!!e.match($e),url:e=>"string"==typeof e&&e.length<=2048&&!!e.match((()=>{if(je)return je;const e="[a-fA-F\\d:]",t=t=>t&&t.includeBoundaries?`(?:(?<=\\s|^)(?=${e})|(?<=${e})(?=\\s|$))`:"",r="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",n="[a-fA-F\\d]{1,4}",i=`\n(?:\n(?:${n}:){7}(?:${n}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${n}:){6}(?:${r}|:${n}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${n}:){5}(?::${r}|(?::${n}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${n}:){4}(?:(?::${n}){0,1}:${r}|(?::${n}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${n}:){3}(?:(?::${n}){0,2}:${r}|(?::${n}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${n}:){2}(?:(?::${n}){0,3}:${r}|(?::${n}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${n}:){1}(?:(?::${n}){0,4}:${r}|(?::${n}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${n}){0,5}:${r}|(?::${n}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),s=new RegExp(`(?:^${r}$)|(?:^${i}$)`),o=new RegExp(`^${r}$`),a=new RegExp(`^${i}$`),u=e=>e&&e.exact?s:new RegExp(`(?:${t(e)}${r}${t(e)})|(?:${t(e)}${i}${t(e)})`,"g");u.v4=e=>e&&e.exact?o:new RegExp(`${t(e)}${r}${t(e)}`,"g"),u.v6=e=>e&&e.exact?a:new RegExp(`${t(e)}${i}${t(e)}`,"g");const l=u.v4().source,c=u.v6().source;return je=new RegExp(`(?:^(?:(?:(?:[a-z]+:)?//)|www\\.)(?:\\S+(?::\\S*)?@)?(?:localhost|${l}|${c}|(?:(?:[a-z\\u00a1-\\uffff0-9][-_]*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:[/?#][^\\s"]*)?$)`,"i"),je})()),hex:e=>"string"==typeof e&&!!e.match(Ae)},Fe="enum";var xe={required:Oe,whitespace:(e,t,r,n,i)=>{(/^\s+$/.test(t)||""===t)&&n.push(pe(i.messages.whitespace,e.fullField))},type:(e,t,r,n,i)=>{if(e.required&&void 0===t)return void Oe(e,t,r,n,i);const s=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(s)>-1?qe[s](t)||n.push(pe(i.messages.types[s],e.fullField,e.type)):s&&typeof t!==e.type&&n.push(pe(i.messages.types[s],e.fullField,e.type))},range:(e,t,r,n,i)=>{const s="number"==typeof e.len,o="number"==typeof e.min,a="number"==typeof e.max,u=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;let l=t,c="";const f="number"==typeof t,d="string"==typeof t,g=Array.isArray(t);if(f?c="number":d?c="string":g&&(c="array"),!c)return!1;g&&(l=t.length),d&&(l=t.replace(u,"_").length),s?l!==e.len&&n.push(pe(i.messages[c].len,e.fullField,e.len)):o&&!a&&l<e.min?n.push(pe(i.messages[c].min,e.fullField,e.min)):a&&!o&&l>e.max?n.push(pe(i.messages[c].max,e.fullField,e.max)):o&&a&&(l<e.min||l>e.max)&&n.push(pe(i.messages[c].range,e.fullField,e.min,e.max))},enum:(e,t,r,n,i)=>{e[Fe]=Array.isArray(e[Fe])?e[Fe]:[],-1===e[Fe].indexOf(t)&&n.push(pe(i.messages[Fe],e.fullField,e[Fe].join(", ")))},pattern:(e,t,r,n,i)=>{if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(pe(i.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(pe(i.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};const Se=(e,t,r,n,i)=>{const s=e.type,o=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t,s)&&!e.required)return r();xe.required(e,t,n,o,i,s),he(t,s)||xe.type(e,t,n,o,i)}r(o)};var Ee={string:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field||"")){if(he(t,"string")&&!e.required)return r();xe.required(e,t,n,s,i,"string"),he(t,"string")||(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i),xe.pattern(e,t,n,s,i),!0===e.whitespace&&xe.whitespace(e,t,n,s,i))}r(s)},method:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},number:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},boolean:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},regexp:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),he(t)||xe.type(e,t,n,s,i)}r(s)},integer:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},float:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},array:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(null==t&&!e.required)return r();xe.required(e,t,n,s,i,"array"),null!=t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},object:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},enum:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.enum(e,t,n,s,i)}r(s)},pattern:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t,"string")&&!e.required)return r();xe.required(e,t,n,s,i),he(t,"string")||xe.pattern(e,t,n,s,i)}r(s)},date:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t,"date")&&!e.required)return r();if(xe.required(e,t,n,s,i),!he(t,"date")){let r;r=t instanceof Date?t:new Date(t),xe.type(e,r,n,s,i),r&&xe.range(e,r.getTime(),n,s,i)}}r(s)},url:Se,hex:Se,email:Se,required:(e,t,r,n,i)=>{const s=[],o=Array.isArray(t)?"array":typeof t;xe.required(e,t,n,s,i,o),r(s)},any:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(he(t)&&!e.required)return r();xe.required(e,t,n,s,i)}r(s)}};function Pe(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone(){const e=JSON.parse(JSON.stringify(this));return e.clone=this.clone,e}}}const ke=Pe();class Me{constructor(e){this.rules={},this._messages=ke,this.define(e)}define(e){if(!e)throw new Error("Cannot configure a schema with no rules");if("object"!=typeof e||Array.isArray(e))throw new Error("Rules must be an object");this.rules={},Object.keys(e).forEach((t=>{const r=e[t];this.rules[t]=Array.isArray(r)?r:[r]}))}messages(e){return e&&(this._messages=we(Pe(),e)),this._messages}validate(e,t={},r=(()=>{})){let n=e,i=t,s=r;if("function"==typeof i&&(s=i,i={}),!this.rules||0===Object.keys(this.rules).length)return s&&s(null,n),Promise.resolve(n);if(i.messages){let e=this.messages();e===ke&&(e=Pe()),we(e,i.messages),i.messages=e}else i.messages=this.messages();const o={};(i.keys||Object.keys(this.rules)).forEach((t=>{const r=this.rules[t];let i=n[t];r.forEach((r=>{let s=r;"function"==typeof s.transform&&(n===e&&(n=Object.assign({},n)),i=n[t]=s.transform(i)),s="function"==typeof s?{validator:s}:Object.assign({},s),s.validator=this.getValidationMethod(s),s.validator&&(s.field=t,s.fullField=s.fullField||t,s.type=this.getType(s),o[t]=o[t]||[],o[t].push({rule:s,value:i,source:n,field:t}))}))}));const a={};return be(o,i,((e,t)=>{var r;const s=e.rule;let o,u=!("object"!==s.type&&"array"!==s.type||"object"!=typeof s.fields&&"object"!=typeof s.defaultField);function l(e,t){return Object.assign(Object.assign({},t),{fullField:`${s.fullField}.${e}`,fullFields:s.fullFields?[...s.fullFields,e]:[e]})}function c(r=[]){let o=Array.isArray(r)?r:[r];!0===i.suppressWarning&&o.length&&Me.warning("async-validator:",o),o.length&&void 0!==s.message&&(o=[].concat(s.message));let c=o.map(ve(s,n));if(i.first&&c.length)return a[s.field]=1,t(c);if(u){if(s.required&&!e.value)return void 0!==s.message?c=[].concat(s.message).map(ve(s,n)):i.error&&(c=[i.error(s,pe(i.messages.required,s.field))]),t(c);let r={};s.defaultField&&Object.keys(e.value).map((e=>{r[e]=s.defaultField})),r=Object.assign(Object.assign({},r),e.rule.fields);const o={};Object.keys(r).forEach((e=>{const t=r[e],n=Array.isArray(t)?t:[t];o[e]=n.map(l.bind(null,e))}));const a=new Me(o);a.messages(i.messages),e.rule.options&&(e.rule.options.messages=i.messages,e.rule.options.error=i.error),a.validate(e.value,e.rule.options||i,(e=>{const r=[];c&&c.length&&r.push(...c),e&&e.length&&r.push(...e),t(r.length?r:null)}))}else t(c)}if(u=u&&(s.required||!s.required&&e.value),s.field=e.field,s.asyncValidator)o=s.asyncValidator(s,e.value,c,e.source,i);else if(s.validator){try{o=s.validator(s,e.value,c,e.source,i)}catch(e){null===(r=console.error)||void 0===r||r.call(console,e),i.suppressValidatorError||setTimeout((()=>{throw e}),0),c(e.message)}!0===o?c():!1===o?c("function"==typeof s.message?s.message(s.fullField||s.field):s.message||`${s.fullField||s.field} fails`):o instanceof Array?c(o):o instanceof Error&&c(o.message)}o&&o.then&&o.then((()=>c()),(e=>c(e)))}),(e=>{!function(e){let t=[],r={};for(let r=0;r<e.length;r++)i=e[r],Array.isArray(i)?t=t.concat(...i):t.push(i);var i;t.length?(r=ge(t),s(t,r)):s(null,n)}(e)}),n)}getType(e){if(void 0===e.type&&e.pattern instanceof RegExp&&(e.type="pattern"),"function"!=typeof e.validator&&e.type&&!Ee.hasOwnProperty(e.type))throw new Error(pe("Unknown rule type %s",e.type));return e.type||"string"}getValidationMethod(e){if("function"==typeof e.validator)return e.validator;const t=Object.keys(e),r=t.indexOf("message");return-1!==r&&t.splice(r,1),1===t.length&&"required"===t[0]?Ee.required:Ee[this.getType(e)]||void 0}}function Re(e){return new Me(e)}Me.register=function(e,t){if("function"!=typeof t)throw new Error("Cannot register a validator by type, validator is not a function");Ee[e]=t},Me.warning=de,Me.messages=ke,Me.validators=Ee;var De={validateId:function(e){return!!e&&(!(e.length<6)&&!!/^[A-Za-z0-9_-]+$/.test(e))},validatePhone:function(e){return!!e&&!!/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/.test(e)},validator:Re,validate:function(e,t,r={},n=(()=>{})){return z.run(Re(e).validate(t,r,n))}};function Te(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{u(n.next(e))}catch(e){s(e)}}function a(e){try{u(n.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}u((n=n.apply(e,t||[])).next())}))}class Ne extends K{constructor(){super(),this.getters={},this.setters={},this.actions={}}dispatch(e,t=void 0){return Te(this,void 0,void 0,(function*(){const r=Reflect.get(this.actions,e);if(!A.isFunction(r))return;const[,n]=yield z.run(r(this,t));return n}))}getByOnce(e){return Te(this,void 0,void 0,(function*(){const t=Reflect.get(this,e);let r;return r=null!=t&&""!==t?JSON.parse(JSON.stringify(t)):yield this.dispatch(e),r}))}}var Ce={gbk:e,time:n,hook:z,math:U,util:G,list:Q,mini:se,url:ce,rule:De,DEvent:K,store:Ne,storeRef:e=>{const t=Object.assign(new Ne,e||{});return new Proxy(t,{get:(e,t,r)=>{const n=Reflect.get(e.getters,t);return A.isFunction(n)?n():Reflect.get(e,t,r)},set:(e,t,r,n)=>{const i=Reflect.get(e.setters,t);if(A.isFunction(i)&&!i(r))return!0;const s=Reflect.set(e,t,r,n);return s&&e.emit(t.toString(),r),s},has:(e,t)=>Reflect.has(e,t)})}};export{Ce as default};
|
package/bin/ddan-js.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).ddan=t()}(this,(function(){"use strict";var e={gbkLength:function(e){let t=0;if(!e)return 0;for(let r=0;r<e.length;r++)e.charCodeAt(r)>127||94===e.charCodeAt(r)?t+=2:t++;return t},gbkCut:function(e,t){if(!e||t<=0)return"";let r=0,n=0;for(let i=0;i<e.length&&(e.charCodeAt(i)>127||94===e.charCodeAt(i)?r+=2:r++,!(r>t));i++)n=i;return e.substr(0,n+1)}};const t=(e,t="yyyy-MM-dd hh:mm:ss")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e,n={};return n.yyyy=r.getFullYear(),n.yy=`${n.yyyy}`.substr(2),n.M=r.getMonth()+1,n.MM=(n.M<10?"0":"")+n.M,n.d=r.getDate(),n.dd=(n.d<10?"0":"")+n.d,n.h=r.getHours(),n.hh=(n.h<10?"0":"")+n.h,n.m=r.getMinutes(),n.mm=(n.m<10?"0":"")+n.m,n.s=r.getSeconds(),n.ss=(n.s<10?"0":"")+n.s,n.S=r.getMilliseconds(),n.SS=(n.S<10?"0":"")+n.S,n.SSS=n.S.toString().padStart(3,0),t.replace(/\byyyy|yy|MM|M|dd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>n[e]))};function r(){return Date.now()}var n={now:r,isToday:e=>(new Date).toDateString()===new Date(e).toDateString(),format:t,parseTime:function({year:e=0,month:r=0,date:n=0,hour:i=0,minute:s=0,second:o=0}){const u=`${e||"yyyy"}/${r||"MM"}/${n||"dd"} ${i}:${s}:${o}`;return new Date(t(Date.now(),u)).getTime()},todayZero:()=>new Date(t(r(),"yyyy/MM/dd 00:00:00")).getTime(),oneDay:864e5,oneHour:36e5,oneMinute:6e4,oneSecond:1e3},i="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self;const o=(i||s||Function("return this")()).Symbol,{toString:u,hasOwnProperty:a,propertyIsEnumerable:l}=Object.prototype,c=o?o.toStringTag:void 0;function f(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":c&&c in Object(e)?function(e){const t=a.call(e,c),r=e[c];let n=!1;try{e[c]=void 0,n=!0}catch(e){}const i=u.call(e);return n&&(t?e[c]=r:delete e[c]),i}(e):u.call(e)}var d={getTag:f,getType:function(e){return(f(e).match(/\w+/g)||["object","Undefined"])[1]||""},toString:u,hasOwnProperty:a,propertyIsEnumerable:l},g="[object Function]",p="[object GeneratorFunction]",y="[object AsyncFunction]",h=9007199254740991;const m=/^(?:0|[1-9]\d*)$/;function b(e){const t=typeof e;return null!=e&&("object"==t||"function"==t)}function v(e){return null!=e&&"object"==typeof e}const w=Array.isArray;function O(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=h}(e.length)&&!$(e)}function j(e){return v(e)&&O(e)}function $(e){var t=b(e)?d.getTag(e):"";return t===g||t===p||t===y}var A={is:function(e,t){return d.getTag(e)===`[object ${t}]`},isNumber:function(e){return"[object Number]"===d.getTag(e)},isString:function(e){return"string"==typeof e||!w(e)&&v(e)&&"[object String]"==d.getTag(e)},isChinese:function(e){return!!e&&!!/^[\u4E00-\u9FA5]+$/.test(e)},isObject:b,isObjectLike:v,isSymbol:function(e){return"symbol"==typeof e||v(e)&&"[object Symbol]"===d.getTag(e)},isFunction:$,isArray:w,isArrayLikeObject:j,isIndex:function(e,t){return!!(t=null==t?h:t)&&("number"==typeof e||m.test(e))&&e>-1&&e%1==0&&e<t},isArrayLike:O,isPrototype:function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Object.prototype)},isArguments:function(e){return j(e)&&d.hasOwnProperty.call(e,"callee")&&(!d.propertyIsEnumerable.call(e,"callee")||"[object Arguments]"==d.toString.call(e))},isPromise:function(e){return"[object Promise]"===(b(e)?d.getTag(e):"")}};const q=NaN,F=/^\s+|\s+$/g,x=/^[-+]0x[0-9a-f]+$/i,S=/^0b[01]+$/i,E=/^0o[0-7]+$/i,P=parseInt,k=1/0,M=17976931348623157e292;function R(e){if("number"==typeof e)return e;if(A.isSymbol(e))return q;if(A.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=A.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(F,"");const t=S.test(e);return t||E.test(e)?P(e.slice(2),t?2:8):x.test(e)?q:+e}function T(e){return e?(e=R(e))===k||e===-k?(e<0?-1:1)*M:e==e?e:0:0===e?e:0}var D={toNumber:R,toFinite:T,toInteger:function(e){var t=T(e),r=t%1;return t==t?r?t-r:t:0}};const N="Expected a function",C=Math.max,I=Math.min;function _(e,t=0,r={}){var n,i,s,o,u,a,l=0,c=!1,f=!1,d=!0;if("function"!=typeof e)throw new TypeError(N);function g(t){var r=n,s=i;return n=i=void 0,l=t,o=e.apply(s,r)}function p(e){var r=e-a;return void 0===a||r>=t||r<0||f&&e-l>=s}function y(){var e=Date.now();if(p(e))return h(e);u=setTimeout(y,function(e){var r=t-(e-a);return f?I(r,s-(e-l)):r}(e))}function h(e){return u=void 0,d&&n?g(e):(n=i=void 0,o)}function m(...e){var r=Date.now(),s=p(r);if(n=arguments,i=this,a=r,s){if(void 0===u)return function(e){return l=e,u=setTimeout(y,t),c?g(e):o}(a);if(f)return u=setTimeout(y,t),g(a)}return void 0===u&&(u=setTimeout(y,t)),o}return t=D.toNumber(t)||0,A.isObject(r)&&(c=!!r.leading,s=(f="maxWait"in r)?C(D.toNumber(r.maxWait)||0,t):s,d="trailing"in r?!!r.trailing:d),m.cancel=function(){void 0!==u&&clearTimeout(u),l=0,n=a=i=u=void 0},m.flush=function(){return void 0===u?o:h(Date.now())},m}class V{constructor(e){this.source=e}run(){let e;try{let t;return t=A.isFunction(this.source)?this.source():this.source,e=A.isPromise(t)?t:Promise.resolve(t),e.then((e=>[null,e])).catch((e=>[e,void 0]))}catch(e){return Promise.resolve([e,void 0])}}}var z={sleep:(e=1e3)=>new Promise((t=>{setTimeout(t,e)})),run:e=>new V(e).run(),debounce:_,throttle:function(e,t=0,r={}){var n=!1,i=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return A.isObject(r)&&(n=r.leading?!!r.leading:n,i=r.trailing?!!r.trailing:i),_(e,t,{leading:n,maxWait:t,trailing:i})}};var U={random:function(e){return Math.floor(Math.random()*e)},randomRange:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},lerp:function(e,t,r){return e*(1-r)+t*r},randomString:function(e,t=!1){e=e||32;const r="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";let i="";for(let t=0;t<e;t++)i+=r.charAt(Math.floor(62*Math.random()));return t?n.format(new Date,"yyyyMMddhhmmss")+i:i}};function L(e){return e!=e}function B(e,t){return function(e,t){for(var r=-1,n=e?e.length:0,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}(t,(function(t){return e[t]}))}var J,W,Z=(J=Object.keys,W=Object,function(e){return J(W(e))}),H=Math.max;function Y(e,t){var r=A.isArray(e)||A.isArguments(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,i=!!n;for(var s in e)!t&&!d.hasOwnProperty.call(e,s)||i&&("length"==s||A.isIndex(s,n))||r.push(s);return r}var G=Object.assign(Object.assign(Object.assign({},A),d),{includes:function(e,t,r,n){e=A.isArrayLike(e)?e:function(e){return e?B(e,function(e){return A.isArrayLike(e)?Y(e):function(e){if(!A.isPrototype(e))return Z(e);var t=[];for(var r in Object(e))d.hasOwnProperty.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}(e)):[]}(e),r=r&&!n?D.toInteger(r):0;var i=e.length;return r<0&&(r=H(i+r,0)),A.isString(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&function(e,t,r){if(t!=t)return function(e,t,r,n){for(var i=e.length,s=r+(n?1:-1);n?s--:++s<i;)if(t(e[s],s,e))return s;return-1}(e,L,r);for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}(e,t,r)>-1},merge:function(e,t){return t?e?(Object.keys(t).forEach((r=>{Array.isArray(e[r])&&Array.isArray(t[r])?e[r]=e[r].concat(t[r]):"object"==typeof e[r]&&"object"==typeof t[r]?e[r]=Object.assign(e[r],t[r]):e[r]=t[r]})),e):t:e},compareArray:function(e,t){if(!Array.isArray(e)||!Array.isArray(t))return!1;if(e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(e[r]!==t[r])return!1;return!0}});class K{constructor(){this._map=new Map}clear(){return this._map.clear(),this}on(e,t){if(!t)return this;let r=this._map.get(e);return r||(r=new Set,this._map.set(e,r)),r.add(t),this}emit(e,...t){const r=this._map.get(e);if(!r)return this;return[...r].forEach((e=>e(...t))),this}off(e="",t){if(!e)return this._map.clear(),this;if(!t)return this._map.delete(e.toString()),this;const r=this._map.get(e);return r?(r.delete(t),this):this}once(e,t){const r=(...n)=>{t(...n),this.off(e,r)};return this.on(e,r),this}has(e){return this._map.has(e)}}var Q={groupBy:(e,t)=>e.reduce(((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e)),{}),stepAction:function(e,t,r=100){if(!A.isFunction(t))return;if(!A.isArray(e)||e.length<=0)return;let n=0;for(;e.length>n;){let i=r+n,s=e.slice(n,i);t&&t(s),n=i}},skip:(e,t)=>{if(!A.isArray(e)||e.length<=0)return[];const r=t;return e.slice(r)},take:(e,t,r=0)=>{if(!A.isArray(e)||e.length<=0)return[];const n=r||0;if(n>=e.length)return[];const i=t+n;return e.slice(n,e.length<i?e.length:i)||[]},distinct:e=>!A.isArray(e)||e.length<=0?[]:[...new Set(e)]};const X="[object Object]",ee="[object Array]",te=e=>Object.prototype.toString.call(e),re=(e,t,r=!1)=>{if(e===t)return;const n=te(e);if(n===te(t))if(n===ee&&e.length>=t.length)for(let r=0;r<t.length;r++)re(e[r],t[r]);else if(n===X&&Object.keys(e).length>=Object.keys(t).length)for(let n in t)r||void 0!==e[n]?re(e[n],t[n]):e[n]=null},ne=(e,t,r,n="",i=!1)=>{if(e===t)return;const s=te(e),o=te(t);if(s===ee&&o===s&&e.length>=t.length)for(let i=0;i<e.length;i++)ne(e[i],t[i],r,`${n}[${i}]`);else if(s===X&&o===s&&(i||Object.keys(e).length>=Object.keys(t).length)){const i=Object.keys(e);for(let s of i){const i=e[s],o=t[s],u=te(i),a=te(o);if(i!==o)if(u===ee&&a===u&&i.length>=o.length)for(let e=0;e<i.length;e++)ne(i[e],o[e],r,`${n?n+".":""}${s}[${e}]`);else if(u===X&&a===u&&Object.keys(i).length>=Object.keys(o).length)for(let e in i)ne(i[e],o[e],r,`${n?n+".":""}${s}.${e}`);else r[`${n?n+".":""}${s}`]=i}}else r[n]=e};const ie=e=>"function"!=typeof e?e:(t={})=>new Promise(((r,n)=>{e(Object.assign(t,{success:r,fail:n}))}));var se={diff:function(e,t){const r={};return(e=>{if(te(e)===X)for(let t in e)if(/\w+\.\w+/g.test(t)&&-1===t.indexOf("[")){const r=t.split(".");let n=e,i=r.length;for(let e=0;e<i-1;e++){const t=r[e];te(n[t])!==X&&(n[t]={}),n=n[t]}n[r[i-1]]=e[t],delete e[t]}})(e),re(e,t,!0),ne(e,t,r,"",!0),r},promixify:ie,run:(e,t={})=>{if(e)return z.run(ie(e)(t))},formatList:function(e,t,r){return(e||[]).reduce(((e,n,i)=>Object.assign(Object.assign({},e),{[`${r}[${t+i}]`]:n})),{})},ruleValidator:function(e,t){return!!t&&(!Array.isArray(t)||!(t.length<=0)&&t.every((e=>!!e)))}};function oe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}const ue=function(e,{sep:t="&",eq:r="=",max:n=1e3,multiple:i=!1}={}){t=t||"&",r=r||"=";const s={};if("string"!=typeof e||0===e.length)return s;const o=/\+/g,u=n||1e3;let a=(e=e.split(t)).length;u>0&&a>u&&(a=u);for(let t=0;t<a;++t){let n,u,a,l,c=e[t].replace(o,"%20"),f=c.indexOf(r);f>=0?(n=c.substr(0,f),u=c.substr(f+1)):(n=c,u=""),a=decodeURIComponent(n),l=decodeURIComponent(u),oe(s,a)&&i?Array.isArray(s[a])?s[a].push(l):s[a]=[s[a],l]:s[a]=l}return s},ae=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}},le=function(e,{sep:t="&",eq:r="=",name:n=null,multiple:i=!1}={}){return t=t||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(n){const s=encodeURIComponent(ae(n))+r;return i&&Array.isArray(e[n])?e[n].map((function(e){return s+encodeURIComponent(ae(e))})).join(t):s+encodeURIComponent(ae(e[n]))})).filter(Boolean).join(t):n?encodeURIComponent(ae(n))+r+encodeURIComponent(ae(e)):""};var ce={parse:ue,decode:ue,stringify:le,encode:le,useHttps:function(e){if(!e)return e;const t=e.trim();return"string"!=typeof e?e:t.indexOf("https")<0?t.replace("http","https"):t}};const fe=/%[sdj%]/g;let de=()=>{};function ge(e){if(!e||!e.length)return null;const t={};return e.forEach((e=>{const r=e.field;t[r]=t[r]||[],t[r].push(e)})),t}function pe(e,...t){let r=0;const n=t.length;if("function"==typeof e)return e.apply(null,t);if("string"==typeof e){return e.replace(fe,(e=>{if("%%"===e)return"%";if(r>=n)return e;switch(e){case"%s":return String(t[r++]);case"%d":return Number(t[r++]);case"%j":try{return JSON.stringify(t[r++])}catch(e){return"[Circular]"}break;default:return e}}))}return e}function ye(e,t){return null==e||(!("array"!==t||!Array.isArray(e)||e.length)||!(!function(e){return"string"===e||"url"===e||"hex"===e||"email"===e||"date"===e||"pattern"===e}(t)||"string"!=typeof e||e))}function he(e,t,r){let n=0;const i=e.length;!function s(o){if(o&&o.length)return void r(o);const u=n;n+=1,u<i?t(e[u],s):r([])}([])}"undefined"!=typeof process&&process.env&&"production"!==process.env.NODE_ENV&&"undefined"!=typeof window&&"undefined"!=typeof document&&(de=(e,t)=>{"undefined"!=typeof console&&console.warn&&"undefined"==typeof ASYNC_VALIDATOR_NO_WARNING&&t.every((e=>"string"==typeof e))&&console.warn(e,t)});class me extends Error{constructor(e,t){super("Async Validation Error"),this.errors=e,this.fields=t}}function be(e,t,r,n,i){if(t.first){const t=new Promise(((t,s)=>{const o=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push(...e[r]||[])})),t}(e);he(o,r,(e=>(n(e),e.length?s(new me(e,ge(e))):t(i))))}));return t.catch((e=>e)),t}const s=!0===t.firstFields?Object.keys(e):t.firstFields||[],o=Object.keys(e),u=o.length;let a=0;const l=[],c=new Promise(((t,c)=>{const f=e=>{if(l.push.apply(l,e),a++,a===u)return n(l),l.length?c(new me(l,ge(l))):t(i)};o.length||(n(l),t(i)),o.forEach((t=>{const n=e[t];-1!==s.indexOf(t)?he(n,r,f):function(e,t,r){const n=[];let i=0;const s=e.length;function o(e){n.push(...e||[]),i++,i===s&&r(n)}e.forEach((e=>{t(e,o)}))}(n,r,f)}))}));return c.catch((e=>e)),c}function ve(e,t){return r=>{let n;return n=e.fullFields?function(e,t){let r=e;for(let e=0;e<t.length;e++){if(null==r)return r;r=r[t[e]]}return r}(t,e.fullFields):t[r.field||e.fullField],(i=r)&&void 0!==i.message?(r.field=r.field||e.fullField,r.fieldValue=n,r):{message:"function"==typeof r?r():r,fieldValue:n,field:r.field||e.fullField};var i}}function we(e,t){if(t)for(const r in t)if(t.hasOwnProperty(r)){const n=t[r];"object"==typeof n&&"object"==typeof e[r]?e[r]=Object.assign(Object.assign({},e[r]),n):e[r]=n}return e}const Oe=(e,t,r,n,i,s)=>{!e.required||r.hasOwnProperty(e.field||"")&&!ye(t,s||e.type)||n.push(pe(i.messages.required,e.fullField))};let je;const $e=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,Ae=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,qe={integer:e=>qe.number(e)&&parseInt(e,10)===e,float:e=>qe.number(e)&&!qe.integer(e),array:e=>Array.isArray(e),regexp(e){if(e instanceof RegExp)return!0;try{return!!new RegExp(e)}catch(e){return!1}},date:e=>"function"==typeof e.getTime&&"function"==typeof e.getMonth&&"function"==typeof e.getYear&&!isNaN(e.getTime()),number:e=>!isNaN(e)&&"number"==typeof e,object:e=>"object"==typeof e&&!qe.array(e),method:e=>"function"==typeof e,email:e=>"string"==typeof e&&e.length<=320&&!!e.match($e),url:e=>"string"==typeof e&&e.length<=2048&&!!e.match((()=>{if(je)return je;const e="[a-fA-F\\d:]",t=t=>t&&t.includeBoundaries?`(?:(?<=\\s|^)(?=${e})|(?<=${e})(?=\\s|$))`:"",r="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",n="[a-fA-F\\d]{1,4}",i=`\n(?:\n(?:${n}:){7}(?:${n}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${n}:){6}(?:${r}|:${n}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${n}:){5}(?::${r}|(?::${n}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${n}:){4}(?:(?::${n}){0,1}:${r}|(?::${n}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${n}:){3}(?:(?::${n}){0,2}:${r}|(?::${n}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${n}:){2}(?:(?::${n}){0,3}:${r}|(?::${n}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${n}:){1}(?:(?::${n}){0,4}:${r}|(?::${n}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${n}){0,5}:${r}|(?::${n}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),s=new RegExp(`(?:^${r}$)|(?:^${i}$)`),o=new RegExp(`^${r}$`),u=new RegExp(`^${i}$`),a=e=>e&&e.exact?s:new RegExp(`(?:${t(e)}${r}${t(e)})|(?:${t(e)}${i}${t(e)})`,"g");a.v4=e=>e&&e.exact?o:new RegExp(`${t(e)}${r}${t(e)}`,"g"),a.v6=e=>e&&e.exact?u:new RegExp(`${t(e)}${i}${t(e)}`,"g");const l=a.v4().source,c=a.v6().source;return je=new RegExp(`(?:^(?:(?:(?:[a-z]+:)?//)|www\\.)(?:\\S+(?::\\S*)?@)?(?:localhost|${l}|${c}|(?:(?:[a-z\\u00a1-\\uffff0-9][-_]*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:[/?#][^\\s"]*)?$)`,"i"),je})()),hex:e=>"string"==typeof e&&!!e.match(Ae)},Fe="enum";var xe={required:Oe,whitespace:(e,t,r,n,i)=>{(/^\s+$/.test(t)||""===t)&&n.push(pe(i.messages.whitespace,e.fullField))},type:(e,t,r,n,i)=>{if(e.required&&void 0===t)return void Oe(e,t,r,n,i);const s=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(s)>-1?qe[s](t)||n.push(pe(i.messages.types[s],e.fullField,e.type)):s&&typeof t!==e.type&&n.push(pe(i.messages.types[s],e.fullField,e.type))},range:(e,t,r,n,i)=>{const s="number"==typeof e.len,o="number"==typeof e.min,u="number"==typeof e.max,a=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;let l=t,c="";const f="number"==typeof t,d="string"==typeof t,g=Array.isArray(t);if(f?c="number":d?c="string":g&&(c="array"),!c)return!1;g&&(l=t.length),d&&(l=t.replace(a,"_").length),s?l!==e.len&&n.push(pe(i.messages[c].len,e.fullField,e.len)):o&&!u&&l<e.min?n.push(pe(i.messages[c].min,e.fullField,e.min)):u&&!o&&l>e.max?n.push(pe(i.messages[c].max,e.fullField,e.max)):o&&u&&(l<e.min||l>e.max)&&n.push(pe(i.messages[c].range,e.fullField,e.min,e.max))},enum:(e,t,r,n,i)=>{e[Fe]=Array.isArray(e[Fe])?e[Fe]:[],-1===e[Fe].indexOf(t)&&n.push(pe(i.messages[Fe],e.fullField,e[Fe].join(", ")))},pattern:(e,t,r,n,i)=>{if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(pe(i.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(pe(i.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};const Se=(e,t,r,n,i)=>{const s=e.type,o=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t,s)&&!e.required)return r();xe.required(e,t,n,o,i,s),ye(t,s)||xe.type(e,t,n,o,i)}r(o)};var Ee={string:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field||"")){if(ye(t,"string")&&!e.required)return r();xe.required(e,t,n,s,i,"string"),ye(t,"string")||(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i),xe.pattern(e,t,n,s,i),!0===e.whitespace&&xe.whitespace(e,t,n,s,i))}r(s)},method:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},number:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},boolean:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},regexp:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),ye(t)||xe.type(e,t,n,s,i)}r(s)},integer:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},float:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},array:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(null==t&&!e.required)return r();xe.required(e,t,n,s,i,"array"),null!=t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},object:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},enum:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.enum(e,t,n,s,i)}r(s)},pattern:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t,"string")&&!e.required)return r();xe.required(e,t,n,s,i),ye(t,"string")||xe.pattern(e,t,n,s,i)}r(s)},date:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t,"date")&&!e.required)return r();if(xe.required(e,t,n,s,i),!ye(t,"date")){let r;r=t instanceof Date?t:new Date(t),xe.type(e,r,n,s,i),r&&xe.range(e,r.getTime(),n,s,i)}}r(s)},url:Se,hex:Se,email:Se,required:(e,t,r,n,i)=>{const s=[],o=Array.isArray(t)?"array":typeof t;xe.required(e,t,n,s,i,o),r(s)},any:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i)}r(s)}};function Pe(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone(){const e=JSON.parse(JSON.stringify(this));return e.clone=this.clone,e}}}const ke=Pe();class Me{constructor(e){this.rules={},this._messages=ke,this.define(e)}define(e){if(!e)throw new Error("Cannot configure a schema with no rules");if("object"!=typeof e||Array.isArray(e))throw new Error("Rules must be an object");this.rules={},Object.keys(e).forEach((t=>{const r=e[t];this.rules[t]=Array.isArray(r)?r:[r]}))}messages(e){return e&&(this._messages=we(Pe(),e)),this._messages}validate(e,t={},r=(()=>{})){let n=e,i=t,s=r;if("function"==typeof i&&(s=i,i={}),!this.rules||0===Object.keys(this.rules).length)return s&&s(null,n),Promise.resolve(n);if(i.messages){let e=this.messages();e===ke&&(e=Pe()),we(e,i.messages),i.messages=e}else i.messages=this.messages();const o={};(i.keys||Object.keys(this.rules)).forEach((t=>{const r=this.rules[t];let i=n[t];r.forEach((r=>{let s=r;"function"==typeof s.transform&&(n===e&&(n=Object.assign({},n)),i=n[t]=s.transform(i)),s="function"==typeof s?{validator:s}:Object.assign({},s),s.validator=this.getValidationMethod(s),s.validator&&(s.field=t,s.fullField=s.fullField||t,s.type=this.getType(s),o[t]=o[t]||[],o[t].push({rule:s,value:i,source:n,field:t}))}))}));const u={};return be(o,i,((e,t)=>{var r;const s=e.rule;let o,a=!("object"!==s.type&&"array"!==s.type||"object"!=typeof s.fields&&"object"!=typeof s.defaultField);function l(e,t){return Object.assign(Object.assign({},t),{fullField:`${s.fullField}.${e}`,fullFields:s.fullFields?[...s.fullFields,e]:[e]})}function c(r=[]){let o=Array.isArray(r)?r:[r];!0===i.suppressWarning&&o.length&&Me.warning("async-validator:",o),o.length&&void 0!==s.message&&(o=[].concat(s.message));let c=o.map(ve(s,n));if(i.first&&c.length)return u[s.field]=1,t(c);if(a){if(s.required&&!e.value)return void 0!==s.message?c=[].concat(s.message).map(ve(s,n)):i.error&&(c=[i.error(s,pe(i.messages.required,s.field))]),t(c);let r={};s.defaultField&&Object.keys(e.value).map((e=>{r[e]=s.defaultField})),r=Object.assign(Object.assign({},r),e.rule.fields);const o={};Object.keys(r).forEach((e=>{const t=r[e],n=Array.isArray(t)?t:[t];o[e]=n.map(l.bind(null,e))}));const u=new Me(o);u.messages(i.messages),e.rule.options&&(e.rule.options.messages=i.messages,e.rule.options.error=i.error),u.validate(e.value,e.rule.options||i,(e=>{const r=[];c&&c.length&&r.push(...c),e&&e.length&&r.push(...e),t(r.length?r:null)}))}else t(c)}if(a=a&&(s.required||!s.required&&e.value),s.field=e.field,s.asyncValidator)o=s.asyncValidator(s,e.value,c,e.source,i);else if(s.validator){try{o=s.validator(s,e.value,c,e.source,i)}catch(e){null===(r=console.error)||void 0===r||r.call(console,e),i.suppressValidatorError||setTimeout((()=>{throw e}),0),c(e.message)}!0===o?c():!1===o?c("function"==typeof s.message?s.message(s.fullField||s.field):s.message||`${s.fullField||s.field} fails`):o instanceof Array?c(o):o instanceof Error&&c(o.message)}o&&o.then&&o.then((()=>c()),(e=>c(e)))}),(e=>{!function(e){let t=[],r={};for(let r=0;r<e.length;r++)i=e[r],Array.isArray(i)?t=t.concat(...i):t.push(i);var i;t.length?(r=ge(t),s(t,r)):s(null,n)}(e)}),n)}getType(e){if(void 0===e.type&&e.pattern instanceof RegExp&&(e.type="pattern"),"function"!=typeof e.validator&&e.type&&!Ee.hasOwnProperty(e.type))throw new Error(pe("Unknown rule type %s",e.type));return e.type||"string"}getValidationMethod(e){if("function"==typeof e.validator)return e.validator;const t=Object.keys(e),r=t.indexOf("message");return-1!==r&&t.splice(r,1),1===t.length&&"required"===t[0]?Ee.required:Ee[this.getType(e)]||void 0}}function Re(e){return new Me(e)}Me.register=function(e,t){if("function"!=typeof t)throw new Error("Cannot register a validator by type, validator is not a function");Ee[e]=t},Me.warning=de,Me.messages=ke,Me.validators=Ee;var Te={validateId:function(e){return!!e&&(!(e.length<6)&&!!/^[A-Za-z0-9_-]+$/.test(e))},validatePhone:function(e){return!!e&&!!/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/.test(e)},validator:Re,validate:function(e,t,r={},n=(()=>{})){return z.run(Re(e).validate(t,r,n))}};function De(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{a(n.next(e))}catch(e){s(e)}}function u(e){try{a(n.throw(e))}catch(e){s(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,u)}a((n=n.apply(e,t||[])).next())}))}class Ne extends K{constructor(){super(),this.getters={},this.setters={},this.actions={}}dispatch(e,t=void 0){return De(this,void 0,void 0,(function*(){const r=Reflect.get(this.actions,e);if(!A.isFunction(r))return;const[,n]=yield z.run(r(this,t));return n}))}getByOnce(e){return De(this,void 0,void 0,(function*(){const t=Reflect.get(this,e);let r;return r=null!=t&&""!==t?JSON.parse(JSON.stringify(t)):yield this.dispatch(e),r}))}}return{gbk:e,time:n,hook:z,math:U,util:G,list:Q,mini:se,url:ce,rule:Te,DEvent:K,store:Ne,storeRef:e=>{const t=Object.assign(new Ne,e||{});return new Proxy(t,{get:(e,t,r)=>{const n=Reflect.get(e.getters,t);return A.isFunction(n)?n():Reflect.get(e,t,r)},set:(e,t,r,n)=>{const i=Reflect.get(e.setters,t);if(A.isFunction(i)&&!i(r))return!0;const s=Reflect.set(e,t,r,n);return s&&e.emit(t.toString(),r),s},has:(e,t)=>Reflect.has(e,t)})}}}));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).ddan=t()}(this,(function(){"use strict";var e={gbkLength:function(e){let t=0;if(!e)return 0;for(let r=0;r<e.length;r++)e.charCodeAt(r)>127||94===e.charCodeAt(r)?t+=2:t++;return t},gbkCut:function(e,t){if(!e||t<=0)return"";let r=0,n=0;for(let i=0;i<e.length&&(e.charCodeAt(i)>127||94===e.charCodeAt(i)?r+=2:r++,!(r>t));i++)n=i;return e.substr(0,n+1)}};const t=(e,t="yyyy-MM-dd hh:mm:ss")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e,n={};return n.yyyy=r.getFullYear(),n.yy=`${n.yyyy}`.substr(2),n.M=r.getMonth()+1,n.MM=(n.M<10?"0":"")+n.M,n.d=r.getDate(),n.dd=(n.d<10?"0":"")+n.d,n.h=r.getHours(),n.hh=(n.h<10?"0":"")+n.h,n.m=r.getMinutes(),n.mm=(n.m<10?"0":"")+n.m,n.s=r.getSeconds(),n.ss=(n.s<10?"0":"")+n.s,n.S=r.getMilliseconds(),n.SS=(n.S<10?"0":"")+n.S,n.SSS=n.S.toString().padStart(3,0),t.replace(/\byyyy|yy|MM|M|dd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>n[e]))};function r(){return Date.now()}var n={now:r,isToday:e=>(new Date).toDateString()===new Date(e).toDateString(),format:t,parseTime:function({year:e=0,month:r=0,date:n=0,hour:i=0,minute:s=0,second:o=0}){const a=`${e||"yyyy"}/${r||"MM"}/${n||"dd"} ${i}:${s}:${o}`;return new Date(t(Date.now(),a)).getTime()},todayZero:()=>new Date(t(r(),"yyyy/MM/dd 00:00:00")).getTime(),oneDay:864e5,oneHour:36e5,oneMinute:6e4,oneSecond:1e3},i="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self;const o=(i||s||Function("return this")()).Symbol,{toString:a,hasOwnProperty:u,propertyIsEnumerable:l}=Object.prototype,c=o?o.toStringTag:void 0;function f(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":c&&c in Object(e)?function(e){const t=u.call(e,c),r=e[c];let n=!1;try{e[c]=void 0,n=!0}catch(e){}const i=a.call(e);return n&&(t?e[c]=r:delete e[c]),i}(e):a.call(e)}var d={getTag:f,getType:function(e){return(f(e).match(/\w+/g)||["object","Undefined"])[1]||""},toString:a,hasOwnProperty:u,propertyIsEnumerable:l},g="[object Function]",p="[object GeneratorFunction]",y="[object AsyncFunction]",h=9007199254740991;const m=/^(?:0|[1-9]\d*)$/;function b(e){const t=typeof e;return null!=e&&("object"==t||"function"==t)}function v(e){return null!=e&&"object"==typeof e}const w=Array.isArray;function O(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=h}(e.length)&&!$(e)}function j(e){return v(e)&&O(e)}function $(e){var t=b(e)?d.getTag(e):"";return t===g||t===p||t===y}var A={is:function(e,t){return d.getTag(e)===`[object ${t}]`},isNumber:function(e){return"[object Number]"===d.getTag(e)},isString:function(e){return"string"==typeof e||!w(e)&&v(e)&&"[object String]"==d.getTag(e)},isChinese:function(e){return!!e&&!!/^[\u4E00-\u9FA5]+$/.test(e)},isObject:b,isObjectLike:v,isSymbol:function(e){return"symbol"==typeof e||v(e)&&"[object Symbol]"===d.getTag(e)},isFunction:$,isArray:w,isArrayLikeObject:j,isIndex:function(e,t){return!!(t=null==t?h:t)&&("number"==typeof e||m.test(e))&&e>-1&&e%1==0&&e<t},isArrayLike:O,isPrototype:function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Object.prototype)},isArguments:function(e){return j(e)&&d.hasOwnProperty.call(e,"callee")&&(!d.propertyIsEnumerable.call(e,"callee")||"[object Arguments]"==d.toString.call(e))},isPromise:function(e){return"[object Promise]"===(b(e)?d.getTag(e):"")}};const q=NaN,F=/^\s+|\s+$/g,x=/^[-+]0x[0-9a-f]+$/i,S=/^0b[01]+$/i,E=/^0o[0-7]+$/i,P=parseInt,k=1/0,M=17976931348623157e292;function R(e){if("number"==typeof e)return e;if(A.isSymbol(e))return q;if(A.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=A.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(F,"");const t=S.test(e);return t||E.test(e)?P(e.slice(2),t?2:8):x.test(e)?q:+e}function T(e){return e?(e=R(e))===k||e===-k?(e<0?-1:1)*M:e==e?e:0:0===e?e:0}var D={toNumber:R,toFinite:T,toInteger:function(e){var t=T(e),r=t%1;return t==t?r?t-r:t:0}};const N="Expected a function",C=Math.max,I=Math.min;function _(e,t=0,r={}){var n,i,s,o,a,u,l=0,c=!1,f=!1,d=!0;if("function"!=typeof e)throw new TypeError(N);function g(t){var r=n,s=i;return n=i=void 0,l=t,o=e.apply(s,r)}function p(e){var r=e-u;return void 0===u||r>=t||r<0||f&&e-l>=s}function y(){var e=Date.now();if(p(e))return h(e);a=setTimeout(y,function(e){var r=t-(e-u);return f?I(r,s-(e-l)):r}(e))}function h(e){return a=void 0,d&&n?g(e):(n=i=void 0,o)}function m(...e){var r=Date.now(),s=p(r);if(n=arguments,i=this,u=r,s){if(void 0===a)return function(e){return l=e,a=setTimeout(y,t),c?g(e):o}(u);if(f)return a=setTimeout(y,t),g(u)}return void 0===a&&(a=setTimeout(y,t)),o}return t=D.toNumber(t)||0,A.isObject(r)&&(c=!!r.leading,s=(f="maxWait"in r)?C(D.toNumber(r.maxWait)||0,t):s,d="trailing"in r?!!r.trailing:d),m.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=u=i=a=void 0},m.flush=function(){return void 0===a?o:h(Date.now())},m}class V{constructor(e){this.source=e}run(){let e;try{let t;return t=A.isFunction(this.source)?this.source():this.source,e=A.isPromise(t)?t:Promise.resolve(t),e.then((e=>[null,e])).catch((e=>[e,void 0]))}catch(e){return Promise.resolve([e,void 0])}}}var z={sleep:(e=1e3)=>new Promise((t=>{setTimeout(t,e)})),run:e=>new V(e).run(),debounce:_,throttle:function(e,t=0,r={}){var n=!1,i=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return A.isObject(r)&&(n=r.leading?!!r.leading:n,i=r.trailing?!!r.trailing:i),_(e,t,{leading:n,maxWait:t,trailing:i})}};var U={random:function(e){return Math.floor(Math.random()*e)},randomRange:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},lerp:function(e,t,r){return e*(1-r)+t*r},randomString:function(e,t=!1){e=e||32;const r="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";let i="";for(let t=0;t<e;t++)i+=r.charAt(Math.floor(62*Math.random()));return t?n.format(new Date,"yyyyMMddhhmmss")+i:i}};function L(e){return e!=e}function B(e,t){return function(e,t){for(var r=-1,n=e?e.length:0,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}(t,(function(t){return e[t]}))}var J,W,Z=(J=Object.keys,W=Object,function(e){return J(W(e))}),H=Math.max;function Y(e,t){var r=A.isArray(e)||A.isArguments(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,i=!!n;for(var s in e)!t&&!d.hasOwnProperty.call(e,s)||i&&("length"==s||A.isIndex(s,n))||r.push(s);return r}var G=Object.assign(Object.assign(Object.assign({},A),d),{includes:function(e,t,r,n){e=A.isArrayLike(e)?e:function(e){return e?B(e,function(e){return A.isArrayLike(e)?Y(e):function(e){if(!A.isPrototype(e))return Z(e);var t=[];for(var r in Object(e))d.hasOwnProperty.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}(e)):[]}(e),r=r&&!n?D.toInteger(r):0;var i=e.length;return r<0&&(r=H(i+r,0)),A.isString(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&function(e,t,r){if(t!=t)return function(e,t,r,n){for(var i=e.length,s=r+(n?1:-1);n?s--:++s<i;)if(t(e[s],s,e))return s;return-1}(e,L,r);for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}(e,t,r)>-1},merge:function(e,t){return t?e?(Object.keys(t).forEach((r=>{Array.isArray(e[r])&&Array.isArray(t[r])?e[r]=e[r].concat(t[r]):"object"==typeof e[r]&&"object"==typeof t[r]?e[r]=Object.assign(e[r],t[r]):e[r]=t[r]})),e):t:e},compareArray:function(e,t){if(!Array.isArray(e)||!Array.isArray(t))return!1;if(e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(e[r]!==t[r])return!1;return!0}});class K{constructor(){this._map=new Map}clear(){return this._map.clear(),this}on(e,t){if(!t)return this;let r=this._map.get(e);return r||(r=new Set,this._map.set(e,r)),r.add(t),this}emit(e,...t){const r=this._map.get(e);if(!r)return this;return[...r].forEach((e=>e(...t))),this}off(e="",t){if(!e)return this._map.clear(),this;if(!t)return this._map.delete(e.toString()),this;const r=this._map.get(e);return r?(r.delete(t),this):this}once(e,t){const r=(...n)=>{t(...n),this.off(e,r)};return this.on(e,r),this}has(e){return this._map.has(e)}}var Q={groupBy:(e,t)=>e.reduce(((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e)),{}),stepAction:function(e,t,r=100){if(!A.isFunction(t))return;if(!A.isArray(e)||e.length<=0)return;let n=0;for(;e.length>n;){let i=r+n,s=e.slice(n,i);t&&t(s),n=i}},skip:(e,t)=>{if(!A.isArray(e)||e.length<=0)return[];const r=t;return e.slice(r)},take:(e,t,r=0)=>{if(!A.isArray(e)||e.length<=0)return[];const n=r||0;if(n>=e.length)return[];const i=t+n;return e.slice(n,e.length<i?e.length:i)||[]},distinct:e=>!A.isArray(e)||e.length<=0?[]:[...new Set(e)]};const X="[object Object]",ee="[object Array]",te=e=>Object.prototype.toString.call(e),re=(e,t,r=!1)=>{if(e===t)return;const n=te(e);if(n===te(t))if(n===ee&&e.length>=t.length)for(let r=0;r<t.length;r++)re(e[r],t[r]);else if(n===X&&Object.keys(e).length>=Object.keys(t).length)for(let n in t)r||void 0!==e[n]?re(e[n],t[n]):e[n]=null},ne=(e,t,r,n="",i=!1)=>{if(e===t)return;const s=te(e),o=te(t);if(s===ee&&o===s&&e.length>=t.length)for(let i=0;i<e.length;i++)ne(e[i],t[i],r,`${n}[${i}]`);else if(s===X&&o===s&&(i||Object.keys(e).length>=Object.keys(t).length)){const i=Object.keys(e);for(let s of i){const i=e[s],o=t[s],a=te(i),u=te(o);if(i!==o)if(a===ee&&u===a&&i.length>=o.length)for(let e=0;e<i.length;e++)ne(i[e],o[e],r,`${n?n+".":""}${s}[${e}]`);else if(a===X&&u===a&&Object.keys(i).length>=Object.keys(o).length)for(let e in i)ne(i[e],o[e],r,`${n?n+".":""}${s}.${e}`);else r[`${n?n+".":""}${s}`]=i}}else r[n]=e};const ie=e=>"function"!=typeof e?e:(t={})=>new Promise(((r,n)=>{e(Object.assign(t,{success:r,fail:n}))}));var se={diff:function(e,t){const r={};return(e=>{if(te(e)===X)for(let t in e)if(/\w+\.\w+/g.test(t)&&-1===t.indexOf("[")){const r=t.split(".");let n=e,i=r.length;for(let e=0;e<i-1;e++){const t=r[e];te(n[t])!==X&&(n[t]={}),n=n[t]}n[r[i-1]]=e[t],delete e[t]}})(e),re(e,t,!0),ne(e,t,r,"",!0),r},promixify:ie,run:(e,t={})=>{if(e)return z.run(ie(e)(t))},formatList:(e,t,r)=>(e||[]).reduce(((e,n,i)=>Object.assign(Object.assign({},e),{[`${r}[${t+i}]`]:n})),{}),ruleValidator:(e,t)=>!!t&&(!Array.isArray(t)||!(t.length<=0)&&t.every((e=>!!e)))};function oe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}const ae=function(e,{sep:t="&",eq:r="=",max:n=1e3,multiple:i=!1}={}){t=t||"&",r=r||"=";const s={};if("string"!=typeof e||0===e.length)return s;const o=/\+/g,a=n||1e3;let u=(e=e.split(t)).length;a>0&&u>a&&(u=a);for(let t=0;t<u;++t){let n,a,u,l,c=e[t].replace(o,"%20"),f=c.indexOf(r);f>=0?(n=c.substr(0,f),a=c.substr(f+1)):(n=c,a=""),u=decodeURIComponent(n),l=decodeURIComponent(a),oe(s,u)&&i?Array.isArray(s[u])?s[u].push(l):s[u]=[s[u],l]:s[u]=l}return s},ue=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}},le=function(e,{sep:t="&",eq:r="=",name:n=null,multiple:i=!1}={}){return t=t||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(n){const s=encodeURIComponent(ue(n))+r;return i&&Array.isArray(e[n])?e[n].map((function(e){return s+encodeURIComponent(ue(e))})).join(t):s+encodeURIComponent(ue(e[n]))})).filter(Boolean).join(t):n?encodeURIComponent(ue(n))+r+encodeURIComponent(ue(e)):""};var ce={parse:ae,decode:ae,stringify:le,encode:le,useHttps:function(e){if(!e)return e;const t=e.trim();return"string"!=typeof e?e:t.indexOf("https")<0?t.replace("http","https"):t}};const fe=/%[sdj%]/g;let de=()=>{};function ge(e){if(!e||!e.length)return null;const t={};return e.forEach((e=>{const r=e.field;t[r]=t[r]||[],t[r].push(e)})),t}function pe(e,...t){let r=0;const n=t.length;if("function"==typeof e)return e.apply(null,t);if("string"==typeof e){return e.replace(fe,(e=>{if("%%"===e)return"%";if(r>=n)return e;switch(e){case"%s":return String(t[r++]);case"%d":return Number(t[r++]);case"%j":try{return JSON.stringify(t[r++])}catch(e){return"[Circular]"}break;default:return e}}))}return e}function ye(e,t){return null==e||(!("array"!==t||!Array.isArray(e)||e.length)||!(!function(e){return"string"===e||"url"===e||"hex"===e||"email"===e||"date"===e||"pattern"===e}(t)||"string"!=typeof e||e))}function he(e,t,r){let n=0;const i=e.length;!function s(o){if(o&&o.length)return void r(o);const a=n;n+=1,a<i?t(e[a],s):r([])}([])}"undefined"!=typeof process&&process.env&&"production"!==process.env.NODE_ENV&&"undefined"!=typeof window&&"undefined"!=typeof document&&(de=(e,t)=>{"undefined"!=typeof console&&console.warn&&"undefined"==typeof ASYNC_VALIDATOR_NO_WARNING&&t.every((e=>"string"==typeof e))&&console.warn(e,t)});class me extends Error{constructor(e,t){super("Async Validation Error"),this.errors=e,this.fields=t}}function be(e,t,r,n,i){if(t.first){const t=new Promise(((t,s)=>{const o=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push(...e[r]||[])})),t}(e);he(o,r,(e=>(n(e),e.length?s(new me(e,ge(e))):t(i))))}));return t.catch((e=>e)),t}const s=!0===t.firstFields?Object.keys(e):t.firstFields||[],o=Object.keys(e),a=o.length;let u=0;const l=[],c=new Promise(((t,c)=>{const f=e=>{if(l.push.apply(l,e),u++,u===a)return n(l),l.length?c(new me(l,ge(l))):t(i)};o.length||(n(l),t(i)),o.forEach((t=>{const n=e[t];-1!==s.indexOf(t)?he(n,r,f):function(e,t,r){const n=[];let i=0;const s=e.length;function o(e){n.push(...e||[]),i++,i===s&&r(n)}e.forEach((e=>{t(e,o)}))}(n,r,f)}))}));return c.catch((e=>e)),c}function ve(e,t){return r=>{let n;return n=e.fullFields?function(e,t){let r=e;for(let e=0;e<t.length;e++){if(null==r)return r;r=r[t[e]]}return r}(t,e.fullFields):t[r.field||e.fullField],(i=r)&&void 0!==i.message?(r.field=r.field||e.fullField,r.fieldValue=n,r):{message:"function"==typeof r?r():r,fieldValue:n,field:r.field||e.fullField};var i}}function we(e,t){if(t)for(const r in t)if(t.hasOwnProperty(r)){const n=t[r];"object"==typeof n&&"object"==typeof e[r]?e[r]=Object.assign(Object.assign({},e[r]),n):e[r]=n}return e}const Oe=(e,t,r,n,i,s)=>{!e.required||r.hasOwnProperty(e.field||"")&&!ye(t,s||e.type)||n.push(pe(i.messages.required,e.fullField))};let je;const $e=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,Ae=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,qe={integer:e=>qe.number(e)&&parseInt(e,10)===e,float:e=>qe.number(e)&&!qe.integer(e),array:e=>Array.isArray(e),regexp(e){if(e instanceof RegExp)return!0;try{return!!new RegExp(e)}catch(e){return!1}},date:e=>"function"==typeof e.getTime&&"function"==typeof e.getMonth&&"function"==typeof e.getYear&&!isNaN(e.getTime()),number:e=>!isNaN(e)&&"number"==typeof e,object:e=>"object"==typeof e&&!qe.array(e),method:e=>"function"==typeof e,email:e=>"string"==typeof e&&e.length<=320&&!!e.match($e),url:e=>"string"==typeof e&&e.length<=2048&&!!e.match((()=>{if(je)return je;const e="[a-fA-F\\d:]",t=t=>t&&t.includeBoundaries?`(?:(?<=\\s|^)(?=${e})|(?<=${e})(?=\\s|$))`:"",r="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",n="[a-fA-F\\d]{1,4}",i=`\n(?:\n(?:${n}:){7}(?:${n}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${n}:){6}(?:${r}|:${n}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${n}:){5}(?::${r}|(?::${n}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${n}:){4}(?:(?::${n}){0,1}:${r}|(?::${n}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${n}:){3}(?:(?::${n}){0,2}:${r}|(?::${n}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${n}:){2}(?:(?::${n}){0,3}:${r}|(?::${n}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${n}:){1}(?:(?::${n}){0,4}:${r}|(?::${n}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${n}){0,5}:${r}|(?::${n}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),s=new RegExp(`(?:^${r}$)|(?:^${i}$)`),o=new RegExp(`^${r}$`),a=new RegExp(`^${i}$`),u=e=>e&&e.exact?s:new RegExp(`(?:${t(e)}${r}${t(e)})|(?:${t(e)}${i}${t(e)})`,"g");u.v4=e=>e&&e.exact?o:new RegExp(`${t(e)}${r}${t(e)}`,"g"),u.v6=e=>e&&e.exact?a:new RegExp(`${t(e)}${i}${t(e)}`,"g");const l=u.v4().source,c=u.v6().source;return je=new RegExp(`(?:^(?:(?:(?:[a-z]+:)?//)|www\\.)(?:\\S+(?::\\S*)?@)?(?:localhost|${l}|${c}|(?:(?:[a-z\\u00a1-\\uffff0-9][-_]*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:[/?#][^\\s"]*)?$)`,"i"),je})()),hex:e=>"string"==typeof e&&!!e.match(Ae)},Fe="enum";var xe={required:Oe,whitespace:(e,t,r,n,i)=>{(/^\s+$/.test(t)||""===t)&&n.push(pe(i.messages.whitespace,e.fullField))},type:(e,t,r,n,i)=>{if(e.required&&void 0===t)return void Oe(e,t,r,n,i);const s=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(s)>-1?qe[s](t)||n.push(pe(i.messages.types[s],e.fullField,e.type)):s&&typeof t!==e.type&&n.push(pe(i.messages.types[s],e.fullField,e.type))},range:(e,t,r,n,i)=>{const s="number"==typeof e.len,o="number"==typeof e.min,a="number"==typeof e.max,u=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;let l=t,c="";const f="number"==typeof t,d="string"==typeof t,g=Array.isArray(t);if(f?c="number":d?c="string":g&&(c="array"),!c)return!1;g&&(l=t.length),d&&(l=t.replace(u,"_").length),s?l!==e.len&&n.push(pe(i.messages[c].len,e.fullField,e.len)):o&&!a&&l<e.min?n.push(pe(i.messages[c].min,e.fullField,e.min)):a&&!o&&l>e.max?n.push(pe(i.messages[c].max,e.fullField,e.max)):o&&a&&(l<e.min||l>e.max)&&n.push(pe(i.messages[c].range,e.fullField,e.min,e.max))},enum:(e,t,r,n,i)=>{e[Fe]=Array.isArray(e[Fe])?e[Fe]:[],-1===e[Fe].indexOf(t)&&n.push(pe(i.messages[Fe],e.fullField,e[Fe].join(", ")))},pattern:(e,t,r,n,i)=>{if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(pe(i.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(pe(i.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};const Se=(e,t,r,n,i)=>{const s=e.type,o=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t,s)&&!e.required)return r();xe.required(e,t,n,o,i,s),ye(t,s)||xe.type(e,t,n,o,i)}r(o)};var Ee={string:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field||"")){if(ye(t,"string")&&!e.required)return r();xe.required(e,t,n,s,i,"string"),ye(t,"string")||(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i),xe.pattern(e,t,n,s,i),!0===e.whitespace&&xe.whitespace(e,t,n,s,i))}r(s)},method:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},number:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},boolean:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},regexp:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),ye(t)||xe.type(e,t,n,s,i)}r(s)},integer:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},float:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},array:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(null==t&&!e.required)return r();xe.required(e,t,n,s,i,"array"),null!=t&&(xe.type(e,t,n,s,i),xe.range(e,t,n,s,i))}r(s)},object:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.type(e,t,n,s,i)}r(s)},enum:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i),void 0!==t&&xe.enum(e,t,n,s,i)}r(s)},pattern:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t,"string")&&!e.required)return r();xe.required(e,t,n,s,i),ye(t,"string")||xe.pattern(e,t,n,s,i)}r(s)},date:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t,"date")&&!e.required)return r();if(xe.required(e,t,n,s,i),!ye(t,"date")){let r;r=t instanceof Date?t:new Date(t),xe.type(e,r,n,s,i),r&&xe.range(e,r.getTime(),n,s,i)}}r(s)},url:Se,hex:Se,email:Se,required:(e,t,r,n,i)=>{const s=[],o=Array.isArray(t)?"array":typeof t;xe.required(e,t,n,s,i,o),r(s)},any:(e,t,r,n,i)=>{const s=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(ye(t)&&!e.required)return r();xe.required(e,t,n,s,i)}r(s)}};function Pe(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone(){const e=JSON.parse(JSON.stringify(this));return e.clone=this.clone,e}}}const ke=Pe();class Me{constructor(e){this.rules={},this._messages=ke,this.define(e)}define(e){if(!e)throw new Error("Cannot configure a schema with no rules");if("object"!=typeof e||Array.isArray(e))throw new Error("Rules must be an object");this.rules={},Object.keys(e).forEach((t=>{const r=e[t];this.rules[t]=Array.isArray(r)?r:[r]}))}messages(e){return e&&(this._messages=we(Pe(),e)),this._messages}validate(e,t={},r=(()=>{})){let n=e,i=t,s=r;if("function"==typeof i&&(s=i,i={}),!this.rules||0===Object.keys(this.rules).length)return s&&s(null,n),Promise.resolve(n);if(i.messages){let e=this.messages();e===ke&&(e=Pe()),we(e,i.messages),i.messages=e}else i.messages=this.messages();const o={};(i.keys||Object.keys(this.rules)).forEach((t=>{const r=this.rules[t];let i=n[t];r.forEach((r=>{let s=r;"function"==typeof s.transform&&(n===e&&(n=Object.assign({},n)),i=n[t]=s.transform(i)),s="function"==typeof s?{validator:s}:Object.assign({},s),s.validator=this.getValidationMethod(s),s.validator&&(s.field=t,s.fullField=s.fullField||t,s.type=this.getType(s),o[t]=o[t]||[],o[t].push({rule:s,value:i,source:n,field:t}))}))}));const a={};return be(o,i,((e,t)=>{var r;const s=e.rule;let o,u=!("object"!==s.type&&"array"!==s.type||"object"!=typeof s.fields&&"object"!=typeof s.defaultField);function l(e,t){return Object.assign(Object.assign({},t),{fullField:`${s.fullField}.${e}`,fullFields:s.fullFields?[...s.fullFields,e]:[e]})}function c(r=[]){let o=Array.isArray(r)?r:[r];!0===i.suppressWarning&&o.length&&Me.warning("async-validator:",o),o.length&&void 0!==s.message&&(o=[].concat(s.message));let c=o.map(ve(s,n));if(i.first&&c.length)return a[s.field]=1,t(c);if(u){if(s.required&&!e.value)return void 0!==s.message?c=[].concat(s.message).map(ve(s,n)):i.error&&(c=[i.error(s,pe(i.messages.required,s.field))]),t(c);let r={};s.defaultField&&Object.keys(e.value).map((e=>{r[e]=s.defaultField})),r=Object.assign(Object.assign({},r),e.rule.fields);const o={};Object.keys(r).forEach((e=>{const t=r[e],n=Array.isArray(t)?t:[t];o[e]=n.map(l.bind(null,e))}));const a=new Me(o);a.messages(i.messages),e.rule.options&&(e.rule.options.messages=i.messages,e.rule.options.error=i.error),a.validate(e.value,e.rule.options||i,(e=>{const r=[];c&&c.length&&r.push(...c),e&&e.length&&r.push(...e),t(r.length?r:null)}))}else t(c)}if(u=u&&(s.required||!s.required&&e.value),s.field=e.field,s.asyncValidator)o=s.asyncValidator(s,e.value,c,e.source,i);else if(s.validator){try{o=s.validator(s,e.value,c,e.source,i)}catch(e){null===(r=console.error)||void 0===r||r.call(console,e),i.suppressValidatorError||setTimeout((()=>{throw e}),0),c(e.message)}!0===o?c():!1===o?c("function"==typeof s.message?s.message(s.fullField||s.field):s.message||`${s.fullField||s.field} fails`):o instanceof Array?c(o):o instanceof Error&&c(o.message)}o&&o.then&&o.then((()=>c()),(e=>c(e)))}),(e=>{!function(e){let t=[],r={};for(let r=0;r<e.length;r++)i=e[r],Array.isArray(i)?t=t.concat(...i):t.push(i);var i;t.length?(r=ge(t),s(t,r)):s(null,n)}(e)}),n)}getType(e){if(void 0===e.type&&e.pattern instanceof RegExp&&(e.type="pattern"),"function"!=typeof e.validator&&e.type&&!Ee.hasOwnProperty(e.type))throw new Error(pe("Unknown rule type %s",e.type));return e.type||"string"}getValidationMethod(e){if("function"==typeof e.validator)return e.validator;const t=Object.keys(e),r=t.indexOf("message");return-1!==r&&t.splice(r,1),1===t.length&&"required"===t[0]?Ee.required:Ee[this.getType(e)]||void 0}}function Re(e){return new Me(e)}Me.register=function(e,t){if("function"!=typeof t)throw new Error("Cannot register a validator by type, validator is not a function");Ee[e]=t},Me.warning=de,Me.messages=ke,Me.validators=Ee;var Te={validateId:function(e){return!!e&&(!(e.length<6)&&!!/^[A-Za-z0-9_-]+$/.test(e))},validatePhone:function(e){return!!e&&!!/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/.test(e)},validator:Re,validate:function(e,t,r={},n=(()=>{})){return z.run(Re(e).validate(t,r,n))}};function De(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{u(n.next(e))}catch(e){s(e)}}function a(e){try{u(n.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}u((n=n.apply(e,t||[])).next())}))}class Ne extends K{constructor(){super(),this.getters={},this.setters={},this.actions={}}dispatch(e,t=void 0){return De(this,void 0,void 0,(function*(){const r=Reflect.get(this.actions,e);if(!A.isFunction(r))return;const[,n]=yield z.run(r(this,t));return n}))}getByOnce(e){return De(this,void 0,void 0,(function*(){const t=Reflect.get(this,e);let r;return r=null!=t&&""!==t?JSON.parse(JSON.stringify(t)):yield this.dispatch(e),r}))}}return{gbk:e,time:n,hook:z,math:U,util:G,list:Q,mini:se,url:ce,rule:Te,DEvent:K,store:Ne,storeRef:e=>{const t=Object.assign(new Ne,e||{});return new Proxy(t,{get:(e,t,r)=>{const n=Reflect.get(e.getters,t);return A.isFunction(n)?n():Reflect.get(e,t,r)},set:(e,t,r,n)=>{const i=Reflect.get(e.setters,t);if(A.isFunction(i)&&!i(r))return!0;const s=Reflect.set(e,t,r,n);return s&&e.emit(t.toString(),r),s},has:(e,t)=>Reflect.has(e,t)})}}}));
|
|
@@ -14,10 +14,10 @@ const run = (func, args = {}) => {
|
|
|
14
14
|
return;
|
|
15
15
|
return hook_1.default.run(promixify(func)(args));
|
|
16
16
|
};
|
|
17
|
-
|
|
17
|
+
const formatList = (lists, start, name) => {
|
|
18
18
|
return (lists || []).reduce((res, val, index) => (Object.assign(Object.assign({}, res), { [`${name}[${start + index}]`]: val })), {});
|
|
19
|
-
}
|
|
20
|
-
|
|
19
|
+
};
|
|
20
|
+
const ruleValidator = (_, value) => {
|
|
21
21
|
if (!value)
|
|
22
22
|
return false;
|
|
23
23
|
if (Array.isArray(value)) {
|
|
@@ -26,5 +26,5 @@ function ruleValidator(rule, value) {
|
|
|
26
26
|
return value.every((e) => !!e);
|
|
27
27
|
}
|
|
28
28
|
return true;
|
|
29
|
-
}
|
|
29
|
+
};
|
|
30
30
|
exports.default = { diff: diff_1.default, promixify, run, formatList, ruleValidator };
|
package/bin/types/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ declare const _default: {
|
|
|
6
6
|
gbkCut: (source: string, len: number) => string;
|
|
7
7
|
};
|
|
8
8
|
time: {
|
|
9
|
-
now: () =>
|
|
9
|
+
now: () => number;
|
|
10
10
|
isToday: (date: any) => boolean;
|
|
11
11
|
format: (time: string | number | Date, reg?: string) => string;
|
|
12
12
|
parseTime: ({ year, month, date, hour, minute, second }: {
|
|
@@ -72,6 +72,7 @@ declare const _default: {
|
|
|
72
72
|
promixify: (miniapi: any) => any;
|
|
73
73
|
run: (func: any, args?: {}) => Promise<any[]> | undefined;
|
|
74
74
|
formatList: (lists: any[], start: any, name: any) => any;
|
|
75
|
+
ruleValidator: (_: any, value: any) => boolean;
|
|
75
76
|
};
|
|
76
77
|
url: {
|
|
77
78
|
parse: (qs: any, { sep, eq, max, multiple }?: {
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import diff from "./diff";
|
|
2
|
-
declare function formatList(lists: any[], start: any, name: any): any;
|
|
3
|
-
declare function ruleValidator(rule: any, value: any): boolean;
|
|
4
2
|
declare const _default: {
|
|
5
3
|
diff: typeof diff;
|
|
6
4
|
promixify: (miniapi: any) => any;
|
|
7
5
|
run: (func: any, args?: {}) => Promise<any[]> | undefined;
|
|
8
|
-
formatList:
|
|
9
|
-
ruleValidator:
|
|
6
|
+
formatList: (lists: any[], start: any, name: any) => any;
|
|
7
|
+
ruleValidator: (_: any, value: any) => boolean;
|
|
10
8
|
};
|
|
11
9
|
export default _default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ddan-js",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.8",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"main": "bin/ddan-js.js",
|
|
@@ -109,6 +109,7 @@
|
|
|
109
109
|
"replace-in-file": "^6.3.5",
|
|
110
110
|
"rimraf": "^5.0.0",
|
|
111
111
|
"rollup": "^2.79.1",
|
|
112
|
+
"rollup-plugin-babel": "^4.4.0",
|
|
112
113
|
"rollup-plugin-commonjs": "^10.1.0",
|
|
113
114
|
"rollup-plugin-json": "^4.0.0",
|
|
114
115
|
"rollup-plugin-node-resolve": "^5.2.0",
|