@duplojs/utils 0.3.1 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/array/at/default.cjs +12 -0
- package/dist/array/at/default.d.ts +5 -0
- package/dist/array/at/default.mjs +10 -0
- package/dist/array/at/first.cjs +7 -0
- package/dist/array/at/first.d.ts +2 -0
- package/dist/array/at/first.mjs +5 -0
- package/dist/array/at/index.d.ts +3 -0
- package/dist/array/at/last.cjs +7 -0
- package/dist/array/at/last.d.ts +1 -0
- package/dist/array/at/last.mjs +5 -0
- package/dist/array/concat.cjs +12 -0
- package/dist/array/concat.d.ts +2 -0
- package/dist/array/concat.mjs +10 -0
- package/dist/array/copyWithin.cjs +12 -0
- package/dist/array/copyWithin.d.ts +2 -0
- package/dist/array/copyWithin.mjs +10 -0
- package/dist/array/every.cjs +12 -0
- package/dist/array/every.d.ts +6 -0
- package/dist/array/every.mjs +10 -0
- package/dist/array/fill/all.cjs +12 -0
- package/dist/array/fill/all.d.ts +2 -0
- package/dist/array/fill/all.mjs +10 -0
- package/dist/array/fill/default.cjs +12 -0
- package/dist/array/fill/default.d.ts +2 -0
- package/dist/array/fill/default.mjs +10 -0
- package/dist/array/fill/index.d.ts +2 -0
- package/dist/array/filter.cjs +12 -0
- package/dist/array/filter.d.ts +8 -0
- package/dist/array/filter.mjs +10 -0
- package/dist/array/find.cjs +12 -0
- package/dist/array/find.d.ts +8 -0
- package/dist/array/find.mjs +10 -0
- package/dist/array/findAndReplace.cjs +19 -0
- package/dist/array/findAndReplace.d.ts +7 -0
- package/dist/array/findAndReplace.mjs +17 -0
- package/dist/array/findAndSplice/delete.cjs +19 -0
- package/dist/array/findAndSplice/delete.d.ts +6 -0
- package/dist/array/findAndSplice/delete.mjs +17 -0
- package/dist/array/findAndSplice/index.d.ts +3 -0
- package/dist/array/findAndSplice/insert.cjs +19 -0
- package/dist/array/findAndSplice/insert.d.ts +6 -0
- package/dist/array/findAndSplice/insert.mjs +17 -0
- package/dist/array/findAndSplice/replace.cjs +19 -0
- package/dist/array/findAndSplice/replace.d.ts +6 -0
- package/dist/array/findAndSplice/replace.mjs +17 -0
- package/dist/array/findIndex.cjs +17 -0
- package/dist/array/findIndex.d.ts +6 -0
- package/dist/array/findIndex.mjs +15 -0
- package/dist/array/findLast.cjs +18 -0
- package/dist/array/findLast.d.ts +8 -0
- package/dist/array/findLast.mjs +16 -0
- package/dist/array/findLastIndex.cjs +18 -0
- package/dist/array/findLastIndex.d.ts +6 -0
- package/dist/array/findLastIndex.mjs +16 -0
- package/dist/array/flat.cjs +19 -0
- package/dist/array/flat.d.ts +4 -0
- package/dist/array/flat.mjs +17 -0
- package/dist/array/flatMap.cjs +12 -0
- package/dist/array/flatMap.d.ts +6 -0
- package/dist/array/flatMap.mjs +10 -0
- package/dist/array/from.cjs +16 -0
- package/dist/array/from.d.ts +1 -0
- package/dist/array/from.mjs +14 -0
- package/dist/array/group.cjs +37 -0
- package/dist/array/group.d.ts +16 -0
- package/dist/array/group.mjs +34 -0
- package/dist/array/includes.cjs +12 -0
- package/dist/array/includes.d.ts +2 -0
- package/dist/array/includes.mjs +10 -0
- package/dist/array/index.cjs +102 -0
- package/dist/array/index.d.ts +40 -0
- package/dist/array/index.mjs +48 -0
- package/dist/array/indexOf.cjs +23 -0
- package/dist/array/indexOf.d.ts +2 -0
- package/dist/array/indexOf.mjs +21 -0
- package/dist/array/is.cjs +7 -0
- package/dist/array/is.d.ts +1 -0
- package/dist/array/is.mjs +5 -0
- package/dist/array/join.cjs +12 -0
- package/dist/array/join.d.ts +8 -0
- package/dist/array/join.mjs +10 -0
- package/dist/array/lastIndexOf.cjs +23 -0
- package/dist/array/lastIndexOf.d.ts +2 -0
- package/dist/array/lastIndexOf.mjs +21 -0
- package/dist/array/map.cjs +12 -0
- package/dist/array/map.d.ts +6 -0
- package/dist/array/map.mjs +10 -0
- package/dist/array/maxElements.cjs +12 -0
- package/dist/array/maxElements.d.ts +2 -0
- package/dist/array/maxElements.mjs +10 -0
- package/dist/array/maxOf.cjs +17 -0
- package/dist/array/maxOf.d.ts +1 -0
- package/dist/array/maxOf.mjs +15 -0
- package/dist/array/minElements.cjs +12 -0
- package/dist/array/minElements.d.ts +9 -0
- package/dist/array/minElements.mjs +10 -0
- package/dist/array/minOf.cjs +17 -0
- package/dist/array/minOf.d.ts +1 -0
- package/dist/array/minOf.mjs +15 -0
- package/dist/array/pop.cjs +7 -0
- package/dist/array/pop.d.ts +3 -0
- package/dist/array/pop.mjs +5 -0
- package/dist/array/push.cjs +12 -0
- package/dist/array/push.d.ts +2 -0
- package/dist/array/push.mjs +10 -0
- package/dist/array/reduce.cjs +41 -0
- package/dist/array/reduce.d.ts +30 -0
- package/dist/array/reduce.mjs +39 -0
- package/dist/array/reduceRight.cjs +41 -0
- package/dist/array/reduceRight.d.ts +30 -0
- package/dist/array/reduceRight.mjs +39 -0
- package/dist/array/reverse.cjs +7 -0
- package/dist/array/reverse.d.ts +3 -0
- package/dist/array/reverse.mjs +5 -0
- package/dist/array/set.cjs +14 -0
- package/dist/array/set.d.ts +2 -0
- package/dist/array/set.mjs +12 -0
- package/dist/array/shift.cjs +7 -0
- package/dist/array/shift.d.ts +3 -0
- package/dist/array/shift.mjs +5 -0
- package/dist/array/slice.cjs +12 -0
- package/dist/array/slice.d.ts +2 -0
- package/dist/array/slice.mjs +10 -0
- package/dist/array/some.cjs +12 -0
- package/dist/array/some.d.ts +6 -0
- package/dist/array/some.mjs +10 -0
- package/dist/array/sort/default.cjs +12 -0
- package/dist/array/sort/default.d.ts +2 -0
- package/dist/array/sort/default.mjs +10 -0
- package/dist/array/sort/index.d.ts +3 -0
- package/dist/array/sort/number.cjs +14 -0
- package/dist/array/sort/number.d.ts +4 -0
- package/dist/array/sort/number.mjs +12 -0
- package/dist/array/sort/string.cjs +24 -0
- package/dist/array/sort/string.d.ts +4 -0
- package/dist/array/sort/string.mjs +22 -0
- package/dist/array/splice/delete.cjs +14 -0
- package/dist/array/splice/delete.d.ts +2 -0
- package/dist/array/splice/delete.mjs +12 -0
- package/dist/array/splice/index.d.ts +3 -0
- package/dist/array/splice/insert.cjs +14 -0
- package/dist/array/splice/insert.d.ts +2 -0
- package/dist/array/splice/insert.mjs +12 -0
- package/dist/array/splice/replace.cjs +14 -0
- package/dist/array/splice/replace.d.ts +2 -0
- package/dist/array/splice/replace.mjs +12 -0
- package/dist/array/sum.cjs +11 -0
- package/dist/array/sum.d.ts +1 -0
- package/dist/array/sum.mjs +9 -0
- package/dist/array/types/atTuple.d.ts +1 -0
- package/dist/array/types/createTuple.d.ts +2 -0
- package/dist/array/types/excludeTuple.d.ts +29 -0
- package/dist/array/types/extractTuple.d.ts +38 -0
- package/dist/array/types/index.d.ts +8 -0
- package/dist/array/types/mergeUnionTuple.d.ts +7 -0
- package/dist/array/types/popTuple.d.ts +2 -0
- package/dist/array/types/reverseTuple.d.ts +2 -0
- package/dist/array/types/shiftTuple.d.ts +2 -0
- package/dist/array/types/tupleHasSpread.d.ts +2 -0
- package/dist/array/unshift.cjs +12 -0
- package/dist/array/unshift.d.ts +2 -0
- package/dist/array/unshift.mjs +10 -0
- package/dist/common/addWrappedProperties.cjs +13 -0
- package/dist/common/addWrappedProperties.d.ts +4 -0
- package/dist/common/addWrappedProperties.mjs +11 -0
- package/dist/common/asyncInnerPipe.cjs +14 -0
- package/dist/common/asyncInnerPipe.d.ts +15 -0
- package/dist/common/asyncInnerPipe.mjs +12 -0
- package/dist/common/asyncLoop.cjs +19 -0
- package/dist/common/asyncLoop.d.ts +10 -0
- package/dist/common/asyncLoop.mjs +17 -0
- package/dist/common/asyncPipe.cjs +11 -0
- package/dist/common/asyncPipe.d.ts +16 -0
- package/dist/common/asyncPipe.mjs +9 -0
- package/dist/common/asyncRetry.cjs +25 -0
- package/dist/common/asyncRetry.d.ts +8 -0
- package/dist/common/asyncRetry.mjs +22 -0
- package/dist/common/clone.cjs +24 -0
- package/dist/{clone.d.ts → common/clone.d.ts} +1 -1
- package/dist/common/clone.mjs +22 -0
- package/dist/common/enum.cjs +11 -0
- package/dist/common/enum.d.ts +9 -0
- package/dist/common/enum.mjs +9 -0
- package/dist/common/escapeRegExp.cjs +7 -0
- package/dist/common/escapeRegExp.mjs +5 -0
- package/dist/common/externalPromise.cjs +17 -0
- package/dist/common/externalPromise.d.ts +5 -0
- package/dist/common/externalPromise.mjs +15 -0
- package/dist/common/forward.cjs +7 -0
- package/dist/common/forward.d.ts +1 -0
- package/dist/common/forward.mjs +5 -0
- package/dist/common/index.d.ts +29 -0
- package/dist/common/innerPipe.cjs +13 -0
- package/dist/common/innerPipe.d.ts +12 -0
- package/dist/common/innerPipe.mjs +11 -0
- package/dist/common/interpolation.cjs +9 -0
- package/dist/{interpolation.d.ts → common/interpolation.d.ts} +3 -3
- package/dist/common/interpolation.mjs +7 -0
- package/dist/common/kind.cjs +29 -0
- package/dist/common/kind.d.ts +26 -0
- package/dist/common/kind.mjs +26 -0
- package/dist/common/loop.cjs +19 -0
- package/dist/common/loop.d.ts +15 -0
- package/dist/common/loop.mjs +17 -0
- package/dist/common/pipe.cjs +11 -0
- package/dist/common/pipe.d.ts +12 -0
- package/dist/common/pipe.mjs +9 -0
- package/dist/common/promiseObject.cjs +12 -0
- package/dist/common/promiseObject.d.ts +7 -0
- package/dist/common/promiseObject.mjs +10 -0
- package/dist/common/simpleClone.cjs +25 -0
- package/dist/common/simpleClone.d.ts +1 -0
- package/dist/common/simpleClone.mjs +23 -0
- package/dist/common/sleep.cjs +7 -0
- package/dist/common/sleep.d.ts +1 -0
- package/dist/common/sleep.mjs +5 -0
- package/dist/common/stringToBytes.cjs +43 -0
- package/dist/{stringToBytes.d.ts → common/stringToBytes.d.ts} +3 -0
- package/dist/common/stringToBytes.mjs +40 -0
- package/dist/common/stringToMillisecond.cjs +48 -0
- package/dist/common/stringToMillisecond.d.ts +18 -0
- package/dist/common/stringToMillisecond.mjs +45 -0
- package/dist/common/toJson.cjs +34 -0
- package/dist/common/toJson.d.ts +11 -0
- package/dist/common/toJson.mjs +32 -0
- package/dist/common/toString.cjs +7 -0
- package/dist/common/toString.d.ts +1 -0
- package/dist/common/toString.mjs +5 -0
- package/dist/common/toTransform.cjs +34 -0
- package/dist/common/toTransform.d.ts +11 -0
- package/dist/common/toTransform.mjs +32 -0
- package/dist/common/toWrappedValue.cjs +11 -0
- package/dist/common/toWrappedValue.d.ts +4 -0
- package/dist/common/toWrappedValue.mjs +9 -0
- package/dist/common/types/IsExtends.d.ts +1 -0
- package/dist/common/types/adaptor.d.ts +1 -0
- package/dist/common/types/addOne.d.ts +23 -0
- package/dist/common/types/and.d.ts +2 -0
- package/dist/common/types/anyFunction.d.ts +1 -0
- package/dist/common/types/anyObject.d.ts +4 -0
- package/dist/common/types/anyTuple.d.ts +1 -0
- package/dist/common/types/anyValue.d.ts +2 -0
- package/dist/common/types/breakGenericLink.d.ts +1 -0
- package/dist/common/types/deepPartial.d.ts +3 -0
- package/dist/common/types/deepRemoveReadonly.d.ts +3 -0
- package/dist/common/types/escapeAny.d.ts +1 -0
- package/dist/common/types/escapeVoid.d.ts +1 -0
- package/dist/common/types/expectType.d.ts +6 -0
- package/dist/common/types/fixDeepFunctionInfer.d.ts +2 -0
- package/dist/common/types/forcePredicate.d.ts +5 -0
- package/dist/common/types/index.d.ts +37 -0
- package/dist/common/types/isStringLIteral.d.ts +2 -0
- package/dist/common/types/isUnion.d.ts +2 -0
- package/dist/common/types/lastUnionElement.d.ts +2 -0
- package/dist/common/types/maybeArray.d.ts +1 -0
- package/dist/common/types/maybePromise.d.ts +1 -0
- package/dist/common/types/maybeWrapped.d.ts +2 -0
- package/dist/common/types/neverCoalescing.d.ts +2 -0
- package/dist/common/types/not.d.ts +1 -0
- package/dist/common/types/objectEntry.d.ts +2 -0
- package/dist/common/types/objectKey.d.ts +1 -0
- package/dist/common/types/or.d.ts +2 -0
- package/dist/common/types/removeDuplicateInUnion.d.ts +4 -0
- package/dist/common/types/removeReadonly.d.ts +3 -0
- package/dist/common/types/simplifyTopLevel.d.ts +3 -0
- package/dist/common/types/simplifyType.d.ts +3 -0
- package/dist/common/types/simplifyTypeForce.d.ts +3 -0
- package/dist/common/types/toLargeEnsemble.d.ts +6 -0
- package/dist/common/types/unionContain.d.ts +2 -0
- package/dist/common/types/unionToIntersection.d.ts +1 -0
- package/dist/common/types/unionToTuple.d.ts +5 -0
- package/dist/common/unwrap.cjs +11 -0
- package/dist/common/unwrap.d.ts +4 -0
- package/dist/common/unwrap.mjs +9 -0
- package/dist/common/when.cjs +15 -0
- package/dist/common/when.d.ts +5 -0
- package/dist/common/when.mjs +13 -0
- package/dist/common/whenNot.cjs +15 -0
- package/dist/common/whenNot.d.ts +5 -0
- package/dist/common/whenNot.mjs +13 -0
- package/dist/common/wrapValue.cjs +15 -0
- package/dist/common/wrapValue.d.ts +9 -0
- package/dist/common/wrapValue.mjs +11 -0
- package/dist/either/base.cjs +7 -0
- package/dist/either/base.d.ts +1 -0
- package/dist/either/base.mjs +5 -0
- package/dist/either/bool/base.cjs +7 -0
- package/dist/either/bool/base.d.ts +1 -0
- package/dist/either/bool/base.mjs +5 -0
- package/dist/either/bool/create.cjs +16 -0
- package/dist/either/bool/create.d.ts +4 -0
- package/dist/either/bool/create.mjs +14 -0
- package/dist/either/bool/falsy.cjs +44 -0
- package/dist/either/bool/falsy.d.ts +18 -0
- package/dist/either/bool/falsy.mjs +39 -0
- package/dist/either/bool/index.d.ts +4 -0
- package/dist/either/bool/truthy.cjs +44 -0
- package/dist/either/bool/truthy.d.ts +17 -0
- package/dist/either/bool/truthy.mjs +39 -0
- package/dist/either/future/base.cjs +7 -0
- package/dist/either/future/base.d.ts +1 -0
- package/dist/either/future/base.mjs +5 -0
- package/dist/either/future/create.cjs +49 -0
- package/dist/either/future/create.d.ts +25 -0
- package/dist/either/future/create.mjs +46 -0
- package/dist/either/future/error.cjs +13 -0
- package/dist/either/future/error.d.ts +9 -0
- package/dist/either/future/error.mjs +10 -0
- package/dist/either/future/index.d.ts +5 -0
- package/dist/either/future/maybeFutureEither.d.ts +2 -0
- package/dist/either/future/success.cjs +13 -0
- package/dist/either/future/success.d.ts +9 -0
- package/dist/either/future/success.mjs +10 -0
- package/dist/either/hasInformation.cjs +10 -0
- package/dist/either/hasInformation.d.ts +7 -0
- package/dist/either/hasInformation.mjs +8 -0
- package/dist/either/index.cjs +108 -0
- package/dist/either/index.d.ts +10 -0
- package/dist/either/index.mjs +35 -0
- package/dist/either/left/create.cjs +13 -0
- package/dist/either/left/create.d.ts +9 -0
- package/dist/either/left/create.mjs +10 -0
- package/dist/either/left/error.cjs +12 -0
- package/dist/either/left/error.d.ts +8 -0
- package/dist/either/left/error.mjs +9 -0
- package/dist/either/left/fail.cjs +12 -0
- package/dist/either/left/fail.d.ts +8 -0
- package/dist/either/left/fail.mjs +9 -0
- package/dist/either/left/index.d.ts +5 -0
- package/dist/either/left/is.cjs +13 -0
- package/dist/either/left/is.d.ts +2 -0
- package/dist/either/left/is.mjs +11 -0
- package/dist/either/left/when.cjs +18 -0
- package/dist/either/left/when.d.ts +4 -0
- package/dist/either/left/when.mjs +16 -0
- package/dist/either/nullable/base.cjs +7 -0
- package/dist/either/nullable/base.d.ts +1 -0
- package/dist/either/nullable/base.mjs +5 -0
- package/dist/either/nullable/create.cjs +12 -0
- package/dist/either/nullable/create.d.ts +3 -0
- package/dist/either/nullable/create.mjs +10 -0
- package/dist/either/nullable/empty.cjs +44 -0
- package/dist/either/nullable/empty.d.ts +17 -0
- package/dist/either/nullable/empty.mjs +39 -0
- package/dist/either/nullable/filled.cjs +44 -0
- package/dist/either/nullable/filled.d.ts +17 -0
- package/dist/either/nullable/filled.mjs +39 -0
- package/dist/either/nullable/index.d.ts +4 -0
- package/dist/either/nullish/base.cjs +7 -0
- package/dist/either/nullish/base.d.ts +1 -0
- package/dist/either/nullish/base.mjs +5 -0
- package/dist/either/nullish/create.cjs +12 -0
- package/dist/either/nullish/create.d.ts +3 -0
- package/dist/either/nullish/create.mjs +10 -0
- package/dist/either/nullish/empty.cjs +44 -0
- package/dist/either/nullish/empty.d.ts +18 -0
- package/dist/either/nullish/empty.mjs +39 -0
- package/dist/either/nullish/filled.cjs +44 -0
- package/dist/either/nullish/filled.d.ts +17 -0
- package/dist/either/nullish/filled.mjs +39 -0
- package/dist/either/nullish/index.d.ts +4 -0
- package/dist/either/optional/base.cjs +7 -0
- package/dist/either/optional/base.d.ts +1 -0
- package/dist/either/optional/base.mjs +5 -0
- package/dist/either/optional/create.cjs +12 -0
- package/dist/either/optional/create.d.ts +3 -0
- package/dist/either/optional/create.mjs +10 -0
- package/dist/either/optional/empty.cjs +43 -0
- package/dist/either/optional/empty.d.ts +17 -0
- package/dist/either/optional/empty.mjs +38 -0
- package/dist/either/optional/filled.cjs +44 -0
- package/dist/either/optional/filled.d.ts +17 -0
- package/dist/either/optional/filled.mjs +39 -0
- package/dist/either/optional/index.d.ts +4 -0
- package/dist/either/right/asyncPipe.cjs +28 -0
- package/dist/either/right/asyncPipe.d.ts +22 -0
- package/dist/either/right/asyncPipe.mjs +26 -0
- package/dist/either/right/create.cjs +13 -0
- package/dist/either/right/create.d.ts +9 -0
- package/dist/either/right/create.mjs +10 -0
- package/dist/either/right/index.d.ts +7 -0
- package/dist/either/right/is.cjs +13 -0
- package/dist/either/right/is.d.ts +2 -0
- package/dist/either/right/is.mjs +11 -0
- package/dist/either/right/ok.cjs +12 -0
- package/dist/either/right/ok.d.ts +8 -0
- package/dist/either/right/ok.mjs +9 -0
- package/dist/either/right/pipe.cjs +22 -0
- package/dist/either/right/pipe.d.ts +19 -0
- package/dist/either/right/pipe.mjs +20 -0
- package/dist/either/right/success.cjs +12 -0
- package/dist/either/right/success.d.ts +8 -0
- package/dist/either/right/success.mjs +9 -0
- package/dist/either/right/when.cjs +18 -0
- package/dist/either/right/when.d.ts +4 -0
- package/dist/either/right/when.mjs +16 -0
- package/dist/either/whenHasInformation.cjs +24 -0
- package/dist/either/whenHasInformation.d.ts +8 -0
- package/dist/either/whenHasInformation.mjs +22 -0
- package/dist/generator/asyncFilter.cjs +20 -0
- package/dist/generator/asyncFilter.d.ts +8 -0
- package/dist/generator/asyncFilter.mjs +18 -0
- package/dist/generator/asyncLoop.cjs +26 -0
- package/dist/generator/asyncLoop.d.ts +10 -0
- package/dist/generator/asyncLoop.mjs +24 -0
- package/dist/generator/asyncMap.cjs +18 -0
- package/dist/generator/asyncMap.d.ts +6 -0
- package/dist/generator/asyncMap.mjs +16 -0
- package/dist/generator/asyncReduce.cjs +44 -0
- package/dist/generator/asyncReduce.d.ts +30 -0
- package/dist/generator/asyncReduce.mjs +42 -0
- package/dist/generator/execute.cjs +17 -0
- package/dist/generator/execute.d.ts +2 -0
- package/dist/generator/execute.mjs +15 -0
- package/dist/generator/filter.cjs +20 -0
- package/dist/generator/filter.d.ts +8 -0
- package/dist/generator/filter.mjs +18 -0
- package/dist/generator/index.cjs +23 -0
- package/dist/generator/index.d.ts +9 -0
- package/dist/generator/index.mjs +9 -0
- package/dist/generator/loop.cjs +26 -0
- package/dist/generator/loop.d.ts +15 -0
- package/dist/generator/loop.mjs +24 -0
- package/dist/generator/map.cjs +18 -0
- package/dist/generator/map.d.ts +6 -0
- package/dist/generator/map.mjs +16 -0
- package/dist/generator/reduce.cjs +42 -0
- package/dist/generator/reduce.d.ts +30 -0
- package/dist/generator/reduce.mjs +40 -0
- package/dist/index.cjs +83 -133
- package/dist/index.d.ts +15 -26
- package/dist/index.mjs +49 -124
- package/dist/number/abs.cjs +7 -0
- package/dist/number/abs.d.ts +1 -0
- package/dist/number/abs.mjs +5 -0
- package/dist/number/acos.cjs +7 -0
- package/dist/number/acos.d.ts +1 -0
- package/dist/number/acos.mjs +5 -0
- package/dist/number/add.cjs +12 -0
- package/dist/number/add.d.ts +2 -0
- package/dist/number/add.mjs +10 -0
- package/dist/number/asin.cjs +7 -0
- package/dist/number/asin.d.ts +1 -0
- package/dist/number/asin.mjs +5 -0
- package/dist/number/atan.cjs +7 -0
- package/dist/number/atan.d.ts +1 -0
- package/dist/number/atan.mjs +5 -0
- package/dist/number/atan2.cjs +12 -0
- package/dist/number/atan2.d.ts +2 -0
- package/dist/number/atan2.mjs +10 -0
- package/dist/number/ceil.cjs +7 -0
- package/dist/number/ceil.d.ts +1 -0
- package/dist/number/ceil.mjs +5 -0
- package/dist/number/clamp.cjs +14 -0
- package/dist/number/clamp.d.ts +2 -0
- package/dist/number/clamp.mjs +12 -0
- package/dist/number/cos.cjs +7 -0
- package/dist/number/cos.d.ts +1 -0
- package/dist/number/cos.mjs +5 -0
- package/dist/number/divide.cjs +12 -0
- package/dist/number/divide.d.ts +2 -0
- package/dist/number/divide.mjs +10 -0
- package/dist/number/floor.cjs +7 -0
- package/dist/number/floor.d.ts +1 -0
- package/dist/number/floor.mjs +5 -0
- package/dist/number/index.cjs +49 -0
- package/dist/number/index.d.ts +22 -0
- package/dist/number/index.mjs +22 -0
- package/dist/number/max.cjs +12 -0
- package/dist/number/max.d.ts +2 -0
- package/dist/number/max.mjs +10 -0
- package/dist/number/min.cjs +12 -0
- package/dist/number/min.d.ts +2 -0
- package/dist/number/min.mjs +10 -0
- package/dist/number/modulo.cjs +12 -0
- package/dist/number/modulo.d.ts +2 -0
- package/dist/number/modulo.mjs +10 -0
- package/dist/number/multiply.cjs +12 -0
- package/dist/number/multiply.d.ts +2 -0
- package/dist/number/multiply.mjs +10 -0
- package/dist/number/negate.cjs +7 -0
- package/dist/number/negate.d.ts +1 -0
- package/dist/number/negate.mjs +5 -0
- package/dist/number/power.cjs +12 -0
- package/dist/number/power.d.ts +2 -0
- package/dist/number/power.mjs +10 -0
- package/dist/number/round.cjs +7 -0
- package/dist/number/round.d.ts +1 -0
- package/dist/number/round.mjs +5 -0
- package/dist/number/sin.cjs +7 -0
- package/dist/number/sin.d.ts +1 -0
- package/dist/number/sin.mjs +5 -0
- package/dist/number/subtract.cjs +12 -0
- package/dist/number/subtract.d.ts +2 -0
- package/dist/number/subtract.mjs +10 -0
- package/dist/number/tan.cjs +7 -0
- package/dist/number/tan.d.ts +1 -0
- package/dist/number/tan.mjs +5 -0
- package/dist/number/trunc.cjs +7 -0
- package/dist/number/trunc.d.ts +1 -0
- package/dist/number/trunc.mjs +5 -0
- package/dist/object/assign.cjs +15 -0
- package/dist/object/assign.d.ts +4 -0
- package/dist/object/assign.mjs +13 -0
- package/dist/object/entries.cjs +10 -0
- package/dist/object/entries.d.ts +7 -0
- package/dist/object/entries.mjs +8 -0
- package/dist/object/fromEntries.cjs +7 -0
- package/dist/object/fromEntries.d.ts +6 -0
- package/dist/object/fromEntries.mjs +5 -0
- package/dist/object/getProperty.cjs +12 -0
- package/dist/object/getProperty.d.ts +8 -0
- package/dist/object/getProperty.mjs +10 -0
- package/dist/object/hasKeys.cjs +18 -0
- package/dist/object/hasKeys.d.ts +3 -0
- package/dist/object/hasKeys.mjs +16 -0
- package/dist/object/index.cjs +31 -0
- package/dist/object/index.d.ts +14 -0
- package/dist/object/index.mjs +13 -0
- package/dist/object/keys.cjs +7 -0
- package/dist/object/keys.d.ts +1 -0
- package/dist/object/keys.mjs +5 -0
- package/dist/object/omit.cjs +24 -0
- package/dist/object/omit.d.ts +8 -0
- package/dist/object/omit.mjs +22 -0
- package/dist/object/override.cjs +18 -0
- package/dist/object/override.d.ts +2 -0
- package/dist/object/override.mjs +16 -0
- package/dist/object/pick.cjs +24 -0
- package/dist/object/pick.d.ts +7 -0
- package/dist/object/pick.mjs +22 -0
- package/dist/object/to.cjs +16 -0
- package/dist/object/to.d.ts +10 -0
- package/dist/object/to.mjs +14 -0
- package/dist/object/transformProperties.cjs +18 -0
- package/dist/object/transformProperties.d.ts +10 -0
- package/dist/object/transformProperties.mjs +16 -0
- package/dist/object/transformProperty.cjs +15 -0
- package/dist/object/transformProperty.d.ts +7 -0
- package/dist/object/transformProperty.mjs +13 -0
- package/dist/object/types/UnionObjectToIntersection.d.ts +2 -0
- package/dist/object/types/assignObjects.d.ts +2 -0
- package/dist/object/types/flatObject.d.ts +25 -0
- package/dist/object/types/getPropsWithValue.d.ts +4 -0
- package/dist/object/types/index.d.ts +6 -0
- package/dist/object/types/partialKeys.d.ts +2 -0
- package/dist/object/types/requiredKeys.d.ts +2 -0
- package/dist/object/values.cjs +7 -0
- package/dist/object/values.d.ts +4 -0
- package/dist/object/values.mjs +5 -0
- package/dist/pattern/exhaustive.cjs +9 -0
- package/dist/pattern/exhaustive.d.ts +3 -0
- package/dist/pattern/exhaustive.mjs +7 -0
- package/dist/pattern/index.cjs +22 -0
- package/dist/pattern/index.d.ts +8 -0
- package/dist/pattern/index.mjs +8 -0
- package/dist/pattern/isMatch.cjs +44 -0
- package/dist/pattern/isMatch.d.ts +2 -0
- package/dist/pattern/isMatch.mjs +42 -0
- package/dist/pattern/match.cjs +18 -0
- package/dist/pattern/match.d.ts +6 -0
- package/dist/pattern/match.mjs +16 -0
- package/dist/pattern/matchPrimitive.cjs +17 -0
- package/dist/pattern/matchPrimitive.d.ts +3 -0
- package/dist/pattern/matchPrimitive.mjs +15 -0
- package/dist/pattern/otherwise.cjs +17 -0
- package/dist/pattern/otherwise.d.ts +4 -0
- package/dist/pattern/otherwise.mjs +15 -0
- package/dist/pattern/result.cjs +13 -0
- package/dist/pattern/result.d.ts +7 -0
- package/dist/pattern/result.mjs +10 -0
- package/dist/pattern/types/complexMatchedValue/array.d.ts +40 -0
- package/dist/pattern/types/complexMatchedValue/index.d.ts +6 -0
- package/dist/pattern/types/complexMatchedValue/maybeAll.d.ts +3 -0
- package/dist/pattern/types/complexMatchedValue/object.d.ts +11 -0
- package/dist/pattern/types/complexMatchedValue/primitive.d.ts +9 -0
- package/dist/pattern/types/complexUnMatchedValue/array.d.ts +27 -0
- package/dist/pattern/types/complexUnMatchedValue/getIncompleteUnion.d.ts +66 -0
- package/dist/pattern/types/complexUnMatchedValue/index.d.ts +9 -0
- package/dist/pattern/types/complexUnMatchedValue/maybeAll.d.ts +3 -0
- package/dist/pattern/types/complexUnMatchedValue/object.d.ts +17 -0
- package/dist/pattern/types/complexUnMatchedValue/primitive.d.ts +8 -0
- package/dist/pattern/types/complexUnMatchedValue/unionObject.d.ts +3 -0
- package/dist/pattern/types/index.d.ts +3 -0
- package/dist/pattern/types/pattern.cjs +5 -0
- package/dist/pattern/types/pattern.d.ts +37 -0
- package/dist/pattern/types/pattern.mjs +3 -0
- package/dist/pattern/union.cjs +20 -0
- package/dist/pattern/union.d.ts +6 -0
- package/dist/pattern/union.mjs +18 -0
- package/dist/string/at/default.cjs +12 -0
- package/dist/string/at/default.d.ts +2 -0
- package/dist/string/at/default.mjs +10 -0
- package/dist/string/at/first.cjs +7 -0
- package/dist/string/at/first.d.ts +2 -0
- package/dist/string/at/first.mjs +5 -0
- package/dist/string/at/index.d.ts +3 -0
- package/dist/string/at/last.cjs +9 -0
- package/dist/string/at/last.d.ts +2 -0
- package/dist/string/at/last.mjs +7 -0
- package/dist/string/capitalize.cjs +7 -0
- package/dist/string/capitalize.d.ts +1 -0
- package/dist/string/capitalize.mjs +5 -0
- package/dist/string/charAt.cjs +12 -0
- package/dist/string/charAt.d.ts +2 -0
- package/dist/string/charAt.mjs +10 -0
- package/dist/string/concat.cjs +12 -0
- package/dist/string/concat.d.ts +2 -0
- package/dist/string/concat.mjs +10 -0
- package/dist/string/endsWith.cjs +12 -0
- package/dist/string/endsWith.d.ts +2 -0
- package/dist/string/endsWith.mjs +10 -0
- package/dist/string/includes.cjs +12 -0
- package/dist/string/includes.d.ts +2 -0
- package/dist/string/includes.mjs +10 -0
- package/dist/string/index.cjs +67 -0
- package/dist/string/index.d.ts +28 -0
- package/dist/string/index.mjs +31 -0
- package/dist/string/indexOf.cjs +13 -0
- package/dist/string/indexOf.d.ts +2 -0
- package/dist/string/indexOf.mjs +11 -0
- package/dist/string/isKeyof.cjs +12 -0
- package/dist/string/isKeyof.d.ts +3 -0
- package/dist/string/isKeyof.mjs +10 -0
- package/dist/string/lastIndexOf.cjs +13 -0
- package/dist/string/lastIndexOf.d.ts +2 -0
- package/dist/string/lastIndexOf.mjs +11 -0
- package/dist/string/match.cjs +13 -0
- package/dist/string/match.d.ts +2 -0
- package/dist/string/match.mjs +11 -0
- package/dist/string/matchAll.cjs +12 -0
- package/dist/string/matchAll.d.ts +2 -0
- package/dist/string/matchAll.mjs +10 -0
- package/dist/string/normalize.cjs +12 -0
- package/dist/string/normalize.d.ts +3 -0
- package/dist/string/normalize.mjs +10 -0
- package/dist/string/padEnd.cjs +12 -0
- package/dist/string/padEnd.d.ts +2 -0
- package/dist/string/padEnd.mjs +10 -0
- package/dist/string/padStart.cjs +12 -0
- package/dist/string/padStart.d.ts +2 -0
- package/dist/string/padStart.mjs +10 -0
- package/dist/string/repeat.cjs +15 -0
- package/dist/string/repeat.d.ts +2 -0
- package/dist/string/repeat.mjs +13 -0
- package/dist/string/replace.cjs +12 -0
- package/dist/string/replace.d.ts +2 -0
- package/dist/string/replace.mjs +10 -0
- package/dist/string/replaceAll.cjs +12 -0
- package/dist/string/replaceAll.d.ts +2 -0
- package/dist/string/replaceAll.mjs +10 -0
- package/dist/string/search.cjs +13 -0
- package/dist/string/search.d.ts +2 -0
- package/dist/string/search.mjs +11 -0
- package/dist/string/slice.cjs +12 -0
- package/dist/string/slice.d.ts +2 -0
- package/dist/string/slice.mjs +10 -0
- package/dist/string/split.cjs +12 -0
- package/dist/string/split.d.ts +7 -0
- package/dist/string/split.mjs +10 -0
- package/dist/string/startsWith.cjs +12 -0
- package/dist/string/startsWith.d.ts +2 -0
- package/dist/string/startsWith.mjs +10 -0
- package/dist/string/substring.cjs +12 -0
- package/dist/string/substring.d.ts +2 -0
- package/dist/string/substring.mjs +10 -0
- package/dist/string/test.cjs +12 -0
- package/dist/string/test.d.ts +2 -0
- package/dist/string/test.mjs +10 -0
- package/dist/string/toLowerCase.cjs +7 -0
- package/dist/string/toLowerCase.d.ts +1 -0
- package/dist/string/toLowerCase.mjs +5 -0
- package/dist/string/toUpperCase.cjs +7 -0
- package/dist/string/toUpperCase.d.ts +1 -0
- package/dist/string/toUpperCase.mjs +5 -0
- package/dist/string/trim/default.cjs +7 -0
- package/dist/string/trim/default.d.ts +1 -0
- package/dist/string/trim/default.mjs +5 -0
- package/dist/string/trim/end.cjs +7 -0
- package/dist/string/trim/end.d.ts +1 -0
- package/dist/string/trim/end.mjs +5 -0
- package/dist/string/trim/index.d.ts +3 -0
- package/dist/string/trim/start.cjs +7 -0
- package/dist/string/trim/start.d.ts +1 -0
- package/dist/string/trim/start.mjs +5 -0
- package/dist/string/types/endsWith.d.ts +1 -0
- package/dist/string/types/first.d.ts +2 -0
- package/dist/string/types/includes.d.ts +1 -0
- package/dist/string/types/index.d.ts +7 -0
- package/dist/string/types/last.d.ts +2 -0
- package/dist/string/types/normalizeForm.d.ts +1 -0
- package/dist/string/types/split.d.ts +6 -0
- package/dist/string/types/startsWith.d.ts +1 -0
- package/dist/string/uncapitalize.cjs +7 -0
- package/dist/string/uncapitalize.d.ts +1 -0
- package/dist/string/uncapitalize.mjs +5 -0
- package/package.json +21 -27
- package/dist/addThis.d.ts +0 -2
- package/dist/entryUseMapper.d.ts +0 -6
- package/dist/expectType.d.ts +0 -6
- package/dist/getLastOfUnion.d.ts +0 -2
- package/dist/getPropsWithTrueValue.d.ts +0 -3
- package/dist/getTypedEntries.d.ts +0 -6
- package/dist/getTypedKeys.d.ts +0 -1
- package/dist/hasKey.d.ts +0 -2
- package/dist/incremente.d.ts +0 -33
- package/dist/mergeObjects.d.ts +0 -4
- package/dist/overrideInterface.d.ts +0 -1
- package/dist/partialKeys.d.ts +0 -2
- package/dist/requiredKeys.d.ts +0 -2
- package/dist/simpleClone.d.ts +0 -1
- package/dist/simplifyType.d.ts +0 -9
- package/dist/sleep.d.ts +0 -1
- package/dist/types.d.ts +0 -4
- package/dist/unPartial.d.ts +0 -10
- package/dist/unionToIntersection.d.ts +0 -1
- package/dist/unionToTuple.d.ts +0 -4
- package/dist/uniqueGeneric.d.ts +0 -5
- /package/dist/{escapeRegExp.d.ts → common/escapeRegExp.d.ts} +0 -0
- /package/dist/{isEqual.d.ts → common/types/isEqual.d.ts} +0 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { type AnyTuple, type Adaptor, type IsEqual, type Or } from "../../../common";
|
|
2
|
+
import { type PatternValueMaybeAll, type EligiblePrimitiveMatch } from "../pattern";
|
|
3
|
+
import { type FlatObject } from "../../../object";
|
|
4
|
+
import { type ExcludeTuple } from "../../../array/types/excludeTuple";
|
|
5
|
+
export type GetIncompleteUnion<GenericInput extends unknown, GenericPatternValue extends unknown> = (([
|
|
6
|
+
Extract<GenericInput, EligiblePrimitiveMatch>,
|
|
7
|
+
Extract<GenericPatternValue, EligiblePrimitiveMatch>
|
|
8
|
+
] extends [
|
|
9
|
+
infer InferredInput,
|
|
10
|
+
infer InferredPatternValue
|
|
11
|
+
] ? IsEqual<InferredPatternValue, never> extends true ? never : IsEqual<Exclude<InferredInput, InferredPatternValue>, never> extends true ? {} : true : never) | ([
|
|
12
|
+
Exclude<Extract<GenericInput, object>, GenericPatternValue | readonly any[]>,
|
|
13
|
+
Exclude<Extract<GenericPatternValue, object>, readonly any[]>
|
|
14
|
+
] extends [
|
|
15
|
+
infer InferredInput,
|
|
16
|
+
infer InferredPatternValue
|
|
17
|
+
] ? IsEqual<InferredPatternValue, never> extends true ? never : IsEqual<InferredInput, Exclude<Extract<GenericInput, object>, readonly any[]>> extends true ? FlatObject<{
|
|
18
|
+
[Prop in (InferredPatternValue extends any ? keyof InferredPatternValue : never)]: GetIncompleteUnion<InferredInput[Adaptor<Prop, keyof InferredInput>], Extract<InferredPatternValue, {
|
|
19
|
+
[SubProp in Prop]: any;
|
|
20
|
+
}>[Prop]>;
|
|
21
|
+
}> : IsEqual<InferredInput, never> extends true ? {} : {
|
|
22
|
+
"@duplojs/utils/{object}": true;
|
|
23
|
+
} : never) | ([
|
|
24
|
+
ExcludeTuple<Extract<GenericInput, AnyTuple>, Extract<GenericPatternValue, readonly any[]>>,
|
|
25
|
+
Extract<GenericPatternValue, AnyTuple | readonly []>
|
|
26
|
+
] extends [
|
|
27
|
+
infer InferredInput,
|
|
28
|
+
infer InferredPatternValue
|
|
29
|
+
] ? IsEqual<InferredPatternValue, never> extends true ? never : IsEqual<InferredInput, Extract<GenericInput, AnyTuple>> extends true ? [
|
|
30
|
+
InferredInput,
|
|
31
|
+
InferredPatternValue
|
|
32
|
+
] extends [
|
|
33
|
+
readonly [infer InferredInputFirst, ...infer InferredInputRest],
|
|
34
|
+
readonly [infer InferredPatternValueFirst, ...infer InferredPatternValueRest]
|
|
35
|
+
] ? GetIncompleteUnion<InferredInputFirst, InferredPatternValueFirst> extends infer InferredResultFirst ? FlatObject<{
|
|
36
|
+
"@duplojs/utils/[tuple.first": InferredResultFirst;
|
|
37
|
+
"@duplojs/utils/tuple.rest]": GetIncompleteUnion<InferredInputRest, InferredPatternValueRest>;
|
|
38
|
+
}> : never : never : IsEqual<InferredInput, never> extends true ? {} : {
|
|
39
|
+
"@duplojs/utils/[tuple]": true;
|
|
40
|
+
} : never) | ([
|
|
41
|
+
Exclude<Extract<GenericInput, readonly any[]>, AnyTuple>,
|
|
42
|
+
Extract<GenericPatternValue, AnyTuple>
|
|
43
|
+
] extends [
|
|
44
|
+
infer InferredInput extends readonly any[],
|
|
45
|
+
infer InferredPatternValue
|
|
46
|
+
] ? Or<[
|
|
47
|
+
IsEqual<InferredPatternValue, never>,
|
|
48
|
+
IsEqual<InferredInput, never>
|
|
49
|
+
]> extends true ? never : InferredPatternValue extends readonly [
|
|
50
|
+
infer InferredPatternValueFirst,
|
|
51
|
+
...infer InferredPatternValueRest
|
|
52
|
+
] ? GetIncompleteUnion<InferredInput[number], InferredPatternValueFirst> extends infer InferredResultFirst ? FlatObject<{
|
|
53
|
+
"@duplojs/utils/[array.first": InferredResultFirst;
|
|
54
|
+
"@duplojs/utils/array.rest]": IsEqual<InferredResultFirst, {}> extends true ? GetIncompleteUnion<InferredInput, InferredPatternValueRest> : never;
|
|
55
|
+
}> : {} : {} : never) | (Extract<GenericPatternValue, PatternValueMaybeAll> extends infer InferredPatternValue ? IsEqual<InferredPatternValue, never> extends true ? never : {
|
|
56
|
+
"@duplojs/utils/{maybeAll}": true;
|
|
57
|
+
} : never) | ([
|
|
58
|
+
Extract<GenericInput, readonly any[]>,
|
|
59
|
+
Extract<GenericPatternValue, readonly []>
|
|
60
|
+
] extends [
|
|
61
|
+
infer InferredInput extends readonly any[],
|
|
62
|
+
infer InferredPatternValue
|
|
63
|
+
] ? Or<[
|
|
64
|
+
IsEqual<InferredPatternValue, never>,
|
|
65
|
+
IsEqual<InferredInput, never>
|
|
66
|
+
]> extends true ? never : {} : never));
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type UnionToTuple } from "../../../common";
|
|
2
|
+
import { type GetIncompleteUnion } from "./getIncompleteUnion";
|
|
3
|
+
import { type ComplexUnMatchedPrimitive } from "./primitive";
|
|
4
|
+
import { type ComplexUnMatchedObject } from "./object";
|
|
5
|
+
import { type ComplexUnMatchedUnionObject } from "./unionObject";
|
|
6
|
+
import { type ComplexUnMatchedArray } from "./array";
|
|
7
|
+
import { type PatternValueMaybeAll } from "../pattern";
|
|
8
|
+
import { type ComplexUnMatchedMaybeAll } from "./maybeAll";
|
|
9
|
+
export type ComplexUnMatchedValue<GenericInput extends unknown, GenericPatternValue extends unknown> = UnionToTuple<keyof GetIncompleteUnion<GenericInput, GenericPatternValue>>["length"] extends 0 | 1 ? Exclude<GenericPatternValue, PatternValueMaybeAll> extends infer InferredPatternValue ? (ComplexUnMatchedPrimitive<GenericInput, InferredPatternValue> | ComplexUnMatchedObject<GenericInput, InferredPatternValue> | ComplexUnMatchedArray<GenericInput, InferredPatternValue> | ComplexUnMatchedUnionObject<GenericInput, InferredPatternValue> | ComplexUnMatchedMaybeAll<GenericInput, GenericPatternValue>) : never : GenericInput;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { type Unwrap, type IsEqual } from "../../../common";
|
|
2
|
+
import { type PatternValueMaybeAll } from "../pattern";
|
|
3
|
+
export type ComplexUnMatchedMaybeAll<GenericInput extends unknown, GenericPatternValue extends unknown> = Extract<GenericPatternValue, PatternValueMaybeAll> extends infer InferredPatternValue ? IsEqual<InferredPatternValue, never> extends true ? never : Extract<Unwrap<InferredPatternValue>, GenericInput> : never;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type Adaptor, type SimplifyTopLevel, type IsEqual, type IsUnion, type NeverCoalescing, type RemoveReadonly } from "../../../common";
|
|
2
|
+
import { type ComplexUnMatchedValue } from ".";
|
|
3
|
+
export type ComplexUnMatchedObject<GenericInput extends unknown, GenericPatternValue extends unknown> = ([
|
|
4
|
+
Exclude<Extract<GenericInput, object>, readonly any[]>,
|
|
5
|
+
Exclude<Extract<GenericPatternValue, object>, readonly any[]>
|
|
6
|
+
] extends [
|
|
7
|
+
infer InferredInput,
|
|
8
|
+
infer InferredPatternValue
|
|
9
|
+
] ? IsEqual<InferredPatternValue, never> extends true ? InferredInput : IsUnion<InferredPatternValue> extends true ? never : InferredInput extends any ? InferredInput extends InferredPatternValue ? never : IsEqual<Extract<keyof InferredInput, keyof InferredPatternValue>, keyof InferredPatternValue> extends false ? InferredInput : (IsEqual<{
|
|
10
|
+
[Prop in keyof InferredPatternValue]: ComplexUnMatchedValue<InferredInput[Adaptor<Prop, keyof InferredInput>], InferredPatternValue[Prop]>;
|
|
11
|
+
} extends infer InferredObjectArray extends object ? InferredObjectArray[keyof InferredObjectArray] : never, never> extends true ? never : ({
|
|
12
|
+
-readonly [Prop in keyof InferredPatternValue]: NeverCoalescing<Extract<ComplexUnMatchedValue<InferredInput[Adaptor<Prop, keyof InferredInput>], InferredPatternValue[Prop]>, any>, InferredInput[Adaptor<Prop, keyof InferredInput>]>;
|
|
13
|
+
} & Omit<InferredInput, keyof InferredPatternValue>) extends infer InferredObject extends object ? ({
|
|
14
|
+
[Prop in keyof InferredObject as undefined extends InferredObject[Prop] ? Prop : never]?: InferredObject[Prop];
|
|
15
|
+
} & {
|
|
16
|
+
[Prop in keyof InferredObject as undefined extends InferredObject[Prop] ? never : Prop]: InferredObject[Prop];
|
|
17
|
+
}) extends infer InferredResult ? IsEqual<RemoveReadonly<InferredResult>, RemoveReadonly<InferredInput>> extends true ? InferredInput : SimplifyTopLevel<InferredResult> : never : never) : never : never);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type EligiblePrimitiveMatch } from "../pattern";
|
|
2
|
+
export type ComplexUnMatchedPrimitive<GenericInput extends unknown, GenericPatternValue extends unknown> = ([
|
|
3
|
+
Extract<GenericInput, EligiblePrimitiveMatch>,
|
|
4
|
+
Extract<GenericPatternValue, EligiblePrimitiveMatch>
|
|
5
|
+
] extends [
|
|
6
|
+
infer inferredInput,
|
|
7
|
+
infer inferredPatternValue
|
|
8
|
+
] ? Exclude<inferredInput, inferredPatternValue> : never);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { type RemoveDuplicateInUnion, type IsUnion } from "../../../common";
|
|
2
|
+
import { type ComplexUnMatchedValue } from ".";
|
|
3
|
+
export type ComplexUnMatchedUnionObject<GenericInput extends unknown, GenericPatternValue extends unknown> = (IsUnion<Extract<GenericPatternValue, object>> extends false ? never : Extract<GenericPatternValue, any> extends infer InferredPatternValue ? (InferredPatternValue extends object ? ComplexUnMatchedValue<GenericInput, InferredPatternValue> extends infer InferredResult ? ComplexUnMatchedValue<InferredResult, Exclude<GenericPatternValue, InferredPatternValue>> : never : never) extends infer InferredResult ? RemoveDuplicateInUnion<InferredResult> : never : never);
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { type MergeUnionTuple } from "../../array/types/mergeUnionTuple";
|
|
2
|
+
import { type AnyTuple, type Adaptor, type IsEqual, type ObjectKey, type WrappedValue } from "../../common";
|
|
3
|
+
export type EligiblePrimitiveMatch = string | number | bigint | boolean | undefined | null;
|
|
4
|
+
type PrimitivePattern<GenericInput extends unknown> = GenericInput extends EligiblePrimitiveMatch ? GenericInput : never;
|
|
5
|
+
type ObjectPattern<GenericInput extends unknown> = Exclude<GenericInput, readonly any[]> extends infer InferredInput ? [
|
|
6
|
+
Extract<InferredInput, object>,
|
|
7
|
+
InferredInput extends object ? keyof InferredInput : never
|
|
8
|
+
] extends [
|
|
9
|
+
infer InferredInputObject extends object,
|
|
10
|
+
infer InferredInputKeyofObject extends ObjectKey
|
|
11
|
+
] ? {
|
|
12
|
+
readonly [Prop in InferredInputKeyofObject]?: Extract<InferredInputObject, Partial<Record<Prop, any>>> extends infer InferredValue extends object ? Prop extends keyof InferredValue ? Pattern<InferredValue[Prop]> : never : never;
|
|
13
|
+
} extends infer InferredResult ? IsEqual<InferredResult, {}> extends true ? never : InferredResult : never : never : never;
|
|
14
|
+
type ArrayPattern<GenericInput extends unknown> = ((Extract<GenericInput, AnyTuple> extends infer InferredInput extends AnyTuple ? IsEqual<InferredInput, never> extends true ? never : MergeUnionTuple<InferredInput> extends readonly [infer InferredFirst, ...infer InferredRest] ? (readonly [] | readonly [Pattern<InferredFirst>] | (InferredRest extends readonly [] ? never : readonly [
|
|
15
|
+
Pattern<InferredFirst>,
|
|
16
|
+
...Adaptor<Pattern<InferredRest>, readonly any[]>
|
|
17
|
+
])) : never : never) | (Exclude<Extract<GenericInput, readonly any[]>, AnyTuple> extends infer InferredInput extends readonly any[] ? IsEqual<InferredInput, never> extends true ? never : readonly Pattern<InferredInput[number]>[] : never));
|
|
18
|
+
type PredicatePattern<GenericInput extends unknown = any> = (input: GenericInput) => boolean;
|
|
19
|
+
declare const SymbolToolPattern: unique symbol;
|
|
20
|
+
type SymbolToolPattern = typeof SymbolToolPattern;
|
|
21
|
+
export declare const SymbolToolPatternFunctionLabel = "SymbolToolPatternFunctionLabel";
|
|
22
|
+
declare const SymbolToolPatternFunction: unique symbol;
|
|
23
|
+
type SymbolToolPatternFunction = typeof SymbolToolPatternFunction;
|
|
24
|
+
export interface ToolPattern<GenericInput extends unknown = any, GenericPattern extends unknown = any> {
|
|
25
|
+
[SymbolToolPatternFunction](input: GenericInput): boolean;
|
|
26
|
+
[SymbolToolPattern]: GenericPattern;
|
|
27
|
+
}
|
|
28
|
+
export type Pattern<GenericInput extends unknown = any> = (PredicatePattern<GenericInput> | ToolPattern<GenericInput> | PrimitivePattern<GenericInput> | ObjectPattern<GenericInput> | ArrayPattern<GenericInput>);
|
|
29
|
+
declare const SymbolPatternValueMaybeAll: unique symbol;
|
|
30
|
+
type SymbolPatternValueMaybeAll = typeof SymbolPatternValueMaybeAll;
|
|
31
|
+
export interface PatternValueMaybeAll<GenericValue extends unknown = any> extends WrappedValue<GenericValue> {
|
|
32
|
+
[SymbolPatternValueMaybeAll]: unknown;
|
|
33
|
+
}
|
|
34
|
+
export type PatternValue<GenericPattern extends Pattern> = GenericPattern extends EligiblePrimitiveMatch ? GenericPattern : GenericPattern extends (input: any) => input is infer InferredPredicate ? InferredPredicate : GenericPattern extends (input: infer InferredInput) => boolean ? PatternValueMaybeAll<InferredInput> : GenericPattern extends ToolPattern<any, infer InferredPattern> ? PatternValue<InferredPattern> : GenericPattern extends readonly [infer inferredFirst, ...infer inferredRest] ? IsEqual<inferredRest, readonly []> extends true ? [PatternValue<inferredFirst>] : [PatternValue<inferredFirst>, ...Adaptor<PatternValue<inferredRest>, any[]>] : GenericPattern extends readonly [] ? [] : GenericPattern extends readonly any[] ? PatternValue<GenericPattern[number]>[] : GenericPattern extends Record<ObjectKey, Pattern> ? {
|
|
35
|
+
[Prop in keyof GenericPattern]: PatternValue<GenericPattern[Prop]>;
|
|
36
|
+
} : never;
|
|
37
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var isMatch = require('./isMatch.cjs');
|
|
4
|
+
var pattern = require('./types/pattern.cjs');
|
|
5
|
+
|
|
6
|
+
const SymbolToolPatternFunction = Symbol.for(pattern.SymbolToolPatternFunctionLabel);
|
|
7
|
+
function union(...patterns) {
|
|
8
|
+
return {
|
|
9
|
+
[SymbolToolPatternFunction]: (input) => {
|
|
10
|
+
for (const pattern of patterns) {
|
|
11
|
+
if (isMatch.isMatch(input, pattern)) {
|
|
12
|
+
return true;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
return false;
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
exports.union = union;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type FixDeepFunctionInfer } from "../common";
|
|
2
|
+
import { type Pattern, type ToolPattern } from "./types/pattern";
|
|
3
|
+
export declare function union<GenericInput extends unknown, const GenericPatterns extends readonly [
|
|
4
|
+
Pattern<GenericInput extends infer InferredInput ? InferredInput : never>,
|
|
5
|
+
...Pattern<GenericInput extends infer InferredInput ? InferredInput : never>[]
|
|
6
|
+
]>(...patterns: FixDeepFunctionInfer<readonly [Pattern<GenericInput>, ...Pattern<GenericInput>[]], GenericPatterns>): ToolPattern<GenericInput, GenericPatterns[number] extends infer InferredPattern ? InferredPattern : never>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { isMatch } from './isMatch.mjs';
|
|
2
|
+
import { SymbolToolPatternFunctionLabel } from './types/pattern.mjs';
|
|
3
|
+
|
|
4
|
+
const SymbolToolPatternFunction = Symbol.for(SymbolToolPatternFunctionLabel);
|
|
5
|
+
function union(...patterns) {
|
|
6
|
+
return {
|
|
7
|
+
[SymbolToolPatternFunction]: (input) => {
|
|
8
|
+
for (const pattern of patterns) {
|
|
9
|
+
if (isMatch(input, pattern)) {
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
return false;
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { union };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare function at<GenericString extends string, GenericIndex extends number>(index: GenericIndex): (input: GenericString) => string | undefined;
|
|
2
|
+
export declare function at<GenericString extends string, GenericIndex extends number>(input: GenericString, index: GenericIndex): string | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function capitalize<GenericString extends string>(input: GenericString): Capitalize<GenericString>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
function endsWith(...args) {
|
|
4
|
+
if (args.length === 1) {
|
|
5
|
+
const [searchString] = args;
|
|
6
|
+
return (input) => endsWith(input, searchString);
|
|
7
|
+
}
|
|
8
|
+
const [input, searchString] = args;
|
|
9
|
+
return input.endsWith(searchString);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
exports.endsWith = endsWith;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare function endsWith<GenericSearchString extends string, GenericString extends string>(searchString: GenericSearchString): (input: GenericString) => input is Extract<GenericString, `${string}${GenericSearchString}`>;
|
|
2
|
+
export declare function endsWith<GenericString extends string, GenericSearchString extends string>(input: GenericString, searchString: GenericSearchString): input is Extract<GenericString, `${string}${GenericSearchString}`>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
function includes(...args) {
|
|
4
|
+
if (args.length === 1) {
|
|
5
|
+
const [searchString] = args;
|
|
6
|
+
return (input) => includes(input, searchString);
|
|
7
|
+
}
|
|
8
|
+
const [input, searchString] = args;
|
|
9
|
+
return input.includes(searchString);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
exports.includes = includes;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare function includes<GenericSearchString extends string, GenericString extends string>(searchString: GenericSearchString): (input: GenericString) => input is Extract<GenericString, `${string}${GenericSearchString}${string}`>;
|
|
2
|
+
export declare function includes<GenericString extends string, GenericSearchString extends string>(input: GenericString, searchString: GenericSearchString): input is Extract<GenericString, `${string}${GenericSearchString}${string}`>;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var isKeyof = require('./isKeyof.cjs');
|
|
4
|
+
var _default = require('./at/default.cjs');
|
|
5
|
+
var first = require('./at/first.cjs');
|
|
6
|
+
var last = require('./at/last.cjs');
|
|
7
|
+
var split = require('./split.cjs');
|
|
8
|
+
var charAt = require('./charAt.cjs');
|
|
9
|
+
var toUpperCase = require('./toUpperCase.cjs');
|
|
10
|
+
var toLowerCase = require('./toLowerCase.cjs');
|
|
11
|
+
var _default$1 = require('./trim/default.cjs');
|
|
12
|
+
var end = require('./trim/end.cjs');
|
|
13
|
+
var start = require('./trim/start.cjs');
|
|
14
|
+
var capitalize = require('./capitalize.cjs');
|
|
15
|
+
var uncapitalize = require('./uncapitalize.cjs');
|
|
16
|
+
var substring = require('./substring.cjs');
|
|
17
|
+
var startsWith = require('./startsWith.cjs');
|
|
18
|
+
var endsWith = require('./endsWith.cjs');
|
|
19
|
+
var includes = require('./includes.cjs');
|
|
20
|
+
var search = require('./search.cjs');
|
|
21
|
+
var replace = require('./replace.cjs');
|
|
22
|
+
var replaceAll = require('./replaceAll.cjs');
|
|
23
|
+
var match = require('./match.cjs');
|
|
24
|
+
var matchAll = require('./matchAll.cjs');
|
|
25
|
+
var concat = require('./concat.cjs');
|
|
26
|
+
var slice = require('./slice.cjs');
|
|
27
|
+
var padStart = require('./padStart.cjs');
|
|
28
|
+
var padEnd = require('./padEnd.cjs');
|
|
29
|
+
var indexOf = require('./indexOf.cjs');
|
|
30
|
+
var lastIndexOf = require('./lastIndexOf.cjs');
|
|
31
|
+
var repeat = require('./repeat.cjs');
|
|
32
|
+
var normalize = require('./normalize.cjs');
|
|
33
|
+
var test = require('./test.cjs');
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
exports.isKeyof = isKeyof.isKeyof;
|
|
38
|
+
exports.at = _default.at;
|
|
39
|
+
exports.first = first.first;
|
|
40
|
+
exports.last = last.last;
|
|
41
|
+
exports.split = split.split;
|
|
42
|
+
exports.charAt = charAt.charAt;
|
|
43
|
+
exports.toUpperCase = toUpperCase.toUpperCase;
|
|
44
|
+
exports.toLowerCase = toLowerCase.toLowerCase;
|
|
45
|
+
exports.trim = _default$1.trim;
|
|
46
|
+
exports.trimEnd = end.trimEnd;
|
|
47
|
+
exports.trimStart = start.trimStart;
|
|
48
|
+
exports.capitalize = capitalize.capitalize;
|
|
49
|
+
exports.uncapitalize = uncapitalize.uncapitalize;
|
|
50
|
+
exports.substring = substring.substring;
|
|
51
|
+
exports.startsWith = startsWith.startsWith;
|
|
52
|
+
exports.endsWith = endsWith.endsWith;
|
|
53
|
+
exports.includes = includes.includes;
|
|
54
|
+
exports.search = search.search;
|
|
55
|
+
exports.replace = replace.replace;
|
|
56
|
+
exports.replaceAll = replaceAll.replaceAll;
|
|
57
|
+
exports.match = match.match;
|
|
58
|
+
exports.matchAll = matchAll.matchAll;
|
|
59
|
+
exports.concat = concat.concat;
|
|
60
|
+
exports.slice = slice.slice;
|
|
61
|
+
exports.padStart = padStart.padStart;
|
|
62
|
+
exports.padEnd = padEnd.padEnd;
|
|
63
|
+
exports.indexOf = indexOf.indexOf;
|
|
64
|
+
exports.lastIndexOf = lastIndexOf.lastIndexOf;
|
|
65
|
+
exports.repeat = repeat.repeat;
|
|
66
|
+
exports.normalize = normalize.normalize;
|
|
67
|
+
exports.test = test.test;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export * from "./types";
|
|
2
|
+
export * from "./isKeyof";
|
|
3
|
+
export * from "./at";
|
|
4
|
+
export * from "./split";
|
|
5
|
+
export * from "./charAt";
|
|
6
|
+
export * from "./toUpperCase";
|
|
7
|
+
export * from "./toLowerCase";
|
|
8
|
+
export * from "./trim";
|
|
9
|
+
export * from "./capitalize";
|
|
10
|
+
export * from "./uncapitalize";
|
|
11
|
+
export * from "./substring";
|
|
12
|
+
export * from "./startsWith";
|
|
13
|
+
export * from "./endsWith";
|
|
14
|
+
export * from "./includes";
|
|
15
|
+
export * from "./search";
|
|
16
|
+
export * from "./replace";
|
|
17
|
+
export * from "./replaceAll";
|
|
18
|
+
export * from "./match";
|
|
19
|
+
export * from "./matchAll";
|
|
20
|
+
export * from "./concat";
|
|
21
|
+
export * from "./slice";
|
|
22
|
+
export * from "./padStart";
|
|
23
|
+
export * from "./padEnd";
|
|
24
|
+
export * from "./indexOf";
|
|
25
|
+
export * from "./lastIndexOf";
|
|
26
|
+
export * from "./repeat";
|
|
27
|
+
export * from "./normalize";
|
|
28
|
+
export * from "./test";
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export { isKeyof } from './isKeyof.mjs';
|
|
2
|
+
export { at } from './at/default.mjs';
|
|
3
|
+
export { first } from './at/first.mjs';
|
|
4
|
+
export { last } from './at/last.mjs';
|
|
5
|
+
export { split } from './split.mjs';
|
|
6
|
+
export { charAt } from './charAt.mjs';
|
|
7
|
+
export { toUpperCase } from './toUpperCase.mjs';
|
|
8
|
+
export { toLowerCase } from './toLowerCase.mjs';
|
|
9
|
+
export { trim } from './trim/default.mjs';
|
|
10
|
+
export { trimEnd } from './trim/end.mjs';
|
|
11
|
+
export { trimStart } from './trim/start.mjs';
|
|
12
|
+
export { capitalize } from './capitalize.mjs';
|
|
13
|
+
export { uncapitalize } from './uncapitalize.mjs';
|
|
14
|
+
export { substring } from './substring.mjs';
|
|
15
|
+
export { startsWith } from './startsWith.mjs';
|
|
16
|
+
export { endsWith } from './endsWith.mjs';
|
|
17
|
+
export { includes } from './includes.mjs';
|
|
18
|
+
export { search } from './search.mjs';
|
|
19
|
+
export { replace } from './replace.mjs';
|
|
20
|
+
export { replaceAll } from './replaceAll.mjs';
|
|
21
|
+
export { match } from './match.mjs';
|
|
22
|
+
export { matchAll } from './matchAll.mjs';
|
|
23
|
+
export { concat } from './concat.mjs';
|
|
24
|
+
export { slice } from './slice.mjs';
|
|
25
|
+
export { padStart } from './padStart.mjs';
|
|
26
|
+
export { padEnd } from './padEnd.mjs';
|
|
27
|
+
export { indexOf } from './indexOf.mjs';
|
|
28
|
+
export { lastIndexOf } from './lastIndexOf.mjs';
|
|
29
|
+
export { repeat } from './repeat.mjs';
|
|
30
|
+
export { normalize } from './normalize.mjs';
|
|
31
|
+
export { test } from './test.mjs';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
function indexOf(...args) {
|
|
4
|
+
if (args.length === 1) {
|
|
5
|
+
const [searchString] = args;
|
|
6
|
+
return (input) => indexOf(input, searchString);
|
|
7
|
+
}
|
|
8
|
+
const [input, searchString, position] = args;
|
|
9
|
+
const result = input.indexOf(searchString, position);
|
|
10
|
+
return result === -1 ? undefined : result;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
exports.indexOf = indexOf;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
function indexOf(...args) {
|
|
2
|
+
if (args.length === 1) {
|
|
3
|
+
const [searchString] = args;
|
|
4
|
+
return (input) => indexOf(input, searchString);
|
|
5
|
+
}
|
|
6
|
+
const [input, searchString, position] = args;
|
|
7
|
+
const result = input.indexOf(searchString, position);
|
|
8
|
+
return result === -1 ? undefined : result;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { indexOf };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { type ObjectKey } from "../common/types/objectKey";
|
|
2
|
+
export declare function isKeyof<GenericObject extends object, GenericKey extends ObjectKey>(obj: GenericObject): (key: GenericKey) => key is keyof GenericObject & GenericKey;
|
|
3
|
+
export declare function isKeyof<GenericObject extends object, GenericKey extends ObjectKey>(key: GenericKey, obj: GenericObject): key is keyof GenericObject & GenericKey;
|