@nlozgachev/pipelined 0.33.0 → 0.34.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.
@@ -2,44 +2,54 @@
2
2
  function compose(f0, f1, f2, f3, f4, f5, f6, f7, f8, f9) {
3
3
  const len = arguments.length;
4
4
  switch (len) {
5
- case 1:
5
+ case 1: {
6
6
  return f0;
7
- case 2:
7
+ }
8
+ case 2: {
8
9
  return function() {
9
10
  return f0(f1.apply(this, arguments));
10
11
  };
11
- case 3:
12
+ }
13
+ case 3: {
12
14
  return function() {
13
15
  return f0(f1(f2.apply(this, arguments)));
14
16
  };
15
- case 4:
17
+ }
18
+ case 4: {
16
19
  return function() {
17
20
  return f0(f1(f2(f3.apply(this, arguments))));
18
21
  };
19
- case 5:
22
+ }
23
+ case 5: {
20
24
  return function() {
21
25
  return f0(f1(f2(f3(f4.apply(this, arguments)))));
22
26
  };
23
- case 6:
27
+ }
28
+ case 6: {
24
29
  return function() {
25
30
  return f0(f1(f2(f3(f4(f5.apply(this, arguments))))));
26
31
  };
27
- case 7:
32
+ }
33
+ case 7: {
28
34
  return function() {
29
35
  return f0(f1(f2(f3(f4(f5(f6.apply(this, arguments)))))));
30
36
  };
31
- case 8:
37
+ }
38
+ case 8: {
32
39
  return function() {
33
40
  return f0(f1(f2(f3(f4(f5(f6(f7.apply(this, arguments))))))));
34
41
  };
35
- case 9:
42
+ }
43
+ case 9: {
36
44
  return function() {
37
45
  return f0(f1(f2(f3(f4(f5(f6(f7(f8.apply(this, arguments)))))))));
38
46
  };
39
- case 10:
47
+ }
48
+ case 10: {
40
49
  return function() {
41
50
  return f0(f1(f2(f3(f4(f5(f6(f7(f8(f9.apply(this, arguments))))))))));
42
51
  };
52
+ }
43
53
  }
44
54
  }
45
55
 
@@ -60,48 +70,59 @@ var flip = (f) => (b) => (a) => f(a)(b);
60
70
  function flow(ab, bc, cd, de, ef, fg, gh, hi, ij, jk) {
61
71
  const len = arguments.length;
62
72
  switch (len) {
63
- case 0:
73
+ case 0: {
64
74
  return function(...args) {
65
75
  return args[0];
66
76
  };
67
- case 1:
77
+ }
78
+ case 1: {
68
79
  return ab;
69
- case 2:
80
+ }
81
+ case 2: {
70
82
  return function() {
71
83
  return bc(ab.apply(this, arguments));
72
84
  };
73
- case 3:
85
+ }
86
+ case 3: {
74
87
  return function() {
75
88
  return cd(bc(ab.apply(this, arguments)));
76
89
  };
77
- case 4:
90
+ }
91
+ case 4: {
78
92
  return function() {
79
93
  return de(cd(bc(ab.apply(this, arguments))));
80
94
  };
81
- case 5:
95
+ }
96
+ case 5: {
82
97
  return function() {
83
98
  return ef(de(cd(bc(ab.apply(this, arguments)))));
84
99
  };
85
- case 6:
100
+ }
101
+ case 6: {
86
102
  return function() {
87
103
  return fg(ef(de(cd(bc(ab.apply(this, arguments))))));
88
104
  };
89
- case 7:
105
+ }
106
+ case 7: {
90
107
  return function() {
91
108
  return gh(fg(ef(de(cd(bc(ab.apply(this, arguments)))))));
92
109
  };
93
- case 8:
110
+ }
111
+ case 8: {
94
112
  return function() {
95
113
  return hi(gh(fg(ef(de(cd(bc(ab.apply(this, arguments))))))));
96
114
  };
97
- case 9:
115
+ }
116
+ case 9: {
98
117
  return function() {
99
118
  return ij(hi(gh(fg(ef(de(cd(bc(ab.apply(this, arguments)))))))));
100
119
  };
101
- case 10:
120
+ }
121
+ case 10: {
102
122
  return function() {
103
123
  return jk(ij(hi(gh(fg(ef(de(cd(bc(ab.apply(this, arguments))))))))));
104
124
  };
125
+ }
105
126
  }
106
127
  }
