@nlozgachev/pipekit 0.1.8 → 0.3.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 +18 -13
- package/esm/src/Composition/flip.js +2 -2
- package/esm/src/Composition/fn.js +1 -1
- package/esm/src/Composition/tap.js +1 -1
- package/esm/src/Core/Arr.js +16 -16
- package/esm/src/Core/Option.js +27 -36
- package/esm/src/Core/Rec.js +1 -1
- package/esm/src/Core/RemoteData.js +9 -13
- package/esm/src/Core/Result.js +23 -32
- package/esm/src/Core/Task.js +95 -24
- package/esm/src/Core/TaskOption.js +8 -6
- package/esm/src/Core/TaskResult.js +67 -6
- package/esm/src/Core/TaskValidation.js +12 -8
- package/esm/src/Core/These.js +42 -42
- package/esm/src/Core/Validation.js +42 -43
- package/esm/src/Types/Brand.js +3 -3
- package/package.json +1 -1
- package/script/src/Composition/flip.js +2 -2
- package/script/src/Composition/fn.js +1 -1
- package/script/src/Composition/tap.js +1 -1
- package/script/src/Core/Arr.js +16 -16
- package/script/src/Core/Option.js +27 -36
- package/script/src/Core/Rec.js +1 -1
- package/script/src/Core/RemoteData.js +9 -13
- package/script/src/Core/Result.js +23 -32
- package/script/src/Core/Task.js +95 -24
- package/script/src/Core/TaskOption.js +8 -6
- package/script/src/Core/TaskResult.js +67 -6
- package/script/src/Core/TaskValidation.js +12 -8
- package/script/src/Core/These.js +42 -42
- package/script/src/Core/Validation.js +42 -43
- package/script/src/Types/Brand.js +3 -3
- package/types/src/Composition/flip.d.ts +2 -2
- package/types/src/Composition/fn.d.ts +1 -1
- package/types/src/Composition/pipe.d.ts +1 -1
- package/types/src/Composition/tap.d.ts +1 -1
- package/types/src/Composition/uncurry.d.ts +3 -3
- package/types/src/Core/Arr.d.ts +5 -5
- package/types/src/Core/Arr.d.ts.map +1 -1
- package/types/src/Core/Option.d.ts +21 -30
- package/types/src/Core/Option.d.ts.map +1 -1
- package/types/src/Core/Rec.d.ts.map +1 -1
- package/types/src/Core/RemoteData.d.ts +9 -13
- package/types/src/Core/RemoteData.d.ts.map +1 -1
- package/types/src/Core/Result.d.ts +19 -28
- package/types/src/Core/Result.d.ts.map +1 -1
- package/types/src/Core/Task.d.ts +81 -34
- package/types/src/Core/Task.d.ts.map +1 -1
- package/types/src/Core/TaskOption.d.ts +1 -1
- package/types/src/Core/TaskOption.d.ts.map +1 -1
- package/types/src/Core/TaskResult.d.ts +41 -2
- package/types/src/Core/TaskResult.d.ts.map +1 -1
- package/types/src/Core/TaskValidation.d.ts +10 -6
- package/types/src/Core/TaskValidation.d.ts.map +1 -1
- package/types/src/Core/These.d.ts +33 -33
- package/types/src/Core/These.d.ts.map +1 -1
- package/types/src/Core/Validation.d.ts +38 -42
- package/types/src/Core/Validation.d.ts.map +1 -1
- package/types/src/Types/Brand.d.ts +5 -5
|
@@ -7,7 +7,7 @@ import { Result } from "./Result.js";
|
|
|
7
7
|
* @example
|
|
8
8
|
* ```ts
|
|
9
9
|
* const findUser = (id: string): Option<User> =>
|
|
10
|
-
* users.has(id) ? Option.
|
|
10
|
+
* users.has(id) ? Option.some(users.get(id)!) : Option.none();
|
|
11
11
|
*
|
|
12
12
|
* pipe(
|
|
13
13
|
* findUser("123"),
|
|
@@ -20,19 +20,10 @@ export type Option<T> = Some<T> | None;
|
|
|
20
20
|
export type Some<A> = WithKind<"Some"> & WithValue<A>;
|
|
21
21
|
export type None = WithKind<"None">;
|
|
22
22
|
export declare namespace Option {
|
|
23
|
-
/**
|
|
24
|
-
* Wraps a value in a Some.
|
|
25
|
-
*
|
|
26
|
-
* @example
|
|
27
|
-
* ```ts
|
|
28
|
-
* Option.of(42); // Some(42)
|
|
29
|
-
* ```
|
|
30
|
-
*/
|
|
31
|
-
const of: <A>(value: A) => Option<A>;
|
|
32
23
|
/**
|
|
33
24
|
* Creates a Some containing the given value.
|
|
34
25
|
*/
|
|
35
|
-
const
|
|
26
|
+
const some: <A>(value: A) => Some<A>;
|
|
36
27
|
/**
|
|
37
28
|
* Type guard that checks if a Option is Some.
|
|
38
29
|
*/
|
|
@@ -40,7 +31,7 @@ export declare namespace Option {
|
|
|
40
31
|
/**
|
|
41
32
|
* Creates a None (empty Option).
|
|
42
33
|
*/
|
|
43
|
-
const
|
|
34
|
+
const none: () => None;
|
|
44
35
|
/**
|
|
45
36
|
* Type guard that checks if a Option is None.
|
|
46
37
|
*/
|
|
@@ -76,12 +67,12 @@ export declare namespace Option {
|
|
|
76
67
|
* @example
|
|
77
68
|
* ```ts
|
|
78
69
|
* pipe(
|
|
79
|
-
* Option.
|
|
70
|
+
* Option.some(42),
|
|
80
71
|
* Option.toResult(() => "Value was missing")
|
|
81
72
|
* ); // Ok(42)
|
|
82
73
|
*
|
|
83
74
|
* pipe(
|
|
84
|
-
* Option.
|
|
75
|
+
* Option.none(),
|
|
85
76
|
* Option.toResult(() => "Value was missing")
|
|
86
77
|
* ); // Err("Value was missing")
|
|
87
78
|
* ```
|
|
@@ -93,8 +84,8 @@ export declare namespace Option {
|
|
|
93
84
|
*
|
|
94
85
|
* @example
|
|
95
86
|
* ```ts
|
|
96
|
-
* Option.fromResult(Result.
|
|
97
|
-
* Option.fromResult(Result.
|
|
87
|
+
* Option.fromResult(Result.ok(42)); // Some(42)
|
|
88
|
+
* Option.fromResult(Result.err("oops")); // None
|
|
98
89
|
* ```
|
|
99
90
|
*/
|
|
100
91
|
const fromResult: <E, A>(data: Result<E, A>) => Option<A>;
|
|
@@ -103,8 +94,8 @@ export declare namespace Option {
|
|
|
103
94
|
*
|
|
104
95
|
* @example
|
|
105
96
|
* ```ts
|
|
106
|
-
* pipe(Option.
|
|
107
|
-
* pipe(Option.
|
|
97
|
+
* pipe(Option.some(5), Option.map(n => n * 2)); // Some(10)
|
|
98
|
+
* pipe(Option.none(), Option.map(n => n * 2)); // None
|
|
108
99
|
* ```
|
|
109
100
|
*/
|
|
110
101
|
const map: <A, B>(f: (a: A) => B) => (data: Option<A>) => Option<B>;
|
|
@@ -116,11 +107,11 @@ export declare namespace Option {
|
|
|
116
107
|
* ```ts
|
|
117
108
|
* const parseNumber = (s: string): Option<number> => {
|
|
118
109
|
* const n = parseInt(s, 10);
|
|
119
|
-
* return isNaN(n) ? Option.
|
|
110
|
+
* return isNaN(n) ? Option.none() : Option.some(n);
|
|
120
111
|
* };
|
|
121
112
|
*
|
|
122
|
-
* pipe(Option.
|
|
123
|
-
* pipe(Option.
|
|
113
|
+
* pipe(Option.some("42"), Option.chain(parseNumber)); // Some(42)
|
|
114
|
+
* pipe(Option.some("abc"), Option.chain(parseNumber)); // None
|
|
124
115
|
* ```
|
|
125
116
|
*/
|
|
126
117
|
const chain: <A, B>(f: (a: A) => Option<B>) => (data: Option<A>) => Option<B>;
|
|
@@ -130,7 +121,7 @@ export declare namespace Option {
|
|
|
130
121
|
* @example
|
|
131
122
|
* ```ts
|
|
132
123
|
* pipe(
|
|
133
|
-
* Option.
|
|
124
|
+
* Option.some(5),
|
|
134
125
|
* Option.fold(
|
|
135
126
|
* () => "No value",
|
|
136
127
|
* n => `Value: ${n}`
|
|
@@ -162,8 +153,8 @@ export declare namespace Option {
|
|
|
162
153
|
*
|
|
163
154
|
* @example
|
|
164
155
|
* ```ts
|
|
165
|
-
* pipe(Option.
|
|
166
|
-
* pipe(Option.
|
|
156
|
+
* pipe(Option.some(5), Option.getOrElse(0)); // 5
|
|
157
|
+
* pipe(Option.none(), Option.getOrElse(0)); // 0
|
|
167
158
|
* ```
|
|
168
159
|
*/
|
|
169
160
|
const getOrElse: <A>(defaultValue: A) => (data: Option<A>) => A;
|
|
@@ -174,7 +165,7 @@ export declare namespace Option {
|
|
|
174
165
|
* @example
|
|
175
166
|
* ```ts
|
|
176
167
|
* pipe(
|
|
177
|
-
* Option.
|
|
168
|
+
* Option.some(5),
|
|
178
169
|
* Option.tap(n => console.log("Value:", n)),
|
|
179
170
|
* Option.map(n => n * 2)
|
|
180
171
|
* );
|
|
@@ -187,8 +178,8 @@ export declare namespace Option {
|
|
|
187
178
|
*
|
|
188
179
|
* @example
|
|
189
180
|
* ```ts
|
|
190
|
-
* pipe(Option.
|
|
191
|
-
* pipe(Option.
|
|
181
|
+
* pipe(Option.some(5), Option.filter(n => n > 3)); // Some(5)
|
|
182
|
+
* pipe(Option.some(2), Option.filter(n => n > 3)); // None
|
|
192
183
|
* ```
|
|
193
184
|
*/
|
|
194
185
|
const filter: <A>(predicate: (a: A) => boolean) => (data: Option<A>) => Option<A>;
|
|
@@ -203,9 +194,9 @@ export declare namespace Option {
|
|
|
203
194
|
* ```ts
|
|
204
195
|
* const add = (a: number) => (b: number) => a + b;
|
|
205
196
|
* pipe(
|
|
206
|
-
* Option.
|
|
207
|
-
* Option.ap(Option.
|
|
208
|
-
* Option.ap(Option.
|
|
197
|
+
* Option.some(add),
|
|
198
|
+
* Option.ap(Option.some(5)),
|
|
199
|
+
* Option.ap(Option.some(3))
|
|
209
200
|
* ); // Some(8)
|
|
210
201
|
* ```
|
|
211
202
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Option.d.ts","sourceRoot":"","sources":["../../../src/src/Core/Option.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AAEvC,MAAM,MAAM,IAAI,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACtD,MAAM,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAEpC,yBAAiB,MAAM,CAAC;IACtB
|
|
1
|
+
{"version":3,"file":"Option.d.ts","sourceRoot":"","sources":["../../../src/src/Core/Option.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rec.d.ts","sourceRoot":"","sources":["../../../src/src/Core/Rec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;;;;;;;;;GAYG;AACH,yBAAiB,GAAG,CAAC;IACnB;;;;;;;OAOG;IACI,MAAM,GAAG,GACb,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAMxF,CAAC;IAEJ;;;;;;;;OAQG;IACI,MAAM,UAAU,GACpB,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,MACjC,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAM9D,CAAC;IAEJ;;;;;;;OAOG;IACI,MAAM,MAAM,GAChB,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,MAC/B,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAM9D,CAAC;IAEJ;;;;;;;;OAQG;IACI,MAAM,aAAa,GACvB,CAAC,EAAE,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,MAC5C,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAM9D,CAAC;IAEJ;;;;;;;;OAQG;IACI,MAAM,MAAM,GAAI,KAAK,MAAM,MAAM,CAAC,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAG,MAAM,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"Rec.d.ts","sourceRoot":"","sources":["../../../src/src/Core/Rec.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,10 +41,6 @@ export declare namespace RemoteData {
|
|
|
41
41
|
* Creates a Success RemoteData with the given value.
|
|
42
42
|
*/
|
|
43
43
|
const success: <E, A>(value: A) => RemoteData<E, A>;
|
|
44
|
-
/**
|
|
45
|
-
* Wraps a value in a Success RemoteData. Alias for `success`.
|
|
46
|
-
*/
|
|
47
|
-
const of: <E, A>(value: A) => RemoteData<E, A>;
|
|
48
44
|
/**
|
|
49
45
|
* Type guard that checks if a RemoteData is NotAsked.
|
|
50
46
|
*/
|
|
@@ -66,7 +62,7 @@ export declare namespace RemoteData {
|
|
|
66
62
|
*
|
|
67
63
|
* @example
|
|
68
64
|
* ```ts
|
|
69
|
-
* pipe(RemoteData.
|
|
65
|
+
* pipe(RemoteData.success(5), RemoteData.map(n => n * 2)); // Success(10)
|
|
70
66
|
* pipe(RemoteData.loading(), RemoteData.map(n => n * 2)); // Loading
|
|
71
67
|
* ```
|
|
72
68
|
*/
|
|
@@ -87,8 +83,8 @@ export declare namespace RemoteData {
|
|
|
87
83
|
* @example
|
|
88
84
|
* ```ts
|
|
89
85
|
* pipe(
|
|
90
|
-
* RemoteData.
|
|
91
|
-
* RemoteData.chain(n => n > 0 ? RemoteData.
|
|
86
|
+
* RemoteData.success(5),
|
|
87
|
+
* RemoteData.chain(n => n > 0 ? RemoteData.success(n) : RemoteData.failure("negative"))
|
|
92
88
|
* );
|
|
93
89
|
* ```
|
|
94
90
|
*/
|
|
@@ -100,9 +96,9 @@ export declare namespace RemoteData {
|
|
|
100
96
|
* ```ts
|
|
101
97
|
* const add = (a: number) => (b: number) => a + b;
|
|
102
98
|
* pipe(
|
|
103
|
-
* RemoteData.
|
|
104
|
-
* RemoteData.ap(RemoteData.
|
|
105
|
-
* RemoteData.ap(RemoteData.
|
|
99
|
+
* RemoteData.success(add),
|
|
100
|
+
* RemoteData.ap(RemoteData.success(5)),
|
|
101
|
+
* RemoteData.ap(RemoteData.success(3))
|
|
106
102
|
* ); // Success(8)
|
|
107
103
|
* ```
|
|
108
104
|
*/
|
|
@@ -151,7 +147,7 @@ export declare namespace RemoteData {
|
|
|
151
147
|
*
|
|
152
148
|
* @example
|
|
153
149
|
* ```ts
|
|
154
|
-
* pipe(RemoteData.
|
|
150
|
+
* pipe(RemoteData.success(5), RemoteData.getOrElse(0)); // 5
|
|
155
151
|
* pipe(RemoteData.loading(), RemoteData.getOrElse(0)); // 0
|
|
156
152
|
* ```
|
|
157
153
|
*/
|
|
@@ -162,7 +158,7 @@ export declare namespace RemoteData {
|
|
|
162
158
|
* @example
|
|
163
159
|
* ```ts
|
|
164
160
|
* pipe(
|
|
165
|
-
* RemoteData.
|
|
161
|
+
* RemoteData.success(5),
|
|
166
162
|
* RemoteData.tap(n => console.log("Value:", n)),
|
|
167
163
|
* RemoteData.map(n => n * 2)
|
|
168
164
|
* );
|
|
@@ -186,7 +182,7 @@ export declare namespace RemoteData {
|
|
|
186
182
|
* @example
|
|
187
183
|
* ```ts
|
|
188
184
|
* pipe(
|
|
189
|
-
* RemoteData.
|
|
185
|
+
* RemoteData.success(42),
|
|
190
186
|
* RemoteData.toResult(() => "not loaded")
|
|
191
187
|
* ); // Ok(42)
|
|
192
188
|
* ```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteData.d.ts","sourceRoot":"","sources":["../../../src/src/Core/RemoteData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE5E,MAAM,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC5C,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC1C,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC5D,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAE5D,yBAAiB,UAAU,CAAC;IAC1B;;OAEG;IACI,MAAM,QAAQ,GAAI,CAAC,EAAE,CAAC,OAAK,UAAU,CAAC,CAAC,EAAE,CAAC,CAA2B,CAAC;IAE7E;;OAEG;IACI,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,OAAK,UAAU,CAAC,CAAC,EAAE,CAAC,CAA0B,CAAC;IAE3E;;OAEG;IACI,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAGtD,CAAC;IAEH;;OAEG;IACI,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAGtD,CAAC;IAEH;;OAEG;IACI,MAAM,
|
|
1
|
+
{"version":3,"file":"RemoteData.d.ts","sourceRoot":"","sources":["../../../src/src/Core/RemoteData.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { WithError, WithKind, WithValue } from "./InternalTypes.js";
|
|
|
6
6
|
* @example
|
|
7
7
|
* ```ts
|
|
8
8
|
* const divide = (a: number, b: number): Result<string, number> =>
|
|
9
|
-
* b === 0 ? Result.
|
|
9
|
+
* b === 0 ? Result.err("Division by zero") : Result.ok(a / b);
|
|
10
10
|
*
|
|
11
11
|
* pipe(
|
|
12
12
|
* divide(10, 2),
|
|
@@ -20,22 +20,13 @@ export type Ok<A> = WithKind<"Ok"> & WithValue<A>;
|
|
|
20
20
|
export type Err<E> = WithKind<"Error"> & WithError<E>;
|
|
21
21
|
export declare namespace Result {
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* @example
|
|
26
|
-
* ```ts
|
|
27
|
-
* Result.of(42); // Ok(42)
|
|
28
|
-
* ```
|
|
23
|
+
* Creates a successful Result with the given value.
|
|
29
24
|
*/
|
|
30
|
-
const
|
|
25
|
+
const ok: <A>(value: A) => Ok<A>;
|
|
31
26
|
/**
|
|
32
27
|
* Creates a failed Result with the given error.
|
|
33
28
|
*/
|
|
34
|
-
const
|
|
35
|
-
/**
|
|
36
|
-
* Creates a successful Result with the given value.
|
|
37
|
-
*/
|
|
38
|
-
const toOk: <A>(value: A) => Ok<A>;
|
|
29
|
+
const err: <E>(error: E) => Err<E>;
|
|
39
30
|
/**
|
|
40
31
|
* Type guard that checks if an Result is Ok.
|
|
41
32
|
*/
|
|
@@ -63,8 +54,8 @@ export declare namespace Result {
|
|
|
63
54
|
*
|
|
64
55
|
* @example
|
|
65
56
|
* ```ts
|
|
66
|
-
* pipe(Result.
|
|
67
|
-
* pipe(Result.
|
|
57
|
+
* pipe(Result.ok(5), Result.map(n => n * 2)); // Ok(10)
|
|
58
|
+
* pipe(Result.err("error"), Result.map(n => n * 2)); // Err("error")
|
|
68
59
|
* ```
|
|
69
60
|
*/
|
|
70
61
|
const map: <E, A, B>(f: (a: A) => B) => (data: Result<E, A>) => Result<E, B>;
|
|
@@ -73,7 +64,7 @@ export declare namespace Result {
|
|
|
73
64
|
*
|
|
74
65
|
* @example
|
|
75
66
|
* ```ts
|
|
76
|
-
* pipe(Result.
|
|
67
|
+
* pipe(Result.err("oops"), Result.mapError(e => e.toUpperCase())); // Err("OOPS")
|
|
77
68
|
* ```
|
|
78
69
|
*/
|
|
79
70
|
const mapError: <E, F, A>(f: (e: E) => F) => (data: Result<E, A>) => Result<F, A>;
|
|
@@ -84,10 +75,10 @@ export declare namespace Result {
|
|
|
84
75
|
* @example
|
|
85
76
|
* ```ts
|
|
86
77
|
* const validatePositive = (n: number): Result<string, number> =>
|
|
87
|
-
* n > 0 ? Result.
|
|
78
|
+
* n > 0 ? Result.ok(n) : Result.err("Must be positive");
|
|
88
79
|
*
|
|
89
|
-
* pipe(Result.
|
|
90
|
-
* pipe(Result.
|
|
80
|
+
* pipe(Result.ok(5), Result.chain(validatePositive)); // Ok(5)
|
|
81
|
+
* pipe(Result.ok(-1), Result.chain(validatePositive)); // Err("Must be positive")
|
|
91
82
|
* ```
|
|
92
83
|
*/
|
|
93
84
|
const chain: <E, A, B>(f: (a: A) => Result<E, B>) => (data: Result<E, A>) => Result<E, B>;
|
|
@@ -97,7 +88,7 @@ export declare namespace Result {
|
|
|
97
88
|
* @example
|
|
98
89
|
* ```ts
|
|
99
90
|
* pipe(
|
|
100
|
-
* Result.
|
|
91
|
+
* Result.ok(5),
|
|
101
92
|
* Result.fold(
|
|
102
93
|
* e => `Error: ${e}`,
|
|
103
94
|
* n => `Value: ${n}`
|
|
@@ -129,8 +120,8 @@ export declare namespace Result {
|
|
|
129
120
|
*
|
|
130
121
|
* @example
|
|
131
122
|
* ```ts
|
|
132
|
-
* pipe(Result.
|
|
133
|
-
* pipe(Result.
|
|
123
|
+
* pipe(Result.ok(5), Result.getOrElse(0)); // 5
|
|
124
|
+
* pipe(Result.err("error"), Result.getOrElse(0)); // 0
|
|
134
125
|
* ```
|
|
135
126
|
*/
|
|
136
127
|
const getOrElse: <E, A>(defaultValue: A) => (data: Result<E, A>) => A;
|
|
@@ -141,7 +132,7 @@ export declare namespace Result {
|
|
|
141
132
|
* @example
|
|
142
133
|
* ```ts
|
|
143
134
|
* pipe(
|
|
144
|
-
* Result.
|
|
135
|
+
* Result.ok(5),
|
|
145
136
|
* Result.tap(n => console.log("Value:", n)),
|
|
146
137
|
* Result.map(n => n * 2)
|
|
147
138
|
* );
|
|
@@ -162,8 +153,8 @@ export declare namespace Result {
|
|
|
162
153
|
*
|
|
163
154
|
* @example
|
|
164
155
|
* ```ts
|
|
165
|
-
* Result.toOption(Result.
|
|
166
|
-
* Result.toOption(Result.
|
|
156
|
+
* Result.toOption(Result.ok(42)); // Some(42)
|
|
157
|
+
* Result.toOption(Result.err("oops")); // None
|
|
167
158
|
* ```
|
|
168
159
|
*/
|
|
169
160
|
const toOption: <E, A>(data: Result<E, A>) => import("./Option.ts").Option<A>;
|
|
@@ -174,9 +165,9 @@ export declare namespace Result {
|
|
|
174
165
|
* ```ts
|
|
175
166
|
* const add = (a: number) => (b: number) => a + b;
|
|
176
167
|
* pipe(
|
|
177
|
-
* Result.
|
|
178
|
-
* Result.ap(Result.
|
|
179
|
-
* Result.ap(Result.
|
|
168
|
+
* Result.ok(add),
|
|
169
|
+
* Result.ap(Result.ok(5)),
|
|
170
|
+
* Result.ap(Result.ok(3))
|
|
180
171
|
* ); // Ok(8)
|
|
181
172
|
* ```
|
|
182
173
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Result.d.ts","sourceRoot":"","sources":["../../../src/src/Core/Result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAE1C,MAAM,MAAM,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAClD,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAEtD,yBAAiB,MAAM,CAAC;IACtB
|
|
1
|
+
{"version":3,"file":"Result.d.ts","sourceRoot":"","sources":["../../../src/src/Core/Result.ts"],"names":[],"mappings":"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"}
|
package/types/src/Core/Task.d.ts
CHANGED
|
@@ -1,45 +1,45 @@
|
|
|
1
|
+
import { Result } from "./Result.js";
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* A lazy async computation that always resolves.
|
|
4
|
+
*
|
|
5
|
+
* Two guarantees:
|
|
6
|
+
* - **Lazy** — nothing starts until you call it.
|
|
7
|
+
* - **Infallible** — it never rejects. If failure is possible, encode it in the
|
|
8
|
+
* return type using `TaskResult<E, A>` instead.
|
|
5
9
|
*
|
|
6
10
|
* @example
|
|
7
11
|
* ```ts
|
|
8
|
-
* const
|
|
12
|
+
* const getTimestamp: Task<number> = () => Promise.resolve(Date.now());
|
|
9
13
|
*
|
|
10
|
-
* // Nothing
|
|
11
|
-
* const
|
|
12
|
-
*
|
|
13
|
-
* Task.map(
|
|
14
|
+
* // Nothing runs yet — getTimestamp is just a description
|
|
15
|
+
* const formatted = pipe(
|
|
16
|
+
* getTimestamp,
|
|
17
|
+
* Task.map(ts => new Date(ts).toISOString())
|
|
14
18
|
* );
|
|
15
19
|
*
|
|
16
|
-
* //
|
|
17
|
-
*
|
|
20
|
+
* // Execute when ready
|
|
21
|
+
* const result = await formatted();
|
|
18
22
|
* ```
|
|
19
23
|
*/
|
|
20
24
|
export type Task<A> = () => Promise<A>;
|
|
21
25
|
export declare namespace Task {
|
|
22
26
|
/**
|
|
23
|
-
*
|
|
27
|
+
* Creates a Task that immediately resolves to the given value.
|
|
24
28
|
*
|
|
25
29
|
* @example
|
|
26
30
|
* ```ts
|
|
27
|
-
* const task = Task.
|
|
31
|
+
* const task = Task.resolve(42);
|
|
28
32
|
* task().then(console.log); // 42
|
|
29
33
|
* ```
|
|
30
34
|
*/
|
|
31
|
-
const
|
|
32
|
-
/**
|
|
33
|
-
* Creates a Task that will reject with the given error.
|
|
34
|
-
*/
|
|
35
|
-
const fail: <A>(error: unknown) => Task<A>;
|
|
35
|
+
const resolve: <A>(value: A) => Task<A>;
|
|
36
36
|
/**
|
|
37
37
|
* Creates a Task from a function that returns a Promise.
|
|
38
38
|
* Alias for directly creating a Task.
|
|
39
39
|
*
|
|
40
40
|
* @example
|
|
41
41
|
* ```ts
|
|
42
|
-
* const
|
|
42
|
+
* const getTimestamp = Task.from(() => Promise.resolve(Date.now()));
|
|
43
43
|
* ```
|
|
44
44
|
*/
|
|
45
45
|
const from: <A>(f: () => Promise<A>) => Task<A>;
|
|
@@ -49,24 +49,24 @@ export declare namespace Task {
|
|
|
49
49
|
* @example
|
|
50
50
|
* ```ts
|
|
51
51
|
* pipe(
|
|
52
|
-
* Task.
|
|
52
|
+
* Task.resolve(5),
|
|
53
53
|
* Task.map(n => n * 2)
|
|
54
54
|
* )(); // Promise<10>
|
|
55
55
|
* ```
|
|
56
56
|
*/
|
|
57
57
|
const map: <A, B>(f: (a: A) => B) => (data: Task<A>) => Task<B>;
|
|
58
58
|
/**
|
|
59
|
-
* Chains Task computations.
|
|
59
|
+
* Chains Task computations. Passes the resolved value of the first Task to f.
|
|
60
60
|
*
|
|
61
61
|
* @example
|
|
62
62
|
* ```ts
|
|
63
|
-
* const
|
|
64
|
-
* const
|
|
63
|
+
* const readUserId: Task<string> = () => Promise.resolve(session.userId);
|
|
64
|
+
* const loadPrefs = (id: string): Task<Preferences> => () => Promise.resolve(prefsCache.get(id));
|
|
65
65
|
*
|
|
66
66
|
* pipe(
|
|
67
|
-
*
|
|
68
|
-
* Task.chain(
|
|
69
|
-
* )(); // Promise<
|
|
67
|
+
* readUserId,
|
|
68
|
+
* Task.chain(loadPrefs)
|
|
69
|
+
* )(); // Promise<Preferences>
|
|
70
70
|
* ```
|
|
71
71
|
*/
|
|
72
72
|
const chain: <A, B>(f: (a: A) => Task<B>) => (data: Task<A>) => Task<B>;
|
|
@@ -78,9 +78,9 @@ export declare namespace Task {
|
|
|
78
78
|
* ```ts
|
|
79
79
|
* const add = (a: number) => (b: number) => a + b;
|
|
80
80
|
* pipe(
|
|
81
|
-
* Task.
|
|
82
|
-
* Task.ap(Task.
|
|
83
|
-
* Task.ap(Task.
|
|
81
|
+
* Task.resolve(add),
|
|
82
|
+
* Task.ap(Task.resolve(5)),
|
|
83
|
+
* Task.ap(Task.resolve(3))
|
|
84
84
|
* )(); // Promise<8>
|
|
85
85
|
* ```
|
|
86
86
|
*/
|
|
@@ -92,9 +92,9 @@ export declare namespace Task {
|
|
|
92
92
|
* @example
|
|
93
93
|
* ```ts
|
|
94
94
|
* pipe(
|
|
95
|
-
*
|
|
96
|
-
* Task.tap(
|
|
97
|
-
* Task.map(
|
|
95
|
+
* loadConfig,
|
|
96
|
+
* Task.tap(cfg => console.log("Config:", cfg)),
|
|
97
|
+
* Task.map(buildReport)
|
|
98
98
|
* );
|
|
99
99
|
* ```
|
|
100
100
|
*/
|
|
@@ -104,22 +104,69 @@ export declare namespace Task {
|
|
|
104
104
|
*
|
|
105
105
|
* @example
|
|
106
106
|
* ```ts
|
|
107
|
-
* Task.all([
|
|
108
|
-
* // Promise<[
|
|
107
|
+
* Task.all([loadConfig, detectLocale, loadTheme])();
|
|
108
|
+
* // Promise<[Config, string, Theme]>
|
|
109
109
|
* ```
|
|
110
110
|
*/
|
|
111
111
|
const all: <T extends readonly Task<unknown>[]>(tasks: T) => Task<{ [K in keyof T]: T[K] extends Task<infer A> ? A : never; }>;
|
|
112
112
|
/**
|
|
113
113
|
* Delays the execution of a Task by the specified milliseconds.
|
|
114
|
+
* Useful for debouncing or rate limiting.
|
|
114
115
|
*
|
|
115
116
|
* @example
|
|
116
117
|
* ```ts
|
|
117
118
|
* pipe(
|
|
118
|
-
* Task.
|
|
119
|
+
* Task.resolve(42),
|
|
119
120
|
* Task.delay(1000)
|
|
120
121
|
* )(); // Resolves after 1 second
|
|
121
122
|
* ```
|
|
122
123
|
*/
|
|
123
124
|
const delay: (ms: number) => <A>(data: Task<A>) => Task<A>;
|
|
125
|
+
/**
|
|
126
|
+
* Runs a Task a fixed number of times sequentially, collecting all results into an array.
|
|
127
|
+
* An optional delay (ms) can be inserted between runs.
|
|
128
|
+
*
|
|
129
|
+
* @example
|
|
130
|
+
* ```ts
|
|
131
|
+
* pipe(
|
|
132
|
+
* pollSensor,
|
|
133
|
+
* Task.repeat({ times: 5, delay: 1000 })
|
|
134
|
+
* )(); // Task<Reading[]> — 5 readings, one per second
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
const repeat: (options: {
|
|
138
|
+
times: number;
|
|
139
|
+
delay?: number;
|
|
140
|
+
}) => <A>(task: Task<A>) => Task<A[]>;
|
|
141
|
+
/**
|
|
142
|
+
* Runs a Task repeatedly until the result satisfies a predicate, returning that result.
|
|
143
|
+
* An optional delay (ms) can be inserted between runs.
|
|
144
|
+
*
|
|
145
|
+
* @example
|
|
146
|
+
* ```ts
|
|
147
|
+
* pipe(
|
|
148
|
+
* checkStatus,
|
|
149
|
+
* Task.repeatUntil({ when: (s) => s === "ready", delay: 500 })
|
|
150
|
+
* )(); // polls every 500ms until status is "ready"
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
const repeatUntil: <A>(options: {
|
|
154
|
+
when: (a: A) => boolean;
|
|
155
|
+
delay?: number;
|
|
156
|
+
}) => (task: Task<A>) => Task<A>;
|
|
157
|
+
/**
|
|
158
|
+
* Converts a `Task<A>` into a `Task<Result<E, A>>`, resolving to `Err` if the
|
|
159
|
+
* Task does not complete within the given time.
|
|
160
|
+
*
|
|
161
|
+
* @example
|
|
162
|
+
* ```ts
|
|
163
|
+
* pipe(
|
|
164
|
+
* heavyComputation,
|
|
165
|
+
* Task.timeout(5000, () => "timed out"),
|
|
166
|
+
* TaskResult.chain(processResult)
|
|
167
|
+
* );
|
|
168
|
+
* ```
|
|
169
|
+
*/
|
|
170
|
+
const timeout: <E>(ms: number, onTimeout: () => E) => <A>(task: Task<A>) => Task<Result<E, A>>;
|
|
124
171
|
}
|
|
125
172
|
//# sourceMappingURL=Task.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Task.d.ts","sourceRoot":"","sources":["../../../src/src/Core/Task.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Task.d.ts","sourceRoot":"","sources":["../../../src/src/Core/Task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,MAAM,IAAI,CAAC,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;AAEvC,yBAAiB,IAAI,CAAC;IACpB;;;;;;;;OAQG;IACI,MAAM,OAAO,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,IAAI,CAAC,CAAC,CAAiC,CAAC;IAE9E;;;;;;;;OAQG;IACI,MAAM,IAAI,GAAI,CAAC,EAAE,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,CAAM,CAAC;IAE3D;;;;;;;;;;OAUG;IACI,MAAM,GAAG,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,MAAM,IAAI,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,CAAyB,CAAC;IAE9F;;;;;;;;;;;;;OAaG;IACI,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,MAAM,IAAI,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,CAChD,CAAC;IAE7B;;;;;;;;;;;;;OAaG;IACI,MAAM,EAAE,GAAI,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,CACtB,CAAC;IAEtD;;;;;;;;;;;;OAYG;IACI,MAAM,GAAG,GAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,MAAM,MAAM,IAAI,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,CAIhE,CAAC;IAEL;;;;;;;;OAQG;IACI,MAAM,GAAG,GAAI,CAAC,SAAS,SAAS,IAAI,CAAC,OAAO,CAAC,EAAE,EACpD,OAAO,CAAC,KACP,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAE,CAM/D,CAAC;IAEJ;;;;;;;;;;;OAWG;IACI,MAAM,KAAK,GAAI,IAAI,MAAM,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,CACuB,CAAC;IAEvF;;;;;;;;;;;OAWG;IACI,MAAM,MAAM,GAChB,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,EAAE,CAa3E,CAAC;IAEJ;;;;;;;;;;;OAWG;IACI,MAAM,WAAW,GACrB,CAAC,EAAE,SAAS;QAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,MAAM,MAAM,IAAI,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,CAAC,CAUnF,CAAC;IAEJ;;;;;;;;;;;;OAYG;IACI,MAAM,OAAO,GACjB,CAAC,EAAE,IAAI,MAAM,EAAE,WAAW,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,KAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAW3E,CAAC;CACL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskOption.d.ts","sourceRoot":"","sources":["../../../src/src/Core/TaskOption.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAE5C,yBAAiB,UAAU,CAAC;IAC1B;;OAEG;IACI,MAAM,
|
|
1
|
+
{"version":3,"file":"TaskOption.d.ts","sourceRoot":"","sources":["../../../src/src/Core/TaskOption.ts"],"names":[],"mappings":"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"}
|