123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- "use strict";
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.defaultPrefixCls = exports.defaultIconPrefixCls = exports.Variants = exports.ConfigContext = exports.ConfigConsumer = void 0;
- exports.useComponentConfig = useComponentConfig;
- var React = _interopRequireWildcard(require("react"));
- const defaultPrefixCls = exports.defaultPrefixCls = 'ant';
- const defaultIconPrefixCls = exports.defaultIconPrefixCls = 'anticon';
- const Variants = exports.Variants = ['outlined', 'borderless', 'filled', 'underlined'];
- const defaultGetPrefixCls = (suffixCls, customizePrefixCls) => {
- if (customizePrefixCls) {
- return customizePrefixCls;
- }
- return suffixCls ? `${defaultPrefixCls}-${suffixCls}` : defaultPrefixCls;
- };
- // zombieJ: 🚨 Do not pass `defaultRenderEmpty` here since it will cause circular dependency.
- const ConfigContext = exports.ConfigContext = /*#__PURE__*/React.createContext({
- // We provide a default function for Context without provider
- getPrefixCls: defaultGetPrefixCls,
- iconPrefixCls: defaultIconPrefixCls
- });
- const {
- Consumer: ConfigConsumer
- } = ConfigContext;
- exports.ConfigConsumer = ConfigConsumer;
- const EMPTY_OBJECT = {};
- /**
- * Get ConfigProvider configured component props.
- * This help to reduce bundle size for saving `?.` operator.
- * Do not use as `useMemo` deps since we do not cache the object here.
- *
- * NOTE: not refactor this with `useMemo` since memo will cost another memory space,
- * which will waste both compare calculation & memory.
- */
- function useComponentConfig(propName) {
- const context = React.useContext(ConfigContext);
- const {
- getPrefixCls,
- direction,
- getPopupContainer
- } = context;
- const propValue = context[propName];
- return Object.assign(Object.assign({
- classNames: EMPTY_OBJECT,
- styles: EMPTY_OBJECT
- }, propValue), {
- getPrefixCls,
- direction,
- getPopupContainer
- });
- }
|