@kiwicom/orbit-components
Version:
Orbit-components is a React component library which provides developers with the easiest possible way of building Kiwi.com’s products.
40 lines (29 loc) • 1.26 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.pureTranslate = void 0;
var _react = _interopRequireDefault(require("react"));
var _DictionaryContext = _interopRequireDefault(require("../Dictionary/DictionaryContext"));
var _enGB = _interopRequireDefault(require("../data/dictionary/en-GB.json"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var pureTranslate = function pureTranslate(translations, key) {
var values = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var translation = translations[key] || _enGB.default[key];
if (!translation) {
return key;
}
return Object.keys(values).reduce(function (acc, placeholder) {
return acc.replace(new RegExp("__".concat(placeholder, "__"), "g"), String(values[placeholder]));
}, translation);
};
exports.pureTranslate = pureTranslate;
var Translate = function Translate(_ref) {
var tKey = _ref.tKey,
values = _ref.values;
return _react.default.createElement(_DictionaryContext.default.Consumer, null, function (dictionary) {
return pureTranslate(dictionary, tKey, values);
});
};
var _default = Translate;
exports.default = _default;