rsuite 5.4.3 → 5.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/CheckTreePicker/styles/index.less +1 -1
- package/Dropdown/styles/index.less +2 -19
- package/README.md +1 -1
- package/cjs/Calendar/useCalendarDate.d.ts +1 -1
- package/cjs/Calendar/useCalendarDate.js +1 -1
- package/cjs/Carousel/Carousel.js +7 -1
- package/cjs/Cascader/Cascader.js +13 -2
- package/cjs/CheckTreePicker/CheckTreePicker.js +1 -1
- package/cjs/CheckTreePicker/utils.js +1 -1
- package/cjs/CustomProvider/CustomProvider.d.ts +14 -14
- package/cjs/CustomProvider/CustomProvider.js +4 -3
- package/cjs/DatePicker/DatePicker.d.ts +1 -1
- package/cjs/DatePicker/DatePicker.js +2 -4
- package/cjs/Dropdown/DropdownMenu.js +5 -11
- package/cjs/Modal/utils.js +16 -8
- package/cjs/MultiCascader/MultiCascader.js +6 -3
- package/cjs/Nav/NavItem.js +3 -1
- package/cjs/Picker/DropdownMenu.js +5 -0
- package/cjs/Picker/PickerToggle.js +2 -4
- package/cjs/Uploader/UploadFileItem.d.ts +1 -1
- package/cjs/Uploader/UploadFileItem.js +1 -1
- package/cjs/Uploader/Uploader.js +3 -0
- package/cjs/utils/propTypeChecker.d.ts +2 -6
- package/cjs/utils/propTypeChecker.js +7 -59
- package/cjs/utils/useClickOutside.js +6 -2
- package/dist/rsuite-rtl.css +4 -7
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +4 -7
- package/dist/rsuite.js +18 -18
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/Calendar/useCalendarDate.d.ts +1 -1
- package/esm/Calendar/useCalendarDate.js +1 -1
- package/esm/Carousel/Carousel.js +9 -3
- package/esm/Cascader/Cascader.js +13 -2
- package/esm/CheckTreePicker/CheckTreePicker.js +1 -1
- package/esm/CheckTreePicker/utils.js +1 -1
- package/esm/CustomProvider/CustomProvider.d.ts +14 -14
- package/esm/CustomProvider/CustomProvider.js +2 -2
- package/esm/DatePicker/DatePicker.d.ts +1 -1
- package/esm/DatePicker/DatePicker.js +2 -3
- package/esm/Dropdown/DropdownMenu.js +5 -11
- package/esm/Modal/utils.js +16 -8
- package/esm/MultiCascader/MultiCascader.js +6 -3
- package/esm/Nav/NavItem.js +3 -1
- package/esm/Picker/DropdownMenu.js +5 -0
- package/esm/Picker/PickerToggle.js +2 -4
- package/esm/Uploader/UploadFileItem.d.ts +1 -1
- package/esm/Uploader/UploadFileItem.js +1 -1
- package/esm/Uploader/Uploader.js +4 -1
- package/esm/utils/propTypeChecker.d.ts +2 -6
- package/esm/utils/propTypeChecker.js +7 -59
- package/esm/utils/useClickOutside.js +6 -2
- package/package.json +2 -2
package/dist/rsuite.js
CHANGED
|
@@ -1946,7 +1946,7 @@ eval("\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/h
|
|
|
1946
1946
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1947
1947
|
|
|
1948
1948
|
"use strict";
|
|
1949
|
-
eval("\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _react = __webpack_require__(/*! react */ \"react\");\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar useCalendarDate = function useCalendarDate(value, defaultDate) {\n var _ref;\n\n var valueRef = (0, _react.useRef)(value);\n\n var _useState = (0, _react.useState)((_ref = value !== null && value !== void 0 ? value : defaultDate) !== null && _ref !== void 0 ? _ref : new Date()),\n calendarDate = _useState[0],\n setValue = _useState[1];\n\n var setCalendarDate = (0, _react.useCallback)(function (date) {\n if (date && (date === null || date === void 0 ? void 0 : date.valueOf()) !== (calendarDate === null || calendarDate === void 0 ? void 0 : calendarDate.valueOf())) {\n setValue(date);\n }\n }, [calendarDate]);\n (0, _utils.useUpdateEffect)(function () {\n var _valueRef$current;\n\n if ((value === null || value === void 0 ? void 0 : value.valueOf()) !== ((_valueRef$current = valueRef.current) === null || _valueRef$current === void 0 ? void 0 : _valueRef$current.valueOf())) {\n setCalendarDate(value);\n valueRef.current = value;\n }\n }, [value]);\n return {\n calendarDate: calendarDate,\n setCalendarDate: setCalendarDate\n };\n};\n\nvar _default = useCalendarDate;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Calendar/useCalendarDate.ts?");
|
|
1949
|
+
eval("\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _react = __webpack_require__(/*! react */ \"react\");\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar useCalendarDate = function useCalendarDate(value, defaultDate) {\n var _ref;\n\n var valueRef = (0, _react.useRef)(value);\n\n var _useState = (0, _react.useState)((_ref = value !== null && value !== void 0 ? value : defaultDate) !== null && _ref !== void 0 ? _ref : new Date()),\n calendarDate = _useState[0],\n setValue = _useState[1];\n\n var setCalendarDate = (0, _react.useCallback)(function (date) {\n if (date && (date === null || date === void 0 ? void 0 : date.valueOf()) !== (calendarDate === null || calendarDate === void 0 ? void 0 : calendarDate.valueOf())) {\n setValue(date);\n }\n }, [calendarDate]);\n (0, _utils.useUpdateEffect)(function () {\n var _valueRef$current;\n\n if ((value === null || value === void 0 ? void 0 : value.valueOf()) !== ((_valueRef$current = valueRef.current) === null || _valueRef$current === void 0 ? void 0 : _valueRef$current.valueOf())) {\n setCalendarDate(value !== null && value !== void 0 ? value : new Date());\n valueRef.current = value;\n }\n }, [value]);\n return {\n calendarDate: calendarDate,\n setCalendarDate: setCalendarDate\n };\n};\n\nvar _default = useCalendarDate;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Calendar/useCalendarDate.ts?");
|
|
1950
1950
|
|
|
1951
1951
|
/***/ }),
|
|
1952
1952
|
|
|
@@ -1957,7 +1957,7 @@ eval("\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _react =
|
|
|
1957
1957
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1958
1958
|
|
|
1959
1959
|
"use strict";
|
|
1960
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends4 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Carousel/Carousel.tsx\",\n _this = void 0;\n\nvar Carousel = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _sliderStyles, _ref;\n\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n children = props.children,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'carousel' : _props$classPrefix,\n className = props.className,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottom' : _props$placement,\n _props$shape = props.shape,\n shape = _props$shape === void 0 ? 'dot' : _props$shape,\n autoplay = props.autoplay,\n _props$autoplayInterv = props.autoplayInterval,\n autoplayInterval = _props$autoplayInterv === void 0 ? 4000 : _props$autoplayInterv,\n onSelect = props.onSelect,\n onSlideStart = props.onSlideStart,\n onSlideEnd = props.onSlideEnd,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"children\", \"classPrefix\", \"className\", \"placement\", \"shape\", \"autoplay\", \"autoplayInterval\", \"onSelect\", \"onSlideStart\", \"onSlideEnd\"]);\n\n var _useCustom = (0, _utils.useCustom)('Carousel'),\n rtl = _useCustom.rtl;\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix;\n\n var count = _utils.ReactChildren.count(children);\n\n var labels = [];\n var vertical = placement === 'left' || placement === 'right';\n var lengthKey = vertical ? 'height' : 'width';\n\n var _useState = (0, _react.useState)(0),\n activeIndex = _useState[0],\n setActiveIndex = _useState[1];\n\n var _useState2 = (0, _react.useState)(0),\n lastIndex = _useState2[0],\n setLastIndex = _useState2[1];\n\n var handleSlide = function handleSlide(nextActiveIndex, event) {\n clear();\n var index = nextActiveIndex !== null && nextActiveIndex !== void 0 ? nextActiveIndex : activeIndex + 1; // When index is greater than count, start from 1 again.\n\n var nextIndex = index % count;\n setActiveIndex(nextIndex);\n onSlideStart === null || onSlideStart === void 0 ? void 0 : onSlideStart(nextIndex, event);\n setLastIndex(nextActiveIndex == null ? activeIndex : nextIndex);\n reset();\n };\n\n var handleChange = function handleChange(event) {\n var activeIndex = +event.target.value;\n handleSlide(activeIndex, event);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(activeIndex, event);\n };\n\n var handleTransitionEnd = (0, _react.useCallback)(function (event) {\n onSlideEnd === null || onSlideEnd === void 0 ? void 0 : onSlideEnd(activeIndex, event);\n }, [activeIndex, onSlideEnd]); // Set a timer for automatic playback.\n // `autoplay` needs to be cast to boolean type to avoid undefined parameters.\n\n var _useTimeout = (0, _utils.useTimeout)(handleSlide, autoplayInterval, !!autoplay && count > 1),\n clear = _useTimeout.clear,\n reset = _useTimeout.reset;\n\n var uniqueId = (0, _react.useMemo)(function () {\n return (0, _utils.guid)();\n }, []);\n\n var items = _react.default.Children.map(children, function (child, index) {\n var _extends2;\n\n if (!child) {\n return;\n }\n\n var inputKey = \"indicator_\" + uniqueId + \"_\" + index;\n labels.push( /*#__PURE__*/_react.default.createElement(\"li\", {\n key: \"label\" + index,\n className: prefix('label-wrapper'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber:
|
|
1960
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends4 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Carousel/Carousel.tsx\",\n _this = void 0;\n\nvar Carousel = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _sliderStyles, _ref;\n\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n children = props.children,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'carousel' : _props$classPrefix,\n className = props.className,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottom' : _props$placement,\n _props$shape = props.shape,\n shape = _props$shape === void 0 ? 'dot' : _props$shape,\n autoplay = props.autoplay,\n _props$autoplayInterv = props.autoplayInterval,\n autoplayInterval = _props$autoplayInterv === void 0 ? 4000 : _props$autoplayInterv,\n onSelect = props.onSelect,\n onSlideStart = props.onSlideStart,\n onSlideEnd = props.onSlideEnd,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"children\", \"classPrefix\", \"className\", \"placement\", \"shape\", \"autoplay\", \"autoplayInterval\", \"onSelect\", \"onSlideStart\", \"onSlideEnd\"]);\n\n var _useCustom = (0, _utils.useCustom)('Carousel'),\n rtl = _useCustom.rtl;\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix;\n\n var count = _utils.ReactChildren.count(children);\n\n var labels = [];\n var vertical = placement === 'left' || placement === 'right';\n var lengthKey = vertical ? 'height' : 'width';\n\n var _useState = (0, _react.useState)(0),\n activeIndex = _useState[0],\n setActiveIndex = _useState[1];\n\n var _useState2 = (0, _react.useState)(0),\n lastIndex = _useState2[0],\n setLastIndex = _useState2[1];\n\n var rootRef = (0, _react.useRef)(null);\n\n var handleSlide = function handleSlide(nextActiveIndex, event) {\n if (!rootRef.current) {\n return;\n }\n\n clear();\n var index = nextActiveIndex !== null && nextActiveIndex !== void 0 ? nextActiveIndex : activeIndex + 1; // When index is greater than count, start from 1 again.\n\n var nextIndex = index % count;\n setActiveIndex(nextIndex);\n onSlideStart === null || onSlideStart === void 0 ? void 0 : onSlideStart(nextIndex, event);\n setLastIndex(nextActiveIndex == null ? activeIndex : nextIndex);\n reset();\n };\n\n var handleChange = function handleChange(event) {\n var activeIndex = +event.target.value;\n handleSlide(activeIndex, event);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(activeIndex, event);\n };\n\n var handleTransitionEnd = (0, _react.useCallback)(function (event) {\n onSlideEnd === null || onSlideEnd === void 0 ? void 0 : onSlideEnd(activeIndex, event);\n }, [activeIndex, onSlideEnd]); // Set a timer for automatic playback.\n // `autoplay` needs to be cast to boolean type to avoid undefined parameters.\n\n var _useTimeout = (0, _utils.useTimeout)(handleSlide, autoplayInterval, !!autoplay && count > 1),\n clear = _useTimeout.clear,\n reset = _useTimeout.reset;\n\n var uniqueId = (0, _react.useMemo)(function () {\n return (0, _utils.guid)();\n }, []);\n\n var items = _react.default.Children.map(children, function (child, index) {\n var _extends2;\n\n if (!child) {\n return;\n }\n\n var inputKey = \"indicator_\" + uniqueId + \"_\" + index;\n labels.push( /*#__PURE__*/_react.default.createElement(\"li\", {\n key: \"label\" + index,\n className: prefix('label-wrapper'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 101,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(\"input\", {\n name: inputKey,\n id: inputKey,\n type: \"radio\",\n onChange: handleChange,\n value: index,\n checked: activeIndex === index,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 102,\n columnNumber: 13\n }\n }), /*#__PURE__*/_react.default.createElement(\"label\", {\n htmlFor: inputKey,\n className: prefix('label'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 110,\n columnNumber: 13\n }\n })));\n return /*#__PURE__*/_react.default.cloneElement(child, {\n key: \"slider-item\" + index,\n 'aria-hidden': activeIndex !== index,\n style: (0, _extends4.default)({}, child.props.style, (_extends2 = {}, _extends2[lengthKey] = 100 / count + \"%\", _extends2)),\n className: (0, _classnames.default)(prefix('slider-item'), child.props.className)\n });\n });\n\n var classes = merge(className, withClassPrefix(\"placement-\" + placement, \"shape-\" + shape));\n var positiveOrder = vertical || !rtl;\n var sign = positiveOrder ? '-' : '';\n var activeRatio = \"\" + sign + 100 / count * activeIndex + \"%\";\n var sliderStyles = (_sliderStyles = {}, _sliderStyles[lengthKey] = count * 100 + \"%\", _sliderStyles.transform = vertical ? \"translate3d(0, \" + activeRatio + \" ,0)\" : \"translate3d(\" + activeRatio + \", 0 ,0)\", _sliderStyles);\n var showMask = count > 1 && activeIndex === 0 && activeIndex !== lastIndex;\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends4.default)({}, rest, {\n ref: (0, _utils.mergeRefs)(ref, rootRef),\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 137,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('content'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 138,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('slider'),\n style: sliderStyles,\n onTransitionEnd: handleTransitionEnd,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 139,\n columnNumber: 11\n }\n }, items), showMask && /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('slider-after', {\n 'slider-after-vertical': vertical\n }),\n style: (_ref = {}, _ref[lengthKey] = '200%', _ref),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 147,\n columnNumber: 13\n }\n }, [items[items.length - 1], items[0]].map(function (node) {\n var _extends3;\n\n return /*#__PURE__*/_react.default.cloneElement(node, {\n key: node.key,\n style: (0, _extends4.default)({}, node.props.style, (_extends3 = {}, _extends3[lengthKey] = '50%', _extends3))\n });\n }))), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('toolbar'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 160,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"ul\", {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 161,\n columnNumber: 11\n }\n }, labels)));\n});\n\nCarousel.displayName = 'Carousel';\nCarousel.propTypes = {\n as: _propTypes.default.elementType,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n autoplay: _propTypes.default.bool,\n autoplayInterval: _propTypes.default.number,\n placement: _propTypes.default.oneOf(['top', 'bottom', 'left', 'right']),\n shape: _propTypes.default.oneOf(['dot', 'bar']),\n onSelect: _propTypes.default.func,\n onSlideStart: _propTypes.default.func,\n onSlideEnd: _propTypes.default.func\n};\nvar _default = Carousel;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Carousel/Carousel.tsx?");
|
|
1961
1961
|
|
|
1962
1962
|
/***/ }),
|
|
1963
1963
|
|
|
@@ -1979,7 +1979,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
1979
1979
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1980
1980
|
|
|
1981
1981
|
"use strict";
|
|
1982
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\n\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\n\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/Cascader/DropdownMenu.tsx\"));\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/Cascader/utils.ts\");\n\nvar _utils2 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Cascader/Cascader.tsx\",\n _this = void 0;\n\nvar emptyArray = [];\n\nvar Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n defaultValue = props.defaultValue,\n placeholder = props.placeholder,\n disabled = props.disabled,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n valueProp = props.value,\n inline = props.inline,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n menuWidth = props.menuWidth,\n menuHeight = props.menuHeight,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n parentSelectable = props.parentSelectable,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n id = props.id,\n renderMenuItem = props.renderMenuItem,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderExtraFooter = props.renderExtraFooter,\n onEnter = props.onEnter,\n onExited = props.onExited,\n onClean = props.onClean,\n onChange = props.onChange,\n onSelect = props.onSelect,\n onSearch = props.onSearch,\n onClose = props.onClose,\n onOpen = props.onOpen,\n getChildren = props.getChildren,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"classPrefix\", \"childrenKey\", \"valueKey\", \"labelKey\", \"defaultValue\", \"placeholder\", \"disabled\", \"disabledItemValues\", \"appearance\", \"cleanable\", \"locale\", \"toggleAs\", \"style\", \"value\", \"inline\", \"menuClassName\", \"menuStyle\", \"menuWidth\", \"menuHeight\", \"searchable\", \"parentSelectable\", \"placement\", \"id\", \"renderMenuItem\", \"renderValue\", \"renderMenu\", \"renderExtraFooter\", \"onEnter\", \"onExited\", \"onClean\", \"onChange\", \"onSelect\", \"onSearch\", \"onClose\", \"onOpen\", \"getChildren\"]); // Use component active state to support keyboard events.\n\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n\n var _useState2 = (0, _react.useState)((0, _treeUtils.flattenTree)(data, childrenKey)),\n flattenData = _useState2[0],\n setFlattenData = _useState2[1];\n\n var triggerRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n\n var _useControlled = (0, _utils2.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n\n var _usePaths = (0, _utils.usePaths)({\n data: data,\n valueKey: valueKey,\n childrenKey: childrenKey,\n value: value\n }),\n selectedPaths = _usePaths.selectedPaths,\n valueToPaths = _usePaths.valueToPaths,\n columnData = _usePaths.columnData,\n addColumn = _usePaths.addColumn,\n setValueToPaths = _usePaths.setValueToPaths,\n setColumnData = _usePaths.setColumnData,\n setSelectedPaths = _usePaths.setSelectedPaths,\n enforceUpdate = _usePaths.enforceUpdate;\n\n (0, _react.useEffect)(function () {\n setFlattenData((0, _treeUtils.flattenTree)(data, childrenKey));\n }, [data, childrenKey]);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n\n var _useCustom = (0, _utils2.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\n /**\n * 1.Have a value and the value is valid.\n * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.\n */\n\n\n var hasValue = valueToPaths.length > 0 || !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue);\n\n var _useClassNames = (0, _utils2.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n\n var someKeyword = (0, _react.useCallback)(function (item, keyword) {\n if (item[labelKey].match(new RegExp((0, _utils2.getSafeRegExpString)(keyword || searchKeyword), 'i'))) {\n return true;\n }\n\n if (item.parent && someKeyword(item.parent)) {\n return true;\n }\n\n return false;\n }, [labelKey, searchKeyword]);\n var getSearchResult = (0, _react.useCallback)(function (keyword) {\n var items = [];\n var result = flattenData.filter(function (item) {\n if (item[childrenKey]) {\n return false;\n }\n\n return someKeyword(item, keyword);\n });\n\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]); // A maximum of 100 search results are returned.\n\n if (i === 99) {\n return items;\n }\n }\n\n return items;\n }, [childrenKey, flattenData, someKeyword]); // Used to hover the focuse item when trigger `onKeydown`\n\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {\n rtl: rtl,\n data: flattenData,\n valueKey: valueKey,\n defaultLayer: valueToPaths !== null && valueToPaths !== void 0 && valueToPaths.length ? valueToPaths.length - 1 : 0,\n target: function target() {\n return overlayRef.current;\n },\n callback: (0, _react.useCallback)(function (value) {\n enforceUpdate(value, true);\n }, [enforceUpdate])\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n setLayer = _useFocusItemValue.setLayer,\n setKeys = _useFocusItemValue.setKeys,\n onFocusItem = _useFocusItemValue.onKeyDown;\n\n var handleSearch = (0, _react.useCallback)(function (value, event) {\n var items = getSearchResult(value);\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n\n if (items.length > 0) {\n setFocusItemValue(items[0][valueKey]);\n setLayer(0);\n setKeys([]);\n }\n }, [getSearchResult, onSearch, setFocusItemValue, setKeys, setLayer, valueKey]);\n var handleEntered = (0, _react.useCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n setActive(false);\n setSearchKeyword('');\n }, [onClose]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current;\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.close();\n }, [triggerRef]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n setColumnData([data]);\n setValue(null);\n setSelectedPaths([]);\n setValueToPaths([]);\n onChange === null || onChange === void 0 ? void 0 : onChange(null, event);\n }, [data, disabled, onChange, setSelectedPaths, setColumnData, setValueToPaths, setValue]);\n var handleMenuPressEnter = (0, _react.useCallback)(function (event) {\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var isLeafNode = focusItem && !focusItem[childrenKey];\n\n if (isLeafNode) {\n setValue(focusItemValue);\n setValueToPaths(selectedPaths);\n\n if (selectedPaths.length) {\n setLayer(selectedPaths.length - 1);\n }\n\n if (!(0, _shallowEqual.default)(value, focusItemValue)) {\n onChange === null || onChange === void 0 ? void 0 : onChange(focusItemValue !== null && focusItemValue !== void 0 ? focusItemValue : null, event);\n }\n\n handleClose();\n }\n }, [childrenKey, data, focusItemValue, handleClose, onChange, selectedPaths, setLayer, setValue, setValueToPaths, value, valueKey]);\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter\n }, rest));\n\n var handleSelect = function handleSelect(node, cascadePaths, isLeafNode, event) {\n var _node$childrenKey, _node$childrenKey2, _triggerRef$current2;\n\n var nextValue = node[valueKey];\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);\n setSelectedPaths(cascadePaths); // Lazy load node's children\n\n if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0) {\n node.loading = true;\n var children = getChildren(node);\n\n if (children instanceof Promise) {\n children.then(function (data) {\n node.loading = false;\n node[childrenKey] = data;\n addColumn(data, cascadePaths.length);\n });\n } else {\n node.loading = false;\n node[childrenKey] = children;\n addColumn(children, cascadePaths.length);\n }\n } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {\n addColumn(node[childrenKey], cascadePaths.length);\n }\n\n if (isLeafNode) {\n // Determines whether the option is a leaf node, and if so, closes the picker.\n handleClose(); // Update the selected path to the value path.\n // That is, the selected path will be displayed on the button after clicking the child node.\n\n setValueToPaths(cascadePaths);\n setValue(nextValue);\n\n if (!(0, _shallowEqual.default)(value, nextValue)) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n\n return;\n }\n /** When the parent is optional, the value and the displayed path are updated. */\n\n\n if (parentSelectable && !(0, _shallowEqual.default)(value, nextValue)) {\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n setValueToPaths(cascadePaths);\n } // Update menu position\n\n\n (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.updatePosition();\n };\n /**\n * The search structure option is processed after being selected.\n */\n\n\n var handleSearchRowSelect = function handleSearchRowSelect(node, nodes, event) {\n var nextValue = node[valueKey];\n handleClose();\n setSearchKeyword('');\n setValue(nextValue);\n setValueToPaths(nodes);\n enforceUpdate(nextValue);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, nodes, event);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n };\n\n var renderSearchRow = function renderSearchRow(item, key) {\n var regx = new RegExp((0, _utils2.getSafeRegExpString)(searchKeyword), 'ig');\n var nodes = (0, _treeUtils.getNodeParents)(item);\n nodes.push(item);\n var formattedNodes = nodes.map(function (node) {\n var _extends2;\n\n var labelElements = [];\n var a = node[labelKey].split(regx);\n var b = node[labelKey].match(regx);\n\n for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\n\n if (b && b[i]) {\n labelElements.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: i,\n className: prefix('cascader-search-match'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 423,\n columnNumber: 13\n }\n }, b[i]));\n }\n }\n\n return (0, _extends3.default)({}, node, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2));\n });\n var disabled = disabledItemValues.some(function (value) {\n return formattedNodes.some(function (node) {\n return node[valueKey] === value;\n });\n });\n var itemClasses = prefix('cascader-row', {\n 'cascader-row-disabled': disabled,\n 'cascader-row-focus': item[valueKey] === focusItemValue\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: key,\n \"aria-disabled\": disabled,\n \"data-key\": item[valueKey],\n className: itemClasses,\n onClick: function onClick(event) {\n if (!disabled) {\n handleSearchRowSelect(item, nodes, event);\n }\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 441,\n columnNumber: 7\n }\n }, formattedNodes.map(function (node, index) {\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n key: \"col-\" + index,\n className: prefix('cascader-col'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 453,\n columnNumber: 11\n }\n }, node[labelKey]);\n }));\n };\n\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 468,\n columnNumber: 7\n }\n }, items.length ? items.map(renderSearchRow) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 472,\n columnNumber: 11\n }\n }, locale.noResultsText));\n };\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var _ref = positionProps || {},\n left = _ref.left,\n top = _ref.top,\n className = _ref.className;\n\n var styles = (0, _extends3.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var classes = merge(className, menuClassName, prefix('cascader-menu', {\n inline: inline\n }));\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils2.mergeRefs)(overlayRef, speakerRef),\n className: classes,\n style: styles,\n target: triggerRef,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 484,\n columnNumber: 7\n }\n }, searchable && /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeyword,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 492,\n columnNumber: 11\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_DropdownMenu.default, {\n id: id ? id + \"-listbox\" : undefined,\n menuWidth: menuWidth,\n menuHeight: menuHeight,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n classPrefix: 'picker-cascader-menu',\n cascadeData: columnData,\n cascadePaths: selectedPaths,\n activeItemValue: value,\n onSelect: handleSelect,\n renderMenu: renderMenu,\n renderMenuItem: renderMenuItem,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 502,\n columnNumber: 11\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n\n var selectedElement = placeholder;\n\n if (valueToPaths.length > 0) {\n selectedElement = [];\n valueToPaths.forEach(function (item, index) {\n var key = item[valueKey] || item[labelKey];\n selectedElement.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: key,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 531,\n columnNumber: 28\n }\n }, item[labelKey]));\n\n if (index < valueToPaths.length - 1) {\n selectedElement.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n className: \"separator\",\n key: key + \"-separator\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 534,\n columnNumber: 11\n }\n }, ' / '));\n }\n });\n }\n\n if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value, valueToPaths, selectedElement); // If renderValue returns null or undefined, hasValue is false.\n\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends3.default)({}, props, {\n classPrefix: classPrefix,\n hasValue: hasValue,\n name: 'cascader',\n appearance: appearance,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1]; // TODO: bad api design\n // consider an isolated Menu component\n\n\n if (inline) {\n return renderDropdownMenu();\n }\n\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEntered: (0, _utils2.createChainedFunction)(handleEntered, onEnter),\n onExited: (0, _utils2.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 566,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 574,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n ref: targetRef,\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n onClean: (0, _utils2.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value !== null && value !== void 0 ? value : '',\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 575,\n columnNumber: 9\n }\n }), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));\n});\n\nCascader.displayName = 'Cascader';\nCascader.propTypes = (0, _extends3.default)({}, _Picker.listPickerPropTypes, {\n disabledItemValues: _propTypes.default.array,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n renderMenu: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n cleanable: _propTypes.default.bool,\n renderMenuItem: _propTypes.default.func,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n searchable: _propTypes.default.bool,\n inline: _propTypes.default.bool,\n parentSelectable: _propTypes.default.bool\n});\nvar _default = Cascader;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Cascader/Cascader.tsx?");
|
|
1982
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\n\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\n\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/Cascader/DropdownMenu.tsx\"));\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/Cascader/utils.ts\");\n\nvar _utils2 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Cascader/Cascader.tsx\",\n _this = void 0;\n\nvar emptyArray = [];\n\nvar Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n defaultValue = props.defaultValue,\n placeholder = props.placeholder,\n disabled = props.disabled,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n valueProp = props.value,\n inline = props.inline,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n menuWidth = props.menuWidth,\n menuHeight = props.menuHeight,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n parentSelectable = props.parentSelectable,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n id = props.id,\n renderMenuItem = props.renderMenuItem,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderExtraFooter = props.renderExtraFooter,\n onEnter = props.onEnter,\n onExited = props.onExited,\n onClean = props.onClean,\n onChange = props.onChange,\n onSelect = props.onSelect,\n onSearch = props.onSearch,\n onClose = props.onClose,\n onOpen = props.onOpen,\n getChildren = props.getChildren,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"classPrefix\", \"childrenKey\", \"valueKey\", \"labelKey\", \"defaultValue\", \"placeholder\", \"disabled\", \"disabledItemValues\", \"appearance\", \"cleanable\", \"locale\", \"toggleAs\", \"style\", \"value\", \"inline\", \"menuClassName\", \"menuStyle\", \"menuWidth\", \"menuHeight\", \"searchable\", \"parentSelectable\", \"placement\", \"id\", \"renderMenuItem\", \"renderValue\", \"renderMenu\", \"renderExtraFooter\", \"onEnter\", \"onExited\", \"onClean\", \"onChange\", \"onSelect\", \"onSearch\", \"onClose\", \"onOpen\", \"getChildren\"]); // Use component active state to support keyboard events.\n\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n\n var _useState2 = (0, _react.useState)((0, _treeUtils.flattenTree)(data, childrenKey)),\n flattenData = _useState2[0],\n setFlattenData = _useState2[1];\n\n var triggerRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n\n var _useControlled = (0, _utils2.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n\n var _usePaths = (0, _utils.usePaths)({\n data: data,\n valueKey: valueKey,\n childrenKey: childrenKey,\n value: value\n }),\n selectedPaths = _usePaths.selectedPaths,\n valueToPaths = _usePaths.valueToPaths,\n columnData = _usePaths.columnData,\n addColumn = _usePaths.addColumn,\n setValueToPaths = _usePaths.setValueToPaths,\n setColumnData = _usePaths.setColumnData,\n setSelectedPaths = _usePaths.setSelectedPaths,\n enforceUpdate = _usePaths.enforceUpdate;\n\n (0, _react.useEffect)(function () {\n setFlattenData((0, _treeUtils.flattenTree)(data, childrenKey));\n }, [data, childrenKey]);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n\n var _useCustom = (0, _utils2.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\n /**\n * 1.Have a value and the value is valid.\n * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.\n */\n\n\n var hasValue = valueToPaths.length > 0 || !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue);\n\n var _useClassNames = (0, _utils2.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n\n var someKeyword = (0, _react.useCallback)(function (item, keyword) {\n if (item[labelKey].match(new RegExp((0, _utils2.getSafeRegExpString)(keyword || searchKeyword), 'i'))) {\n return true;\n }\n\n if (item.parent && someKeyword(item.parent)) {\n return true;\n }\n\n return false;\n }, [labelKey, searchKeyword]);\n var getSearchResult = (0, _react.useCallback)(function (keyword) {\n var items = [];\n var result = flattenData.filter(function (item) {\n if (item[childrenKey]) {\n return false;\n }\n\n return someKeyword(item, keyword);\n });\n\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]); // A maximum of 100 search results are returned.\n\n if (i === 99) {\n return items;\n }\n }\n\n return items;\n }, [childrenKey, flattenData, someKeyword]); // Used to hover the focuse item when trigger `onKeydown`\n\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {\n rtl: rtl,\n data: flattenData,\n valueKey: valueKey,\n defaultLayer: valueToPaths !== null && valueToPaths !== void 0 && valueToPaths.length ? valueToPaths.length - 1 : 0,\n target: function target() {\n return overlayRef.current;\n },\n callback: (0, _react.useCallback)(function (value) {\n enforceUpdate(value, true);\n }, [enforceUpdate])\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setFocusItemValue = _useFocusItemValue.setFocusItemValue,\n setLayer = _useFocusItemValue.setLayer,\n setKeys = _useFocusItemValue.setKeys,\n onFocusItem = _useFocusItemValue.onKeyDown;\n\n var handleSearch = (0, _react.useCallback)(function (value, event) {\n var items = getSearchResult(value);\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n\n if (items.length > 0) {\n setFocusItemValue(items[0][valueKey]);\n setLayer(0);\n setKeys([]);\n }\n }, [getSearchResult, onSearch, setFocusItemValue, setKeys, setLayer, valueKey]);\n var handleEntered = (0, _react.useCallback)(function () {\n if (!targetRef.current) {\n return;\n }\n\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n if (!targetRef.current) {\n return;\n }\n\n onClose === null || onClose === void 0 ? void 0 : onClose();\n setActive(false);\n setSearchKeyword('');\n }, [onClose]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current;\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.close();\n }, [triggerRef]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled || !targetRef.current) {\n return;\n }\n\n setColumnData([data]);\n setValue(null);\n setSelectedPaths([]);\n setValueToPaths([]);\n onChange === null || onChange === void 0 ? void 0 : onChange(null, event);\n }, [data, disabled, onChange, setSelectedPaths, setColumnData, setValueToPaths, setValue]);\n var handleMenuPressEnter = (0, _react.useCallback)(function (event) {\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var isLeafNode = focusItem && !focusItem[childrenKey];\n\n if (isLeafNode) {\n setValue(focusItemValue);\n setValueToPaths(selectedPaths);\n\n if (selectedPaths.length) {\n setLayer(selectedPaths.length - 1);\n }\n\n if (!(0, _shallowEqual.default)(value, focusItemValue)) {\n onChange === null || onChange === void 0 ? void 0 : onChange(focusItemValue !== null && focusItemValue !== void 0 ? focusItemValue : null, event);\n }\n\n handleClose();\n }\n }, [childrenKey, data, focusItemValue, handleClose, onChange, selectedPaths, setLayer, setValue, setValueToPaths, value, valueKey]);\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter\n }, rest));\n\n var handleSelect = function handleSelect(node, cascadePaths, isLeafNode, event) {\n var _node$childrenKey, _node$childrenKey2, _triggerRef$current2;\n\n var nextValue = node[valueKey];\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);\n setSelectedPaths(cascadePaths); // Lazy load node's children\n\n if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0) {\n node.loading = true;\n var children = getChildren(node);\n\n if (children instanceof Promise) {\n children.then(function (data) {\n node.loading = false;\n node[childrenKey] = data;\n\n if (targetRef.current) {\n addColumn(data, cascadePaths.length);\n }\n });\n } else {\n node.loading = false;\n node[childrenKey] = children;\n addColumn(children, cascadePaths.length);\n }\n } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {\n addColumn(node[childrenKey], cascadePaths.length);\n }\n\n if (isLeafNode) {\n // Determines whether the option is a leaf node, and if so, closes the picker.\n handleClose(); // Update the selected path to the value path.\n // That is, the selected path will be displayed on the button after clicking the child node.\n\n setValueToPaths(cascadePaths);\n setValue(nextValue);\n\n if (!(0, _shallowEqual.default)(value, nextValue)) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n }\n\n return;\n }\n /** When the parent is optional, the value and the displayed path are updated. */\n\n\n if (parentSelectable && !(0, _shallowEqual.default)(value, nextValue)) {\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n setValueToPaths(cascadePaths);\n } // Update menu position\n\n\n (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.updatePosition();\n };\n /**\n * The search structure option is processed after being selected.\n */\n\n\n var handleSearchRowSelect = function handleSearchRowSelect(node, nodes, event) {\n var nextValue = node[valueKey];\n handleClose();\n setSearchKeyword('');\n setValue(nextValue);\n setValueToPaths(nodes);\n enforceUpdate(nextValue);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, nodes, event);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n };\n\n var renderSearchRow = function renderSearchRow(item, key) {\n var regx = new RegExp((0, _utils2.getSafeRegExpString)(searchKeyword), 'ig');\n var nodes = (0, _treeUtils.getNodeParents)(item);\n nodes.push(item);\n var formattedNodes = nodes.map(function (node) {\n var _extends2;\n\n var labelElements = [];\n var a = node[labelKey].split(regx);\n var b = node[labelKey].match(regx);\n\n for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\n\n if (b && b[i]) {\n labelElements.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: i,\n className: prefix('cascader-search-match'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 433,\n columnNumber: 13\n }\n }, b[i]));\n }\n }\n\n return (0, _extends3.default)({}, node, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2));\n });\n var disabled = disabledItemValues.some(function (value) {\n return formattedNodes.some(function (node) {\n return node[valueKey] === value;\n });\n });\n var itemClasses = prefix('cascader-row', {\n 'cascader-row-disabled': disabled,\n 'cascader-row-focus': item[valueKey] === focusItemValue\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: key,\n \"aria-disabled\": disabled,\n \"data-key\": item[valueKey],\n className: itemClasses,\n onClick: function onClick(event) {\n if (!disabled) {\n handleSearchRowSelect(item, nodes, event);\n }\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 451,\n columnNumber: 7\n }\n }, formattedNodes.map(function (node, index) {\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n key: \"col-\" + index,\n className: prefix('cascader-col'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 463,\n columnNumber: 11\n }\n }, node[labelKey]);\n }));\n };\n\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 478,\n columnNumber: 7\n }\n }, items.length ? items.map(renderSearchRow) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 482,\n columnNumber: 11\n }\n }, locale.noResultsText));\n };\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var _ref = positionProps || {},\n left = _ref.left,\n top = _ref.top,\n className = _ref.className;\n\n var styles = (0, _extends3.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var classes = merge(className, menuClassName, prefix('cascader-menu', {\n inline: inline\n }));\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils2.mergeRefs)(overlayRef, speakerRef),\n className: classes,\n style: styles,\n target: triggerRef,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 494,\n columnNumber: 7\n }\n }, searchable && /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeyword,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 502,\n columnNumber: 11\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_DropdownMenu.default, {\n id: id ? id + \"-listbox\" : undefined,\n menuWidth: menuWidth,\n menuHeight: menuHeight,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n classPrefix: 'picker-cascader-menu',\n cascadeData: columnData,\n cascadePaths: selectedPaths,\n activeItemValue: value,\n onSelect: handleSelect,\n renderMenu: renderMenu,\n renderMenuItem: renderMenuItem,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 512,\n columnNumber: 11\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n\n var selectedElement = placeholder;\n\n if (valueToPaths.length > 0) {\n selectedElement = [];\n valueToPaths.forEach(function (item, index) {\n var key = item[valueKey] || item[labelKey];\n selectedElement.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: key,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 541,\n columnNumber: 28\n }\n }, item[labelKey]));\n\n if (index < valueToPaths.length - 1) {\n selectedElement.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n className: \"separator\",\n key: key + \"-separator\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 544,\n columnNumber: 11\n }\n }, ' / '));\n }\n });\n }\n\n if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value, valueToPaths, selectedElement); // If renderValue returns null or undefined, hasValue is false.\n\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends3.default)({}, props, {\n classPrefix: classPrefix,\n hasValue: hasValue,\n name: 'cascader',\n appearance: appearance,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1]; // TODO: bad api design\n // consider an isolated Menu component\n\n\n if (inline) {\n return renderDropdownMenu();\n }\n\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEntered: (0, _utils2.createChainedFunction)(handleEntered, onEnter),\n onExited: (0, _utils2.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 576,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 584,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n ref: targetRef,\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n onClean: (0, _utils2.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value !== null && value !== void 0 ? value : '',\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 585,\n columnNumber: 9\n }\n }), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));\n});\n\nCascader.displayName = 'Cascader';\nCascader.propTypes = (0, _extends3.default)({}, _Picker.listPickerPropTypes, {\n disabledItemValues: _propTypes.default.array,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n renderMenu: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n cleanable: _propTypes.default.bool,\n renderMenuItem: _propTypes.default.func,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n searchable: _propTypes.default.bool,\n inline: _propTypes.default.bool,\n parentSelectable: _propTypes.default.bool\n});\nvar _default = Cascader;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Cascader/Cascader.tsx?");
|
|
1983
1983
|
|
|
1984
1984
|
/***/ }),
|
|
1985
1985
|
|
|
@@ -2067,7 +2067,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
2067
2067
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2068
2068
|
|
|
2069
2069
|
"use strict";
|
|
2070
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\n\nvar _cloneDeep2 = _interopRequireDefault(__webpack_require__(/*! lodash/cloneDeep */ \"./node_modules/lodash/cloneDeep.js\"));\n\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _isFunction2 = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\n\nvar _pick2 = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\n\nvar _VirtualizedList = __webpack_require__(/*! ../Picker/VirtualizedList */ \"./src/Picker/VirtualizedList.tsx\");\n\nvar _CheckTreeNode = _interopRequireDefault(__webpack_require__(/*! ./CheckTreeNode */ \"./src/CheckTreePicker/CheckTreeNode.tsx\"));\n\nvar _TreeContext = _interopRequireDefault(__webpack_require__(/*! ../Tree/TreeContext */ \"./src/Tree/TreeContext.ts\"));\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/CheckTreePicker/utils.ts\");\n\nvar _TreePicker = __webpack_require__(/*! ../TreePicker/TreePicker */ \"./src/TreePicker/TreePicker.tsx\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CheckTreePicker/CheckTreePicker.tsx\",\n _this = void 0;\n\nvar emptyArray = [];\n\nvar CheckTreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n style = props.style,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n searchBy = props.searchBy,\n toggleAs = props.toggleAs,\n searchKeyword = props.searchKeyword,\n showIndentLine = props.showIndentLine,\n overrideLocale = props.locale,\n _props$cascade = props.cascade,\n cascade = _props$cascade === void 0 ? true : _props$cascade,\n disabled = props.disabled,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n placeholder = props.placeholder,\n controlledValue = props.value,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? emptyArray : _props$defaultValue,\n defaultExpandAll = props.defaultExpandAll,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n controlledExpandItemValues = props.expandItemValues,\n defaultExpandItemValues = props.defaultExpandItemValues,\n _props$height = props.height,\n height = _props$height === void 0 ? 360 : _props$height,\n menuStyle = props.menuStyle,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n virtualized = props.virtualized,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n menuClassName = props.menuClassName,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n id = props.id,\n listProps = props.listProps,\n renderMenu = props.renderMenu,\n getChildren = props.getChildren,\n renderExtraFooter = props.renderExtraFooter,\n onEntered = props.onEntered,\n onChange = props.onChange,\n onClean = props.onClean,\n onClose = props.onClose,\n onExited = props.onExited,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onOpen = props.onOpen,\n onScroll = props.onScroll,\n onExpand = props.onExpand,\n renderValue = props.renderValue,\n renderTreeIcon = props.renderTreeIcon,\n renderTreeNode = props.renderTreeNode,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"style\", \"appearance\", \"cleanable\", \"countable\", \"searchBy\", \"toggleAs\", \"searchKeyword\", \"showIndentLine\", \"locale\", \"cascade\", \"disabled\", \"valueKey\", \"labelKey\", \"placement\", \"childrenKey\", \"placeholder\", \"value\", \"defaultValue\", \"defaultExpandAll\", \"disabledItemValues\", \"expandItemValues\", \"defaultExpandItemValues\", \"height\", \"menuStyle\", \"searchable\", \"virtualized\", \"className\", \"classPrefix\", \"menuClassName\", \"menuAutoWidth\", \"uncheckableItemValues\", \"id\", \"listProps\", \"renderMenu\", \"getChildren\", \"renderExtraFooter\", \"onEntered\", \"onChange\", \"onClean\", \"onClose\", \"onExited\", \"onSearch\", \"onSelect\", \"onOpen\", \"onScroll\", \"onExpand\", \"renderValue\", \"renderTreeIcon\", \"renderTreeNode\"]);\n\n var _useContext = (0, _react.useContext)(_TreeContext.default),\n inline = _useContext.inline;\n\n var triggerRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var listRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n var treeViewRef = (0, _react.useRef)(null);\n\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n rtl = _useCustom.rtl,\n locale = _useCustom.locale;\n\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n\n var _useState2 = (0, _react.useState)(null),\n activeNode = _useState2[0],\n setActiveNode = _useState2[1];\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var _useClassNames2 = (0, _utils.useClassNames)('check-tree'),\n checkTreePrefix = _useClassNames2.prefix,\n withCheckTreeClassPrefix = _useClassNames2.withClassPrefix;\n\n var _useControlled = (0, _utils.useControlled)(controlledValue, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n\n var _useGetTreeNodeChildr = (0, _treeUtils.useGetTreeNodeChildren)(data, valueKey, childrenKey),\n treeData = _useGetTreeNodeChildr.data,\n setTreeData = _useGetTreeNodeChildr.setData,\n loadingNodeValues = _useGetTreeNodeChildr.loadingNodeValues,\n loadChildren = _useGetTreeNodeChildr.loadChildren;\n\n var _useControlled2 = (0, _utils.useControlled)(controlledExpandItemValues, (0, _treeUtils.getDefaultExpandItemValues)(treeData, {\n defaultExpandAll: defaultExpandAll,\n valueKey: valueKey,\n childrenKey: childrenKey,\n defaultExpandItemValues: defaultExpandItemValues\n })),\n expandItemValues = _useControlled2[0],\n setExpandItemValues = _useControlled2[1];\n\n var _useState3 = (0, _react.useState)(null),\n focusItemValue = _useState3[0],\n setFocusItemValue = _useState3[1];\n\n var _useFlattenTreeData = (0, _treeUtils.useFlattenTreeData)({\n data: treeData,\n labelKey: labelKey,\n valueKey: valueKey,\n childrenKey: childrenKey,\n uncheckableItemValues: uncheckableItemValues,\n callback: function callback(nodes) {\n // after flattenData, always unSerialize check property value\n unSerializeList({\n nodes: nodes,\n key: 'check',\n value: value,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n forceUpdate();\n }\n }),\n flattenNodes = _useFlattenTreeData.flattenNodes,\n forceUpdate = _useFlattenTreeData.forceUpdate,\n formatVirtualizedTreeData = _useFlattenTreeData.formatVirtualizedTreeData,\n serializeListOnlyParent = _useFlattenTreeData.serializeListOnlyParent,\n unSerializeList = _useFlattenTreeData.unSerializeList;\n\n var _useTreeSearch = (0, _treeUtils.useTreeSearch)({\n labelKey: labelKey,\n childrenKey: childrenKey,\n searchKeyword: searchKeyword,\n data: treeData,\n searchBy: searchBy,\n callback: function callback(searchKeyword, _filterData, event) {\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }\n }),\n filteredData = _useTreeSearch.filteredData,\n searchKeywordState = _useTreeSearch.searchKeywordState,\n setSearchKeyword = _useTreeSearch.setSearchKeyword,\n handleSearch = _useTreeSearch.handleSearch,\n setFilteredData = _useTreeSearch.setFilteredData;\n\n var _useTreeNodeRefs = (0, _treeUtils.useTreeNodeRefs)(),\n treeNodesRefs = _useTreeNodeRefs.treeNodesRefs,\n saveTreeNodeRef = _useTreeNodeRefs.saveTreeNodeRef;\n /**\n * get formatted nodes for render tree\n * @params render - renderNode function. only used when virtualized setting false\n */\n\n\n var getFormattedNodes = (0, _react.useCallback)(function (render) {\n if (virtualized) {\n return formatVirtualizedTreeData(flattenNodes, filteredData, expandItemValues, {\n cascade: cascade,\n searchKeyword: searchKeywordState\n }).filter(function (item) {\n return item.visible;\n });\n }\n\n return (0, _utils2.getFormattedTree)(filteredData, flattenNodes, {\n childrenKey: childrenKey,\n cascade: cascade\n }).map(function (node) {\n return render === null || render === void 0 ? void 0 : render(node, 1);\n });\n }, [searchKeywordState, expandItemValues, filteredData, flattenNodes, formatVirtualizedTreeData, virtualized, childrenKey, cascade]);\n\n var getTreeNodeProps = function getTreeNodeProps(node, layer) {\n return {\n as: Component,\n rtl: rtl,\n value: node[valueKey],\n label: node[labelKey],\n layer: layer,\n focus: (0, _utils.shallowEqual)(focusItemValue, node[valueKey]),\n expand: node.expand,\n visible: node.visible,\n loading: loadingNodeValues.some(function (item) {\n return (0, _utils.shallowEqual)(item, node[valueKey]);\n }),\n disabled: (0, _utils2.getDisabledState)(flattenNodes, node, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey\n }),\n nodeData: node,\n checkState: node.checkState,\n uncheckable: (0, _utils2.isNodeUncheckable)(node, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n }),\n allUncheckable: (0, _utils2.isAllSiblingNodeUncheckable)(node, flattenNodes, uncheckableItemValues, valueKey),\n onSelect: handleSelect,\n onExpand: handleExpand,\n onRenderTreeNode: renderTreeNode,\n onRenderTreeIcon: renderTreeIcon\n };\n };\n\n var focusActiveNode = (0, _react.useCallback)(function () {\n (0, _treeUtils.focusToActiveTreeNode)({\n list: listRef.current,\n valueKey: valueKey,\n selector: \".\" + checkTreePrefix('node-active'),\n activeNode: activeNode,\n virtualized: virtualized,\n container: treeViewRef.current,\n formattedNodes: getFormattedNodes()\n });\n }, [checkTreePrefix, activeNode, getFormattedNodes, valueKey, virtualized]);\n (0, _react.useEffect)(function () {\n setValue((0, _utils2.getCheckTreePickerDefaultValue)(value, uncheckableItemValues));\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n (0, _react.useEffect)(function () {\n setFilteredData(data, searchKeywordState);\n setTreeData(data);\n }, [data, searchKeywordState, setFilteredData, setTreeData]);\n (0, _react.useEffect)(function () {\n setFilteredData(treeData, searchKeywordState);\n }, [treeData, searchKeywordState, setFilteredData]);\n (0, _react.useEffect)(function () {\n if (Array.isArray(controlledExpandItemValues)) {\n setExpandItemValues(controlledExpandItemValues);\n }\n }, [controlledExpandItemValues, setExpandItemValues]);\n (0, _react.useEffect)(function () {\n setSearchKeyword(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');\n }, [searchKeyword, setSearchKeyword]);\n (0, _react.useEffect)(function () {\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: value,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n forceUpdate();\n }, [cascade, value, uncheckableItemValues, unSerializeList, flattenNodes, forceUpdate]);\n var toggleUpChecked = (0, _react.useCallback)(function (nodes, node, checked) {\n var currentNode = nodes[node.refKey];\n\n if (cascade) {\n if (!checked) {\n currentNode.check = checked;\n currentNode.checkAll = checked;\n } else {\n if ((0, _utils2.isEveryChildChecked)(nodes, currentNode)) {\n currentNode.check = true;\n currentNode.checkAll = true;\n } else {\n currentNode.check = false;\n currentNode.checkAll = false;\n }\n }\n\n if (currentNode.parent) {\n toggleUpChecked(nodes, currentNode.parent, checked);\n }\n }\n }, [cascade]);\n var toggleDownChecked = (0, _react.useCallback)(function (nodes, node, isChecked) {\n var currentNode = nodes[node.refKey];\n currentNode.check = isChecked;\n\n if (!currentNode[childrenKey] || !currentNode[childrenKey].length || !cascade) {\n currentNode.checkAll = false;\n } else {\n currentNode.checkAll = isChecked;\n currentNode[childrenKey].forEach(function (child) {\n toggleDownChecked(nodes, child, isChecked);\n });\n }\n }, [cascade, childrenKey]);\n var toggleChecked = (0, _react.useCallback)(function (node, isChecked) {\n var nodes = (0, _cloneDeep2.default)(flattenNodes);\n toggleDownChecked(nodes, node, isChecked);\n node.parent && toggleUpChecked(nodes, node.parent, isChecked);\n var values = serializeListOnlyParent(nodes, 'check'); // filter uncheckableItemValues\n\n return values.filter(function (v) {\n return !uncheckableItemValues.includes(v);\n });\n }, [flattenNodes, uncheckableItemValues, serializeListOnlyParent, toggleDownChecked, toggleUpChecked]);\n var handleSelect = (0, _react.useCallback)(function (node, event) {\n if (!node) {\n return;\n }\n\n var selectedValues = toggleChecked(node, !flattenNodes[node.refKey].check);\n\n if (!isControlled) {\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: selectedValues,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n setValue(selectedValues);\n }\n\n setActiveNode(node);\n setFocusItemValue(node[valueKey]);\n onChange === null || onChange === void 0 ? void 0 : onChange(selectedValues, event);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, selectedValues, event);\n }, [cascade, valueKey, flattenNodes, isControlled, uncheckableItemValues, setValue, onChange, onSelect, toggleChecked, unSerializeList]);\n\n var hasValue = function hasValue() {\n var selectedValues = Object.keys(flattenNodes).map(function (refKey) {\n return flattenNodes[refKey][valueKey];\n }).filter(function (item) {\n return value.some(function (v) {\n return (0, _utils.shallowEqual)(v, item);\n });\n });\n return !!selectedValues.length;\n };\n\n var handleOpen = (0, _react.useCallback)(function () {\n var _triggerRef$current, _triggerRef$current$o;\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$o = _triggerRef$current.open) === null || _triggerRef$current$o === void 0 ? void 0 : _triggerRef$current$o.call(_triggerRef$current);\n setFocusItemValue(activeNode === null || activeNode === void 0 ? void 0 : activeNode[valueKey]);\n focusActiveNode();\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [activeNode, focusActiveNode, onOpen, valueKey]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current2, _triggerRef$current2$, _targetRef$current;\n\n (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : (_triggerRef$current2$ = _triggerRef$current2.close) === null || _triggerRef$current2$ === void 0 ? void 0 : _triggerRef$current2$.call(_triggerRef$current2);\n setSearchKeyword('');\n onClose === null || onClose === void 0 ? void 0 : onClose();\n setFocusItemValue(null);\n setActive(false);\n /**\n * when using keyboard toggle picker, should refocus on PickerToggle Component after close picker menu\n */\n\n (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.focus();\n }, [onClose, setSearchKeyword]);\n var handleExpand = (0, _react.useCallback)(function (node) {\n var nextExpandItemValues = (0, _treeUtils.toggleExpand)({\n node: node,\n isExpand: !node.expand,\n expandItemValues: expandItemValues,\n valueKey: valueKey\n });\n setExpandItemValues(nextExpandItemValues);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nextExpandItemValues, node, (0, _Picker.createConcatChildrenFunction)(node, node[valueKey], {\n valueKey: valueKey,\n childrenKey: childrenKey\n }));\n\n if ((0, _isFunction2.default)(getChildren) && !node.expand && Array.isArray(node[childrenKey]) && node[childrenKey].length === 0) {\n loadChildren(node, getChildren);\n }\n }, [childrenKey, expandItemValues, getChildren, loadChildren, onExpand, setExpandItemValues, valueKey]);\n (0, _Picker.usePublicMethods)(ref, {\n rootRef: inline ? treeViewRef : undefined,\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef,\n listRef: listRef,\n inline: inline\n });\n var handleClean = (0, _react.useCallback)(function (event) {\n var target = event.target; // exclude searchBar\n\n if (target.matches('div[role=\"searchbox\"] > input')) {\n return;\n }\n\n setActiveNode(null);\n setValue([]);\n setFocusItemValue(null);\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: [],\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n }, [cascade, flattenNodes, onChange, setValue, unSerializeList, uncheckableItemValues]);\n var handleFocusItem = (0, _react.useCallback)(function (key) {\n var focusableItems = (0, _treeUtils.getFocusableItems)(filteredData, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n childrenKey: childrenKey,\n expandItemValues: expandItemValues\n }, (0, _treeUtils.isSearching)(searchKeywordState));\n var selector = \".\" + checkTreePrefix('node-label');\n var focusProps = {\n focusItemValue: focusItemValue,\n focusableItems: focusableItems,\n treeNodesRefs: treeNodesRefs,\n selector: selector,\n valueKey: valueKey,\n callback: function callback(nextFocusItemValue) {\n setFocusItemValue(nextFocusItemValue);\n }\n };\n\n if (key === _utils.KEY_VALUES.DOWN) {\n (0, _treeUtils.focusNextItem)(focusProps);\n return;\n }\n\n if (key === _utils.KEY_VALUES.UP) {\n (0, _treeUtils.focusPreviousItem)(focusProps);\n }\n }, [searchKeywordState, checkTreePrefix, expandItemValues, filteredData, focusItemValue, treeNodesRefs, childrenKey, valueKey, disabledItemValues]);\n var handleLeftArrow = (0, _react.useCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.leftArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n onExpand: handleExpand,\n childrenKey: childrenKey,\n onFocusItem: function onFocusItem() {\n var _focusItem$parent, _focusItem$parent2;\n\n setFocusItemValue(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent = focusItem.parent) === null || _focusItem$parent === void 0 ? void 0 : _focusItem$parent[valueKey]);\n (0, _treeUtils.focusTreeNode)(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent2 = focusItem.parent) === null || _focusItem$parent2 === void 0 ? void 0 : _focusItem$parent2.refKey, treeNodesRefs, \".\" + checkTreePrefix('node-label'));\n }\n });\n }, [checkTreePrefix, expandItemValues, flattenNodes, focusItemValue, handleExpand, treeNodesRefs, valueKey, childrenKey]);\n var handleRightArrow = (0, _react.useCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.rightArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n childrenKey: childrenKey,\n onExpand: handleExpand,\n onFocusItem: function onFocusItem() {\n handleFocusItem(_utils.KEY_VALUES.DOWN);\n }\n });\n }, [focusItemValue, flattenNodes, valueKey, expandItemValues, childrenKey, handleExpand, handleFocusItem]);\n var selectActiveItem = (0, _react.useCallback)(function (event) {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var activeItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n\n if (!(0, _utils2.isNodeUncheckable)(activeItem, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n }) && activeItem !== null) {\n handleSelect(activeItem, event);\n }\n }, [flattenNodes, focusItemValue, handleSelect, uncheckableItemValues, valueKey]);\n var onPickerKeydown = (0, _Picker.useToggleKeyDownEvent)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onClose: handleClose,\n onMenuKeyDown: function onMenuKeyDown(event) {\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem,\n del: handleClean\n });\n }\n });\n var handleTreeKeydown = (0, _react.useCallback)(function (event) {\n if (!treeViewRef.current) {\n return;\n }\n\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem\n });\n }, [handleFocusItem, handleLeftArrow, handleRightArrow, rtl, selectActiveItem]);\n\n var renderNode = function renderNode(node, layer) {\n var visible = node.visible,\n refKey = node.refKey; // when searching, all nodes should be expand\n\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n\n if (!visible) {\n return null;\n }\n\n var children = node[childrenKey];\n var visibleChildren = (0, _isUndefined2.default)(searchKeywordState) || searchKeywordState.length === 0 ? !!children : (0, _treeUtils.hasVisibleChildren)(node, childrenKey);\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n expand: expand\n }), layer), {\n hasChildren: visibleChildren\n });\n\n if (nodeProps.hasChildren) {\n var _merge;\n\n layer += 1;\n var openClass = checkTreePrefix('open');\n var childrenClass = merge(checkTreePrefix('node-children'), (_merge = {}, _merge[openClass] = expand && visibleChildren, _merge));\n var nodes = children || [];\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: childrenClass,\n key: node[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 707,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({}, nodeProps, {\n ref: function ref(_ref) {\n return saveTreeNodeRef(_ref, refKey);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 708,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: checkTreePrefix('children'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 709,\n columnNumber: 11\n }\n }, nodes.map(function (child) {\n return renderNode(child, layer);\n }), showIndentLine && /*#__PURE__*/_react.default.createElement(\"span\", {\n className: checkTreePrefix('indent-line'),\n style: (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1, true),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 712,\n columnNumber: 15\n }\n })));\n }\n\n return /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({\n key: node[valueKey],\n ref: function ref(_ref2) {\n return saveTreeNodeRef(_ref2, refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 723,\n columnNumber: 7\n }\n }));\n };\n\n var renderVirtualListNode = function renderVirtualListNode(nodes) {\n return function (_ref3) {\n var key = _ref3.key,\n index = _ref3.index,\n style = _ref3.style;\n var node = nodes[index];\n var layer = node.layer,\n refKey = node.refKey,\n visible = node.visible;\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n expand: expand\n }), layer), {\n hasChildren: node.hasChildren\n });\n return visible && /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({\n style: style,\n key: key,\n ref: function ref(_ref4) {\n return saveTreeNodeRef(_ref4, refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 747,\n columnNumber: 11\n }\n }));\n };\n };\n\n var renderCheckTree = function renderCheckTree() {\n var _withCheckTreeClassPr, _merge2;\n\n var classes = withCheckTreeClassPrefix((_withCheckTreeClassPr = {}, _withCheckTreeClassPr[className !== null && className !== void 0 ? className : ''] = inline, _withCheckTreeClassPr['without-children'] = !_utils2.isSomeNodeHasChildren, _withCheckTreeClassPr.virtualized = virtualized, _withCheckTreeClassPr));\n var formattedNodes = getFormattedNodes(renderNode);\n\n if (!formattedNodes.some(function (v) {\n return v !== null;\n })) {\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 767,\n columnNumber: 14\n }\n }, locale.noResultsText);\n }\n\n var treeNodesClass = merge(checkTreePrefix('nodes'), (_merge2 = {}, _merge2[checkTreePrefix('all-uncheckable')] = (0, _utils2.isEveryFirstLevelNodeUncheckable)(flattenNodes, uncheckableItemValues, valueKey), _merge2));\n var styles = inline ? (0, _extends2.default)({\n height: height\n }, style) : {};\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n id: id ? id + \"-listbox\" : undefined,\n ref: treeViewRef,\n role: \"tree\",\n \"aria-multiselectable\": true,\n className: classes,\n style: styles,\n onScroll: onScroll,\n onKeyDown: inline ? handleTreeKeydown : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 780,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: treeNodesClass,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 790,\n columnNumber: 9\n }\n }, virtualized ? /*#__PURE__*/_react.default.createElement(_VirtualizedList.AutoSizer, {\n defaultHeight: inline ? height : _TreePicker.maxTreeHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 792,\n columnNumber: 13\n }\n }, function (_ref5) {\n var height = _ref5.height,\n width = _ref5.width;\n return /*#__PURE__*/_react.default.createElement(_VirtualizedList.List, (0, _extends2.default)({\n ref: listRef,\n width: width,\n height: height,\n rowHeight: 36,\n rowCount: formattedNodes.length,\n rowRenderer: renderVirtualListNode(formattedNodes),\n scrollToAlignment: \"center\"\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 797,\n columnNumber: 17\n }\n }));\n }) : formattedNodes));\n };\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = (0, _classnames.default)(className, menuClassName, prefix('check-tree-menu'));\n var mergedMenuStyle = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var styles = virtualized ? (0, _extends2.default)({\n height: height\n }, mergedMenuStyle) : (0, _extends2.default)({}, mergedMenuStyle);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n autoWidth: menuAutoWidth,\n className: classes,\n style: styles,\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n onKeyDown: onPickerKeydown,\n target: triggerRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 824,\n columnNumber: 7\n }\n }, searchable ? /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeywordState,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 833,\n columnNumber: 11\n }\n }) : null, renderMenu ? renderMenu(renderCheckTree()) : renderCheckTree(), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n /**\n * 1.Have a value and the value is valid.\n * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.\n */\n\n\n var hasValidValue = hasValue() || value.length > 0 && (0, _isFunction2.default)(renderValue);\n var selectedElement = placeholder;\n var selectedItems = (0, _utils2.getSelectedItems)(flattenNodes, value, valueKey);\n\n if (hasValidValue) {\n selectedElement = /*#__PURE__*/_react.default.createElement(_Picker.SelectedElement, {\n selectedItems: selectedItems,\n countable: countable,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n prefix: prefix,\n cascade: cascade,\n locale: locale,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 856,\n columnNumber: 7\n }\n });\n\n if ((0, _isFunction2.default)(renderValue)) {\n selectedElement = renderValue(value, selectedItems, selectedElement);\n\n if ((0, _isNil2.default)(selectedElement)) {\n hasValidValue = false;\n }\n }\n }\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n countable: countable,\n cleanable: cleanable,\n disabled: disabled,\n hasValue: hasValidValue,\n name: 'check-tree'\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n\n if (inline) {\n return renderCheckTree();\n }\n\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick2.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEnter: handleOpen,\n onEntered: onEntered,\n onExited: (0, _utils.createChainedFunction)(handleClose, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 891,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 900,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit2.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n ref: targetRef,\n appearance: appearance,\n onKeyDown: onPickerKeydown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n disabled: disabled,\n as: toggleAs,\n hasValue: hasValidValue,\n active: active,\n placement: placement,\n inputValue: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 901,\n columnNumber: 9\n }\n }), selectedElement || locale.placeholder)));\n});\n\nCheckTreePicker.displayName = 'CheckTreePicker';\nCheckTreePicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n height: _propTypes.default.number,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n locale: _propTypes.default.any,\n cascade: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n searchable: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchKeyword: _propTypes.default.string,\n menuAutoWidth: _propTypes.default.bool,\n defaultExpandAll: _propTypes.default.bool,\n containerPadding: _propTypes.default.number,\n disabledItemValues: _propTypes.default.array,\n expandItemValues: _propTypes.default.array,\n defaultExpandItemValues: _propTypes.default.array,\n uncheckableItemValues: _propTypes.default.array,\n onSearch: _propTypes.default.func,\n onExpand: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n renderTreeNode: _propTypes.default.func,\n renderTreeIcon: _propTypes.default.func,\n searchBy: _propTypes.default.func,\n onScroll: _propTypes.default.func\n});\nvar _default = CheckTreePicker;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/CheckTreePicker/CheckTreePicker.tsx?");
|
|
2070
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\n\nvar _cloneDeep2 = _interopRequireDefault(__webpack_require__(/*! lodash/cloneDeep */ \"./node_modules/lodash/cloneDeep.js\"));\n\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _isFunction2 = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\n\nvar _pick2 = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\n\nvar _VirtualizedList = __webpack_require__(/*! ../Picker/VirtualizedList */ \"./src/Picker/VirtualizedList.tsx\");\n\nvar _CheckTreeNode = _interopRequireDefault(__webpack_require__(/*! ./CheckTreeNode */ \"./src/CheckTreePicker/CheckTreeNode.tsx\"));\n\nvar _TreeContext = _interopRequireDefault(__webpack_require__(/*! ../Tree/TreeContext */ \"./src/Tree/TreeContext.ts\"));\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/CheckTreePicker/utils.ts\");\n\nvar _TreePicker = __webpack_require__(/*! ../TreePicker/TreePicker */ \"./src/TreePicker/TreePicker.tsx\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CheckTreePicker/CheckTreePicker.tsx\",\n _this = void 0;\n\nvar emptyArray = [];\n\nvar CheckTreePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n style = props.style,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n searchBy = props.searchBy,\n toggleAs = props.toggleAs,\n searchKeyword = props.searchKeyword,\n showIndentLine = props.showIndentLine,\n overrideLocale = props.locale,\n _props$cascade = props.cascade,\n cascade = _props$cascade === void 0 ? true : _props$cascade,\n disabled = props.disabled,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n placeholder = props.placeholder,\n controlledValue = props.value,\n _props$defaultValue = props.defaultValue,\n defaultValue = _props$defaultValue === void 0 ? emptyArray : _props$defaultValue,\n defaultExpandAll = props.defaultExpandAll,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n controlledExpandItemValues = props.expandItemValues,\n defaultExpandItemValues = props.defaultExpandItemValues,\n _props$height = props.height,\n height = _props$height === void 0 ? 360 : _props$height,\n menuStyle = props.menuStyle,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n virtualized = props.virtualized,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n menuClassName = props.menuClassName,\n _props$menuAutoWidth = props.menuAutoWidth,\n menuAutoWidth = _props$menuAutoWidth === void 0 ? true : _props$menuAutoWidth,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n id = props.id,\n listProps = props.listProps,\n renderMenu = props.renderMenu,\n getChildren = props.getChildren,\n renderExtraFooter = props.renderExtraFooter,\n onEntered = props.onEntered,\n onChange = props.onChange,\n onClean = props.onClean,\n onClose = props.onClose,\n onExited = props.onExited,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onOpen = props.onOpen,\n onScroll = props.onScroll,\n onExpand = props.onExpand,\n renderValue = props.renderValue,\n renderTreeIcon = props.renderTreeIcon,\n renderTreeNode = props.renderTreeNode,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"style\", \"appearance\", \"cleanable\", \"countable\", \"searchBy\", \"toggleAs\", \"searchKeyword\", \"showIndentLine\", \"locale\", \"cascade\", \"disabled\", \"valueKey\", \"labelKey\", \"placement\", \"childrenKey\", \"placeholder\", \"value\", \"defaultValue\", \"defaultExpandAll\", \"disabledItemValues\", \"expandItemValues\", \"defaultExpandItemValues\", \"height\", \"menuStyle\", \"searchable\", \"virtualized\", \"className\", \"classPrefix\", \"menuClassName\", \"menuAutoWidth\", \"uncheckableItemValues\", \"id\", \"listProps\", \"renderMenu\", \"getChildren\", \"renderExtraFooter\", \"onEntered\", \"onChange\", \"onClean\", \"onClose\", \"onExited\", \"onSearch\", \"onSelect\", \"onOpen\", \"onScroll\", \"onExpand\", \"renderValue\", \"renderTreeIcon\", \"renderTreeNode\"]);\n\n var _useContext = (0, _react.useContext)(_TreeContext.default),\n inline = _useContext.inline;\n\n var triggerRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var listRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n var treeViewRef = (0, _react.useRef)(null);\n\n var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),\n rtl = _useCustom.rtl,\n locale = _useCustom.locale;\n\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n\n var _useState2 = (0, _react.useState)(null),\n activeNode = _useState2[0],\n setActiveNode = _useState2[1];\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var _useClassNames2 = (0, _utils.useClassNames)('check-tree'),\n checkTreePrefix = _useClassNames2.prefix,\n withCheckTreeClassPrefix = _useClassNames2.withClassPrefix;\n\n var _useControlled = (0, _utils.useControlled)(controlledValue, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1],\n isControlled = _useControlled[2];\n\n var _useGetTreeNodeChildr = (0, _treeUtils.useGetTreeNodeChildren)(data, valueKey, childrenKey),\n treeData = _useGetTreeNodeChildr.data,\n setTreeData = _useGetTreeNodeChildr.setData,\n loadingNodeValues = _useGetTreeNodeChildr.loadingNodeValues,\n loadChildren = _useGetTreeNodeChildr.loadChildren;\n\n var _useControlled2 = (0, _utils.useControlled)(controlledExpandItemValues, (0, _treeUtils.getDefaultExpandItemValues)(treeData, {\n defaultExpandAll: defaultExpandAll,\n valueKey: valueKey,\n childrenKey: childrenKey,\n defaultExpandItemValues: defaultExpandItemValues\n })),\n expandItemValues = _useControlled2[0],\n setExpandItemValues = _useControlled2[1];\n\n var _useState3 = (0, _react.useState)(null),\n focusItemValue = _useState3[0],\n setFocusItemValue = _useState3[1];\n\n var _useFlattenTreeData = (0, _treeUtils.useFlattenTreeData)({\n data: treeData,\n labelKey: labelKey,\n valueKey: valueKey,\n childrenKey: childrenKey,\n uncheckableItemValues: uncheckableItemValues,\n callback: function callback(nodes) {\n // after flattenData, always unSerialize check property value\n unSerializeList({\n nodes: nodes,\n key: 'check',\n value: value,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n forceUpdate();\n }\n }),\n flattenNodes = _useFlattenTreeData.flattenNodes,\n forceUpdate = _useFlattenTreeData.forceUpdate,\n formatVirtualizedTreeData = _useFlattenTreeData.formatVirtualizedTreeData,\n serializeListOnlyParent = _useFlattenTreeData.serializeListOnlyParent,\n unSerializeList = _useFlattenTreeData.unSerializeList;\n\n var _useTreeSearch = (0, _treeUtils.useTreeSearch)({\n labelKey: labelKey,\n childrenKey: childrenKey,\n searchKeyword: searchKeyword,\n data: treeData,\n searchBy: searchBy,\n callback: function callback(searchKeyword, _filterData, event) {\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);\n }\n }),\n filteredData = _useTreeSearch.filteredData,\n searchKeywordState = _useTreeSearch.searchKeywordState,\n setSearchKeyword = _useTreeSearch.setSearchKeyword,\n handleSearch = _useTreeSearch.handleSearch,\n setFilteredData = _useTreeSearch.setFilteredData;\n\n var _useTreeNodeRefs = (0, _treeUtils.useTreeNodeRefs)(),\n treeNodesRefs = _useTreeNodeRefs.treeNodesRefs,\n saveTreeNodeRef = _useTreeNodeRefs.saveTreeNodeRef;\n /**\n * get formatted nodes for render tree\n * @params render - renderNode function. only used when virtualized setting false\n */\n\n\n var getFormattedNodes = (0, _react.useCallback)(function (render) {\n if (virtualized) {\n return formatVirtualizedTreeData(flattenNodes, filteredData, expandItemValues, {\n cascade: cascade,\n searchKeyword: searchKeywordState\n }).filter(function (item) {\n return item.visible;\n });\n }\n\n return (0, _utils2.getFormattedTree)(filteredData, flattenNodes, {\n childrenKey: childrenKey,\n cascade: cascade\n }).map(function (node) {\n return render === null || render === void 0 ? void 0 : render(node, 1);\n });\n }, [searchKeywordState, expandItemValues, filteredData, flattenNodes, formatVirtualizedTreeData, virtualized, childrenKey, cascade]);\n\n var getTreeNodeProps = function getTreeNodeProps(node, layer) {\n return {\n as: Component,\n rtl: rtl,\n value: node[valueKey],\n label: node[labelKey],\n layer: layer,\n focus: (0, _utils.shallowEqual)(focusItemValue, node[valueKey]),\n expand: node.expand,\n visible: node.visible,\n loading: loadingNodeValues.some(function (item) {\n return (0, _utils.shallowEqual)(item, node[valueKey]);\n }),\n disabled: (0, _utils2.getDisabledState)(flattenNodes, node, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey\n }),\n nodeData: node,\n checkState: node.checkState,\n uncheckable: (0, _utils2.isNodeUncheckable)(node, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n }),\n allUncheckable: (0, _utils2.isAllSiblingNodeUncheckable)(node, flattenNodes, uncheckableItemValues, valueKey),\n onSelect: handleSelect,\n onExpand: handleExpand,\n onRenderTreeNode: renderTreeNode,\n onRenderTreeIcon: renderTreeIcon\n };\n };\n\n var focusActiveNode = (0, _react.useCallback)(function () {\n (0, _treeUtils.focusToActiveTreeNode)({\n list: listRef.current,\n valueKey: valueKey,\n selector: \".\" + checkTreePrefix('node-active'),\n activeNode: activeNode,\n virtualized: virtualized,\n container: treeViewRef.current,\n formattedNodes: getFormattedNodes()\n });\n }, [checkTreePrefix, activeNode, getFormattedNodes, valueKey, virtualized]);\n (0, _react.useEffect)(function () {\n setValue((0, _utils2.getCheckTreePickerDefaultValue)(value, uncheckableItemValues));\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n (0, _react.useEffect)(function () {\n setFilteredData(data, searchKeywordState);\n setTreeData(data);\n }, [data, searchKeywordState, setFilteredData, setTreeData]);\n (0, _react.useEffect)(function () {\n setFilteredData(treeData, searchKeywordState);\n }, [treeData, searchKeywordState, setFilteredData]);\n (0, _react.useEffect)(function () {\n if (Array.isArray(controlledExpandItemValues)) {\n setExpandItemValues(controlledExpandItemValues);\n }\n }, [controlledExpandItemValues, setExpandItemValues]);\n (0, _react.useEffect)(function () {\n setSearchKeyword(searchKeyword !== null && searchKeyword !== void 0 ? searchKeyword : '');\n }, [searchKeyword, setSearchKeyword]);\n (0, _react.useEffect)(function () {\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: value,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n forceUpdate();\n }, [cascade, value, uncheckableItemValues, unSerializeList, flattenNodes, forceUpdate]);\n var toggleUpChecked = (0, _react.useCallback)(function (nodes, node, checked) {\n var currentNode = nodes[node.refKey];\n\n if (cascade) {\n if (!checked) {\n currentNode.check = checked;\n currentNode.checkAll = checked;\n } else {\n if ((0, _utils2.isEveryChildChecked)(nodes, currentNode)) {\n currentNode.check = true;\n currentNode.checkAll = true;\n } else {\n currentNode.check = false;\n currentNode.checkAll = false;\n }\n }\n\n if (currentNode.parent) {\n toggleUpChecked(nodes, currentNode.parent, checked);\n }\n }\n }, [cascade]);\n var toggleDownChecked = (0, _react.useCallback)(function (nodes, node, isChecked) {\n var currentNode = nodes[node.refKey];\n currentNode.check = isChecked;\n\n if (!currentNode[childrenKey] || !currentNode[childrenKey].length || !cascade) {\n currentNode.checkAll = false;\n } else {\n currentNode.checkAll = isChecked;\n currentNode[childrenKey].forEach(function (child) {\n toggleDownChecked(nodes, child, isChecked);\n });\n }\n }, [cascade, childrenKey]);\n var toggleChecked = (0, _react.useCallback)(function (node, isChecked) {\n var nodes = (0, _cloneDeep2.default)(flattenNodes);\n toggleDownChecked(nodes, node, isChecked);\n node.parent && toggleUpChecked(nodes, node.parent, isChecked);\n var values = serializeListOnlyParent(nodes, 'check'); // filter uncheckableItemValues\n\n return values.filter(function (v) {\n return !uncheckableItemValues.includes(v);\n });\n }, [flattenNodes, uncheckableItemValues, serializeListOnlyParent, toggleDownChecked, toggleUpChecked]);\n var handleSelect = (0, _react.useCallback)(function (node, event) {\n if (!node) {\n return;\n }\n\n var selectedValues = toggleChecked(node, !flattenNodes[node.refKey].check);\n\n if (!isControlled) {\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: selectedValues,\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n setValue(selectedValues);\n }\n\n setActiveNode(node);\n setFocusItemValue(node[valueKey]);\n onChange === null || onChange === void 0 ? void 0 : onChange(selectedValues, event);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, selectedValues, event);\n }, [cascade, valueKey, flattenNodes, isControlled, uncheckableItemValues, setValue, onChange, onSelect, toggleChecked, unSerializeList]);\n\n var hasValue = function hasValue() {\n var selectedValues = Object.keys(flattenNodes).map(function (refKey) {\n return flattenNodes[refKey][valueKey];\n }).filter(function (item) {\n return value.some(function (v) {\n return (0, _utils.shallowEqual)(v, item);\n });\n });\n return !!selectedValues.length;\n };\n\n var handleOpen = (0, _react.useCallback)(function () {\n var _triggerRef$current, _triggerRef$current$o;\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$o = _triggerRef$current.open) === null || _triggerRef$current$o === void 0 ? void 0 : _triggerRef$current$o.call(_triggerRef$current);\n setFocusItemValue(activeNode === null || activeNode === void 0 ? void 0 : activeNode[valueKey]);\n focusActiveNode();\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [activeNode, focusActiveNode, onOpen, valueKey]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current2, _triggerRef$current2$, _targetRef$current;\n\n (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : (_triggerRef$current2$ = _triggerRef$current2.close) === null || _triggerRef$current2$ === void 0 ? void 0 : _triggerRef$current2$.call(_triggerRef$current2);\n setSearchKeyword('');\n onClose === null || onClose === void 0 ? void 0 : onClose();\n setFocusItemValue(null);\n setActive(false);\n /**\n * when using keyboard toggle picker, should refocus on PickerToggle Component after close picker menu\n */\n\n (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.focus();\n }, [onClose, setSearchKeyword]);\n var handleExpand = (0, _react.useCallback)(function (node) {\n var nextExpandItemValues = (0, _treeUtils.toggleExpand)({\n node: node,\n isExpand: !node.expand,\n expandItemValues: expandItemValues,\n valueKey: valueKey\n });\n setExpandItemValues(nextExpandItemValues);\n onExpand === null || onExpand === void 0 ? void 0 : onExpand(nextExpandItemValues, node, (0, _Picker.createConcatChildrenFunction)(node, node[valueKey], {\n valueKey: valueKey,\n childrenKey: childrenKey\n }));\n\n if ((0, _isFunction2.default)(getChildren) && !node.expand && Array.isArray(node[childrenKey]) && node[childrenKey].length === 0) {\n loadChildren(node, getChildren);\n }\n }, [childrenKey, expandItemValues, getChildren, loadChildren, onExpand, setExpandItemValues, valueKey]);\n (0, _Picker.usePublicMethods)(ref, {\n rootRef: inline ? treeViewRef : undefined,\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef,\n listRef: listRef,\n inline: inline\n });\n var handleClean = (0, _react.useCallback)(function (event) {\n var target = event.target; // exclude searchBar\n\n if (target.matches('div[role=\"searchbox\"] > input')) {\n return;\n }\n\n setActiveNode(null);\n setValue([]);\n setFocusItemValue(null);\n unSerializeList({\n nodes: flattenNodes,\n key: 'check',\n value: [],\n cascade: cascade,\n uncheckableItemValues: uncheckableItemValues\n });\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n }, [cascade, flattenNodes, onChange, setValue, unSerializeList, uncheckableItemValues]);\n var handleFocusItem = (0, _react.useCallback)(function (key) {\n var focusableItems = (0, _treeUtils.getFocusableItems)(filteredData, {\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n childrenKey: childrenKey,\n expandItemValues: expandItemValues\n }, (0, _treeUtils.isSearching)(searchKeywordState));\n var selector = \".\" + checkTreePrefix('node-label');\n var focusProps = {\n focusItemValue: focusItemValue,\n focusableItems: focusableItems,\n treeNodesRefs: treeNodesRefs,\n selector: selector,\n valueKey: valueKey,\n callback: function callback(nextFocusItemValue) {\n setFocusItemValue(nextFocusItemValue);\n }\n };\n\n if (key === _utils.KEY_VALUES.DOWN) {\n (0, _treeUtils.focusNextItem)(focusProps);\n return;\n }\n\n if (key === _utils.KEY_VALUES.UP) {\n (0, _treeUtils.focusPreviousItem)(focusProps);\n }\n }, [searchKeywordState, checkTreePrefix, expandItemValues, filteredData, focusItemValue, treeNodesRefs, childrenKey, valueKey, disabledItemValues]);\n var handleLeftArrow = (0, _react.useCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.leftArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n onExpand: handleExpand,\n childrenKey: childrenKey,\n onFocusItem: function onFocusItem() {\n var _focusItem$parent, _focusItem$parent2;\n\n setFocusItemValue(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent = focusItem.parent) === null || _focusItem$parent === void 0 ? void 0 : _focusItem$parent[valueKey]);\n (0, _treeUtils.focusTreeNode)(focusItem === null || focusItem === void 0 ? void 0 : (_focusItem$parent2 = focusItem.parent) === null || _focusItem$parent2 === void 0 ? void 0 : _focusItem$parent2.refKey, treeNodesRefs, \".\" + checkTreePrefix('node-label'));\n }\n });\n }, [checkTreePrefix, expandItemValues, flattenNodes, focusItemValue, handleExpand, treeNodesRefs, valueKey, childrenKey]);\n var handleRightArrow = (0, _react.useCallback)(function () {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var focusItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n (0, _treeUtils.rightArrowHandler)({\n focusItem: focusItem,\n expand: expandItemValues.includes(focusItem === null || focusItem === void 0 ? void 0 : focusItem[valueKey]),\n childrenKey: childrenKey,\n onExpand: handleExpand,\n onFocusItem: function onFocusItem() {\n handleFocusItem(_utils.KEY_VALUES.DOWN);\n }\n });\n }, [focusItemValue, flattenNodes, valueKey, expandItemValues, childrenKey, handleExpand, handleFocusItem]);\n var selectActiveItem = (0, _react.useCallback)(function (event) {\n if ((0, _isNil2.default)(focusItemValue)) return;\n var activeItem = (0, _treeUtils.getActiveItem)(focusItemValue, flattenNodes, valueKey);\n\n if (!(0, _utils2.isNodeUncheckable)(activeItem, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n }) && activeItem !== null) {\n handleSelect(activeItem, event);\n }\n }, [flattenNodes, focusItemValue, handleSelect, uncheckableItemValues, valueKey]);\n var onPickerKeydown = (0, _Picker.useToggleKeyDownEvent)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onClose: handleClose,\n onMenuKeyDown: function onMenuKeyDown(event) {\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem,\n del: handleClean\n });\n }\n });\n var handleTreeKeydown = (0, _react.useCallback)(function (event) {\n if (!treeViewRef.current) {\n return;\n }\n\n (0, _Picker.onMenuKeyDown)(event, {\n down: function down() {\n return handleFocusItem(_utils.KEY_VALUES.DOWN);\n },\n up: function up() {\n return handleFocusItem(_utils.KEY_VALUES.UP);\n },\n left: rtl ? handleRightArrow : handleLeftArrow,\n right: rtl ? handleLeftArrow : handleRightArrow,\n enter: selectActiveItem\n });\n }, [handleFocusItem, handleLeftArrow, handleRightArrow, rtl, selectActiveItem]);\n\n var renderNode = function renderNode(node, layer) {\n var visible = node.visible,\n refKey = node.refKey; // when searching, all nodes should be expand\n\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n\n if (!visible) {\n return null;\n }\n\n var children = node[childrenKey];\n var visibleChildren = (0, _isUndefined2.default)(searchKeywordState) || searchKeywordState.length === 0 ? !!children : (0, _treeUtils.hasVisibleChildren)(node, childrenKey);\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n expand: expand\n }), layer), {\n hasChildren: visibleChildren\n });\n\n if (nodeProps.hasChildren) {\n var _merge;\n\n layer += 1;\n var openClass = checkTreePrefix('open');\n var childrenClass = merge(checkTreePrefix('node-children'), (_merge = {}, _merge[openClass] = expand && visibleChildren, _merge));\n var nodes = children || [];\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: childrenClass,\n key: node[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 707,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({}, nodeProps, {\n ref: function ref(_ref) {\n return saveTreeNodeRef(_ref, refKey);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 708,\n columnNumber: 11\n }\n })), /*#__PURE__*/_react.default.createElement(\"div\", {\n className: checkTreePrefix('children'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 709,\n columnNumber: 11\n }\n }, nodes.map(function (child) {\n return renderNode(child, layer);\n }), showIndentLine && /*#__PURE__*/_react.default.createElement(\"span\", {\n className: checkTreePrefix('indent-line'),\n style: (0, _treeUtils.getTreeNodeIndent)(rtl, layer - 1, true),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 712,\n columnNumber: 15\n }\n })));\n }\n\n return /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({\n key: node[valueKey],\n ref: function ref(_ref2) {\n return saveTreeNodeRef(_ref2, refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 723,\n columnNumber: 7\n }\n }));\n };\n\n var renderVirtualListNode = function renderVirtualListNode(nodes) {\n return function (_ref3) {\n var key = _ref3.key,\n index = _ref3.index,\n style = _ref3.style;\n var node = nodes[index];\n var layer = node.layer,\n refKey = node.refKey,\n visible = node.visible;\n var expand = (0, _treeUtils.getExpandWhenSearching)(searchKeywordState, expandItemValues.includes(node[valueKey]));\n var nodeProps = (0, _extends2.default)({}, getTreeNodeProps((0, _extends2.default)({}, node, {\n expand: expand\n }), layer), {\n hasChildren: node.hasChildren\n });\n return visible && /*#__PURE__*/_react.default.createElement(_CheckTreeNode.default, (0, _extends2.default)({\n style: style,\n key: key,\n ref: function ref(_ref4) {\n return saveTreeNodeRef(_ref4, refKey);\n }\n }, nodeProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 747,\n columnNumber: 11\n }\n }));\n };\n };\n\n var renderCheckTree = function renderCheckTree() {\n var _withCheckTreeClassPr, _merge2;\n\n var classes = withCheckTreeClassPrefix((_withCheckTreeClassPr = {}, _withCheckTreeClassPr[className !== null && className !== void 0 ? className : ''] = inline, _withCheckTreeClassPr['without-children'] = !(0, _utils2.isSomeNodeHasChildren)(data, childrenKey), _withCheckTreeClassPr.virtualized = virtualized, _withCheckTreeClassPr));\n var formattedNodes = getFormattedNodes(renderNode);\n\n if (!formattedNodes.some(function (v) {\n return v !== null;\n })) {\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 767,\n columnNumber: 14\n }\n }, locale.noResultsText);\n }\n\n var treeNodesClass = merge(checkTreePrefix('nodes'), (_merge2 = {}, _merge2[checkTreePrefix('all-uncheckable')] = (0, _utils2.isEveryFirstLevelNodeUncheckable)(flattenNodes, uncheckableItemValues, valueKey), _merge2));\n var styles = inline ? (0, _extends2.default)({\n height: height\n }, style) : {};\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n id: id ? id + \"-listbox\" : undefined,\n ref: treeViewRef,\n role: \"tree\",\n \"aria-multiselectable\": true,\n className: classes,\n style: styles,\n onScroll: onScroll,\n onKeyDown: inline ? handleTreeKeydown : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 780,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: treeNodesClass,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 790,\n columnNumber: 9\n }\n }, virtualized ? /*#__PURE__*/_react.default.createElement(_VirtualizedList.AutoSizer, {\n defaultHeight: inline ? height : _TreePicker.maxTreeHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 792,\n columnNumber: 13\n }\n }, function (_ref5) {\n var height = _ref5.height,\n width = _ref5.width;\n return /*#__PURE__*/_react.default.createElement(_VirtualizedList.List, (0, _extends2.default)({\n ref: listRef,\n width: width,\n height: height,\n rowHeight: 36,\n rowCount: formattedNodes.length,\n rowRenderer: renderVirtualListNode(formattedNodes),\n scrollToAlignment: \"center\"\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 797,\n columnNumber: 17\n }\n }));\n }) : formattedNodes));\n };\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = (0, _classnames.default)(className, menuClassName, prefix('check-tree-menu'));\n var mergedMenuStyle = (0, _extends2.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var styles = virtualized ? (0, _extends2.default)({\n height: height\n }, mergedMenuStyle) : (0, _extends2.default)({}, mergedMenuStyle);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n autoWidth: menuAutoWidth,\n className: classes,\n style: styles,\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n onKeyDown: onPickerKeydown,\n target: triggerRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 824,\n columnNumber: 7\n }\n }, searchable ? /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeywordState,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 833,\n columnNumber: 11\n }\n }) : null, renderMenu ? renderMenu(renderCheckTree()) : renderCheckTree(), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n /**\n * 1.Have a value and the value is valid.\n * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.\n */\n\n\n var hasValidValue = hasValue() || value.length > 0 && (0, _isFunction2.default)(renderValue);\n var selectedElement = placeholder;\n var selectedItems = (0, _utils2.getSelectedItems)(flattenNodes, value, valueKey);\n\n if (hasValidValue) {\n selectedElement = /*#__PURE__*/_react.default.createElement(_Picker.SelectedElement, {\n selectedItems: selectedItems,\n countable: countable,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n prefix: prefix,\n cascade: cascade,\n locale: locale,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 856,\n columnNumber: 7\n }\n });\n\n if ((0, _isFunction2.default)(renderValue)) {\n selectedElement = renderValue(value, selectedItems, selectedElement);\n\n if ((0, _isNil2.default)(selectedElement)) {\n hasValidValue = false;\n }\n }\n }\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n appearance: appearance,\n countable: countable,\n cleanable: cleanable,\n disabled: disabled,\n hasValue: hasValidValue,\n name: 'check-tree'\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n\n if (inline) {\n return renderCheckTree();\n }\n\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick2.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEnter: handleOpen,\n onEntered: onEntered,\n onExited: (0, _utils.createChainedFunction)(handleClose, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 891,\n columnNumber: 5\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 900,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit2.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n ref: targetRef,\n appearance: appearance,\n onKeyDown: onPickerKeydown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n disabled: disabled,\n as: toggleAs,\n hasValue: hasValidValue,\n active: active,\n placement: placement,\n inputValue: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 901,\n columnNumber: 9\n }\n }), selectedElement || locale.placeholder)));\n});\n\nCheckTreePicker.displayName = 'CheckTreePicker';\nCheckTreePicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {\n height: _propTypes.default.number,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n locale: _propTypes.default.any,\n cascade: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n searchable: _propTypes.default.bool,\n virtualized: _propTypes.default.bool,\n searchKeyword: _propTypes.default.string,\n menuAutoWidth: _propTypes.default.bool,\n defaultExpandAll: _propTypes.default.bool,\n containerPadding: _propTypes.default.number,\n disabledItemValues: _propTypes.default.array,\n expandItemValues: _propTypes.default.array,\n defaultExpandItemValues: _propTypes.default.array,\n uncheckableItemValues: _propTypes.default.array,\n onSearch: _propTypes.default.func,\n onExpand: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n renderTreeNode: _propTypes.default.func,\n renderTreeIcon: _propTypes.default.func,\n searchBy: _propTypes.default.func,\n onScroll: _propTypes.default.func\n});\nvar _default = CheckTreePicker;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/CheckTreePicker/CheckTreePicker.tsx?");
|
|
2071
2071
|
|
|
2072
2072
|
/***/ }),
|
|
2073
2073
|
|
|
@@ -2089,7 +2089,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
2089
2089
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2090
2090
|
|
|
2091
2091
|
"use strict";
|
|
2092
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.isEveryChildChecked = isEveryChildChecked;\nexports.isSomeChildChecked = isSomeChildChecked;\nexports.isSomeNodeHasChildren = isSomeNodeHasChildren;\nexports.isAllSiblingNodeUncheckable = isAllSiblingNodeUncheckable;\nexports.isEveryFirstLevelNodeUncheckable = isEveryFirstLevelNodeUncheckable;\nexports.isNodeUncheckable = isNodeUncheckable;\nexports.getFormattedTree = getFormattedTree;\nexports.getDisabledState = getDisabledState;\nexports.getCheckTreePickerDefaultValue = getCheckTreePickerDefaultValue;\nexports.getSelectedItems = getSelectedItems;\nexports.getNodeCheckState = getNodeCheckState;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\n\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nfunction isEveryChildChecked(nodes, parent) {\n if ((0, _isNil2.default)(parent.refKey) || (0, _isNil2.default)(nodes[parent.refKey])) {\n return false;\n }\n\n var children = (0, _treeUtils.getChildrenByFlattenNodes)(nodes, parent);\n\n if (!children.length) {\n var _nodes$parent$refKey$;\n\n return (_nodes$parent$refKey$ = nodes[parent.refKey].check) !== null && _nodes$parent$refKey$ !== void 0 ? _nodes$parent$refKey$ : false;\n }\n\n return children.every(function (child) {\n return !(0, _isNil2.default)(child.refKey) && nodes[child.refKey].check;\n });\n}\n\nfunction isSomeChildChecked(nodes, parent, childrenKey) {\n if (!(0, _isNil2.default)(parent.refKey) && (0, _isNil2.default)(nodes[parent.refKey])) {\n return false;\n }\n\n var children = (0, _treeUtils.getChildrenByFlattenNodes)(nodes, parent);\n return children.some(function (child) {\n var _child$childrenKey;\n\n if ((child === null || child === void 0 ? void 0 : (_child$childrenKey = child[childrenKey]) === null || _child$childrenKey === void 0 ? void 0 : _child$childrenKey.length) > 0) {\n return isSomeChildChecked(nodes, child, childrenKey);\n }\n\n return !(0, _isNil2.default)(child.refKey) && nodes[child.refKey].check;\n });\n}\n\nfunction isSomeNodeHasChildren(data, childrenKey) {\n return data.some(function (node) {\n return node[childrenKey];\n });\n}\n/**\n * is all siblings nodes is uncheckable\n * @param {*} node\n */\n\n\nfunction isAllSiblingNodeUncheckable(node, nodes, uncheckableItemValues, valueKey) {\n var list = [];\n var parentNodeRefKey = node.parent ? node.parent.refKey : '';\n Object.keys(nodes).forEach(function (refKey) {\n var _curNode$parent;\n\n var curNode = nodes[refKey];\n\n if ((0, _isNil2.default)(node.parent) && (0, _isNil2.default)(curNode.parent)) {\n list.push(curNode);\n } else if (((_curNode$parent = curNode.parent) === null || _curNode$parent === void 0 ? void 0 : _curNode$parent.refKey) === parentNodeRefKey) {\n list.push(curNode);\n }\n });\n return list.every(function (node) {\n return isNodeUncheckable(node, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n });\n });\n}\n/**\n * get each first level node uncheckable state\n */\n\n\nfunction isEveryFirstLevelNodeUncheckable(nodes, uncheckableItemValues, valueKey) {\n var list = [];\n Object.keys(nodes).forEach(function (refKey) {\n var curNode = nodes[refKey];\n\n if (!curNode.parent) {\n list.push(curNode);\n }\n });\n return list.every(function (node) {\n return isNodeUncheckable(node, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n });\n });\n}\n/**\n * get node uncheckable state\n * @param {*} node\n */\n\n\nfunction isNodeUncheckable(node, props) {\n var _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? [] : _props$uncheckableIte,\n valueKey = props.valueKey;\n return uncheckableItemValues.some(function (value) {\n return (0, _utils.shallowEqual)(node[valueKey], value);\n });\n}\n\nfunction getFormattedTree(data, nodes, props) {\n var childrenKey = props.childrenKey,\n cascade = props.cascade;\n return data.map(function (node) {\n var formatted = (0, _extends2.default)({}, node);\n var curNode = nodes[node.refKey];\n\n if (curNode) {\n var _node;\n\n var checkState = !(0, _isUndefined2.default)(cascade) ? getNodeCheckState({\n node: curNode,\n cascade: cascade,\n nodes: nodes,\n childrenKey: childrenKey\n }) : undefined;\n formatted.check = curNode.check;\n formatted.expand = curNode.expand;\n formatted.uncheckable = curNode.uncheckable;\n formatted.parent = curNode.parent;\n formatted.checkState = checkState;\n\n if (((_node = node[childrenKey]) === null || _node === void 0 ? void 0 : _node.length) > 0) {\n formatted[childrenKey] = getFormattedTree(formatted[childrenKey], nodes, props);\n }\n }\n\n return formatted;\n });\n}\n\nfunction getDisabledState(nodes, node, props) {\n var _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? [] : _props$disabledItemVa,\n valueKey = props.valueKey;\n\n if (!(0, _isNil2.default)(node.refKey) && (0, _isNil2.default)(nodes[node.refKey])) {\n return false;\n }\n\n return disabledItemValues.some(function (value) {\n return (0, _utils.shallowEqual)(nodes[node.refKey][valueKey], value);\n });\n}\n\nfunction getCheckTreePickerDefaultValue(value, uncheckableItemValues) {\n if (Array.isArray(value)) {\n return value.filter(function (v) {\n return !uncheckableItemValues.includes(v);\n });\n }\n\n return [];\n}\n\nfunction getSelectedItems(nodes, value, valueKey) {\n var checkItems = [];\n Object.keys(nodes).map(function (refKey) {\n var node = nodes[refKey];\n\n if (value.some(function (value) {\n return (0, _utils.shallowEqual)(node[valueKey], value);\n })) {\n checkItems.push(node);\n }\n });\n return checkItems;\n}\n\nfunction getNodeCheckState(_ref) {\n var nodes = _ref.nodes,\n node = _ref.node,\n cascade = _ref.cascade,\n childrenKey = _ref.childrenKey;\n\n if ((0, _isNil2.default)(nodes[node.refKey])) {\n return _utils.CHECK_STATE.UNCHECK;\n }\n\n if (!node[childrenKey] || !node[childrenKey].length || !cascade) {\n nodes[node.refKey].checkAll = false;\n return node.check ? _utils.CHECK_STATE.CHECK : _utils.CHECK_STATE.UNCHECK;\n }\n\n if (isEveryChildChecked(nodes, node)) {\n nodes[node.refKey].checkAll = true;\n nodes[node.refKey].check = true;\n return _utils.CHECK_STATE.CHECK;\n }\n\n if (isSomeChildChecked(nodes, node, childrenKey)) {\n nodes[node.refKey].checkAll = false;\n return _utils.CHECK_STATE.INDETERMINATE;\n }\n\n return _utils.CHECK_STATE.UNCHECK;\n}\n\n//# sourceURL=webpack://rsuite/./src/CheckTreePicker/utils.ts?");
|
|
2092
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.isEveryChildChecked = isEveryChildChecked;\nexports.isSomeChildChecked = isSomeChildChecked;\nexports.isSomeNodeHasChildren = isSomeNodeHasChildren;\nexports.isAllSiblingNodeUncheckable = isAllSiblingNodeUncheckable;\nexports.isEveryFirstLevelNodeUncheckable = isEveryFirstLevelNodeUncheckable;\nexports.isNodeUncheckable = isNodeUncheckable;\nexports.getFormattedTree = getFormattedTree;\nexports.getDisabledState = getDisabledState;\nexports.getCheckTreePickerDefaultValue = getCheckTreePickerDefaultValue;\nexports.getSelectedItems = getSelectedItems;\nexports.getNodeCheckState = getNodeCheckState;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _isUndefined2 = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\n\nvar _isNil2 = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nfunction isEveryChildChecked(nodes, parent) {\n if ((0, _isNil2.default)(parent.refKey) || (0, _isNil2.default)(nodes[parent.refKey])) {\n return false;\n }\n\n var children = (0, _treeUtils.getChildrenByFlattenNodes)(nodes, parent);\n\n if (!children.length) {\n var _nodes$parent$refKey$;\n\n return (_nodes$parent$refKey$ = nodes[parent.refKey].check) !== null && _nodes$parent$refKey$ !== void 0 ? _nodes$parent$refKey$ : false;\n }\n\n return children.every(function (child) {\n return !(0, _isNil2.default)(child.refKey) && nodes[child.refKey].check;\n });\n}\n\nfunction isSomeChildChecked(nodes, parent, childrenKey) {\n if (!(0, _isNil2.default)(parent.refKey) && (0, _isNil2.default)(nodes[parent.refKey])) {\n return false;\n }\n\n var children = (0, _treeUtils.getChildrenByFlattenNodes)(nodes, parent);\n return children.some(function (child) {\n var _child$childrenKey;\n\n if ((child === null || child === void 0 ? void 0 : (_child$childrenKey = child[childrenKey]) === null || _child$childrenKey === void 0 ? void 0 : _child$childrenKey.length) > 0) {\n return isSomeChildChecked(nodes, child, childrenKey);\n }\n\n return !(0, _isNil2.default)(child.refKey) && nodes[child.refKey].check;\n });\n}\n\nfunction isSomeNodeHasChildren(data, childrenKey) {\n return data.some(function (node) {\n return Array.isArray(node[childrenKey]);\n });\n}\n/**\n * is all siblings nodes is uncheckable\n * @param {*} node\n */\n\n\nfunction isAllSiblingNodeUncheckable(node, nodes, uncheckableItemValues, valueKey) {\n var list = [];\n var parentNodeRefKey = node.parent ? node.parent.refKey : '';\n Object.keys(nodes).forEach(function (refKey) {\n var _curNode$parent;\n\n var curNode = nodes[refKey];\n\n if ((0, _isNil2.default)(node.parent) && (0, _isNil2.default)(curNode.parent)) {\n list.push(curNode);\n } else if (((_curNode$parent = curNode.parent) === null || _curNode$parent === void 0 ? void 0 : _curNode$parent.refKey) === parentNodeRefKey) {\n list.push(curNode);\n }\n });\n return list.every(function (node) {\n return isNodeUncheckable(node, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n });\n });\n}\n/**\n * get each first level node uncheckable state\n */\n\n\nfunction isEveryFirstLevelNodeUncheckable(nodes, uncheckableItemValues, valueKey) {\n var list = [];\n Object.keys(nodes).forEach(function (refKey) {\n var curNode = nodes[refKey];\n\n if (!curNode.parent) {\n list.push(curNode);\n }\n });\n return list.every(function (node) {\n return isNodeUncheckable(node, {\n uncheckableItemValues: uncheckableItemValues,\n valueKey: valueKey\n });\n });\n}\n/**\n * get node uncheckable state\n * @param {*} node\n */\n\n\nfunction isNodeUncheckable(node, props) {\n var _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? [] : _props$uncheckableIte,\n valueKey = props.valueKey;\n return uncheckableItemValues.some(function (value) {\n return (0, _utils.shallowEqual)(node[valueKey], value);\n });\n}\n\nfunction getFormattedTree(data, nodes, props) {\n var childrenKey = props.childrenKey,\n cascade = props.cascade;\n return data.map(function (node) {\n var formatted = (0, _extends2.default)({}, node);\n var curNode = nodes[node.refKey];\n\n if (curNode) {\n var _node;\n\n var checkState = !(0, _isUndefined2.default)(cascade) ? getNodeCheckState({\n node: curNode,\n cascade: cascade,\n nodes: nodes,\n childrenKey: childrenKey\n }) : undefined;\n formatted.check = curNode.check;\n formatted.expand = curNode.expand;\n formatted.uncheckable = curNode.uncheckable;\n formatted.parent = curNode.parent;\n formatted.checkState = checkState;\n\n if (((_node = node[childrenKey]) === null || _node === void 0 ? void 0 : _node.length) > 0) {\n formatted[childrenKey] = getFormattedTree(formatted[childrenKey], nodes, props);\n }\n }\n\n return formatted;\n });\n}\n\nfunction getDisabledState(nodes, node, props) {\n var _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? [] : _props$disabledItemVa,\n valueKey = props.valueKey;\n\n if (!(0, _isNil2.default)(node.refKey) && (0, _isNil2.default)(nodes[node.refKey])) {\n return false;\n }\n\n return disabledItemValues.some(function (value) {\n return (0, _utils.shallowEqual)(nodes[node.refKey][valueKey], value);\n });\n}\n\nfunction getCheckTreePickerDefaultValue(value, uncheckableItemValues) {\n if (Array.isArray(value)) {\n return value.filter(function (v) {\n return !uncheckableItemValues.includes(v);\n });\n }\n\n return [];\n}\n\nfunction getSelectedItems(nodes, value, valueKey) {\n var checkItems = [];\n Object.keys(nodes).map(function (refKey) {\n var node = nodes[refKey];\n\n if (value.some(function (value) {\n return (0, _utils.shallowEqual)(node[valueKey], value);\n })) {\n checkItems.push(node);\n }\n });\n return checkItems;\n}\n\nfunction getNodeCheckState(_ref) {\n var nodes = _ref.nodes,\n node = _ref.node,\n cascade = _ref.cascade,\n childrenKey = _ref.childrenKey;\n\n if ((0, _isNil2.default)(nodes[node.refKey])) {\n return _utils.CHECK_STATE.UNCHECK;\n }\n\n if (!node[childrenKey] || !node[childrenKey].length || !cascade) {\n nodes[node.refKey].checkAll = false;\n return node.check ? _utils.CHECK_STATE.CHECK : _utils.CHECK_STATE.UNCHECK;\n }\n\n if (isEveryChildChecked(nodes, node)) {\n nodes[node.refKey].checkAll = true;\n nodes[node.refKey].check = true;\n return _utils.CHECK_STATE.CHECK;\n }\n\n if (isSomeChildChecked(nodes, node, childrenKey)) {\n nodes[node.refKey].checkAll = false;\n return _utils.CHECK_STATE.INDETERMINATE;\n }\n\n return _utils.CHECK_STATE.UNCHECK;\n}\n\n//# sourceURL=webpack://rsuite/./src/CheckTreePicker/utils.ts?");
|
|
2093
2093
|
|
|
2094
2094
|
/***/ }),
|
|
2095
2095
|
|
|
@@ -2243,7 +2243,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
2243
2243
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2244
2244
|
|
|
2245
2245
|
"use strict";
|
|
2246
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.default = exports.CustomConsumer = exports.CustomContext = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react =
|
|
2246
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = exports.CustomConsumer = exports.CustomContext = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _prefix = __webpack_require__(/*! ../utils/prefix */ \"./src/utils/prefix.ts\");\n\nvar _DOMHelper = __webpack_require__(/*! ../DOMHelper */ \"./src/DOMHelper/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/CustomProvider/CustomProvider.tsx\",\n _this = void 0;\n\nvar CustomContext = /*#__PURE__*/_react.default.createContext({});\n\nexports.CustomContext = CustomContext;\nvar Consumer = CustomContext.Consumer,\n Provider = CustomContext.Provider;\nexports.CustomConsumer = Consumer;\nvar themes = ['light', 'dark', 'high-contrast'];\n\nvar CustomProvider = function CustomProvider(props) {\n var children = props.children,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? (0, _prefix.getClassNamePrefix)() : _props$classPrefix,\n theme = props.theme,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"children\", \"classPrefix\", \"theme\"]);\n\n var value = _react.default.useMemo(function () {\n return (0, _extends2.default)({\n classPrefix: classPrefix,\n theme: theme\n }, rest);\n }, [classPrefix, theme, rest]);\n\n (0, _react.useEffect)(function () {\n if (_DOMHelper.canUseDOM && theme) {\n (0, _DOMHelper.addClass)(document.body, (0, _prefix.prefix)(classPrefix, \"theme-\" + theme)); // Remove the className that will cause style conflicts\n\n themes.forEach(function (t) {\n if (t !== theme) {\n (0, _DOMHelper.removeClass)(document.body, (0, _prefix.prefix)(classPrefix, \"theme-\" + t));\n }\n });\n }\n }, [classPrefix, theme]);\n return /*#__PURE__*/_react.default.createElement(Provider, {\n value: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 77,\n columnNumber: 10\n }\n }, children);\n};\n\nvar _default = CustomProvider;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/CustomProvider/CustomProvider.tsx?");
|
|
2247
2247
|
|
|
2248
2248
|
/***/ }),
|
|
2249
2249
|
|
|
@@ -2298,7 +2298,7 @@ eval("\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar isElement
|
|
|
2298
2298
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2299
2299
|
|
|
2300
2300
|
"use strict";
|
|
2301
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _mapValues = _interopRequireDefault(__webpack_require__(/*! lodash/mapValues */ \"./node_modules/lodash/mapValues.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _Calendar = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Calendar */ \"./node_modules/@rsuite/icons/legacy/Calendar.js\"));\n\nvar _ClockO = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ClockO */ \"./node_modules/@rsuite/icons/legacy/ClockO.js\"));\n\nvar _Calendar2 = __webpack_require__(/*! ../Calendar */ \"./src/Calendar/index.tsx\");\n\nvar _useCalendarDate2 = _interopRequireDefault(__webpack_require__(/*! ../Calendar/useCalendarDate */ \"./src/Calendar/useCalendarDate.ts\"));\n\nvar _Toolbar = _interopRequireDefault(__webpack_require__(/*! ./Toolbar */ \"./src/DatePicker/Toolbar.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/DatePicker/utils.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DatePicker/DatePicker.tsx\",\n _this = void 0;\n\nvar DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n calendarDefaultDate = props.calendarDefaultDate,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n defaultValue = props.defaultValue,\n disabled = props.disabled,\n _props$format = props.format,\n formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n isoWeek = props.isoWeek,\n _props$limitEndYear = props.limitEndYear,\n limitEndYear = _props$limitEndYear === void 0 ? 1000 : _props$limitEndYear,\n overrideLocale = props.locale,\n menuClassName = props.menuClassName,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n oneTap = props.oneTap,\n _props$placeholder = props.placeholder,\n placeholder = _props$placeholder === void 0 ? '' : _props$placeholder,\n ranges = props.ranges,\n valueProp = props.value,\n showMeridian = props.showMeridian,\n showWeekNumbers = props.showWeekNumbers,\n style = props.style,\n toggleAs = props.toggleAs,\n disabledDateProp = props.disabledDate,\n renderValue = props.renderValue,\n onChange = props.onChange,\n onChangeCalendarDate = props.onChangeCalendarDate,\n onClean = props.onClean,\n onClose = props.onClose,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onNextMonth = props.onNextMonth,\n onOk = props.onOk,\n onOpen = props.onOpen,\n onPrevMonth = props.onPrevMonth,\n onSelect = props.onSelect,\n onToggleMonthDropdown = props.onToggleMonthDropdown,\n onToggleTimeDropdown = props.onToggleTimeDropdown,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"className\", \"classPrefix\", \"calendarDefaultDate\", \"cleanable\", \"defaultValue\", \"disabled\", \"format\", \"isoWeek\", \"limitEndYear\", \"locale\", \"menuClassName\", \"appearance\", \"placement\", \"oneTap\", \"placeholder\", \"ranges\", \"value\", \"showMeridian\", \"showWeekNumbers\", \"style\", \"toggleAs\", \"disabledDate\", \"renderValue\", \"onChange\", \"onChangeCalendarDate\", \"onClean\", \"onClose\", \"onEntered\", \"onExited\", \"onNextMonth\", \"onOk\", \"onOpen\", \"onPrevMonth\", \"onSelect\", \"onToggleMonthDropdown\", \"onToggleTimeDropdown\"]);\n\n var _useCustom = (0, _utils.useCustom)('DatePicker', overrideLocale),\n locale = _useCustom.locale,\n formatDate = _useCustom.formatDate,\n parseDate = _useCustom.parseDate;\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n\n var _useCalendarDate = (0, _useCalendarDate2.default)(valueProp, calendarDefaultDate),\n calendarDate = _useCalendarDate.calendarDate,\n setCalendarDate = _useCalendarDate.setCalendarDate;\n\n var _useState = (0, _react.useState)(),\n inputState = _useState[0],\n setInputState = _useState[1];\n\n var _useCalendarState = (0, _utils2.useCalendarState)(),\n calendarState = _useCalendarState.calendarState,\n reset = _useCalendarState.reset,\n openMonth = _useCalendarState.openMonth,\n openTime = _useCalendarState.openTime;\n\n var _useState2 = (0, _react.useState)(false),\n active = _useState2[0],\n setActive = _useState2[1];\n\n var triggerRef = (0, _react.useRef)(null);\n var rootRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n (0, _Picker.usePublicMethods)(ref, {\n rootRef: rootRef,\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n /**\n * Switch to the callback triggered after the next month.\n */\n\n var handleMoveForward = (0, _react.useCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n onNextMonth === null || onNextMonth === void 0 ? void 0 : onNextMonth(nextPageDate);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextPageDate);\n }, [onChangeCalendarDate, onNextMonth, setCalendarDate]);\n /**\n * Switch to the callback triggered after the previous month.\n */\n\n var handleMoveBackward = (0, _react.useCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n onPrevMonth === null || onPrevMonth === void 0 ? void 0 : onPrevMonth(nextPageDate);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextPageDate);\n }, [onChangeCalendarDate, onPrevMonth, setCalendarDate]);\n /**\n * The callback triggered when the date changes.\n */\n\n var handleDateChange = (0, _react.useCallback)(function (nextValue, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextValue, event);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextValue, event);\n }, [onChangeCalendarDate, onSelect]);\n /**\n * A callback triggered when the date on the calendar changes.\n */\n\n var handleChangePageDate = (0, _react.useCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n reset();\n handleDateChange(nextPageDate);\n }, [handleDateChange, reset, setCalendarDate]);\n /**\n * A callback triggered when the time on the calendar changes.\n */\n\n var handleChangePageTime = (0, _react.useCallback)(function (nextPageTime) {\n setCalendarDate(nextPageTime);\n handleDateChange(nextPageTime);\n }, [handleDateChange, setCalendarDate]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current, _triggerRef$current$c;\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$c = _triggerRef$current.close) === null || _triggerRef$current$c === void 0 ? void 0 : _triggerRef$current$c.call(_triggerRef$current);\n }, []);\n /**\n * The callback triggered when PM/AM is switched.\n */\n\n var handleToggleMeridian = (0, _react.useCallback)(function () {\n var hours = _utils.DateUtils.getHours(calendarDate);\n\n var nextHours = hours >= 12 ? hours - 12 : hours + 12;\n\n var nextDate = _utils.DateUtils.setHours(calendarDate, nextHours);\n\n setCalendarDate(nextDate);\n }, [calendarDate, setCalendarDate]);\n var updateValue = (0, _react.useCallback)(function (event, nextPageDate, closeOverlay) {\n if (closeOverlay === void 0) {\n closeOverlay = true;\n }\n\n var nextValue = !(0, _isNil.default)(nextPageDate) ? nextPageDate : calendarDate;\n setCalendarDate(nextValue || new Date());\n setValue(nextValue);\n\n if (nextValue !== value || !_utils.DateUtils.isSameDay(nextValue, value)) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n } // `closeOverlay` default value is `true`\n\n\n if (closeOverlay !== false) {\n handleClose();\n }\n }, [handleClose, onChange, calendarDate, setCalendarDate, setValue, value]);\n /**\n * The callback triggered after the date in the shortcut area is clicked.\n */\n\n var handleShortcutPageDate = (0, _react.useCallback)(function (value, closeOverlay, event) {\n updateValue(event, value, closeOverlay);\n handleDateChange(value, event);\n }, [handleDateChange, updateValue]);\n /**\n * The callback triggered after clicking the OK button.\n */\n\n var handleOK = (0, _react.useCallback)(function (event) {\n updateValue(event);\n onOk === null || onOk === void 0 ? void 0 : onOk(calendarDate, event);\n }, [updateValue, onOk, calendarDate]);\n /**\n * Toggle month selection panel\n */\n\n var handleMonthDropdown = (0, _react.useCallback)(function () {\n if (calendarState === _Calendar2.CalendarState.DROP_MONTH) {\n reset();\n } else {\n openMonth();\n }\n\n onToggleMonthDropdown === null || onToggleMonthDropdown === void 0 ? void 0 : onToggleMonthDropdown(calendarState !== _Calendar2.CalendarState.DROP_MONTH);\n }, [calendarState, onToggleMonthDropdown, openMonth, reset]);\n /**\n * Switch time selection panel\n */\n\n var handleTimeDropdown = (0, _react.useCallback)(function () {\n if (calendarState === _Calendar2.CalendarState.DROP_TIME) {\n reset();\n } else {\n openTime();\n }\n\n onToggleTimeDropdown === null || onToggleTimeDropdown === void 0 ? void 0 : onToggleTimeDropdown(calendarState !== _Calendar2.CalendarState.DROP_TIME);\n }, [calendarState, onToggleTimeDropdown, openTime, reset]);\n /**\n * Callback after clicking the clear button.\n */\n\n var handleClean = (0, _react.useCallback)(function (event) {\n setCalendarDate(new Date());\n updateValue(event, null);\n }, [setCalendarDate, updateValue]);\n /**\n * Handle keyboard events.\n */\n\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n triggerRef: triggerRef,\n targetRef: targetRef,\n active: active,\n onExit: handleClean\n }, rest));\n /**\n * Callback after the date is selected.\n */\n\n var handleSelect = (0, _react.useCallback)(function (nextValue, event, updatableValue) {\n if (updatableValue === void 0) {\n updatableValue = true;\n }\n\n setCalendarDate( // Determine whether the current value contains time, if not, use calendarDate.\n _utils.DateUtils.shouldTime(formatStr) ? nextValue : (0, _utils.composeFunctions)(function (d) {\n return _utils.DateUtils.setHours(d, _utils.DateUtils.getHours(calendarDate));\n }, function (d) {\n return _utils.DateUtils.setMinutes(d, _utils.DateUtils.getMinutes(calendarDate));\n }, function (d) {\n return _utils.DateUtils.setSeconds(d, _utils.DateUtils.getSeconds(calendarDate));\n })(nextValue));\n handleDateChange(nextValue);\n\n if (oneTap && updatableValue) {\n updateValue(event, nextValue);\n }\n }, [formatStr, handleDateChange, oneTap, calendarDate, setCalendarDate, updateValue]);\n var disabledDate = (0, _react.useCallback)(function (date) {\n var _disabledDateProp;\n\n return (_disabledDateProp = disabledDateProp === null || disabledDateProp === void 0 ? void 0 : disabledDateProp(date)) !== null && _disabledDateProp !== void 0 ? _disabledDateProp : false;\n }, [disabledDateProp]);\n /**\n * Callback after the input box value is changed.\n */\n\n var handleInputChange = (0, _react.useCallback)(function (value, event) {\n setInputState('Typing'); // isMatch('01/11/2020', 'MM/dd/yyyy') ==> true\n // isMatch('2020-11-01', 'MM/dd/yyyy') ==> false\n\n if (!_utils.DateUtils.isMatch(value, formatStr, {\n locale: locale.dateLocale\n })) {\n setInputState('Error');\n return;\n }\n\n var date = parseDate(value, formatStr); // If only the time is included in the characters, it will default to today.\n\n if (_utils.DateUtils.shouldOnlyTime(formatStr)) {\n date = new Date(_utils.DateUtils.format(new Date(), 'yyyy-MM-dd') + \" \" + value);\n }\n\n if (!_utils.DateUtils.isValid(date)) {\n setInputState('Error');\n return;\n }\n\n if (disabledDate(date)) {\n setInputState('Error');\n return;\n }\n\n handleSelect(date, event, false);\n }, [formatStr, locale, parseDate, disabledDate, handleSelect]);\n /**\n * The callback after the enter key is triggered on the input\n */\n\n var handleInputPressEnd = (0, _react.useCallback)(function (event) {\n if (inputState === 'Typing') {\n updateValue(event, calendarDate);\n }\n\n setInputState('Initial');\n }, [inputState, calendarDate, updateValue]);\n var handleEntered = (0, _react.useCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n reset();\n setActive(false);\n }, [onClose, reset]); // Check whether the time is within the time range of the shortcut option in the toolbar.\n\n var disabledToolbarHandle = (0, _react.useCallback)(function (date) {\n var _disabledDateProp2;\n\n var allowDate = (_disabledDateProp2 = disabledDateProp === null || disabledDateProp === void 0 ? void 0 : disabledDateProp(date)) !== null && _disabledDateProp2 !== void 0 ? _disabledDateProp2 : false;\n\n var allowTime = _utils.DateUtils.disabledTime(props, date);\n\n return allowDate || allowTime;\n }, [disabledDateProp, props]);\n var calendarProps = (0, _react.useMemo)(function () {\n return (0, _mapValues.default)((0, _pick.default)(props, _utils.DateUtils.calendarOnlyProps), function (disabledOrHiddenTimeFunc) {\n return function (next, date) {\n var _disabledOrHiddenTime;\n\n return (_disabledOrHiddenTime = disabledOrHiddenTimeFunc === null || disabledOrHiddenTimeFunc === void 0 ? void 0 : disabledOrHiddenTimeFunc(next, date)) !== null && _disabledOrHiddenTime !== void 0 ? _disabledOrHiddenTime : false;\n };\n });\n }, [props]);\n var inSameMonth = (0, _react.useCallback)(function (date) {\n return _utils.DateUtils.isSameMonth(date, calendarDate);\n }, [calendarDate]);\n\n var calendar = /*#__PURE__*/_react.default.createElement(_Calendar2.Calendar, (0, _extends2.default)({}, calendarProps, {\n locale: locale,\n showWeekNumbers: showWeekNumbers,\n showMeridian: showMeridian,\n disabledDate: disabledDate,\n limitEndYear: limitEndYear,\n format: formatStr,\n isoWeek: isoWeek,\n inSameMonth: inSameMonth,\n calendarState: calendarState,\n calendarDate: calendarDate,\n onMoveForward: handleMoveForward,\n onMoveBackward: handleMoveBackward,\n onSelect: handleSelect,\n onToggleMonthDropdown: handleMonthDropdown,\n onToggleTimeDropdown: handleTimeDropdown,\n onChangePageDate: handleChangePageDate,\n onChangePageTime: handleChangePageTime,\n onToggleMeridian: handleToggleMeridian,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 474,\n columnNumber: 7\n }\n }));\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(menuClassName, className, prefix('date-menu'));\n var styles = {\n left: left,\n top: top\n };\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n role: \"dialog\",\n className: classes,\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n style: styles,\n target: triggerRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 502,\n columnNumber: 9\n }\n }, calendar, /*#__PURE__*/_react.default.createElement(_Toolbar.default, {\n locale: locale,\n ranges: ranges,\n calendarDate: calendarDate,\n disabledOkBtn: disabledToolbarHandle,\n disabledShortcut: disabledToolbarHandle,\n onClickShortcut: handleShortcutPageDate,\n onOk: handleOK,\n hideOkBtn: oneTap,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 510,\n columnNumber: 11\n }\n }));\n };\n\n var hasValue = !!value;\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n name: 'date',\n appearance: appearance,\n hasValue: hasValue,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n\n var renderDate = (0, _react.useCallback)(function () {\n var _renderValue;\n\n if (!value) {\n return placeholder || formatStr;\n }\n\n return (_renderValue = renderValue === null || renderValue === void 0 ? void 0 : renderValue(value, formatStr)) !== null && _renderValue !== void 0 ? _renderValue : formatDate(value, formatStr);\n }, [formatStr, formatDate, placeholder, renderValue, value]);\n var caretAs = (0, _react.useMemo)(function () {\n return _utils.DateUtils.shouldOnlyTime(formatStr) ? _ClockO.default : _Calendar.default;\n }, [formatStr]);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n trigger: \"active\",\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEntered: (0, _utils.createChainedFunction)(handleEntered, onEntered),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 549,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: merge(className, classes),\n style: style,\n ref: rootRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 558,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, _utils.DateUtils.calendarOnlyProps)), {\n className: prefix({\n error: inputState === 'Error'\n }),\n as: toggleAs,\n ref: targetRef,\n appearance: appearance,\n input: true,\n inputValue: value ? formatDate(value, formatStr) : '',\n inputPlaceholder: typeof placeholder === 'string' && placeholder ? placeholder : formatStr,\n inputMask: _utils.DateUtils.getDateMask(formatStr),\n onInputChange: handleInputChange,\n onInputBlur: handleInputPressEnd,\n onInputPressEnter: handleInputPressEnd,\n onKeyDown: onPickerKeyDown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n disabled: disabled,\n caretAs: caretAs,\n \"aria-haspopup\": \"dialog\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 559,\n columnNumber: 11\n }\n }), renderDate())));\n});\n\nDatePicker.displayName = 'DatePicker';\nDatePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes, {\n calendarDefaultDate: _propTypes.default.instanceOf(Date),\n defaultValue: _propTypes.default.instanceOf(Date),\n disabledDate: _propTypes.default.func,\n disabledHours: _propTypes.default.func,\n disabledMinutes: _propTypes.default.func,\n disabledSeconds: _propTypes.default.func,\n format: _propTypes.default.string,\n hideHours: _propTypes.default.func,\n hideMinutes: _propTypes.default.func,\n hideSeconds: _propTypes.default.func,\n isoWeek: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n onChange: _propTypes.default.func,\n onChangeCalendarDate: _propTypes.default.func,\n onNextMonth: _propTypes.default.func,\n onOk: _propTypes.default.func,\n onPrevMonth: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onToggleMonthDropdown: _propTypes.default.func,\n onToggleTimeDropdown: _propTypes.default.func,\n oneTap: _propTypes.default.bool,\n panelContainerRef: _propTypes.default.any,\n ranges: _propTypes.default.array,\n showMeridian: _propTypes.default.bool,\n showWeekNumbers: _propTypes.default.bool,\n value: _propTypes.default.instanceOf(Date)\n});\nvar _default = DatePicker;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/DatePicker/DatePicker.tsx?");
|
|
2301
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _mapValues = _interopRequireDefault(__webpack_require__(/*! lodash/mapValues */ \"./node_modules/lodash/mapValues.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _Calendar = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Calendar */ \"./node_modules/@rsuite/icons/legacy/Calendar.js\"));\n\nvar _ClockO = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/ClockO */ \"./node_modules/@rsuite/icons/legacy/ClockO.js\"));\n\nvar _Calendar2 = __webpack_require__(/*! ../Calendar */ \"./src/Calendar/index.tsx\");\n\nvar _useCalendarDate2 = _interopRequireDefault(__webpack_require__(/*! ../Calendar/useCalendarDate */ \"./src/Calendar/useCalendarDate.ts\"));\n\nvar _Toolbar = _interopRequireDefault(__webpack_require__(/*! ./Toolbar */ \"./src/DatePicker/Toolbar.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _utils2 = __webpack_require__(/*! ./utils */ \"./src/DatePicker/utils.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/DatePicker/DatePicker.tsx\",\n _this = void 0;\n\nvar DatePicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n calendarDefaultDate = props.calendarDefaultDate,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n defaultValue = props.defaultValue,\n disabled = props.disabled,\n _props$format = props.format,\n formatStr = _props$format === void 0 ? 'yyyy-MM-dd' : _props$format,\n isoWeek = props.isoWeek,\n _props$limitEndYear = props.limitEndYear,\n limitEndYear = _props$limitEndYear === void 0 ? 1000 : _props$limitEndYear,\n overrideLocale = props.locale,\n menuClassName = props.menuClassName,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n oneTap = props.oneTap,\n _props$placeholder = props.placeholder,\n placeholder = _props$placeholder === void 0 ? '' : _props$placeholder,\n ranges = props.ranges,\n valueProp = props.value,\n showMeridian = props.showMeridian,\n showWeekNumbers = props.showWeekNumbers,\n style = props.style,\n toggleAs = props.toggleAs,\n disabledDateProp = props.disabledDate,\n renderValue = props.renderValue,\n onChange = props.onChange,\n onChangeCalendarDate = props.onChangeCalendarDate,\n onClean = props.onClean,\n onClose = props.onClose,\n onEntered = props.onEntered,\n onExited = props.onExited,\n onNextMonth = props.onNextMonth,\n onOk = props.onOk,\n onOpen = props.onOpen,\n onPrevMonth = props.onPrevMonth,\n onSelect = props.onSelect,\n onToggleMonthDropdown = props.onToggleMonthDropdown,\n onToggleTimeDropdown = props.onToggleTimeDropdown,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"className\", \"classPrefix\", \"calendarDefaultDate\", \"cleanable\", \"defaultValue\", \"disabled\", \"format\", \"isoWeek\", \"limitEndYear\", \"locale\", \"menuClassName\", \"appearance\", \"placement\", \"oneTap\", \"placeholder\", \"ranges\", \"value\", \"showMeridian\", \"showWeekNumbers\", \"style\", \"toggleAs\", \"disabledDate\", \"renderValue\", \"onChange\", \"onChangeCalendarDate\", \"onClean\", \"onClose\", \"onEntered\", \"onExited\", \"onNextMonth\", \"onOk\", \"onOpen\", \"onPrevMonth\", \"onSelect\", \"onToggleMonthDropdown\", \"onToggleTimeDropdown\"]);\n\n var _useCustom = (0, _utils.useCustom)('DatePicker', overrideLocale),\n locale = _useCustom.locale,\n formatDate = _useCustom.formatDate,\n parseDate = _useCustom.parseDate;\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n\n var _useControlled = (0, _utils.useControlled)(valueProp, defaultValue),\n value = _useControlled[0],\n setValue = _useControlled[1];\n\n var _useCalendarDate = (0, _useCalendarDate2.default)(valueProp, calendarDefaultDate),\n calendarDate = _useCalendarDate.calendarDate,\n setCalendarDate = _useCalendarDate.setCalendarDate;\n\n var _useState = (0, _react.useState)(),\n inputState = _useState[0],\n setInputState = _useState[1];\n\n var _useCalendarState = (0, _utils2.useCalendarState)(),\n calendarState = _useCalendarState.calendarState,\n reset = _useCalendarState.reset,\n openMonth = _useCalendarState.openMonth,\n openTime = _useCalendarState.openTime;\n\n var _useState2 = (0, _react.useState)(false),\n active = _useState2[0],\n setActive = _useState2[1];\n\n var triggerRef = (0, _react.useRef)(null);\n var rootRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n (0, _Picker.usePublicMethods)(ref, {\n rootRef: rootRef,\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n /**\n * Switch to the callback triggered after the next month.\n */\n\n var handleMoveForward = (0, _react.useCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n onNextMonth === null || onNextMonth === void 0 ? void 0 : onNextMonth(nextPageDate);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextPageDate);\n }, [onChangeCalendarDate, onNextMonth, setCalendarDate]);\n /**\n * Switch to the callback triggered after the previous month.\n */\n\n var handleMoveBackward = (0, _react.useCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n onPrevMonth === null || onPrevMonth === void 0 ? void 0 : onPrevMonth(nextPageDate);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextPageDate);\n }, [onChangeCalendarDate, onPrevMonth, setCalendarDate]);\n /**\n * The callback triggered when the date changes.\n */\n\n var handleDateChange = (0, _react.useCallback)(function (nextValue, event) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextValue, event);\n onChangeCalendarDate === null || onChangeCalendarDate === void 0 ? void 0 : onChangeCalendarDate(nextValue, event);\n }, [onChangeCalendarDate, onSelect]);\n /**\n * A callback triggered when the date on the calendar changes.\n */\n\n var handleChangePageDate = (0, _react.useCallback)(function (nextPageDate) {\n setCalendarDate(nextPageDate);\n reset();\n handleDateChange(nextPageDate);\n }, [handleDateChange, reset, setCalendarDate]);\n /**\n * A callback triggered when the time on the calendar changes.\n */\n\n var handleChangePageTime = (0, _react.useCallback)(function (nextPageTime) {\n setCalendarDate(nextPageTime);\n handleDateChange(nextPageTime);\n }, [handleDateChange, setCalendarDate]);\n var handleClose = (0, _react.useCallback)(function () {\n var _triggerRef$current, _triggerRef$current$c;\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$c = _triggerRef$current.close) === null || _triggerRef$current$c === void 0 ? void 0 : _triggerRef$current$c.call(_triggerRef$current);\n }, []);\n /**\n * The callback triggered when PM/AM is switched.\n */\n\n var handleToggleMeridian = (0, _react.useCallback)(function () {\n var hours = _utils.DateUtils.getHours(calendarDate);\n\n var nextHours = hours >= 12 ? hours - 12 : hours + 12;\n\n var nextDate = _utils.DateUtils.setHours(calendarDate, nextHours);\n\n setCalendarDate(nextDate);\n }, [calendarDate, setCalendarDate]);\n var updateValue = (0, _react.useCallback)(function (event, nextPageDate, closeOverlay) {\n if (closeOverlay === void 0) {\n closeOverlay = true;\n }\n\n var nextValue = typeof nextPageDate !== 'undefined' ? nextPageDate : calendarDate;\n setCalendarDate(nextValue || new Date());\n setValue(nextValue);\n\n if (nextValue !== value) {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n } // `closeOverlay` default value is `true`\n\n\n if (closeOverlay !== false) {\n handleClose();\n }\n }, [handleClose, onChange, calendarDate, setCalendarDate, setValue, value]);\n /**\n * The callback triggered after the date in the shortcut area is clicked.\n */\n\n var handleShortcutPageDate = (0, _react.useCallback)(function (value, closeOverlay, event) {\n updateValue(event, value, closeOverlay);\n handleDateChange(value, event);\n }, [handleDateChange, updateValue]);\n /**\n * The callback triggered after clicking the OK button.\n */\n\n var handleOK = (0, _react.useCallback)(function (event) {\n updateValue(event);\n onOk === null || onOk === void 0 ? void 0 : onOk(calendarDate, event);\n }, [updateValue, onOk, calendarDate]);\n /**\n * Toggle month selection panel\n */\n\n var handleMonthDropdown = (0, _react.useCallback)(function () {\n if (calendarState === _Calendar2.CalendarState.DROP_MONTH) {\n reset();\n } else {\n openMonth();\n }\n\n onToggleMonthDropdown === null || onToggleMonthDropdown === void 0 ? void 0 : onToggleMonthDropdown(calendarState !== _Calendar2.CalendarState.DROP_MONTH);\n }, [calendarState, onToggleMonthDropdown, openMonth, reset]);\n /**\n * Switch time selection panel\n */\n\n var handleTimeDropdown = (0, _react.useCallback)(function () {\n if (calendarState === _Calendar2.CalendarState.DROP_TIME) {\n reset();\n } else {\n openTime();\n }\n\n onToggleTimeDropdown === null || onToggleTimeDropdown === void 0 ? void 0 : onToggleTimeDropdown(calendarState !== _Calendar2.CalendarState.DROP_TIME);\n }, [calendarState, onToggleTimeDropdown, openTime, reset]);\n /**\n * Callback after clicking the clear button.\n */\n\n var handleClean = (0, _react.useCallback)(function (event) {\n setCalendarDate(new Date());\n updateValue(event, null);\n }, [setCalendarDate, updateValue]);\n /**\n * Handle keyboard events.\n */\n\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({\n triggerRef: triggerRef,\n targetRef: targetRef,\n active: active,\n onExit: handleClean\n }, rest));\n /**\n * Callback after the date is selected.\n */\n\n var handleSelect = (0, _react.useCallback)(function (nextValue, event, updatableValue) {\n if (updatableValue === void 0) {\n updatableValue = true;\n }\n\n setCalendarDate( // Determine whether the current value contains time, if not, use calendarDate.\n _utils.DateUtils.shouldTime(formatStr) ? nextValue : (0, _utils.composeFunctions)(function (d) {\n return _utils.DateUtils.setHours(d, _utils.DateUtils.getHours(calendarDate));\n }, function (d) {\n return _utils.DateUtils.setMinutes(d, _utils.DateUtils.getMinutes(calendarDate));\n }, function (d) {\n return _utils.DateUtils.setSeconds(d, _utils.DateUtils.getSeconds(calendarDate));\n })(nextValue));\n handleDateChange(nextValue);\n\n if (oneTap && updatableValue) {\n updateValue(event, nextValue);\n }\n }, [formatStr, handleDateChange, oneTap, calendarDate, setCalendarDate, updateValue]);\n var disabledDate = (0, _react.useCallback)(function (date) {\n var _disabledDateProp;\n\n return (_disabledDateProp = disabledDateProp === null || disabledDateProp === void 0 ? void 0 : disabledDateProp(date)) !== null && _disabledDateProp !== void 0 ? _disabledDateProp : false;\n }, [disabledDateProp]);\n /**\n * Callback after the input box value is changed.\n */\n\n var handleInputChange = (0, _react.useCallback)(function (value, event) {\n setInputState('Typing'); // isMatch('01/11/2020', 'MM/dd/yyyy') ==> true\n // isMatch('2020-11-01', 'MM/dd/yyyy') ==> false\n\n if (!_utils.DateUtils.isMatch(value, formatStr, {\n locale: locale.dateLocale\n })) {\n setInputState('Error');\n return;\n }\n\n var date = parseDate(value, formatStr); // If only the time is included in the characters, it will default to today.\n\n if (_utils.DateUtils.shouldOnlyTime(formatStr)) {\n date = new Date(_utils.DateUtils.format(new Date(), 'yyyy-MM-dd') + \" \" + value);\n }\n\n if (!_utils.DateUtils.isValid(date)) {\n setInputState('Error');\n return;\n }\n\n if (disabledDate(date)) {\n setInputState('Error');\n return;\n }\n\n handleSelect(date, event, false);\n }, [formatStr, locale, parseDate, disabledDate, handleSelect]);\n /**\n * The callback after the enter key is triggered on the input\n */\n\n var handleInputPressEnd = (0, _react.useCallback)(function (event) {\n if (inputState === 'Typing') {\n updateValue(event, calendarDate);\n }\n\n setInputState('Initial');\n }, [inputState, calendarDate, updateValue]);\n var handleEntered = (0, _react.useCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n reset();\n setActive(false);\n }, [onClose, reset]); // Check whether the time is within the time range of the shortcut option in the toolbar.\n\n var disabledToolbarHandle = (0, _react.useCallback)(function (date) {\n var _disabledDateProp2;\n\n var allowDate = (_disabledDateProp2 = disabledDateProp === null || disabledDateProp === void 0 ? void 0 : disabledDateProp(date)) !== null && _disabledDateProp2 !== void 0 ? _disabledDateProp2 : false;\n\n var allowTime = _utils.DateUtils.disabledTime(props, date);\n\n return allowDate || allowTime;\n }, [disabledDateProp, props]);\n var calendarProps = (0, _react.useMemo)(function () {\n return (0, _mapValues.default)((0, _pick.default)(props, _utils.DateUtils.calendarOnlyProps), function (disabledOrHiddenTimeFunc) {\n return function (next, date) {\n var _disabledOrHiddenTime;\n\n return (_disabledOrHiddenTime = disabledOrHiddenTimeFunc === null || disabledOrHiddenTimeFunc === void 0 ? void 0 : disabledOrHiddenTimeFunc(next, date)) !== null && _disabledOrHiddenTime !== void 0 ? _disabledOrHiddenTime : false;\n };\n });\n }, [props]);\n var inSameMonth = (0, _react.useCallback)(function (date) {\n return _utils.DateUtils.isSameMonth(date, calendarDate);\n }, [calendarDate]);\n\n var calendar = /*#__PURE__*/_react.default.createElement(_Calendar2.Calendar, (0, _extends2.default)({}, calendarProps, {\n locale: locale,\n showWeekNumbers: showWeekNumbers,\n showMeridian: showMeridian,\n disabledDate: disabledDate,\n limitEndYear: limitEndYear,\n format: formatStr,\n isoWeek: isoWeek,\n inSameMonth: inSameMonth,\n calendarState: calendarState,\n calendarDate: calendarDate,\n onMoveForward: handleMoveForward,\n onMoveBackward: handleMoveBackward,\n onSelect: handleSelect,\n onToggleMonthDropdown: handleMonthDropdown,\n onToggleTimeDropdown: handleTimeDropdown,\n onChangePageDate: handleChangePageDate,\n onChangePageTime: handleChangePageTime,\n onToggleMeridian: handleToggleMeridian,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 474,\n columnNumber: 7\n }\n }));\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var left = positionProps.left,\n top = positionProps.top,\n className = positionProps.className;\n var classes = merge(menuClassName, className, prefix('date-menu'));\n var styles = {\n left: left,\n top: top\n };\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n role: \"dialog\",\n className: classes,\n ref: (0, _utils.mergeRefs)(overlayRef, speakerRef),\n style: styles,\n target: triggerRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 502,\n columnNumber: 9\n }\n }, calendar, /*#__PURE__*/_react.default.createElement(_Toolbar.default, {\n locale: locale,\n ranges: ranges,\n calendarDate: calendarDate,\n disabledOkBtn: disabledToolbarHandle,\n disabledShortcut: disabledToolbarHandle,\n onClickShortcut: handleShortcutPageDate,\n onOk: handleOK,\n hideOkBtn: oneTap,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 510,\n columnNumber: 11\n }\n }));\n };\n\n var hasValue = !!value;\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {\n classPrefix: classPrefix,\n name: 'date',\n appearance: appearance,\n hasValue: hasValue,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n\n var renderDate = (0, _react.useCallback)(function () {\n var _renderValue;\n\n if (!value) {\n return placeholder || formatStr;\n }\n\n return (_renderValue = renderValue === null || renderValue === void 0 ? void 0 : renderValue(value, formatStr)) !== null && _renderValue !== void 0 ? _renderValue : formatDate(value, formatStr);\n }, [formatStr, formatDate, placeholder, renderValue, value]);\n var caretAs = (0, _react.useMemo)(function () {\n return _utils.DateUtils.shouldOnlyTime(formatStr) ? _ClockO.default : _Calendar.default;\n }, [formatStr]);\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n trigger: \"active\",\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEntered: (0, _utils.createChainedFunction)(handleEntered, onEntered),\n onExited: (0, _utils.createChainedFunction)(handleExited, onExited),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 549,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: merge(className, classes),\n style: style,\n ref: rootRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 558,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys, _utils.DateUtils.calendarOnlyProps)), {\n className: prefix({\n error: inputState === 'Error'\n }),\n as: toggleAs,\n ref: targetRef,\n appearance: appearance,\n input: true,\n inputValue: value ? formatDate(value, formatStr) : '',\n inputPlaceholder: typeof placeholder === 'string' && placeholder ? placeholder : formatStr,\n inputMask: _utils.DateUtils.getDateMask(formatStr),\n onInputChange: handleInputChange,\n onInputBlur: handleInputPressEnd,\n onInputPressEnter: handleInputPressEnd,\n onKeyDown: onPickerKeyDown,\n onClean: (0, _utils.createChainedFunction)(handleClean, onClean),\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n disabled: disabled,\n caretAs: caretAs,\n \"aria-haspopup\": \"dialog\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 559,\n columnNumber: 11\n }\n }), renderDate())));\n});\n\nDatePicker.displayName = 'DatePicker';\nDatePicker.propTypes = (0, _extends2.default)({}, _Picker.pickerPropTypes, {\n calendarDefaultDate: _propTypes.default.instanceOf(Date),\n defaultValue: _propTypes.default.instanceOf(Date),\n disabledDate: _propTypes.default.func,\n disabledHours: _propTypes.default.func,\n disabledMinutes: _propTypes.default.func,\n disabledSeconds: _propTypes.default.func,\n format: _propTypes.default.string,\n hideHours: _propTypes.default.func,\n hideMinutes: _propTypes.default.func,\n hideSeconds: _propTypes.default.func,\n isoWeek: _propTypes.default.bool,\n limitEndYear: _propTypes.default.number,\n onChange: _propTypes.default.func,\n onChangeCalendarDate: _propTypes.default.func,\n onNextMonth: _propTypes.default.func,\n onOk: _propTypes.default.func,\n onPrevMonth: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onToggleMonthDropdown: _propTypes.default.func,\n onToggleTimeDropdown: _propTypes.default.func,\n oneTap: _propTypes.default.bool,\n panelContainerRef: _propTypes.default.any,\n ranges: _propTypes.default.array,\n showMeridian: _propTypes.default.bool,\n showWeekNumbers: _propTypes.default.bool,\n value: _propTypes.default.instanceOf(Date)\n});\nvar _default = DatePicker;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/DatePicker/DatePicker.tsx?");
|
|
2302
2302
|
|
|
2303
2303
|
/***/ }),
|
|
2304
2304
|
|
|
@@ -2540,7 +2540,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
2540
2540
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2541
2541
|
|
|
2542
2542
|
"use strict";
|
|
2543
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _Menu = _interopRequireDefault(__webpack_require__(/*! ../Menu/Menu */ \"./src/Menu/Menu.tsx\"));\n\nvar _MenuItem = _interopRequireDefault(__webpack_require__(/*! ../Menu/MenuItem */ \"./src/Menu/MenuItem.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _Sidenav = __webpack_require__(/*! ../Sidenav/Sidenav */ \"./src/Sidenav/Sidenav.tsx\");\n\nvar _AngleLeft = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleLeft */ \"./node_modules/@rsuite/icons/legacy/AngleLeft.js\"));\n\nvar _AngleRight = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleRight */ \"./node_modules/@rsuite/icons/legacy/AngleRight.js\"));\n\nvar _useCustom2 = _interopRequireDefault(__webpack_require__(/*! ../utils/useCustom */ \"./src/utils/useCustom.ts\"));\n\nvar _DropdownContext = _interopRequireDefault(__webpack_require__(/*! ./DropdownContext */ \"./src/Dropdown/DropdownContext.ts\"));\n\nvar _Navbar = __webpack_require__(/*! ../Navbar */ \"./src/Navbar/index.tsx\");\n\nvar _Menubar = _interopRequireDefault(__webpack_require__(/*! ../Menu/Menubar */ \"./src/Menu/Menubar.tsx\"));\n\nvar _SidenavDropdownMenu = _interopRequireDefault(__webpack_require__(/*! ../Sidenav/SidenavDropdownMenu */ \"./src/Sidenav/SidenavDropdownMenu.tsx\"));\n\nvar _Disclosure = _interopRequireDefault(__webpack_require__(/*! ../Disclosure */ \"./src/Disclosure/index.tsx\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Dropdown/DropdownMenu.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2,\n _templateObject3,\n _templateObject4;\n\n/**\n * The <Dropdown.Menu> API\n *\n * @description\n * Note the difference between this component and <Menu> component:\n * <Menu> is used for ARIA menu control logic and is used internally only.\n * This component is only used for supporting submenu syntax and is\n * assigned to Dropdown.Menu\n *\n * @example\n *\n * <Dropdown>\n * <Dropdown.Item>Item 1</Dropdown.Item>\n * <Dropdown.Menu title=\"Submenu\">\n * <Dropdown.Item>Sub item</Dropdown.Item>\n * </Dropdown.Menu>\n * </Dropdown>\n */\nvar DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var onToggle = props.onToggle,\n eventKey = props.eventKey,\n title = props.title,\n activeKey = props.activeKey,\n onSelect = props.onSelect,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu' : _props$classPrefix,\n children = props.children,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"onToggle\", \"eventKey\", \"title\", \"activeKey\", \"onSelect\", \"classPrefix\", \"children\"]);\n var dropdown = (0, _react.useContext)(_DropdownContext.default);\n var sidenav = (0, _react.useContext)(_Sidenav.SidenavContext);\n var withinNavbar = Boolean((0, _react.useContext)(_Navbar.NavbarContext));\n\n var _useCustom = (0, _useCustom2.default)('DropdownMenu'),\n rtl = _useCustom.rtl;\n\n var handleToggleSubmenu = (0, _react.useCallback)(function (_, event) {\n onToggle === null || onToggle === void 0 ? void 0 : onToggle(eventKey, event);\n }, [eventKey, onToggle]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix,\n withClassPrefix = _useClassNames.withClassPrefix;\n\n var _useClassNames2 = (0, _utils.useClassNames)('dropdown-menu'),\n withMenuClassPrefix = _useClassNames2.withClassPrefix,\n mergeMenuClassName = _useClassNames2.merge;\n\n var _useClassNames3 = (0, _utils.useClassNames)('dropdown-item'),\n mergeItemClassNames = _useClassNames3.merge,\n withItemClassPrefix = _useClassNames3.withClassPrefix,\n prefixItemClassName = _useClassNames3.prefix;\n\n var contextValue = (0, _react.useMemo)(function () {\n return {\n activeKey: activeKey,\n onSelect: onSelect\n };\n }, [activeKey, onSelect]); // <Dropdown.Menu> is used outside of <Dropdown>\n // renders a vertical `menubar`\n\n if (!dropdown) {\n var classes = merge(props.className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 108,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Menubar.default, {\n vertical: true,\n onActivateItem: function onActivateItem(event) {\n var _dataset = event.target.dataset,\n eventKey = _dataset.eventKey,\n eventKeyType = _dataset.eventKeyType; // Only cast number type for now\n\n var eventKeyToEmit = eventKeyType === 'number' ? Number(eventKey) : eventKey;\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(eventKeyToEmit, event);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 109,\n columnNumber: 9\n }\n }, function (menubar, menubarRef) {\n return /*#__PURE__*/_react.default.createElement(\"ul\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(menubarRef, ref),\n className: classes\n }, menubar, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 120,\n columnNumber: 13\n }\n }), children);\n }));\n }\n\n if (sidenav !== null && sidenav !== void 0 && sidenav.expanded) {\n return /*#__PURE__*/_react.default.createElement(_SidenavDropdownMenu.default, (0, _extends2.default)({}, (0, _omit2.default)(props, 'classPrefix'), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 129,\n columnNumber: 12\n }\n }));\n } // Parent menu exists. This is a submenu.\n // Should render a `menuitem` that controls this submenu.\n\n\n var _omit = (0, _omit2.default)(rest, ['trigger']),\n icon = _omit.icon,\n className = _omit.className,\n disabled = _omit.disabled,\n menuProps = (0, _objectWithoutPropertiesLoose2.default)(_omit, [\"icon\", \"className\", \"disabled\"]);\n\n var Icon = rtl ? _AngleLeft.default : _AngleRight.default; // Renders a disclosure when used within <Navbar>\n\n if (withinNavbar) {\n return /*#__PURE__*/_react.default.createElement(_Disclosure.default, {\n hideOnClickOutside: true,\n trigger: ['click', 'mouseover'],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 141,\n columnNumber: 7\n }\n }, function (_ref, containerRef) {\n var open = _ref.open,\n props = (0, _objectWithoutPropertiesLoose2.default)(_ref, [\"open\"]);\n var classes = mergeItemClassNames(className, withItemClassPrefix({\n disabled: disabled,\n open: open,\n submenu: true // focus: hasFocus\n\n }));\n return /*#__PURE__*/_react.default.createElement(\"li\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(ref, containerRef),\n className: classes\n }, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 153,\n columnNumber: 13\n }\n }), /*#__PURE__*/_react.default.createElement(_Disclosure.default.Button, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 154,\n columnNumber: 15\n }\n }, function (_ref2, buttonRef) {\n var open = _ref2.open,\n buttonProps = (0, _objectWithoutPropertiesLoose2.default)(_ref2, [\"open\"]);\n var classes = mergeItemClassNames(className, prefixItemClassName(\"pull-\" + (rtl ? 'left' : 'right')), prefixItemClassName(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"toggle\"]))), // prefixItemClassName`submenu`,\n withItemClassPrefix({\n 'with-icon': icon,\n open: open,\n // active: selected,\n disabled: disabled // focus: active\n\n }));\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(buttonRef, buttonRef),\n className: classes,\n \"data-event-key\": eventKey,\n \"data-event-key-type\": typeof eventKey\n }, buttonProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 171,\n columnNumber: 21\n }\n }), icon && /*#__PURE__*/_react.default.cloneElement(icon, {\n className: prefix('menu-icon')\n }), title, /*#__PURE__*/_react.default.createElement(Icon, {\n className: prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"toggle-icon\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 180,\n columnNumber: 23\n }\n }));\n }), /*#__PURE__*/_react.default.createElement(_Disclosure.default.Content, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 185,\n columnNumber: 15\n }\n }, function (_ref3, elementRef) {\n var open = _ref3.open;\n var menuClassName = mergeMenuClassName(className, withMenuClassPrefix());\n return /*#__PURE__*/_react.default.createElement(\"ul\", (0, _extends2.default)({\n ref: elementRef,\n className: menuClassName,\n hidden: !open\n }, menuProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 190,\n columnNumber: 21\n }\n }), children);\n }));\n });\n }\n\n return /*#__PURE__*/_react.default.createElement(_Menu.default, {\n openMenuOn: ['mouseover', 'click'],\n renderMenuButton: function renderMenuButton(_ref4, buttonRef) {\n var open = _ref4.open,\n menuButtonProps = (0, _objectWithoutPropertiesLoose2.default)(_ref4, [\"open\"]);\n return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {\n disabled: disabled,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 212,\n columnNumber: 9\n }\n }, function (_ref5, menuitemRef) {\n var selected = _ref5.selected,\n active = _ref5.active,\n menuitem = (0, _objectWithoutPropertiesLoose2.default)(_ref5, [\"selected\", \"active\"]);\n var classes = mergeItemClassNames(className, prefixItemClassName(\"pull-\" + (rtl ? 'left' : 'right')), prefixItemClassName(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)([\"toggle\"]))), // prefixItemClassName`submenu`,\n withItemClassPrefix({\n 'with-icon': icon,\n open: open,\n active: selected,\n disabled: disabled,\n focus: active\n }));\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(buttonRef, menuitemRef),\n className: classes,\n \"data-event-key\": eventKey,\n \"data-event-key-type\": typeof eventKey\n }, menuitem, (0, _omit2.default)(menuButtonProps, ['role']), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 229,\n columnNumber: 15\n }\n }), icon && /*#__PURE__*/_react.default.cloneElement(icon, {\n className: prefix('menu-icon')\n }), title, /*#__PURE__*/_react.default.createElement(Icon, {\n className: prefix(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)([\"toggle-icon\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 239,\n columnNumber: 17\n }\n }));\n });\n },\n renderMenuPopup: function renderMenuPopup(_ref6, popupRef) {\n var open = _ref6.open,\n popupProps = (0, _objectWithoutPropertiesLoose2.default)(_ref6, [\"open\"]);\n var menuClassName = mergeMenuClassName(className, withMenuClassPrefix());\n return /*#__PURE__*/_react.default.createElement(\"ul\", (0, _extends2.default)({\n ref: popupRef,\n className: menuClassName,\n hidden: !open\n }, popupProps, menuProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 249,\n columnNumber: 11\n }\n }), children);\n },\n onToggleMenu: handleToggleSubmenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 209,\n columnNumber: 5\n }\n }, function (_ref7, menuContainerRef) {\n var open = _ref7.open,\n menuContainer = (0, _objectWithoutPropertiesLoose2.default)(_ref7, [\"open\"]);\n var classes = mergeItemClassNames(className, withItemClassPrefix({\n disabled: disabled,\n open: open,\n submenu: true // focus: hasFocus\n\n }));\n return /*#__PURE__*/_react.default.createElement(\"li\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(ref, menuContainerRef),\n className: classes\n }, menuContainer, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 273,\n columnNumber: 11\n }\n }));\n });\n});\n\nDropdownMenu.displayName = 'Dropdown.Menu';\nDropdownMenu.propTypes = {\n active: _propTypes.default.bool,\n activeKey: _propTypes.default.any,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n icon: _propTypes.default.any,\n classPrefix: _propTypes.default.string,\n pullLeft: _propTypes.default.bool,\n title: _propTypes.default.node,\n open: _propTypes.default.bool,\n trigger: _propTypes.default.oneOf(['click', 'hover']),\n eventKey: _propTypes.default.any,\n expanded: _propTypes.default.bool,\n collapsible: _propTypes.default.bool,\n onSelect: _propTypes.default.func,\n onToggle: _propTypes.default.func\n};\nvar _default = DropdownMenu;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Dropdown/DropdownMenu.tsx?");
|
|
2543
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _omit2 = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _Menu = _interopRequireDefault(__webpack_require__(/*! ../Menu/Menu */ \"./src/Menu/Menu.tsx\"));\n\nvar _MenuItem = _interopRequireDefault(__webpack_require__(/*! ../Menu/MenuItem */ \"./src/Menu/MenuItem.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _Sidenav = __webpack_require__(/*! ../Sidenav/Sidenav */ \"./src/Sidenav/Sidenav.tsx\");\n\nvar _AngleLeft = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleLeft */ \"./node_modules/@rsuite/icons/legacy/AngleLeft.js\"));\n\nvar _AngleRight = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/AngleRight */ \"./node_modules/@rsuite/icons/legacy/AngleRight.js\"));\n\nvar _useCustom2 = _interopRequireDefault(__webpack_require__(/*! ../utils/useCustom */ \"./src/utils/useCustom.ts\"));\n\nvar _DropdownContext = _interopRequireDefault(__webpack_require__(/*! ./DropdownContext */ \"./src/Dropdown/DropdownContext.ts\"));\n\nvar _Navbar = __webpack_require__(/*! ../Navbar */ \"./src/Navbar/index.tsx\");\n\nvar _Menubar = _interopRequireDefault(__webpack_require__(/*! ../Menu/Menubar */ \"./src/Menu/Menubar.tsx\"));\n\nvar _SidenavDropdownMenu = _interopRequireDefault(__webpack_require__(/*! ../Sidenav/SidenavDropdownMenu */ \"./src/Sidenav/SidenavDropdownMenu.tsx\"));\n\nvar _Disclosure = _interopRequireDefault(__webpack_require__(/*! ../Disclosure */ \"./src/Disclosure/index.tsx\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Dropdown/DropdownMenu.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2,\n _templateObject3,\n _templateObject4;\n\n/**\n * The <Dropdown.Menu> API\n *\n * @description\n * Note the difference between this component and <Menu> component:\n * <Menu> is used for ARIA menu control logic and is used internally only.\n * This component is only used for supporting submenu syntax and is\n * assigned to Dropdown.Menu\n *\n * @example\n *\n * <Dropdown>\n * <Dropdown.Item>Item 1</Dropdown.Item>\n * <Dropdown.Menu title=\"Submenu\">\n * <Dropdown.Item>Sub item</Dropdown.Item>\n * </Dropdown.Menu>\n * </Dropdown>\n */\nvar DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var onToggle = props.onToggle,\n eventKey = props.eventKey,\n title = props.title,\n activeKey = props.activeKey,\n onSelect = props.onSelect,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu' : _props$classPrefix,\n children = props.children,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"onToggle\", \"eventKey\", \"title\", \"activeKey\", \"onSelect\", \"classPrefix\", \"children\"]);\n var dropdown = (0, _react.useContext)(_DropdownContext.default);\n var sidenav = (0, _react.useContext)(_Sidenav.SidenavContext);\n var withinNavbar = Boolean((0, _react.useContext)(_Navbar.NavbarContext));\n\n var _useCustom = (0, _useCustom2.default)('DropdownMenu'),\n rtl = _useCustom.rtl;\n\n var handleToggleSubmenu = (0, _react.useCallback)(function (_, event) {\n onToggle === null || onToggle === void 0 ? void 0 : onToggle(eventKey, event);\n }, [eventKey, onToggle]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix,\n withClassPrefix = _useClassNames.withClassPrefix;\n\n var _useClassNames2 = (0, _utils.useClassNames)('dropdown-menu'),\n withMenuClassPrefix = _useClassNames2.withClassPrefix,\n mergeMenuClassName = _useClassNames2.merge;\n\n var _useClassNames3 = (0, _utils.useClassNames)('dropdown-item'),\n mergeItemClassNames = _useClassNames3.merge,\n withItemClassPrefix = _useClassNames3.withClassPrefix,\n prefixItemClassName = _useClassNames3.prefix;\n\n var contextValue = (0, _react.useMemo)(function () {\n return {\n activeKey: activeKey,\n onSelect: onSelect\n };\n }, [activeKey, onSelect]); // <Dropdown.Menu> is used outside of <Dropdown>\n // renders a vertical `menubar`\n\n if (!dropdown) {\n var classes = merge(props.className, withClassPrefix());\n return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 108,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Menubar.default, {\n vertical: true,\n onActivateItem: function onActivateItem(event) {\n var _dataset = event.target.dataset,\n eventKey = _dataset.eventKey,\n eventKeyType = _dataset.eventKeyType; // Only cast number type for now\n\n var eventKeyToEmit = eventKeyType === 'number' ? Number(eventKey) : eventKey;\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(eventKeyToEmit, event);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 109,\n columnNumber: 9\n }\n }, function (menubar, menubarRef) {\n return /*#__PURE__*/_react.default.createElement(\"ul\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(menubarRef, ref),\n className: classes\n }, menubar, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 120,\n columnNumber: 13\n }\n }), children);\n }));\n }\n\n if (sidenav !== null && sidenav !== void 0 && sidenav.expanded) {\n return /*#__PURE__*/_react.default.createElement(_SidenavDropdownMenu.default, (0, _extends2.default)({}, (0, _omit2.default)(props, 'classPrefix'), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 129,\n columnNumber: 12\n }\n }));\n } // Parent menu exists. This is a submenu.\n // Should render a `menuitem` that controls this submenu.\n\n\n var _omit = (0, _omit2.default)(rest, ['trigger']),\n icon = _omit.icon,\n className = _omit.className,\n disabled = _omit.disabled,\n menuProps = (0, _objectWithoutPropertiesLoose2.default)(_omit, [\"icon\", \"className\", \"disabled\"]);\n\n var Icon = rtl ? _AngleLeft.default : _AngleRight.default; // Renders a disclosure when used within <Navbar>\n\n if (withinNavbar) {\n return /*#__PURE__*/_react.default.createElement(_Disclosure.default, {\n hideOnClickOutside: true,\n trigger: ['click', 'mouseover'],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 141,\n columnNumber: 7\n }\n }, function (_ref, containerRef) {\n var open = _ref.open,\n props = (0, _objectWithoutPropertiesLoose2.default)(_ref, [\"open\"]);\n var classes = mergeItemClassNames(className, withItemClassPrefix({\n disabled: disabled,\n open: open,\n submenu: true\n }));\n return /*#__PURE__*/_react.default.createElement(\"li\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(ref, containerRef),\n className: classes\n }, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 152,\n columnNumber: 13\n }\n }), /*#__PURE__*/_react.default.createElement(_Disclosure.default.Button, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 153,\n columnNumber: 15\n }\n }, function (_ref2, buttonRef) {\n var open = _ref2.open,\n buttonProps = (0, _objectWithoutPropertiesLoose2.default)(_ref2, [\"open\"]);\n var classes = mergeItemClassNames(className, prefixItemClassName(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"toggle\"]))), withItemClassPrefix({\n 'with-icon': icon,\n open: open,\n disabled: disabled\n }));\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(buttonRef, buttonRef),\n className: classes,\n \"data-event-key\": eventKey,\n \"data-event-key-type\": typeof eventKey\n }, buttonProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 166,\n columnNumber: 21\n }\n }), icon && /*#__PURE__*/_react.default.cloneElement(icon, {\n className: prefix('menu-icon')\n }), title, /*#__PURE__*/_react.default.createElement(Icon, {\n className: prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"toggle-icon\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 175,\n columnNumber: 23\n }\n }));\n }), /*#__PURE__*/_react.default.createElement(_Disclosure.default.Content, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 180,\n columnNumber: 15\n }\n }, function (_ref3, elementRef) {\n var open = _ref3.open;\n var menuClassName = mergeMenuClassName(className, withMenuClassPrefix());\n return /*#__PURE__*/_react.default.createElement(\"ul\", (0, _extends2.default)({\n ref: elementRef,\n className: menuClassName,\n hidden: !open\n }, menuProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 185,\n columnNumber: 21\n }\n }), children);\n }));\n });\n }\n\n return /*#__PURE__*/_react.default.createElement(_Menu.default, {\n openMenuOn: ['mouseover', 'click'],\n renderMenuButton: function renderMenuButton(_ref4, buttonRef) {\n var open = _ref4.open,\n menuButtonProps = (0, _objectWithoutPropertiesLoose2.default)(_ref4, [\"open\"]);\n return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {\n disabled: disabled,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 207,\n columnNumber: 9\n }\n }, function (_ref5, menuitemRef) {\n var selected = _ref5.selected,\n active = _ref5.active,\n menuitem = (0, _objectWithoutPropertiesLoose2.default)(_ref5, [\"selected\", \"active\"]);\n var classes = mergeItemClassNames(className, prefixItemClassName(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)([\"toggle\"]))), withItemClassPrefix({\n 'with-icon': icon,\n open: open,\n active: selected,\n disabled: disabled,\n focus: active\n }));\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(buttonRef, menuitemRef),\n className: classes,\n \"data-event-key\": eventKey,\n \"data-event-key-type\": typeof eventKey\n }, menuitem, (0, _omit2.default)(menuButtonProps, ['role']), {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 222,\n columnNumber: 15\n }\n }), icon && /*#__PURE__*/_react.default.cloneElement(icon, {\n className: prefix('menu-icon')\n }), title, /*#__PURE__*/_react.default.createElement(Icon, {\n className: prefix(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)([\"toggle-icon\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 232,\n columnNumber: 17\n }\n }));\n });\n },\n renderMenuPopup: function renderMenuPopup(_ref6, popupRef) {\n var open = _ref6.open,\n popupProps = (0, _objectWithoutPropertiesLoose2.default)(_ref6, [\"open\"]);\n var menuClassName = mergeMenuClassName(className, withMenuClassPrefix());\n return /*#__PURE__*/_react.default.createElement(\"ul\", (0, _extends2.default)({\n ref: popupRef,\n className: menuClassName,\n hidden: !open\n }, popupProps, menuProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 242,\n columnNumber: 11\n }\n }), children);\n },\n onToggleMenu: handleToggleSubmenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 204,\n columnNumber: 5\n }\n }, function (_ref7, menuContainerRef) {\n var open = _ref7.open,\n menuContainer = (0, _objectWithoutPropertiesLoose2.default)(_ref7, [\"open\"]);\n var classes = mergeItemClassNames(className, withItemClassPrefix({\n disabled: disabled,\n open: open,\n submenu: true\n }));\n return /*#__PURE__*/_react.default.createElement(\"li\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(ref, menuContainerRef),\n className: classes\n }, menuContainer, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 265,\n columnNumber: 11\n }\n }));\n });\n});\n\nDropdownMenu.displayName = 'Dropdown.Menu';\nDropdownMenu.propTypes = {\n active: _propTypes.default.bool,\n activeKey: _propTypes.default.any,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n icon: _propTypes.default.any,\n classPrefix: _propTypes.default.string,\n pullLeft: _propTypes.default.bool,\n title: _propTypes.default.node,\n open: _propTypes.default.bool,\n trigger: _propTypes.default.oneOf(['click', 'hover']),\n eventKey: _propTypes.default.any,\n expanded: _propTypes.default.bool,\n collapsible: _propTypes.default.bool,\n onSelect: _propTypes.default.func,\n onToggle: _propTypes.default.func\n};\nvar _default = DropdownMenu;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Dropdown/DropdownMenu.tsx?");
|
|
2544
2544
|
|
|
2545
2545
|
/***/ }),
|
|
2546
2546
|
|
|
@@ -3343,7 +3343,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
3343
3343
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
3344
3344
|
|
|
3345
3345
|
"use strict";
|
|
3346
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.useBodyStyles = void 0;\n\nvar _react = __webpack_require__(/*! react */ \"react\");\n\nvar _getHeight = _interopRequireDefault(__webpack_require__(/*! dom-lib/getHeight */ \"./node_modules/dom-lib/esm/getHeight.js\"));\n\nvar _on = _interopRequireDefault(__webpack_require__(/*! dom-lib/on */ \"./node_modules/dom-lib/esm/on.js\"));\n\nvar _resizeObserver = __webpack_require__(/*! @juggle/resize-observer */ \"./node_modules/@juggle/resize-observer/lib/exports/resize-observer.js\");\n\nvar useBodyStyles = function useBodyStyles(ref, options) {\n var _useState = (0, _react.useState)({}),\n bodyStyles = _useState[0],\n setBodyStyles = _useState[1];\n\n var overflow = options.overflow,\n drawer = options.drawer,\n prefix = options.prefix;\n var windowResizeListener = (0, _react.useRef)();\n var contentElement = (0, _react.useRef)(null);\n var contentElementResizeObserver = (0, _react.useRef)();\n var updateBodyStyles = (0, _react.useCallback)(function (_event, entering) {\n var dialog = ref.current;\n var scrollHeight = dialog ? dialog.scrollHeight : 0;\n var styles = {\n overflow: 'auto'\n };\n\n if (dialog) {\n // default margin\n var headerHeight = 46;\n var footerHeight = 46;\n var headerDOM = dialog.querySelector(\".\" + prefix('header'));\n var footerDOM = dialog.querySelector(\".\" + prefix('footer'));\n headerHeight = headerDOM ? (0, _getHeight.default)(headerDOM) + headerHeight : headerHeight;\n footerHeight = footerDOM ? (0, _getHeight.default)(footerDOM) + footerHeight : footerHeight;\n /**\n * Header height + Footer height + Dialog margin\n */\n\n var excludeHeight = headerHeight + footerHeight + (entering ? 70 : 60);\n var bodyHeight = (0, _getHeight.default)(window) - excludeHeight;\n var maxHeight = scrollHeight >= bodyHeight ? bodyHeight : scrollHeight;\n styles.maxHeight = maxHeight;\n }\n\n setBodyStyles(styles);\n }, [prefix, ref]);\n var onDestroyEvents = (0, _react.useCallback)(function () {\n var _windowResizeListener, _windowResizeListener2, _contentElementResize;\n\n (_windowResizeListener = windowResizeListener.current) === null || _windowResizeListener === void 0 ? void 0 : (_windowResizeListener2 = _windowResizeListener.off) === null || _windowResizeListener2 === void 0 ? void 0 : _windowResizeListener2.call(_windowResizeListener);\n (_contentElementResize = contentElementResizeObserver.current) === null || _contentElementResize === void 0 ? void 0 : _contentElementResize.disconnect();\n }, []);\n var onChangeBodyStyles = (0, _react.useCallback)(function (entering) {\n if (overflow && !drawer) {\n updateBodyStyles(undefined, entering);\n contentElement.current = ref.current.querySelector(\".\" + prefix('content'));\n windowResizeListener.current = (0, _on.default)(window, 'resize', updateBodyStyles);\n contentElementResizeObserver.current = new _resizeObserver.ResizeObserver(function () {\n
|
|
3346
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.useBodyStyles = void 0;\n\nvar _react = __webpack_require__(/*! react */ \"react\");\n\nvar _getHeight = _interopRequireDefault(__webpack_require__(/*! dom-lib/getHeight */ \"./node_modules/dom-lib/esm/getHeight.js\"));\n\nvar _on = _interopRequireDefault(__webpack_require__(/*! dom-lib/on */ \"./node_modules/dom-lib/esm/on.js\"));\n\nvar _resizeObserver = __webpack_require__(/*! @juggle/resize-observer */ \"./node_modules/@juggle/resize-observer/lib/exports/resize-observer.js\");\n\nvar useBodyStyles = function useBodyStyles(ref, options) {\n var _useState = (0, _react.useState)({}),\n bodyStyles = _useState[0],\n setBodyStyles = _useState[1];\n\n var overflow = options.overflow,\n drawer = options.drawer,\n prefix = options.prefix;\n var windowResizeListener = (0, _react.useRef)();\n var contentElement = (0, _react.useRef)(null);\n var contentElementResizeObserver = (0, _react.useRef)();\n var updateBodyStyles = (0, _react.useCallback)(function (_event, entering) {\n var dialog = ref.current;\n var scrollHeight = dialog ? dialog.scrollHeight : 0;\n var styles = {\n overflow: 'auto'\n };\n\n if (dialog) {\n // default margin\n var headerHeight = 46;\n var footerHeight = 46;\n var headerDOM = dialog.querySelector(\".\" + prefix('header'));\n var footerDOM = dialog.querySelector(\".\" + prefix('footer'));\n headerHeight = headerDOM ? (0, _getHeight.default)(headerDOM) + headerHeight : headerHeight;\n footerHeight = footerDOM ? (0, _getHeight.default)(footerDOM) + footerHeight : footerHeight;\n /**\n * Header height + Footer height + Dialog margin\n */\n\n var excludeHeight = headerHeight + footerHeight + (entering ? 70 : 60);\n var bodyHeight = (0, _getHeight.default)(window) - excludeHeight;\n var maxHeight = scrollHeight >= bodyHeight ? bodyHeight : scrollHeight;\n styles.maxHeight = maxHeight;\n }\n\n setBodyStyles(styles);\n }, [prefix, ref]);\n var onDestroyEvents = (0, _react.useCallback)(function () {\n var _windowResizeListener, _windowResizeListener2, _contentElementResize;\n\n (_windowResizeListener = windowResizeListener.current) === null || _windowResizeListener === void 0 ? void 0 : (_windowResizeListener2 = _windowResizeListener.off) === null || _windowResizeListener2 === void 0 ? void 0 : _windowResizeListener2.call(_windowResizeListener);\n (_contentElementResize = contentElementResizeObserver.current) === null || _contentElementResize === void 0 ? void 0 : _contentElementResize.disconnect();\n windowResizeListener.current = null;\n contentElementResizeObserver.current = null;\n }, []);\n var onChangeBodyStyles = (0, _react.useCallback)(function (entering) {\n if (overflow && !drawer && ref.current) {\n updateBodyStyles(undefined, entering);\n contentElement.current = ref.current.querySelector(\".\" + prefix('content'));\n\n if (!windowResizeListener.current) {\n windowResizeListener.current = (0, _on.default)(window, 'resize', updateBodyStyles);\n }\n\n if (contentElement.current && !contentElementResizeObserver.current) {\n contentElementResizeObserver.current = new _resizeObserver.ResizeObserver(function () {\n return updateBodyStyles();\n });\n contentElementResizeObserver.current.observe(contentElement.current);\n }\n }\n }, [drawer, overflow, prefix, ref, updateBodyStyles]);\n (0, _react.useEffect)(function () {\n return onDestroyEvents; // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n return [overflow ? bodyStyles : {}, onChangeBodyStyles, onDestroyEvents];\n};\n\nexports.useBodyStyles = useBodyStyles;\n\n//# sourceURL=webpack://rsuite/./src/Modal/utils.ts?");
|
|
3347
3347
|
|
|
3348
3348
|
/***/ }),
|
|
3349
3349
|
|
|
@@ -3365,7 +3365,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
3365
3365
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
3366
3366
|
|
|
3367
3367
|
"use strict";
|
|
3368
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/MultiCascader/DropdownMenu.tsx\"));\n\nvar _Checkbox = _interopRequireDefault(__webpack_require__(/*! ../Checkbox */ \"./src/Checkbox/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/MultiCascader/utils.ts\");\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nvar _utils2 = __webpack_require__(/*! ../Cascader/utils */ \"./src/Cascader/utils.ts\");\n\nvar _utils3 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/MultiCascader/MultiCascader.tsx\",\n _this = void 0;\n\nvar emptyArray = [];\n\nvar MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _selectedPaths;\n\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n defaultValue = props.defaultValue,\n valueProp = props.value,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n disabled = props.disabled,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n _props$cascade = props.cascade,\n cascade = _props$cascade === void 0 ? true : _props$cascade,\n inline = props.inline,\n placeholder = props.placeholder,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n menuWidth = props.menuWidth,\n menuHeight = props.menuHeight,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n id = props.id,\n getChildren = props.getChildren,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderMenuItem = props.renderMenuItem,\n renderExtraFooter = props.renderExtraFooter,\n onEnter = props.onEnter,\n onExit = props.onExit,\n onExited = props.onExited,\n onClean = props.onClean,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onChange = props.onChange,\n onOpen = props.onOpen,\n onClose = props.onClose,\n onCheck = props.onCheck,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"classPrefix\", \"defaultValue\", \"value\", \"valueKey\", \"labelKey\", \"childrenKey\", \"disabled\", \"disabledItemValues\", \"cleanable\", \"locale\", \"toggleAs\", \"style\", \"countable\", \"cascade\", \"inline\", \"placeholder\", \"placement\", \"appearance\", \"menuWidth\", \"menuHeight\", \"menuClassName\", \"menuStyle\", \"searchable\", \"uncheckableItemValues\", \"id\", \"getChildren\", \"renderValue\", \"renderMenu\", \"renderMenuItem\", \"renderExtraFooter\", \"onEnter\", \"onExit\", \"onExited\", \"onClean\", \"onSearch\", \"onSelect\", \"onChange\", \"onOpen\", \"onClose\", \"onCheck\"]);\n var itemKeys = {\n childrenKey: childrenKey,\n labelKey: labelKey,\n valueKey: valueKey\n };\n\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n\n var _useFlattenData = (0, _utils.useFlattenData)(data, itemKeys),\n flattenData = _useFlattenData.flattenData,\n addFlattenData = _useFlattenData.addFlattenData;\n\n var _useCascadeValue = (0, _utils.useCascadeValue)((0, _extends3.default)({}, itemKeys, {\n uncheckableItemValues: uncheckableItemValues,\n cascade: cascade,\n value: valueProp || defaultValue\n }), flattenData),\n value = _useCascadeValue.value,\n setValue = _useCascadeValue.setValue,\n splitValue = _useCascadeValue.splitValue; // The columns displayed in the cascading panel.\n\n\n var _useColumnData = (0, _utils.useColumnData)(flattenData),\n columnData = _useColumnData.columnData,\n setColumnData = _useColumnData.setColumnData,\n addColumn = _useColumnData.addColumn,\n enforceUpdateColumnData = _useColumnData.enforceUpdateColumnData;\n\n (0, _utils3.useUpdateEffect)(function () {\n enforceUpdateColumnData(data);\n }, [data]); // The path after cascading data selection.\n\n var _useState2 = (0, _react.useState)(),\n selectedPaths = _useState2[0],\n setSelectedPaths = _useState2[1];\n\n var triggerRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n\n var _useCustom = (0, _utils3.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\n\n var selectedItems = flattenData.filter(function (item) {\n return value.some(function (v) {\n return v === item[valueKey];\n });\n }) || []; // Used to hover the focuse item when trigger `onKeydown`\n\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(selectedPaths === null || selectedPaths === void 0 ? void 0 : (_selectedPaths = selectedPaths[selectedPaths.length - 1]) === null || _selectedPaths === void 0 ? void 0 : _selectedPaths[valueKey], {\n rtl: rtl,\n data: flattenData,\n valueKey: valueKey,\n defaultLayer: selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length ? selectedPaths.length - 1 : 0,\n target: function target() {\n return overlayRef.current;\n },\n callback: (0, _react.useCallback)(function (value) {\n var _getColumnsAndPaths = (0, _utils2.getColumnsAndPaths)(data, value, {\n valueKey: valueKey,\n childrenKey: childrenKey,\n isAttachChildren: true\n }),\n columns = _getColumnsAndPaths.columns,\n paths = _getColumnsAndPaths.paths;\n\n setColumnData(columns);\n setSelectedPaths(paths);\n }, [childrenKey, data, setColumnData, valueKey])\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setLayer = _useFocusItemValue.setLayer,\n setKeys = _useFocusItemValue.setKeys,\n onFocusItem = _useFocusItemValue.onKeyDown;\n /**\n * 1.Have a value and the value is valid.\n * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.\n */\n\n\n var hasValue = selectedItems.length > 0 || Number(valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) > 0 && (0, _isFunction.default)(renderValue);\n\n var _useClassNames = (0, _utils3.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n\n var handleEntered = (0, _react.useCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n setActive(false);\n setSearchKeyword('');\n }, []);\n var handleSelect = (0, _react.useCallback)(function (node, cascadePaths, event) {\n var _node$childrenKey, _node$childrenKey2, _triggerRef$current, _triggerRef$current$u;\n\n setSelectedPaths(cascadePaths);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event); // Lazy load node's children\n\n if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0) {\n node.loading = true;\n var children = getChildren(node);\n\n if (children instanceof Promise) {\n children.then(function (data) {\n node.loading = false;\n node[childrenKey] = data;\n addFlattenData(data, node);\n addColumn(data, cascadePaths.length);\n });\n } else {\n node.loading = false;\n node[childrenKey] = children;\n addFlattenData(children, node);\n addColumn(children, cascadePaths.length);\n }\n } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {\n addColumn(node[childrenKey], cascadePaths.length);\n }\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$u = _triggerRef$current.updatePosition) === null || _triggerRef$current$u === void 0 ? void 0 : _triggerRef$current$u.call(_triggerRef$current);\n }, [onSelect, getChildren, childrenKey, addColumn, addFlattenData]);\n var handleCheck = (0, _react.useCallback)(function (node, event, checked) {\n var nodeValue = node[valueKey];\n var nextValue = [];\n\n if (cascade) {\n nextValue = splitValue(node, checked, value).value;\n } else {\n nextValue = [].concat(value);\n\n if (checked) {\n nextValue.push(nodeValue);\n } else {\n nextValue = nextValue.filter(function (n) {\n return n !== nodeValue;\n });\n }\n }\n\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(nextValue, node, checked, event);\n }, [cascade, onChange, onCheck, setValue, splitValue, value, valueKey]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n setSelectedPaths([]);\n setValue([]);\n setColumnData([data]);\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n }, [data, disabled, onChange, setColumnData, setValue]);\n var handleMenuPressEnter = (0, _react.useCallback)(function (event) {\n var _overlayRef$current;\n\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var checkbox = (_overlayRef$current = overlayRef.current) === null || _overlayRef$current === void 0 ? void 0 : _overlayRef$current.querySelector(\"[data-key=\\\"\" + focusItemValue + \"\\\"] [type=\\\"checkbox\\\"]\");\n\n if (checkbox) {\n handleCheck(focusItem, event, (checkbox === null || checkbox === void 0 ? void 0 : checkbox.getAttribute('aria-checked')) !== 'true');\n }\n }, [data, focusItemValue, handleCheck, valueKey]);\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter\n }, rest));\n var handleSearch = (0, _react.useCallback)(function (value, event) {\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n\n if (value) {\n setLayer(0);\n } else if (selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length) {\n setLayer(selectedPaths.length - 1);\n }\n\n setKeys([]);\n }, [onSearch, selectedPaths, setKeys, setLayer]);\n var getSearchResult = (0, _react.useCallback)(function () {\n var items = [];\n var result = flattenData.filter(function (item) {\n if (uncheckableItemValues.some(function (value) {\n return item[valueKey] === value;\n })) {\n return false;\n }\n\n if (item[labelKey].match(new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'i'))) {\n return true;\n }\n\n return false;\n });\n\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]); // A maximum of 100 search results are returned.\n\n if (i === 99) {\n return items;\n }\n }\n\n return items;\n }, [flattenData, labelKey, searchKeyword, uncheckableItemValues, valueKey]);\n\n var renderSearchRow = function renderSearchRow(item, key) {\n var _extends2;\n\n var nodes = (0, _treeUtils.getNodeParents)(item);\n var regx = new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'ig');\n var labelElements = [];\n var a = item[labelKey].split(regx);\n var b = item[labelKey].match(regx);\n\n for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\n\n if (b[i]) {\n labelElements.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: i,\n className: prefix('cascader-search-match'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 386,\n columnNumber: 13\n }\n }, b[i]));\n }\n }\n\n nodes.push((0, _extends3.default)({}, item, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2)));\n var active = value.some(function (value) {\n if (cascade) {\n return nodes.some(function (node) {\n return node[valueKey] === value;\n });\n }\n\n return item[valueKey] === value;\n });\n var disabled = disabledItemValues.some(function (value) {\n return nodes.some(function (node) {\n return node[valueKey] === value;\n });\n });\n var itemClasses = prefix('cascader-row', {\n 'cascader-row-disabled': disabled,\n 'cascader-row-focus': item[valueKey] === focusItemValue\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: key,\n className: itemClasses,\n \"aria-disabled\": disabled,\n \"data-key\": item[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 411,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Checkbox.default, {\n disabled: disabled,\n checked: active,\n value: item[valueKey],\n indeterminate: cascade && !active && (0, _utils.isSomeChildChecked)(item, value, {\n valueKey: valueKey,\n childrenKey: childrenKey\n }),\n onChange: function onChange(_value, checked, event) {\n handleCheck(item, event, checked);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 412,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('cascader-cols'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 423,\n columnNumber: 13\n }\n }, nodes.map(function (node, index) {\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n key: \"col-\" + index,\n className: prefix('cascader-col'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 425,\n columnNumber: 17\n }\n }, node[labelKey]);\n }))));\n };\n\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 442,\n columnNumber: 9\n }\n }, items.length ? items.map(renderSearchRow) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 446,\n columnNumber: 13\n }\n }, locale.noResultsText));\n };\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var _ref = positionProps || {},\n left = _ref.left,\n top = _ref.top,\n className = _ref.className;\n\n var styles = (0, _extends3.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var classes = merge(className, menuClassName, prefix('cascader-menu', 'multi-cascader-menu', {\n inline: inline\n }));\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils3.mergeRefs)(overlayRef, speakerRef),\n className: classes,\n style: styles,\n target: triggerRef,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 463,\n columnNumber: 9\n }\n }, searchable && /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeyword,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 471,\n columnNumber: 13\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_DropdownMenu.default, {\n id: id ? id + \"-listbox\" : undefined,\n cascade: cascade,\n menuWidth: menuWidth,\n menuHeight: menuHeight,\n uncheckableItemValues: uncheckableItemValues,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n classPrefix: 'picker-cascader-menu',\n cascadeData: columnData,\n cascadePaths: selectedPaths,\n value: value,\n onSelect: handleSelect,\n onCheck: handleCheck,\n renderMenu: renderMenu,\n renderMenuItem: renderMenuItem,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 482,\n columnNumber: 13\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n\n var selectedElement = placeholder;\n\n if (selectedItems.length > 0) {\n selectedElement = /*#__PURE__*/_react.default.createElement(_Picker.SelectedElement, {\n selectedItems: selectedItems,\n countable: countable,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n prefix: prefix,\n cascade: cascade,\n locale: locale,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 512,\n columnNumber: 9\n }\n });\n }\n\n if (hasValue && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value.length ? value : valueProp !== null && valueProp !== void 0 ? valueProp : [], selectedItems, selectedElement); // If renderValue returns null or undefined, hasValue is false.\n\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends3.default)({}, props, {\n classPrefix: classPrefix,\n hasValue: hasValue,\n name: 'cascader',\n appearance: appearance,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n\n if (inline) {\n return renderDropdownMenu();\n }\n\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEnter: (0, _utils3.createChainedFunction)(handleEntered, onEnter),\n onExited: (0, _utils3.createChainedFunction)(handleExited, onExited),\n onExit: (0, _utils3.createChainedFunction)(onClose, onExit),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 551,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 560,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n ref: targetRef,\n onClean: (0, _utils3.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 561,\n columnNumber: 11\n }\n }), selectedElement || locale.placeholder)));\n});\n\nMultiCascader.displayName = 'MultiCascader';\nMultiCascader.propTypes = (0, _extends3.default)({}, _Picker.listPickerPropTypes, {\n value: _propTypes.default.array,\n disabledItemValues: _propTypes.default.array,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n cascade: _propTypes.default.bool,\n inline: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n uncheckableItemValues: _propTypes.default.array,\n searchable: _propTypes.default.bool,\n renderMenuItem: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onCheck: _propTypes.default.func\n});\nvar _default = MultiCascader;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/MultiCascader/MultiCascader.tsx?");
|
|
3368
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _pick = _interopRequireDefault(__webpack_require__(/*! lodash/pick */ \"./node_modules/lodash/pick.js\"));\n\nvar _omit = _interopRequireDefault(__webpack_require__(/*! lodash/omit */ \"./node_modules/lodash/omit.js\"));\n\nvar _isFunction = _interopRequireDefault(__webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _DropdownMenu = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenu */ \"./src/MultiCascader/DropdownMenu.tsx\"));\n\nvar _Checkbox = _interopRequireDefault(__webpack_require__(/*! ../Checkbox */ \"./src/Checkbox/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/MultiCascader/utils.ts\");\n\nvar _treeUtils = __webpack_require__(/*! ../utils/treeUtils */ \"./src/utils/treeUtils.ts\");\n\nvar _utils2 = __webpack_require__(/*! ../Cascader/utils */ \"./src/Cascader/utils.ts\");\n\nvar _utils3 = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Picker = __webpack_require__(/*! ../Picker */ \"./src/Picker/index.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/MultiCascader/MultiCascader.tsx\",\n _this = void 0;\n\nvar emptyArray = [];\n\nvar MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _selectedPaths;\n\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$data = props.data,\n data = _props$data === void 0 ? emptyArray : _props$data,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,\n defaultValue = props.defaultValue,\n valueProp = props.value,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n _props$childrenKey = props.childrenKey,\n childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,\n disabled = props.disabled,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,\n _props$cleanable = props.cleanable,\n cleanable = _props$cleanable === void 0 ? true : _props$cleanable,\n overrideLocale = props.locale,\n toggleAs = props.toggleAs,\n style = props.style,\n _props$countable = props.countable,\n countable = _props$countable === void 0 ? true : _props$countable,\n _props$cascade = props.cascade,\n cascade = _props$cascade === void 0 ? true : _props$cascade,\n inline = props.inline,\n placeholder = props.placeholder,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n _props$appearance = props.appearance,\n appearance = _props$appearance === void 0 ? 'default' : _props$appearance,\n menuWidth = props.menuWidth,\n menuHeight = props.menuHeight,\n menuClassName = props.menuClassName,\n menuStyle = props.menuStyle,\n _props$searchable = props.searchable,\n searchable = _props$searchable === void 0 ? true : _props$searchable,\n _props$uncheckableIte = props.uncheckableItemValues,\n uncheckableItemValues = _props$uncheckableIte === void 0 ? emptyArray : _props$uncheckableIte,\n id = props.id,\n getChildren = props.getChildren,\n renderValue = props.renderValue,\n renderMenu = props.renderMenu,\n renderMenuItem = props.renderMenuItem,\n renderExtraFooter = props.renderExtraFooter,\n onEnter = props.onEnter,\n onExit = props.onExit,\n onExited = props.onExited,\n onClean = props.onClean,\n onSearch = props.onSearch,\n onSelect = props.onSelect,\n onChange = props.onChange,\n onOpen = props.onOpen,\n onClose = props.onClose,\n onCheck = props.onCheck,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"data\", \"classPrefix\", \"defaultValue\", \"value\", \"valueKey\", \"labelKey\", \"childrenKey\", \"disabled\", \"disabledItemValues\", \"cleanable\", \"locale\", \"toggleAs\", \"style\", \"countable\", \"cascade\", \"inline\", \"placeholder\", \"placement\", \"appearance\", \"menuWidth\", \"menuHeight\", \"menuClassName\", \"menuStyle\", \"searchable\", \"uncheckableItemValues\", \"id\", \"getChildren\", \"renderValue\", \"renderMenu\", \"renderMenuItem\", \"renderExtraFooter\", \"onEnter\", \"onExit\", \"onExited\", \"onClean\", \"onSearch\", \"onSelect\", \"onChange\", \"onOpen\", \"onClose\", \"onCheck\"]);\n var itemKeys = {\n childrenKey: childrenKey,\n labelKey: labelKey,\n valueKey: valueKey\n };\n\n var _useState = (0, _react.useState)(false),\n active = _useState[0],\n setActive = _useState[1];\n\n var _useFlattenData = (0, _utils.useFlattenData)(data, itemKeys),\n flattenData = _useFlattenData.flattenData,\n addFlattenData = _useFlattenData.addFlattenData;\n\n var _useCascadeValue = (0, _utils.useCascadeValue)((0, _extends3.default)({}, itemKeys, {\n uncheckableItemValues: uncheckableItemValues,\n cascade: cascade,\n value: valueProp || defaultValue\n }), flattenData),\n value = _useCascadeValue.value,\n setValue = _useCascadeValue.setValue,\n splitValue = _useCascadeValue.splitValue; // The columns displayed in the cascading panel.\n\n\n var _useColumnData = (0, _utils.useColumnData)(flattenData),\n columnData = _useColumnData.columnData,\n setColumnData = _useColumnData.setColumnData,\n addColumn = _useColumnData.addColumn,\n enforceUpdateColumnData = _useColumnData.enforceUpdateColumnData;\n\n (0, _utils3.useUpdateEffect)(function () {\n enforceUpdateColumnData(data);\n }, [data]); // The path after cascading data selection.\n\n var _useState2 = (0, _react.useState)(),\n selectedPaths = _useState2[0],\n setSelectedPaths = _useState2[1];\n\n var triggerRef = (0, _react.useRef)(null);\n var overlayRef = (0, _react.useRef)(null);\n var targetRef = (0, _react.useRef)(null);\n var searchInputRef = (0, _react.useRef)(null);\n (0, _Picker.usePublicMethods)(ref, {\n triggerRef: triggerRef,\n overlayRef: overlayRef,\n targetRef: targetRef\n });\n\n var _useCustom = (0, _utils3.useCustom)('Picker', overrideLocale),\n locale = _useCustom.locale,\n rtl = _useCustom.rtl;\n\n var selectedItems = flattenData.filter(function (item) {\n return value.some(function (v) {\n return v === item[valueKey];\n });\n }) || []; // Used to hover the focuse item when trigger `onKeydown`\n\n var _useFocusItemValue = (0, _Picker.useFocusItemValue)(selectedPaths === null || selectedPaths === void 0 ? void 0 : (_selectedPaths = selectedPaths[selectedPaths.length - 1]) === null || _selectedPaths === void 0 ? void 0 : _selectedPaths[valueKey], {\n rtl: rtl,\n data: flattenData,\n valueKey: valueKey,\n defaultLayer: selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length ? selectedPaths.length - 1 : 0,\n target: function target() {\n return overlayRef.current;\n },\n callback: (0, _react.useCallback)(function (value) {\n var _getColumnsAndPaths = (0, _utils2.getColumnsAndPaths)(data, value, {\n valueKey: valueKey,\n childrenKey: childrenKey,\n isAttachChildren: true\n }),\n columns = _getColumnsAndPaths.columns,\n paths = _getColumnsAndPaths.paths;\n\n setColumnData(columns);\n setSelectedPaths(paths);\n }, [childrenKey, data, setColumnData, valueKey])\n }),\n focusItemValue = _useFocusItemValue.focusItemValue,\n setLayer = _useFocusItemValue.setLayer,\n setKeys = _useFocusItemValue.setKeys,\n onFocusItem = _useFocusItemValue.onKeyDown;\n /**\n * 1.Have a value and the value is valid.\n * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.\n */\n\n\n var hasValue = selectedItems.length > 0 || Number(valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) > 0 && (0, _isFunction.default)(renderValue);\n\n var _useClassNames = (0, _utils3.useClassNames)(classPrefix),\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var _useState3 = (0, _react.useState)(''),\n searchKeyword = _useState3[0],\n setSearchKeyword = _useState3[1];\n\n var handleEntered = (0, _react.useCallback)(function () {\n onOpen === null || onOpen === void 0 ? void 0 : onOpen();\n setActive(true);\n }, [onOpen]);\n var handleExited = (0, _react.useCallback)(function () {\n setActive(false);\n setSearchKeyword('');\n }, []);\n var handleSelect = (0, _react.useCallback)(function (node, cascadePaths, event) {\n var _node$childrenKey, _node$childrenKey2, _triggerRef$current, _triggerRef$current$u;\n\n setSelectedPaths(cascadePaths);\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event); // Lazy load node's children\n\n if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0) {\n node.loading = true;\n var children = getChildren(node);\n\n if (children instanceof Promise) {\n children.then(function (data) {\n node.loading = false;\n node[childrenKey] = data;\n\n if (targetRef.current) {\n addFlattenData(data, node);\n addColumn(data, cascadePaths.length);\n }\n });\n } else {\n node.loading = false;\n node[childrenKey] = children;\n addFlattenData(children, node);\n addColumn(children, cascadePaths.length);\n }\n } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {\n addColumn(node[childrenKey], cascadePaths.length);\n }\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$u = _triggerRef$current.updatePosition) === null || _triggerRef$current$u === void 0 ? void 0 : _triggerRef$current$u.call(_triggerRef$current);\n }, [onSelect, getChildren, childrenKey, addColumn, addFlattenData]);\n var handleCheck = (0, _react.useCallback)(function (node, event, checked) {\n var nodeValue = node[valueKey];\n var nextValue = [];\n\n if (cascade) {\n nextValue = splitValue(node, checked, value).value;\n } else {\n nextValue = [].concat(value);\n\n if (checked) {\n nextValue.push(nodeValue);\n } else {\n nextValue = nextValue.filter(function (n) {\n return n !== nodeValue;\n });\n }\n }\n\n setValue(nextValue);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);\n onCheck === null || onCheck === void 0 ? void 0 : onCheck(nextValue, node, checked, event);\n }, [cascade, onChange, onCheck, setValue, splitValue, value, valueKey]);\n var handleClean = (0, _react.useCallback)(function (event) {\n if (disabled || !targetRef.current) {\n return;\n }\n\n setSelectedPaths([]);\n setValue([]);\n setColumnData([data]);\n onChange === null || onChange === void 0 ? void 0 : onChange([], event);\n }, [data, disabled, onChange, setColumnData, setValue]);\n var handleMenuPressEnter = (0, _react.useCallback)(function (event) {\n var _overlayRef$current;\n\n var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {\n return item[valueKey] === focusItemValue;\n });\n var checkbox = (_overlayRef$current = overlayRef.current) === null || _overlayRef$current === void 0 ? void 0 : _overlayRef$current.querySelector(\"[data-key=\\\"\" + focusItemValue + \"\\\"] [type=\\\"checkbox\\\"]\");\n\n if (checkbox) {\n handleCheck(focusItem, event, (checkbox === null || checkbox === void 0 ? void 0 : checkbox.getAttribute('aria-checked')) !== 'true');\n }\n }, [data, focusItemValue, handleCheck, valueKey]);\n var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends3.default)({\n toggle: !focusItemValue || !active,\n triggerRef: triggerRef,\n targetRef: targetRef,\n overlayRef: overlayRef,\n searchInputRef: searchInputRef,\n active: active,\n onExit: handleClean,\n onMenuKeyDown: onFocusItem,\n onMenuPressEnter: handleMenuPressEnter\n }, rest));\n var handleSearch = (0, _react.useCallback)(function (value, event) {\n setSearchKeyword(value);\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);\n\n if (value) {\n setLayer(0);\n } else if (selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length) {\n setLayer(selectedPaths.length - 1);\n }\n\n setKeys([]);\n }, [onSearch, selectedPaths, setKeys, setLayer]);\n var getSearchResult = (0, _react.useCallback)(function () {\n var items = [];\n var result = flattenData.filter(function (item) {\n if (uncheckableItemValues.some(function (value) {\n return item[valueKey] === value;\n })) {\n return false;\n }\n\n if (item[labelKey].match(new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'i'))) {\n return true;\n }\n\n return false;\n });\n\n for (var i = 0; i < result.length; i++) {\n items.push(result[i]); // A maximum of 100 search results are returned.\n\n if (i === 99) {\n return items;\n }\n }\n\n return items;\n }, [flattenData, labelKey, searchKeyword, uncheckableItemValues, valueKey]);\n\n var renderSearchRow = function renderSearchRow(item, key) {\n var _extends2;\n\n var nodes = (0, _treeUtils.getNodeParents)(item);\n var regx = new RegExp((0, _utils3.getSafeRegExpString)(searchKeyword), 'ig');\n var labelElements = [];\n var a = item[labelKey].split(regx);\n var b = item[labelKey].match(regx);\n\n for (var i = 0; i < a.length; i++) {\n labelElements.push(a[i]);\n\n if (b[i]) {\n labelElements.push( /*#__PURE__*/_react.default.createElement(\"span\", {\n key: i,\n className: prefix('cascader-search-match'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 389,\n columnNumber: 13\n }\n }, b[i]));\n }\n }\n\n nodes.push((0, _extends3.default)({}, item, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2)));\n var active = value.some(function (value) {\n if (cascade) {\n return nodes.some(function (node) {\n return node[valueKey] === value;\n });\n }\n\n return item[valueKey] === value;\n });\n var disabled = disabledItemValues.some(function (value) {\n return nodes.some(function (node) {\n return node[valueKey] === value;\n });\n });\n var itemClasses = prefix('cascader-row', {\n 'cascader-row-disabled': disabled,\n 'cascader-row-focus': item[valueKey] === focusItemValue\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n key: key,\n className: itemClasses,\n \"aria-disabled\": disabled,\n \"data-key\": item[valueKey],\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 414,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Checkbox.default, {\n disabled: disabled,\n checked: active,\n value: item[valueKey],\n indeterminate: cascade && !active && (0, _utils.isSomeChildChecked)(item, value, {\n valueKey: valueKey,\n childrenKey: childrenKey\n }),\n onChange: function onChange(_value, checked, event) {\n handleCheck(item, event, checked);\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 415,\n columnNumber: 11\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('cascader-cols'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 426,\n columnNumber: 13\n }\n }, nodes.map(function (node, index) {\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n key: \"col-\" + index,\n className: prefix('cascader-col'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 428,\n columnNumber: 17\n }\n }, node[labelKey]);\n }))));\n };\n\n var renderSearchResultPanel = function renderSearchResultPanel() {\n if (searchKeyword === '') {\n return null;\n }\n\n var items = getSearchResult();\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('cascader-search-panel'),\n \"data-layer\": 0,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 445,\n columnNumber: 9\n }\n }, items.length ? items.map(renderSearchRow) : /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('none'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 449,\n columnNumber: 13\n }\n }, locale.noResultsText));\n };\n\n var renderDropdownMenu = function renderDropdownMenu(positionProps, speakerRef) {\n var _ref = positionProps || {},\n left = _ref.left,\n top = _ref.top,\n className = _ref.className;\n\n var styles = (0, _extends3.default)({}, menuStyle, {\n left: left,\n top: top\n });\n var classes = merge(className, menuClassName, prefix('cascader-menu', 'multi-cascader-menu', {\n inline: inline\n }));\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {\n ref: (0, _utils3.mergeRefs)(overlayRef, speakerRef),\n className: classes,\n style: styles,\n target: triggerRef,\n onKeyDown: onPickerKeyDown,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 466,\n columnNumber: 9\n }\n }, searchable && /*#__PURE__*/_react.default.createElement(_Picker.SearchBar, {\n placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,\n onChange: handleSearch,\n value: searchKeyword,\n inputRef: searchInputRef,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 474,\n columnNumber: 13\n }\n }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_DropdownMenu.default, {\n id: id ? id + \"-listbox\" : undefined,\n cascade: cascade,\n menuWidth: menuWidth,\n menuHeight: menuHeight,\n uncheckableItemValues: uncheckableItemValues,\n disabledItemValues: disabledItemValues,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n classPrefix: 'picker-cascader-menu',\n cascadeData: columnData,\n cascadePaths: selectedPaths,\n value: value,\n onSelect: handleSelect,\n onCheck: handleCheck,\n renderMenu: renderMenu,\n renderMenuItem: renderMenuItem,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 485,\n columnNumber: 13\n }\n }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());\n };\n\n var selectedElement = placeholder;\n\n if (selectedItems.length > 0) {\n selectedElement = /*#__PURE__*/_react.default.createElement(_Picker.SelectedElement, {\n selectedItems: selectedItems,\n countable: countable,\n valueKey: valueKey,\n labelKey: labelKey,\n childrenKey: childrenKey,\n prefix: prefix,\n cascade: cascade,\n locale: locale,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 515,\n columnNumber: 9\n }\n });\n }\n\n if (hasValue && (0, _isFunction.default)(renderValue)) {\n selectedElement = renderValue(value.length ? value : valueProp !== null && valueProp !== void 0 ? valueProp : [], selectedItems, selectedElement); // If renderValue returns null or undefined, hasValue is false.\n\n if ((0, _isNil.default)(selectedElement)) {\n hasValue = false;\n }\n }\n\n var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends3.default)({}, props, {\n classPrefix: classPrefix,\n hasValue: hasValue,\n name: 'cascader',\n appearance: appearance,\n cleanable: cleanable\n })),\n classes = _usePickerClassName[0],\n usedClassNamePropKeys = _usePickerClassName[1];\n\n if (inline) {\n return renderDropdownMenu();\n }\n\n return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {\n pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),\n ref: triggerRef,\n placement: placement,\n onEnter: (0, _utils3.createChainedFunction)(handleEntered, onEnter),\n onExited: (0, _utils3.createChainedFunction)(handleExited, onExited),\n onExit: (0, _utils3.createChainedFunction)(onClose, onExit),\n speaker: renderDropdownMenu,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 554,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(Component, {\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 563,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends3.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {\n id: id,\n as: toggleAs,\n appearance: appearance,\n disabled: disabled,\n ref: targetRef,\n onClean: (0, _utils3.createChainedFunction)(handleClean, onClean),\n onKeyDown: onPickerKeyDown,\n cleanable: cleanable && !disabled,\n hasValue: hasValue,\n active: active,\n placement: placement,\n inputValue: value,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 564,\n columnNumber: 11\n }\n }), selectedElement || locale.placeholder)));\n});\n\nMultiCascader.displayName = 'MultiCascader';\nMultiCascader.propTypes = (0, _extends3.default)({}, _Picker.listPickerPropTypes, {\n value: _propTypes.default.array,\n disabledItemValues: _propTypes.default.array,\n locale: _propTypes.default.any,\n appearance: _propTypes.default.oneOf(['default', 'subtle']),\n cascade: _propTypes.default.bool,\n inline: _propTypes.default.bool,\n countable: _propTypes.default.bool,\n menuWidth: _propTypes.default.number,\n menuHeight: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),\n uncheckableItemValues: _propTypes.default.array,\n searchable: _propTypes.default.bool,\n renderMenuItem: _propTypes.default.func,\n renderMenu: _propTypes.default.func,\n onSearch: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onCheck: _propTypes.default.func\n});\nvar _default = MultiCascader;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/MultiCascader/MultiCascader.tsx?");
|
|
3369
3369
|
|
|
3370
3370
|
/***/ }),
|
|
3371
3371
|
|
|
@@ -3420,7 +3420,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
3420
3420
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
3421
3421
|
|
|
3422
3422
|
"use strict";
|
|
3423
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _Ripple = _interopRequireDefault(__webpack_require__(/*! ../Ripple */ \"./src/Ripple/index.tsx\"));\n\nvar _SafeAnchor = _interopRequireDefault(__webpack_require__(/*! ../SafeAnchor */ \"./src/SafeAnchor/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Sidenav = __webpack_require__(/*! ../Sidenav/Sidenav */ \"./src/Sidenav/Sidenav.tsx\");\n\nvar _NavContext = _interopRequireDefault(__webpack_require__(/*! ./NavContext */ \"./src/Nav/NavContext.ts\"));\n\nvar _Navbar = __webpack_require__(/*! ../Navbar/Navbar */ \"./src/Navbar/Navbar.tsx\");\n\nvar _SidenavItem = _interopRequireDefault(__webpack_require__(/*! ../Sidenav/SidenavItem */ \"./src/Sidenav/SidenavItem.tsx\"));\n\nvar _NavbarItem = _interopRequireDefault(__webpack_require__(/*! ../Navbar/NavbarItem */ \"./src/Navbar/NavbarItem.tsx\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Nav/NavItem.tsx\",\n _this = void 0;\n\n/**\n * The <Nav.Item> API\n */\nvar NavItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? _SafeAnchor.default : _props$as,\n activeProp = props.active,\n disabled = props.disabled,\n eventKey = props.eventKey,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'nav-item' : _props$classPrefix,\n style = props.style,\n children = props.children,\n icon = props.icon,\n divider = props.divider,\n panel = props.panel,\n onClick = props.onClick,\n onSelectProp = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"active\", \"disabled\", \"eventKey\", \"className\", \"classPrefix\", \"style\", \"children\", \"icon\", \"divider\", \"panel\", \"onClick\", \"onSelect\"]);\n\n var _useContext = (0, _react.useContext)(_NavContext.default),\n activeKey = _useContext.activeKey,\n onSelectFromNav = _useContext.onSelect;\n\n var active = activeProp !== null && activeProp !== void 0 ? activeProp : !(0, _isNil.default)(eventKey) && (0, _utils.shallowEqual)(eventKey, activeKey);\n var emitSelect = (0, _react.useCallback)(function (event) {\n onSelectProp === null || onSelectProp === void 0 ? void 0 : onSelectProp(eventKey, event);\n onSelectFromNav === null || onSelectFromNav === void 0 ? void 0 : onSelectFromNav(eventKey, event);\n }, [eventKey, onSelectProp, onSelectFromNav]);\n var navbar = (0, _react.useContext)(_Navbar.NavbarContext);\n var sidenav = (0, _react.useContext)(_Sidenav.SidenavContext);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n\n var classes = merge(className, withClassPrefix({\n active: active,\n disabled: disabled\n }));\n var handleClick = (0, _react.useCallback)(function (event) {\n if (!disabled) {\n emitSelect(event);\n onClick === null || onClick === void 0 ? void 0 : onClick(event);\n }\n }, [disabled, emitSelect, onClick]);\n\n if (sidenav) {\n return /*#__PURE__*/_react.default.createElement(_SidenavItem.default, (0, _extends2.default)({}, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 94,\n columnNumber: 14\n }\n }));\n }\n\n if (divider) {\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: ref,\n role: \"separator\",\n style: style,\n className: merge(className, prefix('divider'))\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 99,\n columnNumber: 9\n }\n }));\n }\n\n if (panel) {\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: ref,\n style: style,\n className: merge(className, prefix('panel'))\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 111,\n columnNumber: 9\n }\n }), children);\n }\n\n if (navbar) {\n return /*#__PURE__*/_react.default.createElement(_NavbarItem.default, (0, _extends2.default)({}, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 118,\n columnNumber: 14\n }\n }));\n }\n\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n ref: ref,\n tabIndex: disabled ? -1 : undefined\n }, rest, {\n className: classes,\n onClick: handleClick,\n style: style,\n \"aria-selected\": active || undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 122,\n columnNumber: 7\n }\n }), icon, children, /*#__PURE__*/_react.default.createElement(_Ripple.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 133,\n columnNumber: 9\n }\n }));\n});\n\nNavItem.displayName = 'Nav.Item';\nNavItem.propTypes = {\n as: _propTypes.default.elementType,\n active: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n divider: _propTypes.default.bool,\n panel: _propTypes.default.bool,\n onClick: _propTypes.default.func,\n style: _propTypes.default.object,\n icon: _propTypes.default.node,\n onSelect: _propTypes.default.func,\n children: _propTypes.default.node,\n eventKey: _propTypes.default.any\n};\nvar _default = NavItem;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Nav/NavItem.tsx?");
|
|
3423
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _isNil = _interopRequireDefault(__webpack_require__(/*! lodash/isNil */ \"./node_modules/lodash/isNil.js\"));\n\nvar _Ripple = _interopRequireDefault(__webpack_require__(/*! ../Ripple */ \"./src/Ripple/index.tsx\"));\n\nvar _SafeAnchor = _interopRequireDefault(__webpack_require__(/*! ../SafeAnchor */ \"./src/SafeAnchor/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Sidenav = __webpack_require__(/*! ../Sidenav/Sidenav */ \"./src/Sidenav/Sidenav.tsx\");\n\nvar _NavContext = _interopRequireDefault(__webpack_require__(/*! ./NavContext */ \"./src/Nav/NavContext.ts\"));\n\nvar _Navbar = __webpack_require__(/*! ../Navbar/Navbar */ \"./src/Navbar/Navbar.tsx\");\n\nvar _SidenavItem = _interopRequireDefault(__webpack_require__(/*! ../Sidenav/SidenavItem */ \"./src/Sidenav/SidenavItem.tsx\"));\n\nvar _NavbarItem = _interopRequireDefault(__webpack_require__(/*! ../Navbar/NavbarItem */ \"./src/Navbar/NavbarItem.tsx\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Nav/NavItem.tsx\",\n _this = void 0;\n\n/**\n * The <Nav.Item> API\n */\nvar NavItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? _SafeAnchor.default : _props$as,\n activeProp = props.active,\n disabled = props.disabled,\n eventKey = props.eventKey,\n className = props.className,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'nav-item' : _props$classPrefix,\n style = props.style,\n children = props.children,\n icon = props.icon,\n divider = props.divider,\n panel = props.panel,\n onClick = props.onClick,\n onSelectProp = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"active\", \"disabled\", \"eventKey\", \"className\", \"classPrefix\", \"style\", \"children\", \"icon\", \"divider\", \"panel\", \"onClick\", \"onSelect\"]);\n\n var _useContext = (0, _react.useContext)(_NavContext.default),\n activeKey = _useContext.activeKey,\n onSelectFromNav = _useContext.onSelect;\n\n var active = activeProp !== null && activeProp !== void 0 ? activeProp : !(0, _isNil.default)(eventKey) && (0, _utils.shallowEqual)(eventKey, activeKey);\n var emitSelect = (0, _react.useCallback)(function (event) {\n onSelectProp === null || onSelectProp === void 0 ? void 0 : onSelectProp(eventKey, event);\n onSelectFromNav === null || onSelectFromNav === void 0 ? void 0 : onSelectFromNav(eventKey, event);\n }, [eventKey, onSelectProp, onSelectFromNav]);\n var navbar = (0, _react.useContext)(_Navbar.NavbarContext);\n var sidenav = (0, _react.useContext)(_Sidenav.SidenavContext);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n\n var classes = merge(className, withClassPrefix({\n active: active,\n disabled: disabled\n }));\n var handleClick = (0, _react.useCallback)(function (event) {\n if (!disabled) {\n emitSelect(event);\n onClick === null || onClick === void 0 ? void 0 : onClick(event);\n }\n }, [disabled, emitSelect, onClick]);\n\n if (sidenav) {\n return /*#__PURE__*/_react.default.createElement(_SidenavItem.default, (0, _extends2.default)({}, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 94,\n columnNumber: 14\n }\n }));\n }\n\n if (divider) {\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: ref,\n role: \"separator\",\n style: style,\n className: merge(className, prefix('divider'))\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 99,\n columnNumber: 9\n }\n }));\n }\n\n if (panel) {\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n ref: ref,\n style: style,\n className: merge(className, prefix('panel'))\n }, rest, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 111,\n columnNumber: 9\n }\n }), children);\n }\n\n if (navbar) {\n return /*#__PURE__*/_react.default.createElement(_NavbarItem.default, (0, _extends2.default)({\n ref: ref\n }, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 118,\n columnNumber: 14\n }\n }));\n }\n\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n ref: ref,\n tabIndex: disabled ? -1 : undefined\n }, rest, {\n className: classes,\n onClick: handleClick,\n style: style,\n \"aria-selected\": active || undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 122,\n columnNumber: 7\n }\n }), icon, children, /*#__PURE__*/_react.default.createElement(_Ripple.default, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 133,\n columnNumber: 9\n }\n }));\n});\n\nNavItem.displayName = 'Nav.Item';\nNavItem.propTypes = {\n as: _propTypes.default.elementType,\n active: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n divider: _propTypes.default.bool,\n panel: _propTypes.default.bool,\n onClick: _propTypes.default.func,\n style: _propTypes.default.object,\n icon: _propTypes.default.node,\n onSelect: _propTypes.default.func,\n children: _propTypes.default.node,\n eventKey: _propTypes.default.any\n};\nvar _default = NavItem;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Nav/NavItem.tsx?");
|
|
3424
3424
|
|
|
3425
3425
|
/***/ }),
|
|
3426
3426
|
|
|
@@ -3695,7 +3695,7 @@ eval("\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/h
|
|
|
3695
3695
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
3696
3696
|
|
|
3697
3697
|
"use strict";
|
|
3698
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = exports.dropdownMenuPropTypes = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\n\nvar _isString = _interopRequireDefault(__webpack_require__(/*! lodash/isString */ \"./node_modules/lodash/isString.js\"));\n\nvar _isNumber = _interopRequireDefault(__webpack_require__(/*! lodash/isNumber */ \"./node_modules/lodash/isNumber.js\"));\n\nvar _findIndex = _interopRequireDefault(__webpack_require__(/*! lodash/findIndex */ \"./node_modules/lodash/findIndex.js\"));\n\nvar _getPosition = _interopRequireDefault(__webpack_require__(/*! dom-lib/getPosition */ \"./node_modules/dom-lib/esm/getPosition.js\"));\n\nvar _scrollTop = _interopRequireDefault(__webpack_require__(/*! dom-lib/scrollTop */ \"./node_modules/dom-lib/esm/scrollTop.js\"));\n\nvar _getHeight = _interopRequireDefault(__webpack_require__(/*! dom-lib/getHeight */ \"./node_modules/dom-lib/esm/getHeight.js\"));\n\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\n\nvar _VirtualizedList = __webpack_require__(/*! ./VirtualizedList */ \"./src/Picker/VirtualizedList.tsx\");\n\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _DropdownMenuGroup = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenuGroup */ \"./src/Picker/DropdownMenuGroup.tsx\"));\n\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/DropdownMenu.tsx\",\n _this = void 0;\n\nvar DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$data = props.data,\n data = _props$data === void 0 ? [] : _props$data,\n group = props.group,\n _props$maxHeight = props.maxHeight,\n maxHeight = _props$maxHeight === void 0 ? 320 : _props$maxHeight,\n _props$activeItemValu = props.activeItemValues,\n activeItemValues = _props$activeItemValu === void 0 ? [] : _props$activeItemValu,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? [] : _props$disabledItemVa,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu' : _props$classPrefix,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n virtualized = props.virtualized,\n listProps = props.listProps,\n className = props.className,\n style = props.style,\n focusItemValue = props.focusItemValue,\n dropdownMenuItemClassPrefix = props.dropdownMenuItemClassPrefix,\n DropdownMenuItem = props.dropdownMenuItemAs,\n _props$rowHeight = props.rowHeight,\n rowHeight = _props$rowHeight === void 0 ? 36 : _props$rowHeight,\n _props$rowGroupHeight = props.rowGroupHeight,\n rowGroupHeight = _props$rowGroupHeight === void 0 ? 48 : _props$rowGroupHeight,\n renderMenuGroup = props.renderMenuGroup,\n renderMenuItem = props.renderMenuItem,\n onGroupTitleClick = props.onGroupTitleClick,\n onSelect = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"data\", \"group\", \"maxHeight\", \"activeItemValues\", \"disabledItemValues\", \"classPrefix\", \"valueKey\", \"labelKey\", \"virtualized\", \"listProps\", \"className\", \"style\", \"focusItemValue\", \"dropdownMenuItemClassPrefix\", \"dropdownMenuItemAs\", \"rowHeight\", \"rowGroupHeight\", \"renderMenuGroup\", \"renderMenuItem\", \"onGroupTitleClick\", \"onSelect\"]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var classes = merge(className, withClassPrefix('items', {\n grouped: group\n }));\n var styles = (0, _extends2.default)({}, style, {\n maxHeight: maxHeight\n });\n var menuBodyContainerRef = (0, _react.useRef)(null);\n\n var _useState = (0, _react.useState)([]),\n foldedGroupKeys = _useState[0],\n setFoldedGroupKeys = _useState[1];\n\n var handleGroupTitleClick = (0, _react.useCallback)(function (key, event) {\n var nextGroupKeys = foldedGroupKeys.filter(function (item) {\n return item !== key;\n });\n\n if (nextGroupKeys.length === foldedGroupKeys.length) {\n nextGroupKeys.push(key);\n }\n\n setFoldedGroupKeys(nextGroupKeys);\n onGroupTitleClick === null || onGroupTitleClick === void 0 ? void 0 : onGroupTitleClick(event);\n }, [onGroupTitleClick, foldedGroupKeys]);\n var handleSelect = (0, _react.useCallback)(function (item, value, event, checked) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event, checked);\n }, [onSelect]);\n\n var getRowHeight = function getRowHeight(list, _ref) {\n var index = _ref.index;\n var item = list[index];\n\n if (group && item[_getDataGroupBy.KEY_GROUP] && index !== 0) {\n return rowGroupHeight;\n }\n\n return rowHeight;\n };\n\n (0, _react.useEffect)(function () {\n var container = menuBodyContainerRef.current;\n var activeItem = container.querySelector(\".\" + prefix('item-focus'));\n\n if (!activeItem) {\n activeItem = container.querySelector(\".\" + prefix('item-active'));\n }\n\n if (!activeItem) {\n return;\n }\n\n var position = (0, _getPosition.default)(activeItem, container);\n var sTop = (0, _scrollTop.default)(container);\n var sHeight = (0, _getHeight.default)(container);\n\n if (sTop > position.top) {\n (0, _scrollTop.default)(container, Math.max(0, position.top - 20));\n } else if (position.top > sTop + sHeight) {\n (0, _scrollTop.default)(container, Math.max(0, position.top - sHeight + 32));\n }\n }, [focusItemValue, menuBodyContainerRef, prefix]);\n\n var renderItem = function renderItem(list, _ref2) {\n var index = _ref2.index,\n style = _ref2.style;\n var item = list[index];\n var value = item[valueKey];\n var label = item[labelKey];\n\n if ((0, _isUndefined.default)(label) && !item[_getDataGroupBy.KEY_GROUP]) {\n throw Error(\"labelKey \\\"\" + labelKey + \"\\\" is not defined in \\\"data\\\" : \" + index);\n } // Use `value` in keys when If `value` is string or number\n\n\n var itemKey = (0, _isString.default)(value) || (0, _isNumber.default)(value) ? value : index;\n /**\n * Render <DropdownMenuGroup>\n * when if `group` is enabled\n */\n\n if (group && item[_getDataGroupBy.KEY_GROUP]) {\n var groupValue = item[_getDataGroupBy.KEY_GROUP_TITLE]; // TODO: grouped options should be owned by group\n\n return /*#__PURE__*/_react.default.createElement(_DropdownMenuGroup.default, {\n style: style,\n classPrefix: 'picker-menu-group',\n className: (0, _classnames.default)({\n folded: foldedGroupKeys.some(function (key) {\n return key === groupValue;\n })\n }),\n key: \"group-\" + groupValue,\n onClick: handleGroupTitleClick.bind(null, groupValue),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 166,\n columnNumber: 9\n }\n }, renderMenuGroup ? renderMenuGroup(groupValue, item) : groupValue);\n } else if ((0, _isUndefined.default)(value) && !(0, _isUndefined.default)(item[_getDataGroupBy.KEY_GROUP])) {\n throw Error(\"valueKey \\\"\" + valueKey + \"\\\" is not defined in \\\"data\\\" : \" + index + \" \");\n }\n\n var disabled = disabledItemValues === null || disabledItemValues === void 0 ? void 0 : disabledItemValues.some(function (disabledValue) {\n return (0, _shallowEqual.default)(disabledValue, value);\n });\n var active = activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues.some(function (v) {\n return (0, _shallowEqual.default)(v, value);\n });\n var focus = !(0, _isUndefined.default)(focusItemValue) && (0, _shallowEqual.default)(focusItemValue, value);\n return /*#__PURE__*/_react.default.createElement(DropdownMenuItem, {\n style: style,\n key: itemKey,\n disabled: disabled,\n active: active,\n focus: focus,\n value: value,\n classPrefix: dropdownMenuItemClassPrefix,\n onSelect: handleSelect.bind(null, item),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 187,\n columnNumber: 7\n }\n }, renderMenuItem ? renderMenuItem(label, item) : label);\n };\n\n var filteredItems = group ? data.filter(function (item) {\n return !(foldedGroupKeys !== null && foldedGroupKeys !== void 0 && foldedGroupKeys.some(function (key) {\n var _item$parent;\n\n return key === ((_item$parent = item.parent) === null || _item$parent === void 0 ? void 0 : _item$parent[_getDataGroupBy.KEY_GROUP_TITLE]);\n }));\n }) : data;\n var rowCount = filteredItems.length; // Check whether the height of the data exceeds the height of the container.\n\n var useVirtualized = virtualized && rowCount * rowHeight > maxHeight;\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n role: !useVirtualized ? 'listbox' : undefined\n }, rest, {\n className: classes,\n ref: (0, _utils.mergeRefs)(menuBodyContainerRef, ref),\n style: styles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 211,\n columnNumber: 5\n }\n }), useVirtualized ? /*#__PURE__*/_react.default.createElement(_VirtualizedList.AutoSizer, {\n defaultHeight: maxHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 219,\n columnNumber: 9\n }\n }, function (_ref3) {\n var height = _ref3.height,\n width = _ref3.width;\n return /*#__PURE__*/_react.default.createElement(_VirtualizedList.List, (0, _extends2.default)({\n role: \"listbox\",\n containerRole: '',\n \"aria-readonly\": undefined,\n width: width,\n height: height || maxHeight,\n scrollToIndex: (0, _findIndex.default)(data, function (item) {\n return item[valueKey] === (activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues[0]);\n }),\n rowCount: rowCount,\n rowHeight: getRowHeight.bind(_this, filteredItems),\n rowRenderer: renderItem.bind(null, filteredItems)\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 221,\n columnNumber: 13\n }\n }));\n }) : filteredItems.map(function (_item, index) {\n return renderItem(filteredItems, {\n index: index\n });\n }));\n});\n\nvar dropdownMenuPropTypes = {\n classPrefix: _propTypes.default.string.isRequired,\n className: _propTypes.default.string,\n dropdownMenuItemAs: _propTypes.default.elementType.isRequired,\n dropdownMenuItemClassPrefix: _propTypes.default.string,\n data: _propTypes.default.array,\n group: _propTypes.default.bool,\n disabledItemValues: _propTypes.default.array,\n activeItemValues: _propTypes.default.array,\n focusItemValue: _propTypes.default.any,\n maxHeight: _propTypes.default.number,\n valueKey: _propTypes.default.string,\n labelKey: _propTypes.default.string,\n style: _propTypes.default.object,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n virtualized: _propTypes.default.bool,\n listProps: _propTypes.default.any,\n rowHeight: _propTypes.default.number,\n rowGroupHeight: _propTypes.default.number\n};\nexports.dropdownMenuPropTypes = dropdownMenuPropTypes;\nDropdownMenu.displayName = 'DropdownMenu';\nDropdownMenu.propTypes = dropdownMenuPropTypes;\nvar _default = DropdownMenu;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/DropdownMenu.tsx?");
|
|
3698
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = exports.dropdownMenuPropTypes = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _isUndefined = _interopRequireDefault(__webpack_require__(/*! lodash/isUndefined */ \"./node_modules/lodash/isUndefined.js\"));\n\nvar _isString = _interopRequireDefault(__webpack_require__(/*! lodash/isString */ \"./node_modules/lodash/isString.js\"));\n\nvar _isNumber = _interopRequireDefault(__webpack_require__(/*! lodash/isNumber */ \"./node_modules/lodash/isNumber.js\"));\n\nvar _findIndex = _interopRequireDefault(__webpack_require__(/*! lodash/findIndex */ \"./node_modules/lodash/findIndex.js\"));\n\nvar _getPosition = _interopRequireDefault(__webpack_require__(/*! dom-lib/getPosition */ \"./node_modules/dom-lib/esm/getPosition.js\"));\n\nvar _scrollTop = _interopRequireDefault(__webpack_require__(/*! dom-lib/scrollTop */ \"./node_modules/dom-lib/esm/scrollTop.js\"));\n\nvar _getHeight = _interopRequireDefault(__webpack_require__(/*! dom-lib/getHeight */ \"./node_modules/dom-lib/esm/getHeight.js\"));\n\nvar _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\"));\n\nvar _VirtualizedList = __webpack_require__(/*! ./VirtualizedList */ \"./src/Picker/VirtualizedList.tsx\");\n\nvar _shallowEqual = _interopRequireDefault(__webpack_require__(/*! ../utils/shallowEqual */ \"./src/utils/shallowEqual.ts\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _DropdownMenuGroup = _interopRequireDefault(__webpack_require__(/*! ./DropdownMenuGroup */ \"./src/Picker/DropdownMenuGroup.tsx\"));\n\nvar _getDataGroupBy = __webpack_require__(/*! ../utils/getDataGroupBy */ \"./src/utils/getDataGroupBy.ts\");\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/DropdownMenu.tsx\",\n _this = void 0;\n\nvar DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$data = props.data,\n data = _props$data === void 0 ? [] : _props$data,\n group = props.group,\n _props$maxHeight = props.maxHeight,\n maxHeight = _props$maxHeight === void 0 ? 320 : _props$maxHeight,\n _props$activeItemValu = props.activeItemValues,\n activeItemValues = _props$activeItemValu === void 0 ? [] : _props$activeItemValu,\n _props$disabledItemVa = props.disabledItemValues,\n disabledItemValues = _props$disabledItemVa === void 0 ? [] : _props$disabledItemVa,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'dropdown-menu' : _props$classPrefix,\n _props$valueKey = props.valueKey,\n valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,\n _props$labelKey = props.labelKey,\n labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,\n virtualized = props.virtualized,\n listProps = props.listProps,\n className = props.className,\n style = props.style,\n focusItemValue = props.focusItemValue,\n dropdownMenuItemClassPrefix = props.dropdownMenuItemClassPrefix,\n DropdownMenuItem = props.dropdownMenuItemAs,\n _props$rowHeight = props.rowHeight,\n rowHeight = _props$rowHeight === void 0 ? 36 : _props$rowHeight,\n _props$rowGroupHeight = props.rowGroupHeight,\n rowGroupHeight = _props$rowGroupHeight === void 0 ? 48 : _props$rowGroupHeight,\n renderMenuGroup = props.renderMenuGroup,\n renderMenuItem = props.renderMenuItem,\n onGroupTitleClick = props.onGroupTitleClick,\n onSelect = props.onSelect,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"data\", \"group\", \"maxHeight\", \"activeItemValues\", \"disabledItemValues\", \"classPrefix\", \"valueKey\", \"labelKey\", \"virtualized\", \"listProps\", \"className\", \"style\", \"focusItemValue\", \"dropdownMenuItemClassPrefix\", \"dropdownMenuItemAs\", \"rowHeight\", \"rowGroupHeight\", \"renderMenuGroup\", \"renderMenuItem\", \"onGroupTitleClick\", \"onSelect\"]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix,\n merge = _useClassNames.merge;\n\n var classes = merge(className, withClassPrefix('items', {\n grouped: group\n }));\n var styles = (0, _extends2.default)({}, style, {\n maxHeight: maxHeight\n });\n var menuBodyContainerRef = (0, _react.useRef)(null);\n\n var _useState = (0, _react.useState)([]),\n foldedGroupKeys = _useState[0],\n setFoldedGroupKeys = _useState[1];\n\n var handleGroupTitleClick = (0, _react.useCallback)(function (key, event) {\n var nextGroupKeys = foldedGroupKeys.filter(function (item) {\n return item !== key;\n });\n\n if (nextGroupKeys.length === foldedGroupKeys.length) {\n nextGroupKeys.push(key);\n }\n\n setFoldedGroupKeys(nextGroupKeys);\n onGroupTitleClick === null || onGroupTitleClick === void 0 ? void 0 : onGroupTitleClick(event);\n }, [onGroupTitleClick, foldedGroupKeys]);\n var handleSelect = (0, _react.useCallback)(function (item, value, event, checked) {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event, checked);\n }, [onSelect]);\n\n var getRowHeight = function getRowHeight(list, _ref) {\n var index = _ref.index;\n var item = list[index];\n\n if (group && item[_getDataGroupBy.KEY_GROUP] && index !== 0) {\n return rowGroupHeight;\n }\n\n return rowHeight;\n };\n\n (0, _react.useEffect)(function () {\n var container = menuBodyContainerRef.current;\n\n if (!container) {\n return;\n }\n\n var activeItem = container.querySelector(\".\" + prefix('item-focus'));\n\n if (!activeItem) {\n activeItem = container.querySelector(\".\" + prefix('item-active'));\n }\n\n if (!activeItem) {\n return;\n }\n\n var position = (0, _getPosition.default)(activeItem, container);\n var sTop = (0, _scrollTop.default)(container);\n var sHeight = (0, _getHeight.default)(container);\n\n if (sTop > position.top) {\n (0, _scrollTop.default)(container, Math.max(0, position.top - 20));\n } else if (position.top > sTop + sHeight) {\n (0, _scrollTop.default)(container, Math.max(0, position.top - sHeight + 32));\n }\n }, [focusItemValue, menuBodyContainerRef, prefix]);\n\n var renderItem = function renderItem(list, _ref2) {\n var index = _ref2.index,\n style = _ref2.style;\n var item = list[index];\n var value = item[valueKey];\n var label = item[labelKey];\n\n if ((0, _isUndefined.default)(label) && !item[_getDataGroupBy.KEY_GROUP]) {\n throw Error(\"labelKey \\\"\" + labelKey + \"\\\" is not defined in \\\"data\\\" : \" + index);\n } // Use `value` in keys when If `value` is string or number\n\n\n var itemKey = (0, _isString.default)(value) || (0, _isNumber.default)(value) ? value : index;\n /**\n * Render <DropdownMenuGroup>\n * when if `group` is enabled\n */\n\n if (group && item[_getDataGroupBy.KEY_GROUP]) {\n var groupValue = item[_getDataGroupBy.KEY_GROUP_TITLE]; // TODO: grouped options should be owned by group\n\n return /*#__PURE__*/_react.default.createElement(_DropdownMenuGroup.default, {\n style: style,\n classPrefix: 'picker-menu-group',\n className: (0, _classnames.default)({\n folded: foldedGroupKeys.some(function (key) {\n return key === groupValue;\n })\n }),\n key: \"group-\" + groupValue,\n onClick: handleGroupTitleClick.bind(null, groupValue),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 171,\n columnNumber: 9\n }\n }, renderMenuGroup ? renderMenuGroup(groupValue, item) : groupValue);\n } else if ((0, _isUndefined.default)(value) && !(0, _isUndefined.default)(item[_getDataGroupBy.KEY_GROUP])) {\n throw Error(\"valueKey \\\"\" + valueKey + \"\\\" is not defined in \\\"data\\\" : \" + index + \" \");\n }\n\n var disabled = disabledItemValues === null || disabledItemValues === void 0 ? void 0 : disabledItemValues.some(function (disabledValue) {\n return (0, _shallowEqual.default)(disabledValue, value);\n });\n var active = activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues.some(function (v) {\n return (0, _shallowEqual.default)(v, value);\n });\n var focus = !(0, _isUndefined.default)(focusItemValue) && (0, _shallowEqual.default)(focusItemValue, value);\n return /*#__PURE__*/_react.default.createElement(DropdownMenuItem, {\n style: style,\n key: itemKey,\n disabled: disabled,\n active: active,\n focus: focus,\n value: value,\n classPrefix: dropdownMenuItemClassPrefix,\n onSelect: handleSelect.bind(null, item),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 192,\n columnNumber: 7\n }\n }, renderMenuItem ? renderMenuItem(label, item) : label);\n };\n\n var filteredItems = group ? data.filter(function (item) {\n return !(foldedGroupKeys !== null && foldedGroupKeys !== void 0 && foldedGroupKeys.some(function (key) {\n var _item$parent;\n\n return key === ((_item$parent = item.parent) === null || _item$parent === void 0 ? void 0 : _item$parent[_getDataGroupBy.KEY_GROUP_TITLE]);\n }));\n }) : data;\n var rowCount = filteredItems.length; // Check whether the height of the data exceeds the height of the container.\n\n var useVirtualized = virtualized && rowCount * rowHeight > maxHeight;\n return /*#__PURE__*/_react.default.createElement(\"div\", (0, _extends2.default)({\n role: !useVirtualized ? 'listbox' : undefined\n }, rest, {\n className: classes,\n ref: (0, _utils.mergeRefs)(menuBodyContainerRef, ref),\n style: styles,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 216,\n columnNumber: 5\n }\n }), useVirtualized ? /*#__PURE__*/_react.default.createElement(_VirtualizedList.AutoSizer, {\n defaultHeight: maxHeight,\n style: {\n width: 'auto',\n height: 'auto'\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 224,\n columnNumber: 9\n }\n }, function (_ref3) {\n var height = _ref3.height,\n width = _ref3.width;\n return /*#__PURE__*/_react.default.createElement(_VirtualizedList.List, (0, _extends2.default)({\n role: \"listbox\",\n containerRole: '',\n \"aria-readonly\": undefined,\n width: width,\n height: height || maxHeight,\n scrollToIndex: (0, _findIndex.default)(data, function (item) {\n return item[valueKey] === (activeItemValues === null || activeItemValues === void 0 ? void 0 : activeItemValues[0]);\n }),\n rowCount: rowCount,\n rowHeight: getRowHeight.bind(_this, filteredItems),\n rowRenderer: renderItem.bind(null, filteredItems)\n }, listProps, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 226,\n columnNumber: 13\n }\n }));\n }) : filteredItems.map(function (_item, index) {\n return renderItem(filteredItems, {\n index: index\n });\n }));\n});\n\nvar dropdownMenuPropTypes = {\n classPrefix: _propTypes.default.string.isRequired,\n className: _propTypes.default.string,\n dropdownMenuItemAs: _propTypes.default.elementType.isRequired,\n dropdownMenuItemClassPrefix: _propTypes.default.string,\n data: _propTypes.default.array,\n group: _propTypes.default.bool,\n disabledItemValues: _propTypes.default.array,\n activeItemValues: _propTypes.default.array,\n focusItemValue: _propTypes.default.any,\n maxHeight: _propTypes.default.number,\n valueKey: _propTypes.default.string,\n labelKey: _propTypes.default.string,\n style: _propTypes.default.object,\n renderMenuItem: _propTypes.default.func,\n renderMenuGroup: _propTypes.default.func,\n onSelect: _propTypes.default.func,\n onGroupTitleClick: _propTypes.default.func,\n virtualized: _propTypes.default.bool,\n listProps: _propTypes.default.any,\n rowHeight: _propTypes.default.number,\n rowGroupHeight: _propTypes.default.number\n};\nexports.dropdownMenuPropTypes = dropdownMenuPropTypes;\nDropdownMenu.displayName = 'DropdownMenu';\nDropdownMenu.propTypes = dropdownMenuPropTypes;\nvar _default = DropdownMenu;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/DropdownMenu.tsx?");
|
|
3699
3699
|
|
|
3700
3700
|
/***/ }),
|
|
3701
3701
|
|
|
@@ -3750,7 +3750,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
3750
3750
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
3751
3751
|
|
|
3752
3752
|
"use strict";
|
|
3753
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _debounce = _interopRequireDefault(__webpack_require__(/*! lodash/debounce */ \"./node_modules/lodash/debounce.js\"));\n\nvar _ToggleButton = _interopRequireDefault(__webpack_require__(/*! ./ToggleButton */ \"./src/Picker/ToggleButton.tsx\"));\n\nvar _CloseButton = _interopRequireDefault(__webpack_require__(/*! ../CloseButton */ \"./src/CloseButton/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\n\nvar _useToggleCaret = _interopRequireDefault(__webpack_require__(/*! ../utils/useToggleCaret */ \"./src/utils/useToggleCaret.tsx\"));\n\nvar _TextMask = _interopRequireDefault(__webpack_require__(/*! ../MaskedInput/TextMask */ \"./src/MaskedInput/TextMask.tsx\"));\n\nvar _deprecatePropType = _interopRequireDefault(__webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerToggle.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2;\n\nvar defaultInputMask = [];\n\nvar PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var activeProp = props.active,\n _props$as = props.as,\n Component = _props$as === void 0 ? _ToggleButton.default : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-toggle' : _props$classPrefix,\n children = props.children,\n _props$caret = props.caret,\n caret = _props$caret === void 0 ? true : _props$caret,\n className = props.className,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n hasValue = props.hasValue,\n cleanableProp = props.cleanable,\n _props$tabIndex = props.tabIndex,\n tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,\n id = props.id,\n value = props.value,\n input = props.input,\n inputPlaceholder = props.inputPlaceholder,\n inputValueProp = props.inputValue,\n _props$inputMask = props.inputMask,\n inputMask = _props$inputMask === void 0 ? defaultInputMask : _props$inputMask,\n onInputChange = props.onInputChange,\n onInputPressEnter = props.onInputPressEnter,\n onInputBlur = props.onInputBlur,\n onInputFocus = props.onInputFocus,\n onClean = props.onClean,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n caretComponent = props.caretComponent,\n _props$caretAs = props.caretAs,\n caretAs = _props$caretAs === void 0 ? caretComponent : _props$caretAs,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"active\", \"as\", \"classPrefix\", \"children\", \"caret\", \"className\", \"disabled\", \"readOnly\", \"plaintext\", \"hasValue\", \"cleanable\", \"tabIndex\", \"id\", \"value\", \"input\", \"inputPlaceholder\", \"inputValue\", \"inputMask\", \"onInputChange\", \"onInputPressEnter\", \"onInputBlur\", \"onInputFocus\", \"onClean\", \"onFocus\", \"onBlur\", \"placement\", \"caretComponent\", \"caretAs\"]);\n var inputRef = (0, _react.useRef)(null);\n\n var _useState = (0, _react.useState)(false),\n activeState = _useState[0],\n setActive = _useState[1];\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n\n var getInputValue = (0, _react.useCallback)(function () {\n return typeof inputValueProp === 'undefined' ? Array.isArray(value) ? value.join(',') : value : inputValueProp;\n }, [inputValueProp, value]);\n\n var _useState2 = (0, _react.useState)(getInputValue),\n inputValue = _useState2[0],\n setInputValue = _useState2[1];\n\n (0, _react.useEffect)(function () {\n var value = getInputValue();\n setInputValue(value);\n }, [getInputValue]);\n var classes = merge(className, withClassPrefix({\n active: activeProp || activeState\n }));\n var handleFocus = (0, _react.useCallback)(function (event) {\n setActive(true);\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);\n\n if (input) {\n var _inputRef$current;\n\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();\n }\n }, [input, onFocus]);\n var handleBlur = (0, _react.useCallback)(function (event) {\n if (document.activeElement !== inputRef.current) {\n var _inputRef$current2;\n\n setActive(false);\n (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.blur();\n }\n\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);\n }, [onBlur]);\n\n var handleInputBlur = function handleInputBlur(event) {\n setInputValue(getInputValue());\n onInputBlur === null || onInputBlur === void 0 ? void 0 : onInputBlur(event);\n };\n\n var handleClean = (0, _react.useCallback)(function (event) {\n event.stopPropagation();\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n setActive(false);\n }, [onClean]);\n var handleInputChange = (0, _react.useCallback)(function (event) {\n var _event$target;\n\n var value = (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value;\n setInputValue(value);\n onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(value, event);\n }, [onInputChange]);\n var handleInputKeyDown = (0, _react.useCallback)(function (event) {\n if (input && event.key === _utils.KEY_VALUES.ENTER) {\n onInputPressEnter === null || onInputPressEnter === void 0 ? void 0 : onInputPressEnter(event);\n }\n }, [onInputPressEnter, input]);\n var ToggleCaret = (0, _useToggleCaret.default)(placement);\n var Caret = caretAs !== null && caretAs !== void 0 ? caretAs : ToggleCaret;\n\n if (plaintext) {\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, {\n ref: ref,\n localeKey: \"notSelected\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 163,\n columnNumber: 9\n }\n }, hasValue ? children : null);\n }\n\n var showCleanButton = cleanableProp && hasValue && !readOnly; // When the component is read-only or disabled, the input is not interactive.\n\n var inputFocused = readOnly || disabled ? false : input && activeState;\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"combobox\",\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": activeProp,\n \"aria-disabled\": disabled,\n \"aria-owns\": id ? id + \"-listbox\" : undefined\n }, rest, {\n ref: ref,\n disabled: disabled,\n tabIndex: disabled ? undefined : tabIndex,\n className: classes,\n onFocus: !disabled ? handleFocus : null // The debounce is set to 200 to solve the flicker caused by the switch between input and div.\n ,\n onBlur: !disabled ? (0, _debounce.default)(handleBlur, 200) : null,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 175,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(_TextMask.default, {\n mask: inputMask,\n value: Array.isArray(inputValue) ? inputValue.toString() : inputValue,\n onBlur: handleInputBlur,\n onFocus: onInputFocus,\n onChange: handleInputChange,\n onKeyDown: handleInputKeyDown,\n id: id,\n \"aria-hidden\": !inputFocused,\n readOnly: !inputFocused,\n disabled: disabled,\n \"aria-controls\": id ? id + \"-listbox\" : undefined,\n tabIndex: -1,\n className: prefix('textbox', {\n 'read-only': !inputFocused\n }),\n placeholder: inputPlaceholder,\n render: function render(ref, props) {\n return /*#__PURE__*/_react.default.createElement(\"input\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(inputRef, ref)\n }, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 205,\n columnNumber: 35\n }\n }));\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 190,\n columnNumber: 9\n }\n }), children ? /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix(hasValue ? 'value' : 'placeholder'),\n \"aria-placeholder\": typeof children === 'string' ? children : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 209,\n columnNumber: 11\n }\n }, children) : null, showCleanButton && /*#__PURE__*/_react.default.createElement(_CloseButton.default, {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"clean\"]))),\n tabIndex: -1,\n locale: {\n closeLabel: 'Clear'\n },\n onClick: handleClean,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 218,\n columnNumber: 11\n }\n }), caret && /*#__PURE__*/_react.default.createElement(Caret, {\n className: prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"caret\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 225,\n columnNumber: 19\n }\n }));\n});\n\nPickerToggle.displayName = 'PickerToggle';\nPickerToggle.propTypes = {\n classPrefix: _propTypes.default.string,\n hasValue: _propTypes.default.bool,\n cleanable: _propTypes.default.bool,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n caret: _propTypes.default.bool,\n as: _propTypes.default.elementType,\n onClean: _propTypes.default.func,\n active: _propTypes.default.bool,\n readOnly: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n plaintext: _propTypes.default.bool,\n caretComponent: (0, _deprecatePropType.default)(_propTypes.default.elementType, 'Use `caretAs` instead.'),\n caretAs: _propTypes.default.elementType\n};\nvar _default = PickerToggle;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerToggle.tsx?");
|
|
3753
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _taggedTemplateLiteralLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteralLoose */ \"./node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js\"));\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _debounce = _interopRequireDefault(__webpack_require__(/*! lodash/debounce */ \"./node_modules/lodash/debounce.js\"));\n\nvar _ToggleButton = _interopRequireDefault(__webpack_require__(/*! ./ToggleButton */ \"./src/Picker/ToggleButton.tsx\"));\n\nvar _CloseButton = _interopRequireDefault(__webpack_require__(/*! ../CloseButton */ \"./src/CloseButton/index.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\n\nvar _useToggleCaret = _interopRequireDefault(__webpack_require__(/*! ../utils/useToggleCaret */ \"./src/utils/useToggleCaret.tsx\"));\n\nvar _TextMask = _interopRequireDefault(__webpack_require__(/*! ../MaskedInput/TextMask */ \"./src/MaskedInput/TextMask.tsx\"));\n\nvar _deprecatePropType = _interopRequireDefault(__webpack_require__(/*! ../utils/deprecatePropType */ \"./src/utils/deprecatePropType.ts\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Picker/PickerToggle.tsx\",\n _this = void 0,\n _templateObject,\n _templateObject2;\n\nvar defaultInputMask = [];\n\nvar PickerToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var activeProp = props.active,\n _props$as = props.as,\n Component = _props$as === void 0 ? _ToggleButton.default : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'picker-toggle' : _props$classPrefix,\n children = props.children,\n _props$caret = props.caret,\n caret = _props$caret === void 0 ? true : _props$caret,\n className = props.className,\n disabled = props.disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n hasValue = props.hasValue,\n cleanableProp = props.cleanable,\n _props$tabIndex = props.tabIndex,\n tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,\n id = props.id,\n value = props.value,\n input = props.input,\n inputPlaceholder = props.inputPlaceholder,\n inputValueProp = props.inputValue,\n _props$inputMask = props.inputMask,\n inputMask = _props$inputMask === void 0 ? defaultInputMask : _props$inputMask,\n onInputChange = props.onInputChange,\n onInputPressEnter = props.onInputPressEnter,\n onInputBlur = props.onInputBlur,\n onInputFocus = props.onInputFocus,\n onClean = props.onClean,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,\n caretComponent = props.caretComponent,\n _props$caretAs = props.caretAs,\n caretAs = _props$caretAs === void 0 ? caretComponent : _props$caretAs,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"active\", \"as\", \"classPrefix\", \"children\", \"caret\", \"className\", \"disabled\", \"readOnly\", \"plaintext\", \"hasValue\", \"cleanable\", \"tabIndex\", \"id\", \"value\", \"input\", \"inputPlaceholder\", \"inputValue\", \"inputMask\", \"onInputChange\", \"onInputPressEnter\", \"onInputBlur\", \"onInputFocus\", \"onClean\", \"onFocus\", \"onBlur\", \"placement\", \"caretComponent\", \"caretAs\"]);\n var inputRef = (0, _react.useRef)(null);\n\n var _useState = (0, _react.useState)(false),\n activeState = _useState[0],\n setActive = _useState[1];\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge,\n prefix = _useClassNames.prefix;\n\n var getInputValue = (0, _react.useCallback)(function () {\n return typeof inputValueProp === 'undefined' ? Array.isArray(value) ? value.join(',') : value : inputValueProp;\n }, [inputValueProp, value]);\n\n var _useState2 = (0, _react.useState)(getInputValue),\n inputValue = _useState2[0],\n setInputValue = _useState2[1];\n\n (0, _react.useEffect)(function () {\n var value = getInputValue();\n setInputValue(value);\n }, [getInputValue]);\n var classes = merge(className, withClassPrefix({\n active: activeProp || activeState\n }));\n var handleFocus = (0, _react.useCallback)(function (event) {\n setActive(true);\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);\n\n if (input) {\n var _inputRef$current;\n\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();\n }\n }, [input, onFocus]);\n var handleBlur = (0, _react.useCallback)(function (event) {\n if (inputRef.current && document.activeElement !== inputRef.current) {\n setActive(false);\n inputRef.current.blur();\n }\n\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);\n }, [onBlur]);\n\n var handleInputBlur = function handleInputBlur(event) {\n setInputValue(getInputValue());\n onInputBlur === null || onInputBlur === void 0 ? void 0 : onInputBlur(event);\n };\n\n var handleClean = (0, _react.useCallback)(function (event) {\n event.stopPropagation();\n onClean === null || onClean === void 0 ? void 0 : onClean(event);\n setActive(false);\n }, [onClean]);\n var handleInputChange = (0, _react.useCallback)(function (event) {\n var _event$target;\n\n var value = (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value;\n setInputValue(value);\n onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(value, event);\n }, [onInputChange]);\n var handleInputKeyDown = (0, _react.useCallback)(function (event) {\n if (input && event.key === _utils.KEY_VALUES.ENTER) {\n onInputPressEnter === null || onInputPressEnter === void 0 ? void 0 : onInputPressEnter(event);\n }\n }, [onInputPressEnter, input]);\n var ToggleCaret = (0, _useToggleCaret.default)(placement);\n var Caret = caretAs !== null && caretAs !== void 0 ? caretAs : ToggleCaret;\n\n if (plaintext) {\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, {\n ref: ref,\n localeKey: \"notSelected\",\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 163,\n columnNumber: 9\n }\n }, hasValue ? children : null);\n }\n\n var showCleanButton = cleanableProp && hasValue && !readOnly; // When the component is read-only or disabled, the input is not interactive.\n\n var inputFocused = readOnly || disabled ? false : input && activeState;\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"combobox\",\n \"aria-haspopup\": \"listbox\",\n \"aria-expanded\": activeProp,\n \"aria-disabled\": disabled,\n \"aria-owns\": id ? id + \"-listbox\" : undefined\n }, rest, {\n ref: ref,\n disabled: disabled,\n tabIndex: disabled ? undefined : tabIndex,\n className: classes,\n onFocus: !disabled ? handleFocus : null // The debounce is set to 200 to solve the flicker caused by the switch between input and div.\n ,\n onBlur: !disabled ? (0, _debounce.default)(handleBlur, 200) : null,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 175,\n columnNumber: 7\n }\n }), /*#__PURE__*/_react.default.createElement(_TextMask.default, {\n mask: inputMask,\n value: Array.isArray(inputValue) ? inputValue.toString() : inputValue,\n onBlur: handleInputBlur,\n onFocus: onInputFocus,\n onChange: handleInputChange,\n onKeyDown: handleInputKeyDown,\n id: id,\n \"aria-hidden\": !inputFocused,\n readOnly: !inputFocused,\n disabled: disabled,\n \"aria-controls\": id ? id + \"-listbox\" : undefined,\n tabIndex: -1,\n className: prefix('textbox', {\n 'read-only': !inputFocused\n }),\n placeholder: inputPlaceholder,\n render: function render(ref, props) {\n return /*#__PURE__*/_react.default.createElement(\"input\", (0, _extends2.default)({\n ref: (0, _utils.mergeRefs)(inputRef, ref)\n }, props, {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 205,\n columnNumber: 35\n }\n }));\n },\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 190,\n columnNumber: 9\n }\n }), children ? /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix(hasValue ? 'value' : 'placeholder'),\n \"aria-placeholder\": typeof children === 'string' ? children : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 209,\n columnNumber: 11\n }\n }, children) : null, showCleanButton && /*#__PURE__*/_react.default.createElement(_CloseButton.default, {\n className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)([\"clean\"]))),\n tabIndex: -1,\n locale: {\n closeLabel: 'Clear'\n },\n onClick: handleClean,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 218,\n columnNumber: 11\n }\n }), caret && /*#__PURE__*/_react.default.createElement(Caret, {\n className: prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)([\"caret\"]))),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 225,\n columnNumber: 19\n }\n }));\n});\n\nPickerToggle.displayName = 'PickerToggle';\nPickerToggle.propTypes = {\n classPrefix: _propTypes.default.string,\n hasValue: _propTypes.default.bool,\n cleanable: _propTypes.default.bool,\n className: _propTypes.default.string,\n children: _propTypes.default.node,\n caret: _propTypes.default.bool,\n as: _propTypes.default.elementType,\n onClean: _propTypes.default.func,\n active: _propTypes.default.bool,\n readOnly: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n plaintext: _propTypes.default.bool,\n caretComponent: (0, _deprecatePropType.default)(_propTypes.default.elementType, 'Use `caretAs` instead.'),\n caretAs: _propTypes.default.elementType\n};\nvar _default = PickerToggle;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Picker/PickerToggle.tsx?");
|
|
3754
3754
|
|
|
3755
3755
|
/***/ }),
|
|
3756
3756
|
|
|
@@ -4718,7 +4718,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
4718
4718
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
4719
4719
|
|
|
4720
4720
|
"use strict";
|
|
4721
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = exports.formatSize = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _Attachment = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Attachment */ \"./node_modules/@rsuite/icons/legacy/Attachment.js\"));\n\nvar _Reload = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/Reload */ \"./node_modules/@rsuite/icons/Reload.js\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _CloseButton = _interopRequireDefault(__webpack_require__(/*! ../CloseButton */ \"./src/CloseButton/index.tsx\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Uploader/UploadFileItem.tsx\",\n _this = void 0;\n\n/**\n * Format display file size\n * @param size\n */\nvar formatSize = function formatSize(size) {\n if (size === void 0) {\n size = 0;\n }\n\n var K = 1024;\n var M = 1024 * 1024;\n var G = 1024 * 1024 * 1024;\n\n if (size > G) {\n return (size / G).toFixed(2) + \"GB\";\n }\n\n if (size > M) {\n return (size / M).toFixed(2) + \"MB\";\n }\n\n if (size > K) {\n return (size / K).toFixed(2) + \"KB\";\n }\n\n return size + \"B\";\n};\n\nexports.formatSize = formatSize;\n\nvar UploadFileItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n disabled = props.disabled,\n _props$allowReupload = props.allowReupload,\n allowReupload = _props$allowReupload === void 0 ? true : _props$allowReupload,\n file = props.file,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'uploader-file-item' : _props$classPrefix,\n _props$listType = props.listType,\n listType = _props$listType === void 0 ? 'text' : _props$listType,\n className = props.className,\n _props$removable = props.removable,\n removable = _props$removable === void 0 ? true : _props$removable,\n _props$maxPreviewFile = props.maxPreviewFileSize,\n maxPreviewFileSize = _props$maxPreviewFile === void 0 ? 1024 * 1024 * 5 : _props$maxPreviewFile,\n locale = props.locale,\n renderFileInfo = props.renderFileInfo,\n renderThumbnail = props.renderThumbnail,\n onPreview = props.onPreview,\n onCancel = props.onCancel,\n onReupload = props.onReupload,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"disabled\", \"allowReupload\", \"file\", \"classPrefix\", \"listType\", \"className\", \"removable\", \"maxPreviewFileSize\", \"locale\", \"renderFileInfo\", \"renderThumbnail\", \"onPreview\", \"onCancel\", \"onReupload\"]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n\n var classes = merge(className, withClassPrefix(listType, {\n disabled: disabled,\n 'has-error': file.status === 'error'\n }));\n\n var _useState = (0, _react.useState)(file.url ? file.url : null),\n previewImage = _useState[0],\n setPreviewImage = _useState[1];\n /**\n * Get thumbnail of image file\n */\n\n\n var getThumbnail = (0, _react.useCallback)(function (callback) {\n var _file$blobFile;\n\n if (!~['picture-text', 'picture'].indexOf(listType)) {\n return;\n } // The thumbnail file size cannot be larger than the preset value.\n\n\n if (!file.blobFile || (file === null || file === void 0 ? void 0 : (_file$blobFile = file.blobFile) === null || _file$blobFile === void 0 ? void 0 : _file$blobFile.size) > maxPreviewFileSize) {\n return;\n }\n\n (0, _utils.previewFile)(file.blobFile, callback);\n }, [file, listType, maxPreviewFileSize]);\n (0, _react.useEffect)(function () {\n if (!file.url) {\n getThumbnail(function (previewImage) {\n setPreviewImage(previewImage);\n });\n }\n }, [file.url, getThumbnail]);\n var handlePreview = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n onPreview === null || onPreview === void 0 ? void 0 : onPreview(file, event);\n }, [disabled, file, onPreview]);\n var handleRemove = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n onCancel === null || onCancel === void 0 ? void 0 : onCancel(file.fileKey, event);\n }, [disabled, file.fileKey, onCancel]);\n var handleReupload = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n onReupload === null || onReupload === void 0 ? void 0 : onReupload(file, event);\n }, [disabled, file, onReupload]);\n /**\n * Rendering progress bar\n */\n\n var renderProgressBar = function renderProgressBar() {\n var _file$progress = file.progress,\n progress = _file$progress === void 0 ? 0 : _file$progress,\n status = file.status;\n var show = !disabled && status === 'uploading';\n var visibility = show ? 'visible' : 'hidden';\n var wrapStyle = {\n visibility: visibility\n };\n var progressbarStyle = {\n width: progress + \"%\"\n };\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('progress'),\n style: wrapStyle,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 151,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('progress-bar'),\n style: progressbarStyle,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 152,\n columnNumber: 9\n }\n }));\n };\n\n var renderPreview = function renderPreview() {\n var thumbnail = previewImage ? /*#__PURE__*/_react.default.createElement(\"img\", {\n role: \"presentation\",\n src: previewImage,\n alt: file.name,\n onClick: handlePreview,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 159,\n columnNumber: 7\n }\n }) : /*#__PURE__*/_react.default.createElement(_Attachment.default, {\n className: prefix('icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 161,\n columnNumber: 7\n }\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('preview'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 165,\n columnNumber: 7\n }\n }, renderThumbnail ? renderThumbnail(file, thumbnail) : thumbnail);\n };\n /**\n * Render the loading state.\n */\n\n\n var renderIcon = function renderIcon() {\n var uploading = file.status === 'uploading';\n var classes = prefix('icon-wrapper', {\n 'icon-loading': uploading\n });\n\n if (uploading) {\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 180,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"i\", {\n className: prefix('icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 181,\n columnNumber: 11\n }\n }));\n }\n\n if (listType === 'picture' || listType === 'picture-text') {\n return null;\n }\n\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 191,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Attachment.default, {\n className: prefix('icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 192,\n columnNumber: 9\n }\n }));\n };\n /**\n * Render the remove file button.\n */\n\n\n var renderRemoveButton = function renderRemoveButton() {\n if (!removable) {\n return null;\n }\n\n return /*#__PURE__*/_react.default.createElement(_CloseButton.default, {\n className: prefix('btn-remove'),\n onClick: handleRemove,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 205,\n columnNumber: 12\n }\n });\n };\n /**\n * Render error messages.\n */\n\n\n var renderErrorStatus = function renderErrorStatus() {\n if (file.status === 'error') {\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('status'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 214,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 215,\n columnNumber: 12\n }\n }, locale === null || locale === void 0 ? void 0 : locale.error), allowReupload && /*#__PURE__*/_react.default.createElement(\"a\", {\n role: \"button\",\n tabIndex: -1,\n onClick: handleReupload,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 217,\n columnNumber: 13\n }\n }, /*#__PURE__*/_react.default.createElement(_Reload.default, {\n className: prefix('icon-reupload'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 218,\n columnNumber: 15\n }\n })));\n }\n\n return null;\n };\n /**\n * Render file size.\n */\n\n\n var renderFileSize = function renderFileSize() {\n if (file.status !== 'error' && file.blobFile) {\n var _file$blobFile2;\n\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('size'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 232,\n columnNumber: 14\n }\n }, formatSize(file === null || file === void 0 ? void 0 : (_file$blobFile2 = file.blobFile) === null || _file$blobFile2 === void 0 ? void 0 : _file$blobFile2.size));\n }\n\n return null;\n };\n /**\n * Render file panel\n */\n\n\n var renderFilePanel = function renderFilePanel() {\n var fileElement = /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('title'),\n onClick: handlePreview,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 242,\n columnNumber: 7\n }\n }, file.name);\n\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('panel'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 247,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('content'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 248,\n columnNumber: 9\n }\n }, renderFileInfo ? renderFileInfo(file, fileElement) : fileElement, renderErrorStatus(), renderFileSize()));\n };\n\n if (listType === 'picture') {\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 259,\n columnNumber: 7\n }\n }), renderIcon(), renderPreview(), renderErrorStatus(), renderRemoveButton());\n }\n\n if (listType === 'picture-text') {\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 270,\n columnNumber: 7\n }\n }), renderIcon(), renderPreview(), renderFilePanel(), renderProgressBar(), renderRemoveButton());\n }\n\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 281,\n columnNumber: 5\n }\n }), renderIcon(), renderFilePanel(), renderProgressBar(), renderRemoveButton());\n});\n\nUploadFileItem.displayName = 'UploadFileItem';\nUploadFileItem.propTypes = {\n locale: _propTypes.default.any,\n file: _propTypes.default.object.isRequired,\n listType: _propTypes.default.oneOf(['text', 'picture-text', 'picture']).isRequired,\n disabled: _propTypes.default.bool,\n className: _propTypes.default.string,\n maxPreviewFileSize: _propTypes.default.number,\n classPrefix: _propTypes.default.string,\n removable: _propTypes.default.bool,\n allowReupload: _propTypes.default.bool,\n renderFileInfo: _propTypes.default.func,\n renderThumbnail: _propTypes.default.func,\n onCancel: _propTypes.default.func,\n onPreview: _propTypes.default.func,\n onReupload: _propTypes.default.func\n};\nvar _default = UploadFileItem;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Uploader/UploadFileItem.tsx?");
|
|
4721
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = exports.formatSize = void 0;\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _Attachment = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/legacy/Attachment */ \"./node_modules/@rsuite/icons/legacy/Attachment.js\"));\n\nvar _Reload = _interopRequireDefault(__webpack_require__(/*! @rsuite/icons/Reload */ \"./node_modules/@rsuite/icons/Reload.js\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _CloseButton = _interopRequireDefault(__webpack_require__(/*! ../CloseButton */ \"./src/CloseButton/index.tsx\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Uploader/UploadFileItem.tsx\",\n _this = void 0;\n\n/**\n * Format display file size\n * @param size\n */\nvar formatSize = function formatSize(size) {\n if (size === void 0) {\n size = 0;\n }\n\n var K = 1024;\n var M = 1024 * 1024;\n var G = 1024 * 1024 * 1024;\n\n if (size > G) {\n return (size / G).toFixed(2) + \"GB\";\n }\n\n if (size > M) {\n return (size / M).toFixed(2) + \"MB\";\n }\n\n if (size > K) {\n return (size / K).toFixed(2) + \"KB\";\n }\n\n return size + \"B\";\n};\n\nexports.formatSize = formatSize;\n\nvar UploadFileItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n disabled = props.disabled,\n _props$allowReupload = props.allowReupload,\n allowReupload = _props$allowReupload === void 0 ? true : _props$allowReupload,\n file = props.file,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'uploader-file-item' : _props$classPrefix,\n _props$listType = props.listType,\n listType = _props$listType === void 0 ? 'text' : _props$listType,\n className = props.className,\n _props$removable = props.removable,\n removable = _props$removable === void 0 ? true : _props$removable,\n _props$maxPreviewFile = props.maxPreviewFileSize,\n maxPreviewFileSize = _props$maxPreviewFile === void 0 ? 1024 * 1024 * 5 : _props$maxPreviewFile,\n locale = props.locale,\n renderFileInfo = props.renderFileInfo,\n renderThumbnail = props.renderThumbnail,\n onPreview = props.onPreview,\n onCancel = props.onCancel,\n onReupload = props.onReupload,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"disabled\", \"allowReupload\", \"file\", \"classPrefix\", \"listType\", \"className\", \"removable\", \"maxPreviewFileSize\", \"locale\", \"renderFileInfo\", \"renderThumbnail\", \"onPreview\", \"onCancel\", \"onReupload\"]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n\n var classes = merge(className, withClassPrefix(listType, {\n disabled: disabled,\n 'has-error': file.status === 'error'\n }));\n\n var _useState = (0, _react.useState)(file.url ? file.url : null),\n previewImage = _useState[0],\n setPreviewImage = _useState[1];\n /**\n * Get thumbnail of image file\n */\n\n\n var getThumbnail = (0, _react.useCallback)(function (callback) {\n var _file$blobFile;\n\n if (!~['picture-text', 'picture'].indexOf(listType)) {\n return;\n } // The thumbnail file size cannot be larger than the preset value.\n\n\n if (!file.blobFile || (file === null || file === void 0 ? void 0 : (_file$blobFile = file.blobFile) === null || _file$blobFile === void 0 ? void 0 : _file$blobFile.size) > maxPreviewFileSize) {\n return;\n }\n\n (0, _utils.previewFile)(file.blobFile, callback);\n }, [file, listType, maxPreviewFileSize]);\n (0, _react.useEffect)(function () {\n if (!file.url) {\n getThumbnail(function (previewImage) {\n setPreviewImage(previewImage);\n });\n }\n }, [file.url, getThumbnail]);\n var handlePreview = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n onPreview === null || onPreview === void 0 ? void 0 : onPreview(file, event);\n }, [disabled, file, onPreview]);\n var handleRemove = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n onCancel === null || onCancel === void 0 ? void 0 : onCancel(file.fileKey, event);\n }, [disabled, file.fileKey, onCancel]);\n var handleReupload = (0, _react.useCallback)(function (event) {\n if (disabled) {\n return;\n }\n\n onReupload === null || onReupload === void 0 ? void 0 : onReupload(file, event);\n }, [disabled, file, onReupload]);\n /**\n * Rendering progress bar\n */\n\n var renderProgressBar = function renderProgressBar() {\n var _file$progress = file.progress,\n progress = _file$progress === void 0 ? 0 : _file$progress,\n status = file.status;\n var show = !disabled && status === 'uploading';\n var visibility = show ? 'visible' : 'hidden';\n var wrapStyle = {\n visibility: visibility\n };\n var progressbarStyle = {\n width: progress + \"%\"\n };\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('progress'),\n style: wrapStyle,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 151,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('progress-bar'),\n style: progressbarStyle,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 152,\n columnNumber: 9\n }\n }));\n };\n\n var renderPreview = function renderPreview() {\n var thumbnail = previewImage ? /*#__PURE__*/_react.default.createElement(\"img\", {\n role: \"presentation\",\n src: previewImage,\n alt: file.name,\n onClick: handlePreview,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 159,\n columnNumber: 7\n }\n }) : /*#__PURE__*/_react.default.createElement(_Attachment.default, {\n className: prefix('icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 161,\n columnNumber: 7\n }\n });\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('preview'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 165,\n columnNumber: 7\n }\n }, renderThumbnail ? renderThumbnail(file, thumbnail) : thumbnail);\n };\n /**\n * Render the loading state.\n */\n\n\n var renderIcon = function renderIcon() {\n var uploading = file.status === 'uploading';\n var classes = prefix('icon-wrapper', {\n 'icon-loading': uploading\n });\n\n if (uploading) {\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 180,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"i\", {\n className: prefix('icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 181,\n columnNumber: 11\n }\n }));\n }\n\n if (listType === 'picture' || listType === 'picture-text') {\n return null;\n }\n\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 191,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(_Attachment.default, {\n className: prefix('icon'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 192,\n columnNumber: 9\n }\n }));\n };\n /**\n * Render the remove file button.\n */\n\n\n var renderRemoveButton = function renderRemoveButton() {\n if (!removable) {\n return null;\n }\n\n return /*#__PURE__*/_react.default.createElement(_CloseButton.default, {\n className: prefix('btn-remove'),\n onClick: handleRemove,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 205,\n columnNumber: 12\n }\n });\n };\n /**\n * Render error messages.\n */\n\n\n var renderErrorStatus = function renderErrorStatus() {\n if (file.status === 'error') {\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('status'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 214,\n columnNumber: 9\n }\n }, /*#__PURE__*/_react.default.createElement(\"span\", {\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 215,\n columnNumber: 12\n }\n }, locale === null || locale === void 0 ? void 0 : locale.error), allowReupload && /*#__PURE__*/_react.default.createElement(\"a\", {\n role: \"button\",\n tabIndex: -1,\n onClick: handleReupload,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 217,\n columnNumber: 13\n }\n }, /*#__PURE__*/_react.default.createElement(_Reload.default, {\n className: prefix('icon-reupload'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 218,\n columnNumber: 15\n }\n })));\n }\n\n return null;\n };\n /**\n * Render file size.\n */\n\n\n var renderFileSize = function renderFileSize() {\n if (file.status !== 'error' && file.blobFile) {\n var _file$blobFile2;\n\n return /*#__PURE__*/_react.default.createElement(\"span\", {\n className: prefix('size'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 232,\n columnNumber: 14\n }\n }, formatSize(file === null || file === void 0 ? void 0 : (_file$blobFile2 = file.blobFile) === null || _file$blobFile2 === void 0 ? void 0 : _file$blobFile2.size));\n }\n\n return null;\n };\n /**\n * Render file panel\n */\n\n\n var renderFilePanel = function renderFilePanel() {\n var fileElement = /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('title'),\n onClick: handlePreview,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 242,\n columnNumber: 7\n }\n }, file.name);\n\n return /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('panel'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 247,\n columnNumber: 7\n }\n }, /*#__PURE__*/_react.default.createElement(\"div\", {\n className: prefix('content'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 248,\n columnNumber: 9\n }\n }, renderFileInfo ? renderFileInfo(file, fileElement) : fileElement, renderErrorStatus(), renderFileSize()));\n };\n\n if (listType === 'picture') {\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 259,\n columnNumber: 7\n }\n }), renderIcon(), renderPreview(), renderErrorStatus(), renderRemoveButton());\n }\n\n if (listType === 'picture-text') {\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 270,\n columnNumber: 7\n }\n }), renderIcon(), renderPreview(), renderFilePanel(), renderProgressBar(), renderRemoveButton());\n }\n\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {\n ref: ref,\n className: classes,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 281,\n columnNumber: 5\n }\n }), renderIcon(), renderFilePanel(), renderProgressBar(), renderRemoveButton());\n});\n\nUploadFileItem.displayName = 'UploadFileItem';\nUploadFileItem.propTypes = {\n locale: _propTypes.default.any,\n file: _propTypes.default.object.isRequired,\n listType: _propTypes.default.oneOf(['text', 'picture-text', 'picture']),\n disabled: _propTypes.default.bool,\n className: _propTypes.default.string,\n maxPreviewFileSize: _propTypes.default.number,\n classPrefix: _propTypes.default.string,\n removable: _propTypes.default.bool,\n allowReupload: _propTypes.default.bool,\n renderFileInfo: _propTypes.default.func,\n renderThumbnail: _propTypes.default.func,\n onCancel: _propTypes.default.func,\n onPreview: _propTypes.default.func,\n onReupload: _propTypes.default.func\n};\nvar _default = UploadFileItem;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Uploader/UploadFileItem.tsx?");
|
|
4722
4722
|
|
|
4723
4723
|
/***/ }),
|
|
4724
4724
|
|
|
@@ -4740,7 +4740,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
4740
4740
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
4741
4741
|
|
|
4742
4742
|
"use strict";
|
|
4743
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _find = _interopRequireDefault(__webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\"));\n\nvar _UploadFileItem = _interopRequireDefault(__webpack_require__(/*! ./UploadFileItem */ \"./src/Uploader/UploadFileItem.tsx\"));\n\nvar _UploadTrigger = _interopRequireDefault(__webpack_require__(/*! ./UploadTrigger */ \"./src/Uploader/UploadTrigger.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Uploader/Uploader.tsx\",\n _this = void 0;\n\nvar getFiles = function getFiles(event) {\n if (typeof (event === null || event === void 0 ? void 0 : event['dataTransfer']) === 'object') {\n var _event$dataTransfer;\n\n return event === null || event === void 0 ? void 0 : (_event$dataTransfer = event['dataTransfer']) === null || _event$dataTransfer === void 0 ? void 0 : _event$dataTransfer.files;\n }\n\n if (event.target) {\n return event.target['files'];\n }\n\n return [];\n};\n\nvar createFile = function createFile(file) {\n var fileKey = file.fileKey;\n return (0, _extends2.default)({}, file, {\n fileKey: fileKey || (0, _utils.guid)(),\n progress: 0\n });\n};\n\nfunction fileListReducer(files, action) {\n var _action$files;\n\n switch (action.type) {\n // Add one or more files\n case 'push':\n return [].concat(files, action.files);\n // Remove a file by `fileKey`\n\n case 'remove':\n return files.filter(function (f) {\n return f.fileKey !== action.fileKey;\n });\n // Update a file\n\n case 'updateFile':\n return files.map(function (file) {\n return file.fileKey === action.file.fileKey ? action.file : file;\n });\n // Initialization file list\n\n case 'init':\n return ((_action$files = action.files) === null || _action$files === void 0 ? void 0 : _action$files.map(function (file) {\n // The state of the file needs to be preserved when the `fileList` is controlled.\n return files.find(function (f) {\n return f.fileKey === file.fileKey;\n }) || createFile(file);\n })) || [];\n\n default:\n throw new Error();\n }\n}\n\nvar useFileList = function useFileList(defaultFileList) {\n if (defaultFileList === void 0) {\n defaultFileList = [];\n }\n\n var fileListRef = (0, _react.useRef)(defaultFileList.map(createFile));\n var fileListUpdateCallback = (0, _react.useRef)();\n\n var _useReducer = (0, _react.useReducer)(fileListReducer, fileListRef.current),\n fileList = _useReducer[0],\n dispatch = _useReducer[1];\n\n fileListRef.current = fileList;\n (0, _react.useEffect)(function () {\n var _fileListUpdateCallba;\n\n (_fileListUpdateCallba = fileListUpdateCallback.current) === null || _fileListUpdateCallba === void 0 ? void 0 : _fileListUpdateCallba.call(fileListUpdateCallback, fileList);\n fileListUpdateCallback.current = null;\n }, [fileList]);\n var dispatchCallback = (0, _react.useCallback)(function (action, callback) {\n dispatch(action);\n fileListUpdateCallback.current = callback;\n }, []);\n return [fileListRef, dispatchCallback];\n};\n\nvar Uploader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'uploader' : _props$classPrefix,\n className = props.className,\n _props$listType = props.listType,\n listType = _props$listType === void 0 ? 'text' : _props$listType,\n defaultFileList = props.defaultFileList,\n fileListProp = props.fileList,\n _props$fileListVisibl = props.fileListVisible,\n fileListVisible = _props$fileListVisibl === void 0 ? true : _props$fileListVisibl,\n localeProp = props.locale,\n style = props.style,\n draggable = props.draggable,\n _props$name = props.name,\n name = _props$name === void 0 ? 'file' : _props$name,\n _props$multiple = props.multiple,\n multiple = _props$multiple === void 0 ? false : _props$multiple,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n accept = props.accept,\n children = props.children,\n toggleAs = props.toggleAs,\n _props$removable = props.removable,\n removable = _props$removable === void 0 ? true : _props$removable,\n disabledFileItem = props.disabledFileItem,\n maxPreviewFileSize = props.maxPreviewFileSize,\n _props$autoUpload = props.autoUpload,\n autoUpload = _props$autoUpload === void 0 ? true : _props$autoUpload,\n action = props.action,\n headers = props.headers,\n _props$withCredential = props.withCredentials,\n withCredentials = _props$withCredential === void 0 ? false : _props$withCredential,\n disableMultipart = props.disableMultipart,\n _props$timeout = props.timeout,\n timeout = _props$timeout === void 0 ? 0 : _props$timeout,\n _props$data = props.data,\n data = _props$data === void 0 ? {} : _props$data,\n onRemove = props.onRemove,\n onUpload = props.onUpload,\n shouldUpload = props.shouldUpload,\n shouldQueueUpdate = props.shouldQueueUpdate,\n renderFileInfo = props.renderFileInfo,\n renderThumbnail = props.renderThumbnail,\n onPreview = props.onPreview,\n onChange = props.onChange,\n onSuccess = props.onSuccess,\n onError = props.onError,\n onProgress = props.onProgress,\n onReupload = props.onReupload,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"className\", \"listType\", \"defaultFileList\", \"fileList\", \"fileListVisible\", \"locale\", \"style\", \"draggable\", \"name\", \"multiple\", \"disabled\", \"readOnly\", \"plaintext\", \"accept\", \"children\", \"toggleAs\", \"removable\", \"disabledFileItem\", \"maxPreviewFileSize\", \"autoUpload\", \"action\", \"headers\", \"withCredentials\", \"disableMultipart\", \"timeout\", \"data\", \"onRemove\", \"onUpload\", \"shouldUpload\", \"shouldQueueUpdate\", \"renderFileInfo\", \"renderThumbnail\", \"onPreview\", \"onChange\", \"onSuccess\", \"onError\", \"onProgress\", \"onReupload\"]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n\n var classes = merge(className, withClassPrefix(listType, {\n draggable: draggable\n }));\n\n var _useCustom = (0, _utils.useCustom)('Uploader', localeProp),\n locale = _useCustom.locale;\n\n var rootRef = (0, _react.useRef)();\n var xhrs = (0, _react.useRef)({});\n var trigger = (0, _react.useRef)();\n\n var _useFileList = useFileList(fileListProp || defaultFileList),\n fileList = _useFileList[0],\n dispatch = _useFileList[1];\n\n (0, _react.useEffect)(function () {\n if (typeof fileListProp !== 'undefined') {\n // Force reset fileList in reducer, when `fileListProp` is updated\n dispatch({\n type: 'init',\n files: fileListProp\n });\n }\n }, [dispatch, fileListProp]);\n var updateFileStatus = (0, _react.useCallback)(function (nextFile) {\n dispatch({\n type: 'updateFile',\n file: nextFile\n });\n }, [dispatch]);\n /**\n * Clear the value in input.\n */\n\n var cleanInputValue = (0, _react.useCallback)(function () {\n trigger.current.clearInput();\n }, []);\n /**\n * Callback for successful file upload.\n * @param file\n * @param response\n * @param event\n * @param xhr\n */\n\n var handleAjaxUploadSuccess = (0, _react.useCallback)(function (file, response, event, xhr) {\n var nextFile = (0, _extends2.default)({}, file, {\n status: 'finished',\n progress: 100\n });\n updateFileStatus(nextFile);\n onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess(response, nextFile, event, xhr);\n }, [onSuccess, updateFileStatus]);\n /**\n * Callback for file upload error.\n * @param file\n * @param status\n * @param event\n * @param xhr\n */\n\n var handleAjaxUploadError = (0, _react.useCallback)(function (file, status, event, xhr) {\n var nextFile = (0, _extends2.default)({}, file, {\n status: 'error'\n });\n updateFileStatus(nextFile);\n onError === null || onError === void 0 ? void 0 : onError(status, nextFile, event, xhr);\n }, [onError, updateFileStatus]);\n /**\n * Callback for file upload progress update.\n * @param file\n * @param percent\n * @param event\n * @param xhr\n */\n\n var handleAjaxUploadProgress = (0, _react.useCallback)(function (file, percent, event, xhr) {\n var nextFile = (0, _extends2.default)({}, file, {\n status: 'uploading',\n progress: percent\n });\n updateFileStatus(nextFile);\n onProgress === null || onProgress === void 0 ? void 0 : onProgress(percent, nextFile, event, xhr);\n }, [onProgress, updateFileStatus]);\n /**\n * Upload a single file.\n * @param file\n */\n\n var handleUploadFile = (0, _react.useCallback)(function (file) {\n var _ajaxUpload = (0, _utils.ajaxUpload)({\n name: name,\n timeout: timeout,\n headers: headers,\n data: data,\n withCredentials: withCredentials,\n disableMultipart: disableMultipart,\n file: file.blobFile,\n url: action,\n onError: handleAjaxUploadError.bind(null, file),\n onSuccess: handleAjaxUploadSuccess.bind(null, file),\n onProgress: handleAjaxUploadProgress.bind(null, file)\n }),\n xhr = _ajaxUpload.xhr,\n uploadData = _ajaxUpload.data;\n\n updateFileStatus((0, _extends2.default)({}, file, {\n status: 'uploading'\n }));\n xhrs.current[file.fileKey] = xhr;\n onUpload === null || onUpload === void 0 ? void 0 : onUpload(file, uploadData, xhr);\n }, [action, data, handleAjaxUploadError, handleAjaxUploadProgress, handleAjaxUploadSuccess, headers, name, onUpload, timeout, updateFileStatus, withCredentials, disableMultipart]);\n var handleAjaxUpload = (0, _react.useCallback)(function () {\n fileList.current.forEach(function (file) {\n var checkState = shouldUpload === null || shouldUpload === void 0 ? void 0 : shouldUpload(file);\n\n if (checkState instanceof Promise) {\n checkState.then(function (res) {\n if (res) {\n handleUploadFile(file);\n }\n });\n return;\n } else if (checkState === false) {\n return;\n }\n\n if (file.status === 'inited') {\n handleUploadFile(file);\n }\n });\n cleanInputValue();\n }, [cleanInputValue, fileList, handleUploadFile, shouldUpload]);\n\n var handleUploadTriggerChange = function handleUploadTriggerChange(event) {\n var files = getFiles(event);\n var newFileList = [];\n Array.from(files).forEach(function (file) {\n newFileList.push({\n blobFile: file,\n name: file.name,\n status: 'inited',\n fileKey: (0, _utils.guid)()\n });\n });\n var nextFileList = [].concat(fileList.current, newFileList);\n var checkState = shouldQueueUpdate === null || shouldQueueUpdate === void 0 ? void 0 : shouldQueueUpdate(nextFileList, newFileList);\n\n if (checkState === false) {\n cleanInputValue();\n return;\n }\n\n var upload = function upload() {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextFileList);\n dispatch({\n type: 'push',\n files: newFileList\n }, function () {\n autoUpload && handleAjaxUpload();\n });\n };\n\n if (checkState instanceof Promise) {\n checkState.then(function (res) {\n res && upload();\n });\n return;\n }\n\n upload();\n };\n\n var handleRemoveFile = function handleRemoveFile(fileKey) {\n var _xhrs$current, _xhrs$current$file$fi;\n\n var file = (0, _find.default)(fileList.current, function (f) {\n return f.fileKey === fileKey;\n });\n var nextFileList = fileList.current.filter(function (f) {\n return f.fileKey !== fileKey;\n });\n\n if (((_xhrs$current = xhrs.current) === null || _xhrs$current === void 0 ? void 0 : (_xhrs$current$file$fi = _xhrs$current[file.fileKey]) === null || _xhrs$current$file$fi === void 0 ? void 0 : _xhrs$current$file$fi.readyState) !== 4) {\n var _xhrs$current$file$fi2;\n\n (_xhrs$current$file$fi2 = xhrs.current[file.fileKey]) === null || _xhrs$current$file$fi2 === void 0 ? void 0 : _xhrs$current$file$fi2.abort();\n }\n\n dispatch({\n type: 'remove',\n fileKey: fileKey\n });\n onRemove === null || onRemove === void 0 ? void 0 : onRemove(file);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextFileList);\n cleanInputValue();\n };\n\n var handleReupload = function handleReupload(file) {\n autoUpload && handleUploadFile(file);\n onReupload === null || onReupload === void 0 ? void 0 : onReupload(file);\n }; // public API\n\n\n var start = function start(file) {\n if (file) {\n handleUploadFile(file);\n return;\n }\n\n handleAjaxUpload();\n };\n\n (0, _react.useImperativeHandle)(ref, function () {\n return {\n root: rootRef.current,\n start: start\n };\n });\n var renderList = [/*#__PURE__*/_react.default.createElement(_UploadTrigger.default, (0, _extends2.default)({}, rest, {\n locale: locale,\n name: name,\n key: \"trigger\",\n multiple: multiple,\n draggable: draggable,\n disabled: disabled,\n readOnly: readOnly,\n accept: accept,\n ref: trigger,\n onChange: handleUploadTriggerChange,\n as: toggleAs,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 510,\n columnNumber: 5\n }\n }), children)];\n\n if (fileListVisible) {\n renderList.push( /*#__PURE__*/_react.default.createElement(\"div\", {\n key: \"items\",\n className: prefix('file-items'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 530,\n columnNumber: 7\n }\n }, fileList.current.map(function (file, index) {\n return /*#__PURE__*/_react.default.createElement(_UploadFileItem.default, {\n locale: locale,\n key: file.fileKey || index,\n file: file,\n maxPreviewFileSize: maxPreviewFileSize,\n listType: listType,\n disabled: disabledFileItem,\n onPreview: onPreview,\n onReupload: handleReupload,\n onCancel: handleRemoveFile,\n renderFileInfo: renderFileInfo,\n renderThumbnail: renderThumbnail,\n removable: removable && !readOnly && !plaintext,\n allowReupload: !readOnly && !plaintext,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 532,\n columnNumber: 11\n }\n });\n })));\n }\n\n if (plaintext) {\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, {\n localeKey: \"notUploaded\",\n className: withClassPrefix(listType),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 554,\n columnNumber: 7\n }\n }, fileList.current.length ? renderList[1] : null);\n }\n\n if (listType === 'picture') {\n renderList.reverse();\n }\n\n return /*#__PURE__*/_react.default.createElement(Component, {\n ref: rootRef,\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 565,\n columnNumber: 5\n }\n }, renderList);\n});\n\nUploader.displayName = 'Uploader';\nUploader.propTypes = {\n action: _propTypes.default.string.isRequired,\n accept: _propTypes.default.string,\n autoUpload: _propTypes.default.bool,\n children: _propTypes.default.node,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n defaultFileList: _propTypes.default.array,\n fileList: _propTypes.default.array,\n data: _propTypes.default.object,\n multiple: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n disabledFileItem: _propTypes.default.bool,\n name: _propTypes.default.string,\n timeout: _propTypes.default.number,\n withCredentials: _propTypes.default.bool,\n headers: _propTypes.default.object,\n locale: _propTypes.default.any,\n listType: _propTypes.default.oneOf(['text', 'picture-text', 'picture']),\n shouldQueueUpdate: _propTypes.default.func,\n shouldUpload: _propTypes.default.func,\n onChange: _propTypes.default.func,\n onUpload: _propTypes.default.func,\n onReupload: _propTypes.default.func,\n onPreview: _propTypes.default.func,\n onError: _propTypes.default.func,\n onSuccess: _propTypes.default.func,\n onProgress: _propTypes.default.func,\n onRemove: _propTypes.default.func,\n maxPreviewFileSize: _propTypes.default.number,\n style: _propTypes.default.object,\n renderFileInfo: _propTypes.default.func,\n renderThumbnail: _propTypes.default.func,\n removable: _propTypes.default.bool,\n fileListVisible: _propTypes.default.bool,\n draggable: _propTypes.default.bool,\n disableMultipart: _propTypes.default.bool\n};\nvar _default = Uploader;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Uploader/Uploader.tsx?");
|
|
4743
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nvar _interopRequireWildcard = __webpack_require__(/*! @babel/runtime/helpers/interopRequireWildcard */ \"./node_modules/@babel/runtime/helpers/interopRequireWildcard.js\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\n\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\n\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nvar _find = _interopRequireDefault(__webpack_require__(/*! lodash/find */ \"./node_modules/lodash/find.js\"));\n\nvar _UploadFileItem = _interopRequireDefault(__webpack_require__(/*! ./UploadFileItem */ \"./src/Uploader/UploadFileItem.tsx\"));\n\nvar _UploadTrigger = _interopRequireDefault(__webpack_require__(/*! ./UploadTrigger */ \"./src/Uploader/UploadTrigger.tsx\"));\n\nvar _utils = __webpack_require__(/*! ../utils */ \"./src/utils/index.ts\");\n\nvar _Plaintext = _interopRequireDefault(__webpack_require__(/*! ../Plaintext */ \"./src/Plaintext/index.tsx\"));\n\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/Uploader/Uploader.tsx\",\n _this = void 0;\n\nvar getFiles = function getFiles(event) {\n if (typeof (event === null || event === void 0 ? void 0 : event['dataTransfer']) === 'object') {\n var _event$dataTransfer;\n\n return event === null || event === void 0 ? void 0 : (_event$dataTransfer = event['dataTransfer']) === null || _event$dataTransfer === void 0 ? void 0 : _event$dataTransfer.files;\n }\n\n if (event.target) {\n return event.target['files'];\n }\n\n return [];\n};\n\nvar createFile = function createFile(file) {\n var fileKey = file.fileKey;\n return (0, _extends2.default)({}, file, {\n fileKey: fileKey || (0, _utils.guid)(),\n progress: 0\n });\n};\n\nfunction fileListReducer(files, action) {\n var _action$files;\n\n switch (action.type) {\n // Add one or more files\n case 'push':\n return [].concat(files, action.files);\n // Remove a file by `fileKey`\n\n case 'remove':\n return files.filter(function (f) {\n return f.fileKey !== action.fileKey;\n });\n // Update a file\n\n case 'updateFile':\n return files.map(function (file) {\n return file.fileKey === action.file.fileKey ? action.file : file;\n });\n // Initialization file list\n\n case 'init':\n return ((_action$files = action.files) === null || _action$files === void 0 ? void 0 : _action$files.map(function (file) {\n // The state of the file needs to be preserved when the `fileList` is controlled.\n return files.find(function (f) {\n return f.fileKey === file.fileKey;\n }) || createFile(file);\n })) || [];\n\n default:\n throw new Error();\n }\n}\n\nvar useFileList = function useFileList(defaultFileList) {\n if (defaultFileList === void 0) {\n defaultFileList = [];\n }\n\n var fileListRef = (0, _react.useRef)(defaultFileList.map(createFile));\n var fileListUpdateCallback = (0, _react.useRef)();\n\n var _useReducer = (0, _react.useReducer)(fileListReducer, fileListRef.current),\n fileList = _useReducer[0],\n dispatch = _useReducer[1];\n\n fileListRef.current = fileList;\n (0, _react.useEffect)(function () {\n var _fileListUpdateCallba;\n\n (_fileListUpdateCallba = fileListUpdateCallback.current) === null || _fileListUpdateCallba === void 0 ? void 0 : _fileListUpdateCallba.call(fileListUpdateCallback, fileList);\n fileListUpdateCallback.current = null;\n }, [fileList]);\n (0, _utils.useWillUnmount)(function () {\n fileListUpdateCallback.current = null;\n });\n var dispatchCallback = (0, _react.useCallback)(function (action, callback) {\n dispatch(action);\n fileListUpdateCallback.current = callback;\n }, []);\n return [fileListRef, dispatchCallback];\n};\n\nvar Uploader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _props$as = props.as,\n Component = _props$as === void 0 ? 'div' : _props$as,\n _props$classPrefix = props.classPrefix,\n classPrefix = _props$classPrefix === void 0 ? 'uploader' : _props$classPrefix,\n className = props.className,\n _props$listType = props.listType,\n listType = _props$listType === void 0 ? 'text' : _props$listType,\n defaultFileList = props.defaultFileList,\n fileListProp = props.fileList,\n _props$fileListVisibl = props.fileListVisible,\n fileListVisible = _props$fileListVisibl === void 0 ? true : _props$fileListVisibl,\n localeProp = props.locale,\n style = props.style,\n draggable = props.draggable,\n _props$name = props.name,\n name = _props$name === void 0 ? 'file' : _props$name,\n _props$multiple = props.multiple,\n multiple = _props$multiple === void 0 ? false : _props$multiple,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n readOnly = props.readOnly,\n plaintext = props.plaintext,\n accept = props.accept,\n children = props.children,\n toggleAs = props.toggleAs,\n _props$removable = props.removable,\n removable = _props$removable === void 0 ? true : _props$removable,\n disabledFileItem = props.disabledFileItem,\n maxPreviewFileSize = props.maxPreviewFileSize,\n _props$autoUpload = props.autoUpload,\n autoUpload = _props$autoUpload === void 0 ? true : _props$autoUpload,\n action = props.action,\n headers = props.headers,\n _props$withCredential = props.withCredentials,\n withCredentials = _props$withCredential === void 0 ? false : _props$withCredential,\n disableMultipart = props.disableMultipart,\n _props$timeout = props.timeout,\n timeout = _props$timeout === void 0 ? 0 : _props$timeout,\n _props$data = props.data,\n data = _props$data === void 0 ? {} : _props$data,\n onRemove = props.onRemove,\n onUpload = props.onUpload,\n shouldUpload = props.shouldUpload,\n shouldQueueUpdate = props.shouldQueueUpdate,\n renderFileInfo = props.renderFileInfo,\n renderThumbnail = props.renderThumbnail,\n onPreview = props.onPreview,\n onChange = props.onChange,\n onSuccess = props.onSuccess,\n onError = props.onError,\n onProgress = props.onProgress,\n onReupload = props.onReupload,\n rest = (0, _objectWithoutPropertiesLoose2.default)(props, [\"as\", \"classPrefix\", \"className\", \"listType\", \"defaultFileList\", \"fileList\", \"fileListVisible\", \"locale\", \"style\", \"draggable\", \"name\", \"multiple\", \"disabled\", \"readOnly\", \"plaintext\", \"accept\", \"children\", \"toggleAs\", \"removable\", \"disabledFileItem\", \"maxPreviewFileSize\", \"autoUpload\", \"action\", \"headers\", \"withCredentials\", \"disableMultipart\", \"timeout\", \"data\", \"onRemove\", \"onUpload\", \"shouldUpload\", \"shouldQueueUpdate\", \"renderFileInfo\", \"renderThumbnail\", \"onPreview\", \"onChange\", \"onSuccess\", \"onError\", \"onProgress\", \"onReupload\"]);\n\n var _useClassNames = (0, _utils.useClassNames)(classPrefix),\n merge = _useClassNames.merge,\n withClassPrefix = _useClassNames.withClassPrefix,\n prefix = _useClassNames.prefix;\n\n var classes = merge(className, withClassPrefix(listType, {\n draggable: draggable\n }));\n\n var _useCustom = (0, _utils.useCustom)('Uploader', localeProp),\n locale = _useCustom.locale;\n\n var rootRef = (0, _react.useRef)();\n var xhrs = (0, _react.useRef)({});\n var trigger = (0, _react.useRef)();\n\n var _useFileList = useFileList(fileListProp || defaultFileList),\n fileList = _useFileList[0],\n dispatch = _useFileList[1];\n\n (0, _react.useEffect)(function () {\n if (typeof fileListProp !== 'undefined') {\n // Force reset fileList in reducer, when `fileListProp` is updated\n dispatch({\n type: 'init',\n files: fileListProp\n });\n }\n }, [dispatch, fileListProp]);\n var updateFileStatus = (0, _react.useCallback)(function (nextFile) {\n dispatch({\n type: 'updateFile',\n file: nextFile\n });\n }, [dispatch]);\n /**\n * Clear the value in input.\n */\n\n var cleanInputValue = (0, _react.useCallback)(function () {\n trigger.current.clearInput();\n }, []);\n /**\n * Callback for successful file upload.\n * @param file\n * @param response\n * @param event\n * @param xhr\n */\n\n var handleAjaxUploadSuccess = (0, _react.useCallback)(function (file, response, event, xhr) {\n var nextFile = (0, _extends2.default)({}, file, {\n status: 'finished',\n progress: 100\n });\n updateFileStatus(nextFile);\n onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess(response, nextFile, event, xhr);\n }, [onSuccess, updateFileStatus]);\n /**\n * Callback for file upload error.\n * @param file\n * @param status\n * @param event\n * @param xhr\n */\n\n var handleAjaxUploadError = (0, _react.useCallback)(function (file, status, event, xhr) {\n var nextFile = (0, _extends2.default)({}, file, {\n status: 'error'\n });\n updateFileStatus(nextFile);\n onError === null || onError === void 0 ? void 0 : onError(status, nextFile, event, xhr);\n }, [onError, updateFileStatus]);\n /**\n * Callback for file upload progress update.\n * @param file\n * @param percent\n * @param event\n * @param xhr\n */\n\n var handleAjaxUploadProgress = (0, _react.useCallback)(function (file, percent, event, xhr) {\n var nextFile = (0, _extends2.default)({}, file, {\n status: 'uploading',\n progress: percent\n });\n updateFileStatus(nextFile);\n onProgress === null || onProgress === void 0 ? void 0 : onProgress(percent, nextFile, event, xhr);\n }, [onProgress, updateFileStatus]);\n /**\n * Upload a single file.\n * @param file\n */\n\n var handleUploadFile = (0, _react.useCallback)(function (file) {\n var _ajaxUpload = (0, _utils.ajaxUpload)({\n name: name,\n timeout: timeout,\n headers: headers,\n data: data,\n withCredentials: withCredentials,\n disableMultipart: disableMultipart,\n file: file.blobFile,\n url: action,\n onError: handleAjaxUploadError.bind(null, file),\n onSuccess: handleAjaxUploadSuccess.bind(null, file),\n onProgress: handleAjaxUploadProgress.bind(null, file)\n }),\n xhr = _ajaxUpload.xhr,\n uploadData = _ajaxUpload.data;\n\n updateFileStatus((0, _extends2.default)({}, file, {\n status: 'uploading'\n }));\n xhrs.current[file.fileKey] = xhr;\n onUpload === null || onUpload === void 0 ? void 0 : onUpload(file, uploadData, xhr);\n }, [action, data, handleAjaxUploadError, handleAjaxUploadProgress, handleAjaxUploadSuccess, headers, name, onUpload, timeout, updateFileStatus, withCredentials, disableMultipart]);\n var handleAjaxUpload = (0, _react.useCallback)(function () {\n fileList.current.forEach(function (file) {\n var checkState = shouldUpload === null || shouldUpload === void 0 ? void 0 : shouldUpload(file);\n\n if (checkState instanceof Promise) {\n checkState.then(function (res) {\n if (res) {\n handleUploadFile(file);\n }\n });\n return;\n } else if (checkState === false) {\n return;\n }\n\n if (file.status === 'inited') {\n handleUploadFile(file);\n }\n });\n cleanInputValue();\n }, [cleanInputValue, fileList, handleUploadFile, shouldUpload]);\n\n var handleUploadTriggerChange = function handleUploadTriggerChange(event) {\n var files = getFiles(event);\n var newFileList = [];\n Array.from(files).forEach(function (file) {\n newFileList.push({\n blobFile: file,\n name: file.name,\n status: 'inited',\n fileKey: (0, _utils.guid)()\n });\n });\n var nextFileList = [].concat(fileList.current, newFileList);\n var checkState = shouldQueueUpdate === null || shouldQueueUpdate === void 0 ? void 0 : shouldQueueUpdate(nextFileList, newFileList);\n\n if (checkState === false) {\n cleanInputValue();\n return;\n }\n\n var upload = function upload() {\n onChange === null || onChange === void 0 ? void 0 : onChange(nextFileList);\n dispatch({\n type: 'push',\n files: newFileList\n }, function () {\n autoUpload && handleAjaxUpload();\n });\n };\n\n if (checkState instanceof Promise) {\n checkState.then(function (res) {\n res && upload();\n });\n return;\n }\n\n upload();\n };\n\n var handleRemoveFile = function handleRemoveFile(fileKey) {\n var _xhrs$current, _xhrs$current$file$fi;\n\n var file = (0, _find.default)(fileList.current, function (f) {\n return f.fileKey === fileKey;\n });\n var nextFileList = fileList.current.filter(function (f) {\n return f.fileKey !== fileKey;\n });\n\n if (((_xhrs$current = xhrs.current) === null || _xhrs$current === void 0 ? void 0 : (_xhrs$current$file$fi = _xhrs$current[file.fileKey]) === null || _xhrs$current$file$fi === void 0 ? void 0 : _xhrs$current$file$fi.readyState) !== 4) {\n var _xhrs$current$file$fi2;\n\n (_xhrs$current$file$fi2 = xhrs.current[file.fileKey]) === null || _xhrs$current$file$fi2 === void 0 ? void 0 : _xhrs$current$file$fi2.abort();\n }\n\n dispatch({\n type: 'remove',\n fileKey: fileKey\n });\n onRemove === null || onRemove === void 0 ? void 0 : onRemove(file);\n onChange === null || onChange === void 0 ? void 0 : onChange(nextFileList);\n cleanInputValue();\n };\n\n var handleReupload = function handleReupload(file) {\n autoUpload && handleUploadFile(file);\n onReupload === null || onReupload === void 0 ? void 0 : onReupload(file);\n }; // public API\n\n\n var start = function start(file) {\n if (file) {\n handleUploadFile(file);\n return;\n }\n\n handleAjaxUpload();\n };\n\n (0, _react.useImperativeHandle)(ref, function () {\n return {\n root: rootRef.current,\n start: start\n };\n });\n var renderList = [/*#__PURE__*/_react.default.createElement(_UploadTrigger.default, (0, _extends2.default)({}, rest, {\n locale: locale,\n name: name,\n key: \"trigger\",\n multiple: multiple,\n draggable: draggable,\n disabled: disabled,\n readOnly: readOnly,\n accept: accept,\n ref: trigger,\n onChange: handleUploadTriggerChange,\n as: toggleAs,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 514,\n columnNumber: 5\n }\n }), children)];\n\n if (fileListVisible) {\n renderList.push( /*#__PURE__*/_react.default.createElement(\"div\", {\n key: \"items\",\n className: prefix('file-items'),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 534,\n columnNumber: 7\n }\n }, fileList.current.map(function (file, index) {\n return /*#__PURE__*/_react.default.createElement(_UploadFileItem.default, {\n locale: locale,\n key: file.fileKey || index,\n file: file,\n maxPreviewFileSize: maxPreviewFileSize,\n listType: listType,\n disabled: disabledFileItem,\n onPreview: onPreview,\n onReupload: handleReupload,\n onCancel: handleRemoveFile,\n renderFileInfo: renderFileInfo,\n renderThumbnail: renderThumbnail,\n removable: removable && !readOnly && !plaintext,\n allowReupload: !readOnly && !plaintext,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 536,\n columnNumber: 11\n }\n });\n })));\n }\n\n if (plaintext) {\n return /*#__PURE__*/_react.default.createElement(_Plaintext.default, {\n localeKey: \"notUploaded\",\n className: withClassPrefix(listType),\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 558,\n columnNumber: 7\n }\n }, fileList.current.length ? renderList[1] : null);\n }\n\n if (listType === 'picture') {\n renderList.reverse();\n }\n\n return /*#__PURE__*/_react.default.createElement(Component, {\n ref: rootRef,\n className: classes,\n style: style,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 569,\n columnNumber: 5\n }\n }, renderList);\n});\n\nUploader.displayName = 'Uploader';\nUploader.propTypes = {\n action: _propTypes.default.string.isRequired,\n accept: _propTypes.default.string,\n autoUpload: _propTypes.default.bool,\n children: _propTypes.default.node,\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n defaultFileList: _propTypes.default.array,\n fileList: _propTypes.default.array,\n data: _propTypes.default.object,\n multiple: _propTypes.default.bool,\n disabled: _propTypes.default.bool,\n disabledFileItem: _propTypes.default.bool,\n name: _propTypes.default.string,\n timeout: _propTypes.default.number,\n withCredentials: _propTypes.default.bool,\n headers: _propTypes.default.object,\n locale: _propTypes.default.any,\n listType: _propTypes.default.oneOf(['text', 'picture-text', 'picture']),\n shouldQueueUpdate: _propTypes.default.func,\n shouldUpload: _propTypes.default.func,\n onChange: _propTypes.default.func,\n onUpload: _propTypes.default.func,\n onReupload: _propTypes.default.func,\n onPreview: _propTypes.default.func,\n onError: _propTypes.default.func,\n onSuccess: _propTypes.default.func,\n onProgress: _propTypes.default.func,\n onRemove: _propTypes.default.func,\n maxPreviewFileSize: _propTypes.default.number,\n style: _propTypes.default.object,\n renderFileInfo: _propTypes.default.func,\n renderThumbnail: _propTypes.default.func,\n removable: _propTypes.default.bool,\n fileListVisible: _propTypes.default.bool,\n draggable: _propTypes.default.bool,\n disableMultipart: _propTypes.default.bool\n};\nvar _default = Uploader;\nexports.default = _default;\n\n//# sourceURL=webpack://rsuite/./src/Uploader/Uploader.tsx?");
|
|
4744
4744
|
|
|
4745
4745
|
/***/ }),
|
|
4746
4746
|
|
|
@@ -5114,7 +5114,7 @@ eval("\n\nexports.__esModule = true;\nexports.isImage = isImage;\nexports.defaul
|
|
|
5114
5114
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
5115
5115
|
|
|
5116
5116
|
"use strict";
|
|
5117
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.tupleType = tupleType;\nexports.refType = void 0;\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\
|
|
5117
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\n\nexports.__esModule = true;\nexports.tupleType = tupleType;\nexports.refType = void 0;\n\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\n\nfunction tupleType() {\n for (var _len = arguments.length, typeCheckers = new Array(_len), _key = 0; _key < _len; _key++) {\n typeCheckers[_key] = arguments[_key];\n }\n\n return _propTypes.default.arrayOf(function (value, index) {\n var _typeCheckers$index;\n\n for (var _len2 = arguments.length, rest = new Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {\n rest[_key2 - 2] = arguments[_key2];\n }\n\n return (_typeCheckers$index = typeCheckers[index]).call.apply(_typeCheckers$index, [_propTypes.default, value, index].concat(rest));\n });\n}\n\nvar refType = _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.any]);\n\nexports.refType = refType;\n\n//# sourceURL=webpack://rsuite/./src/utils/propTypeChecker.ts?");
|
|
5118
5118
|
|
|
5119
5119
|
/***/ }),
|
|
5120
5120
|
|
|
@@ -5224,7 +5224,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
5224
5224
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
5225
5225
|
|
|
5226
5226
|
"use strict";
|
|
5227
|
-
eval("\n\nexports.__esModule = true;\nexports.default = useClickOutside;\n\nvar _react = __webpack_require__(/*! react */ \"react\");\n\nfunction useClickOutside(_ref) {\n var _ref$enabled = _ref.enabled,\n enabled = _ref$enabled === void 0 ? true : _ref$enabled,\n isOutside = _ref.isOutside,\n handle = _ref.handle;\n var isOutsideRef = (0, _react.useRef)(isOutside);\n var handleRef = (0, _react.useRef)(handle);\n (0, _react.useEffect)(function () {\n isOutsideRef.current = isOutside;\n handleRef.current = handle;\n }, [isOutside, handle]);\n (0, _react.useEffect)(function () {\n if (enabled) {\n var eventHandler = function eventHandler(event) {\n if (isOutsideRef.current(event)) {\n handleRef.current(event);\n }\n };\n\n window.addEventListener('mousedown', eventHandler);\n return function () {\n window.removeEventListener('mousedown', eventHandler);\n };\n }\n }, [enabled]);\n}\n\n//# sourceURL=webpack://rsuite/./src/utils/useClickOutside.ts?");
|
|
5227
|
+
eval("\n\nexports.__esModule = true;\nexports.default = useClickOutside;\n\nvar _react = __webpack_require__(/*! react */ \"react\");\n\nfunction useClickOutside(_ref) {\n var _ref$enabled = _ref.enabled,\n enabled = _ref$enabled === void 0 ? true : _ref$enabled,\n isOutside = _ref.isOutside,\n handle = _ref.handle;\n var isOutsideRef = (0, _react.useRef)(isOutside);\n var handleRef = (0, _react.useRef)(handle);\n (0, _react.useEffect)(function () {\n isOutsideRef.current = isOutside;\n handleRef.current = handle;\n }, [isOutside, handle]);\n (0, _react.useEffect)(function () {\n if (enabled) {\n var eventHandler = function eventHandler(event) {\n var _isOutsideRef$current;\n\n if ((_isOutsideRef$current = isOutsideRef.current) !== null && _isOutsideRef$current !== void 0 && _isOutsideRef$current.call(isOutsideRef, event)) {\n var _handleRef$current;\n\n (_handleRef$current = handleRef.current) === null || _handleRef$current === void 0 ? void 0 : _handleRef$current.call(handleRef, event);\n }\n };\n\n window.addEventListener('mousedown', eventHandler);\n return function () {\n window.removeEventListener('mousedown', eventHandler);\n };\n }\n }, [enabled]);\n}\n\n//# sourceURL=webpack://rsuite/./src/utils/useClickOutside.ts?");
|
|
5228
5228
|
|
|
5229
5229
|
/***/ }),
|
|
5230
5230
|
|
|
@@ -9057,7 +9057,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _bab
|
|
|
9057
9057
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
9058
9058
|
|
|
9059
9059
|
"use strict";
|
|
9060
|
-
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var dom_lib_translateDOMPositionXY__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! dom-lib/translateDOMPositionXY */ \"./node_modules/dom-lib/esm/translateDOMPositionXY.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\");\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var lodash_flatten__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/flatten */ \"./node_modules/lodash/flatten.js\");\n/* harmony import */ var lodash_flatten__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_flatten__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _Row__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Row */ \"./node_modules/rsuite-table/es/Row.js\");\n/* harmony import */ var _CellGroup__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./CellGroup */ \"./node_modules/rsuite-table/es/CellGroup.js\");\n/* harmony import */ var _Scrollbar__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./Scrollbar */ \"./node_modules/rsuite-table/es/Scrollbar.js\");\n/* harmony import */ var _MouseArea__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./MouseArea */ \"./node_modules/rsuite-table/es/MouseArea.js\");\n/* harmony import */ var _Loader__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./Loader */ \"./node_modules/rsuite-table/es/Loader.js\");\n/* harmony import */ var _EmptyMessage__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./EmptyMessage */ \"./node_modules/rsuite-table/es/EmptyMessage.js\");\n/* harmony import */ var _TableContext__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./TableContext */ \"./node_modules/rsuite-table/es/TableContext.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./constants */ \"./node_modules/rsuite-table/es/constants.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./utils */ \"./node_modules/rsuite-table/es/utils/index.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Filter those expanded nodes.\n * @param data\n * @param expandedRowKeys\n * @param rowKey\n * @returns\n */\nvar filterTreeData = function filterTreeData(data, expandedRowKeys, rowKey) {\n return (0,_utils__WEBPACK_IMPORTED_MODULE_15__.flattenData)(data).filter(function (rowData) {\n var parents = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.findAllParents)(rowData, rowKey);\n var expanded = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.shouldShowRowByExpanded)(expandedRowKeys, parents);\n rowData[_constants__WEBPACK_IMPORTED_MODULE_14__.EXPANDED_KEY] = expanded;\n rowData[_constants__WEBPACK_IMPORTED_MODULE_14__.TREE_DEPTH] = parents.length;\n return expanded;\n });\n};\n\nvar Table = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().forwardRef(function (props, ref) {\n var affixHeader = props.affixHeader,\n children = props.children,\n classPrefix = props.classPrefix,\n className = props.className,\n dataProp = props.data,\n widthProp = props.width,\n expandedRowKeysProp = props.expandedRowKeys,\n defaultExpandAllRows = props.defaultExpandAllRows,\n defaultExpandedRowKeys = props.defaultExpandedRowKeys,\n style = props.style,\n id = props.id,\n isTree = props.isTree,\n hover = props.hover,\n bordered = props.bordered,\n cellBordered = props.cellBordered,\n wordWrap = props.wordWrap,\n loading = props.loading,\n locale = props.locale,\n showHeader = props.showHeader,\n sortColumn = props.sortColumn,\n rowHeightProp = props.rowHeight,\n sortTypeProp = props.sortType,\n defaultSortType = props.defaultSortType,\n headerHeightProp = props.headerHeight,\n minHeight = props.minHeight,\n height = props.height,\n autoHeight = props.autoHeight,\n rtlProp = props.rtl,\n translate3d = props.translate3d,\n rowKey = props.rowKey,\n virtualized = props.virtualized,\n rowHeight = props.rowHeight,\n rowClassName = props.rowClassName,\n rowExpandedHeight = props.rowExpandedHeight,\n disabledScroll = props.disabledScroll,\n affixHorizontalScrollbar = props.affixHorizontalScrollbar,\n loadAnimation = props.loadAnimation,\n shouldUpdateScroll = props.shouldUpdateScroll,\n renderRowProp = props.renderRow,\n renderRowExpandedProp = props.renderRowExpanded,\n renderLoading = props.renderLoading,\n renderEmpty = props.renderEmpty,\n onSortColumn = props.onSortColumn,\n onScroll = props.onScroll,\n renderTreeToggle = props.renderTreeToggle,\n onRowClick = props.onRowClick,\n onRowContextMenu = props.onRowContextMenu,\n onExpandChange = props.onExpandChange,\n onTouchStart = props.onTouchStart,\n onTouchMove = props.onTouchMove,\n onTouchEnd = props.onTouchEnd,\n rest = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(props, [\"affixHeader\", \"children\", \"classPrefix\", \"className\", \"data\", \"width\", \"expandedRowKeys\", \"defaultExpandAllRows\", \"defaultExpandedRowKeys\", \"style\", \"id\", \"isTree\", \"hover\", \"bordered\", \"cellBordered\", \"wordWrap\", \"loading\", \"locale\", \"showHeader\", \"sortColumn\", \"rowHeight\", \"sortType\", \"defaultSortType\", \"headerHeight\", \"minHeight\", \"height\", \"autoHeight\", \"rtl\", \"translate3d\", \"rowKey\", \"virtualized\", \"rowHeight\", \"rowClassName\", \"rowExpandedHeight\", \"disabledScroll\", \"affixHorizontalScrollbar\", \"loadAnimation\", \"shouldUpdateScroll\", \"renderRow\", \"renderRowExpanded\", \"renderLoading\", \"renderEmpty\", \"onSortColumn\", \"onScroll\", \"renderTreeToggle\", \"onRowClick\", \"onRowContextMenu\", \"onExpandChange\", \"onTouchStart\", \"onTouchMove\", \"onTouchEnd\"]);\n\n if (isTree && !rowKey) {\n throw new Error('The `rowKey` is required when set isTree');\n }\n\n var _useClassNames = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useClassNames)(classPrefix || 'table', typeof classPrefix !== 'undefined'),\n withClassPrefix = _useClassNames.withClassPrefix,\n mergeCls = _useClassNames.merge,\n prefix = _useClassNames.prefix; // Use `forceUpdate` to force the component to re-render after manipulating the DOM.\n\n\n var _useReducer = (0,react__WEBPACK_IMPORTED_MODULE_2__.useReducer)(function (x) {\n return x + 1;\n }, 0),\n forceUpdate = _useReducer[1];\n\n var _useControlled = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useControlled)(expandedRowKeysProp, defaultExpandAllRows ? (0,_utils__WEBPACK_IMPORTED_MODULE_15__.findRowKeys)(dataProp, rowKey, lodash_isFunction__WEBPACK_IMPORTED_MODULE_5___default()(renderRowExpandedProp)) : defaultExpandedRowKeys || []),\n expandedRowKeys = _useControlled[0],\n setExpandedRowKeys = _useControlled[1];\n\n var _useState = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(function () {\n return isTree ? filterTreeData(dataProp, expandedRowKeys, rowKey) : dataProp;\n }),\n data = _useState[0],\n setData = _useState[1];\n\n var _useTableRows = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useTableRows)({\n data: dataProp,\n expandedRowKeys: expandedRowKeys,\n wordWrap: wordWrap,\n prefix: prefix\n }),\n tableRowsMaxHeight = _useTableRows.tableRowsMaxHeight,\n bindTableRowsRef = _useTableRows.bindTableRowsRef;\n\n var headerHeight = showHeader ? headerHeightProp : 0;\n var rtl = rtlProp || (0,_utils__WEBPACK_IMPORTED_MODULE_15__.isRTL)();\n\n var getRowHeight = function getRowHeight(rowData) {\n if (rowData === void 0) {\n rowData = {};\n }\n\n return typeof rowHeightProp === 'function' ? rowHeightProp(rowData) : rowHeightProp;\n };\n\n var translateDOMPositionXY = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)((0,dom_lib_translateDOMPositionXY__WEBPACK_IMPORTED_MODULE_3__.getTranslateDOMPositionXY)({\n enable3DTransform: translate3d\n }));\n var shouldFixedColumn = Array.from(lodash_flatten__WEBPACK_IMPORTED_MODULE_6___default()(children)).some(function (child) {\n var _child$props;\n\n return child === null || child === void 0 ? void 0 : (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.fixed;\n });\n var visibleRows = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)([]);\n var mouseAreaRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var tableRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var tableHeaderRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var affixHeaderWrapperRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var headerWrapperRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var tableBodyRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var wheelWrapperRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var scrollbarXRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var scrollbarYRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n /**\n * Reset the position of the scroll bar after the table size changes.\n */\n\n var resetScrollbar = function resetScrollbar(event) {\n forceUpdate();\n\n if (typeof shouldUpdateScroll === 'function') {\n onScrollTo(shouldUpdateScroll(event));\n } else if (shouldUpdateScroll) {\n var vertical = event === 'bodyHeightChanged';\n vertical ? onScrollTop(0) : onScrollLeft(0);\n }\n };\n\n var _useTableDimension = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useTableDimension)({\n data: dataProp,\n width: widthProp,\n rowHeight: rowHeight,\n tableRef: tableRef,\n headerWrapperRef: headerWrapperRef,\n prefix: prefix,\n affixHeader: affixHeader,\n affixHorizontalScrollbar: affixHorizontalScrollbar,\n headerHeight: headerHeight,\n height: height,\n autoHeight: autoHeight,\n children: children,\n expandedRowKeys: expandedRowKeys,\n onTableScroll: function onTableScroll(coords) {\n onScrollTo(coords);\n },\n onTableContentHeightChange: function onTableContentHeightChange() {\n resetScrollbar('bodyHeightChanged');\n },\n onTableContentWidthChange: function onTableContentWidthChange() {\n resetScrollbar('bodyWidthChanged');\n },\n onTableWidthChange: function onTableWidthChange() {\n resetScrollbar('widthChanged');\n }\n }),\n contentHeight = _useTableDimension.contentHeight,\n contentWidth = _useTableDimension.contentWidth,\n minScrollY = _useTableDimension.minScrollY,\n minScrollX = _useTableDimension.minScrollX,\n scrollY = _useTableDimension.scrollY,\n scrollX = _useTableDimension.scrollX,\n tableWidth = _useTableDimension.tableWidth,\n tableOffset = _useTableDimension.tableOffset,\n headerOffset = _useTableDimension.headerOffset,\n setScrollY = _useTableDimension.setScrollY,\n setScrollX = _useTableDimension.setScrollX;\n\n var getTableHeight = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function () {\n if (data.length === 0 && autoHeight) {\n return height;\n }\n\n return autoHeight ? Math.max(headerHeight + contentHeight.current, minHeight) : height;\n }, [autoHeight, contentHeight, data.length, headerHeight, height, minHeight]);\n (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useAffix)({\n tableHeight: getTableHeight,\n contentHeight: contentHeight,\n affixHorizontalScrollbar: affixHorizontalScrollbar,\n affixHeader: affixHeader,\n tableOffset: tableOffset,\n headerOffset: headerOffset,\n headerHeight: headerHeight,\n scrollbarXRef: scrollbarXRef,\n affixHeaderWrapperRef: affixHeaderWrapperRef\n });\n\n var _usePosition = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.usePosition)({\n data: dataProp,\n height: height,\n tableWidth: tableWidth,\n tableRef: tableRef,\n prefix: prefix,\n translateDOMPositionXY: translateDOMPositionXY,\n wheelWrapperRef: wheelWrapperRef,\n headerWrapperRef: headerWrapperRef,\n affixHeaderWrapperRef: affixHeaderWrapperRef,\n tableHeaderRef: tableHeaderRef,\n scrollX: scrollX,\n scrollY: scrollY,\n contentWidth: contentWidth,\n shouldFixedColumn: shouldFixedColumn\n }),\n forceUpdatePosition = _usePosition.forceUpdatePosition;\n\n var _useScrollListener = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useScrollListener)({\n rtl: rtl,\n data: dataProp,\n height: height,\n virtualized: virtualized,\n getTableHeight: getTableHeight,\n contentHeight: contentHeight,\n headerHeight: headerHeight,\n autoHeight: autoHeight,\n tableBodyRef: tableBodyRef,\n scrollbarXRef: scrollbarXRef,\n scrollbarYRef: scrollbarYRef,\n disabledScroll: disabledScroll,\n loading: loading,\n tableRef: tableRef,\n contentWidth: contentWidth,\n tableWidth: tableWidth,\n scrollY: scrollY,\n minScrollY: minScrollY,\n minScrollX: minScrollX,\n scrollX: scrollX,\n setScrollX: setScrollX,\n setScrollY: setScrollY,\n forceUpdatePosition: forceUpdatePosition,\n onScroll: onScroll,\n onTouchStart: onTouchStart,\n onTouchMove: onTouchMove,\n onTouchEnd: onTouchEnd\n }),\n isScrolling = _useScrollListener.isScrolling,\n onScrollHorizontal = _useScrollListener.onScrollHorizontal,\n onScrollVertical = _useScrollListener.onScrollVertical,\n onScrollBody = _useScrollListener.onScrollBody,\n onScrollTop = _useScrollListener.onScrollTop,\n onScrollLeft = _useScrollListener.onScrollLeft,\n onScrollTo = _useScrollListener.onScrollTo;\n\n var _useCellDescriptor = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useCellDescriptor)({\n children: children,\n rtl: rtl,\n mouseAreaRef: mouseAreaRef,\n tableRef: tableRef,\n minScrollX: minScrollX,\n scrollX: scrollX,\n tableWidth: tableWidth,\n headerHeight: headerHeight,\n showHeader: showHeader,\n sortType: sortTypeProp,\n defaultSortType: defaultSortType,\n sortColumn: sortColumn,\n prefix: prefix,\n onSortColumn: onSortColumn,\n rowHeight: rowHeight\n }),\n headerCells = _useCellDescriptor.headerCells,\n bodyCells = _useCellDescriptor.bodyCells,\n allColumnsWidth = _useCellDescriptor.allColumnsWidth,\n hasCustomTreeCol = _useCellDescriptor.hasCustomTreeCol;\n\n var colCounts = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)((headerCells === null || headerCells === void 0 ? void 0 : headerCells.length) || 0);\n (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useUpdateEffect)(function () {\n setData(isTree ? filterTreeData(dataProp, expandedRowKeys, rowKey) : dataProp);\n }, [dataProp, expandedRowKeys, rowKey, isTree]);\n (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useUpdateEffect)(function () {\n if ((headerCells === null || headerCells === void 0 ? void 0 : headerCells.length) !== colCounts.current) {\n onScrollLeft(0);\n colCounts.current = (headerCells === null || headerCells === void 0 ? void 0 : headerCells.length) || 0;\n }\n }, [children]);\n (0,react__WEBPACK_IMPORTED_MODULE_2__.useImperativeHandle)(ref, function () {\n return {\n get root() {\n return tableRef.current;\n },\n\n get body() {\n return wheelWrapperRef.current;\n },\n\n scrollTop: onScrollTop,\n scrollLeft: onScrollLeft\n };\n });\n var rowWidth = allColumnsWidth > tableWidth.current ? allColumnsWidth : tableWidth.current;\n var classes = mergeCls(className, withClassPrefix({\n bordered: bordered,\n hover: hover,\n loading: loading,\n treetable: isTree,\n 'word-wrap': wordWrap,\n 'cell-bordered': cellBordered\n }));\n\n var styles = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({\n width: widthProp || 'auto',\n height: getTableHeight()\n }, style);\n\n var renderRowExpanded = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (rowData) {\n var styles = {\n height: rowExpandedHeight\n };\n\n if (typeof renderRowExpandedProp === 'function') {\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n className: prefix('row-expanded'),\n style: styles\n }, renderRowExpandedProp(rowData));\n }\n\n return null;\n }, [prefix, renderRowExpandedProp, rowExpandedHeight]);\n\n var renderRow = function renderRow(props, cells, shouldRenderExpandedRow, rowData) {\n var depth = props.depth,\n restRowProps = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(props, [\"depth\"]);\n\n if (typeof rowClassName === 'function') {\n restRowProps.className = rowClassName(rowData);\n } else {\n restRowProps.className = rowClassName;\n }\n\n var rowStyles = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, props === null || props === void 0 ? void 0 : props.style);\n\n var rowRight = 0;\n\n if (rtl && contentWidth.current > tableWidth.current) {\n rowRight = tableWidth.current - contentWidth.current;\n rowStyles.right = rowRight;\n }\n\n var rowNode = null; // IF there are fixed columns, add a fixed group\n\n if (shouldFixedColumn && contentWidth.current > tableWidth.current) {\n var fixedLeftCells = [];\n var fixedRightCells = [];\n var scrollCells = [];\n var fixedLeftCellGroupWidth = 0;\n var fixedRightCellGroupWidth = 0;\n\n for (var i = 0; i < cells.length; i++) {\n var cell = cells[i];\n var _cell$props = cell.props,\n fixed = _cell$props.fixed,\n width = _cell$props.width;\n var isFixedStart = fixed === 'left' || fixed === true;\n var isFixedEnd = fixed === 'right';\n\n if (rtl) {\n isFixedStart = fixed === 'right';\n isFixedEnd = fixed === 'left' || fixed === true;\n }\n\n if (isFixedStart) {\n fixedLeftCells.push(cell);\n fixedLeftCellGroupWidth += width;\n } else if (isFixedEnd) {\n fixedRightCells.push(cell);\n fixedRightCellGroupWidth += width;\n } else {\n scrollCells.push(cell);\n }\n }\n\n rowNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, fixedLeftCellGroupWidth ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_CellGroup__WEBPACK_IMPORTED_MODULE_8__.default, {\n fixed: \"left\",\n height: props.isHeaderRow ? props.headerHeight : props.height,\n width: fixedLeftCellGroupWidth,\n style: rtl ? {\n right: tableWidth.current - fixedLeftCellGroupWidth - rowRight\n } : null\n }, (0,_utils__WEBPACK_IMPORTED_MODULE_15__.mergeCells)((0,_utils__WEBPACK_IMPORTED_MODULE_15__.resetLeftForCells)(fixedLeftCells))) : null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_CellGroup__WEBPACK_IMPORTED_MODULE_8__.default, null, (0,_utils__WEBPACK_IMPORTED_MODULE_15__.mergeCells)(scrollCells)), fixedRightCellGroupWidth ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_CellGroup__WEBPACK_IMPORTED_MODULE_8__.default, {\n fixed: \"right\",\n style: rtl ? {\n right: 0 - rowRight\n } : {\n left: tableWidth.current - fixedRightCellGroupWidth - _constants__WEBPACK_IMPORTED_MODULE_14__.SCROLLBAR_WIDTH\n },\n height: props.isHeaderRow ? props.headerHeight : props.height,\n width: fixedRightCellGroupWidth + _constants__WEBPACK_IMPORTED_MODULE_14__.SCROLLBAR_WIDTH\n }, (0,_utils__WEBPACK_IMPORTED_MODULE_15__.mergeCells)((0,_utils__WEBPACK_IMPORTED_MODULE_15__.resetLeftForCells)(fixedRightCells, _constants__WEBPACK_IMPORTED_MODULE_14__.SCROLLBAR_WIDTH))) : null, shouldRenderExpandedRow && renderRowExpanded(rowData));\n } else {\n rowNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_CellGroup__WEBPACK_IMPORTED_MODULE_8__.default, null, (0,_utils__WEBPACK_IMPORTED_MODULE_15__.mergeCells)(cells)), shouldRenderExpandedRow && renderRowExpanded(rowData));\n }\n\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Row__WEBPACK_IMPORTED_MODULE_7__.default, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, restRowProps, {\n \"data-depth\": depth,\n style: rowStyles\n }), renderRowProp ? renderRowProp(rowNode, rowData) : rowNode);\n };\n\n var renderTableHeader = function renderTableHeader(headerCells, rowWidth) {\n var top = typeof affixHeader === 'number' ? affixHeader : 0;\n var rowProps = {\n 'aria-rowindex': 1,\n rowRef: tableHeaderRef,\n width: rowWidth,\n height: getRowHeight(),\n headerHeight: headerHeight,\n isHeaderRow: true,\n top: 0\n };\n var fixedStyle = {\n position: 'fixed',\n overflow: 'hidden',\n height: headerHeight,\n width: tableWidth.current,\n top: top\n }; // Affix header\n\n var header = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n className: prefix('affix-header'),\n style: fixedStyle,\n ref: affixHeaderWrapperRef\n }, renderRow(rowProps, headerCells));\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, (affixHeader === 0 || affixHeader) && header, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n role: \"rowgroup\",\n className: prefix('header-row-wrapper'),\n ref: headerWrapperRef\n }, renderRow(rowProps, headerCells)));\n };\n\n var shouldRenderExpandedRow = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (rowData) {\n return lodash_isFunction__WEBPACK_IMPORTED_MODULE_5___default()(renderRowExpandedProp) && !isTree && expandedRowKeys.some(function (key) {\n return key === rowData[rowKey];\n });\n }, [expandedRowKeys, isTree, renderRowExpandedProp, rowKey]);\n var bindRowClick = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (rowData) {\n return function (event) {\n onRowClick === null || onRowClick === void 0 ? void 0 : onRowClick(rowData, event);\n };\n }, [onRowClick]);\n var bindRowContextMenu = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (rowData) {\n return function (event) {\n onRowContextMenu === null || onRowContextMenu === void 0 ? void 0 : onRowContextMenu(rowData, event);\n };\n }, [onRowContextMenu]);\n var handleTreeToggle = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (treeRowKey, _rowIndex, rowData) {\n var open = false;\n var nextExpandedRowKeys = [];\n\n for (var i = 0; i < expandedRowKeys.length; i++) {\n var key = expandedRowKeys[i];\n\n if (key === treeRowKey) {\n open = true;\n } else {\n nextExpandedRowKeys.push(key);\n }\n }\n\n if (!open) {\n nextExpandedRowKeys.push(treeRowKey);\n }\n\n setExpandedRowKeys(nextExpandedRowKeys);\n onExpandChange === null || onExpandChange === void 0 ? void 0 : onExpandChange(!open, rowData);\n }, [expandedRowKeys, onExpandChange, setExpandedRowKeys]);\n\n var renderRowData = function renderRowData(bodyCells, rowData, props, shouldRenderExpandedRow) {\n var hasChildren = isTree && rowData.children && Array.isArray(rowData.children);\n var nextRowKey = typeof rowData[rowKey] !== 'undefined' ? rowData[rowKey] : props.key;\n\n var rowProps = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, props, {\n key: nextRowKey,\n 'aria-rowindex': props.key + 2,\n rowRef: bindTableRowsRef(props.key, rowData),\n onClick: bindRowClick(rowData),\n onContextMenu: bindRowContextMenu(rowData)\n });\n\n var expanded = expandedRowKeys.some(function (key) {\n return key === rowData[rowKey];\n });\n var cells = [];\n\n for (var i = 0; i < bodyCells.length; i++) {\n var _cell$props2, _cell$props2$rowSpan;\n\n var cell = bodyCells[i];\n var rowSpan = (_cell$props2 = cell.props) === null || _cell$props2 === void 0 ? void 0 : (_cell$props2$rowSpan = _cell$props2.rowSpan) === null || _cell$props2$rowSpan === void 0 ? void 0 : _cell$props2$rowSpan.call(_cell$props2, rowData);\n\n var _rowHeight = rowSpan ? rowSpan * props.height : props.height;\n\n if (rowSpan) {\n var _rowProps$style;\n\n rowProps.rowSpan = rowSpan;\n rowProps.style = {\n /**\n * In the case of multiple-column merged rows,\n * the `zIndex` value of the previous row should be greater than the `zIndex` value of the following row.\n * So `rowSpan` is used as the `zIndex` value.\n */\n zIndex: ((_rowProps$style = rowProps.style) === null || _rowProps$style === void 0 ? void 0 : _rowProps$style.zIndex) || rowSpan,\n overflow: 'unset'\n }; // TODO: Do not render those cells merged by `rowSpan`\n }\n\n cells.push( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().cloneElement(cell, {\n hasChildren: hasChildren,\n rowData: rowData,\n wordWrap: wordWrap,\n height: _rowHeight,\n rowIndex: props.key,\n depth: props.depth,\n renderTreeToggle: renderTreeToggle,\n onTreeToggle: handleTreeToggle,\n rowKey: nextRowKey,\n expanded: expanded,\n rowSpan: rowSpan\n }));\n }\n\n return renderRow(rowProps, cells, shouldRenderExpandedRow, rowData);\n };\n\n var renderScrollbar = function renderScrollbar() {\n var height = getTableHeight();\n\n if (disabledScroll) {\n return null;\n }\n\n return [/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Scrollbar__WEBPACK_IMPORTED_MODULE_9__.default, {\n key: \"scrollbar\",\n tableId: id,\n style: {\n width: tableWidth.current\n },\n length: tableWidth.current,\n onScroll: onScrollHorizontal,\n scrollLength: contentWidth.current,\n ref: scrollbarXRef\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Scrollbar__WEBPACK_IMPORTED_MODULE_9__.default, {\n key: \"vertical-scrollbar\",\n vertical: true,\n tableId: id,\n length: height - headerHeight,\n scrollLength: contentHeight.current,\n onScroll: onScrollVertical,\n ref: scrollbarYRef\n })];\n };\n\n var renderTableBody = function renderTableBody(bodyCells, rowWidth) {\n var _visibleRows$current;\n\n var height = getTableHeight();\n var bodyHeight = height - headerHeight;\n var bodyStyles = {\n top: headerHeight,\n height: bodyHeight\n };\n var contentHeight = 0;\n var topHideHeight = 0;\n var bottomHideHeight = 0;\n visibleRows.current = [];\n\n if (data) {\n var top = 0; // Row position\n\n var minTop = Math.abs(scrollY.current);\n var maxTop = minTop + height + rowExpandedHeight;\n var isCustomRowHeight = typeof rowHeight === 'function';\n var isUncertainHeight = !!renderRowExpandedProp || isCustomRowHeight || wordWrap; // If virtualized is enabled and the row height in the Table is variable,\n // you need to loop through the data to get the height of each row.\n\n if (isUncertainHeight && virtualized || !virtualized) {\n // Avoid white screens on the top and bottom of the table when touching and scrolling on the mobile terminal.\n // So supplement the display data row.\n if ((0,_utils__WEBPACK_IMPORTED_MODULE_15__.isSupportTouchEvent)()) {\n var coveredHeight = height * 3;\n minTop = Math.max(minTop - coveredHeight, 0);\n maxTop = maxTop + coveredHeight;\n }\n\n for (var index = 0; index < data.length; index++) {\n var _rowData = data[index];\n var maxHeight = tableRowsMaxHeight[index];\n var shouldRender = shouldRenderExpandedRow(_rowData);\n var nextRowHeight = 0;\n\n if (typeof rowHeight === 'function') {\n nextRowHeight = rowHeight(_rowData);\n } else {\n nextRowHeight = maxHeight ? Math.max(maxHeight + _constants__WEBPACK_IMPORTED_MODULE_14__.CELL_PADDING_HEIGHT, rowHeight) : rowHeight;\n\n if (shouldRender) {\n nextRowHeight += rowExpandedHeight;\n }\n }\n\n contentHeight += nextRowHeight;\n var rowProps = {\n key: index,\n top: top,\n width: rowWidth,\n depth: _rowData[_constants__WEBPACK_IMPORTED_MODULE_14__.TREE_DEPTH],\n height: nextRowHeight\n };\n top += nextRowHeight;\n\n if (virtualized && !wordWrap) {\n if (top + nextRowHeight < minTop) {\n topHideHeight += nextRowHeight;\n continue;\n } else if (top > maxTop) {\n bottomHideHeight += nextRowHeight;\n continue;\n }\n }\n\n visibleRows.current.push(renderRowData(bodyCells, _rowData, rowProps, shouldRender));\n }\n } else {\n /** virtualized */\n // If the row height of the Table is fixed, it is directly calculated by the row height and the number of rows,\n // thereby reducing the performance cost of traversing all data.\n var _nextRowHeight = getRowHeight();\n\n var startIndex = Math.max(Math.floor(minTop / _nextRowHeight), 0);\n var endIndex = Math.min(startIndex + Math.ceil(bodyHeight / _nextRowHeight) + 5, data.length); // Avoid white screens on the top and bottom of the table when touching and scrolling on the mobile terminal.\n // So supplement the display data row.\n\n if ((0,_utils__WEBPACK_IMPORTED_MODULE_15__.isSupportTouchEvent)()) {\n var coveredCount = Math.floor(height / _nextRowHeight * 3);\n startIndex = Math.max(startIndex - coveredCount, 0);\n endIndex = Math.min(endIndex + coveredCount, data.length);\n }\n\n contentHeight = data.length * _nextRowHeight;\n topHideHeight = startIndex * _nextRowHeight;\n bottomHideHeight = (data.length - endIndex) * _nextRowHeight;\n\n for (var _index = startIndex; _index < endIndex; _index++) {\n var _rowData2 = data[_index];\n var _rowProps = {\n key: _index,\n depth: _rowData2[_constants__WEBPACK_IMPORTED_MODULE_14__.TREE_DEPTH],\n top: _index * _nextRowHeight,\n width: rowWidth,\n height: _nextRowHeight\n };\n visibleRows.current.push(renderRowData(bodyCells, _rowData2, _rowProps, false));\n }\n }\n }\n\n var wheelStyles = {\n position: 'absolute',\n height: contentHeight,\n minHeight: height,\n pointerEvents: isScrolling ? 'none' : undefined\n };\n var topRowStyles = {\n height: topHideHeight\n };\n var bottomRowStyles = {\n height: bottomHideHeight\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n ref: tableBodyRef,\n role: \"rowgroup\",\n className: prefix('body-row-wrapper'),\n style: bodyStyles,\n onScroll: onScrollBody\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n style: wheelStyles,\n className: prefix('body-wheel-area'),\n ref: wheelWrapperRef\n }, topHideHeight ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Row__WEBPACK_IMPORTED_MODULE_7__.default, {\n style: topRowStyles,\n className: \"virtualized\"\n }) : null, visibleRows.current, bottomHideHeight ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Row__WEBPACK_IMPORTED_MODULE_7__.default, {\n style: bottomRowStyles,\n className: \"virtualized\"\n }) : null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_EmptyMessage__WEBPACK_IMPORTED_MODULE_12__.default, {\n locale: locale,\n renderEmpty: renderEmpty,\n addPrefix: prefix,\n loading: !!((_visibleRows$current = visibleRows.current) !== null && _visibleRows$current !== void 0 && _visibleRows$current.length) || loading\n }), renderScrollbar(), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Loader__WEBPACK_IMPORTED_MODULE_11__.default, {\n locale: locale,\n loadAnimation: loadAnimation,\n loading: loading,\n addPrefix: prefix,\n renderLoading: renderLoading\n }));\n };\n\n var contextValue = react__WEBPACK_IMPORTED_MODULE_2___default().useMemo(function () {\n return {\n classPrefix: withClassPrefix(),\n translateDOMPositionXY: translateDOMPositionXY.current,\n rtl: rtl,\n isTree: isTree,\n hasCustomTreeCol: hasCustomTreeCol\n };\n }, [hasCustomTreeCol, isTree, rtl, withClassPrefix]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_TableContext__WEBPACK_IMPORTED_MODULE_13__.default.Provider, {\n value: contextValue\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({\n role: isTree ? 'treegrid' : 'grid' // The aria-rowcount is specified on the element with the table.\n // Its value is an integer equal to the total number of rows available, including header rows.\n ,\n \"aria-rowcount\": data.length + 1,\n \"aria-colcount\": colCounts.current,\n \"aria-busy\": loading\n }, rest, {\n className: classes,\n style: styles,\n ref: tableRef\n }), showHeader && renderTableHeader(headerCells, rowWidth), children && renderTableBody(bodyCells, rowWidth), showHeader && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_MouseArea__WEBPACK_IMPORTED_MODULE_10__.default, {\n ref: mouseAreaRef,\n addPrefix: prefix,\n headerHeight: headerHeight,\n height: getTableHeight()\n })));\n});\nTable.displayName = 'Table';\nTable.defaultProps = {\n data: [],\n defaultSortType: _constants__WEBPACK_IMPORTED_MODULE_14__.SORT_TYPE.DESC,\n height: 200,\n rowHeight: 46,\n headerHeight: 40,\n minHeight: 0,\n rowExpandedHeight: 100,\n hover: true,\n showHeader: true,\n translate3d: true,\n shouldUpdateScroll: true,\n locale: {\n emptyMessage: 'No data found',\n loading: 'Loading...'\n }\n};\nTable.propTypes = {\n autoHeight: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n affixHeader: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)]),\n affixHorizontalScrollbar: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)]),\n bordered: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n className: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().string),\n classPrefix: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().string),\n children: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().any),\n cellBordered: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n data: prop_types__WEBPACK_IMPORTED_MODULE_4___default().arrayOf((prop_types__WEBPACK_IMPORTED_MODULE_4___default().object)),\n defaultExpandAllRows: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n defaultExpandedRowKeys: prop_types__WEBPACK_IMPORTED_MODULE_4___default().arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().string), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)])),\n defaultSortType: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().any),\n disabledScroll: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n expandedRowKeys: prop_types__WEBPACK_IMPORTED_MODULE_4___default().arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().string), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)])),\n hover: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n height: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n headerHeight: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n locale: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().object),\n loading: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n loadAnimation: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n minHeight: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n rowKey: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().string), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)]),\n rowHeight: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().number), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func)]),\n renderTreeToggle: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n renderRowExpanded: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n renderRow: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n rowExpandedHeight: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n renderEmpty: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n renderLoading: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n rowClassName: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().func), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().string)]),\n rtl: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n style: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().object),\n sortColumn: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().string),\n sortType: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().any),\n showHeader: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n shouldUpdateScroll: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().func), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool)]),\n translate3d: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n wordWrap: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n width: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n virtualized: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n isTree: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n onRowClick: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onRowContextMenu: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onScroll: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onSortColumn: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onExpandChange: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onTouchStart: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onTouchMove: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onTouchEnd: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func)\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (Table);\n\n//# sourceURL=webpack://rsuite/./node_modules/rsuite-table/es/Table.js?");
|
|
9060
|
+
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ \"./node_modules/@babel/runtime/helpers/esm/extends.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ \"react\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var dom_lib_translateDOMPositionXY__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! dom-lib/translateDOMPositionXY */ \"./node_modules/dom-lib/esm/translateDOMPositionXY.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\");\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var lodash_flatten__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/flatten */ \"./node_modules/lodash/flatten.js\");\n/* harmony import */ var lodash_flatten__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_flatten__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _Row__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Row */ \"./node_modules/rsuite-table/es/Row.js\");\n/* harmony import */ var _CellGroup__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./CellGroup */ \"./node_modules/rsuite-table/es/CellGroup.js\");\n/* harmony import */ var _Scrollbar__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./Scrollbar */ \"./node_modules/rsuite-table/es/Scrollbar.js\");\n/* harmony import */ var _MouseArea__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./MouseArea */ \"./node_modules/rsuite-table/es/MouseArea.js\");\n/* harmony import */ var _Loader__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./Loader */ \"./node_modules/rsuite-table/es/Loader.js\");\n/* harmony import */ var _EmptyMessage__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./EmptyMessage */ \"./node_modules/rsuite-table/es/EmptyMessage.js\");\n/* harmony import */ var _TableContext__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./TableContext */ \"./node_modules/rsuite-table/es/TableContext.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./constants */ \"./node_modules/rsuite-table/es/constants.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./utils */ \"./node_modules/rsuite-table/es/utils/index.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Filter those expanded nodes.\n * @param data\n * @param expandedRowKeys\n * @param rowKey\n * @returns\n */\nvar filterTreeData = function filterTreeData(data, expandedRowKeys, rowKey) {\n return (0,_utils__WEBPACK_IMPORTED_MODULE_15__.flattenData)(data).filter(function (rowData) {\n var parents = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.findAllParents)(rowData, rowKey);\n var expanded = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.shouldShowRowByExpanded)(expandedRowKeys, parents);\n rowData[_constants__WEBPACK_IMPORTED_MODULE_14__.EXPANDED_KEY] = expanded;\n rowData[_constants__WEBPACK_IMPORTED_MODULE_14__.TREE_DEPTH] = parents.length;\n return expanded;\n });\n};\n\nvar Table = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().forwardRef(function (props, ref) {\n var affixHeader = props.affixHeader,\n children = props.children,\n classPrefix = props.classPrefix,\n className = props.className,\n dataProp = props.data,\n widthProp = props.width,\n expandedRowKeysProp = props.expandedRowKeys,\n defaultExpandAllRows = props.defaultExpandAllRows,\n defaultExpandedRowKeys = props.defaultExpandedRowKeys,\n style = props.style,\n id = props.id,\n isTree = props.isTree,\n hover = props.hover,\n bordered = props.bordered,\n cellBordered = props.cellBordered,\n wordWrap = props.wordWrap,\n loading = props.loading,\n locale = props.locale,\n showHeader = props.showHeader,\n sortColumn = props.sortColumn,\n rowHeightProp = props.rowHeight,\n sortTypeProp = props.sortType,\n defaultSortType = props.defaultSortType,\n headerHeightProp = props.headerHeight,\n minHeight = props.minHeight,\n height = props.height,\n autoHeight = props.autoHeight,\n rtlProp = props.rtl,\n translate3d = props.translate3d,\n rowKey = props.rowKey,\n virtualized = props.virtualized,\n rowHeight = props.rowHeight,\n rowClassName = props.rowClassName,\n rowExpandedHeight = props.rowExpandedHeight,\n disabledScroll = props.disabledScroll,\n affixHorizontalScrollbar = props.affixHorizontalScrollbar,\n loadAnimation = props.loadAnimation,\n shouldUpdateScroll = props.shouldUpdateScroll,\n renderRowProp = props.renderRow,\n renderRowExpandedProp = props.renderRowExpanded,\n renderLoading = props.renderLoading,\n renderEmpty = props.renderEmpty,\n onSortColumn = props.onSortColumn,\n onScroll = props.onScroll,\n renderTreeToggle = props.renderTreeToggle,\n onRowClick = props.onRowClick,\n onRowContextMenu = props.onRowContextMenu,\n onExpandChange = props.onExpandChange,\n onTouchStart = props.onTouchStart,\n onTouchMove = props.onTouchMove,\n onTouchEnd = props.onTouchEnd,\n rest = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(props, [\"affixHeader\", \"children\", \"classPrefix\", \"className\", \"data\", \"width\", \"expandedRowKeys\", \"defaultExpandAllRows\", \"defaultExpandedRowKeys\", \"style\", \"id\", \"isTree\", \"hover\", \"bordered\", \"cellBordered\", \"wordWrap\", \"loading\", \"locale\", \"showHeader\", \"sortColumn\", \"rowHeight\", \"sortType\", \"defaultSortType\", \"headerHeight\", \"minHeight\", \"height\", \"autoHeight\", \"rtl\", \"translate3d\", \"rowKey\", \"virtualized\", \"rowHeight\", \"rowClassName\", \"rowExpandedHeight\", \"disabledScroll\", \"affixHorizontalScrollbar\", \"loadAnimation\", \"shouldUpdateScroll\", \"renderRow\", \"renderRowExpanded\", \"renderLoading\", \"renderEmpty\", \"onSortColumn\", \"onScroll\", \"renderTreeToggle\", \"onRowClick\", \"onRowContextMenu\", \"onExpandChange\", \"onTouchStart\", \"onTouchMove\", \"onTouchEnd\"]);\n\n if (isTree && !rowKey) {\n throw new Error('The `rowKey` is required when set isTree');\n }\n\n var _useClassNames = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useClassNames)(classPrefix || 'table', typeof classPrefix !== 'undefined'),\n withClassPrefix = _useClassNames.withClassPrefix,\n mergeCls = _useClassNames.merge,\n prefix = _useClassNames.prefix; // Use `forceUpdate` to force the component to re-render after manipulating the DOM.\n\n\n var _useReducer = (0,react__WEBPACK_IMPORTED_MODULE_2__.useReducer)(function (x) {\n return x + 1;\n }, 0),\n forceUpdate = _useReducer[1];\n\n var _useControlled = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useControlled)(expandedRowKeysProp, defaultExpandAllRows ? (0,_utils__WEBPACK_IMPORTED_MODULE_15__.findRowKeys)(dataProp, rowKey, lodash_isFunction__WEBPACK_IMPORTED_MODULE_5___default()(renderRowExpandedProp)) : defaultExpandedRowKeys || []),\n expandedRowKeys = _useControlled[0],\n setExpandedRowKeys = _useControlled[1];\n\n var _useState = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(function () {\n return isTree ? filterTreeData(dataProp, expandedRowKeys, rowKey) : dataProp;\n }),\n data = _useState[0],\n setData = _useState[1];\n\n var _useTableRows = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useTableRows)({\n data: dataProp,\n expandedRowKeys: expandedRowKeys,\n wordWrap: wordWrap,\n prefix: prefix\n }),\n tableRowsMaxHeight = _useTableRows.tableRowsMaxHeight,\n bindTableRowsRef = _useTableRows.bindTableRowsRef;\n\n var headerHeight = showHeader ? headerHeightProp : 0;\n var rtl = rtlProp || (0,_utils__WEBPACK_IMPORTED_MODULE_15__.isRTL)();\n\n var getRowHeight = function getRowHeight(rowData) {\n if (rowData === void 0) {\n rowData = {};\n }\n\n return typeof rowHeightProp === 'function' ? rowHeightProp(rowData) : rowHeightProp;\n };\n\n var translateDOMPositionXY = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)((0,dom_lib_translateDOMPositionXY__WEBPACK_IMPORTED_MODULE_3__.getTranslateDOMPositionXY)({\n enable3DTransform: translate3d\n }));\n var shouldFixedColumn = Array.from(lodash_flatten__WEBPACK_IMPORTED_MODULE_6___default()(children)).some(function (child) {\n var _child$props;\n\n return child === null || child === void 0 ? void 0 : (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.fixed;\n });\n var visibleRows = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)([]);\n var mouseAreaRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var tableRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var tableHeaderRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var affixHeaderWrapperRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var headerWrapperRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var tableBodyRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var wheelWrapperRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var scrollbarXRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n var scrollbarYRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();\n /**\n * Reset the position of the scroll bar after the table size changes.\n */\n\n var resetScrollbar = function resetScrollbar(event) {\n forceUpdate();\n\n if (typeof shouldUpdateScroll === 'function') {\n onScrollTo(shouldUpdateScroll(event));\n } else if (shouldUpdateScroll) {\n var vertical = event === 'bodyHeightChanged';\n vertical ? onScrollTop(0) : onScrollLeft(0);\n }\n };\n\n var _useTableDimension = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useTableDimension)({\n data: dataProp,\n width: widthProp,\n rowHeight: rowHeight,\n tableRef: tableRef,\n headerWrapperRef: headerWrapperRef,\n prefix: prefix,\n affixHeader: affixHeader,\n affixHorizontalScrollbar: affixHorizontalScrollbar,\n headerHeight: headerHeight,\n height: height,\n autoHeight: autoHeight,\n children: children,\n expandedRowKeys: expandedRowKeys,\n onTableScroll: function onTableScroll(coords) {\n onScrollTo(coords);\n },\n onTableContentHeightChange: function onTableContentHeightChange() {\n resetScrollbar('bodyHeightChanged');\n },\n onTableContentWidthChange: function onTableContentWidthChange() {\n resetScrollbar('bodyWidthChanged');\n },\n onTableWidthChange: function onTableWidthChange() {\n resetScrollbar('widthChanged');\n }\n }),\n contentHeight = _useTableDimension.contentHeight,\n contentWidth = _useTableDimension.contentWidth,\n minScrollY = _useTableDimension.minScrollY,\n minScrollX = _useTableDimension.minScrollX,\n scrollY = _useTableDimension.scrollY,\n scrollX = _useTableDimension.scrollX,\n tableWidth = _useTableDimension.tableWidth,\n tableOffset = _useTableDimension.tableOffset,\n headerOffset = _useTableDimension.headerOffset,\n setScrollY = _useTableDimension.setScrollY,\n setScrollX = _useTableDimension.setScrollX;\n\n var getTableHeight = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function () {\n if (data.length === 0 && autoHeight) {\n return height;\n }\n\n return autoHeight ? Math.max(headerHeight + contentHeight.current, minHeight) : height;\n }, [autoHeight, contentHeight, data.length, headerHeight, height, minHeight]);\n (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useAffix)({\n tableHeight: getTableHeight,\n contentHeight: contentHeight,\n affixHorizontalScrollbar: affixHorizontalScrollbar,\n affixHeader: affixHeader,\n tableOffset: tableOffset,\n headerOffset: headerOffset,\n headerHeight: headerHeight,\n scrollbarXRef: scrollbarXRef,\n affixHeaderWrapperRef: affixHeaderWrapperRef\n });\n\n var _usePosition = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.usePosition)({\n data: dataProp,\n height: height,\n tableWidth: tableWidth,\n tableRef: tableRef,\n prefix: prefix,\n translateDOMPositionXY: translateDOMPositionXY,\n wheelWrapperRef: wheelWrapperRef,\n headerWrapperRef: headerWrapperRef,\n affixHeaderWrapperRef: affixHeaderWrapperRef,\n tableHeaderRef: tableHeaderRef,\n scrollX: scrollX,\n scrollY: scrollY,\n contentWidth: contentWidth,\n shouldFixedColumn: shouldFixedColumn\n }),\n forceUpdatePosition = _usePosition.forceUpdatePosition;\n\n var _useScrollListener = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useScrollListener)({\n rtl: rtl,\n data: dataProp,\n height: height,\n virtualized: virtualized,\n getTableHeight: getTableHeight,\n contentHeight: contentHeight,\n headerHeight: headerHeight,\n autoHeight: autoHeight,\n tableBodyRef: tableBodyRef,\n scrollbarXRef: scrollbarXRef,\n scrollbarYRef: scrollbarYRef,\n disabledScroll: disabledScroll,\n loading: loading,\n tableRef: tableRef,\n contentWidth: contentWidth,\n tableWidth: tableWidth,\n scrollY: scrollY,\n minScrollY: minScrollY,\n minScrollX: minScrollX,\n scrollX: scrollX,\n setScrollX: setScrollX,\n setScrollY: setScrollY,\n forceUpdatePosition: forceUpdatePosition,\n onScroll: onScroll,\n onTouchStart: onTouchStart,\n onTouchMove: onTouchMove,\n onTouchEnd: onTouchEnd\n }),\n isScrolling = _useScrollListener.isScrolling,\n onScrollHorizontal = _useScrollListener.onScrollHorizontal,\n onScrollVertical = _useScrollListener.onScrollVertical,\n onScrollBody = _useScrollListener.onScrollBody,\n onScrollTop = _useScrollListener.onScrollTop,\n onScrollLeft = _useScrollListener.onScrollLeft,\n onScrollTo = _useScrollListener.onScrollTo;\n\n var _useCellDescriptor = (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useCellDescriptor)({\n children: children,\n rtl: rtl,\n mouseAreaRef: mouseAreaRef,\n tableRef: tableRef,\n minScrollX: minScrollX,\n scrollX: scrollX,\n tableWidth: tableWidth,\n headerHeight: headerHeight,\n showHeader: showHeader,\n sortType: sortTypeProp,\n defaultSortType: defaultSortType,\n sortColumn: sortColumn,\n prefix: prefix,\n onSortColumn: onSortColumn,\n rowHeight: rowHeight\n }),\n headerCells = _useCellDescriptor.headerCells,\n bodyCells = _useCellDescriptor.bodyCells,\n allColumnsWidth = _useCellDescriptor.allColumnsWidth,\n hasCustomTreeCol = _useCellDescriptor.hasCustomTreeCol;\n\n var colCounts = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)((headerCells === null || headerCells === void 0 ? void 0 : headerCells.length) || 0);\n (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useUpdateEffect)(function () {\n setData(isTree ? filterTreeData(dataProp, expandedRowKeys, rowKey) : dataProp);\n }, [dataProp, expandedRowKeys, rowKey, isTree]);\n (0,_utils__WEBPACK_IMPORTED_MODULE_15__.useUpdateEffect)(function () {\n if ((headerCells === null || headerCells === void 0 ? void 0 : headerCells.length) !== colCounts.current) {\n onScrollLeft(0);\n colCounts.current = (headerCells === null || headerCells === void 0 ? void 0 : headerCells.length) || 0;\n }\n }, [children]);\n (0,react__WEBPACK_IMPORTED_MODULE_2__.useImperativeHandle)(ref, function () {\n return {\n get root() {\n return tableRef.current;\n },\n\n get body() {\n return wheelWrapperRef.current;\n },\n\n scrollTop: onScrollTop,\n scrollLeft: onScrollLeft\n };\n });\n var rowWidth = allColumnsWidth > tableWidth.current ? allColumnsWidth : tableWidth.current;\n var classes = mergeCls(className, withClassPrefix({\n bordered: bordered,\n hover: hover,\n loading: loading,\n treetable: isTree,\n 'word-wrap': wordWrap,\n 'cell-bordered': cellBordered\n }));\n\n var styles = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({\n width: widthProp || 'auto',\n height: getTableHeight()\n }, style);\n\n var renderRowExpanded = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (rowData) {\n var styles = {\n height: rowExpandedHeight\n };\n\n if (typeof renderRowExpandedProp === 'function') {\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n className: prefix('row-expanded'),\n style: styles\n }, renderRowExpandedProp(rowData));\n }\n\n return null;\n }, [prefix, renderRowExpandedProp, rowExpandedHeight]);\n\n var renderRow = function renderRow(props, cells, shouldRenderExpandedRow, rowData) {\n var depth = props.depth,\n restRowProps = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(props, [\"depth\"]);\n\n if (typeof rowClassName === 'function') {\n restRowProps.className = rowClassName(rowData);\n } else {\n restRowProps.className = rowClassName;\n }\n\n var rowStyles = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, props === null || props === void 0 ? void 0 : props.style);\n\n var rowRight = 0;\n\n if (rtl && contentWidth.current > tableWidth.current) {\n rowRight = tableWidth.current - contentWidth.current;\n rowStyles.right = rowRight;\n }\n\n var rowNode = null; // IF there are fixed columns, add a fixed group\n\n if (shouldFixedColumn && contentWidth.current > tableWidth.current) {\n var fixedLeftCells = [];\n var fixedRightCells = [];\n var scrollCells = [];\n var fixedLeftCellGroupWidth = 0;\n var fixedRightCellGroupWidth = 0;\n\n for (var i = 0; i < cells.length; i++) {\n var cell = cells[i];\n var _cell$props = cell.props,\n fixed = _cell$props.fixed,\n width = _cell$props.width;\n var isFixedStart = fixed === 'left' || fixed === true;\n var isFixedEnd = fixed === 'right';\n\n if (rtl) {\n isFixedStart = fixed === 'right';\n isFixedEnd = fixed === 'left' || fixed === true;\n }\n\n if (isFixedStart) {\n fixedLeftCells.push(cell);\n fixedLeftCellGroupWidth += width;\n } else if (isFixedEnd) {\n fixedRightCells.push(cell);\n fixedRightCellGroupWidth += width;\n } else {\n scrollCells.push(cell);\n }\n }\n\n rowNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, fixedLeftCellGroupWidth ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_CellGroup__WEBPACK_IMPORTED_MODULE_8__.default, {\n fixed: \"left\",\n height: props.isHeaderRow ? props.headerHeight : props.height,\n width: fixedLeftCellGroupWidth,\n style: rtl ? {\n right: tableWidth.current - fixedLeftCellGroupWidth - rowRight\n } : null\n }, (0,_utils__WEBPACK_IMPORTED_MODULE_15__.mergeCells)((0,_utils__WEBPACK_IMPORTED_MODULE_15__.resetLeftForCells)(fixedLeftCells))) : null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_CellGroup__WEBPACK_IMPORTED_MODULE_8__.default, null, (0,_utils__WEBPACK_IMPORTED_MODULE_15__.mergeCells)(scrollCells)), fixedRightCellGroupWidth ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_CellGroup__WEBPACK_IMPORTED_MODULE_8__.default, {\n fixed: \"right\",\n style: rtl ? {\n right: 0 - rowRight\n } : {\n left: tableWidth.current - fixedRightCellGroupWidth - _constants__WEBPACK_IMPORTED_MODULE_14__.SCROLLBAR_WIDTH\n },\n height: props.isHeaderRow ? props.headerHeight : props.height,\n width: fixedRightCellGroupWidth + _constants__WEBPACK_IMPORTED_MODULE_14__.SCROLLBAR_WIDTH\n }, (0,_utils__WEBPACK_IMPORTED_MODULE_15__.mergeCells)((0,_utils__WEBPACK_IMPORTED_MODULE_15__.resetLeftForCells)(fixedRightCells, _constants__WEBPACK_IMPORTED_MODULE_14__.SCROLLBAR_WIDTH))) : null, shouldRenderExpandedRow && renderRowExpanded(rowData));\n } else {\n rowNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_CellGroup__WEBPACK_IMPORTED_MODULE_8__.default, null, (0,_utils__WEBPACK_IMPORTED_MODULE_15__.mergeCells)(cells)), shouldRenderExpandedRow && renderRowExpanded(rowData));\n }\n\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Row__WEBPACK_IMPORTED_MODULE_7__.default, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, restRowProps, {\n \"data-depth\": depth,\n style: rowStyles\n }), renderRowProp ? renderRowProp(rowNode, rowData) : rowNode);\n };\n\n var renderTableHeader = function renderTableHeader(headerCells, rowWidth) {\n var top = typeof affixHeader === 'number' ? affixHeader : 0;\n var rowProps = {\n 'aria-rowindex': 1,\n rowRef: tableHeaderRef,\n width: rowWidth,\n height: getRowHeight(),\n headerHeight: headerHeight,\n isHeaderRow: true,\n top: 0\n };\n var fixedStyle = {\n position: 'fixed',\n overflow: 'hidden',\n height: headerHeight,\n width: tableWidth.current,\n top: top\n }; // Affix header\n\n var header = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n className: prefix('affix-header'),\n style: fixedStyle,\n ref: affixHeaderWrapperRef\n }, renderRow(rowProps, headerCells));\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, (affixHeader === 0 || affixHeader) && header, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n role: \"rowgroup\",\n className: prefix('header-row-wrapper'),\n ref: headerWrapperRef\n }, renderRow(rowProps, headerCells)));\n };\n\n var shouldRenderExpandedRow = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (rowData) {\n return lodash_isFunction__WEBPACK_IMPORTED_MODULE_5___default()(renderRowExpandedProp) && !isTree && expandedRowKeys.some(function (key) {\n return key === rowData[rowKey];\n });\n }, [expandedRowKeys, isTree, renderRowExpandedProp, rowKey]);\n var bindRowClick = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (rowData) {\n return function (event) {\n onRowClick === null || onRowClick === void 0 ? void 0 : onRowClick(rowData, event);\n };\n }, [onRowClick]);\n var bindRowContextMenu = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (rowData) {\n return function (event) {\n onRowContextMenu === null || onRowContextMenu === void 0 ? void 0 : onRowContextMenu(rowData, event);\n };\n }, [onRowContextMenu]);\n var handleTreeToggle = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(function (treeRowKey, _rowIndex, rowData) {\n var open = false;\n var nextExpandedRowKeys = [];\n\n for (var i = 0; i < expandedRowKeys.length; i++) {\n var key = expandedRowKeys[i];\n\n if (key === treeRowKey) {\n open = true;\n } else {\n nextExpandedRowKeys.push(key);\n }\n }\n\n if (!open) {\n nextExpandedRowKeys.push(treeRowKey);\n }\n\n setExpandedRowKeys(nextExpandedRowKeys);\n onExpandChange === null || onExpandChange === void 0 ? void 0 : onExpandChange(!open, rowData);\n }, [expandedRowKeys, onExpandChange, setExpandedRowKeys]);\n\n var renderRowData = function renderRowData(bodyCells, rowData, props, shouldRenderExpandedRow) {\n var hasChildren = isTree && rowData.children && Array.isArray(rowData.children);\n var nextRowKey = typeof rowData[rowKey] !== 'undefined' ? rowData[rowKey] : props.key;\n\n var rowProps = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, props, {\n key: nextRowKey,\n 'aria-rowindex': props.key + 2,\n rowRef: bindTableRowsRef(props.key, rowData),\n onClick: bindRowClick(rowData),\n onContextMenu: bindRowContextMenu(rowData)\n });\n\n var expanded = expandedRowKeys.some(function (key) {\n return key === rowData[rowKey];\n });\n var cells = [];\n\n for (var i = 0; i < bodyCells.length; i++) {\n var _cell$props2, _cell$props2$rowSpan;\n\n var cell = bodyCells[i];\n var rowSpan = (_cell$props2 = cell.props) === null || _cell$props2 === void 0 ? void 0 : (_cell$props2$rowSpan = _cell$props2.rowSpan) === null || _cell$props2$rowSpan === void 0 ? void 0 : _cell$props2$rowSpan.call(_cell$props2, rowData);\n\n var _rowHeight = rowSpan ? rowSpan * props.height : props.height;\n\n if (rowSpan) {\n var _rowProps$style;\n\n rowProps.rowSpan = rowSpan;\n rowProps.style = {\n /**\n * In the case of multiple-column merged rows,\n * the `zIndex` value of the previous row should be greater than the `zIndex` value of the following row.\n * So `rowSpan` is used as the `zIndex` value.\n */\n zIndex: ((_rowProps$style = rowProps.style) === null || _rowProps$style === void 0 ? void 0 : _rowProps$style.zIndex) || rowSpan,\n overflow: 'inherit'\n }; // TODO: Do not render those cells merged by `rowSpan`\n }\n\n cells.push( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().cloneElement(cell, {\n hasChildren: hasChildren,\n rowData: rowData,\n wordWrap: wordWrap,\n height: _rowHeight,\n rowIndex: props.key,\n depth: props.depth,\n renderTreeToggle: renderTreeToggle,\n onTreeToggle: handleTreeToggle,\n rowKey: nextRowKey,\n expanded: expanded,\n rowSpan: rowSpan\n }));\n }\n\n return renderRow(rowProps, cells, shouldRenderExpandedRow, rowData);\n };\n\n var renderScrollbar = function renderScrollbar() {\n var height = getTableHeight();\n\n if (disabledScroll) {\n return null;\n }\n\n return [/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Scrollbar__WEBPACK_IMPORTED_MODULE_9__.default, {\n key: \"scrollbar\",\n tableId: id,\n style: {\n width: tableWidth.current\n },\n length: tableWidth.current,\n onScroll: onScrollHorizontal,\n scrollLength: contentWidth.current,\n ref: scrollbarXRef\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Scrollbar__WEBPACK_IMPORTED_MODULE_9__.default, {\n key: \"vertical-scrollbar\",\n vertical: true,\n tableId: id,\n length: height - headerHeight,\n scrollLength: contentHeight.current,\n onScroll: onScrollVertical,\n ref: scrollbarYRef\n })];\n };\n\n var renderTableBody = function renderTableBody(bodyCells, rowWidth) {\n var _visibleRows$current;\n\n var height = getTableHeight();\n var bodyHeight = height - headerHeight;\n var bodyStyles = {\n top: headerHeight,\n height: bodyHeight\n };\n var contentHeight = 0;\n var topHideHeight = 0;\n var bottomHideHeight = 0;\n visibleRows.current = [];\n\n if (data) {\n var top = 0; // Row position\n\n var minTop = Math.abs(scrollY.current);\n var maxTop = minTop + height + rowExpandedHeight;\n var isCustomRowHeight = typeof rowHeight === 'function';\n var isUncertainHeight = !!renderRowExpandedProp || isCustomRowHeight || wordWrap; // If virtualized is enabled and the row height in the Table is variable,\n // you need to loop through the data to get the height of each row.\n\n if (isUncertainHeight && virtualized || !virtualized) {\n // Avoid white screens on the top and bottom of the table when touching and scrolling on the mobile terminal.\n // So supplement the display data row.\n if ((0,_utils__WEBPACK_IMPORTED_MODULE_15__.isSupportTouchEvent)()) {\n var coveredHeight = height * 3;\n minTop = Math.max(minTop - coveredHeight, 0);\n maxTop = maxTop + coveredHeight;\n }\n\n for (var index = 0; index < data.length; index++) {\n var _rowData = data[index];\n var maxHeight = tableRowsMaxHeight[index];\n var shouldRender = shouldRenderExpandedRow(_rowData);\n var nextRowHeight = 0;\n\n if (typeof rowHeight === 'function') {\n nextRowHeight = rowHeight(_rowData);\n } else {\n nextRowHeight = maxHeight ? Math.max(maxHeight + _constants__WEBPACK_IMPORTED_MODULE_14__.CELL_PADDING_HEIGHT, rowHeight) : rowHeight;\n\n if (shouldRender) {\n nextRowHeight += rowExpandedHeight;\n }\n }\n\n contentHeight += nextRowHeight;\n var rowProps = {\n key: index,\n top: top,\n width: rowWidth,\n depth: _rowData[_constants__WEBPACK_IMPORTED_MODULE_14__.TREE_DEPTH],\n height: nextRowHeight\n };\n top += nextRowHeight;\n\n if (virtualized && !wordWrap) {\n if (top + nextRowHeight < minTop) {\n topHideHeight += nextRowHeight;\n continue;\n } else if (top > maxTop) {\n bottomHideHeight += nextRowHeight;\n continue;\n }\n }\n\n visibleRows.current.push(renderRowData(bodyCells, _rowData, rowProps, shouldRender));\n }\n } else {\n /** virtualized */\n // If the row height of the Table is fixed, it is directly calculated by the row height and the number of rows,\n // thereby reducing the performance cost of traversing all data.\n var _nextRowHeight = getRowHeight();\n\n var startIndex = Math.max(Math.floor(minTop / _nextRowHeight), 0);\n var endIndex = Math.min(startIndex + Math.ceil(bodyHeight / _nextRowHeight) + 5, data.length); // Avoid white screens on the top and bottom of the table when touching and scrolling on the mobile terminal.\n // So supplement the display data row.\n\n if ((0,_utils__WEBPACK_IMPORTED_MODULE_15__.isSupportTouchEvent)()) {\n var coveredCount = Math.floor(height / _nextRowHeight * 3);\n startIndex = Math.max(startIndex - coveredCount, 0);\n endIndex = Math.min(endIndex + coveredCount, data.length);\n }\n\n contentHeight = data.length * _nextRowHeight;\n topHideHeight = startIndex * _nextRowHeight;\n bottomHideHeight = (data.length - endIndex) * _nextRowHeight;\n\n for (var _index = startIndex; _index < endIndex; _index++) {\n var _rowData2 = data[_index];\n var _rowProps = {\n key: _index,\n depth: _rowData2[_constants__WEBPACK_IMPORTED_MODULE_14__.TREE_DEPTH],\n top: _index * _nextRowHeight,\n width: rowWidth,\n height: _nextRowHeight\n };\n visibleRows.current.push(renderRowData(bodyCells, _rowData2, _rowProps, false));\n }\n }\n }\n\n var wheelStyles = {\n position: 'absolute',\n height: contentHeight,\n minHeight: height,\n pointerEvents: isScrolling ? 'none' : undefined\n };\n var topRowStyles = {\n height: topHideHeight\n };\n var bottomRowStyles = {\n height: bottomHideHeight\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n ref: tableBodyRef,\n role: \"rowgroup\",\n className: prefix('body-row-wrapper'),\n style: bodyStyles,\n onScroll: onScrollBody\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", {\n style: wheelStyles,\n className: prefix('body-wheel-area'),\n ref: wheelWrapperRef\n }, topHideHeight ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Row__WEBPACK_IMPORTED_MODULE_7__.default, {\n style: topRowStyles,\n className: \"virtualized\"\n }) : null, visibleRows.current, bottomHideHeight ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Row__WEBPACK_IMPORTED_MODULE_7__.default, {\n style: bottomRowStyles,\n className: \"virtualized\"\n }) : null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_EmptyMessage__WEBPACK_IMPORTED_MODULE_12__.default, {\n locale: locale,\n renderEmpty: renderEmpty,\n addPrefix: prefix,\n loading: !!((_visibleRows$current = visibleRows.current) !== null && _visibleRows$current !== void 0 && _visibleRows$current.length) || loading\n }), renderScrollbar(), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Loader__WEBPACK_IMPORTED_MODULE_11__.default, {\n locale: locale,\n loadAnimation: loadAnimation,\n loading: loading,\n addPrefix: prefix,\n renderLoading: renderLoading\n }));\n };\n\n var contextValue = react__WEBPACK_IMPORTED_MODULE_2___default().useMemo(function () {\n return {\n classPrefix: withClassPrefix(),\n translateDOMPositionXY: translateDOMPositionXY.current,\n rtl: rtl,\n isTree: isTree,\n hasCustomTreeCol: hasCustomTreeCol\n };\n }, [hasCustomTreeCol, isTree, rtl, withClassPrefix]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_TableContext__WEBPACK_IMPORTED_MODULE_13__.default.Provider, {\n value: contextValue\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(\"div\", (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({\n role: isTree ? 'treegrid' : 'grid' // The aria-rowcount is specified on the element with the table.\n // Its value is an integer equal to the total number of rows available, including header rows.\n ,\n \"aria-rowcount\": data.length + 1,\n \"aria-colcount\": colCounts.current,\n \"aria-busy\": loading\n }, rest, {\n className: classes,\n style: styles,\n ref: tableRef\n }), showHeader && renderTableHeader(headerCells, rowWidth), children && renderTableBody(bodyCells, rowWidth), showHeader && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_MouseArea__WEBPACK_IMPORTED_MODULE_10__.default, {\n ref: mouseAreaRef,\n addPrefix: prefix,\n headerHeight: headerHeight,\n height: getTableHeight()\n })));\n});\nTable.displayName = 'Table';\nTable.defaultProps = {\n data: [],\n defaultSortType: _constants__WEBPACK_IMPORTED_MODULE_14__.SORT_TYPE.DESC,\n height: 200,\n rowHeight: 46,\n headerHeight: 40,\n minHeight: 0,\n rowExpandedHeight: 100,\n hover: true,\n showHeader: true,\n translate3d: true,\n shouldUpdateScroll: true,\n locale: {\n emptyMessage: 'No data found',\n loading: 'Loading...'\n }\n};\nTable.propTypes = {\n autoHeight: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n affixHeader: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)]),\n affixHorizontalScrollbar: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)]),\n bordered: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n className: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().string),\n classPrefix: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().string),\n children: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().any),\n cellBordered: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n data: prop_types__WEBPACK_IMPORTED_MODULE_4___default().arrayOf((prop_types__WEBPACK_IMPORTED_MODULE_4___default().object)),\n defaultExpandAllRows: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n defaultExpandedRowKeys: prop_types__WEBPACK_IMPORTED_MODULE_4___default().arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().string), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)])),\n defaultSortType: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().any),\n disabledScroll: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n expandedRowKeys: prop_types__WEBPACK_IMPORTED_MODULE_4___default().arrayOf(prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().string), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)])),\n hover: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n height: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n headerHeight: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n locale: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().object),\n loading: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n loadAnimation: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n minHeight: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n rowKey: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().string), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number)]),\n rowHeight: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().number), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func)]),\n renderTreeToggle: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n renderRowExpanded: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n renderRow: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n rowExpandedHeight: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n renderEmpty: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n renderLoading: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n rowClassName: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().func), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().string)]),\n rtl: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n style: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().object),\n sortColumn: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().string),\n sortType: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().any),\n showHeader: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n shouldUpdateScroll: prop_types__WEBPACK_IMPORTED_MODULE_4___default().oneOfType([(prop_types__WEBPACK_IMPORTED_MODULE_4___default().func), (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool)]),\n translate3d: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n wordWrap: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n width: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().number),\n virtualized: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n isTree: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().bool),\n onRowClick: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onRowContextMenu: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onScroll: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onSortColumn: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onExpandChange: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onTouchStart: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onTouchMove: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func),\n onTouchEnd: (prop_types__WEBPACK_IMPORTED_MODULE_4___default().func)\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (Table);\n\n//# sourceURL=webpack://rsuite/./node_modules/rsuite-table/es/Table.js?");
|
|
9061
9061
|
|
|
9062
9062
|
/***/ }),
|
|
9063
9063
|
|