element-plus 1.2.0-beta.5 → 1.2.0-beta.6
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/README.md +5 -174
- package/attributes.json +1 -1
- package/dist/index.css +1 -1
- package/dist/index.full.js +1568 -1607
- package/dist/index.full.min.js +8 -8
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +11 -11
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +1563 -1612
- package/es/component.d.ts +3 -0
- package/es/component.mjs.map +1 -1
- package/es/components/affix/index.d.ts +48 -0
- package/es/components/affix/src/affix.vue.d.ts +48 -0
- package/es/components/alert/index.d.ts +5 -5
- package/es/components/alert/src/alert.d.ts +1 -1
- package/es/components/alert/src/alert.vue.d.ts +5 -5
- package/es/components/autocomplete/index.d.ts +4 -4
- package/es/components/autocomplete/src/index.vue.d.ts +2 -2
- package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.mjs.map +1 -1
- package/es/components/avatar/index.d.ts +1 -1
- package/es/components/avatar/src/avatar.vue.d.ts +1 -1
- package/es/components/backtop/src/backtop.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/backtop/src/backtop.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/backtop/src/backtop.vue_vue_type_template_id_63a7fea6_lang.mjs.map +1 -1
- package/es/components/button/index.d.ts +18 -18
- package/es/components/button/src/button-group.d.ts +1 -1
- package/es/components/button/src/button-group.vue.d.ts +3 -3
- package/es/components/button/src/button.d.ts +3 -3
- package/es/components/button/src/button.mjs +5 -3
- package/es/components/button/src/button.mjs.map +1 -1
- package/es/components/button/src/button.vue.d.ts +12 -12
- package/es/components/button/src/button.vue_vue_type_script_lang.mjs +9 -12
- package/es/components/button/src/button.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/button/src/button.vue_vue_type_template_id_802c5c76_lang.mjs.map +1 -1
- package/es/components/calendar/index.d.ts +20 -47
- package/es/components/calendar/index.mjs +6 -8
- package/es/components/calendar/index.mjs.map +1 -1
- package/es/components/calendar/src/calendar.d.ts +11 -0
- package/es/components/calendar/src/calendar.mjs +19 -0
- package/es/components/calendar/src/calendar.mjs.map +1 -0
- package/es/components/calendar/src/calendar.vue.d.ts +34 -0
- package/es/components/calendar/src/{index.vue_vue_type_script_lang.mjs → calendar.vue_vue_type_script_lang.mjs} +12 -23
- package/es/components/calendar/src/calendar.vue_vue_type_script_lang.mjs.map +1 -0
- package/es/components/calendar/src/{index.vue_vue_type_template_id_819aa44a_lang.mjs → calendar.vue_vue_type_template_id_76705c76_lang.mjs} +1 -1
- package/es/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.mjs.map +1 -0
- package/es/components/calendar/src/calendar2.mjs +7 -0
- package/es/components/calendar/src/calendar2.mjs.map +1 -0
- package/es/components/calendar/src/date-table.d.ts +13 -0
- package/es/components/calendar/src/date-table.mjs +23 -5
- package/es/components/calendar/src/date-table.mjs.map +1 -1
- package/es/components/calendar/src/date-table.vue.d.ts +29 -38
- package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs +54 -71
- package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs +1 -1
- package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs.map +1 -1
- package/es/components/calendar/src/date-table2.mjs +7 -0
- package/es/components/calendar/src/date-table2.mjs.map +1 -0
- package/es/components/carousel/src/main.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/carousel/src/main.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/carousel/src/main.vue_vue_type_template_id_1303d144_lang.mjs.map +1 -1
- package/es/components/cascader/index.d.ts +8756 -0
- package/es/components/cascader/src/index.vue.d.ts +4384 -0
- package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs +3 -4
- package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs.map +1 -1
- package/es/components/cascader-panel/src/node.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/cascader-panel/src/node.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/cascader-panel/src/node.vue_vue_type_template_id_18b09cb2_lang.mjs.map +1 -1
- package/es/components/checkbox/index.d.ts +10 -10
- package/es/components/checkbox/src/checkbox-button.vue.d.ts +3 -3
- package/es/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.mjs +5 -3
- package/es/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox-group.vue_vue_type_template_id_9944d4d2_lang.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox.type.d.ts +2 -2
- package/es/components/checkbox/src/checkbox.vue.d.ts +4 -4
- package/es/components/checkbox/src/useCheckbox.d.ts +2 -3
- package/es/components/checkbox/src/useCheckbox.mjs +9 -18
- package/es/components/checkbox/src/useCheckbox.mjs.map +1 -1
- package/es/components/collapse/index.d.ts +4 -4
- package/es/components/collapse/src/collapse-item.vue.d.ts +2 -2
- package/es/components/collapse/src/collapse-item.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/collapse/src/collapse-item.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/collapse/src/collapse-item.vue_vue_type_template_id_80da782a_lang.mjs.map +1 -1
- package/es/components/color-picker/index.d.ts +2 -2
- package/es/components/color-picker/src/components/alpha-slider.vue.d.ts +30 -0
- package/es/components/color-picker/src/index.vue.d.ts +1 -1
- package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs +3 -6
- package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.mjs.map +1 -1
- package/es/components/config-provider/index.d.ts +10 -9
- package/es/components/config-provider/src/config-provider.d.ts +3 -4
- package/es/components/config-provider/src/config-provider.mjs +10 -11
- package/es/components/config-provider/src/config-provider.mjs.map +1 -1
- package/es/components/config-provider/src/index.d.ts +10 -9
- package/es/components/date-picker/index.d.ts +10 -10
- package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +3 -3
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +2 -2
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +3 -3
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +2 -2
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker.d.ts +5 -5
- package/es/components/descriptions/index.d.ts +1 -1
- package/es/components/descriptions/src/index.vue.d.ts +1 -1
- package/es/components/descriptions/src/index.vue_vue_type_script_lang.mjs +4 -6
- package/es/components/descriptions/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.mjs.map +1 -1
- package/es/components/dialog/index.d.ts +8 -2
- package/es/components/dialog/src/dialog.d.ts +2 -1
- package/es/components/dialog/src/dialog.mjs +4 -0
- package/es/components/dialog/src/dialog.mjs.map +1 -1
- package/es/components/dialog/src/dialog.vue.d.ts +8 -2
- package/es/components/dialog/src/dialog.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.mjs +2 -3
- package/es/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.mjs.map +1 -1
- package/es/components/dialog/src/use-dialog.d.ts +2 -0
- package/es/components/dialog/src/use-dialog.mjs +2 -0
- package/es/components/dialog/src/use-dialog.mjs.map +1 -1
- package/es/components/divider/index.d.ts +4 -0
- package/es/components/divider/src/divider.d.ts +2 -0
- package/es/components/divider/src/divider.mjs +5 -1
- package/es/components/divider/src/divider.mjs.map +1 -1
- package/es/components/divider/src/divider.vue.d.ts +4 -0
- package/es/components/divider/src/divider.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.mjs +4 -3
- package/es/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.mjs.map +1 -1
- package/es/components/drawer/index.d.ts +66 -208
- package/es/components/drawer/index.mjs +6 -8
- package/es/components/drawer/index.mjs.map +1 -1
- package/es/components/drawer/src/drawer.d.ts +35 -0
- package/es/components/drawer/src/drawer.mjs +28 -0
- package/es/components/drawer/src/drawer.mjs.map +1 -0
- package/es/components/drawer/src/drawer.vue.d.ts +129 -0
- package/es/components/drawer/src/drawer.vue_vue_type_script_lang.mjs +37 -0
- package/es/components/drawer/src/drawer.vue_vue_type_script_lang.mjs.map +1 -0
- package/es/components/drawer/src/{index.vue_vue_type_template_id_052d0d8e_lang.mjs → drawer.vue_vue_type_template_id_e0557736_lang.mjs} +1 -1
- package/es/components/drawer/src/drawer.vue_vue_type_template_id_e0557736_lang.mjs.map +1 -0
- package/es/components/drawer/src/drawer2.mjs +7 -0
- package/es/components/drawer/src/drawer2.mjs.map +1 -0
- package/es/components/dropdown/index.d.ts +3 -3
- package/es/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
- package/es/components/dropdown/src/dropdown.vue.d.ts +1 -1
- package/es/components/dropdown/src/dropdown.vue_vue_type_script_lang.mjs +4 -4
- package/es/components/dropdown/src/dropdown.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.mjs.map +1 -1
- package/es/components/dropdown/src/useDropdown.d.ts +0 -1
- package/es/components/dropdown/src/useDropdown.mjs +1 -3
- package/es/components/dropdown/src/useDropdown.mjs.map +1 -1
- package/es/components/form/index.d.ts +4 -4
- package/es/components/form/src/form-item.vue.d.ts +2 -2
- package/es/components/form/src/form-item.vue_vue_type_script_lang.mjs +4 -6
- package/es/components/form/src/form-item.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/form/src/form-item.vue_vue_type_template_id_24eda48b_lang.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.mjs.map +1 -1
- package/es/components/index.mjs +5 -1
- package/es/components/index.mjs.map +1 -1
- package/es/components/input/index.d.ts +10 -10
- package/es/components/input/src/input.d.ts +2 -2
- package/es/components/input/src/input.mjs +4 -3
- package/es/components/input/src/input.mjs.map +1 -1
- package/es/components/input/src/input.vue.d.ts +10 -10
- package/es/components/input/src/input.vue_vue_type_script_lang.mjs +10 -11
- package/es/components/input/src/input.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/input/src/input.vue_vue_type_template_id_3290dcb6_lang.mjs.map +1 -1
- package/es/components/input-number/index.d.ts +23 -23
- package/es/components/input-number/src/input-number.vue.d.ts +23 -23
- package/es/components/input-number/src/input-number.vue_vue_type_script_lang.mjs +6 -5
- package/es/components/input-number/src/input-number.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.mjs +2 -1
- package/es/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.mjs.map +1 -1
- package/es/components/link/index.d.ts +2 -2
- package/es/components/link/src/link.vue.d.ts +2 -2
- package/es/components/loading/index.d.ts +52 -13
- package/es/components/loading/index.mjs +3 -3
- package/es/components/loading/index.mjs.map +1 -1
- package/es/components/loading/src/directive.d.ts +11 -10
- package/es/components/loading/src/directive.mjs +45 -26
- package/es/components/loading/src/directive.mjs.map +1 -1
- package/es/components/loading/src/loading.d.ts +24 -0
- package/es/components/loading/src/loading.mjs +112 -0
- package/es/components/loading/src/loading.mjs.map +1 -0
- package/es/components/loading/src/service.d.ts +3 -0
- package/es/components/loading/src/service.mjs +101 -0
- package/es/components/loading/src/service.mjs.map +1 -0
- package/es/components/loading/src/types.d.ts +23 -0
- package/es/components/loading/src/types.mjs +2 -0
- package/es/components/loading/src/types.mjs.map +1 -0
- package/es/components/menu/src/menu.mjs +1 -1
- package/es/components/menu/src/menu.mjs.map +1 -1
- package/es/components/menu/src/sub-menu.mjs +1 -1
- package/es/components/menu/src/sub-menu.mjs.map +1 -1
- package/es/components/message/src/message.d.ts +1 -1
- package/es/components/message/src/message.vue.d.ts +4 -3
- package/es/components/message/src/message.vue_vue_type_script_lang.mjs +2 -0
- package/es/components/message/src/message.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/message/src/message.vue_vue_type_template_id_031967c2_lang.mjs +51 -54
- package/es/components/message/src/message.vue_vue_type_template_id_031967c2_lang.mjs.map +1 -1
- package/es/components/message-box/src/index.vue.d.ts +1840 -0
- package/es/components/notification/src/notification.d.ts +1 -1
- package/es/components/notification/src/notification.vue.d.ts +5 -5
- package/es/components/page-header/src/page-header.mjs +1 -1
- package/es/components/page-header/src/page-header.mjs.map +1 -1
- package/es/components/pagination/src/components/next.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/pagination/src/components/next.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/next.vue_vue_type_template_id_93fbb39e_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/pager.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/pagination/src/components/pager.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/pager.vue_vue_type_template_id_0bfc9916_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/prev.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/pagination/src/components/prev.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/prev.vue_vue_type_template_id_15259d71_lang.mjs.map +1 -1
- package/es/components/popconfirm/index.d.ts +2 -2
- package/es/components/popconfirm/src/popconfirm.mjs +1 -1
- package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +2 -2
- package/es/components/popover/index.d.ts +2 -2
- package/es/components/popover/src/index.vue.d.ts +1 -1
- package/es/components/popper/index.d.ts +3480 -0
- package/es/components/popper/src/index.vue.d.ts +1737 -0
- package/es/components/popper/src/use-popper/index.d.ts +1540 -1
- package/es/components/progress/index.d.ts +81 -4
- package/es/components/progress/index.mjs +6 -8
- package/es/components/progress/index.mjs.map +1 -1
- package/es/components/progress/src/progress.d.ts +22 -0
- package/es/components/progress/src/progress.mjs +62 -0
- package/es/components/progress/src/progress.mjs.map +1 -0
- package/es/components/progress/src/progress.vue.d.ts +81 -0
- package/es/components/progress/src/{index.vue_vue_type_script_lang.mjs → progress.vue_vue_type_script_lang.mjs} +27 -94
- package/es/components/progress/src/progress.vue_vue_type_script_lang.mjs.map +1 -0
- package/es/components/progress/src/{index.vue_vue_type_template_id_556e268a_lang.mjs → progress.vue_vue_type_template_id_9158c3b6_lang.mjs} +1 -1
- package/es/components/progress/src/progress.vue_vue_type_template_id_9158c3b6_lang.mjs.map +1 -0
- package/es/components/progress/src/progress2.mjs +7 -0
- package/es/components/progress/src/progress2.mjs.map +1 -0
- package/es/components/radio/index.d.ts +36 -40
- package/es/components/radio/src/radio-button.d.ts +2 -2
- package/es/components/radio/src/radio-button.vue.d.ts +8 -8
- package/es/components/radio/src/radio-group.d.ts +2 -2
- package/es/components/radio/src/radio-group.mjs +3 -2
- package/es/components/radio/src/radio-group.mjs.map +1 -1
- package/es/components/radio/src/radio-group.vue.d.ts +6 -8
- package/es/components/radio/src/radio-group.vue_vue_type_script_lang.mjs +1 -3
- package/es/components/radio/src/radio-group.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/radio/src/radio-group.vue_vue_type_template_id_53ef81f9_lang.mjs.map +1 -1
- package/es/components/radio/src/radio.d.ts +5 -5
- package/es/components/radio/src/radio.mjs +5 -6
- package/es/components/radio/src/radio.mjs.map +1 -1
- package/es/components/radio/src/radio.vue.d.ts +8 -8
- package/es/components/rate/src/rate.mjs +1 -1
- package/es/components/rate/src/rate.mjs.map +1 -1
- package/es/components/rate/src/rate.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/rate/src/rate.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.mjs.map +1 -1
- package/es/components/result/index.d.ts +3 -3
- package/es/components/result/src/result.d.ts +1 -1
- package/es/components/result/src/result.mjs +1 -1
- package/es/components/result/src/result.mjs.map +1 -1
- package/es/components/result/src/result.vue.d.ts +3 -3
- package/es/components/select/index.d.ts +14 -7
- package/es/components/select/src/select.vue.d.ts +14 -7
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs +5 -1
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs +6 -6
- package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs.map +1 -1
- package/es/components/select/src/useSelect.d.ts +76 -0
- package/es/components/select/src/useSelect.mjs +3 -3
- package/es/components/select/src/useSelect.mjs.map +1 -1
- package/es/components/select-v2/index.d.ts +14 -14
- package/es/components/select-v2/src/defaults.mjs +1 -1
- package/es/components/select-v2/src/defaults.mjs.map +1 -1
- package/es/components/select-v2/src/select.vue.d.ts +7 -7
- package/es/components/select-v2/src/useSelect.d.ts +1 -1
- package/es/components/select-v2/src/useSelect.mjs +5 -6
- package/es/components/select-v2/src/useSelect.mjs.map +1 -1
- package/es/components/skeleton/index.d.ts +6 -6
- package/es/components/skeleton/src/skeleton-item.d.ts +1 -1
- package/es/components/skeleton/src/skeleton-item.vue.d.ts +3 -3
- package/es/components/slider/index.d.ts +307 -0
- package/es/components/slider/src/index.vue.d.ts +155 -0
- package/es/components/slider/src/useSlide.d.ts +21 -0
- package/es/components/steps/index.d.ts +4 -4
- package/es/components/steps/src/item.vue.d.ts +2 -2
- package/es/components/steps/src/item.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/steps/src/item.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/steps/src/item.vue_vue_type_template_id_6ec47f4b_lang.mjs.map +1 -1
- package/es/components/switch/index.d.ts +99 -4
- package/es/components/switch/index.mjs +6 -8
- package/es/components/switch/index.mjs.map +1 -1
- package/es/components/switch/src/switch.d.ts +31 -0
- package/es/components/switch/src/switch.mjs +87 -0
- package/es/components/switch/src/switch.mjs.map +1 -0
- package/es/components/switch/src/switch.vue.d.ts +98 -0
- package/es/components/switch/src/switch.vue_vue_type_script_lang.mjs +117 -0
- package/es/components/switch/src/switch.vue_vue_type_script_lang.mjs.map +1 -0
- package/es/components/switch/src/{index.vue_vue_type_template_id_ee4fcade_lang.mjs → switch.vue_vue_type_template_id_538fbc85_lang.mjs} +1 -1
- package/es/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.mjs.map +1 -0
- package/es/components/switch/src/switch2.mjs +7 -0
- package/es/components/switch/src/switch2.mjs.map +1 -0
- package/es/components/table/index.d.ts +9 -9
- package/es/components/table/src/config.mjs +1 -1
- package/es/components/table/src/config.mjs.map +1 -1
- package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.mjs.map +1 -1
- package/es/components/table/src/table/style-helper.d.ts +1 -1
- package/es/components/table/src/table/style-helper.mjs +3 -5
- package/es/components/table/src/table/style-helper.mjs.map +1 -1
- package/es/components/table/src/table-column/defaults.d.ts +2 -2
- package/es/components/table/src/table-column/defaults.mjs.map +1 -1
- package/es/components/table/src/table-column/index.d.ts +3 -3
- package/es/components/table/src/table.vue.d.ts +3 -3
- package/es/components/table/src/util.mjs +0 -1
- package/es/components/table/src/util.mjs.map +1 -1
- package/es/components/tabs/index.d.ts +4 -4
- package/es/components/tabs/src/tab-nav.mjs +1 -1
- package/es/components/tabs/src/tab-nav.mjs.map +1 -1
- package/es/components/tabs/src/tab-pane.vue.d.ts +2 -2
- package/es/components/tabs/src/tabs.mjs +1 -1
- package/es/components/tabs/src/tabs.mjs.map +1 -1
- package/es/components/tag/src/tag.vue_vue_type_script_lang.mjs +4 -4
- package/es/components/tag/src/tag.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/tag/src/tag.vue_vue_type_template_id_525996c5_lang.mjs.map +1 -1
- package/es/components/time-picker/index.d.ts +10 -10
- package/es/components/time-picker/src/common/date-utils.d.ts +1 -1
- package/es/components/time-picker/src/common/date-utils.mjs +1 -3
- package/es/components/time-picker/src/common/date-utils.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.vue.d.ts +6 -6
- package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs +6 -8
- package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs.map +1 -1
- package/es/components/time-picker/src/common/props.d.ts +1 -1
- package/es/components/time-picker/src/common/props.mjs +1 -1
- package/es/components/time-picker/src/common/props.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_template_id_4fb3c576_lang.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -1
- package/es/components/time-picker/src/time-picker-com/useTimePicker.d.ts +2 -2
- package/es/components/time-picker/src/time-picker.d.ts +5 -5
- package/es/components/time-select/index.d.ts +4 -4
- package/es/components/time-select/src/time-select.vue.d.ts +2 -2
- package/es/components/time-select/src/time-select.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/time-select/src/time-select.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/time-select/src/time-select.vue_vue_type_template_id_5beb6389_lang.mjs.map +1 -1
- package/es/components/timeline/index.d.ts +4 -4
- package/es/components/timeline/src/item.vue.d.ts +2 -2
- package/es/components/tooltip/src/index.mjs +4 -2
- package/es/components/tooltip/src/index.mjs.map +1 -1
- package/es/components/transfer/index.d.ts +8 -8
- package/es/components/transfer/src/index.vue.d.ts +4 -4
- package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel.vue.d.ts +2 -2
- package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.mjs.map +1 -1
- package/es/components/tree/index.d.ts +2 -2
- package/es/components/tree/src/tree-node.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/tree/src/tree-node.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/tree/src/tree-node.vue_vue_type_template_id_62959aba_lang.mjs.map +1 -1
- package/es/components/tree/src/tree.vue.d.ts +1 -1
- package/es/components/tree-v2/index.d.ts +2 -2
- package/es/components/tree-v2/src/composables/useTree.d.ts +29 -0
- package/es/components/tree-v2/src/tree-node.vue.d.ts +2 -2
- package/es/components/tree-v2/src/tree-node.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/tree-v2/src/tree-node.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/tree-v2/src/tree-node.vue_vue_type_template_id_71d8f826_lang.mjs.map +1 -1
- package/es/components/tree-v2/src/tree.vue.d.ts +2 -2
- package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs +3 -3
- package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.mjs.map +1 -1
- package/es/components/virtual-list/src/builders/build-list.d.ts +1 -1
- package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +1 -1
- package/es/components/virtual-list/src/components/fixed-size-list.d.ts +1 -1
- package/es/components/virtual-list/src/components/scrollbar.d.ts +1 -1
- package/es/defaults.mjs +1 -1
- package/es/defaults.mjs.map +1 -1
- package/es/hooks/index.d.ts +2 -0
- package/es/hooks/index.mjs +3 -1
- package/es/hooks/index.mjs.map +1 -1
- package/es/hooks/use-common-props/index.d.ts +5 -0
- package/es/hooks/use-common-props/index.mjs +31 -0
- package/es/hooks/use-common-props/index.mjs.map +1 -0
- package/es/hooks/use-form-item/index.d.ts +1 -14
- package/es/hooks/use-form-item/index.mjs +3 -24
- package/es/hooks/use-form-item/index.mjs.map +1 -1
- package/es/hooks/use-global-config/index.d.ts +4 -1
- package/es/hooks/use-global-config/index.mjs +8 -6
- package/es/hooks/use-global-config/index.mjs.map +1 -1
- package/es/hooks/use-locale/index.d.ts +6 -5
- package/es/hooks/use-locale/index.mjs +11 -8
- package/es/hooks/use-locale/index.mjs.map +1 -1
- package/es/hooks/use-lockscreen/index.mjs +5 -1
- package/es/hooks/use-lockscreen/index.mjs.map +1 -1
- package/es/hooks/use-prop/index.d.ts +2 -0
- package/es/hooks/use-prop/index.mjs +12 -0
- package/es/hooks/use-prop/index.mjs.map +1 -0
- package/es/index.d.ts +1 -1
- package/es/index.mjs +9 -3
- package/es/index.mjs.map +1 -1
- package/es/locale/index.d.ts +0 -5
- package/es/locale/index.mjs +0 -52
- package/es/locale/index.mjs.map +1 -1
- package/es/locale/lang/ca.mjs +2 -2
- package/es/locale/lang/ca.mjs.map +1 -1
- package/es/locale/lang/en.mjs +2 -2
- package/es/locale/lang/en.mjs.map +1 -1
- package/es/make-installer.d.ts +1 -2
- package/es/make-installer.mjs +2 -4
- package/es/make-installer.mjs.map +1 -1
- package/es/plugin.d.ts +2 -47
- package/es/plugin.mjs +1 -1
- package/es/plugin.mjs.map +1 -1
- package/es/tokens/form.d.ts +1 -1
- package/es/tokens/form.mjs.map +1 -1
- package/es/utils/aria.d.ts +1 -0
- package/es/utils/aria.mjs +2 -1
- package/es/utils/aria.mjs.map +1 -1
- package/es/utils/config.d.ts +1 -1
- package/es/utils/config.mjs.map +1 -1
- package/es/utils/icon.mjs +1 -1
- package/es/utils/icon.mjs.map +1 -1
- package/es/utils/util.d.ts +8 -2
- package/es/utils/util.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/component.d.ts +3 -0
- package/lib/component.js.map +1 -1
- package/lib/components/affix/index.d.ts +48 -0
- package/lib/components/affix/src/affix.vue.d.ts +48 -0
- package/lib/components/alert/index.d.ts +5 -5
- package/lib/components/alert/src/alert.d.ts +1 -1
- package/lib/components/alert/src/alert.vue.d.ts +5 -5
- package/lib/components/autocomplete/index.d.ts +4 -4
- package/lib/components/autocomplete/src/index.vue.d.ts +2 -2
- package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js +2 -2
- package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.js.map +1 -1
- package/lib/components/avatar/index.d.ts +1 -1
- package/lib/components/avatar/src/avatar.vue.d.ts +1 -1
- package/lib/components/backtop/src/backtop.vue_vue_type_script_lang.js +2 -2
- package/lib/components/backtop/src/backtop.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/backtop/src/backtop.vue_vue_type_template_id_63a7fea6_lang.js.map +1 -1
- package/lib/components/button/index.d.ts +18 -18
- package/lib/components/button/src/button-group.d.ts +1 -1
- package/lib/components/button/src/button-group.vue.d.ts +3 -3
- package/lib/components/button/src/button.d.ts +3 -3
- package/lib/components/button/src/button.js +5 -3
- package/lib/components/button/src/button.js.map +1 -1
- package/lib/components/button/src/button.vue.d.ts +12 -12
- package/lib/components/button/src/button.vue_vue_type_script_lang.js +10 -13
- package/lib/components/button/src/button.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/button/src/button.vue_vue_type_template_id_802c5c76_lang.js.map +1 -1
- package/lib/components/calendar/index.d.ts +20 -47
- package/lib/components/calendar/index.js +8 -8
- package/lib/components/calendar/index.js.map +1 -1
- package/lib/components/calendar/src/calendar.d.ts +11 -0
- package/lib/components/calendar/src/calendar.js +24 -0
- package/lib/components/calendar/src/calendar.js.map +1 -0
- package/lib/components/calendar/src/calendar.vue.d.ts +34 -0
- package/lib/components/calendar/src/{index.vue_vue_type_script_lang.js → calendar.vue_vue_type_script_lang.js} +12 -23
- package/lib/components/calendar/src/calendar.vue_vue_type_script_lang.js.map +1 -0
- package/lib/components/calendar/src/{index.vue_vue_type_template_id_819aa44a_lang.js → calendar.vue_vue_type_template_id_76705c76_lang.js} +1 -1
- package/lib/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.js.map +1 -0
- package/lib/components/calendar/src/calendar2.js +12 -0
- package/lib/components/calendar/src/calendar2.js.map +1 -0
- package/lib/components/calendar/src/date-table.d.ts +13 -0
- package/lib/components/calendar/src/date-table.js +23 -7
- package/lib/components/calendar/src/date-table.js.map +1 -1
- package/lib/components/calendar/src/date-table.vue.d.ts +29 -38
- package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js +53 -70
- package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js +1 -1
- package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js.map +1 -1
- package/lib/components/calendar/src/date-table2.js +14 -0
- package/lib/components/calendar/src/date-table2.js.map +1 -0
- package/lib/components/carousel/src/main.vue_vue_type_script_lang.js +3 -3
- package/lib/components/carousel/src/main.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/carousel/src/main.vue_vue_type_template_id_1303d144_lang.js.map +1 -1
- package/lib/components/cascader/index.d.ts +8756 -0
- package/lib/components/cascader/src/index.vue.d.ts +4384 -0
- package/lib/components/cascader/src/index.vue_vue_type_script_lang.js +6 -7
- package/lib/components/cascader/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js.map +1 -1
- package/lib/components/cascader-panel/src/node.vue_vue_type_script_lang.js +4 -4
- package/lib/components/cascader-panel/src/node.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/cascader-panel/src/node.vue_vue_type_template_id_18b09cb2_lang.js.map +1 -1
- package/lib/components/checkbox/index.d.ts +10 -10
- package/lib/components/checkbox/src/checkbox-button.vue.d.ts +3 -3
- package/lib/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.js +4 -2
- package/lib/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/checkbox/src/checkbox-group.vue_vue_type_template_id_9944d4d2_lang.js.map +1 -1
- package/lib/components/checkbox/src/checkbox.type.d.ts +2 -2
- package/lib/components/checkbox/src/checkbox.vue.d.ts +4 -4
- package/lib/components/checkbox/src/useCheckbox.d.ts +2 -3
- package/lib/components/checkbox/src/useCheckbox.js +9 -18
- package/lib/components/checkbox/src/useCheckbox.js.map +1 -1
- package/lib/components/collapse/index.d.ts +4 -4
- package/lib/components/collapse/src/collapse-item.vue.d.ts +2 -2
- package/lib/components/collapse/src/collapse-item.vue_vue_type_script_lang.js +2 -2
- package/lib/components/collapse/src/collapse-item.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/collapse/src/collapse-item.vue_vue_type_template_id_80da782a_lang.js.map +1 -1
- package/lib/components/color-picker/index.d.ts +2 -2
- package/lib/components/color-picker/src/components/alpha-slider.vue.d.ts +30 -0
- package/lib/components/color-picker/src/index.vue.d.ts +1 -1
- package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js +5 -8
- package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.js.map +1 -1
- package/lib/components/config-provider/index.d.ts +10 -9
- package/lib/components/config-provider/src/config-provider.d.ts +3 -4
- package/lib/components/config-provider/src/config-provider.js +9 -10
- package/lib/components/config-provider/src/config-provider.js.map +1 -1
- package/lib/components/config-provider/src/index.d.ts +10 -9
- package/lib/components/date-picker/index.d.ts +10 -10
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +3 -3
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +2 -2
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js +5 -5
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +3 -3
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js +5 -5
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +2 -2
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js +2 -2
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker.d.ts +5 -5
- package/lib/components/descriptions/index.d.ts +1 -1
- package/lib/components/descriptions/src/index.vue.d.ts +1 -1
- package/lib/components/descriptions/src/index.vue_vue_type_script_lang.js +3 -5
- package/lib/components/descriptions/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.js.map +1 -1
- package/lib/components/dialog/index.d.ts +8 -2
- package/lib/components/dialog/src/dialog.d.ts +2 -1
- package/lib/components/dialog/src/dialog.js +4 -0
- package/lib/components/dialog/src/dialog.js.map +1 -1
- package/lib/components/dialog/src/dialog.vue.d.ts +8 -2
- package/lib/components/dialog/src/dialog.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.js +1 -2
- package/lib/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.js.map +1 -1
- package/lib/components/dialog/src/use-dialog.d.ts +2 -0
- package/lib/components/dialog/src/use-dialog.js +2 -0
- package/lib/components/dialog/src/use-dialog.js.map +1 -1
- package/lib/components/divider/index.d.ts +4 -0
- package/lib/components/divider/src/divider.d.ts +2 -0
- package/lib/components/divider/src/divider.js +4 -0
- package/lib/components/divider/src/divider.js.map +1 -1
- package/lib/components/divider/src/divider.vue.d.ts +4 -0
- package/lib/components/divider/src/divider.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.js +3 -2
- package/lib/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.js.map +1 -1
- package/lib/components/drawer/index.d.ts +66 -208
- package/lib/components/drawer/index.js +8 -8
- package/lib/components/drawer/index.js.map +1 -1
- package/lib/components/drawer/src/drawer.d.ts +35 -0
- package/lib/components/drawer/src/drawer.js +33 -0
- package/lib/components/drawer/src/drawer.js.map +1 -0
- package/lib/components/drawer/src/drawer.vue.d.ts +129 -0
- package/lib/components/drawer/src/drawer.vue_vue_type_script_lang.js +41 -0
- package/lib/components/drawer/src/drawer.vue_vue_type_script_lang.js.map +1 -0
- package/lib/components/drawer/src/{index.vue_vue_type_template_id_052d0d8e_lang.js → drawer.vue_vue_type_template_id_e0557736_lang.js} +1 -1
- package/lib/components/drawer/src/drawer.vue_vue_type_template_id_e0557736_lang.js.map +1 -0
- package/lib/components/drawer/src/drawer2.js +12 -0
- package/lib/components/drawer/src/drawer2.js.map +1 -0
- package/lib/components/dropdown/index.d.ts +3 -3
- package/lib/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown.vue.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown.vue_vue_type_script_lang.js +5 -5
- package/lib/components/dropdown/src/dropdown.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.js.map +1 -1
- package/lib/components/dropdown/src/useDropdown.d.ts +0 -1
- package/lib/components/dropdown/src/useDropdown.js +0 -2
- package/lib/components/dropdown/src/useDropdown.js.map +1 -1
- package/lib/components/form/index.d.ts +4 -4
- package/lib/components/form/src/form-item.vue.d.ts +2 -2
- package/lib/components/form/src/form-item.vue_vue_type_script_lang.js +3 -5
- package/lib/components/form/src/form-item.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/form/src/form-item.vue_vue_type_template_id_24eda48b_lang.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js +10 -10
- package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.js.map +1 -1
- package/lib/components/index.js +12 -1
- package/lib/components/index.js.map +1 -1
- package/lib/components/input/index.d.ts +10 -10
- package/lib/components/input/src/input.d.ts +2 -2
- package/lib/components/input/src/input.js +4 -3
- package/lib/components/input/src/input.js.map +1 -1
- package/lib/components/input/src/input.vue.d.ts +10 -10
- package/lib/components/input/src/input.vue_vue_type_script_lang.js +10 -11
- package/lib/components/input/src/input.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/input/src/input.vue_vue_type_template_id_3290dcb6_lang.js.map +1 -1
- package/lib/components/input-number/index.d.ts +23 -23
- package/lib/components/input-number/src/input-number.vue.d.ts +23 -23
- package/lib/components/input-number/src/input-number.vue_vue_type_script_lang.js +10 -9
- package/lib/components/input-number/src/input-number.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.js +2 -1
- package/lib/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.js.map +1 -1
- package/lib/components/link/index.d.ts +2 -2
- package/lib/components/link/src/link.vue.d.ts +2 -2
- package/lib/components/loading/index.d.ts +52 -13
- package/lib/components/loading/index.js +8 -8
- package/lib/components/loading/index.js.map +1 -1
- package/lib/components/loading/src/directive.d.ts +11 -10
- package/lib/components/loading/src/directive.js +45 -26
- package/lib/components/loading/src/directive.js.map +1 -1
- package/lib/components/loading/src/loading.d.ts +24 -0
- package/lib/components/loading/src/loading.js +116 -0
- package/lib/components/loading/src/loading.js.map +1 -0
- package/lib/components/loading/src/service.d.ts +3 -0
- package/lib/components/loading/src/service.js +105 -0
- package/lib/components/loading/src/service.js.map +1 -0
- package/lib/components/loading/src/types.d.ts +23 -0
- package/lib/components/loading/src/types.js +3 -0
- package/lib/components/loading/src/types.js.map +1 -0
- package/lib/components/menu/src/menu.js +2 -2
- package/lib/components/menu/src/menu.js.map +1 -1
- package/lib/components/menu/src/sub-menu.js +2 -2
- package/lib/components/menu/src/sub-menu.js.map +1 -1
- package/lib/components/message/src/message.d.ts +1 -1
- package/lib/components/message/src/message.vue.d.ts +4 -3
- package/lib/components/message/src/message.vue_vue_type_script_lang.js +2 -0
- package/lib/components/message/src/message.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/message/src/message.vue_vue_type_template_id_031967c2_lang.js +51 -54
- package/lib/components/message/src/message.vue_vue_type_template_id_031967c2_lang.js.map +1 -1
- package/lib/components/message-box/src/index.vue.d.ts +1840 -0
- package/lib/components/notification/src/notification.d.ts +1 -1
- package/lib/components/notification/src/notification.vue.d.ts +5 -5
- package/lib/components/page-header/src/page-header.js +2 -2
- package/lib/components/page-header/src/page-header.js.map +1 -1
- package/lib/components/pagination/src/components/next.vue_vue_type_script_lang.js +2 -2
- package/lib/components/pagination/src/components/next.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/pagination/src/components/next.vue_vue_type_template_id_93fbb39e_lang.js.map +1 -1
- package/lib/components/pagination/src/components/pager.vue_vue_type_script_lang.js +4 -4
- package/lib/components/pagination/src/components/pager.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/pagination/src/components/pager.vue_vue_type_template_id_0bfc9916_lang.js.map +1 -1
- package/lib/components/pagination/src/components/prev.vue_vue_type_script_lang.js +2 -2
- package/lib/components/pagination/src/components/prev.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/pagination/src/components/prev.vue_vue_type_template_id_15259d71_lang.js.map +1 -1
- package/lib/components/popconfirm/index.d.ts +2 -2
- package/lib/components/popconfirm/src/popconfirm.js +2 -2
- package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +2 -2
- package/lib/components/popover/index.d.ts +2 -2
- package/lib/components/popover/src/index.vue.d.ts +1 -1
- package/lib/components/popper/index.d.ts +3480 -0
- package/lib/components/popper/src/index.vue.d.ts +1737 -0
- package/lib/components/popper/src/use-popper/index.d.ts +1540 -1
- package/lib/components/progress/index.d.ts +81 -4
- package/lib/components/progress/index.js +7 -8
- package/lib/components/progress/index.js.map +1 -1
- package/lib/components/progress/src/progress.d.ts +22 -0
- package/lib/components/progress/src/progress.js +66 -0
- package/lib/components/progress/src/progress.js.map +1 -0
- package/lib/components/progress/src/progress.vue.d.ts +81 -0
- package/lib/components/progress/src/progress.vue_vue_type_script_lang.js +146 -0
- package/lib/components/progress/src/progress.vue_vue_type_script_lang.js.map +1 -0
- package/lib/components/progress/src/{index.vue_vue_type_template_id_556e268a_lang.js → progress.vue_vue_type_template_id_9158c3b6_lang.js} +1 -1
- package/lib/components/progress/src/progress.vue_vue_type_template_id_9158c3b6_lang.js.map +1 -0
- package/lib/components/progress/src/progress2.js +12 -0
- package/lib/components/progress/src/progress2.js.map +1 -0
- package/lib/components/radio/index.d.ts +36 -40
- package/lib/components/radio/src/radio-button.d.ts +2 -2
- package/lib/components/radio/src/radio-button.vue.d.ts +8 -8
- package/lib/components/radio/src/radio-group.d.ts +2 -2
- package/lib/components/radio/src/radio-group.js +3 -2
- package/lib/components/radio/src/radio-group.js.map +1 -1
- package/lib/components/radio/src/radio-group.vue.d.ts +6 -8
- package/lib/components/radio/src/radio-group.vue_vue_type_script_lang.js +1 -3
- package/lib/components/radio/src/radio-group.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/radio/src/radio-group.vue_vue_type_template_id_53ef81f9_lang.js.map +1 -1
- package/lib/components/radio/src/radio.d.ts +5 -5
- package/lib/components/radio/src/radio.js +5 -6
- package/lib/components/radio/src/radio.js.map +1 -1
- package/lib/components/radio/src/radio.vue.d.ts +8 -8
- package/lib/components/rate/src/rate.js +4 -4
- package/lib/components/rate/src/rate.js.map +1 -1
- package/lib/components/rate/src/rate.vue_vue_type_script_lang.js +3 -3
- package/lib/components/rate/src/rate.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.js.map +1 -1
- package/lib/components/result/index.d.ts +3 -3
- package/lib/components/result/src/result.d.ts +1 -1
- package/lib/components/result/src/result.js +5 -5
- package/lib/components/result/src/result.js.map +1 -1
- package/lib/components/result/src/result.vue.d.ts +3 -3
- package/lib/components/select/index.d.ts +14 -7
- package/lib/components/select/src/select.vue.d.ts +14 -7
- package/lib/components/select/src/select.vue_vue_type_script_lang.js +7 -3
- package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js +6 -6
- package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js.map +1 -1
- package/lib/components/select/src/useSelect.d.ts +76 -0
- package/lib/components/select/src/useSelect.js +2 -2
- package/lib/components/select/src/useSelect.js.map +1 -1
- package/lib/components/select-v2/index.d.ts +14 -14
- package/lib/components/select-v2/src/defaults.js +2 -2
- package/lib/components/select-v2/src/defaults.js.map +1 -1
- package/lib/components/select-v2/src/select.vue.d.ts +7 -7
- package/lib/components/select-v2/src/useSelect.d.ts +1 -1
- package/lib/components/select-v2/src/useSelect.js +9 -10
- package/lib/components/select-v2/src/useSelect.js.map +1 -1
- package/lib/components/skeleton/index.d.ts +6 -6
- package/lib/components/skeleton/src/skeleton-item.d.ts +1 -1
- package/lib/components/skeleton/src/skeleton-item.vue.d.ts +3 -3
- package/lib/components/slider/index.d.ts +307 -0
- package/lib/components/slider/src/index.vue.d.ts +155 -0
- package/lib/components/slider/src/useSlide.d.ts +21 -0
- package/lib/components/steps/index.d.ts +4 -4
- package/lib/components/steps/src/item.vue.d.ts +2 -2
- package/lib/components/steps/src/item.vue_vue_type_script_lang.js +3 -3
- package/lib/components/steps/src/item.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/steps/src/item.vue_vue_type_template_id_6ec47f4b_lang.js.map +1 -1
- package/lib/components/switch/index.d.ts +99 -4
- package/lib/components/switch/index.js +8 -8
- package/lib/components/switch/index.js.map +1 -1
- package/lib/components/switch/src/switch.d.ts +31 -0
- package/lib/components/switch/src/switch.js +92 -0
- package/lib/components/switch/src/switch.js.map +1 -0
- package/lib/components/switch/src/switch.vue.d.ts +98 -0
- package/lib/components/switch/src/{index.vue_vue_type_script_lang.js → switch.vue_vue_type_script_lang.js} +28 -101
- package/lib/components/switch/src/switch.vue_vue_type_script_lang.js.map +1 -0
- package/lib/components/switch/src/{index.vue_vue_type_template_id_ee4fcade_lang.js → switch.vue_vue_type_template_id_538fbc85_lang.js} +1 -1
- package/lib/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.js.map +1 -0
- package/lib/components/switch/src/switch2.js +12 -0
- package/lib/components/switch/src/switch2.js.map +1 -0
- package/lib/components/table/index.d.ts +9 -9
- package/lib/components/table/src/config.js +4 -4
- package/lib/components/table/src/config.js.map +1 -1
- package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js +3 -3
- package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.js.map +1 -1
- package/lib/components/table/src/table/style-helper.d.ts +1 -1
- package/lib/components/table/src/table/style-helper.js +6 -8
- package/lib/components/table/src/table/style-helper.js.map +1 -1
- package/lib/components/table/src/table-column/defaults.d.ts +2 -2
- package/lib/components/table/src/table-column/defaults.js.map +1 -1
- package/lib/components/table/src/table-column/index.d.ts +3 -3
- package/lib/components/table/src/table.vue.d.ts +3 -3
- package/lib/components/table/src/util.js +0 -1
- package/lib/components/table/src/util.js.map +1 -1
- package/lib/components/tabs/index.d.ts +4 -4
- package/lib/components/tabs/src/tab-nav.js +4 -4
- package/lib/components/tabs/src/tab-nav.js.map +1 -1
- package/lib/components/tabs/src/tab-pane.vue.d.ts +2 -2
- package/lib/components/tabs/src/tabs.js +2 -2
- package/lib/components/tabs/src/tabs.js.map +1 -1
- package/lib/components/tag/src/tag.vue_vue_type_script_lang.js +5 -5
- package/lib/components/tag/src/tag.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/tag/src/tag.vue_vue_type_template_id_525996c5_lang.js.map +1 -1
- package/lib/components/time-picker/index.d.ts +10 -10
- package/lib/components/time-picker/src/common/date-utils.d.ts +1 -1
- package/lib/components/time-picker/src/common/date-utils.js +1 -3
- package/lib/components/time-picker/src/common/date-utils.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.vue.d.ts +6 -6
- package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js +6 -8
- package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js.map +1 -1
- package/lib/components/time-picker/src/common/props.d.ts +1 -1
- package/lib/components/time-picker/src/common/props.js +2 -2
- package/lib/components/time-picker/src/common/props.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.js +3 -3
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_template_id_4fb3c576_lang.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -1
- package/lib/components/time-picker/src/time-picker-com/useTimePicker.d.ts +2 -2
- package/lib/components/time-picker/src/time-picker.d.ts +5 -5
- package/lib/components/time-select/index.d.ts +4 -4
- package/lib/components/time-select/src/time-select.vue.d.ts +2 -2
- package/lib/components/time-select/src/time-select.vue_vue_type_script_lang.js +3 -3
- package/lib/components/time-select/src/time-select.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/time-select/src/time-select.vue_vue_type_template_id_5beb6389_lang.js.map +1 -1
- package/lib/components/timeline/index.d.ts +4 -4
- package/lib/components/timeline/src/item.vue.d.ts +2 -2
- package/lib/components/tooltip/src/index.js +4 -2
- package/lib/components/tooltip/src/index.js.map +1 -1
- package/lib/components/transfer/index.d.ts +8 -8
- package/lib/components/transfer/src/index.vue.d.ts +4 -4
- package/lib/components/transfer/src/index.vue_vue_type_script_lang.js +3 -3
- package/lib/components/transfer/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel.vue.d.ts +2 -2
- package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js +3 -3
- package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.js.map +1 -1
- package/lib/components/tree/index.d.ts +2 -2
- package/lib/components/tree/src/tree-node.vue_vue_type_script_lang.js +3 -3
- package/lib/components/tree/src/tree-node.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/tree/src/tree-node.vue_vue_type_template_id_62959aba_lang.js.map +1 -1
- package/lib/components/tree/src/tree.vue.d.ts +1 -1
- package/lib/components/tree-v2/index.d.ts +2 -2
- package/lib/components/tree-v2/src/composables/useTree.d.ts +29 -0
- package/lib/components/tree-v2/src/tree-node.vue.d.ts +2 -2
- package/lib/components/tree-v2/src/tree-node.vue_vue_type_script_lang.js +2 -2
- package/lib/components/tree-v2/src/tree-node.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/tree-v2/src/tree-node.vue_vue_type_template_id_71d8f826_lang.js.map +1 -1
- package/lib/components/tree-v2/src/tree.vue.d.ts +2 -2
- package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js +8 -8
- package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.js.map +1 -1
- package/lib/components/virtual-list/src/builders/build-list.d.ts +1 -1
- package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +1 -1
- package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +1 -1
- package/lib/components/virtual-list/src/components/scrollbar.d.ts +1 -1
- package/lib/defaults.js +1 -1
- package/lib/defaults.js.map +1 -1
- package/lib/hooks/index.d.ts +2 -0
- package/lib/hooks/index.js +46 -41
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/use-common-props/index.d.ts +5 -0
- package/lib/hooks/use-common-props/index.js +37 -0
- package/lib/hooks/use-common-props/index.js.map +1 -0
- package/lib/hooks/use-form-item/index.d.ts +1 -14
- package/lib/hooks/use-form-item/index.js +1 -23
- package/lib/hooks/use-form-item/index.js.map +1 -1
- package/lib/hooks/use-global-config/index.d.ts +4 -1
- package/lib/hooks/use-global-config/index.js +7 -5
- package/lib/hooks/use-global-config/index.js.map +1 -1
- package/lib/hooks/use-locale/index.d.ts +6 -5
- package/lib/hooks/use-locale/index.js +8 -5
- package/lib/hooks/use-locale/index.js.map +1 -1
- package/lib/hooks/use-lockscreen/index.js +4 -0
- package/lib/hooks/use-lockscreen/index.js.map +1 -1
- package/lib/hooks/use-prop/index.d.ts +2 -0
- package/lib/hooks/use-prop/index.js +16 -0
- package/lib/hooks/use-prop/index.js.map +1 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +59 -43
- package/lib/index.js.map +1 -1
- package/lib/locale/index.d.ts +0 -5
- package/lib/locale/index.js +0 -63
- package/lib/locale/index.js.map +1 -1
- package/lib/locale/lang/ca.js +2 -2
- package/lib/locale/lang/ca.js.map +1 -1
- package/lib/locale/lang/en.js +2 -2
- package/lib/locale/lang/en.js.map +1 -1
- package/lib/make-installer.d.ts +1 -2
- package/lib/make-installer.js +2 -4
- package/lib/make-installer.js.map +1 -1
- package/lib/plugin.d.ts +2 -47
- package/lib/plugin.js +1 -1
- package/lib/plugin.js.map +1 -1
- package/lib/tokens/form.d.ts +1 -1
- package/lib/tokens/form.js.map +1 -1
- package/lib/utils/aria.d.ts +1 -0
- package/lib/utils/aria.js +2 -1
- package/lib/utils/aria.js.map +1 -1
- package/lib/utils/config.d.ts +1 -1
- package/lib/utils/config.js.map +1 -1
- package/lib/utils/icon.js +14 -14
- package/lib/utils/icon.js.map +1 -1
- package/lib/utils/util.d.ts +8 -2
- package/lib/utils/util.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +3 -3
- package/tags.json +1 -1
- package/theme-chalk/base.css +1 -1
- package/theme-chalk/el-autocomplete.css +1 -1
- package/theme-chalk/el-cascader-panel.css +1 -1
- package/theme-chalk/el-cascader.css +1 -1
- package/theme-chalk/el-check-tag.css +1 -1
- package/theme-chalk/el-date-picker.css +1 -1
- package/theme-chalk/el-divider.css +1 -1
- package/theme-chalk/el-dropdown.css +1 -1
- package/theme-chalk/el-icon.css +1 -1
- package/theme-chalk/el-image.css +1 -1
- package/theme-chalk/el-input-number.css +1 -1
- package/theme-chalk/el-input.css +1 -1
- package/theme-chalk/el-menu.css +1 -1
- package/theme-chalk/el-option-item.css +1 -1
- package/theme-chalk/el-option.css +1 -1
- package/theme-chalk/el-select-dropdown.css +1 -1
- package/theme-chalk/el-select-v2.css +1 -1
- package/theme-chalk/el-select.css +1 -1
- package/theme-chalk/el-steps.css +1 -1
- package/theme-chalk/el-table.css +1 -1
- package/theme-chalk/el-tabs.css +1 -1
- package/theme-chalk/el-time-picker.css +1 -1
- package/theme-chalk/el-time-select.css +1 -1
- package/theme-chalk/el-transfer.css +1 -1
- package/theme-chalk/el-tree.css +1 -1
- package/theme-chalk/el-upload.css +1 -1
- package/theme-chalk/el-var.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/check-tag.scss +1 -1
- package/theme-chalk/src/common/var.scss +7 -7
- package/theme-chalk/src/date-picker/date-table.scss +1 -1
- package/theme-chalk/src/date-picker/month-table.scss +1 -1
- package/theme-chalk/src/date-picker/time-spinner.scss +1 -1
- package/theme-chalk/src/date-picker/year-table.scss +1 -1
- package/theme-chalk/src/divider.scss +2 -1
- package/theme-chalk/src/dropdown.scss +0 -4
- package/theme-chalk/src/icon.scss +1 -2
- package/theme-chalk/src/image.scss +4 -4
- package/theme-chalk/src/input-number.scss +1 -1
- package/theme-chalk/src/input.scss +5 -1
- package/theme-chalk/src/menu.scss +1 -1
- package/theme-chalk/src/mixins/mixins.scss +1 -1
- package/theme-chalk/src/select-v2.scss +1 -1
- package/theme-chalk/src/select.scss +22 -18
- package/theme-chalk/src/steps.scss +1 -1
- package/theme-chalk/src/table.scss +1 -1
- package/theme-chalk/src/tabs.scss +1 -1
- package/theme-chalk/src/time-select.scss +1 -1
- package/theme-chalk/src/upload.scss +1 -1
- package/theme-chalk/src/var.scss +1 -1
- package/web-types.json +1 -1
- package/es/components/calendar/src/index.mjs +0 -7
- package/es/components/calendar/src/index.mjs.map +0 -1
- package/es/components/calendar/src/index.vue.d.ts +0 -33
- package/es/components/calendar/src/index.vue_vue_type_script_lang.mjs.map +0 -1
- package/es/components/calendar/src/index.vue_vue_type_template_id_819aa44a_lang.mjs.map +0 -1
- package/es/components/drawer/src/index.mjs +0 -7
- package/es/components/drawer/src/index.mjs.map +0 -1
- package/es/components/drawer/src/index.vue.d.ts +0 -138
- package/es/components/drawer/src/index.vue_vue_type_script_lang.mjs +0 -56
- package/es/components/drawer/src/index.vue_vue_type_script_lang.mjs.map +0 -1
- package/es/components/drawer/src/index.vue_vue_type_template_id_052d0d8e_lang.mjs.map +0 -1
- package/es/components/loading/src/createLoadingComponent.d.ts +0 -2
- package/es/components/loading/src/createLoadingComponent.mjs +0 -121
- package/es/components/loading/src/createLoadingComponent.mjs.map +0 -1
- package/es/components/loading/src/index.d.ts +0 -3
- package/es/components/loading/src/index.mjs +0 -106
- package/es/components/loading/src/index.mjs.map +0 -1
- package/es/components/loading/src/loading.type.d.ts +0 -44
- package/es/components/loading/src/loading.type.mjs +0 -2
- package/es/components/loading/src/loading.type.mjs.map +0 -1
- package/es/components/progress/src/index.mjs +0 -7
- package/es/components/progress/src/index.mjs.map +0 -1
- package/es/components/progress/src/index.vue.d.ts +0 -2
- package/es/components/progress/src/index.vue_vue_type_script_lang.mjs.map +0 -1
- package/es/components/progress/src/index.vue_vue_type_template_id_556e268a_lang.mjs.map +0 -1
- package/es/components/switch/src/index.mjs +0 -7
- package/es/components/switch/src/index.mjs.map +0 -1
- package/es/components/switch/src/index.vue.d.ts +0 -2
- package/es/components/switch/src/index.vue_vue_type_script_lang.mjs +0 -190
- package/es/components/switch/src/index.vue_vue_type_script_lang.mjs.map +0 -1
- package/es/components/switch/src/index.vue_vue_type_template_id_ee4fcade_lang.mjs.map +0 -1
- package/lib/components/calendar/src/index.js +0 -12
- package/lib/components/calendar/src/index.js.map +0 -1
- package/lib/components/calendar/src/index.vue.d.ts +0 -33
- package/lib/components/calendar/src/index.vue_vue_type_script_lang.js.map +0 -1
- package/lib/components/calendar/src/index.vue_vue_type_template_id_819aa44a_lang.js.map +0 -1
- package/lib/components/drawer/src/index.js +0 -12
- package/lib/components/drawer/src/index.js.map +0 -1
- package/lib/components/drawer/src/index.vue.d.ts +0 -138
- package/lib/components/drawer/src/index.vue_vue_type_script_lang.js +0 -60
- package/lib/components/drawer/src/index.vue_vue_type_script_lang.js.map +0 -1
- package/lib/components/drawer/src/index.vue_vue_type_template_id_052d0d8e_lang.js.map +0 -1
- package/lib/components/loading/src/createLoadingComponent.d.ts +0 -2
- package/lib/components/loading/src/createLoadingComponent.js +0 -125
- package/lib/components/loading/src/createLoadingComponent.js.map +0 -1
- package/lib/components/loading/src/index.d.ts +0 -3
- package/lib/components/loading/src/index.js +0 -110
- package/lib/components/loading/src/index.js.map +0 -1
- package/lib/components/loading/src/loading.type.d.ts +0 -44
- package/lib/components/loading/src/loading.type.js +0 -3
- package/lib/components/loading/src/loading.type.js.map +0 -1
- package/lib/components/progress/src/index.js +0 -12
- package/lib/components/progress/src/index.js.map +0 -1
- package/lib/components/progress/src/index.vue.d.ts +0 -2
- package/lib/components/progress/src/index.vue_vue_type_script_lang.js +0 -213
- package/lib/components/progress/src/index.vue_vue_type_script_lang.js.map +0 -1
- package/lib/components/progress/src/index.vue_vue_type_template_id_556e268a_lang.js.map +0 -1
- package/lib/components/switch/src/index.js +0 -12
- package/lib/components/switch/src/index.js.map +0 -1
- package/lib/components/switch/src/index.vue.d.ts +0 -2
- package/lib/components/switch/src/index.vue_vue_type_script_lang.js.map +0 -1
- package/lib/components/switch/src/index.vue_vue_type_template_id_ee4fcade_lang.js.map +0 -1
|
@@ -64,7 +64,7 @@ declare const _TimePicker: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
64
64
|
default: () => {};
|
|
65
65
|
};
|
|
66
66
|
modelValue: {
|
|
67
|
-
type: import("vue").PropType<string | Date | Date[]>;
|
|
67
|
+
type: import("vue").PropType<string | Date | (number | Date)[]>;
|
|
68
68
|
default: string;
|
|
69
69
|
};
|
|
70
70
|
rangeSeparator: {
|
|
@@ -141,14 +141,14 @@ declare const _TimePicker: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
141
141
|
validateEvent?: unknown;
|
|
142
142
|
unlinkPanels?: unknown;
|
|
143
143
|
} & {
|
|
144
|
-
placeholder: string;
|
|
145
144
|
type: string;
|
|
146
145
|
disabled: boolean;
|
|
147
|
-
modelValue: string | Date | Date[];
|
|
148
146
|
name: string | unknown[];
|
|
147
|
+
modelValue: string | Date | (number | Date)[];
|
|
149
148
|
editable: boolean;
|
|
150
149
|
popperClass: string;
|
|
151
150
|
popperOptions: Partial<import("@popperjs/core").Options>;
|
|
151
|
+
placeholder: string;
|
|
152
152
|
readonly: boolean;
|
|
153
153
|
clearable: boolean;
|
|
154
154
|
prefixIcon: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
|
|
@@ -175,14 +175,14 @@ declare const _TimePicker: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
175
175
|
}> & {
|
|
176
176
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
177
177
|
}, {
|
|
178
|
-
placeholder: string;
|
|
179
178
|
type: string;
|
|
180
179
|
disabled: boolean;
|
|
181
|
-
modelValue: string | Date | Date[];
|
|
182
180
|
name: string | unknown[];
|
|
181
|
+
modelValue: string | Date | (number | Date)[];
|
|
183
182
|
editable: boolean;
|
|
184
183
|
popperClass: string;
|
|
185
184
|
popperOptions: Partial<import("@popperjs/core").Options>;
|
|
185
|
+
placeholder: string;
|
|
186
186
|
readonly: boolean;
|
|
187
187
|
clearable: boolean;
|
|
188
188
|
prefixIcon: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
|
|
@@ -256,7 +256,7 @@ export declare const ElTimePicker: SFCWithInstall<import("vue").DefineComponent<
|
|
|
256
256
|
default: () => {};
|
|
257
257
|
};
|
|
258
258
|
modelValue: {
|
|
259
|
-
type: import("vue").PropType<string | Date | Date[]>;
|
|
259
|
+
type: import("vue").PropType<string | Date | (number | Date)[]>;
|
|
260
260
|
default: string;
|
|
261
261
|
};
|
|
262
262
|
rangeSeparator: {
|
|
@@ -333,14 +333,14 @@ export declare const ElTimePicker: SFCWithInstall<import("vue").DefineComponent<
|
|
|
333
333
|
validateEvent?: unknown;
|
|
334
334
|
unlinkPanels?: unknown;
|
|
335
335
|
} & {
|
|
336
|
-
placeholder: string;
|
|
337
336
|
type: string;
|
|
338
337
|
disabled: boolean;
|
|
339
|
-
modelValue: string | Date | Date[];
|
|
340
338
|
name: string | unknown[];
|
|
339
|
+
modelValue: string | Date | (number | Date)[];
|
|
341
340
|
editable: boolean;
|
|
342
341
|
popperClass: string;
|
|
343
342
|
popperOptions: Partial<import("@popperjs/core").Options>;
|
|
343
|
+
placeholder: string;
|
|
344
344
|
readonly: boolean;
|
|
345
345
|
clearable: boolean;
|
|
346
346
|
prefixIcon: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
|
|
@@ -367,14 +367,14 @@ export declare const ElTimePicker: SFCWithInstall<import("vue").DefineComponent<
|
|
|
367
367
|
}> & {
|
|
368
368
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
369
369
|
}, {
|
|
370
|
-
placeholder: string;
|
|
371
370
|
type: string;
|
|
372
371
|
disabled: boolean;
|
|
373
|
-
modelValue: string | Date | Date[];
|
|
374
372
|
name: string | unknown[];
|
|
373
|
+
modelValue: string | Date | (number | Date)[];
|
|
375
374
|
editable: boolean;
|
|
376
375
|
popperClass: string;
|
|
377
376
|
popperOptions: Partial<import("@popperjs/core").Options>;
|
|
377
|
+
placeholder: string;
|
|
378
378
|
readonly: boolean;
|
|
379
379
|
clearable: boolean;
|
|
380
380
|
prefixIcon: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
const rangeArr = (n) =>
|
|
2
|
-
return Array.from(Array(n).keys());
|
|
3
|
-
};
|
|
1
|
+
const rangeArr = (n) => Array.from(Array(n).keys());
|
|
4
2
|
const extractDateFormat = (format) => {
|
|
5
3
|
return format.replace(/\W?m{1,2}|\W?ZZ/g, "").replace(/\W?h{1,2}|\W?s{1,3}|\W?a/gi, "").trim();
|
|
6
4
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-utils.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/date-utils.ts"],"sourcesContent":["export const rangeArr = (n) =>
|
|
1
|
+
{"version":3,"file":"date-utils.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/date-utils.ts"],"sourcesContent":["export const rangeArr = (n: number) => Array.from(Array(n).keys())\n\nexport const extractDateFormat = (format: string) => {\n return format\n .replace(/\\W?m{1,2}|\\W?ZZ/g, '')\n .replace(/\\W?h{1,2}|\\W?s{1,3}|\\W?a/gi, '')\n .trim()\n}\n\nexport const extractTimeFormat = (format: string) => {\n return format\n .replace(/\\W?D{1,2}|\\W?Do|\\W?d{1,4}|\\W?M{1,4}|\\W?Y{2,4}/g, '')\n .trim()\n}\n"],"names":[],"mappings":"MAAa,WAAW,CAAC,MAAc,MAAM,KAAK,MAAM,GAAG;MAE9C,oBAAoB,CAAC,WAAmB;AACnD,SAAO,OACJ,QAAQ,oBAAoB,IAC5B,QAAQ,8BAA8B,IACtC;AAAA;MAGQ,oBAAoB,CAAC,WAAmB;AACnD,SAAO,OACJ,QAAQ,kDAAkD,IAC1D;AAAA;;;;"}
|
|
@@ -68,7 +68,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
68
68
|
default: () => {};
|
|
69
69
|
};
|
|
70
70
|
modelValue: {
|
|
71
|
-
type: import("vue").PropType<string | Date | Date[]>;
|
|
71
|
+
type: import("vue").PropType<string | Date | (number | Date)[]>;
|
|
72
72
|
default: string;
|
|
73
73
|
};
|
|
74
74
|
rangeSeparator: {
|
|
@@ -128,7 +128,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
128
128
|
handleKeydown: (event: any) => void;
|
|
129
129
|
popperPaneRef: import("vue").ComputedRef<any>;
|
|
130
130
|
onClickOutside: () => void;
|
|
131
|
-
pickerSize: import("vue").ComputedRef<
|
|
131
|
+
pickerSize: import("vue").ComputedRef<"" | import("../../../../utils/types").ComponentSize>;
|
|
132
132
|
isRangeInput: import("vue").ComputedRef<boolean>;
|
|
133
133
|
onMouseLeave: () => void;
|
|
134
134
|
onMouseEnter: () => void;
|
|
@@ -179,14 +179,14 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
179
179
|
validateEvent?: unknown;
|
|
180
180
|
unlinkPanels?: unknown;
|
|
181
181
|
} & {
|
|
182
|
-
placeholder: string;
|
|
183
182
|
type: string;
|
|
184
183
|
disabled: boolean;
|
|
185
|
-
modelValue: string | Date | Date[];
|
|
186
184
|
name: string | unknown[];
|
|
185
|
+
modelValue: string | Date | (number | Date)[];
|
|
187
186
|
editable: boolean;
|
|
188
187
|
popperClass: string;
|
|
189
188
|
popperOptions: Partial<Options>;
|
|
189
|
+
placeholder: string;
|
|
190
190
|
readonly: boolean;
|
|
191
191
|
clearable: boolean;
|
|
192
192
|
prefixIcon: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
|
|
@@ -217,14 +217,14 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
217
217
|
onFocus?: ((...args: any[]) => any) | undefined;
|
|
218
218
|
"onCalendar-change"?: ((...args: any[]) => any) | undefined;
|
|
219
219
|
}, {
|
|
220
|
-
placeholder: string;
|
|
221
220
|
type: string;
|
|
222
221
|
disabled: boolean;
|
|
223
|
-
modelValue: string | Date | Date[];
|
|
224
222
|
name: string | unknown[];
|
|
223
|
+
modelValue: string | Date | (number | Date)[];
|
|
225
224
|
editable: boolean;
|
|
226
225
|
popperClass: string;
|
|
227
226
|
popperOptions: Partial<Options>;
|
|
227
|
+
placeholder: string;
|
|
228
228
|
readonly: boolean;
|
|
229
229
|
clearable: boolean;
|
|
230
230
|
prefixIcon: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>;
|
|
@@ -8,12 +8,13 @@ import { ElInput } from '../../../input/index.mjs';
|
|
|
8
8
|
import { ElIcon } from '../../../icon/index.mjs';
|
|
9
9
|
import _Popper from '../../../popper/index.mjs';
|
|
10
10
|
import { EVENT_CODE } from '../../../../utils/aria.mjs';
|
|
11
|
-
import { isEmpty
|
|
12
|
-
import { Clock, Calendar } from '@element-plus/icons';
|
|
11
|
+
import { isEmpty } from '../../../../utils/util.mjs';
|
|
12
|
+
import { Clock, Calendar } from '@element-plus/icons-vue';
|
|
13
13
|
import { timePickerDefaultProps } from './props.mjs';
|
|
14
14
|
import ClickOutside from '../../../../directives/click-outside/index.mjs';
|
|
15
15
|
import { useLocale } from '../../../../hooks/use-locale/index.mjs';
|
|
16
16
|
import { elFormKey, elFormItemKey } from '../../../../tokens/form.mjs';
|
|
17
|
+
import { useSize } from '../../../../hooks/use-common-props/index.mjs';
|
|
17
18
|
import { Effect } from '../../../popper/src/use-popper/defaults.mjs';
|
|
18
19
|
|
|
19
20
|
const dateEquals = function(a, b) {
|
|
@@ -59,7 +60,6 @@ var script = defineComponent({
|
|
|
59
60
|
props: timePickerDefaultProps,
|
|
60
61
|
emits: ["update:modelValue", "change", "focus", "blur", "calendar-change"],
|
|
61
62
|
setup(props, ctx) {
|
|
62
|
-
const ELEMENT = useGlobalConfig();
|
|
63
63
|
const { lang } = useLocale();
|
|
64
64
|
const elForm = inject(elFormKey, {});
|
|
65
65
|
const elFormItem = inject(elFormItemKey, {});
|
|
@@ -222,9 +222,7 @@ var script = defineComponent({
|
|
|
222
222
|
const isRangeInput = computed(() => {
|
|
223
223
|
return props.type.indexOf("range") > -1;
|
|
224
224
|
});
|
|
225
|
-
const pickerSize =
|
|
226
|
-
return props.size || elFormItem.size || ELEMENT.size;
|
|
227
|
-
});
|
|
225
|
+
const pickerSize = useSize();
|
|
228
226
|
const popperPaneRef = computed(() => {
|
|
229
227
|
var _a;
|
|
230
228
|
return (_a = refPopper.value) == null ? void 0 : _a.popperRef;
|
|
@@ -289,8 +287,8 @@ var script = defineComponent({
|
|
|
289
287
|
}
|
|
290
288
|
return;
|
|
291
289
|
}
|
|
292
|
-
if (code === EVENT_CODE.enter) {
|
|
293
|
-
if (userInput.value === "" || isValidValue(parseUserInputToDayjs(displayValue.value))) {
|
|
290
|
+
if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {
|
|
291
|
+
if (userInput.value === null || userInput.value === "" || isValidValue(parseUserInputToDayjs(displayValue.value))) {
|
|
294
292
|
handleChange();
|
|
295
293
|
pickerVisible.value = false;
|
|
296
294
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"picker.vue_vue_type_script_lang.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-popper\n ref=\"refPopper\"\n v-model:visible=\"pickerVisible\"\n manual-mode\n :effect=\"Effect.LIGHT\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n :popper-class=\"`el-picker__popper ${popperClass}`\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n transition=\"el-zoom-in-top\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n append-to-body\n @before-enter=\"pickerActualVisible = true\"\n @after-leave=\"pickerActualVisible = false\"\n >\n <template #trigger>\n <el-input\n v-if=\"!isRangeInput\"\n v-clickoutside:[popperPaneRef]=\"onClickOutside\"\n :model-value=\"displayValue\"\n :name=\"name\"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n class=\"el-date-editor\"\n :class=\"'el-date-editor--' + type\"\n :readonly=\"!editable || readonly || isDatesPicker || type === 'week'\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @keydown=\"handleKeydown\"\n @change=\"handleChange\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-input__icon clear-icon\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <div\n v-else\n v-clickoutside:[popperPaneRef]=\"onClickOutside\"\n class=\"el-date-editor el-range-editor el-input__inner\"\n :class=\"[\n 'el-date-editor--' + type,\n pickerSize ? `el-range-editor--${pickerSize}` : '',\n pickerDisabled ? 'is-disabled' : '',\n pickerVisible ? 'is-active' : '',\n ]\"\n @click=\"handleFocus\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @keydown=\"handleKeydown\"\n >\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon el-range__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n <input\n autocomplete=\"off\"\n :name=\"name && name[0]\"\n :placeholder=\"startPlaceholder\"\n :value=\"displayValue && displayValue[0]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @input=\"handleStartInput\"\n @change=\"handleStartChange\"\n @focus=\"handleFocus\"\n />\n <slot name=\"range-separator\">\n <span class=\"el-range-separator\">{{ rangeSeparator }}</span>\n </slot>\n <input\n autocomplete=\"off\"\n :name=\"name && name[1]\"\n :placeholder=\"endPlaceholder\"\n :value=\"displayValue && displayValue[1]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @focus=\"handleFocus\"\n @input=\"handleEndInput\"\n @change=\"handleEndChange\"\n />\n <el-icon\n v-if=\"clearIcon\"\n class=\"el-input__icon el-range__close-icon\"\n :class=\"{\n 'el-range__close-icon--hidden': !showClose,\n }\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </div>\n </template>\n <template #default>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @mousedown.stop\n ></slot>\n </template>\n </el-popper>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n computed,\n nextTick,\n inject,\n watch,\n provide,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport isEqual from 'lodash/isEqual'\nimport { useLocale } from '@element-plus/hooks'\nimport { ClickOutside } from '@element-plus/directives'\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElPopper, { Effect } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { useGlobalConfig, isEmpty } from '@element-plus/utils/util'\nimport { Clock, Calendar } from '@element-plus/icons'\nimport { timePickerDefaultProps } from './props'\n\nimport type { Dayjs } from 'dayjs'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type { Options } from '@popperjs/core'\n\ninterface PickerOptions {\n isValidValue: (date: Dayjs) => boolean\n handleKeydown: (event: KeyboardEvent) => void\n parseUserInput: (value: Dayjs) => dayjs.Dayjs\n formatToString: (value: Dayjs) => string | string[]\n getRangeAvailableTime: (date: Dayjs) => dayjs.Dayjs\n getDefaultValue: () => Dayjs\n panelReady: boolean\n handleClear: () => void\n}\n\n// Date object and string\nconst dateEquals = function (a: Date | any, b: Date | any) {\n const aIsDate = a instanceof Date\n const bIsDate = b instanceof Date\n if (aIsDate && bIsDate) {\n return a.getTime() === b.getTime()\n }\n if (!aIsDate && !bIsDate) {\n return a === b\n }\n return false\n}\n\nconst valueEquals = function (a: Array<Date> | any, b: Array<Date> | any) {\n const aIsArray = a instanceof Array\n const bIsArray = b instanceof Array\n if (aIsArray && bIsArray) {\n if (a.length !== b.length) {\n return false\n }\n return (a as Array<Date>).every((item, index) => dateEquals(item, b[index]))\n }\n if (!aIsArray && !bIsArray) {\n return dateEquals(a, b)\n }\n return false\n}\n\nconst parser = function (\n date: Date | string,\n format: string,\n lang: string\n): Dayjs {\n const day = isEmpty(format)\n ? dayjs(date).locale(lang)\n : dayjs(date, format).locale(lang)\n return day.isValid() ? day : undefined\n}\n\nconst formatter = function (date: Date, format: string, lang: string) {\n return isEmpty(format) ? date : dayjs(date).locale(lang).format(format)\n}\n\nexport default defineComponent({\n name: 'Picker',\n components: {\n ElInput,\n ElPopper,\n ElIcon,\n },\n directives: { clickoutside: ClickOutside },\n props: timePickerDefaultProps,\n emits: ['update:modelValue', 'change', 'focus', 'blur', 'calendar-change'],\n setup(props, ctx) {\n const ELEMENT = useGlobalConfig()\n const { lang } = useLocale()\n\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n const elPopperOptions = inject('ElPopperOptions', {} as Options)\n\n const refPopper = ref(null)\n const pickerVisible = ref(false)\n const pickerActualVisible = ref(false)\n const valueOnOpen = ref(null)\n\n watch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n ctx.emit('blur')\n blurInput()\n props.validateEvent && elFormItem.validate?.('blur')\n } else {\n valueOnOpen.value = props.modelValue\n }\n })\n const emitChange = (val, isClear?: boolean) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n ctx.emit('change', val)\n props.validateEvent && elFormItem.validate?.('change')\n }\n }\n const emitInput = (val) => {\n if (!valueEquals(props.modelValue, val)) {\n let formatValue\n if (Array.isArray(val)) {\n formatValue = val.map((_) =>\n formatter(_, props.valueFormat, lang.value)\n )\n } else if (val) {\n formatValue = formatter(val, props.valueFormat, lang.value)\n }\n ctx.emit('update:modelValue', val ? formatValue : val, lang.value)\n }\n }\n const refInput = computed(() => {\n if (refPopper.value.triggerRef) {\n const _r = isRangeInput.value\n ? refPopper.value.triggerRef\n : refPopper.value.triggerRef.$el\n return [].slice.call(_r.querySelectorAll('input'))\n }\n return []\n })\n const setSelectionRange = (start, end, pos) => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n }\n const onPick = (date: any = '', visible = false) => {\n pickerVisible.value = visible\n let result\n if (Array.isArray(date)) {\n result = date.map((_) => _.toDate())\n } else {\n // clear btn emit null\n result = date ? date.toDate() : date\n }\n userInput.value = null\n emitInput(result)\n }\n const handleFocus = (e) => {\n if (props.readonly || pickerDisabled.value || pickerVisible.value) return\n pickerVisible.value = true\n ctx.emit('focus', e)\n }\n\n const handleBlur = () => {\n pickerVisible.value = false\n blurInput()\n }\n\n const pickerDisabled = computed(() => {\n return props.disabled || elForm.disabled\n })\n\n const parsedValue = computed(() => {\n let result\n if (valueIsEmpty.value) {\n if (pickerOptions.value.getDefaultValue) {\n result = pickerOptions.value.getDefaultValue()\n }\n } else {\n if (Array.isArray(props.modelValue)) {\n result = props.modelValue.map((_) =>\n parser(_, props.valueFormat, lang.value)\n )\n } else {\n result = parser(props.modelValue, props.valueFormat, lang.value)\n }\n }\n\n if (pickerOptions.value.getRangeAvailableTime) {\n const availableResult =\n pickerOptions.value.getRangeAvailableTime(result)\n if (!isEqual(availableResult, result)) {\n result = availableResult\n emitInput(\n Array.isArray(result)\n ? result.map((_) => _.toDate())\n : result.toDate()\n )\n }\n }\n if (Array.isArray(result) && result.some((_) => !_)) {\n result = []\n }\n return result\n })\n\n const displayValue = computed(() => {\n if (!pickerOptions.value.panelReady) return\n const formattedValue = formatDayjsToString(parsedValue.value)\n if (Array.isArray(userInput.value)) {\n return [\n userInput.value[0] || (formattedValue && formattedValue[0]) || '',\n userInput.value[1] || (formattedValue && formattedValue[1]) || '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (!isTimePicker.value && valueIsEmpty.value) return\n if (!pickerVisible.value && valueIsEmpty.value) return\n if (formattedValue) {\n return isDatesPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n })\n\n const isTimeLikePicker = computed(() => props.type.includes('time'))\n\n const isTimePicker = computed(() => props.type.startsWith('time'))\n\n const isDatesPicker = computed(() => props.type === 'dates')\n\n const triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n )\n\n const showClose = ref(false)\n\n const onClearIconClick = (event) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClose.value) {\n event.stopPropagation()\n emitInput(null)\n emitChange(null, true)\n showClose.value = false\n pickerVisible.value = false\n pickerOptions.value.handleClear && pickerOptions.value.handleClear()\n }\n }\n const valueIsEmpty = computed(() => {\n return (\n !props.modelValue ||\n (Array.isArray(props.modelValue) && !props.modelValue.length)\n )\n })\n const onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n showClose.value = true\n }\n }\n const onMouseLeave = () => {\n showClose.value = false\n }\n const isRangeInput = computed(() => {\n return props.type.indexOf('range') > -1\n })\n\n const pickerSize = computed(() => {\n return props.size || elFormItem.size || ELEMENT.size\n })\n\n const popperPaneRef = computed(() => {\n return refPopper.value?.popperRef\n })\n\n const onClickOutside = () => {\n if (!pickerVisible.value) return\n pickerVisible.value = false\n }\n\n const userInput = ref(null)\n\n const handleChange = () => {\n if (userInput.value) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(\n Array.isArray(value)\n ? value.map((_) => _.toDate())\n : value.toDate()\n )\n userInput.value = null\n }\n }\n }\n if (userInput.value === '') {\n emitInput(null)\n emitChange(null)\n userInput.value = null\n }\n }\n\n const blurInput = () => {\n refInput.value.forEach((input) => input.blur())\n }\n\n const parseUserInputToDayjs = (value) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput(value)\n }\n\n const formatDayjsToString = (value) => {\n if (!value) return null\n return pickerOptions.value.formatToString(value)\n }\n\n const isValidValue = (value) => {\n return pickerOptions.value.isValidValue(value)\n }\n\n const handleKeydown = (event) => {\n const code = event.code\n\n if (code === EVENT_CODE.esc) {\n pickerVisible.value = false\n event.stopPropagation()\n return\n }\n\n if (code === EVENT_CODE.tab) {\n if (!isRangeInput.value) {\n handleChange()\n pickerVisible.value = false\n event.stopPropagation()\n } else {\n // user may change focus between two input\n setTimeout(() => {\n if (refInput.value.indexOf(document.activeElement) === -1) {\n pickerVisible.value = false\n blurInput()\n }\n }, 0)\n }\n return\n }\n\n if (code === EVENT_CODE.enter) {\n if (\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value))\n ) {\n handleChange()\n pickerVisible.value = false\n }\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n\n if (pickerOptions.value.handleKeydown) {\n pickerOptions.value.handleKeydown(event)\n }\n }\n const onUserInput = (e) => {\n userInput.value = e\n }\n\n const handleStartInput = (event) => {\n if (userInput.value) {\n userInput.value = [event.target.value, userInput.value[1]]\n } else {\n userInput.value = [event.target.value, null]\n }\n }\n\n const handleEndInput = (event) => {\n if (userInput.value) {\n userInput.value = [userInput.value[0], event.target.value]\n } else {\n userInput.value = [null, event.target.value]\n }\n }\n\n const handleStartChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[0])\n if (value && value.isValid()) {\n userInput.value = [formatDayjsToString(value), displayValue.value[1]]\n const newValue = [value, parsedValue.value && parsedValue.value[1]]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const handleEndChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[1])\n if (value && value.isValid()) {\n userInput.value = [displayValue.value[0], formatDayjsToString(value)]\n const newValue = [parsedValue.value && parsedValue.value[0], value]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const pickerOptions = ref<Partial<PickerOptions>>({})\n const onSetPickerOption = <T extends keyof PickerOptions>(\n e: [T, PickerOptions[T]]\n ) => {\n pickerOptions.value[e[0]] = e[1]\n pickerOptions.value.panelReady = true\n }\n\n const onCalendarChange = (e) => {\n ctx.emit('calendar-change', e)\n }\n\n provide('EP_PICKER_BASE', {\n props,\n })\n\n return {\n Effect,\n\n // injected popper options\n elPopperOptions,\n\n isDatesPicker,\n handleEndChange,\n handleStartChange,\n handleStartInput,\n handleEndInput,\n onUserInput,\n handleChange,\n handleKeydown,\n popperPaneRef,\n onClickOutside,\n pickerSize,\n isRangeInput,\n onMouseLeave,\n onMouseEnter,\n onClearIconClick,\n showClose,\n triggerIcon,\n onPick,\n handleFocus,\n handleBlur,\n pickerVisible,\n pickerActualVisible,\n displayValue,\n parsedValue,\n setSelectionRange,\n refPopper,\n pickerDisabled,\n onSetPickerOption,\n onCalendarChange,\n }\n },\n})\n</script>\n"],"names":["ElPopper"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"picker.vue_vue_type_script_lang.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-popper\n ref=\"refPopper\"\n v-model:visible=\"pickerVisible\"\n manual-mode\n :effect=\"Effect.LIGHT\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n :popper-class=\"`el-picker__popper ${popperClass}`\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n transition=\"el-zoom-in-top\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n append-to-body\n @before-enter=\"pickerActualVisible = true\"\n @after-leave=\"pickerActualVisible = false\"\n >\n <template #trigger>\n <el-input\n v-if=\"!isRangeInput\"\n v-clickoutside:[popperPaneRef]=\"onClickOutside\"\n :model-value=\"displayValue\"\n :name=\"name\"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n class=\"el-date-editor\"\n :class=\"'el-date-editor--' + type\"\n :readonly=\"!editable || readonly || isDatesPicker || type === 'week'\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @keydown=\"handleKeydown\"\n @change=\"handleChange\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-input__icon clear-icon\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <div\n v-else\n v-clickoutside:[popperPaneRef]=\"onClickOutside\"\n class=\"el-date-editor el-range-editor el-input__inner\"\n :class=\"[\n 'el-date-editor--' + type,\n pickerSize ? `el-range-editor--${pickerSize}` : '',\n pickerDisabled ? 'is-disabled' : '',\n pickerVisible ? 'is-active' : '',\n ]\"\n @click=\"handleFocus\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @keydown=\"handleKeydown\"\n >\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon el-range__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n <input\n autocomplete=\"off\"\n :name=\"name && name[0]\"\n :placeholder=\"startPlaceholder\"\n :value=\"displayValue && displayValue[0]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @input=\"handleStartInput\"\n @change=\"handleStartChange\"\n @focus=\"handleFocus\"\n />\n <slot name=\"range-separator\">\n <span class=\"el-range-separator\">{{ rangeSeparator }}</span>\n </slot>\n <input\n autocomplete=\"off\"\n :name=\"name && name[1]\"\n :placeholder=\"endPlaceholder\"\n :value=\"displayValue && displayValue[1]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @focus=\"handleFocus\"\n @input=\"handleEndInput\"\n @change=\"handleEndChange\"\n />\n <el-icon\n v-if=\"clearIcon\"\n class=\"el-input__icon el-range__close-icon\"\n :class=\"{\n 'el-range__close-icon--hidden': !showClose,\n }\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </div>\n </template>\n <template #default>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @mousedown.stop\n ></slot>\n </template>\n </el-popper>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n computed,\n nextTick,\n inject,\n watch,\n provide,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport isEqual from 'lodash/isEqual'\nimport { useLocale, useSize } from '@element-plus/hooks'\nimport { ClickOutside } from '@element-plus/directives'\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElPopper, { Effect } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { isEmpty } from '@element-plus/utils/util'\nimport { Clock, Calendar } from '@element-plus/icons-vue'\nimport { timePickerDefaultProps } from './props'\n\nimport type { Dayjs } from 'dayjs'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type { Options } from '@popperjs/core'\n\ninterface PickerOptions {\n isValidValue: (date: Dayjs) => boolean\n handleKeydown: (event: KeyboardEvent) => void\n parseUserInput: (value: Dayjs) => dayjs.Dayjs\n formatToString: (value: Dayjs) => string | string[]\n getRangeAvailableTime: (date: Dayjs) => dayjs.Dayjs\n getDefaultValue: () => Dayjs\n panelReady: boolean\n handleClear: () => void\n}\n\n// Date object and string\nconst dateEquals = function (a: Date | any, b: Date | any) {\n const aIsDate = a instanceof Date\n const bIsDate = b instanceof Date\n if (aIsDate && bIsDate) {\n return a.getTime() === b.getTime()\n }\n if (!aIsDate && !bIsDate) {\n return a === b\n }\n return false\n}\n\nconst valueEquals = function (a: Array<Date> | any, b: Array<Date> | any) {\n const aIsArray = a instanceof Array\n const bIsArray = b instanceof Array\n if (aIsArray && bIsArray) {\n if (a.length !== b.length) {\n return false\n }\n return (a as Array<Date>).every((item, index) => dateEquals(item, b[index]))\n }\n if (!aIsArray && !bIsArray) {\n return dateEquals(a, b)\n }\n return false\n}\n\nconst parser = function (\n date: Date | string,\n format: string,\n lang: string\n): Dayjs {\n const day = isEmpty(format)\n ? dayjs(date).locale(lang)\n : dayjs(date, format).locale(lang)\n return day.isValid() ? day : undefined\n}\n\nconst formatter = function (date: number | Date, format: string, lang: string) {\n return isEmpty(format) ? date : dayjs(date).locale(lang).format(format)\n}\n\nexport default defineComponent({\n name: 'Picker',\n components: {\n ElInput,\n ElPopper,\n ElIcon,\n },\n directives: { clickoutside: ClickOutside },\n props: timePickerDefaultProps,\n emits: ['update:modelValue', 'change', 'focus', 'blur', 'calendar-change'],\n setup(props, ctx) {\n const { lang } = useLocale()\n\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n const elPopperOptions = inject('ElPopperOptions', {} as Options)\n\n const refPopper = ref(null)\n const pickerVisible = ref(false)\n const pickerActualVisible = ref(false)\n const valueOnOpen = ref(null)\n\n watch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n ctx.emit('blur')\n blurInput()\n props.validateEvent && elFormItem.validate?.('blur')\n } else {\n valueOnOpen.value = props.modelValue\n }\n })\n const emitChange = (val, isClear?: boolean) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n ctx.emit('change', val)\n props.validateEvent && elFormItem.validate?.('change')\n }\n }\n const emitInput = (val) => {\n if (!valueEquals(props.modelValue, val)) {\n let formatValue\n if (Array.isArray(val)) {\n formatValue = val.map((_) =>\n formatter(_, props.valueFormat, lang.value)\n )\n } else if (val) {\n formatValue = formatter(val, props.valueFormat, lang.value)\n }\n ctx.emit('update:modelValue', val ? formatValue : val, lang.value)\n }\n }\n const refInput = computed(() => {\n if (refPopper.value.triggerRef) {\n const _r = isRangeInput.value\n ? refPopper.value.triggerRef\n : refPopper.value.triggerRef.$el\n return [].slice.call(_r.querySelectorAll('input'))\n }\n return []\n })\n const setSelectionRange = (start, end, pos) => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n }\n const onPick = (date: any = '', visible = false) => {\n pickerVisible.value = visible\n let result\n if (Array.isArray(date)) {\n result = date.map((_) => _.toDate())\n } else {\n // clear btn emit null\n result = date ? date.toDate() : date\n }\n userInput.value = null\n emitInput(result)\n }\n const handleFocus = (e) => {\n if (props.readonly || pickerDisabled.value || pickerVisible.value) return\n pickerVisible.value = true\n ctx.emit('focus', e)\n }\n\n const handleBlur = () => {\n pickerVisible.value = false\n blurInput()\n }\n\n const pickerDisabled = computed(() => {\n return props.disabled || elForm.disabled\n })\n\n const parsedValue = computed(() => {\n let result\n if (valueIsEmpty.value) {\n if (pickerOptions.value.getDefaultValue) {\n result = pickerOptions.value.getDefaultValue()\n }\n } else {\n if (Array.isArray(props.modelValue)) {\n result = props.modelValue.map((_) =>\n parser(_, props.valueFormat, lang.value)\n )\n } else {\n result = parser(props.modelValue, props.valueFormat, lang.value)\n }\n }\n\n if (pickerOptions.value.getRangeAvailableTime) {\n const availableResult =\n pickerOptions.value.getRangeAvailableTime(result)\n if (!isEqual(availableResult, result)) {\n result = availableResult\n emitInput(\n Array.isArray(result)\n ? result.map((_) => _.toDate())\n : result.toDate()\n )\n }\n }\n if (Array.isArray(result) && result.some((_) => !_)) {\n result = []\n }\n return result\n })\n\n const displayValue = computed(() => {\n if (!pickerOptions.value.panelReady) return\n const formattedValue = formatDayjsToString(parsedValue.value)\n if (Array.isArray(userInput.value)) {\n return [\n userInput.value[0] || (formattedValue && formattedValue[0]) || '',\n userInput.value[1] || (formattedValue && formattedValue[1]) || '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (!isTimePicker.value && valueIsEmpty.value) return\n if (!pickerVisible.value && valueIsEmpty.value) return\n if (formattedValue) {\n return isDatesPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n })\n\n const isTimeLikePicker = computed(() => props.type.includes('time'))\n\n const isTimePicker = computed(() => props.type.startsWith('time'))\n\n const isDatesPicker = computed(() => props.type === 'dates')\n\n const triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n )\n\n const showClose = ref(false)\n\n const onClearIconClick = (event) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClose.value) {\n event.stopPropagation()\n emitInput(null)\n emitChange(null, true)\n showClose.value = false\n pickerVisible.value = false\n pickerOptions.value.handleClear && pickerOptions.value.handleClear()\n }\n }\n const valueIsEmpty = computed(() => {\n return (\n !props.modelValue ||\n (Array.isArray(props.modelValue) && !props.modelValue.length)\n )\n })\n const onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n showClose.value = true\n }\n }\n const onMouseLeave = () => {\n showClose.value = false\n }\n const isRangeInput = computed(() => {\n return props.type.indexOf('range') > -1\n })\n\n const pickerSize = useSize()\n\n const popperPaneRef = computed(() => {\n return refPopper.value?.popperRef\n })\n\n const onClickOutside = () => {\n if (!pickerVisible.value) return\n pickerVisible.value = false\n }\n\n const userInput = ref(null)\n\n const handleChange = () => {\n if (userInput.value) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(\n Array.isArray(value)\n ? value.map((_) => _.toDate())\n : value.toDate()\n )\n userInput.value = null\n }\n }\n }\n if (userInput.value === '') {\n emitInput(null)\n emitChange(null)\n userInput.value = null\n }\n }\n\n const blurInput = () => {\n refInput.value.forEach((input) => input.blur())\n }\n\n const parseUserInputToDayjs = (value) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput(value)\n }\n\n const formatDayjsToString = (value) => {\n if (!value) return null\n return pickerOptions.value.formatToString(value)\n }\n\n const isValidValue = (value) => {\n return pickerOptions.value.isValidValue(value)\n }\n\n const handleKeydown = (event) => {\n const code = event.code\n\n if (code === EVENT_CODE.esc) {\n pickerVisible.value = false\n event.stopPropagation()\n return\n }\n\n if (code === EVENT_CODE.tab) {\n if (!isRangeInput.value) {\n handleChange()\n pickerVisible.value = false\n event.stopPropagation()\n } else {\n // user may change focus between two input\n setTimeout(() => {\n if (refInput.value.indexOf(document.activeElement) === -1) {\n pickerVisible.value = false\n blurInput()\n }\n }, 0)\n }\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value))\n ) {\n handleChange()\n pickerVisible.value = false\n }\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n\n if (pickerOptions.value.handleKeydown) {\n pickerOptions.value.handleKeydown(event)\n }\n }\n const onUserInput = (e) => {\n userInput.value = e\n }\n\n const handleStartInput = (event) => {\n if (userInput.value) {\n userInput.value = [event.target.value, userInput.value[1]]\n } else {\n userInput.value = [event.target.value, null]\n }\n }\n\n const handleEndInput = (event) => {\n if (userInput.value) {\n userInput.value = [userInput.value[0], event.target.value]\n } else {\n userInput.value = [null, event.target.value]\n }\n }\n\n const handleStartChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[0])\n if (value && value.isValid()) {\n userInput.value = [formatDayjsToString(value), displayValue.value[1]]\n const newValue = [value, parsedValue.value && parsedValue.value[1]]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const handleEndChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[1])\n if (value && value.isValid()) {\n userInput.value = [displayValue.value[0], formatDayjsToString(value)]\n const newValue = [parsedValue.value && parsedValue.value[0], value]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const pickerOptions = ref<Partial<PickerOptions>>({})\n const onSetPickerOption = <T extends keyof PickerOptions>(\n e: [T, PickerOptions[T]]\n ) => {\n pickerOptions.value[e[0]] = e[1]\n pickerOptions.value.panelReady = true\n }\n\n const onCalendarChange = (e) => {\n ctx.emit('calendar-change', e)\n }\n\n provide('EP_PICKER_BASE', {\n props,\n })\n\n return {\n Effect,\n\n // injected popper options\n elPopperOptions,\n\n isDatesPicker,\n handleEndChange,\n handleStartChange,\n handleStartInput,\n handleEndInput,\n onUserInput,\n handleChange,\n handleKeydown,\n popperPaneRef,\n onClickOutside,\n pickerSize,\n isRangeInput,\n onMouseLeave,\n onMouseEnter,\n onClearIconClick,\n showClose,\n triggerIcon,\n onPick,\n handleFocus,\n handleBlur,\n pickerVisible,\n pickerActualVisible,\n displayValue,\n parsedValue,\n setSelectionRange,\n refPopper,\n pickerDisabled,\n onSetPickerOption,\n onCalendarChange,\n }\n },\n})\n</script>\n"],"names":["ElPopper"],"mappings":";;;;;;;;;;;;;;;;;;;AA+KA,MAAM,aAAa,SAAU,GAAe,GAAe;AACzD,QAAM,UAAU,aAAa;AAC7B,QAAM,UAAU,aAAa;AAC7B,MAAI,WAAW,SAAS;AACtB,WAAO,EAAE,cAAc,EAAE;AAAA;AAE3B,MAAI,CAAC,WAAW,CAAC,SAAS;AACxB,WAAO,MAAM;AAAA;AAEf,SAAO;AAAA;AAGT,MAAM,cAAc,SAAU,GAAsB,GAAsB;AACxE,QAAM,WAAW,aAAa;AAC9B,QAAM,WAAW,aAAa;AAC9B,MAAI,YAAY,UAAU;AACxB,QAAI,EAAE,WAAW,EAAE,QAAQ;AACzB,aAAO;AAAA;AAET,WAAQ,EAAkB,MAAM,CAAC,MAAM,UAAU,WAAW,MAAM,EAAE;AAAA;AAEtE,MAAI,CAAC,YAAY,CAAC,UAAU;AAC1B,WAAO,WAAW,GAAG;AAAA;AAEvB,SAAO;AAAA;AAGT,MAAM,SAAS,SACb,MACA,QACA,MACO;AACP,QAAM,MAAM,QAAQ,UAChB,MAAM,MAAM,OAAO,QACnB,MAAM,MAAM,QAAQ,OAAO;AAC/B,SAAO,IAAI,YAAY,MAAM;AAAA;AAG/B,MAAM,YAAY,SAAU,MAAqB,QAAgB,MAAc;AAC7E,SAAO,QAAQ,UAAU,OAAO,MAAM,MAAM,OAAO,MAAM,OAAO;AAAA;AAGlE,aAAe,gBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,cACAA;AAAA,IACA;AAAA;AAAA,EAEF,YAAY,EAAE,cAAc;AAAA,EAC5B,OAAO;AAAA,EACP,OAAO,CAAC,qBAAqB,UAAU,SAAS,QAAQ;AAAA,EACxD,MAAM,OAAO,KAAK;AAChB,UAAM,EAAE,SAAS;AAEjB,UAAM,SAAS,OAAO,WAAW;AACjC,UAAM,aAAa,OAAO,eAAe;AACzC,UAAM,kBAAkB,OAAO,mBAAmB;AAElD,UAAM,YAAY,IAAI;AACtB,UAAM,gBAAgB,IAAI;AAC1B,UAAM,sBAAsB,IAAI;AAChC,UAAM,cAAc,IAAI;AAExB,UAAM,eAAe,CAAC,QAAQ;;AAC5B,UAAI,CAAC,KAAK;AACR,kBAAU,QAAQ;AAClB,iBAAS,MAAM;AACb,qBAAW,MAAM;AAAA;AAEnB,YAAI,KAAK;AACT;AACA,cAAM,mCAA4B,aAAX,oCAAsB;AAAA,aACxC;AACL,oBAAY,QAAQ,MAAM;AAAA;AAAA;AAG9B,UAAM,aAAa,CAAC,KAAK,YAAsB;;AAE7C,UAAI,WAAW,CAAC,YAAY,KAAK,YAAY,QAAQ;AACnD,YAAI,KAAK,UAAU;AACnB,cAAM,mCAA4B,aAAX,oCAAsB;AAAA;AAAA;AAGjD,UAAM,YAAY,CAAC,QAAQ;AACzB,UAAI,CAAC,YAAY,MAAM,YAAY,MAAM;AACvC,YAAI;AACJ,YAAI,MAAM,QAAQ,MAAM;AACtB,wBAAc,IAAI,IAAI,CAAC,MACrB,UAAU,GAAG,MAAM,aAAa,KAAK;AAAA,mBAE9B,KAAK;AACd,wBAAc,UAAU,KAAK,MAAM,aAAa,KAAK;AAAA;AAEvD,YAAI,KAAK,qBAAqB,MAAM,cAAc,KAAK,KAAK;AAAA;AAAA;AAGhE,UAAM,WAAW,SAAS,MAAM;AAC9B,UAAI,UAAU,MAAM,YAAY;AAC9B,cAAM,KAAK,aAAa,QACpB,UAAU,MAAM,aAChB,UAAU,MAAM,WAAW;AAC/B,eAAO,GAAG,MAAM,KAAK,GAAG,iBAAiB;AAAA;AAE3C,aAAO;AAAA;AAET,UAAM,oBAAoB,CAAC,OAAO,KAAK,QAAQ;AAC7C,YAAM,UAAU,SAAS;AACzB,UAAI,CAAC,QAAQ;AAAQ;AACrB,UAAI,CAAC,OAAO,QAAQ,OAAO;AACzB,gBAAQ,GAAG,kBAAkB,OAAO;AACpC,gBAAQ,GAAG;AAAA,iBACF,QAAQ,OAAO;AACxB,gBAAQ,GAAG,kBAAkB,OAAO;AACpC,gBAAQ,GAAG;AAAA;AAAA;AAGf,UAAM,SAAS,CAAC,OAAY,IAAI,UAAU,UAAU;AAClD,oBAAc,QAAQ;AACtB,UAAI;AACJ,UAAI,MAAM,QAAQ,OAAO;AACvB,iBAAS,KAAK,IAAI,CAAC,MAAM,EAAE;AAAA,aACtB;AAEL,iBAAS,OAAO,KAAK,WAAW;AAAA;AAElC,gBAAU,QAAQ;AAClB,gBAAU;AAAA;AAEZ,UAAM,cAAc,CAAC,MAAM;AACzB,UAAI,MAAM,YAAY,eAAe,SAAS,cAAc;AAAO;AACnE,oBAAc,QAAQ;AACtB,UAAI,KAAK,SAAS;AAAA;AAGpB,UAAM,aAAa,MAAM;AACvB,oBAAc,QAAQ;AACtB;AAAA;AAGF,UAAM,iBAAiB,SAAS,MAAM;AACpC,aAAO,MAAM,YAAY,OAAO;AAAA;AAGlC,UAAM,cAAc,SAAS,MAAM;AACjC,UAAI;AACJ,UAAI,aAAa,OAAO;AACtB,YAAI,cAAc,MAAM,iBAAiB;AACvC,mBAAS,cAAc,MAAM;AAAA;AAAA,aAE1B;AACL,YAAI,MAAM,QAAQ,MAAM,aAAa;AACnC,mBAAS,MAAM,WAAW,IAAI,CAAC,MAC7B,OAAO,GAAG,MAAM,aAAa,KAAK;AAAA,eAE/B;AACL,mBAAS,OAAO,MAAM,YAAY,MAAM,aAAa,KAAK;AAAA;AAAA;AAI9D,UAAI,cAAc,MAAM,uBAAuB;AAC7C,cAAM,kBACJ,cAAc,MAAM,sBAAsB;AAC5C,YAAI,CAAC,QAAQ,iBAAiB,SAAS;AACrC,mBAAS;AACT,oBACE,MAAM,QAAQ,UACV,OAAO,IAAI,CAAC,MAAM,EAAE,YACpB,OAAO;AAAA;AAAA;AAIjB,UAAI,MAAM,QAAQ,WAAW,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI;AACnD,iBAAS;AAAA;AAEX,aAAO;AAAA;AAGT,UAAM,eAAe,SAAS,MAAM;AAClC,UAAI,CAAC,cAAc,MAAM;AAAY;AACrC,YAAM,iBAAiB,oBAAoB,YAAY;AACvD,UAAI,MAAM,QAAQ,UAAU,QAAQ;AAClC,eAAO;AAAA,UACL,UAAU,MAAM,MAAO,kBAAkB,eAAe,MAAO;AAAA,UAC/D,UAAU,MAAM,MAAO,kBAAkB,eAAe,MAAO;AAAA;AAAA,iBAExD,UAAU,UAAU,MAAM;AACnC,eAAO,UAAU;AAAA;AAEnB,UAAI,CAAC,aAAa,SAAS,aAAa;AAAO;AAC/C,UAAI,CAAC,cAAc,SAAS,aAAa;AAAO;AAChD,UAAI,gBAAgB;AAClB,eAAO,cAAc,QAChB,eAAiC,KAAK,QACvC;AAAA;AAEN,aAAO;AAAA;AAGT,UAAM,mBAAmB,SAAS,MAAM,MAAM,KAAK,SAAS;AAE5D,UAAM,eAAe,SAAS,MAAM,MAAM,KAAK,WAAW;AAE1D,UAAM,gBAAgB,SAAS,MAAM,MAAM,SAAS;AAEpD,UAAM,cAAc,SAClB,MAAM,MAAM,gCAAgC,QAAQ,QAAQ;AAG9D,UAAM,YAAY,IAAI;AAEtB,UAAM,mBAAmB,CAAC,UAAU;AAClC,UAAI,MAAM,YAAY,eAAe;AAAO;AAC5C,UAAI,UAAU,OAAO;AACnB,cAAM;AACN,kBAAU;AACV,mBAAW,MAAM;AACjB,kBAAU,QAAQ;AAClB,sBAAc,QAAQ;AACtB,sBAAc,MAAM,eAAe,cAAc,MAAM;AAAA;AAAA;AAG3D,UAAM,eAAe,SAAS,MAAM;AAClC,aACE,CAAC,MAAM,cACN,MAAM,QAAQ,MAAM,eAAe,CAAC,MAAM,WAAW;AAAA;AAG1D,UAAM,eAAe,MAAM;AACzB,UAAI,MAAM,YAAY,eAAe;AAAO;AAC5C,UAAI,CAAC,aAAa,SAAS,MAAM,WAAW;AAC1C,kBAAU,QAAQ;AAAA;AAAA;AAGtB,UAAM,eAAe,MAAM;AACzB,gBAAU,QAAQ;AAAA;AAEpB,UAAM,eAAe,SAAS,MAAM;AAClC,aAAO,MAAM,KAAK,QAAQ,WAAW;AAAA;AAGvC,UAAM,aAAa;AAEnB,UAAM,gBAAgB,SAAS,MAAM;;AACnC,aAAO,gBAAU,UAAV,mBAAiB;AAAA;AAG1B,UAAM,iBAAiB,MAAM;AAC3B,UAAI,CAAC,cAAc;AAAO;AAC1B,oBAAc,QAAQ;AAAA;AAGxB,UAAM,YAAY,IAAI;AAEtB,UAAM,eAAe,MAAM;AACzB,UAAI,UAAU,OAAO;AACnB,cAAM,QAAQ,sBAAsB,aAAa;AACjD,YAAI,OAAO;AACT,cAAI,aAAa,QAAQ;AACvB,sBACE,MAAM,QAAQ,SACV,MAAM,IAAI,CAAC,MAAM,EAAE,YACnB,MAAM;AAEZ,sBAAU,QAAQ;AAAA;AAAA;AAAA;AAIxB,UAAI,UAAU,UAAU,IAAI;AAC1B,kBAAU;AACV,mBAAW;AACX,kBAAU,QAAQ;AAAA;AAAA;AAItB,UAAM,YAAY,MAAM;AACtB,eAAS,MAAM,QAAQ,CAAC,UAAU,MAAM;AAAA;AAG1C,UAAM,wBAAwB,CAAC,UAAU;AACvC,UAAI,CAAC;AAAO,eAAO;AACnB,aAAO,cAAc,MAAM,eAAe;AAAA;AAG5C,UAAM,sBAAsB,CAAC,UAAU;AACrC,UAAI,CAAC;AAAO,eAAO;AACnB,aAAO,cAAc,MAAM,eAAe;AAAA;AAG5C,UAAM,eAAe,CAAC,UAAU;AAC9B,aAAO,cAAc,MAAM,aAAa;AAAA;AAG1C,UAAM,gBAAgB,CAAC,UAAU;AAC/B,YAAM,OAAO,MAAM;AAEnB,UAAI,SAAS,WAAW,KAAK;AAC3B,sBAAc,QAAQ;AACtB,cAAM;AACN;AAAA;AAGF,UAAI,SAAS,WAAW,KAAK;AAC3B,YAAI,CAAC,aAAa,OAAO;AACvB;AACA,wBAAc,QAAQ;AACtB,gBAAM;AAAA,eACD;AAEL,qBAAW,MAAM;AACf,gBAAI,SAAS,MAAM,QAAQ,SAAS,mBAAmB,IAAI;AACzD,4BAAc,QAAQ;AACtB;AAAA;AAAA,aAED;AAAA;AAEL;AAAA;AAGF,UAAI,SAAS,WAAW,SAAS,SAAS,WAAW,aAAa;AAChE,YACE,UAAU,UAAU,QACpB,UAAU,UAAU,MACpB,aAAa,sBAAsB,aAAa,SAChD;AACA;AACA,wBAAc,QAAQ;AAAA;AAExB,cAAM;AACN;AAAA;AAIF,UAAI,UAAU,OAAO;AACnB,cAAM;AACN;AAAA;AAGF,UAAI,cAAc,MAAM,eAAe;AACrC,sBAAc,MAAM,cAAc;AAAA;AAAA;AAGtC,UAAM,cAAc,CAAC,MAAM;AACzB,gBAAU,QAAQ;AAAA;AAGpB,UAAM,mBAAmB,CAAC,UAAU;AAClC,UAAI,UAAU,OAAO;AACnB,kBAAU,QAAQ,CAAC,MAAM,OAAO,OAAO,UAAU,MAAM;AAAA,aAClD;AACL,kBAAU,QAAQ,CAAC,MAAM,OAAO,OAAO;AAAA;AAAA;AAI3C,UAAM,iBAAiB,CAAC,UAAU;AAChC,UAAI,UAAU,OAAO;AACnB,kBAAU,QAAQ,CAAC,UAAU,MAAM,IAAI,MAAM,OAAO;AAAA,aAC/C;AACL,kBAAU,QAAQ,CAAC,MAAM,MAAM,OAAO;AAAA;AAAA;AAI1C,UAAM,oBAAoB,MAAM;AAC9B,YAAM,QAAQ,sBAAsB,UAAU,SAAS,UAAU,MAAM;AACvE,UAAI,SAAS,MAAM,WAAW;AAC5B,kBAAU,QAAQ,CAAC,oBAAoB,QAAQ,aAAa,MAAM;AAClE,cAAM,WAAW,CAAC,OAAO,YAAY,SAAS,YAAY,MAAM;AAChE,YAAI,aAAa,WAAW;AAC1B,oBAAU;AACV,oBAAU,QAAQ;AAAA;AAAA;AAAA;AAKxB,UAAM,kBAAkB,MAAM;AAC5B,YAAM,QAAQ,sBAAsB,UAAU,SAAS,UAAU,MAAM;AACvE,UAAI,SAAS,MAAM,WAAW;AAC5B,kBAAU,QAAQ,CAAC,aAAa,MAAM,IAAI,oBAAoB;AAC9D,cAAM,WAAW,CAAC,YAAY,SAAS,YAAY,MAAM,IAAI;AAC7D,YAAI,aAAa,WAAW;AAC1B,oBAAU;AACV,oBAAU,QAAQ;AAAA;AAAA;AAAA;AAKxB,UAAM,gBAAgB,IAA4B;AAClD,UAAM,oBAAoB,CACxB,MACG;AACH,oBAAc,MAAM,EAAE,MAAM,EAAE;AAC9B,oBAAc,MAAM,aAAa;AAAA;AAGnC,UAAM,mBAAmB,CAAC,MAAM;AAC9B,UAAI,KAAK,mBAAmB;AAAA;AAG9B,YAAQ,kBAAkB;AAAA,MACxB;AAAA;AAGF,WAAO;AAAA,MACL;AAAA,MAGA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;"}
|
package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"picker.vue_vue_type_template_id_1d54be91_lang.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue?vue&type=template&id=1d54be91&lang.js"],"sourcesContent":["<template>\n <el-popper\n ref=\"refPopper\"\n v-model:visible=\"pickerVisible\"\n manual-mode\n :effect=\"Effect.LIGHT\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n :popper-class=\"`el-picker__popper ${popperClass}`\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n transition=\"el-zoom-in-top\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n append-to-body\n @before-enter=\"pickerActualVisible = true\"\n @after-leave=\"pickerActualVisible = false\"\n >\n <template #trigger>\n <el-input\n v-if=\"!isRangeInput\"\n v-clickoutside:[popperPaneRef]=\"onClickOutside\"\n :model-value=\"displayValue\"\n :name=\"name\"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n class=\"el-date-editor\"\n :class=\"'el-date-editor--' + type\"\n :readonly=\"!editable || readonly || isDatesPicker || type === 'week'\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @keydown=\"handleKeydown\"\n @change=\"handleChange\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-input__icon clear-icon\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <div\n v-else\n v-clickoutside:[popperPaneRef]=\"onClickOutside\"\n class=\"el-date-editor el-range-editor el-input__inner\"\n :class=\"[\n 'el-date-editor--' + type,\n pickerSize ? `el-range-editor--${pickerSize}` : '',\n pickerDisabled ? 'is-disabled' : '',\n pickerVisible ? 'is-active' : '',\n ]\"\n @click=\"handleFocus\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @keydown=\"handleKeydown\"\n >\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon el-range__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n <input\n autocomplete=\"off\"\n :name=\"name && name[0]\"\n :placeholder=\"startPlaceholder\"\n :value=\"displayValue && displayValue[0]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @input=\"handleStartInput\"\n @change=\"handleStartChange\"\n @focus=\"handleFocus\"\n />\n <slot name=\"range-separator\">\n <span class=\"el-range-separator\">{{ rangeSeparator }}</span>\n </slot>\n <input\n autocomplete=\"off\"\n :name=\"name && name[1]\"\n :placeholder=\"endPlaceholder\"\n :value=\"displayValue && displayValue[1]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @focus=\"handleFocus\"\n @input=\"handleEndInput\"\n @change=\"handleEndChange\"\n />\n <el-icon\n v-if=\"clearIcon\"\n class=\"el-input__icon el-range__close-icon\"\n :class=\"{\n 'el-range__close-icon--hidden': !showClose,\n }\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </div>\n </template>\n <template #default>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @mousedown.stop\n ></slot>\n </template>\n </el-popper>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n computed,\n nextTick,\n inject,\n watch,\n provide,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport isEqual from 'lodash/isEqual'\nimport { useLocale } from '@element-plus/hooks'\nimport { ClickOutside } from '@element-plus/directives'\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElPopper, { Effect } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { useGlobalConfig, isEmpty } from '@element-plus/utils/util'\nimport { Clock, Calendar } from '@element-plus/icons'\nimport { timePickerDefaultProps } from './props'\n\nimport type { Dayjs } from 'dayjs'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type { Options } from '@popperjs/core'\n\ninterface PickerOptions {\n isValidValue: (date: Dayjs) => boolean\n handleKeydown: (event: KeyboardEvent) => void\n parseUserInput: (value: Dayjs) => dayjs.Dayjs\n formatToString: (value: Dayjs) => string | string[]\n getRangeAvailableTime: (date: Dayjs) => dayjs.Dayjs\n getDefaultValue: () => Dayjs\n panelReady: boolean\n handleClear: () => void\n}\n\n// Date object and string\nconst dateEquals = function (a: Date | any, b: Date | any) {\n const aIsDate = a instanceof Date\n const bIsDate = b instanceof Date\n if (aIsDate && bIsDate) {\n return a.getTime() === b.getTime()\n }\n if (!aIsDate && !bIsDate) {\n return a === b\n }\n return false\n}\n\nconst valueEquals = function (a: Array<Date> | any, b: Array<Date> | any) {\n const aIsArray = a instanceof Array\n const bIsArray = b instanceof Array\n if (aIsArray && bIsArray) {\n if (a.length !== b.length) {\n return false\n }\n return (a as Array<Date>).every((item, index) => dateEquals(item, b[index]))\n }\n if (!aIsArray && !bIsArray) {\n return dateEquals(a, b)\n }\n return false\n}\n\nconst parser = function (\n date: Date | string,\n format: string,\n lang: string\n): Dayjs {\n const day = isEmpty(format)\n ? dayjs(date).locale(lang)\n : dayjs(date, format).locale(lang)\n return day.isValid() ? day : undefined\n}\n\nconst formatter = function (date: Date, format: string, lang: string) {\n return isEmpty(format) ? date : dayjs(date).locale(lang).format(format)\n}\n\nexport default defineComponent({\n name: 'Picker',\n components: {\n ElInput,\n ElPopper,\n ElIcon,\n },\n directives: { clickoutside: ClickOutside },\n props: timePickerDefaultProps,\n emits: ['update:modelValue', 'change', 'focus', 'blur', 'calendar-change'],\n setup(props, ctx) {\n const ELEMENT = useGlobalConfig()\n const { lang } = useLocale()\n\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n const elPopperOptions = inject('ElPopperOptions', {} as Options)\n\n const refPopper = ref(null)\n const pickerVisible = ref(false)\n const pickerActualVisible = ref(false)\n const valueOnOpen = ref(null)\n\n watch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n ctx.emit('blur')\n blurInput()\n props.validateEvent && elFormItem.validate?.('blur')\n } else {\n valueOnOpen.value = props.modelValue\n }\n })\n const emitChange = (val, isClear?: boolean) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n ctx.emit('change', val)\n props.validateEvent && elFormItem.validate?.('change')\n }\n }\n const emitInput = (val) => {\n if (!valueEquals(props.modelValue, val)) {\n let formatValue\n if (Array.isArray(val)) {\n formatValue = val.map((_) =>\n formatter(_, props.valueFormat, lang.value)\n )\n } else if (val) {\n formatValue = formatter(val, props.valueFormat, lang.value)\n }\n ctx.emit('update:modelValue', val ? formatValue : val, lang.value)\n }\n }\n const refInput = computed(() => {\n if (refPopper.value.triggerRef) {\n const _r = isRangeInput.value\n ? refPopper.value.triggerRef\n : refPopper.value.triggerRef.$el\n return [].slice.call(_r.querySelectorAll('input'))\n }\n return []\n })\n const setSelectionRange = (start, end, pos) => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n }\n const onPick = (date: any = '', visible = false) => {\n pickerVisible.value = visible\n let result\n if (Array.isArray(date)) {\n result = date.map((_) => _.toDate())\n } else {\n // clear btn emit null\n result = date ? date.toDate() : date\n }\n userInput.value = null\n emitInput(result)\n }\n const handleFocus = (e) => {\n if (props.readonly || pickerDisabled.value || pickerVisible.value) return\n pickerVisible.value = true\n ctx.emit('focus', e)\n }\n\n const handleBlur = () => {\n pickerVisible.value = false\n blurInput()\n }\n\n const pickerDisabled = computed(() => {\n return props.disabled || elForm.disabled\n })\n\n const parsedValue = computed(() => {\n let result\n if (valueIsEmpty.value) {\n if (pickerOptions.value.getDefaultValue) {\n result = pickerOptions.value.getDefaultValue()\n }\n } else {\n if (Array.isArray(props.modelValue)) {\n result = props.modelValue.map((_) =>\n parser(_, props.valueFormat, lang.value)\n )\n } else {\n result = parser(props.modelValue, props.valueFormat, lang.value)\n }\n }\n\n if (pickerOptions.value.getRangeAvailableTime) {\n const availableResult =\n pickerOptions.value.getRangeAvailableTime(result)\n if (!isEqual(availableResult, result)) {\n result = availableResult\n emitInput(\n Array.isArray(result)\n ? result.map((_) => _.toDate())\n : result.toDate()\n )\n }\n }\n if (Array.isArray(result) && result.some((_) => !_)) {\n result = []\n }\n return result\n })\n\n const displayValue = computed(() => {\n if (!pickerOptions.value.panelReady) return\n const formattedValue = formatDayjsToString(parsedValue.value)\n if (Array.isArray(userInput.value)) {\n return [\n userInput.value[0] || (formattedValue && formattedValue[0]) || '',\n userInput.value[1] || (formattedValue && formattedValue[1]) || '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (!isTimePicker.value && valueIsEmpty.value) return\n if (!pickerVisible.value && valueIsEmpty.value) return\n if (formattedValue) {\n return isDatesPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n })\n\n const isTimeLikePicker = computed(() => props.type.includes('time'))\n\n const isTimePicker = computed(() => props.type.startsWith('time'))\n\n const isDatesPicker = computed(() => props.type === 'dates')\n\n const triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n )\n\n const showClose = ref(false)\n\n const onClearIconClick = (event) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClose.value) {\n event.stopPropagation()\n emitInput(null)\n emitChange(null, true)\n showClose.value = false\n pickerVisible.value = false\n pickerOptions.value.handleClear && pickerOptions.value.handleClear()\n }\n }\n const valueIsEmpty = computed(() => {\n return (\n !props.modelValue ||\n (Array.isArray(props.modelValue) && !props.modelValue.length)\n )\n })\n const onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n showClose.value = true\n }\n }\n const onMouseLeave = () => {\n showClose.value = false\n }\n const isRangeInput = computed(() => {\n return props.type.indexOf('range') > -1\n })\n\n const pickerSize = computed(() => {\n return props.size || elFormItem.size || ELEMENT.size\n })\n\n const popperPaneRef = computed(() => {\n return refPopper.value?.popperRef\n })\n\n const onClickOutside = () => {\n if (!pickerVisible.value) return\n pickerVisible.value = false\n }\n\n const userInput = ref(null)\n\n const handleChange = () => {\n if (userInput.value) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(\n Array.isArray(value)\n ? value.map((_) => _.toDate())\n : value.toDate()\n )\n userInput.value = null\n }\n }\n }\n if (userInput.value === '') {\n emitInput(null)\n emitChange(null)\n userInput.value = null\n }\n }\n\n const blurInput = () => {\n refInput.value.forEach((input) => input.blur())\n }\n\n const parseUserInputToDayjs = (value) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput(value)\n }\n\n const formatDayjsToString = (value) => {\n if (!value) return null\n return pickerOptions.value.formatToString(value)\n }\n\n const isValidValue = (value) => {\n return pickerOptions.value.isValidValue(value)\n }\n\n const handleKeydown = (event) => {\n const code = event.code\n\n if (code === EVENT_CODE.esc) {\n pickerVisible.value = false\n event.stopPropagation()\n return\n }\n\n if (code === EVENT_CODE.tab) {\n if (!isRangeInput.value) {\n handleChange()\n pickerVisible.value = false\n event.stopPropagation()\n } else {\n // user may change focus between two input\n setTimeout(() => {\n if (refInput.value.indexOf(document.activeElement) === -1) {\n pickerVisible.value = false\n blurInput()\n }\n }, 0)\n }\n return\n }\n\n if (code === EVENT_CODE.enter) {\n if (\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value))\n ) {\n handleChange()\n pickerVisible.value = false\n }\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n\n if (pickerOptions.value.handleKeydown) {\n pickerOptions.value.handleKeydown(event)\n }\n }\n const onUserInput = (e) => {\n userInput.value = e\n }\n\n const handleStartInput = (event) => {\n if (userInput.value) {\n userInput.value = [event.target.value, userInput.value[1]]\n } else {\n userInput.value = [event.target.value, null]\n }\n }\n\n const handleEndInput = (event) => {\n if (userInput.value) {\n userInput.value = [userInput.value[0], event.target.value]\n } else {\n userInput.value = [null, event.target.value]\n }\n }\n\n const handleStartChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[0])\n if (value && value.isValid()) {\n userInput.value = [formatDayjsToString(value), displayValue.value[1]]\n const newValue = [value, parsedValue.value && parsedValue.value[1]]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const handleEndChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[1])\n if (value && value.isValid()) {\n userInput.value = [displayValue.value[0], formatDayjsToString(value)]\n const newValue = [parsedValue.value && parsedValue.value[0], value]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const pickerOptions = ref<Partial<PickerOptions>>({})\n const onSetPickerOption = <T extends keyof PickerOptions>(\n e: [T, PickerOptions[T]]\n ) => {\n pickerOptions.value[e[0]] = e[1]\n pickerOptions.value.panelReady = true\n }\n\n const onCalendarChange = (e) => {\n ctx.emit('calendar-change', e)\n }\n\n provide('EP_PICKER_BASE', {\n props,\n })\n\n return {\n Effect,\n\n // injected popper options\n elPopperOptions,\n\n isDatesPicker,\n handleEndChange,\n handleStartChange,\n handleStartInput,\n handleEndInput,\n onUserInput,\n handleChange,\n handleKeydown,\n popperPaneRef,\n onClickOutside,\n pickerSize,\n isRangeInput,\n onMouseLeave,\n onMouseEnter,\n onClearIconClick,\n showClose,\n triggerIcon,\n onPick,\n handleFocus,\n handleBlur,\n pickerVisible,\n pickerActualVisible,\n displayValue,\n parsedValue,\n setSelectionRange,\n refPopper,\n pickerDisabled,\n onSetPickerOption,\n onCalendarChange,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_mergeProps","_createElementBlock","_createElementVNode","_renderSlot"],"mappings":";;;qBA4FgB,OAAM;;;;;;;sBA3FpBA,kCAAAC;IACE,KAAI;AAAA,IACI,SAAS;gEAAA;IACjB,eAAA;AAAA,IACC,QAAQ,YAAO;AAAA,IAChB,MAAA;AAAA,IACA,SAAQ;AAAA,KACA;IACP,qCAAmC;IACnC,kBAAgB;IAChB,uBAAqB;IACtB,YAAW;AAAA,IACV,oBAAkB;AAAA,IAClB,2BAAyB;AAAA,IAC1B,kBAAA;AAAA,IACC,uDAAc;IACd,sDAAa;;IAEH,iBACT;OACS,iDADTD;;QAGG,eAAa;QACb,MAAM;QACN,MAAM;QACN,UAAU;QACV,aAAa;QACd,uBAAM,uCACuB;QAC5B,WAAW,iBAAY,iBAAY,sBAAiB;QACpD,SAAO;QACP,SAAO;QACP,WAAS;QACT,UAAQ;QACR,cAAY;QACZ,cAAY;;QAEF,gBACT;UACQ,iCADRA;;YAEE,OAAM;AAAA,YACL,SAAO;;6BAER;4BAAAA,oCAAgB;;;;;QAGT,gBACT;UACQ,kBAAa,+BADrBA;;YAEE,OAAM;AAAA,YACL,SAAO;;6BAER;4BAAAA,oCAAgB;;;;;;;kCA/BY,qBAAjB;wCAmCjBE;;QAGE,uBAAM;;;;;;QAOL,gDAAO;QACP,qDAAY;QACZ,qDAAY;QACZ,kDAAS;;QAGF,iCADRF;;UAEE,OAAM;AAAA,UACL,SAAO;;2BAER;0BAAAA,oCAAgB;;;;QAElBG;UACE,cAAa;AAAA,UACZ,MAAM,aAAQ;UACd,aAAa;UACb,OAAO,qBAAgB;UACvB,UAAU;UACV,WAAW,iBAAY;UACxB,OAAM;AAAA,UACL,gDAAO;UACP,iDAAQ;UACR,gDAAO;;QAEVC,+CAAA;UACED,2BAAA,4BAAoC;;QAEtCA;UACE,cAAa;AAAA,UACZ,MAAM,aAAQ;UACd,aAAa;UACb,OAAO,qBAAgB;UACvB,UAAU;UACV,WAAW,iBAAY;UACxB,OAAM;AAAA,UACL,gDAAO;UACP,gDAAO;UACP,iDAAQ;;QAGH,+BADRH;;UAEE,uBAAM;;;UAIL,SAAO;;2BAER;0BAAAA,oCAAgB;;;;;kCAvDc,qBAAjB;;;IA2DR,iBACT;MAAAI;QACG,SAAS;QACT,eAAgB;QAChB,aAAc;QACd,QAAQ;QACR,cAAe;QACf,MAAM;QACN,cAAe;QACf,iDAAM;QACN,wDAAc;QACd,4DAAmB;QACnB,2DAAiB;QACjB,uDAAD;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"picker.vue_vue_type_template_id_1d54be91_lang.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue?vue&type=template&id=1d54be91&lang.js"],"sourcesContent":["<template>\n <el-popper\n ref=\"refPopper\"\n v-model:visible=\"pickerVisible\"\n manual-mode\n :effect=\"Effect.LIGHT\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n :popper-class=\"`el-picker__popper ${popperClass}`\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n transition=\"el-zoom-in-top\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n append-to-body\n @before-enter=\"pickerActualVisible = true\"\n @after-leave=\"pickerActualVisible = false\"\n >\n <template #trigger>\n <el-input\n v-if=\"!isRangeInput\"\n v-clickoutside:[popperPaneRef]=\"onClickOutside\"\n :model-value=\"displayValue\"\n :name=\"name\"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n class=\"el-date-editor\"\n :class=\"'el-date-editor--' + type\"\n :readonly=\"!editable || readonly || isDatesPicker || type === 'week'\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @keydown=\"handleKeydown\"\n @change=\"handleChange\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClose && clearIcon\"\n class=\"el-input__icon clear-icon\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <div\n v-else\n v-clickoutside:[popperPaneRef]=\"onClickOutside\"\n class=\"el-date-editor el-range-editor el-input__inner\"\n :class=\"[\n 'el-date-editor--' + type,\n pickerSize ? `el-range-editor--${pickerSize}` : '',\n pickerDisabled ? 'is-disabled' : '',\n pickerVisible ? 'is-active' : '',\n ]\"\n @click=\"handleFocus\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @keydown=\"handleKeydown\"\n >\n <el-icon\n v-if=\"triggerIcon\"\n class=\"el-input__icon el-range__icon\"\n @click=\"handleFocus\"\n >\n <component :is=\"triggerIcon\"></component>\n </el-icon>\n <input\n autocomplete=\"off\"\n :name=\"name && name[0]\"\n :placeholder=\"startPlaceholder\"\n :value=\"displayValue && displayValue[0]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @input=\"handleStartInput\"\n @change=\"handleStartChange\"\n @focus=\"handleFocus\"\n />\n <slot name=\"range-separator\">\n <span class=\"el-range-separator\">{{ rangeSeparator }}</span>\n </slot>\n <input\n autocomplete=\"off\"\n :name=\"name && name[1]\"\n :placeholder=\"endPlaceholder\"\n :value=\"displayValue && displayValue[1]\"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n class=\"el-range-input\"\n @focus=\"handleFocus\"\n @input=\"handleEndInput\"\n @change=\"handleEndChange\"\n />\n <el-icon\n v-if=\"clearIcon\"\n class=\"el-input__icon el-range__close-icon\"\n :class=\"{\n 'el-range__close-icon--hidden': !showClose,\n }\"\n @click=\"onClearIconClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </div>\n </template>\n <template #default>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @mousedown.stop\n ></slot>\n </template>\n </el-popper>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n computed,\n nextTick,\n inject,\n watch,\n provide,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport isEqual from 'lodash/isEqual'\nimport { useLocale, useSize } from '@element-plus/hooks'\nimport { ClickOutside } from '@element-plus/directives'\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElPopper, { Effect } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { isEmpty } from '@element-plus/utils/util'\nimport { Clock, Calendar } from '@element-plus/icons-vue'\nimport { timePickerDefaultProps } from './props'\n\nimport type { Dayjs } from 'dayjs'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type { Options } from '@popperjs/core'\n\ninterface PickerOptions {\n isValidValue: (date: Dayjs) => boolean\n handleKeydown: (event: KeyboardEvent) => void\n parseUserInput: (value: Dayjs) => dayjs.Dayjs\n formatToString: (value: Dayjs) => string | string[]\n getRangeAvailableTime: (date: Dayjs) => dayjs.Dayjs\n getDefaultValue: () => Dayjs\n panelReady: boolean\n handleClear: () => void\n}\n\n// Date object and string\nconst dateEquals = function (a: Date | any, b: Date | any) {\n const aIsDate = a instanceof Date\n const bIsDate = b instanceof Date\n if (aIsDate && bIsDate) {\n return a.getTime() === b.getTime()\n }\n if (!aIsDate && !bIsDate) {\n return a === b\n }\n return false\n}\n\nconst valueEquals = function (a: Array<Date> | any, b: Array<Date> | any) {\n const aIsArray = a instanceof Array\n const bIsArray = b instanceof Array\n if (aIsArray && bIsArray) {\n if (a.length !== b.length) {\n return false\n }\n return (a as Array<Date>).every((item, index) => dateEquals(item, b[index]))\n }\n if (!aIsArray && !bIsArray) {\n return dateEquals(a, b)\n }\n return false\n}\n\nconst parser = function (\n date: Date | string,\n format: string,\n lang: string\n): Dayjs {\n const day = isEmpty(format)\n ? dayjs(date).locale(lang)\n : dayjs(date, format).locale(lang)\n return day.isValid() ? day : undefined\n}\n\nconst formatter = function (date: number | Date, format: string, lang: string) {\n return isEmpty(format) ? date : dayjs(date).locale(lang).format(format)\n}\n\nexport default defineComponent({\n name: 'Picker',\n components: {\n ElInput,\n ElPopper,\n ElIcon,\n },\n directives: { clickoutside: ClickOutside },\n props: timePickerDefaultProps,\n emits: ['update:modelValue', 'change', 'focus', 'blur', 'calendar-change'],\n setup(props, ctx) {\n const { lang } = useLocale()\n\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n const elPopperOptions = inject('ElPopperOptions', {} as Options)\n\n const refPopper = ref(null)\n const pickerVisible = ref(false)\n const pickerActualVisible = ref(false)\n const valueOnOpen = ref(null)\n\n watch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n ctx.emit('blur')\n blurInput()\n props.validateEvent && elFormItem.validate?.('blur')\n } else {\n valueOnOpen.value = props.modelValue\n }\n })\n const emitChange = (val, isClear?: boolean) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n ctx.emit('change', val)\n props.validateEvent && elFormItem.validate?.('change')\n }\n }\n const emitInput = (val) => {\n if (!valueEquals(props.modelValue, val)) {\n let formatValue\n if (Array.isArray(val)) {\n formatValue = val.map((_) =>\n formatter(_, props.valueFormat, lang.value)\n )\n } else if (val) {\n formatValue = formatter(val, props.valueFormat, lang.value)\n }\n ctx.emit('update:modelValue', val ? formatValue : val, lang.value)\n }\n }\n const refInput = computed(() => {\n if (refPopper.value.triggerRef) {\n const _r = isRangeInput.value\n ? refPopper.value.triggerRef\n : refPopper.value.triggerRef.$el\n return [].slice.call(_r.querySelectorAll('input'))\n }\n return []\n })\n const setSelectionRange = (start, end, pos) => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n }\n const onPick = (date: any = '', visible = false) => {\n pickerVisible.value = visible\n let result\n if (Array.isArray(date)) {\n result = date.map((_) => _.toDate())\n } else {\n // clear btn emit null\n result = date ? date.toDate() : date\n }\n userInput.value = null\n emitInput(result)\n }\n const handleFocus = (e) => {\n if (props.readonly || pickerDisabled.value || pickerVisible.value) return\n pickerVisible.value = true\n ctx.emit('focus', e)\n }\n\n const handleBlur = () => {\n pickerVisible.value = false\n blurInput()\n }\n\n const pickerDisabled = computed(() => {\n return props.disabled || elForm.disabled\n })\n\n const parsedValue = computed(() => {\n let result\n if (valueIsEmpty.value) {\n if (pickerOptions.value.getDefaultValue) {\n result = pickerOptions.value.getDefaultValue()\n }\n } else {\n if (Array.isArray(props.modelValue)) {\n result = props.modelValue.map((_) =>\n parser(_, props.valueFormat, lang.value)\n )\n } else {\n result = parser(props.modelValue, props.valueFormat, lang.value)\n }\n }\n\n if (pickerOptions.value.getRangeAvailableTime) {\n const availableResult =\n pickerOptions.value.getRangeAvailableTime(result)\n if (!isEqual(availableResult, result)) {\n result = availableResult\n emitInput(\n Array.isArray(result)\n ? result.map((_) => _.toDate())\n : result.toDate()\n )\n }\n }\n if (Array.isArray(result) && result.some((_) => !_)) {\n result = []\n }\n return result\n })\n\n const displayValue = computed(() => {\n if (!pickerOptions.value.panelReady) return\n const formattedValue = formatDayjsToString(parsedValue.value)\n if (Array.isArray(userInput.value)) {\n return [\n userInput.value[0] || (formattedValue && formattedValue[0]) || '',\n userInput.value[1] || (formattedValue && formattedValue[1]) || '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (!isTimePicker.value && valueIsEmpty.value) return\n if (!pickerVisible.value && valueIsEmpty.value) return\n if (formattedValue) {\n return isDatesPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n })\n\n const isTimeLikePicker = computed(() => props.type.includes('time'))\n\n const isTimePicker = computed(() => props.type.startsWith('time'))\n\n const isDatesPicker = computed(() => props.type === 'dates')\n\n const triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n )\n\n const showClose = ref(false)\n\n const onClearIconClick = (event) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClose.value) {\n event.stopPropagation()\n emitInput(null)\n emitChange(null, true)\n showClose.value = false\n pickerVisible.value = false\n pickerOptions.value.handleClear && pickerOptions.value.handleClear()\n }\n }\n const valueIsEmpty = computed(() => {\n return (\n !props.modelValue ||\n (Array.isArray(props.modelValue) && !props.modelValue.length)\n )\n })\n const onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n showClose.value = true\n }\n }\n const onMouseLeave = () => {\n showClose.value = false\n }\n const isRangeInput = computed(() => {\n return props.type.indexOf('range') > -1\n })\n\n const pickerSize = useSize()\n\n const popperPaneRef = computed(() => {\n return refPopper.value?.popperRef\n })\n\n const onClickOutside = () => {\n if (!pickerVisible.value) return\n pickerVisible.value = false\n }\n\n const userInput = ref(null)\n\n const handleChange = () => {\n if (userInput.value) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(\n Array.isArray(value)\n ? value.map((_) => _.toDate())\n : value.toDate()\n )\n userInput.value = null\n }\n }\n }\n if (userInput.value === '') {\n emitInput(null)\n emitChange(null)\n userInput.value = null\n }\n }\n\n const blurInput = () => {\n refInput.value.forEach((input) => input.blur())\n }\n\n const parseUserInputToDayjs = (value) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput(value)\n }\n\n const formatDayjsToString = (value) => {\n if (!value) return null\n return pickerOptions.value.formatToString(value)\n }\n\n const isValidValue = (value) => {\n return pickerOptions.value.isValidValue(value)\n }\n\n const handleKeydown = (event) => {\n const code = event.code\n\n if (code === EVENT_CODE.esc) {\n pickerVisible.value = false\n event.stopPropagation()\n return\n }\n\n if (code === EVENT_CODE.tab) {\n if (!isRangeInput.value) {\n handleChange()\n pickerVisible.value = false\n event.stopPropagation()\n } else {\n // user may change focus between two input\n setTimeout(() => {\n if (refInput.value.indexOf(document.activeElement) === -1) {\n pickerVisible.value = false\n blurInput()\n }\n }, 0)\n }\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value))\n ) {\n handleChange()\n pickerVisible.value = false\n }\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n\n if (pickerOptions.value.handleKeydown) {\n pickerOptions.value.handleKeydown(event)\n }\n }\n const onUserInput = (e) => {\n userInput.value = e\n }\n\n const handleStartInput = (event) => {\n if (userInput.value) {\n userInput.value = [event.target.value, userInput.value[1]]\n } else {\n userInput.value = [event.target.value, null]\n }\n }\n\n const handleEndInput = (event) => {\n if (userInput.value) {\n userInput.value = [userInput.value[0], event.target.value]\n } else {\n userInput.value = [null, event.target.value]\n }\n }\n\n const handleStartChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[0])\n if (value && value.isValid()) {\n userInput.value = [formatDayjsToString(value), displayValue.value[1]]\n const newValue = [value, parsedValue.value && parsedValue.value[1]]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const handleEndChange = () => {\n const value = parseUserInputToDayjs(userInput.value && userInput.value[1])\n if (value && value.isValid()) {\n userInput.value = [displayValue.value[0], formatDayjsToString(value)]\n const newValue = [parsedValue.value && parsedValue.value[0], value]\n if (isValidValue(newValue)) {\n emitInput(newValue)\n userInput.value = null\n }\n }\n }\n\n const pickerOptions = ref<Partial<PickerOptions>>({})\n const onSetPickerOption = <T extends keyof PickerOptions>(\n e: [T, PickerOptions[T]]\n ) => {\n pickerOptions.value[e[0]] = e[1]\n pickerOptions.value.panelReady = true\n }\n\n const onCalendarChange = (e) => {\n ctx.emit('calendar-change', e)\n }\n\n provide('EP_PICKER_BASE', {\n props,\n })\n\n return {\n Effect,\n\n // injected popper options\n elPopperOptions,\n\n isDatesPicker,\n handleEndChange,\n handleStartChange,\n handleStartInput,\n handleEndInput,\n onUserInput,\n handleChange,\n handleKeydown,\n popperPaneRef,\n onClickOutside,\n pickerSize,\n isRangeInput,\n onMouseLeave,\n onMouseEnter,\n onClearIconClick,\n showClose,\n triggerIcon,\n onPick,\n handleFocus,\n handleBlur,\n pickerVisible,\n pickerActualVisible,\n displayValue,\n parsedValue,\n setSelectionRange,\n refPopper,\n pickerDisabled,\n onSetPickerOption,\n onCalendarChange,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_mergeProps","_createElementBlock","_createElementVNode","_renderSlot"],"mappings":";;;qBA4FgB,OAAM;;;;;;;sBA3FpBA,kCAAAC;IACE,KAAI;AAAA,IACI,SAAS;gEAAA;IACjB,eAAA;AAAA,IACC,QAAQ,YAAO;AAAA,IAChB,MAAA;AAAA,IACA,SAAQ;AAAA,KACA;IACP,qCAAmC;IACnC,kBAAgB;IAChB,uBAAqB;IACtB,YAAW;AAAA,IACV,oBAAkB;AAAA,IAClB,2BAAyB;AAAA,IAC1B,kBAAA;AAAA,IACC,uDAAc;IACd,sDAAa;;IAEH,iBACT;OACS,iDADTD;;QAGG,eAAa;QACb,MAAM;QACN,MAAM;QACN,UAAU;QACV,aAAa;QACd,uBAAM,uCACuB;QAC5B,WAAW,iBAAY,iBAAY,sBAAiB;QACpD,SAAO;QACP,SAAO;QACP,WAAS;QACT,UAAQ;QACR,cAAY;QACZ,cAAY;;QAEF,gBACT;UACQ,iCADRA;;YAEE,OAAM;AAAA,YACL,SAAO;;6BAER;4BAAAA,oCAAgB;;;;;QAGT,gBACT;UACQ,kBAAa,+BADrBA;;YAEE,OAAM;AAAA,YACL,SAAO;;6BAER;4BAAAA,oCAAgB;;;;;;;kCA/BY,qBAAjB;wCAmCjBE;;QAGE,uBAAM;;;;;;QAOL,gDAAO;QACP,qDAAY;QACZ,qDAAY;QACZ,kDAAS;;QAGF,iCADRF;;UAEE,OAAM;AAAA,UACL,SAAO;;2BAER;0BAAAA,oCAAgB;;;;QAElBG;UACE,cAAa;AAAA,UACZ,MAAM,aAAQ;UACd,aAAa;UACb,OAAO,qBAAgB;UACvB,UAAU;UACV,WAAW,iBAAY;UACxB,OAAM;AAAA,UACL,gDAAO;UACP,iDAAQ;UACR,gDAAO;;QAEVC,+CAAA;UACED,2BAAA,4BAAoC;;QAEtCA;UACE,cAAa;AAAA,UACZ,MAAM,aAAQ;UACd,aAAa;UACb,OAAO,qBAAgB;UACvB,UAAU;UACV,WAAW,iBAAY;UACxB,OAAM;AAAA,UACL,gDAAO;UACP,gDAAO;UACP,iDAAQ;;QAGH,+BADRH;;UAEE,uBAAM;;;UAIL,SAAO;;2BAER;0BAAAA,oCAAgB;;;;;kCAvDc,qBAAjB;;;IA2DR,iBACT;MAAAI;QACG,SAAS;QACT,eAAgB;QAChB,aAAc;QACd,QAAQ;QACR,cAAe;QACf,MAAM;QACN,cAAe;QACf,iDAAM;QACN,wDAAc;QACd,4DAAmB;QACnB,2DAAiB;QACjB,uDAAD;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"props.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/props.ts"],"sourcesContent":["import { isValidComponentSize } from '@element-plus/utils/validators'\nimport { CircleClose } from '@element-plus/icons'\n\nimport type { PropType, Component } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { ComponentSize } from '@element-plus/utils/types'\n\nexport const timePickerDefaultProps = {\n name: {\n type: [Array, String],\n default: '',\n },\n popperClass: {\n type: String,\n default: '',\n },\n format: {\n type: String,\n },\n valueFormat: {\n type: String as PropType<string>,\n },\n type: {\n type: String,\n default: '',\n },\n clearable: {\n type: Boolean,\n default: true,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n editable: {\n type: Boolean,\n default: true,\n },\n prefixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: '',\n },\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n placeholder: {\n type: String,\n default: '',\n },\n popperOptions: {\n type: Object as PropType<Partial<Options>>,\n default: () => ({}),\n },\n modelValue: {\n type: [Date, Array, String] as PropType<string | Date | Date[]>,\n default: '',\n },\n rangeSeparator: {\n type: String,\n default: '-',\n },\n startPlaceholder: String,\n endPlaceholder: String,\n defaultValue: {\n type: [Date, Array] as PropType<Date | Date[]>,\n },\n defaultTime: {\n type: [Date, Array] as PropType<Date | Date[]>,\n },\n isRange: {\n type: Boolean,\n default: false,\n },\n disabledHours: {\n type: Function,\n },\n disabledMinutes: {\n type: Function,\n },\n disabledSeconds: {\n type: Function,\n },\n disabledDate: {\n type: Function,\n },\n cellClassName: {\n type: Function,\n },\n shortcuts: {\n type: Array,\n default: () => [],\n },\n arrowControl: {\n type: Boolean,\n default: false,\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n unlinkPanels: Boolean,\n}\n"],"names":[],"mappings":";;;MAOa,yBAAyB;AAAA,EACpC,MAAM;AAAA,IACJ,MAAM,CAAC,OAAO;AAAA,IACd,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,QAAQ;AAAA,IACN,MAAM;AAAA;AAAA,EAER,aAAa;AAAA,IACX,MAAM;AAAA;AAAA,EAER,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM,CAAC,QAAQ;AAAA,IACf,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,CAAC,QAAQ;AAAA,IACf,SAAS;AAAA;AAAA,EAEX,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,WAAW;AAAA;AAAA,EAEb,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAO;AAAA,EAElB,YAAY;AAAA,IACV,MAAM,CAAC,MAAM,OAAO;AAAA,IACpB,SAAS;AAAA;AAAA,EAEX,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,kBAAkB;AAAA,EAClB,gBAAgB;AAAA,EAChB,cAAc;AAAA,IACZ,MAAM,CAAC,MAAM;AAAA;AAAA,EAEf,aAAa;AAAA,IACX,MAAM,CAAC,MAAM;AAAA;AAAA,EAEf,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA;AAAA,EAER,iBAAiB;AAAA,IACf,MAAM;AAAA;AAAA,EAER,iBAAiB;AAAA,IACf,MAAM;AAAA;AAAA,EAER,cAAc;AAAA,IACZ,MAAM;AAAA;AAAA,EAER,eAAe;AAAA,IACb,MAAM;AAAA;AAAA,EAER,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS,MAAM;AAAA;AAAA,EAEjB,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"props.mjs","sources":["../../../../../../../packages/components/time-picker/src/common/props.ts"],"sourcesContent":["import { isValidComponentSize } from '@element-plus/utils/validators'\nimport { CircleClose } from '@element-plus/icons-vue'\n\nimport type { PropType, Component } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { ComponentSize } from '@element-plus/utils/types'\n\nexport const timePickerDefaultProps = {\n name: {\n type: [Array, String],\n default: '',\n },\n popperClass: {\n type: String,\n default: '',\n },\n format: {\n type: String,\n },\n valueFormat: {\n type: String as PropType<string>,\n },\n type: {\n type: String,\n default: '',\n },\n clearable: {\n type: Boolean,\n default: true,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n editable: {\n type: Boolean,\n default: true,\n },\n prefixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: '',\n },\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n placeholder: {\n type: String,\n default: '',\n },\n popperOptions: {\n type: Object as PropType<Partial<Options>>,\n default: () => ({}),\n },\n modelValue: {\n type: [Date, Array, String] as PropType<string | Date | (number | Date)[]>,\n default: '',\n },\n rangeSeparator: {\n type: String,\n default: '-',\n },\n startPlaceholder: String,\n endPlaceholder: String,\n defaultValue: {\n type: [Date, Array] as PropType<Date | Date[]>,\n },\n defaultTime: {\n type: [Date, Array] as PropType<Date | Date[]>,\n },\n isRange: {\n type: Boolean,\n default: false,\n },\n disabledHours: {\n type: Function,\n },\n disabledMinutes: {\n type: Function,\n },\n disabledSeconds: {\n type: Function,\n },\n disabledDate: {\n type: Function,\n },\n cellClassName: {\n type: Function,\n },\n shortcuts: {\n type: Array,\n default: () => [],\n },\n arrowControl: {\n type: Boolean,\n default: false,\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n unlinkPanels: Boolean,\n}\n"],"names":[],"mappings":";;;MAOa,yBAAyB;AAAA,EACpC,MAAM;AAAA,IACJ,MAAM,CAAC,OAAO;AAAA,IACd,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,QAAQ;AAAA,IACN,MAAM;AAAA;AAAA,EAER,aAAa;AAAA,IACX,MAAM;AAAA;AAAA,EAER,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM,CAAC,QAAQ;AAAA,IACf,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,YAAY;AAAA,IACV,MAAM,CAAC,QAAQ;AAAA,IACf,SAAS;AAAA;AAAA,EAEX,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,WAAW;AAAA;AAAA,EAEb,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,aAAa;AAAA,IACX,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAO;AAAA,EAElB,YAAY;AAAA,IACV,MAAM,CAAC,MAAM,OAAO;AAAA,IACpB,SAAS;AAAA;AAAA,EAEX,gBAAgB;AAAA,IACd,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,kBAAkB;AAAA,EAClB,gBAAgB;AAAA,EAChB,cAAc;AAAA,IACZ,MAAM,CAAC,MAAM;AAAA;AAAA,EAEf,aAAa;AAAA,IACX,MAAM,CAAC,MAAM;AAAA;AAAA,EAEf,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA;AAAA,EAER,iBAAiB;AAAA,IACf,MAAM;AAAA;AAAA,EAER,iBAAiB;AAAA,IACf,MAAM;AAAA;AAAA,EAER,cAAc;AAAA,IACZ,MAAM;AAAA;AAAA,EAER,eAAe;AAAA,IACb,MAAM;AAAA;AAAA,EAER,WAAW;AAAA,IACT,MAAM;AAAA,IACN,SAAS,MAAM;AAAA;AAAA,EAEjB,cAAc;AAAA,IACZ,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,eAAe;AAAA,IACb,MAAM;AAAA,IACN,SAAS;AAAA;AAAA,EAEX,cAAc;AAAA;;;;"}
|
|
@@ -3,7 +3,7 @@ import debounce from 'lodash/debounce';
|
|
|
3
3
|
import '../../../../directives/index.mjs';
|
|
4
4
|
import { ElScrollbar } from '../../../scrollbar/index.mjs';
|
|
5
5
|
import { ElIcon } from '../../../icon/index.mjs';
|
|
6
|
-
import { ArrowUp, ArrowDown } from '@element-plus/icons';
|
|
6
|
+
import { ArrowUp, ArrowDown } from '@element-plus/icons-vue';
|
|
7
7
|
import { getTimeLists } from './useTimePicker.mjs';
|
|
8
8
|
import RepeatClick from '../../../../directives/repeat-click/index.mjs';
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-time-spinner.vue_vue_type_script_lang.mjs","sources":["../../../../../../../packages/components/time-picker/src/time-picker-com/basic-time-spinner.vue"],"sourcesContent":["<template>\n <div class=\"el-time-spinner\" :class=\"{ 'has-seconds': showSeconds }\">\n <template v-if=\"!arrowControl\">\n <el-scrollbar\n v-for=\"item in spinnerItems\"\n :key=\"item\"\n :ref=\"getRefId(item)\"\n class=\"el-time-spinner__wrapper\"\n wrap-style=\"max-height: inherit;\"\n view-class=\"el-time-spinner__list\"\n noresize\n tag=\"ul\"\n @mouseenter=\"emitSelectRange(item)\"\n @mousemove=\"adjustCurrentSpinner(item)\"\n >\n <li\n v-for=\"(disabled, key) in listMap[item].value\"\n :key=\"key\"\n class=\"el-time-spinner__item\"\n :class=\"{ active: key === timePartsMap[item].value, disabled }\"\n @click=\"handleClick(item, { value: key, disabled })\"\n >\n <template v-if=\"item === 'hours'\">\n {{ ('0' + (amPmMode ? key % 12 || 12 : key)).slice(-2)\n }}{{ getAmPmFlag(key) }}\n </template>\n <template v-else>\n {{ ('0' + key).slice(-2) }}\n </template>\n </li>\n </el-scrollbar>\n </template>\n <template v-if=\"arrowControl\">\n <div\n v-for=\"item in spinnerItems\"\n :key=\"item\"\n class=\"el-time-spinner__wrapper is-arrow\"\n @mouseenter=\"emitSelectRange(item)\"\n >\n <el-icon\n v-repeat-click=\"onDecreaseClick\"\n class=\"el-time-spinner__arrow arrow-up\"\n >\n <arrow-up />\n </el-icon>\n <el-icon\n v-repeat-click=\"onIncreaseClick\"\n class=\"el-time-spinner__arrow arrow-down\"\n >\n <arrow-down />\n </el-icon>\n <ul class=\"el-time-spinner__list\">\n <li\n v-for=\"(time, key) in arrowListMap[item].value\"\n :key=\"key\"\n class=\"el-time-spinner__item\"\n :class=\"{\n active: time === timePartsMap[item].value,\n disabled: listMap[item].value[time],\n }\"\n >\n <template v-if=\"time\">\n <template v-if=\"item === 'hours'\">\n {{ ('0' + (amPmMode ? time % 12 || 12 : time)).slice(-2)\n }}{{ getAmPmFlag(time) }}\n </template>\n <template v-else>\n {{ ('0' + time).slice(-2) }}\n </template>\n </template>\n </li>\n </ul>\n </div>\n </template>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, nextTick, computed, onMounted, watch } from 'vue'\nimport debounce from 'lodash/debounce'\nimport { RepeatClick } from '@element-plus/directives'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElIcon from '@element-plus/components/icon'\nimport { ArrowUp, ArrowDown } from '@element-plus/icons'\nimport { getTimeLists } from './useTimePicker'\n\nimport type { PropType, Ref } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type { Nullable } from '@element-plus/utils/types'\n\nexport default defineComponent({\n directives: {\n repeatClick: RepeatClick,\n },\n\n components: {\n ElScrollbar,\n ElIcon,\n ArrowUp,\n ArrowDown,\n },\n\n props: {\n role: {\n type: String,\n required: true,\n },\n spinnerDate: {\n type: Object as PropType<Dayjs>,\n required: true,\n },\n showSeconds: {\n type: Boolean,\n default: true,\n },\n arrowControl: Boolean,\n amPmMode: {\n type: String,\n default: '', // 'a': am/pm; 'A': AM/PM\n },\n disabledHours: {\n type: Function,\n },\n disabledMinutes: {\n type: Function,\n },\n disabledSeconds: {\n type: Function,\n },\n },\n\n emits: ['change', 'select-range', 'set-option'],\n\n setup(props, ctx) {\n // data\n let isScrolling = false\n const debouncedResetScroll = debounce((type) => {\n isScrolling = false\n adjustCurrentSpinner(type)\n }, 200)\n const currentScrollbar = ref(null)\n const listHoursRef: Ref<Nullable<HTMLElement>> = ref(null)\n const listMinutesRef: Ref<Nullable<HTMLElement>> = ref(null)\n const listSecondsRef: Ref<Nullable<HTMLElement>> = ref(null)\n const listRefsMap = {\n hours: listHoursRef,\n minutes: listMinutesRef,\n seconds: listSecondsRef,\n }\n\n // computed\n const spinnerItems = computed(() => {\n const arr = ['hours', 'minutes', 'seconds']\n return props.showSeconds ? arr : arr.slice(0, 2)\n })\n const hours = computed(() => {\n return props.spinnerDate.hour()\n })\n const minutes = computed(() => {\n return props.spinnerDate.minute()\n })\n const seconds = computed(() => {\n return props.spinnerDate.second()\n })\n const timePartsMap = computed(() => ({\n hours,\n minutes,\n seconds,\n }))\n const hoursList = computed(() => {\n return getHoursList(props.role)\n })\n const minutesList = computed(() => {\n return getMinutesList(hours.value, props.role)\n })\n const secondsList = computed(() => {\n return getSecondsList(hours.value, minutes.value, props.role)\n })\n const listMap = computed(() => ({\n hours: hoursList,\n minutes: minutesList,\n seconds: secondsList,\n }))\n const arrowHourList = computed(() => {\n const hour = hours.value\n return [\n hour > 0 ? hour - 1 : undefined,\n hour,\n hour < 23 ? hour + 1 : undefined,\n ]\n })\n const arrowMinuteList = computed(() => {\n const minute = minutes.value\n return [\n minute > 0 ? minute - 1 : undefined,\n minute,\n minute < 59 ? minute + 1 : undefined,\n ]\n })\n const arrowSecondList = computed(() => {\n const second = seconds.value\n return [\n second > 0 ? second - 1 : undefined,\n second,\n second < 59 ? second + 1 : undefined,\n ]\n })\n const arrowListMap = computed(() => ({\n hours: arrowHourList,\n minutes: arrowMinuteList,\n seconds: arrowSecondList,\n }))\n const getAmPmFlag = (hour) => {\n const shouldShowAmPm = !!props.amPmMode\n if (!shouldShowAmPm) return ''\n const isCapital = props.amPmMode === 'A'\n // todo locale\n let content = hour < 12 ? ' am' : ' pm'\n if (isCapital) content = content.toUpperCase()\n return content\n }\n\n const emitSelectRange = (type) => {\n if (type === 'hours') {\n ctx.emit('select-range', 0, 2)\n } else if (type === 'minutes') {\n ctx.emit('select-range', 3, 5)\n } else if (type === 'seconds') {\n ctx.emit('select-range', 6, 8)\n }\n currentScrollbar.value = type\n }\n\n const adjustCurrentSpinner = (type) => {\n adjustSpinner(type, timePartsMap.value[type].value)\n }\n\n // NOTE: used by datetime / date-range panel\n // renamed from adjustScrollTop\n // should try to refactory it\n const adjustSpinners = () => {\n adjustCurrentSpinner('hours')\n adjustCurrentSpinner('minutes')\n adjustCurrentSpinner('seconds')\n }\n\n const adjustSpinner = (type, value) => {\n if (props.arrowControl) return\n const el = listRefsMap[type]\n if (el.value) {\n el.value.$el.querySelector('.el-scrollbar__wrap').scrollTop = Math.max(\n 0,\n value * typeItemHeight(type)\n )\n }\n }\n\n const typeItemHeight = (type) => {\n const el = listRefsMap[type]\n return el.value.$el.querySelector('li').offsetHeight\n }\n\n const onIncreaseClick = () => {\n scrollDown(1)\n }\n\n const onDecreaseClick = () => {\n scrollDown(-1)\n }\n\n const scrollDown = (step) => {\n if (!currentScrollbar.value) {\n emitSelectRange('hours')\n }\n\n const label = currentScrollbar.value\n let now = timePartsMap.value[label].value\n const total = currentScrollbar.value === 'hours' ? 24 : 60\n now = (now + step + total) % total\n\n modifyDateField(label, now)\n adjustSpinner(label, now)\n nextTick(() => emitSelectRange(currentScrollbar.value))\n }\n\n const modifyDateField = (type, value) => {\n const list = listMap.value[type].value\n const isDisabled = list[value]\n if (isDisabled) return\n switch (type) {\n case 'hours':\n ctx.emit(\n 'change',\n props.spinnerDate\n .hour(value)\n .minute(minutes.value)\n .second(seconds.value)\n )\n break\n case 'minutes':\n ctx.emit(\n 'change',\n props.spinnerDate\n .hour(hours.value)\n .minute(value)\n .second(seconds.value)\n )\n break\n case 'seconds':\n ctx.emit(\n 'change',\n props.spinnerDate\n .hour(hours.value)\n .minute(minutes.value)\n .second(value)\n )\n break\n }\n }\n\n const handleClick = (type, { value, disabled }) => {\n if (!disabled) {\n modifyDateField(type, value)\n emitSelectRange(type)\n adjustSpinner(type, value)\n }\n }\n\n const handleScroll = (type) => {\n isScrolling = true\n debouncedResetScroll(type)\n const value = Math.min(\n Math.round(\n (listRefsMap[type].value.$el.querySelector('.el-scrollbar__wrap')\n .scrollTop -\n (scrollBarHeight(type) * 0.5 - 10) / typeItemHeight(type) +\n 3) /\n typeItemHeight(type)\n ),\n type === 'hours' ? 23 : 59\n )\n modifyDateField(type, value)\n }\n\n const scrollBarHeight = (type) => {\n return listRefsMap[type].value.$el.offsetHeight\n }\n\n const bindScrollEvent = () => {\n const bindFuntion = (type) => {\n if (listRefsMap[type].value) {\n listRefsMap[type].value.$el.querySelector(\n '.el-scrollbar__wrap'\n ).onscroll = () => {\n // TODO: scroll is emitted when set scrollTop programatically\n // should find better solutions in the future!\n handleScroll(type)\n }\n }\n }\n bindFuntion('hours')\n bindFuntion('minutes')\n bindFuntion('seconds')\n }\n\n onMounted(() => {\n nextTick(() => {\n !props.arrowControl && bindScrollEvent()\n adjustSpinners()\n // set selection on the first hour part\n if (props.role === 'start') emitSelectRange('hours')\n })\n })\n\n const getRefId = (item) => {\n return `list${item.charAt(0).toUpperCase() + item.slice(1)}Ref`\n }\n\n ctx.emit('set-option', [`${props.role}_scrollDown`, scrollDown])\n ctx.emit('set-option', [`${props.role}_emitSelectRange`, emitSelectRange])\n\n const { getHoursList, getMinutesList, getSecondsList } = getTimeLists(\n props.disabledHours,\n props.disabledMinutes,\n props.disabledSeconds\n )\n\n watch(\n () => props.spinnerDate,\n () => {\n if (isScrolling) return\n adjustSpinners()\n }\n )\n\n return {\n getRefId,\n spinnerItems,\n currentScrollbar,\n hours,\n minutes,\n seconds,\n hoursList,\n minutesList,\n arrowHourList,\n arrowMinuteList,\n arrowSecondList,\n getAmPmFlag,\n emitSelectRange,\n adjustCurrentSpinner,\n typeItemHeight,\n listHoursRef,\n listMinutesRef,\n listSecondsRef,\n onIncreaseClick,\n onDecreaseClick,\n handleClick,\n secondsList,\n timePartsMap,\n arrowListMap,\n listMap,\n }\n },\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"basic-time-spinner.vue_vue_type_script_lang.mjs","sources":["../../../../../../../packages/components/time-picker/src/time-picker-com/basic-time-spinner.vue"],"sourcesContent":["<template>\n <div class=\"el-time-spinner\" :class=\"{ 'has-seconds': showSeconds }\">\n <template v-if=\"!arrowControl\">\n <el-scrollbar\n v-for=\"item in spinnerItems\"\n :key=\"item\"\n :ref=\"getRefId(item)\"\n class=\"el-time-spinner__wrapper\"\n wrap-style=\"max-height: inherit;\"\n view-class=\"el-time-spinner__list\"\n noresize\n tag=\"ul\"\n @mouseenter=\"emitSelectRange(item)\"\n @mousemove=\"adjustCurrentSpinner(item)\"\n >\n <li\n v-for=\"(disabled, key) in listMap[item].value\"\n :key=\"key\"\n class=\"el-time-spinner__item\"\n :class=\"{ active: key === timePartsMap[item].value, disabled }\"\n @click=\"handleClick(item, { value: key, disabled })\"\n >\n <template v-if=\"item === 'hours'\">\n {{ ('0' + (amPmMode ? key % 12 || 12 : key)).slice(-2)\n }}{{ getAmPmFlag(key) }}\n </template>\n <template v-else>\n {{ ('0' + key).slice(-2) }}\n </template>\n </li>\n </el-scrollbar>\n </template>\n <template v-if=\"arrowControl\">\n <div\n v-for=\"item in spinnerItems\"\n :key=\"item\"\n class=\"el-time-spinner__wrapper is-arrow\"\n @mouseenter=\"emitSelectRange(item)\"\n >\n <el-icon\n v-repeat-click=\"onDecreaseClick\"\n class=\"el-time-spinner__arrow arrow-up\"\n >\n <arrow-up />\n </el-icon>\n <el-icon\n v-repeat-click=\"onIncreaseClick\"\n class=\"el-time-spinner__arrow arrow-down\"\n >\n <arrow-down />\n </el-icon>\n <ul class=\"el-time-spinner__list\">\n <li\n v-for=\"(time, key) in arrowListMap[item].value\"\n :key=\"key\"\n class=\"el-time-spinner__item\"\n :class=\"{\n active: time === timePartsMap[item].value,\n disabled: listMap[item].value[time],\n }\"\n >\n <template v-if=\"time\">\n <template v-if=\"item === 'hours'\">\n {{ ('0' + (amPmMode ? time % 12 || 12 : time)).slice(-2)\n }}{{ getAmPmFlag(time) }}\n </template>\n <template v-else>\n {{ ('0' + time).slice(-2) }}\n </template>\n </template>\n </li>\n </ul>\n </div>\n </template>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, nextTick, computed, onMounted, watch } from 'vue'\nimport debounce from 'lodash/debounce'\nimport { RepeatClick } from '@element-plus/directives'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElIcon from '@element-plus/components/icon'\nimport { ArrowUp, ArrowDown } from '@element-plus/icons-vue'\nimport { getTimeLists } from './useTimePicker'\n\nimport type { PropType, Ref } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type { Nullable } from '@element-plus/utils/types'\n\nexport default defineComponent({\n directives: {\n repeatClick: RepeatClick,\n },\n\n components: {\n ElScrollbar,\n ElIcon,\n ArrowUp,\n ArrowDown,\n },\n\n props: {\n role: {\n type: String,\n required: true,\n },\n spinnerDate: {\n type: Object as PropType<Dayjs>,\n required: true,\n },\n showSeconds: {\n type: Boolean,\n default: true,\n },\n arrowControl: Boolean,\n amPmMode: {\n type: String,\n default: '', // 'a': am/pm; 'A': AM/PM\n },\n disabledHours: {\n type: Function,\n },\n disabledMinutes: {\n type: Function,\n },\n disabledSeconds: {\n type: Function,\n },\n },\n\n emits: ['change', 'select-range', 'set-option'],\n\n setup(props, ctx) {\n // data\n let isScrolling = false\n const debouncedResetScroll = debounce((type) => {\n isScrolling = false\n adjustCurrentSpinner(type)\n }, 200)\n const currentScrollbar = ref(null)\n const listHoursRef: Ref<Nullable<HTMLElement>> = ref(null)\n const listMinutesRef: Ref<Nullable<HTMLElement>> = ref(null)\n const listSecondsRef: Ref<Nullable<HTMLElement>> = ref(null)\n const listRefsMap = {\n hours: listHoursRef,\n minutes: listMinutesRef,\n seconds: listSecondsRef,\n }\n\n // computed\n const spinnerItems = computed(() => {\n const arr = ['hours', 'minutes', 'seconds']\n return props.showSeconds ? arr : arr.slice(0, 2)\n })\n const hours = computed(() => {\n return props.spinnerDate.hour()\n })\n const minutes = computed(() => {\n return props.spinnerDate.minute()\n })\n const seconds = computed(() => {\n return props.spinnerDate.second()\n })\n const timePartsMap = computed(() => ({\n hours,\n minutes,\n seconds,\n }))\n const hoursList = computed(() => {\n return getHoursList(props.role)\n })\n const minutesList = computed(() => {\n return getMinutesList(hours.value, props.role)\n })\n const secondsList = computed(() => {\n return getSecondsList(hours.value, minutes.value, props.role)\n })\n const listMap = computed(() => ({\n hours: hoursList,\n minutes: minutesList,\n seconds: secondsList,\n }))\n const arrowHourList = computed(() => {\n const hour = hours.value\n return [\n hour > 0 ? hour - 1 : undefined,\n hour,\n hour < 23 ? hour + 1 : undefined,\n ]\n })\n const arrowMinuteList = computed(() => {\n const minute = minutes.value\n return [\n minute > 0 ? minute - 1 : undefined,\n minute,\n minute < 59 ? minute + 1 : undefined,\n ]\n })\n const arrowSecondList = computed(() => {\n const second = seconds.value\n return [\n second > 0 ? second - 1 : undefined,\n second,\n second < 59 ? second + 1 : undefined,\n ]\n })\n const arrowListMap = computed(() => ({\n hours: arrowHourList,\n minutes: arrowMinuteList,\n seconds: arrowSecondList,\n }))\n const getAmPmFlag = (hour) => {\n const shouldShowAmPm = !!props.amPmMode\n if (!shouldShowAmPm) return ''\n const isCapital = props.amPmMode === 'A'\n // todo locale\n let content = hour < 12 ? ' am' : ' pm'\n if (isCapital) content = content.toUpperCase()\n return content\n }\n\n const emitSelectRange = (type) => {\n if (type === 'hours') {\n ctx.emit('select-range', 0, 2)\n } else if (type === 'minutes') {\n ctx.emit('select-range', 3, 5)\n } else if (type === 'seconds') {\n ctx.emit('select-range', 6, 8)\n }\n currentScrollbar.value = type\n }\n\n const adjustCurrentSpinner = (type) => {\n adjustSpinner(type, timePartsMap.value[type].value)\n }\n\n // NOTE: used by datetime / date-range panel\n // renamed from adjustScrollTop\n // should try to refactory it\n const adjustSpinners = () => {\n adjustCurrentSpinner('hours')\n adjustCurrentSpinner('minutes')\n adjustCurrentSpinner('seconds')\n }\n\n const adjustSpinner = (type, value) => {\n if (props.arrowControl) return\n const el = listRefsMap[type]\n if (el.value) {\n el.value.$el.querySelector('.el-scrollbar__wrap').scrollTop = Math.max(\n 0,\n value * typeItemHeight(type)\n )\n }\n }\n\n const typeItemHeight = (type) => {\n const el = listRefsMap[type]\n return el.value.$el.querySelector('li').offsetHeight\n }\n\n const onIncreaseClick = () => {\n scrollDown(1)\n }\n\n const onDecreaseClick = () => {\n scrollDown(-1)\n }\n\n const scrollDown = (step) => {\n if (!currentScrollbar.value) {\n emitSelectRange('hours')\n }\n\n const label = currentScrollbar.value\n let now = timePartsMap.value[label].value\n const total = currentScrollbar.value === 'hours' ? 24 : 60\n now = (now + step + total) % total\n\n modifyDateField(label, now)\n adjustSpinner(label, now)\n nextTick(() => emitSelectRange(currentScrollbar.value))\n }\n\n const modifyDateField = (type, value) => {\n const list = listMap.value[type].value\n const isDisabled = list[value]\n if (isDisabled) return\n switch (type) {\n case 'hours':\n ctx.emit(\n 'change',\n props.spinnerDate\n .hour(value)\n .minute(minutes.value)\n .second(seconds.value)\n )\n break\n case 'minutes':\n ctx.emit(\n 'change',\n props.spinnerDate\n .hour(hours.value)\n .minute(value)\n .second(seconds.value)\n )\n break\n case 'seconds':\n ctx.emit(\n 'change',\n props.spinnerDate\n .hour(hours.value)\n .minute(minutes.value)\n .second(value)\n )\n break\n }\n }\n\n const handleClick = (type, { value, disabled }) => {\n if (!disabled) {\n modifyDateField(type, value)\n emitSelectRange(type)\n adjustSpinner(type, value)\n }\n }\n\n const handleScroll = (type) => {\n isScrolling = true\n debouncedResetScroll(type)\n const value = Math.min(\n Math.round(\n (listRefsMap[type].value.$el.querySelector('.el-scrollbar__wrap')\n .scrollTop -\n (scrollBarHeight(type) * 0.5 - 10) / typeItemHeight(type) +\n 3) /\n typeItemHeight(type)\n ),\n type === 'hours' ? 23 : 59\n )\n modifyDateField(type, value)\n }\n\n const scrollBarHeight = (type) => {\n return listRefsMap[type].value.$el.offsetHeight\n }\n\n const bindScrollEvent = () => {\n const bindFuntion = (type) => {\n if (listRefsMap[type].value) {\n listRefsMap[type].value.$el.querySelector(\n '.el-scrollbar__wrap'\n ).onscroll = () => {\n // TODO: scroll is emitted when set scrollTop programatically\n // should find better solutions in the future!\n handleScroll(type)\n }\n }\n }\n bindFuntion('hours')\n bindFuntion('minutes')\n bindFuntion('seconds')\n }\n\n onMounted(() => {\n nextTick(() => {\n !props.arrowControl && bindScrollEvent()\n adjustSpinners()\n // set selection on the first hour part\n if (props.role === 'start') emitSelectRange('hours')\n })\n })\n\n const getRefId = (item) => {\n return `list${item.charAt(0).toUpperCase() + item.slice(1)}Ref`\n }\n\n ctx.emit('set-option', [`${props.role}_scrollDown`, scrollDown])\n ctx.emit('set-option', [`${props.role}_emitSelectRange`, emitSelectRange])\n\n const { getHoursList, getMinutesList, getSecondsList } = getTimeLists(\n props.disabledHours,\n props.disabledMinutes,\n props.disabledSeconds\n )\n\n watch(\n () => props.spinnerDate,\n () => {\n if (isScrolling) return\n adjustSpinners()\n }\n )\n\n return {\n getRefId,\n spinnerItems,\n currentScrollbar,\n hours,\n minutes,\n seconds,\n hoursList,\n minutesList,\n arrowHourList,\n arrowMinuteList,\n arrowSecondList,\n getAmPmFlag,\n emitSelectRange,\n adjustCurrentSpinner,\n typeItemHeight,\n listHoursRef,\n listMinutesRef,\n listSecondsRef,\n onIncreaseClick,\n onDecreaseClick,\n handleClick,\n secondsList,\n timePartsMap,\n arrowListMap,\n listMap,\n }\n },\n})\n</script>\n"],"names":[],"mappings":"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"}
|