123456789101112131415161718192021222324252627282930 |
- "use strict";
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = void 0;
- var React = _interopRequireWildcard(require("react"));
- var _context = _interopRequireDefault(require("./context"));
- var _en_US = _interopRequireDefault(require("./en_US"));
- const useLocale = (componentName, defaultLocale) => {
- const fullLocale = React.useContext(_context.default);
- const getLocale = React.useMemo(() => {
- var _a;
- const locale = defaultLocale || _en_US.default[componentName];
- const localeFromContext = (_a = fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale[componentName]) !== null && _a !== void 0 ? _a : {};
- return Object.assign(Object.assign({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {});
- }, [componentName, defaultLocale, fullLocale]);
- const getLocaleCode = React.useMemo(() => {
- const localeCode = fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale.locale;
- // Had use LocaleProvide but didn't set locale
- if ((fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale.exist) && !localeCode) {
- return _en_US.default.locale;
- }
- return localeCode;
- }, [fullLocale]);
- return [getLocale, getLocaleCode];
- };
- var _default = exports.default = useLocale;
|