react-intlayer
Version:
Easily internationalize i18n your React applications with type-safe multilingual content management.
28 lines (25 loc) • 703 B
JavaScript
'use client';
import { IntlayerClientContext } from "../IntlayerProvider.mjs";
import { useCallback, useContext } from "react";
import { compact } from "@intlayer/core";
//#region src/client/format/useCompact.ts
/**
* React client hook that provides a compact number formatter
* bound to the current application locale.
*
* @example
* ```tsx
* const formatCompact = useCompact();
* formatCompact(1500); // "1.5K"
* ```
*/
const useCompact = () => {
const { locale } = useContext(IntlayerClientContext);
return useCallback((...args) => compact(args[0], {
...args[1],
locale: args[1]?.locale ?? locale
}), [locale]);
};
//#endregion
export { useCompact };
//# sourceMappingURL=useCompact.mjs.map