107
128
 
@@ -167,28 +188,39 @@ var on = (f, g) => (a, b) => f(g(a), g(b));
167
188
  // src/Composition/pipe.ts
168
189
  function pipe(a, ab, bc, cd, de, ef, fg, gh, hi, ij, jk) {
169
190
  switch (arguments.length) {
170
- case 1:
191
+ case 1: {
171
192
  return a;
172
- case 2:
193
+ }
194
+ case 2: {
173
195
  return ab(a);
174
- case 3:
196
+ }
197
+ case 3: {
175
198
  return bc(ab(a));
176
- case 4:
199
+ }
200
+ case 4: {
177
201
  return cd(bc(ab(a)));
178
- case 5:
202
+ }
203
+ case 5: {
179
204
  return de(cd(bc(ab(a))));
180
- case 6:
205
+ }
206
+ case 6: {
181
207
  return ef(de(cd(bc(ab(a)))));
182
- case 7:
208
+ }
209
+ case 7: {
183
210
  return fg(ef(de(cd(bc(ab(a))))));
184
- case 8:
211
+ }
212
+ case 8: {
185
213
  return gh(fg(ef(de(cd(bc(ab(a)))))));
186
- case 9:
214
+ }
215
+ case 9: {
187
216
  return hi(gh(fg(ef(de(cd(bc(ab(a))))))));
188
- case 10:
217
+ }
218
+ case 10: {
189
219
  return ij(hi(gh(fg(ef(de(cd(bc(ab(a)))))))));
190
- case 11:
220
+ }
221
+ case 11: {
191
222
  return jk(ij(hi(gh(fg(ef(de(cd(bc(ab(a))))))))));
223
+ }
192
224
  }
193
225
  }
194
226
 
@@ -14,7 +14,7 @@ var Maybe;
14
14
  Maybe2.toNullable = (data) => (0, Maybe2.isSome)(data) ? data.value : null;
15
15
  Maybe2.toUndefined = (data) => (0, Maybe2.isSome)(data) ? data.value : void 0;
16
16
  Maybe2.fromPredicate = (pred) => (a) => pred(a) ? (0, Maybe2.some)(a) : (0, Maybe2.none)();
17
- Maybe2.toResult = (onNone) => (data) => (0, Maybe2.isSome)(data) ? Result.ok(data.value) : Result.error(onNone());
17
+ Maybe2.toResult = (onNone) => (data) => (0, Maybe2.isSome)(data) ? Result.ok(data.value) : Result.err(onNone());
18
18
  Maybe2.fromResult = (data) => Result.isOk(data) ? (0, Maybe2.some)(data.value) : (0, Maybe2.none)();
19
19
  Maybe2.map = (f) => (data) => (0, Maybe2.isSome)(data) ? (0, Maybe2.some)(f(data.value)) : data;
20
20
  Maybe2.chain = (f) => (data) => (0, Maybe2.isSome)(data) ? f(data.value) : data;
@@ -22,7 +22,9 @@ var Maybe;
22
22
  Maybe2.match = (cases) => (data) => (0, Maybe2.isSome)(data) ? cases.some(data.value) : cases.none();
23
23
  Maybe2.getOrElse = (defaultValue) => (data) => (0, Maybe2.isSome)(data) ? data.value : defaultValue();
24
24
  Maybe2.tap = (f) => (data) => {
25
- if ((0, Maybe2.isSome)(data)) f(data.value);
25
+ if ((0, Maybe2.isSome)(data)) {
26
+ f(data.value);
27
+ }
26
28
  return data;
27
29
  };
28
30
  Maybe2.filter = (predicate) => (data) => (0, Maybe2.isSome)(data) ? predicate(data.value) ? data : (0, Maybe2.none)() : data;
@@ -34,44 +36,48 @@ var Maybe;
34
36
  var Result;
