UNPKG

react-intlayer

Version:

Easily internationalize i18n your React applications with type-safe multilingual content management.

40 lines (37 loc) 1.19 kB
'use client'; const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs'); const require_client_IntlayerProvider = require('../IntlayerProvider.cjs'); let react = require("react"); let _intlayer_core = require("@intlayer/core"); //#region src/client/format/useList.ts /** * React client hook that provides a list formatter * bound to the current application locale. * * @returns {(values: (string | number)[], options?: ListProps) => string} * A function to format arrays into localized list strings. * * @example * ```tsx * const formatList = useList(); * * formatList(['apple', 'banana', 'orange']); * // "apple, banana, and orange" * * formatList(['red', 'green', 'blue'], { type: 'disjunction' }); * // "red, green, or blue" * * formatList([1, 2, 3], { type: 'unit', locale: 'de-DE' }); * // "1, 2 und 3" * ``` */ const useList = () => { const { locale } = (0, react.useContext)(require_client_IntlayerProvider.IntlayerClientContext); return (0, react.useCallback)((...args) => (0, _intlayer_core.list)(args[0], { ...args[1], locale: args[1]?.locale ?? locale }), [locale]); }; //#endregion exports.useList = useList; //# sourceMappingURL=useList.cjs.map