functype 0.8.5 → 0.8.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/README.md +21 -21
  2. package/dist/chunk-CPKZHNLP.js +1 -0
  3. package/dist/chunk-MDNYGGCI.mjs +1 -0
  4. package/dist/collections/index.d.mts +1 -1
  5. package/dist/collections/index.d.ts +1 -1
  6. package/dist/either/Either.d.mts +1 -1
  7. package/dist/either/Either.d.ts +1 -1
  8. package/dist/either/Either.js +1 -1
  9. package/dist/either/Either.mjs +1 -1
  10. package/dist/{index-BYj2UWRP.d.mts → index-BnKWcor4.d.mts} +1 -0
  11. package/dist/{index-BB5BWdxR.d.ts → index-DjeTCtkC.d.ts} +1 -0
  12. package/dist/index.d.mts +1 -1
  13. package/dist/index.d.ts +1 -1
  14. package/dist/index.js +1 -1
  15. package/dist/index.mjs +1 -1
  16. package/dist/iterable/Seq.d.mts +1 -1
  17. package/dist/iterable/Seq.d.ts +1 -1
  18. package/dist/iterable/Seq.js +1 -1
  19. package/dist/iterable/Seq.mjs +1 -1
  20. package/dist/iterable/index.d.mts +1 -1
  21. package/dist/iterable/index.d.ts +1 -1
  22. package/dist/iterable/index.js +1 -1
  23. package/dist/iterable/index.mjs +1 -1
  24. package/dist/list/List.d.mts +1 -1
  25. package/dist/list/List.d.ts +1 -1
  26. package/dist/list/List.js +1 -1
  27. package/dist/list/List.mjs +1 -1
  28. package/dist/map/Map.d.mts +1 -1
  29. package/dist/map/Map.d.ts +1 -1
  30. package/dist/map/Map.js +1 -1
  31. package/dist/map/Map.mjs +1 -1
  32. package/dist/option/Option.d.mts +1 -1
  33. package/dist/option/Option.d.ts +1 -1
  34. package/dist/option/Option.js +1 -1
  35. package/dist/option/Option.mjs +1 -1
  36. package/dist/set/Set.d.mts +1 -1
  37. package/dist/set/Set.d.ts +1 -1
  38. package/dist/set/Set.js +1 -1
  39. package/dist/set/Set.mjs +1 -1
  40. package/dist/try/Try.d.mts +1 -1
  41. package/dist/try/Try.d.ts +1 -1
  42. package/dist/try/Try.js +1 -1
  43. package/dist/try/Try.mjs +1 -1
  44. package/dist/util/index.d.mts +1 -1
  45. package/dist/util/index.d.ts +1 -1
  46. package/dist/util/index.js +1 -1
  47. package/dist/util/index.mjs +1 -1
  48. package/lib/option/Option.d.ts +2 -1
  49. package/lib/serializable/Serializable.d.ts +15 -0
  50. package/lib/try/Try.d.ts +1 -0
  51. package/package.json +1 -1
  52. package/dist/chunk-AB3QRD66.js +0 -1
  53. package/dist/chunk-BEWBKRXZ.js +0 -1
  54. package/dist/chunk-BSQMHA7A.js +0 -1
  55. package/dist/chunk-I7TGEFK5.mjs +0 -1
  56. package/dist/chunk-IETKPB7O.js +0 -1
  57. package/dist/chunk-IGMQOLSH.mjs +0 -1
  58. package/dist/chunk-N3GTVYCO.js +0 -1
  59. package/dist/chunk-O7DO2OKU.mjs +0 -1
  60. package/dist/chunk-PJIXAQSQ.mjs +0 -1
  61. package/dist/chunk-XZ7VRBBD.mjs +0 -1