35
37
  ((Result2) => {
36
38
  Result2.ok = (value) => ({ kind: "Ok", value });
37
- Result2.error = (e) => ({ kind: "Error", error: e });
39
+ Result2.err = (e) => ({ kind: "Err", error: e });
38
40
  Result2.isOk = (data) => data.kind === "Ok";
39
- Result2.isError = (data) => data.kind === "Error";
41
+ Result2.isErr = (data) => data.kind === "Err";
40
42
  Result2.tryCatch = (f, onError) => {
41
43
  try {
42
44
  return (0, Result2.ok)(f());
43
- } catch (e) {
44
- return (0, Result2.error)(onError(e));
45
+ } catch (error) {
46
+ return (0, Result2.err)(onError(error));
45
47
  }
46
48
  };
47
49
  Result2.map = (f) => (data) => (0, Result2.isOk)(data) ? (0, Result2.ok)(f(data.value)) : data;
48
- Result2.mapError = (f) => (data) => (0, Result2.isError)(data) ? (0, Result2.error)(f(data.error)) : data;
50
+ Result2.mapError = (f) => (data) => (0, Result2.isErr)(data) ? (0, Result2.err)(f(data.error)) : data;
49
51
  Result2.chain = (f) => (data) => (0, Result2.isOk)(data) ? f(data.value) : data;
50
52
  Result2.fold = (onErr, onOk) => (data) => (0, Result2.isOk)(data) ? onOk(data.value) : onErr(data.error);
51
53
  Result2.match = (cases) => (data) => (0, Result2.isOk)(data) ? cases.ok(data.value) : cases.err(data.error);
52
54
  Result2.getOrElse = (defaultValue) => (data) => (0, Result2.isOk)(data) ? data.value : defaultValue();
53
55
  Result2.tap = (f) => (data) => {
54
- if ((0, Result2.isOk)(data)) f(data.value);
56
+ if ((0, Result2.isOk)(data)) {
57
+ f(data.value);
58
+ }
55
59
  return data;
56
60
  };
57
61
  Result2.tapError = (f) => (data) => {
58
- if ((0, Result2.isError)(data)) f(data.error);
62
+ if ((0, Result2.isErr)(data)) {
63
+ f(data.error);
64
+ }
59
65
  return data;
60
66
  };
61
- Result2.fromPredicate = (pred, onFalse) => (a) => pred(a) ? (0, Result2.ok)(a) : (0, Result2.error)(onFalse(a));
62
- Result2.fromNullable = (onNull) => (value) => value === null || value === void 0 ? (0, Result2.error)(onNull()) : (0, Result2.ok)(value);
63
- Result2.fromMaybe = (onNone) => (maybe) => Maybe.isNone(maybe) ? (0, Result2.error)(onNone()) : (0, Result2.ok)(maybe.value);
67
+ Result2.fromPredicate = (pred, onFalse) => (a) => pred(a) ? (0, Result2.ok)(a) : (0, Result2.err)(onFalse(a));
68
+ Result2.fromNullable = (onNull) => (value) => value === null || value === void 0 ? (0, Result2.err)(onNull()) : (0, Result2.ok)(value);
69
+ Result2.fromMaybe = (onNone) => (maybe) => Maybe.isNone(maybe) ? (0, Result2.err)(onNone()) : (0, Result2.ok)(maybe.value);
64
70
  Result2.fromThrowable = (f, onError) => (...args) => {
65
71
  try {
66
72
  return (0, Result2.ok)(f(...args));
67
- } catch (e) {
68
- return (0, Result2.error)(onError(e));
73
+ } catch (error) {
74
+ return (0, Result2.err)(onError(error));
69
75
  }
70
76
  };
71
77
  Result2.recover = (fallback) => (data) => (0, Result2.isOk)(data) ? data : fallback(data.error);
72
- Result2.recoverUnless = (isBlocked, fallback) => (data) => (0, Result2.isError)(data) && !isBlocked(data.error) ? fallback() : data;
78
+ Result2.recoverUnless = (isBlocked, fallback) => (data) => (0, Result2.isErr)(data) && !isBlocked(data.error) ? fallback() : data;
73
79
  Result2.toMaybe = (data) => (0, Result2.isOk)(data) ? Maybe.some(data.value) : Maybe.none();
74
- Result2.ap = (arg) => (data) => (0, Result2.isOk)(data) && (0, Result2.isOk)(arg) ? (0, Result2.ok)(data.value(arg.value)) : (0, Result2.isError)(data) ? data : arg;
80
+ Result2.ap = (arg) => (data) => (0, Result2.isOk)(data) && (0, Result2.isOk)(arg) ? (0, Result2.ok)(data.value(arg.value)) : (0, Result2.isErr)(data) ? data : arg;
75
81
  })(Result || (Result = {}));
