react-translate-maker
Version:
React translation module. Internationalize your great project.
35 lines (28 loc) • 1.01 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = ProvideTranslate;
var _react = require("react");
var _TranslateContext = _interopRequireDefault(require("./TranslateContext"));
var _NamespaceContext = _interopRequireDefault(require("./NamespaceContext"));
function ProvideTranslate(props) {
const {
children,
ignoreNamespace
} = props;
const namespace = (0, _react.useContext)(_NamespaceContext.default);
const {
translate
} = (0, _react.useContext)(_TranslateContext.default);
const t = (0, _react.useCallback)((path, ...args) => {
const finallPath = namespace && !ignoreNamespace ? `${namespace}.${path}` : path;
return translate.get(finallPath, ...args);
}, [translate, namespace, ignoreNamespace]);
return children(t);
}
ProvideTranslate.defaultProps = {
ignoreNamespace: false
};
//# sourceMappingURL=ProvideTranslate.js.map