@nlozgachev/pipelined 0.41.0 → 0.43.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/dist/InternalTypes-DsCqxWZm.d.mts +118 -0
- package/dist/InternalTypes-DuzMFAfJ.d.ts +118 -0
- package/dist/{Task-BprUabHP.d.mts → Validation-BOPLiDqa.d.ts} +875 -111
- package/dist/{Task-Dt3ZMen6.d.ts → Validation-Do6uWLLZ.d.mts} +875 -111
- package/dist/{chunk-GBB6LVLI.mjs → chunk-74JKKJ4R.mjs} +0 -4
- package/dist/{chunk-COGQKPIP.mjs → chunk-CHRXZIJU.mjs} +204 -180
- package/dist/{chunk-V37OUM35.mjs → chunk-W6RWKBDX.mjs} +157 -69
- package/dist/{chunk-TCE2UETM.mjs → chunk-X6XQX3OZ.mjs} +4 -4
- package/dist/composition.d.mts +45 -44
- package/dist/composition.d.ts +45 -44
- package/dist/composition.js +3 -3
- package/dist/composition.mjs +2 -2
- package/dist/core.d.mts +10 -812
- package/dist/core.d.ts +10 -812
- package/dist/core.js +202 -182
- package/dist/core.mjs +2 -8
- package/dist/index.d.mts +5 -5
- package/dist/index.d.ts +5 -5
- package/dist/index.js +359 -254
- package/dist/index.mjs +5 -13
- package/dist/types.d.mts +112 -17
- package/dist/types.d.ts +112 -17
- package/dist/types.js +2 -7
- package/dist/types.mjs +3 -5
- package/dist/utils.d.mts +345 -89
- package/dist/utils.d.ts +345 -89
- package/dist/utils.js +456 -152
- package/dist/utils.mjs +3 -3
- package/package.json +2 -2
- package/dist/Duration-BTeT9D-q.d.mts +0 -127
- package/dist/Duration-BTeT9D-q.d.ts +0 -127
package/dist/core.js
CHANGED
|
@@ -38,9 +38,6 @@ __export(Core_exports, {
|
|
|
38
38
|
Result: () => Result,
|
|
39
39
|
State: () => State,
|
|
40
40
|
Task: () => Task,
|
|
41
|
-
TaskMaybe: () => TaskMaybe,
|
|
42
|
-
TaskResult: () => TaskResult3,
|
|
43
|
-
TaskValidation: () => TaskValidation,
|
|
44
41
|
These: () => These,
|
|
45
42
|
Tuple: () => Tuple,
|
|
46
43
|
Validation: () => Validation
|
|
@@ -1649,6 +1646,162 @@ var State;
|
|
|
1649
1646
|
)(data);
|
|
1650
1647
|
})(State || (State = {}));
|
|
1651
1648
|
|
|
1649
|
+
// src/Core/TaskMaybe.ts
|
|
1650
|
+
var TaskMaybe;
|
|
1651
|
+
((TaskMaybe2) => {
|
|
1652
|
+
TaskMaybe2.some = (value) => Task.resolve(Maybe.some(value));
|
|
1653
|
+
TaskMaybe2.none = () => Task.resolve(Maybe.none());
|
|
1654
|
+
TaskMaybe2.fromMaybe = (option) => Task.resolve(option);
|
|
1655
|
+
TaskMaybe2.fromNullable = (value) => Task.resolve(Maybe.fromNullable(value));
|
|
1656
|
+
TaskMaybe2.fromResult = (result) => Task.resolve(Result.toMaybe(result));
|
|
1657
|
+
TaskMaybe2.fromTask = (task) => Task.map(Maybe.some)(task);
|
|
1658
|
+
TaskMaybe2.tryCatch = (f) => Task.from((signal) => Promise.resolve(f(signal)).then(Maybe.some).catch(() => Maybe.none()));
|
|
1659
|
+
TaskMaybe2.map = (f) => (data) => Task.map(Maybe.map(f))(data);
|
|
1660
|
+
TaskMaybe2.chain = (f) => (data) => Task.chain((option) => Maybe.isSome(option) ? f(option.value) : Task.resolve(Maybe.none()))(data);
|
|
1661
|
+
TaskMaybe2.ap = (arg) => (data) => Task.from(
|
|
1662
|
+
(signal) => Promise.all([Deferred.toPromise(data(signal)), Deferred.toPromise(arg(signal))]).then(
|
|
1663
|
+
([of_, oa]) => Maybe.ap(oa)(of_)
|
|
1664
|
+
)
|
|
1665
|
+
);
|
|
1666
|
+
TaskMaybe2.fold = (onNone, onSome) => (data) => Task.map(Maybe.fold(onNone, onSome))(data);
|
|
1667
|
+
TaskMaybe2.match = (cases) => (data) => Task.map(Maybe.match(cases))(data);
|
|
1668
|
+
TaskMaybe2.getOrElse = (defaultValue) => (data) => Task.map(Maybe.getOrElse(defaultValue))(data);
|
|
1669
|
+
TaskMaybe2.tap = (f) => (data) => Task.map(Maybe.tap(f))(data);
|
|
1670
|
+
TaskMaybe2.filter = (predicate) => (data) => Task.map(Maybe.filter(predicate))(data);
|
|
1671
|
+
TaskMaybe2.toResult = (onNone) => (data) => Task.map(Maybe.toResult(onNone))(data);
|
|
1672
|
+
TaskMaybe2.bindTo = (key) => (data) => (0, TaskMaybe2.map)((a) => ({ [key]: a }))(data);
|
|
1673
|
+
TaskMaybe2.bind = (key, f) => (data) => (0, TaskMaybe2.chain)(
|
|
1674
|
+
(a) => (0, TaskMaybe2.map)((b) => ({ ...a, [key]: b }))(f(a))
|
|
1675
|
+
)(data);
|
|
1676
|
+
TaskMaybe2.recover = (fallback) => (data) => Task.chain((maybe) => Maybe.isNone(maybe) ? fallback() : Task.resolve(maybe))(data);
|
|
1677
|
+
TaskMaybe2.struct = (fields) => Task.from((signal) => {
|
|
1678
|
+
const keys = Object.keys(fields);
|
|
1679
|
+
const promises = keys.map((key) => Deferred.toPromise(fields[key](signal)));
|
|
1680
|
+
return Promise.all(promises).then((results) => {
|
|
1681
|
+
const record = {};
|
|
1682
|
+
for (let i = 0; i < keys.length; i++) {
|
|
1683
|
+
const res = results[i];
|
|
1684
|
+
if (Maybe.isNone(res)) {
|
|
1685
|
+
return res;
|
|
1686
|
+
}
|
|
1687
|
+
record[keys[i]] = res.value;
|
|
1688
|
+
}
|
|
1689
|
+
return Maybe.some(record);
|
|
1690
|
+
});
|
|
1691
|
+
});
|
|
1692
|
+
})(TaskMaybe || (TaskMaybe = {}));
|
|
1693
|
+
|
|
1694
|
+
// src/Core/TaskResult.ts
|
|
1695
|
+
var TaskResult;
|
|
1696
|
+
((TaskResult2) => {
|
|
1697
|
+
TaskResult2.ok = (value) => Task.resolve(Result.ok(value));
|
|
1698
|
+
TaskResult2.err = (error) => Task.resolve(Result.err(error));
|
|
1699
|
+
TaskResult2.fromNullable = (onNull) => (value) => Task.resolve(value === null || value === void 0 ? Result.err(onNull()) : Result.ok(value));
|
|
1700
|
+
TaskResult2.fromMaybe = (onNone) => (maybe) => Task.resolve(Maybe.isNone(maybe) ? Result.err(onNone()) : Result.ok(maybe.value));
|
|
1701
|
+
TaskResult2.fromResult = (result) => Task.resolve(result);
|
|
1702
|
+
TaskResult2.fromThrowable = (f, onError) => (...args) => Task.from(() => f(...args).then(Result.ok).catch((error) => Result.err(onError(error))));
|
|
1703
|
+
TaskResult2.tryCatch = (f, onError) => Task.from((signal) => Promise.resolve(f(signal)).then(Result.ok).catch((error) => Result.err(onError(error))));
|
|
1704
|
+
TaskResult2.map = (f) => (data) => Task.map(Result.map(f))(data);
|
|
1705
|
+
TaskResult2.mapError = (f) => (data) => Task.map(Result.mapError(f))(data);
|
|
1706
|
+
TaskResult2.chain = (f) => (data) => Task.chain((result) => Result.isOk(result) ? f(result.value) : Task.resolve(Result.err(result.error)))(
|
|
1707
|
+
data
|
|
1708
|
+
);
|
|
1709
|
+
TaskResult2.fold = (onErr, onOk) => (data) => Task.map(Result.fold(onErr, onOk))(data);
|
|
1710
|
+
TaskResult2.match = (cases) => (data) => Task.map(Result.match(cases))(data);
|
|
1711
|
+
TaskResult2.recover = (fallback) => (data) => Task.chain(
|
|
1712
|
+
(result) => Result.isErr(result) ? fallback(result.error) : Task.resolve(result)
|
|
1713
|
+
)(data);
|
|
1714
|
+
TaskResult2.getOrElse = (defaultValue) => (data) => Task.map(Result.getOrElse(defaultValue))(data);
|
|
1715
|
+
TaskResult2.tap = (f) => (data) => Task.map(Result.tap(f))(data);
|
|
1716
|
+
TaskResult2.tapError = (f) => (data) => Task.map(Result.tapError(f))(data);
|
|
1717
|
+
TaskResult2.ap = (arg) => (data) => Task.from(
|
|
1718
|
+
(signal) => Promise.all([Deferred.toPromise(data(signal)), Deferred.toPromise(arg(signal))]).then(
|
|
1719
|
+
([of_, oa]) => Result.ap(oa)(of_)
|
|
1720
|
+
)
|
|
1721
|
+
);
|
|
1722
|
+
TaskResult2.run = (signal) => (task) => task(signal);
|
|
1723
|
+
TaskResult2.bindTo = (key) => (data) => (0, TaskResult2.map)((a) => ({ [key]: a }))(data);
|
|
1724
|
+
TaskResult2.bind = (key, f) => (data) => (0, TaskResult2.chain)(
|
|
1725
|
+
(a) => (0, TaskResult2.map)((b) => ({ ...a, [key]: b }))(f(a))
|
|
1726
|
+
)(data);
|
|
1727
|
+
TaskResult2.struct = (fields) => Task.from((signal) => {
|
|
1728
|
+
const keys = Object.keys(fields);
|
|
1729
|
+
const promises = keys.map((key) => Deferred.toPromise(fields[key](signal)));
|
|
1730
|
+
return Promise.all(promises).then((results) => {
|
|
1731
|
+
const record = {};
|
|
1732
|
+
for (let i = 0; i < keys.length; i++) {
|
|
1733
|
+
const res = results[i];
|
|
1734
|
+
if (Result.isErr(res)) {
|
|
1735
|
+
return res;
|
|
1736
|
+
}
|
|
1737
|
+
record[keys[i]] = res.value;
|
|
1738
|
+
}
|
|
1739
|
+
return Result.ok(record);
|
|
1740
|
+
});
|
|
1741
|
+
});
|
|
1742
|
+
})(TaskResult || (TaskResult = {}));
|
|
1743
|
+
|
|
1744
|
+
// src/internal/InternalTypes.ts
|
|
1745
|
+
var isNonEmptyArr = (list) => list.length > 0;
|
|
1746
|
+
|
|
1747
|
+
// src/Core/TaskValidation.ts
|
|
1748
|
+
var TaskValidation;
|
|
1749
|
+
((TaskValidation2) => {
|
|
1750
|
+
TaskValidation2.passed = (value) => Task.resolve(Validation.passed(value));
|
|
1751
|
+
TaskValidation2.failed = (error) => Task.resolve(Validation.failed(error));
|
|
1752
|
+
TaskValidation2.failedAll = (errors) => Task.resolve(Validation.failedAll(errors));
|
|
1753
|
+
TaskValidation2.fromValidation = (validation) => Task.resolve(validation);
|
|
1754
|
+
TaskValidation2.fromNullable = (onNull) => (value) => Task.resolve(value === null || value === void 0 ? Validation.failed(onNull()) : Validation.passed(value));
|
|
1755
|
+
TaskValidation2.fromMaybe = (onNone) => (maybe) => Task.resolve(Maybe.isNone(maybe) ? Validation.failed(onNone()) : Validation.passed(maybe.value));
|
|
1756
|
+
TaskValidation2.fromResult = (result) => Task.resolve(Validation.fromResult(result));
|
|
1757
|
+
TaskValidation2.tryCatch = (f, onError) => Task.from(
|
|
1758
|
+
(signal) => Promise.resolve(f(signal)).then(Validation.passed).catch((error) => Validation.failed(onError(error)))
|
|
1759
|
+
);
|
|
1760
|
+
TaskValidation2.map = (f) => (data) => Task.map(Validation.map(f))(data);
|
|
1761
|
+
TaskValidation2.ap = (arg) => (data) => Task.from(
|
|
1762
|
+
(signal) => Promise.all([Deferred.toPromise(data(signal)), Deferred.toPromise(arg(signal))]).then(
|
|
1763
|
+
([vf, va]) => Validation.ap(va)(vf)
|
|
1764
|
+
)
|
|
1765
|
+
);
|
|
1766
|
+
TaskValidation2.fold = (onFailed, onPassed) => (data) => Task.map(Validation.fold(onFailed, onPassed))(data);
|
|
1767
|
+
TaskValidation2.match = (cases) => (data) => Task.map(Validation.match(cases))(data);
|
|
1768
|
+
TaskValidation2.getOrElse = (defaultValue) => (data) => Task.map(Validation.getOrElse(defaultValue))(data);
|
|
1769
|
+
TaskValidation2.tap = (f) => (data) => Task.map(Validation.tap(f))(data);
|
|
1770
|
+
TaskValidation2.recover = (fallback) => (data) => Task.chain(
|
|
1771
|
+
(validation) => Validation.isPassed(validation) ? Task.resolve(validation) : fallback(validation.errors)
|
|
1772
|
+
)(data);
|
|
1773
|
+
TaskValidation2.product = (first, second) => Task.from(
|
|
1774
|
+
(signal) => Promise.all([Deferred.toPromise(first(signal)), Deferred.toPromise(second(signal))]).then(
|
|
1775
|
+
([va, vb]) => Validation.product(va, vb)
|
|
1776
|
+
)
|
|
1777
|
+
);
|
|
1778
|
+
TaskValidation2.productAll = (data) => Task.from(
|
|
1779
|
+
(signal) => Promise.all(data.map((t) => Deferred.toPromise(t(signal)))).then((results) => {
|
|
1780
|
+
const [first, ...rest] = results;
|
|
1781
|
+
return Validation.productAll([first, ...rest]);
|
|
1782
|
+
})
|
|
1783
|
+
);
|
|
1784
|
+
TaskValidation2.mapError = (f) => (data) => Task.map(Validation.mapError(f))(data);
|
|
1785
|
+
TaskValidation2.tapError = (f) => (data) => Task.map(Validation.tapError(f))(data);
|
|
1786
|
+
TaskValidation2.struct = (fields) => Task.from((signal) => {
|
|
1787
|
+
const keys = Object.keys(fields);
|
|
1788
|
+
const promises = keys.map((key) => Deferred.toPromise(fields[key](signal)));
|
|
1789
|
+
return Promise.all(promises).then((results) => {
|
|
1790
|
+
const record = {};
|
|
1791
|
+
const errors = [];
|
|
1792
|
+
for (let i = 0; i < keys.length; i++) {
|
|
1793
|
+
const res = results[i];
|
|
1794
|
+
if (Validation.isPassed(res)) {
|
|
1795
|
+
record[keys[i]] = res.value;
|
|
1796
|
+
} else {
|
|
1797
|
+
errors.push(...res.errors);
|
|
1798
|
+
}
|
|
1799
|
+
}
|
|
1800
|
+
return isNonEmptyArr(errors) ? Validation.failedAll(errors) : Validation.passed(record);
|
|
1801
|
+
});
|
|
1802
|
+
});
|
|
1803
|
+
})(TaskValidation || (TaskValidation = {}));
|
|
1804
|
+
|
|
1652
1805
|
// src/Core/Task.ts
|
|
1653
1806
|
var toPromise = (task, signal) => Deferred.toPromise(task(signal));
|
|
1654
1807
|
var getMs2 = (duration) => Duration.toMilliseconds(duration);
|
|
@@ -1673,9 +1826,7 @@ var Task;
|
|
|
1673
1826
|
(signal) => new Promise((res) => {
|
|
1674
1827
|
let timerId;
|
|
1675
1828
|
const onAbort = () => {
|
|
1676
|
-
|
|
1677
|
-
clearTimeout(timerId);
|
|
1678
|
-
}
|
|
1829
|
+
clearTimeout(timerId);
|
|
1679
1830
|
res(toPromise(data, signal));
|
|
1680
1831
|
};
|
|
1681
1832
|
if (signal) {
|
|
@@ -1696,27 +1847,20 @@ var Task;
|
|
|
1696
1847
|
return Promise.resolve([]);
|
|
1697
1848
|
}
|
|
1698
1849
|
const results = [];
|
|
1699
|
-
const wait = () => {
|
|
1700
|
-
|
|
1701
|
-
|
|
1850
|
+
const wait = () => new Promise((r) => {
|
|
1851
|
+
let timerId;
|
|
1852
|
+
const onAbort = () => {
|
|
1853
|
+
clearTimeout(timerId);
|
|
1854
|
+
r();
|
|
1855
|
+
};
|
|
1856
|
+
if (signal) {
|
|
1857
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
1702
1858
|
}
|
|
1703
|
-
|
|
1704
|
-
|
|
1705
|
-
|
|
1706
|
-
|
|
1707
|
-
|
|
1708
|
-
}
|
|
1709
|
-
r();
|
|
1710
|
-
};
|
|
1711
|
-
if (signal) {
|
|
1712
|
-
signal.addEventListener("abort", onAbort, { once: true });
|
|
1713
|
-
}
|
|
1714
|
-
timerId = setTimeout(() => {
|
|
1715
|
-
signal?.removeEventListener("abort", onAbort);
|
|
1716
|
-
r();
|
|
1717
|
-
}, delayDuration ? getMs2(delayDuration) : 0);
|
|
1718
|
-
});
|
|
1719
|
-
};
|
|
1859
|
+
timerId = setTimeout(() => {
|
|
1860
|
+
signal?.removeEventListener("abort", onAbort);
|
|
1861
|
+
r();
|
|
1862
|
+
}, delayDuration ? getMs2(delayDuration) : 0);
|
|
1863
|
+
});
|
|
1720
1864
|
const run2 = (left) => {
|
|
1721
1865
|
if (signal?.aborted) {
|
|
1722
1866
|
return Promise.resolve(results);
|
|
@@ -1733,27 +1877,20 @@ var Task;
|
|
|
1733
1877
|
});
|
|
1734
1878
|
Task2.repeatUntil = (options) => (task) => (0, Task2.from)((signal) => {
|
|
1735
1879
|
const { when: predicate, delay: delayDuration, maxAttempts } = options;
|
|
1736
|
-
const wait = () => {
|
|
1737
|
-
|
|
1738
|
-
|
|
1880
|
+
const wait = () => new Promise((r) => {
|
|
1881
|
+
let timerId;
|
|
1882
|
+
const onAbort = () => {
|
|
1883
|
+
clearTimeout(timerId);
|
|
1884
|
+
r();
|
|
1885
|
+
};
|
|
1886
|
+
if (signal) {
|
|
1887
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
1739
1888
|
}
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
}
|
|
1746
|
-
r();
|
|
1747
|
-
};
|
|
1748
|
-
if (signal) {
|
|
1749
|
-
signal.addEventListener("abort", onAbort, { once: true });
|
|
1750
|
-
}
|
|
1751
|
-
timerId = setTimeout(() => {
|
|
1752
|
-
signal?.removeEventListener("abort", onAbort);
|
|
1753
|
-
r();
|
|
1754
|
-
}, delayDuration ? getMs2(delayDuration) : 0);
|
|
1755
|
-
});
|
|
1756
|
-
};
|
|
1889
|
+
timerId = setTimeout(() => {
|
|
1890
|
+
signal?.removeEventListener("abort", onAbort);
|
|
1891
|
+
r();
|
|
1892
|
+
}, delayDuration ? getMs2(delayDuration) : 0);
|
|
1893
|
+
});
|
|
1757
1894
|
const run2 = (attempt, lastValue) => {
|
|
1758
1895
|
if (signal?.aborted && lastValue !== void 0) {
|
|
1759
1896
|
return Promise.resolve(lastValue);
|
|
@@ -1821,16 +1958,16 @@ var Task;
|
|
|
1821
1958
|
Task2.timeout = (duration, onTimeout) => (task) => (0, Task2.from)((outerSignal) => {
|
|
1822
1959
|
const controller = new AbortController();
|
|
1823
1960
|
let timerId;
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
}
|
|
1828
|
-
outerSignal?.removeEventListener("abort", onOuterAbort);
|
|
1829
|
-
}
|
|
1830
|
-
function onOuterAbort() {
|
|
1961
|
+
let cleanUp = () => {
|
|
1962
|
+
};
|
|
1963
|
+
const onOuterAbort = () => {
|
|
1831
1964
|
cleanUp();
|
|
1832
1965
|
controller.abort();
|
|
1833
|
-
}
|
|
1966
|
+
};
|
|
1967
|
+
cleanUp = () => {
|
|
1968
|
+
clearTimeout(timerId);
|
|
1969
|
+
outerSignal?.removeEventListener("abort", onOuterAbort);
|
|
1970
|
+
};
|
|
1834
1971
|
if (outerSignal) {
|
|
1835
1972
|
if (outerSignal.aborted) {
|
|
1836
1973
|
controller.abort();
|
|
@@ -1875,123 +2012,11 @@ var Task;
|
|
|
1875
2012
|
Task2.bind = (key, f) => (data) => (0, Task2.chain)(
|
|
1876
2013
|
(a) => (0, Task2.map)((b) => ({ ...a, [key]: b }))(f(a))
|
|
1877
2014
|
)(data);
|
|
2015
|
+
Task2.Maybe = TaskMaybe;
|
|
2016
|
+
Task2.Result = TaskResult;
|
|
2017
|
+
Task2.Validation = TaskValidation;
|
|
1878
2018
|
})(Task || (Task = {}));
|
|
1879
2019
|
|
|
1880
|
-
// src/Core/TaskMaybe.ts
|
|
1881
|
-
var TaskMaybe;
|
|
1882
|
-
((TaskMaybe2) => {
|
|
1883
|
-
TaskMaybe2.some = (value) => Task.resolve(Maybe.some(value));
|
|
1884
|
-
TaskMaybe2.none = () => Task.resolve(Maybe.none());
|
|
1885
|
-
TaskMaybe2.fromMaybe = (option) => Task.resolve(option);
|
|
1886
|
-
TaskMaybe2.fromNullable = (value) => Task.resolve(Maybe.fromNullable(value));
|
|
1887
|
-
TaskMaybe2.fromResult = (result) => Task.resolve(Result.toMaybe(result));
|
|
1888
|
-
TaskMaybe2.fromTask = (task) => Task.map(Maybe.some)(task);
|
|
1889
|
-
TaskMaybe2.tryCatch = (f) => Task.from((signal) => f(signal).then(Maybe.some).catch(() => Maybe.none()));
|
|
1890
|
-
TaskMaybe2.map = (f) => (data) => Task.map(Maybe.map(f))(data);
|
|
1891
|
-
TaskMaybe2.chain = (f) => (data) => Task.chain((option) => Maybe.isSome(option) ? f(option.value) : Task.resolve(Maybe.none()))(data);
|
|
1892
|
-
TaskMaybe2.ap = (arg) => (data) => Task.from(
|
|
1893
|
-
(signal) => Promise.all([Deferred.toPromise(data(signal)), Deferred.toPromise(arg(signal))]).then(
|
|
1894
|
-
([of_, oa]) => Maybe.ap(oa)(of_)
|
|
1895
|
-
)
|
|
1896
|
-
);
|
|
1897
|
-
TaskMaybe2.fold = (onNone, onSome) => (data) => Task.map(Maybe.fold(onNone, onSome))(data);
|
|
1898
|
-
TaskMaybe2.match = (cases) => (data) => Task.map(Maybe.match(cases))(data);
|
|
1899
|
-
TaskMaybe2.getOrElse = (defaultValue) => (data) => Task.map(Maybe.getOrElse(defaultValue))(data);
|
|
1900
|
-
TaskMaybe2.tap = (f) => (data) => Task.map(Maybe.tap(f))(data);
|
|
1901
|
-
TaskMaybe2.filter = (predicate) => (data) => Task.map(Maybe.filter(predicate))(data);
|
|
1902
|
-
TaskMaybe2.toTaskResult = (onNone) => (data) => Task.map(Maybe.toResult(onNone))(data);
|
|
1903
|
-
TaskMaybe2.bindTo = (key) => (data) => (0, TaskMaybe2.map)((a) => ({ [key]: a }))(data);
|
|
1904
|
-
TaskMaybe2.bind = (key, f) => (data) => (0, TaskMaybe2.chain)(
|
|
1905
|
-
(a) => (0, TaskMaybe2.map)((b) => ({ ...a, [key]: b }))(f(a))
|
|
1906
|
-
)(data);
|
|
1907
|
-
})(TaskMaybe || (TaskMaybe = {}));
|
|
1908
|
-
|
|
1909
|
-
// src/Core/TaskResult.ts
|
|
1910
|
-
var TaskResult3;
|
|
1911
|
-
((TaskResult4) => {
|
|
1912
|
-
TaskResult4.ok = (value) => Task.resolve(Result.ok(value));
|
|
1913
|
-
TaskResult4.err = (error) => Task.resolve(Result.err(error));
|
|
1914
|
-
TaskResult4.fromNullable = (onNull) => (value) => Task.resolve(value === null || value === void 0 ? Result.err(onNull()) : Result.ok(value));
|
|
1915
|
-
TaskResult4.fromMaybe = (onNone) => (maybe) => Task.resolve(Maybe.isNone(maybe) ? Result.err(onNone()) : Result.ok(maybe.value));
|
|
1916
|
-
TaskResult4.fromResult = (result) => Task.resolve(result);
|
|
1917
|
-
TaskResult4.fromThrowable = (f, onError) => (...args) => Task.from(() => f(...args).then(Result.ok).catch((error) => Result.err(onError(error))));
|
|
1918
|
-
TaskResult4.tryCatch = (f, onError) => Task.from((signal) => f(signal).then(Result.ok).catch((error) => Result.err(onError(error))));
|
|
1919
|
-
TaskResult4.map = (f) => (data) => Task.map(Result.map(f))(data);
|
|
1920
|
-
TaskResult4.mapError = (f) => (data) => Task.map(Result.mapError(f))(data);
|
|
1921
|
-
TaskResult4.chain = (f) => (data) => Task.chain((result) => Result.isOk(result) ? f(result.value) : Task.resolve(Result.err(result.error)))(
|
|
1922
|
-
data
|
|
1923
|
-
);
|
|
1924
|
-
TaskResult4.fold = (onErr, onOk) => (data) => Task.map(Result.fold(onErr, onOk))(data);
|
|
1925
|
-
TaskResult4.match = (cases) => (data) => Task.map(Result.match(cases))(data);
|
|
1926
|
-
TaskResult4.recover = (fallback) => (data) => Task.chain(
|
|
1927
|
-
(result) => Result.isErr(result) ? fallback(result.error) : Task.resolve(result)
|
|
1928
|
-
)(data);
|
|
1929
|
-
TaskResult4.getOrElse = (defaultValue) => (data) => Task.map(Result.getOrElse(defaultValue))(data);
|
|
1930
|
-
TaskResult4.tap = (f) => (data) => Task.map(Result.tap(f))(data);
|
|
1931
|
-
TaskResult4.tapError = (f) => (data) => Task.map(Result.tapError(f))(data);
|
|
1932
|
-
TaskResult4.ap = (arg) => (data) => Task.from(
|
|
1933
|
-
(signal) => Promise.all([Deferred.toPromise(data(signal)), Deferred.toPromise(arg(signal))]).then(
|
|
1934
|
-
([of_, oa]) => Result.ap(oa)(of_)
|
|
1935
|
-
)
|
|
1936
|
-
);
|
|
1937
|
-
TaskResult4.run = (signal) => (task) => task(signal);
|
|
1938
|
-
TaskResult4.bindTo = (key) => (data) => (0, TaskResult4.map)((a) => ({ [key]: a }))(data);
|
|
1939
|
-
TaskResult4.bind = (key, f) => (data) => (0, TaskResult4.chain)(
|
|
1940
|
-
(a) => (0, TaskResult4.map)((b) => ({ ...a, [key]: b }))(f(a))
|
|
1941
|
-
)(data);
|
|
1942
|
-
TaskResult4.struct = (fields) => Task.from((signal) => {
|
|
1943
|
-
const keys = Object.keys(fields);
|
|
1944
|
-
const promises = keys.map((key) => Deferred.toPromise(fields[key](signal)));
|
|
1945
|
-
return Promise.all(promises).then((results) => {
|
|
1946
|
-
const record = {};
|
|
1947
|
-
for (let i = 0; i < keys.length; i++) {
|
|
1948
|
-
const res = results[i];
|
|
1949
|
-
if (Result.isErr(res)) {
|
|
1950
|
-
return res;
|
|
1951
|
-
}
|
|
1952
|
-
record[keys[i]] = res.value;
|
|
1953
|
-
}
|
|
1954
|
-
return Result.ok(record);
|
|
1955
|
-
});
|
|
1956
|
-
});
|
|
1957
|
-
})(TaskResult3 || (TaskResult3 = {}));
|
|
1958
|
-
|
|
1959
|
-
// src/Core/TaskValidation.ts
|
|
1960
|
-
var TaskValidation;
|
|
1961
|
-
((TaskValidation2) => {
|
|
1962
|
-
TaskValidation2.passed = (value) => Task.resolve(Validation.passed(value));
|
|
1963
|
-
TaskValidation2.failed = (error) => Task.resolve(Validation.failed(error));
|
|
1964
|
-
TaskValidation2.failedAll = (errors) => Task.resolve(Validation.failedAll(errors));
|
|
1965
|
-
TaskValidation2.fromValidation = (validation) => Task.resolve(validation);
|
|
1966
|
-
TaskValidation2.fromNullable = (onNull) => (value) => Task.resolve(value === null || value === void 0 ? Validation.failed(onNull()) : Validation.passed(value));
|
|
1967
|
-
TaskValidation2.fromMaybe = (onNone) => (maybe) => Task.resolve(Maybe.isNone(maybe) ? Validation.failed(onNone()) : Validation.passed(maybe.value));
|
|
1968
|
-
TaskValidation2.fromResult = (result) => Task.resolve(Validation.fromResult(result));
|
|
1969
|
-
TaskValidation2.tryCatch = (f, onError) => Task.from((signal) => f(signal).then(Validation.passed).catch((error) => Validation.failed(onError(error))));
|
|
1970
|
-
TaskValidation2.map = (f) => (data) => Task.map(Validation.map(f))(data);
|
|
1971
|
-
TaskValidation2.ap = (arg) => (data) => Task.from(
|
|
1972
|
-
(signal) => Promise.all([Deferred.toPromise(data(signal)), Deferred.toPromise(arg(signal))]).then(
|
|
1973
|
-
([vf, va]) => Validation.ap(va)(vf)
|
|
1974
|
-
)
|
|
1975
|
-
);
|
|
1976
|
-
TaskValidation2.fold = (onFailed, onPassed) => (data) => Task.map(Validation.fold(onFailed, onPassed))(data);
|
|
1977
|
-
TaskValidation2.match = (cases) => (data) => Task.map(Validation.match(cases))(data);
|
|
1978
|
-
TaskValidation2.getOrElse = (defaultValue) => (data) => Task.map(Validation.getOrElse(defaultValue))(data);
|
|
1979
|
-
TaskValidation2.tap = (f) => (data) => Task.map(Validation.tap(f))(data);
|
|
1980
|
-
TaskValidation2.recover = (fallback) => (data) => Task.chain(
|
|
1981
|
-
(validation) => Validation.isPassed(validation) ? Task.resolve(validation) : fallback(validation.errors)
|
|
1982
|
-
)(data);
|
|
1983
|
-
TaskValidation2.product = (first, second) => Task.from(
|
|
1984
|
-
(signal) => Promise.all([Deferred.toPromise(first(signal)), Deferred.toPromise(second(signal))]).then(
|
|
1985
|
-
([va, vb]) => Validation.product(va, vb)
|
|
1986
|
-
)
|
|
1987
|
-
);
|
|
1988
|
-
TaskValidation2.productAll = (data) => Task.from(
|
|
1989
|
-
(signal) => Promise.all(data.map((t) => Deferred.toPromise(t(signal)))).then(
|
|
1990
|
-
(results) => Validation.productAll(results)
|
|
1991
|
-
)
|
|
1992
|
-
);
|
|
1993
|
-
})(TaskValidation || (TaskValidation = {}));
|
|
1994
|
-
|
|
1995
2020
|
// src/Core/These.ts
|
|
1996
2021
|
var These;
|
|
1997
2022
|
((These2) => {
|
|
@@ -2114,11 +2139,10 @@ var Validation;
|
|
|
2114
2139
|
Validation2.map = (f) => (data) => (0, Validation2.isPassed)(data) ? (0, Validation2.passed)(f(data.value)) : data;
|
|
2115
2140
|
Validation2.mapError = (f) => (data) => (0, Validation2.isFailed)(data) ? (0, Validation2.failedAll)(data.errors.map(f)) : data;
|
|
2116
2141
|
Validation2.ap = (arg) => (data) => {
|
|
2117
|
-
if ((0, Validation2.isPassed)(data)
|
|
2118
|
-
return (0, Validation2.passed)(data.value(arg.value));
|
|
2142
|
+
if ((0, Validation2.isPassed)(data)) {
|
|
2143
|
+
return (0, Validation2.isPassed)(arg) ? (0, Validation2.passed)(data.value(arg.value)) : (0, Validation2.failedAll)(arg.errors);
|
|
2119
2144
|
}
|
|
2120
|
-
|
|
2121
|
-
return (0, Validation2.failedAll)(errors);
|
|
2145
|
+
return (0, Validation2.isPassed)(arg) ? (0, Validation2.failedAll)(data.errors) : (0, Validation2.failedAll)([...data.errors, ...arg.errors]);
|
|
2122
2146
|
};
|
|
2123
2147
|
Validation2.fold = (onFailed, onPassed) => (data) => (0, Validation2.isPassed)(data) ? onPassed(data.value) : onFailed(data.errors);
|
|
2124
2148
|
Validation2.match = (cases) => (data) => (0, Validation2.isPassed)(data) ? cases.passed(data.value) : cases.failed(data.errors);
|
|
@@ -2141,11 +2165,10 @@ var Validation;
|
|
|
2141
2165
|
Validation2.toMaybe = (data) => (0, Validation2.isPassed)(data) ? Maybe.some(data.value) : Maybe.none();
|
|
2142
2166
|
Validation2.fromResult = (data) => data.kind === "Ok" ? (0, Validation2.passed)(data.value) : (0, Validation2.failed)(data.error);
|
|
2143
2167
|
Validation2.product = (first, second) => {
|
|
2144
|
-
if ((0, Validation2.isPassed)(first)
|
|
2145
|
-
return (0, Validation2.passed)([first.value, second.value]);
|
|
2168
|
+
if ((0, Validation2.isPassed)(first)) {
|
|
2169
|
+
return (0, Validation2.isPassed)(second) ? (0, Validation2.passed)([first.value, second.value]) : (0, Validation2.failedAll)(second.errors);
|
|
2146
2170
|
}
|
|
2147
|
-
|
|
2148
|
-
return (0, Validation2.failedAll)(errors);
|
|
2171
|
+
return (0, Validation2.isPassed)(second) ? (0, Validation2.failedAll)(first.errors) : (0, Validation2.failedAll)([...first.errors, ...second.errors]);
|
|
2149
2172
|
};
|
|
2150
2173
|
Validation2.productAll = (data) => {
|
|
2151
2174
|
const values = [];
|
|
@@ -2157,7 +2180,7 @@ var Validation;
|
|
|
2157
2180
|
errors.push(...v.errors);
|
|
2158
2181
|
}
|
|
2159
2182
|
}
|
|
2160
|
-
return errors
|
|
2183
|
+
return isNonEmptyArr(errors) ? (0, Validation2.failedAll)(errors) : (0, Validation2.passed)(values);
|
|
2161
2184
|
};
|
|
2162
2185
|
Validation2.struct = (fields) => {
|
|
2163
2186
|
const record = {};
|
|
@@ -2172,7 +2195,7 @@ var Validation;
|
|
|
2172
2195
|
}
|
|
2173
2196
|
}
|
|
2174
2197
|
}
|
|
2175
|
-
return errors
|
|
2198
|
+
return isNonEmptyArr(errors) ? (0, Validation2.failedAll)(errors) : (0, Validation2.passed)(record);
|
|
2176
2199
|
};
|
|
2177
2200
|
})(Validation || (Validation = {}));
|
|
2178
2201
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -2195,9 +2218,6 @@ var Validation;
|
|
|
2195
2218
|
Result,
|
|
2196
2219
|
State,
|
|
2197
2220
|
Task,
|
|
2198
|
-
TaskMaybe,
|
|
2199
|
-
TaskResult,
|
|
2200
|
-
TaskValidation,
|
|
2201
2221
|
These,
|
|
2202
2222
|
Tuple,
|
|
2203
2223
|
Validation
|
package/dist/core.mjs
CHANGED
|
@@ -17,14 +17,11 @@ import {
|
|
|
17
17
|
Result,
|
|
18
18
|
State,
|
|
19
19
|
Task,
|
|
20
|
-
TaskMaybe,
|
|
21
|
-
TaskResult,
|
|
22
|
-
TaskValidation,
|
|
23
20
|
These,
|
|
24
21
|
Tuple,
|
|
25
22
|
Validation
|
|
26
|
-
} from "./chunk-
|
|
27
|
-
import "./chunk-
|
|
23
|
+
} from "./chunk-CHRXZIJU.mjs";
|
|
24
|
+
import "./chunk-74JKKJ4R.mjs";
|
|
28
25
|
export {
|
|
29
26
|
Combinable,
|
|
30
27
|
Deferred,
|
|
@@ -44,9 +41,6 @@ export {
|
|
|
44
41
|
Result,
|
|
45
42
|
State,
|
|
46
43
|
Task,
|
|
47
|
-
TaskMaybe,
|
|
48
|
-
TaskResult,
|
|
49
|
-
TaskValidation,
|
|
50
44
|
These,
|
|
51
45
|
Tuple,
|
|
52
46
|
Validation
|
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { and, compose, constFalse, constNull, constTrue, constUndefined, constVoid, constant, converge, curry, curry3, curry4, defaultTo, flip, flow, identity, juxt, memoize, memoizeWeak, not, on, once, or, pipe, tap, uncurry, uncurry3, uncurry4 } from './composition.mjs';
|
|
2
|
-
export { Combinable,
|
|
3
|
-
export { D as Deferred
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
2
|
+
export { Combinable, Failure, Lazy, Lens, Loading, Logged, NotAsked, Op, Optional, Predicate, Reader, Refinement, RemoteData, Resource, State, Success, These, TheseBoth, TheseFirst, TheseSecond, Tuple } from './core.mjs';
|
|
3
|
+
export { D as Deferred } from './InternalTypes-DsCqxWZm.mjs';
|
|
4
|
+
export { E as Equality, a as Err, F as Failed, M as Maybe, N as None, O as Ok, b as Ordering, P as Passed, R as Result, S as Some, T as Task, V as Validation } from './Validation-Do6uWLLZ.mjs';
|
|
5
|
+
export { Arr, Dict, NonEmptyRecord, Num, Rec, Str, Uniq } from './utils.mjs';
|
|
6
|
+
export { Brand, Duration } from './types.mjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { and, compose, constFalse, constNull, constTrue, constUndefined, constVoid, constant, converge, curry, curry3, curry4, defaultTo, flip, flow, identity, juxt, memoize, memoizeWeak, not, on, once, or, pipe, tap, uncurry, uncurry3, uncurry4 } from './composition.js';
|
|
2
|
-
export { Combinable,
|
|
3
|
-
export { D as Deferred
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
2
|
+
export { Combinable, Failure, Lazy, Lens, Loading, Logged, NotAsked, Op, Optional, Predicate, Reader, Refinement, RemoteData, Resource, State, Success, These, TheseBoth, TheseFirst, TheseSecond, Tuple } from './core.js';
|
|
3
|
+
export { D as Deferred } from './InternalTypes-DuzMFAfJ.js';
|
|
4
|
+
export { E as Equality, a as Err, F as Failed, M as Maybe, N as None, O as Ok, b as Ordering, P as Passed, R as Result, S as Some, T as Task, V as Validation } from './Validation-BOPLiDqa.js';
|
|
5
|
+
export { Arr, Dict, NonEmptyRecord, Num, Rec, Str, Uniq } from './utils.js';
|
|
6
|
+
export { Brand, Duration } from './types.js';
|