76
82
 
77
83
  // src/Core/Deferred.ts
@@ -86,7 +92,7 @@ var Deferred;
86
92
 
87
93
  // src/Core/Task.ts
88
94
  var toPromise = (task, signal) => Deferred.toPromise(task(signal));
89
- var getMs = (ms) => typeof ms === "number" ? ms : Duration.toMilliseconds(ms);
95
+ var getMs = (duration) => Duration.toMilliseconds(duration);
90
96
  var Task;
91
97
  ((Task2) => {
92
98
  Task2.resolve = (value) => () => Deferred.fromPromise(Promise.resolve(value));
@@ -94,12 +100,7 @@ var Task;
94
100
  Task2.fromSync = (f) => () => Deferred.fromPromise(Promise.resolve(f()));
95
101
  Task2.map = (f) => (data) => (0, Task2.from)((signal) => toPromise(data, signal).then(f));
96
102
  Task2.chain = (f) => (data) => (0, Task2.from)((signal) => toPromise(data, signal).then((a) => toPromise(f(a), signal)));
97
- Task2.ap = (arg) => (data) => (0, Task2.from)(
98
- (signal) => Promise.all([
99
- toPromise(data, signal),
100
- toPromise(arg, signal)
101
- ]).then(([f, a]) => f(a))
102
- );
103
+ Task2.ap = (arg) => (data) => (0, Task2.from)((signal) => Promise.all([toPromise(data, signal), toPromise(arg, signal)]).then(([f, a]) => f(a)));
103
104
  Task2.tap = (f) => (data) => (0, Task2.from)(
104
105
  (signal) => toPromise(data, signal).then((a) => {
105
106
  f(a);
@@ -109,35 +110,39 @@ var Task;
109
110
  Task2.all = (tasks) => (0, Task2.from)(
110
111
  (signal) => Promise.all(tasks.map((t) => toPromise(t, signal)))
111
112
  );
112
- Task2.delay = (ms) => (data) => (0, Task2.from)(
113
- (signal) => new Promise((resolve2) => {
114
- let timerId = void 0;
113
+ Task2.delay = (duration) => (data) => (0, Task2.from)(
114
+ (signal) => new Promise((res) => {
115
+ let timerId;
115
116
  const onAbort = () => {
116
117
  if (timerId !== void 0) {
117
118
  clearTimeout(timerId);
118
119
  }
119
- resolve2(toPromise(data, signal));
120
+ res(toPromise(data, signal));
120
121
  };
121
122
  if (signal) {
122
123
  if (signal.aborted) {
123
- return resolve2(toPromise(data, signal));
124
+ return res(toPromise(data, signal));
124
125
  }
125
126
  signal.addEventListener("abort", onAbort, { once: true });
126
127
  }
127
128
  timerId = setTimeout(() => {
128
129
  signal?.removeEventListener("abort", onAbort);
129
- resolve2(toPromise(data, signal));
130
- }, getMs(ms));
130
+ res(toPromise(data, signal));
131
+ }, getMs(duration));
131
132
  })
132
133
  );
133
134
  Task2.repeat = (options) => (task) => (0, Task2.from)((signal) => {
134
- const { times, delay: ms } = options;
135
- if (times <= 0) return Promise.resolve([]);
135
+ const { times, delay: delayDuration } = options;
136
+ if (times <= 0) {
137
+ return Promise.resolve([]);
138
+ }
136
139
  const results = [];
137
140
  const wait = () => {
138
- if (signal?.aborted) return Promise.resolve();
141
+ if (signal?.aborted) {
142
+ return Promise.resolve();
143
+ }
139
144
  return new Promise((r) => {
140
- let timerId = void 0;
145
+ let timerId;
141
146
  const onAbort = () => {
142
147
  if (timerId !== void 0) {
143
148
  clearTimeout(timerId);
@@ -150,7 +155,7 @@ var Task;
150
155
  timerId = setTimeout(() => {
151
156
  signal?.removeEventListener("abort", onAbort);
152
157
  r();
153
- }, getMs(ms || 0));
158
+ }, delayDuration ? getMs(delayDuration) : 0);
154
159
  });
155
160
  };
156
161
  const run2 = (left) => {
@@ -159,18 +164,22 @@ var Task;
159
164
  }
160
165
  return toPromise(task, signal).then((a) => {
161
166
  results.push(a);
162
- if (left <= 1 || signal?.aborted) return results;
167
+ if (left <= 1 || signal?.aborted) {
168
+ return results;
169
+ }
163
170
  return wait().then(() => run2(left - 1));
164
171
  });
165
172
  };
166
173
  return run2(times);
167
174
  });
168
175
  Task2.repeatUntil = (options) => (task) => (0, Task2.from)((signal) => {
169
- const { when: predicate, delay: ms, maxAttempts } = options;
176
+ const { when: predicate, delay: delayDuration, maxAttempts } = options;
170
177
  const wait = () => {
171
- if (signal?.aborted) return Promise.resolve();
178
+ if (signal?.aborted) {
179
+ return Promise.resolve();
180
+ }
172
181
  return new Promise((r) => {
173
- let timerId = void 0;
182
+ let timerId;
174
183
  const onAbort = () => {
175
184
  if (timerId !== void 0) {
176
185
  clearTimeout(timerId);
@@ -183,7 +192,7 @@ var Task;
183
192
  timerId = setTimeout(() => {
184
193
  signal?.removeEventListener("abort", onAbort);
185
194
  r();
186
- }, getMs(ms || 0));
195
+ }, delayDuration ? getMs(delayDuration) : 0);
187
196
  });
188
197
  };
189
198
  const run2 = (attempt, lastValue) => {
@@ -191,9 +200,15 @@ var Task;
191
200
  return Promise.resolve(lastValue);
192
201
  }
193
202
  return toPromise(task, signal).then((a) => {
194
- if (predicate(a)) return a;
195
- if (maxAttempts !== void 0 && attempt >= maxAttempts) return a;
196
- if (signal?.aborted) return a;
203
+ if (predicate(a)) {
204
+ return a;
205
+ }
206
+ if (maxAttempts !== void 0 && attempt >= maxAttempts) {
207
+ return a;
208
+ }
209
+ if (signal?.aborted) {
210
+ return a;
211
+ }
197
212
  return wait().then(() => run2(attempt + 1, a));
198
213
  });
199
214
  };
@@ -207,7 +222,9 @@ var Task;
207
222
  return (0, Task2.from)((outerSignal) => {
208
223
  const controllers = tasks.map(() => new AbortController());
209
224
  const onOuterAbort = () => {
210
- for (const ctrl of controllers) ctrl.abort();
225
+ for (const ctrl of controllers) {
226
+ ctrl.abort();
227
+ }
211
228
  };
212
229
  if (outerSignal) {
213
230
  if (outerSignal.aborted) {
@@ -242,19 +259,19 @@ var Task;
242
259
  }
243
260
  return results;
244
261
  });
245
- Task2.timeout = (ms, onTimeout) => (task) => (0, Task2.from)((outerSignal) => {
262
+ Task2.timeout = (duration, onTimeout) => (task) => (0, Task2.from)((outerSignal) => {
246
263
  const controller = new AbortController();
247
264
  let timerId;
248
- const cleanUp = () => {
265
+ function cleanUp() {
249
266
  if (timerId !== void 0) {
250
267
  clearTimeout(timerId);
251
268
  }
252
269
  outerSignal?.removeEventListener("abort", onOuterAbort);
253
- };
254
- const onOuterAbort = () => {
270
+ }
271
+ function onOuterAbort() {
255
272
  cleanUp();
256
273
  controller.abort();
257
- };
274
+ }
258
275
  if (outerSignal) {
259
276
  if (outerSignal.aborted) {
260
277
  controller.abort();
@@ -267,12 +284,12 @@ var Task;
267
284
  cleanUp();
268
285
  return Result.ok(a);
269
286
  }),
270
- new Promise((resolve2) => {
287
+ new Promise((res) => {
271
288
  timerId = setTimeout(() => {
272
289
  controller.abort();
273
290
  cleanUp();
274
- resolve2(Result.error(onTimeout()));
275
- }, getMs(ms));
291
+ res(Result.err(onTimeout()));
292
+ }, getMs(duration));
276
293
  })
277
294
  ]);
278
295
  });