UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

94 lines (77 loc) 2.75 kB
import _objectSpread from "@babel/runtime/helpers/objectSpread2"; import _classCallCheck from "@babel/runtime/helpers/classCallCheck"; import _createClass from "@babel/runtime/helpers/createClass"; import _inherits from "@babel/runtime/helpers/inherits"; import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn"; import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf"; function _createSuper(Derived) { function isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } return function () { var Super = _getPrototypeOf(Derived), result; if (isNativeReflectConstruct()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; } import { Component } from 'react'; import { LocaleContext } from './index'; var LocaleReceiver = /*#__PURE__*/ function (_Component) { _inherits(LocaleReceiver, _Component); var _super = _createSuper(LocaleReceiver); function LocaleReceiver() { _classCallCheck(this, LocaleReceiver); return _super.apply(this, arguments); } _createClass(LocaleReceiver, [{ key: "getLocale", value: function getLocale() { var _this$props = this.props, componentName = _this$props.componentName, defaultLocale = _this$props.defaultLocale; var c7nLocale = this.context.c7nLocale; var localeFromContext = c7nLocale && c7nLocale[componentName]; return _objectSpread({}, typeof defaultLocale === 'function' ? defaultLocale() : defaultLocale, {}, localeFromContext || {}); } }, { key: "getLocaleCode", value: function getLocaleCode() { var c7nLocale = this.context.c7nLocale; var localeCode = c7nLocale && c7nLocale.locale; // Had use LocaleProvide but didn't set locale if (c7nLocale && c7nLocale.exist && !localeCode) { return 'en-us'; } return localeCode; } }, { key: "render", value: function render() { var children = this.props.children; return children(this.getLocale(), this.getLocaleCode()); } }], [{ key: "contextType", get: function get() { return LocaleContext; } }]); return LocaleReceiver; }(Component); export { LocaleReceiver as default }; //# sourceMappingURL=LocaleReceiver.js.map