This commit is contained in:
66
node_modules/react-polyglot/lib/i18n.js
generated
vendored
Normal file
66
node_modules/react-polyglot/lib/i18n.js
generated
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports["default"] = I18n;
|
||||
|
||||
var _react = _interopRequireDefault(require("react"));
|
||||
|
||||
var _propTypes = _interopRequireDefault(require("prop-types"));
|
||||
|
||||
var _nodePolyglot = _interopRequireDefault(require("node-polyglot"));
|
||||
|
||||
var _i18nContext = _interopRequireDefault(require("./i18n-context"));
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
||||
|
||||
function I18n(_ref) {
|
||||
var locale = _ref.locale,
|
||||
messages = _ref.messages,
|
||||
allowMissing = _ref.allowMissing,
|
||||
onMissingKey = _ref.onMissingKey,
|
||||
interpolation = _ref.interpolation,
|
||||
pluralRules = _ref.pluralRules,
|
||||
children = _ref.children;
|
||||
|
||||
var translate = _react["default"].useMemo(function () {
|
||||
var polyglot = new _nodePolyglot["default"]({
|
||||
locale: locale,
|
||||
phrases: messages,
|
||||
allowMissing: allowMissing,
|
||||
onMissingKey: onMissingKey,
|
||||
interpolation: interpolation,
|
||||
pluralRules: pluralRules
|
||||
});
|
||||
var boundTranslate = polyglot.t.bind(polyglot);
|
||||
boundTranslate._polyglot = polyglot;
|
||||
return boundTranslate;
|
||||
}, [locale, messages, allowMissing, onMissingKey, interpolation, pluralRules]);
|
||||
|
||||
return _react["default"].createElement(_i18nContext["default"].Provider, {
|
||||
value: translate
|
||||
}, _react["default"].Children.only(children));
|
||||
}
|
||||
|
||||
I18n.propTypes = {
|
||||
locale: _propTypes["default"].string.isRequired,
|
||||
messages: _propTypes["default"].object.isRequired,
|
||||
allowMissing: _propTypes["default"].bool,
|
||||
onMissingKey: _propTypes["default"].func,
|
||||
interpolation: _propTypes["default"].shape({
|
||||
suffix: _propTypes["default"].string,
|
||||
prefix: _propTypes["default"].string
|
||||
}),
|
||||
pluralRules: _propTypes["default"].shape({
|
||||
pluralTypes: _propTypes["default"].object,
|
||||
pluralTypeToLanguages: _propTypes["default"].object
|
||||
}),
|
||||
children: _propTypes["default"].element.isRequired
|
||||
};
|
||||
I18n.defaultProps = {
|
||||
allowMissing: false,
|
||||
onMissingKey: undefined,
|
||||
interpolation: undefined,
|
||||
pluralRules: undefined
|
||||
};
|
||||
Reference in New Issue
Block a user