type-plus 4.10.0 → 4.10.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/cjs/ComposableTypes.d.ts +6 -0
- package/cjs/ComposableTypes.d.ts.map +1 -1
- package/cjs/ComposableTypes.spec.d.ts +2 -0
- package/cjs/ComposableTypes.spec.d.ts.map +1 -0
- package/cjs/ComposableTypes.spec.js +28 -0
- package/cjs/ComposableTypes.spec.js.map +1 -0
- package/cjs/JSONTypes.js +1 -0
- package/cjs/JSONTypes.js.map +1 -1
- package/cjs/JSONTypes.spec.d.ts +2 -0
- package/cjs/JSONTypes.spec.d.ts.map +1 -0
- package/cjs/JSONTypes.spec.js +40 -0
- package/cjs/JSONTypes.spec.js.map +1 -0
- package/cjs/UnionKeys.d.ts +4 -0
- package/cjs/UnionKeys.d.ts.map +1 -1
- package/cjs/UnionToIntersection.d.ts +3 -0
- package/cjs/UnionToIntersection.d.ts.map +1 -0
- package/cjs/UnionToIntersection.js +8 -0
- package/cjs/UnionToIntersection.js.map +1 -0
- package/cjs/array/CommonPropKeys.d.ts +7 -0
- package/cjs/array/CommonPropKeys.d.ts.map +1 -1
- package/cjs/array/CommonPropKeys.spec.d.ts +2 -0
- package/cjs/array/CommonPropKeys.spec.d.ts.map +1 -0
- package/cjs/array/CommonPropKeys.spec.js +13 -0
- package/cjs/array/CommonPropKeys.spec.js.map +1 -0
- package/cjs/array/Concat.spec.d.ts +2 -0
- package/cjs/array/Concat.spec.d.ts.map +1 -0
- package/cjs/array/Concat.spec.js +16 -0
- package/cjs/array/Concat.spec.js.map +1 -0
- package/cjs/array/CreateTuple.d.ts +6 -0
- package/cjs/array/CreateTuple.d.ts.map +1 -1
- package/cjs/array/CreateTuple.spec.d.ts +2 -0
- package/cjs/array/CreateTuple.spec.d.ts.map +1 -0
- package/cjs/array/CreateTuple.spec.js +31 -0
- package/cjs/array/CreateTuple.spec.js.map +1 -0
- package/cjs/array/DropFirst.spec.d.ts +2 -0
- package/cjs/array/DropFirst.spec.d.ts.map +1 -0
- package/cjs/array/DropFirst.spec.js +17 -0
- package/cjs/array/DropFirst.spec.js.map +1 -0
- package/cjs/array/DropLast.spec.d.ts +2 -0
- package/cjs/array/DropLast.spec.d.ts.map +1 -0
- package/cjs/array/DropLast.spec.js +17 -0
- package/cjs/array/DropLast.spec.js.map +1 -0
- package/cjs/array/DropMatch.spec.d.ts +2 -0
- package/cjs/array/DropMatch.spec.d.ts.map +1 -0
- package/cjs/array/DropMatch.spec.js +135 -0
- package/cjs/array/DropMatch.spec.js.map +1 -0
- package/cjs/array/Filter.d.ts +7 -0
- package/cjs/array/Filter.d.ts.map +1 -1
- package/cjs/array/Filter.spec.d.ts +2 -0
- package/cjs/array/Filter.spec.d.ts.map +1 -0
- package/cjs/array/Filter.spec.js +72 -0
- package/cjs/array/Filter.spec.js.map +1 -0
- package/cjs/array/FindFirst.d.ts +3 -0
- package/cjs/array/FindFirst.d.ts.map +1 -1
- package/cjs/array/FindFirst.spec.d.ts +2 -0
- package/cjs/array/FindFirst.spec.d.ts.map +1 -0
- package/cjs/array/FindFirst.spec.js +17 -0
- package/cjs/array/FindFirst.spec.js.map +1 -0
- package/cjs/array/FindLast.spec.d.ts +2 -0
- package/cjs/array/FindLast.spec.d.ts.map +1 -0
- package/cjs/array/FindLast.spec.js +17 -0
- package/cjs/array/FindLast.spec.js.map +1 -0
- package/cjs/array/Head.spec.d.ts +2 -0
- package/cjs/array/Head.spec.d.ts.map +1 -0
- package/cjs/array/Head.spec.js +13 -0
- package/cjs/array/Head.spec.js.map +1 -0
- package/cjs/array/IntersectOfProps.d.ts +7 -0
- package/cjs/array/IntersectOfProps.d.ts.map +1 -1
- package/cjs/array/IntersectOfProps.spec.d.ts +2 -0
- package/cjs/array/IntersectOfProps.spec.d.ts.map +1 -0
- package/cjs/array/IntersectOfProps.spec.js +10 -0
- package/cjs/array/IntersectOfProps.spec.js.map +1 -0
- package/cjs/array/Last.d.ts +3 -0
- package/cjs/array/Last.d.ts.map +1 -1
- package/cjs/array/Last.spec.d.ts +2 -0
- package/cjs/array/Last.spec.d.ts.map +1 -0
- package/cjs/array/Last.spec.js +22 -0
- package/cjs/array/Last.spec.js.map +1 -0
- package/cjs/array/PadLeft.spec.d.ts +2 -0
- package/cjs/array/PadLeft.spec.d.ts.map +1 -0
- package/cjs/array/PadLeft.spec.js +23 -0
- package/cjs/array/PadLeft.spec.js.map +1 -0
- package/cjs/array/Reverse.spec.d.ts +2 -0
- package/cjs/array/Reverse.spec.d.ts.map +1 -0
- package/cjs/array/Reverse.spec.js +16 -0
- package/cjs/array/Reverse.spec.js.map +1 -0
- package/cjs/array/Some.spec.d.ts +2 -0
- package/cjs/array/Some.spec.d.ts.map +1 -0
- package/cjs/array/Some.spec.js +67 -0
- package/cjs/array/Some.spec.js.map +1 -0
- package/cjs/array/Tail.d.ts +3 -0
- package/cjs/array/Tail.d.ts.map +1 -1
- package/cjs/array/Tail.spec.d.ts +2 -0
- package/cjs/array/Tail.spec.d.ts.map +1 -0
- package/cjs/array/Tail.spec.js +19 -0
- package/cjs/array/Tail.spec.js.map +1 -0
- package/cjs/array/UnionOfProps.d.ts +7 -0
- package/cjs/array/UnionOfProps.d.ts.map +1 -1
- package/cjs/array/UnionOfProps.spec.d.ts +2 -0
- package/cjs/array/UnionOfProps.spec.d.ts.map +1 -0
- package/cjs/array/UnionOfProps.spec.js +10 -0
- package/cjs/array/UnionOfProps.spec.js.map +1 -0
- package/cjs/array/UnionOfValues.d.ts +7 -0
- package/cjs/array/UnionOfValues.d.ts.map +1 -1
- package/cjs/array/UnionOfValues.spec.d.ts +2 -0
- package/cjs/array/UnionOfValues.spec.d.ts.map +1 -0
- package/cjs/array/UnionOfValues.spec.js +10 -0
- package/cjs/array/UnionOfValues.spec.js.map +1 -0
- package/cjs/array/drop.d.ts +6 -0
- package/cjs/array/drop.d.ts.map +1 -1
- package/cjs/array/drop.js +3 -0
- package/cjs/array/drop.js.map +1 -1
- package/cjs/array/literalArray.spec.d.ts +2 -0
- package/cjs/array/literalArray.spec.d.ts.map +1 -0
- package/cjs/array/literalArray.spec.js +8 -0
- package/cjs/array/literalArray.spec.js.map +1 -0
- package/cjs/array/reduceWhile.spec.d.ts +2 -0
- package/cjs/array/reduceWhile.spec.d.ts.map +1 -0
- package/cjs/array/reduceWhile.spec.js +18 -0
- package/cjs/array/reduceWhile.spec.js.map +1 -0
- package/cjs/assertion/assertType.d.ts +4 -0
- package/cjs/assertion/assertType.d.ts.map +1 -1
- package/cjs/assertion/assertType.js +8 -0
- package/cjs/assertion/assertType.js.map +1 -1
- package/cjs/assertion/assertType.spec.d.ts +2 -0
- package/cjs/assertion/assertType.spec.d.ts.map +1 -0
- package/cjs/assertion/assertType.spec.js +476 -0
- package/cjs/assertion/assertType.spec.js.map +1 -0
- package/cjs/binary/Bit.d.ts +6 -0
- package/cjs/binary/Bit.d.ts.map +1 -0
- package/cjs/binary/Bit.js +3 -0
- package/cjs/binary/Bit.js.map +1 -0
- package/cjs/binary/_binary.d.ts +2 -0
- package/cjs/binary/_binary.d.ts.map +1 -0
- package/cjs/binary/_binary.js +3 -0
- package/cjs/binary/_binary.js.map +1 -0
- package/cjs/binary/index.d.ts +3 -0
- package/cjs/binary/index.d.ts.map +1 -0
- package/cjs/binary/index.js +29 -0
- package/cjs/binary/index.js.map +1 -0
- package/cjs/binary/index.spec.d.ts +2 -0
- package/cjs/binary/index.spec.d.ts.map +1 -0
- package/cjs/binary/index.spec.js +26 -0
- package/cjs/binary/index.spec.js.map +1 -0
- package/cjs/class/AnyConstructor.spec.d.ts +2 -0
- package/cjs/class/AnyConstructor.spec.d.ts.map +1 -0
- package/cjs/class/AnyConstructor.spec.js +11 -0
- package/cjs/class/AnyConstructor.spec.js.map +1 -0
- package/cjs/class/isConstructor.spec.d.ts +2 -0
- package/cjs/class/isConstructor.spec.d.ts.map +1 -0
- package/cjs/class/isConstructor.spec.js +56 -0
- package/cjs/class/isConstructor.spec.js.map +1 -0
- package/cjs/function/AnyFunction.spec.d.ts +2 -0
- package/cjs/function/AnyFunction.spec.d.ts.map +1 -0
- package/cjs/function/AnyFunction.spec.js +20 -0
- package/cjs/function/AnyFunction.spec.js.map +1 -0
- package/cjs/functional/ChainFn.d.ts +3 -0
- package/cjs/functional/ChainFn.d.ts.map +1 -1
- package/cjs/functional/ChainFn.spec.d.ts +2 -0
- package/cjs/functional/ChainFn.spec.d.ts.map +1 -0
- package/cjs/functional/ChainFn.spec.js +7 -0
- package/cjs/functional/ChainFn.spec.js.map +1 -0
- package/cjs/functional/Maybe.d.ts +13 -0
- package/cjs/functional/Maybe.d.ts.map +1 -0
- package/cjs/functional/Maybe.js +13 -0
- package/cjs/functional/Maybe.js.map +1 -0
- package/cjs/functional/Maybe.spec.d.ts +2 -0
- package/cjs/functional/Maybe.spec.d.ts.map +1 -0
- package/cjs/functional/Maybe.spec.js +35 -0
- package/cjs/functional/Maybe.spec.js.map +1 -0
- package/cjs/functional/compose.d.ts +3 -0
- package/cjs/functional/compose.d.ts.map +1 -1
- package/cjs/functional/compose.js +4 -0
- package/cjs/functional/compose.js.map +1 -1
- package/cjs/functional/compose.spec.d.ts +2 -0
- package/cjs/functional/compose.spec.d.ts.map +1 -0
- package/cjs/functional/compose.spec.js +26 -0
- package/cjs/functional/compose.spec.js.map +1 -0
- package/cjs/index.js +2 -0
- package/cjs/index.js.map +1 -1
- package/cjs/math/Abs.spec.d.ts +2 -0
- package/cjs/math/Abs.spec.d.ts.map +1 -0
- package/cjs/math/Abs.spec.js +14 -0
- package/cjs/math/Abs.spec.js.map +1 -0
- package/cjs/math/Add.d.ts +6 -0
- package/cjs/math/Add.d.ts.map +1 -1
- package/cjs/math/Add.spec.d.ts +2 -0
- package/cjs/math/Add.spec.d.ts.map +1 -0
- package/cjs/math/Add.spec.js +73 -0
- package/cjs/math/Add.spec.js.map +1 -0
- package/cjs/math/Digit.d.ts +3 -0
- package/cjs/math/Digit.d.ts.map +1 -1
- package/cjs/math/Digit.spec.d.ts +2 -0
- package/cjs/math/Digit.spec.d.ts.map +1 -0
- package/cjs/math/Digit.spec.js +159 -0
- package/cjs/math/Digit.spec.js.map +1 -0
- package/cjs/math/GreaterThan.spec.d.ts +2 -0
- package/cjs/math/GreaterThan.spec.d.ts.map +1 -0
- package/cjs/math/GreaterThan.spec.js +63 -0
- package/cjs/math/GreaterThan.spec.js.map +1 -0
- package/cjs/math/IsPositive.d.ts +5 -0
- package/cjs/math/IsPositive.d.ts.map +1 -1
- package/cjs/math/IsPositive.spec.d.ts +2 -0
- package/cjs/math/IsPositive.spec.d.ts.map +1 -0
- package/cjs/math/IsPositive.spec.js +15 -0
- package/cjs/math/IsPositive.spec.js.map +1 -0
- package/cjs/math/IsWhole.d.ts +5 -0
- package/cjs/math/IsWhole.d.ts.map +1 -1
- package/cjs/math/IsWhole.spec.d.ts +2 -0
- package/cjs/math/IsWhole.spec.d.ts.map +1 -0
- package/cjs/math/IsWhole.spec.js +19 -0
- package/cjs/math/IsWhole.spec.js.map +1 -0
- package/cjs/math/Max.spec.d.ts +2 -0
- package/cjs/math/Max.spec.d.ts.map +1 -0
- package/cjs/math/Max.spec.js +50 -0
- package/cjs/math/Max.spec.js.map +1 -0
- package/cjs/math/Subtract.d.ts +3 -0
- package/cjs/math/Subtract.d.ts.map +1 -1
- package/cjs/math/Subtract.spec.d.ts +2 -0
- package/cjs/math/Subtract.spec.d.ts.map +1 -0
- package/cjs/math/Subtract.spec.js +37 -0
- package/cjs/math/Subtract.spec.js.map +1 -0
- package/cjs/nodejs/isNodeError.d.ts +5 -0
- package/cjs/nodejs/isNodeError.d.ts.map +1 -1
- package/cjs/nodejs/isNodeError.js +5 -0
- package/cjs/nodejs/isNodeError.js.map +1 -1
- package/cjs/nodejs/isNodeError.spec.d.ts +2 -0
- package/cjs/nodejs/isNodeError.spec.d.ts.map +1 -0
- package/cjs/nodejs/isNodeError.spec.js +13 -0
- package/cjs/nodejs/isNodeError.spec.js.map +1 -0
- package/cjs/nominal-types/Brand.d.ts +10 -0
- package/cjs/nominal-types/Brand.d.ts.map +1 -1
- package/cjs/nominal-types/Brand.js +3 -0
- package/cjs/nominal-types/Brand.js.map +1 -1
- package/cjs/nominal-types/Brand.spec.d.ts +2 -0
- package/cjs/nominal-types/Brand.spec.d.ts.map +1 -0
- package/cjs/nominal-types/Brand.spec.js +40 -0
- package/cjs/nominal-types/Brand.spec.js.map +1 -0
- package/cjs/nominal-types/Flavor.d.ts +12 -0
- package/cjs/nominal-types/Flavor.d.ts.map +1 -1
- package/cjs/nominal-types/Flavor.js +3 -0
- package/cjs/nominal-types/Flavor.js.map +1 -1
- package/cjs/nominal-types/Flavor.spec.d.ts +2 -0
- package/cjs/nominal-types/Flavor.spec.d.ts.map +1 -0
- package/cjs/nominal-types/Flavor.spec.js +42 -0
- package/cjs/nominal-types/Flavor.spec.js.map +1 -0
- package/cjs/nominal-types/nominalMatch.spec.d.ts +2 -0
- package/cjs/nominal-types/nominalMatch.spec.d.ts.map +1 -0
- package/cjs/nominal-types/nominalMatch.spec.js +52 -0
- package/cjs/nominal-types/nominalMatch.spec.js.map +1 -0
- package/cjs/object/ANotB.spec.d.ts +2 -0
- package/cjs/object/ANotB.spec.d.ts.map +1 -0
- package/cjs/object/ANotB.spec.js +56 -0
- package/cjs/object/ANotB.spec.js.map +1 -0
- package/cjs/object/ExcludePropType.d.ts +3 -0
- package/cjs/object/ExcludePropType.d.ts.map +1 -1
- package/cjs/object/ExcludePropType.spec.d.ts +2 -0
- package/cjs/object/ExcludePropType.spec.d.ts.map +1 -0
- package/cjs/object/ExcludePropType.spec.js +8 -0
- package/cjs/object/ExcludePropType.spec.js.map +1 -0
- package/cjs/object/IsDisjoint.d.ts +4 -0
- package/cjs/object/IsDisjoint.d.ts.map +1 -1
- package/cjs/object/IsDisjoint.spec.d.ts +2 -0
- package/cjs/object/IsDisjoint.spec.d.ts.map +1 -0
- package/cjs/object/IsDisjoint.spec.js +16 -0
- package/cjs/object/IsDisjoint.spec.js.map +1 -0
- package/cjs/object/IsRecord.spec.d.ts +2 -0
- package/cjs/object/IsRecord.spec.d.ts.map +1 -0
- package/cjs/object/IsRecord.spec.js +22 -0
- package/cjs/object/IsRecord.spec.js.map +1 -0
- package/cjs/object/KeyTypes.d.ts +5 -0
- package/cjs/object/KeyTypes.d.ts.map +1 -1
- package/cjs/object/KeyTypes.spec.d.ts +2 -0
- package/cjs/object/KeyTypes.spec.d.ts.map +1 -0
- package/cjs/object/KeyTypes.spec.js +9 -0
- package/cjs/object/KeyTypes.spec.js.map +1 -0
- package/cjs/object/KeyofOptional.d.ts +3 -0
- package/cjs/object/KeyofOptional.d.ts.map +1 -1
- package/cjs/object/KeyofOptional.spec.d.ts +2 -0
- package/cjs/object/KeyofOptional.spec.d.ts.map +1 -0
- package/cjs/object/KeyofOptional.spec.js +7 -0
- package/cjs/object/KeyofOptional.spec.js.map +1 -0
- package/cjs/object/KeysWithDiffType.spec.d.ts +2 -0
- package/cjs/object/KeysWithDiffType.spec.d.ts.map +1 -0
- package/cjs/object/KeysWithDiffType.spec.js +16 -0
- package/cjs/object/KeysWithDiffType.spec.js.map +1 -0
- package/cjs/object/KnownKeys.js +3 -0
- package/cjs/object/KnownKeys.js.map +1 -1
- package/cjs/object/KnownKeys.spec.d.ts +2 -0
- package/cjs/object/KnownKeys.spec.d.ts.map +1 -0
- package/cjs/object/KnownKeys.spec.js +30 -0
- package/cjs/object/KnownKeys.spec.js.map +1 -0
- package/cjs/object/OptionalKeys.spec.d.ts +2 -0
- package/cjs/object/OptionalKeys.spec.d.ts.map +1 -0
- package/cjs/object/OptionalKeys.spec.js +16 -0
- package/cjs/object/OptionalKeys.spec.js.map +1 -0
- package/cjs/object/Partial.d.ts +9 -0
- package/cjs/object/Partial.d.ts.map +1 -1
- package/cjs/object/Partial.spec.d.ts +2 -0
- package/cjs/object/Partial.spec.d.ts.map +1 -0
- package/cjs/object/Partial.spec.js +26 -0
- package/cjs/object/Partial.spec.js.map +1 -0
- package/cjs/object/RecursiveIntersect.d.ts +11 -0
- package/cjs/object/RecursiveIntersect.d.ts.map +1 -1
- package/cjs/object/RecursiveIntersect.spec.d.ts +2 -0
- package/cjs/object/RecursiveIntersect.spec.d.ts.map +1 -0
- package/cjs/object/RecursiveIntersect.spec.js +32 -0
- package/cjs/object/RecursiveIntersect.spec.js.map +1 -0
- package/cjs/object/RecursiveRequired.spec.d.ts +2 -0
- package/cjs/object/RecursiveRequired.spec.d.ts.map +1 -0
- package/cjs/object/RecursiveRequired.spec.js +37 -0
- package/cjs/object/RecursiveRequired.spec.js.map +1 -0
- package/cjs/object/Required.js +1 -0
- package/cjs/object/Required.js.map +1 -1
- package/cjs/object/Required.spec.d.ts +2 -0
- package/cjs/object/Required.spec.d.ts.map +1 -0
- package/cjs/object/Required.spec.js +16 -0
- package/cjs/object/Required.spec.js.map +1 -0
- package/cjs/object/RequiredKeys.spec.d.ts +2 -0
- package/cjs/object/RequiredKeys.spec.d.ts.map +1 -0
- package/cjs/object/RequiredKeys.spec.js +16 -0
- package/cjs/object/RequiredKeys.spec.js.map +1 -0
- package/cjs/object/SpreadRecord.spec.d.ts +2 -0
- package/cjs/object/SpreadRecord.spec.d.ts.map +1 -0
- package/cjs/object/SpreadRecord.spec.js +10 -0
- package/cjs/object/SpreadRecord.spec.js.map +1 -0
- package/cjs/object/ValueOf.spec.d.ts +2 -0
- package/cjs/object/ValueOf.spec.d.ts.map +1 -0
- package/cjs/object/ValueOf.spec.js +29 -0
- package/cjs/object/ValueOf.spec.js.map +1 -0
- package/cjs/object/everyKey.spec.d.ts +2 -0
- package/cjs/object/everyKey.spec.d.ts.map +1 -0
- package/cjs/object/everyKey.spec.js +12 -0
- package/cjs/object/everyKey.spec.js.map +1 -0
- package/cjs/object/facade.d.ts +3 -0
- package/cjs/object/facade.d.ts.map +1 -1
- package/cjs/object/facade.js +3 -0
- package/cjs/object/facade.js.map +1 -1
- package/cjs/object/facade.spec.d.ts +2 -0
- package/cjs/object/facade.spec.d.ts.map +1 -0
- package/cjs/object/facade.spec.js +20 -0
- package/cjs/object/facade.spec.js.map +1 -0
- package/cjs/object/filterKey.spec.d.ts +2 -0
- package/cjs/object/filterKey.spec.d.ts.map +1 -0
- package/cjs/object/filterKey.spec.js +13 -0
- package/cjs/object/filterKey.spec.js.map +1 -0
- package/cjs/object/findKey.spec.d.ts +2 -0
- package/cjs/object/findKey.spec.d.ts.map +1 -0
- package/cjs/object/findKey.spec.js +13 -0
- package/cjs/object/findKey.spec.js.map +1 -0
- package/cjs/object/forEachKey.spec.d.ts +2 -0
- package/cjs/object/forEachKey.spec.d.ts.map +1 -0
- package/cjs/object/forEachKey.spec.js +14 -0
- package/cjs/object/forEachKey.spec.js.map +1 -0
- package/cjs/object/getField.spec.d.ts +2 -0
- package/cjs/object/getField.spec.d.ts.map +1 -0
- package/cjs/object/getField.spec.js +20 -0
- package/cjs/object/getField.spec.js.map +1 -0
- package/cjs/object/hasKey.spec.d.ts +2 -0
- package/cjs/object/hasKey.spec.d.ts.map +1 -0
- package/cjs/object/hasKey.spec.js +25 -0
- package/cjs/object/hasKey.spec.js.map +1 -0
- package/cjs/object/hasProperty.spec.d.ts +2 -0
- package/cjs/object/hasProperty.spec.d.ts.map +1 -0
- package/cjs/object/hasProperty.spec.js +12 -0
- package/cjs/object/hasProperty.spec.js.map +1 -0
- package/cjs/object/mapKey.spec.d.ts +2 -0
- package/cjs/object/mapKey.spec.d.ts.map +1 -0
- package/cjs/object/mapKey.spec.js +13 -0
- package/cjs/object/mapKey.spec.js.map +1 -0
- package/cjs/object/mapProperties.d.ts +8 -0
- package/cjs/object/mapProperties.d.ts.map +1 -1
- package/cjs/object/mapProperties.js +8 -0
- package/cjs/object/mapProperties.js.map +1 -1
- package/cjs/object/mapProperties.spec.d.ts +2 -0
- package/cjs/object/mapProperties.spec.d.ts.map +1 -0
- package/cjs/object/mapProperties.spec.js +38 -0
- package/cjs/object/mapProperties.spec.js.map +1 -0
- package/cjs/object/omit.d.ts +3 -0
- package/cjs/object/omit.d.ts.map +1 -1
- package/cjs/object/omit.spec.d.ts +2 -0
- package/cjs/object/omit.spec.d.ts.map +1 -0
- package/cjs/object/omit.spec.js +61 -0
- package/cjs/object/omit.spec.js.map +1 -0
- package/cjs/object/pick.d.ts +7 -0
- package/cjs/object/pick.d.ts.map +1 -1
- package/cjs/object/pick.spec.d.ts +2 -0
- package/cjs/object/pick.spec.d.ts.map +1 -0
- package/cjs/object/pick.spec.js +41 -0
- package/cjs/object/pick.spec.js.map +1 -0
- package/cjs/object/record.d.ts +3 -0
- package/cjs/object/record.d.ts.map +1 -1
- package/cjs/object/record.js +3 -0
- package/cjs/object/record.js.map +1 -1
- package/cjs/object/record.spec.d.ts +2 -0
- package/cjs/object/record.spec.d.ts.map +1 -0
- package/cjs/object/record.spec.js +46 -0
- package/cjs/object/record.spec.js.map +1 -0
- package/cjs/object/reduceKey.d.ts +3 -0
- package/cjs/object/reduceKey.d.ts.map +1 -1
- package/cjs/object/reduceKey.js +3 -0
- package/cjs/object/reduceKey.js.map +1 -1
- package/cjs/object/reduceKey.spec.d.ts +2 -0
- package/cjs/object/reduceKey.spec.d.ts.map +1 -0
- package/cjs/object/reduceKey.spec.js +22 -0
- package/cjs/object/reduceKey.spec.js.map +1 -0
- package/cjs/object/replaceProperty.spec.d.ts +2 -0
- package/cjs/object/replaceProperty.spec.d.ts.map +1 -0
- package/cjs/object/replaceProperty.spec.js +15 -0
- package/cjs/object/replaceProperty.spec.js.map +1 -0
- package/cjs/object/someKey.spec.d.ts +2 -0
- package/cjs/object/someKey.spec.d.ts.map +1 -0
- package/cjs/object/someKey.spec.js +8 -0
- package/cjs/object/someKey.spec.js.map +1 -0
- package/cjs/object/split.d.ts +4 -0
- package/cjs/object/split.d.ts.map +1 -1
- package/cjs/object/split.spec.d.ts +2 -0
- package/cjs/object/split.spec.d.ts.map +1 -0
- package/cjs/object/split.spec.js +82 -0
- package/cjs/object/split.spec.js.map +1 -0
- package/cjs/object/typeOverrideIncompatible.spec.d.ts +2 -0
- package/cjs/object/typeOverrideIncompatible.spec.d.ts.map +1 -0
- package/cjs/object/typeOverrideIncompatible.spec.js +19 -0
- package/cjs/object/typeOverrideIncompatible.spec.js.map +1 -0
- package/cjs/package.json +1 -0
- package/cjs/predicates/CanAssign.d.ts +3 -0
- package/cjs/predicates/CanAssign.d.ts.map +1 -1
- package/cjs/predicates/CanAssign.spec.d.ts +2 -0
- package/cjs/predicates/CanAssign.spec.d.ts.map +1 -0
- package/cjs/predicates/CanAssign.spec.js +56 -0
- package/cjs/predicates/CanAssign.spec.js.map +1 -0
- package/cjs/predicates/Equal.d.ts +6 -0
- package/cjs/predicates/Equal.d.ts.map +1 -1
- package/cjs/predicates/Equal.spec.d.ts +2 -0
- package/cjs/predicates/Equal.spec.d.ts.map +1 -0
- package/cjs/predicates/Equal.spec.js +62 -0
- package/cjs/predicates/Equal.spec.js.map +1 -0
- package/cjs/predicates/If.spec.d.ts +2 -0
- package/cjs/predicates/If.spec.d.ts.map +1 -0
- package/cjs/predicates/If.spec.js +14 -0
- package/cjs/predicates/If.spec.js.map +1 -0
- package/cjs/predicates/IsEmptyObject.spec.d.ts +2 -0
- package/cjs/predicates/IsEmptyObject.spec.d.ts.map +1 -0
- package/cjs/predicates/IsEmptyObject.spec.js +15 -0
- package/cjs/predicates/IsEmptyObject.spec.js.map +1 -0
- package/cjs/predicates/index.spec.d.ts +2 -0
- package/cjs/predicates/index.spec.d.ts.map +1 -0
- package/cjs/predicates/index.spec.js +62 -0
- package/cjs/predicates/index.spec.js.map +1 -0
- package/cjs/predicates/isType.js +6 -0
- package/cjs/predicates/isType.js.map +1 -1
- package/cjs/predicates/isType.spec.d.ts +2 -0
- package/cjs/predicates/isType.spec.d.ts.map +1 -0
- package/cjs/predicates/isType.spec.js +111 -0
- package/cjs/predicates/isType.spec.js.map +1 -0
- package/cjs/predicates/logical.spec.d.ts +2 -0
- package/cjs/predicates/logical.spec.d.ts.map +1 -0
- package/cjs/predicates/logical.spec.js +58 -0
- package/cjs/predicates/logical.spec.js.map +1 -0
- package/cjs/promise/PromiseValue.d.ts +3 -0
- package/cjs/promise/PromiseValue.d.ts.map +1 -1
- package/cjs/promise/PromiseValue.spec.d.ts +2 -0
- package/cjs/promise/PromiseValue.spec.d.ts.map +1 -0
- package/cjs/promise/PromiseValue.spec.js +8 -0
- package/cjs/promise/PromiseValue.spec.js.map +1 -0
- package/cjs/promise/PromiseValueMerge.d.ts +3 -0
- package/cjs/promise/PromiseValueMerge.d.ts.map +1 -1
- package/cjs/promise/PromiseValueMerge.spec.d.ts +2 -0
- package/cjs/promise/PromiseValueMerge.spec.d.ts.map +1 -0
- package/cjs/promise/PromiseValueMerge.spec.js +54 -0
- package/cjs/promise/PromiseValueMerge.spec.js.map +1 -0
- package/cjs/promise/isPromise.js +1 -0
- package/cjs/promise/isPromise.js.map +1 -1
- package/cjs/promise/isPromise.spec.d.ts +2 -0
- package/cjs/promise/isPromise.spec.d.ts.map +1 -0
- package/cjs/promise/isPromise.spec.js +28 -0
- package/cjs/promise/isPromise.spec.js.map +1 -0
- package/cjs/promise/mapSeries.spec.d.ts +2 -0
- package/cjs/promise/mapSeries.spec.d.ts.map +1 -0
- package/cjs/promise/mapSeries.spec.js +13 -0
- package/cjs/promise/mapSeries.spec.js.map +1 -0
- package/cjs/testing/stub.js +3 -0
- package/cjs/testing/stub.js.map +1 -1
- package/cjs/testing/stub.spec.d.ts +2 -0
- package/cjs/testing/stub.spec.d.ts.map +1 -0
- package/cjs/testing/stub.spec.js +48 -0
- package/cjs/testing/stub.spec.js.map +1 -0
- package/cjs/utils/Widen.d.ts +4 -0
- package/cjs/utils/Widen.d.ts.map +1 -1
- package/cjs/utils/as.d.ts +3 -0
- package/cjs/utils/as.d.ts.map +1 -1
- package/cjs/utils/as.js +3 -0
- package/cjs/utils/as.js.map +1 -1
- package/cjs/utils/as.spec.d.ts +2 -0
- package/cjs/utils/as.spec.d.ts.map +1 -0
- package/cjs/utils/as.spec.js +42 -0
- package/cjs/utils/as.spec.js.map +1 -0
- package/esm/ComposableTypes.d.ts +6 -0
- package/esm/ComposableTypes.d.ts.map +1 -1
- package/esm/ComposableTypes.spec.d.ts +2 -0
- package/esm/ComposableTypes.spec.d.ts.map +1 -0
- package/esm/ComposableTypes.spec.js +26 -0
- package/esm/ComposableTypes.spec.js.map +1 -0
- package/esm/JSONTypes.js +1 -0
- package/esm/JSONTypes.js.map +1 -1
- package/esm/JSONTypes.spec.d.ts +2 -0
- package/esm/JSONTypes.spec.d.ts.map +1 -0
- package/esm/JSONTypes.spec.js +38 -0
- package/esm/JSONTypes.spec.js.map +1 -0
- package/esm/UnionKeys.d.ts +4 -0
- package/esm/UnionKeys.d.ts.map +1 -1
- package/esm/UnionToIntersection.d.ts +3 -0
- package/esm/UnionToIntersection.d.ts.map +1 -0
- package/esm/UnionToIntersection.js +4 -0
- package/esm/UnionToIntersection.js.map +1 -0
- package/esm/array/CommonPropKeys.d.ts +7 -0
- package/esm/array/CommonPropKeys.d.ts.map +1 -1
- package/esm/array/CommonPropKeys.spec.d.ts +2 -0
- package/esm/array/CommonPropKeys.spec.d.ts.map +1 -0
- package/esm/array/CommonPropKeys.spec.js +11 -0
- package/esm/array/CommonPropKeys.spec.js.map +1 -0
- package/esm/array/Concat.spec.d.ts +2 -0
- package/esm/array/Concat.spec.d.ts.map +1 -0
- package/esm/array/Concat.spec.js +14 -0
- package/esm/array/Concat.spec.js.map +1 -0
- package/esm/array/CreateTuple.d.ts +6 -0
- package/esm/array/CreateTuple.d.ts.map +1 -1
- package/esm/array/CreateTuple.spec.d.ts +2 -0
- package/esm/array/CreateTuple.spec.d.ts.map +1 -0
- package/esm/array/CreateTuple.spec.js +29 -0
- package/esm/array/CreateTuple.spec.js.map +1 -0
- package/esm/array/DropFirst.spec.d.ts +2 -0
- package/esm/array/DropFirst.spec.d.ts.map +1 -0
- package/esm/array/DropFirst.spec.js +15 -0
- package/esm/array/DropFirst.spec.js.map +1 -0
- package/esm/array/DropLast.spec.d.ts +2 -0
- package/esm/array/DropLast.spec.d.ts.map +1 -0
- package/esm/array/DropLast.spec.js +15 -0
- package/esm/array/DropLast.spec.js.map +1 -0
- package/esm/array/DropMatch.spec.d.ts +2 -0
- package/esm/array/DropMatch.spec.d.ts.map +1 -0
- package/esm/array/DropMatch.spec.js +133 -0
- package/esm/array/DropMatch.spec.js.map +1 -0
- package/esm/array/Filter.d.ts +7 -0
- package/esm/array/Filter.d.ts.map +1 -1
- package/esm/array/Filter.spec.d.ts +2 -0
- package/esm/array/Filter.spec.d.ts.map +1 -0
- package/esm/array/Filter.spec.js +70 -0
- package/esm/array/Filter.spec.js.map +1 -0
- package/esm/array/FindFirst.d.ts +3 -0
- package/esm/array/FindFirst.d.ts.map +1 -1
- package/esm/array/FindFirst.spec.d.ts +2 -0
- package/esm/array/FindFirst.spec.d.ts.map +1 -0
- package/esm/array/FindFirst.spec.js +15 -0
- package/esm/array/FindFirst.spec.js.map +1 -0
- package/esm/array/FindLast.spec.d.ts +2 -0
- package/esm/array/FindLast.spec.d.ts.map +1 -0
- package/esm/array/FindLast.spec.js +15 -0
- package/esm/array/FindLast.spec.js.map +1 -0
- package/esm/array/Head.spec.d.ts +2 -0
- package/esm/array/Head.spec.d.ts.map +1 -0
- package/esm/array/Head.spec.js +11 -0
- package/esm/array/Head.spec.js.map +1 -0
- package/esm/array/IntersectOfProps.d.ts +7 -0
- package/esm/array/IntersectOfProps.d.ts.map +1 -1
- package/esm/array/IntersectOfProps.spec.d.ts +2 -0
- package/esm/array/IntersectOfProps.spec.d.ts.map +1 -0
- package/esm/array/IntersectOfProps.spec.js +8 -0
- package/esm/array/IntersectOfProps.spec.js.map +1 -0
- package/esm/array/Last.d.ts +3 -0
- package/esm/array/Last.d.ts.map +1 -1
- package/esm/array/Last.spec.d.ts +2 -0
- package/esm/array/Last.spec.d.ts.map +1 -0
- package/esm/array/Last.spec.js +20 -0
- package/esm/array/Last.spec.js.map +1 -0
- package/esm/array/PadLeft.spec.d.ts +2 -0
- package/esm/array/PadLeft.spec.d.ts.map +1 -0
- package/esm/array/PadLeft.spec.js +21 -0
- package/esm/array/PadLeft.spec.js.map +1 -0
- package/esm/array/Reverse.spec.d.ts +2 -0
- package/esm/array/Reverse.spec.d.ts.map +1 -0
- package/esm/array/Reverse.spec.js +14 -0
- package/esm/array/Reverse.spec.js.map +1 -0
- package/esm/array/Some.spec.d.ts +2 -0
- package/esm/array/Some.spec.d.ts.map +1 -0
- package/esm/array/Some.spec.js +65 -0
- package/esm/array/Some.spec.js.map +1 -0
- package/esm/array/Tail.d.ts +3 -0
- package/esm/array/Tail.d.ts.map +1 -1
- package/esm/array/Tail.spec.d.ts +2 -0
- package/esm/array/Tail.spec.d.ts.map +1 -0
- package/esm/array/Tail.spec.js +17 -0
- package/esm/array/Tail.spec.js.map +1 -0
- package/esm/array/UnionOfProps.d.ts +7 -0
- package/esm/array/UnionOfProps.d.ts.map +1 -1
- package/esm/array/UnionOfProps.spec.d.ts +2 -0
- package/esm/array/UnionOfProps.spec.d.ts.map +1 -0
- package/esm/array/UnionOfProps.spec.js +8 -0
- package/esm/array/UnionOfProps.spec.js.map +1 -0
- package/esm/array/UnionOfValues.d.ts +7 -0
- package/esm/array/UnionOfValues.d.ts.map +1 -1
- package/esm/array/UnionOfValues.spec.d.ts +2 -0
- package/esm/array/UnionOfValues.spec.d.ts.map +1 -0
- package/esm/array/UnionOfValues.spec.js +8 -0
- package/esm/array/UnionOfValues.spec.js.map +1 -0
- package/esm/array/drop.d.ts +6 -0
- package/esm/array/drop.d.ts.map +1 -1
- package/esm/array/drop.js +3 -0
- package/esm/array/drop.js.map +1 -1
- package/esm/array/literalArray.spec.d.ts +2 -0
- package/esm/array/literalArray.spec.d.ts.map +1 -0
- package/esm/array/literalArray.spec.js +6 -0
- package/esm/array/literalArray.spec.js.map +1 -0
- package/esm/array/reduceWhile.spec.d.ts +2 -0
- package/esm/array/reduceWhile.spec.d.ts.map +1 -0
- package/esm/array/reduceWhile.spec.js +16 -0
- package/esm/array/reduceWhile.spec.js.map +1 -0
- package/esm/assertion/assertType.d.ts +4 -0
- package/esm/assertion/assertType.d.ts.map +1 -1
- package/esm/assertion/assertType.js +8 -0
- package/esm/assertion/assertType.js.map +1 -1
- package/esm/assertion/assertType.spec.d.ts +2 -0
- package/esm/assertion/assertType.spec.d.ts.map +1 -0
- package/esm/assertion/assertType.spec.js +462 -0
- package/esm/assertion/assertType.spec.js.map +1 -0
- package/esm/binary/Bit.d.ts +6 -0
- package/esm/binary/Bit.d.ts.map +1 -0
- package/esm/binary/Bit.js +2 -0
- package/esm/binary/Bit.js.map +1 -0
- package/esm/binary/_binary.d.ts +2 -0
- package/esm/binary/_binary.d.ts.map +1 -0
- package/esm/binary/_binary.js +2 -0
- package/esm/binary/_binary.js.map +1 -0
- package/esm/binary/index.d.ts +3 -0
- package/esm/binary/index.d.ts.map +1 -0
- package/esm/binary/index.js +3 -0
- package/esm/binary/index.js.map +1 -0
- package/esm/binary/index.spec.d.ts +2 -0
- package/esm/binary/index.spec.d.ts.map +1 -0
- package/esm/binary/index.spec.js +24 -0
- package/esm/binary/index.spec.js.map +1 -0
- package/esm/class/AnyConstructor.spec.d.ts +2 -0
- package/esm/class/AnyConstructor.spec.d.ts.map +1 -0
- package/esm/class/AnyConstructor.spec.js +10 -0
- package/esm/class/AnyConstructor.spec.js.map +1 -0
- package/esm/class/isConstructor.spec.d.ts +2 -0
- package/esm/class/isConstructor.spec.d.ts.map +1 -0
- package/esm/class/isConstructor.spec.js +44 -0
- package/esm/class/isConstructor.spec.js.map +1 -0
- package/esm/function/AnyFunction.spec.d.ts +2 -0
- package/esm/function/AnyFunction.spec.d.ts.map +1 -0
- package/esm/function/AnyFunction.spec.js +18 -0
- package/esm/function/AnyFunction.spec.js.map +1 -0
- package/esm/functional/ChainFn.d.ts +3 -0
- package/esm/functional/ChainFn.d.ts.map +1 -1
- package/esm/functional/ChainFn.spec.d.ts +2 -0
- package/esm/functional/ChainFn.spec.d.ts.map +1 -0
- package/esm/functional/ChainFn.spec.js +5 -0
- package/esm/functional/ChainFn.spec.js.map +1 -0
- package/esm/functional/Maybe.d.ts +13 -0
- package/esm/functional/Maybe.d.ts.map +1 -0
- package/esm/functional/Maybe.js +8 -0
- package/esm/functional/Maybe.js.map +1 -0
- package/esm/functional/Maybe.spec.d.ts +2 -0
- package/esm/functional/Maybe.spec.d.ts.map +1 -0
- package/esm/functional/Maybe.spec.js +33 -0
- package/esm/functional/Maybe.spec.js.map +1 -0
- package/esm/functional/compose.d.ts +3 -0
- package/esm/functional/compose.d.ts.map +1 -1
- package/esm/functional/compose.js +4 -0
- package/esm/functional/compose.js.map +1 -1
- package/esm/functional/compose.spec.d.ts +2 -0
- package/esm/functional/compose.spec.d.ts.map +1 -0
- package/esm/functional/compose.spec.js +24 -0
- package/esm/functional/compose.spec.js.map +1 -0
- package/esm/index.js +2 -0
- package/esm/index.js.map +1 -1
- package/esm/math/Abs.spec.d.ts +2 -0
- package/esm/math/Abs.spec.d.ts.map +1 -0
- package/esm/math/Abs.spec.js +12 -0
- package/esm/math/Abs.spec.js.map +1 -0
- package/esm/math/Add.d.ts +6 -0
- package/esm/math/Add.d.ts.map +1 -1
- package/esm/math/Add.spec.d.ts +2 -0
- package/esm/math/Add.spec.d.ts.map +1 -0
- package/esm/math/Add.spec.js +71 -0
- package/esm/math/Add.spec.js.map +1 -0
- package/esm/math/Digit.d.ts +3 -0
- package/esm/math/Digit.d.ts.map +1 -1
- package/esm/math/Digit.spec.d.ts +2 -0
- package/esm/math/Digit.spec.d.ts.map +1 -0
- package/esm/math/Digit.spec.js +157 -0
- package/esm/math/Digit.spec.js.map +1 -0
- package/esm/math/GreaterThan.spec.d.ts +2 -0
- package/esm/math/GreaterThan.spec.d.ts.map +1 -0
- package/esm/math/GreaterThan.spec.js +61 -0
- package/esm/math/GreaterThan.spec.js.map +1 -0
- package/esm/math/IsPositive.d.ts +5 -0
- package/esm/math/IsPositive.d.ts.map +1 -1
- package/esm/math/IsPositive.spec.d.ts +2 -0
- package/esm/math/IsPositive.spec.d.ts.map +1 -0
- package/esm/math/IsPositive.spec.js +13 -0
- package/esm/math/IsPositive.spec.js.map +1 -0
- package/esm/math/IsWhole.d.ts +5 -0
- package/esm/math/IsWhole.d.ts.map +1 -1
- package/esm/math/IsWhole.spec.d.ts +2 -0
- package/esm/math/IsWhole.spec.d.ts.map +1 -0
- package/esm/math/IsWhole.spec.js +17 -0
- package/esm/math/IsWhole.spec.js.map +1 -0
- package/esm/math/Max.spec.d.ts +2 -0
- package/esm/math/Max.spec.d.ts.map +1 -0
- package/esm/math/Max.spec.js +48 -0
- package/esm/math/Max.spec.js.map +1 -0
- package/esm/math/Subtract.d.ts +3 -0
- package/esm/math/Subtract.d.ts.map +1 -1
- package/esm/math/Subtract.spec.d.ts +2 -0
- package/esm/math/Subtract.spec.d.ts.map +1 -0
- package/esm/math/Subtract.spec.js +35 -0
- package/esm/math/Subtract.spec.js.map +1 -0
- package/esm/nodejs/isNodeError.d.ts +5 -0
- package/esm/nodejs/isNodeError.d.ts.map +1 -1
- package/esm/nodejs/isNodeError.js +5 -0
- package/esm/nodejs/isNodeError.js.map +1 -1
- package/esm/nodejs/isNodeError.spec.d.ts +2 -0
- package/esm/nodejs/isNodeError.spec.d.ts.map +1 -0
- package/esm/nodejs/isNodeError.spec.js +11 -0
- package/esm/nodejs/isNodeError.spec.js.map +1 -0
- package/esm/nominal-types/Brand.d.ts +10 -0
- package/esm/nominal-types/Brand.d.ts.map +1 -1
- package/esm/nominal-types/Brand.js +3 -0
- package/esm/nominal-types/Brand.js.map +1 -1
- package/esm/nominal-types/Brand.spec.d.ts +2 -0
- package/esm/nominal-types/Brand.spec.d.ts.map +1 -0
- package/esm/nominal-types/Brand.spec.js +38 -0
- package/esm/nominal-types/Brand.spec.js.map +1 -0
- package/esm/nominal-types/Flavor.d.ts +12 -0
- package/esm/nominal-types/Flavor.d.ts.map +1 -1
- package/esm/nominal-types/Flavor.js +3 -0
- package/esm/nominal-types/Flavor.js.map +1 -1
- package/esm/nominal-types/Flavor.spec.d.ts +2 -0
- package/esm/nominal-types/Flavor.spec.d.ts.map +1 -0
- package/esm/nominal-types/Flavor.spec.js +40 -0
- package/esm/nominal-types/Flavor.spec.js.map +1 -0
- package/esm/nominal-types/nominalMatch.spec.d.ts +2 -0
- package/esm/nominal-types/nominalMatch.spec.d.ts.map +1 -0
- package/esm/nominal-types/nominalMatch.spec.js +50 -0
- package/esm/nominal-types/nominalMatch.spec.js.map +1 -0
- package/esm/object/ANotB.spec.d.ts +2 -0
- package/esm/object/ANotB.spec.d.ts.map +1 -0
- package/esm/object/ANotB.spec.js +54 -0
- package/esm/object/ANotB.spec.js.map +1 -0
- package/esm/object/ExcludePropType.d.ts +3 -0
- package/esm/object/ExcludePropType.d.ts.map +1 -1
- package/esm/object/ExcludePropType.spec.d.ts +2 -0
- package/esm/object/ExcludePropType.spec.d.ts.map +1 -0
- package/esm/object/ExcludePropType.spec.js +6 -0
- package/esm/object/ExcludePropType.spec.js.map +1 -0
- package/esm/object/IsDisjoint.d.ts +4 -0
- package/esm/object/IsDisjoint.d.ts.map +1 -1
- package/esm/object/IsDisjoint.spec.d.ts +2 -0
- package/esm/object/IsDisjoint.spec.d.ts.map +1 -0
- package/esm/object/IsDisjoint.spec.js +14 -0
- package/esm/object/IsDisjoint.spec.js.map +1 -0
- package/esm/object/IsRecord.spec.d.ts +2 -0
- package/esm/object/IsRecord.spec.d.ts.map +1 -0
- package/esm/object/IsRecord.spec.js +20 -0
- package/esm/object/IsRecord.spec.js.map +1 -0
- package/esm/object/KeyTypes.d.ts +5 -0
- package/esm/object/KeyTypes.d.ts.map +1 -1
- package/esm/object/KeyTypes.spec.d.ts +2 -0
- package/esm/object/KeyTypes.spec.d.ts.map +1 -0
- package/esm/object/KeyTypes.spec.js +8 -0
- package/esm/object/KeyTypes.spec.js.map +1 -0
- package/esm/object/KeyofOptional.d.ts +3 -0
- package/esm/object/KeyofOptional.d.ts.map +1 -1
- package/esm/object/KeyofOptional.spec.d.ts +2 -0
- package/esm/object/KeyofOptional.spec.d.ts.map +1 -0
- package/esm/object/KeyofOptional.spec.js +5 -0
- package/esm/object/KeyofOptional.spec.js.map +1 -0
- package/esm/object/KeysWithDiffType.spec.d.ts +2 -0
- package/esm/object/KeysWithDiffType.spec.d.ts.map +1 -0
- package/esm/object/KeysWithDiffType.spec.js +14 -0
- package/esm/object/KeysWithDiffType.spec.js.map +1 -0
- package/esm/object/KnownKeys.js +3 -0
- package/esm/object/KnownKeys.js.map +1 -1
- package/esm/object/KnownKeys.spec.d.ts +2 -0
- package/esm/object/KnownKeys.spec.d.ts.map +1 -0
- package/esm/object/KnownKeys.spec.js +28 -0
- package/esm/object/KnownKeys.spec.js.map +1 -0
- package/esm/object/OptionalKeys.spec.d.ts +2 -0
- package/esm/object/OptionalKeys.spec.d.ts.map +1 -0
- package/esm/object/OptionalKeys.spec.js +14 -0
- package/esm/object/OptionalKeys.spec.js.map +1 -0
- package/esm/object/Partial.d.ts +9 -0
- package/esm/object/Partial.d.ts.map +1 -1
- package/esm/object/Partial.spec.d.ts +2 -0
- package/esm/object/Partial.spec.d.ts.map +1 -0
- package/esm/object/Partial.spec.js +24 -0
- package/esm/object/Partial.spec.js.map +1 -0
- package/esm/object/RecursiveIntersect.d.ts +11 -0
- package/esm/object/RecursiveIntersect.d.ts.map +1 -1
- package/esm/object/RecursiveIntersect.spec.d.ts +2 -0
- package/esm/object/RecursiveIntersect.spec.d.ts.map +1 -0
- package/esm/object/RecursiveIntersect.spec.js +31 -0
- package/esm/object/RecursiveIntersect.spec.js.map +1 -0
- package/esm/object/RecursiveRequired.spec.d.ts +2 -0
- package/esm/object/RecursiveRequired.spec.d.ts.map +1 -0
- package/esm/object/RecursiveRequired.spec.js +32 -0
- package/esm/object/RecursiveRequired.spec.js.map +1 -0
- package/esm/object/Required.js +1 -0
- package/esm/object/Required.js.map +1 -1
- package/esm/object/Required.spec.d.ts +2 -0
- package/esm/object/Required.spec.d.ts.map +1 -0
- package/esm/object/Required.spec.js +14 -0
- package/esm/object/Required.spec.js.map +1 -0
- package/esm/object/RequiredKeys.spec.d.ts +2 -0
- package/esm/object/RequiredKeys.spec.d.ts.map +1 -0
- package/esm/object/RequiredKeys.spec.js +14 -0
- package/esm/object/RequiredKeys.spec.js.map +1 -0
- package/esm/object/SpreadRecord.spec.d.ts +2 -0
- package/esm/object/SpreadRecord.spec.d.ts.map +1 -0
- package/esm/object/SpreadRecord.spec.js +8 -0
- package/esm/object/SpreadRecord.spec.js.map +1 -0
- package/esm/object/ValueOf.spec.d.ts +2 -0
- package/esm/object/ValueOf.spec.d.ts.map +1 -0
- package/esm/object/ValueOf.spec.js +27 -0
- package/esm/object/ValueOf.spec.js.map +1 -0
- package/esm/object/everyKey.spec.d.ts +2 -0
- package/esm/object/everyKey.spec.d.ts.map +1 -0
- package/esm/object/everyKey.spec.js +10 -0
- package/esm/object/everyKey.spec.js.map +1 -0
- package/esm/object/facade.d.ts +3 -0
- package/esm/object/facade.d.ts.map +1 -1
- package/esm/object/facade.js +3 -0
- package/esm/object/facade.js.map +1 -1
- package/esm/object/facade.spec.d.ts +2 -0
- package/esm/object/facade.spec.d.ts.map +1 -0
- package/esm/object/facade.spec.js +18 -0
- package/esm/object/facade.spec.js.map +1 -0
- package/esm/object/filterKey.spec.d.ts +2 -0
- package/esm/object/filterKey.spec.d.ts.map +1 -0
- package/esm/object/filterKey.spec.js +8 -0
- package/esm/object/filterKey.spec.js.map +1 -0
- package/esm/object/findKey.spec.d.ts +2 -0
- package/esm/object/findKey.spec.d.ts.map +1 -0
- package/esm/object/findKey.spec.js +8 -0
- package/esm/object/findKey.spec.js.map +1 -0
- package/esm/object/forEachKey.spec.d.ts +2 -0
- package/esm/object/forEachKey.spec.d.ts.map +1 -0
- package/esm/object/forEachKey.spec.js +9 -0
- package/esm/object/forEachKey.spec.js.map +1 -0
- package/esm/object/getField.spec.d.ts +2 -0
- package/esm/object/getField.spec.d.ts.map +1 -0
- package/esm/object/getField.spec.js +18 -0
- package/esm/object/getField.spec.js.map +1 -0
- package/esm/object/hasKey.spec.d.ts +2 -0
- package/esm/object/hasKey.spec.d.ts.map +1 -0
- package/esm/object/hasKey.spec.js +23 -0
- package/esm/object/hasKey.spec.js.map +1 -0
- package/esm/object/hasProperty.spec.d.ts +2 -0
- package/esm/object/hasProperty.spec.d.ts.map +1 -0
- package/esm/object/hasProperty.spec.js +10 -0
- package/esm/object/hasProperty.spec.js.map +1 -0
- package/esm/object/mapKey.spec.d.ts +2 -0
- package/esm/object/mapKey.spec.d.ts.map +1 -0
- package/esm/object/mapKey.spec.js +8 -0
- package/esm/object/mapKey.spec.js.map +1 -0
- package/esm/object/mapProperties.d.ts +8 -0
- package/esm/object/mapProperties.d.ts.map +1 -1
- package/esm/object/mapProperties.js +8 -0
- package/esm/object/mapProperties.js.map +1 -1
- package/esm/object/mapProperties.spec.d.ts +2 -0
- package/esm/object/mapProperties.spec.d.ts.map +1 -0
- package/esm/object/mapProperties.spec.js +30 -0
- package/esm/object/mapProperties.spec.js.map +1 -0
- package/esm/object/omit.d.ts +3 -0
- package/esm/object/omit.d.ts.map +1 -1
- package/esm/object/omit.spec.d.ts +2 -0
- package/esm/object/omit.spec.d.ts.map +1 -0
- package/esm/object/omit.spec.js +48 -0
- package/esm/object/omit.spec.js.map +1 -0
- package/esm/object/pick.d.ts +7 -0
- package/esm/object/pick.d.ts.map +1 -1
- package/esm/object/pick.spec.d.ts +2 -0
- package/esm/object/pick.spec.d.ts.map +1 -0
- package/esm/object/pick.spec.js +28 -0
- package/esm/object/pick.spec.js.map +1 -0
- package/esm/object/record.d.ts +3 -0
- package/esm/object/record.d.ts.map +1 -1
- package/esm/object/record.js +3 -0
- package/esm/object/record.js.map +1 -1
- package/esm/object/record.spec.d.ts +2 -0
- package/esm/object/record.spec.d.ts.map +1 -0
- package/esm/object/record.spec.js +44 -0
- package/esm/object/record.spec.js.map +1 -0
- package/esm/object/reduceKey.d.ts +3 -0
- package/esm/object/reduceKey.d.ts.map +1 -1
- package/esm/object/reduceKey.js +3 -0
- package/esm/object/reduceKey.js.map +1 -1
- package/esm/object/reduceKey.spec.d.ts +2 -0
- package/esm/object/reduceKey.spec.d.ts.map +1 -0
- package/esm/object/reduceKey.spec.js +17 -0
- package/esm/object/reduceKey.spec.js.map +1 -0
- package/esm/object/replaceProperty.spec.d.ts +2 -0
- package/esm/object/replaceProperty.spec.d.ts.map +1 -0
- package/esm/object/replaceProperty.spec.js +13 -0
- package/esm/object/replaceProperty.spec.js.map +1 -0
- package/esm/object/someKey.spec.d.ts +2 -0
- package/esm/object/someKey.spec.d.ts.map +1 -0
- package/esm/object/someKey.spec.js +6 -0
- package/esm/object/someKey.spec.js.map +1 -0
- package/esm/object/split.d.ts +4 -0
- package/esm/object/split.d.ts.map +1 -1
- package/esm/object/split.spec.d.ts +2 -0
- package/esm/object/split.spec.d.ts.map +1 -0
- package/esm/object/split.spec.js +80 -0
- package/esm/object/split.spec.js.map +1 -0
- package/esm/object/typeOverrideIncompatible.spec.d.ts +2 -0
- package/esm/object/typeOverrideIncompatible.spec.d.ts.map +1 -0
- package/esm/object/typeOverrideIncompatible.spec.js +17 -0
- package/esm/object/typeOverrideIncompatible.spec.js.map +1 -0
- package/esm/predicates/CanAssign.d.ts +3 -0
- package/esm/predicates/CanAssign.d.ts.map +1 -1
- package/esm/predicates/CanAssign.spec.d.ts +2 -0
- package/esm/predicates/CanAssign.spec.d.ts.map +1 -0
- package/esm/predicates/CanAssign.spec.js +54 -0
- package/esm/predicates/CanAssign.spec.js.map +1 -0
- package/esm/predicates/Equal.d.ts +6 -0
- package/esm/predicates/Equal.d.ts.map +1 -1
- package/esm/predicates/Equal.spec.d.ts +2 -0
- package/esm/predicates/Equal.spec.d.ts.map +1 -0
- package/esm/predicates/Equal.spec.js +60 -0
- package/esm/predicates/Equal.spec.js.map +1 -0
- package/esm/predicates/If.spec.d.ts +2 -0
- package/esm/predicates/If.spec.d.ts.map +1 -0
- package/esm/predicates/If.spec.js +12 -0
- package/esm/predicates/If.spec.js.map +1 -0
- package/esm/predicates/IsEmptyObject.spec.d.ts +2 -0
- package/esm/predicates/IsEmptyObject.spec.d.ts.map +1 -0
- package/esm/predicates/IsEmptyObject.spec.js +13 -0
- package/esm/predicates/IsEmptyObject.spec.js.map +1 -0
- package/esm/predicates/index.spec.d.ts +2 -0
- package/esm/predicates/index.spec.d.ts.map +1 -0
- package/esm/predicates/index.spec.js +60 -0
- package/esm/predicates/index.spec.js.map +1 -0
- package/esm/predicates/isType.js +6 -0
- package/esm/predicates/isType.js.map +1 -1
- package/esm/predicates/isType.spec.d.ts +2 -0
- package/esm/predicates/isType.spec.d.ts.map +1 -0
- package/esm/predicates/isType.spec.js +101 -0
- package/esm/predicates/isType.spec.js.map +1 -0
- package/esm/predicates/logical.spec.d.ts +2 -0
- package/esm/predicates/logical.spec.d.ts.map +1 -0
- package/esm/predicates/logical.spec.js +56 -0
- package/esm/predicates/logical.spec.js.map +1 -0
- package/esm/promise/PromiseValue.d.ts +3 -0
- package/esm/promise/PromiseValue.d.ts.map +1 -1
- package/esm/promise/PromiseValue.spec.d.ts +2 -0
- package/esm/promise/PromiseValue.spec.d.ts.map +1 -0
- package/esm/promise/PromiseValue.spec.js +6 -0
- package/esm/promise/PromiseValue.spec.js.map +1 -0
- package/esm/promise/PromiseValueMerge.d.ts +3 -0
- package/esm/promise/PromiseValueMerge.d.ts.map +1 -1
- package/esm/promise/PromiseValueMerge.spec.d.ts +2 -0
- package/esm/promise/PromiseValueMerge.spec.d.ts.map +1 -0
- package/esm/promise/PromiseValueMerge.spec.js +7 -0
- package/esm/promise/PromiseValueMerge.spec.js.map +1 -0
- package/esm/promise/isPromise.js +1 -0
- package/esm/promise/isPromise.js.map +1 -1
- package/esm/promise/isPromise.spec.d.ts +2 -0
- package/esm/promise/isPromise.spec.d.ts.map +1 -0
- package/esm/promise/isPromise.spec.js +23 -0
- package/esm/promise/isPromise.spec.js.map +1 -0
- package/esm/promise/mapSeries.spec.d.ts +2 -0
- package/esm/promise/mapSeries.spec.d.ts.map +1 -0
- package/esm/promise/mapSeries.spec.js +11 -0
- package/esm/promise/mapSeries.spec.js.map +1 -0
- package/esm/testing/stub.js +3 -0
- package/esm/testing/stub.js.map +1 -1
- package/esm/testing/stub.spec.d.ts +2 -0
- package/esm/testing/stub.spec.d.ts.map +1 -0
- package/esm/testing/stub.spec.js +46 -0
- package/esm/testing/stub.spec.js.map +1 -0
- package/esm/utils/Widen.d.ts +4 -0
- package/esm/utils/Widen.d.ts.map +1 -1
- package/esm/utils/as.d.ts +3 -0
- package/esm/utils/as.d.ts.map +1 -1
- package/esm/utils/as.js +3 -0
- package/esm/utils/as.js.map +1 -1
- package/esm/utils/as.spec.d.ts +2 -0
- package/esm/utils/as.spec.d.ts.map +1 -0
- package/esm/utils/as.spec.js +40 -0
- package/esm/utils/as.spec.js.map +1 -0
- package/package.json +14 -7
- package/ts/index.ts +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pick.spec.d.ts","sourceRoot":"","sources":["../../ts/object/pick.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { assertType, canAssign, pick } from '../index.js';
|
|
2
|
+
test('pick properties from object', () => {
|
|
3
|
+
const actual = pick({ a: 1, b: 2 }, 'a');
|
|
4
|
+
expect(actual).toEqual({ a: 1 });
|
|
5
|
+
});
|
|
6
|
+
test('distributive pick', () => {
|
|
7
|
+
const x = { type: 'invoke', payload: [] };
|
|
8
|
+
const actions = [];
|
|
9
|
+
actions.push({ ...x, id: '1' });
|
|
10
|
+
});
|
|
11
|
+
test('distributive pick with disjoined keys', () => {
|
|
12
|
+
let x = { type: 'A' };
|
|
13
|
+
x = { type: 'B', bar: 'bar' };
|
|
14
|
+
expect(x.bar).toBe('bar');
|
|
15
|
+
});
|
|
16
|
+
test('intersection types with generic', () => {
|
|
17
|
+
function foo(input) {
|
|
18
|
+
assertType.isString(input.a);
|
|
19
|
+
}
|
|
20
|
+
foo({ a: '1' });
|
|
21
|
+
});
|
|
22
|
+
test('optional property remains optional', () => {
|
|
23
|
+
assertType.isTrue(canAssign()({}));
|
|
24
|
+
});
|
|
25
|
+
test('pick never gets empty object', () => {
|
|
26
|
+
assertType.isTrue(true);
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=pick.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pick.spec.js","sourceRoot":"","sources":["../../ts/object/pick.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAe,IAAI,EAAE,MAAM,aAAa,CAAA;AAEtE,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;IAExC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;AAClC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAe7B,MAAM,CAAC,GAAqC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IAE3E,MAAM,OAAO,GAAa,EAAE,CAAA;IAE5B,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;AACjC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;IAUjD,IAAI,CAAC,GAAoC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;IACtD,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;IAE7B,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAE3C,SAAS,GAAG,CAAI,KAAyB;QACvC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC;IACD,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAG9C,UAAU,CAAC,MAAM,CAAC,SAAS,EAAK,CAAC,EAAE,CAAC,CAAC,CAAA;AACvC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAIxC,UAAU,CAAC,MAAM,CAAC,IAAuB,CAAC,CAAA;AAC5C,CAAC,CAAC,CAAA"}
|
package/esm/object/record.d.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { Widen } from '../utils/index.js';
|
|
2
2
|
import { KeyTypes } from './KeyTypes.js';
|
|
3
|
+
/**
|
|
4
|
+
* Creates a `Record<Key, Value>`
|
|
5
|
+
*/
|
|
3
6
|
export declare function record<K extends KeyTypes, V>(value?: Record<K, V>): Record<Widen<K>, V>;
|
|
4
7
|
//# sourceMappingURL=record.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../ts/object/record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../ts/object/record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAGvF"}
|
package/esm/object/record.js
CHANGED
package/esm/object/record.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record.js","sourceRoot":"","sources":["../../ts/object/record.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"record.js","sourceRoot":"","sources":["../../ts/object/record.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,UAAU,MAAM,CAAwB,KAAoB;IAChE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAc,CAAA;IAC1C,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAwB,CAAA;AACrE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record.spec.d.ts","sourceRoot":"","sources":["../../ts/object/record.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { isType, record } from '../index.js';
|
|
2
|
+
test('create an empty record with value default to unknown', () => {
|
|
3
|
+
const a = record();
|
|
4
|
+
a[1] = 2;
|
|
5
|
+
a['a'] = 'b';
|
|
6
|
+
a[Symbol()] = true;
|
|
7
|
+
isType.equal();
|
|
8
|
+
});
|
|
9
|
+
test('specify key and value types', () => {
|
|
10
|
+
const a = record();
|
|
11
|
+
// even though the key type is string,
|
|
12
|
+
// by default JavaScript will cast number index to string
|
|
13
|
+
// so TypeScript also allows it.
|
|
14
|
+
a[1] = 2;
|
|
15
|
+
a['a'] = 3;
|
|
16
|
+
isType.equal();
|
|
17
|
+
});
|
|
18
|
+
test('no prototype', () => {
|
|
19
|
+
const a = record();
|
|
20
|
+
expect(Object.getPrototypeOf(a)).toBeNull();
|
|
21
|
+
});
|
|
22
|
+
test('infer type from initial value, the key type is widen', () => {
|
|
23
|
+
const stringRecord = record({ a: 1 });
|
|
24
|
+
isType.equal();
|
|
25
|
+
const numberRecord = record({ 1: 3 });
|
|
26
|
+
isType.equal();
|
|
27
|
+
const stringConstRecord = record({ a: 1 });
|
|
28
|
+
isType.equal();
|
|
29
|
+
const stringConstRecord2 = record({ a: 1 });
|
|
30
|
+
isType.equal();
|
|
31
|
+
const stringConstRecord3 = record({ a: 1, b: 'b' });
|
|
32
|
+
isType.equal();
|
|
33
|
+
const stringConstRecord4 = record({ a: 1, b: 'b' });
|
|
34
|
+
isType.equal();
|
|
35
|
+
});
|
|
36
|
+
test('no prototype with initial value', () => {
|
|
37
|
+
const a = record({ a: 1 });
|
|
38
|
+
expect(Object.getPrototypeOf(a)).toBeNull();
|
|
39
|
+
});
|
|
40
|
+
test('Object.keys() gets the keys of the initial value', () => {
|
|
41
|
+
const a = record({ a: 1, b: 2 });
|
|
42
|
+
expect(Object.keys(a)).toEqual(['a', 'b']);
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=record.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record.spec.js","sourceRoot":"","sources":["../../ts/object/record.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAY,MAAM,EAAE,MAAM,aAAa,CAAA;AAEtD,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;IAChE,MAAM,CAAC,GAAG,MAAM,EAAE,CAAA;IAClB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IACR,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;IACZ,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAA;IAClB,MAAM,CAAC,KAAK,EAA6C,CAAA;AAC3D,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACvC,MAAM,CAAC,GAAG,MAAM,EAAkB,CAAA;IAClC,sCAAsC;IACtC,yDAAyD;IACzD,gCAAgC;IAChC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IACR,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACV,MAAM,CAAC,KAAK,EAA0C,CAAA;AACxD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE;IACxB,MAAM,CAAC,GAAG,MAAM,EAAE,CAAA;IAClB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC7C,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;IAChE,MAAM,YAAY,GAAG,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IACrC,MAAM,CAAC,KAAK,EAAqD,CAAA;IAEjE,MAAM,YAAY,GAAG,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IACrC,MAAM,CAAC,KAAK,EAAqD,CAAA;IAEjE,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAW,CAAC,CAAA;IACnD,MAAM,CAAC,KAAK,EAAqD,CAAA;IAEjE,MAAM,kBAAkB,GAAG,MAAM,CAAC,EAAE,CAAC,EAAE,CAAU,EAAE,CAAC,CAAA;IACpD,MAAM,CAAC,KAAK,EAAsD,CAAA;IAElE,MAAM,kBAAkB,GAAG,MAAM,CAAC,EAAE,CAAC,EAAE,CAAU,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAC5D,MAAM,CAAC,KAAK,EAA+D,CAAA;IAE3E,MAAM,kBAAkB,GAAG,MAAM,CAAC,EAAE,CAAC,EAAE,CAAU,EAAE,CAAC,EAAE,GAAY,EAAE,CAAC,CAAA;IACrE,MAAM,CAAC,KAAK,EAA4D,CAAA;AAC1E,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAC1B,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC7C,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;IAC5D,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAChC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAC5C,CAAC,CAAC,CAAA"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import type { KeyTypes } from './KeyTypes.js';
|
|
2
2
|
export declare function reduceByKey<S extends Record<KeyTypes, any>, T>(subject: S, callbackfn: (previousValue: T, key: keyof S, currentIndex: number, array: string[]) => T, initialValue: T): T;
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated renamed to reduceByKey
|
|
5
|
+
*/
|
|
3
6
|
export declare const reduceKey: typeof reduceByKey;
|
|
4
7
|
//# sourceMappingURL=reduceKey.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reduceKey.d.ts","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,EAC5D,OAAO,EAAE,CAAC,EACV,UAAU,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EACxF,YAAY,EAAE,CAAC,GAAG,CAAC,CAEpB;
|
|
1
|
+
{"version":3,"file":"reduceKey.d.ts","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,EAC5D,OAAO,EAAE,CAAC,EACV,UAAU,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EACxF,YAAY,EAAE,CAAC,GAAG,CAAC,CAEpB;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,oBAAc,CAAA"}
|
package/esm/object/reduceKey.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reduceKey.js","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CACzB,OAAU,EACV,UAAwF,EACxF,YAAe;IACf,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAiB,EAAE,YAAY,CAAC,CAAA;AACrE,CAAC;
|
|
1
|
+
{"version":3,"file":"reduceKey.js","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CACzB,OAAU,EACV,UAAwF,EACxF,YAAe;IACf,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAiB,EAAE,YAAY,CAAC,CAAA;AACrE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,WAAW,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reduceKey.spec.d.ts","sourceRoot":"","sources":["../../ts/object/reduceKey.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import t from 'assert';
|
|
2
|
+
import { reduceKey } from '../index.js';
|
|
3
|
+
test('predicate key can be used as indexer of the subject', () => {
|
|
4
|
+
const subject = { a: 1, b: 2, c: 3 };
|
|
5
|
+
const actual = reduceKey(subject, (p, k) => p += subject[k], 'a');
|
|
6
|
+
t.strictEqual(actual, 'a123');
|
|
7
|
+
});
|
|
8
|
+
// currently k: never but it somehow works.
|
|
9
|
+
// Can't find a way to get k to be a more reasonable type that works with `subject[k]`
|
|
10
|
+
// So leaving it as is for now.
|
|
11
|
+
test('key type is string if subject type is plain object', () => {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
13
|
+
const subject = { a: 1 };
|
|
14
|
+
const actual = reduceKey(subject, (p, k) => p += subject[k], 'a');
|
|
15
|
+
t.strictEqual(actual, 'a1');
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=reduceKey.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reduceKey.spec.js","sourceRoot":"","sources":["../../ts/object/reduceKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACjE,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA;AAEF,2CAA2C;AAC3C,sFAAsF;AACtF,+BAA+B;AAC/B,IAAI,CAAC,oDAAoD,EAAE,GAAG,EAAE;IAC9D,wDAAwD;IACxD,MAAM,OAAO,GAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACjE,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAC7B,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replaceProperty.spec.d.ts","sourceRoot":"","sources":["../../ts/object/replaceProperty.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { assertType, replaceProperty } from '../index.js';
|
|
2
|
+
test('replaceProperty()', () => {
|
|
3
|
+
const subject = { a: 1, b: 2 };
|
|
4
|
+
const actual = replaceProperty(subject, 'a', () => 1);
|
|
5
|
+
assertType(actual);
|
|
6
|
+
expect(actual.a()).toBe(1);
|
|
7
|
+
});
|
|
8
|
+
test('ReplaceProperty<>', () => {
|
|
9
|
+
const subject = { a: 1, b: 2 };
|
|
10
|
+
const actual = subject;
|
|
11
|
+
assertType(actual);
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=replaceProperty.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replaceProperty.spec.js","sourceRoot":"","sources":["../../ts/object/replaceProperty.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAmB,MAAM,aAAa,CAAA;AAE1E,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC7B,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAW,CAAA;IACvC,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;IACrD,UAAU,CAAuB,MAAM,CAAC,CAAA;IACxC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC7B,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IAE9B,MAAM,MAAM,GAAG,OAAkD,CAAA;IAEjE,UAAU,CAAsB,MAAM,CAAC,CAAA;AACzC,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"someKey.spec.d.ts","sourceRoot":"","sources":["../../ts/object/someKey.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"someKey.spec.js","sourceRoot":"","sources":["../../ts/object/someKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAChE,CAAC,CAAC,CAAA"}
|
package/esm/object/split.d.ts
CHANGED
|
@@ -6,6 +6,10 @@ declare type Splitter<T extends AnyRecord> = Partial<{
|
|
|
6
6
|
export declare type Split<T extends AnyRecord, S extends AnyRecord> = {
|
|
7
7
|
[k in keyof S]-?: S[k] extends undefined ? T[k] : NonNullable<T[k]> | S[k];
|
|
8
8
|
};
|
|
9
|
+
/**
|
|
10
|
+
* Split an object into multiple objects.
|
|
11
|
+
* @returns [...entries, remaining]
|
|
12
|
+
*/
|
|
9
13
|
export declare function split<T extends AnyRecord, S1 extends Splitter<T>>(target: T, split1: S1): [
|
|
10
14
|
Split<T, S1>,
|
|
11
15
|
Omit<T, keyof S1>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../../ts/object/split.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGrC,aAAK,QAAQ,CAAC,CAAC,SAAS,SAAS,IAAI,OAAO,CAAC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS;CAAE,CAAC,CAAA;AAClF,oBAAY,KAAK,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,SAAS,IAAI;KAC3D,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC3E,CAAA;
|
|
1
|
+
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../../ts/object/split.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split.spec.d.ts","sourceRoot":"","sources":["../../ts/object/split.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { isType, split } from '../index.js';
|
|
2
|
+
const target = { a: 0, b: '', c: false };
|
|
3
|
+
test('can use undefined as default', () => {
|
|
4
|
+
const [{ a }] = split(target, { a: undefined });
|
|
5
|
+
isType.equal();
|
|
6
|
+
expect(a).toBe(0);
|
|
7
|
+
});
|
|
8
|
+
test('can specify default with the same type', () => {
|
|
9
|
+
const [{ a }] = split(target, { a: 2 });
|
|
10
|
+
isType.equal();
|
|
11
|
+
expect(a).toBe(0);
|
|
12
|
+
});
|
|
13
|
+
test('specifying default removes undefined and null from the type', () => {
|
|
14
|
+
const s = { b: 2 };
|
|
15
|
+
const [{ a }] = split(s, { a: 1 });
|
|
16
|
+
expect(a).toBe(1);
|
|
17
|
+
isType.equal();
|
|
18
|
+
});
|
|
19
|
+
test('can default with null', () => {
|
|
20
|
+
const s = {};
|
|
21
|
+
const [{ a }] = split(s, { a: null });
|
|
22
|
+
expect(a).toBe(null);
|
|
23
|
+
isType.equal();
|
|
24
|
+
});
|
|
25
|
+
test('remove optional/undefined when default is provided', () => {
|
|
26
|
+
const s = {};
|
|
27
|
+
const [a] = split(s, { variant: 'def' });
|
|
28
|
+
isType.equal();
|
|
29
|
+
});
|
|
30
|
+
test('keep undefined when default is undefined', () => {
|
|
31
|
+
const s = {};
|
|
32
|
+
const [a] = split(s, { variant: undefined });
|
|
33
|
+
isType.equal();
|
|
34
|
+
});
|
|
35
|
+
test('can default with false', () => {
|
|
36
|
+
const s = {};
|
|
37
|
+
const [{ a }] = split(s, { a: false });
|
|
38
|
+
expect(a).toBe(false);
|
|
39
|
+
isType.equal();
|
|
40
|
+
});
|
|
41
|
+
test('can default with empty string', () => {
|
|
42
|
+
const s = {};
|
|
43
|
+
const [{ a }] = split(s, { a: '' });
|
|
44
|
+
expect(a).toBe('');
|
|
45
|
+
isType.equal();
|
|
46
|
+
});
|
|
47
|
+
test('keep falsy value other than undefined and null', () => {
|
|
48
|
+
expect(split({ a: '' }, { a: 'a' })[0].a).toBe('');
|
|
49
|
+
expect(split({ a: false }, { a: true })[0].a).toBe(false);
|
|
50
|
+
expect(split({ a: null }, { a: 'a' })[0].a).toBe('a');
|
|
51
|
+
expect(split({ a: undefined }, { a: 'a' })[0].a).toBe('a');
|
|
52
|
+
});
|
|
53
|
+
test('can specify default as one of the intersect types', () => {
|
|
54
|
+
const [a] = split({ a: undefined }, { a: '2' });
|
|
55
|
+
isType.equal();
|
|
56
|
+
expect(a).toEqual({ a: '2' });
|
|
57
|
+
});
|
|
58
|
+
test('get remaining props in the last entry', () => {
|
|
59
|
+
const [, r] = split(target, { a: undefined });
|
|
60
|
+
isType.equal();
|
|
61
|
+
expect(r).toEqual({ b: '', c: false });
|
|
62
|
+
});
|
|
63
|
+
test('work with simple Record', () => {
|
|
64
|
+
const [a] = split({}, { a: 'a' });
|
|
65
|
+
isType.equal();
|
|
66
|
+
expect(a).toEqual({ a: 'a' });
|
|
67
|
+
});
|
|
68
|
+
test('can specify multiple splitters', () => {
|
|
69
|
+
const t = { r: 'r' };
|
|
70
|
+
const [a, b, c, r] = split(t, { a: 'a' }, { b: 'b' }, { c: 'c' });
|
|
71
|
+
isType.equal();
|
|
72
|
+
isType.equal();
|
|
73
|
+
isType.equal();
|
|
74
|
+
isType.equal();
|
|
75
|
+
expect(a).toEqual({ a: 'a' });
|
|
76
|
+
expect(b).toEqual({ b: 'b' });
|
|
77
|
+
expect(c).toEqual({ c: 'c' });
|
|
78
|
+
expect(r).toEqual({ r: 'r' });
|
|
79
|
+
});
|
|
80
|
+
//# sourceMappingURL=split.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split.spec.js","sourceRoot":"","sources":["../../ts/object/split.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAE3C,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAA;AAExC,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACxC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAA;IAE/C,MAAM,CAAC,KAAK,EAA0B,CAAA;IACtC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAClD,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAEvC,MAAM,CAAC,KAAK,EAA0B,CAAA;IACtC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,6DAA6D,EAAE,GAAG,EAAE;IAEvE,MAAM,CAAC,GAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IAErB,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAClC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAEjB,MAAM,CAAC,KAAK,EAA0B,CAAA;AACxC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACjC,MAAM,CAAC,GAA0B,EAAE,CAAA;IACnC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IAErC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEpB,MAAM,CAAC,KAAK,EAAiC,CAAA;AAC/C,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,oDAAoD,EAAE,GAAG,EAAE;IAI9D,MAAM,CAAC,GAAM,EAAE,CAAA;IACf,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;IACxC,MAAM,CAAC,KAAK,EAAyC,CAAA;AACvD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;IAIpD,MAAM,CAAC,GAAM,EAAE,CAAA;IACf,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAA;IAC5C,MAAM,CAAC,KAAK,EAAqD,CAAA;AACnE,CAAC,CAAC,CAAA;AAGF,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE;IAClC,MAAM,CAAC,GAA6B,EAAE,CAAA;IACtC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAEtC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAErB,MAAM,CAAC,KAAK,EAAoC,CAAA;AAClD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;IACzC,MAAM,CAAC,GAAmC,EAAE,CAAA;IAC5C,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IAEnC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAElB,MAAM,CAAC,KAAK,EAAmC,CAAA;AACjD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;IAC1D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAClD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAEzD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAqB,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACtE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,SAA+B,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAClF,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;IAC7D,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,EAAE,SAAwC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAE9E,MAAM,CAAC,KAAK,EAA0C,CAAA;IACtD,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;IACjD,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAA;IAE7C,MAAM,CAAC,KAAK,EAA6C,CAAA;IACzD,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;AACxC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAA4B,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAE3D,MAAM,CAAC,KAAK,EAAiC,CAAA;IAC7C,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC1C,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAwD,CAAA;IAC1E,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAC1B,EAAE,CAAC,EAAE,GAAG,EAAE,EACV,EAAE,CAAC,EAAE,GAAG,EAAE,EACV,EAAE,CAAC,EAAE,GAAG,EAAE,CACX,CAAA;IACD,MAAM,CAAC,KAAK,EAAiC,CAAA;IAC7C,MAAM,CAAC,KAAK,EAAiC,CAAA;IAC7C,MAAM,CAAC,KAAK,EAAiC,CAAA;IAC7C,MAAM,CAAC,KAAK,EAA8C,CAAA;IAC1D,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7B,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7B,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAC7B,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeOverrideIncompatible.spec.d.ts","sourceRoot":"","sources":["../../ts/object/typeOverrideIncompatible.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { typeOverrideIncompatible } from '../index.js';
|
|
2
|
+
test('same type override has no property', () => {
|
|
3
|
+
const transform = typeOverrideIncompatible();
|
|
4
|
+
// TODO: find a way to assert `override` has no property
|
|
5
|
+
transform({ a: 1 }, {});
|
|
6
|
+
});
|
|
7
|
+
test('disjoint type override is A', () => {
|
|
8
|
+
const transform = typeOverrideIncompatible();
|
|
9
|
+
transform({ b: 2 }, { a: 1 });
|
|
10
|
+
});
|
|
11
|
+
test('intersect type override is ANotB', () => {
|
|
12
|
+
const a = { a: 1, b: 2 };
|
|
13
|
+
const b = { b: 3, c: 3 };
|
|
14
|
+
const transform = typeOverrideIncompatible();
|
|
15
|
+
transform(b, { a: 1, b: 2 });
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=typeOverrideIncompatible.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeOverrideIncompatible.spec.js","sourceRoot":"","sources":["../../ts/object/typeOverrideIncompatible.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAEtD,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAE9C,MAAM,SAAS,GAAG,wBAAwB,EAAK,CAAA;IAE/C,wDAAwD;IACxD,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;AACzB,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAEvC,MAAM,SAAS,GAAG,wBAAwB,EAAK,CAAA;IAE/C,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAC5C,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAW,CAAA;IACjC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAW,CAAA;IACjC,MAAM,SAAS,GAAG,wBAAwB,EAAY,CAAA;IAEtD,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;AAC9B,CAAC,CAAC,CAAA"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import type { NotExtendable } from './Extends.js';
|
|
2
2
|
import type { IsEmptyObject } from './IsEmptyObject.js';
|
|
3
|
+
/**
|
|
4
|
+
* Can `A` assign to `B`
|
|
5
|
+
*/
|
|
3
6
|
export declare type CanAssign<A, B, Then = true, Else = false> = IsEmptyObject<A> extends true ? Record<string, unknown> extends B ? Then : Else : boolean extends A ? (boolean extends B ? Then : Else) : A extends B ? Then : Else;
|
|
4
7
|
export declare type IsAssign<A, B, Then = true, Else = false> = CanAssign<A, B, Then, Else>;
|
|
5
8
|
export declare function canAssign<T>(canAssign: false): <S>(subject: NotExtendable<S, T>) => true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CanAssign.d.ts","sourceRoot":"","sources":["../../ts/predicates/CanAssign.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"CanAssign.d.ts","sourceRoot":"","sources":["../../ts/predicates/CanAssign.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD;;GAEG;AACH,oBAAY,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IACnD,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAC3B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,IAAI,GAC/C,OAAO,SAAS,CAAC,GACjB,CAAC,OAAO,SAAS,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,GACjC,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AAG7B,oBAAY,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEnF,wBAAgB,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAA;AACzF,wBAAgB,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CanAssign.spec.d.ts","sourceRoot":"","sources":["../../ts/predicates/CanAssign.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { assertType, canAssign } from '../index.js';
|
|
2
|
+
describe('CanAssign<A, B>', () => {
|
|
3
|
+
test('literal type to widen', () => {
|
|
4
|
+
assertType.isTrue(true);
|
|
5
|
+
assertType.isTrue(true);
|
|
6
|
+
assertType.isTrue(true);
|
|
7
|
+
assertType.isTrue(true);
|
|
8
|
+
assertType.isTrue(true);
|
|
9
|
+
assertType.isTrue(true);
|
|
10
|
+
assertType.isTrue(true);
|
|
11
|
+
assertType.isTrue(true);
|
|
12
|
+
assertType.isTrue(true);
|
|
13
|
+
});
|
|
14
|
+
test('base type to literal type fails', () => {
|
|
15
|
+
assertType.isFalse(false);
|
|
16
|
+
assertType.isFalse(false);
|
|
17
|
+
assertType.isFalse(false);
|
|
18
|
+
assertType.isFalse(false);
|
|
19
|
+
assertType.isFalse(false);
|
|
20
|
+
assertType.isFalse(false);
|
|
21
|
+
});
|
|
22
|
+
test('super set to sub set', () => {
|
|
23
|
+
assertType.isTrue(true);
|
|
24
|
+
});
|
|
25
|
+
test('sub set to super set fail', () => {
|
|
26
|
+
assertType.isFalse(false);
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
describe('canAssign()', () => {
|
|
30
|
+
describe('without subject', () => {
|
|
31
|
+
test('returns a function that check type at compile time', () => {
|
|
32
|
+
assertType.isTrue(canAssign()({ a: 'a' }));
|
|
33
|
+
assertType.isTrue(canAssign()({ a: 'a', b: 'b' }));
|
|
34
|
+
// fails at compile time
|
|
35
|
+
// canAssign<{ a: string }>()({ a: 1 })
|
|
36
|
+
});
|
|
37
|
+
test('work with falsy value such as empty string', () => {
|
|
38
|
+
const s = '';
|
|
39
|
+
assertType.isTrue(canAssign()(s));
|
|
40
|
+
});
|
|
41
|
+
test('work with undefined', () => {
|
|
42
|
+
assertType.isTrue(canAssign()(undefined));
|
|
43
|
+
});
|
|
44
|
+
test('canAssign false', () => {
|
|
45
|
+
const t = canAssign(false);
|
|
46
|
+
assertType.isTrue(t(undefined));
|
|
47
|
+
assertType.isTrue(t({ a: 1 }));
|
|
48
|
+
// these fails
|
|
49
|
+
// t({ a: '' })
|
|
50
|
+
// t({ a: '', b: '' })
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
//# sourceMappingURL=CanAssign.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CanAssign.spec.js","sourceRoot":"","sources":["../../ts/predicates/CanAssign.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,SAAS,EAAE,MAAM,aAAa,CAAA;AAE9D,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACjC,UAAU,CAAC,MAAM,CAAC,IAA4B,CAAC,CAAA;QAC/C,UAAU,CAAC,MAAM,CAAC,IAAuB,CAAC,CAAA;QAC1C,UAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,UAAU,CAAC,MAAM,CAAC,IAA8B,CAAC,CAAA;QACjD,UAAU,CAAC,MAAM,CAAC,IAA2B,CAAC,CAAA;QAC9C,UAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,UAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,UAAU,CAAC,MAAM,CAAC,IAAgC,CAAC,CAAA;QACnD,UAAU,CAAC,MAAM,CAAC,IAAmC,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC3C,UAAU,CAAC,OAAO,CAAC,KAA6B,CAAC,CAAA;QACjD,UAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,UAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,UAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,UAAU,CAAC,OAAO,CAAC,KAAkC,CAAC,CAAA;QACtD,UAAU,CAAC,OAAO,CAAC,KAAiC,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAChC,UAAU,CAAC,MAAM,CAAC,IAA0D,CAAC,CAAA;IAC/E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACrC,UAAU,CAAC,OAAO,CAAC,KAA2D,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,IAAI,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC9D,UAAU,CAAC,MAAM,CAAC,SAAS,EAAiB,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YACzD,UAAU,CAAC,MAAM,CAAC,SAAS,EAAiB,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YAEjE,wBAAwB;YACxB,uCAAuC;QACzC,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACtD,MAAM,CAAC,GAAG,EAAE,CAAA;YACZ,UAAU,CAAC,MAAM,CAAC,SAAS,EAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;YAC/B,UAAU,CAAC,MAAM,CAAC,SAAS,EAAsB,CAAC,SAAS,CAAC,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;YAC3B,MAAM,CAAC,GAAG,SAAS,CAAgB,KAAK,CAAC,CAAA;YACzC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;YAC/B,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;YAE9B,cAAc;YACd,eAAe;YACf,sBAAsB;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if two types are equal.
|
|
3
|
+
* Borrow from `typepark`.
|
|
4
|
+
* The simple `A extends B ? B extends A ? true : false : false`
|
|
5
|
+
* does not work with boolean type.
|
|
6
|
+
*/
|
|
1
7
|
export declare type Equal<A, B, Then = true, Else = false> = (<T>() => T extends A ? 1 : 2) extends (<T>() => T extends B ? 1 : 2) ? Then : Else;
|
|
2
8
|
export declare type IsEqual<A, B> = Equal<A, B>;
|
|
3
9
|
export declare type NotEqual<A, B, Then = true, Else = false> = (<T>() => T extends A ? 1 : 2) extends (<T>() => T extends B ? 1 : 2) ? Else : Then;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Equal.d.ts","sourceRoot":"","sources":["../../ts/predicates/Equal.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Equal.d.ts","sourceRoot":"","sources":["../../ts/predicates/Equal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,oBAAY,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAC/C,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GACnE,IAAI,GAAG,IAAI,CAAA;AACf,oBAAY,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAEvC,oBAAY,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAClD,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AACrF,oBAAY,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Equal.spec.d.ts","sourceRoot":"","sources":["../../ts/predicates/Equal.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { assertType } from '../index.js';
|
|
2
|
+
describe('TypeEquals', () => {
|
|
3
|
+
test('match', () => {
|
|
4
|
+
assertType.isTrue(true);
|
|
5
|
+
});
|
|
6
|
+
test('not match', () => {
|
|
7
|
+
assertType.isFalse(false);
|
|
8
|
+
});
|
|
9
|
+
test('literal is not equal to widen type', () => {
|
|
10
|
+
assertType.isFalse(false);
|
|
11
|
+
assertType.isFalse(false);
|
|
12
|
+
});
|
|
13
|
+
test('super set and sub set are not equal', () => {
|
|
14
|
+
assertType.isFalse(false);
|
|
15
|
+
assertType.isFalse(false);
|
|
16
|
+
});
|
|
17
|
+
test('boolean', () => {
|
|
18
|
+
assertType.isTrue(true);
|
|
19
|
+
assertType.isTrue(true);
|
|
20
|
+
assertType.isTrue(true);
|
|
21
|
+
assertType.isFalse(false);
|
|
22
|
+
assertType.isFalse(false);
|
|
23
|
+
assertType.isFalse(false);
|
|
24
|
+
assertType.isFalse(false);
|
|
25
|
+
assertType.isFalse(false);
|
|
26
|
+
assertType.isFalse(false);
|
|
27
|
+
});
|
|
28
|
+
test('same type is true', () => {
|
|
29
|
+
assertType.isTrue(true);
|
|
30
|
+
});
|
|
31
|
+
test('different type is false', () => {
|
|
32
|
+
assertType.isFalse(false);
|
|
33
|
+
});
|
|
34
|
+
test('A subset of B is false', () => {
|
|
35
|
+
assertType.isFalse(false);
|
|
36
|
+
});
|
|
37
|
+
test('B subset of A is false', () => {
|
|
38
|
+
assertType.isFalse(false);
|
|
39
|
+
});
|
|
40
|
+
test('disjoin is false', () => {
|
|
41
|
+
assertType.isFalse(false);
|
|
42
|
+
});
|
|
43
|
+
test('overlap is false', () => {
|
|
44
|
+
assertType.isFalse(false);
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
describe('TypeNotEquals', () => {
|
|
48
|
+
test('boolean', () => {
|
|
49
|
+
assertType.isFalse(false);
|
|
50
|
+
assertType.isFalse(false);
|
|
51
|
+
assertType.isFalse(false);
|
|
52
|
+
assertType.isTrue(true);
|
|
53
|
+
assertType.isTrue(true);
|
|
54
|
+
assertType.isTrue(true);
|
|
55
|
+
assertType.isTrue(true);
|
|
56
|
+
assertType.isTrue(true);
|
|
57
|
+
assertType.isTrue(true);
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
//# sourceMappingURL=Equal.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Equal.spec.js","sourceRoot":"","sources":["../../ts/predicates/Equal.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"If.spec.d.ts","sourceRoot":"","sources":["../../ts/predicates/If.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { assertType, isType } from '../index.js';
|
|
2
|
+
test('true gets Then', () => {
|
|
3
|
+
assertType(2);
|
|
4
|
+
});
|
|
5
|
+
test('false gets Else', () => {
|
|
6
|
+
assertType(3);
|
|
7
|
+
});
|
|
8
|
+
test('Then defaults to true and Else defaults to false', () => {
|
|
9
|
+
isType.t();
|
|
10
|
+
isType.f();
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=If.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"If.spec.js","sourceRoot":"","sources":["../../ts/predicates/If.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAM,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpD,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC1B,UAAU,CAAiB,CAAC,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC3B,UAAU,CAAkB,CAAC,CAAC,CAAA;AAChC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;IAC5D,MAAM,CAAC,CAAC,EAAY,CAAA;IACpB,MAAM,CAAC,CAAC,EAAa,CAAA;AACvB,CAAC,CAAC,CAAA"}
|