@vielzeug/arsenal 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/README.md +104 -0
- package/dist/_common/_abortable.d.ts +5 -0
- package/dist/_common/_abortable.d.ts.map +1 -0
- package/dist/_common/_lruMap.cjs +2 -0
- package/dist/_common/_lruMap.cjs.map +1 -0
- package/dist/_common/_lruMap.d.ts +20 -0
- package/dist/_common/_lruMap.d.ts.map +1 -0
- package/dist/_common/_lruMap.js +18 -0
- package/dist/_common/_lruMap.js.map +1 -0
- package/dist/_common/_secureRandomIndex.cjs +2 -0
- package/dist/_common/_secureRandomIndex.cjs.map +1 -0
- package/dist/_common/_secureRandomIndex.d.ts +2 -0
- package/dist/_common/_secureRandomIndex.d.ts.map +1 -0
- package/dist/_common/_secureRandomIndex.js +9 -0
- package/dist/_common/_secureRandomIndex.js.map +1 -0
- package/dist/_common/_selectorSet.cjs +2 -0
- package/dist/_common/_selectorSet.cjs.map +1 -0
- package/dist/_common/_selectorSet.d.ts +2 -0
- package/dist/_common/_selectorSet.d.ts.map +1 -0
- package/dist/_common/_selectorSet.js +16 -0
- package/dist/_common/_selectorSet.js.map +1 -0
- package/dist/_common/unsafePaths.cjs +2 -0
- package/dist/_common/unsafePaths.cjs.map +1 -0
- package/dist/_common/unsafePaths.d.ts +25 -0
- package/dist/_common/unsafePaths.d.ts.map +1 -0
- package/dist/_common/unsafePaths.js +13 -0
- package/dist/_common/unsafePaths.js.map +1 -0
- package/dist/_dev.cjs +2 -0
- package/dist/_dev.cjs.map +1 -0
- package/dist/_dev.d.ts +2 -0
- package/dist/_dev.d.ts.map +1 -0
- package/dist/_dev.js +9 -0
- package/dist/_dev.js.map +1 -0
- package/dist/array/chunk.cjs +2 -0
- package/dist/array/chunk.cjs.map +1 -0
- package/dist/array/chunk.d.ts +19 -0
- package/dist/array/chunk.d.ts.map +1 -0
- package/dist/array/chunk.js +12 -0
- package/dist/array/chunk.js.map +1 -0
- package/dist/array/compact.cjs +2 -0
- package/dist/array/compact.cjs.map +1 -0
- package/dist/array/compact.d.ts +7 -0
- package/dist/array/compact.d.ts.map +1 -0
- package/dist/array/compact.js +8 -0
- package/dist/array/compact.js.map +1 -0
- package/dist/array/compare.cjs +2 -0
- package/dist/array/compare.cjs.map +1 -0
- package/dist/array/compare.d.ts +31 -0
- package/dist/array/compare.d.ts.map +1 -0
- package/dist/array/compare.js +20 -0
- package/dist/array/compare.js.map +1 -0
- package/dist/array/compareBy.cjs +2 -0
- package/dist/array/compareBy.cjs.map +1 -0
- package/dist/array/compareBy.d.ts +24 -0
- package/dist/array/compareBy.d.ts.map +1 -0
- package/dist/array/compareBy.js +16 -0
- package/dist/array/compareBy.js.map +1 -0
- package/dist/array/contains.cjs +2 -0
- package/dist/array/contains.cjs.map +1 -0
- package/dist/array/contains.d.ts +17 -0
- package/dist/array/contains.d.ts.map +1 -0
- package/dist/array/contains.js +9 -0
- package/dist/array/contains.js.map +1 -0
- package/dist/array/countBy.cjs +2 -0
- package/dist/array/countBy.cjs.map +1 -0
- package/dist/array/countBy.d.ts +8 -0
- package/dist/array/countBy.d.ts.map +1 -0
- package/dist/array/countBy.js +14 -0
- package/dist/array/countBy.js.map +1 -0
- package/dist/array/difference.cjs +2 -0
- package/dist/array/difference.cjs.map +1 -0
- package/dist/array/difference.d.ts +6 -0
- package/dist/array/difference.d.ts.map +1 -0
- package/dist/array/difference.js +14 -0
- package/dist/array/difference.js.map +1 -0
- package/dist/array/drop.cjs +2 -0
- package/dist/array/drop.cjs.map +1 -0
- package/dist/array/drop.d.ts +5 -0
- package/dist/array/drop.d.ts.map +1 -0
- package/dist/array/drop.js +9 -0
- package/dist/array/drop.js.map +1 -0
- package/dist/array/dropLast.cjs +2 -0
- package/dist/array/dropLast.cjs.map +1 -0
- package/dist/array/dropLast.d.ts +5 -0
- package/dist/array/dropLast.d.ts.map +1 -0
- package/dist/array/dropLast.js +9 -0
- package/dist/array/dropLast.js.map +1 -0
- package/dist/array/filterMap.cjs +2 -0
- package/dist/array/filterMap.cjs.map +1 -0
- package/dist/array/filterMap.d.ts +5 -0
- package/dist/array/filterMap.d.ts.map +1 -0
- package/dist/array/filterMap.js +13 -0
- package/dist/array/filterMap.js.map +1 -0
- package/dist/array/first.cjs +2 -0
- package/dist/array/first.cjs.map +1 -0
- package/dist/array/first.d.ts +5 -0
- package/dist/array/first.d.ts.map +1 -0
- package/dist/array/first.js +8 -0
- package/dist/array/first.js.map +1 -0
- package/dist/array/flatten.cjs +2 -0
- package/dist/array/flatten.cjs.map +1 -0
- package/dist/array/flatten.d.ts +5 -0
- package/dist/array/flatten.d.ts.map +1 -0
- package/dist/array/flatten.js +11 -0
- package/dist/array/flatten.js.map +1 -0
- package/dist/array/groupBy.cjs +2 -0
- package/dist/array/groupBy.cjs.map +1 -0
- package/dist/array/groupBy.d.ts +7 -0
- package/dist/array/groupBy.d.ts.map +1 -0
- package/dist/array/groupBy.js +14 -0
- package/dist/array/groupBy.js.map +1 -0
- package/dist/array/index.d.ts +29 -0
- package/dist/array/index.d.ts.map +1 -0
- package/dist/array/indexBy.cjs +2 -0
- package/dist/array/indexBy.cjs.map +1 -0
- package/dist/array/indexBy.d.ts +7 -0
- package/dist/array/indexBy.d.ts.map +1 -0
- package/dist/array/indexBy.js +14 -0
- package/dist/array/indexBy.js.map +1 -0
- package/dist/array/intersection.cjs +2 -0
- package/dist/array/intersection.cjs.map +1 -0
- package/dist/array/intersection.d.ts +6 -0
- package/dist/array/intersection.d.ts.map +1 -0
- package/dist/array/intersection.js +14 -0
- package/dist/array/intersection.js.map +1 -0
- package/dist/array/last.cjs +2 -0
- package/dist/array/last.cjs.map +1 -0
- package/dist/array/last.d.ts +5 -0
- package/dist/array/last.d.ts.map +1 -0
- package/dist/array/last.js +8 -0
- package/dist/array/last.js.map +1 -0
- package/dist/array/partition.cjs +2 -0
- package/dist/array/partition.cjs.map +1 -0
- package/dist/array/partition.d.ts +5 -0
- package/dist/array/partition.d.ts.map +1 -0
- package/dist/array/partition.js +10 -0
- package/dist/array/partition.js.map +1 -0
- package/dist/array/replace.cjs +2 -0
- package/dist/array/replace.cjs.map +1 -0
- package/dist/array/replace.d.ts +18 -0
- package/dist/array/replace.d.ts.map +1 -0
- package/dist/array/replace.js +13 -0
- package/dist/array/replace.js.map +1 -0
- package/dist/array/rotate.cjs +2 -0
- package/dist/array/rotate.cjs.map +1 -0
- package/dist/array/rotate.d.ts +20 -0
- package/dist/array/rotate.d.ts.map +1 -0
- package/dist/array/rotate.js +10 -0
- package/dist/array/rotate.js.map +1 -0
- package/dist/array/search.cjs +2 -0
- package/dist/array/search.cjs.map +1 -0
- package/dist/array/search.d.ts +85 -0
- package/dist/array/search.d.ts.map +1 -0
- package/dist/array/search.js +47 -0
- package/dist/array/search.js.map +1 -0
- package/dist/array/sort.cjs +2 -0
- package/dist/array/sort.cjs.map +1 -0
- package/dist/array/sort.d.ts +26 -0
- package/dist/array/sort.d.ts.map +1 -0
- package/dist/array/sort.js +16 -0
- package/dist/array/sort.js.map +1 -0
- package/dist/array/take.cjs +2 -0
- package/dist/array/take.cjs.map +1 -0
- package/dist/array/take.d.ts +5 -0
- package/dist/array/take.d.ts.map +1 -0
- package/dist/array/take.js +9 -0
- package/dist/array/take.js.map +1 -0
- package/dist/array/takeLast.cjs +2 -0
- package/dist/array/takeLast.cjs.map +1 -0
- package/dist/array/takeLast.d.ts +5 -0
- package/dist/array/takeLast.d.ts.map +1 -0
- package/dist/array/takeLast.js +9 -0
- package/dist/array/takeLast.js.map +1 -0
- package/dist/array/toggle.cjs +2 -0
- package/dist/array/toggle.cjs.map +1 -0
- package/dist/array/toggle.d.ts +29 -0
- package/dist/array/toggle.d.ts.map +1 -0
- package/dist/array/toggle.js +9 -0
- package/dist/array/toggle.js.map +1 -0
- package/dist/array/union.cjs +2 -0
- package/dist/array/union.cjs.map +1 -0
- package/dist/array/union.d.ts +6 -0
- package/dist/array/union.d.ts.map +1 -0
- package/dist/array/union.js +9 -0
- package/dist/array/union.js.map +1 -0
- package/dist/array/uniq.cjs +2 -0
- package/dist/array/uniq.cjs.map +1 -0
- package/dist/array/uniq.d.ts +18 -0
- package/dist/array/uniq.d.ts.map +1 -0
- package/dist/array/uniq.js +9 -0
- package/dist/array/uniq.js.map +1 -0
- package/dist/array/unzip.cjs +2 -0
- package/dist/array/unzip.cjs.map +1 -0
- package/dist/array/unzip.d.ts +7 -0
- package/dist/array/unzip.d.ts.map +1 -0
- package/dist/array/unzip.js +11 -0
- package/dist/array/unzip.js.map +1 -0
- package/dist/array/zip.cjs +2 -0
- package/dist/array/zip.cjs.map +1 -0
- package/dist/array/zip.d.ts +7 -0
- package/dist/array/zip.d.ts.map +1 -0
- package/dist/array/zip.js +11 -0
- package/dist/array/zip.js.map +1 -0
- package/dist/arsenal.cjs +2 -0
- package/dist/arsenal.cjs.map +1 -0
- package/dist/arsenal.iife.js +2 -0
- package/dist/arsenal.iife.js.map +1 -0
- package/dist/arsenal.js +2 -0
- package/dist/arsenal.js.map +1 -0
- package/dist/async/abortError.cjs +2 -0
- package/dist/async/abortError.cjs.map +1 -0
- package/dist/async/abortError.d.ts +23 -0
- package/dist/async/abortError.d.ts.map +1 -0
- package/dist/async/abortError.js +8 -0
- package/dist/async/abortError.js.map +1 -0
- package/dist/async/attempt.cjs +2 -0
- package/dist/async/attempt.cjs.map +1 -0
- package/dist/async/attempt.d.ts +58 -0
- package/dist/async/attempt.d.ts.map +1 -0
- package/dist/async/attempt.js +31 -0
- package/dist/async/attempt.js.map +1 -0
- package/dist/async/backoff.cjs +2 -0
- package/dist/async/backoff.cjs.map +1 -0
- package/dist/async/backoff.d.ts +20 -0
- package/dist/async/backoff.d.ts.map +1 -0
- package/dist/async/backoff.js +9 -0
- package/dist/async/backoff.js.map +1 -0
- package/dist/async/index.d.ts +9 -0
- package/dist/async/index.d.ts.map +1 -0
- package/dist/async/parallel.cjs +2 -0
- package/dist/async/parallel.cjs.map +1 -0
- package/dist/async/parallel.d.ts +42 -0
- package/dist/async/parallel.d.ts.map +1 -0
- package/dist/async/parallel.js +26 -0
- package/dist/async/parallel.js.map +1 -0
- package/dist/async/queue.cjs +2 -0
- package/dist/async/queue.cjs.map +1 -0
- package/dist/async/queue.d.ts +42 -0
- package/dist/async/queue.d.ts.map +1 -0
- package/dist/async/queue.js +72 -0
- package/dist/async/queue.js.map +1 -0
- package/dist/async/retry.cjs +2 -0
- package/dist/async/retry.cjs.map +1 -0
- package/dist/async/retry.d.ts +46 -0
- package/dist/async/retry.d.ts.map +1 -0
- package/dist/async/retry.js +26 -0
- package/dist/async/retry.js.map +1 -0
- package/dist/async/sleep.cjs +2 -0
- package/dist/async/sleep.cjs.map +1 -0
- package/dist/async/sleep.d.ts +21 -0
- package/dist/async/sleep.d.ts.map +1 -0
- package/dist/async/sleep.js +16 -0
- package/dist/async/sleep.js.map +1 -0
- package/dist/async/waitFor.cjs +2 -0
- package/dist/async/waitFor.cjs.map +1 -0
- package/dist/async/waitFor.d.ts +34 -0
- package/dist/async/waitFor.d.ts.map +1 -0
- package/dist/async/waitFor.js +13 -0
- package/dist/async/waitFor.js.map +1 -0
- package/dist/cache/index.d.ts +3 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/memo.cjs +2 -0
- package/dist/cache/memo.cjs.map +1 -0
- package/dist/cache/memo.d.ts +40 -0
- package/dist/cache/memo.d.ts.map +1 -0
- package/dist/cache/memo.js +37 -0
- package/dist/cache/memo.js.map +1 -0
- package/dist/cache/stash.cjs +2 -0
- package/dist/cache/stash.cjs.map +1 -0
- package/dist/cache/stash.d.ts +111 -0
- package/dist/cache/stash.d.ts.map +1 -0
- package/dist/cache/stash.js +92 -0
- package/dist/cache/stash.js.map +1 -0
- package/dist/errors.cjs +2 -0
- package/dist/errors.cjs.map +1 -0
- package/dist/errors.d.ts +20 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +13 -0
- package/dist/errors.js.map +1 -0
- package/dist/function/assert.cjs +2 -0
- package/dist/function/assert.cjs.map +1 -0
- package/dist/function/assert.d.ts +19 -0
- package/dist/function/assert.d.ts.map +1 -0
- package/dist/function/assert.js +8 -0
- package/dist/function/assert.js.map +1 -0
- package/dist/function/constant.cjs +2 -0
- package/dist/function/constant.cjs.map +1 -0
- package/dist/function/constant.d.ts +5 -0
- package/dist/function/constant.d.ts.map +1 -0
- package/dist/function/constant.js +8 -0
- package/dist/function/constant.js.map +1 -0
- package/dist/function/debounce.cjs +2 -0
- package/dist/function/debounce.cjs.map +1 -0
- package/dist/function/debounce.d.ts +31 -0
- package/dist/function/debounce.d.ts.map +1 -0
- package/dist/function/debounce.js +29 -0
- package/dist/function/debounce.js.map +1 -0
- package/dist/function/identity.cjs +2 -0
- package/dist/function/identity.cjs.map +1 -0
- package/dist/function/identity.d.ts +5 -0
- package/dist/function/identity.d.ts.map +1 -0
- package/dist/function/identity.js +8 -0
- package/dist/function/identity.js.map +1 -0
- package/dist/function/index.d.ts +10 -0
- package/dist/function/index.d.ts.map +1 -0
- package/dist/function/once.cjs +2 -0
- package/dist/function/once.cjs.map +1 -0
- package/dist/function/once.d.ts +32 -0
- package/dist/function/once.d.ts.map +1 -0
- package/dist/function/once.js +11 -0
- package/dist/function/once.js.map +1 -0
- package/dist/function/pipe.cjs +2 -0
- package/dist/function/pipe.cjs.map +1 -0
- package/dist/function/pipe.d.ts +32 -0
- package/dist/function/pipe.d.ts.map +1 -0
- package/dist/function/pipe.js +10 -0
- package/dist/function/pipe.js.map +1 -0
- package/dist/function/runAll.cjs +2 -0
- package/dist/function/runAll.cjs.map +1 -0
- package/dist/function/runAll.d.ts +15 -0
- package/dist/function/runAll.d.ts.map +1 -0
- package/dist/function/runAll.js +19 -0
- package/dist/function/runAll.js.map +1 -0
- package/dist/function/tap.cjs +2 -0
- package/dist/function/tap.cjs.map +1 -0
- package/dist/function/tap.d.ts +5 -0
- package/dist/function/tap.d.ts.map +1 -0
- package/dist/function/tap.js +8 -0
- package/dist/function/tap.js.map +1 -0
- package/dist/function/throttle.cjs +2 -0
- package/dist/function/throttle.cjs.map +1 -0
- package/dist/function/throttle.d.ts +23 -0
- package/dist/function/throttle.d.ts.map +1 -0
- package/dist/function/throttle.js +36 -0
- package/dist/function/throttle.js.map +1 -0
- package/dist/guards/combinators.cjs +2 -0
- package/dist/guards/combinators.cjs.map +1 -0
- package/dist/guards/combinators.d.ts +49 -0
- package/dist/guards/combinators.d.ts.map +1 -0
- package/dist/guards/combinators.js +17 -0
- package/dist/guards/combinators.js.map +1 -0
- package/dist/guards/index.d.ts +20 -0
- package/dist/guards/index.d.ts.map +1 -0
- package/dist/guards/isAbortError.cjs +2 -0
- package/dist/guards/isAbortError.cjs.map +1 -0
- package/dist/guards/isAbortError.d.ts +19 -0
- package/dist/guards/isAbortError.d.ts.map +1 -0
- package/dist/guards/isAbortError.js +8 -0
- package/dist/guards/isAbortError.js.map +1 -0
- package/dist/guards/isArray.cjs +2 -0
- package/dist/guards/isArray.cjs.map +1 -0
- package/dist/guards/isArray.d.ts +16 -0
- package/dist/guards/isArray.d.ts.map +1 -0
- package/dist/guards/isArray.js +8 -0
- package/dist/guards/isArray.js.map +1 -0
- package/dist/guards/isBoolean.cjs +2 -0
- package/dist/guards/isBoolean.cjs.map +1 -0
- package/dist/guards/isBoolean.d.ts +23 -0
- package/dist/guards/isBoolean.d.ts.map +1 -0
- package/dist/guards/isBoolean.js +8 -0
- package/dist/guards/isBoolean.js.map +1 -0
- package/dist/guards/isDate.cjs +2 -0
- package/dist/guards/isDate.cjs.map +1 -0
- package/dist/guards/isDate.d.ts +15 -0
- package/dist/guards/isDate.d.ts.map +1 -0
- package/dist/guards/isDate.js +8 -0
- package/dist/guards/isDate.js.map +1 -0
- package/dist/guards/isDefined.cjs +2 -0
- package/dist/guards/isDefined.cjs.map +1 -0
- package/dist/guards/isDefined.d.ts +19 -0
- package/dist/guards/isDefined.d.ts.map +1 -0
- package/dist/guards/isDefined.js +8 -0
- package/dist/guards/isDefined.js.map +1 -0
- package/dist/guards/isEmpty.cjs +2 -0
- package/dist/guards/isEmpty.cjs.map +1 -0
- package/dist/guards/isEmpty.d.ts +23 -0
- package/dist/guards/isEmpty.d.ts.map +1 -0
- package/dist/guards/isEmpty.js +10 -0
- package/dist/guards/isEmpty.js.map +1 -0
- package/dist/guards/isEqual.cjs +2 -0
- package/dist/guards/isEqual.cjs.map +1 -0
- package/dist/guards/isEqual.d.ts +24 -0
- package/dist/guards/isEqual.d.ts.map +1 -0
- package/dist/guards/isEqual.js +34 -0
- package/dist/guards/isEqual.js.map +1 -0
- package/dist/guards/isError.cjs +2 -0
- package/dist/guards/isError.cjs.map +1 -0
- package/dist/guards/isError.d.ts +15 -0
- package/dist/guards/isError.d.ts.map +1 -0
- package/dist/guards/isError.js +8 -0
- package/dist/guards/isError.js.map +1 -0
- package/dist/guards/isFunction.cjs +2 -0
- package/dist/guards/isFunction.cjs.map +1 -0
- package/dist/guards/isFunction.d.ts +16 -0
- package/dist/guards/isFunction.d.ts.map +1 -0
- package/dist/guards/isFunction.js +8 -0
- package/dist/guards/isFunction.js.map +1 -0
- package/dist/guards/isMatch.cjs +2 -0
- package/dist/guards/isMatch.cjs.map +1 -0
- package/dist/guards/isMatch.d.ts +23 -0
- package/dist/guards/isMatch.d.ts.map +1 -0
- package/dist/guards/isMatch.js +23 -0
- package/dist/guards/isMatch.js.map +1 -0
- package/dist/guards/isNil.cjs +2 -0
- package/dist/guards/isNil.cjs.map +1 -0
- package/dist/guards/isNil.d.ts +17 -0
- package/dist/guards/isNil.d.ts.map +1 -0
- package/dist/guards/isNil.js +8 -0
- package/dist/guards/isNil.js.map +1 -0
- package/dist/guards/isNumber.cjs +2 -0
- package/dist/guards/isNumber.cjs.map +1 -0
- package/dist/guards/isNumber.d.ts +15 -0
- package/dist/guards/isNumber.d.ts.map +1 -0
- package/dist/guards/isNumber.js +8 -0
- package/dist/guards/isNumber.js.map +1 -0
- package/dist/guards/isPlainObject.cjs +2 -0
- package/dist/guards/isPlainObject.cjs.map +1 -0
- package/dist/guards/isPlainObject.d.ts +16 -0
- package/dist/guards/isPlainObject.d.ts.map +1 -0
- package/dist/guards/isPlainObject.js +10 -0
- package/dist/guards/isPlainObject.js.map +1 -0
- package/dist/guards/isPrimitive.cjs +2 -0
- package/dist/guards/isPrimitive.cjs.map +1 -0
- package/dist/guards/isPrimitive.d.ts +18 -0
- package/dist/guards/isPrimitive.d.ts.map +1 -0
- package/dist/guards/isPrimitive.js +9 -0
- package/dist/guards/isPrimitive.js.map +1 -0
- package/dist/guards/isPromise.cjs +2 -0
- package/dist/guards/isPromise.cjs.map +1 -0
- package/dist/guards/isPromise.d.ts +17 -0
- package/dist/guards/isPromise.d.ts.map +1 -0
- package/dist/guards/isPromise.js +8 -0
- package/dist/guards/isPromise.js.map +1 -0
- package/dist/guards/isRegex.cjs +2 -0
- package/dist/guards/isRegex.cjs.map +1 -0
- package/dist/guards/isRegex.d.ts +21 -0
- package/dist/guards/isRegex.d.ts.map +1 -0
- package/dist/guards/isRegex.js +8 -0
- package/dist/guards/isRegex.js.map +1 -0
- package/dist/guards/isString.cjs +2 -0
- package/dist/guards/isString.cjs.map +1 -0
- package/dist/guards/isString.d.ts +15 -0
- package/dist/guards/isString.d.ts.map +1 -0
- package/dist/guards/isString.js +8 -0
- package/dist/guards/isString.js.map +1 -0
- package/dist/guards/shallowEqual.cjs +2 -0
- package/dist/guards/shallowEqual.cjs.map +1 -0
- package/dist/guards/shallowEqual.d.ts +29 -0
- package/dist/guards/shallowEqual.d.ts.map +1 -0
- package/dist/guards/shallowEqual.js +20 -0
- package/dist/guards/shallowEqual.js.map +1 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +119 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +118 -0
- package/dist/math/abs.cjs +2 -0
- package/dist/math/abs.cjs.map +1 -0
- package/dist/math/abs.d.ts +17 -0
- package/dist/math/abs.d.ts.map +1 -0
- package/dist/math/abs.js +8 -0
- package/dist/math/abs.js.map +1 -0
- package/dist/math/allocate.cjs +2 -0
- package/dist/math/allocate.cjs.map +1 -0
- package/dist/math/allocate.d.ts +29 -0
- package/dist/math/allocate.d.ts.map +1 -0
- package/dist/math/allocate.js +20 -0
- package/dist/math/allocate.js.map +1 -0
- package/dist/math/average.cjs +2 -0
- package/dist/math/average.cjs.map +1 -0
- package/dist/math/average.d.ts +16 -0
- package/dist/math/average.d.ts.map +1 -0
- package/dist/math/average.js +14 -0
- package/dist/math/average.js.map +1 -0
- package/dist/math/clamp.cjs +2 -0
- package/dist/math/clamp.cjs.map +1 -0
- package/dist/math/clamp.d.ts +21 -0
- package/dist/math/clamp.d.ts.map +1 -0
- package/dist/math/clamp.js +8 -0
- package/dist/math/clamp.js.map +1 -0
- package/dist/math/gcd.cjs +2 -0
- package/dist/math/gcd.cjs.map +1 -0
- package/dist/math/gcd.d.ts +18 -0
- package/dist/math/gcd.d.ts.map +1 -0
- package/dist/math/gcd.js +13 -0
- package/dist/math/gcd.js.map +1 -0
- package/dist/math/index.d.ts +20 -0
- package/dist/math/index.d.ts.map +1 -0
- package/dist/math/lcm.cjs +2 -0
- package/dist/math/lcm.cjs.map +1 -0
- package/dist/math/lcm.d.ts +15 -0
- package/dist/math/lcm.d.ts.map +1 -0
- package/dist/math/lcm.js +9 -0
- package/dist/math/lcm.js.map +1 -0
- package/dist/math/lerp.cjs +2 -0
- package/dist/math/lerp.cjs.map +1 -0
- package/dist/math/lerp.d.ts +17 -0
- package/dist/math/lerp.d.ts.map +1 -0
- package/dist/math/lerp.js +8 -0
- package/dist/math/lerp.js.map +1 -0
- package/dist/math/linspace.cjs +2 -0
- package/dist/math/linspace.cjs.map +1 -0
- package/dist/math/linspace.d.ts +19 -0
- package/dist/math/linspace.d.ts.map +1 -0
- package/dist/math/linspace.js +11 -0
- package/dist/math/linspace.js.map +1 -0
- package/dist/math/max.cjs +2 -0
- package/dist/math/max.cjs.map +1 -0
- package/dist/math/max.d.ts +21 -0
- package/dist/math/max.d.ts.map +1 -0
- package/dist/math/max.js +12 -0
- package/dist/math/max.js.map +1 -0
- package/dist/math/median.cjs +2 -0
- package/dist/math/median.cjs.map +1 -0
- package/dist/math/median.d.ts +17 -0
- package/dist/math/median.d.ts.map +1 -0
- package/dist/math/median.js +12 -0
- package/dist/math/median.js.map +1 -0
- package/dist/math/min.cjs +2 -0
- package/dist/math/min.cjs.map +1 -0
- package/dist/math/min.d.ts +21 -0
- package/dist/math/min.d.ts.map +1 -0
- package/dist/math/min.js +12 -0
- package/dist/math/min.js.map +1 -0
- package/dist/math/mod.cjs +2 -0
- package/dist/math/mod.cjs.map +1 -0
- package/dist/math/mod.d.ts +18 -0
- package/dist/math/mod.d.ts.map +1 -0
- package/dist/math/mod.js +10 -0
- package/dist/math/mod.js.map +1 -0
- package/dist/math/normalize.cjs +2 -0
- package/dist/math/normalize.cjs.map +1 -0
- package/dist/math/normalize.d.ts +18 -0
- package/dist/math/normalize.d.ts.map +1 -0
- package/dist/math/normalize.js +9 -0
- package/dist/math/normalize.js.map +1 -0
- package/dist/math/percent.cjs +2 -0
- package/dist/math/percent.cjs.map +1 -0
- package/dist/math/percent.d.ts +19 -0
- package/dist/math/percent.d.ts.map +1 -0
- package/dist/math/percent.js +8 -0
- package/dist/math/percent.js.map +1 -0
- package/dist/math/range.cjs +2 -0
- package/dist/math/range.cjs.map +1 -0
- package/dist/math/range.d.ts +37 -0
- package/dist/math/range.d.ts.map +1 -0
- package/dist/math/range.js +27 -0
- package/dist/math/range.js.map +1 -0
- package/dist/math/round.cjs +2 -0
- package/dist/math/round.cjs.map +1 -0
- package/dist/math/round.d.ts +21 -0
- package/dist/math/round.d.ts.map +1 -0
- package/dist/math/round.js +10 -0
- package/dist/math/round.js.map +1 -0
- package/dist/math/standardDeviation.cjs +2 -0
- package/dist/math/standardDeviation.cjs.map +1 -0
- package/dist/math/standardDeviation.d.ts +16 -0
- package/dist/math/standardDeviation.d.ts.map +1 -0
- package/dist/math/standardDeviation.js +9 -0
- package/dist/math/standardDeviation.js.map +1 -0
- package/dist/math/sum.cjs +2 -0
- package/dist/math/sum.cjs.map +1 -0
- package/dist/math/sum.d.ts +19 -0
- package/dist/math/sum.d.ts.map +1 -0
- package/dist/math/sum.js +13 -0
- package/dist/math/sum.js.map +1 -0
- package/dist/math/variance.cjs +2 -0
- package/dist/math/variance.cjs.map +1 -0
- package/dist/math/variance.d.ts +17 -0
- package/dist/math/variance.d.ts.map +1 -0
- package/dist/math/variance.js +11 -0
- package/dist/math/variance.js.map +1 -0
- package/dist/object/defaults.cjs +2 -0
- package/dist/object/defaults.cjs.map +1 -0
- package/dist/object/defaults.d.ts +17 -0
- package/dist/object/defaults.d.ts.map +1 -0
- package/dist/object/defaults.js +12 -0
- package/dist/object/defaults.js.map +1 -0
- package/dist/object/diff.cjs +2 -0
- package/dist/object/diff.cjs.map +1 -0
- package/dist/object/diff.d.ts +63 -0
- package/dist/object/diff.d.ts.map +1 -0
- package/dist/object/diff.js +27 -0
- package/dist/object/diff.js.map +1 -0
- package/dist/object/filterValues.cjs +2 -0
- package/dist/object/filterValues.cjs.map +1 -0
- package/dist/object/filterValues.d.ts +16 -0
- package/dist/object/filterValues.d.ts.map +1 -0
- package/dist/object/filterValues.js +11 -0
- package/dist/object/filterValues.js.map +1 -0
- package/dist/object/flattenPaths.cjs +2 -0
- package/dist/object/flattenPaths.cjs.map +1 -0
- package/dist/object/flattenPaths.d.ts +13 -0
- package/dist/object/flattenPaths.d.ts.map +1 -0
- package/dist/object/flattenPaths.js +31 -0
- package/dist/object/flattenPaths.js.map +1 -0
- package/dist/object/getPath.cjs +2 -0
- package/dist/object/getPath.cjs.map +1 -0
- package/dist/object/getPath.d.ts +48 -0
- package/dist/object/getPath.d.ts.map +1 -0
- package/dist/object/getPath.js +27 -0
- package/dist/object/getPath.js.map +1 -0
- package/dist/object/hash.cjs +2 -0
- package/dist/object/hash.cjs.map +1 -0
- package/dist/object/hash.d.ts +12 -0
- package/dist/object/hash.d.ts.map +1 -0
- package/dist/object/hash.js +28 -0
- package/dist/object/hash.js.map +1 -0
- package/dist/object/index.d.ts +15 -0
- package/dist/object/index.d.ts.map +1 -0
- package/dist/object/invert.cjs +2 -0
- package/dist/object/invert.cjs.map +1 -0
- package/dist/object/invert.d.ts +15 -0
- package/dist/object/invert.d.ts.map +1 -0
- package/dist/object/invert.js +11 -0
- package/dist/object/invert.js.map +1 -0
- package/dist/object/mapKeys.cjs +2 -0
- package/dist/object/mapKeys.cjs.map +1 -0
- package/dist/object/mapKeys.d.ts +16 -0
- package/dist/object/mapKeys.d.ts.map +1 -0
- package/dist/object/mapKeys.js +15 -0
- package/dist/object/mapKeys.js.map +1 -0
- package/dist/object/mapValues.cjs +2 -0
- package/dist/object/mapValues.cjs.map +1 -0
- package/dist/object/mapValues.d.ts +18 -0
- package/dist/object/mapValues.d.ts.map +1 -0
- package/dist/object/mapValues.js +11 -0
- package/dist/object/mapValues.js.map +1 -0
- package/dist/object/merge.cjs +2 -0
- package/dist/object/merge.cjs.map +1 -0
- package/dist/object/merge.d.ts +41 -0
- package/dist/object/merge.d.ts.map +1 -0
- package/dist/object/merge.js +27 -0
- package/dist/object/merge.js.map +1 -0
- package/dist/object/omit.cjs +2 -0
- package/dist/object/omit.cjs.map +1 -0
- package/dist/object/omit.d.ts +16 -0
- package/dist/object/omit.d.ts.map +1 -0
- package/dist/object/omit.js +11 -0
- package/dist/object/omit.js.map +1 -0
- package/dist/object/parseJSON.cjs +2 -0
- package/dist/object/parseJSON.cjs.map +1 -0
- package/dist/object/parseJSON.d.ts +32 -0
- package/dist/object/parseJSON.d.ts.map +1 -0
- package/dist/object/parseJSON.js +16 -0
- package/dist/object/parseJSON.js.map +1 -0
- package/dist/object/pick.cjs +2 -0
- package/dist/object/pick.cjs.map +1 -0
- package/dist/object/pick.d.ts +17 -0
- package/dist/object/pick.d.ts.map +1 -0
- package/dist/object/pick.js +11 -0
- package/dist/object/pick.js.map +1 -0
- package/dist/object/prune.cjs +2 -0
- package/dist/object/prune.cjs.map +1 -0
- package/dist/object/prune.d.ts +26 -0
- package/dist/object/prune.d.ts.map +1 -0
- package/dist/object/prune.js +36 -0
- package/dist/object/prune.js.map +1 -0
- package/dist/random/draw.cjs +2 -0
- package/dist/random/draw.cjs.map +1 -0
- package/dist/random/draw.d.ts +24 -0
- package/dist/random/draw.d.ts.map +1 -0
- package/dist/random/draw.js +21 -0
- package/dist/random/draw.js.map +1 -0
- package/dist/random/index.d.ts +5 -0
- package/dist/random/index.d.ts.map +1 -0
- package/dist/random/random.cjs +2 -0
- package/dist/random/random.cjs.map +1 -0
- package/dist/random/random.d.ts +14 -0
- package/dist/random/random.d.ts.map +1 -0
- package/dist/random/random.js +11 -0
- package/dist/random/random.js.map +1 -0
- package/dist/random/shuffle.cjs +2 -0
- package/dist/random/shuffle.cjs.map +1 -0
- package/dist/random/shuffle.d.ts +12 -0
- package/dist/random/shuffle.d.ts.map +1 -0
- package/dist/random/shuffle.js +14 -0
- package/dist/random/shuffle.js.map +1 -0
- package/dist/random/uuid.cjs +2 -0
- package/dist/random/uuid.cjs.map +1 -0
- package/dist/random/uuid.d.ts +12 -0
- package/dist/random/uuid.d.ts.map +1 -0
- package/dist/random/uuid.js +8 -0
- package/dist/random/uuid.js.map +1 -0
- package/dist/string/_caseUtils.cjs +2 -0
- package/dist/string/_caseUtils.cjs.map +1 -0
- package/dist/string/_caseUtils.d.ts +9 -0
- package/dist/string/_caseUtils.d.ts.map +1 -0
- package/dist/string/_caseUtils.js +13 -0
- package/dist/string/_caseUtils.js.map +1 -0
- package/dist/string/camelCase.cjs +2 -0
- package/dist/string/camelCase.cjs.map +1 -0
- package/dist/string/camelCase.d.ts +14 -0
- package/dist/string/camelCase.d.ts.map +1 -0
- package/dist/string/camelCase.js +9 -0
- package/dist/string/camelCase.js.map +1 -0
- package/dist/string/endsWith.cjs +2 -0
- package/dist/string/endsWith.cjs.map +1 -0
- package/dist/string/endsWith.d.ts +5 -0
- package/dist/string/endsWith.d.ts.map +1 -0
- package/dist/string/endsWith.js +8 -0
- package/dist/string/endsWith.js.map +1 -0
- package/dist/string/escape.cjs +2 -0
- package/dist/string/escape.cjs.map +1 -0
- package/dist/string/escape.d.ts +5 -0
- package/dist/string/escape.d.ts.map +1 -0
- package/dist/string/escape.js +15 -0
- package/dist/string/escape.js.map +1 -0
- package/dist/string/index.d.ts +14 -0
- package/dist/string/index.d.ts.map +1 -0
- package/dist/string/kebabCase.cjs +2 -0
- package/dist/string/kebabCase.cjs.map +1 -0
- package/dist/string/kebabCase.d.ts +15 -0
- package/dist/string/kebabCase.d.ts.map +1 -0
- package/dist/string/kebabCase.js +9 -0
- package/dist/string/kebabCase.js.map +1 -0
- package/dist/string/pad.cjs +2 -0
- package/dist/string/pad.cjs.map +1 -0
- package/dist/string/pad.d.ts +5 -0
- package/dist/string/pad.d.ts.map +1 -0
- package/dist/string/pad.js +10 -0
- package/dist/string/pad.js.map +1 -0
- package/dist/string/pascalCase.cjs +2 -0
- package/dist/string/pascalCase.cjs.map +1 -0
- package/dist/string/pascalCase.d.ts +15 -0
- package/dist/string/pascalCase.d.ts.map +1 -0
- package/dist/string/pascalCase.js +9 -0
- package/dist/string/pascalCase.js.map +1 -0
- package/dist/string/similarity.cjs +2 -0
- package/dist/string/similarity.cjs.map +1 -0
- package/dist/string/similarity.d.ts +2 -0
- package/dist/string/similarity.d.ts.map +1 -0
- package/dist/string/similarity.js +24 -0
- package/dist/string/similarity.js.map +1 -0
- package/dist/string/snakeCase.cjs +2 -0
- package/dist/string/snakeCase.cjs.map +1 -0
- package/dist/string/snakeCase.d.ts +15 -0
- package/dist/string/snakeCase.d.ts.map +1 -0
- package/dist/string/snakeCase.js +9 -0
- package/dist/string/snakeCase.js.map +1 -0
- package/dist/string/startsWith.cjs +2 -0
- package/dist/string/startsWith.cjs.map +1 -0
- package/dist/string/startsWith.d.ts +5 -0
- package/dist/string/startsWith.d.ts.map +1 -0
- package/dist/string/startsWith.js +8 -0
- package/dist/string/startsWith.js.map +1 -0
- package/dist/string/titleCase.cjs +2 -0
- package/dist/string/titleCase.cjs.map +1 -0
- package/dist/string/titleCase.d.ts +5 -0
- package/dist/string/titleCase.d.ts.map +1 -0
- package/dist/string/titleCase.js +9 -0
- package/dist/string/titleCase.js.map +1 -0
- package/dist/string/truncate.cjs +2 -0
- package/dist/string/truncate.cjs.map +1 -0
- package/dist/string/truncate.d.ts +27 -0
- package/dist/string/truncate.d.ts.map +1 -0
- package/dist/string/truncate.js +17 -0
- package/dist/string/truncate.js.map +1 -0
- package/dist/string/unescape.cjs +2 -0
- package/dist/string/unescape.cjs.map +1 -0
- package/dist/string/unescape.d.ts +5 -0
- package/dist/string/unescape.d.ts.map +1 -0
- package/dist/string/unescape.js +15 -0
- package/dist/string/unescape.js.map +1 -0
- package/dist/string/words.cjs +2 -0
- package/dist/string/words.cjs.map +1 -0
- package/dist/string/words.d.ts +5 -0
- package/dist/string/words.d.ts.map +1 -0
- package/dist/string/words.js +10 -0
- package/dist/string/words.js.map +1 -0
- package/dist/types.d.ts +13 -0
- package/dist/types.d.ts.map +1 -0
- package/package.json +102 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isAbortError.cjs","names":[],"sources":["../../src/guards/isAbortError.ts"],"sourcesContent":["/**\n * Returns `true` if the given value is an `AbortError` — i.e. an `Error` whose\n * `name` is `'AbortError'`, as thrown by `AbortController` / `AbortSignal`.\n *\n * @example\n * ```ts\n * try {\n * await fetch(url, { signal });\n * } catch (err) {\n * if (isAbortError(err)) return; // request was cancelled — ignore\n * throw err;\n * }\n * ```\n *\n * @param value - The value to test.\n * @returns `true` when `value` is an `Error` with `name === 'AbortError'`.\n */\nexport function isAbortError(value: unknown): value is Error {\n return value instanceof Error && value.name === 'AbortError';\n}\n"],"mappings":"AAiBA,SAAgB,EAAa,EAAgC,CAC3D,OAAO,aAAiB,OAAS,EAAM,OAAS,YAClD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns `true` if the given value is an `AbortError` — i.e. an `Error` whose
|
|
3
|
+
* `name` is `'AbortError'`, as thrown by `AbortController` / `AbortSignal`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* try {
|
|
8
|
+
* await fetch(url, { signal });
|
|
9
|
+
* } catch (err) {
|
|
10
|
+
* if (isAbortError(err)) return; // request was cancelled — ignore
|
|
11
|
+
* throw err;
|
|
12
|
+
* }
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* @param value - The value to test.
|
|
16
|
+
* @returns `true` when `value` is an `Error` with `name === 'AbortError'`.
|
|
17
|
+
*/
|
|
18
|
+
export declare function isAbortError(value: unknown): value is Error;
|
|
19
|
+
//# sourceMappingURL=isAbortError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isAbortError.d.ts","sourceRoot":"","sources":["../../src/guards/isAbortError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,KAAK,CAE3D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isAbortError.js","names":[],"sources":["../../src/guards/isAbortError.ts"],"sourcesContent":["/**\n * Returns `true` if the given value is an `AbortError` — i.e. an `Error` whose\n * `name` is `'AbortError'`, as thrown by `AbortController` / `AbortSignal`.\n *\n * @example\n * ```ts\n * try {\n * await fetch(url, { signal });\n * } catch (err) {\n * if (isAbortError(err)) return; // request was cancelled — ignore\n * throw err;\n * }\n * ```\n *\n * @param value - The value to test.\n * @returns `true` when `value` is an `Error` with `name === 'AbortError'`.\n */\nexport function isAbortError(value: unknown): value is Error {\n return value instanceof Error && value.name === 'AbortError';\n}\n"],"mappings":";AAiBA,SAAgB,EAAa,GAAgC;CAC3D,OAAO,aAAiB,SAAS,EAAM,SAAS;AAClD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isArray.cjs","names":[],"sources":["../../src/guards/isArray.ts"],"sourcesContent":["/**\n * Returns `true` if `value` is an `Array`, with an optional item-type guard.\n *\n * @example\n * ```ts\n * isArray([1, 2, 3]) // true\n * isArray('hello') // false\n * isArray([1, 2, 3], isNumber) // true — all items pass isNumber\n * isArray([1, 'x'], isNumber) // false — 'x' fails isNumber\n * ```\n *\n * @param value - The value to check.\n * @param itemGuard - Optional type guard applied to every element.\n */\nexport function isArray<T = unknown>(value: unknown, itemGuard?: (item: unknown) => item is T): value is T[] {\n if (!Array.isArray(value)) return false;\n\n if (itemGuard) return value.every(itemGuard);\n\n return true;\n}\n"],"mappings":"AAcA,SAAgB,EAAqB,EAAgB,EAAwD,CAK3G,OAJK,MAAM,QAAQ,CAAK,EAEpB,EAAkB,EAAM,MAAM,CAAS,EAEpC,GAJ2B,EAKpC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns `true` if `value` is an `Array`, with an optional item-type guard.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* isArray([1, 2, 3]) // true
|
|
7
|
+
* isArray('hello') // false
|
|
8
|
+
* isArray([1, 2, 3], isNumber) // true — all items pass isNumber
|
|
9
|
+
* isArray([1, 'x'], isNumber) // false — 'x' fails isNumber
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* @param value - The value to check.
|
|
13
|
+
* @param itemGuard - Optional type guard applied to every element.
|
|
14
|
+
*/
|
|
15
|
+
export declare function isArray<T = unknown>(value: unknown, itemGuard?: (item: unknown) => item is T): value is T[];
|
|
16
|
+
//# sourceMappingURL=isArray.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isArray.d.ts","sourceRoot":"","sources":["../../src/guards/isArray.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,EAAE,CAM3G"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isArray.js","names":[],"sources":["../../src/guards/isArray.ts"],"sourcesContent":["/**\n * Returns `true` if `value` is an `Array`, with an optional item-type guard.\n *\n * @example\n * ```ts\n * isArray([1, 2, 3]) // true\n * isArray('hello') // false\n * isArray([1, 2, 3], isNumber) // true — all items pass isNumber\n * isArray([1, 'x'], isNumber) // false — 'x' fails isNumber\n * ```\n *\n * @param value - The value to check.\n * @param itemGuard - Optional type guard applied to every element.\n */\nexport function isArray<T = unknown>(value: unknown, itemGuard?: (item: unknown) => item is T): value is T[] {\n if (!Array.isArray(value)) return false;\n\n if (itemGuard) return value.every(itemGuard);\n\n return true;\n}\n"],"mappings":";AAcA,SAAgB,EAAqB,GAAgB,GAAwD;CAK3G,OAJK,MAAM,QAAQ,CAAK,IAEpB,IAAkB,EAAM,MAAM,CAAS,IAEpC,KAJ2B;AAKpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isBoolean.cjs","names":[],"sources":["../../src/guards/isBoolean.ts"],"sourcesContent":["/**\n * Checks if the value is a boolean.\n *\n * @example\n * ```ts\n * isBoolean(true); // true\n * isBoolean(false); // true\n * isBoolean(123); // false\n * isBoolean('hello world'); // false\n * isBoolean({}); // false\n * isBoolean([]); // false\n * isBoolean(new Date()); // false\n * isBoolean(null); // false\n * isBoolean(undefined); // false\n * isBoolean(NaN); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is a boolean, else `false`.\n */\nexport function isBoolean(arg: unknown): arg is boolean {\n return typeof arg === 'boolean';\n}\n"],"mappings":"AAqBA,SAAgB,EAAU,EAA8B,CACtD,OAAO,OAAO,GAAQ,SACxB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if the value is a boolean.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* isBoolean(true); // true
|
|
7
|
+
* isBoolean(false); // true
|
|
8
|
+
* isBoolean(123); // false
|
|
9
|
+
* isBoolean('hello world'); // false
|
|
10
|
+
* isBoolean({}); // false
|
|
11
|
+
* isBoolean([]); // false
|
|
12
|
+
* isBoolean(new Date()); // false
|
|
13
|
+
* isBoolean(null); // false
|
|
14
|
+
* isBoolean(undefined); // false
|
|
15
|
+
* isBoolean(NaN); // false
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* @param arg - The argument to be checked.
|
|
19
|
+
*
|
|
20
|
+
* @returns `true` if the value is a boolean, else `false`.
|
|
21
|
+
*/
|
|
22
|
+
export declare function isBoolean(arg: unknown): arg is boolean;
|
|
23
|
+
//# sourceMappingURL=isBoolean.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isBoolean.d.ts","sourceRoot":"","sources":["../../src/guards/isBoolean.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,OAAO,CAEtD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isBoolean.js","names":[],"sources":["../../src/guards/isBoolean.ts"],"sourcesContent":["/**\n * Checks if the value is a boolean.\n *\n * @example\n * ```ts\n * isBoolean(true); // true\n * isBoolean(false); // true\n * isBoolean(123); // false\n * isBoolean('hello world'); // false\n * isBoolean({}); // false\n * isBoolean([]); // false\n * isBoolean(new Date()); // false\n * isBoolean(null); // false\n * isBoolean(undefined); // false\n * isBoolean(NaN); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is a boolean, else `false`.\n */\nexport function isBoolean(arg: unknown): arg is boolean {\n return typeof arg === 'boolean';\n}\n"],"mappings":";AAqBA,SAAgB,EAAU,GAA8B;CACtD,OAAO,OAAO,KAAQ;AACxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDate.cjs","names":[],"sources":["../../src/guards/isDate.ts"],"sourcesContent":["/**\n * Determines if the passed value is a valid Date Object.\n *\n * @example\n * ```ts\n * isDate(new Date()); // true\n * isDate(123); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is a valid Date object, else `false`.\n */\nexport function isDate(arg: unknown): arg is Date {\n return arg instanceof Date && !Number.isNaN(arg.getTime());\n}\n"],"mappings":"AAaA,SAAgB,EAAO,EAA2B,CAChD,OAAO,aAAe,MAAQ,CAAC,OAAO,MAAM,EAAI,QAAQ,CAAC,CAC3D"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Determines if the passed value is a valid Date Object.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* isDate(new Date()); // true
|
|
7
|
+
* isDate(123); // false
|
|
8
|
+
* ```
|
|
9
|
+
*
|
|
10
|
+
* @param arg - The argument to be checked.
|
|
11
|
+
*
|
|
12
|
+
* @returns `true` if the value is a valid Date object, else `false`.
|
|
13
|
+
*/
|
|
14
|
+
export declare function isDate(arg: unknown): arg is Date;
|
|
15
|
+
//# sourceMappingURL=isDate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDate.d.ts","sourceRoot":"","sources":["../../src/guards/isDate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,IAAI,CAEhD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDate.js","names":[],"sources":["../../src/guards/isDate.ts"],"sourcesContent":["/**\n * Determines if the passed value is a valid Date Object.\n *\n * @example\n * ```ts\n * isDate(new Date()); // true\n * isDate(123); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is a valid Date object, else `false`.\n */\nexport function isDate(arg: unknown): arg is Date {\n return arg instanceof Date && !Number.isNaN(arg.getTime());\n}\n"],"mappings":";AAaA,SAAgB,EAAO,GAA2B;CAChD,OAAO,aAAe,QAAQ,CAAC,OAAO,MAAM,EAAI,QAAQ,CAAC;AAC3D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDefined.cjs","names":[],"sources":["../../src/guards/isDefined.ts"],"sourcesContent":["/**\n * Checks if a value is defined (not `undefined`).\n *\n * @example\n * ```ts\n * isDefined(123); // true\n * isDefined(undefined); // false\n * isDefined('hello world'); // true\n * isDefined({}); // true\n * isDefined([]); // true\n * isDefined(null); // true\n * ```\n *\n * @param arg - The value to check.\n *\n * @returns `true` if the value is defined, else `false`.\n */\nexport function isDefined<T>(arg: T | undefined): arg is T {\n return arg !== undefined;\n}\n"],"mappings":"AAiBA,SAAgB,EAAa,EAA8B,CACzD,OAAO,IAAQ,IAAA,EACjB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if a value is defined (not `undefined`).
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* isDefined(123); // true
|
|
7
|
+
* isDefined(undefined); // false
|
|
8
|
+
* isDefined('hello world'); // true
|
|
9
|
+
* isDefined({}); // true
|
|
10
|
+
* isDefined([]); // true
|
|
11
|
+
* isDefined(null); // true
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
* @param arg - The value to check.
|
|
15
|
+
*
|
|
16
|
+
* @returns `true` if the value is defined, else `false`.
|
|
17
|
+
*/
|
|
18
|
+
export declare function isDefined<T>(arg: T | undefined): arg is T;
|
|
19
|
+
//# sourceMappingURL=isDefined.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDefined.d.ts","sourceRoot":"","sources":["../../src/guards/isDefined.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,GAAG,GAAG,IAAI,CAAC,CAEzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isDefined.js","names":[],"sources":["../../src/guards/isDefined.ts"],"sourcesContent":["/**\n * Checks if a value is defined (not `undefined`).\n *\n * @example\n * ```ts\n * isDefined(123); // true\n * isDefined(undefined); // false\n * isDefined('hello world'); // true\n * isDefined({}); // true\n * isDefined([]); // true\n * isDefined(null); // true\n * ```\n *\n * @param arg - The value to check.\n *\n * @returns `true` if the value is defined, else `false`.\n */\nexport function isDefined<T>(arg: T | undefined): arg is T {\n return arg !== undefined;\n}\n"],"mappings":";AAiBA,SAAgB,EAAa,GAA8B;CACzD,OAAO,MAAQ,KAAA;AACjB"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require("./isNil.cjs"),t=require("./isPlainObject.cjs");function n(n){return e.isNil(n)||n===``?!0:Array.isArray(n)?n.length===0:n instanceof Map||n instanceof Set?n.size===0:t.isPlainObject(n)?Object.keys(n).length===0:!1}exports.isEmpty=n;
|
|
2
|
+
//# sourceMappingURL=isEmpty.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isEmpty.cjs","names":[],"sources":["../../src/guards/isEmpty.ts"],"sourcesContent":["import { isNil } from './isNil';\nimport { isPlainObject } from './isPlainObject';\n\n/**\n * Checks if the given argument is empty.\n *\n * @example\n * ```ts\n * isEmpty(null); // true\n * isEmpty(undefined); // true\n * isEmpty([]); // true\n * isEmpty({}); // true\n * isEmpty(''); // true\n * isEmpty(0); // false\n * isEmpty(123); // false\n * isEmpty('abc'); // false\n * isEmpty([1, 2, 3]); // false\n * isEmpty({ a: 1, b: 2 }); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if all arguments are `null`, `undefined`, `{}`, `[]`, or empty strings. Otherwise, it returns `false`.\n */\nexport function isEmpty(arg: unknown): boolean {\n if (isNil(arg) || arg === '') return true;\n\n if (Array.isArray(arg)) return arg.length === 0;\n\n if (arg instanceof Map || arg instanceof Set) return arg.size === 0;\n\n if (isPlainObject(arg)) return Object.keys(arg).length === 0;\n\n return false;\n}\n"],"mappings":"gEAwBA,SAAgB,EAAQ,EAAuB,CAS7C,OARI,EAAA,MAAM,CAAG,GAAK,IAAQ,GAAW,GAEjC,MAAM,QAAQ,CAAG,EAAU,EAAI,SAAW,EAE1C,aAAe,KAAO,aAAe,IAAY,EAAI,OAAS,EAE9D,EAAA,cAAc,CAAG,EAAU,OAAO,KAAK,CAAG,CAAC,CAAC,SAAW,EAEpD,EACT"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if the given argument is empty.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* isEmpty(null); // true
|
|
7
|
+
* isEmpty(undefined); // true
|
|
8
|
+
* isEmpty([]); // true
|
|
9
|
+
* isEmpty({}); // true
|
|
10
|
+
* isEmpty(''); // true
|
|
11
|
+
* isEmpty(0); // false
|
|
12
|
+
* isEmpty(123); // false
|
|
13
|
+
* isEmpty('abc'); // false
|
|
14
|
+
* isEmpty([1, 2, 3]); // false
|
|
15
|
+
* isEmpty({ a: 1, b: 2 }); // false
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* @param arg - The argument to be checked.
|
|
19
|
+
*
|
|
20
|
+
* @returns `true` if all arguments are `null`, `undefined`, `{}`, `[]`, or empty strings. Otherwise, it returns `false`.
|
|
21
|
+
*/
|
|
22
|
+
export declare function isEmpty(arg: unknown): boolean;
|
|
23
|
+
//# sourceMappingURL=isEmpty.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isEmpty.d.ts","sourceRoot":"","sources":["../../src/guards/isEmpty.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAU7C"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { isNil as e } from "./isNil.js";
|
|
2
|
+
import { isPlainObject as t } from "./isPlainObject.js";
|
|
3
|
+
//#region src/guards/isEmpty.ts
|
|
4
|
+
function n(n) {
|
|
5
|
+
return e(n) || n === "" ? !0 : Array.isArray(n) ? n.length === 0 : n instanceof Map || n instanceof Set ? n.size === 0 : t(n) ? Object.keys(n).length === 0 : !1;
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { n as isEmpty };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=isEmpty.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isEmpty.js","names":[],"sources":["../../src/guards/isEmpty.ts"],"sourcesContent":["import { isNil } from './isNil';\nimport { isPlainObject } from './isPlainObject';\n\n/**\n * Checks if the given argument is empty.\n *\n * @example\n * ```ts\n * isEmpty(null); // true\n * isEmpty(undefined); // true\n * isEmpty([]); // true\n * isEmpty({}); // true\n * isEmpty(''); // true\n * isEmpty(0); // false\n * isEmpty(123); // false\n * isEmpty('abc'); // false\n * isEmpty([1, 2, 3]); // false\n * isEmpty({ a: 1, b: 2 }); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if all arguments are `null`, `undefined`, `{}`, `[]`, or empty strings. Otherwise, it returns `false`.\n */\nexport function isEmpty(arg: unknown): boolean {\n if (isNil(arg) || arg === '') return true;\n\n if (Array.isArray(arg)) return arg.length === 0;\n\n if (arg instanceof Map || arg instanceof Set) return arg.size === 0;\n\n if (isPlainObject(arg)) return Object.keys(arg).length === 0;\n\n return false;\n}\n"],"mappings":";;;AAwBA,SAAgB,EAAQ,GAAuB;CAS7C,OARI,EAAM,CAAG,KAAK,MAAQ,KAAW,KAEjC,MAAM,QAAQ,CAAG,IAAU,EAAI,WAAW,IAE1C,aAAe,OAAO,aAAe,MAAY,EAAI,SAAS,IAE9D,EAAc,CAAG,IAAU,OAAO,KAAK,CAAG,CAAC,CAAC,WAAW,IAEpD;AACT"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function e(e,n){return t(e,n,new WeakMap)}function t(e,n,r){if(e===n)return!0;if(e==null||n==null||typeof e!=typeof n||typeof e!=`object`||typeof n!=`object`)return!1;if(r.has(e))return r.get(e)===n;if(r.set(e,n),Array.isArray(e)||Array.isArray(n))return!Array.isArray(e)||!Array.isArray(n)||e.length!==n.length?!1:e.every((e,i)=>t(e,n[i],r));if(e instanceof Date&&n instanceof Date)return e.getTime()===n.getTime();if(e instanceof Map&&n instanceof Map){if(e.size!==n.size)return!1;for(let[i,a]of e)if(!n.has(i)||!t(a,n.get(i),r))return!1;return!0}if(e instanceof Set&&n instanceof Set){if(e.size!==n.size)return!1;let i=[...n];for(let a of e)if(typeof a==`string`||typeof a==`number`||typeof a==`boolean`||a==null){if(!n.has(a))return!1}else if(!i.some(e=>t(a,e,r)))return!1;return!0}if(e instanceof RegExp||n instanceof RegExp)return e instanceof RegExp&&n instanceof RegExp&&e.source===n.source&&e.flags===n.flags;if(e instanceof Map||n instanceof Map||e instanceof Set||n instanceof Set)return!1;let i=Object.keys(e),a=Object.keys(n);if(i.length!==a.length)return!1;for(let a of i)if(!Object.hasOwn(n,a)||!t(e[a],n[a],r))return!1;return!0}exports.isEqual=e;
|
|
2
|
+
//# sourceMappingURL=isEqual.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isEqual.cjs","names":[],"sources":["../../src/guards/isEqual.ts"],"sourcesContent":["/**\n * Recursively compares two values for deep equality.\n * Supports plain objects, arrays, `Date`, `Map`, `Set`, `RegExp`, and circular references.\n *\n * Uses `===` for the primitive comparison, so `isEqual(NaN, NaN)` is `false` and\n * `isEqual(0, -0)` is `true` — the opposite of `shallowEqual`, which uses `Object.is` and\n * treats `NaN` as equal to itself and `-0` as distinct from `0`.\n *\n * For one-level-deep reference equality, use `shallowEqual` instead.\n *\n * @example\n * ```ts\n * isEqual([1, 2, 3], [1, 2, 3]); // true\n * isEqual({ a: { b: 2 } }, { a: { b: 2 } }); // true\n * isEqual(new Date('2023-01-01'), new Date('2023-01-01')); // true\n * isEqual(new Map([['k', 1]]), new Map([['k', 1]])); // true\n * ```\n *\n * @param a - First value to compare.\n * @param b - Second value to compare.\n * @returns `true` if the values are deeply equal.\n */\nexport function isEqual(a: unknown, b: unknown): boolean {\n return safeIsEqual(a, b, new WeakMap());\n}\n\nfunction safeIsEqual(a: unknown, b: unknown, visited: WeakMap<object, object>): boolean {\n // Check for strict equality (handles primitives and references)\n if (a === b) return true;\n\n // If either is null or not an object, they're not equal\n if (a == null || b == null || typeof a !== typeof b || typeof a !== 'object' || typeof b !== 'object') return false;\n\n // Check for circular references\n // We only track 'a' because if 'a' is cyclical, 'b' must also be cyclic to be equal\n if (visited.has(a as object)) {\n return visited.get(a as object) === b;\n }\n\n visited.set(a as object, b as object);\n\n // Array comparison\n if (Array.isArray(a) || Array.isArray(b)) {\n if (!Array.isArray(a) || !Array.isArray(b) || a.length !== b.length) return false;\n\n return a.every((item, idx) => safeIsEqual(item, b[idx], visited));\n }\n\n // Date comparison\n if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime();\n }\n\n // Map comparison\n if (a instanceof Map && b instanceof Map) {\n if (a.size !== b.size) return false;\n\n for (const [k, v] of a) {\n if (!b.has(k) || !safeIsEqual(v, b.get(k), visited)) return false;\n }\n\n return true;\n }\n\n // Set comparison — fast path for primitive values, deep for objects\n if (a instanceof Set && b instanceof Set) {\n if (a.size !== b.size) return false;\n\n const bItems = [...b];\n\n for (const v of a) {\n // O(1) path for primitives — avoid the O(n) .some() scan\n if (typeof v === 'string' || typeof v === 'number' || typeof v === 'boolean' || v === null || v === undefined) {\n if (!b.has(v)) return false;\n } else if (!bItems.some((bv) => safeIsEqual(v, bv, visited))) {\n return false;\n }\n }\n\n return true;\n }\n\n // RegExp comparison\n if (a instanceof RegExp || b instanceof RegExp) {\n return a instanceof RegExp && b instanceof RegExp && a.source === b.source && a.flags === b.flags;\n }\n\n // Cross-type guards: Map/Set vs plain objects are never equal\n if (a instanceof Map || b instanceof Map) return false;\n\n if (a instanceof Set || b instanceof Set) return false;\n\n // Object comparison\n const keysA = Object.keys(a);\n const keysB = Object.keys(b);\n\n if (keysA.length !== keysB.length) return false;\n\n for (const key of keysA) {\n if (\n !Object.hasOwn(b, key) ||\n !safeIsEqual((a as Record<string, unknown>)[key], (b as Record<string, unknown>)[key], visited)\n )\n return false;\n }\n\n return true;\n}\n"],"mappings":"AAsBA,SAAgB,EAAQ,EAAY,EAAqB,CACvD,OAAO,EAAY,EAAG,EAAG,IAAI,OAAS,CACxC,CAEA,SAAS,EAAY,EAAY,EAAY,EAA2C,CAEtF,GAAI,IAAM,EAAG,MAAO,GAGpB,GAAI,GAAK,MAAQ,GAAK,MAAQ,OAAO,GAAM,OAAO,GAAK,OAAO,GAAM,UAAY,OAAO,GAAM,SAAU,MAAO,GAI9G,GAAI,EAAQ,IAAI,CAAW,EACzB,OAAO,EAAQ,IAAI,CAAW,IAAM,EAMtC,GAHA,EAAQ,IAAI,EAAa,CAAW,EAGhC,MAAM,QAAQ,CAAC,GAAK,MAAM,QAAQ,CAAC,EAGrC,MAFI,CAAC,MAAM,QAAQ,CAAC,GAAK,CAAC,MAAM,QAAQ,CAAC,GAAK,EAAE,SAAW,EAAE,OAAe,GAErE,EAAE,OAAO,EAAM,IAAQ,EAAY,EAAM,EAAE,GAAM,CAAO,CAAC,EAIlE,GAAI,aAAa,MAAQ,aAAa,KACpC,OAAO,EAAE,QAAQ,IAAM,EAAE,QAAQ,EAInC,GAAI,aAAa,KAAO,aAAa,IAAK,CACxC,GAAI,EAAE,OAAS,EAAE,KAAM,MAAO,GAE9B,IAAK,GAAM,CAAC,EAAG,KAAM,EACnB,GAAI,CAAC,EAAE,IAAI,CAAC,GAAK,CAAC,EAAY,EAAG,EAAE,IAAI,CAAC,EAAG,CAAO,EAAG,MAAO,GAG9D,MAAO,EACT,CAGA,GAAI,aAAa,KAAO,aAAa,IAAK,CACxC,GAAI,EAAE,OAAS,EAAE,KAAM,MAAO,GAE9B,IAAM,EAAS,CAAC,GAAG,CAAC,EAEpB,IAAK,IAAM,KAAK,EAEd,GAAI,OAAO,GAAM,UAAY,OAAO,GAAM,UAAY,OAAO,GAAM,WAAa,GAAM,SAChF,CAAC,EAAE,IAAI,CAAC,EAAG,MAAO,EAAA,MACjB,GAAI,CAAC,EAAO,KAAM,GAAO,EAAY,EAAG,EAAI,CAAO,CAAC,EACzD,MAAO,GAIX,MAAO,EACT,CAGA,GAAI,aAAa,QAAU,aAAa,OACtC,OAAO,aAAa,QAAU,aAAa,QAAU,EAAE,SAAW,EAAE,QAAU,EAAE,QAAU,EAAE,MAM9F,GAFI,aAAa,KAAO,aAAa,KAEjC,aAAa,KAAO,aAAa,IAAK,MAAO,GAGjD,IAAM,EAAQ,OAAO,KAAK,CAAC,EACrB,EAAQ,OAAO,KAAK,CAAC,EAE3B,GAAI,EAAM,SAAW,EAAM,OAAQ,MAAO,GAE1C,IAAK,IAAM,KAAO,EAChB,GACE,CAAC,OAAO,OAAO,EAAG,CAAG,GACrB,CAAC,EAAa,EAA8B,GAAO,EAA8B,GAAM,CAAO,EAE9F,MAAO,GAGX,MAAO,EACT"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Recursively compares two values for deep equality.
|
|
3
|
+
* Supports plain objects, arrays, `Date`, `Map`, `Set`, `RegExp`, and circular references.
|
|
4
|
+
*
|
|
5
|
+
* Uses `===` for the primitive comparison, so `isEqual(NaN, NaN)` is `false` and
|
|
6
|
+
* `isEqual(0, -0)` is `true` — the opposite of `shallowEqual`, which uses `Object.is` and
|
|
7
|
+
* treats `NaN` as equal to itself and `-0` as distinct from `0`.
|
|
8
|
+
*
|
|
9
|
+
* For one-level-deep reference equality, use `shallowEqual` instead.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* isEqual([1, 2, 3], [1, 2, 3]); // true
|
|
14
|
+
* isEqual({ a: { b: 2 } }, { a: { b: 2 } }); // true
|
|
15
|
+
* isEqual(new Date('2023-01-01'), new Date('2023-01-01')); // true
|
|
16
|
+
* isEqual(new Map([['k', 1]]), new Map([['k', 1]])); // true
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @param a - First value to compare.
|
|
20
|
+
* @param b - Second value to compare.
|
|
21
|
+
* @returns `true` if the values are deeply equal.
|
|
22
|
+
*/
|
|
23
|
+
export declare function isEqual(a: unknown, b: unknown): boolean;
|
|
24
|
+
//# sourceMappingURL=isEqual.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isEqual.d.ts","sourceRoot":"","sources":["../../src/guards/isEqual.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAEvD"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
//#region src/guards/isEqual.ts
|
|
2
|
+
function e(e, n) {
|
|
3
|
+
return t(e, n, /* @__PURE__ */ new WeakMap());
|
|
4
|
+
}
|
|
5
|
+
function t(e, n, r) {
|
|
6
|
+
if (e === n) return !0;
|
|
7
|
+
if (e == null || n == null || typeof e != typeof n || typeof e != "object" || typeof n != "object") return !1;
|
|
8
|
+
if (r.has(e)) return r.get(e) === n;
|
|
9
|
+
if (r.set(e, n), Array.isArray(e) || Array.isArray(n)) return !Array.isArray(e) || !Array.isArray(n) || e.length !== n.length ? !1 : e.every((e, i) => t(e, n[i], r));
|
|
10
|
+
if (e instanceof Date && n instanceof Date) return e.getTime() === n.getTime();
|
|
11
|
+
if (e instanceof Map && n instanceof Map) {
|
|
12
|
+
if (e.size !== n.size) return !1;
|
|
13
|
+
for (let [i, a] of e) if (!n.has(i) || !t(a, n.get(i), r)) return !1;
|
|
14
|
+
return !0;
|
|
15
|
+
}
|
|
16
|
+
if (e instanceof Set && n instanceof Set) {
|
|
17
|
+
if (e.size !== n.size) return !1;
|
|
18
|
+
let i = [...n];
|
|
19
|
+
for (let a of e) if (typeof a == "string" || typeof a == "number" || typeof a == "boolean" || a == null) {
|
|
20
|
+
if (!n.has(a)) return !1;
|
|
21
|
+
} else if (!i.some((e) => t(a, e, r))) return !1;
|
|
22
|
+
return !0;
|
|
23
|
+
}
|
|
24
|
+
if (e instanceof RegExp || n instanceof RegExp) return e instanceof RegExp && n instanceof RegExp && e.source === n.source && e.flags === n.flags;
|
|
25
|
+
if (e instanceof Map || n instanceof Map || e instanceof Set || n instanceof Set) return !1;
|
|
26
|
+
let i = Object.keys(e), a = Object.keys(n);
|
|
27
|
+
if (i.length !== a.length) return !1;
|
|
28
|
+
for (let a of i) if (!Object.hasOwn(n, a) || !t(e[a], n[a], r)) return !1;
|
|
29
|
+
return !0;
|
|
30
|
+
}
|
|
31
|
+
//#endregion
|
|
32
|
+
export { e as isEqual };
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=isEqual.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isEqual.js","names":[],"sources":["../../src/guards/isEqual.ts"],"sourcesContent":["/**\n * Recursively compares two values for deep equality.\n * Supports plain objects, arrays, `Date`, `Map`, `Set`, `RegExp`, and circular references.\n *\n * Uses `===` for the primitive comparison, so `isEqual(NaN, NaN)` is `false` and\n * `isEqual(0, -0)` is `true` — the opposite of `shallowEqual`, which uses `Object.is` and\n * treats `NaN` as equal to itself and `-0` as distinct from `0`.\n *\n * For one-level-deep reference equality, use `shallowEqual` instead.\n *\n * @example\n * ```ts\n * isEqual([1, 2, 3], [1, 2, 3]); // true\n * isEqual({ a: { b: 2 } }, { a: { b: 2 } }); // true\n * isEqual(new Date('2023-01-01'), new Date('2023-01-01')); // true\n * isEqual(new Map([['k', 1]]), new Map([['k', 1]])); // true\n * ```\n *\n * @param a - First value to compare.\n * @param b - Second value to compare.\n * @returns `true` if the values are deeply equal.\n */\nexport function isEqual(a: unknown, b: unknown): boolean {\n return safeIsEqual(a, b, new WeakMap());\n}\n\nfunction safeIsEqual(a: unknown, b: unknown, visited: WeakMap<object, object>): boolean {\n // Check for strict equality (handles primitives and references)\n if (a === b) return true;\n\n // If either is null or not an object, they're not equal\n if (a == null || b == null || typeof a !== typeof b || typeof a !== 'object' || typeof b !== 'object') return false;\n\n // Check for circular references\n // We only track 'a' because if 'a' is cyclical, 'b' must also be cyclic to be equal\n if (visited.has(a as object)) {\n return visited.get(a as object) === b;\n }\n\n visited.set(a as object, b as object);\n\n // Array comparison\n if (Array.isArray(a) || Array.isArray(b)) {\n if (!Array.isArray(a) || !Array.isArray(b) || a.length !== b.length) return false;\n\n return a.every((item, idx) => safeIsEqual(item, b[idx], visited));\n }\n\n // Date comparison\n if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime();\n }\n\n // Map comparison\n if (a instanceof Map && b instanceof Map) {\n if (a.size !== b.size) return false;\n\n for (const [k, v] of a) {\n if (!b.has(k) || !safeIsEqual(v, b.get(k), visited)) return false;\n }\n\n return true;\n }\n\n // Set comparison — fast path for primitive values, deep for objects\n if (a instanceof Set && b instanceof Set) {\n if (a.size !== b.size) return false;\n\n const bItems = [...b];\n\n for (const v of a) {\n // O(1) path for primitives — avoid the O(n) .some() scan\n if (typeof v === 'string' || typeof v === 'number' || typeof v === 'boolean' || v === null || v === undefined) {\n if (!b.has(v)) return false;\n } else if (!bItems.some((bv) => safeIsEqual(v, bv, visited))) {\n return false;\n }\n }\n\n return true;\n }\n\n // RegExp comparison\n if (a instanceof RegExp || b instanceof RegExp) {\n return a instanceof RegExp && b instanceof RegExp && a.source === b.source && a.flags === b.flags;\n }\n\n // Cross-type guards: Map/Set vs plain objects are never equal\n if (a instanceof Map || b instanceof Map) return false;\n\n if (a instanceof Set || b instanceof Set) return false;\n\n // Object comparison\n const keysA = Object.keys(a);\n const keysB = Object.keys(b);\n\n if (keysA.length !== keysB.length) return false;\n\n for (const key of keysA) {\n if (\n !Object.hasOwn(b, key) ||\n !safeIsEqual((a as Record<string, unknown>)[key], (b as Record<string, unknown>)[key], visited)\n )\n return false;\n }\n\n return true;\n}\n"],"mappings":";AAsBA,SAAgB,EAAQ,GAAY,GAAqB;CACvD,OAAO,EAAY,GAAG,mBAAG,IAAI,QAAQ,CAAC;AACxC;AAEA,SAAS,EAAY,GAAY,GAAY,GAA2C;CAEtF,IAAI,MAAM,GAAG,OAAO;CAGpB,IAAI,KAAK,QAAQ,KAAK,QAAQ,OAAO,KAAM,OAAO,KAAK,OAAO,KAAM,YAAY,OAAO,KAAM,UAAU,OAAO;CAI9G,IAAI,EAAQ,IAAI,CAAW,GACzB,OAAO,EAAQ,IAAI,CAAW,MAAM;CAMtC,IAHA,EAAQ,IAAI,GAAa,CAAW,GAGhC,MAAM,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,GAGrC,OAFI,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,SAAe,KAErE,EAAE,OAAO,GAAM,MAAQ,EAAY,GAAM,EAAE,IAAM,CAAO,CAAC;CAIlE,IAAI,aAAa,QAAQ,aAAa,MACpC,OAAO,EAAE,QAAQ,MAAM,EAAE,QAAQ;CAInC,IAAI,aAAa,OAAO,aAAa,KAAK;EACxC,IAAI,EAAE,SAAS,EAAE,MAAM,OAAO;EAE9B,KAAK,IAAM,CAAC,GAAG,MAAM,GACnB,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAY,GAAG,EAAE,IAAI,CAAC,GAAG,CAAO,GAAG,OAAO;EAG9D,OAAO;CACT;CAGA,IAAI,aAAa,OAAO,aAAa,KAAK;EACxC,IAAI,EAAE,SAAS,EAAE,MAAM,OAAO;EAE9B,IAAM,IAAS,CAAC,GAAG,CAAC;EAEpB,KAAK,IAAM,KAAK,GAEd,IAAI,OAAO,KAAM,YAAY,OAAO,KAAM,YAAY,OAAO,KAAM,aAAa,KAAM;OAChF,CAAC,EAAE,IAAI,CAAC,GAAG,OAAO;EAAA,OACjB,IAAI,CAAC,EAAO,MAAM,MAAO,EAAY,GAAG,GAAI,CAAO,CAAC,GACzD,OAAO;EAIX,OAAO;CACT;CAGA,IAAI,aAAa,UAAU,aAAa,QACtC,OAAO,aAAa,UAAU,aAAa,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE;CAM9F,IAFI,aAAa,OAAO,aAAa,OAEjC,aAAa,OAAO,aAAa,KAAK,OAAO;CAGjD,IAAM,IAAQ,OAAO,KAAK,CAAC,GACrB,IAAQ,OAAO,KAAK,CAAC;CAE3B,IAAI,EAAM,WAAW,EAAM,QAAQ,OAAO;CAE1C,KAAK,IAAM,KAAO,GAChB,IACE,CAAC,OAAO,OAAO,GAAG,CAAG,KACrB,CAAC,EAAa,EAA8B,IAAO,EAA8B,IAAM,CAAO,GAE9F,OAAO;CAGX,OAAO;AACT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isError.cjs","names":[],"sources":["../../src/guards/isError.ts"],"sourcesContent":["/**\n * Determines if the passed value is an `Error` instance.\n *\n * @example\n * ```ts\n * isError(new Error('oops')); // true\n * isError('oops'); // false\n * isError(null); // false\n * ```\n *\n * @param value - The value to test.\n * @returns `true` if the value is an `Error` instance.\n */\nexport function isError(value: unknown): value is Error {\n return value instanceof Error;\n}\n"],"mappings":"AAaA,SAAgB,EAAQ,EAAgC,CACtD,OAAO,aAAiB,KAC1B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Determines if the passed value is an `Error` instance.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* isError(new Error('oops')); // true
|
|
7
|
+
* isError('oops'); // false
|
|
8
|
+
* isError(null); // false
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @param value - The value to test.
|
|
12
|
+
* @returns `true` if the value is an `Error` instance.
|
|
13
|
+
*/
|
|
14
|
+
export declare function isError(value: unknown): value is Error;
|
|
15
|
+
//# sourceMappingURL=isError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isError.d.ts","sourceRoot":"","sources":["../../src/guards/isError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,KAAK,CAEtD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isError.js","names":[],"sources":["../../src/guards/isError.ts"],"sourcesContent":["/**\n * Determines if the passed value is an `Error` instance.\n *\n * @example\n * ```ts\n * isError(new Error('oops')); // true\n * isError('oops'); // false\n * isError(null); // false\n * ```\n *\n * @param value - The value to test.\n * @returns `true` if the value is an `Error` instance.\n */\nexport function isError(value: unknown): value is Error {\n return value instanceof Error;\n}\n"],"mappings":";AAaA,SAAgB,EAAQ,GAAgC;CACtD,OAAO,aAAiB;AAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isFunction.cjs","names":[],"sources":["../../src/guards/isFunction.ts"],"sourcesContent":["/**\n * Determines if the passed value is a function.\n *\n * @example\n * ```ts\n * isFunction(function() {}) // true\n * isFunction(() => {}) // true\n * isFunction('hello world') // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is a function, else `false`.\n */\nexport function isFunction(arg: unknown): arg is (...args: any[]) => any {\n return typeof arg === 'function';\n}\n"],"mappings":"AAcA,SAAgB,EAAW,EAA8C,CACvE,OAAO,OAAO,GAAQ,UACxB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Determines if the passed value is a function.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* isFunction(function() {}) // true
|
|
7
|
+
* isFunction(() => {}) // true
|
|
8
|
+
* isFunction('hello world') // false
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @param arg - The argument to be checked.
|
|
12
|
+
*
|
|
13
|
+
* @returns `true` if the value is a function, else `false`.
|
|
14
|
+
*/
|
|
15
|
+
export declare function isFunction(arg: unknown): arg is (...args: any[]) => any;
|
|
16
|
+
//# sourceMappingURL=isFunction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isFunction.d.ts","sourceRoot":"","sources":["../../src/guards/isFunction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAEvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isFunction.js","names":[],"sources":["../../src/guards/isFunction.ts"],"sourcesContent":["/**\n * Determines if the passed value is a function.\n *\n * @example\n * ```ts\n * isFunction(function() {}) // true\n * isFunction(() => {}) // true\n * isFunction('hello world') // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is a function, else `false`.\n */\nexport function isFunction(arg: unknown): arg is (...args: any[]) => any {\n return typeof arg === 'function';\n}\n"],"mappings":";AAcA,SAAgB,EAAW,GAA8C;CACvE,OAAO,OAAO,KAAQ;AACxB"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function e(t,n){if(t===n)return!0;if(t==null||n==null)return!1;let r=Array.isArray(t),i=Array.isArray(n);if(r!==i)return!1;if(r&&i){let r=t,i=n;return i.length>r.length?!1:i.every((t,n)=>e(r[n],t))}if(typeof n==`object`&&typeof t==`object`){if(n instanceof Date||t instanceof Date)return n instanceof Date&&t instanceof Date&&n.getTime()===t.getTime();if(n instanceof RegExp||t instanceof RegExp)return n instanceof RegExp&&t instanceof RegExp&&n.source===t.source&&n.flags===t.flags;if(n instanceof Map||n instanceof Set||t instanceof Map||t instanceof Set)return!1;for(let r of Object.keys(n))if(!e(t?.[r],n[r]))return!1;return!0}return t===n}exports.isMatch=e;
|
|
2
|
+
//# sourceMappingURL=isMatch.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isMatch.cjs","names":[],"sources":["../../src/guards/isMatch.ts"],"sourcesContent":["/**\n * Performs a partial deep comparison between object and source to determine if object contains equivalent property values.\n *\n * @example\n * ```ts\n * const object = { a: 1, b: 2, c: { d: 3 } };\n *\n * isMatch(object, { a: 1, c: { d: 3 } }); // true\n * isMatch(object, { a: 1, b: 2 }); // true\n * isMatch(object, { a: 1, c: { d: 4 } }); // false\n *\n * isMatch([1, 2, 3], [1, 2]); // true\n * isMatch([1, 2, 3], [1, 2, 3]); // true\n * isMatch([1, 2, 3], [1, 2, 4]); // false\n * ```\n *\n * @param object - The object to inspect.\n * @param source - The object of property values to match.\n *\n * @returns `true` if the object is a match, else `false`.\n */\nexport function isMatch(object: unknown, source: unknown): boolean {\n if (object === source) return true;\n\n if (object == null || source == null) return false;\n\n const isObjArray = Array.isArray(object);\n const isSrcArray = Array.isArray(source);\n\n if (isObjArray !== isSrcArray) return false;\n\n if (isObjArray && isSrcArray) {\n const objArr = object as unknown[];\n const srcArr = source as unknown[];\n\n if (srcArr.length > objArr.length) return false;\n\n return srcArr.every((item, i) => isMatch(objArr[i], item));\n }\n\n if (typeof source === 'object' && typeof object === 'object') {\n // Date has no own enumerable properties — compare by timestamp instead of falling through\n // to the empty Object.keys() loop below (which would vacuously return true).\n if (source instanceof Date || object instanceof Date) {\n return source instanceof Date && object instanceof Date && source.getTime() === object.getTime();\n }\n\n // Same reasoning for RegExp — compare by source pattern and flags.\n if (source instanceof RegExp || object instanceof RegExp) {\n return (\n source instanceof RegExp &&\n object instanceof RegExp &&\n source.source === object.source &&\n source.flags === object.flags\n );\n }\n\n // Map and Set are not structurally matched by key iteration — treat as opaque\n if (source instanceof Map || source instanceof Set || object instanceof Map || object instanceof Set) {\n return false;\n }\n\n for (const key of Object.keys(source as Record<string, unknown>)) {\n if (!isMatch((object as Record<string, unknown>)?.[key], (source as Record<string, unknown>)[key])) {\n return false;\n }\n }\n\n return true;\n }\n\n return object === source;\n}\n"],"mappings":"AAqBA,SAAgB,EAAQ,EAAiB,EAA0B,CACjE,GAAI,IAAW,EAAQ,MAAO,GAE9B,GAAI,GAAU,MAAQ,GAAU,KAAM,MAAO,GAE7C,IAAM,EAAa,MAAM,QAAQ,CAAM,EACjC,EAAa,MAAM,QAAQ,CAAM,EAEvC,GAAI,IAAe,EAAY,MAAO,GAEtC,GAAI,GAAc,EAAY,CAC5B,IAAM,EAAS,EACT,EAAS,EAIf,OAFI,EAAO,OAAS,EAAO,OAAe,GAEnC,EAAO,OAAO,EAAM,IAAM,EAAQ,EAAO,GAAI,CAAI,CAAC,CAC3D,CAEA,GAAI,OAAO,GAAW,UAAY,OAAO,GAAW,SAAU,CAG5D,GAAI,aAAkB,MAAQ,aAAkB,KAC9C,OAAO,aAAkB,MAAQ,aAAkB,MAAQ,EAAO,QAAQ,IAAM,EAAO,QAAQ,EAIjG,GAAI,aAAkB,QAAU,aAAkB,OAChD,OACE,aAAkB,QAClB,aAAkB,QAClB,EAAO,SAAW,EAAO,QACzB,EAAO,QAAU,EAAO,MAK5B,GAAI,aAAkB,KAAO,aAAkB,KAAO,aAAkB,KAAO,aAAkB,IAC/F,MAAO,GAGT,IAAK,IAAM,KAAO,OAAO,KAAK,CAAiC,EAC7D,GAAI,CAAC,EAAS,IAAqC,GAAO,EAAmC,EAAI,EAC/F,MAAO,GAIX,MAAO,EACT,CAEA,OAAO,IAAW,CACpB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Performs a partial deep comparison between object and source to determine if object contains equivalent property values.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* const object = { a: 1, b: 2, c: { d: 3 } };
|
|
7
|
+
*
|
|
8
|
+
* isMatch(object, { a: 1, c: { d: 3 } }); // true
|
|
9
|
+
* isMatch(object, { a: 1, b: 2 }); // true
|
|
10
|
+
* isMatch(object, { a: 1, c: { d: 4 } }); // false
|
|
11
|
+
*
|
|
12
|
+
* isMatch([1, 2, 3], [1, 2]); // true
|
|
13
|
+
* isMatch([1, 2, 3], [1, 2, 3]); // true
|
|
14
|
+
* isMatch([1, 2, 3], [1, 2, 4]); // false
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* @param object - The object to inspect.
|
|
18
|
+
* @param source - The object of property values to match.
|
|
19
|
+
*
|
|
20
|
+
* @returns `true` if the object is a match, else `false`.
|
|
21
|
+
*/
|
|
22
|
+
export declare function isMatch(object: unknown, source: unknown): boolean;
|
|
23
|
+
//# sourceMappingURL=isMatch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isMatch.d.ts","sourceRoot":"","sources":["../../src/guards/isMatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAmDjE"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
//#region src/guards/isMatch.ts
|
|
2
|
+
function e(t, n) {
|
|
3
|
+
if (t === n) return !0;
|
|
4
|
+
if (t == null || n == null) return !1;
|
|
5
|
+
let r = Array.isArray(t), i = Array.isArray(n);
|
|
6
|
+
if (r !== i) return !1;
|
|
7
|
+
if (r && i) {
|
|
8
|
+
let r = t, i = n;
|
|
9
|
+
return i.length > r.length ? !1 : i.every((t, n) => e(r[n], t));
|
|
10
|
+
}
|
|
11
|
+
if (typeof n == "object" && typeof t == "object") {
|
|
12
|
+
if (n instanceof Date || t instanceof Date) return n instanceof Date && t instanceof Date && n.getTime() === t.getTime();
|
|
13
|
+
if (n instanceof RegExp || t instanceof RegExp) return n instanceof RegExp && t instanceof RegExp && n.source === t.source && n.flags === t.flags;
|
|
14
|
+
if (n instanceof Map || n instanceof Set || t instanceof Map || t instanceof Set) return !1;
|
|
15
|
+
for (let r of Object.keys(n)) if (!e(t?.[r], n[r])) return !1;
|
|
16
|
+
return !0;
|
|
17
|
+
}
|
|
18
|
+
return t === n;
|
|
19
|
+
}
|
|
20
|
+
//#endregion
|
|
21
|
+
export { e as isMatch };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=isMatch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isMatch.js","names":[],"sources":["../../src/guards/isMatch.ts"],"sourcesContent":["/**\n * Performs a partial deep comparison between object and source to determine if object contains equivalent property values.\n *\n * @example\n * ```ts\n * const object = { a: 1, b: 2, c: { d: 3 } };\n *\n * isMatch(object, { a: 1, c: { d: 3 } }); // true\n * isMatch(object, { a: 1, b: 2 }); // true\n * isMatch(object, { a: 1, c: { d: 4 } }); // false\n *\n * isMatch([1, 2, 3], [1, 2]); // true\n * isMatch([1, 2, 3], [1, 2, 3]); // true\n * isMatch([1, 2, 3], [1, 2, 4]); // false\n * ```\n *\n * @param object - The object to inspect.\n * @param source - The object of property values to match.\n *\n * @returns `true` if the object is a match, else `false`.\n */\nexport function isMatch(object: unknown, source: unknown): boolean {\n if (object === source) return true;\n\n if (object == null || source == null) return false;\n\n const isObjArray = Array.isArray(object);\n const isSrcArray = Array.isArray(source);\n\n if (isObjArray !== isSrcArray) return false;\n\n if (isObjArray && isSrcArray) {\n const objArr = object as unknown[];\n const srcArr = source as unknown[];\n\n if (srcArr.length > objArr.length) return false;\n\n return srcArr.every((item, i) => isMatch(objArr[i], item));\n }\n\n if (typeof source === 'object' && typeof object === 'object') {\n // Date has no own enumerable properties — compare by timestamp instead of falling through\n // to the empty Object.keys() loop below (which would vacuously return true).\n if (source instanceof Date || object instanceof Date) {\n return source instanceof Date && object instanceof Date && source.getTime() === object.getTime();\n }\n\n // Same reasoning for RegExp — compare by source pattern and flags.\n if (source instanceof RegExp || object instanceof RegExp) {\n return (\n source instanceof RegExp &&\n object instanceof RegExp &&\n source.source === object.source &&\n source.flags === object.flags\n );\n }\n\n // Map and Set are not structurally matched by key iteration — treat as opaque\n if (source instanceof Map || source instanceof Set || object instanceof Map || object instanceof Set) {\n return false;\n }\n\n for (const key of Object.keys(source as Record<string, unknown>)) {\n if (!isMatch((object as Record<string, unknown>)?.[key], (source as Record<string, unknown>)[key])) {\n return false;\n }\n }\n\n return true;\n }\n\n return object === source;\n}\n"],"mappings":";AAqBA,SAAgB,EAAQ,GAAiB,GAA0B;CACjE,IAAI,MAAW,GAAQ,OAAO;CAE9B,IAAI,KAAU,QAAQ,KAAU,MAAM,OAAO;CAE7C,IAAM,IAAa,MAAM,QAAQ,CAAM,GACjC,IAAa,MAAM,QAAQ,CAAM;CAEvC,IAAI,MAAe,GAAY,OAAO;CAEtC,IAAI,KAAc,GAAY;EAC5B,IAAM,IAAS,GACT,IAAS;EAIf,OAFI,EAAO,SAAS,EAAO,SAAe,KAEnC,EAAO,OAAO,GAAM,MAAM,EAAQ,EAAO,IAAI,CAAI,CAAC;CAC3D;CAEA,IAAI,OAAO,KAAW,YAAY,OAAO,KAAW,UAAU;EAG5D,IAAI,aAAkB,QAAQ,aAAkB,MAC9C,OAAO,aAAkB,QAAQ,aAAkB,QAAQ,EAAO,QAAQ,MAAM,EAAO,QAAQ;EAIjG,IAAI,aAAkB,UAAU,aAAkB,QAChD,OACE,aAAkB,UAClB,aAAkB,UAClB,EAAO,WAAW,EAAO,UACzB,EAAO,UAAU,EAAO;EAK5B,IAAI,aAAkB,OAAO,aAAkB,OAAO,aAAkB,OAAO,aAAkB,KAC/F,OAAO;EAGT,KAAK,IAAM,KAAO,OAAO,KAAK,CAAiC,GAC7D,IAAI,CAAC,EAAS,IAAqC,IAAO,EAAmC,EAAI,GAC/F,OAAO;EAIX,OAAO;CACT;CAEA,OAAO,MAAW;AACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isNil.cjs","names":[],"sources":["../../src/guards/isNil.ts"],"sourcesContent":["/**\n * Determines if the passed value is null or undefined.\n *\n * @example\n * ```ts\n * isNil(null); // true\n * isNil(undefined); // true\n * isNil(''); // false\n * isNil(0); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is null or undefined, else `false`.\n */\nexport function isNil(arg: unknown): arg is null | undefined {\n return arg === undefined || arg === null;\n}\n"],"mappings":"AAeA,SAAgB,EAAM,EAAuC,CAC3D,OAAO,GAA6B,IACtC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Determines if the passed value is null or undefined.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* isNil(null); // true
|
|
7
|
+
* isNil(undefined); // true
|
|
8
|
+
* isNil(''); // false
|
|
9
|
+
* isNil(0); // false
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* @param arg - The argument to be checked.
|
|
13
|
+
*
|
|
14
|
+
* @returns `true` if the value is null or undefined, else `false`.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isNil(arg: unknown): arg is null | undefined;
|
|
17
|
+
//# sourceMappingURL=isNil.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isNil.d.ts","sourceRoot":"","sources":["../../src/guards/isNil.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,IAAI,GAAG,SAAS,CAE3D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isNil.js","names":[],"sources":["../../src/guards/isNil.ts"],"sourcesContent":["/**\n * Determines if the passed value is null or undefined.\n *\n * @example\n * ```ts\n * isNil(null); // true\n * isNil(undefined); // true\n * isNil(''); // false\n * isNil(0); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is null or undefined, else `false`.\n */\nexport function isNil(arg: unknown): arg is null | undefined {\n return arg === undefined || arg === null;\n}\n"],"mappings":";AAeA,SAAgB,EAAM,GAAuC;CAC3D,OAAO,KAA6B;AACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isNumber.cjs","names":[],"sources":["../../src/guards/isNumber.ts"],"sourcesContent":["/**\n * Determines if the passed value is a number.\n *\n * @example\n * ```ts\n * isNumber(123); // true\n * isNumber('hello world'); // false\n * ```\n *\n * @param arg - The argument to be checked.\n *\n * @returns `true` if the value is a number, else `false`.\n */\nexport function isNumber(arg: unknown): arg is number {\n return typeof arg === 'number' && !Number.isNaN(arg);\n}\n"],"mappings":"AAaA,SAAgB,EAAS,EAA6B,CACpD,OAAO,OAAO,GAAQ,UAAY,CAAC,OAAO,MAAM,CAAG,CACrD"}
|