{"version":3,"file":"static/js/5256.ce5219a7.chunk.js","mappings":"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","sources":["../node_modules/@ant-design/icons-svg/lib/asn/PlusOutlined.js","../node_modules/@ant-design/icons/PlusOutlined.js","../node_modules/@ant-design/icons/lib/icons/PlusOutlined.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/rc-tabs/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/rc-tabs/es/hooks/useRaf.js","../node_modules/rc-tabs/es/TabNavList/TabNode.js","../node_modules/rc-tabs/es/hooks/useOffsets.js","../node_modules/rc-tabs/es/hooks/useVisibleRange.js","../node_modules/rc-tabs/es/TabNavList/AddButton.js","../node_modules/rc-tabs/es/TabNavList/OperationNode.js","../node_modules/rc-tabs/es/TabContext.js","../node_modules/rc-tabs/es/hooks/useTouchMove.js","../node_modules/rc-tabs/es/hooks/useSyncState.js","../node_modules/rc-tabs/es/TabNavList/index.js","../node_modules/rc-tabs/es/hooks/useRefs.js","../node_modules/rc-tabs/es/TabPanelList/index.js","../node_modules/rc-tabs/es/TabPanelList/TabPane.js","../node_modules/rc-tabs/es/Tabs.js","../node_modules/rc-tabs/es/index.js"],"sourcesContent":["\"use strict\";\n// This icon file is generated automatically.\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar PlusOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\" } }] }, \"name\": \"plus\", \"theme\": \"outlined\" };\nexports.default = PlusOutlined;\n","'use strict';\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n exports.default = void 0;\n \n var _PlusOutlined = _interopRequireDefault(require('./lib/icons/PlusOutlined'));\n \n function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n \n var _default = _PlusOutlined;\n exports.default = _default;\n module.exports = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nvar _typeof = require(\"@babel/runtime/helpers/typeof\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _objectSpread2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectSpread2\"));\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _PlusOutlined = _interopRequireDefault(require(\"@ant-design/icons-svg/lib/asn/PlusOutlined\"));\nvar _AntdIcon = _interopRequireDefault(require(\"../components/AntdIcon\"));\nfunction _getRequireWildcardCache(e) { if (\"function\" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }\nfunction _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || \"object\" != _typeof(e) && \"function\" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if (\"default\" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nvar PlusOutlined = function PlusOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(_AntdIcon.default, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {\n ref: ref,\n icon: _PlusOutlined.default\n }));\n};\nvar RefIcon = /*#__PURE__*/React.forwardRef(PlusOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'PlusOutlined';\n}\nvar _default = exports.default = RefIcon;","export default function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","import defineProperty from \"./defineProperty.js\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useRef, useState, useEffect } from 'react';\nimport raf from \"rc-util/es/raf\";\nexport default function useRaf(callback) {\n var rafRef = useRef();\n var removedRef = useRef(false);\n\n function trigger() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (!removedRef.current) {\n raf.cancel(rafRef.current);\n rafRef.current = raf(function () {\n callback.apply(void 0, args);\n });\n }\n }\n\n useEffect(function () {\n return function () {\n removedRef.current = true;\n raf.cancel(rafRef.current);\n };\n }, []);\n return trigger;\n}\nexport function useRafState(defaultState) {\n var batchRef = useRef([]);\n\n var _useState = useState({}),\n _useState2 = _slicedToArray(_useState, 2),\n forceUpdate = _useState2[1];\n\n var state = useRef(typeof defaultState === 'function' ? defaultState() : defaultState);\n var flushUpdate = useRaf(function () {\n var current = state.current;\n batchRef.current.forEach(function (callback) {\n current = callback(current);\n });\n batchRef.current = [];\n state.current = current;\n forceUpdate({});\n });\n\n function updater(callback) {\n batchRef.current.push(callback);\n flushUpdate();\n }\n\n return [state.current, updater];\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\n\nfunction TabNode(_ref, ref) {\n var _classNames;\n\n var prefixCls = _ref.prefixCls,\n id = _ref.id,\n active = _ref.active,\n _ref$tab = _ref.tab,\n key = _ref$tab.key,\n tab = _ref$tab.tab,\n disabled = _ref$tab.disabled,\n closeIcon = _ref$tab.closeIcon,\n closable = _ref.closable,\n renderWrapper = _ref.renderWrapper,\n removeAriaLabel = _ref.removeAriaLabel,\n editable = _ref.editable,\n onClick = _ref.onClick,\n onRemove = _ref.onRemove,\n onFocus = _ref.onFocus,\n style = _ref.style;\n var tabPrefix = \"\".concat(prefixCls, \"-tab\");\n React.useEffect(function () {\n return onRemove;\n }, []);\n var removable = editable && closable !== false && !disabled;\n\n function onInternalClick(e) {\n if (disabled) {\n return;\n }\n\n onClick(e);\n }\n\n function onRemoveTab(event) {\n event.preventDefault();\n event.stopPropagation();\n editable.onEdit('remove', {\n key: key,\n event: event\n });\n }\n\n var node = /*#__PURE__*/React.createElement(\"div\", {\n key: key,\n ref: ref,\n className: classNames(tabPrefix, (_classNames = {}, _defineProperty(_classNames, \"\".concat(tabPrefix, \"-with-remove\"), removable), _defineProperty(_classNames, \"\".concat(tabPrefix, \"-active\"), active), _defineProperty(_classNames, \"\".concat(tabPrefix, \"-disabled\"), disabled), _classNames)),\n style: style,\n onClick: onInternalClick\n }, /*#__PURE__*/React.createElement(\"div\", {\n role: \"tab\",\n \"aria-selected\": active,\n id: id && \"\".concat(id, \"-tab-\").concat(key),\n className: \"\".concat(tabPrefix, \"-btn\"),\n \"aria-controls\": id && \"\".concat(id, \"-panel-\").concat(key),\n \"aria-disabled\": disabled,\n tabIndex: disabled ? null : 0,\n onClick: function onClick(e) {\n e.stopPropagation();\n onInternalClick(e);\n },\n onKeyDown: function onKeyDown(e) {\n if ([KeyCode.SPACE, KeyCode.ENTER].includes(e.which)) {\n e.preventDefault();\n onInternalClick(e);\n }\n },\n onFocus: onFocus\n }, tab), removable && /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n \"aria-label\": removeAriaLabel || 'remove',\n tabIndex: 0,\n className: \"\".concat(tabPrefix, \"-remove\"),\n onClick: function onClick(e) {\n e.stopPropagation();\n onRemoveTab(e);\n }\n }, closeIcon || editable.removeIcon || '×'));\n return renderWrapper ? renderWrapper(node) : node;\n}\n\nexport default /*#__PURE__*/React.forwardRef(TabNode);","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { useMemo } from 'react';\nvar DEFAULT_SIZE = {\n width: 0,\n height: 0,\n left: 0,\n top: 0\n};\nexport default function useOffsets(tabs, tabSizes, holderScrollWidth) {\n return useMemo(function () {\n var _tabs$;\n\n var map = new Map();\n var lastOffset = tabSizes.get((_tabs$ = tabs[0]) === null || _tabs$ === void 0 ? void 0 : _tabs$.key) || DEFAULT_SIZE;\n var rightOffset = lastOffset.left + lastOffset.width;\n\n for (var i = 0; i < tabs.length; i += 1) {\n var key = tabs[i].key;\n var data = tabSizes.get(key); // Reuse last one when not exist yet\n\n if (!data) {\n var _tabs;\n\n data = tabSizes.get((_tabs = tabs[i - 1]) === null || _tabs === void 0 ? void 0 : _tabs.key) || DEFAULT_SIZE;\n }\n\n var entity = map.get(key) || _objectSpread({}, data); // Right\n\n\n entity.right = rightOffset - entity.left - entity.width; // Update entity\n\n map.set(key, entity);\n }\n\n return map;\n }, [tabs.map(function (tab) {\n return tab.key;\n }).join('_'), tabSizes, holderScrollWidth]);\n}","import { useMemo } from 'react';\nvar DEFAULT_SIZE = {\n width: 0,\n height: 0,\n left: 0,\n top: 0,\n right: 0\n};\nexport default function useVisibleRange(tabOffsets, containerSize, tabContentNodeSize, addNodeSize, _ref) {\n var tabs = _ref.tabs,\n tabPosition = _ref.tabPosition,\n rtl = _ref.rtl;\n var unit;\n var position;\n var transformSize;\n\n if (['top', 'bottom'].includes(tabPosition)) {\n unit = 'width';\n position = rtl ? 'right' : 'left';\n transformSize = Math.abs(containerSize.left);\n } else {\n unit = 'height';\n position = 'top';\n transformSize = -containerSize.top;\n }\n\n var basicSize = containerSize[unit];\n var tabContentSize = tabContentNodeSize[unit];\n var addSize = addNodeSize[unit];\n var mergedBasicSize = basicSize;\n\n if (tabContentSize + addSize > basicSize && tabContentSize < basicSize) {\n mergedBasicSize = basicSize - addSize;\n }\n\n return useMemo(function () {\n if (!tabs.length) {\n return [0, 0];\n }\n\n var len = tabs.length;\n var endIndex = len;\n\n for (var i = 0; i < len; i += 1) {\n var offset = tabOffsets.get(tabs[i].key) || DEFAULT_SIZE;\n\n if (offset[position] + offset[unit] > transformSize + mergedBasicSize) {\n endIndex = i - 1;\n break;\n }\n }\n\n var startIndex = 0;\n\n for (var _i = len - 1; _i >= 0; _i -= 1) {\n var _offset = tabOffsets.get(tabs[_i].key) || DEFAULT_SIZE;\n\n if (_offset[position] < transformSize) {\n startIndex = _i + 1;\n break;\n }\n }\n\n return [startIndex, endIndex];\n }, [tabOffsets, transformSize, mergedBasicSize, tabPosition, tabs.map(function (tab) {\n return tab.key;\n }).join('_'), rtl]);\n}","import * as React from 'react';\n\nfunction AddButton(_ref, ref) {\n var prefixCls = _ref.prefixCls,\n editable = _ref.editable,\n locale = _ref.locale,\n style = _ref.style;\n\n if (!editable || editable.showAdd === false) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"button\", {\n ref: ref,\n type: \"button\",\n className: \"\".concat(prefixCls, \"-nav-add\"),\n style: style,\n \"aria-label\": (locale === null || locale === void 0 ? void 0 : locale.addAriaLabel) || 'Add tab',\n onClick: function onClick(event) {\n editable.onEdit('add', {\n event: event\n });\n }\n }, editable.addIcon || '+');\n}\n\nexport default /*#__PURE__*/React.forwardRef(AddButton);","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useState, useEffect } from 'react';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport Menu, { MenuItem } from 'rc-menu';\nimport Dropdown from 'rc-dropdown';\nimport AddButton from './AddButton';\n\nfunction OperationNode(_ref, ref) {\n var prefixCls = _ref.prefixCls,\n id = _ref.id,\n tabs = _ref.tabs,\n locale = _ref.locale,\n mobile = _ref.mobile,\n _ref$moreIcon = _ref.moreIcon,\n moreIcon = _ref$moreIcon === void 0 ? 'More' : _ref$moreIcon,\n moreTransitionName = _ref.moreTransitionName,\n style = _ref.style,\n className = _ref.className,\n editable = _ref.editable,\n tabBarGutter = _ref.tabBarGutter,\n rtl = _ref.rtl,\n removeAriaLabel = _ref.removeAriaLabel,\n onTabClick = _ref.onTabClick;\n\n // ======================== Dropdown ========================\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n open = _useState2[0],\n setOpen = _useState2[1];\n\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n selectedKey = _useState4[0],\n setSelectedKey = _useState4[1];\n\n var popupId = \"\".concat(id, \"-more-popup\");\n var dropdownPrefix = \"\".concat(prefixCls, \"-dropdown\");\n var selectedItemId = selectedKey !== null ? \"\".concat(popupId, \"-\").concat(selectedKey) : null;\n var dropdownAriaLabel = locale === null || locale === void 0 ? void 0 : locale.dropdownAriaLabel;\n\n function onRemoveTab(event, key) {\n event.preventDefault();\n event.stopPropagation();\n editable.onEdit('remove', {\n key: key,\n event: event\n });\n }\n\n var menu = /*#__PURE__*/React.createElement(Menu, {\n onClick: function onClick(_ref2) {\n var key = _ref2.key,\n domEvent = _ref2.domEvent;\n onTabClick(key, domEvent);\n setOpen(false);\n },\n id: popupId,\n tabIndex: -1,\n role: \"listbox\",\n \"aria-activedescendant\": selectedItemId,\n selectedKeys: [selectedKey],\n \"aria-label\": dropdownAriaLabel !== undefined ? dropdownAriaLabel : 'expanded dropdown'\n }, tabs.map(function (tab) {\n var removable = editable && tab.closable !== false && !tab.disabled;\n return /*#__PURE__*/React.createElement(MenuItem, {\n key: tab.key,\n id: \"\".concat(popupId, \"-\").concat(tab.key),\n role: \"option\",\n \"aria-controls\": id && \"\".concat(id, \"-panel-\").concat(tab.key),\n disabled: tab.disabled\n }, /*#__PURE__*/React.createElement(\"span\", null, tab.tab), removable && /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n \"aria-label\": removeAriaLabel || 'remove',\n tabIndex: 0,\n className: \"\".concat(dropdownPrefix, \"-menu-item-remove\"),\n onClick: function onClick(e) {\n e.stopPropagation();\n onRemoveTab(e, tab.key);\n }\n }, tab.closeIcon || editable.removeIcon || '×'));\n }));\n\n function selectOffset(offset) {\n var enabledTabs = tabs.filter(function (tab) {\n return !tab.disabled;\n });\n var selectedIndex = enabledTabs.findIndex(function (tab) {\n return tab.key === selectedKey;\n }) || 0;\n var len = enabledTabs.length;\n\n for (var i = 0; i < len; i += 1) {\n selectedIndex = (selectedIndex + offset + len) % len;\n var tab = enabledTabs[selectedIndex];\n\n if (!tab.disabled) {\n setSelectedKey(tab.key);\n return;\n }\n }\n }\n\n function onKeyDown(e) {\n var which = e.which;\n\n if (!open) {\n if ([KeyCode.DOWN, KeyCode.SPACE, KeyCode.ENTER].includes(which)) {\n setOpen(true);\n e.preventDefault();\n }\n\n return;\n }\n\n switch (which) {\n case KeyCode.UP:\n selectOffset(-1);\n e.preventDefault();\n break;\n\n case KeyCode.DOWN:\n selectOffset(1);\n e.preventDefault();\n break;\n\n case KeyCode.ESC:\n setOpen(false);\n break;\n\n case KeyCode.SPACE:\n case KeyCode.ENTER:\n if (selectedKey !== null) onTabClick(selectedKey, e);\n break;\n }\n } // ========================= Effect =========================\n\n\n useEffect(function () {\n // We use query element here to avoid React strict warning\n var ele = document.getElementById(selectedItemId);\n\n if (ele && ele.scrollIntoView) {\n ele.scrollIntoView(false);\n }\n }, [selectedKey]);\n useEffect(function () {\n if (!open) {\n setSelectedKey(null);\n }\n }, [open]); // ========================= Render =========================\n\n var moreStyle = _defineProperty({}, rtl ? 'marginRight' : 'marginLeft', tabBarGutter);\n\n if (!tabs.length) {\n moreStyle.visibility = 'hidden';\n moreStyle.order = 1;\n }\n\n var overlayClassName = classNames(_defineProperty({}, \"\".concat(dropdownPrefix, \"-rtl\"), rtl));\n var moreNode = mobile ? null : /*#__PURE__*/React.createElement(Dropdown, {\n prefixCls: dropdownPrefix,\n overlay: menu,\n trigger: ['hover'],\n visible: open,\n transitionName: moreTransitionName,\n onVisibleChange: setOpen,\n overlayClassName: overlayClassName,\n mouseEnterDelay: 0.1,\n mouseLeaveDelay: 0.1\n }, /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n className: \"\".concat(prefixCls, \"-nav-more\"),\n style: moreStyle,\n tabIndex: -1,\n \"aria-hidden\": \"true\",\n \"aria-haspopup\": \"listbox\",\n \"aria-controls\": popupId,\n id: \"\".concat(id, \"-more\"),\n \"aria-expanded\": open,\n onKeyDown: onKeyDown\n }, moreIcon));\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-nav-operations\"), className),\n style: style,\n ref: ref\n }, moreNode, /*#__PURE__*/React.createElement(AddButton, {\n prefixCls: prefixCls,\n locale: locale,\n editable: editable\n }));\n}\n\nexport default /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(OperationNode), function (_, next) {\n return (// https://github.com/ant-design/ant-design/issues/32544\n // We'd better remove syntactic sugar in `rc-menu` since this has perf issue\n next.tabMoving\n );\n});","import { createContext } from 'react';\nexport default /*#__PURE__*/createContext(null);","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useState, useRef } from 'react';\nvar MIN_SWIPE_DISTANCE = 0.1;\nvar STOP_SWIPE_DISTANCE = 0.01;\nvar REFRESH_INTERVAL = 20;\nvar SPEED_OFF_MULTIPLE = Math.pow(0.995, REFRESH_INTERVAL); // ================================= Hook =================================\n\nexport default function useTouchMove(ref, onOffset) {\n var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n touchPosition = _useState2[0],\n setTouchPosition = _useState2[1];\n\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n lastTimestamp = _useState4[0],\n setLastTimestamp = _useState4[1];\n\n var _useState5 = useState(0),\n _useState6 = _slicedToArray(_useState5, 2),\n lastTimeDiff = _useState6[0],\n setLastTimeDiff = _useState6[1];\n\n var _useState7 = useState(),\n _useState8 = _slicedToArray(_useState7, 2),\n lastOffset = _useState8[0],\n setLastOffset = _useState8[1];\n\n var motionRef = useRef(); // ========================= Events =========================\n // >>> Touch events\n\n function onTouchStart(e) {\n var _e$touches$ = e.touches[0],\n screenX = _e$touches$.screenX,\n screenY = _e$touches$.screenY;\n setTouchPosition({\n x: screenX,\n y: screenY\n });\n window.clearInterval(motionRef.current);\n }\n\n function onTouchMove(e) {\n if (!touchPosition) return;\n e.preventDefault();\n var _e$touches$2 = e.touches[0],\n screenX = _e$touches$2.screenX,\n screenY = _e$touches$2.screenY;\n setTouchPosition({\n x: screenX,\n y: screenY\n });\n var offsetX = screenX - touchPosition.x;\n var offsetY = screenY - touchPosition.y;\n onOffset(offsetX, offsetY);\n var now = Date.now();\n setLastTimestamp(now);\n setLastTimeDiff(now - lastTimestamp);\n setLastOffset({\n x: offsetX,\n y: offsetY\n });\n }\n\n function onTouchEnd() {\n if (!touchPosition) return;\n setTouchPosition(null);\n setLastOffset(null); // Swipe if needed\n\n if (lastOffset) {\n var distanceX = lastOffset.x / lastTimeDiff;\n var distanceY = lastOffset.y / lastTimeDiff;\n var absX = Math.abs(distanceX);\n var absY = Math.abs(distanceY); // Skip swipe if low distance\n\n if (Math.max(absX, absY) < MIN_SWIPE_DISTANCE) return;\n var currentX = distanceX;\n var currentY = distanceY;\n motionRef.current = window.setInterval(function () {\n if (Math.abs(currentX) < STOP_SWIPE_DISTANCE && Math.abs(currentY) < STOP_SWIPE_DISTANCE) {\n window.clearInterval(motionRef.current);\n return;\n }\n\n currentX *= SPEED_OFF_MULTIPLE;\n currentY *= SPEED_OFF_MULTIPLE;\n onOffset(currentX * REFRESH_INTERVAL, currentY * REFRESH_INTERVAL);\n }, REFRESH_INTERVAL);\n }\n } // >>> Wheel event\n\n\n var lastWheelDirectionRef = useRef();\n\n function onWheel(e) {\n var deltaX = e.deltaX,\n deltaY = e.deltaY; // Convert both to x & y since wheel only happened on PC\n\n var mixed = 0;\n var absX = Math.abs(deltaX);\n var absY = Math.abs(deltaY);\n\n if (absX === absY) {\n mixed = lastWheelDirectionRef.current === 'x' ? deltaX : deltaY;\n } else if (absX > absY) {\n mixed = deltaX;\n lastWheelDirectionRef.current = 'x';\n } else {\n mixed = deltaY;\n lastWheelDirectionRef.current = 'y';\n }\n\n if (onOffset(-mixed, -mixed)) {\n e.preventDefault();\n }\n } // ========================= Effect =========================\n\n\n var touchEventsRef = useRef(null);\n touchEventsRef.current = {\n onTouchStart: onTouchStart,\n onTouchMove: onTouchMove,\n onTouchEnd: onTouchEnd,\n onWheel: onWheel\n };\n React.useEffect(function () {\n function onProxyTouchStart(e) {\n touchEventsRef.current.onTouchStart(e);\n }\n\n function onProxyTouchMove(e) {\n touchEventsRef.current.onTouchMove(e);\n }\n\n function onProxyTouchEnd(e) {\n touchEventsRef.current.onTouchEnd(e);\n }\n\n function onProxyWheel(e) {\n touchEventsRef.current.onWheel(e);\n }\n\n document.addEventListener('touchmove', onProxyTouchMove, {\n passive: false\n });\n document.addEventListener('touchend', onProxyTouchEnd, {\n passive: false\n }); // No need to clean up since element removed\n\n ref.current.addEventListener('touchstart', onProxyTouchStart, {\n passive: false\n });\n ref.current.addEventListener('wheel', onProxyWheel);\n return function () {\n document.removeEventListener('touchmove', onProxyTouchMove);\n document.removeEventListener('touchend', onProxyTouchEnd);\n };\n }, []);\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nexport default function useSyncState(defaultState, onChange) {\n var stateRef = React.useRef(defaultState);\n\n var _React$useState = React.useState({}),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n forceUpdate = _React$useState2[1];\n\n function setState(updater) {\n var newValue = typeof updater === 'function' ? updater(stateRef.current) : updater;\n\n if (newValue !== stateRef.current) {\n onChange(newValue, stateRef.current);\n }\n\n stateRef.current = newValue;\n forceUpdate({});\n }\n\n return [stateRef.current, setState];\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport * as React from 'react';\nimport { useState, useRef, useEffect } from 'react';\nimport classNames from 'classnames';\nimport raf from \"rc-util/es/raf\";\nimport ResizeObserver from 'rc-resize-observer';\nimport useRaf, { useRafState } from '../hooks/useRaf';\nimport TabNode from './TabNode';\nimport useOffsets from '../hooks/useOffsets';\nimport useVisibleRange from '../hooks/useVisibleRange';\nimport OperationNode from './OperationNode';\nimport TabContext from '../TabContext';\nimport useTouchMove from '../hooks/useTouchMove';\nimport useRefs from '../hooks/useRefs';\nimport AddButton from './AddButton';\nimport useSyncState from '../hooks/useSyncState';\n\nvar ExtraContent = function ExtraContent(_ref) {\n var position = _ref.position,\n prefixCls = _ref.prefixCls,\n extra = _ref.extra;\n if (!extra) return null;\n var content; // Parse extra\n\n var assertExtra = {};\n\n if (extra && _typeof(extra) === 'object' && ! /*#__PURE__*/React.isValidElement(extra)) {\n assertExtra = extra;\n } else {\n assertExtra.right = extra;\n }\n\n if (position === 'right') {\n content = assertExtra.right;\n }\n\n if (position === 'left') {\n content = assertExtra.left;\n }\n\n return content ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-extra-content\")\n }, content) : null;\n};\n\nfunction TabNavList(props, ref) {\n var _classNames;\n\n var _React$useContext = React.useContext(TabContext),\n prefixCls = _React$useContext.prefixCls,\n tabs = _React$useContext.tabs;\n\n var className = props.className,\n style = props.style,\n id = props.id,\n animated = props.animated,\n activeKey = props.activeKey,\n rtl = props.rtl,\n extra = props.extra,\n editable = props.editable,\n locale = props.locale,\n tabPosition = props.tabPosition,\n tabBarGutter = props.tabBarGutter,\n children = props.children,\n onTabClick = props.onTabClick,\n onTabScroll = props.onTabScroll;\n var tabsWrapperRef = useRef();\n var tabListRef = useRef();\n var operationsRef = useRef();\n var innerAddButtonRef = useRef();\n\n var _useRefs = useRefs(),\n _useRefs2 = _slicedToArray(_useRefs, 2),\n getBtnRef = _useRefs2[0],\n removeBtnRef = _useRefs2[1];\n\n var tabPositionTopOrBottom = tabPosition === 'top' || tabPosition === 'bottom';\n\n var _useSyncState = useSyncState(0, function (next, prev) {\n if (tabPositionTopOrBottom && onTabScroll) {\n onTabScroll({\n direction: next > prev ? 'left' : 'right'\n });\n }\n }),\n _useSyncState2 = _slicedToArray(_useSyncState, 2),\n transformLeft = _useSyncState2[0],\n setTransformLeft = _useSyncState2[1];\n\n var _useSyncState3 = useSyncState(0, function (next, prev) {\n if (!tabPositionTopOrBottom && onTabScroll) {\n onTabScroll({\n direction: next > prev ? 'top' : 'bottom'\n });\n }\n }),\n _useSyncState4 = _slicedToArray(_useSyncState3, 2),\n transformTop = _useSyncState4[0],\n setTransformTop = _useSyncState4[1];\n\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n wrapperScrollWidth = _useState2[0],\n setWrapperScrollWidth = _useState2[1];\n\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n wrapperScrollHeight = _useState4[0],\n setWrapperScrollHeight = _useState4[1];\n\n var _useState5 = useState(null),\n _useState6 = _slicedToArray(_useState5, 2),\n wrapperWidth = _useState6[0],\n setWrapperWidth = _useState6[1];\n\n var _useState7 = useState(null),\n _useState8 = _slicedToArray(_useState7, 2),\n wrapperHeight = _useState8[0],\n setWrapperHeight = _useState8[1];\n\n var _useState9 = useState(0),\n _useState10 = _slicedToArray(_useState9, 2),\n addWidth = _useState10[0],\n setAddWidth = _useState10[1];\n\n var _useState11 = useState(0),\n _useState12 = _slicedToArray(_useState11, 2),\n addHeight = _useState12[0],\n setAddHeight = _useState12[1];\n\n var _useRafState = useRafState(new Map()),\n _useRafState2 = _slicedToArray(_useRafState, 2),\n tabSizes = _useRafState2[0],\n setTabSizes = _useRafState2[1];\n\n var tabOffsets = useOffsets(tabs, tabSizes, wrapperScrollWidth); // ========================== Util =========================\n\n var operationsHiddenClassName = \"\".concat(prefixCls, \"-nav-operations-hidden\");\n var transformMin = 0;\n var transformMax = 0;\n\n if (!tabPositionTopOrBottom) {\n transformMin = Math.min(0, wrapperHeight - wrapperScrollHeight);\n transformMax = 0;\n } else if (rtl) {\n transformMin = 0;\n transformMax = Math.max(0, wrapperScrollWidth - wrapperWidth);\n } else {\n transformMin = Math.min(0, wrapperWidth - wrapperScrollWidth);\n transformMax = 0;\n }\n\n function alignInRange(value) {\n if (value < transformMin) {\n return transformMin;\n }\n\n if (value > transformMax) {\n return transformMax;\n }\n\n return value;\n } // ========================= Mobile ========================\n\n\n var touchMovingRef = useRef();\n\n var _useState13 = useState(),\n _useState14 = _slicedToArray(_useState13, 2),\n lockAnimation = _useState14[0],\n setLockAnimation = _useState14[1];\n\n function doLockAnimation() {\n setLockAnimation(Date.now());\n }\n\n function clearTouchMoving() {\n window.clearTimeout(touchMovingRef.current);\n }\n\n useTouchMove(tabsWrapperRef, function (offsetX, offsetY) {\n function doMove(setState, offset) {\n setState(function (value) {\n var newValue = alignInRange(value + offset);\n return newValue;\n });\n }\n\n if (tabPositionTopOrBottom) {\n // Skip scroll if place is enough\n if (wrapperWidth >= wrapperScrollWidth) {\n return false;\n }\n\n doMove(setTransformLeft, offsetX);\n } else {\n if (wrapperHeight >= wrapperScrollHeight) {\n return false;\n }\n\n doMove(setTransformTop, offsetY);\n }\n\n clearTouchMoving();\n doLockAnimation();\n return true;\n });\n useEffect(function () {\n clearTouchMoving();\n\n if (lockAnimation) {\n touchMovingRef.current = window.setTimeout(function () {\n setLockAnimation(0);\n }, 100);\n }\n\n return clearTouchMoving;\n }, [lockAnimation]); // ========================= Scroll ========================\n\n function scrollToTab() {\n var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : activeKey;\n var tabOffset = tabOffsets.get(key) || {\n width: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0\n };\n\n if (tabPositionTopOrBottom) {\n // ============ Align with top & bottom ============\n var newTransform = transformLeft; // RTL\n\n if (rtl) {\n if (tabOffset.right < transformLeft) {\n newTransform = tabOffset.right;\n } else if (tabOffset.right + tabOffset.width > transformLeft + wrapperWidth) {\n newTransform = tabOffset.right + tabOffset.width - wrapperWidth;\n }\n } // LTR\n else if (tabOffset.left < -transformLeft) {\n newTransform = -tabOffset.left;\n } else if (tabOffset.left + tabOffset.width > -transformLeft + wrapperWidth) {\n newTransform = -(tabOffset.left + tabOffset.width - wrapperWidth);\n }\n\n setTransformTop(0);\n setTransformLeft(alignInRange(newTransform));\n } else {\n // ============ Align with left & right ============\n var _newTransform = transformTop;\n\n if (tabOffset.top < -transformTop) {\n _newTransform = -tabOffset.top;\n } else if (tabOffset.top + tabOffset.height > -transformTop + wrapperHeight) {\n _newTransform = -(tabOffset.top + tabOffset.height - wrapperHeight);\n }\n\n setTransformLeft(0);\n setTransformTop(alignInRange(_newTransform));\n }\n } // ========================== Tab ==========================\n // Render tab node & collect tab offset\n\n\n var _useVisibleRange = useVisibleRange(tabOffsets, {\n width: wrapperWidth,\n height: wrapperHeight,\n left: transformLeft,\n top: transformTop\n }, {\n width: wrapperScrollWidth,\n height: wrapperScrollHeight\n }, {\n width: addWidth,\n height: addHeight\n }, _objectSpread(_objectSpread({}, props), {}, {\n tabs: tabs\n })),\n _useVisibleRange2 = _slicedToArray(_useVisibleRange, 2),\n visibleStart = _useVisibleRange2[0],\n visibleEnd = _useVisibleRange2[1];\n\n var tabNodeStyle = {};\n\n if (tabPosition === 'top' || tabPosition === 'bottom') {\n tabNodeStyle[rtl ? 'marginRight' : 'marginLeft'] = tabBarGutter;\n } else {\n tabNodeStyle.marginTop = tabBarGutter;\n }\n\n var tabNodes = tabs.map(function (tab, i) {\n var key = tab.key;\n return /*#__PURE__*/React.createElement(TabNode, {\n id: id,\n prefixCls: prefixCls,\n key: key,\n tab: tab\n /* first node should not have margin left */\n ,\n style: i === 0 ? undefined : tabNodeStyle,\n closable: tab.closable,\n editable: editable,\n active: key === activeKey,\n renderWrapper: children,\n removeAriaLabel: locale === null || locale === void 0 ? void 0 : locale.removeAriaLabel,\n ref: getBtnRef(key),\n onClick: function onClick(e) {\n onTabClick(key, e);\n },\n onRemove: function onRemove() {\n removeBtnRef(key);\n },\n onFocus: function onFocus() {\n scrollToTab(key);\n doLockAnimation();\n\n if (!tabsWrapperRef.current) {\n return;\n } // Focus element will make scrollLeft change which we should reset back\n\n\n if (!rtl) {\n tabsWrapperRef.current.scrollLeft = 0;\n }\n\n tabsWrapperRef.current.scrollTop = 0;\n }\n });\n });\n var onListHolderResize = useRaf(function () {\n var _tabsWrapperRef$curre, _tabsWrapperRef$curre2, _innerAddButtonRef$cu, _innerAddButtonRef$cu2, _tabListRef$current, _tabListRef$current2;\n\n // Update wrapper records\n var offsetWidth = ((_tabsWrapperRef$curre = tabsWrapperRef.current) === null || _tabsWrapperRef$curre === void 0 ? void 0 : _tabsWrapperRef$curre.offsetWidth) || 0;\n var offsetHeight = ((_tabsWrapperRef$curre2 = tabsWrapperRef.current) === null || _tabsWrapperRef$curre2 === void 0 ? void 0 : _tabsWrapperRef$curre2.offsetHeight) || 0;\n var newAddWidth = ((_innerAddButtonRef$cu = innerAddButtonRef.current) === null || _innerAddButtonRef$cu === void 0 ? void 0 : _innerAddButtonRef$cu.offsetWidth) || 0;\n var newAddHeight = ((_innerAddButtonRef$cu2 = innerAddButtonRef.current) === null || _innerAddButtonRef$cu2 === void 0 ? void 0 : _innerAddButtonRef$cu2.offsetHeight) || 0;\n setWrapperWidth(offsetWidth);\n setWrapperHeight(offsetHeight);\n setAddWidth(newAddWidth);\n setAddHeight(newAddHeight);\n var newWrapperScrollWidth = (((_tabListRef$current = tabListRef.current) === null || _tabListRef$current === void 0 ? void 0 : _tabListRef$current.offsetWidth) || 0) - newAddWidth;\n var newWrapperScrollHeight = (((_tabListRef$current2 = tabListRef.current) === null || _tabListRef$current2 === void 0 ? void 0 : _tabListRef$current2.offsetHeight) || 0) - newAddHeight;\n setWrapperScrollWidth(newWrapperScrollWidth);\n setWrapperScrollHeight(newWrapperScrollHeight); // Update buttons records\n\n setTabSizes(function () {\n var newSizes = new Map();\n tabs.forEach(function (_ref2) {\n var key = _ref2.key;\n var btnNode = getBtnRef(key).current;\n\n if (btnNode) {\n newSizes.set(key, {\n width: btnNode.offsetWidth,\n height: btnNode.offsetHeight,\n left: btnNode.offsetLeft,\n top: btnNode.offsetTop\n });\n }\n });\n return newSizes;\n });\n }); // ======================== Dropdown =======================\n\n var startHiddenTabs = tabs.slice(0, visibleStart);\n var endHiddenTabs = tabs.slice(visibleEnd + 1);\n var hiddenTabs = [].concat(_toConsumableArray(startHiddenTabs), _toConsumableArray(endHiddenTabs)); // =================== Link & Operations ===================\n\n var _useState15 = useState(),\n _useState16 = _slicedToArray(_useState15, 2),\n inkStyle = _useState16[0],\n setInkStyle = _useState16[1];\n\n var activeTabOffset = tabOffsets.get(activeKey); // Delay set ink style to avoid remove tab blink\n\n var inkBarRafRef = useRef();\n\n function cleanInkBarRaf() {\n raf.cancel(inkBarRafRef.current);\n }\n\n useEffect(function () {\n var newInkStyle = {};\n\n if (activeTabOffset) {\n if (tabPositionTopOrBottom) {\n if (rtl) {\n newInkStyle.right = activeTabOffset.right;\n } else {\n newInkStyle.left = activeTabOffset.left;\n }\n\n newInkStyle.width = activeTabOffset.width;\n } else {\n newInkStyle.top = activeTabOffset.top;\n newInkStyle.height = activeTabOffset.height;\n }\n }\n\n cleanInkBarRaf();\n inkBarRafRef.current = raf(function () {\n setInkStyle(newInkStyle);\n });\n return cleanInkBarRaf;\n }, [activeTabOffset, tabPositionTopOrBottom, rtl]); // ========================= Effect ========================\n\n useEffect(function () {\n scrollToTab();\n }, [activeKey, activeTabOffset, tabOffsets, tabPositionTopOrBottom]); // Should recalculate when rtl changed\n\n useEffect(function () {\n onListHolderResize();\n }, [rtl, tabBarGutter, activeKey, tabs.map(function (tab) {\n return tab.key;\n }).join('_')]); // ========================= Render ========================\n\n var hasDropdown = !!hiddenTabs.length;\n var wrapPrefix = \"\".concat(prefixCls, \"-nav-wrap\");\n var pingLeft;\n var pingRight;\n var pingTop;\n var pingBottom;\n\n if (tabPositionTopOrBottom) {\n if (rtl) {\n pingRight = transformLeft > 0;\n pingLeft = transformLeft + wrapperWidth < wrapperScrollWidth;\n } else {\n pingLeft = transformLeft < 0;\n pingRight = -transformLeft + wrapperWidth < wrapperScrollWidth;\n }\n } else {\n pingTop = transformTop < 0;\n pingBottom = -transformTop + wrapperHeight < wrapperScrollHeight;\n }\n\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: ref,\n role: \"tablist\",\n className: classNames(\"\".concat(prefixCls, \"-nav\"), className),\n style: style,\n onKeyDown: function onKeyDown() {\n // No need animation when use keyboard\n doLockAnimation();\n }\n }, /*#__PURE__*/React.createElement(ExtraContent, {\n position: \"left\",\n extra: extra,\n prefixCls: prefixCls\n }), /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onListHolderResize\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(wrapPrefix, (_classNames = {}, _defineProperty(_classNames, \"\".concat(wrapPrefix, \"-ping-left\"), pingLeft), _defineProperty(_classNames, \"\".concat(wrapPrefix, \"-ping-right\"), pingRight), _defineProperty(_classNames, \"\".concat(wrapPrefix, \"-ping-top\"), pingTop), _defineProperty(_classNames, \"\".concat(wrapPrefix, \"-ping-bottom\"), pingBottom), _classNames)),\n ref: tabsWrapperRef\n }, /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onListHolderResize\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: tabListRef,\n className: \"\".concat(prefixCls, \"-nav-list\"),\n style: {\n transform: \"translate(\".concat(transformLeft, \"px, \").concat(transformTop, \"px)\"),\n transition: lockAnimation ? 'none' : undefined\n }\n }, tabNodes, /*#__PURE__*/React.createElement(AddButton, {\n ref: innerAddButtonRef,\n prefixCls: prefixCls,\n locale: locale,\n editable: editable,\n style: _objectSpread(_objectSpread({}, tabNodes.length === 0 ? undefined : tabNodeStyle), {}, {\n visibility: hasDropdown ? 'hidden' : null\n })\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-ink-bar\"), _defineProperty({}, \"\".concat(prefixCls, \"-ink-bar-animated\"), animated.inkBar)),\n style: inkStyle\n }))))), /*#__PURE__*/React.createElement(OperationNode, _extends({}, props, {\n removeAriaLabel: locale === null || locale === void 0 ? void 0 : locale.removeAriaLabel,\n ref: operationsRef,\n prefixCls: prefixCls,\n tabs: hiddenTabs,\n className: !hasDropdown && operationsHiddenClassName,\n tabMoving: !!lockAnimation\n })), /*#__PURE__*/React.createElement(ExtraContent, {\n position: \"right\",\n extra: extra,\n prefixCls: prefixCls\n }));\n /* eslint-enable */\n}\n\nexport default /*#__PURE__*/React.forwardRef(TabNavList);","import * as React from 'react';\nimport { useRef } from 'react';\nexport default function useRefs() {\n var cacheRefs = useRef(new Map());\n\n function getRef(key) {\n if (!cacheRefs.current.has(key)) {\n cacheRefs.current.set(key, /*#__PURE__*/React.createRef());\n }\n\n return cacheRefs.current.get(key);\n }\n\n function removeRef(key) {\n cacheRefs.current.delete(key);\n }\n\n return [getRef, removeRef];\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport TabContext from '../TabContext';\nexport default function TabPanelList(_ref) {\n var id = _ref.id,\n activeKey = _ref.activeKey,\n animated = _ref.animated,\n tabPosition = _ref.tabPosition,\n rtl = _ref.rtl,\n destroyInactiveTabPane = _ref.destroyInactiveTabPane;\n\n var _React$useContext = React.useContext(TabContext),\n prefixCls = _React$useContext.prefixCls,\n tabs = _React$useContext.tabs;\n\n var tabPaneAnimated = animated.tabPane;\n var activeIndex = tabs.findIndex(function (tab) {\n return tab.key === activeKey;\n });\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-content-holder\"))\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-content\"), \"\".concat(prefixCls, \"-content-\").concat(tabPosition), _defineProperty({}, \"\".concat(prefixCls, \"-content-animated\"), tabPaneAnimated)),\n style: activeIndex && tabPaneAnimated ? _defineProperty({}, rtl ? 'marginRight' : 'marginLeft', \"-\".concat(activeIndex, \"00%\")) : null\n }, tabs.map(function (tab) {\n return /*#__PURE__*/React.cloneElement(tab.node, {\n key: tab.key,\n prefixCls: prefixCls,\n tabKey: tab.key,\n id: id,\n animated: tabPaneAnimated,\n active: tab.key === activeKey,\n destroyInactiveTabPane: destroyInactiveTabPane\n });\n })));\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nexport default function TabPane(_ref) {\n var prefixCls = _ref.prefixCls,\n forceRender = _ref.forceRender,\n className = _ref.className,\n style = _ref.style,\n id = _ref.id,\n active = _ref.active,\n animated = _ref.animated,\n destroyInactiveTabPane = _ref.destroyInactiveTabPane,\n tabKey = _ref.tabKey,\n children = _ref.children;\n\n var _React$useState = React.useState(forceRender),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n visited = _React$useState2[0],\n setVisited = _React$useState2[1];\n\n React.useEffect(function () {\n if (active) {\n setVisited(true);\n } else if (destroyInactiveTabPane) {\n setVisited(false);\n }\n }, [active, destroyInactiveTabPane]);\n var mergedStyle = {};\n\n if (!active) {\n if (animated) {\n mergedStyle.visibility = 'hidden';\n mergedStyle.height = 0;\n mergedStyle.overflowY = 'hidden';\n } else {\n mergedStyle.display = 'none';\n }\n }\n\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id && \"\".concat(id, \"-panel-\").concat(tabKey),\n role: \"tabpanel\",\n tabIndex: active ? 0 : -1,\n \"aria-labelledby\": id && \"\".concat(id, \"-tab-\").concat(tabKey),\n \"aria-hidden\": !active,\n style: _objectSpread(_objectSpread({}, mergedStyle), style),\n className: classNames(\"\".concat(prefixCls, \"-tabpane\"), active && \"\".concat(prefixCls, \"-tabpane-active\"), className)\n }, (active || visited || forceRender) && children);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nvar _excluded = [\"id\", \"prefixCls\", \"className\", \"children\", \"direction\", \"activeKey\", \"defaultActiveKey\", \"editable\", \"animated\", \"tabPosition\", \"tabBarGutter\", \"tabBarStyle\", \"tabBarExtraContent\", \"locale\", \"moreIcon\", \"moreTransitionName\", \"destroyInactiveTabPane\", \"renderTabBar\", \"onChange\", \"onTabClick\", \"onTabScroll\"];\n// Accessibility https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Tab_Role\nimport * as React from 'react';\nimport { useEffect, useState } from 'react';\nimport classNames from 'classnames';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport isMobile from \"rc-util/es/isMobile\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport TabNavList from './TabNavList';\nimport TabPanelList from './TabPanelList';\nimport TabPane from './TabPanelList/TabPane';\nimport TabContext from './TabContext';\n/**\n * Should added antd:\n * - type\n *\n * Removed:\n * - onNextClick\n * - onPrevClick\n * - keyboard\n */\n// Used for accessibility\n\nvar uuid = 0;\n\nfunction parseTabList(children) {\n return toArray(children).map(function (node) {\n if ( /*#__PURE__*/React.isValidElement(node)) {\n var key = node.key !== undefined ? String(node.key) : undefined;\n return _objectSpread(_objectSpread({\n key: key\n }, node.props), {}, {\n node: node\n });\n }\n\n return null;\n }).filter(function (tab) {\n return tab;\n });\n}\n\nfunction Tabs(_ref, ref) {\n var _classNames;\n\n var id = _ref.id,\n _ref$prefixCls = _ref.prefixCls,\n prefixCls = _ref$prefixCls === void 0 ? 'rc-tabs' : _ref$prefixCls,\n className = _ref.className,\n children = _ref.children,\n direction = _ref.direction,\n activeKey = _ref.activeKey,\n defaultActiveKey = _ref.defaultActiveKey,\n editable = _ref.editable,\n _ref$animated = _ref.animated,\n animated = _ref$animated === void 0 ? {\n inkBar: true,\n tabPane: false\n } : _ref$animated,\n _ref$tabPosition = _ref.tabPosition,\n tabPosition = _ref$tabPosition === void 0 ? 'top' : _ref$tabPosition,\n tabBarGutter = _ref.tabBarGutter,\n tabBarStyle = _ref.tabBarStyle,\n tabBarExtraContent = _ref.tabBarExtraContent,\n locale = _ref.locale,\n moreIcon = _ref.moreIcon,\n moreTransitionName = _ref.moreTransitionName,\n destroyInactiveTabPane = _ref.destroyInactiveTabPane,\n renderTabBar = _ref.renderTabBar,\n onChange = _ref.onChange,\n onTabClick = _ref.onTabClick,\n onTabScroll = _ref.onTabScroll,\n restProps = _objectWithoutProperties(_ref, _excluded);\n\n var tabs = parseTabList(children);\n var rtl = direction === 'rtl';\n var mergedAnimated;\n\n if (animated === false) {\n mergedAnimated = {\n inkBar: false,\n tabPane: false\n };\n } else if (animated === true) {\n mergedAnimated = {\n inkBar: true,\n tabPane: true\n };\n } else {\n mergedAnimated = _objectSpread({\n inkBar: true,\n tabPane: false\n }, _typeof(animated) === 'object' ? animated : {});\n } // ======================== Mobile ========================\n\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n mobile = _useState2[0],\n setMobile = _useState2[1];\n\n useEffect(function () {\n // Only update on the client side\n setMobile(isMobile());\n }, []); // ====================== Active Key ======================\n\n var _useMergedState = useMergedState(function () {\n var _tabs$;\n\n return (_tabs$ = tabs[0]) === null || _tabs$ === void 0 ? void 0 : _tabs$.key;\n }, {\n value: activeKey,\n defaultValue: defaultActiveKey\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedActiveKey = _useMergedState2[0],\n setMergedActiveKey = _useMergedState2[1];\n\n var _useState3 = useState(function () {\n return tabs.findIndex(function (tab) {\n return tab.key === mergedActiveKey;\n });\n }),\n _useState4 = _slicedToArray(_useState3, 2),\n activeIndex = _useState4[0],\n setActiveIndex = _useState4[1]; // Reset active key if not exist anymore\n\n\n useEffect(function () {\n var newActiveIndex = tabs.findIndex(function (tab) {\n return tab.key === mergedActiveKey;\n });\n\n if (newActiveIndex === -1) {\n var _tabs$newActiveIndex;\n\n newActiveIndex = Math.max(0, Math.min(activeIndex, tabs.length - 1));\n setMergedActiveKey((_tabs$newActiveIndex = tabs[newActiveIndex]) === null || _tabs$newActiveIndex === void 0 ? void 0 : _tabs$newActiveIndex.key);\n }\n\n setActiveIndex(newActiveIndex);\n }, [tabs.map(function (tab) {\n return tab.key;\n }).join('_'), mergedActiveKey, activeIndex]); // ===================== Accessibility ====================\n\n var _useMergedState3 = useMergedState(null, {\n value: id\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n mergedId = _useMergedState4[0],\n setMergedId = _useMergedState4[1];\n\n var mergedTabPosition = tabPosition;\n\n if (mobile && !['left', 'right'].includes(tabPosition)) {\n mergedTabPosition = 'top';\n } // Async generate id to avoid ssr mapping failed\n\n\n useEffect(function () {\n if (!id) {\n setMergedId(\"rc-tabs-\".concat(process.env.NODE_ENV === 'test' ? 'test' : uuid));\n uuid += 1;\n }\n }, []); // ======================== Events ========================\n\n function onInternalTabClick(key, e) {\n onTabClick === null || onTabClick === void 0 ? void 0 : onTabClick(key, e);\n var isActiveChanged = key !== mergedActiveKey;\n setMergedActiveKey(key);\n\n if (isActiveChanged) {\n onChange === null || onChange === void 0 ? void 0 : onChange(key);\n }\n } // ======================== Render ========================\n\n\n var sharedProps = {\n id: mergedId,\n activeKey: mergedActiveKey,\n animated: mergedAnimated,\n tabPosition: mergedTabPosition,\n rtl: rtl,\n mobile: mobile\n };\n var tabNavBar;\n\n var tabNavBarProps = _objectSpread(_objectSpread({}, sharedProps), {}, {\n editable: editable,\n locale: locale,\n moreIcon: moreIcon,\n moreTransitionName: moreTransitionName,\n tabBarGutter: tabBarGutter,\n onTabClick: onInternalTabClick,\n onTabScroll: onTabScroll,\n extra: tabBarExtraContent,\n style: tabBarStyle,\n panes: children\n });\n\n if (renderTabBar) {\n tabNavBar = renderTabBar(tabNavBarProps, TabNavList);\n } else {\n tabNavBar = /*#__PURE__*/React.createElement(TabNavList, tabNavBarProps);\n }\n\n return /*#__PURE__*/React.createElement(TabContext.Provider, {\n value: {\n tabs: tabs,\n prefixCls: prefixCls\n }\n }, /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: ref,\n id: id,\n className: classNames(prefixCls, \"\".concat(prefixCls, \"-\").concat(mergedTabPosition), (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-mobile\"), mobile), _defineProperty(_classNames, \"\".concat(prefixCls, \"-editable\"), editable), _defineProperty(_classNames, \"\".concat(prefixCls, \"-rtl\"), rtl), _classNames), className)\n }, restProps), tabNavBar, /*#__PURE__*/React.createElement(TabPanelList, _extends({\n destroyInactiveTabPane: destroyInactiveTabPane\n }, sharedProps, {\n animated: mergedAnimated\n }))));\n}\n\nvar ForwardTabs = /*#__PURE__*/React.forwardRef(Tabs);\nForwardTabs.TabPane = TabPane;\nexport default ForwardTabs;","import Tabs from './Tabs';\nimport TabPane from './TabPanelList/TabPane';\nexport { TabPane };\nexport default Tabs;"],"names":["Object","defineProperty","exports","value","obj","_default","require","__esModule","module","_interopRequireDefault","_typeof","_objectSpread2","React","e","r","default","t","_getRequireWildcardCache","has","get","n","__proto__","a","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_interopRequireWildcard","_PlusOutlined","_AntdIcon","WeakMap","PlusOutlined","props","ref","createElement","icon","RefIcon","forwardRef","_extends","assign","target","arguments","length","source","key","prototype","apply","this","_defineProperty","enumerable","configurable","writable","_arrayLikeToArray","arr","len","arr2","Array","_unsupportedIterableToArray","o","minLen","toString","slice","constructor","name","from","test","_slicedToArray","isArray","_i","Symbol","iterator","_s","_e","_arr","_n","_d","next","done","push","err","TypeError","_objectWithoutProperties","excluded","sourceKeys","keys","indexOf","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","ownKeys","object","enumerableOnly","symbols","filter","sym","forEach","getOwnPropertyDescriptors","defineProperties","_toConsumableArray","iter","useRaf","callback","rafRef","useRef","removedRef","useEffect","current","raf","cancel","_len","args","_key","TabNode","_ref","_classNames","prefixCls","id","active","_ref$tab","tab","disabled","closeIcon","closable","renderWrapper","removeAriaLabel","editable","onClick","onRemove","onFocus","style","tabPrefix","concat","removable","onInternalClick","node","className","classNames","role","tabIndex","stopPropagation","onKeyDown","KeyCode","SPACE","ENTER","includes","which","preventDefault","type","event","onEdit","removeIcon","DEFAULT_SIZE","width","height","left","top","right","AddButton","locale","showAdd","addAriaLabel","addIcon","OperationNode","tabs","mobile","_ref$moreIcon","moreIcon","moreTransitionName","tabBarGutter","rtl","onTabClick","_useState2","useState","open","setOpen","_useState4","selectedKey","setSelectedKey","popupId","dropdownPrefix","selectedItemId","dropdownAriaLabel","menu","Menu","_ref2","domEvent","selectedKeys","undefined","map","MenuItem","selectOffset","offset","enabledTabs","selectedIndex","findIndex","ele","document","getElementById","scrollIntoView","moreStyle","visibility","order","overlayClassName","moreNode","Dropdown","overlay","trigger","visible","transitionName","onVisibleChange","mouseEnterDelay","mouseLeaveDelay","UP","DOWN","ESC","_","createContext","MIN_SWIPE_DISTANCE","STOP_SWIPE_DISTANCE","REFRESH_INTERVAL","SPEED_OFF_MULTIPLE","Math","pow","useSyncState","defaultState","onChange","stateRef","forceUpdate","updater","newValue","ExtraContent","content","position","extra","assertExtra","TabNavList","_React$useContext","TabContext","animated","activeKey","tabPosition","children","onTabScroll","tabsWrapperRef","tabListRef","operationsRef","innerAddButtonRef","_useRefs2","cacheRefs","Map","delete","useRefs","getBtnRef","removeBtnRef","tabPositionTopOrBottom","_useSyncState2","prev","direction","transformLeft","setTransformLeft","_useSyncState4","transformTop","setTransformTop","wrapperScrollWidth","setWrapperScrollWidth","wrapperScrollHeight","setWrapperScrollHeight","_useState6","wrapperWidth","setWrapperWidth","_useState8","wrapperHeight","setWrapperHeight","_useState10","addWidth","setAddWidth","_useState12","addHeight","setAddHeight","_useRafState","batchRef","state","flushUpdate","useRafState","_useRafState2","tabSizes","setTabSizes","tabOffsets","holderScrollWidth","useMemo","_tabs$","lastOffset","rightOffset","_tabs","data","entity","_objectSpread","join","useOffsets","operationsHiddenClassName","transformMin","transformMax","alignInRange","max","min","touchMovingRef","_useState14","lockAnimation","setLockAnimation","doLockAnimation","Date","now","clearTouchMoving","window","clearTimeout","scrollToTab","tabOffset","newTransform","_newTransform","onOffset","touchPosition","setTouchPosition","lastTimestamp","setLastTimestamp","lastTimeDiff","setLastTimeDiff","setLastOffset","motionRef","lastWheelDirectionRef","touchEventsRef","onTouchStart","_e$touches$","touches","screenX","screenY","x","y","clearInterval","onTouchMove","_e$touches$2","offsetX","offsetY","onTouchEnd","distanceX","distanceY","absX","abs","absY","currentX","currentY","setInterval","onWheel","deltaX","deltaY","mixed","onProxyTouchMove","onProxyTouchEnd","addEventListener","passive","removeEventListener","useTouchMove","doMove","setState","setTimeout","_useVisibleRange","containerSize","tabContentNodeSize","addNodeSize","unit","transformSize","basicSize","tabContentSize","addSize","mergedBasicSize","endIndex","startIndex","useVisibleRange","_useVisibleRange2","visibleStart","visibleEnd","tabNodeStyle","marginTop","tabNodes","scrollLeft","scrollTop","onListHolderResize","_tabsWrapperRef$curre","_tabsWrapperRef$curre2","_innerAddButtonRef$cu","_innerAddButtonRef$cu2","_tabListRef$current","_tabListRef$current2","offsetWidth","offsetHeight","newAddWidth","newAddHeight","newWrapperScrollWidth","newWrapperScrollHeight","newSizes","btnNode","offsetLeft","offsetTop","startHiddenTabs","endHiddenTabs","hiddenTabs","_useState16","inkStyle","setInkStyle","activeTabOffset","inkBarRafRef","cleanInkBarRaf","newInkStyle","pingLeft","pingRight","pingTop","pingBottom","hasDropdown","wrapPrefix","ResizeObserver","onResize","transform","transition","inkBar","tabMoving","TabPanelList","destroyInactiveTabPane","tabPaneAnimated","tabPane","activeIndex","tabKey","TabPane","forceRender","_React$useState2","visited","setVisited","mergedStyle","overflowY","display","_excluded","uuid","Tabs","mergedAnimated","_ref$prefixCls","defaultActiveKey","_ref$animated","_ref$tabPosition","tabBarStyle","tabBarExtraContent","renderTabBar","restProps","toArray","String","parseTabList","setMobile","isMobile","_useMergedState2","useMergedState","defaultValue","mergedActiveKey","setMergedActiveKey","setActiveIndex","_tabs$newActiveIndex","newActiveIndex","_useMergedState4","mergedId","setMergedId","mergedTabPosition","tabNavBar","sharedProps","tabNavBarProps","isActiveChanged","panes","Provider","ForwardTabs"],"sourceRoot":""}