beyond-webui 1.1.44 → 1.1.45
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/dist/index.full.js +487 -251
- package/dist/index.full.min.js +23 -23
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +24 -24
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +488 -253
- package/es/components/affix/index.mjs +2 -2
- package/es/components/affix/src/affix.mjs +26 -117
- package/es/components/affix/src/affix.mjs.map +1 -1
- package/es/components/affix/src/affix2.mjs +117 -26
- package/es/components/affix/src/affix2.mjs.map +1 -1
- package/es/components/alert/index.d.ts +4 -4
- package/es/components/alert/src/alert.d.ts +1 -1
- package/es/components/alert/src/alert.vue.d.ts +4 -4
- package/es/components/autocomplete/index.d.ts +72 -72
- package/es/components/autocomplete/index.mjs +2 -2
- package/es/components/autocomplete/src/autocomplete.mjs +397 -96
- package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete.vue.d.ts +72 -72
- package/es/components/autocomplete/src/autocomplete2.mjs +96 -397
- package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
- package/es/components/backtop/index.mjs +2 -2
- package/es/components/backtop/src/backtop.mjs +21 -54
- package/es/components/backtop/src/backtop.mjs.map +1 -1
- package/es/components/backtop/src/backtop2.mjs +54 -21
- package/es/components/backtop/src/backtop2.mjs.map +1 -1
- package/es/components/breadcrumb/index.mjs +2 -2
- package/es/components/breadcrumb/src/breadcrumb.mjs +11 -36
- package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb2.mjs +36 -11
- package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
- package/es/components/button/index.d.ts +5 -5
- package/es/components/button/index.mjs +2 -2
- package/es/components/button/src/button-group2.mjs +1 -1
- package/es/components/button/src/button.d.ts +1 -1
- package/es/components/button/src/button.mjs +57 -76
- package/es/components/button/src/button.mjs.map +1 -1
- package/es/components/button/src/button.vue.d.ts +5 -5
- package/es/components/button/src/button2.mjs +76 -57
- package/es/components/button/src/button2.mjs.map +1 -1
- package/es/components/button/src/use-button.d.ts +1 -1
- package/es/components/calendar/index.d.ts +5 -5
- package/es/components/calendar/index.mjs +2 -2
- package/es/components/calendar/src/calendar.mjs +18 -131
- package/es/components/calendar/src/calendar.mjs.map +1 -1
- package/es/components/calendar/src/calendar.vue.d.ts +5 -5
- package/es/components/calendar/src/calendar2.mjs +131 -18
- package/es/components/calendar/src/calendar2.mjs.map +1 -1
- package/es/components/calendar/src/date-table.mjs +87 -33
- package/es/components/calendar/src/date-table.mjs.map +1 -1
- package/es/components/calendar/src/date-table2.mjs +33 -87
- package/es/components/calendar/src/date-table2.mjs.map +1 -1
- package/es/components/calendar/src/use-date-table.mjs +1 -1
- package/es/components/card/index.mjs +2 -2
- package/es/components/card/src/card.mjs +16 -35
- package/es/components/card/src/card.mjs.map +1 -1
- package/es/components/card/src/card2.mjs +35 -16
- package/es/components/card/src/card2.mjs.map +1 -1
- package/es/components/carousel/index.d.ts +41 -7
- package/es/components/carousel/index.mjs +3 -3
- package/es/components/carousel/src/carousel-item.mjs +18 -11
- package/es/components/carousel/src/carousel-item.mjs.map +1 -1
- package/es/components/carousel/src/carousel-item.vue.d.ts +4 -1
- package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
- package/es/components/carousel/src/carousel.d.ts +8 -1
- package/es/components/carousel/src/carousel.mjs +62 -160
- package/es/components/carousel/src/carousel.mjs.map +1 -1
- package/es/components/carousel/src/carousel.vue.d.ts +33 -5
- package/es/components/carousel/src/carousel2.mjs +223 -56
- package/es/components/carousel/src/carousel2.mjs.map +1 -1
- package/es/components/carousel/src/constants.d.ts +6 -2
- package/es/components/carousel/src/constants.mjs +2 -1
- package/es/components/carousel/src/constants.mjs.map +1 -1
- package/es/components/carousel/src/instance.d.ts +2 -2
- package/es/components/carousel/src/use-carousel-item.d.ts +2 -1
- package/es/components/carousel/src/use-carousel-item.mjs +35 -34
- package/es/components/carousel/src/use-carousel-item.mjs.map +1 -1
- package/es/components/carousel/src/use-carousel.d.ts +18 -0
- package/es/components/carousel/src/use-carousel.mjs +77 -11
- package/es/components/carousel/src/use-carousel.mjs.map +1 -1
- package/es/components/cascader/index.d.ts +142 -142
- package/es/components/cascader/src/cascader.vue.d.ts +71 -71
- package/es/components/col/index.mjs +2 -2
- package/es/components/col/src/col.mjs +66 -43
- package/es/components/col/src/col.mjs.map +1 -1
- package/es/components/col/src/col2.mjs +43 -66
- package/es/components/col/src/col2.mjs.map +1 -1
- package/es/components/color-picker/index.d.ts +37 -37
- package/es/components/color-picker/index.mjs +2 -2
- package/es/components/color-picker/src/color-picker.mjs +321 -38
- package/es/components/color-picker/src/color-picker.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker.vue.d.ts +37 -37
- package/es/components/color-picker/src/color-picker2.mjs +38 -321
- package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
- package/es/components/color-picker/src/components/predefine.mjs +1 -1
- package/es/components/countdown/index.mjs +2 -2
- package/es/components/countdown/src/countdown.mjs +23 -74
- package/es/components/countdown/src/countdown.mjs.map +1 -1
- package/es/components/countdown/src/countdown2.mjs +74 -23
- package/es/components/countdown/src/countdown2.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +19 -19
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +19 -19
- package/es/components/date-picker/src/panel-utils.d.ts +38 -38
- package/es/components/dialog/index.d.ts +1 -1
- package/es/components/dialog/index.mjs +2 -2
- package/es/components/dialog/src/dialog.mjs +172 -74
- package/es/components/dialog/src/dialog.mjs.map +1 -1
- package/es/components/dialog/src/dialog.vue.d.ts +1 -1
- package/es/components/dialog/src/dialog2.mjs +74 -172
- package/es/components/dialog/src/dialog2.mjs.map +1 -1
- package/es/components/divider/index.mjs +2 -2
- package/es/components/divider/src/divider.mjs +17 -35
- package/es/components/divider/src/divider.mjs.map +1 -1
- package/es/components/divider/src/divider2.mjs +35 -17
- package/es/components/divider/src/divider2.mjs.map +1 -1
- package/es/components/drawer/src/drawer2.mjs +1 -1
- package/es/components/dropdown/index.d.ts +14 -14
- package/es/components/dropdown/index.mjs +2 -2
- package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
- package/es/components/dropdown/src/dropdown-item-impl.vue.d.ts +1 -1
- package/es/components/dropdown/src/dropdown-item.mjs +1 -1
- package/es/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
- package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
- package/es/components/dropdown/src/dropdown.mjs +97 -307
- package/es/components/dropdown/src/dropdown.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown.vue.d.ts +12 -12
- package/es/components/dropdown/src/dropdown2.mjs +307 -97
- package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
- package/es/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
- package/es/components/form/index.d.ts +12 -12
- package/es/components/form/src/form-item.d.ts +1 -1
- package/es/components/form/src/form-item.vue.d.ts +5 -5
- package/es/components/image/index.d.ts +1 -1
- package/es/components/image/src/image.vue.d.ts +1 -1
- package/es/components/image-viewer/index.mjs +2 -2
- package/es/components/image-viewer/src/image-viewer.mjs +39 -396
- package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer2.mjs +396 -39
- package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
- package/es/components/index.mjs +38 -38
- package/es/components/input/index.d.ts +14 -14
- package/es/components/input/index.mjs +2 -2
- package/es/components/input/src/input.mjs +143 -552
- package/es/components/input/src/input.mjs.map +1 -1
- package/es/components/input/src/input.vue.d.ts +14 -14
- package/es/components/input/src/input2.mjs +552 -143
- package/es/components/input/src/input2.mjs.map +1 -1
- package/es/components/input-number/index.d.ts +52 -52
- package/es/components/input-number/index.mjs +2 -2
- package/es/components/input-number/src/input-number.mjs +58 -311
- package/es/components/input-number/src/input-number.mjs.map +1 -1
- package/es/components/input-number/src/input-number.vue.d.ts +52 -52
- package/es/components/input-number/src/input-number2.mjs +311 -58
- package/es/components/input-number/src/input-number2.mjs.map +1 -1
- package/es/components/menu/index.d.ts +3 -3
- package/es/components/menu/index.mjs +2 -2
- package/es/components/menu/src/menu-item.mjs +14 -97
- package/es/components/menu/src/menu-item.mjs.map +1 -1
- package/es/components/menu/src/menu-item2.mjs +97 -14
- package/es/components/menu/src/menu-item2.mjs.map +1 -1
- package/es/components/menu/src/menu.d.ts +4 -4
- package/es/components/message/index.mjs +1 -1
- package/es/components/message/src/message.d.ts +1 -1
- package/es/components/message/src/message.mjs +198 -91
- package/es/components/message/src/message.mjs.map +1 -1
- package/es/components/message/src/message.vue.d.ts +4 -4
- package/es/components/message/src/message2.mjs +91 -198
- package/es/components/message/src/message2.mjs.map +1 -1
- package/es/components/message/src/method.mjs +2 -2
- package/es/components/notification/index.mjs +1 -1
- package/es/components/notification/src/notification.d.ts +1 -1
- package/es/components/notification/src/notification.mjs +147 -69
- package/es/components/notification/src/notification.mjs.map +1 -1
- package/es/components/notification/src/notification.vue.d.ts +4 -4
- package/es/components/notification/src/notification2.mjs +69 -147
- package/es/components/notification/src/notification2.mjs.map +1 -1
- package/es/components/notification/src/notify.mjs +2 -2
- package/es/components/pagination/src/components/jumper.vue.d.ts +14 -14
- package/es/components/pagination/src/components/prev.mjs +58 -18
- package/es/components/pagination/src/components/prev.mjs.map +1 -1
- package/es/components/pagination/src/components/prev2.mjs +18 -58
- package/es/components/pagination/src/components/prev2.mjs.map +1 -1
- package/es/components/pagination/src/components/sizes.vue.d.ts +14 -14
- package/es/components/pagination/src/components/total.mjs +28 -7
- package/es/components/pagination/src/components/total.mjs.map +1 -1
- package/es/components/pagination/src/components/total2.mjs +7 -28
- package/es/components/pagination/src/components/total2.mjs.map +1 -1
- package/es/components/pagination/src/pagination.mjs +2 -2
- package/es/components/popconfirm/index.d.ts +23 -23
- package/es/components/popconfirm/index.mjs +2 -2
- package/es/components/popconfirm/src/popconfirm.mjs +110 -47
- package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +23 -23
- package/es/components/popconfirm/src/popconfirm2.mjs +47 -110
- package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
- package/es/components/popover/index.d.ts +18 -18
- package/es/components/popover/index.mjs +2 -2
- package/es/components/popover/src/popover.mjs +66 -111
- package/es/components/popover/src/popover.mjs.map +1 -1
- package/es/components/popover/src/popover.vue.d.ts +18 -18
- package/es/components/popover/src/popover2.mjs +111 -66
- package/es/components/popover/src/popover2.mjs.map +1 -1
- package/es/components/popper/index.mjs +4 -4
- package/es/components/popper/src/arrow.mjs +37 -8
- package/es/components/popper/src/arrow.mjs.map +1 -1
- package/es/components/popper/src/arrow2.mjs +8 -37
- package/es/components/popper/src/arrow2.mjs.map +1 -1
- package/es/components/popper/src/content.vue.d.ts +6 -6
- package/es/components/popper/src/popper.mjs +25 -32
- package/es/components/popper/src/popper.mjs.map +1 -1
- package/es/components/popper/src/popper2.mjs +32 -25
- package/es/components/popper/src/popper2.mjs.map +1 -1
- package/es/components/progress/index.mjs +2 -2
- package/es/components/progress/src/progress.mjs +57 -202
- package/es/components/progress/src/progress.mjs.map +1 -1
- package/es/components/progress/src/progress2.mjs +202 -57
- package/es/components/progress/src/progress2.mjs.map +1 -1
- package/es/components/radio/index.mjs +2 -2
- package/es/components/radio/src/radio-button.mjs +64 -9
- package/es/components/radio/src/radio-button.mjs.map +1 -1
- package/es/components/radio/src/radio-button2.mjs +9 -64
- package/es/components/radio/src/radio-button2.mjs.map +1 -1
- package/es/components/rate/index.mjs +2 -2
- package/es/components/rate/src/rate.mjs +255 -87
- package/es/components/rate/src/rate.mjs.map +1 -1
- package/es/components/rate/src/rate2.mjs +87 -255
- package/es/components/rate/src/rate2.mjs.map +1 -1
- package/es/components/result/index.d.ts +4 -4
- package/es/components/result/index.mjs +2 -2
- package/es/components/result/src/result.d.ts +1 -1
- package/es/components/result/src/result.mjs +29 -63
- package/es/components/result/src/result.mjs.map +1 -1
- package/es/components/result/src/result.vue.d.ts +4 -4
- package/es/components/result/src/result2.mjs +63 -29
- package/es/components/result/src/result2.mjs.map +1 -1
- package/es/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
- package/es/components/scrollbar/index.mjs +1 -1
- package/es/components/scrollbar/src/bar.mjs +17 -42
- package/es/components/scrollbar/src/bar.mjs.map +1 -1
- package/es/components/scrollbar/src/bar2.mjs +42 -17
- package/es/components/scrollbar/src/bar2.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
- package/es/components/scrollbar/src/thumb.mjs +11 -130
- package/es/components/scrollbar/src/thumb.mjs.map +1 -1
- package/es/components/scrollbar/src/thumb2.mjs +130 -11
- package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
- package/es/components/select/index.d.ts +14 -14
- package/es/components/select/src/select.vue.d.ts +14 -14
- package/es/components/select/src/useSelect.d.ts +12 -12
- package/es/components/select-v2/index.d.ts +30 -30
- package/es/components/select-v2/src/option-item.vue.d.ts +1 -1
- package/es/components/select-v2/src/select.vue.d.ts +15 -15
- package/es/components/select-v2/src/useSelect.d.ts +13 -13
- package/es/components/skeleton/index.mjs +4 -4
- package/es/components/skeleton/src/skeleton-item.mjs +23 -18
- package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton-item2.mjs +18 -23
- package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton.mjs +22 -49
- package/es/components/skeleton/src/skeleton.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton2.mjs +49 -22
- package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
- package/es/components/slider/index.d.ts +82 -82
- package/es/components/slider/src/button.mjs +93 -21
- package/es/components/slider/src/button.mjs.map +1 -1
- package/es/components/slider/src/button.vue.d.ts +6 -6
- package/es/components/slider/src/button2.mjs +21 -93
- package/es/components/slider/src/button2.mjs.map +1 -1
- package/es/components/slider/src/composables/use-slide.d.ts +24 -24
- package/es/components/slider/src/slider.mjs +1 -1
- package/es/components/slider/src/slider.vue.d.ts +82 -82
- package/es/components/steps/index.d.ts +16 -16
- package/es/components/steps/index.mjs +2 -2
- package/es/components/steps/src/item.d.ts +1 -1
- package/es/components/steps/src/item.mjs +19 -188
- package/es/components/steps/src/item.mjs.map +1 -1
- package/es/components/steps/src/item.vue.d.ts +4 -4
- package/es/components/steps/src/item2.mjs +188 -19
- package/es/components/steps/src/item2.mjs.map +1 -1
- package/es/components/steps/src/steps.d.ts +2 -2
- package/es/components/steps/src/steps.vue.d.ts +8 -8
- package/es/components/table/index.d.ts +1 -1
- package/es/components/table/src/filter-panel.vue.d.ts +12 -12
- package/es/components/table/src/table.vue.d.ts +1 -1
- package/es/components/tabs/index.d.ts +39 -31
- package/es/components/tabs/index.mjs +2 -2
- package/es/components/tabs/src/constants.d.ts +9 -4
- package/es/components/tabs/src/constants.mjs.map +1 -1
- package/es/components/tabs/src/tab-bar.d.ts +35 -5
- package/es/components/tabs/src/tab-bar.mjs +21 -8
- package/es/components/tabs/src/tab-bar.mjs.map +1 -1
- package/es/components/tabs/src/tab-bar.vue.d.ts +117 -14
- package/es/components/tabs/src/tab-bar2.mjs +4 -0
- package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
- package/es/components/tabs/src/tab-nav.d.ts +85 -18
- package/es/components/tabs/src/tab-nav.mjs +46 -37
- package/es/components/tabs/src/tab-nav.mjs.map +1 -1
- package/es/components/tabs/src/tab-pane.d.ts +1 -1
- package/es/components/tabs/src/tab-pane.mjs +84 -13
- package/es/components/tabs/src/tab-pane.mjs.map +1 -1
- package/es/components/tabs/src/tab-pane.vue.d.ts +6 -0
- package/es/components/tabs/src/tab-pane2.mjs +13 -72
- package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
- package/es/components/tabs/src/tabs.d.ts +25 -51
- package/es/components/tabs/src/tabs.mjs +58 -41
- package/es/components/tabs/src/tabs.mjs.map +1 -1
- package/es/components/tag/index.d.ts +1 -1
- package/es/components/tag/src/tag.vue.d.ts +1 -1
- package/es/components/time-picker/src/common/picker.vue.d.ts +37 -37
- package/es/components/time-select/index.d.ts +62 -62
- package/es/components/time-select/index.mjs +1 -1
- package/es/components/time-select/src/time-select.mjs +118 -48
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/time-select/src/time-select.vue.d.ts +31 -31
- package/es/components/time-select/src/time-select2.mjs +48 -118
- package/es/components/time-select/src/time-select2.mjs.map +1 -1
- package/es/components/tooltip/index.d.ts +6 -6
- package/es/components/tooltip/src/content.vue.d.ts +6 -6
- package/es/components/tooltip/src/tooltip.mjs +1 -1
- package/es/components/tooltip/src/tooltip.vue.d.ts +6 -6
- package/es/components/tooltip/src/tooltip2.mjs +2 -2
- package/es/components/tooltip-v2/index.d.ts +4 -4
- package/es/components/tooltip-v2/index.mjs +4 -4
- package/es/components/tooltip-v2/src/arrow.mjs +22 -37
- package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
- package/es/components/tooltip-v2/src/arrow2.mjs +37 -22
- package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/content2.mjs +1 -1
- package/es/components/tooltip-v2/src/root.mjs +17 -80
- package/es/components/tooltip-v2/src/root.mjs.map +1 -1
- package/es/components/tooltip-v2/src/root2.mjs +80 -17
- package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/tooltip.mjs +21 -74
- package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
- package/es/components/tooltip-v2/src/tooltip.vue.d.ts +4 -4
- package/es/components/tooltip-v2/src/tooltip2.mjs +74 -21
- package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
- package/es/components/transfer/index.d.ts +75 -75
- package/es/components/transfer/index.mjs +2 -2
- package/es/components/transfer/src/composables/use-check.mjs +1 -1
- package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.mjs +128 -19
- package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel.vue.d.ts +14 -14
- package/es/components/transfer/src/transfer-panel2.mjs +19 -128
- package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
- package/es/components/transfer/src/transfer.mjs +160 -69
- package/es/components/transfer/src/transfer.mjs.map +1 -1
- package/es/components/transfer/src/transfer.vue.d.ts +75 -75
- package/es/components/transfer/src/transfer2.mjs +69 -160
- package/es/components/transfer/src/transfer2.mjs.map +1 -1
- package/es/components/tree-v2/src/tree-node.vue.d.ts +1 -1
- package/es/components/tree-v2/src/tree.vue.d.ts +1 -1
- package/es/components/upload/index.d.ts +5 -5
- package/es/components/upload/index.mjs +3 -3
- package/es/components/upload/src/upload-content.mjs +1 -1
- package/es/components/upload/src/upload-content.vue.d.ts +1 -1
- package/es/components/upload/src/upload-content2.mjs +1 -1
- package/es/components/upload/src/upload-list.mjs +173 -26
- package/es/components/upload/src/upload-list.mjs.map +1 -1
- package/es/components/upload/src/upload-list2.mjs +26 -173
- package/es/components/upload/src/upload-list2.mjs.map +1 -1
- package/es/components/upload/src/upload.mjs +105 -119
- package/es/components/upload/src/upload.mjs.map +1 -1
- package/es/components/upload/src/upload.vue.d.ts +5 -5
- package/es/components/upload/src/upload2.mjs +119 -105
- package/es/components/upload/src/upload2.mjs.map +1 -1
- package/es/components/upload/src/use-handlers.mjs +1 -1
- package/es/components/visual-hidden/index.mjs +3 -3
- package/es/components/visual-hidden/src/visual-hidden.mjs +7 -35
- package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
- package/es/components/visual-hidden/src/visual-hidden2.mjs +35 -7
- package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
- package/es/hooks/use-ordered-children/index.d.ts +10 -4
- package/es/hooks/use-ordered-children/index.mjs +46 -8
- package/es/hooks/use-ordered-children/index.mjs.map +1 -1
- package/es/index.mjs +38 -38
- package/lib/components/affix/index.js +2 -2
- package/lib/components/affix/src/affix.js +27 -117
- package/lib/components/affix/src/affix.js.map +1 -1
- package/lib/components/affix/src/affix2.js +117 -27
- package/lib/components/affix/src/affix2.js.map +1 -1
- package/lib/components/alert/index.d.ts +4 -4
- package/lib/components/alert/src/alert.d.ts +1 -1
- package/lib/components/alert/src/alert.vue.d.ts +4 -4
- package/lib/components/autocomplete/index.d.ts +72 -72
- package/lib/components/autocomplete/index.js +2 -2
- package/lib/components/autocomplete/src/autocomplete.js +396 -96
- package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
- package/lib/components/autocomplete/src/autocomplete.vue.d.ts +72 -72
- package/lib/components/autocomplete/src/autocomplete2.js +96 -396
- package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
- package/lib/components/backtop/index.js +2 -2
- package/lib/components/backtop/src/backtop.js +22 -54
- package/lib/components/backtop/src/backtop.js.map +1 -1
- package/lib/components/backtop/src/backtop2.js +54 -22
- package/lib/components/backtop/src/backtop2.js.map +1 -1
- package/lib/components/breadcrumb/index.js +2 -2
- package/lib/components/breadcrumb/src/breadcrumb.js +11 -36
- package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
- package/lib/components/breadcrumb/src/breadcrumb2.js +36 -11
- package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
- package/lib/components/button/index.d.ts +5 -5
- package/lib/components/button/index.js +2 -2
- package/lib/components/button/src/button-group2.js +1 -1
- package/lib/components/button/src/button.d.ts +1 -1
- package/lib/components/button/src/button.js +60 -76
- package/lib/components/button/src/button.js.map +1 -1
- package/lib/components/button/src/button.vue.d.ts +5 -5
- package/lib/components/button/src/button2.js +76 -60
- package/lib/components/button/src/button2.js.map +1 -1
- package/lib/components/button/src/use-button.d.ts +1 -1
- package/lib/components/calendar/index.d.ts +5 -5
- package/lib/components/calendar/index.js +2 -2
- package/lib/components/calendar/src/calendar.js +19 -131
- package/lib/components/calendar/src/calendar.js.map +1 -1
- package/lib/components/calendar/src/calendar.vue.d.ts +5 -5
- package/lib/components/calendar/src/calendar2.js +131 -19
- package/lib/components/calendar/src/calendar2.js.map +1 -1
- package/lib/components/calendar/src/date-table.js +87 -37
- package/lib/components/calendar/src/date-table.js.map +1 -1
- package/lib/components/calendar/src/date-table2.js +37 -87
- package/lib/components/calendar/src/date-table2.js.map +1 -1
- package/lib/components/calendar/src/use-date-table.js +1 -1
- package/lib/components/card/index.js +2 -2
- package/lib/components/card/src/card.js +16 -35
- package/lib/components/card/src/card.js.map +1 -1
- package/lib/components/card/src/card2.js +35 -16
- package/lib/components/card/src/card2.js.map +1 -1
- package/lib/components/carousel/index.d.ts +41 -7
- package/lib/components/carousel/index.js +3 -2
- package/lib/components/carousel/index.js.map +1 -1
- package/lib/components/carousel/src/carousel-item.js +18 -11
- package/lib/components/carousel/src/carousel-item.js.map +1 -1
- package/lib/components/carousel/src/carousel-item.vue.d.ts +4 -1
- package/lib/components/carousel/src/carousel-item2.js.map +1 -1
- package/lib/components/carousel/src/carousel.d.ts +8 -1
- package/lib/components/carousel/src/carousel.js +63 -160
- package/lib/components/carousel/src/carousel.js.map +1 -1
- package/lib/components/carousel/src/carousel.vue.d.ts +33 -5
- package/lib/components/carousel/src/carousel2.js +223 -57
- package/lib/components/carousel/src/carousel2.js.map +1 -1
- package/lib/components/carousel/src/constants.d.ts +6 -2
- package/lib/components/carousel/src/constants.js +2 -0
- package/lib/components/carousel/src/constants.js.map +1 -1
- package/lib/components/carousel/src/instance.d.ts +2 -2
- package/lib/components/carousel/src/use-carousel-item.d.ts +2 -1
- package/lib/components/carousel/src/use-carousel-item.js +33 -32
- package/lib/components/carousel/src/use-carousel-item.js.map +1 -1
- package/lib/components/carousel/src/use-carousel.d.ts +18 -0
- package/lib/components/carousel/src/use-carousel.js +75 -9
- package/lib/components/carousel/src/use-carousel.js.map +1 -1
- package/lib/components/cascader/index.d.ts +142 -142
- package/lib/components/cascader/src/cascader.vue.d.ts +71 -71
- package/lib/components/col/index.js +2 -2
- package/lib/components/col/src/col.js +66 -43
- package/lib/components/col/src/col.js.map +1 -1
- package/lib/components/col/src/col2.js +43 -66
- package/lib/components/col/src/col2.js.map +1 -1
- package/lib/components/color-picker/index.d.ts +37 -37
- package/lib/components/color-picker/index.js +2 -2
- package/lib/components/color-picker/src/color-picker.js +319 -38
- package/lib/components/color-picker/src/color-picker.js.map +1 -1
- package/lib/components/color-picker/src/color-picker.vue.d.ts +37 -37
- package/lib/components/color-picker/src/color-picker2.js +38 -319
- package/lib/components/color-picker/src/color-picker2.js.map +1 -1
- package/lib/components/color-picker/src/components/predefine.js +1 -1
- package/lib/components/countdown/index.js +2 -2
- package/lib/components/countdown/src/countdown.js +24 -74
- package/lib/components/countdown/src/countdown.js.map +1 -1
- package/lib/components/countdown/src/countdown2.js +74 -24
- package/lib/components/countdown/src/countdown2.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +19 -19
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +19 -19
- package/lib/components/date-picker/src/panel-utils.d.ts +38 -38
- package/lib/components/dialog/index.d.ts +1 -1
- package/lib/components/dialog/index.js +2 -2
- package/lib/components/dialog/src/dialog.js +172 -75
- package/lib/components/dialog/src/dialog.js.map +1 -1
- package/lib/components/dialog/src/dialog.vue.d.ts +1 -1
- package/lib/components/dialog/src/dialog2.js +75 -172
- package/lib/components/dialog/src/dialog2.js.map +1 -1
- package/lib/components/divider/index.js +2 -2
- package/lib/components/divider/src/divider.js +17 -35
- package/lib/components/divider/src/divider.js.map +1 -1
- package/lib/components/divider/src/divider2.js +35 -17
- package/lib/components/divider/src/divider2.js.map +1 -1
- package/lib/components/drawer/src/drawer2.js +1 -1
- package/lib/components/dropdown/index.d.ts +14 -14
- package/lib/components/dropdown/index.js +2 -2
- package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
- package/lib/components/dropdown/src/dropdown-item-impl.vue.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown-item.js +1 -1
- package/lib/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown-menu.js +1 -1
- package/lib/components/dropdown/src/dropdown.js +106 -307
- package/lib/components/dropdown/src/dropdown.js.map +1 -1
- package/lib/components/dropdown/src/dropdown.vue.d.ts +12 -12
- package/lib/components/dropdown/src/dropdown2.js +307 -106
- package/lib/components/dropdown/src/dropdown2.js.map +1 -1
- package/lib/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
- package/lib/components/form/index.d.ts +12 -12
- package/lib/components/form/src/form-item.d.ts +1 -1
- package/lib/components/form/src/form-item.vue.d.ts +5 -5
- package/lib/components/image/index.d.ts +1 -1
- package/lib/components/image/src/image.vue.d.ts +1 -1
- package/lib/components/image-viewer/index.js +2 -2
- package/lib/components/image-viewer/src/image-viewer.js +40 -396
- package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer2.js +396 -40
- package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
- package/lib/components/index.js +38 -37
- package/lib/components/index.js.map +1 -1
- package/lib/components/input/index.d.ts +14 -14
- package/lib/components/input/index.js +2 -2
- package/lib/components/input/src/input.js +143 -551
- package/lib/components/input/src/input.js.map +1 -1
- package/lib/components/input/src/input.vue.d.ts +14 -14
- package/lib/components/input/src/input2.js +551 -143
- package/lib/components/input/src/input2.js.map +1 -1
- package/lib/components/input-number/index.d.ts +52 -52
- package/lib/components/input-number/index.js +2 -2
- package/lib/components/input-number/src/input-number.js +57 -309
- package/lib/components/input-number/src/input-number.js.map +1 -1
- package/lib/components/input-number/src/input-number.vue.d.ts +52 -52
- package/lib/components/input-number/src/input-number2.js +309 -57
- package/lib/components/input-number/src/input-number2.js.map +1 -1
- package/lib/components/menu/index.d.ts +3 -3
- package/lib/components/menu/index.js +2 -2
- package/lib/components/menu/src/menu-item.js +15 -97
- package/lib/components/menu/src/menu-item.js.map +1 -1
- package/lib/components/menu/src/menu-item2.js +97 -15
- package/lib/components/menu/src/menu-item2.js.map +1 -1
- package/lib/components/menu/src/menu.d.ts +4 -4
- package/lib/components/message/index.js +1 -1
- package/lib/components/message/src/message.d.ts +1 -1
- package/lib/components/message/src/message.js +196 -92
- package/lib/components/message/src/message.js.map +1 -1
- package/lib/components/message/src/message.vue.d.ts +4 -4
- package/lib/components/message/src/message2.js +92 -196
- package/lib/components/message/src/message2.js.map +1 -1
- package/lib/components/message/src/method.js +2 -2
- package/lib/components/notification/index.js +1 -1
- package/lib/components/notification/src/notification.d.ts +1 -1
- package/lib/components/notification/src/notification.js +146 -70
- package/lib/components/notification/src/notification.js.map +1 -1
- package/lib/components/notification/src/notification.vue.d.ts +4 -4
- package/lib/components/notification/src/notification2.js +70 -146
- package/lib/components/notification/src/notification2.js.map +1 -1
- package/lib/components/notification/src/notify.js +2 -2
- package/lib/components/pagination/src/components/jumper.vue.d.ts +14 -14
- package/lib/components/pagination/src/components/prev.js +58 -19
- package/lib/components/pagination/src/components/prev.js.map +1 -1
- package/lib/components/pagination/src/components/prev2.js +19 -58
- package/lib/components/pagination/src/components/prev2.js.map +1 -1
- package/lib/components/pagination/src/components/sizes.vue.d.ts +14 -14
- package/lib/components/pagination/src/components/total.js +28 -7
- package/lib/components/pagination/src/components/total.js.map +1 -1
- package/lib/components/pagination/src/components/total2.js +7 -28
- package/lib/components/pagination/src/components/total2.js.map +1 -1
- package/lib/components/pagination/src/pagination.js +2 -2
- package/lib/components/popconfirm/index.d.ts +23 -23
- package/lib/components/popconfirm/index.js +2 -2
- package/lib/components/popconfirm/src/popconfirm.js +110 -48
- package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +23 -23
- package/lib/components/popconfirm/src/popconfirm2.js +48 -110
- package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
- package/lib/components/popover/index.d.ts +18 -18
- package/lib/components/popover/index.js +2 -2
- package/lib/components/popover/src/popover.js +67 -111
- package/lib/components/popover/src/popover.js.map +1 -1
- package/lib/components/popover/src/popover.vue.d.ts +18 -18
- package/lib/components/popover/src/popover2.js +111 -67
- package/lib/components/popover/src/popover2.js.map +1 -1
- package/lib/components/popper/index.js +4 -4
- package/lib/components/popper/src/arrow.js +37 -9
- package/lib/components/popper/src/arrow.js.map +1 -1
- package/lib/components/popper/src/arrow2.js +9 -37
- package/lib/components/popper/src/arrow2.js.map +1 -1
- package/lib/components/popper/src/content.vue.d.ts +6 -6
- package/lib/components/popper/src/popper.js +28 -32
- package/lib/components/popper/src/popper.js.map +1 -1
- package/lib/components/popper/src/popper2.js +32 -28
- package/lib/components/popper/src/popper2.js.map +1 -1
- package/lib/components/progress/index.js +2 -2
- package/lib/components/progress/src/progress.js +57 -202
- package/lib/components/progress/src/progress.js.map +1 -1
- package/lib/components/progress/src/progress2.js +202 -57
- package/lib/components/progress/src/progress2.js.map +1 -1
- package/lib/components/radio/index.js +2 -2
- package/lib/components/radio/src/radio-button.js +64 -9
- package/lib/components/radio/src/radio-button.js.map +1 -1
- package/lib/components/radio/src/radio-button2.js +9 -64
- package/lib/components/radio/src/radio-button2.js.map +1 -1
- package/lib/components/rate/index.js +2 -2
- package/lib/components/rate/src/rate.js +254 -87
- package/lib/components/rate/src/rate.js.map +1 -1
- package/lib/components/rate/src/rate2.js +87 -254
- package/lib/components/rate/src/rate2.js.map +1 -1
- package/lib/components/result/index.d.ts +4 -4
- package/lib/components/result/index.js +2 -2
- package/lib/components/result/src/result.d.ts +1 -1
- package/lib/components/result/src/result.js +31 -63
- package/lib/components/result/src/result.js.map +1 -1
- package/lib/components/result/src/result.vue.d.ts +4 -4
- package/lib/components/result/src/result2.js +63 -31
- package/lib/components/result/src/result2.js.map +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
- package/lib/components/scrollbar/index.js +1 -1
- package/lib/components/scrollbar/src/bar.js +17 -42
- package/lib/components/scrollbar/src/bar.js.map +1 -1
- package/lib/components/scrollbar/src/bar2.js +42 -17
- package/lib/components/scrollbar/src/bar2.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar2.js +1 -1
- package/lib/components/scrollbar/src/thumb.js +11 -130
- package/lib/components/scrollbar/src/thumb.js.map +1 -1
- package/lib/components/scrollbar/src/thumb2.js +130 -11
- package/lib/components/scrollbar/src/thumb2.js.map +1 -1
- package/lib/components/select/index.d.ts +14 -14
- package/lib/components/select/src/select.vue.d.ts +14 -14
- package/lib/components/select/src/useSelect.d.ts +12 -12
- package/lib/components/select-v2/index.d.ts +30 -30
- package/lib/components/select-v2/src/option-item.vue.d.ts +1 -1
- package/lib/components/select-v2/src/select.vue.d.ts +15 -15
- package/lib/components/select-v2/src/useSelect.d.ts +13 -13
- package/lib/components/skeleton/index.js +4 -4
- package/lib/components/skeleton/src/skeleton-item.js +23 -18
- package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
- package/lib/components/skeleton/src/skeleton-item2.js +18 -23
- package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
- package/lib/components/skeleton/src/skeleton.js +22 -49
- package/lib/components/skeleton/src/skeleton.js.map +1 -1
- package/lib/components/skeleton/src/skeleton2.js +49 -22
- package/lib/components/skeleton/src/skeleton2.js.map +1 -1
- package/lib/components/slider/index.d.ts +82 -82
- package/lib/components/slider/src/button.js +93 -22
- package/lib/components/slider/src/button.js.map +1 -1
- package/lib/components/slider/src/button.vue.d.ts +6 -6
- package/lib/components/slider/src/button2.js +22 -93
- package/lib/components/slider/src/button2.js.map +1 -1
- package/lib/components/slider/src/composables/use-slide.d.ts +24 -24
- package/lib/components/slider/src/slider.js +1 -1
- package/lib/components/slider/src/slider.vue.d.ts +82 -82
- package/lib/components/steps/index.d.ts +16 -16
- package/lib/components/steps/index.js +2 -2
- package/lib/components/steps/src/item.d.ts +1 -1
- package/lib/components/steps/src/item.js +19 -188
- package/lib/components/steps/src/item.js.map +1 -1
- package/lib/components/steps/src/item.vue.d.ts +4 -4
- package/lib/components/steps/src/item2.js +188 -19
- package/lib/components/steps/src/item2.js.map +1 -1
- package/lib/components/steps/src/steps.d.ts +2 -2
- package/lib/components/steps/src/steps.vue.d.ts +8 -8
- package/lib/components/table/index.d.ts +1 -1
- package/lib/components/table/src/filter-panel.vue.d.ts +12 -12
- package/lib/components/table/src/table.vue.d.ts +1 -1
- package/lib/components/tabs/index.d.ts +39 -31
- package/lib/components/tabs/index.js +2 -2
- package/lib/components/tabs/src/constants.d.ts +9 -4
- package/lib/components/tabs/src/constants.js.map +1 -1
- package/lib/components/tabs/src/tab-bar.d.ts +35 -5
- package/lib/components/tabs/src/tab-bar.js +20 -7
- package/lib/components/tabs/src/tab-bar.js.map +1 -1
- package/lib/components/tabs/src/tab-bar.vue.d.ts +117 -14
- package/lib/components/tabs/src/tab-bar2.js +4 -0
- package/lib/components/tabs/src/tab-bar2.js.map +1 -1
- package/lib/components/tabs/src/tab-nav.d.ts +85 -18
- package/lib/components/tabs/src/tab-nav.js +45 -36
- package/lib/components/tabs/src/tab-nav.js.map +1 -1
- package/lib/components/tabs/src/tab-pane.d.ts +1 -1
- package/lib/components/tabs/src/tab-pane.js +84 -13
- package/lib/components/tabs/src/tab-pane.js.map +1 -1
- package/lib/components/tabs/src/tab-pane.vue.d.ts +6 -0
- package/lib/components/tabs/src/tab-pane2.js +13 -72
- package/lib/components/tabs/src/tab-pane2.js.map +1 -1
- package/lib/components/tabs/src/tabs.d.ts +25 -51
- package/lib/components/tabs/src/tabs.js +58 -41
- package/lib/components/tabs/src/tabs.js.map +1 -1
- package/lib/components/tag/index.d.ts +1 -1
- package/lib/components/tag/src/tag.vue.d.ts +1 -1
- package/lib/components/time-picker/src/common/picker.vue.d.ts +37 -37
- package/lib/components/time-select/index.d.ts +62 -62
- package/lib/components/time-select/index.js +1 -1
- package/lib/components/time-select/src/time-select.js +123 -48
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/time-select/src/time-select.vue.d.ts +31 -31
- package/lib/components/time-select/src/time-select2.js +48 -123
- package/lib/components/time-select/src/time-select2.js.map +1 -1
- package/lib/components/tooltip/index.d.ts +6 -6
- package/lib/components/tooltip/src/content.vue.d.ts +6 -6
- package/lib/components/tooltip/src/tooltip.js +1 -1
- package/lib/components/tooltip/src/tooltip.vue.d.ts +6 -6
- package/lib/components/tooltip/src/tooltip2.js +2 -2
- package/lib/components/tooltip-v2/index.d.ts +4 -4
- package/lib/components/tooltip-v2/index.js +4 -4
- package/lib/components/tooltip-v2/src/arrow.js +23 -37
- package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
- package/lib/components/tooltip-v2/src/arrow2.js +37 -23
- package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
- package/lib/components/tooltip-v2/src/content2.js +1 -1
- package/lib/components/tooltip-v2/src/root.js +17 -80
- package/lib/components/tooltip-v2/src/root.js.map +1 -1
- package/lib/components/tooltip-v2/src/root2.js +80 -17
- package/lib/components/tooltip-v2/src/root2.js.map +1 -1
- package/lib/components/tooltip-v2/src/tooltip.js +21 -74
- package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
- package/lib/components/tooltip-v2/src/tooltip.vue.d.ts +4 -4
- package/lib/components/tooltip-v2/src/tooltip2.js +74 -21
- package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
- package/lib/components/transfer/index.d.ts +75 -75
- package/lib/components/transfer/index.js +2 -2
- package/lib/components/transfer/src/composables/use-check.js +1 -1
- package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
- package/lib/components/transfer/src/transfer-panel.js +128 -21
- package/lib/components/transfer/src/transfer-panel.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel.vue.d.ts +14 -14
- package/lib/components/transfer/src/transfer-panel2.js +21 -128
- package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
- package/lib/components/transfer/src/transfer.js +160 -73
- package/lib/components/transfer/src/transfer.js.map +1 -1
- package/lib/components/transfer/src/transfer.vue.d.ts +75 -75
- package/lib/components/transfer/src/transfer2.js +73 -160
- package/lib/components/transfer/src/transfer2.js.map +1 -1
- package/lib/components/tree-v2/src/tree-node.vue.d.ts +1 -1
- package/lib/components/tree-v2/src/tree.vue.d.ts +1 -1
- package/lib/components/upload/index.d.ts +5 -5
- package/lib/components/upload/index.js +3 -3
- package/lib/components/upload/src/upload-content.js +1 -1
- package/lib/components/upload/src/upload-content.vue.d.ts +1 -1
- package/lib/components/upload/src/upload-content2.js +1 -1
- package/lib/components/upload/src/upload-list.js +173 -27
- package/lib/components/upload/src/upload-list.js.map +1 -1
- package/lib/components/upload/src/upload-list2.js +27 -173
- package/lib/components/upload/src/upload-list2.js.map +1 -1
- package/lib/components/upload/src/upload.js +108 -119
- package/lib/components/upload/src/upload.js.map +1 -1
- package/lib/components/upload/src/upload.vue.d.ts +5 -5
- package/lib/components/upload/src/upload2.js +119 -108
- package/lib/components/upload/src/upload2.js.map +1 -1
- package/lib/components/upload/src/use-handlers.js +1 -1
- package/lib/components/visual-hidden/index.js +2 -2
- package/lib/components/visual-hidden/src/visual-hidden.js +7 -35
- package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
- package/lib/components/visual-hidden/src/visual-hidden2.js +35 -7
- package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
- package/lib/hooks/use-ordered-children/index.d.ts +10 -4
- package/lib/hooks/use-ordered-children/index.js +45 -7
- package/lib/hooks/use-ordered-children/index.js.map +1 -1
- package/lib/index.js +38 -37
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { inject, getCurrentInstance, ref, unref,
|
|
1
|
+
import { inject, getCurrentInstance, ref, unref, reactive, onBeforeUnmount } from 'vue';
|
|
2
2
|
import '../../../utils/index.mjs';
|
|
3
|
-
import { carouselContextKey } from './constants.mjs';
|
|
3
|
+
import { carouselContextKey, CAROUSEL_ITEM_NAME } from './constants.mjs';
|
|
4
4
|
import { debugWarn } from '../../../utils/error.mjs';
|
|
5
5
|
import { isUndefined } from '../../../utils/types.mjs';
|
|
6
6
|
|
|
7
|
-
const useCarouselItem = (props
|
|
7
|
+
const useCarouselItem = (props) => {
|
|
8
8
|
const carouselContext = inject(carouselContextKey);
|
|
9
9
|
const instance = getCurrentInstance();
|
|
10
10
|
if (!carouselContext) {
|
|
11
|
-
debugWarn(
|
|
11
|
+
debugWarn(CAROUSEL_ITEM_NAME, "usage: <el-carousel></el-carousel-item></el-carousel>");
|
|
12
12
|
}
|
|
13
13
|
if (!instance) {
|
|
14
|
-
debugWarn(
|
|
14
|
+
debugWarn(CAROUSEL_ITEM_NAME, "compositional hook can only be invoked inside setups");
|
|
15
15
|
}
|
|
16
|
-
const
|
|
16
|
+
const carouselItemRef = ref();
|
|
17
17
|
const hover = ref(false);
|
|
18
18
|
const translate = ref(0);
|
|
19
19
|
const scale = ref(1);
|
|
@@ -21,7 +21,7 @@ const useCarouselItem = (props, componentName) => {
|
|
|
21
21
|
const ready = ref(false);
|
|
22
22
|
const inStage = ref(false);
|
|
23
23
|
const animating = ref(false);
|
|
24
|
-
const { isCardType, isVertical } = carouselContext;
|
|
24
|
+
const { isCardType, isVertical, cardScale } = carouselContext;
|
|
25
25
|
function processIndex(index, activeIndex, length) {
|
|
26
26
|
const lastItemIndex = length - 1;
|
|
27
27
|
const prevItemIndex = activeIndex - 1;
|
|
@@ -39,14 +39,14 @@ const useCarouselItem = (props, componentName) => {
|
|
|
39
39
|
return index;
|
|
40
40
|
}
|
|
41
41
|
function calcCardTranslate(index, activeIndex) {
|
|
42
|
-
var _a;
|
|
43
|
-
const parentWidth = ((_a = carouselContext.root.value) == null ? void 0 : _a.offsetWidth) || 0;
|
|
42
|
+
var _a, _b;
|
|
43
|
+
const parentWidth = unref(isVertical) ? ((_a = carouselContext.root.value) == null ? void 0 : _a.offsetHeight) || 0 : ((_b = carouselContext.root.value) == null ? void 0 : _b.offsetWidth) || 0;
|
|
44
44
|
if (inStage.value) {
|
|
45
|
-
return parentWidth * ((2 -
|
|
45
|
+
return parentWidth * ((2 - cardScale) * (index - activeIndex) + 1) / 4;
|
|
46
46
|
} else if (index < activeIndex) {
|
|
47
|
-
return -(1 +
|
|
47
|
+
return -(1 + cardScale) * parentWidth / 4;
|
|
48
48
|
} else {
|
|
49
|
-
return (3 +
|
|
49
|
+
return (3 + cardScale) * parentWidth / 4;
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
function calcTranslate(index, activeIndex, isVertical2) {
|
|
@@ -70,16 +70,16 @@ const useCarouselItem = (props, componentName) => {
|
|
|
70
70
|
const _isVertical = unref(isVertical);
|
|
71
71
|
active.value = isActive;
|
|
72
72
|
if (_isCardType) {
|
|
73
|
-
if (_isVertical) {
|
|
74
|
-
debugWarn("Carousel", "vertical direction is not supported for card mode");
|
|
75
|
-
}
|
|
76
73
|
inStage.value = Math.round(Math.abs(index - activeIndex)) <= 1;
|
|
77
74
|
translate.value = calcCardTranslate(index, activeIndex);
|
|
78
|
-
scale.value = unref(active) ? 1 :
|
|
75
|
+
scale.value = unref(active) ? 1 : cardScale;
|
|
79
76
|
} else {
|
|
80
77
|
translate.value = calcTranslate(index, activeIndex, _isVertical);
|
|
81
78
|
}
|
|
82
79
|
ready.value = true;
|
|
80
|
+
if (isActive && carouselItemRef.value) {
|
|
81
|
+
carouselContext.setContainerHeight(carouselItemRef.value.offsetHeight);
|
|
82
|
+
}
|
|
83
83
|
};
|
|
84
84
|
function handleItemClick() {
|
|
85
85
|
if (carouselContext && unref(isCardType)) {
|
|
@@ -87,26 +87,27 @@ const useCarouselItem = (props, componentName) => {
|
|
|
87
87
|
carouselContext.setActiveItem(index);
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
carouselContext.removeItem(
|
|
90
|
+
const carouselItemContext = {
|
|
91
|
+
props,
|
|
92
|
+
states: reactive({
|
|
93
|
+
hover,
|
|
94
|
+
translate,
|
|
95
|
+
scale,
|
|
96
|
+
active,
|
|
97
|
+
ready,
|
|
98
|
+
inStage,
|
|
99
|
+
animating
|
|
100
|
+
}),
|
|
101
|
+
uid: instance.uid,
|
|
102
|
+
getVnode: () => instance.vnode,
|
|
103
|
+
translateItem
|
|
104
|
+
};
|
|
105
|
+
carouselContext.addItem(carouselItemContext);
|
|
106
|
+
onBeforeUnmount(() => {
|
|
107
|
+
carouselContext.removeItem(carouselItemContext);
|
|
108
108
|
});
|
|
109
109
|
return {
|
|
110
|
+
carouselItemRef,
|
|
110
111
|
active,
|
|
111
112
|
animating,
|
|
112
113
|
hover,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-carousel-item.mjs","sources":["../../../../../../packages/components/carousel/src/use-carousel-item.ts"],"sourcesContent":["import {\n getCurrentInstance,\n inject,\n
|
|
1
|
+
{"version":3,"file":"use-carousel-item.mjs","sources":["../../../../../../packages/components/carousel/src/use-carousel-item.ts"],"sourcesContent":["import {\n getCurrentInstance,\n inject,\n onBeforeUnmount,\n reactive,\n ref,\n unref,\n} from 'vue'\nimport { debugWarn, isUndefined } from '@element-plus/utils'\nimport { CAROUSEL_ITEM_NAME, carouselContextKey } from './constants'\n\nimport type { CarouselItemProps } from './carousel-item'\n\nexport const useCarouselItem = (props: CarouselItemProps) => {\n const carouselContext = inject(carouselContextKey)!\n // instance\n const instance = getCurrentInstance()!\n if (!carouselContext) {\n debugWarn(\n CAROUSEL_ITEM_NAME,\n 'usage: <el-carousel></el-carousel-item></el-carousel>'\n )\n }\n\n if (!instance) {\n debugWarn(\n CAROUSEL_ITEM_NAME,\n 'compositional hook can only be invoked inside setups'\n )\n }\n\n const carouselItemRef = ref<HTMLElement>()\n const hover = ref(false)\n const translate = ref(0)\n const scale = ref(1)\n const active = ref(false)\n const ready = ref(false)\n const inStage = ref(false)\n const animating = ref(false)\n\n // computed\n const { isCardType, isVertical, cardScale } = carouselContext\n\n // methods\n\n function processIndex(index: number, activeIndex: number, length: number) {\n const lastItemIndex = length - 1\n const prevItemIndex = activeIndex - 1\n const nextItemIndex = activeIndex + 1\n const halfItemIndex = length / 2\n\n if (activeIndex === 0 && index === lastItemIndex) {\n return -1\n } else if (activeIndex === lastItemIndex && index === 0) {\n return length\n } else if (index < prevItemIndex && activeIndex - index >= halfItemIndex) {\n return length + 1\n } else if (index > nextItemIndex && index - activeIndex >= halfItemIndex) {\n return -2\n }\n return index\n }\n\n function calcCardTranslate(index: number, activeIndex: number) {\n const parentWidth = unref(isVertical)\n ? carouselContext.root.value?.offsetHeight || 0\n : carouselContext.root.value?.offsetWidth || 0\n\n if (inStage.value) {\n return (parentWidth * ((2 - cardScale) * (index - activeIndex) + 1)) / 4\n } else if (index < activeIndex) {\n return (-(1 + cardScale) * parentWidth) / 4\n } else {\n return ((3 + cardScale) * parentWidth) / 4\n }\n }\n\n function calcTranslate(\n index: number,\n activeIndex: number,\n isVertical: boolean\n ) {\n const rootEl = carouselContext.root.value\n if (!rootEl) return 0\n\n const distance =\n (isVertical ? rootEl.offsetHeight : rootEl.offsetWidth) || 0\n return distance * (index - activeIndex)\n }\n\n const translateItem = (\n index: number,\n activeIndex: number,\n oldIndex?: number\n ) => {\n const _isCardType = unref(isCardType)\n const carouselItemLength = carouselContext.items.value.length ?? Number.NaN\n\n const isActive = index === activeIndex\n if (!_isCardType && !isUndefined(oldIndex)) {\n animating.value = isActive || index === oldIndex\n }\n\n if (!isActive && carouselItemLength > 2 && carouselContext.loop) {\n index = processIndex(index, activeIndex, carouselItemLength)\n }\n\n const _isVertical = unref(isVertical)\n active.value = isActive\n\n if (_isCardType) {\n inStage.value = Math.round(Math.abs(index - activeIndex)) <= 1\n translate.value = calcCardTranslate(index, activeIndex)\n scale.value = unref(active) ? 1 : cardScale\n } else {\n translate.value = calcTranslate(index, activeIndex, _isVertical)\n }\n\n ready.value = true\n\n if (isActive && carouselItemRef.value) {\n carouselContext.setContainerHeight(carouselItemRef.value.offsetHeight)\n }\n }\n\n function handleItemClick() {\n if (carouselContext && unref(isCardType)) {\n const index = carouselContext.items.value.findIndex(\n ({ uid }) => uid === instance.uid\n )\n carouselContext.setActiveItem(index)\n }\n }\n\n const carouselItemContext = {\n props,\n states: reactive({\n hover,\n translate,\n scale,\n active,\n ready,\n inStage,\n animating,\n }),\n uid: instance.uid,\n getVnode: () => instance.vnode,\n translateItem,\n }\n\n carouselContext.addItem(carouselItemContext)\n\n onBeforeUnmount(() => {\n carouselContext.removeItem(carouselItemContext)\n })\n\n return {\n carouselItemRef,\n active,\n animating,\n hover,\n inStage,\n isVertical,\n translate,\n isCardType,\n scale,\n ready,\n handleItemClick,\n }\n}\n"],"names":[],"mappings":";;;;;;AAUY,MAAC,eAAe,GAAG,CAAC,KAAK,KAAK;AAC1C,EAAE,MAAM,eAAe,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACrD,EAAE,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;AACxC,EAAE,IAAI,CAAC,eAAe,EAAE;AACxB,IAAI,SAAS,CAAC,kBAAkB,EAAE,uDAAuD,CAAC,CAAC;AAC3F,GAAG;AACH,EAAE,IAAI,CAAC,QAAQ,EAAE;AACjB,IAAI,SAAS,CAAC,kBAAkB,EAAE,sDAAsD,CAAC,CAAC;AAC1F,GAAG;AACH,EAAE,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC;AAChC,EAAE,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC3B,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAC3B,EAAE,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AACvB,EAAE,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC5B,EAAE,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC3B,EAAE,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC7B,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/B,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,eAAe,CAAC;AAChE,EAAE,SAAS,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE;AACpD,IAAI,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,CAAC;AACrC,IAAI,MAAM,aAAa,GAAG,WAAW,GAAG,CAAC,CAAC;AAC1C,IAAI,MAAM,aAAa,GAAG,WAAW,GAAG,CAAC,CAAC;AAC1C,IAAI,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,CAAC;AACrC,IAAI,IAAI,WAAW,KAAK,CAAC,IAAI,KAAK,KAAK,aAAa,EAAE;AACtD,MAAM,OAAO,CAAC,CAAC,CAAC;AAChB,KAAK,MAAM,IAAI,WAAW,KAAK,aAAa,IAAI,KAAK,KAAK,CAAC,EAAE;AAC7D,MAAM,OAAO,MAAM,CAAC;AACpB,KAAK,MAAM,IAAI,KAAK,GAAG,aAAa,IAAI,WAAW,GAAG,KAAK,IAAI,aAAa,EAAE;AAC9E,MAAM,OAAO,MAAM,GAAG,CAAC,CAAC;AACxB,KAAK,MAAM,IAAI,KAAK,GAAG,aAAa,IAAI,KAAK,GAAG,WAAW,IAAI,aAAa,EAAE;AAC9E,MAAM,OAAO,CAAC,CAAC,CAAC;AAChB,KAAK;AACL,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH,EAAE,SAAS,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE;AACjD,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,KAAK,CAAC,CAAC;AACrM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE;AACvB,MAAM,OAAO,WAAW,IAAI,CAAC,CAAC,GAAG,SAAS,KAAK,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAC7E,KAAK,MAAM,IAAI,KAAK,GAAG,WAAW,EAAE;AACpC,MAAM,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC;AAChD,KAAK,MAAM;AACX,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,IAAI,WAAW,GAAG,CAAC,CAAC;AAC/C,KAAK;AACL,GAAG;AACH,EAAE,SAAS,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE;AAC1D,IAAI,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;AAC9C,IAAI,IAAI,CAAC,MAAM;AACf,MAAM,OAAO,CAAC,CAAC;AACf,IAAI,MAAM,QAAQ,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,KAAK,CAAC,CAAC;AACnF,IAAI,OAAO,QAAQ,IAAI,KAAK,GAAG,WAAW,CAAC,CAAC;AAC5C,GAAG;AACH,EAAE,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,KAAK;AAC1D,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;AAC1C,IAAI,MAAM,kBAAkB,GAAG,CAAC,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC;AACnG,IAAI,MAAM,QAAQ,GAAG,KAAK,KAAK,WAAW,CAAC;AAC3C,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;AAChD,MAAM,SAAS,CAAC,KAAK,GAAG,QAAQ,IAAI,KAAK,KAAK,QAAQ,CAAC;AACvD,KAAK;AACL,IAAI,IAAI,CAAC,QAAQ,IAAI,kBAAkB,GAAG,CAAC,IAAI,eAAe,CAAC,IAAI,EAAE;AACrE,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;AACnE,KAAK;AACL,IAAI,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;AAC1C,IAAI,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;AAC5B,IAAI,IAAI,WAAW,EAAE;AACrB,MAAM,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC;AACrE,MAAM,SAAS,CAAC,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;AAC9D,MAAM,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;AAClD,KAAK,MAAM;AACX,MAAM,SAAS,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;AACvE,KAAK;AACL,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;AACvB,IAAI,IAAI,QAAQ,IAAI,eAAe,CAAC,KAAK,EAAE;AAC3C,MAAM,eAAe,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;AAC7E,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,SAAS,eAAe,GAAG;AAC7B,IAAI,IAAI,eAAe,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;AAC9C,MAAM,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC7F,MAAM,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC3C,KAAK;AACL,GAAG;AACH,EAAE,MAAM,mBAAmB,GAAG;AAC9B,IAAI,KAAK;AACT,IAAI,MAAM,EAAE,QAAQ,CAAC;AACrB,MAAM,KAAK;AACX,MAAM,SAAS;AACf,MAAM,KAAK;AACX,MAAM,MAAM;AACZ,MAAM,KAAK;AACX,MAAM,OAAO;AACb,MAAM,SAAS;AACf,KAAK,CAAC;AACN,IAAI,GAAG,EAAE,QAAQ,CAAC,GAAG;AACrB,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAC,KAAK;AAClC,IAAI,aAAa;AACjB,GAAG,CAAC;AACJ,EAAE,eAAe,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC/C,EAAE,eAAe,CAAC,MAAM;AACxB,IAAI,eAAe,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;AACpD,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,eAAe;AACnB,IAAI,MAAM;AACV,IAAI,SAAS;AACb,IAAI,KAAK;AACT,IAAI,OAAO;AACX,IAAI,UAAU;AACd,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,KAAK;AACT,IAAI,KAAK;AACT,IAAI,eAAe;AACnB,GAAG,CAAC;AACJ;;;;"}
|
|
@@ -4,11 +4,21 @@ import type { CarouselEmits, CarouselProps } from './carousel';
|
|
|
4
4
|
export declare const useCarousel: (props: CarouselProps, emit: SetupContext<CarouselEmits>['emit'], componentName: string) => {
|
|
5
5
|
root: import("vue").Ref<HTMLDivElement | undefined>;
|
|
6
6
|
activeIndex: import("vue").Ref<number>;
|
|
7
|
+
exposeActiveIndex: import("vue").WritableComputedRef<number>;
|
|
7
8
|
arrowDisplay: import("vue").ComputedRef<boolean>;
|
|
8
9
|
hasLabel: import("vue").ComputedRef<boolean>;
|
|
9
10
|
hover: import("vue").Ref<boolean>;
|
|
10
11
|
isCardType: import("vue").ComputedRef<boolean>;
|
|
11
12
|
items: import("vue").ShallowRef<CarouselItemContext[]>;
|
|
13
|
+
isVertical: import("vue").ComputedRef<boolean>;
|
|
14
|
+
containerStyle: import("vue").ComputedRef<{
|
|
15
|
+
height: string;
|
|
16
|
+
overflow?: undefined;
|
|
17
|
+
} | {
|
|
18
|
+
height: string;
|
|
19
|
+
overflow: string;
|
|
20
|
+
}>;
|
|
21
|
+
isItemsTwoLength: import("vue").Ref<boolean>;
|
|
12
22
|
handleButtonEnter: (arrow: 'left' | 'right') => void;
|
|
13
23
|
handleButtonLeave: () => void;
|
|
14
24
|
handleIndicatorClick: (index: number) => void;
|
|
@@ -17,6 +27,14 @@ export declare const useCarousel: (props: CarouselProps, emit: SetupContext<Caro
|
|
|
17
27
|
setActiveItem: (index: number | string) => void;
|
|
18
28
|
prev: () => void;
|
|
19
29
|
next: () => void;
|
|
30
|
+
PlaceholderItem: () => ({
|
|
31
|
+
[name: string]: unknown;
|
|
32
|
+
$stable?: boolean | undefined;
|
|
33
|
+
} | import("beyond-webui/es/utils").VNodeChildAtom)[] | null;
|
|
34
|
+
isTwoLengthShow: (index: number) => boolean;
|
|
35
|
+
ItemsSorter: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
36
|
+
[key: string]: any;
|
|
37
|
+
}> | null, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
|
20
38
|
throttledArrowClick: import("lodash").DebouncedFunc<(index: number) => void>;
|
|
21
39
|
throttledIndicatorHover: import("lodash").DebouncedFunc<(index: number) => void>;
|
|
22
40
|
};
|
|
@@ -1,36 +1,59 @@
|
|
|
1
|
-
import { getCurrentInstance, ref, computed, unref, watch, shallowRef, onMounted, onBeforeUnmount, provide } from 'vue';
|
|
1
|
+
import { getCurrentInstance, useSlots, ref, computed, unref, isVNode, watch, shallowRef, onMounted, onBeforeUnmount, provide } from 'vue';
|
|
2
2
|
import { throttle } from 'lodash-unified';
|
|
3
3
|
import { useResizeObserver } from '@vueuse/core';
|
|
4
4
|
import '../../../utils/index.mjs';
|
|
5
5
|
import '../../../hooks/index.mjs';
|
|
6
|
-
import
|
|
6
|
+
import '../../../constants/index.mjs';
|
|
7
|
+
import { CAROUSEL_ITEM_NAME, carouselContextKey } from './constants.mjs';
|
|
7
8
|
import { useOrderedChildren } from '../../../hooks/use-ordered-children/index.mjs';
|
|
8
9
|
import { isString } from '@vue/shared';
|
|
9
10
|
import { debugWarn } from '../../../utils/error.mjs';
|
|
11
|
+
import { flattedChildren } from '../../../utils/vue/vnode.mjs';
|
|
12
|
+
import { CHANGE_EVENT } from '../../../constants/event.mjs';
|
|
10
13
|
|
|
11
14
|
const THROTTLE_TIME = 300;
|
|
12
15
|
const useCarousel = (props, emit, componentName) => {
|
|
13
16
|
const {
|
|
14
17
|
children: items,
|
|
15
18
|
addChild: addItem,
|
|
16
|
-
removeChild: removeItem
|
|
17
|
-
|
|
19
|
+
removeChild: removeItem,
|
|
20
|
+
ChildrenSorter: ItemsSorter
|
|
21
|
+
} = useOrderedChildren(getCurrentInstance(), CAROUSEL_ITEM_NAME);
|
|
22
|
+
const slots = useSlots();
|
|
18
23
|
const activeIndex = ref(-1);
|
|
19
24
|
const timer = ref(null);
|
|
20
25
|
const hover = ref(false);
|
|
21
26
|
const root = ref();
|
|
27
|
+
const containerHeight = ref(0);
|
|
28
|
+
const isItemsTwoLength = ref(true);
|
|
22
29
|
const arrowDisplay = computed(() => props.arrow !== "never" && !unref(isVertical));
|
|
23
30
|
const hasLabel = computed(() => {
|
|
24
31
|
return items.value.some((item) => item.props.label.toString().length > 0);
|
|
25
32
|
});
|
|
26
33
|
const isCardType = computed(() => props.type === "card");
|
|
27
34
|
const isVertical = computed(() => props.direction === "vertical");
|
|
35
|
+
const containerStyle = computed(() => {
|
|
36
|
+
if (props.height !== "auto") {
|
|
37
|
+
return {
|
|
38
|
+
height: props.height
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
height: `${containerHeight.value}px`,
|
|
43
|
+
overflow: "hidden"
|
|
44
|
+
};
|
|
45
|
+
});
|
|
28
46
|
const throttledArrowClick = throttle((index) => {
|
|
29
47
|
setActiveItem(index);
|
|
30
48
|
}, THROTTLE_TIME, { trailing: true });
|
|
31
49
|
const throttledIndicatorHover = throttle((index) => {
|
|
32
50
|
handleIndicatorHover(index);
|
|
33
51
|
}, THROTTLE_TIME);
|
|
52
|
+
const isTwoLengthShow = (index) => {
|
|
53
|
+
if (!isItemsTwoLength.value)
|
|
54
|
+
return true;
|
|
55
|
+
return activeIndex.value <= 1 ? index <= 1 : index > 1;
|
|
56
|
+
};
|
|
34
57
|
function pauseTimer() {
|
|
35
58
|
if (timer.value) {
|
|
36
59
|
clearInterval(timer.value);
|
|
@@ -142,14 +165,46 @@ const useCarousel = (props, emit, componentName) => {
|
|
|
142
165
|
}
|
|
143
166
|
function resetTimer() {
|
|
144
167
|
pauseTimer();
|
|
145
|
-
|
|
168
|
+
if (!props.pauseOnHover)
|
|
169
|
+
startTimer();
|
|
170
|
+
}
|
|
171
|
+
function setContainerHeight(height) {
|
|
172
|
+
if (props.height !== "auto")
|
|
173
|
+
return;
|
|
174
|
+
containerHeight.value = height;
|
|
175
|
+
}
|
|
176
|
+
function PlaceholderItem() {
|
|
177
|
+
var _a;
|
|
178
|
+
const defaultSlots = (_a = slots.default) == null ? void 0 : _a.call(slots);
|
|
179
|
+
if (!defaultSlots)
|
|
180
|
+
return null;
|
|
181
|
+
const flatSlots = flattedChildren(defaultSlots);
|
|
182
|
+
const normalizeSlots = flatSlots.filter((slot) => {
|
|
183
|
+
return isVNode(slot) && slot.type.name === CAROUSEL_ITEM_NAME;
|
|
184
|
+
});
|
|
185
|
+
if ((normalizeSlots == null ? void 0 : normalizeSlots.length) === 2 && props.loop && !isCardType.value) {
|
|
186
|
+
isItemsTwoLength.value = true;
|
|
187
|
+
return normalizeSlots;
|
|
188
|
+
}
|
|
189
|
+
isItemsTwoLength.value = false;
|
|
190
|
+
return null;
|
|
146
191
|
}
|
|
147
192
|
watch(() => activeIndex.value, (current, prev2) => {
|
|
148
193
|
resetItemPosition(prev2);
|
|
194
|
+
if (isItemsTwoLength.value) {
|
|
195
|
+
current = current % 2;
|
|
196
|
+
prev2 = prev2 % 2;
|
|
197
|
+
}
|
|
149
198
|
if (prev2 > -1) {
|
|
150
|
-
emit(
|
|
199
|
+
emit(CHANGE_EVENT, current, prev2);
|
|
151
200
|
}
|
|
152
201
|
});
|
|
202
|
+
const exposeActiveIndex = computed({
|
|
203
|
+
get: () => {
|
|
204
|
+
return isItemsTwoLength.value ? activeIndex.value % 2 : activeIndex.value;
|
|
205
|
+
},
|
|
206
|
+
set: (value) => activeIndex.value = value
|
|
207
|
+
});
|
|
153
208
|
watch(() => props.autoplay, (autoplay) => {
|
|
154
209
|
autoplay ? startTimer() : pauseTimer();
|
|
155
210
|
});
|
|
@@ -159,12 +214,14 @@ const useCarousel = (props, emit, componentName) => {
|
|
|
159
214
|
watch(() => props.interval, () => {
|
|
160
215
|
resetTimer();
|
|
161
216
|
});
|
|
162
|
-
watch(() => items.value, () => {
|
|
163
|
-
if (items.value.length > 0)
|
|
164
|
-
setActiveItem(props.initialIndex);
|
|
165
|
-
});
|
|
166
217
|
const resizeObserver = shallowRef();
|
|
167
218
|
onMounted(() => {
|
|
219
|
+
watch(() => items.value, () => {
|
|
220
|
+
if (items.value.length > 0)
|
|
221
|
+
setActiveItem(props.initialIndex);
|
|
222
|
+
}, {
|
|
223
|
+
immediate: true
|
|
224
|
+
});
|
|
168
225
|
resizeObserver.value = useResizeObserver(root.value, () => {
|
|
169
226
|
resetItemPosition();
|
|
170
227
|
});
|
|
@@ -181,18 +238,24 @@ const useCarousel = (props, emit, componentName) => {
|
|
|
181
238
|
isVertical,
|
|
182
239
|
items,
|
|
183
240
|
loop: props.loop,
|
|
241
|
+
cardScale: props.cardScale,
|
|
184
242
|
addItem,
|
|
185
243
|
removeItem,
|
|
186
|
-
setActiveItem
|
|
244
|
+
setActiveItem,
|
|
245
|
+
setContainerHeight
|
|
187
246
|
});
|
|
188
247
|
return {
|
|
189
248
|
root,
|
|
190
249
|
activeIndex,
|
|
250
|
+
exposeActiveIndex,
|
|
191
251
|
arrowDisplay,
|
|
192
252
|
hasLabel,
|
|
193
253
|
hover,
|
|
194
254
|
isCardType,
|
|
195
255
|
items,
|
|
256
|
+
isVertical,
|
|
257
|
+
containerStyle,
|
|
258
|
+
isItemsTwoLength,
|
|
196
259
|
handleButtonEnter,
|
|
197
260
|
handleButtonLeave,
|
|
198
261
|
handleIndicatorClick,
|
|
@@ -201,6 +264,9 @@ const useCarousel = (props, emit, componentName) => {
|
|
|
201
264
|
setActiveItem,
|
|
202
265
|
prev,
|
|
203
266
|
next,
|
|
267
|
+
PlaceholderItem,
|
|
268
|
+
isTwoLengthShow,
|
|
269
|
+
ItemsSorter,
|
|
204
270
|
throttledArrowClick,
|
|
205
271
|
throttledIndicatorHover
|
|
206
272
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-carousel.mjs","sources":["../../../../../../packages/components/carousel/src/use-carousel.ts"],"sourcesContent":["import {\n computed,\n getCurrentInstance,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n shallowRef,\n unref,\n watch,\n} from 'vue'\nimport { throttle } from 'lodash-unified'\nimport { useResizeObserver } from '@vueuse/core'\nimport { debugWarn, isString } from '@element-plus/utils'\nimport { useOrderedChildren } from '@element-plus/hooks'\nimport { carouselContextKey } from './constants'\n\nimport type { SetupContext } from 'vue'\nimport type { CarouselItemContext } from './constants'\nimport type { CarouselEmits, CarouselProps } from './carousel'\n\nconst THROTTLE_TIME = 300\n\nexport const useCarousel = (\n props: CarouselProps,\n emit: SetupContext<CarouselEmits>['emit'],\n componentName: string\n) => {\n const {\n children: items,\n addChild: addItem,\n removeChild: removeItem,\n } = useOrderedChildren<CarouselItemContext>(\n getCurrentInstance()!,\n 'ElCarouselItem'\n )\n\n // refs\n const activeIndex = ref(-1)\n const timer = ref<ReturnType<typeof setInterval> | null>(null)\n const hover = ref(false)\n const root = ref<HTMLDivElement>()\n\n // computed\n const arrowDisplay = computed(\n () => props.arrow !== 'never' && !unref(isVertical)\n )\n\n const hasLabel = computed(() => {\n return items.value.some((item) => item.props.label.toString().length > 0)\n })\n\n const isCardType = computed(() => props.type === 'card')\n const isVertical = computed(() => props.direction === 'vertical')\n\n // methods\n const throttledArrowClick = throttle(\n (index: number) => {\n setActiveItem(index)\n },\n THROTTLE_TIME,\n { trailing: true }\n )\n\n const throttledIndicatorHover = throttle((index: number) => {\n handleIndicatorHover(index)\n }, THROTTLE_TIME)\n\n function pauseTimer() {\n if (timer.value) {\n clearInterval(timer.value)\n timer.value = null\n }\n }\n\n function startTimer() {\n if (props.interval <= 0 || !props.autoplay || timer.value) return\n timer.value = setInterval(() => playSlides(), props.interval)\n }\n\n const playSlides = () => {\n if (activeIndex.value < items.value.length - 1) {\n activeIndex.value = activeIndex.value + 1\n } else if (props.loop) {\n activeIndex.value = 0\n }\n }\n\n function setActiveItem(index: number | string) {\n if (isString(index)) {\n const filteredItems = items.value.filter(\n (item) => item.props.name === index\n )\n if (filteredItems.length > 0) {\n index = items.value.indexOf(filteredItems[0])\n }\n }\n index = Number(index)\n if (Number.isNaN(index) || index !== Math.floor(index)) {\n debugWarn(componentName, 'index must be integer.')\n return\n }\n const itemCount = items.value.length\n const oldIndex = activeIndex.value\n if (index < 0) {\n activeIndex.value = props.loop ? itemCount - 1 : 0\n } else if (index >= itemCount) {\n activeIndex.value = props.loop ? 0 : itemCount - 1\n } else {\n activeIndex.value = index\n }\n if (oldIndex === activeIndex.value) {\n resetItemPosition(oldIndex)\n }\n resetTimer()\n }\n\n function resetItemPosition(oldIndex?: number) {\n items.value.forEach((item, index) => {\n item.translateItem(index, activeIndex.value, oldIndex)\n })\n }\n\n function itemInStage(item: CarouselItemContext, index: number) {\n const _items = unref(items)\n const itemCount = _items.length\n if (itemCount === 0 || !item.states.inStage) return false\n const nextItemIndex = index + 1\n const prevItemIndex = index - 1\n const lastItemIndex = itemCount - 1\n const isLastItemActive = _items[lastItemIndex].states.active\n const isFirstItemActive = _items[0].states.active\n const isNextItemActive = _items[nextItemIndex]?.states?.active\n const isPrevItemActive = _items[prevItemIndex]?.states?.active\n\n if ((index === lastItemIndex && isFirstItemActive) || isNextItemActive) {\n return 'left'\n } else if ((index === 0 && isLastItemActive) || isPrevItemActive) {\n return 'right'\n }\n return false\n }\n\n function handleMouseEnter() {\n hover.value = true\n if (props.pauseOnHover) {\n pauseTimer()\n }\n }\n\n function handleMouseLeave() {\n hover.value = false\n startTimer()\n }\n\n function handleButtonEnter(arrow: 'left' | 'right') {\n if (unref(isVertical)) return\n items.value.forEach((item, index) => {\n if (arrow === itemInStage(item, index)) {\n item.states.hover = true\n }\n })\n }\n\n function handleButtonLeave() {\n if (unref(isVertical)) return\n items.value.forEach((item) => {\n item.states.hover = false\n })\n }\n\n function handleIndicatorClick(index: number) {\n activeIndex.value = index\n }\n\n function handleIndicatorHover(index: number) {\n if (props.trigger === 'hover' && index !== activeIndex.value) {\n activeIndex.value = index\n }\n }\n\n function prev() {\n setActiveItem(activeIndex.value - 1)\n }\n\n function next() {\n setActiveItem(activeIndex.value + 1)\n }\n\n function resetTimer() {\n pauseTimer()\n startTimer()\n }\n\n // watch\n watch(\n () => activeIndex.value,\n (current, prev) => {\n resetItemPosition(prev)\n if (prev > -1) {\n emit('change', current, prev)\n }\n }\n )\n watch(\n () => props.autoplay,\n (autoplay) => {\n autoplay ? startTimer() : pauseTimer()\n }\n )\n watch(\n () => props.loop,\n () => {\n setActiveItem(activeIndex.value)\n }\n )\n\n watch(\n () => props.interval,\n () => {\n resetTimer()\n }\n )\n\n watch(\n () => items.value,\n () => {\n if (items.value.length > 0) setActiveItem(props.initialIndex)\n }\n )\n\n const resizeObserver = shallowRef<ReturnType<typeof useResizeObserver>>()\n // lifecycle\n onMounted(() => {\n resizeObserver.value = useResizeObserver(root.value, () => {\n resetItemPosition()\n })\n startTimer()\n })\n\n onBeforeUnmount(() => {\n pauseTimer()\n if (root.value && resizeObserver.value) resizeObserver.value.stop()\n })\n\n // provide\n provide(carouselContextKey, {\n root,\n isCardType,\n isVertical,\n items,\n loop: props.loop,\n addItem,\n removeItem,\n setActiveItem,\n })\n\n return {\n root,\n activeIndex,\n arrowDisplay,\n hasLabel,\n hover,\n isCardType,\n items,\n handleButtonEnter,\n handleButtonLeave,\n handleIndicatorClick,\n handleMouseEnter,\n handleMouseLeave,\n setActiveItem,\n prev,\n next,\n throttledArrowClick,\n throttledIndicatorHover,\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-carousel.mjs","sources":["../../../../../../packages/components/carousel/src/use-carousel.ts"],"sourcesContent":["import {\n computed,\n getCurrentInstance,\n isVNode,\n onBeforeUnmount,\n onMounted,\n provide,\n ref,\n shallowRef,\n unref,\n useSlots,\n watch,\n} from 'vue'\nimport { throttle } from 'lodash-unified'\nimport { useResizeObserver } from '@vueuse/core'\nimport { debugWarn, flattedChildren, isString } from '@element-plus/utils'\nimport { useOrderedChildren } from '@element-plus/hooks'\nimport { CHANGE_EVENT } from '@element-plus/constants'\nimport { CAROUSEL_ITEM_NAME, carouselContextKey } from './constants'\n\nimport type { SetupContext } from 'vue'\nimport type { CarouselItemContext } from './constants'\nimport type { CarouselEmits, CarouselProps } from './carousel'\n\nconst THROTTLE_TIME = 300\n\nexport const useCarousel = (\n props: CarouselProps,\n emit: SetupContext<CarouselEmits>['emit'],\n componentName: string\n) => {\n const {\n children: items,\n addChild: addItem,\n removeChild: removeItem,\n ChildrenSorter: ItemsSorter,\n } = useOrderedChildren<CarouselItemContext>(\n getCurrentInstance()!,\n CAROUSEL_ITEM_NAME\n )\n\n const slots = useSlots()\n\n // refs\n const activeIndex = ref(-1)\n const timer = ref<ReturnType<typeof setInterval> | null>(null)\n const hover = ref(false)\n const root = ref<HTMLDivElement>()\n const containerHeight = ref<number>(0)\n const isItemsTwoLength = ref(true)\n\n // computed\n const arrowDisplay = computed(\n () => props.arrow !== 'never' && !unref(isVertical)\n )\n\n const hasLabel = computed(() => {\n return items.value.some((item) => item.props.label.toString().length > 0)\n })\n\n const isCardType = computed(() => props.type === 'card')\n const isVertical = computed(() => props.direction === 'vertical')\n\n const containerStyle = computed(() => {\n if (props.height !== 'auto') {\n return {\n height: props.height,\n }\n }\n return {\n height: `${containerHeight.value}px`,\n overflow: 'hidden',\n }\n })\n\n // methods\n const throttledArrowClick = throttle(\n (index: number) => {\n setActiveItem(index)\n },\n THROTTLE_TIME,\n { trailing: true }\n )\n\n const throttledIndicatorHover = throttle((index: number) => {\n handleIndicatorHover(index)\n }, THROTTLE_TIME)\n\n const isTwoLengthShow = (index: number) => {\n if (!isItemsTwoLength.value) return true\n return activeIndex.value <= 1 ? index <= 1 : index > 1\n }\n\n function pauseTimer() {\n if (timer.value) {\n clearInterval(timer.value)\n timer.value = null\n }\n }\n\n function startTimer() {\n if (props.interval <= 0 || !props.autoplay || timer.value) return\n timer.value = setInterval(() => playSlides(), props.interval)\n }\n\n const playSlides = () => {\n if (activeIndex.value < items.value.length - 1) {\n activeIndex.value = activeIndex.value + 1\n } else if (props.loop) {\n activeIndex.value = 0\n }\n }\n\n function setActiveItem(index: number | string) {\n if (isString(index)) {\n const filteredItems = items.value.filter(\n (item) => item.props.name === index\n )\n if (filteredItems.length > 0) {\n index = items.value.indexOf(filteredItems[0])\n }\n }\n index = Number(index)\n if (Number.isNaN(index) || index !== Math.floor(index)) {\n debugWarn(componentName, 'index must be integer.')\n return\n }\n const itemCount = items.value.length\n const oldIndex = activeIndex.value\n if (index < 0) {\n activeIndex.value = props.loop ? itemCount - 1 : 0\n } else if (index >= itemCount) {\n activeIndex.value = props.loop ? 0 : itemCount - 1\n } else {\n activeIndex.value = index\n }\n if (oldIndex === activeIndex.value) {\n resetItemPosition(oldIndex)\n }\n resetTimer()\n }\n\n function resetItemPosition(oldIndex?: number) {\n items.value.forEach((item, index) => {\n item.translateItem(index, activeIndex.value, oldIndex)\n })\n }\n\n function itemInStage(item: CarouselItemContext, index: number) {\n const _items = unref(items)\n const itemCount = _items.length\n if (itemCount === 0 || !item.states.inStage) return false\n const nextItemIndex = index + 1\n const prevItemIndex = index - 1\n const lastItemIndex = itemCount - 1\n const isLastItemActive = _items[lastItemIndex].states.active\n const isFirstItemActive = _items[0].states.active\n const isNextItemActive = _items[nextItemIndex]?.states?.active\n const isPrevItemActive = _items[prevItemIndex]?.states?.active\n\n if ((index === lastItemIndex && isFirstItemActive) || isNextItemActive) {\n return 'left'\n } else if ((index === 0 && isLastItemActive) || isPrevItemActive) {\n return 'right'\n }\n return false\n }\n\n function handleMouseEnter() {\n hover.value = true\n if (props.pauseOnHover) {\n pauseTimer()\n }\n }\n\n function handleMouseLeave() {\n hover.value = false\n startTimer()\n }\n\n function handleButtonEnter(arrow: 'left' | 'right') {\n if (unref(isVertical)) return\n items.value.forEach((item, index) => {\n if (arrow === itemInStage(item, index)) {\n item.states.hover = true\n }\n })\n }\n\n function handleButtonLeave() {\n if (unref(isVertical)) return\n items.value.forEach((item) => {\n item.states.hover = false\n })\n }\n\n function handleIndicatorClick(index: number) {\n activeIndex.value = index\n }\n\n function handleIndicatorHover(index: number) {\n if (props.trigger === 'hover' && index !== activeIndex.value) {\n activeIndex.value = index\n }\n }\n\n function prev() {\n setActiveItem(activeIndex.value - 1)\n }\n\n function next() {\n setActiveItem(activeIndex.value + 1)\n }\n\n function resetTimer() {\n pauseTimer()\n if (!props.pauseOnHover) startTimer()\n }\n\n function setContainerHeight(height: number) {\n if (props.height !== 'auto') return\n containerHeight.value = height\n }\n\n function PlaceholderItem() {\n // fix: https://github.com/element-plus/element-plus/issues/12139\n const defaultSlots = slots.default?.()\n if (!defaultSlots) return null\n\n const flatSlots = flattedChildren(defaultSlots)\n\n const normalizeSlots = flatSlots.filter((slot) => {\n return isVNode(slot) && (slot.type as any).name === CAROUSEL_ITEM_NAME\n })\n\n if (normalizeSlots?.length === 2 && props.loop && !isCardType.value) {\n isItemsTwoLength.value = true\n return normalizeSlots\n }\n isItemsTwoLength.value = false\n return null\n }\n\n // watch\n watch(\n () => activeIndex.value,\n (current, prev) => {\n resetItemPosition(prev)\n if (isItemsTwoLength.value) {\n current = current % 2\n prev = prev % 2\n }\n if (prev > -1) {\n emit(CHANGE_EVENT, current, prev)\n }\n }\n )\n\n const exposeActiveIndex = computed({\n get: () => {\n return isItemsTwoLength.value ? activeIndex.value % 2 : activeIndex.value\n },\n set: (value) => (activeIndex.value = value),\n })\n\n watch(\n () => props.autoplay,\n (autoplay) => {\n autoplay ? startTimer() : pauseTimer()\n }\n )\n watch(\n () => props.loop,\n () => {\n setActiveItem(activeIndex.value)\n }\n )\n\n watch(\n () => props.interval,\n () => {\n resetTimer()\n }\n )\n\n const resizeObserver = shallowRef<ReturnType<typeof useResizeObserver>>()\n // lifecycle\n onMounted(() => {\n watch(\n () => items.value,\n () => {\n if (items.value.length > 0) setActiveItem(props.initialIndex)\n },\n {\n immediate: true,\n }\n )\n\n resizeObserver.value = useResizeObserver(root.value, () => {\n resetItemPosition()\n })\n startTimer()\n })\n\n onBeforeUnmount(() => {\n pauseTimer()\n if (root.value && resizeObserver.value) resizeObserver.value.stop()\n })\n\n // provide\n provide(carouselContextKey, {\n root,\n isCardType,\n isVertical,\n items,\n loop: props.loop,\n cardScale: props.cardScale,\n addItem,\n removeItem,\n setActiveItem,\n setContainerHeight,\n })\n\n return {\n root,\n activeIndex,\n exposeActiveIndex,\n arrowDisplay,\n hasLabel,\n hover,\n isCardType,\n items,\n isVertical,\n containerStyle,\n isItemsTwoLength,\n handleButtonEnter,\n handleButtonLeave,\n handleIndicatorClick,\n handleMouseEnter,\n handleMouseLeave,\n setActiveItem,\n prev,\n next,\n PlaceholderItem,\n isTwoLengthShow,\n ItemsSorter,\n throttledArrowClick,\n throttledIndicatorHover,\n }\n}\n"],"names":[],"mappings":"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"}
|