Socket
Socket
Sign inDemoInstall

fp-toolkit

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fp-toolkit - npm Package Compare versions

Comparing version 1.4.3 to 1.5.0

2

dist/fp-toolkit.iife.js

@@ -1,1 +0,1 @@

var fpToolkit=function(i){"use strict";function V(t,e,n,r,o,s,c,b,w){switch(arguments.length){case 1:return t;case 2:return function(){return e(t.apply(this,arguments))};case 3:return function(){return n(e(t.apply(this,arguments)))};case 4:return function(){return r(n(e(t.apply(this,arguments))))};case 5:return function(){return o(r(n(e(t.apply(this,arguments)))))};case 6:return function(){return s(o(r(n(e(t.apply(this,arguments))))))};case 7:return function(){return c(s(o(r(n(e(t.apply(this,arguments)))))))};case 8:return function(){return b(c(s(o(r(n(e(t.apply(this,arguments))))))))};case 9:return function(){return w(b(c(s(o(r(n(e(t.apply(this,arguments)))))))))}}}function u(t,e,n,r,o,s,c,b,w){switch(arguments.length){case 1:return t;case 2:return e(t);case 3:return n(e(t));case 4:return r(n(e(t)));case 5:return o(r(n(e(t))));case 6:return s(o(r(n(e(t)))));case 7:return c(s(o(r(n(e(t))))));case 8:return b(c(s(o(r(n(e(t)))))));case 9:return w(b(c(s(o(r(n(e(t))))))));default:{let R=arguments[0];for(let G=1;G<arguments.length;G++)R=arguments[G](R);return R}}}const Rt=t=>e=>(t(e),e),zt=t=>e=>e.then(n=>(t(n),n)),Dt=t=>t==="",J=t=>t.trim(),Q=t=>t.toLowerCase(),Tt=t=>t.toUpperCase(),z=t=>typeof t=="string",Nt=t=>t.length,At=t=>t.split("").reverse().join(""),Vt=t=>e=>{const n=e.split(t);return n.length>0?n:[e]},B=t=>{if(t.length<1)return"";const[e,...n]=t.split("");return[e.toUpperCase(),...n].join("")},I=t=>{if(t.length<1)return"";const[e,...n]=t.split("");return[e.toLowerCase(),...n].join("")},Bt=Object.freeze(Object.defineProperty({__proto__:null,capitalize:B,isEmpty:Dt,isString:z,length:Nt,reverse:At,split:Vt,toLowerCase:Q,toUpperCase:Tt,trim:J,uncapitalize:I},Symbol.toStringTag,{value:"Module"})),D=t=>({equals:(e,n)=>e===n||t(e,n)}),It=(t,e)=>({equals:(n,r)=>n===r||t.equals(e(n),e(r))}),Ft=t=>D((e,n)=>{for(const r in t)if(!t[r].equals(e[r],n[r]))return!1;return!0}),F=Object.freeze(D((t,e)=>t===e)),Wt=D((t,e)=>t.valueOf()===e.valueOf()),p=Object.freeze(Object.defineProperty({__proto__:null,Date:Wt,Default:F,Number:F,String:F,deriveFrom:It,ofEquals:D,ofStruct:Ft},Symbol.toStringTag,{value:"Module"})),P=t=>({compare:(e,n)=>e===n?0:t(e,n)}),Lt=({compare:t})=>P((e,n)=>t(n,e)),X=(t,e)=>({compare:(n,r)=>n===r?0:t.compare(e(n),e(r))}),W=P((t,e)=>{const n=z(t)?t:globalThis.String(t),r=z(e)?e:globalThis.String(e);return n<r?-1:n>r?1:0}),Ut=(...t)=>t.length<1?W:P((e,n)=>t.reduce((r,o)=>r!==0?r:o.compare(e,n),0)),Y=P((t,e)=>e-t>0?-1:1),Kt=W,Ht=X(Y,t=>t.valueOf()),Gt=t=>({compare:t.compare,equals:(e,n)=>e===n||t.compare(e,n)===0}),Jt=({compare:t})=>(e,n)=>t(e,n)===1,Z=({compare:t})=>(e,n)=>t(e,n)>=0,Qt=({compare:t})=>(e,n)=>t(e,n)===-1,x=({compare:t})=>(e,n)=>t(e,n)<=0,$=Object.freeze(Object.defineProperty({__proto__:null,Date:Ht,Default:W,Number:Y,String:Kt,deriveEqualityComparer:Gt,deriveFrom:X,geq:Z,getComposite:Ut,gt:Jt,isBetween:t=>(e,n)=>r=>Z(t)(r,e)&&x(t)(r,n),leq:x,lt:Qt,ofCompare:P,reverse:Lt},Symbol.toStringTag,{value:"Module"})),Xt=t=>p.ofEquals((e,n)=>e==null&&n==null||e!=null&&n!=null&&t.equals(e,n)),Yt=t=>e=>e??t,Zt=t=>e=>e??t(),xt=t=>e=>e!=null?t(e):e,tt=t=>e=>e!=null?t(e):e,te=Object.freeze(Object.defineProperty({__proto__:null,bind:tt,defaultValue:Yt,defaultWith:Zt,flatMap:tt,getEqualityComparer:Xt,map:xt},Symbol.toStringTag,{value:"Module"})),C=t=>{throw new Error(`assertExhaustive failed at runtime! It was called with ${t}`)},E=t=>({_tag:"Some",some:t}),ee=E,m=Object.freeze({_tag:"None"}),ne=t=>typeof t!="function",et=(t,e)=>ne(t)?t:t(e),v=t=>e=>{switch(e._tag){case"Some":return et(t.some,e.some);case"None":return et(t.none,void 0);default:return C(e)}},nt=t=>v({some:e=>E(t(e)),none:m}),re=t=>v({some:e=>t(e)?E(e):m,none:m}),oe=t=>v({some:e=>t(e)?E(e):m,none:m}),rt=t=>v({some:e=>e,none:t}),se=t=>v({some:e=>e,none:t}),ot=t=>v({some:t,none:m}),ce=ot,S=t=>t._tag==="Some",ue=t=>t._tag==="None",st=t=>e=>S(e[0])&&S(e[1])?E(t(e[0].some,e[1].some)):m,l=Object.freeze(Object.defineProperty({__proto__:null,bind:ot,defaultValue:rt,defaultWith:se,filter:re,flatMap:ce,getEqualityComparer:({equals:t})=>p.ofEquals((e,n)=>u([e,n],st((r,o)=>t(r,o)),rt(!1))),isNone:ue,isSome:S,map:nt,map2:st,map3:t=>e=>S(e[0])&&S(e[1])&&S(e[2])?E(t(e[0].some,e[1].some,e[2].some)):m,match:v,none:m,of:ee,ofNullish:t=>t!=null?E(t):m,refine:oe,some:E,tee:t=>e=>u(e,nt(n=>(t(n),n))),toNullish:(t,e=!0)=>u(t,v({some:n=>n,none:e?null:void 0})),tryCatch:t=>{try{return E(t())}catch{return m}}},Symbol.toStringTag,{value:"Module"})),h=t=>({_tag:"Ok",ok:t}),f=t=>({_tag:"Err",err:t}),le=h,ae=t=>typeof t!="function",ct=(t,e)=>ae(t)?t:t(e),y=t=>e=>{switch(e._tag){case"Ok":return ct(t.ok,e.ok);case"Err":return ct(t.err,e.err);default:return C(e)}},ie=(t,e)=>n=>u(n,y({ok:r=>t(r)?h(r):f(e(r)),err:r=>f(r)})),fe=t=>e=>u(e,y({ok:n=>h(t(n)),err:n=>f(n)})),pe=t=>e=>u(e,y({ok:n=>h(n),err:n=>f(t(n))})),ge=(t,e)=>y({ok:n=>h(t(n)),err:n=>f(e(n))}),ut=t=>e=>u(e,y({ok:n=>n,err:t})),he=t=>e=>u(e,y({ok:n=>n,err:t})),lt=t=>y({ok:t,err:e=>f(e)}),de=lt,M=t=>t._tag==="Ok",j=t=>t._tag==="Err",at=t=>e=>M(e[0])&&M(e[1])?h(t(e[0].ok,e[1].ok)):j(e[0])?f(e[0].err):f(e[1].err),me=t=>e=>M(e[0])&&M(e[1])&&M(e[2])?h(t(e[0].ok,e[1].ok,e[2].ok)):j(e[0])?f(e[0].err):j(e[1])?f(e[1].err):f(e[2].err);function ye(t,e){const n=r=>r instanceof Error?r:Error(String(r));try{return h(t())}catch(r){return e!=null?f(e(r)):f(n(r))}}const a=Object.freeze(Object.defineProperty({__proto__:null,bind:lt,defaultValue:ut,defaultWith:he,err:f,flatMap:de,getEqualityComparer:(t,e)=>p.ofEquals((n,r)=>j(n)&&j(r)&&e.equals(n.err,r.err)?!0:u([n,r],at((o,s)=>t.equals(o,s)),ut(!1))),isErr:j,isOk:M,map:fe,map2:at,map3:me,mapBoth:ge,mapErr:pe,match:y,of:le,ofOption:t=>l.match({some:h,none:V(t,f)}),ok:h,refine:ie,tee:t=>e=>u(e,y({ok:n=>(t(n),h(n)),err:n=>f(n)})),teeErr:t=>e=>u(e,y({ok:n=>h(n),err:n=>(t(n),f(n))})),tryCatch:ye},Symbol.toStringTag,{value:"Module"})),it=t=>()=>Promise.resolve(t),$e=t=>e=>()=>e().then(t),ft=t=>e=>()=>e().then(n=>t(n)()),Ee=ft,ve=t=>()=>t().then(e=>e()),_e=it({}),Oe=t=>e=>async()=>{const n=t<=0?0:Math.floor(t);return await new Promise(r=>setTimeout(r,n)),await e()},be=t=>async()=>{const e=[];for(let n=0;n<t.length;n++)e.push(await t[n]());return e},pt=t=>t(),T=Object.freeze(Object.defineProperty({__proto__:null,asyncify:t=>(...e)=>()=>t(...e),bind:ft,delay:Oe,flatMap:Ee,flatten:ve,map:$e,never:()=>new Promise(()=>{}),of:it,ofPromise:t=>()=>t,parallel:t=>()=>Promise.all(t.map(pt)),sequential:be,start:pt,tee:t=>e=>async()=>{const n=await e();return t(n),n},unit:_e},Symbol.toStringTag,{value:"Module"})),Se=t=>()=>Promise.resolve(a.ok(t)),gt=t=>()=>Promise.resolve(a.err(t)),Me=t=>e=>()=>e().then(a.map(t)),je=t=>e=>()=>e().then(a.mapErr(t)),ke=(t,e)=>n=>()=>n().then(a.mapBoth(t,e)),ht=t=>e=>async()=>{const n=await e();return await u(n,a.match({ok:t,err:r=>gt(r)}),T.start)},we=ht,dt=t=>e=>()=>e().then(a.bind(t)),Pe=dt,Ce=t=>()=>Promise.resolve(t),qe=t=>()=>t().then(e=>a.ok(e));function Re(t,e){return async()=>{const n=r=>r instanceof Error?r:Error(String(r));try{return a.ok(await t())}catch(r){return e!=null?a.err(e(r)):a.err(n(r))}}}const ze=Object.freeze(Object.defineProperty({__proto__:null,bind:ht,bindResult:dt,err:gt,flatMap:we,flatMapResult:Pe,map:Me,mapBoth:ke,mapErr:je,match:t=>e=>()=>e().then(a.match(t)),ofAsync:qe,ofResult:Ce,ok:Se,start:t=>t(),tee:t=>e=>T.tee(a.tee(t))(e),teeErr:t=>e=>T.tee(a.teeErr(t))(e),tryCatch:Re},Symbol.toStringTag,{value:"Module"}));function De(t){return e=>e.filter(t)}const Te=t=>e=>e.filter(t),Ne=t=>e=>e.map(t),Ae=t=>e=>e.map(t),Ve=t=>e=>{const n=[];for(let r=0;r<e.length;r++){const o=t(e[r]);l.isSome(o)&&n.push(o.some)}return n},Be=t=>e=>{const n=[];for(let r=0;r<e.length;r++){const o=t(e[r]);a.isOk(o)&&n.push(o.ok)}return n},mt=t=>t.length>0?l.some(t[0]):l.none,Ie=mt,Fe=t=>{if(t.length===0)return l.none;const[e,...n]=t;return l.some(n)},We=t=>e=>{const n=t<=0?0:Math.floor(t);if(n>e.length)return e;const r=[];for(let o=0;o<e.length&&o<n;o++)r.push(e[o]);return r},Le=t=>e=>{const n=t<=0?0:Math.floor(t);if(n>=e.length)return[];const r=[];for(let o=n;o<e.length;o++)r.push(e[o]);return r},Ue=(t,e)=>n=>n.reduce(e,t),Ke=(t,e)=>n=>n.reduceRight(e,t),He=t=>typeof t!="function",yt=(t,e)=>He(t)?t:t(e),Ge=t=>e=>e.length>0?yt(t.nonEmpty,e):yt(t.empty,void 0),g=t=>t.length===0,Je=t=>t.length>0,$t=t=>e=>e.flatMap(t),Qe=$t,Et=t=>e=>[...e,t],Xe=t=>e=>[t,...e],Ye=t=>e=>{const n=new Map;return e.forEach(r=>{const o=t(r);return n.has(o)?n.set(o,u(n.get(o),Et(r))):n.set(o,[r])}),n},vt=t=>e=>[...e,...t],Ze=t=>e=>[...t,...e],_t=t=>e=>e.some(t),xe=_t,tn=t=>t.flat(),en=t=>e=>{if(g(e))return[];const n=t<=1?1:Math.floor(t),r=Math.ceil(e.length/n),o=[...globalThis.Array(r)].map(()=>[]);let s=0;for(let c=0;c<e.length;c++)c!==0&&c%n===0&&s++,o[s].push(e[c]);return o},nn=t=>t.length,N=(t,e=p.Default)=>n=>{if(g(n))return!1;const r=o=>e.equals(t,o);return n.some(r)},Ot=t=>e=>{if(g(e))return[];const n=[];return e.forEach(r=>{N(r,t)(n)||n.push(r)}),n},rn=(t,e)=>n=>{if(g(n))return[];const r=[],o=[];return n.forEach(s=>{const c=t(s);N(c,e)(o)||(o.push(c),r.push(s))}),r},on=t=>e=>g(e)?[]:e.slice(0).sort(t==null?void 0:t.compare),sn=(t,e=$.Default)=>n=>g(n)?[]:n.slice(0).sort((r,o)=>e.compare(t(r),t(o))),cn=t=>t.slice(0).reverse(),bt=t=>e=>l.ofNullish(e.find(t)),un=Object.freeze(Object.defineProperty({__proto__:null,append:Et,asMutable:t=>t,bind:$t,choose:Ve,chooseR:Be,chunk:en,concat:vt,concatFirst:Ze,contains:N,except:(t,e)=>n=>{if(g(n))return[];if(g(t))return n;const r=[];for(let o=0;o<n.length;o++)u(t,N(n[o],e))||r.push(n[o]);return r},exists:_t,filter:De,filteri:Te,find:bt,findIndex:t=>e=>{const n=e.findIndex(t);return n<0?l.none:l.some(n)},first:Ie,flatMap:Qe,flatten:tn,getEqualityComparer:({equals:t})=>p.ofEquals((e,n)=>{if(g(e)&&g(n))return!0;if(e.length!==n.length)return!1;for(let r=0;r<e.length;r++)if(!t(e[r],n[r]))return!1;return!0}),groupBy:Ye,head:mt,isEmpty:g,isNonEmpty:Je,iter:t=>e=>e.forEach(n=>t(n)),length:nn,map:Ne,mapi:Ae,match:Ge,prepend:Xe,reduce:Ue,reduceRight:Ke,reverse:cn,skip:Le,some:xe,sort:on,sortBy:sn,tail:Fe,take:We,union:(t,e)=>n=>g(t)&&g(n)?[]:u(n,vt(t),Ot(e)),uniq:Ot,uniqBy:rn},Symbol.toStringTag,{value:"Module"})),St=t=>t[0],ln=St,an=t=>({head:t[0],tail:t.slice(1)}),fn=t=>e=>e.map(t),Mt=t=>e=>e.flatMap(t),pn=Object.freeze(Object.defineProperty({__proto__:null,bind:Mt,destruct:an,first:ln,flatMap:Mt,getEqualityComparer:({equals:t})=>p.ofEquals((e,n)=>{if(e.length!==n.length)return!1;for(let r=0;r<e.length;r++)if(!t(e[r],n[r]))return!1;return!0}),head:St,make:(t,e)=>{const n=t<=1?1:Math.floor(t);return[...Array(n).keys()].map(e)},map:fn,of:t=>[t],range:(t,e)=>{const n=Math.floor(t),r=Math.floor(e);if(n>=r)return[n];const o=[];for(let s=n;s<=r;s++)o.push(s);return o},reverse:t=>t.slice(0).reverse(),sort:(t=$.Default)=>e=>e.slice(0).sort(t.compare)},Symbol.toStringTag,{value:"Module"})),k=(t,{equals:e}=p.Default)=>n=>{if(n.size<1)return l.none;for(const[r,o]of n)if(e(r,t))return l.some([r,o]);return l.none},gn=(t,e=p.Default)=>n=>u(n,k(t,e),l.isSome),hn=(t,e=p.Default)=>n=>u(n,k(t,e),l.map(([,r])=>r)),L=([t,e],n=p.Default)=>r=>{if(r.size<1){const s=_();return s.set(t,e),s}const o=new globalThis.Map(r);return u(r,k(t,n),l.match({none:()=>(o.set(t,e),o),some:([s])=>(o.set(s,e),o)}))},dn=t=>e=>{if(e.size<1)return _();const n=_();for(const[r,o]of e)n.set(r,t(r,o));return n},mn=(t,e=$.Default)=>n=>l.ofNullish(U(e)(n).find(t)),_=()=>new globalThis.Map,yn=t=>e=>{if(e.size<1)return!1;for(const[,n]of e)if(t(n))return!0;return!1},$n=(t,e,n=p.Default)=>r=>u(r,k(t,n),l.match({some:([o,s])=>{const c=new globalThis.Map(r);return c.set(o,e(s)),c},none:r})),En=t=>t.size,vn=t=>t.size<1,U=({compare:t}=$.Default)=>e=>Array.from(e.keys()).sort(t),_n=(t=$.Default)=>e=>{const n=[];for(const[,r]of e)n.push(r);return n.sort(t.compare)},K=(t=$.Default)=>e=>U(t)(e).map(n=>[n,e.get(n)]),On=Object.freeze(Object.defineProperty({__proto__:null,change:$n,containsKey:gn,empty:_,every:t=>e=>{if(e.size<1)return!0;for(const[n,r]of e)if(!t(n,r))return!1;return!0},exists:yn,filter:t=>e=>{if(e.size<1)return _();const n=_();for(const[r,o]of e)t(r,o)&&n.set(r,o);return n},find:hn,findKey:mn,findWithKey:k,isEmpty:vn,iter:t=>e=>{if(!(e.size<1))for(const[n,r]of e)t(n,r)},keys:U,map:dn,ofArray:(t,e=p.Default)=>t.length<1?new globalThis.Map:t.reduce((n,r)=>L(r,e)(n),_()),ofRecord:(t,e=p.Default)=>Object.entries(t).reduce((n,[r,o])=>L([r,o],e)(n),_()),reduce:(t,e,n=$.Default)=>r=>K(n)(r).reduce((o,[s,c])=>e(o,s,c),t),reduceRight:(t,e,n=$.Default)=>r=>K(n)(r).reduceRight((o,[s,c])=>e(o,s,c),t),remove:(t,e=p.Default)=>n=>u(n,k(t,e),l.match({some:([r])=>{const o=new globalThis.Map(n);return o.delete(r),o},none:n})),set:L,size:En,toArray:K,values:_n},Symbol.toStringTag,{value:"Module"})),bn=Object.freeze({_tag:"NotStarted"}),Sn=Object.freeze({_tag:"InProgress"}),Mn=t=>({_tag:"Resolved",resolved:t}),O=(t,...e)=>(r=>typeof r=="function")(t)?t(...e):t,jn=t=>e=>{switch(e._tag){case"NotStarted":return O(t.notStarted);case"InProgress":return O(t.inProgress);case"Resolved":return O(t.resolved,e.resolved);default:return C(e)}},q=t=>e=>{switch(e._tag){case"NotStarted":return O(t.notStarted!=null?t.notStarted:t.orElse);case"InProgress":return O(t.inProgress!=null?t.inProgress:t.orElse);case"Resolved":return t.resolved!=null?O(t.resolved,e.resolved):O(t.orElse);default:return O(t.orElse)}},kn=q({resolved:!1,orElse:!0}),wn=Object.freeze(Object.defineProperty({__proto__:null,inProgress:Sn,isInProgress:t=>u(t,q({inProgress:!0,orElse:!1})),isResolved:t=>u(t,q({resolved:!0,orElse:!1})),isResolvedWith:(t,e=p.Default)=>q({resolved:n=>e.equals(n,t),orElse:!1}),isUnresolved:kn,match:jn,matchOrElse:q,notStarted:bn,resolved:Mn},Symbol.toStringTag,{value:"Module"})),Pn=(t,e)=>`Must be an enum value in the set ${e}{ ${t.join(", ")} }`,jt=t=>u(l.some(t),l.refine(z),l.map(V(J,Q)),l.defaultValue(t)),Cn=t=>typeof t=="string"||typeof t=="number",qn=(t,e)=>n=>u(l.ofNullish(n),a.ofOption(()=>`Enum${e?` ${e}`:""} cannot be null/undefined`),a.refine(Cn,()=>`Enum${e?` ${e}`:""} must be a string or number`),a.map(jt),a.bind(r=>u(t,bt(o=>jt(o)===r),l.match({some:o=>a.ok(o),none:()=>a.err(Pn(t,e))})))),H=t=>typeof t=="function",Rn=t=>e=>n=>{const r=Object.entries(t).find(([,c])=>c===n);if(!r)throw new TypeError(`Expected to match against an enum where '${n}' is a valid value.`);const o=r[0];if(!Object.hasOwn(e,o))throw new TypeError(`Expected a matcher containing a case for '${o}'.`);const s=e[o];return H(s)?s():s},zn=t=>e=>n=>{const r=Object.entries(t).find(([,s])=>s===n);if(!r)throw new TypeError(`Expected to match against an enum where '${n}' is a valid value.`);const o=r[0];if(Object.hasOwn(e,o)){const s=e[o];return H(s)?s():s}return H(e.orElse)?e.orElse():e.orElse},Dn=(t,e="")=>{const n=Object.entries(t).reduce((o,[s,c])=>({...o,[s]:c}),{}),r=Object.values(t);return{...n,values:r,parse:qn(r,e),match:Rn(t),matchOrElse:zn(t)}},Tn=t=>typeof t=="function",kt=(t,e,n)=>Object.entries(t).reduce((r,o)=>{const[s,c]=o,b=B(s),w=n.length>0?`${n}${b}`:`${b}`;return Object.assign(r,{[s]:Tn(c)?(...R)=>({[e]:w,...c(...R)}):{[e]:w}})},{}),wt=(t,e)=>Object.entries(t).reduce((n,r)=>{const[o]=r,s=B(o),c=e.length>0?`${e}${s}`:`${s}`;return Object.assign(n,{[o]:c})},{}),Pt=(t,e)=>e.length>0?t.replace(new RegExp(`${e}`),""):t,Ct=(t,e)=>n=>r=>{const o=I(Pt(r[t],e));if(!Object.hasOwn(n,o))throw new TypeError(`Expected to be given a variant with scope ${e}. Actual type was ${r[t]}`);const s=n[o],c={...r};return delete c[t],typeof s=="function"?s(c):s},qt=(t,e)=>n=>r=>{const o=I(Pt(r[t],e));if(Object.hasOwn(n,o)){const s=n[o],c={...r};return delete c[t],typeof s=="function"?s(c):s}return typeof n.orElse=="function"?n.orElse():n.orElse},Nn=(t,e,n)=>({...kt(t,e,n),match:Ct(e,n),matchOrElse:qt(e,n),types:wt(t,n)}),An=t=>({...kt(t,"_tag",""),match:Ct("_tag",""),matchOrElse:qt("_tag",""),types:wt(t,"")}),Vn=t=>typeof t!="function",d=(t,e)=>Vn(t)?t:t(e),A=(t,e)=>Object.hasOwn(e,t),Bn=Object.freeze(Object.defineProperty({__proto__:null,match:t=>e=>{switch(e._tag){case"InProgress":return d(t.inProgress,void 0);case"NotStarted":return d(t.notStarted,void 0);case"Resolved":return u(e.resolved,a.match({ok:n=>d(t.resolvedOk,n),err:n=>d(t.resolvedErr,n)}));default:return C(e)}},matchOrElse:t=>e=>{switch(e._tag){case"InProgress":return A("inProgress",t)?d(t.inProgress,void 0):d(t.orElse,void 0);case"NotStarted":return A("notStarted",t)?d(t.notStarted,void 0):d(t.orElse,void 0);case"Resolved":return u(e.resolved,a.match({ok:n=>A("resolvedOk",t)?d(t.resolvedOk,n):d(t.orElse,void 0),err:n=>A("resolvedErr",t)?d(t.resolvedErr,n):d(t.orElse,void 0)}));default:return C(e)}}},Symbol.toStringTag,{value:"Module"}));return i.Array=un,i.Async=T,i.AsyncResult=ze,i.Deferred=wn,i.DeferredResult=Bn,i.EqualityComparer=p,i.Map=On,i.NonEmptyArray=pn,i.Nullable=te,i.Option=l,i.OrderingComparer=$,i.Result=a,i.String=Bt,i.enumOf=Dn,i.flow=V,i.pipe=u,i.tee=Rt,i.teeAsync=zt,i.variant=An,i.variantC=Nn,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),i}({});
var fpToolkit=function(i){"use strict";function M(t,e,n,r,o,s,c,b,C){switch(arguments.length){case 1:return t;case 2:return function(){return e(t.apply(this,arguments))};case 3:return function(){return n(e(t.apply(this,arguments)))};case 4:return function(){return r(n(e(t.apply(this,arguments))))};case 5:return function(){return o(r(n(e(t.apply(this,arguments)))))};case 6:return function(){return s(o(r(n(e(t.apply(this,arguments))))))};case 7:return function(){return c(s(o(r(n(e(t.apply(this,arguments)))))))};case 8:return function(){return b(c(s(o(r(n(e(t.apply(this,arguments))))))))};case 9:return function(){return C(b(c(s(o(r(n(e(t.apply(this,arguments)))))))))}}}function u(t,e,n,r,o,s,c,b,C){switch(arguments.length){case 1:return t;case 2:return e(t);case 3:return n(e(t));case 4:return r(n(e(t)));case 5:return o(r(n(e(t))));case 6:return s(o(r(n(e(t)))));case 7:return c(s(o(r(n(e(t))))));case 8:return b(c(s(o(r(n(e(t)))))));case 9:return C(b(c(s(o(r(n(e(t))))))));default:{let D=arguments[0];for(let Y=1;Y<arguments.length;Y++)D=arguments[Y](D);return D}}}const It=t=>e=>(t(e),e),Ft=t=>e=>e.then(n=>(t(n),n)),Wt=t=>t==="",Z=t=>t.trim(),x=t=>t.toLowerCase(),Lt=t=>t.toUpperCase(),T=t=>typeof t=="string",Ut=t=>t.length,Kt=t=>t.split("").reverse().join(""),Ht=t=>e=>{const n=e.split(t);return n.length>0?n:[e]},I=t=>{if(t.length<1)return"";const[e,...n]=t.split("");return[e.toUpperCase(),...n].join("")},F=t=>{if(t.length<1)return"";const[e,...n]=t.split("");return[e.toLowerCase(),...n].join("")},Gt=Object.freeze(Object.defineProperty({__proto__:null,capitalize:I,isEmpty:Wt,isString:T,length:Ut,reverse:Kt,split:Ht,toLowerCase:x,toUpperCase:Lt,trim:Z,uncapitalize:F},Symbol.toStringTag,{value:"Module"})),N=t=>({equals:(e,n)=>e===n||t(e,n)}),Jt=(t,e)=>({equals:(n,r)=>n===r||t.equals(e(n),e(r))}),Qt=t=>N((e,n)=>{for(const r in t)if(!t[r].equals(e[r],n[r]))return!1;return!0}),W=Object.freeze(N((t,e)=>t===e)),Xt=N((t,e)=>t.valueOf()===e.valueOf()),p=Object.freeze(Object.defineProperty({__proto__:null,Date:Xt,Default:W,Number:W,String:W,deriveFrom:Jt,ofEquals:N,ofStruct:Qt},Symbol.toStringTag,{value:"Module"})),q=t=>({compare:(e,n)=>e===n?0:t(e,n)}),Yt=({compare:t})=>q((e,n)=>t(n,e)),tt=(t,e)=>({compare:(n,r)=>n===r?0:t.compare(e(n),e(r))}),L=q((t,e)=>{const n=T(t)?t:globalThis.String(t),r=T(e)?e:globalThis.String(e);return n<r?-1:n>r?1:0}),Zt=(...t)=>t.length<1?L:q((e,n)=>t.reduce((r,o)=>r!==0?r:o.compare(e,n),0)),et=q((t,e)=>e-t>0?-1:1),xt=L,te=tt(et,t=>t.valueOf()),ee=t=>({compare:t.compare,equals:(e,n)=>e===n||t.compare(e,n)===0}),ne=({compare:t})=>(e,n)=>t(e,n)===1,nt=({compare:t})=>(e,n)=>t(e,n)>=0,re=({compare:t})=>(e,n)=>t(e,n)===-1,rt=({compare:t})=>(e,n)=>t(e,n)<=0,$=Object.freeze(Object.defineProperty({__proto__:null,Date:te,Default:L,Number:et,String:xt,deriveEqualityComparer:ee,deriveFrom:tt,geq:nt,getComposite:Zt,gt:ne,isBetween:t=>(e,n)=>r=>nt(t)(r,e)&&rt(t)(r,n),leq:rt,lt:re,ofCompare:q,reverse:Yt},Symbol.toStringTag,{value:"Module"})),oe=t=>p.ofEquals((e,n)=>e==null&&n==null||e!=null&&n!=null&&t.equals(e,n)),se=t=>e=>e??t,ce=t=>e=>e??t(),ue=t=>e=>e!=null?t(e):e,ot=t=>e=>e!=null?t(e):e,le=Object.freeze(Object.defineProperty({__proto__:null,bind:ot,defaultValue:se,defaultWith:ce,flatMap:ot,getEqualityComparer:oe,map:ue},Symbol.toStringTag,{value:"Module"})),R=t=>{throw new Error(`assertExhaustive failed at runtime! It was called with ${t}`)},E=t=>({_tag:"Some",some:t}),ae=E,h=Object.freeze({_tag:"None"}),ie=t=>typeof t!="function",st=(t,e)=>ie(t)?t:t(e),v=t=>e=>{switch(e._tag){case"Some":return st(t.some,e.some);case"None":return st(t.none,void 0);default:return R(e)}},ct=t=>v({some:e=>E(t(e)),none:h}),fe=t=>v({some:e=>t(e)?E(e):h,none:h}),pe=t=>v({some:e=>t(e)?E(e):h,none:h}),ut=t=>v({some:e=>e,none:t}),ge=t=>v({some:e=>e,none:t}),lt=t=>v({some:t,none:h}),de=lt,k=t=>t._tag==="Some",me=t=>t._tag==="None",at=t=>e=>k(e[0])&&k(e[1])?E(t(e[0].some,e[1].some)):h,a=Object.freeze(Object.defineProperty({__proto__:null,bind:lt,defaultValue:ut,defaultWith:ge,filter:fe,flatMap:de,getEqualityComparer:({equals:t})=>p.ofEquals((e,n)=>u([e,n],at((r,o)=>t(r,o)),ut(!1))),isNone:me,isSome:k,map:ct,map2:at,map3:t=>e=>k(e[0])&&k(e[1])&&k(e[2])?E(t(e[0].some,e[1].some,e[2].some)):h,match:v,none:h,of:ae,ofNullish:t=>t!=null?E(t):h,refine:pe,some:E,tee:t=>e=>u(e,ct(n=>(t(n),n))),toNullish:(t,e=!0)=>u(t,v({some:n=>n,none:e?null:void 0})),tryCatch:t=>{try{return E(t())}catch{return h}}},Symbol.toStringTag,{value:"Module"})),d=t=>({_tag:"Ok",ok:t}),f=t=>({_tag:"Err",err:t}),he=d,ye=t=>typeof t!="function",it=(t,e)=>ye(t)?t:t(e),y=t=>e=>{switch(e._tag){case"Ok":return it(t.ok,e.ok);case"Err":return it(t.err,e.err);default:return R(e)}},$e=(t,e)=>n=>u(n,y({ok:r=>t(r)?d(r):f(e(r)),err:r=>f(r)})),Ee=t=>e=>u(e,y({ok:n=>d(t(n)),err:n=>f(n)})),ve=t=>e=>u(e,y({ok:n=>d(n),err:n=>f(t(n))})),_e=(t,e)=>y({ok:n=>d(t(n)),err:n=>f(e(n))}),ft=t=>e=>u(e,y({ok:n=>n,err:t})),Oe=t=>e=>u(e,y({ok:n=>n,err:t})),pt=t=>y({ok:t,err:e=>f(e)}),be=pt,j=t=>t._tag==="Ok",w=t=>t._tag==="Err",gt=t=>e=>j(e[0])&&j(e[1])?d(t(e[0].ok,e[1].ok)):w(e[0])?f(e[0].err):f(e[1].err),Se=t=>e=>j(e[0])&&j(e[1])&&j(e[2])?d(t(e[0].ok,e[1].ok,e[2].ok)):w(e[0])?f(e[0].err):w(e[1])?f(e[1].err):f(e[2].err);function Me(t,e){const n=r=>r instanceof Error?r:Error(String(r));try{return d(t())}catch(r){return e!=null?f(e(r)):f(n(r))}}const l=Object.freeze(Object.defineProperty({__proto__:null,bind:pt,defaultValue:ft,defaultWith:Oe,err:f,flatMap:be,getEqualityComparer:(t,e)=>p.ofEquals((n,r)=>w(n)&&w(r)&&e.equals(n.err,r.err)?!0:u([n,r],gt((o,s)=>t.equals(o,s)),ft(!1))),isErr:w,isOk:j,map:Ee,map2:gt,map3:Se,mapBoth:_e,mapErr:ve,match:y,of:he,ofOption:t=>a.match({some:d,none:M(t,f)}),ok:d,refine:$e,tee:t=>e=>u(e,y({ok:n=>(t(n),d(n)),err:n=>f(n)})),teeErr:t=>e=>u(e,y({ok:n=>d(n),err:n=>(t(n),f(n))})),tryCatch:Me},Symbol.toStringTag,{value:"Module"})),dt=t=>()=>Promise.resolve(t),ke=t=>e=>()=>e().then(t),mt=t=>e=>()=>e().then(n=>t(n)()),je=mt,we=t=>()=>t().then(e=>e()),Pe=dt({}),Ce=t=>e=>async()=>{const n=t<=0?0:Math.floor(t);return await new Promise(r=>setTimeout(r,n)),await e()},qe=t=>async()=>{const e=[];for(let n=0;n<t.length;n++)e.push(await t[n]());return e},ht=t=>t(),A=Object.freeze(Object.defineProperty({__proto__:null,asyncify:t=>(...e)=>()=>t(...e),bind:mt,delay:Ce,flatMap:je,flatten:we,map:ke,never:()=>new Promise(()=>{}),of:dt,ofPromise:t=>()=>t,parallel:t=>()=>Promise.all(t.map(ht)),sequential:qe,start:ht,tee:t=>e=>async()=>{const n=await e();return t(n),n},unit:Pe},Symbol.toStringTag,{value:"Module"})),Re=t=>()=>Promise.resolve(l.ok(t)),yt=t=>()=>Promise.resolve(l.err(t)),ze=t=>e=>()=>e().then(l.map(t)),De=t=>e=>()=>e().then(l.mapErr(t)),Te=(t,e)=>n=>()=>n().then(l.mapBoth(t,e)),$t=t=>e=>async()=>{const n=await e();return await u(n,l.match({ok:t,err:r=>yt(r)}),A.start)},Ne=$t,Et=t=>e=>()=>e().then(l.bind(t)),Ae=Et,Ve=t=>()=>Promise.resolve(t),Be=t=>()=>t().then(e=>l.ok(e));function Ie(t,e){return async()=>{const n=r=>r instanceof Error?r:Error(String(r));try{return l.ok(await t())}catch(r){return e!=null?l.err(e(r)):l.err(n(r))}}}const Fe=Object.freeze(Object.defineProperty({__proto__:null,bind:$t,bindResult:Et,err:yt,flatMap:Ne,flatMapResult:Ae,map:ze,mapBoth:Te,mapErr:De,match:t=>e=>()=>e().then(l.match(t)),ofAsync:Be,ofResult:Ve,ok:Re,start:t=>t(),tee:t=>e=>A.tee(l.tee(t))(e),teeErr:t=>e=>A.tee(l.teeErr(t))(e),tryCatch:Ie},Symbol.toStringTag,{value:"Module"}));function We(t){return e=>e.filter(t)}const Le=t=>e=>e.filter(t),Ue=t=>e=>e.map(t),Ke=t=>e=>e.map(t),He=t=>e=>{const n=[];for(let r=0;r<e.length;r++){const o=t(e[r]);a.isSome(o)&&n.push(o.some)}return n},Ge=t=>e=>{const n=[];for(let r=0;r<e.length;r++){const o=t(e[r]);l.isOk(o)&&n.push(o.ok)}return n},vt=t=>t.length>0?a.some(t[0]):a.none,Je=vt,Qe=t=>{if(t.length===0)return a.none;const[e,...n]=t;return a.some(n)},Xe=t=>e=>{const n=t<=0?0:Math.floor(t);if(n>e.length)return e;const r=[];for(let o=0;o<e.length&&o<n;o++)r.push(e[o]);return r},Ye=t=>e=>{const n=t<=0?0:Math.floor(t);if(n>=e.length)return[];const r=[];for(let o=n;o<e.length;o++)r.push(e[o]);return r},Ze=(t,e)=>n=>n.reduce(e,t),xe=(t,e)=>n=>n.reduceRight(e,t),tn=t=>typeof t!="function",_t=(t,e)=>tn(t)?t:t(e),en=t=>e=>e.length>0?_t(t.nonEmpty,e):_t(t.empty,void 0),g=t=>t.length===0,nn=t=>t.length>0,Ot=t=>e=>e.flatMap(t),rn=Ot,bt=t=>e=>[...e,t],on=t=>e=>[t,...e],sn=t=>e=>{const n=new Map;return e.forEach(r=>{const o=t(r);return n.has(o)?n.set(o,u(n.get(o),bt(r))):n.set(o,[r])}),n},St=t=>e=>[...e,...t],cn=t=>e=>[...t,...e],Mt=t=>e=>e.some(t),un=Mt,ln=t=>t.flat(),an=t=>e=>{if(g(e))return[];const n=t<=1?1:Math.floor(t),r=Math.ceil(e.length/n),o=[...globalThis.Array(r)].map(()=>[]);let s=0;for(let c=0;c<e.length;c++)c!==0&&c%n===0&&s++,o[s].push(e[c]);return o},fn=t=>t.length,V=(t,e=p.Default)=>n=>{if(g(n))return!1;const r=o=>e.equals(t,o);return n.some(r)},kt=t=>e=>{if(g(e))return[];const n=[];return e.forEach(r=>{V(r,t)(n)||n.push(r)}),n},pn=(t,e)=>n=>{if(g(n))return[];const r=[],o=[];return n.forEach(s=>{const c=t(s);V(c,e)(o)||(o.push(c),r.push(s))}),r},gn=t=>e=>g(e)?[]:e.slice(0).sort(t==null?void 0:t.compare),dn=(t,e=$.Default)=>n=>g(n)?[]:n.slice(0).sort((r,o)=>e.compare(t(r),t(o))),mn=t=>t.slice(0).reverse(),jt=t=>e=>a.ofNullish(e.find(t)),hn=Object.freeze(Object.defineProperty({__proto__:null,append:bt,asMutable:t=>t,bind:Ot,choose:He,chooseR:Ge,chunk:an,concat:St,concatFirst:cn,contains:V,except:(t,e)=>n=>{if(g(n))return[];if(g(t))return n;const r=[];for(let o=0;o<n.length;o++)u(t,V(n[o],e))||r.push(n[o]);return r},exists:Mt,filter:We,filteri:Le,find:jt,findIndex:t=>e=>{const n=e.findIndex(t);return n<0?a.none:a.some(n)},first:Je,flatMap:rn,flatten:ln,getEqualityComparer:({equals:t})=>p.ofEquals((e,n)=>{if(g(e)&&g(n))return!0;if(e.length!==n.length)return!1;for(let r=0;r<e.length;r++)if(!t(e[r],n[r]))return!1;return!0}),groupBy:sn,head:vt,isEmpty:g,isNonEmpty:nn,iter:t=>e=>e.forEach(n=>t(n)),length:fn,map:Ue,mapi:Ke,match:en,prepend:on,reduce:Ze,reduceRight:xe,reverse:mn,skip:Ye,some:un,sort:gn,sortBy:dn,tail:Qe,take:Xe,union:(t,e)=>n=>g(t)&&g(n)?[]:u(n,St(t),kt(e)),uniq:kt,uniqBy:pn},Symbol.toStringTag,{value:"Module"})),wt=t=>t[0],yn=wt,$n=t=>({head:t[0],tail:t.slice(1)}),En=t=>e=>e.map(t),Pt=t=>e=>e.flatMap(t),vn=Object.freeze(Object.defineProperty({__proto__:null,bind:Pt,destruct:$n,first:yn,flatMap:Pt,getEqualityComparer:({equals:t})=>p.ofEquals((e,n)=>{if(e.length!==n.length)return!1;for(let r=0;r<e.length;r++)if(!t(e[r],n[r]))return!1;return!0}),head:wt,make:(t,e)=>{const n=t<=1?1:Math.floor(t);return[...Array(n).keys()].map(e)},map:En,of:t=>[t],range:(t,e)=>{const n=Math.floor(t),r=Math.floor(e);if(n>=r)return[n];const o=[];for(let s=n;s<=r;s++)o.push(s);return o},reverse:t=>t.slice(0).reverse(),sort:(t=$.Default)=>e=>e.slice(0).sort(t.compare)},Symbol.toStringTag,{value:"Module"})),P=(t,{equals:e}=p.Default)=>n=>{if(n.size<1)return a.none;for(const[r,o]of n)if(e(r,t))return a.some([r,o]);return a.none},_n=(t,e=p.Default)=>n=>u(n,P(t,e),a.isSome),On=(t,e=p.Default)=>n=>u(n,P(t,e),a.map(([,r])=>r)),U=([t,e],n=p.Default)=>r=>{if(r.size<1){const s=_();return s.set(t,e),s}const o=new globalThis.Map(r);return u(r,P(t,n),a.match({none:()=>(o.set(t,e),o),some:([s])=>(o.set(s,e),o)}))},bn=t=>e=>{if(e.size<1)return _();const n=_();for(const[r,o]of e)n.set(r,t(r,o));return n},Sn=(t,e=$.Default)=>n=>a.ofNullish(K(e)(n).find(t)),_=()=>new globalThis.Map,Mn=t=>e=>{if(e.size<1)return!1;for(const[,n]of e)if(t(n))return!0;return!1},kn=(t,e,n=p.Default)=>r=>u(r,P(t,n),a.match({some:([o,s])=>{const c=new globalThis.Map(r);return c.set(o,e(s)),c},none:r})),jn=t=>t.size,wn=t=>t.size<1,K=({compare:t}=$.Default)=>e=>Array.from(e.keys()).sort(t),Pn=(t=$.Default)=>e=>{const n=[];for(const[,r]of e)n.push(r);return n.sort(t.compare)},H=(t=$.Default)=>e=>K(t)(e).map(n=>[n,e.get(n)]),Cn=Object.freeze(Object.defineProperty({__proto__:null,change:kn,containsKey:_n,empty:_,every:t=>e=>{if(e.size<1)return!0;for(const[n,r]of e)if(!t(n,r))return!1;return!0},exists:Mn,filter:t=>e=>{if(e.size<1)return _();const n=_();for(const[r,o]of e)t(r,o)&&n.set(r,o);return n},find:On,findKey:Sn,findWithKey:P,isEmpty:wn,iter:t=>e=>{if(!(e.size<1))for(const[n,r]of e)t(n,r)},keys:K,map:bn,ofArray:(t,e=p.Default)=>t.length<1?new globalThis.Map:t.reduce((n,r)=>U(r,e)(n),_()),ofRecord:(t,e=p.Default)=>Object.entries(t).reduce((n,[r,o])=>U([r,o],e)(n),_()),reduce:(t,e,n=$.Default)=>r=>H(n)(r).reduce((o,[s,c])=>e(o,s,c),t),reduceRight:(t,e,n=$.Default)=>r=>H(n)(r).reduceRight((o,[s,c])=>e(o,s,c),t),remove:(t,e=p.Default)=>n=>u(n,P(t,e),a.match({some:([r])=>{const o=new globalThis.Map(n);return o.delete(r),o},none:n})),set:U,size:jn,toArray:H,values:Pn},Symbol.toStringTag,{value:"Module"})),Ct=Object.freeze({_tag:"NotStarted"}),qt=Object.freeze({_tag:"InProgress"}),Rt=t=>({_tag:"Resolved",resolved:t}),O=(t,...e)=>(r=>typeof r=="function")(t)?t(...e):t,zt=t=>e=>{switch(e._tag){case"NotStarted":return O(t.notStarted);case"InProgress":return O(t.inProgress);case"Resolved":return O(t.resolved,e.resolved);default:return R(e)}},z=t=>e=>{switch(e._tag){case"NotStarted":return O(t.notStarted!=null?t.notStarted:t.orElse);case"InProgress":return O(t.inProgress!=null?t.inProgress:t.orElse);case"Resolved":return t.resolved!=null?O(t.resolved,e.resolved):O(t.orElse);default:return O(t.orElse)}},qn=z({resolved:!1,orElse:!0}),S=Object.freeze(Object.defineProperty({__proto__:null,inProgress:qt,isInProgress:t=>u(t,z({inProgress:!0,orElse:!1})),isResolved:t=>u(t,z({resolved:!0,orElse:!1})),isResolvedWith:(t,e=p.Default)=>z({resolved:n=>e.equals(n,t),orElse:!1}),isUnresolved:qn,map:t=>zt({resolved:M(t,Rt),inProgress:qt,notStarted:Ct}),match:zt,matchOrElse:z,notStarted:Ct,resolved:Rt},Symbol.toStringTag,{value:"Module"})),Rn=(t,e)=>`Must be an enum value in the set ${e}{ ${t.join(", ")} }`,Dt=t=>u(a.some(t),a.refine(T),a.map(M(Z,x)),a.defaultValue(t)),zn=t=>typeof t=="string"||typeof t=="number",Dn=(t,e)=>n=>u(a.ofNullish(n),l.ofOption(()=>`Enum${e?` ${e}`:""} cannot be null/undefined`),l.refine(zn,()=>`Enum${e?` ${e}`:""} must be a string or number`),l.map(Dt),l.bind(r=>u(t,jt(o=>Dt(o)===r),a.match({some:o=>l.ok(o),none:()=>l.err(Rn(t,e))})))),G=t=>typeof t=="function",Tn=t=>e=>n=>{const r=Object.entries(t).find(([,c])=>c===n);if(!r)throw new TypeError(`Expected to match against an enum where '${n}' is a valid value.`);const o=r[0];if(!Object.hasOwn(e,o))throw new TypeError(`Expected a matcher containing a case for '${o}'.`);const s=e[o];return G(s)?s():s},Nn=t=>e=>n=>{const r=Object.entries(t).find(([,s])=>s===n);if(!r)throw new TypeError(`Expected to match against an enum where '${n}' is a valid value.`);const o=r[0];if(Object.hasOwn(e,o)){const s=e[o];return G(s)?s():s}return G(e.orElse)?e.orElse():e.orElse},An=(t,e="")=>{const n=Object.entries(t).reduce((o,[s,c])=>({...o,[s]:c}),{}),r=Object.values(t);return{...n,values:r,parse:Dn(r,e),match:Tn(t),matchOrElse:Nn(t)}},Vn=t=>typeof t=="function",Tt=(t,e,n)=>Object.entries(t).reduce((r,o)=>{const[s,c]=o,b=I(s),C=n.length>0?`${n}${b}`:`${b}`;return Object.assign(r,{[s]:Vn(c)?(...D)=>({[e]:C,...c(...D)}):{[e]:C}})},{}),Nt=(t,e)=>Object.entries(t).reduce((n,r)=>{const[o]=r,s=I(o),c=e.length>0?`${e}${s}`:`${s}`;return Object.assign(n,{[o]:c})},{}),At=(t,e)=>e.length>0?t.replace(new RegExp(`${e}`),""):t,Vt=(t,e)=>n=>r=>{const o=F(At(r[t],e));if(!Object.hasOwn(n,o))throw new TypeError(`Expected to be given a variant with scope ${e}. Actual type was ${r[t]}`);const s=n[o],c={...r};return delete c[t],typeof s=="function"?s(c):s},Bt=(t,e)=>n=>r=>{const o=F(At(r[t],e));if(Object.hasOwn(n,o)){const s=n[o],c={...r};return delete c[t],typeof s=="function"?s(c):s}return typeof n.orElse=="function"?n.orElse():n.orElse},Bn=(t,e,n)=>({...Tt(t,e,n),match:Vt(e,n),matchOrElse:Bt(e,n),types:Nt(t,n)}),In=t=>({...Tt(t,"_tag",""),match:Vt("_tag",""),matchOrElse:Bt("_tag",""),types:Nt(t,"")}),J=t=>S.resolved(l.ok(t)),Q=t=>S.resolved(l.err(t)),Fn=t=>typeof t!="function",m=(t,e)=>Fn(t)?t:t(e),B=(t,e)=>Object.hasOwn(e,t),X=t=>e=>{switch(e._tag){case"InProgress":return m(t.inProgress,void 0);case"NotStarted":return m(t.notStarted,void 0);case"Resolved":return u(e.resolved,l.match({ok:n=>m(t.resolvedOk,n),err:n=>m(t.resolvedErr,n)}));default:return R(e)}},Wn=Object.freeze(Object.defineProperty({__proto__:null,err:Q,map:t=>X({resolvedOk:M(t,J),resolvedErr:Q,inProgress:S.inProgress,notStarted:S.notStarted}),mapErr:t=>X({resolvedErr:M(t,Q),resolvedOk:J,inProgress:S.inProgress,notStarted:S.notStarted}),match:X,matchOrElse:t=>e=>{switch(e._tag){case"InProgress":return B("inProgress",t)?m(t.inProgress,void 0):m(t.orElse,void 0);case"NotStarted":return B("notStarted",t)?m(t.notStarted,void 0):m(t.orElse,void 0);case"Resolved":return u(e.resolved,l.match({ok:n=>B("resolvedOk",t)?m(t.resolvedOk,n):m(t.orElse,void 0),err:n=>B("resolvedErr",t)?m(t.resolvedErr,n):m(t.orElse,void 0)}));default:return R(e)}},ok:J},Symbol.toStringTag,{value:"Module"}));return i.Array=hn,i.Async=A,i.AsyncResult=Fe,i.Deferred=S,i.DeferredResult=Wn,i.EqualityComparer=p,i.Map=Cn,i.NonEmptyArray=vn,i.Nullable=le,i.Option=a,i.OrderingComparer=$,i.Result=l,i.String=Gt,i.enumOf=An,i.flow=M,i.pipe=u,i.tee=It,i.teeAsync=Ft,i.variant=In,i.variantC=Bn,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),i}({});

