@nlozgachev/pipelined 0.54.0 → 0.56.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.
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Duration
3
- } from "./chunk-DENXUTKL.mjs";
3
+ } from "./chunk-OIIOGDHK.js";
4
4
 
5
5
  // src/Core/Combinable.ts
6
6
  var Combinable;
@@ -1575,8 +1575,8 @@ var Resource;
1575
1575
  release
1576
1576
  });
1577
1577
  })(from = Resource2.from || (Resource2.from = {}));
1578
- Resource2.use = (f) => (resource) => Task.from.Promise(
1579
- (signal) => Deferred.to.Promise(resource.acquire(signal)).then(async (acquired) => {
1578
+ Resource2.use = (f) => (resource) => (signal) => Deferred.from.Promise(
1579
+ Deferred.to.Promise(resource.acquire(signal)).then(async (acquired) => {
1580
1580
  if (Result.is.err(acquired)) {
1581
1581
  return acquired;
1582
1582
  }
@@ -1590,8 +1590,8 @@ var Resource;
1590
1590
  })
1591
1591
  );
1592
1592
  Resource2.combine = (resourceA, resourceB) => ({
1593
- acquire: Task.from.Promise(
1594
- (signal) => Deferred.to.Promise(resourceA.acquire(signal)).then(async (acquiredA) => {
1593
+ acquire: (signal) => Deferred.from.Promise(
1594
+ Deferred.to.Promise(resourceA.acquire(signal)).then(async (acquiredA) => {
1595
1595
  if (Result.is.err(acquiredA)) {
1596
1596
  return acquiredA;
1597
1597
  }
@@ -1604,8 +1604,8 @@ var Resource;
1604
1604
  return Result.make.ok([a, acquiredB.value]);
1605
1605
  })
1606
1606
  ),
1607
- release: ([a, b]) => Task.from.Promise(
1608
- (signal) => Deferred.to.Promise(resourceB.release(b)(signal)).then(() => Deferred.to.Promise(resourceA.release(a)(signal)))
1607
+ release: ([a, b]) => (signal) => Deferred.from.Promise(
1608
+ Deferred.to.Promise(resourceB.release(b)(signal)).then(() => Deferred.to.Promise(resourceA.release(a)(signal)))
1609
1609
  )
1610
1610
  });
1611
1611
  })(Resource || (Resource = {}));
@@ -1653,13 +1653,6 @@ var Result;
1653
1653
  from2.Predicate = (pred, onFalse) => (a) => pred(a) ? make.ok(a) : make.err(onFalse(a));
1654
1654
  from2.nullable = (onNull) => (value) => value === null || value === void 0 ? make.err(onNull()) : make.ok(value);
1655
1655
  from2.Maybe = (onNone) => (maybe) => Maybe.is.none(maybe) ? make.err(onNone()) : make.ok(maybe.value);
1656
- from2.throwable = (f, options) => (...args) => {
1657
- try {
1658
- return make.ok(f(...args));
1659
- } catch (error) {
1660
- return make.err(options.onError(error));
1661
- }
1662
- };
1663
1656
  from2.Validation = (combineErrors) => (val) => Validation.is.passed(val) ? make.ok(val.value) : make.err(combineErrors(val.errors));
1664
1657
  })(from = Result4.from || (Result4.from = {}));
1665
1658
  Result4.recover = (fallback) => (data) => is.ok(data) ? data : fallback(data.error);
@@ -1879,15 +1872,13 @@ var TaskMaybe;
1879
1872
  from2.Result = (result) => Task.resolve(Result.to.Maybe(result));
1880
1873
  from2.Task = (task) => Task.map(Maybe.make.some)(task);
1881
1874
  })(from = TaskMaybe2.from || (TaskMaybe2.from = {}));
1882
- TaskMaybe2.tryCatch = (f) => Task.from.Promise(
1883
- (signal) => Promise.resolve(f(signal)).then(Maybe.make.some).catch(() => Maybe.make.none())
1884
- );
1875
+ TaskMaybe2.tryCatch = (f) => (signal) => Deferred.from.Promise(Promise.resolve(f(signal)).then(Maybe.make.some).catch(() => Maybe.make.none()));
1885
1876
  TaskMaybe2.map = (f) => (data) => Task.map(Maybe.map(f))(data);
1886
1877
  TaskMaybe2.chain = (f) => (data) => Task.chain(
1887
1878
  (option) => Maybe.is.some(option) ? f(option.value) : Task.resolve(Maybe.make.none())
1888
1879
  )(data);
1889
- TaskMaybe2.ap = (arg) => (data) => Task.from.Promise(
1890
- (signal) => Promise.all([Deferred.to.Promise(data(signal)), Deferred.to.Promise(arg(signal))]).then(
1880
+ TaskMaybe2.ap = (arg) => (data) => (signal) => Deferred.from.Promise(
1881
+ Promise.all([Deferred.to.Promise(data(signal)), Deferred.to.Promise(arg(signal))]).then(
1891
1882
  ([of_, oa]) => Maybe.ap(oa)(of_)
1892
1883
  )
1893
1884
  );
@@ -1907,7 +1898,7 @@ var TaskMaybe;
1907
1898
  TaskMaybe2.recover = (fallback) => (data) => Task.chain((maybe) => Maybe.is.none(maybe) ? fallback() : Task.resolve(maybe))(
1908
1899
  data
1909
1900
  );
1910
- TaskMaybe2.struct = (fields) => Task.from.Promise((signal) => {
1901
+ TaskMaybe2.struct = (fields) => (signal) => Deferred.from.Promise((() => {
1911
1902
  const keys = Object.keys(fields);
1912
1903
  const promises = keys.map((key) => Deferred.to.Promise(fields[key](signal)));
1913
1904
  return Promise.all(promises).then((results) => {
@@ -1921,7 +1912,8 @@ var TaskMaybe;
1921
1912
  }
1922
1913
  return Maybe.make.some(record);
1923
1914
  });
1924
- });
1915
+ })());
1916
+ TaskMaybe2.memoize = (task) => Task.memoize(task);
1925
1917
  })(TaskMaybe || (TaskMaybe = {}));
