laravel-inertia-react-translator
Version:
A integration for i18n in inertia with laravel for react
20 lines (19 loc) • 970 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.TranslationProvider = TranslationProvider;
const jsx_runtime_1 = require("react/jsx-runtime");
const react_1 = require("react");
const Translator_1 = __importDefault(require("../Translator"));
const TranslationContext_1 = __importDefault(require("../context/TranslationContext"));
function TranslationProvider({ children, getDictionary, }) {
const translator = (0, react_1.useMemo)(() => new Translator_1.default(getDictionary), [getDictionary]);
const txt = (key, replace) => translator.translate(key, replace);
const value = (0, react_1.useMemo)(() => ({
translator,
txt,
}), [translator, txt]);
return ((0, jsx_runtime_1.jsx)(TranslationContext_1.default.Provider, { value: value, children: children }));
}