react-translate-maker
Version:
React translation module. Internationalize your great project.
37 lines (26 loc) • 1.2 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = ProvideTranslate;
var _react = require("react");
var _TranslateContext = _interopRequireDefault(require("./TranslateContext"));
var _NamespaceContext = _interopRequireDefault(require("./NamespaceContext"));
function ProvideTranslate(props) {
var children = props.children,
ignoreNamespace = props.ignoreNamespace;
var namespace = (0, _react.useContext)(_NamespaceContext.default);
var _useContext = (0, _react.useContext)(_TranslateContext.default),
translate = _useContext.translate;
var t = (0, _react.useCallback)(function (path) {
var finallPath = namespace && !ignoreNamespace ? namespace + "." + path : path;
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
args[_key - 1] = arguments[_key];
}
return translate.get.apply(translate, [finallPath].concat(args));
}, [translate, namespace, ignoreNamespace]);
return children(t);
}
ProvideTranslate.defaultProps = {
ignoreNamespace: false
};
//# sourceMappingURL=ProvideTranslate.js.map