package/README.md CHANGED
@@ -1,21 +1,21 @@
1
- # functype
2
-
3
- A small functional library for TypeScript inspired by Scala Standard Library.
4
-
5
- [![Node.js Build](https://github.com/jordanburke/functype/actions/workflows/pnpm-build.yml/badge.svg)](https://github.com/jordanburke/functype/actions/workflows/pnpm-build.yml)
6
-
7
- ## Installation
8
-
9
- You can install `functype` using any package manager:
10
-
11
- ```bash
12
- npm install functype
13
- ```
14
-
15
- ```bash
16
- pnpm install functype
17
- ```
18
-
19
- ```bash
20
- yarn install functype
21
- ```
1
+ # functype
2
+
3
+ A small functional library for TypeScript inspired by Scala Standard Library.
4
+
5
+ [![Node.js Build](https://github.com/jordanburke/functype/actions/workflows/pnpm-build.yml/badge.svg)](https://github.com/jordanburke/functype/actions/workflows/pnpm-build.yml)
6
+
7
+ ## Installation
8
+
9
+ You can install `functype` using any package manager:
10
+
11
+ ```bash
12
+ npm install functype
13
+ ```
14
+
15
+ ```bash
16
+ pnpm install functype
17
+ ```
18
+
19
+ ```bash
20
+ yarn install functype
21
+ ```
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkOXLZ6UIZjs = require('./chunk-OXLZ6UIZ.js');var _chunkBNNK42JCjs = require('./chunk-BNNK42JC.js');var _chunk5VTXJIR3js = require('./chunk-5VTXJIR3.js');var _chunk3VJERXBPjs = require('./chunk-3VJERXBP.js');var m=e=>{let t=_chunkBNNK42JCjs.a.call(void 0, e)?e:e instanceof Object&&"toArray"in e?e.toArray():[],r=Array.from(t);return{[Symbol.iterator]:()=>r[Symbol.iterator](),get length(){return r.length},map:o=>m(r.map(o)),flatMap:o=>m(r.flatMap(i=>o(i).toArray())),forEach:o=>r.forEach(o),count:o=>r.filter(o).length,exists:o=>r.some(o),filter:o=>m(r.filter(o)),filterNot:o=>m(r.filter(i=>!o(i))),find:o=>f(r.find(o)),get head(){return r[0]},get headOption(){return r.length>0?f(r[0]):T()},get isEmpty(){return r.length===0},get size(){return r.length},toArray:()=>[...r],reduce:o=>r.reduce(o),reduceRight:o=>r.reduceRight(o),foldLeft:o=>i=>r.reduce(i,o),foldRight:o=>i=>r.reduceRight((a,p)=>i(p,a),o),valueOf:()=>({values:r})}},s= exports.e =e=>m(e);var d=e=>{let t=_chunkBNNK42JCjs.a.call(void 0, e)?new (0, _chunk3VJERXBPjs.a)(e):new (0, _chunk3VJERXBPjs.a)(_nullishCoalesce(_optionalChain([e, 'optionalAccess', _2 => _2.toArray, 'call', _3 => _3()]), () => ([]))),r=s(t),o={...r,add:i=>d([...t,i]),remove:i=>{let a=new (0, _chunk3VJERXBPjs.a)(t);return a.delete(i),d(a)},contains:i=>t.has(i),has:i=>t.has(i),map:i=>d(r.map(i)),flatMap:i=>d(r.flatMap(i)),toList:()=>A(t),toSet:()=>o,toString:()=>`Set(${Array.from(t).toString()})`};return o},h= exports.f =e=>d(e);var c=e=>{function t(a){return a!=null&&typeof a[Symbol.iterator]=="function"}let r=Array.isArray(e)?e:t(e)?Array.from(e):[],o=s(r),i={...o,length:r.length,map:a=>c(r.map(a)),flatMap:a=>c(o.flatMap(a)),remove:a=>{let p=r.indexOf(a);return i.removeAt(p)},contains:a=>r.includes(a),add:a=>c([...r,a]),removeAt:a=>a<0||a>=r.length?i:c([...r.slice(0,a),...r.slice(a+1)]),get:a=>f(r[a]),concat:a=>c([...r,...a.toArray()]),toList:()=>i,toSet:()=>h(r),toString:()=>`List(${r.toString()})`};return new Proxy(i,{get(a,p){return typeof p=="symbol"||isNaN(Number(p))?a[p]:a.get(Number(p))}})},A= exports.g =e=>c(e);var U=e=>({_tag:"Right",value:e,isLeft:()=>!1,isRight:()=>!0,map:t=>U(t(e)),flatMap:t=>t(e),toOption:()=>g(e),toList:()=>A([e]),valueOf:()=>({_tag:"Right",value:e}),toString:()=>`Right(${JSON.stringify(e)})`}),E=e=>({_tag:"Left",value:e,isLeft:()=>!0,isRight:()=>!1,map:t=>E(e),flatMap:t=>E(e),toOption:()=>T(),toList:()=>A(),valueOf:()=>({_tag:"Left",value:e}),toString:()=>`Left(${JSON.stringify(e)})`}),b= exports.h =e=>U(e),y= exports.i =e=>E(e),Ae= exports.j =e=>e.isRight(),ue= exports.k =e=>e.isLeft(),ce= exports.l =(e,t)=>{try{return b(e())}catch(r){return y(t(r))}};var u=e=>{let t={values:new (0, _chunk5VTXJIR3js.a)(e)},r=()=>Array.from(t.values.entries()).map(([n,l])=>_chunkOXLZ6UIZjs.a.call(void 0, [n,l])),o=n=>u(new (0, _chunk5VTXJIR3js.a)(t.values).set(n.toArray()[0],n.toArray()[1]).entries()),i=n=>{let l=new (0, _chunk5VTXJIR3js.a)(t.values);return l.delete(n)?u(l.entries()):u(t.values.entries())},a=n=>t.values.get(n[0])===n[1],p=()=>t.values.size,x=n=>u(Array.from(t.values.entries()).map(([l,q])=>[l,n(q)])),V=n=>{let l=u(t.values.entries()).toList();return u(l.flatMap(n).toArray())},K=n=>s(r()).reduce(n),I=n=>s(r()).reduceRight(n),M=n=>l=>s(r()).foldLeft(n)(l),N=n=>l=>s(r()).foldRight(n)(l),z=n=>f(t.values.get(n)),w=(n,l)=>f(t.values.get(n)).getOrElse(l),F=()=>t.values.size===0;return{add:o,remove:i,contains:a,get size(){return p()},map:x,flatMap:V,reduce:K,reduceRight:I,foldLeft:M,foldRight:N,get:z,getOrElse:w,get isEmpty(){return F()},orElse:(n,l)=>f(t.values.get(n)).orElse(l),toList:()=>A(r()),toSet:()=>h(r()),toString:()=>`Map(${r().toString()})`}},he= exports.m =e=>u(e);var v=e=>({_tag:"Success",value:e,error:void 0,isSuccess:()=>!0,isFailure:()=>!1,getOrElse:t=>e,orElse:t=>v(e),toEither:()=>b(e),orThrow:()=>e,map:t=>C(()=>t(e)),flatMap:t=>t(e),valueOf:()=>({_tag:"Success",value:e}),toString:()=>`Success(${JSON.stringify(e)})`}),_=e=>({_tag:"Failure",value:void 0,error:e,isSuccess:()=>!1,isFailure:()=>!0,getOrElse:t=>t,orElse:t=>t,toEither:()=>y(e),orThrow:()=>{throw e},map:t=>_(e),flatMap:t=>_(e),valueOf:()=>({_tag:"Failure",error:e}),toString:()=>`Failure(${e.message})`}),C= exports.n =e=>{try{return v(e())}catch(t){return _(t instanceof Error?t:new Error(String(t)))}};var g=e=>({_tag:"Some",value:e,isEmpty:!1,get:()=>e,getOrElse:()=>e,orElse:()=>g(e),map:t=>g(t(e)),flatMap:t=>t(e),reduce:t=>t(void 0,e),reduceRight:t=>t(void 0,e),foldLeft:t=>r=>r(t,e),foldRight:t=>r=>r(e,t),toList:()=>s([e]),contains:t=>t===e,size:1,toEither:t=>b(e),toString:()=>`Some(${JSON.stringify(e)})`,valueOf:()=>({_tag:"Some",value:e})}),R={_tag:"None",value:void 0,isEmpty:!0,get:()=>{throw new Error("Cannot call get() on None")},getOrElse:e=>e,orElse:e=>e,map:()=>R,flatMap:()=>R,reduce:()=>{},reduceRight:()=>{},foldLeft:e=>()=>e,foldRight:e=>()=>e,toList:()=>s([]),contains:()=>!1,size:0,toEither:e=>y(e),toString:()=>"None",valueOf:()=>({_tag:"None"})},T= exports.b =()=>R,f= exports.c =e=>e!=null?g(e):T();exports.a = g; exports.b = T; exports.c = f; exports.d = m; exports.e = s; exports.f = h; exports.g = A; exports.h = b; exports.i = y; exports.j = Ae; exports.k = ue; exports.l = ce; exports.m = he; exports.n = C;
@@ -0,0 +1 @@
1
+ import{a as O}from"./chunk-2I2NKDFN.mjs";import{a as B}from"./chunk-RRAIFS3D.mjs";import{a as S}from"./chunk-377WQNCB.mjs";import{a as L}from"./chunk-HA5XD5KC.mjs";var m=e=>{let t=B(e)?e:e instanceof Object&&"toArray"in e?e.toArray():[],r=Array.from(t);return{[Symbol.iterator]:()=>r[Symbol.iterator](),get length(){return r.length},map:o=>m(r.map(o)),flatMap:o=>m(r.flatMap(i=>o(i).toArray())),forEach:o=>r.forEach(o),count:o=>r.filter(o).length,exists:o=>r.some(o),filter:o=>m(r.filter(o)),filterNot:o=>m(r.filter(i=>!o(i))),find:o=>f(r.find(o)),get head(){return r[0]},get headOption(){return r.length>0?f(r[0]):T()},get isEmpty(){return r.length===0},get size(){return r.length},toArray:()=>[...r],reduce:o=>r.reduce(o),reduceRight:o=>r.reduceRight(o),foldLeft:o=>i=>r.reduce(i,o),foldRight:o=>i=>r.reduceRight((a,p)=>i(p,a),o),valueOf:()=>({values:r})}},s=e=>m(e);var d=e=>{let t=B(e)?new L(e):new L(e?.toArray()??[]),r=s(t),o={...r,add:i=>d([...t,i]),remove:i=>{let a=new L(t);return a.delete(i),d(a)},contains:i=>t.has(i),has:i=>t.has(i),map:i=>d(r.map(i)),flatMap:i=>d(r.flatMap(i)),toList:()=>A(t),toSet:()=>o,toString:()=>`Set(${Array.from(t).toString()})`};return o},h=e=>d(e);var c=e=>{function t(a){return a!=null&&typeof a[Symbol.iterator]=="function"}let r=Array.isArray(e)?e:t(e)?Array.from(e):[],o=s(r),i={...o,length:r.length,map:a=>c(r.map(a)),flatMap:a=>c(o.flatMap(a)),remove:a=>{let p=r.indexOf(a);return i.removeAt(p)},contains:a=>r.includes(a),add:a=>c([...r,a]),removeAt:a=>a<0||a>=r.length?i:c([...r.slice(0,a),...r.slice(a+1)]),get:a=>f(r[a]),concat:a=>c([...r,...a.toArray()]),toList:()=>i,toSet:()=>h(r),toString:()=>`List(${r.toString()})`};return new Proxy(i,{get(a,p){return typeof p=="symbol"||isNaN(Number(p))?a[p]:a.get(Number(p))}})},A=e=>c(e);var U=e=>({_tag:"Right",value:e,isLeft:()=>!1,isRight:()=>!0,map:t=>U(t(e)),flatMap:t=>t(e),toOption:()=>g(e),toList:()=>A([e]),valueOf:()=>({_tag:"Right",value:e}),toString:()=>`Right(${JSON.stringify(e)})`}),E=e=>({_tag:"Left",value:e,isLeft:()=>!0,isRight:()=>!1,map:t=>E(e),flatMap:t=>E(e),toOption:()=>T(),toList:()=>A(),valueOf:()=>({_tag:"Left",value:e}),toString:()=>`Left(${JSON.stringify(e)})`}),b=e=>U(e),y=e=>E(e),Ae=e=>e.isRight(),ue=e=>e.isLeft(),ce=(e,t)=>{try{return b(e())}catch(r){return y(t(r))}};var u=e=>{let t={values:new S(e)},r=()=>Array.from(t.values.entries()).map(([n,l])=>O([n,l])),o=n=>u(new S(t.values).set(n.toArray()[0],n.toArray()[1]).entries()),i=n=>{let l=new S(t.values);return l.delete(n)?u(l.entries()):u(t.values.entries())},a=n=>t.values.get(n[0])===n[1],p=()=>t.values.size,x=n=>u(Array.from(t.values.entries()).map(([l,q])=>[l,n(q)])),V=n=>{let l=u(t.values.entries()).toList();return u(l.flatMap(n).toArray())},K=n=>s(r()).reduce(n),I=n=>s(r()).reduceRight(n),M=n=>l=>s(r()).foldLeft(n)(l),N=n=>l=>s(r()).foldRight(n)(l),z=n=>f(t.values.get(n)),w=(n,l)=>f(t.values.get(n)).getOrElse(l),F=()=>t.values.size===0;return{add:o,remove:i,contains:a,get size(){return p()},map:x,flatMap:V,reduce:K,reduceRight:I,foldLeft:M,foldRight:N,get:z,getOrElse:w,get isEmpty(){return F()},orElse:(n,l)=>f(t.values.get(n)).orElse(l),toList:()=>A(r()),toSet:()=>h(r()),toString:()=>`Map(${r().toString()})`}},he=e=>u(e);var v=e=>({_tag:"Success",value:e,error:void 0,isSuccess:()=>!0,isFailure:()=>!1,getOrElse:t=>e,orElse:t=>v(e),toEither:()=>b(e),orThrow:()=>e,map:t=>C(()=>t(e)),flatMap:t=>t(e),valueOf:()=>({_tag:"Success",value:e}),toString:()=>`Success(${JSON.stringify(e)})`}),_=e=>({_tag:"Failure",value:void 0,error:e,isSuccess:()=>!1,isFailure:()=>!0,getOrElse:t=>t,orElse:t=>t,toEither:()=>y(e),orThrow:()=>{throw e},map:t=>_(e),flatMap:t=>_(e),valueOf:()=>({_tag:"Failure",error:e}),toString:()=>`Failure(${e.message})`}),C=e=>{try{return v(e())}catch(t){return _(t instanceof Error?t:new Error(String(t)))}};var g=e=>({_tag:"Some",value:e,isEmpty:!1,get:()=>e,getOrElse:()=>e,orElse:()=>g(e),map:t=>g(t(e)),flatMap:t=>t(e),reduce:t=>t(void 0,e),reduceRight:t=>t(void 0,e),foldLeft:t=>r=>r(t,e),foldRight:t=>r=>r(e,t),toList:()=>s([e]),contains:t=>t===e,size:1,toEither:t=>b(e),toString:()=>`Some(${JSON.stringify(e)})`,valueOf:()=>({_tag:"Some",value:e})}),R={_tag:"None",value:void 0,isEmpty:!0,get:()=>{throw new Error("Cannot call get() on None")},getOrElse:e=>e,orElse:e=>e,map:()=>R,flatMap:()=>R,reduce:()=>{},reduceRight:()=>{},foldLeft:e=>()=>e,foldRight:e=>()=>e,toList:()=>s([]),contains:()=>!1,size:0,toEither:e=>y(e),toString:()=>"None",valueOf:()=>({_tag:"None"})},T=()=>R,f=e=>e!=null?g(e):T();export{g as a,T as b,f as c,m as d,s as e,h as f,A as g,b as h,y as i,Ae as j,ue as k,ce as l,he as m,C as n};
@@ -1,4 +1,4 @@
1
- export { d as Collection, C as Converters } from '../index-BYj2UWRP.mjs';
1
+ export { d as Collection, C as Converters } from '../index-BnKWcor4.mjs';
2
2
  import '../functor/index.mjs';
3
3
  import '../identity/Identity.mjs';
4
4
  import '../tuple/Tuple.mjs';
@@ -1,4 +1,4 @@
1
- export { d as Collection, C as Converters } from '../index-BB5BWdxR.js';
1
+ export { d as Collection, C as Converters } from '../index-DjeTCtkC.js';
2
2
  import '../functor/index.js';
3
3
  import '../identity/Identity.js';
4
4
  import '../tuple/Tuple.js';
@@ -1,5 +1,5 @@
1
1
  import '../functor/index.mjs';
2
- export { E as Either, e as Left, R as Right, f as isLeft, i as isRight, t as tryCatch } from '../index-BYj2UWRP.mjs';
2
+ export { E as Either, e as Left, R as Right, f as isLeft, i as isRight, t as tryCatch } from '../index-BnKWcor4.mjs';
3
3
  import '../typeable/Typeable.mjs';
4
4
  import '../identity/Identity.mjs';
5
5
  import '../tuple/Tuple.mjs';
@@ -1,5 +1,5 @@
1
1
  import '../functor/index.js';
2
- export { E as Either, e as Left, R as Right, f as isLeft, i as isRight, t as tryCatch } from '../index-BB5BWdxR.js';
2
+ export { E as Either, e as Left, R as Right, f as isLeft, i as isRight, t as tryCatch } from '../index-DjeTCtkC.js';
3
3
  import '../typeable/Typeable.js';
4
4
  import '../identity/Identity.js';
5
5
  import '../tuple/Tuple.js';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBSQMHA7Ajs = require('../chunk-BSQMHA7A.js');require('../chunk-N3GTVYCO.js');require('../chunk-3VJERXBP.js');require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');exports.Left = _chunkBSQMHA7Ajs.b; exports.Right = _chunkBSQMHA7Ajs.a; exports.isLeft = _chunkBSQMHA7Ajs.d; exports.isRight = _chunkBSQMHA7Ajs.c; exports.tryCatch = _chunkBSQMHA7Ajs.e;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');exports.Left = _chunkCPKZHNLPjs.i; exports.Right = _chunkCPKZHNLPjs.h; exports.isLeft = _chunkCPKZHNLPjs.k; exports.isRight = _chunkCPKZHNLPjs.j; exports.tryCatch = _chunkCPKZHNLPjs.l;
@@ -1 +1 @@
1
- import{a,b,c,d,e}from"../chunk-PJIXAQSQ.mjs";import"../chunk-I7TGEFK5.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";export{b as Left,a as Right,d as isLeft,c as isRight,e as tryCatch};
1
+ import{h as a,i as b,j as c,k as d,l as e}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";export{b as Left,a as Right,d as isLeft,c as isRight,e as tryCatch};
@@ -25,6 +25,7 @@ type Option<T extends Type> = {
25
25
  _tag: "Some" | "None";
26
26
  value?: T;
27
27
  };
28
+ toEither<E>(left: E): Either<E, T>;
28
29
  toString(): string;
29
30
  } & Traversable<T> & Functor<T> & Typeable<"Some" | "None">;
30
31
  declare const Option: <T extends Type>(value: T | null | undefined) => Option<T>;
@@ -25,6 +25,7 @@ type Option<T extends Type> = {
25
25
  _tag: "Some" | "None";
26
26
  value?: T;
27
27
  };
28
+ toEither<E>(left: E): Either<E, T>;
28
29
  toString(): string;
29
30
  } & Traversable<T> & Functor<T> & Typeable<"Some" | "None">;
30
31
  declare const Option: <T extends Type>(value: T | null | undefined) => Option<T>;
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { AbstractFunctor, ArrayFunctor, ArrayType, Functor, SingleType, Type } from './functor/index.mjs';
2
- export { E as Either, e as Left, L as List, M as Map, N as None, O as Option, R as Right, a as Seq, b as Set, S as Some, g as Traversable, T as Try, _ as _Iterable_, f as isLeft, i as isRight, t as tryCatch } from './index-BYj2UWRP.mjs';
2
+ export { E as Either, e as Left, L as List, M as Map, N as None, O as Option, R as Right, a as Seq, b as Set, S as Some, g as Traversable, T as Try, _ as _Iterable_, f as isLeft, i as isRight, t as tryCatch } from './index-BnKWcor4.mjs';
3
3
  export { Identity } from './identity/Identity.mjs';
4
4
  export { Tuple } from './tuple/Tuple.mjs';
5
5
  export { Typeable } from './typeable/Typeable.mjs';
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { AbstractFunctor, ArrayFunctor, ArrayType, Functor, SingleType, Type } from './functor/index.js';
2
- export { E as Either, e as Left, L as List, M as Map, N as None, O as Option, R as Right, a as Seq, b as Set, S as Some, g as Traversable, T as Try, _ as _Iterable_, f as isLeft, i as isRight, t as tryCatch } from './index-BB5BWdxR.js';
2
+ export { E as Either, e as Left, L as List, M as Map, N as None, O as Option, R as Right, a as Seq, b as Set, S as Some, g as Traversable, T as Try, _ as _Iterable_, f as isLeft, i as isRight, t as tryCatch } from './index-DjeTCtkC.js';
3
3
  export { Identity } from './identity/Identity.js';
4
4
  export { Tuple } from './tuple/Tuple.js';
5
5
  export { Typeable } from './typeable/Typeable.js';
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk5O6YELD3js = require('./chunk-5O6YELD3.js');var _chunkBEWBKRXZjs = require('./chunk-BEWBKRXZ.js');var _chunkOXLZ6UIZjs = require('./chunk-OXLZ6UIZ.js');require('./chunk-5VTXJIR3.js');var _chunkIETKPB7Ojs = require('./chunk-IETKPB7O.js');var _chunkBSQMHA7Ajs = require('./chunk-BSQMHA7A.js');var _chunkN3GTVYCOjs = require('./chunk-N3GTVYCO.js');require('./chunk-3VJERXBP.js');require('./chunk-XORABVON.js');require('./chunk-K3EKBPQE.js');var _chunkAB3QRD66js = require('./chunk-AB3QRD66.js');require('./chunk-BNNK42JC.js');exports.Left = _chunkBSQMHA7Ajs.b; exports.List = _chunkN3GTVYCOjs.b; exports.Map = _chunkBEWBKRXZjs.a; exports.None = _chunkAB3QRD66js.b; exports.Option = _chunkAB3QRD66js.c; exports.Right = _chunkBSQMHA7Ajs.a; exports.Seq = _chunkAB3QRD66js.e; exports.Set = _chunkN3GTVYCOjs.a; exports.Some = _chunkAB3QRD66js.a; exports.Try = _chunkIETKPB7Ojs.a; exports.Tuple = _chunkOXLZ6UIZjs.a; exports.Typeable = _chunk5O6YELD3js.a; exports.isLeft = _chunkBSQMHA7Ajs.d; exports.isRight = _chunkBSQMHA7Ajs.c; exports.tryCatch = _chunkBSQMHA7Ajs.e;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('./chunk-CPKZHNLP.js');var _chunkOXLZ6UIZjs = require('./chunk-OXLZ6UIZ.js');var _chunk5O6YELD3js = require('./chunk-5O6YELD3.js');require('./chunk-BNNK42JC.js');require('./chunk-5VTXJIR3.js');require('./chunk-3VJERXBP.js');require('./chunk-XORABVON.js');require('./chunk-K3EKBPQE.js');exports.Left = _chunkCPKZHNLPjs.i; exports.List = _chunkCPKZHNLPjs.g; exports.Map = _chunkCPKZHNLPjs.m; exports.None = _chunkCPKZHNLPjs.b; exports.Option = _chunkCPKZHNLPjs.c; exports.Right = _chunkCPKZHNLPjs.h; exports.Seq = _chunkCPKZHNLPjs.e; exports.Set = _chunkCPKZHNLPjs.f; exports.Some = _chunkCPKZHNLPjs.a; exports.Try = _chunkCPKZHNLPjs.n; exports.Tuple = _chunkOXLZ6UIZjs.a; exports.Typeable = _chunk5O6YELD3js.a; exports.isLeft = _chunkCPKZHNLPjs.k; exports.isRight = _chunkCPKZHNLPjs.j; exports.tryCatch = _chunkCPKZHNLPjs.l;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{a as l}from"./chunk-V7DKESTM.mjs";import{a as n}from"./chunk-IGMQOLSH.mjs";import{a as b}from"./chunk-2I2NKDFN.mjs";import"./chunk-377WQNCB.mjs";import{a as i}from"./chunk-XZ7VRBBD.mjs";import{a as m,b as x,c as A,d as a,e as B}from"./chunk-PJIXAQSQ.mjs";import{a as p,b as f}from"./chunk-I7TGEFK5.mjs";import"./chunk-HA5XD5KC.mjs";import"./chunk-V2J3R5IU.mjs";import"./chunk-2ML63TYF.mjs";import{a as o,b as r,c as e,e as t}from"./chunk-O7DO2OKU.mjs";import"./chunk-RRAIFS3D.mjs";export{x as Left,f as List,n as Map,r as None,e as Option,m as Right,t as Seq,p as Set,o as Some,i as Try,b as Tuple,l as Typeable,a as isLeft,A as isRight,B as tryCatch};
1
+ import{a,b,c,e as d,f as e,g as f,h as g,i as h,j as i,k as j,l as k,m,n}from"./chunk-MDNYGGCI.mjs";import{a as l}from"./chunk-2I2NKDFN.mjs";import{a as o}from"./chunk-V7DKESTM.mjs";import"./chunk-RRAIFS3D.mjs";import"./chunk-377WQNCB.mjs";import"./chunk-HA5XD5KC.mjs";import"./chunk-V2J3R5IU.mjs";import"./chunk-2ML63TYF.mjs";export{h as Left,f as List,m as Map,b as None,c as Option,g as Right,d as Seq,e as Set,a as Some,n as Try,l as Tuple,o as Typeable,j as isLeft,i as isRight,k as tryCatch};
@@ -1,4 +1,4 @@
1
- export { a as Seq, c as createSeq } from '../index-BYj2UWRP.mjs';
1
+ export { a as Seq, c as createSeq } from '../index-BnKWcor4.mjs';
2
2
  import '../functor/index.mjs';
3
3
  import '../identity/Identity.mjs';
4
4
  import '../tuple/Tuple.mjs';
@@ -1,4 +1,4 @@
1
- export { a as Seq, c as createSeq } from '../index-BB5BWdxR.js';
1
+ export { a as Seq, c as createSeq } from '../index-DjeTCtkC.js';
2
2
  import '../functor/index.js';
3
3
  import '../identity/Identity.js';
4
4
  import '../tuple/Tuple.js';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkAB3QRD66js = require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');exports.Seq = _chunkAB3QRD66js.e; exports.createSeq = _chunkAB3QRD66js.d;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');exports.Seq = _chunkCPKZHNLPjs.e; exports.createSeq = _chunkCPKZHNLPjs.d;
