@duplojs/utils 1.3.32 → 1.4.33
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/at/default.d.ts +32 -0
- package/dist/array/at/first.cjs +3 -0
- package/dist/array/at/first.d.ts +25 -0
- package/dist/array/at/first.mjs +3 -0
- package/dist/array/at/last.cjs +3 -0
- package/dist/array/at/last.d.ts +25 -0
- package/dist/array/at/last.mjs +3 -0
- package/dist/array/chunk.d.ts +27 -0
- package/dist/array/coalescing.cjs +3 -0
- package/dist/array/coalescing.d.ts +22 -0
- package/dist/array/coalescing.mjs +3 -0
- package/dist/array/concat.d.ts +28 -0
- package/dist/array/copyWithin.d.ts +31 -0
- package/dist/array/every.d.ts +37 -0
- package/dist/array/fill/all.d.ts +36 -0
- package/dist/array/fill/default.d.ts +36 -0
- package/dist/array/filter.d.ts +33 -0
- package/dist/array/find.d.ts +34 -0
- package/dist/array/findAndReplace.d.ts +40 -0
- package/dist/array/findAndSplice/delete.d.ts +40 -0
- package/dist/array/findAndSplice/insert.d.ts +40 -0
- package/dist/array/findAndSplice/replace.d.ts +40 -0
- package/dist/array/findIndex.d.ts +37 -0
- package/dist/array/findLast.d.ts +39 -0
- package/dist/array/findLastIndex.d.ts +37 -0
- package/dist/array/flat.d.ts +32 -0
- package/dist/array/flatMap.d.ts +37 -0
- package/dist/array/from.cjs +3 -0
- package/dist/array/from.d.ts +33 -0
- package/dist/array/from.mjs +3 -0
- package/dist/array/group.d.ts +67 -0
- package/dist/array/includes.d.ts +40 -0
- package/dist/array/index.cjs +3 -1
- package/dist/array/index.d.ts +27 -0
- package/dist/array/index.mjs +4 -0
- package/dist/array/indexOf.d.ts +38 -0
- package/dist/array/insert.d.ts +34 -0
- package/dist/array/is.cjs +3 -0
- package/dist/array/is.d.ts +25 -0
- package/dist/array/is.mjs +3 -0
- package/dist/array/isLastIndex.d.ts +28 -0
- package/dist/array/join.d.ts +35 -0
- package/dist/array/lastIndexOf.d.ts +37 -0
- package/dist/array/length.cjs +3 -0
- package/dist/array/length.d.ts +24 -0
- package/dist/array/length.mjs +3 -0
- package/dist/array/lengthEqual.d.ts +44 -0
- package/dist/array/map.d.ts +33 -0
- package/dist/array/maxElements.d.ts +33 -0
- package/dist/array/maxOf.cjs +3 -0
- package/dist/array/maxOf.d.ts +28 -0
- package/dist/array/maxOf.mjs +3 -0
- package/dist/array/minElements.d.ts +47 -0
- package/dist/array/minOf.cjs +3 -0
- package/dist/array/minOf.d.ts +28 -0
- package/dist/array/minOf.mjs +3 -0
- package/dist/array/notIncludes.d.ts +41 -0
- package/dist/array/pop.cjs +3 -0
- package/dist/array/pop.d.ts +31 -0
- package/dist/array/pop.mjs +3 -0
- package/dist/array/push.d.ts +38 -0
- package/dist/array/reduce.cjs +3 -0
- package/dist/array/reduce.d.ts +74 -0
- package/dist/array/reduce.mjs +3 -0
- package/dist/array/reduceRight.d.ts +39 -0
- package/dist/array/reverse.cjs +3 -0
- package/dist/array/reverse.d.ts +31 -0
- package/dist/array/reverse.mjs +3 -0
- package/dist/array/select.d.ts +39 -0
- package/dist/array/set.d.ts +39 -0
- package/dist/array/shift.cjs +3 -0
- package/dist/array/shift.d.ts +31 -0
- package/dist/array/shift.mjs +3 -0
- package/dist/array/slice.d.ts +36 -0
- package/dist/array/some.d.ts +44 -0
- package/dist/array/sort.d.ts +29 -0
- package/dist/array/splice/delete.d.ts +32 -0
- package/dist/array/splice/insert.d.ts +39 -0
- package/dist/array/splice/replace.d.ts +39 -0
- package/dist/array/sum.cjs +3 -0
- package/dist/array/sum.d.ts +22 -0
- package/dist/array/sum.mjs +3 -0
- package/dist/array/toTuple.d.ts +33 -0
- package/dist/array/unshift.d.ts +38 -0
- package/dist/clean/constraint/base.cjs +3 -0
- package/dist/clean/constraint/base.d.ts +106 -0
- package/dist/clean/constraint/base.mjs +3 -0
- package/dist/clean/constraint/defaultConstraint/number.cjs +9 -0
- package/dist/clean/constraint/defaultConstraint/number.d.ts +81 -0
- package/dist/clean/constraint/defaultConstraint/number.mjs +9 -0
- package/dist/clean/constraint/defaultConstraint/string.cjs +6 -0
- package/dist/clean/constraint/defaultConstraint/string.d.ts +54 -0
- package/dist/clean/constraint/defaultConstraint/string.mjs +6 -0
- package/dist/clean/entity.cjs +3 -0
- package/dist/clean/entity.d.ts +141 -0
- package/dist/clean/entity.mjs +3 -0
- package/dist/clean/flag.cjs +3 -0
- package/dist/clean/flag.d.ts +96 -0
- package/dist/clean/flag.mjs +3 -0
- package/dist/clean/index.cjs +3 -1
- package/dist/clean/index.d.ts +25 -0
- package/dist/clean/index.mjs +4 -0
- package/dist/clean/kind.cjs +3 -0
- package/dist/clean/kind.d.ts +33 -0
- package/dist/clean/kind.mjs +3 -0
- package/dist/clean/newType.cjs +3 -0
- package/dist/clean/newType.d.ts +106 -0
- package/dist/clean/newType.mjs +3 -0
- package/dist/clean/primitive/base.cjs +18 -0
- package/dist/clean/primitive/base.d.ts +242 -0
- package/dist/clean/primitive/base.mjs +18 -0
- package/dist/clean/primitive/operations/date/dateAddTime.d.ts +35 -0
- package/dist/clean/primitive/operations/date/dateGreaterThan.d.ts +24 -0
- package/dist/clean/primitive/operations/date/dateLessThan.d.ts +24 -0
- package/dist/clean/primitive/operations/date/dateMax.cjs +3 -0
- package/dist/clean/primitive/operations/date/dateMax.d.ts +36 -0
- package/dist/clean/primitive/operations/date/dateMax.mjs +3 -0
- package/dist/clean/primitive/operations/date/dateMin.cjs +3 -0
- package/dist/clean/primitive/operations/date/dateMin.d.ts +36 -0
- package/dist/clean/primitive/operations/date/dateMin.mjs +3 -0
- package/dist/clean/primitive/operations/date/dateSubtractTime.d.ts +35 -0
- package/dist/clean/primitive/operations/equal.d.ts +34 -0
- package/dist/clean/primitive/operations/number/add.d.ts +34 -0
- package/dist/clean/primitive/operations/number/divide.d.ts +34 -0
- package/dist/clean/primitive/operations/number/greaterThan.d.ts +25 -0
- package/dist/clean/primitive/operations/number/lessThan.d.ts +25 -0
- package/dist/clean/primitive/operations/number/max.cjs +3 -0
- package/dist/clean/primitive/operations/number/max.d.ts +33 -0
- package/dist/clean/primitive/operations/number/max.mjs +3 -0
- package/dist/clean/primitive/operations/number/min.cjs +3 -0
- package/dist/clean/primitive/operations/number/min.d.ts +33 -0
- package/dist/clean/primitive/operations/number/min.mjs +3 -0
- package/dist/clean/primitive/operations/number/multiply.d.ts +34 -0
- package/dist/clean/primitive/operations/number/subtract.d.ts +34 -0
- package/dist/clean/primitive/operations/sort.d.ts +38 -0
- package/dist/clean/primitive/operations/string/concat.d.ts +35 -0
- package/dist/clean/primitive/operations/string/length.cjs +3 -0
- package/dist/clean/primitive/operations/string/length.d.ts +27 -0
- package/dist/clean/primitive/operations/string/length.mjs +3 -0
- package/dist/clean/primitive/operations/string/lengthEqual.d.ts +25 -0
- package/dist/clean/primitive/operations/string/lengthGreaterThan.d.ts +25 -0
- package/dist/clean/primitive/operations/string/lengthLessThan.d.ts +25 -0
- package/dist/clean/primitive/operations/time/timeGreaterThan.d.ts +24 -0
- package/dist/clean/primitive/operations/time/timeLessThan.d.ts +24 -0
- package/dist/clean/primitive/operations/time/timeMax.cjs +3 -0
- package/dist/clean/primitive/operations/time/timeMax.d.ts +36 -0
- package/dist/clean/primitive/operations/time/timeMax.mjs +3 -0
- package/dist/clean/primitive/operations/time/timeMin.cjs +3 -0
- package/dist/clean/primitive/operations/time/timeMin.d.ts +36 -0
- package/dist/clean/primitive/operations/time/timeMin.mjs +3 -0
- package/dist/clean/repository.cjs +3 -0
- package/dist/clean/repository.d.ts +87 -0
- package/dist/clean/repository.mjs +3 -0
- package/dist/clean/useCase.cjs +6 -0
- package/dist/clean/useCase.d.ts +140 -0
- package/dist/clean/useCase.mjs +6 -0
- package/dist/common/addWrappedProperties.cjs +3 -0
- package/dist/common/addWrappedProperties.d.ts +12 -0
- package/dist/common/addWrappedProperties.mjs +3 -0
- package/dist/common/and.d.ts +53 -0
- package/dist/common/asyncInnerPipe.d.ts +49 -0
- package/dist/common/asyncLoop.cjs +3 -0
- package/dist/common/asyncLoop.d.ts +29 -0
- package/dist/common/asyncLoop.mjs +3 -0
- package/dist/common/asyncPipe.cjs +3 -0
- package/dist/common/asyncPipe.d.ts +35 -0
- package/dist/common/asyncPipe.mjs +3 -0
- package/dist/common/asyncRetry.cjs +6 -0
- package/dist/common/asyncRetry.d.ts +64 -0
- package/dist/common/asyncRetry.mjs +6 -0
- package/dist/common/builder.cjs +3 -0
- package/dist/common/builder.d.ts +88 -0
- package/dist/common/builder.mjs +3 -0
- package/dist/common/clone.cjs +3 -0
- package/dist/common/clone.d.ts +12 -0
- package/dist/common/clone.mjs +3 -0
- package/dist/common/enum.cjs +3 -0
- package/dist/common/enum.d.ts +34 -0
- package/dist/common/enum.mjs +3 -0
- package/dist/common/equal.d.ts +38 -0
- package/dist/common/escapeRegExp.cjs +3 -0
- package/dist/common/escapeRegExp.d.ts +20 -0
- package/dist/common/escapeRegExp.mjs +3 -0
- package/dist/common/externalPromise.cjs +3 -0
- package/dist/common/externalPromise.d.ts +20 -0
- package/dist/common/externalPromise.mjs +3 -0
- package/dist/common/falsy.cjs +3 -0
- package/dist/common/falsy.d.ts +27 -0
- package/dist/common/falsy.mjs +3 -0
- package/dist/common/forward.cjs +3 -0
- package/dist/common/forward.d.ts +23 -0
- package/dist/common/forward.mjs +3 -0
- package/dist/common/forwardLog.cjs +3 -0
- package/dist/common/forwardLog.d.ts +28 -0
- package/dist/common/forwardLog.mjs +3 -0
- package/dist/common/globalStore.cjs +3 -0
- package/dist/common/globalStore.d.ts +12 -0
- package/dist/common/globalStore.mjs +3 -0
- package/dist/common/hasKinds.d.ts +39 -0
- package/dist/common/hasSomeKinds.d.ts +39 -0
- package/dist/common/index.d.ts +27 -0
- package/dist/common/innerPipe.d.ts +35 -0
- package/dist/common/instanceOf.d.ts +33 -0
- package/dist/common/isType.d.ts +35 -0
- package/dist/common/justReturn.d.ts +43 -0
- package/dist/common/kind.cjs +6 -0
- package/dist/common/kind.d.ts +94 -0
- package/dist/common/kind.mjs +6 -0
- package/dist/common/loop.cjs +3 -0
- package/dist/common/loop.d.ts +26 -0
- package/dist/common/loop.mjs +3 -0
- package/dist/common/memo.cjs +3 -0
- package/dist/common/memo.d.ts +25 -0
- package/dist/common/memo.mjs +3 -0
- package/dist/common/or.d.ts +41 -0
- package/dist/common/override.cjs +3 -0
- package/dist/common/override.d.ts +45 -0
- package/dist/common/override.mjs +3 -0
- package/dist/common/pipe.d.ts +29 -0
- package/dist/common/promiseObject.cjs +3 -0
- package/dist/common/promiseObject.d.ts +26 -0
- package/dist/common/promiseObject.mjs +3 -0
- package/dist/common/simpleClone.cjs +3 -0
- package/dist/common/simpleClone.d.ts +23 -0
- package/dist/common/simpleClone.mjs +3 -0
- package/dist/common/sleep.cjs +3 -0
- package/dist/common/sleep.d.ts +21 -0
- package/dist/common/sleep.mjs +3 -0
- package/dist/common/stringToBytes.cjs +3 -0
- package/dist/common/stringToBytes.d.ts +17 -0
- package/dist/common/stringToBytes.mjs +3 -0
- package/dist/common/stringToMillisecond.cjs +3 -0
- package/dist/common/stringToMillisecond.d.ts +17 -0
- package/dist/common/stringToMillisecond.mjs +3 -0
- package/dist/common/toJSON.cjs +3 -0
- package/dist/common/toJSON.d.ts +35 -0
- package/dist/common/toJSON.mjs +3 -0
- package/dist/common/toString.cjs +3 -0
- package/dist/common/toString.d.ts +18 -0
- package/dist/common/toString.mjs +3 -0
- package/dist/common/toTransform.cjs +3 -0
- package/dist/common/toTransform.d.ts +41 -0
- package/dist/common/toTransform.mjs +3 -0
- package/dist/common/toWrappedValue.cjs +3 -0
- package/dist/common/toWrappedValue.d.ts +22 -0
- package/dist/common/toWrappedValue.mjs +3 -0
- package/dist/common/truthy.cjs +3 -0
- package/dist/common/truthy.d.ts +27 -0
- package/dist/common/truthy.mjs +3 -0
- package/dist/common/unwrap.d.ts +22 -0
- package/dist/common/when.d.ts +40 -0
- package/dist/common/whenElse.d.ts +42 -0
- package/dist/common/whenNot.d.ts +40 -0
- package/dist/common/wrapValue.cjs +9 -0
- package/dist/common/wrapValue.d.ts +55 -0
- package/dist/common/wrapValue.mjs +9 -0
- package/dist/dataParser/base.d.ts +104 -0
- package/dist/dataParser/baseExtended.d.ts +333 -0
- package/dist/dataParser/extended/array.cjs +3 -0
- package/dist/dataParser/extended/array.d.ts +84 -0
- package/dist/dataParser/extended/array.mjs +3 -0
- package/dist/dataParser/extended/bigint.cjs +3 -0
- package/dist/dataParser/extended/bigint.d.ts +84 -0
- package/dist/dataParser/extended/bigint.mjs +3 -0
- package/dist/dataParser/extended/boolean.cjs +3 -0
- package/dist/dataParser/extended/boolean.d.ts +28 -0
- package/dist/dataParser/extended/boolean.mjs +3 -0
- package/dist/dataParser/extended/date.cjs +3 -0
- package/dist/dataParser/extended/date.d.ts +28 -0
- package/dist/dataParser/extended/date.mjs +3 -0
- package/dist/dataParser/extended/empty.cjs +3 -0
- package/dist/dataParser/extended/empty.d.ts +27 -0
- package/dist/dataParser/extended/empty.mjs +3 -0
- package/dist/dataParser/extended/lazy.cjs +3 -0
- package/dist/dataParser/extended/lazy.d.ts +38 -0
- package/dist/dataParser/extended/lazy.mjs +3 -0
- package/dist/dataParser/extended/literal.cjs +3 -0
- package/dist/dataParser/extended/literal.d.ts +28 -0
- package/dist/dataParser/extended/literal.mjs +3 -0
- package/dist/dataParser/extended/nil.cjs +3 -0
- package/dist/dataParser/extended/nil.d.ts +28 -0
- package/dist/dataParser/extended/nil.mjs +3 -0
- package/dist/dataParser/extended/nullable.cjs +3 -0
- package/dist/dataParser/extended/nullable.d.ts +28 -0
- package/dist/dataParser/extended/nullable.mjs +3 -0
- package/dist/dataParser/extended/number.cjs +6 -0
- package/dist/dataParser/extended/number.d.ts +143 -0
- package/dist/dataParser/extended/number.mjs +6 -0
- package/dist/dataParser/extended/object.cjs +3 -0
- package/dist/dataParser/extended/object.d.ts +243 -0
- package/dist/dataParser/extended/object.mjs +3 -0
- package/dist/dataParser/extended/optional.cjs +3 -0
- package/dist/dataParser/extended/optional.d.ts +28 -0
- package/dist/dataParser/extended/optional.mjs +3 -0
- package/dist/dataParser/extended/pipe.cjs +3 -0
- package/dist/dataParser/extended/pipe.d.ts +28 -0
- package/dist/dataParser/extended/pipe.mjs +3 -0
- package/dist/dataParser/extended/record.cjs +3 -0
- package/dist/dataParser/extended/record.d.ts +38 -0
- package/dist/dataParser/extended/record.mjs +3 -0
- package/dist/dataParser/extended/recover.cjs +3 -0
- package/dist/dataParser/extended/recover.d.ts +27 -0
- package/dist/dataParser/extended/recover.mjs +3 -0
- package/dist/dataParser/extended/string.cjs +9 -0
- package/dist/dataParser/extended/string.d.ts +162 -0
- package/dist/dataParser/extended/string.mjs +9 -0
- package/dist/dataParser/extended/templateLiteral.cjs +3 -0
- package/dist/dataParser/extended/templateLiteral.d.ts +28 -0
- package/dist/dataParser/extended/templateLiteral.mjs +3 -0
- package/dist/dataParser/extended/time.cjs +3 -0
- package/dist/dataParser/extended/time.d.ts +84 -0
- package/dist/dataParser/extended/time.mjs +3 -0
- package/dist/dataParser/extended/transform.cjs +3 -0
- package/dist/dataParser/extended/transform.d.ts +28 -0
- package/dist/dataParser/extended/transform.mjs +3 -0
- package/dist/dataParser/extended/tuple.cjs +3 -0
- package/dist/dataParser/extended/tuple.d.ts +28 -0
- package/dist/dataParser/extended/tuple.mjs +3 -0
- package/dist/dataParser/extended/union.cjs +3 -0
- package/dist/dataParser/extended/union.d.ts +28 -0
- package/dist/dataParser/extended/union.mjs +3 -0
- package/dist/dataParser/extended/unknown.cjs +3 -0
- package/dist/dataParser/extended/unknown.d.ts +26 -0
- package/dist/dataParser/extended/unknown.mjs +3 -0
- package/dist/dataParser/parsers/array/index.cjs +3 -0
- package/dist/dataParser/parsers/array/index.d.ts +30 -0
- package/dist/dataParser/parsers/array/index.mjs +3 -0
- package/dist/dataParser/parsers/bigint/index.cjs +3 -0
- package/dist/dataParser/parsers/bigint/index.d.ts +30 -0
- package/dist/dataParser/parsers/bigint/index.mjs +3 -0
- package/dist/dataParser/parsers/boolean.cjs +3 -0
- package/dist/dataParser/parsers/boolean.d.ts +30 -0
- package/dist/dataParser/parsers/boolean.mjs +3 -0
- package/dist/dataParser/parsers/date.cjs +3 -0
- package/dist/dataParser/parsers/date.d.ts +30 -0
- package/dist/dataParser/parsers/date.mjs +3 -0
- package/dist/dataParser/parsers/empty.cjs +3 -0
- package/dist/dataParser/parsers/empty.d.ts +29 -0
- package/dist/dataParser/parsers/empty.mjs +3 -0
- package/dist/dataParser/parsers/lazy.cjs +3 -0
- package/dist/dataParser/parsers/lazy.d.ts +39 -0
- package/dist/dataParser/parsers/lazy.mjs +3 -0
- package/dist/dataParser/parsers/literal.cjs +3 -0
- package/dist/dataParser/parsers/literal.d.ts +29 -0
- package/dist/dataParser/parsers/literal.mjs +3 -0
- package/dist/dataParser/parsers/nil.cjs +3 -0
- package/dist/dataParser/parsers/nil.d.ts +30 -0
- package/dist/dataParser/parsers/nil.mjs +3 -0
- package/dist/dataParser/parsers/nullable.cjs +3 -0
- package/dist/dataParser/parsers/nullable.d.ts +30 -0
- package/dist/dataParser/parsers/nullable.mjs +3 -0
- package/dist/dataParser/parsers/number/index.cjs +3 -0
- package/dist/dataParser/parsers/number/index.d.ts +30 -0
- package/dist/dataParser/parsers/number/index.mjs +3 -0
- package/dist/dataParser/parsers/object/extends.cjs +3 -0
- package/dist/dataParser/parsers/object/extends.d.ts +50 -0
- package/dist/dataParser/parsers/object/extends.mjs +3 -0
- package/dist/dataParser/parsers/object/index.cjs +3 -0
- package/dist/dataParser/parsers/object/index.d.ts +39 -0
- package/dist/dataParser/parsers/object/index.mjs +3 -0
- package/dist/dataParser/parsers/object/omit.cjs +3 -0
- package/dist/dataParser/parsers/object/omit.d.ts +38 -0
- package/dist/dataParser/parsers/object/omit.mjs +3 -0
- package/dist/dataParser/parsers/object/partial.cjs +3 -0
- package/dist/dataParser/parsers/object/partial.d.ts +28 -0
- package/dist/dataParser/parsers/object/partial.mjs +3 -0
- package/dist/dataParser/parsers/object/pick.cjs +3 -0
- package/dist/dataParser/parsers/object/pick.d.ts +35 -0
- package/dist/dataParser/parsers/object/pick.mjs +3 -0
- package/dist/dataParser/parsers/object/required.cjs +3 -0
- package/dist/dataParser/parsers/object/required.d.ts +37 -0
- package/dist/dataParser/parsers/object/required.mjs +3 -0
- package/dist/dataParser/parsers/optional.cjs +3 -0
- package/dist/dataParser/parsers/optional.d.ts +30 -0
- package/dist/dataParser/parsers/optional.mjs +3 -0
- package/dist/dataParser/parsers/pipe.cjs +3 -0
- package/dist/dataParser/parsers/pipe.d.ts +31 -0
- package/dist/dataParser/parsers/pipe.mjs +3 -0
- package/dist/dataParser/parsers/record/index.cjs +3 -0
- package/dist/dataParser/parsers/record/index.d.ts +37 -0
- package/dist/dataParser/parsers/record/index.mjs +3 -0
- package/dist/dataParser/parsers/recover.cjs +3 -0
- package/dist/dataParser/parsers/recover.d.ts +30 -0
- package/dist/dataParser/parsers/recover.mjs +3 -0
- package/dist/dataParser/parsers/string/index.cjs +3 -0
- package/dist/dataParser/parsers/string/index.d.ts +30 -0
- package/dist/dataParser/parsers/string/index.mjs +3 -0
- package/dist/dataParser/parsers/templateLiteral/index.cjs +3 -0
- package/dist/dataParser/parsers/templateLiteral/index.d.ts +30 -0
- package/dist/dataParser/parsers/templateLiteral/index.mjs +3 -0
- package/dist/dataParser/parsers/time/index.cjs +3 -0
- package/dist/dataParser/parsers/time/index.d.ts +30 -0
- package/dist/dataParser/parsers/time/index.mjs +3 -0
- package/dist/dataParser/parsers/transform.cjs +3 -0
- package/dist/dataParser/parsers/transform.d.ts +29 -0
- package/dist/dataParser/parsers/transform.mjs +3 -0
- package/dist/dataParser/parsers/tuple.cjs +3 -0
- package/dist/dataParser/parsers/tuple.d.ts +26 -0
- package/dist/dataParser/parsers/tuple.mjs +3 -0
- package/dist/dataParser/parsers/union.cjs +3 -0
- package/dist/dataParser/parsers/union.d.ts +31 -0
- package/dist/dataParser/parsers/union.mjs +3 -0
- package/dist/dataParser/parsers/unknown.cjs +3 -0
- package/dist/dataParser/parsers/unknown.d.ts +30 -0
- package/dist/dataParser/parsers/unknown.mjs +3 -0
- package/dist/date/applyTimezone.d.ts +29 -0
- package/dist/date/closestTo.d.ts +35 -0
- package/dist/date/create.d.ts +52 -0
- package/dist/date/createOrThrow.d.ts +35 -0
- package/dist/date/createTheDate.cjs +3 -0
- package/dist/date/createTheDate.d.ts +26 -0
- package/dist/date/createTheDate.mjs +3 -0
- package/dist/date/createTheTime.cjs +3 -0
- package/dist/date/createTheTime.d.ts +23 -0
- package/dist/date/createTheTime.mjs +3 -0
- package/dist/date/createTime.d.ts +37 -0
- package/dist/date/createTimeOrThrow.cjs +3 -0
- package/dist/date/createTimeOrThrow.d.ts +35 -0
- package/dist/date/createTimeOrThrow.mjs +3 -0
- package/dist/date/each.cjs +3 -0
- package/dist/date/each.d.ts +32 -0
- package/dist/date/each.mjs +3 -0
- package/dist/date/format.cjs +2 -1
- package/dist/date/format.d.ts +29 -0
- package/dist/date/format.mjs +2 -1
- package/dist/date/formatTime.cjs +38 -0
- package/dist/date/formatTime.d.ts +35 -0
- package/dist/date/formatTime.mjs +36 -0
- package/dist/date/getTimezoneOffset.d.ts +29 -0
- package/dist/date/getters/getDayOfMonth.cjs +3 -0
- package/dist/date/getters/getDayOfMonth.d.ts +29 -0
- package/dist/date/getters/getDayOfMonth.mjs +3 -0
- package/dist/date/getters/getDayOfWeek.cjs +3 -0
- package/dist/date/getters/getDayOfWeek.d.ts +29 -0
- package/dist/date/getters/getDayOfWeek.mjs +3 -0
- package/dist/date/getters/getDayOfYear.cjs +3 -0
- package/dist/date/getters/getDayOfYear.d.ts +26 -0
- package/dist/date/getters/getDayOfYear.mjs +3 -0
- package/dist/date/getters/getFirstDayOfMonth.cjs +3 -0
- package/dist/date/getters/getFirstDayOfMonth.d.ts +24 -0
- package/dist/date/getters/getFirstDayOfMonth.mjs +3 -0
- package/dist/date/getters/getFirstDayOfWeek.cjs +3 -0
- package/dist/date/getters/getFirstDayOfWeek.d.ts +24 -0
- package/dist/date/getters/getFirstDayOfWeek.mjs +3 -0
- package/dist/date/getters/getHour.cjs +3 -0
- package/dist/date/getters/getHour.d.ts +29 -0
- package/dist/date/getters/getHour.mjs +3 -0
- package/dist/date/getters/getLastDayOfMonth.cjs +3 -0
- package/dist/date/getters/getLastDayOfMonth.d.ts +24 -0
- package/dist/date/getters/getLastDayOfMonth.mjs +3 -0
- package/dist/date/getters/getLastDayOfWeek.cjs +3 -0
- package/dist/date/getters/getLastDayOfWeek.d.ts +24 -0
- package/dist/date/getters/getLastDayOfWeek.mjs +3 -0
- package/dist/date/getters/getMilliseconds.cjs +3 -0
- package/dist/date/getters/getMilliseconds.d.ts +29 -0
- package/dist/date/getters/getMilliseconds.mjs +3 -0
- package/dist/date/getters/getMinute.cjs +3 -0
- package/dist/date/getters/getMinute.d.ts +29 -0
- package/dist/date/getters/getMinute.mjs +3 -0
- package/dist/date/getters/getMonth.cjs +3 -0
- package/dist/date/getters/getMonth.d.ts +29 -0
- package/dist/date/getters/getMonth.mjs +3 -0
- package/dist/date/getters/getSecond.cjs +3 -0
- package/dist/date/getters/getSecond.d.ts +29 -0
- package/dist/date/getters/getSecond.mjs +3 -0
- package/dist/date/getters/getWeekOfYear.cjs +3 -0
- package/dist/date/getters/getWeekOfYear.d.ts +26 -0
- package/dist/date/getters/getWeekOfYear.mjs +3 -0
- package/dist/date/getters/getYear.cjs +3 -0
- package/dist/date/getters/getYear.d.ts +29 -0
- package/dist/date/getters/getYear.mjs +3 -0
- package/dist/date/index.cjs +7 -1
- package/dist/date/index.d.ts +34 -0
- package/dist/date/index.mjs +6 -0
- package/dist/date/is.cjs +3 -0
- package/dist/date/is.d.ts +30 -0
- package/dist/date/is.mjs +3 -0
- package/dist/date/isSafeTimeValue.cjs +3 -0
- package/dist/date/isSafeTimeValue.d.ts +26 -0
- package/dist/date/isSafeTimeValue.mjs +3 -0
- package/dist/date/isSafeTimestamp.cjs +3 -0
- package/dist/date/isSafeTimestamp.d.ts +31 -0
- package/dist/date/isSafeTimestamp.mjs +3 -0
- package/dist/date/isTime.cjs +3 -0
- package/dist/date/isTime.d.ts +29 -0
- package/dist/date/isTime.mjs +3 -0
- package/dist/date/makeSafeTimeValue.cjs +3 -0
- package/dist/date/makeSafeTimeValue.d.ts +26 -0
- package/dist/date/makeSafeTimeValue.mjs +3 -0
- package/dist/date/makeSafeTimestamp.cjs +3 -0
- package/dist/date/makeSafeTimestamp.d.ts +26 -0
- package/dist/date/makeSafeTimestamp.mjs +3 -0
- package/dist/date/max.cjs +3 -0
- package/dist/date/max.d.ts +24 -0
- package/dist/date/max.mjs +3 -0
- package/dist/date/maxTime.cjs +3 -0
- package/dist/date/maxTime.d.ts +33 -0
- package/dist/date/maxTime.mjs +3 -0
- package/dist/date/min.cjs +3 -0
- package/dist/date/min.d.ts +24 -0
- package/dist/date/min.mjs +3 -0
- package/dist/date/minTime.cjs +3 -0
- package/dist/date/minTime.d.ts +33 -0
- package/dist/date/minTime.mjs +3 -0
- package/dist/date/now.cjs +3 -0
- package/dist/date/now.d.ts +18 -0
- package/dist/date/now.mjs +3 -0
- package/dist/date/operators/addDays.d.ts +26 -0
- package/dist/date/operators/addHours.d.ts +26 -0
- package/dist/date/operators/addMilliseconds.d.ts +26 -0
- package/dist/date/operators/addMinutes.d.ts +26 -0
- package/dist/date/operators/addMonths.d.ts +30 -0
- package/dist/date/operators/addSeconds.d.ts +26 -0
- package/dist/date/operators/addTime.d.ts +31 -0
- package/dist/date/operators/addWeeks.d.ts +26 -0
- package/dist/date/operators/addYears.d.ts +30 -0
- package/dist/date/operators/between.d.ts +32 -0
- package/dist/date/operators/betweenThan.d.ts +32 -0
- package/dist/date/operators/betweenThanTime.d.ts +36 -0
- package/dist/date/operators/betweenTime.d.ts +36 -0
- package/dist/date/operators/greater.d.ts +28 -0
- package/dist/date/operators/greaterThan.d.ts +28 -0
- package/dist/date/operators/greaterThanTime.d.ts +35 -0
- package/dist/date/operators/greaterTime.d.ts +35 -0
- package/dist/date/operators/less.d.ts +28 -0
- package/dist/date/operators/lessThan.d.ts +28 -0
- package/dist/date/operators/lessThanTime.d.ts +35 -0
- package/dist/date/operators/lessTime.d.ts +35 -0
- package/dist/date/operators/subtractDays.d.ts +26 -0
- package/dist/date/operators/subtractHours.d.ts +26 -0
- package/dist/date/operators/subtractMilliseconds.d.ts +26 -0
- package/dist/date/operators/subtractMinutes.d.ts +26 -0
- package/dist/date/operators/subtractMonths.d.ts +26 -0
- package/dist/date/operators/subtractSeconds.d.ts +26 -0
- package/dist/date/operators/subtractTime.d.ts +31 -0
- package/dist/date/operators/subtractWeeks.d.ts +26 -0
- package/dist/date/operators/subtractYears.d.ts +26 -0
- package/dist/date/round.cjs +3 -0
- package/dist/date/round.d.ts +35 -0
- package/dist/date/round.mjs +3 -0
- package/dist/date/sort.d.ts +29 -0
- package/dist/date/sortTimes.d.ts +36 -0
- package/dist/date/toISOString.cjs +3 -0
- package/dist/date/toISOString.d.ts +24 -0
- package/dist/date/toISOString.mjs +3 -0
- package/dist/date/toNative.cjs +3 -0
- package/dist/date/toNative.d.ts +24 -0
- package/dist/date/toNative.mjs +3 -0
- package/dist/date/toTimeValue.cjs +3 -0
- package/dist/date/toTimeValue.d.ts +24 -0
- package/dist/date/toTimeValue.mjs +3 -0
- package/dist/date/toTimestamp.cjs +3 -0
- package/dist/date/toTimestamp.d.ts +24 -0
- package/dist/date/toTimestamp.mjs +3 -0
- package/dist/date/today.cjs +3 -0
- package/dist/date/today.d.ts +18 -0
- package/dist/date/today.mjs +3 -0
- package/dist/date/tomorrow.cjs +3 -0
- package/dist/date/tomorrow.d.ts +18 -0
- package/dist/date/tomorrow.mjs +3 -0
- package/dist/date/types/isLeapYear.d.ts +8 -0
- package/dist/date/types/isSafeYear.d.ts +8 -0
- package/dist/date/types/theDate.d.ts +10 -0
- package/dist/date/types/theTime.d.ts +9 -0
- package/dist/date/yesterday.cjs +3 -0
- package/dist/date/yesterday.d.ts +18 -0
- package/dist/date/yesterday.mjs +3 -0
- package/dist/either/bool/create.d.ts +22 -0
- package/dist/either/bool/falsy.cjs +9 -0
- package/dist/either/bool/falsy.d.ts +69 -0
- package/dist/either/bool/falsy.mjs +9 -0
- package/dist/either/bool/truthy.cjs +9 -0
- package/dist/either/bool/truthy.d.ts +69 -0
- package/dist/either/bool/truthy.mjs +9 -0
- package/dist/either/future/create.cjs +3 -0
- package/dist/either/future/create.d.ts +23 -0
- package/dist/either/future/create.mjs +3 -0
- package/dist/either/future/error.cjs +3 -0
- package/dist/either/future/error.d.ts +18 -0
- package/dist/either/future/error.mjs +3 -0
- package/dist/either/future/success.cjs +3 -0
- package/dist/either/future/success.d.ts +18 -0
- package/dist/either/future/success.mjs +3 -0
- package/dist/either/hasInformation.d.ts +30 -0
- package/dist/either/index.cjs +3 -1
- package/dist/either/index.d.ts +24 -0
- package/dist/either/index.mjs +4 -0
- package/dist/either/left/create.cjs +3 -0
- package/dist/either/left/create.d.ts +29 -0
- package/dist/either/left/create.mjs +3 -0
- package/dist/either/left/error.cjs +3 -0
- package/dist/either/left/error.d.ts +28 -0
- package/dist/either/left/error.mjs +3 -0
- package/dist/either/left/fail.cjs +3 -0
- package/dist/either/left/fail.d.ts +29 -0
- package/dist/either/left/fail.mjs +3 -0
- package/dist/either/left/is.cjs +3 -0
- package/dist/either/left/is.d.ts +22 -0
- package/dist/either/left/is.mjs +3 -0
- package/dist/either/left/when.d.ts +26 -0
- package/dist/either/nullable/create.d.ts +18 -0
- package/dist/either/nullable/empty.cjs +9 -0
- package/dist/either/nullable/empty.d.ts +59 -0
- package/dist/either/nullable/empty.mjs +9 -0
- package/dist/either/nullable/filled.cjs +9 -0
- package/dist/either/nullable/filled.d.ts +61 -0
- package/dist/either/nullable/filled.mjs +9 -0
- package/dist/either/nullish/create.d.ts +20 -0
- package/dist/either/nullish/empty.cjs +9 -0
- package/dist/either/nullish/empty.d.ts +61 -0
- package/dist/either/nullish/empty.mjs +9 -0
- package/dist/either/nullish/filled.cjs +9 -0
- package/dist/either/nullish/filled.d.ts +61 -0
- package/dist/either/nullish/filled.mjs +9 -0
- package/dist/either/optional/create.d.ts +18 -0
- package/dist/either/optional/empty.cjs +9 -0
- package/dist/either/optional/empty.d.ts +59 -0
- package/dist/either/optional/empty.mjs +9 -0
- package/dist/either/optional/filled.cjs +9 -0
- package/dist/either/optional/filled.d.ts +61 -0
- package/dist/either/optional/filled.mjs +9 -0
- package/dist/either/right/asyncGroup.cjs +3 -0
- package/dist/either/right/asyncGroup.d.ts +29 -0
- package/dist/either/right/asyncGroup.mjs +3 -0
- package/dist/either/right/asyncPipe.d.ts +37 -0
- package/dist/either/right/create.cjs +3 -0
- package/dist/either/right/create.d.ts +36 -0
- package/dist/either/right/create.mjs +3 -0
- package/dist/either/right/group.cjs +3 -0
- package/dist/either/right/group.d.ts +26 -0
- package/dist/either/right/group.mjs +3 -0
- package/dist/either/right/is.cjs +3 -0
- package/dist/either/right/is.d.ts +22 -0
- package/dist/either/right/is.mjs +3 -0
- package/dist/either/right/ok.cjs +3 -0
- package/dist/either/right/ok.d.ts +25 -0
- package/dist/either/right/ok.mjs +3 -0
- package/dist/either/right/pipe.d.ts +33 -0
- package/dist/either/right/success.cjs +3 -0
- package/dist/either/right/success.d.ts +28 -0
- package/dist/either/right/success.mjs +3 -0
- package/dist/either/right/when.d.ts +26 -0
- package/dist/either/safeCallback.cjs +3 -0
- package/dist/either/safeCallback.d.ts +26 -0
- package/dist/either/safeCallback.mjs +3 -0
- package/dist/either/whenHasInformation.d.ts +36 -0
- package/dist/generator/asyncChunk.d.ts +34 -0
- package/dist/generator/asyncFilter.d.ts +50 -0
- package/dist/generator/asyncLoop.cjs +3 -0
- package/dist/generator/asyncLoop.d.ts +43 -0
- package/dist/generator/asyncLoop.mjs +3 -0
- package/dist/generator/asyncMap.d.ts +38 -0
- package/dist/generator/asyncReduce.d.ts +34 -0
- package/dist/generator/chunk.d.ts +27 -0
- package/dist/generator/execute.d.ts +33 -0
- package/dist/generator/filter.d.ts +40 -0
- package/dist/generator/index.cjs +3 -1
- package/dist/generator/index.d.ts +26 -0
- package/dist/generator/index.mjs +4 -0
- package/dist/generator/loop.cjs +3 -0
- package/dist/generator/loop.d.ts +35 -0
- package/dist/generator/loop.mjs +3 -0
- package/dist/generator/map.d.ts +35 -0
- package/dist/generator/reduce.cjs +3 -0
- package/dist/generator/reduce.d.ts +60 -0
- package/dist/generator/reduce.mjs +3 -0
- package/dist/metadata.json +9 -0
- package/dist/number/abs.cjs +3 -0
- package/dist/number/abs.d.ts +27 -0
- package/dist/number/abs.mjs +3 -0
- package/dist/number/acos.cjs +3 -0
- package/dist/number/acos.d.ts +27 -0
- package/dist/number/acos.mjs +3 -0
- package/dist/number/add.d.ts +24 -0
- package/dist/number/asin.cjs +3 -0
- package/dist/number/asin.d.ts +27 -0
- package/dist/number/asin.mjs +3 -0
- package/dist/number/atan.cjs +3 -0
- package/dist/number/atan.d.ts +27 -0
- package/dist/number/atan.mjs +3 -0
- package/dist/number/atan2.d.ts +3 -0
- package/dist/number/between.d.ts +33 -0
- package/dist/number/betweenThan.d.ts +33 -0
- package/dist/number/ceil.cjs +3 -0
- package/dist/number/ceil.d.ts +27 -0
- package/dist/number/ceil.mjs +3 -0
- package/dist/number/clamp.d.ts +32 -0
- package/dist/number/cos.cjs +3 -0
- package/dist/number/cos.d.ts +27 -0
- package/dist/number/cos.mjs +3 -0
- package/dist/number/divide.d.ts +30 -0
- package/dist/number/floor.cjs +3 -0
- package/dist/number/floor.d.ts +27 -0
- package/dist/number/floor.mjs +3 -0
- package/dist/number/greater.d.ts +30 -0
- package/dist/number/greaterThan.d.ts +30 -0
- package/dist/number/index.cjs +3 -1
- package/dist/number/index.d.ts +25 -0
- package/dist/number/index.mjs +4 -0
- package/dist/number/less.d.ts +30 -0
- package/dist/number/lessThan.d.ts +30 -0
- package/dist/number/max.cjs +3 -0
- package/dist/number/max.d.ts +26 -0
- package/dist/number/max.mjs +3 -0
- package/dist/number/min.cjs +3 -0
- package/dist/number/min.d.ts +26 -0
- package/dist/number/min.mjs +3 -0
- package/dist/number/modulo.d.ts +30 -0
- package/dist/number/multiply.d.ts +30 -0
- package/dist/number/negate.cjs +3 -0
- package/dist/number/negate.d.ts +25 -0
- package/dist/number/negate.mjs +3 -0
- package/dist/number/power.d.ts +30 -0
- package/dist/number/round.cjs +3 -0
- package/dist/number/round.d.ts +27 -0
- package/dist/number/round.mjs +3 -0
- package/dist/number/sin.cjs +3 -0
- package/dist/number/sin.d.ts +27 -0
- package/dist/number/sin.mjs +3 -0
- package/dist/number/sort.d.ts +32 -0
- package/dist/number/sqrt.cjs +3 -0
- package/dist/number/sqrt.d.ts +27 -0
- package/dist/number/sqrt.mjs +3 -0
- package/dist/number/subtract.d.ts +30 -0
- package/dist/number/tan.cjs +3 -0
- package/dist/number/tan.d.ts +27 -0
- package/dist/number/tan.mjs +3 -0
- package/dist/number/toFixed.d.ts +33 -0
- package/dist/number/trunc.cjs +3 -0
- package/dist/number/trunc.d.ts +27 -0
- package/dist/number/trunc.mjs +3 -0
- package/dist/object/assign.d.ts +40 -0
- package/dist/object/deepDiscriminate.d.ts +54 -0
- package/dist/object/discriminate.d.ts +53 -0
- package/dist/object/entries.cjs +3 -0
- package/dist/object/entries.d.ts +31 -0
- package/dist/object/entries.mjs +3 -0
- package/dist/object/entry.cjs +3 -0
- package/dist/object/entry.d.ts +29 -0
- package/dist/object/entry.mjs +3 -0
- package/dist/object/fromEntries.cjs +3 -0
- package/dist/object/fromEntries.d.ts +39 -0
- package/dist/object/fromEntries.mjs +3 -0
- package/dist/object/getDeepProperty.d.ts +46 -0
- package/dist/object/getProperty.d.ts +39 -0
- package/dist/object/hasKeys.d.ts +48 -0
- package/dist/object/index.cjs +3 -1
- package/dist/object/index.d.ts +25 -0
- package/dist/object/index.mjs +4 -0
- package/dist/object/keys.cjs +3 -0
- package/dist/object/keys.d.ts +33 -0
- package/dist/object/keys.mjs +3 -0
- package/dist/object/omit.d.ts +46 -0
- package/dist/object/override.d.ts +49 -0
- package/dist/object/pick.d.ts +47 -0
- package/dist/object/to.d.ts +43 -0
- package/dist/object/transformProperties.d.ts +46 -0
- package/dist/object/transformProperty.d.ts +41 -0
- package/dist/object/values.cjs +3 -0
- package/dist/object/values.d.ts +33 -0
- package/dist/object/values.mjs +3 -0
- package/dist/pattern/exhaustive.cjs +3 -0
- package/dist/pattern/exhaustive.d.ts +51 -0
- package/dist/pattern/exhaustive.mjs +3 -0
- package/dist/pattern/index.cjs +3 -1
- package/dist/pattern/index.d.ts +24 -0
- package/dist/pattern/index.mjs +4 -0
- package/dist/pattern/isMatch.d.ts +36 -0
- package/dist/pattern/match/index.d.ts +58 -0
- package/dist/pattern/otherwise.d.ts +56 -0
- package/dist/pattern/union.cjs +3 -0
- package/dist/pattern/union.d.ts +37 -0
- package/dist/pattern/union.mjs +3 -0
- package/dist/pattern/when.d.ts +43 -0
- package/dist/string/at/default.d.ts +30 -0
- package/dist/string/capitalize.cjs +3 -0
- package/dist/string/capitalize.d.ts +27 -0
- package/dist/string/capitalize.mjs +3 -0
- package/dist/string/charAt.d.ts +29 -0
- package/dist/string/concat.d.ts +31 -0
- package/dist/string/endsWith.d.ts +41 -0
- package/dist/string/includes.d.ts +41 -0
- package/dist/string/index.cjs +3 -1
- package/dist/string/index.d.ts +27 -0
- package/dist/string/index.mjs +4 -0
- package/dist/string/indexOf.d.ts +30 -0
- package/dist/string/isIn.d.ts +45 -0
- package/dist/string/isKeyof.d.ts +45 -0
- package/dist/string/lastIndexOf.d.ts +30 -0
- package/dist/string/length.cjs +3 -0
- package/dist/string/length.d.ts +24 -0
- package/dist/string/length.mjs +3 -0
- package/dist/string/match.d.ts +29 -0
- package/dist/string/matchAll.d.ts +36 -0
- package/dist/string/normalize.d.ts +29 -0
- package/dist/string/padEnd.d.ts +29 -0
- package/dist/string/padStart.d.ts +29 -0
- package/dist/string/repeat.d.ts +29 -0
- package/dist/string/replace.d.ts +30 -0
- package/dist/string/replaceAll.d.ts +29 -0
- package/dist/string/search.d.ts +30 -0
- package/dist/string/slice.d.ts +29 -0
- package/dist/string/sort.d.ts +42 -0
- package/dist/string/sortCompare.d.ts +33 -0
- package/dist/string/split.d.ts +29 -0
- package/dist/string/startsWith.d.ts +41 -0
- package/dist/string/substring.d.ts +29 -0
- package/dist/string/test.d.ts +29 -0
- package/dist/string/toLowerCase.cjs +3 -0
- package/dist/string/toLowerCase.d.ts +27 -0
- package/dist/string/toLowerCase.mjs +3 -0
- package/dist/string/toUpperCase.cjs +3 -0
- package/dist/string/toUpperCase.d.ts +27 -0
- package/dist/string/toUpperCase.mjs +3 -0
- package/dist/string/trim/default.cjs +3 -0
- package/dist/string/trim/default.d.ts +27 -0
- package/dist/string/trim/default.mjs +3 -0
- package/dist/string/trim/end.cjs +3 -0
- package/dist/string/trim/end.d.ts +27 -0
- package/dist/string/trim/end.mjs +3 -0
- package/dist/string/trim/start.cjs +3 -0
- package/dist/string/trim/start.d.ts +27 -0
- package/dist/string/trim/start.mjs +3 -0
- package/dist/string/uncapitalize.cjs +3 -0
- package/dist/string/uncapitalize.d.ts +27 -0
- package/dist/string/uncapitalize.mjs +3 -0
- package/package.json +1 -1
|
@@ -1,4 +1,57 @@
|
|
|
1
1
|
import { type EligibleEqual, type MaybeArray } from "../common";
|
|
2
|
+
/**
|
|
3
|
+
* Checks a property value and narrows the object type.
|
|
4
|
+
*
|
|
5
|
+
* **Supported call styles:**
|
|
6
|
+
* - Classic: `discriminate(input, key, value)` → returns a boolean
|
|
7
|
+
* - Curried: `discriminate(key, value)` → returns a function waiting for the input
|
|
8
|
+
* - Classic predicate: `discriminate(input, key, value)` → narrows the object type
|
|
9
|
+
* - Curried predicate: `discriminate(key, value)` → narrows the object type
|
|
10
|
+
*
|
|
11
|
+
* The input object is not mutated.
|
|
12
|
+
*
|
|
13
|
+
* ```ts
|
|
14
|
+
* const shapeObj = {
|
|
15
|
+
* kind: "circle",
|
|
16
|
+
* radius: 2,
|
|
17
|
+
* } as {
|
|
18
|
+
* kind: "circle";
|
|
19
|
+
* radius: number;
|
|
20
|
+
* } | {
|
|
21
|
+
* kind: "square";
|
|
22
|
+
* size: number;
|
|
23
|
+
* };
|
|
24
|
+
*
|
|
25
|
+
* if (O.discriminate(shapeObj, "kind", "circle")) {
|
|
26
|
+
* // shapeObj is circle
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
29
|
+
* pipe(
|
|
30
|
+
* shapeObj,
|
|
31
|
+
* when(
|
|
32
|
+
* O.discriminate("kind", "square"),
|
|
33
|
+
* (value) => {
|
|
34
|
+
* // value is square
|
|
35
|
+
* },
|
|
36
|
+
* ),
|
|
37
|
+
* );
|
|
38
|
+
*
|
|
39
|
+
* O.discriminate(
|
|
40
|
+
* {
|
|
41
|
+
* status: "ready",
|
|
42
|
+
* },
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* @remarks
|
|
46
|
+
* - Predicate overloads (type guards) narrow the output type
|
|
47
|
+
* - The discriminated value can be an array, acting as an "or" list
|
|
48
|
+
*
|
|
49
|
+
* @see [`O.deepDiscriminate`](https://utils.duplojs.dev/en/v1/api/object/deepDiscriminate) For deep paths
|
|
50
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/discriminate
|
|
51
|
+
*
|
|
52
|
+
* @namespace O
|
|
53
|
+
*
|
|
54
|
+
*/
|
|
2
55
|
export declare function discriminate<GenericInput extends object, GenericKey extends keyof GenericInput, GenericValue extends EligibleEqual>(key: GenericKey, value: (MaybeArray<(GenericValue & Extract<GenericInput[GenericKey], EligibleEqual>)> | MaybeArray<Extract<GenericInput[GenericKey], EligibleEqual>>)): (input: GenericInput) => input is Extract<GenericInput, {
|
|
3
56
|
[Prop in GenericKey]: GenericValue;
|
|
4
57
|
}>;
|
package/dist/object/entries.cjs
CHANGED
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
var wrapValue = require('../common/wrapValue.cjs');
|
|
4
4
|
var kind = require('../common/kind.cjs');
|
|
5
5
|
|
|
6
|
+
/**
|
|
7
|
+
* {@include object/entries/index.md}
|
|
8
|
+
*/
|
|
6
9
|
function entries(object) {
|
|
7
10
|
return Object.entries(object)
|
|
8
11
|
.filter(([key]) => !wrapValue.isRuntimeWrappedValueKey(key) && !kind.isRuntimeKind(key));
|
package/dist/object/entries.d.ts
CHANGED
|
@@ -5,6 +5,37 @@ export type GetEntry<GenericKey extends ObjectKey, GenericValue extends unknown>
|
|
|
5
5
|
export type GetEntries<GenericObject extends object> = GenericObject extends readonly any[] ? [DString.Number, GenericObject[number]][] : IsEqual<GenericObject, object> extends true ? [string, AnyValue][] : ({
|
|
6
6
|
[Prop in keyof GenericObject]-?: GetEntry<Prop, GenericObject[Prop]>;
|
|
7
7
|
}[keyof GenericObject]) extends infer InferredResult extends ObjectEntry ? IsEqual<InferredResult, never> extends true ? [] : InferredResult[] : never;
|
|
8
|
+
/**
|
|
9
|
+
* Returns object entries as key-value pairs.
|
|
10
|
+
*
|
|
11
|
+
* Signature: `entries(object)` → returns entries
|
|
12
|
+
*
|
|
13
|
+
* The input object is not mutated.
|
|
14
|
+
*
|
|
15
|
+
* ```ts
|
|
16
|
+
* O.entries(
|
|
17
|
+
* {
|
|
18
|
+
* name: "Ada",
|
|
19
|
+
* age: 36,
|
|
20
|
+
* },
|
|
21
|
+
* ); // [["name", "Ada"], ["age", 36]]
|
|
22
|
+
*
|
|
23
|
+
* O.entries(
|
|
24
|
+
* {
|
|
25
|
+
* active: true,
|
|
26
|
+
* },
|
|
27
|
+
* ); // [["active", true]]
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @remarks
|
|
31
|
+
* - Filters runtime keys used by the library
|
|
32
|
+
* - Uses the same semantics as [`Object.entries`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries)
|
|
33
|
+
*
|
|
34
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/entries
|
|
35
|
+
*
|
|
36
|
+
* @namespace O
|
|
37
|
+
*
|
|
38
|
+
*/
|
|
8
39
|
export declare function entries<GenericObject extends object>(object: GenericObject): SimplifyTopLevel<GetEntries<GenericObject>>;
|
|
9
40
|
export declare namespace entries {
|
|
10
41
|
var unsafe: <GenericObject extends object>(object: GenericObject) => [string, AnyValue][];
|
package/dist/object/entries.mjs
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { isRuntimeWrappedValueKey } from '../common/wrapValue.mjs';
|
|
2
2
|
import { isRuntimeKind } from '../common/kind.mjs';
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* {@include object/entries/index.md}
|
|
6
|
+
*/
|
|
4
7
|
function entries(object) {
|
|
5
8
|
return Object.entries(object)
|
|
6
9
|
.filter(([key]) => !isRuntimeWrappedValueKey(key) && !isRuntimeKind(key));
|
package/dist/object/entry.cjs
CHANGED
package/dist/object/entry.d.ts
CHANGED
|
@@ -1,2 +1,31 @@
|
|
|
1
1
|
import { type ObjectKey } from "../common";
|
|
2
|
+
/**
|
|
3
|
+
* Creates an entry tuple from a key and value.
|
|
4
|
+
*
|
|
5
|
+
* Signature: `entry(key, value)` → returns a tuple
|
|
6
|
+
*
|
|
7
|
+
* ```ts
|
|
8
|
+
* O.entry(
|
|
9
|
+
* "name",
|
|
10
|
+
* "Ada",
|
|
11
|
+
* ); // ["name", "Ada"]
|
|
12
|
+
*
|
|
13
|
+
* O.entry(
|
|
14
|
+
* "active",
|
|
15
|
+
* true,
|
|
16
|
+
* ); // ["active", true]
|
|
17
|
+
*
|
|
18
|
+
* O.entry(
|
|
19
|
+
* "count",
|
|
20
|
+
* 2,
|
|
21
|
+
* ); // ["count", 2]
|
|
22
|
+
*
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @see [`O.fromEntries`](https://utils.duplojs.dev/en/v1/api/object/fromEntries) For building objects
|
|
26
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/entry
|
|
27
|
+
*
|
|
28
|
+
* @namespace O
|
|
29
|
+
*
|
|
30
|
+
*/
|
|
2
31
|
export declare function entry<GenericKey extends ObjectKey, GenericValue extends unknown>(key: GenericKey, value: GenericValue): readonly [GenericKey, GenericValue];
|
package/dist/object/entry.mjs
CHANGED
|
@@ -4,5 +4,44 @@ type ComputeEntries<GenericEntry extends ObjectEntry> = UnionContain<ObjectKey,
|
|
|
4
4
|
}> : SimplifyTopLevel<{
|
|
5
5
|
[Entry in GenericEntry as Entry[0]]?: Entry[1];
|
|
6
6
|
}>;
|
|
7
|
+
/**
|
|
8
|
+
* Creates an object from entries.
|
|
9
|
+
*
|
|
10
|
+
* Signature: `fromEntries(entries)` → returns an object
|
|
11
|
+
*
|
|
12
|
+
* The input array is not mutated.
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* O.fromEntries(
|
|
16
|
+
* [
|
|
17
|
+
* [
|
|
18
|
+
* "name",
|
|
19
|
+
* "Ada",
|
|
20
|
+
* ],
|
|
21
|
+
* [
|
|
22
|
+
* "age",
|
|
23
|
+
* 36,
|
|
24
|
+
* ],
|
|
25
|
+
* ],
|
|
26
|
+
* ); // { name: "Ada", age: 36 }
|
|
27
|
+
*
|
|
28
|
+
* O.fromEntries(
|
|
29
|
+
* [
|
|
30
|
+
* [
|
|
31
|
+
* "active",
|
|
32
|
+
* true,
|
|
33
|
+
* ],
|
|
34
|
+
* ],
|
|
35
|
+
* ); // { active: true }
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @remarks
|
|
39
|
+
* - Uses the same semantics as [`Object.fromEntries`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/fromEntries)
|
|
40
|
+
*
|
|
41
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/fromEntries
|
|
42
|
+
*
|
|
43
|
+
* @namespace O
|
|
44
|
+
*
|
|
45
|
+
*/
|
|
7
46
|
export declare function fromEntries<GenericKey extends ObjectKey, const GenericEntry extends readonly [GenericKey, unknown]>(entries: readonly GenericEntry[]): ComputeEntries<GenericEntry>;
|
|
8
47
|
export {};
|
|
@@ -1,6 +1,52 @@
|
|
|
1
1
|
import { type EligibleEqual } from "../common";
|
|
2
2
|
import { type FlatObject, type GetPropsWithValueExtends } from "./types";
|
|
3
3
|
type ObjectProjection<GenericInput extends object> = FlatObject<GenericInput> extends infer InferredResult extends object ? Omit<Pick<InferredResult, GetPropsWithValueExtends<InferredResult, EligibleEqual>>, `${string}[${string}]${string}`> : never;
|
|
4
|
+
/**
|
|
5
|
+
* Gets a nested property value using a path.
|
|
6
|
+
*
|
|
7
|
+
* **Supported call styles:**
|
|
8
|
+
* - Classic: `getDeepProperty(input, path)` → returns the value
|
|
9
|
+
* - Curried: `getDeepProperty(path)` → returns a function waiting for the input
|
|
10
|
+
*
|
|
11
|
+
* The path uses dot notation.
|
|
12
|
+
* The input object is not mutated.
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* O.getDeepProperty(
|
|
16
|
+
* {
|
|
17
|
+
* user: {
|
|
18
|
+
* name: "Ada",
|
|
19
|
+
* },
|
|
20
|
+
* },
|
|
21
|
+
* "user.name",
|
|
22
|
+
* ); // "Ada"
|
|
23
|
+
*
|
|
24
|
+
* pipe(
|
|
25
|
+
* {
|
|
26
|
+
* meta: {
|
|
27
|
+
* count: 2,
|
|
28
|
+
* },
|
|
29
|
+
* },
|
|
30
|
+
* O.getDeepProperty("meta.count"),
|
|
31
|
+
* ); // 2
|
|
32
|
+
*
|
|
33
|
+
* O.getDeepProperty(
|
|
34
|
+
* {
|
|
35
|
+
* settings: {
|
|
36
|
+
* theme: "light",
|
|
37
|
+
* },
|
|
38
|
+
* },
|
|
39
|
+
* "settings.theme",
|
|
40
|
+
* ); // "light"
|
|
41
|
+
*
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* @see [`O.getProperty`](https://utils.duplojs.dev/en/v1/api/object/getProperty) For top-level keys
|
|
45
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/getDeepProperty
|
|
46
|
+
*
|
|
47
|
+
* @namespace O
|
|
48
|
+
*
|
|
49
|
+
*/
|
|
4
50
|
export declare function getDeepProperty<GenericInput extends object, GenericObjectProjection extends ObjectProjection<GenericInput>, GenericPath extends keyof GenericObjectProjection>(path: GenericPath): (input: GenericInput) => GenericObjectProjection[GenericPath];
|
|
5
51
|
export declare function getDeepProperty<GenericInput extends object, GenericObjectProjection extends ObjectProjection<GenericInput>, GenericPath extends keyof GenericObjectProjection>(input: GenericInput, path: GenericPath): GenericObjectProjection[GenericPath];
|
|
6
52
|
export {};
|
|
@@ -3,6 +3,45 @@ import { type UnionObjectToIntersection } from "./types/UnionObjectToIntersectio
|
|
|
3
3
|
type MergeTopLevelUnionObject<GenericObject extends object, GenericFullObjectKeys extends keyof UnionObjectToIntersection<GenericObject> = keyof UnionObjectToIntersection<GenericObject>> = PartialKeys<{
|
|
4
4
|
[Prop in GenericFullObjectKeys]: (GenericObject extends object ? Prop extends keyof GenericObject ? GenericObject[Prop] : never : never);
|
|
5
5
|
}, Exclude<GenericFullObjectKeys, keyof GenericObject>>;
|
|
6
|
+
/**
|
|
7
|
+
* Gets a property value by key.
|
|
8
|
+
*
|
|
9
|
+
* **Supported call styles:**
|
|
10
|
+
* - Classic: `getProperty(obj, key)` → returns the value
|
|
11
|
+
* - Curried: `getProperty(key)` → returns a function waiting for the object
|
|
12
|
+
*
|
|
13
|
+
* The input object is not mutated.
|
|
14
|
+
*
|
|
15
|
+
* ```ts
|
|
16
|
+
* O.getProperty(
|
|
17
|
+
* {
|
|
18
|
+
* name: "Ada",
|
|
19
|
+
* },
|
|
20
|
+
* "name",
|
|
21
|
+
* ); // "Ada"
|
|
22
|
+
*
|
|
23
|
+
* pipe(
|
|
24
|
+
* {
|
|
25
|
+
* count: 2,
|
|
26
|
+
* },
|
|
27
|
+
* O.getProperty("count"),
|
|
28
|
+
* ); // 2
|
|
29
|
+
*
|
|
30
|
+
* O.getProperty(
|
|
31
|
+
* {
|
|
32
|
+
* active: true,
|
|
33
|
+
* },
|
|
34
|
+
* "active",
|
|
35
|
+
* ); // true
|
|
36
|
+
*
|
|
37
|
+
* ```
|
|
38
|
+
*
|
|
39
|
+
* @see [`O.getDeepProperty`](https://utils.duplojs.dev/en/v1/api/object/getDeepProperty) For nested paths
|
|
40
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/getProperty
|
|
41
|
+
*
|
|
42
|
+
* @namespace O
|
|
43
|
+
*
|
|
44
|
+
*/
|
|
6
45
|
export declare function getProperty<GenericObject extends object, GenericFullObject extends MergeTopLevelUnionObject<GenericObject>, GenericKey extends keyof GenericFullObject>(key: GenericKey): (obj: GenericObject) => GenericFullObject[GenericKey];
|
|
7
46
|
export declare function getProperty<GenericObject extends object, GenericFullObject extends MergeTopLevelUnionObject<GenericObject>, GenericKey extends keyof GenericFullObject>(obj: GenericObject, key: GenericKey): GenericFullObject[GenericKey];
|
|
8
47
|
export {};
|
package/dist/object/hasKeys.d.ts
CHANGED
|
@@ -1,3 +1,51 @@
|
|
|
1
1
|
import { type RequiredKeys } from "./types/requiredKeys";
|
|
2
|
+
/**
|
|
3
|
+
* Checks if an object has specific keys defined.
|
|
4
|
+
*
|
|
5
|
+
* **Supported call styles:**
|
|
6
|
+
* - Classic: `hasKeys(partialObject, keys)` → returns a boolean
|
|
7
|
+
* - Curried: `hasKeys(keys)` → returns a function waiting for the object
|
|
8
|
+
* - Classic predicate: `hasKeys(partialObject, keys)` → narrows the object type
|
|
9
|
+
* - Curried predicate: `hasKeys(keys)` → narrows the object type
|
|
10
|
+
*
|
|
11
|
+
* The input object is not mutated.
|
|
12
|
+
*
|
|
13
|
+
* ```ts
|
|
14
|
+
* const partialObj: {
|
|
15
|
+
* name?: string;
|
|
16
|
+
* age?: number;
|
|
17
|
+
* } = {
|
|
18
|
+
* name: "Ada",
|
|
19
|
+
* };
|
|
20
|
+
*
|
|
21
|
+
* if (O.hasKeys(partialObj, "name")) {
|
|
22
|
+
* // partialObj has key "name"
|
|
23
|
+
* }
|
|
24
|
+
*
|
|
25
|
+
* pipe(
|
|
26
|
+
* partialObj,
|
|
27
|
+
* when(
|
|
28
|
+
* O.hasKeys(
|
|
29
|
+
* [
|
|
30
|
+
* "name",
|
|
31
|
+
* "age",
|
|
32
|
+
* ], // and
|
|
33
|
+
* ),
|
|
34
|
+
* (value) => {
|
|
35
|
+
* // value has both keys
|
|
36
|
+
* },
|
|
37
|
+
* ),
|
|
38
|
+
* );
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @remarks
|
|
42
|
+
* - Predicate overloads (type guards) narrow the object type
|
|
43
|
+
* - Passing an array of keys acts as an "and" (all keys must be present)
|
|
44
|
+
*
|
|
45
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/hasKeys
|
|
46
|
+
*
|
|
47
|
+
* @namespace O
|
|
48
|
+
*
|
|
49
|
+
*/
|
|
2
50
|
export declare function hasKeys<GenericObject extends object, GenericKeys extends keyof GenericObject>(keys: GenericKeys | readonly GenericKeys[]): (partialObject: GenericObject) => partialObject is RequiredKeys<GenericObject, NoInfer<GenericKeys>>;
|
|
3
51
|
export declare function hasKeys<GenericObject extends object, GenericKeys extends keyof GenericObject>(partialObject: GenericObject, keys: GenericKeys | readonly GenericKeys[]): partialObject is RequiredKeys<GenericObject, NoInfer<GenericKeys>>;
|
package/dist/object/index.cjs
CHANGED
|
@@ -19,7 +19,9 @@ var getDeepProperty = require('./getDeepProperty.cjs');
|
|
|
19
19
|
var discriminate = require('./discriminate.cjs');
|
|
20
20
|
var entry = require('./entry.cjs');
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
/**
|
|
23
|
+
* {@include object/index.md}
|
|
24
|
+
*/
|
|
23
25
|
|
|
24
26
|
exports.entries = entries.entries;
|
|
25
27
|
exports.fromEntries = fromEntries.fromEntries;
|
package/dist/object/index.d.ts
CHANGED
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Object utilities for immutable, type-safe object manipulation. Functions preserve the
|
|
3
|
+
* original object and return new values.
|
|
4
|
+
*
|
|
5
|
+
* **How to import:**
|
|
6
|
+
* - From the main entry (namespace style)
|
|
7
|
+
* - Via direct import for tree-shaking
|
|
8
|
+
*
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { DObject, O } from "@duplojs/utils";
|
|
11
|
+
* import * as DObject from "@duplojs/utils/object";
|
|
12
|
+
* import * as O from "@duplojs/utils/object";
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* What you will find in this namespace:
|
|
16
|
+
* - access and queries (`O.getProperty`, `O.getDeepProperty`, `O.hasKeys`)
|
|
17
|
+
* - transforms (`O.transformProperty`, `O.transformProperties`, `O.to`)
|
|
18
|
+
* - composition (`O.assign`, `O.override`, `O.pick`, `O.omit`)
|
|
19
|
+
* - entries and keys (`O.entries`, `O.fromEntries`, `O.keys`, `O.values`)
|
|
20
|
+
*
|
|
21
|
+
* @see https://utils.duplojs.dev/en/v1/api/object
|
|
22
|
+
*
|
|
23
|
+
* @namespace O
|
|
24
|
+
*
|
|
25
|
+
*/
|
|
1
26
|
export * from "./types";
|
|
2
27
|
export * from "./entries";
|
|
3
28
|
export * from "./fromEntries";
|
package/dist/object/index.mjs
CHANGED
package/dist/object/keys.cjs
CHANGED
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
var wrapValue = require('../common/wrapValue.cjs');
|
|
4
4
|
var kind = require('../common/kind.cjs');
|
|
5
5
|
|
|
6
|
+
/**
|
|
7
|
+
* {@include object/keys/index.md}
|
|
8
|
+
*/
|
|
6
9
|
function keys(object) {
|
|
7
10
|
return Object.keys(object)
|
|
8
11
|
.filter((key) => !wrapValue.isRuntimeWrappedValueKey(key) && !kind.isRuntimeKind(key));
|
package/dist/object/keys.d.ts
CHANGED
|
@@ -1 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns object keys.
|
|
3
|
+
*
|
|
4
|
+
* Signature: `keys(object)` → returns keys
|
|
5
|
+
*
|
|
6
|
+
* The input object is not mutated.
|
|
7
|
+
*
|
|
8
|
+
* ```ts
|
|
9
|
+
* O.keys(
|
|
10
|
+
* {
|
|
11
|
+
* name: "Ada",
|
|
12
|
+
* age: 36,
|
|
13
|
+
* },
|
|
14
|
+
* ); // ["name", "age"]
|
|
15
|
+
*
|
|
16
|
+
* pipe(
|
|
17
|
+
* {
|
|
18
|
+
* name: "William",
|
|
19
|
+
* role: "client",
|
|
20
|
+
* },
|
|
21
|
+
* O.keys,
|
|
22
|
+
* ); // ["name", "role"]
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @remarks
|
|
26
|
+
* - Filters runtime keys used by the library
|
|
27
|
+
* - Uses the same semantics as [`Object.keys`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys)
|
|
28
|
+
*
|
|
29
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/keys
|
|
30
|
+
*
|
|
31
|
+
* @namespace O
|
|
32
|
+
*
|
|
33
|
+
*/
|
|
1
34
|
export declare function keys<GenericObject extends object>(object: GenericObject): (Exclude<keyof GenericObject, symbol>)[];
|
package/dist/object/keys.mjs
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { isRuntimeWrappedValueKey } from '../common/wrapValue.mjs';
|
|
2
2
|
import { isRuntimeKind } from '../common/kind.mjs';
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* {@include object/keys/index.md}
|
|
6
|
+
*/
|
|
4
7
|
function keys(object) {
|
|
5
8
|
return Object.keys(object)
|
|
6
9
|
.filter((key) => !isRuntimeWrappedValueKey(key) && !isRuntimeKind(key));
|
package/dist/object/omit.d.ts
CHANGED
|
@@ -3,6 +3,52 @@ import { type Adaptor } from "../common/types/adaptor";
|
|
|
3
3
|
import { type GetPropsWithValue } from "./types/getPropsWithValue";
|
|
4
4
|
import { type PartialKeys } from "./types";
|
|
5
5
|
type ComputeResultWithOmitIsObject<GenericInput extends object, GenericOmitValue extends Partial<Record<keyof GenericInput, boolean>>> = SimplifyTopLevel<Omit<GenericInput, GetPropsWithValue<GenericOmitValue, true>> extends infer InferredValue extends object ? PartialKeys<InferredValue, Adaptor<GetPropsWithValue<GenericOmitValue, boolean> | GetPropsWithValue<GenericOmitValue, boolean | undefined> | GetPropsWithValue<GenericOmitValue, true | undefined>, keyof InferredValue>> : never>;
|
|
6
|
+
/**
|
|
7
|
+
* Removes properties from an object.
|
|
8
|
+
*
|
|
9
|
+
* **Supported call styles:**
|
|
10
|
+
* - Classic: `omit(input, omitValue)` → returns a new object
|
|
11
|
+
* - Curried: `omit(omitValue)` → returns a function waiting for the input
|
|
12
|
+
*
|
|
13
|
+
* The `omitValue` can be a key array or a map of keys to booleans.
|
|
14
|
+
* The input object is not mutated.
|
|
15
|
+
*
|
|
16
|
+
* ```ts
|
|
17
|
+
* O.omit(
|
|
18
|
+
* {
|
|
19
|
+
* name: "Ada",
|
|
20
|
+
* age: 36,
|
|
21
|
+
* },
|
|
22
|
+
* ["age"],
|
|
23
|
+
* ); // { name: "Ada" }
|
|
24
|
+
*
|
|
25
|
+
* O.omit(
|
|
26
|
+
* {
|
|
27
|
+
* name: "Ada",
|
|
28
|
+
* age: 36,
|
|
29
|
+
* active: true,
|
|
30
|
+
* },
|
|
31
|
+
* {
|
|
32
|
+
* active: true,
|
|
33
|
+
* },
|
|
34
|
+
* ); // { name: "Ada", age: 36 }
|
|
35
|
+
*
|
|
36
|
+
* pipe(
|
|
37
|
+
* {
|
|
38
|
+
* role: "admin",
|
|
39
|
+
* level: 3,
|
|
40
|
+
* },
|
|
41
|
+
* O.omit(["level"]),
|
|
42
|
+
* ); // { role: "admin" }
|
|
43
|
+
*
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* @see [`O.pick`](https://utils.duplojs.dev/en/v1/api/object/pick) For selecting keys
|
|
47
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/omit
|
|
48
|
+
*
|
|
49
|
+
* @namespace O
|
|
50
|
+
*
|
|
51
|
+
*/
|
|
6
52
|
export declare function omit<GenericInput extends object, const GenericOmitValue extends Partial<Record<keyof GenericInput, boolean>> | readonly (keyof GenericInput)[]>(omitValue: GenericOmitValue): (input: GenericInput) => GenericOmitValue extends Partial<Record<keyof GenericInput, boolean>> ? ComputeResultWithOmitIsObject<GenericInput, GenericOmitValue> : SimplifyTopLevel<Omit<GenericInput, Adaptor<GenericOmitValue, readonly ObjectKey[]>[number]>>;
|
|
7
53
|
export declare function omit<GenericInput extends object, const GenericOmitValue extends Partial<Record<keyof GenericInput, boolean>> | readonly (keyof GenericInput)[]>(input: GenericInput, omitValue: GenericOmitValue): GenericOmitValue extends Partial<Record<keyof GenericInput, boolean>> ? ComputeResultWithOmitIsObject<GenericInput, GenericOmitValue> : SimplifyTopLevel<Omit<GenericInput, Adaptor<GenericOmitValue, readonly ObjectKey[]>[number]>>;
|
|
8
54
|
export {};
|
|
@@ -1,2 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Overrides object properties, ignoring undefined values.
|
|
3
|
+
*
|
|
4
|
+
* **Supported call styles:**
|
|
5
|
+
* - Classic: `override(input, value)` → returns a new object
|
|
6
|
+
* - Curried: `override(value)` → returns a function waiting for the input
|
|
7
|
+
*
|
|
8
|
+
* The input object is not mutated.
|
|
9
|
+
*
|
|
10
|
+
* ```ts
|
|
11
|
+
* O.override(
|
|
12
|
+
* {
|
|
13
|
+
* name: "Ada",
|
|
14
|
+
* age: 36,
|
|
15
|
+
* },
|
|
16
|
+
* {
|
|
17
|
+
* age: undefined,
|
|
18
|
+
* },
|
|
19
|
+
* ); // { name: "Ada", age: 36 }
|
|
20
|
+
*
|
|
21
|
+
* pipe(
|
|
22
|
+
* {
|
|
23
|
+
* count: 1,
|
|
24
|
+
* },
|
|
25
|
+
* O.override({
|
|
26
|
+
* count: 2,
|
|
27
|
+
* }),
|
|
28
|
+
* ); // { count: 2 }
|
|
29
|
+
*
|
|
30
|
+
* O.override(
|
|
31
|
+
* {
|
|
32
|
+
* active: true,
|
|
33
|
+
* },
|
|
34
|
+
* {
|
|
35
|
+
* active: false,
|
|
36
|
+
* },
|
|
37
|
+
* ); // { active: false }
|
|
38
|
+
*
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @remarks
|
|
42
|
+
* - Properties with `undefined` are not applied
|
|
43
|
+
*
|
|
44
|
+
* @see [`O.assign`](https://utils.duplojs.dev/en/v1/api/object/assign) For direct assignment
|
|
45
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/override
|
|
46
|
+
*
|
|
47
|
+
* @namespace O
|
|
48
|
+
*
|
|
49
|
+
*/
|
|
1
50
|
export declare function override<GenericInput extends object>(value: Partial<NoInfer<GenericInput>>): (input: GenericInput) => GenericInput;
|
|
2
51
|
export declare function override<GenericInput extends object>(input: GenericInput, value: Partial<NoInfer<GenericInput>>): GenericInput;
|
package/dist/object/pick.d.ts
CHANGED
|
@@ -2,6 +2,53 @@ import { type ObjectKey, type SimplifyTopLevel } from "../common";
|
|
|
2
2
|
import { type Adaptor } from "../common/types/adaptor";
|
|
3
3
|
import { type GetPropsWithValue } from "./types/getPropsWithValue";
|
|
4
4
|
type ComputeResultWithPickIsObject<GenericInput extends object, GenericPickValue extends Partial<Record<keyof GenericInput, boolean>>> = SimplifyTopLevel<Pick<GenericInput, Adaptor<GetPropsWithValue<GenericPickValue, true>, keyof GenericInput>> & Partial<Pick<GenericInput, Adaptor<GetPropsWithValue<GenericPickValue, boolean> | GetPropsWithValue<GenericPickValue, boolean | undefined> | GetPropsWithValue<GenericPickValue, true | undefined>, keyof GenericInput>>>>;
|
|
5
|
+
/**
|
|
6
|
+
* Selects properties from an object.
|
|
7
|
+
*
|
|
8
|
+
* **Supported call styles:**
|
|
9
|
+
* - Classic: `pick(input, pickValue)` → returns a new object
|
|
10
|
+
* - Curried: `pick(pickValue)` → returns a function waiting for the input
|
|
11
|
+
*
|
|
12
|
+
* The `pickValue` can be a key array or a map of keys to booleans.
|
|
13
|
+
* The input object is not mutated.
|
|
14
|
+
*
|
|
15
|
+
* ```ts
|
|
16
|
+
* O.pick(
|
|
17
|
+
* {
|
|
18
|
+
* name: "Ada",
|
|
19
|
+
* age: 36,
|
|
20
|
+
* },
|
|
21
|
+
* ["name"],
|
|
22
|
+
* ); // { name: "Ada" }
|
|
23
|
+
*
|
|
24
|
+
* O.pick(
|
|
25
|
+
* {
|
|
26
|
+
* name: "Ada",
|
|
27
|
+
* age: 36,
|
|
28
|
+
* active: true,
|
|
29
|
+
* },
|
|
30
|
+
* {
|
|
31
|
+
* name: true,
|
|
32
|
+
* active: true,
|
|
33
|
+
* },
|
|
34
|
+
* ); // { name: "Ada", active: true }
|
|
35
|
+
*
|
|
36
|
+
* pipe(
|
|
37
|
+
* {
|
|
38
|
+
* role: "admin",
|
|
39
|
+
* level: 3,
|
|
40
|
+
* },
|
|
41
|
+
* O.pick(["role"]),
|
|
42
|
+
* ); // { role: "admin" }
|
|
43
|
+
*
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* @see [`O.omit`](https://utils.duplojs.dev/en/v1/api/object/omit) For removing keys
|
|
47
|
+
* @see https://utils.duplojs.dev/en/v1/api/object/pick
|
|
48
|
+
*
|
|
49
|
+
* @namespace O
|
|
50
|
+
*
|
|
51
|
+
*/
|
|
5
52
|
export declare function pick<GenericInput extends object, const GenericPickValue extends Partial<Record<keyof GenericInput, boolean>> | readonly (keyof GenericInput)[]>(pickValue: GenericPickValue): (input: GenericInput) => GenericPickValue extends Partial<Record<keyof GenericInput, boolean>> ? ComputeResultWithPickIsObject<GenericInput, GenericPickValue> : SimplifyTopLevel<Pick<GenericInput, Adaptor<GenericPickValue, readonly ObjectKey[]>[number]>>;
|
|
6
53
|
export declare function pick<GenericInput extends object, const GenericPickValue extends Partial<Record<keyof GenericInput, boolean>> | readonly (keyof GenericInput)[]>(input: GenericInput, pickValue: GenericPickValue): GenericPickValue extends Partial<Record<keyof GenericInput, boolean>> ? ComputeResultWithPickIsObject<GenericInput, GenericPickValue> : SimplifyTopLevel<Pick<GenericInput, Adaptor<GenericPickValue, readonly ObjectKey[]>[number]>>;
|
|
7
54
|
export {};
|