1926
1918
 
1927
1919
  // src/Core/TaskResult.ts
@@ -1939,16 +1931,15 @@ var TaskResult;
1939
1931
  from2.nullable = (onNull) => (value) => Task.resolve(value === null || value === void 0 ? Result.make.err(onNull()) : Result.make.ok(value));
1940
1932
  from2.Maybe = (onNone) => (maybe) => Task.resolve(Maybe.is.none(maybe) ? Result.make.err(onNone()) : Result.make.ok(maybe.value));
1941
1933
  from2.Result = (result) => Task.resolve(result);
1942
- from2.throwable = (f, options) => (...args) => Task.from.Promise(
1943
- () => f(...args).then(Result.make.ok).catch((error) => Result.make.err(options.onError(error)))
1944
- );
1945
1934
  })(from = TaskResult2.from || (TaskResult2.from = {}));
1946
1935
  let to;
1947
1936
  ((to2) => {
1948
1937
  to2.Maybe = (data) => Task.map(Result.to.Maybe)(data);
1949
1938
  })(to = TaskResult2.to || (TaskResult2.to = {}));
1950
- TaskResult2.tryCatch = (f, options) => Task.from.Promise(
1951
- (signal) => Promise.resolve(f(signal)).then(Result.make.ok).catch((error) => Result.make.err(options.onError(error)))
1939
+ TaskResult2.tryCatch = (f, options) => (signal) => Deferred.from.Promise(
1940
+ globalThis.Promise.resolve().then(async () => f(signal)).then(Result.make.ok).catch(
1941
+ (error) => Result.make.err(options.onError(error))
1942
+ )
1952
1943
  );
1953
1944
  TaskResult2.map = (f) => (data) => Task.map(Result.map(f))(data);
1954
1945
  TaskResult2.mapError = (f) => (data) => Task.map(Result.mapError(f))(data);
@@ -1963,8 +1954,8 @@ var TaskResult;
1963
1954
  TaskResult2.getOrElse = (defaultValue) => (data) => Task.map(Result.getOrElse(defaultValue))(data);
1964
1955
  TaskResult2.tap = (f) => (data) => Task.map(Result.tap(f))(data);
1965
1956
  TaskResult2.tapError = (f) => (data) => Task.map(Result.tapError(f))(data);
1966
- TaskResult2.ap = (arg) => (data) => Task.from.Promise(
1967
- (signal) => Promise.all([Deferred.to.Promise(data(signal)), Deferred.to.Promise(arg(signal))]).then(
1957
+ TaskResult2.ap = (arg) => (data) => (signal) => Deferred.from.Promise(
1958
+ Promise.all([Deferred.to.Promise(data(signal)), Deferred.to.Promise(arg(signal))]).then(
1968
1959
  ([of_, oa]) => Result.ap(oa)(of_)
1969
1960
  )
1970
1961
  );
@@ -1973,7 +1964,7 @@ var TaskResult;
1973
1964
  TaskResult2.bind = (key, f) => (data) => (0, TaskResult2.chain)(
1974
1965
  (a) => (0, TaskResult2.map)((b) => ({ ...a, [key]: b }))(f(a))
1975
1966
  )(data);
1976
- TaskResult2.struct = (fields) => Task.from.Promise((signal) => {
1967
+ TaskResult2.struct = (fields) => (signal) => Deferred.from.Promise((() => {
1977
1968
  const keys = Object.keys(fields);
1978
1969
  const promises = keys.map((key) => Deferred.to.Promise(fields[key](signal)));
1979
1970
  return Promise.all(promises).then((results) => {
@@ -1987,8 +1978,8 @@ var TaskResult;
1987
1978
  }
1988
1979
  return Result.make.ok(record);
1989
1980
  });
1990
- });
1991
- TaskResult2.retry = (policy) => (task) => Task.from.Promise((signal) => {
1981
+ })());
1982
+ TaskResult2.retry = (policy) => (task) => (signal) => Deferred.from.Promise((() => {
1992
1983
  const { attempts } = policy;
1993
1984
  const wait = (duration) => new Promise((res) => {
1994
1985
  let timerId;
@@ -2015,11 +2006,11 @@ var TaskResult;
2015
2006
  return wait(delay).then(() => executeAttempt(attempt + 1));
2016
2007
  });
2017
2008
  return executeAttempt(1);
2018
- });
2009
+ })());
2019
2010
  TaskResult2.memoize = (task) => Task.memoize(task);
2020
- TaskResult2.timeout = (options) => (task) => Task.from.Promise((signal) => {
2021
- const ms = Duration.to.milliseconds(options.duration);
2022
- return new Promise((resolve) => {
2011
+ TaskResult2.timeout = (options) => (task) => (signal) => Deferred.from.Promise(
2012
+ new Promise((resolve) => {
2013
+ const ms = Duration.to.milliseconds(options.duration);
2023
2014
  let timerId;
2024
2015
  const onAbort = () => {
2025
2016
  clearTimeout(timerId);
@@ -2039,9 +2030,9 @@ var TaskResult;
2039
2030
  signal?.removeEventListener("abort", onAbort);
2040
2031
  resolve(res);
2041
2032
  });
2042
- });
2043
- });
2044
- TaskResult2.allSettled = (tasks) => Task.from.Promise((signal) => Promise.all(tasks.map((task) => Deferred.to.Promise(task(signal)))));
2033
+ })
2034
+ );
2035
+ TaskResult2.allSettled = (tasks) => (signal) => Deferred.from.Promise(Promise.all(tasks.map((task) => Deferred.to.Promise(task(signal)))));
2045
2036
  })(TaskResult || (TaskResult = {}));
