yann-useorderfun 0.3.2 → 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/README.md +34 -0
- package/dist/index.js +668 -741
- package/dist/index.umd.cjs +2 -0
- package/index.d.ts +83 -83
- package/package.json +18 -12
- package/dist/index.umd.js +0 -2
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! yann-useorderfun v1.0.0 by Yann */
|
|
2
|
+
(function(p,g){typeof exports=="object"&&typeof module<"u"?g(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],g):(p=typeof globalThis<"u"?globalThis:p||self,g(p.YannUseOrderFun={},p.Vue))})(this,function(p,g){"use strict";function lt(){this.__data__=[],this.size=0}function pe(e,t){return e===t||e!==e&&t!==t}function W(e,t){for(var r=e.length;r--;)if(pe(e[r][0],t))return r;return-1}var dt=Array.prototype,pt=dt.splice;function gt(e){var t=this.__data__,r=W(t,e);if(r<0)return!1;var a=t.length-1;return r==a?t.pop():pt.call(t,r,1),--this.size,!0}function ht(e){var t=this.__data__,r=W(t,e);return r<0?void 0:t[r][1]}function bt(e){return W(this.__data__,e)>-1}function yt(e,t){var r=this.__data__,a=W(r,e);return a<0?(++this.size,r.push([e,t])):r[a][1]=t,this}function j(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}j.prototype.clear=lt,j.prototype.delete=gt,j.prototype.get=ht,j.prototype.has=bt,j.prototype.set=yt;function vt(){this.__data__=new j,this.size=0}function $t(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}function _t(e){return this.__data__.get(e)}function Tt(e){return this.__data__.has(e)}var mt=typeof global=="object"&&global&&global.Object===Object&&global;const ge=mt;var jt=typeof self=="object"&&self&&self.Object===Object&&self,wt=ge||jt||Function("return this")();const T=wt;var Ot=T.Symbol;const I=Ot;var he=Object.prototype,At=he.hasOwnProperty,St=he.toString,D=I?I.toStringTag:void 0;function Pt(e){var t=At.call(e,D),r=e[D];try{e[D]=void 0;var a=!0}catch{}var c=St.call(e);return a&&(t?e[D]=r:delete e[D]),c}var Et=Object.prototype,Ct=Et.toString;function It(e){return Ct.call(e)}var xt="[object Null]",Ft="[object Undefined]",be=I?I.toStringTag:void 0;function U(e){return e==null?e===void 0?Ft:xt:be&&be in Object(e)?Pt(e):It(e)}function B(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Mt="[object AsyncFunction]",Rt="[object Function]",Dt="[object GeneratorFunction]",Ut="[object Proxy]";function ye(e){if(!B(e))return!1;var t=U(e);return t==Rt||t==Dt||t==Mt||t==Ut}var Bt=T["__core-js_shared__"];const X=Bt;var ve=function(){var e=/[^.]+$/.exec(X&&X.keys&&X.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Lt(e){return!!ve&&ve in e}var Gt=Function.prototype,Nt=Gt.toString;function A(e){if(e!=null){try{return Nt.call(e)}catch{}try{return e+""}catch{}}return""}var zt=/[\\^$.*+?()[\]{}|]/g,Kt=/^\[object .+?Constructor\]$/,Ht=Function.prototype,Vt=Object.prototype,Wt=Ht.toString,qt=Vt.hasOwnProperty,Yt=RegExp("^"+Wt.call(qt).replace(zt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Jt(e){if(!B(e)||Lt(e))return!1;var t=ye(e)?Yt:Kt;return t.test(A(e))}function Xt(e,t){return e==null?void 0:e[t]}function S(e,t){var r=Xt(e,t);return Jt(r)?r:void 0}var Zt=S(T,"Map");const L=Zt;var Qt=S(Object,"create");const G=Qt;function kt(){this.__data__=G?G(null):{},this.size=0}function er(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var tr="__lodash_hash_undefined__",rr=Object.prototype,nr=rr.hasOwnProperty;function ar(e){var t=this.__data__;if(G){var r=t[e];return r===tr?void 0:r}return nr.call(t,e)?t[e]:void 0}var or=Object.prototype,ir=or.hasOwnProperty;function sr(e){var t=this.__data__;return G?t[e]!==void 0:ir.call(t,e)}var cr="__lodash_hash_undefined__";function ur(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=G&&t===void 0?cr:t,this}function P(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}P.prototype.clear=kt,P.prototype.delete=er,P.prototype.get=ar,P.prototype.has=sr,P.prototype.set=ur;function fr(){this.size=0,this.__data__={hash:new P,map:new(L||j),string:new P}}function lr(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function q(e,t){var r=e.__data__;return lr(t)?r[typeof t=="string"?"string":"hash"]:r.map}function dr(e){var t=q(this,e).delete(e);return this.size-=t?1:0,t}function pr(e){return q(this,e).get(e)}function gr(e){return q(this,e).has(e)}function hr(e,t){var r=q(this,e),a=r.size;return r.set(e,t),this.size+=r.size==a?0:1,this}function x(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}x.prototype.clear=fr,x.prototype.delete=dr,x.prototype.get=pr,x.prototype.has=gr,x.prototype.set=hr;var br=200;function yr(e,t){var r=this.__data__;if(r instanceof j){var a=r.__data__;if(!L||a.length<br-1)return a.push([e,t]),this.size=++r.size,this;r=this.__data__=new x(a)}return r.set(e,t),this.size=r.size,this}function F(e){var t=this.__data__=new j(e);this.size=t.size}F.prototype.clear=vt,F.prototype.delete=$t,F.prototype.get=_t,F.prototype.has=Tt,F.prototype.set=yr;function vr(e,t){for(var r=-1,a=e==null?0:e.length;++r<a&&t(e[r],r,e)!==!1;);return e}var $r=function(){try{var e=S(Object,"defineProperty");return e({},"",{}),e}catch{}}();const $e=$r;function _e(e,t,r){t=="__proto__"&&$e?$e(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var _r=Object.prototype,Tr=_r.hasOwnProperty;function Te(e,t,r){var a=e[t];(!(Tr.call(e,t)&&pe(a,r))||r===void 0&&!(t in e))&&_e(e,t,r)}function Y(e,t,r,a){var c=!r;r||(r={});for(var s=-1,i=t.length;++s<i;){var h=t[s],v=a?a(r[h],e[h],h,r,e):void 0;v===void 0&&(v=e[h]),c?_e(r,h,v):Te(r,h,v)}return r}function mr(e,t){for(var r=-1,a=Array(e);++r<e;)a[r]=t(r);return a}function N(e){return e!=null&&typeof e=="object"}var jr="[object Arguments]";function me(e){return N(e)&&U(e)==jr}var je=Object.prototype,wr=je.hasOwnProperty,Or=je.propertyIsEnumerable,Ar=me(function(){return arguments}())?me:function(e){return N(e)&&wr.call(e,"callee")&&!Or.call(e,"callee")};const Sr=Ar;var Pr=Array.isArray;const Z=Pr;function Er(){return!1}var we=typeof p=="object"&&p&&!p.nodeType&&p,Oe=we&&typeof module=="object"&&module&&!module.nodeType&&module,Cr=Oe&&Oe.exports===we,Ae=Cr?T.Buffer:void 0,Ir=Ae?Ae.isBuffer:void 0,xr=Ir||Er;const Se=xr;var Fr=9007199254740991,Mr=/^(?:0|[1-9]\d*)$/;function Rr(e,t){var r=typeof e;return t=t??Fr,!!t&&(r=="number"||r!="symbol"&&Mr.test(e))&&e>-1&&e%1==0&&e<t}var Dr=9007199254740991;function Pe(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Dr}var Ur="[object Arguments]",Br="[object Array]",Lr="[object Boolean]",Gr="[object Date]",Nr="[object Error]",zr="[object Function]",Kr="[object Map]",Hr="[object Number]",Vr="[object Object]",Wr="[object RegExp]",qr="[object Set]",Yr="[object String]",Jr="[object WeakMap]",Xr="[object ArrayBuffer]",Zr="[object DataView]",Qr="[object Float32Array]",kr="[object Float64Array]",en="[object Int8Array]",tn="[object Int16Array]",rn="[object Int32Array]",nn="[object Uint8Array]",an="[object Uint8ClampedArray]",on="[object Uint16Array]",sn="[object Uint32Array]",f={};f[Qr]=f[kr]=f[en]=f[tn]=f[rn]=f[nn]=f[an]=f[on]=f[sn]=!0,f[Ur]=f[Br]=f[Xr]=f[Lr]=f[Zr]=f[Gr]=f[Nr]=f[zr]=f[Kr]=f[Hr]=f[Vr]=f[Wr]=f[qr]=f[Yr]=f[Jr]=!1;function cn(e){return N(e)&&Pe(e.length)&&!!f[U(e)]}function Q(e){return function(t){return e(t)}}var Ee=typeof p=="object"&&p&&!p.nodeType&&p,z=Ee&&typeof module=="object"&&module&&!module.nodeType&&module,un=z&&z.exports===Ee,k=un&&ge.process,fn=function(){try{var e=z&&z.require&&z.require("util").types;return e||k&&k.binding&&k.binding("util")}catch{}}();const M=fn;var Ce=M&&M.isTypedArray,ln=Ce?Q(Ce):cn;const dn=ln;var pn=Object.prototype,gn=pn.hasOwnProperty;function Ie(e,t){var r=Z(e),a=!r&&Sr(e),c=!r&&!a&&Se(e),s=!r&&!a&&!c&&dn(e),i=r||a||c||s,h=i?mr(e.length,String):[],v=h.length;for(var b in e)(t||gn.call(e,b))&&!(i&&(b=="length"||c&&(b=="offset"||b=="parent")||s&&(b=="buffer"||b=="byteLength"||b=="byteOffset")||Rr(b,v)))&&h.push(b);return h}var hn=Object.prototype;function ee(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||hn;return e===r}function xe(e,t){return function(r){return e(t(r))}}var bn=xe(Object.keys,Object);const yn=bn;var vn=Object.prototype,$n=vn.hasOwnProperty;function _n(e){if(!ee(e))return yn(e);var t=[];for(var r in Object(e))$n.call(e,r)&&r!="constructor"&&t.push(r);return t}function Fe(e){return e!=null&&Pe(e.length)&&!ye(e)}function te(e){return Fe(e)?Ie(e):_n(e)}function Tn(e,t){return e&&Y(t,te(t),e)}function mn(e){var t=[];if(e!=null)for(var r in Object(e))t.push(r);return t}var jn=Object.prototype,wn=jn.hasOwnProperty;function On(e){if(!B(e))return mn(e);var t=ee(e),r=[];for(var a in e)a=="constructor"&&(t||!wn.call(e,a))||r.push(a);return r}function re(e){return Fe(e)?Ie(e,!0):On(e)}function An(e,t){return e&&Y(t,re(t),e)}var Me=typeof p=="object"&&p&&!p.nodeType&&p,Re=Me&&typeof module=="object"&&module&&!module.nodeType&&module,Sn=Re&&Re.exports===Me,De=Sn?T.Buffer:void 0,Ue=De?De.allocUnsafe:void 0;function Pn(e,t){if(t)return e.slice();var r=e.length,a=Ue?Ue(r):new e.constructor(r);return e.copy(a),a}function En(e,t){var r=-1,a=e.length;for(t||(t=Array(a));++r<a;)t[r]=e[r];return t}function Cn(e,t){for(var r=-1,a=e==null?0:e.length,c=0,s=[];++r<a;){var i=e[r];t(i,r,e)&&(s[c++]=i)}return s}function Be(){return[]}var In=Object.prototype,xn=In.propertyIsEnumerable,Le=Object.getOwnPropertySymbols,Fn=Le?function(e){return e==null?[]:(e=Object(e),Cn(Le(e),function(t){return xn.call(e,t)}))}:Be;const ne=Fn;function Mn(e,t){return Y(e,ne(e),t)}function Ge(e,t){for(var r=-1,a=t.length,c=e.length;++r<a;)e[c+r]=t[r];return e}var Rn=xe(Object.getPrototypeOf,Object);const Ne=Rn;var Dn=Object.getOwnPropertySymbols,Un=Dn?function(e){for(var t=[];e;)Ge(t,ne(e)),e=Ne(e);return t}:Be;const ze=Un;function Bn(e,t){return Y(e,ze(e),t)}function Ke(e,t,r){var a=t(e);return Z(e)?a:Ge(a,r(e))}function Ln(e){return Ke(e,te,ne)}function Gn(e){return Ke(e,re,ze)}var Nn=S(T,"DataView");const ae=Nn;var zn=S(T,"Promise");const oe=zn;var Kn=S(T,"Set");const ie=Kn;var Hn=S(T,"WeakMap");const se=Hn;var He="[object Map]",Vn="[object Object]",Ve="[object Promise]",We="[object Set]",qe="[object WeakMap]",Ye="[object DataView]",Wn=A(ae),qn=A(L),Yn=A(oe),Jn=A(ie),Xn=A(se),E=U;(ae&&E(new ae(new ArrayBuffer(1)))!=Ye||L&&E(new L)!=He||oe&&E(oe.resolve())!=Ve||ie&&E(new ie)!=We||se&&E(new se)!=qe)&&(E=function(e){var t=U(e),r=t==Vn?e.constructor:void 0,a=r?A(r):"";if(a)switch(a){case Wn:return Ye;case qn:return He;case Yn:return Ve;case Jn:return We;case Xn:return qe}return t});const ce=E;var Zn=Object.prototype,Qn=Zn.hasOwnProperty;function kn(e){var t=e.length,r=new e.constructor(t);return t&&typeof e[0]=="string"&&Qn.call(e,"index")&&(r.index=e.index,r.input=e.input),r}var ea=T.Uint8Array;const Je=ea;function ue(e){var t=new e.constructor(e.byteLength);return new Je(t).set(new Je(e)),t}function ta(e,t){var r=t?ue(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}var ra=/\w*$/;function na(e){var t=new e.constructor(e.source,ra.exec(e));return t.lastIndex=e.lastIndex,t}var Xe=I?I.prototype:void 0,Ze=Xe?Xe.valueOf:void 0;function aa(e){return Ze?Object(Ze.call(e)):{}}function oa(e,t){var r=t?ue(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}var ia="[object Boolean]",sa="[object Date]",ca="[object Map]",ua="[object Number]",fa="[object RegExp]",la="[object Set]",da="[object String]",pa="[object Symbol]",ga="[object ArrayBuffer]",ha="[object DataView]",ba="[object Float32Array]",ya="[object Float64Array]",va="[object Int8Array]",$a="[object Int16Array]",_a="[object Int32Array]",Ta="[object Uint8Array]",ma="[object Uint8ClampedArray]",ja="[object Uint16Array]",wa="[object Uint32Array]";function Oa(e,t,r){var a=e.constructor;switch(t){case ga:return ue(e);case ia:case sa:return new a(+e);case ha:return ta(e,r);case ba:case ya:case va:case $a:case _a:case Ta:case ma:case ja:case wa:return oa(e,r);case ca:return new a;case ua:case da:return new a(e);case fa:return na(e);case la:return new a;case pa:return aa(e)}}var Qe=Object.create,Aa=function(){function e(){}return function(t){if(!B(t))return{};if(Qe)return Qe(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();const Sa=Aa;function Pa(e){return typeof e.constructor=="function"&&!ee(e)?Sa(Ne(e)):{}}var Ea="[object Map]";function Ca(e){return N(e)&&ce(e)==Ea}var ke=M&&M.isMap,Ia=ke?Q(ke):Ca;const xa=Ia;var Fa="[object Set]";function Ma(e){return N(e)&&ce(e)==Fa}var et=M&&M.isSet,Ra=et?Q(et):Ma;const Da=Ra;var Ua=1,Ba=2,La=4,tt="[object Arguments]",Ga="[object Array]",Na="[object Boolean]",za="[object Date]",Ka="[object Error]",rt="[object Function]",Ha="[object GeneratorFunction]",Va="[object Map]",Wa="[object Number]",nt="[object Object]",qa="[object RegExp]",Ya="[object Set]",Ja="[object String]",Xa="[object Symbol]",Za="[object WeakMap]",Qa="[object ArrayBuffer]",ka="[object DataView]",eo="[object Float32Array]",to="[object Float64Array]",ro="[object Int8Array]",no="[object Int16Array]",ao="[object Int32Array]",oo="[object Uint8Array]",io="[object Uint8ClampedArray]",so="[object Uint16Array]",co="[object Uint32Array]",u={};u[tt]=u[Ga]=u[Qa]=u[ka]=u[Na]=u[za]=u[eo]=u[to]=u[ro]=u[no]=u[ao]=u[Va]=u[Wa]=u[nt]=u[qa]=u[Ya]=u[Ja]=u[Xa]=u[oo]=u[io]=u[so]=u[co]=!0,u[Ka]=u[rt]=u[Za]=!1;function J(e,t,r,a,c,s){var i,h=t&Ua,v=t&Ba,b=t&La;if(r&&(i=c?r(e,a,c,s):r(e)),i!==void 0)return i;if(!B(e))return e;var m=Z(e);if(m){if(i=kn(e),!h)return En(e,i)}else{var $=ce(e),w=$==rt||$==Ha;if(Se(e))return Pn(e,h);if($==nt||$==tt||w&&!c){if(i=v||w?{}:Pa(e),!h)return v?Bn(e,An(i,e)):Mn(e,Tn(i,e))}else{if(!u[$])return c?e:{};i=Oa(e,$,h)}}s||(s=new F);var O=s.get(e);if(O)return O;s.set(e,i),Da(e)?e.forEach(function(y){i.add(J(y,t,r,y,e,s))}):xa(e)&&e.forEach(function(y,_){i.set(_,J(y,t,r,_,e,s))});var R=b?v?Gn:Ln:v?re:te,H=m?void 0:R(e);return vr(H||e,function(y,_){H&&(_=y,y=e[_]),Te(i,_,J(y,t,r,_,e,s))}),i}var uo=1,fo=4;function lo(e){return J(e,uo|fo)}const at=e=>e instanceof Error?e:new Error(String(e));function po(e){return e!==null&&(typeof e=="object"||typeof e=="function")&&typeof e.then=="function"}function K(e){if(!Array.isArray(e))throw new Error("Entry must be a list of functions")}function fe(e,t,r){K(e());const a=g.shallowRef(null),c=g.shallowRef(),s=g.ref(!1),i=g.shallowRef([]),h=r.clone??!0,v=r.retainResults??!0,b=n=>h===!1?n:typeof h=="function"?h(n):lo(n);let m,$=!1,w=0,O,R=[];function H(){if(a.value)return[a.value,void 0];try{return[null,b(c.value)]}catch(n){return[at(n),void 0]}}function y(n,o){if(n.settled)return;n.active=!1,n.settled=!0,n.outcome=o,n.resolve(o);const l=n.callback;n.callback=void 0,l==null||l(o)}function _(n){const o=++w,l=m;return m=void 0,l&&(l.cancelled=!0,l.tasks=[],l.data=void 0,y(l,[new Error(n),void 0])),o}function le(n){R=n.slice(),i.value=n.map(()=>({status:"unStart",data:void 0}))}le(e());function V(n,o){if(n.cancelled||n.settled)return;const l=at(o),d=i.value[n.index];d&&(d.status="rejected"),c.value=void 0,!n.cancelled&&(a.value=l,!n.cancelled&&(s.value=!1,!n.cancelled&&(g.triggerRef(i),!n.cancelled&&(m=void 0,n.tasks=[],n.data=void 0,y(n,[l,void 0])))))}function it(n){if(n.cancelled||n.settled)return;let o;try{o=[null,b(n.data)]}catch(l){V(n,l);return}c.value=n.data,!n.cancelled&&(a.value=null,!n.cancelled&&(n.index===n.tasks.length&&(m=void 0,n.tasks=[],n.data=void 0,s.value=!1),y(n,o)))}function st(n,o){n.cancelled||(!v&&n.index>0&&(i.value[n.index-1].data=void 0),i.value[n.index]={status:"fulfilled",data:o},n.data=o,n.index++,g.triggerRef(i))}function de(n){for(;!n.cancelled&&n.index<n.tasks.length;){const o=n.tasks[n.index];if(typeof o!="function"){V(n,new Error(`The parameter at index ${n.index} is not a function.`));return}if(i.value[n.index].status="start",g.triggerRef(i),n.cancelled)return;let l,d;try{l=o(b(n.data)),d=t||po(l)}catch(C){V(n,C);return}if(d){Promise.resolve(l).then(C=>{n.cancelled||(st(n,C),s.value||n.index===n.tasks.length?it(n):de(n))},C=>V(n,C)).catch(C=>V(n,C));return}if(st(n,l),s.value)break}it(n)}function ct(n,o){n.active=!0,n.settled=!1,n.outcome=void 0,n.callback=o,n.promise=new Promise(l=>{n.resolve=l})}function yo(n,o){K(e());const l=_("Execution superseded by start()"),d={tasks:e().slice(),index:0,data:n,active:!1,cancelled:!1,settled:!1,promise:Promise.resolve([null,void 0]),resolve:()=>{}};return ct(d,o),l!==w?(y(d,[new Error("Execution superseded by a newer operation"),void 0]),d):$?(y(d,[new Error("Runner has been disposed"),void 0]),d):(m=d,s.value=!1,d.cancelled||(a.value=null,d.cancelled)||(c.value=void 0,d.cancelled)||(le(d.tasks),de(d)),d)}function vo(n){const o=m;if(!(!o||$))return s.value=!1,o.cancelled||o.active||(ct(o,n),de(o)),o}function $o(){const n=m;if(!n)return Promise.resolve(H());const o=n.promise;return s.value=!0,o}function ut(n){if($)throw new Error("Runner has been disposed");K(n);const o=_("Execution invalidated by a list update");o===w&&(s.value=!1,o===w&&(c.value=void 0,o===w&&(a.value=null,o===w&&le(n))))}function _o(n){O=g.watch(()=>n.value.slice(),o=>{(o.length!==R.length||o.some((l,d)=>l!==R[d]))&&ut(o)})}function ft(){$||($=!0,O==null||O(),O=void 0,_("Runner has been disposed"),e=()=>[],R=[],s.value=!1,c.value=void 0,a.value=null,i.value=[])}return g.getCurrentScope()&&g.onScopeDispose(ft),{state:{error:g.readonly(a),result:g.readonly(c),statusList:g.readonly(i),isSuspend:g.readonly(s),suspend:$o,dispose:ft},start:yo,resume:vo,currentOutcome:H,reset:ut,observe:_o}}function ot(e){return{...e.state,start:t=>e.start(t).promise,resume:()=>{var t;return((t=e.resume())==null?void 0:t.promise)??Promise.resolve(e.currentOutcome())}}}function go(e,t={}){K(e);let r=e;const a=fe(()=>r,!0,t);return{...ot(a),dispose:()=>{a.state.dispose(),r=[]},update:c=>{K(c);const s=r;r=c;try{a.reset(c)}catch(i){throw r=s,i}}}}function ho(e,t={}){if(!g.isRef(e))throw new Error("Entry must be a ref");const r=fe(()=>e.value,!0,t);return r.observe(e),ot(r)}function bo(e,t={}){if(!g.isRef(e))throw new Error("Entry must be a ref");const r=fe(()=>e.value,!1,t);return r.observe(e),{...r.state,start:(a,c)=>r.start(a,c).outcome,resume:a=>{const c=r.resume(a);if(c)return c.outcome;const s=r.currentOutcome();return a==null||a(s),s}}}p.useOrderFun=go,p.useWatchOrderFun=ho,p.useWatchOrderFunSync=bo,Object.defineProperty(p,Symbol.toStringTag,{value:"Module"})});
|
package/index.d.ts
CHANGED
|
@@ -1,89 +1,89 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
*
|
|
1
|
+
/** @file 本模块提供 Vue 响应式的函数流水线运行器:把一组函数串成有序管道。
|
|
2
|
+
* 同时提供异步 Promise 与同步回调两套 API;
|
|
3
|
+
* 每次执行由「Run」对象承载,当前执行保存在闭包变量「current」中;
|
|
4
|
+
* 新的「start」/「reset」调用通过「invalidate」让在途运行作废(置 cancelled 并清空其任务);
|
|
5
|
+
* 作废的运行由各处短路守卫丢弃,而不是去中止它的 Promise;
|
|
6
|
+
* 三个对外入口 useOrderFun / useWatchOrderFun / useWatchOrderFunSync 共用「createRunner」核心。
|
|
5
7
|
*/
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
type
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
import type { DeepReadonly, Ref } from 'vue';
|
|
9
|
+
/** 单个任务的执行状态;「unStart」为初始态,「start」为执行中,其余为终态。 */
|
|
10
|
+
export type Status = 'unStart' | 'start' | 'fulfilled' | 'rejected';
|
|
11
|
+
/** 任务状态清单:「status」为单任务状态,「data」为其输出值。 */
|
|
12
|
+
export type StatusList<T> = Array<{
|
|
13
|
+
status: Status;
|
|
14
|
+
data: T | undefined;
|
|
11
15
|
}>;
|
|
12
|
-
|
|
13
|
-
type
|
|
14
|
-
|
|
15
|
-
type
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
/** 执行结果二元组:[Error, undefined] 表示失败,[null, T | undefined] 表示成功。 */
|
|
17
|
+
export type OrderResult<T> = [Error, undefined] | [null, T | undefined];
|
|
18
|
+
/** 流水线中的单个任务:接收上一环输出,返回本环输出或该输出的 Promise。 */
|
|
19
|
+
export type FunctionType<T, U> = (data: T) => U | PromiseLike<U>;
|
|
20
|
+
/** 同步 API 的任务类型:与「FunctionType」等价,并可经回调上报异步完成。 */
|
|
21
|
+
export type FunctionTypeSync<T, U> = FunctionType<T, U>;
|
|
22
|
+
/** 同步 API 的一次性完成回调,接收「OrderResult」二元组。 */
|
|
23
|
+
export type CallbackSync<T = unknown, U = T> = (value: OrderResult<U>) => void;
|
|
24
|
+
/** 运行器可选配置。 */
|
|
25
|
+
export interface OrderOptions {
|
|
26
|
+
/** 是否克隆每个输入与对外结果,默认深拷贝。 */
|
|
27
|
+
clone?: boolean | (<V>(value: V) => V);
|
|
28
|
+
/** 是否保留全部中间输出,默认保留;置 false 仅保留最新一项。 */
|
|
29
|
+
retainResults?: boolean;
|
|
30
|
+
}
|
|
31
|
+
/** 运行器对外暴露的只读状态与生命周期操作;不导出,但会随「OrderRunner」一起生成到声明文件。 */
|
|
32
|
+
interface OrderState<U> {
|
|
33
|
+
/** 最近一次失败的错误;未失败时为 null。 */
|
|
34
|
+
error: Readonly<Ref<Readonly<Error | null>>>;
|
|
35
|
+
/** 当前运行的结果;未完成或已清空时为 undefined。 */
|
|
36
|
+
result: Readonly<Ref<DeepReadonly<U | undefined>>>;
|
|
37
|
+
/** 是否处于挂起状态;「suspend」置真,启动、续跑、失败、结束、重置与释放均置假。 */
|
|
38
|
+
isSuspend: Readonly<Ref<boolean>>;
|
|
39
|
+
/** 各任务的执行状态清单,按流水线顺序排列。 */
|
|
40
|
+
statusList: Readonly<Ref<DeepReadonly<StatusList<U>>>>;
|
|
41
|
+
/** 挂起当前运行并返回其结果;无在途运行时立即返回当前结果。 */
|
|
42
|
+
suspend: () => Promise<OrderResult<U>>;
|
|
43
|
+
/** 释放运行器:停止监听、作废在途运行并把全部状态清空。 */
|
|
44
|
+
dispose: () => void;
|
|
45
|
+
}
|
|
46
|
+
/** 异步运行器:状态来自「OrderState」,另加启动与续跑两个入口。 */
|
|
47
|
+
export interface OrderRunner<T, U> extends OrderState<U> {
|
|
48
|
+
/** 以给定输入启动一次运行,返回其结果 Promise。 */
|
|
49
|
+
start: (data?: T) => Promise<OrderResult<U>>;
|
|
50
|
+
/** 续跑挂起的运行并返回其结果 Promise;无在途运行时返回当前结果。 */
|
|
51
|
+
resume: () => Promise<OrderResult<U>>;
|
|
52
|
+
}
|
|
53
|
+
/** 手工运行器:在异步运行器之上增加替换任务列表的入口。 */
|
|
54
|
+
export interface ManualOrderRunner<T, U> extends OrderRunner<T, U> {
|
|
55
|
+
/** 替换任务列表;列表非法或运行器已释放时抛出错误。 */
|
|
56
|
+
update: (list: Array<FunctionType<T, U>>) => void;
|
|
57
|
+
}
|
|
58
|
+
/** 同步运行器:状态来自「OrderState」,结果通过返回值或回调给出。 */
|
|
59
|
+
export interface SyncOrderRunner<T, U> extends OrderState<U> {
|
|
60
|
+
/** 有任务未完成时返回 undefined,完成时由回调接收结果。 */
|
|
61
|
+
start: (data?: T, callback?: CallbackSync<T, U>) => OrderResult<U> | undefined;
|
|
62
|
+
/** 续跑挂起的同步运行;同样以返回值为准,完成时回调。 */
|
|
63
|
+
resume: (callback?: CallbackSync<T, U>) => OrderResult<U> | undefined;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* 创建手工异步运行器:任务列表由调用方通过「update」替换。
|
|
67
|
+
* @param entryList 初始任务列表,必须是函数数组。
|
|
68
|
+
* @param options 运行器配置,默认深拷贝并保留全部中间输出。
|
|
69
|
+
* @returns 手工异步运行器;调用「dispose」后运行器被释放并清空内部列表引用。
|
|
70
|
+
* @throws 入参不是数组时抛出「Error」;「update」校验失败时也会重新抛出。
|
|
71
|
+
*/
|
|
72
|
+
export declare function useOrderFun<T = unknown, U = T>(entryList: Array<FunctionType<T, U>>, options?: OrderOptions): ManualOrderRunner<T, U>;
|
|
19
73
|
/**
|
|
20
|
-
*
|
|
21
|
-
* @param
|
|
22
|
-
*
|
|
23
|
-
* @
|
|
24
|
-
*
|
|
25
|
-
* const { error, result, start, suspend, update, statusList } = useOrderFun([f1, f2])
|
|
26
|
-
* statusList: Ref<
|
|
27
|
-
* Array<{
|
|
28
|
-
* status: Status; // 'unStart': 未启 | 'start': 启动 | 'fulfilled': 完成 | 'rejected': 错误;
|
|
29
|
-
* data: any;
|
|
30
|
-
* }>
|
|
31
|
-
* >
|
|
32
|
-
*
|
|
33
|
-
* update([f1, f3, f5])
|
|
74
|
+
* 创建监听响应式列表的异步运行器:成员或顺序变化时自动重置。
|
|
75
|
+
* @param entry 任务列表的响应式引用。
|
|
76
|
+
* @param options 运行器配置,默认深拷贝并保留全部中间输出。
|
|
77
|
+
* @returns 异步运行器。
|
|
78
|
+
* @throws 入参不是「Ref」时抛出「Error」。
|
|
34
79
|
*/
|
|
35
|
-
export declare function
|
|
36
|
-
entryList: Array<FunctionType<T, U>>
|
|
37
|
-
): {
|
|
38
|
-
error: Readonly<Ref<Readonly<Error | null>>>;
|
|
39
|
-
result: Readonly<Ref<DeepReadonly<U | undefined>>>;
|
|
40
|
-
isSuspend: Readonly<Ref<boolean>>;
|
|
41
|
-
start: (data?: T) => Promise<[Error, undefined] | [null, U]>;
|
|
42
|
-
update: (list: Array<FunctionType<T, U>>) => void;
|
|
43
|
-
resume: () => Promise<[Error, undefined] | [null, U]>;
|
|
44
|
-
suspend: () => Promise<[Error, undefined] | [null, U]>;
|
|
45
|
-
statusList: Readonly<Ref<DeepReadonly<StatusList<U>>>>;
|
|
46
|
-
};
|
|
47
|
-
|
|
80
|
+
export declare function useWatchOrderFun<T = unknown, U = T>(entry: Ref<Array<FunctionType<T, U>>>, options?: OrderOptions): OrderRunner<T, U>;
|
|
48
81
|
/**
|
|
49
|
-
*
|
|
50
|
-
* @param
|
|
51
|
-
*
|
|
52
|
-
* @
|
|
53
|
-
*
|
|
54
|
-
* const listRef = ref([f1, f2])
|
|
55
|
-
* const { error, result, start, suspend, statusList } = useWatchOrderFun(listRef)
|
|
56
|
-
* statusList: Ref<
|
|
57
|
-
* Array<{
|
|
58
|
-
* status: Status; // 'unStart': 未启 | 'start': 启动 | 'fulfilled': 完成 | 'rejected': 错误;
|
|
59
|
-
* data: any;
|
|
60
|
-
* }>
|
|
61
|
-
* >
|
|
82
|
+
* 创建监听响应式列表的同步运行器:结果通过返回值或回调同步给出。
|
|
83
|
+
* @param entry 任务列表的响应式引用。
|
|
84
|
+
* @param options 运行器配置,默认深拷贝并保留全部中间输出。
|
|
85
|
+
* @returns 同步运行器。
|
|
86
|
+
* @throws 入参不是「Ref」时抛出「Error」。
|
|
62
87
|
*/
|
|
63
|
-
export declare function
|
|
64
|
-
|
|
65
|
-
): {
|
|
66
|
-
error: Readonly<Ref<Readonly<Error | null>>>;
|
|
67
|
-
result: Readonly<Ref<DeepReadonly<U | undefined>>>;
|
|
68
|
-
isSuspend: Readonly<Ref<boolean>>;
|
|
69
|
-
start: (data?: T) => Promise<[Error, undefined] | [null, U]>;
|
|
70
|
-
resume: () => Promise<[Error, undefined] | [null, U]>;
|
|
71
|
-
suspend: () => Promise<[Error, undefined] | [null, U]>;
|
|
72
|
-
statusList: Readonly<Ref<DeepReadonly<StatusList<U>>>>;
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
// 同步函数执行
|
|
76
|
-
export declare function useWatchOrderFunSync<T = any, U = any>(
|
|
77
|
-
entry: Ref<Array<FunctionTypeSync<T, U>>>
|
|
78
|
-
): {
|
|
79
|
-
error: Readonly<Ref<Readonly<Error | null>>>;
|
|
80
|
-
result: Readonly<Ref<DeepReadonly<U | undefined>>>;
|
|
81
|
-
isSuspend: Readonly<Ref<boolean>>;
|
|
82
|
-
start: (
|
|
83
|
-
data?: T,
|
|
84
|
-
callback?: CallbackSync<T, U>
|
|
85
|
-
) => [Error, undefined] | [null, U];
|
|
86
|
-
resume: (callback?: CallbackSync<T, U>) => [Error, undefined] | [null, U];
|
|
87
|
-
suspend: () => Promise<[Error, undefined] | [null, U]>;
|
|
88
|
-
statusList: Readonly<Ref<DeepReadonly<StatusList<U>>>>;
|
|
89
|
-
};
|
|
88
|
+
export declare function useWatchOrderFunSync<T = unknown, U = T>(entry: Ref<Array<FunctionTypeSync<T, U>>>, options?: OrderOptions): SyncOrderRunner<T, U>;
|
|
89
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,20 +1,25 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "yann-useorderfun",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "yann-useOrderFun",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"main": "./dist/index.umd.
|
|
6
|
+
"main": "./dist/index.umd.cjs",
|
|
7
7
|
"module": "./dist/index.js",
|
|
8
8
|
"types": "index.d.ts",
|
|
9
9
|
"exports": {
|
|
10
10
|
".": {
|
|
11
|
+
"types": "./index.d.ts",
|
|
11
12
|
"import": "./dist/index.js",
|
|
12
|
-
"require": "./dist/index.umd.
|
|
13
|
+
"require": "./dist/index.umd.cjs"
|
|
13
14
|
}
|
|
14
15
|
},
|
|
15
16
|
"scripts": {
|
|
16
17
|
"dev": "vite",
|
|
17
|
-
"build": "vite build"
|
|
18
|
+
"build": "pnpm typecheck && vite build && pnpm build:types",
|
|
19
|
+
"build:types": "tsc -p tsconfig.build.json && node scripts/generate-types.mjs",
|
|
20
|
+
"typecheck": "vue-tsc --noEmit",
|
|
21
|
+
"test": "pnpm build && node --test tests/*.test.mjs",
|
|
22
|
+
"benchmark": "pnpm build && node --expose-gc scripts/benchmark.mjs"
|
|
18
23
|
},
|
|
19
24
|
"keywords": [],
|
|
20
25
|
"author": "Yann",
|
|
@@ -22,20 +27,21 @@
|
|
|
22
27
|
"devDependencies": {
|
|
23
28
|
"@types/lodash-es": "^4.17.7",
|
|
24
29
|
"@vitejs/plugin-vue": "^4.2.3",
|
|
30
|
+
"lodash-es": "^4.17.21",
|
|
25
31
|
"typescript": "^5.1.3",
|
|
26
32
|
"vite": "^4.3.9",
|
|
27
|
-
"vite-plugin-banner": "^0.7.0"
|
|
28
|
-
|
|
29
|
-
"dependencies": {
|
|
30
|
-
"await-to-js": "^3.0.0",
|
|
31
|
-
"lodash-es": "^4.17.21",
|
|
33
|
+
"vite-plugin-banner": "^0.7.0",
|
|
34
|
+
"vue-tsc": "^3.3.12",
|
|
32
35
|
"vue": "^3.3.4"
|
|
33
36
|
},
|
|
34
37
|
"peerDependencies": {
|
|
35
|
-
"vue": ">=3.
|
|
38
|
+
"vue": ">=3.2.0"
|
|
36
39
|
},
|
|
37
40
|
"files": [
|
|
38
41
|
"dist",
|
|
39
42
|
"index.d.ts"
|
|
40
|
-
]
|
|
41
|
-
|
|
43
|
+
],
|
|
44
|
+
"publishConfig": {
|
|
45
|
+
"registry": "https://registry.npmjs.org/"
|
|
46
|
+
}
|
|
47
|
+
}
|
package/dist/index.umd.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! yann-useorderfun v0.3.2 by Yann */
|
|
2
|
-
(function(h,u){typeof exports=="object"&&typeof module<"u"?u(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],u):(h=typeof globalThis<"u"?globalThis:h||self,u(h.YannUseOrderFun={},h.Vue))})(this,function(h,u){"use strict";var rt=typeof global=="object"&&global&&global.Object===Object&&global;const le=rt;var nt=typeof self=="object"&&self&&self.Object===Object&&self,at=le||nt||Function("return this")();const T=at;var ot=T.Symbol;const C=ot;var fe=Object.prototype,st=fe.hasOwnProperty,it=fe.toString,B=C?C.toStringTag:void 0;function ut(e){var t=st.call(e,B),r=e[B];try{e[B]=void 0;var n=!0}catch{}var o=it.call(e);return n&&(t?e[B]=r:delete e[B]),o}var ct=Object.prototype,lt=ct.toString;function ft(e){return lt.call(e)}var dt="[object Null]",pt="[object Undefined]",de=C?C.toStringTag:void 0;function G(e){return e==null?e===void 0?pt:dt:de&&de in Object(e)?ut(e):ft(e)}function L(e){return e!=null&&typeof e=="object"}var gt=Array.isArray;const F=gt;function N(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var ht="[object AsyncFunction]",yt="[object Function]",vt="[object GeneratorFunction]",bt="[object Proxy]";function pe(e){if(!N(e))return!1;var t=G(e);return t==yt||t==vt||t==ht||t==bt}var jt=T["__core-js_shared__"];const J=jt;var ge=function(){var e=/[^.]+$/.exec(J&&J.keys&&J.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function _t(e){return!!ge&&ge in e}var $t=Function.prototype,Tt=$t.toString;function S(e){if(e!=null){try{return Tt.call(e)}catch{}try{return e+""}catch{}}return""}var wt=/[\\^$.*+?()[\]{}|]/g,mt=/^\[object .+?Constructor\]$/,Ot=Function.prototype,St=Object.prototype,At=Ot.toString,Pt=St.hasOwnProperty,Et=RegExp("^"+At.call(Pt).replace(wt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function It(e){if(!N(e)||_t(e))return!1;var t=pe(e)?Et:mt;return t.test(S(e))}function Ct(e,t){return e==null?void 0:e[t]}function A(e,t){var r=Ct(e,t);return It(r)?r:void 0}var Ft=A(T,"WeakMap");const X=Ft;var he=Object.create,Mt=function(){function e(){}return function(t){if(!N(t))return{};if(he)return he(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();const xt=Mt;function Dt(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r<n;)t[r]=e[r];return t}var Ut=function(){try{var e=A(Object,"defineProperty");return e({},"",{}),e}catch{}}();const ye=Ut;function Bt(e,t){for(var r=-1,n=e==null?0:e.length;++r<n&&t(e[r],r,e)!==!1;);return e}var Gt=9007199254740991,Lt=/^(?:0|[1-9]\d*)$/;function Nt(e,t){var r=typeof e;return t=t??Gt,!!t&&(r=="number"||r!="symbol"&&Lt.test(e))&&e>-1&&e%1==0&&e<t}function ve(e,t,r){t=="__proto__"&&ye?ye(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function be(e,t){return e===t||e!==e&&t!==t}var zt=Object.prototype,Rt=zt.hasOwnProperty;function je(e,t,r){var n=e[t];(!(Rt.call(e,t)&&be(n,r))||r===void 0&&!(t in e))&&ve(e,t,r)}function H(e,t,r,n){var o=!r;r||(r={});for(var a=-1,s=t.length;++a<s;){var f=t[a],g=n?n(r[f],e[f],f,r,e):void 0;g===void 0&&(g=e[f]),o?ve(r,f,g):je(r,f,g)}return r}var Kt=9007199254740991;function _e(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Kt}function $e(e){return e!=null&&_e(e.length)&&!pe(e)}var Ht=Object.prototype;function Z(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||Ht;return e===r}function Wt(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}var Vt="[object Arguments]";function Te(e){return L(e)&&G(e)==Vt}var we=Object.prototype,qt=we.hasOwnProperty,Yt=we.propertyIsEnumerable,Jt=Te(function(){return arguments}())?Te:function(e){return L(e)&&qt.call(e,"callee")&&!Yt.call(e,"callee")};const Xt=Jt;function Zt(){return!1}var me=typeof h=="object"&&h&&!h.nodeType&&h,Oe=me&&typeof module=="object"&&module&&!module.nodeType&&module,Qt=Oe&&Oe.exports===me,Se=Qt?T.Buffer:void 0,kt=Se?Se.isBuffer:void 0,er=kt||Zt;const Ae=er;var tr="[object Arguments]",rr="[object Array]",nr="[object Boolean]",ar="[object Date]",or="[object Error]",sr="[object Function]",ir="[object Map]",ur="[object Number]",cr="[object Object]",lr="[object RegExp]",fr="[object Set]",dr="[object String]",pr="[object WeakMap]",gr="[object ArrayBuffer]",hr="[object DataView]",yr="[object Float32Array]",vr="[object Float64Array]",br="[object Int8Array]",jr="[object Int16Array]",_r="[object Int32Array]",$r="[object Uint8Array]",Tr="[object Uint8ClampedArray]",wr="[object Uint16Array]",mr="[object Uint32Array]",p={};p[yr]=p[vr]=p[br]=p[jr]=p[_r]=p[$r]=p[Tr]=p[wr]=p[mr]=!0,p[tr]=p[rr]=p[gr]=p[nr]=p[hr]=p[ar]=p[or]=p[sr]=p[ir]=p[ur]=p[cr]=p[lr]=p[fr]=p[dr]=p[pr]=!1;function Or(e){return L(e)&&_e(e.length)&&!!p[G(e)]}function Q(e){return function(t){return e(t)}}var Pe=typeof h=="object"&&h&&!h.nodeType&&h,z=Pe&&typeof module=="object"&&module&&!module.nodeType&&module,Sr=z&&z.exports===Pe,k=Sr&&le.process,Ar=function(){try{var e=z&&z.require&&z.require("util").types;return e||k&&k.binding&&k.binding("util")}catch{}}();const M=Ar;var Ee=M&&M.isTypedArray,Pr=Ee?Q(Ee):Or;const Er=Pr;var Ir=Object.prototype,Cr=Ir.hasOwnProperty;function Ie(e,t){var r=F(e),n=!r&&Xt(e),o=!r&&!n&&Ae(e),a=!r&&!n&&!o&&Er(e),s=r||n||o||a,f=s?Wt(e.length,String):[],g=f.length;for(var y in e)(t||Cr.call(e,y))&&!(s&&(y=="length"||o&&(y=="offset"||y=="parent")||a&&(y=="buffer"||y=="byteLength"||y=="byteOffset")||Nt(y,g)))&&f.push(y);return f}function Ce(e,t){return function(r){return e(t(r))}}var Fr=Ce(Object.keys,Object);const Mr=Fr;var xr=Object.prototype,Dr=xr.hasOwnProperty;function Ur(e){if(!Z(e))return Mr(e);var t=[];for(var r in Object(e))Dr.call(e,r)&&r!="constructor"&&t.push(r);return t}function ee(e){return $e(e)?Ie(e):Ur(e)}function Br(e){var t=[];if(e!=null)for(var r in Object(e))t.push(r);return t}var Gr=Object.prototype,Lr=Gr.hasOwnProperty;function Nr(e){if(!N(e))return Br(e);var t=Z(e),r=[];for(var n in e)n=="constructor"&&(t||!Lr.call(e,n))||r.push(n);return r}function te(e){return $e(e)?Ie(e,!0):Nr(e)}var zr=A(Object,"create");const R=zr;function Rr(){this.__data__=R?R(null):{},this.size=0}function Kr(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Hr="__lodash_hash_undefined__",Wr=Object.prototype,Vr=Wr.hasOwnProperty;function qr(e){var t=this.__data__;if(R){var r=t[e];return r===Hr?void 0:r}return Vr.call(t,e)?t[e]:void 0}var Yr=Object.prototype,Jr=Yr.hasOwnProperty;function Xr(e){var t=this.__data__;return R?t[e]!==void 0:Jr.call(t,e)}var Zr="__lodash_hash_undefined__";function Qr(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=R&&t===void 0?Zr:t,this}function P(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}P.prototype.clear=Rr,P.prototype.delete=Kr,P.prototype.get=qr,P.prototype.has=Xr,P.prototype.set=Qr;function kr(){this.__data__=[],this.size=0}function W(e,t){for(var r=e.length;r--;)if(be(e[r][0],t))return r;return-1}var en=Array.prototype,tn=en.splice;function rn(e){var t=this.__data__,r=W(t,e);if(r<0)return!1;var n=t.length-1;return r==n?t.pop():tn.call(t,r,1),--this.size,!0}function nn(e){var t=this.__data__,r=W(t,e);return r<0?void 0:t[r][1]}function an(e){return W(this.__data__,e)>-1}function on(e,t){var r=this.__data__,n=W(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}function m(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}m.prototype.clear=kr,m.prototype.delete=rn,m.prototype.get=nn,m.prototype.has=an,m.prototype.set=on;var sn=A(T,"Map");const K=sn;function un(){this.size=0,this.__data__={hash:new P,map:new(K||m),string:new P}}function cn(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function V(e,t){var r=e.__data__;return cn(t)?r[typeof t=="string"?"string":"hash"]:r.map}function ln(e){var t=V(this,e).delete(e);return this.size-=t?1:0,t}function fn(e){return V(this,e).get(e)}function dn(e){return V(this,e).has(e)}function pn(e,t){var r=V(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}function x(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}x.prototype.clear=un,x.prototype.delete=ln,x.prototype.get=fn,x.prototype.has=dn,x.prototype.set=pn;function Fe(e,t){for(var r=-1,n=t.length,o=e.length;++r<n;)e[o+r]=t[r];return e}var gn=Ce(Object.getPrototypeOf,Object);const Me=gn;function hn(){this.__data__=new m,this.size=0}function yn(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}function vn(e){return this.__data__.get(e)}function bn(e){return this.__data__.has(e)}var jn=200;function _n(e,t){var r=this.__data__;if(r instanceof m){var n=r.__data__;if(!K||n.length<jn-1)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new x(n)}return r.set(e,t),this.size=r.size,this}function D(e){var t=this.__data__=new m(e);this.size=t.size}D.prototype.clear=hn,D.prototype.delete=yn,D.prototype.get=vn,D.prototype.has=bn,D.prototype.set=_n;function $n(e,t){return e&&H(t,ee(t),e)}function Tn(e,t){return e&&H(t,te(t),e)}var xe=typeof h=="object"&&h&&!h.nodeType&&h,De=xe&&typeof module=="object"&&module&&!module.nodeType&&module,wn=De&&De.exports===xe,Ue=wn?T.Buffer:void 0,Be=Ue?Ue.allocUnsafe:void 0;function mn(e,t){if(t)return e.slice();var r=e.length,n=Be?Be(r):new e.constructor(r);return e.copy(n),n}function On(e,t){for(var r=-1,n=e==null?0:e.length,o=0,a=[];++r<n;){var s=e[r];t(s,r,e)&&(a[o++]=s)}return a}function Ge(){return[]}var Sn=Object.prototype,An=Sn.propertyIsEnumerable,Le=Object.getOwnPropertySymbols,Pn=Le?function(e){return e==null?[]:(e=Object(e),On(Le(e),function(t){return An.call(e,t)}))}:Ge;const re=Pn;function En(e,t){return H(e,re(e),t)}var In=Object.getOwnPropertySymbols,Cn=In?function(e){for(var t=[];e;)Fe(t,re(e)),e=Me(e);return t}:Ge;const Ne=Cn;function Fn(e,t){return H(e,Ne(e),t)}function ze(e,t,r){var n=t(e);return F(e)?n:Fe(n,r(e))}function Mn(e){return ze(e,ee,re)}function xn(e){return ze(e,te,Ne)}var Dn=A(T,"DataView");const ne=Dn;var Un=A(T,"Promise");const ae=Un;var Bn=A(T,"Set");const oe=Bn;var Re="[object Map]",Gn="[object Object]",Ke="[object Promise]",He="[object Set]",We="[object WeakMap]",Ve="[object DataView]",Ln=S(ne),Nn=S(K),zn=S(ae),Rn=S(oe),Kn=S(X),E=G;(ne&&E(new ne(new ArrayBuffer(1)))!=Ve||K&&E(new K)!=Re||ae&&E(ae.resolve())!=Ke||oe&&E(new oe)!=He||X&&E(new X)!=We)&&(E=function(e){var t=G(e),r=t==Gn?e.constructor:void 0,n=r?S(r):"";if(n)switch(n){case Ln:return Ve;case Nn:return Re;case zn:return Ke;case Rn:return He;case Kn:return We}return t});const se=E;var Hn=Object.prototype,Wn=Hn.hasOwnProperty;function Vn(e){var t=e.length,r=new e.constructor(t);return t&&typeof e[0]=="string"&&Wn.call(e,"index")&&(r.index=e.index,r.input=e.input),r}var qn=T.Uint8Array;const qe=qn;function ie(e){var t=new e.constructor(e.byteLength);return new qe(t).set(new qe(e)),t}function Yn(e,t){var r=t?ie(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}var Jn=/\w*$/;function Xn(e){var t=new e.constructor(e.source,Jn.exec(e));return t.lastIndex=e.lastIndex,t}var Ye=C?C.prototype:void 0,Je=Ye?Ye.valueOf:void 0;function Zn(e){return Je?Object(Je.call(e)):{}}function Qn(e,t){var r=t?ie(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}var kn="[object Boolean]",ea="[object Date]",ta="[object Map]",ra="[object Number]",na="[object RegExp]",aa="[object Set]",oa="[object String]",sa="[object Symbol]",ia="[object ArrayBuffer]",ua="[object DataView]",ca="[object Float32Array]",la="[object Float64Array]",fa="[object Int8Array]",da="[object Int16Array]",pa="[object Int32Array]",ga="[object Uint8Array]",ha="[object Uint8ClampedArray]",ya="[object Uint16Array]",va="[object Uint32Array]";function ba(e,t,r){var n=e.constructor;switch(t){case ia:return ie(e);case kn:case ea:return new n(+e);case ua:return Yn(e,r);case ca:case la:case fa:case da:case pa:case ga:case ha:case ya:case va:return Qn(e,r);case ta:return new n;case ra:case oa:return new n(e);case na:return Xn(e);case aa:return new n;case sa:return Zn(e)}}function ja(e){return typeof e.constructor=="function"&&!Z(e)?xt(Me(e)):{}}var _a="[object Map]";function $a(e){return L(e)&&se(e)==_a}var Xe=M&&M.isMap,Ta=Xe?Q(Xe):$a;const wa=Ta;var ma="[object Set]";function Oa(e){return L(e)&&se(e)==ma}var Ze=M&&M.isSet,Sa=Ze?Q(Ze):Oa;const Aa=Sa;var Pa=1,Ea=2,Ia=4,Qe="[object Arguments]",Ca="[object Array]",Fa="[object Boolean]",Ma="[object Date]",xa="[object Error]",ke="[object Function]",Da="[object GeneratorFunction]",Ua="[object Map]",Ba="[object Number]",et="[object Object]",Ga="[object RegExp]",La="[object Set]",Na="[object String]",za="[object Symbol]",Ra="[object WeakMap]",Ka="[object ArrayBuffer]",Ha="[object DataView]",Wa="[object Float32Array]",Va="[object Float64Array]",qa="[object Int8Array]",Ya="[object Int16Array]",Ja="[object Int32Array]",Xa="[object Uint8Array]",Za="[object Uint8ClampedArray]",Qa="[object Uint16Array]",ka="[object Uint32Array]",d={};d[Qe]=d[Ca]=d[Ka]=d[Ha]=d[Fa]=d[Ma]=d[Wa]=d[Va]=d[qa]=d[Ya]=d[Ja]=d[Ua]=d[Ba]=d[et]=d[Ga]=d[La]=d[Na]=d[za]=d[Xa]=d[Za]=d[Qa]=d[ka]=!0,d[xa]=d[ke]=d[Ra]=!1;function q(e,t,r,n,o,a){var s,f=t&Pa,g=t&Ea,y=t&Ia;if(r&&(s=o?r(e,n,o,a):r(e)),s!==void 0)return s;if(!N(e))return e;var c=F(e);if(c){if(s=Vn(e),!f)return Dt(e,s)}else{var l=se(e),i=l==ke||l==Da;if(Ae(e))return mn(e,f);if(l==et||l==Qe||i&&!o){if(s=g||i?{}:ja(e),!f)return g?Fn(e,Tn(s,e)):En(e,$n(s,e))}else{if(!d[l])return o?e:{};s=ba(e,l,f)}}a||(a=new D);var v=a.get(e);if(v)return v;a.set(e,s),Aa(e)?e.forEach(function(j){s.add(q(j,t,r,j,e,a))}):wa(e)&&e.forEach(function(j,w){s.set(w,q(j,t,r,w,e,a))});var b=y?g?xn:Mn:g?te:ee,$=c?void 0:b(e);return Bt($||e,function(j,w){$&&(w=j,j=e[w]),je(s,w,q(j,t,r,w,e,a))}),s}var eo=1,to=4;function O(e){return q(e,eo|to)}function ue(e,t){return e.then(function(r){return[null,r]}).catch(function(r){return t&&Object.assign(r,t),[r,void 0]})}const _=void 0,ro=async(e,t)=>{try{const r=typeof t<"u"?O(t):t;return await Promise.resolve(e(r))}catch(r){throw r}},no=(e,t,r)=>{try{const n=typeof r<"u"?O(r):r,o=e(n);o instanceof Promise?o.then(a=>t([null,a])).catch(a=>t([a,null])):t([null,o])}catch(n){t([n,void 0])}},Y=(e,t)=>e<t.length,ce=async(e,t,r,n,o)=>{if(!Y(n,e))return t.value[e.length-1].data;const a=e[n];if(typeof a!="function")throw t.value[n].status="rejected",new Error(`The parameter at index ${n} is not a function.`);try{const[s,f]=await ue(ro(a,o));if(s)throw t.value[n].status="rejected",s;{t.value[n]={status:"fulfilled",data:f};const g=n+1;return Y(g,e)?r.value?f:ce(e,t,r,g,f):t.value[e.length-1].data}}catch(s){throw s}},tt=(e,t,r,n,o,a)=>{Y(n,e)||a([null,t.value[e.length-1].data]);const s=e[n];if(typeof s!="function")throw t.value[n].status="rejected",new Error(`The parameter at index ${n} is not a function.`);const f=g=>{const[y,c]=g;if(y)t.value[n].status="rejected",a([y,void 0]);else{t.value[n]={status:"fulfilled",data:c};const l=n+1;Y(l,e)?(r.value&&a([null,c]),tt(e,t,r,l,c,a)):a([null,t.value[e.length-1].data])}};try{no(s,f,o)}catch(g){a([g,void 0])}},U=e=>e.map(()=>({status:"unStart",data:_}));function ao(e){if(!u.isRef(e))throw new Error("Entry must be a ref");if(!F(e.value))throw new Error("Entry must be a list of functions");const t=u.ref(null),r=u.ref(),n=u.ref(!1),o={resolve:null,reject:null},a=u.ref(U(e.value));u.watch(e,()=>{a.value=U(e.value)},{deep:!0});const s=async(c,l=0)=>{try{o.reject=null,o.resolve=null;const[i,v]=await ue(ce(e.value,a,n,l,c));if(i){t.value=i,r.value=_;const b=[i,_];return o.reject&&o.reject(b),b}else{r.value=v,t.value=null;const b=[null,O(v)];return o.resolve&&o.resolve(b),b}}catch(i){i.value=i,r.value=_;const v=[i,_];return o.reject&&o.reject(v),v}},f=async c=>(n.value=!1,e.value.length===0?(r.value=c,t.value=null,[null,O(r.value)]):s(c,0)),g=()=>new Promise((c,l)=>{o.reject=l,o.resolve=c,n.value=!0}),y=()=>{if(n.value){n.value=!1;const c=a.value.findIndex(l=>l.data===_);return s(a.value[Math.max(c-1,0)].data,c)}};return{error:u.readonly(t),result:u.readonly(r),statusList:u.readonly(a),isSuspend:u.readonly(n),start:f,suspend:g,resume:y}}function oo(e){const t=u.ref(e);if(!F(t.value))throw new Error("Entry must be a list of functions");const r=u.ref(null),n=u.ref(),o=u.ref(!1),a={resolve:null,reject:null},s=u.ref(U(t.value)),f=i=>{t.value=i,s.value=U(t.value)},g=async(i,v=0)=>{try{a.reject=null,a.resolve=null;const[b,$]=await ue(ce(t.value,s,o,v,i));if(b){r.value=b,n.value=_;const j=[b,_];return a.reject&&a.reject(j),j}else{n.value=$,r.value=null;const j=[null,O($)];return a.resolve&&a.resolve(j),j}}catch(b){b.value=b,n.value=_;const $=[b,_];return a.reject&&a.reject($),$}},y=async i=>(o.value=!1,t.value.length===0?(n.value=i,r.value=null,[null,O(n.value)]):g(i,0)),c=()=>new Promise((i,v)=>{a.reject=v,a.resolve=i,o.value=!0}),l=()=>{if(o.value){o.value=!1;const i=s.value.findIndex(v=>v.data===_);return g(s.value[Math.max(i-1,0)].data,i)}};return{error:u.readonly(r),result:u.readonly(n),statusList:u.readonly(s),isSuspend:u.readonly(o),start:y,suspend:c,resume:l,update:f}}function so(e){if(!u.isRef(e))throw new Error("Entry must be a ref");if(!F(e.value))throw new Error("Entry must be a list of functions");const t=u.ref(null),r=u.ref(),n=u.ref(!1),o={resolve:null,reject:null},a=u.ref(U(e.value));u.watch(e,()=>{a.value=U(e.value)},{deep:!0});const s=(c,l=0,i)=>{let v=[null,c];try{o.reject=null,o.resolve=null;const b=$=>{const[j,w]=$;if(j){t.value=j,r.value=_;const I=[j,_];o.reject&&o.reject(I),v=I,typeof i=="function"&&i(I)}else{r.value=w,t.value=null;const I=[null,O(w)];o.resolve&&o.resolve(I),v=I,typeof i=="function"&&i(I)}};tt(e.value,a,n,l,c,b)}catch(b){const $=[b,_];o.reject&&o.reject($),v=$,typeof i=="function"&&i($)}return v},f=(c,l)=>{if(n.value=!1,e.value.length===0){r.value=c,t.value=null;const i=[null,O(r.value)];return typeof l=="function"&&l(i),i}return s(c,0,l)},g=()=>new Promise((c,l)=>{o.reject=l,o.resolve=c,n.value=!0}),y=c=>{if(n.value){n.value=!1;const l=a.value.findIndex(i=>i.data===_);return s(a.value[Math.max(l-1,0)].data,l,c)}};return{error:u.readonly(t),result:u.readonly(r),statusList:u.readonly(a),isSuspend:u.readonly(n),start:f,suspend:g,resume:y}}h.useOrderFun=oo,h.useWatchOrderFun=ao,h.useWatchOrderFunSync=so,Object.defineProperty(h,Symbol.toStringTag,{value:"Module"})});
|