ddan-js 2.2.5 → 2.2.6

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.
@@ -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 s=0;s<e.length&&(e.charCodeAt(s)>127||94===e.charCodeAt(s)?r+=2:r++,!(r>t));s++)n=s;return e.substr(0,n+1)}};const t="0123456789",r="abcdefghijklmnopqrstuvwxyz",n="ABCDEFGHIJKLMNOPQRSTUVWXYZ";var s={keyNumber:t,keyLower:r,keyUpper:n,keyChars:t+r+n};const i=(e=0,t=0)=>{const r=s.keyChars.split(""),n=[];let i;if(t=t||r.length,e)for(i=0;i<e;i++)n[i]=r[0|Math.random()*t];else{let e;for(n[8]=n[13]=n[18]=n[23]="-",n[14]="4",i=0;i<36;i++)n[i]||(e=0|16*Math.random(),n[i]=r[19==i?3&e|8:e])}return n.join("")};class o{__map;__tagList;__eventId="";constructor(){this.__map=new Map,this.__tagList=[],this.__eventId=i()}clear(){return this.__map.clear(),this}on(e,t,r=""){if(!e||!t)return this;let n=this.__map.get(e);return n||(n=new Set,this.__map.set(e,n)),n.add(t),r&&this.__tagList.push({name:e,handler:t,tag:r}),this}emit(e,...t){if(!e)return this;const r=this.__map.get(e);if(!r)return this;return[...r].forEach((e=>e&&e(...t))),this}off(e,t){if(!e||!t)return this;this.__tagList=this.__tagList.filter((r=>r.name!==e||r.handler!==t));const r=this.__map.get(e);return r?(r.delete(t),r.size<=0&&this.__map.delete(e),this):this}remove(e){return e?(this.__tagList=this.__tagList.filter((t=>t.name!==e)),this.__map.delete(e),this):this}removeByTag(e){if(!e)return this;return this.__tagList.filter((t=>t.tag===e)).forEach((e=>{this.off(e.name,e.handler)})),this.__tagList=this.__tagList.filter((t=>t.tag!==e)),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)}}class a{_loopTimer;_event=new o;started=!1;interval=0;constructor(e=0){this.interval=e||500}start(){return this.started||(this.stop(),this._loopTimer=setInterval((()=>{this._handleLoop()}),this.interval),this.started=!0),this}stop(){return this._loopTimer?(clearInterval(this._loopTimer),this._loopTimer=0,this.started=!1,this):this}restart(){return this.stop(),this.start(),this}on(e){return this._event.on("frame",e),this}off(e){return e?(this._event.off("frame",e),this):this}_handleLoop(){this._event.emit("frame")}}var u={oneDay:864e5,oneHour:36e5,oneMinute:6e4,oneSecond:1e3};class l{date;timestamp=0;yyyy=0;yy="";M=0;MM="";d=0;dd="";h=0;hh="";m=0;mm="";s=0;ss="";S=0;SS="";SSS="";constructor(e){if(!e)return;const t="string"==typeof e||"number"==typeof e?new Date(e):e;t&&(this.date=t,this.timestamp=t.getTime(),this.toDate())}toDate(){return this.date?(this.yyyy=this.date.getFullYear(),this.yy=`${this.yyyy}`.substr(2),this.M=this.date.getMonth()+1,this.MM=(this.M<10?"0":"")+this.M,this.d=this.date.getDate(),this.dd=(this.d<10?"0":"")+this.d,this.h=this.date.getHours(),this.hh=(this.h<10?"0":"")+this.h,this.m=this.date.getMinutes(),this.mm=(this.m<10?"0":"")+this.m,this.s=this.date.getSeconds(),this.ss=(this.s<10?"0":"")+this.s,this.S=this.date.getMilliseconds(),this.SS=(this.S<10?"0":"")+this.S,this.SSS=this.S.toString().padStart(3,"0"),this):this}toCountdown(e=""){const t={countdown:0,timestamp:0,seconds:0,d:0,dd:"",h:0,hh:"",m:0,mm:"",s:0,ss:"",S:0,SS:"",SSS:"",desc:""};if(!this.timestamp)return t;t.timestamp=this.timestamp,t.countdown=Math.max(t.timestamp-Date.now(),0),t.seconds=Math.floor(t.countdown/u.oneSecond);let r=t.countdown;t.d=Math.floor(r/u.oneDay),t.dd=(t.d<10?"0":"")+t.d,r%=u.oneDay,t.h=Math.floor(r/u.oneHour),t.hh=(t.h<10?"0":"")+t.h,r%=u.oneHour,t.m=Math.floor(r/u.oneMinute),t.mm=(t.m<10?"0":"")+t.m,r%=u.oneMinute,t.s=Math.floor(r/u.oneSecond),t.ss=(t.s<10?"0":"")+t.s,r%=u.oneSecond,t.S=r,t.SS=(t.S<10?"0":"")+t.S,t.SSS=t.S.toString().padStart(3,"0");let n=e;return n||(n=t.countdown>u.oneHour?"hh:mm:ss":t.countdown>u.oneMinute?"mm:ss":"ss"),t.desc=n.replace(/\bdd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>t[e])),t}add(e=0){return e?(this.timestamp=this.timestamp+e,this.date=new Date(this.timestamp),this.toDate(),this):this}format(e="yyyy-MM-dd hh:mm:ss"){return e.replace(/\byyyy|yy|MM|M|dd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>this[e]))}}const c=(e,t="yyyy-MM-dd hh:mm:ss")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e;return r?f(r).format(t):""},f=e=>{const t="string"==typeof e||"number"==typeof e?new Date(e):e;return new l(t||0)};function h({year:e=0,month:t=0,date:r=0,hour:n=0,minute:s=0,second:i=0}){const o=`${e||"yyyy"}/${t||"MM"}/${r||"dd"} ${n}:${s}:${i}`;return new Date(c(Date.now(),o)).getTime()}var d={...u,now:function(){return f(new Date)},isToday:e=>e&&(new Date).toDateString()===new Date(e).toDateString(),parseTimestamp:h,todayZero:()=>h({}),format:c,countdown:(e,t="")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e;if(!r)return"";return f(r).toCountdown(t)},dtime:f,loopFrame:(e=500)=>new a(e)},g="object"==typeof global&&global&&global.Object===Object&&global,p="object"==typeof self&&self&&self.Object===Object&&self;const m=(g||p||Function("return this")()).Symbol,{toString:y,hasOwnProperty:w,propertyIsEnumerable:b}=Object.prototype,v=m?m.toStringTag:void 0;function _(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":v&&v in Object(e)?function(e){const t=w.call(e,v),r=e[v];let n=!1;try{e[v]=void 0,n=!0}catch(e){}const s=y.call(e);return n&&(t?e[v]=r:delete e[v]),s}(e):y.call(e)}var $={getTag:_,getType:function(e){return(_(e).match(/\w+/g)||["object","Undefined"])[1]||""},toString:y,hasOwnProperty:w,propertyIsEnumerable:b},x="[object Function]",k="[object GeneratorFunction]",S="[object AsyncFunction]",A=9007199254740991;const q=/^(?:0|[1-9]\d*)$/;function j(e){const t=typeof e;return null!=e&&("object"==t||"function"==t)}function C(e){return null!=e&&"object"==typeof e}const O=Array.isArray;function L(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=A}(e.length)&&!F(e)}function E(e){return C(e)&&L(e)}function F(e){var t=j(e)?$.getTag(e):"";return t===x||t===k||t===S}var M={is:function(e,t){return $.getTag(e)===`[object ${t}]`},isNumber:function(e){return"[object Number]"===$.getTag(e)},isString:function(e){return"string"==typeof e||!O(e)&&C(e)&&"[object String]"==$.getTag(e)},isObject:j,isObjectLike:C,isPlainObject:function(e){if(!C(e)||"[object Object]"!=$.getTag(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t},isSymbol:function(e){return"symbol"==typeof e||C(e)&&"[object Symbol]"===$.getTag(e)},isFunction:F,isArray:O,isArrayLikeObject:E,isIndex:function(e,t){return!!(t=null==t?A:t)&&("number"==typeof e||q.test(e))&&e>-1&&e%1==0&&e<t},isArrayLike:L,isPrototype:function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Object.prototype)},isArguments:function(e){return E(e)&&$.hasOwnProperty.call(e,"callee")&&(!$.propertyIsEnumerable.call(e,"callee")||"[object Arguments]"==$.toString.call(e))},isPromise:function(e){return"[object Promise]"===(j(e)?$.getTag(e):"")}};const R=NaN,D=/^\s+|\s+$/g,P=/^[-+]0x[0-9a-f]+$/i,z=/^0b[01]+$/i,T=/^0o[0-7]+$/i,I=parseInt,N=1/0,B=17976931348623157e292;function U(e){if("number"==typeof e)return e;if(M.isSymbol(e))return R;if(M.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=M.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(D,"");const t=z.test(e);return t||T.test(e)?I(e.slice(2),t?2:8):P.test(e)?R:+e}function V(e){return e?(e=U(e))===N||e===-N?(e<0?-1:1)*B:e==e?e:0:0===e?e:0}var H={toNumber:U,toFinite:V,toInteger:function(e){var t=V(e),r=t%1;return t==t?r?t-r:t:0}};const W="Expected a function",Z=Math.max,J=Math.min;function G(e,t=300,r={}){var n,s,i,o,a,u,l=0,c=!1,f=!1,h=!0;if("function"!=typeof e)throw new TypeError(W);function d(t){var r=n,i=s;return n=s=void 0,l=t,o=e.apply(i,r)}function g(e){var r=e-u;return void 0===u||r>=t||r<0||f&&e-l>=i}function p(){var e=Date.now();if(g(e))return m(e);a=setTimeout(p,function(e){var r=t-(e-u);return f?J(r,i-(e-l)):r}(e))}function m(e){return a=void 0,h&&n?d(e):(n=s=void 0,o)}function y(...e){var r=Date.now(),i=g(r);if(n=arguments,s=this,u=r,i){if(void 0===a)return function(e){return l=e,a=setTimeout(p,t),c?d(e):o}(u);if(f)return a=setTimeout(p,t),d(u)}return void 0===a&&(a=setTimeout(p,t)),o}return t=H.toNumber(t)||0,M.isObject(r)&&(c=!!r.leading,i=(f="maxWait"in r)?Z(H.toNumber(r.maxWait)||0,t):i,h="trailing"in r?!!r.trailing:h),y.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=u=s=a=void 0},y.flush=function(){return void 0===a?o:m(Date.now())},y}class Y{__source;constructor(e){this.__source=e}run(){let e;try{let t;return t=M.isFunction(this.__source)?this.__source():this.__source,e=M.isPromise(t)?t:Promise.resolve(t),e.then((e=>[null,e])).catch((e=>[e,void 0]))}catch(e){return Promise.resolve([e,void 0])}}static _lockedMap=new Map;static _lock(e,t){if(!e||!t)return;const r=new Y(t).run();return this._lockedMap.set(e,r),r}static _unlock(e){e&&this._lockedMap.delete(e)}static async exec(e,t){if(!e||!t)return new Y(e).run();const r=this._lockedMap.get(t);if(r)return r;const n=this._lock(t,e);if(!n)return new Y(e).run();const s=await n;return this._unlock(t),s}}class K{__list=[];constructor(e){this.push(e)}push(e){return e&&this.__list.push(e),this}clear(){return this.__list=[],this}_exec(e,t){let r;if(M.isFunction(e))r=e(t);else{if(M.isPromise(e))return e.then((e=>({...t,...e})));r=e}return M.isPromise(r)?r:Promise.resolve({...r,...t})}run(e){try{return this.__list.reduce(((e,t)=>e.then((e=>this._exec(t,e)))),Promise.resolve(e)).then((e=>[void 0,e])).catch((e=>[e,void 0]))}catch(e){return Promise.reject([e,void 0])}}}const Q=(e=1e3)=>new Promise((t=>{setTimeout(t,e)}));var X={sleep:Q,run:async(e,t=0)=>{if(t<=0)return new Y(e).run();const r=t>0?Date.now():0,n=await new Y(e).run(),s=Date.now()-r;return s<t&&await Q(t-s),n},exec:(e,t="")=>Y.exec(e,t),debounce:G,throttle:function(e,t=300,r={}){var n=!1,s=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return M.isObject(r)&&(n=r.leading?!!r.leading:n,s=r.trailing?!!r.trailing:s),G(e,t,{leading:n,maxWait:t,trailing:s})},task:e=>new K(e),delay:(e=1e3)=>new Promise((t=>{setTimeout(t,e)})),mutex:function(e){var t=null;return async function(...r){if((t=this||t||{}).__ddMutex)return!1;t.__ddMutex=!0;try{e&&await Promise.resolve(e.apply(this,r))}catch(e){console.log(e)}finally{t.__ddMutex=!1}}}};function ee(e){return Math.floor(Math.random()*e)}function te(e,t=10){return+parseFloat(Number(e).toExponential(t))}const re=180/Math.PI;var ne={random:ee,randomRange:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},lerp:function(e,t,r){return e*(1-r)+t*r},randoms:function(e,t=1,r=!1){const n=[];for(;;){if(n.length>=t)break;if(!r&&n.length>=e)break;const s=ee(e);r?n.push(s):n.includes(s)||n.push(s)}return n},strip:te,float:function(e,{fractionDigits:t=2,fixed:r=!1}={}){const n=te(e).toFixed(t);return r||!t?+n:+n.replace(/(\.[1-9]?)0+$/,"$1").replace(/\.$/,"")},radian2degree:function(e){return e*re},degree2radian:function(e){return e/re}};function se(e){return e!=e}function ie(e,t){return function(e,t){for(var r=-1,n=e?e.length:0,s=Array(n);++r<n;)s[r]=t(e[r],r,e);return s}(t,(function(t){return e[t]}))}var oe,ae,ue=(oe=Object.keys,ae=Object,function(e){return oe(ae(e))}),le=Math.max;function ce(e,t){var r=M.isArray(e)||M.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,s=!!n;for(var i in e)!t&&!$.hasOwnProperty.call(e,i)||s&&("length"==i||M.isIndex(i,n))||r.push(i);return r}function fe(e,t,r){const{length:n}=e;return r=void 0===r?n:r,!t&&r>=n?e:function(e,t,r){let n=null==e?0:e.length;if(!n)return[];(t=null==t?0:t)<0&&(t=-t>n?0:n+t),(r=(r=void 0===r?n:r)>n?n:r)<0&&(r+=n),n=t>r?0:r-t>>>0,t>>>=0;let s=-1;const i=new Array(n);for(;++s<n;)i[s]=e[s+t];return i}(e,t,r)}const he=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff\\ufe0e\\ufe0f]");function de(e){return he.test(e)}const ge="\\ud800-\\udfff",pe=`[${ge}]`,me="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]",ye="\\ud83c[\\udffb-\\udfff]",we=`[^${ge}]`,be="(?:\\ud83c[\\udde6-\\uddff]){2}",ve="[\\ud800-\\udbff][\\udc00-\\udfff]",_e=`${`(?:${me}|${ye})`}?`,$e="[\\ufe0e\\ufe0f]?",xe=$e+_e+`(?:\\u200d(?:${[we,be,ve].join("|")})${$e+_e})*`,ke=`(?:${[`${we}${me}?`,me,be,ve,pe].join("|")})`,Se=RegExp(`${ye}(?=${ye})|${ke+xe}`,"g");function Ae(e){return de(e)?function(e){return e.match(Se)||[]}(e):function(e){return e.split("")}(e)}function qe(e){return t=>{if(!t)return"";const r=de(t)?Ae(t):void 0,n=r?r[0]:t[0],s=r?fe(r,1).join(""):t.slice(1);return n[e]()+s}}const je="\\ud800-\\udfff",Ce="\\u2700-\\u27bf",Oe="a-z\\xdf-\\xf6\\xf8-\\xff",Le="A-Z\\xc0-\\xd6\\xd8-\\xde",Ee="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Fe="['’]",Me=`[${Ee}]`,Re=`[${Ce}]`,De=`[${Oe}]`,Pe=`[^${je}${Ee+"\\d"+Ce+Oe+Le}]`,ze="(?:\\ud83c[\\udde6-\\uddff]){2}",Te="[\\ud800-\\udbff][\\udc00-\\udfff]",Ie=`[${Le}]`,Ne=`(?:${De}|${Pe})`,Be=`(?:${Ie}|${Pe})`,Ue=`(?:${Fe}(?:d|ll|m|re|s|t|ve))?`,Ve=`(?:${Fe}(?:D|LL|M|RE|S|T|VE))?`,He="(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]|\\ud83c[\\udffb-\\udfff])?",We="[\\ufe0e\\ufe0f]?",Ze=We+He+`(?:\\u200d(?:${[`[^${je}]`,ze,Te].join("|")})${We+He})*`,Je=`(?:${[Re,ze,Te].join("|")})${Ze}`,Ge=RegExp([`${Ie}?${De}+${Ue}(?=${[Me,Ie,"$"].join("|")})`,`${Be}+${Ve}(?=${[Me,Ie+Ne,"$"].join("|")})`,`${Ie}?${Ne}+${Ue}`,`${Ie}+${Ve}`,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])","\\d+",Je].join("|"),"g");const Ye=RegExp.prototype.test.bind(/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/),Ke=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function Qe(e,t){if(void 0===t){const t=Ye(e)?function(e){return e.match(Ge)}(e):function(e){return e.match(Ke)}(e);return t||[]}return e.match(t)||[]}function Xe(e){if(null==e)return"";if("string"==typeof e)return e;if(Array.isArray(e))return`${e.map((e=>null==e?e:Xe(e)))}`;if(M.isSymbol(e))return e.toString();const t=`${e}`;return"0"==t&&1/e==-Infinity?"-0":t}const et=qe("toUpperCase"),tt=qe("toLowerCase");var rt={toString:Xe,startCase:e=>Qe(`${e}`.replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+et(t)),""),snakeCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?"_":"")+t.toLowerCase()),""),kebabCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?"-":"")+t.toLowerCase()),""),camelCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>(t=t.toLowerCase(),e+(r?et(t):t))),""),upperCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+t.toUpperCase()),""),upperFirst:et,lowerCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+t.toLowerCase()),""),lowerFirst:tt,splitOnFirst:(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===e||""===t)return[];const r=e.indexOf(t);return-1===r?[]:[e.slice(0,r),e.slice(r+t.length)]},parseValue:(e,{number:t=!1,boolean:r=!1}={})=>{let n=e;return e&&"string"==typeof e?(t&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?n=Number(e):!r||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(n="true"===e.toLowerCase()),n):n},replace:(e,t)=>{if(!e)return e;if(!t)return e;let r=e;return((Array.isArray(t)?t:[t])||[]).forEach((e=>{e.key&&e.value&&(r=r.replace(new RegExp(e.key,e.flag||""),e.value))})),r}};const nt=e=>{if(!e)return e;if("object"!=typeof e)return e;const t=Array.isArray(e)?[]:{};for(const r in e)e.hasOwnProperty(r)&&(t[r]=nt(e[r]));return t};const st=(e,t,r={})=>{const n=e||{},{ignoreUndefined:s=!0,cover:i=!1}=r;if(!t)return n;for(const o in t){if(!t.hasOwnProperty(o))continue;const a=t[o];"object"!=typeof a||"object"!=typeof e[o]||i?s&&void 0===a||r.ignoreNull&&null===a||r.ignoreZero&&0===a||r.ignoreEmptyArray&&Array.isArray(a)&&a.length<=0||r.ignoreEmptyString&&"string"==typeof a&&""===a.trim()||(n[o]=a):n[o]=it(e[o],a,r)}return n},it=(e,t,r={})=>{let n={};return n=e&&"object"==typeof e&&!Array.isArray(e)?st(e,t,r):st({...e},t,r),n},ot=(e,t,r={})=>st({...e},t,{cover:!0,...r}),at=(e,t,r,n,s=!1)=>{if(!e||!t||!r)return;let i=e[t];null!==i&&"object"==typeof i&&s&&Object.keys(i).forEach((e=>{at(i,e,r,n,s)})),Object.defineProperty(e,t,{configurable:!0,enumerable:!0,set:o=>{r.call(n,o,i),i=o,s&&at(e,t,r,n,s)},get:()=>i})};var ut={copy:(e,t={})=>{if(void 0===e)return;const r=JSON.parse(JSON.stringify(e));if("object"!=typeof r)return r;if(Array.isArray(r))return r;const{fields:n=[],camel:s=!1,pure:i=!0}=t;if((!n||n.length<=0)&&!s)return r;const o={};for(const e in r){if(!r.hasOwnProperty(e))continue;const a=s?i&&e.startsWith("_")?e:rt.camelCase(e):e;if(n.length>0&&!n.includes(e)&&!n.includes(a))continue;const u=r[e];t.ignoreNull&&null===u||(t.ignoreZero&&0===u||t.ignoreEmptyArray&&Array.isArray(u)&&u.length<=0||t.ignoreEmptyString&&"string"==typeof u&&""===u.trim()||(o[a]=u))}return o},clone:nt,merge:it,isEmpty:e=>0!==e&&(!e||"object"==typeof e&&(Array.isArray(e)?!e.length:Object.keys(e).length<=0)),parseValue:(e,{number:t=!1,boolean:r=!1}={})=>{if(!e&&"object"!=typeof e)return e;for(const[n,s]of Object.entries(e))if("object"==typeof s&&null!==s)for(const[e,n]of Object.entries(s))s[e]=rt.parseValue(n,{number:t,boolean:r});else e[n]=rt.parseValue(s,{number:t,boolean:r});return e},cloneClass:function(e){return e?"object"!=typeof e?e:Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e)):e},combine:ot,combines:(e,t={})=>{let r={};if(!e||e.length<=0)return r;const{ignoreUndefined:n=!0,ignoreNull:s=!0,ignoreZero:i=!0,ignoreEmptyArray:o=!0,ignoreEmptyString:a=!0,cover:u=!0}=t;return e.forEach((e=>r=ot(r,e,{ignoreUndefined:n,ignoreNull:s,ignoreZero:i,ignoreEmptyArray:o,ignoreEmptyString:a,cover:u}))),r},observe:at};var lt={...M,...$,...ut,includes:function(e,t,r,n){e=M.isArrayLike(e)?e:function(e){return e?ie(e,function(e){return M.isArrayLike(e)?ce(e):function(e){if(!M.isPrototype(e))return ue(e);var t=[];for(var r in Object(e))$.hasOwnProperty.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}(e)):[]}(e),r=r&&!n?H.toInteger(r):0;var s=e.length;return r<0&&(r=le(s+r,0)),M.isString(e)?r<=s&&e.indexOf(t,r)>-1:!!s&&function(e,t,r){if(t!=t)return function(e,t,r,n){for(var s=e.length,i=r+(n?1:-1);n?i--:++i<s;)if(t(e[i],i,e))return i;return-1}(e,se,r);for(var n=r-1,s=e.length;++n<s;)if(e[n]===t)return n;return-1}(e,t,r)>-1},forof:(e,t)=>{if(!e)return;let r;if(M.isObject(e)&&(r=M.isArray(e)?e.entries():Object.entries(e),r))for(const[e,n]of r)t&&t(e,n)}};var ct={groupBy:function(e,t){return e.reduce(((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e)),{})},first:function(e){if(!e)return;return e.length<=0?void 0:e[0]},last:function(e){if(!e)return;const t=e.length;return t<=0?void 0:e[t-1]},toList:function(e){return Array.isArray(e)?e:e?[e]:[]}};var ft={...ct,stepAction:function(e,t,r=100){if(!M.isFunction(t))return;if(!M.isArray(e)||e.length<=0)return;let n=0;for(;e.length>n;){let s=r+n,i=e.slice(n,s);t&&t(i),n=s}},skip:function(e,t){if(!M.isArray(e)||e.length<=0)return[];const r=t;return e.slice(r)},take:function(e,t,r=0){if(!M.isArray(e)||e.length<=0)return[];const n=r||0;if(n>=e.length)return[];const s=t+n;return e.slice(n,e.length<s?e.length:s)||[]},distinct:function(e){return!M.isArray(e)||e.length<=0?[]:[...new Set(e)]},randoms:function(e,t=1,r=!1){const n=e.length||0;return ne.randoms(n,t,r).map((t=>e[t]))||[]},toKV:(e,t,r)=>{const n={};return t&&r?((e||[]).forEach((e=>{if(!e||!M.isObject(e))return;const s=e[t];(M.isString(s)&&""!==s||M.isNumber(s))&&(n[s]=e[r])})),n):n}};const ht="[object Object]",dt="[object Array]",gt=e=>Object.prototype.toString.call(e),pt=(e,t,r=!1)=>{if(e===t)return;const n=gt(e);if(n===gt(t))if(n===dt&&e.length>=t.length)for(let r=0;r<t.length;r++)pt(e[r],t[r]);else if(n===ht&&Object.keys(e).length>=Object.keys(t).length)for(let n in t)r||void 0!==e[n]?pt(e[n],t[n]):e[n]=null},mt=(e,t,r,n="",s=!1)=>{if(e===t)return;const i=gt(e),o=gt(t);if(i===dt&&o===i&&e.length>=t.length)for(let s=0;s<e.length;s++)mt(e[s],t[s],r,`${n}[${s}]`);else if(i===ht&&o===i&&(s||Object.keys(e).length>=Object.keys(t).length)){const s=Object.keys(e);for(let i of s){const s=e[i],o=t[i],a=gt(s),u=gt(o);if(s!==o)if(a===dt&&u===a&&s.length>=o.length)for(let e=0;e<s.length;e++)mt(s[e],o[e],r,`${n?n+".":""}${i}[${e}]`);else if(a===ht&&u===a&&Object.keys(s).length>=Object.keys(o).length)for(let e in s)mt(s[e],o[e],r,`${n?n+".":""}${i}.${e}`);else r[`${n?n+".":""}${i}`]=s}}else r[n]=e};class yt{list=[];constructor(){this.invoke=this.invoke.bind(this)}use(e){this.list=this.list.concat(e)}invoke(e){return this.list.reduce(((e,t)=>e.then((e=>t(e)))),Promise.resolve(e)).catch((e=>"REFETCH"===e.sig?Promise.resolve(e.result):Promise.reject(e)))}}class wt{reqConfig={};handleRequest;handleEncrypt;handleDecrypt;handleError;interceptors={request:new yt,response:new yt};constructor(e){const{reqConfig:t={},requestEncrypt:r,responseDecrypt:n,handleError:s,api:i}=e;this.reqConfig=t,this.handleEncrypt=r,this.handleDecrypt=n,this.handleError=s,this.handleRequest=i}static blockId="blockid";static requestLock={};lockR(e,t){wt.requestLock[e]={lock:!0,request:t()}}unlockR(e){delete wt.requestLock[e]}getIdFromReq(e){const{url:t,data:r={}}=e;return t+JSON.stringify(r)}getIdFromReqUrl(e){return e.url||""}_fetch(e,t){let r=e;return t&&this.handleEncrypt&&(r=this.handleEncrypt(e)),new Promise(((e,n)=>{this.handleRequest({...r,success:r=>{let n=r;t&&this.handleDecrypt&&(n=this.handleDecrypt(r)),e(n)},fail:e=>{n(e)}})}))}async request(e,t){const r=ut.copy(this.reqConfig[e]),{config:n,...s}=await this.interceptors.request.invoke({url:r.url,data:t||{},header:{"content-type":"application/json"},method:r.method?r.method:"POST",responseType:"text",config:r});let i;try{if("block"===n.model)this.lockR(wt.blockId,(()=>this._fetch(s,n.hasEncrypt))),i=await wt.requestLock[wt.blockId].request;else if(wt.requestLock[wt.blockId]&&wt.requestLock[wt.blockId].lock&&await wt.requestLock[wt.blockId].request,"debounce"===n.model||"debounceUrl"===n.model){let e;e="debounceUrl"===n.model?this.getIdFromReqUrl(s):this.getIdFromReq(s),wt.requestLock[e]||this.lockR(e,(()=>this._fetch(s,n.hasEncrypt))),i=await wt.requestLock[e].request,this.unlockR(e)}else i=await this._fetch(s,n.hasEncrypt)}catch(e){this.handleError&&this.handleError(e)}return this.interceptors.response.invoke({res:i,config:r,reqId:this.getIdFromReq(s),refetch:()=>({sig:"REFETCH",result:this.request(e,t||{})})})}}const bt=e=>"function"!=typeof e?e:(t={})=>new Promise(((r,n)=>{e(Object.assign(t,{success:r,fail:n}))}));var vt={diff:function(e,t){const r={};return(e=>{if(gt(e)===ht)for(let t in e)if(/\w+\.\w+/g.test(t)&&-1===t.indexOf("[")){const r=t.split(".");let n=e,s=r.length;for(let e=0;e<s-1;e++){const t=r[e];gt(n[t])!==ht&&(n[t]={}),n=n[t]}n[r[s-1]]=e[t],delete e[t]}})(e),pt(e,t,!0),mt(e,t,r,"",!0),r},promixify:bt,run:(e,t={})=>e?X.run(bt(e)(t)):X.run(e),formatList:(e,t,r)=>(e||[]).reduce(((e,n,s)=>({...e,[`${r}[${t+s}]`]:n})),{}),ruleValidator:(e,t)=>!!t&&(!Array.isArray(t)||!(t.length<=0)&&t.every((e=>!!e))),Http:wt,setWatcher:e=>{let t=e.data,r=e.watch;Object.keys(r).forEach((n=>{let s=t,i=n.split(".");for(let e=0;e<i.length-1;e++)s=s[i[e]];let o=i[i.length-1],a=r[n].handler||r[n],u=r[n].deep;ut.observe(s,o,a,e,u)}))}};const _t=function(e,{sep:t="&",eq:r="=",max:n=1e3,multiple:s=!0,uri:i=!0,parseNumber:o=!1,parseBoolean:a=!1}={}){t=t||"&",r=r||"=";const u={};if("string"!=typeof e||0===e.length)return u;const l=/\+/g,c=n||1e3;let f=(e=e.split(t)).length;c>0&&f>c&&(f=c);for(let t=0;t<f;++t){let n,o,a,c,f=e[t].replace(l,"%20"),h=f.indexOf(r);h>=0?(n=f.substr(0,h),o=f.substr(h+1)):(n=f,o=""),a=i?decodeURIComponent(n):n,c=i?decodeURIComponent(o):o,$.hasOwnProperty.call(u,a)&&s?Array.isArray(u[a])?u[a].push(c):u[a]=[u[a],c]:u[a]=c}return ut.parseValue(u,{number:o,boolean:a}),u},$t=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}},xt=function(e,t=!0){return t?encodeURIComponent(e):e},kt=function(e,{cleanZero:t=!1,cleanNull:r=!1,cleanWhitespace:n=!1}={}){return!(!t||0!==e)||(!(!r||null!=e)||!(!n||"string"!=typeof e||""!==e.trim()))};var St={parse:_t,stringify:function(e,{sep:t="&",eq:r="=",name:n=null,uri:s=!0,cleanZero:i=!1,cleanNull:o=!1,cleanWhitespace:a=!1}={}){return t=t||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(n){const u=xt($t(n),s)+r,l=e[n];return Array.isArray(l)?l.map((function(e){return u+xt($t(e),s)})).join(t):kt(l,{cleanZero:i,cleanNull:o,cleanWhitespace:a})?"":u+xt($t(l),s)})).filter(Boolean).join(t):n?xt($t(n),s)+r+xt($t(e),s):""},https:e=>e?e.replace(/^http[s]?/,"https"):e,parseUrl:e=>{const t=e.split("?"),r=t[0],n=t.length>1?t[1]:"";let s="";const i=r.match(/[\/]?([\w\_\-]+)[.]?[\w]*[?]?$/);i&&(s=i[1]);return{url:e,path:r,page:s,query:n,params:_t(n,{multiple:!0,uri:!1})}},parsePath:e=>{const t=(e||"").replace(/\\/g,"/").split("?")[0],r=t.lastIndexOf("/")+1,n=t.substring(r),s=n.lastIndexOf("."),i=n.substring(0,s),o=n.substring(s);return{root:t.substring(0,r),name:n,withoutExtension:i,extension:o}},join:(...e)=>{const t=[];return e.forEach((e=>{const r=e.trim().replace(/^\/*(.*?)\/*$/,"$1");r.length>0&&t.push(r)})),t.join("/")}};const At=/%[sdj%]/g;let qt=()=>{};function jt(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 Ct(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(At,(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 Ot(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 Lt(e,t,r){let n=0;const s=e.length;!function i(o){if(o&&o.length)return void r(o);const a=n;n+=1,a<s?t(e[a],i):r([])}([])}"undefined"!=typeof process&&process.env&&"production"!==process.env.NODE_ENV&&"undefined"!=typeof window&&"undefined"!=typeof document&&(qt=(e,t)=>{"undefined"!=typeof console&&console.warn&&"undefined"==typeof ASYNC_VALIDATOR_NO_WARNING&&t.every((e=>"string"==typeof e))&&console.warn(e,t)});class Et extends Error{errors;fields;constructor(e,t){super("Async Validation Error"),this.errors=e,this.fields=t}}function Ft(e,t,r,n,s){if(t.first){const t=new Promise(((t,i)=>{const o=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push(...e[r]||[])})),t}(e);Lt(o,r,(e=>(n(e),e.length?i(new Et(e,jt(e))):t(s))))}));return t.catch((e=>e)),t}const i=!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 Et(l,jt(l))):t(s)};o.length||(n(l),t(s)),o.forEach((t=>{const n=e[t];-1!==i.indexOf(t)?Lt(n,r,f):function(e,t,r){const n=[];let s=0;const i=e.length;function o(e){n.push(...e||[]),s++,s===i&&r(n)}e.forEach((e=>{t(e,o)}))}(n,r,f)}))}));return c.catch((e=>e)),c}function Mt(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],function(e){return!(!e||void 0===e.message)}(r)?(r.field=r.field||e.fullField,r.fieldValue=n,r):{message:"function"==typeof r?r():r,fieldValue:n,field:r.field||e.fullField}}}function Rt(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]={...e[r],...n}:e[r]=n}return e}const Dt=(e,t,r,n,s,i)=>{!e.required||r.hasOwnProperty(e.field||"")&&!Ot(t,i||e.type)||n.push(Ct(s.messages.required,e.fullField))};let Pt;const zt=/^(([^<>()\[\]\\.,;:\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,}))$/,Tt=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,It={integer:e=>It.number(e)&&parseInt(e,10)===e,float:e=>It.number(e)&&!It.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&&!It.array(e),method:e=>"function"==typeof e,email:e=>"string"==typeof e&&e.length<=320&&!!e.match(zt),url:e=>"string"==typeof e&&e.length<=2048&&!!e.match((()=>{if(Pt)return Pt;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}",s=`\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(),i=new RegExp(`(?:^${r}$)|(?:^${s}$)`),o=new RegExp(`^${r}$`),a=new RegExp(`^${s}$`),u=e=>e&&e.exact?i:new RegExp(`(?:${t(e)}${r}${t(e)})|(?:${t(e)}${s}${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)}${s}${t(e)}`,"g");const l=u.v4().source,c=u.v6().source;return Pt=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"),Pt})()),hex:e=>"string"==typeof e&&!!e.match(Tt)},Nt="enum";var Bt={required:Dt,whitespace:(e,t,r,n,s)=>{(/^\s+$/.test(t)||""===t)&&n.push(Ct(s.messages.whitespace,e.fullField))},type:(e,t,r,n,s)=>{if(e.required&&void 0===t)return void Dt(e,t,r,n,s);const i=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(i)>-1?It[i](t)||n.push(Ct(s.messages.types[i],e.fullField,e.type)):i&&typeof t!==e.type&&n.push(Ct(s.messages.types[i],e.fullField,e.type))},range:(e,t,r,n,s)=>{const i="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,h="string"==typeof t,d=Array.isArray(t);if(f?c="number":h?c="string":d&&(c="array"),!c)return!1;d&&(l=t.length),h&&(l=t.replace(u,"_").length),i?l!==e.len&&n.push(Ct(s.messages[c].len,e.fullField,e.len)):o&&!a&&l<e.min?n.push(Ct(s.messages[c].min,e.fullField,e.min)):a&&!o&&l>e.max?n.push(Ct(s.messages[c].max,e.fullField,e.max)):o&&a&&(l<e.min||l>e.max)&&n.push(Ct(s.messages[c].range,e.fullField,e.min,e.max))},enum:(e,t,r,n,s)=>{e[Nt]=Array.isArray(e[Nt])?e[Nt]:[],-1===e[Nt].indexOf(t)&&n.push(Ct(s.messages[Nt],e.fullField,e[Nt].join(", ")))},pattern:(e,t,r,n,s)=>{if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(Ct(s.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(Ct(s.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};const Ut=(e,t,r,n,s)=>{const i=e.type,o=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t,i)&&!e.required)return r();Bt.required(e,t,n,o,s,i),Ot(t,i)||Bt.type(e,t,n,o,s)}r(o)};var Vt={string:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field||"")){if(Ot(t,"string")&&!e.required)return r();Bt.required(e,t,n,i,s,"string"),Ot(t,"string")||(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s),Bt.pattern(e,t,n,i,s),!0===e.whitespace&&Bt.whitespace(e,t,n,i,s))}r(i)},method:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&Bt.type(e,t,n,i,s)}r(i)},number:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s))}r(i)},boolean:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&Bt.type(e,t,n,i,s)}r(i)},regexp:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),Ot(t)||Bt.type(e,t,n,i,s)}r(i)},integer:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s))}r(i)},float:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s))}r(i)},array:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(null==t&&!e.required)return r();Bt.required(e,t,n,i,s,"array"),null!=t&&(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s))}r(i)},object:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&Bt.type(e,t,n,i,s)}r(i)},enum:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&Bt.enum(e,t,n,i,s)}r(i)},pattern:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t,"string")&&!e.required)return r();Bt.required(e,t,n,i,s),Ot(t,"string")||Bt.pattern(e,t,n,i,s)}r(i)},date:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t,"date")&&!e.required)return r();if(Bt.required(e,t,n,i,s),!Ot(t,"date")){let r;r=t instanceof Date?t:new Date(t),Bt.type(e,r,n,i,s),r&&Bt.range(e,r.getTime(),n,i,s)}}r(i)},url:Ut,hex:Ut,email:Ut,required:(e,t,r,n,s)=>{const i=[],o=Array.isArray(t)?"array":typeof t;Bt.required(e,t,n,i,s,o),r(i)},any:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s)}r(i)}};function Ht(){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 Wt=Ht();class Zt{static register=function(e,t){if("function"!=typeof t)throw new Error("Cannot register a validator by type, validator is not a function");Vt[e]=t};static warning=qt;static messages=Wt;static validators=Vt;rules={};_messages=Wt;constructor(e){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=Rt(Ht(),e)),this._messages}validate(e,t={},r=(()=>{})){let n=e,s=t,i=r;if("function"==typeof s&&(i=s,s={}),!this.rules||0===Object.keys(this.rules).length)return i&&i(null,n),Promise.resolve(n);if(s.messages){let e=this.messages();e===Wt&&(e=Ht()),Rt(e,s.messages),s.messages=e}else s.messages=this.messages();const o={};(s.keys||Object.keys(this.rules)).forEach((t=>{const r=this.rules[t];let s=n[t];r.forEach((r=>{let i=r;"function"==typeof i.transform&&(n===e&&(n={...n}),s=n[t]=i.transform(s)),i="function"==typeof i?{validator:i}:{...i},i.validator=this.getValidationMethod(i),i.validator&&(i.field=t,i.fullField=i.fullField||t,i.type=this.getType(i),o[t]=o[t]||[],o[t].push({rule:i,value:s,source:n,field:t}))}))}));const a={};return Ft(o,s,((e,t)=>{const r=e.rule;let i,o=!("object"!==r.type&&"array"!==r.type||"object"!=typeof r.fields&&"object"!=typeof r.defaultField);function u(e,t){return{...t,fullField:`${r.fullField}.${e}`,fullFields:r.fullFields?[...r.fullFields,e]:[e]}}function l(i=[]){let l=Array.isArray(i)?i:[i];!0===s.suppressWarning&&l.length&&Zt.warning("async-validator:",l),l.length&&void 0!==r.message&&(l=[].concat(r.message));let c=l.map(Mt(r,n));if(s.first&&c.length)return a[r.field]=1,t(c);if(o){if(r.required&&!e.value)return void 0!==r.message?c=[].concat(r.message).map(Mt(r,n)):s.error&&(c=[s.error(r,Ct(s.messages.required,r.field))]),t(c);let i={};r.defaultField&&Object.keys(e.value).map((e=>{i[e]=r.defaultField})),i={...i,...e.rule.fields};const o={};Object.keys(i).forEach((e=>{const t=i[e],r=Array.isArray(t)?t:[t];o[e]=r.map(u.bind(null,e))}));const a=new Zt(o);a.messages(s.messages),e.rule.options&&(e.rule.options.messages=s.messages,e.rule.options.error=s.error),a.validate(e.value,e.rule.options||s,(e=>{const r=[];c&&c.length&&r.push(...c),e&&e.length&&r.push(...e),t(r.length?r:null)}))}else t(c)}if(o=o&&(r.required||!r.required&&e.value),r.field=e.field,r.asyncValidator)i=r.asyncValidator(r,e.value,l,e.source,s);else if(r.validator){try{i=r.validator(r,e.value,l,e.source,s)}catch(e){console.error?.(e),s.suppressValidatorError||setTimeout((()=>{throw e}),0),l(e.message)}!0===i?l():!1===i?l("function"==typeof r.message?r.message(r.fullField||r.field):r.message||`${r.fullField||r.field} fails`):i instanceof Array?l(i):i instanceof Error&&l(i.message)}i&&i.then&&i.then((()=>l()),(e=>l(e)))}),(e=>{!function(e){let t=[],r={};for(let r=0;r<e.length;r++)s=e[r],Array.isArray(s)?t=t.concat(...s):t.push(s);var s;t.length?(r=jt(t),i(t,r)):i(null,n)}(e)}),n)}getType(e){if(void 0===e.type&&e.pattern instanceof RegExp&&(e.type="pattern"),"function"!=typeof e.validator&&e.type&&!Vt.hasOwnProperty(e.type))throw new Error(Ct("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]?Vt.required:Vt[this.getType(e)]||void 0}}function Jt(e){return new Zt(e)}var Gt={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:Jt,validate:function(e,t,r={},n=(()=>{})){return X.run(Jt(e).validate(t,r,n))},isChinese:function(e){return!!e&&!!/^[\u4E00-\u9FA5]+$/.test(e)},isNumber:function(e){return!!e&&!!/^[0-9]+$/.test(e)},isFloat:function(e){return!!e&&!!/^(\-|\+)?\d+(\.\d+)?$/.test(e)},isPhoneNumber: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)}};var Yt={pattern:{num:"0-9",zh:"一-龥",en:"A-Za-z"},regex:(e,t)=>new RegExp(e,t),entire:{chinese:/^[\u4E00-\u9FA5]+$/,real:/^(\-|\+)?\d+(\.\d+)?$/,cssReal:/^(\-|\+)?\d*(\.)?\d+$/,id:/^[A-Za-z0-9]+$/,yyyyMMdd:/^(\d{4})-?(\d{2})-?(\d{2})$/}};const Kt=`${s.keyUpper}${s.keyLower}${s.keyNumber}+/=`,Qt=e=>{let t,r,n,s,i,o,a,u="",l=0;for(e=Xt(e);l<e.length;)t=e.charCodeAt(l++),r=e.charCodeAt(l++),n=e.charCodeAt(l++),s=t>>2,i=(3&t)<<4|r>>4,o=(15&r)<<2|n>>6,a=63&n,isNaN(r)?o=a=64:isNaN(n)&&(a=64),u=u+Kt.charAt(s)+Kt.charAt(i)+Kt.charAt(o)+Kt.charAt(a);return u},Xt=e=>{const t=e.replace(/\r\n/g,"\n");let r="";for(let e=0;e<t.length;e++){let n=t.charCodeAt(e);n<128?r+=String.fromCharCode(n):n>127&&n<2048?(r+=String.fromCharCode(n>>6|192),r+=String.fromCharCode(63&n|128)):(r+=String.fromCharCode(n>>12|224),r+=String.fromCharCode(n>>6&63|128),r+=String.fromCharCode(63&n|128))}return r},er=e=>{let t="",r=0,n=0,s=0,i=0;for(;r<e.length;)n=e.charCodeAt(r),n<128?(t+=String.fromCharCode(n),r++):n>191&&n<224?(s=e.charCodeAt(r+1),t+=String.fromCharCode((31&n)<<6|63&s),r+=2):(s=e.charCodeAt(r+1),i=e.charCodeAt(r+2),t+=String.fromCharCode((15&n)<<12|(63&s)<<6|63&i),r+=3);return t};var tr={encode:Qt,decode:e=>{let t,r,n,s,i,o,a,u="",l=0;for(e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");l<e.length;)s=Kt.indexOf(e.charAt(l++)),i=Kt.indexOf(e.charAt(l++)),o=Kt.indexOf(e.charAt(l++)),a=Kt.indexOf(e.charAt(l++)),t=s<<2|i>>4,r=(15&i)<<4|o>>2,n=(3&o)<<6|a,u+=String.fromCharCode(t),64!=o&&(u+=String.fromCharCode(r)),64!=a&&(u+=String.fromCharCode(n));return u=er(u),u},encodeByOss:e=>Qt(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")};var rr={...s,base64:tr,uuid:i,newId:(e,t=!1,r="")=>{const n=i(e||32);return t?d.now().format("yyyyMMddhhmmss")+r+n:n}};const nr=e=>{if(!e)return"";if(!lt.isObject(e))return"";let t="";return lt.forof(e,((e,r)=>{r&&(t+=`${rt.kebabCase(e)}:${r};`)})),t},sr=["display","position","top","bottom","left","right","padding","margin","marginTop","marginRight","marginBottom","marginLeft","paddingTop","paddingRight","paddingBottom","paddingLeft","height","width","fontSize","textAlign","fontFamily","border","borderLeft","borderRight","borderTop","borderBottom","borderColor","borderRadius","background","backgroundImage","backgroundRepeat","backgroundSize","backgroundPosition","color","overflow","opacity","flexDirection","justifyContent","alignItems","flexWrap","alignContent","alignSelf","flex","flexBasis","flexFlow","flexShrink","pointerEvents"],ir=["top","bottom","left","right","padding","margin","marginTop","marginRight","marginBottom","marginLeft","paddingTop","paddingRight","paddingBottom","paddingLeft","height","width","border","borderLeft","borderRight","borderTop","borderBottom","borderColor","borderRadius"],or=(e,t="px")=>e&&t?"0"===e?e:Gt.isFloat(e.toString())?`${e}${t}`:e:e;var ar={stringify:nr,parse:(e,{camel:t=!1,pure:r=!0}={})=>{if(!e.trim())return;const n=St.parse(e,{sep:";",eq:":",uri:!1}),s={};return lt.forof(n,((e,n)=>{if(!n)return;const i=t?r&&e.startsWith("_")?e:rt.camelCase(e):e;Gt.isFloat(n)||n.length>=2&&n.startsWith(".")&&Gt.isNumber(n.substr(1))?s[i]=+n:s[i]=n})),s},fixValue:or,style:(e,t="px")=>{if(!e)return"";const r=lt.copy(e,{fields:sr});lt.forof(r,((e,n)=>{(ir.includes(e)||ir.includes(rt.camelCase(e)))&&(r[e]=or(n,t))}));return nr(r)},commonFields:sr};const ur=(e,t)=>{try{const r=document.createElement("a");r.href=t,r.download=e,r.click()}catch(e){console.warn("[ddan] downloadUrl",e)}};var lr={dataURLtoFile:(e,t)=>{let r=e.split(","),n=r[0].match(/:(.*?);/)[1],s=window.atob(r[1]),i=s.length,o=new Uint8Array(i);for(;i--;)o[i]=s.charCodeAt(i);return new File([o],t,{type:n})},dataURLtoBlob:e=>{let t=e.split(","),r=t[0].match(/:(.*?);/)[1],n=window.atob(t[1]),s=n.length,i=new Uint8Array(s);for(;s--;)i[s]=n.charCodeAt(s);return new Blob([i],{type:r})},blobToFile:(e,t)=>(e.lastModifiedDate=new Date,e.name=t,e),readAsDataURL:(e,t)=>{var r=new FileReader;r.readAsDataURL(e),r.onloadend=function(e){t&&t(e.target?.result)}},downloadUrl:ur,download:(e,t)=>{if(!t)return;if("string"==typeof t)return void ur(e,t);const r=URL?.createObjectURL(t);r&&(ur(e,r),URL?.revokeObjectURL(r))},downloadImage:e=>{try{if(!e)return;const t=e.match(/\/(\w+.\w+)$/)[1],r=new Image;r.onload=()=>{let e=document.createElement("canvas");e.width=r.width,e.height=r.height;let n=e.getContext("2d");n&&n.drawImage(r,0,0,r.width,r.height);let s=e.toDataURL();ur(t,s)},r.src=e,r.setAttribute("crossOrigin","Anonymous")}catch(e){console.warn("[ddan] downloadImage",e)}return Promise.resolve()},watermark:(e,{width:t=400,height:r=300,angle:n=0,fillStyle:s="rgba(0, 0, 0, 0.2)",font:i="16px Arial",textAlign:o="left",textBaseline:a="middle"}={})=>{try{if(!e)return"";const u=document.createElement("canvas");u.width=t,u.height=r;const l=u.getContext("2d");return l?(n&&l.rotate(n*Math.PI/180),s&&(l.fillStyle=s),i&&(l.font=i),o&&(l.textAlign=o),a&&(l.textBaseline=a),l.fillText(e,u.width/10,u.height/2),`url(${u.toDataURL()})`):""}catch(e){return console.warn("[ddan] watermark",e),""}},fetchDataURL:async e=>{const t={contentType:"",dataUrl:""};try{return t.dataUrl=await fetch(e).then((e=>(t.contentType=e.headers.get("content-type")||"",e.arrayBuffer()))).then((e=>`${`data:${t.contentType};base64,`+btoa(new Uint8Array(e).reduce(((e,t)=>e+String.fromCharCode(t)),""))}`)),t}catch(e){return t}}};const cr=new class{__defStyle="vertical-align: middle; mask-position: 50% 50%; mask-repeat: no-repeat; mask-size: 100%; -webkit-mask-position: 50% 50%; -webkit-mask-repeat: no-repeat; -webkit-mask-size: 100%; background-color: currentColor;";__map={back:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M609.408 149.376L277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z"/></svg>',right:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"/></svg>',home:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M13 19.8h3.8v-7h3.303L12 4.697 3.897 12.8H7.2v7H11V17h2v2.8zm5 .2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-6H3.414a1 1 0 0 1-.707-1.707l8.586-8.586a1 1 0 0 1 1.414 0l8.586 8.586A1 1 0 0 1 20.586 14H18v6z" fill-rule="evenodd" fill-opacity=".9"/></svg>',close:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M764.288 214.592L512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"/></svg>',close_circle:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M466.752 512l-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248L466.752 512z"/><path fill="currentColor" d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"/></svg>',close_circle_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"/></svg>',warning:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M928.99 755.83L574.6 203.25c-12.89-20.16-36.76-32.58-62.6-32.58s-49.71 12.43-62.6 32.58L95.01 755.83c-12.91 20.12-12.9 44.91.01 65.03 12.92 20.12 36.78 32.51 62.59 32.49h708.78c25.82.01 49.68-12.37 62.59-32.49 12.91-20.12 12.92-44.91.01-65.03zM554.67 768h-85.33v-85.33h85.33V768zm0-426.67v298.66h-85.33V341.32l85.33.01z" fill="currentColor"/></svg>',play:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M512 1024A512 512 0 1 1 512 0a512 512 0 0 1 0 1024zm3.008-92.992a416 416 0 1 0 0-832 416 416 0 0 0 0 832zM383.232 287.616l384 224.896-384 223.104v-448z" fill="currentColor"/></svg>',lock:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32H224zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96z"/><path fill="currentColor" d="M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32zm192-160v-64a192 192 0 1 0-384 0v64h384zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64z"/></svg>',lock_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M467.2 713.92v115.968a44.8 44.8 0 0 0 89.6 0V713.92c26.752-14.72 44.8-42.304 44.8-73.92 0-47.104-40.128-85.312-89.6-85.312-49.472 0-89.6 38.208-89.6 85.312 0 31.616 18.048 59.136 44.8 73.92zM64 384h896v640H64V384zm268.8 0h358.4V256c0-94.272-80.256-170.688-179.2-170.688-98.944 0-179.2 76.416-179.2 170.688v128zM512 0c148.48 0 268.8 114.56 268.8 256v128H243.2V256C243.2 114.56 363.52 0 512 0z" fill="currentColor"/></svg>',plus:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64h352z"/></svg>',plus_circle:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z"/><path fill="currentColor" d="M480 672V352a32 32 0 1 1 64 0v320a32 32 0 0 1-64 0z"/><path fill="currentColor" d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"/></svg>',plus_circle_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-38.4 409.6H326.4a38.4 38.4 0 1 0 0 76.8h147.2v147.2a38.4 38.4 0 0 0 76.8 0V550.4h147.2a38.4 38.4 0 0 0 0-76.8H550.4V326.4a38.4 38.4 0 1 0-76.8 0v147.2z"/></svg>',star:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 747.84l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72L512 747.84zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"/></svg>',star_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M283.84 867.84L512 747.776l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72z"/></svg>',share:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M679.872 348.8l-301.76 188.608a127.808 127.808 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"/></svg>',love:'<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M171.712 571.648l.352.32 287.904 252.8a64 64 0 0 0 82.912 1.344l296.832-244.544a215.584 215.584 0 1 0-301.824-300.576L512 316.672l-25.888-35.616a215.584 215.584 0 1 0-314.4 290.624zM32 407.584A279.584 279.584 0 0 1 512 212.64a279.584 279.584 0 0 1 480 194.944 278.144 278.144 0 0 1-113.024 224.512l-295.36 243.392a128 128 0 0 1-165.888-2.592L129.984 620.16A278.976 278.976 0 0 1 32 407.584z"/></svg>',love_fill:'<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M32 407.584A279.584 279.584 0 0 1 512 212.64a279.584 279.584 0 0 1 480 194.944 278.144 278.144 0 0 1-113.024 224.512L562.592 892.8a96 96 0 0 1-124.416-1.952L130.016 620.16A278.976 278.976 0 0 1 32 407.584z"/></svg>'};getBase64=e=>{const t=this.getSVG(e);return t?.url||""};getSVG=e=>{if(!e)return;const t=this.__map[e];if(!t)return;return{url:this.toBase64(t),escape:this.toEscape(t)}};toBase64=e=>{if(!e)return"";const t=this._tiny(e);return`data:image/svg+xml;base64,${tr.encode(t)}`};_tiny=e=>e?e.replace(/<!--(.*)-->/g,"").replace(/[\r\n]/g," ").replace(/"/g,"'"):"";toEscape=e=>{if(!e)return"";return`data:image/svg+xml,${this._tiny(e).replace(/%/g,"%25").replace(/&/g,"%26").replace(/#/g,"%23").replace(/{/g,"%7B").replace(/}/g,"%7D").replace(/</g,"%3C").replace(/>/g,"%3E")}`};getStyle(e,t={}){if(!e)return"";const r=this.__map[e];return r?this.toStyle(r,t):""}toStyle(e,t={}){if(!e)return"";const r=this.toBase64(e);return r?this.getStyleByUrl(r,t):""}getStyleByUrl(e,t={}){if(!e)return"";const{key:r="mask-image",gradientValue:n="radial-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5))",gradient:s=!1,defStyle:i=this.__defStyle}=t,o=s&&n?`${n}, url("${e}")`:`url("${e}")`;return`${r}:${o};-webkit-${r}:${o};${i}`}};var fr={ossImage:(e,t={})=>{if(!e)return e;const r=St.parseUrl(e).path;if(t.domain){if(!e.startsWith("http"))return e;const r=ft.toList(t.domain||""),n=e.match(/^http[s]?:\/\/([\w.]+)[\w\W]+/)[1]||"";if(!n||!r.includes(n))return e}const n=[];return t.webp&&!r.endsWith(".gif")&&n.push("format,webp"),t.resize&&n.push(`resize,s_${t.resize}`),t.interlace&&(n.push("interlace,1"),!n.every((e=>!e.startsWith("format")))||r.endsWith(".gif")||r.endsWith(".jpg")||n.push("format,jpg")),n.length<=0?e:`${r}?x-oss-process=image/${n.join("/")}`},ossSnapshot:(e,t={})=>{if(!e)return e;const r=St.parseUrl(e).path,n=["snapshot"],{m:s="fast",f:i="jpg"}=t;return(t.t||0===t.t)&&n.push(`t_${t.t}`),t.w&&n.push(`w_${t.w}`),t.h&&n.push(`h_${t.h}`),s&&n.push(`m_${s}`),i&&n.push(`f_${i}`),t.ar&&n.push(`ar_${t.ar}`),`${r}?x-oss-process=video/${n.join(",")}`}};var hr={uint8ArrayToString:function(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},stringToArrayBuffer:function(e){const t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r);for(let r=0;r<t;r++)n[r]=e.charCodeAt(r);return r}};const dr=({url:e,options:t})=>{const r={"Content-Type":"application/json; charset=utf-8",...t.headers||{}};return t.headers=r,new Promise(((r,n)=>{fetch(e,t).then((e=>{r(e.json())})).catch((e=>{n(e)}))}))};function gr(e){const{response:t}=e;return 0===t.code?Promise.resolve(t):Promise.reject(t)}function pr(e){const{url:t="",host:r,options:n}=e,s=e;if(t.startsWith("http://")||t.startsWith("https://")||(s.url=(r||"")+t),"GET"===n.method.toUpperCase()&&n.body){const e=JSON.parse(n.body);if(lt.isPlainObject(e)){const r=St.stringify(e),n=-1===t.indexOf("?")?"?":"&";s.url=`${s.url||""}${n}${r}`,delete s.options.body}}return n&&n.plugins&&delete s.options?.plugins,n&&n.model&&delete s.options?.model,s}class mr{host="";reqConfig={};handleError;interceptors={request:new yt,response:new yt};constructor(e){this.host=e.host||"",this.reqConfig=e.config,this.interceptors.request.use(e.handleRequest||[]),this.interceptors.request.use(pr),this.interceptors.response.use(e.handleResponse||gr),this.handleError=e.handleError}static blockId="blockid";static requestLock={};lockR(e,t){mr.requestLock[e]={lock:!0,request:t()}}unlockR(e){delete mr.requestLock[e]}getIdFromReq(e){const{url:t,data:r={}}=e;return t+JSON.stringify(r)}getIdFromReqUrl(e){return e.url||""}async fetch(e,t){const r=lt.copy(this.reqConfig[e])||{},n={host:this.host,url:r.url||"",options:{...r||{},body:JSON.stringify({...t||{}})}};try{const s=await this.interceptors.request.invoke(n);let i;if(delete s.options.plugins,"block"===r.model)this.lockR(mr.blockId,(()=>dr(s))),i=await mr.requestLock[mr.blockId].request;else if(mr.requestLock[mr.blockId]&&mr.requestLock[mr.blockId].lock&&await mr.requestLock[mr.blockId].request,"debounce"===r.model||"debounceUrl"===r.model){let e;e="debounceUrl"===r.model?this.getIdFromReqUrl(s):this.getIdFromReq(s),mr.requestLock[e]||this.lockR(e,(()=>dr(s))),i=await mr.requestLock[e].request,this.unlockR(e)}else i=await dr(s);return this.interceptors.response.invoke({response:i,config:r,refetch:()=>({sig:"REFETCH",result:this.fetch(e,t)})})}catch(e){return this.handleError&&this.handleError(e),Promise.reject(e)}}}class yr{key;storage;fields=[];constructor(e){this.key=e?.key||"",this.fields=e?.fields||[],this.storage=e?.storage||void 0}save=X.debounce((e=>{if(this.key&&this.storage)try{const{setItem:t,setStorageSync:r}=this.storage;if(r)return r(this.key,e);if(t)return t(this.key,JSON.stringify(e))}catch(e){console.error("persit save ",e)}}));read(){if(this.key&&this.storage)try{const{getItem:e,getStorageSync:t}=this.storage;if(t)return t(this.key);if(e){const t=e(this.key);return JSON.parse(t)}}catch(e){return void console.error("persit read ",e)}}handleSave(e,t){if(!this.fields.includes(t)||!e)return;const r=ut.copy(e,{fields:this.fields});this.save(r)}}class wr extends o{setters={};getters={};actions={};persist;constructor(){super()}async dispatch(e,t=void 0){const r=this,n=Reflect.get(r.actions,e);if(!M.isFunction(n))return;const[,s]=await X.run(n({...r,commit:r.commit.bind(r),query:r.query.bind(r),dispatch:r.dispatch.bind(r)},t));return s}async query(e){const t=Reflect.get(this,e);let r;if(null!=t&&""!==t)r=ut.copy(t);else{const[,t]=await X.exec((()=>this.dispatch(e)),`${this.__eventId}_${e}`);r=t}return r}commit(e,t){M.isObject(t)&&(t=ut.copy(t)),this[e]=t}}const br=(e,t)=>{const r=Object.assign(new wr,e||{});r.__persist=new yr(t||r.persist);const n=r.__persist.read(),s=n?Object.assign(r,n):r;return new Proxy(s,{get:(e,t,r)=>{const n=Reflect.get(e.getters,t);return M.isFunction(n)?n(e):Reflect.get(e,t,r)},set:(e,t,r,n)=>{const s=Reflect.get(e.setters,t);if(M.isFunction(s)&&!s(e,r))return!0;const i=Reflect.set(e,t,r,n);return i&&(e.emit(t.toString(),r),e?.__persist?.handleSave(e,t.toString())),i},has:(e,t)=>Reflect.has(e,t)})};class vr{host="";list=[];constructor(e,t={}){this._parseHost(e);const{width:r=500,height:n=400}=t,s=St.parseUrl(e)?.params||{};s["x-oss-process"]=`image/resize,w_${r},h_${n},m_fill`;const i=St.stringify(s,{uri:!1});this.list.push(`${e}?${i}`)}_parseHost(e){e&&!this.host&&/^http[s]?:\/\/([\w.]+)/.test(e)&&(this.host=e.replace(/^http[s]?:\/\/([\w.]+)[\w\W]+/,"$1"))}image(e,t={}){if(!e||!e.includes(this.host))return;if(this.list.length<=0)return;const r={g:"nw",...t},n=e.replace(/^http[s]?:\/\/[\w.]+\/([\w-.,_/?%&=]+)$/,"$1"),s=rr.base64.encodeByOss(n),i=St.stringify({image:s,...r},{sep:",",eq:"_"});this.list.push(`/watermark,${i}`)}text(e,t={},r={}){if(!e)return;const n={g:"nw",...t},s=rr.base64.encodeByOss(e),i=St.stringify({text:s,...n,...r},{sep:",",eq:"_"});this.list.push(`/watermark,${i}`)}result(){return this.list.join("")}}class _r{__list=[];__running=!1;__waitting=!1;constructor(){this.clear()}pipe(e){return this.__waitting||(e&&this.__list.push(e),this._step()),this}delay(e=0){return this.__waitting||(e&&this.__list.push((()=>X.sleep(e))),this._step()),this}clear(){return this.__list=[],this.__waitting=!1,this.__running=!1,this}async _step(){if(this.__list.length<=0)return;if(this.__running)return;this.__running=!0;const e=this.__list.shift();await X.run(e),this.__running=!1,this.__waitting||this._step()}async whenAll(){for(this.__waitting=!0,await this._step();;)if(this.__running)await X.sleep(100);else{if(this.__list.length<=0)break;await this._step()}return this.__waitting=!1,this.clear()}}class $r{__list=[];constructor(){this.clear()}add(e){const t=X.run(e);return this.__list.push(t),this}clear(){return this.__list=[],this}wait(){const e=this.__list;return this.clear(),Promise.allSettled(e)}}const xr=new class{state=br(new wr);frame=new a;cache=new Map;cacheTime=new Map;setCache=(e,t)=>null!=t&&(!!e&&(this.cache.set(e,t),this.cacheTime.set(e,Date.now()),!0));hasCache=e=>{if(!e)return!1;this.cache.has(e)};getCache=e=>{if(e)return this.cache.get(e)};getCacheTime=e=>e&&this.cacheTime.get(e)||0;removeCache=e=>{e&&(this.cache.delete(e),this.cacheTime.delete(e))};cacheId=e=>`_${e}_cache_`;timesRecord=(e,t={})=>{if(!e)return;const{mode:r="running",cycle:n="day"}=t||{},s=this.cacheId(r),i=this.getCache(s)||{},o=Date.now(),a=i[e],u={time:o,count:1,cycle:n};return a&&("day"!==n||d.isToday(a.time||0))&&(u.count=1+(a.count||0)),i[e]=u,this.setCache(s,i),i};timesValid=(e,t={})=>{if(!e)return!1;const{max:r=1,interval:n=0,mode:s="running",cycle:i="day"}=t||{},o=this.cacheId(s);let a=this.getCache(o);if(!a)return!0;const u=a[e];if(!u)return!0;if("day"===i&&!d.isToday(u.time||0))return!0;if(r<=(u.count||0))return!1;return!(Date.now()-(u.time||0)<n)};timesClean=(e="running")=>{const t=this.cacheId(e),r=this.getCache(t);if(!r)return;const n=lt.copy(r);lt.forof(n,((e,t)=>{"day"!==t.cycle&&void 0!==t.cycle||d.isToday(t.time||0)||delete r[e]})),this.setCache(t,r)};pipeline=()=>new _r;parallel=()=>new $r};class kr{id="";start=0;end=0;cost=0;name="";type="";desc="";timeStartDesc="";timeEndDesc="";isDone=!1;flag=0;constructor(){this.id=i(),this.start=Date.now(),this.timeStartDesc=d.format(this.start,"hh:mm:ss.SSS")}get time(){return this.flag?this.end:this.start}get timeDesc(){return this.flag?this.timeEndDesc:this.timeStartDesc}done=(e=Date.now())=>{this.start&&(this.end=e,this.cost=this.end-this.start,this.timeEndDesc=d.format(this.end,"hh:mm:ss.SSS"),this.isDone=!0)}}const Sr=new class{__map=new Map;__trackList=[];opened=!0;clear(){return this.__map.clear(),this.__trackList=[],this}add(e,{desc:t="",type:r=""}={}){if(!e||!this.opened)return"";const n=new kr;return n.name=e,n.type=r,n.desc=t,this.__trackList.push(n),n.id}done(e){if(!e||!this.opened)return;const t=this.__trackList.find((t=>t.id===e));if(!t||t.isDone)return;t.done();const r=ut.cloneClass(t);r.id=this._endId(e),r.flag=1,r.desc=`${t.desc} | end`,this.__trackList.push(r)}getTrack(e){return this.__trackList.find((t=>t.id===e))}getLine(e){if(!e||e.endsWith("-end"))return[];const t=this.__trackList.findIndex((t=>t.id===e));if(t<0)return[];const r=this._endId(e),n=this.__trackList.findIndex((e=>e.id===r)),s=n<0?this.__trackList.length-t:n-t+1;return ft.take(this.__trackList,s,t)}getList(e,t=""){if(!e)return[];const r=this.__trackList.filter((t=>t.name===e));if(r.length<=0)return[];if(!t)return r;const n=this._endId(t);return this.__trackList.filter((e=>e.id===t||e.id===n))}get list(){return this.__trackList}get size(){return this.__trackList.length}_endId=e=>`${e}-end`;report(e){const t=this.list;if(!t||t.length<=0)return;const r=t[0].time;t.forEach((t=>e&&e(t,r)))}},Ar={overrode:!1,tag:!1,format:"hh:mm:ss.SSS"},qr=e=>(...t)=>{const r=console[e];Ar.overrode?r(...t):jr(r,e,...t)},jr=(e,t,...r)=>{const n=d.format(new Date,Ar.format),s=Ar.tag?`[${t}]`:"";s&&n?e.apply(console,[`${n} ${s}`,...r]):n?e.apply(console,[`${n}`,...r]):s?e.apply(console,[`${s}`,...r]):e.apply(console,[...r])};var Cr={override:()=>{if(Ar.overrode)return;Ar.overrode=!0;["log","info","warn","error"].forEach((e=>{const t=console[e];console[e]=(...r)=>{jr(t,e,...r)}}))},log:qr("log"),info:qr("info"),warn:qr("warn"),error:qr("error"),config:({tag:e=Ar.tag,format:t=Ar.format}={})=>{Ar.tag=e,Ar.format=t}},Or={gbk:e,time:d,hook:X,math:ne,util:lt,list:ft,string:rt,obj:ut,crypto:rr,mini:vt,qs:St,css:ar,cdn:fr,html:lr,icon:cr,rule:Gt,regex:Yt,convert:hr,Event:o,Http:mr,Store:wr,storeRef:br,Persist:yr,persistConfig:(e,t,r)=>({key:e,fields:t,storage:r}),watermark:(e,t)=>new vr(e,t),joker:xr,tracker:Sr,logger:Cr};export{Or 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 s=0;s<e.length&&(e.charCodeAt(s)>127||94===e.charCodeAt(s)?r+=2:r++,!(r>t));s++)n=s;return e.substr(0,n+1)}};const t="0123456789",r="abcdefghijklmnopqrstuvwxyz",n="ABCDEFGHIJKLMNOPQRSTUVWXYZ";var s={keyNumber:t,keyLower:r,keyUpper:n,keyChars:t+r+n};const i=(e=0,t=0)=>{const r=s.keyChars.split(""),n=[];let i;if(t=t||r.length,e)for(i=0;i<e;i++)n[i]=r[0|Math.random()*t];else{let e;for(n[8]=n[13]=n[18]=n[23]="-",n[14]="4",i=0;i<36;i++)n[i]||(e=0|16*Math.random(),n[i]=r[19==i?3&e|8:e])}return n.join("")};class o{__map;__tagList;__eventId="";constructor(){this.__map=new Map,this.__tagList=[],this.__eventId=i()}clear(){return this.__map.clear(),this}on(e,t,r=""){if(!e||!t)return this;let n=this.__map.get(e);return n||(n=new Set,this.__map.set(e,n)),n.add(t),r&&this.__tagList.push({name:e,handler:t,tag:r}),this}emit(e,...t){if(!e)return this;const r=this.__map.get(e);if(!r)return this;return[...r].forEach((e=>e&&e(...t))),this}off(e,t){if(!e||!t)return this;this.__tagList=this.__tagList.filter((r=>r.name!==e||r.handler!==t));const r=this.__map.get(e);return r?(r.delete(t),r.size<=0&&this.__map.delete(e),this):this}remove(e){return e?(this.__tagList=this.__tagList.filter((t=>t.name!==e)),this.__map.delete(e),this):this}removeByTag(e){if(!e)return this;return this.__tagList.filter((t=>t.tag===e)).forEach((e=>{this.off(e.name,e.handler)})),this.__tagList=this.__tagList.filter((t=>t.tag!==e)),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)}}class a{_loopTimer;_event=new o;started=!1;interval=0;constructor(e=0){this.interval=e||500}start(){return this.started||(this.stop(),this._loopTimer=setInterval((()=>{this._handleLoop()}),this.interval),this.started=!0),this}stop(){return this._loopTimer?(clearInterval(this._loopTimer),this._loopTimer=0,this.started=!1,this):this}restart(){return this.stop(),this.start(),this}on(e){return this._event.on("frame",e),this}off(e){return e?(this._event.off("frame",e),this):this}_handleLoop(){this._event.emit("frame")}}var u={oneDay:864e5,oneHour:36e5,oneMinute:6e4,oneSecond:1e3};class l{date;timestamp=0;yyyy=0;yy="";M=0;MM="";d=0;dd="";h=0;hh="";m=0;mm="";s=0;ss="";S=0;SS="";SSS="";constructor(e){if(!e)return;const t="string"==typeof e||"number"==typeof e?new Date(e):e;t&&(this.date=t,this.timestamp=t.getTime(),this.toDate())}toDate(){return this.date?(this.yyyy=this.date.getFullYear(),this.yy=`${this.yyyy}`.substr(2),this.M=this.date.getMonth()+1,this.MM=(this.M<10?"0":"")+this.M,this.d=this.date.getDate(),this.dd=(this.d<10?"0":"")+this.d,this.h=this.date.getHours(),this.hh=(this.h<10?"0":"")+this.h,this.m=this.date.getMinutes(),this.mm=(this.m<10?"0":"")+this.m,this.s=this.date.getSeconds(),this.ss=(this.s<10?"0":"")+this.s,this.S=this.date.getMilliseconds(),this.SS=(this.S<10?"0":"")+this.S,this.SSS=this.S.toString().padStart(3,"0"),this):this}toCountdown(e=""){const t={countdown:0,timestamp:0,seconds:0,d:0,dd:"",h:0,hh:"",m:0,mm:"",s:0,ss:"",S:0,SS:"",SSS:"",desc:""};if(!this.timestamp)return t;t.timestamp=this.timestamp,t.countdown=Math.max(t.timestamp-Date.now(),0),t.seconds=Math.floor(t.countdown/u.oneSecond);let r=t.countdown;t.d=Math.floor(r/u.oneDay),t.dd=(t.d<10?"0":"")+t.d,r%=u.oneDay,t.h=Math.floor(r/u.oneHour),t.hh=(t.h<10?"0":"")+t.h,r%=u.oneHour,t.m=Math.floor(r/u.oneMinute),t.mm=(t.m<10?"0":"")+t.m,r%=u.oneMinute,t.s=Math.floor(r/u.oneSecond),t.ss=(t.s<10?"0":"")+t.s,r%=u.oneSecond,t.S=r,t.SS=(t.S<10?"0":"")+t.S,t.SSS=t.S.toString().padStart(3,"0");let n=e;return n||(n=t.countdown>u.oneHour?"hh:mm:ss":t.countdown>u.oneMinute?"mm:ss":"ss"),t.desc=n.replace(/\bdd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>t[e])),t}add(e=0){return e?(this.timestamp=this.timestamp+e,this.date=new Date(this.timestamp),this.toDate(),this):this}format(e="yyyy-MM-dd hh:mm:ss"){return e.replace(/\byyyy|yy|MM|M|dd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>this[e]))}}const c=(e,t="yyyy-MM-dd hh:mm:ss")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e;return r?f(r).format(t):""},f=e=>{const t="string"==typeof e||"number"==typeof e?new Date(e):e;return new l(t||0)};function h({year:e=0,month:t=0,date:r=0,hour:n=0,minute:s=0,second:i=0}){const o=`${e||"yyyy"}/${t||"MM"}/${r||"dd"} ${n}:${s}:${i}`;return new Date(c(Date.now(),o)).getTime()}var d={...u,now:function(){return f(new Date)},isToday:e=>e&&(new Date).toDateString()===new Date(e).toDateString(),parseTimestamp:h,todayZero:()=>h({}),format:c,countdown:(e,t="")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e;if(!r)return"";return f(r).toCountdown(t)},dtime:f,loopFrame:(e=500)=>new a(e)},g="object"==typeof global&&global&&global.Object===Object&&global,p="object"==typeof self&&self&&self.Object===Object&&self;const m=(g||p||Function("return this")()).Symbol,{toString:y,hasOwnProperty:w,propertyIsEnumerable:b}=Object.prototype,v=m?m.toStringTag:void 0;function _(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":v&&v in Object(e)?function(e){const t=w.call(e,v),r=e[v];let n=!1;try{e[v]=void 0,n=!0}catch(e){}const s=y.call(e);return n&&(t?e[v]=r:delete e[v]),s}(e):y.call(e)}var $={getTag:_,getType:function(e){return(_(e).match(/\w+/g)||["object","Undefined"])[1]||""},toString:y,hasOwnProperty:w,propertyIsEnumerable:b},x="[object Function]",k="[object GeneratorFunction]",S="[object AsyncFunction]",A=9007199254740991;const j=/^(?:0|[1-9]\d*)$/;function q(e){const t=typeof e;return null!=e&&("object"==t||"function"==t)}function C(e){return null!=e&&"object"==typeof e}const O=Array.isArray;function L(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=A}(e.length)&&!F(e)}function E(e){return C(e)&&L(e)}function F(e){var t=q(e)?$.getTag(e):"";return t===x||t===k||t===S}var M={is:function(e,t){return $.getTag(e)===`[object ${t}]`},isNumber:function(e){return"[object Number]"===$.getTag(e)},isString:function(e){return"string"==typeof e||!O(e)&&C(e)&&"[object String]"==$.getTag(e)},isObject:q,isObjectLike:C,isPlainObject:function(e){if(!C(e)||"[object Object]"!=$.getTag(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t},isSymbol:function(e){return"symbol"==typeof e||C(e)&&"[object Symbol]"===$.getTag(e)},isFunction:F,isArray:O,isArrayLikeObject:E,isIndex:function(e,t){return!!(t=null==t?A:t)&&("number"==typeof e||j.test(e))&&e>-1&&e%1==0&&e<t},isArrayLike:L,isPrototype:function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Object.prototype)},isArguments:function(e){return E(e)&&$.hasOwnProperty.call(e,"callee")&&(!$.propertyIsEnumerable.call(e,"callee")||"[object Arguments]"==$.toString.call(e))},isPromise:function(e){return"[object Promise]"===(q(e)?$.getTag(e):"")}};const R=NaN,D=/^\s+|\s+$/g,P=/^[-+]0x[0-9a-f]+$/i,z=/^0b[01]+$/i,T=/^0o[0-7]+$/i,I=parseInt,N=1/0,B=17976931348623157e292;function U(e){if("number"==typeof e)return e;if(M.isSymbol(e))return R;if(M.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=M.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(D,"");const t=z.test(e);return t||T.test(e)?I(e.slice(2),t?2:8):P.test(e)?R:+e}function V(e){return e?(e=U(e))===N||e===-N?(e<0?-1:1)*B:e==e?e:0:0===e?e:0}var H={toNumber:U,toFinite:V,toInteger:function(e){var t=V(e),r=t%1;return t==t?r?t-r:t:0}};const W="Expected a function",Z=Math.max,J=Math.min;function G(e,t=300,r={}){var n,s,i,o,a,u,l=0,c=!1,f=!1,h=!0;if("function"!=typeof e)throw new TypeError(W);function d(t){var r=n,i=s;return n=s=void 0,l=t,o=e.apply(i,r)}function g(e){var r=e-u;return void 0===u||r>=t||r<0||f&&e-l>=i}function p(){var e=Date.now();if(g(e))return m(e);a=setTimeout(p,function(e){var r=t-(e-u);return f?J(r,i-(e-l)):r}(e))}function m(e){return a=void 0,h&&n?d(e):(n=s=void 0,o)}function y(...e){var r=Date.now(),i=g(r);if(n=arguments,s=this,u=r,i){if(void 0===a)return function(e){return l=e,a=setTimeout(p,t),c?d(e):o}(u);if(f)return a=setTimeout(p,t),d(u)}return void 0===a&&(a=setTimeout(p,t)),o}return t=H.toNumber(t)||0,M.isObject(r)&&(c=!!r.leading,i=(f="maxWait"in r)?Z(H.toNumber(r.maxWait)||0,t):i,h="trailing"in r?!!r.trailing:h),y.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=u=s=a=void 0},y.flush=function(){return void 0===a?o:m(Date.now())},y}var Y={to:async function(e,t){return e.then((e=>[null,e])).catch((e=>(t&&Object.assign(e,t),[e,void 0])))}};class K{__source;constructor(e){this.__source=e}run(){let e;try{let t;return t=M.isFunction(this.__source)?this.__source():this.__source,e=M.isPromise(t)?t:Promise.resolve(t),Y.to(e)}catch(e){return Promise.resolve([e,void 0])}}static _lockedMap=new Map;static _lock(e,t){if(!e||!t)return;const r=new K(t).run();return this._lockedMap.set(e,r),r}static _unlock(e){e&&this._lockedMap.delete(e)}static async exec(e,t){if(!e||!t)return new K(e).run();const r=this._lockedMap.get(t);if(r)return r;const n=this._lock(t,e);if(!n)return new K(e).run();const s=await n;return this._unlock(t),s}}class Q{__list=[];constructor(e){this.push(e)}push(e){return e&&this.__list.push(e),this}clear(){return this.__list=[],this}_exec(e,t){let r;if(M.isFunction(e))r=e(t);else{if(M.isPromise(e))return e.then((e=>({...t,...e})));r=e}return M.isPromise(r)?r:Promise.resolve({...r,...t})}run(e){try{return this.__list.reduce(((e,t)=>e.then((e=>this._exec(t,e)))),Promise.resolve(e)).then((e=>[void 0,e])).catch((e=>[e,void 0]))}catch(e){return Promise.reject([e,void 0])}}}const X=(e=1e3)=>new Promise((t=>{setTimeout(t,e)}));var ee={...Y,sleep:X,run:async(e,t=0)=>{if(t<=0)return new K(e).run();const r=t>0?Date.now():0,n=await new K(e).run(),s=Date.now()-r;return s<t&&await X(t-s),n},exec:(e,t="")=>K.exec(e,t),debounce:G,throttle:function(e,t=300,r={}){var n=!1,s=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return M.isObject(r)&&(n=r.leading?!!r.leading:n,s=r.trailing?!!r.trailing:s),G(e,t,{leading:n,maxWait:t,trailing:s})},task:e=>new Q(e),delay:(e=1e3)=>new Promise((t=>{setTimeout(t,e)})),mutex:function(e){var t=null;return async function(...r){if((t=this||t||{}).__ddMutex)return!1;t.__ddMutex=!0;try{e&&await Promise.resolve(e.apply(this,r))}catch(e){console.log(e)}finally{t.__ddMutex=!1}}}};function te(e){return Math.floor(Math.random()*e)}function re(e,t=10){return+parseFloat(Number(e).toExponential(t))}const ne=180/Math.PI;var se={random:te,randomRange:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},lerp:function(e,t,r){return e*(1-r)+t*r},randoms:function(e,t=1,r=!1){const n=[];for(;;){if(n.length>=t)break;if(!r&&n.length>=e)break;const s=te(e);r?n.push(s):n.includes(s)||n.push(s)}return n},strip:re,float:function(e,{fractionDigits:t=2,fixed:r=!1}={}){const n=re(e).toFixed(t);return r||!t?+n:+n.replace(/(\.[1-9]?)0+$/,"$1").replace(/\.$/,"")},radian2degree:function(e){return e*ne},degree2radian:function(e){return e/ne}};function ie(e){return e!=e}function oe(e,t){return function(e,t){for(var r=-1,n=e?e.length:0,s=Array(n);++r<n;)s[r]=t(e[r],r,e);return s}(t,(function(t){return e[t]}))}var ae,ue,le=(ae=Object.keys,ue=Object,function(e){return ae(ue(e))}),ce=Math.max;function fe(e,t){var r=M.isArray(e)||M.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,s=!!n;for(var i in e)!t&&!$.hasOwnProperty.call(e,i)||s&&("length"==i||M.isIndex(i,n))||r.push(i);return r}function he(e,t,r){const{length:n}=e;return r=void 0===r?n:r,!t&&r>=n?e:function(e,t,r){let n=null==e?0:e.length;if(!n)return[];(t=null==t?0:t)<0&&(t=-t>n?0:n+t),(r=(r=void 0===r?n:r)>n?n:r)<0&&(r+=n),n=t>r?0:r-t>>>0,t>>>=0;let s=-1;const i=new Array(n);for(;++s<n;)i[s]=e[s+t];return i}(e,t,r)}const de=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff\\ufe0e\\ufe0f]");function ge(e){return de.test(e)}const pe="\\ud800-\\udfff",me=`[${pe}]`,ye="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]",we="\\ud83c[\\udffb-\\udfff]",be=`[^${pe}]`,ve="(?:\\ud83c[\\udde6-\\uddff]){2}",_e="[\\ud800-\\udbff][\\udc00-\\udfff]",$e=`${`(?:${ye}|${we})`}?`,xe="[\\ufe0e\\ufe0f]?",ke=xe+$e+`(?:\\u200d(?:${[be,ve,_e].join("|")})${xe+$e})*`,Se=`(?:${[`${be}${ye}?`,ye,ve,_e,me].join("|")})`,Ae=RegExp(`${we}(?=${we})|${Se+ke}`,"g");function je(e){return ge(e)?function(e){return e.match(Ae)||[]}(e):function(e){return e.split("")}(e)}function qe(e){return t=>{if(!t)return"";const r=ge(t)?je(t):void 0,n=r?r[0]:t[0],s=r?he(r,1).join(""):t.slice(1);return n[e]()+s}}const Ce="\\ud800-\\udfff",Oe="\\u2700-\\u27bf",Le="a-z\\xdf-\\xf6\\xf8-\\xff",Ee="A-Z\\xc0-\\xd6\\xd8-\\xde",Fe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Me="['’]",Re=`[${Fe}]`,De=`[${Oe}]`,Pe=`[${Le}]`,ze=`[^${Ce}${Fe+"\\d"+Oe+Le+Ee}]`,Te="(?:\\ud83c[\\udde6-\\uddff]){2}",Ie="[\\ud800-\\udbff][\\udc00-\\udfff]",Ne=`[${Ee}]`,Be=`(?:${Pe}|${ze})`,Ue=`(?:${Ne}|${ze})`,Ve=`(?:${Me}(?:d|ll|m|re|s|t|ve))?`,He=`(?:${Me}(?:D|LL|M|RE|S|T|VE))?`,We="(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]|\\ud83c[\\udffb-\\udfff])?",Ze="[\\ufe0e\\ufe0f]?",Je=Ze+We+`(?:\\u200d(?:${[`[^${Ce}]`,Te,Ie].join("|")})${Ze+We})*`,Ge=`(?:${[De,Te,Ie].join("|")})${Je}`,Ye=RegExp([`${Ne}?${Pe}+${Ve}(?=${[Re,Ne,"$"].join("|")})`,`${Ue}+${He}(?=${[Re,Ne+Be,"$"].join("|")})`,`${Ne}?${Be}+${Ve}`,`${Ne}+${He}`,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])","\\d+",Ge].join("|"),"g");const Ke=RegExp.prototype.test.bind(/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/),Qe=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function Xe(e,t){if(void 0===t){const t=Ke(e)?function(e){return e.match(Ye)}(e):function(e){return e.match(Qe)}(e);return t||[]}return e.match(t)||[]}function et(e){if(null==e)return"";if("string"==typeof e)return e;if(Array.isArray(e))return`${e.map((e=>null==e?e:et(e)))}`;if(M.isSymbol(e))return e.toString();const t=`${e}`;return"0"==t&&1/e==-Infinity?"-0":t}const tt=qe("toUpperCase"),rt=qe("toLowerCase");var nt={toString:et,startCase:e=>Xe(`${e}`.replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+tt(t)),""),snakeCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?"_":"")+t.toLowerCase()),""),kebabCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?"-":"")+t.toLowerCase()),""),camelCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>(t=t.toLowerCase(),e+(r?tt(t):t))),""),upperCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+t.toUpperCase()),""),upperFirst:tt,lowerCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+t.toLowerCase()),""),lowerFirst:rt,splitOnFirst:(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===e||""===t)return[];const r=e.indexOf(t);return-1===r?[]:[e.slice(0,r),e.slice(r+t.length)]},parseValue:(e,{number:t=!1,boolean:r=!1}={})=>{let n=e;return e&&"string"==typeof e?(t&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?n=Number(e):!r||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(n="true"===e.toLowerCase()),n):n},replace:(e,t)=>{if(!e)return e;if(!t)return e;let r=e;return((Array.isArray(t)?t:[t])||[]).forEach((e=>{e.key&&e.value&&(r=r.replace(new RegExp(e.key,e.flag||""),e.value))})),r}};const st=e=>{if(!e)return e;if("object"!=typeof e)return e;const t=Array.isArray(e)?[]:{};for(const r in e)e.hasOwnProperty(r)&&(t[r]=st(e[r]));return t};const it=(e,t,r={})=>{const n=e||{},{ignoreUndefined:s=!0,cover:i=!1}=r;if(!t)return n;for(const o in t){if(!t.hasOwnProperty(o))continue;const a=t[o];"object"!=typeof a||"object"!=typeof e[o]||i?s&&void 0===a||r.ignoreNull&&null===a||r.ignoreZero&&0===a||r.ignoreEmptyArray&&Array.isArray(a)&&a.length<=0||r.ignoreEmptyString&&"string"==typeof a&&""===a.trim()||(n[o]=a):n[o]=ot(e[o],a,r)}return n},ot=(e,t,r={})=>{let n={};return n=e&&"object"==typeof e&&!Array.isArray(e)?it(e,t,r):it({...e},t,r),n},at=(e,t,r={})=>it({...e},t,{cover:!0,...r}),ut=(e,t,r,n,s=!1)=>{if(!e||!t||!r)return;let i=e[t];null!==i&&"object"==typeof i&&s&&Object.keys(i).forEach((e=>{ut(i,e,r,n,s)})),Object.defineProperty(e,t,{configurable:!0,enumerable:!0,set:o=>{r.call(n,o,i),i=o,s&&ut(e,t,r,n,s)},get:()=>i})};var lt={copy:(e,t={})=>{if(void 0===e)return;const r=JSON.parse(JSON.stringify(e));if("object"!=typeof r)return r;if(Array.isArray(r))return r;const{fields:n=[],camel:s=!1,pure:i=!0}=t;if((!n||n.length<=0)&&!s)return r;const o={};for(const e in r){if(!r.hasOwnProperty(e))continue;const a=s?i&&e.startsWith("_")?e:nt.camelCase(e):e;if(n.length>0&&!n.includes(e)&&!n.includes(a))continue;const u=r[e];t.ignoreNull&&null===u||(t.ignoreZero&&0===u||t.ignoreEmptyArray&&Array.isArray(u)&&u.length<=0||t.ignoreEmptyString&&"string"==typeof u&&""===u.trim()||(o[a]=u))}return o},clone:st,merge:ot,isEmpty:e=>0!==e&&(!e||"object"==typeof e&&(Array.isArray(e)?!e.length:Object.keys(e).length<=0)),parseValue:(e,{number:t=!1,boolean:r=!1}={})=>{if(!e&&"object"!=typeof e)return e;for(const[n,s]of Object.entries(e))if("object"==typeof s&&null!==s)for(const[e,n]of Object.entries(s))s[e]=nt.parseValue(n,{number:t,boolean:r});else e[n]=nt.parseValue(s,{number:t,boolean:r});return e},cloneClass:function(e){return e?"object"!=typeof e?e:Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e)):e},combine:at,combines:(e,t={})=>{let r={};if(!e||e.length<=0)return r;const{ignoreUndefined:n=!0,ignoreNull:s=!0,ignoreZero:i=!0,ignoreEmptyArray:o=!0,ignoreEmptyString:a=!0,cover:u=!0}=t;return e.forEach((e=>r=at(r,e,{ignoreUndefined:n,ignoreNull:s,ignoreZero:i,ignoreEmptyArray:o,ignoreEmptyString:a,cover:u}))),r},observe:ut};var ct={...M,...$,...lt,includes:function(e,t,r,n){e=M.isArrayLike(e)?e:function(e){return e?oe(e,function(e){return M.isArrayLike(e)?fe(e):function(e){if(!M.isPrototype(e))return le(e);var t=[];for(var r in Object(e))$.hasOwnProperty.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}(e)):[]}(e),r=r&&!n?H.toInteger(r):0;var s=e.length;return r<0&&(r=ce(s+r,0)),M.isString(e)?r<=s&&e.indexOf(t,r)>-1:!!s&&function(e,t,r){if(t!=t)return function(e,t,r,n){for(var s=e.length,i=r+(n?1:-1);n?i--:++i<s;)if(t(e[i],i,e))return i;return-1}(e,ie,r);for(var n=r-1,s=e.length;++n<s;)if(e[n]===t)return n;return-1}(e,t,r)>-1},forof:(e,t)=>{if(!e)return;let r;if(M.isObject(e)&&(r=M.isArray(e)?e.entries():Object.entries(e),r))for(const[e,n]of r)t&&t(e,n)}};var ft={groupBy:function(e,t){return e.reduce(((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e)),{})},first:function(e){if(!e)return;return e.length<=0?void 0:e[0]},last:function(e){if(!e)return;const t=e.length;return t<=0?void 0:e[t-1]},toList:function(e){return Array.isArray(e)?e:e?[e]:[]}};var ht={...ft,stepAction:function(e,t,r=100){if(!M.isFunction(t))return;if(!M.isArray(e)||e.length<=0)return;let n=0;for(;e.length>n;){let s=r+n,i=e.slice(n,s);t&&t(i),n=s}},skip:function(e,t){if(!M.isArray(e)||e.length<=0)return[];const r=t;return e.slice(r)},take:function(e,t,r=0){if(!M.isArray(e)||e.length<=0)return[];const n=r||0;if(n>=e.length)return[];const s=t+n;return e.slice(n,e.length<s?e.length:s)||[]},distinct:function(e){return!M.isArray(e)||e.length<=0?[]:[...new Set(e)]},randoms:function(e,t=1,r=!1){const n=e.length||0;return se.randoms(n,t,r).map((t=>e[t]))||[]},toKV:(e,t,r)=>{const n={};return t&&r?((e||[]).forEach((e=>{if(!e||!M.isObject(e))return;const s=e[t];(M.isString(s)&&""!==s||M.isNumber(s))&&(n[s]=e[r])})),n):n}};const dt="[object Object]",gt="[object Array]",pt=e=>Object.prototype.toString.call(e),mt=(e,t,r=!1)=>{if(e===t)return;const n=pt(e);if(n===pt(t))if(n===gt&&e.length>=t.length)for(let r=0;r<t.length;r++)mt(e[r],t[r]);else if(n===dt&&Object.keys(e).length>=Object.keys(t).length)for(let n in t)r||void 0!==e[n]?mt(e[n],t[n]):e[n]=null},yt=(e,t,r,n="",s=!1)=>{if(e===t)return;const i=pt(e),o=pt(t);if(i===gt&&o===i&&e.length>=t.length)for(let s=0;s<e.length;s++)yt(e[s],t[s],r,`${n}[${s}]`);else if(i===dt&&o===i&&(s||Object.keys(e).length>=Object.keys(t).length)){const s=Object.keys(e);for(let i of s){const s=e[i],o=t[i],a=pt(s),u=pt(o);if(s!==o)if(a===gt&&u===a&&s.length>=o.length)for(let e=0;e<s.length;e++)yt(s[e],o[e],r,`${n?n+".":""}${i}[${e}]`);else if(a===dt&&u===a&&Object.keys(s).length>=Object.keys(o).length)for(let e in s)yt(s[e],o[e],r,`${n?n+".":""}${i}.${e}`);else r[`${n?n+".":""}${i}`]=s}}else r[n]=e};class wt{list=[];constructor(){this.invoke=this.invoke.bind(this)}use(e){this.list=this.list.concat(e)}invoke(e){return this.list.reduce(((e,t)=>e.then((e=>t(e)))),Promise.resolve(e)).catch((e=>"REFETCH"===e.sig?Promise.resolve(e.result):Promise.reject(e)))}}class bt{reqConfig={};handleRequest;handleEncrypt;handleDecrypt;handleError;interceptors={request:new wt,response:new wt};constructor(e){const{reqConfig:t={},requestEncrypt:r,responseDecrypt:n,handleError:s,api:i}=e;this.reqConfig=t,this.handleEncrypt=r,this.handleDecrypt=n,this.handleError=s,this.handleRequest=i}static blockId="blockid";static requestLock={};lockR(e,t){bt.requestLock[e]={lock:!0,request:t()}}unlockR(e){delete bt.requestLock[e]}getIdFromReq(e){const{url:t,data:r={}}=e;return t+JSON.stringify(r)}getIdFromReqUrl(e){return e.url||""}_fetch(e,t){let r=e;return t&&this.handleEncrypt&&(r=this.handleEncrypt(e)),new Promise(((e,n)=>{this.handleRequest({...r,success:r=>{let n=r;t&&this.handleDecrypt&&(n=this.handleDecrypt(r)),e(n)},fail:e=>{n(e)}})}))}async request(e,t){const r=lt.copy(this.reqConfig[e]),{config:n,...s}=await this.interceptors.request.invoke({url:r.url,data:t||{},header:{"content-type":"application/json"},method:r.method?r.method:"POST",responseType:"text",config:r});let i;try{if("block"===n.model)this.lockR(bt.blockId,(()=>this._fetch(s,n.hasEncrypt))),i=await bt.requestLock[bt.blockId].request;else if(bt.requestLock[bt.blockId]&&bt.requestLock[bt.blockId].lock&&await bt.requestLock[bt.blockId].request,"debounce"===n.model||"debounceUrl"===n.model){let e;e="debounceUrl"===n.model?this.getIdFromReqUrl(s):this.getIdFromReq(s),bt.requestLock[e]||this.lockR(e,(()=>this._fetch(s,n.hasEncrypt))),i=await bt.requestLock[e].request,this.unlockR(e)}else i=await this._fetch(s,n.hasEncrypt)}catch(e){this.handleError&&this.handleError(e)}return this.interceptors.response.invoke({res:i,config:r,reqId:this.getIdFromReq(s),refetch:()=>({sig:"REFETCH",result:this.request(e,t||{})})})}}const vt=e=>"function"!=typeof e?e:(t={})=>new Promise(((r,n)=>{e(Object.assign(t,{success:r,fail:n}))}));var _t={diff:function(e,t){const r={};return(e=>{if(pt(e)===dt)for(let t in e)if(/\w+\.\w+/g.test(t)&&-1===t.indexOf("[")){const r=t.split(".");let n=e,s=r.length;for(let e=0;e<s-1;e++){const t=r[e];pt(n[t])!==dt&&(n[t]={}),n=n[t]}n[r[s-1]]=e[t],delete e[t]}})(e),mt(e,t,!0),yt(e,t,r,"",!0),r},promixify:vt,run:(e,t={})=>e?ee.run(vt(e)(t)):ee.run(e),formatList:(e,t,r)=>(e||[]).reduce(((e,n,s)=>({...e,[`${r}[${t+s}]`]:n})),{}),ruleValidator:(e,t)=>!!t&&(!Array.isArray(t)||!(t.length<=0)&&t.every((e=>!!e))),Http:bt,setWatcher:e=>{let t=e.data,r=e.watch;Object.keys(r).forEach((n=>{let s=t,i=n.split(".");for(let e=0;e<i.length-1;e++)s=s[i[e]];let o=i[i.length-1],a=r[n].handler||r[n],u=r[n].deep;lt.observe(s,o,a,e,u)}))}};const $t=function(e,{sep:t="&",eq:r="=",max:n=1e3,multiple:s=!0,uri:i=!0,parseNumber:o=!1,parseBoolean:a=!1}={}){t=t||"&",r=r||"=";const u={};if("string"!=typeof e||0===e.length)return u;const l=/\+/g,c=n||1e3;let f=(e=e.split(t)).length;c>0&&f>c&&(f=c);for(let t=0;t<f;++t){let n,o,a,c,f=e[t].replace(l,"%20"),h=f.indexOf(r);h>=0?(n=f.substr(0,h),o=f.substr(h+1)):(n=f,o=""),a=i?decodeURIComponent(n):n,c=i?decodeURIComponent(o):o,$.hasOwnProperty.call(u,a)&&s?Array.isArray(u[a])?u[a].push(c):u[a]=[u[a],c]:u[a]=c}return lt.parseValue(u,{number:o,boolean:a}),u},xt=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}},kt=function(e,t=!0){return t?encodeURIComponent(e):e},St=function(e,{cleanZero:t=!1,cleanNull:r=!1,cleanWhitespace:n=!1}={}){return!(!t||0!==e)||(!(!r||null!=e)||!(!n||"string"!=typeof e||""!==e.trim()))};var At={parse:$t,stringify:function(e,{sep:t="&",eq:r="=",name:n=null,uri:s=!0,cleanZero:i=!1,cleanNull:o=!1,cleanWhitespace:a=!1}={}){return t=t||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(n){const u=kt(xt(n),s)+r,l=e[n];return Array.isArray(l)?l.map((function(e){return u+kt(xt(e),s)})).join(t):St(l,{cleanZero:i,cleanNull:o,cleanWhitespace:a})?"":u+kt(xt(l),s)})).filter(Boolean).join(t):n?kt(xt(n),s)+r+kt(xt(e),s):""},https:e=>e?e.replace(/^http[s]?/,"https"):e,parseUrl:e=>{const t=e.split("?"),r=t[0],n=t.length>1?t[1]:"";let s="";const i=r.match(/[\/]?([\w\_\-]+)[.]?[\w]*[?]?$/);i&&(s=i[1]);return{url:e,path:r,page:s,query:n,params:$t(n,{multiple:!0,uri:!1})}},parsePath:e=>{const t=(e||"").replace(/\\/g,"/").split("?")[0],r=t.lastIndexOf("/")+1,n=t.substring(r),s=n.lastIndexOf("."),i=n.substring(0,s),o=n.substring(s);return{root:t.substring(0,r),name:n,withoutExtension:i,extension:o}},join:(...e)=>{const t=[];return e.forEach((e=>{const r=e.trim().replace(/^\/*(.*?)\/*$/,"$1");r.length>0&&t.push(r)})),t.join("/")}};const jt=/%[sdj%]/g;let qt=()=>{};function Ct(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 Ot(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(jt,(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 Lt(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 Et(e,t,r){let n=0;const s=e.length;!function i(o){if(o&&o.length)return void r(o);const a=n;n+=1,a<s?t(e[a],i):r([])}([])}"undefined"!=typeof process&&process.env&&"production"!==process.env.NODE_ENV&&"undefined"!=typeof window&&"undefined"!=typeof document&&(qt=(e,t)=>{"undefined"!=typeof console&&console.warn&&"undefined"==typeof ASYNC_VALIDATOR_NO_WARNING&&t.every((e=>"string"==typeof e))&&console.warn(e,t)});class Ft extends Error{errors;fields;constructor(e,t){super("Async Validation Error"),this.errors=e,this.fields=t}}function Mt(e,t,r,n,s){if(t.first){const t=new Promise(((t,i)=>{const o=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push(...e[r]||[])})),t}(e);Et(o,r,(e=>(n(e),e.length?i(new Ft(e,Ct(e))):t(s))))}));return t.catch((e=>e)),t}const i=!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 Ft(l,Ct(l))):t(s)};o.length||(n(l),t(s)),o.forEach((t=>{const n=e[t];-1!==i.indexOf(t)?Et(n,r,f):function(e,t,r){const n=[];let s=0;const i=e.length;function o(e){n.push(...e||[]),s++,s===i&&r(n)}e.forEach((e=>{t(e,o)}))}(n,r,f)}))}));return c.catch((e=>e)),c}function Rt(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],function(e){return!(!e||void 0===e.message)}(r)?(r.field=r.field||e.fullField,r.fieldValue=n,r):{message:"function"==typeof r?r():r,fieldValue:n,field:r.field||e.fullField}}}function Dt(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]={...e[r],...n}:e[r]=n}return e}const Pt=(e,t,r,n,s,i)=>{!e.required||r.hasOwnProperty(e.field||"")&&!Lt(t,i||e.type)||n.push(Ot(s.messages.required,e.fullField))};let zt;const Tt=/^(([^<>()\[\]\\.,;:\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,}))$/,It=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,Nt={integer:e=>Nt.number(e)&&parseInt(e,10)===e,float:e=>Nt.number(e)&&!Nt.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&&!Nt.array(e),method:e=>"function"==typeof e,email:e=>"string"==typeof e&&e.length<=320&&!!e.match(Tt),url:e=>"string"==typeof e&&e.length<=2048&&!!e.match((()=>{if(zt)return zt;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}",s=`\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(),i=new RegExp(`(?:^${r}$)|(?:^${s}$)`),o=new RegExp(`^${r}$`),a=new RegExp(`^${s}$`),u=e=>e&&e.exact?i:new RegExp(`(?:${t(e)}${r}${t(e)})|(?:${t(e)}${s}${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)}${s}${t(e)}`,"g");const l=u.v4().source,c=u.v6().source;return zt=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"),zt})()),hex:e=>"string"==typeof e&&!!e.match(It)},Bt="enum";var Ut={required:Pt,whitespace:(e,t,r,n,s)=>{(/^\s+$/.test(t)||""===t)&&n.push(Ot(s.messages.whitespace,e.fullField))},type:(e,t,r,n,s)=>{if(e.required&&void 0===t)return void Pt(e,t,r,n,s);const i=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(i)>-1?Nt[i](t)||n.push(Ot(s.messages.types[i],e.fullField,e.type)):i&&typeof t!==e.type&&n.push(Ot(s.messages.types[i],e.fullField,e.type))},range:(e,t,r,n,s)=>{const i="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,h="string"==typeof t,d=Array.isArray(t);if(f?c="number":h?c="string":d&&(c="array"),!c)return!1;d&&(l=t.length),h&&(l=t.replace(u,"_").length),i?l!==e.len&&n.push(Ot(s.messages[c].len,e.fullField,e.len)):o&&!a&&l<e.min?n.push(Ot(s.messages[c].min,e.fullField,e.min)):a&&!o&&l>e.max?n.push(Ot(s.messages[c].max,e.fullField,e.max)):o&&a&&(l<e.min||l>e.max)&&n.push(Ot(s.messages[c].range,e.fullField,e.min,e.max))},enum:(e,t,r,n,s)=>{e[Bt]=Array.isArray(e[Bt])?e[Bt]:[],-1===e[Bt].indexOf(t)&&n.push(Ot(s.messages[Bt],e.fullField,e[Bt].join(", ")))},pattern:(e,t,r,n,s)=>{if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(Ot(s.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(Ot(s.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};const Vt=(e,t,r,n,s)=>{const i=e.type,o=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t,i)&&!e.required)return r();Ut.required(e,t,n,o,s,i),Lt(t,i)||Ut.type(e,t,n,o,s)}r(o)};var Ht={string:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field||"")){if(Lt(t,"string")&&!e.required)return r();Ut.required(e,t,n,i,s,"string"),Lt(t,"string")||(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s),Ut.pattern(e,t,n,i,s),!0===e.whitespace&&Ut.whitespace(e,t,n,i,s))}r(i)},method:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&Ut.type(e,t,n,i,s)}r(i)},number:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s))}r(i)},boolean:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&Ut.type(e,t,n,i,s)}r(i)},regexp:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),Lt(t)||Ut.type(e,t,n,i,s)}r(i)},integer:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s))}r(i)},float:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s))}r(i)},array:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(null==t&&!e.required)return r();Ut.required(e,t,n,i,s,"array"),null!=t&&(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s))}r(i)},object:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&Ut.type(e,t,n,i,s)}r(i)},enum:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&Ut.enum(e,t,n,i,s)}r(i)},pattern:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t,"string")&&!e.required)return r();Ut.required(e,t,n,i,s),Lt(t,"string")||Ut.pattern(e,t,n,i,s)}r(i)},date:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t,"date")&&!e.required)return r();if(Ut.required(e,t,n,i,s),!Lt(t,"date")){let r;r=t instanceof Date?t:new Date(t),Ut.type(e,r,n,i,s),r&&Ut.range(e,r.getTime(),n,i,s)}}r(i)},url:Vt,hex:Vt,email:Vt,required:(e,t,r,n,s)=>{const i=[],o=Array.isArray(t)?"array":typeof t;Ut.required(e,t,n,i,s,o),r(i)},any:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s)}r(i)}};function Wt(){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 Zt=Wt();class Jt{static register=function(e,t){if("function"!=typeof t)throw new Error("Cannot register a validator by type, validator is not a function");Ht[e]=t};static warning=qt;static messages=Zt;static validators=Ht;rules={};_messages=Zt;constructor(e){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=Dt(Wt(),e)),this._messages}validate(e,t={},r=(()=>{})){let n=e,s=t,i=r;if("function"==typeof s&&(i=s,s={}),!this.rules||0===Object.keys(this.rules).length)return i&&i(null,n),Promise.resolve(n);if(s.messages){let e=this.messages();e===Zt&&(e=Wt()),Dt(e,s.messages),s.messages=e}else s.messages=this.messages();const o={};(s.keys||Object.keys(this.rules)).forEach((t=>{const r=this.rules[t];let s=n[t];r.forEach((r=>{let i=r;"function"==typeof i.transform&&(n===e&&(n={...n}),s=n[t]=i.transform(s)),i="function"==typeof i?{validator:i}:{...i},i.validator=this.getValidationMethod(i),i.validator&&(i.field=t,i.fullField=i.fullField||t,i.type=this.getType(i),o[t]=o[t]||[],o[t].push({rule:i,value:s,source:n,field:t}))}))}));const a={};return Mt(o,s,((e,t)=>{const r=e.rule;let i,o=!("object"!==r.type&&"array"!==r.type||"object"!=typeof r.fields&&"object"!=typeof r.defaultField);function u(e,t){return{...t,fullField:`${r.fullField}.${e}`,fullFields:r.fullFields?[...r.fullFields,e]:[e]}}function l(i=[]){let l=Array.isArray(i)?i:[i];!0===s.suppressWarning&&l.length&&Jt.warning("async-validator:",l),l.length&&void 0!==r.message&&(l=[].concat(r.message));let c=l.map(Rt(r,n));if(s.first&&c.length)return a[r.field]=1,t(c);if(o){if(r.required&&!e.value)return void 0!==r.message?c=[].concat(r.message).map(Rt(r,n)):s.error&&(c=[s.error(r,Ot(s.messages.required,r.field))]),t(c);let i={};r.defaultField&&Object.keys(e.value).map((e=>{i[e]=r.defaultField})),i={...i,...e.rule.fields};const o={};Object.keys(i).forEach((e=>{const t=i[e],r=Array.isArray(t)?t:[t];o[e]=r.map(u.bind(null,e))}));const a=new Jt(o);a.messages(s.messages),e.rule.options&&(e.rule.options.messages=s.messages,e.rule.options.error=s.error),a.validate(e.value,e.rule.options||s,(e=>{const r=[];c&&c.length&&r.push(...c),e&&e.length&&r.push(...e),t(r.length?r:null)}))}else t(c)}if(o=o&&(r.required||!r.required&&e.value),r.field=e.field,r.asyncValidator)i=r.asyncValidator(r,e.value,l,e.source,s);else if(r.validator){try{i=r.validator(r,e.value,l,e.source,s)}catch(e){console.error?.(e),s.suppressValidatorError||setTimeout((()=>{throw e}),0),l(e.message)}!0===i?l():!1===i?l("function"==typeof r.message?r.message(r.fullField||r.field):r.message||`${r.fullField||r.field} fails`):i instanceof Array?l(i):i instanceof Error&&l(i.message)}i&&i.then&&i.then((()=>l()),(e=>l(e)))}),(e=>{!function(e){let t=[],r={};for(let r=0;r<e.length;r++)s=e[r],Array.isArray(s)?t=t.concat(...s):t.push(s);var s;t.length?(r=Ct(t),i(t,r)):i(null,n)}(e)}),n)}getType(e){if(void 0===e.type&&e.pattern instanceof RegExp&&(e.type="pattern"),"function"!=typeof e.validator&&e.type&&!Ht.hasOwnProperty(e.type))throw new Error(Ot("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]?Ht.required:Ht[this.getType(e)]||void 0}}function Gt(e){return new Jt(e)}var Yt={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:Gt,validate:function(e,t,r={},n=(()=>{})){return ee.run(Gt(e).validate(t,r,n))},isChinese:function(e){return!!e&&!!/^[\u4E00-\u9FA5]+$/.test(e)},isNumber:function(e){return!!e&&!!/^[0-9]+$/.test(e)},isFloat:function(e){return!!e&&!!/^(\-|\+)?\d+(\.\d+)?$/.test(e)},isPhoneNumber: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)}};var Kt={pattern:{num:"0-9",zh:"一-龥",en:"A-Za-z"},regex:(e,t)=>new RegExp(e,t),entire:{chinese:/^[\u4E00-\u9FA5]+$/,real:/^(\-|\+)?\d+(\.\d+)?$/,cssReal:/^(\-|\+)?\d*(\.)?\d+$/,id:/^[A-Za-z0-9]+$/,yyyyMMdd:/^(\d{4})-?(\d{2})-?(\d{2})$/}};const Qt=`${s.keyUpper}${s.keyLower}${s.keyNumber}+/=`,Xt=e=>{let t,r,n,s,i,o,a,u="",l=0;for(e=er(e);l<e.length;)t=e.charCodeAt(l++),r=e.charCodeAt(l++),n=e.charCodeAt(l++),s=t>>2,i=(3&t)<<4|r>>4,o=(15&r)<<2|n>>6,a=63&n,isNaN(r)?o=a=64:isNaN(n)&&(a=64),u=u+Qt.charAt(s)+Qt.charAt(i)+Qt.charAt(o)+Qt.charAt(a);return u},er=e=>{const t=e.replace(/\r\n/g,"\n");let r="";for(let e=0;e<t.length;e++){let n=t.charCodeAt(e);n<128?r+=String.fromCharCode(n):n>127&&n<2048?(r+=String.fromCharCode(n>>6|192),r+=String.fromCharCode(63&n|128)):(r+=String.fromCharCode(n>>12|224),r+=String.fromCharCode(n>>6&63|128),r+=String.fromCharCode(63&n|128))}return r},tr=e=>{let t="",r=0,n=0,s=0,i=0;for(;r<e.length;)n=e.charCodeAt(r),n<128?(t+=String.fromCharCode(n),r++):n>191&&n<224?(s=e.charCodeAt(r+1),t+=String.fromCharCode((31&n)<<6|63&s),r+=2):(s=e.charCodeAt(r+1),i=e.charCodeAt(r+2),t+=String.fromCharCode((15&n)<<12|(63&s)<<6|63&i),r+=3);return t};var rr={encode:Xt,decode:e=>{let t,r,n,s,i,o,a,u="",l=0;for(e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");l<e.length;)s=Qt.indexOf(e.charAt(l++)),i=Qt.indexOf(e.charAt(l++)),o=Qt.indexOf(e.charAt(l++)),a=Qt.indexOf(e.charAt(l++)),t=s<<2|i>>4,r=(15&i)<<4|o>>2,n=(3&o)<<6|a,u+=String.fromCharCode(t),64!=o&&(u+=String.fromCharCode(r)),64!=a&&(u+=String.fromCharCode(n));return u=tr(u),u},encodeByOss:e=>Xt(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")};var nr={...s,base64:rr,uuid:i,newId:(e,t=!1,r="")=>{const n=i(e||32);return t?d.now().format("yyyyMMddhhmmss")+r+n:n}};const sr=e=>{if(!e)return"";if(!ct.isObject(e))return"";let t="";return ct.forof(e,((e,r)=>{r&&(t+=`${nt.kebabCase(e)}:${r};`)})),t},ir=["display","position","top","bottom","left","right","padding","margin","marginTop","marginRight","marginBottom","marginLeft","paddingTop","paddingRight","paddingBottom","paddingLeft","height","width","fontSize","textAlign","fontFamily","border","borderLeft","borderRight","borderTop","borderBottom","borderColor","borderRadius","background","backgroundImage","backgroundRepeat","backgroundSize","backgroundPosition","color","overflow","opacity","flexDirection","justifyContent","alignItems","flexWrap","alignContent","alignSelf","flex","flexBasis","flexFlow","flexShrink","pointerEvents"],or=["top","bottom","left","right","padding","margin","marginTop","marginRight","marginBottom","marginLeft","paddingTop","paddingRight","paddingBottom","paddingLeft","height","width","border","borderLeft","borderRight","borderTop","borderBottom","borderColor","borderRadius"],ar=(e,t="px")=>e&&t?"0"===e?e:Yt.isFloat(e.toString())?`${e}${t}`:e:e;var ur={stringify:sr,parse:(e,{camel:t=!1,pure:r=!0}={})=>{if(!e.trim())return;const n=At.parse(e,{sep:";",eq:":",uri:!1}),s={};return ct.forof(n,((e,n)=>{if(!n)return;const i=t?r&&e.startsWith("_")?e:nt.camelCase(e):e;Yt.isFloat(n)||n.length>=2&&n.startsWith(".")&&Yt.isNumber(n.substr(1))?s[i]=+n:s[i]=n})),s},fixValue:ar,style:(e,t="px")=>{if(!e)return"";const r=ct.copy(e,{fields:ir});ct.forof(r,((e,n)=>{(or.includes(e)||or.includes(nt.camelCase(e)))&&(r[e]=ar(n,t))}));return sr(r)},commonFields:ir};const lr=(e,t)=>{try{const r=document.createElement("a");r.href=t,r.download=e,r.click()}catch(e){console.warn("[ddan] downloadUrl",e)}};var cr={dataURLtoFile:(e,t)=>{let r=e.split(","),n=r[0].match(/:(.*?);/)[1],s=window.atob(r[1]),i=s.length,o=new Uint8Array(i);for(;i--;)o[i]=s.charCodeAt(i);return new File([o],t,{type:n})},dataURLtoBlob:e=>{let t=e.split(","),r=t[0].match(/:(.*?);/)[1],n=window.atob(t[1]),s=n.length,i=new Uint8Array(s);for(;s--;)i[s]=n.charCodeAt(s);return new Blob([i],{type:r})},blobToFile:(e,t)=>(e.lastModifiedDate=new Date,e.name=t,e),readAsDataURL:(e,t)=>{var r=new FileReader;r.readAsDataURL(e),r.onloadend=function(e){t&&t(e.target?.result)}},downloadUrl:lr,download:(e,t)=>{if(!t)return;if("string"==typeof t)return void lr(e,t);const r=URL?.createObjectURL(t);r&&(lr(e,r),URL?.revokeObjectURL(r))},downloadImage:e=>{try{if(!e)return;const t=e.match(/\/(\w+.\w+)$/)[1],r=new Image;r.onload=()=>{let e=document.createElement("canvas");e.width=r.width,e.height=r.height;let n=e.getContext("2d");n&&n.drawImage(r,0,0,r.width,r.height);let s=e.toDataURL();lr(t,s)},r.src=e,r.setAttribute("crossOrigin","Anonymous")}catch(e){console.warn("[ddan] downloadImage",e)}return Promise.resolve()},watermark:(e,{width:t=400,height:r=300,angle:n=0,fillStyle:s="rgba(0, 0, 0, 0.2)",font:i="16px Arial",textAlign:o="left",textBaseline:a="middle"}={})=>{try{if(!e)return"";const u=document.createElement("canvas");u.width=t,u.height=r;const l=u.getContext("2d");return l?(n&&l.rotate(n*Math.PI/180),s&&(l.fillStyle=s),i&&(l.font=i),o&&(l.textAlign=o),a&&(l.textBaseline=a),l.fillText(e,u.width/10,u.height/2),`url(${u.toDataURL()})`):""}catch(e){return console.warn("[ddan] watermark",e),""}},fetchDataURL:async e=>{const t={contentType:"",dataUrl:""};try{return t.dataUrl=await fetch(e).then((e=>(t.contentType=e.headers.get("content-type")||"",e.arrayBuffer()))).then((e=>`${`data:${t.contentType};base64,`+btoa(new Uint8Array(e).reduce(((e,t)=>e+String.fromCharCode(t)),""))}`)),t}catch(e){return t}}};const fr=new class{__defStyle="vertical-align: middle; mask-position: 50% 50%; mask-repeat: no-repeat; mask-size: 100%; -webkit-mask-position: 50% 50%; -webkit-mask-repeat: no-repeat; -webkit-mask-size: 100%; background-color: currentColor;";__map={back:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M609.408 149.376L277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z"/></svg>',right:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"/></svg>',home:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M13 19.8h3.8v-7h3.303L12 4.697 3.897 12.8H7.2v7H11V17h2v2.8zm5 .2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-6H3.414a1 1 0 0 1-.707-1.707l8.586-8.586a1 1 0 0 1 1.414 0l8.586 8.586A1 1 0 0 1 20.586 14H18v6z" fill-rule="evenodd" fill-opacity=".9"/></svg>',close:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M764.288 214.592L512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"/></svg>',close_circle:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M466.752 512l-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248L466.752 512z"/><path fill="currentColor" d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"/></svg>',close_circle_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"/></svg>',warning:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M928.99 755.83L574.6 203.25c-12.89-20.16-36.76-32.58-62.6-32.58s-49.71 12.43-62.6 32.58L95.01 755.83c-12.91 20.12-12.9 44.91.01 65.03 12.92 20.12 36.78 32.51 62.59 32.49h708.78c25.82.01 49.68-12.37 62.59-32.49 12.91-20.12 12.92-44.91.01-65.03zM554.67 768h-85.33v-85.33h85.33V768zm0-426.67v298.66h-85.33V341.32l85.33.01z" fill="currentColor"/></svg>',play:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M512 1024A512 512 0 1 1 512 0a512 512 0 0 1 0 1024zm3.008-92.992a416 416 0 1 0 0-832 416 416 0 0 0 0 832zM383.232 287.616l384 224.896-384 223.104v-448z" fill="currentColor"/></svg>',lock:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32H224zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96z"/><path fill="currentColor" d="M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32zm192-160v-64a192 192 0 1 0-384 0v64h384zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64z"/></svg>',lock_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M467.2 713.92v115.968a44.8 44.8 0 0 0 89.6 0V713.92c26.752-14.72 44.8-42.304 44.8-73.92 0-47.104-40.128-85.312-89.6-85.312-49.472 0-89.6 38.208-89.6 85.312 0 31.616 18.048 59.136 44.8 73.92zM64 384h896v640H64V384zm268.8 0h358.4V256c0-94.272-80.256-170.688-179.2-170.688-98.944 0-179.2 76.416-179.2 170.688v128zM512 0c148.48 0 268.8 114.56 268.8 256v128H243.2V256C243.2 114.56 363.52 0 512 0z" fill="currentColor"/></svg>',plus:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64h352z"/></svg>',plus_circle:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z"/><path fill="currentColor" d="M480 672V352a32 32 0 1 1 64 0v320a32 32 0 0 1-64 0z"/><path fill="currentColor" d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"/></svg>',plus_circle_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-38.4 409.6H326.4a38.4 38.4 0 1 0 0 76.8h147.2v147.2a38.4 38.4 0 0 0 76.8 0V550.4h147.2a38.4 38.4 0 0 0 0-76.8H550.4V326.4a38.4 38.4 0 1 0-76.8 0v147.2z"/></svg>',star:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 747.84l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72L512 747.84zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"/></svg>',star_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M283.84 867.84L512 747.776l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72z"/></svg>',share:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M679.872 348.8l-301.76 188.608a127.808 127.808 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"/></svg>',love:'<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M171.712 571.648l.352.32 287.904 252.8a64 64 0 0 0 82.912 1.344l296.832-244.544a215.584 215.584 0 1 0-301.824-300.576L512 316.672l-25.888-35.616a215.584 215.584 0 1 0-314.4 290.624zM32 407.584A279.584 279.584 0 0 1 512 212.64a279.584 279.584 0 0 1 480 194.944 278.144 278.144 0 0 1-113.024 224.512l-295.36 243.392a128 128 0 0 1-165.888-2.592L129.984 620.16A278.976 278.976 0 0 1 32 407.584z"/></svg>',love_fill:'<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M32 407.584A279.584 279.584 0 0 1 512 212.64a279.584 279.584 0 0 1 480 194.944 278.144 278.144 0 0 1-113.024 224.512L562.592 892.8a96 96 0 0 1-124.416-1.952L130.016 620.16A278.976 278.976 0 0 1 32 407.584z"/></svg>'};getBase64=e=>{const t=this.getSVG(e);return t?.url||""};getSVG=e=>{if(!e)return;const t=this.__map[e];if(!t)return;return{url:this.toBase64(t),escape:this.toEscape(t)}};toBase64=e=>{if(!e)return"";const t=this._tiny(e);return`data:image/svg+xml;base64,${rr.encode(t)}`};_tiny=e=>e?e.replace(/<!--(.*)-->/g,"").replace(/[\r\n]/g," ").replace(/"/g,"'"):"";toEscape=e=>{if(!e)return"";return`data:image/svg+xml,${this._tiny(e).replace(/%/g,"%25").replace(/&/g,"%26").replace(/#/g,"%23").replace(/{/g,"%7B").replace(/}/g,"%7D").replace(/</g,"%3C").replace(/>/g,"%3E")}`};getStyle(e,t={}){if(!e)return"";const r=this.__map[e];return r?this.toStyle(r,t):""}toStyle(e,t={}){if(!e)return"";const r=this.toBase64(e);return r?this.getStyleByUrl(r,t):""}getStyleByUrl(e,t={}){if(!e)return"";const{key:r="mask-image",gradientValue:n="radial-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5))",gradient:s=!1,defStyle:i=this.__defStyle}=t,o=s&&n?`${n}, url("${e}")`:`url("${e}")`;return`${r}:${o};-webkit-${r}:${o};${i}`}};var hr={ossImage:(e,t={})=>{if(!e)return e;const r=At.parseUrl(e).path;if(t.domain){if(!e.startsWith("http"))return e;const r=ht.toList(t.domain||""),n=e.match(/^http[s]?:\/\/([\w.]+)[\w\W]+/)[1]||"";if(!n||!r.includes(n))return e}const n=[];return t.webp&&!r.endsWith(".gif")&&n.push("format,webp"),t.resize&&n.push(`resize,s_${t.resize}`),t.interlace&&(n.push("interlace,1"),!n.every((e=>!e.startsWith("format")))||r.endsWith(".gif")||r.endsWith(".jpg")||n.push("format,jpg")),n.length<=0?e:`${r}?x-oss-process=image/${n.join("/")}`},ossSnapshot:(e,t={})=>{if(!e)return e;const r=At.parseUrl(e).path,n=["snapshot"],{m:s="fast",f:i="jpg"}=t;return(t.t||0===t.t)&&n.push(`t_${t.t}`),t.w&&n.push(`w_${t.w}`),t.h&&n.push(`h_${t.h}`),s&&n.push(`m_${s}`),i&&n.push(`f_${i}`),t.ar&&n.push(`ar_${t.ar}`),`${r}?x-oss-process=video/${n.join(",")}`}};var dr={uint8ArrayToString:function(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},stringToArrayBuffer:function(e){const t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r);for(let r=0;r<t;r++)n[r]=e.charCodeAt(r);return r}};const gr=({url:e,options:t})=>{const r={"Content-Type":"application/json; charset=utf-8",...t.headers||{}};return t.headers=r,new Promise(((r,n)=>{fetch(e,t).then((e=>{r(e.json())})).catch((e=>{n(e)}))}))};function pr(e){const{response:t}=e;return 0===t.code?Promise.resolve(t):Promise.reject(t)}function mr(e){const{url:t="",host:r,options:n}=e,s=e;if(t.startsWith("http://")||t.startsWith("https://")||(s.url=(r||"")+t),"GET"===n.method.toUpperCase()&&n.body){const e=JSON.parse(n.body);if(ct.isPlainObject(e)){const r=At.stringify(e),n=-1===t.indexOf("?")?"?":"&";s.url=`${s.url||""}${n}${r}`,delete s.options.body}}return n&&n.plugins&&delete s.options?.plugins,n&&n.model&&delete s.options?.model,s}class yr{host="";reqConfig={};handleError;interceptors={request:new wt,response:new wt};constructor(e){this.host=e.host||"",this.reqConfig=e.config,this.interceptors.request.use(e.handleRequest||[]),this.interceptors.request.use(mr),this.interceptors.response.use(e.handleResponse||pr),this.handleError=e.handleError}static blockId="blockid";static requestLock={};lockR(e,t){yr.requestLock[e]={lock:!0,request:t()}}unlockR(e){delete yr.requestLock[e]}getIdFromReq(e){const{url:t,data:r={}}=e;return t+JSON.stringify(r)}getIdFromReqUrl(e){return e.url||""}async fetch(e,t){const r=ct.copy(this.reqConfig[e])||{},n={host:this.host,url:r.url||"",options:{...r||{},body:JSON.stringify({...t||{}})}};try{const s=await this.interceptors.request.invoke(n);let i;if(delete s.options.plugins,"block"===r.model)this.lockR(yr.blockId,(()=>gr(s))),i=await yr.requestLock[yr.blockId].request;else if(yr.requestLock[yr.blockId]&&yr.requestLock[yr.blockId].lock&&await yr.requestLock[yr.blockId].request,"debounce"===r.model||"debounceUrl"===r.model){let e;e="debounceUrl"===r.model?this.getIdFromReqUrl(s):this.getIdFromReq(s),yr.requestLock[e]||this.lockR(e,(()=>gr(s))),i=await yr.requestLock[e].request,this.unlockR(e)}else i=await gr(s);return this.interceptors.response.invoke({response:i,config:r,refetch:()=>({sig:"REFETCH",result:this.fetch(e,t)})})}catch(e){return this.handleError&&this.handleError(e),Promise.reject(e)}}}class wr{key;storage;fields=[];constructor(e){this.key=e?.key||"",this.fields=e?.fields||[],this.storage=e?.storage||void 0}save=ee.debounce((e=>{if(this.key&&this.storage)try{const{setItem:t,setStorageSync:r}=this.storage;if(r)return r(this.key,e);if(t)return t(this.key,JSON.stringify(e))}catch(e){console.error("persit save ",e)}}));read(){if(this.key&&this.storage)try{const{getItem:e,getStorageSync:t}=this.storage;if(t)return t(this.key);if(e){const t=e(this.key);return JSON.parse(t)}}catch(e){return void console.error("persit read ",e)}}handleSave(e,t){if(!this.fields.includes(t)||!e)return;const r=lt.copy(e,{fields:this.fields});this.save(r)}}class br extends o{setters={};getters={};actions={};persist;constructor(){super()}async dispatch(e,t=void 0){const r=this,n=Reflect.get(r.actions,e);if(!M.isFunction(n))return;const[,s]=await ee.run(n({...r,commit:r.commit.bind(r),query:r.query.bind(r),dispatch:r.dispatch.bind(r)},t));return s}async query(e){const t=Reflect.get(this,e);let r;if(null!=t&&""!==t)r=lt.copy(t);else{const[,t]=await ee.exec((()=>this.dispatch(e)),`${this.__eventId}_${e}`);r=t}return r}commit(e,t){M.isObject(t)&&(t=lt.copy(t)),this[e]=t}}const vr=(e,t)=>{const r=Object.assign(new br,e||{});r.__persist=new wr(t||r.persist);const n=r.__persist.read(),s=n?Object.assign(r,n):r;return new Proxy(s,{get:(e,t,r)=>{const n=Reflect.get(e.getters,t);return M.isFunction(n)?n(e):Reflect.get(e,t,r)},set:(e,t,r,n)=>{const s=Reflect.get(e.setters,t);if(M.isFunction(s)&&!s(e,r))return!0;const i=Reflect.set(e,t,r,n);return i&&(e.emit(t.toString(),r),e?.__persist?.handleSave(e,t.toString())),i},has:(e,t)=>Reflect.has(e,t)})};class _r{host="";list=[];constructor(e,t={}){this._parseHost(e);const{width:r=500,height:n=400}=t,s=At.parseUrl(e)?.params||{};s["x-oss-process"]=`image/resize,w_${r},h_${n},m_fill`;const i=At.stringify(s,{uri:!1});this.list.push(`${e}?${i}`)}_parseHost(e){e&&!this.host&&/^http[s]?:\/\/([\w.]+)/.test(e)&&(this.host=e.replace(/^http[s]?:\/\/([\w.]+)[\w\W]+/,"$1"))}image(e,t={}){if(!e||!e.includes(this.host))return;if(this.list.length<=0)return;const r={g:"nw",...t},n=e.replace(/^http[s]?:\/\/[\w.]+\/([\w-.,_/?%&=]+)$/,"$1"),s=nr.base64.encodeByOss(n),i=At.stringify({image:s,...r},{sep:",",eq:"_"});this.list.push(`/watermark,${i}`)}text(e,t={},r={}){if(!e)return;const n={g:"nw",...t},s=nr.base64.encodeByOss(e),i=At.stringify({text:s,...n,...r},{sep:",",eq:"_"});this.list.push(`/watermark,${i}`)}result(){return this.list.join("")}}class $r{__list=[];__running=!1;__waitting=!1;constructor(){this.clear()}pipe(e){return this.__waitting||(e&&this.__list.push(e),this._step()),this}delay(e=0){return this.__waitting||(e&&this.__list.push((()=>ee.sleep(e))),this._step()),this}clear(){return this.__list=[],this.__waitting=!1,this.__running=!1,this}async _step(){if(this.__list.length<=0)return;if(this.__running)return;this.__running=!0;const e=this.__list.shift();await ee.run(e),this.__running=!1,this.__waitting||this._step()}async whenAll(){for(this.__waitting=!0,await this._step();;)if(this.__running)await ee.sleep(100);else{if(this.__list.length<=0)break;await this._step()}return this.__waitting=!1,this.clear()}}class xr{__list=[];constructor(){this.clear()}add(e){const t=ee.run(e);return this.__list.push(t),this}clear(){return this.__list=[],this}wait(){const e=this.__list;return this.clear(),Promise.allSettled(e)}}const kr=new class{state=vr(new br);frame=new a;cache=new Map;cacheTime=new Map;setCache=(e,t)=>null!=t&&(!!e&&(this.cache.set(e,t),this.cacheTime.set(e,Date.now()),!0));hasCache=e=>{if(!e)return!1;this.cache.has(e)};getCache=e=>{if(e)return this.cache.get(e)};getCacheTime=e=>e&&this.cacheTime.get(e)||0;removeCache=e=>{e&&(this.cache.delete(e),this.cacheTime.delete(e))};cacheId=e=>`_${e}_cache_`;timesRecord=(e,t={})=>{if(!e)return;const{mode:r="running",cycle:n="day"}=t||{},s=this.cacheId(r),i=this.getCache(s)||{},o=Date.now(),a=i[e],u={time:o,count:1,cycle:n};return a&&("day"!==n||d.isToday(a.time||0))&&(u.count=1+(a.count||0)),i[e]=u,this.setCache(s,i),i};timesValid=(e,t={})=>{if(!e)return!1;const{max:r=1,interval:n=0,mode:s="running",cycle:i="day"}=t||{},o=this.cacheId(s);let a=this.getCache(o);if(!a)return!0;const u=a[e];if(!u)return!0;if("day"===i&&!d.isToday(u.time||0))return!0;if(r<=(u.count||0))return!1;return!(Date.now()-(u.time||0)<n)};timesClean=(e="running")=>{const t=this.cacheId(e),r=this.getCache(t);if(!r)return;const n=ct.copy(r);ct.forof(n,((e,t)=>{"day"!==t.cycle&&void 0!==t.cycle||d.isToday(t.time||0)||delete r[e]})),this.setCache(t,r)};pipeline=()=>new $r;parallel=()=>new xr};class Sr{id="";start=0;end=0;cost=0;name="";type="";desc="";timeStartDesc="";timeEndDesc="";isDone=!1;flag=0;constructor(){this.id=i(),this.start=Date.now(),this.timeStartDesc=d.format(this.start,"hh:mm:ss.SSS")}get time(){return this.flag?this.end:this.start}get timeDesc(){return this.flag?this.timeEndDesc:this.timeStartDesc}done=(e=Date.now())=>{this.start&&(this.end=e,this.cost=this.end-this.start,this.timeEndDesc=d.format(this.end,"hh:mm:ss.SSS"),this.isDone=!0)}}const Ar=new class{__map=new Map;__trackList=[];opened=!0;clear(){return this.__map.clear(),this.__trackList=[],this}add(e,{desc:t="",type:r=""}={}){if(!e||!this.opened)return"";const n=new Sr;return n.name=e,n.type=r,n.desc=t,this.__trackList.push(n),n.id}done(e){if(!e||!this.opened)return;const t=this.__trackList.find((t=>t.id===e));if(!t||t.isDone)return;t.done();const r=lt.cloneClass(t);r.id=this._endId(e),r.flag=1,r.desc=`${t.desc} | end`,this.__trackList.push(r)}getTrack(e){return this.__trackList.find((t=>t.id===e))}getLine(e){if(!e||e.endsWith("-end"))return[];const t=this.__trackList.findIndex((t=>t.id===e));if(t<0)return[];const r=this._endId(e),n=this.__trackList.findIndex((e=>e.id===r)),s=n<0?this.__trackList.length-t:n-t+1;return ht.take(this.__trackList,s,t)}getList(e,t=""){if(!e)return[];const r=this.__trackList.filter((t=>t.name===e));if(r.length<=0)return[];if(!t)return r;const n=this._endId(t);return this.__trackList.filter((e=>e.id===t||e.id===n))}get list(){return this.__trackList}get size(){return this.__trackList.length}_endId=e=>`${e}-end`;report(e){const t=this.list;if(!t||t.length<=0)return;const r=t[0].time;t.forEach((t=>e&&e(t,r)))}},jr={overrode:!1,tag:!1,format:"hh:mm:ss.SSS"},qr=e=>(...t)=>{const r=console[e];jr.overrode?r(...t):Cr(r,e,...t)},Cr=(e,t,...r)=>{const n=d.format(new Date,jr.format),s=jr.tag?`[${t}]`:"";s&&n?e.apply(console,[`${n} ${s}`,...r]):n?e.apply(console,[`${n}`,...r]):s?e.apply(console,[`${s}`,...r]):e.apply(console,[...r])};var Or={override:()=>{if(jr.overrode)return;jr.overrode=!0;["log","info","warn","error"].forEach((e=>{const t=console[e];console[e]=(...r)=>{Cr(t,e,...r)}}))},log:qr("log"),info:qr("info"),warn:qr("warn"),error:qr("error"),config:({tag:e=jr.tag,format:t=jr.format}={})=>{jr.tag=e,jr.format=t}},Lr={gbk:e,time:d,hook:ee,math:se,util:ct,list:ht,string:nt,obj:lt,crypto:nr,mini:_t,qs:At,css:ur,cdn:hr,html:cr,icon:fr,rule:Yt,regex:Kt,convert:dr,Event:o,Http:yr,Store:br,storeRef:vr,Persist:wr,persistConfig:(e,t,r)=>({key:e,fields:t,storage:r}),watermark:(e,t)=>new _r(e,t),joker:kr,tracker:Ar,logger:Or};export{Lr 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 s=0;s<e.length&&(e.charCodeAt(s)>127||94===e.charCodeAt(s)?r+=2:r++,!(r>t));s++)n=s;return e.substr(0,n+1)}};const t="0123456789",r="abcdefghijklmnopqrstuvwxyz",n="ABCDEFGHIJKLMNOPQRSTUVWXYZ";var s={keyNumber:t,keyLower:r,keyUpper:n,keyChars:t+r+n};const i=(e=0,t=0)=>{const r=s.keyChars.split(""),n=[];let i;if(t=t||r.length,e)for(i=0;i<e;i++)n[i]=r[0|Math.random()*t];else{let e;for(n[8]=n[13]=n[18]=n[23]="-",n[14]="4",i=0;i<36;i++)n[i]||(e=0|16*Math.random(),n[i]=r[19==i?3&e|8:e])}return n.join("")};class o{__map;__tagList;__eventId="";constructor(){this.__map=new Map,this.__tagList=[],this.__eventId=i()}clear(){return this.__map.clear(),this}on(e,t,r=""){if(!e||!t)return this;let n=this.__map.get(e);return n||(n=new Set,this.__map.set(e,n)),n.add(t),r&&this.__tagList.push({name:e,handler:t,tag:r}),this}emit(e,...t){if(!e)return this;const r=this.__map.get(e);if(!r)return this;return[...r].forEach((e=>e&&e(...t))),this}off(e,t){if(!e||!t)return this;this.__tagList=this.__tagList.filter((r=>r.name!==e||r.handler!==t));const r=this.__map.get(e);return r?(r.delete(t),r.size<=0&&this.__map.delete(e),this):this}remove(e){return e?(this.__tagList=this.__tagList.filter((t=>t.name!==e)),this.__map.delete(e),this):this}removeByTag(e){if(!e)return this;return this.__tagList.filter((t=>t.tag===e)).forEach((e=>{this.off(e.name,e.handler)})),this.__tagList=this.__tagList.filter((t=>t.tag!==e)),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)}}class a{_loopTimer;_event=new o;started=!1;interval=0;constructor(e=0){this.interval=e||500}start(){return this.started||(this.stop(),this._loopTimer=setInterval((()=>{this._handleLoop()}),this.interval),this.started=!0),this}stop(){return this._loopTimer?(clearInterval(this._loopTimer),this._loopTimer=0,this.started=!1,this):this}restart(){return this.stop(),this.start(),this}on(e){return this._event.on("frame",e),this}off(e){return e?(this._event.off("frame",e),this):this}_handleLoop(){this._event.emit("frame")}}var u={oneDay:864e5,oneHour:36e5,oneMinute:6e4,oneSecond:1e3};class l{date;timestamp=0;yyyy=0;yy="";M=0;MM="";d=0;dd="";h=0;hh="";m=0;mm="";s=0;ss="";S=0;SS="";SSS="";constructor(e){if(!e)return;const t="string"==typeof e||"number"==typeof e?new Date(e):e;t&&(this.date=t,this.timestamp=t.getTime(),this.toDate())}toDate(){return this.date?(this.yyyy=this.date.getFullYear(),this.yy=`${this.yyyy}`.substr(2),this.M=this.date.getMonth()+1,this.MM=(this.M<10?"0":"")+this.M,this.d=this.date.getDate(),this.dd=(this.d<10?"0":"")+this.d,this.h=this.date.getHours(),this.hh=(this.h<10?"0":"")+this.h,this.m=this.date.getMinutes(),this.mm=(this.m<10?"0":"")+this.m,this.s=this.date.getSeconds(),this.ss=(this.s<10?"0":"")+this.s,this.S=this.date.getMilliseconds(),this.SS=(this.S<10?"0":"")+this.S,this.SSS=this.S.toString().padStart(3,"0"),this):this}toCountdown(e=""){const t={countdown:0,timestamp:0,seconds:0,d:0,dd:"",h:0,hh:"",m:0,mm:"",s:0,ss:"",S:0,SS:"",SSS:"",desc:""};if(!this.timestamp)return t;t.timestamp=this.timestamp,t.countdown=Math.max(t.timestamp-Date.now(),0),t.seconds=Math.floor(t.countdown/u.oneSecond);let r=t.countdown;t.d=Math.floor(r/u.oneDay),t.dd=(t.d<10?"0":"")+t.d,r%=u.oneDay,t.h=Math.floor(r/u.oneHour),t.hh=(t.h<10?"0":"")+t.h,r%=u.oneHour,t.m=Math.floor(r/u.oneMinute),t.mm=(t.m<10?"0":"")+t.m,r%=u.oneMinute,t.s=Math.floor(r/u.oneSecond),t.ss=(t.s<10?"0":"")+t.s,r%=u.oneSecond,t.S=r,t.SS=(t.S<10?"0":"")+t.S,t.SSS=t.S.toString().padStart(3,"0");let n=e;return n||(n=t.countdown>u.oneHour?"hh:mm:ss":t.countdown>u.oneMinute?"mm:ss":"ss"),t.desc=n.replace(/\bdd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>t[e])),t}add(e=0){return e?(this.timestamp=this.timestamp+e,this.date=new Date(this.timestamp),this.toDate(),this):this}format(e="yyyy-MM-dd hh:mm:ss"){return e.replace(/\byyyy|yy|MM|M|dd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>this[e]))}}const c=(e,t="yyyy-MM-dd hh:mm:ss")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e;return r?f(r).format(t):""},f=e=>{const t="string"==typeof e||"number"==typeof e?new Date(e):e;return new l(t||0)};function h({year:e=0,month:t=0,date:r=0,hour:n=0,minute:s=0,second:i=0}){const o=`${e||"yyyy"}/${t||"MM"}/${r||"dd"} ${n}:${s}:${i}`;return new Date(c(Date.now(),o)).getTime()}var d={...u,now:function(){return f(new Date)},isToday:e=>e&&(new Date).toDateString()===new Date(e).toDateString(),parseTimestamp:h,todayZero:()=>h({}),format:c,countdown:(e,t="")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e;if(!r)return"";return f(r).toCountdown(t)},dtime:f,loopFrame:(e=500)=>new a(e)},g="object"==typeof global&&global&&global.Object===Object&&global,p="object"==typeof self&&self&&self.Object===Object&&self;const m=(g||p||Function("return this")()).Symbol,{toString:y,hasOwnProperty:w,propertyIsEnumerable:b}=Object.prototype,v=m?m.toStringTag:void 0;function _(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":v&&v in Object(e)?function(e){const t=w.call(e,v),r=e[v];let n=!1;try{e[v]=void 0,n=!0}catch(e){}const s=y.call(e);return n&&(t?e[v]=r:delete e[v]),s}(e):y.call(e)}var $={getTag:_,getType:function(e){return(_(e).match(/\w+/g)||["object","Undefined"])[1]||""},toString:y,hasOwnProperty:w,propertyIsEnumerable:b},x="[object Function]",k="[object GeneratorFunction]",S="[object AsyncFunction]",A=9007199254740991;const j=/^(?:0|[1-9]\d*)$/;function q(e){const t=typeof e;return null!=e&&("object"==t||"function"==t)}function C(e){return null!=e&&"object"==typeof e}const O=Array.isArray;function L(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=A}(e.length)&&!F(e)}function E(e){return C(e)&&L(e)}function F(e){var t=q(e)?$.getTag(e):"";return t===x||t===k||t===S}var M={is:function(e,t){return $.getTag(e)===`[object ${t}]`},isNumber:function(e){return"[object Number]"===$.getTag(e)},isString:function(e){return"string"==typeof e||!O(e)&&C(e)&&"[object String]"==$.getTag(e)},isObject:q,isObjectLike:C,isPlainObject:function(e){if(!C(e)||"[object Object]"!=$.getTag(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t},isSymbol:function(e){return"symbol"==typeof e||C(e)&&"[object Symbol]"===$.getTag(e)},isFunction:F,isArray:O,isArrayLikeObject:E,isIndex:function(e,t){return!!(t=null==t?A:t)&&("number"==typeof e||j.test(e))&&e>-1&&e%1==0&&e<t},isArrayLike:L,isPrototype:function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Object.prototype)},isArguments:function(e){return E(e)&&$.hasOwnProperty.call(e,"callee")&&(!$.propertyIsEnumerable.call(e,"callee")||"[object Arguments]"==$.toString.call(e))},isPromise:function(e){return"[object Promise]"===(q(e)?$.getTag(e):"")}};const R=NaN,D=/^\s+|\s+$/g,P=/^[-+]0x[0-9a-f]+$/i,T=/^0b[01]+$/i,z=/^0o[0-7]+$/i,I=parseInt,N=1/0,B=17976931348623157e292;function U(e){if("number"==typeof e)return e;if(M.isSymbol(e))return R;if(M.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=M.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(D,"");const t=T.test(e);return t||z.test(e)?I(e.slice(2),t?2:8):P.test(e)?R:+e}function V(e){return e?(e=U(e))===N||e===-N?(e<0?-1:1)*B:e==e?e:0:0===e?e:0}var H={toNumber:U,toFinite:V,toInteger:function(e){var t=V(e),r=t%1;return t==t?r?t-r:t:0}};const W="Expected a function",Z=Math.max,J=Math.min;function G(e,t=300,r={}){var n,s,i,o,a,u,l=0,c=!1,f=!1,h=!0;if("function"!=typeof e)throw new TypeError(W);function d(t){var r=n,i=s;return n=s=void 0,l=t,o=e.apply(i,r)}function g(e){var r=e-u;return void 0===u||r>=t||r<0||f&&e-l>=i}function p(){var e=Date.now();if(g(e))return m(e);a=setTimeout(p,function(e){var r=t-(e-u);return f?J(r,i-(e-l)):r}(e))}function m(e){return a=void 0,h&&n?d(e):(n=s=void 0,o)}function y(...e){var r=Date.now(),i=g(r);if(n=arguments,s=this,u=r,i){if(void 0===a)return function(e){return l=e,a=setTimeout(p,t),c?d(e):o}(u);if(f)return a=setTimeout(p,t),d(u)}return void 0===a&&(a=setTimeout(p,t)),o}return t=H.toNumber(t)||0,M.isObject(r)&&(c=!!r.leading,i=(f="maxWait"in r)?Z(H.toNumber(r.maxWait)||0,t):i,h="trailing"in r?!!r.trailing:h),y.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=u=s=a=void 0},y.flush=function(){return void 0===a?o:m(Date.now())},y}class Y{__source;constructor(e){this.__source=e}run(){let e;try{let t;return t=M.isFunction(this.__source)?this.__source():this.__source,e=M.isPromise(t)?t:Promise.resolve(t),e.then((e=>[null,e])).catch((e=>[e,void 0]))}catch(e){return Promise.resolve([e,void 0])}}static _lockedMap=new Map;static _lock(e,t){if(!e||!t)return;const r=new Y(t).run();return this._lockedMap.set(e,r),r}static _unlock(e){e&&this._lockedMap.delete(e)}static async exec(e,t){if(!e||!t)return new Y(e).run();const r=this._lockedMap.get(t);if(r)return r;const n=this._lock(t,e);if(!n)return new Y(e).run();const s=await n;return this._unlock(t),s}}class K{__list=[];constructor(e){this.push(e)}push(e){return e&&this.__list.push(e),this}clear(){return this.__list=[],this}_exec(e,t){let r;if(M.isFunction(e))r=e(t);else{if(M.isPromise(e))return e.then((e=>({...t,...e})));r=e}return M.isPromise(r)?r:Promise.resolve({...r,...t})}run(e){try{return this.__list.reduce(((e,t)=>e.then((e=>this._exec(t,e)))),Promise.resolve(e)).then((e=>[void 0,e])).catch((e=>[e,void 0]))}catch(e){return Promise.reject([e,void 0])}}}const Q=(e=1e3)=>new Promise((t=>{setTimeout(t,e)}));var X={sleep:Q,run:async(e,t=0)=>{if(t<=0)return new Y(e).run();const r=t>0?Date.now():0,n=await new Y(e).run(),s=Date.now()-r;return s<t&&await Q(t-s),n},exec:(e,t="")=>Y.exec(e,t),debounce:G,throttle:function(e,t=300,r={}){var n=!1,s=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return M.isObject(r)&&(n=r.leading?!!r.leading:n,s=r.trailing?!!r.trailing:s),G(e,t,{leading:n,maxWait:t,trailing:s})},task:e=>new K(e),delay:(e=1e3)=>new Promise((t=>{setTimeout(t,e)})),mutex:function(e){var t=null;return async function(...r){if((t=this||t||{}).__ddMutex)return!1;t.__ddMutex=!0;try{e&&await Promise.resolve(e.apply(this,r))}catch(e){console.log(e)}finally{t.__ddMutex=!1}}}};function ee(e){return Math.floor(Math.random()*e)}function te(e,t=10){return+parseFloat(Number(e).toExponential(t))}const re=180/Math.PI;var ne={random:ee,randomRange:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},lerp:function(e,t,r){return e*(1-r)+t*r},randoms:function(e,t=1,r=!1){const n=[];for(;;){if(n.length>=t)break;if(!r&&n.length>=e)break;const s=ee(e);r?n.push(s):n.includes(s)||n.push(s)}return n},strip:te,float:function(e,{fractionDigits:t=2,fixed:r=!1}={}){const n=te(e).toFixed(t);return r||!t?+n:+n.replace(/(\.[1-9]?)0+$/,"$1").replace(/\.$/,"")},radian2degree:function(e){return e*re},degree2radian:function(e){return e/re}};function se(e){return e!=e}function ie(e,t){return function(e,t){for(var r=-1,n=e?e.length:0,s=Array(n);++r<n;)s[r]=t(e[r],r,e);return s}(t,(function(t){return e[t]}))}var oe,ae,ue=(oe=Object.keys,ae=Object,function(e){return oe(ae(e))}),le=Math.max;function ce(e,t){var r=M.isArray(e)||M.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,s=!!n;for(var i in e)!t&&!$.hasOwnProperty.call(e,i)||s&&("length"==i||M.isIndex(i,n))||r.push(i);return r}function fe(e,t,r){const{length:n}=e;return r=void 0===r?n:r,!t&&r>=n?e:function(e,t,r){let n=null==e?0:e.length;if(!n)return[];(t=null==t?0:t)<0&&(t=-t>n?0:n+t),(r=(r=void 0===r?n:r)>n?n:r)<0&&(r+=n),n=t>r?0:r-t>>>0,t>>>=0;let s=-1;const i=new Array(n);for(;++s<n;)i[s]=e[s+t];return i}(e,t,r)}const he=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff\\ufe0e\\ufe0f]");function de(e){return he.test(e)}const ge="\\ud800-\\udfff",pe=`[${ge}]`,me="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]",ye="\\ud83c[\\udffb-\\udfff]",we=`[^${ge}]`,be="(?:\\ud83c[\\udde6-\\uddff]){2}",ve="[\\ud800-\\udbff][\\udc00-\\udfff]",_e=`${`(?:${me}|${ye})`}?`,$e="[\\ufe0e\\ufe0f]?",xe=$e+_e+`(?:\\u200d(?:${[we,be,ve].join("|")})${$e+_e})*`,ke=`(?:${[`${we}${me}?`,me,be,ve,pe].join("|")})`,Se=RegExp(`${ye}(?=${ye})|${ke+xe}`,"g");function Ae(e){return de(e)?function(e){return e.match(Se)||[]}(e):function(e){return e.split("")}(e)}function je(e){return t=>{if(!t)return"";const r=de(t)?Ae(t):void 0,n=r?r[0]:t[0],s=r?fe(r,1).join(""):t.slice(1);return n[e]()+s}}const qe="\\ud800-\\udfff",Ce="\\u2700-\\u27bf",Oe="a-z\\xdf-\\xf6\\xf8-\\xff",Le="A-Z\\xc0-\\xd6\\xd8-\\xde",Ee="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Fe="['’]",Me=`[${Ee}]`,Re=`[${Ce}]`,De=`[${Oe}]`,Pe=`[^${qe}${Ee+"\\d"+Ce+Oe+Le}]`,Te="(?:\\ud83c[\\udde6-\\uddff]){2}",ze="[\\ud800-\\udbff][\\udc00-\\udfff]",Ie=`[${Le}]`,Ne=`(?:${De}|${Pe})`,Be=`(?:${Ie}|${Pe})`,Ue=`(?:${Fe}(?:d|ll|m|re|s|t|ve))?`,Ve=`(?:${Fe}(?:D|LL|M|RE|S|T|VE))?`,He="(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]|\\ud83c[\\udffb-\\udfff])?",We="[\\ufe0e\\ufe0f]?",Ze=We+He+`(?:\\u200d(?:${[`[^${qe}]`,Te,ze].join("|")})${We+He})*`,Je=`(?:${[Re,Te,ze].join("|")})${Ze}`,Ge=RegExp([`${Ie}?${De}+${Ue}(?=${[Me,Ie,"$"].join("|")})`,`${Be}+${Ve}(?=${[Me,Ie+Ne,"$"].join("|")})`,`${Ie}?${Ne}+${Ue}`,`${Ie}+${Ve}`,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])","\\d+",Je].join("|"),"g");const Ye=RegExp.prototype.test.bind(/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/),Ke=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function Qe(e,t){if(void 0===t){const t=Ye(e)?function(e){return e.match(Ge)}(e):function(e){return e.match(Ke)}(e);return t||[]}return e.match(t)||[]}function Xe(e){if(null==e)return"";if("string"==typeof e)return e;if(Array.isArray(e))return`${e.map((e=>null==e?e:Xe(e)))}`;if(M.isSymbol(e))return e.toString();const t=`${e}`;return"0"==t&&1/e==-Infinity?"-0":t}const et=je("toUpperCase"),tt=je("toLowerCase");var rt={toString:Xe,startCase:e=>Qe(`${e}`.replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+et(t)),""),snakeCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?"_":"")+t.toLowerCase()),""),kebabCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?"-":"")+t.toLowerCase()),""),camelCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>(t=t.toLowerCase(),e+(r?et(t):t))),""),upperCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+t.toUpperCase()),""),upperFirst:et,lowerCase:e=>Qe(Xe(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+t.toLowerCase()),""),lowerFirst:tt,splitOnFirst:(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===e||""===t)return[];const r=e.indexOf(t);return-1===r?[]:[e.slice(0,r),e.slice(r+t.length)]},parseValue:(e,{number:t=!1,boolean:r=!1}={})=>{let n=e;return e&&"string"==typeof e?(t&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?n=Number(e):!r||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(n="true"===e.toLowerCase()),n):n},replace:(e,t)=>{if(!e)return e;if(!t)return e;let r=e;return((Array.isArray(t)?t:[t])||[]).forEach((e=>{e.key&&e.value&&(r=r.replace(new RegExp(e.key,e.flag||""),e.value))})),r}};const nt=e=>{if(!e)return e;if("object"!=typeof e)return e;const t=Array.isArray(e)?[]:{};for(const r in e)e.hasOwnProperty(r)&&(t[r]=nt(e[r]));return t};const st=(e,t,r={})=>{const n=e||{},{ignoreUndefined:s=!0,cover:i=!1}=r;if(!t)return n;for(const o in t){if(!t.hasOwnProperty(o))continue;const a=t[o];"object"!=typeof a||"object"!=typeof e[o]||i?s&&void 0===a||r.ignoreNull&&null===a||r.ignoreZero&&0===a||r.ignoreEmptyArray&&Array.isArray(a)&&a.length<=0||r.ignoreEmptyString&&"string"==typeof a&&""===a.trim()||(n[o]=a):n[o]=it(e[o],a,r)}return n},it=(e,t,r={})=>{let n={};return n=e&&"object"==typeof e&&!Array.isArray(e)?st(e,t,r):st({...e},t,r),n},ot=(e,t,r={})=>st({...e},t,{cover:!0,...r}),at=(e,t,r,n,s=!1)=>{if(!e||!t||!r)return;let i=e[t];null!==i&&"object"==typeof i&&s&&Object.keys(i).forEach((e=>{at(i,e,r,n,s)})),Object.defineProperty(e,t,{configurable:!0,enumerable:!0,set:o=>{r.call(n,o,i),i=o,s&&at(e,t,r,n,s)},get:()=>i})};var ut={copy:(e,t={})=>{if(void 0===e)return;const r=JSON.parse(JSON.stringify(e));if("object"!=typeof r)return r;if(Array.isArray(r))return r;const{fields:n=[],camel:s=!1,pure:i=!0}=t;if((!n||n.length<=0)&&!s)return r;const o={};for(const e in r){if(!r.hasOwnProperty(e))continue;const a=s?i&&e.startsWith("_")?e:rt.camelCase(e):e;if(n.length>0&&!n.includes(e)&&!n.includes(a))continue;const u=r[e];t.ignoreNull&&null===u||(t.ignoreZero&&0===u||t.ignoreEmptyArray&&Array.isArray(u)&&u.length<=0||t.ignoreEmptyString&&"string"==typeof u&&""===u.trim()||(o[a]=u))}return o},clone:nt,merge:it,isEmpty:e=>0!==e&&(!e||"object"==typeof e&&(Array.isArray(e)?!e.length:Object.keys(e).length<=0)),parseValue:(e,{number:t=!1,boolean:r=!1}={})=>{if(!e&&"object"!=typeof e)return e;for(const[n,s]of Object.entries(e))if("object"==typeof s&&null!==s)for(const[e,n]of Object.entries(s))s[e]=rt.parseValue(n,{number:t,boolean:r});else e[n]=rt.parseValue(s,{number:t,boolean:r});return e},cloneClass:function(e){return e?"object"!=typeof e?e:Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e)):e},combine:ot,combines:(e,t={})=>{let r={};if(!e||e.length<=0)return r;const{ignoreUndefined:n=!0,ignoreNull:s=!0,ignoreZero:i=!0,ignoreEmptyArray:o=!0,ignoreEmptyString:a=!0,cover:u=!0}=t;return e.forEach((e=>r=ot(r,e,{ignoreUndefined:n,ignoreNull:s,ignoreZero:i,ignoreEmptyArray:o,ignoreEmptyString:a,cover:u}))),r},observe:at};var lt={...M,...$,...ut,includes:function(e,t,r,n){e=M.isArrayLike(e)?e:function(e){return e?ie(e,function(e){return M.isArrayLike(e)?ce(e):function(e){if(!M.isPrototype(e))return ue(e);var t=[];for(var r in Object(e))$.hasOwnProperty.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}(e)):[]}(e),r=r&&!n?H.toInteger(r):0;var s=e.length;return r<0&&(r=le(s+r,0)),M.isString(e)?r<=s&&e.indexOf(t,r)>-1:!!s&&function(e,t,r){if(t!=t)return function(e,t,r,n){for(var s=e.length,i=r+(n?1:-1);n?i--:++i<s;)if(t(e[i],i,e))return i;return-1}(e,se,r);for(var n=r-1,s=e.length;++n<s;)if(e[n]===t)return n;return-1}(e,t,r)>-1},forof:(e,t)=>{if(!e)return;let r;if(M.isObject(e)&&(r=M.isArray(e)?e.entries():Object.entries(e),r))for(const[e,n]of r)t&&t(e,n)}};var ct={groupBy:function(e,t){return e.reduce(((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e)),{})},first:function(e){if(!e)return;return e.length<=0?void 0:e[0]},last:function(e){if(!e)return;const t=e.length;return t<=0?void 0:e[t-1]},toList:function(e){return Array.isArray(e)?e:e?[e]:[]}};var ft={...ct,stepAction:function(e,t,r=100){if(!M.isFunction(t))return;if(!M.isArray(e)||e.length<=0)return;let n=0;for(;e.length>n;){let s=r+n,i=e.slice(n,s);t&&t(i),n=s}},skip:function(e,t){if(!M.isArray(e)||e.length<=0)return[];const r=t;return e.slice(r)},take:function(e,t,r=0){if(!M.isArray(e)||e.length<=0)return[];const n=r||0;if(n>=e.length)return[];const s=t+n;return e.slice(n,e.length<s?e.length:s)||[]},distinct:function(e){return!M.isArray(e)||e.length<=0?[]:[...new Set(e)]},randoms:function(e,t=1,r=!1){const n=e.length||0;return ne.randoms(n,t,r).map((t=>e[t]))||[]},toKV:(e,t,r)=>{const n={};return t&&r?((e||[]).forEach((e=>{if(!e||!M.isObject(e))return;const s=e[t];(M.isString(s)&&""!==s||M.isNumber(s))&&(n[s]=e[r])})),n):n}};const ht="[object Object]",dt="[object Array]",gt=e=>Object.prototype.toString.call(e),pt=(e,t,r=!1)=>{if(e===t)return;const n=gt(e);if(n===gt(t))if(n===dt&&e.length>=t.length)for(let r=0;r<t.length;r++)pt(e[r],t[r]);else if(n===ht&&Object.keys(e).length>=Object.keys(t).length)for(let n in t)r||void 0!==e[n]?pt(e[n],t[n]):e[n]=null},mt=(e,t,r,n="",s=!1)=>{if(e===t)return;const i=gt(e),o=gt(t);if(i===dt&&o===i&&e.length>=t.length)for(let s=0;s<e.length;s++)mt(e[s],t[s],r,`${n}[${s}]`);else if(i===ht&&o===i&&(s||Object.keys(e).length>=Object.keys(t).length)){const s=Object.keys(e);for(let i of s){const s=e[i],o=t[i],a=gt(s),u=gt(o);if(s!==o)if(a===dt&&u===a&&s.length>=o.length)for(let e=0;e<s.length;e++)mt(s[e],o[e],r,`${n?n+".":""}${i}[${e}]`);else if(a===ht&&u===a&&Object.keys(s).length>=Object.keys(o).length)for(let e in s)mt(s[e],o[e],r,`${n?n+".":""}${i}.${e}`);else r[`${n?n+".":""}${i}`]=s}}else r[n]=e};class yt{list=[];constructor(){this.invoke=this.invoke.bind(this)}use(e){this.list=this.list.concat(e)}invoke(e){return this.list.reduce(((e,t)=>e.then((e=>t(e)))),Promise.resolve(e)).catch((e=>"REFETCH"===e.sig?Promise.resolve(e.result):Promise.reject(e)))}}class wt{reqConfig={};handleRequest;handleEncrypt;handleDecrypt;handleError;interceptors={request:new yt,response:new yt};constructor(e){const{reqConfig:t={},requestEncrypt:r,responseDecrypt:n,handleError:s,api:i}=e;this.reqConfig=t,this.handleEncrypt=r,this.handleDecrypt=n,this.handleError=s,this.handleRequest=i}static blockId="blockid";static requestLock={};lockR(e,t){wt.requestLock[e]={lock:!0,request:t()}}unlockR(e){delete wt.requestLock[e]}getIdFromReq(e){const{url:t,data:r={}}=e;return t+JSON.stringify(r)}getIdFromReqUrl(e){return e.url||""}_fetch(e,t){let r=e;return t&&this.handleEncrypt&&(r=this.handleEncrypt(e)),new Promise(((e,n)=>{this.handleRequest({...r,success:r=>{let n=r;t&&this.handleDecrypt&&(n=this.handleDecrypt(r)),e(n)},fail:e=>{n(e)}})}))}async request(e,t){const r=ut.copy(this.reqConfig[e]),{config:n,...s}=await this.interceptors.request.invoke({url:r.url,data:t||{},header:{"content-type":"application/json"},method:r.method?r.method:"POST",responseType:"text",config:r});let i;try{if("block"===n.model)this.lockR(wt.blockId,(()=>this._fetch(s,n.hasEncrypt))),i=await wt.requestLock[wt.blockId].request;else if(wt.requestLock[wt.blockId]&&wt.requestLock[wt.blockId].lock&&await wt.requestLock[wt.blockId].request,"debounce"===n.model||"debounceUrl"===n.model){let e;e="debounceUrl"===n.model?this.getIdFromReqUrl(s):this.getIdFromReq(s),wt.requestLock[e]||this.lockR(e,(()=>this._fetch(s,n.hasEncrypt))),i=await wt.requestLock[e].request,this.unlockR(e)}else i=await this._fetch(s,n.hasEncrypt)}catch(e){this.handleError&&this.handleError(e)}return this.interceptors.response.invoke({res:i,config:r,reqId:this.getIdFromReq(s),refetch:()=>({sig:"REFETCH",result:this.request(e,t||{})})})}}const bt=e=>"function"!=typeof e?e:(t={})=>new Promise(((r,n)=>{e(Object.assign(t,{success:r,fail:n}))}));var vt={diff:function(e,t){const r={};return(e=>{if(gt(e)===ht)for(let t in e)if(/\w+\.\w+/g.test(t)&&-1===t.indexOf("[")){const r=t.split(".");let n=e,s=r.length;for(let e=0;e<s-1;e++){const t=r[e];gt(n[t])!==ht&&(n[t]={}),n=n[t]}n[r[s-1]]=e[t],delete e[t]}})(e),pt(e,t,!0),mt(e,t,r,"",!0),r},promixify:bt,run:(e,t={})=>e?X.run(bt(e)(t)):X.run(e),formatList:(e,t,r)=>(e||[]).reduce(((e,n,s)=>({...e,[`${r}[${t+s}]`]:n})),{}),ruleValidator:(e,t)=>!!t&&(!Array.isArray(t)||!(t.length<=0)&&t.every((e=>!!e))),Http:wt,setWatcher:e=>{let t=e.data,r=e.watch;Object.keys(r).forEach((n=>{let s=t,i=n.split(".");for(let e=0;e<i.length-1;e++)s=s[i[e]];let o=i[i.length-1],a=r[n].handler||r[n],u=r[n].deep;ut.observe(s,o,a,e,u)}))}};const _t=function(e,{sep:t="&",eq:r="=",max:n=1e3,multiple:s=!0,uri:i=!0,parseNumber:o=!1,parseBoolean:a=!1}={}){t=t||"&",r=r||"=";const u={};if("string"!=typeof e||0===e.length)return u;const l=/\+/g,c=n||1e3;let f=(e=e.split(t)).length;c>0&&f>c&&(f=c);for(let t=0;t<f;++t){let n,o,a,c,f=e[t].replace(l,"%20"),h=f.indexOf(r);h>=0?(n=f.substr(0,h),o=f.substr(h+1)):(n=f,o=""),a=i?decodeURIComponent(n):n,c=i?decodeURIComponent(o):o,$.hasOwnProperty.call(u,a)&&s?Array.isArray(u[a])?u[a].push(c):u[a]=[u[a],c]:u[a]=c}return ut.parseValue(u,{number:o,boolean:a}),u},$t=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}},xt=function(e,t=!0){return t?encodeURIComponent(e):e},kt=function(e,{cleanZero:t=!1,cleanNull:r=!1,cleanWhitespace:n=!1}={}){return!(!t||0!==e)||(!(!r||null!=e)||!(!n||"string"!=typeof e||""!==e.trim()))};var St={parse:_t,stringify:function(e,{sep:t="&",eq:r="=",name:n=null,uri:s=!0,cleanZero:i=!1,cleanNull:o=!1,cleanWhitespace:a=!1}={}){return t=t||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(n){const u=xt($t(n),s)+r,l=e[n];return Array.isArray(l)?l.map((function(e){return u+xt($t(e),s)})).join(t):kt(l,{cleanZero:i,cleanNull:o,cleanWhitespace:a})?"":u+xt($t(l),s)})).filter(Boolean).join(t):n?xt($t(n),s)+r+xt($t(e),s):""},https:e=>e?e.replace(/^http[s]?/,"https"):e,parseUrl:e=>{const t=e.split("?"),r=t[0],n=t.length>1?t[1]:"";let s="";const i=r.match(/[\/]?([\w\_\-]+)[.]?[\w]*[?]?$/);i&&(s=i[1]);return{url:e,path:r,page:s,query:n,params:_t(n,{multiple:!0,uri:!1})}},parsePath:e=>{const t=(e||"").replace(/\\/g,"/").split("?")[0],r=t.lastIndexOf("/")+1,n=t.substring(r),s=n.lastIndexOf("."),i=n.substring(0,s),o=n.substring(s);return{root:t.substring(0,r),name:n,withoutExtension:i,extension:o}},join:(...e)=>{const t=[];return e.forEach((e=>{const r=e.trim().replace(/^\/*(.*?)\/*$/,"$1");r.length>0&&t.push(r)})),t.join("/")}};const At=/%[sdj%]/g;let jt=()=>{};function qt(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 Ct(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(At,(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 Ot(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 Lt(e,t,r){let n=0;const s=e.length;!function i(o){if(o&&o.length)return void r(o);const a=n;n+=1,a<s?t(e[a],i):r([])}([])}"undefined"!=typeof process&&process.env&&"production"!==process.env.NODE_ENV&&"undefined"!=typeof window&&"undefined"!=typeof document&&(jt=(e,t)=>{"undefined"!=typeof console&&console.warn&&"undefined"==typeof ASYNC_VALIDATOR_NO_WARNING&&t.every((e=>"string"==typeof e))&&console.warn(e,t)});class Et extends Error{errors;fields;constructor(e,t){super("Async Validation Error"),this.errors=e,this.fields=t}}function Ft(e,t,r,n,s){if(t.first){const t=new Promise(((t,i)=>{const o=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push(...e[r]||[])})),t}(e);Lt(o,r,(e=>(n(e),e.length?i(new Et(e,qt(e))):t(s))))}));return t.catch((e=>e)),t}const i=!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 Et(l,qt(l))):t(s)};o.length||(n(l),t(s)),o.forEach((t=>{const n=e[t];-1!==i.indexOf(t)?Lt(n,r,f):function(e,t,r){const n=[];let s=0;const i=e.length;function o(e){n.push(...e||[]),s++,s===i&&r(n)}e.forEach((e=>{t(e,o)}))}(n,r,f)}))}));return c.catch((e=>e)),c}function Mt(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],function(e){return!(!e||void 0===e.message)}(r)?(r.field=r.field||e.fullField,r.fieldValue=n,r):{message:"function"==typeof r?r():r,fieldValue:n,field:r.field||e.fullField}}}function Rt(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]={...e[r],...n}:e[r]=n}return e}const Dt=(e,t,r,n,s,i)=>{!e.required||r.hasOwnProperty(e.field||"")&&!Ot(t,i||e.type)||n.push(Ct(s.messages.required,e.fullField))};let Pt;const Tt=/^(([^<>()\[\]\\.,;:\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,}))$/,zt=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,It={integer:e=>It.number(e)&&parseInt(e,10)===e,float:e=>It.number(e)&&!It.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&&!It.array(e),method:e=>"function"==typeof e,email:e=>"string"==typeof e&&e.length<=320&&!!e.match(Tt),url:e=>"string"==typeof e&&e.length<=2048&&!!e.match((()=>{if(Pt)return Pt;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}",s=`\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(),i=new RegExp(`(?:^${r}$)|(?:^${s}$)`),o=new RegExp(`^${r}$`),a=new RegExp(`^${s}$`),u=e=>e&&e.exact?i:new RegExp(`(?:${t(e)}${r}${t(e)})|(?:${t(e)}${s}${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)}${s}${t(e)}`,"g");const l=u.v4().source,c=u.v6().source;return Pt=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"),Pt})()),hex:e=>"string"==typeof e&&!!e.match(zt)},Nt="enum";var Bt={required:Dt,whitespace:(e,t,r,n,s)=>{(/^\s+$/.test(t)||""===t)&&n.push(Ct(s.messages.whitespace,e.fullField))},type:(e,t,r,n,s)=>{if(e.required&&void 0===t)return void Dt(e,t,r,n,s);const i=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(i)>-1?It[i](t)||n.push(Ct(s.messages.types[i],e.fullField,e.type)):i&&typeof t!==e.type&&n.push(Ct(s.messages.types[i],e.fullField,e.type))},range:(e,t,r,n,s)=>{const i="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,h="string"==typeof t,d=Array.isArray(t);if(f?c="number":h?c="string":d&&(c="array"),!c)return!1;d&&(l=t.length),h&&(l=t.replace(u,"_").length),i?l!==e.len&&n.push(Ct(s.messages[c].len,e.fullField,e.len)):o&&!a&&l<e.min?n.push(Ct(s.messages[c].min,e.fullField,e.min)):a&&!o&&l>e.max?n.push(Ct(s.messages[c].max,e.fullField,e.max)):o&&a&&(l<e.min||l>e.max)&&n.push(Ct(s.messages[c].range,e.fullField,e.min,e.max))},enum:(e,t,r,n,s)=>{e[Nt]=Array.isArray(e[Nt])?e[Nt]:[],-1===e[Nt].indexOf(t)&&n.push(Ct(s.messages[Nt],e.fullField,e[Nt].join(", ")))},pattern:(e,t,r,n,s)=>{if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(Ct(s.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(Ct(s.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};const Ut=(e,t,r,n,s)=>{const i=e.type,o=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t,i)&&!e.required)return r();Bt.required(e,t,n,o,s,i),Ot(t,i)||Bt.type(e,t,n,o,s)}r(o)};var Vt={string:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field||"")){if(Ot(t,"string")&&!e.required)return r();Bt.required(e,t,n,i,s,"string"),Ot(t,"string")||(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s),Bt.pattern(e,t,n,i,s),!0===e.whitespace&&Bt.whitespace(e,t,n,i,s))}r(i)},method:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&Bt.type(e,t,n,i,s)}r(i)},number:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s))}r(i)},boolean:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&Bt.type(e,t,n,i,s)}r(i)},regexp:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),Ot(t)||Bt.type(e,t,n,i,s)}r(i)},integer:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s))}r(i)},float:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s))}r(i)},array:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(null==t&&!e.required)return r();Bt.required(e,t,n,i,s,"array"),null!=t&&(Bt.type(e,t,n,i,s),Bt.range(e,t,n,i,s))}r(i)},object:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&Bt.type(e,t,n,i,s)}r(i)},enum:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s),void 0!==t&&Bt.enum(e,t,n,i,s)}r(i)},pattern:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t,"string")&&!e.required)return r();Bt.required(e,t,n,i,s),Ot(t,"string")||Bt.pattern(e,t,n,i,s)}r(i)},date:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t,"date")&&!e.required)return r();if(Bt.required(e,t,n,i,s),!Ot(t,"date")){let r;r=t instanceof Date?t:new Date(t),Bt.type(e,r,n,i,s),r&&Bt.range(e,r.getTime(),n,i,s)}}r(i)},url:Ut,hex:Ut,email:Ut,required:(e,t,r,n,s)=>{const i=[],o=Array.isArray(t)?"array":typeof t;Bt.required(e,t,n,i,s,o),r(i)},any:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Ot(t)&&!e.required)return r();Bt.required(e,t,n,i,s)}r(i)}};function Ht(){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 Wt=Ht();class Zt{static register=function(e,t){if("function"!=typeof t)throw new Error("Cannot register a validator by type, validator is not a function");Vt[e]=t};static warning=jt;static messages=Wt;static validators=Vt;rules={};_messages=Wt;constructor(e){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=Rt(Ht(),e)),this._messages}validate(e,t={},r=(()=>{})){let n=e,s=t,i=r;if("function"==typeof s&&(i=s,s={}),!this.rules||0===Object.keys(this.rules).length)return i&&i(null,n),Promise.resolve(n);if(s.messages){let e=this.messages();e===Wt&&(e=Ht()),Rt(e,s.messages),s.messages=e}else s.messages=this.messages();const o={};(s.keys||Object.keys(this.rules)).forEach((t=>{const r=this.rules[t];let s=n[t];r.forEach((r=>{let i=r;"function"==typeof i.transform&&(n===e&&(n={...n}),s=n[t]=i.transform(s)),i="function"==typeof i?{validator:i}:{...i},i.validator=this.getValidationMethod(i),i.validator&&(i.field=t,i.fullField=i.fullField||t,i.type=this.getType(i),o[t]=o[t]||[],o[t].push({rule:i,value:s,source:n,field:t}))}))}));const a={};return Ft(o,s,((e,t)=>{const r=e.rule;let i,o=!("object"!==r.type&&"array"!==r.type||"object"!=typeof r.fields&&"object"!=typeof r.defaultField);function u(e,t){return{...t,fullField:`${r.fullField}.${e}`,fullFields:r.fullFields?[...r.fullFields,e]:[e]}}function l(i=[]){let l=Array.isArray(i)?i:[i];!0===s.suppressWarning&&l.length&&Zt.warning("async-validator:",l),l.length&&void 0!==r.message&&(l=[].concat(r.message));let c=l.map(Mt(r,n));if(s.first&&c.length)return a[r.field]=1,t(c);if(o){if(r.required&&!e.value)return void 0!==r.message?c=[].concat(r.message).map(Mt(r,n)):s.error&&(c=[s.error(r,Ct(s.messages.required,r.field))]),t(c);let i={};r.defaultField&&Object.keys(e.value).map((e=>{i[e]=r.defaultField})),i={...i,...e.rule.fields};const o={};Object.keys(i).forEach((e=>{const t=i[e],r=Array.isArray(t)?t:[t];o[e]=r.map(u.bind(null,e))}));const a=new Zt(o);a.messages(s.messages),e.rule.options&&(e.rule.options.messages=s.messages,e.rule.options.error=s.error),a.validate(e.value,e.rule.options||s,(e=>{const r=[];c&&c.length&&r.push(...c),e&&e.length&&r.push(...e),t(r.length?r:null)}))}else t(c)}if(o=o&&(r.required||!r.required&&e.value),r.field=e.field,r.asyncValidator)i=r.asyncValidator(r,e.value,l,e.source,s);else if(r.validator){try{i=r.validator(r,e.value,l,e.source,s)}catch(e){console.error?.(e),s.suppressValidatorError||setTimeout((()=>{throw e}),0),l(e.message)}!0===i?l():!1===i?l("function"==typeof r.message?r.message(r.fullField||r.field):r.message||`${r.fullField||r.field} fails`):i instanceof Array?l(i):i instanceof Error&&l(i.message)}i&&i.then&&i.then((()=>l()),(e=>l(e)))}),(e=>{!function(e){let t=[],r={};for(let r=0;r<e.length;r++)s=e[r],Array.isArray(s)?t=t.concat(...s):t.push(s);var s;t.length?(r=qt(t),i(t,r)):i(null,n)}(e)}),n)}getType(e){if(void 0===e.type&&e.pattern instanceof RegExp&&(e.type="pattern"),"function"!=typeof e.validator&&e.type&&!Vt.hasOwnProperty(e.type))throw new Error(Ct("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]?Vt.required:Vt[this.getType(e)]||void 0}}function Jt(e){return new Zt(e)}var Gt={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:Jt,validate:function(e,t,r={},n=(()=>{})){return X.run(Jt(e).validate(t,r,n))},isChinese:function(e){return!!e&&!!/^[\u4E00-\u9FA5]+$/.test(e)},isNumber:function(e){return!!e&&!!/^[0-9]+$/.test(e)},isFloat:function(e){return!!e&&!!/^(\-|\+)?\d+(\.\d+)?$/.test(e)},isPhoneNumber: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)}};var Yt={pattern:{num:"0-9",zh:"一-龥",en:"A-Za-z"},regex:(e,t)=>new RegExp(e,t),entire:{chinese:/^[\u4E00-\u9FA5]+$/,real:/^(\-|\+)?\d+(\.\d+)?$/,cssReal:/^(\-|\+)?\d*(\.)?\d+$/,id:/^[A-Za-z0-9]+$/,yyyyMMdd:/^(\d{4})-?(\d{2})-?(\d{2})$/}};const Kt=`${s.keyUpper}${s.keyLower}${s.keyNumber}+/=`,Qt=e=>{let t,r,n,s,i,o,a,u="",l=0;for(e=Xt(e);l<e.length;)t=e.charCodeAt(l++),r=e.charCodeAt(l++),n=e.charCodeAt(l++),s=t>>2,i=(3&t)<<4|r>>4,o=(15&r)<<2|n>>6,a=63&n,isNaN(r)?o=a=64:isNaN(n)&&(a=64),u=u+Kt.charAt(s)+Kt.charAt(i)+Kt.charAt(o)+Kt.charAt(a);return u},Xt=e=>{const t=e.replace(/\r\n/g,"\n");let r="";for(let e=0;e<t.length;e++){let n=t.charCodeAt(e);n<128?r+=String.fromCharCode(n):n>127&&n<2048?(r+=String.fromCharCode(n>>6|192),r+=String.fromCharCode(63&n|128)):(r+=String.fromCharCode(n>>12|224),r+=String.fromCharCode(n>>6&63|128),r+=String.fromCharCode(63&n|128))}return r},er=e=>{let t="",r=0,n=0,s=0,i=0;for(;r<e.length;)n=e.charCodeAt(r),n<128?(t+=String.fromCharCode(n),r++):n>191&&n<224?(s=e.charCodeAt(r+1),t+=String.fromCharCode((31&n)<<6|63&s),r+=2):(s=e.charCodeAt(r+1),i=e.charCodeAt(r+2),t+=String.fromCharCode((15&n)<<12|(63&s)<<6|63&i),r+=3);return t};var tr={encode:Qt,decode:e=>{let t,r,n,s,i,o,a,u="",l=0;for(e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");l<e.length;)s=Kt.indexOf(e.charAt(l++)),i=Kt.indexOf(e.charAt(l++)),o=Kt.indexOf(e.charAt(l++)),a=Kt.indexOf(e.charAt(l++)),t=s<<2|i>>4,r=(15&i)<<4|o>>2,n=(3&o)<<6|a,u+=String.fromCharCode(t),64!=o&&(u+=String.fromCharCode(r)),64!=a&&(u+=String.fromCharCode(n));return u=er(u),u},encodeByOss:e=>Qt(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")};var rr={...s,base64:tr,uuid:i,newId:(e,t=!1,r="")=>{const n=i(e||32);return t?d.now().format("yyyyMMddhhmmss")+r+n:n}};const nr=e=>{if(!e)return"";if(!lt.isObject(e))return"";let t="";return lt.forof(e,((e,r)=>{r&&(t+=`${rt.kebabCase(e)}:${r};`)})),t},sr=["display","position","top","bottom","left","right","padding","margin","marginTop","marginRight","marginBottom","marginLeft","paddingTop","paddingRight","paddingBottom","paddingLeft","height","width","fontSize","textAlign","fontFamily","border","borderLeft","borderRight","borderTop","borderBottom","borderColor","borderRadius","background","backgroundImage","backgroundRepeat","backgroundSize","backgroundPosition","color","overflow","opacity","flexDirection","justifyContent","alignItems","flexWrap","alignContent","alignSelf","flex","flexBasis","flexFlow","flexShrink","pointerEvents"],ir=["top","bottom","left","right","padding","margin","marginTop","marginRight","marginBottom","marginLeft","paddingTop","paddingRight","paddingBottom","paddingLeft","height","width","border","borderLeft","borderRight","borderTop","borderBottom","borderColor","borderRadius"],or=(e,t="px")=>e&&t?"0"===e?e:Gt.isFloat(e.toString())?`${e}${t}`:e:e;var ar={stringify:nr,parse:(e,{camel:t=!1,pure:r=!0}={})=>{if(!e.trim())return;const n=St.parse(e,{sep:";",eq:":",uri:!1}),s={};return lt.forof(n,((e,n)=>{if(!n)return;const i=t?r&&e.startsWith("_")?e:rt.camelCase(e):e;Gt.isFloat(n)||n.length>=2&&n.startsWith(".")&&Gt.isNumber(n.substr(1))?s[i]=+n:s[i]=n})),s},fixValue:or,style:(e,t="px")=>{if(!e)return"";const r=lt.copy(e,{fields:sr});lt.forof(r,((e,n)=>{(ir.includes(e)||ir.includes(rt.camelCase(e)))&&(r[e]=or(n,t))}));return nr(r)},commonFields:sr};const ur=(e,t)=>{try{const r=document.createElement("a");r.href=t,r.download=e,r.click()}catch(e){console.warn("[ddan] downloadUrl",e)}};var lr={dataURLtoFile:(e,t)=>{let r=e.split(","),n=r[0].match(/:(.*?);/)[1],s=window.atob(r[1]),i=s.length,o=new Uint8Array(i);for(;i--;)o[i]=s.charCodeAt(i);return new File([o],t,{type:n})},dataURLtoBlob:e=>{let t=e.split(","),r=t[0].match(/:(.*?);/)[1],n=window.atob(t[1]),s=n.length,i=new Uint8Array(s);for(;s--;)i[s]=n.charCodeAt(s);return new Blob([i],{type:r})},blobToFile:(e,t)=>(e.lastModifiedDate=new Date,e.name=t,e),readAsDataURL:(e,t)=>{var r=new FileReader;r.readAsDataURL(e),r.onloadend=function(e){t&&t(e.target?.result)}},downloadUrl:ur,download:(e,t)=>{if(!t)return;if("string"==typeof t)return void ur(e,t);const r=URL?.createObjectURL(t);r&&(ur(e,r),URL?.revokeObjectURL(r))},downloadImage:e=>{try{if(!e)return;const t=e.match(/\/(\w+.\w+)$/)[1],r=new Image;r.onload=()=>{let e=document.createElement("canvas");e.width=r.width,e.height=r.height;let n=e.getContext("2d");n&&n.drawImage(r,0,0,r.width,r.height);let s=e.toDataURL();ur(t,s)},r.src=e,r.setAttribute("crossOrigin","Anonymous")}catch(e){console.warn("[ddan] downloadImage",e)}return Promise.resolve()},watermark:(e,{width:t=400,height:r=300,angle:n=0,fillStyle:s="rgba(0, 0, 0, 0.2)",font:i="16px Arial",textAlign:o="left",textBaseline:a="middle"}={})=>{try{if(!e)return"";const u=document.createElement("canvas");u.width=t,u.height=r;const l=u.getContext("2d");return l?(n&&l.rotate(n*Math.PI/180),s&&(l.fillStyle=s),i&&(l.font=i),o&&(l.textAlign=o),a&&(l.textBaseline=a),l.fillText(e,u.width/10,u.height/2),`url(${u.toDataURL()})`):""}catch(e){return console.warn("[ddan] watermark",e),""}},fetchDataURL:async e=>{const t={contentType:"",dataUrl:""};try{return t.dataUrl=await fetch(e).then((e=>(t.contentType=e.headers.get("content-type")||"",e.arrayBuffer()))).then((e=>`${`data:${t.contentType};base64,`+btoa(new Uint8Array(e).reduce(((e,t)=>e+String.fromCharCode(t)),""))}`)),t}catch(e){return t}}};const cr=new class{__defStyle="vertical-align: middle; mask-position: 50% 50%; mask-repeat: no-repeat; mask-size: 100%; -webkit-mask-position: 50% 50%; -webkit-mask-repeat: no-repeat; -webkit-mask-size: 100%; background-color: currentColor;";__map={back:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M609.408 149.376L277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z"/></svg>',right:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"/></svg>',home:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M13 19.8h3.8v-7h3.303L12 4.697 3.897 12.8H7.2v7H11V17h2v2.8zm5 .2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-6H3.414a1 1 0 0 1-.707-1.707l8.586-8.586a1 1 0 0 1 1.414 0l8.586 8.586A1 1 0 0 1 20.586 14H18v6z" fill-rule="evenodd" fill-opacity=".9"/></svg>',close:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M764.288 214.592L512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"/></svg>',close_circle:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M466.752 512l-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248L466.752 512z"/><path fill="currentColor" d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"/></svg>',close_circle_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"/></svg>',warning:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M928.99 755.83L574.6 203.25c-12.89-20.16-36.76-32.58-62.6-32.58s-49.71 12.43-62.6 32.58L95.01 755.83c-12.91 20.12-12.9 44.91.01 65.03 12.92 20.12 36.78 32.51 62.59 32.49h708.78c25.82.01 49.68-12.37 62.59-32.49 12.91-20.12 12.92-44.91.01-65.03zM554.67 768h-85.33v-85.33h85.33V768zm0-426.67v298.66h-85.33V341.32l85.33.01z" fill="currentColor"/></svg>',play:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M512 1024A512 512 0 1 1 512 0a512 512 0 0 1 0 1024zm3.008-92.992a416 416 0 1 0 0-832 416 416 0 0 0 0 832zM383.232 287.616l384 224.896-384 223.104v-448z" fill="currentColor"/></svg>',lock:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32H224zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96z"/><path fill="currentColor" d="M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32zm192-160v-64a192 192 0 1 0-384 0v64h384zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64z"/></svg>',lock_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M467.2 713.92v115.968a44.8 44.8 0 0 0 89.6 0V713.92c26.752-14.72 44.8-42.304 44.8-73.92 0-47.104-40.128-85.312-89.6-85.312-49.472 0-89.6 38.208-89.6 85.312 0 31.616 18.048 59.136 44.8 73.92zM64 384h896v640H64V384zm268.8 0h358.4V256c0-94.272-80.256-170.688-179.2-170.688-98.944 0-179.2 76.416-179.2 170.688v128zM512 0c148.48 0 268.8 114.56 268.8 256v128H243.2V256C243.2 114.56 363.52 0 512 0z" fill="currentColor"/></svg>',plus:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64h352z"/></svg>',plus_circle:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z"/><path fill="currentColor" d="M480 672V352a32 32 0 1 1 64 0v320a32 32 0 0 1-64 0z"/><path fill="currentColor" d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"/></svg>',plus_circle_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-38.4 409.6H326.4a38.4 38.4 0 1 0 0 76.8h147.2v147.2a38.4 38.4 0 0 0 76.8 0V550.4h147.2a38.4 38.4 0 0 0 0-76.8H550.4V326.4a38.4 38.4 0 1 0-76.8 0v147.2z"/></svg>',star:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 747.84l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72L512 747.84zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"/></svg>',star_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M283.84 867.84L512 747.776l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72z"/></svg>',share:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M679.872 348.8l-301.76 188.608a127.808 127.808 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"/></svg>',love:'<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M171.712 571.648l.352.32 287.904 252.8a64 64 0 0 0 82.912 1.344l296.832-244.544a215.584 215.584 0 1 0-301.824-300.576L512 316.672l-25.888-35.616a215.584 215.584 0 1 0-314.4 290.624zM32 407.584A279.584 279.584 0 0 1 512 212.64a279.584 279.584 0 0 1 480 194.944 278.144 278.144 0 0 1-113.024 224.512l-295.36 243.392a128 128 0 0 1-165.888-2.592L129.984 620.16A278.976 278.976 0 0 1 32 407.584z"/></svg>',love_fill:'<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M32 407.584A279.584 279.584 0 0 1 512 212.64a279.584 279.584 0 0 1 480 194.944 278.144 278.144 0 0 1-113.024 224.512L562.592 892.8a96 96 0 0 1-124.416-1.952L130.016 620.16A278.976 278.976 0 0 1 32 407.584z"/></svg>'};getBase64=e=>{const t=this.getSVG(e);return t?.url||""};getSVG=e=>{if(!e)return;const t=this.__map[e];if(!t)return;return{url:this.toBase64(t),escape:this.toEscape(t)}};toBase64=e=>{if(!e)return"";const t=this._tiny(e);return`data:image/svg+xml;base64,${tr.encode(t)}`};_tiny=e=>e?e.replace(/<!--(.*)-->/g,"").replace(/[\r\n]/g," ").replace(/"/g,"'"):"";toEscape=e=>{if(!e)return"";return`data:image/svg+xml,${this._tiny(e).replace(/%/g,"%25").replace(/&/g,"%26").replace(/#/g,"%23").replace(/{/g,"%7B").replace(/}/g,"%7D").replace(/</g,"%3C").replace(/>/g,"%3E")}`};getStyle(e,t={}){if(!e)return"";const r=this.__map[e];return r?this.toStyle(r,t):""}toStyle(e,t={}){if(!e)return"";const r=this.toBase64(e);return r?this.getStyleByUrl(r,t):""}getStyleByUrl(e,t={}){if(!e)return"";const{key:r="mask-image",gradientValue:n="radial-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5))",gradient:s=!1,defStyle:i=this.__defStyle}=t,o=s&&n?`${n}, url("${e}")`:`url("${e}")`;return`${r}:${o};-webkit-${r}:${o};${i}`}};var fr={ossImage:(e,t={})=>{if(!e)return e;const r=St.parseUrl(e).path;if(t.domain){if(!e.startsWith("http"))return e;const r=ft.toList(t.domain||""),n=e.match(/^http[s]?:\/\/([\w.]+)[\w\W]+/)[1]||"";if(!n||!r.includes(n))return e}const n=[];return t.webp&&!r.endsWith(".gif")&&n.push("format,webp"),t.resize&&n.push(`resize,s_${t.resize}`),t.interlace&&(n.push("interlace,1"),!n.every((e=>!e.startsWith("format")))||r.endsWith(".gif")||r.endsWith(".jpg")||n.push("format,jpg")),n.length<=0?e:`${r}?x-oss-process=image/${n.join("/")}`},ossSnapshot:(e,t={})=>{if(!e)return e;const r=St.parseUrl(e).path,n=["snapshot"],{m:s="fast",f:i="jpg"}=t;return(t.t||0===t.t)&&n.push(`t_${t.t}`),t.w&&n.push(`w_${t.w}`),t.h&&n.push(`h_${t.h}`),s&&n.push(`m_${s}`),i&&n.push(`f_${i}`),t.ar&&n.push(`ar_${t.ar}`),`${r}?x-oss-process=video/${n.join(",")}`}};var hr={uint8ArrayToString:function(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},stringToArrayBuffer:function(e){const t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r);for(let r=0;r<t;r++)n[r]=e.charCodeAt(r);return r}};const dr=({url:e,options:t})=>{const r={"Content-Type":"application/json; charset=utf-8",...t.headers||{}};return t.headers=r,new Promise(((r,n)=>{fetch(e,t).then((e=>{r(e.json())})).catch((e=>{n(e)}))}))};function gr(e){const{response:t}=e;return 0===t.code?Promise.resolve(t):Promise.reject(t)}function pr(e){const{url:t="",host:r,options:n}=e,s=e;if(t.startsWith("http://")||t.startsWith("https://")||(s.url=(r||"")+t),"GET"===n.method.toUpperCase()&&n.body){const e=JSON.parse(n.body);if(lt.isPlainObject(e)){const r=St.stringify(e),n=-1===t.indexOf("?")?"?":"&";s.url=`${s.url||""}${n}${r}`,delete s.options.body}}return n&&n.plugins&&delete s.options?.plugins,n&&n.model&&delete s.options?.model,s}class mr{host="";reqConfig={};handleError;interceptors={request:new yt,response:new yt};constructor(e){this.host=e.host||"",this.reqConfig=e.config,this.interceptors.request.use(e.handleRequest||[]),this.interceptors.request.use(pr),this.interceptors.response.use(e.handleResponse||gr),this.handleError=e.handleError}static blockId="blockid";static requestLock={};lockR(e,t){mr.requestLock[e]={lock:!0,request:t()}}unlockR(e){delete mr.requestLock[e]}getIdFromReq(e){const{url:t,data:r={}}=e;return t+JSON.stringify(r)}getIdFromReqUrl(e){return e.url||""}async fetch(e,t){const r=lt.copy(this.reqConfig[e])||{},n={host:this.host,url:r.url||"",options:{...r||{},body:JSON.stringify({...t||{}})}};try{const s=await this.interceptors.request.invoke(n);let i;if(delete s.options.plugins,"block"===r.model)this.lockR(mr.blockId,(()=>dr(s))),i=await mr.requestLock[mr.blockId].request;else if(mr.requestLock[mr.blockId]&&mr.requestLock[mr.blockId].lock&&await mr.requestLock[mr.blockId].request,"debounce"===r.model||"debounceUrl"===r.model){let e;e="debounceUrl"===r.model?this.getIdFromReqUrl(s):this.getIdFromReq(s),mr.requestLock[e]||this.lockR(e,(()=>dr(s))),i=await mr.requestLock[e].request,this.unlockR(e)}else i=await dr(s);return this.interceptors.response.invoke({response:i,config:r,refetch:()=>({sig:"REFETCH",result:this.fetch(e,t)})})}catch(e){return this.handleError&&this.handleError(e),Promise.reject(e)}}}class yr{key;storage;fields=[];constructor(e){this.key=e?.key||"",this.fields=e?.fields||[],this.storage=e?.storage||void 0}save=X.debounce((e=>{if(this.key&&this.storage)try{const{setItem:t,setStorageSync:r}=this.storage;if(r)return r(this.key,e);if(t)return t(this.key,JSON.stringify(e))}catch(e){console.error("persit save ",e)}}));read(){if(this.key&&this.storage)try{const{getItem:e,getStorageSync:t}=this.storage;if(t)return t(this.key);if(e){const t=e(this.key);return JSON.parse(t)}}catch(e){return void console.error("persit read ",e)}}handleSave(e,t){if(!this.fields.includes(t)||!e)return;const r=ut.copy(e,{fields:this.fields});this.save(r)}}class wr extends o{setters={};getters={};actions={};persist;constructor(){super()}async dispatch(e,t=void 0){const r=this,n=Reflect.get(r.actions,e);if(!M.isFunction(n))return;const[,s]=await X.run(n({...r,commit:r.commit.bind(r),query:r.query.bind(r),dispatch:r.dispatch.bind(r)},t));return s}async query(e){const t=Reflect.get(this,e);let r;if(null!=t&&""!==t)r=ut.copy(t);else{const[,t]=await X.exec((()=>this.dispatch(e)),`${this.__eventId}_${e}`);r=t}return r}commit(e,t){M.isObject(t)&&(t=ut.copy(t)),this[e]=t}}const br=(e,t)=>{const r=Object.assign(new wr,e||{});r.__persist=new yr(t||r.persist);const n=r.__persist.read(),s=n?Object.assign(r,n):r;return new Proxy(s,{get:(e,t,r)=>{const n=Reflect.get(e.getters,t);return M.isFunction(n)?n(e):Reflect.get(e,t,r)},set:(e,t,r,n)=>{const s=Reflect.get(e.setters,t);if(M.isFunction(s)&&!s(e,r))return!0;const i=Reflect.set(e,t,r,n);return i&&(e.emit(t.toString(),r),e?.__persist?.handleSave(e,t.toString())),i},has:(e,t)=>Reflect.has(e,t)})};class vr{host="";list=[];constructor(e,t={}){this._parseHost(e);const{width:r=500,height:n=400}=t,s=St.parseUrl(e)?.params||{};s["x-oss-process"]=`image/resize,w_${r},h_${n},m_fill`;const i=St.stringify(s,{uri:!1});this.list.push(`${e}?${i}`)}_parseHost(e){e&&!this.host&&/^http[s]?:\/\/([\w.]+)/.test(e)&&(this.host=e.replace(/^http[s]?:\/\/([\w.]+)[\w\W]+/,"$1"))}image(e,t={}){if(!e||!e.includes(this.host))return;if(this.list.length<=0)return;const r={g:"nw",...t},n=e.replace(/^http[s]?:\/\/[\w.]+\/([\w-.,_/?%&=]+)$/,"$1"),s=rr.base64.encodeByOss(n),i=St.stringify({image:s,...r},{sep:",",eq:"_"});this.list.push(`/watermark,${i}`)}text(e,t={},r={}){if(!e)return;const n={g:"nw",...t},s=rr.base64.encodeByOss(e),i=St.stringify({text:s,...n,...r},{sep:",",eq:"_"});this.list.push(`/watermark,${i}`)}result(){return this.list.join("")}}class _r{__list=[];__running=!1;__waitting=!1;constructor(){this.clear()}pipe(e){return this.__waitting||(e&&this.__list.push(e),this._step()),this}delay(e=0){return this.__waitting||(e&&this.__list.push((()=>X.sleep(e))),this._step()),this}clear(){return this.__list=[],this.__waitting=!1,this.__running=!1,this}async _step(){if(this.__list.length<=0)return;if(this.__running)return;this.__running=!0;const e=this.__list.shift();await X.run(e),this.__running=!1,this.__waitting||this._step()}async whenAll(){for(this.__waitting=!0,await this._step();;)if(this.__running)await X.sleep(100);else{if(this.__list.length<=0)break;await this._step()}return this.__waitting=!1,this.clear()}}class $r{__list=[];constructor(){this.clear()}add(e){const t=X.run(e);return this.__list.push(t),this}clear(){return this.__list=[],this}wait(){const e=this.__list;return this.clear(),Promise.allSettled(e)}}const xr=new class{state=br(new wr);frame=new a;cache=new Map;cacheTime=new Map;setCache=(e,t)=>null!=t&&(!!e&&(this.cache.set(e,t),this.cacheTime.set(e,Date.now()),!0));hasCache=e=>{if(!e)return!1;this.cache.has(e)};getCache=e=>{if(e)return this.cache.get(e)};getCacheTime=e=>e&&this.cacheTime.get(e)||0;removeCache=e=>{e&&(this.cache.delete(e),this.cacheTime.delete(e))};cacheId=e=>`_${e}_cache_`;timesRecord=(e,t={})=>{if(!e)return;const{mode:r="running",cycle:n="day"}=t||{},s=this.cacheId(r),i=this.getCache(s)||{},o=Date.now(),a=i[e],u={time:o,count:1,cycle:n};return a&&("day"!==n||d.isToday(a.time||0))&&(u.count=1+(a.count||0)),i[e]=u,this.setCache(s,i),i};timesValid=(e,t={})=>{if(!e)return!1;const{max:r=1,interval:n=0,mode:s="running",cycle:i="day"}=t||{},o=this.cacheId(s);let a=this.getCache(o);if(!a)return!0;const u=a[e];if(!u)return!0;if("day"===i&&!d.isToday(u.time||0))return!0;if(r<=(u.count||0))return!1;return!(Date.now()-(u.time||0)<n)};timesClean=(e="running")=>{const t=this.cacheId(e),r=this.getCache(t);if(!r)return;const n=lt.copy(r);lt.forof(n,((e,t)=>{"day"!==t.cycle&&void 0!==t.cycle||d.isToday(t.time||0)||delete r[e]})),this.setCache(t,r)};pipeline=()=>new _r;parallel=()=>new $r};class kr{id="";start=0;end=0;cost=0;name="";type="";desc="";timeStartDesc="";timeEndDesc="";isDone=!1;flag=0;constructor(){this.id=i(),this.start=Date.now(),this.timeStartDesc=d.format(this.start,"hh:mm:ss.SSS")}get time(){return this.flag?this.end:this.start}get timeDesc(){return this.flag?this.timeEndDesc:this.timeStartDesc}done=(e=Date.now())=>{this.start&&(this.end=e,this.cost=this.end-this.start,this.timeEndDesc=d.format(this.end,"hh:mm:ss.SSS"),this.isDone=!0)}}const Sr=new class{__map=new Map;__trackList=[];opened=!0;clear(){return this.__map.clear(),this.__trackList=[],this}add(e,{desc:t="",type:r=""}={}){if(!e||!this.opened)return"";const n=new kr;return n.name=e,n.type=r,n.desc=t,this.__trackList.push(n),n.id}done(e){if(!e||!this.opened)return;const t=this.__trackList.find((t=>t.id===e));if(!t||t.isDone)return;t.done();const r=ut.cloneClass(t);r.id=this._endId(e),r.flag=1,r.desc=`${t.desc} | end`,this.__trackList.push(r)}getTrack(e){return this.__trackList.find((t=>t.id===e))}getLine(e){if(!e||e.endsWith("-end"))return[];const t=this.__trackList.findIndex((t=>t.id===e));if(t<0)return[];const r=this._endId(e),n=this.__trackList.findIndex((e=>e.id===r)),s=n<0?this.__trackList.length-t:n-t+1;return ft.take(this.__trackList,s,t)}getList(e,t=""){if(!e)return[];const r=this.__trackList.filter((t=>t.name===e));if(r.length<=0)return[];if(!t)return r;const n=this._endId(t);return this.__trackList.filter((e=>e.id===t||e.id===n))}get list(){return this.__trackList}get size(){return this.__trackList.length}_endId=e=>`${e}-end`;report(e){const t=this.list;if(!t||t.length<=0)return;const r=t[0].time;t.forEach((t=>e&&e(t,r)))}},Ar={overrode:!1,tag:!1,format:"hh:mm:ss.SSS"},jr=e=>(...t)=>{const r=console[e];Ar.overrode?r(...t):qr(r,e,...t)},qr=(e,t,...r)=>{const n=d.format(new Date,Ar.format),s=Ar.tag?`[${t}]`:"";s&&n?e.apply(console,[`${n} ${s}`,...r]):n?e.apply(console,[`${n}`,...r]):s?e.apply(console,[`${s}`,...r]):e.apply(console,[...r])};var Cr={override:()=>{if(Ar.overrode)return;Ar.overrode=!0;["log","info","warn","error"].forEach((e=>{const t=console[e];console[e]=(...r)=>{qr(t,e,...r)}}))},log:jr("log"),info:jr("info"),warn:jr("warn"),error:jr("error"),config:({tag:e=Ar.tag,format:t=Ar.format}={})=>{Ar.tag=e,Ar.format=t}};return{gbk:e,time:d,hook:X,math:ne,util:lt,list:ft,string:rt,obj:ut,crypto:rr,mini:vt,qs:St,css:ar,cdn:fr,html:lr,icon:cr,rule:Gt,regex:Yt,convert:hr,Event:o,Http:mr,Store:wr,storeRef:br,Persist:yr,persistConfig:(e,t,r)=>({key:e,fields:t,storage:r}),watermark:(e,t)=>new vr(e,t),joker:xr,tracker:Sr,logger:Cr}}));
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 s=0;s<e.length&&(e.charCodeAt(s)>127||94===e.charCodeAt(s)?r+=2:r++,!(r>t));s++)n=s;return e.substr(0,n+1)}};const t="0123456789",r="abcdefghijklmnopqrstuvwxyz",n="ABCDEFGHIJKLMNOPQRSTUVWXYZ";var s={keyNumber:t,keyLower:r,keyUpper:n,keyChars:t+r+n};const i=(e=0,t=0)=>{const r=s.keyChars.split(""),n=[];let i;if(t=t||r.length,e)for(i=0;i<e;i++)n[i]=r[0|Math.random()*t];else{let e;for(n[8]=n[13]=n[18]=n[23]="-",n[14]="4",i=0;i<36;i++)n[i]||(e=0|16*Math.random(),n[i]=r[19==i?3&e|8:e])}return n.join("")};class o{__map;__tagList;__eventId="";constructor(){this.__map=new Map,this.__tagList=[],this.__eventId=i()}clear(){return this.__map.clear(),this}on(e,t,r=""){if(!e||!t)return this;let n=this.__map.get(e);return n||(n=new Set,this.__map.set(e,n)),n.add(t),r&&this.__tagList.push({name:e,handler:t,tag:r}),this}emit(e,...t){if(!e)return this;const r=this.__map.get(e);if(!r)return this;return[...r].forEach((e=>e&&e(...t))),this}off(e,t){if(!e||!t)return this;this.__tagList=this.__tagList.filter((r=>r.name!==e||r.handler!==t));const r=this.__map.get(e);return r?(r.delete(t),r.size<=0&&this.__map.delete(e),this):this}remove(e){return e?(this.__tagList=this.__tagList.filter((t=>t.name!==e)),this.__map.delete(e),this):this}removeByTag(e){if(!e)return this;return this.__tagList.filter((t=>t.tag===e)).forEach((e=>{this.off(e.name,e.handler)})),this.__tagList=this.__tagList.filter((t=>t.tag!==e)),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)}}class a{_loopTimer;_event=new o;started=!1;interval=0;constructor(e=0){this.interval=e||500}start(){return this.started||(this.stop(),this._loopTimer=setInterval((()=>{this._handleLoop()}),this.interval),this.started=!0),this}stop(){return this._loopTimer?(clearInterval(this._loopTimer),this._loopTimer=0,this.started=!1,this):this}restart(){return this.stop(),this.start(),this}on(e){return this._event.on("frame",e),this}off(e){return e?(this._event.off("frame",e),this):this}_handleLoop(){this._event.emit("frame")}}var u={oneDay:864e5,oneHour:36e5,oneMinute:6e4,oneSecond:1e3};class l{date;timestamp=0;yyyy=0;yy="";M=0;MM="";d=0;dd="";h=0;hh="";m=0;mm="";s=0;ss="";S=0;SS="";SSS="";constructor(e){if(!e)return;const t="string"==typeof e||"number"==typeof e?new Date(e):e;t&&(this.date=t,this.timestamp=t.getTime(),this.toDate())}toDate(){return this.date?(this.yyyy=this.date.getFullYear(),this.yy=`${this.yyyy}`.substr(2),this.M=this.date.getMonth()+1,this.MM=(this.M<10?"0":"")+this.M,this.d=this.date.getDate(),this.dd=(this.d<10?"0":"")+this.d,this.h=this.date.getHours(),this.hh=(this.h<10?"0":"")+this.h,this.m=this.date.getMinutes(),this.mm=(this.m<10?"0":"")+this.m,this.s=this.date.getSeconds(),this.ss=(this.s<10?"0":"")+this.s,this.S=this.date.getMilliseconds(),this.SS=(this.S<10?"0":"")+this.S,this.SSS=this.S.toString().padStart(3,"0"),this):this}toCountdown(e=""){const t={countdown:0,timestamp:0,seconds:0,d:0,dd:"",h:0,hh:"",m:0,mm:"",s:0,ss:"",S:0,SS:"",SSS:"",desc:""};if(!this.timestamp)return t;t.timestamp=this.timestamp,t.countdown=Math.max(t.timestamp-Date.now(),0),t.seconds=Math.floor(t.countdown/u.oneSecond);let r=t.countdown;t.d=Math.floor(r/u.oneDay),t.dd=(t.d<10?"0":"")+t.d,r%=u.oneDay,t.h=Math.floor(r/u.oneHour),t.hh=(t.h<10?"0":"")+t.h,r%=u.oneHour,t.m=Math.floor(r/u.oneMinute),t.mm=(t.m<10?"0":"")+t.m,r%=u.oneMinute,t.s=Math.floor(r/u.oneSecond),t.ss=(t.s<10?"0":"")+t.s,r%=u.oneSecond,t.S=r,t.SS=(t.S<10?"0":"")+t.S,t.SSS=t.S.toString().padStart(3,"0");let n=e;return n||(n=t.countdown>u.oneHour?"hh:mm:ss":t.countdown>u.oneMinute?"mm:ss":"ss"),t.desc=n.replace(/\bdd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>t[e])),t}add(e=0){return e?(this.timestamp=this.timestamp+e,this.date=new Date(this.timestamp),this.toDate(),this):this}format(e="yyyy-MM-dd hh:mm:ss"){return e.replace(/\byyyy|yy|MM|M|dd|d|hh|h|mm|m|ss|s|SSS|SS|S\b/g,(e=>this[e]))}}const c=(e,t="yyyy-MM-dd hh:mm:ss")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e;return r?f(r).format(t):""},f=e=>{const t="string"==typeof e||"number"==typeof e?new Date(e):e;return new l(t||0)};function h({year:e=0,month:t=0,date:r=0,hour:n=0,minute:s=0,second:i=0}){const o=`${e||"yyyy"}/${t||"MM"}/${r||"dd"} ${n}:${s}:${i}`;return new Date(c(Date.now(),o)).getTime()}var d={...u,now:function(){return f(new Date)},isToday:e=>e&&(new Date).toDateString()===new Date(e).toDateString(),parseTimestamp:h,todayZero:()=>h({}),format:c,countdown:(e,t="")=>{const r="string"==typeof e||"number"==typeof e?new Date(e):e;if(!r)return"";return f(r).toCountdown(t)},dtime:f,loopFrame:(e=500)=>new a(e)},g="object"==typeof global&&global&&global.Object===Object&&global,p="object"==typeof self&&self&&self.Object===Object&&self;const m=(g||p||Function("return this")()).Symbol,{toString:y,hasOwnProperty:w,propertyIsEnumerable:b}=Object.prototype,v=m?m.toStringTag:void 0;function _(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":v&&v in Object(e)?function(e){const t=w.call(e,v),r=e[v];let n=!1;try{e[v]=void 0,n=!0}catch(e){}const s=y.call(e);return n&&(t?e[v]=r:delete e[v]),s}(e):y.call(e)}var $={getTag:_,getType:function(e){return(_(e).match(/\w+/g)||["object","Undefined"])[1]||""},toString:y,hasOwnProperty:w,propertyIsEnumerable:b},x="[object Function]",k="[object GeneratorFunction]",S="[object AsyncFunction]",A=9007199254740991;const j=/^(?:0|[1-9]\d*)$/;function q(e){const t=typeof e;return null!=e&&("object"==t||"function"==t)}function C(e){return null!=e&&"object"==typeof e}const O=Array.isArray;function L(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=A}(e.length)&&!F(e)}function E(e){return C(e)&&L(e)}function F(e){var t=q(e)?$.getTag(e):"";return t===x||t===k||t===S}var M={is:function(e,t){return $.getTag(e)===`[object ${t}]`},isNumber:function(e){return"[object Number]"===$.getTag(e)},isString:function(e){return"string"==typeof e||!O(e)&&C(e)&&"[object String]"==$.getTag(e)},isObject:q,isObjectLike:C,isPlainObject:function(e){if(!C(e)||"[object Object]"!=$.getTag(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t},isSymbol:function(e){return"symbol"==typeof e||C(e)&&"[object Symbol]"===$.getTag(e)},isFunction:F,isArray:O,isArrayLikeObject:E,isIndex:function(e,t){return!!(t=null==t?A:t)&&("number"==typeof e||j.test(e))&&e>-1&&e%1==0&&e<t},isArrayLike:L,isPrototype:function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Object.prototype)},isArguments:function(e){return E(e)&&$.hasOwnProperty.call(e,"callee")&&(!$.propertyIsEnumerable.call(e,"callee")||"[object Arguments]"==$.toString.call(e))},isPromise:function(e){return"[object Promise]"===(q(e)?$.getTag(e):"")}};const R=NaN,D=/^\s+|\s+$/g,P=/^[-+]0x[0-9a-f]+$/i,T=/^0b[01]+$/i,z=/^0o[0-7]+$/i,I=parseInt,N=1/0,B=17976931348623157e292;function U(e){if("number"==typeof e)return e;if(M.isSymbol(e))return R;if(M.isObject(e)){const t="function"==typeof e.valueOf?e.valueOf():e;e=M.isObject(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(D,"");const t=T.test(e);return t||z.test(e)?I(e.slice(2),t?2:8):P.test(e)?R:+e}function V(e){return e?(e=U(e))===N||e===-N?(e<0?-1:1)*B:e==e?e:0:0===e?e:0}var H={toNumber:U,toFinite:V,toInteger:function(e){var t=V(e),r=t%1;return t==t?r?t-r:t:0}};const W="Expected a function",Z=Math.max,J=Math.min;function G(e,t=300,r={}){var n,s,i,o,a,u,l=0,c=!1,f=!1,h=!0;if("function"!=typeof e)throw new TypeError(W);function d(t){var r=n,i=s;return n=s=void 0,l=t,o=e.apply(i,r)}function g(e){var r=e-u;return void 0===u||r>=t||r<0||f&&e-l>=i}function p(){var e=Date.now();if(g(e))return m(e);a=setTimeout(p,function(e){var r=t-(e-u);return f?J(r,i-(e-l)):r}(e))}function m(e){return a=void 0,h&&n?d(e):(n=s=void 0,o)}function y(...e){var r=Date.now(),i=g(r);if(n=arguments,s=this,u=r,i){if(void 0===a)return function(e){return l=e,a=setTimeout(p,t),c?d(e):o}(u);if(f)return a=setTimeout(p,t),d(u)}return void 0===a&&(a=setTimeout(p,t)),o}return t=H.toNumber(t)||0,M.isObject(r)&&(c=!!r.leading,i=(f="maxWait"in r)?Z(H.toNumber(r.maxWait)||0,t):i,h="trailing"in r?!!r.trailing:h),y.cancel=function(){void 0!==a&&clearTimeout(a),l=0,n=u=s=a=void 0},y.flush=function(){return void 0===a?o:m(Date.now())},y}var Y={to:async function(e,t){return e.then((e=>[null,e])).catch((e=>(t&&Object.assign(e,t),[e,void 0])))}};class K{__source;constructor(e){this.__source=e}run(){let e;try{let t;return t=M.isFunction(this.__source)?this.__source():this.__source,e=M.isPromise(t)?t:Promise.resolve(t),Y.to(e)}catch(e){return Promise.resolve([e,void 0])}}static _lockedMap=new Map;static _lock(e,t){if(!e||!t)return;const r=new K(t).run();return this._lockedMap.set(e,r),r}static _unlock(e){e&&this._lockedMap.delete(e)}static async exec(e,t){if(!e||!t)return new K(e).run();const r=this._lockedMap.get(t);if(r)return r;const n=this._lock(t,e);if(!n)return new K(e).run();const s=await n;return this._unlock(t),s}}class Q{__list=[];constructor(e){this.push(e)}push(e){return e&&this.__list.push(e),this}clear(){return this.__list=[],this}_exec(e,t){let r;if(M.isFunction(e))r=e(t);else{if(M.isPromise(e))return e.then((e=>({...t,...e})));r=e}return M.isPromise(r)?r:Promise.resolve({...r,...t})}run(e){try{return this.__list.reduce(((e,t)=>e.then((e=>this._exec(t,e)))),Promise.resolve(e)).then((e=>[void 0,e])).catch((e=>[e,void 0]))}catch(e){return Promise.reject([e,void 0])}}}const X=(e=1e3)=>new Promise((t=>{setTimeout(t,e)}));var ee={...Y,sleep:X,run:async(e,t=0)=>{if(t<=0)return new K(e).run();const r=t>0?Date.now():0,n=await new K(e).run(),s=Date.now()-r;return s<t&&await X(t-s),n},exec:(e,t="")=>K.exec(e,t),debounce:G,throttle:function(e,t=300,r={}){var n=!1,s=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return M.isObject(r)&&(n=r.leading?!!r.leading:n,s=r.trailing?!!r.trailing:s),G(e,t,{leading:n,maxWait:t,trailing:s})},task:e=>new Q(e),delay:(e=1e3)=>new Promise((t=>{setTimeout(t,e)})),mutex:function(e){var t=null;return async function(...r){if((t=this||t||{}).__ddMutex)return!1;t.__ddMutex=!0;try{e&&await Promise.resolve(e.apply(this,r))}catch(e){console.log(e)}finally{t.__ddMutex=!1}}}};function te(e){return Math.floor(Math.random()*e)}function re(e,t=10){return+parseFloat(Number(e).toExponential(t))}const ne=180/Math.PI;var se={random:te,randomRange:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},lerp:function(e,t,r){return e*(1-r)+t*r},randoms:function(e,t=1,r=!1){const n=[];for(;;){if(n.length>=t)break;if(!r&&n.length>=e)break;const s=te(e);r?n.push(s):n.includes(s)||n.push(s)}return n},strip:re,float:function(e,{fractionDigits:t=2,fixed:r=!1}={}){const n=re(e).toFixed(t);return r||!t?+n:+n.replace(/(\.[1-9]?)0+$/,"$1").replace(/\.$/,"")},radian2degree:function(e){return e*ne},degree2radian:function(e){return e/ne}};function ie(e){return e!=e}function oe(e,t){return function(e,t){for(var r=-1,n=e?e.length:0,s=Array(n);++r<n;)s[r]=t(e[r],r,e);return s}(t,(function(t){return e[t]}))}var ae,ue,le=(ae=Object.keys,ue=Object,function(e){return ae(ue(e))}),ce=Math.max;function fe(e,t){var r=M.isArray(e)||M.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,s=!!n;for(var i in e)!t&&!$.hasOwnProperty.call(e,i)||s&&("length"==i||M.isIndex(i,n))||r.push(i);return r}function he(e,t,r){const{length:n}=e;return r=void 0===r?n:r,!t&&r>=n?e:function(e,t,r){let n=null==e?0:e.length;if(!n)return[];(t=null==t?0:t)<0&&(t=-t>n?0:n+t),(r=(r=void 0===r?n:r)>n?n:r)<0&&(r+=n),n=t>r?0:r-t>>>0,t>>>=0;let s=-1;const i=new Array(n);for(;++s<n;)i[s]=e[s+t];return i}(e,t,r)}const de=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff\\ufe0e\\ufe0f]");function ge(e){return de.test(e)}const pe="\\ud800-\\udfff",me=`[${pe}]`,ye="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]",we="\\ud83c[\\udffb-\\udfff]",be=`[^${pe}]`,ve="(?:\\ud83c[\\udde6-\\uddff]){2}",_e="[\\ud800-\\udbff][\\udc00-\\udfff]",$e=`${`(?:${ye}|${we})`}?`,xe="[\\ufe0e\\ufe0f]?",ke=xe+$e+`(?:\\u200d(?:${[be,ve,_e].join("|")})${xe+$e})*`,Se=`(?:${[`${be}${ye}?`,ye,ve,_e,me].join("|")})`,Ae=RegExp(`${we}(?=${we})|${Se+ke}`,"g");function je(e){return ge(e)?function(e){return e.match(Ae)||[]}(e):function(e){return e.split("")}(e)}function qe(e){return t=>{if(!t)return"";const r=ge(t)?je(t):void 0,n=r?r[0]:t[0],s=r?he(r,1).join(""):t.slice(1);return n[e]()+s}}const Ce="\\ud800-\\udfff",Oe="\\u2700-\\u27bf",Le="a-z\\xdf-\\xf6\\xf8-\\xff",Ee="A-Z\\xc0-\\xd6\\xd8-\\xde",Fe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Me="['’]",Re=`[${Fe}]`,De=`[${Oe}]`,Pe=`[${Le}]`,Te=`[^${Ce}${Fe+"\\d"+Oe+Le+Ee}]`,ze="(?:\\ud83c[\\udde6-\\uddff]){2}",Ie="[\\ud800-\\udbff][\\udc00-\\udfff]",Ne=`[${Ee}]`,Be=`(?:${Pe}|${Te})`,Ue=`(?:${Ne}|${Te})`,Ve=`(?:${Me}(?:d|ll|m|re|s|t|ve))?`,He=`(?:${Me}(?:D|LL|M|RE|S|T|VE))?`,We="(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]|\\ud83c[\\udffb-\\udfff])?",Ze="[\\ufe0e\\ufe0f]?",Je=Ze+We+`(?:\\u200d(?:${[`[^${Ce}]`,ze,Ie].join("|")})${Ze+We})*`,Ge=`(?:${[De,ze,Ie].join("|")})${Je}`,Ye=RegExp([`${Ne}?${Pe}+${Ve}(?=${[Re,Ne,"$"].join("|")})`,`${Ue}+${He}(?=${[Re,Ne+Be,"$"].join("|")})`,`${Ne}?${Be}+${Ve}`,`${Ne}+${He}`,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])","\\d+",Ge].join("|"),"g");const Ke=RegExp.prototype.test.bind(/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/),Qe=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function Xe(e,t){if(void 0===t){const t=Ke(e)?function(e){return e.match(Ye)}(e):function(e){return e.match(Qe)}(e);return t||[]}return e.match(t)||[]}function et(e){if(null==e)return"";if("string"==typeof e)return e;if(Array.isArray(e))return`${e.map((e=>null==e?e:et(e)))}`;if(M.isSymbol(e))return e.toString();const t=`${e}`;return"0"==t&&1/e==-Infinity?"-0":t}const tt=qe("toUpperCase"),rt=qe("toLowerCase");var nt={toString:et,startCase:e=>Xe(`${e}`.replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+tt(t)),""),snakeCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?"_":"")+t.toLowerCase()),""),kebabCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?"-":"")+t.toLowerCase()),""),camelCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>(t=t.toLowerCase(),e+(r?tt(t):t))),""),upperCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+t.toUpperCase()),""),upperFirst:tt,lowerCase:e=>Xe(et(e).replace(/['\u2019]/g,"")).reduce(((e,t,r)=>e+(r?" ":"")+t.toLowerCase()),""),lowerFirst:rt,splitOnFirst:(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===e||""===t)return[];const r=e.indexOf(t);return-1===r?[]:[e.slice(0,r),e.slice(r+t.length)]},parseValue:(e,{number:t=!1,boolean:r=!1}={})=>{let n=e;return e&&"string"==typeof e?(t&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?n=Number(e):!r||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(n="true"===e.toLowerCase()),n):n},replace:(e,t)=>{if(!e)return e;if(!t)return e;let r=e;return((Array.isArray(t)?t:[t])||[]).forEach((e=>{e.key&&e.value&&(r=r.replace(new RegExp(e.key,e.flag||""),e.value))})),r}};const st=e=>{if(!e)return e;if("object"!=typeof e)return e;const t=Array.isArray(e)?[]:{};for(const r in e)e.hasOwnProperty(r)&&(t[r]=st(e[r]));return t};const it=(e,t,r={})=>{const n=e||{},{ignoreUndefined:s=!0,cover:i=!1}=r;if(!t)return n;for(const o in t){if(!t.hasOwnProperty(o))continue;const a=t[o];"object"!=typeof a||"object"!=typeof e[o]||i?s&&void 0===a||r.ignoreNull&&null===a||r.ignoreZero&&0===a||r.ignoreEmptyArray&&Array.isArray(a)&&a.length<=0||r.ignoreEmptyString&&"string"==typeof a&&""===a.trim()||(n[o]=a):n[o]=ot(e[o],a,r)}return n},ot=(e,t,r={})=>{let n={};return n=e&&"object"==typeof e&&!Array.isArray(e)?it(e,t,r):it({...e},t,r),n},at=(e,t,r={})=>it({...e},t,{cover:!0,...r}),ut=(e,t,r,n,s=!1)=>{if(!e||!t||!r)return;let i=e[t];null!==i&&"object"==typeof i&&s&&Object.keys(i).forEach((e=>{ut(i,e,r,n,s)})),Object.defineProperty(e,t,{configurable:!0,enumerable:!0,set:o=>{r.call(n,o,i),i=o,s&&ut(e,t,r,n,s)},get:()=>i})};var lt={copy:(e,t={})=>{if(void 0===e)return;const r=JSON.parse(JSON.stringify(e));if("object"!=typeof r)return r;if(Array.isArray(r))return r;const{fields:n=[],camel:s=!1,pure:i=!0}=t;if((!n||n.length<=0)&&!s)return r;const o={};for(const e in r){if(!r.hasOwnProperty(e))continue;const a=s?i&&e.startsWith("_")?e:nt.camelCase(e):e;if(n.length>0&&!n.includes(e)&&!n.includes(a))continue;const u=r[e];t.ignoreNull&&null===u||(t.ignoreZero&&0===u||t.ignoreEmptyArray&&Array.isArray(u)&&u.length<=0||t.ignoreEmptyString&&"string"==typeof u&&""===u.trim()||(o[a]=u))}return o},clone:st,merge:ot,isEmpty:e=>0!==e&&(!e||"object"==typeof e&&(Array.isArray(e)?!e.length:Object.keys(e).length<=0)),parseValue:(e,{number:t=!1,boolean:r=!1}={})=>{if(!e&&"object"!=typeof e)return e;for(const[n,s]of Object.entries(e))if("object"==typeof s&&null!==s)for(const[e,n]of Object.entries(s))s[e]=nt.parseValue(n,{number:t,boolean:r});else e[n]=nt.parseValue(s,{number:t,boolean:r});return e},cloneClass:function(e){return e?"object"!=typeof e?e:Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e)):e},combine:at,combines:(e,t={})=>{let r={};if(!e||e.length<=0)return r;const{ignoreUndefined:n=!0,ignoreNull:s=!0,ignoreZero:i=!0,ignoreEmptyArray:o=!0,ignoreEmptyString:a=!0,cover:u=!0}=t;return e.forEach((e=>r=at(r,e,{ignoreUndefined:n,ignoreNull:s,ignoreZero:i,ignoreEmptyArray:o,ignoreEmptyString:a,cover:u}))),r},observe:ut};var ct={...M,...$,...lt,includes:function(e,t,r,n){e=M.isArrayLike(e)?e:function(e){return e?oe(e,function(e){return M.isArrayLike(e)?fe(e):function(e){if(!M.isPrototype(e))return le(e);var t=[];for(var r in Object(e))$.hasOwnProperty.call(e,r)&&"constructor"!=r&&t.push(r);return t}(e)}(e)):[]}(e),r=r&&!n?H.toInteger(r):0;var s=e.length;return r<0&&(r=ce(s+r,0)),M.isString(e)?r<=s&&e.indexOf(t,r)>-1:!!s&&function(e,t,r){if(t!=t)return function(e,t,r,n){for(var s=e.length,i=r+(n?1:-1);n?i--:++i<s;)if(t(e[i],i,e))return i;return-1}(e,ie,r);for(var n=r-1,s=e.length;++n<s;)if(e[n]===t)return n;return-1}(e,t,r)>-1},forof:(e,t)=>{if(!e)return;let r;if(M.isObject(e)&&(r=M.isArray(e)?e.entries():Object.entries(e),r))for(const[e,n]of r)t&&t(e,n)}};var ft={groupBy:function(e,t){return e.reduce(((e,r)=>((e[r[t]]=e[r[t]]||[]).push(r),e)),{})},first:function(e){if(!e)return;return e.length<=0?void 0:e[0]},last:function(e){if(!e)return;const t=e.length;return t<=0?void 0:e[t-1]},toList:function(e){return Array.isArray(e)?e:e?[e]:[]}};var ht={...ft,stepAction:function(e,t,r=100){if(!M.isFunction(t))return;if(!M.isArray(e)||e.length<=0)return;let n=0;for(;e.length>n;){let s=r+n,i=e.slice(n,s);t&&t(i),n=s}},skip:function(e,t){if(!M.isArray(e)||e.length<=0)return[];const r=t;return e.slice(r)},take:function(e,t,r=0){if(!M.isArray(e)||e.length<=0)return[];const n=r||0;if(n>=e.length)return[];const s=t+n;return e.slice(n,e.length<s?e.length:s)||[]},distinct:function(e){return!M.isArray(e)||e.length<=0?[]:[...new Set(e)]},randoms:function(e,t=1,r=!1){const n=e.length||0;return se.randoms(n,t,r).map((t=>e[t]))||[]},toKV:(e,t,r)=>{const n={};return t&&r?((e||[]).forEach((e=>{if(!e||!M.isObject(e))return;const s=e[t];(M.isString(s)&&""!==s||M.isNumber(s))&&(n[s]=e[r])})),n):n}};const dt="[object Object]",gt="[object Array]",pt=e=>Object.prototype.toString.call(e),mt=(e,t,r=!1)=>{if(e===t)return;const n=pt(e);if(n===pt(t))if(n===gt&&e.length>=t.length)for(let r=0;r<t.length;r++)mt(e[r],t[r]);else if(n===dt&&Object.keys(e).length>=Object.keys(t).length)for(let n in t)r||void 0!==e[n]?mt(e[n],t[n]):e[n]=null},yt=(e,t,r,n="",s=!1)=>{if(e===t)return;const i=pt(e),o=pt(t);if(i===gt&&o===i&&e.length>=t.length)for(let s=0;s<e.length;s++)yt(e[s],t[s],r,`${n}[${s}]`);else if(i===dt&&o===i&&(s||Object.keys(e).length>=Object.keys(t).length)){const s=Object.keys(e);for(let i of s){const s=e[i],o=t[i],a=pt(s),u=pt(o);if(s!==o)if(a===gt&&u===a&&s.length>=o.length)for(let e=0;e<s.length;e++)yt(s[e],o[e],r,`${n?n+".":""}${i}[${e}]`);else if(a===dt&&u===a&&Object.keys(s).length>=Object.keys(o).length)for(let e in s)yt(s[e],o[e],r,`${n?n+".":""}${i}.${e}`);else r[`${n?n+".":""}${i}`]=s}}else r[n]=e};class wt{list=[];constructor(){this.invoke=this.invoke.bind(this)}use(e){this.list=this.list.concat(e)}invoke(e){return this.list.reduce(((e,t)=>e.then((e=>t(e)))),Promise.resolve(e)).catch((e=>"REFETCH"===e.sig?Promise.resolve(e.result):Promise.reject(e)))}}class bt{reqConfig={};handleRequest;handleEncrypt;handleDecrypt;handleError;interceptors={request:new wt,response:new wt};constructor(e){const{reqConfig:t={},requestEncrypt:r,responseDecrypt:n,handleError:s,api:i}=e;this.reqConfig=t,this.handleEncrypt=r,this.handleDecrypt=n,this.handleError=s,this.handleRequest=i}static blockId="blockid";static requestLock={};lockR(e,t){bt.requestLock[e]={lock:!0,request:t()}}unlockR(e){delete bt.requestLock[e]}getIdFromReq(e){const{url:t,data:r={}}=e;return t+JSON.stringify(r)}getIdFromReqUrl(e){return e.url||""}_fetch(e,t){let r=e;return t&&this.handleEncrypt&&(r=this.handleEncrypt(e)),new Promise(((e,n)=>{this.handleRequest({...r,success:r=>{let n=r;t&&this.handleDecrypt&&(n=this.handleDecrypt(r)),e(n)},fail:e=>{n(e)}})}))}async request(e,t){const r=lt.copy(this.reqConfig[e]),{config:n,...s}=await this.interceptors.request.invoke({url:r.url,data:t||{},header:{"content-type":"application/json"},method:r.method?r.method:"POST",responseType:"text",config:r});let i;try{if("block"===n.model)this.lockR(bt.blockId,(()=>this._fetch(s,n.hasEncrypt))),i=await bt.requestLock[bt.blockId].request;else if(bt.requestLock[bt.blockId]&&bt.requestLock[bt.blockId].lock&&await bt.requestLock[bt.blockId].request,"debounce"===n.model||"debounceUrl"===n.model){let e;e="debounceUrl"===n.model?this.getIdFromReqUrl(s):this.getIdFromReq(s),bt.requestLock[e]||this.lockR(e,(()=>this._fetch(s,n.hasEncrypt))),i=await bt.requestLock[e].request,this.unlockR(e)}else i=await this._fetch(s,n.hasEncrypt)}catch(e){this.handleError&&this.handleError(e)}return this.interceptors.response.invoke({res:i,config:r,reqId:this.getIdFromReq(s),refetch:()=>({sig:"REFETCH",result:this.request(e,t||{})})})}}const vt=e=>"function"!=typeof e?e:(t={})=>new Promise(((r,n)=>{e(Object.assign(t,{success:r,fail:n}))}));var _t={diff:function(e,t){const r={};return(e=>{if(pt(e)===dt)for(let t in e)if(/\w+\.\w+/g.test(t)&&-1===t.indexOf("[")){const r=t.split(".");let n=e,s=r.length;for(let e=0;e<s-1;e++){const t=r[e];pt(n[t])!==dt&&(n[t]={}),n=n[t]}n[r[s-1]]=e[t],delete e[t]}})(e),mt(e,t,!0),yt(e,t,r,"",!0),r},promixify:vt,run:(e,t={})=>e?ee.run(vt(e)(t)):ee.run(e),formatList:(e,t,r)=>(e||[]).reduce(((e,n,s)=>({...e,[`${r}[${t+s}]`]:n})),{}),ruleValidator:(e,t)=>!!t&&(!Array.isArray(t)||!(t.length<=0)&&t.every((e=>!!e))),Http:bt,setWatcher:e=>{let t=e.data,r=e.watch;Object.keys(r).forEach((n=>{let s=t,i=n.split(".");for(let e=0;e<i.length-1;e++)s=s[i[e]];let o=i[i.length-1],a=r[n].handler||r[n],u=r[n].deep;lt.observe(s,o,a,e,u)}))}};const $t=function(e,{sep:t="&",eq:r="=",max:n=1e3,multiple:s=!0,uri:i=!0,parseNumber:o=!1,parseBoolean:a=!1}={}){t=t||"&",r=r||"=";const u={};if("string"!=typeof e||0===e.length)return u;const l=/\+/g,c=n||1e3;let f=(e=e.split(t)).length;c>0&&f>c&&(f=c);for(let t=0;t<f;++t){let n,o,a,c,f=e[t].replace(l,"%20"),h=f.indexOf(r);h>=0?(n=f.substr(0,h),o=f.substr(h+1)):(n=f,o=""),a=i?decodeURIComponent(n):n,c=i?decodeURIComponent(o):o,$.hasOwnProperty.call(u,a)&&s?Array.isArray(u[a])?u[a].push(c):u[a]=[u[a],c]:u[a]=c}return lt.parseValue(u,{number:o,boolean:a}),u},xt=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}},kt=function(e,t=!0){return t?encodeURIComponent(e):e},St=function(e,{cleanZero:t=!1,cleanNull:r=!1,cleanWhitespace:n=!1}={}){return!(!t||0!==e)||(!(!r||null!=e)||!(!n||"string"!=typeof e||""!==e.trim()))};var At={parse:$t,stringify:function(e,{sep:t="&",eq:r="=",name:n=null,uri:s=!0,cleanZero:i=!1,cleanNull:o=!1,cleanWhitespace:a=!1}={}){return t=t||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(n){const u=kt(xt(n),s)+r,l=e[n];return Array.isArray(l)?l.map((function(e){return u+kt(xt(e),s)})).join(t):St(l,{cleanZero:i,cleanNull:o,cleanWhitespace:a})?"":u+kt(xt(l),s)})).filter(Boolean).join(t):n?kt(xt(n),s)+r+kt(xt(e),s):""},https:e=>e?e.replace(/^http[s]?/,"https"):e,parseUrl:e=>{const t=e.split("?"),r=t[0],n=t.length>1?t[1]:"";let s="";const i=r.match(/[\/]?([\w\_\-]+)[.]?[\w]*[?]?$/);i&&(s=i[1]);return{url:e,path:r,page:s,query:n,params:$t(n,{multiple:!0,uri:!1})}},parsePath:e=>{const t=(e||"").replace(/\\/g,"/").split("?")[0],r=t.lastIndexOf("/")+1,n=t.substring(r),s=n.lastIndexOf("."),i=n.substring(0,s),o=n.substring(s);return{root:t.substring(0,r),name:n,withoutExtension:i,extension:o}},join:(...e)=>{const t=[];return e.forEach((e=>{const r=e.trim().replace(/^\/*(.*?)\/*$/,"$1");r.length>0&&t.push(r)})),t.join("/")}};const jt=/%[sdj%]/g;let qt=()=>{};function Ct(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 Ot(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(jt,(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 Lt(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 Et(e,t,r){let n=0;const s=e.length;!function i(o){if(o&&o.length)return void r(o);const a=n;n+=1,a<s?t(e[a],i):r([])}([])}"undefined"!=typeof process&&process.env&&"production"!==process.env.NODE_ENV&&"undefined"!=typeof window&&"undefined"!=typeof document&&(qt=(e,t)=>{"undefined"!=typeof console&&console.warn&&"undefined"==typeof ASYNC_VALIDATOR_NO_WARNING&&t.every((e=>"string"==typeof e))&&console.warn(e,t)});class Ft extends Error{errors;fields;constructor(e,t){super("Async Validation Error"),this.errors=e,this.fields=t}}function Mt(e,t,r,n,s){if(t.first){const t=new Promise(((t,i)=>{const o=function(e){const t=[];return Object.keys(e).forEach((r=>{t.push(...e[r]||[])})),t}(e);Et(o,r,(e=>(n(e),e.length?i(new Ft(e,Ct(e))):t(s))))}));return t.catch((e=>e)),t}const i=!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 Ft(l,Ct(l))):t(s)};o.length||(n(l),t(s)),o.forEach((t=>{const n=e[t];-1!==i.indexOf(t)?Et(n,r,f):function(e,t,r){const n=[];let s=0;const i=e.length;function o(e){n.push(...e||[]),s++,s===i&&r(n)}e.forEach((e=>{t(e,o)}))}(n,r,f)}))}));return c.catch((e=>e)),c}function Rt(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],function(e){return!(!e||void 0===e.message)}(r)?(r.field=r.field||e.fullField,r.fieldValue=n,r):{message:"function"==typeof r?r():r,fieldValue:n,field:r.field||e.fullField}}}function Dt(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]={...e[r],...n}:e[r]=n}return e}const Pt=(e,t,r,n,s,i)=>{!e.required||r.hasOwnProperty(e.field||"")&&!Lt(t,i||e.type)||n.push(Ot(s.messages.required,e.fullField))};let Tt;const zt=/^(([^<>()\[\]\\.,;:\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,}))$/,It=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,Nt={integer:e=>Nt.number(e)&&parseInt(e,10)===e,float:e=>Nt.number(e)&&!Nt.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&&!Nt.array(e),method:e=>"function"==typeof e,email:e=>"string"==typeof e&&e.length<=320&&!!e.match(zt),url:e=>"string"==typeof e&&e.length<=2048&&!!e.match((()=>{if(Tt)return Tt;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}",s=`\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(),i=new RegExp(`(?:^${r}$)|(?:^${s}$)`),o=new RegExp(`^${r}$`),a=new RegExp(`^${s}$`),u=e=>e&&e.exact?i:new RegExp(`(?:${t(e)}${r}${t(e)})|(?:${t(e)}${s}${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)}${s}${t(e)}`,"g");const l=u.v4().source,c=u.v6().source;return Tt=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"),Tt})()),hex:e=>"string"==typeof e&&!!e.match(It)},Bt="enum";var Ut={required:Pt,whitespace:(e,t,r,n,s)=>{(/^\s+$/.test(t)||""===t)&&n.push(Ot(s.messages.whitespace,e.fullField))},type:(e,t,r,n,s)=>{if(e.required&&void 0===t)return void Pt(e,t,r,n,s);const i=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(i)>-1?Nt[i](t)||n.push(Ot(s.messages.types[i],e.fullField,e.type)):i&&typeof t!==e.type&&n.push(Ot(s.messages.types[i],e.fullField,e.type))},range:(e,t,r,n,s)=>{const i="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,h="string"==typeof t,d=Array.isArray(t);if(f?c="number":h?c="string":d&&(c="array"),!c)return!1;d&&(l=t.length),h&&(l=t.replace(u,"_").length),i?l!==e.len&&n.push(Ot(s.messages[c].len,e.fullField,e.len)):o&&!a&&l<e.min?n.push(Ot(s.messages[c].min,e.fullField,e.min)):a&&!o&&l>e.max?n.push(Ot(s.messages[c].max,e.fullField,e.max)):o&&a&&(l<e.min||l>e.max)&&n.push(Ot(s.messages[c].range,e.fullField,e.min,e.max))},enum:(e,t,r,n,s)=>{e[Bt]=Array.isArray(e[Bt])?e[Bt]:[],-1===e[Bt].indexOf(t)&&n.push(Ot(s.messages[Bt],e.fullField,e[Bt].join(", ")))},pattern:(e,t,r,n,s)=>{if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||n.push(Ot(s.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||n.push(Ot(s.messages.pattern.mismatch,e.fullField,t,e.pattern))}}};const Vt=(e,t,r,n,s)=>{const i=e.type,o=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t,i)&&!e.required)return r();Ut.required(e,t,n,o,s,i),Lt(t,i)||Ut.type(e,t,n,o,s)}r(o)};var Ht={string:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field||"")){if(Lt(t,"string")&&!e.required)return r();Ut.required(e,t,n,i,s,"string"),Lt(t,"string")||(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s),Ut.pattern(e,t,n,i,s),!0===e.whitespace&&Ut.whitespace(e,t,n,i,s))}r(i)},method:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&Ut.type(e,t,n,i,s)}r(i)},number:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(""===t&&(t=void 0),Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s))}r(i)},boolean:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&Ut.type(e,t,n,i,s)}r(i)},regexp:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),Lt(t)||Ut.type(e,t,n,i,s)}r(i)},integer:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s))}r(i)},float:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s))}r(i)},array:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(null==t&&!e.required)return r();Ut.required(e,t,n,i,s,"array"),null!=t&&(Ut.type(e,t,n,i,s),Ut.range(e,t,n,i,s))}r(i)},object:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&Ut.type(e,t,n,i,s)}r(i)},enum:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s),void 0!==t&&Ut.enum(e,t,n,i,s)}r(i)},pattern:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t,"string")&&!e.required)return r();Ut.required(e,t,n,i,s),Lt(t,"string")||Ut.pattern(e,t,n,i,s)}r(i)},date:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t,"date")&&!e.required)return r();if(Ut.required(e,t,n,i,s),!Lt(t,"date")){let r;r=t instanceof Date?t:new Date(t),Ut.type(e,r,n,i,s),r&&Ut.range(e,r.getTime(),n,i,s)}}r(i)},url:Vt,hex:Vt,email:Vt,required:(e,t,r,n,s)=>{const i=[],o=Array.isArray(t)?"array":typeof t;Ut.required(e,t,n,i,s,o),r(i)},any:(e,t,r,n,s)=>{const i=[];if(e.required||!e.required&&n.hasOwnProperty(e.field)){if(Lt(t)&&!e.required)return r();Ut.required(e,t,n,i,s)}r(i)}};function Wt(){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 Zt=Wt();class Jt{static register=function(e,t){if("function"!=typeof t)throw new Error("Cannot register a validator by type, validator is not a function");Ht[e]=t};static warning=qt;static messages=Zt;static validators=Ht;rules={};_messages=Zt;constructor(e){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=Dt(Wt(),e)),this._messages}validate(e,t={},r=(()=>{})){let n=e,s=t,i=r;if("function"==typeof s&&(i=s,s={}),!this.rules||0===Object.keys(this.rules).length)return i&&i(null,n),Promise.resolve(n);if(s.messages){let e=this.messages();e===Zt&&(e=Wt()),Dt(e,s.messages),s.messages=e}else s.messages=this.messages();const o={};(s.keys||Object.keys(this.rules)).forEach((t=>{const r=this.rules[t];let s=n[t];r.forEach((r=>{let i=r;"function"==typeof i.transform&&(n===e&&(n={...n}),s=n[t]=i.transform(s)),i="function"==typeof i?{validator:i}:{...i},i.validator=this.getValidationMethod(i),i.validator&&(i.field=t,i.fullField=i.fullField||t,i.type=this.getType(i),o[t]=o[t]||[],o[t].push({rule:i,value:s,source:n,field:t}))}))}));const a={};return Mt(o,s,((e,t)=>{const r=e.rule;let i,o=!("object"!==r.type&&"array"!==r.type||"object"!=typeof r.fields&&"object"!=typeof r.defaultField);function u(e,t){return{...t,fullField:`${r.fullField}.${e}`,fullFields:r.fullFields?[...r.fullFields,e]:[e]}}function l(i=[]){let l=Array.isArray(i)?i:[i];!0===s.suppressWarning&&l.length&&Jt.warning("async-validator:",l),l.length&&void 0!==r.message&&(l=[].concat(r.message));let c=l.map(Rt(r,n));if(s.first&&c.length)return a[r.field]=1,t(c);if(o){if(r.required&&!e.value)return void 0!==r.message?c=[].concat(r.message).map(Rt(r,n)):s.error&&(c=[s.error(r,Ot(s.messages.required,r.field))]),t(c);let i={};r.defaultField&&Object.keys(e.value).map((e=>{i[e]=r.defaultField})),i={...i,...e.rule.fields};const o={};Object.keys(i).forEach((e=>{const t=i[e],r=Array.isArray(t)?t:[t];o[e]=r.map(u.bind(null,e))}));const a=new Jt(o);a.messages(s.messages),e.rule.options&&(e.rule.options.messages=s.messages,e.rule.options.error=s.error),a.validate(e.value,e.rule.options||s,(e=>{const r=[];c&&c.length&&r.push(...c),e&&e.length&&r.push(...e),t(r.length?r:null)}))}else t(c)}if(o=o&&(r.required||!r.required&&e.value),r.field=e.field,r.asyncValidator)i=r.asyncValidator(r,e.value,l,e.source,s);else if(r.validator){try{i=r.validator(r,e.value,l,e.source,s)}catch(e){console.error?.(e),s.suppressValidatorError||setTimeout((()=>{throw e}),0),l(e.message)}!0===i?l():!1===i?l("function"==typeof r.message?r.message(r.fullField||r.field):r.message||`${r.fullField||r.field} fails`):i instanceof Array?l(i):i instanceof Error&&l(i.message)}i&&i.then&&i.then((()=>l()),(e=>l(e)))}),(e=>{!function(e){let t=[],r={};for(let r=0;r<e.length;r++)s=e[r],Array.isArray(s)?t=t.concat(...s):t.push(s);var s;t.length?(r=Ct(t),i(t,r)):i(null,n)}(e)}),n)}getType(e){if(void 0===e.type&&e.pattern instanceof RegExp&&(e.type="pattern"),"function"!=typeof e.validator&&e.type&&!Ht.hasOwnProperty(e.type))throw new Error(Ot("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]?Ht.required:Ht[this.getType(e)]||void 0}}function Gt(e){return new Jt(e)}var Yt={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:Gt,validate:function(e,t,r={},n=(()=>{})){return ee.run(Gt(e).validate(t,r,n))},isChinese:function(e){return!!e&&!!/^[\u4E00-\u9FA5]+$/.test(e)},isNumber:function(e){return!!e&&!!/^[0-9]+$/.test(e)},isFloat:function(e){return!!e&&!!/^(\-|\+)?\d+(\.\d+)?$/.test(e)},isPhoneNumber: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)}};var Kt={pattern:{num:"0-9",zh:"一-龥",en:"A-Za-z"},regex:(e,t)=>new RegExp(e,t),entire:{chinese:/^[\u4E00-\u9FA5]+$/,real:/^(\-|\+)?\d+(\.\d+)?$/,cssReal:/^(\-|\+)?\d*(\.)?\d+$/,id:/^[A-Za-z0-9]+$/,yyyyMMdd:/^(\d{4})-?(\d{2})-?(\d{2})$/}};const Qt=`${s.keyUpper}${s.keyLower}${s.keyNumber}+/=`,Xt=e=>{let t,r,n,s,i,o,a,u="",l=0;for(e=er(e);l<e.length;)t=e.charCodeAt(l++),r=e.charCodeAt(l++),n=e.charCodeAt(l++),s=t>>2,i=(3&t)<<4|r>>4,o=(15&r)<<2|n>>6,a=63&n,isNaN(r)?o=a=64:isNaN(n)&&(a=64),u=u+Qt.charAt(s)+Qt.charAt(i)+Qt.charAt(o)+Qt.charAt(a);return u},er=e=>{const t=e.replace(/\r\n/g,"\n");let r="";for(let e=0;e<t.length;e++){let n=t.charCodeAt(e);n<128?r+=String.fromCharCode(n):n>127&&n<2048?(r+=String.fromCharCode(n>>6|192),r+=String.fromCharCode(63&n|128)):(r+=String.fromCharCode(n>>12|224),r+=String.fromCharCode(n>>6&63|128),r+=String.fromCharCode(63&n|128))}return r},tr=e=>{let t="",r=0,n=0,s=0,i=0;for(;r<e.length;)n=e.charCodeAt(r),n<128?(t+=String.fromCharCode(n),r++):n>191&&n<224?(s=e.charCodeAt(r+1),t+=String.fromCharCode((31&n)<<6|63&s),r+=2):(s=e.charCodeAt(r+1),i=e.charCodeAt(r+2),t+=String.fromCharCode((15&n)<<12|(63&s)<<6|63&i),r+=3);return t};var rr={encode:Xt,decode:e=>{let t,r,n,s,i,o,a,u="",l=0;for(e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");l<e.length;)s=Qt.indexOf(e.charAt(l++)),i=Qt.indexOf(e.charAt(l++)),o=Qt.indexOf(e.charAt(l++)),a=Qt.indexOf(e.charAt(l++)),t=s<<2|i>>4,r=(15&i)<<4|o>>2,n=(3&o)<<6|a,u+=String.fromCharCode(t),64!=o&&(u+=String.fromCharCode(r)),64!=a&&(u+=String.fromCharCode(n));return u=tr(u),u},encodeByOss:e=>Xt(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")};var nr={...s,base64:rr,uuid:i,newId:(e,t=!1,r="")=>{const n=i(e||32);return t?d.now().format("yyyyMMddhhmmss")+r+n:n}};const sr=e=>{if(!e)return"";if(!ct.isObject(e))return"";let t="";return ct.forof(e,((e,r)=>{r&&(t+=`${nt.kebabCase(e)}:${r};`)})),t},ir=["display","position","top","bottom","left","right","padding","margin","marginTop","marginRight","marginBottom","marginLeft","paddingTop","paddingRight","paddingBottom","paddingLeft","height","width","fontSize","textAlign","fontFamily","border","borderLeft","borderRight","borderTop","borderBottom","borderColor","borderRadius","background","backgroundImage","backgroundRepeat","backgroundSize","backgroundPosition","color","overflow","opacity","flexDirection","justifyContent","alignItems","flexWrap","alignContent","alignSelf","flex","flexBasis","flexFlow","flexShrink","pointerEvents"],or=["top","bottom","left","right","padding","margin","marginTop","marginRight","marginBottom","marginLeft","paddingTop","paddingRight","paddingBottom","paddingLeft","height","width","border","borderLeft","borderRight","borderTop","borderBottom","borderColor","borderRadius"],ar=(e,t="px")=>e&&t?"0"===e?e:Yt.isFloat(e.toString())?`${e}${t}`:e:e;var ur={stringify:sr,parse:(e,{camel:t=!1,pure:r=!0}={})=>{if(!e.trim())return;const n=At.parse(e,{sep:";",eq:":",uri:!1}),s={};return ct.forof(n,((e,n)=>{if(!n)return;const i=t?r&&e.startsWith("_")?e:nt.camelCase(e):e;Yt.isFloat(n)||n.length>=2&&n.startsWith(".")&&Yt.isNumber(n.substr(1))?s[i]=+n:s[i]=n})),s},fixValue:ar,style:(e,t="px")=>{if(!e)return"";const r=ct.copy(e,{fields:ir});ct.forof(r,((e,n)=>{(or.includes(e)||or.includes(nt.camelCase(e)))&&(r[e]=ar(n,t))}));return sr(r)},commonFields:ir};const lr=(e,t)=>{try{const r=document.createElement("a");r.href=t,r.download=e,r.click()}catch(e){console.warn("[ddan] downloadUrl",e)}};var cr={dataURLtoFile:(e,t)=>{let r=e.split(","),n=r[0].match(/:(.*?);/)[1],s=window.atob(r[1]),i=s.length,o=new Uint8Array(i);for(;i--;)o[i]=s.charCodeAt(i);return new File([o],t,{type:n})},dataURLtoBlob:e=>{let t=e.split(","),r=t[0].match(/:(.*?);/)[1],n=window.atob(t[1]),s=n.length,i=new Uint8Array(s);for(;s--;)i[s]=n.charCodeAt(s);return new Blob([i],{type:r})},blobToFile:(e,t)=>(e.lastModifiedDate=new Date,e.name=t,e),readAsDataURL:(e,t)=>{var r=new FileReader;r.readAsDataURL(e),r.onloadend=function(e){t&&t(e.target?.result)}},downloadUrl:lr,download:(e,t)=>{if(!t)return;if("string"==typeof t)return void lr(e,t);const r=URL?.createObjectURL(t);r&&(lr(e,r),URL?.revokeObjectURL(r))},downloadImage:e=>{try{if(!e)return;const t=e.match(/\/(\w+.\w+)$/)[1],r=new Image;r.onload=()=>{let e=document.createElement("canvas");e.width=r.width,e.height=r.height;let n=e.getContext("2d");n&&n.drawImage(r,0,0,r.width,r.height);let s=e.toDataURL();lr(t,s)},r.src=e,r.setAttribute("crossOrigin","Anonymous")}catch(e){console.warn("[ddan] downloadImage",e)}return Promise.resolve()},watermark:(e,{width:t=400,height:r=300,angle:n=0,fillStyle:s="rgba(0, 0, 0, 0.2)",font:i="16px Arial",textAlign:o="left",textBaseline:a="middle"}={})=>{try{if(!e)return"";const u=document.createElement("canvas");u.width=t,u.height=r;const l=u.getContext("2d");return l?(n&&l.rotate(n*Math.PI/180),s&&(l.fillStyle=s),i&&(l.font=i),o&&(l.textAlign=o),a&&(l.textBaseline=a),l.fillText(e,u.width/10,u.height/2),`url(${u.toDataURL()})`):""}catch(e){return console.warn("[ddan] watermark",e),""}},fetchDataURL:async e=>{const t={contentType:"",dataUrl:""};try{return t.dataUrl=await fetch(e).then((e=>(t.contentType=e.headers.get("content-type")||"",e.arrayBuffer()))).then((e=>`${`data:${t.contentType};base64,`+btoa(new Uint8Array(e).reduce(((e,t)=>e+String.fromCharCode(t)),""))}`)),t}catch(e){return t}}};const fr=new class{__defStyle="vertical-align: middle; mask-position: 50% 50%; mask-repeat: no-repeat; mask-size: 100%; -webkit-mask-position: 50% 50%; -webkit-mask-repeat: no-repeat; -webkit-mask-size: 100%; background-color: currentColor;";__map={back:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M609.408 149.376L277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.592 30.592 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.592 30.592 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0z"/></svg>',right:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M340.864 149.312a30.592 30.592 0 0 0 0 42.752L652.736 512 340.864 831.872a30.592 30.592 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"/></svg>',home:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M13 19.8h3.8v-7h3.303L12 4.697 3.897 12.8H7.2v7H11V17h2v2.8zm5 .2a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1v-6H3.414a1 1 0 0 1-.707-1.707l8.586-8.586a1 1 0 0 1 1.414 0l8.586 8.586A1 1 0 0 1 20.586 14H18v6z" fill-rule="evenodd" fill-opacity=".9"/></svg>',close:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M764.288 214.592L512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"/></svg>',close_circle:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M466.752 512l-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248L466.752 512z"/><path fill="currentColor" d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"/></svg>',close_circle_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336L512 457.664z"/></svg>',warning:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M928.99 755.83L574.6 203.25c-12.89-20.16-36.76-32.58-62.6-32.58s-49.71 12.43-62.6 32.58L95.01 755.83c-12.91 20.12-12.9 44.91.01 65.03 12.92 20.12 36.78 32.51 62.59 32.49h708.78c25.82.01 49.68-12.37 62.59-32.49 12.91-20.12 12.92-44.91.01-65.03zM554.67 768h-85.33v-85.33h85.33V768zm0-426.67v298.66h-85.33V341.32l85.33.01z" fill="currentColor"/></svg>',play:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M512 1024A512 512 0 1 1 512 0a512 512 0 0 1 0 1024zm3.008-92.992a416 416 0 1 0 0-832 416 416 0 0 0 0 832zM383.232 287.616l384 224.896-384 223.104v-448z" fill="currentColor"/></svg>',lock:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M224 448a32 32 0 0 0-32 32v384a32 32 0 0 0 32 32h576a32 32 0 0 0 32-32V480a32 32 0 0 0-32-32H224zm0-64h576a96 96 0 0 1 96 96v384a96 96 0 0 1-96 96H224a96 96 0 0 1-96-96V480a96 96 0 0 1 96-96z"/><path fill="currentColor" d="M512 544a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V576a32 32 0 0 1 32-32zm192-160v-64a192 192 0 1 0-384 0v64h384zM512 64a256 256 0 0 1 256 256v128H256V320A256 256 0 0 1 512 64z"/></svg>',lock_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path d="M467.2 713.92v115.968a44.8 44.8 0 0 0 89.6 0V713.92c26.752-14.72 44.8-42.304 44.8-73.92 0-47.104-40.128-85.312-89.6-85.312-49.472 0-89.6 38.208-89.6 85.312 0 31.616 18.048 59.136 44.8 73.92zM64 384h896v640H64V384zm268.8 0h358.4V256c0-94.272-80.256-170.688-179.2-170.688-98.944 0-179.2 76.416-179.2 170.688v128zM512 0c148.48 0 268.8 114.56 268.8 256v128H243.2V256C243.2 114.56 363.52 0 512 0z" fill="currentColor"/></svg>',plus:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64h352z"/></svg>',plus_circle:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M352 480h320a32 32 0 1 1 0 64H352a32 32 0 0 1 0-64z"/><path fill="currentColor" d="M480 672V352a32 32 0 1 1 64 0v320a32 32 0 0 1-64 0z"/><path fill="currentColor" d="M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768zm0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896z"/></svg>',plus_circle_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896zm-38.4 409.6H326.4a38.4 38.4 0 1 0 0 76.8h147.2v147.2a38.4 38.4 0 0 0 76.8 0V550.4h147.2a38.4 38.4 0 0 0 0-76.8H550.4V326.4a38.4 38.4 0 1 0-76.8 0v147.2z"/></svg>',star:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M512 747.84l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72L512 747.84zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"/></svg>',star_fill:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M283.84 867.84L512 747.776l228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72z"/></svg>',share:'<svg viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M679.872 348.8l-301.76 188.608a127.808 127.808 0 0 1 5.12 52.16l279.936 104.96a128 128 0 1 1-22.464 59.904l-279.872-104.96a128 128 0 1 1-16.64-166.272l301.696-188.608a128 128 0 1 1 33.92 54.272z"/></svg>',love:'<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M171.712 571.648l.352.32 287.904 252.8a64 64 0 0 0 82.912 1.344l296.832-244.544a215.584 215.584 0 1 0-301.824-300.576L512 316.672l-25.888-35.616a215.584 215.584 0 1 0-314.4 290.624zM32 407.584A279.584 279.584 0 0 1 512 212.64a279.584 279.584 0 0 1 480 194.944 278.144 278.144 0 0 1-113.024 224.512l-295.36 243.392a128 128 0 0 1-165.888-2.592L129.984 620.16A278.976 278.976 0 0 1 32 407.584z"/></svg>',love_fill:'<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M32 407.584A279.584 279.584 0 0 1 512 212.64a279.584 279.584 0 0 1 480 194.944 278.144 278.144 0 0 1-113.024 224.512L562.592 892.8a96 96 0 0 1-124.416-1.952L130.016 620.16A278.976 278.976 0 0 1 32 407.584z"/></svg>'};getBase64=e=>{const t=this.getSVG(e);return t?.url||""};getSVG=e=>{if(!e)return;const t=this.__map[e];if(!t)return;return{url:this.toBase64(t),escape:this.toEscape(t)}};toBase64=e=>{if(!e)return"";const t=this._tiny(e);return`data:image/svg+xml;base64,${rr.encode(t)}`};_tiny=e=>e?e.replace(/<!--(.*)-->/g,"").replace(/[\r\n]/g," ").replace(/"/g,"'"):"";toEscape=e=>{if(!e)return"";return`data:image/svg+xml,${this._tiny(e).replace(/%/g,"%25").replace(/&/g,"%26").replace(/#/g,"%23").replace(/{/g,"%7B").replace(/}/g,"%7D").replace(/</g,"%3C").replace(/>/g,"%3E")}`};getStyle(e,t={}){if(!e)return"";const r=this.__map[e];return r?this.toStyle(r,t):""}toStyle(e,t={}){if(!e)return"";const r=this.toBase64(e);return r?this.getStyleByUrl(r,t):""}getStyleByUrl(e,t={}){if(!e)return"";const{key:r="mask-image",gradientValue:n="radial-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5))",gradient:s=!1,defStyle:i=this.__defStyle}=t,o=s&&n?`${n}, url("${e}")`:`url("${e}")`;return`${r}:${o};-webkit-${r}:${o};${i}`}};var hr={ossImage:(e,t={})=>{if(!e)return e;const r=At.parseUrl(e).path;if(t.domain){if(!e.startsWith("http"))return e;const r=ht.toList(t.domain||""),n=e.match(/^http[s]?:\/\/([\w.]+)[\w\W]+/)[1]||"";if(!n||!r.includes(n))return e}const n=[];return t.webp&&!r.endsWith(".gif")&&n.push("format,webp"),t.resize&&n.push(`resize,s_${t.resize}`),t.interlace&&(n.push("interlace,1"),!n.every((e=>!e.startsWith("format")))||r.endsWith(".gif")||r.endsWith(".jpg")||n.push("format,jpg")),n.length<=0?e:`${r}?x-oss-process=image/${n.join("/")}`},ossSnapshot:(e,t={})=>{if(!e)return e;const r=At.parseUrl(e).path,n=["snapshot"],{m:s="fast",f:i="jpg"}=t;return(t.t||0===t.t)&&n.push(`t_${t.t}`),t.w&&n.push(`w_${t.w}`),t.h&&n.push(`h_${t.h}`),s&&n.push(`m_${s}`),i&&n.push(`f_${i}`),t.ar&&n.push(`ar_${t.ar}`),`${r}?x-oss-process=video/${n.join(",")}`}};var dr={uint8ArrayToString:function(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},stringToArrayBuffer:function(e){const t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r);for(let r=0;r<t;r++)n[r]=e.charCodeAt(r);return r}};const gr=({url:e,options:t})=>{const r={"Content-Type":"application/json; charset=utf-8",...t.headers||{}};return t.headers=r,new Promise(((r,n)=>{fetch(e,t).then((e=>{r(e.json())})).catch((e=>{n(e)}))}))};function pr(e){const{response:t}=e;return 0===t.code?Promise.resolve(t):Promise.reject(t)}function mr(e){const{url:t="",host:r,options:n}=e,s=e;if(t.startsWith("http://")||t.startsWith("https://")||(s.url=(r||"")+t),"GET"===n.method.toUpperCase()&&n.body){const e=JSON.parse(n.body);if(ct.isPlainObject(e)){const r=At.stringify(e),n=-1===t.indexOf("?")?"?":"&";s.url=`${s.url||""}${n}${r}`,delete s.options.body}}return n&&n.plugins&&delete s.options?.plugins,n&&n.model&&delete s.options?.model,s}class yr{host="";reqConfig={};handleError;interceptors={request:new wt,response:new wt};constructor(e){this.host=e.host||"",this.reqConfig=e.config,this.interceptors.request.use(e.handleRequest||[]),this.interceptors.request.use(mr),this.interceptors.response.use(e.handleResponse||pr),this.handleError=e.handleError}static blockId="blockid";static requestLock={};lockR(e,t){yr.requestLock[e]={lock:!0,request:t()}}unlockR(e){delete yr.requestLock[e]}getIdFromReq(e){const{url:t,data:r={}}=e;return t+JSON.stringify(r)}getIdFromReqUrl(e){return e.url||""}async fetch(e,t){const r=ct.copy(this.reqConfig[e])||{},n={host:this.host,url:r.url||"",options:{...r||{},body:JSON.stringify({...t||{}})}};try{const s=await this.interceptors.request.invoke(n);let i;if(delete s.options.plugins,"block"===r.model)this.lockR(yr.blockId,(()=>gr(s))),i=await yr.requestLock[yr.blockId].request;else if(yr.requestLock[yr.blockId]&&yr.requestLock[yr.blockId].lock&&await yr.requestLock[yr.blockId].request,"debounce"===r.model||"debounceUrl"===r.model){let e;e="debounceUrl"===r.model?this.getIdFromReqUrl(s):this.getIdFromReq(s),yr.requestLock[e]||this.lockR(e,(()=>gr(s))),i=await yr.requestLock[e].request,this.unlockR(e)}else i=await gr(s);return this.interceptors.response.invoke({response:i,config:r,refetch:()=>({sig:"REFETCH",result:this.fetch(e,t)})})}catch(e){return this.handleError&&this.handleError(e),Promise.reject(e)}}}class wr{key;storage;fields=[];constructor(e){this.key=e?.key||"",this.fields=e?.fields||[],this.storage=e?.storage||void 0}save=ee.debounce((e=>{if(this.key&&this.storage)try{const{setItem:t,setStorageSync:r}=this.storage;if(r)return r(this.key,e);if(t)return t(this.key,JSON.stringify(e))}catch(e){console.error("persit save ",e)}}));read(){if(this.key&&this.storage)try{const{getItem:e,getStorageSync:t}=this.storage;if(t)return t(this.key);if(e){const t=e(this.key);return JSON.parse(t)}}catch(e){return void console.error("persit read ",e)}}handleSave(e,t){if(!this.fields.includes(t)||!e)return;const r=lt.copy(e,{fields:this.fields});this.save(r)}}class br extends o{setters={};getters={};actions={};persist;constructor(){super()}async dispatch(e,t=void 0){const r=this,n=Reflect.get(r.actions,e);if(!M.isFunction(n))return;const[,s]=await ee.run(n({...r,commit:r.commit.bind(r),query:r.query.bind(r),dispatch:r.dispatch.bind(r)},t));return s}async query(e){const t=Reflect.get(this,e);let r;if(null!=t&&""!==t)r=lt.copy(t);else{const[,t]=await ee.exec((()=>this.dispatch(e)),`${this.__eventId}_${e}`);r=t}return r}commit(e,t){M.isObject(t)&&(t=lt.copy(t)),this[e]=t}}const vr=(e,t)=>{const r=Object.assign(new br,e||{});r.__persist=new wr(t||r.persist);const n=r.__persist.read(),s=n?Object.assign(r,n):r;return new Proxy(s,{get:(e,t,r)=>{const n=Reflect.get(e.getters,t);return M.isFunction(n)?n(e):Reflect.get(e,t,r)},set:(e,t,r,n)=>{const s=Reflect.get(e.setters,t);if(M.isFunction(s)&&!s(e,r))return!0;const i=Reflect.set(e,t,r,n);return i&&(e.emit(t.toString(),r),e?.__persist?.handleSave(e,t.toString())),i},has:(e,t)=>Reflect.has(e,t)})};class _r{host="";list=[];constructor(e,t={}){this._parseHost(e);const{width:r=500,height:n=400}=t,s=At.parseUrl(e)?.params||{};s["x-oss-process"]=`image/resize,w_${r},h_${n},m_fill`;const i=At.stringify(s,{uri:!1});this.list.push(`${e}?${i}`)}_parseHost(e){e&&!this.host&&/^http[s]?:\/\/([\w.]+)/.test(e)&&(this.host=e.replace(/^http[s]?:\/\/([\w.]+)[\w\W]+/,"$1"))}image(e,t={}){if(!e||!e.includes(this.host))return;if(this.list.length<=0)return;const r={g:"nw",...t},n=e.replace(/^http[s]?:\/\/[\w.]+\/([\w-.,_/?%&=]+)$/,"$1"),s=nr.base64.encodeByOss(n),i=At.stringify({image:s,...r},{sep:",",eq:"_"});this.list.push(`/watermark,${i}`)}text(e,t={},r={}){if(!e)return;const n={g:"nw",...t},s=nr.base64.encodeByOss(e),i=At.stringify({text:s,...n,...r},{sep:",",eq:"_"});this.list.push(`/watermark,${i}`)}result(){return this.list.join("")}}class $r{__list=[];__running=!1;__waitting=!1;constructor(){this.clear()}pipe(e){return this.__waitting||(e&&this.__list.push(e),this._step()),this}delay(e=0){return this.__waitting||(e&&this.__list.push((()=>ee.sleep(e))),this._step()),this}clear(){return this.__list=[],this.__waitting=!1,this.__running=!1,this}async _step(){if(this.__list.length<=0)return;if(this.__running)return;this.__running=!0;const e=this.__list.shift();await ee.run(e),this.__running=!1,this.__waitting||this._step()}async whenAll(){for(this.__waitting=!0,await this._step();;)if(this.__running)await ee.sleep(100);else{if(this.__list.length<=0)break;await this._step()}return this.__waitting=!1,this.clear()}}class xr{__list=[];constructor(){this.clear()}add(e){const t=ee.run(e);return this.__list.push(t),this}clear(){return this.__list=[],this}wait(){const e=this.__list;return this.clear(),Promise.allSettled(e)}}const kr=new class{state=vr(new br);frame=new a;cache=new Map;cacheTime=new Map;setCache=(e,t)=>null!=t&&(!!e&&(this.cache.set(e,t),this.cacheTime.set(e,Date.now()),!0));hasCache=e=>{if(!e)return!1;this.cache.has(e)};getCache=e=>{if(e)return this.cache.get(e)};getCacheTime=e=>e&&this.cacheTime.get(e)||0;removeCache=e=>{e&&(this.cache.delete(e),this.cacheTime.delete(e))};cacheId=e=>`_${e}_cache_`;timesRecord=(e,t={})=>{if(!e)return;const{mode:r="running",cycle:n="day"}=t||{},s=this.cacheId(r),i=this.getCache(s)||{},o=Date.now(),a=i[e],u={time:o,count:1,cycle:n};return a&&("day"!==n||d.isToday(a.time||0))&&(u.count=1+(a.count||0)),i[e]=u,this.setCache(s,i),i};timesValid=(e,t={})=>{if(!e)return!1;const{max:r=1,interval:n=0,mode:s="running",cycle:i="day"}=t||{},o=this.cacheId(s);let a=this.getCache(o);if(!a)return!0;const u=a[e];if(!u)return!0;if("day"===i&&!d.isToday(u.time||0))return!0;if(r<=(u.count||0))return!1;return!(Date.now()-(u.time||0)<n)};timesClean=(e="running")=>{const t=this.cacheId(e),r=this.getCache(t);if(!r)return;const n=ct.copy(r);ct.forof(n,((e,t)=>{"day"!==t.cycle&&void 0!==t.cycle||d.isToday(t.time||0)||delete r[e]})),this.setCache(t,r)};pipeline=()=>new $r;parallel=()=>new xr};class Sr{id="";start=0;end=0;cost=0;name="";type="";desc="";timeStartDesc="";timeEndDesc="";isDone=!1;flag=0;constructor(){this.id=i(),this.start=Date.now(),this.timeStartDesc=d.format(this.start,"hh:mm:ss.SSS")}get time(){return this.flag?this.end:this.start}get timeDesc(){return this.flag?this.timeEndDesc:this.timeStartDesc}done=(e=Date.now())=>{this.start&&(this.end=e,this.cost=this.end-this.start,this.timeEndDesc=d.format(this.end,"hh:mm:ss.SSS"),this.isDone=!0)}}const Ar=new class{__map=new Map;__trackList=[];opened=!0;clear(){return this.__map.clear(),this.__trackList=[],this}add(e,{desc:t="",type:r=""}={}){if(!e||!this.opened)return"";const n=new Sr;return n.name=e,n.type=r,n.desc=t,this.__trackList.push(n),n.id}done(e){if(!e||!this.opened)return;const t=this.__trackList.find((t=>t.id===e));if(!t||t.isDone)return;t.done();const r=lt.cloneClass(t);r.id=this._endId(e),r.flag=1,r.desc=`${t.desc} | end`,this.__trackList.push(r)}getTrack(e){return this.__trackList.find((t=>t.id===e))}getLine(e){if(!e||e.endsWith("-end"))return[];const t=this.__trackList.findIndex((t=>t.id===e));if(t<0)return[];const r=this._endId(e),n=this.__trackList.findIndex((e=>e.id===r)),s=n<0?this.__trackList.length-t:n-t+1;return ht.take(this.__trackList,s,t)}getList(e,t=""){if(!e)return[];const r=this.__trackList.filter((t=>t.name===e));if(r.length<=0)return[];if(!t)return r;const n=this._endId(t);return this.__trackList.filter((e=>e.id===t||e.id===n))}get list(){return this.__trackList}get size(){return this.__trackList.length}_endId=e=>`${e}-end`;report(e){const t=this.list;if(!t||t.length<=0)return;const r=t[0].time;t.forEach((t=>e&&e(t,r)))}},jr={overrode:!1,tag:!1,format:"hh:mm:ss.SSS"},qr=e=>(...t)=>{const r=console[e];jr.overrode?r(...t):Cr(r,e,...t)},Cr=(e,t,...r)=>{const n=d.format(new Date,jr.format),s=jr.tag?`[${t}]`:"";s&&n?e.apply(console,[`${n} ${s}`,...r]):n?e.apply(console,[`${n}`,...r]):s?e.apply(console,[`${s}`,...r]):e.apply(console,[...r])};var Or={override:()=>{if(jr.overrode)return;jr.overrode=!0;["log","info","warn","error"].forEach((e=>{const t=console[e];console[e]=(...r)=>{Cr(t,e,...r)}}))},log:qr("log"),info:qr("info"),warn:qr("warn"),error:qr("error"),config:({tag:e=jr.tag,format:t=jr.format}={})=>{jr.tag=e,jr.format=t}};return{gbk:e,time:d,hook:ee,math:se,util:ct,list:ht,string:nt,obj:lt,crypto:nr,mini:_t,qs:At,css:ur,cdn:hr,html:cr,icon:fr,rule:Yt,regex:Kt,convert:dr,Event:o,Http:yr,Store:br,storeRef:vr,Persist:wr,persistConfig:(e,t,r)=>({key:e,fields:t,storage:r}),watermark:(e,t)=>new _r(e,t),joker:kr,tracker:Ar,logger:Or}}));
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const is_1 = require("../util/is");
4
+ const base_1 = require("../modules/hook/base");
4
5
  class DTask {
5
6
  __source;
6
7
  constructor(source) {
@@ -17,7 +18,7 @@ class DTask {
17
18
  temp = this.__source;
18
19
  }
19
20
  promise = is_1.default.isPromise(temp) ? temp : Promise.resolve(temp);
20
- return promise.then(data => [null, data]).catch(err => [err, undefined]);
21
+ return base_1.default.to(promise);
21
22
  }
22
23
  catch (err) {
23
24
  return Promise.resolve([err, undefined]);
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ async function to(promise, errorExt) {
4
+ return promise
5
+ .then((data) => [null, data])
6
+ .catch((err) => {
7
+ if (errorExt) {
8
+ Object.assign(err, errorExt);
9
+ }
10
+ return [err, undefined];
11
+ });
12
+ }
13
+ exports.default = { to };
@@ -5,6 +5,7 @@ const throttle_1 = require("./throttle");
5
5
  const mutex_1 = require("./mutex");
6
6
  const task_1 = require("../../class/task");
7
7
  const pipeTask_1 = require("../../class/pipeTask");
8
+ const base_1 = require("./base");
8
9
  const sleep = (time = 1000) => new Promise(resolve => { setTimeout(resolve, time); });
9
10
  const delay = (time = 1000) => new Promise(resolve => { setTimeout(resolve, time); });
10
11
  /**
@@ -24,4 +25,4 @@ const run = async (task, wait = 0) => {
24
25
  };
25
26
  const exec = (func, taskId = "") => task_1.default.exec(func, taskId);
26
27
  const task = (param) => new pipeTask_1.default(param);
27
- exports.default = { sleep, run, exec, debounce: debounce_1.default, throttle: throttle_1.default, task, delay, mutex: mutex_1.default };
28
+ exports.default = { ...base_1.default, sleep, run, exec, debounce: debounce_1.default, throttle: throttle_1.default, task, delay, mutex: mutex_1.default };
@@ -1,9 +1,9 @@
1
1
  export default class DTask {
2
2
  __source: any;
3
3
  constructor(source?: any);
4
- run(): Promise<any[]>;
4
+ run(): Promise<[null, any] | [any, undefined]>;
5
5
  static _lockedMap: Map<string, Promise<any[]>>;
6
- static _lock(id: string, func: Function): Promise<any[]> | undefined;
6
+ static _lock(id: string, func: Function): Promise<[null, any] | [any, undefined]> | undefined;
7
7
  static _unlock(id: string): void;
8
8
  static exec(func: Function, taskId: string): Promise<any[]>;
9
9
  }
@@ -31,13 +31,14 @@ declare const _default: {
31
31
  };
32
32
  hook: {
33
33
  sleep: (time?: number) => Promise<unknown>;
34
- run: (task?: Function | Promise<any> | undefined, wait?: number) => Promise<any[]>;
34
+ run: (task?: Function | Promise<any> | undefined, wait?: number) => Promise<[null, any] | [any, undefined]>;
35
35
  exec: (func: Function, taskId?: string) => Promise<any[]>;
36
36
  debounce: typeof import("./modules/hook/debounce").default;
37
37
  throttle: typeof import("./modules/hook/throttle").default;
38
38
  task: (param?: import("./typings/xhao").Xhao.Func1<any, any> | undefined) => import("./class/pipeTask").default;
39
39
  delay: (time?: number) => Promise<unknown>;
40
40
  mutex: typeof import("./modules/hook/mutex").default;
41
+ to: <T = any, U extends object = any>(promise: Promise<T>, errorExt?: object | undefined) => Promise<[null, T] | [U, undefined]>;
41
42
  };
42
43
  math: {
43
44
  random: (max: number) => number;
@@ -67,7 +68,7 @@ declare const _default: {
67
68
  number?: boolean | undefined;
68
69
  boolean?: boolean | undefined;
69
70
  }) => any;
70
- cloneClass: <T>(source: T) => T;
71
+ cloneClass: <T_1>(source: T_1) => T_1;
71
72
  combine: (target: any, source: any, options?: import("./typings").dd.IIgnoreParams) => any;
72
73
  combines: (objs: any[], options?: import("./typings").dd.IIgnoreParams) => {};
73
74
  observe: (obj: any, key: any, watchFun: any, owner: any, deep?: boolean) => void;
@@ -93,16 +94,16 @@ declare const _default: {
93
94
  isPromise: (value: any) => boolean;
94
95
  };
95
96
  list: {
96
- stepAction: <T_1>(list: T_1[], func: import("./typings/xhao").Xhao.Task<T_1, void>, stepCount?: number) => void;
97
- skip: <T_2>(list: T_2[], count: number) => T_2[];
98
- take: <T_3>(list: T_3[], count: number, skip?: number) => T_3[];
99
- distinct: <T_4>(list: T_4[]) => T_4[];
100
- randoms: <T_5>(list: T_5[], count?: number, repeat?: boolean) => T_5[];
97
+ stepAction: <T_2>(list: T_2[], func: import("./typings/xhao").Xhao.Task<T_2, void>, stepCount?: number) => void;
98
+ skip: <T_3>(list: T_3[], count: number) => T_3[];
99
+ take: <T_4>(list: T_4[], count: number, skip?: number) => T_4[];
100
+ distinct: <T_5>(list: T_5[]) => T_5[];
101
+ randoms: <T_6>(list: T_6[], count?: number, repeat?: boolean) => T_6[];
101
102
  toKV: (list: import("./typings/xhao").Xhao.KV<any>[], key: string, value: string) => import("./typings/xhao").Xhao.KV<any>;
102
- groupBy: <T_6>(list: T_6[], key: string) => Record<string, T_6[]>;
103
- first: <T_7>(list: T_7[]) => T_7 | undefined;
104
- last: <T_8>(list: T_8[]) => T_8 | undefined;
105
- toList: <T_9>(val: T_9 | T_9[]) => T_9[];
103
+ groupBy: <T_7>(list: T_7[], key: string) => Record<string, T_7[]>;
104
+ first: <T_8>(list: T_8[]) => T_8 | undefined;
105
+ last: <T_9>(list: T_9[]) => T_9 | undefined;
106
+ toList: <T_10>(val: T_10 | T_10[]) => T_10[];
106
107
  };
107
108
  string: {
108
109
  toString: (value: any) => any;
@@ -134,7 +135,7 @@ declare const _default: {
134
135
  number?: boolean | undefined;
135
136
  boolean?: boolean | undefined;
136
137
  }) => any;
137
- cloneClass: <T>(source: T) => T;
138
+ cloneClass: <T_1>(source: T_1) => T_1;
138
139
  combine: (target: any, source: any, options?: import("./typings").dd.IIgnoreParams) => any;
139
140
  combines: (objs: any[], options?: import("./typings").dd.IIgnoreParams) => {};
140
141
  observe: (obj: any, key: any, watchFun: any, owner: any, deep?: boolean) => void;
@@ -155,7 +156,7 @@ declare const _default: {
155
156
  mini: {
156
157
  diff: typeof import("./modules/mini/diff").default;
157
158
  promixify: (miniapi: any) => any;
158
- run: (func: any, args?: {}) => Promise<any[]>;
159
+ run: (func: any, args?: {}) => Promise<[null, any] | [any, undefined]>;
159
160
  formatList: (lists: any[], start: any, name: any) => any;
160
161
  ruleValidator: (_: any, value: any) => boolean;
161
162
  Http: typeof import("./modules/mini/http").default;
@@ -0,0 +1,5 @@
1
+ declare function to<T = any, U extends object = any>(promise: Promise<T>, errorExt?: object): Promise<[null, T] | [U, undefined]>;
2
+ declare const _default: {
3
+ to: typeof to;
4
+ };
5
+ export default _default;
@@ -5,12 +5,13 @@ import DPipeTask from "../../class/pipeTask";
5
5
  import { Xhao } from "../../typings/xhao";
6
6
  declare const _default: {
7
7
  sleep: (time?: number) => Promise<unknown>;
8
- run: (task?: Function | Promise<any> | undefined, wait?: number) => Promise<any[]>;
8
+ run: (task?: Function | Promise<any> | undefined, wait?: number) => Promise<[null, any] | [any, undefined]>;
9
9
  exec: (func: Function, taskId?: string) => Promise<any[]>;
10
10
  debounce: typeof debounce;
11
11
  throttle: typeof throttle;
12
12
  task: (param?: Xhao.Func1<any, any> | undefined) => DPipeTask;
13
13
  delay: (time?: number) => Promise<unknown>;
14
14
  mutex: typeof mutex;
15
+ to: <T = any, U extends object = any>(promise: Promise<T>, errorExt?: object | undefined) => Promise<[null, T] | [U, undefined]>;
15
16
  };
16
17
  export default _default;
@@ -3,7 +3,7 @@ import Http from "./http";
3
3
  declare const _default: {
4
4
  diff: typeof diff;
5
5
  promixify: (miniapi: any) => any;
6
- run: (func: any, args?: {}) => Promise<any[]>;
6
+ run: (func: any, args?: {}) => Promise<[null, any] | [any, undefined]>;
7
7
  formatList: (lists: any[], start: any, name: any) => any;
8
8
  ruleValidator: (_: any, value: any) => boolean;
9
9
  Http: typeof Http;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ddan-js",
3
- "version": "2.2.5",
3
+ "version": "2.2.6",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "bin/ddan-js.js",