@kdcloudjs/kdesign 1.6.33 → 1.6.35
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 +14 -0
- package/dist/kdesign-complete.less +8 -9
- package/dist/kdesign.css +9 -5
- package/dist/kdesign.css.map +1 -1
- package/dist/kdesign.js +9332 -11853
- package/dist/kdesign.js.map +1 -1
- package/dist/kdesign.min.css +4 -4
- 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 +20 -60
- 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 +196 -284
- 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/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/rate/style/index.css +3 -3
- package/es/rate/style/index.less +3 -9
- 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 +114 -221
- 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/style/icon/kdicon.css +0 -1
- package/es/switch/switch.js +25 -43
- package/es/table/api.d.ts +4 -0
- package/es/table/api.js +128 -0
- 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/interface.d.ts +3 -0
- package/es/table/table.js +38 -54
- 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 +20 -81
- 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 +194 -324
- 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.js +0 -1
- 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.css +3 -3
- package/lib/rate/style/index.js +0 -1
- package/lib/rate/style/index.less +3 -9
- 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 +114 -234
- 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/style/icon/kdicon.css +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.d.ts +4 -0
- package/lib/table/api.js +135 -0
- 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/interface.d.ts +3 -0
- package/lib/table/style/css.js +0 -1
- package/lib/table/style/index.js +0 -1
- package/lib/table/table.js +38 -85
- 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
|
@@ -1,70 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _typeof3 = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
-
|
|
5
4
|
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
6
|
-
|
|
7
5
|
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
8
|
-
|
|
9
6
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
10
|
-
|
|
11
7
|
Object.defineProperty(exports, "__esModule", {
|
|
12
8
|
value: true
|
|
13
9
|
});
|
|
14
10
|
exports.default = void 0;
|
|
15
11
|
exports.isNumber = isNumber;
|
|
16
|
-
|
|
17
12
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/typeof"));
|
|
18
|
-
|
|
19
13
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
20
|
-
|
|
21
14
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
22
|
-
|
|
23
15
|
var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
|
|
24
|
-
|
|
25
16
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
26
|
-
|
|
27
17
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
|
|
28
|
-
|
|
29
18
|
var _entries = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/entries"));
|
|
30
|
-
|
|
31
19
|
var _findIndex = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find-index"));
|
|
32
|
-
|
|
33
20
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
34
|
-
|
|
35
21
|
var _react = _interopRequireWildcard(require("react"));
|
|
36
|
-
|
|
37
22
|
var _itemUtil = require("./utils/itemUtil");
|
|
38
|
-
|
|
39
23
|
var _raf = require("../_utils/raf");
|
|
40
|
-
|
|
41
24
|
var _hooks = require("../_utils/hooks");
|
|
42
|
-
|
|
43
25
|
var _algorithmUtil = require("./utils/algorithmUtil");
|
|
44
|
-
|
|
45
26
|
var _Filler = _interopRequireDefault(require("./Filler"));
|
|
46
|
-
|
|
47
27
|
var _resizeObserver = _interopRequireDefault(require("../_utils/resizeObserver"));
|
|
48
|
-
|
|
49
28
|
var _context;
|
|
50
|
-
|
|
51
29
|
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
52
|
-
|
|
53
30
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
54
|
-
|
|
55
31
|
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
56
32
|
var t = {};
|
|
57
|
-
|
|
58
|
-
for (var p in s) {
|
|
59
|
-
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
60
|
-
}
|
|
61
|
-
|
|
33
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
62
34
|
if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
|
|
63
35
|
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
64
36
|
}
|
|
65
37
|
return t;
|
|
66
|
-
};
|
|
67
|
-
|
|
38
|
+
};
|
|
39
|
+
// Reference: https://github.com/arco-design/arco-design/blob/main/components/_class/VirtualList/index.tsx
|
|
68
40
|
|
|
69
41
|
function isNumber(obj) {
|
|
70
42
|
return Object.prototype.toString.call(obj) === '[object Number]' && obj === obj; // eslint-disable-line
|
|
@@ -72,7 +44,6 @@ function isNumber(obj) {
|
|
|
72
44
|
|
|
73
45
|
var DEFAULT_VIRTUAL_ITEM_HEIGHT = 32;
|
|
74
46
|
var KEY_VIRTUAL_ITEM_HEIGHT = "__virtual_item_height_".concat((0, _slice.default)(_context = Math.random().toFixed(5)).call(_context, 2));
|
|
75
|
-
|
|
76
47
|
var useComputeVirtualItemHeight = function useComputeVirtualItemHeight(refItemHeightMap) {
|
|
77
48
|
var forceUpdate = (0, _hooks.useForceUpdate)();
|
|
78
49
|
var heightMap = refItemHeightMap.current;
|
|
@@ -80,8 +51,7 @@ var useComputeVirtualItemHeight = function useComputeVirtualItemHeight(refItemHe
|
|
|
80
51
|
if ((0, _keys.default)(heightMap).length && !heightMap[KEY_VIRTUAL_ITEM_HEIGHT]) {
|
|
81
52
|
heightMap[KEY_VIRTUAL_ITEM_HEIGHT] = (0, _entries.default)(heightMap).reduce(function (sum, _ref, currentIndex, array) {
|
|
82
53
|
var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
|
|
83
|
-
|
|
84
|
-
|
|
54
|
+
currentHeight = _ref2[1];
|
|
85
55
|
var nextSum = sum + currentHeight;
|
|
86
56
|
return currentIndex === array.length - 1 ? Math.round(nextSum / array.length) : nextSum;
|
|
87
57
|
}, 0);
|
|
@@ -89,60 +59,52 @@ var useComputeVirtualItemHeight = function useComputeVirtualItemHeight(refItemHe
|
|
|
89
59
|
}
|
|
90
60
|
}, [(0, _keys.default)(heightMap).length]);
|
|
91
61
|
};
|
|
92
|
-
|
|
93
62
|
var useCacheChildrenNodes = function useCacheChildrenNodes(children) {
|
|
94
63
|
var refCacheMap = (0, _react.useRef)({});
|
|
95
64
|
var refPrevChildren = (0, _react.useRef)(children);
|
|
96
65
|
(0, _react.useEffect)(function () {
|
|
97
66
|
refPrevChildren.current = children;
|
|
98
67
|
}, [children]);
|
|
99
|
-
|
|
100
68
|
if (children !== refPrevChildren.current) {
|
|
101
69
|
refCacheMap.current = {};
|
|
102
70
|
}
|
|
103
|
-
|
|
104
71
|
return function (item, index, props) {
|
|
105
72
|
// eslint-disable-next-line no-prototype-builtins
|
|
106
73
|
if (!refCacheMap.current.hasOwnProperty(index)) {
|
|
107
74
|
refCacheMap.current[index] = children(item, index, props);
|
|
108
75
|
}
|
|
109
|
-
|
|
110
76
|
return refCacheMap.current[index];
|
|
111
77
|
};
|
|
112
78
|
};
|
|
113
|
-
|
|
114
79
|
var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
115
80
|
var style = props.style,
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
81
|
+
className = props.className,
|
|
82
|
+
children = props.children,
|
|
83
|
+
_props$data = props.data,
|
|
84
|
+
data = _props$data === void 0 ? [] : _props$data,
|
|
85
|
+
itemKey = props.itemKey,
|
|
86
|
+
_props$threshold = props.threshold,
|
|
87
|
+
threshold = _props$threshold === void 0 ? 100 : _props$threshold,
|
|
88
|
+
_props$wrapper = props.wrapper,
|
|
89
|
+
WrapperTagName = _props$wrapper === void 0 ? 'div' : _props$wrapper,
|
|
90
|
+
_props$height = props.height,
|
|
91
|
+
propHeight = _props$height === void 0 ? 300 : _props$height,
|
|
92
|
+
_props$isStaticItemHe = props.isStaticItemHeight,
|
|
93
|
+
isStaticItemHeight = _props$isStaticItemHe === void 0 ? true : _props$isStaticItemHe,
|
|
94
|
+
propItemHeight = props.itemHeight,
|
|
95
|
+
measureLongestItem = props.measureLongestItem,
|
|
96
|
+
scrollOptions = props.scrollOptions,
|
|
97
|
+
onScroll = props.onScroll,
|
|
98
|
+
_props$needFiller = props.needFiller,
|
|
99
|
+
needFiller = _props$needFiller === void 0 ? true : _props$needFiller,
|
|
100
|
+
outerStyle = props.outerStyle,
|
|
101
|
+
restProps = __rest(props, ["style", "className", "children", "data", "itemKey", "threshold", "wrapper", "height", "isStaticItemHeight", "itemHeight", "measureLongestItem", "scrollOptions", "onScroll", "needFiller", "outerStyle"]);
|
|
138
102
|
var styleListMaxHeight = style && style.maxHeight || propHeight;
|
|
139
103
|
var refItemHeightMap = (0, _react.useRef)({});
|
|
140
|
-
|
|
141
104
|
var _useState = (0, _react.useState)(200),
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
105
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
106
|
+
stateHeight = _useState2[0],
|
|
107
|
+
setStateHeight = _useState2[1];
|
|
146
108
|
var renderChild = useCacheChildrenNodes(children);
|
|
147
109
|
useComputeVirtualItemHeight(refItemHeightMap);
|
|
148
110
|
var itemCount = data.length;
|
|
@@ -160,61 +122,51 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
160
122
|
var getPadding = function getPadding(property) {
|
|
161
123
|
return +window.getComputedStyle(refList.current)[property].replace(/\D/g, '');
|
|
162
124
|
};
|
|
163
|
-
|
|
164
125
|
return {
|
|
165
126
|
top: getPadding('paddingTop'),
|
|
166
127
|
bottom: getPadding('paddingBottom')
|
|
167
128
|
};
|
|
168
129
|
}
|
|
169
|
-
|
|
170
130
|
return {
|
|
171
131
|
top: 0,
|
|
172
132
|
bottom: 0
|
|
173
133
|
};
|
|
174
134
|
}, [refList.current]);
|
|
175
|
-
|
|
176
135
|
var _useStateWithPromise = (0, _hooks.useStateWithPromise)({
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
136
|
+
status: 'NONE',
|
|
137
|
+
startIndex: 0,
|
|
138
|
+
endIndex: 0,
|
|
139
|
+
itemIndex: 0,
|
|
140
|
+
itemOffsetPtg: 0,
|
|
141
|
+
startItemTop: 0,
|
|
142
|
+
scrollTop: 0
|
|
143
|
+
}),
|
|
144
|
+
_useStateWithPromise2 = (0, _slicedToArray2.default)(_useStateWithPromise, 2),
|
|
145
|
+
state = _useStateWithPromise2[0],
|
|
146
|
+
setState = _useStateWithPromise2[1];
|
|
189
147
|
var prevData = (0, _hooks.usePrevious)(data) || [];
|
|
190
148
|
var isFirstRender = (0, _hooks.useIsFirstRender)();
|
|
191
|
-
|
|
192
149
|
var getItemKey = function getItemKey(item, index) {
|
|
193
150
|
return typeof itemKey === 'function' ? itemKey(item, index) : typeof itemKey === 'string' ? item[itemKey] : item.key || index;
|
|
194
151
|
};
|
|
195
|
-
|
|
196
152
|
var getItemKeyByIndex = function getItemKeyByIndex(index) {
|
|
197
153
|
var items = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : data;
|
|
198
|
-
|
|
199
154
|
if (index === items.length) {
|
|
200
155
|
return _itemUtil.GHOST_ITEM_KEY;
|
|
201
156
|
}
|
|
202
|
-
|
|
203
157
|
var item = items[index];
|
|
204
158
|
return item !== undefined ? getItemKey(item, index) : null;
|
|
205
159
|
};
|
|
206
|
-
|
|
207
160
|
var getCachedItemHeight = function getCachedItemHeight(key) {
|
|
208
161
|
return refItemHeightMap.current[key] || itemHeight;
|
|
209
162
|
};
|
|
210
|
-
|
|
211
163
|
var internalScrollTo = function internalScrollTo(relativeScroll) {
|
|
212
164
|
var compareItemIndex = relativeScroll.itemIndex,
|
|
213
|
-
|
|
165
|
+
compareItemRelativeTop = relativeScroll.relativeTop;
|
|
214
166
|
if (!refList.current) return;
|
|
215
167
|
var _refList$current = refList.current,
|
|
216
|
-
|
|
217
|
-
|
|
168
|
+
scrollHeight = _refList$current.scrollHeight,
|
|
169
|
+
clientHeight = _refList$current.clientHeight;
|
|
218
170
|
var originScrollTop = state.scrollTop;
|
|
219
171
|
var maxScrollTop = scrollHeight - clientHeight;
|
|
220
172
|
var bestSimilarity = Number.MAX_VALUE;
|
|
@@ -224,7 +176,6 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
224
176
|
var bestStartIndex = null;
|
|
225
177
|
var bestEndIndex = null;
|
|
226
178
|
var missSimilarity = 0;
|
|
227
|
-
|
|
228
179
|
for (var i = 0; i < maxScrollTop; i++) {
|
|
229
180
|
var scrollTop = (0, _algorithmUtil.getIndexByStartLoc)(0, maxScrollTop, originScrollTop, i);
|
|
230
181
|
var scrollPtg = (0, _itemUtil.getScrollPercentage)({
|
|
@@ -232,13 +183,11 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
232
183
|
scrollHeight: scrollHeight,
|
|
233
184
|
clientHeight: clientHeight
|
|
234
185
|
});
|
|
235
|
-
|
|
236
186
|
var _getRangeIndex = (0, _itemUtil.getRangeIndex)(scrollPtg, itemCount, itemCountVisible),
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
187
|
+
itemIndex = _getRangeIndex.itemIndex,
|
|
188
|
+
itemOffsetPtg = _getRangeIndex.itemOffsetPtg,
|
|
189
|
+
startIndex = _getRangeIndex.startIndex,
|
|
190
|
+
endIndex = _getRangeIndex.endIndex;
|
|
242
191
|
if (startIndex <= compareItemIndex && compareItemIndex <= endIndex) {
|
|
243
192
|
var locatedItemRelativeTop = (0, _itemUtil.getItemRelativeTop)({
|
|
244
193
|
itemHeight: getCachedItemHeight(getItemKeyByIndex(itemIndex)),
|
|
@@ -257,7 +206,6 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
257
206
|
itemElementHeights: refItemHeightMap.current
|
|
258
207
|
});
|
|
259
208
|
var similarity = Math.abs(compareItemTop - compareItemRelativeTop);
|
|
260
|
-
|
|
261
209
|
if (similarity < bestSimilarity) {
|
|
262
210
|
bestSimilarity = similarity;
|
|
263
211
|
bestScrollTop = scrollTop;
|
|
@@ -270,12 +218,10 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
270
218
|
missSimilarity += 1;
|
|
271
219
|
}
|
|
272
220
|
}
|
|
273
|
-
|
|
274
221
|
if (missSimilarity > 10) {
|
|
275
222
|
break;
|
|
276
223
|
}
|
|
277
224
|
}
|
|
278
|
-
|
|
279
225
|
if (bestScrollTop !== null) {
|
|
280
226
|
refLockScroll.current = true;
|
|
281
227
|
refList.current.scrollTop = bestScrollTop;
|
|
@@ -288,29 +234,25 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
288
234
|
endIndex: bestEndIndex
|
|
289
235
|
}));
|
|
290
236
|
}
|
|
291
|
-
|
|
292
237
|
refRafId.current = (0, _raf.raf)(function () {
|
|
293
238
|
refLockScroll.current = false;
|
|
294
239
|
});
|
|
295
240
|
};
|
|
296
|
-
|
|
297
241
|
var rawListScrollHandler = function rawListScrollHandler(event) {
|
|
298
242
|
if (!refList.current) return;
|
|
299
243
|
var _refList$current2 = refList.current,
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
244
|
+
rawScrollTop = _refList$current2.scrollTop,
|
|
245
|
+
clientHeight = _refList$current2.clientHeight,
|
|
246
|
+
scrollHeight = _refList$current2.scrollHeight;
|
|
303
247
|
var scrollTop = (0, _itemUtil.getValidScrollTop)(rawScrollTop, scrollHeight - clientHeight);
|
|
304
248
|
var scrollPtg = (0, _itemUtil.getScrollPercentage)({
|
|
305
249
|
scrollTop: scrollTop,
|
|
306
250
|
clientHeight: clientHeight,
|
|
307
251
|
scrollHeight: scrollHeight
|
|
308
252
|
});
|
|
309
|
-
|
|
310
253
|
var _getLocationItem = (0, _itemUtil.getLocationItem)(scrollPtg, itemCount),
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
254
|
+
index = _getLocationItem.index,
|
|
255
|
+
offsetPtg = _getLocationItem.offsetPtg;
|
|
314
256
|
setState((0, _extends2.default)((0, _extends2.default)({}, state), {
|
|
315
257
|
scrollTop: scrollTop,
|
|
316
258
|
itemIndex: index,
|
|
@@ -318,32 +260,27 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
318
260
|
}));
|
|
319
261
|
event && onScroll && onScroll(event);
|
|
320
262
|
};
|
|
321
|
-
|
|
322
263
|
var virtualListScrollHandler = function virtualListScrollHandler(event) {
|
|
323
264
|
var isInit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
324
265
|
var scrollHeight = itemTotalHeight;
|
|
325
266
|
if (!refList.current) return;
|
|
326
267
|
var _refList$current3 = refList.current,
|
|
327
|
-
|
|
328
|
-
|
|
268
|
+
rawScrollTop = _refList$current3.scrollTop,
|
|
269
|
+
clientHeight = _refList$current3.clientHeight;
|
|
329
270
|
var scrollTop = (0, _itemUtil.getValidScrollTop)(rawScrollTop, scrollHeight - clientHeight);
|
|
330
|
-
|
|
331
271
|
if (!isInit && (scrollTop === state.scrollTop || refLockScroll.current)) {
|
|
332
272
|
return;
|
|
333
273
|
}
|
|
334
|
-
|
|
335
274
|
var scrollPtg = (0, _itemUtil.getScrollPercentage)({
|
|
336
275
|
scrollTop: scrollTop,
|
|
337
276
|
clientHeight: clientHeight,
|
|
338
277
|
scrollHeight: scrollHeight
|
|
339
278
|
});
|
|
340
|
-
|
|
341
279
|
var _getRangeIndex2 = (0, _itemUtil.getRangeIndex)(scrollPtg, itemCount, itemCountVisible),
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
280
|
+
itemIndex = _getRangeIndex2.itemIndex,
|
|
281
|
+
itemOffsetPtg = _getRangeIndex2.itemOffsetPtg,
|
|
282
|
+
startIndex = _getRangeIndex2.startIndex,
|
|
283
|
+
endIndex = _getRangeIndex2.endIndex;
|
|
347
284
|
setState((0, _extends2.default)((0, _extends2.default)({}, state), {
|
|
348
285
|
scrollTop: scrollTop,
|
|
349
286
|
itemIndex: itemIndex,
|
|
@@ -354,7 +291,6 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
354
291
|
}));
|
|
355
292
|
event && onScroll && onScroll(event);
|
|
356
293
|
};
|
|
357
|
-
|
|
358
294
|
(0, _react.useEffect)(function () {
|
|
359
295
|
return function () {
|
|
360
296
|
refRafId.current && (0, _raf.caf)(refRafId.current);
|
|
@@ -365,7 +301,6 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
365
301
|
if (isFirstRender) {
|
|
366
302
|
refList.current.scrollTop = 0;
|
|
367
303
|
}
|
|
368
|
-
|
|
369
304
|
virtualListScrollHandler(null, true);
|
|
370
305
|
}
|
|
371
306
|
}, [itemCountVisible]);
|
|
@@ -373,12 +308,10 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
373
308
|
var changedItemIndex = null;
|
|
374
309
|
var switchTo = refIsVirtual.current !== isVirtual ? isVirtual ? 'virtual' : 'raw' : '';
|
|
375
310
|
refIsVirtual.current = isVirtual;
|
|
376
|
-
|
|
377
311
|
if (viewportHeight && prevData.length !== data.length) {
|
|
378
312
|
var diff = (0, _algorithmUtil.findListDiffIndex)(prevData, data, getItemKey);
|
|
379
313
|
changedItemIndex = diff ? diff.index : null;
|
|
380
314
|
}
|
|
381
|
-
|
|
382
315
|
if ((switchTo || isVirtual && changedItemIndex) && refList.current) {
|
|
383
316
|
var clientHeight = refList.current.clientHeight;
|
|
384
317
|
var locatedItemRelativeTop = (0, _itemUtil.getItemRelativeTop)({
|
|
@@ -391,14 +324,11 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
391
324
|
}),
|
|
392
325
|
clientHeight: clientHeight
|
|
393
326
|
});
|
|
394
|
-
|
|
395
327
|
if (switchTo === 'raw') {
|
|
396
328
|
var rawTop = locatedItemRelativeTop;
|
|
397
|
-
|
|
398
329
|
for (var index = 0; index < state.itemIndex; index++) {
|
|
399
330
|
rawTop -= getCachedItemHeight(getItemKeyByIndex(index));
|
|
400
331
|
}
|
|
401
|
-
|
|
402
332
|
refList.current.scrollTop = -rawTop;
|
|
403
333
|
refLockScroll.current = true;
|
|
404
334
|
refRafId.current = (0, _raf.raf)(function () {
|
|
@@ -415,9 +345,9 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
415
345
|
(0, _react.useLayoutEffect)(function () {
|
|
416
346
|
if (state.status === 'MEASURE_START' && refList.current) {
|
|
417
347
|
var _refList$current4 = refList.current,
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
348
|
+
scrollTop = _refList$current4.scrollTop,
|
|
349
|
+
scrollHeight = _refList$current4.scrollHeight,
|
|
350
|
+
clientHeight = _refList$current4.clientHeight;
|
|
421
351
|
var scrollPtg = (0, _itemUtil.getScrollPercentage)({
|
|
422
352
|
scrollTop: scrollTop,
|
|
423
353
|
scrollHeight: scrollHeight,
|
|
@@ -430,11 +360,9 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
430
360
|
itemHeight: getCachedItemHeight(getItemKeyByIndex(state.itemIndex)),
|
|
431
361
|
itemOffsetPtg: state.itemOffsetPtg
|
|
432
362
|
});
|
|
433
|
-
|
|
434
363
|
for (var index = state.itemIndex - 1; index >= state.startIndex; index--) {
|
|
435
364
|
startItemTop -= getCachedItemHeight(getItemKeyByIndex(index));
|
|
436
365
|
}
|
|
437
|
-
|
|
438
366
|
setState((0, _extends2.default)((0, _extends2.default)({}, state), {
|
|
439
367
|
startItemTop: startItemTop,
|
|
440
368
|
status: 'MEASURE_DONE'
|
|
@@ -448,31 +376,25 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
448
376
|
refRafId.current && (0, _raf.caf)(refRafId.current);
|
|
449
377
|
refRafId.current = (0, _raf.raf)(function () {
|
|
450
378
|
var _a;
|
|
451
|
-
|
|
452
379
|
if (typeof arg === 'number') {
|
|
453
380
|
refList.current.scrollTop = arg;
|
|
454
381
|
return;
|
|
455
382
|
}
|
|
456
|
-
|
|
457
383
|
var index = 'index' in arg ? arg.index : 'key' in arg ? (0, _findIndex.default)(data).call(data, function (item, index) {
|
|
458
384
|
return getItemKey(item, index) === arg.key;
|
|
459
385
|
}) : 0;
|
|
460
386
|
var item = data[index];
|
|
461
|
-
|
|
462
387
|
if (!item) {
|
|
463
388
|
return;
|
|
464
389
|
}
|
|
465
|
-
|
|
466
390
|
var align = (0, _typeof2.default)(arg) === 'object' && ((_a = arg.options) === null || _a === void 0 ? void 0 : _a.block) ? arg.options.block : (scrollOptions === null || scrollOptions === void 0 ? void 0 : scrollOptions.block) || 'nearest';
|
|
467
391
|
var _refList$current5 = refList.current,
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
392
|
+
clientHeight = _refList$current5.clientHeight,
|
|
393
|
+
scrollTop = _refList$current5.scrollTop;
|
|
471
394
|
if (isVirtual && !isStaticItemHeight) {
|
|
472
395
|
if (align === 'nearest') {
|
|
473
396
|
var itemIndex = state.itemIndex,
|
|
474
|
-
|
|
475
|
-
|
|
397
|
+
itemOffsetPtg = state.itemOffsetPtg;
|
|
476
398
|
if (Math.abs(itemIndex - index) < itemCountVisible) {
|
|
477
399
|
var itemTop = (0, _itemUtil.getItemRelativeTop)({
|
|
478
400
|
itemHeight: getCachedItemHeight(getItemKeyByIndex(itemIndex)),
|
|
@@ -480,7 +402,6 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
480
402
|
clientHeight: clientHeight,
|
|
481
403
|
scrollPtg: (0, _itemUtil.getScrollPercentage)(refList.current)
|
|
482
404
|
});
|
|
483
|
-
|
|
484
405
|
if (index < itemIndex) {
|
|
485
406
|
for (var i = index; i < itemIndex; i++) {
|
|
486
407
|
itemTop -= getCachedItemHeight(getItemKeyByIndex(i));
|
|
@@ -490,7 +411,6 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
490
411
|
itemTop += getCachedItemHeight(getItemKeyByIndex(_i));
|
|
491
412
|
}
|
|
492
413
|
}
|
|
493
|
-
|
|
494
414
|
if (itemTop < 0 || itemTop > clientHeight) {
|
|
495
415
|
align = itemTop < 0 ? 'start' : 'end';
|
|
496
416
|
} else {
|
|
@@ -500,7 +420,6 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
500
420
|
align = index < itemIndex ? 'start' : 'end';
|
|
501
421
|
}
|
|
502
422
|
}
|
|
503
|
-
|
|
504
423
|
setState((0, _extends2.default)((0, _extends2.default)({}, state), {
|
|
505
424
|
startIndex: Math.max(0, index - itemCountVisible),
|
|
506
425
|
endIndex: Math.min(itemCount - 1, index + itemCountVisible)
|
|
@@ -514,18 +433,14 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
514
433
|
} else {
|
|
515
434
|
var indexItemHeight = getCachedItemHeight(getItemKeyByIndex(index));
|
|
516
435
|
var _itemTop = 0;
|
|
517
|
-
|
|
518
436
|
for (var _i2 = 0; _i2 < index; _i2++) {
|
|
519
437
|
_itemTop += getCachedItemHeight(getItemKeyByIndex(_i2));
|
|
520
438
|
}
|
|
521
|
-
|
|
522
439
|
var itemBottom = _itemTop + indexItemHeight;
|
|
523
440
|
var itemMiddle = _itemTop + indexItemHeight / 2;
|
|
524
|
-
|
|
525
441
|
if (itemMiddle > scrollTop && itemMiddle < clientHeight + scrollTop) {
|
|
526
442
|
return;
|
|
527
443
|
}
|
|
528
|
-
|
|
529
444
|
if (align === 'nearest') {
|
|
530
445
|
if (_itemTop < scrollTop) {
|
|
531
446
|
align = 'start';
|
|
@@ -533,16 +448,13 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
533
448
|
align = 'end';
|
|
534
449
|
}
|
|
535
450
|
}
|
|
536
|
-
|
|
537
451
|
var _viewportHeight = clientHeight - indexItemHeight;
|
|
538
|
-
|
|
539
452
|
refList.current.scrollTop = _itemTop - (align === 'start' ? 0 : _viewportHeight / (align === 'center' ? 2 : 1));
|
|
540
453
|
}
|
|
541
454
|
});
|
|
542
455
|
}
|
|
543
456
|
};
|
|
544
457
|
}, [data, itemHeight, state]);
|
|
545
|
-
|
|
546
458
|
var renderChildren = function renderChildren(list, startIndex) {
|
|
547
459
|
return (0, _map.default)(list).call(list, function (item, index) {
|
|
548
460
|
var originIndex = startIndex + index;
|
|
@@ -554,13 +466,11 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
554
466
|
key: key,
|
|
555
467
|
ref: function ref(ele) {
|
|
556
468
|
var heightMap = refItemHeightMap.current;
|
|
557
|
-
|
|
558
469
|
if (ele && state.status === 'MEASURE_START' && (!isStaticItemHeight || heightMap[key] === undefined)) {
|
|
559
470
|
if (isStaticItemHeight) {
|
|
560
471
|
if (!heightMap[KEY_VIRTUAL_ITEM_HEIGHT]) {
|
|
561
472
|
heightMap[KEY_VIRTUAL_ITEM_HEIGHT] = (0, _itemUtil.getNodeHeight)(ele, true);
|
|
562
473
|
}
|
|
563
|
-
|
|
564
474
|
heightMap[key] = heightMap[KEY_VIRTUAL_ITEM_HEIGHT];
|
|
565
475
|
} else {
|
|
566
476
|
heightMap[key] = (0, _itemUtil.getNodeHeight)(ele, true);
|
|
@@ -570,12 +480,10 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
570
480
|
});
|
|
571
481
|
});
|
|
572
482
|
};
|
|
573
|
-
|
|
574
483
|
var refLongestItemIndex = (0, _react.useRef)(null);
|
|
575
484
|
(0, _react.useEffect)(function () {
|
|
576
485
|
refLongestItemIndex.current = null;
|
|
577
486
|
}, [data]);
|
|
578
|
-
|
|
579
487
|
var renderLongestItem = function renderLongestItem() {
|
|
580
488
|
if (measureLongestItem) {
|
|
581
489
|
var index = refLongestItemIndex.current === null ? (0, _itemUtil.getLongestItemIndex)(data) : refLongestItemIndex.current;
|
|
@@ -591,10 +499,8 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
591
499
|
style: {}
|
|
592
500
|
})) : null;
|
|
593
501
|
}
|
|
594
|
-
|
|
595
502
|
return null;
|
|
596
503
|
};
|
|
597
|
-
|
|
598
504
|
return /*#__PURE__*/_react.default.createElement(_resizeObserver.default, {
|
|
599
505
|
onResize: function onResize() {
|
|
600
506
|
if (refList.current && !isNumber(styleListMaxHeight)) {
|
|
@@ -620,7 +526,6 @@ var VirtualList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
620
526
|
height: viewportHeight
|
|
621
527
|
}, renderChildren(data, 0)) : renderChildren(data, 0)));
|
|
622
528
|
});
|
|
623
|
-
|
|
624
529
|
VirtualList.displayName = 'VirtualList';
|
|
625
530
|
var _default = VirtualList;
|
|
626
531
|
exports.default = _default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kdcloudjs/kdesign",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.35",
|
|
4
4
|
"description": "KDesign 金蝶前端react 组件库",
|
|
5
5
|
"title": "kdesign",
|
|
6
6
|
"keywords": [
|
|
@@ -240,7 +240,8 @@
|
|
|
240
240
|
}
|
|
241
241
|
},
|
|
242
242
|
"resolutions": {
|
|
243
|
-
"@types/babel__traverse": "7.17.1"
|
|
243
|
+
"@types/babel__traverse": "7.17.1",
|
|
244
|
+
"@types/node": "17.0.41"
|
|
244
245
|
},
|
|
245
246
|
"license": "Apache-2.0"
|
|
246
247
|
}
|