@@ -1 +1 @@
1
- import{d as a,e as b}from"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";export{b as Seq,a as createSeq};
1
+ import{d as a,e as b}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";export{b as Seq,a as createSeq};
@@ -1,5 +1,5 @@
1
1
  import '../functor/index.mjs';
2
- export { a as Seq, _ as _Iterable_ } from '../index-BYj2UWRP.mjs';
2
+ export { a as Seq, _ as _Iterable_ } from '../index-BnKWcor4.mjs';
3
3
  import '../identity/Identity.mjs';
4
4
  import '../tuple/Tuple.mjs';
5
5
  import '../typeable/Typeable.mjs';
@@ -1,5 +1,5 @@
1
1
  import '../functor/index.js';
2
- export { a as Seq, _ as _Iterable_ } from '../index-BB5BWdxR.js';
2
+ export { a as Seq, _ as _Iterable_ } from '../index-DjeTCtkC.js';
3
3
  import '../identity/Identity.js';
4
4
  import '../tuple/Tuple.js';
5
5
  import '../typeable/Typeable.js';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkAB3QRD66js = require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');exports.Seq = _chunkAB3QRD66js.e;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');exports.Seq = _chunkCPKZHNLPjs.e;
@@ -1 +1 @@
1
- import{e as a}from"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";export{a as Seq};
1
+ import{e as a}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";export{a as Seq};
@@ -1,4 +1,4 @@
1
- export { L as List } from '../index-BYj2UWRP.mjs';
1
+ export { L as List } from '../index-BnKWcor4.mjs';
2
2
  import '../functor/index.mjs';