2046
2037
 
2047
2038
  // src/internal/InternalTypes.ts
@@ -2070,14 +2061,14 @@ var TaskValidation;
2070
2061
  );
2071
2062
  from2.Result = (result) => Task.resolve(Validation.from.Result(result));
2072
2063
  })(from = TaskValidation2.from || (TaskValidation2.from = {}));
2073
- TaskValidation2.tryCatch = (f, onError) => Task.from.Promise(
2074
- (signal) => Promise.resolve(f(signal)).then(Validation.make.passed).catch(
2075
- (error) => Validation.make.failed(onError(error))
2064
+ TaskValidation2.tryCatch = (f, options) => (signal) => Deferred.from.Promise(
2065
+ globalThis.Promise.resolve().then(async () => f(signal)).then(Validation.make.passed).catch(
2066
+ (error) => Validation.make.failed(options.onError(error))
2076
2067
  )
2077
2068
  );
2078
2069
  TaskValidation2.map = (f) => (data) => Task.map(Validation.map(f))(data);
2079
- TaskValidation2.ap = (arg) => (data) => Task.from.Promise(
2080
- (signal) => Promise.all([Deferred.to.Promise(data(signal)), Deferred.to.Promise(arg(signal))]).then(
2070
+ TaskValidation2.ap = (arg) => (data) => (signal) => Deferred.from.Promise(
2071
+ Promise.all([Deferred.to.Promise(data(signal)), Deferred.to.Promise(arg(signal))]).then(
2081
2072
  ([vf, va]) => Validation.ap(va)(vf)
2082
2073
  )
2083
2074
  );
@@ -2088,20 +2079,20 @@ var TaskValidation;
2088
2079
  TaskValidation2.recover = (fallback) => (data) => Task.chain(
2089
2080
  (validation) => Validation.is.passed(validation) ? Task.resolve(validation) : fallback(validation.errors)
2090
2081
  )(data);
2091
- TaskValidation2.product = (first, second) => Task.from.Promise(
2092
- (signal) => Promise.all([Deferred.to.Promise(first(signal)), Deferred.to.Promise(second(signal))]).then(
2082
+ TaskValidation2.product = (first, second) => (signal) => Deferred.from.Promise(
2083
+ Promise.all([Deferred.to.Promise(first(signal)), Deferred.to.Promise(second(signal))]).then(
2093
2084
  ([va, vb]) => Validation.product(va, vb)
2094
2085
  )
2095
2086
  );
2096
- TaskValidation2.productAll = (data) => Task.from.Promise(
2097
- (signal) => Promise.all(data.map((t) => Deferred.to.Promise(t(signal)))).then((results) => {
2087
+ TaskValidation2.productAll = (data) => (signal) => Deferred.from.Promise(
2088
+ Promise.all(data.map((t) => Deferred.to.Promise(t(signal)))).then((results) => {
2098
2089
  const [first, ...rest] = results;
2099
2090
  return Validation.productAll([first, ...rest]);
2100
2091
  })
2101
2092
  );
2102
2093
  TaskValidation2.mapError = (f) => (data) => Task.map(Validation.mapError(f))(data);
2103
2094
  TaskValidation2.tapError = (f) => (data) => Task.map(Validation.tapError(f))(data);
2104
- TaskValidation2.struct = (fields) => Task.from.Promise((signal) => {
2095
+ TaskValidation2.struct = (fields) => (signal) => Deferred.from.Promise((() => {
2105
2096
  const keys = Object.keys(fields);
2106
2097
  const promises = keys.map((key) => Deferred.to.Promise(fields[key](signal)));
2107
2098
  return Promise.all(promises).then((results) => {
@@ -2117,33 +2108,35 @@ var TaskValidation;
2117
2108
  }
2118
2109
  return isNonEmptyArr(errors) ? Validation.make.failedAll(errors) : Validation.make.passed(record);
2119
2110
  });
2120
- });
2111
+ })());
2112
+ TaskValidation2.memoize = (task) => Task.memoize(task);
2121
2113
  })(TaskValidation || (TaskValidation = {}));
2122
2114
 
2123
2115
  // src/Core/Task.ts
2124
2116
  var toPromise = (task, signal) => Deferred.to.Promise(task(signal));
2117
+ var fromPromise = (f) => (signal) => Deferred.from.Promise(f(signal));
2125
2118
  var getMs2 = (duration) => Duration.to.milliseconds(duration);
2126
2119
  var Task;
2127
2120
  ((Task2) => {
2128
2121
  Task2.resolve = (value) => () => Deferred.from.Promise(globalThis.Promise.resolve(value));
2129
2122
  let from;
2130
2123
  ((from2) => {
2131
- from2.Promise = (f) => (signal) => Deferred.from.Promise(f(signal));
2132
2124
  from2.sync = (f) => () => Deferred.from.Promise(globalThis.Promise.resolve(f()));
2133
2125
  })(from = Task2.from || (Task2.from = {}));
2134
- Task2.map = (f) => (data) => from.Promise((signal) => toPromise(data, signal).then(f));
2135
- Task2.chain = (f) => (data) => from.Promise((signal) => toPromise(data, signal).then((a) => toPromise(f(a), signal)));
2136
- Task2.ap = (arg) => (data) => from.Promise((signal) => Promise.all([toPromise(data, signal), toPromise(arg, signal)]).then(([f, a]) => f(a)));
2137
- Task2.tap = (f) => (data) => from.Promise(
2126
+ Task2.tryCatch = (f, options) => fromPromise((signal) => globalThis.Promise.resolve().then(() => f(signal)).catch((err2) => options.onError(err2)));
2127
+ Task2.map = (f) => (data) => fromPromise((signal) => toPromise(data, signal).then(f));
2128
+ Task2.chain = (f) => (data) => fromPromise((signal) => toPromise(data, signal).then((a) => toPromise(f(a), signal)));
2129
+ Task2.ap = (arg) => (data) => fromPromise((signal) => Promise.all([toPromise(data, signal), toPromise(arg, signal)]).then(([f, a]) => f(a)));
2130
+ Task2.tap = (f) => (data) => fromPromise(
2138
2131
  (signal) => toPromise(data, signal).then((a) => {
2139
2132
  f(a);
2140
2133
  return a;
2141
2134
  })
2142
2135
  );
2143
- Task2.all = (tasks) => from.Promise(
2136
+ Task2.all = (tasks) => fromPromise(
2144
2137
  (signal) => Promise.all(tasks.map((t) => toPromise(t, signal)))
2145
2138
  );
2146
- Task2.delay = (duration) => (data) => from.Promise(
2139
+ Task2.delay = (duration) => (data) => fromPromise(
2147
2140
  (signal) => new Promise((res) => {
2148
2141
  let timerId;
2149
2142
  const onAbort = () => {
@@ -2162,7 +2155,7 @@ var Task;
2162
2155
  }, getMs2(duration));
2163
2156
  })
2164
2157
  );
2165
- Task2.repeat = (options) => (task) => from.Promise((signal) => {
2158
+ Task2.repeat = (options) => (task) => fromPromise((signal) => {
2166
2159
  const { times, delay: delayDuration } = options;
2167
2160
  if (times <= 0) {
2168
2161
  return Promise.resolve([]);
@@ -2196,7 +2189,7 @@ var Task;
2196
2189
  };
2197
2190
  return run2(times);
2198
2191
  });
2199
- Task2.repeatUntil = (options) => (task) => from.Promise((signal) => {
2192
+ Task2.repeatUntil = (options) => (task) => fromPromise((signal) => {
2200
2193
  const { when: predicate, delay: delayDuration, maxAttempts } = options;
2201
2194
  const wait = () => new Promise((r) => {
2202
2195
  let timerId;
@@ -2236,7 +2229,7 @@ var Task;
2236
2229
  return () => Deferred.from.Promise(new Promise(() => {
2237
2230
  }));
2238
2231
  }
2239
- return from.Promise((outerSignal) => {
2232
+ return fromPromise((outerSignal) => {
2240
2233
  const controllers = tasks.map(() => new AbortController());
2241
2234
  const onOuterAbort = () => {
2242
2235
  for (const ctrl of controllers) {
@@ -2265,8 +2258,8 @@ var Task;
2265
2258
  return Promise.race(promises);
2266
2259
  });
2267
2260
  };
2268
- Task2.sequence = (tasks) => from.Promise((signal) => Promise.all(tasks.map((t) => toPromise(t, signal))));
2269
- Task2.sequential = (tasks) => from.Promise(async (signal) => {
2261
+ Task2.sequence = (tasks) => fromPromise((signal) => Promise.all(tasks.map((t) => toPromise(t, signal))));
2262
+ Task2.sequential = (tasks) => fromPromise(async (signal) => {
2270
2263
  const results = [];
2271
2264
  for (const task of tasks) {
2272
2265
  if (signal?.aborted) {
@@ -2276,7 +2269,7 @@ var Task;
2276
2269
  }
2277
2270
  return results;
2278
2271
  });
2279
- Task2.timeout = (options) => (task) => from.Promise((outerSignal) => {
2272
+ Task2.timeout = (options) => (task) => fromPromise((outerSignal) => {
2280
2273
  const { duration, onTimeout } = options;
2281
2274
  const controller = new AbortController();
2282
2275
  let timerId;