UNPKG

react-intlayer

Version:

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

37 lines (34 loc) 1.31 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/useRelativeTime.ts /** * Client-side React hook for accessing a localized relative time formatter. * * This hook: * - Reads the current locale from {@link useLocaleBase}. * - Creates a new relative time formatter with {@link createRelativeTime}. * - Returns a function that can format time differences into localized strings. * * Example: * ```tsx * const relativeTime = useRelativeTime(); * const formatted = relativeTime(new Date("2024-08-01"), new Date()); * // e.g., "2 weeks ago" * ``` * * @returns {ReturnType<typeof createRelativeTime>} A relative time formatting function * bound to the current client locale. */ const useRelativeTime = () => { const { locale } = (0, react.useContext)(require_client_IntlayerProvider.IntlayerClientContext); return (0, react.useCallback)((...args) => (0, _intlayer_core.relativeTime)(args[0], args[1], { ...args[2], locale: args[2]?.locale ?? locale }), [locale]); }; //#endregion exports.useRelativeTime = useRelativeTime; //# sourceMappingURL=useRelativeTime.cjs.map