3
3
  import '../identity/Identity.mjs';
4
4
  import '../tuple/Tuple.mjs';
@@ -1,4 +1,4 @@
1
- export { L as List } from '../index-BB5BWdxR.js';
1
+ export { L as List } from '../index-DjeTCtkC.js';
2
2
  import '../functor/index.js';
3
3
  import '../identity/Identity.js';
4
4
  import '../tuple/Tuple.js';
package/dist/list/List.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkN3GTVYCOjs = require('../chunk-N3GTVYCO.js');require('../chunk-3VJERXBP.js');require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');exports.List = _chunkN3GTVYCOjs.b;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');exports.List = _chunkCPKZHNLPjs.g;
@@ -1 +1 @@
1
- import{b as a}from"../chunk-I7TGEFK5.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";export{a as List};
1
+ import{g as a}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";export{a as List};
@@ -1,4 +1,4 @@
1
- export { M as Map } from '../index-BYj2UWRP.mjs';
1
+ export { M as Map } from '../index-BnKWcor4.mjs';
2
2
  import '../tuple/Tuple.mjs';
3
3
  import '../functor/index.mjs';
4
4
  import '../identity/Identity.mjs';
package/dist/map/Map.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { M as Map } from '../index-BB5BWdxR.js';
1
+ export { M as Map } from '../index-DjeTCtkC.js';
2
2
  import '../tuple/Tuple.js';