@@ -159,2 +159,19 @@ /**

export declare const isResolvedWith: <A>(expected: A, equalityComparer?: EqualityComparer<A>) => (deferred: Deferred<A>) => boolean;
/**
* Maps the wrapped `Resolved` value using the given function.
* Passes through `InProgress` and `NotStarted` as-is.
*
* @group Mapping
*
* @example
* pipe(
* Deferred.resolved("cheese"),
* Deferred.map(s => s.length),
* Deferred.matchOrElse({
* resolved: r => r,
* orElse: 0
* })
* ) // => 6
*/
export declare const map: <A, B>(f: (a: A) => B) => (deferred: Deferred<A>) => Deferred<B>;
export {};

@@ -15,5 +15,19 @@ /**

*/
import type { Deferred } from "../Deferred";
import { Deferred } from "../Deferred";
import { Result } from "../Result";
export type DeferredResult<A, E> = Deferred<Result<A, E>>;
/**
* Convenience constructor function to directly create a Resolved(Ok).
* Equivalent to `Deferred.resolved(Result.ok(...))`.
*
* @group Constructors
*/
export declare const ok: <A, E = never>(a: A) => DeferredResult<A, E>;
/**
* Convenience constructor function to directly create a Resolved(Err).
* Equivalent to `Deferred.resolved(Result.err(...))`.
*
* @group Constructors
*/
export declare const err: <E, A = never>(err: E) => DeferredResult<A, E>;
/** @ignore */

