UNPKG

linkmore-design

Version:

🌈 πŸš€lmη»„δ»ΆεΊ“γ€‚πŸš€

86 lines (85 loc) β€’ 3.48 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _CloseOutlined = _interopRequireDefault(require("@ant-design/icons/CloseOutlined")); var _EllipsisOutlined = _interopRequireDefault(require("@ant-design/icons/EllipsisOutlined")); var _PlusOutlined = _interopRequireDefault(require("@ant-design/icons/PlusOutlined")); var _classnames = _interopRequireDefault(require("classnames")); var _rcTabs = _interopRequireDefault(require("rc-tabs")); var React = _interopRequireWildcard(require("react")); var _configProvider = require("../config-provider"); var _SizeContext = _interopRequireDefault(require("../config-provider/SizeContext")); var _warning = _interopRequireDefault(require("../_util/warning")); var _useAnimateConfig = _interopRequireDefault(require("./hooks/useAnimateConfig")); var _useLegacyItems = _interopRequireDefault(require("./hooks/useLegacyItems")); var _TabPane = _interopRequireDefault(require("./TabPane")); function Tabs({ type, className, size: propSize, onEdit, hideAdd, centered, addIcon, children, items, animated, ...props }) { const { prefixCls: customizePrefixCls, moreIcon = /*#__PURE__*/React.createElement(_EllipsisOutlined.default, null) } = props; const { getPrefixCls, direction, getPopupContainer } = React.useContext(_configProvider.ConfigContext); const prefixCls = getPrefixCls('tabs', customizePrefixCls); let editable; if (type === 'editable-card') { editable = { onEdit: (editType, { key, event }) => { onEdit?.(editType === 'add' ? event : key, editType); }, removeIcon: /*#__PURE__*/React.createElement(_CloseOutlined.default, null), addIcon: addIcon || /*#__PURE__*/React.createElement(_PlusOutlined.default, null), showAdd: hideAdd !== true }; } const rootPrefixCls = getPrefixCls(); (0, _warning.default)(!('onPrevClick' in props) && !('onNextClick' in props), 'Tabs', '`onPrevClick` and `onNextClick` has been removed. Please use `onTabScroll` instead.'); const mergedItems = (0, _useLegacyItems.default)(items, children); const mergedAnimated = (0, _useAnimateConfig.default)(prefixCls, animated); return /*#__PURE__*/React.createElement(_SizeContext.default.Consumer, null, contextSize => { const size = propSize !== undefined ? propSize : contextSize; return /*#__PURE__*/React.createElement(_rcTabs.default, (0, _extends2.default)({ direction: direction, getPopupContainer: getPopupContainer, moreTransitionName: `${rootPrefixCls}-slide-up` }, props, { items: mergedItems, className: (0, _classnames.default)({ [`${prefixCls}-${size}`]: size, [`${prefixCls}-card`]: ['card', 'editable-card'].includes(type), [`${prefixCls}-editable-card`]: type === 'editable-card', [`${prefixCls}-centered`]: centered }, 'lm_tabs', props.noBorder && 'lm_tabs_noborder', className), editable: editable, moreIcon: moreIcon, prefixCls: prefixCls, animated: mergedAnimated })); }); } Tabs.TabPane = _TabPane.default; var _default = Tabs; exports.default = _default;