@aloudata/aloudata-design 3.1.7 → 3.2.0-beta.0
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/README.md +43 -1
- package/dist/AMenu/index.d.ts +1 -1
- package/dist/AMenu/index.js +71 -41
- package/dist/AMenu/index.js.map +1 -1
- package/dist/AMenu.js +2 -0
- package/dist/AProgress/index.d.ts +1 -1
- package/dist/AProgress/index.js +201 -68
- package/dist/AProgress/index.js.map +1 -1
- package/dist/AProgress.js +2 -0
- package/dist/Alert/index.d.ts +1 -1
- package/dist/Alert/index.js +108 -41
- package/dist/Alert/index.js.map +1 -1
- package/dist/Alert.js +2 -0
- package/dist/App/index.js +67 -9
- package/dist/App/index.js.map +1 -1
- package/dist/App.js +2 -0
- package/dist/Avatar/component/Avatar/helper.d.ts +2 -2
- package/dist/Avatar/component/Avatar/helper.js.map +1 -1
- package/dist/Avatar/component/Avatar/index.d.ts +1 -1
- package/dist/Avatar/component/Avatar/index.js +164 -59
- package/dist/Avatar/component/Avatar/index.js.map +1 -1
- package/dist/Avatar/component/Avatar/type.d.ts +0 -1
- package/dist/Avatar/component/Avatar/type.js.map +1 -1
- package/dist/Avatar/component/Avatar.js +2 -0
- package/dist/Avatar/index.d.ts +1 -1
- package/dist/Avatar/index.js +103 -30
- package/dist/Avatar/index.js.map +1 -1
- package/dist/Avatar.js +2 -0
- package/dist/Badge/index.d.ts +1 -1
- package/dist/Badge/index.js +153 -34
- package/dist/Badge/index.js.map +1 -1
- package/dist/Badge.js +2 -0
- package/dist/Breadcrumb/index.d.ts +1 -1
- package/dist/Breadcrumb/index.js +81 -28
- package/dist/Breadcrumb/index.js.map +1 -1
- package/dist/Breadcrumb.js +2 -0
- package/dist/Button/index.d.ts +3 -2
- package/dist/Button/index.js +238 -57
- package/dist/Button/index.js.map +1 -1
- package/dist/Button.js +2 -0
- package/dist/Card/index.d.ts +3 -3
- package/dist/Card/index.js +180 -54
- package/dist/Card/index.js.map +1 -1
- package/dist/Card.js +2 -0
- package/dist/Carousel/index.js +232 -92
- package/dist/Carousel/index.js.map +1 -1
- package/dist/Carousel.js +2 -0
- package/dist/Checkbox/component/CheckboxGroup/index.d.ts +1 -1
- package/dist/Checkbox/component/CheckboxGroup.js +2 -0
- package/dist/Checkbox/index.d.ts +3 -2
- package/dist/Checkbox/index.js +311 -107
- package/dist/Checkbox/index.js.map +1 -1
- package/dist/Checkbox/type.d.ts +0 -1
- package/dist/Checkbox.js +2 -0
- package/dist/Col/index.d.ts +1 -1
- package/dist/Col/index.js +106 -43
- package/dist/Col/index.js.map +1 -1
- package/dist/Col.js +2 -0
- package/dist/Collapse/index.d.ts +1 -1
- package/dist/Collapse/index.js +439 -159
- package/dist/Collapse/index.js.map +1 -1
- package/dist/Collapse.js +2 -0
- package/dist/ColorPicker/ComplexColorPicker/ColorAlphaInput.d.ts +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorAlphaInput.js +68 -19
- package/dist/ColorPicker/ComplexColorPicker/ColorAlphaInput.js.map +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorHexInput.d.ts +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorHexInput.js +52 -17
- package/dist/ColorPicker/ComplexColorPicker/ColorHexInput.js.map +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorHsbInput.d.ts +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorHsbInput.js +159 -44
- package/dist/ColorPicker/ComplexColorPicker/ColorHsbInput.js.map +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorInput.d.ts +2 -2
- package/dist/ColorPicker/ComplexColorPicker/ColorInput.js +130 -48
- package/dist/ColorPicker/ComplexColorPicker/ColorInput.js.map +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorRgbInput.d.ts +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorRgbInput.js +147 -41
- package/dist/ColorPicker/ComplexColorPicker/ColorRgbInput.js.map +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorSteppers.d.ts +1 -1
- package/dist/ColorPicker/ComplexColorPicker/ColorSteppers.js +56 -14
- package/dist/ColorPicker/ComplexColorPicker/ColorSteppers.js.map +1 -1
- package/dist/ColorPicker/ComplexColorPicker/index.d.ts +3 -2
- package/dist/ColorPicker/ComplexColorPicker/index.js +113 -50
- package/dist/ColorPicker/ComplexColorPicker/index.js.map +1 -1
- package/dist/ColorPicker/ComplexColorPicker.js +2 -0
- package/dist/ColorPicker/color.js.map +1 -1
- package/dist/ColorPicker/constant.js.map +1 -1
- package/dist/ColorPicker/hooks/useColor.d.ts +2 -2
- package/dist/ColorPicker/hooks/useColor.js +37 -10
- package/dist/ColorPicker/hooks/useColor.js.map +1 -1
- package/dist/ColorPicker/index.d.ts +1 -1
- package/dist/ColorPicker/index.js +341 -117
- package/dist/ColorPicker/index.js.map +1 -1
- package/dist/ColorPicker/interface.d.ts +3 -3
- package/dist/ColorPicker/interface.js.map +1 -1
- package/dist/ColorPicker/util.js.map +1 -1
- package/dist/ColorPicker.js +2 -0
- package/dist/ConfigProvider/DisabledContext.d.ts +0 -1
- package/dist/ConfigProvider/DisabledContext.js.map +1 -1
- package/dist/ConfigProvider/getUserList.d.ts +1 -1
- package/dist/ConfigProvider/getUserList.js +1 -0
- package/dist/ConfigProvider/getUserList.js.map +1 -1
- package/dist/ConfigProvider/hooks/useGetUserList.d.ts +10 -10
- package/dist/ConfigProvider/hooks/useGetUserList.js +25 -10
- package/dist/ConfigProvider/hooks/useGetUserList.js.map +1 -1
- package/dist/ConfigProvider/index.d.ts +4 -4
- package/dist/ConfigProvider/index.js +101 -37
- package/dist/ConfigProvider/index.js.map +1 -1
- package/dist/ConfigProvider/sizeContext.js +16 -4
- package/dist/ConfigProvider/sizeContext.js.map +1 -1
- package/dist/ConfigProvider.js +2 -0
- package/dist/DataPreviewTable/components/Body/Cell.d.ts +2 -2
- package/dist/DataPreviewTable/components/Body/Cell.js +95 -32
- package/dist/DataPreviewTable/components/Body/Cell.js.map +1 -1
- package/dist/DataPreviewTable/components/Body/Error.d.ts +1 -1
- package/dist/DataPreviewTable/components/Body/Error.js.map +1 -1
- package/dist/DataPreviewTable/components/Body/index.d.ts +2 -2
- package/dist/DataPreviewTable/components/Body/index.js +76 -40
- package/dist/DataPreviewTable/components/Body/index.js.map +1 -1
- package/dist/DataPreviewTable/components/Body.js +2 -0
- package/dist/DataPreviewTable/components/DragBar/Mask.d.ts +2 -1
- package/dist/DataPreviewTable/components/DragBar/Mask.js +43 -22
- package/dist/DataPreviewTable/components/DragBar/Mask.js.map +1 -1
- package/dist/DataPreviewTable/components/DragBar/index.d.ts +1 -1
- package/dist/DataPreviewTable/components/DragBar/index.js +79 -29
- package/dist/DataPreviewTable/components/DragBar/index.js.map +1 -1
- package/dist/DataPreviewTable/components/DragBar.js +2 -0
- package/dist/DataPreviewTable/components/Header/index.d.ts +3 -2
- package/dist/DataPreviewTable/components/Header/index.js +60 -12
- package/dist/DataPreviewTable/components/Header/index.js.map +1 -1
- package/dist/DataPreviewTable/components/Header.js +2 -0
- package/dist/DataPreviewTable/constant.js.map +1 -1
- package/dist/DataPreviewTable/hooks/useDirection.d.ts +2 -2
- package/dist/DataPreviewTable/hooks/useDirection.js +253 -148
- package/dist/DataPreviewTable/hooks/useDirection.js.map +1 -1
- package/dist/DataPreviewTable/index.d.ts +1 -1
- package/dist/DataPreviewTable/index.js +3 -3
- package/dist/DataPreviewTable/index.js.map +1 -1
- package/dist/DataPreviewTable/interface.js.map +1 -1
- package/dist/DataPreviewTable/utils/findRange.js.map +1 -1
- package/dist/DataPreviewTable/utils/getColumnRange.d.ts +2 -2
- package/dist/DataPreviewTable/utils/getColumnRange.js.map +1 -1
- package/dist/DataPreviewTable/utils/getRowRange.d.ts +2 -2
- package/dist/DataPreviewTable/utils/getRowRange.js.map +1 -1
- package/dist/DataPreviewTable/utils/getTableLayout.d.ts +1 -1
- package/dist/DataPreviewTable/utils/getTableLayout.js.map +1 -1
- package/dist/DataPreviewTable.js +2 -0
- package/dist/DatePicker/index.d.ts +4 -3
- package/dist/DatePicker/index.js +350 -86
- package/dist/DatePicker/index.js.map +1 -1
- package/dist/DatePicker.js +2 -0
- package/dist/Divider/index.d.ts +2 -1
- package/dist/Divider/index.js +44 -8
- package/dist/Divider/index.js.map +1 -1
- package/dist/Divider.js +2 -0
- package/dist/DoubleCircleIcon/index.d.ts +2 -2
- package/dist/DoubleCircleIcon.js +2 -0
- package/dist/Drawer/index.d.ts +1 -1
- package/dist/Drawer/index.js +336 -122
- package/dist/Drawer/index.js.map +1 -1
- package/dist/Drawer.js +2 -0
- package/dist/Dropdown/index.d.ts +2 -2
- package/dist/Dropdown/index.js +23 -23
- package/dist/Dropdown/index.js.map +1 -1
- package/dist/Dropdown.js +2 -0
- package/dist/Empty/image/Data.d.ts +2 -1
- package/dist/Empty/image/Data.js +297 -234
- package/dist/Empty/image/Data.js.map +1 -1
- package/dist/Empty/image/Search.d.ts +2 -1
- package/dist/Empty/image/Search.js +14 -7
- package/dist/Empty/image/Search.js.map +1 -1
- package/dist/Empty/image/SearchSmall.d.ts +2 -1
- package/dist/Empty/image/SearchSmall.js +35 -23
- package/dist/Empty/image/SearchSmall.js.map +1 -1
- package/dist/Empty/image/User.d.ts +2 -1
- package/dist/Empty/image/User.js +277 -224
- package/dist/Empty/image/User.js.map +1 -1
- package/dist/Empty/image/WorkBook.d.ts +2 -1
- package/dist/Empty/image/WorkBook.js +254 -206
- package/dist/Empty/image/WorkBook.js.map +1 -1
- package/dist/Empty/index.js.map +1 -1
- package/dist/Empty.js +2 -0
- package/dist/Form/FormItemContext.d.ts +0 -1
- package/dist/Form/FormItemContext.js.map +1 -1
- package/dist/Form/hooks/useFormItemStatus.d.ts +1 -1
- package/dist/Form/index.d.ts +35 -19
- package/dist/Form/index.js +635 -186
- package/dist/Form/index.js.map +1 -1
- package/dist/Form.js +2 -0
- package/dist/HighlightText/index.d.ts +1 -1
- package/dist/HighlightText/index.js +83 -13
- package/dist/HighlightText/index.js.map +1 -1
- package/dist/HighlightText.js +2 -0
- package/dist/Icon/components/AlertTriangleDuotone.d.ts +1 -1
- package/dist/Icon/components/AlertTriangleDuotone.js +81 -20
- package/dist/Icon/components/AlertTriangleDuotone.js.map +1 -1
- package/dist/Icon/components/AlertTriangleLine.d.ts +1 -1
- package/dist/Icon/components/AlertTriangleLine.js +81 -20
- package/dist/Icon/components/AlertTriangleLine.js.map +1 -1
- package/dist/Icon/components/ArrowDownFill.d.ts +1 -1
- package/dist/Icon/components/ArrowDownFill.js +81 -20
- package/dist/Icon/components/ArrowDownFill.js.map +1 -1
- package/dist/Icon/components/ArrowDownLightLine.d.ts +1 -1
- package/dist/Icon/components/ArrowDownLightLine.js +81 -20
- package/dist/Icon/components/ArrowDownLightLine.js.map +1 -1
- package/dist/Icon/components/ArrowDownRightFill.d.ts +1 -1
- package/dist/Icon/components/ArrowDownRightFill.js +81 -20
- package/dist/Icon/components/ArrowDownRightFill.js.map +1 -1
- package/dist/Icon/components/ArrowRightLightLine.d.ts +1 -1
- package/dist/Icon/components/ArrowRightLightLine.js +81 -20
- package/dist/Icon/components/ArrowRightLightLine.js.map +1 -1
- package/dist/Icon/components/AttentionCircleFill.d.ts +1 -1
- package/dist/Icon/components/AttentionCircleFill.js +81 -20
- package/dist/Icon/components/AttentionCircleFill.js.map +1 -1
- package/dist/Icon/components/AttentionTriangleFill.d.ts +1 -1
- package/dist/Icon/components/AttentionTriangleFill.js +81 -20
- package/dist/Icon/components/AttentionTriangleFill.js.map +1 -1
- package/dist/Icon/components/AttentionTriangleLightLine.d.ts +1 -1
- package/dist/Icon/components/AttentionTriangleLightLine.js +81 -20
- package/dist/Icon/components/AttentionTriangleLightLine.js.map +1 -1
- package/dist/Icon/components/CancelCircleDuotone.d.ts +1 -1
- package/dist/Icon/components/CancelCircleDuotone.js +92 -23
- package/dist/Icon/components/CancelCircleDuotone.js.map +1 -1
- package/dist/Icon/components/CancelledCircleFill.d.ts +1 -1
- package/dist/Icon/components/CancelledCircleFill.js +81 -20
- package/dist/Icon/components/CancelledCircleFill.js.map +1 -1
- package/dist/Icon/components/CheckCircleDuotone.d.ts +1 -1
- package/dist/Icon/components/CheckCircleDuotone.js +92 -23
- package/dist/Icon/components/CheckCircleDuotone.js.map +1 -1
- package/dist/Icon/components/CheckCircleFill.d.ts +1 -1
- package/dist/Icon/components/CheckCircleFill.js +81 -20
- package/dist/Icon/components/CheckCircleFill.js.map +1 -1
- package/dist/Icon/components/CheckCircleLightLine.d.ts +1 -1
- package/dist/Icon/components/CheckCircleLightLine.js +97 -25
- package/dist/Icon/components/CheckCircleLightLine.js.map +1 -1
- package/dist/Icon/components/CheckLightLine.d.ts +1 -1
- package/dist/Icon/components/CheckLightLine.js +81 -20
- package/dist/Icon/components/CheckLightLine.js.map +1 -1
- package/dist/Icon/components/ChevronDownLine.d.ts +1 -1
- package/dist/Icon/components/ChevronDownLine.js +81 -20
- package/dist/Icon/components/ChevronDownLine.js.map +1 -1
- package/dist/Icon/components/ChevronLeftLine.d.ts +1 -1
- package/dist/Icon/components/ChevronLeftLine.js +81 -20
- package/dist/Icon/components/ChevronLeftLine.js.map +1 -1
- package/dist/Icon/components/ChevronRightLine.d.ts +1 -1
- package/dist/Icon/components/ChevronRightLine.js +81 -20
- package/dist/Icon/components/ChevronRightLine.js.map +1 -1
- package/dist/Icon/components/CircleLightLine.d.ts +1 -1
- package/dist/Icon/components/CircleLightLine.js +97 -25
- package/dist/Icon/components/CircleLightLine.js.map +1 -1
- package/dist/Icon/components/CloseCircleFill.d.ts +1 -1
- package/dist/Icon/components/CloseCircleFill.js +81 -20
- package/dist/Icon/components/CloseCircleFill.js.map +1 -1
- package/dist/Icon/components/CloseCircleLightLine.d.ts +1 -1
- package/dist/Icon/components/CloseCircleLightLine.js +81 -20
- package/dist/Icon/components/CloseCircleLightLine.js.map +1 -1
- package/dist/Icon/components/CloseCircleRightFill.d.ts +1 -1
- package/dist/Icon/components/CloseCircleRightFill.js +81 -20
- package/dist/Icon/components/CloseCircleRightFill.js.map +1 -1
- package/dist/Icon/components/CloseLLine.d.ts +1 -1
- package/dist/Icon/components/CloseLLine.js +81 -20
- package/dist/Icon/components/CloseLLine.js.map +1 -1
- package/dist/Icon/components/CloseLightLine.d.ts +1 -1
- package/dist/Icon/components/CloseLightLine.js +81 -20
- package/dist/Icon/components/CloseLightLine.js.map +1 -1
- package/dist/Icon/components/CloseMLine.d.ts +1 -1
- package/dist/Icon/components/CloseMLine.js +81 -20
- package/dist/Icon/components/CloseMLine.js.map +1 -1
- package/dist/Icon/components/DangerFill.d.ts +1 -1
- package/dist/Icon/components/DangerFill.js +81 -20
- package/dist/Icon/components/DangerFill.js.map +1 -1
- package/dist/Icon/components/DragLightLine.d.ts +1 -1
- package/dist/Icon/components/DragLightLine.js +81 -20
- package/dist/Icon/components/DragLightLine.js.map +1 -1
- package/dist/Icon/components/DragLine.d.ts +1 -1
- package/dist/Icon/components/DragLine.js +81 -20
- package/dist/Icon/components/DragLine.js.map +1 -1
- package/dist/Icon/components/Ellipsis.d.ts +1 -1
- package/dist/Icon/components/Ellipsis.js +81 -20
- package/dist/Icon/components/Ellipsis.js.map +1 -1
- package/dist/Icon/components/EyeOffLine.d.ts +1 -1
- package/dist/Icon/components/EyeOffLine.js +81 -20
- package/dist/Icon/components/EyeOffLine.js.map +1 -1
- package/dist/Icon/components/EyeOnLine.d.ts +1 -1
- package/dist/Icon/components/EyeOnLine.js +107 -31
- package/dist/Icon/components/EyeOnLine.js.map +1 -1
- package/dist/Icon/components/FoldDownFill.d.ts +1 -1
- package/dist/Icon/components/FoldDownFill.js +87 -21
- package/dist/Icon/components/FoldDownFill.js.map +1 -1
- package/dist/Icon/components/FoldUpFill.d.ts +1 -1
- package/dist/Icon/components/FoldUpFill.js +87 -21
- package/dist/Icon/components/FoldUpFill.js.map +1 -1
- package/dist/Icon/components/InProgressFill.d.ts +1 -1
- package/dist/Icon/components/InProgressFill.js +77 -19
- package/dist/Icon/components/InProgressFill.js.map +1 -1
- package/dist/Icon/components/InfoCircleDuotone.d.ts +1 -1
- package/dist/Icon/components/InfoCircleDuotone.js +81 -20
- package/dist/Icon/components/InfoCircleDuotone.js.map +1 -1
- package/dist/Icon/components/InfoCircleLine.d.ts +1 -1
- package/dist/Icon/components/InfoCircleLine.js +81 -20
- package/dist/Icon/components/InfoCircleLine.js.map +1 -1
- package/dist/Icon/components/InformationCircleFill.d.ts +1 -1
- package/dist/Icon/components/InformationCircleFill.js +81 -20
- package/dist/Icon/components/InformationCircleFill.js.map +1 -1
- package/dist/Icon/components/InformationCircleLightLine.d.ts +1 -1
- package/dist/Icon/components/InformationCircleLightLine.js +97 -25
- package/dist/Icon/components/InformationCircleLightLine.js.map +1 -1
- package/dist/Icon/components/Loading2Line.d.ts +1 -1
- package/dist/Icon/components/Loading2Line.js +81 -20
- package/dist/Icon/components/Loading2Line.js.map +1 -1
- package/dist/Icon/components/LoadingDuotone.d.ts +1 -1
- package/dist/Icon/components/LoadingDuotone.js +96 -24
- package/dist/Icon/components/LoadingDuotone.js.map +1 -1
- package/dist/Icon/components/LoadingLine.d.ts +1 -1
- package/dist/Icon/components/LoadingLine.js +81 -20
- package/dist/Icon/components/LoadingLine.js.map +1 -1
- package/dist/Icon/components/MoreVerticalLine.d.ts +1 -1
- package/dist/Icon/components/MoreVerticalLine.js +81 -20
- package/dist/Icon/components/MoreVerticalLine.js.map +1 -1
- package/dist/Icon/components/SearchLine.d.ts +1 -1
- package/dist/Icon/components/SearchLine.js +81 -20
- package/dist/Icon/components/SearchLine.js.map +1 -1
- package/dist/Icon/components/SignLightLine.d.ts +1 -1
- package/dist/Icon/components/SignLightLine.js +81 -20
- package/dist/Icon/components/SignLightLine.js.map +1 -1
- package/dist/Icon/components/SortAscendingOrderColor.d.ts +1 -1
- package/dist/Icon/components/SortAscendingOrderColor.js +88 -22
- package/dist/Icon/components/SortAscendingOrderColor.js.map +1 -1
- package/dist/Icon/components/SortColor.d.ts +1 -1
- package/dist/Icon/components/SortColor.js +81 -20
- package/dist/Icon/components/SortColor.js.map +1 -1
- package/dist/Icon/components/SortDescendingOrderColor.d.ts +1 -1
- package/dist/Icon/components/SortDescendingOrderColor.js +88 -22
- package/dist/Icon/components/SortDescendingOrderColor.js.map +1 -1
- package/dist/Icon/components/TimesLightLine.d.ts +1 -1
- package/dist/Icon/components/TimesLightLine.js +81 -20
- package/dist/Icon/components/TimesLightLine.js.map +1 -1
- package/dist/Icon/components/TrashLightLine.d.ts +1 -1
- package/dist/Icon/components/TrashLightLine.js +97 -25
- package/dist/Icon/components/TrashLightLine.js.map +1 -1
- package/dist/Icon/components/TriangleLightLine.d.ts +1 -1
- package/dist/Icon/components/TriangleLightLine.js +81 -20
- package/dist/Icon/components/TriangleLightLine.js.map +1 -1
- package/dist/Icon/components/User.d.ts +1 -1
- package/dist/Icon/components/User.js +85 -21
- package/dist/Icon/components/User.js.map +1 -1
- package/dist/Icon/components/UserGroup.d.ts +1 -1
- package/dist/Icon/components/UserGroup.js +85 -21
- package/dist/Icon/components/UserGroup.js.map +1 -1
- package/dist/Icon.d.ts +0 -1
- package/dist/Icon.js +1 -0
- package/dist/IconButton/index.d.ts +6 -5
- package/dist/IconButton/index.js +303 -73
- package/dist/IconButton/index.js.map +1 -1
- package/dist/IconButton.js +2 -0
- package/dist/Input/components/Input/index.d.ts +1 -1
- package/dist/Input/components/Input/index.js +407 -108
- package/dist/Input/components/Input/index.js.map +1 -1
- package/dist/Input/components/Input.js +2 -0
- package/dist/Input/components/Password/index.d.ts +1 -1
- package/dist/Input/components/Password/index.js +71 -10
- package/dist/Input/components/Password/index.js.map +1 -1
- package/dist/Input/components/Password.js +2 -0
- package/dist/Input/components/TextArea/index.d.ts +2 -2
- package/dist/Input/components/TextArea/index.js +323 -67
- package/dist/Input/components/TextArea/index.js.map +1 -1
- package/dist/Input/components/TextArea.js +2 -0
- package/dist/Input/index.js.map +1 -1
- package/dist/Input/privateSemanticOwner.d.ts +2 -2
- package/dist/Input.js +2 -0
- package/dist/InputNumber/index.d.ts +2 -1
- package/dist/InputNumber/index.js +13 -13
- package/dist/InputNumber/index.js.map +1 -1
- package/dist/InputNumber/type.d.ts +0 -1
- package/dist/InputNumber.js +2 -0
- package/dist/InputSearch/index.d.ts +1 -1
- package/dist/InputSearch/index.js +213 -78
- package/dist/InputSearch/index.js.map +1 -1
- package/dist/InputSearch.js +2 -0
- package/dist/Layout/index.js +115 -28
- package/dist/Layout/index.js.map +1 -1
- package/dist/Layout.js +2 -0
- package/dist/List/Item.js +105 -21
- package/dist/List/Item.js.map +1 -1
- package/dist/List/index.d.ts +2 -2
- package/dist/List/index.js +11 -11
- package/dist/List/index.js.map +1 -1
- package/dist/List.js +2 -0
- package/dist/LogicTree/DisplayLogicTree.d.ts +1 -1
- package/dist/LogicTree/DisplayLogicTree.js +17 -6
- package/dist/LogicTree/DisplayLogicTree.js.map +1 -1
- package/dist/LogicTree/components/DisplayLogicItem/index.d.ts +2 -2
- package/dist/LogicTree/components/DisplayLogicItem/index.js +124 -38
- package/dist/LogicTree/components/DisplayLogicItem/index.js.map +1 -1
- package/dist/LogicTree/components/DisplayLogicItem.d.ts +0 -1
- package/dist/LogicTree/components/DisplayLogicItem.js +1 -0
- package/dist/LogicTree/components/LogicItem/index.d.ts +4 -3
- package/dist/LogicTree/components/LogicItem/index.js +60 -58
- package/dist/LogicTree/components/LogicItem/index.js.map +1 -1
- package/dist/LogicTree/components/LogicItem.js +2 -0
- package/dist/LogicTree/helper.js.map +1 -1
- package/dist/LogicTree/index.d.ts +1 -1
- package/dist/LogicTree/index.js +205 -66
- package/dist/LogicTree/index.js.map +1 -1
- package/dist/LogicTree/type.js.map +1 -1
- package/dist/LogicTree.js +2 -0
- package/dist/MemberPicker/components/MemberSelection.d.ts +2 -2
- package/dist/MemberPicker/components/MemberSelection.js +4 -4
- package/dist/MemberPicker/components/MemberSelection.js.map +1 -1
- package/dist/MemberPicker/components/MultipleOption.d.ts +4 -3
- package/dist/MemberPicker/components/MultipleOption.js +178 -44
- package/dist/MemberPicker/components/MultipleOption.js.map +1 -1
- package/dist/MemberPicker/components/NickLabel.d.ts +1 -1
- package/dist/MemberPicker/components/NickLabel.js +66 -17
- package/dist/MemberPicker/components/NickLabel.js.map +1 -1
- package/dist/MemberPicker/components/Panel.d.ts +4 -4
- package/dist/MemberPicker/components/Panel.js +198 -108
- package/dist/MemberPicker/components/Panel.js.map +1 -1
- package/dist/MemberPicker/components/PanelWrapper.d.ts +4 -4
- package/dist/MemberPicker/components/PanelWrapper.js +190 -76
- package/dist/MemberPicker/components/PanelWrapper.js.map +1 -1
- package/dist/MemberPicker/components/SearchFeedback.d.ts +2 -1
- package/dist/MemberPicker/components/SearchFeedback.js +63 -14
- package/dist/MemberPicker/components/SearchFeedback.js.map +1 -1
- package/dist/MemberPicker/components/SelectedMemberTags.d.ts +4 -4
- package/dist/MemberPicker/components/SelectedMemberTags.js +148 -64
- package/dist/MemberPicker/components/SelectedMemberTags.js.map +1 -1
- package/dist/MemberPicker/components/SelectorFooter.d.ts +2 -2
- package/dist/MemberPicker/components/SelectorFooter.js +42 -22
- package/dist/MemberPicker/components/SelectorFooter.js.map +1 -1
- package/dist/MemberPicker/components/SingleOption.d.ts +4 -3
- package/dist/MemberPicker/components/SingleOption.js +157 -38
- package/dist/MemberPicker/components/SingleOption.js.map +1 -1
- package/dist/MemberPicker/components/UserGroupSelection.d.ts +2 -2
- package/dist/MemberPicker/components/UserGroupSelection.js +331 -158
- package/dist/MemberPicker/components/UserGroupSelection.js.map +1 -1
- package/dist/MemberPicker/dialog/DialogColumns.d.ts +1 -1
- package/dist/MemberPicker/dialog/DialogColumns.js +106 -46
- package/dist/MemberPicker/dialog/DialogColumns.js.map +1 -1
- package/dist/MemberPicker/dialog/DialogContent.d.ts +1 -1
- package/dist/MemberPicker/dialog/DialogContent.js +242 -78
- package/dist/MemberPicker/dialog/DialogContent.js.map +1 -1
- package/dist/MemberPicker/dialog/MemberOption.d.ts +2 -2
- package/dist/MemberPicker/dialog/MemberOption.js +247 -79
- package/dist/MemberPicker/dialog/MemberOption.js.map +1 -1
- package/dist/MemberPicker/dialog/MemberPickerDialog.d.ts +3 -3
- package/dist/MemberPicker/dialog/MemberPickerDialog.js +9 -1
- package/dist/MemberPicker/dialog/MemberPickerDialog.js.map +1 -1
- package/dist/MemberPicker/dialog/SelectedMemberPanel.d.ts +3 -3
- package/dist/MemberPicker/dialog/SelectedMemberPanel.js +52 -12
- package/dist/MemberPicker/dialog/SelectedMemberPanel.js.map +1 -1
- package/dist/MemberPicker/dialog/UserCandidatePanel.d.ts +2 -2
- package/dist/MemberPicker/dialog/UserCandidatePanel.js +12 -12
- package/dist/MemberPicker/dialog/UserCandidatePanel.js.map +1 -1
- package/dist/MemberPicker/dialog/UserGroupCandidatePanel.d.ts +2 -2
- package/dist/MemberPicker/dialog/UserGroupCandidatePanel.js +283 -105
- package/dist/MemberPicker/dialog/UserGroupCandidatePanel.js.map +1 -1
- package/dist/MemberPicker/dialog/helper.d.ts +1 -1
- package/dist/MemberPicker/dialog/helper.js.map +1 -1
- package/dist/MemberPicker/dialog/types.d.ts +2 -2
- package/dist/MemberPicker/dialog/types.js.map +1 -1
- package/dist/MemberPicker/dialog/useDialogLocale.d.ts +1 -1
- package/dist/MemberPicker/dialog/useDialogLocale.js +9 -1
- package/dist/MemberPicker/dialog/useDialogLocale.js.map +1 -1
- package/dist/MemberPicker/dialog/useMemberPickerDraft.d.ts +2 -2
- package/dist/MemberPicker/dialog/useMemberPickerDraft.js +9 -9
- package/dist/MemberPicker/dialog/useMemberPickerDraft.js.map +1 -1
- package/dist/MemberPicker/dialog/useUserGroupCandidates.d.ts +1 -1
- package/dist/MemberPicker/dialog/useUserGroupCandidates.js +107 -107
- package/dist/MemberPicker/dialog/useUserGroupCandidates.js.map +1 -1
- package/dist/MemberPicker/index.js +43 -43
- package/dist/MemberPicker/index.js.map +1 -1
- package/dist/MemberPicker/interface.d.ts +4 -4
- package/dist/MemberPicker/interface.js.map +1 -1
- package/dist/MemberPicker/tests/mockPort.d.ts +2 -2
- package/dist/MemberPicker/useMemberSearch.d.ts +1 -1
- package/dist/MemberPicker/useMemberSearch.js +81 -40
- package/dist/MemberPicker/useMemberSearch.js.map +1 -1
- package/dist/MemberPicker/utils/getUsersWithUserId.d.ts +2 -2
- package/dist/MemberPicker/utils/getUsersWithUserId.js.map +1 -1
- package/dist/MemberPicker/utils/index.d.ts +4 -3
- package/dist/MemberPicker/utils/index.js.map +1 -1
- package/dist/MemberPicker/utils.d.ts +0 -1
- package/dist/MemberPicker/utils.js +1 -0
- package/dist/MemberPicker.js +2 -0
- package/dist/Menu/index.d.ts +1 -1
- package/dist/Menu/index.js +236 -87
- package/dist/Menu/index.js.map +1 -1
- package/dist/Menu.js +2 -0
- package/dist/Modal/index.d.ts +2 -2
- package/dist/Modal/index.js +151 -89
- package/dist/Modal/index.js.map +1 -1
- package/dist/Modal.js +2 -0
- package/dist/OverflowCount/index.d.ts +2 -2
- package/dist/OverflowCount/index.js +173 -77
- package/dist/OverflowCount/index.js.map +1 -1
- package/dist/OverflowCount.js +2 -0
- package/dist/Pagination/PageSizeChanger.js +77 -22
- package/dist/Pagination/PageSizeChanger.js.map +1 -1
- package/dist/Pagination/index.d.ts +2 -1
- package/dist/Pagination/index.js +7 -7
- package/dist/Pagination/index.js.map +1 -1
- package/dist/Pagination/types.d.ts +0 -1
- package/dist/Pagination.js +2 -0
- package/dist/Popconfirm/index.d.ts +2 -2
- package/dist/Popconfirm/index.js +7 -7
- package/dist/Popconfirm/index.js.map +1 -1
- package/dist/Popconfirm.js +2 -0
- package/dist/Popover/index.d.ts +1 -1
- package/dist/Popover/index.js +1 -1
- package/dist/Popover/index.js.map +1 -1
- package/dist/Popover.js +2 -0
- package/dist/Progress/index.js +91 -28
- package/dist/Progress/index.js.map +1 -1
- package/dist/Progress.js +2 -0
- package/dist/Radio/components/Group/index.d.ts +2 -2
- package/dist/Radio/components/Group/index.js.map +1 -1
- package/dist/Radio/components/Group.js +2 -0
- package/dist/Radio/components/Radio/index.d.ts +3 -2
- package/dist/Radio/components/Radio/index.js +112 -46
- package/dist/Radio/components/Radio/index.js.map +1 -1
- package/dist/Radio/components/Radio.js +2 -0
- package/dist/Radio/index.js.map +1 -1
- package/dist/Radio.js +2 -0
- package/dist/RenameInput/index.d.ts +2 -2
- package/dist/RenameInput/index.js +248 -75
- package/dist/RenameInput/index.js.map +1 -1
- package/dist/RenameInput.js +2 -0
- package/dist/Result/index.d.ts +7 -7
- package/dist/Result/index.js +172 -60
- package/dist/Result/index.js.map +1 -1
- package/dist/Result/noFound.js +37 -11
- package/dist/Result/noFound.js.map +1 -1
- package/dist/Result/serverError.js +37 -11
- package/dist/Result/serverError.js.map +1 -1
- package/dist/Result/unauthorized.js +38 -11
- package/dist/Result/unauthorized.js.map +1 -1
- package/dist/Result.js +2 -0
- package/dist/Row/index.d.ts +1 -1
- package/dist/Row/index.js +86 -20
- package/dist/Row/index.js.map +1 -1
- package/dist/Row.js +2 -0
- package/dist/ScrollArea/index.d.ts +1 -1
- package/dist/ScrollArea/index.js +144 -32
- package/dist/ScrollArea/index.js.map +1 -1
- package/dist/ScrollArea.js +2 -0
- package/dist/Select/BaseSelect.d.ts +2 -2
- package/dist/Select/BaseSelect.js +49 -37
- package/dist/Select/BaseSelect.js.map +1 -1
- package/dist/Select/SelectTrigger.d.ts +2 -2
- package/dist/Select/SelectTrigger.js.map +1 -1
- package/dist/Select/Selector/FixedOverflow.d.ts +1 -1
- package/dist/Select/Selector/FixedOverflow.js +213 -84
- package/dist/Select/Selector/FixedOverflow.js.map +1 -1
- package/dist/Select/Selector/MultipleResponsiveSelectedSection.d.ts +4 -4
- package/dist/Select/Selector/MultipleResponsiveSelectedSection.js +90 -29
- package/dist/Select/Selector/MultipleResponsiveSelectedSection.js.map +1 -1
- package/dist/Select/Selector/MultipleSelector.d.ts +5 -5
- package/dist/Select/Selector/MultipleSelector.js +241 -82
- package/dist/Select/Selector/MultipleSelector.js.map +1 -1
- package/dist/Select/Selector/index.d.ts +5 -5
- package/dist/Select/Selector/index.js +64 -13
- package/dist/Select/Selector/index.js.map +1 -1
- package/dist/Select/Selector.js +2 -0
- package/dist/Select/components/OptionCollection.d.ts +3 -2
- package/dist/Select/components/OptionCollection.js +131 -40
- package/dist/Select/components/OptionCollection.js.map +1 -1
- package/dist/Select/components/PopupContent.d.ts +2 -2
- package/dist/Select/components/PopupContent.js +41 -11
- package/dist/Select/components/PopupContent.js.map +1 -1
- package/dist/Select/components/SearchBox.d.ts +1 -1
- package/dist/Select/components/SearchBox.js +32 -11
- package/dist/Select/components/SearchBox.js.map +1 -1
- package/dist/Select/components/Suffix.d.ts +2 -2
- package/dist/Select/components/Suffix.js +96 -32
- package/dist/Select/components/Suffix.js.map +1 -1
- package/dist/Select/hooks/useCache.d.ts +1 -1
- package/dist/Select/hooks/useCache.js.map +1 -1
- package/dist/Select/hooks/useDisplayMenu.d.ts +1 -1
- package/dist/Select/hooks/useDisplayMenu.js.map +1 -1
- package/dist/Select/hooks/useOptions.d.ts +1 -1
- package/dist/Select/hooks/useOptions.js +34 -15
- package/dist/Select/hooks/useOptions.js.map +1 -1
- package/dist/Select/index.js +348 -167
- package/dist/Select/index.js.map +1 -1
- package/dist/Select/interface.d.ts +2 -2
- package/dist/Select/utils/commonUtil.d.ts +1 -1
- package/dist/Select/utils/commonUtil.js.map +1 -1
- package/dist/Select/utils/getWidthStyle.js.map +1 -1
- package/dist/Select/utils/valueUtil.d.ts +2 -2
- package/dist/Select/utils/valueUtil.js +1 -1
- package/dist/Select/utils/valueUtil.js.map +1 -1
- package/dist/Select.js +2 -0
- package/dist/Skeleton/index.d.ts +2 -2
- package/dist/Skeleton/index.js +255 -58
- package/dist/Skeleton/index.js.map +1 -1
- package/dist/Skeleton.js +2 -0
- package/dist/Slider/index.d.ts +1 -1
- package/dist/Slider/index.js +257 -57
- package/dist/Slider/index.js.map +1 -1
- package/dist/Slider.js +2 -0
- package/dist/Space/CompactContext.d.ts +2 -2
- package/dist/Space/CompactContext.js +1 -1
- package/dist/Space/CompactContext.js.map +1 -1
- package/dist/Space/index.d.ts +3 -3
- package/dist/Space/index.js +162 -30
- package/dist/Space/index.js.map +1 -1
- package/dist/Space.js +2 -0
- package/dist/Spin/CustomIcon/index.d.ts +2 -2
- package/dist/Spin/CustomIcon/index.js +95 -12
- package/dist/Spin/CustomIcon/index.js.map +1 -1
- package/dist/Spin/CustomIcon.js +2 -0
- package/dist/Spin/index.d.ts +1 -1
- package/dist/Spin/index.js +156 -51
- package/dist/Spin/index.js.map +1 -1
- package/dist/Spin.js +2 -0
- package/dist/StatusLight/index.d.ts +1 -1
- package/dist/StatusLight/index.js +118 -45
- package/dist/StatusLight/index.js.map +1 -1
- package/dist/StatusLight.js +2 -0
- package/dist/Steps/components/CustomDot/index.d.ts +1 -1
- package/dist/Steps/components/CustomDot/index.js.map +1 -1
- package/dist/Steps/components/CustomDot.d.ts +0 -1
- package/dist/Steps/components/CustomDot.js +1 -0
- package/dist/Steps/components/ProcessIcon/index.d.ts +2 -1
- package/dist/Steps/components/ProcessIcon/index.js +177 -46
- package/dist/Steps/components/ProcessIcon/index.js.map +1 -1
- package/dist/Steps/components/ProcessIcon.d.ts +0 -1
- package/dist/Steps/components/ProcessIcon.js +1 -0
- package/dist/Steps/components/Step/index.d.ts +2 -2
- package/dist/Steps/components/Step/index.js +46 -17
- package/dist/Steps/components/Step/index.js.map +1 -1
- package/dist/Steps/components/Step.d.ts +0 -1
- package/dist/Steps/components/Step.js +1 -0
- package/dist/Steps/index.d.ts +3 -3
- package/dist/Steps/index.js +160 -105
- package/dist/Steps/index.js.map +1 -1
- package/dist/Steps.js +2 -0
- package/dist/Switch/index.js +159 -49
- package/dist/Switch/index.js.map +1 -1
- package/dist/Switch/test.d.ts +0 -1
- package/dist/Switch/test.js +1 -0
- package/dist/Switch.js +2 -0
- package/dist/Table/components/Cell.d.ts +2 -1
- package/dist/Table/components/Cell.js +29 -6
- package/dist/Table/components/Cell.js.map +1 -1
- package/dist/Table/components/DndWrapper.js +11 -2
- package/dist/Table/components/DndWrapper.js.map +1 -1
- package/dist/Table/components/ErrorBoundary.js.map +1 -1
- package/dist/Table/components/ExpandCell.d.ts +3 -3
- package/dist/Table/components/ExpandCell.js +139 -43
- package/dist/Table/components/ExpandCell.js.map +1 -1
- package/dist/Table/components/Footer/index.d.ts +5 -4
- package/dist/Table/components/Footer/index.js +130 -61
- package/dist/Table/components/Footer/index.js.map +1 -1
- package/dist/Table/components/Footer.js +2 -0
- package/dist/Table/components/Header.d.ts +2 -1
- package/dist/Table/components/Header.js.map +1 -1
- package/dist/Table/helper.d.ts +13 -13
- package/dist/Table/helper.js.map +1 -1
- package/dist/Table/hooks/useExpandable.d.ts +2 -2
- package/dist/Table/hooks/useExpandable.js +178 -64
- package/dist/Table/hooks/useExpandable.js.map +1 -1
- package/dist/Table/hooks/useFixed.js.map +1 -1
- package/dist/Table/hooks/useRowDnd.d.ts +1 -1
- package/dist/Table/hooks/useRowDnd.js +5 -5
- package/dist/Table/hooks/useRowDnd.js.map +1 -1
- package/dist/Table/hooks/useRowSelection.d.ts +1 -1
- package/dist/Table/hooks/useRowSelection.js +307 -129
- package/dist/Table/hooks/useRowSelection.js.map +1 -1
- package/dist/Table/hooks/useScroll.d.ts +3 -3
- package/dist/Table/hooks/useScroll.js +92 -45
- package/dist/Table/hooks/useScroll.js.map +1 -1
- package/dist/Table/index.d.ts +2 -2
- package/dist/Table/index.js +78 -78
- package/dist/Table/index.js.map +1 -1
- package/dist/Table/tests/helper.d.ts +1 -1
- package/dist/Table/types.d.ts +2 -2
- package/dist/Table.js +2 -0
- package/dist/Tabs/TabPane.d.ts +2 -2
- package/dist/Tabs/TabPane.js +13 -4
- package/dist/Tabs/TabPane.js.map +1 -1
- package/dist/Tabs/index.d.ts +2 -2
- package/dist/Tabs/index.js +677 -252
- package/dist/Tabs/index.js.map +1 -1
- package/dist/Tabs.js +2 -0
- package/dist/Tag/index.d.ts +1 -1
- package/dist/Tag/index.js +243 -77
- package/dist/Tag/index.js.map +1 -1
- package/dist/Tag.js +2 -0
- package/dist/TextLink/index.d.ts +1 -1
- package/dist/TextLink/index.js +60 -8
- package/dist/TextLink/index.js.map +1 -1
- package/dist/TextLink.js +2 -0
- package/dist/Tooltip/index.d.ts +1 -1
- package/dist/Tooltip/index.js +31 -10
- package/dist/Tooltip/index.js.map +1 -1
- package/dist/Tooltip.js +2 -0
- package/dist/Tour/index.d.ts +1 -1
- package/dist/Tour/index.js +234 -76
- package/dist/Tour/index.js.map +1 -1
- package/dist/Tour.js +2 -0
- package/dist/Tree/DirectoryTree.d.ts +1 -1
- package/dist/Tree/DirectoryTree.js +6 -6
- package/dist/Tree/DirectoryTree.js.map +1 -1
- package/dist/Tree/Tree.d.ts +1 -1
- package/dist/Tree/Tree2.js +24 -24
- package/dist/Tree/Tree2.js.map +1 -1
- package/dist/Tree/index.d.ts +2 -2
- package/dist/Tree/index.js.map +1 -1
- package/dist/Tree/utils/composeAllowDrop.d.ts +1 -1
- package/dist/Tree/utils/composeAllowDrop.js.map +1 -1
- package/dist/Tree/utils/dictUtil.d.ts +1 -1
- package/dist/Tree/utils/dictUtil.js.map +1 -1
- package/dist/Tree/utils/dropIndicator.d.ts +2 -1
- package/dist/Tree/utils/dropIndicator.js.map +1 -1
- package/dist/Tree/utils/iconUtil.d.ts +1 -1
- package/dist/Tree/utils/iconUtil.js +82 -24
- package/dist/Tree/utils/iconUtil.js.map +1 -1
- package/dist/Tree.js +2 -0
- package/dist/Typography/index.js +75 -27
- package/dist/Typography/index.js.map +1 -1
- package/dist/Typography.js +2 -0
- package/dist/Upload/index.d.ts +4 -4
- package/dist/Upload/index.js +278 -133
- package/dist/Upload/index.js.map +1 -1
- package/dist/Upload.js +2 -0
- package/dist/User/index.d.ts +1 -1
- package/dist/User/index.js +79 -12
- package/dist/User/index.js.map +1 -1
- package/dist/User.js +2 -0
- package/dist/Watermark/index.d.ts +1 -1
- package/dist/Watermark/index.js +108 -47
- package/dist/Watermark/index.js.map +1 -1
- package/dist/Watermark.js +2 -0
- package/dist/_utils/dialogAccessibility.js +98 -54
- package/dist/_utils/dialogAccessibility.js.map +1 -1
- package/dist/_utils/floatingLayer.d.ts +1 -1
- package/dist/_utils/floatingLayer.js +41 -14
- package/dist/_utils/floatingLayer.js.map +1 -1
- package/dist/_utils/formControlSemanticOwner.js.map +1 -1
- package/dist/_utils/getUniqId.js.map +1 -1
- package/dist/_utils/hooks/useControlledState.d.ts +1 -1
- package/dist/_utils/hooks/useId.js +1 -1
- package/dist/_utils/hooks/useId.js.map +1 -1
- package/dist/_utils/motion.js.map +1 -1
- package/dist/_utils/overlayCoordinator.d.ts +1 -1
- package/dist/_utils/overlayCoordinator.js +23 -7
- package/dist/_utils/overlayCoordinator.js.map +1 -1
- package/dist/_utils/prefixCls.d.ts +3 -1
- package/dist/_utils/prefixCls.js.map +1 -1
- package/dist/_utils/reactNode.d.ts +3 -3
- package/dist/_utils/reactNode.js +3 -1
- package/dist/_utils/reactNode.js.map +1 -1
- package/dist/_utils/statusUtils.d.ts +1 -1
- package/dist/_utils/weakRefFallback.js.map +1 -1
- package/dist/governance/semantic.d.ts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/lib/utils.js.map +1 -1
- package/dist/locale/default.d.ts +1 -2
- package/dist/locale/default.js.map +1 -1
- package/dist/locale/en_US.d.ts +1 -1
- package/dist/locale/en_US.js +1 -1
- package/dist/locale/en_US.js.map +1 -1
- package/dist/locale/zh_CN.d.ts +1 -1
- package/dist/locale/zh_CN.js +2 -2
- package/dist/locale/zh_CN.js.map +1 -1
- package/dist/message/index.js.map +1 -1
- package/dist/message.js +2 -0
- package/dist/notification/index.js.map +1 -1
- package/dist/notification.js +2 -0
- package/dist/theme/contract/baselineResolvedTokenValueManifest.d.ts +1 -1
- package/dist/theme/contract/controlStateColorArtifact.d.ts +1 -1
- package/dist/theme/contract/focusRingArtifact.d.ts +1 -1
- package/dist/theme/contract/shadowGeneratorSpecification.d.ts +1 -1
- package/dist/theme/contract/tokenCssBridge.d.ts +1 -1
- package/dist/theme/contract/tokenOutputContract.d.ts +1 -1
- package/dist/theme/contract/tokenOutputContract.js.map +1 -1
- package/dist/theme/generator/baselineTokenValueDelivery.d.ts +1 -1
- package/dist/theme/generator/generatorDiff.d.ts +1 -1
- package/dist/theme/generator/minimalAcceptedColorValues.d.ts +1 -1
- package/dist/theme/generator/neutralSourceResolver.d.ts +2 -2
- package/dist/theme/generator/neutralSourceValues.d.ts +3 -3
- package/dist/theme/governance/migrationMappingRegistry.js.map +1 -1
- package/dist/theme/governance/reviewGate.js.map +1 -1
- package/dist/theme/governance/semanticGovernanceContract.d.ts +1 -1
- package/dist/theme/governance/semanticGovernanceContract.js.map +1 -1
- package/dist/theme/governance/validateMigrationMapping.js.map +1 -1
- package/dist/theme/neutralSourceContract.js.map +1 -1
- package/dist/theme/runtime/colorValueMode/generated/darkBaselineDeclarations.d.ts +1 -1
- package/dist/theme/runtime/colorValueMode/generated/darkBaselineDeclarations.js.map +1 -1
- package/dist/theme/runtime/colorValueMode/generated/slateDarkDeclarations.d.ts +1 -1
- package/dist/theme/runtime/colorValueMode/generated/slateLightDeclarations.d.ts +1 -1
- package/dist/theme/runtime/colorValueMode/generated/stoneDarkDeclarations.d.ts +1 -1
- package/dist/theme/runtime/colorValueMode/generated/stoneLightDeclarations.d.ts +1 -1
- package/dist/theme/runtime/colorValueMode/generated/v3BaselineDeclarations.d.ts +1 -1
- package/dist/theme/runtime/colorValueMode/generated/v3BaselineDeclarations.js.map +1 -1
- package/dist/theme/runtime/colorValueMode/index.js.map +1 -1
- package/dist/theme/runtime/colorValueMode/legacyNeutralCompatibility.d.ts +1 -1
- package/dist/theme/runtime/colorValueMode/legacyNeutralCompatibility.js.map +1 -1
- package/dist/theme/runtime/colorValueMode/registry.d.ts +1 -1
- package/dist/theme/runtime/colorValueMode/registry.js.map +1 -1
- package/dist/theme/runtime/colorValueMode.d.ts +0 -1
- package/dist/theme/runtime/colorValueMode.js +1 -0
- package/dist/theme/runtime/createTheme.js.map +1 -1
- package/dist/theme/runtime/defaultTheme.js.map +1 -1
- package/dist/theme/runtime/initAldTheme.js.map +1 -1
- package/dist/theme/runtime/integrationController.d.ts +1 -1
- package/dist/theme/runtime/neutralSource/index.d.ts +2 -2
- package/dist/theme/runtime/neutralSource/index.js.map +1 -1
- package/dist/theme/runtime/neutralSource.d.ts +0 -1
- package/dist/theme/runtime/neutralSource.js +1 -0
- package/dist/theme/runtime/runtimeAdapter.d.ts +1 -1
- package/dist/theme/runtime/themeToCssVars.js.map +1 -1
- package/dist/theme/runtime/tokenMap.js.map +1 -1
- package/dist/theme/typography.d.ts +0 -1
- package/dist/theme/typography.js +1 -0
- package/dist/theme.d.ts +0 -1
- package/dist/theme.js +1 -0
- package/package.json +53 -25
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseSelect.js","names":[],"sources":["../../src/Select/BaseSelect.tsx"],"sourcesContent":["import './ald-select.css';\nimport * as React from 'react';\nimport useMergedState from 'rc-util/es/hooks/useMergedState';\nimport { cn } from '../lib/utils';\nimport prefixCls from '../_utils/prefixCls';\n\n/** Align config type (locally defined to avoid rc-trigger dependency) */\nexport interface AlignType {\n points?: string[];\n offset?: (number | string)[];\n targetOffset?: (number | string)[];\n overflow?: { adjustX?: boolean; adjustY?: boolean };\n _experimental?: Record<string, any>;\n}\nimport SelectTrigger, { RefTriggerProps } from './SelectTrigger';\nimport Selector from './Selector';\nimport _ from 'lodash';\nimport { useContext, useRef, useState } from 'react';\nimport { FormItemInputContext } from '../Form/FormItemContext';\nimport getWidthStyle from './utils/getWidthStyle';\nimport Suffix from './components/Suffix';\nimport { PlacementType } from '../Dropdown';\nimport {\n BaseSelectRef,\n DisplayValueType,\n ISelectProps,\n LabelInValueType,\n SelectMenuProps,\n} from './interface';\nimport SizeContext from '../ConfigProvider/sizeContext';\nimport { ConfigContext } from '../ConfigProvider';\nimport { useCompactItemContext } from '../Space/CompactContext';\nimport { MenuInfo } from '../Menu';\nimport { toString } from './utils/commonUtil';\nimport OptionCollection, {\n SelectOptionCollection,\n} from './components/OptionCollection';\n\nexport type RenderNode = React.ReactNode | ((props: any) => React.ReactNode);\n\nexport type RenderDOMFunc = (props: any) => HTMLElement;\n\nexport type Mode =\n | 'multiple'\n | {\n type: 'multiple';\n responsive?: boolean;\n maxRows?: number;\n showSelectedSection?: boolean;\n };\n\nexport type RawValueType = string | number;\n\nfunction splitAriaProps(props: Record<string, any>) {\n return Object.keys(props).reduce<{\n ariaProps: Record<string, any>;\n restProps: Record<string, any>;\n }>(\n (result, key) => {\n if (key.startsWith('aria-')) {\n result.ariaProps[key] = props[key];\n } else {\n result.restProps[key] = props[key];\n }\n return result;\n },\n { ariaProps: {}, restProps: {} },\n );\n}\n\nexport type CustomTagProps = {\n label: React.ReactNode;\n value: any;\n disabled: boolean;\n onClose: (event?: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n closable: boolean;\n};\nexport interface BaseSelectPrivateProps {\n // >>> MISC\n omitDomProps?: string[];\n\n // >>> Value\n displayValues: LabelInValueType[];\n onDisplayValuesChange: (\n values: LabelInValueType[],\n info: {\n type: 'add' | 'remove' | 'clear';\n values: LabelInValueType[];\n },\n ) => void;\n\n // >>> Active\n /** Current dropdown list active item string value */\n activeValue?: string;\n /** Link search input with target element */\n activeDescendantId?: string;\n onActiveValueChange?: (value: string | null) => void;\n}\n\nexport type BaseSelectPropsWithoutPrivate = Omit<\n BaseSelectProps,\n keyof BaseSelectPrivateProps\n>;\n\nexport interface BaseSelectProps\n extends BaseSelectPrivateProps,\n ISelectProps,\n React.AriaAttributes {\n className?: string;\n style?: React.CSSProperties;\n notFoundContent?: React.ReactNode;\n onClear?: () => void;\n innerSearchValue?: string;\n setInnerSearchValue?: (value: string) => void;\n displayMenu?: SelectMenuProps;\n optionCollection?: SelectOptionCollection;\n // >>> Open\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n onOptionSelect?: (val: RawValueType) => void;\n onCollectionOptionSelect?: (val: RawValueType) => void;\n\n // >>> Icons\n allowClear?: boolean;\n showArrow?: boolean;\n suffixIcon?: React.ReactNode;\n\n // >>> Dropdown\n dropdownAlign?: AlignType;\n placement?: PlacementType;\n getPopupContainer?: () => HTMLElement;\n\n // >>> Focus\n onBlur?: React.FocusEventHandler<HTMLElement>;\n onFocus?: React.FocusEventHandler<HTMLElement>;\n\n // >>> Rest Events\n onKeyUp?: React.KeyboardEventHandler<HTMLDivElement>;\n onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;\n onMouseDown?: React.MouseEventHandler<HTMLDivElement>;\n onPopupScroll?: React.UIEventHandler<HTMLDivElement>;\n onInputKeyDown?: React.KeyboardEventHandler<\n HTMLInputElement | HTMLTextAreaElement\n >;\n onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;\n onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n}\n\nexport function isMultiple(mode?: Mode) {\n return !!mode;\n}\nexport function isResponsive(mode?: Mode) {\n return mode === 'multiple' || (typeof mode === 'object' && mode?.responsive);\n}\nexport function isShowSelectedSection(mode?: Mode) {\n if (!mode || mode === 'multiple') {\n return false;\n }\n\n return (\n typeof mode === 'object' && mode.showSelectedSection && mode.responsive\n );\n}\nconst BaseSelect = React.forwardRef(\n (props: BaseSelectProps, ref: React.Ref<BaseSelectRef>) => {\n const {\n id,\n className,\n // Value\n displayValues,\n onDisplayValuesChange,\n displayMenu,\n optionCollection,\n notFoundContent,\n onClear,\n width,\n mode,\n status: customStatus,\n onOptionSelect,\n onCollectionOptionSelect,\n onClick,\n size: customSize,\n borderLess = false,\n // Status\n disabled,\n placeholder,\n loading = false,\n\n // Open\n open,\n defaultOpen,\n onOpenChange,\n showSearch,\n innerSearchValue,\n setInnerSearchValue,\n onInputKeyDown,\n // Icons\n allowClear,\n showArrow = true,\n prefix,\n suffixIcon,\n dropdownRender,\n overlayStyle,\n dropdownStyle,\n popupMatchSelectWidth = true,\n placement,\n popupClassName,\n allowOverlap,\n style,\n 'data-testid': dataTestid,\n 'aria-label': ariaLabel,\n ...restProps\n // Rest Props\n } = props;\n const { ariaProps, restProps: passthroughProps } = React.useMemo(\n () => splitAriaProps(restProps),\n [restProps],\n );\n const triggerAriaProps = React.useMemo<React.AriaAttributes>(\n () => ({\n ...ariaProps,\n 'aria-label': ariaLabel,\n }),\n [ariaLabel, ariaProps],\n );\n const setClassNames = prefixCls('select');\n const selectRef = useRef<HTMLDivElement>(null);\n const triggerRef = useRef<HTMLDivElement>(null);\n const searchInputRef = useRef<HTMLInputElement>(null);\n const widthStyle = getWidthStyle(width);\n const dropdownRef = useRef<RefTriggerProps>(null);\n const [matchedPopupWidth, setMatchedPopupWidth] = useState<\n number | undefined\n >();\n const isResponsiveMode = isResponsive(mode);\n const isMultipleMode = isMultiple(mode);\n /** Used for component focused management */\n const contentSize = useContext(SizeContext);\n const { direction } = React.useContext(ConfigContext);\n // ===================== Compact Item =====================\n const { compactSize, compactItemClassnames } = useCompactItemContext(\n 'ald-select',\n direction,\n );\n const size = compactSize || customSize || contentSize || 'middle';\n const {\n status: contextStatus,\n // hasFeedback,\n // isFormItemInput,\n // feedbackIcon,\n } = useContext(FormItemInputContext);\n\n const mergedStatus =\n customStatus === null ? undefined : customStatus || contextStatus;\n\n // =========================== Imperative ===========================\n React.useImperativeHandle(ref, () => ({\n // The trigger is the Select focus owner. Keeping this as a real DOM\n // focus target makes keyboard focus, the Focus State Layer, and the\n // public imperative API describe the same element.\n focus: () => {\n if (showSearch && optionCollection) {\n searchInputRef.current?.focus();\n } else {\n triggerRef.current?.focus();\n }\n },\n blur: () => {\n if (showSearch && optionCollection) {\n searchInputRef.current?.blur();\n } else {\n triggerRef.current?.blur();\n }\n },\n open: () => onToggleOpen(true),\n close: () => {\n console.log('ref close');\n onToggleOpen(false);\n },\n }));\n const [isHover, setIsHover] = useState(false);\n const [activeOptionKey, setActiveOptionKey] = useState<string>();\n const [composingSearchValue, setComposingSearchValue] = useState<\n string | undefined\n >();\n const isComposingSearchRef = useRef(false);\n const isSearchableCollection = !!optionCollection && !!showSearch;\n const ownerAriaProps = React.useMemo(\n () => ({\n ...triggerAriaProps,\n 'aria-busy': loading || triggerAriaProps['aria-busy'] || undefined,\n 'aria-invalid':\n triggerAriaProps['aria-invalid'] ??\n (mergedStatus === 'error' ? true : undefined),\n }),\n [loading, mergedStatus, triggerAriaProps],\n );\n // ============================== Open ==============================\n const [innerOpen, setInnerOpen] = useMergedState<boolean>(false, {\n defaultValue: defaultOpen,\n value: open,\n });\n const mergedOpen = innerOpen;\n const shouldMatchPopupWidth =\n !!popupMatchSelectWidth && typeof popupMatchSelectWidth !== 'number';\n const updateMatchedPopupWidth = React.useCallback(() => {\n if (!shouldMatchPopupWidth) {\n return;\n }\n\n const nextWidth = selectRef.current?.getBoundingClientRect().width;\n if (nextWidth !== undefined) {\n setMatchedPopupWidth((currentWidth) =>\n currentWidth === nextWidth ? currentWidth : nextWidth,\n );\n }\n }, [shouldMatchPopupWidth]);\n const onToggleOpen = React.useCallback(\n (newOpen?: boolean) => {\n const nextOpen = newOpen !== undefined ? newOpen : !mergedOpen;\n if (nextOpen) {\n updateMatchedPopupWidth();\n }\n if (!nextOpen) {\n setShowResponsiveSelectedSection(false);\n }\n if (mergedOpen !== nextOpen && !disabled) {\n setInnerOpen(nextOpen);\n onOpenChange?.(nextOpen);\n }\n },\n [\n mergedOpen,\n disabled,\n setInnerOpen,\n onOpenChange,\n updateMatchedPopupWidth,\n ],\n );\n const getInitialActiveOptionKey = React.useCallback(\n (position: 'first' | 'last') => {\n if (!optionCollection) {\n return undefined;\n }\n\n if (position === 'last') {\n return optionCollection.enabledOptions[\n optionCollection.enabledOptions.length - 1\n ]?.key;\n }\n\n const selected = optionCollection.options.find(\n (option) =>\n !option.disabled &&\n displayValues.some(\n (value) => toString(value.value) === toString(option.value),\n ),\n );\n return selected?.key ?? optionCollection.enabledOptions[0]?.key;\n },\n [displayValues, optionCollection],\n );\n React.useEffect(() => {\n if (!optionCollection || !mergedOpen) {\n setActiveOptionKey(undefined);\n return;\n }\n\n setActiveOptionKey((current) =>\n optionCollection.enabledOptions.some((option) => option.key === current)\n ? current\n : getInitialActiveOptionKey('first'),\n );\n }, [getInitialActiveOptionKey, mergedOpen, optionCollection]);\n React.useLayoutEffect(() => {\n if (!mergedOpen || !shouldMatchPopupWidth) {\n return;\n }\n\n const element = selectRef.current;\n if (!element) {\n return;\n }\n\n const updateMatchedWidth = () => {\n const nextWidth = element.getBoundingClientRect().width;\n setMatchedPopupWidth((currentWidth) =>\n currentWidth === nextWidth ? currentWidth : nextWidth,\n );\n };\n\n updateMatchedWidth();\n\n if (typeof ResizeObserver === 'undefined') {\n window.addEventListener('resize', updateMatchedWidth);\n return () => {\n window.removeEventListener('resize', updateMatchedWidth);\n };\n }\n\n let resizeAnimationFrame: number | undefined;\n const scheduleMatchedWidthUpdate = () => {\n if (resizeAnimationFrame !== undefined) {\n cancelAnimationFrame(resizeAnimationFrame);\n }\n resizeAnimationFrame = requestAnimationFrame(updateMatchedWidth);\n };\n\n const observer = new ResizeObserver(scheduleMatchedWidthUpdate);\n observer.observe(element);\n\n return () => {\n if (resizeAnimationFrame !== undefined) {\n cancelAnimationFrame(resizeAnimationFrame);\n }\n observer.disconnect();\n };\n }, [mergedOpen, shouldMatchPopupWidth]);\n const [showResponsiveSelectedSection, setShowResponsiveSelectedSection] =\n useState(false);\n // 多选 responsive 进入 -1 收纳态(仅\"首 tag + +N\")时为 true,\n // width:auto 下据此给根节点加 overflow-collapsed 钳住 min-width 链,\n // 抵抗父 flex 行因 intrinsic 低估造成的假压缩(详见 ald-select.css 对应段)\n const [overflowCollapsed, setOverflowCollapsed] = useState(false);\n\n // ============================ Selector ============================\n const onSelectorRemove = (val: DisplayValueType) => {\n const newValues = displayValues.filter(\n (item) => toString(item.value) !== toString(val.value),\n );\n\n onDisplayValuesChange(newValues, {\n type: 'remove',\n values: [\n {\n label: val.label,\n value: val.value as RawValueType,\n },\n ],\n });\n };\n\n const mergedClassName = cn(\n setClassNames('beta-ald-select', size, {\n // Popup visibility is not focus. The trigger's :focus-visible state\n // owns the Focus State Layer in ald-select.css.\n open: mergedOpen,\n // Retain the legacy hook for consumers that style the open state.\n // It no longer represents trigger focus.\n active: mergedOpen,\n borderless: borderLess,\n disabled: disabled,\n loading: loading,\n [`${mergedStatus}`]: !!mergedStatus,\n 'multiple-responsive': isResponsiveMode,\n 'multiple-default': isMultipleMode && !isResponsiveMode,\n // 仅 width:auto 生效:固定宽度下 -1 收纳态的收缩省略是预期行为,\n // 钳 min-width 反而会把固定宽撑破\n 'overflow-collapsed':\n overflowCollapsed && width === 'auto' && !_.isEmpty(displayValues),\n }),\n 'tw-text-typography-body-dense',\n className,\n compactItemClassnames,\n );\n const showMenu = React.useMemo(() => {\n if (!displayMenu) {\n return undefined;\n }\n\n return {\n ...displayMenu,\n onClick: (info: MenuInfo) => {\n displayMenu?.onClick?.(info);\n if (isMultipleMode) {\n // 多选默认选中后不收起下拉:Dropdown 在 menu.onClick 之后读\n // info.keepOpen 决定是否 onChangeOpen(false),不设则每次点击都被\n // 当成关闭信号。用 ?? 保留用户在自己的 onClick 里显式设 false 的能力\n info.keepOpen = info.keepOpen ?? true;\n } else if (displayMenu) {\n onToggleOpen(false);\n }\n setIsHover(false);\n onOptionSelect?.(info.key);\n },\n };\n }, [displayMenu, isMultipleMode, onToggleOpen, onOptionSelect]);\n const onSelectClick = React.useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n onClick?.(e);\n },\n [disabled, onClick],\n );\n React.useEffect(() => {\n const element = selectRef.current;\n if (element) {\n const handleMouseOver = () => setIsHover(true);\n const handleMouseOut = () => setIsHover(false);\n\n element.addEventListener('mouseover', handleMouseOver);\n element.addEventListener('mouseout', handleMouseOut);\n\n return () => {\n element.removeEventListener('mouseover', handleMouseOver);\n element.removeEventListener('mouseout', handleMouseOut);\n };\n }\n }, []);\n const mergedPopupMatchSelectWidth =\n shouldMatchPopupWidth && matchedPopupWidth !== undefined\n ? matchedPopupWidth\n : popupMatchSelectWidth;\n const activeOptionId = optionCollection?.options.find(\n (option) => option.key === activeOptionKey,\n )?.id;\n const moveActiveOption = React.useCallback(\n (direction: 1 | -1) => {\n if (!optionCollection || optionCollection.enabledOptions.length === 0) {\n return;\n }\n\n const currentIndex = optionCollection.enabledOptions.findIndex(\n (option) => option.key === activeOptionKey,\n );\n const nextIndex =\n currentIndex === -1\n ? direction === 1\n ? 0\n : optionCollection.enabledOptions.length - 1\n : (currentIndex +\n direction +\n optionCollection.enabledOptions.length) %\n optionCollection.enabledOptions.length;\n setActiveOptionKey(optionCollection.enabledOptions[nextIndex].key);\n },\n [activeOptionKey, optionCollection],\n );\n const typeaheadRef = useRef({ value: '', timestamp: 0 });\n const onCollectionKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLElement>) => {\n if (!optionCollection || disabled) {\n return;\n }\n\n const openCollection = (position: 'first' | 'last') => {\n event.preventDefault();\n setActiveOptionKey(getInitialActiveOptionKey(position));\n onToggleOpen(true);\n };\n\n if (!mergedOpen) {\n if (event.key === 'ArrowDown') {\n openCollection('first');\n } else if (event.key === 'ArrowUp') {\n openCollection('last');\n } else if (event.key === 'Enter' || event.key === ' ') {\n openCollection('first');\n }\n return;\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n moveActiveOption(1);\n return;\n }\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n moveActiveOption(-1);\n return;\n }\n if (event.key === 'Home') {\n event.preventDefault();\n setActiveOptionKey(optionCollection.enabledOptions[0]?.key);\n return;\n }\n if (event.key === 'End') {\n event.preventDefault();\n setActiveOptionKey(\n optionCollection.enabledOptions[\n optionCollection.enabledOptions.length - 1\n ]?.key,\n );\n return;\n }\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n const activeOption = optionCollection.options.find(\n (option) => option.key === activeOptionKey,\n );\n if (activeOption && !activeOption.disabled) {\n if (!isMultipleMode) {\n onToggleOpen(false);\n }\n onCollectionOptionSelect?.(activeOption.value);\n }\n return;\n }\n if (event.key === 'Escape') {\n event.preventDefault();\n onToggleOpen(false);\n if (isSearchableCollection) {\n searchInputRef.current?.focus();\n } else {\n triggerRef.current?.focus();\n }\n return;\n }\n if (event.key === 'Tab') {\n onToggleOpen(false);\n return;\n }\n if (\n event.key.length === 1 &&\n !event.altKey &&\n !event.ctrlKey &&\n !event.metaKey\n ) {\n const now = Date.now();\n const query =\n now - typeaheadRef.current.timestamp > 500\n ? event.key\n : `${typeaheadRef.current.value}${event.key}`;\n typeaheadRef.current = { value: query, timestamp: now };\n const normalizedQuery = query.toLocaleLowerCase();\n const activeIndex = optionCollection.enabledOptions.findIndex(\n (option) => option.key === activeOptionKey,\n );\n const orderedOptions = [\n ...optionCollection.enabledOptions.slice(activeIndex + 1),\n ...optionCollection.enabledOptions.slice(0, activeIndex + 1),\n ];\n const match = orderedOptions.find((option) =>\n String(option.label ?? option.value)\n .toLocaleLowerCase()\n .startsWith(normalizedQuery),\n );\n if (match) {\n event.preventDefault();\n setActiveOptionKey(match.key);\n }\n }\n },\n [\n activeOptionKey,\n disabled,\n getInitialActiveOptionKey,\n mergedOpen,\n moveActiveOption,\n onCollectionOptionSelect,\n onToggleOpen,\n optionCollection,\n isSearchableCollection,\n ],\n );\n const onSearchInputKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n onInputKeyDown?.(event);\n if (event.defaultPrevented) {\n return;\n }\n\n if (\n event.key === ' ' ||\n (event.key.length === 1 &&\n !event.altKey &&\n !event.ctrlKey &&\n !event.metaKey)\n ) {\n return;\n }\n\n onCollectionKeyDown(event);\n },\n [onCollectionKeyDown, onInputKeyDown],\n );\n const onSearchInputChange = React.useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n const nextValue = event.target.value;\n if (isComposingSearchRef.current) {\n setComposingSearchValue(nextValue);\n return;\n }\n setInnerSearchValue?.(nextValue);\n },\n [setInnerSearchValue],\n );\n const searchInputValue = composingSearchValue ?? innerSearchValue ?? '';\n const collectionContent = optionCollection ? (\n <OptionCollection\n collection={optionCollection}\n selectedValues={displayValues.map((item) => item.value as RawValueType)}\n activeOptionKey={activeOptionKey}\n multiple={isMultipleMode}\n loading={loading}\n listHeight={props.listHeight ?? 256}\n notFoundContent={notFoundContent}\n onSelect={(value) => {\n if (!isMultipleMode) {\n onToggleOpen(false);\n }\n onCollectionOptionSelect?.(value);\n }}\n />\n ) : undefined;\n return (\n <div\n className={mergedClassName}\n style={{\n ...widthStyle,\n // width:auto 且无选中值时锁 shrink:Chromium 对该子树给父 flex 行的\n // intrinsic 宽度贡献恒少约 14px,父行按低估值布局后回头压缩根节点,\n // placeholder 右侧会被裁;有选中值时必须保持可压缩,rc-overflow\n // 才能在父行变窄时把放不下的 tag 收纳成 \"+N\"\n ...(width === 'auto' && _.isEmpty(displayValues)\n ? { flexShrink: 0 }\n : {}),\n ...style,\n }}\n ref={selectRef}\n id={id}\n onClick={onSelectClick}\n data-testid={dataTestid}\n aria-label={ariaLabel}\n >\n <SelectTrigger\n {...passthroughProps}\n open={!!mergedOpen}\n notFoundContent={notFoundContent}\n menu={showMenu}\n collection={collectionContent}\n ref={dropdownRef}\n showSearch={showSearch}\n searchValue={innerSearchValue}\n setInnerSearchValue={setInnerSearchValue}\n popupMatchSelectWidth={mergedPopupMatchSelectWidth}\n overlayClassName={popupClassName}\n // @ts-ignore\n dropdownRender={dropdownRender}\n overlayStyle={overlayStyle || dropdownStyle}\n placement={placement}\n allowOverlap={allowOverlap}\n onOpenChange={(open) => {\n if (isResponsiveMode) {\n if (\n !mergedOpen &&\n !showResponsiveSelectedSection &&\n displayValues.length > 0 &&\n isShowSelectedSection(mode)\n ) {\n setShowResponsiveSelectedSection(true);\n } else {\n onToggleOpen(open);\n }\n } else {\n onToggleOpen(open);\n }\n }}\n >\n {/* antd 兼容:保留 ant-* class,消费方 CSS 可能依赖该选择器 */}\n <div\n {...(!isSearchableCollection ? ownerAriaProps : {})}\n ref={triggerRef}\n tabIndex={isSearchableCollection || disabled ? undefined : 0}\n role={isSearchableCollection ? undefined : 'combobox'}\n aria-disabled={\n isSearchableCollection ? undefined : disabled || undefined\n }\n aria-expanded={isSearchableCollection ? undefined : mergedOpen}\n aria-haspopup={\n isSearchableCollection\n ? undefined\n : optionCollection\n ? 'listbox'\n : undefined\n }\n aria-controls={\n isSearchableCollection\n ? undefined\n : mergedOpen && optionCollection\n ? optionCollection.listboxId\n : undefined\n }\n aria-activedescendant={\n isSearchableCollection\n ? undefined\n : mergedOpen && optionCollection\n ? activeOptionId\n : undefined\n }\n onKeyDown={\n isSearchableCollection\n ? undefined\n : optionCollection\n ? onCollectionKeyDown\n : undefined\n }\n className={cn(setClassNames('trigger'), 'ant-select-selector')}\n >\n {prefix && <div className={setClassNames('prefix')}>{prefix}</div>}\n {isSearchableCollection ? (\n <input\n {...ownerAriaProps}\n ref={searchInputRef}\n type=\"text\"\n role=\"combobox\"\n className={setClassNames('search-input')}\n value={searchInputValue}\n disabled={disabled}\n placeholder={\n typeof placeholder === 'string' ? placeholder : undefined\n }\n aria-disabled={disabled || undefined}\n aria-expanded={mergedOpen}\n aria-haspopup=\"listbox\"\n aria-controls={\n mergedOpen ? optionCollection?.listboxId : undefined\n }\n aria-activedescendant={mergedOpen ? activeOptionId : undefined}\n onFocus={() => onToggleOpen(true)}\n onChange={onSearchInputChange}\n onCompositionStart={() => {\n isComposingSearchRef.current = true;\n }}\n onCompositionEnd={(event) => {\n isComposingSearchRef.current = false;\n setComposingSearchValue(undefined);\n setInnerSearchValue?.(event.currentTarget.value);\n }}\n onKeyDown={onSearchInputKeyDown}\n />\n ) : (\n <>\n {_.isEmpty(displayValues) && (\n <div\n className={cn(\n setClassNames('placeholder'),\n 'ant-select-selection-placeholder',\n )}\n >\n {placeholder}\n </div>\n )}\n {!_.isEmpty(displayValues) && (\n <Selector\n {...passthroughProps}\n suffixIcon={suffixIcon}\n size={size}\n disabled={disabled}\n mode={mode}\n dropdownRef={dropdownRef}\n displayValues={displayValues}\n onToggleOpen={onToggleOpen}\n onRemove={onSelectorRemove}\n showResponsiveSelectedSection={\n showResponsiveSelectedSection\n }\n onOverflowCollapsedChange={setOverflowCollapsed}\n ></Selector>\n )}\n </>\n )}\n </div>\n </SelectTrigger>\n <Suffix\n showArrow={showArrow}\n allowClear={allowClear}\n disabled={disabled}\n loading={loading}\n isHover={isHover}\n onClear={() => {\n onToggleOpen(false);\n\n onDisplayValuesChange([], {\n type: 'clear',\n values: displayValues,\n });\n onClear?.();\n }}\n isActive={innerOpen}\n icon={suffixIcon}\n displayValues={displayValues}\n ></Suffix>\n </div>\n );\n },\n);\n\nexport default BaseSelect;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseSelect.js","names":["React","useMergedState","cn","prefixCls","AlignType","points","offset","targetOffset","overflow","adjustX","adjustY","_experimental","Record","SelectTrigger","RefTriggerProps","Selector","_","useContext","useRef","useState","FormItemInputContext","getWidthStyle","Suffix","PlacementType","BaseSelectRef","DisplayValueType","ISelectProps","LabelInValueType","SelectMenuProps","SizeContext","ConfigContext","useCompactItemContext","MenuInfo","toString","OptionCollection","SelectOptionCollection","RenderNode","ReactNode","props","RenderDOMFunc","HTMLElement","Mode","type","responsive","maxRows","showSelectedSection","RawValueType","splitAriaProps","Object","keys","reduce","ariaProps","restProps","result","key","startsWith","CustomTagProps","label","value","disabled","onClose","event","MouseEvent","closable","BaseSelectPrivateProps","omitDomProps","displayValues","onDisplayValuesChange","values","info","activeValue","activeDescendantId","onActiveValueChange","BaseSelectPropsWithoutPrivate","Omit","BaseSelectProps","AriaAttributes","className","style","CSSProperties","notFoundContent","onClear","innerSearchValue","setInnerSearchValue","displayMenu","optionCollection","open","defaultOpen","onOpenChange","onOptionSelect","val","onCollectionOptionSelect","allowClear","showArrow","suffixIcon","dropdownAlign","placement","getPopupContainer","onBlur","FocusEventHandler","onFocus","onKeyUp","KeyboardEventHandler","HTMLDivElement","onKeyDown","onMouseDown","MouseEventHandler","onPopupScroll","UIEventHandler","onInputKeyDown","HTMLInputElement","HTMLTextAreaElement","onMouseEnter","onMouseLeave","onClick","isMultiple","mode","isResponsive","isShowSelectedSection","BaseSelect","forwardRef","ref","Ref","id","width","status","customStatus","size","customSize","borderLess","placeholder","loading","showSearch","prefix","dropdownRender","overlayStyle","dropdownStyle","popupMatchSelectWidth","popupClassName","allowOverlap","dataTestid","ariaLabel","passthroughProps","useMemo","triggerAriaProps","setClassNames","selectRef","triggerRef","searchInputRef","widthStyle","dropdownRef","matchedPopupWidth","setMatchedPopupWidth","isResponsiveMode","isMultipleMode","contentSize","direction","compactSize","compactItemClassnames","contextStatus","mergedStatus","undefined","useImperativeHandle","focus","current","blur","onToggleOpen","close","console","log","isHover","setIsHover","activeOptionKey","setActiveOptionKey","showActiveOption","setShowActiveOption","composingSearchValue","setComposingSearchValue","isComposingSearchRef","isSearchableCollection","ownerAriaProps","innerOpen","setInnerOpen","defaultValue","mergedOpen","shouldMatchPopupWidth","updateMatchedPopupWidth","useCallback","nextWidth","getBoundingClientRect","currentWidth","newOpen","nextOpen","setShowResponsiveSelectedSection","getInitialActiveOptionKey","position","enabledOptions","length","selected","options","find","option","some","useEffect","useLayoutEffect","element","updateMatchedWidth","ResizeObserver","window","addEventListener","removeEventListener","resizeAnimationFrame","scheduleMatchedWidthUpdate","cancelAnimationFrame","requestAnimationFrame","observer","observe","disconnect","showResponsiveSelectedSection","overflowCollapsed","setOverflowCollapsed","onSelectorRemove","newValues","filter","item","mergedClassName","active","borderless","isEmpty","showMenu","keepOpen","onSelectClick","e","handleMouseOver","handleMouseOut","mergedPopupMatchSelectWidth","activeOptionId","moveActiveOption","currentIndex","findIndex","nextIndex","typeaheadRef","timestamp","onCollectionKeyDown","KeyboardEvent","openCollection","preventDefault","activeOption","altKey","ctrlKey","metaKey","now","Date","query","normalizedQuery","toLocaleLowerCase","activeIndex","orderedOptions","slice","match","String","onSearchInputKeyDown","defaultPrevented","onSearchInputChange","ChangeEvent","nextValue","target","searchInputValue","collectionContent","map","listHeight","flexShrink","listboxId","currentTarget"],"sources":["../../src/Select/BaseSelect.tsx"],"sourcesContent":["import './ald-select.css';\nimport * as React from 'react';\nimport useMergedState from 'rc-util/es/hooks/useMergedState';\nimport { cn } from '../lib/utils';\nimport prefixCls from '../_utils/prefixCls';\n\n/** Align config type (locally defined to avoid rc-trigger dependency) */\nexport interface AlignType {\n points?: string[];\n offset?: (number | string)[];\n targetOffset?: (number | string)[];\n overflow?: { adjustX?: boolean; adjustY?: boolean };\n _experimental?: Record<string, any>;\n}\nimport SelectTrigger, { RefTriggerProps } from './SelectTrigger';\nimport Selector from './Selector';\nimport _ from 'lodash';\nimport { useContext, useRef, useState } from 'react';\nimport { FormItemInputContext } from '../Form/FormItemContext';\nimport getWidthStyle from './utils/getWidthStyle';\nimport Suffix from './components/Suffix';\nimport { PlacementType } from '../Dropdown';\nimport {\n BaseSelectRef,\n DisplayValueType,\n ISelectProps,\n LabelInValueType,\n SelectMenuProps,\n} from './interface';\nimport SizeContext from '../ConfigProvider/sizeContext';\nimport { ConfigContext } from '../ConfigProvider';\nimport { useCompactItemContext } from '../Space/CompactContext';\nimport { MenuInfo } from '../Menu';\nimport { toString } from './utils/commonUtil';\nimport OptionCollection, {\n SelectOptionCollection,\n} from './components/OptionCollection';\n\nexport type RenderNode = React.ReactNode | ((props: any) => React.ReactNode);\n\nexport type RenderDOMFunc = (props: any) => HTMLElement;\n\nexport type Mode =\n | 'multiple'\n | {\n type: 'multiple';\n responsive?: boolean;\n maxRows?: number;\n showSelectedSection?: boolean;\n };\n\nexport type RawValueType = string | number;\n\nfunction splitAriaProps(props: Record<string, any>) {\n return Object.keys(props).reduce<{\n ariaProps: Record<string, any>;\n restProps: Record<string, any>;\n }>(\n (result, key) => {\n if (key.startsWith('aria-')) {\n result.ariaProps[key] = props[key];\n } else {\n result.restProps[key] = props[key];\n }\n return result;\n },\n { ariaProps: {}, restProps: {} },\n );\n}\n\nexport type CustomTagProps = {\n label: React.ReactNode;\n value: any;\n disabled: boolean;\n onClose: (event?: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n closable: boolean;\n};\nexport interface BaseSelectPrivateProps {\n // >>> MISC\n omitDomProps?: string[];\n\n // >>> Value\n displayValues: LabelInValueType[];\n onDisplayValuesChange: (\n values: LabelInValueType[],\n info: {\n type: 'add' | 'remove' | 'clear';\n values: LabelInValueType[];\n },\n ) => void;\n\n // >>> Active\n /** Current dropdown list active item string value */\n activeValue?: string;\n /** Link search input with target element */\n activeDescendantId?: string;\n onActiveValueChange?: (value: string | null) => void;\n}\n\nexport type BaseSelectPropsWithoutPrivate = Omit<\n BaseSelectProps,\n keyof BaseSelectPrivateProps\n>;\n\nexport interface BaseSelectProps\n extends BaseSelectPrivateProps,\n ISelectProps,\n React.AriaAttributes {\n className?: string;\n style?: React.CSSProperties;\n notFoundContent?: React.ReactNode;\n onClear?: () => void;\n innerSearchValue?: string;\n setInnerSearchValue?: (value: string) => void;\n displayMenu?: SelectMenuProps;\n optionCollection?: SelectOptionCollection;\n // >>> Open\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n onOptionSelect?: (val: RawValueType) => void;\n onCollectionOptionSelect?: (val: RawValueType) => void;\n\n // >>> Icons\n allowClear?: boolean;\n showArrow?: boolean;\n suffixIcon?: React.ReactNode;\n\n // >>> Dropdown\n dropdownAlign?: AlignType;\n placement?: PlacementType;\n getPopupContainer?: () => HTMLElement;\n\n // >>> Focus\n onBlur?: React.FocusEventHandler<HTMLElement>;\n onFocus?: React.FocusEventHandler<HTMLElement>;\n\n // >>> Rest Events\n onKeyUp?: React.KeyboardEventHandler<HTMLDivElement>;\n onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;\n onMouseDown?: React.MouseEventHandler<HTMLDivElement>;\n onPopupScroll?: React.UIEventHandler<HTMLDivElement>;\n onInputKeyDown?: React.KeyboardEventHandler<\n HTMLInputElement | HTMLTextAreaElement\n >;\n onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;\n onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n}\n\nexport function isMultiple(mode?: Mode) {\n return !!mode;\n}\nexport function isResponsive(mode?: Mode) {\n return mode === 'multiple' || (typeof mode === 'object' && mode?.responsive);\n}\nexport function isShowSelectedSection(mode?: Mode) {\n if (!mode || mode === 'multiple') {\n return false;\n }\n\n return (\n typeof mode === 'object' && mode.showSelectedSection && mode.responsive\n );\n}\nconst BaseSelect = React.forwardRef(\n (props: BaseSelectProps, ref: React.Ref<BaseSelectRef>) => {\n const {\n id,\n className,\n // Value\n displayValues,\n onDisplayValuesChange,\n displayMenu,\n optionCollection,\n notFoundContent,\n onClear,\n width,\n mode,\n status: customStatus,\n onOptionSelect,\n onCollectionOptionSelect,\n onClick,\n size: customSize,\n borderLess = false,\n // Status\n disabled,\n placeholder,\n loading = false,\n\n // Open\n open,\n defaultOpen,\n onOpenChange,\n showSearch,\n innerSearchValue,\n setInnerSearchValue,\n onInputKeyDown,\n // Icons\n allowClear,\n showArrow = true,\n prefix,\n suffixIcon,\n dropdownRender,\n overlayStyle,\n dropdownStyle,\n popupMatchSelectWidth = true,\n placement,\n popupClassName,\n allowOverlap,\n style,\n 'data-testid': dataTestid,\n 'aria-label': ariaLabel,\n ...restProps\n // Rest Props\n } = props;\n const { ariaProps, restProps: passthroughProps } = React.useMemo(\n () => splitAriaProps(restProps),\n [restProps],\n );\n const triggerAriaProps = React.useMemo<React.AriaAttributes>(\n () => ({\n ...ariaProps,\n 'aria-label': ariaLabel,\n }),\n [ariaLabel, ariaProps],\n );\n const setClassNames = prefixCls('select');\n const selectRef = useRef<HTMLDivElement>(null);\n const triggerRef = useRef<HTMLDivElement>(null);\n const searchInputRef = useRef<HTMLInputElement>(null);\n const widthStyle = getWidthStyle(width);\n const dropdownRef = useRef<RefTriggerProps>(null);\n const [matchedPopupWidth, setMatchedPopupWidth] = useState<\n number | undefined\n >();\n const isResponsiveMode = isResponsive(mode);\n const isMultipleMode = isMultiple(mode);\n /** Used for component focused management */\n const contentSize = useContext(SizeContext);\n const { direction } = React.useContext(ConfigContext);\n // ===================== Compact Item =====================\n const { compactSize, compactItemClassnames } = useCompactItemContext(\n 'ald-select',\n direction,\n );\n const size = compactSize || customSize || contentSize || 'middle';\n const {\n status: contextStatus,\n // hasFeedback,\n // isFormItemInput,\n // feedbackIcon,\n } = useContext(FormItemInputContext);\n\n const mergedStatus =\n customStatus === null ? undefined : customStatus || contextStatus;\n\n // =========================== Imperative ===========================\n React.useImperativeHandle(ref, () => ({\n // The trigger is the Select focus owner. Keeping this as a real DOM\n // focus target makes keyboard focus, the Focus State Layer, and the\n // public imperative API describe the same element.\n focus: () => {\n if (showSearch && optionCollection) {\n searchInputRef.current?.focus();\n } else {\n triggerRef.current?.focus();\n }\n },\n blur: () => {\n if (showSearch && optionCollection) {\n searchInputRef.current?.blur();\n } else {\n triggerRef.current?.blur();\n }\n },\n open: () => onToggleOpen(true),\n close: () => {\n console.log('ref close');\n onToggleOpen(false);\n },\n }));\n const [isHover, setIsHover] = useState(false);\n const [activeOptionKey, setActiveOptionKey] = useState<string>();\n const [showActiveOption, setShowActiveOption] = useState(false);\n const [composingSearchValue, setComposingSearchValue] = useState<\n string | undefined\n >();\n const isComposingSearchRef = useRef(false);\n const isSearchableCollection = !!optionCollection && !!showSearch;\n const ownerAriaProps = React.useMemo(\n () => ({\n ...triggerAriaProps,\n 'aria-busy': loading || triggerAriaProps['aria-busy'] || undefined,\n 'aria-invalid':\n triggerAriaProps['aria-invalid'] ??\n (mergedStatus === 'error' ? true : undefined),\n }),\n [loading, mergedStatus, triggerAriaProps],\n );\n // ============================== Open ==============================\n const [innerOpen, setInnerOpen] = useMergedState<boolean>(false, {\n defaultValue: defaultOpen,\n value: open,\n });\n const mergedOpen = innerOpen;\n const shouldMatchPopupWidth =\n !!popupMatchSelectWidth && typeof popupMatchSelectWidth !== 'number';\n const updateMatchedPopupWidth = React.useCallback(() => {\n if (!shouldMatchPopupWidth) {\n return;\n }\n\n const nextWidth = selectRef.current?.getBoundingClientRect().width;\n if (nextWidth !== undefined) {\n setMatchedPopupWidth((currentWidth) =>\n currentWidth === nextWidth ? currentWidth : nextWidth,\n );\n }\n }, [shouldMatchPopupWidth]);\n const onToggleOpen = React.useCallback(\n (newOpen?: boolean) => {\n const nextOpen = newOpen !== undefined ? newOpen : !mergedOpen;\n if (nextOpen) {\n updateMatchedPopupWidth();\n }\n if (!nextOpen) {\n setShowResponsiveSelectedSection(false);\n setShowActiveOption(false);\n }\n if (mergedOpen !== nextOpen && !disabled) {\n setInnerOpen(nextOpen);\n onOpenChange?.(nextOpen);\n }\n },\n [\n mergedOpen,\n disabled,\n setInnerOpen,\n onOpenChange,\n updateMatchedPopupWidth,\n ],\n );\n const getInitialActiveOptionKey = React.useCallback(\n (position: 'first' | 'last') => {\n if (!optionCollection) {\n return undefined;\n }\n\n if (position === 'last') {\n return optionCollection.enabledOptions[\n optionCollection.enabledOptions.length - 1\n ]?.key;\n }\n\n const selected = optionCollection.options.find(\n (option) =>\n !option.disabled &&\n displayValues.some(\n (value) => toString(value.value) === toString(option.value),\n ),\n );\n return selected?.key ?? optionCollection.enabledOptions[0]?.key;\n },\n [displayValues, optionCollection],\n );\n React.useEffect(() => {\n if (!optionCollection || !mergedOpen) {\n setActiveOptionKey(undefined);\n return;\n }\n\n setActiveOptionKey((current) =>\n optionCollection.enabledOptions.some((option) => option.key === current)\n ? current\n : getInitialActiveOptionKey('first'),\n );\n }, [getInitialActiveOptionKey, mergedOpen, optionCollection]);\n React.useLayoutEffect(() => {\n if (!mergedOpen || !shouldMatchPopupWidth) {\n return;\n }\n\n const element = selectRef.current;\n if (!element) {\n return;\n }\n\n const updateMatchedWidth = () => {\n const nextWidth = element.getBoundingClientRect().width;\n setMatchedPopupWidth((currentWidth) =>\n currentWidth === nextWidth ? currentWidth : nextWidth,\n );\n };\n\n updateMatchedWidth();\n\n if (typeof ResizeObserver === 'undefined') {\n window.addEventListener('resize', updateMatchedWidth);\n return () => {\n window.removeEventListener('resize', updateMatchedWidth);\n };\n }\n\n let resizeAnimationFrame: number | undefined;\n const scheduleMatchedWidthUpdate = () => {\n if (resizeAnimationFrame !== undefined) {\n cancelAnimationFrame(resizeAnimationFrame);\n }\n resizeAnimationFrame = requestAnimationFrame(updateMatchedWidth);\n };\n\n const observer = new ResizeObserver(scheduleMatchedWidthUpdate);\n observer.observe(element);\n\n return () => {\n if (resizeAnimationFrame !== undefined) {\n cancelAnimationFrame(resizeAnimationFrame);\n }\n observer.disconnect();\n };\n }, [mergedOpen, shouldMatchPopupWidth]);\n const [showResponsiveSelectedSection, setShowResponsiveSelectedSection] =\n useState(false);\n // 多选 responsive 进入 -1 收纳态(仅\"首 tag + +N\")时为 true,\n // width:auto 下据此给根节点加 overflow-collapsed 钳住 min-width 链,\n // 抵抗父 flex 行因 intrinsic 低估造成的假压缩(详见 ald-select.css 对应段)\n const [overflowCollapsed, setOverflowCollapsed] = useState(false);\n\n // ============================ Selector ============================\n const onSelectorRemove = (val: DisplayValueType) => {\n const newValues = displayValues.filter(\n (item) => toString(item.value) !== toString(val.value),\n );\n\n onDisplayValuesChange(newValues, {\n type: 'remove',\n values: [\n {\n label: val.label,\n value: val.value as RawValueType,\n },\n ],\n });\n };\n\n const mergedClassName = cn(\n setClassNames('beta-ald-select', size, {\n // Popup visibility is not focus. The trigger's :focus-visible state\n // owns the Focus State Layer in ald-select.css.\n open: mergedOpen,\n // Retain the legacy hook for consumers that style the open state.\n // It no longer represents trigger focus.\n active: mergedOpen,\n borderless: borderLess,\n disabled: disabled,\n loading: loading,\n [`${mergedStatus}`]: !!mergedStatus,\n 'multiple-responsive': isResponsiveMode,\n 'multiple-default': isMultipleMode && !isResponsiveMode,\n // 仅 width:auto 生效:固定宽度下 -1 收纳态的收缩省略是预期行为,\n // 钳 min-width 反而会把固定宽撑破\n 'overflow-collapsed':\n overflowCollapsed && width === 'auto' && !_.isEmpty(displayValues),\n }),\n 'tw-text-typography-body-dense',\n className,\n compactItemClassnames,\n );\n const showMenu = React.useMemo(() => {\n if (!displayMenu) {\n return undefined;\n }\n\n return {\n ...displayMenu,\n onClick: (info: MenuInfo) => {\n displayMenu?.onClick?.(info);\n if (isMultipleMode) {\n // 多选默认选中后不收起下拉:Dropdown 在 menu.onClick 之后读\n // info.keepOpen 决定是否 onChangeOpen(false),不设则每次点击都被\n // 当成关闭信号。用 ?? 保留用户在自己的 onClick 里显式设 false 的能力\n info.keepOpen = info.keepOpen ?? true;\n } else if (displayMenu) {\n onToggleOpen(false);\n }\n setIsHover(false);\n onOptionSelect?.(info.key);\n },\n };\n }, [displayMenu, isMultipleMode, onToggleOpen, onOptionSelect]);\n const onSelectClick = React.useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n onClick?.(e);\n },\n [disabled, onClick],\n );\n React.useEffect(() => {\n const element = selectRef.current;\n if (element) {\n const handleMouseOver = () => setIsHover(true);\n const handleMouseOut = () => setIsHover(false);\n\n element.addEventListener('mouseover', handleMouseOver);\n element.addEventListener('mouseout', handleMouseOut);\n\n return () => {\n element.removeEventListener('mouseover', handleMouseOver);\n element.removeEventListener('mouseout', handleMouseOut);\n };\n }\n }, []);\n const mergedPopupMatchSelectWidth =\n shouldMatchPopupWidth && matchedPopupWidth !== undefined\n ? matchedPopupWidth\n : popupMatchSelectWidth;\n const activeOptionId = optionCollection?.options.find(\n (option) => option.key === activeOptionKey,\n )?.id;\n const moveActiveOption = React.useCallback(\n (direction: 1 | -1) => {\n if (!optionCollection || optionCollection.enabledOptions.length === 0) {\n return;\n }\n\n const currentIndex = optionCollection.enabledOptions.findIndex(\n (option) => option.key === activeOptionKey,\n );\n const nextIndex =\n currentIndex === -1\n ? direction === 1\n ? 0\n : optionCollection.enabledOptions.length - 1\n : (currentIndex +\n direction +\n optionCollection.enabledOptions.length) %\n optionCollection.enabledOptions.length;\n setActiveOptionKey(optionCollection.enabledOptions[nextIndex].key);\n },\n [activeOptionKey, optionCollection],\n );\n const typeaheadRef = useRef({ value: '', timestamp: 0 });\n const onCollectionKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLElement>) => {\n if (!optionCollection || disabled) {\n return;\n }\n\n const openCollection = (position: 'first' | 'last') => {\n event.preventDefault();\n setActiveOptionKey(getInitialActiveOptionKey(position));\n setShowActiveOption(true);\n onToggleOpen(true);\n };\n\n if (!mergedOpen) {\n if (event.key === 'ArrowDown') {\n openCollection('first');\n } else if (event.key === 'ArrowUp') {\n openCollection('last');\n } else if (event.key === 'Enter' || event.key === ' ') {\n openCollection('first');\n }\n return;\n }\n\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n setShowActiveOption(true);\n moveActiveOption(1);\n return;\n }\n if (event.key === 'ArrowUp') {\n event.preventDefault();\n setShowActiveOption(true);\n moveActiveOption(-1);\n return;\n }\n if (event.key === 'Home') {\n event.preventDefault();\n setShowActiveOption(true);\n setActiveOptionKey(optionCollection.enabledOptions[0]?.key);\n return;\n }\n if (event.key === 'End') {\n event.preventDefault();\n setShowActiveOption(true);\n setActiveOptionKey(\n optionCollection.enabledOptions[\n optionCollection.enabledOptions.length - 1\n ]?.key,\n );\n return;\n }\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n const activeOption = optionCollection.options.find(\n (option) => option.key === activeOptionKey,\n );\n if (activeOption && !activeOption.disabled) {\n if (!isMultipleMode) {\n onToggleOpen(false);\n }\n onCollectionOptionSelect?.(activeOption.value);\n }\n return;\n }\n if (event.key === 'Escape') {\n event.preventDefault();\n onToggleOpen(false);\n if (isSearchableCollection) {\n searchInputRef.current?.focus();\n } else {\n triggerRef.current?.focus();\n }\n return;\n }\n if (event.key === 'Tab') {\n onToggleOpen(false);\n return;\n }\n if (\n event.key.length === 1 &&\n !event.altKey &&\n !event.ctrlKey &&\n !event.metaKey\n ) {\n const now = Date.now();\n const query =\n now - typeaheadRef.current.timestamp > 500\n ? event.key\n : `${typeaheadRef.current.value}${event.key}`;\n typeaheadRef.current = { value: query, timestamp: now };\n const normalizedQuery = query.toLocaleLowerCase();\n const activeIndex = optionCollection.enabledOptions.findIndex(\n (option) => option.key === activeOptionKey,\n );\n const orderedOptions = [\n ...optionCollection.enabledOptions.slice(activeIndex + 1),\n ...optionCollection.enabledOptions.slice(0, activeIndex + 1),\n ];\n const match = orderedOptions.find((option) =>\n String(option.label ?? option.value)\n .toLocaleLowerCase()\n .startsWith(normalizedQuery),\n );\n if (match) {\n event.preventDefault();\n setShowActiveOption(true);\n setActiveOptionKey(match.key);\n }\n }\n },\n [\n activeOptionKey,\n disabled,\n getInitialActiveOptionKey,\n mergedOpen,\n moveActiveOption,\n onCollectionOptionSelect,\n onToggleOpen,\n optionCollection,\n isSearchableCollection,\n ],\n );\n const onSearchInputKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n onInputKeyDown?.(event);\n if (event.defaultPrevented) {\n return;\n }\n\n if (\n event.key === ' ' ||\n (event.key.length === 1 &&\n !event.altKey &&\n !event.ctrlKey &&\n !event.metaKey)\n ) {\n return;\n }\n\n onCollectionKeyDown(event);\n },\n [onCollectionKeyDown, onInputKeyDown],\n );\n const onSearchInputChange = React.useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n const nextValue = event.target.value;\n if (isComposingSearchRef.current) {\n setComposingSearchValue(nextValue);\n return;\n }\n setInnerSearchValue?.(nextValue);\n },\n [setInnerSearchValue],\n );\n const searchInputValue = composingSearchValue ?? innerSearchValue ?? '';\n const collectionContent = optionCollection ? (\n <OptionCollection\n collection={optionCollection}\n selectedValues={displayValues.map((item) => item.value as RawValueType)}\n activeOptionKey={showActiveOption ? activeOptionKey : undefined}\n multiple={isMultipleMode}\n loading={loading}\n listHeight={props.listHeight ?? 256}\n notFoundContent={notFoundContent}\n onSelect={(value) => {\n if (!isMultipleMode) {\n onToggleOpen(false);\n }\n onCollectionOptionSelect?.(value);\n }}\n onPointerMove={() => setShowActiveOption(false)}\n />\n ) : undefined;\n return (\n <div\n className={mergedClassName}\n style={{\n ...widthStyle,\n // width:auto 且无选中值时锁 shrink:Chromium 对该子树给父 flex 行的\n // intrinsic 宽度贡献恒少约 14px,父行按低估值布局后回头压缩根节点,\n // placeholder 右侧会被裁;有选中值时必须保持可压缩,rc-overflow\n // 才能在父行变窄时把放不下的 tag 收纳成 \"+N\"\n ...(width === 'auto' && _.isEmpty(displayValues)\n ? { flexShrink: 0 }\n : {}),\n ...style,\n }}\n ref={selectRef}\n id={id}\n onClick={onSelectClick}\n data-testid={dataTestid}\n aria-label={ariaLabel}\n >\n <SelectTrigger\n {...passthroughProps}\n open={!!mergedOpen}\n notFoundContent={notFoundContent}\n menu={showMenu}\n collection={collectionContent}\n ref={dropdownRef}\n showSearch={showSearch}\n searchValue={innerSearchValue}\n setInnerSearchValue={setInnerSearchValue}\n popupMatchSelectWidth={mergedPopupMatchSelectWidth}\n overlayClassName={popupClassName}\n // @ts-ignore\n dropdownRender={dropdownRender}\n overlayStyle={overlayStyle || dropdownStyle}\n placement={placement}\n allowOverlap={allowOverlap}\n onOpenChange={(open) => {\n setShowActiveOption(false);\n if (isResponsiveMode) {\n if (\n !mergedOpen &&\n !showResponsiveSelectedSection &&\n displayValues.length > 0 &&\n isShowSelectedSection(mode)\n ) {\n setShowResponsiveSelectedSection(true);\n } else {\n onToggleOpen(open);\n }\n } else {\n onToggleOpen(open);\n }\n }}\n >\n {/* antd 兼容:保留 ant-* class,消费方 CSS 可能依赖该选择器 */}\n <div\n {...(!isSearchableCollection ? ownerAriaProps : {})}\n ref={triggerRef}\n tabIndex={isSearchableCollection || disabled ? undefined : 0}\n role={isSearchableCollection ? undefined : 'combobox'}\n aria-disabled={\n isSearchableCollection ? undefined : disabled || undefined\n }\n aria-expanded={isSearchableCollection ? undefined : mergedOpen}\n aria-haspopup={\n isSearchableCollection\n ? undefined\n : optionCollection\n ? 'listbox'\n : undefined\n }\n aria-controls={\n isSearchableCollection\n ? undefined\n : mergedOpen && optionCollection\n ? optionCollection.listboxId\n : undefined\n }\n aria-activedescendant={\n isSearchableCollection\n ? undefined\n : mergedOpen && optionCollection\n ? activeOptionId\n : undefined\n }\n onKeyDown={\n isSearchableCollection\n ? undefined\n : optionCollection\n ? onCollectionKeyDown\n : undefined\n }\n className={cn(setClassNames('trigger'), 'ant-select-selector')}\n >\n {prefix && <div className={setClassNames('prefix')}>{prefix}</div>}\n {isSearchableCollection ? (\n <input\n {...ownerAriaProps}\n ref={searchInputRef}\n type=\"text\"\n role=\"combobox\"\n className={setClassNames('search-input')}\n value={searchInputValue}\n disabled={disabled}\n placeholder={\n typeof placeholder === 'string' ? placeholder : undefined\n }\n aria-disabled={disabled || undefined}\n aria-expanded={mergedOpen}\n aria-haspopup=\"listbox\"\n aria-controls={\n mergedOpen ? optionCollection?.listboxId : undefined\n }\n aria-activedescendant={mergedOpen ? activeOptionId : undefined}\n onFocus={() => onToggleOpen(true)}\n onChange={onSearchInputChange}\n onCompositionStart={() => {\n isComposingSearchRef.current = true;\n }}\n onCompositionEnd={(event) => {\n isComposingSearchRef.current = false;\n setComposingSearchValue(undefined);\n setInnerSearchValue?.(event.currentTarget.value);\n }}\n onKeyDown={onSearchInputKeyDown}\n />\n ) : (\n <>\n {_.isEmpty(displayValues) && (\n <div\n className={cn(\n setClassNames('placeholder'),\n 'ant-select-selection-placeholder',\n )}\n >\n {placeholder}\n </div>\n )}\n {!_.isEmpty(displayValues) && (\n <Selector\n {...passthroughProps}\n suffixIcon={suffixIcon}\n size={size}\n disabled={disabled}\n mode={mode}\n dropdownRef={dropdownRef}\n displayValues={displayValues}\n onToggleOpen={onToggleOpen}\n onRemove={onSelectorRemove}\n showResponsiveSelectedSection={\n showResponsiveSelectedSection\n }\n onOverflowCollapsedChange={setOverflowCollapsed}\n ></Selector>\n )}\n </>\n )}\n </div>\n </SelectTrigger>\n <Suffix\n showArrow={showArrow}\n allowClear={allowClear}\n disabled={disabled}\n loading={loading}\n isHover={isHover}\n onClear={() => {\n onToggleOpen(false);\n\n onDisplayValuesChange([], {\n type: 'clear',\n values: displayValues,\n });\n onClear?.();\n }}\n isActive={innerOpen}\n icon={suffixIcon}\n displayValues={displayValues}\n ></Suffix>\n </div>\n );\n },\n);\n\nexport default BaseSelect;\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import { ScrollTo } from 'rc-virtual-list/es/List';
|
|
3
|
-
import { IDropdownProps } from '../Dropdown';
|
|
2
|
+
import { ScrollTo } from 'rc-virtual-list/es/List.js';
|
|
3
|
+
import { IDropdownProps } from '../Dropdown.js';
|
|
4
4
|
import { DefaultOptionType as SelectOptionType } from './interface.js';
|
|
5
5
|
export interface RefTriggerProps {
|
|
6
6
|
getPopupElement: () => HTMLDivElement | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectTrigger.js","names":[],"sources":["../../src/Select/SelectTrigger.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport type { ScrollTo } from 'rc-virtual-list/es/List';\nimport Dropdown from '../Dropdown';\nimport { cn } from '../lib/utils';\nimport { IDropdownProps } from '../Dropdown';\nimport { DefaultOptionType as SelectOptionType } from './interface';\nimport SearchBox from './components/SearchBox';\nimport PopupContent from './components/PopupContent';\nimport Empty from '../Empty';\n\nexport interface RefTriggerProps {\n getPopupElement: () => HTMLDivElement | null;\n}\nexport interface RefSelectorProps {\n focus: (options?: FocusOptions) => void;\n blur: () => void;\n scrollTo?: ScrollTo;\n}\nexport interface SelectTriggerProps extends IDropdownProps {\n open: boolean;\n notFoundContent?: React.ReactNode;\n popupMatchSelectWidth?: boolean | number;\n showSearch?: boolean;\n searchValue?: string;\n setInnerSearchValue?: (value: string) => void;\n filterOption?: (inputValue: string, option: SelectOptionType) => boolean;\n /** Private Select-owned popup collection for the flat standard path. */\n collection?: React.ReactNode;\n}\n\nconst RefSelectTrigger = React.forwardRef<RefTriggerProps, SelectTriggerProps>(\n (props, ref) => {\n const {\n // prefixCls,\n overlayStyle,\n disabled,\n open,\n children,\n dropdownRender,\n getPopupContainer,\n onOpenChange,\n showSearch,\n searchValue,\n setInnerSearchValue,\n menu: menuProps,\n collection,\n overlayClassName,\n placement = 'bottom-start',\n popupMatchSelectWidth,\n notFoundContent = <Empty size=\"small\" />,\n ...restProps\n } = props;\n\n // ======================= Ref =======================\n const popupRef = React.useRef<HTMLDivElement>(null);\n React.useImperativeHandle(ref, () => ({\n getPopupElement: () => popupRef.current,\n }));\n\n const customDropdownRender = useCallback(\n (menu: React.ReactNode) => {\n return (\n <div className=\"beta-ald-select-popup\" ref={popupRef}>\n {!collection && (\n <SearchBox\n showSearch={showSearch}\n value={searchValue}\n onChange={(value) => {\n setInnerSearchValue?.(value);\n }}\n />\n )}\n {collection || (\n <PopupContent\n content={menu}\n notFoundContent={notFoundContent}\n dropdownRender={dropdownRender}\n menuProps={menuProps}\n />\n )}\n </div>\n );\n },\n [\n dropdownRender,\n collection,\n menuProps,\n notFoundContent,\n searchValue,\n setInnerSearchValue,\n showSearch,\n ],\n );\n\n return (\n <Dropdown\n {...restProps}\n disabled={disabled}\n open={open}\n // Dropdown still receives the existing menu input to preserve its\n // trigger lifecycle. For the private collection path, its rendered\n // Menu node is ignored by customDropdownRender above.\n menu={collection ? undefined : menuProps}\n placement={placement}\n popupMatchTriggerWidth={popupMatchSelectWidth}\n overlayStyle={overlayStyle}\n overlayClassName={cn(\n 'beta-ald-select-popup-container',\n overlayClassName,\n )}\n autoUpdatePos\n dropdownRender={customDropdownRender}\n getPopupContainer={getPopupContainer}\n onOpenChange={(o) => {\n onOpenChange?.(o);\n }}\n >\n {collection ? (\n <span style={{ display: 'flex', flex: '1 1 auto', minWidth: 0 }}>\n {children}\n </span>\n ) : (\n children\n )}\n </Dropdown>\n );\n },\n);\n\nRefSelectTrigger.displayName = 'SelectTrigger';\n\nexport default RefSelectTrigger;\n"],"mappings":";;;;;;;;AA8BA,
|
|
1
|
+
{"version":3,"file":"SelectTrigger.js","names":["React","useCallback","ScrollTo","Dropdown","cn","IDropdownProps","DefaultOptionType","SelectOptionType","SearchBox","PopupContent","Empty","RefTriggerProps","getPopupElement","HTMLDivElement","RefSelectorProps","focus","options","FocusOptions","blur","scrollTo","SelectTriggerProps","open","notFoundContent","ReactNode","popupMatchSelectWidth","showSearch","searchValue","setInnerSearchValue","value","filterOption","inputValue","option","collection","RefSelectTrigger","forwardRef","props","ref","overlayStyle","disabled","children","dropdownRender","getPopupContainer","onOpenChange","menu","menuProps","overlayClassName","placement","restProps","popupRef","useRef","useImperativeHandle","current","customDropdownRender","undefined","o","display","flex","minWidth","displayName"],"sources":["../../src/Select/SelectTrigger.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport type { ScrollTo } from 'rc-virtual-list/es/List';\nimport Dropdown from '../Dropdown';\nimport { cn } from '../lib/utils';\nimport { IDropdownProps } from '../Dropdown';\nimport { DefaultOptionType as SelectOptionType } from './interface';\nimport SearchBox from './components/SearchBox';\nimport PopupContent from './components/PopupContent';\nimport Empty from '../Empty';\n\nexport interface RefTriggerProps {\n getPopupElement: () => HTMLDivElement | null;\n}\nexport interface RefSelectorProps {\n focus: (options?: FocusOptions) => void;\n blur: () => void;\n scrollTo?: ScrollTo;\n}\nexport interface SelectTriggerProps extends IDropdownProps {\n open: boolean;\n notFoundContent?: React.ReactNode;\n popupMatchSelectWidth?: boolean | number;\n showSearch?: boolean;\n searchValue?: string;\n setInnerSearchValue?: (value: string) => void;\n filterOption?: (inputValue: string, option: SelectOptionType) => boolean;\n /** Private Select-owned popup collection for the flat standard path. */\n collection?: React.ReactNode;\n}\n\nconst RefSelectTrigger = React.forwardRef<RefTriggerProps, SelectTriggerProps>(\n (props, ref) => {\n const {\n // prefixCls,\n overlayStyle,\n disabled,\n open,\n children,\n dropdownRender,\n getPopupContainer,\n onOpenChange,\n showSearch,\n searchValue,\n setInnerSearchValue,\n menu: menuProps,\n collection,\n overlayClassName,\n placement = 'bottom-start',\n popupMatchSelectWidth,\n notFoundContent = <Empty size=\"small\" />,\n ...restProps\n } = props;\n\n // ======================= Ref =======================\n const popupRef = React.useRef<HTMLDivElement>(null);\n React.useImperativeHandle(ref, () => ({\n getPopupElement: () => popupRef.current,\n }));\n\n const customDropdownRender = useCallback(\n (menu: React.ReactNode) => {\n return (\n <div className=\"beta-ald-select-popup\" ref={popupRef}>\n {!collection && (\n <SearchBox\n showSearch={showSearch}\n value={searchValue}\n onChange={(value) => {\n setInnerSearchValue?.(value);\n }}\n />\n )}\n {collection || (\n <PopupContent\n content={menu}\n notFoundContent={notFoundContent}\n dropdownRender={dropdownRender}\n menuProps={menuProps}\n />\n )}\n </div>\n );\n },\n [\n dropdownRender,\n collection,\n menuProps,\n notFoundContent,\n searchValue,\n setInnerSearchValue,\n showSearch,\n ],\n );\n\n return (\n <Dropdown\n {...restProps}\n disabled={disabled}\n open={open}\n // Dropdown still receives the existing menu input to preserve its\n // trigger lifecycle. For the private collection path, its rendered\n // Menu node is ignored by customDropdownRender above.\n menu={collection ? undefined : menuProps}\n placement={placement}\n popupMatchTriggerWidth={popupMatchSelectWidth}\n overlayStyle={overlayStyle}\n overlayClassName={cn(\n 'beta-ald-select-popup-container',\n overlayClassName,\n )}\n autoUpdatePos\n dropdownRender={customDropdownRender}\n getPopupContainer={getPopupContainer}\n onOpenChange={(o) => {\n onOpenChange?.(o);\n }}\n >\n {collection ? (\n <span style={{ display: 'flex', flex: '1 1 auto', minWidth: 0 }}>\n {children}\n </span>\n ) : (\n children\n )}\n </Dropdown>\n );\n },\n);\n\nRefSelectTrigger.displayName = 'SelectTrigger';\n\nexport default RefSelectTrigger;\n"],"mappings":";;;;;;;;AA8BA,IAAMiC,mBAAmBjC,MAAMkC,YAC5BC,OAAOC,QAAQ;CACd,MAAM,EAEJC,cACAC,UACAjB,MACAkB,UACAC,gBACAC,mBACAC,cACAjB,YACAC,aACAC,qBACAgB,MAAMC,WACNZ,YACAa,kBACAC,YAAY,gBACZtB,uBACAF,kBAAkB,oBAAC,OAAD,EAAO,MAAK,SAAU,CAAA,EACxC,GAAGyB,cACDZ;CAGJ,MAAMa,WAAWhD,MAAMiD,OAAuB,KAAK;AACnDjD,OAAMkD,oBAAoBd,YAAY,EACpCxB,uBAAuBoC,SAASG,SACjC,EAAE;CAEH,MAAMC,uBAAuBnD,aAC1B0C,SAA0B;AACzB,SACE,qBAAC,OAAD;GAAK,WAAU;GAAwB,KAAKK;aAA5C,CACG,CAAChB,cACA,oBAAC,mBAAD;IACcP;IACZ,OAAOC;IACP,WAAWE,UAAU;AACnBD,2BAAsBC,MAAM;;IAGjC,CAAA,EACAI,cACC,oBAAC,cAAD;IACE,SAASW;IACQrB;IACDkB;IACLI;IAEd,CAAA,CACG;;IAGV;EACEJ;EACAR;EACAY;EACAtB;EACAI;EACAC;EACAF;EAEJ,CAAC;AAED,QACE,oBAAC,UAAD;EACE,GAAIsB;EACMT;EACJjB;EAIN,MAAMW,aAAaqB,SAAYT;EACpBE;EACX,wBAAwBtB;EACVa;EACd,kBAAkBjC,GAChB,mCACAyC,iBACD;EACD,eAAA;EACA,gBAAgBO;EACGX;EACnB,eAAea,MAAM;AACnBZ,kBAAeY,EAAE;;YAGlBtB,aACC,oBAAC,QAAD;GAAM,OAAO;IAAEuB,SAAS;IAAQC,MAAM;IAAYC,UAAU;IAAG;GAC5DlB;GACI,CAAA,GAEPA;EAEO,CAAA;EAGhB;AAEDN,iBAAiByB,cAAc"}
|
|
@@ -12,6 +12,6 @@ export interface FixedOverflowProps<T> {
|
|
|
12
12
|
onVisibleChange?: (count: number) => void;
|
|
13
13
|
}
|
|
14
14
|
declare const FixedOverflow: <T>(props: FixedOverflowProps<T> & {
|
|
15
|
-
ref?: React.Ref<HTMLDivElement
|
|
15
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
16
16
|
}) => React.ReactElement;
|
|
17
17
|
export default FixedOverflow;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { c } from "react-compiler-runtime";
|
|
2
|
+
import { forwardRef, useEffect, useRef, useState } from "react";
|
|
2
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
4
|
import ResizeObserver from "rc-resize-observer";
|
|
4
|
-
import useLayoutEffect$1 from "rc-util/es/hooks/useLayoutEffect";
|
|
5
|
+
import useLayoutEffect$1 from "rc-util/es/hooks/useLayoutEffect.js";
|
|
5
6
|
import cn from "classnames";
|
|
6
7
|
//#region src/Select/Selector/FixedOverflow.tsx
|
|
7
8
|
function InternalItem(props) {
|
|
@@ -35,10 +36,13 @@ function InternalItem(props) {
|
|
|
35
36
|
var ITEM_WIDTH = 10;
|
|
36
37
|
var REST_KEY = "__OVERFLOW_REST__";
|
|
37
38
|
function OverflowInner(props, ref) {
|
|
38
|
-
const
|
|
39
|
+
const $ = c(54);
|
|
40
|
+
const { prefixCls: t0, data, renderItem, itemKey, renderRest, gap: t1, className, onVisibleChange } = props;
|
|
41
|
+
const prefixCls = t0 === void 0 ? "rc-overflow" : t0;
|
|
42
|
+
const gap = t1 === void 0 ? 0 : t1;
|
|
39
43
|
const [containerWidth, setContainerWidth] = useState(null);
|
|
40
44
|
const mergedContainerWidth = containerWidth || 0;
|
|
41
|
-
const [itemWidths, setItemWidths] = useState(
|
|
45
|
+
const [itemWidths, setItemWidths] = useState(_temp);
|
|
42
46
|
const [prevRestWidth, setPrevRestWidth] = useState(0);
|
|
43
47
|
const [restWidth, setRestWidth] = useState(0);
|
|
44
48
|
const [displayCount, setDisplayCount] = useState(null);
|
|
@@ -46,95 +50,220 @@ function OverflowInner(props, ref) {
|
|
|
46
50
|
const mergedDisplayCount = displayCount || 0;
|
|
47
51
|
const itemPrefixCls = `${prefixCls}-item`;
|
|
48
52
|
const mergedRestWidth = Math.max(prevRestWidth, restWidth);
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
53
|
+
let t2;
|
|
54
|
+
if ($[0] !== itemKey) {
|
|
55
|
+
t2 = (item, index) => {
|
|
56
|
+
if (item == null) return index;
|
|
57
|
+
return itemKey(item) ?? index;
|
|
58
|
+
};
|
|
59
|
+
$[0] = itemKey;
|
|
60
|
+
$[1] = t2;
|
|
61
|
+
} else t2 = $[1];
|
|
62
|
+
const getKey = t2;
|
|
63
|
+
let t3;
|
|
64
|
+
bb0: {
|
|
65
|
+
if (!data.length) {
|
|
66
|
+
t3 = data;
|
|
67
|
+
break bb0;
|
|
62
68
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
80
|
-
const
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
if (!len) {
|
|
88
|
-
updateDisplayCount(0);
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
let totalWidth = 0;
|
|
92
|
-
const getItemWidth = (index) => itemWidths.get(getKey(mergedData[index], index));
|
|
93
|
-
for (let i = 0; i < len; i += 1) {
|
|
94
|
-
const currentItemWidth = getItemWidth(i);
|
|
95
|
-
if (currentItemWidth === void 0) {
|
|
96
|
-
updateDisplayCount(i - 1, true);
|
|
97
|
-
return;
|
|
69
|
+
let t4;
|
|
70
|
+
if ($[2] !== data || $[3] !== mergedContainerWidth) {
|
|
71
|
+
t4 = data.slice(0, Math.min(data.length, mergedContainerWidth / ITEM_WIDTH));
|
|
72
|
+
$[2] = data;
|
|
73
|
+
$[3] = mergedContainerWidth;
|
|
74
|
+
$[4] = t4;
|
|
75
|
+
} else t4 = $[4];
|
|
76
|
+
t3 = t4;
|
|
77
|
+
}
|
|
78
|
+
const mergedData = t3;
|
|
79
|
+
let t4;
|
|
80
|
+
if ($[5] !== data || $[6] !== mergedDisplayCount) {
|
|
81
|
+
t4 = data.slice(mergedDisplayCount + 1);
|
|
82
|
+
$[5] = data;
|
|
83
|
+
$[6] = mergedDisplayCount;
|
|
84
|
+
$[7] = t4;
|
|
85
|
+
} else t4 = $[7];
|
|
86
|
+
const omittedItems = t4;
|
|
87
|
+
let t5;
|
|
88
|
+
if ($[8] !== data.length || $[9] !== displayCount || $[10] !== onVisibleChange) {
|
|
89
|
+
t5 = (count, notReady) => {
|
|
90
|
+
if (!notReady) {
|
|
91
|
+
setRestReady(count < data.length - 1);
|
|
92
|
+
onVisibleChange?.(count);
|
|
98
93
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
94
|
+
if (displayCount !== count) setDisplayCount(count);
|
|
95
|
+
};
|
|
96
|
+
$[8] = data.length;
|
|
97
|
+
$[9] = displayCount;
|
|
98
|
+
$[10] = onVisibleChange;
|
|
99
|
+
$[11] = t5;
|
|
100
|
+
} else t5 = $[11];
|
|
101
|
+
const updateDisplayCount = t5;
|
|
102
|
+
let t6;
|
|
103
|
+
if ($[12] === Symbol.for("react.memo_cache_sentinel")) {
|
|
104
|
+
t6 = (key, width) => {
|
|
105
|
+
setItemWidths((origin) => {
|
|
106
|
+
const clone = new Map(origin);
|
|
107
|
+
if (width === null) clone.delete(key);
|
|
108
|
+
else clone.set(key, width);
|
|
109
|
+
return clone;
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
$[12] = t6;
|
|
113
|
+
} else t6 = $[12];
|
|
114
|
+
const registerSize = t6;
|
|
115
|
+
let t7;
|
|
116
|
+
if ($[13] === Symbol.for("react.memo_cache_sentinel")) {
|
|
117
|
+
t7 = (_key, width_0) => {
|
|
118
|
+
if (width_0 === null) return;
|
|
119
|
+
setRestWidth((prev) => {
|
|
120
|
+
setPrevRestWidth(prev);
|
|
121
|
+
return width_0;
|
|
122
|
+
});
|
|
123
|
+
};
|
|
124
|
+
$[13] = t7;
|
|
125
|
+
} else t7 = $[13];
|
|
126
|
+
const registerRestSize = t7;
|
|
127
|
+
let t8;
|
|
128
|
+
if ($[14] === Symbol.for("react.memo_cache_sentinel")) {
|
|
129
|
+
t8 = (_, element) => {
|
|
130
|
+
setContainerWidth(element.clientWidth);
|
|
131
|
+
};
|
|
132
|
+
$[14] = t8;
|
|
133
|
+
} else t8 = $[14];
|
|
134
|
+
const onOverflowResize = t8;
|
|
135
|
+
let t9;
|
|
136
|
+
if ($[15] !== gap || $[16] !== getKey || $[17] !== itemWidths || $[18] !== mergedContainerWidth || $[19] !== mergedData || $[20] !== mergedRestWidth || $[21] !== updateDisplayCount) {
|
|
137
|
+
t9 = () => {
|
|
138
|
+
if (!mergedContainerWidth || !mergedData) return;
|
|
139
|
+
const len = mergedData.length;
|
|
140
|
+
const lastIndex = len - 1;
|
|
141
|
+
if (!len) {
|
|
142
|
+
updateDisplayCount(0);
|
|
102
143
|
return;
|
|
103
144
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
145
|
+
let totalWidth = 0;
|
|
146
|
+
const getItemWidth = (index_0) => itemWidths.get(getKey(mergedData[index_0], index_0));
|
|
147
|
+
for (let i = 0; i < len; i = i + 1) {
|
|
148
|
+
const currentItemWidth = getItemWidth(i);
|
|
149
|
+
if (currentItemWidth === void 0) {
|
|
150
|
+
updateDisplayCount(i - 1, true);
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
totalWidth = totalWidth + currentItemWidth;
|
|
154
|
+
if (lastIndex === 0 && totalWidth <= mergedContainerWidth || i === lastIndex - 1 && totalWidth + (getItemWidth(lastIndex) ?? 0) + lastIndex * gap <= mergedContainerWidth) {
|
|
155
|
+
updateDisplayCount(lastIndex);
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
if (totalWidth + mergedRestWidth + (i + 1) * gap > mergedContainerWidth) {
|
|
159
|
+
updateDisplayCount(i - 1);
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
107
162
|
}
|
|
108
|
-
}
|
|
109
|
-
|
|
163
|
+
};
|
|
164
|
+
$[15] = gap;
|
|
165
|
+
$[16] = getKey;
|
|
166
|
+
$[17] = itemWidths;
|
|
167
|
+
$[18] = mergedContainerWidth;
|
|
168
|
+
$[19] = mergedData;
|
|
169
|
+
$[20] = mergedRestWidth;
|
|
170
|
+
$[21] = updateDisplayCount;
|
|
171
|
+
$[22] = t9;
|
|
172
|
+
} else t9 = $[22];
|
|
173
|
+
useLayoutEffect$1(t9);
|
|
110
174
|
const displayRest = restReady && !!omittedItems.length;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
175
|
+
const t10 = !data.length;
|
|
176
|
+
let t11;
|
|
177
|
+
if ($[23] !== className || $[24] !== prefixCls) {
|
|
178
|
+
t11 = cn(prefixCls, className);
|
|
179
|
+
$[23] = className;
|
|
180
|
+
$[24] = prefixCls;
|
|
181
|
+
$[25] = t11;
|
|
182
|
+
} else t11 = $[25];
|
|
183
|
+
let t12;
|
|
184
|
+
if ($[26] !== getKey || $[27] !== itemPrefixCls || $[28] !== mergedData || $[29] !== mergedDisplayCount || $[30] !== renderItem) {
|
|
185
|
+
let t13;
|
|
186
|
+
if ($[32] !== getKey || $[33] !== itemPrefixCls || $[34] !== mergedDisplayCount || $[35] !== renderItem) {
|
|
187
|
+
t13 = (item_0, index_1) => {
|
|
188
|
+
const key_0 = getKey(item_0, index_1);
|
|
119
189
|
return /* @__PURE__ */ jsx(InternalItem, {
|
|
120
190
|
prefixCls: itemPrefixCls,
|
|
121
|
-
display:
|
|
122
|
-
order:
|
|
123
|
-
itemKey:
|
|
191
|
+
display: index_1 <= mergedDisplayCount,
|
|
192
|
+
order: index_1,
|
|
193
|
+
itemKey: key_0,
|
|
124
194
|
registerSize,
|
|
125
|
-
children: renderItem(
|
|
126
|
-
},
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
195
|
+
children: renderItem(item_0, { index: index_1 })
|
|
196
|
+
}, key_0);
|
|
197
|
+
};
|
|
198
|
+
$[32] = getKey;
|
|
199
|
+
$[33] = itemPrefixCls;
|
|
200
|
+
$[34] = mergedDisplayCount;
|
|
201
|
+
$[35] = renderItem;
|
|
202
|
+
$[36] = t13;
|
|
203
|
+
} else t13 = $[36];
|
|
204
|
+
t12 = mergedData.map(t13);
|
|
205
|
+
$[26] = getKey;
|
|
206
|
+
$[27] = itemPrefixCls;
|
|
207
|
+
$[28] = mergedData;
|
|
208
|
+
$[29] = mergedDisplayCount;
|
|
209
|
+
$[30] = renderItem;
|
|
210
|
+
$[31] = t12;
|
|
211
|
+
} else t12 = $[31];
|
|
212
|
+
const t13 = displayRest ? mergedDisplayCount : Number.MAX_SAFE_INTEGER;
|
|
213
|
+
const t14 = `${itemPrefixCls}-rest`;
|
|
214
|
+
let t15;
|
|
215
|
+
if ($[37] !== omittedItems || $[38] !== renderRest) {
|
|
216
|
+
t15 = renderRest(omittedItems);
|
|
217
|
+
$[37] = omittedItems;
|
|
218
|
+
$[38] = renderRest;
|
|
219
|
+
$[39] = t15;
|
|
220
|
+
} else t15 = $[39];
|
|
221
|
+
let t16;
|
|
222
|
+
if ($[40] !== displayRest || $[41] !== itemPrefixCls || $[42] !== t13 || $[43] !== t14 || $[44] !== t15) {
|
|
223
|
+
t16 = /* @__PURE__ */ jsx(InternalItem, {
|
|
224
|
+
prefixCls: itemPrefixCls,
|
|
225
|
+
display: displayRest,
|
|
226
|
+
order: t13,
|
|
227
|
+
itemKey: REST_KEY,
|
|
228
|
+
registerSize: registerRestSize,
|
|
229
|
+
className: t14,
|
|
230
|
+
children: t15
|
|
231
|
+
});
|
|
232
|
+
$[40] = displayRest;
|
|
233
|
+
$[41] = itemPrefixCls;
|
|
234
|
+
$[42] = t13;
|
|
235
|
+
$[43] = t14;
|
|
236
|
+
$[44] = t15;
|
|
237
|
+
$[45] = t16;
|
|
238
|
+
} else t16 = $[45];
|
|
239
|
+
let t17;
|
|
240
|
+
if ($[46] !== ref || $[47] !== t11 || $[48] !== t12 || $[49] !== t16) {
|
|
241
|
+
t17 = /* @__PURE__ */ jsxs("div", {
|
|
242
|
+
className: t11,
|
|
243
|
+
ref,
|
|
244
|
+
children: [t12, t16]
|
|
245
|
+
});
|
|
246
|
+
$[46] = ref;
|
|
247
|
+
$[47] = t11;
|
|
248
|
+
$[48] = t12;
|
|
249
|
+
$[49] = t16;
|
|
250
|
+
$[50] = t17;
|
|
251
|
+
} else t17 = $[50];
|
|
252
|
+
let t18;
|
|
253
|
+
if ($[51] !== t10 || $[52] !== t17) {
|
|
254
|
+
t18 = /* @__PURE__ */ jsx(ResizeObserver, {
|
|
255
|
+
onResize: onOverflowResize,
|
|
256
|
+
disabled: t10,
|
|
257
|
+
children: t17
|
|
258
|
+
});
|
|
259
|
+
$[51] = t10;
|
|
260
|
+
$[52] = t17;
|
|
261
|
+
$[53] = t18;
|
|
262
|
+
} else t18 = $[53];
|
|
263
|
+
return t18;
|
|
264
|
+
}
|
|
265
|
+
function _temp() {
|
|
266
|
+
return /* @__PURE__ */ new Map();
|
|
138
267
|
}
|
|
139
268
|
var FixedOverflow = forwardRef(OverflowInner);
|
|
140
269
|
//#endregion
|