@@ -86,2 +100,36 @@ interface DeferredResultMatcher<A, E, R> {

export declare const matchOrElse: <A, E, R>(matcher: PartialDeferredResultMatcher<A, E, R>) => (deferredResult: DeferredResult<A, E>) => R;
/**
* Maps the wrapped `Resolved` value when `Result` is `Ok` using the given function.
* Passes through `Resolved` when `Result` is `Err`, `InProgress`, and `NotStarted` as-is.
*
* @group Mapping
*
* @example
* pipe(
* Deferred.resolved(Result.ok("cheese")),
* DeferredResult.map(s => s.length),
* DeferredResult.matchOrElse({
* resolvedOk: r => r,
* orElse: 0
* })
* ) // => 6
*/
export declare const map: <A, E, B>(f: (a: A) => B) => (deferredResult: DeferredResult<A, E>) => DeferredResult<B, E>;
/**
* Maps the wrapped `Resolved` value when `Result` is `Err` using the given function.
* Passes through `Resolved` when `Result` is `Ok`, `InProgress`, and `NotStarted` as-is.
*
* @group Mapping
*
* @example
* pipe(
* Deferred.resolved(Result.err("cheese")),
* DeferredResult.map(s => s.length),
* DeferredResult.matchOrElse({
* resolvedErr: r => r,
* orElse: 0
* })
* ) // => 6
*/
export declare const mapErr: <A, Ea, Eb>(f: (ea: Ea) => Eb) => (deferredResult: DeferredResult<A, Ea>) => DeferredResult<A, Eb>;
export {};

@@ -22,3 +22,3 @@ {

],
"version": "1.4.3",
"version": "1.5.0",
"type": "module",

@@ -25,0 +25,0 @@ "main": "./dist/fp-toolkit.cjs",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc