ts-data-forge 9.0.0 → 9.0.1
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/array/impl/array-utils-creation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-creation.mjs +17 -112
- package/dist/array/impl/array-utils-creation.mjs.map +1 -1
- package/dist/array/impl/array-utils-element-access.d.mts.map +1 -1
- package/dist/array/impl/array-utils-element-access.mjs +22 -61
- package/dist/array/impl/array-utils-element-access.mjs.map +1 -1
- package/dist/array/impl/array-utils-iterators.d.mts.map +1 -1
- package/dist/array/impl/array-utils-iterators.mjs +9 -63
- package/dist/array/impl/array-utils-iterators.mjs.map +1 -1
- package/dist/array/impl/array-utils-modification.mjs +78 -78
- package/dist/array/impl/array-utils-modification.mjs.map +1 -1
- package/dist/array/impl/array-utils-reducing-value.mjs +95 -89
- package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
- package/dist/array/impl/array-utils-search.mjs +100 -92
- package/dist/array/impl/array-utils-search.mjs.map +1 -1
- package/dist/array/impl/array-utils-set-op.d.mts.map +1 -1
- package/dist/array/impl/array-utils-set-op.mjs +31 -141
- package/dist/array/impl/array-utils-set-op.mjs.map +1 -1
- package/dist/array/impl/array-utils-size.d.mts.map +1 -1
- package/dist/array/impl/array-utils-size.mjs +4 -8
- package/dist/array/impl/array-utils-size.mjs.map +1 -1
- package/dist/array/impl/array-utils-slice-clamped.mjs +11 -12
- package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -1
- package/dist/array/impl/array-utils-slicing.d.mts.map +1 -1
- package/dist/array/impl/array-utils-slicing.mjs +44 -96
- package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
- package/dist/array/impl/array-utils-transformation.d.mts +1 -1
- package/dist/array/impl/array-utils-transformation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-transformation.mjs +150 -292
- package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
- package/dist/array/impl/array-utils-validation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-validation.mjs +18 -169
- package/dist/array/impl/array-utils-validation.mjs.map +1 -1
- package/dist/collections/imap-mapped.d.mts.map +1 -1
- package/dist/collections/imap-mapped.mjs +243 -330
- package/dist/collections/imap-mapped.mjs.map +1 -1
- package/dist/collections/imap.d.mts.map +1 -1
- package/dist/collections/imap.mjs +190 -275
- package/dist/collections/imap.mjs.map +1 -1
- package/dist/collections/iset-mapped.d.mts +1 -1
- package/dist/collections/iset-mapped.d.mts.map +1 -1
- package/dist/collections/iset-mapped.mjs +222 -444
- package/dist/collections/iset-mapped.mjs.map +1 -1
- package/dist/collections/iset.d.mts +1 -1
- package/dist/collections/iset.d.mts.map +1 -1
- package/dist/collections/iset.mjs +158 -324
- package/dist/collections/iset.mjs.map +1 -1
- package/dist/collections/queue.d.mts.map +1 -1
- package/dist/collections/queue.mjs +106 -178
- package/dist/collections/queue.mjs.map +1 -1
- package/dist/collections/stack.d.mts.map +1 -1
- package/dist/collections/stack.mjs +95 -165
- package/dist/collections/stack.mjs.map +1 -1
- package/dist/expect-type.d.mts +1 -1
- package/dist/expect-type.d.mts.map +1 -1
- package/dist/expect-type.mjs +1 -69
- package/dist/expect-type.mjs.map +1 -1
- package/dist/functional/match.mjs +9 -9
- package/dist/functional/match.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-expect-to-be.mjs +13 -14
- package/dist/functional/optional/impl/optional-expect-to-be.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-filter.mjs +14 -15
- package/dist/functional/optional/impl/optional-filter.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-flat-map.mjs +10 -11
- package/dist/functional/optional/impl/optional-flat-map.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-from-nullable.d.mts.map +1 -1
- package/dist/functional/optional/impl/optional-from-nullable.mjs +1 -25
- package/dist/functional/optional/impl/optional-from-nullable.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-is-none.d.mts.map +1 -1
- package/dist/functional/optional/impl/optional-is-none.mjs +0 -19
- package/dist/functional/optional/impl/optional-is-none.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-is-optional.d.mts.map +1 -1
- package/dist/functional/optional/impl/optional-is-optional.mjs +1 -23
- package/dist/functional/optional/impl/optional-is-optional.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-is-some.d.mts.map +1 -1
- package/dist/functional/optional/impl/optional-is-some.mjs +0 -20
- package/dist/functional/optional/impl/optional-is-some.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-map.mjs +13 -14
- package/dist/functional/optional/impl/optional-map.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-none.mjs +0 -16
- package/dist/functional/optional/impl/optional-none.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-or-else.mjs +10 -11
- package/dist/functional/optional/impl/optional-or-else.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-some.d.mts.map +1 -1
- package/dist/functional/optional/impl/optional-some.mjs +2 -21
- package/dist/functional/optional/impl/optional-some.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-to-nullable.d.mts.map +1 -1
- package/dist/functional/optional/impl/optional-to-nullable.mjs +1 -27
- package/dist/functional/optional/impl/optional-to-nullable.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-unwrap-or.mjs +9 -10
- package/dist/functional/optional/impl/optional-unwrap-or.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-unwrap-throw.d.mts.map +1 -1
- package/dist/functional/optional/impl/optional-unwrap-throw.mjs +4 -32
- package/dist/functional/optional/impl/optional-unwrap-throw.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-unwrap.mjs +4 -4
- package/dist/functional/optional/impl/optional-unwrap.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-zip.d.mts.map +1 -1
- package/dist/functional/optional/impl/optional-zip.mjs +1 -35
- package/dist/functional/optional/impl/optional-zip.mjs.map +1 -1
- package/dist/functional/optional/impl/tag.mjs +2 -3
- package/dist/functional/optional/impl/tag.mjs.map +1 -1
- package/dist/functional/pipe.d.mts.map +1 -1
- package/dist/functional/pipe.mjs +9 -34
- package/dist/functional/pipe.mjs.map +1 -1
- package/dist/functional/result/impl/result-err.d.mts.map +1 -1
- package/dist/functional/result/impl/result-err.mjs +2 -27
- package/dist/functional/result/impl/result-err.mjs.map +1 -1
- package/dist/functional/result/impl/result-expect-to-be.mjs +13 -15
- package/dist/functional/result/impl/result-expect-to-be.mjs.map +1 -1
- package/dist/functional/result/impl/result-flat-map.mjs +16 -16
- package/dist/functional/result/impl/result-flat-map.mjs.map +1 -1
- package/dist/functional/result/impl/result-fold.mjs +16 -16
- package/dist/functional/result/impl/result-fold.mjs.map +1 -1
- package/dist/functional/result/impl/result-from-promise.d.mts.map +1 -1
- package/dist/functional/result/impl/result-from-promise.mjs +4 -31
- package/dist/functional/result/impl/result-from-promise.mjs.map +1 -1
- package/dist/functional/result/impl/result-from-throwable.d.mts.map +1 -1
- package/dist/functional/result/impl/result-from-throwable.mjs +8 -38
- package/dist/functional/result/impl/result-from-throwable.mjs.map +1 -1
- package/dist/functional/result/impl/result-is-err.d.mts.map +1 -1
- package/dist/functional/result/impl/result-is-err.mjs +0 -19
- package/dist/functional/result/impl/result-is-err.mjs.map +1 -1
- package/dist/functional/result/impl/result-is-ok.d.mts.map +1 -1
- package/dist/functional/result/impl/result-is-ok.mjs +0 -19
- package/dist/functional/result/impl/result-is-ok.mjs.map +1 -1
- package/dist/functional/result/impl/result-is-result.d.mts.map +1 -1
- package/dist/functional/result/impl/result-is-result.mjs +1 -23
- package/dist/functional/result/impl/result-is-result.mjs.map +1 -1
- package/dist/functional/result/impl/result-map-err.mjs +16 -16
- package/dist/functional/result/impl/result-map-err.mjs.map +1 -1
- package/dist/functional/result/impl/result-map.mjs +16 -16
- package/dist/functional/result/impl/result-map.mjs.map +1 -1
- package/dist/functional/result/impl/result-ok.d.mts.map +1 -1
- package/dist/functional/result/impl/result-ok.mjs +2 -27
- package/dist/functional/result/impl/result-ok.mjs.map +1 -1
- package/dist/functional/result/impl/result-or-else.mjs +10 -12
- package/dist/functional/result/impl/result-or-else.mjs.map +1 -1
- package/dist/functional/result/impl/result-swap.d.mts.map +1 -1
- package/dist/functional/result/impl/result-swap.mjs +4 -22
- package/dist/functional/result/impl/result-swap.mjs.map +1 -1
- package/dist/functional/result/impl/result-to-optional.d.mts.map +1 -1
- package/dist/functional/result/impl/result-to-optional.mjs +0 -27
- package/dist/functional/result/impl/result-to-optional.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-err-or.mjs +9 -11
- package/dist/functional/result/impl/result-unwrap-err-or.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-err-throw.d.mts.map +1 -1
- package/dist/functional/result/impl/result-unwrap-err-throw.mjs +13 -40
- package/dist/functional/result/impl/result-unwrap-err-throw.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-err.d.mts.map +1 -1
- package/dist/functional/result/impl/result-unwrap-err.mjs +4 -32
- package/dist/functional/result/impl/result-unwrap-err.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-ok-or.mjs +9 -11
- package/dist/functional/result/impl/result-unwrap-ok-or.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-ok.mjs +4 -4
- package/dist/functional/result/impl/result-unwrap-ok.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-throw.d.mts.map +1 -1
- package/dist/functional/result/impl/result-unwrap-throw.mjs +4 -35
- package/dist/functional/result/impl/result-unwrap-throw.mjs.map +1 -1
- package/dist/functional/result/impl/result-zip.d.mts.map +1 -1
- package/dist/functional/result/impl/result-zip.mjs +1 -34
- package/dist/functional/result/impl/result-zip.mjs.map +1 -1
- package/dist/functional/result/impl/tag.mjs +2 -3
- package/dist/functional/result/impl/tag.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/tag.mjs +3 -5
- package/dist/functional/ternary-result/impl/tag.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-err.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-err.mjs +2 -15
- package/dist/functional/ternary-result/impl/ternary-result-err.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs +13 -13
- package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs +27 -26
- package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-fold.mjs +21 -22
- package/dist/functional/ternary-result/impl/ternary-result-fold.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-from-promise.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs +4 -20
- package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-from-throwable.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs +7 -25
- package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-err.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs +0 -17
- package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-ok.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs +0 -19
- package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs +1 -25
- package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-warn.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs +0 -18
- package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs +13 -15
- package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs +18 -18
- package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-map.mjs +21 -22
- package/dist/functional/ternary-result/impl/ternary-result-map.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-ok.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-ok.mjs +2 -16
- package/dist/functional/ternary-result/impl/ternary-result-ok.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs +9 -9
- package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-to-optional.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs +4 -22
- package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs +9 -9
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs +12 -27
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs +4 -19
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs +9 -9
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs +4 -5
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs +15 -27
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs +9 -9
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs +10 -24
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs +4 -19
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-warn.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-warn.mjs +3 -19
- package/dist/functional/ternary-result/impl/ternary-result-warn.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-zip.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-zip.mjs +14 -45
- package/dist/functional/ternary-result/impl/ternary-result-zip.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/variant-name.d.mts +1 -1
- package/dist/functional/ternary-result/impl/variant-name.d.mts.map +1 -1
- package/dist/functional/ternary-result/impl/variant-name.mjs +8 -9
- package/dist/functional/ternary-result/impl/variant-name.mjs.map +1 -1
- package/dist/guard/has-key.d.mts.map +1 -1
- package/dist/guard/has-key.mjs +0 -41
- package/dist/guard/has-key.mjs.map +1 -1
- package/dist/guard/is-length-bounded-string.d.mts.map +1 -1
- package/dist/guard/is-length-bounded-string.mjs +0 -157
- package/dist/guard/is-length-bounded-string.mjs.map +1 -1
- package/dist/guard/is-non-empty-string.d.mts +1 -1
- package/dist/guard/is-non-empty-string.d.mts.map +1 -1
- package/dist/guard/is-non-empty-string.mjs +1 -38
- package/dist/guard/is-non-empty-string.mjs.map +1 -1
- package/dist/guard/is-non-null-object.d.mts.map +1 -1
- package/dist/guard/is-non-null-object.mjs +1 -35
- package/dist/guard/is-non-null-object.mjs.map +1 -1
- package/dist/guard/is-primitive.d.mts.map +1 -1
- package/dist/guard/is-primitive.mjs +12 -43
- package/dist/guard/is-primitive.mjs.map +1 -1
- package/dist/guard/is-record.d.mts.map +1 -1
- package/dist/guard/is-record.mjs +0 -86
- package/dist/guard/is-record.mjs.map +1 -1
- package/dist/guard/is-type.d.mts.map +1 -1
- package/dist/guard/is-type.mjs +12 -399
- package/dist/guard/is-type.mjs.map +1 -1
- package/dist/guard/key-is-in.d.mts.map +1 -1
- package/dist/guard/key-is-in.mjs +0 -40
- package/dist/guard/key-is-in.mjs.map +1 -1
- package/dist/iterator/range.mjs +16 -16
- package/dist/iterator/range.mjs.map +1 -1
- package/dist/json/json.d.mts.map +1 -1
- package/dist/json/json.mjs +52 -340
- package/dist/json/json.mjs.map +1 -1
- package/dist/number/branded-types/finite-number.d.mts +3 -3
- package/dist/number/branded-types/finite-number.mjs +135 -154
- package/dist/number/branded-types/finite-number.mjs.map +1 -1
- package/dist/number/branded-types/int.d.mts +4 -4
- package/dist/number/branded-types/int.mjs +205 -245
- package/dist/number/branded-types/int.mjs.map +1 -1
- package/dist/number/branded-types/int16.d.mts +15 -15
- package/dist/number/branded-types/int16.mjs +116 -123
- package/dist/number/branded-types/int16.mjs.map +1 -1
- package/dist/number/branded-types/int32.d.mts +11 -11
- package/dist/number/branded-types/int32.mjs +116 -123
- package/dist/number/branded-types/int32.mjs.map +1 -1
- package/dist/number/branded-types/negative-finite-number.d.mts +4 -4
- package/dist/number/branded-types/negative-finite-number.mjs +129 -144
- package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/negative-int.d.mts +5 -5
- package/dist/number/branded-types/negative-int.mjs +94 -113
- package/dist/number/branded-types/negative-int.mjs.map +1 -1
- package/dist/number/branded-types/negative-safe-int.d.mts +5 -5
- package/dist/number/branded-types/negative-safe-int.mjs +103 -124
- package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.d.mts +5 -5
- package/dist/number/branded-types/non-negative-finite-number.mjs +136 -142
- package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int16.d.mts +16 -16
- package/dist/number/branded-types/non-negative-int16.mjs +109 -118
- package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int32.d.mts +12 -12
- package/dist/number/branded-types/non-negative-int32.mjs +110 -119
- package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.d.mts +3 -3
- package/dist/number/branded-types/non-positive-finite-number.mjs +120 -124
- package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-int.d.mts +4 -4
- package/dist/number/branded-types/non-positive-int.mjs +167 -212
- package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.d.mts +4 -4
- package/dist/number/branded-types/non-positive-safe-int.mjs +95 -106
- package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.d.mts +4 -4
- package/dist/number/branded-types/non-zero-finite-number.mjs +114 -123
- package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int.d.mts +2 -2
- package/dist/number/branded-types/non-zero-int.mjs +72 -83
- package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int16.d.mts +7 -7
- package/dist/number/branded-types/non-zero-int16.mjs +96 -107
- package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int32.d.mts +5 -5
- package/dist/number/branded-types/non-zero-int32.mjs +97 -108
- package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.d.mts +2 -2
- package/dist/number/branded-types/non-zero-safe-int.mjs +100 -111
- package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.d.mts +8 -8
- package/dist/number/branded-types/non-zero-uint16.mjs +96 -107
- package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.d.mts +6 -6
- package/dist/number/branded-types/non-zero-uint32.mjs +96 -107
- package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
- package/dist/number/branded-types/positive-finite-number.d.mts +8 -8
- package/dist/number/branded-types/positive-finite-number.mjs +139 -141
- package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/positive-int.d.mts +11 -11
- package/dist/number/branded-types/positive-int.mjs +228 -271
- package/dist/number/branded-types/positive-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-int16.d.mts +19 -19
- package/dist/number/branded-types/positive-int16.mjs +109 -118
- package/dist/number/branded-types/positive-int16.mjs.map +1 -1
- package/dist/number/branded-types/positive-int32.d.mts +15 -15
- package/dist/number/branded-types/positive-int32.mjs +109 -118
- package/dist/number/branded-types/positive-int32.mjs.map +1 -1
- package/dist/number/branded-types/positive-safe-int.d.mts +11 -11
- package/dist/number/branded-types/positive-safe-int.mjs +244 -275
- package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint16.d.mts +17 -17
- package/dist/number/branded-types/positive-uint16.mjs +109 -118
- package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint32.d.mts +13 -13
- package/dist/number/branded-types/positive-uint32.mjs +110 -119
- package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
- package/dist/number/branded-types/safe-int.d.mts +4 -4
- package/dist/number/branded-types/safe-int.mjs +251 -292
- package/dist/number/branded-types/safe-int.mjs.map +1 -1
- package/dist/number/branded-types/safe-uint.d.mts +8 -8
- package/dist/number/branded-types/safe-uint.mjs +111 -119
- package/dist/number/branded-types/safe-uint.mjs.map +1 -1
- package/dist/number/branded-types/uint.d.mts +8 -8
- package/dist/number/branded-types/uint.mjs +198 -225
- package/dist/number/branded-types/uint.mjs.map +1 -1
- package/dist/number/branded-types/uint16.d.mts +14 -14
- package/dist/number/branded-types/uint16.mjs +109 -119
- package/dist/number/branded-types/uint16.mjs.map +1 -1
- package/dist/number/branded-types/uint32.d.mts +10 -10
- package/dist/number/branded-types/uint32.mjs +110 -117
- package/dist/number/branded-types/uint32.mjs.map +1 -1
- package/dist/number/enum/int8.mjs +119 -145
- package/dist/number/enum/int8.mjs.map +1 -1
- package/dist/number/enum/uint8.mjs +107 -121
- package/dist/number/enum/uint8.mjs.map +1 -1
- package/dist/number/num.d.mts +2 -2
- package/dist/number/num.d.mts.map +1 -1
- package/dist/number/num.mjs +76 -537
- package/dist/number/num.mjs.map +1 -1
- package/dist/number/refined-number-utils.d.mts +1 -1
- package/dist/number/refined-number-utils.d.mts.map +1 -1
- package/dist/number/refined-number-utils.mjs +127 -263
- package/dist/number/refined-number-utils.mjs.map +1 -1
- package/dist/object/object.d.mts.map +1 -1
- package/dist/object/object.mjs +107 -222
- package/dist/object/object.mjs.map +1 -1
- package/dist/others/cast-mutable.d.mts.map +1 -1
- package/dist/others/cast-mutable.mjs +8 -37
- package/dist/others/cast-mutable.mjs.map +1 -1
- package/dist/others/cast-readonly.d.mts.map +1 -1
- package/dist/others/cast-readonly.mjs +8 -36
- package/dist/others/cast-readonly.mjs.map +1 -1
- package/dist/others/debounce-function.d.mts.map +1 -1
- package/dist/others/debounce-function.mjs +7 -16
- package/dist/others/debounce-function.mjs.map +1 -1
- package/dist/others/fast-deep-equal.d.mts.map +1 -1
- package/dist/others/fast-deep-equal.mjs +43 -59
- package/dist/others/fast-deep-equal.mjs.map +1 -1
- package/dist/others/if-then.d.mts.map +1 -1
- package/dist/others/if-then.mjs +0 -29
- package/dist/others/if-then.mjs.map +1 -1
- package/dist/others/map-nullable.mjs +9 -9
- package/dist/others/map-nullable.mjs.map +1 -1
- package/dist/others/memoize-function.mjs +12 -12
- package/dist/others/memoize-function.mjs.map +1 -1
- package/dist/others/tuple.d.mts.map +1 -1
- package/dist/others/tuple.mjs +0 -50
- package/dist/others/tuple.mjs.map +1 -1
- package/dist/others/unknown-to-string.d.mts.map +1 -1
- package/dist/others/unknown-to-string.mjs +41 -88
- package/dist/others/unknown-to-string.mjs.map +1 -1
- package/dist/promise/promise.d.mts.map +1 -1
- package/dist/promise/promise.mjs +4 -49
- package/dist/promise/promise.mjs.map +1 -1
- package/package.json +8 -7
|
@@ -3,28 +3,10 @@ import { some } from '../../optional/impl/optional-some.mjs';
|
|
|
3
3
|
import { isOk } from './ternary-result-is-ok.mjs';
|
|
4
4
|
import { isWarn } from './ternary-result-is-warn.mjs';
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
*
|
|
11
|
-
* ```ts
|
|
12
|
-
* const okValue = TernaryResult.ok(7);
|
|
13
|
-
*
|
|
14
|
-
* const warnValue = TernaryResult.warn(7, 'warn');
|
|
15
|
-
*
|
|
16
|
-
* assert.deepStrictEqual(TernaryResult.toOptional(okValue), Optional.some(7));
|
|
17
|
-
*
|
|
18
|
-
* assert.deepStrictEqual(
|
|
19
|
-
* TernaryResult.toOptional(warnValue),
|
|
20
|
-
* Optional.some(7),
|
|
21
|
-
* );
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
const toOptional = (result) => isOk(result) || isWarn(result)
|
|
25
|
-
? // eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
26
|
-
some(result.value)
|
|
27
|
-
: none;
|
|
6
|
+
const toOptional = (result) => isOk(result) || isWarn(result) ? (
|
|
7
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
8
|
+
some(result.value)
|
|
9
|
+
) : none;
|
|
28
10
|
|
|
29
11
|
export { toOptional };
|
|
30
12
|
//# sourceMappingURL=ternary-result-to-optional.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-to-optional.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-to-optional.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-to-optional.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-to-optional.mts"],"sourcesContent":["import { Optional } from '../../optional/index.mjs';\nimport { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { isOk } from './ternary-result-is-ok.mjs';\nimport { isWarn } from './ternary-result-is-warn.mjs';\nimport { type UnwrapOk } from './types.mjs';\n\n/**\n * Converts a `TernaryResult` into an `Optional` by keeping only Ok values.\n *\n * @example\n *\n * ```ts\n * const okValue = TernaryResult.ok(7);\n *\n * const warnValue = TernaryResult.warn(7, 'warn');\n *\n * assert.deepStrictEqual(TernaryResult.toOptional(okValue), Optional.some(7));\n *\n * assert.deepStrictEqual(\n * TernaryResult.toOptional(warnValue),\n * Optional.some(7),\n * );\n * ```\n */\nexport const toOptional = <R extends UnknownTernaryResult>(\n result: R,\n): Optional<UnwrapOk<R>> =>\n isOk(result) || isWarn(result)\n ? // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n Optional.some(result.value as UnwrapOk<R>)\n : Optional.none;\n"],"names":["Optional.some","Optional.none"],"mappings":";;;;;AAwBO,MAAM,aAAa,CACxB,MAAA,KAEA,KAAK,MAAM,CAAA,IAAK,OAAO,MAAM,CAAA;AAAA;AAAA,EAEzBA,IAAS,CAAK,MAAA,CAAO,KAAoB;AAAA,IACzCC;;;;"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { unwrapErr } from './ternary-result-unwrap-err.mjs';
|
|
2
2
|
|
|
3
3
|
function unwrapErrOr(...args) {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
case 1: {
|
|
10
|
-
const [defaultValue] = args;
|
|
11
|
-
return (result) => unwrapErr(result) ?? defaultValue;
|
|
12
|
-
}
|
|
4
|
+
switch (args.length) {
|
|
5
|
+
case 2: {
|
|
6
|
+
const [result, defaultValue] = args;
|
|
7
|
+
return unwrapErr(result) ?? defaultValue;
|
|
13
8
|
}
|
|
9
|
+
case 1: {
|
|
10
|
+
const [defaultValue] = args;
|
|
11
|
+
return (result) => unwrapErr(result) ?? defaultValue;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
export { unwrapErrOr };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-err-or.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err-or.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-err-or.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err-or.mts"],"sourcesContent":["import { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { unwrapErr } from './ternary-result-unwrap-err.mjs';\nimport { type UnwrapErr } from './types.mjs';\n\n/**\n * Returns the Err value or the provided default.\n *\n * @example\n *\n * ```ts\n * const okValue = TernaryResult.ok('value');\n *\n * assert.strictEqual(\n * TernaryResult.unwrapErrOr(okValue, 'default'),\n * 'default',\n * );\n *\n * const unwrapErr = TernaryResult.unwrapErrOr('fallback error');\n *\n * assert.strictEqual(unwrapErr(TernaryResult.err('boom')), 'boom');\n *\n * assert.strictEqual(\n * unwrapErr(TernaryResult.warn('value', 'warn')),\n * 'fallback error',\n * );\n * ```\n */\nexport function unwrapErrOr<R extends UnknownTernaryResult, D>(\n result: R,\n defaultValue: D,\n): D | UnwrapErr<R>;\n\n// Curried version\nexport function unwrapErrOr<D>(\n defaultValue: D,\n): <R extends UnknownTernaryResult>(result: R) => D | UnwrapErr<R>;\n\nexport function unwrapErrOr<R extends UnknownTernaryResult, D>(\n ...args: readonly [result: R, defaultValue: D] | readonly [defaultValue: D]\n): D | UnwrapErr<R> | ((result: R) => D | UnwrapErr<R>) {\n switch (args.length) {\n case 2: {\n const [result, defaultValue] = args;\n\n return unwrapErr(result) ?? defaultValue;\n }\n\n case 1: {\n const [defaultValue] = args;\n\n return (result: R) => unwrapErr(result) ?? defaultValue;\n }\n }\n}\n"],"names":[],"mappings":";;AAqCO,SAAS,eACX,IAAA,EACmD;AACtD,EAAA,QAAQ,KAAK,MAAA;AAAQ,IACnB,KAAK,CAAA,EAAG;AACN,MAAA,MAAM,CAAC,MAAA,EAAQ,YAAY,CAAA,GAAI,IAAA;AAE/B,MAAA,OAAO,SAAA,CAAU,MAAM,CAAA,IAAK,YAAA;AAAA,IAC9B;AAAA,IAEA,KAAK,CAAA,EAAG;AACN,MAAA,MAAM,CAAC,YAAY,CAAA,GAAI,IAAA;AAEvB,MAAA,OAAO,CAAC,MAAA,KAAc,SAAA,CAAU,MAAM,CAAA,IAAK,YAAA;AAAA,IAC7C;AAAA;AAEJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-err-throw.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAG7E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,oBAAoB,
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-err-throw.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAG7E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,oBAAoB,UACnD,CAAC,UACF,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,KACpD,SAAS,CAAC,CAAC,CAeb,CAAC"}
|
|
@@ -4,34 +4,19 @@ import { isErr } from './ternary-result-is-err.mjs';
|
|
|
4
4
|
import { isWarn } from './ternary-result-is-warn.mjs';
|
|
5
5
|
import { variantName } from './variant-name.mjs';
|
|
6
6
|
|
|
7
|
-
/**
|
|
8
|
-
* Returns the Err value or throws if the result is not Err.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* const errValue = TernaryResult.err('boom');
|
|
14
|
-
*
|
|
15
|
-
* assert.strictEqual(TernaryResult.unwrapErrThrow(errValue), 'boom');
|
|
16
|
-
*
|
|
17
|
-
* assert.throws(
|
|
18
|
-
* () => TernaryResult.unwrapErrThrow(TernaryResult.ok('value')),
|
|
19
|
-
* /Expected Err/u,
|
|
20
|
-
* );
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
7
|
const unwrapErrThrow = (result, toStr = unknownToString) => {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
8
|
+
if (isErr(result)) {
|
|
9
|
+
return result.value;
|
|
10
|
+
}
|
|
11
|
+
const variant = variantName(result.$$tag);
|
|
12
|
+
const payload = isWarn(result) ? (
|
|
13
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
14
|
+
result.warning
|
|
15
|
+
) : (
|
|
16
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
17
|
+
result.value
|
|
18
|
+
);
|
|
19
|
+
throw new Error(`Expected Err but got ${variant}: ${toStr(payload)}`);
|
|
35
20
|
};
|
|
36
21
|
|
|
37
22
|
export { unwrapErrThrow };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-err-throw.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-err-throw.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mts"],"sourcesContent":["import { unknownToString } from '../../../others/index.mjs';\nimport { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { isErr } from './ternary-result-is-err.mjs';\nimport { isWarn } from './ternary-result-is-warn.mjs';\nimport { type UnwrapErr, type UnwrapOk, type UnwrapWarn } from './types.mjs';\nimport { variantName } from './variant-name.mjs';\n\n/**\n * Returns the Err value or throws if the result is not Err.\n *\n * @example\n *\n * ```ts\n * const errValue = TernaryResult.err('boom');\n *\n * assert.strictEqual(TernaryResult.unwrapErrThrow(errValue), 'boom');\n *\n * assert.throws(\n * () => TernaryResult.unwrapErrThrow(TernaryResult.ok('value')),\n * /Expected Err/u,\n * );\n * ```\n */\nexport const unwrapErrThrow = <R extends UnknownTernaryResult>(\n result: R,\n toStr: (value: UnwrapOk<R> | UnwrapWarn<R>) => string = unknownToString,\n): UnwrapErr<R> => {\n if (isErr(result)) {\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n return result.value as UnwrapErr<R>;\n }\n\n const variant = variantName(result.$$tag);\n\n const payload = isWarn(result)\n ? // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n (result.warning as UnwrapWarn<R> as UnwrapOk<R> | UnwrapWarn<R>)\n : // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n (result.value as UnwrapOk<R> as UnwrapOk<R> | UnwrapWarn<R>);\n\n throw new Error(`Expected Err but got ${variant}: ${toStr(payload)}`);\n};\n"],"names":[],"mappings":";;;;;;AAuBO,MAAM,cAAA,GAAiB,CAC5B,MAAA,EACA,KAAA,GAAwD,eAAA,KACvC;AACjB,EAAA,IAAI,KAAA,CAAM,MAAM,CAAA,EAAG;AAEjB,IAAA,OAAO,MAAA,CAAO,KAAA;AAAA,EAChB;AAEA,EAAA,MAAM,OAAA,GAAU,WAAA,CAAY,MAAA,CAAO,KAAK,CAAA;AAExC,EAAA,MAAM,OAAA,GAAU,OAAO,MAAM,CAAA;AAAA;AAAA,IAExB,MAAA,CAAO;AAAA;AAAA;AAAA,IAEP,MAAA,CAAO;AAAA,GAAA;AAEZ,EAAA,MAAM,IAAI,MAAM,CAAA,qBAAA,EAAwB,OAAO,KAAK,KAAA,CAAM,OAAO,CAAC,CAAA,CAAE,CAAA;AACtE;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-err.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,oBAAoB,
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-err.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,oBAAoB,UAC9C,CAAC,KACR,SAAS,CAAC,CAAC,CAAC,GAAG,SAE0C,CAAC"}
|
|
@@ -1,24 +1,9 @@
|
|
|
1
1
|
import { isErr } from './ternary-result-is-err.mjs';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*
|
|
8
|
-
* ```ts
|
|
9
|
-
* const errValue = TernaryResult.err('fail');
|
|
10
|
-
*
|
|
11
|
-
* const okValue = TernaryResult.ok('value');
|
|
12
|
-
*
|
|
13
|
-
* assert.strictEqual(TernaryResult.unwrapErr(errValue), 'fail');
|
|
14
|
-
*
|
|
15
|
-
* // eslint-disable-next-line @typescript-eslint/no-confusing-void-expression
|
|
16
|
-
* assert.strictEqual(TernaryResult.unwrapErr(okValue), undefined);
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
const unwrapErr = (result) =>
|
|
20
|
-
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
21
|
-
isErr(result) ? result.value : undefined;
|
|
3
|
+
const unwrapErr = (result) => (
|
|
4
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
5
|
+
isErr(result) ? result.value : void 0
|
|
6
|
+
);
|
|
22
7
|
|
|
23
8
|
export { unwrapErr };
|
|
24
9
|
//# sourceMappingURL=ternary-result-unwrap-err.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-err.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-err.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-err.mts"],"sourcesContent":["import { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { isErr } from './ternary-result-is-err.mjs';\nimport { type UnwrapErr } from './types.mjs';\n\n/**\n * Safely unwraps the Err value.\n *\n * @example\n *\n * ```ts\n * const errValue = TernaryResult.err('fail');\n *\n * const okValue = TernaryResult.ok('value');\n *\n * assert.strictEqual(TernaryResult.unwrapErr(errValue), 'fail');\n *\n * // eslint-disable-next-line @typescript-eslint/no-confusing-void-expression\n * assert.strictEqual(TernaryResult.unwrapErr(okValue), undefined);\n * ```\n */\nexport const unwrapErr = <R extends UnknownTernaryResult>(\n result: R,\n): UnwrapErr<R> | undefined =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n isErr(result) ? (result.value as UnwrapErr<R>) : undefined;\n"],"names":[],"mappings":";;AAoBO,MAAM,YAAY,CACvB,MAAA;AAAA;AAAA,EAGA,KAAA,CAAM,MAAM,CAAA,GAAK,MAAA,CAAO,KAAA,GAAyB;AAAA;;;;"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { unwrapOk } from './ternary-result-unwrap-ok.mjs';
|
|
2
2
|
|
|
3
3
|
function unwrapOkOr(...args) {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
case 1: {
|
|
10
|
-
const [defaultValue] = args;
|
|
11
|
-
return (result) => unwrapOk(result) ?? defaultValue;
|
|
12
|
-
}
|
|
4
|
+
switch (args.length) {
|
|
5
|
+
case 2: {
|
|
6
|
+
const [result, defaultValue] = args;
|
|
7
|
+
return unwrapOk(result) ?? defaultValue;
|
|
13
8
|
}
|
|
9
|
+
case 1: {
|
|
10
|
+
const [defaultValue] = args;
|
|
11
|
+
return (result) => unwrapOk(result) ?? defaultValue;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
export { unwrapOkOr };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-ok-or.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-ok-or.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mts"],"sourcesContent":["import { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { unwrapOk } from './ternary-result-unwrap-ok.mjs';\nimport { type UnwrapOk } from './types.mjs';\n\n/**\n * Returns the Ok value or the provided default.\n *\n * @example\n *\n * ```ts\n * const errValue = TernaryResult.err('err');\n *\n * assert.strictEqual(TernaryResult.unwrapOkOr(errValue, 0), 0);\n *\n * const unwrapWithDefault = TernaryResult.unwrapOkOr('fallback');\n *\n * assert.strictEqual(unwrapWithDefault(TernaryResult.ok(5)), 5);\n *\n * assert.strictEqual(\n * unwrapWithDefault(TernaryResult.warn('warn-value', 'warn')),\n * 'warn-value',\n * );\n * ```\n */\nexport function unwrapOkOr<R extends UnknownTernaryResult, D>(\n result: R,\n defaultValue: D,\n): D | UnwrapOk<R>;\n\n// Curried version\nexport function unwrapOkOr<D>(\n defaultValue: D,\n): <R extends UnknownTernaryResult>(result: R) => D | UnwrapOk<R>;\n\nexport function unwrapOkOr<R extends UnknownTernaryResult, D>(\n ...args: readonly [result: R, defaultValue: D] | readonly [defaultValue: D]\n): D | UnwrapOk<R> | ((result: R) => D | UnwrapOk<R>) {\n switch (args.length) {\n case 2: {\n const [result, defaultValue] = args;\n\n return unwrapOk(result) ?? defaultValue;\n }\n\n case 1: {\n const [defaultValue] = args;\n\n return (result: R) => unwrapOk(result) ?? defaultValue;\n }\n }\n}\n"],"names":[],"mappings":";;AAkCO,SAAS,cACX,IAAA,EACiD;AACpD,EAAA,QAAQ,KAAK,MAAA;AAAQ,IACnB,KAAK,CAAA,EAAG;AACN,MAAA,MAAM,CAAC,MAAA,EAAQ,YAAY,CAAA,GAAI,IAAA;AAE/B,MAAA,OAAO,QAAA,CAAS,MAAM,CAAA,IAAK,YAAA;AAAA,IAC7B;AAAA,IAEA,KAAK,CAAA,EAAG;AACN,MAAA,MAAM,CAAC,YAAY,CAAA,GAAI,IAAA;AAEvB,MAAA,OAAO,CAAC,MAAA,KAAc,QAAA,CAAS,MAAM,CAAA,IAAK,YAAA;AAAA,IAC5C;AAAA;AAEJ;;;;"}
|
|
@@ -2,11 +2,10 @@ import { isOk } from './ternary-result-is-ok.mjs';
|
|
|
2
2
|
import { isWarn } from './ternary-result-is-warn.mjs';
|
|
3
3
|
|
|
4
4
|
function unwrapOk(result) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
return undefined;
|
|
5
|
+
if (isOk(result) || isWarn(result)) {
|
|
6
|
+
return result.value;
|
|
7
|
+
}
|
|
8
|
+
return void 0;
|
|
10
9
|
}
|
|
11
10
|
|
|
12
11
|
export { unwrapOk };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-ok.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-ok.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-ok.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-ok.mts"],"sourcesContent":["import {\n type TernaryOk,\n type UnknownTernaryResult,\n} from '../ternary-result.mjs';\nimport { isOk } from './ternary-result-is-ok.mjs';\nimport { isWarn } from './ternary-result-is-warn.mjs';\nimport { type UnwrapOk } from './types.mjs';\n\n/**\n * Safely unwraps the Ok value.\n *\n * @example\n *\n * ```ts\n * const okValue = TernaryResult.ok(3);\n *\n * const warnValue = TernaryResult.warn(4, 'warn');\n *\n * assert.strictEqual(TernaryResult.unwrapOk(okValue), 3);\n *\n * assert.strictEqual(TernaryResult.unwrapOk(warnValue), 4);\n * ```\n */\nexport function unwrapOk<R extends TernaryOk<unknown>>(result: R): UnwrapOk<R>;\n\nexport function unwrapOk<R extends UnknownTernaryResult>(\n result: R,\n): UnwrapOk<R> | undefined;\n\nexport function unwrapOk<R extends UnknownTernaryResult>(\n result: R,\n): UnwrapOk<R> | undefined {\n if (isOk(result) || isWarn(result)) {\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n return result.value as UnwrapOk<R>;\n }\n\n return undefined;\n}\n"],"names":[],"mappings":";;;AA6BO,SAAS,SACd,MAAA,EACyB;AACzB,EAAA,IAAI,IAAA,CAAK,MAAM,CAAA,IAAK,MAAA,CAAO,MAAM,CAAA,EAAG;AAElC,IAAA,OAAO,MAAA,CAAO,KAAA;AAAA,EAChB;AAEA,EAAA,OAAO,MAAA;AACT;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-throw.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-throw.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAE7E;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,oBAAoB,
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-throw.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-throw.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAE7E;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS,oBAAoB,UAChD,CAAC,UACF,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,MAAM,KACrD,QAAQ,CAAC,CAAC,CAqBZ,CAAC"}
|
|
@@ -3,36 +3,24 @@ import { unknownToString } from '../../../others/unknown-to-string.mjs';
|
|
|
3
3
|
import { isErr } from './ternary-result-is-err.mjs';
|
|
4
4
|
import { isWarn } from './ternary-result-is-warn.mjs';
|
|
5
5
|
|
|
6
|
-
/**
|
|
7
|
-
* Returns the Ok value or throws if the result is Warn or Err.
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
*
|
|
11
|
-
* ```ts
|
|
12
|
-
* const okValue = TernaryResult.ok('ready');
|
|
13
|
-
*
|
|
14
|
-
* assert.strictEqual(TernaryResult.unwrapThrow(okValue), 'ready');
|
|
15
|
-
*
|
|
16
|
-
* const throwTest = (): void => {
|
|
17
|
-
* TernaryResult.unwrapThrow(TernaryResult.warn('warn', 'warned'));
|
|
18
|
-
* };
|
|
19
|
-
*
|
|
20
|
-
* assert.throws(throwTest, /Expected Ok/u);
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
6
|
const unwrapThrow = (result, toStr = unknownToString) => {
|
|
24
|
-
|
|
25
|
-
|
|
7
|
+
if (isErr(result)) {
|
|
8
|
+
throw new Error(
|
|
9
|
+
`Expected Ok but got Err: ${toStr(
|
|
26
10
|
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
27
|
-
result.value
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
11
|
+
result.value
|
|
12
|
+
)}`
|
|
13
|
+
);
|
|
14
|
+
}
|
|
15
|
+
if (isWarn(result)) {
|
|
16
|
+
throw new Error(
|
|
17
|
+
`Expected Ok but got Warn: ${toStr(
|
|
31
18
|
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
32
|
-
result.warning
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
19
|
+
result.warning
|
|
20
|
+
)}`
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
return result.value;
|
|
36
24
|
};
|
|
37
25
|
|
|
38
26
|
export { unwrapThrow };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-throw.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-throw.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-throw.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-throw.mts"],"sourcesContent":["import { unknownToString } from '../../../others/index.mjs';\nimport { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { isErr } from './ternary-result-is-err.mjs';\nimport { isWarn } from './ternary-result-is-warn.mjs';\nimport { type UnwrapErr, type UnwrapOk, type UnwrapWarn } from './types.mjs';\n\n/**\n * Returns the Ok value or throws if the result is Warn or Err.\n *\n * @example\n *\n * ```ts\n * const okValue = TernaryResult.ok('ready');\n *\n * assert.strictEqual(TernaryResult.unwrapThrow(okValue), 'ready');\n *\n * const throwTest = (): void => {\n * TernaryResult.unwrapThrow(TernaryResult.warn('warn', 'warned'));\n * };\n *\n * assert.throws(throwTest, /Expected Ok/u);\n * ```\n */\nexport const unwrapThrow = <R extends UnknownTernaryResult>(\n result: R,\n toStr: (value: UnwrapWarn<R> | UnwrapErr<R>) => string = unknownToString,\n): UnwrapOk<R> => {\n if (isErr(result)) {\n throw new Error(\n `Expected Ok but got Err: ${toStr(\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n result.value as UnwrapErr<R>,\n )}`,\n );\n }\n\n if (isWarn(result)) {\n throw new Error(\n `Expected Ok but got Warn: ${toStr(\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n result.warning as UnwrapWarn<R>,\n )}`,\n );\n }\n\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n return result.value as UnwrapOk<R>;\n};\n"],"names":[],"mappings":";;;;;AAuBO,MAAM,WAAA,GAAc,CACzB,MAAA,EACA,KAAA,GAAyD,eAAA,KACzC;AAChB,EAAA,IAAI,KAAA,CAAM,MAAM,CAAA,EAAG;AACjB,IAAA,MAAM,IAAI,KAAA;AAAA,MACR,CAAA,yBAAA,EAA4B,KAAA;AAAA;AAAA,QAE1B,MAAA,CAAO;AAAA,OACR,CAAA;AAAA,KACH;AAAA,EACF;AAEA,EAAA,IAAI,MAAA,CAAO,MAAM,CAAA,EAAG;AAClB,IAAA,MAAM,IAAI,KAAA;AAAA,MACR,CAAA,0BAAA,EAA6B,KAAA;AAAA;AAAA,QAE3B,MAAA,CAAO;AAAA,OACR,CAAA;AAAA,KACH;AAAA,EACF;AAGA,EAAA,OAAO,MAAA,CAAO,KAAA;AAChB;;;;"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { unwrapWarn } from './ternary-result-unwrap-warn.mjs';
|
|
2
2
|
|
|
3
3
|
function unwrapWarnOr(...args) {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
case 1: {
|
|
10
|
-
const [defaultValue] = args;
|
|
11
|
-
return (result) => unwrapWarn(result) ?? defaultValue;
|
|
12
|
-
}
|
|
4
|
+
switch (args.length) {
|
|
5
|
+
case 2: {
|
|
6
|
+
const [result, defaultValue] = args;
|
|
7
|
+
return unwrapWarn(result) ?? defaultValue;
|
|
13
8
|
}
|
|
9
|
+
case 1: {
|
|
10
|
+
const [defaultValue] = args;
|
|
11
|
+
return (result) => unwrapWarn(result) ?? defaultValue;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
export { unwrapWarnOr };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-warn-or.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-warn-or.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mts"],"sourcesContent":["import { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { unwrapWarn } from './ternary-result-unwrap-warn.mjs';\nimport { type UnwrapWarn } from './types.mjs';\n\n/**\n * Returns the Warn value or the provided default.\n *\n * @example\n *\n * ```ts\n * const okValue = TernaryResult.ok('value');\n *\n * assert.strictEqual(TernaryResult.unwrapWarnOr(okValue, 'warn'), 'warn');\n *\n * const unwrapWarn = TernaryResult.unwrapWarnOr('fallback warn');\n *\n * assert.strictEqual(unwrapWarn(TernaryResult.warn('value', 'slow')), 'slow');\n *\n * assert.strictEqual(unwrapWarn(TernaryResult.err('err')), 'fallback warn');\n * ```\n */\nexport function unwrapWarnOr<R extends UnknownTernaryResult, D>(\n result: R,\n defaultValue: D,\n): D | UnwrapWarn<R>;\n\n// Curried version\nexport function unwrapWarnOr<D>(\n defaultValue: D,\n): <R extends UnknownTernaryResult>(result: R) => D | UnwrapWarn<R>;\n\nexport function unwrapWarnOr<R extends UnknownTernaryResult, D>(\n ...args: readonly [result: R, defaultValue: D] | readonly [defaultValue: D]\n): D | UnwrapWarn<R> | ((result: R) => D | UnwrapWarn<R>) {\n switch (args.length) {\n case 2: {\n const [result, defaultValue] = args;\n\n return unwrapWarn(result) ?? defaultValue;\n }\n\n case 1: {\n const [defaultValue] = args;\n\n return (result: R) => unwrapWarn(result) ?? defaultValue;\n }\n }\n}\n"],"names":[],"mappings":";;AA+BO,SAAS,gBACX,IAAA,EACqD;AACxD,EAAA,QAAQ,KAAK,MAAA;AAAQ,IACnB,KAAK,CAAA,EAAG;AACN,MAAA,MAAM,CAAC,MAAA,EAAQ,YAAY,CAAA,GAAI,IAAA;AAE/B,MAAA,OAAO,UAAA,CAAW,MAAM,CAAA,IAAK,YAAA;AAAA,IAC/B;AAAA,IAEA,KAAK,CAAA,EAAG;AACN,MAAA,MAAM,CAAC,YAAY,CAAA,GAAI,IAAA;AAEvB,MAAA,OAAO,CAAC,MAAA,KAAc,UAAA,CAAW,MAAM,CAAA,IAAK,YAAA;AAAA,IAC9C;AAAA;AAEJ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-warn-throw.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAG7E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,oBAAoB,
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-warn-throw.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAG7E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,oBAAoB,UACpD,CAAC,UACF,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,MAAM,KACnD,UAAU,CAAC,CAAC,CAcd,CAAC"}
|
|
@@ -3,31 +3,17 @@ import { unknownToString } from '../../../others/unknown-to-string.mjs';
|
|
|
3
3
|
import { isWarn } from './ternary-result-is-warn.mjs';
|
|
4
4
|
import { variantName } from './variant-name.mjs';
|
|
5
5
|
|
|
6
|
-
/**
|
|
7
|
-
* Returns the Warn value or throws if the result is not Warn.
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
*
|
|
11
|
-
* ```ts
|
|
12
|
-
* const warnValue = TernaryResult.warn('pending', 'check logs');
|
|
13
|
-
*
|
|
14
|
-
* assert.strictEqual(TernaryResult.unwrapWarnThrow(warnValue), 'check logs');
|
|
15
|
-
*
|
|
16
|
-
* assert.throws(
|
|
17
|
-
* () => TernaryResult.unwrapWarnThrow(TernaryResult.err('err')),
|
|
18
|
-
* /Expected Warn/u,
|
|
19
|
-
* );
|
|
20
|
-
* ```
|
|
21
|
-
*/
|
|
22
6
|
const unwrapWarnThrow = (result, toStr = unknownToString) => {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
7
|
+
if (isWarn(result)) {
|
|
8
|
+
return result.warning;
|
|
9
|
+
}
|
|
10
|
+
const variant = variantName(result.$$tag);
|
|
11
|
+
throw new Error(
|
|
12
|
+
`Expected Warn but got ${variant}: ${toStr(
|
|
13
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
14
|
+
result.value
|
|
15
|
+
)}`
|
|
16
|
+
);
|
|
31
17
|
};
|
|
32
18
|
|
|
33
19
|
export { unwrapWarnThrow };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-warn-throw.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-warn-throw.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mts"],"sourcesContent":["import { unknownToString } from '../../../others/index.mjs';\nimport { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { isWarn } from './ternary-result-is-warn.mjs';\nimport { type UnwrapErr, type UnwrapOk, type UnwrapWarn } from './types.mjs';\nimport { variantName } from './variant-name.mjs';\n\n/**\n * Returns the Warn value or throws if the result is not Warn.\n *\n * @example\n *\n * ```ts\n * const warnValue = TernaryResult.warn('pending', 'check logs');\n *\n * assert.strictEqual(TernaryResult.unwrapWarnThrow(warnValue), 'check logs');\n *\n * assert.throws(\n * () => TernaryResult.unwrapWarnThrow(TernaryResult.err('err')),\n * /Expected Warn/u,\n * );\n * ```\n */\nexport const unwrapWarnThrow = <R extends UnknownTernaryResult>(\n result: R,\n toStr: (value: UnwrapOk<R> | UnwrapErr<R>) => string = unknownToString,\n): UnwrapWarn<R> => {\n if (isWarn(result)) {\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n return result.warning as UnwrapWarn<R>;\n }\n\n const variant = variantName(result.$$tag);\n\n throw new Error(\n `Expected Warn but got ${variant}: ${toStr(\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n result.value as UnwrapOk<R> | UnwrapErr<R>,\n )}`,\n );\n};\n"],"names":[],"mappings":";;;;;AAsBO,MAAM,eAAA,GAAkB,CAC7B,MAAA,EACA,KAAA,GAAuD,eAAA,KACrC;AAClB,EAAA,IAAI,MAAA,CAAO,MAAM,CAAA,EAAG;AAElB,IAAA,OAAO,MAAA,CAAO,OAAA;AAAA,EAChB;AAEA,EAAA,MAAM,OAAA,GAAU,WAAA,CAAY,MAAA,CAAO,KAAK,CAAA;AAExC,EAAA,MAAM,IAAI,KAAA;AAAA,IACR,CAAA,sBAAA,EAAyB,OAAO,CAAA,EAAA,EAAK,KAAA;AAAA;AAAA,MAEnC,MAAA,CAAO;AAAA,KACR,CAAA;AAAA,GACH;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-warn.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,oBAAoB,
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-warn.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,oBAAoB,UAC/C,CAAC,KACR,UAAU,CAAC,CAAC,CAAC,GAAG,SAE6C,CAAC"}
|
|
@@ -1,24 +1,9 @@
|
|
|
1
1
|
import { isWarn } from './ternary-result-is-warn.mjs';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*
|
|
8
|
-
* ```ts
|
|
9
|
-
* const warnValue = TernaryResult.warn('ok', 'careful');
|
|
10
|
-
*
|
|
11
|
-
* const okValue = TernaryResult.ok('ok');
|
|
12
|
-
*
|
|
13
|
-
* assert.strictEqual(TernaryResult.unwrapWarn(warnValue), 'careful');
|
|
14
|
-
*
|
|
15
|
-
* // eslint-disable-next-line @typescript-eslint/no-confusing-void-expression
|
|
16
|
-
* assert.strictEqual(TernaryResult.unwrapWarn(okValue), undefined);
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
const unwrapWarn = (result) =>
|
|
20
|
-
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
21
|
-
isWarn(result) ? result.warning : undefined;
|
|
3
|
+
const unwrapWarn = (result) => (
|
|
4
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
5
|
+
isWarn(result) ? result.warning : void 0
|
|
6
|
+
);
|
|
22
7
|
|
|
23
8
|
export { unwrapWarn };
|
|
24
9
|
//# sourceMappingURL=ternary-result-unwrap-warn.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-unwrap-warn.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-unwrap-warn.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-unwrap-warn.mts"],"sourcesContent":["import { type UnknownTernaryResult } from '../ternary-result.mjs';\nimport { isWarn } from './ternary-result-is-warn.mjs';\nimport { type UnwrapWarn } from './types.mjs';\n\n/**\n * Safely unwraps the Warn value.\n *\n * @example\n *\n * ```ts\n * const warnValue = TernaryResult.warn('ok', 'careful');\n *\n * const okValue = TernaryResult.ok('ok');\n *\n * assert.strictEqual(TernaryResult.unwrapWarn(warnValue), 'careful');\n *\n * // eslint-disable-next-line @typescript-eslint/no-confusing-void-expression\n * assert.strictEqual(TernaryResult.unwrapWarn(okValue), undefined);\n * ```\n */\nexport const unwrapWarn = <R extends UnknownTernaryResult>(\n result: R,\n): UnwrapWarn<R> | undefined =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n isWarn(result) ? (result.warning as UnwrapWarn<R>) : undefined;\n"],"names":[],"mappings":";;AAoBO,MAAM,aAAa,CACxB,MAAA;AAAA;AAAA,EAGA,MAAA,CAAO,MAAM,CAAA,GAAK,MAAA,CAAO,OAAA,GAA4B;AAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-warn.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-warn.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGzD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,IAAI,GAAI,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"ternary-result-warn.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-warn.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGzD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,IAAI,GAAI,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,SAC5B,CAAC,WACC,CAAC,KACT,WAAW,CAAC,CAAC,EAAE,CAAC,CAKN,CAAC"}
|
|
@@ -1,25 +1,9 @@
|
|
|
1
1
|
import { WarnTypeTagName } from './tag.mjs';
|
|
2
2
|
|
|
3
|
-
/**
|
|
4
|
-
* Creates a `TernaryResult.Warn` containing the provided success value and
|
|
5
|
-
* warning.
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
*
|
|
9
|
-
* ```ts
|
|
10
|
-
* const caution = TernaryResult.warn({ id: 1 }, 'Needs review');
|
|
11
|
-
*
|
|
12
|
-
* assert.deepStrictEqual(caution, {
|
|
13
|
-
* $$tag: 'ts-data-forge::Result.warn',
|
|
14
|
-
* value: { id: 1 },
|
|
15
|
-
* warning: 'Needs review',
|
|
16
|
-
* });
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
3
|
const warn = (value, warning) => ({
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
4
|
+
$$tag: WarnTypeTagName,
|
|
5
|
+
value,
|
|
6
|
+
warning
|
|
23
7
|
});
|
|
24
8
|
|
|
25
9
|
export { warn };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-warn.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-warn.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-warn.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-warn.mts"],"sourcesContent":["import { type TernaryWarn } from '../ternary-result.mjs';\nimport { WarnTypeTagName } from './tag.mjs';\n\n/**\n * Creates a `TernaryResult.Warn` containing the provided success value and\n * warning.\n *\n * @example\n *\n * ```ts\n * const caution = TernaryResult.warn({ id: 1 }, 'Needs review');\n *\n * assert.deepStrictEqual(caution, {\n * $$tag: 'ts-data-forge::Result.warn',\n * value: { id: 1 },\n * warning: 'Needs review',\n * });\n * ```\n */\nexport const warn = <const S, const W>(\n value: S,\n warning: W,\n): TernaryWarn<S, W> =>\n ({\n $$tag: WarnTypeTagName,\n value,\n warning,\n }) as const;\n"],"names":[],"mappings":";;AAmBO,MAAM,IAAA,GAAO,CAClB,KAAA,EACA,OAAA,MAEC;AAAA,EACC,KAAA,EAAO,eAAA;AAAA,EACP,KAAA;AAAA,EACA;AACF,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-zip.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-zip.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAM3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,GAAG,GAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"ternary-result-zip.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/ternary-result-zip.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAM3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,GAAG,GAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,WAC/B,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,WACzB,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KACjC,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAoBnD,CAAC"}
|
|
@@ -3,52 +3,21 @@ import { isWarn } from './ternary-result-is-warn.mjs';
|
|
|
3
3
|
import { ok } from './ternary-result-ok.mjs';
|
|
4
4
|
import { warn } from './ternary-result-warn.mjs';
|
|
5
5
|
|
|
6
|
-
/**
|
|
7
|
-
* Combines two `TernaryResult`s, prioritising Err over Warn over Ok.
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
*
|
|
11
|
-
* ```ts
|
|
12
|
-
* const okPair = TernaryResult.zip(
|
|
13
|
-
* TernaryResult.ok('left'),
|
|
14
|
-
* TernaryResult.ok(1),
|
|
15
|
-
* );
|
|
16
|
-
*
|
|
17
|
-
* const warnPair = TernaryResult.zip(
|
|
18
|
-
* TernaryResult.warn('left', 'warn'),
|
|
19
|
-
* TernaryResult.ok(1),
|
|
20
|
-
* );
|
|
21
|
-
*
|
|
22
|
-
* const errPair = TernaryResult.zip(
|
|
23
|
-
* TernaryResult.ok('left'),
|
|
24
|
-
* TernaryResult.err('err'),
|
|
25
|
-
* );
|
|
26
|
-
*
|
|
27
|
-
* assert.deepStrictEqual(okPair, TernaryResult.ok(['left', 1] as const));
|
|
28
|
-
*
|
|
29
|
-
* assert.deepStrictEqual(
|
|
30
|
-
* warnPair,
|
|
31
|
-
* TernaryResult.warn(['left', 1] as const, 'warn'),
|
|
32
|
-
* );
|
|
33
|
-
*
|
|
34
|
-
* assert.deepStrictEqual(errPair, TernaryResult.err('err'));
|
|
35
|
-
* ```
|
|
36
|
-
*/
|
|
37
6
|
const zip = (resultA, resultB) => {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
7
|
+
if (isErr(resultA)) {
|
|
8
|
+
return resultA;
|
|
9
|
+
}
|
|
10
|
+
if (isErr(resultB)) {
|
|
11
|
+
return resultB;
|
|
12
|
+
}
|
|
13
|
+
const pair = [resultA.value, resultB.value];
|
|
14
|
+
if (isWarn(resultA)) {
|
|
15
|
+
return warn(pair, resultA.warning);
|
|
16
|
+
}
|
|
17
|
+
if (isWarn(resultB)) {
|
|
18
|
+
return warn(pair, resultB.warning);
|
|
19
|
+
}
|
|
20
|
+
return ok(pair);
|
|
52
21
|
};
|
|
53
22
|
|
|
54
23
|
export { zip };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ternary-result-zip.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-zip.mts"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"ternary-result-zip.mjs","sources":["../../../../src/functional/ternary-result/impl/ternary-result-zip.mts"],"sourcesContent":["import { type TernaryResult } from '../ternary-result.mjs';\nimport { isErr } from './ternary-result-is-err.mjs';\nimport { isWarn } from './ternary-result-is-warn.mjs';\nimport { ok } from './ternary-result-ok.mjs';\nimport { warn } from './ternary-result-warn.mjs';\n\n/**\n * Combines two `TernaryResult`s, prioritising Err over Warn over Ok.\n *\n * @example\n *\n * ```ts\n * const okPair = TernaryResult.zip(\n * TernaryResult.ok('left'),\n * TernaryResult.ok(1),\n * );\n *\n * const warnPair = TernaryResult.zip(\n * TernaryResult.warn('left', 'warn'),\n * TernaryResult.ok(1),\n * );\n *\n * const errPair = TernaryResult.zip(\n * TernaryResult.ok('left'),\n * TernaryResult.err('err'),\n * );\n *\n * assert.deepStrictEqual(okPair, TernaryResult.ok(['left', 1] as const));\n *\n * assert.deepStrictEqual(\n * warnPair,\n * TernaryResult.warn(['left', 1] as const, 'warn'),\n * );\n *\n * assert.deepStrictEqual(errPair, TernaryResult.err('err'));\n * ```\n */\nexport const zip = <S1, W1, E1, S2, W2, E2>(\n resultA: TernaryResult<S1, E1, W1>,\n resultB: TernaryResult<S2, E2, W2>,\n): TernaryResult<readonly [S1, S2], E1 | E2, W1 | W2> => {\n if (isErr(resultA)) {\n return resultA;\n }\n\n if (isErr(resultB)) {\n return resultB;\n }\n\n const pair = [resultA.value, resultB.value] as const;\n\n if (isWarn(resultA)) {\n return warn(pair, resultA.warning);\n }\n\n if (isWarn(resultB)) {\n return warn(pair, resultB.warning);\n }\n\n return ok(pair);\n};\n"],"names":[],"mappings":";;;;;AAqCO,MAAM,GAAA,GAAM,CACjB,OAAA,EACA,OAAA,KACuD;AACvD,EAAA,IAAI,KAAA,CAAM,OAAO,CAAA,EAAG;AAClB,IAAA,OAAO,OAAA;AAAA,EACT;AAEA,EAAA,IAAI,KAAA,CAAM,OAAO,CAAA,EAAG;AAClB,IAAA,OAAO,OAAA;AAAA,EACT;AAEA,EAAA,MAAM,IAAA,GAAO,CAAC,OAAA,CAAQ,KAAA,EAAO,QAAQ,KAAK,CAAA;AAE1C,EAAA,IAAI,MAAA,CAAO,OAAO,CAAA,EAAG;AACnB,IAAA,OAAO,IAAA,CAAK,IAAA,EAAM,OAAA,CAAQ,OAAO,CAAA;AAAA,EACnC;AAEA,EAAA,IAAI,MAAA,CAAO,OAAO,CAAA,EAAG;AACnB,IAAA,OAAO,IAAA,CAAK,IAAA,EAAM,OAAA,CAAQ,OAAO,CAAA;AAAA,EACnC;AAEA,EAAA,OAAO,GAAG,IAAI,CAAA;AAChB;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type UnknownTernaryResult } from '../ternary-result.mjs';
|
|
2
2
|
/** @internal Returns the human readable variant label for the given tag. */
|
|
3
|
-
export declare const variantName: (tag: UnknownTernaryResult[
|
|
3
|
+
export declare const variantName: (tag: UnknownTernaryResult['$$tag']) => 'Ok' | 'Warn' | 'Err';
|
|
4
4
|
//# sourceMappingURL=variant-name.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variant-name.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/variant-name.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,4EAA4E;AAC5E,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"variant-name.d.mts","sourceRoot":"","sources":["../../../../src/functional/ternary-result/impl/variant-name.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,4EAA4E;AAC5E,eAAO,MAAM,WAAW,QACjB,oBAAoB,CAAC,OAAO,CAAC,KACjC,IAAI,GAAG,MAAM,GAAG,KAWlB,CAAC"}
|