@pvorona/failable 0.6.4 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -11,6 +11,7 @@ A `Failable<T, E>` is either `Success<T>` or `Failure<E>`.
11
11
  - `success()` / `success(data)` / `failure()` / `failure(error)` create results
12
12
  - `failable(...)` captures thrown or rejected boundaries
13
13
  - `run(...)` composes multiple `Failable` steps
14
+ - `all(...)`, `allSettled(...)`, and `race(...)` combine multiple sources
14
15
 
15
16
  ## Install
16
17
 
@@ -70,6 +71,7 @@ if (result.isFailure) {
70
71
  | Throw the stored failure unchanged | `getOrThrow()` / `throwIfError(result)` |
71
72
  | Capture a throwing or rejecting boundary | `failable(...)` |
72
73
  | Compose multiple `Failable` steps | `run(...)` |
74
+ | Combine multiple `Failable` sources | `all(...)`, `allSettled(...)`, `race(...)` |
73
75
  | Cross a structured-clone boundary | `toFailableLike(...)` + `failable(...)` |
74
76
  | Validate `unknown` input | `isFailable(...)`, `isSuccess(...)`, `isFailure(...)`, `isFailableLike(...)` |
75
77
 
@@ -223,22 +225,30 @@ import { run, success, type Failable } from '@pvorona/failable';
223
225
  function loadConfig(
224
226
  env: Record<string, string | undefined>,
225
227
  ): Failable<{ host: string; port: number }, ConfigError> {
226
- return run(function* ({ get }) {
227
- const host = yield* get(readEnv('HOST', env));
228
- const rawPort = yield* get(readEnv('PORT', env));
229
- const port = yield* get(parsePort(rawPort));
228
+ return run(function* () {
229
+ const host = yield* readEnv('HOST', env);
230
+ const rawPort = yield* readEnv('PORT', env);
231
+ const port = yield* parsePort(rawPort);
230
232
 
231
233
  return success({ host, port });
232
234
  });
233
235
  }
234
236
  ```
235
237
 
236
- For async flows, switch to `run(async function* ...)`. `get(...)` also accepts
237
- promises that resolve to `Success` / `Failure` unions, so helper functions can
238
- stay unannotated and still infer the full error union:
238
+ When a helper already returns a hydrated `Failable`, yield it directly with
239
+ `yield* helper()`. For promised sources in async builders, await them first and
240
+ then yield the hydrated result with `yield* await promisedHelper()`.
241
+
242
+ `run(...)` does not inject helper arguments. Import the top-level combinators
243
+ you need and use them directly inside the builder.
244
+
245
+ For async flows, switch to `run(async function* ...)`. Sync hydrated helpers
246
+ still work with direct `yield* helper()`, and promised sources compose with
247
+ `yield* await ...`:
239
248
 
240
249
  ```ts
241
250
  import {
251
+ all,
242
252
  failable,
243
253
  failure,
244
254
  run,
@@ -284,9 +294,11 @@ async function getUserProfile(userId: string) {
284
294
  async function loadUserPage(
285
295
  userId: string,
286
296
  ): Promise<Failable<{ user: User; profile: Profile }, ApiError>> {
287
- return await run(async function* ({ get }) {
288
- const user = yield* get(getUser(userId));
289
- const profile = yield* get(getUserProfile(userId));
297
+ return await run(async function* () {
298
+ const [user, profile] = yield* await all(
299
+ getUser(userId),
300
+ getUserProfile(userId)
301
+ );
290
302
 
291
303
  return success({ user, profile });
292
304
  });
@@ -294,10 +306,62 @@ async function loadUserPage(
294
306
  ```
295
307
 
296
308
  - if a yielded step fails, `run(...)` returns that original failure unchanged
297
- - in async builders, keep using `yield* get(...)`; do not write `await get(...)`
309
+ - sync hydrated `Failable` helpers can use direct `yield* helper()` in both sync
310
+ and async builders
311
+ - promised sources in async builders use `yield* await promisedHelper()`
312
+ - in async builders, use `yield* await all(...)` to run multiple sources in
313
+ parallel and get a success tuple or the first failure
314
+ - use `yield* all(...)` in sync builders when every source is already a hydrated
315
+ `Failable`
316
+ - use `yield* await allSettled(...)` to wait for all sources to resolve and get
317
+ a `Success` tuple of each `Failable` result
318
+ - use `yield* await race(...)` to take the first promised `Failable` to settle
319
+ - rejected promised sources follow normal async `await` / `try` / `finally`
320
+ semantics rather than a helper-managed rejection path
298
321
  - `run(...)` does not capture thrown values or rejected promises into `Failure`;
299
322
  wrap throwing boundaries with `failable(...)` before they enter `run(...)`
300
323
 
324
+ ## Parallel Combinators
325
+
326
+ Import `all(...)`, `allSettled(...)`, and `race(...)` from the package root when
327
+ you want to combine multiple sources outside `run(...)` or inside async
328
+ builders.
329
+
330
+ ```ts
331
+ import {
332
+ all,
333
+ allSettled,
334
+ race,
335
+ success,
336
+ type Failable,
337
+ } from '@pvorona/failable';
338
+
339
+ const syncTuple = all(success(1 as const), success('two' as const));
340
+ const mixedTuple = await all(
341
+ success(1 as const),
342
+ Promise.resolve(success('two' as const))
343
+ );
344
+
345
+ const settled = await allSettled(
346
+ Promise.resolve(success(1 as const)),
347
+ Promise.resolve<Failable<number, 'missing'>>(success(2))
348
+ );
349
+
350
+ const winner = await race(
351
+ Promise.resolve(success('fast' as const)),
352
+ Promise.resolve(success('slow' as const))
353
+ );
354
+ ```
355
+
356
+ Key semantics:
357
+
358
+ - `all(...)` returns the first failure in input order
359
+ - `allSettled(...)` preserves `Failure` values in the returned success tuple
360
+ - async `allSettled(...)` still rejects if a promise rejects; it is not
361
+ `Promise.allSettled(...)`
362
+ - `race(...)` accepts promised `Failable` sources only
363
+ - `race()` with zero sources rejects with a clear error instead of hanging
364
+
301
365
  ## Transport And Runtime Validation
302
366
 
303
367
  `Failable` values are hydrated objects with methods. Keep them inside your
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { FailableStatus, NormalizedErrors, failable, failure, isFailable, isFailableLike, isFailure, isSuccess, run, success, throwIfError, toFailableLike, } from './lib/failable.js';
1
+ export { all, allSettled, FailableStatus, NormalizedErrors, failable, failure, isFailable, isFailableLike, isFailure, isSuccess, race, run, success, throwIfError, toFailableLike, } from './lib/failable.js';
2
2
  export type { FailableNormalizeErrorOptions, Failable, FailableLike, FailableLikeFailure, FailableLikeSuccess, Failure, Success, } from './lib/failable.js';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,OAAO,EACP,UAAU,EACV,cAAc,EACd,SAAS,EACT,SAAS,EACT,GAAG,EACH,OAAO,EACP,YAAY,EACZ,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,6BAA6B,EAC7B,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,OAAO,EACP,OAAO,GACR,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,OAAO,EACP,UAAU,EACV,cAAc,EACd,SAAS,EACT,SAAS,EACT,IAAI,EACJ,GAAG,EACH,OAAO,EACP,YAAY,EACZ,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,6BAA6B,EAC7B,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,OAAO,EACP,OAAO,GACR,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -1,22 +1,22 @@
1
- import { isFunction as E, isObject as i, hasOwnPropertyValue as S, hasOwnKey as y } from "@pvorona/assert";
1
+ import { isFunction as b, isObject as s, hasOwnPropertyValue as A, hasOwnKey as O } from "@pvorona/assert";
2
2
  import { notImplemented as a } from "@pvorona/not-implemented";
3
- const F = /* @__PURE__ */ Symbol("Failable"), A = /* @__PURE__ */ Symbol("Success"), O = /* @__PURE__ */ Symbol("Failure"), o = Object.freeze({
3
+ const j = /* @__PURE__ */ Symbol("Failable"), P = /* @__PURE__ */ Symbol("Success"), R = /* @__PURE__ */ Symbol("Failure"), n = Object.freeze({
4
4
  Success: "success",
5
5
  Failure: "failure"
6
- }), k = Object.freeze({
6
+ }), U = Object.freeze({
7
7
  mode: "normalized-errors"
8
8
  });
9
- function G(r) {
10
- return i(r) && Object.keys(r).length === 2 && S(r, "status", o.Success) && y(r, "data");
9
+ function C(r) {
10
+ return s(r) && Object.keys(r).length === 2 && A(r, "status", n.Success) && O(r, "data");
11
11
  }
12
- function T(r) {
13
- return i(r) && Object.keys(r).length === 2 && S(r, "status", o.Failure) && y(r, "error");
12
+ function M(r) {
13
+ return s(r) && Object.keys(r).length === 2 && A(r, "status", n.Failure) && O(r, "error");
14
14
  }
15
- function w(r) {
16
- return T(r) || G(r);
15
+ function h(r) {
16
+ return M(r) || C(r);
17
17
  }
18
- const m = {
19
- [F]: !0,
18
+ const I = {
19
+ [j]: !0,
20
20
  isSuccess: !1,
21
21
  isFailure: !1,
22
22
  data: null,
@@ -26,10 +26,16 @@ const m = {
26
26
  getOr: a,
27
27
  getOrElse: a,
28
28
  getOrThrow: a,
29
- match: a
30
- }, p = (() => {
31
- const r = Object.create(m);
32
- return r[A] = !0, r.status = o.Success, r.isSuccess = !0, r.or = function() {
29
+ match: a,
30
+ [Symbol.iterator]: function() {
31
+ return K(this);
32
+ },
33
+ [Symbol.asyncIterator]: function() {
34
+ return H(this);
35
+ }
36
+ }, z = (() => {
37
+ const r = Object.create(I);
38
+ return r[P] = !0, r.status = n.Success, r.isSuccess = !0, r.or = function() {
33
39
  return this;
34
40
  }, r.orElse = function() {
35
41
  return this;
@@ -42,243 +48,260 @@ const m = {
42
48
  }, r.match = function(t) {
43
49
  return t(this.data);
44
50
  }, Object.freeze(r);
45
- })(), N = (() => {
46
- const r = Object.create(m);
47
- return r[O] = !0, r.status = o.Failure, r.isFailure = !0, r.or = function(t) {
48
- return f(t);
51
+ })(), B = (() => {
52
+ const r = Object.create(I);
53
+ return r[R] = !0, r.status = n.Failure, r.isFailure = !0, r.or = function(t) {
54
+ return u(t);
49
55
  }, r.orElse = function(t) {
50
- return f(t());
56
+ return u(t());
51
57
  }, r.getOr = function(t) {
52
58
  return t;
53
59
  }, r.getOrElse = function(t) {
54
60
  return t();
55
61
  }, r.getOrThrow = function() {
56
- throw this.error === void 0 ? new Error("getOrThrow() called on Failure<void> with no error value") : this.error;
57
- }, r.match = function(t, n) {
58
- return n(this.error);
62
+ throw this.error === void 0 ? new Error(
63
+ "getOrThrow() called on Failure<void> with no error value"
64
+ ) : this.error;
65
+ }, r.match = function(t, o) {
66
+ return o(this.error);
59
67
  }, Object.freeze(r);
60
68
  })();
61
- function h(r, e) {
62
- return i(r) ? r[e] === !0 : !1;
69
+ function m(r, e) {
70
+ return s(r) ? r[e] === !0 : !1;
63
71
  }
64
72
  function c(r) {
65
- return h(r, F);
73
+ return m(r, j);
66
74
  }
67
- function cr(r) {
68
- return h(r, A);
75
+ function ar(r) {
76
+ return m(r, P);
69
77
  }
70
- function sr(r) {
71
- return h(r, O);
78
+ function lr(r) {
79
+ return m(r, R);
72
80
  }
73
- function f(r) {
74
- const e = Object.create(p);
81
+ function u(r) {
82
+ const e = Object.create(z);
75
83
  return e.data = r, Object.freeze(e);
76
84
  }
77
- function d(r) {
78
- const e = Object.create(N);
85
+ function l(r) {
86
+ const e = Object.create(B);
79
87
  return e.error = r, Object.freeze(e);
80
88
  }
81
- function ar(r) {
82
- if (r.status === o.Failure) throw r.error;
83
- }
84
89
  function fr(r) {
85
- return r.status === o.Failure ? { status: o.Failure, error: r.error } : { status: o.Success, data: r.data };
90
+ if (r.status === n.Failure) throw r.error;
91
+ }
92
+ function br(r) {
93
+ return r.status === n.Failure ? { status: n.Failure, error: r.error } : { status: n.Success, data: r.data };
86
94
  }
87
- const U = "`failable(() => ...)` only accepts synchronous callbacks. This callback returned a Promise. Pass the promise directly instead: `await failable(promise)`.", j = /* @__PURE__ */ Symbol("FailablePromiseCallbackGuard"), C = /* @__PURE__ */ Symbol("RunGet");
88
- class s {
89
- [C] = !0;
95
+ const x = "`failable(() => ...)` only accepts synchronous callbacks. This callback returned a Promise. Pass the promise directly instead: `await failable(promise)`.", p = /* @__PURE__ */ Symbol(
96
+ "FailablePromiseCallbackGuard"
97
+ ), D = /* @__PURE__ */ Symbol("RunGet");
98
+ class f {
99
+ [D] = !0;
90
100
  source;
91
101
  constructor(e) {
92
102
  this.source = e;
93
103
  }
94
104
  static create(e) {
95
- return new s(e);
105
+ return new f(e);
96
106
  }
97
107
  }
98
- const l = "`run()` generators must yield only values produced by `get(...)`. Use `yield* get(...)` in normal code.", M = "`run()` generators must return a `Failable` or finish without returning a value.";
99
- function* z(r) {
100
- return yield s.create(r);
108
+ const d = "`run()` generators must use `yield*` only with hydrated `Failable` values. Use `yield* helper()` for sync helpers and `yield* await promisedHelper()` for promised sources.", V = "`run()` generators must return a `Failable` or finish without returning a value.";
109
+ function* K(r) {
110
+ return yield f.create(r);
101
111
  }
102
- async function* B(r) {
103
- return yield s.create(r);
112
+ async function* H(r) {
113
+ return yield f.create(r);
104
114
  }
105
- function R(r) {
106
- return !i(r) && !E(r) ? !1 : E(r.then);
115
+ function S(r) {
116
+ return !s(r) && !b(r) ? !1 : b(r.then);
107
117
  }
108
- function x(r) {
109
- return R(r) ? B(r) : z(r);
118
+ const q = Object.freeze({});
119
+ function E(r) {
120
+ return c(r) ? r : l(r);
110
121
  }
111
- const D = Object.freeze({
112
- get: x
113
- });
114
- function I(r) {
115
- if (!(r instanceof s))
116
- throw new Error(l);
122
+ function L(r) {
123
+ for (const e of r)
124
+ if (S(e)) return !0;
125
+ return !1;
126
+ }
127
+ async function _(r) {
128
+ return (await Promise.all(
129
+ r.map((t) => Promise.resolve(t))
130
+ )).map((t) => E(t));
131
+ }
132
+ function y(r) {
133
+ for (const t of r)
134
+ if (t.status === n.Failure)
135
+ return t;
136
+ const e = r.map(
137
+ (t) => t.data
138
+ );
139
+ return u(e);
140
+ }
141
+ function g(r) {
142
+ return u(r);
143
+ }
144
+ function dr(...r) {
145
+ return L(r) ? _(r).then(
146
+ (e) => y(e)
147
+ ) : y(
148
+ r.map((e) => E(e))
149
+ );
150
+ }
151
+ function Er(...r) {
152
+ return L(r) ? _(r).then(
153
+ (e) => g(e)
154
+ ) : g(
155
+ r.map((e) => E(e))
156
+ );
157
+ }
158
+ function hr(...r) {
159
+ if (r.length === 0)
160
+ return Promise.reject(
161
+ new Error("`race()` requires at least one promised `Failable` source.")
162
+ );
163
+ for (const e of r)
164
+ if (!S(e))
165
+ return Promise.reject(
166
+ new Error("`race()` only accepts promised `Failable` sources.")
167
+ );
168
+ return Promise.race(r.map((e) => Promise.resolve(e))).then(
169
+ (e) => E(e)
170
+ );
171
+ }
172
+ function G(r) {
173
+ if (!(r instanceof f))
174
+ throw new Error(d);
117
175
  const e = r.source;
118
176
  if (!c(e))
119
- throw new Error(l);
177
+ throw new Error(d);
120
178
  return e;
121
179
  }
122
- async function V(r) {
123
- if (!(r instanceof s))
124
- throw new Error(l);
180
+ async function k(r) {
181
+ if (!(r instanceof f))
182
+ throw new Error(d);
125
183
  const e = await r.source;
126
184
  if (!c(e))
127
- throw new Error(l);
185
+ throw new Error(d);
128
186
  return e;
129
187
  }
130
- async function L(r) {
131
- if (!(r instanceof s))
132
- throw new Error(l);
133
- let e;
134
- try {
135
- e = await r.source;
136
- } catch (t) {
137
- return { kind: "rejection", rejection: t };
138
- }
139
- if (!c(e))
140
- throw new Error(l);
141
- return { kind: "source", source: e };
142
- }
143
- function K(r, e) {
188
+ function J(r, e) {
144
189
  let t = r.return(e);
145
190
  for (; !t.done; ) {
146
- const n = I(t.value);
147
- if (n.status === o.Failure) {
191
+ const o = G(t.value);
192
+ if (o.status === n.Failure) {
148
193
  t = r.return(e);
149
194
  continue;
150
195
  }
151
- t = r.next(n.data);
196
+ t = r.next(o.data);
152
197
  }
153
198
  }
154
- async function H(r, e) {
199
+ async function Y(r, e) {
155
200
  let t = await r.return(e);
156
201
  for (; !t.done; ) {
157
- const n = await V(t.value);
158
- if (n.status === o.Failure) {
202
+ const o = await k(t.value);
203
+ if (o.status === n.Failure) {
159
204
  t = await r.return(e);
160
205
  continue;
161
206
  }
162
- t = await r.next(n.data);
163
- }
164
- }
165
- async function J(r) {
166
- let e = await r.return(void 0);
167
- for (; !e.done; ) {
168
- const t = await L(e.value);
169
- if (t.kind === "rejection") {
170
- e = await r.return(void 0);
171
- continue;
172
- }
173
- const n = t.source;
174
- if (n.status === o.Failure) {
175
- e = await r.return(void 0);
176
- continue;
177
- }
178
- e = await r.next(n.data);
207
+ t = await r.next(o.data);
179
208
  }
180
209
  }
181
- function P(r) {
210
+ function T(r) {
182
211
  if (c(r))
183
212
  return r;
184
213
  if (r === void 0)
185
- return f();
186
- throw new Error(M);
214
+ return u();
215
+ throw new Error(V);
187
216
  }
188
- function W(r) {
217
+ function Q(r) {
189
218
  return Symbol.asyncIterator in r;
190
219
  }
191
- function Y(r) {
220
+ function W(r) {
192
221
  let e = r.next();
193
222
  for (; !e.done; ) {
194
- const t = I(e.value);
195
- if (t.status === o.Failure)
196
- return K(r, t), t;
223
+ const t = G(e.value);
224
+ if (t.status === n.Failure)
225
+ return J(r, t), t;
197
226
  e = r.next(t.data);
198
227
  }
199
- return P(e.value);
228
+ return T(e.value);
200
229
  }
201
- async function q(r) {
230
+ async function X(r) {
202
231
  let e = await r.next();
203
232
  for (; !e.done; ) {
204
- const t = await L(e.value);
205
- if (t.kind === "rejection")
206
- throw await J(r), t.rejection;
207
- const n = t.source;
208
- if (n.status === o.Failure)
209
- return await H(r, n), n;
210
- e = await r.next(n.data);
233
+ const t = await k(e.value);
234
+ if (t.status === n.Failure)
235
+ return await Y(r, t), t;
236
+ e = await r.next(t.data);
211
237
  }
212
- return P(e.value);
238
+ return T(e.value);
213
239
  }
214
- function lr(r) {
215
- const e = r(D);
216
- return W(e) ? q(e) : Y(e);
240
+ function mr(r) {
241
+ const e = r(q);
242
+ return Q(e) ? X(e) : W(e);
217
243
  }
218
- function dr(r, e) {
219
- return c(r) ? u(r, e) : w(r) ? u(b(r), e) : E(r) ? $(r, e) : v(r, e);
244
+ function Sr(r, e) {
245
+ return c(r) ? i(r, e) : h(r) ? i(w(r), e) : b(r) ? rr(r, e) : er(r, e);
220
246
  }
221
- function b(r) {
222
- return r.status === o.Success ? f(r.data) : d(r.error);
247
+ function w(r) {
248
+ return r.status === n.Success ? u(r.data) : l(r.error);
223
249
  }
224
- function Q() {
250
+ function Z() {
225
251
  const r = new Error(
226
- U
252
+ x
227
253
  );
228
- return Object.defineProperty(r, j, {
254
+ return Object.defineProperty(r, p, {
229
255
  value: !0,
230
256
  enumerable: !1,
231
257
  configurable: !1,
232
258
  writable: !1
233
259
  }), r;
234
260
  }
235
- function X(r) {
236
- return r instanceof Error ? Object.getOwnPropertyDescriptor(
237
- r,
238
- j
239
- )?.value === !0 : !1;
261
+ function $(r) {
262
+ return r instanceof Error ? Object.getOwnPropertyDescriptor(r, p)?.value === !0 : !1;
240
263
  }
241
- function Z(r) {
264
+ function v(r) {
242
265
  Promise.resolve(r).catch(() => {
243
266
  });
244
267
  }
245
- function $(r, e) {
268
+ function rr(r, e) {
246
269
  try {
247
270
  const t = r();
248
- return R(t) ? (Z(t), u(
249
- d(Q()),
271
+ return S(t) ? (v(t), i(
272
+ l(Z()),
250
273
  e
251
- )) : c(t) ? u(t, e) : w(t) ? u(b(t), e) : f(t);
274
+ )) : c(t) ? i(t, e) : h(t) ? i(w(t), e) : u(t);
252
275
  } catch (t) {
253
- return u(d(t), e);
276
+ return i(l(t), e);
254
277
  }
255
278
  }
256
- function v(r, e) {
279
+ function er(r, e) {
257
280
  return Promise.resolve(r).then(
258
- (t) => c(t) ? u(t, e) : w(t) ? u(b(t), e) : f(t),
259
- (t) => u(d(t), e)
281
+ (t) => c(t) ? i(t, e) : h(t) ? i(w(t), e) : u(t),
282
+ (t) => i(l(t), e)
260
283
  );
261
284
  }
262
- function u(r, e) {
263
- if (r.status === o.Success || X(r.error)) return r;
264
- const t = rr(e);
265
- return t === null || r.error instanceof Error && e !== void 0 && _(e) ? r : d(t(r.error));
285
+ function i(r, e) {
286
+ if (r.status === n.Success || $(r.error)) return r;
287
+ const t = tr(e);
288
+ return t === null || r.error instanceof Error && e !== void 0 && N(e) ? r : l(t(r.error));
266
289
  }
267
- function rr(r) {
268
- return r === void 0 ? null : _(r) ? or : er(r) ? r.normalizeError : null;
290
+ function tr(r) {
291
+ return r === void 0 ? null : N(r) ? ur : nr(r) ? r.normalizeError : null;
269
292
  }
270
- function _(r) {
271
- return !i(r) || Object.keys(r).length !== 1 ? !1 : Object.getOwnPropertyDescriptor(r, "mode")?.value === k.mode;
293
+ function N(r) {
294
+ return !s(r) || Object.keys(r).length !== 1 ? !1 : Object.getOwnPropertyDescriptor(r, "mode")?.value === U.mode;
272
295
  }
273
- function er(r) {
274
- return i(r) ? E(r.normalizeError) : !1;
296
+ function nr(r) {
297
+ return s(r) ? b(r.normalizeError) : !1;
275
298
  }
276
- function tr(r) {
277
- if (!i(r) || Array.isArray(r)) return !1;
299
+ function or(r) {
300
+ if (!s(r) || Array.isArray(r)) return !1;
278
301
  const e = Object.getPrototypeOf(r);
279
302
  return e === Object.prototype || e === null;
280
303
  }
281
- function g(r) {
304
+ function F(r) {
282
305
  try {
283
306
  const e = JSON.stringify(r);
284
307
  if (typeof e == "string") return e;
@@ -287,30 +310,33 @@ function g(r) {
287
310
  }
288
311
  return null;
289
312
  }
290
- function nr(r) {
313
+ function ir(r) {
291
314
  if (Object.getPrototypeOf(r) === null) {
292
- const n = g(r);
293
- return n !== null ? n : Object.prototype.toString.call(r);
315
+ const o = F(r);
316
+ return o !== null ? o : Object.prototype.toString.call(r);
294
317
  }
295
318
  const e = String(r);
296
319
  if (e !== "[object Object]") return e;
297
- const t = g(r);
320
+ const t = F(r);
298
321
  return t === null ? e : t;
299
322
  }
300
- function or(r) {
301
- return r instanceof Error ? r : Array.isArray(r) ? new AggregateError(r, "Multiple errors", { cause: r }) : tr(r) ? new Error(nr(r), { cause: r }) : new Error(String(r), { cause: r });
323
+ function ur(r) {
324
+ return r instanceof Error ? r : Array.isArray(r) ? new AggregateError(r, "Multiple errors", { cause: r }) : or(r) ? new Error(ir(r), { cause: r }) : new Error(String(r), { cause: r });
302
325
  }
303
326
  export {
304
- o as FailableStatus,
305
- k as NormalizedErrors,
306
- dr as failable,
307
- d as failure,
327
+ n as FailableStatus,
328
+ U as NormalizedErrors,
329
+ dr as all,
330
+ Er as allSettled,
331
+ Sr as failable,
332
+ l as failure,
308
333
  c as isFailable,
309
- w as isFailableLike,
310
- sr as isFailure,
311
- cr as isSuccess,
312
- lr as run,
313
- f as success,
314
- ar as throwIfError,
315
- fr as toFailableLike
334
+ h as isFailableLike,
335
+ lr as isFailure,
336
+ ar as isSuccess,
337
+ hr as race,
338
+ mr as run,
339
+ u as success,
340
+ fr as throwIfError,
341
+ br as toFailableLike
316
342
  };
@@ -11,11 +11,11 @@ export type FailableNormalizeErrorOptions = {
11
11
  };
12
12
  type FailableNormalizeErrorInput = typeof NormalizedErrors | FailableNormalizeErrorOptions;
13
13
  type Match<T, E> = <U>(onSuccess: (data: T) => U, onFailure: (error: E) => U) => U;
14
- export type Failable<T, E> = ((Success<T> & {
14
+ export type Failable<T, E> = (Success<T> & {
15
15
  readonly match: Match<T, E>;
16
16
  }) | (Failure<E> & {
17
17
  readonly match: Match<T, E>;
18
- }));
18
+ });
19
19
  /**
20
20
  * Structured-clone-friendly representation of {@link Failable}.
21
21
  *
@@ -59,6 +59,8 @@ export type Success<T> = {
59
59
  readonly getOrElse: <U>(getValue: () => U) => T;
60
60
  readonly getOrThrow: () => T;
61
61
  readonly match: SuccessMatch<T>;
62
+ readonly [Symbol.iterator]: () => RunGetIterator<T, never, Success<T>>;
63
+ readonly [Symbol.asyncIterator]: () => AsyncRunGetIterator<T, never, Success<T>>;
62
64
  };
63
65
  export type Failure<E> = {
64
66
  readonly status: typeof FailableStatus.Failure;
@@ -72,6 +74,8 @@ export type Failure<E> = {
72
74
  readonly getOrElse: <U>(getValue: () => U) => U;
73
75
  readonly getOrThrow: () => never;
74
76
  readonly match: FailureMatch<E>;
77
+ readonly [Symbol.iterator]: () => RunGetIterator<never, E, Failure<E>>;
78
+ readonly [Symbol.asyncIterator]: () => AsyncRunGetIterator<never, E, Failure<E>>;
75
79
  };
76
80
  export declare function isFailable(value: unknown): value is Failable<unknown, unknown>;
77
81
  export declare function isSuccess(value: unknown): value is Success<unknown>;
@@ -100,58 +104,24 @@ type FailableSyncOnlyCallback<F extends () => unknown> = F & (HasKnownPromiseLik
100
104
  type InferReturnTypeFromPromise<T, E = unknown, P extends PromiseLike<T> = PromiseLike<T>> = [Awaited<P>] extends [never] ? Promise<Failure<E>> : Awaited<P> extends Success<infer A> ? Promise<Success<A>> : Awaited<P> extends Failure<infer A> ? Promise<Failure<A>> : Awaited<P> extends Failable<unknown, unknown> ? Promise<Awaited<P>> : Awaited<P> extends FailableLikeSuccess<infer A> ? Promise<Success<A>> : Awaited<P> extends FailableLikeFailure<infer A> ? Promise<Failure<A>> : Awaited<P> extends FailableLike<infer A, infer B> ? Promise<Failable<A, B>> : Promise<Failable<Awaited<P>, E>>;
101
105
  type NormalizeFailableResult<T> = [T] extends [never] ? Failure<Error> : T extends Success<infer A> ? Success<A> : T extends Failure<unknown> ? Failure<Error> : T extends FailableLikeSuccess<infer A> ? Success<A> : T extends FailableLikeFailure<unknown> ? Failure<Error> : T extends Failable<infer A, unknown> ? Failable<A, Error> : T extends FailableLike<infer A, unknown> ? Failable<A, Error> : Failable<T, Error>;
102
106
  declare const RUN_GET_TAG: unique symbol;
103
- type RunSource<T, E> = Success<T> | Failure<E> | Failable<T, E>;
104
- type RunSourceSuccessLike<TData = unknown> = {
105
- readonly status: typeof FailableStatus.Success;
106
- readonly data: TData;
107
- };
108
- type RunSourceFailureLike<TError = unknown> = {
109
- readonly status: typeof FailableStatus.Failure;
110
- readonly error: TError;
111
- };
112
- type InferRunSourceValue<TSource> = TSource extends PromiseLike<infer TValue> ? TValue : TSource;
113
- type InferRunSourceData<TSource> = Extract<InferRunSourceValue<TSource>, RunSourceSuccessLike> extends {
114
- readonly data: infer TData;
115
- } ? TData : never;
116
- type InferRunSourceError<TSource> = Extract<InferRunSourceValue<TSource>, RunSourceFailureLike> extends {
117
- readonly error: infer TError;
118
- } ? TError : never;
119
107
  declare class RunGet<T, E, TSource = Failable<T, E>> {
120
108
  readonly [RUN_GET_TAG] = true;
121
109
  readonly source: TSource;
122
110
  private constructor();
123
- static create<T, E, TSource extends Failable<T, E> | PromiseLike<Failable<T, E>>>(source: TSource): RunGet<T, E, TSource>;
111
+ static create<T, E, TSource extends Failable<T, E>>(source: TSource): RunGet<T, E, TSource>;
124
112
  }
125
113
  type RunGetIterator<T, E, TSource extends Failable<T, E> = Failable<T, E>> = Generator<RunGet<T, E, TSource>, T, unknown>;
126
- type AsyncRunGetIterator<T, E, TSource extends Failable<T, E> | PromiseLike<Failable<T, E>> = Failable<T, E> | PromiseLike<Failable<T, E>>> = AsyncGenerator<RunGet<T, E, TSource>, T, unknown>;
127
- type RunHelpers = {
128
- readonly get: {
129
- <T>(source: Success<T>): RunGetIterator<T, never, Success<T>>;
130
- <E>(source: Failure<E>): RunGetIterator<never, E, Failure<E>>;
131
- <T, E>(source: Failable<T, E>): RunGetIterator<T, E, Failable<T, E>>;
132
- <T>(source: PromiseLike<Success<T>>): AsyncRunGetIterator<T, never, PromiseLike<Success<T>>>;
133
- <E>(source: PromiseLike<Failure<E>>): AsyncRunGetIterator<never, E, PromiseLike<Failure<E>>>;
134
- <TPromise extends PromiseLike<unknown>>(source: TPromise & PromiseLike<RunSource<unknown, unknown>>): AsyncRunGetIterator<InferRunSourceData<TPromise>, InferRunSourceError<TPromise>, PromiseLike<Failable<InferRunSourceData<TPromise>, InferRunSourceError<TPromise>>>>;
135
- };
136
- };
114
+ type AsyncRunGetIterator<T, E, TSource extends Failable<T, E> = Failable<T, E>> = AsyncGenerator<RunGet<T, E, TSource>, T, unknown>;
137
115
  type RunYield = RunGet<unknown, unknown, unknown>;
138
- type RunReturn = void | Success<unknown> | Failure<unknown> | Failable<unknown, unknown>;
116
+ type RunReturnSuccessLike<TData = unknown> = Pick<Success<TData>, 'status' | 'data' | 'error' | 'match'>;
117
+ type RunReturnFailureLike<TError = unknown> = Pick<Failure<TError>, 'status' | 'data' | 'error' | 'match'>;
118
+ type RunReturn = void | RunReturnSuccessLike<unknown> | RunReturnFailureLike<unknown> | Failable<unknown, unknown>;
139
119
  type InferRunYieldError<TYield> = TYield extends RunGet<unknown, infer TError, unknown> ? TError : never;
140
- type InferRunGuaranteedFailureError<TYield> = TYield extends RunGet<unknown, infer TError, infer TSource> ? [TSource] extends [Failure<TError> | PromiseLike<Failure<TError>>] ? TError : never : never;
141
- type RunReturnSuccessLike<TData = unknown> = {
142
- readonly status: typeof FailableStatus.Success;
143
- readonly data: TData;
144
- readonly error: null;
145
- };
146
- type RunReturnFailureLike<TError = unknown> = {
147
- readonly status: typeof FailableStatus.Failure;
148
- readonly data: null;
149
- readonly error: TError;
150
- };
120
+ type InferRunGuaranteedFailureError<TYield> = TYield extends RunGet<unknown, infer TError, infer TSource> ? [TSource] extends [Failure<TError>] ? TError : never : never;
151
121
  type MergeRunErrors<TYield, TError> = InferRunYieldError<TYield> | TError;
152
- type InferRunSuccessResult<TYield, TData> = [InferRunYieldError<TYield>] extends [
153
- never
154
- ] ? Success<TData> : Failable<TData, InferRunYieldError<TYield>>;
122
+ type InferRunSuccessResult<TYield, TData> = [
123
+ InferRunYieldError<TYield>
124
+ ] extends [never] ? Success<TData> : Failable<TData, InferRunYieldError<TYield>>;
155
125
  type InferRunNeverSuccessResult<TYield> = [InferRunYieldError<TYield>] extends [
156
126
  never
157
127
  ] ? Success<never> : [InferRunGuaranteedFailureError<TYield>] extends [never] ? Failable<never, InferRunYieldError<TYield>> : Failure<InferRunYieldError<TYield>>;
@@ -162,8 +132,36 @@ type InferRunUnionReturnError<TResult> = Extract<TResult, RunReturnFailureLike>
162
132
  readonly error: infer TError;
163
133
  } ? TError : never;
164
134
  type InferRunResult<TYield, TResult> = [TResult] extends [never] ? [InferRunYieldError<TYield>] extends [never] ? never : Failure<InferRunYieldError<TYield>> : [TResult] extends [void] ? InferRunSuccessResult<TYield, void> : [TResult] extends [RunReturnSuccessLike<infer TData>] ? [TData] extends [never] ? InferRunNeverSuccessResult<TYield> : InferRunSuccessResult<TYield, TData> : [TResult] extends [RunReturnFailureLike<infer TError>] ? Failure<MergeRunErrors<TYield, TError>> : [MergeRunErrors<TYield, InferRunUnionReturnError<TResult>>] extends [never] ? Success<InferRunUnionReturnData<TResult>> : Failable<InferRunUnionReturnData<TResult>, MergeRunErrors<TYield, InferRunUnionReturnError<TResult>>>;
165
- export declare function run<TYield extends RunGet<unknown, unknown, unknown> = never, TResult extends RunReturn = RunReturn>(builder: (helpers: RunHelpers) => AsyncGenerator<TYield, TResult, unknown>): Promise<InferRunResult<TYield, TResult>>;
166
- export declare function run<TYield extends RunYield = never, TResult extends RunReturn = RunReturn>(builder: (helpers: RunHelpers) => Generator<TYield, TResult, unknown>): InferRunResult<TYield, TResult>;
135
+ type RunNoHelpers = {
136
+ readonly __runNoHelpers?: never;
137
+ };
138
+ type FailableSource<T, E> = Failable<T, E> | PromiseLike<Failable<T, E>>;
139
+ type FailableSourceError<T> = T extends Success<unknown> ? never : T extends Failure<infer E> ? E : T extends Failable<unknown, infer E> ? E : T extends PromiseLike<Success<unknown>> ? never : T extends PromiseLike<Failure<infer E>> ? E : T extends PromiseLike<Failable<unknown, infer E>> ? E : never;
140
+ type FailableSourceData<T> = T extends Success<infer D> ? D : T extends Failure<unknown> ? never : T extends Failable<infer D, unknown> ? D : T extends PromiseLike<Success<infer D>> ? D : T extends PromiseLike<Failure<unknown>> ? never : T extends PromiseLike<Failable<infer D, unknown>> ? D : never;
141
+ type AllTupleError<T> = T extends readonly (infer P)[] ? FailableSourceError<P> : never;
142
+ type AllTupleData<T> = {
143
+ readonly [K in keyof T]: FailableSourceData<T[K]>;
144
+ };
145
+ type FailableSourceSettled<T> = T extends Success<infer D> ? Success<D> : T extends Failure<infer E> ? Failure<E> : T extends Failable<infer D, infer E> ? Failable<D, E> : T extends PromiseLike<Success<infer D>> ? Success<D> : T extends PromiseLike<Failure<infer E>> ? Failure<E> : T extends PromiseLike<Failable<infer D, infer E>> ? Failable<D, E> : never;
146
+ type FailableSourceIsAsync<T> = T extends PromiseLike<Failable<unknown, unknown>> ? true : false;
147
+ type FailableSourceHasGuaranteedFailure<T> = T extends Failure<unknown> | PromiseLike<Failure<unknown>> ? true : false;
148
+ type TupleHasAsync<T> = T extends readonly [infer First, ...infer Rest] ? FailableSourceIsAsync<First> extends true ? true : Rest extends readonly unknown[] ? TupleHasAsync<Rest> : false : false;
149
+ /** True when at least one element of T is Failure<...> or PromiseLike<Failure<...>>. */
150
+ type AllTupleHasGuaranteedFailure<T> = T extends readonly [
151
+ infer First,
152
+ ...infer Rest
153
+ ] ? FailableSourceHasGuaranteedFailure<First> extends true ? true : Rest extends readonly unknown[] ? AllTupleHasGuaranteedFailure<Rest> : false : false;
154
+ type AllReturnData<T> = AllTupleHasGuaranteedFailure<T> extends true ? never : AllTupleData<T>;
155
+ type AllSettledTuple<T> = {
156
+ readonly [K in keyof T]: FailableSourceSettled<T[K]>;
157
+ };
158
+ type RaceData<T> = T extends readonly (infer P)[] ? FailableSourceData<P> : never;
159
+ type RaceError<T> = T extends readonly (infer P)[] ? FailableSourceError<P> : never;
160
+ export declare function all<const T extends readonly FailableSource<unknown, unknown>[]>(...sources: T): TupleHasAsync<T> extends true ? Promise<Failable<AllReturnData<T>, AllTupleError<T>>> : Failable<AllReturnData<T>, AllTupleError<T>>;
161
+ export declare function allSettled<const T extends readonly FailableSource<unknown, unknown>[]>(...sources: T): TupleHasAsync<T> extends true ? Promise<Success<AllSettledTuple<T>>> : Success<AllSettledTuple<T>>;
162
+ export declare function race<const T extends readonly PromiseLike<Failable<unknown, unknown>>[]>(...sources: T): Promise<Failable<RaceData<T>, RaceError<T>>>;
163
+ export declare function run<TYield extends RunGet<unknown, unknown, unknown> = never, TResult extends RunReturn = RunReturn>(builder: (_helpers: RunNoHelpers) => AsyncGenerator<TYield, TResult, unknown>): Promise<InferRunResult<TYield, TResult>>;
164
+ export declare function run<TYield extends RunYield = never, TResult extends RunReturn = RunReturn>(builder: (_helpers: RunNoHelpers) => Generator<TYield, TResult, unknown>): InferRunResult<TYield, TResult>;
167
165
  export declare function failable<T>(value: Success<T>): Success<T>;
168
166
  export declare function failable<E>(value: Failure<E>): Failure<E>;
169
167
  export declare function failable<T, E>(value: Failable<T, E>): Failable<T, E>;
@@ -1 +1 @@
1
- {"version":3,"file":"failable.d.ts","sourceRoot":"","sources":["../../src/lib/failable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"failable.d.ts","sourceRoot":"","sources":["../../src/lib/failable.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pvorona/failable",
3
- "version": "0.6.4",
3
+ "version": "0.8.0",
4
4
  "description": "Typed success/failure results for expected failures in TypeScript.",
5
5
  "keywords": [
6
6
  "failable",