"use strict"; (self["webpackChunk"] = self["webpackChunk"] || []).push([[79035],{ /***/ 79035: /*!***********************************************************!*\ !*** ./node_modules/antd/es/select/index.js + 42 modules ***! \***********************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ es_select; } }); // EXTERNAL MODULE: ./node_modules/classnames/index.js var classnames = __webpack_require__(94184); var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__(87462); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules var toConsumableArray = __webpack_require__(74902); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js var defineProperty = __webpack_require__(4942); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js var objectSpread2 = __webpack_require__(1413); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules var slicedToArray = __webpack_require__(97685); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js var objectWithoutProperties = __webpack_require__(45987); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js var esm_typeof = __webpack_require__(71002); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/hooks/useEvent.js function useEvent(callback) { var fnRef = react.useRef(); fnRef.current = callback; var memoFn = react.useCallback(function () { var _fnRef$current; for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return (_fnRef$current = fnRef.current) === null || _fnRef$current === void 0 ? void 0 : _fnRef$current.call.apply(_fnRef$current, [fnRef].concat(args)); }, []); return memoFn; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/Dom/canUseDom.js function canUseDom() { return !!(typeof window !== 'undefined' && window.document && window.document.createElement); } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/hooks/useLayoutEffect.js /** * Wrap `React.useLayoutEffect` which will not throw warning message in test env */ var useLayoutEffect = true && canUseDom() ? react.useLayoutEffect : react.useEffect; /* harmony default export */ var hooks_useLayoutEffect = (useLayoutEffect); var useLayoutUpdateEffect = function useLayoutUpdateEffect(callback, deps) { var firstMountRef = react.useRef(true); useLayoutEffect(function () { if (!firstMountRef.current) { return callback(); } }, deps); // We tell react that first mount has passed useLayoutEffect(function () { firstMountRef.current = false; return function () { firstMountRef.current = true; }; }, []); }; ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/hooks/useState.js /** * Same as React.useState but `setState` accept `ignoreDestroy` param to not to setState after destroyed. * We do not make this auto is to avoid real memory leak. * Developer should confirm it's safe to ignore themselves. */ function useSafeState(defaultValue) { var destroyRef = react.useRef(false); var _React$useState = react.useState(defaultValue), _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2), value = _React$useState2[0], setValue = _React$useState2[1]; react.useEffect(function () { destroyRef.current = false; return function () { destroyRef.current = true; }; }, []); function safeSetState(updater, ignoreDestroy) { if (ignoreDestroy && destroyRef.current) { return; } setValue(updater); } return [value, safeSetState]; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/hooks/useMergedState.js /** We only think `undefined` is empty */ function hasValue(value) { return value !== undefined; } /** * Similar to `useState` but will use props value if provided. * Note that internal use rc-util `useState` hook. */ function useMergedState(defaultStateValue, option) { var _ref = option || {}, defaultValue = _ref.defaultValue, value = _ref.value, onChange = _ref.onChange, postState = _ref.postState; // ======================= Init ======================= var _useState = useSafeState(function () { if (hasValue(value)) { return value; } else if (hasValue(defaultValue)) { return typeof defaultValue === 'function' ? defaultValue() : defaultValue; } else { return typeof defaultStateValue === 'function' ? defaultStateValue() : defaultStateValue; } }), _useState2 = (0,slicedToArray/* default */.Z)(_useState, 2), innerValue = _useState2[0], setInnerValue = _useState2[1]; var mergedValue = value !== undefined ? value : innerValue; var postMergedValue = postState ? postState(mergedValue) : mergedValue; // ====================== Change ====================== var onChangeFn = useEvent(onChange); var _useState3 = useSafeState([mergedValue]), _useState4 = (0,slicedToArray/* default */.Z)(_useState3, 2), prevValue = _useState4[0], setPrevValue = _useState4[1]; useLayoutUpdateEffect(function () { var prev = prevValue[0]; if (innerValue !== prev) { onChangeFn(innerValue, prev); } }, [prevValue]); // Sync value back to `undefined` when it from control to un-control useLayoutUpdateEffect(function () { if (!hasValue(value)) { setInnerValue(value); } }, [value]); // ====================== Update ====================== var triggerChange = useEvent(function (updater, ignoreDestroy) { setInnerValue(updater, ignoreDestroy); setPrevValue([mergedValue], ignoreDestroy); }); return [postMergedValue, triggerChange]; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/warning.js /* eslint-disable no-console */ var warned = {}; function warning_warning(valid, message) { // Support uglify if (false) {} } function note(valid, message) { // Support uglify if (false) {} } function resetWarned() { warned = {}; } function call(method, valid, message) { if (!valid && !warned[message]) { method(false, message); warned[message] = true; } } function warningOnce(valid, message) { call(warning_warning, valid, message); } function warning_noteOnce(valid, message) { call(note, valid, message); } /* harmony default export */ var es_warning = (warningOnce); /* eslint-enable */ ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/isMobile.js /* harmony default export */ var isMobile = (function () { if (typeof navigator === 'undefined' || typeof window === 'undefined') { return false; } var agent = navigator.userAgent || navigator.vendor || window.opera; return /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(agent) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(agent === null || agent === void 0 ? void 0 : agent.substr(0, 4)); }); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/KeyCode.js /** * @ignore * some key-codes definition and utils from closure-library * @author yiminghe@gmail.com */ var KeyCode = { /** * MAC_ENTER */ MAC_ENTER: 3, /** * BACKSPACE */ BACKSPACE: 8, /** * TAB */ TAB: 9, /** * NUMLOCK on FF/Safari Mac */ NUM_CENTER: 12, // NUMLOCK on FF/Safari Mac /** * ENTER */ ENTER: 13, /** * SHIFT */ SHIFT: 16, /** * CTRL */ CTRL: 17, /** * ALT */ ALT: 18, /** * PAUSE */ PAUSE: 19, /** * CAPS_LOCK */ CAPS_LOCK: 20, /** * ESC */ ESC: 27, /** * SPACE */ SPACE: 32, /** * PAGE_UP */ PAGE_UP: 33, // also NUM_NORTH_EAST /** * PAGE_DOWN */ PAGE_DOWN: 34, // also NUM_SOUTH_EAST /** * END */ END: 35, // also NUM_SOUTH_WEST /** * HOME */ HOME: 36, // also NUM_NORTH_WEST /** * LEFT */ LEFT: 37, // also NUM_WEST /** * UP */ UP: 38, // also NUM_NORTH /** * RIGHT */ RIGHT: 39, // also NUM_EAST /** * DOWN */ DOWN: 40, // also NUM_SOUTH /** * PRINT_SCREEN */ PRINT_SCREEN: 44, /** * INSERT */ INSERT: 45, // also NUM_INSERT /** * DELETE */ DELETE: 46, // also NUM_DELETE /** * ZERO */ ZERO: 48, /** * ONE */ ONE: 49, /** * TWO */ TWO: 50, /** * THREE */ THREE: 51, /** * FOUR */ FOUR: 52, /** * FIVE */ FIVE: 53, /** * SIX */ SIX: 54, /** * SEVEN */ SEVEN: 55, /** * EIGHT */ EIGHT: 56, /** * NINE */ NINE: 57, /** * QUESTION_MARK */ QUESTION_MARK: 63, // needs localization /** * A */ A: 65, /** * B */ B: 66, /** * C */ C: 67, /** * D */ D: 68, /** * E */ E: 69, /** * F */ F: 70, /** * G */ G: 71, /** * H */ H: 72, /** * I */ I: 73, /** * J */ J: 74, /** * K */ K: 75, /** * L */ L: 76, /** * M */ M: 77, /** * N */ N: 78, /** * O */ O: 79, /** * P */ P: 80, /** * Q */ Q: 81, /** * R */ R: 82, /** * S */ S: 83, /** * T */ T: 84, /** * U */ U: 85, /** * V */ V: 86, /** * W */ W: 87, /** * X */ X: 88, /** * Y */ Y: 89, /** * Z */ Z: 90, /** * META */ META: 91, // WIN_KEY_LEFT /** * WIN_KEY_RIGHT */ WIN_KEY_RIGHT: 92, /** * CONTEXT_MENU */ CONTEXT_MENU: 93, /** * NUM_ZERO */ NUM_ZERO: 96, /** * NUM_ONE */ NUM_ONE: 97, /** * NUM_TWO */ NUM_TWO: 98, /** * NUM_THREE */ NUM_THREE: 99, /** * NUM_FOUR */ NUM_FOUR: 100, /** * NUM_FIVE */ NUM_FIVE: 101, /** * NUM_SIX */ NUM_SIX: 102, /** * NUM_SEVEN */ NUM_SEVEN: 103, /** * NUM_EIGHT */ NUM_EIGHT: 104, /** * NUM_NINE */ NUM_NINE: 105, /** * NUM_MULTIPLY */ NUM_MULTIPLY: 106, /** * NUM_PLUS */ NUM_PLUS: 107, /** * NUM_MINUS */ NUM_MINUS: 109, /** * NUM_PERIOD */ NUM_PERIOD: 110, /** * NUM_DIVISION */ NUM_DIVISION: 111, /** * F1 */ F1: 112, /** * F2 */ F2: 113, /** * F3 */ F3: 114, /** * F4 */ F4: 115, /** * F5 */ F5: 116, /** * F6 */ F6: 117, /** * F7 */ F7: 118, /** * F8 */ F8: 119, /** * F9 */ F9: 120, /** * F10 */ F10: 121, /** * F11 */ F11: 122, /** * F12 */ F12: 123, /** * NUMLOCK */ NUMLOCK: 144, /** * SEMICOLON */ SEMICOLON: 186, // needs localization /** * DASH */ DASH: 189, // needs localization /** * EQUALS */ EQUALS: 187, // needs localization /** * COMMA */ COMMA: 188, // needs localization /** * PERIOD */ PERIOD: 190, // needs localization /** * SLASH */ SLASH: 191, // needs localization /** * APOSTROPHE */ APOSTROPHE: 192, // needs localization /** * SINGLE_QUOTE */ SINGLE_QUOTE: 222, // needs localization /** * OPEN_SQUARE_BRACKET */ OPEN_SQUARE_BRACKET: 219, // needs localization /** * BACKSLASH */ BACKSLASH: 220, // needs localization /** * CLOSE_SQUARE_BRACKET */ CLOSE_SQUARE_BRACKET: 221, // needs localization /** * WIN_KEY */ WIN_KEY: 224, /** * MAC_FF_META */ MAC_FF_META: 224, // Firefox (Gecko) fires this for the meta key instead of 91 /** * WIN_IME */ WIN_IME: 229, // ======================== Function ======================== /** * whether text and modified key is entered at the same time. */ isTextModifyingKeyEvent: function isTextModifyingKeyEvent(e) { var keyCode = e.keyCode; if (e.altKey && !e.ctrlKey || e.metaKey || // Function keys don't generate text keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) { return false; } // The following keys are quite harmless, even in combination with // CTRL, ALT or SHIFT. switch (keyCode) { case KeyCode.ALT: case KeyCode.CAPS_LOCK: case KeyCode.CONTEXT_MENU: case KeyCode.CTRL: case KeyCode.DOWN: case KeyCode.END: case KeyCode.ESC: case KeyCode.HOME: case KeyCode.INSERT: case KeyCode.LEFT: case KeyCode.MAC_FF_META: case KeyCode.META: case KeyCode.NUMLOCK: case KeyCode.NUM_CENTER: case KeyCode.PAGE_DOWN: case KeyCode.PAGE_UP: case KeyCode.PAUSE: case KeyCode.PRINT_SCREEN: case KeyCode.RIGHT: case KeyCode.SHIFT: case KeyCode.UP: case KeyCode.WIN_KEY: case KeyCode.WIN_KEY_RIGHT: return false; default: return true; } }, /** * whether character is entered. */ isCharacterKey: function isCharacterKey(keyCode) { if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) { return true; } if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) { return true; } if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) { return true; } // Safari sends zero key code for non-latin characters. if (window.navigator.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) { return true; } switch (keyCode) { case KeyCode.SPACE: case KeyCode.QUESTION_MARK: case KeyCode.NUM_PLUS: case KeyCode.NUM_MINUS: case KeyCode.NUM_PERIOD: case KeyCode.NUM_DIVISION: case KeyCode.SEMICOLON: case KeyCode.DASH: case KeyCode.EQUALS: case KeyCode.COMMA: case KeyCode.PERIOD: case KeyCode.SLASH: case KeyCode.APOSTROPHE: case KeyCode.SINGLE_QUOTE: case KeyCode.OPEN_SQUARE_BRACKET: case KeyCode.BACKSLASH: case KeyCode.CLOSE_SQUARE_BRACKET: return true; default: return false; } } }; /* harmony default export */ var es_KeyCode = (KeyCode); // EXTERNAL MODULE: ./node_modules/react-is/index.js var react_is = __webpack_require__(59864); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/hooks/useMemo.js function useMemo(getValue, condition, shouldUpdate) { var cacheRef = react.useRef({}); if (!('value' in cacheRef.current) || shouldUpdate(cacheRef.current.condition, condition)) { cacheRef.current.value = getValue(); cacheRef.current.condition = condition; } return cacheRef.current.value; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/ref.js /* eslint-disable no-param-reassign */ function fillRef(ref, node) { if (typeof ref === 'function') { ref(node); } else if ((0,esm_typeof/* default */.Z)(ref) === 'object' && ref && 'current' in ref) { ref.current = node; } } /** * Merge refs into one ref function to support ref passing. */ function composeRef() { for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) { refs[_key] = arguments[_key]; } var refList = refs.filter(function (ref) { return ref; }); if (refList.length <= 1) { return refList[0]; } return function (node) { refs.forEach(function (ref) { fillRef(ref, node); }); }; } function useComposeRef() { for (var _len2 = arguments.length, refs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { refs[_key2] = arguments[_key2]; } return useMemo(function () { return composeRef.apply(void 0, refs); }, refs, function (prev, next) { return prev.length === next.length && prev.every(function (ref, i) { return ref === next[i]; }); }); } function supportRef(nodeOrComponent) { var _type$prototype, _nodeOrComponent$prot; var type = isMemo(nodeOrComponent) ? nodeOrComponent.type.type : nodeOrComponent.type; // Function component node if (typeof type === 'function' && !((_type$prototype = type.prototype) !== null && _type$prototype !== void 0 && _type$prototype.render)) { return false; } // Class component if (typeof nodeOrComponent === 'function' && !((_nodeOrComponent$prot = nodeOrComponent.prototype) !== null && _nodeOrComponent$prot !== void 0 && _nodeOrComponent$prot.render)) { return false; } return true; } /* eslint-enable */ ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useBaseProps.js /** * BaseSelect provide some parsed data into context. * You can use this hooks to get them. */ var BaseSelectContext = /*#__PURE__*/react.createContext(null); function useBaseProps() { return react.useContext(BaseSelectContext); } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useDelayReset.js /** * Similar with `useLock`, but this hook will always execute last value. * When set to `true`, it will keep `true` for a short time even if `false` is set. */ function useDelayReset() { var timeout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10; var _React$useState = react.useState(false), _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2), bool = _React$useState2[0], setBool = _React$useState2[1]; var delayRef = react.useRef(null); var cancelLatest = function cancelLatest() { window.clearTimeout(delayRef.current); }; react.useEffect(function () { return cancelLatest; }, []); var delaySetBool = function delaySetBool(value, callback) { cancelLatest(); delayRef.current = window.setTimeout(function () { setBool(value); if (callback) { callback(); } }, timeout); }; return [bool, delaySetBool, cancelLatest]; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useLock.js /** * Locker return cached mark. * If set to `true`, will return `true` in a short time even if set `false`. * If set to `false` and then set to `true`, will change to `true`. * And after time duration, it will back to `null` automatically. */ function useLock() { var duration = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 250; var lockRef = react.useRef(null); var timeoutRef = react.useRef(null); // Clean up react.useEffect(function () { return function () { window.clearTimeout(timeoutRef.current); }; }, []); function doLock(locked) { if (locked || lockRef.current === null) { lockRef.current = locked; } window.clearTimeout(timeoutRef.current); timeoutRef.current = window.setTimeout(function () { lockRef.current = null; }, duration); } return [function () { return lockRef.current; }, doLock]; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useSelectTriggerControl.js function useSelectTriggerControl(elements, open, triggerOpen, customizedTrigger) { var propsRef = react.useRef(null); propsRef.current = { open: open, triggerOpen: triggerOpen, customizedTrigger: customizedTrigger }; react.useEffect(function () { function onGlobalMouseDown(event) { var _propsRef$current; // If trigger is customized, Trigger will take control of popupVisible if ((_propsRef$current = propsRef.current) !== null && _propsRef$current !== void 0 && _propsRef$current.customizedTrigger) { return; } var target = event.target; if (target.shadowRoot && event.composed) { target = event.composedPath()[0] || target; } if (propsRef.current.open && elements().filter(function (element) { return element; }).every(function (element) { return !element.contains(target) && element !== target; })) { // Should trigger close propsRef.current.triggerOpen(false); } } window.addEventListener('mousedown', onGlobalMouseDown); return function () { return window.removeEventListener('mousedown', onGlobalMouseDown); }; }, []); } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/pickAttrs.js var attributes = "accept acceptCharset accessKey action allowFullScreen allowTransparency\n alt async autoComplete autoFocus autoPlay capture cellPadding cellSpacing challenge\n charSet checked classID className colSpan cols content contentEditable contextMenu\n controls coords crossOrigin data dateTime default defer dir disabled download draggable\n encType form formAction formEncType formMethod formNoValidate formTarget frameBorder\n headers height hidden high href hrefLang htmlFor httpEquiv icon id inputMode integrity\n is keyParams keyType kind label lang list loop low manifest marginHeight marginWidth max maxLength media\n mediaGroup method min minLength multiple muted name noValidate nonce open\n optimum pattern placeholder poster preload radioGroup readOnly rel required\n reversed role rowSpan rows sandbox scope scoped scrolling seamless selected\n shape size sizes span spellCheck src srcDoc srcLang srcSet start step style\n summary tabIndex target title type useMap value width wmode wrap"; var eventsName = "onCopy onCut onPaste onCompositionEnd onCompositionStart onCompositionUpdate onKeyDown\n onKeyPress onKeyUp onFocus onBlur onChange onInput onSubmit onClick onContextMenu onDoubleClick\n onDrag onDragEnd onDragEnter onDragExit onDragLeave onDragOver onDragStart onDrop onMouseDown\n onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp onSelect onTouchCancel\n onTouchEnd onTouchMove onTouchStart onScroll onWheel onAbort onCanPlay onCanPlayThrough\n onDurationChange onEmptied onEncrypted onEnded onError onLoadedData onLoadedMetadata\n onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError"; var propList = "".concat(attributes, " ").concat(eventsName).split(/[\s\n]+/); /* eslint-enable max-len */ var ariaPrefix = 'aria-'; var dataPrefix = 'data-'; function match(key, prefix) { return key.indexOf(prefix) === 0; } /** * Picker props from exist props with filter * @param props Passed props * @param ariaOnly boolean | { aria?: boolean; data?: boolean; attr?: boolean; } filter config */ function pickAttrs(props) { var ariaOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; var mergedConfig; if (ariaOnly === false) { mergedConfig = { aria: true, data: true, attr: true }; } else if (ariaOnly === true) { mergedConfig = { aria: true }; } else { mergedConfig = (0,objectSpread2/* default */.Z)({}, ariaOnly); } var attrs = {}; Object.keys(props).forEach(function (key) { if ( // Aria mergedConfig.aria && (key === 'role' || match(key, ariaPrefix)) || // Data mergedConfig.data && match(key, dataPrefix) || // Attr mergedConfig.attr && propList.includes(key)) { attrs[key] = props[key]; } }); return attrs; } // EXTERNAL MODULE: ./node_modules/rc-overflow/es/index.js + 4 modules var es = __webpack_require__(34243); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/TransBtn.js var TransBtn = function TransBtn(_ref) { var className = _ref.className, customizeIcon = _ref.customizeIcon, customizeIconProps = _ref.customizeIconProps, _onMouseDown = _ref.onMouseDown, onClick = _ref.onClick, children = _ref.children; var icon; if (typeof customizeIcon === 'function') { icon = customizeIcon(customizeIconProps); } else { icon = customizeIcon; } return /*#__PURE__*/react.createElement("span", { className: className, onMouseDown: function onMouseDown(event) { event.preventDefault(); if (_onMouseDown) { _onMouseDown(event); } }, style: { userSelect: 'none', WebkitUserSelect: 'none' }, unselectable: "on", onClick: onClick, "aria-hidden": true }, icon !== undefined ? icon : /*#__PURE__*/react.createElement("span", { className: classnames_default()(className.split(/\s+/).map(function (cls) { return "".concat(cls, "-icon"); })) }, children)); }; /* harmony default export */ var es_TransBtn = (TransBtn); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/Selector/Input.js var Input = function Input(_ref, ref) { var _inputNode2, _inputNode2$props; var prefixCls = _ref.prefixCls, id = _ref.id, inputElement = _ref.inputElement, disabled = _ref.disabled, tabIndex = _ref.tabIndex, autoFocus = _ref.autoFocus, autoComplete = _ref.autoComplete, editable = _ref.editable, activeDescendantId = _ref.activeDescendantId, value = _ref.value, maxLength = _ref.maxLength, _onKeyDown = _ref.onKeyDown, _onMouseDown = _ref.onMouseDown, _onChange = _ref.onChange, onPaste = _ref.onPaste, _onCompositionStart = _ref.onCompositionStart, _onCompositionEnd = _ref.onCompositionEnd, open = _ref.open, attrs = _ref.attrs; var inputNode = inputElement || /*#__PURE__*/react.createElement("input", null); var _inputNode = inputNode, originRef = _inputNode.ref, originProps = _inputNode.props; var onOriginKeyDown = originProps.onKeyDown, onOriginChange = originProps.onChange, onOriginMouseDown = originProps.onMouseDown, onOriginCompositionStart = originProps.onCompositionStart, onOriginCompositionEnd = originProps.onCompositionEnd, style = originProps.style; warning_warning(!('maxLength' in inputNode.props), "Passing 'maxLength' to input element directly may not work because input in BaseSelect is controlled."); inputNode = /*#__PURE__*/react.cloneElement(inputNode, (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({ type: 'search' }, originProps), {}, { // Override over origin props id: id, ref: composeRef(ref, originRef), disabled: disabled, tabIndex: tabIndex, autoComplete: autoComplete || 'off', autoFocus: autoFocus, className: classnames_default()("".concat(prefixCls, "-selection-search-input"), (_inputNode2 = inputNode) === null || _inputNode2 === void 0 ? void 0 : (_inputNode2$props = _inputNode2.props) === null || _inputNode2$props === void 0 ? void 0 : _inputNode2$props.className), role: 'combobox', 'aria-expanded': open, 'aria-haspopup': 'listbox', 'aria-owns': "".concat(id, "_list"), 'aria-autocomplete': 'list', 'aria-controls': "".concat(id, "_list"), 'aria-activedescendant': activeDescendantId }, attrs), {}, { value: editable ? value : '', maxLength: maxLength, readOnly: !editable, unselectable: !editable ? 'on' : null, style: (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, style), {}, { opacity: editable ? null : 0 }), onKeyDown: function onKeyDown(event) { _onKeyDown(event); if (onOriginKeyDown) { onOriginKeyDown(event); } }, onMouseDown: function onMouseDown(event) { _onMouseDown(event); if (onOriginMouseDown) { onOriginMouseDown(event); } }, onChange: function onChange(event) { _onChange(event); if (onOriginChange) { onOriginChange(event); } }, onCompositionStart: function onCompositionStart(event) { _onCompositionStart(event); if (onOriginCompositionStart) { onOriginCompositionStart(event); } }, onCompositionEnd: function onCompositionEnd(event) { _onCompositionEnd(event); if (onOriginCompositionEnd) { onOriginCompositionEnd(event); } }, onPaste: onPaste })); return inputNode; }; var RefInput = /*#__PURE__*/react.forwardRef(Input); RefInput.displayName = 'Input'; /* harmony default export */ var Selector_Input = (RefInput); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/utils/commonUtil.js function commonUtil_toArray(value) { if (Array.isArray(value)) { return value; } return value !== undefined ? [value] : []; } var isClient = typeof window !== 'undefined' && window.document && window.document.documentElement; /** Is client side and not jsdom */ var isBrowserClient = true && isClient; function commonUtil_hasValue(value) { return value !== undefined && value !== null; } function isTitleType(title) { return ['string', 'number'].includes((0,esm_typeof/* default */.Z)(title)); } function getTitle(item) { var title = undefined; if (item) { if (isTitleType(item.title)) { title = item.title.toString(); } else if (isTitleType(item.label)) { title = item.label.toString(); } } return title; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useLayoutEffect.js /* eslint-disable react-hooks/rules-of-hooks */ /** * Wrap `React.useLayoutEffect` which will not throw warning message in test env */ function useLayoutEffect_useLayoutEffect(effect, deps) { // Never happen in test env if (isBrowserClient) { /* istanbul ignore next */ react.useLayoutEffect(effect, deps); } else { react.useEffect(effect, deps); } } /* eslint-enable */ ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/Selector/MultipleSelector.js function itemKey(value) { var _value$key; return (_value$key = value.key) !== null && _value$key !== void 0 ? _value$key : value.value; } var onPreventMouseDown = function onPreventMouseDown(event) { event.preventDefault(); event.stopPropagation(); }; var SelectSelector = function SelectSelector(props) { var id = props.id, prefixCls = props.prefixCls, values = props.values, open = props.open, searchValue = props.searchValue, autoClearSearchValue = props.autoClearSearchValue, inputRef = props.inputRef, placeholder = props.placeholder, disabled = props.disabled, mode = props.mode, showSearch = props.showSearch, autoFocus = props.autoFocus, autoComplete = props.autoComplete, activeDescendantId = props.activeDescendantId, tabIndex = props.tabIndex, removeIcon = props.removeIcon, maxTagCount = props.maxTagCount, maxTagTextLength = props.maxTagTextLength, _props$maxTagPlacehol = props.maxTagPlaceholder, maxTagPlaceholder = _props$maxTagPlacehol === void 0 ? function (omittedValues) { return "+ ".concat(omittedValues.length, " ..."); } : _props$maxTagPlacehol, tagRender = props.tagRender, onToggleOpen = props.onToggleOpen, onRemove = props.onRemove, onInputChange = props.onInputChange, onInputPaste = props.onInputPaste, onInputKeyDown = props.onInputKeyDown, onInputMouseDown = props.onInputMouseDown, onInputCompositionStart = props.onInputCompositionStart, onInputCompositionEnd = props.onInputCompositionEnd; var measureRef = react.useRef(null); var _useState = (0,react.useState)(0), _useState2 = (0,slicedToArray/* default */.Z)(_useState, 2), inputWidth = _useState2[0], setInputWidth = _useState2[1]; var _useState3 = (0,react.useState)(false), _useState4 = (0,slicedToArray/* default */.Z)(_useState3, 2), focused = _useState4[0], setFocused = _useState4[1]; var selectionPrefixCls = "".concat(prefixCls, "-selection"); // ===================== Search ====================== var inputValue = open || mode === "multiple" && autoClearSearchValue === false || mode === 'tags' ? searchValue : ''; var inputEditable = mode === 'tags' || mode === "multiple" && autoClearSearchValue === false || showSearch && (open || focused); // We measure width and set to the input immediately useLayoutEffect_useLayoutEffect(function () { setInputWidth(measureRef.current.scrollWidth); }, [inputValue]); // ===================== Render ====================== // >>> Render Selector Node. Includes Item & Rest function defaultRenderSelector(item, content, itemDisabled, closable, onClose) { return /*#__PURE__*/react.createElement("span", { className: classnames_default()("".concat(selectionPrefixCls, "-item"), (0,defineProperty/* default */.Z)({}, "".concat(selectionPrefixCls, "-item-disabled"), itemDisabled)), title: getTitle(item) }, /*#__PURE__*/react.createElement("span", { className: "".concat(selectionPrefixCls, "-item-content") }, content), closable && /*#__PURE__*/react.createElement(es_TransBtn, { className: "".concat(selectionPrefixCls, "-item-remove"), onMouseDown: onPreventMouseDown, onClick: onClose, customizeIcon: removeIcon }, "\xD7")); } function customizeRenderSelector(value, content, itemDisabled, closable, onClose) { var onMouseDown = function onMouseDown(e) { onPreventMouseDown(e); onToggleOpen(!open); }; return /*#__PURE__*/react.createElement("span", { onMouseDown: onMouseDown }, tagRender({ label: content, value: value, disabled: itemDisabled, closable: closable, onClose: onClose })); } function renderItem(valueItem) { var itemDisabled = valueItem.disabled, label = valueItem.label, value = valueItem.value; var closable = !disabled && !itemDisabled; var displayLabel = label; if (typeof maxTagTextLength === 'number') { if (typeof label === 'string' || typeof label === 'number') { var strLabel = String(displayLabel); if (strLabel.length > maxTagTextLength) { displayLabel = "".concat(strLabel.slice(0, maxTagTextLength), "..."); } } } var onClose = function onClose(event) { if (event) event.stopPropagation(); onRemove(valueItem); }; return typeof tagRender === 'function' ? customizeRenderSelector(value, displayLabel, itemDisabled, closable, onClose) : defaultRenderSelector(valueItem, displayLabel, itemDisabled, closable, onClose); } function renderRest(omittedValues) { var content = typeof maxTagPlaceholder === 'function' ? maxTagPlaceholder(omittedValues) : maxTagPlaceholder; return defaultRenderSelector({ title: content }, content, false); } // >>> Input Node var inputNode = /*#__PURE__*/react.createElement("div", { className: "".concat(selectionPrefixCls, "-search"), style: { width: inputWidth }, onFocus: function onFocus() { setFocused(true); }, onBlur: function onBlur() { setFocused(false); } }, /*#__PURE__*/react.createElement(Selector_Input, { ref: inputRef, open: open, prefixCls: prefixCls, id: id, inputElement: null, disabled: disabled, autoFocus: autoFocus, autoComplete: autoComplete, editable: inputEditable, activeDescendantId: activeDescendantId, value: inputValue, onKeyDown: onInputKeyDown, onMouseDown: onInputMouseDown, onChange: onInputChange, onPaste: onInputPaste, onCompositionStart: onInputCompositionStart, onCompositionEnd: onInputCompositionEnd, tabIndex: tabIndex, attrs: pickAttrs(props, true) }), /*#__PURE__*/react.createElement("span", { ref: measureRef, className: "".concat(selectionPrefixCls, "-search-mirror"), "aria-hidden": true }, inputValue, "\xA0")); // >>> Selections var selectionNode = /*#__PURE__*/react.createElement(es/* default */.Z, { prefixCls: "".concat(selectionPrefixCls, "-overflow"), data: values, renderItem: renderItem, renderRest: renderRest, suffix: inputNode, itemKey: itemKey, maxCount: maxTagCount }); return /*#__PURE__*/react.createElement(react.Fragment, null, selectionNode, !values.length && !inputValue && /*#__PURE__*/react.createElement("span", { className: "".concat(selectionPrefixCls, "-placeholder") }, placeholder)); }; /* harmony default export */ var MultipleSelector = (SelectSelector); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/Selector/SingleSelector.js var SingleSelector = function SingleSelector(props) { var inputElement = props.inputElement, prefixCls = props.prefixCls, id = props.id, inputRef = props.inputRef, disabled = props.disabled, autoFocus = props.autoFocus, autoComplete = props.autoComplete, activeDescendantId = props.activeDescendantId, mode = props.mode, open = props.open, values = props.values, placeholder = props.placeholder, tabIndex = props.tabIndex, showSearch = props.showSearch, searchValue = props.searchValue, activeValue = props.activeValue, maxLength = props.maxLength, onInputKeyDown = props.onInputKeyDown, onInputMouseDown = props.onInputMouseDown, onInputChange = props.onInputChange, onInputPaste = props.onInputPaste, onInputCompositionStart = props.onInputCompositionStart, onInputCompositionEnd = props.onInputCompositionEnd, title = props.title; var _React$useState = react.useState(false), _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2), inputChanged = _React$useState2[0], setInputChanged = _React$useState2[1]; var combobox = mode === 'combobox'; var inputEditable = combobox || showSearch; var item = values[0]; var inputValue = searchValue || ''; if (combobox && activeValue && !inputChanged) { inputValue = activeValue; } react.useEffect(function () { if (combobox) { setInputChanged(false); } }, [combobox, activeValue]); // Not show text when closed expect combobox mode var hasTextInput = mode !== 'combobox' && !open && !showSearch ? false : !!inputValue; // Get title of selection item var selectionTitle = title === undefined ? getTitle(item) : title; var renderPlaceholder = function renderPlaceholder() { if (item) { return null; } var hiddenStyle = hasTextInput ? { visibility: 'hidden' } : undefined; return /*#__PURE__*/react.createElement("span", { className: "".concat(prefixCls, "-selection-placeholder"), style: hiddenStyle }, placeholder); }; return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement("span", { className: "".concat(prefixCls, "-selection-search") }, /*#__PURE__*/react.createElement(Selector_Input, { ref: inputRef, prefixCls: prefixCls, id: id, open: open, inputElement: inputElement, disabled: disabled, autoFocus: autoFocus, autoComplete: autoComplete, editable: inputEditable, activeDescendantId: activeDescendantId, value: inputValue, onKeyDown: onInputKeyDown, onMouseDown: onInputMouseDown, onChange: function onChange(e) { setInputChanged(true); onInputChange(e); }, onPaste: onInputPaste, onCompositionStart: onInputCompositionStart, onCompositionEnd: onInputCompositionEnd, tabIndex: tabIndex, attrs: pickAttrs(props, true), maxLength: combobox ? maxLength : undefined })), !combobox && item ? /*#__PURE__*/react.createElement("span", { className: "".concat(prefixCls, "-selection-item"), title: selectionTitle // 当 Select 已经选中选项时,还需 selection 隐藏但留在原地占位 // https://github.com/ant-design/ant-design/issues/27688 // https://github.com/ant-design/ant-design/issues/41530 , style: hasTextInput ? { visibility: 'hidden' } : undefined }, item.label) : null, renderPlaceholder()); }; /* harmony default export */ var Selector_SingleSelector = (SingleSelector); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/utils/keyUtil.js /** keyCode Judgment function */ function isValidateOpenKey(currentKeyCode) { return ![ // System function button es_KeyCode.ESC, es_KeyCode.SHIFT, es_KeyCode.BACKSPACE, es_KeyCode.TAB, es_KeyCode.WIN_KEY, es_KeyCode.ALT, es_KeyCode.META, es_KeyCode.WIN_KEY_RIGHT, es_KeyCode.CTRL, es_KeyCode.SEMICOLON, es_KeyCode.EQUALS, es_KeyCode.CAPS_LOCK, es_KeyCode.CONTEXT_MENU, // F1-F12 es_KeyCode.F1, es_KeyCode.F2, es_KeyCode.F3, es_KeyCode.F4, es_KeyCode.F5, es_KeyCode.F6, es_KeyCode.F7, es_KeyCode.F8, es_KeyCode.F9, es_KeyCode.F10, es_KeyCode.F11, es_KeyCode.F12].includes(currentKeyCode); } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/Selector/index.js /** * Cursor rule: * 1. Only `showSearch` enabled * 2. Only `open` is `true` * 3. When typing, set `open` to `true` which hit rule of 2 * * Accessibility: * - https://www.w3.org/TR/wai-aria-practices/examples/combobox/aria1.1pattern/listbox-combo.html */ var Selector = function Selector(props, ref) { var inputRef = (0,react.useRef)(null); var compositionStatusRef = (0,react.useRef)(false); var prefixCls = props.prefixCls, open = props.open, mode = props.mode, showSearch = props.showSearch, tokenWithEnter = props.tokenWithEnter, autoClearSearchValue = props.autoClearSearchValue, onSearch = props.onSearch, onSearchSubmit = props.onSearchSubmit, onToggleOpen = props.onToggleOpen, onInputKeyDown = props.onInputKeyDown, domRef = props.domRef; // ======================= Ref ======================= react.useImperativeHandle(ref, function () { return { focus: function focus() { inputRef.current.focus(); }, blur: function blur() { inputRef.current.blur(); } }; }); // ====================== Input ====================== var _useLock = useLock(0), _useLock2 = (0,slicedToArray/* default */.Z)(_useLock, 2), getInputMouseDown = _useLock2[0], setInputMouseDown = _useLock2[1]; var onInternalInputKeyDown = function onInternalInputKeyDown(event) { var which = event.which; if (which === es_KeyCode.UP || which === es_KeyCode.DOWN) { event.preventDefault(); } if (onInputKeyDown) { onInputKeyDown(event); } if (which === es_KeyCode.ENTER && mode === 'tags' && !compositionStatusRef.current && !open) { // When menu isn't open, OptionList won't trigger a value change // So when enter is pressed, the tag's input value should be emitted here to let selector know onSearchSubmit === null || onSearchSubmit === void 0 ? void 0 : onSearchSubmit(event.target.value); } if (isValidateOpenKey(which)) { onToggleOpen(true); } }; /** * We can not use `findDOMNode` sine it will get warning, * have to use timer to check if is input element. */ var onInternalInputMouseDown = function onInternalInputMouseDown() { setInputMouseDown(true); }; // When paste come, ignore next onChange var pastedTextRef = (0,react.useRef)(null); var triggerOnSearch = function triggerOnSearch(value) { if (onSearch(value, true, compositionStatusRef.current) !== false) { onToggleOpen(true); } }; var onInputCompositionStart = function onInputCompositionStart() { compositionStatusRef.current = true; }; var onInputCompositionEnd = function onInputCompositionEnd(e) { compositionStatusRef.current = false; // Trigger search again to support `tokenSeparators` with typewriting if (mode !== 'combobox') { triggerOnSearch(e.target.value); } }; var onInputChange = function onInputChange(event) { var value = event.target.value; // Pasted text should replace back to origin content if (tokenWithEnter && pastedTextRef.current && /[\r\n]/.test(pastedTextRef.current)) { // CRLF will be treated as a single space for input element var replacedText = pastedTextRef.current.replace(/[\r\n]+$/, '').replace(/\r\n/g, ' ').replace(/[\r\n]/g, ' '); value = value.replace(replacedText, pastedTextRef.current); } pastedTextRef.current = null; triggerOnSearch(value); }; var onInputPaste = function onInputPaste(e) { var clipboardData = e.clipboardData; var value = clipboardData.getData('text'); pastedTextRef.current = value; }; var onClick = function onClick(_ref) { var target = _ref.target; if (target !== inputRef.current) { // Should focus input if click the selector var isIE = document.body.style.msTouchAction !== undefined; if (isIE) { setTimeout(function () { inputRef.current.focus(); }); } else { inputRef.current.focus(); } } }; var onMouseDown = function onMouseDown(event) { var inputMouseDown = getInputMouseDown(); // when mode is combobox, don't prevent default behavior // https://github.com/ant-design/ant-design/issues/37320 if (event.target !== inputRef.current && !inputMouseDown && mode !== 'combobox') { event.preventDefault(); } if (mode !== 'combobox' && (!showSearch || !inputMouseDown) || !open) { if (open && autoClearSearchValue !== false) { onSearch('', true, false); } onToggleOpen(); } }; // ================= Inner Selector ================== var sharedProps = { inputRef: inputRef, onInputKeyDown: onInternalInputKeyDown, onInputMouseDown: onInternalInputMouseDown, onInputChange: onInputChange, onInputPaste: onInputPaste, onInputCompositionStart: onInputCompositionStart, onInputCompositionEnd: onInputCompositionEnd }; var selectNode = mode === 'multiple' || mode === 'tags' ? /*#__PURE__*/react.createElement(MultipleSelector, (0,esm_extends/* default */.Z)({}, props, sharedProps)) : /*#__PURE__*/react.createElement(Selector_SingleSelector, (0,esm_extends/* default */.Z)({}, props, sharedProps)); return /*#__PURE__*/react.createElement("div", { ref: domRef, className: "".concat(prefixCls, "-selector"), onClick: onClick, onMouseDown: onMouseDown }, selectNode); }; var ForwardSelector = /*#__PURE__*/react.forwardRef(Selector); ForwardSelector.displayName = 'Selector'; /* harmony default export */ var es_Selector = (ForwardSelector); // EXTERNAL MODULE: ./node_modules/@rc-component/trigger/es/index.js + 42 modules var trigger_es = __webpack_require__(62709); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/SelectTrigger.js var _excluded = ["prefixCls", "disabled", "visible", "children", "popupElement", "containerWidth", "animation", "transitionName", "dropdownStyle", "dropdownClassName", "direction", "placement", "builtinPlacements", "dropdownMatchSelectWidth", "dropdownRender", "dropdownAlign", "getPopupContainer", "empty", "getTriggerDOMNode", "onPopupVisibleChange", "onPopupMouseEnter"]; var getBuiltInPlacements = function getBuiltInPlacements(dropdownMatchSelectWidth) { // Enable horizontal overflow auto-adjustment when a custom dropdown width is provided var adjustX = dropdownMatchSelectWidth === true ? 0 : 1; return { bottomLeft: { points: ['tl', 'bl'], offset: [0, 4], overflow: { adjustX: adjustX, adjustY: 1 }, htmlRegion: 'scroll' }, bottomRight: { points: ['tr', 'br'], offset: [0, 4], overflow: { adjustX: adjustX, adjustY: 1 }, htmlRegion: 'scroll' }, topLeft: { points: ['bl', 'tl'], offset: [0, -4], overflow: { adjustX: adjustX, adjustY: 1 }, htmlRegion: 'scroll' }, topRight: { points: ['br', 'tr'], offset: [0, -4], overflow: { adjustX: adjustX, adjustY: 1 }, htmlRegion: 'scroll' } }; }; var SelectTrigger = function SelectTrigger(props, ref) { var prefixCls = props.prefixCls, disabled = props.disabled, visible = props.visible, children = props.children, popupElement = props.popupElement, containerWidth = props.containerWidth, animation = props.animation, transitionName = props.transitionName, dropdownStyle = props.dropdownStyle, dropdownClassName = props.dropdownClassName, _props$direction = props.direction, direction = _props$direction === void 0 ? 'ltr' : _props$direction, placement = props.placement, builtinPlacements = props.builtinPlacements, dropdownMatchSelectWidth = props.dropdownMatchSelectWidth, dropdownRender = props.dropdownRender, dropdownAlign = props.dropdownAlign, getPopupContainer = props.getPopupContainer, empty = props.empty, getTriggerDOMNode = props.getTriggerDOMNode, onPopupVisibleChange = props.onPopupVisibleChange, onPopupMouseEnter = props.onPopupMouseEnter, restProps = (0,objectWithoutProperties/* default */.Z)(props, _excluded); var dropdownPrefixCls = "".concat(prefixCls, "-dropdown"); var popupNode = popupElement; if (dropdownRender) { popupNode = dropdownRender(popupElement); } var mergedBuiltinPlacements = react.useMemo(function () { return builtinPlacements || getBuiltInPlacements(dropdownMatchSelectWidth); }, [builtinPlacements, dropdownMatchSelectWidth]); // ===================== Motion ====================== var mergedTransitionName = animation ? "".concat(dropdownPrefixCls, "-").concat(animation) : transitionName; // ======================= Ref ======================= var popupRef = react.useRef(null); react.useImperativeHandle(ref, function () { return { getPopupElement: function getPopupElement() { return popupRef.current; } }; }); var popupStyle = (0,objectSpread2/* default */.Z)({ minWidth: containerWidth }, dropdownStyle); if (typeof dropdownMatchSelectWidth === 'number') { popupStyle.width = dropdownMatchSelectWidth; } else if (dropdownMatchSelectWidth) { popupStyle.width = containerWidth; } return /*#__PURE__*/react.createElement(trigger_es/* default */.Z, (0,esm_extends/* default */.Z)({}, restProps, { showAction: onPopupVisibleChange ? ['click'] : [], hideAction: onPopupVisibleChange ? ['click'] : [], popupPlacement: placement || (direction === 'rtl' ? 'bottomRight' : 'bottomLeft'), builtinPlacements: mergedBuiltinPlacements, prefixCls: dropdownPrefixCls, popupTransitionName: mergedTransitionName, popup: /*#__PURE__*/react.createElement("div", { ref: popupRef, onMouseEnter: onPopupMouseEnter }, popupNode), popupAlign: dropdownAlign, popupVisible: visible, getPopupContainer: getPopupContainer, popupClassName: classnames_default()(dropdownClassName, (0,defineProperty/* default */.Z)({}, "".concat(dropdownPrefixCls, "-empty"), empty)), popupStyle: popupStyle, getTriggerDOMNode: getTriggerDOMNode, onPopupVisibleChange: onPopupVisibleChange }), children); }; var RefSelectTrigger = /*#__PURE__*/react.forwardRef(SelectTrigger); RefSelectTrigger.displayName = 'SelectTrigger'; /* harmony default export */ var es_SelectTrigger = (RefSelectTrigger); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toArray.js var esm_toArray = __webpack_require__(84506); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/utils/valueUtil.js function getKey(data, index) { var key = data.key; var value; if ('value' in data) { value = data.value; } if (key !== null && key !== undefined) { return key; } if (value !== undefined) { return value; } return "rc-index-key-".concat(index); } function fillFieldNames(fieldNames, childrenAsData) { var _ref = fieldNames || {}, label = _ref.label, value = _ref.value, options = _ref.options, groupLabel = _ref.groupLabel; var mergedLabel = label || (childrenAsData ? 'children' : 'label'); return { label: mergedLabel, value: value || 'value', options: options || 'options', groupLabel: groupLabel || mergedLabel }; } /** * Flat options into flatten list. * We use `optionOnly` here is aim to avoid user use nested option group. * Here is simply set `key` to the index if not provided. */ function flattenOptions(options) { var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, fieldNames = _ref2.fieldNames, childrenAsData = _ref2.childrenAsData; var flattenList = []; var _fillFieldNames = fillFieldNames(fieldNames, false), fieldLabel = _fillFieldNames.label, fieldValue = _fillFieldNames.value, fieldOptions = _fillFieldNames.options, groupLabel = _fillFieldNames.groupLabel; function dig(list, isGroupOption) { list.forEach(function (data) { if (isGroupOption || !(fieldOptions in data)) { var value = data[fieldValue]; // Option flattenList.push({ key: getKey(data, flattenList.length), groupOption: isGroupOption, data: data, label: data[fieldLabel], value: value }); } else { var grpLabel = data[groupLabel]; if (grpLabel === undefined && childrenAsData) { grpLabel = data.label; } // Option Group flattenList.push({ key: getKey(data, flattenList.length), group: true, data: data, label: grpLabel }); dig(data[fieldOptions], true); } }); } dig(options, false); return flattenList; } /** * Inject `props` into `option` for legacy usage */ function injectPropsWithOption(option) { var newOption = (0,objectSpread2/* default */.Z)({}, option); if (!('props' in newOption)) { Object.defineProperty(newOption, 'props', { get: function get() { es_warning(false, 'Return type is option instead of Option instance. Please read value directly instead of reading from `props`.'); return newOption; } }); } return newOption; } function getSeparatedContent(text, tokens) { if (!tokens || !tokens.length) { return null; } var match = false; function separate(str, _ref3) { var _ref4 = (0,esm_toArray/* default */.Z)(_ref3), token = _ref4[0], restTokens = _ref4.slice(1); if (!token) { return [str]; } var list = str.split(token); match = match || list.length > 1; return list.reduce(function (prevList, unitStr) { return [].concat((0,toConsumableArray/* default */.Z)(prevList), (0,toConsumableArray/* default */.Z)(separate(unitStr, restTokens))); }, []).filter(function (unit) { return unit; }); } var list = separate(text, tokens); return match ? list : null; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/BaseSelect.js var BaseSelect_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", "showArrow", "inputIcon", "clearIcon", "OptionList", "animation", "transitionName", "dropdownStyle", "dropdownClassName", "dropdownMatchSelectWidth", "dropdownRender", "dropdownAlign", "placement", "builtinPlacements", "getPopupContainer", "showAction", "onFocus", "onBlur", "onKeyUp", "onKeyDown", "onMouseDown"]; var DEFAULT_OMIT_PROPS = ['value', 'onChange', 'removeIcon', 'placeholder', 'autoFocus', 'maxTagCount', 'maxTagTextLength', 'maxTagPlaceholder', 'choiceTransitionName', 'onInputKeyDown', 'onPopupScroll', 'tabIndex']; function BaseSelect_isMultiple(mode) { return mode === 'tags' || mode === 'multiple'; } var BaseSelect = /*#__PURE__*/react.forwardRef(function (props, ref) { var _customizeRawInputEle, _classNames2; var id = props.id, prefixCls = props.prefixCls, className = props.className, showSearch = props.showSearch, tagRender = props.tagRender, direction = props.direction, omitDomProps = props.omitDomProps, displayValues = props.displayValues, onDisplayValuesChange = props.onDisplayValuesChange, emptyOptions = props.emptyOptions, _props$notFoundConten = props.notFoundContent, notFoundContent = _props$notFoundConten === void 0 ? 'Not Found' : _props$notFoundConten, onClear = props.onClear, mode = props.mode, disabled = props.disabled, loading = props.loading, getInputElement = props.getInputElement, getRawInputElement = props.getRawInputElement, open = props.open, defaultOpen = props.defaultOpen, onDropdownVisibleChange = props.onDropdownVisibleChange, activeValue = props.activeValue, onActiveValueChange = props.onActiveValueChange, activeDescendantId = props.activeDescendantId, searchValue = props.searchValue, autoClearSearchValue = props.autoClearSearchValue, onSearch = props.onSearch, onSearchSplit = props.onSearchSplit, tokenSeparators = props.tokenSeparators, allowClear = props.allowClear, showArrow = props.showArrow, inputIcon = props.inputIcon, clearIcon = props.clearIcon, OptionList = props.OptionList, animation = props.animation, transitionName = props.transitionName, dropdownStyle = props.dropdownStyle, dropdownClassName = props.dropdownClassName, dropdownMatchSelectWidth = props.dropdownMatchSelectWidth, dropdownRender = props.dropdownRender, dropdownAlign = props.dropdownAlign, placement = props.placement, builtinPlacements = props.builtinPlacements, getPopupContainer = props.getPopupContainer, _props$showAction = props.showAction, showAction = _props$showAction === void 0 ? [] : _props$showAction, onFocus = props.onFocus, onBlur = props.onBlur, onKeyUp = props.onKeyUp, onKeyDown = props.onKeyDown, onMouseDown = props.onMouseDown, restProps = (0,objectWithoutProperties/* default */.Z)(props, BaseSelect_excluded); // ============================== MISC ============================== var multiple = BaseSelect_isMultiple(mode); var mergedShowSearch = (showSearch !== undefined ? showSearch : multiple) || mode === 'combobox'; var domProps = (0,objectSpread2/* default */.Z)({}, restProps); DEFAULT_OMIT_PROPS.forEach(function (propName) { delete domProps[propName]; }); omitDomProps === null || omitDomProps === void 0 ? void 0 : omitDomProps.forEach(function (propName) { delete domProps[propName]; }); // ============================= Mobile ============================= var _React$useState = react.useState(false), _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2), mobile = _React$useState2[0], setMobile = _React$useState2[1]; react.useEffect(function () { // Only update on the client side setMobile(isMobile()); }, []); // ============================== Refs ============================== var containerRef = react.useRef(null); var selectorDomRef = react.useRef(null); var triggerRef = react.useRef(null); var selectorRef = react.useRef(null); var listRef = react.useRef(null); /** Used for component focused management */ var _useDelayReset = useDelayReset(), _useDelayReset2 = (0,slicedToArray/* default */.Z)(_useDelayReset, 3), mockFocused = _useDelayReset2[0], setMockFocused = _useDelayReset2[1], cancelSetMockFocused = _useDelayReset2[2]; // =========================== Imperative =========================== react.useImperativeHandle(ref, function () { var _selectorRef$current, _selectorRef$current2; return { focus: (_selectorRef$current = selectorRef.current) === null || _selectorRef$current === void 0 ? void 0 : _selectorRef$current.focus, blur: (_selectorRef$current2 = selectorRef.current) === null || _selectorRef$current2 === void 0 ? void 0 : _selectorRef$current2.blur, scrollTo: function scrollTo(arg) { var _listRef$current; return (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.scrollTo(arg); } }; }); // ========================== Search Value ========================== var mergedSearchValue = react.useMemo(function () { var _displayValues$; if (mode !== 'combobox') { return searchValue; } var val = (_displayValues$ = displayValues[0]) === null || _displayValues$ === void 0 ? void 0 : _displayValues$.value; return typeof val === 'string' || typeof val === 'number' ? String(val) : ''; }, [searchValue, mode, displayValues]); // ========================== Custom Input ========================== // Only works in `combobox` var customizeInputElement = mode === 'combobox' && typeof getInputElement === 'function' && getInputElement() || null; // Used for customize replacement for `rc-cascader` var customizeRawInputElement = typeof getRawInputElement === 'function' && getRawInputElement(); var customizeRawInputRef = useComposeRef(selectorDomRef, customizeRawInputElement === null || customizeRawInputElement === void 0 ? void 0 : (_customizeRawInputEle = customizeRawInputElement.props) === null || _customizeRawInputEle === void 0 ? void 0 : _customizeRawInputEle.ref); // ============================== Open ============================== // SSR not support Portal which means we need delay `open` for the first time render var _React$useState3 = react.useState(false), _React$useState4 = (0,slicedToArray/* default */.Z)(_React$useState3, 2), rendered = _React$useState4[0], setRendered = _React$useState4[1]; hooks_useLayoutEffect(function () { setRendered(true); }, []); var _useMergedState = useMergedState(false, { defaultValue: defaultOpen, value: open }), _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2), innerOpen = _useMergedState2[0], setInnerOpen = _useMergedState2[1]; var mergedOpen = rendered ? innerOpen : false; // Not trigger `open` in `combobox` when `notFoundContent` is empty var emptyListContent = !notFoundContent && emptyOptions; if (disabled || emptyListContent && mergedOpen && mode === 'combobox') { mergedOpen = false; } var triggerOpen = emptyListContent ? false : mergedOpen; var onToggleOpen = react.useCallback(function (newOpen) { var nextOpen = newOpen !== undefined ? newOpen : !mergedOpen; if (!disabled) { setInnerOpen(nextOpen); if (mergedOpen !== nextOpen) { onDropdownVisibleChange === null || onDropdownVisibleChange === void 0 ? void 0 : onDropdownVisibleChange(nextOpen); } } }, [disabled, mergedOpen, setInnerOpen, onDropdownVisibleChange]); // ============================= Search ============================= var tokenWithEnter = react.useMemo(function () { return (tokenSeparators || []).some(function (tokenSeparator) { return ['\n', '\r\n'].includes(tokenSeparator); }); }, [tokenSeparators]); var onInternalSearch = function onInternalSearch(searchText, fromTyping, isCompositing) { var ret = true; var newSearchText = searchText; onActiveValueChange === null || onActiveValueChange === void 0 ? void 0 : onActiveValueChange(null); // Check if match the `tokenSeparators` var patchLabels = isCompositing ? null : getSeparatedContent(searchText, tokenSeparators); // Ignore combobox since it's not split-able if (mode !== 'combobox' && patchLabels) { newSearchText = ''; onSearchSplit === null || onSearchSplit === void 0 ? void 0 : onSearchSplit(patchLabels); // Should close when paste finish onToggleOpen(false); // Tell Selector that break next actions ret = false; } if (onSearch && mergedSearchValue !== newSearchText) { onSearch(newSearchText, { source: fromTyping ? 'typing' : 'effect' }); } return ret; }; // Only triggered when menu is closed & mode is tags // If menu is open, OptionList will take charge // If mode isn't tags, press enter is not meaningful when you can't see any option var onInternalSearchSubmit = function onInternalSearchSubmit(searchText) { // prevent empty tags from appearing when you click the Enter button if (!searchText || !searchText.trim()) { return; } onSearch(searchText, { source: 'submit' }); }; // Close will clean up single mode search text react.useEffect(function () { if (!mergedOpen && !multiple && mode !== 'combobox') { onInternalSearch('', false, false); } }, [mergedOpen]); // ============================ Disabled ============================ // Close dropdown & remove focus state when disabled change react.useEffect(function () { if (innerOpen && disabled) { setInnerOpen(false); } if (disabled) { setMockFocused(false); } }, [disabled]); // ============================ Keyboard ============================ /** * We record input value here to check if can press to clean up by backspace * - null: Key is not down, this is reset by key up * - true: Search text is empty when first time backspace down * - false: Search text is not empty when first time backspace down */ var _useLock = useLock(), _useLock2 = (0,slicedToArray/* default */.Z)(_useLock, 2), getClearLock = _useLock2[0], setClearLock = _useLock2[1]; // KeyDown var onInternalKeyDown = function onInternalKeyDown(event) { var clearLock = getClearLock(); var which = event.which; if (which === es_KeyCode.ENTER) { // Do not submit form when type in the input if (mode !== 'combobox') { event.preventDefault(); } // We only manage open state here, close logic should handle by list component if (!mergedOpen) { onToggleOpen(true); } } setClearLock(!!mergedSearchValue); // Remove value by `backspace` if (which === es_KeyCode.BACKSPACE && !clearLock && multiple && !mergedSearchValue && displayValues.length) { var cloneDisplayValues = (0,toConsumableArray/* default */.Z)(displayValues); var removedDisplayValue = null; for (var i = cloneDisplayValues.length - 1; i >= 0; i -= 1) { var current = cloneDisplayValues[i]; if (!current.disabled) { cloneDisplayValues.splice(i, 1); removedDisplayValue = current; break; } } if (removedDisplayValue) { onDisplayValuesChange(cloneDisplayValues, { type: 'remove', values: [removedDisplayValue] }); } } for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { rest[_key - 1] = arguments[_key]; } if (mergedOpen && listRef.current) { var _listRef$current2; (_listRef$current2 = listRef.current).onKeyDown.apply(_listRef$current2, [event].concat(rest)); } onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown.apply(void 0, [event].concat(rest)); }; // KeyUp var onInternalKeyUp = function onInternalKeyUp(event) { for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { rest[_key2 - 1] = arguments[_key2]; } if (mergedOpen && listRef.current) { var _listRef$current3; (_listRef$current3 = listRef.current).onKeyUp.apply(_listRef$current3, [event].concat(rest)); } onKeyUp === null || onKeyUp === void 0 ? void 0 : onKeyUp.apply(void 0, [event].concat(rest)); }; // ============================ Selector ============================ var onSelectorRemove = function onSelectorRemove(val) { var newValues = displayValues.filter(function (i) { return i !== val; }); onDisplayValuesChange(newValues, { type: 'remove', values: [val] }); }; // ========================== Focus / Blur ========================== /** Record real focus status */ var focusRef = react.useRef(false); var onContainerFocus = function onContainerFocus() { setMockFocused(true); if (!disabled) { if (onFocus && !focusRef.current) { onFocus.apply(void 0, arguments); } // `showAction` should handle `focus` if set if (showAction.includes('focus')) { onToggleOpen(true); } } focusRef.current = true; }; var onContainerBlur = function onContainerBlur() { setMockFocused(false, function () { focusRef.current = false; onToggleOpen(false); }); if (disabled) { return; } if (mergedSearchValue) { // `tags` mode should move `searchValue` into values if (mode === 'tags') { onSearch(mergedSearchValue, { source: 'submit' }); } else if (mode === 'multiple') { // `multiple` mode only clean the search value but not trigger event onSearch('', { source: 'blur' }); } } if (onBlur) { onBlur.apply(void 0, arguments); } }; // Give focus back of Select var activeTimeoutIds = []; react.useEffect(function () { return function () { activeTimeoutIds.forEach(function (timeoutId) { return clearTimeout(timeoutId); }); activeTimeoutIds.splice(0, activeTimeoutIds.length); }; }, []); var onInternalMouseDown = function onInternalMouseDown(event) { var _triggerRef$current; var target = event.target; var popupElement = (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.getPopupElement(); // We should give focus back to selector if clicked item is not focusable if (popupElement && popupElement.contains(target)) { var timeoutId = setTimeout(function () { var index = activeTimeoutIds.indexOf(timeoutId); if (index !== -1) { activeTimeoutIds.splice(index, 1); } cancelSetMockFocused(); if (!mobile && !popupElement.contains(document.activeElement)) { var _selectorRef$current3; (_selectorRef$current3 = selectorRef.current) === null || _selectorRef$current3 === void 0 ? void 0 : _selectorRef$current3.focus(); } }); activeTimeoutIds.push(timeoutId); } for (var _len3 = arguments.length, restArgs = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) { restArgs[_key3 - 1] = arguments[_key3]; } onMouseDown === null || onMouseDown === void 0 ? void 0 : onMouseDown.apply(void 0, [event].concat(restArgs)); }; // ============================ Dropdown ============================ var _React$useState5 = react.useState(null), _React$useState6 = (0,slicedToArray/* default */.Z)(_React$useState5, 2), containerWidth = _React$useState6[0], setContainerWidth = _React$useState6[1]; var _React$useState7 = react.useState({}), _React$useState8 = (0,slicedToArray/* default */.Z)(_React$useState7, 2), forceUpdate = _React$useState8[1]; // We need force update here since popup dom is render async function onPopupMouseEnter() { forceUpdate({}); } hooks_useLayoutEffect(function () { if (triggerOpen) { var _containerRef$current; var newWidth = Math.ceil((_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.offsetWidth); if (containerWidth !== newWidth && !Number.isNaN(newWidth)) { setContainerWidth(newWidth); } } }, [triggerOpen]); // Used for raw custom input trigger var onTriggerVisibleChange; if (customizeRawInputElement) { onTriggerVisibleChange = function onTriggerVisibleChange(newOpen) { onToggleOpen(newOpen); }; } // Close when click on non-select element useSelectTriggerControl(function () { var _triggerRef$current2; return [containerRef.current, (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.getPopupElement()]; }, triggerOpen, onToggleOpen, !!customizeRawInputElement); // ============================ Context ============================= var baseSelectContext = react.useMemo(function () { return (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, props), {}, { notFoundContent: notFoundContent, open: mergedOpen, triggerOpen: triggerOpen, id: id, showSearch: mergedShowSearch, multiple: multiple, toggleOpen: onToggleOpen }); }, [props, notFoundContent, triggerOpen, mergedOpen, id, mergedShowSearch, multiple, onToggleOpen]); // ================================================================== // == Render == // ================================================================== // ============================= Arrow ============================== var mergedShowArrow = showArrow !== undefined ? showArrow : loading || !multiple && mode !== 'combobox'; var arrowNode; if (mergedShowArrow) { arrowNode = /*#__PURE__*/react.createElement(es_TransBtn, { className: classnames_default()("".concat(prefixCls, "-arrow"), (0,defineProperty/* default */.Z)({}, "".concat(prefixCls, "-arrow-loading"), loading)), customizeIcon: inputIcon, customizeIconProps: { loading: loading, searchValue: mergedSearchValue, open: mergedOpen, focused: mockFocused, showSearch: mergedShowSearch } }); } // ============================= Clear ============================== var clearNode; var onClearMouseDown = function onClearMouseDown() { var _selectorRef$current4; onClear === null || onClear === void 0 ? void 0 : onClear(); (_selectorRef$current4 = selectorRef.current) === null || _selectorRef$current4 === void 0 ? void 0 : _selectorRef$current4.focus(); onDisplayValuesChange([], { type: 'clear', values: displayValues }); onInternalSearch('', false, false); }; if (!disabled && allowClear && (displayValues.length || mergedSearchValue) && !(mode === 'combobox' && mergedSearchValue === '')) { clearNode = /*#__PURE__*/react.createElement(es_TransBtn, { className: "".concat(prefixCls, "-clear"), onMouseDown: onClearMouseDown, customizeIcon: clearIcon }, "\xD7"); } // =========================== OptionList =========================== var optionList = /*#__PURE__*/react.createElement(OptionList, { ref: listRef }); // ============================= Select ============================= var mergedClassName = classnames_default()(prefixCls, className, (_classNames2 = {}, (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-focused"), mockFocused), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-multiple"), multiple), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-single"), !multiple), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-allow-clear"), allowClear), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-show-arrow"), mergedShowArrow), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-disabled"), disabled), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-loading"), loading), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-open"), mergedOpen), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-customize-input"), customizeInputElement), (0,defineProperty/* default */.Z)(_classNames2, "".concat(prefixCls, "-show-search"), mergedShowSearch), _classNames2)); // >>> Selector var selectorNode = /*#__PURE__*/react.createElement(es_SelectTrigger, { ref: triggerRef, disabled: disabled, prefixCls: prefixCls, visible: triggerOpen, popupElement: optionList, containerWidth: containerWidth, animation: animation, transitionName: transitionName, dropdownStyle: dropdownStyle, dropdownClassName: dropdownClassName, direction: direction, dropdownMatchSelectWidth: dropdownMatchSelectWidth, dropdownRender: dropdownRender, dropdownAlign: dropdownAlign, placement: placement, builtinPlacements: builtinPlacements, getPopupContainer: getPopupContainer, empty: emptyOptions, getTriggerDOMNode: function getTriggerDOMNode() { return selectorDomRef.current; }, onPopupVisibleChange: onTriggerVisibleChange, onPopupMouseEnter: onPopupMouseEnter }, customizeRawInputElement ? /*#__PURE__*/react.cloneElement(customizeRawInputElement, { ref: customizeRawInputRef }) : /*#__PURE__*/react.createElement(es_Selector, (0,esm_extends/* default */.Z)({}, props, { domRef: selectorDomRef, prefixCls: prefixCls, inputElement: customizeInputElement, ref: selectorRef, id: id, showSearch: mergedShowSearch, autoClearSearchValue: autoClearSearchValue, mode: mode, activeDescendantId: activeDescendantId, tagRender: tagRender, values: displayValues, open: mergedOpen, onToggleOpen: onToggleOpen, activeValue: activeValue, searchValue: mergedSearchValue, onSearch: onInternalSearch, onSearchSubmit: onInternalSearchSubmit, onRemove: onSelectorRemove, tokenWithEnter: tokenWithEnter }))); // >>> Render var renderNode; // Render raw if (customizeRawInputElement) { renderNode = selectorNode; } else { renderNode = /*#__PURE__*/react.createElement("div", (0,esm_extends/* default */.Z)({ className: mergedClassName }, domProps, { ref: containerRef, onMouseDown: onInternalMouseDown, onKeyDown: onInternalKeyDown, onKeyUp: onInternalKeyUp, onFocus: onContainerFocus, onBlur: onContainerBlur }), mockFocused && !mergedOpen && /*#__PURE__*/react.createElement("span", { style: { width: 0, height: 0, position: 'absolute', overflow: 'hidden', opacity: 0 }, "aria-live": "polite" }, "".concat(displayValues.map(function (_ref) { var label = _ref.label, value = _ref.value; return ['number', 'string'].includes((0,esm_typeof/* default */.Z)(label)) ? label : value; }).join(', '))), selectorNode, arrowNode, clearNode); } return /*#__PURE__*/react.createElement(BaseSelectContext.Provider, { value: baseSelectContext }, renderNode); }); // Set display name for dev if (false) {} /* harmony default export */ var es_BaseSelect = (BaseSelect); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useCache.js /** * Cache `value` related LabeledValue & options. */ /* harmony default export */ var useCache = (function (labeledValues, valueOptions) { var cacheRef = react.useRef({ values: new Map(), options: new Map() }); var filledLabeledValues = react.useMemo(function () { var _cacheRef$current = cacheRef.current, prevValueCache = _cacheRef$current.values, prevOptionCache = _cacheRef$current.options; // Fill label by cache var patchedValues = labeledValues.map(function (item) { if (item.label === undefined) { var _prevValueCache$get; return (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, item), {}, { label: (_prevValueCache$get = prevValueCache.get(item.value)) === null || _prevValueCache$get === void 0 ? void 0 : _prevValueCache$get.label }); } return item; }); // Refresh cache var valueCache = new Map(); var optionCache = new Map(); patchedValues.forEach(function (item) { valueCache.set(item.value, item); optionCache.set(item.value, valueOptions.get(item.value) || prevOptionCache.get(item.value)); }); cacheRef.current.values = valueCache; cacheRef.current.options = optionCache; return patchedValues; }, [labeledValues, valueOptions]); var getOption = react.useCallback(function (val) { return valueOptions.get(val) || cacheRef.current.options.get(val); }, [valueOptions]); return [filledLabeledValues, getOption]; }); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useFilterOptions.js function includes(test, search) { return commonUtil_toArray(test).join('').toUpperCase().includes(search); } /* harmony default export */ var useFilterOptions = (function (options, fieldNames, searchValue, filterOption, optionFilterProp) { return react.useMemo(function () { if (!searchValue || filterOption === false) { return options; } var fieldOptions = fieldNames.options, fieldLabel = fieldNames.label, fieldValue = fieldNames.value; var filteredOptions = []; var customizeFilter = typeof filterOption === 'function'; var upperSearch = searchValue.toUpperCase(); var filterFunc = customizeFilter ? filterOption : function (_, option) { // Use provided `optionFilterProp` if (optionFilterProp) { return includes(option[optionFilterProp], upperSearch); } // Auto select `label` or `value` by option type if (option[fieldOptions]) { // hack `fieldLabel` since `OptionGroup` children is not `label` return includes(option[fieldLabel !== 'children' ? fieldLabel : 'label'], upperSearch); } return includes(option[fieldValue], upperSearch); }; var wrapOption = customizeFilter ? function (opt) { return injectPropsWithOption(opt); } : function (opt) { return opt; }; options.forEach(function (item) { // Group should check child options if (item[fieldOptions]) { // Check group first var matchGroup = filterFunc(searchValue, wrapOption(item)); if (matchGroup) { filteredOptions.push(item); } else { // Check option var subOptions = item[fieldOptions].filter(function (subItem) { return filterFunc(searchValue, wrapOption(subItem)); }); if (subOptions.length) { filteredOptions.push((0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, item), {}, (0,defineProperty/* default */.Z)({}, fieldOptions, subOptions))); } } return; } if (filterFunc(searchValue, wrapOption(item))) { filteredOptions.push(item); } }); return filteredOptions; }, [options, filterOption, optionFilterProp, searchValue, fieldNames]); }); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useId.js var uuid = 0; /** Is client side and not jsdom */ var useId_isBrowserClient = true && canUseDom(); /** Get unique id for accessibility usage */ function getUUID() { var retId; // Test never reach /* istanbul ignore if */ if (useId_isBrowserClient) { retId = uuid; uuid += 1; } else { retId = 'TEST_OR_SSR'; } return retId; } function useId(id) { // Inner id for accessibility usage. Only work in client side var _React$useState = react.useState(), _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2), innerId = _React$useState2[0], setInnerId = _React$useState2[1]; react.useEffect(function () { setInnerId("rc_select_".concat(getUUID())); }, []); return id || innerId; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/Children/toArray.js function toArray_toArray(children) { var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var ret = []; react.Children.forEach(children, function (child) { if ((child === undefined || child === null) && !option.keepEmpty) { return; } if (Array.isArray(child)) { ret = ret.concat(toArray_toArray(child)); } else if ((0,react_is.isFragment)(child) && child.props) { ret = ret.concat(toArray_toArray(child.props.children, option)); } else { ret.push(child); } }); return ret; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/utils/legacyUtil.js var legacyUtil_excluded = ["children", "value"], _excluded2 = ["children"]; function convertNodeToOption(node) { var _ref = node, key = _ref.key, _ref$props = _ref.props, children = _ref$props.children, value = _ref$props.value, restProps = (0,objectWithoutProperties/* default */.Z)(_ref$props, legacyUtil_excluded); return (0,objectSpread2/* default */.Z)({ key: key, value: value !== undefined ? value : key, children: children }, restProps); } function legacyUtil_convertChildrenToData(nodes) { var optionOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; return toArray_toArray(nodes).map(function (node, index) { if (! /*#__PURE__*/react.isValidElement(node) || !node.type) { return null; } var _ref2 = node, isSelectOptGroup = _ref2.type.isSelectOptGroup, key = _ref2.key, _ref2$props = _ref2.props, children = _ref2$props.children, restProps = (0,objectWithoutProperties/* default */.Z)(_ref2$props, _excluded2); if (optionOnly || !isSelectOptGroup) { return convertNodeToOption(node); } return (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({ key: "__RC_SELECT_GRP__".concat(key === null ? index : key, "__"), label: key }, restProps), {}, { options: legacyUtil_convertChildrenToData(children) }); }).filter(function (data) { return data; }); } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useOptions.js /** * Parse `children` to `options` if `options` is not provided. * Then flatten the `options`. */ function useOptions(options, children, fieldNames, optionFilterProp, optionLabelProp) { return react.useMemo(function () { var mergedOptions = options; var childrenAsData = !options; if (childrenAsData) { mergedOptions = legacyUtil_convertChildrenToData(children); } var valueOptions = new Map(); var labelOptions = new Map(); var setLabelOptions = function setLabelOptions(labelOptionsMap, option, key) { if (key && typeof key === 'string') { labelOptionsMap.set(option[key], option); } }; function dig(optionList) { var isChildren = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; // for loop to speed up collection speed for (var i = 0; i < optionList.length; i += 1) { var option = optionList[i]; if (!option[fieldNames.options] || isChildren) { valueOptions.set(option[fieldNames.value], option); setLabelOptions(labelOptions, option, fieldNames.label); // https://github.com/ant-design/ant-design/issues/35304 setLabelOptions(labelOptions, option, optionFilterProp); setLabelOptions(labelOptions, option, optionLabelProp); } else { dig(option[fieldNames.options], true); } } } dig(mergedOptions); return { options: mergedOptions, valueOptions: valueOptions, labelOptions: labelOptions }; }, [options, children, fieldNames, optionFilterProp, optionLabelProp]); } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/hooks/useRefFunc.js /** * Same as `React.useCallback` but always return a memoized function * but redirect to real function. */ function useRefFunc(callback) { var funcRef = react.useRef(); funcRef.current = callback; var cacheFn = react.useCallback(function () { return funcRef.current.apply(funcRef, arguments); }, []); return cacheFn; } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/OptGroup.js /* istanbul ignore file */ /** This is a placeholder, not real render in dom */ var OptGroup = function OptGroup() { return null; }; OptGroup.isSelectOptGroup = true; /* harmony default export */ var es_OptGroup = (OptGroup); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/Option.js /* istanbul ignore file */ /** This is a placeholder, not real render in dom */ var Option = function Option() { return null; }; Option.isSelectOption = true; /* harmony default export */ var es_Option = (Option); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/node_modules/rc-util/es/omit.js function omit(obj, fields) { var clone = (0,objectSpread2/* default */.Z)({}, obj); if (Array.isArray(fields)) { fields.forEach(function (key) { delete clone[key]; }); } return clone; } // EXTERNAL MODULE: ./node_modules/antd/node_modules/rc-virtual-list/es/index.js + 18 modules var rc_virtual_list_es = __webpack_require__(73358); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/SelectContext.js var SelectContext = /*#__PURE__*/react.createContext(null); /* harmony default export */ var es_SelectContext = (SelectContext); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/utils/platformUtil.js /* istanbul ignore file */ function isPlatformMac() { return /(mac\sos|macintosh)/i.test(navigator.appVersion); } ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/OptionList.js var OptionList_excluded = ["disabled", "title", "children", "style", "className"]; // export interface OptionListProps { function OptionList_isTitleType(content) { return typeof content === 'string' || typeof content === 'number'; } /** * Using virtual list of option display. * Will fallback to dom if use customize render. */ var OptionList = function OptionList(_, ref) { var _useBaseProps = useBaseProps(), prefixCls = _useBaseProps.prefixCls, id = _useBaseProps.id, open = _useBaseProps.open, multiple = _useBaseProps.multiple, mode = _useBaseProps.mode, searchValue = _useBaseProps.searchValue, toggleOpen = _useBaseProps.toggleOpen, notFoundContent = _useBaseProps.notFoundContent, onPopupScroll = _useBaseProps.onPopupScroll; var _React$useContext = react.useContext(es_SelectContext), flattenOptions = _React$useContext.flattenOptions, onActiveValue = _React$useContext.onActiveValue, defaultActiveFirstOption = _React$useContext.defaultActiveFirstOption, onSelect = _React$useContext.onSelect, menuItemSelectedIcon = _React$useContext.menuItemSelectedIcon, rawValues = _React$useContext.rawValues, fieldNames = _React$useContext.fieldNames, virtual = _React$useContext.virtual, direction = _React$useContext.direction, listHeight = _React$useContext.listHeight, listItemHeight = _React$useContext.listItemHeight; var itemPrefixCls = "".concat(prefixCls, "-item"); var memoFlattenOptions = useMemo(function () { return flattenOptions; }, [open, flattenOptions], function (prev, next) { return next[0] && prev[1] !== next[1]; }); // =========================== List =========================== var listRef = react.useRef(null); var onListMouseDown = function onListMouseDown(event) { event.preventDefault(); }; var scrollIntoView = function scrollIntoView(args) { if (listRef.current) { listRef.current.scrollTo(typeof args === 'number' ? { index: args } : args); } }; // ========================== Active ========================== var getEnabledActiveIndex = function getEnabledActiveIndex(index) { var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1; var len = memoFlattenOptions.length; for (var i = 0; i < len; i += 1) { var current = (index + i * offset + len) % len; var _memoFlattenOptions$c = memoFlattenOptions[current], group = _memoFlattenOptions$c.group, data = _memoFlattenOptions$c.data; if (!group && !data.disabled) { return current; } } return -1; }; var _React$useState = react.useState(function () { return getEnabledActiveIndex(0); }), _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2), activeIndex = _React$useState2[0], setActiveIndex = _React$useState2[1]; var setActive = function setActive(index) { var fromKeyboard = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; setActiveIndex(index); var info = { source: fromKeyboard ? 'keyboard' : 'mouse' }; // Trigger active event var flattenItem = memoFlattenOptions[index]; if (!flattenItem) { onActiveValue(null, -1, info); return; } onActiveValue(flattenItem.value, index, info); }; // Auto active first item when list length or searchValue changed (0,react.useEffect)(function () { setActive(defaultActiveFirstOption !== false ? getEnabledActiveIndex(0) : -1); }, [memoFlattenOptions.length, searchValue]); // https://github.com/ant-design/ant-design/issues/34975 var isSelected = react.useCallback(function (value) { return rawValues.has(value) && mode !== 'combobox'; }, [mode, (0,toConsumableArray/* default */.Z)(rawValues).toString(), rawValues.size]); // Auto scroll to item position in single mode (0,react.useEffect)(function () { /** * React will skip `onChange` when component update. * `setActive` function will call root accessibility state update which makes re-render. * So we need to delay to let Input component trigger onChange first. */ var timeoutId = setTimeout(function () { if (!multiple && open && rawValues.size === 1) { var value = Array.from(rawValues)[0]; var index = memoFlattenOptions.findIndex(function (_ref) { var data = _ref.data; return data.value === value; }); if (index !== -1) { setActive(index); scrollIntoView(index); } } }); // Force trigger scrollbar visible when open if (open) { var _listRef$current; (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.scrollTo(undefined); } return function () { return clearTimeout(timeoutId); }; }, [open, searchValue, flattenOptions.length]); // ========================== Values ========================== var onSelectValue = function onSelectValue(value) { if (value !== undefined) { onSelect(value, { selected: !rawValues.has(value) }); } // Single mode should always close by select if (!multiple) { toggleOpen(false); } }; // ========================= Keyboard ========================= react.useImperativeHandle(ref, function () { return { onKeyDown: function onKeyDown(event) { var which = event.which, ctrlKey = event.ctrlKey; switch (which) { // >>> Arrow keys & ctrl + n/p on Mac case es_KeyCode.N: case es_KeyCode.P: case es_KeyCode.UP: case es_KeyCode.DOWN: { var offset = 0; if (which === es_KeyCode.UP) { offset = -1; } else if (which === es_KeyCode.DOWN) { offset = 1; } else if (isPlatformMac() && ctrlKey) { if (which === es_KeyCode.N) { offset = 1; } else if (which === es_KeyCode.P) { offset = -1; } } if (offset !== 0) { var nextActiveIndex = getEnabledActiveIndex(activeIndex + offset, offset); scrollIntoView(nextActiveIndex); setActive(nextActiveIndex, true); } break; } // >>> Select case es_KeyCode.ENTER: { // value var item = memoFlattenOptions[activeIndex]; if (item && !item.data.disabled) { onSelectValue(item.value); } else { onSelectValue(undefined); } if (open) { event.preventDefault(); } break; } // >>> Close case es_KeyCode.ESC: { toggleOpen(false); if (open) { event.stopPropagation(); } } } }, onKeyUp: function onKeyUp() {}, scrollTo: function scrollTo(index) { scrollIntoView(index); } }; }); // ========================== Render ========================== if (memoFlattenOptions.length === 0) { return /*#__PURE__*/react.createElement("div", { role: "listbox", id: "".concat(id, "_list"), className: "".concat(itemPrefixCls, "-empty"), onMouseDown: onListMouseDown }, notFoundContent); } var omitFieldNameList = Object.keys(fieldNames).map(function (key) { return fieldNames[key]; }); var getLabel = function getLabel(item) { return item.label; }; function getItemAriaProps(item, index) { var group = item.group; return { role: group ? 'presentation' : 'option', id: "".concat(id, "_list_").concat(index) }; } var renderItem = function renderItem(index) { var item = memoFlattenOptions[index]; if (!item) return null; var itemData = item.data || {}; var value = itemData.value; var group = item.group; var attrs = pickAttrs(itemData, true); var mergedLabel = getLabel(item); return item ? /*#__PURE__*/react.createElement("div", (0,esm_extends/* default */.Z)({ "aria-label": typeof mergedLabel === 'string' && !group ? mergedLabel : null }, attrs, { key: index }, getItemAriaProps(item, index), { "aria-selected": isSelected(value) }), value) : null; }; var a11yProps = { role: 'listbox', id: "".concat(id, "_list") }; return /*#__PURE__*/react.createElement(react.Fragment, null, virtual && /*#__PURE__*/react.createElement("div", (0,esm_extends/* default */.Z)({}, a11yProps, { style: { height: 0, width: 0, overflow: 'hidden' } }), renderItem(activeIndex - 1), renderItem(activeIndex), renderItem(activeIndex + 1)), /*#__PURE__*/react.createElement(rc_virtual_list_es/* default */.Z, { itemKey: "key", ref: listRef, data: memoFlattenOptions, height: listHeight, itemHeight: listItemHeight, fullHeight: false, onMouseDown: onListMouseDown, onScroll: onPopupScroll, virtual: virtual, direction: direction, innerProps: virtual ? null : a11yProps }, function (item, itemIndex) { var _classNames; var group = item.group, groupOption = item.groupOption, data = item.data, label = item.label, value = item.value; var key = data.key; // Group if (group) { var _data$title; var groupTitle = (_data$title = data.title) !== null && _data$title !== void 0 ? _data$title : OptionList_isTitleType(label) ? label.toString() : undefined; return /*#__PURE__*/react.createElement("div", { className: classnames_default()(itemPrefixCls, "".concat(itemPrefixCls, "-group")), title: groupTitle }, label !== undefined ? label : key); } var disabled = data.disabled, title = data.title, children = data.children, style = data.style, className = data.className, otherProps = (0,objectWithoutProperties/* default */.Z)(data, OptionList_excluded); var passedProps = omit(otherProps, omitFieldNameList); // Option var selected = isSelected(value); var optionPrefixCls = "".concat(itemPrefixCls, "-option"); var optionClassName = classnames_default()(itemPrefixCls, optionPrefixCls, className, (_classNames = {}, (0,defineProperty/* default */.Z)(_classNames, "".concat(optionPrefixCls, "-grouped"), groupOption), (0,defineProperty/* default */.Z)(_classNames, "".concat(optionPrefixCls, "-active"), activeIndex === itemIndex && !disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(optionPrefixCls, "-disabled"), disabled), (0,defineProperty/* default */.Z)(_classNames, "".concat(optionPrefixCls, "-selected"), selected), _classNames)); var mergedLabel = getLabel(item); var iconVisible = !menuItemSelectedIcon || typeof menuItemSelectedIcon === 'function' || selected; // https://github.com/ant-design/ant-design/issues/34145 var content = typeof mergedLabel === 'number' ? mergedLabel : mergedLabel || value; // https://github.com/ant-design/ant-design/issues/26717 var optionTitle = OptionList_isTitleType(content) ? content.toString() : undefined; if (title !== undefined) { optionTitle = title; } return /*#__PURE__*/react.createElement("div", (0,esm_extends/* default */.Z)({}, pickAttrs(passedProps), !virtual ? getItemAriaProps(item, itemIndex) : {}, { "aria-selected": selected, className: optionClassName, title: optionTitle, onMouseMove: function onMouseMove() { if (activeIndex === itemIndex || disabled) { return; } setActive(itemIndex); }, onClick: function onClick() { if (!disabled) { onSelectValue(value); } }, style: style }), /*#__PURE__*/react.createElement("div", { className: "".concat(optionPrefixCls, "-content") }, content), /*#__PURE__*/react.isValidElement(menuItemSelectedIcon) || selected, iconVisible && /*#__PURE__*/react.createElement(es_TransBtn, { className: "".concat(itemPrefixCls, "-option-state"), customizeIcon: menuItemSelectedIcon, customizeIconProps: { isSelected: selected } }, selected ? '✓' : null)); })); }; var RefOptionList = /*#__PURE__*/react.forwardRef(OptionList); RefOptionList.displayName = 'OptionList'; /* harmony default export */ var es_OptionList = (RefOptionList); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/utils/warningPropsUtil.js function warningProps(props) { var mode = props.mode, options = props.options, children = props.children, backfill = props.backfill, allowClear = props.allowClear, placeholder = props.placeholder, getInputElement = props.getInputElement, showSearch = props.showSearch, onSearch = props.onSearch, defaultOpen = props.defaultOpen, autoFocus = props.autoFocus, labelInValue = props.labelInValue, value = props.value, inputValue = props.inputValue, optionLabelProp = props.optionLabelProp; var multiple = isMultiple(mode); var mergedShowSearch = showSearch !== undefined ? showSearch : multiple || mode === 'combobox'; var mergedOptions = options || convertChildrenToData(children); // `tags` should not set option as disabled warning(mode !== 'tags' || mergedOptions.every(function (opt) { return !opt.disabled; }), 'Please avoid setting option to disabled in tags mode since user can always type text as tag.'); // `combobox` & `tags` should option be `string` type if (mode === 'tags' || mode === 'combobox') { var hasNumberValue = mergedOptions.some(function (item) { if (item.options) { return item.options.some(function (opt) { return typeof ('value' in opt ? opt.value : opt.key) === 'number'; }); } return typeof ('value' in item ? item.value : item.key) === 'number'; }); warning(!hasNumberValue, '`value` of Option should not use number type when `mode` is `tags` or `combobox`.'); } // `combobox` should not use `optionLabelProp` warning(mode !== 'combobox' || !optionLabelProp, '`combobox` mode not support `optionLabelProp`. Please set `value` on Option directly.'); // Only `combobox` support `backfill` warning(mode === 'combobox' || !backfill, '`backfill` only works with `combobox` mode.'); // Only `combobox` support `getInputElement` warning(mode === 'combobox' || !getInputElement, '`getInputElement` only work with `combobox` mode.'); // Customize `getInputElement` should not use `allowClear` & `placeholder` noteOnce(mode !== 'combobox' || !getInputElement || !allowClear || !placeholder, 'Customize `getInputElement` should customize clear and placeholder logic instead of configuring `allowClear` and `placeholder`.'); // `onSearch` should use in `combobox` or `showSearch` if (onSearch && !mergedShowSearch && mode !== 'combobox' && mode !== 'tags') { warning(false, '`onSearch` should work with `showSearch` instead of use alone.'); } noteOnce(!defaultOpen || autoFocus, '`defaultOpen` makes Select open without focus which means it will not close by click outside. You can set `autoFocus` if needed.'); if (value !== undefined && value !== null) { var values = toArray(value); warning(!labelInValue || values.every(function (val) { return _typeof(val) === 'object' && ('key' in val || 'value' in val); }), '`value` should in shape of `{ value: string | number, label?: ReactNode }` when you set `labelInValue` to `true`'); warning(!multiple || Array.isArray(value), '`value` should be array when `mode` is `multiple` or `tags`'); } // Syntactic sugar should use correct children type if (children) { var invalidateChildType = null; toNodeArray(children).some(function (node) { if (! /*#__PURE__*/React.isValidElement(node) || !node.type) { return false; } var _ref = node, type = _ref.type; if (type.isSelectOption) { return false; } if (type.isSelectOptGroup) { var allChildrenValid = toNodeArray(node.props.children).every(function (subNode) { if (! /*#__PURE__*/React.isValidElement(subNode) || !node.type || subNode.type.isSelectOption) { return true; } invalidateChildType = subNode.type; return false; }); if (allChildrenValid) { return false; } return true; } invalidateChildType = type; return true; }); if (invalidateChildType) { warning(false, "`children` should be `Select.Option` or `Select.OptGroup` instead of `".concat(invalidateChildType.displayName || invalidateChildType.name || invalidateChildType, "`.")); } warning(inputValue === undefined, '`inputValue` is deprecated, please use `searchValue` instead.'); } } // value in Select option should not be null // note: OptGroup has options too function warningNullOptions(options, fieldNames) { if (options) { var recursiveOptions = function recursiveOptions(optionsList) { var inGroup = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; for (var i = 0; i < optionsList.length; i++) { var option = optionsList[i]; if (option[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value] === null) { warning(false, '`value` in Select options should not be `null`.'); return true; } if (!inGroup && Array.isArray(option[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.options]) && recursiveOptions(option[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.options], true)) { break; } } }; recursiveOptions(options); } } /* harmony default export */ var warningPropsUtil = ((/* unused pure expression or super */ null && (warningProps))); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/Select.js var Select_excluded = ["id", "mode", "prefixCls", "backfill", "fieldNames", "inputValue", "searchValue", "onSearch", "autoClearSearchValue", "onSelect", "onDeselect", "dropdownMatchSelectWidth", "filterOption", "filterSort", "optionFilterProp", "optionLabelProp", "options", "children", "defaultActiveFirstOption", "menuItemSelectedIcon", "virtual", "direction", "listHeight", "listItemHeight", "value", "defaultValue", "labelInValue", "onChange"]; /** * To match accessibility requirement, we always provide an input in the component. * Other element will not set `tabIndex` to avoid `onBlur` sequence problem. * For focused select, we set `aria-live="polite"` to update the accessibility content. * * ref: * - keyboard: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role#Keyboard_interactions * * New api: * - listHeight * - listItemHeight * - component * * Remove deprecated api: * - multiple * - tags * - combobox * - firstActiveValue * - dropdownMenuStyle * - openClassName (Not list in api) * * Update: * - `backfill` only support `combobox` mode * - `combobox` mode not support `labelInValue` since it's meaningless * - `getInputElement` only support `combobox` mode * - `onChange` return OptionData instead of ReactNode * - `filterOption` `onChange` `onSelect` accept OptionData instead of ReactNode * - `combobox` mode trigger `onChange` will get `undefined` if no `value` match in Option * - `combobox` mode not support `optionLabelProp` */ var OMIT_DOM_PROPS = ['inputValue']; function isRawValue(value) { return !value || (0,esm_typeof/* default */.Z)(value) !== 'object'; } var Select = /*#__PURE__*/react.forwardRef(function (props, ref) { var id = props.id, mode = props.mode, _props$prefixCls = props.prefixCls, prefixCls = _props$prefixCls === void 0 ? 'rc-select' : _props$prefixCls, backfill = props.backfill, fieldNames = props.fieldNames, inputValue = props.inputValue, searchValue = props.searchValue, onSearch = props.onSearch, _props$autoClearSearc = props.autoClearSearchValue, autoClearSearchValue = _props$autoClearSearc === void 0 ? true : _props$autoClearSearc, onSelect = props.onSelect, onDeselect = props.onDeselect, _props$dropdownMatchS = props.dropdownMatchSelectWidth, dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS, filterOption = props.filterOption, filterSort = props.filterSort, optionFilterProp = props.optionFilterProp, optionLabelProp = props.optionLabelProp, options = props.options, children = props.children, defaultActiveFirstOption = props.defaultActiveFirstOption, menuItemSelectedIcon = props.menuItemSelectedIcon, virtual = props.virtual, direction = props.direction, _props$listHeight = props.listHeight, listHeight = _props$listHeight === void 0 ? 200 : _props$listHeight, _props$listItemHeight = props.listItemHeight, listItemHeight = _props$listItemHeight === void 0 ? 20 : _props$listItemHeight, value = props.value, defaultValue = props.defaultValue, labelInValue = props.labelInValue, onChange = props.onChange, restProps = (0,objectWithoutProperties/* default */.Z)(props, Select_excluded); var mergedId = useId(id); var multiple = BaseSelect_isMultiple(mode); var childrenAsData = !!(!options && children); var mergedFilterOption = react.useMemo(function () { if (filterOption === undefined && mode === 'combobox') { return false; } return filterOption; }, [filterOption, mode]); // ========================= FieldNames ========================= var mergedFieldNames = react.useMemo(function () { return fillFieldNames(fieldNames, childrenAsData); }, /* eslint-disable react-hooks/exhaustive-deps */ [ // We stringify fieldNames to avoid unnecessary re-renders. JSON.stringify(fieldNames), childrenAsData] /* eslint-enable react-hooks/exhaustive-deps */); // =========================== Search =========================== var _useMergedState = useMergedState('', { value: searchValue !== undefined ? searchValue : inputValue, postState: function postState(search) { return search || ''; } }), _useMergedState2 = (0,slicedToArray/* default */.Z)(_useMergedState, 2), mergedSearchValue = _useMergedState2[0], setSearchValue = _useMergedState2[1]; // =========================== Option =========================== var parsedOptions = useOptions(options, children, mergedFieldNames, optionFilterProp, optionLabelProp); var valueOptions = parsedOptions.valueOptions, labelOptions = parsedOptions.labelOptions, mergedOptions = parsedOptions.options; // ========================= Wrap Value ========================= var convert2LabelValues = react.useCallback(function (draftValues) { // Convert to array var valueList = commonUtil_toArray(draftValues); // Convert to labelInValue type return valueList.map(function (val) { var rawValue; var rawLabel; var rawKey; var rawDisabled; var rawTitle; // Fill label & value if (isRawValue(val)) { rawValue = val; } else { var _val$value; rawKey = val.key; rawLabel = val.label; rawValue = (_val$value = val.value) !== null && _val$value !== void 0 ? _val$value : rawKey; } var option = valueOptions.get(rawValue); if (option) { var _option$key; // Fill missing props if (rawLabel === undefined) rawLabel = option === null || option === void 0 ? void 0 : option[optionLabelProp || mergedFieldNames.label]; if (rawKey === undefined) rawKey = (_option$key = option === null || option === void 0 ? void 0 : option.key) !== null && _option$key !== void 0 ? _option$key : rawValue; rawDisabled = option === null || option === void 0 ? void 0 : option.disabled; rawTitle = option === null || option === void 0 ? void 0 : option.title; // Warning if label not same as provided if (false) { var optionLabel; } } return { label: rawLabel, value: rawValue, key: rawKey, disabled: rawDisabled, title: rawTitle }; }); }, [mergedFieldNames, optionLabelProp, valueOptions]); // =========================== Values =========================== var _useMergedState3 = useMergedState(defaultValue, { value: value }), _useMergedState4 = (0,slicedToArray/* default */.Z)(_useMergedState3, 2), internalValue = _useMergedState4[0], setInternalValue = _useMergedState4[1]; // Merged value with LabelValueType var rawLabeledValues = react.useMemo(function () { var _values$; var values = convert2LabelValues(internalValue); // combobox no need save value when it's no value if (mode === 'combobox' && !((_values$ = values[0]) !== null && _values$ !== void 0 && _values$.value)) { return []; } return values; }, [internalValue, convert2LabelValues, mode]); // Fill label with cache to avoid option remove var _useCache = useCache(rawLabeledValues, valueOptions), _useCache2 = (0,slicedToArray/* default */.Z)(_useCache, 2), mergedValues = _useCache2[0], getMixedOption = _useCache2[1]; var displayValues = react.useMemo(function () { // `null` need show as placeholder instead // https://github.com/ant-design/ant-design/issues/25057 if (!mode && mergedValues.length === 1) { var firstValue = mergedValues[0]; if (firstValue.value === null && (firstValue.label === null || firstValue.label === undefined)) { return []; } } return mergedValues.map(function (item) { var _item$label; return (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, item), {}, { label: (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : item.value }); }); }, [mode, mergedValues]); /** Convert `displayValues` to raw value type set */ var rawValues = react.useMemo(function () { return new Set(mergedValues.map(function (val) { return val.value; })); }, [mergedValues]); react.useEffect(function () { if (mode === 'combobox') { var _mergedValues$; var strValue = (_mergedValues$ = mergedValues[0]) === null || _mergedValues$ === void 0 ? void 0 : _mergedValues$.value; setSearchValue(commonUtil_hasValue(strValue) ? String(strValue) : ''); } }, [mergedValues]); // ======================= Display Option ======================= // Create a placeholder item if not exist in `options` var createTagOption = useRefFunc(function (val, label) { var _ref; var mergedLabel = label !== null && label !== void 0 ? label : val; return _ref = {}, (0,defineProperty/* default */.Z)(_ref, mergedFieldNames.value, val), (0,defineProperty/* default */.Z)(_ref, mergedFieldNames.label, mergedLabel), _ref; }); // Fill tag as option if mode is `tags` var filledTagOptions = react.useMemo(function () { if (mode !== 'tags') { return mergedOptions; } // >>> Tag mode var cloneOptions = (0,toConsumableArray/* default */.Z)(mergedOptions); // Check if value exist in options (include new patch item) var existOptions = function existOptions(val) { return valueOptions.has(val); }; // Fill current value as option (0,toConsumableArray/* default */.Z)(mergedValues).sort(function (a, b) { return a.value < b.value ? -1 : 1; }).forEach(function (item) { var val = item.value; if (!existOptions(val)) { cloneOptions.push(createTagOption(val, item.label)); } }); return cloneOptions; }, [createTagOption, mergedOptions, valueOptions, mergedValues, mode]); var filteredOptions = useFilterOptions(filledTagOptions, mergedFieldNames, mergedSearchValue, mergedFilterOption, optionFilterProp); // Fill options with search value if needed var filledSearchOptions = react.useMemo(function () { if (mode !== 'tags' || !mergedSearchValue || filteredOptions.some(function (item) { return item[optionFilterProp || 'value'] === mergedSearchValue; })) { return filteredOptions; } // Fill search value as option return [createTagOption(mergedSearchValue)].concat((0,toConsumableArray/* default */.Z)(filteredOptions)); }, [createTagOption, optionFilterProp, mode, filteredOptions, mergedSearchValue]); var orderedFilteredOptions = react.useMemo(function () { if (!filterSort) { return filledSearchOptions; } return (0,toConsumableArray/* default */.Z)(filledSearchOptions).sort(function (a, b) { return filterSort(a, b); }); }, [filledSearchOptions, filterSort]); var displayOptions = react.useMemo(function () { return flattenOptions(orderedFilteredOptions, { fieldNames: mergedFieldNames, childrenAsData: childrenAsData }); }, [orderedFilteredOptions, mergedFieldNames, childrenAsData]); // =========================== Change =========================== var triggerChange = function triggerChange(values) { var labeledValues = convert2LabelValues(values); setInternalValue(labeledValues); if (onChange && ( // Trigger event only when value changed labeledValues.length !== mergedValues.length || labeledValues.some(function (newVal, index) { var _mergedValues$index; return ((_mergedValues$index = mergedValues[index]) === null || _mergedValues$index === void 0 ? void 0 : _mergedValues$index.value) !== (newVal === null || newVal === void 0 ? void 0 : newVal.value); }))) { var returnValues = labelInValue ? labeledValues : labeledValues.map(function (v) { return v.value; }); var returnOptions = labeledValues.map(function (v) { return injectPropsWithOption(getMixedOption(v.value)); }); onChange( // Value multiple ? returnValues : returnValues[0], // Option multiple ? returnOptions : returnOptions[0]); } }; // ======================= Accessibility ======================== var _React$useState = react.useState(null), _React$useState2 = (0,slicedToArray/* default */.Z)(_React$useState, 2), activeValue = _React$useState2[0], setActiveValue = _React$useState2[1]; var _React$useState3 = react.useState(0), _React$useState4 = (0,slicedToArray/* default */.Z)(_React$useState3, 2), accessibilityIndex = _React$useState4[0], setAccessibilityIndex = _React$useState4[1]; var mergedDefaultActiveFirstOption = defaultActiveFirstOption !== undefined ? defaultActiveFirstOption : mode !== 'combobox'; var onActiveValue = react.useCallback(function (active, index) { var _ref2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, _ref2$source = _ref2.source, source = _ref2$source === void 0 ? 'keyboard' : _ref2$source; setAccessibilityIndex(index); if (backfill && mode === 'combobox' && active !== null && source === 'keyboard') { setActiveValue(String(active)); } }, [backfill, mode]); // ========================= OptionList ========================= var triggerSelect = function triggerSelect(val, selected, type) { var getSelectEnt = function getSelectEnt() { var _option$key2; var option = getMixedOption(val); return [labelInValue ? { label: option === null || option === void 0 ? void 0 : option[mergedFieldNames.label], value: val, key: (_option$key2 = option === null || option === void 0 ? void 0 : option.key) !== null && _option$key2 !== void 0 ? _option$key2 : val } : val, injectPropsWithOption(option)]; }; if (selected && onSelect) { var _getSelectEnt = getSelectEnt(), _getSelectEnt2 = (0,slicedToArray/* default */.Z)(_getSelectEnt, 2), wrappedValue = _getSelectEnt2[0], _option = _getSelectEnt2[1]; onSelect(wrappedValue, _option); } else if (!selected && onDeselect && type !== 'clear') { var _getSelectEnt3 = getSelectEnt(), _getSelectEnt4 = (0,slicedToArray/* default */.Z)(_getSelectEnt3, 2), _wrappedValue = _getSelectEnt4[0], _option2 = _getSelectEnt4[1]; onDeselect(_wrappedValue, _option2); } }; // Used for OptionList selection var onInternalSelect = useRefFunc(function (val, info) { var cloneValues; // Single mode always trigger select only with option list var mergedSelect = multiple ? info.selected : true; if (mergedSelect) { cloneValues = multiple ? [].concat((0,toConsumableArray/* default */.Z)(mergedValues), [val]) : [val]; } else { cloneValues = mergedValues.filter(function (v) { return v.value !== val; }); } triggerChange(cloneValues); triggerSelect(val, mergedSelect); // Clean search value if single or configured if (mode === 'combobox') { // setSearchValue(String(val)); setActiveValue(''); } else if (!BaseSelect_isMultiple || autoClearSearchValue) { setSearchValue(''); setActiveValue(''); } }); // ======================= Display Change ======================= // BaseSelect display values change var onDisplayValuesChange = function onDisplayValuesChange(nextValues, info) { triggerChange(nextValues); var type = info.type, values = info.values; if (type === 'remove' || type === 'clear') { values.forEach(function (item) { triggerSelect(item.value, false, type); }); } }; // =========================== Search =========================== var onInternalSearch = function onInternalSearch(searchText, info) { setSearchValue(searchText); setActiveValue(null); // [Submit] Tag mode should flush input if (info.source === 'submit') { var formatted = (searchText || '').trim(); // prevent empty tags from appearing when you click the Enter button if (formatted) { var newRawValues = Array.from(new Set([].concat((0,toConsumableArray/* default */.Z)(rawValues), [formatted]))); triggerChange(newRawValues); triggerSelect(formatted, true); setSearchValue(''); } return; } if (info.source !== 'blur') { if (mode === 'combobox') { triggerChange(searchText); } onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchText); } }; var onInternalSearchSplit = function onInternalSearchSplit(words) { var patchValues = words; if (mode !== 'tags') { patchValues = words.map(function (word) { var opt = labelOptions.get(word); return opt === null || opt === void 0 ? void 0 : opt.value; }).filter(function (val) { return val !== undefined; }); } var newRawValues = Array.from(new Set([].concat((0,toConsumableArray/* default */.Z)(rawValues), (0,toConsumableArray/* default */.Z)(patchValues)))); triggerChange(newRawValues); newRawValues.forEach(function (newRawValue) { triggerSelect(newRawValue, true); }); }; // ========================== Context =========================== var selectContext = react.useMemo(function () { var realVirtual = virtual !== false && dropdownMatchSelectWidth !== false; return (0,objectSpread2/* default */.Z)((0,objectSpread2/* default */.Z)({}, parsedOptions), {}, { flattenOptions: displayOptions, onActiveValue: onActiveValue, defaultActiveFirstOption: mergedDefaultActiveFirstOption, onSelect: onInternalSelect, menuItemSelectedIcon: menuItemSelectedIcon, rawValues: rawValues, fieldNames: mergedFieldNames, virtual: realVirtual, direction: direction, listHeight: listHeight, listItemHeight: listItemHeight, childrenAsData: childrenAsData }); }, [parsedOptions, displayOptions, onActiveValue, mergedDefaultActiveFirstOption, onInternalSelect, menuItemSelectedIcon, rawValues, mergedFieldNames, virtual, dropdownMatchSelectWidth, listHeight, listItemHeight, childrenAsData]); // ========================== Warning =========================== if (false) {} // ============================================================== // == Render == // ============================================================== return /*#__PURE__*/react.createElement(es_SelectContext.Provider, { value: selectContext }, /*#__PURE__*/react.createElement(es_BaseSelect, (0,esm_extends/* default */.Z)({}, restProps, { // >>> MISC id: mergedId, prefixCls: prefixCls, ref: ref, omitDomProps: OMIT_DOM_PROPS, mode: mode // >>> Values , displayValues: displayValues, onDisplayValuesChange: onDisplayValuesChange // >>> Trigger , direction: direction // >>> Search , searchValue: mergedSearchValue, onSearch: onInternalSearch, autoClearSearchValue: autoClearSearchValue, onSearchSplit: onInternalSearchSplit, dropdownMatchSelectWidth: dropdownMatchSelectWidth // >>> OptionList , OptionList: es_OptionList, emptyOptions: !displayOptions.length // >>> Accessibility , activeValue: activeValue, activeDescendantId: "".concat(mergedId, "_list_").concat(accessibilityIndex) }))); }); if (false) {} var TypedSelect = Select; TypedSelect.Option = es_Option; TypedSelect.OptGroup = es_OptGroup; /* harmony default export */ var es_Select = (TypedSelect); ;// CONCATENATED MODULE: ./node_modules/antd/node_modules/rc-select/es/index.js /* harmony default export */ var rc_select_es = (es_Select); // EXTERNAL MODULE: ./node_modules/antd/node_modules/rc-util/es/omit.js var es_omit = __webpack_require__(10366); // EXTERNAL MODULE: ./node_modules/antd/es/_util/PurePanel.js var PurePanel = __webpack_require__(8745); // EXTERNAL MODULE: ./node_modules/antd/es/_util/motion.js var motion = __webpack_require__(33603); // EXTERNAL MODULE: ./node_modules/antd/es/_util/statusUtils.js var statusUtils = __webpack_require__(9708); // EXTERNAL MODULE: ./node_modules/antd/es/config-provider/context.js var context = __webpack_require__(53124); // EXTERNAL MODULE: ./node_modules/antd/es/config-provider/DisabledContext.js var DisabledContext = __webpack_require__(98866); // EXTERNAL MODULE: ./node_modules/antd/es/config-provider/defaultRenderEmpty.js var defaultRenderEmpty = __webpack_require__(88258); // EXTERNAL MODULE: ./node_modules/antd/es/config-provider/hooks/useSize.js var useSize = __webpack_require__(98675); // EXTERNAL MODULE: ./node_modules/antd/es/form/context.js var form_context = __webpack_require__(65223); // EXTERNAL MODULE: ./node_modules/antd/es/space/Compact.js var Compact = __webpack_require__(4173); // EXTERNAL MODULE: ./node_modules/antd/es/select/style/index.js + 3 modules var select_style = __webpack_require__(87244); // EXTERNAL MODULE: ./node_modules/antd/es/select/useBuiltinPlacements.js var useBuiltinPlacements = __webpack_require__(13458); // EXTERNAL MODULE: ./node_modules/antd/es/select/useShowArrow.js var useShowArrow = __webpack_require__(78642); // EXTERNAL MODULE: ./node_modules/antd/es/select/utils/iconUtil.js var iconUtil = __webpack_require__(46163); ;// CONCATENATED MODULE: ./node_modules/antd/es/select/index.js 'use client'; var __rest = undefined && undefined.__rest || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; // TODO: 4.0 - codemod should help to change `filterOption` to support node props. const SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE'; const InternalSelect = (_a, ref) => { var _b; var { prefixCls: customizePrefixCls, bordered = true, className, rootClassName, getPopupContainer, popupClassName, dropdownClassName, listHeight = 256, placement, listItemHeight = 24, size: customizeSize, disabled: customDisabled, notFoundContent, status: customStatus, showArrow, builtinPlacements, dropdownMatchSelectWidth, popupMatchSelectWidth, direction: propDirection, style } = _a, props = __rest(_a, ["prefixCls", "bordered", "className", "rootClassName", "getPopupContainer", "popupClassName", "dropdownClassName", "listHeight", "placement", "listItemHeight", "size", "disabled", "notFoundContent", "status", "showArrow", "builtinPlacements", "dropdownMatchSelectWidth", "popupMatchSelectWidth", "direction", "style"]); const { getPopupContainer: getContextPopupContainer, getPrefixCls, renderEmpty, direction: contextDirection, virtual, popupMatchSelectWidth: contextPopupMatchSelectWidth, popupOverflow, select } = react.useContext(context/* ConfigContext */.E_); const prefixCls = getPrefixCls('select', customizePrefixCls); const rootPrefixCls = getPrefixCls(); const direction = propDirection !== null && propDirection !== void 0 ? propDirection : contextDirection; const { compactSize, compactItemClassnames } = (0,Compact/* useCompactItemContext */.ri)(prefixCls, direction); const [wrapSSR, hashId] = (0,select_style/* default */.Z)(prefixCls); const mode = react.useMemo(() => { const { mode: m } = props; if (m === 'combobox') { return undefined; } if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) { return 'combobox'; } return m; }, [props.mode]); const isMultiple = mode === 'multiple' || mode === 'tags'; const mergedShowArrow = (0,useShowArrow/* default */.Z)(showArrow); const mergedPopupMatchSelectWidth = (_b = popupMatchSelectWidth !== null && popupMatchSelectWidth !== void 0 ? popupMatchSelectWidth : dropdownMatchSelectWidth) !== null && _b !== void 0 ? _b : contextPopupMatchSelectWidth; // ===================== Form Status ===================== const { status: contextStatus, hasFeedback, isFormItemInput, feedbackIcon } = react.useContext(form_context/* FormItemInputContext */.aM); const mergedStatus = (0,statusUtils/* getMergedStatus */.F)(contextStatus, customStatus); // ===================== Empty ===================== let mergedNotFound; if (notFoundContent !== undefined) { mergedNotFound = notFoundContent; } else if (mode === 'combobox') { mergedNotFound = null; } else { mergedNotFound = (renderEmpty === null || renderEmpty === void 0 ? void 0 : renderEmpty('Select')) || /*#__PURE__*/react.createElement(defaultRenderEmpty/* default */.Z, { componentName: "Select" }); } // ===================== Icons ===================== const { suffixIcon, itemIcon, removeIcon, clearIcon } = (0,iconUtil/* default */.Z)(Object.assign(Object.assign({}, props), { multiple: isMultiple, hasFeedback, feedbackIcon, showArrow: mergedShowArrow, prefixCls })); const selectProps = (0,es_omit/* default */.Z)(props, ['suffixIcon', 'itemIcon']); const rcSelectRtlDropdownClassName = classnames_default()(popupClassName || dropdownClassName, { [`${prefixCls}-dropdown-${direction}`]: direction === 'rtl' }, rootClassName, hashId); const mergedSize = (0,useSize/* default */.Z)(ctx => { var _a; return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx; }); // ===================== Disabled ===================== const disabled = react.useContext(DisabledContext/* default */.Z); const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled; const mergedClassName = classnames_default()({ [`${prefixCls}-lg`]: mergedSize === 'large', [`${prefixCls}-sm`]: mergedSize === 'small', [`${prefixCls}-rtl`]: direction === 'rtl', [`${prefixCls}-borderless`]: !bordered, [`${prefixCls}-in-form-item`]: isFormItemInput }, (0,statusUtils/* getStatusClassNames */.Z)(prefixCls, mergedStatus, hasFeedback), compactItemClassnames, select === null || select === void 0 ? void 0 : select.className, className, rootClassName, hashId); // ===================== Placement ===================== const memoPlacement = react.useMemo(() => { if (placement !== undefined) { return placement; } return direction === 'rtl' ? 'bottomRight' : 'bottomLeft'; }, [placement, direction]); const mergedBuiltinPlacements = (0,useBuiltinPlacements/* default */.Z)(builtinPlacements, popupOverflow); // ====================== Warning ====================== if (false) {} // ====================== Render ======================= return wrapSSR( /*#__PURE__*/react.createElement(rc_select_es, Object.assign({ ref: ref, virtual: virtual, showSearch: select === null || select === void 0 ? void 0 : select.showSearch }, selectProps, { style: Object.assign(Object.assign({}, select === null || select === void 0 ? void 0 : select.style), style), dropdownMatchSelectWidth: mergedPopupMatchSelectWidth, builtinPlacements: mergedBuiltinPlacements, transitionName: (0,motion/* getTransitionName */.mL)(rootPrefixCls, (0,motion/* getTransitionDirection */.q0)(placement), props.transitionName), listHeight: listHeight, listItemHeight: listItemHeight, mode: mode, prefixCls: prefixCls, placement: memoPlacement, direction: direction, inputIcon: suffixIcon, menuItemSelectedIcon: itemIcon, removeIcon: removeIcon, clearIcon: clearIcon, notFoundContent: mergedNotFound, className: mergedClassName, getPopupContainer: getPopupContainer || getContextPopupContainer, dropdownClassName: rcSelectRtlDropdownClassName, showArrow: hasFeedback || mergedShowArrow, disabled: mergedDisabled }))); }; if (false) {} const select_Select = /*#__PURE__*/react.forwardRef(InternalSelect); // We don't care debug panel /* istanbul ignore next */ const select_PurePanel = (0,PurePanel/* default */.Z)(select_Select); select_Select.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE; select_Select.Option = es_Option; select_Select.OptGroup = es_OptGroup; select_Select._InternalPanelDoNotUseOrYouWillBeFired = select_PurePanel; if (false) {} /* harmony default export */ var es_select = (select_Select); /***/ }) }]);