3
3
  import '../functor/index.js';
4
4
  import '../identity/Identity.js';
package/dist/map/Map.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBEWBKRXZjs = require('../chunk-BEWBKRXZ.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5VTXJIR3.js');require('../chunk-N3GTVYCO.js');require('../chunk-3VJERXBP.js');require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');exports.Map = _chunkBEWBKRXZjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');exports.Map = _chunkCPKZHNLPjs.m;
package/dist/map/Map.mjs CHANGED
@@ -1 +1 @@
1
- import{a}from"../chunk-IGMQOLSH.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-I7TGEFK5.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";export{a as Map};
1
+ import{m as a}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";export{a as Map};
@@ -1,5 +1,5 @@
1
1
  import '../functor/index.mjs';
2
- export { N as None, O as Option, S as Some } from '../index-BYj2UWRP.mjs';
2
+ export { N as None, O as Option, S as Some } from '../index-BnKWcor4.mjs';
3
3
  import '../typeable/Typeable.mjs';
4
4
  import '../identity/Identity.mjs';
5
5
  import '../tuple/Tuple.mjs';
@@ -1,5 +1,5 @@
1
1
  import '../functor/index.js';
2
- export { N as None, O as Option, S as Some } from '../index-BB5BWdxR.js';
2
+ export { N as None, O as Option, S as Some } from '../index-DjeTCtkC.js';
3
3
  import '../typeable/Typeable.js';
4
4
  import '../identity/Identity.js';
5
5
  import '../tuple/Tuple.js';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkAB3QRD66js = require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');exports.None = _chunkAB3QRD66js.b; exports.Option = _chunkAB3QRD66js.c; exports.Some = _chunkAB3QRD66js.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');exports.None = _chunkCPKZHNLPjs.b; exports.Option = _chunkCPKZHNLPjs.c; exports.Some = _chunkCPKZHNLPjs.a;
@@ -1 +1 @@
1
- import{a,b,c}from"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";export{b as None,c as Option,a as Some};
1
+ import{a,b,c}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";export{b as None,c as Option,a as Some};
@@ -1,4 +1,4 @@
1
- export { b as Set } from '../index-BYj2UWRP.mjs';
1
+ export { b as Set } from '../index-BnKWcor4.mjs';
2
2
  import '../functor/index.mjs';
3
3
  import '../identity/Identity.mjs';
4
4
  import '../tuple/Tuple.mjs';
package/dist/set/Set.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { b as Set } from '../index-BB5BWdxR.js';
1
+ export { b as Set } from '../index-DjeTCtkC.js';
2
2
  import '../functor/index.js';
3
3
  import '../identity/Identity.js';
4
4
  import '../tuple/Tuple.js';
package/dist/set/Set.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkN3GTVYCOjs = require('../chunk-N3GTVYCO.js');require('../chunk-3VJERXBP.js');require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');exports.Set = _chunkN3GTVYCOjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');exports.Set = _chunkCPKZHNLPjs.f;
package/dist/set/Set.mjs CHANGED
@@ -1 +1 @@
1
- import{a}from"../chunk-I7TGEFK5.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";export{a as Set};
1
+ import{f as a}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";export{a as Set};
@@ -1,4 +1,4 @@
1
- export { T as Try } from '../index-BYj2UWRP.mjs';
1
+ export { T as Try } from '../index-BnKWcor4.mjs';
2
2
  import '../typeable/Typeable.mjs';
3
3
  import '../functor/index.mjs';
4
4
  import '../identity/Identity.mjs';
package/dist/try/Try.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { T as Try } from '../index-BB5BWdxR.js';
1
+ export { T as Try } from '../index-DjeTCtkC.js';
2
2
  import '../typeable/Typeable.js';
3
3
  import '../functor/index.js';
4
4
  import '../identity/Identity.js';
