@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.
42 lines (30 loc) • 1.34 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.pureTranslate = void 0;
var React = _interopRequireWildcard(require("react"));
var _DictionaryContext = _interopRequireDefault(require("../Dictionary/DictionaryContext"));
var _enGB = _interopRequireDefault(require("../data/dictionary/en-GB.json"));
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 /*#__PURE__*/React.createElement(_DictionaryContext.default.Consumer, null, function (dictionary) {
return pureTranslate(dictionary, tKey, values);
});
};
var _default = Translate;
exports.default = _default;