common-fp 0.1.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/add.cjs +13 -0
- package/dist/add.d.cts +2 -0
- package/dist/add.d.ts +1 -0
- package/dist/add.mjs +13 -0
- package/dist/all.cjs +23 -0
- package/dist/all.d.cts +2 -0
- package/dist/all.d.ts +1 -0
- package/dist/all.mjs +23 -0
- package/dist/alter.cjs +24 -0
- package/dist/alter.d.cts +2 -0
- package/dist/alter.d.ts +1 -0
- package/dist/alter.mjs +24 -0
- package/dist/any.cjs +22 -0
- package/dist/any.d.cts +2 -0
- package/dist/any.d.ts +1 -0
- package/dist/any.mjs +22 -0
- package/dist/append-all.cjs +13 -0
- package/dist/append-all.d.cts +2 -0
- package/dist/append-all.d.ts +1 -0
- package/dist/append-all.mjs +13 -0
- package/dist/append-one.cjs +9 -0
- package/dist/append-one.d.cts +2 -0
- package/dist/append-one.d.ts +1 -0
- package/dist/append-one.mjs +9 -0
- package/dist/append.cjs +13 -0
- package/dist/append.d.cts +2 -0
- package/dist/append.d.ts +1 -0
- package/dist/append.mjs +13 -0
- package/dist/assign-defaults.cjs +43 -0
- package/dist/assign-defaults.d.cts +2 -0
- package/dist/assign-defaults.d.ts +1 -0
- package/dist/assign-defaults.mjs +43 -0
- package/dist/assign-overrides.cjs +43 -0
- package/dist/assign-overrides.d.cts +2 -0
- package/dist/assign-overrides.d.ts +1 -0
- package/dist/assign-overrides.mjs +43 -0
- package/dist/compare-by-path.cjs +24 -0
- package/dist/compare-by-path.d.cts +2 -0
- package/dist/compare-by-path.d.ts +1 -0
- package/dist/compare-by-path.mjs +24 -0
- package/dist/compare-by-prop.cjs +23 -0
- package/dist/compare-by-prop.d.cts +2 -0
- package/dist/compare-by-prop.d.ts +1 -0
- package/dist/compare-by-prop.mjs +23 -0
- package/dist/compose.cjs +15 -0
- package/dist/compose.d.cts +2 -0
- package/dist/compose.d.ts +1 -0
- package/dist/compose.mjs +15 -0
- package/dist/contained-in.cjs +26 -0
- package/dist/contained-in.d.cts +2 -0
- package/dist/contained-in.d.ts +1 -0
- package/dist/contained-in.mjs +26 -0
- package/dist/contains.cjs +28 -0
- package/dist/contains.d.cts +2 -0
- package/dist/contains.d.ts +1 -0
- package/dist/contains.mjs +28 -0
- package/dist/date-is-between.cjs +31 -0
- package/dist/date-is-between.d.cts +2 -0
- package/dist/date-is-between.d.ts +1 -0
- package/dist/date-is-between.mjs +31 -0
- package/dist/default-falsey-val-to.cjs +3 -0
- package/dist/default-falsey-val-to.d.cts +2 -0
- package/dist/default-falsey-val-to.d.ts +1 -0
- package/dist/default-falsey-val-to.mjs +3 -0
- package/dist/default-nullish-val-to.cjs +3 -0
- package/dist/default-nullish-val-to.d.cts +2 -0
- package/dist/default-nullish-val-to.d.ts +1 -0
- package/dist/default-nullish-val-to.mjs +3 -0
- package/dist/discard-first-while.cjs +18 -0
- package/dist/discard-first-while.d.cts +2 -0
- package/dist/discard-first-while.d.ts +1 -0
- package/dist/discard-first-while.mjs +18 -0
- package/dist/discard-first.cjs +16 -0
- package/dist/discard-first.d.cts +2 -0
- package/dist/discard-first.d.ts +1 -0
- package/dist/discard-first.mjs +16 -0
- package/dist/discard-last-while.cjs +17 -0
- package/dist/discard-last-while.d.cts +2 -0
- package/dist/discard-last-while.d.ts +1 -0
- package/dist/discard-last-while.mjs +17 -0
- package/dist/discard-last.cjs +16 -0
- package/dist/discard-last.d.cts +2 -0
- package/dist/discard-last.d.ts +1 -0
- package/dist/discard-last.mjs +16 -0
- package/dist/discard-range.cjs +31 -0
- package/dist/discard-range.d.cts +2 -0
- package/dist/discard-range.d.ts +1 -0
- package/dist/discard-range.mjs +31 -0
- package/dist/discard-when.cjs +55 -0
- package/dist/discard-when.d.cts +2 -0
- package/dist/discard-when.d.ts +1 -0
- package/dist/discard-when.mjs +55 -0
- package/dist/discard.cjs +57 -0
- package/dist/discard.d.cts +2 -0
- package/dist/discard.d.ts +1 -0
- package/dist/discard.mjs +57 -0
- package/dist/divide-by.cjs +13 -0
- package/dist/divide-by.d.cts +2 -0
- package/dist/divide-by.d.ts +1 -0
- package/dist/divide-by.mjs +13 -0
- package/dist/ends-with.cjs +13 -0
- package/dist/ends-with.d.cts +2 -0
- package/dist/ends-with.d.ts +1 -0
- package/dist/ends-with.mjs +13 -0
- package/dist/expand-end.cjs +16 -0
- package/dist/expand-end.d.cts +2 -0
- package/dist/expand-end.d.ts +1 -0
- package/dist/expand-end.mjs +16 -0
- package/dist/expand-start.cjs +16 -0
- package/dist/expand-start.d.cts +2 -0
- package/dist/expand-start.d.ts +1 -0
- package/dist/expand-start.mjs +16 -0
- package/dist/expand.cjs +22 -0
- package/dist/expand.d.cts +2 -0
- package/dist/expand.d.ts +1 -0
- package/dist/expand.mjs +22 -0
- package/dist/fill-range-with.cjs +18 -0
- package/dist/fill-range-with.d.cts +2 -0
- package/dist/fill-range-with.d.ts +1 -0
- package/dist/fill-range-with.mjs +18 -0
- package/dist/fill-with.cjs +34 -0
- package/dist/fill-with.d.cts +2 -0
- package/dist/fill-with.d.ts +1 -0
- package/dist/fill-with.mjs +34 -0
- package/dist/find-key-with-val.cjs +46 -0
- package/dist/find-key-with-val.d.cts +2 -0
- package/dist/find-key-with-val.d.ts +1 -0
- package/dist/find-key-with-val.mjs +46 -0
- package/dist/find-key.cjs +21 -0
- package/dist/find-key.d.cts +2 -0
- package/dist/find-key.d.ts +1 -0
- package/dist/find-key.mjs +21 -0
- package/dist/find-last-key-with-val.cjs +23 -0
- package/dist/find-last-key-with-val.d.cts +2 -0
- package/dist/find-last-key-with-val.d.ts +1 -0
- package/dist/find-last-key-with-val.mjs +23 -0
- package/dist/find-last-key.cjs +16 -0
- package/dist/find-last-key.d.cts +2 -0
- package/dist/find-last-key.d.ts +1 -0
- package/dist/find-last-key.mjs +16 -0
- package/dist/find-last.cjs +16 -0
- package/dist/find-last.d.cts +2 -0
- package/dist/find-last.d.ts +1 -0
- package/dist/find-last.mjs +16 -0
- package/dist/find.cjs +21 -0
- package/dist/find.d.cts +2 -0
- package/dist/find.d.ts +1 -0
- package/dist/find.mjs +21 -0
- package/dist/first.cjs +10 -0
- package/dist/first.d.cts +2 -0
- package/dist/first.d.ts +1 -0
- package/dist/first.mjs +10 -0
- package/dist/flatten-fully.cjs +9 -0
- package/dist/flatten-fully.d.cts +2 -0
- package/dist/flatten-fully.d.ts +1 -0
- package/dist/flatten-fully.mjs +9 -0
- package/dist/flatten-once.cjs +9 -0
- package/dist/flatten-once.d.cts +2 -0
- package/dist/flatten-once.d.ts +1 -0
- package/dist/flatten-once.mjs +9 -0
- package/dist/flatten-to-depth.cjs +15 -0
- package/dist/flatten-to-depth.d.cts +2 -0
- package/dist/flatten-to-depth.d.ts +1 -0
- package/dist/flatten-to-depth.mjs +15 -0
- package/dist/for-each.cjs +22 -0
- package/dist/for-each.d.cts +2 -0
- package/dist/for-each.d.ts +1 -0
- package/dist/for-each.mjs +22 -0
- package/dist/get-at-path.cjs +11 -0
- package/dist/get-at-path.d.cts +2 -0
- package/dist/get-at-path.d.ts +1 -0
- package/dist/get-at-path.mjs +11 -0
- package/dist/get-average-value.cjs +19 -0
- package/dist/get-average-value.d.cts +2 -0
- package/dist/get-average-value.d.ts +1 -0
- package/dist/get-average-value.mjs +19 -0
- package/dist/get-common-values.cjs +31 -0
- package/dist/get-common-values.d.cts +2 -0
- package/dist/get-common-values.d.ts +1 -0
- package/dist/get-common-values.mjs +31 -0
- package/dist/get-exclusive-values.cjs +41 -0
- package/dist/get-exclusive-values.d.cts +2 -0
- package/dist/get-exclusive-values.d.ts +1 -0
- package/dist/get-exclusive-values.mjs +41 -0
- package/dist/get-keys.cjs +23 -0
- package/dist/get-keys.d.cts +2 -0
- package/dist/get-keys.d.ts +1 -0
- package/dist/get-keys.mjs +23 -0
- package/dist/get-max-value.cjs +16 -0
- package/dist/get-max-value.d.cts +2 -0
- package/dist/get-max-value.d.ts +1 -0
- package/dist/get-max-value.mjs +16 -0
- package/dist/get-min-value.cjs +16 -0
- package/dist/get-min-value.d.cts +2 -0
- package/dist/get-min-value.d.ts +1 -0
- package/dist/get-min-value.mjs +16 -0
- package/dist/get-random-value.cjs +18 -0
- package/dist/get-random-value.d.cts +2 -0
- package/dist/get-random-value.d.ts +1 -0
- package/dist/get-random-value.mjs +18 -0
- package/dist/get-size.cjs +28 -0
- package/dist/get-size.d.cts +2 -0
- package/dist/get-size.d.ts +1 -0
- package/dist/get-size.mjs +28 -0
- package/dist/get-value-at-map-key.cjs +8 -0
- package/dist/get-value-at-map-key.d.cts +2 -0
- package/dist/get-value-at-map-key.d.ts +1 -0
- package/dist/get-value-at-map-key.mjs +8 -0
- package/dist/get-values.cjs +22 -0
- package/dist/get-values.d.cts +2 -0
- package/dist/get-values.d.ts +1 -0
- package/dist/get-values.mjs +22 -0
- package/dist/get.cjs +10 -0
- package/dist/get.d.cts +2 -0
- package/dist/get.d.ts +1 -0
- package/dist/get.mjs +10 -0
- package/dist/greater-than-or-equal-to.cjs +13 -0
- package/dist/greater-than-or-equal-to.d.cts +2 -0
- package/dist/greater-than-or-equal-to.d.ts +1 -0
- package/dist/greater-than-or-equal-to.mjs +13 -0
- package/dist/greater-than.cjs +13 -0
- package/dist/greater-than.d.cts +2 -0
- package/dist/greater-than.d.ts +1 -0
- package/dist/greater-than.mjs +13 -0
- package/dist/group-by.cjs +28 -0
- package/dist/group-by.d.cts +2 -0
- package/dist/group-by.d.ts +1 -0
- package/dist/group-by.mjs +28 -0
- package/dist/index.cjs +160 -0
- package/dist/index.d.cts +2 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +158 -0
- package/dist/internal/contains-type-to-fn.cjs +33 -0
- package/dist/internal/contains-type-to-fn.mjs +33 -0
- package/dist/internal/get-at-path.cjs +12 -0
- package/dist/internal/get-at-path.mjs +12 -0
- package/dist/internal/validate-prune-arg.cjs +43 -0
- package/dist/internal/validate-prune-arg.mjs +43 -0
- package/dist/invert.cjs +29 -0
- package/dist/invert.d.cts +2 -0
- package/dist/invert.d.ts +1 -0
- package/dist/invert.mjs +29 -0
- package/dist/invoke-with.cjs +11 -0
- package/dist/invoke-with.d.cts +2 -0
- package/dist/invoke-with.d.ts +1 -0
- package/dist/invoke-with.mjs +11 -0
- package/dist/is-after.cjs +13 -0
- package/dist/is-after.d.cts +2 -0
- package/dist/is-after.d.ts +1 -0
- package/dist/is-after.mjs +13 -0
- package/dist/is-at-or-after.cjs +13 -0
- package/dist/is-at-or-after.d.cts +2 -0
- package/dist/is-at-or-after.d.ts +1 -0
- package/dist/is-at-or-after.mjs +13 -0
- package/dist/is-at-or-before.cjs +13 -0
- package/dist/is-at-or-before.d.cts +2 -0
- package/dist/is-at-or-before.d.ts +1 -0
- package/dist/is-at-or-before.mjs +13 -0
- package/dist/is-before.cjs +13 -0
- package/dist/is-before.d.cts +2 -0
- package/dist/is-before.d.ts +1 -0
- package/dist/is-before.mjs +13 -0
- package/dist/is-empty.cjs +28 -0
- package/dist/is-empty.d.cts +2 -0
- package/dist/is-empty.d.ts +1 -0
- package/dist/is-empty.mjs +28 -0
- package/dist/is-falsey.cjs +3 -0
- package/dist/is-falsey.d.cts +2 -0
- package/dist/is-falsey.d.ts +1 -0
- package/dist/is-falsey.mjs +3 -0
- package/dist/is-laden.cjs +28 -0
- package/dist/is-laden.d.cts +2 -0
- package/dist/is-laden.d.ts +1 -0
- package/dist/is-laden.mjs +28 -0
- package/dist/is-truthy.cjs +3 -0
- package/dist/is-truthy.d.cts +2 -0
- package/dist/is-truthy.d.ts +1 -0
- package/dist/is-truthy.mjs +3 -0
- package/dist/join-values.cjs +18 -0
- package/dist/join-values.d.cts +2 -0
- package/dist/join-values.d.ts +1 -0
- package/dist/join-values.mjs +18 -0
- package/dist/keep-first-while.cjs +18 -0
- package/dist/keep-first-while.d.cts +2 -0
- package/dist/keep-first-while.d.ts +1 -0
- package/dist/keep-first-while.mjs +18 -0
- package/dist/keep-first.cjs +14 -0
- package/dist/keep-first.d.cts +2 -0
- package/dist/keep-first.d.ts +1 -0
- package/dist/keep-first.mjs +14 -0
- package/dist/keep-last-while.cjs +18 -0
- package/dist/keep-last-while.d.cts +2 -0
- package/dist/keep-last-while.d.ts +1 -0
- package/dist/keep-last-while.mjs +18 -0
- package/dist/keep-last.cjs +14 -0
- package/dist/keep-last.d.cts +2 -0
- package/dist/keep-last.d.ts +1 -0
- package/dist/keep-last.mjs +14 -0
- package/dist/keep-range.cjs +14 -0
- package/dist/keep-range.d.cts +2 -0
- package/dist/keep-range.d.ts +1 -0
- package/dist/keep-range.mjs +14 -0
- package/dist/keep-when.cjs +54 -0
- package/dist/keep-when.d.cts +2 -0
- package/dist/keep-when.d.ts +1 -0
- package/dist/keep-when.mjs +54 -0
- package/dist/keep.cjs +63 -0
- package/dist/keep.d.cts +2 -0
- package/dist/keep.d.ts +1 -0
- package/dist/keep.mjs +63 -0
- package/dist/last.cjs +10 -0
- package/dist/last.d.cts +2 -0
- package/dist/last.d.ts +1 -0
- package/dist/last.mjs +10 -0
- package/dist/less-than-or-equal-to.cjs +13 -0
- package/dist/less-than-or-equal-to.d.cts +2 -0
- package/dist/less-than-or-equal-to.d.ts +1 -0
- package/dist/less-than-or-equal-to.mjs +13 -0
- package/dist/less-than.cjs +13 -0
- package/dist/less-than.d.cts +2 -0
- package/dist/less-than.d.ts +1 -0
- package/dist/less-than.mjs +13 -0
- package/dist/m-append-all.cjs +14 -0
- package/dist/m-append-all.d.cts +2 -0
- package/dist/m-append-all.d.ts +1 -0
- package/dist/m-append-all.mjs +14 -0
- package/dist/m-append-one.cjs +10 -0
- package/dist/m-append-one.d.cts +2 -0
- package/dist/m-append-one.d.ts +1 -0
- package/dist/m-append-one.mjs +10 -0
- package/dist/m-assign-defaults.cjs +51 -0
- package/dist/m-assign-defaults.d.cts +2 -0
- package/dist/m-assign-defaults.d.ts +1 -0
- package/dist/m-assign-defaults.mjs +51 -0
- package/dist/m-assign-overrides.cjs +47 -0
- package/dist/m-assign-overrides.d.cts +2 -0
- package/dist/m-assign-overrides.d.ts +1 -0
- package/dist/m-assign-overrides.mjs +47 -0
- package/dist/m-discard-first-while.cjs +19 -0
- package/dist/m-discard-first-while.d.cts +2 -0
- package/dist/m-discard-first-while.d.ts +1 -0
- package/dist/m-discard-first-while.mjs +19 -0
- package/dist/m-discard-first.cjs +16 -0
- package/dist/m-discard-first.d.cts +2 -0
- package/dist/m-discard-first.d.ts +1 -0
- package/dist/m-discard-first.mjs +16 -0
- package/dist/m-discard-last-while.cjs +20 -0
- package/dist/m-discard-last-while.d.cts +2 -0
- package/dist/m-discard-last-while.d.ts +1 -0
- package/dist/m-discard-last-while.mjs +20 -0
- package/dist/m-discard-last.cjs +16 -0
- package/dist/m-discard-last.d.cts +2 -0
- package/dist/m-discard-last.d.ts +1 -0
- package/dist/m-discard-last.mjs +16 -0
- package/dist/m-discard-range.cjs +17 -0
- package/dist/m-discard-range.d.cts +2 -0
- package/dist/m-discard-range.d.ts +1 -0
- package/dist/m-discard-range.mjs +17 -0
- package/dist/m-fill-range-with.cjs +17 -0
- package/dist/m-fill-range-with.d.cts +2 -0
- package/dist/m-fill-range-with.d.ts +1 -0
- package/dist/m-fill-range-with.mjs +17 -0
- package/dist/m-fill-with.cjs +32 -0
- package/dist/m-fill-with.d.cts +2 -0
- package/dist/m-fill-with.d.ts +1 -0
- package/dist/m-fill-with.mjs +32 -0
- package/dist/m-keep-first-while.cjs +19 -0
- package/dist/m-keep-first-while.d.cts +2 -0
- package/dist/m-keep-first-while.d.ts +1 -0
- package/dist/m-keep-first-while.mjs +19 -0
- package/dist/m-keep-first.cjs +14 -0
- package/dist/m-keep-first.d.cts +2 -0
- package/dist/m-keep-first.d.ts +1 -0
- package/dist/m-keep-first.mjs +14 -0
- package/dist/m-keep-last-while.cjs +19 -0
- package/dist/m-keep-last-while.d.cts +2 -0
- package/dist/m-keep-last-while.d.ts +1 -0
- package/dist/m-keep-last-while.mjs +19 -0
- package/dist/m-keep-last.cjs +14 -0
- package/dist/m-keep-last.d.cts +2 -0
- package/dist/m-keep-last.d.ts +1 -0
- package/dist/m-keep-last.mjs +14 -0
- package/dist/m-keep-range.cjs +18 -0
- package/dist/m-keep-range.d.cts +2 -0
- package/dist/m-keep-range.d.ts +1 -0
- package/dist/m-keep-range.mjs +18 -0
- package/dist/m-map-values.cjs +47 -0
- package/dist/m-map-values.d.cts +2 -0
- package/dist/m-map-values.d.ts +1 -0
- package/dist/m-map-values.mjs +47 -0
- package/dist/m-omit.cjs +62 -0
- package/dist/m-omit.d.cts +2 -0
- package/dist/m-omit.d.ts +1 -0
- package/dist/m-omit.mjs +62 -0
- package/dist/m-order.cjs +13 -0
- package/dist/m-order.d.cts +2 -0
- package/dist/m-order.d.ts +1 -0
- package/dist/m-order.mjs +13 -0
- package/dist/m-pick.cjs +67 -0
- package/dist/m-pick.d.cts +2 -0
- package/dist/m-pick.d.ts +1 -0
- package/dist/m-pick.mjs +67 -0
- package/dist/m-prepend-all.cjs +14 -0
- package/dist/m-prepend-all.d.cts +2 -0
- package/dist/m-prepend-all.d.ts +1 -0
- package/dist/m-prepend-all.mjs +14 -0
- package/dist/m-prepend-one.cjs +10 -0
- package/dist/m-prepend-one.d.cts +2 -0
- package/dist/m-prepend-one.d.ts +1 -0
- package/dist/m-prepend-one.mjs +10 -0
- package/dist/m-reverse.cjs +8 -0
- package/dist/m-reverse.d.cts +2 -0
- package/dist/m-reverse.d.ts +1 -0
- package/dist/m-reverse.mjs +8 -0
- package/dist/m-set-at-path.cjs +40 -0
- package/dist/m-set-at-path.d.cts +2 -0
- package/dist/m-set-at-path.d.ts +1 -0
- package/dist/m-set-at-path.mjs +40 -0
- package/dist/m-set.cjs +21 -0
- package/dist/m-set.d.cts +2 -0
- package/dist/m-set.d.ts +1 -0
- package/dist/m-set.mjs +21 -0
- package/dist/m-shuffle.cjs +20 -0
- package/dist/m-shuffle.d.cts +2 -0
- package/dist/m-shuffle.d.ts +1 -0
- package/dist/m-shuffle.mjs +20 -0
- package/dist/m-update.cjs +68 -0
- package/dist/m-update.d.cts +2 -0
- package/dist/m-update.d.ts +1 -0
- package/dist/m-update.mjs +68 -0
- package/dist/map-keys.cjs +36 -0
- package/dist/map-keys.d.cts +2 -0
- package/dist/map-keys.d.ts +1 -0
- package/dist/map-keys.mjs +36 -0
- package/dist/map-values.cjs +50 -0
- package/dist/map-values.d.cts +2 -0
- package/dist/map-values.d.ts +1 -0
- package/dist/map-values.mjs +50 -0
- package/dist/multiply-by.cjs +13 -0
- package/dist/multiply-by.d.cts +2 -0
- package/dist/multiply-by.d.ts +1 -0
- package/dist/multiply-by.mjs +13 -0
- package/dist/negate.cjs +9 -0
- package/dist/negate.d.cts +2 -0
- package/dist/negate.d.ts +1 -0
- package/dist/negate.mjs +9 -0
- package/dist/number-is-between.cjs +33 -0
- package/dist/number-is-between.d.cts +2 -0
- package/dist/number-is-between.d.ts +1 -0
- package/dist/number-is-between.mjs +33 -0
- package/dist/omit.cjs +52 -0
- package/dist/omit.d.cts +2 -0
- package/dist/omit.d.ts +1 -0
- package/dist/omit.mjs +52 -0
- package/dist/order.cjs +13 -0
- package/dist/order.d.cts +2 -0
- package/dist/order.d.ts +1 -0
- package/dist/order.mjs +13 -0
- package/dist/p-all.cjs +23 -0
- package/dist/p-all.d.cts +2 -0
- package/dist/p-all.d.ts +1 -0
- package/dist/p-all.mjs +23 -0
- package/dist/p-any.cjs +23 -0
- package/dist/p-any.d.cts +2 -0
- package/dist/p-any.d.ts +1 -0
- package/dist/p-any.mjs +23 -0
- package/dist/p-compose.cjs +18 -0
- package/dist/p-compose.d.cts +2 -0
- package/dist/p-compose.d.ts +1 -0
- package/dist/p-compose.mjs +18 -0
- package/dist/p-discard-when.cjs +64 -0
- package/dist/p-discard-when.d.cts +2 -0
- package/dist/p-discard-when.d.ts +1 -0
- package/dist/p-discard-when.mjs +64 -0
- package/dist/p-find.cjs +21 -0
- package/dist/p-find.d.cts +2 -0
- package/dist/p-find.d.ts +1 -0
- package/dist/p-find.mjs +21 -0
- package/dist/p-for-each.cjs +21 -0
- package/dist/p-for-each.d.cts +2 -0
- package/dist/p-for-each.d.ts +1 -0
- package/dist/p-for-each.mjs +21 -0
- package/dist/p-keep-when.cjs +64 -0
- package/dist/p-keep-when.d.cts +2 -0
- package/dist/p-keep-when.d.ts +1 -0
- package/dist/p-keep-when.mjs +64 -0
- package/dist/p-map-values.cjs +57 -0
- package/dist/p-map-values.d.cts +2 -0
- package/dist/p-map-values.d.ts +1 -0
- package/dist/p-map-values.mjs +57 -0
- package/dist/p-pass-through.cjs +12 -0
- package/dist/p-pass-through.d.cts +2 -0
- package/dist/p-pass-through.d.ts +1 -0
- package/dist/p-pass-through.mjs +12 -0
- package/dist/p-resolve-values.cjs +43 -0
- package/dist/p-resolve-values.d.cts +2 -0
- package/dist/p-resolve-values.d.ts +1 -0
- package/dist/p-resolve-values.mjs +43 -0
- package/dist/p-wait-ms.cjs +8 -0
- package/dist/p-wait-ms.d.cts +2 -0
- package/dist/p-wait-ms.d.ts +1 -0
- package/dist/p-wait-ms.mjs +8 -0
- package/dist/pass-through.cjs +9 -0
- package/dist/pass-through.d.cts +2 -0
- package/dist/pass-through.d.ts +1 -0
- package/dist/pass-through.mjs +9 -0
- package/dist/peek.cjs +13 -0
- package/dist/peek.d.cts +2 -0
- package/dist/peek.d.ts +1 -0
- package/dist/peek.mjs +13 -0
- package/dist/pick.cjs +50 -0
- package/dist/pick.d.cts +2 -0
- package/dist/pick.d.ts +1 -0
- package/dist/pick.mjs +50 -0
- package/dist/prepend-all.cjs +13 -0
- package/dist/prepend-all.d.cts +2 -0
- package/dist/prepend-all.d.ts +1 -0
- package/dist/prepend-all.mjs +13 -0
- package/dist/prepend-one.cjs +9 -0
- package/dist/prepend-one.d.cts +2 -0
- package/dist/prepend-one.d.ts +1 -0
- package/dist/prepend-one.mjs +9 -0
- package/dist/prepend.cjs +13 -0
- package/dist/prepend.d.cts +2 -0
- package/dist/prepend.d.ts +1 -0
- package/dist/prepend.mjs +13 -0
- package/dist/prune-end.cjs +18 -0
- package/dist/prune-end.d.cts +2 -0
- package/dist/prune-end.d.ts +1 -0
- package/dist/prune-end.mjs +18 -0
- package/dist/prune-start.cjs +18 -0
- package/dist/prune-start.d.cts +2 -0
- package/dist/prune-start.d.ts +1 -0
- package/dist/prune-start.mjs +18 -0
- package/dist/prune.cjs +21 -0
- package/dist/prune.d.cts +2 -0
- package/dist/prune.d.ts +1 -0
- package/dist/prune.mjs +21 -0
- package/dist/randomly-keep.cjs +83 -0
- package/dist/randomly-keep.d.cts +2 -0
- package/dist/randomly-keep.d.ts +1 -0
- package/dist/randomly-keep.mjs +83 -0
- package/dist/replace-all-matches.cjs +33 -0
- package/dist/replace-all-matches.d.cts +2 -0
- package/dist/replace-all-matches.d.ts +1 -0
- package/dist/replace-all-matches.mjs +33 -0
- package/dist/replace-first-match.cjs +38 -0
- package/dist/replace-first-match.d.cts +2 -0
- package/dist/replace-first-match.d.ts +1 -0
- package/dist/replace-first-match.mjs +38 -0
- package/dist/return-first-arg.cjs +4 -0
- package/dist/return-first-arg.d.cts +2 -0
- package/dist/return-first-arg.d.ts +1 -0
- package/dist/return-first-arg.mjs +4 -0
- package/dist/return-undefined.cjs +4 -0
- package/dist/return-undefined.d.cts +2 -0
- package/dist/return-undefined.d.ts +1 -0
- package/dist/return-undefined.mjs +4 -0
- package/dist/reverse.cjs +8 -0
- package/dist/reverse.d.cts +2 -0
- package/dist/reverse.d.ts +1 -0
- package/dist/reverse.mjs +8 -0
- package/dist/round-to-nearest.cjs +51 -0
- package/dist/round-to-nearest.d.cts +2 -0
- package/dist/round-to-nearest.d.ts +1 -0
- package/dist/round-to-nearest.mjs +51 -0
- package/dist/set.cjs +51 -0
- package/dist/set.d.cts +2 -0
- package/dist/set.d.ts +1 -0
- package/dist/set.mjs +51 -0
- package/dist/shuffle.cjs +21 -0
- package/dist/shuffle.d.cts +2 -0
- package/dist/shuffle.d.ts +1 -0
- package/dist/shuffle.mjs +21 -0
- package/dist/split-every.cjs +31 -0
- package/dist/split-every.d.cts +2 -0
- package/dist/split-every.d.ts +1 -0
- package/dist/split-every.mjs +31 -0
- package/dist/split.cjs +14 -0
- package/dist/split.d.cts +2 -0
- package/dist/split.d.ts +1 -0
- package/dist/split.mjs +14 -0
- package/dist/starts-with.cjs +13 -0
- package/dist/starts-with.d.cts +2 -0
- package/dist/starts-with.d.ts +1 -0
- package/dist/starts-with.mjs +13 -0
- package/dist/strict-equals.cjs +3 -0
- package/dist/strict-equals.d.cts +2 -0
- package/dist/strict-equals.d.ts +1 -0
- package/dist/strict-equals.mjs +3 -0
- package/dist/subtract.cjs +13 -0
- package/dist/subtract.d.cts +2 -0
- package/dist/subtract.d.ts +1 -0
- package/dist/subtract.mjs +13 -0
- package/dist/sum-values.cjs +20 -0
- package/dist/sum-values.d.cts +2 -0
- package/dist/sum-values.d.ts +1 -0
- package/dist/sum-values.mjs +20 -0
- package/dist/swap-first-two-args.cjs +15 -0
- package/dist/swap-first-two-args.d.cts +2 -0
- package/dist/swap-first-two-args.d.ts +1 -0
- package/dist/swap-first-two-args.mjs +15 -0
- package/dist/transpose.cjs +46 -0
- package/dist/transpose.d.cts +2 -0
- package/dist/transpose.d.ts +1 -0
- package/dist/transpose.mjs +46 -0
- package/dist/truncate-to-n-chars.cjs +17 -0
- package/dist/truncate-to-n-chars.d.cts +2 -0
- package/dist/truncate-to-n-chars.d.ts +1 -0
- package/dist/truncate-to-n-chars.mjs +17 -0
- package/dist/truncate-to-n-lines.cjs +58 -0
- package/dist/truncate-to-n-lines.d.cts +2 -0
- package/dist/truncate-to-n-lines.d.ts +1 -0
- package/dist/truncate-to-n-lines.mjs +58 -0
- package/dist/update.cjs +74 -0
- package/dist/update.d.cts +2 -0
- package/dist/update.d.ts +1 -0
- package/dist/update.mjs +74 -0
- package/dist/with-dates-ascending.cjs +3 -0
- package/dist/with-dates-ascending.d.cts +2 -0
- package/dist/with-dates-ascending.d.ts +1 -0
- package/dist/with-dates-ascending.mjs +3 -0
- package/dist/with-dates-descending.cjs +3 -0
- package/dist/with-dates-descending.d.cts +2 -0
- package/dist/with-dates-descending.d.ts +1 -0
- package/dist/with-dates-descending.mjs +3 -0
- package/dist/with-numbers-ascending.cjs +3 -0
- package/dist/with-numbers-ascending.d.cts +2 -0
- package/dist/with-numbers-ascending.d.ts +1 -0
- package/dist/with-numbers-ascending.mjs +3 -0
- package/dist/with-numbers-descending.cjs +3 -0
- package/dist/with-numbers-descending.d.cts +2 -0
- package/dist/with-numbers-descending.d.ts +1 -0
- package/dist/with-numbers-descending.mjs +3 -0
- package/dist/with-strings-ascending.cjs +4 -0
- package/dist/with-strings-ascending.d.cts +2 -0
- package/dist/with-strings-ascending.d.ts +1 -0
- package/dist/with-strings-ascending.mjs +4 -0
- package/dist/with-strings-descending.cjs +4 -0
- package/dist/with-strings-descending.d.cts +2 -0
- package/dist/with-strings-descending.d.ts +1 -0
- package/dist/with-strings-descending.mjs +4 -0
- package/license.txt +41 -0
- package/package.json +46 -0
- package/readme.md +108 -0
package/dist/negate.cjs
ADDED
package/dist/negate.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/negate'
|
package/dist/negate.mjs
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
const assertArgIsType = require('@common-fp/shared-internals/assert-arg-is-type')
|
|
2
|
+
const validateIsBetweenInput = require('@common-fp/shared-internals/validate-is-between-input')
|
|
3
|
+
|
|
4
|
+
const numberIsBetween = (num1, num2, opts = {}) => {
|
|
5
|
+
let { exclusiveMin, exclusiveMax } = opts
|
|
6
|
+
|
|
7
|
+
validateIsBetweenInput(
|
|
8
|
+
num1,
|
|
9
|
+
'num1',
|
|
10
|
+
num2,
|
|
11
|
+
'num2',
|
|
12
|
+
'number',
|
|
13
|
+
'numberIsBetween',
|
|
14
|
+
{
|
|
15
|
+
exclusiveMin,
|
|
16
|
+
exclusiveMax,
|
|
17
|
+
}
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
const [min, max] = num1 <= num2 ? [num1, num2] : [num2, num1]
|
|
21
|
+
if (exclusiveMin === undefined) exclusiveMin = false
|
|
22
|
+
if (exclusiveMax === undefined) exclusiveMax = false
|
|
23
|
+
|
|
24
|
+
return aNumber => {
|
|
25
|
+
assertArgIsType(aNumber, 'aNumber', 'number', 'numberIsBetween')
|
|
26
|
+
const minCheck = exclusiveMin ? aNumber > min : aNumber >= min
|
|
27
|
+
if (!minCheck) return false
|
|
28
|
+
|
|
29
|
+
return exclusiveMax ? aNumber < max : aNumber <= max
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
module.exports = numberIsBetween
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/number-is-between'
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import assertArgIsType from '@common-fp/shared-internals/assert-arg-is-type'
|
|
2
|
+
import validateIsBetweenInput from '@common-fp/shared-internals/validate-is-between-input'
|
|
3
|
+
|
|
4
|
+
const numberIsBetween = (num1, num2, opts = {}) => {
|
|
5
|
+
let { exclusiveMin, exclusiveMax } = opts
|
|
6
|
+
|
|
7
|
+
validateIsBetweenInput(
|
|
8
|
+
num1,
|
|
9
|
+
'num1',
|
|
10
|
+
num2,
|
|
11
|
+
'num2',
|
|
12
|
+
'number',
|
|
13
|
+
'numberIsBetween',
|
|
14
|
+
{
|
|
15
|
+
exclusiveMin,
|
|
16
|
+
exclusiveMax,
|
|
17
|
+
}
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
const [min, max] = num1 <= num2 ? [num1, num2] : [num2, num1]
|
|
21
|
+
if (exclusiveMin === undefined) exclusiveMin = false
|
|
22
|
+
if (exclusiveMax === undefined) exclusiveMax = false
|
|
23
|
+
|
|
24
|
+
return aNumber => {
|
|
25
|
+
assertArgIsType(aNumber, 'aNumber', 'number', 'numberIsBetween')
|
|
26
|
+
const minCheck = exclusiveMin ? aNumber > min : aNumber >= min
|
|
27
|
+
if (!minCheck) return false
|
|
28
|
+
|
|
29
|
+
return exclusiveMax ? aNumber < max : aNumber <= max
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export default numberIsBetween
|
package/dist/omit.cjs
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
const assertArgIsOneOfType = require('@common-fp/shared-internals/assert-arg-is-one-of-type')
|
|
2
|
+
const ct = require('@common-fp/shared-internals/common-types')
|
|
3
|
+
const ensureSet = require('@common-fp/shared-internals/ensure-set')
|
|
4
|
+
const getFn = require('@common-fp/shared-internals/get-fn')
|
|
5
|
+
const validateArrayKeys = require('@common-fp/shared-internals/validate-array-keys')
|
|
6
|
+
const validateObjectKeys = require('@common-fp/shared-internals/validate-object-keys')
|
|
7
|
+
|
|
8
|
+
const omit = keys => {
|
|
9
|
+
assertArgIsOneOfType(keys, 'keys', ct.valueCollection, 'omit')
|
|
10
|
+
const setOfKeys = ensureSet(keys)
|
|
11
|
+
|
|
12
|
+
return collection => {
|
|
13
|
+
const fn = getFn(typeToFn, collection, 'collection', 'omit')
|
|
14
|
+
return fn(collection, setOfKeys)
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const typeToFn = {
|
|
19
|
+
array: omit_array,
|
|
20
|
+
map: omit_map,
|
|
21
|
+
object: omit_object,
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
function omit_array(arr, keys) {
|
|
25
|
+
validateArrayKeys(keys, 'omit')
|
|
26
|
+
|
|
27
|
+
return arr.filter((_el, i) => !keys.has(i))
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function omit_map(aMap, keys) {
|
|
31
|
+
const result = new Map()
|
|
32
|
+
|
|
33
|
+
for (const [k, val] of aMap) {
|
|
34
|
+
if (!keys.has(k)) result.set(k, val)
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return result
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function omit_object(obj, keys) {
|
|
41
|
+
validateObjectKeys(keys, 'omit')
|
|
42
|
+
|
|
43
|
+
const result = {}
|
|
44
|
+
|
|
45
|
+
for (const k of Object.keys(obj)) {
|
|
46
|
+
if (!keys.has(k)) result[k] = obj[k]
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return result
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
module.exports = omit
|
package/dist/omit.d.cts
ADDED
package/dist/omit.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/omit'
|
package/dist/omit.mjs
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import assertArgIsOneOfType from '@common-fp/shared-internals/assert-arg-is-one-of-type'
|
|
2
|
+
import * as ct from '@common-fp/shared-internals/common-types'
|
|
3
|
+
import ensureSet from '@common-fp/shared-internals/ensure-set'
|
|
4
|
+
import getFn from '@common-fp/shared-internals/get-fn'
|
|
5
|
+
import validateArrayKeys from '@common-fp/shared-internals/validate-array-keys'
|
|
6
|
+
import validateObjectKeys from '@common-fp/shared-internals/validate-object-keys'
|
|
7
|
+
|
|
8
|
+
const omit = keys => {
|
|
9
|
+
assertArgIsOneOfType(keys, 'keys', ct.valueCollection, 'omit')
|
|
10
|
+
const setOfKeys = ensureSet(keys)
|
|
11
|
+
|
|
12
|
+
return collection => {
|
|
13
|
+
const fn = getFn(typeToFn, collection, 'collection', 'omit')
|
|
14
|
+
return fn(collection, setOfKeys)
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const typeToFn = {
|
|
19
|
+
array: omit_array,
|
|
20
|
+
map: omit_map,
|
|
21
|
+
object: omit_object,
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
function omit_array(arr, keys) {
|
|
25
|
+
validateArrayKeys(keys, 'omit')
|
|
26
|
+
|
|
27
|
+
return arr.filter((_el, i) => !keys.has(i))
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function omit_map(aMap, keys) {
|
|
31
|
+
const result = new Map()
|
|
32
|
+
|
|
33
|
+
for (const [k, val] of aMap) {
|
|
34
|
+
if (!keys.has(k)) result.set(k, val)
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return result
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function omit_object(obj, keys) {
|
|
41
|
+
validateObjectKeys(keys, 'omit')
|
|
42
|
+
|
|
43
|
+
const result = {}
|
|
44
|
+
|
|
45
|
+
for (const k of Object.keys(obj)) {
|
|
46
|
+
if (!keys.has(k)) result[k] = obj[k]
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return result
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export default omit
|
package/dist/order.cjs
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const assertArgIsType = require('@common-fp/shared-internals/assert-arg-is-type')
|
|
2
|
+
|
|
3
|
+
const order = compareFn => {
|
|
4
|
+
assertArgIsType(compareFn, 'compareFn', 'function', 'order')
|
|
5
|
+
|
|
6
|
+
return anArray => {
|
|
7
|
+
assertArgIsType(anArray, 'anArray', 'array', 'order')
|
|
8
|
+
|
|
9
|
+
return [...anArray].sort(compareFn)
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
module.exports = order
|
package/dist/order.d.cts
ADDED
package/dist/order.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/order'
|
package/dist/order.mjs
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import assertArgIsType from '@common-fp/shared-internals/assert-arg-is-type'
|
|
2
|
+
|
|
3
|
+
const order = compareFn => {
|
|
4
|
+
assertArgIsType(compareFn, 'compareFn', 'function', 'order')
|
|
5
|
+
|
|
6
|
+
return anArray => {
|
|
7
|
+
assertArgIsType(anArray, 'anArray', 'array', 'order')
|
|
8
|
+
|
|
9
|
+
return [...anArray].sort(compareFn)
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export default order
|
package/dist/p-all.cjs
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
const assertArgTypeIsOneOf = require('@common-fp/shared-internals/assert-arg-type-is-one-of')
|
|
2
|
+
const assertArgIsType = require('@common-fp/shared-internals/assert-arg-is-type')
|
|
3
|
+
const ct = require('@common-fp/shared-internals/common-types')
|
|
4
|
+
const getIterator = require('@common-fp/shared-internals/get-iterator')
|
|
5
|
+
const getType = require('@common-fp/shared-internals/get-type')
|
|
6
|
+
|
|
7
|
+
const pAll = predicate => {
|
|
8
|
+
assertArgIsType(predicate, 'predicate', 'function', 'pAll')
|
|
9
|
+
|
|
10
|
+
return async collection => {
|
|
11
|
+
const collType = getType(collection)
|
|
12
|
+
assertArgTypeIsOneOf(collType, 'collection', ct.collection, 'pAll')
|
|
13
|
+
const entries = getIterator('entries', collection, collType)
|
|
14
|
+
|
|
15
|
+
for (const [key, val] of entries) {
|
|
16
|
+
if (!(await predicate(val, key, collection))) return false
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return true
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
module.exports = pAll
|
package/dist/p-all.d.cts
ADDED
package/dist/p-all.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/p-all'
|
package/dist/p-all.mjs
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import assertArgTypeIsOneOf from '@common-fp/shared-internals/assert-arg-type-is-one-of'
|
|
2
|
+
import assertArgIsType from '@common-fp/shared-internals/assert-arg-is-type'
|
|
3
|
+
import * as ct from '@common-fp/shared-internals/common-types'
|
|
4
|
+
import getIterator from '@common-fp/shared-internals/get-iterator'
|
|
5
|
+
import getType from '@common-fp/shared-internals/get-type'
|
|
6
|
+
|
|
7
|
+
const pAll = predicate => {
|
|
8
|
+
assertArgIsType(predicate, 'predicate', 'function', 'pAll')
|
|
9
|
+
|
|
10
|
+
return async collection => {
|
|
11
|
+
const collType = getType(collection)
|
|
12
|
+
assertArgTypeIsOneOf(collType, 'collection', ct.collection, 'pAll')
|
|
13
|
+
const entries = getIterator('entries', collection, collType)
|
|
14
|
+
|
|
15
|
+
for (const [key, val] of entries) {
|
|
16
|
+
if (!(await predicate(val, key, collection))) return false
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return true
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export default pAll
|
package/dist/p-any.cjs
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
const assertArgTypeIsOneOf = require('@common-fp/shared-internals/assert-arg-type-is-one-of')
|
|
2
|
+
const assertArgIsType = require('@common-fp/shared-internals/assert-arg-is-type')
|
|
3
|
+
const ct = require('@common-fp/shared-internals/common-types')
|
|
4
|
+
const getIterator = require('@common-fp/shared-internals/get-iterator')
|
|
5
|
+
const getType = require('@common-fp/shared-internals/get-type')
|
|
6
|
+
|
|
7
|
+
const pAny = predicate => {
|
|
8
|
+
assertArgIsType(predicate, 'predicate', 'function', 'pAny')
|
|
9
|
+
|
|
10
|
+
return async collection => {
|
|
11
|
+
const collType = getType(collection)
|
|
12
|
+
assertArgTypeIsOneOf(collType, 'collection', ct.collection, 'pAny')
|
|
13
|
+
const entries = getIterator('entries', collection, collType)
|
|
14
|
+
|
|
15
|
+
for (const [key, val] of entries) {
|
|
16
|
+
if (await predicate(val, key, collection)) return true
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return false
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
module.exports = pAny
|
package/dist/p-any.d.cts
ADDED
package/dist/p-any.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/p-any'
|
package/dist/p-any.mjs
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import assertArgTypeIsOneOf from '@common-fp/shared-internals/assert-arg-type-is-one-of'
|
|
2
|
+
import assertArgIsType from '@common-fp/shared-internals/assert-arg-is-type'
|
|
3
|
+
import * as ct from '@common-fp/shared-internals/common-types'
|
|
4
|
+
import getIterator from '@common-fp/shared-internals/get-iterator'
|
|
5
|
+
import getType from '@common-fp/shared-internals/get-type'
|
|
6
|
+
|
|
7
|
+
const pAny = predicate => {
|
|
8
|
+
assertArgIsType(predicate, 'predicate', 'function', 'pAny')
|
|
9
|
+
|
|
10
|
+
return async collection => {
|
|
11
|
+
const collType = getType(collection)
|
|
12
|
+
assertArgTypeIsOneOf(collType, 'collection', ct.collection, 'pAny')
|
|
13
|
+
const entries = getIterator('entries', collection, collType)
|
|
14
|
+
|
|
15
|
+
for (const [key, val] of entries) {
|
|
16
|
+
if (await predicate(val, key, collection)) return true
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return false
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export default pAny
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const assertArgIsArrayOfType = require('@common-fp/shared-internals/assert-arg-is-array-of-type')
|
|
2
|
+
|
|
3
|
+
const compose = fnArray => {
|
|
4
|
+
assertArgIsArrayOfType(fnArray, 'fnArray', 'function', 'compose')
|
|
5
|
+
|
|
6
|
+
return async (...args) => {
|
|
7
|
+
if (!fnArray.length) return args[0]
|
|
8
|
+
|
|
9
|
+
const [firstFn, ...restFns] = fnArray
|
|
10
|
+
let result = await firstFn(...args)
|
|
11
|
+
for (const fn of restFns) {
|
|
12
|
+
result = await fn(result)
|
|
13
|
+
}
|
|
14
|
+
return result
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = compose
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/p-compose'
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import assertArgIsArrayOfType from '@common-fp/shared-internals/assert-arg-is-array-of-type'
|
|
2
|
+
|
|
3
|
+
const compose = fnArray => {
|
|
4
|
+
assertArgIsArrayOfType(fnArray, 'fnArray', 'function', 'compose')
|
|
5
|
+
|
|
6
|
+
return async (...args) => {
|
|
7
|
+
if (!fnArray.length) return args[0]
|
|
8
|
+
|
|
9
|
+
const [firstFn, ...restFns] = fnArray
|
|
10
|
+
let result = await firstFn(...args)
|
|
11
|
+
for (const fn of restFns) {
|
|
12
|
+
result = await fn(result)
|
|
13
|
+
}
|
|
14
|
+
return result
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export default compose
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
const assertArgIsType = require('@common-fp/shared-internals/assert-arg-is-type')
|
|
2
|
+
const getFn = require('@common-fp/shared-internals/get-fn')
|
|
3
|
+
|
|
4
|
+
const pDiscardWhen = predicate => {
|
|
5
|
+
assertArgIsType(predicate, 'predicate', 'function', 'pDiscardWhen')
|
|
6
|
+
|
|
7
|
+
return async collection => {
|
|
8
|
+
const fn = getFn(typeToFn, collection, 'collection', 'pDiscardWhen')
|
|
9
|
+
return fn(collection, predicate)
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const typeToFn = {
|
|
14
|
+
array: pDiscardWhen_array,
|
|
15
|
+
map: pDiscardWhen_map,
|
|
16
|
+
object: pDiscardWhen_object,
|
|
17
|
+
set: pDiscardWhen_set,
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
async function pDiscardWhen_array(arr, predicate) {
|
|
21
|
+
const shouldKeepArr = await Promise.all(
|
|
22
|
+
arr.map(async (el, i) => !(await predicate(el, i, arr)))
|
|
23
|
+
)
|
|
24
|
+
|
|
25
|
+
return arr.filter((_el, i) => shouldKeepArr[i])
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
async function pDiscardWhen_map(aMap, predicate) {
|
|
29
|
+
const result = new Map()
|
|
30
|
+
await Promise.all(
|
|
31
|
+
[...aMap].map(async ([key, val]) => {
|
|
32
|
+
const shouldKeep = !(await predicate(val, key, aMap))
|
|
33
|
+
if (shouldKeep) result.set(key, val)
|
|
34
|
+
})
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
return result
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
async function pDiscardWhen_object(obj, predicate) {
|
|
41
|
+
const result = {}
|
|
42
|
+
await Promise.all(
|
|
43
|
+
[...Object.entries(obj)].map(async ([key, val]) => {
|
|
44
|
+
const shouldKeep = !(await predicate(val, key, obj))
|
|
45
|
+
if (shouldKeep) result[key] = val
|
|
46
|
+
})
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
return result
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
async function pDiscardWhen_set(aSet, predicate) {
|
|
53
|
+
const result = new Set()
|
|
54
|
+
await Promise.all(
|
|
55
|
+
[...aSet].map(async val => {
|
|
56
|
+
const shouldKeep = !(await predicate(val, val, aSet))
|
|
57
|
+
if (shouldKeep) result.add(val)
|
|
58
|
+
})
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
return result
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
module.exports = pDiscardWhen
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/p-discard-when'
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import assertArgIsType from '@common-fp/shared-internals/assert-arg-is-type'
|
|
2
|
+
import getFn from '@common-fp/shared-internals/get-fn'
|
|
3
|
+
|
|
4
|
+
const pDiscardWhen = predicate => {
|
|
5
|
+
assertArgIsType(predicate, 'predicate', 'function', 'pDiscardWhen')
|
|
6
|
+
|
|
7
|
+
return async collection => {
|
|
8
|
+
const fn = getFn(typeToFn, collection, 'collection', 'pDiscardWhen')
|
|
9
|
+
return fn(collection, predicate)
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const typeToFn = {
|
|
14
|
+
array: pDiscardWhen_array,
|
|
15
|
+
map: pDiscardWhen_map,
|
|
16
|
+
object: pDiscardWhen_object,
|
|
17
|
+
set: pDiscardWhen_set,
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
async function pDiscardWhen_array(arr, predicate) {
|
|
21
|
+
const shouldKeepArr = await Promise.all(
|
|
22
|
+
arr.map(async (el, i) => !(await predicate(el, i, arr)))
|
|
23
|
+
)
|
|
24
|
+
|
|
25
|
+
return arr.filter((_el, i) => shouldKeepArr[i])
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
async function pDiscardWhen_map(aMap, predicate) {
|
|
29
|
+
const result = new Map()
|
|
30
|
+
await Promise.all(
|
|
31
|
+
[...aMap].map(async ([key, val]) => {
|
|
32
|
+
const shouldKeep = !(await predicate(val, key, aMap))
|
|
33
|
+
if (shouldKeep) result.set(key, val)
|
|
34
|
+
})
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
return result
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
async function pDiscardWhen_object(obj, predicate) {
|
|
41
|
+
const result = {}
|
|
42
|
+
await Promise.all(
|
|
43
|
+
[...Object.entries(obj)].map(async ([key, val]) => {
|
|
44
|
+
const shouldKeep = !(await predicate(val, key, obj))
|
|
45
|
+
if (shouldKeep) result[key] = val
|
|
46
|
+
})
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
return result
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
async function pDiscardWhen_set(aSet, predicate) {
|
|
53
|
+
const result = new Set()
|
|
54
|
+
await Promise.all(
|
|
55
|
+
[...aSet].map(async val => {
|
|
56
|
+
const shouldKeep = !(await predicate(val, val, aSet))
|
|
57
|
+
if (shouldKeep) result.add(val)
|
|
58
|
+
})
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
return result
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export default pDiscardWhen
|
package/dist/p-find.cjs
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const assertArgIsType = require('@common-fp/shared-internals/assert-arg-is-type')
|
|
2
|
+
const assertArgTypeIsOneOf = require('@common-fp/shared-internals/assert-arg-type-is-one-of')
|
|
3
|
+
const ct = require('@common-fp/shared-internals/common-types')
|
|
4
|
+
const getIterator = require('@common-fp/shared-internals/get-iterator')
|
|
5
|
+
const getType = require('@common-fp/shared-internals/get-type')
|
|
6
|
+
|
|
7
|
+
const pFind = predicate => {
|
|
8
|
+
assertArgIsType(predicate, 'predicate', 'function', 'pFind')
|
|
9
|
+
|
|
10
|
+
return async collection => {
|
|
11
|
+
const collType = getType(collection)
|
|
12
|
+
assertArgTypeIsOneOf(collType, 'collection', ct.collection, 'pFind')
|
|
13
|
+
const entries = getIterator('entries', collection, collType)
|
|
14
|
+
|
|
15
|
+
for (const [key, val] of entries) {
|
|
16
|
+
if (await predicate(val, key, collection)) return val
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
module.exports = pFind
|
package/dist/p-find.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/p-find'
|
package/dist/p-find.mjs
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import assertArgIsType from '@common-fp/shared-internals/assert-arg-is-type'
|
|
2
|
+
import assertArgTypeIsOneOf from '@common-fp/shared-internals/assert-arg-type-is-one-of'
|
|
3
|
+
import * as ct from '@common-fp/shared-internals/common-types'
|
|
4
|
+
import getIterator from '@common-fp/shared-internals/get-iterator'
|
|
5
|
+
import getType from '@common-fp/shared-internals/get-type'
|
|
6
|
+
|
|
7
|
+
const pFind = predicate => {
|
|
8
|
+
assertArgIsType(predicate, 'predicate', 'function', 'pFind')
|
|
9
|
+
|
|
10
|
+
return async collection => {
|
|
11
|
+
const collType = getType(collection)
|
|
12
|
+
assertArgTypeIsOneOf(collType, 'collection', ct.collection, 'pFind')
|
|
13
|
+
const entries = getIterator('entries', collection, collType)
|
|
14
|
+
|
|
15
|
+
for (const [key, val] of entries) {
|
|
16
|
+
if (await predicate(val, key, collection)) return val
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export default pFind
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const assertArgIsType = require('@common-fp/shared-internals/assert-arg-is-type')
|
|
2
|
+
const assertArgTypeIsOneOf = require('@common-fp/shared-internals/assert-arg-type-is-one-of')
|
|
3
|
+
const ct = require('@common-fp/shared-internals/common-types')
|
|
4
|
+
const getIterator = require('@common-fp/shared-internals/get-iterator')
|
|
5
|
+
const getType = require('@common-fp/shared-internals/get-type')
|
|
6
|
+
|
|
7
|
+
const pForEach = fn => {
|
|
8
|
+
assertArgIsType(fn, 'fn', 'function', 'pForEach')
|
|
9
|
+
|
|
10
|
+
return async collection => {
|
|
11
|
+
const collType = getType(collection)
|
|
12
|
+
assertArgTypeIsOneOf(collType, 'collection', ct.collection, 'pForEach')
|
|
13
|
+
|
|
14
|
+
const entries = [...getIterator('entries', collection, collType)]
|
|
15
|
+
await Promise.all(entries.map(([key, val]) => fn(val, key, collection)))
|
|
16
|
+
|
|
17
|
+
return collection
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
module.exports = pForEach
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from '@common-fp/common-fp-types/p-for-each'
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import assertArgIsType from '@common-fp/shared-internals/assert-arg-is-type'
|
|
2
|
+
import assertArgTypeIsOneOf from '@common-fp/shared-internals/assert-arg-type-is-one-of'
|
|
3
|
+
import * as ct from '@common-fp/shared-internals/common-types'
|
|
4
|
+
import getIterator from '@common-fp/shared-internals/get-iterator'
|
|
5
|
+
import getType from '@common-fp/shared-internals/get-type'
|
|
6
|
+
|
|
7
|
+
const pForEach = fn => {
|
|
8
|
+
assertArgIsType(fn, 'fn', 'function', 'pForEach')
|
|
9
|
+
|
|
10
|
+
return async collection => {
|
|
11
|
+
const collType = getType(collection)
|
|
12
|
+
assertArgTypeIsOneOf(collType, 'collection', ct.collection, 'pForEach')
|
|
13
|
+
|
|
14
|
+
const entries = [...getIterator('entries', collection, collType)]
|
|
15
|
+
await Promise.all(entries.map(([key, val]) => fn(val, key, collection)))
|
|
16
|
+
|
|
17
|
+
return collection
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export default pForEach
|