package/dist/try/Try.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkIETKPB7Ojs = require('../chunk-IETKPB7O.js');require('../chunk-BSQMHA7A.js');require('../chunk-N3GTVYCO.js');require('../chunk-3VJERXBP.js');require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');exports.Try = _chunkIETKPB7Ojs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');exports.Try = _chunkCPKZHNLPjs.n;
package/dist/try/Try.mjs CHANGED
@@ -1 +1 @@
1
- import{a}from"../chunk-XZ7VRBBD.mjs";import"../chunk-PJIXAQSQ.mjs";import"../chunk-I7TGEFK5.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";export{a as Try};
1
+ import{n as a}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";export{a as Try};
@@ -1,4 +1,4 @@
1
- import { E as Either } from '../index-BYj2UWRP.mjs';
1
+ import { E as Either } from '../index-BnKWcor4.mjs';
2
2
  import { ParseError } from '../error/ParseError.mjs';
3
3
  import '../functor/index.mjs';
4
4
  import '../identity/Identity.mjs';
@@ -1,4 +1,4 @@
1
- import { E as Either } from '../index-BB5BWdxR.js';
1
+ import { E as Either } from '../index-DjeTCtkC.js';
2
2
  import { ParseError } from '../error/ParseError.js';
3
3
  import '../functor/index.js';
4
4
  import '../identity/Identity.js';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBSQMHA7Ajs = require('../chunk-BSQMHA7A.js');require('../chunk-N3GTVYCO.js');require('../chunk-3VJERXBP.js');var _chunkE6RS47F7js = require('../chunk-E6RS47F7.js');require('../chunk-AB3QRD66.js');require('../chunk-BNNK42JC.js');var a=o=>{let r=parseInt(o,10);return isNaN(r)?_chunkBSQMHA7Ajs.b.call(void 0, _chunkE6RS47F7js.a.call(void 0, `${r}`)):_chunkBSQMHA7Ajs.a.call(void 0, r)};exports.parseNumber = a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkE6RS47F7js = require('../chunk-E6RS47F7.js');var _chunkCPKZHNLPjs = require('../chunk-CPKZHNLP.js');require('../chunk-OXLZ6UIZ.js');require('../chunk-5O6YELD3.js');require('../chunk-BNNK42JC.js');require('../chunk-5VTXJIR3.js');require('../chunk-3VJERXBP.js');require('../chunk-XORABVON.js');require('../chunk-K3EKBPQE.js');var a=o=>{let r=parseInt(o,10);return isNaN(r)?_chunkCPKZHNLPjs.i.call(void 0, _chunkE6RS47F7js.a.call(void 0, `${r}`)):_chunkCPKZHNLPjs.h.call(void 0, r)};exports.parseNumber = a;
@@ -1 +1 @@
1
- import{a as e,b as t}from"../chunk-PJIXAQSQ.mjs";import"../chunk-I7TGEFK5.mjs";import"../chunk-HA5XD5KC.mjs";import{a as s}from"../chunk-VK5GL6NM.mjs";import"../chunk-O7DO2OKU.mjs";import"../chunk-RRAIFS3D.mjs";var a=o=>{let r=parseInt(o,10);return isNaN(r)?t(s(`${r}`)):e(r)};export{a as parseNumber};
1
+ import{a as s}from"../chunk-VK5GL6NM.mjs";import{h as e,i as t}from"../chunk-MDNYGGCI.mjs";import"../chunk-2I2NKDFN.mjs";import"../chunk-V7DKESTM.mjs";import"../chunk-RRAIFS3D.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-V2J3R5IU.mjs";import"../chunk-2ML63TYF.mjs";var a=o=>{let r=parseInt(o,10);return isNaN(r)?t(s(`${r}`)):e(r)};export{a as parseNumber};
@@ -1,5 +1,5 @@
1
1
  import { Functor, Type } from "../functor";
2
- import { Traversable } from "../index";
2
+ import { Either, Traversable } from "../index";
3
3
  import { _Iterable_ } from "../iterable";
4
4
  import { Typeable } from "../typeable/Typeable";
5
5
  export type Option<T extends Type> = {
@@ -22,6 +22,7 @@ export type Option<T extends Type> = {
22
22
  _tag: "Some" | "None";
23
23
  value?: T;
24
24
  };
25
+ toEither<E>(left: E): Either<E, T>;
25
26
  toString(): string;
26
27
  } & Traversable<T> & Functor<T> & Typeable<"Some" | "None">;
27
28
  export declare const Some: <T extends Type>(value: T) => Option<T>;
