@kdcloudjs/kdesign 1.6.34 → 1.6.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/dist/kdesign-complete.less +16 -2
- package/dist/kdesign.css +18 -2
- package/dist/kdesign.css.map +1 -1
- package/dist/kdesign.js +9174 -11871
- package/dist/kdesign.js.map +1 -1
- package/dist/kdesign.min.css +3 -3
- package/dist/kdesign.min.js +18 -18
- package/dist/kdesign.min.js.map +1 -1
- package/es/_utils/KeyCode.js +6 -119
- package/es/_utils/arrayUtil.js +0 -5
- package/es/_utils/devwarning.js +0 -1
- package/es/_utils/formatUtil.js +36 -99
- package/es/_utils/getStringLength.js +0 -2
- package/es/_utils/hooks.js +32 -72
- package/es/_utils/index.js +0 -2
- package/es/_utils/numberUtil.js +32 -55
- package/es/_utils/omit.js +0 -2
- package/es/_utils/raf.js +0 -6
- package/es/_utils/resizeObserver.js +2 -17
- package/es/_utils/testBrowserType.js +0 -2
- package/es/_utils/type.js +0 -2
- package/es/_utils/usePopper.js +84 -167
- package/es/alert/alert.js +20 -50
- package/es/anchor/anchor-link.js +12 -23
- package/es/anchor/anchor.js +69 -168
- package/es/avatar/avatar.js +29 -44
- package/es/badge/badge.js +33 -53
- package/es/base-data/base-data.js +89 -197
- package/es/button/button.js +30 -55
- package/es/button/group.js +27 -39
- package/es/card/card.js +19 -23
- package/es/carousel/carousel.js +31 -65
- package/es/carousel/displayList.js +2 -5
- package/es/carousel/fadeList.js +4 -7
- package/es/carousel/slideList.js +1 -7
- package/es/carousel/slidebar.js +5 -12
- package/es/cascader/cascader.js +56 -116
- package/es/cascader/util.js +10 -58
- package/es/checkbox/checkbox.js +22 -47
- package/es/checkbox/group.js +19 -35
- package/es/checkbox/style/index.css +2 -0
- package/es/checkbox/style/index.less +1 -0
- package/es/city-picker/city-group.js +5 -13
- package/es/city-picker/city-list.js +4 -9
- package/es/city-picker/city-panel-item.js +3 -8
- package/es/city-picker/city-panel.js +25 -50
- package/es/city-picker/city-picker.js +22 -46
- package/es/city-picker/city-search-panel.js +6 -13
- package/es/city-picker/no-data.js +3 -6
- package/es/city-picker/utils/grouping.js +0 -4
- package/es/collapse/collapse.js +17 -40
- package/es/collapse/panel.js +21 -44
- package/es/config-provider/SizeContext.js +1 -1
- package/es/config-provider/compDefaultProps.js +0 -1
- package/es/config-provider/configProvider.js +2 -7
- package/es/config-provider/defaultConfig.js +0 -1
- package/es/date-picker/calendar.js +12 -21
- package/es/date-picker/date-panel.js +22 -66
- package/es/date-picker/date-picker.js +145 -186
- package/es/date-picker/hooks/use-hover-value.js +5 -13
- package/es/date-picker/hooks/use-picker-input.js +17 -31
- package/es/date-picker/hooks/use-range-cls.js +8 -14
- package/es/date-picker/hooks/use-range-disabled.js +7 -21
- package/es/date-picker/hooks/use-range-view-dates.js +18 -39
- package/es/date-picker/hooks/use-state-memo.js +0 -2
- package/es/date-picker/hooks/use-text-value-mapping.js +6 -11
- package/es/date-picker/hooks/use-value-texts.js +0 -1
- package/es/date-picker/panel/date-time/date-time.js +7 -10
- package/es/date-picker/panel/header/header.js +9 -11
- package/es/date-picker/panel/month/month.js +11 -30
- package/es/date-picker/panel/quarter/quarter.js +8 -25
- package/es/date-picker/panel/time/time-column.js +8 -18
- package/es/date-picker/panel/time/time.js +62 -88
- package/es/date-picker/panel/week/week.js +25 -57
- package/es/date-picker/panel/year/year.js +19 -42
- package/es/date-picker/popper.js +28 -35
- package/es/date-picker/range/input-range.js +95 -129
- package/es/date-picker/range-picker.d.ts +1 -0
- package/es/date-picker/range-picker.js +197 -287
- package/es/date-picker/single/input-date.js +87 -111
- package/es/date-picker/utils/date-fns.js +32 -63
- package/es/date-picker/utils/get-extra-footer.js +0 -1
- package/es/date-picker/utils/get-ranges.js +13 -19
- package/es/date-picker/utils/index.js +9 -80
- package/es/drawer/drawer.js +50 -71
- package/es/dropdown/dropdown.js +26 -42
- package/es/dropdown/menu.d.ts +3 -2
- package/es/dropdown/menu.js +32 -43
- package/es/empty/defaultEmptyImg.js +2 -5
- package/es/empty/empty.js +15 -26
- package/es/empty/illustrationEmptyImg.js +2 -5
- package/es/filter/condition.js +5 -17
- package/es/filter/filter.js +29 -54
- package/es/filter/scheme.js +35 -71
- package/es/form/Field.js +36 -98
- package/es/form/FieldContext.js +0 -2
- package/es/form/FieldLabel.js +11 -17
- package/es/form/FieldWrapper.js +6 -9
- package/es/form/Form.js +28 -46
- package/es/form/FormContext.js +0 -4
- package/es/form/hooks/useForceUpdate.js +2 -5
- package/es/form/hooks/useForm.js +10 -84
- package/es/grid/col.js +23 -39
- package/es/grid/row.js +22 -36
- package/es/icon/icon.js +11 -29
- package/es/image/image.js +31 -49
- package/es/image/preview-group.js +25 -41
- package/es/image/preview.js +24 -39
- package/es/image-cropper/cropper.js +13 -23
- package/es/image-cropper/image-cropper.js +39 -69
- package/es/image-cropper/operation-bar.js +14 -27
- package/es/image-cropper/style/index.css +12 -1
- package/es/image-cropper/style/index.less +11 -2
- package/es/index.js +0 -2
- package/es/input/ClearableLabeledInput.js +27 -50
- package/es/input/TextArea.js +45 -86
- package/es/input/calculateNodeHeight.js +4 -16
- package/es/input/index.js +2 -2
- package/es/input/input.js +32 -67
- package/es/input-number/inputNumber.js +50 -109
- package/es/layout/layout.js +28 -49
- package/es/layout/sider.js +39 -73
- package/es/link/link.js +19 -33
- package/es/locale/locale.js +6 -44
- package/es/locale/zh-CN.js +0 -2
- package/es/menu/menu.js +29 -63
- package/es/menu/menuItem.js +27 -52
- package/es/menu/subMenu.js +44 -99
- package/es/menu/util.js +4 -13
- package/es/message/content.js +7 -23
- package/es/message/index.js +14 -26
- package/es/modal/confirm.js +3 -12
- package/es/modal/index.js +0 -4
- package/es/modal/modal.js +41 -63
- package/es/notification/content.js +13 -35
- package/es/notification/index.js +20 -35
- package/es/notification-base/index.js +4 -24
- package/es/notification-base/notice.js +12 -24
- package/es/notification-base/notification.js +3 -18
- package/es/pagination/pagination.js +76 -113
- package/es/popconfirm/popconfirm.js +22 -33
- package/es/progress/circle.js +9 -18
- package/es/progress/line.js +5 -9
- package/es/progress/progress.js +21 -44
- package/es/progress/utils.js +6 -22
- package/es/radio/group.js +19 -35
- package/es/radio/radio-button.js +6 -19
- package/es/radio/radio.js +19 -46
- package/es/rate/rate.js +30 -67
- package/es/search/option.js +10 -17
- package/es/search/quick-search.js +68 -155
- package/es/search/search-panel.js +28 -49
- package/es/search/search.js +23 -43
- package/es/select/interface.js +0 -1
- package/es/select/option.js +13 -25
- package/es/select/select.js +115 -222
- package/es/select/style/index.css +3 -0
- package/es/select/style/index.less +4 -0
- package/es/slider/marks.js +9 -15
- package/es/slider/slider.js +60 -104
- package/es/slider/sliderTooltip.js +9 -17
- package/es/slider/steps.js +8 -19
- package/es/slider/track.js +5 -8
- package/es/slider/utils.js +4 -14
- package/es/space/space.js +16 -34
- package/es/spin/spin.js +16 -32
- package/es/split-panel/split-panel.js +57 -83
- package/es/split-panel/trigger.js +8 -17
- package/es/stepper/stepper.js +27 -57
- package/es/steps/Step.js +18 -34
- package/es/steps/Steps.js +19 -38
- package/es/switch/switch.js +25 -43
- package/es/table/api.js +3 -37
- package/es/table/feature/autoRowSpan.js +0 -2
- package/es/table/feature/colGroupExtendable.js +0 -2
- package/es/table/feature/columnDrag.js +0 -2
- package/es/table/feature/columnResize.js +0 -2
- package/es/table/feature/contextMenu.js +0 -2
- package/es/table/feature/filter.js +0 -2
- package/es/table/feature/mergeCellHover.js +0 -2
- package/es/table/feature/rowDetail.js +0 -2
- package/es/table/feature/rowSelection.js +11 -21
- package/es/table/feature/sort.js +0 -2
- package/es/table/feature/treeMode.js +0 -2
- package/es/table/feature/useFooterDataSource.js +0 -2
- package/es/table/feature/useRangeSelection.js +0 -2
- package/es/table/table.js +36 -46
- package/es/tabs/active-line.js +6 -8
- package/es/tabs/arrow-button.js +5 -10
- package/es/tabs/index.js +2 -2
- package/es/tabs/tab-pane.js +7 -23
- package/es/tabs/tabs.js +42 -104
- package/es/tag/tag.js +34 -56
- package/es/timeline/Timeline.js +16 -33
- package/es/timeline/TimelineItem.js +15 -26
- package/es/tooltip/tooltip.js +7 -11
- package/es/transfer/list-body.js +12 -31
- package/es/transfer/list-item.js +10 -18
- package/es/transfer/list.js +35 -68
- package/es/transfer/operation.js +12 -14
- package/es/transfer/search.js +5 -11
- package/es/transfer/transfer.js +51 -100
- package/es/tree/tree.js +95 -156
- package/es/tree/treeHooks.js +18 -34
- package/es/tree/treeNode.js +57 -96
- package/es/tree/utils/treeUtils.js +22 -150
- package/es/typography/base.js +16 -33
- package/es/typography/index.js +2 -2
- package/es/typography/paragraph.js +0 -2
- package/es/typography/text.js +0 -2
- package/es/typography/title.js +3 -14
- package/es/typography/typography.js +14 -24
- package/es/upload/dragger.js +3 -12
- package/es/upload/request.js +6 -26
- package/es/upload/scan-files.js +2 -13
- package/es/upload/upload.js +63 -131
- package/es/upload/utils.js +0 -2
- package/es/upload/verify-file.js +0 -6
- package/es/view-container/view-container.js +7 -9
- package/es/virtual-list/Filler.js +3 -7
- package/es/virtual-list/utils/algorithmUtil.js +0 -13
- package/es/virtual-list/utils/itemUtil.js +18 -47
- package/es/virtual-list/virtual-list.js +64 -137
- package/lib/_utils/KeyCode.js +6 -120
- package/lib/_utils/arrayUtil.js +0 -9
- package/lib/_utils/devwarning.js +0 -5
- package/lib/_utils/formatUtil.js +36 -103
- package/lib/_utils/getStringLength.js +0 -3
- package/lib/_utils/hooks.js +32 -90
- package/lib/_utils/index.js +0 -6
- package/lib/_utils/numberUtil.js +32 -64
- package/lib/_utils/omit.js +0 -5
- package/lib/_utils/raf.js +0 -7
- package/lib/_utils/react-children.js +0 -5
- package/lib/_utils/reactNode.js +0 -9
- package/lib/_utils/resizeObserver.js +2 -25
- package/lib/_utils/testBrowserType.js +0 -3
- package/lib/_utils/type.js +0 -6
- package/lib/_utils/usePopper.js +84 -190
- package/lib/alert/alert.js +20 -74
- package/lib/alert/index.js +0 -3
- package/lib/alert/style/css.js +0 -1
- package/lib/alert/style/index.js +0 -1
- package/lib/anchor/anchor-link.js +12 -35
- package/lib/anchor/anchor.js +69 -204
- package/lib/anchor/context.js +0 -7
- package/lib/anchor/index.js +0 -4
- package/lib/anchor/style/css.js +0 -1
- package/lib/anchor/style/index.js +0 -1
- package/lib/avatar/avatar.js +29 -70
- package/lib/avatar/index.js +0 -9
- package/lib/avatar/style/css.js +0 -1
- package/lib/avatar/style/index.js +0 -1
- package/lib/badge/badge.js +33 -70
- package/lib/badge/index.js +0 -9
- package/lib/badge/style/css.js +0 -1
- package/lib/badge/style/index.js +0 -1
- package/lib/base-data/base-data.js +89 -218
- package/lib/base-data/index.js +0 -9
- package/lib/base-data/interface.js +0 -2
- package/lib/base-data/style/css.js +0 -1
- package/lib/base-data/style/index.js +0 -1
- package/lib/button/button.js +30 -72
- package/lib/button/group.js +27 -61
- package/lib/button/index.js +0 -4
- package/lib/button/style/css.js +0 -1
- package/lib/button/style/index.js +0 -1
- package/lib/card/card.js +19 -35
- package/lib/card/index.js +0 -9
- package/lib/card/style/css.js +0 -1
- package/lib/card/style/index.js +0 -1
- package/lib/carousel/carousel.js +31 -112
- package/lib/carousel/displayList.js +2 -14
- package/lib/carousel/fadeList.js +4 -16
- package/lib/carousel/index.js +0 -12
- package/lib/carousel/slideList.js +1 -14
- package/lib/carousel/slidebar.js +5 -22
- package/lib/carousel/style/css.js +0 -1
- package/lib/carousel/style/index.js +0 -1
- package/lib/cascader/cascader.js +56 -150
- package/lib/cascader/index.js +0 -9
- package/lib/cascader/style/css.js +0 -1
- package/lib/cascader/style/index.js +0 -1
- package/lib/cascader/util.js +10 -87
- package/lib/checkbox/checkbox.js +22 -69
- package/lib/checkbox/group.js +18 -59
- package/lib/checkbox/index.js +0 -9
- package/lib/checkbox/style/css.js +0 -1
- package/lib/checkbox/style/index.css +2 -0
- package/lib/checkbox/style/index.js +0 -1
- package/lib/checkbox/style/index.less +1 -0
- package/lib/city-picker/city-group.js +5 -24
- package/lib/city-picker/city-list.js +4 -21
- package/lib/city-picker/city-panel-item.js +3 -17
- package/lib/city-picker/city-panel.js +25 -64
- package/lib/city-picker/city-picker.js +22 -67
- package/lib/city-picker/city-search-panel.js +6 -25
- package/lib/city-picker/index.js +0 -9
- package/lib/city-picker/no-data.js +3 -15
- package/lib/city-picker/style/css.js +0 -1
- package/lib/city-picker/style/index.js +0 -1
- package/lib/city-picker/utils/grouping.js +0 -5
- package/lib/collapse/collapse.js +17 -62
- package/lib/collapse/index.js +0 -4
- package/lib/collapse/panel.js +21 -62
- package/lib/collapse/style/css.js +0 -1
- package/lib/collapse/style/index.js +0 -1
- package/lib/config-provider/ConfigContext.js +1 -4
- package/lib/config-provider/SizeContext.js +1 -6
- package/lib/config-provider/compDefaultProps.js +0 -8
- package/lib/config-provider/configProvider.js +3 -18
- package/lib/config-provider/defaultConfig.js +0 -5
- package/lib/config-provider/index.js +0 -6
- package/lib/date-picker/calendar.js +12 -35
- package/lib/date-picker/context.js +0 -7
- package/lib/date-picker/date-panel.js +22 -87
- package/lib/date-picker/date-picker.js +145 -214
- package/lib/date-picker/hooks/use-hover-value.js +5 -19
- package/lib/date-picker/hooks/use-picker-input.js +17 -37
- package/lib/date-picker/hooks/use-range-cls.js +8 -21
- package/lib/date-picker/hooks/use-range-disabled.js +7 -30
- package/lib/date-picker/hooks/use-range-view-dates.js +16 -49
- package/lib/date-picker/hooks/use-state-memo.js +0 -5
- package/lib/date-picker/hooks/use-text-value-mapping.js +6 -20
- package/lib/date-picker/hooks/use-value-texts.js +0 -5
- package/lib/date-picker/index.js +0 -4
- package/lib/date-picker/panel/date-time/date-time.js +7 -23
- package/lib/date-picker/panel/header/header.js +9 -21
- package/lib/date-picker/panel/month/month.js +11 -46
- package/lib/date-picker/panel/quarter/quarter.js +8 -40
- package/lib/date-picker/panel/time/time-column.js +8 -31
- package/lib/date-picker/panel/time/time.js +60 -106
- package/lib/date-picker/panel/week/week.js +25 -73
- package/lib/date-picker/panel/year/year.js +19 -56
- package/lib/date-picker/popper.js +28 -47
- package/lib/date-picker/range/input-range.js +95 -145
- package/lib/date-picker/range-picker.d.ts +1 -0
- package/lib/date-picker/range-picker.js +195 -327
- package/lib/date-picker/single/input-date.js +87 -127
- package/lib/date-picker/utils/date-fns.js +25 -136
- package/lib/date-picker/utils/get-extra-footer.js +0 -8
- package/lib/date-picker/utils/get-ranges.js +13 -24
- package/lib/date-picker/utils/index.js +9 -104
- package/lib/drawer/drawer.js +49 -95
- package/lib/drawer/index.js +0 -9
- package/lib/drawer/style/css.js +0 -1
- package/lib/drawer/style/index.js +0 -1
- package/lib/dropdown/dropdown.js +26 -56
- package/lib/dropdown/index.js +0 -9
- package/lib/dropdown/menu.d.ts +3 -2
- package/lib/dropdown/menu.js +29 -56
- package/lib/dropdown/style/css.js +0 -1
- package/lib/dropdown/style/index.js +0 -1
- package/lib/empty/defaultEmptyImg.js +2 -14
- package/lib/empty/empty.js +15 -42
- package/lib/empty/illustrationEmptyImg.js +2 -14
- package/lib/empty/index.js +0 -9
- package/lib/empty/style/css.js +0 -1
- package/lib/empty/style/index.js +0 -1
- package/lib/filter/condition.js +5 -28
- package/lib/filter/filter.js +29 -73
- package/lib/filter/index.js +0 -9
- package/lib/filter/scheme.js +35 -82
- package/lib/filter/style/css.js +0 -1
- package/lib/filter/style/index.js +0 -1
- package/lib/form/Field.js +36 -127
- package/lib/form/FieldContext.js +0 -6
- package/lib/form/FieldLabel.js +11 -29
- package/lib/form/FieldWrapper.js +6 -19
- package/lib/form/Form.js +28 -65
- package/lib/form/FormContext.js +0 -11
- package/lib/form/hooks/useForceUpdate.js +2 -9
- package/lib/form/hooks/useForm.js +10 -98
- package/lib/form/index.js +0 -12
- package/lib/form/style/css.js +0 -1
- package/lib/form/style/index.js +0 -1
- package/lib/grid/col.js +23 -51
- package/lib/grid/index.js +0 -3
- package/lib/grid/row.js +22 -49
- package/lib/grid/style/css.js +0 -1
- package/lib/grid/style/index.js +0 -1
- package/lib/icon/icon.js +11 -44
- package/lib/icon/index.js +0 -9
- package/lib/icon/interface.js +0 -6
- package/lib/icon/style/css.js +0 -1
- package/lib/icon/style/index.js +0 -1
- package/lib/image/image.js +31 -64
- package/lib/image/index.js +0 -9
- package/lib/image/preview-group.js +25 -54
- package/lib/image/preview.js +24 -57
- package/lib/image/style/css.js +0 -1
- package/lib/image/style/index.js +0 -1
- package/lib/image-cropper/cropper.js +11 -33
- package/lib/image-cropper/image-cropper.js +39 -89
- package/lib/image-cropper/index.js +0 -3
- package/lib/image-cropper/operation-bar.js +14 -44
- package/lib/image-cropper/style/css.js +0 -1
- package/lib/image-cropper/style/index.css +12 -1
- package/lib/image-cropper/style/index.js +0 -1
- package/lib/image-cropper/style/index.less +11 -2
- package/lib/index.js +2 -64
- package/lib/input/ClearableLabeledInput.js +27 -65
- package/lib/input/TextArea.js +45 -108
- package/lib/input/calculateNodeHeight.js +4 -23
- package/lib/input/index.js +0 -9
- package/lib/input/input.js +32 -87
- package/lib/input-number/index.js +0 -3
- package/lib/input-number/inputNumber.js +50 -129
- package/lib/input-number/style/css.js +0 -1
- package/lib/input-number/style/index.js +0 -1
- package/lib/layout/index.js +0 -9
- package/lib/layout/layout.js +28 -64
- package/lib/layout/sider.js +39 -89
- package/lib/layout/style/css.js +0 -1
- package/lib/layout/style/index.js +0 -1
- package/lib/link/index.js +0 -9
- package/lib/link/link.js +19 -50
- package/lib/link/style/css.js +0 -1
- package/lib/link/style/index.js +0 -1
- package/lib/locale/index.js +0 -7
- package/lib/locale/locale.js +6 -58
- package/lib/locale/zh-CN.js +0 -4
- package/lib/menu/index.js +0 -9
- package/lib/menu/menu.js +29 -83
- package/lib/menu/menuItem.js +27 -69
- package/lib/menu/style/css.js +0 -1
- package/lib/menu/style/index.js +0 -1
- package/lib/menu/subMenu.js +44 -122
- package/lib/menu/util.js +4 -28
- package/lib/message/content.js +7 -32
- package/lib/message/index.js +14 -33
- package/lib/message/style/css.js +0 -1
- package/lib/message/style/index.js +0 -1
- package/lib/modal/confirm.js +3 -21
- package/lib/modal/index.js +0 -14
- package/lib/modal/modal.js +41 -86
- package/lib/modal/style/css.js +0 -1
- package/lib/modal/style/index.js +0 -1
- package/lib/notification/content.js +15 -48
- package/lib/notification/index.js +20 -42
- package/lib/notification/style/css.js +0 -1
- package/lib/notification/style/index.js +0 -1
- package/lib/notification-base/index.js +4 -31
- package/lib/notification-base/notice.js +12 -38
- package/lib/notification-base/notification.js +3 -31
- package/lib/pagination/index.js +0 -3
- package/lib/pagination/pagination.js +76 -137
- package/lib/pagination/style/css.js +0 -1
- package/lib/pagination/style/index.js +0 -1
- package/lib/popconfirm/index.js +0 -9
- package/lib/popconfirm/popconfirm.js +22 -46
- package/lib/popconfirm/style/css.js +0 -1
- package/lib/popconfirm/style/index.js +0 -1
- package/lib/progress/circle.js +9 -25
- package/lib/progress/index.js +0 -3
- package/lib/progress/line.js +5 -11
- package/lib/progress/progress.js +21 -64
- package/lib/progress/style/css.js +0 -1
- package/lib/progress/style/index.js +0 -1
- package/lib/progress/utils.js +6 -30
- package/lib/radio/context.js +0 -7
- package/lib/radio/group.js +19 -53
- package/lib/radio/index.js +0 -5
- package/lib/radio/radio-button.js +6 -32
- package/lib/radio/radio.js +19 -66
- package/lib/radio/style/css.js +0 -1
- package/lib/radio/style/index.js +0 -1
- package/lib/rate/index.js +0 -3
- package/lib/rate/rate.js +30 -82
- package/lib/rate/style/css.js +0 -1
- package/lib/rate/style/index.js +0 -1
- package/lib/search/index.js +0 -7
- package/lib/search/interface.js +0 -2
- package/lib/search/option.js +10 -29
- package/lib/search/quick-search.js +68 -171
- package/lib/search/search-panel.js +28 -66
- package/lib/search/search.js +23 -63
- package/lib/search/style/css.js +0 -1
- package/lib/search/style/index.js +0 -1
- package/lib/select/index.js +0 -4
- package/lib/select/interface.js +0 -3
- package/lib/select/option.js +13 -40
- package/lib/select/select.js +115 -235
- package/lib/select/style/index.css +3 -0
- package/lib/select/style/index.less +4 -0
- package/lib/slider/index.js +0 -9
- package/lib/slider/marks.js +9 -22
- package/lib/slider/slider.js +58 -123
- package/lib/slider/sliderTooltip.js +9 -30
- package/lib/slider/steps.js +8 -24
- package/lib/slider/style/css.js +0 -1
- package/lib/slider/style/index.js +0 -1
- package/lib/slider/track.js +5 -11
- package/lib/slider/utils.js +4 -21
- package/lib/space/index.js +0 -9
- package/lib/space/space.js +16 -50
- package/lib/space/style/css.js +0 -1
- package/lib/space/style/index.js +0 -1
- package/lib/spin/index.js +0 -9
- package/lib/spin/spin.js +16 -50
- package/lib/spin/style/css.js +0 -1
- package/lib/spin/style/index.js +0 -1
- package/lib/split-panel/index.js +0 -9
- package/lib/split-panel/split-panel.js +57 -101
- package/lib/split-panel/style/css.js +0 -1
- package/lib/split-panel/style/index.js +0 -1
- package/lib/split-panel/trigger.js +8 -23
- package/lib/stepper/index.js +0 -9
- package/lib/stepper/stepper.js +27 -81
- package/lib/stepper/style/css.js +0 -1
- package/lib/stepper/style/index.js +0 -1
- package/lib/steps/Step.js +18 -40
- package/lib/steps/Steps.js +19 -55
- package/lib/steps/index.js +0 -5
- package/lib/steps/interface.js +0 -2
- package/lib/steps/style/css.js +0 -1
- package/lib/steps/style/index.js +0 -1
- package/lib/switch/index.js +0 -3
- package/lib/switch/style/css.js +0 -1
- package/lib/switch/style/index.js +0 -1
- package/lib/switch/switch.js +23 -59
- package/lib/table/api.js +3 -39
- package/lib/table/feature/autoRowSpan.js +0 -3
- package/lib/table/feature/colGroupExtendable.js +0 -3
- package/lib/table/feature/columnDrag.js +0 -3
- package/lib/table/feature/columnResize.js +0 -3
- package/lib/table/feature/contextMenu.js +0 -3
- package/lib/table/feature/filter.js +0 -6
- package/lib/table/feature/mergeCellHover.js +0 -3
- package/lib/table/feature/rowDetail.js +0 -5
- package/lib/table/feature/rowSelection.js +11 -24
- package/lib/table/feature/sort.js +0 -6
- package/lib/table/feature/treeMode.js +0 -5
- package/lib/table/feature/useFooterDataSource.js +0 -3
- package/lib/table/feature/useRangeSelection.js +0 -5
- package/lib/table/index.js +0 -3
- package/lib/table/style/css.js +0 -1
- package/lib/table/style/index.js +0 -1
- package/lib/table/table.js +36 -78
- package/lib/tabs/active-line.js +6 -17
- package/lib/tabs/arrow-button.js +5 -23
- package/lib/tabs/context.js +0 -7
- package/lib/tabs/index.js +2 -6
- package/lib/tabs/style/css.js +0 -1
- package/lib/tabs/style/index.js +0 -1
- package/lib/tabs/tab-pane.js +7 -38
- package/lib/tabs/tabs.js +42 -135
- package/lib/tag/index.js +0 -9
- package/lib/tag/style/css.js +0 -1
- package/lib/tag/style/index.js +0 -1
- package/lib/tag/tag.js +34 -74
- package/lib/timeline/Timeline.js +16 -45
- package/lib/timeline/TimelineItem.js +15 -39
- package/lib/timeline/index.js +0 -3
- package/lib/timeline/style/css.js +0 -1
- package/lib/timeline/style/index.js +0 -1
- package/lib/tooltip/index.js +0 -9
- package/lib/tooltip/style/css.js +0 -1
- package/lib/tooltip/style/index.js +0 -1
- package/lib/tooltip/tooltip.js +7 -24
- package/lib/transfer/index.js +0 -3
- package/lib/transfer/list-body.js +12 -48
- package/lib/transfer/list-item.js +10 -27
- package/lib/transfer/list.js +35 -89
- package/lib/transfer/operation.js +12 -18
- package/lib/transfer/search.js +5 -16
- package/lib/transfer/style/css.js +0 -1
- package/lib/transfer/style/index.js +0 -1
- package/lib/transfer/transfer.js +51 -122
- package/lib/tree/index.js +0 -11
- package/lib/tree/style/css.js +0 -1
- package/lib/tree/style/index.js +0 -1
- package/lib/tree/tree.js +95 -196
- package/lib/tree/treeHooks.js +18 -64
- package/lib/tree/treeNode.js +57 -126
- package/lib/tree/utils/treeUtils.js +22 -193
- package/lib/typography/base.js +16 -53
- package/lib/typography/index.js +2 -8
- package/lib/typography/paragraph.js +0 -11
- package/lib/typography/style/css.js +0 -1
- package/lib/typography/style/index.js +0 -1
- package/lib/typography/text.js +0 -6
- package/lib/typography/title.js +3 -21
- package/lib/typography/typography.js +12 -35
- package/lib/upload/dragger.js +3 -21
- package/lib/upload/index.js +0 -11
- package/lib/upload/request.js +6 -27
- package/lib/upload/scan-files.js +2 -15
- package/lib/upload/style/css.js +0 -1
- package/lib/upload/style/index.js +0 -1
- package/lib/upload/upload.js +63 -151
- package/lib/upload/utils.js +0 -6
- package/lib/upload/verify-file.js +0 -9
- package/lib/view-container/context.js +0 -7
- package/lib/view-container/index.js +0 -3
- package/lib/view-container/view-container.js +7 -21
- package/lib/virtual-list/Filler.js +3 -15
- package/lib/virtual-list/index.js +0 -9
- package/lib/virtual-list/utils/algorithmUtil.js +0 -15
- package/lib/virtual-list/utils/itemUtil.js +18 -60
- package/lib/virtual-list/virtual-list.js +63 -158
- package/package.json +3 -2
package/es/_utils/usePopper.js
CHANGED
|
@@ -15,14 +15,11 @@ import devWarning from '../_utils/devwarning';
|
|
|
15
15
|
import { useResizeObserver } from './hooks';
|
|
16
16
|
export var Placements = tuple('top', 'left', 'right', 'bottom', 'topLeft', 'topRight', 'bottomLeft', 'bottomRight', 'leftTop', 'leftBottom', 'rightTop', 'rightBottom');
|
|
17
17
|
export var Triggers = tuple('hover', 'focus', 'click', 'contextMenu');
|
|
18
|
-
|
|
19
18
|
function getTranslate(node, param) {
|
|
20
19
|
var _a;
|
|
21
|
-
|
|
22
20
|
var translates = ((_a = document.defaultView) === null || _a === void 0 ? void 0 : _a.getComputedStyle(node, null).transform.substring(7)) || '';
|
|
23
21
|
var result = translates.match(/\(([^)]*)\)/);
|
|
24
22
|
var matrix = result ? result[1].split(',') : translates.split(',');
|
|
25
|
-
|
|
26
23
|
if (param === 'x' || param === undefined) {
|
|
27
24
|
return matrix.length > 6 ? parseFloat(matrix[12]) : parseFloat(matrix[4]);
|
|
28
25
|
} else if (param === 'y') {
|
|
@@ -35,14 +32,12 @@ function getTranslate(node, param) {
|
|
|
35
32
|
}));
|
|
36
33
|
}
|
|
37
34
|
}
|
|
38
|
-
|
|
39
35
|
function getRotate(matrix) {
|
|
40
36
|
var aa = Math.round(180 * Math.asin(matrix[0]) / Math.PI);
|
|
41
37
|
var bb = Math.round(180 * Math.acos(matrix[1]) / Math.PI);
|
|
42
38
|
var cc = Math.round(180 * Math.asin(matrix[2]) / Math.PI);
|
|
43
39
|
var dd = Math.round(180 * Math.acos(matrix[3]) / Math.PI);
|
|
44
40
|
var deg = 0;
|
|
45
|
-
|
|
46
41
|
if (aa === bb || -aa === bb) {
|
|
47
42
|
deg = dd;
|
|
48
43
|
} else if (-aa + bb === 180) {
|
|
@@ -50,64 +45,51 @@ function getRotate(matrix) {
|
|
|
50
45
|
} else if (aa + bb === 180) {
|
|
51
46
|
deg = 360 - cc || 360 - dd;
|
|
52
47
|
}
|
|
53
|
-
|
|
54
48
|
return deg >= 360 ? 0 : deg;
|
|
55
49
|
}
|
|
56
|
-
|
|
57
50
|
var getTranslatePos = function getTranslatePos(el) {
|
|
58
51
|
var elPos = {
|
|
59
52
|
top: getTranslate(el, 'y') || 0,
|
|
60
53
|
left: getTranslate(el, 'x') || 0
|
|
61
54
|
};
|
|
62
|
-
|
|
63
55
|
if (el.parentElement) {
|
|
64
56
|
var parentPos = getTranslatePos(el.parentElement);
|
|
65
57
|
elPos.top += parentPos.top;
|
|
66
58
|
elPos.left += parentPos.left;
|
|
67
59
|
}
|
|
68
|
-
|
|
69
60
|
return elPos;
|
|
70
61
|
};
|
|
71
|
-
|
|
72
62
|
var getOffsetPos = function getOffsetPos(el) {
|
|
73
63
|
var elPos = {
|
|
74
64
|
top: el.offsetTop,
|
|
75
65
|
left: el.offsetLeft
|
|
76
66
|
};
|
|
77
|
-
|
|
78
67
|
if (el.offsetParent) {
|
|
79
68
|
var parentPos = getOffsetPos(el.offsetParent);
|
|
80
69
|
elPos.top += parentPos.top;
|
|
81
70
|
elPos.left += parentPos.left;
|
|
82
71
|
}
|
|
83
|
-
|
|
84
72
|
return elPos;
|
|
85
73
|
};
|
|
86
|
-
|
|
87
74
|
var getBorderWidth = function getBorderWidth(el) {
|
|
88
75
|
var border = {
|
|
89
76
|
top: 0,
|
|
90
77
|
left: 0
|
|
91
78
|
};
|
|
92
|
-
|
|
93
79
|
if (el.offsetParent) {
|
|
94
80
|
var _context, _context2;
|
|
95
|
-
|
|
96
81
|
var parentBorder = getBorderWidth(el.offsetParent);
|
|
97
82
|
border.top += parentBorder.top + parseInt(_sliceInstanceProperty(_context = getComputedStyle(el.offsetParent, null).borderTopWidth).call(_context, 0, -2));
|
|
98
83
|
border.left += parentBorder.left + parseInt(_sliceInstanceProperty(_context2 = getComputedStyle(el.offsetParent, null).borderTopWidth).call(_context2, 0, -2));
|
|
99
84
|
}
|
|
100
|
-
|
|
101
85
|
return border;
|
|
102
86
|
};
|
|
103
|
-
|
|
104
87
|
var getScrollDist = function getScrollDist(el, container) {
|
|
105
88
|
var elScroll = {
|
|
106
89
|
top: el.scrollTop,
|
|
107
90
|
left: el.scrollLeft
|
|
108
91
|
};
|
|
109
92
|
var isFixed = getComputedStyle(el, null).getPropertyValue('position') === 'fixed';
|
|
110
|
-
|
|
111
93
|
if (isFixed) {
|
|
112
94
|
elScroll.top -= document.documentElement.scrollTop;
|
|
113
95
|
elScroll.left -= document.documentElement.scrollLeft;
|
|
@@ -116,52 +98,49 @@ var getScrollDist = function getScrollDist(el, container) {
|
|
|
116
98
|
elScroll.top += parentScroll.top;
|
|
117
99
|
elScroll.left += parentScroll.left;
|
|
118
100
|
}
|
|
119
|
-
|
|
120
101
|
return elScroll;
|
|
121
102
|
};
|
|
122
|
-
|
|
123
103
|
function usePopper(locatorElement, popperElement, props) {
|
|
124
104
|
var _context3, _context4, _arrowStyle;
|
|
125
|
-
|
|
126
105
|
var prefixCls = props.prefixCls,
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
106
|
+
onTrigger = props.onTrigger,
|
|
107
|
+
popperStyle = props.popperStyle,
|
|
108
|
+
_props$arrow = props.arrow,
|
|
109
|
+
arrow = _props$arrow === void 0 ? false : _props$arrow,
|
|
110
|
+
onVisibleChange = props.onVisibleChange,
|
|
111
|
+
popperClassName = props.popperClassName,
|
|
112
|
+
_props$arrowOffset = props.arrowOffset,
|
|
113
|
+
arrowOffset = _props$arrowOffset === void 0 ? 12 : _props$arrowOffset,
|
|
114
|
+
_props$arrowSize = props.arrowSize,
|
|
115
|
+
arrowSize = _props$arrowSize === void 0 ? 4.25 : _props$arrowSize,
|
|
116
|
+
_props$disabled = props.disabled,
|
|
117
|
+
disabled = _props$disabled === void 0 ? false : _props$disabled,
|
|
118
|
+
_props$trigger = props.trigger,
|
|
119
|
+
trigger = _props$trigger === void 0 ? 'click' : _props$trigger,
|
|
120
|
+
_props$placement = props.placement,
|
|
121
|
+
placement = _props$placement === void 0 ? 'top' : _props$placement,
|
|
122
|
+
_props$gap = props.gap,
|
|
123
|
+
defaultGap = _props$gap === void 0 ? 4 : _props$gap,
|
|
124
|
+
_props$scrollHidden = props.scrollHidden,
|
|
125
|
+
scrollHidden = _props$scrollHidden === void 0 ? false : _props$scrollHidden,
|
|
126
|
+
_props$mouseEnterDela = props.mouseEnterDelay,
|
|
127
|
+
mouseEnterDelay = _props$mouseEnterDela === void 0 ? 0.1 : _props$mouseEnterDela,
|
|
128
|
+
_props$mouseLeaveDela = props.mouseLeaveDelay,
|
|
129
|
+
mouseLeaveDelay = _props$mouseLeaveDela === void 0 ? 0.1 : _props$mouseLeaveDela,
|
|
130
|
+
_props$defaultVisible = props.defaultVisible,
|
|
131
|
+
defaultVisible = _props$defaultVisible === void 0 ? false : _props$defaultVisible,
|
|
132
|
+
_props$autoPlacement = props.autoPlacement,
|
|
133
|
+
autoPlacement = _props$autoPlacement === void 0 ? true : _props$autoPlacement,
|
|
134
|
+
_props$clickToClose = props.clickToClose,
|
|
135
|
+
clickToClose = _props$clickToClose === void 0 ? true : _props$clickToClose,
|
|
136
|
+
_props$getTriggerElem = props.getTriggerElement,
|
|
137
|
+
getTriggerElement = _props$getTriggerElem === void 0 ? function (locatorNode) {
|
|
138
|
+
return locatorNode;
|
|
139
|
+
} : _props$getTriggerElem,
|
|
140
|
+
_props$getPopupContai = props.getPopupContainer,
|
|
141
|
+
getPopupContainer = _props$getPopupContai === void 0 ? function () {
|
|
142
|
+
return document.body;
|
|
143
|
+
} : _props$getPopupContai;
|
|
165
144
|
var arrowWidth = Math.sqrt(2 * Math.pow(arrowSize, 2));
|
|
166
145
|
var componentName = (prefixCls === null || prefixCls === void 0 ? void 0 : prefixCls.split('-')[1]) || '';
|
|
167
146
|
devWarning(Placements.indexOf(placement) === -1, componentName, _concatInstanceProperty(_context3 = "cannot found ".concat(componentName, " placement '")).call(_context3, placement, "'"));
|
|
@@ -174,14 +153,12 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
174
153
|
var locatorRef = locatorElement.ref || locatorEl;
|
|
175
154
|
var popperRef = popperElement.ref || popperEl;
|
|
176
155
|
var container = getPopupContainer(locatorRef.current || document.body);
|
|
177
|
-
|
|
178
156
|
_Promise.resolve().then(function () {
|
|
179
157
|
var triggerNode = getTriggerElement(locatorRef.current);
|
|
180
158
|
var container = getPopupContainer(locatorRef.current);
|
|
181
159
|
devWarning(!triggerNode, componentName, "getTriggerElement() must return a HTMLElement, but now it does not return anything");
|
|
182
160
|
devWarning(!container, componentName, "getPopupContainer() must return a HTMLElement, but now it does not return anything");
|
|
183
161
|
});
|
|
184
|
-
|
|
185
162
|
var initPos = {
|
|
186
163
|
top: 0,
|
|
187
164
|
left: 0,
|
|
@@ -195,37 +172,30 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
195
172
|
left: 0
|
|
196
173
|
};
|
|
197
174
|
var gap = defaultGap + (arrow ? 10 : 0);
|
|
198
|
-
|
|
199
175
|
var _useState = useState(initPos),
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
176
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
177
|
+
mousePos = _useState2[0],
|
|
178
|
+
setMousePos = _useState2[1];
|
|
204
179
|
var _useState3 = useState(initAlign),
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
180
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
181
|
+
arrowPos = _useState4[0],
|
|
182
|
+
setArrowPos = _useState4[1];
|
|
209
183
|
var _useState5 = useState(!!props.visible || defaultVisible),
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
184
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
185
|
+
exist = _useState6[0],
|
|
186
|
+
setExist = _useState6[1];
|
|
214
187
|
var _useState7 = useState(!!props.visible || defaultVisible),
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
188
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
189
|
+
canAlign = _useState8[0],
|
|
190
|
+
setCanAlign = _useState8[1];
|
|
219
191
|
var _useState9 = useState(false),
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
192
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
193
|
+
visible = _useState10[0],
|
|
194
|
+
setVisible = _useState10[1];
|
|
224
195
|
var _useState11 = useState(false),
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
196
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
197
|
+
active = _useState12[0],
|
|
198
|
+
setActive = _useState12[1];
|
|
229
199
|
useEffect(function () {
|
|
230
200
|
if (props.visible) {
|
|
231
201
|
!exist && setExist(true);
|
|
@@ -235,56 +205,45 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
235
205
|
setVisible(false);
|
|
236
206
|
}
|
|
237
207
|
}, [exist, props.visible]);
|
|
238
|
-
|
|
239
208
|
var _useState13 = useState(''),
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
209
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
210
|
+
evType = _useState14[0],
|
|
211
|
+
setEvType = _useState14[1];
|
|
244
212
|
var _useState15 = useState(),
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
213
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
|
214
|
+
align = _useState16[0],
|
|
215
|
+
setAlign = _useState16[1];
|
|
249
216
|
var _useState17 = useState(placement),
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
217
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
|
218
|
+
nextPlacement = _useState18[0],
|
|
219
|
+
setNextPlacement = _useState18[1];
|
|
254
220
|
var alignPopper = useCallback(function () {
|
|
255
221
|
if ((locatorRef === null || locatorRef === void 0 ? void 0 : locatorRef.current) && (popperRef === null || popperRef === void 0 ? void 0 : popperRef.current)) {
|
|
256
222
|
var _popperRef$current$ge = popperRef.current.getBoundingClientRect(),
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
223
|
+
popperWidth = _popperRef$current$ge.width,
|
|
224
|
+
popperHeight = _popperRef$current$ge.height;
|
|
260
225
|
var _locatorRef$current$g = locatorRef.current.getBoundingClientRect(),
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
226
|
+
top = _locatorRef$current$g.top,
|
|
227
|
+
bottom = _locatorRef$current$g.bottom,
|
|
228
|
+
left = _locatorRef$current$g.left,
|
|
229
|
+
right = _locatorRef$current$g.right,
|
|
230
|
+
height = _locatorRef$current$g.height,
|
|
231
|
+
width = _locatorRef$current$g.width;
|
|
268
232
|
var _getOffsetPos = getOffsetPos(container),
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
233
|
+
containerTop = _getOffsetPos.top,
|
|
234
|
+
containerLeft = _getOffsetPos.left;
|
|
272
235
|
var _getOffsetPos2 = getOffsetPos(locatorRef.current),
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
236
|
+
locatorTop = _getOffsetPos2.top,
|
|
237
|
+
locatorLeft = _getOffsetPos2.left;
|
|
276
238
|
var _getTranslatePos = getTranslatePos(locatorRef.current),
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
239
|
+
translateTop = _getTranslatePos.top,
|
|
240
|
+
translateLeft = _getTranslatePos.left;
|
|
280
241
|
var _getBorderWidth = getBorderWidth(locatorRef.current),
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
242
|
+
borderTop = _getBorderWidth.top,
|
|
243
|
+
borderLeft = _getBorderWidth.left;
|
|
284
244
|
var _getScrollDist = getScrollDist(locatorRef.current.parentElement, container),
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
245
|
+
scrollTop = _getScrollDist.top,
|
|
246
|
+
scrollLeft = _getScrollDist.left;
|
|
288
247
|
var locatorPos = {
|
|
289
248
|
width: width,
|
|
290
249
|
height: height,
|
|
@@ -295,53 +254,41 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
295
254
|
};
|
|
296
255
|
var currentPos = trigger === 'contextMenu' ? mousePos : locatorPos;
|
|
297
256
|
var currentPlacement = nextPlacement;
|
|
298
|
-
|
|
299
257
|
if (autoPlacement) {
|
|
300
258
|
var _context5;
|
|
301
|
-
|
|
302
259
|
if (top - gap - popperHeight <= 5 && bottom + gap + popperHeight < document.body.clientHeight - 5) {
|
|
303
260
|
currentPlacement = currentPlacement.replace('top', 'bottom');
|
|
304
261
|
}
|
|
305
|
-
|
|
306
262
|
if (bottom + gap + popperHeight >= document.body.clientHeight - 5 && top - gap - popperHeight > 5) {
|
|
307
263
|
currentPlacement = currentPlacement.replace('bottom', 'top');
|
|
308
264
|
}
|
|
309
|
-
|
|
310
265
|
if (left + popperWidth >= document.body.clientWidth - 5 && right - popperWidth > 5) {
|
|
311
266
|
currentPlacement = currentPlacement.replace('Left', 'Right');
|
|
312
267
|
}
|
|
313
|
-
|
|
314
268
|
if (right - popperWidth <= 5 && left + popperWidth < document.body.clientWidth - 5) {
|
|
315
269
|
currentPlacement = currentPlacement.replace('Right', 'Left');
|
|
316
270
|
}
|
|
317
|
-
|
|
318
271
|
if (top + popperHeight >= document.body.clientHeight - 5 && bottom - popperHeight > 5) {
|
|
319
272
|
currentPlacement = currentPlacement.replace('Top', 'Bottom');
|
|
320
273
|
}
|
|
321
|
-
|
|
322
274
|
if (bottom - popperHeight <= 5 && top + popperHeight < document.body.clientHeight - 5) {
|
|
323
275
|
currentPlacement = currentPlacement.replace('Bottom', 'Top');
|
|
324
276
|
}
|
|
325
|
-
|
|
326
277
|
if (left - gap - popperWidth <= 5 && right + gap + popperWidth < document.body.clientWidth - 5) {
|
|
327
278
|
currentPlacement = currentPlacement.replace('left', 'right');
|
|
328
279
|
}
|
|
329
|
-
|
|
330
280
|
if (right + gap + popperWidth >= document.body.clientWidth - 5 && left - gap - popperWidth > 5) {
|
|
331
281
|
currentPlacement = currentPlacement.replace('right', 'left');
|
|
332
282
|
}
|
|
333
|
-
|
|
334
283
|
if (_includesInstanceProperty(_context5 = ['top', 'bottom']).call(_context5, currentPlacement)) {
|
|
335
284
|
if (right - width / 2 + popperWidth / 2 >= document.body.clientWidth - 5 && right - popperWidth > 5) {
|
|
336
285
|
currentPlacement += 'Right';
|
|
337
286
|
}
|
|
338
|
-
|
|
339
287
|
if (left - width / 2 - popperWidth / 2 <= 5 && left + popperWidth < document.body.clientWidth - 5) {
|
|
340
288
|
currentPlacement += 'Left';
|
|
341
289
|
}
|
|
342
290
|
}
|
|
343
291
|
}
|
|
344
|
-
|
|
345
292
|
var leftLeft = currentPos.left - popperWidth - gap;
|
|
346
293
|
var topTop = currentPos.top - gap - popperHeight;
|
|
347
294
|
var bottomTop = currentPos.top + currentPos.height + gap;
|
|
@@ -405,7 +352,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
405
352
|
top: 0,
|
|
406
353
|
left: 0
|
|
407
354
|
};
|
|
408
|
-
|
|
409
355
|
if (/left/.test(currentPlacement) || /right/.test(currentPlacement)) {
|
|
410
356
|
if (/Top/.test(currentPlacement)) {
|
|
411
357
|
_arrowPos.top = arrowOffset;
|
|
@@ -414,7 +360,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
414
360
|
} else {
|
|
415
361
|
_arrowPos.top = (popperHeight - arrowWidth) / 2 - 1;
|
|
416
362
|
}
|
|
417
|
-
|
|
418
363
|
if (top <= 0) {
|
|
419
364
|
alignPos.top = locatorPos.top;
|
|
420
365
|
_arrowPos.top = arrowOffset;
|
|
@@ -423,14 +368,11 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
423
368
|
_arrowPos.top = popperHeight - arrowOffset - 2 * arrowSize;
|
|
424
369
|
} else {
|
|
425
370
|
var _scrollTop = alignPos.top - window.pageYOffset;
|
|
426
|
-
|
|
427
371
|
var scrollBottom = alignPos.top + popperHeight - 5 - window.pageYOffset;
|
|
428
|
-
|
|
429
372
|
if (_scrollTop < 0) {
|
|
430
373
|
alignPos.top -= _scrollTop;
|
|
431
374
|
_arrowPos.top += _scrollTop;
|
|
432
375
|
}
|
|
433
|
-
|
|
434
376
|
if (scrollBottom > document.body.clientHeight) {
|
|
435
377
|
alignPos.top += document.body.clientHeight - scrollBottom;
|
|
436
378
|
_arrowPos.top += scrollBottom - document.body.clientHeight;
|
|
@@ -444,7 +386,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
444
386
|
} else {
|
|
445
387
|
_arrowPos.left = (popperWidth - arrowWidth) / 2 - 1;
|
|
446
388
|
}
|
|
447
|
-
|
|
448
389
|
if (left <= 0) {
|
|
449
390
|
alignPos.left = locatorPos.left;
|
|
450
391
|
_arrowPos.left = arrowOffset;
|
|
@@ -454,7 +395,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
454
395
|
_arrowPos.left = popperWidth - arrowOffset - 2 * arrowSize;
|
|
455
396
|
}
|
|
456
397
|
}
|
|
457
|
-
|
|
458
398
|
setAlign(alignPos);
|
|
459
399
|
setArrowPos(_arrowPos);
|
|
460
400
|
setNextPlacement(currentPlacement);
|
|
@@ -475,11 +415,9 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
475
415
|
var arrowStyle = (_arrowStyle = {}, _defineProperty(_arrowStyle, "--arrowSize", arrowSize + 'px'), _defineProperty(_arrowStyle, "--arrowSpill", arrowWidth / -2 + 'px'), _arrowStyle);
|
|
476
416
|
if (arrowPos.top) arrowStyle["--arrowTop"] = arrowPos.top + 'px';
|
|
477
417
|
if (arrowPos.left) arrowStyle["--arrowLeft"] = arrowPos.left + 'px';
|
|
478
|
-
|
|
479
418
|
var popperContainerStyle = _extends(_extends(_extends({
|
|
480
419
|
position: 'absolute'
|
|
481
420
|
}, align), arrow ? arrowStyle : {}), popperStyle);
|
|
482
|
-
|
|
483
421
|
var popperProps = {
|
|
484
422
|
ref: popperRef,
|
|
485
423
|
style: popperContainerStyle,
|
|
@@ -496,7 +434,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
496
434
|
if (!disabled) {
|
|
497
435
|
!exist && setExist(true);
|
|
498
436
|
setEvType(evType);
|
|
499
|
-
|
|
500
437
|
if (onTrigger) {
|
|
501
438
|
var mapTrigger = {
|
|
502
439
|
mouseenter: 'hover',
|
|
@@ -506,7 +443,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
506
443
|
};
|
|
507
444
|
onTrigger(mapTrigger[evType]);
|
|
508
445
|
}
|
|
509
|
-
|
|
510
446
|
if (!visible || evType === 'contextmenu') {
|
|
511
447
|
setCanAlign(true);
|
|
512
448
|
}
|
|
@@ -516,16 +452,13 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
516
452
|
props.visible === undefined && setVisible(false);
|
|
517
453
|
onVisibleChange && onVisibleChange(false);
|
|
518
454
|
}, [onVisibleChange, props.visible]);
|
|
519
|
-
|
|
520
455
|
var matchTrigger = function matchTrigger(words) {
|
|
521
456
|
return Array.isArray(trigger) ? _includesInstanceProperty(trigger).call(trigger, words) : trigger === words;
|
|
522
457
|
};
|
|
523
|
-
|
|
524
458
|
useEffect(function () {
|
|
525
459
|
if (exist && visible) {
|
|
526
460
|
var mouseleaveTimer;
|
|
527
461
|
var triggerNode = getTriggerElement(locatorRef.current);
|
|
528
|
-
|
|
529
462
|
var handleHidePopper = function handleHidePopper(e) {
|
|
530
463
|
var triggerRect = triggerNode.getBoundingClientRect();
|
|
531
464
|
var popperRect = popperRef.current.getBoundingClientRect();
|
|
@@ -534,11 +467,10 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
534
467
|
var top = triggerRect.top;
|
|
535
468
|
var bottom = triggerRect.bottom;
|
|
536
469
|
var X = e.clientX,
|
|
537
|
-
|
|
470
|
+
Y = e.clientY;
|
|
538
471
|
var inTriggerRect = X > left + 2 && X < right - 2 && Y > top + 2 && Y < bottom - 2;
|
|
539
472
|
var inPopperRect = X > popperRect.left && X < popperRect.right && Y > popperRect.top && Y < popperRect.bottom;
|
|
540
473
|
var ableArea = matchTrigger('contextMenu') ? inPopperRect : inTriggerRect || inPopperRect;
|
|
541
|
-
|
|
542
474
|
if (ableArea) {
|
|
543
475
|
mouseleaveTimer && clearTimeout(mouseleaveTimer);
|
|
544
476
|
matchTrigger('focus') && triggerNode.focus();
|
|
@@ -551,7 +483,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
551
483
|
}
|
|
552
484
|
}
|
|
553
485
|
};
|
|
554
|
-
|
|
555
486
|
var debounceHidePopper = debounce(handleHidePopper, 10, {
|
|
556
487
|
leading: true
|
|
557
488
|
});
|
|
@@ -561,14 +492,12 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
561
492
|
focus: 'mousedown',
|
|
562
493
|
contextMenu: 'mousedown'
|
|
563
494
|
};
|
|
564
|
-
|
|
565
495
|
if (matchTrigger('hover')) {
|
|
566
496
|
triggerNode === null || triggerNode === void 0 ? void 0 : triggerNode.removeEventListener('mouseleave', debounceHidePopper);
|
|
567
497
|
popperNode === null || popperNode === void 0 ? void 0 : popperNode.removeEventListener('mouseleave', debounceHidePopper);
|
|
568
498
|
triggerNode === null || triggerNode === void 0 ? void 0 : triggerNode.addEventListener('mouseleave', debounceHidePopper);
|
|
569
499
|
popperNode === null || popperNode === void 0 ? void 0 : popperNode.addEventListener('mouseleave', debounceHidePopper);
|
|
570
500
|
}
|
|
571
|
-
|
|
572
501
|
Array.isArray(trigger) ? trigger.forEach(function (action) {
|
|
573
502
|
return document.addEventListener(mapEvent[action], debounceHidePopper);
|
|
574
503
|
}) : document.addEventListener(mapEvent[trigger], debounceHidePopper);
|
|
@@ -585,12 +514,10 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
585
514
|
if (visible) {
|
|
586
515
|
var scrollAlign = debounce(function (e) {
|
|
587
516
|
var isPopperScroll = e.target === popperRef.current || popperRef.current.contains(e.target);
|
|
588
|
-
|
|
589
517
|
if (scrollHidden && !isPopperScroll) {
|
|
590
518
|
props.visible === undefined && setVisible(false);
|
|
591
519
|
onVisibleChange && onVisibleChange(false);
|
|
592
520
|
}
|
|
593
|
-
|
|
594
521
|
alignPopper();
|
|
595
522
|
}, 10);
|
|
596
523
|
window.addEventListener('resize', alignPopper);
|
|
@@ -607,14 +534,11 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
607
534
|
}, [alignPopper, exist, onVisibleChange, popperNode, props.visible, scrollHidden, locatorNode, visible, popperRef]);
|
|
608
535
|
React.useEffect(function () {
|
|
609
536
|
var triggerNode = getTriggerElement(locatorRef.current);
|
|
610
|
-
|
|
611
537
|
if (triggerNode) {
|
|
612
538
|
var mouseenterTimer;
|
|
613
|
-
|
|
614
539
|
var clearMouseLeave = function clearMouseLeave() {
|
|
615
540
|
return clearTimeout(mouseenterTimer);
|
|
616
541
|
};
|
|
617
|
-
|
|
618
542
|
var addAction = function addAction(action) {
|
|
619
543
|
if (action === 'hover') {
|
|
620
544
|
triggerNode.addEventListener('mouseenter', debounceShowPopper);
|
|
@@ -623,7 +547,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
623
547
|
triggerNode.addEventListener(action, debounceShowPopper);
|
|
624
548
|
}
|
|
625
549
|
};
|
|
626
|
-
|
|
627
550
|
var removeAction = function removeAction(action) {
|
|
628
551
|
if (action === 'hover') {
|
|
629
552
|
triggerNode.removeEventListener('mouseenter', debounceShowPopper);
|
|
@@ -632,10 +555,8 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
632
555
|
triggerNode.removeEventListener(action, debounceShowPopper);
|
|
633
556
|
}
|
|
634
557
|
};
|
|
635
|
-
|
|
636
558
|
var handleShowPopper = function handleShowPopper(e) {
|
|
637
559
|
e.preventDefault();
|
|
638
|
-
|
|
639
560
|
if (e.type === 'contextmenu') {
|
|
640
561
|
var currentMousePos = _extends(_extends({}, mousePos), {
|
|
641
562
|
left: e.pageX,
|
|
@@ -643,10 +564,8 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
643
564
|
right: e.pageX,
|
|
644
565
|
bottom: e.pageY
|
|
645
566
|
});
|
|
646
|
-
|
|
647
567
|
setMousePos(currentMousePos);
|
|
648
568
|
}
|
|
649
|
-
|
|
650
569
|
if (e.type === 'mouseenter') {
|
|
651
570
|
mouseenterTimer = window.setTimeout(function () {
|
|
652
571
|
return showPopper(e.type);
|
|
@@ -657,7 +576,6 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
657
576
|
showPopper(e.type);
|
|
658
577
|
}
|
|
659
578
|
};
|
|
660
|
-
|
|
661
579
|
var debounceShowPopper = debounce(handleShowPopper, 10, {
|
|
662
580
|
leading: true
|
|
663
581
|
});
|
|
@@ -683,5 +601,4 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
683
601
|
var Popper = /*#__PURE__*/React.createElement("div", _extends({}, popperProps), popperElement);
|
|
684
602
|
return /*#__PURE__*/React.createElement(React.Fragment, null, Locator, exist && container && /*#__PURE__*/ReactDOM.createPortal(Popper, container));
|
|
685
603
|
}
|
|
686
|
-
|
|
687
604
|
export default usePopper;
|