functype 0.57.2 → 0.57.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/exports.js +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/do/index.d.ts +1 -1
- package/dist/either/index.d.ts +1 -1
- package/dist/{full-interfaces-KT_WdkKr.js → full-interfaces-vTMoBp4S.js} +15 -12
- package/dist/{index-DXsqITGG.d.ts → index-CPGqLMJY.d.ts} +4 -4
- package/dist/index.d.ts +1 -1
- package/dist/list/index.d.ts +1 -1
- package/dist/map/index.d.ts +1 -1
- package/dist/option/index.d.ts +1 -1
- package/dist/set/index.d.ts +1 -1
- package/dist/try/index.d.ts +1 -1
- package/package.json +1 -1
package/dist/cli/exports.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,i as t,n,r,t as i}from"../full-interfaces-
|
|
1
|
+
import{a as e,i as t,n,r,t as i}from"../full-interfaces-vTMoBp4S.js";export{n as CATEGORIES,i as FULL_INTERFACES,r as INTERFACES,t as TYPES,e as VERSION};
|
package/dist/cli/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{Dt as e,J as t,yt as n}from"../src-C7PxhgcS.js";import{a as r,i,n as a,r as o,t as s}from"../full-interfaces-
|
|
2
|
+
import{Dt as e,J as t,yt as n}from"../src-C7PxhgcS.js";import{a as r,i,n as a,r as o,t as s}from"../full-interfaces-vTMoBp4S.js";const c=()=>{let t=n([`functype ${r} - Scala-inspired FP for TypeScript`,``]);return n(Object.entries(a)).foldLeft(t)((t,[r,a])=>{let o=t.add(r.toUpperCase());return n(a).foldLeft(o)((t,n)=>e(i[n]).fold(()=>t,e=>{let r=e.interfaces.length>0?` [${e.interfaces.join(`, `)}]`:``;return t.add(` ${n}${r}`).add(` ${e.description}`)})).add(``)}).concat(n([`Use: npx functype <Type> for details`,`Use: npx functype interfaces for interface reference`])).toArray().join(`
|
|
3
3
|
`)},l=(t,r)=>{let i=r.interfaces.length>0?` [${r.interfaces.join(`, `)}]`:``,a=n([`create`,`transform`,`extract`,`check`,`other`]),o=n([`${t}<T>${i}`,``,r.description,``]);return a.foldLeft(o)((t,i)=>e(r.methods[i]).filter(e=>e.length>0).fold(()=>t,e=>{let r=t.add(i.toUpperCase());return n(e).foldLeft(r)((e,t)=>e.add(` ${t}`)).add(``)})).toArray().join(`
|
|
4
4
|
`).trimEnd()},u=()=>{let e=n([`INTERFACES`,``]);return n(Object.entries(o)).foldLeft(e)((e,[t,r])=>{let i=r.extends?` extends ${r.extends}`:``,a=e.add(`${t}<A>${i}`).add(` ${r.description}`);return n(r.methods).foldLeft(a)((e,t)=>e.add(` ${t}`)).add(``)}).toArray().join(`
|
|
5
5
|
`).trimEnd()},d=e=>JSON.stringify(e,null,2),f=()=>({version:r,categories:a,types:i}),p=t=>e(i[t]).map(e=>({name:t,data:e})).or(n(Object.entries(i)).find(([e])=>e.toLowerCase()===t.toLowerCase()).map(([e,t])=>({name:e,data:t}))).orUndefined(),m=()=>Object.keys(i),h=()=>o,g=e=>{let t=n(e.slice(2));return{flags:{json:t.contains(`--json`),full:t.contains(`--full`),help:t.exists(e=>e===`--help`||e===`-h`)},args:t.filter(e=>!e.startsWith(`--`)&&e!==`-h`)}},_=t=>e(s[t]).or(n(Object.entries(s)).find(([e])=>e.toLowerCase()===t.toLowerCase()).map(([,e])=>e)),v=()=>{let e=n([`FULL INTERFACE DEFINITIONS`,`=`.repeat(60),``]);return n(Object.entries(s)).foldLeft(e)((e,[t,r])=>e.concat(n([`// ${t}`,r,``,`-`.repeat(60),``]))).toArray().join(`
|
package/dist/do/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as EmptyListError, c as LeftError, d as isDoCapable, f as unwrap, i as DoGenerator, l as LeftErrorType, n as Do, o as FailureError, or as DoResult, r as DoAsync, s as FailureErrorType, sr as Doable, t as $, u as NoneError } from "../index-
|
|
1
|
+
import { a as EmptyListError, c as LeftError, d as isDoCapable, f as unwrap, i as DoGenerator, l as LeftErrorType, n as Do, o as FailureError, or as DoResult, r as DoAsync, s as FailureErrorType, sr as Doable, t as $, u as NoneError } from "../index-CPGqLMJY.js";
|
|
2
2
|
export { $, Do, DoAsync, DoGenerator, DoResult, Doable, EmptyListError, FailureError, FailureErrorType, LeftError, LeftErrorType, NoneError, isDoCapable, unwrap };
|
package/dist/either/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { C as isRight, S as isLeft, T as tryCatchAsync, _ as Right, b as TypeCheckLeft, g as LeftOf, h as Left, m as EitherBase, p as Either, v as RightOf, w as tryCatch, x as TypeCheckRight, y as TestEither } from "../index-
|
|
1
|
+
import { C as isRight, S as isLeft, T as tryCatchAsync, _ as Right, b as TypeCheckLeft, g as LeftOf, h as Left, m as EitherBase, p as Either, v as RightOf, w as tryCatch, x as TypeCheckRight, y as TestEither } from "../index-CPGqLMJY.js";
|
|
2
2
|
export { Either, EitherBase, Left, LeftOf, Right, RightOf, TestEither, TypeCheckLeft, TypeCheckRight, isLeft, isRight, tryCatch, tryCatchAsync };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e=`0.57.
|
|
1
|
+
const e=`0.57.3`,t={Option:{description:`Safe nullable handling - Some<T> or None`,interfaces:[`Functor`,`Monad`,`Foldable`,`Extractable`,`Matchable`,`Serializable`,`Traversable`],methods:{create:[`Option(v)`,`Option.none()`,`Some(v)`,`None()`],transform:[`.map(f)`,`.flatMap(f)`,`.filter(p)`,`.ap(ff)`],extract:[`.fold(n, s)`,`.foldAsync(n, s)`,`.orElse(d)`,`.orThrow()`,`.orNull()`,`.match({Some, None})`],check:[`.isSome`,`.isNone`,`.isDefined`,`.isEmpty`]}},Either:{description:`Error handling with Left (error) or Right (success)`,interfaces:[`Functor`,`Monad`,`Foldable`,`Traversable`,`PromiseLike`],methods:{create:[`Right(v)`,`Left(e)`,`Either.right(v)`,`Either.left(e)`,`Either.void()`],transform:[`.map(f)`,`.flatMap(f)`,`.mapLeft(f)`,`.swap()`],extract:[`.fold(l, r)`,`.foldAsync(l, r)`,`.orElse(d)`,`.orThrow()`,`.match({Left, Right})`],check:[`.isRight`,`.isLeft`]}},Try:{description:`Wrap operations that may throw - Success<T> or Failure`,interfaces:[`Functor`,`Monad`,`Foldable`,`Extractable`,`Matchable`,`Serializable`,`Traversable`],methods:{create:[`Try(() => expr)`,`Try.success(v)`,`Try.failure(e)`,`Try.fromPromise(p)`],transform:[`.map(f)`,`.flatMap(f)`,`.recover(f)`,`.recoverWith(f)`],extract:[`.fold(f, s)`,`.foldAsync(f, s)`,`.orElse(d)`,`.orThrow()`,`.toOption()`,`.toEither()`],check:[`.isSuccess`,`.isFailure`]}},List:{description:`Immutable array with functional operations`,interfaces:[`Functor`,`Monad`,`Foldable`,`Collection`,`Serializable`,`Traversable`],methods:{create:[`List([...])`,`List.of(...)`,`List.empty()`],transform:[`.map(f)`,`.flatMap(f)`,`.filter(p)`,`.take(n)`,`.takeWhile(p)`,`.takeRight(n)`,`.drop(n)`,`.dropWhile(p)`,`.concat(list)`,`.reverse()`,`.distinct()`,`.sorted()`,`.sortBy(f)`,`.zip(list)`,`.zipWithIndex()`,`.prepend(v)`,`.slice(s, e)`],extract:[`.fold(z, f)`,`.reduce(f)`,`.head`,`.headOption`,`.tail`,`.last`,`.lastOption`,`.init`,`.indexOf(v)`,`.toArray()`],check:[`.isEmpty`,`.nonEmpty`,`.size`,`.contains(v)`],other:[`.groupBy(f)`,`.partition(p)`,`.span(p)`]}},Set:{description:`Immutable set of unique values`,interfaces:[`Functor`,`Foldable`,`Collection`,`Serializable`,`Traversable`],methods:{create:[`Set([...])`,`Set.of(...)`,`Set.empty()`],transform:[`.map(f)`,`.filter(p)`,`.union(s)`,`.intersection(s)`,`.difference(s)`,`.add(v)`],extract:[`.fold(z, f)`,`.toArray()`],check:[`.has(v)`,`.isEmpty`,`.size`]}},Obj:{description:`Immutable object wrapper with fluent operations`,interfaces:[`KVTraversable`,`Foldable`,`Matchable`,`Extractable`,`Serializable`,`Reshapeable`,`Doable`],methods:{create:[`Obj({...})`,`Obj.of({...})`,`Obj.empty()`],transform:[`.set(k, v)`,`.assign(partial)`,`.merge(obj)`,`.when(cond, partial)`,`.omit(...keys)`,`.pick(...keys)`,`.map(f)`,`.flatMap(f)`],extract:[`.get(k)`,`.value()`,`.keys()`,`.values()`,`.entries()`,`.fold(n, s)`,`.match({Obj})`],check:[`.has(k)`,`.isEmpty`,`.size`]}},Map:{description:`Immutable key-value store`,interfaces:[`KVTraversable`,`Collection`,`Serializable`],methods:{create:[`Map([[k, v], ...])`,`Map.of([k, v], ...)`,`Map.empty()`],transform:[`.set(k, v)`,`.delete(k)`,`.map(f)`,`.filter(p)`,`.add(k, v)`],extract:[`.get(k)`,`.keys()`,`.values()`,`.entries()`,`.fold(z, f)`],check:[`.has(k)`,`.isEmpty`,`.size`]}},Lazy:{description:`Deferred computation with memoization`,interfaces:[`Functor`,`Monad`,`Foldable`,`Extractable`,`Serializable`,`Traversable`],methods:{create:[`Lazy(() => expr)`],transform:[`.map(f)`,`.flatMap(f)`],extract:[`.fold(n, s)`,`.orElse(d)`,`.orThrow()`,`.get()`],check:[`.isEvaluated`]}},LazyList:{description:`Lazy sequences for large/infinite data`,interfaces:[`Functor`,`Monad`,`Iterable`],methods:{create:[`LazyList.from(iter)`,`LazyList.range(start, end)`,`LazyList.infinite(f)`],transform:[`.map(f)`,`.filter(p)`,`.take(n)`,`.takeRight(n)`,`.drop(n)`,`.takeWhile(p)`,`.dropWhile(p)`,`.concat(ll)`,`.reverse()`,`.distinct()`,`.zip(ll)`,`.zipWithIndex()`],extract:[`.head`,`.headOption`,`.tail`,`.last`,`.lastOption`,`.init`,`.toArray()`],check:[`.isEmpty`]}},Task:{description:`Async operations with cancellation and progress tracking. Returns TaskOutcome<T> (Ok/Err) which implements Functor, AsyncMonad, Foldable, Extractable, Serializable`,interfaces:[],methods:{create:[`Task(params).Async(fn, errFn)`,`Task(params).Sync(fn, errFn)`,`Task.ok(value)`,`Task.err(error)`,`Task.fromEither(either)`,`Task.fromTry(try)`,`Task.fromPromise(fn)`,`Task.fromNodeCallback(fn)`],transform:[`.map(f)`,`.flatMap(f)`,`.mapError(f)`,`.recover(v)`,`.recoverWith(f)`],extract:[`.fold(onErr, onOk)`,`.match({Ok, Err})`,`.orElse(v)`,`.orThrow()`,`.toEither()`,`.toOption()`],other:[`Task.cancellable(fn)`,`Task.withProgress(fn, onProgress)`,`Task.race(tasks, timeout?)`,`Task.getErrorChain(error)`,`Task.formatErrorChain(error)`]}},IO:{description:`Lazy effect type with typed errors and dependency injection`,interfaces:[`Functor`,`Monad`,`Foldable`,`Matchable`],methods:{create:[`IO(() => v)`,`IO.succeed(v)`,`IO.fail(e)`,`IO.sync(f)`,`IO.async(f)`,`IO.tryPromise({try, catch})`,`IO.fromEither(e)`,`IO.fromOption(o)`,`IO.fromTry(t)`],transform:[`.map(f)`,`.flatMap(f)`,`.tap(f)`,`.mapError(f)`,`.recover(v)`,`.recoverWith(f)`],extract:[`.run()`,`.runOrThrow()`,`.runSync()`,`.runSyncOrThrow()`,`.runExit()`,`.runOption()`,`.runTry()`,`.fold(onErr, onOk)`,`.match({failure, success})`],check:[],other:[`.catchTag(tag, f)`,`.catchAll(f)`,`.retry(n)`,`.retryWithDelay(n, ms)`,`.timeout(ms)`,`.delay(ms)`,`.zip(io)`,`.pipe(f)`,`IO.all([...])`,`IO.race([...])`,`IO.bracket(acquire, use, release)`,`IO.gen(function*() {...})`,`IO.Do.bind().map()`,`IO.service(Tag)`,`.provideService(Tag, impl)`,`.provideLayer(layer)`]}},Cond:{description:`Conditional expression builder - replace if-else chains`,interfaces:[],methods:{create:[`Cond<T>()`],other:[`.case(pred, result)`,`.otherwise(result)`,`.eval()`]}},Match:{description:`Pattern matching - replace switch statements`,interfaces:[],methods:{create:[`Match(value)`],other:[`.case(pattern, result)`,`.when(pred, result)`,`.default(result)`,`.done()`]}},Brand:{description:`Nominal typing without runtime overhead`,interfaces:[],methods:{create:[`Brand<K, T>(value)`],extract:[`.unwrap()`,`.toString()`]}},ValidatedBrand:{description:`Branded types with runtime validation`,interfaces:[],methods:{create:[`ValidatedBrand(validator)`,`.of(v)`,`.from(v)`,`.unsafeOf(v)`],check:[`.is(v)`],other:[`.refine(validator)`]}},Tuple:{description:`Fixed-size typed array`,interfaces:[`Typeable`,`Valuable`,`Iterable`],methods:{create:[`Tuple([a, b, ...])`,`Tuple.of(a, b, ...)`],extract:[`.first`,`.second`,`.toArray()`],transform:[`.map(f)`]}},Stack:{description:`Immutable LIFO stack`,interfaces:[`Foldable`,`Collection`,`Serializable`,`Traversable`],methods:{create:[`Stack()`,`Stack.of(...)`],transform:[`.push(v)`,`.pop()`],extract:[`.peek()`,`.toArray()`],check:[`.isEmpty`,`.size`]}},Http:{description:`HTTP fetch wrapper returning IO<never, HttpError, HttpResponse<unknown>> by default. Provide a validate function to get typed responses (BYOV: bring your own validator). Works with Zod, TypeBox, Valibot, or manual validators.`,interfaces:[],methods:{create:[`Http.get(url, { validate }?)`,`Http.post(url, { body, validate }?)`,`Http.put(url, { body, validate }?)`,`Http.patch(url, { body, validate }?)`,`Http.delete(url, { validate }?)`,`Http.request({ url, validate })`,`Http.client(config)`],transform:[`.map(f)`,`.flatMap(f)`,`.retry(n)`,`.retryWithDelay(n, ms)`,`.timeout(ms)`],extract:[`.run()`,`.runOrThrow()`,`.runOption()`,`.runTry()`],check:[],other:[`.catchTag(tag, handler)`,`.catchAll(handler)`,`.mapError(f)`,`.recover(fallback)`]}},HttpError:{description:`Three-variant ADT for HTTP failures: NetworkError | HttpStatusError | DecodeError`,interfaces:[],methods:{create:[`HttpError.networkError(url, method, cause)`,`HttpError.httpStatusError(url, method, status, statusText, body)`,`HttpError.decodeError(url, method, body, cause)`],check:[`HttpError.isNetworkError(e)`,`HttpError.isHttpStatusError(e)`,`HttpError.isDecodeError(e)`],other:[`HttpError.match(error, { NetworkError, HttpStatusError, DecodeError })`]}}},n={Functor:{description:`Transform contained values`,methods:[`.map<B>(f: A => B): Functor<B>`]},Applicative:{extends:`Functor`,description:`Apply wrapped functions`,methods:[`.ap<B>(ff: Applicative<A => B>): Applicative<B>`]},Monad:{extends:`Applicative`,description:`Chain operations returning wrapped values`,methods:[`.flatMap<B>(f: A => Monad<B>): Monad<B>`]},Foldable:{description:`Extract via pattern matching`,methods:[`.fold<B>(empty: () => B, f: A => B): B`,`.foldLeft<B>(z: B, op: (B, A) => B): B`,`.foldRight<B>(z: B, op: (A, B) => B): B`]},Extractable:{description:`Get contained value with fallback`,methods:[`.orElse(d: T): T`,`.orThrow(e?: Error): T`,`.orNull(): T | null`,`.orUndefined(): T | undefined`]},Matchable:{description:`Pattern match on type variants`,methods:[`.match<R>(patterns: Record<Tag, Handler>): R`]},Traversable:{description:`Iterate and check contents`,methods:[`.size: number`,`.isEmpty: boolean`,`.contains(v: A): boolean`,`.reduce<B>(f, init): B`]},Collection:{description:`Collection operations`,methods:[`.toArray(): A[]`,`.forEach(f: A => void): void`]},Serializable:{description:`Convert to string formats`,methods:[`.serialize().toJSON(): string`,`.serialize().toYAML(): string`]}},r={Core:[`Option`,`Either`,`Try`,`Obj`],Collection:[`List`,`Set`,`Map`,`LazyList`,`Tuple`,`Stack`],Effect:[`IO`,`Task`,`Http`,`HttpError`],Utility:[`Lazy`,`Cond`,`Match`,`Brand`,`ValidatedBrand`]},i={Option:`export interface Option<T extends Type> extends Functype<T, "Some" | "None">, Promisable<T>, Doable<T>, Reshapeable<T> {
|
|
2
2
|
/** The contained value (undefined for None) */
|
|
3
3
|
readonly value: T | undefined
|
|
4
4
|
/** Whether this Option contains no value */
|
|
@@ -163,17 +163,20 @@ const RightConstructor = <L extends Type, R extends Type>(value: R): RightOf<L,
|
|
|
163
163
|
orNull: () => value,
|
|
164
164
|
orUndefined: () => value,
|
|
165
165
|
map: <U extends Type>(f: (value: R) => U): Either<L, U> => Right(f(value)),
|
|
166
|
-
ap: <U extends Type>(ff: Either<
|
|
167
|
-
ff._tag === "Right" ? Right((ff.value as (value: R) => U)(value)) : Left(ff.value as
|
|
166
|
+
ap: <L2 extends Type, U extends Type>(ff: Either<L2, (value: R) => U>): Either<L | L2, U> =>
|
|
167
|
+
ff._tag === "Right" ? Right<L | L2, U>((ff.value as (value: R) => U)(value)) : Left<L | L2, U>(ff.value as L2),
|
|
168
168
|
mapAsync: <U extends Type>(f: (value: R) => Promise<U>): Promise<Either<L, U>> =>
|
|
169
169
|
f(value)
|
|
170
170
|
.then((result) => Right<L, U>(result))
|
|
171
171
|
.catch((error: unknown) => Promise.resolve(Left<L, U>(error as L))) as Promise<Either<L, U>>,
|
|
172
172
|
merge: <L1 extends Type, R1 extends Type>(other: Either<L1, R1>): Either<L | L1, [R, R1]> =>
|
|
173
173
|
other.isLeft() ? Left<L | L1, [R, R1]>(other.value as L1) : Right<L | L1, [R, R1]>([value, other.value as R1]),
|
|
174
|
-
flatMap: <U extends Type>(f: (value: R) => Either<
|
|
175
|
-
|
|
176
|
-
|
|
174
|
+
flatMap: <L2 extends Type, U extends Type>(f: (value: R) => Either<L2, U>): Either<L | L2, U> =>
|
|
175
|
+
f(value) as Either<L | L2, U>,
|
|
176
|
+
flatMapAsync: <L2 extends Type, U extends Type>(
|
|
177
|
+
f: (value: R) => Promise<Either<L2, U>>,
|
|
178
|
+
): Promise<Either<L | L2, U>> =>
|
|
179
|
+
f(value).catch((error: unknown) => Left<L | L2, U>(error as L | L2)) as Promise<Either<L | L2, U>>,
|
|
177
180
|
toOption: () => Some<R>(value),
|
|
178
181
|
toList: () => List<R>([value]),
|
|
179
182
|
toEither: <E extends Type>(_leftValue: E) => Right<E, R>(value),
|
|
@@ -190,9 +193,9 @@ const RightConstructor = <L extends Type, R extends Type>(value: R): RightOf<L,
|
|
|
190
193
|
*yield() {
|
|
191
194
|
yield value
|
|
192
195
|
},
|
|
193
|
-
traverse: <U extends Type>(f: (value: R) => Either<
|
|
196
|
+
traverse: <L2 extends Type, U extends Type>(f: (value: R) => Either<L2, U>): Either<L | L2, U[]> => {
|
|
194
197
|
const result = f(value)
|
|
195
|
-
return result.isLeft() ? Left(result.value as
|
|
198
|
+
return result.isLeft() ? Left<L | L2, U[]>(result.value as L2) : Right<L | L2, U[]>([result.value as U])
|
|
196
199
|
},
|
|
197
200
|
*lazyMap<U extends Type>(f: (value: R) => U) {
|
|
198
201
|
yield Right<L, U>(f(value))
|
|
@@ -251,17 +254,17 @@ export interface EitherBase<L extends Type, R extends Type>
|
|
|
251
254
|
orNull: () => R | null
|
|
252
255
|
orUndefined: () => R | undefined
|
|
253
256
|
readonly map: <U extends Type>(f: (value: R) => U) => Either<L, U>
|
|
254
|
-
ap: <U extends Type>(ff: Either<
|
|
257
|
+
ap: <L2 extends Type, U extends Type>(ff: Either<L2, (value: R) => U>) => Either<L | L2, U>
|
|
255
258
|
merge: <L1 extends Type, R1 extends Type>(other: Either<L1, R1>) => Either<L | L1, [R, R1]>
|
|
256
259
|
mapAsync: <U extends Type>(f: (value: R) => Promise<U>) => Promise<Either<L, U>>
|
|
257
|
-
flatMap: <U extends Type>(f: (value: R) => Either<
|
|
258
|
-
flatMapAsync: <U extends Type>(f: (value: R) => Promise<Either<
|
|
260
|
+
flatMap: <L2 extends Type, U extends Type>(f: (value: R) => Either<L2, U>) => Either<L | L2, U>
|
|
261
|
+
flatMapAsync: <L2 extends Type, U extends Type>(f: (value: R) => Promise<Either<L2, U>>) => Promise<Either<L | L2, U>>
|
|
259
262
|
toOption: () => Option<R>
|
|
260
263
|
toList: () => List<R>
|
|
261
264
|
toString: () => string
|
|
262
265
|
[Symbol.iterator]: () => Iterator<R>
|
|
263
266
|
yield: () => Generator<R, void, unknown>
|
|
264
|
-
traverse: <U extends Type>(f: (value: R) => Either<
|
|
267
|
+
traverse: <L2 extends Type, U extends Type>(f: (value: R) => Either<L2, U>) => Either<L | L2, U[]>
|
|
265
268
|
lazyMap: <U extends Type>(f: (value: R) => U) => Generator<Either<L, U>, void, unknown>
|
|
266
269
|
tap: (f: (value: R) => void) => Either<L, R>
|
|
267
270
|
tapLeft: (f: (value: L) => void) => Either<L, R>
|
|
@@ -4715,17 +4715,17 @@ interface EitherBase<L extends Type, R extends Type> extends FunctypeBase<R, "Le
|
|
|
4715
4715
|
orNull: () => R | null;
|
|
4716
4716
|
orUndefined: () => R | undefined;
|
|
4717
4717
|
readonly map: <U extends Type>(f: (value: R) => U) => Either<L, U>;
|
|
4718
|
-
ap: <U extends Type>(ff: Either<
|
|
4718
|
+
ap: <L2 extends Type, U extends Type>(ff: Either<L2, (value: R) => U>) => Either<L | L2, U>;
|
|
4719
4719
|
merge: <L1 extends Type, R1 extends Type>(other: Either<L1, R1>) => Either<L | L1, [R, R1]>;
|
|
4720
4720
|
mapAsync: <U extends Type>(f: (value: R) => Promise<U>) => Promise<Either<L, U>>;
|
|
4721
|
-
flatMap: <U extends Type>(f: (value: R) => Either<
|
|
4722
|
-
flatMapAsync: <U extends Type>(f: (value: R) => Promise<Either<
|
|
4721
|
+
flatMap: <L2 extends Type, U extends Type>(f: (value: R) => Either<L2, U>) => Either<L | L2, U>;
|
|
4722
|
+
flatMapAsync: <L2 extends Type, U extends Type>(f: (value: R) => Promise<Either<L2, U>>) => Promise<Either<L | L2, U>>;
|
|
4723
4723
|
toOption: () => Option<R>;
|
|
4724
4724
|
toList: () => List<R>;
|
|
4725
4725
|
toString: () => string;
|
|
4726
4726
|
[Symbol.iterator]: () => Iterator<R>;
|
|
4727
4727
|
yield: () => Generator<R, void, unknown>;
|
|
4728
|
-
traverse: <U extends Type>(f: (value: R) => Either<
|
|
4728
|
+
traverse: <L2 extends Type, U extends Type>(f: (value: R) => Either<L2, U>) => Either<L | L2, U[]>;
|
|
4729
4729
|
lazyMap: <U extends Type>(f: (value: R) => U) => Generator<Either<L, U>, void, unknown>;
|
|
4730
4730
|
tap: (f: (value: R) => void) => Either<L, R>;
|
|
4731
4731
|
tapLeft: (f: (value: L) => void) => Either<L, R>;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { a as ExtractBrand, c as hasBrand, i as BrandedString, l as unwrapBrand, n as BrandedBoolean, o as Unwrap, r as BrandedNumber, s as createBrander, t as Brand } from "./Brand-BJIRbUKB.js";
|
|
2
|
-
import { $ as KVTraversable, $n as Functor, $t as ErrorChainElement, A as List, An as CompanionMethods, At as TimeoutError, B as createCustomSerializer, Bn as NonNegativeNumber, Bt as HasService, C as isRight, Cn as NAME, Ct as TestClock, D as FunctypeBase, Dn as Match, Dt as InterruptedError, E as Functype, En as Base, Et as IO, F as Stack, Fn as BoundedString, Ft as LayerOutput, G as fromYAML, Gn as UrlString, Gt as Validation, H as createSerializer, Hn as PositiveInteger, Ht as TagService, I as Valuable, In as EmailAddress, It as Exit, J as Matchable, Jn as Try, Jt as ErrorCode, K as Ref, Kn as ValidatedBrand, Kt as ValidationRule, L as ValuableParams, Ln as ISO8601Date, Lt as ExitTag, M as Option, Mn as isCompanion, Mt as Layer, N as OptionConstructor, Nn as Companion, Nt as LayerError, O as FunctypeCollection, On as UntypedMatch, Ot as RIO, P as Some, Pn as BoundedNumber, Pt as LayerInput, Q as Map, Qn as AsyncMonad, Qt as TypedErrorContext, R as Set, Rn as IntegerNumber, Rt as Context, S as isLeft, Sn as isTaggedThrowable, St as HttpClientConfig, T as tryCatchAsync, Tn as ThrowableType, Tt as TestContext, U as fromBinary, Un as PositiveNumber, Ut as FieldValidation, V as createSerializationCompanion, Vn as PatternString, Vt as Tag, W as fromJSON, Wn as UUID, Wt as FormValidation, X as ESMap, Xn as Promisable, Xt as ErrorStatus, Y as MatchableUtils, Yn as TypeNames, Yt as ErrorMessage, Z as ESMapType, Zn as Applicative, Zt as TypedError, _ as Right, _n as TaskOutcome, _t as HttpError, a as EmptyListError, an as formatStackTrace, ar as isExtractable, at as Kind, b as TypeCheckLeft, bn as TaskSuccess, bt as NetworkError, c as LeftError, cn as CancellationToken, cr as ParseError, ct as TryKind, d as isDoCapable, dn as Ok, dt as Http, en as ErrorFormatterOptions, er as Monad, et as Traversable, f as unwrap, fn as Sync, ft as HttpMethodOptions, g as LeftOf, gn as TaskMetadata, gt as DecodeError, h as Left, hn as TaskFailure, ht as ParseMode, i as DoGenerator, in as formatError, ir as Extractable, it as HKT, j as None, jn as InstanceType, jt as UIO, k as Collection, kn as Cond, kt as Task, l as LeftErrorType, ln as CancellationTokenSource, lt as UniversalContainer, m as EitherBase, mn as Task$1, mt as HttpResponse, n as Do, nn as TaskErrorInfo, nr as ContainerOps, nt as Identity, o as FailureError, on as safeStringify, or as DoResult, ot as ListKind, p as Either, pn as TaggedThrowable, pt as HttpRequestOptions, q as Obj, qn as ValidatedBrandCompanion, qt as Validator, r as DoAsync, rn as createErrorSerializer, rr as LazyList, rt as EitherKind, s as FailureErrorType, sn as Async, sr as Doable, st as OptionKind, t as $, tn as ErrorWithTaskInfo, tr as CollectionOps, tt as Lazy, u as NoneError, un as Err, ut as FoldableUtils, v as RightOf, vn as TaskParams, vt as HttpMethod, w as tryCatch, wn as Throwable, wt as TestClockTag, x as TypeCheckRight, xn as createCancellationTokenSource, xt as HttpClient, y as TestEither, yn as TaskResult, yt as HttpStatusError, z as SerializationResult, zn as NonEmptyString, zt as ContextServices } from "./index-
|
|
2
|
+
import { $ as KVTraversable, $n as Functor, $t as ErrorChainElement, A as List, An as CompanionMethods, At as TimeoutError, B as createCustomSerializer, Bn as NonNegativeNumber, Bt as HasService, C as isRight, Cn as NAME, Ct as TestClock, D as FunctypeBase, Dn as Match, Dt as InterruptedError, E as Functype, En as Base, Et as IO, F as Stack, Fn as BoundedString, Ft as LayerOutput, G as fromYAML, Gn as UrlString, Gt as Validation, H as createSerializer, Hn as PositiveInteger, Ht as TagService, I as Valuable, In as EmailAddress, It as Exit, J as Matchable, Jn as Try, Jt as ErrorCode, K as Ref, Kn as ValidatedBrand, Kt as ValidationRule, L as ValuableParams, Ln as ISO8601Date, Lt as ExitTag, M as Option, Mn as isCompanion, Mt as Layer, N as OptionConstructor, Nn as Companion, Nt as LayerError, O as FunctypeCollection, On as UntypedMatch, Ot as RIO, P as Some, Pn as BoundedNumber, Pt as LayerInput, Q as Map, Qn as AsyncMonad, Qt as TypedErrorContext, R as Set, Rn as IntegerNumber, Rt as Context, S as isLeft, Sn as isTaggedThrowable, St as HttpClientConfig, T as tryCatchAsync, Tn as ThrowableType, Tt as TestContext, U as fromBinary, Un as PositiveNumber, Ut as FieldValidation, V as createSerializationCompanion, Vn as PatternString, Vt as Tag, W as fromJSON, Wn as UUID, Wt as FormValidation, X as ESMap, Xn as Promisable, Xt as ErrorStatus, Y as MatchableUtils, Yn as TypeNames, Yt as ErrorMessage, Z as ESMapType, Zn as Applicative, Zt as TypedError, _ as Right, _n as TaskOutcome, _t as HttpError, a as EmptyListError, an as formatStackTrace, ar as isExtractable, at as Kind, b as TypeCheckLeft, bn as TaskSuccess, bt as NetworkError, c as LeftError, cn as CancellationToken, cr as ParseError, ct as TryKind, d as isDoCapable, dn as Ok, dt as Http, en as ErrorFormatterOptions, er as Monad, et as Traversable, f as unwrap, fn as Sync, ft as HttpMethodOptions, g as LeftOf, gn as TaskMetadata, gt as DecodeError, h as Left, hn as TaskFailure, ht as ParseMode, i as DoGenerator, in as formatError, ir as Extractable, it as HKT, j as None, jn as InstanceType, jt as UIO, k as Collection, kn as Cond, kt as Task, l as LeftErrorType, ln as CancellationTokenSource, lt as UniversalContainer, m as EitherBase, mn as Task$1, mt as HttpResponse, n as Do, nn as TaskErrorInfo, nr as ContainerOps, nt as Identity, o as FailureError, on as safeStringify, or as DoResult, ot as ListKind, p as Either, pn as TaggedThrowable, pt as HttpRequestOptions, q as Obj, qn as ValidatedBrandCompanion, qt as Validator, r as DoAsync, rn as createErrorSerializer, rr as LazyList, rt as EitherKind, s as FailureErrorType, sn as Async, sr as Doable, st as OptionKind, t as $, tn as ErrorWithTaskInfo, tr as CollectionOps, tt as Lazy, u as NoneError, un as Err, ut as FoldableUtils, v as RightOf, vn as TaskParams, vt as HttpMethod, w as tryCatch, wn as Throwable, wt as TestClockTag, x as TypeCheckRight, xn as createCancellationTokenSource, xt as HttpClient, y as TestEither, yn as TaskResult, yt as HttpStatusError, z as SerializationResult, zn as NonEmptyString, zt as ContextServices } from "./index-CPGqLMJY.js";
|
|
3
3
|
import { a as isTypeable, c as Pipe, i as TypeableParams, l as Foldable, n as ExtractTag, o as Serializable, r as Typeable, s as SerializationMethods, t as Tuple, u as Type } from "./Tuple-DwyoW0ZP.js";
|
|
4
4
|
export { $, Applicative, Async, AsyncMonad, Base, BoundedNumber, BoundedString, Brand, BrandedBoolean, BrandedBoolean as BrandedBooleanType, BrandedNumber, BrandedNumber as BrandedNumberType, BrandedString, BrandedString as BrandedStringType, CancellationToken, CancellationTokenSource, Collection, CollectionOps, Companion, CompanionMethods, Cond, ContainerOps, Context, Context as ContextType, ContextServices, DecodeError, Do, DoAsync, DoGenerator, DoResult, Doable, ESMap, ESMapType, Either, EitherBase, EitherKind, EmailAddress, EmptyListError, Err, ErrorChainElement, ErrorCode, ErrorFormatterOptions, ErrorMessage, ErrorStatus, ErrorWithTaskInfo, Exit, Exit as ExitType, ExitTag, ExtractBrand, ExtractTag, Extractable, FailureError, FailureErrorType, FieldValidation, Foldable, FoldableUtils, FormValidation, Functor, Functype, FunctypeBase, FunctypeCollection, HKT, HasService, Http, HttpClient, HttpClientConfig, HttpError, HttpError as HttpErrors, HttpMethod, HttpMethodOptions, HttpRequestOptions, HttpResponse, HttpStatusError, IO, IO as IOType, Task as IOTask, ISO8601Date, Identity, InstanceType, IntegerNumber, InterruptedError, KVTraversable, Kind, Layer, Layer as LayerType, LayerError, LayerInput, LayerOutput, Lazy, Lazy as LazyType, LazyList, Left, LeftError, LeftErrorType, LeftOf, List, ListKind, Map, Match, Matchable, MatchableUtils, Monad, NAME, NetworkError, NonEmptyString, NonNegativeNumber, None, NoneError, Obj, Ok, Option, OptionConstructor, OptionKind, ParseError, ParseMode, PatternString, Pipe, PositiveInteger, PositiveNumber, Promisable, RIO, Ref, Ref as RefType, Right, RightOf, Serializable, SerializationMethods, SerializationResult, Set, Some, Stack, Sync, Tag, Tag as TagType, TagService, TaggedThrowable, Task$1 as Task, TaskErrorInfo, TaskFailure, TaskMetadata, TaskOutcome, TaskParams, TaskResult, TaskSuccess, TestClock, TestClock as TestClockType, TestClockTag, TestContext, TestContext as TestContextType, TestEither, Throwable, ThrowableType, TimeoutError, Traversable, Try, TryKind, Tuple, Type, TypeCheckLeft, TypeCheckRight, TypeNames, Typeable, TypeableParams, TypedError, TypedErrorContext, UIO, UUID, UniversalContainer, UntypedMatch, Unwrap, UrlString, ValidatedBrand, ValidatedBrand as ValidatedBrandType, ValidatedBrandCompanion, Validation, ValidationRule, Validator, Valuable, ValuableParams, createBrander, createCancellationTokenSource, createCustomSerializer, createErrorSerializer, createSerializationCompanion, createSerializer, formatError, formatStackTrace, fromBinary, fromJSON, fromYAML, hasBrand, isCompanion, isDoCapable, isExtractable, isLeft, isRight, isTaggedThrowable, isTypeable, safeStringify, tryCatch, tryCatchAsync, unwrap, unwrapBrand };
|
package/dist/list/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as List } from "../index-
|
|
1
|
+
import { A as List } from "../index-CPGqLMJY.js";
|
|
2
2
|
export { List };
|
package/dist/map/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Q as Map } from "../index-
|
|
1
|
+
import { Q as Map } from "../index-CPGqLMJY.js";
|
|
2
2
|
export { Map };
|
package/dist/option/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { M as Option, N as OptionConstructor, P as Some, j as None } from "../index-
|
|
1
|
+
import { M as Option, N as OptionConstructor, P as Some, j as None } from "../index-CPGqLMJY.js";
|
|
2
2
|
export { None, Option, OptionConstructor, Some };
|
package/dist/set/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { R as Set } from "../index-
|
|
1
|
+
import { R as Set } from "../index-CPGqLMJY.js";
|
|
2
2
|
export { Set };
|
package/dist/try/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Jn as Try, Yn as TypeNames } from "../index-
|
|
1
|
+
import { Jn as Try, Yn as TypeNames } from "../index-CPGqLMJY.js";
|
|
2
2
|
export { Try, TypeNames };
|
package/package.json
CHANGED