@@ -0,0 +1,15 @@
1
+ export type SerializableTypes = "json" | "yaml";
2
+ type SerializationMethods<T> = {
3
+ json: {
4
+ toJSON(): string;
5
+ fromJSON(json: string): T;
6
+ };
7
+ yaml: {
8
+ toYAML(): string;
9
+ fromYAML(yaml: string): T;
10
+ };
11
+ };
12
+ export type Serializable<STypes extends SerializableTypes[], T> = T & (STypes extends [] ? NonNullable<unknown> : STypes extends [infer First, ...infer Rest] ? First extends keyof SerializationMethods<T> ? SerializationMethods<T>[First] & Serializable<Rest extends SerializableTypes[] ? Rest : [], T> : never : never);
13
+ export type SupportedSerializationTypes<T> = T extends Serializable<infer Types, never> ? Types : never;
14
+ export declare function createSerializable<STypes extends SerializableTypes[], T>(obj: T, serializationMethods: Pick<SerializationMethods<T>, STypes[number]>): Serializable<STypes, T>;
15
+ export {};
package/lib/try/Try.d.ts CHANGED
@@ -9,6 +9,7 @@ export type Try<T> = {
9
9
  getOrElse: (defaultValue: T) => T;
10
10
  orElse: (alternative: Try<T>) => Try<T>;
11
11
  toEither: () => Either<Error, T>;
12
+ orThrow: () => T;
12
13
  map: <U>(f: (value: T) => U) => Try<U>;
13
14
  flatMap: <U>(f: (value: T) => Try<U>) => Try<U>;
14
15
  valueOf: () => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "functype",
3
- "version": "0.8.5",
3
+ "version": "0.8.6",
4
4
  "description": "A smallish functional library for TypeScript",
5
5
  "author": "jordan.burke@gmail.com",
6
6
  "license": "MIT",
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBNNK42JCjs = require('./chunk-BNNK42JC.js');var n=e=>{let r=_chunkBNNK42JCjs.a.call(void 0, e)?e:e instanceof Object&&"toArray"in e?e.toArray():[],t=Array.from(r);return{[Symbol.iterator]:()=>t[Symbol.iterator](),get length(){return t.length},map:o=>n(t.map(o)),flatMap:o=>n(t.flatMap(a=>o(a).toArray())),forEach:o=>t.forEach(o),count:o=>t.filter(o).length,exists:o=>t.some(o),filter:o=>n(t.filter(o)),filterNot:o=>n(t.filter(a=>!o(a))),find:o=>i(t.find(o)),get head(){return t[0]},get headOption(){return t.length>0?i(t[0]):p()},get isEmpty(){return t.length===0},get size(){return t.length},toArray:()=>[...t],reduce:o=>t.reduce(o),reduceRight:o=>t.reduceRight(o),foldLeft:o=>a=>t.reduce(a,o),foldRight:o=>a=>t.reduceRight((B,b)=>a(b,B),o),valueOf:()=>({values:t})}},l= exports.e =e=>n(e);var A=e=>({_tag:"Some",value:e,isEmpty:!1,get:()=>e,getOrElse:()=>e,orElse:()=>A(e),map:r=>A(r(e)),flatMap:r=>r(e),reduce:r=>r(void 0,e),reduceRight:r=>r(void 0,e),foldLeft:r=>t=>t(r,e),foldRight:r=>t=>t(e,r),toList:()=>l([e]),contains:r=>r===e,size:1,valueOf:()=>({_tag:"Some",value:e}),toString:()=>`Some(${JSON.stringify(e)})`}),f={_tag:"None",value:void 0,isEmpty:!0,get:()=>{throw new Error("Cannot call get() on None")},getOrElse:e=>e,orElse:e=>e,map:()=>f,flatMap:()=>f,reduce:()=>{},reduceRight:()=>{},foldLeft:e=>()=>e,foldRight:e=>()=>e,toList:()=>l([]),contains:()=>!1,size:0,valueOf:()=>({_tag:"None"}),toString:()=>"None"},p= exports.b =()=>f,i= exports.c =e=>e!=null?A(e):p();exports.a = A; exports.b = p; exports.c = i; exports.d = n; exports.e = l;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOXLZ6UIZjs = require('./chunk-OXLZ6UIZ.js');var _chunk5VTXJIR3js = require('./chunk-5VTXJIR3.js');var _chunkN3GTVYCOjs = require('./chunk-N3GTVYCO.js');var _chunkAB3QRD66js = require('./chunk-AB3QRD66.js');var o=n=>{let a={values:new (0, _chunk5VTXJIR3js.a)(n)},r=()=>Array.from(a.values.entries()).map(([e,t])=>_chunkOXLZ6UIZjs.a.call(void 0, [e,t])),i=e=>o(new (0, _chunk5VTXJIR3js.a)(a.values).set(e.toArray()[0],e.toArray()[1]).entries()),c=e=>{let t=new (0, _chunk5VTXJIR3js.a)(a.values);return t.delete(e)?o(t.entries()):o(a.values.entries())},m=e=>a.values.get(e[0])===e[1],f=()=>a.values.size,v=e=>o(Array.from(a.values.entries()).map(([t,O])=>[t,e(O)])),M=e=>{let t=o(a.values.entries()).toList();return o(t.flatMap(e).toArray())},T=e=>_chunkAB3QRD66js.e.call(void 0, r()).reduce(e),g=e=>_chunkAB3QRD66js.e.call(void 0, r()).reduceRight(e),y=e=>t=>_chunkAB3QRD66js.e.call(void 0, r()).foldLeft(e)(t),d=e=>t=>_chunkAB3QRD66js.e.call(void 0, r()).foldRight(e)(t),S=e=>_chunkAB3QRD66js.c.call(void 0, a.values.get(e)),b=(e,t)=>_chunkAB3QRD66js.c.call(void 0, a.values.get(e)).getOrElse(t),E=()=>a.values.size===0;return{add:i,remove:c,contains:m,get size(){return f()},map:v,flatMap:M,reduce:T,reduceRight:g,foldLeft:y,foldRight:d,get:S,getOrElse:b,get isEmpty(){return E()},orElse:(e,t)=>_chunkAB3QRD66js.c.call(void 0, a.values.get(e)).orElse(t),toList:()=>_chunkN3GTVYCOjs.b.call(void 0, r()),toSet:()=>_chunkN3GTVYCOjs.a.call(void 0, r()),toString:()=>`Map(${r().toString()})`}},C= exports.a =n=>o(n);exports.a = C;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkN3GTVYCOjs = require('./chunk-N3GTVYCO.js');var _chunkAB3QRD66js = require('./chunk-AB3QRD66.js');var R=t=>({_tag:"Right",value:t,isLeft:()=>!1,isRight:()=>!0,map:e=>R(e(t)),flatMap:e=>e(t),toOption:()=>_chunkAB3QRD66js.a.call(void 0, t),toList:()=>_chunkN3GTVYCOjs.b.call(void 0, [t]),valueOf:()=>({_tag:"Right",value:t}),toString:()=>`Right(${JSON.stringify(t)})`}),r=t=>({_tag:"Left",value:t,isLeft:()=>!0,isRight:()=>!1,map:e=>r(t),flatMap:e=>r(t),toOption:()=>_chunkAB3QRD66js.b.call(void 0, ),toList:()=>_chunkN3GTVYCOjs.b.call(void 0, ),valueOf:()=>({_tag:"Left",value:t}),toString:()=>`Left(${JSON.stringify(t)})`}),s= exports.a =t=>R(t),h= exports.b =t=>r(t),g= exports.c =t=>t.isRight(),U= exports.d =t=>t.isLeft(),E= exports.e =(t,e)=>{try{return s(t())}catch(n){return h(e(n))}};exports.a = s; exports.b = h; exports.c = g; exports.d = U; exports.e = E;
@@ -1 +0,0 @@
1
- import{a as m}from"./chunk-HA5XD5KC.mjs";import{c as S,e as l}from"./chunk-O7DO2OKU.mjs";import{a as b}from"./chunk-RRAIFS3D.mjs";var n=o=>{function A(t){return t!=null&&typeof t[Symbol.iterator]=="function"}let e=Array.isArray(o)?o:A(o)?Array.from(o):[],i=l(e),r={...i,length:e.length,map:t=>n(e.map(t)),flatMap:t=>n(i.flatMap(t)),remove:t=>{let a=e.indexOf(t);return r.removeAt(a)},contains:t=>e.includes(t),add:t=>n([...e,t]),removeAt:t=>t<0||t>=e.length?r:n([...e.slice(0,t),...e.slice(t+1)]),get:t=>S(e[t]),concat:t=>n([...e,...t.toArray()]),toList:()=>r,toSet:()=>c(e),toString:()=>`List(${e.toString()})`};return new Proxy(r,{get(t,a){return typeof a=="symbol"||isNaN(Number(a))?t[a]:t.get(Number(a))}})},L=o=>n(o);var s=o=>{let A=b(o)?new m(o):new m(o?.toArray()??[]),e=l(A),i={...e,add:r=>s([...A,r]),remove:r=>{let t=new m(A);return t.delete(r),s(t)},contains:r=>A.has(r),has:r=>A.has(r),map:r=>s(e.map(r)),flatMap:r=>s(e.flatMap(r)),toList:()=>L(A),toSet:()=>i,toString:()=>`Set(${Array.from(A).toString()})`};return i},c=o=>s(o);export{c as a,L as b};
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBSQMHA7Ajs = require('./chunk-BSQMHA7A.js');var s=r=>({_tag:"Success",value:r,error:void 0,isSuccess:()=>!0,isFailure:()=>!1,getOrElse:e=>r,orElse:e=>s(r),toEither:()=>_chunkBSQMHA7Ajs.a.call(void 0, r),orThrow:()=>r,map:e=>o(()=>e(r)),flatMap:e=>e(r),valueOf:()=>({_tag:"Success",value:r}),toString:()=>`Success(${JSON.stringify(r)})`}),t=r=>({_tag:"Failure",value:void 0,error:r,isSuccess:()=>!1,isFailure:()=>!0,getOrElse:e=>e,orElse:e=>e,toEither:()=>_chunkBSQMHA7Ajs.b.call(void 0, r),orThrow:()=>{throw r},map:e=>t(r),flatMap:e=>t(r),valueOf:()=>({_tag:"Failure",error:r}),toString:()=>`Failure(${r.message})`}),o= exports.a =r=>{try{return s(r())}catch(e){return t(e instanceof Error?e:new Error(String(e)))}};exports.a = o;
@@ -1 +0,0 @@
1
- import{a as u}from"./chunk-2I2NKDFN.mjs";import{a as s}from"./chunk-377WQNCB.mjs";import{a as V,b as K}from"./chunk-I7TGEFK5.mjs";import{c as p,e as l}from"./chunk-O7DO2OKU.mjs";var o=n=>{let a={values:new s(n)},r=()=>Array.from(a.values.entries()).map(([e,t])=>u([e,t])),i=e=>o(new s(a.values).set(e.toArray()[0],e.toArray()[1]).entries()),c=e=>{let t=new s(a.values);return t.delete(e)?o(t.entries()):o(a.values.entries())},m=e=>a.values.get(e[0])===e[1],f=()=>a.values.size,v=e=>o(Array.from(a.values.entries()).map(([t,O])=>[t,e(O)])),M=e=>{let t=o(a.values.entries()).toList();return o(t.flatMap(e).toArray())},T=e=>l(r()).reduce(e),g=e=>l(r()).reduceRight(e),y=e=>t=>l(r()).foldLeft(e)(t),d=e=>t=>l(r()).foldRight(e)(t),S=e=>p(a.values.get(e)),b=(e,t)=>p(a.values.get(e)).getOrElse(t),E=()=>a.values.size===0;return{add:i,remove:c,contains:m,get size(){return f()},map:v,flatMap:M,reduce:T,reduceRight:g,foldLeft:y,foldRight:d,get:S,getOrElse:b,get isEmpty(){return E()},orElse:(e,t)=>p(a.values.get(e)).orElse(t),toList:()=>K(r()),toSet:()=>V(r()),toString:()=>`Map(${r().toString()})`}},C=n=>o(n);export{C as a};
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunk3VJERXBPjs = require('./chunk-3VJERXBP.js');var _chunkAB3QRD66js = require('./chunk-AB3QRD66.js');var _chunkBNNK42JCjs = require('./chunk-BNNK42JC.js');var n=o=>{function A(t){return t!=null&&typeof t[Symbol.iterator]=="function"}let e=Array.isArray(o)?o:A(o)?Array.from(o):[],i=_chunkAB3QRD66js.e.call(void 0, e),r={...i,length:e.length,map:t=>n(e.map(t)),flatMap:t=>n(i.flatMap(t)),remove:t=>{let a=e.indexOf(t);return r.removeAt(a)},contains:t=>e.includes(t),add:t=>n([...e,t]),removeAt:t=>t<0||t>=e.length?r:n([...e.slice(0,t),...e.slice(t+1)]),get:t=>_chunkAB3QRD66js.c.call(void 0, e[t]),concat:t=>n([...e,...t.toArray()]),toList:()=>r,toSet:()=>c(e),toString:()=>`List(${e.toString()})`};return new Proxy(r,{get(t,a){return typeof a=="symbol"||isNaN(Number(a))?t[a]:t.get(Number(a))}})},L= exports.b =o=>n(o);var s=o=>{let A=_chunkBNNK42JCjs.a.call(void 0, o)?new (0, _chunk3VJERXBPjs.a)(o):new (0, _chunk3VJERXBPjs.a)(_nullishCoalesce(_optionalChain([o, 'optionalAccess', _ => _.toArray, 'call', _2 => _2()]), () => ([]))),e=_chunkAB3QRD66js.e.call(void 0, A),i={...e,add:r=>s([...A,r]),remove:r=>{let t=new (0, _chunk3VJERXBPjs.a)(A);return t.delete(r),s(t)},contains:r=>A.has(r),has:r=>A.has(r),map:r=>s(e.map(r)),flatMap:r=>s(e.flatMap(r)),toList:()=>L(A),toSet:()=>i,toString:()=>`Set(${Array.from(A).toString()})`};return i},c= exports.a =o=>s(o);exports.a = c; exports.b = L;
@@ -1 +0,0 @@
1
- import{a as d}from"./chunk-RRAIFS3D.mjs";var n=e=>{let r=d(e)?e:e instanceof Object&&"toArray"in e?e.toArray():[],t=Array.from(r);return{[Symbol.iterator]:()=>t[Symbol.iterator](),get length(){return t.length},map:o=>n(t.map(o)),flatMap:o=>n(t.flatMap(a=>o(a).toArray())),forEach:o=>t.forEach(o),count:o=>t.filter(o).length,exists:o=>t.some(o),filter:o=>n(t.filter(o)),filterNot:o=>n(t.filter(a=>!o(a))),find:o=>i(t.find(o)),get head(){return t[0]},get headOption(){return t.length>0?i(t[0]):p()},get isEmpty(){return t.length===0},get size(){return t.length},toArray:()=>[...t],reduce:o=>t.reduce(o),reduceRight:o=>t.reduceRight(o),foldLeft:o=>a=>t.reduce(a,o),foldRight:o=>a=>t.reduceRight((B,b)=>a(b,B),o),valueOf:()=>({values:t})}},l=e=>n(e);var A=e=>({_tag:"Some",value:e,isEmpty:!1,get:()=>e,getOrElse:()=>e,orElse:()=>A(e),map:r=>A(r(e)),flatMap:r=>r(e),reduce:r=>r(void 0,e),reduceRight:r=>r(void 0,e),foldLeft:r=>t=>t(r,e),foldRight:r=>t=>t(e,r),toList:()=>l([e]),contains:r=>r===e,size:1,valueOf:()=>({_tag:"Some",value:e}),toString:()=>`Some(${JSON.stringify(e)})`}),f={_tag:"None",value:void 0,isEmpty:!0,get:()=>{throw new Error("Cannot call get() on None")},getOrElse:e=>e,orElse:e=>e,map:()=>f,flatMap:()=>f,reduce:()=>{},reduceRight:()=>{},foldLeft:e=>()=>e,foldRight:e=>()=>e,toList:()=>l([]),contains:()=>!1,size:0,valueOf:()=>({_tag:"None"}),toString:()=>"None"},p=()=>f,i=e=>e!=null?A(e):p();export{A as a,p as b,i as c,n as d,l as e};
@@ -1 +0,0 @@
1
- import{b as i}from"./chunk-I7TGEFK5.mjs";import{a as L,b as o}from"./chunk-O7DO2OKU.mjs";var R=t=>({_tag:"Right",value:t,isLeft:()=>!1,isRight:()=>!0,map:e=>R(e(t)),flatMap:e=>e(t),toOption:()=>L(t),toList:()=>i([t]),valueOf:()=>({_tag:"Right",value:t}),toString:()=>`Right(${JSON.stringify(t)})`}),r=t=>({_tag:"Left",value:t,isLeft:()=>!0,isRight:()=>!1,map:e=>r(t),flatMap:e=>r(t),toOption:()=>o(),toList:()=>i(),valueOf:()=>({_tag:"Left",value:t}),toString:()=>`Left(${JSON.stringify(t)})`}),s=t=>R(t),h=t=>r(t),g=t=>t.isRight(),U=t=>t.isLeft(),E=(t,e)=>{try{return s(t())}catch(n){return h(e(n))}};export{s as a,h as b,g as c,U as d,E as e};
@@ -1 +0,0 @@
1
- import{a,b as T}from"./chunk-PJIXAQSQ.mjs";var s=r=>({_tag:"Success",value:r,error:void 0,isSuccess:()=>!0,isFailure:()=>!1,getOrElse:e=>r,orElse:e=>s(r),toEither:()=>a(r),orThrow:()=>r,map:e=>o(()=>e(r)),flatMap:e=>e(r),valueOf:()=>({_tag:"Success",value:r}),toString:()=>`Success(${JSON.stringify(r)})`}),t=r=>({_tag:"Failure",value:void 0,error:r,isSuccess:()=>!1,isFailure:()=>!0,getOrElse:e=>e,orElse:e=>e,toEither:()=>T(r),orThrow:()=>{throw r},map:e=>t(r),flatMap:e=>t(r),valueOf:()=>({_tag:"Failure",error:r}),toString:()=>`Failure(${r.message})`}),o=r=>{try{return s(r())}catch(e){return t(e instanceof Error?e:new Error(String(e)))}};export{o as a};