vue-form-controller 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Controller.vue.d.ts +24 -0
- package/dist/composables/controller.d.ts +10 -0
- package/dist/composables/form.d.ts +30 -0
- package/dist/control/index.d.ts +3 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +3803 -0
- package/dist/index.umd.cjs +20 -0
- package/dist/types.d.ts +53 -0
- package/dist/validations/index.d.ts +3 -0
- package/package.json +54 -0
- package/src/components/Controller.vue +20 -0
- package/src/composables/controller.ts +54 -0
- package/src/composables/form.ts +159 -0
- package/src/control/index.ts +23 -0
- package/src/index.ts +15 -0
- package/src/types.ts +83 -0
- package/src/validations/index.ts +49 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
(function(nt,q){typeof exports=="object"&&typeof module<"u"?q(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],q):(nt=typeof globalThis<"u"?globalThis:nt||self,q(nt["Vue Composable Form"]={},nt.Vue))})(this,(function(nt,q){"use strict";const wl=({rules:X,control:y,name:l,shouldUnregister:tt})=>{const Ln=q.computed(()=>y.getValue(l)),pt=q.computed(()=>y.getIsDirty(l)),G=q.computed(()=>y.getError(l)),et=q.computed(()=>y.reValidateMode.value),dt=q.computed(()=>!!G.value?.length);return q.watch(()=>X,()=>{X!==void 0&&y.setRule(l,X)},{immediate:!0}),q.onUnmounted(()=>{tt&&y.unregister(l)}),{value:Ln,errors:G,hasErrors:dt,onChange:vt=>{y.setValue(l,vt)},onFocus:()=>{y.clearError(l)},onBlur:()=>{(et.value==="all"||et.value==="onBlur")&&y.validateField(l)},isDirty:pt}};var xe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Xt={exports:{}};var xl=Xt.exports,Ui;function Al(){return Ui||(Ui=1,(function(X,y){(function(){var l,tt="4.17.21",Ln=200,pt="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",G="Expected a function",et="Invalid `variable` option passed into `_.template`",dt="__lodash_hash_undefined__",Jt=500,rt="__lodash_placeholder__",Cn=1,vt=2,it=4,ut=1,Ct=2,on=1,sn=2,Ot=4,dn=8,Kn=16,vn=32,wt=64,On=128,xt=256,bt=512,Ae=30,L="...",wn=800,pr=16,Vt=1,me=2,dr=3,Un=1/0,bn=9007199254740991,yl=17976931348623157e292,Ee=NaN,Nn=4294967295,Sl=Nn-1,Il=Nn>>>1,Rl=[["ary",On],["bind",on],["bindKey",sn],["curry",dn],["curryRight",Kn],["flip",bt],["partial",vn],["partialRight",wt],["rearg",xt]],Wt="[object Arguments]",ye="[object Array]",Tl="[object AsyncFunction]",Qt="[object Boolean]",kt="[object Date]",Ll="[object DOMException]",Se="[object Error]",Ie="[object Function]",Gi="[object GeneratorFunction]",Wn="[object Map]",jt="[object Number]",Cl="[object Null]",$n="[object Object]",Hi="[object Promise]",Ol="[object Proxy]",ne="[object RegExp]",Fn="[object Set]",te="[object String]",Re="[object Symbol]",bl="[object Undefined]",ee="[object WeakMap]",Wl="[object WeakSet]",re="[object ArrayBuffer]",Ft="[object DataView]",vr="[object Float32Array]",wr="[object Float64Array]",xr="[object Int8Array]",Ar="[object Int16Array]",mr="[object Int32Array]",Er="[object Uint8Array]",yr="[object Uint8ClampedArray]",Sr="[object Uint16Array]",Ir="[object Uint32Array]",Fl=/\b__p \+= '';/g,Bl=/\b(__p \+=) '' \+/g,Pl=/(__e\(.*?\)|\b__t\)) \+\n'';/g,qi=/&(?:amp|lt|gt|quot|#39);/g,Ki=/[&<>"']/g,Ml=RegExp(qi.source),Dl=RegExp(Ki.source),Ul=/<%-([\s\S]+?)%>/g,Nl=/<%([\s\S]+?)%>/g,$i=/<%=([\s\S]+?)%>/g,Gl=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Hl=/^\w*$/,ql=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Rr=/[\\^$.*+?()[\]{}|]/g,Kl=RegExp(Rr.source),Tr=/^\s+/,$l=/\s/,zl=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Zl=/\{\n\/\* \[wrapped with (.+)\] \*/,Yl=/,? & /,Xl=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Jl=/[()=,{}\[\]\/\s]/,Vl=/\\(\\)?/g,Ql=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,zi=/\w*$/,kl=/^[-+]0x[0-9a-f]+$/i,jl=/^0b[01]+$/i,no=/^\[object .+?Constructor\]$/,to=/^0o[0-7]+$/i,eo=/^(?:0|[1-9]\d*)$/,ro=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Te=/($^)/,io=/['\n\r\u2028\u2029\\]/g,Le="\\ud800-\\udfff",uo="\\u0300-\\u036f",fo="\\ufe20-\\ufe2f",lo="\\u20d0-\\u20ff",Zi=uo+fo+lo,Yi="\\u2700-\\u27bf",Xi="a-z\\xdf-\\xf6\\xf8-\\xff",oo="\\xac\\xb1\\xd7\\xf7",so="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",ao="\\u2000-\\u206f",co=" \\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",Ji="A-Z\\xc0-\\xd6\\xd8-\\xde",Vi="\\ufe0e\\ufe0f",Qi=oo+so+ao+co,Lr="['’]",ho="["+Le+"]",ki="["+Qi+"]",Ce="["+Zi+"]",ji="\\d+",go="["+Yi+"]",nu="["+Xi+"]",tu="[^"+Le+Qi+ji+Yi+Xi+Ji+"]",Cr="\\ud83c[\\udffb-\\udfff]",_o="(?:"+Ce+"|"+Cr+")",eu="[^"+Le+"]",Or="(?:\\ud83c[\\udde6-\\uddff]){2}",br="[\\ud800-\\udbff][\\udc00-\\udfff]",Bt="["+Ji+"]",ru="\\u200d",iu="(?:"+nu+"|"+tu+")",po="(?:"+Bt+"|"+tu+")",uu="(?:"+Lr+"(?:d|ll|m|re|s|t|ve))?",fu="(?:"+Lr+"(?:D|LL|M|RE|S|T|VE))?",lu=_o+"?",ou="["+Vi+"]?",vo="(?:"+ru+"(?:"+[eu,Or,br].join("|")+")"+ou+lu+")*",wo="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",xo="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",su=ou+lu+vo,Ao="(?:"+[go,Or,br].join("|")+")"+su,mo="(?:"+[eu+Ce+"?",Ce,Or,br,ho].join("|")+")",Eo=RegExp(Lr,"g"),yo=RegExp(Ce,"g"),Wr=RegExp(Cr+"(?="+Cr+")|"+mo+su,"g"),So=RegExp([Bt+"?"+nu+"+"+uu+"(?="+[ki,Bt,"$"].join("|")+")",po+"+"+fu+"(?="+[ki,Bt+iu,"$"].join("|")+")",Bt+"?"+iu+"+"+uu,Bt+"+"+fu,xo,wo,ji,Ao].join("|"),"g"),Io=RegExp("["+ru+Le+Zi+Vi+"]"),Ro=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,To=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Lo=-1,U={};U[vr]=U[wr]=U[xr]=U[Ar]=U[mr]=U[Er]=U[yr]=U[Sr]=U[Ir]=!0,U[Wt]=U[ye]=U[re]=U[Qt]=U[Ft]=U[kt]=U[Se]=U[Ie]=U[Wn]=U[jt]=U[$n]=U[ne]=U[Fn]=U[te]=U[ee]=!1;var D={};D[Wt]=D[ye]=D[re]=D[Ft]=D[Qt]=D[kt]=D[vr]=D[wr]=D[xr]=D[Ar]=D[mr]=D[Wn]=D[jt]=D[$n]=D[ne]=D[Fn]=D[te]=D[Re]=D[Er]=D[yr]=D[Sr]=D[Ir]=!0,D[Se]=D[Ie]=D[ee]=!1;var Co={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Oo={"&":"&","<":"<",">":">",'"':""","'":"'"},bo={"&":"&","<":"<",">":">",""":'"',"'":"'"},Wo={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Fo=parseFloat,Bo=parseInt,au=typeof xe=="object"&&xe&&xe.Object===Object&&xe,Po=typeof self=="object"&&self&&self.Object===Object&&self,V=au||Po||Function("return this")(),Fr=y&&!y.nodeType&&y,At=Fr&&!0&&X&&!X.nodeType&&X,cu=At&&At.exports===Fr,Br=cu&&au.process,xn=(function(){try{var a=At&&At.require&&At.require("util").types;return a||Br&&Br.binding&&Br.binding("util")}catch{}})(),hu=xn&&xn.isArrayBuffer,gu=xn&&xn.isDate,_u=xn&&xn.isMap,pu=xn&&xn.isRegExp,du=xn&&xn.isSet,vu=xn&&xn.isTypedArray;function an(a,g,h){switch(h.length){case 0:return a.call(g);case 1:return a.call(g,h[0]);case 2:return a.call(g,h[0],h[1]);case 3:return a.call(g,h[0],h[1],h[2])}return a.apply(g,h)}function Mo(a,g,h,w){for(var S=-1,F=a==null?0:a.length;++S<F;){var Z=a[S];g(w,Z,h(Z),a)}return w}function An(a,g){for(var h=-1,w=a==null?0:a.length;++h<w&&g(a[h],h,a)!==!1;);return a}function Do(a,g){for(var h=a==null?0:a.length;h--&&g(a[h],h,a)!==!1;);return a}function wu(a,g){for(var h=-1,w=a==null?0:a.length;++h<w;)if(!g(a[h],h,a))return!1;return!0}function ft(a,g){for(var h=-1,w=a==null?0:a.length,S=0,F=[];++h<w;){var Z=a[h];g(Z,h,a)&&(F[S++]=Z)}return F}function Oe(a,g){var h=a==null?0:a.length;return!!h&&Pt(a,g,0)>-1}function Pr(a,g,h){for(var w=-1,S=a==null?0:a.length;++w<S;)if(h(g,a[w]))return!0;return!1}function N(a,g){for(var h=-1,w=a==null?0:a.length,S=Array(w);++h<w;)S[h]=g(a[h],h,a);return S}function lt(a,g){for(var h=-1,w=g.length,S=a.length;++h<w;)a[S+h]=g[h];return a}function Mr(a,g,h,w){var S=-1,F=a==null?0:a.length;for(w&&F&&(h=a[++S]);++S<F;)h=g(h,a[S],S,a);return h}function Uo(a,g,h,w){var S=a==null?0:a.length;for(w&&S&&(h=a[--S]);S--;)h=g(h,a[S],S,a);return h}function Dr(a,g){for(var h=-1,w=a==null?0:a.length;++h<w;)if(g(a[h],h,a))return!0;return!1}var No=Ur("length");function Go(a){return a.split("")}function Ho(a){return a.match(Xl)||[]}function xu(a,g,h){var w;return h(a,function(S,F,Z){if(g(S,F,Z))return w=F,!1}),w}function be(a,g,h,w){for(var S=a.length,F=h+(w?1:-1);w?F--:++F<S;)if(g(a[F],F,a))return F;return-1}function Pt(a,g,h){return g===g?jo(a,g,h):be(a,Au,h)}function qo(a,g,h,w){for(var S=h-1,F=a.length;++S<F;)if(w(a[S],g))return S;return-1}function Au(a){return a!==a}function mu(a,g){var h=a==null?0:a.length;return h?Gr(a,g)/h:Ee}function Ur(a){return function(g){return g==null?l:g[a]}}function Nr(a){return function(g){return a==null?l:a[g]}}function Eu(a,g,h,w,S){return S(a,function(F,Z,M){h=w?(w=!1,F):g(h,F,Z,M)}),h}function Ko(a,g){var h=a.length;for(a.sort(g);h--;)a[h]=a[h].value;return a}function Gr(a,g){for(var h,w=-1,S=a.length;++w<S;){var F=g(a[w]);F!==l&&(h=h===l?F:h+F)}return h}function Hr(a,g){for(var h=-1,w=Array(a);++h<a;)w[h]=g(h);return w}function $o(a,g){return N(g,function(h){return[h,a[h]]})}function yu(a){return a&&a.slice(0,Tu(a)+1).replace(Tr,"")}function cn(a){return function(g){return a(g)}}function qr(a,g){return N(g,function(h){return a[h]})}function ie(a,g){return a.has(g)}function Su(a,g){for(var h=-1,w=a.length;++h<w&&Pt(g,a[h],0)>-1;);return h}function Iu(a,g){for(var h=a.length;h--&&Pt(g,a[h],0)>-1;);return h}function zo(a,g){for(var h=a.length,w=0;h--;)a[h]===g&&++w;return w}var Zo=Nr(Co),Yo=Nr(Oo);function Xo(a){return"\\"+Wo[a]}function Jo(a,g){return a==null?l:a[g]}function Mt(a){return Io.test(a)}function Vo(a){return Ro.test(a)}function Qo(a){for(var g,h=[];!(g=a.next()).done;)h.push(g.value);return h}function Kr(a){var g=-1,h=Array(a.size);return a.forEach(function(w,S){h[++g]=[S,w]}),h}function Ru(a,g){return function(h){return a(g(h))}}function ot(a,g){for(var h=-1,w=a.length,S=0,F=[];++h<w;){var Z=a[h];(Z===g||Z===rt)&&(a[h]=rt,F[S++]=h)}return F}function We(a){var g=-1,h=Array(a.size);return a.forEach(function(w){h[++g]=w}),h}function ko(a){var g=-1,h=Array(a.size);return a.forEach(function(w){h[++g]=[w,w]}),h}function jo(a,g,h){for(var w=h-1,S=a.length;++w<S;)if(a[w]===g)return w;return-1}function ns(a,g,h){for(var w=h+1;w--;)if(a[w]===g)return w;return w}function Dt(a){return Mt(a)?es(a):No(a)}function Bn(a){return Mt(a)?rs(a):Go(a)}function Tu(a){for(var g=a.length;g--&&$l.test(a.charAt(g)););return g}var ts=Nr(bo);function es(a){for(var g=Wr.lastIndex=0;Wr.test(a);)++g;return g}function rs(a){return a.match(Wr)||[]}function is(a){return a.match(So)||[]}var us=(function a(g){g=g==null?V:Ut.defaults(V.Object(),g,Ut.pick(V,To));var h=g.Array,w=g.Date,S=g.Error,F=g.Function,Z=g.Math,M=g.Object,$r=g.RegExp,fs=g.String,mn=g.TypeError,Fe=h.prototype,ls=F.prototype,Nt=M.prototype,Be=g["__core-js_shared__"],Pe=ls.toString,P=Nt.hasOwnProperty,os=0,Lu=(function(){var n=/[^.]+$/.exec(Be&&Be.keys&&Be.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""})(),Me=Nt.toString,ss=Pe.call(M),as=V._,cs=$r("^"+Pe.call(P).replace(Rr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),De=cu?g.Buffer:l,st=g.Symbol,Ue=g.Uint8Array,Cu=De?De.allocUnsafe:l,Ne=Ru(M.getPrototypeOf,M),Ou=M.create,bu=Nt.propertyIsEnumerable,Ge=Fe.splice,Wu=st?st.isConcatSpreadable:l,ue=st?st.iterator:l,mt=st?st.toStringTag:l,He=(function(){try{var n=Rt(M,"defineProperty");return n({},"",{}),n}catch{}})(),hs=g.clearTimeout!==V.clearTimeout&&g.clearTimeout,gs=w&&w.now!==V.Date.now&&w.now,_s=g.setTimeout!==V.setTimeout&&g.setTimeout,qe=Z.ceil,Ke=Z.floor,zr=M.getOwnPropertySymbols,ps=De?De.isBuffer:l,Fu=g.isFinite,ds=Fe.join,vs=Ru(M.keys,M),Y=Z.max,k=Z.min,ws=w.now,xs=g.parseInt,Bu=Z.random,As=Fe.reverse,Zr=Rt(g,"DataView"),fe=Rt(g,"Map"),Yr=Rt(g,"Promise"),Gt=Rt(g,"Set"),le=Rt(g,"WeakMap"),oe=Rt(M,"create"),$e=le&&new le,Ht={},ms=Tt(Zr),Es=Tt(fe),ys=Tt(Yr),Ss=Tt(Gt),Is=Tt(le),ze=st?st.prototype:l,se=ze?ze.valueOf:l,Pu=ze?ze.toString:l;function u(n){if(K(n)&&!I(n)&&!(n instanceof b)){if(n instanceof En)return n;if(P.call(n,"__wrapped__"))return Df(n)}return new En(n)}var qt=(function(){function n(){}return function(t){if(!H(t))return{};if(Ou)return Ou(t);n.prototype=t;var e=new n;return n.prototype=l,e}})();function Ze(){}function En(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=l}u.templateSettings={escape:Ul,evaluate:Nl,interpolate:$i,variable:"",imports:{_:u}},u.prototype=Ze.prototype,u.prototype.constructor=u,En.prototype=qt(Ze.prototype),En.prototype.constructor=En;function b(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=Nn,this.__views__=[]}function Rs(){var n=new b(this.__wrapped__);return n.__actions__=rn(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=rn(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=rn(this.__views__),n}function Ts(){if(this.__filtered__){var n=new b(this);n.__dir__=-1,n.__filtered__=!0}else n=this.clone(),n.__dir__*=-1;return n}function Ls(){var n=this.__wrapped__.value(),t=this.__dir__,e=I(n),r=t<0,i=e?n.length:0,f=Ga(0,i,this.__views__),o=f.start,s=f.end,c=s-o,_=r?s:o-1,p=this.__iteratees__,d=p.length,v=0,x=k(c,this.__takeCount__);if(!e||!r&&i==c&&x==c)return ff(n,this.__actions__);var m=[];n:for(;c--&&v<x;){_+=t;for(var T=-1,E=n[_];++T<d;){var O=p[T],W=O.iteratee,_n=O.type,en=W(E);if(_n==me)E=en;else if(!en){if(_n==Vt)continue n;break n}}m[v++]=E}return m}b.prototype=qt(Ze.prototype),b.prototype.constructor=b;function Et(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Cs(){this.__data__=oe?oe(null):{},this.size=0}function Os(n){var t=this.has(n)&&delete this.__data__[n];return this.size-=t?1:0,t}function bs(n){var t=this.__data__;if(oe){var e=t[n];return e===dt?l:e}return P.call(t,n)?t[n]:l}function Ws(n){var t=this.__data__;return oe?t[n]!==l:P.call(t,n)}function Fs(n,t){var e=this.__data__;return this.size+=this.has(n)?0:1,e[n]=oe&&t===l?dt:t,this}Et.prototype.clear=Cs,Et.prototype.delete=Os,Et.prototype.get=bs,Et.prototype.has=Ws,Et.prototype.set=Fs;function zn(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Bs(){this.__data__=[],this.size=0}function Ps(n){var t=this.__data__,e=Ye(t,n);if(e<0)return!1;var r=t.length-1;return e==r?t.pop():Ge.call(t,e,1),--this.size,!0}function Ms(n){var t=this.__data__,e=Ye(t,n);return e<0?l:t[e][1]}function Ds(n){return Ye(this.__data__,n)>-1}function Us(n,t){var e=this.__data__,r=Ye(e,n);return r<0?(++this.size,e.push([n,t])):e[r][1]=t,this}zn.prototype.clear=Bs,zn.prototype.delete=Ps,zn.prototype.get=Ms,zn.prototype.has=Ds,zn.prototype.set=Us;function Zn(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Ns(){this.size=0,this.__data__={hash:new Et,map:new(fe||zn),string:new Et}}function Gs(n){var t=ur(this,n).delete(n);return this.size-=t?1:0,t}function Hs(n){return ur(this,n).get(n)}function qs(n){return ur(this,n).has(n)}function Ks(n,t){var e=ur(this,n),r=e.size;return e.set(n,t),this.size+=e.size==r?0:1,this}Zn.prototype.clear=Ns,Zn.prototype.delete=Gs,Zn.prototype.get=Hs,Zn.prototype.has=qs,Zn.prototype.set=Ks;function yt(n){var t=-1,e=n==null?0:n.length;for(this.__data__=new Zn;++t<e;)this.add(n[t])}function $s(n){return this.__data__.set(n,dt),this}function zs(n){return this.__data__.has(n)}yt.prototype.add=yt.prototype.push=$s,yt.prototype.has=zs;function Pn(n){var t=this.__data__=new zn(n);this.size=t.size}function Zs(){this.__data__=new zn,this.size=0}function Ys(n){var t=this.__data__,e=t.delete(n);return this.size=t.size,e}function Xs(n){return this.__data__.get(n)}function Js(n){return this.__data__.has(n)}function Vs(n,t){var e=this.__data__;if(e instanceof zn){var r=e.__data__;if(!fe||r.length<Ln-1)return r.push([n,t]),this.size=++e.size,this;e=this.__data__=new Zn(r)}return e.set(n,t),this.size=e.size,this}Pn.prototype.clear=Zs,Pn.prototype.delete=Ys,Pn.prototype.get=Xs,Pn.prototype.has=Js,Pn.prototype.set=Vs;function Mu(n,t){var e=I(n),r=!e&&Lt(n),i=!e&&!r&&_t(n),f=!e&&!r&&!i&&Zt(n),o=e||r||i||f,s=o?Hr(n.length,fs):[],c=s.length;for(var _ in n)(t||P.call(n,_))&&!(o&&(_=="length"||i&&(_=="offset"||_=="parent")||f&&(_=="buffer"||_=="byteLength"||_=="byteOffset")||Vn(_,c)))&&s.push(_);return s}function Du(n){var t=n.length;return t?n[ii(0,t-1)]:l}function Qs(n,t){return fr(rn(n),St(t,0,n.length))}function ks(n){return fr(rn(n))}function Xr(n,t,e){(e!==l&&!Mn(n[t],e)||e===l&&!(t in n))&&Yn(n,t,e)}function ae(n,t,e){var r=n[t];(!(P.call(n,t)&&Mn(r,e))||e===l&&!(t in n))&&Yn(n,t,e)}function Ye(n,t){for(var e=n.length;e--;)if(Mn(n[e][0],t))return e;return-1}function js(n,t,e,r){return at(n,function(i,f,o){t(r,i,e(i),o)}),r}function Uu(n,t){return n&&Hn(t,J(t),n)}function na(n,t){return n&&Hn(t,fn(t),n)}function Yn(n,t,e){t=="__proto__"&&He?He(n,t,{configurable:!0,enumerable:!0,value:e,writable:!0}):n[t]=e}function Jr(n,t){for(var e=-1,r=t.length,i=h(r),f=n==null;++e<r;)i[e]=f?l:Ci(n,t[e]);return i}function St(n,t,e){return n===n&&(e!==l&&(n=n<=e?n:e),t!==l&&(n=n>=t?n:t)),n}function yn(n,t,e,r,i,f){var o,s=t&Cn,c=t&vt,_=t⁢if(e&&(o=i?e(n,r,i,f):e(n)),o!==l)return o;if(!H(n))return n;var p=I(n);if(p){if(o=qa(n),!s)return rn(n,o)}else{var d=j(n),v=d==Ie||d==Gi;if(_t(n))return sf(n,s);if(d==$n||d==Wt||v&&!i){if(o=c||v?{}:Lf(n),!s)return c?ba(n,na(o,n)):Oa(n,Uu(o,n))}else{if(!D[d])return i?n:{};o=Ka(n,d,s)}}f||(f=new Pn);var x=f.get(n);if(x)return x;f.set(n,o),rl(n)?n.forEach(function(E){o.add(yn(E,t,e,E,n,f))}):tl(n)&&n.forEach(function(E,O){o.set(O,yn(E,t,e,O,n,f))});var m=_?c?pi:_i:c?fn:J,T=p?l:m(n);return An(T||n,function(E,O){T&&(O=E,E=n[O]),ae(o,O,yn(E,t,e,O,n,f))}),o}function ta(n){var t=J(n);return function(e){return Nu(e,n,t)}}function Nu(n,t,e){var r=e.length;if(n==null)return!r;for(n=M(n);r--;){var i=e[r],f=t[i],o=n[i];if(o===l&&!(i in n)||!f(o))return!1}return!0}function Gu(n,t,e){if(typeof n!="function")throw new mn(G);return ve(function(){n.apply(l,e)},t)}function ce(n,t,e,r){var i=-1,f=Oe,o=!0,s=n.length,c=[],_=t.length;if(!s)return c;e&&(t=N(t,cn(e))),r?(f=Pr,o=!1):t.length>=Ln&&(f=ie,o=!1,t=new yt(t));n:for(;++i<s;){var p=n[i],d=e==null?p:e(p);if(p=r||p!==0?p:0,o&&d===d){for(var v=_;v--;)if(t[v]===d)continue n;c.push(p)}else f(t,d,r)||c.push(p)}return c}var at=_f(Gn),Hu=_f(Qr,!0);function ea(n,t){var e=!0;return at(n,function(r,i,f){return e=!!t(r,i,f),e}),e}function Xe(n,t,e){for(var r=-1,i=n.length;++r<i;){var f=n[r],o=t(f);if(o!=null&&(s===l?o===o&&!gn(o):e(o,s)))var s=o,c=f}return c}function ra(n,t,e,r){var i=n.length;for(e=R(e),e<0&&(e=-e>i?0:i+e),r=r===l||r>i?i:R(r),r<0&&(r+=i),r=e>r?0:ul(r);e<r;)n[e++]=t;return n}function qu(n,t){var e=[];return at(n,function(r,i,f){t(r,i,f)&&e.push(r)}),e}function Q(n,t,e,r,i){var f=-1,o=n.length;for(e||(e=za),i||(i=[]);++f<o;){var s=n[f];t>0&&e(s)?t>1?Q(s,t-1,e,r,i):lt(i,s):r||(i[i.length]=s)}return i}var Vr=pf(),Ku=pf(!0);function Gn(n,t){return n&&Vr(n,t,J)}function Qr(n,t){return n&&Ku(n,t,J)}function Je(n,t){return ft(t,function(e){return Qn(n[e])})}function It(n,t){t=ht(t,n);for(var e=0,r=t.length;n!=null&&e<r;)n=n[qn(t[e++])];return e&&e==r?n:l}function $u(n,t,e){var r=t(n);return I(n)?r:lt(r,e(n))}function nn(n){return n==null?n===l?bl:Cl:mt&&mt in M(n)?Na(n):ka(n)}function kr(n,t){return n>t}function ia(n,t){return n!=null&&P.call(n,t)}function ua(n,t){return n!=null&&t in M(n)}function fa(n,t,e){return n>=k(t,e)&&n<Y(t,e)}function jr(n,t,e){for(var r=e?Pr:Oe,i=n[0].length,f=n.length,o=f,s=h(f),c=1/0,_=[];o--;){var p=n[o];o&&t&&(p=N(p,cn(t))),c=k(p.length,c),s[o]=!e&&(t||i>=120&&p.length>=120)?new yt(o&&p):l}p=n[0];var d=-1,v=s[0];n:for(;++d<i&&_.length<c;){var x=p[d],m=t?t(x):x;if(x=e||x!==0?x:0,!(v?ie(v,m):r(_,m,e))){for(o=f;--o;){var T=s[o];if(!(T?ie(T,m):r(n[o],m,e)))continue n}v&&v.push(m),_.push(x)}}return _}function la(n,t,e,r){return Gn(n,function(i,f,o){t(r,e(i),f,o)}),r}function he(n,t,e){t=ht(t,n),n=Wf(n,t);var r=n==null?n:n[qn(In(t))];return r==null?l:an(r,n,e)}function zu(n){return K(n)&&nn(n)==Wt}function oa(n){return K(n)&&nn(n)==re}function sa(n){return K(n)&&nn(n)==kt}function ge(n,t,e,r,i){return n===t?!0:n==null||t==null||!K(n)&&!K(t)?n!==n&&t!==t:aa(n,t,e,r,ge,i)}function aa(n,t,e,r,i,f){var o=I(n),s=I(t),c=o?ye:j(n),_=s?ye:j(t);c=c==Wt?$n:c,_=_==Wt?$n:_;var p=c==$n,d=_==$n,v=c==_;if(v&&_t(n)){if(!_t(t))return!1;o=!0,p=!1}if(v&&!p)return f||(f=new Pn),o||Zt(n)?If(n,t,e,r,i,f):Da(n,t,c,e,r,i,f);if(!(e&ut)){var x=p&&P.call(n,"__wrapped__"),m=d&&P.call(t,"__wrapped__");if(x||m){var T=x?n.value():n,E=m?t.value():t;return f||(f=new Pn),i(T,E,e,r,f)}}return v?(f||(f=new Pn),Ua(n,t,e,r,i,f)):!1}function ca(n){return K(n)&&j(n)==Wn}function ni(n,t,e,r){var i=e.length,f=i,o=!r;if(n==null)return!f;for(n=M(n);i--;){var s=e[i];if(o&&s[2]?s[1]!==n[s[0]]:!(s[0]in n))return!1}for(;++i<f;){s=e[i];var c=s[0],_=n[c],p=s[1];if(o&&s[2]){if(_===l&&!(c in n))return!1}else{var d=new Pn;if(r)var v=r(_,p,c,n,t,d);if(!(v===l?ge(p,_,ut|Ct,r,d):v))return!1}}return!0}function Zu(n){if(!H(n)||Ya(n))return!1;var t=Qn(n)?cs:no;return t.test(Tt(n))}function ha(n){return K(n)&&nn(n)==ne}function ga(n){return K(n)&&j(n)==Fn}function _a(n){return K(n)&&hr(n.length)&&!!U[nn(n)]}function Yu(n){return typeof n=="function"?n:n==null?ln:typeof n=="object"?I(n)?Vu(n[0],n[1]):Ju(n):dl(n)}function ti(n){if(!de(n))return vs(n);var t=[];for(var e in M(n))P.call(n,e)&&e!="constructor"&&t.push(e);return t}function pa(n){if(!H(n))return Qa(n);var t=de(n),e=[];for(var r in n)r=="constructor"&&(t||!P.call(n,r))||e.push(r);return e}function ei(n,t){return n<t}function Xu(n,t){var e=-1,r=un(n)?h(n.length):[];return at(n,function(i,f,o){r[++e]=t(i,f,o)}),r}function Ju(n){var t=vi(n);return t.length==1&&t[0][2]?Of(t[0][0],t[0][1]):function(e){return e===n||ni(e,n,t)}}function Vu(n,t){return xi(n)&&Cf(t)?Of(qn(n),t):function(e){var r=Ci(e,n);return r===l&&r===t?Oi(e,n):ge(t,r,ut|Ct)}}function Ve(n,t,e,r,i){n!==t&&Vr(t,function(f,o){if(i||(i=new Pn),H(f))da(n,t,o,e,Ve,r,i);else{var s=r?r(mi(n,o),f,o+"",n,t,i):l;s===l&&(s=f),Xr(n,o,s)}},fn)}function da(n,t,e,r,i,f,o){var s=mi(n,e),c=mi(t,e),_=o.get(c);if(_){Xr(n,e,_);return}var p=f?f(s,c,e+"",n,t,o):l,d=p===l;if(d){var v=I(c),x=!v&&_t(c),m=!v&&!x&&Zt(c);p=c,v||x||m?I(s)?p=s:$(s)?p=rn(s):x?(d=!1,p=sf(c,!0)):m?(d=!1,p=af(c,!0)):p=[]:we(c)||Lt(c)?(p=s,Lt(s)?p=fl(s):(!H(s)||Qn(s))&&(p=Lf(c))):d=!1}d&&(o.set(c,p),i(p,c,r,f,o),o.delete(c)),Xr(n,e,p)}function Qu(n,t){var e=n.length;if(e)return t+=t<0?e:0,Vn(t,e)?n[t]:l}function ku(n,t,e){t.length?t=N(t,function(f){return I(f)?function(o){return It(o,f.length===1?f[0]:f)}:f}):t=[ln];var r=-1;t=N(t,cn(A()));var i=Xu(n,function(f,o,s){var c=N(t,function(_){return _(f)});return{criteria:c,index:++r,value:f}});return Ko(i,function(f,o){return Ca(f,o,e)})}function va(n,t){return ju(n,t,function(e,r){return Oi(n,r)})}function ju(n,t,e){for(var r=-1,i=t.length,f={};++r<i;){var o=t[r],s=It(n,o);e(s,o)&&_e(f,ht(o,n),s)}return f}function wa(n){return function(t){return It(t,n)}}function ri(n,t,e,r){var i=r?qo:Pt,f=-1,o=t.length,s=n;for(n===t&&(t=rn(t)),e&&(s=N(n,cn(e)));++f<o;)for(var c=0,_=t[f],p=e?e(_):_;(c=i(s,p,c,r))>-1;)s!==n&&Ge.call(s,c,1),Ge.call(n,c,1);return n}function nf(n,t){for(var e=n?t.length:0,r=e-1;e--;){var i=t[e];if(e==r||i!==f){var f=i;Vn(i)?Ge.call(n,i,1):li(n,i)}}return n}function ii(n,t){return n+Ke(Bu()*(t-n+1))}function xa(n,t,e,r){for(var i=-1,f=Y(qe((t-n)/(e||1)),0),o=h(f);f--;)o[r?f:++i]=n,n+=e;return o}function ui(n,t){var e="";if(!n||t<1||t>bn)return e;do t%2&&(e+=n),t=Ke(t/2),t&&(n+=n);while(t);return e}function C(n,t){return Ei(bf(n,t,ln),n+"")}function Aa(n){return Du(Yt(n))}function ma(n,t){var e=Yt(n);return fr(e,St(t,0,e.length))}function _e(n,t,e,r){if(!H(n))return n;t=ht(t,n);for(var i=-1,f=t.length,o=f-1,s=n;s!=null&&++i<f;){var c=qn(t[i]),_=e;if(c==="__proto__"||c==="constructor"||c==="prototype")return n;if(i!=o){var p=s[c];_=r?r(p,c,s):l,_===l&&(_=H(p)?p:Vn(t[i+1])?[]:{})}ae(s,c,_),s=s[c]}return n}var tf=$e?function(n,t){return $e.set(n,t),n}:ln,Ea=He?function(n,t){return He(n,"toString",{configurable:!0,enumerable:!1,value:Wi(t),writable:!0})}:ln;function ya(n){return fr(Yt(n))}function Sn(n,t,e){var r=-1,i=n.length;t<0&&(t=-t>i?0:i+t),e=e>i?i:e,e<0&&(e+=i),i=t>e?0:e-t>>>0,t>>>=0;for(var f=h(i);++r<i;)f[r]=n[r+t];return f}function Sa(n,t){var e;return at(n,function(r,i,f){return e=t(r,i,f),!e}),!!e}function Qe(n,t,e){var r=0,i=n==null?r:n.length;if(typeof t=="number"&&t===t&&i<=Il){for(;r<i;){var f=r+i>>>1,o=n[f];o!==null&&!gn(o)&&(e?o<=t:o<t)?r=f+1:i=f}return i}return fi(n,t,ln,e)}function fi(n,t,e,r){var i=0,f=n==null?0:n.length;if(f===0)return 0;t=e(t);for(var o=t!==t,s=t===null,c=gn(t),_=t===l;i<f;){var p=Ke((i+f)/2),d=e(n[p]),v=d!==l,x=d===null,m=d===d,T=gn(d);if(o)var E=r||m;else _?E=m&&(r||v):s?E=m&&v&&(r||!x):c?E=m&&v&&!x&&(r||!T):x||T?E=!1:E=r?d<=t:d<t;E?i=p+1:f=p}return k(f,Sl)}function ef(n,t){for(var e=-1,r=n.length,i=0,f=[];++e<r;){var o=n[e],s=t?t(o):o;if(!e||!Mn(s,c)){var c=s;f[i++]=o===0?0:o}}return f}function rf(n){return typeof n=="number"?n:gn(n)?Ee:+n}function hn(n){if(typeof n=="string")return n;if(I(n))return N(n,hn)+"";if(gn(n))return Pu?Pu.call(n):"";var t=n+"";return t=="0"&&1/n==-Un?"-0":t}function ct(n,t,e){var r=-1,i=Oe,f=n.length,o=!0,s=[],c=s;if(e)o=!1,i=Pr;else if(f>=Ln){var _=t?null:Pa(n);if(_)return We(_);o=!1,i=ie,c=new yt}else c=t?[]:s;n:for(;++r<f;){var p=n[r],d=t?t(p):p;if(p=e||p!==0?p:0,o&&d===d){for(var v=c.length;v--;)if(c[v]===d)continue n;t&&c.push(d),s.push(p)}else i(c,d,e)||(c!==s&&c.push(d),s.push(p))}return s}function li(n,t){return t=ht(t,n),n=Wf(n,t),n==null||delete n[qn(In(t))]}function uf(n,t,e,r){return _e(n,t,e(It(n,t)),r)}function ke(n,t,e,r){for(var i=n.length,f=r?i:-1;(r?f--:++f<i)&&t(n[f],f,n););return e?Sn(n,r?0:f,r?f+1:i):Sn(n,r?f+1:0,r?i:f)}function ff(n,t){var e=n;return e instanceof b&&(e=e.value()),Mr(t,function(r,i){return i.func.apply(i.thisArg,lt([r],i.args))},e)}function oi(n,t,e){var r=n.length;if(r<2)return r?ct(n[0]):[];for(var i=-1,f=h(r);++i<r;)for(var o=n[i],s=-1;++s<r;)s!=i&&(f[i]=ce(f[i]||o,n[s],t,e));return ct(Q(f,1),t,e)}function lf(n,t,e){for(var r=-1,i=n.length,f=t.length,o={};++r<i;){var s=r<f?t[r]:l;e(o,n[r],s)}return o}function si(n){return $(n)?n:[]}function ai(n){return typeof n=="function"?n:ln}function ht(n,t){return I(n)?n:xi(n,t)?[n]:Mf(B(n))}var Ia=C;function gt(n,t,e){var r=n.length;return e=e===l?r:e,!t&&e>=r?n:Sn(n,t,e)}var of=hs||function(n){return V.clearTimeout(n)};function sf(n,t){if(t)return n.slice();var e=n.length,r=Cu?Cu(e):new n.constructor(e);return n.copy(r),r}function ci(n){var t=new n.constructor(n.byteLength);return new Ue(t).set(new Ue(n)),t}function Ra(n,t){var e=t?ci(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}function Ta(n){var t=new n.constructor(n.source,zi.exec(n));return t.lastIndex=n.lastIndex,t}function La(n){return se?M(se.call(n)):{}}function af(n,t){var e=t?ci(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.length)}function cf(n,t){if(n!==t){var e=n!==l,r=n===null,i=n===n,f=gn(n),o=t!==l,s=t===null,c=t===t,_=gn(t);if(!s&&!_&&!f&&n>t||f&&o&&c&&!s&&!_||r&&o&&c||!e&&c||!i)return 1;if(!r&&!f&&!_&&n<t||_&&e&&i&&!r&&!f||s&&e&&i||!o&&i||!c)return-1}return 0}function Ca(n,t,e){for(var r=-1,i=n.criteria,f=t.criteria,o=i.length,s=e.length;++r<o;){var c=cf(i[r],f[r]);if(c){if(r>=s)return c;var _=e[r];return c*(_=="desc"?-1:1)}}return n.index-t.index}function hf(n,t,e,r){for(var i=-1,f=n.length,o=e.length,s=-1,c=t.length,_=Y(f-o,0),p=h(c+_),d=!r;++s<c;)p[s]=t[s];for(;++i<o;)(d||i<f)&&(p[e[i]]=n[i]);for(;_--;)p[s++]=n[i++];return p}function gf(n,t,e,r){for(var i=-1,f=n.length,o=-1,s=e.length,c=-1,_=t.length,p=Y(f-s,0),d=h(p+_),v=!r;++i<p;)d[i]=n[i];for(var x=i;++c<_;)d[x+c]=t[c];for(;++o<s;)(v||i<f)&&(d[x+e[o]]=n[i++]);return d}function rn(n,t){var e=-1,r=n.length;for(t||(t=h(r));++e<r;)t[e]=n[e];return t}function Hn(n,t,e,r){var i=!e;e||(e={});for(var f=-1,o=t.length;++f<o;){var s=t[f],c=r?r(e[s],n[s],s,e,n):l;c===l&&(c=n[s]),i?Yn(e,s,c):ae(e,s,c)}return e}function Oa(n,t){return Hn(n,wi(n),t)}function ba(n,t){return Hn(n,Rf(n),t)}function je(n,t){return function(e,r){var i=I(e)?Mo:js,f=t?t():{};return i(e,n,A(r,2),f)}}function Kt(n){return C(function(t,e){var r=-1,i=e.length,f=i>1?e[i-1]:l,o=i>2?e[2]:l;for(f=n.length>3&&typeof f=="function"?(i--,f):l,o&&tn(e[0],e[1],o)&&(f=i<3?l:f,i=1),t=M(t);++r<i;){var s=e[r];s&&n(t,s,r,f)}return t})}function _f(n,t){return function(e,r){if(e==null)return e;if(!un(e))return n(e,r);for(var i=e.length,f=t?i:-1,o=M(e);(t?f--:++f<i)&&r(o[f],f,o)!==!1;);return e}}function pf(n){return function(t,e,r){for(var i=-1,f=M(t),o=r(t),s=o.length;s--;){var c=o[n?s:++i];if(e(f[c],c,f)===!1)break}return t}}function Wa(n,t,e){var r=t&on,i=pe(n);function f(){var o=this&&this!==V&&this instanceof f?i:n;return o.apply(r?e:this,arguments)}return f}function df(n){return function(t){t=B(t);var e=Mt(t)?Bn(t):l,r=e?e[0]:t.charAt(0),i=e?gt(e,1).join(""):t.slice(1);return r[n]()+i}}function $t(n){return function(t){return Mr(_l(gl(t).replace(Eo,"")),n,"")}}function pe(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var e=qt(n.prototype),r=n.apply(e,t);return H(r)?r:e}}function Fa(n,t,e){var r=pe(n);function i(){for(var f=arguments.length,o=h(f),s=f,c=zt(i);s--;)o[s]=arguments[s];var _=f<3&&o[0]!==c&&o[f-1]!==c?[]:ot(o,c);if(f-=_.length,f<e)return mf(n,t,nr,i.placeholder,l,o,_,l,l,e-f);var p=this&&this!==V&&this instanceof i?r:n;return an(p,this,o)}return i}function vf(n){return function(t,e,r){var i=M(t);if(!un(t)){var f=A(e,3);t=J(t),e=function(s){return f(i[s],s,i)}}var o=n(t,e,r);return o>-1?i[f?t[o]:o]:l}}function wf(n){return Jn(function(t){var e=t.length,r=e,i=En.prototype.thru;for(n&&t.reverse();r--;){var f=t[r];if(typeof f!="function")throw new mn(G);if(i&&!o&&ir(f)=="wrapper")var o=new En([],!0)}for(r=o?r:e;++r<e;){f=t[r];var s=ir(f),c=s=="wrapper"?di(f):l;c&&Ai(c[0])&&c[1]==(On|dn|vn|xt)&&!c[4].length&&c[9]==1?o=o[ir(c[0])].apply(o,c[3]):o=f.length==1&&Ai(f)?o[s]():o.thru(f)}return function(){var _=arguments,p=_[0];if(o&&_.length==1&&I(p))return o.plant(p).value();for(var d=0,v=e?t[d].apply(this,_):p;++d<e;)v=t[d].call(this,v);return v}})}function nr(n,t,e,r,i,f,o,s,c,_){var p=t&On,d=t&on,v=t&sn,x=t&(dn|Kn),m=t&bt,T=v?l:pe(n);function E(){for(var O=arguments.length,W=h(O),_n=O;_n--;)W[_n]=arguments[_n];if(x)var en=zt(E),pn=zo(W,en);if(r&&(W=hf(W,r,i,x)),f&&(W=gf(W,f,o,x)),O-=pn,x&&O<_){var z=ot(W,en);return mf(n,t,nr,E.placeholder,e,W,z,s,c,_-O)}var Dn=d?e:this,jn=v?Dn[n]:n;return O=W.length,s?W=ja(W,s):m&&O>1&&W.reverse(),p&&c<O&&(W.length=c),this&&this!==V&&this instanceof E&&(jn=T||pe(jn)),jn.apply(Dn,W)}return E}function xf(n,t){return function(e,r){return la(e,n,t(r),{})}}function tr(n,t){return function(e,r){var i;if(e===l&&r===l)return t;if(e!==l&&(i=e),r!==l){if(i===l)return r;typeof e=="string"||typeof r=="string"?(e=hn(e),r=hn(r)):(e=rf(e),r=rf(r)),i=n(e,r)}return i}}function hi(n){return Jn(function(t){return t=N(t,cn(A())),C(function(e){var r=this;return n(t,function(i){return an(i,r,e)})})})}function er(n,t){t=t===l?" ":hn(t);var e=t.length;if(e<2)return e?ui(t,n):t;var r=ui(t,qe(n/Dt(t)));return Mt(t)?gt(Bn(r),0,n).join(""):r.slice(0,n)}function Ba(n,t,e,r){var i=t&on,f=pe(n);function o(){for(var s=-1,c=arguments.length,_=-1,p=r.length,d=h(p+c),v=this&&this!==V&&this instanceof o?f:n;++_<p;)d[_]=r[_];for(;c--;)d[_++]=arguments[++s];return an(v,i?e:this,d)}return o}function Af(n){return function(t,e,r){return r&&typeof r!="number"&&tn(t,e,r)&&(e=r=l),t=kn(t),e===l?(e=t,t=0):e=kn(e),r=r===l?t<e?1:-1:kn(r),xa(t,e,r,n)}}function rr(n){return function(t,e){return typeof t=="string"&&typeof e=="string"||(t=Rn(t),e=Rn(e)),n(t,e)}}function mf(n,t,e,r,i,f,o,s,c,_){var p=t&dn,d=p?o:l,v=p?l:o,x=p?f:l,m=p?l:f;t|=p?vn:wt,t&=~(p?wt:vn),t&Ot||(t&=-4);var T=[n,t,i,x,d,m,v,s,c,_],E=e.apply(l,T);return Ai(n)&&Ff(E,T),E.placeholder=r,Bf(E,n,t)}function gi(n){var t=Z[n];return function(e,r){if(e=Rn(e),r=r==null?0:k(R(r),292),r&&Fu(e)){var i=(B(e)+"e").split("e"),f=t(i[0]+"e"+(+i[1]+r));return i=(B(f)+"e").split("e"),+(i[0]+"e"+(+i[1]-r))}return t(e)}}var Pa=Gt&&1/We(new Gt([,-0]))[1]==Un?function(n){return new Gt(n)}:Pi;function Ef(n){return function(t){var e=j(t);return e==Wn?Kr(t):e==Fn?ko(t):$o(t,n(t))}}function Xn(n,t,e,r,i,f,o,s){var c=t&sn;if(!c&&typeof n!="function")throw new mn(G);var _=r?r.length:0;if(_||(t&=-97,r=i=l),o=o===l?o:Y(R(o),0),s=s===l?s:R(s),_-=i?i.length:0,t&wt){var p=r,d=i;r=i=l}var v=c?l:di(n),x=[n,t,e,r,i,p,d,f,o,s];if(v&&Va(x,v),n=x[0],t=x[1],e=x[2],r=x[3],i=x[4],s=x[9]=x[9]===l?c?0:n.length:Y(x[9]-_,0),!s&&t&(dn|Kn)&&(t&=-25),!t||t==on)var m=Wa(n,t,e);else t==dn||t==Kn?m=Fa(n,t,s):(t==vn||t==(on|vn))&&!i.length?m=Ba(n,t,e,r):m=nr.apply(l,x);var T=v?tf:Ff;return Bf(T(m,x),n,t)}function yf(n,t,e,r){return n===l||Mn(n,Nt[e])&&!P.call(r,e)?t:n}function Sf(n,t,e,r,i,f){return H(n)&&H(t)&&(f.set(t,n),Ve(n,t,l,Sf,f),f.delete(t)),n}function Ma(n){return we(n)?l:n}function If(n,t,e,r,i,f){var o=e&ut,s=n.length,c=t.length;if(s!=c&&!(o&&c>s))return!1;var _=f.get(n),p=f.get(t);if(_&&p)return _==t&&p==n;var d=-1,v=!0,x=e&Ct?new yt:l;for(f.set(n,t),f.set(t,n);++d<s;){var m=n[d],T=t[d];if(r)var E=o?r(T,m,d,t,n,f):r(m,T,d,n,t,f);if(E!==l){if(E)continue;v=!1;break}if(x){if(!Dr(t,function(O,W){if(!ie(x,W)&&(m===O||i(m,O,e,r,f)))return x.push(W)})){v=!1;break}}else if(!(m===T||i(m,T,e,r,f))){v=!1;break}}return f.delete(n),f.delete(t),v}function Da(n,t,e,r,i,f,o){switch(e){case Ft:if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case re:return!(n.byteLength!=t.byteLength||!f(new Ue(n),new Ue(t)));case Qt:case kt:case jt:return Mn(+n,+t);case Se:return n.name==t.name&&n.message==t.message;case ne:case te:return n==t+"";case Wn:var s=Kr;case Fn:var c=r&ut;if(s||(s=We),n.size!=t.size&&!c)return!1;var _=o.get(n);if(_)return _==t;r|=Ct,o.set(n,t);var p=If(s(n),s(t),r,i,f,o);return o.delete(n),p;case Re:if(se)return se.call(n)==se.call(t)}return!1}function Ua(n,t,e,r,i,f){var o=e&ut,s=_i(n),c=s.length,_=_i(t),p=_.length;if(c!=p&&!o)return!1;for(var d=c;d--;){var v=s[d];if(!(o?v in t:P.call(t,v)))return!1}var x=f.get(n),m=f.get(t);if(x&&m)return x==t&&m==n;var T=!0;f.set(n,t),f.set(t,n);for(var E=o;++d<c;){v=s[d];var O=n[v],W=t[v];if(r)var _n=o?r(W,O,v,t,n,f):r(O,W,v,n,t,f);if(!(_n===l?O===W||i(O,W,e,r,f):_n)){T=!1;break}E||(E=v=="constructor")}if(T&&!E){var en=n.constructor,pn=t.constructor;en!=pn&&"constructor"in n&&"constructor"in t&&!(typeof en=="function"&&en instanceof en&&typeof pn=="function"&&pn instanceof pn)&&(T=!1)}return f.delete(n),f.delete(t),T}function Jn(n){return Ei(bf(n,l,Gf),n+"")}function _i(n){return $u(n,J,wi)}function pi(n){return $u(n,fn,Rf)}var di=$e?function(n){return $e.get(n)}:Pi;function ir(n){for(var t=n.name+"",e=Ht[t],r=P.call(Ht,t)?e.length:0;r--;){var i=e[r],f=i.func;if(f==null||f==n)return i.name}return t}function zt(n){var t=P.call(u,"placeholder")?u:n;return t.placeholder}function A(){var n=u.iteratee||Fi;return n=n===Fi?Yu:n,arguments.length?n(arguments[0],arguments[1]):n}function ur(n,t){var e=n.__data__;return Za(t)?e[typeof t=="string"?"string":"hash"]:e.map}function vi(n){for(var t=J(n),e=t.length;e--;){var r=t[e],i=n[r];t[e]=[r,i,Cf(i)]}return t}function Rt(n,t){var e=Jo(n,t);return Zu(e)?e:l}function Na(n){var t=P.call(n,mt),e=n[mt];try{n[mt]=l;var r=!0}catch{}var i=Me.call(n);return r&&(t?n[mt]=e:delete n[mt]),i}var wi=zr?function(n){return n==null?[]:(n=M(n),ft(zr(n),function(t){return bu.call(n,t)}))}:Mi,Rf=zr?function(n){for(var t=[];n;)lt(t,wi(n)),n=Ne(n);return t}:Mi,j=nn;(Zr&&j(new Zr(new ArrayBuffer(1)))!=Ft||fe&&j(new fe)!=Wn||Yr&&j(Yr.resolve())!=Hi||Gt&&j(new Gt)!=Fn||le&&j(new le)!=ee)&&(j=function(n){var t=nn(n),e=t==$n?n.constructor:l,r=e?Tt(e):"";if(r)switch(r){case ms:return Ft;case Es:return Wn;case ys:return Hi;case Ss:return Fn;case Is:return ee}return t});function Ga(n,t,e){for(var r=-1,i=e.length;++r<i;){var f=e[r],o=f.size;switch(f.type){case"drop":n+=o;break;case"dropRight":t-=o;break;case"take":t=k(t,n+o);break;case"takeRight":n=Y(n,t-o);break}}return{start:n,end:t}}function Ha(n){var t=n.match(Zl);return t?t[1].split(Yl):[]}function Tf(n,t,e){t=ht(t,n);for(var r=-1,i=t.length,f=!1;++r<i;){var o=qn(t[r]);if(!(f=n!=null&&e(n,o)))break;n=n[o]}return f||++r!=i?f:(i=n==null?0:n.length,!!i&&hr(i)&&Vn(o,i)&&(I(n)||Lt(n)))}function qa(n){var t=n.length,e=new n.constructor(t);return t&&typeof n[0]=="string"&&P.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Lf(n){return typeof n.constructor=="function"&&!de(n)?qt(Ne(n)):{}}function Ka(n,t,e){var r=n.constructor;switch(t){case re:return ci(n);case Qt:case kt:return new r(+n);case Ft:return Ra(n,e);case vr:case wr:case xr:case Ar:case mr:case Er:case yr:case Sr:case Ir:return af(n,e);case Wn:return new r;case jt:case te:return new r(n);case ne:return Ta(n);case Fn:return new r;case Re:return La(n)}}function $a(n,t){var e=t.length;if(!e)return n;var r=e-1;return t[r]=(e>1?"& ":"")+t[r],t=t.join(e>2?", ":" "),n.replace(zl,`{
|
|
2
|
+
/* [wrapped with `+t+`] */
|
|
3
|
+
`)}function za(n){return I(n)||Lt(n)||!!(Wu&&n&&n[Wu])}function Vn(n,t){var e=typeof n;return t=t??bn,!!t&&(e=="number"||e!="symbol"&&eo.test(n))&&n>-1&&n%1==0&&n<t}function tn(n,t,e){if(!H(e))return!1;var r=typeof t;return(r=="number"?un(e)&&Vn(t,e.length):r=="string"&&t in e)?Mn(e[t],n):!1}function xi(n,t){if(I(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||gn(n)?!0:Hl.test(n)||!Gl.test(n)||t!=null&&n in M(t)}function Za(n){var t=typeof n;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?n!=="__proto__":n===null}function Ai(n){var t=ir(n),e=u[t];if(typeof e!="function"||!(t in b.prototype))return!1;if(n===e)return!0;var r=di(e);return!!r&&n===r[0]}function Ya(n){return!!Lu&&Lu in n}var Xa=Be?Qn:Di;function de(n){var t=n&&n.constructor,e=typeof t=="function"&&t.prototype||Nt;return n===e}function Cf(n){return n===n&&!H(n)}function Of(n,t){return function(e){return e==null?!1:e[n]===t&&(t!==l||n in M(e))}}function Ja(n){var t=ar(n,function(r){return e.size===Jt&&e.clear(),r}),e=t.cache;return t}function Va(n,t){var e=n[1],r=t[1],i=e|r,f=i<(on|sn|On),o=r==On&&e==dn||r==On&&e==xt&&n[7].length<=t[8]||r==(On|xt)&&t[7].length<=t[8]&&e==dn;if(!(f||o))return n;r&on&&(n[2]=t[2],i|=e&on?0:Ot);var s=t[3];if(s){var c=n[3];n[3]=c?hf(c,s,t[4]):s,n[4]=c?ot(n[3],rt):t[4]}return s=t[5],s&&(c=n[5],n[5]=c?gf(c,s,t[6]):s,n[6]=c?ot(n[5],rt):t[6]),s=t[7],s&&(n[7]=s),r&On&&(n[8]=n[8]==null?t[8]:k(n[8],t[8])),n[9]==null&&(n[9]=t[9]),n[0]=t[0],n[1]=i,n}function Qa(n){var t=[];if(n!=null)for(var e in M(n))t.push(e);return t}function ka(n){return Me.call(n)}function bf(n,t,e){return t=Y(t===l?n.length-1:t,0),function(){for(var r=arguments,i=-1,f=Y(r.length-t,0),o=h(f);++i<f;)o[i]=r[t+i];i=-1;for(var s=h(t+1);++i<t;)s[i]=r[i];return s[t]=e(o),an(n,this,s)}}function Wf(n,t){return t.length<2?n:It(n,Sn(t,0,-1))}function ja(n,t){for(var e=n.length,r=k(t.length,e),i=rn(n);r--;){var f=t[r];n[r]=Vn(f,e)?i[f]:l}return n}function mi(n,t){if(!(t==="constructor"&&typeof n[t]=="function")&&t!="__proto__")return n[t]}var Ff=Pf(tf),ve=_s||function(n,t){return V.setTimeout(n,t)},Ei=Pf(Ea);function Bf(n,t,e){var r=t+"";return Ei(n,$a(r,nc(Ha(r),e)))}function Pf(n){var t=0,e=0;return function(){var r=ws(),i=pr-(r-e);if(e=r,i>0){if(++t>=wn)return arguments[0]}else t=0;return n.apply(l,arguments)}}function fr(n,t){var e=-1,r=n.length,i=r-1;for(t=t===l?r:t;++e<t;){var f=ii(e,i),o=n[f];n[f]=n[e],n[e]=o}return n.length=t,n}var Mf=Ja(function(n){var t=[];return n.charCodeAt(0)===46&&t.push(""),n.replace(ql,function(e,r,i,f){t.push(i?f.replace(Vl,"$1"):r||e)}),t});function qn(n){if(typeof n=="string"||gn(n))return n;var t=n+"";return t=="0"&&1/n==-Un?"-0":t}function Tt(n){if(n!=null){try{return Pe.call(n)}catch{}try{return n+""}catch{}}return""}function nc(n,t){return An(Rl,function(e){var r="_."+e[0];t&e[1]&&!Oe(n,r)&&n.push(r)}),n.sort()}function Df(n){if(n instanceof b)return n.clone();var t=new En(n.__wrapped__,n.__chain__);return t.__actions__=rn(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}function tc(n,t,e){(e?tn(n,t,e):t===l)?t=1:t=Y(R(t),0);var r=n==null?0:n.length;if(!r||t<1)return[];for(var i=0,f=0,o=h(qe(r/t));i<r;)o[f++]=Sn(n,i,i+=t);return o}function ec(n){for(var t=-1,e=n==null?0:n.length,r=0,i=[];++t<e;){var f=n[t];f&&(i[r++]=f)}return i}function rc(){var n=arguments.length;if(!n)return[];for(var t=h(n-1),e=arguments[0],r=n;r--;)t[r-1]=arguments[r];return lt(I(e)?rn(e):[e],Q(t,1))}var ic=C(function(n,t){return $(n)?ce(n,Q(t,1,$,!0)):[]}),uc=C(function(n,t){var e=In(t);return $(e)&&(e=l),$(n)?ce(n,Q(t,1,$,!0),A(e,2)):[]}),fc=C(function(n,t){var e=In(t);return $(e)&&(e=l),$(n)?ce(n,Q(t,1,$,!0),l,e):[]});function lc(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===l?1:R(t),Sn(n,t<0?0:t,r)):[]}function oc(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===l?1:R(t),t=r-t,Sn(n,0,t<0?0:t)):[]}function sc(n,t){return n&&n.length?ke(n,A(t,3),!0,!0):[]}function ac(n,t){return n&&n.length?ke(n,A(t,3),!0):[]}function cc(n,t,e,r){var i=n==null?0:n.length;return i?(e&&typeof e!="number"&&tn(n,t,e)&&(e=0,r=i),ra(n,t,e,r)):[]}function Uf(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var i=e==null?0:R(e);return i<0&&(i=Y(r+i,0)),be(n,A(t,3),i)}function Nf(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var i=r-1;return e!==l&&(i=R(e),i=e<0?Y(r+i,0):k(i,r-1)),be(n,A(t,3),i,!0)}function Gf(n){var t=n==null?0:n.length;return t?Q(n,1):[]}function hc(n){var t=n==null?0:n.length;return t?Q(n,Un):[]}function gc(n,t){var e=n==null?0:n.length;return e?(t=t===l?1:R(t),Q(n,t)):[]}function _c(n){for(var t=-1,e=n==null?0:n.length,r={};++t<e;){var i=n[t];r[i[0]]=i[1]}return r}function Hf(n){return n&&n.length?n[0]:l}function pc(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var i=e==null?0:R(e);return i<0&&(i=Y(r+i,0)),Pt(n,t,i)}function dc(n){var t=n==null?0:n.length;return t?Sn(n,0,-1):[]}var vc=C(function(n){var t=N(n,si);return t.length&&t[0]===n[0]?jr(t):[]}),wc=C(function(n){var t=In(n),e=N(n,si);return t===In(e)?t=l:e.pop(),e.length&&e[0]===n[0]?jr(e,A(t,2)):[]}),xc=C(function(n){var t=In(n),e=N(n,si);return t=typeof t=="function"?t:l,t&&e.pop(),e.length&&e[0]===n[0]?jr(e,l,t):[]});function Ac(n,t){return n==null?"":ds.call(n,t)}function In(n){var t=n==null?0:n.length;return t?n[t-1]:l}function mc(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var i=r;return e!==l&&(i=R(e),i=i<0?Y(r+i,0):k(i,r-1)),t===t?ns(n,t,i):be(n,Au,i,!0)}function Ec(n,t){return n&&n.length?Qu(n,R(t)):l}var yc=C(qf);function qf(n,t){return n&&n.length&&t&&t.length?ri(n,t):n}function Sc(n,t,e){return n&&n.length&&t&&t.length?ri(n,t,A(e,2)):n}function Ic(n,t,e){return n&&n.length&&t&&t.length?ri(n,t,l,e):n}var Rc=Jn(function(n,t){var e=n==null?0:n.length,r=Jr(n,t);return nf(n,N(t,function(i){return Vn(i,e)?+i:i}).sort(cf)),r});function Tc(n,t){var e=[];if(!(n&&n.length))return e;var r=-1,i=[],f=n.length;for(t=A(t,3);++r<f;){var o=n[r];t(o,r,n)&&(e.push(o),i.push(r))}return nf(n,i),e}function yi(n){return n==null?n:As.call(n)}function Lc(n,t,e){var r=n==null?0:n.length;return r?(e&&typeof e!="number"&&tn(n,t,e)?(t=0,e=r):(t=t==null?0:R(t),e=e===l?r:R(e)),Sn(n,t,e)):[]}function Cc(n,t){return Qe(n,t)}function Oc(n,t,e){return fi(n,t,A(e,2))}function bc(n,t){var e=n==null?0:n.length;if(e){var r=Qe(n,t);if(r<e&&Mn(n[r],t))return r}return-1}function Wc(n,t){return Qe(n,t,!0)}function Fc(n,t,e){return fi(n,t,A(e,2),!0)}function Bc(n,t){var e=n==null?0:n.length;if(e){var r=Qe(n,t,!0)-1;if(Mn(n[r],t))return r}return-1}function Pc(n){return n&&n.length?ef(n):[]}function Mc(n,t){return n&&n.length?ef(n,A(t,2)):[]}function Dc(n){var t=n==null?0:n.length;return t?Sn(n,1,t):[]}function Uc(n,t,e){return n&&n.length?(t=e||t===l?1:R(t),Sn(n,0,t<0?0:t)):[]}function Nc(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===l?1:R(t),t=r-t,Sn(n,t<0?0:t,r)):[]}function Gc(n,t){return n&&n.length?ke(n,A(t,3),!1,!0):[]}function Hc(n,t){return n&&n.length?ke(n,A(t,3)):[]}var qc=C(function(n){return ct(Q(n,1,$,!0))}),Kc=C(function(n){var t=In(n);return $(t)&&(t=l),ct(Q(n,1,$,!0),A(t,2))}),$c=C(function(n){var t=In(n);return t=typeof t=="function"?t:l,ct(Q(n,1,$,!0),l,t)});function zc(n){return n&&n.length?ct(n):[]}function Zc(n,t){return n&&n.length?ct(n,A(t,2)):[]}function Yc(n,t){return t=typeof t=="function"?t:l,n&&n.length?ct(n,l,t):[]}function Si(n){if(!(n&&n.length))return[];var t=0;return n=ft(n,function(e){if($(e))return t=Y(e.length,t),!0}),Hr(t,function(e){return N(n,Ur(e))})}function Kf(n,t){if(!(n&&n.length))return[];var e=Si(n);return t==null?e:N(e,function(r){return an(t,l,r)})}var Xc=C(function(n,t){return $(n)?ce(n,t):[]}),Jc=C(function(n){return oi(ft(n,$))}),Vc=C(function(n){var t=In(n);return $(t)&&(t=l),oi(ft(n,$),A(t,2))}),Qc=C(function(n){var t=In(n);return t=typeof t=="function"?t:l,oi(ft(n,$),l,t)}),kc=C(Si);function jc(n,t){return lf(n||[],t||[],ae)}function nh(n,t){return lf(n||[],t||[],_e)}var th=C(function(n){var t=n.length,e=t>1?n[t-1]:l;return e=typeof e=="function"?(n.pop(),e):l,Kf(n,e)});function $f(n){var t=u(n);return t.__chain__=!0,t}function eh(n,t){return t(n),n}function lr(n,t){return t(n)}var rh=Jn(function(n){var t=n.length,e=t?n[0]:0,r=this.__wrapped__,i=function(f){return Jr(f,n)};return t>1||this.__actions__.length||!(r instanceof b)||!Vn(e)?this.thru(i):(r=r.slice(e,+e+(t?1:0)),r.__actions__.push({func:lr,args:[i],thisArg:l}),new En(r,this.__chain__).thru(function(f){return t&&!f.length&&f.push(l),f}))});function ih(){return $f(this)}function uh(){return new En(this.value(),this.__chain__)}function fh(){this.__values__===l&&(this.__values__=il(this.value()));var n=this.__index__>=this.__values__.length,t=n?l:this.__values__[this.__index__++];return{done:n,value:t}}function lh(){return this}function oh(n){for(var t,e=this;e instanceof Ze;){var r=Df(e);r.__index__=0,r.__values__=l,t?i.__wrapped__=r:t=r;var i=r;e=e.__wrapped__}return i.__wrapped__=n,t}function sh(){var n=this.__wrapped__;if(n instanceof b){var t=n;return this.__actions__.length&&(t=new b(this)),t=t.reverse(),t.__actions__.push({func:lr,args:[yi],thisArg:l}),new En(t,this.__chain__)}return this.thru(yi)}function ah(){return ff(this.__wrapped__,this.__actions__)}var ch=je(function(n,t,e){P.call(n,e)?++n[e]:Yn(n,e,1)});function hh(n,t,e){var r=I(n)?wu:ea;return e&&tn(n,t,e)&&(t=l),r(n,A(t,3))}function gh(n,t){var e=I(n)?ft:qu;return e(n,A(t,3))}var _h=vf(Uf),ph=vf(Nf);function dh(n,t){return Q(or(n,t),1)}function vh(n,t){return Q(or(n,t),Un)}function wh(n,t,e){return e=e===l?1:R(e),Q(or(n,t),e)}function zf(n,t){var e=I(n)?An:at;return e(n,A(t,3))}function Zf(n,t){var e=I(n)?Do:Hu;return e(n,A(t,3))}var xh=je(function(n,t,e){P.call(n,e)?n[e].push(t):Yn(n,e,[t])});function Ah(n,t,e,r){n=un(n)?n:Yt(n),e=e&&!r?R(e):0;var i=n.length;return e<0&&(e=Y(i+e,0)),gr(n)?e<=i&&n.indexOf(t,e)>-1:!!i&&Pt(n,t,e)>-1}var mh=C(function(n,t,e){var r=-1,i=typeof t=="function",f=un(n)?h(n.length):[];return at(n,function(o){f[++r]=i?an(t,o,e):he(o,t,e)}),f}),Eh=je(function(n,t,e){Yn(n,e,t)});function or(n,t){var e=I(n)?N:Xu;return e(n,A(t,3))}function yh(n,t,e,r){return n==null?[]:(I(t)||(t=t==null?[]:[t]),e=r?l:e,I(e)||(e=e==null?[]:[e]),ku(n,t,e))}var Sh=je(function(n,t,e){n[e?0:1].push(t)},function(){return[[],[]]});function Ih(n,t,e){var r=I(n)?Mr:Eu,i=arguments.length<3;return r(n,A(t,4),e,i,at)}function Rh(n,t,e){var r=I(n)?Uo:Eu,i=arguments.length<3;return r(n,A(t,4),e,i,Hu)}function Th(n,t){var e=I(n)?ft:qu;return e(n,cr(A(t,3)))}function Lh(n){var t=I(n)?Du:Aa;return t(n)}function Ch(n,t,e){(e?tn(n,t,e):t===l)?t=1:t=R(t);var r=I(n)?Qs:ma;return r(n,t)}function Oh(n){var t=I(n)?ks:ya;return t(n)}function bh(n){if(n==null)return 0;if(un(n))return gr(n)?Dt(n):n.length;var t=j(n);return t==Wn||t==Fn?n.size:ti(n).length}function Wh(n,t,e){var r=I(n)?Dr:Sa;return e&&tn(n,t,e)&&(t=l),r(n,A(t,3))}var Fh=C(function(n,t){if(n==null)return[];var e=t.length;return e>1&&tn(n,t[0],t[1])?t=[]:e>2&&tn(t[0],t[1],t[2])&&(t=[t[0]]),ku(n,Q(t,1),[])}),sr=gs||function(){return V.Date.now()};function Bh(n,t){if(typeof t!="function")throw new mn(G);return n=R(n),function(){if(--n<1)return t.apply(this,arguments)}}function Yf(n,t,e){return t=e?l:t,t=n&&t==null?n.length:t,Xn(n,On,l,l,l,l,t)}function Xf(n,t){var e;if(typeof t!="function")throw new mn(G);return n=R(n),function(){return--n>0&&(e=t.apply(this,arguments)),n<=1&&(t=l),e}}var Ii=C(function(n,t,e){var r=on;if(e.length){var i=ot(e,zt(Ii));r|=vn}return Xn(n,r,t,e,i)}),Jf=C(function(n,t,e){var r=on|sn;if(e.length){var i=ot(e,zt(Jf));r|=vn}return Xn(t,r,n,e,i)});function Vf(n,t,e){t=e?l:t;var r=Xn(n,dn,l,l,l,l,l,t);return r.placeholder=Vf.placeholder,r}function Qf(n,t,e){t=e?l:t;var r=Xn(n,Kn,l,l,l,l,l,t);return r.placeholder=Qf.placeholder,r}function kf(n,t,e){var r,i,f,o,s,c,_=0,p=!1,d=!1,v=!0;if(typeof n!="function")throw new mn(G);t=Rn(t)||0,H(e)&&(p=!!e.leading,d="maxWait"in e,f=d?Y(Rn(e.maxWait)||0,t):f,v="trailing"in e?!!e.trailing:v);function x(z){var Dn=r,jn=i;return r=i=l,_=z,o=n.apply(jn,Dn),o}function m(z){return _=z,s=ve(O,t),p?x(z):o}function T(z){var Dn=z-c,jn=z-_,vl=t-Dn;return d?k(vl,f-jn):vl}function E(z){var Dn=z-c,jn=z-_;return c===l||Dn>=t||Dn<0||d&&jn>=f}function O(){var z=sr();if(E(z))return W(z);s=ve(O,T(z))}function W(z){return s=l,v&&r?x(z):(r=i=l,o)}function _n(){s!==l&&of(s),_=0,r=c=i=s=l}function en(){return s===l?o:W(sr())}function pn(){var z=sr(),Dn=E(z);if(r=arguments,i=this,c=z,Dn){if(s===l)return m(c);if(d)return of(s),s=ve(O,t),x(c)}return s===l&&(s=ve(O,t)),o}return pn.cancel=_n,pn.flush=en,pn}var Ph=C(function(n,t){return Gu(n,1,t)}),Mh=C(function(n,t,e){return Gu(n,Rn(t)||0,e)});function Dh(n){return Xn(n,bt)}function ar(n,t){if(typeof n!="function"||t!=null&&typeof t!="function")throw new mn(G);var e=function(){var r=arguments,i=t?t.apply(this,r):r[0],f=e.cache;if(f.has(i))return f.get(i);var o=n.apply(this,r);return e.cache=f.set(i,o)||f,o};return e.cache=new(ar.Cache||Zn),e}ar.Cache=Zn;function cr(n){if(typeof n!="function")throw new mn(G);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function Uh(n){return Xf(2,n)}var Nh=Ia(function(n,t){t=t.length==1&&I(t[0])?N(t[0],cn(A())):N(Q(t,1),cn(A()));var e=t.length;return C(function(r){for(var i=-1,f=k(r.length,e);++i<f;)r[i]=t[i].call(this,r[i]);return an(n,this,r)})}),Ri=C(function(n,t){var e=ot(t,zt(Ri));return Xn(n,vn,l,t,e)}),jf=C(function(n,t){var e=ot(t,zt(jf));return Xn(n,wt,l,t,e)}),Gh=Jn(function(n,t){return Xn(n,xt,l,l,l,t)});function Hh(n,t){if(typeof n!="function")throw new mn(G);return t=t===l?t:R(t),C(n,t)}function qh(n,t){if(typeof n!="function")throw new mn(G);return t=t==null?0:Y(R(t),0),C(function(e){var r=e[t],i=gt(e,0,t);return r&<(i,r),an(n,this,i)})}function Kh(n,t,e){var r=!0,i=!0;if(typeof n!="function")throw new mn(G);return H(e)&&(r="leading"in e?!!e.leading:r,i="trailing"in e?!!e.trailing:i),kf(n,t,{leading:r,maxWait:t,trailing:i})}function $h(n){return Yf(n,1)}function zh(n,t){return Ri(ai(t),n)}function Zh(){if(!arguments.length)return[];var n=arguments[0];return I(n)?n:[n]}function Yh(n){return yn(n,it)}function Xh(n,t){return t=typeof t=="function"?t:l,yn(n,it,t)}function Jh(n){return yn(n,Cn|it)}function Vh(n,t){return t=typeof t=="function"?t:l,yn(n,Cn|it,t)}function Qh(n,t){return t==null||Nu(n,t,J(t))}function Mn(n,t){return n===t||n!==n&&t!==t}var kh=rr(kr),jh=rr(function(n,t){return n>=t}),Lt=zu((function(){return arguments})())?zu:function(n){return K(n)&&P.call(n,"callee")&&!bu.call(n,"callee")},I=h.isArray,ng=hu?cn(hu):oa;function un(n){return n!=null&&hr(n.length)&&!Qn(n)}function $(n){return K(n)&&un(n)}function tg(n){return n===!0||n===!1||K(n)&&nn(n)==Qt}var _t=ps||Di,eg=gu?cn(gu):sa;function rg(n){return K(n)&&n.nodeType===1&&!we(n)}function ig(n){if(n==null)return!0;if(un(n)&&(I(n)||typeof n=="string"||typeof n.splice=="function"||_t(n)||Zt(n)||Lt(n)))return!n.length;var t=j(n);if(t==Wn||t==Fn)return!n.size;if(de(n))return!ti(n).length;for(var e in n)if(P.call(n,e))return!1;return!0}function ug(n,t){return ge(n,t)}function fg(n,t,e){e=typeof e=="function"?e:l;var r=e?e(n,t):l;return r===l?ge(n,t,l,e):!!r}function Ti(n){if(!K(n))return!1;var t=nn(n);return t==Se||t==Ll||typeof n.message=="string"&&typeof n.name=="string"&&!we(n)}function lg(n){return typeof n=="number"&&Fu(n)}function Qn(n){if(!H(n))return!1;var t=nn(n);return t==Ie||t==Gi||t==Tl||t==Ol}function nl(n){return typeof n=="number"&&n==R(n)}function hr(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=bn}function H(n){var t=typeof n;return n!=null&&(t=="object"||t=="function")}function K(n){return n!=null&&typeof n=="object"}var tl=_u?cn(_u):ca;function og(n,t){return n===t||ni(n,t,vi(t))}function sg(n,t,e){return e=typeof e=="function"?e:l,ni(n,t,vi(t),e)}function ag(n){return el(n)&&n!=+n}function cg(n){if(Xa(n))throw new S(pt);return Zu(n)}function hg(n){return n===null}function gg(n){return n==null}function el(n){return typeof n=="number"||K(n)&&nn(n)==jt}function we(n){if(!K(n)||nn(n)!=$n)return!1;var t=Ne(n);if(t===null)return!0;var e=P.call(t,"constructor")&&t.constructor;return typeof e=="function"&&e instanceof e&&Pe.call(e)==ss}var Li=pu?cn(pu):ha;function _g(n){return nl(n)&&n>=-bn&&n<=bn}var rl=du?cn(du):ga;function gr(n){return typeof n=="string"||!I(n)&&K(n)&&nn(n)==te}function gn(n){return typeof n=="symbol"||K(n)&&nn(n)==Re}var Zt=vu?cn(vu):_a;function pg(n){return n===l}function dg(n){return K(n)&&j(n)==ee}function vg(n){return K(n)&&nn(n)==Wl}var wg=rr(ei),xg=rr(function(n,t){return n<=t});function il(n){if(!n)return[];if(un(n))return gr(n)?Bn(n):rn(n);if(ue&&n[ue])return Qo(n[ue]());var t=j(n),e=t==Wn?Kr:t==Fn?We:Yt;return e(n)}function kn(n){if(!n)return n===0?n:0;if(n=Rn(n),n===Un||n===-Un){var t=n<0?-1:1;return t*yl}return n===n?n:0}function R(n){var t=kn(n),e=t%1;return t===t?e?t-e:t:0}function ul(n){return n?St(R(n),0,Nn):0}function Rn(n){if(typeof n=="number")return n;if(gn(n))return Ee;if(H(n)){var t=typeof n.valueOf=="function"?n.valueOf():n;n=H(t)?t+"":t}if(typeof n!="string")return n===0?n:+n;n=yu(n);var e=jl.test(n);return e||to.test(n)?Bo(n.slice(2),e?2:8):kl.test(n)?Ee:+n}function fl(n){return Hn(n,fn(n))}function Ag(n){return n?St(R(n),-bn,bn):n===0?n:0}function B(n){return n==null?"":hn(n)}var mg=Kt(function(n,t){if(de(t)||un(t)){Hn(t,J(t),n);return}for(var e in t)P.call(t,e)&&ae(n,e,t[e])}),ll=Kt(function(n,t){Hn(t,fn(t),n)}),_r=Kt(function(n,t,e,r){Hn(t,fn(t),n,r)}),Eg=Kt(function(n,t,e,r){Hn(t,J(t),n,r)}),yg=Jn(Jr);function Sg(n,t){var e=qt(n);return t==null?e:Uu(e,t)}var Ig=C(function(n,t){n=M(n);var e=-1,r=t.length,i=r>2?t[2]:l;for(i&&tn(t[0],t[1],i)&&(r=1);++e<r;)for(var f=t[e],o=fn(f),s=-1,c=o.length;++s<c;){var _=o[s],p=n[_];(p===l||Mn(p,Nt[_])&&!P.call(n,_))&&(n[_]=f[_])}return n}),Rg=C(function(n){return n.push(l,Sf),an(ol,l,n)});function Tg(n,t){return xu(n,A(t,3),Gn)}function Lg(n,t){return xu(n,A(t,3),Qr)}function Cg(n,t){return n==null?n:Vr(n,A(t,3),fn)}function Og(n,t){return n==null?n:Ku(n,A(t,3),fn)}function bg(n,t){return n&&Gn(n,A(t,3))}function Wg(n,t){return n&&Qr(n,A(t,3))}function Fg(n){return n==null?[]:Je(n,J(n))}function Bg(n){return n==null?[]:Je(n,fn(n))}function Ci(n,t,e){var r=n==null?l:It(n,t);return r===l?e:r}function Pg(n,t){return n!=null&&Tf(n,t,ia)}function Oi(n,t){return n!=null&&Tf(n,t,ua)}var Mg=xf(function(n,t,e){t!=null&&typeof t.toString!="function"&&(t=Me.call(t)),n[t]=e},Wi(ln)),Dg=xf(function(n,t,e){t!=null&&typeof t.toString!="function"&&(t=Me.call(t)),P.call(n,t)?n[t].push(e):n[t]=[e]},A),Ug=C(he);function J(n){return un(n)?Mu(n):ti(n)}function fn(n){return un(n)?Mu(n,!0):pa(n)}function Ng(n,t){var e={};return t=A(t,3),Gn(n,function(r,i,f){Yn(e,t(r,i,f),r)}),e}function Gg(n,t){var e={};return t=A(t,3),Gn(n,function(r,i,f){Yn(e,i,t(r,i,f))}),e}var Hg=Kt(function(n,t,e){Ve(n,t,e)}),ol=Kt(function(n,t,e,r){Ve(n,t,e,r)}),qg=Jn(function(n,t){var e={};if(n==null)return e;var r=!1;t=N(t,function(f){return f=ht(f,n),r||(r=f.length>1),f}),Hn(n,pi(n),e),r&&(e=yn(e,Cn|vt|it,Ma));for(var i=t.length;i--;)li(e,t[i]);return e});function Kg(n,t){return sl(n,cr(A(t)))}var $g=Jn(function(n,t){return n==null?{}:va(n,t)});function sl(n,t){if(n==null)return{};var e=N(pi(n),function(r){return[r]});return t=A(t),ju(n,e,function(r,i){return t(r,i[0])})}function zg(n,t,e){t=ht(t,n);var r=-1,i=t.length;for(i||(i=1,n=l);++r<i;){var f=n==null?l:n[qn(t[r])];f===l&&(r=i,f=e),n=Qn(f)?f.call(n):f}return n}function Zg(n,t,e){return n==null?n:_e(n,t,e)}function Yg(n,t,e,r){return r=typeof r=="function"?r:l,n==null?n:_e(n,t,e,r)}var al=Ef(J),cl=Ef(fn);function Xg(n,t,e){var r=I(n),i=r||_t(n)||Zt(n);if(t=A(t,4),e==null){var f=n&&n.constructor;i?e=r?new f:[]:H(n)?e=Qn(f)?qt(Ne(n)):{}:e={}}return(i?An:Gn)(n,function(o,s,c){return t(e,o,s,c)}),e}function Jg(n,t){return n==null?!0:li(n,t)}function Vg(n,t,e){return n==null?n:uf(n,t,ai(e))}function Qg(n,t,e,r){return r=typeof r=="function"?r:l,n==null?n:uf(n,t,ai(e),r)}function Yt(n){return n==null?[]:qr(n,J(n))}function kg(n){return n==null?[]:qr(n,fn(n))}function jg(n,t,e){return e===l&&(e=t,t=l),e!==l&&(e=Rn(e),e=e===e?e:0),t!==l&&(t=Rn(t),t=t===t?t:0),St(Rn(n),t,e)}function n_(n,t,e){return t=kn(t),e===l?(e=t,t=0):e=kn(e),n=Rn(n),fa(n,t,e)}function t_(n,t,e){if(e&&typeof e!="boolean"&&tn(n,t,e)&&(t=e=l),e===l&&(typeof t=="boolean"?(e=t,t=l):typeof n=="boolean"&&(e=n,n=l)),n===l&&t===l?(n=0,t=1):(n=kn(n),t===l?(t=n,n=0):t=kn(t)),n>t){var r=n;n=t,t=r}if(e||n%1||t%1){var i=Bu();return k(n+i*(t-n+Fo("1e-"+((i+"").length-1))),t)}return ii(n,t)}var e_=$t(function(n,t,e){return t=t.toLowerCase(),n+(e?hl(t):t)});function hl(n){return bi(B(n).toLowerCase())}function gl(n){return n=B(n),n&&n.replace(ro,Zo).replace(yo,"")}function r_(n,t,e){n=B(n),t=hn(t);var r=n.length;e=e===l?r:St(R(e),0,r);var i=e;return e-=t.length,e>=0&&n.slice(e,i)==t}function i_(n){return n=B(n),n&&Dl.test(n)?n.replace(Ki,Yo):n}function u_(n){return n=B(n),n&&Kl.test(n)?n.replace(Rr,"\\$&"):n}var f_=$t(function(n,t,e){return n+(e?"-":"")+t.toLowerCase()}),l_=$t(function(n,t,e){return n+(e?" ":"")+t.toLowerCase()}),o_=df("toLowerCase");function s_(n,t,e){n=B(n),t=R(t);var r=t?Dt(n):0;if(!t||r>=t)return n;var i=(t-r)/2;return er(Ke(i),e)+n+er(qe(i),e)}function a_(n,t,e){n=B(n),t=R(t);var r=t?Dt(n):0;return t&&r<t?n+er(t-r,e):n}function c_(n,t,e){n=B(n),t=R(t);var r=t?Dt(n):0;return t&&r<t?er(t-r,e)+n:n}function h_(n,t,e){return e||t==null?t=0:t&&(t=+t),xs(B(n).replace(Tr,""),t||0)}function g_(n,t,e){return(e?tn(n,t,e):t===l)?t=1:t=R(t),ui(B(n),t)}function __(){var n=arguments,t=B(n[0]);return n.length<3?t:t.replace(n[1],n[2])}var p_=$t(function(n,t,e){return n+(e?"_":"")+t.toLowerCase()});function d_(n,t,e){return e&&typeof e!="number"&&tn(n,t,e)&&(t=e=l),e=e===l?Nn:e>>>0,e?(n=B(n),n&&(typeof t=="string"||t!=null&&!Li(t))&&(t=hn(t),!t&&Mt(n))?gt(Bn(n),0,e):n.split(t,e)):[]}var v_=$t(function(n,t,e){return n+(e?" ":"")+bi(t)});function w_(n,t,e){return n=B(n),e=e==null?0:St(R(e),0,n.length),t=hn(t),n.slice(e,e+t.length)==t}function x_(n,t,e){var r=u.templateSettings;e&&tn(n,t,e)&&(t=l),n=B(n),t=_r({},t,r,yf);var i=_r({},t.imports,r.imports,yf),f=J(i),o=qr(i,f),s,c,_=0,p=t.interpolate||Te,d="__p += '",v=$r((t.escape||Te).source+"|"+p.source+"|"+(p===$i?Ql:Te).source+"|"+(t.evaluate||Te).source+"|$","g"),x="//# sourceURL="+(P.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Lo+"]")+`
|
|
4
|
+
`;n.replace(v,function(E,O,W,_n,en,pn){return W||(W=_n),d+=n.slice(_,pn).replace(io,Xo),O&&(s=!0,d+=`' +
|
|
5
|
+
__e(`+O+`) +
|
|
6
|
+
'`),en&&(c=!0,d+=`';
|
|
7
|
+
`+en+`;
|
|
8
|
+
__p += '`),W&&(d+=`' +
|
|
9
|
+
((__t = (`+W+`)) == null ? '' : __t) +
|
|
10
|
+
'`),_=pn+E.length,E}),d+=`';
|
|
11
|
+
`;var m=P.call(t,"variable")&&t.variable;if(!m)d=`with (obj) {
|
|
12
|
+
`+d+`
|
|
13
|
+
}
|
|
14
|
+
`;else if(Jl.test(m))throw new S(et);d=(c?d.replace(Fl,""):d).replace(Bl,"$1").replace(Pl,"$1;"),d="function("+(m||"obj")+`) {
|
|
15
|
+
`+(m?"":`obj || (obj = {});
|
|
16
|
+
`)+"var __t, __p = ''"+(s?", __e = _.escape":"")+(c?`, __j = Array.prototype.join;
|
|
17
|
+
function print() { __p += __j.call(arguments, '') }
|
|
18
|
+
`:`;
|
|
19
|
+
`)+d+`return __p
|
|
20
|
+
}`;var T=pl(function(){return F(f,x+"return "+d).apply(l,o)});if(T.source=d,Ti(T))throw T;return T}function A_(n){return B(n).toLowerCase()}function m_(n){return B(n).toUpperCase()}function E_(n,t,e){if(n=B(n),n&&(e||t===l))return yu(n);if(!n||!(t=hn(t)))return n;var r=Bn(n),i=Bn(t),f=Su(r,i),o=Iu(r,i)+1;return gt(r,f,o).join("")}function y_(n,t,e){if(n=B(n),n&&(e||t===l))return n.slice(0,Tu(n)+1);if(!n||!(t=hn(t)))return n;var r=Bn(n),i=Iu(r,Bn(t))+1;return gt(r,0,i).join("")}function S_(n,t,e){if(n=B(n),n&&(e||t===l))return n.replace(Tr,"");if(!n||!(t=hn(t)))return n;var r=Bn(n),i=Su(r,Bn(t));return gt(r,i).join("")}function I_(n,t){var e=Ae,r=L;if(H(t)){var i="separator"in t?t.separator:i;e="length"in t?R(t.length):e,r="omission"in t?hn(t.omission):r}n=B(n);var f=n.length;if(Mt(n)){var o=Bn(n);f=o.length}if(e>=f)return n;var s=e-Dt(r);if(s<1)return r;var c=o?gt(o,0,s).join(""):n.slice(0,s);if(i===l)return c+r;if(o&&(s+=c.length-s),Li(i)){if(n.slice(s).search(i)){var _,p=c;for(i.global||(i=$r(i.source,B(zi.exec(i))+"g")),i.lastIndex=0;_=i.exec(p);)var d=_.index;c=c.slice(0,d===l?s:d)}}else if(n.indexOf(hn(i),s)!=s){var v=c.lastIndexOf(i);v>-1&&(c=c.slice(0,v))}return c+r}function R_(n){return n=B(n),n&&Ml.test(n)?n.replace(qi,ts):n}var T_=$t(function(n,t,e){return n+(e?" ":"")+t.toUpperCase()}),bi=df("toUpperCase");function _l(n,t,e){return n=B(n),t=e?l:t,t===l?Vo(n)?is(n):Ho(n):n.match(t)||[]}var pl=C(function(n,t){try{return an(n,l,t)}catch(e){return Ti(e)?e:new S(e)}}),L_=Jn(function(n,t){return An(t,function(e){e=qn(e),Yn(n,e,Ii(n[e],n))}),n});function C_(n){var t=n==null?0:n.length,e=A();return n=t?N(n,function(r){if(typeof r[1]!="function")throw new mn(G);return[e(r[0]),r[1]]}):[],C(function(r){for(var i=-1;++i<t;){var f=n[i];if(an(f[0],this,r))return an(f[1],this,r)}})}function O_(n){return ta(yn(n,Cn))}function Wi(n){return function(){return n}}function b_(n,t){return n==null||n!==n?t:n}var W_=wf(),F_=wf(!0);function ln(n){return n}function Fi(n){return Yu(typeof n=="function"?n:yn(n,Cn))}function B_(n){return Ju(yn(n,Cn))}function P_(n,t){return Vu(n,yn(t,Cn))}var M_=C(function(n,t){return function(e){return he(e,n,t)}}),D_=C(function(n,t){return function(e){return he(n,e,t)}});function Bi(n,t,e){var r=J(t),i=Je(t,r);e==null&&!(H(t)&&(i.length||!r.length))&&(e=t,t=n,n=this,i=Je(t,J(t)));var f=!(H(e)&&"chain"in e)||!!e.chain,o=Qn(n);return An(i,function(s){var c=t[s];n[s]=c,o&&(n.prototype[s]=function(){var _=this.__chain__;if(f||_){var p=n(this.__wrapped__),d=p.__actions__=rn(this.__actions__);return d.push({func:c,args:arguments,thisArg:n}),p.__chain__=_,p}return c.apply(n,lt([this.value()],arguments))})}),n}function U_(){return V._===this&&(V._=as),this}function Pi(){}function N_(n){return n=R(n),C(function(t){return Qu(t,n)})}var G_=hi(N),H_=hi(wu),q_=hi(Dr);function dl(n){return xi(n)?Ur(qn(n)):wa(n)}function K_(n){return function(t){return n==null?l:It(n,t)}}var $_=Af(),z_=Af(!0);function Mi(){return[]}function Di(){return!1}function Z_(){return{}}function Y_(){return""}function X_(){return!0}function J_(n,t){if(n=R(n),n<1||n>bn)return[];var e=Nn,r=k(n,Nn);t=A(t),n-=Nn;for(var i=Hr(r,t);++e<n;)t(e);return i}function V_(n){return I(n)?N(n,qn):gn(n)?[n]:rn(Mf(B(n)))}function Q_(n){var t=++os;return B(n)+t}var k_=tr(function(n,t){return n+t},0),j_=gi("ceil"),np=tr(function(n,t){return n/t},1),tp=gi("floor");function ep(n){return n&&n.length?Xe(n,ln,kr):l}function rp(n,t){return n&&n.length?Xe(n,A(t,2),kr):l}function ip(n){return mu(n,ln)}function up(n,t){return mu(n,A(t,2))}function fp(n){return n&&n.length?Xe(n,ln,ei):l}function lp(n,t){return n&&n.length?Xe(n,A(t,2),ei):l}var op=tr(function(n,t){return n*t},1),sp=gi("round"),ap=tr(function(n,t){return n-t},0);function cp(n){return n&&n.length?Gr(n,ln):0}function hp(n,t){return n&&n.length?Gr(n,A(t,2)):0}return u.after=Bh,u.ary=Yf,u.assign=mg,u.assignIn=ll,u.assignInWith=_r,u.assignWith=Eg,u.at=yg,u.before=Xf,u.bind=Ii,u.bindAll=L_,u.bindKey=Jf,u.castArray=Zh,u.chain=$f,u.chunk=tc,u.compact=ec,u.concat=rc,u.cond=C_,u.conforms=O_,u.constant=Wi,u.countBy=ch,u.create=Sg,u.curry=Vf,u.curryRight=Qf,u.debounce=kf,u.defaults=Ig,u.defaultsDeep=Rg,u.defer=Ph,u.delay=Mh,u.difference=ic,u.differenceBy=uc,u.differenceWith=fc,u.drop=lc,u.dropRight=oc,u.dropRightWhile=sc,u.dropWhile=ac,u.fill=cc,u.filter=gh,u.flatMap=dh,u.flatMapDeep=vh,u.flatMapDepth=wh,u.flatten=Gf,u.flattenDeep=hc,u.flattenDepth=gc,u.flip=Dh,u.flow=W_,u.flowRight=F_,u.fromPairs=_c,u.functions=Fg,u.functionsIn=Bg,u.groupBy=xh,u.initial=dc,u.intersection=vc,u.intersectionBy=wc,u.intersectionWith=xc,u.invert=Mg,u.invertBy=Dg,u.invokeMap=mh,u.iteratee=Fi,u.keyBy=Eh,u.keys=J,u.keysIn=fn,u.map=or,u.mapKeys=Ng,u.mapValues=Gg,u.matches=B_,u.matchesProperty=P_,u.memoize=ar,u.merge=Hg,u.mergeWith=ol,u.method=M_,u.methodOf=D_,u.mixin=Bi,u.negate=cr,u.nthArg=N_,u.omit=qg,u.omitBy=Kg,u.once=Uh,u.orderBy=yh,u.over=G_,u.overArgs=Nh,u.overEvery=H_,u.overSome=q_,u.partial=Ri,u.partialRight=jf,u.partition=Sh,u.pick=$g,u.pickBy=sl,u.property=dl,u.propertyOf=K_,u.pull=yc,u.pullAll=qf,u.pullAllBy=Sc,u.pullAllWith=Ic,u.pullAt=Rc,u.range=$_,u.rangeRight=z_,u.rearg=Gh,u.reject=Th,u.remove=Tc,u.rest=Hh,u.reverse=yi,u.sampleSize=Ch,u.set=Zg,u.setWith=Yg,u.shuffle=Oh,u.slice=Lc,u.sortBy=Fh,u.sortedUniq=Pc,u.sortedUniqBy=Mc,u.split=d_,u.spread=qh,u.tail=Dc,u.take=Uc,u.takeRight=Nc,u.takeRightWhile=Gc,u.takeWhile=Hc,u.tap=eh,u.throttle=Kh,u.thru=lr,u.toArray=il,u.toPairs=al,u.toPairsIn=cl,u.toPath=V_,u.toPlainObject=fl,u.transform=Xg,u.unary=$h,u.union=qc,u.unionBy=Kc,u.unionWith=$c,u.uniq=zc,u.uniqBy=Zc,u.uniqWith=Yc,u.unset=Jg,u.unzip=Si,u.unzipWith=Kf,u.update=Vg,u.updateWith=Qg,u.values=Yt,u.valuesIn=kg,u.without=Xc,u.words=_l,u.wrap=zh,u.xor=Jc,u.xorBy=Vc,u.xorWith=Qc,u.zip=kc,u.zipObject=jc,u.zipObjectDeep=nh,u.zipWith=th,u.entries=al,u.entriesIn=cl,u.extend=ll,u.extendWith=_r,Bi(u,u),u.add=k_,u.attempt=pl,u.camelCase=e_,u.capitalize=hl,u.ceil=j_,u.clamp=jg,u.clone=Yh,u.cloneDeep=Jh,u.cloneDeepWith=Vh,u.cloneWith=Xh,u.conformsTo=Qh,u.deburr=gl,u.defaultTo=b_,u.divide=np,u.endsWith=r_,u.eq=Mn,u.escape=i_,u.escapeRegExp=u_,u.every=hh,u.find=_h,u.findIndex=Uf,u.findKey=Tg,u.findLast=ph,u.findLastIndex=Nf,u.findLastKey=Lg,u.floor=tp,u.forEach=zf,u.forEachRight=Zf,u.forIn=Cg,u.forInRight=Og,u.forOwn=bg,u.forOwnRight=Wg,u.get=Ci,u.gt=kh,u.gte=jh,u.has=Pg,u.hasIn=Oi,u.head=Hf,u.identity=ln,u.includes=Ah,u.indexOf=pc,u.inRange=n_,u.invoke=Ug,u.isArguments=Lt,u.isArray=I,u.isArrayBuffer=ng,u.isArrayLike=un,u.isArrayLikeObject=$,u.isBoolean=tg,u.isBuffer=_t,u.isDate=eg,u.isElement=rg,u.isEmpty=ig,u.isEqual=ug,u.isEqualWith=fg,u.isError=Ti,u.isFinite=lg,u.isFunction=Qn,u.isInteger=nl,u.isLength=hr,u.isMap=tl,u.isMatch=og,u.isMatchWith=sg,u.isNaN=ag,u.isNative=cg,u.isNil=gg,u.isNull=hg,u.isNumber=el,u.isObject=H,u.isObjectLike=K,u.isPlainObject=we,u.isRegExp=Li,u.isSafeInteger=_g,u.isSet=rl,u.isString=gr,u.isSymbol=gn,u.isTypedArray=Zt,u.isUndefined=pg,u.isWeakMap=dg,u.isWeakSet=vg,u.join=Ac,u.kebabCase=f_,u.last=In,u.lastIndexOf=mc,u.lowerCase=l_,u.lowerFirst=o_,u.lt=wg,u.lte=xg,u.max=ep,u.maxBy=rp,u.mean=ip,u.meanBy=up,u.min=fp,u.minBy=lp,u.stubArray=Mi,u.stubFalse=Di,u.stubObject=Z_,u.stubString=Y_,u.stubTrue=X_,u.multiply=op,u.nth=Ec,u.noConflict=U_,u.noop=Pi,u.now=sr,u.pad=s_,u.padEnd=a_,u.padStart=c_,u.parseInt=h_,u.random=t_,u.reduce=Ih,u.reduceRight=Rh,u.repeat=g_,u.replace=__,u.result=zg,u.round=sp,u.runInContext=a,u.sample=Lh,u.size=bh,u.snakeCase=p_,u.some=Wh,u.sortedIndex=Cc,u.sortedIndexBy=Oc,u.sortedIndexOf=bc,u.sortedLastIndex=Wc,u.sortedLastIndexBy=Fc,u.sortedLastIndexOf=Bc,u.startCase=v_,u.startsWith=w_,u.subtract=ap,u.sum=cp,u.sumBy=hp,u.template=x_,u.times=J_,u.toFinite=kn,u.toInteger=R,u.toLength=ul,u.toLower=A_,u.toNumber=Rn,u.toSafeInteger=Ag,u.toString=B,u.toUpper=m_,u.trim=E_,u.trimEnd=y_,u.trimStart=S_,u.truncate=I_,u.unescape=R_,u.uniqueId=Q_,u.upperCase=T_,u.upperFirst=bi,u.each=zf,u.eachRight=Zf,u.first=Hf,Bi(u,(function(){var n={};return Gn(u,function(t,e){P.call(u.prototype,e)||(n[e]=t)}),n})(),{chain:!1}),u.VERSION=tt,An(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){u[n].placeholder=u}),An(["drop","take"],function(n,t){b.prototype[n]=function(e){e=e===l?1:Y(R(e),0);var r=this.__filtered__&&!t?new b(this):this.clone();return r.__filtered__?r.__takeCount__=k(e,r.__takeCount__):r.__views__.push({size:k(e,Nn),type:n+(r.__dir__<0?"Right":"")}),r},b.prototype[n+"Right"]=function(e){return this.reverse()[n](e).reverse()}}),An(["filter","map","takeWhile"],function(n,t){var e=t+1,r=e==Vt||e==dr;b.prototype[n]=function(i){var f=this.clone();return f.__iteratees__.push({iteratee:A(i,3),type:e}),f.__filtered__=f.__filtered__||r,f}}),An(["head","last"],function(n,t){var e="take"+(t?"Right":"");b.prototype[n]=function(){return this[e](1).value()[0]}}),An(["initial","tail"],function(n,t){var e="drop"+(t?"":"Right");b.prototype[n]=function(){return this.__filtered__?new b(this):this[e](1)}}),b.prototype.compact=function(){return this.filter(ln)},b.prototype.find=function(n){return this.filter(n).head()},b.prototype.findLast=function(n){return this.reverse().find(n)},b.prototype.invokeMap=C(function(n,t){return typeof n=="function"?new b(this):this.map(function(e){return he(e,n,t)})}),b.prototype.reject=function(n){return this.filter(cr(A(n)))},b.prototype.slice=function(n,t){n=R(n);var e=this;return e.__filtered__&&(n>0||t<0)?new b(e):(n<0?e=e.takeRight(-n):n&&(e=e.drop(n)),t!==l&&(t=R(t),e=t<0?e.dropRight(-t):e.take(t-n)),e)},b.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},b.prototype.toArray=function(){return this.take(Nn)},Gn(b.prototype,function(n,t){var e=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),i=u[r?"take"+(t=="last"?"Right":""):t],f=r||/^find/.test(t);i&&(u.prototype[t]=function(){var o=this.__wrapped__,s=r?[1]:arguments,c=o instanceof b,_=s[0],p=c||I(o),d=function(O){var W=i.apply(u,lt([O],s));return r&&v?W[0]:W};p&&e&&typeof _=="function"&&_.length!=1&&(c=p=!1);var v=this.__chain__,x=!!this.__actions__.length,m=f&&!v,T=c&&!x;if(!f&&p){o=T?o:new b(this);var E=n.apply(o,s);return E.__actions__.push({func:lr,args:[d],thisArg:l}),new En(E,v)}return m&&T?n.apply(this,s):(E=this.thru(d),m?r?E.value()[0]:E.value():E)})}),An(["pop","push","shift","sort","splice","unshift"],function(n){var t=Fe[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);u.prototype[n]=function(){var i=arguments;if(r&&!this.__chain__){var f=this.value();return t.apply(I(f)?f:[],i)}return this[e](function(o){return t.apply(I(o)?o:[],i)})}}),Gn(b.prototype,function(n,t){var e=u[t];if(e){var r=e.name+"";P.call(Ht,r)||(Ht[r]=[]),Ht[r].push({name:t,func:e})}}),Ht[nr(l,sn).name]=[{name:"wrapper",func:l}],b.prototype.clone=Rs,b.prototype.reverse=Ts,b.prototype.value=Ls,u.prototype.at=rh,u.prototype.chain=ih,u.prototype.commit=uh,u.prototype.next=fh,u.prototype.plant=oh,u.prototype.reverse=sh,u.prototype.toJSON=u.prototype.valueOf=u.prototype.value=ah,u.prototype.first=u.prototype.head,ue&&(u.prototype[ue]=lh),u}),Ut=us();At?((At.exports=Ut)._=Ut,Fr._=Ut):V._=Ut}).call(xl)})(Xt,Xt.exports)),Xt.exports}var Tn=Al();const Ni=(X,y="onSubmit",l)=>({defaultValues:X??{},reValidateMode:y,formValues:Tn.cloneDeep(X??{}),fieldErrors:{},rules:l??{}}),ml=(X,y,l)=>{if(!y)return[];const tt=y.validate?.(X,l);if(tt!==void 0)return tt;const Ln=X?.toString()?.length||0,pt=y.required&&!Ln,G=[];return pt?G.push("Field is required!"):(y.maxLength&&Ln>Number(y.maxLength)&&G.push(`The field may not be longer than ${y.maxLength} characters!`),y.minLength&&Ln<Number(y.minLength)&&G.push(`The field may not be shorter than ${y.minLength} characters!`),y.pattern&&!new RegExp(y.pattern).test(X?.toString())&&G.push("The field did not match the expected pattern!")),G},El=X=>{const y=q.ref(Ni(X?.defaultValues,X?.reValidateMode||"onSubmit")),l=q.ref(!1),tt=async L=>{const wn=y.value.rules,pr=Kn.value,Vt={};let me=!1;if(Object.keys(wn??{}).forEach(dr=>{const Un=dr,bn=bt(Un);Vt[Un]=bn,bn.length&&(me=!0)}),me){rt(Vt);return}try{l.value=!0,await L?.(pr)}finally{l.value=!1}},Ln=L=>{y.value=Ni(L,X?.reValidateMode||"onSubmit",y.value.rules)},pt=(L,wn)=>{Tn.set(y.value.formValues,L,wn),(Ot.value==="all"||Ot.value==="onChange")&&Ae(L)},G=L=>{y.value.formValues=L??{}},et=L=>Tn.get(y.value.formValues,L),dt=L=>{Tn.set(y.value.fieldErrors,L,[])},Jt=(L,wn)=>{Tn.set(y.value.fieldErrors,L,wn)},rt=L=>{y.value.fieldErrors=L},Cn=L=>Tn.get(y.value.fieldErrors,L),vt=L=>Tn.get(y.value.rules,L),it=L=>{y.value.rules=L},ut=(L,wn)=>{Tn.set(y.value.rules,L,wn)},Ct=L=>{Tn.unset(y.value.formValues,L)},on=L=>et(L)!==Tn.get(y.value.defaultValues,L),sn=q.computed(()=>q.readonly(y.value)),Ot=q.computed(()=>sn.value.reValidateMode),dn=q.computed(()=>sn.value.fieldErrors),Kn=q.computed(()=>sn.value.formValues),vn=q.computed(()=>sn.value.defaultValues),wt=q.computed(()=>sn.value.rules),On=q.computed(()=>!Tn.isEqual(Kn.value,vn.value)),xt=q.computed(()=>!Object.entries(dn.value??{}).some(([,L])=>L?.length)),bt=L=>ml(et(L),vt(L)),Ae=L=>{const wn=bt(L);return Jt(L,wn),wn};return{control:{setValue:pt,setValues:G,getValue:et,clearError:dt,setError:Jt,setErrors:rt,getError:Cn,getRule:vt,setRules:it,setRule:ut,reValidateMode:Ot,fieldErrors:dn,formValues:Kn,defaultValues:vn,rules:wt,validateField:Ae,getIsDirty:on,unregister:Ct},handleSubmit:tt,isSubmitting:l,isDirty:On,reset:Ln,formStates:sn,isValid:xt}};nt.useController=wl,nt.useForm=El,Object.defineProperty(nt,Symbol.toStringTag,{value:"Module"})}));
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ComputedRef } from 'vue';
|
|
2
|
+
type StopTypes = number | string | boolean | symbol | bigint | Date;
|
|
3
|
+
type ExcludedTypes = (...args: any[]) => any;
|
|
4
|
+
type Dot<T extends string, U extends string> = "" extends U ? T : `${T}.${U}`;
|
|
5
|
+
export type GetKeys<T> = T extends StopTypes ? "" : T extends readonly unknown[] ? GetKeys<T[number]> : {
|
|
6
|
+
[K in keyof T & string]: T[K] extends StopTypes ? K : T[K] extends ExcludedTypes ? never : K | Dot<K, GetKeys<T[K]>>;
|
|
7
|
+
}[keyof T & string];
|
|
8
|
+
type Idx<T, K extends string> = K extends keyof T ? T[K] : never;
|
|
9
|
+
export type DeepIndex<T, K extends string> = T extends object ? K extends `${infer F}.${infer R}` ? DeepIndex<Idx<T, F>, R> : Idx<T, K> : never;
|
|
10
|
+
export type CreateControl<T> = {
|
|
11
|
+
defaultValues: T;
|
|
12
|
+
reValidateMode: ValidationMode;
|
|
13
|
+
formValues: T;
|
|
14
|
+
fieldErrors: FieldError<T>;
|
|
15
|
+
rules: ControlRules<T>;
|
|
16
|
+
};
|
|
17
|
+
export type ControlFunctionsType<T> = {
|
|
18
|
+
setValue: <P extends GetKeys<T>>(name: P, value: DeepIndex<T, P>) => void;
|
|
19
|
+
setValues: (values?: T) => void;
|
|
20
|
+
getValue: <P extends GetKeys<T>>(name: P) => DeepIndex<T, P>;
|
|
21
|
+
clearError: (name: GetKeys<T>) => void;
|
|
22
|
+
setError: (name: GetKeys<T>, error: string[]) => void;
|
|
23
|
+
setErrors: (errors: FieldError<T>) => void;
|
|
24
|
+
getError: (name: GetKeys<T>) => string[] | undefined;
|
|
25
|
+
getRule: (name: GetKeys<T>) => ControlRule<T> | undefined;
|
|
26
|
+
setRules: (rules: ControlRules<T>) => void;
|
|
27
|
+
setRule: (name: GetKeys<T>, rules: ControlRule<T>) => void;
|
|
28
|
+
validateField: (name: GetKeys<T>) => string[];
|
|
29
|
+
getIsDirty: (name: GetKeys<T>) => boolean;
|
|
30
|
+
unregister: (name: GetKeys<T>) => void;
|
|
31
|
+
};
|
|
32
|
+
export type Control<T> = Record<keyof CreateControl<T>, ComputedRef<CreateControl<T>[keyof CreateControl<T>]>> & ControlFunctionsType<T>;
|
|
33
|
+
export type ValidationMode = "onBlur" | "onChange" | "onSubmit" | "all";
|
|
34
|
+
export type UseFormProps<T> = {
|
|
35
|
+
defaultValues?: Partial<Record<keyof T, T[keyof T]>>;
|
|
36
|
+
reValidateMode?: ValidationMode;
|
|
37
|
+
};
|
|
38
|
+
export type ControlRules<T> = Partial<Record<GetKeys<T>, ControlRule<T>>>;
|
|
39
|
+
export type ControlRule<T> = {
|
|
40
|
+
required?: boolean;
|
|
41
|
+
minLength?: number;
|
|
42
|
+
maxLength?: number;
|
|
43
|
+
validate?: (value: never, fieldValues?: T) => string[] | undefined;
|
|
44
|
+
pattern?: RegExp | string;
|
|
45
|
+
};
|
|
46
|
+
export type FieldError<T> = Partial<Record<GetKeys<T>, string[]>>;
|
|
47
|
+
export type ControllerProps<T, P extends GetKeys<T> = any> = {
|
|
48
|
+
control: Control<T>;
|
|
49
|
+
name: P;
|
|
50
|
+
rules?: ControlRule<T>;
|
|
51
|
+
shouldUnregister?: boolean;
|
|
52
|
+
};
|
|
53
|
+
export {};
|
package/package.json
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "vue-form-controller",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"description": "Vue Form Controller",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"dev": "vite",
|
|
8
|
+
"build": "vue-tsc -b && vite build",
|
|
9
|
+
"preview": "vite preview"
|
|
10
|
+
},
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git+https://github.com/edisonqerimi/vue-form-controller.git"
|
|
14
|
+
},
|
|
15
|
+
"main": "./dist/index.js",
|
|
16
|
+
"module": "./dist/index.js",
|
|
17
|
+
"types": "./dist/index.d.ts",
|
|
18
|
+
"exports": {
|
|
19
|
+
".": {
|
|
20
|
+
"import": "./dist/index.js",
|
|
21
|
+
"require": "./dist/index.umd.js"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"files": [
|
|
25
|
+
"dist",
|
|
26
|
+
"src"
|
|
27
|
+
],
|
|
28
|
+
"author": "Edison Qerimi",
|
|
29
|
+
"license": "ISC",
|
|
30
|
+
"keywords": [
|
|
31
|
+
"vue",
|
|
32
|
+
"vue form",
|
|
33
|
+
"vue form composable",
|
|
34
|
+
"vue controller",
|
|
35
|
+
"vue form controller"
|
|
36
|
+
],
|
|
37
|
+
"bugs": {
|
|
38
|
+
"url": "https://github.com/edisonqerimi/vue-composable-form/issues"
|
|
39
|
+
},
|
|
40
|
+
"homepage": "https://github.com/edisonqerimi/vue-composable-form#readme",
|
|
41
|
+
"devDependencies": {
|
|
42
|
+
"@types/lodash": "^4.17.20",
|
|
43
|
+
"@types/node": "^24.10.0",
|
|
44
|
+
"@vitejs/plugin-vue": "^6.0.1",
|
|
45
|
+
"lodash": "^4.17.21",
|
|
46
|
+
"typescript": "^5.9.3",
|
|
47
|
+
"vite": "^7.2.2",
|
|
48
|
+
"vite-plugin-dts": "^4.5.4",
|
|
49
|
+
"vue-tsc": "^3.1.3"
|
|
50
|
+
},
|
|
51
|
+
"peerDependencies": {
|
|
52
|
+
"vue": "^3.5.24"
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<slot
|
|
3
|
+
:onChange="onChange"
|
|
4
|
+
:onBlur="onBlur"
|
|
5
|
+
:value="value"
|
|
6
|
+
:errors="errors"
|
|
7
|
+
:hasErrors="hasErrors"
|
|
8
|
+
:onFocus="onFocus"
|
|
9
|
+
:isDirty="isDirty"
|
|
10
|
+
></slot>
|
|
11
|
+
</template>
|
|
12
|
+
|
|
13
|
+
<script setup lang="ts" generic="T, P extends GetKeys<T>">
|
|
14
|
+
import type { GetKeys, ControllerProps } from "../types";
|
|
15
|
+
import { useController } from "../composables/controller";
|
|
16
|
+
|
|
17
|
+
const props = defineProps<ControllerProps<T, P>>();
|
|
18
|
+
const { onChange, onBlur, onFocus, errors, hasErrors, value, isDirty } =
|
|
19
|
+
useController(props);
|
|
20
|
+
</script>
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { computed, onUnmounted, watch } from "vue";
|
|
2
|
+
import { ControllerProps, DeepIndex, GetKeys } from "../types";
|
|
3
|
+
|
|
4
|
+
export const useController = <T, P extends GetKeys<T>>({
|
|
5
|
+
rules,
|
|
6
|
+
control,
|
|
7
|
+
name,
|
|
8
|
+
shouldUnregister,
|
|
9
|
+
}: ControllerProps<T, P>) => {
|
|
10
|
+
const value = computed(() => control.getValue(name));
|
|
11
|
+
const isDirty = computed(() => control.getIsDirty(name));
|
|
12
|
+
const errors = computed(() => control.getError(name));
|
|
13
|
+
const reValidateMode = computed(() => control.reValidateMode.value);
|
|
14
|
+
const hasErrors = computed(() => !!errors.value?.length);
|
|
15
|
+
|
|
16
|
+
watch(
|
|
17
|
+
() => rules,
|
|
18
|
+
() => {
|
|
19
|
+
if (rules === undefined) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
control.setRule(name, rules);
|
|
23
|
+
},
|
|
24
|
+
{ immediate: true }
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
onUnmounted(() => {
|
|
28
|
+
if (shouldUnregister) {
|
|
29
|
+
control.unregister(name);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const onChange = (value: DeepIndex<T, P>) => {
|
|
34
|
+
control.setValue(name, value);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
const onFocus = () => {
|
|
38
|
+
control.clearError(name);
|
|
39
|
+
};
|
|
40
|
+
const onBlur = () => {
|
|
41
|
+
if (reValidateMode.value === "all" || reValidateMode.value === "onBlur") {
|
|
42
|
+
control.validateField(name);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
return {
|
|
46
|
+
value,
|
|
47
|
+
errors,
|
|
48
|
+
hasErrors,
|
|
49
|
+
onChange,
|
|
50
|
+
onFocus,
|
|
51
|
+
onBlur,
|
|
52
|
+
isDirty,
|
|
53
|
+
};
|
|
54
|
+
};
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { computed, readonly, ref, type Ref } from "vue";
|
|
2
|
+
|
|
3
|
+
import { get, isEqual, set, unset } from "lodash";
|
|
4
|
+
import {
|
|
5
|
+
ControlRule,
|
|
6
|
+
ControlRules,
|
|
7
|
+
DeepIndex,
|
|
8
|
+
FieldError,
|
|
9
|
+
GetKeys,
|
|
10
|
+
UseFormProps,
|
|
11
|
+
} from "../types";
|
|
12
|
+
import { createControl } from "../control";
|
|
13
|
+
import { getFieldErrors } from "../validations";
|
|
14
|
+
|
|
15
|
+
export const useForm = <T>(props?: UseFormProps<T>) => {
|
|
16
|
+
// @ts-expect-error UnwrapRef issue
|
|
17
|
+
const control: Ref<CreateControlReturnType<T>> = ref(
|
|
18
|
+
createControl(props?.defaultValues, props?.reValidateMode || "onSubmit")
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
const isSubmitting = ref(false);
|
|
22
|
+
|
|
23
|
+
const handleSubmit = async (onSubmit: (data: T) => void | Promise<void>) => {
|
|
24
|
+
const rules = control.value.rules;
|
|
25
|
+
const fieldValues = formValues.value as T;
|
|
26
|
+
const controlErrors: FieldError<T> = {};
|
|
27
|
+
let hasErrors = false;
|
|
28
|
+
Object.keys(rules ?? {}).forEach((key) => {
|
|
29
|
+
const name = key as GetKeys<T>;
|
|
30
|
+
const errors = getCurrentFieldErrors(name);
|
|
31
|
+
controlErrors[name] = errors;
|
|
32
|
+
if (errors.length) {
|
|
33
|
+
hasErrors = true;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
if (hasErrors) {
|
|
37
|
+
setErrors(controlErrors);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
try {
|
|
41
|
+
isSubmitting.value = true;
|
|
42
|
+
await onSubmit?.(fieldValues);
|
|
43
|
+
} finally {
|
|
44
|
+
isSubmitting.value = false;
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
const reset = (defaultValues: Partial<Record<keyof T, T[keyof T]>>) => {
|
|
49
|
+
control.value = createControl(
|
|
50
|
+
defaultValues,
|
|
51
|
+
props?.reValidateMode || "onSubmit",
|
|
52
|
+
control.value.rules
|
|
53
|
+
);
|
|
54
|
+
};
|
|
55
|
+
const setValue = <P extends GetKeys<T>>(name: P, value: DeepIndex<T, P>) => {
|
|
56
|
+
set(control.value.formValues as object, name, value) as T;
|
|
57
|
+
if (reValidateMode.value === "all" || reValidateMode.value === "onChange") {
|
|
58
|
+
validateField(name);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const setValues = (values?: T) => {
|
|
63
|
+
control.value.formValues = values ?? ({} as T);
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
const getValue = <P extends GetKeys<T>>(name: P) => {
|
|
67
|
+
return get(control.value.formValues, name) as DeepIndex<T, P>;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const clearError = (name: GetKeys<T>) => {
|
|
71
|
+
set(control.value.fieldErrors, name, []);
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
const setError = (name: GetKeys<T>, error: string[]) => {
|
|
75
|
+
set(control.value.fieldErrors, name, error);
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
const setErrors = (errors: FieldError<T>) => {
|
|
79
|
+
control.value.fieldErrors = errors;
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
const getError = (name: GetKeys<T>) => get(control.value.fieldErrors, name);
|
|
83
|
+
|
|
84
|
+
const getRule = (name: GetKeys<T>) =>
|
|
85
|
+
get(control.value.rules, name) as ControlRule<T>;
|
|
86
|
+
|
|
87
|
+
const setRules = (rules: ControlRules<T>) => {
|
|
88
|
+
control.value.rules = rules;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
const setRule = (name: GetKeys<T>, rules: ControlRule<T>) => {
|
|
92
|
+
set(control.value.rules, name, rules);
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
const unregister = (name: GetKeys<T>) => {
|
|
96
|
+
unset(control.value.formValues as object, name);
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
const getIsDirty = (name: GetKeys<T>) =>
|
|
100
|
+
getValue(name) !== get(control.value.defaultValues, name);
|
|
101
|
+
|
|
102
|
+
const readonlyControl = computed(() => readonly(control.value));
|
|
103
|
+
const reValidateMode = computed(() => readonlyControl.value.reValidateMode);
|
|
104
|
+
const fieldErrors = computed(
|
|
105
|
+
() => readonlyControl.value.fieldErrors as FieldError<T>
|
|
106
|
+
);
|
|
107
|
+
const formValues = computed(() => readonlyControl.value.formValues);
|
|
108
|
+
const defaultValues = computed(() => readonlyControl.value.defaultValues);
|
|
109
|
+
const rules = computed(() => readonlyControl.value.rules);
|
|
110
|
+
|
|
111
|
+
const isDirty = computed(
|
|
112
|
+
() => !isEqual(formValues.value, defaultValues.value)
|
|
113
|
+
);
|
|
114
|
+
|
|
115
|
+
const isValid = computed(
|
|
116
|
+
() =>
|
|
117
|
+
!Object.entries(fieldErrors.value ?? {}).some(
|
|
118
|
+
([, v]) => (v as string[])?.length
|
|
119
|
+
)
|
|
120
|
+
);
|
|
121
|
+
|
|
122
|
+
const getCurrentFieldErrors = (name: GetKeys<T>) =>
|
|
123
|
+
getFieldErrors(getValue(name), getRule(name));
|
|
124
|
+
|
|
125
|
+
const validateField = (name: GetKeys<T>) => {
|
|
126
|
+
const errors = getCurrentFieldErrors(name);
|
|
127
|
+
setError(name, errors);
|
|
128
|
+
return errors;
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
return {
|
|
132
|
+
control: {
|
|
133
|
+
setValue,
|
|
134
|
+
setValues,
|
|
135
|
+
getValue,
|
|
136
|
+
clearError,
|
|
137
|
+
setError,
|
|
138
|
+
setErrors,
|
|
139
|
+
getError,
|
|
140
|
+
getRule,
|
|
141
|
+
setRules,
|
|
142
|
+
setRule,
|
|
143
|
+
reValidateMode,
|
|
144
|
+
fieldErrors,
|
|
145
|
+
formValues,
|
|
146
|
+
defaultValues,
|
|
147
|
+
rules,
|
|
148
|
+
validateField,
|
|
149
|
+
getIsDirty,
|
|
150
|
+
unregister,
|
|
151
|
+
},
|
|
152
|
+
handleSubmit,
|
|
153
|
+
isSubmitting,
|
|
154
|
+
isDirty,
|
|
155
|
+
reset,
|
|
156
|
+
formStates: readonlyControl,
|
|
157
|
+
isValid,
|
|
158
|
+
};
|
|
159
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { cloneDeep } from "lodash";
|
|
2
|
+
import {
|
|
3
|
+
ControlRules,
|
|
4
|
+
CreateControl,
|
|
5
|
+
FieldError,
|
|
6
|
+
ValidationMode,
|
|
7
|
+
} from "../types";
|
|
8
|
+
|
|
9
|
+
const createControl = <T>(
|
|
10
|
+
defaultValues?: Partial<Record<keyof T, T[keyof T]>>,
|
|
11
|
+
reValidateMode: ValidationMode = "onSubmit",
|
|
12
|
+
rules?: ControlRules<T>
|
|
13
|
+
) => {
|
|
14
|
+
return {
|
|
15
|
+
defaultValues: defaultValues ?? {},
|
|
16
|
+
reValidateMode,
|
|
17
|
+
formValues: cloneDeep(defaultValues ?? {}) as T,
|
|
18
|
+
fieldErrors: {} as FieldError<T>,
|
|
19
|
+
rules: rules ?? ({} as ControlRules<T>),
|
|
20
|
+
} as CreateControl<T>;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export { createControl };
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { useController } from "./composables/controller";
|
|
2
|
+
export { useForm } from "./composables/form";
|
|
3
|
+
export * from "./components/Controller.vue";
|
|
4
|
+
|
|
5
|
+
export type {
|
|
6
|
+
ValidationMode,
|
|
7
|
+
ControllerProps,
|
|
8
|
+
ControlRules,
|
|
9
|
+
ControlRule,
|
|
10
|
+
UseFormProps,
|
|
11
|
+
Control,
|
|
12
|
+
FieldError,
|
|
13
|
+
GetKeys,
|
|
14
|
+
DeepIndex,
|
|
15
|
+
} from "./types";
|