@dnb/eufemia
Version:
DNB Eufemia Design System UI Library
32 lines (31 loc) • 1.21 kB
JavaScript
;
"use client";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = useTranslation;
var _react = require("react");
var _Context = _interopRequireDefault(require("../../../shared/Context"));
var _useTranslation = require("../../../shared/useTranslation");
var _componentHelper = require("../../../shared/component-helper");
var _defaults = require("../../../shared/defaults");
var _locales = _interopRequireDefault(require("../constants/locales"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function useTranslation(messages) {
const {
locale,
translation: globalTranslation
} = (0, _react.useContext)(_Context.default);
const {
assignUtils
} = (0, _useTranslation.useAdditionalUtils)();
return (0, _react.useMemo)(() => {
const translation = (0, _componentHelper.extendDeep)({}, _locales.default[locale] || _locales.default[_defaults.LOCALE], globalTranslation);
return assignUtils((0, _useTranslation.combineWithExternalTranslations)({
translation,
messages,
locale
}));
}, [assignUtils, globalTranslation, locale, messages]);
}
//# sourceMappingURL=useTranslation.js.map