{"version":3,"file":"js/2350-f748ac4f0de7327e1be6.js","mappings":"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","sources":["webpack://lionwheel/./node_modules/antd/es/checkbox/GroupContext.js","webpack://lionwheel/./node_modules/antd/es/checkbox/Checkbox.js","webpack://lionwheel/./node_modules/antd/es/checkbox/Group.js","webpack://lionwheel/./node_modules/antd/es/checkbox/index.js","webpack://lionwheel/./node_modules/antd/es/checkbox/style/index.js","webpack://lionwheel/./node_modules/antd/es/config-provider/defaultRenderEmpty.js","webpack://lionwheel/./node_modules/antd/es/empty/empty.js","webpack://lionwheel/./node_modules/antd/es/empty/simple.js","webpack://lionwheel/./node_modules/antd/es/empty/style/index.js","webpack://lionwheel/./node_modules/antd/es/empty/index.js","webpack://lionwheel/./node_modules/rc-select/es/TransBtn.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useAllowClear.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useBaseProps.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useLock.js","webpack://lionwheel/./node_modules/rc-select/es/Selector/Input.js","webpack://lionwheel/./node_modules/rc-select/es/utils/commonUtil.js","webpack://lionwheel/./node_modules/rc-select/es/Selector/MultipleSelector.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useLayoutEffect.js","webpack://lionwheel/./node_modules/rc-select/es/Selector/SingleSelector.js","webpack://lionwheel/./node_modules/rc-select/es/Selector/index.js","webpack://lionwheel/./node_modules/rc-select/es/utils/keyUtil.js","webpack://lionwheel/./node_modules/rc-select/es/SelectTrigger.js","webpack://lionwheel/./node_modules/rc-select/es/utils/valueUtil.js","webpack://lionwheel/./node_modules/rc-select/es/SelectContext.js","webpack://lionwheel/./node_modules/rc-select/es/BaseSelect/Polite.js","webpack://lionwheel/./node_modules/rc-select/es/BaseSelect/index.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useDelayReset.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useSelectTriggerControl.js","webpack://lionwheel/./node_modules/rc-select/es/OptGroup.js","webpack://lionwheel/./node_modules/rc-select/es/Option.js","webpack://lionwheel/./node_modules/rc-select/es/OptionList.js","webpack://lionwheel/./node_modules/rc-select/es/utils/platformUtil.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useFilterOptions.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useId.js","webpack://lionwheel/./node_modules/rc-select/es/utils/legacyUtil.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useOptions.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useRefFunc.js","webpack://lionwheel/./node_modules/rc-select/es/Select.js","webpack://lionwheel/./node_modules/rc-select/es/hooks/useCache.js","webpack://lionwheel/./node_modules/rc-select/es/index.js","webpack://lionwheel/./node_modules/antd/es/select/mergedBuiltinPlacements.js","webpack://lionwheel/./node_modules/antd/es/select/style/dropdown.js","webpack://lionwheel/./node_modules/antd/es/select/style/single.js","webpack://lionwheel/./node_modules/antd/es/select/style/token.js","webpack://lionwheel/./node_modules/antd/es/select/style/variants.js","webpack://lionwheel/./node_modules/antd/es/select/style/index.js","webpack://lionwheel/./node_modules/antd/es/select/index.js","webpack://lionwheel/./node_modules/antd/es/select/useShowArrow.js","webpack://lionwheel/./node_modules/antd/es/select/style/multiple.js","webpack://lionwheel/./node_modules/antd/es/select/useIcons.js","webpack://lionwheel/./node_modules/antd/es/style/motion/move.js","webpack://lionwheel/./node_modules/antd/es/style/motion/slide.js","webpack://lionwheel/./node_modules/@ant-design/icons-svg/es/asn/CheckOutlined.js","webpack://lionwheel/./node_modules/antd/node_modules/@ant-design/icons/es/icons/CheckOutlined.js","webpack://lionwheel/./node_modules/@ant-design/icons-svg/es/asn/DownOutlined.js","webpack://lionwheel/./node_modules/antd/node_modules/@ant-design/icons/es/icons/DownOutlined.js","webpack://lionwheel/./node_modules/rc-checkbox/es/index.js","webpack://lionwheel/./node_modules/rc-overflow/es/Item.js","webpack://lionwheel/./node_modules/rc-overflow/es/hooks/useEffectState.js","webpack://lionwheel/./node_modules/rc-overflow/es/hooks/channelUpdate.js","webpack://lionwheel/./node_modules/rc-overflow/es/context.js","webpack://lionwheel/./node_modules/rc-overflow/es/RawItem.js","webpack://lionwheel/./node_modules/rc-overflow/es/Overflow.js","webpack://lionwheel/./node_modules/rc-overflow/es/index.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/Filler.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/ScrollBar.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/Item.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/utils/CacheMap.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/hooks/useScrollTo.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/hooks/useDiffItem.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/utils/algorithmUtil.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/utils/isFirefox.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/hooks/useOriginScroll.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/hooks/useFrameWheel.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/utils/scrollbarUtil.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/List.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/hooks/useHeights.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/hooks/useGetSize.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/hooks/useChildren.js","webpack://lionwheel/./node_modules/rc-virtual-list/es/index.js"],"sourcesContent":["import React from 'react';\nconst GroupContext = /*#__PURE__*/React.createContext(null);\nexport default GroupContext;","\"use client\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport RcCheckbox from 'rc-checkbox';\nimport { devUseWarning } from '../_util/warning';\nimport Wave from '../_util/wave';\nimport { TARGET_CLS } from '../_util/wave/interface';\nimport { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport useCSSVarCls from '../config-provider/hooks/useCSSVarCls';\nimport { FormItemInputContext } from '../form/context';\nimport GroupContext from './GroupContext';\nimport useStyle from './style';\nconst InternalCheckbox = (props, ref) => {\n var _a;\n const {\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n children,\n indeterminate = false,\n style,\n onMouseEnter,\n onMouseLeave,\n skipGroup = false,\n disabled\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"className\", \"rootClassName\", \"children\", \"indeterminate\", \"style\", \"onMouseEnter\", \"onMouseLeave\", \"skipGroup\", \"disabled\"]);\n const {\n getPrefixCls,\n direction,\n checkbox\n } = React.useContext(ConfigContext);\n const checkboxGroup = React.useContext(GroupContext);\n const {\n isFormItemInput\n } = React.useContext(FormItemInputContext);\n const contextDisabled = React.useContext(DisabledContext);\n const mergedDisabled = (_a = (checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.disabled) || disabled) !== null && _a !== void 0 ? _a : contextDisabled;\n const prevValue = React.useRef(restProps.value);\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Checkbox');\n process.env.NODE_ENV !== \"production\" ? warning('checked' in restProps || !!checkboxGroup || !('value' in restProps), 'usage', '`value` is not a valid prop, do you mean `checked`?') : void 0;\n }\n React.useEffect(() => {\n checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.registerValue(restProps.value);\n }, []);\n React.useEffect(() => {\n if (skipGroup) {\n return;\n }\n if (restProps.value !== prevValue.current) {\n checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.cancelValue(prevValue.current);\n checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.registerValue(restProps.value);\n prevValue.current = restProps.value;\n }\n return () => checkboxGroup === null || checkboxGroup === void 0 ? void 0 : checkboxGroup.cancelValue(restProps.value);\n }, [restProps.value]);\n const prefixCls = getPrefixCls('checkbox', customizePrefixCls);\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n const checkboxProps = Object.assign({}, restProps);\n if (checkboxGroup && !skipGroup) {\n checkboxProps.onChange = function () {\n if (restProps.onChange) {\n restProps.onChange.apply(restProps, arguments);\n }\n if (checkboxGroup.toggleOption) {\n checkboxGroup.toggleOption({\n label: children,\n value: restProps.value\n });\n }\n };\n checkboxProps.name = checkboxGroup.name;\n checkboxProps.checked = checkboxGroup.value.includes(restProps.value);\n }\n const classString = classNames(`${prefixCls}-wrapper`, {\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-wrapper-checked`]: checkboxProps.checked,\n [`${prefixCls}-wrapper-disabled`]: mergedDisabled,\n [`${prefixCls}-wrapper-in-form-item`]: isFormItemInput\n }, checkbox === null || checkbox === void 0 ? void 0 : checkbox.className, className, rootClassName, cssVarCls, rootCls, hashId);\n const checkboxClass = classNames({\n [`${prefixCls}-indeterminate`]: indeterminate\n }, TARGET_CLS, hashId);\n const ariaChecked = indeterminate ? 'mixed' : undefined;\n return wrapCSSVar( /*#__PURE__*/React.createElement(Wave, {\n component: \"Checkbox\",\n disabled: mergedDisabled\n }, /*#__PURE__*/React.createElement(\"label\", {\n className: classString,\n style: Object.assign(Object.assign({}, checkbox === null || checkbox === void 0 ? void 0 : checkbox.style), style),\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave\n }, /*#__PURE__*/React.createElement(RcCheckbox, Object.assign({\n \"aria-checked\": ariaChecked\n }, checkboxProps, {\n prefixCls: prefixCls,\n className: checkboxClass,\n disabled: mergedDisabled,\n ref: ref\n })), children !== undefined && /*#__PURE__*/React.createElement(\"span\", null, children))));\n};\nconst Checkbox = /*#__PURE__*/React.forwardRef(InternalCheckbox);\nif (process.env.NODE_ENV !== 'production') {\n Checkbox.displayName = 'Checkbox';\n}\nexport default Checkbox;","\"use client\";\n\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport { ConfigContext } from '../config-provider';\nimport useCSSVarCls from '../config-provider/hooks/useCSSVarCls';\nimport Checkbox from './Checkbox';\nimport GroupContext from './GroupContext';\nimport useStyle from './style';\nconst CheckboxGroup = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n defaultValue,\n children,\n options = [],\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n style,\n onChange\n } = props,\n restProps = __rest(props, [\"defaultValue\", \"children\", \"options\", \"prefixCls\", \"className\", \"rootClassName\", \"style\", \"onChange\"]);\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const [value, setValue] = React.useState(restProps.value || defaultValue || []);\n const [registeredValues, setRegisteredValues] = React.useState([]);\n React.useEffect(() => {\n if ('value' in restProps) {\n setValue(restProps.value || []);\n }\n }, [restProps.value]);\n const memoOptions = React.useMemo(() => options.map(option => {\n if (typeof option === 'string' || typeof option === 'number') {\n return {\n label: option,\n value: option\n };\n }\n return option;\n }), [options]);\n const cancelValue = val => {\n setRegisteredValues(prevValues => prevValues.filter(v => v !== val));\n };\n const registerValue = val => {\n setRegisteredValues(prevValues => [].concat(_toConsumableArray(prevValues), [val]));\n };\n const toggleOption = option => {\n const optionIndex = value.indexOf(option.value);\n const newValue = _toConsumableArray(value);\n if (optionIndex === -1) {\n newValue.push(option.value);\n } else {\n newValue.splice(optionIndex, 1);\n }\n if (!('value' in restProps)) {\n setValue(newValue);\n }\n onChange === null || onChange === void 0 ? void 0 : onChange(newValue.filter(val => registeredValues.includes(val)).sort((a, b) => {\n const indexA = memoOptions.findIndex(opt => opt.value === a);\n const indexB = memoOptions.findIndex(opt => opt.value === b);\n return indexA - indexB;\n }));\n };\n const prefixCls = getPrefixCls('checkbox', customizePrefixCls);\n const groupPrefixCls = `${prefixCls}-group`;\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n const domProps = omit(restProps, ['value', 'disabled']);\n const childrenNode = options.length ? memoOptions.map(option => ( /*#__PURE__*/React.createElement(Checkbox, {\n prefixCls: prefixCls,\n key: option.value.toString(),\n disabled: 'disabled' in option ? option.disabled : restProps.disabled,\n value: option.value,\n checked: value.includes(option.value),\n onChange: option.onChange,\n className: `${groupPrefixCls}-item`,\n style: option.style,\n title: option.title,\n id: option.id,\n required: option.required\n }, option.label))) : children;\n const context = {\n toggleOption,\n value,\n disabled: restProps.disabled,\n name: restProps.name,\n // https://github.com/ant-design/ant-design/issues/16376\n registerValue,\n cancelValue\n };\n const classString = classNames(groupPrefixCls, {\n [`${groupPrefixCls}-rtl`]: direction === 'rtl'\n }, className, rootClassName, cssVarCls, rootCls, hashId);\n return wrapCSSVar( /*#__PURE__*/React.createElement(\"div\", Object.assign({\n className: classString,\n style: style\n }, domProps, {\n ref: ref\n }), /*#__PURE__*/React.createElement(GroupContext.Provider, {\n value: context\n }, childrenNode)));\n});\nexport { GroupContext };\nexport default CheckboxGroup;","\"use client\";\n\nimport InternalCheckbox from './Checkbox';\nimport Group from './Group';\nconst Checkbox = InternalCheckbox;\nCheckbox.Group = Group;\nCheckbox.__ANT_CHECKBOX = true;\nif (process.env.NODE_ENV !== 'production') {\n Checkbox.displayName = 'Checkbox';\n}\nexport default Checkbox;","import { unit } from '@ant-design/cssinjs';\nimport { genFocusOutline, resetComponent } from '../../style';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\n// ============================== Styles ==============================\nexport const genCheckboxStyle = token => {\n const {\n checkboxCls\n } = token;\n const wrapperCls = `${checkboxCls}-wrapper`;\n return [\n // ===================== Basic =====================\n {\n // Group\n [`${checkboxCls}-group`]: Object.assign(Object.assign({}, resetComponent(token)), {\n display: 'inline-flex',\n flexWrap: 'wrap',\n columnGap: token.marginXS,\n // Group > Grid\n [`> ${token.antCls}-row`]: {\n flex: 1\n }\n }),\n // Wrapper\n [wrapperCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n display: 'inline-flex',\n alignItems: 'baseline',\n cursor: 'pointer',\n // Fix checkbox & radio in flex align #30260\n '&:after': {\n display: 'inline-block',\n width: 0,\n overflow: 'hidden',\n content: \"'\\\\a0'\"\n },\n // Checkbox near checkbox\n [`& + ${wrapperCls}`]: {\n marginInlineStart: 0\n },\n [`&${wrapperCls}-in-form-item`]: {\n 'input[type=\"checkbox\"]': {\n width: 14,\n // FIXME: magic\n height: 14 // FIXME: magic\n }\n }\n }),\n // Wrapper > Checkbox\n [checkboxCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'relative',\n whiteSpace: 'nowrap',\n lineHeight: 1,\n cursor: 'pointer',\n borderRadius: token.borderRadiusSM,\n // To make alignment right when `controlHeight` is changed\n // Ref: https://github.com/ant-design/ant-design/issues/41564\n alignSelf: 'center',\n // Wrapper > Checkbox > input\n [`${checkboxCls}-input`]: {\n position: 'absolute',\n // Since baseline align will get additional space offset,\n // we need to move input to top to make it align with text.\n // Ref: https://github.com/ant-design/ant-design/issues/38926#issuecomment-1486137799\n inset: 0,\n zIndex: 1,\n cursor: 'pointer',\n opacity: 0,\n margin: 0,\n [`&:focus-visible + ${checkboxCls}-inner`]: Object.assign({}, genFocusOutline(token))\n },\n // Wrapper > Checkbox > inner\n [`${checkboxCls}-inner`]: {\n boxSizing: 'border-box',\n display: 'block',\n width: token.checkboxSize,\n height: token.checkboxSize,\n direction: 'ltr',\n backgroundColor: token.colorBgContainer,\n border: `${unit(token.lineWidth)} ${token.lineType} ${token.colorBorder}`,\n borderRadius: token.borderRadiusSM,\n borderCollapse: 'separate',\n transition: `all ${token.motionDurationSlow}`,\n '&:after': {\n boxSizing: 'border-box',\n position: 'absolute',\n top: '50%',\n insetInlineStart: '25%',\n display: 'table',\n width: token.calc(token.checkboxSize).div(14).mul(5).equal(),\n height: token.calc(token.checkboxSize).div(14).mul(8).equal(),\n border: `${unit(token.lineWidthBold)} solid ${token.colorWhite}`,\n borderTop: 0,\n borderInlineStart: 0,\n transform: 'rotate(45deg) scale(0) translate(-50%,-50%)',\n opacity: 0,\n content: '\"\"',\n transition: `all ${token.motionDurationFast} ${token.motionEaseInBack}, opacity ${token.motionDurationFast}`\n }\n },\n // Wrapper > Checkbox + Text\n '& + span': {\n paddingInlineStart: token.paddingXS,\n paddingInlineEnd: token.paddingXS\n }\n })\n },\n // ===================== Hover =====================\n {\n // Wrapper & Wrapper > Checkbox\n [`\n ${wrapperCls}:not(${wrapperCls}-disabled),\n ${checkboxCls}:not(${checkboxCls}-disabled)\n `]: {\n [`&:hover ${checkboxCls}-inner`]: {\n borderColor: token.colorPrimary\n }\n },\n [`${wrapperCls}:not(${wrapperCls}-disabled)`]: {\n [`&:hover ${checkboxCls}-checked:not(${checkboxCls}-disabled) ${checkboxCls}-inner`]: {\n backgroundColor: token.colorPrimaryHover,\n borderColor: 'transparent'\n },\n [`&:hover ${checkboxCls}-checked:not(${checkboxCls}-disabled):after`]: {\n borderColor: token.colorPrimaryHover\n }\n }\n },\n // ==================== Checked ====================\n {\n // Wrapper > Checkbox\n [`${checkboxCls}-checked`]: {\n [`${checkboxCls}-inner`]: {\n backgroundColor: token.colorPrimary,\n borderColor: token.colorPrimary,\n '&:after': {\n opacity: 1,\n transform: 'rotate(45deg) scale(1) translate(-50%,-50%)',\n transition: `all ${token.motionDurationMid} ${token.motionEaseOutBack} ${token.motionDurationFast}`\n }\n }\n },\n [`\n ${wrapperCls}-checked:not(${wrapperCls}-disabled),\n ${checkboxCls}-checked:not(${checkboxCls}-disabled)\n `]: {\n [`&:hover ${checkboxCls}-inner`]: {\n backgroundColor: token.colorPrimaryHover,\n borderColor: 'transparent'\n }\n }\n },\n // ================= Indeterminate =================\n {\n [checkboxCls]: {\n '&-indeterminate': {\n // Wrapper > Checkbox > inner\n [`${checkboxCls}-inner`]: {\n backgroundColor: `${token.colorBgContainer} !important`,\n borderColor: `${token.colorBorder} !important`,\n '&:after': {\n top: '50%',\n insetInlineStart: '50%',\n width: token.calc(token.fontSizeLG).div(2).equal(),\n height: token.calc(token.fontSizeLG).div(2).equal(),\n backgroundColor: token.colorPrimary,\n border: 0,\n transform: 'translate(-50%, -50%) scale(1)',\n opacity: 1,\n content: '\"\"'\n }\n },\n // https://github.com/ant-design/ant-design/issues/50074\n [`&:hover ${checkboxCls}-inner`]: {\n backgroundColor: `${token.colorBgContainer} !important`,\n borderColor: `${token.colorPrimary} !important`\n }\n }\n }\n },\n // ==================== Disable ====================\n {\n // Wrapper\n [`${wrapperCls}-disabled`]: {\n cursor: 'not-allowed'\n },\n // Wrapper > Checkbox\n [`${checkboxCls}-disabled`]: {\n // Wrapper > Checkbox > input\n [`&, ${checkboxCls}-input`]: {\n cursor: 'not-allowed',\n // Disabled for native input to enable Tooltip event handler\n // ref: https://github.com/ant-design/ant-design/issues/39822#issuecomment-1365075901\n pointerEvents: 'none'\n },\n // Wrapper > Checkbox > inner\n [`${checkboxCls}-inner`]: {\n background: token.colorBgContainerDisabled,\n borderColor: token.colorBorder,\n '&:after': {\n borderColor: token.colorTextDisabled\n }\n },\n '&:after': {\n display: 'none'\n },\n '& + span': {\n color: token.colorTextDisabled\n },\n [`&${checkboxCls}-indeterminate ${checkboxCls}-inner::after`]: {\n background: token.colorTextDisabled\n }\n }\n }];\n};\n// ============================== Export ==============================\nexport function getStyle(prefixCls, token) {\n const checkboxToken = mergeToken(token, {\n checkboxCls: `.${prefixCls}`,\n checkboxSize: token.controlInteractiveSize\n });\n return [genCheckboxStyle(checkboxToken)];\n}\nexport default genStyleHooks('Checkbox', (token, _ref) => {\n let {\n prefixCls\n } = _ref;\n return [getStyle(prefixCls, token)];\n});","\"use client\";\n\nimport React, { useContext } from 'react';\nimport { ConfigContext } from '.';\nimport Empty from '../empty';\nconst DefaultRenderEmpty = props => {\n const {\n componentName\n } = props;\n const {\n getPrefixCls\n } = useContext(ConfigContext);\n const prefix = getPrefixCls('empty');\n switch (componentName) {\n case 'Table':\n case 'List':\n return /*#__PURE__*/React.createElement(Empty, {\n image: Empty.PRESENTED_IMAGE_SIMPLE\n });\n case 'Select':\n case 'TreeSelect':\n case 'Cascader':\n case 'Transfer':\n case 'Mentions':\n return /*#__PURE__*/React.createElement(Empty, {\n image: Empty.PRESENTED_IMAGE_SIMPLE,\n className: `${prefix}-small`\n });\n /**\n * This type of component should satisfy the nullish coalescing operator(??) on the left-hand side.\n * to let the component itself implement the logic.\n * For example `Table.filter`.\n */\n case 'Table.filter':\n // why `null`? legacy react16 node type `undefined` is not allowed.\n return null;\n default:\n // Should never hit if we take all the component into consider.\n return /*#__PURE__*/React.createElement(Empty, null);\n }\n};\nexport default DefaultRenderEmpty;","\"use client\";\n\nimport * as React from 'react';\nimport { TinyColor } from '@ctrl/tinycolor';\nimport { useToken } from '../theme/internal';\nconst Empty = () => {\n const [, token] = useToken();\n const bgColor = new TinyColor(token.colorBgBase);\n // Dark Theme need more dark of this\n const themeStyle = bgColor.toHsl().l < 0.5 ? {\n opacity: 0.65\n } : {};\n return /*#__PURE__*/React.createElement(\"svg\", {\n style: themeStyle,\n width: \"184\",\n height: \"152\",\n viewBox: \"0 0 184 152\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/React.createElement(\"title\", null, \"empty image\"), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(24 31.67)\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n fillOpacity: \".8\",\n fill: \"#F5F5F7\",\n cx: \"67.797\",\n cy: \"106.89\",\n rx: \"67.797\",\n ry: \"12.668\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z\",\n fill: \"#AEB8C2\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z\",\n fill: \"url(#linearGradient-1)\",\n transform: \"translate(13.56)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M33.83 0h67.933a4 4 0 0 1 4 4v93.344a4 4 0 0 1-4 4H33.83a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4z\",\n fill: \"#F5F5F7\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M42.678 9.953h50.237a2 2 0 0 1 2 2V36.91a2 2 0 0 1-2 2H42.678a2 2 0 0 1-2-2V11.953a2 2 0 0 1 2-2zM42.94 49.767h49.713a2.262 2.262 0 1 1 0 4.524H42.94a2.262 2.262 0 0 1 0-4.524zM42.94 61.53h49.713a2.262 2.262 0 1 1 0 4.525H42.94a2.262 2.262 0 0 1 0-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 0 1-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393V75.1c0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z\",\n fill: \"#DCE0E6\"\n })), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M149.121 33.292l-6.83 2.65a1 1 0 0 1-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z\",\n fill: \"#DCE0E6\"\n }), /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(149.65 15.383)\",\n fill: \"#FFF\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n cx: \"20.654\",\n cy: \"3.167\",\n rx: \"2.849\",\n ry: \"2.815\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z\"\n }))));\n};\nif (process.env.NODE_ENV !== 'production') {\n Empty.displayName = 'EmptyImage';\n}\nexport default Empty;","\"use client\";\n\nimport * as React from 'react';\nimport { useMemo } from 'react';\nimport { TinyColor } from '@ctrl/tinycolor';\nimport { useToken } from '../theme/internal';\nconst Simple = () => {\n const [, token] = useToken();\n const {\n colorFill,\n colorFillTertiary,\n colorFillQuaternary,\n colorBgContainer\n } = token;\n const {\n borderColor,\n shadowColor,\n contentColor\n } = useMemo(() => ({\n borderColor: new TinyColor(colorFill).onBackground(colorBgContainer).toHexShortString(),\n shadowColor: new TinyColor(colorFillTertiary).onBackground(colorBgContainer).toHexShortString(),\n contentColor: new TinyColor(colorFillQuaternary).onBackground(colorBgContainer).toHexShortString()\n }), [colorFill, colorFillTertiary, colorFillQuaternary, colorBgContainer]);\n return /*#__PURE__*/React.createElement(\"svg\", {\n width: \"64\",\n height: \"41\",\n viewBox: \"0 0 64 41\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/React.createElement(\"title\", null, \"Simple Empty\"), /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(0 1)\",\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n fill: shadowColor,\n cx: \"32\",\n cy: \"33\",\n rx: \"32\",\n ry: \"7\"\n }), /*#__PURE__*/React.createElement(\"g\", {\n fillRule: \"nonzero\",\n stroke: borderColor\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\",\n fill: contentColor\n }))));\n};\nif (process.env.NODE_ENV !== 'production') {\n Simple.displayName = 'SimpleImage';\n}\nexport default Simple;","import { genStyleHooks, mergeToken } from '../../theme/internal';\n// ============================== Shared ==============================\nconst genSharedEmptyStyle = token => {\n const {\n componentCls,\n margin,\n marginXS,\n marginXL,\n fontSize,\n lineHeight\n } = token;\n return {\n [componentCls]: {\n marginInline: marginXS,\n fontSize,\n lineHeight,\n textAlign: 'center',\n // 原来 &-image 没有父子结构,现在为了外层承担我们的 hashId,改成父子结构\n [`${componentCls}-image`]: {\n height: token.emptyImgHeight,\n marginBottom: marginXS,\n opacity: token.opacityImage,\n img: {\n height: '100%'\n },\n svg: {\n maxWidth: '100%',\n height: '100%',\n margin: 'auto'\n }\n },\n [`${componentCls}-description`]: {\n color: token.colorTextDescription\n },\n // 原来 &-footer 没有父子结构,现在为了外层承担我们的 hashId,改成父子结构\n [`${componentCls}-footer`]: {\n marginTop: margin\n },\n '&-normal': {\n marginBlock: marginXL,\n color: token.colorTextDescription,\n [`${componentCls}-description`]: {\n color: token.colorTextDescription\n },\n [`${componentCls}-image`]: {\n height: token.emptyImgHeightMD\n }\n },\n '&-small': {\n marginBlock: marginXS,\n color: token.colorTextDescription,\n [`${componentCls}-image`]: {\n height: token.emptyImgHeightSM\n }\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genStyleHooks('Empty', token => {\n const {\n componentCls,\n controlHeightLG,\n calc\n } = token;\n const emptyToken = mergeToken(token, {\n emptyImgCls: `${componentCls}-img`,\n emptyImgHeight: calc(controlHeightLG).mul(2.5).equal(),\n emptyImgHeightMD: controlHeightLG,\n emptyImgHeightSM: calc(controlHeightLG).mul(0.875).equal()\n });\n return [genSharedEmptyStyle(emptyToken)];\n});","\"use client\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { ConfigContext } from '../config-provider';\nimport { useLocale } from '../locale';\nimport DefaultEmptyImg from './empty';\nimport SimpleEmptyImg from './simple';\nimport useStyle from './style';\nconst defaultEmptyImg = /*#__PURE__*/React.createElement(DefaultEmptyImg, null);\nconst simpleEmptyImg = /*#__PURE__*/React.createElement(SimpleEmptyImg, null);\nconst Empty = _a => {\n var {\n className,\n rootClassName,\n prefixCls: customizePrefixCls,\n image = defaultEmptyImg,\n description,\n children,\n imageStyle,\n style\n } = _a,\n restProps = __rest(_a, [\"className\", \"rootClassName\", \"prefixCls\", \"image\", \"description\", \"children\", \"imageStyle\", \"style\"]);\n const {\n getPrefixCls,\n direction,\n empty\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('empty', customizePrefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n const [locale] = useLocale('Empty');\n const des = typeof description !== 'undefined' ? description : locale === null || locale === void 0 ? void 0 : locale.description;\n const alt = typeof des === 'string' ? des : 'empty';\n let imageNode = null;\n if (typeof image === 'string') {\n imageNode = /*#__PURE__*/React.createElement(\"img\", {\n alt: alt,\n src: image\n });\n } else {\n imageNode = image;\n }\n return wrapCSSVar( /*#__PURE__*/React.createElement(\"div\", Object.assign({\n className: classNames(hashId, cssVarCls, prefixCls, empty === null || empty === void 0 ? void 0 : empty.className, {\n [`${prefixCls}-normal`]: image === simpleEmptyImg,\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, className, rootClassName),\n style: Object.assign(Object.assign({}, empty === null || empty === void 0 ? void 0 : empty.style), style)\n }, restProps), /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-image`,\n style: imageStyle\n }, imageNode), des && /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-description`\n }, des), children && /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-footer`\n }, children)));\n};\nEmpty.PRESENTED_IMAGE_DEFAULT = defaultEmptyImg;\nEmpty.PRESENTED_IMAGE_SIMPLE = simpleEmptyImg;\nif (process.env.NODE_ENV !== 'production') {\n Empty.displayName = 'Empty';\n}\nexport default Empty;","import * as React from 'react';\nimport classNames from 'classnames';\nvar TransBtn = function TransBtn(props) {\n var className = props.className,\n customizeIcon = props.customizeIcon,\n customizeIconProps = props.customizeIconProps,\n children = props.children,\n _onMouseDown = props.onMouseDown,\n onClick = props.onClick;\n var icon = typeof customizeIcon === 'function' ? customizeIcon(customizeIconProps) : customizeIcon;\n return /*#__PURE__*/React.createElement(\"span\", {\n className: className,\n onMouseDown: function onMouseDown(event) {\n event.preventDefault();\n _onMouseDown === null || _onMouseDown === void 0 || _onMouseDown(event);\n },\n style: {\n userSelect: 'none',\n WebkitUserSelect: 'none'\n },\n unselectable: \"on\",\n onClick: onClick,\n \"aria-hidden\": true\n }, icon !== undefined ? icon : /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(className.split(/\\s+/).map(function (cls) {\n return \"\".concat(cls, \"-icon\");\n }))\n }, children));\n};\nexport default TransBtn;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport TransBtn from \"../TransBtn\";\nimport React from 'react';\nexport var useAllowClear = function useAllowClear(prefixCls, onClearMouseDown, displayValues, allowClear, clearIcon) {\n var disabled = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;\n var mergedSearchValue = arguments.length > 6 ? arguments[6] : undefined;\n var mode = arguments.length > 7 ? arguments[7] : undefined;\n var mergedClearIcon = React.useMemo(function () {\n if (_typeof(allowClear) === 'object') {\n return allowClear.clearIcon;\n }\n if (clearIcon) {\n return clearIcon;\n }\n }, [allowClear, clearIcon]);\n var mergedAllowClear = React.useMemo(function () {\n if (!disabled && !!allowClear && (displayValues.length || mergedSearchValue) && !(mode === 'combobox' && mergedSearchValue === '')) {\n return true;\n }\n return false;\n }, [allowClear, disabled, displayValues.length, mergedSearchValue, mode]);\n return {\n allowClear: mergedAllowClear,\n clearIcon: /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(prefixCls, \"-clear\"),\n onMouseDown: onClearMouseDown,\n customizeIcon: mergedClearIcon\n }, \"\\xD7\")\n };\n};","/**\n * BaseSelect provide some parsed data into context.\n * You can use this hooks to get them.\n */\n\nimport * as React from 'react';\nexport var BaseSelectContext = /*#__PURE__*/React.createContext(null);\nexport default function useBaseProps() {\n return React.useContext(BaseSelectContext);\n}","import * as React from 'react';\n\n/**\n * Locker return cached mark.\n * If set to `true`, will return `true` in a short time even if set `false`.\n * If set to `false` and then set to `true`, will change to `true`.\n * And after time duration, it will back to `null` automatically.\n */\nexport default function useLock() {\n var duration = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 250;\n var lockRef = React.useRef(null);\n var timeoutRef = React.useRef(null);\n\n // Clean up\n React.useEffect(function () {\n return function () {\n window.clearTimeout(timeoutRef.current);\n };\n }, []);\n function doLock(locked) {\n if (locked || lockRef.current === null) {\n lockRef.current = locked;\n }\n window.clearTimeout(timeoutRef.current);\n timeoutRef.current = window.setTimeout(function () {\n lockRef.current = null;\n }, duration);\n }\n return [function () {\n return lockRef.current;\n }, doLock];\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { composeRef } from \"rc-util/es/ref\";\nimport { warning } from \"rc-util/es/warning\";\nvar Input = function Input(props, ref) {\n var _inputNode2;\n var prefixCls = props.prefixCls,\n id = props.id,\n inputElement = props.inputElement,\n disabled = props.disabled,\n tabIndex = props.tabIndex,\n autoFocus = props.autoFocus,\n autoComplete = props.autoComplete,\n editable = props.editable,\n activeDescendantId = props.activeDescendantId,\n value = props.value,\n maxLength = props.maxLength,\n _onKeyDown = props.onKeyDown,\n _onMouseDown = props.onMouseDown,\n _onChange = props.onChange,\n onPaste = props.onPaste,\n _onCompositionStart = props.onCompositionStart,\n _onCompositionEnd = props.onCompositionEnd,\n open = props.open,\n attrs = props.attrs;\n var inputNode = inputElement || /*#__PURE__*/React.createElement(\"input\", null);\n var _inputNode = inputNode,\n originRef = _inputNode.ref,\n originProps = _inputNode.props;\n var onOriginKeyDown = originProps.onKeyDown,\n onOriginChange = originProps.onChange,\n onOriginMouseDown = originProps.onMouseDown,\n onOriginCompositionStart = originProps.onCompositionStart,\n onOriginCompositionEnd = originProps.onCompositionEnd,\n style = originProps.style;\n warning(!('maxLength' in inputNode.props), \"Passing 'maxLength' to input element directly may not work because input in BaseSelect is controlled.\");\n inputNode = /*#__PURE__*/React.cloneElement(inputNode, _objectSpread(_objectSpread(_objectSpread({\n type: 'search'\n }, originProps), {}, {\n // Override over origin props\n id: id,\n ref: composeRef(ref, originRef),\n disabled: disabled,\n tabIndex: tabIndex,\n autoComplete: autoComplete || 'off',\n autoFocus: autoFocus,\n className: classNames(\"\".concat(prefixCls, \"-selection-search-input\"), (_inputNode2 = inputNode) === null || _inputNode2 === void 0 || (_inputNode2 = _inputNode2.props) === null || _inputNode2 === void 0 ? void 0 : _inputNode2.className),\n role: 'combobox',\n 'aria-expanded': open || false,\n 'aria-haspopup': 'listbox',\n 'aria-owns': \"\".concat(id, \"_list\"),\n 'aria-autocomplete': 'list',\n 'aria-controls': \"\".concat(id, \"_list\"),\n 'aria-activedescendant': open ? activeDescendantId : undefined\n }, attrs), {}, {\n value: editable ? value : '',\n maxLength: maxLength,\n readOnly: !editable,\n unselectable: !editable ? 'on' : null,\n style: _objectSpread(_objectSpread({}, style), {}, {\n opacity: editable ? null : 0\n }),\n onKeyDown: function onKeyDown(event) {\n _onKeyDown(event);\n if (onOriginKeyDown) {\n onOriginKeyDown(event);\n }\n },\n onMouseDown: function onMouseDown(event) {\n _onMouseDown(event);\n if (onOriginMouseDown) {\n onOriginMouseDown(event);\n }\n },\n onChange: function onChange(event) {\n _onChange(event);\n if (onOriginChange) {\n onOriginChange(event);\n }\n },\n onCompositionStart: function onCompositionStart(event) {\n _onCompositionStart(event);\n if (onOriginCompositionStart) {\n onOriginCompositionStart(event);\n }\n },\n onCompositionEnd: function onCompositionEnd(event) {\n _onCompositionEnd(event);\n if (onOriginCompositionEnd) {\n onOriginCompositionEnd(event);\n }\n },\n onPaste: onPaste\n }));\n return inputNode;\n};\nvar RefInput = /*#__PURE__*/React.forwardRef(Input);\nif (process.env.NODE_ENV !== 'production') {\n RefInput.displayName = 'Input';\n}\nexport default RefInput;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nexport function toArray(value) {\n if (Array.isArray(value)) {\n return value;\n }\n return value !== undefined ? [value] : [];\n}\nexport var isClient = typeof window !== 'undefined' && window.document && window.document.documentElement;\n\n/** Is client side and not jsdom */\nexport var isBrowserClient = process.env.NODE_ENV !== 'test' && isClient;\nexport function hasValue(value) {\n return value !== undefined && value !== null;\n}\n\n/** combo mode no value judgment function */\nexport function isComboNoValue(value) {\n return !value && value !== 0;\n}\nfunction isTitleType(title) {\n return ['string', 'number'].includes(_typeof(title));\n}\nexport function getTitle(item) {\n var title = undefined;\n if (item) {\n if (isTitleType(item.title)) {\n title = item.title.toString();\n } else if (isTitleType(item.label)) {\n title = item.label.toString();\n }\n }\n return title;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useState } from 'react';\nimport classNames from 'classnames';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport Overflow from 'rc-overflow';\nimport TransBtn from \"../TransBtn\";\nimport Input from \"./Input\";\nimport useLayoutEffect from \"../hooks/useLayoutEffect\";\nimport { getTitle } from \"../utils/commonUtil\";\nfunction itemKey(value) {\n var _value$key;\n return (_value$key = value.key) !== null && _value$key !== void 0 ? _value$key : value.value;\n}\nvar onPreventMouseDown = function onPreventMouseDown(event) {\n event.preventDefault();\n event.stopPropagation();\n};\nvar SelectSelector = function SelectSelector(props) {\n var id = props.id,\n prefixCls = props.prefixCls,\n values = props.values,\n open = props.open,\n searchValue = props.searchValue,\n autoClearSearchValue = props.autoClearSearchValue,\n inputRef = props.inputRef,\n placeholder = props.placeholder,\n disabled = props.disabled,\n mode = props.mode,\n showSearch = props.showSearch,\n autoFocus = props.autoFocus,\n autoComplete = props.autoComplete,\n activeDescendantId = props.activeDescendantId,\n tabIndex = props.tabIndex,\n removeIcon = props.removeIcon,\n maxTagCount = props.maxTagCount,\n maxTagTextLength = props.maxTagTextLength,\n _props$maxTagPlacehol = props.maxTagPlaceholder,\n maxTagPlaceholder = _props$maxTagPlacehol === void 0 ? function (omittedValues) {\n return \"+ \".concat(omittedValues.length, \" ...\");\n } : _props$maxTagPlacehol,\n tagRender = props.tagRender,\n onToggleOpen = props.onToggleOpen,\n onRemove = props.onRemove,\n onInputChange = props.onInputChange,\n onInputPaste = props.onInputPaste,\n onInputKeyDown = props.onInputKeyDown,\n onInputMouseDown = props.onInputMouseDown,\n onInputCompositionStart = props.onInputCompositionStart,\n onInputCompositionEnd = props.onInputCompositionEnd;\n var measureRef = React.useRef(null);\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n inputWidth = _useState2[0],\n setInputWidth = _useState2[1];\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n focused = _useState4[0],\n setFocused = _useState4[1];\n var selectionPrefixCls = \"\".concat(prefixCls, \"-selection\");\n\n // ===================== Search ======================\n var inputValue = open || mode === 'multiple' && autoClearSearchValue === false || mode === 'tags' ? searchValue : '';\n var inputEditable = mode === 'tags' || mode === 'multiple' && autoClearSearchValue === false || showSearch && (open || focused);\n\n // We measure width and set to the input immediately\n useLayoutEffect(function () {\n setInputWidth(measureRef.current.scrollWidth);\n }, [inputValue]);\n\n // ===================== Render ======================\n // >>> Render Selector Node. Includes Item & Rest\n var defaultRenderSelector = function defaultRenderSelector(item, content, itemDisabled, closable, onClose) {\n return /*#__PURE__*/React.createElement(\"span\", {\n title: getTitle(item),\n className: classNames(\"\".concat(selectionPrefixCls, \"-item\"), _defineProperty({}, \"\".concat(selectionPrefixCls, \"-item-disabled\"), itemDisabled))\n }, /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(selectionPrefixCls, \"-item-content\")\n }, content), closable && /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(selectionPrefixCls, \"-item-remove\"),\n onMouseDown: onPreventMouseDown,\n onClick: onClose,\n customizeIcon: removeIcon\n }, \"\\xD7\"));\n };\n var customizeRenderSelector = function customizeRenderSelector(value, content, itemDisabled, closable, onClose, isMaxTag) {\n var onMouseDown = function onMouseDown(e) {\n onPreventMouseDown(e);\n onToggleOpen(!open);\n };\n return /*#__PURE__*/React.createElement(\"span\", {\n onMouseDown: onMouseDown\n }, tagRender({\n label: content,\n value: value,\n disabled: itemDisabled,\n closable: closable,\n onClose: onClose,\n isMaxTag: !!isMaxTag\n }));\n };\n var renderItem = function renderItem(valueItem) {\n var itemDisabled = valueItem.disabled,\n label = valueItem.label,\n value = valueItem.value;\n var closable = !disabled && !itemDisabled;\n var displayLabel = label;\n if (typeof maxTagTextLength === 'number') {\n if (typeof label === 'string' || typeof label === 'number') {\n var strLabel = String(displayLabel);\n if (strLabel.length > maxTagTextLength) {\n displayLabel = \"\".concat(strLabel.slice(0, maxTagTextLength), \"...\");\n }\n }\n }\n var onClose = function onClose(event) {\n if (event) {\n event.stopPropagation();\n }\n onRemove(valueItem);\n };\n return typeof tagRender === 'function' ? customizeRenderSelector(value, displayLabel, itemDisabled, closable, onClose) : defaultRenderSelector(valueItem, displayLabel, itemDisabled, closable, onClose);\n };\n var renderRest = function renderRest(omittedValues) {\n var content = typeof maxTagPlaceholder === 'function' ? maxTagPlaceholder(omittedValues) : maxTagPlaceholder;\n return typeof tagRender === 'function' ? customizeRenderSelector(undefined, content, false, false, undefined, true) : defaultRenderSelector({\n title: content\n }, content, false);\n };\n\n // >>> Input Node\n var inputNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(selectionPrefixCls, \"-search\"),\n style: {\n width: inputWidth\n },\n onFocus: function onFocus() {\n setFocused(true);\n },\n onBlur: function onBlur() {\n setFocused(false);\n }\n }, /*#__PURE__*/React.createElement(Input, {\n ref: inputRef,\n open: open,\n prefixCls: prefixCls,\n id: id,\n inputElement: null,\n disabled: disabled,\n autoFocus: autoFocus,\n autoComplete: autoComplete,\n editable: inputEditable,\n activeDescendantId: activeDescendantId,\n value: inputValue,\n onKeyDown: onInputKeyDown,\n onMouseDown: onInputMouseDown,\n onChange: onInputChange,\n onPaste: onInputPaste,\n onCompositionStart: onInputCompositionStart,\n onCompositionEnd: onInputCompositionEnd,\n tabIndex: tabIndex,\n attrs: pickAttrs(props, true)\n }), /*#__PURE__*/React.createElement(\"span\", {\n ref: measureRef,\n className: \"\".concat(selectionPrefixCls, \"-search-mirror\"),\n \"aria-hidden\": true\n }, inputValue, \"\\xA0\"));\n\n // >>> Selections\n var selectionNode = /*#__PURE__*/React.createElement(Overflow, {\n prefixCls: \"\".concat(selectionPrefixCls, \"-overflow\"),\n data: values,\n renderItem: renderItem,\n renderRest: renderRest,\n suffix: inputNode,\n itemKey: itemKey,\n maxCount: maxTagCount\n });\n return /*#__PURE__*/React.createElement(React.Fragment, null, selectionNode, !values.length && !inputValue && /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(selectionPrefixCls, \"-placeholder\")\n }, placeholder));\n};\nexport default SelectSelector;","/* eslint-disable react-hooks/rules-of-hooks */\nimport * as React from 'react';\nimport { isBrowserClient } from \"../utils/commonUtil\";\n\n/**\n * Wrap `React.useLayoutEffect` which will not throw warning message in test env\n */\nexport default function useLayoutEffect(effect, deps) {\n // Never happen in test env\n if (isBrowserClient) {\n /* istanbul ignore next */\n React.useLayoutEffect(effect, deps);\n } else {\n React.useEffect(effect, deps);\n }\n}\n/* eslint-enable */","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport Input from \"./Input\";\nimport { getTitle } from \"../utils/commonUtil\";\nvar SingleSelector = function SingleSelector(props) {\n var inputElement = props.inputElement,\n prefixCls = props.prefixCls,\n id = props.id,\n inputRef = props.inputRef,\n disabled = props.disabled,\n autoFocus = props.autoFocus,\n autoComplete = props.autoComplete,\n activeDescendantId = props.activeDescendantId,\n mode = props.mode,\n open = props.open,\n values = props.values,\n placeholder = props.placeholder,\n tabIndex = props.tabIndex,\n showSearch = props.showSearch,\n searchValue = props.searchValue,\n activeValue = props.activeValue,\n maxLength = props.maxLength,\n onInputKeyDown = props.onInputKeyDown,\n onInputMouseDown = props.onInputMouseDown,\n onInputChange = props.onInputChange,\n onInputPaste = props.onInputPaste,\n onInputCompositionStart = props.onInputCompositionStart,\n onInputCompositionEnd = props.onInputCompositionEnd,\n title = props.title;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n inputChanged = _React$useState2[0],\n setInputChanged = _React$useState2[1];\n var combobox = mode === 'combobox';\n var inputEditable = combobox || showSearch;\n var item = values[0];\n var inputValue = searchValue || '';\n if (combobox && activeValue && !inputChanged) {\n inputValue = activeValue;\n }\n React.useEffect(function () {\n if (combobox) {\n setInputChanged(false);\n }\n }, [combobox, activeValue]);\n\n // Not show text when closed expect combobox mode\n var hasTextInput = mode !== 'combobox' && !open && !showSearch ? false : !!inputValue;\n\n // Get title of selection item\n var selectionTitle = title === undefined ? getTitle(item) : title;\n var placeholderNode = React.useMemo(function () {\n if (item) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-placeholder\"),\n style: hasTextInput ? {\n visibility: 'hidden'\n } : undefined\n }, placeholder);\n }, [item, hasTextInput, placeholder, prefixCls]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-search\")\n }, /*#__PURE__*/React.createElement(Input, {\n ref: inputRef,\n prefixCls: prefixCls,\n id: id,\n open: open,\n inputElement: inputElement,\n disabled: disabled,\n autoFocus: autoFocus,\n autoComplete: autoComplete,\n editable: inputEditable,\n activeDescendantId: activeDescendantId,\n value: inputValue,\n onKeyDown: onInputKeyDown,\n onMouseDown: onInputMouseDown,\n onChange: function onChange(e) {\n setInputChanged(true);\n onInputChange(e);\n },\n onPaste: onInputPaste,\n onCompositionStart: onInputCompositionStart,\n onCompositionEnd: onInputCompositionEnd,\n tabIndex: tabIndex,\n attrs: pickAttrs(props, true),\n maxLength: combobox ? maxLength : undefined\n })), !combobox && item ? /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-item\"),\n title: selectionTitle\n // 当 Select 已经选中选项时,还需 selection 隐藏但留在原地占位\n // https://github.com/ant-design/ant-design/issues/27688\n // https://github.com/ant-design/ant-design/issues/41530\n ,\n style: hasTextInput ? {\n visibility: 'hidden'\n } : undefined\n }, item.label) : null, placeholderNode);\n};\nexport default SingleSelector;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\n/**\n * Cursor rule:\n * 1. Only `showSearch` enabled\n * 2. Only `open` is `true`\n * 3. When typing, set `open` to `true` which hit rule of 2\n *\n * Accessibility:\n * - https://www.w3.org/TR/wai-aria-practices/examples/combobox/aria1.1pattern/listbox-combo.html\n */\n\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport useLock from \"../hooks/useLock\";\nimport { isValidateOpenKey } from \"../utils/keyUtil\";\nimport MultipleSelector from \"./MultipleSelector\";\nimport SingleSelector from \"./SingleSelector\";\nvar Selector = function Selector(props, ref) {\n var inputRef = useRef(null);\n var compositionStatusRef = useRef(false);\n var prefixCls = props.prefixCls,\n open = props.open,\n mode = props.mode,\n showSearch = props.showSearch,\n tokenWithEnter = props.tokenWithEnter,\n disabled = props.disabled,\n autoClearSearchValue = props.autoClearSearchValue,\n onSearch = props.onSearch,\n onSearchSubmit = props.onSearchSubmit,\n onToggleOpen = props.onToggleOpen,\n onInputKeyDown = props.onInputKeyDown,\n domRef = props.domRef;\n\n // ======================= Ref =======================\n React.useImperativeHandle(ref, function () {\n return {\n focus: function focus(options) {\n inputRef.current.focus(options);\n },\n blur: function blur() {\n inputRef.current.blur();\n }\n };\n });\n\n // ====================== Input ======================\n var _useLock = useLock(0),\n _useLock2 = _slicedToArray(_useLock, 2),\n getInputMouseDown = _useLock2[0],\n setInputMouseDown = _useLock2[1];\n var onInternalInputKeyDown = function onInternalInputKeyDown(event) {\n var which = event.which;\n if (which === KeyCode.UP || which === KeyCode.DOWN) {\n event.preventDefault();\n }\n if (onInputKeyDown) {\n onInputKeyDown(event);\n }\n if (which === KeyCode.ENTER && mode === 'tags' && !compositionStatusRef.current && !open) {\n // When menu isn't open, OptionList won't trigger a value change\n // So when enter is pressed, the tag's input value should be emitted here to let selector know\n onSearchSubmit === null || onSearchSubmit === void 0 || onSearchSubmit(event.target.value);\n }\n if (isValidateOpenKey(which)) {\n onToggleOpen(true);\n }\n };\n\n /**\n * We can not use `findDOMNode` sine it will get warning,\n * have to use timer to check if is input element.\n */\n var onInternalInputMouseDown = function onInternalInputMouseDown() {\n setInputMouseDown(true);\n };\n\n // When paste come, ignore next onChange\n var pastedTextRef = useRef(null);\n var triggerOnSearch = function triggerOnSearch(value) {\n if (onSearch(value, true, compositionStatusRef.current) !== false) {\n onToggleOpen(true);\n }\n };\n var onInputCompositionStart = function onInputCompositionStart() {\n compositionStatusRef.current = true;\n };\n var onInputCompositionEnd = function onInputCompositionEnd(e) {\n compositionStatusRef.current = false;\n\n // Trigger search again to support `tokenSeparators` with typewriting\n if (mode !== 'combobox') {\n triggerOnSearch(e.target.value);\n }\n };\n var onInputChange = function onInputChange(event) {\n var value = event.target.value;\n\n // Pasted text should replace back to origin content\n if (tokenWithEnter && pastedTextRef.current && /[\\r\\n]/.test(pastedTextRef.current)) {\n // CRLF will be treated as a single space for input element\n var replacedText = pastedTextRef.current.replace(/[\\r\\n]+$/, '').replace(/\\r\\n/g, ' ').replace(/[\\r\\n]/g, ' ');\n value = value.replace(replacedText, pastedTextRef.current);\n }\n pastedTextRef.current = null;\n triggerOnSearch(value);\n };\n var onInputPaste = function onInputPaste(e) {\n var clipboardData = e.clipboardData;\n var value = clipboardData === null || clipboardData === void 0 ? void 0 : clipboardData.getData('text');\n pastedTextRef.current = value || '';\n };\n var onClick = function onClick(_ref) {\n var target = _ref.target;\n if (target !== inputRef.current) {\n // Should focus input if click the selector\n var isIE = document.body.style.msTouchAction !== undefined;\n if (isIE) {\n setTimeout(function () {\n inputRef.current.focus();\n });\n } else {\n inputRef.current.focus();\n }\n }\n };\n var onMouseDown = function onMouseDown(event) {\n var inputMouseDown = getInputMouseDown();\n\n // when mode is combobox and it is disabled, don't prevent default behavior\n // https://github.com/ant-design/ant-design/issues/37320\n // https://github.com/ant-design/ant-design/issues/48281\n if (event.target !== inputRef.current && !inputMouseDown && !(mode === 'combobox' && disabled)) {\n event.preventDefault();\n }\n if (mode !== 'combobox' && (!showSearch || !inputMouseDown) || !open) {\n if (open && autoClearSearchValue !== false) {\n onSearch('', true, false);\n }\n onToggleOpen();\n }\n };\n\n // ================= Inner Selector ==================\n var sharedProps = {\n inputRef: inputRef,\n onInputKeyDown: onInternalInputKeyDown,\n onInputMouseDown: onInternalInputMouseDown,\n onInputChange: onInputChange,\n onInputPaste: onInputPaste,\n onInputCompositionStart: onInputCompositionStart,\n onInputCompositionEnd: onInputCompositionEnd\n };\n var selectNode = mode === 'multiple' || mode === 'tags' ? /*#__PURE__*/React.createElement(MultipleSelector, _extends({}, props, sharedProps)) : /*#__PURE__*/React.createElement(SingleSelector, _extends({}, props, sharedProps));\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: domRef,\n className: \"\".concat(prefixCls, \"-selector\"),\n onClick: onClick,\n onMouseDown: onMouseDown\n }, selectNode);\n};\nvar ForwardSelector = /*#__PURE__*/React.forwardRef(Selector);\nif (process.env.NODE_ENV !== 'production') {\n ForwardSelector.displayName = 'Selector';\n}\nexport default ForwardSelector;","import KeyCode from \"rc-util/es/KeyCode\";\n\n/** keyCode Judgment function */\nexport function isValidateOpenKey(currentKeyCode) {\n return ![\n // System function button\n KeyCode.ESC, KeyCode.SHIFT, KeyCode.BACKSPACE, KeyCode.TAB, KeyCode.WIN_KEY, KeyCode.ALT, KeyCode.META, KeyCode.WIN_KEY_RIGHT, KeyCode.CTRL, KeyCode.SEMICOLON, KeyCode.EQUALS, KeyCode.CAPS_LOCK, KeyCode.CONTEXT_MENU,\n // F1-F12\n KeyCode.F1, KeyCode.F2, KeyCode.F3, KeyCode.F4, KeyCode.F5, KeyCode.F6, KeyCode.F7, KeyCode.F8, KeyCode.F9, KeyCode.F10, KeyCode.F11, KeyCode.F12].includes(currentKeyCode);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"disabled\", \"visible\", \"children\", \"popupElement\", \"animation\", \"transitionName\", \"dropdownStyle\", \"dropdownClassName\", \"direction\", \"placement\", \"builtinPlacements\", \"dropdownMatchSelectWidth\", \"dropdownRender\", \"dropdownAlign\", \"getPopupContainer\", \"empty\", \"getTriggerDOMNode\", \"onPopupVisibleChange\", \"onPopupMouseEnter\"];\nimport Trigger from '@rc-component/trigger';\nimport classNames from 'classnames';\nimport * as React from 'react';\nvar getBuiltInPlacements = function getBuiltInPlacements(dropdownMatchSelectWidth) {\n // Enable horizontal overflow auto-adjustment when a custom dropdown width is provided\n var adjustX = dropdownMatchSelectWidth === true ? 0 : 1;\n return {\n bottomLeft: {\n points: ['tl', 'bl'],\n offset: [0, 4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n },\n htmlRegion: 'scroll'\n },\n bottomRight: {\n points: ['tr', 'br'],\n offset: [0, 4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n },\n htmlRegion: 'scroll'\n },\n topLeft: {\n points: ['bl', 'tl'],\n offset: [0, -4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n },\n htmlRegion: 'scroll'\n },\n topRight: {\n points: ['br', 'tr'],\n offset: [0, -4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n },\n htmlRegion: 'scroll'\n }\n };\n};\nvar SelectTrigger = function SelectTrigger(props, ref) {\n var prefixCls = props.prefixCls,\n disabled = props.disabled,\n visible = props.visible,\n children = props.children,\n popupElement = props.popupElement,\n animation = props.animation,\n transitionName = props.transitionName,\n dropdownStyle = props.dropdownStyle,\n dropdownClassName = props.dropdownClassName,\n _props$direction = props.direction,\n direction = _props$direction === void 0 ? 'ltr' : _props$direction,\n placement = props.placement,\n builtinPlacements = props.builtinPlacements,\n dropdownMatchSelectWidth = props.dropdownMatchSelectWidth,\n dropdownRender = props.dropdownRender,\n dropdownAlign = props.dropdownAlign,\n getPopupContainer = props.getPopupContainer,\n empty = props.empty,\n getTriggerDOMNode = props.getTriggerDOMNode,\n onPopupVisibleChange = props.onPopupVisibleChange,\n onPopupMouseEnter = props.onPopupMouseEnter,\n restProps = _objectWithoutProperties(props, _excluded);\n var dropdownPrefixCls = \"\".concat(prefixCls, \"-dropdown\");\n var popupNode = popupElement;\n if (dropdownRender) {\n popupNode = dropdownRender(popupElement);\n }\n var mergedBuiltinPlacements = React.useMemo(function () {\n return builtinPlacements || getBuiltInPlacements(dropdownMatchSelectWidth);\n }, [builtinPlacements, dropdownMatchSelectWidth]);\n\n // ===================== Motion ======================\n var mergedTransitionName = animation ? \"\".concat(dropdownPrefixCls, \"-\").concat(animation) : transitionName;\n\n // =================== Popup Width ===================\n var isNumberPopupWidth = typeof dropdownMatchSelectWidth === 'number';\n var stretch = React.useMemo(function () {\n if (isNumberPopupWidth) {\n return null;\n }\n return dropdownMatchSelectWidth === false ? 'minWidth' : 'width';\n }, [dropdownMatchSelectWidth, isNumberPopupWidth]);\n var popupStyle = dropdownStyle;\n if (isNumberPopupWidth) {\n popupStyle = _objectSpread(_objectSpread({}, popupStyle), {}, {\n width: dropdownMatchSelectWidth\n });\n }\n\n // ======================= Ref =======================\n var triggerPopupRef = React.useRef(null);\n React.useImperativeHandle(ref, function () {\n return {\n getPopupElement: function getPopupElement() {\n var _triggerPopupRef$curr;\n return (_triggerPopupRef$curr = triggerPopupRef.current) === null || _triggerPopupRef$curr === void 0 ? void 0 : _triggerPopupRef$curr.popupElement;\n }\n };\n });\n return /*#__PURE__*/React.createElement(Trigger, _extends({}, restProps, {\n showAction: onPopupVisibleChange ? ['click'] : [],\n hideAction: onPopupVisibleChange ? ['click'] : [],\n popupPlacement: placement || (direction === 'rtl' ? 'bottomRight' : 'bottomLeft'),\n builtinPlacements: mergedBuiltinPlacements,\n prefixCls: dropdownPrefixCls,\n popupTransitionName: mergedTransitionName,\n popup: /*#__PURE__*/React.createElement(\"div\", {\n onMouseEnter: onPopupMouseEnter\n }, popupNode),\n ref: triggerPopupRef,\n stretch: stretch,\n popupAlign: dropdownAlign,\n popupVisible: visible,\n getPopupContainer: getPopupContainer,\n popupClassName: classNames(dropdownClassName, _defineProperty({}, \"\".concat(dropdownPrefixCls, \"-empty\"), empty)),\n popupStyle: popupStyle,\n getTriggerDOMNode: getTriggerDOMNode,\n onPopupVisibleChange: onPopupVisibleChange\n }), children);\n};\nvar RefSelectTrigger = /*#__PURE__*/React.forwardRef(SelectTrigger);\nif (process.env.NODE_ENV !== 'production') {\n RefSelectTrigger.displayName = 'SelectTrigger';\n}\nexport default RefSelectTrigger;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _toArray from \"@babel/runtime/helpers/esm/toArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport warning from \"rc-util/es/warning\";\nfunction getKey(data, index) {\n var key = data.key;\n var value;\n if ('value' in data) {\n value = data.value;\n }\n if (key !== null && key !== undefined) {\n return key;\n }\n if (value !== undefined) {\n return value;\n }\n return \"rc-index-key-\".concat(index);\n}\nexport function isValidCount(value) {\n return typeof value !== 'undefined' && !Number.isNaN(value);\n}\nexport function fillFieldNames(fieldNames, childrenAsData) {\n var _ref = fieldNames || {},\n label = _ref.label,\n value = _ref.value,\n options = _ref.options,\n groupLabel = _ref.groupLabel;\n var mergedLabel = label || (childrenAsData ? 'children' : 'label');\n return {\n label: mergedLabel,\n value: value || 'value',\n options: options || 'options',\n groupLabel: groupLabel || mergedLabel\n };\n}\n\n/**\n * Flat options into flatten list.\n * We use `optionOnly` here is aim to avoid user use nested option group.\n * Here is simply set `key` to the index if not provided.\n */\nexport function flattenOptions(options) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n fieldNames = _ref2.fieldNames,\n childrenAsData = _ref2.childrenAsData;\n var flattenList = [];\n var _fillFieldNames = fillFieldNames(fieldNames, false),\n fieldLabel = _fillFieldNames.label,\n fieldValue = _fillFieldNames.value,\n fieldOptions = _fillFieldNames.options,\n groupLabel = _fillFieldNames.groupLabel;\n function dig(list, isGroupOption) {\n if (!Array.isArray(list)) {\n return;\n }\n list.forEach(function (data) {\n if (isGroupOption || !(fieldOptions in data)) {\n var value = data[fieldValue];\n\n // Option\n flattenList.push({\n key: getKey(data, flattenList.length),\n groupOption: isGroupOption,\n data: data,\n label: data[fieldLabel],\n value: value\n });\n } else {\n var grpLabel = data[groupLabel];\n if (grpLabel === undefined && childrenAsData) {\n grpLabel = data.label;\n }\n\n // Option Group\n flattenList.push({\n key: getKey(data, flattenList.length),\n group: true,\n data: data,\n label: grpLabel\n });\n dig(data[fieldOptions], true);\n }\n });\n }\n dig(options, false);\n return flattenList;\n}\n\n/**\n * Inject `props` into `option` for legacy usage\n */\nexport function injectPropsWithOption(option) {\n var newOption = _objectSpread({}, option);\n if (!('props' in newOption)) {\n Object.defineProperty(newOption, 'props', {\n get: function get() {\n warning(false, 'Return type is option instead of Option instance. Please read value directly instead of reading from `props`.');\n return newOption;\n }\n });\n }\n return newOption;\n}\nexport var getSeparatedContent = function getSeparatedContent(text, tokens, end) {\n if (!tokens || !tokens.length) {\n return null;\n }\n var match = false;\n var separate = function separate(str, _ref3) {\n var _ref4 = _toArray(_ref3),\n token = _ref4[0],\n restTokens = _ref4.slice(1);\n if (!token) {\n return [str];\n }\n var list = str.split(token);\n match = match || list.length > 1;\n return list.reduce(function (prevList, unitStr) {\n return [].concat(_toConsumableArray(prevList), _toConsumableArray(separate(unitStr, restTokens)));\n }, []).filter(Boolean);\n };\n var list = separate(text, tokens);\n if (match) {\n return typeof end !== 'undefined' ? list.slice(0, end) : list;\n } else {\n return null;\n }\n};","import * as React from 'react';\n\n// Use any here since we do not get the type during compilation\n\nvar SelectContext = /*#__PURE__*/React.createContext(null);\nexport default SelectContext;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport * as React from 'react';\nexport default function Polite(props) {\n var visible = props.visible,\n values = props.values;\n if (!visible) {\n return null;\n }\n\n // Only cut part of values since it's a screen reader\n var MAX_COUNT = 50;\n return /*#__PURE__*/React.createElement(\"span\", {\n \"aria-live\": \"polite\",\n style: {\n width: 0,\n height: 0,\n position: 'absolute',\n overflow: 'hidden',\n opacity: 0\n }\n }, \"\".concat(values.slice(0, MAX_COUNT).map(function (_ref) {\n var label = _ref.label,\n value = _ref.value;\n return ['number', 'string'].includes(_typeof(label)) ? label : value;\n }).join(', ')), values.length > MAX_COUNT ? ', ...' : null);\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 _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"id\", \"prefixCls\", \"className\", \"showSearch\", \"tagRender\", \"direction\", \"omitDomProps\", \"displayValues\", \"onDisplayValuesChange\", \"emptyOptions\", \"notFoundContent\", \"onClear\", \"mode\", \"disabled\", \"loading\", \"getInputElement\", \"getRawInputElement\", \"open\", \"defaultOpen\", \"onDropdownVisibleChange\", \"activeValue\", \"onActiveValueChange\", \"activeDescendantId\", \"searchValue\", \"autoClearSearchValue\", \"onSearch\", \"onSearchSplit\", \"tokenSeparators\", \"allowClear\", \"suffixIcon\", \"clearIcon\", \"OptionList\", \"animation\", \"transitionName\", \"dropdownStyle\", \"dropdownClassName\", \"dropdownMatchSelectWidth\", \"dropdownRender\", \"dropdownAlign\", \"placement\", \"builtinPlacements\", \"getPopupContainer\", \"showAction\", \"onFocus\", \"onBlur\", \"onKeyUp\", \"onKeyDown\", \"onMouseDown\"];\nimport classNames from 'classnames';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport isMobile from \"rc-util/es/isMobile\";\nimport { useComposeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { useAllowClear } from \"../hooks/useAllowClear\";\nimport { BaseSelectContext } from \"../hooks/useBaseProps\";\nimport useDelayReset from \"../hooks/useDelayReset\";\nimport useLock from \"../hooks/useLock\";\nimport useSelectTriggerControl from \"../hooks/useSelectTriggerControl\";\nimport Selector from \"../Selector\";\nimport SelectTrigger from \"../SelectTrigger\";\nimport TransBtn from \"../TransBtn\";\nimport { getSeparatedContent, isValidCount } from \"../utils/valueUtil\";\nimport SelectContext from \"../SelectContext\";\nimport Polite from \"./Polite\";\nvar DEFAULT_OMIT_PROPS = ['value', 'onChange', 'removeIcon', 'placeholder', 'autoFocus', 'maxTagCount', 'maxTagTextLength', 'maxTagPlaceholder', 'choiceTransitionName', 'onInputKeyDown', 'onPopupScroll', 'tabIndex'];\nexport var isMultiple = function isMultiple(mode) {\n return mode === 'tags' || mode === 'multiple';\n};\nvar BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _customizeRawInputEle;\n var id = props.id,\n prefixCls = props.prefixCls,\n className = props.className,\n showSearch = props.showSearch,\n tagRender = props.tagRender,\n direction = props.direction,\n omitDomProps = props.omitDomProps,\n displayValues = props.displayValues,\n onDisplayValuesChange = props.onDisplayValuesChange,\n emptyOptions = props.emptyOptions,\n _props$notFoundConten = props.notFoundContent,\n notFoundContent = _props$notFoundConten === void 0 ? 'Not Found' : _props$notFoundConten,\n onClear = props.onClear,\n mode = props.mode,\n disabled = props.disabled,\n loading = props.loading,\n getInputElement = props.getInputElement,\n getRawInputElement = props.getRawInputElement,\n open = props.open,\n defaultOpen = props.defaultOpen,\n onDropdownVisibleChange = props.onDropdownVisibleChange,\n activeValue = props.activeValue,\n onActiveValueChange = props.onActiveValueChange,\n activeDescendantId = props.activeDescendantId,\n searchValue = props.searchValue,\n autoClearSearchValue = props.autoClearSearchValue,\n onSearch = props.onSearch,\n onSearchSplit = props.onSearchSplit,\n tokenSeparators = props.tokenSeparators,\n allowClear = props.allowClear,\n suffixIcon = props.suffixIcon,\n clearIcon = props.clearIcon,\n OptionList = props.OptionList,\n animation = props.animation,\n transitionName = props.transitionName,\n dropdownStyle = props.dropdownStyle,\n dropdownClassName = props.dropdownClassName,\n dropdownMatchSelectWidth = props.dropdownMatchSelectWidth,\n dropdownRender = props.dropdownRender,\n dropdownAlign = props.dropdownAlign,\n placement = props.placement,\n builtinPlacements = props.builtinPlacements,\n getPopupContainer = props.getPopupContainer,\n _props$showAction = props.showAction,\n showAction = _props$showAction === void 0 ? [] : _props$showAction,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onKeyUp = props.onKeyUp,\n onKeyDown = props.onKeyDown,\n onMouseDown = props.onMouseDown,\n restProps = _objectWithoutProperties(props, _excluded);\n\n // ============================== MISC ==============================\n var multiple = isMultiple(mode);\n var mergedShowSearch = (showSearch !== undefined ? showSearch : multiple) || mode === 'combobox';\n var domProps = _objectSpread({}, restProps);\n DEFAULT_OMIT_PROPS.forEach(function (propName) {\n delete domProps[propName];\n });\n omitDomProps === null || omitDomProps === void 0 || omitDomProps.forEach(function (propName) {\n delete domProps[propName];\n });\n\n // ============================= Mobile =============================\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n mobile = _React$useState2[0],\n setMobile = _React$useState2[1];\n React.useEffect(function () {\n // Only update on the client side\n setMobile(isMobile());\n }, []);\n\n // ============================== Refs ==============================\n var containerRef = React.useRef(null);\n var selectorDomRef = React.useRef(null);\n var triggerRef = React.useRef(null);\n var selectorRef = React.useRef(null);\n var listRef = React.useRef(null);\n var blurRef = React.useRef(false);\n\n /** Used for component focused management */\n var _useDelayReset = useDelayReset(),\n _useDelayReset2 = _slicedToArray(_useDelayReset, 3),\n mockFocused = _useDelayReset2[0],\n setMockFocused = _useDelayReset2[1],\n cancelSetMockFocused = _useDelayReset2[2];\n\n // =========================== Imperative ===========================\n React.useImperativeHandle(ref, function () {\n var _selectorRef$current, _selectorRef$current2;\n return {\n focus: (_selectorRef$current = selectorRef.current) === null || _selectorRef$current === void 0 ? void 0 : _selectorRef$current.focus,\n blur: (_selectorRef$current2 = selectorRef.current) === null || _selectorRef$current2 === void 0 ? void 0 : _selectorRef$current2.blur,\n scrollTo: function scrollTo(arg) {\n var _listRef$current;\n return (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.scrollTo(arg);\n },\n nativeElement: containerRef.current || selectorDomRef.current\n };\n });\n\n // ========================== Search Value ==========================\n var mergedSearchValue = React.useMemo(function () {\n var _displayValues$;\n if (mode !== 'combobox') {\n return searchValue;\n }\n var val = (_displayValues$ = displayValues[0]) === null || _displayValues$ === void 0 ? void 0 : _displayValues$.value;\n return typeof val === 'string' || typeof val === 'number' ? String(val) : '';\n }, [searchValue, mode, displayValues]);\n\n // ========================== Custom Input ==========================\n // Only works in `combobox`\n var customizeInputElement = mode === 'combobox' && typeof getInputElement === 'function' && getInputElement() || null;\n\n // Used for customize replacement for `rc-cascader`\n var customizeRawInputElement = typeof getRawInputElement === 'function' && getRawInputElement();\n var customizeRawInputRef = useComposeRef(selectorDomRef, customizeRawInputElement === null || customizeRawInputElement === void 0 || (_customizeRawInputEle = customizeRawInputElement.props) === null || _customizeRawInputEle === void 0 ? void 0 : _customizeRawInputEle.ref);\n\n // ============================== Open ==============================\n // SSR not support Portal which means we need delay `open` for the first time render\n var _React$useState3 = React.useState(false),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n rendered = _React$useState4[0],\n setRendered = _React$useState4[1];\n useLayoutEffect(function () {\n setRendered(true);\n }, []);\n var _useMergedState = useMergedState(false, {\n defaultValue: defaultOpen,\n value: open\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n innerOpen = _useMergedState2[0],\n setInnerOpen = _useMergedState2[1];\n var mergedOpen = rendered ? innerOpen : false;\n\n // Not trigger `open` in `combobox` when `notFoundContent` is empty\n var emptyListContent = !notFoundContent && emptyOptions;\n if (disabled || emptyListContent && mergedOpen && mode === 'combobox') {\n mergedOpen = false;\n }\n var triggerOpen = emptyListContent ? false : mergedOpen;\n var onToggleOpen = React.useCallback(function (newOpen) {\n var nextOpen = newOpen !== undefined ? newOpen : !mergedOpen;\n if (!disabled) {\n setInnerOpen(nextOpen);\n if (mergedOpen !== nextOpen) {\n onDropdownVisibleChange === null || onDropdownVisibleChange === void 0 || onDropdownVisibleChange(nextOpen);\n }\n }\n }, [disabled, mergedOpen, setInnerOpen, onDropdownVisibleChange]);\n\n // ============================= Search =============================\n var tokenWithEnter = React.useMemo(function () {\n return (tokenSeparators || []).some(function (tokenSeparator) {\n return ['\\n', '\\r\\n'].includes(tokenSeparator);\n });\n }, [tokenSeparators]);\n var _ref = React.useContext(SelectContext) || {},\n maxCount = _ref.maxCount,\n rawValues = _ref.rawValues;\n var onInternalSearch = function onInternalSearch(searchText, fromTyping, isCompositing) {\n if (multiple && isValidCount(maxCount) && (rawValues === null || rawValues === void 0 ? void 0 : rawValues.size) >= maxCount) {\n return;\n }\n var ret = true;\n var newSearchText = searchText;\n onActiveValueChange === null || onActiveValueChange === void 0 || onActiveValueChange(null);\n var separatedList = getSeparatedContent(searchText, tokenSeparators, isValidCount(maxCount) ? maxCount - rawValues.size : undefined);\n\n // Check if match the `tokenSeparators`\n var patchLabels = isCompositing ? null : separatedList;\n\n // Ignore combobox since it's not split-able\n if (mode !== 'combobox' && patchLabels) {\n newSearchText = '';\n onSearchSplit === null || onSearchSplit === void 0 || onSearchSplit(patchLabels);\n\n // Should close when paste finish\n onToggleOpen(false);\n\n // Tell Selector that break next actions\n ret = false;\n }\n if (onSearch && mergedSearchValue !== newSearchText) {\n onSearch(newSearchText, {\n source: fromTyping ? 'typing' : 'effect'\n });\n }\n return ret;\n };\n\n // Only triggered when menu is closed & mode is tags\n // If menu is open, OptionList will take charge\n // If mode isn't tags, press enter is not meaningful when you can't see any option\n var onInternalSearchSubmit = function onInternalSearchSubmit(searchText) {\n // prevent empty tags from appearing when you click the Enter button\n if (!searchText || !searchText.trim()) {\n return;\n }\n onSearch(searchText, {\n source: 'submit'\n });\n };\n\n // Close will clean up single mode search text\n React.useEffect(function () {\n if (!mergedOpen && !multiple && mode !== 'combobox') {\n onInternalSearch('', false, false);\n }\n }, [mergedOpen]);\n\n // ============================ Disabled ============================\n // Close dropdown & remove focus state when disabled change\n React.useEffect(function () {\n if (innerOpen && disabled) {\n setInnerOpen(false);\n }\n\n // After onBlur is triggered, the focused does not need to be reset\n if (disabled && !blurRef.current) {\n setMockFocused(false);\n }\n }, [disabled]);\n\n // ============================ Keyboard ============================\n /**\n * We record input value here to check if can press to clean up by backspace\n * - null: Key is not down, this is reset by key up\n * - true: Search text is empty when first time backspace down\n * - false: Search text is not empty when first time backspace down\n */\n var _useLock = useLock(),\n _useLock2 = _slicedToArray(_useLock, 2),\n getClearLock = _useLock2[0],\n setClearLock = _useLock2[1];\n var keyLockRef = React.useRef(false);\n\n // KeyDown\n var onInternalKeyDown = function onInternalKeyDown(event) {\n var clearLock = getClearLock();\n var key = event.key;\n var isEnterKey = key === 'Enter';\n if (isEnterKey) {\n // Do not submit form when type in the input\n if (mode !== 'combobox') {\n event.preventDefault();\n }\n\n // We only manage open state here, close logic should handle by list component\n if (!mergedOpen) {\n onToggleOpen(true);\n }\n }\n setClearLock(!!mergedSearchValue);\n\n // Remove value by `backspace`\n if (key === 'Backspace' && !clearLock && multiple && !mergedSearchValue && displayValues.length) {\n var cloneDisplayValues = _toConsumableArray(displayValues);\n var removedDisplayValue = null;\n for (var i = cloneDisplayValues.length - 1; i >= 0; i -= 1) {\n var current = cloneDisplayValues[i];\n if (!current.disabled) {\n cloneDisplayValues.splice(i, 1);\n removedDisplayValue = current;\n break;\n }\n }\n if (removedDisplayValue) {\n onDisplayValuesChange(cloneDisplayValues, {\n type: 'remove',\n values: [removedDisplayValue]\n });\n }\n }\n for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n if (mergedOpen && (!isEnterKey || !keyLockRef.current)) {\n var _listRef$current2;\n (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 || _listRef$current2.onKeyDown.apply(_listRef$current2, [event].concat(rest));\n }\n if (isEnterKey) {\n keyLockRef.current = true;\n }\n onKeyDown === null || onKeyDown === void 0 || onKeyDown.apply(void 0, [event].concat(rest));\n };\n\n // KeyUp\n var onInternalKeyUp = function onInternalKeyUp(event) {\n for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n rest[_key2 - 1] = arguments[_key2];\n }\n if (mergedOpen) {\n var _listRef$current3;\n (_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 || _listRef$current3.onKeyUp.apply(_listRef$current3, [event].concat(rest));\n }\n if (event.key === 'Enter') {\n keyLockRef.current = false;\n }\n onKeyUp === null || onKeyUp === void 0 || onKeyUp.apply(void 0, [event].concat(rest));\n };\n\n // ============================ Selector ============================\n var onSelectorRemove = function onSelectorRemove(val) {\n var newValues = displayValues.filter(function (i) {\n return i !== val;\n });\n onDisplayValuesChange(newValues, {\n type: 'remove',\n values: [val]\n });\n };\n\n // ========================== Focus / Blur ==========================\n /** Record real focus status */\n var focusRef = React.useRef(false);\n var onContainerFocus = function onContainerFocus() {\n setMockFocused(true);\n if (!disabled) {\n if (onFocus && !focusRef.current) {\n onFocus.apply(void 0, arguments);\n }\n\n // `showAction` should handle `focus` if set\n if (showAction.includes('focus')) {\n onToggleOpen(true);\n }\n }\n focusRef.current = true;\n };\n var onContainerBlur = function onContainerBlur() {\n blurRef.current = true;\n setMockFocused(false, function () {\n focusRef.current = false;\n blurRef.current = false;\n onToggleOpen(false);\n });\n if (disabled) {\n return;\n }\n if (mergedSearchValue) {\n // `tags` mode should move `searchValue` into values\n if (mode === 'tags') {\n onSearch(mergedSearchValue, {\n source: 'submit'\n });\n } else if (mode === 'multiple') {\n // `multiple` mode only clean the search value but not trigger event\n onSearch('', {\n source: 'blur'\n });\n }\n }\n if (onBlur) {\n onBlur.apply(void 0, arguments);\n }\n };\n\n // Give focus back of Select\n var activeTimeoutIds = [];\n React.useEffect(function () {\n return function () {\n activeTimeoutIds.forEach(function (timeoutId) {\n return clearTimeout(timeoutId);\n });\n activeTimeoutIds.splice(0, activeTimeoutIds.length);\n };\n }, []);\n var onInternalMouseDown = function onInternalMouseDown(event) {\n var _triggerRef$current;\n var target = event.target;\n var popupElement = (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.getPopupElement();\n\n // We should give focus back to selector if clicked item is not focusable\n if (popupElement && popupElement.contains(target)) {\n var timeoutId = setTimeout(function () {\n var index = activeTimeoutIds.indexOf(timeoutId);\n if (index !== -1) {\n activeTimeoutIds.splice(index, 1);\n }\n cancelSetMockFocused();\n if (!mobile && !popupElement.contains(document.activeElement)) {\n var _selectorRef$current3;\n (_selectorRef$current3 = selectorRef.current) === null || _selectorRef$current3 === void 0 || _selectorRef$current3.focus();\n }\n });\n activeTimeoutIds.push(timeoutId);\n }\n for (var _len3 = arguments.length, restArgs = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n restArgs[_key3 - 1] = arguments[_key3];\n }\n onMouseDown === null || onMouseDown === void 0 || onMouseDown.apply(void 0, [event].concat(restArgs));\n };\n\n // ============================ Dropdown ============================\n var _React$useState5 = React.useState({}),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n forceUpdate = _React$useState6[1];\n // We need force update here since popup dom is render async\n function onPopupMouseEnter() {\n forceUpdate({});\n }\n\n // Used for raw custom input trigger\n var onTriggerVisibleChange;\n if (customizeRawInputElement) {\n onTriggerVisibleChange = function onTriggerVisibleChange(newOpen) {\n onToggleOpen(newOpen);\n };\n }\n\n // Close when click on non-select element\n useSelectTriggerControl(function () {\n var _triggerRef$current2;\n return [containerRef.current, (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.getPopupElement()];\n }, triggerOpen, onToggleOpen, !!customizeRawInputElement);\n\n // ============================ Context =============================\n var baseSelectContext = React.useMemo(function () {\n return _objectSpread(_objectSpread({}, props), {}, {\n notFoundContent: notFoundContent,\n open: mergedOpen,\n triggerOpen: triggerOpen,\n id: id,\n showSearch: mergedShowSearch,\n multiple: multiple,\n toggleOpen: onToggleOpen\n });\n }, [props, notFoundContent, triggerOpen, mergedOpen, id, mergedShowSearch, multiple, onToggleOpen]);\n\n // ==================================================================\n // == Render ==\n // ==================================================================\n\n // ============================= Arrow ==============================\n var showSuffixIcon = !!suffixIcon || loading;\n var arrowNode;\n if (showSuffixIcon) {\n arrowNode = /*#__PURE__*/React.createElement(TransBtn, {\n className: classNames(\"\".concat(prefixCls, \"-arrow\"), _defineProperty({}, \"\".concat(prefixCls, \"-arrow-loading\"), loading)),\n customizeIcon: suffixIcon,\n customizeIconProps: {\n loading: loading,\n searchValue: mergedSearchValue,\n open: mergedOpen,\n focused: mockFocused,\n showSearch: mergedShowSearch\n }\n });\n }\n\n // ============================= Clear ==============================\n var onClearMouseDown = function onClearMouseDown() {\n var _selectorRef$current4;\n onClear === null || onClear === void 0 || onClear();\n (_selectorRef$current4 = selectorRef.current) === null || _selectorRef$current4 === void 0 || _selectorRef$current4.focus();\n onDisplayValuesChange([], {\n type: 'clear',\n values: displayValues\n });\n onInternalSearch('', false, false);\n };\n var _useAllowClear = useAllowClear(prefixCls, onClearMouseDown, displayValues, allowClear, clearIcon, disabled, mergedSearchValue, mode),\n mergedAllowClear = _useAllowClear.allowClear,\n clearNode = _useAllowClear.clearIcon;\n\n // =========================== OptionList ===========================\n var optionList = /*#__PURE__*/React.createElement(OptionList, {\n ref: listRef\n });\n\n // ============================= Select =============================\n var mergedClassName = classNames(prefixCls, className, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-focused\"), mockFocused), \"\".concat(prefixCls, \"-multiple\"), multiple), \"\".concat(prefixCls, \"-single\"), !multiple), \"\".concat(prefixCls, \"-allow-clear\"), allowClear), \"\".concat(prefixCls, \"-show-arrow\"), showSuffixIcon), \"\".concat(prefixCls, \"-disabled\"), disabled), \"\".concat(prefixCls, \"-loading\"), loading), \"\".concat(prefixCls, \"-open\"), mergedOpen), \"\".concat(prefixCls, \"-customize-input\"), customizeInputElement), \"\".concat(prefixCls, \"-show-search\"), mergedShowSearch));\n\n // >>> Selector\n var selectorNode = /*#__PURE__*/React.createElement(SelectTrigger, {\n ref: triggerRef,\n disabled: disabled,\n prefixCls: prefixCls,\n visible: triggerOpen,\n popupElement: optionList,\n animation: animation,\n transitionName: transitionName,\n dropdownStyle: dropdownStyle,\n dropdownClassName: dropdownClassName,\n direction: direction,\n dropdownMatchSelectWidth: dropdownMatchSelectWidth,\n dropdownRender: dropdownRender,\n dropdownAlign: dropdownAlign,\n placement: placement,\n builtinPlacements: builtinPlacements,\n getPopupContainer: getPopupContainer,\n empty: emptyOptions,\n getTriggerDOMNode: function getTriggerDOMNode(node) {\n return (\n // TODO: This is workaround and should be removed in `rc-select`\n // And use new standard `nativeElement` for ref.\n // But we should update `rc-resize-observer` first.\n selectorDomRef.current || node\n );\n },\n onPopupVisibleChange: onTriggerVisibleChange,\n onPopupMouseEnter: onPopupMouseEnter\n }, customizeRawInputElement ? ( /*#__PURE__*/React.cloneElement(customizeRawInputElement, {\n ref: customizeRawInputRef\n })) : /*#__PURE__*/React.createElement(Selector, _extends({}, props, {\n domRef: selectorDomRef,\n prefixCls: prefixCls,\n inputElement: customizeInputElement,\n ref: selectorRef,\n id: id,\n showSearch: mergedShowSearch,\n autoClearSearchValue: autoClearSearchValue,\n mode: mode,\n activeDescendantId: activeDescendantId,\n tagRender: tagRender,\n values: displayValues,\n open: mergedOpen,\n onToggleOpen: onToggleOpen,\n activeValue: activeValue,\n searchValue: mergedSearchValue,\n onSearch: onInternalSearch,\n onSearchSubmit: onInternalSearchSubmit,\n onRemove: onSelectorRemove,\n tokenWithEnter: tokenWithEnter\n })));\n\n // >>> Render\n var renderNode;\n\n // Render raw\n if (customizeRawInputElement) {\n renderNode = selectorNode;\n } else {\n renderNode = /*#__PURE__*/React.createElement(\"div\", _extends({\n className: mergedClassName\n }, domProps, {\n ref: containerRef,\n onMouseDown: onInternalMouseDown,\n onKeyDown: onInternalKeyDown,\n onKeyUp: onInternalKeyUp,\n onFocus: onContainerFocus,\n onBlur: onContainerBlur\n }), /*#__PURE__*/React.createElement(Polite, {\n visible: mockFocused && !mergedOpen,\n values: displayValues\n }), selectorNode, arrowNode, mergedAllowClear && clearNode);\n }\n return /*#__PURE__*/React.createElement(BaseSelectContext.Provider, {\n value: baseSelectContext\n }, renderNode);\n});\n\n// Set display name for dev\nif (process.env.NODE_ENV !== 'production') {\n BaseSelect.displayName = 'BaseSelect';\n}\nexport default BaseSelect;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n\n/**\n * Similar with `useLock`, but this hook will always execute last value.\n * When set to `true`, it will keep `true` for a short time even if `false` is set.\n */\nexport default function useDelayReset() {\n var timeout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n bool = _React$useState2[0],\n setBool = _React$useState2[1];\n var delayRef = React.useRef(null);\n var cancelLatest = function cancelLatest() {\n window.clearTimeout(delayRef.current);\n };\n React.useEffect(function () {\n return cancelLatest;\n }, []);\n var delaySetBool = function delaySetBool(value, callback) {\n cancelLatest();\n delayRef.current = window.setTimeout(function () {\n setBool(value);\n if (callback) {\n callback();\n }\n }, timeout);\n };\n return [bool, delaySetBool, cancelLatest];\n}","import * as React from 'react';\nexport default function useSelectTriggerControl(elements, open, triggerOpen, customizedTrigger) {\n var propsRef = React.useRef(null);\n propsRef.current = {\n open: open,\n triggerOpen: triggerOpen,\n customizedTrigger: customizedTrigger\n };\n React.useEffect(function () {\n function onGlobalMouseDown(event) {\n var _propsRef$current;\n // If trigger is customized, Trigger will take control of popupVisible\n if ((_propsRef$current = propsRef.current) !== null && _propsRef$current !== void 0 && _propsRef$current.customizedTrigger) {\n return;\n }\n var target = event.target;\n if (target.shadowRoot && event.composed) {\n target = event.composedPath()[0] || target;\n }\n if (propsRef.current.open && elements().filter(function (element) {\n return element;\n }).every(function (element) {\n return !element.contains(target) && element !== target;\n })) {\n // Should trigger close\n propsRef.current.triggerOpen(false);\n }\n }\n window.addEventListener('mousedown', onGlobalMouseDown);\n return function () {\n return window.removeEventListener('mousedown', onGlobalMouseDown);\n };\n }, []);\n}","/* istanbul ignore file */\n\n/** This is a placeholder, not real render in dom */\nvar OptGroup = function OptGroup() {\n return null;\n};\nOptGroup.isSelectOptGroup = true;\nexport default OptGroup;","/* istanbul ignore file */\n\n/** This is a placeholder, not real render in dom */\nvar Option = function Option() {\n return null;\n};\nOption.isSelectOption = true;\nexport default Option;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nvar _excluded = [\"disabled\", \"title\", \"children\", \"style\", \"className\"];\nimport classNames from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport omit from \"rc-util/es/omit\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport List from 'rc-virtual-list';\nimport * as React from 'react';\nimport { useEffect } from 'react';\nimport SelectContext from \"./SelectContext\";\nimport TransBtn from \"./TransBtn\";\nimport useBaseProps from \"./hooks/useBaseProps\";\nimport { isPlatformMac } from \"./utils/platformUtil\";\nimport { isValidCount } from \"./utils/valueUtil\";\n\n// export interface OptionListProps {\n\nfunction isTitleType(content) {\n return typeof content === 'string' || typeof content === 'number';\n}\n\n/**\n * Using virtual list of option display.\n * Will fallback to dom if use customize render.\n */\nvar OptionList = function OptionList(_, ref) {\n var _useBaseProps = useBaseProps(),\n prefixCls = _useBaseProps.prefixCls,\n id = _useBaseProps.id,\n open = _useBaseProps.open,\n multiple = _useBaseProps.multiple,\n mode = _useBaseProps.mode,\n searchValue = _useBaseProps.searchValue,\n toggleOpen = _useBaseProps.toggleOpen,\n notFoundContent = _useBaseProps.notFoundContent,\n onPopupScroll = _useBaseProps.onPopupScroll;\n var _React$useContext = React.useContext(SelectContext),\n maxCount = _React$useContext.maxCount,\n flattenOptions = _React$useContext.flattenOptions,\n onActiveValue = _React$useContext.onActiveValue,\n defaultActiveFirstOption = _React$useContext.defaultActiveFirstOption,\n onSelect = _React$useContext.onSelect,\n menuItemSelectedIcon = _React$useContext.menuItemSelectedIcon,\n rawValues = _React$useContext.rawValues,\n fieldNames = _React$useContext.fieldNames,\n virtual = _React$useContext.virtual,\n direction = _React$useContext.direction,\n listHeight = _React$useContext.listHeight,\n listItemHeight = _React$useContext.listItemHeight,\n optionRender = _React$useContext.optionRender;\n var itemPrefixCls = \"\".concat(prefixCls, \"-item\");\n var memoFlattenOptions = useMemo(function () {\n return flattenOptions;\n }, [open, flattenOptions], function (prev, next) {\n return next[0] && prev[1] !== next[1];\n });\n\n // =========================== List ===========================\n var listRef = React.useRef(null);\n var overMaxCount = React.useMemo(function () {\n return multiple && isValidCount(maxCount) && (rawValues === null || rawValues === void 0 ? void 0 : rawValues.size) >= maxCount;\n }, [multiple, maxCount, rawValues === null || rawValues === void 0 ? void 0 : rawValues.size]);\n var onListMouseDown = function onListMouseDown(event) {\n event.preventDefault();\n };\n var scrollIntoView = function scrollIntoView(args) {\n var _listRef$current;\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 || _listRef$current.scrollTo(typeof args === 'number' ? {\n index: args\n } : args);\n };\n\n // ========================== Active ==========================\n var getEnabledActiveIndex = function getEnabledActiveIndex(index) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n var len = memoFlattenOptions.length;\n for (var i = 0; i < len; i += 1) {\n var current = (index + i * offset + len) % len;\n var _ref = memoFlattenOptions[current] || {},\n group = _ref.group,\n data = _ref.data;\n if (!group && !(data !== null && data !== void 0 && data.disabled) && !overMaxCount) {\n return current;\n }\n }\n return -1;\n };\n var _React$useState = React.useState(function () {\n return getEnabledActiveIndex(0);\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeIndex = _React$useState2[0],\n setActiveIndex = _React$useState2[1];\n var setActive = function setActive(index) {\n var fromKeyboard = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n setActiveIndex(index);\n var info = {\n source: fromKeyboard ? 'keyboard' : 'mouse'\n };\n\n // Trigger active event\n var flattenItem = memoFlattenOptions[index];\n if (!flattenItem) {\n onActiveValue(null, -1, info);\n return;\n }\n onActiveValue(flattenItem.value, index, info);\n };\n\n // Auto active first item when list length or searchValue changed\n useEffect(function () {\n setActive(defaultActiveFirstOption !== false ? getEnabledActiveIndex(0) : -1);\n }, [memoFlattenOptions.length, searchValue]);\n\n // https://github.com/ant-design/ant-design/issues/34975\n var isSelected = React.useCallback(function (value) {\n return rawValues.has(value) && mode !== 'combobox';\n }, [mode, _toConsumableArray(rawValues).toString(), rawValues.size]);\n\n // Auto scroll to item position in single mode\n useEffect(function () {\n /**\n * React will skip `onChange` when component update.\n * `setActive` function will call root accessibility state update which makes re-render.\n * So we need to delay to let Input component trigger onChange first.\n */\n var timeoutId = setTimeout(function () {\n if (!multiple && open && rawValues.size === 1) {\n var value = Array.from(rawValues)[0];\n var index = memoFlattenOptions.findIndex(function (_ref2) {\n var data = _ref2.data;\n return data.value === value;\n });\n if (index !== -1) {\n setActive(index);\n scrollIntoView(index);\n }\n }\n });\n\n // Force trigger scrollbar visible when open\n if (open) {\n var _listRef$current2;\n (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 || _listRef$current2.scrollTo(undefined);\n }\n return function () {\n return clearTimeout(timeoutId);\n };\n }, [open, searchValue]);\n\n // ========================== Values ==========================\n var onSelectValue = function onSelectValue(value) {\n if (value !== undefined) {\n onSelect(value, {\n selected: !rawValues.has(value)\n });\n }\n\n // Single mode should always close by select\n if (!multiple) {\n toggleOpen(false);\n }\n };\n\n // ========================= Keyboard =========================\n React.useImperativeHandle(ref, function () {\n return {\n onKeyDown: function onKeyDown(event) {\n var which = event.which,\n ctrlKey = event.ctrlKey;\n switch (which) {\n // >>> Arrow keys & ctrl + n/p on Mac\n case KeyCode.N:\n case KeyCode.P:\n case KeyCode.UP:\n case KeyCode.DOWN:\n {\n var offset = 0;\n if (which === KeyCode.UP) {\n offset = -1;\n } else if (which === KeyCode.DOWN) {\n offset = 1;\n } else if (isPlatformMac() && ctrlKey) {\n if (which === KeyCode.N) {\n offset = 1;\n } else if (which === KeyCode.P) {\n offset = -1;\n }\n }\n if (offset !== 0) {\n var nextActiveIndex = getEnabledActiveIndex(activeIndex + offset, offset);\n scrollIntoView(nextActiveIndex);\n setActive(nextActiveIndex, true);\n }\n break;\n }\n\n // >>> Select\n case KeyCode.ENTER:\n {\n var _item$data;\n // value\n var item = memoFlattenOptions[activeIndex];\n if (item && !(item !== null && item !== void 0 && (_item$data = item.data) !== null && _item$data !== void 0 && _item$data.disabled) && !overMaxCount) {\n onSelectValue(item.value);\n } else {\n onSelectValue(undefined);\n }\n if (open) {\n event.preventDefault();\n }\n break;\n }\n\n // >>> Close\n case KeyCode.ESC:\n {\n toggleOpen(false);\n if (open) {\n event.stopPropagation();\n }\n }\n }\n },\n onKeyUp: function onKeyUp() {},\n scrollTo: function scrollTo(index) {\n scrollIntoView(index);\n }\n };\n });\n\n // ========================== Render ==========================\n if (memoFlattenOptions.length === 0) {\n return /*#__PURE__*/React.createElement(\"div\", {\n role: \"listbox\",\n id: \"\".concat(id, \"_list\"),\n className: \"\".concat(itemPrefixCls, \"-empty\"),\n onMouseDown: onListMouseDown\n }, notFoundContent);\n }\n var omitFieldNameList = Object.keys(fieldNames).map(function (key) {\n return fieldNames[key];\n });\n var getLabel = function getLabel(item) {\n return item.label;\n };\n function getItemAriaProps(item, index) {\n var group = item.group;\n return {\n role: group ? 'presentation' : 'option',\n id: \"\".concat(id, \"_list_\").concat(index)\n };\n }\n var renderItem = function renderItem(index) {\n var item = memoFlattenOptions[index];\n if (!item) {\n return null;\n }\n var itemData = item.data || {};\n var value = itemData.value;\n var group = item.group;\n var attrs = pickAttrs(itemData, true);\n var mergedLabel = getLabel(item);\n return item ? /*#__PURE__*/React.createElement(\"div\", _extends({\n \"aria-label\": typeof mergedLabel === 'string' && !group ? mergedLabel : null\n }, attrs, {\n key: index\n }, getItemAriaProps(item, index), {\n \"aria-selected\": isSelected(value)\n }), value) : null;\n };\n var a11yProps = {\n role: 'listbox',\n id: \"\".concat(id, \"_list\")\n };\n return /*#__PURE__*/React.createElement(React.Fragment, null, virtual && /*#__PURE__*/React.createElement(\"div\", _extends({}, a11yProps, {\n style: {\n height: 0,\n width: 0,\n overflow: 'hidden'\n }\n }), renderItem(activeIndex - 1), renderItem(activeIndex), renderItem(activeIndex + 1)), /*#__PURE__*/React.createElement(List, {\n itemKey: \"key\",\n ref: listRef,\n data: memoFlattenOptions,\n height: listHeight,\n itemHeight: listItemHeight,\n fullHeight: false,\n onMouseDown: onListMouseDown,\n onScroll: onPopupScroll,\n virtual: virtual,\n direction: direction,\n innerProps: virtual ? null : a11yProps\n }, function (item, itemIndex) {\n var group = item.group,\n groupOption = item.groupOption,\n data = item.data,\n label = item.label,\n value = item.value;\n var key = data.key;\n\n // Group\n if (group) {\n var _data$title;\n var groupTitle = (_data$title = data.title) !== null && _data$title !== void 0 ? _data$title : isTitleType(label) ? label.toString() : undefined;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(itemPrefixCls, \"\".concat(itemPrefixCls, \"-group\"), data.className),\n title: groupTitle\n }, label !== undefined ? label : key);\n }\n var disabled = data.disabled,\n title = data.title,\n children = data.children,\n style = data.style,\n className = data.className,\n otherProps = _objectWithoutProperties(data, _excluded);\n var passedProps = omit(otherProps, omitFieldNameList);\n\n // Option\n var selected = isSelected(value);\n var mergedDisabled = disabled || !selected && overMaxCount;\n var optionPrefixCls = \"\".concat(itemPrefixCls, \"-option\");\n var optionClassName = classNames(itemPrefixCls, optionPrefixCls, className, _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(optionPrefixCls, \"-grouped\"), groupOption), \"\".concat(optionPrefixCls, \"-active\"), activeIndex === itemIndex && !mergedDisabled), \"\".concat(optionPrefixCls, \"-disabled\"), mergedDisabled), \"\".concat(optionPrefixCls, \"-selected\"), selected));\n var mergedLabel = getLabel(item);\n var iconVisible = !menuItemSelectedIcon || typeof menuItemSelectedIcon === 'function' || selected;\n\n // https://github.com/ant-design/ant-design/issues/34145\n var content = typeof mergedLabel === 'number' ? mergedLabel : mergedLabel || value;\n // https://github.com/ant-design/ant-design/issues/26717\n var optionTitle = isTitleType(content) ? content.toString() : undefined;\n if (title !== undefined) {\n optionTitle = title;\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, pickAttrs(passedProps), !virtual ? getItemAriaProps(item, itemIndex) : {}, {\n \"aria-selected\": selected,\n className: optionClassName,\n title: optionTitle,\n onMouseMove: function onMouseMove() {\n if (activeIndex === itemIndex || mergedDisabled) {\n return;\n }\n setActive(itemIndex);\n },\n onClick: function onClick() {\n if (!mergedDisabled) {\n onSelectValue(value);\n }\n },\n style: style\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(optionPrefixCls, \"-content\")\n }, typeof optionRender === 'function' ? optionRender(item, {\n index: itemIndex\n }) : content), /*#__PURE__*/React.isValidElement(menuItemSelectedIcon) || selected, iconVisible && /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(itemPrefixCls, \"-option-state\"),\n customizeIcon: menuItemSelectedIcon,\n customizeIconProps: {\n value: value,\n disabled: mergedDisabled,\n isSelected: selected\n }\n }, selected ? '✓' : null));\n }));\n};\nvar RefOptionList = /*#__PURE__*/React.forwardRef(OptionList);\nif (process.env.NODE_ENV !== 'production') {\n RefOptionList.displayName = 'OptionList';\n}\nexport default RefOptionList;","/* istanbul ignore file */\nexport function isPlatformMac() {\n return /(mac\\sos|macintosh)/i.test(navigator.appVersion);\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport { toArray } from \"../utils/commonUtil\";\nimport { injectPropsWithOption } from \"../utils/valueUtil\";\nfunction includes(test, search) {\n return toArray(test).join('').toUpperCase().includes(search);\n}\nexport default (function (options, fieldNames, searchValue, filterOption, optionFilterProp) {\n return React.useMemo(function () {\n if (!searchValue || filterOption === false) {\n return options;\n }\n var fieldOptions = fieldNames.options,\n fieldLabel = fieldNames.label,\n fieldValue = fieldNames.value;\n var filteredOptions = [];\n var customizeFilter = typeof filterOption === 'function';\n var upperSearch = searchValue.toUpperCase();\n var filterFunc = customizeFilter ? filterOption : function (_, option) {\n // Use provided `optionFilterProp`\n if (optionFilterProp) {\n return includes(option[optionFilterProp], upperSearch);\n }\n\n // Auto select `label` or `value` by option type\n if (option[fieldOptions]) {\n // hack `fieldLabel` since `OptionGroup` children is not `label`\n return includes(option[fieldLabel !== 'children' ? fieldLabel : 'label'], upperSearch);\n }\n return includes(option[fieldValue], upperSearch);\n };\n var wrapOption = customizeFilter ? function (opt) {\n return injectPropsWithOption(opt);\n } : function (opt) {\n return opt;\n };\n options.forEach(function (item) {\n // Group should check child options\n if (item[fieldOptions]) {\n // Check group first\n var matchGroup = filterFunc(searchValue, wrapOption(item));\n if (matchGroup) {\n filteredOptions.push(item);\n } else {\n // Check option\n var subOptions = item[fieldOptions].filter(function (subItem) {\n return filterFunc(searchValue, wrapOption(subItem));\n });\n if (subOptions.length) {\n filteredOptions.push(_objectSpread(_objectSpread({}, item), {}, _defineProperty({}, fieldOptions, subOptions)));\n }\n }\n return;\n }\n if (filterFunc(searchValue, wrapOption(item))) {\n filteredOptions.push(item);\n }\n });\n return filteredOptions;\n }, [options, filterOption, optionFilterProp, searchValue, fieldNames]);\n});","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nvar uuid = 0;\n\n/** Is client side and not jsdom */\nexport var isBrowserClient = process.env.NODE_ENV !== 'test' && canUseDom();\n\n/** Get unique id for accessibility usage */\nexport function getUUID() {\n var retId;\n\n // Test never reach\n /* istanbul ignore if */\n if (isBrowserClient) {\n retId = uuid;\n uuid += 1;\n } else {\n retId = 'TEST_OR_SSR';\n }\n return retId;\n}\nexport default function useId(id) {\n // Inner id for accessibility usage. Only work in client side\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerId = _React$useState2[0],\n setInnerId = _React$useState2[1];\n React.useEffect(function () {\n setInnerId(\"rc_select_\".concat(getUUID()));\n }, []);\n return id || innerId;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\", \"value\"],\n _excluded2 = [\"children\"];\nimport * as React from 'react';\nimport toArray from \"rc-util/es/Children/toArray\";\nfunction convertNodeToOption(node) {\n var _ref = node,\n key = _ref.key,\n _ref$props = _ref.props,\n children = _ref$props.children,\n value = _ref$props.value,\n restProps = _objectWithoutProperties(_ref$props, _excluded);\n return _objectSpread({\n key: key,\n value: value !== undefined ? value : key,\n children: children\n }, restProps);\n}\nexport function convertChildrenToData(nodes) {\n var optionOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return toArray(nodes).map(function (node, index) {\n if (! /*#__PURE__*/React.isValidElement(node) || !node.type) {\n return null;\n }\n var _ref2 = node,\n isSelectOptGroup = _ref2.type.isSelectOptGroup,\n key = _ref2.key,\n _ref2$props = _ref2.props,\n children = _ref2$props.children,\n restProps = _objectWithoutProperties(_ref2$props, _excluded2);\n if (optionOnly || !isSelectOptGroup) {\n return convertNodeToOption(node);\n }\n return _objectSpread(_objectSpread({\n key: \"__RC_SELECT_GRP__\".concat(key === null ? index : key, \"__\"),\n label: key\n }, restProps), {}, {\n options: convertChildrenToData(children)\n });\n }).filter(function (data) {\n return data;\n });\n}","import * as React from 'react';\nimport { convertChildrenToData } from \"../utils/legacyUtil\";\n\n/**\n * Parse `children` to `options` if `options` is not provided.\n * Then flatten the `options`.\n */\nvar useOptions = function useOptions(options, children, fieldNames, optionFilterProp, optionLabelProp) {\n return React.useMemo(function () {\n var mergedOptions = options;\n var childrenAsData = !options;\n if (childrenAsData) {\n mergedOptions = convertChildrenToData(children);\n }\n var valueOptions = new Map();\n var labelOptions = new Map();\n var setLabelOptions = function setLabelOptions(labelOptionsMap, option, key) {\n if (key && typeof key === 'string') {\n labelOptionsMap.set(option[key], option);\n }\n };\n var dig = function dig(optionList) {\n var isChildren = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n // for loop to speed up collection speed\n for (var i = 0; i < optionList.length; i += 1) {\n var option = optionList[i];\n if (!option[fieldNames.options] || isChildren) {\n valueOptions.set(option[fieldNames.value], option);\n setLabelOptions(labelOptions, option, fieldNames.label);\n // https://github.com/ant-design/ant-design/issues/35304\n setLabelOptions(labelOptions, option, optionFilterProp);\n setLabelOptions(labelOptions, option, optionLabelProp);\n } else {\n dig(option[fieldNames.options], true);\n }\n }\n };\n dig(mergedOptions);\n return {\n options: mergedOptions,\n valueOptions: valueOptions,\n labelOptions: labelOptions\n };\n }, [options, children, fieldNames, optionFilterProp, optionLabelProp]);\n};\nexport default useOptions;","import * as React from 'react';\n\n/**\n * Same as `React.useCallback` but always return a memoized function\n * but redirect to real function.\n */\nexport default function useRefFunc(callback) {\n var funcRef = React.useRef();\n funcRef.current = callback;\n var cacheFn = React.useCallback(function () {\n return funcRef.current.apply(funcRef, arguments);\n }, []);\n return cacheFn;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar _excluded = [\"id\", \"mode\", \"prefixCls\", \"backfill\", \"fieldNames\", \"inputValue\", \"searchValue\", \"onSearch\", \"autoClearSearchValue\", \"onSelect\", \"onDeselect\", \"dropdownMatchSelectWidth\", \"filterOption\", \"filterSort\", \"optionFilterProp\", \"optionLabelProp\", \"options\", \"optionRender\", \"children\", \"defaultActiveFirstOption\", \"menuItemSelectedIcon\", \"virtual\", \"direction\", \"listHeight\", \"listItemHeight\", \"labelRender\", \"value\", \"defaultValue\", \"labelInValue\", \"onChange\", \"maxCount\"];\n/**\n * To match accessibility requirement, we always provide an input in the component.\n * Other element will not set `tabIndex` to avoid `onBlur` sequence problem.\n * For focused select, we set `aria-live=\"polite\"` to update the accessibility content.\n *\n * ref:\n * - keyboard: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role#Keyboard_interactions\n *\n * New api:\n * - listHeight\n * - listItemHeight\n * - component\n *\n * Remove deprecated api:\n * - multiple\n * - tags\n * - combobox\n * - firstActiveValue\n * - dropdownMenuStyle\n * - openClassName (Not list in api)\n *\n * Update:\n * - `backfill` only support `combobox` mode\n * - `combobox` mode not support `labelInValue` since it's meaningless\n * - `getInputElement` only support `combobox` mode\n * - `onChange` return OptionData instead of ReactNode\n * - `filterOption` `onChange` `onSelect` accept OptionData instead of ReactNode\n * - `combobox` mode trigger `onChange` will get `undefined` if no `value` match in Option\n * - `combobox` mode not support `optionLabelProp`\n */\n\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport BaseSelect, { isMultiple } from \"./BaseSelect\";\nimport OptGroup from \"./OptGroup\";\nimport Option from \"./Option\";\nimport OptionList from \"./OptionList\";\nimport SelectContext from \"./SelectContext\";\nimport useCache from \"./hooks/useCache\";\nimport useFilterOptions from \"./hooks/useFilterOptions\";\nimport useId from \"./hooks/useId\";\nimport useOptions from \"./hooks/useOptions\";\nimport useRefFunc from \"./hooks/useRefFunc\";\nimport { hasValue, isComboNoValue, toArray } from \"./utils/commonUtil\";\nimport { fillFieldNames, flattenOptions, injectPropsWithOption } from \"./utils/valueUtil\";\nimport warningProps, { warningNullOptions } from \"./utils/warningPropsUtil\";\nvar OMIT_DOM_PROPS = ['inputValue'];\nfunction isRawValue(value) {\n return !value || _typeof(value) !== 'object';\n}\nvar Select = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var id = props.id,\n mode = props.mode,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-select' : _props$prefixCls,\n backfill = props.backfill,\n fieldNames = props.fieldNames,\n inputValue = props.inputValue,\n searchValue = props.searchValue,\n onSearch = props.onSearch,\n _props$autoClearSearc = props.autoClearSearchValue,\n autoClearSearchValue = _props$autoClearSearc === void 0 ? true : _props$autoClearSearc,\n onSelect = props.onSelect,\n onDeselect = props.onDeselect,\n _props$dropdownMatchS = props.dropdownMatchSelectWidth,\n dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS,\n filterOption = props.filterOption,\n filterSort = props.filterSort,\n optionFilterProp = props.optionFilterProp,\n optionLabelProp = props.optionLabelProp,\n options = props.options,\n optionRender = props.optionRender,\n children = props.children,\n defaultActiveFirstOption = props.defaultActiveFirstOption,\n menuItemSelectedIcon = props.menuItemSelectedIcon,\n virtual = props.virtual,\n direction = props.direction,\n _props$listHeight = props.listHeight,\n listHeight = _props$listHeight === void 0 ? 200 : _props$listHeight,\n _props$listItemHeight = props.listItemHeight,\n listItemHeight = _props$listItemHeight === void 0 ? 20 : _props$listItemHeight,\n labelRender = props.labelRender,\n value = props.value,\n defaultValue = props.defaultValue,\n labelInValue = props.labelInValue,\n onChange = props.onChange,\n maxCount = props.maxCount,\n restProps = _objectWithoutProperties(props, _excluded);\n var mergedId = useId(id);\n var multiple = isMultiple(mode);\n var childrenAsData = !!(!options && children);\n var mergedFilterOption = React.useMemo(function () {\n if (filterOption === undefined && mode === 'combobox') {\n return false;\n }\n return filterOption;\n }, [filterOption, mode]);\n\n // ========================= FieldNames =========================\n var mergedFieldNames = React.useMemo(function () {\n return fillFieldNames(fieldNames, childrenAsData);\n }, /* eslint-disable react-hooks/exhaustive-deps */\n [\n // We stringify fieldNames to avoid unnecessary re-renders.\n JSON.stringify(fieldNames), childrenAsData]\n /* eslint-enable react-hooks/exhaustive-deps */);\n\n // =========================== Search ===========================\n var _useMergedState = useMergedState('', {\n value: searchValue !== undefined ? searchValue : inputValue,\n postState: function postState(search) {\n return search || '';\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedSearchValue = _useMergedState2[0],\n setSearchValue = _useMergedState2[1];\n\n // =========================== Option ===========================\n var parsedOptions = useOptions(options, children, mergedFieldNames, optionFilterProp, optionLabelProp);\n var valueOptions = parsedOptions.valueOptions,\n labelOptions = parsedOptions.labelOptions,\n mergedOptions = parsedOptions.options;\n\n // ========================= Wrap Value =========================\n var convert2LabelValues = React.useCallback(function (draftValues) {\n // Convert to array\n var valueList = toArray(draftValues);\n\n // Convert to labelInValue type\n return valueList.map(function (val) {\n var rawValue;\n var rawLabel;\n var rawKey;\n var rawDisabled;\n var rawTitle;\n\n // Fill label & value\n if (isRawValue(val)) {\n rawValue = val;\n } else {\n var _val$value;\n rawKey = val.key;\n rawLabel = val.label;\n rawValue = (_val$value = val.value) !== null && _val$value !== void 0 ? _val$value : rawKey;\n }\n var option = valueOptions.get(rawValue);\n if (option) {\n var _option$key;\n // Fill missing props\n if (rawLabel === undefined) rawLabel = option === null || option === void 0 ? void 0 : option[optionLabelProp || mergedFieldNames.label];\n if (rawKey === undefined) rawKey = (_option$key = option === null || option === void 0 ? void 0 : option.key) !== null && _option$key !== void 0 ? _option$key : rawValue;\n rawDisabled = option === null || option === void 0 ? void 0 : option.disabled;\n rawTitle = option === null || option === void 0 ? void 0 : option.title;\n\n // Warning if label not same as provided\n if (process.env.NODE_ENV !== 'production' && !optionLabelProp) {\n var optionLabel = option === null || option === void 0 ? void 0 : option[mergedFieldNames.label];\n if (optionLabel !== undefined && ! /*#__PURE__*/React.isValidElement(optionLabel) && ! /*#__PURE__*/React.isValidElement(rawLabel) && optionLabel !== rawLabel) {\n warning(false, '`label` of `value` is not same as `label` in Select options.');\n }\n }\n }\n return {\n label: rawLabel,\n value: rawValue,\n key: rawKey,\n disabled: rawDisabled,\n title: rawTitle\n };\n });\n }, [mergedFieldNames, optionLabelProp, valueOptions]);\n\n // =========================== Values ===========================\n var _useMergedState3 = useMergedState(defaultValue, {\n value: value\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n internalValue = _useMergedState4[0],\n setInternalValue = _useMergedState4[1];\n\n // Merged value with LabelValueType\n var rawLabeledValues = React.useMemo(function () {\n var _values$;\n var newInternalValue = multiple && internalValue === null ? [] : internalValue;\n var values = convert2LabelValues(newInternalValue);\n\n // combobox no need save value when it's no value (exclude value equal 0)\n if (mode === 'combobox' && isComboNoValue((_values$ = values[0]) === null || _values$ === void 0 ? void 0 : _values$.value)) {\n return [];\n }\n return values;\n }, [internalValue, convert2LabelValues, mode, multiple]);\n\n // Fill label with cache to avoid option remove\n var _useCache = useCache(rawLabeledValues, valueOptions),\n _useCache2 = _slicedToArray(_useCache, 2),\n mergedValues = _useCache2[0],\n getMixedOption = _useCache2[1];\n var displayValues = React.useMemo(function () {\n // `null` need show as placeholder instead\n // https://github.com/ant-design/ant-design/issues/25057\n if (!mode && mergedValues.length === 1) {\n var firstValue = mergedValues[0];\n if (firstValue.value === null && (firstValue.label === null || firstValue.label === undefined)) {\n return [];\n }\n }\n return mergedValues.map(function (item) {\n var _ref;\n return _objectSpread(_objectSpread({}, item), {}, {\n label: (_ref = typeof labelRender === 'function' ? labelRender(item) : item.label) !== null && _ref !== void 0 ? _ref : item.value\n });\n });\n }, [mode, mergedValues, labelRender]);\n\n /** Convert `displayValues` to raw value type set */\n var rawValues = React.useMemo(function () {\n return new Set(mergedValues.map(function (val) {\n return val.value;\n }));\n }, [mergedValues]);\n React.useEffect(function () {\n if (mode === 'combobox') {\n var _mergedValues$;\n var strValue = (_mergedValues$ = mergedValues[0]) === null || _mergedValues$ === void 0 ? void 0 : _mergedValues$.value;\n setSearchValue(hasValue(strValue) ? String(strValue) : '');\n }\n }, [mergedValues]);\n\n // ======================= Display Option =======================\n // Create a placeholder item if not exist in `options`\n var createTagOption = useRefFunc(function (val, label) {\n var mergedLabel = label !== null && label !== void 0 ? label : val;\n return _defineProperty(_defineProperty({}, mergedFieldNames.value, val), mergedFieldNames.label, mergedLabel);\n });\n\n // Fill tag as option if mode is `tags`\n var filledTagOptions = React.useMemo(function () {\n if (mode !== 'tags') {\n return mergedOptions;\n }\n\n // >>> Tag mode\n var cloneOptions = _toConsumableArray(mergedOptions);\n\n // Check if value exist in options (include new patch item)\n var existOptions = function existOptions(val) {\n return valueOptions.has(val);\n };\n\n // Fill current value as option\n _toConsumableArray(mergedValues).sort(function (a, b) {\n return a.value < b.value ? -1 : 1;\n }).forEach(function (item) {\n var val = item.value;\n if (!existOptions(val)) {\n cloneOptions.push(createTagOption(val, item.label));\n }\n });\n return cloneOptions;\n }, [createTagOption, mergedOptions, valueOptions, mergedValues, mode]);\n var filteredOptions = useFilterOptions(filledTagOptions, mergedFieldNames, mergedSearchValue, mergedFilterOption, optionFilterProp);\n\n // Fill options with search value if needed\n var filledSearchOptions = React.useMemo(function () {\n if (mode !== 'tags' || !mergedSearchValue || filteredOptions.some(function (item) {\n return item[optionFilterProp || 'value'] === mergedSearchValue;\n })) {\n return filteredOptions;\n }\n // ignore when search value equal select input value\n if (filteredOptions.some(function (item) {\n return item[mergedFieldNames.value] === mergedSearchValue;\n })) {\n return filteredOptions;\n }\n // Fill search value as option\n return [createTagOption(mergedSearchValue)].concat(_toConsumableArray(filteredOptions));\n }, [createTagOption, optionFilterProp, mode, filteredOptions, mergedSearchValue, mergedFieldNames]);\n var orderedFilteredOptions = React.useMemo(function () {\n if (!filterSort) {\n return filledSearchOptions;\n }\n return _toConsumableArray(filledSearchOptions).sort(function (a, b) {\n return filterSort(a, b, {\n searchValue: mergedSearchValue\n });\n });\n }, [filledSearchOptions, filterSort, mergedSearchValue]);\n var displayOptions = React.useMemo(function () {\n return flattenOptions(orderedFilteredOptions, {\n fieldNames: mergedFieldNames,\n childrenAsData: childrenAsData\n });\n }, [orderedFilteredOptions, mergedFieldNames, childrenAsData]);\n\n // =========================== Change ===========================\n var triggerChange = function triggerChange(values) {\n var labeledValues = convert2LabelValues(values);\n setInternalValue(labeledValues);\n if (onChange && (\n // Trigger event only when value changed\n labeledValues.length !== mergedValues.length || labeledValues.some(function (newVal, index) {\n var _mergedValues$index;\n return ((_mergedValues$index = mergedValues[index]) === null || _mergedValues$index === void 0 ? void 0 : _mergedValues$index.value) !== (newVal === null || newVal === void 0 ? void 0 : newVal.value);\n }))) {\n var returnValues = labelInValue ? labeledValues : labeledValues.map(function (v) {\n return v.value;\n });\n var returnOptions = labeledValues.map(function (v) {\n return injectPropsWithOption(getMixedOption(v.value));\n });\n onChange(\n // Value\n multiple ? returnValues : returnValues[0],\n // Option\n multiple ? returnOptions : returnOptions[0]);\n }\n };\n\n // ======================= Accessibility ========================\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeValue = _React$useState2[0],\n setActiveValue = _React$useState2[1];\n var _React$useState3 = React.useState(0),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n accessibilityIndex = _React$useState4[0],\n setAccessibilityIndex = _React$useState4[1];\n var mergedDefaultActiveFirstOption = defaultActiveFirstOption !== undefined ? defaultActiveFirstOption : mode !== 'combobox';\n var onActiveValue = React.useCallback(function (active, index) {\n var _ref3 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},\n _ref3$source = _ref3.source,\n source = _ref3$source === void 0 ? 'keyboard' : _ref3$source;\n setAccessibilityIndex(index);\n if (backfill && mode === 'combobox' && active !== null && source === 'keyboard') {\n setActiveValue(String(active));\n }\n }, [backfill, mode]);\n\n // ========================= OptionList =========================\n var triggerSelect = function triggerSelect(val, selected, type) {\n var getSelectEnt = function getSelectEnt() {\n var _option$key2;\n var option = getMixedOption(val);\n return [labelInValue ? {\n label: option === null || option === void 0 ? void 0 : option[mergedFieldNames.label],\n value: val,\n key: (_option$key2 = option === null || option === void 0 ? void 0 : option.key) !== null && _option$key2 !== void 0 ? _option$key2 : val\n } : val, injectPropsWithOption(option)];\n };\n if (selected && onSelect) {\n var _getSelectEnt = getSelectEnt(),\n _getSelectEnt2 = _slicedToArray(_getSelectEnt, 2),\n wrappedValue = _getSelectEnt2[0],\n _option = _getSelectEnt2[1];\n onSelect(wrappedValue, _option);\n } else if (!selected && onDeselect && type !== 'clear') {\n var _getSelectEnt3 = getSelectEnt(),\n _getSelectEnt4 = _slicedToArray(_getSelectEnt3, 2),\n _wrappedValue = _getSelectEnt4[0],\n _option2 = _getSelectEnt4[1];\n onDeselect(_wrappedValue, _option2);\n }\n };\n\n // Used for OptionList selection\n var onInternalSelect = useRefFunc(function (val, info) {\n var cloneValues;\n\n // Single mode always trigger select only with option list\n var mergedSelect = multiple ? info.selected : true;\n if (mergedSelect) {\n cloneValues = multiple ? [].concat(_toConsumableArray(mergedValues), [val]) : [val];\n } else {\n cloneValues = mergedValues.filter(function (v) {\n return v.value !== val;\n });\n }\n triggerChange(cloneValues);\n triggerSelect(val, mergedSelect);\n\n // Clean search value if single or configured\n if (mode === 'combobox') {\n // setSearchValue(String(val));\n setActiveValue('');\n } else if (!isMultiple || autoClearSearchValue) {\n setSearchValue('');\n setActiveValue('');\n }\n });\n\n // ======================= Display Change =======================\n // BaseSelect display values change\n var onDisplayValuesChange = function onDisplayValuesChange(nextValues, info) {\n triggerChange(nextValues);\n var type = info.type,\n values = info.values;\n if (type === 'remove' || type === 'clear') {\n values.forEach(function (item) {\n triggerSelect(item.value, false, type);\n });\n }\n };\n\n // =========================== Search ===========================\n var onInternalSearch = function onInternalSearch(searchText, info) {\n setSearchValue(searchText);\n setActiveValue(null);\n\n // [Submit] Tag mode should flush input\n if (info.source === 'submit') {\n var formatted = (searchText || '').trim();\n // prevent empty tags from appearing when you click the Enter button\n if (formatted) {\n var newRawValues = Array.from(new Set([].concat(_toConsumableArray(rawValues), [formatted])));\n triggerChange(newRawValues);\n triggerSelect(formatted, true);\n setSearchValue('');\n }\n return;\n }\n if (info.source !== 'blur') {\n if (mode === 'combobox') {\n triggerChange(searchText);\n }\n onSearch === null || onSearch === void 0 || onSearch(searchText);\n }\n };\n var onInternalSearchSplit = function onInternalSearchSplit(words) {\n var patchValues = words;\n if (mode !== 'tags') {\n patchValues = words.map(function (word) {\n var opt = labelOptions.get(word);\n return opt === null || opt === void 0 ? void 0 : opt.value;\n }).filter(function (val) {\n return val !== undefined;\n });\n }\n var newRawValues = Array.from(new Set([].concat(_toConsumableArray(rawValues), _toConsumableArray(patchValues))));\n triggerChange(newRawValues);\n newRawValues.forEach(function (newRawValue) {\n triggerSelect(newRawValue, true);\n });\n };\n\n // ========================== Context ===========================\n var selectContext = React.useMemo(function () {\n var realVirtual = virtual !== false && dropdownMatchSelectWidth !== false;\n return _objectSpread(_objectSpread({}, parsedOptions), {}, {\n flattenOptions: displayOptions,\n onActiveValue: onActiveValue,\n defaultActiveFirstOption: mergedDefaultActiveFirstOption,\n onSelect: onInternalSelect,\n menuItemSelectedIcon: menuItemSelectedIcon,\n rawValues: rawValues,\n fieldNames: mergedFieldNames,\n virtual: realVirtual,\n direction: direction,\n listHeight: listHeight,\n listItemHeight: listItemHeight,\n childrenAsData: childrenAsData,\n maxCount: maxCount,\n optionRender: optionRender\n });\n }, [maxCount, parsedOptions, displayOptions, onActiveValue, mergedDefaultActiveFirstOption, onInternalSelect, menuItemSelectedIcon, rawValues, mergedFieldNames, virtual, dropdownMatchSelectWidth, direction, listHeight, listItemHeight, childrenAsData, optionRender]);\n\n // ========================== Warning ===========================\n if (process.env.NODE_ENV !== 'production') {\n warningProps(props);\n warningNullOptions(mergedOptions, mergedFieldNames);\n }\n\n // ==============================================================\n // == Render ==\n // ==============================================================\n return /*#__PURE__*/React.createElement(SelectContext.Provider, {\n value: selectContext\n }, /*#__PURE__*/React.createElement(BaseSelect, _extends({}, restProps, {\n // >>> MISC\n id: mergedId,\n prefixCls: prefixCls,\n ref: ref,\n omitDomProps: OMIT_DOM_PROPS,\n mode: mode\n // >>> Values\n ,\n displayValues: displayValues,\n onDisplayValuesChange: onDisplayValuesChange\n // >>> Trigger\n ,\n direction: direction\n // >>> Search\n ,\n searchValue: mergedSearchValue,\n onSearch: onInternalSearch,\n autoClearSearchValue: autoClearSearchValue,\n onSearchSplit: onInternalSearchSplit,\n dropdownMatchSelectWidth: dropdownMatchSelectWidth\n // >>> OptionList\n ,\n OptionList: OptionList,\n emptyOptions: !displayOptions.length\n // >>> Accessibility\n ,\n activeValue: activeValue,\n activeDescendantId: \"\".concat(mergedId, \"_list_\").concat(accessibilityIndex)\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Select.displayName = 'Select';\n}\nvar TypedSelect = Select;\nTypedSelect.Option = Option;\nTypedSelect.OptGroup = OptGroup;\nexport default TypedSelect;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\n/**\n * Cache `value` related LabeledValue & options.\n */\nexport default (function (labeledValues, valueOptions) {\n var cacheRef = React.useRef({\n values: new Map(),\n options: new Map()\n });\n var filledLabeledValues = React.useMemo(function () {\n var _cacheRef$current = cacheRef.current,\n prevValueCache = _cacheRef$current.values,\n prevOptionCache = _cacheRef$current.options;\n\n // Fill label by cache\n var patchedValues = labeledValues.map(function (item) {\n if (item.label === undefined) {\n var _prevValueCache$get;\n return _objectSpread(_objectSpread({}, item), {}, {\n label: (_prevValueCache$get = prevValueCache.get(item.value)) === null || _prevValueCache$get === void 0 ? void 0 : _prevValueCache$get.label\n });\n }\n return item;\n });\n\n // Refresh cache\n var valueCache = new Map();\n var optionCache = new Map();\n patchedValues.forEach(function (item) {\n valueCache.set(item.value, item);\n optionCache.set(item.value, valueOptions.get(item.value) || prevOptionCache.get(item.value));\n });\n cacheRef.current.values = valueCache;\n cacheRef.current.options = optionCache;\n return patchedValues;\n }, [labeledValues, valueOptions]);\n var getOption = React.useCallback(function (val) {\n return valueOptions.get(val) || cacheRef.current.options.get(val);\n }, [valueOptions]);\n return [filledLabeledValues, getOption];\n});","import Select from \"./Select\";\nimport Option from \"./Option\";\nimport OptGroup from \"./OptGroup\";\nimport BaseSelect from \"./BaseSelect\";\nimport useBaseProps from \"./hooks/useBaseProps\";\nexport { Option, OptGroup, BaseSelect, useBaseProps };\nexport default Select;","const getBuiltInPlacements = popupOverflow => {\n const htmlRegion = popupOverflow === 'scroll' ? 'scroll' : 'visible';\n const sharedConfig = {\n overflow: {\n adjustX: true,\n adjustY: true,\n shiftY: true\n },\n htmlRegion,\n dynamicInset: true\n };\n return {\n bottomLeft: Object.assign(Object.assign({}, sharedConfig), {\n points: ['tl', 'bl'],\n offset: [0, 4]\n }),\n bottomRight: Object.assign(Object.assign({}, sharedConfig), {\n points: ['tr', 'br'],\n offset: [0, 4]\n }),\n topLeft: Object.assign(Object.assign({}, sharedConfig), {\n points: ['bl', 'tl'],\n offset: [0, -4]\n }),\n topRight: Object.assign(Object.assign({}, sharedConfig), {\n points: ['br', 'tr'],\n offset: [0, -4]\n })\n };\n};\nfunction mergedBuiltinPlacements(buildInPlacements, popupOverflow) {\n return buildInPlacements || getBuiltInPlacements(popupOverflow);\n}\nexport default mergedBuiltinPlacements;","import { resetComponent, textEllipsis } from '../../style';\nimport { initMoveMotion, initSlideMotion, slideDownIn, slideDownOut, slideUpIn, slideUpOut } from '../../style/motion';\nconst genItemStyle = token => {\n const {\n optionHeight,\n optionFontSize,\n optionLineHeight,\n optionPadding\n } = token;\n return {\n position: 'relative',\n display: 'block',\n minHeight: optionHeight,\n padding: optionPadding,\n color: token.colorText,\n fontWeight: 'normal',\n fontSize: optionFontSize,\n lineHeight: optionLineHeight,\n boxSizing: 'border-box'\n };\n};\nconst genSingleStyle = token => {\n const {\n antCls,\n componentCls\n } = token;\n const selectItemCls = `${componentCls}-item`;\n const slideUpEnterActive = `&${antCls}-slide-up-enter${antCls}-slide-up-enter-active`;\n const slideUpAppearActive = `&${antCls}-slide-up-appear${antCls}-slide-up-appear-active`;\n const slideUpLeaveActive = `&${antCls}-slide-up-leave${antCls}-slide-up-leave-active`;\n const dropdownPlacementCls = `${componentCls}-dropdown-placement-`;\n return [{\n [`${componentCls}-dropdown`]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'absolute',\n top: -9999,\n zIndex: token.zIndexPopup,\n boxSizing: 'border-box',\n padding: token.paddingXXS,\n overflow: 'hidden',\n fontSize: token.fontSize,\n // Fix select render lag of long text in chrome\n // https://github.com/ant-design/ant-design/issues/11456\n // https://github.com/ant-design/ant-design/issues/11843\n fontVariant: 'initial',\n backgroundColor: token.colorBgElevated,\n borderRadius: token.borderRadiusLG,\n outline: 'none',\n boxShadow: token.boxShadowSecondary,\n [`\n ${slideUpEnterActive}${dropdownPlacementCls}bottomLeft,\n ${slideUpAppearActive}${dropdownPlacementCls}bottomLeft\n `]: {\n animationName: slideUpIn\n },\n [`\n ${slideUpEnterActive}${dropdownPlacementCls}topLeft,\n ${slideUpAppearActive}${dropdownPlacementCls}topLeft,\n ${slideUpEnterActive}${dropdownPlacementCls}topRight,\n ${slideUpAppearActive}${dropdownPlacementCls}topRight\n `]: {\n animationName: slideDownIn\n },\n [`${slideUpLeaveActive}${dropdownPlacementCls}bottomLeft`]: {\n animationName: slideUpOut\n },\n [`\n ${slideUpLeaveActive}${dropdownPlacementCls}topLeft,\n ${slideUpLeaveActive}${dropdownPlacementCls}topRight\n `]: {\n animationName: slideDownOut\n },\n '&-hidden': {\n display: 'none'\n },\n [selectItemCls]: Object.assign(Object.assign({}, genItemStyle(token)), {\n cursor: 'pointer',\n transition: `background ${token.motionDurationSlow} ease`,\n borderRadius: token.borderRadiusSM,\n // =========== Group ============\n '&-group': {\n color: token.colorTextDescription,\n fontSize: token.fontSizeSM,\n cursor: 'default'\n },\n // =========== Option ===========\n '&-option': {\n display: 'flex',\n '&-content': Object.assign({\n flex: 'auto'\n }, textEllipsis),\n '&-state': {\n flex: 'none',\n display: 'flex',\n alignItems: 'center'\n },\n [`&-active:not(${selectItemCls}-option-disabled)`]: {\n backgroundColor: token.optionActiveBg\n },\n [`&-selected:not(${selectItemCls}-option-disabled)`]: {\n color: token.optionSelectedColor,\n fontWeight: token.optionSelectedFontWeight,\n backgroundColor: token.optionSelectedBg,\n [`${selectItemCls}-option-state`]: {\n color: token.colorPrimary\n },\n [`&:has(+ ${selectItemCls}-option-selected:not(${selectItemCls}-option-disabled))`]: {\n borderEndStartRadius: 0,\n borderEndEndRadius: 0,\n [`& + ${selectItemCls}-option-selected:not(${selectItemCls}-option-disabled)`]: {\n borderStartStartRadius: 0,\n borderStartEndRadius: 0\n }\n }\n },\n '&-disabled': {\n [`&${selectItemCls}-option-selected`]: {\n backgroundColor: token.colorBgContainerDisabled\n },\n color: token.colorTextDisabled,\n cursor: 'not-allowed'\n },\n '&-grouped': {\n paddingInlineStart: token.calc(token.controlPaddingHorizontal).mul(2).equal()\n }\n },\n '&-empty': Object.assign(Object.assign({}, genItemStyle(token)), {\n color: token.colorTextDisabled\n })\n }),\n // =========================== RTL ===========================\n '&-rtl': {\n direction: 'rtl'\n }\n })\n },\n // Follow code may reuse in other components\n initSlideMotion(token, 'slide-up'), initSlideMotion(token, 'slide-down'), initMoveMotion(token, 'move-up'), initMoveMotion(token, 'move-down')];\n};\nexport default genSingleStyle;","import { unit } from '@ant-design/cssinjs';\nimport { resetComponent } from '../../style';\nimport { mergeToken } from '../../theme/internal';\nfunction genSizeStyle(token, suffix) {\n const {\n componentCls,\n inputPaddingHorizontalBase,\n borderRadius\n } = token;\n const selectHeightWithoutBorder = token.calc(token.controlHeight).sub(token.calc(token.lineWidth).mul(2)).equal();\n const suffixCls = suffix ? `${componentCls}-${suffix}` : '';\n return {\n [`${componentCls}-single${suffixCls}`]: {\n fontSize: token.fontSize,\n height: token.controlHeight,\n // ========================= Selector =========================\n [`${componentCls}-selector`]: Object.assign(Object.assign({}, resetComponent(token, true)), {\n display: 'flex',\n borderRadius,\n [`${componentCls}-selection-search`]: {\n position: 'absolute',\n top: 0,\n insetInlineStart: inputPaddingHorizontalBase,\n insetInlineEnd: inputPaddingHorizontalBase,\n bottom: 0,\n '&-input': {\n width: '100%',\n WebkitAppearance: 'textfield'\n }\n },\n [`\n ${componentCls}-selection-item,\n ${componentCls}-selection-placeholder\n `]: {\n padding: 0,\n lineHeight: unit(selectHeightWithoutBorder),\n transition: `all ${token.motionDurationSlow}, visibility 0s`,\n alignSelf: 'center'\n },\n [`${componentCls}-selection-placeholder`]: {\n transition: 'none',\n pointerEvents: 'none'\n },\n // For common baseline align\n [['&:after', /* For '' value baseline align */\n `${componentCls}-selection-item:empty:after`, /* For undefined value baseline align */\n `${componentCls}-selection-placeholder:empty:after`].join(',')]: {\n display: 'inline-block',\n width: 0,\n visibility: 'hidden',\n content: '\"\\\\a0\"'\n }\n }),\n [`\n &${componentCls}-show-arrow ${componentCls}-selection-item,\n &${componentCls}-show-arrow ${componentCls}-selection-placeholder\n `]: {\n paddingInlineEnd: token.showArrowPaddingInlineEnd\n },\n // Opacity selection if open\n [`&${componentCls}-open ${componentCls}-selection-item`]: {\n color: token.colorTextPlaceholder\n },\n // ========================== Input ==========================\n // We only change the style of non-customize input which is only support by `combobox` mode.\n // Not customize\n [`&:not(${componentCls}-customize-input)`]: {\n [`${componentCls}-selector`]: {\n width: '100%',\n height: '100%',\n padding: `0 ${unit(inputPaddingHorizontalBase)}`,\n [`${componentCls}-selection-search-input`]: {\n height: selectHeightWithoutBorder\n },\n '&:after': {\n lineHeight: unit(selectHeightWithoutBorder)\n }\n }\n },\n [`&${componentCls}-customize-input`]: {\n [`${componentCls}-selector`]: {\n '&:after': {\n display: 'none'\n },\n [`${componentCls}-selection-search`]: {\n position: 'static',\n width: '100%'\n },\n [`${componentCls}-selection-placeholder`]: {\n position: 'absolute',\n insetInlineStart: 0,\n insetInlineEnd: 0,\n padding: `0 ${unit(inputPaddingHorizontalBase)}`,\n '&:after': {\n display: 'none'\n }\n }\n }\n }\n }\n };\n}\nexport default function genSingleStyle(token) {\n const {\n componentCls\n } = token;\n const inputPaddingHorizontalSM = token.calc(token.controlPaddingHorizontalSM).sub(token.lineWidth).equal();\n return [genSizeStyle(token),\n // ======================== Small ========================\n // Shared\n genSizeStyle(mergeToken(token, {\n controlHeight: token.controlHeightSM,\n borderRadius: token.borderRadiusSM\n }), 'sm'),\n // padding\n {\n [`${componentCls}-single${componentCls}-sm`]: {\n [`&:not(${componentCls}-customize-input)`]: {\n [`${componentCls}-selection-search`]: {\n insetInlineStart: inputPaddingHorizontalSM,\n insetInlineEnd: inputPaddingHorizontalSM\n },\n [`${componentCls}-selector`]: {\n padding: `0 ${unit(inputPaddingHorizontalSM)}`\n },\n // With arrow should provides `padding-right` to show the arrow\n [`&${componentCls}-show-arrow ${componentCls}-selection-search`]: {\n insetInlineEnd: token.calc(inputPaddingHorizontalSM).add(token.calc(token.fontSize).mul(1.5)).equal()\n },\n [`\n &${componentCls}-show-arrow ${componentCls}-selection-item,\n &${componentCls}-show-arrow ${componentCls}-selection-placeholder\n `]: {\n paddingInlineEnd: token.calc(token.fontSize).mul(1.5).equal()\n }\n }\n }\n },\n // ======================== Large ========================\n // Shared\n genSizeStyle(mergeToken(token, {\n controlHeight: token.singleItemHeightLG,\n fontSize: token.fontSizeLG,\n borderRadius: token.borderRadiusLG\n }), 'lg')];\n}","export const prepareComponentToken = token => {\n const {\n fontSize,\n lineHeight,\n lineWidth,\n controlHeight,\n controlHeightSM,\n controlHeightLG,\n paddingXXS,\n controlPaddingHorizontal,\n zIndexPopupBase,\n colorText,\n fontWeightStrong,\n controlItemBgActive,\n controlItemBgHover,\n colorBgContainer,\n colorFillSecondary,\n colorBgContainerDisabled,\n colorTextDisabled\n } = token;\n // Item height default use `controlHeight - 2 * paddingXXS`,\n // but some case `paddingXXS=0`.\n // Let's fallback it.\n const dblPaddingXXS = paddingXXS * 2;\n const dblLineWidth = lineWidth * 2;\n const multipleItemHeight = Math.min(controlHeight - dblPaddingXXS, controlHeight - dblLineWidth);\n const multipleItemHeightSM = Math.min(controlHeightSM - dblPaddingXXS, controlHeightSM - dblLineWidth);\n const multipleItemHeightLG = Math.min(controlHeightLG - dblPaddingXXS, controlHeightLG - dblLineWidth);\n // FIXED_ITEM_MARGIN is a hardcode calculation since calc not support rounding\n const INTERNAL_FIXED_ITEM_MARGIN = Math.floor(paddingXXS / 2);\n return {\n INTERNAL_FIXED_ITEM_MARGIN,\n zIndexPopup: zIndexPopupBase + 50,\n optionSelectedColor: colorText,\n optionSelectedFontWeight: fontWeightStrong,\n optionSelectedBg: controlItemBgActive,\n optionActiveBg: controlItemBgHover,\n optionPadding: `${(controlHeight - fontSize * lineHeight) / 2}px ${controlPaddingHorizontal}px`,\n optionFontSize: fontSize,\n optionLineHeight: lineHeight,\n optionHeight: controlHeight,\n selectorBg: colorBgContainer,\n clearBg: colorBgContainer,\n singleItemHeightLG: controlHeightLG,\n multipleItemBg: colorFillSecondary,\n multipleItemBorderColor: 'transparent',\n multipleItemHeight,\n multipleItemHeightSM,\n multipleItemHeightLG,\n multipleSelectorBgDisabled: colorBgContainerDisabled,\n multipleItemColorDisabled: colorTextDisabled,\n multipleItemBorderColorDisabled: 'transparent',\n showArrowPaddingInlineEnd: Math.ceil(token.fontSize * 1.25)\n };\n};","import { unit } from '@ant-design/cssinjs';\n// =====================================================\n// == Outlined ==\n// =====================================================\nconst genBaseOutlinedStyle = (token, options) => {\n const {\n componentCls,\n antCls,\n controlOutlineWidth\n } = token;\n return {\n [`&:not(${componentCls}-customize-input) ${componentCls}-selector`]: {\n border: `${unit(token.lineWidth)} ${token.lineType} ${options.borderColor}`,\n background: token.selectorBg\n },\n [`&:not(${componentCls}-disabled):not(${componentCls}-customize-input):not(${antCls}-pagination-size-changer)`]: {\n [`&:hover ${componentCls}-selector`]: {\n borderColor: options.hoverBorderHover\n },\n [`${componentCls}-focused& ${componentCls}-selector`]: {\n borderColor: options.activeBorderColor,\n boxShadow: `0 0 0 ${unit(controlOutlineWidth)} ${options.activeShadowColor}`,\n outline: 0\n }\n }\n };\n};\nconst genOutlinedStatusStyle = (token, options) => ({\n [`&${token.componentCls}-status-${options.status}`]: Object.assign({}, genBaseOutlinedStyle(token, options))\n});\nconst genOutlinedStyle = token => ({\n '&-outlined': Object.assign(Object.assign(Object.assign(Object.assign({}, genBaseOutlinedStyle(token, {\n borderColor: token.colorBorder,\n hoverBorderHover: token.colorPrimaryHover,\n activeBorderColor: token.colorPrimary,\n activeShadowColor: token.controlOutline\n })), genOutlinedStatusStyle(token, {\n status: 'error',\n borderColor: token.colorError,\n hoverBorderHover: token.colorErrorHover,\n activeBorderColor: token.colorError,\n activeShadowColor: token.colorErrorOutline\n })), genOutlinedStatusStyle(token, {\n status: 'warning',\n borderColor: token.colorWarning,\n hoverBorderHover: token.colorWarningHover,\n activeBorderColor: token.colorWarning,\n activeShadowColor: token.colorWarningOutline\n })), {\n [`&${token.componentCls}-disabled`]: {\n [`&:not(${token.componentCls}-customize-input) ${token.componentCls}-selector`]: {\n background: token.colorBgContainerDisabled,\n color: token.colorTextDisabled\n }\n },\n [`&${token.componentCls}-multiple ${token.componentCls}-selection-item`]: {\n background: token.multipleItemBg,\n border: `${unit(token.lineWidth)} ${token.lineType} ${token.multipleItemBorderColor}`\n }\n })\n});\n// =====================================================\n// == Filled ==\n// =====================================================\nconst genBaseFilledStyle = (token, options) => {\n const {\n componentCls,\n antCls\n } = token;\n return {\n [`&:not(${componentCls}-customize-input) ${componentCls}-selector`]: {\n background: options.bg,\n border: `${unit(token.lineWidth)} ${token.lineType} transparent`,\n color: options.color\n },\n [`&:not(${componentCls}-disabled):not(${componentCls}-customize-input):not(${antCls}-pagination-size-changer)`]: {\n [`&:hover ${componentCls}-selector`]: {\n background: options.hoverBg\n },\n [`${componentCls}-focused& ${componentCls}-selector`]: {\n background: token.selectorBg,\n borderColor: options.activeBorderColor,\n outline: 0\n }\n }\n };\n};\nconst genFilledStatusStyle = (token, options) => ({\n [`&${token.componentCls}-status-${options.status}`]: Object.assign({}, genBaseFilledStyle(token, options))\n});\nconst genFilledStyle = token => ({\n '&-filled': Object.assign(Object.assign(Object.assign(Object.assign({}, genBaseFilledStyle(token, {\n bg: token.colorFillTertiary,\n hoverBg: token.colorFillSecondary,\n activeBorderColor: token.colorPrimary,\n color: token.colorText\n })), genFilledStatusStyle(token, {\n status: 'error',\n bg: token.colorErrorBg,\n hoverBg: token.colorErrorBgHover,\n activeBorderColor: token.colorError,\n color: token.colorError\n })), genFilledStatusStyle(token, {\n status: 'warning',\n bg: token.colorWarningBg,\n hoverBg: token.colorWarningBgHover,\n activeBorderColor: token.colorWarning,\n color: token.colorWarning\n })), {\n [`&${token.componentCls}-disabled`]: {\n [`&:not(${token.componentCls}-customize-input) ${token.componentCls}-selector`]: {\n borderColor: token.colorBorder,\n background: token.colorBgContainerDisabled,\n color: token.colorTextDisabled\n }\n },\n [`&${token.componentCls}-multiple ${token.componentCls}-selection-item`]: {\n background: token.colorBgContainer,\n border: `${unit(token.lineWidth)} ${token.lineType} ${token.colorSplit}`\n }\n })\n});\n// =====================================================\n// == Borderless ==\n// =====================================================\nconst genBorderlessStyle = token => ({\n '&-borderless': {\n [`${token.componentCls}-selector`]: {\n background: 'transparent',\n borderColor: 'transparent'\n },\n [`&${token.componentCls}-disabled`]: {\n [`&:not(${token.componentCls}-customize-input) ${token.componentCls}-selector`]: {\n color: token.colorTextDisabled\n }\n },\n [`&${token.componentCls}-multiple ${token.componentCls}-selection-item`]: {\n background: token.multipleItemBg,\n border: `${unit(token.lineWidth)} ${token.lineType} ${token.multipleItemBorderColor}`\n },\n // Status\n [`&${token.componentCls}-status-error`]: {\n [`${token.componentCls}-selection-item`]: {\n color: token.colorError\n }\n },\n [`&${token.componentCls}-status-warning`]: {\n [`${token.componentCls}-selection-item`]: {\n color: token.colorWarning\n }\n }\n }\n});\nconst genVariantsStyle = token => ({\n [token.componentCls]: Object.assign(Object.assign(Object.assign({}, genOutlinedStyle(token)), genFilledStyle(token)), genBorderlessStyle(token))\n});\nexport default genVariantsStyle;","import { resetComponent, resetIcon, textEllipsis } from '../../style';\nimport { genCompactItemStyle } from '../../style/compact-item';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\nimport genDropdownStyle from './dropdown';\nimport genMultipleStyle from './multiple';\nimport genSingleStyle from './single';\nimport { prepareComponentToken } from './token';\nimport genVariantsStyle from './variants';\n// ============================= Selector =============================\nconst genSelectorStyle = token => {\n const {\n componentCls\n } = token;\n return {\n position: 'relative',\n transition: `all ${token.motionDurationMid} ${token.motionEaseInOut}`,\n input: {\n cursor: 'pointer'\n },\n [`${componentCls}-show-search&`]: {\n cursor: 'text',\n input: {\n cursor: 'auto',\n color: 'inherit',\n height: '100%'\n }\n },\n [`${componentCls}-disabled&`]: {\n cursor: 'not-allowed',\n input: {\n cursor: 'not-allowed'\n }\n }\n };\n};\n// ============================== Styles ==============================\n// /* Reset search input style */\nconst getSearchInputWithoutBorderStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [`${componentCls}-selection-search-input`]: {\n margin: 0,\n padding: 0,\n background: 'transparent',\n border: 'none',\n outline: 'none',\n appearance: 'none',\n fontFamily: 'inherit',\n '&::-webkit-search-cancel-button': {\n display: 'none',\n '-webkit-appearance': 'none'\n }\n }\n };\n};\n// =============================== Base ===============================\nconst genBaseStyle = token => {\n const {\n antCls,\n componentCls,\n inputPaddingHorizontalBase,\n iconCls\n } = token;\n return {\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'relative',\n display: 'inline-block',\n cursor: 'pointer',\n [`&:not(${componentCls}-customize-input) ${componentCls}-selector`]: Object.assign(Object.assign({}, genSelectorStyle(token)), getSearchInputWithoutBorderStyle(token)),\n // ======================== Selection ========================\n [`${componentCls}-selection-item`]: Object.assign(Object.assign({\n flex: 1,\n fontWeight: 'normal',\n position: 'relative',\n userSelect: 'none'\n }, textEllipsis), {\n // https://github.com/ant-design/ant-design/issues/40421\n [`> ${antCls}-typography`]: {\n display: 'inline'\n }\n }),\n // ======================= Placeholder =======================\n [`${componentCls}-selection-placeholder`]: Object.assign(Object.assign({}, textEllipsis), {\n flex: 1,\n color: token.colorTextPlaceholder,\n pointerEvents: 'none'\n }),\n // ========================== Arrow ==========================\n [`${componentCls}-arrow`]: Object.assign(Object.assign({}, resetIcon()), {\n position: 'absolute',\n top: '50%',\n insetInlineStart: 'auto',\n insetInlineEnd: inputPaddingHorizontalBase,\n height: token.fontSizeIcon,\n marginTop: token.calc(token.fontSizeIcon).mul(-1).div(2).equal(),\n color: token.colorTextQuaternary,\n fontSize: token.fontSizeIcon,\n lineHeight: 1,\n textAlign: 'center',\n pointerEvents: 'none',\n display: 'flex',\n alignItems: 'center',\n transition: `opacity ${token.motionDurationSlow} ease`,\n [iconCls]: {\n verticalAlign: 'top',\n transition: `transform ${token.motionDurationSlow}`,\n '> svg': {\n verticalAlign: 'top'\n },\n [`&:not(${componentCls}-suffix)`]: {\n pointerEvents: 'auto'\n }\n },\n [`${componentCls}-disabled &`]: {\n cursor: 'not-allowed'\n },\n '> *:not(:last-child)': {\n marginInlineEnd: 8 // FIXME: magic\n }\n }),\n // ========================== Clear ==========================\n [`${componentCls}-clear`]: {\n position: 'absolute',\n top: '50%',\n insetInlineStart: 'auto',\n insetInlineEnd: inputPaddingHorizontalBase,\n zIndex: 1,\n display: 'inline-block',\n width: token.fontSizeIcon,\n height: token.fontSizeIcon,\n marginTop: token.calc(token.fontSizeIcon).mul(-1).div(2).equal(),\n color: token.colorTextQuaternary,\n fontSize: token.fontSizeIcon,\n fontStyle: 'normal',\n lineHeight: 1,\n textAlign: 'center',\n textTransform: 'none',\n cursor: 'pointer',\n opacity: 0,\n transition: `color ${token.motionDurationMid} ease, opacity ${token.motionDurationSlow} ease`,\n textRendering: 'auto',\n '&:before': {\n display: 'block'\n },\n '&:hover': {\n color: token.colorTextTertiary\n }\n },\n [`&:hover ${componentCls}-clear`]: {\n opacity: 1,\n background: token.colorBgBase\n }\n }),\n // ========================= Feedback ==========================\n [`${componentCls}-has-feedback`]: {\n [`${componentCls}-clear`]: {\n insetInlineEnd: token.calc(inputPaddingHorizontalBase).add(token.fontSize).add(token.paddingXS).equal()\n }\n }\n };\n};\n// ============================== Styles ==============================\nconst genSelectStyle = token => {\n const {\n componentCls\n } = token;\n return [{\n [componentCls]: {\n // ==================== In Form ====================\n [`&${componentCls}-in-form-item`]: {\n width: '100%'\n }\n }\n },\n // =====================================================\n // == LTR ==\n // =====================================================\n // Base\n genBaseStyle(token),\n // Single\n genSingleStyle(token),\n // Multiple\n genMultipleStyle(token),\n // Dropdown\n genDropdownStyle(token),\n // =====================================================\n // == RTL ==\n // =====================================================\n {\n [`${componentCls}-rtl`]: {\n direction: 'rtl'\n }\n },\n // =====================================================\n // == Space Compact ==\n // =====================================================\n genCompactItemStyle(token, {\n borderElCls: `${componentCls}-selector`,\n focusElCls: `${componentCls}-focused`\n })];\n};\n// ============================== Export ==============================\nexport default genStyleHooks('Select', (token, _ref) => {\n let {\n rootPrefixCls\n } = _ref;\n const selectToken = mergeToken(token, {\n rootPrefixCls,\n inputPaddingHorizontalBase: token.calc(token.paddingSM).sub(1).equal(),\n multipleSelectItemHeight: token.multipleItemHeight,\n selectHeight: token.controlHeight\n });\n return [genSelectStyle(selectToken), genVariantsStyle(selectToken)];\n}, prepareComponentToken, {\n unitless: {\n optionLineHeight: true,\n optionSelectedFontWeight: true\n }\n});","\"use client\";\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n// TODO: 4.0 - codemod should help to change `filterOption` to support node props.\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport RcSelect, { OptGroup, Option } from 'rc-select';\nimport omit from \"rc-util/es/omit\";\nimport { useZIndex } from '../_util/hooks/useZIndex';\nimport { getTransitionName } from '../_util/motion';\nimport genPurePanel from '../_util/PurePanel';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider';\nimport DefaultRenderEmpty from '../config-provider/defaultRenderEmpty';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport useCSSVarCls from '../config-provider/hooks/useCSSVarCls';\nimport useSize from '../config-provider/hooks/useSize';\nimport { FormItemInputContext } from '../form/context';\nimport useVariants from '../form/hooks/useVariants';\nimport { useCompactItemContext } from '../space/Compact';\nimport { useToken } from '../theme/internal';\nimport mergedBuiltinPlacements from './mergedBuiltinPlacements';\nimport useStyle from './style';\nimport useIcons from './useIcons';\nimport useShowArrow from './useShowArrow';\nconst SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE';\nconst InternalSelect = (props, ref) => {\n var _a;\n const {\n prefixCls: customizePrefixCls,\n bordered,\n className,\n rootClassName,\n getPopupContainer,\n popupClassName,\n dropdownClassName,\n listHeight = 256,\n placement,\n listItemHeight: customListItemHeight,\n size: customizeSize,\n disabled: customDisabled,\n notFoundContent,\n status: customStatus,\n builtinPlacements,\n dropdownMatchSelectWidth,\n popupMatchSelectWidth,\n direction: propDirection,\n style,\n allowClear,\n variant: customizeVariant,\n dropdownStyle,\n transitionName,\n tagRender,\n maxCount\n } = props,\n rest = __rest(props, [\"prefixCls\", \"bordered\", \"className\", \"rootClassName\", \"getPopupContainer\", \"popupClassName\", \"dropdownClassName\", \"listHeight\", \"placement\", \"listItemHeight\", \"size\", \"disabled\", \"notFoundContent\", \"status\", \"builtinPlacements\", \"dropdownMatchSelectWidth\", \"popupMatchSelectWidth\", \"direction\", \"style\", \"allowClear\", \"variant\", \"dropdownStyle\", \"transitionName\", \"tagRender\", \"maxCount\"]);\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n renderEmpty,\n direction: contextDirection,\n virtual,\n popupMatchSelectWidth: contextPopupMatchSelectWidth,\n popupOverflow,\n select\n } = React.useContext(ConfigContext);\n const [, token] = useToken();\n const listItemHeight = customListItemHeight !== null && customListItemHeight !== void 0 ? customListItemHeight : token === null || token === void 0 ? void 0 : token.controlHeight;\n const prefixCls = getPrefixCls('select', customizePrefixCls);\n const rootPrefixCls = getPrefixCls();\n const direction = propDirection !== null && propDirection !== void 0 ? propDirection : contextDirection;\n const {\n compactSize,\n compactItemClassnames\n } = useCompactItemContext(prefixCls, direction);\n const [variant, enableVariantCls] = useVariants('select', customizeVariant, bordered);\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n const mode = React.useMemo(() => {\n const {\n mode: m\n } = props;\n if (m === 'combobox') {\n return undefined;\n }\n if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) {\n return 'combobox';\n }\n return m;\n }, [props.mode]);\n const isMultiple = mode === 'multiple' || mode === 'tags';\n const showSuffixIcon = useShowArrow(props.suffixIcon, props.showArrow);\n const mergedPopupMatchSelectWidth = (_a = popupMatchSelectWidth !== null && popupMatchSelectWidth !== void 0 ? popupMatchSelectWidth : dropdownMatchSelectWidth) !== null && _a !== void 0 ? _a : contextPopupMatchSelectWidth;\n // ===================== Form Status =====================\n const {\n status: contextStatus,\n hasFeedback,\n isFormItemInput,\n feedbackIcon\n } = React.useContext(FormItemInputContext);\n const mergedStatus = getMergedStatus(contextStatus, customStatus);\n // ===================== Empty =====================\n let mergedNotFound;\n if (notFoundContent !== undefined) {\n mergedNotFound = notFoundContent;\n } else if (mode === 'combobox') {\n mergedNotFound = null;\n } else {\n mergedNotFound = (renderEmpty === null || renderEmpty === void 0 ? void 0 : renderEmpty('Select')) || /*#__PURE__*/React.createElement(DefaultRenderEmpty, {\n componentName: \"Select\"\n });\n }\n // ===================== Icons =====================\n const {\n suffixIcon,\n itemIcon,\n removeIcon,\n clearIcon\n } = useIcons(Object.assign(Object.assign({}, rest), {\n multiple: isMultiple,\n hasFeedback,\n feedbackIcon,\n showSuffixIcon,\n prefixCls,\n componentName: 'Select'\n }));\n const mergedAllowClear = allowClear === true ? {\n clearIcon\n } : allowClear;\n const selectProps = omit(rest, ['suffixIcon', 'itemIcon']);\n const mergedPopupClassName = classNames(popupClassName || dropdownClassName, {\n [`${prefixCls}-dropdown-${direction}`]: direction === 'rtl'\n }, rootClassName, cssVarCls, rootCls, hashId);\n const mergedSize = useSize(ctx => {\n var _a;\n return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx;\n });\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n const mergedClassName = classNames({\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-${variant}`]: enableVariantCls,\n [`${prefixCls}-in-form-item`]: isFormItemInput\n }, getStatusClassNames(prefixCls, mergedStatus, hasFeedback), compactItemClassnames, select === null || select === void 0 ? void 0 : select.className, className, rootClassName, cssVarCls, rootCls, hashId);\n // ===================== Placement =====================\n const memoPlacement = React.useMemo(() => {\n if (placement !== undefined) {\n return placement;\n }\n return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';\n }, [placement, direction]);\n // ====================== Warning ======================\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Select');\n warning.deprecated(!dropdownClassName, 'dropdownClassName', 'popupClassName');\n warning.deprecated(dropdownMatchSelectWidth === undefined, 'dropdownMatchSelectWidth', 'popupMatchSelectWidth');\n process.env.NODE_ENV !== \"production\" ? warning(!('showArrow' in props), 'deprecated', '`showArrow` is deprecated which will be removed in next major version. It will be a default behavior, you can hide it by setting `suffixIcon` to null.') : void 0;\n warning.deprecated(!('bordered' in props), 'bordered', 'variant');\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof maxCount !== 'undefined' && !isMultiple), 'usage', '`maxCount` only works with mode `multiple` or `tags`') : void 0;\n }\n // ====================== zIndex =========================\n const [zIndex] = useZIndex('SelectLike', dropdownStyle === null || dropdownStyle === void 0 ? void 0 : dropdownStyle.zIndex);\n // ====================== Render =======================\n return wrapCSSVar( /*#__PURE__*/React.createElement(RcSelect, Object.assign({\n ref: ref,\n virtual: virtual,\n showSearch: select === null || select === void 0 ? void 0 : select.showSearch\n }, selectProps, {\n style: Object.assign(Object.assign({}, select === null || select === void 0 ? void 0 : select.style), style),\n dropdownMatchSelectWidth: mergedPopupMatchSelectWidth,\n transitionName: getTransitionName(rootPrefixCls, 'slide-up', transitionName),\n builtinPlacements: mergedBuiltinPlacements(builtinPlacements, popupOverflow),\n listHeight: listHeight,\n listItemHeight: listItemHeight,\n mode: mode,\n prefixCls: prefixCls,\n placement: memoPlacement,\n direction: direction,\n suffixIcon: suffixIcon,\n menuItemSelectedIcon: itemIcon,\n removeIcon: removeIcon,\n allowClear: mergedAllowClear,\n notFoundContent: mergedNotFound,\n className: mergedClassName,\n getPopupContainer: getPopupContainer || getContextPopupContainer,\n dropdownClassName: mergedPopupClassName,\n disabled: mergedDisabled,\n dropdownStyle: Object.assign(Object.assign({}, dropdownStyle), {\n zIndex\n }),\n maxCount: isMultiple ? maxCount : undefined,\n tagRender: isMultiple ? tagRender : undefined\n })));\n};\nif (process.env.NODE_ENV !== 'production') {\n InternalSelect.displayName = 'Select';\n}\nconst Select = /*#__PURE__*/React.forwardRef(InternalSelect);\n// We don't care debug panel\n/* istanbul ignore next */\nconst PurePanel = genPurePanel(Select);\nSelect.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE;\nSelect.Option = Option;\nSelect.OptGroup = OptGroup;\nSelect._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;\nif (process.env.NODE_ENV !== 'production') {\n Select.displayName = 'Select';\n}\nexport default Select;","/**\n * Since Select, TreeSelect, Cascader is same Select like component.\n * We just use same hook to handle this logic.\n *\n * If `suffixIcon` is not equal to `null`, always show it.\n */\nexport default function useShowArrow(suffixIcon, showArrow) {\n return showArrow !== undefined ? showArrow : suffixIcon !== null;\n}","import { unit } from '@ant-design/cssinjs';\nimport { resetIcon } from '../../style';\nimport { mergeToken } from '../../theme/internal';\n/**\n * Get multiple selector needed style. The calculation:\n *\n * ContainerPadding = BasePadding - ItemMargin\n *\n * Border: ╔═══════════════════════════╗ ┬\n * ContainerPadding: ║ ║ │\n * ╟───────────────────────────╢ ┬ │\n * Item Margin: ║ ║ │ │\n * ║ ┌──────────┐ ║ │ │\n * Item(multipleItemHeight): ║ BasePadding │ Item │ ║ Overflow Container(ControlHeight)\n * ║ └──────────┘ ║ │ │\n * Item Margin: ║ ║ │ │\n * ╟───────────────────────────╢ ┴ │\n * ContainerPadding: ║ ║ │\n * Border: ╚═══════════════════════════╝ ┴\n */\nexport const getMultipleSelectorUnit = token => {\n const {\n multipleSelectItemHeight,\n paddingXXS,\n lineWidth,\n INTERNAL_FIXED_ITEM_MARGIN\n } = token;\n const basePadding = token.max(token.calc(paddingXXS).sub(lineWidth).equal(), 0);\n const containerPadding = token.max(token.calc(basePadding).sub(INTERNAL_FIXED_ITEM_MARGIN).equal(), 0);\n return {\n basePadding,\n containerPadding,\n itemHeight: unit(multipleSelectItemHeight),\n itemLineHeight: unit(token.calc(multipleSelectItemHeight).sub(token.calc(token.lineWidth).mul(2)).equal())\n };\n};\nconst getSelectItemStyle = token => {\n const {\n multipleSelectItemHeight,\n selectHeight,\n lineWidth\n } = token;\n const selectItemDist = token.calc(selectHeight).sub(multipleSelectItemHeight).div(2).sub(lineWidth).equal();\n return selectItemDist;\n};\n/**\n * Get the `rc-overflow` needed style.\n * It's a share style which means not affected by `size`.\n */\nexport const genOverflowStyle = token => {\n const {\n componentCls,\n iconCls,\n borderRadiusSM,\n motionDurationSlow,\n paddingXS,\n multipleItemColorDisabled,\n multipleItemBorderColorDisabled,\n colorIcon,\n colorIconHover,\n INTERNAL_FIXED_ITEM_MARGIN\n } = token;\n const selectOverflowPrefixCls = `${componentCls}-selection-overflow`;\n return {\n /**\n * Do not merge `height` & `line-height` under style with `selection` & `search`, since chrome\n * may update to redesign with its align logic.\n */\n // =========================== Overflow ===========================\n [selectOverflowPrefixCls]: {\n position: 'relative',\n display: 'flex',\n flex: 'auto',\n flexWrap: 'wrap',\n maxWidth: '100%',\n '&-item': {\n flex: 'none',\n alignSelf: 'center',\n maxWidth: '100%',\n display: 'inline-flex'\n },\n // ======================== Selections ==========================\n [`${componentCls}-selection-item`]: {\n display: 'flex',\n alignSelf: 'center',\n flex: 'none',\n boxSizing: 'border-box',\n maxWidth: '100%',\n marginBlock: INTERNAL_FIXED_ITEM_MARGIN,\n borderRadius: borderRadiusSM,\n cursor: 'default',\n transition: `font-size ${motionDurationSlow}, line-height ${motionDurationSlow}, height ${motionDurationSlow}`,\n marginInlineEnd: token.calc(INTERNAL_FIXED_ITEM_MARGIN).mul(2).equal(),\n paddingInlineStart: paddingXS,\n paddingInlineEnd: token.calc(paddingXS).div(2).equal(),\n [`${componentCls}-disabled&`]: {\n color: multipleItemColorDisabled,\n borderColor: multipleItemBorderColorDisabled,\n cursor: 'not-allowed'\n },\n // It's ok not to do this, but 24px makes bottom narrow in view should adjust\n '&-content': {\n display: 'inline-block',\n marginInlineEnd: token.calc(paddingXS).div(2).equal(),\n overflow: 'hidden',\n whiteSpace: 'pre',\n // fix whitespace wrapping. custom tags display all whitespace within.\n textOverflow: 'ellipsis'\n },\n '&-remove': Object.assign(Object.assign({}, resetIcon()), {\n display: 'inline-flex',\n alignItems: 'center',\n color: colorIcon,\n fontWeight: 'bold',\n fontSize: 10,\n lineHeight: 'inherit',\n cursor: 'pointer',\n [`> ${iconCls}`]: {\n verticalAlign: '-0.2em'\n },\n '&:hover': {\n color: colorIconHover\n }\n })\n }\n }\n };\n};\nconst genSelectionStyle = (token, suffix) => {\n const {\n componentCls,\n INTERNAL_FIXED_ITEM_MARGIN\n } = token;\n const selectOverflowPrefixCls = `${componentCls}-selection-overflow`;\n const selectItemHeight = token.multipleSelectItemHeight;\n const selectItemDist = getSelectItemStyle(token);\n const suffixCls = suffix ? `${componentCls}-${suffix}` : '';\n const multipleSelectorUnit = getMultipleSelectorUnit(token);\n return {\n [`${componentCls}-multiple${suffixCls}`]: Object.assign(Object.assign({}, genOverflowStyle(token)), {\n // ========================= Selector =========================\n [`${componentCls}-selector`]: {\n display: 'flex',\n flexWrap: 'wrap',\n alignItems: 'center',\n height: '100%',\n // Multiple is little different that horizontal is follow the vertical\n paddingInline: multipleSelectorUnit.basePadding,\n paddingBlock: multipleSelectorUnit.containerPadding,\n borderRadius: token.borderRadius,\n [`${componentCls}-disabled&`]: {\n background: token.multipleSelectorBgDisabled,\n cursor: 'not-allowed'\n },\n '&:after': {\n display: 'inline-block',\n width: 0,\n margin: `${unit(INTERNAL_FIXED_ITEM_MARGIN)} 0`,\n lineHeight: unit(selectItemHeight),\n visibility: 'hidden',\n content: '\"\\\\a0\"'\n }\n },\n // ======================== Selections ========================\n [`${componentCls}-selection-item`]: {\n height: multipleSelectorUnit.itemHeight,\n lineHeight: unit(multipleSelectorUnit.itemLineHeight)\n },\n // ========================== Input ==========================\n [`${selectOverflowPrefixCls}-item + ${selectOverflowPrefixCls}-item`]: {\n [`${componentCls}-selection-search`]: {\n marginInlineStart: 0\n }\n },\n // https://github.com/ant-design/ant-design/issues/44754\n [`${selectOverflowPrefixCls}-item-suffix`]: {\n height: '100%'\n },\n [`${componentCls}-selection-search`]: {\n display: 'inline-flex',\n position: 'relative',\n maxWidth: '100%',\n marginInlineStart: token.calc(token.inputPaddingHorizontalBase).sub(selectItemDist).equal(),\n [`\n &-input,\n &-mirror\n `]: {\n height: selectItemHeight,\n fontFamily: token.fontFamily,\n lineHeight: unit(selectItemHeight),\n transition: `all ${token.motionDurationSlow}`\n },\n '&-input': {\n width: '100%',\n minWidth: 4.1 // fix search cursor missing\n },\n '&-mirror': {\n position: 'absolute',\n top: 0,\n insetInlineStart: 0,\n insetInlineEnd: 'auto',\n zIndex: 999,\n whiteSpace: 'pre',\n // fix whitespace wrapping caused width calculation bug\n visibility: 'hidden'\n }\n },\n // ======================= Placeholder =======================\n [`${componentCls}-selection-placeholder`]: {\n position: 'absolute',\n top: '50%',\n insetInlineStart: token.inputPaddingHorizontalBase,\n insetInlineEnd: token.inputPaddingHorizontalBase,\n transform: 'translateY(-50%)',\n transition: `all ${token.motionDurationSlow}`\n }\n })\n };\n};\nfunction genSizeStyle(token, suffix) {\n const {\n componentCls\n } = token;\n const suffixCls = suffix ? `${componentCls}-${suffix}` : '';\n const rawStyle = {\n [`${componentCls}-multiple${suffixCls}`]: {\n fontSize: token.fontSize,\n // ========================= Selector =========================\n [`${componentCls}-selector`]: {\n [`${componentCls}-show-search&`]: {\n cursor: 'text'\n }\n },\n [`\n &${componentCls}-show-arrow ${componentCls}-selector,\n &${componentCls}-allow-clear ${componentCls}-selector\n `]: {\n paddingInlineEnd: token.calc(token.fontSizeIcon).add(token.controlPaddingHorizontal).equal()\n }\n }\n };\n return [genSelectionStyle(token, suffix), rawStyle];\n}\nconst genMultipleStyle = token => {\n const {\n componentCls\n } = token;\n const smallToken = mergeToken(token, {\n selectHeight: token.controlHeightSM,\n multipleSelectItemHeight: token.multipleItemHeightSM,\n borderRadius: token.borderRadiusSM,\n borderRadiusSM: token.borderRadiusXS\n });\n const largeToken = mergeToken(token, {\n fontSize: token.fontSizeLG,\n selectHeight: token.controlHeightLG,\n multipleSelectItemHeight: token.multipleItemHeightLG,\n borderRadius: token.borderRadiusLG,\n borderRadiusSM: token.borderRadius\n });\n return [genSizeStyle(token),\n // ======================== Small ========================\n genSizeStyle(smallToken, 'sm'),\n // Padding\n {\n [`${componentCls}-multiple${componentCls}-sm`]: {\n [`${componentCls}-selection-placeholder`]: {\n insetInline: token.calc(token.controlPaddingHorizontalSM).sub(token.lineWidth).equal()\n },\n // https://github.com/ant-design/ant-design/issues/29559\n [`${componentCls}-selection-search`]: {\n marginInlineStart: 2 // Magic Number\n }\n }\n },\n // ======================== Large ========================\n genSizeStyle(largeToken, 'lg')];\n};\nexport default genMultipleStyle;","\"use client\";\n\nimport * as React from 'react';\nimport CheckOutlined from \"@ant-design/icons/es/icons/CheckOutlined\";\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport CloseOutlined from \"@ant-design/icons/es/icons/CloseOutlined\";\nimport DownOutlined from \"@ant-design/icons/es/icons/DownOutlined\";\nimport LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport SearchOutlined from \"@ant-design/icons/es/icons/SearchOutlined\";\nimport { devUseWarning } from '../_util/warning';\nexport default function useIcons(_ref) {\n let {\n suffixIcon,\n clearIcon,\n menuItemSelectedIcon,\n removeIcon,\n loading,\n multiple,\n hasFeedback,\n prefixCls,\n showSuffixIcon,\n feedbackIcon,\n showArrow,\n componentName\n } = _ref;\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning(componentName);\n warning.deprecated(!clearIcon, 'clearIcon', 'allowClear={{ clearIcon: React.ReactNode }}');\n }\n // Clear Icon\n const mergedClearIcon = clearIcon !== null && clearIcon !== void 0 ? clearIcon : /*#__PURE__*/React.createElement(CloseCircleFilled, null);\n // Validation Feedback Icon\n const getSuffixIconNode = arrowIcon => {\n if (suffixIcon === null && !hasFeedback && !showArrow) {\n return null;\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, showSuffixIcon !== false && arrowIcon, hasFeedback && feedbackIcon);\n };\n // Arrow item icon\n let mergedSuffixIcon = null;\n if (suffixIcon !== undefined) {\n mergedSuffixIcon = getSuffixIconNode(suffixIcon);\n } else if (loading) {\n mergedSuffixIcon = getSuffixIconNode( /*#__PURE__*/React.createElement(LoadingOutlined, {\n spin: true\n }));\n } else {\n const iconCls = `${prefixCls}-suffix`;\n mergedSuffixIcon = _ref2 => {\n let {\n open,\n showSearch\n } = _ref2;\n if (open && showSearch) {\n return getSuffixIconNode( /*#__PURE__*/React.createElement(SearchOutlined, {\n className: iconCls\n }));\n }\n return getSuffixIconNode( /*#__PURE__*/React.createElement(DownOutlined, {\n className: iconCls\n }));\n };\n }\n // Checked item icon\n let mergedItemIcon = null;\n if (menuItemSelectedIcon !== undefined) {\n mergedItemIcon = menuItemSelectedIcon;\n } else if (multiple) {\n mergedItemIcon = /*#__PURE__*/React.createElement(CheckOutlined, null);\n } else {\n mergedItemIcon = null;\n }\n let mergedRemoveIcon = null;\n if (removeIcon !== undefined) {\n mergedRemoveIcon = removeIcon;\n } else {\n mergedRemoveIcon = /*#__PURE__*/React.createElement(CloseOutlined, null);\n }\n return {\n clearIcon: mergedClearIcon,\n suffixIcon: mergedSuffixIcon,\n itemIcon: mergedItemIcon,\n removeIcon: mergedRemoveIcon\n };\n}","import { Keyframes } from '@ant-design/cssinjs';\nimport { initMotion } from './motion';\nexport const moveDownIn = new Keyframes('antMoveDownIn', {\n '0%': {\n transform: 'translate3d(0, 100%, 0)',\n transformOrigin: '0 0',\n opacity: 0\n },\n '100%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n }\n});\nexport const moveDownOut = new Keyframes('antMoveDownOut', {\n '0%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n },\n '100%': {\n transform: 'translate3d(0, 100%, 0)',\n transformOrigin: '0 0',\n opacity: 0\n }\n});\nexport const moveLeftIn = new Keyframes('antMoveLeftIn', {\n '0%': {\n transform: 'translate3d(-100%, 0, 0)',\n transformOrigin: '0 0',\n opacity: 0\n },\n '100%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n }\n});\nexport const moveLeftOut = new Keyframes('antMoveLeftOut', {\n '0%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n },\n '100%': {\n transform: 'translate3d(-100%, 0, 0)',\n transformOrigin: '0 0',\n opacity: 0\n }\n});\nexport const moveRightIn = new Keyframes('antMoveRightIn', {\n '0%': {\n transform: 'translate3d(100%, 0, 0)',\n transformOrigin: '0 0',\n opacity: 0\n },\n '100%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n }\n});\nexport const moveRightOut = new Keyframes('antMoveRightOut', {\n '0%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n },\n '100%': {\n transform: 'translate3d(100%, 0, 0)',\n transformOrigin: '0 0',\n opacity: 0\n }\n});\nexport const moveUpIn = new Keyframes('antMoveUpIn', {\n '0%': {\n transform: 'translate3d(0, -100%, 0)',\n transformOrigin: '0 0',\n opacity: 0\n },\n '100%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n }\n});\nexport const moveUpOut = new Keyframes('antMoveUpOut', {\n '0%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n },\n '100%': {\n transform: 'translate3d(0, -100%, 0)',\n transformOrigin: '0 0',\n opacity: 0\n }\n});\nconst moveMotion = {\n 'move-up': {\n inKeyframes: moveUpIn,\n outKeyframes: moveUpOut\n },\n 'move-down': {\n inKeyframes: moveDownIn,\n outKeyframes: moveDownOut\n },\n 'move-left': {\n inKeyframes: moveLeftIn,\n outKeyframes: moveLeftOut\n },\n 'move-right': {\n inKeyframes: moveRightIn,\n outKeyframes: moveRightOut\n }\n};\nexport const initMoveMotion = (token, motionName) => {\n const {\n antCls\n } = token;\n const motionCls = `${antCls}-${motionName}`;\n const {\n inKeyframes,\n outKeyframes\n } = moveMotion[motionName];\n return [initMotion(motionCls, inKeyframes, outKeyframes, token.motionDurationMid), {\n [`\n ${motionCls}-enter,\n ${motionCls}-appear\n `]: {\n opacity: 0,\n animationTimingFunction: token.motionEaseOutCirc\n },\n [`${motionCls}-leave`]: {\n animationTimingFunction: token.motionEaseInOutCirc\n }\n }];\n};","import { Keyframes } from '@ant-design/cssinjs';\nimport { initMotion } from './motion';\nexport const slideUpIn = new Keyframes('antSlideUpIn', {\n '0%': {\n transform: 'scaleY(0.8)',\n transformOrigin: '0% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scaleY(1)',\n transformOrigin: '0% 0%',\n opacity: 1\n }\n});\nexport const slideUpOut = new Keyframes('antSlideUpOut', {\n '0%': {\n transform: 'scaleY(1)',\n transformOrigin: '0% 0%',\n opacity: 1\n },\n '100%': {\n transform: 'scaleY(0.8)',\n transformOrigin: '0% 0%',\n opacity: 0\n }\n});\nexport const slideDownIn = new Keyframes('antSlideDownIn', {\n '0%': {\n transform: 'scaleY(0.8)',\n transformOrigin: '100% 100%',\n opacity: 0\n },\n '100%': {\n transform: 'scaleY(1)',\n transformOrigin: '100% 100%',\n opacity: 1\n }\n});\nexport const slideDownOut = new Keyframes('antSlideDownOut', {\n '0%': {\n transform: 'scaleY(1)',\n transformOrigin: '100% 100%',\n opacity: 1\n },\n '100%': {\n transform: 'scaleY(0.8)',\n transformOrigin: '100% 100%',\n opacity: 0\n }\n});\nexport const slideLeftIn = new Keyframes('antSlideLeftIn', {\n '0%': {\n transform: 'scaleX(0.8)',\n transformOrigin: '0% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scaleX(1)',\n transformOrigin: '0% 0%',\n opacity: 1\n }\n});\nexport const slideLeftOut = new Keyframes('antSlideLeftOut', {\n '0%': {\n transform: 'scaleX(1)',\n transformOrigin: '0% 0%',\n opacity: 1\n },\n '100%': {\n transform: 'scaleX(0.8)',\n transformOrigin: '0% 0%',\n opacity: 0\n }\n});\nexport const slideRightIn = new Keyframes('antSlideRightIn', {\n '0%': {\n transform: 'scaleX(0.8)',\n transformOrigin: '100% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scaleX(1)',\n transformOrigin: '100% 0%',\n opacity: 1\n }\n});\nexport const slideRightOut = new Keyframes('antSlideRightOut', {\n '0%': {\n transform: 'scaleX(1)',\n transformOrigin: '100% 0%',\n opacity: 1\n },\n '100%': {\n transform: 'scaleX(0.8)',\n transformOrigin: '100% 0%',\n opacity: 0\n }\n});\nconst slideMotion = {\n 'slide-up': {\n inKeyframes: slideUpIn,\n outKeyframes: slideUpOut\n },\n 'slide-down': {\n inKeyframes: slideDownIn,\n outKeyframes: slideDownOut\n },\n 'slide-left': {\n inKeyframes: slideLeftIn,\n outKeyframes: slideLeftOut\n },\n 'slide-right': {\n inKeyframes: slideRightIn,\n outKeyframes: slideRightOut\n }\n};\nexport const initSlideMotion = (token, motionName) => {\n const {\n antCls\n } = token;\n const motionCls = `${antCls}-${motionName}`;\n const {\n inKeyframes,\n outKeyframes\n } = slideMotion[motionName];\n return [initMotion(motionCls, inKeyframes, outKeyframes, token.motionDurationMid), {\n [`\n ${motionCls}-enter,\n ${motionCls}-appear\n `]: {\n transform: 'scale(0)',\n transformOrigin: '0% 0%',\n opacity: 0,\n animationTimingFunction: token.motionEaseOutQuint,\n '&-prepare': {\n transform: 'scale(1)'\n }\n },\n [`${motionCls}-leave`]: {\n animationTimingFunction: token.motionEaseInQuint\n }\n }];\n};","// This icon file is generated automatically.\nvar CheckOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z\" } }] }, \"name\": \"check\", \"theme\": \"outlined\" };\nexport default CheckOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport CheckOutlinedSvg from \"@ant-design/icons-svg/es/asn/CheckOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar CheckOutlined = function CheckOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: CheckOutlinedSvg\n }));\n};\n\n/**![check](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkxMiAxOTBoLTY5LjljLTkuOCAwLTE5LjEgNC41LTI1LjEgMTIuMkw0MDQuNyA3MjQuNSAyMDcgNDc0YTMyIDMyIDAgMDAtMjUuMS0xMi4ySDExMmMtNi43IDAtMTAuNCA3LjctNi4zIDEyLjlsMjczLjkgMzQ3YzEyLjggMTYuMiAzNy40IDE2LjIgNTAuMyAwbDQ4OC40LTYxOC45YzQuMS01LjEuNC0xMi44LTYuMy0xMi44eiIgLz48L3N2Zz4=) */\nvar RefIcon = /*#__PURE__*/React.forwardRef(CheckOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'CheckOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar DownOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z\" } }] }, \"name\": \"down\", \"theme\": \"outlined\" };\nexport default DownOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport DownOutlinedSvg from \"@ant-design/icons-svg/es/asn/DownOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar DownOutlined = function DownOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: DownOutlinedSvg\n }));\n};\n\n/**![down](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTg4NCAyNTZoLTc1Yy01LjEgMC05LjkgMi41LTEyLjkgNi42TDUxMiA2NTQuMiAyMjcuOSAyNjIuNmMtMy00LjEtNy44LTYuNi0xMi45LTYuNmgtNzVjLTYuNSAwLTEwLjMgNy40LTYuNSAxMi43bDM1Mi42IDQ4Ni4xYzEyLjggMTcuNiAzOSAxNy42IDUxLjcgMGwzNTIuNi00ODYuMWMzLjktNS4zLjEtMTIuNy02LjQtMTIuN3oiIC8+PC9zdmc+) */\nvar RefIcon = /*#__PURE__*/React.forwardRef(DownOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'DownOutlined';\n}\nexport default RefIcon;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"className\", \"style\", \"checked\", \"disabled\", \"defaultChecked\", \"type\", \"title\", \"onChange\"];\nimport classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport * as React from 'react';\nimport { forwardRef, useImperativeHandle, useRef } from 'react';\nexport var Checkbox = /*#__PURE__*/forwardRef(function (props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-checkbox' : _props$prefixCls,\n className = props.className,\n style = props.style,\n checked = props.checked,\n disabled = props.disabled,\n _props$defaultChecked = props.defaultChecked,\n defaultChecked = _props$defaultChecked === void 0 ? false : _props$defaultChecked,\n _props$type = props.type,\n type = _props$type === void 0 ? 'checkbox' : _props$type,\n title = props.title,\n onChange = props.onChange,\n inputProps = _objectWithoutProperties(props, _excluded);\n var inputRef = useRef(null);\n var holderRef = useRef(null);\n var _useMergedState = useMergedState(defaultChecked, {\n value: checked\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n rawValue = _useMergedState2[0],\n setRawValue = _useMergedState2[1];\n useImperativeHandle(ref, function () {\n return {\n focus: function focus(options) {\n var _inputRef$current;\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus(options);\n },\n blur: function blur() {\n var _inputRef$current2;\n (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 || _inputRef$current2.blur();\n },\n input: inputRef.current,\n nativeElement: holderRef.current\n };\n });\n var classString = classNames(prefixCls, className, _defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-checked\"), rawValue), \"\".concat(prefixCls, \"-disabled\"), disabled));\n var handleChange = function handleChange(e) {\n if (disabled) {\n return;\n }\n if (!('checked' in props)) {\n setRawValue(e.target.checked);\n }\n onChange === null || onChange === void 0 || onChange({\n target: _objectSpread(_objectSpread({}, props), {}, {\n type: type,\n checked: e.target.checked\n }),\n stopPropagation: function stopPropagation() {\n e.stopPropagation();\n },\n preventDefault: function preventDefault() {\n e.preventDefault();\n },\n nativeEvent: e.nativeEvent\n });\n };\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classString,\n title: title,\n style: style,\n ref: holderRef\n }, /*#__PURE__*/React.createElement(\"input\", _extends({}, inputProps, {\n className: \"\".concat(prefixCls, \"-input\"),\n ref: inputRef,\n onChange: handleChange,\n disabled: disabled,\n checked: !!rawValue,\n type: type\n })), /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-inner\")\n }));\n});\nexport default Checkbox;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"invalidate\", \"item\", \"renderItem\", \"responsive\", \"responsiveDisabled\", \"registerSize\", \"itemKey\", \"className\", \"style\", \"children\", \"display\", \"order\", \"component\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\n// Use shared variable to save bundle size\nvar UNDEFINED = undefined;\nfunction InternalItem(props, ref) {\n var prefixCls = props.prefixCls,\n invalidate = props.invalidate,\n item = props.item,\n renderItem = props.renderItem,\n responsive = props.responsive,\n responsiveDisabled = props.responsiveDisabled,\n registerSize = props.registerSize,\n itemKey = props.itemKey,\n className = props.className,\n style = props.style,\n children = props.children,\n display = props.display,\n order = props.order,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n restProps = _objectWithoutProperties(props, _excluded);\n var mergedHidden = responsive && !display;\n // ================================ Effect ================================\n function internalRegisterSize(width) {\n registerSize(itemKey, width);\n }\n React.useEffect(function () {\n return function () {\n internalRegisterSize(null);\n };\n }, []);\n // ================================ Render ================================\n var childNode = renderItem && item !== UNDEFINED ? renderItem(item) : children;\n var overflowStyle;\n if (!invalidate) {\n overflowStyle = {\n opacity: mergedHidden ? 0 : 1,\n height: mergedHidden ? 0 : UNDEFINED,\n overflowY: mergedHidden ? 'hidden' : UNDEFINED,\n order: responsive ? order : UNDEFINED,\n pointerEvents: mergedHidden ? 'none' : UNDEFINED,\n position: mergedHidden ? 'absolute' : UNDEFINED\n };\n }\n var overflowProps = {};\n if (mergedHidden) {\n overflowProps['aria-hidden'] = true;\n }\n var itemNode = /*#__PURE__*/React.createElement(Component, _extends({\n className: classNames(!invalidate && prefixCls, className),\n style: _objectSpread(_objectSpread({}, overflowStyle), style)\n }, overflowProps, restProps, {\n ref: ref\n }), childNode);\n if (responsive) {\n itemNode = /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: function onResize(_ref) {\n var offsetWidth = _ref.offsetWidth;\n internalRegisterSize(offsetWidth);\n },\n disabled: responsiveDisabled\n }, itemNode);\n }\n return itemNode;\n}\nvar Item = /*#__PURE__*/React.forwardRef(InternalItem);\nItem.displayName = 'Item';\nexport default Item;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport * as React from 'react';\nimport { unstable_batchedUpdates } from 'react-dom';\nimport channelUpdate from './channelUpdate';\n/**\n * Batcher for record any `useEffectState` need update.\n */\nexport function useBatcher() {\n // Updater Trigger\n var updateFuncRef = React.useRef(null);\n // Notify update\n var notifyEffectUpdate = function notifyEffectUpdate(callback) {\n if (!updateFuncRef.current) {\n updateFuncRef.current = [];\n channelUpdate(function () {\n unstable_batchedUpdates(function () {\n updateFuncRef.current.forEach(function (fn) {\n fn();\n });\n updateFuncRef.current = null;\n });\n });\n }\n updateFuncRef.current.push(callback);\n };\n return notifyEffectUpdate;\n}\n/**\n * Trigger state update by `useLayoutEffect` to save perf.\n */\nexport default function useEffectState(notifyEffectUpdate, defaultValue) {\n // Value\n var _React$useState = React.useState(defaultValue),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n stateValue = _React$useState2[0],\n setStateValue = _React$useState2[1];\n // Set State\n var setEffectVal = useEvent(function (nextValue) {\n notifyEffectUpdate(function () {\n setStateValue(nextValue);\n });\n });\n return [stateValue, setEffectVal];\n}","import raf from \"rc-util/es/raf\";\nexport default function channelUpdate(callback) {\n if (typeof MessageChannel === 'undefined') {\n raf(callback);\n } else {\n var channel = new MessageChannel();\n channel.port1.onmessage = function () {\n return callback();\n };\n channel.port2.postMessage(undefined);\n }\n}","import React from 'react';\nexport var OverflowContext = /*#__PURE__*/React.createContext(null);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"component\"],\n _excluded2 = [\"className\"],\n _excluded3 = [\"className\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Item from './Item';\nimport { OverflowContext } from './context';\nvar InternalRawItem = function InternalRawItem(props, ref) {\n var context = React.useContext(OverflowContext);\n // Render directly when context not provided\n if (!context) {\n var _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n _restProps = _objectWithoutProperties(props, _excluded);\n return /*#__PURE__*/React.createElement(Component, _extends({}, _restProps, {\n ref: ref\n }));\n }\n var contextClassName = context.className,\n restContext = _objectWithoutProperties(context, _excluded2);\n var className = props.className,\n restProps = _objectWithoutProperties(props, _excluded3);\n // Do not pass context to sub item to avoid multiple measure\n return /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n value: null\n }, /*#__PURE__*/React.createElement(Item, _extends({\n ref: ref,\n className: classNames(contextClassName, className)\n }, restContext, restProps)));\n};\nvar RawItem = /*#__PURE__*/React.forwardRef(InternalRawItem);\nRawItem.displayName = 'RawItem';\nexport default RawItem;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"data\", \"renderItem\", \"renderRawItem\", \"itemKey\", \"itemWidth\", \"ssr\", \"style\", \"className\", \"maxCount\", \"renderRest\", \"renderRawRest\", \"suffix\", \"component\", \"itemComponent\", \"onVisibleChange\"];\nimport * as React from 'react';\nimport { useState, useMemo, useCallback } from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport Item from './Item';\nimport useEffectState, { useBatcher } from './hooks/useEffectState';\nimport RawItem from './RawItem';\nimport { OverflowContext } from './context';\nvar RESPONSIVE = 'responsive';\nvar INVALIDATE = 'invalidate';\nexport { OverflowContext } from './context';\nfunction defaultRenderRest(omittedItems) {\n return \"+ \".concat(omittedItems.length, \" ...\");\n}\nfunction Overflow(props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-overflow' : _props$prefixCls,\n _props$data = props.data,\n data = _props$data === void 0 ? [] : _props$data,\n renderItem = props.renderItem,\n renderRawItem = props.renderRawItem,\n itemKey = props.itemKey,\n _props$itemWidth = props.itemWidth,\n itemWidth = _props$itemWidth === void 0 ? 10 : _props$itemWidth,\n ssr = props.ssr,\n style = props.style,\n className = props.className,\n maxCount = props.maxCount,\n renderRest = props.renderRest,\n renderRawRest = props.renderRawRest,\n suffix = props.suffix,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n itemComponent = props.itemComponent,\n onVisibleChange = props.onVisibleChange,\n restProps = _objectWithoutProperties(props, _excluded);\n var fullySSR = ssr === 'full';\n var notifyEffectUpdate = useBatcher();\n var _useEffectState = useEffectState(notifyEffectUpdate, null),\n _useEffectState2 = _slicedToArray(_useEffectState, 2),\n containerWidth = _useEffectState2[0],\n setContainerWidth = _useEffectState2[1];\n var mergedContainerWidth = containerWidth || 0;\n var _useEffectState3 = useEffectState(notifyEffectUpdate, new Map()),\n _useEffectState4 = _slicedToArray(_useEffectState3, 2),\n itemWidths = _useEffectState4[0],\n setItemWidths = _useEffectState4[1];\n var _useEffectState5 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState6 = _slicedToArray(_useEffectState5, 2),\n prevRestWidth = _useEffectState6[0],\n setPrevRestWidth = _useEffectState6[1];\n var _useEffectState7 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState8 = _slicedToArray(_useEffectState7, 2),\n restWidth = _useEffectState8[0],\n setRestWidth = _useEffectState8[1];\n var _useEffectState9 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState10 = _slicedToArray(_useEffectState9, 2),\n suffixWidth = _useEffectState10[0],\n setSuffixWidth = _useEffectState10[1];\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n suffixFixedStart = _useState2[0],\n setSuffixFixedStart = _useState2[1];\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n displayCount = _useState4[0],\n setDisplayCount = _useState4[1];\n var mergedDisplayCount = React.useMemo(function () {\n if (displayCount === null && fullySSR) {\n return Number.MAX_SAFE_INTEGER;\n }\n return displayCount || 0;\n }, [displayCount, containerWidth]);\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n restReady = _useState6[0],\n setRestReady = _useState6[1];\n var itemPrefixCls = \"\".concat(prefixCls, \"-item\");\n // Always use the max width to avoid blink\n var mergedRestWidth = Math.max(prevRestWidth, restWidth);\n // ================================= Data =================================\n var isResponsive = maxCount === RESPONSIVE;\n var shouldResponsive = data.length && isResponsive;\n var invalidate = maxCount === INVALIDATE;\n /**\n * When is `responsive`, we will always render rest node to get the real width of it for calculation\n */\n var showRest = shouldResponsive || typeof maxCount === 'number' && data.length > maxCount;\n var mergedData = useMemo(function () {\n var items = data;\n if (shouldResponsive) {\n if (containerWidth === null && fullySSR) {\n items = data;\n } else {\n items = data.slice(0, Math.min(data.length, mergedContainerWidth / itemWidth));\n }\n } else if (typeof maxCount === 'number') {\n items = data.slice(0, maxCount);\n }\n return items;\n }, [data, itemWidth, containerWidth, maxCount, shouldResponsive]);\n var omittedItems = useMemo(function () {\n if (shouldResponsive) {\n return data.slice(mergedDisplayCount + 1);\n }\n return data.slice(mergedData.length);\n }, [data, mergedData, shouldResponsive, mergedDisplayCount]);\n // ================================= Item =================================\n var getKey = useCallback(function (item, index) {\n var _ref;\n if (typeof itemKey === 'function') {\n return itemKey(item);\n }\n return (_ref = itemKey && (item === null || item === void 0 ? void 0 : item[itemKey])) !== null && _ref !== void 0 ? _ref : index;\n }, [itemKey]);\n var mergedRenderItem = useCallback(renderItem || function (item) {\n return item;\n }, [renderItem]);\n function updateDisplayCount(count, suffixFixedStartVal, notReady) {\n // React 18 will sync render even when the value is same in some case.\n // We take `mergedData` as deps which may cause dead loop if it's dynamic generate.\n // ref: https://github.com/ant-design/ant-design/issues/36559\n if (displayCount === count && (suffixFixedStartVal === undefined || suffixFixedStartVal === suffixFixedStart)) {\n return;\n }\n setDisplayCount(count);\n if (!notReady) {\n setRestReady(count < data.length - 1);\n onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(count);\n }\n if (suffixFixedStartVal !== undefined) {\n setSuffixFixedStart(suffixFixedStartVal);\n }\n }\n // ================================= Size =================================\n function onOverflowResize(_, element) {\n setContainerWidth(element.clientWidth);\n }\n function registerSize(key, width) {\n setItemWidths(function (origin) {\n var clone = new Map(origin);\n if (width === null) {\n clone.delete(key);\n } else {\n clone.set(key, width);\n }\n return clone;\n });\n }\n function registerOverflowSize(_, width) {\n setRestWidth(width);\n setPrevRestWidth(restWidth);\n }\n function registerSuffixSize(_, width) {\n setSuffixWidth(width);\n }\n // ================================ Effect ================================\n function getItemWidth(index) {\n return itemWidths.get(getKey(mergedData[index], index));\n }\n useLayoutEffect(function () {\n if (mergedContainerWidth && typeof mergedRestWidth === 'number' && mergedData) {\n var totalWidth = suffixWidth;\n var len = mergedData.length;\n var lastIndex = len - 1;\n // When data count change to 0, reset this since not loop will reach\n if (!len) {\n updateDisplayCount(0, null);\n return;\n }\n for (var i = 0; i < len; i += 1) {\n var currentItemWidth = getItemWidth(i);\n // Fully will always render\n if (fullySSR) {\n currentItemWidth = currentItemWidth || 0;\n }\n // Break since data not ready\n if (currentItemWidth === undefined) {\n updateDisplayCount(i - 1, undefined, true);\n break;\n }\n // Find best match\n totalWidth += currentItemWidth;\n if (\n // Only one means `totalWidth` is the final width\n lastIndex === 0 && totalWidth <= mergedContainerWidth ||\n // Last two width will be the final width\n i === lastIndex - 1 && totalWidth + getItemWidth(lastIndex) <= mergedContainerWidth) {\n // Additional check if match the end\n updateDisplayCount(lastIndex, null);\n break;\n } else if (totalWidth + mergedRestWidth > mergedContainerWidth) {\n // Can not hold all the content to show rest\n updateDisplayCount(i - 1, totalWidth - currentItemWidth - suffixWidth + restWidth);\n break;\n }\n }\n if (suffix && getItemWidth(0) + suffixWidth > mergedContainerWidth) {\n setSuffixFixedStart(null);\n }\n }\n }, [mergedContainerWidth, itemWidths, restWidth, suffixWidth, getKey, mergedData]);\n // ================================ Render ================================\n var displayRest = restReady && !!omittedItems.length;\n var suffixStyle = {};\n if (suffixFixedStart !== null && shouldResponsive) {\n suffixStyle = {\n position: 'absolute',\n left: suffixFixedStart,\n top: 0\n };\n }\n var itemSharedProps = {\n prefixCls: itemPrefixCls,\n responsive: shouldResponsive,\n component: itemComponent,\n invalidate: invalidate\n };\n // >>>>> Choice render fun by `renderRawItem`\n var internalRenderItemNode = renderRawItem ? function (item, index) {\n var key = getKey(item, index);\n return /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n key: key,\n value: _objectSpread(_objectSpread({}, itemSharedProps), {}, {\n order: index,\n item: item,\n itemKey: key,\n registerSize: registerSize,\n display: index <= mergedDisplayCount\n })\n }, renderRawItem(item, index));\n } : function (item, index) {\n var key = getKey(item, index);\n return /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n order: index,\n key: key,\n item: item,\n renderItem: mergedRenderItem,\n itemKey: key,\n registerSize: registerSize,\n display: index <= mergedDisplayCount\n }));\n };\n // >>>>> Rest node\n var restNode;\n var restContextProps = {\n order: displayRest ? mergedDisplayCount : Number.MAX_SAFE_INTEGER,\n className: \"\".concat(itemPrefixCls, \"-rest\"),\n registerSize: registerOverflowSize,\n display: displayRest\n };\n if (!renderRawRest) {\n var mergedRenderRest = renderRest || defaultRenderRest;\n restNode = /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, restContextProps), typeof mergedRenderRest === 'function' ? mergedRenderRest(omittedItems) : mergedRenderRest);\n } else if (renderRawRest) {\n restNode = /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n value: _objectSpread(_objectSpread({}, itemSharedProps), restContextProps)\n }, renderRawRest(omittedItems));\n }\n var overflowNode = /*#__PURE__*/React.createElement(Component, _extends({\n className: classNames(!invalidate && prefixCls, className),\n style: style,\n ref: ref\n }, restProps), mergedData.map(internalRenderItemNode), showRest ? restNode : null, suffix && /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n responsive: isResponsive,\n responsiveDisabled: !shouldResponsive,\n order: mergedDisplayCount,\n className: \"\".concat(itemPrefixCls, \"-suffix\"),\n registerSize: registerSuffixSize,\n display: true,\n style: suffixStyle\n }), suffix));\n if (isResponsive) {\n overflowNode = /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onOverflowResize,\n disabled: !shouldResponsive\n }, overflowNode);\n }\n return overflowNode;\n}\nvar ForwardOverflow = /*#__PURE__*/React.forwardRef(Overflow);\nForwardOverflow.displayName = 'Overflow';\nForwardOverflow.Item = RawItem;\nForwardOverflow.RESPONSIVE = RESPONSIVE;\nForwardOverflow.INVALIDATE = INVALIDATE;\n// Convert to generic type\nexport default ForwardOverflow;","import Overflow from './Overflow';\nexport default Overflow;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport ResizeObserver from 'rc-resize-observer';\nimport classNames from 'classnames';\n/**\n * Fill component to provided the scroll content real height.\n */\nvar Filler = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var height = _ref.height,\n offsetY = _ref.offsetY,\n offsetX = _ref.offsetX,\n children = _ref.children,\n prefixCls = _ref.prefixCls,\n onInnerResize = _ref.onInnerResize,\n innerProps = _ref.innerProps,\n rtl = _ref.rtl,\n extra = _ref.extra;\n var outerStyle = {};\n var innerStyle = {\n display: 'flex',\n flexDirection: 'column'\n };\n if (offsetY !== undefined) {\n // Not set `width` since this will break `sticky: right`\n outerStyle = {\n height: height,\n position: 'relative',\n overflow: 'hidden'\n };\n innerStyle = _objectSpread(_objectSpread({}, innerStyle), {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({\n transform: \"translateY(\".concat(offsetY, \"px)\")\n }, rtl ? 'marginRight' : 'marginLeft', -offsetX), \"position\", 'absolute'), \"left\", 0), \"right\", 0), \"top\", 0));\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n style: outerStyle\n }, /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: function onResize(_ref2) {\n var offsetHeight = _ref2.offsetHeight;\n if (offsetHeight && onInnerResize) {\n onInnerResize();\n }\n }\n }, /*#__PURE__*/React.createElement(\"div\", _extends({\n style: innerStyle,\n className: classNames(_defineProperty({}, \"\".concat(prefixCls, \"-holder-inner\"), prefixCls)),\n ref: ref\n }, innerProps), children, extra)));\n});\nFiller.displayName = 'Filler';\nexport default Filler;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _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 raf from \"rc-util/es/raf\";\nfunction getPageXY(e, horizontal) {\n var obj = 'touches' in e ? e.touches[0] : e;\n return obj[horizontal ? 'pageX' : 'pageY'];\n}\nvar ScrollBar = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n rtl = props.rtl,\n scrollOffset = props.scrollOffset,\n scrollRange = props.scrollRange,\n onStartMove = props.onStartMove,\n onStopMove = props.onStopMove,\n onScroll = props.onScroll,\n horizontal = props.horizontal,\n spinSize = props.spinSize,\n containerSize = props.containerSize,\n style = props.style,\n propsThumbStyle = props.thumbStyle;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n dragging = _React$useState2[0],\n setDragging = _React$useState2[1];\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n pageXY = _React$useState4[0],\n setPageXY = _React$useState4[1];\n var _React$useState5 = React.useState(null),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n startTop = _React$useState6[0],\n setStartTop = _React$useState6[1];\n var isLTR = !rtl;\n\n // ========================= Refs =========================\n var scrollbarRef = React.useRef();\n var thumbRef = React.useRef();\n\n // ======================= Visible ========================\n var _React$useState7 = React.useState(false),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n visible = _React$useState8[0],\n setVisible = _React$useState8[1];\n var visibleTimeoutRef = React.useRef();\n var delayHidden = function delayHidden() {\n clearTimeout(visibleTimeoutRef.current);\n setVisible(true);\n visibleTimeoutRef.current = setTimeout(function () {\n setVisible(false);\n }, 3000);\n };\n\n // ======================== Range =========================\n var enableScrollRange = scrollRange - containerSize || 0;\n var enableOffsetRange = containerSize - spinSize || 0;\n\n // ========================= Top ==========================\n var top = React.useMemo(function () {\n if (scrollOffset === 0 || enableScrollRange === 0) {\n return 0;\n }\n var ptg = scrollOffset / enableScrollRange;\n return ptg * enableOffsetRange;\n }, [scrollOffset, enableScrollRange, enableOffsetRange]);\n\n // ====================== Container =======================\n var onContainerMouseDown = function onContainerMouseDown(e) {\n e.stopPropagation();\n e.preventDefault();\n };\n\n // ======================== Thumb =========================\n var stateRef = React.useRef({\n top: top,\n dragging: dragging,\n pageY: pageXY,\n startTop: startTop\n });\n stateRef.current = {\n top: top,\n dragging: dragging,\n pageY: pageXY,\n startTop: startTop\n };\n var onThumbMouseDown = function onThumbMouseDown(e) {\n setDragging(true);\n setPageXY(getPageXY(e, horizontal));\n setStartTop(stateRef.current.top);\n onStartMove();\n e.stopPropagation();\n e.preventDefault();\n };\n\n // ======================== Effect ========================\n\n // React make event as passive, but we need to preventDefault\n // Add event on dom directly instead.\n // ref: https://github.com/facebook/react/issues/9809\n React.useEffect(function () {\n var onScrollbarTouchStart = function onScrollbarTouchStart(e) {\n e.preventDefault();\n };\n var scrollbarEle = scrollbarRef.current;\n var thumbEle = thumbRef.current;\n scrollbarEle.addEventListener('touchstart', onScrollbarTouchStart);\n thumbEle.addEventListener('touchstart', onThumbMouseDown);\n return function () {\n scrollbarEle.removeEventListener('touchstart', onScrollbarTouchStart);\n thumbEle.removeEventListener('touchstart', onThumbMouseDown);\n };\n }, []);\n\n // Pass to effect\n var enableScrollRangeRef = React.useRef();\n enableScrollRangeRef.current = enableScrollRange;\n var enableOffsetRangeRef = React.useRef();\n enableOffsetRangeRef.current = enableOffsetRange;\n React.useEffect(function () {\n if (dragging) {\n var moveRafId;\n var onMouseMove = function onMouseMove(e) {\n var _stateRef$current = stateRef.current,\n stateDragging = _stateRef$current.dragging,\n statePageY = _stateRef$current.pageY,\n stateStartTop = _stateRef$current.startTop;\n raf.cancel(moveRafId);\n if (stateDragging) {\n var offset = getPageXY(e, horizontal) - statePageY;\n var newTop = stateStartTop;\n if (!isLTR && horizontal) {\n newTop -= offset;\n } else {\n newTop += offset;\n }\n var tmpEnableScrollRange = enableScrollRangeRef.current;\n var tmpEnableOffsetRange = enableOffsetRangeRef.current;\n var ptg = tmpEnableOffsetRange ? newTop / tmpEnableOffsetRange : 0;\n var newScrollTop = Math.ceil(ptg * tmpEnableScrollRange);\n newScrollTop = Math.max(newScrollTop, 0);\n newScrollTop = Math.min(newScrollTop, tmpEnableScrollRange);\n moveRafId = raf(function () {\n onScroll(newScrollTop, horizontal);\n });\n }\n };\n var onMouseUp = function onMouseUp() {\n setDragging(false);\n onStopMove();\n };\n window.addEventListener('mousemove', onMouseMove);\n window.addEventListener('touchmove', onMouseMove);\n window.addEventListener('mouseup', onMouseUp);\n window.addEventListener('touchend', onMouseUp);\n return function () {\n window.removeEventListener('mousemove', onMouseMove);\n window.removeEventListener('touchmove', onMouseMove);\n window.removeEventListener('mouseup', onMouseUp);\n window.removeEventListener('touchend', onMouseUp);\n raf.cancel(moveRafId);\n };\n }\n }, [dragging]);\n React.useEffect(function () {\n delayHidden();\n }, [scrollOffset]);\n\n // ====================== Imperative ======================\n React.useImperativeHandle(ref, function () {\n return {\n delayHidden: delayHidden\n };\n });\n\n // ======================== Render ========================\n var scrollbarPrefixCls = \"\".concat(prefixCls, \"-scrollbar\");\n var containerStyle = {\n position: 'absolute',\n visibility: visible ? null : 'hidden'\n };\n var thumbStyle = {\n position: 'absolute',\n background: 'rgba(0, 0, 0, 0.5)',\n borderRadius: 99,\n cursor: 'pointer',\n userSelect: 'none'\n };\n if (horizontal) {\n // Container\n containerStyle.height = 8;\n containerStyle.left = 0;\n containerStyle.right = 0;\n containerStyle.bottom = 0;\n\n // Thumb\n thumbStyle.height = '100%';\n thumbStyle.width = spinSize;\n if (isLTR) {\n thumbStyle.left = top;\n } else {\n thumbStyle.right = top;\n }\n } else {\n // Container\n containerStyle.width = 8;\n containerStyle.top = 0;\n containerStyle.bottom = 0;\n if (isLTR) {\n containerStyle.right = 0;\n } else {\n containerStyle.left = 0;\n }\n\n // Thumb\n thumbStyle.width = '100%';\n thumbStyle.height = spinSize;\n thumbStyle.top = top;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: scrollbarRef,\n className: classNames(scrollbarPrefixCls, _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(scrollbarPrefixCls, \"-horizontal\"), horizontal), \"\".concat(scrollbarPrefixCls, \"-vertical\"), !horizontal), \"\".concat(scrollbarPrefixCls, \"-visible\"), visible)),\n style: _objectSpread(_objectSpread({}, containerStyle), style),\n onMouseDown: onContainerMouseDown,\n onMouseMove: delayHidden\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: thumbRef,\n className: classNames(\"\".concat(scrollbarPrefixCls, \"-thumb\"), _defineProperty({}, \"\".concat(scrollbarPrefixCls, \"-thumb-moving\"), dragging)),\n style: _objectSpread(_objectSpread({}, thumbStyle), propsThumbStyle),\n onMouseDown: onThumbMouseDown\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n ScrollBar.displayName = 'ScrollBar';\n}\nexport default ScrollBar;","import * as React from 'react';\nexport function Item(_ref) {\n var children = _ref.children,\n setRef = _ref.setRef;\n var refFunc = React.useCallback(function (node) {\n setRef(node);\n }, []);\n return /*#__PURE__*/React.cloneElement(children, {\n ref: refFunc\n });\n}","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n// Firefox has low performance of map.\nvar CacheMap = /*#__PURE__*/function () {\n function CacheMap() {\n _classCallCheck(this, CacheMap);\n _defineProperty(this, \"maps\", void 0);\n // Used for cache key\n // `useMemo` no need to update if `id` not change\n _defineProperty(this, \"id\", 0);\n this.maps = Object.create(null);\n }\n _createClass(CacheMap, [{\n key: \"set\",\n value: function set(key, value) {\n this.maps[key] = value;\n this.id += 1;\n }\n }, {\n key: \"get\",\n value: function get(key) {\n return this.maps[key];\n }\n }]);\n return CacheMap;\n}();\nexport default CacheMap;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\n/* eslint-disable no-param-reassign */\nimport * as React from 'react';\nimport raf from \"rc-util/es/raf\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { warning } from 'rc-util';\nvar MAX_TIMES = 10;\nexport default function useScrollTo(containerRef, data, heights, itemHeight, getKey, collectHeight, syncScrollTop, triggerFlash) {\n var scrollRef = React.useRef();\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n syncState = _React$useState2[0],\n setSyncState = _React$useState2[1];\n\n // ========================== Sync Scroll ==========================\n useLayoutEffect(function () {\n if (syncState && syncState.times < MAX_TIMES) {\n // Never reach\n if (!containerRef.current) {\n setSyncState(function (ori) {\n return _objectSpread({}, ori);\n });\n return;\n }\n collectHeight();\n var targetAlign = syncState.targetAlign,\n originAlign = syncState.originAlign,\n index = syncState.index,\n offset = syncState.offset;\n var height = containerRef.current.clientHeight;\n var needCollectHeight = false;\n var newTargetAlign = targetAlign;\n var targetTop = null;\n\n // Go to next frame if height not exist\n if (height) {\n var mergedAlign = targetAlign || originAlign;\n\n // Get top & bottom\n var stackTop = 0;\n var itemTop = 0;\n var itemBottom = 0;\n var maxLen = Math.min(data.length - 1, index);\n for (var i = 0; i <= maxLen; i += 1) {\n var key = getKey(data[i]);\n itemTop = stackTop;\n var cacheHeight = heights.get(key);\n itemBottom = itemTop + (cacheHeight === undefined ? itemHeight : cacheHeight);\n stackTop = itemBottom;\n }\n\n // Check if need sync height (visible range has item not record height)\n var leftHeight = mergedAlign === 'top' ? offset : height - offset;\n for (var _i = maxLen; _i >= 0; _i -= 1) {\n var _key = getKey(data[_i]);\n var _cacheHeight = heights.get(_key);\n if (_cacheHeight === undefined) {\n needCollectHeight = true;\n break;\n }\n leftHeight -= _cacheHeight;\n if (leftHeight <= 0) {\n break;\n }\n }\n\n // Scroll to\n switch (mergedAlign) {\n case 'top':\n targetTop = itemTop - offset;\n break;\n case 'bottom':\n targetTop = itemBottom - height + offset;\n break;\n default:\n {\n var scrollTop = containerRef.current.scrollTop;\n var scrollBottom = scrollTop + height;\n if (itemTop < scrollTop) {\n newTargetAlign = 'top';\n } else if (itemBottom > scrollBottom) {\n newTargetAlign = 'bottom';\n }\n }\n }\n if (targetTop !== null) {\n syncScrollTop(targetTop);\n }\n\n // One more time for sync\n if (targetTop !== syncState.lastTop) {\n needCollectHeight = true;\n }\n }\n\n // Trigger next effect\n if (needCollectHeight) {\n setSyncState(_objectSpread(_objectSpread({}, syncState), {}, {\n times: syncState.times + 1,\n targetAlign: newTargetAlign,\n lastTop: targetTop\n }));\n }\n } else if (process.env.NODE_ENV !== 'production' && (syncState === null || syncState === void 0 ? void 0 : syncState.times) === MAX_TIMES) {\n warning(false, 'Seems `scrollTo` with `rc-virtual-list` reach the max limitation. Please fire issue for us. Thanks.');\n }\n }, [syncState, containerRef.current]);\n\n // =========================== Scroll To ===========================\n return function (arg) {\n // When not argument provided, we think dev may want to show the scrollbar\n if (arg === null || arg === undefined) {\n triggerFlash();\n return;\n }\n\n // Normal scroll logic\n raf.cancel(scrollRef.current);\n if (typeof arg === 'number') {\n syncScrollTop(arg);\n } else if (arg && _typeof(arg) === 'object') {\n var index;\n var align = arg.align;\n if ('index' in arg) {\n index = arg.index;\n } else {\n index = data.findIndex(function (item) {\n return getKey(item) === arg.key;\n });\n }\n var _arg$offset = arg.offset,\n offset = _arg$offset === void 0 ? 0 : _arg$offset;\n setSyncState({\n times: 0,\n index: index,\n offset: offset,\n originAlign: align\n });\n }\n };\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { findListDiffIndex } from \"../utils/algorithmUtil\";\nexport default function useDiffItem(data, getKey, onDiff) {\n var _React$useState = React.useState(data),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n prevData = _React$useState2[0],\n setPrevData = _React$useState2[1];\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n diffItem = _React$useState4[0],\n setDiffItem = _React$useState4[1];\n React.useEffect(function () {\n var diff = findListDiffIndex(prevData || [], data || [], getKey);\n if ((diff === null || diff === void 0 ? void 0 : diff.index) !== undefined) {\n onDiff === null || onDiff === void 0 || onDiff(diff.index);\n setDiffItem(data[diff.index]);\n }\n setPrevData(data);\n }, [data]);\n return [diffItem];\n}","/**\n * Get index with specific start index one by one. e.g.\n * min: 3, max: 9, start: 6\n *\n * Return index is:\n * [0]: 6\n * [1]: 7\n * [2]: 5\n * [3]: 8\n * [4]: 4\n * [5]: 9\n * [6]: 3\n */\nexport function getIndexByStartLoc(min, max, start, index) {\n var beforeCount = start - min;\n var afterCount = max - start;\n var balanceCount = Math.min(beforeCount, afterCount) * 2;\n\n // Balance\n if (index <= balanceCount) {\n var stepIndex = Math.floor(index / 2);\n if (index % 2) {\n return start + stepIndex + 1;\n }\n return start - stepIndex;\n }\n\n // One is out of range\n if (beforeCount > afterCount) {\n return start - (index - afterCount);\n }\n return start + (index - beforeCount);\n}\n\n/**\n * We assume that 2 list has only 1 item diff and others keeping the order.\n * So we can use dichotomy algorithm to find changed one.\n */\nexport function findListDiffIndex(originList, targetList, getKey) {\n var originLen = originList.length;\n var targetLen = targetList.length;\n var shortList;\n var longList;\n if (originLen === 0 && targetLen === 0) {\n return null;\n }\n if (originLen < targetLen) {\n shortList = originList;\n longList = targetList;\n } else {\n shortList = targetList;\n longList = originList;\n }\n var notExistKey = {\n __EMPTY_ITEM__: true\n };\n function getItemKey(item) {\n if (item !== undefined) {\n return getKey(item);\n }\n return notExistKey;\n }\n\n // Loop to find diff one\n var diffIndex = null;\n var multiple = Math.abs(originLen - targetLen) !== 1;\n for (var i = 0; i < longList.length; i += 1) {\n var shortKey = getItemKey(shortList[i]);\n var longKey = getItemKey(longList[i]);\n if (shortKey !== longKey) {\n diffIndex = i;\n multiple = multiple || shortKey !== getItemKey(longList[i + 1]);\n break;\n }\n }\n return diffIndex === null ? null : {\n index: diffIndex,\n multiple: multiple\n };\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar isFF = (typeof navigator === \"undefined\" ? \"undefined\" : _typeof(navigator)) === 'object' && /Firefox/i.test(navigator.userAgent);\nexport default isFF;","import { useRef } from 'react';\nexport default (function (isScrollAtTop, isScrollAtBottom) {\n // Do lock for a wheel when scrolling\n var lockRef = useRef(false);\n var lockTimeoutRef = useRef(null);\n function lockScroll() {\n clearTimeout(lockTimeoutRef.current);\n lockRef.current = true;\n lockTimeoutRef.current = setTimeout(function () {\n lockRef.current = false;\n }, 50);\n }\n\n // Pass to ref since global add is in closure\n var scrollPingRef = useRef({\n top: isScrollAtTop,\n bottom: isScrollAtBottom\n });\n scrollPingRef.current.top = isScrollAtTop;\n scrollPingRef.current.bottom = isScrollAtBottom;\n return function (deltaY) {\n var smoothOffset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var originScroll =\n // Pass origin wheel when on the top\n deltaY < 0 && scrollPingRef.current.top ||\n // Pass origin wheel when on the bottom\n deltaY > 0 && scrollPingRef.current.bottom;\n if (smoothOffset && originScroll) {\n // No need lock anymore when it's smooth offset from touchMove interval\n clearTimeout(lockTimeoutRef.current);\n lockRef.current = false;\n } else if (!originScroll || lockRef.current) {\n lockScroll();\n }\n return !lockRef.current && originScroll;\n };\n});","import { useRef } from 'react';\nimport raf from \"rc-util/es/raf\";\nimport isFF from \"../utils/isFirefox\";\nimport useOriginScroll from \"./useOriginScroll\";\nexport default function useFrameWheel(inVirtual, isScrollAtTop, isScrollAtBottom, horizontalScroll,\n/***\n * Return `true` when you need to prevent default event\n */\nonWheelDelta) {\n var offsetRef = useRef(0);\n var nextFrameRef = useRef(null);\n\n // Firefox patch\n var wheelValueRef = useRef(null);\n var isMouseScrollRef = useRef(false);\n\n // Scroll status sync\n var originScroll = useOriginScroll(isScrollAtTop, isScrollAtBottom);\n function onWheelY(event, deltaY) {\n raf.cancel(nextFrameRef.current);\n offsetRef.current += deltaY;\n wheelValueRef.current = deltaY;\n\n // Do nothing when scroll at the edge, Skip check when is in scroll\n if (originScroll(deltaY)) return;\n\n // Proxy of scroll events\n if (!isFF) {\n event.preventDefault();\n }\n nextFrameRef.current = raf(function () {\n // Patch a multiple for Firefox to fix wheel number too small\n // ref: https://github.com/ant-design/ant-design/issues/26372#issuecomment-679460266\n var patchMultiple = isMouseScrollRef.current ? 10 : 1;\n onWheelDelta(offsetRef.current * patchMultiple);\n offsetRef.current = 0;\n });\n }\n function onWheelX(event, deltaX) {\n onWheelDelta(deltaX, true);\n if (!isFF) {\n event.preventDefault();\n }\n }\n\n // Check for which direction does wheel do. `sx` means `shift + wheel`\n var wheelDirectionRef = useRef(null);\n var wheelDirectionCleanRef = useRef(null);\n function onWheel(event) {\n if (!inVirtual) return;\n\n // Wait for 2 frame to clean direction\n raf.cancel(wheelDirectionCleanRef.current);\n wheelDirectionCleanRef.current = raf(function () {\n wheelDirectionRef.current = null;\n }, 2);\n var deltaX = event.deltaX,\n deltaY = event.deltaY,\n shiftKey = event.shiftKey;\n var mergedDeltaX = deltaX;\n var mergedDeltaY = deltaY;\n if (wheelDirectionRef.current === 'sx' || !wheelDirectionRef.current && (shiftKey || false) && deltaY && !deltaX) {\n mergedDeltaX = deltaY;\n mergedDeltaY = 0;\n wheelDirectionRef.current = 'sx';\n }\n var absX = Math.abs(mergedDeltaX);\n var absY = Math.abs(mergedDeltaY);\n if (wheelDirectionRef.current === null) {\n wheelDirectionRef.current = horizontalScroll && absX > absY ? 'x' : 'y';\n }\n if (wheelDirectionRef.current === 'y') {\n onWheelY(event, mergedDeltaY);\n } else {\n onWheelX(event, mergedDeltaX);\n }\n }\n\n // A patch for firefox\n function onFireFoxScroll(event) {\n if (!inVirtual) return;\n isMouseScrollRef.current = event.detail === wheelValueRef.current;\n }\n return [onWheel, onFireFoxScroll];\n}","import { useRef } from 'react';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nvar SMOOTH_PTG = 14 / 15;\nexport default function useMobileTouchMove(inVirtual, listRef, callback) {\n var touchedRef = useRef(false);\n var touchYRef = useRef(0);\n var elementRef = useRef(null);\n\n // Smooth scroll\n var intervalRef = useRef(null);\n\n /* eslint-disable prefer-const */\n var cleanUpEvents;\n var onTouchMove = function onTouchMove(e) {\n if (touchedRef.current) {\n var currentY = Math.ceil(e.touches[0].pageY);\n var _offsetY = touchYRef.current - currentY;\n touchYRef.current = currentY;\n if (callback(_offsetY)) {\n e.preventDefault();\n }\n\n // Smooth interval\n clearInterval(intervalRef.current);\n intervalRef.current = setInterval(function () {\n _offsetY *= SMOOTH_PTG;\n if (!callback(_offsetY, true) || Math.abs(_offsetY) <= 0.1) {\n clearInterval(intervalRef.current);\n }\n }, 16);\n }\n };\n var onTouchEnd = function onTouchEnd() {\n touchedRef.current = false;\n cleanUpEvents();\n };\n var onTouchStart = function onTouchStart(e) {\n cleanUpEvents();\n if (e.touches.length === 1 && !touchedRef.current) {\n touchedRef.current = true;\n touchYRef.current = Math.ceil(e.touches[0].pageY);\n elementRef.current = e.target;\n elementRef.current.addEventListener('touchmove', onTouchMove);\n elementRef.current.addEventListener('touchend', onTouchEnd);\n }\n };\n cleanUpEvents = function cleanUpEvents() {\n if (elementRef.current) {\n elementRef.current.removeEventListener('touchmove', onTouchMove);\n elementRef.current.removeEventListener('touchend', onTouchEnd);\n }\n };\n useLayoutEffect(function () {\n if (inVirtual) {\n listRef.current.addEventListener('touchstart', onTouchStart);\n }\n return function () {\n var _listRef$current;\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 || _listRef$current.removeEventListener('touchstart', onTouchStart);\n cleanUpEvents();\n clearInterval(intervalRef.current);\n };\n }, [inVirtual]);\n}","var MIN_SIZE = 20;\nexport function getSpinSize() {\n var containerSize = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var scrollRange = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var baseSize = containerSize / scrollRange * containerSize;\n if (isNaN(baseSize)) {\n baseSize = 0;\n }\n baseSize = Math.max(baseSize, MIN_SIZE);\n return Math.floor(baseSize);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"className\", \"height\", \"itemHeight\", \"fullHeight\", \"style\", \"data\", \"children\", \"itemKey\", \"virtual\", \"direction\", \"scrollWidth\", \"component\", \"onScroll\", \"onVirtualScroll\", \"onVisibleChange\", \"innerProps\", \"extraRender\", \"styles\"];\nimport * as React from 'react';\nimport { useRef, useState } from 'react';\nimport { flushSync } from 'react-dom';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport Filler from \"./Filler\";\nimport ScrollBar from \"./ScrollBar\";\nimport useChildren from \"./hooks/useChildren\";\nimport useHeights from \"./hooks/useHeights\";\nimport useScrollTo from \"./hooks/useScrollTo\";\nimport useDiffItem from \"./hooks/useDiffItem\";\nimport useFrameWheel from \"./hooks/useFrameWheel\";\nimport useMobileTouchMove from \"./hooks/useMobileTouchMove\";\nimport useOriginScroll from \"./hooks/useOriginScroll\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { getSpinSize } from \"./utils/scrollbarUtil\";\nimport { useEvent } from 'rc-util';\nimport { useGetSize } from \"./hooks/useGetSize\";\nvar EMPTY_DATA = [];\nvar ScrollStyle = {\n overflowY: 'auto',\n overflowAnchor: 'none'\n};\nexport function RawList(props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-virtual-list' : _props$prefixCls,\n className = props.className,\n height = props.height,\n itemHeight = props.itemHeight,\n _props$fullHeight = props.fullHeight,\n fullHeight = _props$fullHeight === void 0 ? true : _props$fullHeight,\n style = props.style,\n data = props.data,\n children = props.children,\n itemKey = props.itemKey,\n virtual = props.virtual,\n direction = props.direction,\n scrollWidth = props.scrollWidth,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n onScroll = props.onScroll,\n onVirtualScroll = props.onVirtualScroll,\n onVisibleChange = props.onVisibleChange,\n innerProps = props.innerProps,\n extraRender = props.extraRender,\n styles = props.styles,\n restProps = _objectWithoutProperties(props, _excluded);\n\n // ================================= MISC =================================\n var useVirtual = !!(virtual !== false && height && itemHeight);\n var inVirtual = useVirtual && data && (itemHeight * data.length > height || !!scrollWidth);\n var isRTL = direction === 'rtl';\n var mergedClassName = classNames(prefixCls, _defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), isRTL), className);\n var mergedData = data || EMPTY_DATA;\n var componentRef = useRef();\n var fillerInnerRef = useRef();\n\n // =============================== Item Key ===============================\n\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n offsetTop = _useState2[0],\n setOffsetTop = _useState2[1];\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n offsetLeft = _useState4[0],\n setOffsetLeft = _useState4[1];\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n scrollMoving = _useState6[0],\n setScrollMoving = _useState6[1];\n var onScrollbarStartMove = function onScrollbarStartMove() {\n setScrollMoving(true);\n };\n var onScrollbarStopMove = function onScrollbarStopMove() {\n setScrollMoving(false);\n };\n\n // =============================== Item Key ===============================\n var getKey = React.useCallback(function (item) {\n if (typeof itemKey === 'function') {\n return itemKey(item);\n }\n return item === null || item === void 0 ? void 0 : item[itemKey];\n }, [itemKey]);\n var sharedConfig = {\n getKey: getKey\n };\n\n // ================================ Scroll ================================\n function syncScrollTop(newTop) {\n setOffsetTop(function (origin) {\n var value;\n if (typeof newTop === 'function') {\n value = newTop(origin);\n } else {\n value = newTop;\n }\n var alignedTop = keepInRange(value);\n componentRef.current.scrollTop = alignedTop;\n return alignedTop;\n });\n }\n\n // ================================ Legacy ================================\n // Put ref here since the range is generate by follow\n var rangeRef = useRef({\n start: 0,\n end: mergedData.length\n });\n var diffItemRef = useRef();\n var _useDiffItem = useDiffItem(mergedData, getKey),\n _useDiffItem2 = _slicedToArray(_useDiffItem, 1),\n diffItem = _useDiffItem2[0];\n diffItemRef.current = diffItem;\n\n // ================================ Height ================================\n var _useHeights = useHeights(getKey, null, null),\n _useHeights2 = _slicedToArray(_useHeights, 4),\n setInstanceRef = _useHeights2[0],\n collectHeight = _useHeights2[1],\n heights = _useHeights2[2],\n heightUpdatedMark = _useHeights2[3];\n\n // ========================== Visible Calculation =========================\n var _React$useMemo = React.useMemo(function () {\n if (!useVirtual) {\n return {\n scrollHeight: undefined,\n start: 0,\n end: mergedData.length - 1,\n offset: undefined\n };\n }\n\n // Always use virtual scroll bar in avoid shaking\n if (!inVirtual) {\n var _fillerInnerRef$curre;\n return {\n scrollHeight: ((_fillerInnerRef$curre = fillerInnerRef.current) === null || _fillerInnerRef$curre === void 0 ? void 0 : _fillerInnerRef$curre.offsetHeight) || 0,\n start: 0,\n end: mergedData.length - 1,\n offset: undefined\n };\n }\n var itemTop = 0;\n var startIndex;\n var startOffset;\n var endIndex;\n var dataLen = mergedData.length;\n for (var i = 0; i < dataLen; i += 1) {\n var _item = mergedData[i];\n var key = getKey(_item);\n var cacheHeight = heights.get(key);\n var currentItemBottom = itemTop + (cacheHeight === undefined ? itemHeight : cacheHeight);\n\n // Check item top in the range\n if (currentItemBottom >= offsetTop && startIndex === undefined) {\n startIndex = i;\n startOffset = itemTop;\n }\n\n // Check item bottom in the range. We will render additional one item for motion usage\n if (currentItemBottom > offsetTop + height && endIndex === undefined) {\n endIndex = i;\n }\n itemTop = currentItemBottom;\n }\n\n // When scrollTop at the end but data cut to small count will reach this\n if (startIndex === undefined) {\n startIndex = 0;\n startOffset = 0;\n endIndex = Math.ceil(height / itemHeight);\n }\n if (endIndex === undefined) {\n endIndex = mergedData.length - 1;\n }\n\n // Give cache to improve scroll experience\n endIndex = Math.min(endIndex + 1, mergedData.length - 1);\n return {\n scrollHeight: itemTop,\n start: startIndex,\n end: endIndex,\n offset: startOffset\n };\n }, [inVirtual, useVirtual, offsetTop, mergedData, heightUpdatedMark, height]),\n scrollHeight = _React$useMemo.scrollHeight,\n start = _React$useMemo.start,\n end = _React$useMemo.end,\n fillerOffset = _React$useMemo.offset;\n rangeRef.current.start = start;\n rangeRef.current.end = end;\n\n // ================================= Size =================================\n var _React$useState = React.useState({\n width: 0,\n height: height\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n size = _React$useState2[0],\n setSize = _React$useState2[1];\n var onHolderResize = function onHolderResize(sizeInfo) {\n setSize({\n width: sizeInfo.width || sizeInfo.offsetWidth,\n height: sizeInfo.height || sizeInfo.offsetHeight\n });\n };\n\n // Hack on scrollbar to enable flash call\n var verticalScrollBarRef = useRef();\n var horizontalScrollBarRef = useRef();\n var horizontalScrollBarSpinSize = React.useMemo(function () {\n return getSpinSize(size.width, scrollWidth);\n }, [size.width, scrollWidth]);\n var verticalScrollBarSpinSize = React.useMemo(function () {\n return getSpinSize(size.height, scrollHeight);\n }, [size.height, scrollHeight]);\n\n // =============================== In Range ===============================\n var maxScrollHeight = scrollHeight - height;\n var maxScrollHeightRef = useRef(maxScrollHeight);\n maxScrollHeightRef.current = maxScrollHeight;\n function keepInRange(newScrollTop) {\n var newTop = newScrollTop;\n if (!Number.isNaN(maxScrollHeightRef.current)) {\n newTop = Math.min(newTop, maxScrollHeightRef.current);\n }\n newTop = Math.max(newTop, 0);\n return newTop;\n }\n var isScrollAtTop = offsetTop <= 0;\n var isScrollAtBottom = offsetTop >= maxScrollHeight;\n var originScroll = useOriginScroll(isScrollAtTop, isScrollAtBottom);\n\n // ================================ Scroll ================================\n var getVirtualScrollInfo = function getVirtualScrollInfo() {\n return {\n x: isRTL ? -offsetLeft : offsetLeft,\n y: offsetTop\n };\n };\n var lastVirtualScrollInfoRef = useRef(getVirtualScrollInfo());\n var triggerScroll = useEvent(function () {\n if (onVirtualScroll) {\n var nextInfo = getVirtualScrollInfo();\n\n // Trigger when offset changed\n if (lastVirtualScrollInfoRef.current.x !== nextInfo.x || lastVirtualScrollInfoRef.current.y !== nextInfo.y) {\n onVirtualScroll(nextInfo);\n lastVirtualScrollInfoRef.current = nextInfo;\n }\n }\n });\n function onScrollBar(newScrollOffset, horizontal) {\n var newOffset = newScrollOffset;\n if (horizontal) {\n flushSync(function () {\n setOffsetLeft(newOffset);\n });\n triggerScroll();\n } else {\n syncScrollTop(newOffset);\n }\n }\n\n // When data size reduce. It may trigger native scroll event back to fit scroll position\n function onFallbackScroll(e) {\n var newScrollTop = e.currentTarget.scrollTop;\n if (newScrollTop !== offsetTop) {\n syncScrollTop(newScrollTop);\n }\n\n // Trigger origin onScroll\n onScroll === null || onScroll === void 0 || onScroll(e);\n triggerScroll();\n }\n var keepInHorizontalRange = function keepInHorizontalRange(nextOffsetLeft) {\n var tmpOffsetLeft = nextOffsetLeft;\n var max = scrollWidth - size.width;\n tmpOffsetLeft = Math.max(tmpOffsetLeft, 0);\n tmpOffsetLeft = Math.min(tmpOffsetLeft, max);\n return tmpOffsetLeft;\n };\n var onWheelDelta = useEvent(function (offsetXY, fromHorizontal) {\n if (fromHorizontal) {\n // Horizontal scroll no need sync virtual position\n\n flushSync(function () {\n setOffsetLeft(function (left) {\n var nextOffsetLeft = left + (isRTL ? -offsetXY : offsetXY);\n return keepInHorizontalRange(nextOffsetLeft);\n });\n });\n triggerScroll();\n } else {\n syncScrollTop(function (top) {\n var newTop = top + offsetXY;\n return newTop;\n });\n }\n });\n\n // Since this added in global,should use ref to keep update\n var _useFrameWheel = useFrameWheel(useVirtual, isScrollAtTop, isScrollAtBottom, !!scrollWidth, onWheelDelta),\n _useFrameWheel2 = _slicedToArray(_useFrameWheel, 2),\n onRawWheel = _useFrameWheel2[0],\n onFireFoxScroll = _useFrameWheel2[1];\n\n // Mobile touch move\n useMobileTouchMove(useVirtual, componentRef, function (deltaY, smoothOffset) {\n if (originScroll(deltaY, smoothOffset)) {\n return false;\n }\n onRawWheel({\n preventDefault: function preventDefault() {},\n deltaY: deltaY\n });\n return true;\n });\n useLayoutEffect(function () {\n // Firefox only\n function onMozMousePixelScroll(e) {\n if (useVirtual) {\n e.preventDefault();\n }\n }\n var componentEle = componentRef.current;\n componentEle.addEventListener('wheel', onRawWheel);\n componentEle.addEventListener('DOMMouseScroll', onFireFoxScroll);\n componentEle.addEventListener('MozMousePixelScroll', onMozMousePixelScroll);\n return function () {\n componentEle.removeEventListener('wheel', onRawWheel);\n componentEle.removeEventListener('DOMMouseScroll', onFireFoxScroll);\n componentEle.removeEventListener('MozMousePixelScroll', onMozMousePixelScroll);\n };\n }, [useVirtual]);\n\n // Sync scroll left\n useLayoutEffect(function () {\n if (scrollWidth) {\n setOffsetLeft(function (left) {\n return keepInHorizontalRange(left);\n });\n }\n }, [size.width, scrollWidth]);\n\n // ================================= Ref ==================================\n var delayHideScrollBar = function delayHideScrollBar() {\n var _verticalScrollBarRef, _horizontalScrollBarR;\n (_verticalScrollBarRef = verticalScrollBarRef.current) === null || _verticalScrollBarRef === void 0 || _verticalScrollBarRef.delayHidden();\n (_horizontalScrollBarR = horizontalScrollBarRef.current) === null || _horizontalScrollBarR === void 0 || _horizontalScrollBarR.delayHidden();\n };\n var _scrollTo = useScrollTo(componentRef, mergedData, heights, itemHeight, getKey, function () {\n return collectHeight(true);\n }, syncScrollTop, delayHideScrollBar);\n React.useImperativeHandle(ref, function () {\n return {\n getScrollInfo: getVirtualScrollInfo,\n scrollTo: function scrollTo(config) {\n function isPosScroll(arg) {\n return arg && _typeof(arg) === 'object' && ('left' in arg || 'top' in arg);\n }\n if (isPosScroll(config)) {\n // Scroll X\n if (config.left !== undefined) {\n setOffsetLeft(keepInHorizontalRange(config.left));\n }\n\n // Scroll Y\n _scrollTo(config.top);\n } else {\n _scrollTo(config);\n }\n }\n };\n });\n\n // ================================ Effect ================================\n /** We need told outside that some list not rendered */\n useLayoutEffect(function () {\n if (onVisibleChange) {\n var renderList = mergedData.slice(start, end + 1);\n onVisibleChange(renderList, mergedData);\n }\n }, [start, end, mergedData]);\n\n // ================================ Extra =================================\n var getSize = useGetSize(mergedData, getKey, heights, itemHeight);\n var extraContent = extraRender === null || extraRender === void 0 ? void 0 : extraRender({\n start: start,\n end: end,\n virtual: inVirtual,\n offsetX: offsetLeft,\n offsetY: fillerOffset,\n rtl: isRTL,\n getSize: getSize\n });\n\n // ================================ Render ================================\n var listChildren = useChildren(mergedData, start, end, scrollWidth, setInstanceRef, children, sharedConfig);\n var componentStyle = null;\n if (height) {\n componentStyle = _objectSpread(_defineProperty({}, fullHeight ? 'height' : 'maxHeight', height), ScrollStyle);\n if (useVirtual) {\n componentStyle.overflowY = 'hidden';\n if (scrollWidth) {\n componentStyle.overflowX = 'hidden';\n }\n if (scrollMoving) {\n componentStyle.pointerEvents = 'none';\n }\n }\n }\n var containerProps = {};\n if (isRTL) {\n containerProps.dir = 'rtl';\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n style: _objectSpread(_objectSpread({}, style), {}, {\n position: 'relative'\n }),\n className: mergedClassName\n }, containerProps, restProps), /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onHolderResize\n }, /*#__PURE__*/React.createElement(Component, {\n className: \"\".concat(prefixCls, \"-holder\"),\n style: componentStyle,\n ref: componentRef,\n onScroll: onFallbackScroll,\n onMouseEnter: delayHideScrollBar\n }, /*#__PURE__*/React.createElement(Filler, {\n prefixCls: prefixCls,\n height: scrollHeight,\n offsetX: offsetLeft,\n offsetY: fillerOffset,\n scrollWidth: scrollWidth,\n onInnerResize: collectHeight,\n ref: fillerInnerRef,\n innerProps: innerProps,\n rtl: isRTL,\n extra: extraContent\n }, listChildren))), inVirtual && scrollHeight > height && /*#__PURE__*/React.createElement(ScrollBar, {\n ref: verticalScrollBarRef,\n prefixCls: prefixCls,\n scrollOffset: offsetTop,\n scrollRange: scrollHeight,\n rtl: isRTL,\n onScroll: onScrollBar,\n onStartMove: onScrollbarStartMove,\n onStopMove: onScrollbarStopMove,\n spinSize: verticalScrollBarSpinSize,\n containerSize: size.height,\n style: styles === null || styles === void 0 ? void 0 : styles.verticalScrollBar,\n thumbStyle: styles === null || styles === void 0 ? void 0 : styles.verticalScrollBarThumb\n }), inVirtual && scrollWidth > size.width && /*#__PURE__*/React.createElement(ScrollBar, {\n ref: horizontalScrollBarRef,\n prefixCls: prefixCls,\n scrollOffset: offsetLeft,\n scrollRange: scrollWidth,\n rtl: isRTL,\n onScroll: onScrollBar,\n onStartMove: onScrollbarStartMove,\n onStopMove: onScrollbarStopMove,\n spinSize: horizontalScrollBarSpinSize,\n containerSize: size.width,\n horizontal: true,\n style: styles === null || styles === void 0 ? void 0 : styles.horizontalScrollBar,\n thumbStyle: styles === null || styles === void 0 ? void 0 : styles.horizontalScrollBarThumb\n }));\n}\nvar List = /*#__PURE__*/React.forwardRef(RawList);\nList.displayName = 'List';\nexport default List;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useEffect } from 'react';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport raf from \"rc-util/es/raf\";\nimport CacheMap from \"../utils/CacheMap\";\nexport default function useHeights(getKey, onItemAdd, onItemRemove) {\n var _React$useState = React.useState(0),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n updatedMark = _React$useState2[0],\n setUpdatedMark = _React$useState2[1];\n var instanceRef = useRef(new Map());\n var heightsRef = useRef(new CacheMap());\n var collectRafRef = useRef();\n function cancelRaf() {\n raf.cancel(collectRafRef.current);\n }\n function collectHeight() {\n var sync = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n cancelRaf();\n var doCollect = function doCollect() {\n instanceRef.current.forEach(function (element, key) {\n if (element && element.offsetParent) {\n var htmlElement = findDOMNode(element);\n var offsetHeight = htmlElement.offsetHeight;\n if (heightsRef.current.get(key) !== offsetHeight) {\n heightsRef.current.set(key, htmlElement.offsetHeight);\n }\n }\n });\n\n // Always trigger update mark to tell parent that should re-calculate heights when resized\n setUpdatedMark(function (c) {\n return c + 1;\n });\n };\n if (sync) {\n doCollect();\n } else {\n collectRafRef.current = raf(doCollect);\n }\n }\n function setInstanceRef(item, instance) {\n var key = getKey(item);\n var origin = instanceRef.current.get(key);\n if (instance) {\n instanceRef.current.set(key, instance);\n collectHeight();\n } else {\n instanceRef.current.delete(key);\n }\n\n // Instance changed\n if (!origin !== !instance) {\n if (instance) {\n onItemAdd === null || onItemAdd === void 0 || onItemAdd(item);\n } else {\n onItemRemove === null || onItemRemove === void 0 || onItemRemove(item);\n }\n }\n }\n useEffect(function () {\n return cancelRaf;\n }, []);\n return [setInstanceRef, collectHeight, heightsRef.current, updatedMark];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n\n/**\n * Size info need loop query for the `heights` which will has the perf issue.\n * Let cache result for each render phase.\n */\nexport function useGetSize(mergedData, getKey, heights, itemHeight) {\n var _React$useMemo = React.useMemo(function () {\n return [new Map(), []];\n }, [mergedData, heights.id, itemHeight]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n key2Index = _React$useMemo2[0],\n bottomList = _React$useMemo2[1];\n var getSize = function getSize(startKey) {\n var endKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : startKey;\n // Get from cache first\n var startIndex = key2Index.get(startKey);\n var endIndex = key2Index.get(endKey);\n\n // Loop to fill the cache\n if (startIndex === undefined || endIndex === undefined) {\n var dataLen = mergedData.length;\n for (var i = bottomList.length; i < dataLen; i += 1) {\n var _heights$get;\n var item = mergedData[i];\n var key = getKey(item);\n key2Index.set(key, i);\n var cacheHeight = (_heights$get = heights.get(key)) !== null && _heights$get !== void 0 ? _heights$get : itemHeight;\n bottomList[i] = (bottomList[i - 1] || 0) + cacheHeight;\n if (key === startKey) {\n startIndex = i;\n }\n if (key === endKey) {\n endIndex = i;\n }\n if (startIndex !== undefined && endIndex !== undefined) {\n break;\n }\n }\n }\n return {\n top: bottomList[startIndex - 1] || 0,\n bottom: bottomList[endIndex]\n };\n };\n return getSize;\n}","import * as React from 'react';\nimport { Item } from \"../Item\";\nexport default function useChildren(list, startIndex, endIndex, scrollWidth, setNodeRef, renderFunc, _ref) {\n var getKey = _ref.getKey;\n return list.slice(startIndex, endIndex + 1).map(function (item, index) {\n var eleIndex = startIndex + index;\n var node = renderFunc(item, eleIndex, {\n style: {\n width: scrollWidth\n }\n });\n var key = getKey(item);\n return /*#__PURE__*/React.createElement(Item, {\n key: key,\n setRef: function setRef(ele) {\n return setNodeRef(item, ele);\n }\n }, node);\n });\n}","import List from \"./List\";\nexport default List;"],"names":["__rest","s","e","t","p","Object","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","propertyIsEnumerable","InternalCheckbox","props","ref","_a","prefixCls","customizePrefixCls","className","rootClassName","children","indeterminate","style","onMouseEnter","onMouseLeave","skipGroup","disabled","restProps","getPrefixCls","direction","checkbox","checkboxGroup","isFormItemInput","contextDisabled","DisabledContext","mergedDisabled","prevValue","value","registerValue","current","cancelValue","rootCls","useCSSVarCls","wrapCSSVar","hashId","cssVarCls","checkboxProps","assign","onChange","apply","arguments","toggleOption","label","name","checked","includes","classString","checkboxClass","ariaChecked","undefined","component","CheckboxGroup","defaultValue","options","setValue","registeredValues","setRegisteredValues","memoOptions","map","option","groupPrefixCls","domProps","omit","childrenNode","key","toString","title","id","required","context","optionIndex","newValue","push","splice","filter","val","sort","a","b","findIndex","opt","prevValues","concat","v","Provider","Group","__ANT_CHECKBOX","genCheckboxStyle","token","checkboxCls","wrapperCls","display","flexWrap","columnGap","marginXS","antCls","flex","alignItems","cursor","width","overflow","content","marginInlineStart","height","position","whiteSpace","lineHeight","borderRadius","borderRadiusSM","alignSelf","inset","zIndex","opacity","margin","boxSizing","checkboxSize","backgroundColor","colorBgContainer","border","lineWidth","lineType","colorBorder","borderCollapse","transition","motionDurationSlow","top","insetInlineStart","calc","div","mul","equal","lineWidthBold","colorWhite","borderTop","borderInlineStart","transform","motionDurationFast","motionEaseInBack","paddingInlineStart","paddingXS","paddingInlineEnd","borderColor","colorPrimary","colorPrimaryHover","motionDurationMid","motionEaseOutBack","fontSizeLG","pointerEvents","background","colorBgContainerDisabled","colorTextDisabled","color","getStyle","checkboxToken","controlInteractiveSize","_ref","componentName","useContext","prefix","image","PRESENTED_IMAGE_SIMPLE","useToken","themeStyle","colorBgBase","toHsl","l","viewBox","xmlns","fill","fillRule","fillOpacity","cx","cy","rx","ry","d","colorFill","colorFillTertiary","colorFillQuaternary","shadowColor","contentColor","useMemo","onBackground","toHexShortString","stroke","genSharedEmptyStyle","componentCls","marginXL","fontSize","marginInline","textAlign","emptyImgHeight","marginBottom","opacityImage","img","svg","maxWidth","colorTextDescription","marginTop","marginBlock","emptyImgHeightMD","emptyImgHeightSM","controlHeightLG","emptyToken","emptyImgCls","defaultEmptyImg","simpleEmptyImg","description","imageStyle","empty","locale","useLocale","des","alt","imageNode","src","PRESENTED_IMAGE_DEFAULT","customizeIcon","customizeIconProps","_onMouseDown","onMouseDown","onClick","icon","event","preventDefault","userSelect","WebkitUserSelect","unselectable","split","cls","BaseSelectContext","useLock","duration","lockRef","timeoutRef","window","clearTimeout","locked","setTimeout","Input","_inputNode2","inputElement","tabIndex","autoFocus","autoComplete","editable","activeDescendantId","maxLength","_onKeyDown","onKeyDown","_onChange","onPaste","_onCompositionStart","onCompositionStart","_onCompositionEnd","onCompositionEnd","open","attrs","inputNode","_inputNode","originRef","originProps","onOriginKeyDown","onOriginChange","onOriginMouseDown","onOriginCompositionStart","onOriginCompositionEnd","type","role","readOnly","Array","isArray","isBrowserClient","document","documentElement","isTitleType","getTitle","item","itemKey","_value$key","onPreventMouseDown","stopPropagation","effect","deps","values","searchValue","autoClearSearchValue","inputRef","placeholder","mode","showSearch","removeIcon","maxTagCount","maxTagTextLength","_props$maxTagPlacehol","maxTagPlaceholder","omittedValues","tagRender","onToggleOpen","onRemove","onInputChange","onInputPaste","onInputKeyDown","onInputMouseDown","onInputCompositionStart","onInputCompositionEnd","measureRef","_useState","useState","_useState2","inputWidth","setInputWidth","_useState3","_useState4","focused","setFocused","selectionPrefixCls","inputValue","inputEditable","scrollWidth","defaultRenderSelector","itemDisabled","closable","onClose","customizeRenderSelector","isMaxTag","onFocus","onBlur","pickAttrs","selectionNode","data","renderItem","valueItem","displayLabel","strLabel","String","slice","renderRest","suffix","maxCount","activeValue","_React$useState","_React$useState2","inputChanged","setInputChanged","combobox","hasTextInput","selectionTitle","placeholderNode","visibility","Selector","useRef","compositionStatusRef","tokenWithEnter","onSearch","onSearchSubmit","domRef","focus","blur","_useLock","_useLock2","getInputMouseDown","setInputMouseDown","pastedTextRef","triggerOnSearch","sharedProps","currentKeyCode","which","KeyCode","UP","DOWN","ENTER","target","ESC","SHIFT","BACKSPACE","TAB","WIN_KEY","ALT","META","WIN_KEY_RIGHT","CTRL","SEMICOLON","EQUALS","CAPS_LOCK","CONTEXT_MENU","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","test","replacedText","replace","clipboardData","getData","selectNode","MultipleSelector","body","msTouchAction","inputMouseDown","_excluded","SelectTrigger","visible","popupElement","animation","transitionName","dropdownStyle","dropdownClassName","_props$direction","placement","builtinPlacements","dropdownMatchSelectWidth","dropdownRender","dropdownAlign","getPopupContainer","getTriggerDOMNode","onPopupVisibleChange","onPopupMouseEnter","dropdownPrefixCls","popupNode","mergedBuiltinPlacements","adjustX","bottomLeft","points","offset","adjustY","htmlRegion","bottomRight","topLeft","topRight","getBuiltInPlacements","mergedTransitionName","isNumberPopupWidth","stretch","popupStyle","triggerPopupRef","getPopupElement","_triggerPopupRef$curr","showAction","hideAction","popupPlacement","popupTransitionName","popup","popupAlign","popupVisible","popupClassName","getKey","index","isValidCount","Number","isNaN","fillFieldNames","fieldNames","childrenAsData","mergedLabel","groupLabel","injectPropsWithOption","newOption","defineProperty","get","Polite","join","DEFAULT_OMIT_PROPS","BaseSelect","_customizeRawInputEle","omitDomProps","displayValues","onDisplayValuesChange","emptyOptions","_props$notFoundConten","notFoundContent","onClear","loading","getInputElement","getRawInputElement","defaultOpen","onDropdownVisibleChange","onActiveValueChange","onSearchSplit","tokenSeparators","allowClear","suffixIcon","clearIcon","OptionList","_props$showAction","onKeyUp","multiple","mergedShowSearch","forEach","propName","mobile","setMobile","isMobile","containerRef","selectorDomRef","triggerRef","selectorRef","listRef","blurRef","_useDelayReset","timeout","bool","setBool","delayRef","cancelLatest","callback","useDelayReset","_useDelayReset2","mockFocused","setMockFocused","cancelSetMockFocused","_selectorRef$current","_selectorRef$current2","scrollTo","arg","_listRef$current","nativeElement","mergedSearchValue","_displayValues$","customizeInputElement","customizeRawInputElement","customizeRawInputRef","_React$useState3","_React$useState4","rendered","setRendered","useLayoutEffect","_useMergedState","useMergedState","_useMergedState2","innerOpen","setInnerOpen","mergedOpen","emptyListContent","triggerOpen","newOpen","nextOpen","some","tokenSeparator","rawValues","onInternalSearch","searchText","fromTyping","isCompositing","size","ret","newSearchText","separatedList","text","tokens","end","match","list","separate","str","_ref3","_ref4","restTokens","reduce","prevList","unitStr","Boolean","getSeparatedContent","patchLabels","source","getClearLock","setClearLock","keyLockRef","focusRef","activeTimeoutIds","timeoutId","onTriggerVisibleChange","_React$useState5","forceUpdate","elements","customizedTrigger","propsRef","onGlobalMouseDown","_propsRef$current","shadowRoot","composed","composedPath","element","every","contains","addEventListener","removeEventListener","useSelectTriggerControl","_triggerRef$current2","arrowNode","baseSelectContext","toggleOpen","showSuffixIcon","renderNode","_useAllowClear","onClearMouseDown","mergedClearIcon","useAllowClear","_selectorRef$current4","mergedAllowClear","clearNode","optionList","mergedClassName","selectorNode","node","trim","newValues","_triggerRef$current","_selectorRef$current3","activeElement","_len3","restArgs","_key3","_listRef$current2","clearLock","isEnterKey","cloneDisplayValues","removedDisplayValue","_len","rest","_key","_len2","_key2","_listRef$current3","OptGroup","isSelectOptGroup","Option","isSelectOption","_","_useBaseProps","onPopupScroll","_React$useContext","flattenOptions","onActiveValue","defaultActiveFirstOption","onSelect","menuItemSelectedIcon","virtual","listHeight","listItemHeight","optionRender","itemPrefixCls","memoFlattenOptions","prev","next","overMaxCount","onListMouseDown","scrollIntoView","args","getEnabledActiveIndex","len","group","activeIndex","setActiveIndex","setActive","fromKeyboard","info","flattenItem","useEffect","isSelected","has","from","_ref2","onSelectValue","selected","ctrlKey","N","P","navigator","appVersion","nextActiveIndex","_item$data","omitFieldNameList","keys","getLabel","getItemAriaProps","itemData","a11yProps","itemHeight","fullHeight","onScroll","innerProps","itemIndex","groupOption","_data$title","groupTitle","otherProps","passedProps","optionPrefixCls","optionClassName","iconVisible","optionTitle","onMouseMove","search","toUpperCase","uuid","canUseDom","useId","innerId","setInnerId","retId","_excluded2","nodes","optionOnly","_ref2$props","_ref$props","convertNodeToOption","optionFilterProp","optionLabelProp","mergedOptions","valueOptions","Map","labelOptions","setLabelOptions","labelOptionsMap","set","dig","isChildren","useRefFunc","funcRef","cacheFn","OMIT_DOM_PROPS","Select","_props$prefixCls","backfill","_props$autoClearSearc","onDeselect","_props$dropdownMatchS","filterOption","filterSort","_props$listHeight","_props$listItemHeight","labelRender","labelInValue","mergedId","mergedFilterOption","mergedFieldNames","JSON","stringify","postState","setSearchValue","parsedOptions","convert2LabelValues","draftValues","rawValue","rawLabel","rawKey","rawDisabled","rawTitle","_val$value","isRawValue","_option$key","_useMergedState3","_useMergedState4","internalValue","setInternalValue","rawLabeledValues","_values$","isComboNoValue","_useCache","labeledValues","cacheRef","_cacheRef$current","prevValueCache","prevOptionCache","patchedValues","_prevValueCache$get","valueCache","optionCache","useCache","_useCache2","mergedValues","getMixedOption","firstValue","Set","_mergedValues$","strValue","hasValue","createTagOption","filteredOptions","fieldOptions","fieldLabel","fieldValue","customizeFilter","upperSearch","filterFunc","wrapOption","subOptions","subItem","useFilterOptions","cloneOptions","existOptions","filledSearchOptions","orderedFilteredOptions","displayOptions","flattenList","_fillFieldNames","isGroupOption","grpLabel","triggerChange","newVal","_mergedValues$index","returnValues","returnOptions","setActiveValue","accessibilityIndex","setAccessibilityIndex","mergedDefaultActiveFirstOption","active","_ref3$source","triggerSelect","getSelectEnt","_option$key2","_getSelectEnt","_getSelectEnt2","wrappedValue","_option","_getSelectEnt3","_getSelectEnt4","_wrappedValue","_option2","onInternalSelect","cloneValues","mergedSelect","selectContext","realVirtual","nextValues","formatted","newRawValues","words","patchValues","word","newRawValue","TypedSelect","buildInPlacements","popupOverflow","sharedConfig","shiftY","dynamicInset","genItemStyle","optionHeight","optionFontSize","optionLineHeight","optionPadding","minHeight","padding","colorText","fontWeight","selectItemCls","slideUpEnterActive","slideUpAppearActive","slideUpLeaveActive","dropdownPlacementCls","zIndexPopup","paddingXXS","fontVariant","colorBgElevated","borderRadiusLG","outline","boxShadow","boxShadowSecondary","animationName","slide","fontSizeSM","optionActiveBg","optionSelectedColor","optionSelectedFontWeight","optionSelectedBg","borderEndStartRadius","borderEndEndRadius","borderStartStartRadius","borderStartEndRadius","controlPaddingHorizontal","genSizeStyle","inputPaddingHorizontalBase","selectHeightWithoutBorder","controlHeight","sub","insetInlineEnd","bottom","WebkitAppearance","showArrowPaddingInlineEnd","colorTextPlaceholder","inputPaddingHorizontalSM","controlPaddingHorizontalSM","controlHeightSM","add","singleItemHeightLG","genBaseOutlinedStyle","controlOutlineWidth","selectorBg","hoverBorderHover","activeBorderColor","activeShadowColor","genOutlinedStatusStyle","status","genOutlinedStyle","controlOutline","colorError","colorErrorHover","colorErrorOutline","colorWarning","colorWarningHover","colorWarningOutline","multipleItemBg","multipleItemBorderColor","genBaseFilledStyle","bg","hoverBg","genFilledStatusStyle","genFilledStyle","colorFillSecondary","colorErrorBg","colorErrorBgHover","colorWarningBg","colorWarningBgHover","colorSplit","genBorderlessStyle","genSelectorStyle","motionEaseInOut","input","getSearchInputWithoutBorderStyle","appearance","fontFamily","genBaseStyle","iconCls","fontSizeIcon","colorTextQuaternary","verticalAlign","marginInlineEnd","fontStyle","textTransform","textRendering","colorTextTertiary","genSelectStyle","borderElCls","focusElCls","rootPrefixCls","selectToken","paddingSM","multipleSelectItemHeight","multipleItemHeight","selectHeight","zIndexPopupBase","fontWeightStrong","controlItemBgActive","controlItemBgHover","dblPaddingXXS","dblLineWidth","Math","min","multipleItemHeightSM","multipleItemHeightLG","INTERNAL_FIXED_ITEM_MARGIN","floor","clearBg","multipleSelectorBgDisabled","multipleItemColorDisabled","multipleItemBorderColorDisabled","ceil","unitless","SECRET_COMBOBOX_MODE_DO_NOT_USE","InternalSelect","bordered","customListItemHeight","customizeSize","customDisabled","customStatus","popupMatchSelectWidth","propDirection","variant","customizeVariant","getContextPopupContainer","renderEmpty","contextDirection","contextPopupMatchSelectWidth","select","compactSize","compactItemClassnames","enableVariantCls","useVariants","m","isMultiple","showArrow","useShowArrow","mergedPopupMatchSelectWidth","contextStatus","hasFeedback","feedbackIcon","mergedStatus","mergedNotFound","itemIcon","useIcons","selectProps","mergedPopupClassName","mergedSize","useSize","ctx","memoPlacement","useZIndex","_InternalPanelDoNotUseOrYouWillBeFired","getMultipleSelectorUnit","basePadding","max","containerPadding","itemLineHeight","genOverflowStyle","colorIcon","colorIconHover","textOverflow","genSelectionStyle","selectOverflowPrefixCls","selectItemHeight","selectItemDist","getSelectItemStyle","suffixCls","multipleSelectorUnit","paddingInline","paddingBlock","minWidth","rawStyle","smallToken","borderRadiusXS","largeToken","insetInline","getSuffixIconNode","arrowIcon","mergedSuffixIcon","spin","mergedItemIcon","mergedRemoveIcon","moveDownIn","transformOrigin","moveDownOut","moveLeftIn","moveLeftOut","moveRightIn","moveRightOut","moveMotion","inKeyframes","outKeyframes","initMoveMotion","motionName","motionCls","animationTimingFunction","motionEaseOutCirc","motionEaseInOutCirc","slideUpIn","slideUpOut","slideDownIn","slideDownOut","slideLeftIn","slideLeftOut","slideRightIn","slideRightOut","slideMotion","initSlideMotion","motionEaseOutQuint","motionEaseInQuint","AntdIcon","A","forwardRef","_props$defaultChecked","defaultChecked","_props$type","inputProps","holderRef","setRawValue","useImperativeHandle","_inputRef$current","_inputRef$current2","nativeEvent","UNDEFINED","InternalItem","invalidate","responsive","responsiveDisabled","registerSize","order","_props$component","Component","mergedHidden","internalRegisterSize","overflowStyle","childNode","overflowY","overflowProps","itemNode","onResize","offsetWidth","Item","displayName","useBatcher","updateFuncRef","MessageChannel","raf","channel","port1","onmessage","port2","postMessage","channelUpdate","unstable_batchedUpdates","fn","useEffectState","notifyEffectUpdate","stateValue","setStateValue","useEvent","nextValue","OverflowContext","_excluded3","InternalRawItem","_restProps","contextClassName","restContext","RawItem","RESPONSIVE","INVALIDATE","defaultRenderRest","omittedItems","Overflow","_props$data","renderRawItem","_props$itemWidth","itemWidth","ssr","renderRawRest","itemComponent","onVisibleChange","fullySSR","_useEffectState","_useEffectState2","containerWidth","setContainerWidth","mergedContainerWidth","_useEffectState3","_useEffectState4","itemWidths","setItemWidths","_useEffectState5","_useEffectState6","prevRestWidth","setPrevRestWidth","_useEffectState7","_useEffectState8","restWidth","setRestWidth","_useEffectState9","_useEffectState10","suffixWidth","setSuffixWidth","suffixFixedStart","setSuffixFixedStart","displayCount","setDisplayCount","mergedDisplayCount","MAX_SAFE_INTEGER","_useState5","_useState6","restReady","setRestReady","mergedRestWidth","isResponsive","shouldResponsive","showRest","mergedData","items","useCallback","mergedRenderItem","updateDisplayCount","count","suffixFixedStartVal","notReady","origin","clone","delete","getItemWidth","totalWidth","lastIndex","currentItemWidth","displayRest","suffixStyle","left","restNode","itemSharedProps","internalRenderItemNode","restContextProps","mergedRenderRest","overflowNode","clientWidth","ForwardOverflow","Filler","offsetY","offsetX","onInnerResize","rtl","extra","outerStyle","innerStyle","flexDirection","offsetHeight","getPageXY","horizontal","touches","scrollOffset","scrollRange","onStartMove","onStopMove","spinSize","containerSize","propsThumbStyle","thumbStyle","dragging","setDragging","pageXY","setPageXY","_React$useState6","startTop","setStartTop","isLTR","scrollbarRef","thumbRef","_React$useState7","_React$useState8","setVisible","visibleTimeoutRef","delayHidden","enableScrollRange","enableOffsetRange","stateRef","pageY","onThumbMouseDown","onScrollbarTouchStart","scrollbarEle","thumbEle","enableScrollRangeRef","enableOffsetRangeRef","moveRafId","_stateRef$current","stateDragging","statePageY","stateStartTop","cancel","newTop","tmpEnableScrollRange","tmpEnableOffsetRange","ptg","newScrollTop","onMouseUp","scrollbarPrefixCls","containerStyle","right","setRef","refFunc","CacheMap","this","maps","create","MAX_TIMES","useDiffItem","onDiff","prevData","setPrevData","diffItem","setDiffItem","diff","originList","targetList","shortList","longList","originLen","targetLen","notExistKey","__EMPTY_ITEM__","getItemKey","diffIndex","abs","shortKey","findListDiffIndex","userAgent","isScrollAtTop","isScrollAtBottom","lockTimeoutRef","scrollPingRef","deltaY","smoothOffset","originScroll","useFrameWheel","inVirtual","horizontalScroll","onWheelDelta","offsetRef","nextFrameRef","wheelValueRef","isMouseScrollRef","useOriginScroll","wheelDirectionRef","wheelDirectionCleanRef","deltaX","shiftKey","mergedDeltaX","mergedDeltaY","absX","absY","patchMultiple","onWheelY","onWheelX","detail","SMOOTH_PTG","MIN_SIZE","getSpinSize","baseSize","EMPTY_DATA","ScrollStyle","overflowAnchor","RawList","_props$fullHeight","onVirtualScroll","extraRender","styles","useVirtual","isRTL","componentRef","fillerInnerRef","offsetTop","setOffsetTop","offsetLeft","setOffsetLeft","scrollMoving","setScrollMoving","onScrollbarStartMove","onScrollbarStopMove","syncScrollTop","alignedTop","maxScrollHeightRef","keepInRange","scrollTop","rangeRef","start","diffItemRef","_useDiffItem","_useHeights","onItemAdd","onItemRemove","updatedMark","setUpdatedMark","instanceRef","heightsRef","collectRafRef","cancelRaf","collectHeight","sync","doCollect","offsetParent","htmlElement","findDOMNode","c","instance","useHeights","_useHeights2","setInstanceRef","heights","heightUpdatedMark","_React$useMemo","scrollHeight","_fillerInnerRef$curre","startIndex","startOffset","endIndex","itemTop","dataLen","_item","cacheHeight","currentItemBottom","fillerOffset","setSize","verticalScrollBarRef","horizontalScrollBarRef","horizontalScrollBarSpinSize","verticalScrollBarSpinSize","maxScrollHeight","getVirtualScrollInfo","x","y","lastVirtualScrollInfoRef","triggerScroll","nextInfo","onScrollBar","newScrollOffset","newOffset","flushSync","keepInHorizontalRange","nextOffsetLeft","tmpOffsetLeft","offsetXY","fromHorizontal","_useFrameWheel","_useFrameWheel2","onRawWheel","onFireFoxScroll","cleanUpEvents","touchedRef","touchYRef","elementRef","intervalRef","onTouchMove","currentY","_offsetY","clearInterval","setInterval","onTouchEnd","onTouchStart","useMobileTouchMove","onMozMousePixelScroll","componentEle","delayHideScrollBar","_verticalScrollBarRef","_horizontalScrollBarR","_scrollTo","triggerFlash","scrollRef","syncState","setSyncState","times","ori","targetAlign","originAlign","clientHeight","needCollectHeight","newTargetAlign","targetTop","mergedAlign","stackTop","itemBottom","maxLen","leftHeight","_i","_cacheHeight","lastTop","align","_arg$offset","useScrollTo","getScrollInfo","config","renderList","getSize","_React$useMemo2","key2Index","bottomList","startKey","endKey","_heights$get","useGetSize","extraContent","listChildren","setNodeRef","renderFunc","ele","useChildren","componentStyle","overflowX","containerProps","dir","sizeInfo","currentTarget","verticalScrollBar","verticalScrollBarThumb","horizontalScrollBar","horizontalScrollBarThumb","List"],"sourceRoot":""}