element-plus-secondary 0.6.11 → 0.6.13
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/es/components/affix/index.mjs +2 -2
- package/es/components/affix/index.mjs.map +1 -1
- package/es/components/affix/src/affix.mjs +1 -3
- package/es/components/affix/src/affix.mjs.map +1 -1
- package/es/components/alert/index.mjs +2 -2
- package/es/components/alert/index.mjs.map +1 -1
- package/es/components/alert/src/alert2.mjs +1 -3
- package/es/components/alert/src/alert2.mjs.map +1 -1
- package/es/components/autocomplete/index.d.ts +53 -53
- package/es/components/autocomplete/index.mjs +3 -3
- package/es/components/autocomplete/index.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete.mjs +71 -353
- package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete.vue.d.ts +53 -53
- package/es/components/autocomplete/src/autocomplete2.mjs +351 -71
- package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
- package/es/components/avatar/index.mjs +2 -2
- package/es/components/avatar/index.mjs.map +1 -1
- package/es/components/avatar/src/avatar2.mjs +1 -3
- package/es/components/avatar/src/avatar2.mjs.map +1 -1
- package/es/components/backtop/index.mjs +2 -2
- package/es/components/backtop/index.mjs.map +1 -1
- package/es/components/backtop/src/backtop.mjs +1 -3
- package/es/components/backtop/src/backtop.mjs.map +1 -1
- package/es/components/badge/index.mjs +3 -3
- package/es/components/badge/index.mjs.map +1 -1
- package/es/components/badge/src/badge.mjs +53 -17
- package/es/components/badge/src/badge.mjs.map +1 -1
- package/es/components/badge/src/badge2.mjs +17 -55
- package/es/components/badge/src/badge2.mjs.map +1 -1
- package/es/components/breadcrumb/index.mjs +7 -7
- package/es/components/breadcrumb/index.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb-item.mjs +11 -57
- package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb-item2.mjs +55 -11
- package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb.mjs +35 -11
- package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb2.mjs +11 -37
- package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
- package/es/components/button/index.mjs +6 -6
- package/es/components/button/index.mjs.map +1 -1
- package/es/components/button/src/button-group.mjs +1 -1
- package/es/components/button/src/button-group2.mjs +1 -3
- package/es/components/button/src/button-group2.mjs.map +1 -1
- package/es/components/button/src/button.mjs +54 -78
- package/es/components/button/src/button.mjs.map +1 -1
- package/es/components/button/src/button2.mjs +76 -54
- package/es/components/button/src/button2.mjs.map +1 -1
- package/es/components/calendar/index.mjs +2 -2
- package/es/components/calendar/index.mjs.map +1 -1
- package/es/components/calendar/src/calendar.mjs +4 -6
- package/es/components/calendar/src/calendar.mjs.map +1 -1
- package/es/components/calendar/src/date-table2.mjs +1 -3
- package/es/components/calendar/src/date-table2.mjs.map +1 -1
- package/es/components/card/index.mjs +2 -2
- package/es/components/card/index.mjs.map +1 -1
- package/es/components/card/src/card.mjs +1 -3
- package/es/components/card/src/card.mjs.map +1 -1
- package/es/components/carousel/index.d.ts +1 -1
- package/es/components/carousel/index.mjs +7 -7
- package/es/components/carousel/index.mjs.map +1 -1
- package/es/components/carousel/src/carousel-item.mjs +61 -8
- package/es/components/carousel/src/carousel-item.mjs.map +1 -1
- package/es/components/carousel/src/carousel-item2.mjs +8 -63
- package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
- package/es/components/carousel/src/carousel.mjs +60 -159
- package/es/components/carousel/src/carousel.mjs.map +1 -1
- package/es/components/carousel/src/carousel.vue.d.ts +1 -1
- package/es/components/carousel/src/carousel2.mjs +157 -60
- package/es/components/carousel/src/carousel2.mjs.map +1 -1
- package/es/components/cascader/index.d.ts +72 -72
- package/es/components/cascader/src/index.mjs +1 -1
- package/es/components/cascader/src/index.vue.d.ts +36 -36
- package/es/components/cascader-panel/src/index.mjs +1 -1
- package/es/components/cascader-panel/src/menu.mjs +1 -1
- package/es/components/cascader-panel/src/node2.mjs +1 -1
- package/es/components/check-tag/index.mjs +2 -2
- package/es/components/check-tag/index.mjs.map +1 -1
- package/es/components/check-tag/src/check-tag.mjs +1 -3
- package/es/components/check-tag/src/check-tag.mjs.map +1 -1
- package/es/components/checkbox/index.mjs +10 -10
- package/es/components/checkbox/index.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox-button.mjs +2 -4
- package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox-group.mjs +70 -28
- package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox-group2.mjs +28 -72
- package/es/components/checkbox/src/checkbox-group2.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox.mjs +115 -54
- package/es/components/checkbox/src/checkbox.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox2.mjs +54 -117
- package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
- package/es/components/col/index.mjs +3 -3
- package/es/components/col/index.mjs.map +1 -1
- package/es/components/col/src/col.mjs +43 -66
- package/es/components/col/src/col.mjs.map +1 -1
- package/es/components/col/src/col2.mjs +64 -43
- package/es/components/col/src/col2.mjs.map +1 -1
- package/es/components/collapse/index.mjs +6 -6
- package/es/components/collapse/index.mjs.map +1 -1
- package/es/components/collapse/src/collapse-item.mjs +95 -19
- package/es/components/collapse/src/collapse-item.mjs.map +1 -1
- package/es/components/collapse/src/collapse-item2.mjs +19 -97
- package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
- package/es/components/collapse/src/collapse.mjs +1 -3
- package/es/components/collapse/src/collapse.mjs.map +1 -1
- package/es/components/collapse-transition/index.mjs +4 -4
- package/es/components/collapse-transition/index.mjs.map +1 -1
- package/es/components/collapse-transition/src/collapse-transition.mjs +1 -3
- package/es/components/collapse-transition/src/collapse-transition.mjs.map +1 -1
- package/es/components/collection/index.mjs +1 -1
- package/es/components/collection/src/collection-item.mjs +1 -1
- package/es/components/collection/src/collection.mjs +62 -10
- package/es/components/collection/src/collection.mjs.map +1 -1
- package/es/components/collection/src/collection2.mjs +10 -62
- package/es/components/collection/src/collection2.mjs.map +1 -1
- package/es/components/color-picker/index.d.ts +123 -123
- package/es/components/color-picker/index.mjs +2 -2
- package/es/components/color-picker/index.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker.mjs +3 -5
- package/es/components/color-picker/src/color-picker.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker.vue.d.ts +123 -123
- package/es/components/color-picker/src/components/alpha-slider.mjs +1 -3
- package/es/components/color-picker/src/components/alpha-slider.mjs.map +1 -1
- package/es/components/color-picker/src/components/alpha-slider.vue.d.ts +32 -32
- package/es/components/color-picker/src/components/hue-slider.mjs +1 -1
- package/es/components/color-picker/src/components/predefine.mjs +1 -1
- package/es/components/color-picker/src/components/sv-panel.mjs +1 -1
- package/es/components/container/index.mjs +14 -14
- package/es/components/container/index.mjs.map +1 -1
- package/es/components/container/src/aside.mjs +1 -3
- package/es/components/container/src/aside.mjs.map +1 -1
- package/es/components/container/src/container.mjs +1 -3
- package/es/components/container/src/container.mjs.map +1 -1
- package/es/components/container/src/footer.mjs +1 -3
- package/es/components/container/src/footer.mjs.map +1 -1
- package/es/components/container/src/header.mjs +1 -3
- package/es/components/container/src/header.mjs.map +1 -1
- package/es/components/container/src/main.mjs +1 -3
- package/es/components/container/src/main.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs +1 -3
- package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs +1 -3
- package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-year-range-table.mjs +1 -3
- package/es/components/date-picker/src/date-picker-com/basic-year-range-table.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-year-table.mjs +1 -3
- package/es/components/date-picker/src/date-picker-com/basic-year-table.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +9 -11
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +9 -9
- package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs +8 -10
- package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +9 -9
- package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs +4 -6
- package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-year-range.mjs +4 -6
- package/es/components/date-picker/src/date-picker-com/panel-year-range.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker.mjs +2 -2
- package/es/components/date-picker/src/date-picker.mjs.map +1 -1
- package/es/components/date-picker/src/panel-utils.d.ts +18 -18
- package/es/components/date-picker/src/panel-utils.mjs +8 -8
- package/es/components/date-picker/src/panel-utils.mjs.map +1 -1
- package/es/components/descriptions/index.mjs +3 -3
- package/es/components/descriptions/index.mjs.map +1 -1
- package/es/components/descriptions/src/description.mjs +108 -25
- package/es/components/descriptions/src/description.mjs.map +1 -1
- package/es/components/descriptions/src/description2.mjs +25 -110
- package/es/components/descriptions/src/description2.mjs.map +1 -1
- package/es/components/descriptions/src/descriptions-row.mjs +7 -64
- package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
- package/es/components/descriptions/src/descriptions-row2.mjs +62 -7
- package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
- package/es/components/dialog/index.d.ts +3 -3
- package/es/components/dialog/index.mjs +2 -2
- package/es/components/dialog/index.mjs.map +1 -1
- package/es/components/dialog/src/dialog-content.mjs +85 -37
- package/es/components/dialog/src/dialog-content.mjs.map +1 -1
- package/es/components/dialog/src/dialog-content2.mjs +37 -87
- package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
- package/es/components/dialog/src/dialog.mjs +1 -1
- package/es/components/dialog/src/dialog.vue.d.ts +3 -3
- package/es/components/dialog/src/dialog2.mjs +3 -5
- package/es/components/dialog/src/dialog2.mjs.map +1 -1
- package/es/components/divider/index.mjs +3 -3
- package/es/components/divider/index.mjs.map +1 -1
- 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 +33 -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/src/dropdown-item-impl.mjs +2 -2
- 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 +1 -1
- package/es/components/dropdown/src/dropdown.vue.d.ts +12 -12
- package/es/components/dropdown/src/dropdown2.mjs +1 -1
- package/es/components/empty/index.mjs +3 -3
- package/es/components/empty/index.mjs.map +1 -1
- package/es/components/empty/src/empty.mjs +11 -56
- package/es/components/empty/src/empty.mjs.map +1 -1
- package/es/components/empty/src/empty2.mjs +54 -11
- package/es/components/empty/src/empty2.mjs.map +1 -1
- package/es/components/empty/src/img-empty.mjs +1 -1
- package/es/components/focus-trap/src/focus-trap.mjs +1 -1
- package/es/components/focus-trap/src/focus-trap.vue.d.ts +3 -3
- package/es/components/form/index.mjs +6 -6
- package/es/components/form/index.mjs.map +1 -1
- package/es/components/form/src/form-item.mjs +314 -43
- package/es/components/form/src/form-item.mjs.map +1 -1
- package/es/components/form/src/form-item2.mjs +43 -316
- package/es/components/form/src/form-item2.mjs.map +1 -1
- package/es/components/form/src/form2.mjs +1 -3
- package/es/components/form/src/form2.mjs.map +1 -1
- package/es/components/icon/index.mjs +3 -3
- package/es/components/icon/index.mjs.map +1 -1
- package/es/components/icon/src/icon.mjs +8 -36
- package/es/components/icon/src/icon.mjs.map +1 -1
- package/es/components/icon/src/icon2.mjs +34 -8
- package/es/components/icon/src/icon2.mjs.map +1 -1
- package/es/components/image/index.d.ts +1 -1
- package/es/components/image/index.mjs +2 -2
- package/es/components/image/index.mjs.map +1 -1
- package/es/components/image/src/image.vue.d.ts +1 -1
- package/es/components/image/src/image2.mjs +1 -3
- package/es/components/image/src/image2.mjs.map +1 -1
- package/es/components/image-viewer/index.mjs +3 -3
- package/es/components/image-viewer/index.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer.mjs +403 -35
- package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer2.mjs +35 -405
- package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
- package/es/components/index.mjs +35 -35
- package/es/components/input/index.d.ts +9 -9
- package/es/components/input/index.mjs +2 -2
- package/es/components/input/index.mjs.map +1 -1
- package/es/components/input/src/input.vue.d.ts +9 -9
- package/es/components/input/src/input2.mjs +1 -3
- package/es/components/input/src/input2.mjs.map +1 -1
- package/es/components/input-number/index.d.ts +32 -32
- package/es/components/input-number/index.mjs +3 -3
- package/es/components/input-number/index.mjs.map +1 -1
- package/es/components/input-number/src/input-number.mjs +62 -322
- package/es/components/input-number/src/input-number.mjs.map +1 -1
- package/es/components/input-number/src/input-number.vue.d.ts +32 -32
- package/es/components/input-number/src/input-number2.mjs +320 -62
- package/es/components/input-number/src/input-number2.mjs.map +1 -1
- package/es/components/link/index.mjs +2 -2
- package/es/components/link/index.mjs.map +1 -1
- package/es/components/link/src/link.mjs +1 -3
- package/es/components/link/src/link.mjs.map +1 -1
- package/es/components/menu/index.mjs +2 -2
- package/es/components/menu/src/menu-collapse-transition.mjs +1 -1
- package/es/components/menu/src/menu-item-group.mjs +4 -35
- package/es/components/menu/src/menu-item-group.mjs.map +1 -1
- package/es/components/menu/src/menu-item-group2.mjs +35 -4
- package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
- package/es/components/menu/src/menu-item.mjs +2 -2
- package/es/components/message/index.mjs +1 -1
- package/es/components/message/src/message.mjs +86 -146
- package/es/components/message/src/message.mjs.map +1 -1
- package/es/components/message/src/message2.mjs +144 -86
- package/es/components/message/src/message2.mjs.map +1 -1
- package/es/components/message/src/method.mjs +3 -3
- package/es/components/message/src/method.mjs.map +1 -1
- package/es/components/message-box/src/index.mjs +1 -1
- package/es/components/notification/index.mjs +1 -1
- package/es/components/notification/src/notification.mjs +143 -69
- package/es/components/notification/src/notification.mjs.map +1 -1
- package/es/components/notification/src/notification2.mjs +69 -145
- package/es/components/notification/src/notification2.mjs.map +1 -1
- package/es/components/notification/src/notify.mjs +3 -3
- package/es/components/notification/src/notify.mjs.map +1 -1
- package/es/components/page-header/index.mjs +3 -3
- package/es/components/page-header/index.mjs.map +1 -1
- package/es/components/page-header/src/page-header.mjs +100 -17
- package/es/components/page-header/src/page-header.mjs.map +1 -1
- package/es/components/page-header/src/page-header2.mjs +17 -102
- package/es/components/page-header/src/page-header2.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper.mjs +58 -9
- package/es/components/pagination/src/components/jumper.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper.vue.d.ts +9 -9
- package/es/components/pagination/src/components/jumper2.mjs +9 -60
- package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
- package/es/components/pagination/src/components/next2.mjs +1 -3
- package/es/components/pagination/src/components/next2.mjs.map +1 -1
- package/es/components/pagination/src/components/pager.mjs +17 -208
- package/es/components/pagination/src/components/pager.mjs.map +1 -1
- package/es/components/pagination/src/components/pager2.mjs +206 -17
- package/es/components/pagination/src/components/pager2.mjs.map +1 -1
- package/es/components/pagination/src/components/prev2.mjs +1 -3
- package/es/components/pagination/src/components/prev2.mjs.map +1 -1
- package/es/components/pagination/src/components/sizes.mjs +66 -22
- package/es/components/pagination/src/components/sizes.mjs.map +1 -1
- package/es/components/pagination/src/components/sizes.vue.d.ts +13 -13
- package/es/components/pagination/src/components/sizes2.mjs +22 -68
- package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
- package/es/components/pagination/src/components/total.mjs +1 -3
- package/es/components/pagination/src/components/total.mjs.map +1 -1
- package/es/components/pagination/src/pagination.mjs +12 -12
- package/es/components/pagination/src/pagination.mjs.map +1 -1
- package/es/components/popconfirm/index.d.ts +18 -18
- package/es/components/popconfirm/index.mjs +2 -2
- package/es/components/popconfirm/index.mjs.map +1 -1
- package/es/components/popconfirm/src/popconfirm.mjs +1 -1
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +18 -18
- package/es/components/popconfirm/src/popconfirm2.mjs +1 -3
- 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/index.mjs.map +1 -1
- package/es/components/popover/src/popover.vue.d.ts +18 -18
- package/es/components/popover/src/popover2.mjs +1 -3
- package/es/components/popover/src/popover2.mjs.map +1 -1
- package/es/components/popper/index.mjs +7 -7
- package/es/components/popper/index.mjs.map +1 -1
- package/es/components/popper/src/arrow2.mjs +1 -1
- package/es/components/popper/src/content.mjs +210 -94
- package/es/components/popper/src/content.mjs.map +1 -1
- package/es/components/popper/src/content.vue.d.ts +6 -6
- package/es/components/popper/src/content2.mjs +94 -212
- package/es/components/popper/src/content2.mjs.map +1 -1
- package/es/components/popper/src/popper.mjs +31 -25
- package/es/components/popper/src/popper.mjs.map +1 -1
- package/es/components/popper/src/popper2.mjs +25 -33
- package/es/components/popper/src/popper2.mjs.map +1 -1
- package/es/components/popper/src/trigger.mjs +118 -31
- package/es/components/popper/src/trigger.mjs.map +1 -1
- package/es/components/popper/src/trigger2.mjs +31 -120
- package/es/components/popper/src/trigger2.mjs.map +1 -1
- package/es/components/progress/index.mjs +2 -2
- package/es/components/progress/index.mjs.map +1 -1
- package/es/components/progress/src/progress.mjs +1 -3
- package/es/components/progress/src/progress.mjs.map +1 -1
- package/es/components/radio/index.mjs +9 -9
- package/es/components/radio/index.mjs.map +1 -1
- package/es/components/radio/src/radio-button.mjs +1 -1
- package/es/components/radio/src/radio-button2.mjs +1 -3
- package/es/components/radio/src/radio-button2.mjs.map +1 -1
- package/es/components/radio/src/radio-group.mjs +1 -3
- package/es/components/radio/src/radio-group.mjs.map +1 -1
- package/es/components/radio/src/radio-group2.mjs +1 -1
- package/es/components/radio/src/radio.mjs +34 -78
- package/es/components/radio/src/radio.mjs.map +1 -1
- package/es/components/radio/src/radio2.mjs +76 -34
- package/es/components/radio/src/radio2.mjs.map +1 -1
- package/es/components/rate/index.mjs +2 -2
- package/es/components/rate/index.mjs.map +1 -1
- package/es/components/rate/src/rate2.mjs +1 -3
- package/es/components/rate/src/rate2.mjs.map +1 -1
- package/es/components/result/index.mjs +3 -3
- package/es/components/result/index.mjs.map +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/result2.mjs +61 -29
- package/es/components/result/src/result2.mjs.map +1 -1
- package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +1 -1
- package/es/components/roving-focus-group/src/roving-focus-group.mjs +1 -1
- package/es/components/roving-focus-group/src/roving-focus-group2.mjs +1 -1
- package/es/components/roving-focus-group/src/roving-focus-item.mjs +1 -1
- package/es/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
- package/es/components/row/index.mjs +3 -3
- package/es/components/row/index.mjs.map +1 -1
- package/es/components/row/src/row.mjs +30 -45
- package/es/components/row/src/row.mjs.map +1 -1
- package/es/components/row/src/row2.mjs +43 -30
- package/es/components/row/src/row2.mjs.map +1 -1
- package/es/components/scrollbar/index.mjs +2 -2
- package/es/components/scrollbar/index.mjs.map +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 +40 -17
- package/es/components/scrollbar/src/bar2.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar2.mjs +3 -5
- package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
- package/es/components/scrollbar/src/thumb.mjs +1 -3
- package/es/components/scrollbar/src/thumb.mjs.map +1 -1
- package/es/components/select/index.d.ts +13 -13
- package/es/components/select/src/arrow-down.mjs +1 -1
- package/es/components/select/src/option-group.mjs +1 -1
- package/es/components/select/src/option.mjs +1 -1
- package/es/components/select/src/select-dropdown.mjs +1 -1
- package/es/components/select/src/select.mjs +1 -1
- package/es/components/select/src/select.vue.d.ts +13 -13
- package/es/components/select/src/useSelect.d.ts +12 -12
- package/es/components/select-v2/index.d.ts +26 -26
- package/es/components/select-v2/src/group-item.mjs +1 -1
- package/es/components/select-v2/src/option-item-checkbox.mjs +1 -1
- package/es/components/select-v2/src/option-item.mjs +1 -1
- package/es/components/select-v2/src/select.mjs +1 -1
- package/es/components/select-v2/src/select.vue.d.ts +13 -13
- package/es/components/select-v2/src/useSelect.d.ts +12 -12
- package/es/components/skeleton/index.mjs +5 -5
- package/es/components/skeleton/index.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton-item2.mjs +1 -3
- package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton2.mjs +4 -6
- package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
- package/es/components/slider/index.d.ts +62 -62
- package/es/components/slider/index.mjs +2 -2
- package/es/components/slider/index.mjs.map +1 -1
- package/es/components/slider/src/button.mjs +21 -95
- 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 +93 -21
- 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 +4 -6
- package/es/components/slider/src/slider.mjs.map +1 -1
- package/es/components/slider/src/slider.vue.d.ts +62 -62
- package/es/components/steps/index.mjs +5 -5
- package/es/components/steps/index.mjs.map +1 -1
- package/es/components/steps/src/item.mjs +1 -3
- package/es/components/steps/src/item.mjs.map +1 -1
- package/es/components/steps/src/steps.mjs +1 -3
- package/es/components/steps/src/steps.mjs.map +1 -1
- package/es/components/switch/index.mjs +2 -2
- package/es/components/switch/index.mjs.map +1 -1
- package/es/components/switch/src/switch.mjs +1 -3
- package/es/components/switch/src/switch.mjs.map +1 -1
- package/es/components/table/index.d.ts +1 -1
- package/es/components/table/src/filter-panel.mjs +1 -1
- package/es/components/table/src/filter-panel.vue.d.ts +12 -12
- package/es/components/table/src/table.mjs +1 -1
- package/es/components/table/src/table.vue.d.ts +1 -1
- package/es/components/tabs/index.mjs +5 -5
- package/es/components/tabs/index.mjs.map +1 -1
- package/es/components/tabs/src/tab-bar.mjs +7 -81
- package/es/components/tabs/src/tab-bar.mjs.map +1 -1
- package/es/components/tabs/src/tab-bar2.mjs +79 -7
- package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
- package/es/components/tabs/src/tab-nav.mjs +2 -2
- package/es/components/tabs/src/tab-nav.mjs.map +1 -1
- package/es/components/tabs/src/tab-pane.mjs +13 -73
- package/es/components/tabs/src/tab-pane.mjs.map +1 -1
- package/es/components/tabs/src/tab-pane2.mjs +71 -13
- package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
- package/es/components/tag/index.mjs +2 -2
- package/es/components/tag/index.mjs.map +1 -1
- package/es/components/tag/src/tag.mjs +1 -3
- package/es/components/tag/src/tag.mjs.map +1 -1
- package/es/components/teleport/index.mjs +2 -2
- package/es/components/teleport/index.mjs.map +1 -1
- package/es/components/teleport/src/teleport2.mjs +3 -5
- package/es/components/teleport/src/teleport2.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.mjs +1 -3
- package/es/components/time-picker/src/common/picker.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.vue.d.ts +29 -29
- package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs +1 -3
- package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.mjs +3 -5
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-range.mjs +4 -6
- package/es/components/time-picker/src/time-picker-com/panel-time-range.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker.mjs +5 -5
- package/es/components/time-picker/src/time-picker.mjs.map +1 -1
- package/es/components/time-select/index.d.ts +52 -52
- package/es/components/time-select/index.mjs +4 -4
- package/es/components/time-select/index.mjs.map +1 -1
- package/es/components/time-select/src/time-select.mjs +48 -117
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/time-select/src/time-select.vue.d.ts +26 -26
- package/es/components/time-select/src/time-select2.mjs +115 -48
- package/es/components/time-select/src/time-select2.mjs.map +1 -1
- package/es/components/timeline/index.mjs +3 -3
- package/es/components/timeline/index.mjs.map +1 -1
- package/es/components/timeline/src/timeline-item2.mjs +1 -3
- package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
- package/es/components/tooltip/index.d.ts +6 -6
- package/es/components/tooltip/index.mjs +3 -3
- package/es/components/tooltip/index.mjs.map +1 -1
- package/es/components/tooltip/src/content.mjs +3 -5
- package/es/components/tooltip/src/content.mjs.map +1 -1
- package/es/components/tooltip/src/content.vue.d.ts +6 -6
- package/es/components/tooltip/src/content2.mjs +1 -1
- package/es/components/tooltip/src/tooltip.mjs +168 -35
- package/es/components/tooltip/src/tooltip.mjs.map +1 -1
- package/es/components/tooltip/src/tooltip.vue.d.ts +6 -6
- package/es/components/tooltip/src/tooltip2.mjs +35 -170
- package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
- package/es/components/tooltip/src/trigger.mjs +1 -1
- package/es/components/tooltip/src/trigger2.mjs +3 -5
- package/es/components/tooltip/src/trigger2.mjs.map +1 -1
- package/es/components/tooltip-v2/index.mjs +6 -6
- package/es/components/tooltip-v2/index.mjs.map +1 -1
- package/es/components/tooltip-v2/src/arrow.mjs +36 -22
- package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
- package/es/components/tooltip-v2/src/arrow2.mjs +22 -38
- package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/content.mjs +50 -113
- package/es/components/tooltip-v2/src/content.mjs.map +1 -1
- package/es/components/tooltip-v2/src/content2.mjs +111 -50
- package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/root.mjs +79 -17
- package/es/components/tooltip-v2/src/root.mjs.map +1 -1
- package/es/components/tooltip-v2/src/root2.mjs +17 -81
- package/es/components/tooltip-v2/src/root2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/tooltip.mjs +4 -4
- package/es/components/tooltip-v2/src/tooltip2.mjs +15 -17
- package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/trigger.mjs +12 -90
- package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
- package/es/components/tooltip-v2/src/trigger2.mjs +88 -12
- package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
- package/es/components/transfer/index.d.ts +45 -45
- package/es/components/transfer/index.mjs +3 -3
- package/es/components/transfer/index.mjs.map +1 -1
- package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.vue.d.ts +9 -9
- package/es/components/transfer/src/transfer-panel2.mjs +1 -3
- package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
- package/es/components/transfer/src/transfer.mjs +157 -69
- package/es/components/transfer/src/transfer.mjs.map +1 -1
- package/es/components/transfer/src/transfer.vue.d.ts +45 -45
- package/es/components/transfer/src/transfer2.mjs +69 -159
- package/es/components/transfer/src/transfer2.mjs.map +1 -1
- package/es/components/tree/src/tree-node-content.mjs +1 -3
- package/es/components/tree/src/tree-node-content.mjs.map +1 -1
- package/es/components/tree/src/tree-node.mjs +3 -3
- package/es/components/tree/src/tree-node.mjs.map +1 -1
- package/es/components/tree/src/tree.mjs +1 -1
- package/es/components/tree-select/index.mjs +4 -4
- package/es/components/tree-select/index.mjs.map +1 -1
- package/es/components/tree-select/src/tree-select.mjs +1 -3
- package/es/components/tree-select/src/tree-select.mjs.map +1 -1
- package/es/components/tree-v2/index.d.ts +1 -1
- package/es/components/tree-v2/index.mjs +2 -2
- package/es/components/tree-v2/index.mjs.map +1 -1
- package/es/components/tree-v2/src/tree-node.mjs +1 -3
- package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
- package/es/components/tree-v2/src/tree-node.vue.d.ts +1 -1
- package/es/components/tree-v2/src/tree.mjs +3 -5
- package/es/components/tree-v2/src/tree.mjs.map +1 -1
- package/es/components/tree-v2/src/tree.vue.d.ts +1 -1
- package/es/components/upload/index.d.ts +1 -1
- package/es/components/upload/index.mjs +3 -3
- package/es/components/upload/index.mjs.map +1 -1
- package/es/components/upload/src/upload-content2.mjs +3 -5
- package/es/components/upload/src/upload-content2.mjs.map +1 -1
- package/es/components/upload/src/upload-dragger.mjs +68 -11
- package/es/components/upload/src/upload-dragger.mjs.map +1 -1
- package/es/components/upload/src/upload-dragger2.mjs +11 -70
- package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
- package/es/components/upload/src/upload-list2.mjs +1 -3
- package/es/components/upload/src/upload-list2.mjs.map +1 -1
- package/es/components/upload/src/upload.vue.d.ts +1 -1
- package/es/components/upload/src/upload2.mjs +7 -9
- package/es/components/upload/src/upload2.mjs.map +1 -1
- package/es/components/visual-hidden/index.mjs +1 -1
- package/es/components/visual-hidden/src/visual-hidden.mjs +1 -3
- package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
- package/es/index.mjs +35 -35
- package/lib/components/affix/src/affix.js +1 -3
- package/lib/components/affix/src/affix.js.map +1 -1
- package/lib/components/alert/src/alert2.js +1 -3
- package/lib/components/alert/src/alert2.js.map +1 -1
- package/lib/components/autocomplete/index.d.ts +53 -53
- package/lib/components/autocomplete/index.js +2 -2
- package/lib/components/autocomplete/src/autocomplete.js +71 -352
- package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
- package/lib/components/autocomplete/src/autocomplete.vue.d.ts +53 -53
- package/lib/components/autocomplete/src/autocomplete2.js +350 -71
- package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
- package/lib/components/avatar/src/avatar2.js +1 -3
- package/lib/components/avatar/src/avatar2.js.map +1 -1
- package/lib/components/backtop/src/backtop.js +1 -3
- package/lib/components/backtop/src/backtop.js.map +1 -1
- package/lib/components/badge/index.js +2 -2
- package/lib/components/badge/src/badge.js +53 -17
- package/lib/components/badge/src/badge.js.map +1 -1
- package/lib/components/badge/src/badge2.js +17 -55
- package/lib/components/badge/src/badge2.js.map +1 -1
- package/lib/components/breadcrumb/index.js +4 -4
- package/lib/components/breadcrumb/src/breadcrumb-item.js +11 -57
- package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
- package/lib/components/breadcrumb/src/breadcrumb-item2.js +55 -11
- package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
- package/lib/components/breadcrumb/src/breadcrumb.js +35 -11
- package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
- package/lib/components/breadcrumb/src/breadcrumb2.js +11 -37
- package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
- package/lib/components/button/index.js +2 -2
- package/lib/components/button/src/button-group.js +1 -1
- package/lib/components/button/src/button-group2.js +1 -3
- package/lib/components/button/src/button-group2.js.map +1 -1
- package/lib/components/button/src/button.js +57 -78
- package/lib/components/button/src/button.js.map +1 -1
- package/lib/components/button/src/button2.js +76 -57
- package/lib/components/button/src/button2.js.map +1 -1
- package/lib/components/calendar/src/calendar.js +1 -3
- package/lib/components/calendar/src/calendar.js.map +1 -1
- package/lib/components/calendar/src/date-table2.js +1 -3
- package/lib/components/calendar/src/date-table2.js.map +1 -1
- package/lib/components/card/src/card.js +1 -3
- package/lib/components/card/src/card.js.map +1 -1
- package/lib/components/carousel/index.d.ts +1 -1
- package/lib/components/carousel/index.js +4 -4
- package/lib/components/carousel/src/carousel-item.js +61 -8
- package/lib/components/carousel/src/carousel-item.js.map +1 -1
- package/lib/components/carousel/src/carousel-item2.js +8 -63
- package/lib/components/carousel/src/carousel-item2.js.map +1 -1
- package/lib/components/carousel/src/carousel.js +61 -159
- package/lib/components/carousel/src/carousel.js.map +1 -1
- package/lib/components/carousel/src/carousel.vue.d.ts +1 -1
- package/lib/components/carousel/src/carousel2.js +157 -61
- package/lib/components/carousel/src/carousel2.js.map +1 -1
- package/lib/components/cascader/index.d.ts +72 -72
- package/lib/components/cascader/src/index.js +1 -1
- package/lib/components/cascader/src/index.vue.d.ts +36 -36
- package/lib/components/cascader-panel/src/index.js +1 -1
- package/lib/components/cascader-panel/src/menu.js +1 -1
- package/lib/components/cascader-panel/src/node2.js +1 -1
- package/lib/components/check-tag/src/check-tag.js +1 -3
- package/lib/components/check-tag/src/check-tag.js.map +1 -1
- package/lib/components/checkbox/index.js +4 -4
- package/lib/components/checkbox/src/checkbox-button.js +2 -4
- package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
- package/lib/components/checkbox/src/checkbox-group.js +70 -29
- package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
- package/lib/components/checkbox/src/checkbox-group2.js +29 -72
- package/lib/components/checkbox/src/checkbox-group2.js.map +1 -1
- package/lib/components/checkbox/src/checkbox.js +115 -55
- package/lib/components/checkbox/src/checkbox.js.map +1 -1
- package/lib/components/checkbox/src/checkbox2.js +55 -117
- package/lib/components/checkbox/src/checkbox2.js.map +1 -1
- package/lib/components/col/index.js +2 -2
- package/lib/components/col/src/col.js +43 -66
- package/lib/components/col/src/col.js.map +1 -1
- package/lib/components/col/src/col2.js +64 -43
- package/lib/components/col/src/col2.js.map +1 -1
- package/lib/components/collapse/index.js +2 -2
- package/lib/components/collapse/src/collapse-item.js +95 -19
- package/lib/components/collapse/src/collapse-item.js.map +1 -1
- package/lib/components/collapse/src/collapse-item2.js +19 -97
- package/lib/components/collapse/src/collapse-item2.js.map +1 -1
- package/lib/components/collapse/src/collapse.js +1 -3
- package/lib/components/collapse/src/collapse.js.map +1 -1
- package/lib/components/collapse-transition/src/collapse-transition.js +1 -3
- package/lib/components/collapse-transition/src/collapse-transition.js.map +1 -1
- package/lib/components/collection/index.js +1 -1
- package/lib/components/collection/src/collection-item.js +1 -1
- package/lib/components/collection/src/collection.js +62 -9
- package/lib/components/collection/src/collection.js.map +1 -1
- package/lib/components/collection/src/collection2.js +9 -62
- package/lib/components/collection/src/collection2.js.map +1 -1
- package/lib/components/color-picker/index.d.ts +123 -123
- package/lib/components/color-picker/src/color-picker.js +1 -3
- package/lib/components/color-picker/src/color-picker.js.map +1 -1
- package/lib/components/color-picker/src/color-picker.vue.d.ts +123 -123
- package/lib/components/color-picker/src/components/alpha-slider.js +1 -3
- package/lib/components/color-picker/src/components/alpha-slider.js.map +1 -1
- package/lib/components/color-picker/src/components/alpha-slider.vue.d.ts +32 -32
- package/lib/components/color-picker/src/components/hue-slider.js +1 -1
- package/lib/components/color-picker/src/components/predefine.js +1 -1
- package/lib/components/color-picker/src/components/sv-panel.js +1 -1
- package/lib/components/container/src/aside.js +1 -3
- package/lib/components/container/src/aside.js.map +1 -1
- package/lib/components/container/src/container.js +1 -3
- package/lib/components/container/src/container.js.map +1 -1
- package/lib/components/container/src/footer.js +1 -3
- package/lib/components/container/src/footer.js.map +1 -1
- package/lib/components/container/src/header.js +1 -3
- package/lib/components/container/src/header.js.map +1 -1
- package/lib/components/container/src/main.js +1 -3
- package/lib/components/container/src/main.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.js +1 -3
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-month-table.js +1 -3
- package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-year-range-table.js +1 -3
- package/lib/components/date-picker/src/date-picker-com/basic-year-range-table.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-year-table.js +1 -3
- package/lib/components/date-picker/src/date-picker-com/basic-year-table.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +1 -3
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +9 -9
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.js +2 -4
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +9 -9
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.js +1 -3
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-year-range.js +1 -3
- package/lib/components/date-picker/src/date-picker-com/panel-year-range.js.map +1 -1
- package/lib/components/date-picker/src/panel-utils.d.ts +18 -18
- package/lib/components/descriptions/index.js +2 -2
- package/lib/components/descriptions/src/description.js +108 -25
- package/lib/components/descriptions/src/description.js.map +1 -1
- package/lib/components/descriptions/src/description2.js +25 -110
- package/lib/components/descriptions/src/description2.js.map +1 -1
- package/lib/components/descriptions/src/descriptions-row.js +7 -64
- package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
- package/lib/components/descriptions/src/descriptions-row2.js +62 -7
- package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
- package/lib/components/dialog/index.d.ts +3 -3
- package/lib/components/dialog/src/dialog-content.js +84 -37
- package/lib/components/dialog/src/dialog-content.js.map +1 -1
- package/lib/components/dialog/src/dialog-content2.js +37 -86
- package/lib/components/dialog/src/dialog-content2.js.map +1 -1
- package/lib/components/dialog/src/dialog.js +1 -1
- package/lib/components/dialog/src/dialog.vue.d.ts +3 -3
- package/lib/components/dialog/src/dialog2.js +2 -4
- 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 +33 -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/src/dropdown-item-impl.js +2 -2
- 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 +1 -1
- package/lib/components/dropdown/src/dropdown.vue.d.ts +12 -12
- package/lib/components/dropdown/src/dropdown2.js +1 -1
- package/lib/components/empty/index.js +2 -2
- package/lib/components/empty/src/empty.js +11 -56
- package/lib/components/empty/src/empty.js.map +1 -1
- package/lib/components/empty/src/empty2.js +54 -11
- package/lib/components/empty/src/empty2.js.map +1 -1
- package/lib/components/empty/src/img-empty.js +1 -1
- package/lib/components/focus-trap/src/focus-trap.js +1 -1
- package/lib/components/focus-trap/src/focus-trap.vue.d.ts +3 -3
- package/lib/components/form/index.js +2 -2
- package/lib/components/form/src/form-item.js +318 -44
- package/lib/components/form/src/form-item.js.map +1 -1
- package/lib/components/form/src/form-item2.js +44 -320
- package/lib/components/form/src/form-item2.js.map +1 -1
- package/lib/components/form/src/form2.js +1 -3
- package/lib/components/form/src/form2.js.map +1 -1
- package/lib/components/icon/index.js +2 -2
- package/lib/components/icon/src/icon.js +8 -36
- package/lib/components/icon/src/icon.js.map +1 -1
- package/lib/components/icon/src/icon2.js +34 -8
- package/lib/components/icon/src/icon2.js.map +1 -1
- package/lib/components/image/index.d.ts +1 -1
- package/lib/components/image/src/image.vue.d.ts +1 -1
- package/lib/components/image/src/image2.js +1 -3
- package/lib/components/image/src/image2.js.map +1 -1
- package/lib/components/image-viewer/index.js +2 -2
- package/lib/components/image-viewer/src/image-viewer.js +403 -36
- package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer2.js +36 -405
- package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
- package/lib/components/index.js +35 -35
- package/lib/components/input/index.d.ts +9 -9
- package/lib/components/input/src/input.vue.d.ts +9 -9
- package/lib/components/input/src/input2.js +1 -3
- package/lib/components/input/src/input2.js.map +1 -1
- package/lib/components/input-number/index.d.ts +32 -32
- package/lib/components/input-number/index.js +2 -2
- package/lib/components/input-number/src/input-number.js +62 -321
- package/lib/components/input-number/src/input-number.js.map +1 -1
- package/lib/components/input-number/src/input-number.vue.d.ts +32 -32
- package/lib/components/input-number/src/input-number2.js +319 -62
- package/lib/components/input-number/src/input-number2.js.map +1 -1
- package/lib/components/link/src/link.js +1 -3
- package/lib/components/link/src/link.js.map +1 -1
- package/lib/components/menu/index.js +2 -2
- package/lib/components/menu/src/menu-collapse-transition.js +1 -1
- package/lib/components/menu/src/menu-item-group.js +4 -35
- package/lib/components/menu/src/menu-item-group.js.map +1 -1
- package/lib/components/menu/src/menu-item-group2.js +35 -4
- package/lib/components/menu/src/menu-item-group2.js.map +1 -1
- package/lib/components/menu/src/menu-item.js +2 -2
- package/lib/components/message/index.js +1 -1
- package/lib/components/message/src/message.js +87 -144
- package/lib/components/message/src/message.js.map +1 -1
- package/lib/components/message/src/message2.js +142 -87
- package/lib/components/message/src/message2.js.map +1 -1
- package/lib/components/message/src/method.js +2 -2
- package/lib/components/message-box/src/index.js +1 -1
- package/lib/components/notification/index.js +1 -1
- package/lib/components/notification/src/notification.js +142 -70
- package/lib/components/notification/src/notification.js.map +1 -1
- package/lib/components/notification/src/notification2.js +70 -144
- package/lib/components/notification/src/notification2.js.map +1 -1
- package/lib/components/notification/src/notify.js +2 -2
- package/lib/components/page-header/index.js +2 -2
- package/lib/components/page-header/src/page-header.js +100 -18
- package/lib/components/page-header/src/page-header.js.map +1 -1
- package/lib/components/page-header/src/page-header2.js +18 -102
- package/lib/components/page-header/src/page-header2.js.map +1 -1
- package/lib/components/pagination/src/components/jumper.js +58 -9
- package/lib/components/pagination/src/components/jumper.js.map +1 -1
- package/lib/components/pagination/src/components/jumper.vue.d.ts +9 -9
- package/lib/components/pagination/src/components/jumper2.js +9 -60
- package/lib/components/pagination/src/components/jumper2.js.map +1 -1
- package/lib/components/pagination/src/components/next2.js +1 -3
- package/lib/components/pagination/src/components/next2.js.map +1 -1
- package/lib/components/pagination/src/components/pager.js +17 -208
- package/lib/components/pagination/src/components/pager.js.map +1 -1
- package/lib/components/pagination/src/components/pager2.js +206 -17
- package/lib/components/pagination/src/components/pager2.js.map +1 -1
- package/lib/components/pagination/src/components/prev2.js +1 -3
- package/lib/components/pagination/src/components/prev2.js.map +1 -1
- package/lib/components/pagination/src/components/sizes.js +66 -22
- package/lib/components/pagination/src/components/sizes.js.map +1 -1
- package/lib/components/pagination/src/components/sizes.vue.d.ts +13 -13
- package/lib/components/pagination/src/components/sizes2.js +22 -68
- package/lib/components/pagination/src/components/sizes2.js.map +1 -1
- package/lib/components/pagination/src/components/total.js +1 -3
- package/lib/components/pagination/src/components/total.js.map +1 -1
- package/lib/components/pagination/src/pagination.js +3 -3
- package/lib/components/popconfirm/index.d.ts +18 -18
- package/lib/components/popconfirm/src/popconfirm.js +1 -1
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +18 -18
- package/lib/components/popconfirm/src/popconfirm2.js +1 -3
- package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
- package/lib/components/popover/index.d.ts +18 -18
- package/lib/components/popover/src/popover.vue.d.ts +18 -18
- package/lib/components/popover/src/popover2.js +1 -3
- package/lib/components/popover/src/popover2.js.map +1 -1
- package/lib/components/popper/index.js +6 -6
- package/lib/components/popper/src/arrow2.js +1 -1
- package/lib/components/popper/src/content.js +210 -99
- package/lib/components/popper/src/content.js.map +1 -1
- package/lib/components/popper/src/content.vue.d.ts +6 -6
- package/lib/components/popper/src/content2.js +99 -212
- package/lib/components/popper/src/content2.js.map +1 -1
- package/lib/components/popper/src/popper.js +31 -28
- package/lib/components/popper/src/popper.js.map +1 -1
- package/lib/components/popper/src/popper2.js +28 -33
- package/lib/components/popper/src/popper2.js.map +1 -1
- package/lib/components/popper/src/trigger.js +118 -32
- package/lib/components/popper/src/trigger.js.map +1 -1
- package/lib/components/popper/src/trigger2.js +32 -120
- package/lib/components/popper/src/trigger2.js.map +1 -1
- package/lib/components/progress/src/progress.js +1 -3
- package/lib/components/progress/src/progress.js.map +1 -1
- package/lib/components/radio/index.js +2 -2
- package/lib/components/radio/src/radio-button.js +1 -1
- package/lib/components/radio/src/radio-button2.js +1 -3
- package/lib/components/radio/src/radio-button2.js.map +1 -1
- package/lib/components/radio/src/radio-group.js +1 -3
- package/lib/components/radio/src/radio-group.js.map +1 -1
- package/lib/components/radio/src/radio-group2.js +1 -1
- package/lib/components/radio/src/radio.js +36 -78
- package/lib/components/radio/src/radio.js.map +1 -1
- package/lib/components/radio/src/radio2.js +76 -36
- package/lib/components/radio/src/radio2.js.map +1 -1
- package/lib/components/rate/src/rate2.js +1 -3
- package/lib/components/rate/src/rate2.js.map +1 -1
- package/lib/components/result/index.js +2 -2
- package/lib/components/result/src/result.js +31 -63
- package/lib/components/result/src/result.js.map +1 -1
- package/lib/components/result/src/result2.js +61 -31
- package/lib/components/result/src/result2.js.map +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-group.js +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-group2.js +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-item.js +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
- package/lib/components/row/index.js +2 -2
- package/lib/components/row/src/row.js +32 -45
- package/lib/components/row/src/row.js.map +1 -1
- package/lib/components/row/src/row2.js +43 -32
- package/lib/components/row/src/row2.js.map +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 +40 -17
- package/lib/components/scrollbar/src/bar2.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar2.js +2 -4
- package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
- package/lib/components/scrollbar/src/thumb.js +1 -3
- package/lib/components/scrollbar/src/thumb.js.map +1 -1
- package/lib/components/select/index.d.ts +13 -13
- package/lib/components/select/src/arrow-down.js +1 -1
- package/lib/components/select/src/option-group.js +1 -1
- package/lib/components/select/src/option.js +1 -1
- package/lib/components/select/src/select-dropdown.js +1 -1
- package/lib/components/select/src/select.js +1 -1
- package/lib/components/select/src/select.vue.d.ts +13 -13
- package/lib/components/select/src/useSelect.d.ts +12 -12
- package/lib/components/select-v2/index.d.ts +26 -26
- package/lib/components/select-v2/src/group-item.js +1 -1
- package/lib/components/select-v2/src/option-item-checkbox.js +1 -1
- package/lib/components/select-v2/src/option-item.js +1 -1
- package/lib/components/select-v2/src/select.js +1 -1
- package/lib/components/select-v2/src/select.vue.d.ts +13 -13
- package/lib/components/select-v2/src/useSelect.d.ts +12 -12
- package/lib/components/skeleton/src/skeleton-item2.js +1 -3
- package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
- package/lib/components/skeleton/src/skeleton2.js +1 -3
- package/lib/components/skeleton/src/skeleton2.js.map +1 -1
- package/lib/components/slider/index.d.ts +62 -62
- package/lib/components/slider/src/button.js +22 -95
- 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 +93 -22
- 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 +2 -4
- package/lib/components/slider/src/slider.js.map +1 -1
- package/lib/components/slider/src/slider.vue.d.ts +62 -62
- package/lib/components/steps/src/item.js +1 -3
- package/lib/components/steps/src/item.js.map +1 -1
- package/lib/components/steps/src/steps.js +1 -3
- package/lib/components/steps/src/steps.js.map +1 -1
- package/lib/components/switch/src/switch.js +1 -3
- package/lib/components/switch/src/switch.js.map +1 -1
- package/lib/components/table/index.d.ts +1 -1
- package/lib/components/table/src/filter-panel.js +1 -1
- package/lib/components/table/src/filter-panel.vue.d.ts +12 -12
- package/lib/components/table/src/table.js +1 -1
- package/lib/components/table/src/table.vue.d.ts +1 -1
- package/lib/components/tabs/index.js +3 -3
- package/lib/components/tabs/src/tab-bar.js +7 -81
- package/lib/components/tabs/src/tab-bar.js.map +1 -1
- package/lib/components/tabs/src/tab-bar2.js +79 -7
- package/lib/components/tabs/src/tab-bar2.js.map +1 -1
- package/lib/components/tabs/src/tab-nav.js +1 -1
- package/lib/components/tabs/src/tab-pane.js +13 -73
- package/lib/components/tabs/src/tab-pane.js.map +1 -1
- package/lib/components/tabs/src/tab-pane2.js +71 -13
- package/lib/components/tabs/src/tab-pane2.js.map +1 -1
- package/lib/components/tag/src/tag.js +1 -3
- package/lib/components/tag/src/tag.js.map +1 -1
- package/lib/components/teleport/src/teleport2.js +1 -3
- package/lib/components/teleport/src/teleport2.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.js +1 -3
- package/lib/components/time-picker/src/common/picker.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.vue.d.ts +29 -29
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js +1 -3
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.js +1 -3
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.js +1 -3
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.js.map +1 -1
- package/lib/components/time-select/index.d.ts +52 -52
- package/lib/components/time-select/index.js +1 -1
- package/lib/components/time-select/src/time-select.js +48 -122
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/time-select/src/time-select.vue.d.ts +26 -26
- package/lib/components/time-select/src/time-select2.js +120 -48
- package/lib/components/time-select/src/time-select2.js.map +1 -1
- package/lib/components/timeline/src/timeline-item2.js +1 -3
- package/lib/components/timeline/src/timeline-item2.js.map +1 -1
- package/lib/components/tooltip/index.d.ts +6 -6
- package/lib/components/tooltip/index.js +2 -2
- package/lib/components/tooltip/src/content.js +2 -4
- package/lib/components/tooltip/src/content.js.map +1 -1
- package/lib/components/tooltip/src/content.vue.d.ts +6 -6
- package/lib/components/tooltip/src/content2.js +1 -1
- package/lib/components/tooltip/src/tooltip.js +168 -39
- package/lib/components/tooltip/src/tooltip.js.map +1 -1
- package/lib/components/tooltip/src/tooltip.vue.d.ts +6 -6
- package/lib/components/tooltip/src/tooltip2.js +39 -170
- package/lib/components/tooltip/src/tooltip2.js.map +1 -1
- package/lib/components/tooltip/src/trigger.js +1 -1
- package/lib/components/tooltip/src/trigger2.js +2 -4
- package/lib/components/tooltip/src/trigger2.js.map +1 -1
- package/lib/components/tooltip-v2/index.js +4 -4
- package/lib/components/tooltip-v2/src/arrow.js +36 -23
- package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
- package/lib/components/tooltip-v2/src/arrow2.js +23 -38
- package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
- package/lib/components/tooltip-v2/src/content.js +50 -113
- package/lib/components/tooltip-v2/src/content.js.map +1 -1
- package/lib/components/tooltip-v2/src/content2.js +111 -50
- package/lib/components/tooltip-v2/src/content2.js.map +1 -1
- package/lib/components/tooltip-v2/src/root.js +79 -17
- package/lib/components/tooltip-v2/src/root.js.map +1 -1
- package/lib/components/tooltip-v2/src/root2.js +17 -81
- package/lib/components/tooltip-v2/src/root2.js.map +1 -1
- package/lib/components/tooltip-v2/src/tooltip.js +4 -4
- package/lib/components/tooltip-v2/src/tooltip2.js +9 -11
- package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
- package/lib/components/tooltip-v2/src/trigger.js +12 -90
- package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
- package/lib/components/tooltip-v2/src/trigger2.js +88 -12
- package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
- package/lib/components/transfer/index.d.ts +45 -45
- package/lib/components/transfer/index.js +2 -2
- package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
- package/lib/components/transfer/src/transfer-panel.js +1 -1
- package/lib/components/transfer/src/transfer-panel.vue.d.ts +9 -9
- package/lib/components/transfer/src/transfer-panel2.js +1 -3
- package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
- package/lib/components/transfer/src/transfer.js +157 -73
- package/lib/components/transfer/src/transfer.js.map +1 -1
- package/lib/components/transfer/src/transfer.vue.d.ts +45 -45
- package/lib/components/transfer/src/transfer2.js +73 -159
- package/lib/components/transfer/src/transfer2.js.map +1 -1
- package/lib/components/tree/src/tree-node-content.js +1 -3
- package/lib/components/tree/src/tree-node-content.js.map +1 -1
- package/lib/components/tree/src/tree-node.js +1 -1
- package/lib/components/tree/src/tree.js +1 -1
- package/lib/components/tree-select/src/tree-select.js +1 -3
- package/lib/components/tree-select/src/tree-select.js.map +1 -1
- package/lib/components/tree-v2/index.d.ts +1 -1
- package/lib/components/tree-v2/src/tree-node.js +1 -3
- package/lib/components/tree-v2/src/tree-node.js.map +1 -1
- package/lib/components/tree-v2/src/tree-node.vue.d.ts +1 -1
- package/lib/components/tree-v2/src/tree.js +1 -3
- package/lib/components/tree-v2/src/tree.js.map +1 -1
- package/lib/components/tree-v2/src/tree.vue.d.ts +1 -1
- package/lib/components/upload/index.d.ts +1 -1
- package/lib/components/upload/index.js +1 -1
- package/lib/components/upload/src/upload-content2.js +2 -4
- package/lib/components/upload/src/upload-content2.js.map +1 -1
- package/lib/components/upload/src/upload-dragger.js +68 -12
- package/lib/components/upload/src/upload-dragger.js.map +1 -1
- package/lib/components/upload/src/upload-dragger2.js +12 -70
- package/lib/components/upload/src/upload-dragger2.js.map +1 -1
- package/lib/components/upload/src/upload-list2.js +1 -3
- package/lib/components/upload/src/upload-list2.js.map +1 -1
- package/lib/components/upload/src/upload.vue.d.ts +1 -1
- package/lib/components/upload/src/upload2.js +1 -3
- package/lib/components/upload/src/upload2.js.map +1 -1
- package/lib/components/visual-hidden/src/visual-hidden.js +1 -3
- package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
- package/lib/index.js +35 -35
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-month-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-month-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.monthTablePrompt')\"\n :class=\"ns.b()\"\n @click=\"handleMonthTableClick\"\n @mousemove=\"handleMouseMove\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(row, key) in rows\" :key=\"key\">\n <td\n v-for=\"(cell, key_) in row\"\n :key=\"key_\"\n :ref=\"(el) => isSelectedCell(cell) && (currentCellRef = el as HTMLElement)\"\n :class=\"getCellStyle(cell)\"\n :aria-selected=\"`${isSelectedCell(cell)}`\"\n :aria-label=\"t(`el.datepicker.month${+cell.text + 1}`)\"\n :tabindex=\"isSelectedCell(cell) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleMonthTableClick\"\n @keydown.enter.prevent.stop=\"handleMonthTableClick\"\n >\n <div>\n <span class=\"cell\" :style=\"[cell.inRange ? {} : formatterStyle(customStyle, ['text'])]\">\n {{ t('el.datepicker.months.' + months[cell.text]) }}\n </span>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch, inject } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicMonthTableProps } from '../props/basic-month-table'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\n\ntype MonthCell = {\n column: number\n row: number\n disabled: boolean\n start: boolean\n end: boolean\n text: number\n type: 'normal' | 'today'\n inRange: boolean\n}\n\nconst datesInMonth = (year: number, month: number, lang: string) => {\n const firstDay = dayjs().locale(lang).startOf('month').month(month).year(year)\n const numOfDays = firstDay.daysInMonth()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nconst props = defineProps(basicMonthTableProps)\nconst emit = defineEmits(['changerange', 'pick', 'select'])\n\nconst ns = useNamespace('month-table')\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst months = ref(\n props.date\n .locale('en')\n .localeData()\n .monthsShort()\n .map((_) => _.toLowerCase())\n)\nconst tableRows = ref<MonthCell[][]>([\n [] as MonthCell[],\n [] as MonthCell[],\n [] as MonthCell[],\n])\nconst lastRow = ref<number>()\nconst lastColumn = ref<number>()\nconst rows = computed<MonthCell[][]>(() => {\n const rows = tableRows.value\n\n const now = dayjs().locale(lang.value).startOf('month')\n\n for (let i = 0; i < 3; i++) {\n const row = rows[i]\n for (let j = 0; j < 4; j++) {\n const cell = (row[j] ||= {\n row: i,\n column: j,\n type: 'normal',\n inRange: false,\n start: false,\n end: false,\n text: -1,\n disabled: false,\n })\n\n cell.type = 'normal'\n\n const index = i * 4 + j\n const calTime = props.date.startOf('year').month(index)\n\n const calEndDate =\n props.rangeState.endDate ||\n props.maxDate ||\n (props.rangeState.selecting && props.minDate) ||\n null\n\n cell.inRange =\n !!(\n props.minDate &&\n calTime.isSameOrAfter(props.minDate, 'month') &&\n calEndDate &&\n calTime.isSameOrBefore(calEndDate, 'month')\n ) ||\n !!(\n props.minDate &&\n calTime.isSameOrBefore(props.minDate, 'month') &&\n calEndDate &&\n calTime.isSameOrAfter(calEndDate, 'month')\n )\n\n if (props.minDate?.isSameOrAfter(calEndDate)) {\n cell.start = !!(calEndDate && calTime.isSame(calEndDate, 'month'))\n cell.end = props.minDate && calTime.isSame(props.minDate, 'month')\n } else {\n cell.start = !!(props.minDate && calTime.isSame(props.minDate, 'month'))\n cell.end = !!(calEndDate && calTime.isSame(calEndDate, 'month'))\n }\n\n const isToday = now.isSame(calTime)\n if (isToday) {\n cell.type = 'today'\n }\n\n cell.text = index\n cell.disabled = props.disabledDate?.(calTime.toDate()) || false\n }\n }\n return rows\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst getCellStyle = (cell: MonthCell) => {\n const style = {} as any\n const year = props.date.year()\n const today = new Date()\n const month = cell.text\n\n style.disabled = props.disabledDate\n ? datesInMonth(year, month, lang.value).every(props.disabledDate)\n : false\n style.current =\n castArray(props.parsedValue).findIndex(\n (date) =>\n dayjs.isDayjs(date) && date.year() === year && date.month() === month\n ) >= 0\n style.today = today.getFullYear() === year && today.getMonth() === month\n\n if (cell.inRange) {\n style['in-range'] = true\n\n if (cell.start) {\n style['start-date'] = true\n }\n\n if (cell.end) {\n style['end-date'] = true\n }\n }\n return style\n}\n\nconst isSelectedCell = (cell: MonthCell) => {\n const year = props.date.year()\n const month = cell.text\n return (\n castArray(props.date).findIndex(\n (date) => date.year() === year && date.month() === month\n ) >= 0\n )\n}\n\nconst handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n\n let target = event.target as HTMLElement\n if (target.tagName === 'A') {\n target = target.parentNode?.parentNode as HTMLElement\n }\n if (target.tagName === 'DIV') {\n target = target.parentNode as HTMLElement\n }\n if (target.tagName !== 'TD') return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const column = (target as HTMLTableCellElement).cellIndex\n // can not select disabled date\n if (rows.value[row][column].disabled) return\n\n // only update rangeState when mouse moves to a new cell\n // this avoids frequent Date object creation and improves performance\n if (row !== lastRow.value || column !== lastColumn.value) {\n lastRow.value = row\n lastColumn.value = column\n emit('changerange', {\n selecting: true,\n endDate: props.date.startOf('year').month(row * 4 + column),\n })\n }\n}\nconst handleMonthTableClick = (event: MouseEvent | KeyboardEvent) => {\n const target = (event.target as HTMLElement)?.closest(\n 'td'\n ) as HTMLTableCellElement\n if (target?.tagName !== 'TD') return\n if (hasClass(target, 'disabled')) return\n const column = target.cellIndex\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const month = row * 4 + column\n const newDate = props.date.startOf('year').month(month)\n if (props.selectionMode === 'range') {\n if (!props.rangeState.selecting) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (props.minDate && newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n } else {\n emit('pick', month)\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"basic-month-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-month-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.monthTablePrompt')\"\n :class=\"ns.b()\"\n @click=\"handleMonthTableClick\"\n @mousemove=\"handleMouseMove\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(row, key) in rows\" :key=\"key\">\n <td\n v-for=\"(cell, key_) in row\"\n :key=\"key_\"\n :ref=\"(el) => isSelectedCell(cell) && (currentCellRef = el as HTMLElement)\"\n :class=\"getCellStyle(cell)\"\n :aria-selected=\"`${isSelectedCell(cell)}`\"\n :aria-label=\"t(`el.datepicker.month${+cell.text + 1}`)\"\n :tabindex=\"isSelectedCell(cell) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleMonthTableClick\"\n @keydown.enter.prevent.stop=\"handleMonthTableClick\"\n >\n <div>\n <span class=\"cell\" :style=\"[cell.inRange ? {} : formatterStyle(customStyle, ['text'])]\">\n {{ t('el.datepicker.months.' + months[cell.text]) }}\n </span>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch, inject } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicMonthTableProps } from '../props/basic-month-table'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\n\ntype MonthCell = {\n column: number\n row: number\n disabled: boolean\n start: boolean\n end: boolean\n text: number\n type: 'normal' | 'today'\n inRange: boolean\n}\n\nconst datesInMonth = (year: number, month: number, lang: string) => {\n const firstDay = dayjs().locale(lang).startOf('month').month(month).year(year)\n const numOfDays = firstDay.daysInMonth()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nconst props = defineProps(basicMonthTableProps)\nconst emit = defineEmits(['changerange', 'pick', 'select'])\n\nconst ns = useNamespace('month-table')\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst months = ref(\n props.date\n .locale('en')\n .localeData()\n .monthsShort()\n .map((_) => _.toLowerCase())\n)\nconst tableRows = ref<MonthCell[][]>([\n [] as MonthCell[],\n [] as MonthCell[],\n [] as MonthCell[],\n])\nconst lastRow = ref<number>()\nconst lastColumn = ref<number>()\nconst rows = computed<MonthCell[][]>(() => {\n const rows = tableRows.value\n\n const now = dayjs().locale(lang.value).startOf('month')\n\n for (let i = 0; i < 3; i++) {\n const row = rows[i]\n for (let j = 0; j < 4; j++) {\n const cell = (row[j] ||= {\n row: i,\n column: j,\n type: 'normal',\n inRange: false,\n start: false,\n end: false,\n text: -1,\n disabled: false,\n })\n\n cell.type = 'normal'\n\n const index = i * 4 + j\n const calTime = props.date.startOf('year').month(index)\n\n const calEndDate =\n props.rangeState.endDate ||\n props.maxDate ||\n (props.rangeState.selecting && props.minDate) ||\n null\n\n cell.inRange =\n !!(\n props.minDate &&\n calTime.isSameOrAfter(props.minDate, 'month') &&\n calEndDate &&\n calTime.isSameOrBefore(calEndDate, 'month')\n ) ||\n !!(\n props.minDate &&\n calTime.isSameOrBefore(props.minDate, 'month') &&\n calEndDate &&\n calTime.isSameOrAfter(calEndDate, 'month')\n )\n\n if (props.minDate?.isSameOrAfter(calEndDate)) {\n cell.start = !!(calEndDate && calTime.isSame(calEndDate, 'month'))\n cell.end = props.minDate && calTime.isSame(props.minDate, 'month')\n } else {\n cell.start = !!(props.minDate && calTime.isSame(props.minDate, 'month'))\n cell.end = !!(calEndDate && calTime.isSame(calEndDate, 'month'))\n }\n\n const isToday = now.isSame(calTime)\n if (isToday) {\n cell.type = 'today'\n }\n\n cell.text = index\n cell.disabled = props.disabledDate?.(calTime.toDate()) || false\n }\n }\n return rows\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst getCellStyle = (cell: MonthCell) => {\n const style = {} as any\n const year = props.date.year()\n const today = new Date()\n const month = cell.text\n\n style.disabled = props.disabledDate\n ? datesInMonth(year, month, lang.value).every(props.disabledDate)\n : false\n style.current =\n castArray(props.parsedValue).findIndex(\n (date) =>\n dayjs.isDayjs(date) && date.year() === year && date.month() === month\n ) >= 0\n style.today = today.getFullYear() === year && today.getMonth() === month\n\n if (cell.inRange) {\n style['in-range'] = true\n\n if (cell.start) {\n style['start-date'] = true\n }\n\n if (cell.end) {\n style['end-date'] = true\n }\n }\n return style\n}\n\nconst isSelectedCell = (cell: MonthCell) => {\n const year = props.date.year()\n const month = cell.text\n return (\n castArray(props.date).findIndex(\n (date) => date.year() === year && date.month() === month\n ) >= 0\n )\n}\n\nconst handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n\n let target = event.target as HTMLElement\n if (target.tagName === 'A') {\n target = target.parentNode?.parentNode as HTMLElement\n }\n if (target.tagName === 'DIV') {\n target = target.parentNode as HTMLElement\n }\n if (target.tagName !== 'TD') return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const column = (target as HTMLTableCellElement).cellIndex\n // can not select disabled date\n if (rows.value[row][column].disabled) return\n\n // only update rangeState when mouse moves to a new cell\n // this avoids frequent Date object creation and improves performance\n if (row !== lastRow.value || column !== lastColumn.value) {\n lastRow.value = row\n lastColumn.value = column\n emit('changerange', {\n selecting: true,\n endDate: props.date.startOf('year').month(row * 4 + column),\n })\n }\n}\nconst handleMonthTableClick = (event: MouseEvent | KeyboardEvent) => {\n const target = (event.target as HTMLElement)?.closest(\n 'td'\n ) as HTMLTableCellElement\n if (target?.tagName !== 'TD') return\n if (hasClass(target, 'disabled')) return\n const column = target.cellIndex\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const month = row * 4 + column\n const newDate = props.date.startOf('year').month(month)\n if (props.selectionMode === 'range') {\n if (!props.rangeState.selecting) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (props.minDate && newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n } else {\n emit('pick', month)\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,6 @@ import '../../../../hooks/index.mjs';
|
|
|
4
4
|
import '../../../time-picker/index.mjs';
|
|
5
5
|
import '../../../../utils/index.mjs';
|
|
6
6
|
import { basicYearTableRangeProps } from '../props/basic-year-table.mjs';
|
|
7
|
-
import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.mjs';
|
|
8
7
|
import { rangeArr } from '../../../time-picker/src/utils.mjs';
|
|
9
8
|
import { useNamespace } from '../../../../hooks/use-namespace/index.mjs';
|
|
10
9
|
import { useLocale } from '../../../../hooks/use-locale/index.mjs';
|
|
@@ -169,7 +168,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
169
168
|
};
|
|
170
169
|
}
|
|
171
170
|
});
|
|
172
|
-
var MonthTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/Users/st/Desktop/vue/nxx-ui/packages/components/date-picker/src/date-picker-com/basic-year-range-table.vue"]]);
|
|
173
171
|
|
|
174
|
-
export {
|
|
172
|
+
export { _sfc_main as default };
|
|
175
173
|
//# sourceMappingURL=basic-year-range-table.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-year-range-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-year-range-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.yearTablePrompt')\"\n :class=\"[ns.b(), ms.b(), ms.b('range')]\"\n @click=\"handleYearTableClick\"\n @mousemove=\"handleMouseMove\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(_, i) in 3\" :key=\"i\">\n <template v-for=\"(__, j) in 4\" :key=\"i + '_' + j\">\n <td\n v-if=\"i * 4 + j < 12\"\n :ref=\"\n (el) =>\n isSelectedCell(startYear + i * 4 + j) && (currentCellRef = el as HTMLElement)\n \"\n class=\"available\"\n :class=\"getCellKls(startYear + i * 4 + j)\"\n :aria-selected=\"`${isSelectedCell(startYear + i * 4 + j)}`\"\n :tabindex=\"isSelectedCell(startYear + i * 4 + j) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleYearTableClick\"\n @keydown.enter.prevent.stop=\"handleYearTableClick\"\n >\n <div>\n <span class=\"cell\" :style=\"[isSelectedCell(startYear + i * 4 + j) ? {} : formatterStyle(customStyle, ['text'])]\">{{ startYear + i * 4 + j }}</span>\n </div>\n </td>\n <td v-else />\n </template>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch, inject } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicYearTableRangeProps } from '../props/basic-year-table'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\n\nconst datesInYear = (year: number, lang: string) => {\n const firstDay = dayjs(String(year)).locale(lang).startOf('year')\n const lastDay = firstDay.endOf('year')\n const numOfDays = lastDay.dayOfYear()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nconst props = defineProps(basicYearTableRangeProps)\nconst emit = defineEmits(['pick', 'select', 'changerange'])\n\nconst ns = useNamespace('year-table')\nconst ms = useNamespace('month-table')\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst startYear = computed(() => {\n return props.startDate.year()\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst lastRow = ref<number>()\nconst lastColumn = ref<number>()\n\nconst handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n\n let target = event.target as HTMLElement\n if (target.tagName === 'A') {\n target = target.parentNode?.parentNode as HTMLElement\n }\n if (target.tagName === 'DIV') {\n target = target.parentNode as HTMLElement\n }\n if (target.tagName !== 'TD') return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const column = (target as HTMLTableCellElement).cellIndex\n\n // // can not select disabled date\n // if (rows.value[row][column].disabled) return\n\n // // only update rangeState when mouse moves to a new cell\n // // this avoids frequent Date object creation and improves performance\n if (row !== lastRow.value || column !== lastColumn.value) {\n lastRow.value = row\n lastColumn.value = column\n\n emit('changerange', {\n selecting: true,\n endDate: props.startDate.year(props.startDate.year() + row * 4 + column),\n })\n }\n}\n\n\nconst getCellKls = (year: number) => {\n const kls: Record<string, boolean> = {}\n const today = dayjs().locale(lang.value)\n\n kls.disabled = props.disabledDate\n ? datesInYear(year, lang.value).every(props.disabledDate)\n : false\n\n kls.current =\n castArray(props.parsedValue).findIndex((d) => d!.year() === year) >= 0\n\n kls.today = today.year() === year\n\n let end = props.maxDate?.year() || 0\n const start = props.minDate?.year() || 0\n\n if (!end) {\n end = props.rangeState.endDate?.year() || 0\n }\n\n if (year >= +start && year <= +end) {\n kls['in-range'] = true\n if (+start === +year) {\n kls['start-date'] = true\n }\n\n if (+end === +year) {\n kls['end-date'] = true\n }\n }\n \n \n return kls\n}\n\nconst isSelectedCell = (year: number) => {\n return (\n (year === startYear.value &&\n props.date.year() < startYear.value &&\n props.date.year() > startYear.value + 9) ||\n castArray(props.date).findIndex((date) => date.year() === year) >= 0\n )\n}\n\nconst handleYearTableClick = (event: MouseEvent | KeyboardEvent) => {\n const clickTarget = event.target as HTMLDivElement\n const target = clickTarget.closest('td')\n if (target && target.textContent) {\n if (hasClass(target, 'disabled')) return\n const year = target.textContent || target.innerText\n const newDate = dayjs(String(year)).locale(lang.value)\n if (!props.rangeState.selecting) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (props.minDate && newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus on the current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"basic-year-range-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-year-range-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.yearTablePrompt')\"\n :class=\"[ns.b(), ms.b(), ms.b('range')]\"\n @click=\"handleYearTableClick\"\n @mousemove=\"handleMouseMove\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(_, i) in 3\" :key=\"i\">\n <template v-for=\"(__, j) in 4\" :key=\"i + '_' + j\">\n <td\n v-if=\"i * 4 + j < 12\"\n :ref=\"\n (el) =>\n isSelectedCell(startYear + i * 4 + j) && (currentCellRef = el as HTMLElement)\n \"\n class=\"available\"\n :class=\"getCellKls(startYear + i * 4 + j)\"\n :aria-selected=\"`${isSelectedCell(startYear + i * 4 + j)}`\"\n :tabindex=\"isSelectedCell(startYear + i * 4 + j) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleYearTableClick\"\n @keydown.enter.prevent.stop=\"handleYearTableClick\"\n >\n <div>\n <span class=\"cell\" :style=\"[isSelectedCell(startYear + i * 4 + j) ? {} : formatterStyle(customStyle, ['text'])]\">{{ startYear + i * 4 + j }}</span>\n </div>\n </td>\n <td v-else />\n </template>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch, inject } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicYearTableRangeProps } from '../props/basic-year-table'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\n\nconst datesInYear = (year: number, lang: string) => {\n const firstDay = dayjs(String(year)).locale(lang).startOf('year')\n const lastDay = firstDay.endOf('year')\n const numOfDays = lastDay.dayOfYear()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nconst props = defineProps(basicYearTableRangeProps)\nconst emit = defineEmits(['pick', 'select', 'changerange'])\n\nconst ns = useNamespace('year-table')\nconst ms = useNamespace('month-table')\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst startYear = computed(() => {\n return props.startDate.year()\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst lastRow = ref<number>()\nconst lastColumn = ref<number>()\n\nconst handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n\n let target = event.target as HTMLElement\n if (target.tagName === 'A') {\n target = target.parentNode?.parentNode as HTMLElement\n }\n if (target.tagName === 'DIV') {\n target = target.parentNode as HTMLElement\n }\n if (target.tagName !== 'TD') return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex\n const column = (target as HTMLTableCellElement).cellIndex\n\n // // can not select disabled date\n // if (rows.value[row][column].disabled) return\n\n // // only update rangeState when mouse moves to a new cell\n // // this avoids frequent Date object creation and improves performance\n if (row !== lastRow.value || column !== lastColumn.value) {\n lastRow.value = row\n lastColumn.value = column\n\n emit('changerange', {\n selecting: true,\n endDate: props.startDate.year(props.startDate.year() + row * 4 + column),\n })\n }\n}\n\n\nconst getCellKls = (year: number) => {\n const kls: Record<string, boolean> = {}\n const today = dayjs().locale(lang.value)\n\n kls.disabled = props.disabledDate\n ? datesInYear(year, lang.value).every(props.disabledDate)\n : false\n\n kls.current =\n castArray(props.parsedValue).findIndex((d) => d!.year() === year) >= 0\n\n kls.today = today.year() === year\n\n let end = props.maxDate?.year() || 0\n const start = props.minDate?.year() || 0\n\n if (!end) {\n end = props.rangeState.endDate?.year() || 0\n }\n\n if (year >= +start && year <= +end) {\n kls['in-range'] = true\n if (+start === +year) {\n kls['start-date'] = true\n }\n\n if (+end === +year) {\n kls['end-date'] = true\n }\n }\n \n \n return kls\n}\n\nconst isSelectedCell = (year: number) => {\n return (\n (year === startYear.value &&\n props.date.year() < startYear.value &&\n props.date.year() > startYear.value + 9) ||\n castArray(props.date).findIndex((date) => date.year() === year) >= 0\n )\n}\n\nconst handleYearTableClick = (event: MouseEvent | KeyboardEvent) => {\n const clickTarget = event.target as HTMLDivElement\n const target = clickTarget.closest('td')\n if (target && target.textContent) {\n if (hasClass(target, 'disabled')) return\n const year = target.textContent || target.innerText\n const newDate = dayjs(String(year)).locale(lang.value)\n if (!props.rangeState.selecting) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (props.minDate && newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus on the current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA6CA,IAAM,MAAA,WAAA,GAAc,CAAC,IAAA,EAAc,KAAiB,KAAA;AAClD,MAAM,MAAA,QAAA,GAAW,KAAM,CAAA,MAAA,CAAO,IAAI,CAAC,EAAE,MAAO,CAAA,KAAI,CAAE,CAAA,OAAA,CAAQ,MAAM,CAAA,CAAA;AAChE,MAAM,MAAA,OAAA,GAAU,QAAS,CAAA,KAAA,CAAM,MAAM,CAAA,CAAA;AACrC,MAAM,MAAA,SAAA,GAAY,QAAQ,SAAU,EAAA,CAAA;AACpC,MAAA,OAAO,QAAS,CAAA,SAAS,CAAE,CAAA,GAAA,CAAI,CAAC,CAAA,KAAM,QAAS,CAAA,GAAA,CAAI,CAAG,EAAA,KAAK,CAAE,CAAA,MAAA,EAAQ,CAAA,CAAA;AAAA,KACvE,CAAA;AAKA,IAAM,MAAA,EAAA,GAAK,aAAa,YAAY,CAAA,CAAA;AACpC,IAAM,MAAA,EAAA,GAAK,aAAa,aAAa,CAAA,CAAA;AACrC,IAAA,MAAM,WAAc,GAAA,MAAA,CAAO,sBAAwB,EAAA,EAAE,CAAA,CAAA;AAErD,IAAM,MAAA,EAAE,CAAG,EAAA,IAAA,EAAA,GAAS,SAAU,EAAA,CAAA;AAC9B,IAAA,MAAM,WAAW,GAAiB,EAAA,CAAA;AAClC,IAAA,MAAM,iBAAiB,GAAiB,EAAA,CAAA;AACxC,IAAM,MAAA,SAAA,GAAY,SAAS,MAAM;AAC/B,MAAO,OAAA,KAAA,CAAM,UAAU,IAAK,EAAA,CAAA;AAAA,KAC7B,CAAA,CAAA;AAED,IAAA,MAAM,QAAQ,MAAM;AAClB,MAAA,IAAA,EAAA,CAAA;AAA4B,MAC9B,CAAA,EAAA,GAAA,cAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,EAAA,CAAA;AAEA,KAAA,CAAA;AACA,IAAA,MAAM,aAAa,EAAY,CAAA;AAE/B,IAAM,MAAA,UAAA,GAAA,GAAA,EAAkB,CAAC;AACvB,IAAI,MAAA,eAAkB,GAAA,CAAA,KAAA,KAAA;AAAW,MAAA,IAAA,EAAA,CAAA;AAEjC,MAAA,IAAI,iBAAe,CAAA,SAAA;AACnB,QAAI,OAAA;AACF,MAAA,IAAA,MAAA,QAAgB,CAAY,MAAA,CAAA;AAAA,MAC9B,IAAA,MAAA,CAAA,OAAA,KAAA,GAAA,EAAA;AACA,QAAI,MAAA,GAAO,YAAY,CAAO,UAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,UAAA,CAAA;AAC5B,OAAA;AAAgB,MAClB,IAAA,MAAA,CAAA,OAAA,KAAA,KAAA,EAAA;AACA,QAAA,SAAW,MAAY,CAAA,UAAA,CAAA;AAAM,OAAA;AAE7B,MAAM,IAAA,MAAA,CAAA,YAAiD,IAAA;AACvD,QAAA;AAOA,MAAA,MAAY,GAAA,GAAA,MAAA,CAAA,UAAiB,CAAA,QAAA,CAAA;AAC3B,MAAA,MAAA,MAAgB,GAAA,MAAA,CAAA,SAAA,CAAA;AAChB,MAAA,IAAA,GAAA,KAAA,OAAmB,CAAA,KAAA,IAAA,MAAA,KAAA,UAAA,CAAA,KAAA,EAAA;AAEnB,QAAA,OAAoB,CAAA,KAAA,GAAA,GAAA,CAAA;AAAA,QAAA,UACP,CAAA,KAAA,GAAA,MAAA,CAAA;AAAA,QACX,IAAA,CAAA,aAAe,EAAA;AAAwD,UACxE,SAAA,EAAA,IAAA;AAAA,UACH,OAAA,EAAA,KAAA,CAAA,SAAA,CAAA,IAAA,CAAA,KAAA,CAAA,SAAA,CAAA,IAAA,EAAA,GAAA,GAAA,GAAA,CAAA,GAAA,MAAA,CAAA;AAAA,SACF,CAAA,CAAA;AAGA,OAAM;AACJ,KAAA,CAAA;AACA,IAAA,MAAA,UAAc,GAAA,CAAA,IAAQ,KAAA;AAEtB,MAAI,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAW;AAIf,MAAA,MACE,GAAA,GAAA,EAAA,CAAA;AAEF,MAAI,MAAA,KAAA,GAAc,KAAA,EAAA,CAAA,MAAW,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA;AAE7B,MAAA,GAAA,CAAI,QAAM,GAAA,KAAe,CAAA,YAAU,GAAA,WAAA,CAAA,IAAA,EAAA,IAAA,CAAA,KAAA,CAAA,CAAA,KAAA,CAAA,KAAA,CAAA,YAAA,CAAA,GAAA,KAAA,CAAA;AACnC,MAAA,GAAA,CAAA,OAAc,GAAA,SAAe,CAAA,KAAA,CAAA,WAAU,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,IAAA,EAAA,KAAA,IAAA,CAAA,IAAA,CAAA,CAAA;AAEvC,MAAA,GAAA,CAAI,KAAM,GAAA,KAAA,CAAA,IAAA,EAAA,KAAA,IAAA,CAAA;AACR,MAAA,IAAA,GAAA,GAAY,CAAA,CAAA,EAAA,GAAA,KAAA,CAAA,OAAoB,KAAA,IAAK,GAAK,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA;AAAA,MAC5C,MAAA,KAAA,GAAA,CAAA,CAAA,EAAA,GAAA,KAAA,CAAA,OAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA;AAEA,MAAA,IAAI,CAAQ,GAAA,EAAA;AACV,QAAA,GAAA,GAAkB,CAAA,CAAA,EAAA,GAAA,KAAA,CAAA,UAAA,CAAA,OAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,EAAA,KAAA,CAAA,CAAA;AAClB,OAAI;AACF,MAAA,IAAA,IAAI,IAAgB,CAAA,KAAA,IAAA,IAAA,IAAA,CAAA,GAAA,EAAA;AAAA,QACtB,GAAA,CAAA,UAAA,CAAA,GAAA,IAAA,CAAA;AAEA,QAAI,IAAA,CAAC,KAAQ,KAAO,CAAA,IAAA,EAAA;AAClB,UAAA,GAAA,CAAI,YAAc,CAAA,GAAA,IAAA,CAAA;AAAA,SACpB;AAAA,QACF,IAAA,CAAA,GAAA,KAAA,CAAA,IAAA,EAAA;AAGA,UAAO,GAAA,CAAA,UAAA,CAAA,GAAA,IAAA,CAAA;AAAA,SACT;AAEA,OAAM;AACJ,MACG,OAAA,GAAA,CAAA;AAGkE,KAEvE,CAAA;AAEA,IAAM,MAAA,cAAA,GAAA,CAAA,IAAA,KAA8D;AAClE,MAAA,yBAA0B,CAAA,KAAA,IAAA,KAAA,CAAA,IAAA,CAAA,IAAA,EAAA,GAAA,SAAA,CAAA,KAAA,IAAA,KAAA,CAAA,IAAA,CAAA,IAAA,EAAA,GAAA,SAAA,CAAA,KAAA,GAAA,CAAA,IAAA,SAAA,CAAA,KAAA,CAAA,IAAA,CAAA,CAAA,SAAA,CAAA,CAAA,IAAA,KAAA,IAAA,CAAA,IAAA,EAAA,KAAA,IAAA,CAAA,IAAA,CAAA,CAAA;AAC1B,KAAM,CAAA;AACN,IAAI,MAAA,oBAA8B,GAAA,CAAA,KAAA,KAAA;AAChC,MAAI,MAAA,mBAA2B,CAAA,MAAA,CAAA;AAAG,MAAA,MAAA,MAAA,GAAA,WAAA,CAAA,OAAA,CAAA,IAAA,CAAA,CAAA;AAClC,MAAM,IAAA,MAAA,IAAA,MAAc,CAAA,WAAA,EAAA;AACpB,QAAM,IAAA,QAAA,CAAA,kBAAuB,CAAA;AAC7B,UAAI,OAAO;AACT,QAAA,MAAA,aAAe,CAAA,WAAkB,IAAA,MAAA,CAAA,SAAe,CAAA;AAChD,QAAA,MAAA,eAAmB,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA;AAAA,QACrB,IAAO,CAAA,KAAA,CAAA,UAAA,CAAA,SAAA,EAAA;AACL,UAAA,IAAI,CAAM,MAAA,EAAA,EAAA,OAAsB,EAAA,OAAA,EAAA,OAAe,EAAA,IAAA,EAAA,CAAA,CAAA;AAC7C,UAAA,IAAA,CAAA,UAAa,IAAE,CAAA,CAAA;AAA0C,SAAA,MACpD;AACL,UAAA,IAAA,aAAe,IAAA,gBAA2B,CAAA,OAAA,EAAA;AAAe,YAC3D,IAAA,CAAA,MAAA,EAAA,EAAA,OAAA,EAAA,KAAA,CAAA,OAAA,EAAA,OAAA,EAAA,OAAA,EAAA,CAAA,CAAA;AACA,WAAA;AAAoB,YACtB,IAAA,CAAA,MAAA,EAAA,EAAA,OAAA,EAAA,OAAA,EAAA,OAAA,EAAA,KAAA,CAAA,OAAA,EAAA,CAAA,CAAA;AAAA,WACF;AAAA,UACF,IAAA,CAAA,QAAA,EAAA,KAAA,CAAA,CAAA;AAEA,SACE;AAEE,OAAA;AACE,KAAA,CAAA;AACA,IAAA,KAAA,CAAA,MAAA,KAAA,CAAA,kBAA4B;AAAA,MAC9B,IAAA,EAAA,EAAA,EAAA,CAAA;AAAA,MAEJ,IAAA,CAAA,EAAA,GAAA,QAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAA,CAAA,QAAA,CAAA,aAAA,CAAA,EAAA;AAEA,QAAa,MAAA,QAAA,EAAA,CAAA;AAAA,QAIX,CAAA,EAAA,GAAA,cAAA,CAAA,KAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAA,EAAA,CAAA;AAAA,OACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -4,7 +4,6 @@ import '../../../../hooks/index.mjs';
|
|
|
4
4
|
import '../../../time-picker/index.mjs';
|
|
5
5
|
import '../../../../utils/index.mjs';
|
|
6
6
|
import { basicYearTableProps } from '../props/basic-year-table.mjs';
|
|
7
|
-
import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.mjs';
|
|
8
7
|
import { rangeArr } from '../../../time-picker/src/utils.mjs';
|
|
9
8
|
import { useNamespace } from '../../../../hooks/use-namespace/index.mjs';
|
|
10
9
|
import { useLocale } from '../../../../hooks/use-locale/index.mjs';
|
|
@@ -113,7 +112,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
113
112
|
};
|
|
114
113
|
}
|
|
115
114
|
});
|
|
116
|
-
var YearTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/Users/st/Desktop/vue/nxx-ui/packages/components/date-picker/src/date-picker-com/basic-year-table.vue"]]);
|
|
117
115
|
|
|
118
|
-
export {
|
|
116
|
+
export { _sfc_main as default };
|
|
119
117
|
//# sourceMappingURL=basic-year-table.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-year-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-year-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.yearTablePrompt')\"\n :class=\"ns.b()\"\n @click=\"handleYearTableClick\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(_, i) in 3\" :key=\"i\">\n <template v-for=\"(__, j) in 4\" :key=\"i + '_' + j\">\n <td\n v-if=\"i * 4 + j < 10\"\n :ref=\"\n (el) =>\n isSelectedCell(startYear + i * 4 + j) && (currentCellRef = el as HTMLElement)\n \"\n class=\"available\"\n :class=\"getCellKls(startYear + i * 4 + j)\"\n :aria-selected=\"`${isSelectedCell(startYear + i * 4 + j)}`\"\n :tabindex=\"isSelectedCell(startYear + i * 4 + j) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleYearTableClick\"\n @keydown.enter.prevent.stop=\"handleYearTableClick\"\n >\n <span class=\"cell\" :style=\"[isSelectedCell(startYear + i * 4 + j) ? {} : formatterStyle(customStyle, ['text'])]\">{{ startYear + i * 4 + j }}</span>\n </td>\n <td v-else />\n </template>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch, inject } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicYearTableProps } from '../props/basic-year-table'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\n\nconst datesInYear = (year: number, lang: string) => {\n const firstDay = dayjs(String(year)).locale(lang).startOf('year')\n const lastDay = firstDay.endOf('year')\n const numOfDays = lastDay.dayOfYear()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nconst props = defineProps(basicYearTableProps)\nconst emit = defineEmits(['pick'])\n\nconst ns = useNamespace('year-table')\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst startYear = computed(() => {\n return Math.floor(props.date.year() / 10) * 10\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst getCellKls = (year: number) => {\n const kls: Record<string, boolean> = {}\n const today = dayjs().locale(lang.value)\n\n kls.disabled = props.disabledDate\n ? datesInYear(year, lang.value).every(props.disabledDate)\n : false\n\n kls.current =\n castArray(props.parsedValue).findIndex((d) => d!.year() === year) >= 0\n\n kls.today = today.year() === year\n\n return kls\n}\n\nconst isSelectedCell = (year: number) => {\n return (\n (year === startYear.value &&\n props.date.year() < startYear.value &&\n props.date.year() > startYear.value + 9) ||\n castArray(props.date).findIndex((date) => date.year() === year) >= 0\n )\n}\n\nconst handleYearTableClick = (event: MouseEvent | KeyboardEvent) => {\n const clickTarget = event.target as HTMLDivElement\n const target = clickTarget.closest('td')\n if (target && target.textContent) {\n if (hasClass(target, 'disabled')) return\n const year = target.textContent || target.innerText\n emit('pick', Number(year))\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus on the current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"basic-year-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/basic-year-table.vue"],"sourcesContent":["<template>\n <table\n role=\"grid\"\n :aria-label=\"t('el.datepicker.yearTablePrompt')\"\n :class=\"ns.b()\"\n @click=\"handleYearTableClick\"\n >\n <tbody ref=\"tbodyRef\">\n <tr v-for=\"(_, i) in 3\" :key=\"i\">\n <template v-for=\"(__, j) in 4\" :key=\"i + '_' + j\">\n <td\n v-if=\"i * 4 + j < 10\"\n :ref=\"\n (el) =>\n isSelectedCell(startYear + i * 4 + j) && (currentCellRef = el as HTMLElement)\n \"\n class=\"available\"\n :class=\"getCellKls(startYear + i * 4 + j)\"\n :aria-selected=\"`${isSelectedCell(startYear + i * 4 + j)}`\"\n :tabindex=\"isSelectedCell(startYear + i * 4 + j) ? 0 : -1\"\n @keydown.space.prevent.stop=\"handleYearTableClick\"\n @keydown.enter.prevent.stop=\"handleYearTableClick\"\n >\n <span class=\"cell\" :style=\"[isSelectedCell(startYear + i * 4 + j) ? {} : formatterStyle(customStyle, ['text'])]\">{{ startYear + i * 4 + j }}</span>\n </td>\n <td v-else />\n </template>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, ref, watch, inject } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { castArray, hasClass } from '@element-plus/utils'\nimport { basicYearTableProps } from '../props/basic-year-table'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\n\nconst datesInYear = (year: number, lang: string) => {\n const firstDay = dayjs(String(year)).locale(lang).startOf('year')\n const lastDay = firstDay.endOf('year')\n const numOfDays = lastDay.dayOfYear()\n return rangeArr(numOfDays).map((n) => firstDay.add(n, 'day').toDate())\n}\n\nconst props = defineProps(basicYearTableProps)\nconst emit = defineEmits(['pick'])\n\nconst ns = useNamespace('year-table')\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\n\nconst { t, lang } = useLocale()\nconst tbodyRef = ref<HTMLElement>()\nconst currentCellRef = ref<HTMLElement>()\nconst startYear = computed(() => {\n return Math.floor(props.date.year() / 10) * 10\n})\n\nconst focus = () => {\n currentCellRef.value?.focus()\n}\n\nconst getCellKls = (year: number) => {\n const kls: Record<string, boolean> = {}\n const today = dayjs().locale(lang.value)\n\n kls.disabled = props.disabledDate\n ? datesInYear(year, lang.value).every(props.disabledDate)\n : false\n\n kls.current =\n castArray(props.parsedValue).findIndex((d) => d!.year() === year) >= 0\n\n kls.today = today.year() === year\n\n return kls\n}\n\nconst isSelectedCell = (year: number) => {\n return (\n (year === startYear.value &&\n props.date.year() < startYear.value &&\n props.date.year() > startYear.value + 9) ||\n castArray(props.date).findIndex((date) => date.year() === year) >= 0\n )\n}\n\nconst handleYearTableClick = (event: MouseEvent | KeyboardEvent) => {\n const clickTarget = event.target as HTMLDivElement\n const target = clickTarget.closest('td')\n if (target && target.textContent) {\n if (hasClass(target, 'disabled')) return\n const year = target.textContent || target.innerText\n emit('pick', Number(year))\n }\n}\n\nwatch(\n () => props.date,\n async () => {\n if (tbodyRef.value?.contains(document.activeElement)) {\n await nextTick()\n currentCellRef.value?.focus()\n }\n }\n)\n\ndefineExpose({\n /**\n * @description focus on the current cell\n */\n focus,\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -11,10 +11,9 @@ import '../../../../constants/index.mjs';
|
|
|
11
11
|
import { DArrowLeft, ArrowLeft, ArrowRight, DArrowRight } from '@element-plus/icons-vue';
|
|
12
12
|
import '../../../../tokens/index.mjs';
|
|
13
13
|
import { panelDatePickProps } from '../props/panel-date-pick.mjs';
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.mjs';
|
|
14
|
+
import _sfc_main$2 from './basic-date-table.mjs';
|
|
15
|
+
import _sfc_main$4 from './basic-month-table.mjs';
|
|
16
|
+
import _sfc_main$3 from './basic-year-table.mjs';
|
|
18
17
|
import { useNamespace } from '../../../../hooks/use-namespace/index.mjs';
|
|
19
18
|
import { useLocale } from '../../../../hooks/use-locale/index.mjs';
|
|
20
19
|
import { TOOLTIP_INJECTION_KEY } from '../../../../tokens/tooltip.mjs';
|
|
@@ -22,7 +21,7 @@ import { isArray, isFunction } from '@vue/shared';
|
|
|
22
21
|
import { extractTimeFormat, extractDateFormat } from '../../../time-picker/src/utils.mjs';
|
|
23
22
|
import { EVENT_CODE } from '../../../../constants/aria.mjs';
|
|
24
23
|
import { formatterStyle } from '../../../../utils/types.mjs';
|
|
25
|
-
import
|
|
24
|
+
import _sfc_main$1 from '../../../time-picker/src/time-picker-com/panel-time-pick.mjs';
|
|
26
25
|
import ClickOutside from '../../../../directives/click-outside/index.mjs';
|
|
27
26
|
|
|
28
27
|
const _hoisted_1 = ["onClick"];
|
|
@@ -473,7 +472,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
473
472
|
onInput: _cache[1] || (_cache[1] = (val) => userInputTime.value = val),
|
|
474
473
|
onChange: handleVisibleTimeChange
|
|
475
474
|
}, null, 8, ["placeholder", "model-value"]),
|
|
476
|
-
createVNode(unref(
|
|
475
|
+
createVNode(unref(_sfc_main$1), {
|
|
477
476
|
visible: timePickerVisible.value,
|
|
478
477
|
format: unref(timeFormat),
|
|
479
478
|
"time-arrow-control": unref(arrowControl),
|
|
@@ -589,7 +588,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
589
588
|
class: normalizeClass(unref(ppNs).e("content")),
|
|
590
589
|
onKeydown: handleKeydownTable
|
|
591
590
|
}, [
|
|
592
|
-
currentView.value === "date" ? (openBlock(), createBlock(
|
|
591
|
+
currentView.value === "date" ? (openBlock(), createBlock(_sfc_main$2, {
|
|
593
592
|
key: 0,
|
|
594
593
|
ref_key: "currentViewRef",
|
|
595
594
|
ref: currentViewRef,
|
|
@@ -600,7 +599,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
600
599
|
"cell-class-name": unref(cellClassName),
|
|
601
600
|
onPick: handleDatePick
|
|
602
601
|
}, null, 8, ["selection-mode", "date", "parsed-value", "disabled-date", "cell-class-name"])) : createCommentVNode("v-if", true),
|
|
603
|
-
currentView.value === "year" ? (openBlock(), createBlock(
|
|
602
|
+
currentView.value === "year" ? (openBlock(), createBlock(_sfc_main$3, {
|
|
604
603
|
key: 1,
|
|
605
604
|
ref_key: "currentViewRef",
|
|
606
605
|
ref: currentViewRef,
|
|
@@ -609,7 +608,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
609
608
|
"parsed-value": _ctx.parsedValue,
|
|
610
609
|
onPick: handleYearPick
|
|
611
610
|
}, null, 8, ["date", "disabled-date", "parsed-value"])) : createCommentVNode("v-if", true),
|
|
612
|
-
currentView.value === "month" ? (openBlock(), createBlock(
|
|
611
|
+
currentView.value === "month" ? (openBlock(), createBlock(_sfc_main$4, {
|
|
613
612
|
key: 2,
|
|
614
613
|
ref_key: "currentViewRef",
|
|
615
614
|
ref: currentViewRef,
|
|
@@ -658,7 +657,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
658
657
|
};
|
|
659
658
|
}
|
|
660
659
|
});
|
|
661
|
-
var DatePickPanel = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/Users/st/Desktop/vue/nxx-ui/packages/components/date-picker/src/date-picker-com/panel-date-pick.vue"]]);
|
|
662
660
|
|
|
663
|
-
export {
|
|
661
|
+
export { _sfc_main as default };
|
|
664
662
|
//# sourceMappingURL=panel-date-pick.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panel-date-pick.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-date-pick.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n dpNs.b(),\n {\n 'has-sidebar': $slots.sidebar || hasShortcuts,\n 'has-time': showTime,\n },\n ]\"\n :style=\"[formatterStyle(customStyle, ['background', 'text'])]\"\n >\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div v-if=\"showTime\" :class=\"dpNs.e('time-header')\">\n <span :class=\"dpNs.e('editor-wrap')\">\n <el-input\n :placeholder=\"t('el.datepicker.selectDate')\"\n :model-value=\"visibleDate\"\n size=\"small\"\n :validate-event=\"false\"\n @input=\"(val) => (userInputDate = val)\"\n @change=\"handleVisibleDateChange\"\n />\n </span>\n <span\n v-click-outside=\"handleTimePickClose\"\n :class=\"dpNs.e('editor-wrap')\"\n >\n <el-input\n :placeholder=\"t('el.datepicker.selectTime')\"\n :model-value=\"visibleTime\"\n size=\"small\"\n :validate-event=\"false\"\n @focus=\"onTimePickerInputFocus\"\n @input=\"(val) => (userInputTime = val)\"\n @change=\"handleVisibleTimeChange\"\n />\n <time-pick-panel\n :visible=\"timePickerVisible\"\n :format=\"timeFormat\"\n :time-arrow-control=\"arrowControl\"\n :parsed-value=\"innerDate\"\n @pick=\"handleTimePick\"\n />\n </span>\n </div>\n <div\n v-show=\"currentView !== 'time'\"\n :class=\"[\n dpNs.e('header'),\n (currentView === 'year' || currentView === 'month') &&\n dpNs.e('header--bordered'),\n ]\"\n :style=\"[formatterStyle(customStyle, ['border'])]\"\n >\n <span :class=\"dpNs.e('prev-btn')\">\n <button\n type=\"button\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n :aria-label=\"t(`el.datepicker.prevYear`)\"\n class=\"d-arrow-left\"\n :class=\"ppNs.e('icon-btn')\"\n @click=\"moveByYear(false)\"\n >\n <el-icon><d-arrow-left /></el-icon>\n </button>\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n :aria-label=\"t(`el.datepicker.prevMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-left\"\n @click=\"moveByMonth(false)\"\n >\n <el-icon><arrow-left /></el-icon>\n </button>\n </span>\n <span\n role=\"button\"\n :class=\"dpNs.e('header-label')\"\n aria-live=\"polite\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n tabindex=\"0\"\n @keydown.enter=\"showPicker('year')\"\n @click=\"showPicker('year')\"\n >{{ yearLabel }}</span\n >\n <span\n v-show=\"currentView === 'date'\"\n role=\"button\"\n aria-live=\"polite\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n tabindex=\"0\"\n :class=\"[\n dpNs.e('header-label'),\n { active: currentView === 'month' },\n ]\"\n @keydown.enter=\"showPicker('month')\"\n @click=\"showPicker('month')\"\n >{{ t(`el.datepicker.month${month + 1}`) }}</span\n >\n <span :class=\"dpNs.e('next-btn')\">\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n :aria-label=\"t(`el.datepicker.nextMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-right\"\n @click=\"moveByMonth(true)\"\n >\n <el-icon><arrow-right /></el-icon>\n </button>\n <button\n type=\"button\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n :aria-label=\"t(`el.datepicker.nextYear`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"moveByYear(true)\"\n >\n <el-icon><d-arrow-right /></el-icon>\n </button>\n </span>\n </div>\n <div :class=\"ppNs.e('content')\" @keydown=\"handleKeydownTable\">\n <date-table\n v-if=\"currentView === 'date'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleDatePick\"\n />\n <year-table\n v-if=\"currentView === 'year'\"\n ref=\"currentViewRef\"\n :date=\"innerDate\"\n :disabled-date=\"disabledDate\"\n :parsed-value=\"parsedValue\"\n @pick=\"handleYearPick\"\n />\n <month-table\n v-if=\"currentView === 'month'\"\n ref=\"currentViewRef\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n @pick=\"handleMonthPick\"\n />\n </div>\n </div>\n </div>\n <div\n v-show=\"footerVisible && currentView === 'date'\"\n :class=\"ppNs.e('footer')\"\n :style=\"[formatterStyle(customStyle, ['background', 'border'])]\"\n >\n <el-button\n v-show=\"selectionMode !== 'dates'\"\n text\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n @click=\"changeToNow\"\n >\n {{ t('el.datepicker.now') }}\n </el-button>\n <el-button\n plain\n :style=\"[formatterStyle(customStyle, ['text', 'background', 'border'])]\"\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n @click=\"onConfirm\"\n >\n {{ t('el.datepicker.confirm') }}\n </el-button>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n ref,\n toRef,\n useAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport ElButton from '@element-plus/components/button'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\n\nimport {\n TimePickPanel,\n extractDateFormat,\n extractTimeFormat,\n} from '@element-plus/components/time-picker'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { isArray, isFunction } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport {\n ArrowLeft,\n ArrowRight,\n DArrowLeft,\n DArrowRight,\n} from '@element-plus/icons-vue'\nimport { TOOLTIP_INJECTION_KEY } from '@element-plus/tokens'\nimport { panelDatePickProps } from '../props/panel-date-pick'\nimport DateTable from './basic-date-table.vue'\nimport MonthTable from './basic-month-table.vue'\nimport YearTable from './basic-year-table.vue'\n\nimport type { SetupContext } from 'vue'\nimport type { ConfigType, Dayjs } from 'dayjs'\nimport type { PanelDatePickProps } from '../props/panel-date-pick'\nimport type {\n DateTableEmits,\n DatesPickerEmits,\n WeekPickerEmits,\n} from '../props/basic-date-table'\n\ntype DatePickType = PanelDatePickProps['type']\n// todo\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst timeWithinRange = (_: ConfigType, __: any, ___: string) => true\nconst props = defineProps(panelDatePickProps)\nconst contextEmit = defineEmits(['pick', 'set-picker-option', 'panel-change'])\nconst ppNs = useNamespace('picker-panel')\nconst dpNs = useNamespace('date-picker')\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { t, lang } = useLocale()\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst popper = inject(TOOLTIP_INJECTION_KEY)\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\n\nconst { shortcuts, disabledDate, cellClassName, defaultTime, arrowControl } =\n pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst currentViewRef = ref<{ focus: () => void }>()\n\nconst innerDate = ref(dayjs().locale(lang.value))\n\nconst defaultTimeD = computed(() => {\n return dayjs(defaultTime).locale(lang.value)\n})\n\nconst month = computed(() => {\n return innerDate.value.month()\n})\n\nconst year = computed(() => {\n return innerDate.value.year()\n})\n\nconst selectableRange = ref([])\nconst userInputDate = ref<string | null>(null)\nconst userInputTime = ref<string | null>(null)\n// todo update to disableHour\nconst checkDateWithinRange = (date: ConfigType) => {\n return selectableRange.value.length > 0\n ? timeWithinRange(date, selectableRange.value, props.format || 'HH:mm:ss')\n : true\n}\nconst formatEmit = (emitDayjs: Dayjs) => {\n if (defaultTime && !visibleTime.value) {\n return defaultTimeD.value\n .year(emitDayjs.year())\n .month(emitDayjs.month())\n .date(emitDayjs.date())\n }\n if (showTime.value) return emitDayjs.millisecond(0)\n return emitDayjs.startOf('day')\n}\nconst emit = (value: Dayjs | Dayjs[], ...args: any[]) => {\n if (!value) {\n contextEmit('pick', value, ...args)\n } else if (isArray(value)) {\n const dates = value.map(formatEmit)\n contextEmit('pick', dates, ...args)\n } else {\n contextEmit('pick', formatEmit(value), ...args)\n }\n userInputDate.value = null\n userInputTime.value = null\n}\nconst handleDatePick = (value: DateTableEmits, keepOpen?: boolean) => {\n if (selectionMode.value === 'date') {\n value = value as Dayjs\n let newDate = props.parsedValue\n ? (props.parsedValue as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n : value\n // change default time while out of selectableRange\n if (!checkDateWithinRange(newDate)) {\n newDate = (selectableRange.value[0][0] as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n }\n innerDate.value = newDate\n emit(newDate, showTime.value || keepOpen)\n } else if (selectionMode.value === 'week') {\n emit((value as WeekPickerEmits).date)\n } else if (selectionMode.value === 'dates') {\n emit(value as DatesPickerEmits, true) // set true to keep panel open\n }\n}\n\nconst moveByMonth = (forward: boolean) => {\n const action = forward ? 'add' : 'subtract'\n innerDate.value = innerDate.value[action](1, 'month')\n handlePanelChange('month')\n}\n\nconst moveByYear = (forward: boolean) => {\n const currentDate = innerDate.value\n const action = forward ? 'add' : 'subtract'\n\n innerDate.value =\n currentView.value === 'year'\n ? currentDate[action](10, 'year')\n : currentDate[action](1, 'year')\n\n handlePanelChange('year')\n}\n\nconst currentView = ref('date')\n\nconst yearLabel = computed(() => {\n const yearTranslation = t('el.datepicker.year')\n if (currentView.value === 'year') {\n const startYear = Math.floor(year.value / 10) * 10\n if (yearTranslation) {\n return `${startYear} ${yearTranslation} - ${\n startYear + 9\n } ${yearTranslation}`\n }\n return `${startYear} - ${startYear + 9}`\n }\n return `${year.value} ${yearTranslation}`\n})\n\ntype Shortcut = {\n value: (() => Dayjs) | Dayjs\n onClick?: (ctx: Omit<SetupContext, 'expose'>) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValue = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n if (shortcutValue) {\n emit(dayjs(shortcutValue).locale(lang.value))\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit: contextEmit as SetupContext['emit'],\n })\n }\n}\n\nconst selectionMode = computed<DatePickType>(() => {\n const { type } = props\n if (['week', 'month', 'year', 'dates'].includes(type)) return type\n return 'date' as DatePickType\n})\n\nconst keyboardMode = computed<string>(() => {\n return selectionMode.value === 'date'\n ? currentView.value\n : selectionMode.value\n})\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst handleMonthPick = async (month: number) => {\n innerDate.value = innerDate.value.startOf('month').month(month)\n if (selectionMode.value === 'month') {\n emit(innerDate.value, false)\n } else {\n currentView.value = 'date'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('month')\n}\n\nconst handleYearPick = async (year: number) => {\n if (selectionMode.value === 'year') {\n innerDate.value = innerDate.value.startOf('year').year(year)\n emit(innerDate.value, false)\n } else {\n innerDate.value = innerDate.value.year(year)\n currentView.value = 'month'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('year')\n}\n\nconst showPicker = async (view: 'month' | 'year') => {\n currentView.value = view\n await nextTick()\n handleFocusPicker()\n}\n\nconst showTime = computed(\n () => props.type === 'datetime' || props.type === 'datetimerange'\n)\n\nconst footerVisible = computed(() => {\n return showTime.value || selectionMode.value === 'dates'\n})\n\nconst onConfirm = () => {\n if (selectionMode.value === 'dates') {\n emit(props.parsedValue as Dayjs[])\n } else {\n // deal with the scenario where: user opens the date time picker, then confirm without doing anything\n let result = props.parsedValue as Dayjs\n if (!result) {\n const defaultTimeD = dayjs(defaultTime).locale(lang.value)\n const defaultValueD = getDefaultValue()\n result = defaultTimeD\n .year(defaultValueD.year())\n .month(defaultValueD.month())\n .date(defaultValueD.date())\n }\n innerDate.value = result\n emit(result)\n }\n}\n\nconst changeToNow = () => {\n // NOTE: not a permanent solution\n // consider disable \"now\" button in the future\n const now = dayjs().locale(lang.value)\n const nowDate = now.toDate()\n if (\n (!disabledDate || !disabledDate(nowDate)) &&\n checkDateWithinRange(nowDate)\n ) {\n innerDate.value = dayjs().locale(lang.value)\n emit(innerDate.value)\n }\n}\n\nconst timeFormat = computed(() => {\n return extractTimeFormat(props.format)\n})\n\nconst dateFormat = computed(() => {\n return extractDateFormat(props.format)\n})\n\nconst visibleTime = computed(() => {\n if (userInputTime.value) return userInputTime.value\n if (!props.parsedValue && !defaultValue.value) return\n return ((props.parsedValue || innerDate.value) as Dayjs).format(\n timeFormat.value\n )\n})\n\nconst visibleDate = computed(() => {\n if (userInputDate.value) return userInputDate.value\n if (!props.parsedValue && !defaultValue.value) return\n return ((props.parsedValue || innerDate.value) as Dayjs).format(\n dateFormat.value\n )\n})\n\nconst timePickerVisible = ref(false)\nconst onTimePickerInputFocus = () => {\n timePickerVisible.value = true\n}\nconst handleTimePickClose = () => {\n timePickerVisible.value = false\n}\n\nconst getUnits = (date: Dayjs) => {\n return {\n hour: date.hour(),\n minute: date.minute(),\n second: date.second(),\n year: date.year(),\n month: date.month(),\n date: date.date(),\n }\n}\n\nconst handleTimePick = (value: Dayjs, visible: boolean, first: boolean) => {\n const { hour, minute, second } = getUnits(value)\n const newDate = props.parsedValue\n ? (props.parsedValue as Dayjs).hour(hour).minute(minute).second(second)\n : value\n innerDate.value = newDate\n emit(innerDate.value, true)\n if (!first) {\n timePickerVisible.value = visible\n }\n}\n\nconst handleVisibleTimeChange = (value: string) => {\n const newDate = dayjs(value, timeFormat.value).locale(lang.value)\n if (newDate.isValid() && checkDateWithinRange(newDate)) {\n const { year, month, date } = getUnits(innerDate.value)\n innerDate.value = newDate.year(year).month(month).date(date)\n userInputTime.value = null\n timePickerVisible.value = false\n emit(innerDate.value, true)\n }\n}\n\nconst handleVisibleDateChange = (value: string) => {\n const newDate = dayjs(value, dateFormat.value).locale(lang.value)\n if (newDate.isValid()) {\n if (disabledDate && disabledDate(newDate.toDate())) {\n return\n }\n const { hour, minute, second } = getUnits(innerDate.value)\n innerDate.value = newDate.hour(hour).minute(minute).second(second)\n userInputDate.value = null\n emit(innerDate.value, true)\n }\n}\n\nconst isValidValue = (date: unknown) => {\n return (\n dayjs.isDayjs(date) &&\n date.isValid() &&\n (disabledDate ? !disabledDate(date.toDate()) : true)\n )\n}\n\nconst formatToString = (value: Dayjs | Dayjs[]) => {\n if (selectionMode.value === 'dates') {\n return (value as Dayjs[]).map((_) => _.format(props.format))\n }\n return (value as Dayjs).format(props.format)\n}\n\nconst parseUserInput = (value: Dayjs) => {\n return dayjs(value, props.format).locale(lang.value)\n}\n\nconst getDefaultValue = () => {\n const parseDate = dayjs(defaultValue.value).locale(lang.value)\n if (!defaultValue.value) {\n const defaultTimeDValue = defaultTimeD.value\n return dayjs()\n .hour(defaultTimeDValue.hour())\n .minute(defaultTimeDValue.minute())\n .second(defaultTimeDValue.second())\n .locale(lang.value)\n }\n return parseDate\n}\n\nconst handleFocusPicker = async () => {\n if (['week', 'month', 'year', 'date'].includes(selectionMode.value)) {\n currentViewRef.value?.focus()\n if (selectionMode.value === 'week') {\n handleKeyControl(EVENT_CODE.down)\n }\n }\n}\n\nconst handleKeydownTable = (event: KeyboardEvent) => {\n const { code } = event\n const validCode = [\n EVENT_CODE.up,\n EVENT_CODE.down,\n EVENT_CODE.left,\n EVENT_CODE.right,\n EVENT_CODE.home,\n EVENT_CODE.end,\n EVENT_CODE.pageUp,\n EVENT_CODE.pageDown,\n ]\n if (validCode.includes(code)) {\n handleKeyControl(code)\n event.stopPropagation()\n event.preventDefault()\n }\n if (\n [EVENT_CODE.enter, EVENT_CODE.space].includes(code) &&\n userInputDate.value === null &&\n userInputTime.value === null\n ) {\n event.preventDefault()\n emit(innerDate.value, false)\n }\n}\n\nconst handleKeyControl = (code: string) => {\n type KeyControlMappingCallableOffset = (date: Date, step?: number) => number\n type KeyControl = {\n [key: string]:\n | number\n | KeyControlMappingCallableOffset\n | ((date: Date, step: number) => any)\n offset: (date: Date, step: number) => any\n }\n interface KeyControlMapping {\n [key: string]: KeyControl\n }\n\n const { up, down, left, right, home, end, pageUp, pageDown } = EVENT_CODE\n const mapping: KeyControlMapping = {\n year: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setFullYear(date.getFullYear() + step),\n },\n month: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setMonth(date.getMonth() + step),\n },\n week: {\n [up]: -1,\n [down]: 1,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setDate(date.getDate() + step * 7),\n },\n date: {\n [up]: -7,\n [down]: 7,\n [left]: -1,\n [right]: 1,\n [home]: (date: Date) => -date.getDay(),\n [end]: (date: Date) => -date.getDay() + 6,\n [pageUp]: (date: Date) =>\n -new Date(date.getFullYear(), date.getMonth(), 0).getDate(),\n [pageDown]: (date: Date) =>\n new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate(),\n offset: (date: Date, step: number) => date.setDate(date.getDate() + step),\n },\n }\n\n const newDate = innerDate.value.toDate()\n while (Math.abs(innerDate.value.diff(newDate, 'year', true)) < 1) {\n const map = mapping[keyboardMode.value]\n if (!map) return\n map.offset(\n newDate,\n isFunction(map[code])\n ? (map[code] as unknown as KeyControlMappingCallableOffset)(newDate)\n : (map[code] as number) ?? 0\n )\n if (disabledDate && disabledDate(newDate)) {\n break\n }\n const result = dayjs(newDate).locale(lang.value)\n innerDate.value = result\n contextEmit('pick', result, true)\n break\n }\n}\n\nconst handlePanelChange = (mode: 'month' | 'year') => {\n contextEmit('panel-change', innerDate.value.toDate(), mode, currentView.value)\n}\n\nwatch(\n () => selectionMode.value,\n (val) => {\n if (['month', 'year'].includes(val)) {\n currentView.value = val\n return\n }\n currentView.value = 'date'\n },\n { immediate: true }\n)\n\nwatch(\n () => currentView.value,\n () => {\n popper?.updatePopper()\n }\n)\n\nwatch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.parsedValue,\n (val) => {\n if (val) {\n if (selectionMode.value === 'dates') return\n if (Array.isArray(val)) return\n innerDate.value = val\n } else {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\ncontextEmit('set-picker-option', ['isValidValue', isValidValue])\ncontextEmit('set-picker-option', ['formatToString', formatToString])\ncontextEmit('set-picker-option', ['parseUserInput', parseUserInput])\ncontextEmit('set-picker-option', ['handleFocusPicker', handleFocusPicker])\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"panel-date-pick.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-date-pick.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n dpNs.b(),\n {\n 'has-sidebar': $slots.sidebar || hasShortcuts,\n 'has-time': showTime,\n },\n ]\"\n :style=\"[formatterStyle(customStyle, ['background', 'text'])]\"\n >\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div v-if=\"showTime\" :class=\"dpNs.e('time-header')\">\n <span :class=\"dpNs.e('editor-wrap')\">\n <el-input\n :placeholder=\"t('el.datepicker.selectDate')\"\n :model-value=\"visibleDate\"\n size=\"small\"\n :validate-event=\"false\"\n @input=\"(val) => (userInputDate = val)\"\n @change=\"handleVisibleDateChange\"\n />\n </span>\n <span\n v-click-outside=\"handleTimePickClose\"\n :class=\"dpNs.e('editor-wrap')\"\n >\n <el-input\n :placeholder=\"t('el.datepicker.selectTime')\"\n :model-value=\"visibleTime\"\n size=\"small\"\n :validate-event=\"false\"\n @focus=\"onTimePickerInputFocus\"\n @input=\"(val) => (userInputTime = val)\"\n @change=\"handleVisibleTimeChange\"\n />\n <time-pick-panel\n :visible=\"timePickerVisible\"\n :format=\"timeFormat\"\n :time-arrow-control=\"arrowControl\"\n :parsed-value=\"innerDate\"\n @pick=\"handleTimePick\"\n />\n </span>\n </div>\n <div\n v-show=\"currentView !== 'time'\"\n :class=\"[\n dpNs.e('header'),\n (currentView === 'year' || currentView === 'month') &&\n dpNs.e('header--bordered'),\n ]\"\n :style=\"[formatterStyle(customStyle, ['border'])]\"\n >\n <span :class=\"dpNs.e('prev-btn')\">\n <button\n type=\"button\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n :aria-label=\"t(`el.datepicker.prevYear`)\"\n class=\"d-arrow-left\"\n :class=\"ppNs.e('icon-btn')\"\n @click=\"moveByYear(false)\"\n >\n <el-icon><d-arrow-left /></el-icon>\n </button>\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n :aria-label=\"t(`el.datepicker.prevMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-left\"\n @click=\"moveByMonth(false)\"\n >\n <el-icon><arrow-left /></el-icon>\n </button>\n </span>\n <span\n role=\"button\"\n :class=\"dpNs.e('header-label')\"\n aria-live=\"polite\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n tabindex=\"0\"\n @keydown.enter=\"showPicker('year')\"\n @click=\"showPicker('year')\"\n >{{ yearLabel }}</span\n >\n <span\n v-show=\"currentView === 'date'\"\n role=\"button\"\n aria-live=\"polite\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n tabindex=\"0\"\n :class=\"[\n dpNs.e('header-label'),\n { active: currentView === 'month' },\n ]\"\n @keydown.enter=\"showPicker('month')\"\n @click=\"showPicker('month')\"\n >{{ t(`el.datepicker.month${month + 1}`) }}</span\n >\n <span :class=\"dpNs.e('next-btn')\">\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n :aria-label=\"t(`el.datepicker.nextMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-right\"\n @click=\"moveByMonth(true)\"\n >\n <el-icon><arrow-right /></el-icon>\n </button>\n <button\n type=\"button\"\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n :aria-label=\"t(`el.datepicker.nextYear`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"moveByYear(true)\"\n >\n <el-icon><d-arrow-right /></el-icon>\n </button>\n </span>\n </div>\n <div :class=\"ppNs.e('content')\" @keydown=\"handleKeydownTable\">\n <date-table\n v-if=\"currentView === 'date'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleDatePick\"\n />\n <year-table\n v-if=\"currentView === 'year'\"\n ref=\"currentViewRef\"\n :date=\"innerDate\"\n :disabled-date=\"disabledDate\"\n :parsed-value=\"parsedValue\"\n @pick=\"handleYearPick\"\n />\n <month-table\n v-if=\"currentView === 'month'\"\n ref=\"currentViewRef\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n @pick=\"handleMonthPick\"\n />\n </div>\n </div>\n </div>\n <div\n v-show=\"footerVisible && currentView === 'date'\"\n :class=\"ppNs.e('footer')\"\n :style=\"[formatterStyle(customStyle, ['background', 'border'])]\"\n >\n <el-button\n v-show=\"selectionMode !== 'dates'\"\n text\n :style=\"[formatterStyle(customStyle, ['text'])]\"\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n @click=\"changeToNow\"\n >\n {{ t('el.datepicker.now') }}\n </el-button>\n <el-button\n plain\n :style=\"[formatterStyle(customStyle, ['text', 'background', 'border'])]\"\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n @click=\"onConfirm\"\n >\n {{ t('el.datepicker.confirm') }}\n </el-button>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n ref,\n toRef,\n useAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport ElButton from '@element-plus/components/button'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport { formatterStyle } from '@element-plus/utils'\nimport type { CustomStyle } from '@element-plus/utils'\n\nimport {\n TimePickPanel,\n extractDateFormat,\n extractTimeFormat,\n} from '@element-plus/components/time-picker'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { isArray, isFunction } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport {\n ArrowLeft,\n ArrowRight,\n DArrowLeft,\n DArrowRight,\n} from '@element-plus/icons-vue'\nimport { TOOLTIP_INJECTION_KEY } from '@element-plus/tokens'\nimport { panelDatePickProps } from '../props/panel-date-pick'\nimport DateTable from './basic-date-table.vue'\nimport MonthTable from './basic-month-table.vue'\nimport YearTable from './basic-year-table.vue'\n\nimport type { SetupContext } from 'vue'\nimport type { ConfigType, Dayjs } from 'dayjs'\nimport type { PanelDatePickProps } from '../props/panel-date-pick'\nimport type {\n DateTableEmits,\n DatesPickerEmits,\n WeekPickerEmits,\n} from '../props/basic-date-table'\n\ntype DatePickType = PanelDatePickProps['type']\n// todo\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst timeWithinRange = (_: ConfigType, __: any, ___: string) => true\nconst props = defineProps(panelDatePickProps)\nconst contextEmit = defineEmits(['pick', 'set-picker-option', 'panel-change'])\nconst ppNs = useNamespace('picker-panel')\nconst dpNs = useNamespace('date-picker')\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { t, lang } = useLocale()\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst popper = inject(TOOLTIP_INJECTION_KEY)\nconst customStyle = inject('$custom-style-filter', {}) as CustomStyle\n\nconst { shortcuts, disabledDate, cellClassName, defaultTime, arrowControl } =\n pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst currentViewRef = ref<{ focus: () => void }>()\n\nconst innerDate = ref(dayjs().locale(lang.value))\n\nconst defaultTimeD = computed(() => {\n return dayjs(defaultTime).locale(lang.value)\n})\n\nconst month = computed(() => {\n return innerDate.value.month()\n})\n\nconst year = computed(() => {\n return innerDate.value.year()\n})\n\nconst selectableRange = ref([])\nconst userInputDate = ref<string | null>(null)\nconst userInputTime = ref<string | null>(null)\n// todo update to disableHour\nconst checkDateWithinRange = (date: ConfigType) => {\n return selectableRange.value.length > 0\n ? timeWithinRange(date, selectableRange.value, props.format || 'HH:mm:ss')\n : true\n}\nconst formatEmit = (emitDayjs: Dayjs) => {\n if (defaultTime && !visibleTime.value) {\n return defaultTimeD.value\n .year(emitDayjs.year())\n .month(emitDayjs.month())\n .date(emitDayjs.date())\n }\n if (showTime.value) return emitDayjs.millisecond(0)\n return emitDayjs.startOf('day')\n}\nconst emit = (value: Dayjs | Dayjs[], ...args: any[]) => {\n if (!value) {\n contextEmit('pick', value, ...args)\n } else if (isArray(value)) {\n const dates = value.map(formatEmit)\n contextEmit('pick', dates, ...args)\n } else {\n contextEmit('pick', formatEmit(value), ...args)\n }\n userInputDate.value = null\n userInputTime.value = null\n}\nconst handleDatePick = (value: DateTableEmits, keepOpen?: boolean) => {\n if (selectionMode.value === 'date') {\n value = value as Dayjs\n let newDate = props.parsedValue\n ? (props.parsedValue as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n : value\n // change default time while out of selectableRange\n if (!checkDateWithinRange(newDate)) {\n newDate = (selectableRange.value[0][0] as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n }\n innerDate.value = newDate\n emit(newDate, showTime.value || keepOpen)\n } else if (selectionMode.value === 'week') {\n emit((value as WeekPickerEmits).date)\n } else if (selectionMode.value === 'dates') {\n emit(value as DatesPickerEmits, true) // set true to keep panel open\n }\n}\n\nconst moveByMonth = (forward: boolean) => {\n const action = forward ? 'add' : 'subtract'\n innerDate.value = innerDate.value[action](1, 'month')\n handlePanelChange('month')\n}\n\nconst moveByYear = (forward: boolean) => {\n const currentDate = innerDate.value\n const action = forward ? 'add' : 'subtract'\n\n innerDate.value =\n currentView.value === 'year'\n ? currentDate[action](10, 'year')\n : currentDate[action](1, 'year')\n\n handlePanelChange('year')\n}\n\nconst currentView = ref('date')\n\nconst yearLabel = computed(() => {\n const yearTranslation = t('el.datepicker.year')\n if (currentView.value === 'year') {\n const startYear = Math.floor(year.value / 10) * 10\n if (yearTranslation) {\n return `${startYear} ${yearTranslation} - ${\n startYear + 9\n } ${yearTranslation}`\n }\n return `${startYear} - ${startYear + 9}`\n }\n return `${year.value} ${yearTranslation}`\n})\n\ntype Shortcut = {\n value: (() => Dayjs) | Dayjs\n onClick?: (ctx: Omit<SetupContext, 'expose'>) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValue = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n if (shortcutValue) {\n emit(dayjs(shortcutValue).locale(lang.value))\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit: contextEmit as SetupContext['emit'],\n })\n }\n}\n\nconst selectionMode = computed<DatePickType>(() => {\n const { type } = props\n if (['week', 'month', 'year', 'dates'].includes(type)) return type\n return 'date' as DatePickType\n})\n\nconst keyboardMode = computed<string>(() => {\n return selectionMode.value === 'date'\n ? currentView.value\n : selectionMode.value\n})\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst handleMonthPick = async (month: number) => {\n innerDate.value = innerDate.value.startOf('month').month(month)\n if (selectionMode.value === 'month') {\n emit(innerDate.value, false)\n } else {\n currentView.value = 'date'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('month')\n}\n\nconst handleYearPick = async (year: number) => {\n if (selectionMode.value === 'year') {\n innerDate.value = innerDate.value.startOf('year').year(year)\n emit(innerDate.value, false)\n } else {\n innerDate.value = innerDate.value.year(year)\n currentView.value = 'month'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('year')\n}\n\nconst showPicker = async (view: 'month' | 'year') => {\n currentView.value = view\n await nextTick()\n handleFocusPicker()\n}\n\nconst showTime = computed(\n () => props.type === 'datetime' || props.type === 'datetimerange'\n)\n\nconst footerVisible = computed(() => {\n return showTime.value || selectionMode.value === 'dates'\n})\n\nconst onConfirm = () => {\n if (selectionMode.value === 'dates') {\n emit(props.parsedValue as Dayjs[])\n } else {\n // deal with the scenario where: user opens the date time picker, then confirm without doing anything\n let result = props.parsedValue as Dayjs\n if (!result) {\n const defaultTimeD = dayjs(defaultTime).locale(lang.value)\n const defaultValueD = getDefaultValue()\n result = defaultTimeD\n .year(defaultValueD.year())\n .month(defaultValueD.month())\n .date(defaultValueD.date())\n }\n innerDate.value = result\n emit(result)\n }\n}\n\nconst changeToNow = () => {\n // NOTE: not a permanent solution\n // consider disable \"now\" button in the future\n const now = dayjs().locale(lang.value)\n const nowDate = now.toDate()\n if (\n (!disabledDate || !disabledDate(nowDate)) &&\n checkDateWithinRange(nowDate)\n ) {\n innerDate.value = dayjs().locale(lang.value)\n emit(innerDate.value)\n }\n}\n\nconst timeFormat = computed(() => {\n return extractTimeFormat(props.format)\n})\n\nconst dateFormat = computed(() => {\n return extractDateFormat(props.format)\n})\n\nconst visibleTime = computed(() => {\n if (userInputTime.value) return userInputTime.value\n if (!props.parsedValue && !defaultValue.value) return\n return ((props.parsedValue || innerDate.value) as Dayjs).format(\n timeFormat.value\n )\n})\n\nconst visibleDate = computed(() => {\n if (userInputDate.value) return userInputDate.value\n if (!props.parsedValue && !defaultValue.value) return\n return ((props.parsedValue || innerDate.value) as Dayjs).format(\n dateFormat.value\n )\n})\n\nconst timePickerVisible = ref(false)\nconst onTimePickerInputFocus = () => {\n timePickerVisible.value = true\n}\nconst handleTimePickClose = () => {\n timePickerVisible.value = false\n}\n\nconst getUnits = (date: Dayjs) => {\n return {\n hour: date.hour(),\n minute: date.minute(),\n second: date.second(),\n year: date.year(),\n month: date.month(),\n date: date.date(),\n }\n}\n\nconst handleTimePick = (value: Dayjs, visible: boolean, first: boolean) => {\n const { hour, minute, second } = getUnits(value)\n const newDate = props.parsedValue\n ? (props.parsedValue as Dayjs).hour(hour).minute(minute).second(second)\n : value\n innerDate.value = newDate\n emit(innerDate.value, true)\n if (!first) {\n timePickerVisible.value = visible\n }\n}\n\nconst handleVisibleTimeChange = (value: string) => {\n const newDate = dayjs(value, timeFormat.value).locale(lang.value)\n if (newDate.isValid() && checkDateWithinRange(newDate)) {\n const { year, month, date } = getUnits(innerDate.value)\n innerDate.value = newDate.year(year).month(month).date(date)\n userInputTime.value = null\n timePickerVisible.value = false\n emit(innerDate.value, true)\n }\n}\n\nconst handleVisibleDateChange = (value: string) => {\n const newDate = dayjs(value, dateFormat.value).locale(lang.value)\n if (newDate.isValid()) {\n if (disabledDate && disabledDate(newDate.toDate())) {\n return\n }\n const { hour, minute, second } = getUnits(innerDate.value)\n innerDate.value = newDate.hour(hour).minute(minute).second(second)\n userInputDate.value = null\n emit(innerDate.value, true)\n }\n}\n\nconst isValidValue = (date: unknown) => {\n return (\n dayjs.isDayjs(date) &&\n date.isValid() &&\n (disabledDate ? !disabledDate(date.toDate()) : true)\n )\n}\n\nconst formatToString = (value: Dayjs | Dayjs[]) => {\n if (selectionMode.value === 'dates') {\n return (value as Dayjs[]).map((_) => _.format(props.format))\n }\n return (value as Dayjs).format(props.format)\n}\n\nconst parseUserInput = (value: Dayjs) => {\n return dayjs(value, props.format).locale(lang.value)\n}\n\nconst getDefaultValue = () => {\n const parseDate = dayjs(defaultValue.value).locale(lang.value)\n if (!defaultValue.value) {\n const defaultTimeDValue = defaultTimeD.value\n return dayjs()\n .hour(defaultTimeDValue.hour())\n .minute(defaultTimeDValue.minute())\n .second(defaultTimeDValue.second())\n .locale(lang.value)\n }\n return parseDate\n}\n\nconst handleFocusPicker = async () => {\n if (['week', 'month', 'year', 'date'].includes(selectionMode.value)) {\n currentViewRef.value?.focus()\n if (selectionMode.value === 'week') {\n handleKeyControl(EVENT_CODE.down)\n }\n }\n}\n\nconst handleKeydownTable = (event: KeyboardEvent) => {\n const { code } = event\n const validCode = [\n EVENT_CODE.up,\n EVENT_CODE.down,\n EVENT_CODE.left,\n EVENT_CODE.right,\n EVENT_CODE.home,\n EVENT_CODE.end,\n EVENT_CODE.pageUp,\n EVENT_CODE.pageDown,\n ]\n if (validCode.includes(code)) {\n handleKeyControl(code)\n event.stopPropagation()\n event.preventDefault()\n }\n if (\n [EVENT_CODE.enter, EVENT_CODE.space].includes(code) &&\n userInputDate.value === null &&\n userInputTime.value === null\n ) {\n event.preventDefault()\n emit(innerDate.value, false)\n }\n}\n\nconst handleKeyControl = (code: string) => {\n type KeyControlMappingCallableOffset = (date: Date, step?: number) => number\n type KeyControl = {\n [key: string]:\n | number\n | KeyControlMappingCallableOffset\n | ((date: Date, step: number) => any)\n offset: (date: Date, step: number) => any\n }\n interface KeyControlMapping {\n [key: string]: KeyControl\n }\n\n const { up, down, left, right, home, end, pageUp, pageDown } = EVENT_CODE\n const mapping: KeyControlMapping = {\n year: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setFullYear(date.getFullYear() + step),\n },\n month: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setMonth(date.getMonth() + step),\n },\n week: {\n [up]: -1,\n [down]: 1,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setDate(date.getDate() + step * 7),\n },\n date: {\n [up]: -7,\n [down]: 7,\n [left]: -1,\n [right]: 1,\n [home]: (date: Date) => -date.getDay(),\n [end]: (date: Date) => -date.getDay() + 6,\n [pageUp]: (date: Date) =>\n -new Date(date.getFullYear(), date.getMonth(), 0).getDate(),\n [pageDown]: (date: Date) =>\n new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate(),\n offset: (date: Date, step: number) => date.setDate(date.getDate() + step),\n },\n }\n\n const newDate = innerDate.value.toDate()\n while (Math.abs(innerDate.value.diff(newDate, 'year', true)) < 1) {\n const map = mapping[keyboardMode.value]\n if (!map) return\n map.offset(\n newDate,\n isFunction(map[code])\n ? (map[code] as unknown as KeyControlMappingCallableOffset)(newDate)\n : (map[code] as number) ?? 0\n )\n if (disabledDate && disabledDate(newDate)) {\n break\n }\n const result = dayjs(newDate).locale(lang.value)\n innerDate.value = result\n contextEmit('pick', result, true)\n break\n }\n}\n\nconst handlePanelChange = (mode: 'month' | 'year') => {\n contextEmit('panel-change', innerDate.value.toDate(), mode, currentView.value)\n}\n\nwatch(\n () => selectionMode.value,\n (val) => {\n if (['month', 'year'].includes(val)) {\n currentView.value = val\n return\n }\n currentView.value = 'date'\n },\n { immediate: true }\n)\n\nwatch(\n () => currentView.value,\n () => {\n popper?.updatePopper()\n }\n)\n\nwatch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.parsedValue,\n (val) => {\n if (val) {\n if (selectionMode.value === 'dates') return\n if (Array.isArray(val)) return\n innerDate.value = val\n } else {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\ncontextEmit('set-picker-option', ['isValidValue', isValidValue])\ncontextEmit('set-picker-option', ['formatToString', formatToString])\ncontextEmit('set-picker-option', ['parseUserInput', parseUserInput])\ncontextEmit('set-picker-option', ['handleFocusPicker', handleFocusPicker])\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -648,14 +648,14 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
648
648
|
onFocus?: ((evt: FocusEvent) => any) | undefined;
|
|
649
649
|
onBlur?: ((evt: FocusEvent) => any) | undefined;
|
|
650
650
|
onClear?: (() => any) | undefined;
|
|
651
|
-
|
|
651
|
+
onMouseleave?: ((evt: MouseEvent) => any) | undefined;
|
|
652
|
+
onMouseenter?: ((evt: MouseEvent) => any) | undefined;
|
|
653
|
+
onKeydown?: ((evt: Event | KeyboardEvent) => any) | undefined;
|
|
652
654
|
onCompositionstart?: ((evt: CompositionEvent) => any) | undefined;
|
|
653
655
|
onCompositionupdate?: ((evt: CompositionEvent) => any) | undefined;
|
|
654
|
-
|
|
655
|
-
onMouseenter?: ((evt: MouseEvent) => any) | undefined;
|
|
656
|
-
onMouseleave?: ((evt: MouseEvent) => any) | undefined;
|
|
656
|
+
onCompositionend?: ((evt: CompositionEvent) => any) | undefined;
|
|
657
657
|
}>>;
|
|
658
|
-
emit: ((event: "update:modelValue", value: string) => void) & ((event: "change", value: string) => void) & ((event: "input", value: string) => void) & ((event: "focus", evt: FocusEvent) => void) & ((event: "blur", evt: FocusEvent) => void) & ((event: "
|
|
658
|
+
emit: ((event: "update:modelValue", value: string) => void) & ((event: "change", value: string) => void) & ((event: "input", value: string) => void) & ((event: "focus", evt: FocusEvent) => void) & ((event: "blur", evt: FocusEvent) => void) & ((event: "clear") => void) & ((event: "mouseleave", evt: MouseEvent) => void) & ((event: "mouseenter", evt: MouseEvent) => void) & ((event: "keydown", evt: Event | KeyboardEvent) => void) & ((event: "compositionstart", evt: CompositionEvent) => void) & ((event: "compositionupdate", evt: CompositionEvent) => void) & ((event: "compositionend", evt: CompositionEvent) => void);
|
|
659
659
|
rawAttrs: {
|
|
660
660
|
[x: string]: unknown;
|
|
661
661
|
};
|
|
@@ -915,12 +915,12 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
915
915
|
onFocus?: ((evt: FocusEvent) => any) | undefined;
|
|
916
916
|
onBlur?: ((evt: FocusEvent) => any) | undefined;
|
|
917
917
|
onClear?: (() => any) | undefined;
|
|
918
|
-
|
|
918
|
+
onMouseleave?: ((evt: MouseEvent) => any) | undefined;
|
|
919
|
+
onMouseenter?: ((evt: MouseEvent) => any) | undefined;
|
|
920
|
+
onKeydown?: ((evt: Event | KeyboardEvent) => any) | undefined;
|
|
919
921
|
onCompositionstart?: ((evt: CompositionEvent) => any) | undefined;
|
|
920
922
|
onCompositionupdate?: ((evt: CompositionEvent) => any) | undefined;
|
|
921
|
-
|
|
922
|
-
onMouseenter?: ((evt: MouseEvent) => any) | undefined;
|
|
923
|
-
onMouseleave?: ((evt: MouseEvent) => any) | undefined;
|
|
923
|
+
onCompositionend?: ((evt: CompositionEvent) => any) | undefined;
|
|
924
924
|
}, {
|
|
925
925
|
readonly type: string;
|
|
926
926
|
readonly disabled: boolean;
|
|
@@ -11,13 +11,12 @@ import { ArrowRight, DArrowLeft, ArrowLeft, DArrowRight } from '@element-plus/ic
|
|
|
11
11
|
import { panelDateRangeProps } from '../props/panel-date-range.mjs';
|
|
12
12
|
import { useRangePicker } from '../composables/use-range-picker.mjs';
|
|
13
13
|
import { isValidRange, getDefaultValue } from '../utils.mjs';
|
|
14
|
-
import
|
|
15
|
-
import _export_sfc from '../../../../_virtual/plugin-vue_export-helper.mjs';
|
|
14
|
+
import _sfc_main$2 from './basic-date-table.mjs';
|
|
16
15
|
import { useLocale } from '../../../../hooks/use-locale/index.mjs';
|
|
17
16
|
import { extractTimeFormat, extractDateFormat } from '../../../time-picker/src/utils.mjs';
|
|
18
17
|
import { isArray } from '@vue/shared';
|
|
19
18
|
import { formatterStyle } from '../../../../utils/types.mjs';
|
|
20
|
-
import
|
|
19
|
+
import _sfc_main$1 from '../../../time-picker/src/time-picker-com/panel-time-pick.mjs';
|
|
21
20
|
import ClickOutside from '../../../../directives/click-outside/index.mjs';
|
|
22
21
|
|
|
23
22
|
const _hoisted_1 = ["onClick"];
|
|
@@ -239,7 +238,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
239
238
|
if (type === "min") {
|
|
240
239
|
leftDate.value = parsedValueD;
|
|
241
240
|
minDate.value = (minDate.value || leftDate.value).year(parsedValueD.year()).month(parsedValueD.month()).date(parsedValueD.date());
|
|
242
|
-
if (!props.unlinkPanels) {
|
|
241
|
+
if (!props.unlinkPanels && (!maxDate.value || maxDate.value.isBefore(minDate.value))) {
|
|
243
242
|
rightDate.value = parsedValueD.add(1, "month");
|
|
244
243
|
maxDate.value = minDate.value.add(1, "month");
|
|
245
244
|
}
|
|
@@ -420,7 +419,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
420
419
|
onInput: _cache[3] || (_cache[3] = (val) => handleTimeInput(val, "min")),
|
|
421
420
|
onChange: _cache[4] || (_cache[4] = (val) => handleTimeChange(val, "min"))
|
|
422
421
|
}, null, 8, ["class", "disabled", "placeholder", "model-value"]),
|
|
423
|
-
createVNode(unref(
|
|
422
|
+
createVNode(unref(_sfc_main$1), {
|
|
424
423
|
visible: minTimePickerVisible.value,
|
|
425
424
|
format: unref(timeFormat),
|
|
426
425
|
"datetime-role": "start",
|
|
@@ -475,7 +474,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
475
474
|
onInput: _cache[8] || (_cache[8] = (val) => handleTimeInput(val, "max")),
|
|
476
475
|
onChange: _cache[9] || (_cache[9] = (val) => handleTimeChange(val, "max"))
|
|
477
476
|
}, null, 8, ["class", "disabled", "placeholder", "model-value", "readonly"]),
|
|
478
|
-
createVNode(unref(
|
|
477
|
+
createVNode(unref(_sfc_main$1), {
|
|
479
478
|
"datetime-role": "end",
|
|
480
479
|
visible: maxTimePickerVisible.value,
|
|
481
480
|
format: unref(timeFormat),
|
|
@@ -556,7 +555,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
556
555
|
], 10, _hoisted_3)) : createCommentVNode("v-if", true),
|
|
557
556
|
createElementVNode("div", null, toDisplayString(unref(leftLabel)), 1)
|
|
558
557
|
], 2),
|
|
559
|
-
createVNode(
|
|
558
|
+
createVNode(_sfc_main$2, {
|
|
560
559
|
"selection-mode": "range",
|
|
561
560
|
date: leftDate.value,
|
|
562
561
|
"min-date": unref(minDate),
|
|
@@ -635,7 +634,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
635
634
|
], 6),
|
|
636
635
|
createElementVNode("div", null, toDisplayString(unref(rightLabel)), 1)
|
|
637
636
|
], 2),
|
|
638
|
-
createVNode(
|
|
637
|
+
createVNode(_sfc_main$2, {
|
|
639
638
|
"selection-mode": "range",
|
|
640
639
|
date: rightDate.value,
|
|
641
640
|
"min-date": unref(minDate),
|
|
@@ -686,7 +685,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
686
685
|
};
|
|
687
686
|
}
|
|
688
687
|
});
|
|
689
|
-
var DateRangePickPanel = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "/Users/st/Desktop/vue/nxx-ui/packages/components/date-picker/src/date-picker-com/panel-date-range.vue"]]);
|
|
690
688
|
|
|
691
|
-
export {
|
|
689
|
+
export { _sfc_main as default };
|
|
692
690
|
//# sourceMappingURL=panel-date-range.mjs.map
|