@unicom-cloud/ui 0.8.44 → 0.8.46
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/Affix.js +54 -51
- package/Alert.js +46 -43
- package/Anchor.js +5 -4
- package/AutoComplete.js +60 -55
- package/Avatar.js +10 -155
- package/BackTop.js +41 -38
- package/Badge.js +63 -93
- package/Breadcrumb.js +63 -118
- package/Button.js +105 -109
- package/Calendar.js +139 -536
- package/Card.js +65 -101
- package/Carousel.js +169 -270
- package/Cascader.js +9 -8
- package/Checkbox.js +4 -3
- package/Collapse.js +4 -3
- package/ColorPicker.js +95 -546
- package/Comment.js +14 -12
- package/ConfigProvider.js +6 -5
- package/Copy.js +33 -31
- package/DatePicker.js +35 -1993
- package/Descriptions.js +30 -28
- package/Divider.js +8 -6
- package/Draggable.js +28 -85
- package/Drawer.js +5 -4
- package/Dropdown.js +107 -167
- package/Empty.js +28 -8
- package/Form.js +30 -1418
- package/Grid.js +13 -250
- package/Icon.js +19 -45
- package/IconHover.js +39 -6
- package/Image.js +3 -3
- package/Input.js +4 -4
- package/InputNumber.js +213 -17
- package/InputTag.js +5 -4
- package/Layout.js +35 -48
- package/Link.js +16 -14
- package/List.js +191 -228
- package/Loading.js +18 -17
- package/Mentions.js +99 -115
- package/Menu.js +8 -7
- package/Message.js +147 -10
- package/Modal.js +5 -4
- package/Notice.js +196 -13
- package/Notification.js +136 -11
- package/NotificationBase.js +5 -4
- package/OverflowEllipsis.js +48 -71
- package/PageHeader.js +52 -52
- package/Pagination.js +12 -11
- package/Picker.js +6 -4
- package/Popconfirm.js +47 -44
- package/Popover.js +25 -23
- package/Portal.js +12 -32
- package/Progress.js +65 -328
- package/Radio.js +6 -5
- package/Rate.js +48 -45
- package/ResizeBox.js +127 -505
- package/Result.js +60 -1417
- package/Select.js +9 -8
- package/SelectView.js +49 -328
- package/Skeleton.js +41 -78
- package/Slider.js +228 -702
- package/Space.js +53 -57
- package/Spin.js +57 -72
- package/Statistic.js +84 -153
- package/Steps.js +64 -123
- package/SuspenseFallbackTest.js +4 -3
- package/Switch.js +41 -38
- package/Table.js +20 -1999
- package/Tabs.js +9 -8
- package/Tag.js +24 -21
- package/TimePicker.js +19 -272
- package/Timeline.js +4 -3
- package/Tooltip.js +79 -72
- package/Transfer.js +138 -402
- package/Tree.js +5 -4
- package/TreeSelect.js +8 -7
- package/Trigger.js +407 -571
- package/Typography.js +11 -722
- package/Upload.js +9 -8
- package/VerificationCode.js +6 -5
- package/Version.js +1 -1
- package/VirtualList.js +4 -3
- package/Watermark.js +3 -2
- package/anchor/Anchor.js +193 -0
- package/anchor/Link.js +54 -0
- package/anchor/context.js +14 -0
- package/anchor/util.js +41 -0
- package/avatar/Avatar.js +85 -0
- package/avatar/Group.js +84 -0
- package/avatar/context.js +5 -0
- package/badge/Count.js +35 -0
- package/breadcrumb/Item.js +67 -0
- package/button/Group.js +15 -0
- package/calendar/Month.js +142 -0
- package/calendar/WeekList.js +24 -0
- package/calendar/Year.js +75 -0
- package/calendar/header/Panel.js +57 -0
- package/calendar/header/index.js +118 -0
- package/calendar/hook/useCellClassName.js +41 -0
- package/card/Grid.js +27 -0
- package/card/Meta.js +32 -0
- package/carousel/Arrow.js +57 -0
- package/carousel/Indicator.js +68 -0
- package/cascader/Cascader.js +300 -0
- package/cascader/base/node.js +142 -0
- package/cascader/base/store.js +93 -0
- package/cascader/hook/useRefCurrent.js +12 -0
- package/cascader/panel/List.js +275 -0
- package/cascader/panel/Option.js +35 -0
- package/cascader/panel/Search.js +171 -0
- package/cascader/util.js +66 -0
- package/checkbox/Checkbox.js +111 -0
- package/checkbox/Group.js +97 -0
- package/checkbox/useCheckbox.js +45 -0
- package/collapse/Collapse.js +90 -0
- package/collapse/Item.js +165 -0
- package/color-picker/ControlBar.js +64 -0
- package/color-picker/InputAlpha.js +24 -0
- package/color-picker/InputHex.js +59 -0
- package/color-picker/InputRgb.js +66 -0
- package/color-picker/Palette.js +36 -0
- package/color-picker/Panel.js +165 -0
- package/color-picker/colors.js +37 -0
- package/color-picker/hooks/useColorPicker.js +63 -0
- package/color-picker/hooks/useControlBlock.js +40 -0
- package/config-provider/ConfigProvider.js +94 -0
- package/config-provider/context.js +24 -0
- package/date-picker/Picker.js +399 -0
- package/date-picker/PickerRange.js +568 -0
- package/date-picker/context.js +5 -0
- package/date-picker/hook/useCellClassName.js +58 -0
- package/date-picker/panel/Body.js +78 -0
- package/date-picker/panel/Footer.js +71 -0
- package/date-picker/panel/Header.js +74 -0
- package/date-picker/panel/Shortcut.js +45 -0
- package/date-picker/panel/WeekList.js +19 -0
- package/date-picker/panel/date/index.js +194 -0
- package/date-picker/panel/month/index.js +113 -0
- package/date-picker/panel/quarter/index.js +93 -0
- package/date-picker/panel/range/index.js +251 -0
- package/date-picker/panel/week/index.js +35 -0
- package/date-picker/panel/year/index.js +74 -0
- package/date-picker/util.js +69 -0
- package/draggable/Item.js +66 -0
- package/drawer/Drawer.js +226 -0
- package/dropdown/Button.js +91 -0
- package/form/Control.js +264 -0
- package/form/Form.js +156 -0
- package/form/FormItem.js +241 -0
- package/form/FormLabel.js +54 -0
- package/form/FormList.js +96 -0
- package/form/FormProvider.js +48 -0
- package/form/IconSymbol.js +20 -0
- package/form/context.js +43 -0
- package/form/hook/useContext.js +32 -0
- package/form/hook/useState.js +31 -0
- package/form/hook/useWatch.js +36 -0
- package/form/interface.js +11 -0
- package/form/promisify.js +23 -0
- package/form/store.js +354 -0
- package/form/useForm.js +53 -0
- package/form/util.js +72 -0
- package/grid/Col.js +87 -0
- package/grid/Row.js +88 -0
- package/grid/context.js +9 -0
- package/grid/grid-item.js +77 -0
- package/grid/grid.js +104 -0
- package/grid/hook/useResponsiveState.js +38 -0
- package/grid/util.js +51 -0
- package/{chunk/I4RV9SKZ.js → hooks/factory/createHTMLMediaHook.js} +35 -43
- package/hooks/index.js +246 -4
- package/{chunk/BdYAMaw9.js → hooks/misc/hookState.js} +1 -1
- package/hooks/misc/parseTimeRanges.js +12 -0
- package/{chunk/TXCrI0jN.js → hooks/misc/util.js} +6 -6
- package/hooks/use-watermark/utils.js +8 -0
- package/hooks/use-watermark.js +71 -76
- package/hooks/useAudio.js +3 -3
- package/hooks/useBeforeUnload.js +2 -2
- package/hooks/useClickAway.js +10 -10
- package/hooks/useCounter.js +1 -1
- package/hooks/useCreation.js +2 -4
- package/hooks/useDrop.js +12 -12
- package/hooks/useDropArea.js +5 -5
- package/hooks/useEvent.js +6 -6
- package/hooks/useEventListener.js +2 -4
- package/hooks/useFavicon.js +1 -2
- package/hooks/useFullscreen.js +11 -13
- package/hooks/useGetSet.js +5 -5
- package/hooks/useHash.js +6 -6
- package/hooks/useHover.js +6 -6
- package/hooks/useHoverDirty.js +7 -7
- package/hooks/useIdle.js +17 -17
- package/hooks/useIsomorphicLayoutEffect2.js +3 -3
- package/hooks/useKey.js +5 -5
- package/hooks/useList.js +1 -1
- package/hooks/useLocalStorage.js +2 -3
- package/hooks/useLocation.js +1 -1
- package/hooks/useLockBodyScroll.js +13 -14
- package/hooks/useLongPress.js +7 -7
- package/hooks/useMeasure.js +3 -3
- package/hooks/useMedia.js +4 -4
- package/hooks/useMediaDevices.js +10 -10
- package/hooks/useMotion.js +11 -11
- package/hooks/useMouse.js +9 -9
- package/hooks/useMouseWheel.js +7 -7
- package/hooks/useNetworkState.js +7 -7
- package/hooks/useOrientation.js +10 -11
- package/hooks/useOverrideRef.js +14 -0
- package/hooks/usePageLeave.js +4 -4
- package/hooks/usePermission.js +9 -9
- package/hooks/usePersistCallback.js +15 -0
- package/hooks/useScroll.js +6 -6
- package/hooks/useScrolling.js +7 -7
- package/hooks/useSearchParam.js +5 -5
- package/hooks/useSessionStorage.js +9 -9
- package/hooks/useSize.js +1 -1
- package/hooks/useSlider.js +6 -6
- package/hooks/useStartTyping.js +4 -4
- package/hooks/useStateList.js +4 -5
- package/hooks/useStateWithHistory.js +1 -1
- package/hooks/useTimeout.js +1 -2
- package/hooks/useVibrate.js +5 -5
- package/hooks/useVideo.js +3 -3
- package/hooks/useWindowScroll.js +13 -13
- package/hooks/useWindowSize.js +6 -6
- package/icon/addFromIconFontCn.js +33 -0
- package/image/Image.js +189 -0
- package/image/ImageFooter.js +45 -0
- package/image/ImagePreview.js +473 -0
- package/image/ImagePreviewArrow.js +40 -0
- package/image/ImagePreviewGroup.js +125 -0
- package/image/ImagePreviewToolbar.js +98 -0
- package/image/TriggerForToolbar.js +10 -0
- package/image/previewGroupContext.js +17 -0
- package/image/util/getFixTranslate.js +7 -0
- package/image/util/getScale.js +72 -0
- package/image/util/hook/useImageStatus.js +16 -0
- package/image/util/hook/useShowFooter.js +7 -0
- package/index.js +440 -398
- package/input/Group.js +20 -0
- package/input/Input.js +185 -0
- package/input/InputElement.js +233 -0
- package/input/Number.js +4 -0
- package/input/Password.js +72 -0
- package/input/Search.js +80 -0
- package/input/Tag.js +7 -0
- package/input/Textarea.js +168 -0
- package/input/autoSizeTextAreaHeight.js +65 -0
- package/input/useComposition.js +39 -0
- package/input-number/decimal.js +154 -0
- package/input-number/useSelectionRange.js +26 -0
- package/input-number/util.js +57 -0
- package/input-tag/InputTag.js +381 -0
- package/layout/Content.js +15 -0
- package/layout/Footer.js +15 -0
- package/layout/Header.js +15 -0
- package/{chunk/B9asjXwm.js → layout/Sider.js} +23 -22
- package/list/Item.js +46 -0
- package/list/Meta.js +21 -0
- package/loading/style/index.module.less.js +4 -0
- package/mentions/util.js +26 -0
- package/menu/Indent.js +17 -0
- package/menu/Item.js +125 -0
- package/menu/ItemGroup.js +39 -0
- package/menu/Menu.js +181 -0
- package/menu/OverflowWrap.js +85 -0
- package/menu/context.js +5 -0
- package/menu/sub-menu/Inline.js +111 -0
- package/menu/sub-menu/Pop.js +126 -0
- package/menu/sub-menu/index.js +17 -0
- package/menu/util.js +80 -0
- package/message/useMessage.js +53 -0
- package/modal/Confirm.js +98 -0
- package/modal/Modal.js +419 -0
- package/modal/config.js +25 -0
- package/modal/use-modal/Hook.js +55 -0
- package/modal/use-modal/index.js +68 -0
- package/notification/useNotification.js +55 -0
- package/overflow-ellipsis/OverflowItem.js +34 -0
- package/package.json +1 -1
- package/pagination/PageItem.js +121 -0
- package/pagination/PageJumper.js +64 -0
- package/pagination/PageOption.js +55 -0
- package/pagination/Pagination.js +245 -0
- package/picker/Input.js +124 -0
- package/picker/InputRange.js +155 -0
- package/portal/Portal.js +25 -0
- package/progress/CircleProgress.js +117 -0
- package/progress/LineProgess.js +103 -0
- package/progress/StepProgress.js +74 -0
- package/radio/Group.js +91 -0
- package/radio/Radio.js +90 -0
- package/resize-box/ResizeTrigger.js +78 -0
- package/resize-box/Split.js +132 -0
- package/resize-box/SplitGroup.js +204 -0
- package/result/403.js +695 -0
- package/result/404.js +513 -0
- package/result/500.js +166 -0
- package/select/OptGroup.js +20 -0
- package/select/Option.js +97 -0
- package/select/Select.js +544 -0
- package/select/util.js +140 -0
- package/select-view/Core.js +309 -0
- package/skeleton/Image.js +24 -0
- package/skeleton/Text.js +27 -0
- package/slider/Button.js +159 -0
- package/slider/Dot.js +43 -0
- package/slider/Input.js +75 -0
- package/slider/Mark.js +28 -0
- package/slider/Tick.js +44 -0
- package/slider/hook/useInterval.js +73 -0
- package/slider/hook/useLegalValue.js +70 -0
- package/slider/util.js +63 -0
- package/space/toArray.js +11 -0
- package/spin/DotLoading.js +26 -0
- package/statistic/Countdown.js +57 -0
- package/statistic/util.js +33 -0
- package/steps/Step.js +68 -0
- package/style.css +1 -1
- package/table/ColGroup.js +59 -0
- package/table/Table.js +634 -0
- package/table/constant.js +5 -0
- package/table/hook/useColumns.js +141 -0
- package/table/hook/useComponent.js +64 -0
- package/table/hook/useExpand.js +36 -0
- package/table/hook/useRowSelection.js +92 -0
- package/table/hook/useSorter.js +54 -0
- package/table/hook/useStickyClassNames.js +30 -0
- package/table/hook/useStickyOffsets.js +30 -0
- package/table/summary/Cell.js +10 -0
- package/table/summary/Row.js +26 -0
- package/table/summary/context.js +5 -0
- package/table/summary/index.js +10 -0
- package/table/tbody/Td.js +168 -0
- package/table/tbody/Tr.js +168 -0
- package/table/tbody/index.js +156 -0
- package/table/tfoot/index.js +16 -0
- package/table/thead/Column.js +250 -0
- package/table/thead/index.js +131 -0
- package/table/util.js +121 -0
- package/tabs/Tab.js +170 -0
- package/tabs/TabContent.js +54 -0
- package/tabs/TabPane.js +26 -0
- package/tabs/hook/useDomSize.js +17 -0
- package/tabs/hook/useHeaderScroll.js +64 -0
- package/tabs/tab-header/DropdownIcon.js +71 -0
- package/tabs/tab-header/TabInk.js +65 -0
- package/tabs/tab-header/TabNavIcon.js +65 -0
- package/tabs/tab-header/TabTitle.js +78 -0
- package/tabs/tab-header/index.js +335 -0
- package/tabs/util.js +22 -0
- package/time-picker/Picker.js +221 -0
- package/time-picker/RangePicker.js +56 -0
- package/time-picker/TimeColumn.js +65 -0
- package/time-picker/TimePicker.js +242 -0
- package/time-picker/context.js +5 -0
- package/time-picker/util.js +43 -0
- package/timeline/Item.js +94 -0
- package/timeline/Timeline.js +80 -0
- package/transfer/Item.js +107 -0
- package/transfer/List.js +192 -0
- package/tree/Animation.js +104 -0
- package/tree/Context.js +5 -0
- package/tree/Node.js +215 -0
- package/tree/NodeList.js +84 -0
- package/tree/Tree.js +549 -0
- package/tree/util.js +76 -0
- package/tree-select/List.js +127 -0
- package/tree-select/Select.js +260 -0
- package/tree-select/hook/useKeyCache.js +56 -0
- package/tree-select/hook/useStateValue.js +98 -0
- package/tree-select/hook/useTreeData.js +13 -0
- package/tree-select/interface.js +13 -0
- package/tree-select/util.js +9 -0
- package/trigger/Portal.js +14 -0
- package/trigger/getPopupStyle.js +190 -0
- package/types/badge/Count.d.ts +2 -1
- package/types/badge/index.d.ts +2 -2
- package/types/button/index.d.ts +2 -2
- package/types/carousel/index.d.ts +1 -1
- package/types/color-picker/colors.d.ts +1 -1
- package/types/color-picker/style/index.d.ts +1 -1
- package/types/drawer/Drawer.d.ts +1 -1
- package/types/dropdown/interface.d.ts +1 -0
- package/types/hooks/index.d.ts +122 -0
- package/types/hooks/use-verification-code/interface.d.ts +1 -1
- package/types/hooks/useAsync.d.ts +1 -1
- package/types/hooks/useDropArea.d.ts +1 -0
- package/types/hooks/useOverrideRef.d.ts +5 -0
- package/types/hooks/usePersistCallback.d.ts +1 -0
- package/types/hooks/useUpsert.d.ts +1 -1
- package/types/icon-hover/index.d.ts +5 -3
- package/types/index.d.ts +2 -120
- package/types/input-tag/InputTag.d.ts +1 -1
- package/types/link/interface.d.ts +1 -1
- package/types/list/index.d.ts +1 -1
- package/types/modal/interface.d.ts +1 -0
- package/types/notice/index.d.ts +3 -0
- package/types/notification/index.d.ts +1 -1
- package/types/page-header/index.d.ts +1 -1
- package/types/select/Select.d.ts +1 -1
- package/types/select-view/Core.d.ts +3 -2
- package/types/select-view/index.d.ts +1 -0
- package/types/statistic/index.d.ts +1 -1
- package/types/switch/index.d.ts +1 -1
- package/types/switch/interface.d.ts +1 -1
- package/types/table/interface.d.ts +2 -1
- package/types/tooltip/index.d.ts +1 -1
- package/types/trigger/index.d.ts +12 -8
- package/types/trigger/interface.d.ts +1 -0
- package/types/typography/Base.d.ts +8 -7
- package/types/typography/EditContent.d.ts +3 -2
- package/types/typography/Paragraph.d.ts +2 -5
- package/types/typography/Text.d.ts +1 -5
- package/types/typography/Title.d.ts +2 -5
- package/types/upload/TriggerNode.d.ts +5 -3
- package/types/upload/list/PictureItem.d.ts +3 -3
- package/types/upload/list/TextItem.d.ts +3 -3
- package/types/utils/CSSTransition.d.ts +2 -0
- package/types/utils/constant.d.ts +1 -1
- package/types/utils/is.d.ts +4 -0
- package/types/utils/reactDOM.d.ts +3 -1
- package/types/utils/warning.d.ts +1 -1
- package/types/version/index.d.ts +1 -1
- package/typography/Base.js +184 -0
- package/typography/EditContent.js +49 -0
- package/typography/Ellipsis.js +293 -0
- package/typography/Operations.js +78 -0
- package/typography/Paragraph.js +26 -0
- package/typography/Text.js +11 -0
- package/typography/Title.js +12 -0
- package/typography/Typography.js +15 -0
- package/typography/useCssEllipsis.js +37 -0
- package/typography/useEllipsis.js +150 -0
- package/upload/TriggerNode.js +118 -0
- package/upload/Upload.js +205 -0
- package/upload/Uploader.js +205 -0
- package/upload/interface.js +9 -0
- package/upload/list/PictureItem.js +91 -0
- package/upload/list/TextItem.js +99 -0
- package/upload/list/UploadProgress.js +97 -0
- package/upload/list/index.js +120 -0
- package/upload/request.js +51 -0
- package/upload/util.js +61 -0
- package/utils/CSSTransition.js +27 -0
- package/utils/contextHolder.js +29 -4
- package/utils/getHighlightText.js +1 -2
- package/utils/is.js +81 -68
- package/utils/reactDOM.js +33 -22
- package/utils/style.js +1 -2
- package/utils/warning.js +7 -3
- package/verification-code/VerificationCode.js +83 -0
- package/virtual-list/Filler.js +31 -0
- package/virtual-list/VirtualList.js +378 -0
- package/virtual-list/util/algorithm.js +32 -0
- package/virtual-list/util/item.js +99 -0
- package/{chunk/BCEX3Acw.js → watermark/Watermark.js} +13 -11
- package/chunk/B1P8u7kB.js +0 -798
- package/chunk/B2ufZjjd.js +0 -1000
- package/chunk/B7QOJqps.js +0 -162
- package/chunk/BBz3S3zo.js +0 -966
- package/chunk/BGzBxiWE.js +0 -517
- package/chunk/BNRfcEHj.js +0 -984
- package/chunk/BSs6uXmc.js +0 -946
- package/chunk/BTjUAV8T.js +0 -277
- package/chunk/BYQeEcKe.js +0 -375
- package/chunk/Ba4UXIST.js +0 -605
- package/chunk/BfaXVcik.js +0 -271
- package/chunk/Bs11tCU6.js +0 -240
- package/chunk/C7FC7dzS.js +0 -516
- package/chunk/CLzbve11.js +0 -694
- package/chunk/CN4zXU4b.js +0 -877
- package/chunk/CYTPZUHD.js +0 -769
- package/chunk/CcCo_dK0.js +0 -335
- package/chunk/CoCXcpQd.js +0 -261
- package/chunk/D4yH4UKK.js +0 -80
- package/chunk/DiSLYN2-.js +0 -167
- package/chunk/Dr0iXIXO.js +0 -736
- package/chunk/G3-2uJao.js +0 -229
- package/chunk/RnTpOC5-.js +0 -1
- package/chunk/Z-mtdHUQ.js +0 -226
- package/chunk/ZISxNnaR.js +0 -165
- package/chunk/aPJXnDSb.js +0 -450
- package/chunk/i605JRmI.js +0 -232
- package/chunk/l0sNRNKZ.js +0 -1
- package/types/form/FormItemTip.d.ts +0 -8
- /package/{chunk/C6Kfwj0f.js → loading/style/index.less.js} +0 -0
- /package/{chunk/DP2rzg_V.js → suspense-fallback-test/style/index.less.js} +0 -0
- /package/{chunk/K6Dvbx-E.js → virtual-list/style/index.less.js} +0 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import l from "react";
|
|
3
|
+
import n from "../utils/omit.js";
|
|
4
|
+
function s(r, t) {
|
|
5
|
+
const { prefixCls: o, label: e, ...p } = r;
|
|
6
|
+
return /* @__PURE__ */ i(
|
|
7
|
+
"li",
|
|
8
|
+
{
|
|
9
|
+
ref: t,
|
|
10
|
+
className: `${o}-group-title`,
|
|
11
|
+
...n(p, ["_key", "children", "isSelectOptGroup"]),
|
|
12
|
+
children: e
|
|
13
|
+
}
|
|
14
|
+
);
|
|
15
|
+
}
|
|
16
|
+
const c = l.forwardRef(s), f = c;
|
|
17
|
+
f.__PQB_SELECT_OPTGROUP__ = !0;
|
|
18
|
+
export {
|
|
19
|
+
f as default
|
|
20
|
+
};
|
package/select/Option.js
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { jsxs as j, jsx as f } from "react/jsx-runtime";
|
|
2
|
+
import y from "react";
|
|
3
|
+
/* empty css */
|
|
4
|
+
/* empty css */
|
|
5
|
+
import E from "../checkbox/Checkbox.js";
|
|
6
|
+
import v from "@unicom-cloud/utils/class-name";
|
|
7
|
+
import L from "../utils/omit.js";
|
|
8
|
+
function P(l, N) {
|
|
9
|
+
const {
|
|
10
|
+
style: _,
|
|
11
|
+
className: b,
|
|
12
|
+
wrapperClassName: k,
|
|
13
|
+
disabled: a,
|
|
14
|
+
prefixCls: e,
|
|
15
|
+
rtl: x,
|
|
16
|
+
value: h,
|
|
17
|
+
children: C,
|
|
18
|
+
_isMultipleMode: $,
|
|
19
|
+
_isUserCreatedOption: w,
|
|
20
|
+
_isUserCreatingOption: g,
|
|
21
|
+
_valueActive: M,
|
|
22
|
+
_valueSelect: O,
|
|
23
|
+
_onMouseEnter: c,
|
|
24
|
+
_onMouseLeave: d,
|
|
25
|
+
_onClick: m,
|
|
26
|
+
...o
|
|
27
|
+
} = l, n = "value" in l ? h : `${C}`, i = "children" in l ? C : `${h}`, s = $ ? O.indexOf(n) !== -1 : O === n, u = {
|
|
28
|
+
style: _,
|
|
29
|
+
className: v(
|
|
30
|
+
`${e}-option`,
|
|
31
|
+
{
|
|
32
|
+
[`${e}-option-selected`]: s,
|
|
33
|
+
[`${e}-option-disabled`]: a,
|
|
34
|
+
[`${e}-option-hover`]: n === M,
|
|
35
|
+
[`${e}-option-empty`]: !i && i !== 0 || typeof i == "string" && /^\s*$/.test(i),
|
|
36
|
+
[`${e}-option-rtl`]: x
|
|
37
|
+
},
|
|
38
|
+
b
|
|
39
|
+
),
|
|
40
|
+
onMouseEnter: (r) => {
|
|
41
|
+
var t;
|
|
42
|
+
c == null || c(n), (t = o.onMouseEnter) == null || t.call(o, r);
|
|
43
|
+
},
|
|
44
|
+
onMouseLeave: (r) => {
|
|
45
|
+
var t;
|
|
46
|
+
d == null || d(), (t = o.onMouseLeave) == null || t.call(o, r);
|
|
47
|
+
},
|
|
48
|
+
onClick: (r) => {
|
|
49
|
+
var t;
|
|
50
|
+
m == null || m(n, a), (t = o.onClick) == null || t.call(o, r);
|
|
51
|
+
},
|
|
52
|
+
...L(o, [
|
|
53
|
+
"_key",
|
|
54
|
+
"extra",
|
|
55
|
+
"isSelectOption",
|
|
56
|
+
"onClick",
|
|
57
|
+
"onMouseEnter",
|
|
58
|
+
"onMouseLeave"
|
|
59
|
+
])
|
|
60
|
+
}, p = {
|
|
61
|
+
ref: N,
|
|
62
|
+
role: "option",
|
|
63
|
+
"aria-selected": s
|
|
64
|
+
};
|
|
65
|
+
return w && Object.assign(p, { "data-user-created": !0 }), g && Object.assign(p, { "data-user-creating": !0 }), $ ? /* @__PURE__ */ j(
|
|
66
|
+
"li",
|
|
67
|
+
{
|
|
68
|
+
...p,
|
|
69
|
+
className: v(
|
|
70
|
+
`${e}-option-wrapper`,
|
|
71
|
+
{
|
|
72
|
+
[`${e}-option-wrapper-selected`]: s,
|
|
73
|
+
[`${e}-option-wrapper-disabled`]: a
|
|
74
|
+
},
|
|
75
|
+
k
|
|
76
|
+
),
|
|
77
|
+
children: [
|
|
78
|
+
/* @__PURE__ */ f(
|
|
79
|
+
E,
|
|
80
|
+
{
|
|
81
|
+
"aria-hidden": "true",
|
|
82
|
+
className: `${e}-checkbox`,
|
|
83
|
+
checked: s,
|
|
84
|
+
disabled: a,
|
|
85
|
+
onChange: u.onClick
|
|
86
|
+
}
|
|
87
|
+
),
|
|
88
|
+
/* @__PURE__ */ f("span", { ...u, children: i })
|
|
89
|
+
]
|
|
90
|
+
}
|
|
91
|
+
) : /* @__PURE__ */ f("li", { ...p, ...u, children: i });
|
|
92
|
+
}
|
|
93
|
+
const R = y.forwardRef(P), S = R;
|
|
94
|
+
S.__PQB_SELECT_OPTION__ = !0;
|
|
95
|
+
export {
|
|
96
|
+
S as default
|
|
97
|
+
};
|
package/select/Select.js
ADDED
|
@@ -0,0 +1,544 @@
|
|
|
1
|
+
import { jsx as w, jsxs as mt, Fragment as gt } from "react/jsx-runtime";
|
|
2
|
+
import U from "lodash/isArray";
|
|
3
|
+
import ht from "lodash/isFunction";
|
|
4
|
+
import yt, { useContext as Ct, useState as W, useMemo as Pe, useRef as v, useCallback as pe, useEffect as V, useImperativeHandle as Ot } from "react";
|
|
5
|
+
/* empty css */
|
|
6
|
+
/* empty css */
|
|
7
|
+
import bt from "../checkbox/Checkbox.js";
|
|
8
|
+
import "../config-provider/ConfigProvider.js";
|
|
9
|
+
import vt from "../hooks/useId.js";
|
|
10
|
+
import Vt from "../hooks/useMergeProps.js";
|
|
11
|
+
import De from "../hooks/useMergeValue.js";
|
|
12
|
+
import xt from "../SelectView.js";
|
|
13
|
+
import kt from "../Trigger.js";
|
|
14
|
+
import fe from "@unicom-cloud/utils/class-name";
|
|
15
|
+
import wt from "../utils/getHotkeyHandler.js";
|
|
16
|
+
import { isObject as b } from "../utils/is.js";
|
|
17
|
+
import { Esc as At, Enter as Re, Tab as He, ArrowUp as St, ArrowDown as It } from "../utils/keyCode.js";
|
|
18
|
+
import _t from "../utils/omit.js";
|
|
19
|
+
import Et from "../utils/warning.js";
|
|
20
|
+
/* empty css */
|
|
21
|
+
import Ft from "../virtual-list/VirtualList.js";
|
|
22
|
+
import Mt from "./OptGroup.js";
|
|
23
|
+
import Nt from "./Option.js";
|
|
24
|
+
import { getValidValue as $e, flatChildren as Tt, isEmpty as de, preventDefaultEvent as Lt, isSelectOptGroup as Ut, isSelectOption as Pt } from "./util.js";
|
|
25
|
+
import { ConfigContext as Dt } from "../config-provider/context.js";
|
|
26
|
+
const Ge = "userCreatingOption", Rt = {
|
|
27
|
+
trigger: "click",
|
|
28
|
+
bordered: !0,
|
|
29
|
+
filterOption: !0,
|
|
30
|
+
unmountOnExit: !0,
|
|
31
|
+
defaultActiveFirstOption: !0
|
|
32
|
+
}, Ht = { bottom: 4 };
|
|
33
|
+
function $t(je, Ke) {
|
|
34
|
+
var Te;
|
|
35
|
+
const { getPrefixCls: We, renderEmpty: qe, componentConfig: q, rtl: ge } = Ct(Dt), u = Vt(
|
|
36
|
+
je,
|
|
37
|
+
Rt,
|
|
38
|
+
q == null ? void 0 : q.Select
|
|
39
|
+
), {
|
|
40
|
+
children: he,
|
|
41
|
+
renderFormat: ye,
|
|
42
|
+
defaultActiveFirstOption: Ce,
|
|
43
|
+
disabled: Be,
|
|
44
|
+
unmountOnExit: Je,
|
|
45
|
+
notFoundContent: Qe,
|
|
46
|
+
showSearch: Oe,
|
|
47
|
+
tokenSeparators: B,
|
|
48
|
+
options: be,
|
|
49
|
+
filterOption: ve,
|
|
50
|
+
labelInValue: P,
|
|
51
|
+
getPopupContainer: Xe,
|
|
52
|
+
trigger: Ye,
|
|
53
|
+
triggerElement: J,
|
|
54
|
+
triggerProps: c,
|
|
55
|
+
dropdownRender: Ve,
|
|
56
|
+
dropdownMenuStyle: xe,
|
|
57
|
+
dropdownMenuClassName: ke,
|
|
58
|
+
virtualListProps: D,
|
|
59
|
+
// events
|
|
60
|
+
onChange: we,
|
|
61
|
+
onSelect: Ze,
|
|
62
|
+
onDeselect: ze,
|
|
63
|
+
onClear: Q,
|
|
64
|
+
onSearch: X,
|
|
65
|
+
onFocus: et,
|
|
66
|
+
onBlur: Y,
|
|
67
|
+
onPopupScroll: Z,
|
|
68
|
+
onVisibleChange: z,
|
|
69
|
+
onInputValueChange: ee,
|
|
70
|
+
onPaste: te,
|
|
71
|
+
onKeyDown: ne
|
|
72
|
+
} = u;
|
|
73
|
+
let { mode: re, allowCreate: d } = u;
|
|
74
|
+
re === "tags" && (re = "multiple", d = !0, Et(
|
|
75
|
+
!0,
|
|
76
|
+
`[Pqb Select] The 'tags' mode will be removed in the next major version, please use {mode: "multiple", allowCreate: true} instead.`
|
|
77
|
+
));
|
|
78
|
+
const m = We("select"), p = re === "multiple", [tt, oe] = W(
|
|
79
|
+
$e(u.defaultValue, p, P)
|
|
80
|
+
), o = "value" in u ? $e(u.value, p, P) : tt, [g, nt, rt] = De("", {
|
|
81
|
+
value: "inputValue" in u ? u.inputValue || "" : void 0
|
|
82
|
+
}), [y, ot] = De(!1, {
|
|
83
|
+
defaultValue: u.defaultPopupVisible,
|
|
84
|
+
value: "popupVisible" in u ? u.popupVisible : c && "popupVisible" in c ? c.popupVisible : void 0
|
|
85
|
+
}), [M, it] = W(null), [N, lt] = W([]), [O, E] = W(
|
|
86
|
+
U(o) ? o[0] : o
|
|
87
|
+
), {
|
|
88
|
+
childrenList: ie,
|
|
89
|
+
optionInfoMap: a,
|
|
90
|
+
optionValueList: x,
|
|
91
|
+
optionIndexListForArrowKey: A,
|
|
92
|
+
hasOptGroup: st,
|
|
93
|
+
hasComplexLabelInOptions: at
|
|
94
|
+
} = Pe(() => Tt(
|
|
95
|
+
{ children: he, options: be, filterOption: ve },
|
|
96
|
+
{
|
|
97
|
+
prefixCls: m,
|
|
98
|
+
inputValue: g,
|
|
99
|
+
userCreatedOptions: N,
|
|
100
|
+
userCreatingOption: M
|
|
101
|
+
}
|
|
102
|
+
), [
|
|
103
|
+
he,
|
|
104
|
+
be,
|
|
105
|
+
ve,
|
|
106
|
+
g,
|
|
107
|
+
M,
|
|
108
|
+
N
|
|
109
|
+
]), le = v(null), Ae = v(null), h = v(null), S = v([]), k = v(null), Se = v(g), se = v(null), R = v(0), ae = v(!1), Ie = vt(`${m}-popup-`), H = de(o, p), _e = Pe(() => {
|
|
110
|
+
var e, t;
|
|
111
|
+
if (Ce) {
|
|
112
|
+
const r = U(o) ? o[0] : o, n = !H && ((e = a.get(r)) == null ? void 0 : e._valid), l = ((t = a == null ? void 0 : a.get(x[0])) == null ? void 0 : t._origin) === Ge;
|
|
113
|
+
return n && !l ? r : x[A[0]];
|
|
114
|
+
}
|
|
115
|
+
}, [
|
|
116
|
+
o,
|
|
117
|
+
a,
|
|
118
|
+
x,
|
|
119
|
+
A,
|
|
120
|
+
Ce,
|
|
121
|
+
H
|
|
122
|
+
]), $ = pe(
|
|
123
|
+
(e, t) => {
|
|
124
|
+
var n;
|
|
125
|
+
const r = a.get(e);
|
|
126
|
+
le.current && ((n = r == null ? void 0 : r.child) != null && n.props) && le.current.scrollTo({
|
|
127
|
+
key: r.child.props._key,
|
|
128
|
+
options: t
|
|
129
|
+
});
|
|
130
|
+
},
|
|
131
|
+
[a]
|
|
132
|
+
), G = pe(
|
|
133
|
+
(e, t = !1) => b(d) && typeof (d == null ? void 0 : d.formatter) == "function" ? d.formatter(e, t) : e,
|
|
134
|
+
[d]
|
|
135
|
+
), I = (e, t) => {
|
|
136
|
+
(e !== Se.current || t !== se.current) && (nt(e), Se.current = e, se.current = t, ee == null || ee(e, t));
|
|
137
|
+
}, F = (e) => {
|
|
138
|
+
var t;
|
|
139
|
+
y !== e && (ot(e), z == null || z(e), c && ((t = c.onVisibleChange) == null || t.call(c, e)));
|
|
140
|
+
};
|
|
141
|
+
V(() => {
|
|
142
|
+
p ? Array.isArray(o) || oe(o === void 0 ? [] : [o]) : Array.isArray(o) && oe(o.length === 0 ? void 0 : o[0]);
|
|
143
|
+
}, [p, o]), V(() => {
|
|
144
|
+
if (y) {
|
|
145
|
+
E(_e);
|
|
146
|
+
const e = U(o) ? o[0] : o;
|
|
147
|
+
!H && a.has(e) && setTimeout(() => $(e));
|
|
148
|
+
}
|
|
149
|
+
}, [y]), V(() => {
|
|
150
|
+
(k.current === "up" || k.current === "down") && ($(O), k.current = "none");
|
|
151
|
+
}, [O]), V(() => {
|
|
152
|
+
E(_e);
|
|
153
|
+
}, [JSON.stringify(ie.map((e) => {
|
|
154
|
+
var t;
|
|
155
|
+
return (t = e == null ? void 0 : e.props) == null ? void 0 : t.value;
|
|
156
|
+
}))]), V(() => {
|
|
157
|
+
S.current = S.current.filter((e) => p ? U(o) && o.indexOf(e.value) > -1 : e.value === o);
|
|
158
|
+
}, [o, p]), V(() => {
|
|
159
|
+
if (d) {
|
|
160
|
+
let e;
|
|
161
|
+
if (de(o, p))
|
|
162
|
+
e = [];
|
|
163
|
+
else {
|
|
164
|
+
const r = Array.isArray(o) ? o : [o], n = r.filter((i) => {
|
|
165
|
+
var C;
|
|
166
|
+
const f = a.get(i) || ((C = S.current.find((s) => s.value === i)) == null ? void 0 : C.option);
|
|
167
|
+
return !f || f._origin === Ge;
|
|
168
|
+
}).map((i) => G(i));
|
|
169
|
+
e = N.filter((i) => {
|
|
170
|
+
const f = b(i) ? i.value : i;
|
|
171
|
+
return r.indexOf(f) !== -1;
|
|
172
|
+
}).concat(
|
|
173
|
+
n
|
|
174
|
+
);
|
|
175
|
+
}
|
|
176
|
+
const t = (r) => r.map((n) => b(n) ? n.value : n).toString();
|
|
177
|
+
t(e) !== t(N) && lt(e);
|
|
178
|
+
}
|
|
179
|
+
}, [o, d, p, G]), V(() => {
|
|
180
|
+
d && it(
|
|
181
|
+
g && !a.has(g) ? G(g, !0) : null
|
|
182
|
+
);
|
|
183
|
+
}, [g, G]), V(() => {
|
|
184
|
+
const { current: e } = se;
|
|
185
|
+
rt === g && (e === "manual" || e === "optionListHide") && (X == null || X(g, e));
|
|
186
|
+
}, [g]);
|
|
187
|
+
const T = pe(
|
|
188
|
+
(e) => {
|
|
189
|
+
const t = a.get(e);
|
|
190
|
+
if (t) {
|
|
191
|
+
const n = S.current.findIndex(
|
|
192
|
+
(l) => l.value === e
|
|
193
|
+
);
|
|
194
|
+
return n > -1 ? S.current.splice(n, 1, { value: e, option: t }) : S.current.push({ value: e, option: t }), t;
|
|
195
|
+
}
|
|
196
|
+
const r = S.current.find((n) => n.value === e);
|
|
197
|
+
return r && r.option;
|
|
198
|
+
},
|
|
199
|
+
[a]
|
|
200
|
+
), Ee = (e) => {
|
|
201
|
+
if (!A.length)
|
|
202
|
+
return;
|
|
203
|
+
if (O === void 0 || !a.has(O))
|
|
204
|
+
return x[A[0]];
|
|
205
|
+
const r = a.get(O)._index, n = A.indexOf(r), l = A.length;
|
|
206
|
+
return x[A[((e === "up" ? n - 1 : n + 1) + l) % l]];
|
|
207
|
+
}, j = (e, t = de(e, p)) => {
|
|
208
|
+
let r = e;
|
|
209
|
+
const n = e === void 0 ? void 0 : Array.isArray(e) ? e.map(T) : T(e);
|
|
210
|
+
if (P && !t) {
|
|
211
|
+
const l = (i, f) => {
|
|
212
|
+
if (f)
|
|
213
|
+
return f.children;
|
|
214
|
+
const C = "value" in u ? u.value : "defaultValue" in u ? u.defaultValue : null;
|
|
215
|
+
if (Array.isArray(C)) {
|
|
216
|
+
for (const s of C)
|
|
217
|
+
if (b(s) && s.value === i)
|
|
218
|
+
return s.label;
|
|
219
|
+
} else if (b(C) && C.value === i)
|
|
220
|
+
return C.label;
|
|
221
|
+
};
|
|
222
|
+
Array.isArray(e) ? r = e.map((i, f) => ({
|
|
223
|
+
value: i,
|
|
224
|
+
label: l(i, n[f])
|
|
225
|
+
})) : r = {
|
|
226
|
+
value: e,
|
|
227
|
+
label: l(e, n)
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
return { option: n, value: r };
|
|
231
|
+
}, _ = (e) => {
|
|
232
|
+
if (oe(e), we) {
|
|
233
|
+
const t = j(e);
|
|
234
|
+
we(t.value, t.option);
|
|
235
|
+
}
|
|
236
|
+
}, Fe = (e, t) => {
|
|
237
|
+
if (t === "remove" || t === "add" && a.get(e)) {
|
|
238
|
+
const r = t === "add" ? o.concat(e) : o.filter((l) => l !== e), n = t === "add" ? Ze : ze;
|
|
239
|
+
if (_(r), typeof n == "function") {
|
|
240
|
+
const l = j(
|
|
241
|
+
e,
|
|
242
|
+
!1
|
|
243
|
+
);
|
|
244
|
+
n(
|
|
245
|
+
l.value,
|
|
246
|
+
l.option
|
|
247
|
+
);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}, Me = (e, t) => {
|
|
251
|
+
t || (p ? (Fe(
|
|
252
|
+
e,
|
|
253
|
+
o.indexOf(e) === -1 ? "add" : "remove"
|
|
254
|
+
), (!b(Oe) || !Oe.retainInputValueWhileSelect) && I("", "optionChecked")) : (e !== o && _(e), setTimeout(() => {
|
|
255
|
+
F(!1);
|
|
256
|
+
})));
|
|
257
|
+
}, K = wt(
|
|
258
|
+
/* @__PURE__ */ new Map([
|
|
259
|
+
[At.key, () => F(!1)],
|
|
260
|
+
[
|
|
261
|
+
Re.key,
|
|
262
|
+
() => {
|
|
263
|
+
if (y) {
|
|
264
|
+
const e = a.get(O);
|
|
265
|
+
e && Me(O, e.disabled);
|
|
266
|
+
} else
|
|
267
|
+
F(!0);
|
|
268
|
+
}
|
|
269
|
+
],
|
|
270
|
+
[
|
|
271
|
+
He.key,
|
|
272
|
+
// 按tab键切换,关闭开启的弹出框
|
|
273
|
+
() => F(!1)
|
|
274
|
+
],
|
|
275
|
+
[
|
|
276
|
+
St.key,
|
|
277
|
+
() => {
|
|
278
|
+
if (y)
|
|
279
|
+
return k.current = "up", E(Ee("up")), !1;
|
|
280
|
+
}
|
|
281
|
+
],
|
|
282
|
+
[
|
|
283
|
+
It.key,
|
|
284
|
+
() => {
|
|
285
|
+
if (y)
|
|
286
|
+
return k.current = "down", E(Ee("down")), !1;
|
|
287
|
+
}
|
|
288
|
+
]
|
|
289
|
+
])
|
|
290
|
+
), ut = () => {
|
|
291
|
+
var f, C;
|
|
292
|
+
const e = (c == null ? void 0 : c.autoAlignPopupWidth) === !1 && (!((f = c == null ? void 0 : c.style) != null && f.width) || ((C = c == null ? void 0 : c.style) == null ? void 0 : C.width) === "auto"), t = e && at, r = "notFoundContent" in u ? Qe : qe("Select"), n = ie.length ? /* @__PURE__ */ w(
|
|
293
|
+
Ft,
|
|
294
|
+
{
|
|
295
|
+
id: Ie,
|
|
296
|
+
role: "listbox",
|
|
297
|
+
style: xe,
|
|
298
|
+
className: fe(`${m}-popup-inner`, ke),
|
|
299
|
+
ref: le,
|
|
300
|
+
data: ie,
|
|
301
|
+
height: null,
|
|
302
|
+
isStaticItemHeight: !st,
|
|
303
|
+
measureLongestItem: e,
|
|
304
|
+
itemKey: (s) => s.props._key,
|
|
305
|
+
onMouseDown: Lt,
|
|
306
|
+
onMouseMove: () => {
|
|
307
|
+
k.current = null;
|
|
308
|
+
},
|
|
309
|
+
onScroll: (s) => Z == null ? void 0 : Z(s.target),
|
|
310
|
+
...D,
|
|
311
|
+
threshold: t ? null : D == null ? void 0 : D.threshold,
|
|
312
|
+
children: (s) => {
|
|
313
|
+
var Le;
|
|
314
|
+
if (Ut(s))
|
|
315
|
+
return /* @__PURE__ */ w(s.type, { ...s.props, prefixCls: m });
|
|
316
|
+
if (Pt(s)) {
|
|
317
|
+
const Ue = (Le = s.props) == null ? void 0 : Le.value, pt = b(M) ? M.value : M, ft = N.map(
|
|
318
|
+
(L) => b(L) ? L.value : L
|
|
319
|
+
), dt = {
|
|
320
|
+
prefixCls: m,
|
|
321
|
+
rtl: ge,
|
|
322
|
+
_valueActive: O,
|
|
323
|
+
_valueSelect: o,
|
|
324
|
+
_isMultipleMode: p,
|
|
325
|
+
_isUserCreatingOption: d && pt === Ue,
|
|
326
|
+
_isUserCreatedOption: d && ft.indexOf(Ue) > -1,
|
|
327
|
+
_onClick: Me,
|
|
328
|
+
_onMouseEnter: (L) => {
|
|
329
|
+
k.current === null && E(L);
|
|
330
|
+
},
|
|
331
|
+
_onMouseLeave: () => {
|
|
332
|
+
k.current === null && E(void 0);
|
|
333
|
+
}
|
|
334
|
+
};
|
|
335
|
+
return s && /* @__PURE__ */ w(s.type, { ...s.props, ...dt });
|
|
336
|
+
}
|
|
337
|
+
return s;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
) : null, i = r && !(d && g) ? /* @__PURE__ */ w(
|
|
341
|
+
"div",
|
|
342
|
+
{
|
|
343
|
+
style: xe,
|
|
344
|
+
className: fe(`${m}-popup-inner`, ke),
|
|
345
|
+
children: r
|
|
346
|
+
}
|
|
347
|
+
) : null;
|
|
348
|
+
return /* @__PURE__ */ mt(
|
|
349
|
+
"div",
|
|
350
|
+
{
|
|
351
|
+
className: fe(`${m}-popup`, {
|
|
352
|
+
[`${m}-popup-hidden`]: n === null && i === null,
|
|
353
|
+
[`${m}-popup-multiple`]: p
|
|
354
|
+
}),
|
|
355
|
+
tabIndex: -1,
|
|
356
|
+
onKeyDown: (s) => K(s),
|
|
357
|
+
children: [
|
|
358
|
+
!!p && !!n && // 潘启宝新增
|
|
359
|
+
/* @__PURE__ */ w(gt, { children: /* @__PURE__ */ w(
|
|
360
|
+
bt,
|
|
361
|
+
{
|
|
362
|
+
"aria-hidden": "true",
|
|
363
|
+
className: `${m}-checkbox ${m}-checkbox-all`,
|
|
364
|
+
checked: x.length === o.length,
|
|
365
|
+
indeterminate: x.length !== o.length && o.length !== 0,
|
|
366
|
+
onChange: (s) => {
|
|
367
|
+
_(s ? [...x] : []);
|
|
368
|
+
},
|
|
369
|
+
children: "全选"
|
|
370
|
+
}
|
|
371
|
+
) }),
|
|
372
|
+
typeof Ve == "function" ? Ve(n || i) : n || i
|
|
373
|
+
]
|
|
374
|
+
}
|
|
375
|
+
);
|
|
376
|
+
}, ue = (e) => {
|
|
377
|
+
if (R.current = null, p && U(B) && B.length) {
|
|
378
|
+
const t = e.split(new RegExp(`[${B.join("")}]`));
|
|
379
|
+
if (t.length > 1) {
|
|
380
|
+
R.current = Date.now();
|
|
381
|
+
const r = t.filter(
|
|
382
|
+
(i, f) => i && t.indexOf(i) === f
|
|
383
|
+
), n = o.slice(0);
|
|
384
|
+
let l = !1;
|
|
385
|
+
r.forEach((i) => {
|
|
386
|
+
n.indexOf(i) === -1 && (d || a.get(i)) && (n.push(i), l = !0);
|
|
387
|
+
}), l && _(n);
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
return !!R.current;
|
|
391
|
+
}, ct = {
|
|
392
|
+
onFocus: et,
|
|
393
|
+
onBlur: (e) => {
|
|
394
|
+
Y == null || Y(e), !y && !ae.current && I("", "optionListHide");
|
|
395
|
+
},
|
|
396
|
+
onKeyDown: (e) => {
|
|
397
|
+
if (e.target.tagName === "INPUT" && e.target.value) {
|
|
398
|
+
const t = e.key === He.key, r = e.key === Re.key;
|
|
399
|
+
if (r || t) {
|
|
400
|
+
const n = r ? `
|
|
401
|
+
` : t ? " " : "";
|
|
402
|
+
ue(e.target.value + n) && I("", "tokenSeparator");
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
K(e), ne == null || ne(e);
|
|
406
|
+
},
|
|
407
|
+
onChangeInputValue: (e, { nativeEvent: { inputType: t } }) => {
|
|
408
|
+
t !== "insertFromPaste" && ue(e), R.current ? I("", "tokenSeparator") : I(e, "manual"), !y && e && F(!0);
|
|
409
|
+
},
|
|
410
|
+
onPaste: (e) => {
|
|
411
|
+
ue(e.clipboardData.getData("text")), te == null || te(e);
|
|
412
|
+
},
|
|
413
|
+
// Option Items
|
|
414
|
+
onRemoveCheckedItem: (e, t, r) => {
|
|
415
|
+
r.stopPropagation(), Fe(o[t], "remove");
|
|
416
|
+
},
|
|
417
|
+
onClear: (e) => {
|
|
418
|
+
if (e.stopPropagation(), p) {
|
|
419
|
+
const t = o.filter((r) => {
|
|
420
|
+
const n = a.get(r);
|
|
421
|
+
return n && n.disabled;
|
|
422
|
+
});
|
|
423
|
+
_(t);
|
|
424
|
+
} else
|
|
425
|
+
_(void 0);
|
|
426
|
+
I("", "manual"), Q == null || Q(y);
|
|
427
|
+
}
|
|
428
|
+
};
|
|
429
|
+
Ot(
|
|
430
|
+
Ke,
|
|
431
|
+
() => {
|
|
432
|
+
var e, t;
|
|
433
|
+
return {
|
|
434
|
+
dom: (e = h.current) == null ? void 0 : e.dom,
|
|
435
|
+
focus() {
|
|
436
|
+
h.current && h.current.focus();
|
|
437
|
+
},
|
|
438
|
+
blur() {
|
|
439
|
+
h.current && h.current.blur();
|
|
440
|
+
},
|
|
441
|
+
hotkeyHandler: K,
|
|
442
|
+
activeOptionValue: O,
|
|
443
|
+
getOptionInfoByValue: T,
|
|
444
|
+
getOptionInfoList: () => [...a.values()].filter((r) => r._valid),
|
|
445
|
+
scrollIntoView: $,
|
|
446
|
+
getRootDOMNode: (t = h.current) == null ? void 0 : t.getRootDOMNode
|
|
447
|
+
};
|
|
448
|
+
},
|
|
449
|
+
[
|
|
450
|
+
K,
|
|
451
|
+
a,
|
|
452
|
+
O,
|
|
453
|
+
T,
|
|
454
|
+
$
|
|
455
|
+
]
|
|
456
|
+
);
|
|
457
|
+
const Ne = (e) => /* @__PURE__ */ w(
|
|
458
|
+
kt,
|
|
459
|
+
{
|
|
460
|
+
ref: (t) => Ae.current = t,
|
|
461
|
+
popup: ut,
|
|
462
|
+
trigger: Ye,
|
|
463
|
+
disabled: Be,
|
|
464
|
+
getPopupContainer: Xe,
|
|
465
|
+
classNames: "slideDynamicOrigin",
|
|
466
|
+
autoAlignPopupWidth: !0,
|
|
467
|
+
popupAlign: Ht,
|
|
468
|
+
popupVisible: y,
|
|
469
|
+
unmountOnExit: Je,
|
|
470
|
+
onVisibleChange: F,
|
|
471
|
+
__onExit: () => {
|
|
472
|
+
ae.current = !0;
|
|
473
|
+
},
|
|
474
|
+
__onExited: () => {
|
|
475
|
+
ae.current = !1, I("", "optionListHide");
|
|
476
|
+
},
|
|
477
|
+
..._t(c, ["popupVisible", "onVisibleChange"]),
|
|
478
|
+
children: e
|
|
479
|
+
}
|
|
480
|
+
), ce = typeof J == "function" ? J(j(o)) : J;
|
|
481
|
+
return V(() => {
|
|
482
|
+
var t;
|
|
483
|
+
let e;
|
|
484
|
+
return (t = h.current) != null && t.dom && (e = new ResizeObserver(() => {
|
|
485
|
+
var r, n;
|
|
486
|
+
(n = (r = Ae.current) == null ? void 0 : r.updatePopupPosition) == null || n.call(r);
|
|
487
|
+
}), e.observe(h.current.dom)), () => {
|
|
488
|
+
var r, n, l;
|
|
489
|
+
(r = h.current) != null && r.dom && ((n = e == null ? void 0 : e.unobserve) == null || n.call(e, h.current.dom)), (l = e == null ? void 0 : e.disconnect) == null || l.call(e), e = null;
|
|
490
|
+
};
|
|
491
|
+
}, [(Te = h.current) == null ? void 0 : Te.dom]), ce != null ? Ne(ce) : /* @__PURE__ */ w(
|
|
492
|
+
xt,
|
|
493
|
+
{
|
|
494
|
+
...u,
|
|
495
|
+
...ct,
|
|
496
|
+
ref: h,
|
|
497
|
+
value: o,
|
|
498
|
+
inputValue: g,
|
|
499
|
+
popupVisible: y,
|
|
500
|
+
rtl: ge,
|
|
501
|
+
prefixCls: m,
|
|
502
|
+
allowCreate: !!d,
|
|
503
|
+
ariaControls: Ie,
|
|
504
|
+
isEmptyValue: H,
|
|
505
|
+
isMultiple: p,
|
|
506
|
+
onSort: _,
|
|
507
|
+
renderText: (e) => {
|
|
508
|
+
const t = T(e);
|
|
509
|
+
let r = e;
|
|
510
|
+
if (ht(ye)) {
|
|
511
|
+
const n = j(e, !1);
|
|
512
|
+
r = ye(
|
|
513
|
+
n.option || null,
|
|
514
|
+
n.value
|
|
515
|
+
);
|
|
516
|
+
} else {
|
|
517
|
+
let n = !1;
|
|
518
|
+
if (P) {
|
|
519
|
+
const l = u.value || u.defaultValue;
|
|
520
|
+
if (Array.isArray(l)) {
|
|
521
|
+
const i = l.find(
|
|
522
|
+
(f) => b(f) && f.value === e
|
|
523
|
+
);
|
|
524
|
+
i && (r = i.label, n = !0);
|
|
525
|
+
} else b(l) && (r = l.label, n = !0);
|
|
526
|
+
}
|
|
527
|
+
!n && t && "children" in t && (r = t.children);
|
|
528
|
+
}
|
|
529
|
+
return {
|
|
530
|
+
text: r,
|
|
531
|
+
disabled: t && t.disabled
|
|
532
|
+
};
|
|
533
|
+
},
|
|
534
|
+
renderView: Ne
|
|
535
|
+
}
|
|
536
|
+
);
|
|
537
|
+
}
|
|
538
|
+
const Gt = yt.forwardRef($t), me = Gt;
|
|
539
|
+
me.displayName = "Select";
|
|
540
|
+
me.Option = Nt;
|
|
541
|
+
me.OptGroup = Mt;
|
|
542
|
+
export {
|
|
543
|
+
me as default
|
|
544
|
+
};
|