@mdigitalcn/utils 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +228 -0
- package/dist/esm/array/checkValueInArray.js +2 -0
- package/dist/esm/array/checkValueInArray.js.map +1 -0
- package/dist/esm/array/chunk.js +2 -0
- package/dist/esm/array/chunk.js.map +1 -0
- package/dist/esm/array/collectBy.js +2 -0
- package/dist/esm/array/collectBy.js.map +1 -0
- package/dist/esm/array/compact.js +2 -0
- package/dist/esm/array/compact.js.map +1 -0
- package/dist/esm/array/countBy.js +2 -0
- package/dist/esm/array/countBy.js.map +1 -0
- package/dist/esm/array/difference.js +2 -0
- package/dist/esm/array/difference.js.map +1 -0
- package/dist/esm/array/drop.js +2 -0
- package/dist/esm/array/drop.js.map +1 -0
- package/dist/esm/array/dropWhile.js +2 -0
- package/dist/esm/array/dropWhile.js.map +1 -0
- package/dist/esm/array/first.js +2 -0
- package/dist/esm/array/first.js.map +1 -0
- package/dist/esm/array/flatten.js +2 -0
- package/dist/esm/array/flatten.js.map +1 -0
- package/dist/esm/array/groupBy.js +2 -0
- package/dist/esm/array/groupBy.js.map +1 -0
- package/dist/esm/array/index.js +2 -0
- package/dist/esm/array/index.js.map +1 -0
- package/dist/esm/array/intersection.js +2 -0
- package/dist/esm/array/intersection.js.map +1 -0
- package/dist/esm/array/keyBy.js +2 -0
- package/dist/esm/array/keyBy.js.map +1 -0
- package/dist/esm/array/last.js +2 -0
- package/dist/esm/array/last.js.map +1 -0
- package/dist/esm/array/maxBy.js +2 -0
- package/dist/esm/array/maxBy.js.map +1 -0
- package/dist/esm/array/minBy.js +2 -0
- package/dist/esm/array/minBy.js.map +1 -0
- package/dist/esm/array/partition.js +2 -0
- package/dist/esm/array/partition.js.map +1 -0
- package/dist/esm/array/sameElementsInArrays.js +2 -0
- package/dist/esm/array/sameElementsInArrays.js.map +1 -0
- package/dist/esm/array/sample.js +2 -0
- package/dist/esm/array/sample.js.map +1 -0
- package/dist/esm/array/shuffle.js +2 -0
- package/dist/esm/array/shuffle.js.map +1 -0
- package/dist/esm/array/sortBy.js +2 -0
- package/dist/esm/array/sortBy.js.map +1 -0
- package/dist/esm/array/take.js +2 -0
- package/dist/esm/array/take.js.map +1 -0
- package/dist/esm/array/takeWhile.js +2 -0
- package/dist/esm/array/takeWhile.js.map +1 -0
- package/dist/esm/array/union.js +2 -0
- package/dist/esm/array/union.js.map +1 -0
- package/dist/esm/array/uniq.js +2 -0
- package/dist/esm/array/uniq.js.map +1 -0
- package/dist/esm/array/uniqBy.js +2 -0
- package/dist/esm/array/uniqBy.js.map +1 -0
- package/dist/esm/array/without.js +2 -0
- package/dist/esm/array/without.js.map +1 -0
- package/dist/esm/array/xor.js +2 -0
- package/dist/esm/array/xor.js.map +1 -0
- package/dist/esm/array/zip.js +2 -0
- package/dist/esm/array/zip.js.map +1 -0
- package/dist/esm/array/zipObject.js +2 -0
- package/dist/esm/array/zipObject.js.map +1 -0
- package/dist/esm/file/anyToString.js +2 -0
- package/dist/esm/file/anyToString.js.map +1 -0
- package/dist/esm/file/convertToFormData.js +2 -0
- package/dist/esm/file/convertToFormData.js.map +1 -0
- package/dist/esm/file/decodeURIValue.js +2 -0
- package/dist/esm/file/decodeURIValue.js.map +1 -0
- package/dist/esm/file/downloadFile.js +2 -0
- package/dist/esm/file/downloadFile.js.map +1 -0
- package/dist/esm/file/getBase64.js +2 -0
- package/dist/esm/file/getBase64.js.map +1 -0
- package/dist/esm/file/index.js +2 -0
- package/dist/esm/file/index.js.map +1 -0
- package/dist/esm/file/isFileArray.js +2 -0
- package/dist/esm/file/isFileArray.js.map +1 -0
- package/dist/esm/function/compose.js +2 -0
- package/dist/esm/function/compose.js.map +1 -0
- package/dist/esm/function/curry.js +2 -0
- package/dist/esm/function/curry.js.map +1 -0
- package/dist/esm/function/debounce.js +2 -0
- package/dist/esm/function/debounce.js.map +1 -0
- package/dist/esm/function/hexToRgba.js +2 -0
- package/dist/esm/function/hexToRgba.js.map +1 -0
- package/dist/esm/function/identity.js +2 -0
- package/dist/esm/function/identity.js.map +1 -0
- package/dist/esm/function/index.js +2 -0
- package/dist/esm/function/index.js.map +1 -0
- package/dist/esm/function/memoize.js +2 -0
- package/dist/esm/function/memoize.js.map +1 -0
- package/dist/esm/function/negate.js +2 -0
- package/dist/esm/function/negate.js.map +1 -0
- package/dist/esm/function/noop.js +2 -0
- package/dist/esm/function/noop.js.map +1 -0
- package/dist/esm/function/once.js +2 -0
- package/dist/esm/function/once.js.map +1 -0
- package/dist/esm/function/partial.js +2 -0
- package/dist/esm/function/partial.js.map +1 -0
- package/dist/esm/function/pipe.js +2 -0
- package/dist/esm/function/pipe.js.map +1 -0
- package/dist/esm/function/queryString.js +2 -0
- package/dist/esm/function/queryString.js.map +1 -0
- package/dist/esm/function/throttle.js +2 -0
- package/dist/esm/function/throttle.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/math/clamp.js +2 -0
- package/dist/esm/math/clamp.js.map +1 -0
- package/dist/esm/math/inRange.js +2 -0
- package/dist/esm/math/inRange.js.map +1 -0
- package/dist/esm/math/index.js +2 -0
- package/dist/esm/math/index.js.map +1 -0
- package/dist/esm/math/mean.js +2 -0
- package/dist/esm/math/mean.js.map +1 -0
- package/dist/esm/math/median.js +2 -0
- package/dist/esm/math/median.js.map +1 -0
- package/dist/esm/math/random.js +2 -0
- package/dist/esm/math/random.js.map +1 -0
- package/dist/esm/math/range.js +2 -0
- package/dist/esm/math/range.js.map +1 -0
- package/dist/esm/math/round.js +2 -0
- package/dist/esm/math/round.js.map +1 -0
- package/dist/esm/math/sum.js +2 -0
- package/dist/esm/math/sum.js.map +1 -0
- package/dist/esm/object/cloneDeep.js +2 -0
- package/dist/esm/object/cloneDeep.js.map +1 -0
- package/dist/esm/object/findKey.js +2 -0
- package/dist/esm/object/findKey.js.map +1 -0
- package/dist/esm/object/flattenObject.js +2 -0
- package/dist/esm/object/flattenObject.js.map +1 -0
- package/dist/esm/object/get.js +2 -0
- package/dist/esm/object/get.js.map +1 -0
- package/dist/esm/object/getTrue.js +2 -0
- package/dist/esm/object/getTrue.js.map +1 -0
- package/dist/esm/object/has.js +2 -0
- package/dist/esm/object/has.js.map +1 -0
- package/dist/esm/object/index.js +2 -0
- package/dist/esm/object/index.js.map +1 -0
- package/dist/esm/object/invert.js +2 -0
- package/dist/esm/object/invert.js.map +1 -0
- package/dist/esm/object/isEmpty.js +2 -0
- package/dist/esm/object/isEmpty.js.map +1 -0
- package/dist/esm/object/jsonParse.js +2 -0
- package/dist/esm/object/jsonParse.js.map +1 -0
- package/dist/esm/object/mapKeys.js +2 -0
- package/dist/esm/object/mapKeys.js.map +1 -0
- package/dist/esm/object/mapValues.js +2 -0
- package/dist/esm/object/mapValues.js.map +1 -0
- package/dist/esm/object/mergeDeep.js +2 -0
- package/dist/esm/object/mergeDeep.js.map +1 -0
- package/dist/esm/object/omit.js +2 -0
- package/dist/esm/object/omit.js.map +1 -0
- package/dist/esm/object/omitBy.js +2 -0
- package/dist/esm/object/omitBy.js.map +1 -0
- package/dist/esm/object/path.js +2 -0
- package/dist/esm/object/path.js.map +1 -0
- package/dist/esm/object/pathOr.js +2 -0
- package/dist/esm/object/pathOr.js.map +1 -0
- package/dist/esm/object/pick.js +2 -0
- package/dist/esm/object/pick.js.map +1 -0
- package/dist/esm/object/pickBy.js +2 -0
- package/dist/esm/object/pickBy.js.map +1 -0
- package/dist/esm/object/prop.js +2 -0
- package/dist/esm/object/prop.js.map +1 -0
- package/dist/esm/object/propOr.js +2 -0
- package/dist/esm/object/propOr.js.map +1 -0
- package/dist/esm/object/set.js +2 -0
- package/dist/esm/object/set.js.map +1 -0
- package/dist/esm/predicate/index.js +2 -0
- package/dist/esm/predicate/index.js.map +1 -0
- package/dist/esm/predicate/isArray.js +2 -0
- package/dist/esm/predicate/isArray.js.map +1 -0
- package/dist/esm/predicate/isBoolean.js +2 -0
- package/dist/esm/predicate/isBoolean.js.map +1 -0
- package/dist/esm/predicate/isDate.js +2 -0
- package/dist/esm/predicate/isDate.js.map +1 -0
- package/dist/esm/predicate/isEqual.js +2 -0
- package/dist/esm/predicate/isEqual.js.map +1 -0
- package/dist/esm/predicate/isError.js +2 -0
- package/dist/esm/predicate/isError.js.map +1 -0
- package/dist/esm/predicate/isFunction.js +2 -0
- package/dist/esm/predicate/isFunction.js.map +1 -0
- package/dist/esm/predicate/isNil.js +2 -0
- package/dist/esm/predicate/isNil.js.map +1 -0
- package/dist/esm/predicate/isNumber.js +2 -0
- package/dist/esm/predicate/isNumber.js.map +1 -0
- package/dist/esm/predicate/isPlainObject.js +2 -0
- package/dist/esm/predicate/isPlainObject.js.map +1 -0
- package/dist/esm/predicate/isPrimitive.js +2 -0
- package/dist/esm/predicate/isPrimitive.js.map +1 -0
- package/dist/esm/predicate/isPromise.js +2 -0
- package/dist/esm/predicate/isPromise.js.map +1 -0
- package/dist/esm/predicate/isString.js +2 -0
- package/dist/esm/predicate/isString.js.map +1 -0
- package/dist/esm/promise/attempt.js +2 -0
- package/dist/esm/promise/attempt.js.map +1 -0
- package/dist/esm/promise/delay.js +2 -0
- package/dist/esm/promise/delay.js.map +1 -0
- package/dist/esm/promise/index.js +2 -0
- package/dist/esm/promise/index.js.map +1 -0
- package/dist/esm/promise/invariant.js +2 -0
- package/dist/esm/promise/invariant.js.map +1 -0
- package/dist/esm/promise/retry.js +2 -0
- package/dist/esm/promise/retry.js.map +1 -0
- package/dist/esm/promise/timeout.js +2 -0
- package/dist/esm/promise/timeout.js.map +1 -0
- package/dist/esm/react/hooks/useClickOutside.js +3 -0
- package/dist/esm/react/hooks/useClickOutside.js.map +1 -0
- package/dist/esm/react/hooks/useCopyToClipboard.js +3 -0
- package/dist/esm/react/hooks/useCopyToClipboard.js.map +1 -0
- package/dist/esm/react/hooks/useDebounce.js +3 -0
- package/dist/esm/react/hooks/useDebounce.js.map +1 -0
- package/dist/esm/react/hooks/useIntersectionObserver.js +3 -0
- package/dist/esm/react/hooks/useIntersectionObserver.js.map +1 -0
- package/dist/esm/react/hooks/useIsMounted.js +3 -0
- package/dist/esm/react/hooks/useIsMounted.js.map +1 -0
- package/dist/esm/react/hooks/useLocalStorage.js +3 -0
- package/dist/esm/react/hooks/useLocalStorage.js.map +1 -0
- package/dist/esm/react/hooks/useMediaQuery.js +3 -0
- package/dist/esm/react/hooks/useMediaQuery.js.map +1 -0
- package/dist/esm/react/hooks/useMountEffect.js +3 -0
- package/dist/esm/react/hooks/useMountEffect.js.map +1 -0
- package/dist/esm/react/hooks/usePrevious.js +3 -0
- package/dist/esm/react/hooks/usePrevious.js.map +1 -0
- package/dist/esm/react/hooks/useScreenSize.js +3 -0
- package/dist/esm/react/hooks/useScreenSize.js.map +1 -0
- package/dist/esm/react/hooks/useSessionStorage.js +3 -0
- package/dist/esm/react/hooks/useSessionStorage.js.map +1 -0
- package/dist/esm/react/hooks/useThrottle.js +3 -0
- package/dist/esm/react/hooks/useThrottle.js.map +1 -0
- package/dist/esm/react/hooks/useToggle.js +3 -0
- package/dist/esm/react/hooks/useToggle.js.map +1 -0
- package/dist/esm/react/hooks/useUpdateEffect.js +3 -0
- package/dist/esm/react/hooks/useUpdateEffect.js.map +1 -0
- package/dist/esm/react/index.js +2 -0
- package/dist/esm/react/index.js.map +1 -0
- package/dist/esm/react/utils/clsx.js +2 -0
- package/dist/esm/react/utils/clsx.js.map +1 -0
- package/dist/esm/react/utils/createContext.js +3 -0
- package/dist/esm/react/utils/createContext.js.map +1 -0
- package/dist/esm/react/utils/displayField.js +2 -0
- package/dist/esm/react/utils/displayField.js.map +1 -0
- package/dist/esm/string/camelCase.js +2 -0
- package/dist/esm/string/camelCase.js.map +1 -0
- package/dist/esm/string/capitalize.js +2 -0
- package/dist/esm/string/capitalize.js.map +1 -0
- package/dist/esm/string/deburr.js +2 -0
- package/dist/esm/string/deburr.js.map +1 -0
- package/dist/esm/string/escapeHtml.js +2 -0
- package/dist/esm/string/escapeHtml.js.map +1 -0
- package/dist/esm/string/escapeRegExp.js +2 -0
- package/dist/esm/string/escapeRegExp.js.map +1 -0
- package/dist/esm/string/formatBytes.js +2 -0
- package/dist/esm/string/formatBytes.js.map +1 -0
- package/dist/esm/string/formatDuration.js +2 -0
- package/dist/esm/string/formatDuration.js.map +1 -0
- package/dist/esm/string/formatNumber.js +2 -0
- package/dist/esm/string/formatNumber.js.map +1 -0
- package/dist/esm/string/htmlToText.js +2 -0
- package/dist/esm/string/htmlToText.js.map +1 -0
- package/dist/esm/string/index.js +2 -0
- package/dist/esm/string/index.js.map +1 -0
- package/dist/esm/string/kebabCase.js +2 -0
- package/dist/esm/string/kebabCase.js.map +1 -0
- package/dist/esm/string/maskString.js +2 -0
- package/dist/esm/string/maskString.js.map +1 -0
- package/dist/esm/string/pascalCase.js +2 -0
- package/dist/esm/string/pascalCase.js.map +1 -0
- package/dist/esm/string/pluralize.js +2 -0
- package/dist/esm/string/pluralize.js.map +1 -0
- package/dist/esm/string/slugify.js +2 -0
- package/dist/esm/string/slugify.js.map +1 -0
- package/dist/esm/string/snakeCase.js +2 -0
- package/dist/esm/string/snakeCase.js.map +1 -0
- package/dist/esm/string/startCase.js +2 -0
- package/dist/esm/string/startCase.js.map +1 -0
- package/dist/esm/string/template.js +2 -0
- package/dist/esm/string/template.js.map +1 -0
- package/dist/esm/string/truncateString.js +2 -0
- package/dist/esm/string/truncateString.js.map +1 -0
- package/dist/esm/string/words.js +2 -0
- package/dist/esm/string/words.js.map +1 -0
- package/dist/esm/validation/index.js +2 -0
- package/dist/esm/validation/index.js.map +1 -0
- package/dist/esm/validation/validateFileSizeByType.js +2 -0
- package/dist/esm/validation/validateFileSizeByType.js.map +1 -0
- package/dist/types/array/checkValueInArray.d.ts +23 -0
- package/dist/types/array/checkValueInArray.d.ts.map +1 -0
- package/dist/types/array/chunk.d.ts +15 -0
- package/dist/types/array/chunk.d.ts.map +1 -0
- package/dist/types/array/collectBy.d.ts +21 -0
- package/dist/types/array/collectBy.d.ts.map +1 -0
- package/dist/types/array/compact.d.ts +19 -0
- package/dist/types/array/compact.d.ts.map +1 -0
- package/dist/types/array/countBy.d.ts +13 -0
- package/dist/types/array/countBy.d.ts.map +1 -0
- package/dist/types/array/difference.d.ts +14 -0
- package/dist/types/array/difference.d.ts.map +1 -0
- package/dist/types/array/drop.d.ts +14 -0
- package/dist/types/array/drop.d.ts.map +1 -0
- package/dist/types/array/dropWhile.d.ts +13 -0
- package/dist/types/array/dropWhile.d.ts.map +1 -0
- package/dist/types/array/first.d.ts +13 -0
- package/dist/types/array/first.d.ts.map +1 -0
- package/dist/types/array/flatten.d.ts +13 -0
- package/dist/types/array/flatten.d.ts.map +1 -0
- package/dist/types/array/groupBy.d.ts +17 -0
- package/dist/types/array/groupBy.d.ts.map +1 -0
- package/dist/types/array/index.d.ts +31 -0
- package/dist/types/array/index.d.ts.map +1 -0
- package/dist/types/array/intersection.d.ts +14 -0
- package/dist/types/array/intersection.d.ts.map +1 -0
- package/dist/types/array/keyBy.d.ts +15 -0
- package/dist/types/array/keyBy.d.ts.map +1 -0
- package/dist/types/array/last.d.ts +13 -0
- package/dist/types/array/last.d.ts.map +1 -0
- package/dist/types/array/maxBy.d.ts +13 -0
- package/dist/types/array/maxBy.d.ts.map +1 -0
- package/dist/types/array/minBy.d.ts +13 -0
- package/dist/types/array/minBy.d.ts.map +1 -0
- package/dist/types/array/partition.d.ts +13 -0
- package/dist/types/array/partition.d.ts.map +1 -0
- package/dist/types/array/sameElementsInArrays.d.ts +15 -0
- package/dist/types/array/sameElementsInArrays.d.ts.map +1 -0
- package/dist/types/array/sample.d.ts +12 -0
- package/dist/types/array/sample.d.ts.map +1 -0
- package/dist/types/array/shuffle.d.ts +12 -0
- package/dist/types/array/shuffle.d.ts.map +1 -0
- package/dist/types/array/sortBy.d.ts +20 -0
- package/dist/types/array/sortBy.d.ts.map +1 -0
- package/dist/types/array/take.d.ts +14 -0
- package/dist/types/array/take.d.ts.map +1 -0
- package/dist/types/array/takeWhile.d.ts +13 -0
- package/dist/types/array/takeWhile.d.ts.map +1 -0
- package/dist/types/array/union.d.ts +13 -0
- package/dist/types/array/union.d.ts.map +1 -0
- package/dist/types/array/uniq.d.ts +12 -0
- package/dist/types/array/uniq.d.ts.map +1 -0
- package/dist/types/array/uniqBy.d.ts +12 -0
- package/dist/types/array/uniqBy.d.ts.map +1 -0
- package/dist/types/array/without.d.ts +13 -0
- package/dist/types/array/without.d.ts.map +1 -0
- package/dist/types/array/xor.d.ts +13 -0
- package/dist/types/array/xor.d.ts.map +1 -0
- package/dist/types/array/zip.d.ts +15 -0
- package/dist/types/array/zip.d.ts.map +1 -0
- package/dist/types/array/zipObject.d.ts +13 -0
- package/dist/types/array/zipObject.d.ts.map +1 -0
- package/dist/types/file/anyToString.d.ts +24 -0
- package/dist/types/file/anyToString.d.ts.map +1 -0
- package/dist/types/file/convertToFormData.d.ts +19 -0
- package/dist/types/file/convertToFormData.d.ts.map +1 -0
- package/dist/types/file/decodeURIValue.d.ts +22 -0
- package/dist/types/file/decodeURIValue.d.ts.map +1 -0
- package/dist/types/file/downloadFile.d.ts +28 -0
- package/dist/types/file/downloadFile.d.ts.map +1 -0
- package/dist/types/file/getBase64.d.ts +20 -0
- package/dist/types/file/getBase64.d.ts.map +1 -0
- package/dist/types/file/index.d.ts +7 -0
- package/dist/types/file/index.d.ts.map +1 -0
- package/dist/types/file/isFileArray.d.ts +13 -0
- package/dist/types/file/isFileArray.d.ts.map +1 -0
- package/dist/types/function/compose.d.ts +24 -0
- package/dist/types/function/compose.d.ts.map +1 -0
- package/dist/types/function/curry.d.ts +39 -0
- package/dist/types/function/curry.d.ts.map +1 -0
- package/dist/types/function/debounce.d.ts +36 -0
- package/dist/types/function/debounce.d.ts.map +1 -0
- package/dist/types/function/hexToRgba.d.ts +19 -0
- package/dist/types/function/hexToRgba.d.ts.map +1 -0
- package/dist/types/function/identity.d.ts +24 -0
- package/dist/types/function/identity.d.ts.map +1 -0
- package/dist/types/function/index.d.ts +16 -0
- package/dist/types/function/index.d.ts.map +1 -0
- package/dist/types/function/memoize.d.ts +20 -0
- package/dist/types/function/memoize.d.ts.map +1 -0
- package/dist/types/function/negate.d.ts +12 -0
- package/dist/types/function/negate.d.ts.map +1 -0
- package/dist/types/function/noop.d.ts +27 -0
- package/dist/types/function/noop.d.ts.map +1 -0
- package/dist/types/function/once.d.ts +22 -0
- package/dist/types/function/once.d.ts.map +1 -0
- package/dist/types/function/partial.d.ts +17 -0
- package/dist/types/function/partial.d.ts.map +1 -0
- package/dist/types/function/pipe.d.ts +24 -0
- package/dist/types/function/pipe.d.ts.map +1 -0
- package/dist/types/function/queryString.d.ts +44 -0
- package/dist/types/function/queryString.d.ts.map +1 -0
- package/dist/types/function/throttle.d.ts +35 -0
- package/dist/types/function/throttle.d.ts.map +1 -0
- package/dist/types/index.d.ts +18 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/math/clamp.d.ts +15 -0
- package/dist/types/math/clamp.d.ts.map +1 -0
- package/dist/types/math/inRange.d.ts +18 -0
- package/dist/types/math/inRange.d.ts.map +1 -0
- package/dist/types/math/index.d.ts +9 -0
- package/dist/types/math/index.d.ts.map +1 -0
- package/dist/types/math/mean.d.ts +11 -0
- package/dist/types/math/mean.d.ts.map +1 -0
- package/dist/types/math/median.d.ts +15 -0
- package/dist/types/math/median.d.ts.map +1 -0
- package/dist/types/math/random.d.ts +27 -0
- package/dist/types/math/random.d.ts.map +1 -0
- package/dist/types/math/range.d.ts +18 -0
- package/dist/types/math/range.d.ts.map +1 -0
- package/dist/types/math/round.d.ts +16 -0
- package/dist/types/math/round.d.ts.map +1 -0
- package/dist/types/math/sum.d.ts +11 -0
- package/dist/types/math/sum.d.ts.map +1 -0
- package/dist/types/object/cloneDeep.d.ts +18 -0
- package/dist/types/object/cloneDeep.d.ts.map +1 -0
- package/dist/types/object/findKey.d.ts +14 -0
- package/dist/types/object/findKey.d.ts.map +1 -0
- package/dist/types/object/flattenObject.d.ts +16 -0
- package/dist/types/object/flattenObject.d.ts.map +1 -0
- package/dist/types/object/get.d.ts +22 -0
- package/dist/types/object/get.d.ts.map +1 -0
- package/dist/types/object/getTrue.d.ts +12 -0
- package/dist/types/object/getTrue.d.ts.map +1 -0
- package/dist/types/object/has.d.ts +15 -0
- package/dist/types/object/has.d.ts.map +1 -0
- package/dist/types/object/index.d.ts +22 -0
- package/dist/types/object/index.d.ts.map +1 -0
- package/dist/types/object/invert.d.ts +13 -0
- package/dist/types/object/invert.d.ts.map +1 -0
- package/dist/types/object/isEmpty.d.ts +23 -0
- package/dist/types/object/isEmpty.d.ts.map +1 -0
- package/dist/types/object/jsonParse.d.ts +21 -0
- package/dist/types/object/jsonParse.d.ts.map +1 -0
- package/dist/types/object/mapKeys.d.ts +17 -0
- package/dist/types/object/mapKeys.d.ts.map +1 -0
- package/dist/types/object/mapValues.d.ts +17 -0
- package/dist/types/object/mapValues.d.ts.map +1 -0
- package/dist/types/object/mergeDeep.d.ts +20 -0
- package/dist/types/object/mergeDeep.d.ts.map +1 -0
- package/dist/types/object/omit.d.ts +13 -0
- package/dist/types/object/omit.d.ts.map +1 -0
- package/dist/types/object/omitBy.d.ts +17 -0
- package/dist/types/object/omitBy.d.ts.map +1 -0
- package/dist/types/object/path.d.ts +13 -0
- package/dist/types/object/path.d.ts.map +1 -0
- package/dist/types/object/pathOr.d.ts +14 -0
- package/dist/types/object/pathOr.d.ts.map +1 -0
- package/dist/types/object/pick.d.ts +13 -0
- package/dist/types/object/pick.d.ts.map +1 -0
- package/dist/types/object/pickBy.d.ts +17 -0
- package/dist/types/object/pickBy.d.ts.map +1 -0
- package/dist/types/object/prop.d.ts +31 -0
- package/dist/types/object/prop.d.ts.map +1 -0
- package/dist/types/object/propOr.d.ts +39 -0
- package/dist/types/object/propOr.d.ts.map +1 -0
- package/dist/types/object/set.d.ts +16 -0
- package/dist/types/object/set.d.ts.map +1 -0
- package/dist/types/predicate/index.d.ts +16 -0
- package/dist/types/predicate/index.d.ts.map +1 -0
- package/dist/types/predicate/isArray.d.ts +14 -0
- package/dist/types/predicate/isArray.d.ts.map +1 -0
- package/dist/types/predicate/isBoolean.d.ts +14 -0
- package/dist/types/predicate/isBoolean.d.ts.map +1 -0
- package/dist/types/predicate/isDate.d.ts +16 -0
- package/dist/types/predicate/isDate.d.ts.map +1 -0
- package/dist/types/predicate/isEqual.d.ts +18 -0
- package/dist/types/predicate/isEqual.d.ts.map +1 -0
- package/dist/types/predicate/isError.d.ts +14 -0
- package/dist/types/predicate/isError.d.ts.map +1 -0
- package/dist/types/predicate/isFunction.d.ts +14 -0
- package/dist/types/predicate/isFunction.d.ts.map +1 -0
- package/dist/types/predicate/isNil.d.ts +33 -0
- package/dist/types/predicate/isNil.d.ts.map +1 -0
- package/dist/types/predicate/isNumber.d.ts +17 -0
- package/dist/types/predicate/isNumber.d.ts.map +1 -0
- package/dist/types/predicate/isPlainObject.d.ts +18 -0
- package/dist/types/predicate/isPlainObject.d.ts.map +1 -0
- package/dist/types/predicate/isPrimitive.d.ts +18 -0
- package/dist/types/predicate/isPrimitive.d.ts.map +1 -0
- package/dist/types/predicate/isPromise.d.ts +14 -0
- package/dist/types/predicate/isPromise.d.ts.map +1 -0
- package/dist/types/predicate/isString.d.ts +14 -0
- package/dist/types/predicate/isString.d.ts.map +1 -0
- package/dist/types/promise/attempt.d.ts +28 -0
- package/dist/types/promise/attempt.d.ts.map +1 -0
- package/dist/types/promise/delay.d.ts +26 -0
- package/dist/types/promise/delay.d.ts.map +1 -0
- package/dist/types/promise/index.d.ts +10 -0
- package/dist/types/promise/index.d.ts.map +1 -0
- package/dist/types/promise/invariant.d.ts +18 -0
- package/dist/types/promise/invariant.d.ts.map +1 -0
- package/dist/types/promise/retry.d.ts +36 -0
- package/dist/types/promise/retry.d.ts.map +1 -0
- package/dist/types/promise/timeout.d.ts +30 -0
- package/dist/types/promise/timeout.d.ts.map +1 -0
- package/dist/types/react/hooks/index.d.ts +21 -0
- package/dist/types/react/hooks/index.d.ts.map +1 -0
- package/dist/types/react/hooks/useClickOutside.d.ts +116 -0
- package/dist/types/react/hooks/useClickOutside.d.ts.map +1 -0
- package/dist/types/react/hooks/useCopyToClipboard.d.ts +22 -0
- package/dist/types/react/hooks/useCopyToClipboard.d.ts.map +1 -0
- package/dist/types/react/hooks/useDebounce.d.ts +57 -0
- package/dist/types/react/hooks/useDebounce.d.ts.map +1 -0
- package/dist/types/react/hooks/useIntersectionObserver.d.ts +118 -0
- package/dist/types/react/hooks/useIntersectionObserver.d.ts.map +1 -0
- package/dist/types/react/hooks/useIsMounted.d.ts +26 -0
- package/dist/types/react/hooks/useIsMounted.d.ts.map +1 -0
- package/dist/types/react/hooks/useLocalStorage.d.ts +78 -0
- package/dist/types/react/hooks/useLocalStorage.d.ts.map +1 -0
- package/dist/types/react/hooks/useMediaQuery.d.ts +85 -0
- package/dist/types/react/hooks/useMediaQuery.d.ts.map +1 -0
- package/dist/types/react/hooks/useMountEffect.d.ts +107 -0
- package/dist/types/react/hooks/useMountEffect.d.ts.map +1 -0
- package/dist/types/react/hooks/usePrevious.d.ts +88 -0
- package/dist/types/react/hooks/usePrevious.d.ts.map +1 -0
- package/dist/types/react/hooks/useScreenSize.d.ts +37 -0
- package/dist/types/react/hooks/useScreenSize.d.ts.map +1 -0
- package/dist/types/react/hooks/useSessionStorage.d.ts +49 -0
- package/dist/types/react/hooks/useSessionStorage.d.ts.map +1 -0
- package/dist/types/react/hooks/useThrottle.d.ts +62 -0
- package/dist/types/react/hooks/useThrottle.d.ts.map +1 -0
- package/dist/types/react/hooks/useToggle.d.ts +89 -0
- package/dist/types/react/hooks/useToggle.d.ts.map +1 -0
- package/dist/types/react/hooks/useUpdateEffect.d.ts +91 -0
- package/dist/types/react/hooks/useUpdateEffect.d.ts.map +1 -0
- package/dist/types/react/index.d.ts +9 -0
- package/dist/types/react/index.d.ts.map +1 -0
- package/dist/types/react/utils/clsx.d.ts +31 -0
- package/dist/types/react/utils/clsx.d.ts.map +1 -0
- package/dist/types/react/utils/createContext.d.ts +27 -0
- package/dist/types/react/utils/createContext.d.ts.map +1 -0
- package/dist/types/react/utils/displayField.d.ts +18 -0
- package/dist/types/react/utils/displayField.d.ts.map +1 -0
- package/dist/types/react/utils/index.d.ts +5 -0
- package/dist/types/react/utils/index.d.ts.map +1 -0
- package/dist/types/string/camelCase.d.ts +16 -0
- package/dist/types/string/camelCase.d.ts.map +1 -0
- package/dist/types/string/capitalize.d.ts +11 -0
- package/dist/types/string/capitalize.d.ts.map +1 -0
- package/dist/types/string/deburr.d.ts +14 -0
- package/dist/types/string/deburr.d.ts.map +1 -0
- package/dist/types/string/escapeHtml.d.ts +17 -0
- package/dist/types/string/escapeHtml.d.ts.map +1 -0
- package/dist/types/string/escapeRegExp.d.ts +13 -0
- package/dist/types/string/escapeRegExp.d.ts.map +1 -0
- package/dist/types/string/formatBytes.d.ts +16 -0
- package/dist/types/string/formatBytes.d.ts.map +1 -0
- package/dist/types/string/formatDuration.d.ts +15 -0
- package/dist/types/string/formatDuration.d.ts.map +1 -0
- package/dist/types/string/formatNumber.d.ts +20 -0
- package/dist/types/string/formatNumber.d.ts.map +1 -0
- package/dist/types/string/htmlToText.d.ts +29 -0
- package/dist/types/string/htmlToText.d.ts.map +1 -0
- package/dist/types/string/index.d.ts +20 -0
- package/dist/types/string/index.d.ts.map +1 -0
- package/dist/types/string/kebabCase.d.ts +16 -0
- package/dist/types/string/kebabCase.d.ts.map +1 -0
- package/dist/types/string/maskString.d.ts +18 -0
- package/dist/types/string/maskString.d.ts.map +1 -0
- package/dist/types/string/pascalCase.d.ts +14 -0
- package/dist/types/string/pascalCase.d.ts.map +1 -0
- package/dist/types/string/pluralize.d.ts +17 -0
- package/dist/types/string/pluralize.d.ts.map +1 -0
- package/dist/types/string/slugify.d.ts +15 -0
- package/dist/types/string/slugify.d.ts.map +1 -0
- package/dist/types/string/snakeCase.d.ts +16 -0
- package/dist/types/string/snakeCase.d.ts.map +1 -0
- package/dist/types/string/startCase.d.ts +14 -0
- package/dist/types/string/startCase.d.ts.map +1 -0
- package/dist/types/string/template.d.ts +15 -0
- package/dist/types/string/template.d.ts.map +1 -0
- package/dist/types/string/truncateString.d.ts +13 -0
- package/dist/types/string/truncateString.d.ts.map +1 -0
- package/dist/types/string/words.d.ts +16 -0
- package/dist/types/string/words.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +44 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/validation/index.d.ts +5 -0
- package/dist/types/validation/index.d.ts.map +1 -0
- package/dist/types/validation/validateFileSizeByType.d.ts +32 -0
- package/dist/types/validation/validateFileSizeByType.d.ts.map +1 -0
- package/package.json +109 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clsx.d.ts","sourceRoot":"","sources":["../../../../src/react/utils/clsx.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,GACT,IAAI,GACJ,eAAe,GACf,UAAU,CAAC;AACf,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;AACzE,MAAM,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;AAEtC,wBAAgB,IAAI,CAAC,GAAG,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAYlD;AAmCD,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates a type-safe React context with a custom hook.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* const [ThemeProvider, useTheme] = createContext<{ theme: string }>('Theme');
|
|
6
|
+
*
|
|
7
|
+
* function App() {
|
|
8
|
+
* return (
|
|
9
|
+
* <ThemeProvider value={{ theme: 'dark' }}>
|
|
10
|
+
* <Child />
|
|
11
|
+
* </ThemeProvider>
|
|
12
|
+
* );
|
|
13
|
+
* }
|
|
14
|
+
*
|
|
15
|
+
* function Child() {
|
|
16
|
+
* const { theme } = useTheme(); // Type-safe!
|
|
17
|
+
* return <div>{theme}</div>;
|
|
18
|
+
* }
|
|
19
|
+
*
|
|
20
|
+
* @param displayName - Display name for debugging
|
|
21
|
+
* @returns Tuple of [Provider, useContext hook]
|
|
22
|
+
*/
|
|
23
|
+
export declare function createContext<T>(displayName: string): [
|
|
24
|
+
React.Provider<T | undefined>,
|
|
25
|
+
() => T
|
|
26
|
+
];
|
|
27
|
+
//# sourceMappingURL=createContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createContext.d.ts","sourceRoot":"","sources":["../../../../src/react/utils/createContext.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAC7B,WAAW,EAAE,MAAM,GAClB;IACD,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAC;IAC7B,MAAM,CAAC;CACR,CAeA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Returns a display-safe value for UI rendering, substituting a placeholder
|
|
4
|
+
* for empty, null, or undefined fields. Numbers are always shown as-is.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* displayField(42) // 42
|
|
8
|
+
* displayField(null) // '-'
|
|
9
|
+
* displayField(undefined, 'N/A') // 'N/A'
|
|
10
|
+
* displayField('Hello') // 'Hello'
|
|
11
|
+
* displayField('') // '-'
|
|
12
|
+
*
|
|
13
|
+
* @param {string | number | ReactNode | null | undefined} field - The value to display
|
|
14
|
+
* @param {string | number} [placeholder='-'] - Fallback shown when field is empty/null/undefined
|
|
15
|
+
* @returns {string | number | ReactNode} The field value or the placeholder
|
|
16
|
+
*/
|
|
17
|
+
export declare const displayField: (field: string | number | ReactNode | null | undefined, placeholder?: string | number) => string | number | ReactNode;
|
|
18
|
+
//# sourceMappingURL=displayField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"displayField.d.ts","sourceRoot":"","sources":["../../../../src/react/utils/displayField.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,YAAY,GACvB,OAAO,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,SAAS,EACrD,cAAa,MAAM,GAAG,MAAY,KACjC,MAAM,GAAG,MAAM,GAAG,SAUpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a string to camelCase.
|
|
3
|
+
* Handles spaces, hyphens, underscores, and mixed casing.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* camelCase('hello world') // 'helloWorld'
|
|
7
|
+
* camelCase('foo-bar-baz') // 'fooBarBaz'
|
|
8
|
+
* camelCase('FOO_BAR') // 'fooBar'
|
|
9
|
+
* camelCase('some-Mixed_string') // 'someMixedString'
|
|
10
|
+
* camelCase('') // ''
|
|
11
|
+
*
|
|
12
|
+
* @param str - String to convert
|
|
13
|
+
* @returns camelCase string
|
|
14
|
+
*/
|
|
15
|
+
export declare function camelCase(str: string): string;
|
|
16
|
+
//# sourceMappingURL=camelCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"camelCase.d.ts","sourceRoot":"","sources":["../../../src/string/camelCase.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAS7C"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Capitalizes the first letter of a string.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* capitalize('hello') // 'Hello'
|
|
6
|
+
*
|
|
7
|
+
* @param str - String to capitalize
|
|
8
|
+
* @returns Capitalized string
|
|
9
|
+
*/
|
|
10
|
+
export declare function capitalize(str: string): string;
|
|
11
|
+
//# sourceMappingURL=capitalize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capitalize.d.ts","sourceRoot":"","sources":["../../../src/string/capitalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG9C"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Removes diacritical marks (accents) from a string by converting to ASCII equivalents.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* deburr('café') // 'cafe'
|
|
6
|
+
* deburr('Crème brûlée') // 'Creme brulee'
|
|
7
|
+
* deburr('München') // 'Munchen'
|
|
8
|
+
* deburr('hello') // 'hello'
|
|
9
|
+
*
|
|
10
|
+
* @param str - String to deburr
|
|
11
|
+
* @returns ASCII-safe string
|
|
12
|
+
*/
|
|
13
|
+
export declare function deburr(str: string): string;
|
|
14
|
+
//# sourceMappingURL=deburr.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deburr.d.ts","sourceRoot":"","sources":["../../../src/string/deburr.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI1C"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Escapes HTML special characters to prevent XSS attacks.
|
|
3
|
+
* Converts &, <, >, ", ' to their HTML entity equivalents.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* escapeHtml('<script>alert("xss")</script>')
|
|
7
|
+
* // '<script>alert("xss")</script>'
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* escapeHtml("it's a <b>test</b> & more")
|
|
11
|
+
* // "it's a <b>test</b> & more"
|
|
12
|
+
*
|
|
13
|
+
* @param str - String to escape
|
|
14
|
+
* @returns Escaped string safe for HTML insertion
|
|
15
|
+
*/
|
|
16
|
+
export declare function escapeHtml(str: string): string;
|
|
17
|
+
//# sourceMappingURL=escapeHtml.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"escapeHtml.d.ts","sourceRoot":"","sources":["../../../src/string/escapeHtml.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAY9C"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Escapes special regex characters in a string so it can be used in `new RegExp()`.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* escapeRegExp('hello.world') // 'hello\\.world'
|
|
6
|
+
* escapeRegExp('$100 (USD)') // '\\$100 \\(USD\\)'
|
|
7
|
+
* new RegExp(escapeRegExp(userInput)) // safe to use
|
|
8
|
+
*
|
|
9
|
+
* @param str - String to escape
|
|
10
|
+
* @returns Escaped string safe for RegExp construction
|
|
11
|
+
*/
|
|
12
|
+
export declare function escapeRegExp(str: string): string;
|
|
13
|
+
//# sourceMappingURL=escapeRegExp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"escapeRegExp.d.ts","sourceRoot":"","sources":["../../../src/string/escapeRegExp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEhD"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Formats a byte count into a human-readable string.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* formatBytes(0) // '0 B'
|
|
6
|
+
* formatBytes(1024) // '1 KB'
|
|
7
|
+
* formatBytes(1536, 1) // '1.5 KB'
|
|
8
|
+
* formatBytes(1073741824) // '1 GB'
|
|
9
|
+
* formatBytes(1234567890, 2) // '1.15 GB'
|
|
10
|
+
*
|
|
11
|
+
* @param bytes - Number of bytes
|
|
12
|
+
* @param decimals - Decimal places (default: 2)
|
|
13
|
+
* @returns Formatted string (e.g., '1.5 MB')
|
|
14
|
+
*/
|
|
15
|
+
export declare function formatBytes(bytes: number, decimals?: number): string;
|
|
16
|
+
//# sourceMappingURL=formatBytes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatBytes.d.ts","sourceRoot":"","sources":["../../../src/string/formatBytes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CAOvE"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Formats milliseconds into a human-readable duration string.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* formatDuration(0) // '0s'
|
|
6
|
+
* formatDuration(5000) // '5s'
|
|
7
|
+
* formatDuration(65000) // '1m 5s'
|
|
8
|
+
* formatDuration(3661000) // '1h 1m 1s'
|
|
9
|
+
* formatDuration(90061000) // '1d 1h 1m 1s'
|
|
10
|
+
*
|
|
11
|
+
* @param ms - Duration in milliseconds
|
|
12
|
+
* @returns Human-readable duration string
|
|
13
|
+
*/
|
|
14
|
+
export declare function formatDuration(ms: number): string;
|
|
15
|
+
//# sourceMappingURL=formatDuration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatDuration.d.ts","sourceRoot":"","sources":["../../../src/string/formatDuration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAejD"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Formats a number or numeric string by adding thousands separators
|
|
3
|
+
* according to the specified locale.
|
|
4
|
+
*
|
|
5
|
+
* If the value is not a number, returns the original string.
|
|
6
|
+
*
|
|
7
|
+
* @param {number | string} number - Number or string to format.
|
|
8
|
+
* @param {string} [locale='en-US'] - Locale for formatting (e.g., 'en-US', 'ru-RU').
|
|
9
|
+
* @returns {string} Formatted string with thousands separators or original value if not a number.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* formatNumber(1234567); // "1,234,567"
|
|
14
|
+
* formatNumber(1234567, 'ru-RU'); // "1 234 567"
|
|
15
|
+
* formatNumber("987654321"); // "987,654,321"
|
|
16
|
+
* formatNumber("abc"); // "abc"
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare const formatNumber: (number: number | string, locale?: string) => string;
|
|
20
|
+
//# sourceMappingURL=formatNumber.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatNumber.d.ts","sourceRoot":"","sources":["../../../src/string/formatNumber.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,YAAY,GACvB,QAAQ,MAAM,GAAG,MAAM,EACvB,SAAQ,MAAgB,KACvB,MAQF,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts an HTML string into plain text by removing all HTML tags,
|
|
3
|
+
* normalizing whitespace, and trimming extra spaces.
|
|
4
|
+
*
|
|
5
|
+
* If the input is empty or falsy, returns an empty string.
|
|
6
|
+
*
|
|
7
|
+
* @param {string} html - The HTML string to convert.
|
|
8
|
+
* @returns {string} The plain text result.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* const html = `
|
|
12
|
+
* <h1>Добро пожаловать в <b>MBank</b></h1>
|
|
13
|
+
* <p>Первый цифровой <a href="https://mbank.example">банк</a> в стране.</p>
|
|
14
|
+
* <ul>
|
|
15
|
+
* <li>Онлайн-операции</li>
|
|
16
|
+
* <li>Мобильное приложение</li>
|
|
17
|
+
* <li>Безопасные переводы</li>
|
|
18
|
+
* </ul>
|
|
19
|
+
* `;
|
|
20
|
+
*
|
|
21
|
+
* const text = htmlToText(html);
|
|
22
|
+
* console.log(text);
|
|
23
|
+
* // Output:
|
|
24
|
+
* // "Добро пожаловать в MBank Первый цифровой банк в стране. Онлайн-операции Мобильное приложение Безопасные переводы"
|
|
25
|
+
*
|
|
26
|
+
|
|
27
|
+
*/
|
|
28
|
+
export declare function htmlToText(html: string): string;
|
|
29
|
+
//# sourceMappingURL=htmlToText.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"htmlToText.d.ts","sourceRoot":"","sources":["../../../src/string/htmlToText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO/C"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export { capitalize } from './capitalize.js';
|
|
2
|
+
export { camelCase } from './camelCase.js';
|
|
3
|
+
export { deburr } from './deburr.js';
|
|
4
|
+
export { escapeHtml } from './escapeHtml.js';
|
|
5
|
+
export { escapeRegExp } from './escapeRegExp.js';
|
|
6
|
+
export { formatBytes } from './formatBytes.js';
|
|
7
|
+
export { formatDuration } from './formatDuration.js';
|
|
8
|
+
export { formatNumber } from './formatNumber.js';
|
|
9
|
+
export { htmlToText } from './htmlToText.js';
|
|
10
|
+
export { kebabCase } from './kebabCase.js';
|
|
11
|
+
export { maskString } from './maskString.js';
|
|
12
|
+
export { pascalCase } from './pascalCase.js';
|
|
13
|
+
export { pluralize } from './pluralize.js';
|
|
14
|
+
export { slugify } from './slugify.js';
|
|
15
|
+
export { snakeCase } from './snakeCase.js';
|
|
16
|
+
export { startCase } from './startCase.js';
|
|
17
|
+
export { template } from './template.js';
|
|
18
|
+
export { truncateString } from './truncateString.js';
|
|
19
|
+
export { words } from './words.js';
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/string/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a string to kebab-case.
|
|
3
|
+
* Handles spaces, underscores, camelCase, and PascalCase.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* kebabCase('helloWorld') // 'hello-world'
|
|
7
|
+
* kebabCase('FOO_BAR') // 'foo-bar'
|
|
8
|
+
* kebabCase('some string here') // 'some-string-here'
|
|
9
|
+
* kebabCase('PascalCase') // 'pascal-case'
|
|
10
|
+
* kebabCase('') // ''
|
|
11
|
+
*
|
|
12
|
+
* @param str - String to convert
|
|
13
|
+
* @returns kebab-case string
|
|
14
|
+
*/
|
|
15
|
+
export declare function kebabCase(str: string): string;
|
|
16
|
+
//# sourceMappingURL=kebabCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kebabCase.d.ts","sourceRoot":"","sources":["../../../src/string/kebabCase.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE7C"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Masks a portion of a string, revealing only start and end characters.
|
|
3
|
+
* Useful for credit cards, phone numbers, emails, API keys.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* maskString('1234567890', 4, 2) // '1234****90'
|
|
7
|
+
* maskString('hello@example.com', 2, 4) // 'he***********e.com'
|
|
8
|
+
* maskString('secret', 0, 0) // '******'
|
|
9
|
+
* maskString('ab', 1, 1, '#') // 'ab' (nothing to mask)
|
|
10
|
+
*
|
|
11
|
+
* @param str - String to mask
|
|
12
|
+
* @param visibleStart - Number of visible chars at start
|
|
13
|
+
* @param visibleEnd - Number of visible chars at end
|
|
14
|
+
* @param maskChar - Character used for masking (default: '*')
|
|
15
|
+
* @returns Masked string
|
|
16
|
+
*/
|
|
17
|
+
export declare function maskString(str: string, visibleStart: number, visibleEnd: number, maskChar?: string): string;
|
|
18
|
+
//# sourceMappingURL=maskString.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maskString.d.ts","sourceRoot":"","sources":["../../../src/string/maskString.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,MAAY,GACrB,MAAM,CAMR"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a string to PascalCase.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* pascalCase('hello world') // 'HelloWorld'
|
|
6
|
+
* pascalCase('foo-bar-baz') // 'FooBarBaz'
|
|
7
|
+
* pascalCase('some_snake_case') // 'SomeSnakeCase'
|
|
8
|
+
* pascalCase('') // ''
|
|
9
|
+
*
|
|
10
|
+
* @param str - String to convert
|
|
11
|
+
* @returns PascalCase string
|
|
12
|
+
*/
|
|
13
|
+
export declare function pascalCase(str: string): string;
|
|
14
|
+
//# sourceMappingURL=pascalCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pascalCase.d.ts","sourceRoot":"","sources":["../../../src/string/pascalCase.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI9C"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns singular or plural form based on count.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* pluralize(0, 'item') // '0 items'
|
|
6
|
+
* pluralize(1, 'item') // '1 item'
|
|
7
|
+
* pluralize(5, 'item') // '5 items'
|
|
8
|
+
* pluralize(2, 'child', 'children') // '2 children'
|
|
9
|
+
* pluralize(1, 'person', 'people') // '1 person'
|
|
10
|
+
*
|
|
11
|
+
* @param count - The number
|
|
12
|
+
* @param singular - Singular form
|
|
13
|
+
* @param plural - Plural form (default: singular + 's')
|
|
14
|
+
* @returns Formatted count + word
|
|
15
|
+
*/
|
|
16
|
+
export declare function pluralize(count: number, singular: string, plural?: string): string;
|
|
17
|
+
//# sourceMappingURL=pluralize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pluralize.d.ts","sourceRoot":"","sources":["../../../src/string/pluralize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAGlF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a string to a URL-friendly slug.
|
|
3
|
+
* Lowercases, replaces non-alphanumeric chars with hyphens, trims hyphens.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* slugify('Hello World!') // 'hello-world'
|
|
7
|
+
* slugify(' Crème Brûlée ') // 'cr-me-br-l-e'
|
|
8
|
+
* slugify('foo---bar') // 'foo-bar'
|
|
9
|
+
* slugify('') // ''
|
|
10
|
+
*
|
|
11
|
+
* @param str - String to slugify
|
|
12
|
+
* @returns URL-safe slug
|
|
13
|
+
*/
|
|
14
|
+
export declare function slugify(str: string): string;
|
|
15
|
+
//# sourceMappingURL=slugify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slugify.d.ts","sourceRoot":"","sources":["../../../src/string/slugify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAO3C"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a string to snake_case.
|
|
3
|
+
* Handles spaces, hyphens, camelCase, and PascalCase.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* snakeCase('helloWorld') // 'hello_world'
|
|
7
|
+
* snakeCase('foo-bar-baz') // 'foo_bar_baz'
|
|
8
|
+
* snakeCase('Some String Here') // 'some_string_here'
|
|
9
|
+
* snakeCase('PascalCase') // 'pascal_case'
|
|
10
|
+
* snakeCase('') // ''
|
|
11
|
+
*
|
|
12
|
+
* @param str - String to convert
|
|
13
|
+
* @returns snake_case string
|
|
14
|
+
*/
|
|
15
|
+
export declare function snakeCase(str: string): string;
|
|
16
|
+
//# sourceMappingURL=snakeCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snakeCase.d.ts","sourceRoot":"","sources":["../../../src/string/snakeCase.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE7C"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a string to Start Case (each word capitalized, separated by spaces).
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* startCase('hello world') // 'Hello World'
|
|
6
|
+
* startCase('fooBarBaz') // 'Foo Bar Baz'
|
|
7
|
+
* startCase('some_snake_case') // 'Some Snake Case'
|
|
8
|
+
* startCase('') // ''
|
|
9
|
+
*
|
|
10
|
+
* @param str - String to convert
|
|
11
|
+
* @returns Start Case string
|
|
12
|
+
*/
|
|
13
|
+
export declare function startCase(str: string): string;
|
|
14
|
+
//# sourceMappingURL=startCase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"startCase.d.ts","sourceRoot":"","sources":["../../../src/string/startCase.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAI7C"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple string template interpolation using `{{key}}` placeholders.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* template('Hello, {{name}}!', { name: 'World' }) // 'Hello, World!'
|
|
6
|
+
* template('{{a}} + {{b}} = {{c}}', { a: 1, b: 2, c: 3 }) // '1 + 2 = 3'
|
|
7
|
+
* template('Hi <name>', { name: 'Ray' }, /<(.+?)>/g) // 'Hi Ray'
|
|
8
|
+
*
|
|
9
|
+
* @param str - Template string
|
|
10
|
+
* @param data - Object with replacement values
|
|
11
|
+
* @param regex - Custom pattern (default: /\{\{(.+?)\}\}/g)
|
|
12
|
+
* @returns Interpolated string
|
|
13
|
+
*/
|
|
14
|
+
export declare function template(str: string, data: Record<string, any>, regex?: RegExp): string;
|
|
15
|
+
//# sourceMappingURL=template.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../src/string/template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,QAAQ,CACtB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,KAAK,GAAE,MAAyB,GAC/B,MAAM,CAKR"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Truncates a string to a specified maximum length and adds an ellipsis (`...`) if truncated.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* truncateString("Hello, world!", 5) // "Hello..."
|
|
6
|
+
* truncateString("Short", 10) // "Short"
|
|
7
|
+
*
|
|
8
|
+
* @param str - The string to truncate
|
|
9
|
+
* @param maxLength - Maximum length of the returned string
|
|
10
|
+
* @returns The truncated string with ellipsis if needed, otherwise the original string
|
|
11
|
+
*/
|
|
12
|
+
export declare function truncateString(str: string, maxLength: number): string;
|
|
13
|
+
//# sourceMappingURL=truncateString.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"truncateString.d.ts","sourceRoot":"","sources":["../../../src/string/truncateString.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAKrE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Splits a string into an array of words.
|
|
3
|
+
* Handles spaces, hyphens, underscores, camelCase, and PascalCase boundaries.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* words('helloWorld') // ['hello', 'world']
|
|
7
|
+
* words('foo-bar_baz') // ['foo', 'bar', 'baz']
|
|
8
|
+
* words('FOO_BAR') // ['foo', 'bar']
|
|
9
|
+
* words('PascalCase') // ['pascal', 'case']
|
|
10
|
+
* words('') // []
|
|
11
|
+
*
|
|
12
|
+
* @param str - String to split
|
|
13
|
+
* @returns Array of lowercase words
|
|
14
|
+
*/
|
|
15
|
+
export declare function words(str: string): string[];
|
|
16
|
+
//# sourceMappingURL=words.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"words.d.ts","sourceRoot":"","sources":["../../../src/string/words.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAU3C"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core TypeScript utility types
|
|
3
|
+
*/
|
|
4
|
+
/** A predicate function that returns a boolean */
|
|
5
|
+
export type Predicate<T> = (value: T) => boolean;
|
|
6
|
+
/** A function that transforms a value from type T to type U */
|
|
7
|
+
export type Transformer<T, U> = (value: T) => U;
|
|
8
|
+
/** A comparator function for sorting */
|
|
9
|
+
export type Comparator<T> = (a: T, b: T) => number;
|
|
10
|
+
/** A reducer function that accumulates a value */
|
|
11
|
+
export type Reducer<T, U> = (accumulator: U, value: T) => U;
|
|
12
|
+
/** Curried function with 2 parameters */
|
|
13
|
+
export type Curried2<A, B, R> = {
|
|
14
|
+
(a: A): (b: B) => R;
|
|
15
|
+
(a: A, b: B): R;
|
|
16
|
+
};
|
|
17
|
+
/** Curried function with 3 parameters */
|
|
18
|
+
export type Curried3<A, B, C, R> = {
|
|
19
|
+
(a: A): Curried2<B, C, R>;
|
|
20
|
+
(a: A, b: B): (c: C) => R;
|
|
21
|
+
(a: A, b: B, c: C): R;
|
|
22
|
+
};
|
|
23
|
+
/** Curried function with 4 parameters */
|
|
24
|
+
export type Curried4<A, B, C, D, R> = {
|
|
25
|
+
(a: A): Curried3<B, C, D, R>;
|
|
26
|
+
(a: A, b: B): Curried2<C, D, R>;
|
|
27
|
+
(a: A, b: B, c: C): (d: D) => R;
|
|
28
|
+
(a: A, b: B, c: C, d: D): R;
|
|
29
|
+
};
|
|
30
|
+
/** Deep readonly type — makes all nested properties readonly */
|
|
31
|
+
export type DeepReadonly<T> = {
|
|
32
|
+
readonly [P in keyof T]: T[P] extends object ? DeepReadonly<T[P]> : T[P];
|
|
33
|
+
};
|
|
34
|
+
/** Deep partial type — makes all nested properties optional */
|
|
35
|
+
export type DeepPartial<T> = {
|
|
36
|
+
[P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
|
|
37
|
+
};
|
|
38
|
+
/** Nullish type helper */
|
|
39
|
+
export type Nullish = null | undefined;
|
|
40
|
+
/** Make specific keys required */
|
|
41
|
+
export type RequireKeys<T, K extends keyof T> = T & Required<Pick<T, K>>;
|
|
42
|
+
/** Make specific keys optional */
|
|
43
|
+
export type OptionalKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
|
|
44
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,kDAAkD;AAClD,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;AAEjD,+DAA+D;AAC/D,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;AAEhD,wCAAwC;AACxC,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC;AAEnD,kDAAkD;AAClD,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;AAE5D,yCAAyC;AACzC,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI;IAC9B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;CACjB,CAAC;AAEF,yCAAyC;AACzC,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI;IACjC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;CACvB,CAAC;AAEF,yCAAyC;AACzC,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI;IACpC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;CAC7B,CAAC;AAEF,gEAAgE;AAChE,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC5B,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACzE,CAAC;AAEF,+DAA+D;AAC/D,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAC1B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAChE,CAAC;AAEF,0BAA0B;AAC1B,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAEvC,kCAAkC;AAClC,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEzE,kCAAkC;AAClC,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/validation/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validates the size of a file based on its type/category.
|
|
3
|
+
* Returns an object indicating whether the file is valid and an optional error message.
|
|
4
|
+
*
|
|
5
|
+
* By default, supports three categories: 'image', 'video', 'document'.
|
|
6
|
+
* You can provide a custom category resolver to extend support for other types.
|
|
7
|
+
*
|
|
8
|
+
* @param {File} file - The file to validate.
|
|
9
|
+
* @param {Record<string, number>} sizeLimits - Maximum allowed sizes for each category in MB.
|
|
10
|
+
* @param {(file: File) => string} [resolveCategory] - Optional function to determine the file's category.
|
|
11
|
+
* @returns {{ isValid: boolean; errorMessage?: string }} Result of the validation.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* const sizeLimits = { image: 5, video: 50, document: 10 };
|
|
15
|
+
* const result = validateFileSize(fileInput.files[0], sizeLimits);
|
|
16
|
+
* if (!result.isValid) {
|
|
17
|
+
* console.error(result.errorMessage);
|
|
18
|
+
* }
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* // Custom category resolver
|
|
22
|
+
* const result = validateFileSize(file, { audio: 10, other: 5 }, file => {
|
|
23
|
+
* if (file.type.startsWith('audio/')) return 'audio';
|
|
24
|
+
* return 'other';
|
|
25
|
+
* });
|
|
26
|
+
*/
|
|
27
|
+
export declare function validateFileSize(file: File, sizeLimits: Record<string, number>, resolveCategory?: (file: File) => string, error?: string): {
|
|
28
|
+
isValid: boolean;
|
|
29
|
+
errorMessage?: string;
|
|
30
|
+
size?: string;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=validateFileSizeByType.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateFileSizeByType.d.ts","sourceRoot":"","sources":["../../../src/validation/validateFileSizeByType.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAClC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,EACxC,KAAK,CAAC,EAAE,MAAM,GACb;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAwB5D"}
|