@element-plus/nightly 0.0.20260720 → 0.0.20260721
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/affix/src/affix.d.ts +1 -1
- package/es/components/affix/src/affix.vue.d.ts +3 -3
- package/es/components/alert/src/alert.d.ts +2 -2
- package/es/components/anchor/src/anchor.d.ts +1 -1
- package/es/components/anchor/src/anchor.vue.d.ts +2 -2
- package/es/components/autocomplete/src/autocomplete.d.ts +7 -108
- package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete.vue.d.ts +5 -5
- package/es/components/autocomplete/src/autocomplete.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
- package/es/components/avatar/src/avatar-group-props.d.ts +9 -106
- package/es/components/avatar/src/avatar-group-props.mjs +9 -1
- package/es/components/avatar/src/avatar-group-props.mjs.map +1 -1
- package/es/components/avatar/src/avatar-group.d.ts +20 -213
- package/es/components/avatar/src/avatar.d.ts +3 -3
- package/es/components/backtop/src/backtop.vue.d.ts +1 -1
- package/es/components/badge/src/badge.d.ts +4 -8
- package/es/components/badge/src/badge.mjs +9 -1
- package/es/components/badge/src/badge.mjs.map +1 -1
- package/es/components/badge/src/badge.vue.d.ts +3 -1
- package/es/components/badge/src/badge.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/badge/src/badge2.mjs.map +1 -1
- package/es/components/button/src/button-group.d.ts +2 -2
- package/es/components/button/src/button-group.vue.d.ts +1 -1
- package/es/components/button/src/button.d.ts +2 -2
- package/es/components/button/src/button.vue.d.ts +4 -4
- package/es/components/button/src/use-button.d.ts +2 -2
- package/es/components/calendar/src/calendar.mjs.map +1 -1
- package/es/components/calendar/src/calendar.vue.d.ts +1 -1
- package/es/components/calendar/style/css.mjs +1 -1
- package/es/components/calendar/style/index.mjs +1 -1
- package/es/components/card/src/card.d.ts +8 -7
- package/es/components/card/src/card.mjs +27 -3
- package/es/components/card/src/card.mjs.map +1 -1
- package/es/components/card/src/card.vue.d.ts +4 -0
- package/es/components/card/src/card.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/card/src/card2.mjs.map +1 -1
- package/es/components/carousel/src/carousel.d.ts +1 -1
- package/es/components/carousel/src/carousel.vue.d.ts +4 -4
- package/es/components/cascader/src/cascader.d.ts +9 -110
- package/es/components/cascader/src/cascader.mjs.map +1 -1
- package/es/components/cascader/src/cascader.vue.d.ts +22 -20
- package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/cascader/src/cascader2.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.vue.d.ts +4 -4
- package/es/components/cascader-panel/src/menu.vue.d.ts +1 -1
- package/es/components/check-tag/src/check-tag.d.ts +1 -1
- package/es/components/checkbox/src/checkbox-button.vue.d.ts +6 -6
- package/es/components/checkbox/src/checkbox-group.d.ts +1 -1
- package/es/components/checkbox/src/checkbox-group.vue.d.ts +5 -5
- package/es/components/checkbox/src/checkbox.d.ts +9 -9
- package/es/components/checkbox/src/checkbox.vue.d.ts +6 -6
- package/es/components/checkbox/src/composables/use-checkbox-status.d.ts +2 -2
- package/es/components/checkbox/src/composables/use-checkbox.d.ts +2 -2
- package/es/components/col/src/col.vue.d.ts +1 -1
- package/es/components/collapse/src/collapse-item.vue.d.ts +1 -1
- package/es/components/collapse/src/collapse.d.ts +1 -1
- package/es/components/collapse/src/collapse.vue.d.ts +1 -1
- package/es/components/color-picker/src/color-picker.d.ts +5 -104
- package/es/components/color-picker/src/color-picker.mjs +1 -0
- package/es/components/color-picker/src/color-picker.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker.vue.d.ts +12 -10
- package/es/components/color-picker-panel/src/color-picker-panel.d.ts +4 -10
- package/es/components/color-picker-panel/src/color-picker-panel.mjs +9 -5
- package/es/components/color-picker-panel/src/color-picker-panel.mjs.map +1 -1
- package/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts +4 -1
- package/es/components/color-picker-panel/src/color-picker-panel.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/color-picker-panel/src/color-picker-panel2.mjs.map +1 -1
- package/es/components/config-provider/src/config-provider-props.d.ts +1 -1
- package/es/components/config-provider/src/config-provider.d.ts +2 -2
- package/es/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
- package/es/components/date-picker/src/date-picker.d.ts +17 -217
- package/es/components/date-picker/src/props.d.ts +4 -104
- package/es/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +3 -3
- package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +2 -2
- package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +2 -2
- package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +2 -2
- package/es/components/date-picker-panel/src/date-picker-panel.d.ts +4 -4
- package/es/components/date-picker-panel/src/panel-utils.d.ts +21 -21
- package/es/components/date-picker-panel/src/props/basic-date-table.mjs.map +1 -1
- package/es/components/descriptions/src/description-item.d.ts +18 -18
- package/es/components/descriptions/src/description.d.ts +1 -1
- package/es/components/descriptions/src/description.vue.d.ts +2 -2
- package/es/components/dialog/src/dialog-content.d.ts +10 -6
- package/es/components/dialog/src/dialog-content.mjs +32 -5
- package/es/components/dialog/src/dialog-content.mjs.map +1 -1
- package/es/components/dialog/src/dialog-content.vue.d.ts +5 -1
- package/es/components/dialog/src/dialog.d.ts +10 -5
- package/es/components/dialog/src/dialog.mjs +11 -14
- package/es/components/dialog/src/dialog.mjs.map +1 -1
- package/es/components/dialog/src/dialog.vue.d.ts +9 -4
- package/es/components/divider/src/divider.d.ts +1 -1
- package/es/components/divider/src/divider.vue.d.ts +1 -1
- package/es/components/drawer/src/drawer.d.ts +5 -4
- package/es/components/drawer/src/drawer.vue.d.ts +12 -7
- package/es/components/dropdown/src/dropdown-item-impl.vue.d.ts +2 -2
- package/es/components/dropdown/src/dropdown-item.vue.d.ts +5 -5
- package/es/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
- package/es/components/dropdown/src/dropdown.d.ts +5 -106
- package/es/components/dropdown/src/dropdown.vue.d.ts +115 -313
- package/es/components/dropdown/style/css.mjs +1 -1
- package/es/components/dropdown/style/index.mjs +1 -1
- package/es/components/form/src/form-item.d.ts +3 -3
- package/es/components/form/src/form-item.vue.d.ts +2 -2
- package/es/components/form/src/form.d.ts +4 -4
- package/es/components/form/src/hooks/use-form-common-props.d.ts +2 -2
- package/es/components/image/src/image.d.ts +1 -1
- package/es/components/image/src/image.mjs.map +1 -1
- package/es/components/image/src/image.vue.d.ts +4 -4
- package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer.vue.d.ts +4 -4
- package/es/components/input/src/input.d.ts +4 -4
- package/es/components/input/src/input.vue.d.ts +19 -19
- package/es/components/input-number/src/input-number.d.ts +3 -3
- package/es/components/input-number/src/input-number.vue.d.ts +10 -10
- package/es/components/input-otp/src/input-otp.vue.d.ts +7 -7
- package/es/components/input-tag/src/composables/use-input-tag.d.ts +1 -1
- package/es/components/input-tag/src/input-tag.d.ts +3 -3
- package/es/components/input-tag/src/input-tag.vue.d.ts +12 -12
- package/es/components/link/src/link.d.ts +2 -2
- package/es/components/link/src/link.mjs.map +1 -1
- package/es/components/mention/src/mention.d.ts +7 -108
- package/es/components/mention/src/mention.vue.d.ts +5 -5
- package/es/components/mention/src/mention.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/mention/src/mention2.mjs.map +1 -1
- package/es/components/menu/src/menu.d.ts +13 -25
- package/es/components/menu/src/menu.mjs +18 -2
- package/es/components/menu/src/menu.mjs.map +1 -1
- package/es/components/menu/src/sub-menu.d.ts +11 -23
- package/es/components/menu/src/sub-menu.mjs +18 -2
- package/es/components/menu/src/sub-menu.mjs.map +1 -1
- package/es/components/message/src/instance.d.ts +1 -1
- package/es/components/message/src/message.d.ts +5 -5
- package/es/components/message/src/message.mjs +6 -1
- package/es/components/message/src/message.mjs.map +1 -1
- package/es/components/message/src/message.vue.d.ts +7 -6
- package/es/components/message/src/method.mjs.map +1 -1
- package/es/components/message-box/src/index.vue.d.ts +73 -81
- package/es/components/notification/src/notification.d.ts +4 -3
- package/es/components/notification/src/notification.mjs +6 -1
- package/es/components/notification/src/notification.mjs.map +1 -1
- package/es/components/notification/src/notification.vue.d.ts +5 -4
- package/es/components/overlay/index.d.ts +4 -12
- package/es/components/overlay/src/overlay.d.ts +5 -18
- package/es/components/overlay/src/overlay.mjs +9 -5
- package/es/components/overlay/src/overlay.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper.d.ts +1 -1
- package/es/components/pagination/src/components/jumper.vue.d.ts +2 -2
- package/es/components/pagination/src/components/sizes.d.ts +5 -14
- package/es/components/pagination/src/components/sizes.mjs +18 -2
- package/es/components/pagination/src/components/sizes.mjs.map +1 -1
- package/es/components/pagination/src/components/sizes.vue.d.ts +10 -27
- package/es/components/pagination/src/pagination.d.ts +16 -29
- package/es/components/pagination/src/pagination.mjs +15 -2
- package/es/components/pagination/src/pagination.mjs.map +1 -1
- package/es/components/popconfirm/src/popconfirm.d.ts +2 -2
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +5 -5
- package/es/components/popover/src/popover.d.ts +5 -105
- package/es/components/popover/src/popover.mjs +1 -0
- package/es/components/popover/src/popover.mjs.map +1 -1
- package/es/components/popover/src/popover.vue.d.ts +14 -13
- package/es/components/popper/src/composables/use-content-dom.d.ts +2 -25
- package/es/components/popper/src/composables/use-content.d.ts +4 -4
- package/es/components/popper/src/content.d.ts +8 -18
- package/es/components/popper/src/content.mjs +13 -7
- package/es/components/popper/src/content.mjs.map +1 -1
- package/es/components/popper/src/content.vue.d.ts +19 -17
- package/es/components/popper/src/popper.d.ts +2 -2
- package/es/components/popper/src/popper.mjs.map +1 -1
- package/es/components/progress/src/progress.d.ts +1 -1
- package/es/components/progress/src/progress.vue.d.ts +2 -2
- package/es/components/radio/src/radio-button.d.ts +4 -4
- package/es/components/radio/src/radio-button.vue.d.ts +2 -2
- package/es/components/radio/src/radio-group.d.ts +1 -1
- package/es/components/radio/src/radio-group.vue.d.ts +6 -6
- package/es/components/radio/src/radio.d.ts +8 -8
- package/es/components/radio/src/radio.vue.d.ts +4 -4
- package/es/components/radio/src/use-radio.d.ts +1 -1
- package/es/components/rate/src/rate.d.ts +1 -1
- package/es/components/rate/src/rate.vue.d.ts +3 -3
- package/es/components/rate/src/rate.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/rate/src/rate2.mjs.map +1 -1
- package/es/components/result/src/result.d.ts +1 -1
- package/es/components/result/src/result.vue.d.ts +1 -1
- package/es/components/row/src/row.d.ts +1 -1
- package/es/components/scrollbar/src/scrollbar.d.ts +5 -4
- package/es/components/scrollbar/src/scrollbar.mjs +12 -2
- package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar.vue.d.ts +5 -4
- package/es/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
- package/es/components/segmented/index.d.ts +2 -2
- package/es/components/segmented/src/segmented.d.ts +2 -2
- package/es/components/segmented/src/segmented.vue.d.ts +1 -1
- package/es/components/select/src/option.d.ts +2 -2
- package/es/components/select/src/option.vue.d.ts +5 -5
- package/es/components/select/src/select-dropdown.vue.d.ts +2 -1
- package/es/components/select/src/select.d.ts +12 -16
- package/es/components/select/src/select.mjs +15 -2
- package/es/components/select/src/select.mjs.map +1 -1
- package/es/components/select/src/select.vue.d.ts +137 -143
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/select/src/select2.mjs.map +1 -1
- package/es/components/select/src/useOption.d.ts +2 -2
- package/es/components/select/src/useSelect.d.ts +7 -7
- package/es/components/select/src/useSelect.mjs.map +1 -1
- package/es/components/select-v2/src/defaults.d.ts +6 -106
- package/es/components/select-v2/src/option-item.vue.d.ts +1 -1
- package/es/components/select-v2/src/select.vue.d.ts +110 -308
- package/es/components/select-v2/src/useSelect.d.ts +2 -2
- package/es/components/skeleton/src/skeleton-item.d.ts +1 -1
- package/es/components/skeleton/src/skeleton.vue.d.ts +1 -1
- package/es/components/slider/src/button.d.ts +2 -1
- package/es/components/slider/src/button.mjs +10 -2
- package/es/components/slider/src/button.mjs.map +1 -1
- package/es/components/slider/src/button.vue.d.ts +6 -4
- package/es/components/slider/src/composables/use-marks.mjs.map +1 -1
- package/es/components/slider/src/slider.d.ts +4 -4
- package/es/components/slider/src/slider.mjs +6 -1
- package/es/components/slider/src/slider.mjs.map +1 -1
- package/es/components/slider/src/slider.vue.d.ts +16 -16
- package/es/components/space/src/space.d.ts +10 -10
- package/es/components/space/src/space.mjs +2 -1
- package/es/components/space/src/space.mjs.map +1 -1
- package/es/components/space/src/use-space.d.ts +2 -3
- package/es/components/splitter/src/split-bar.vue.d.ts +1 -1
- package/es/components/statistic/src/statistic.vue.d.ts +2 -2
- package/es/components/steps/src/item.d.ts +1 -1
- package/es/components/steps/src/item.vue.d.ts +1 -1
- package/es/components/steps/src/steps.d.ts +2 -2
- package/es/components/steps/src/steps.vue.d.ts +1 -1
- package/es/components/switch/src/switch.d.ts +1 -1
- package/es/components/switch/src/switch.vue.d.ts +4 -4
- package/es/components/table/src/filter-panel.vue.d.ts +107 -104
- package/es/components/table/src/table/defaults.d.ts +6 -6
- package/es/components/table/src/table/defaults.mjs.map +1 -1
- package/es/components/table/src/table/style-helper.d.ts +2 -2
- package/es/components/table/src/table-body/events-helper.mjs.map +1 -1
- package/es/components/table/src/table-column/defaults.d.ts +4 -4
- package/es/components/table/src/table-footer/index.d.ts +1 -1
- package/es/components/table/src/table-header/index.d.ts +19 -19
- package/es/components/table/src/table.vue.d.ts +5 -5
- package/es/components/table-v2/src/components/header.d.ts +1 -1
- package/es/components/table-v2/src/components/row.d.ts +1 -1
- package/es/components/table-v2/src/table-grid.d.ts +4 -4
- package/es/components/table-v2/src/table-v2.d.ts +5 -5
- package/es/components/tabs/src/tab-nav.d.ts +1 -1
- package/es/components/tabs/src/tabs.d.ts +6 -6
- package/es/components/tag/src/tag.d.ts +3 -3
- package/es/components/tag/src/tag.vue.d.ts +2 -2
- package/es/components/text/src/text.d.ts +2 -2
- package/es/components/time-picker/src/common/picker-range-trigger.vue.d.ts +6 -6
- package/es/components/time-picker/src/common/picker.vue.d.ts +23 -223
- package/es/components/time-picker/src/common/props.d.ts +4 -104
- package/es/components/time-picker/src/time-picker.d.ts +17 -217
- package/es/components/time-select/src/time-select.d.ts +7 -11
- package/es/components/time-select/src/time-select.mjs +15 -2
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/time-select/src/time-select.vue.d.ts +11 -10
- package/es/components/timeline/src/timeline-item.d.ts +2 -2
- package/es/components/timeline/src/timeline-item.vue.d.ts +1 -1
- package/es/components/tooltip/src/content.d.ts +4 -199
- package/es/components/tooltip/src/content.vue.d.ts +18 -16
- package/es/components/tooltip/src/tooltip.d.ts +5 -202
- package/es/components/tooltip/src/tooltip.vue.d.ts +22 -21
- package/es/components/tooltip/src/trigger.d.ts +1 -1
- package/es/components/tour/src/content.d.ts +1 -1
- package/es/components/tour/src/content.vue.d.ts +1 -1
- package/es/components/tour/src/mask.vue.d.ts +1 -1
- package/es/components/tour/src/step.d.ts +1 -1
- package/es/components/tour/src/step.vue.d.ts +1 -1
- package/es/components/tour/src/tour.d.ts +1 -1
- package/es/components/tour/src/tour.vue.d.ts +7 -7
- package/es/components/transfer/src/transfer.vue.d.ts +1 -1
- package/es/components/tree/src/tree-node.vue.d.ts +18 -18
- package/es/components/tree/src/tree.vue.d.ts +22 -22
- package/es/components/tree-select/src/select.mjs +1 -5
- package/es/components/tree-select/src/select.mjs.map +1 -1
- package/es/components/tree-select/src/tree-select-option.d.ts +5 -5
- package/es/components/tree-select/src/tree-select.vue.d.ts +44 -52
- package/es/components/tree-v2/src/composables/useTree.d.ts +13 -12
- package/es/components/tree-v2/src/tree.vue.d.ts +5 -5
- package/es/components/upload/src/upload-content.d.ts +1 -1
- package/es/components/upload/src/upload-content.vue.d.ts +2 -2
- package/es/components/upload/src/upload-list.d.ts +1 -1
- package/es/components/upload/src/upload.d.ts +2 -2
- package/es/components/upload/src/upload.mjs.map +1 -1
- package/es/components/upload/src/upload.vue.d.ts +2 -2
- package/es/components/virtual-list/src/builders/build-grid.d.ts +5 -4
- package/es/components/virtual-list/src/builders/build-list.d.ts +7 -6
- package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +5 -4
- package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +7 -6
- package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +5 -4
- package/es/components/virtual-list/src/components/fixed-size-list.d.ts +7 -6
- package/es/components/virtual-list/src/components/scrollbar.d.ts +4 -2
- package/es/components/virtual-list/src/props.d.ts +5 -4
- package/es/components/virtual-list/src/props.mjs +15 -2
- package/es/components/virtual-list/src/props.mjs.map +1 -1
- package/es/components/watermark/src/watermark.mjs.map +1 -1
- package/es/components/watermark/src/watermark.vue.d.ts +1 -1
- package/es/hooks/use-floating/index.d.ts +12 -12
- package/es/hooks/use-popper/index.d.ts +4 -4
- package/es/hooks/use-size/index.d.ts +3 -3
- package/es/hooks/use-throttle-render/index.mjs.map +1 -1
- package/es/utils/index.d.ts +2 -2
- package/es/utils/typescript.d.ts +2 -1
- package/es/utils/typescript.mjs.map +1 -1
- package/es/utils/vue/size.d.ts +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/affix/src/affix.d.ts +1 -1
- package/lib/components/affix/src/affix.vue.d.ts +3 -3
- package/lib/components/alert/src/alert.d.ts +2 -2
- package/lib/components/anchor/src/anchor.d.ts +1 -1
- package/lib/components/anchor/src/anchor.vue.d.ts +2 -2
- package/lib/components/autocomplete/src/autocomplete.d.ts +7 -108
- package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
- package/lib/components/autocomplete/src/autocomplete.vue.d.ts +5 -5
- package/lib/components/autocomplete/src/autocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
- package/lib/components/avatar/src/avatar-group-props.d.ts +9 -106
- package/lib/components/avatar/src/avatar-group-props.js +9 -1
- package/lib/components/avatar/src/avatar-group-props.js.map +1 -1
- package/lib/components/avatar/src/avatar-group.d.ts +20 -213
- package/lib/components/avatar/src/avatar.d.ts +3 -3
- package/lib/components/backtop/src/backtop.vue.d.ts +1 -1
- package/lib/components/badge/src/badge.d.ts +4 -8
- package/lib/components/badge/src/badge.js +9 -1
- package/lib/components/badge/src/badge.js.map +1 -1
- package/lib/components/badge/src/badge.vue.d.ts +3 -1
- package/lib/components/badge/src/badge.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/badge/src/badge2.js.map +1 -1
- package/lib/components/button/src/button-group.d.ts +2 -2
- package/lib/components/button/src/button-group.vue.d.ts +1 -1
- package/lib/components/button/src/button.d.ts +2 -2
- package/lib/components/button/src/button.vue.d.ts +4 -4
- package/lib/components/button/src/use-button.d.ts +2 -2
- package/lib/components/calendar/src/calendar.js.map +1 -1
- package/lib/components/calendar/src/calendar.vue.d.ts +1 -1
- package/lib/components/calendar/style/css.js +1 -1
- package/lib/components/calendar/style/index.js +1 -1
- package/lib/components/card/src/card.d.ts +8 -7
- package/lib/components/card/src/card.js +27 -3
- package/lib/components/card/src/card.js.map +1 -1
- package/lib/components/card/src/card.vue.d.ts +4 -0
- package/lib/components/card/src/card.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/card/src/card2.js.map +1 -1
- package/lib/components/carousel/src/carousel.d.ts +1 -1
- package/lib/components/carousel/src/carousel.vue.d.ts +4 -4
- package/lib/components/cascader/src/cascader.d.ts +9 -110
- package/lib/components/cascader/src/cascader.js.map +1 -1
- package/lib/components/cascader/src/cascader.vue.d.ts +22 -20
- package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/cascader/src/cascader2.js.map +1 -1
- package/lib/components/cascader-panel/src/index.vue.d.ts +4 -4
- package/lib/components/cascader-panel/src/menu.vue.d.ts +1 -1
- package/lib/components/check-tag/src/check-tag.d.ts +1 -1
- package/lib/components/checkbox/src/checkbox-button.vue.d.ts +6 -6
- package/lib/components/checkbox/src/checkbox-group.d.ts +1 -1
- package/lib/components/checkbox/src/checkbox-group.vue.d.ts +5 -5
- package/lib/components/checkbox/src/checkbox.d.ts +9 -9
- package/lib/components/checkbox/src/checkbox.vue.d.ts +6 -6
- package/lib/components/checkbox/src/composables/use-checkbox-status.d.ts +2 -2
- package/lib/components/checkbox/src/composables/use-checkbox.d.ts +2 -2
- package/lib/components/col/src/col.vue.d.ts +1 -1
- package/lib/components/collapse/src/collapse-item.vue.d.ts +1 -1
- package/lib/components/collapse/src/collapse.d.ts +1 -1
- package/lib/components/collapse/src/collapse.vue.d.ts +1 -1
- package/lib/components/color-picker/src/color-picker.d.ts +5 -104
- package/lib/components/color-picker/src/color-picker.js +1 -0
- package/lib/components/color-picker/src/color-picker.js.map +1 -1
- package/lib/components/color-picker/src/color-picker.vue.d.ts +12 -10
- package/lib/components/color-picker-panel/src/color-picker-panel.d.ts +4 -10
- package/lib/components/color-picker-panel/src/color-picker-panel.js +9 -5
- package/lib/components/color-picker-panel/src/color-picker-panel.js.map +1 -1
- package/lib/components/color-picker-panel/src/color-picker-panel.vue.d.ts +4 -1
- package/lib/components/color-picker-panel/src/color-picker-panel.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/color-picker-panel/src/color-picker-panel2.js.map +1 -1
- package/lib/components/config-provider/src/config-provider-props.d.ts +1 -1
- package/lib/components/config-provider/src/config-provider.d.ts +2 -2
- package/lib/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
- package/lib/components/date-picker/src/date-picker.d.ts +17 -217
- package/lib/components/date-picker/src/props.d.ts +4 -104
- package/lib/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +3 -3
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +2 -2
- package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +2 -2
- package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +2 -2
- package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +4 -4
- package/lib/components/date-picker-panel/src/panel-utils.d.ts +21 -21
- package/lib/components/date-picker-panel/src/props/basic-date-table.js.map +1 -1
- package/lib/components/descriptions/src/description-item.d.ts +18 -18
- package/lib/components/descriptions/src/description.d.ts +1 -1
- package/lib/components/descriptions/src/description.vue.d.ts +2 -2
- package/lib/components/dialog/src/dialog-content.d.ts +10 -6
- package/lib/components/dialog/src/dialog-content.js +31 -4
- package/lib/components/dialog/src/dialog-content.js.map +1 -1
- package/lib/components/dialog/src/dialog-content.vue.d.ts +5 -1
- package/lib/components/dialog/src/dialog.d.ts +10 -5
- package/lib/components/dialog/src/dialog.js +11 -14
- package/lib/components/dialog/src/dialog.js.map +1 -1
- package/lib/components/dialog/src/dialog.vue.d.ts +9 -4
- package/lib/components/divider/src/divider.d.ts +1 -1
- package/lib/components/divider/src/divider.vue.d.ts +1 -1
- package/lib/components/drawer/src/drawer.d.ts +5 -4
- package/lib/components/drawer/src/drawer.vue.d.ts +12 -7
- package/lib/components/dropdown/src/dropdown-item-impl.vue.d.ts +2 -2
- package/lib/components/dropdown/src/dropdown-item.vue.d.ts +5 -5
- package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown.d.ts +5 -106
- package/lib/components/dropdown/src/dropdown.vue.d.ts +115 -313
- package/lib/components/dropdown/style/css.js +1 -1
- package/lib/components/dropdown/style/index.js +1 -1
- package/lib/components/form/src/form-item.d.ts +3 -3
- package/lib/components/form/src/form-item.vue.d.ts +2 -2
- package/lib/components/form/src/form.d.ts +4 -4
- package/lib/components/form/src/hooks/use-form-common-props.d.ts +2 -2
- package/lib/components/image/src/image.d.ts +1 -1
- package/lib/components/image/src/image.js.map +1 -1
- package/lib/components/image/src/image.vue.d.ts +4 -4
- package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer.vue.d.ts +4 -4
- package/lib/components/input/src/input.d.ts +4 -4
- package/lib/components/input/src/input.vue.d.ts +19 -19
- package/lib/components/input-number/src/input-number.d.ts +3 -3
- package/lib/components/input-number/src/input-number.vue.d.ts +10 -10
- package/lib/components/input-otp/src/input-otp.vue.d.ts +7 -7
- package/lib/components/input-tag/src/composables/use-input-tag.d.ts +1 -1
- package/lib/components/input-tag/src/input-tag.d.ts +3 -3
- package/lib/components/input-tag/src/input-tag.vue.d.ts +12 -12
- package/lib/components/link/src/link.d.ts +2 -2
- package/lib/components/link/src/link.js.map +1 -1
- package/lib/components/mention/src/mention.d.ts +7 -108
- package/lib/components/mention/src/mention.vue.d.ts +5 -5
- package/lib/components/mention/src/mention.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/mention/src/mention2.js.map +1 -1
- package/lib/components/menu/src/menu.d.ts +13 -25
- package/lib/components/menu/src/menu.js +18 -2
- package/lib/components/menu/src/menu.js.map +1 -1
- package/lib/components/menu/src/sub-menu.d.ts +11 -23
- package/lib/components/menu/src/sub-menu.js +18 -2
- package/lib/components/menu/src/sub-menu.js.map +1 -1
- package/lib/components/message/src/instance.d.ts +1 -1
- package/lib/components/message/src/message.d.ts +5 -5
- package/lib/components/message/src/message.js +6 -1
- package/lib/components/message/src/message.js.map +1 -1
- package/lib/components/message/src/message.vue.d.ts +7 -6
- package/lib/components/message/src/method.js.map +1 -1
- package/lib/components/message-box/src/index.vue.d.ts +73 -81
- package/lib/components/notification/src/notification.d.ts +4 -3
- package/lib/components/notification/src/notification.js +6 -1
- package/lib/components/notification/src/notification.js.map +1 -1
- package/lib/components/notification/src/notification.vue.d.ts +5 -4
- package/lib/components/overlay/index.d.ts +4 -12
- package/lib/components/overlay/src/overlay.d.ts +5 -18
- package/lib/components/overlay/src/overlay.js +9 -5
- package/lib/components/overlay/src/overlay.js.map +1 -1
- package/lib/components/pagination/src/components/jumper.d.ts +1 -1
- package/lib/components/pagination/src/components/jumper.vue.d.ts +2 -2
- package/lib/components/pagination/src/components/sizes.d.ts +5 -14
- package/lib/components/pagination/src/components/sizes.js +18 -2
- package/lib/components/pagination/src/components/sizes.js.map +1 -1
- package/lib/components/pagination/src/components/sizes.vue.d.ts +10 -27
- package/lib/components/pagination/src/pagination.d.ts +16 -29
- package/lib/components/pagination/src/pagination.js +15 -2
- package/lib/components/pagination/src/pagination.js.map +1 -1
- package/lib/components/popconfirm/src/popconfirm.d.ts +2 -2
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +5 -5
- package/lib/components/popover/src/popover.d.ts +5 -105
- package/lib/components/popover/src/popover.js +1 -0
- package/lib/components/popover/src/popover.js.map +1 -1
- package/lib/components/popover/src/popover.vue.d.ts +14 -13
- package/lib/components/popper/src/composables/use-content-dom.d.ts +2 -25
- package/lib/components/popper/src/composables/use-content.d.ts +4 -4
- package/lib/components/popper/src/content.d.ts +8 -18
- package/lib/components/popper/src/content.js +13 -7
- package/lib/components/popper/src/content.js.map +1 -1
- package/lib/components/popper/src/content.vue.d.ts +19 -17
- package/lib/components/popper/src/popper.d.ts +2 -2
- package/lib/components/popper/src/popper.js.map +1 -1
- package/lib/components/progress/src/progress.d.ts +1 -1
- package/lib/components/progress/src/progress.vue.d.ts +2 -2
- package/lib/components/radio/src/radio-button.d.ts +4 -4
- package/lib/components/radio/src/radio-button.vue.d.ts +2 -2
- package/lib/components/radio/src/radio-group.d.ts +1 -1
- package/lib/components/radio/src/radio-group.vue.d.ts +6 -6
- package/lib/components/radio/src/radio.d.ts +8 -8
- package/lib/components/radio/src/radio.vue.d.ts +4 -4
- package/lib/components/radio/src/use-radio.d.ts +1 -1
- package/lib/components/rate/src/rate.d.ts +1 -1
- package/lib/components/rate/src/rate.vue.d.ts +3 -3
- package/lib/components/rate/src/rate.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/rate/src/rate2.js.map +1 -1
- package/lib/components/result/src/result.d.ts +1 -1
- package/lib/components/result/src/result.vue.d.ts +1 -1
- package/lib/components/row/src/row.d.ts +1 -1
- package/lib/components/scrollbar/src/scrollbar.d.ts +5 -4
- package/lib/components/scrollbar/src/scrollbar.js +12 -2
- package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar.vue.d.ts +5 -4
- package/lib/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/scrollbar/src/thumb2.js.map +1 -1
- package/lib/components/segmented/index.d.ts +2 -2
- package/lib/components/segmented/src/segmented.d.ts +2 -2
- package/lib/components/segmented/src/segmented.vue.d.ts +1 -1
- package/lib/components/select/src/option.d.ts +2 -2
- package/lib/components/select/src/option.vue.d.ts +5 -5
- package/lib/components/select/src/select-dropdown.vue.d.ts +2 -1
- package/lib/components/select/src/select.d.ts +12 -16
- package/lib/components/select/src/select.js +15 -2
- package/lib/components/select/src/select.js.map +1 -1
- package/lib/components/select/src/select.vue.d.ts +137 -143
- package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/select/src/select2.js.map +1 -1
- package/lib/components/select/src/useOption.d.ts +2 -2
- package/lib/components/select/src/useSelect.d.ts +7 -7
- package/lib/components/select/src/useSelect.js.map +1 -1
- package/lib/components/select-v2/src/defaults.d.ts +6 -106
- package/lib/components/select-v2/src/option-item.vue.d.ts +1 -1
- package/lib/components/select-v2/src/select.vue.d.ts +110 -308
- package/lib/components/select-v2/src/useSelect.d.ts +2 -2
- package/lib/components/skeleton/src/skeleton-item.d.ts +1 -1
- package/lib/components/skeleton/src/skeleton.vue.d.ts +1 -1
- package/lib/components/slider/src/button.d.ts +2 -1
- package/lib/components/slider/src/button.js +9 -1
- package/lib/components/slider/src/button.js.map +1 -1
- package/lib/components/slider/src/button.vue.d.ts +6 -4
- package/lib/components/slider/src/composables/use-marks.js.map +1 -1
- package/lib/components/slider/src/slider.d.ts +4 -4
- package/lib/components/slider/src/slider.js +6 -1
- package/lib/components/slider/src/slider.js.map +1 -1
- package/lib/components/slider/src/slider.vue.d.ts +16 -16
- package/lib/components/space/src/space.d.ts +10 -10
- package/lib/components/space/src/space.js +2 -1
- package/lib/components/space/src/space.js.map +1 -1
- package/lib/components/space/src/use-space.d.ts +2 -3
- package/lib/components/splitter/src/split-bar.vue.d.ts +1 -1
- package/lib/components/statistic/src/statistic.vue.d.ts +2 -2
- package/lib/components/steps/src/item.d.ts +1 -1
- package/lib/components/steps/src/item.vue.d.ts +1 -1
- package/lib/components/steps/src/steps.d.ts +2 -2
- package/lib/components/steps/src/steps.vue.d.ts +1 -1
- package/lib/components/switch/src/switch.d.ts +1 -1
- package/lib/components/switch/src/switch.vue.d.ts +4 -4
- package/lib/components/table/src/filter-panel.vue.d.ts +107 -104
- package/lib/components/table/src/table/defaults.d.ts +6 -6
- package/lib/components/table/src/table/defaults.js.map +1 -1
- package/lib/components/table/src/table/style-helper.d.ts +2 -2
- package/lib/components/table/src/table-body/events-helper.js.map +1 -1
- package/lib/components/table/src/table-column/defaults.d.ts +4 -4
- package/lib/components/table/src/table-footer/index.d.ts +1 -1
- package/lib/components/table/src/table-header/index.d.ts +19 -19
- package/lib/components/table/src/table.vue.d.ts +5 -5
- package/lib/components/table-v2/src/components/header.d.ts +1 -1
- package/lib/components/table-v2/src/components/row.d.ts +1 -1
- package/lib/components/table-v2/src/table-grid.d.ts +4 -4
- package/lib/components/table-v2/src/table-v2.d.ts +5 -5
- package/lib/components/tabs/src/tab-nav.d.ts +1 -1
- package/lib/components/tabs/src/tabs.d.ts +6 -6
- package/lib/components/tag/src/tag.d.ts +3 -3
- package/lib/components/tag/src/tag.vue.d.ts +2 -2
- package/lib/components/text/src/text.d.ts +2 -2
- package/lib/components/time-picker/src/common/picker-range-trigger.vue.d.ts +6 -6
- package/lib/components/time-picker/src/common/picker.vue.d.ts +23 -223
- package/lib/components/time-picker/src/common/props.d.ts +4 -104
- package/lib/components/time-picker/src/time-picker.d.ts +17 -217
- package/lib/components/time-select/src/time-select.d.ts +7 -11
- package/lib/components/time-select/src/time-select.js +15 -2
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/time-select/src/time-select.vue.d.ts +11 -10
- package/lib/components/timeline/src/timeline-item.d.ts +2 -2
- package/lib/components/timeline/src/timeline-item.vue.d.ts +1 -1
- package/lib/components/tooltip/src/content.d.ts +4 -199
- package/lib/components/tooltip/src/content.vue.d.ts +18 -16
- package/lib/components/tooltip/src/tooltip.d.ts +5 -202
- package/lib/components/tooltip/src/tooltip.vue.d.ts +22 -21
- package/lib/components/tooltip/src/trigger.d.ts +1 -1
- package/lib/components/tour/src/content.d.ts +1 -1
- package/lib/components/tour/src/content.vue.d.ts +1 -1
- package/lib/components/tour/src/mask.vue.d.ts +1 -1
- package/lib/components/tour/src/step.d.ts +1 -1
- package/lib/components/tour/src/step.vue.d.ts +1 -1
- package/lib/components/tour/src/tour.d.ts +1 -1
- package/lib/components/tour/src/tour.vue.d.ts +7 -7
- package/lib/components/transfer/src/transfer.vue.d.ts +1 -1
- package/lib/components/tree/src/tree-node.vue.d.ts +18 -18
- package/lib/components/tree/src/tree.vue.d.ts +22 -22
- package/lib/components/tree-select/src/select.js +1 -5
- package/lib/components/tree-select/src/select.js.map +1 -1
- package/lib/components/tree-select/src/tree-select-option.d.ts +5 -5
- package/lib/components/tree-select/src/tree-select.vue.d.ts +44 -52
- package/lib/components/tree-v2/src/composables/useTree.d.ts +13 -12
- package/lib/components/tree-v2/src/tree.vue.d.ts +5 -5
- package/lib/components/upload/src/upload-content.d.ts +1 -1
- package/lib/components/upload/src/upload-content.vue.d.ts +2 -2
- package/lib/components/upload/src/upload-list.d.ts +1 -1
- package/lib/components/upload/src/upload.d.ts +2 -2
- package/lib/components/upload/src/upload.js.map +1 -1
- package/lib/components/upload/src/upload.vue.d.ts +2 -2
- package/lib/components/virtual-list/src/builders/build-grid.d.ts +5 -4
- package/lib/components/virtual-list/src/builders/build-list.d.ts +7 -6
- package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +5 -4
- package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +7 -6
- package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +5 -4
- package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +7 -6
- package/lib/components/virtual-list/src/components/scrollbar.d.ts +4 -2
- package/lib/components/virtual-list/src/props.d.ts +5 -4
- package/lib/components/virtual-list/src/props.js +15 -2
- package/lib/components/virtual-list/src/props.js.map +1 -1
- package/lib/components/watermark/src/watermark.js.map +1 -1
- package/lib/components/watermark/src/watermark.vue.d.ts +1 -1
- package/lib/hooks/use-floating/index.d.ts +12 -12
- package/lib/hooks/use-popper/index.d.ts +4 -4
- package/lib/hooks/use-size/index.d.ts +3 -3
- package/lib/hooks/use-throttle-render/index.js.map +1 -1
- package/lib/utils/index.d.ts +2 -2
- package/lib/utils/typescript.d.ts +2 -1
- package/lib/utils/typescript.js.map +1 -1
- package/lib/utils/vue/size.d.ts +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 +2 -2
- package/web-types.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { EpPropFinalized, EpPropMergeType } from "../../../utils/vue/props/types.js";
|
|
2
|
+
import { ClassValue } from "../../../utils/typescript.js";
|
|
2
3
|
import * as _$vue from "vue";
|
|
3
|
-
import {
|
|
4
|
+
import { ExtractPropTypes, ExtractPublicPropTypes, StyleValue } from "vue";
|
|
4
5
|
|
|
5
6
|
//#region ../../packages/components/menu/src/sub-menu.d.ts
|
|
6
7
|
declare const subMenuProps: {
|
|
@@ -12,13 +13,8 @@ declare const subMenuProps: {
|
|
|
12
13
|
};
|
|
13
14
|
readonly showTimeout: NumberConstructor;
|
|
14
15
|
readonly hideTimeout: NumberConstructor;
|
|
15
|
-
readonly popperClass:
|
|
16
|
-
readonly popperStyle:
|
|
17
|
-
readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => string | CSSProperties) | (() => string | CSSProperties) | (((new (...args: any[]) => string | CSSProperties) | (() => string | CSSProperties)) | null)[], unknown, unknown>>;
|
|
18
|
-
readonly required: false;
|
|
19
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
20
|
-
__epPropKey: true;
|
|
21
|
-
};
|
|
16
|
+
readonly popperClass: EpPropFinalized<(new (...args: any[]) => string | false | Record<string, any> | ClassValue[]) | (() => ClassValue) | (((new (...args: any[]) => string | false | Record<string, any> | ClassValue[]) | (() => ClassValue)) | null)[], unknown, unknown, undefined, boolean>;
|
|
17
|
+
readonly popperStyle: EpPropFinalized<(new (...args: any[]) => string | false | _$vue.CSSProperties | StyleValue[]) | (() => StyleValue) | (((new (...args: any[]) => string | false | _$vue.CSSProperties | StyleValue[]) | (() => StyleValue)) | null)[], unknown, unknown, undefined, boolean>;
|
|
22
18
|
readonly disabled: BooleanConstructor;
|
|
23
19
|
readonly teleported: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
24
20
|
readonly popperOffset: NumberConstructor;
|
|
@@ -58,13 +54,8 @@ declare const _default: _$vue.DefineComponent<ExtractPropTypes<{
|
|
|
58
54
|
};
|
|
59
55
|
readonly showTimeout: NumberConstructor;
|
|
60
56
|
readonly hideTimeout: NumberConstructor;
|
|
61
|
-
readonly popperClass:
|
|
62
|
-
readonly popperStyle:
|
|
63
|
-
readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => string | CSSProperties) | (() => string | CSSProperties) | (((new (...args: any[]) => string | CSSProperties) | (() => string | CSSProperties)) | null)[], unknown, unknown>>;
|
|
64
|
-
readonly required: false;
|
|
65
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
66
|
-
__epPropKey: true;
|
|
67
|
-
};
|
|
57
|
+
readonly popperClass: EpPropFinalized<(new (...args: any[]) => string | false | Record<string, any> | ClassValue[]) | (() => ClassValue) | (((new (...args: any[]) => string | false | Record<string, any> | ClassValue[]) | (() => ClassValue)) | null)[], unknown, unknown, undefined, boolean>;
|
|
58
|
+
readonly popperStyle: EpPropFinalized<(new (...args: any[]) => string | false | _$vue.CSSProperties | StyleValue[]) | (() => StyleValue) | (((new (...args: any[]) => string | false | _$vue.CSSProperties | StyleValue[]) | (() => StyleValue)) | null)[], unknown, unknown, undefined, boolean>;
|
|
68
59
|
readonly disabled: BooleanConstructor;
|
|
69
60
|
readonly teleported: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
70
61
|
readonly popperOffset: NumberConstructor;
|
|
@@ -103,13 +94,8 @@ declare const _default: _$vue.DefineComponent<ExtractPropTypes<{
|
|
|
103
94
|
};
|
|
104
95
|
readonly showTimeout: NumberConstructor;
|
|
105
96
|
readonly hideTimeout: NumberConstructor;
|
|
106
|
-
readonly popperClass:
|
|
107
|
-
readonly popperStyle:
|
|
108
|
-
readonly type: _$vue.PropType<EpPropMergeType<(new (...args: any[]) => string | CSSProperties) | (() => string | CSSProperties) | (((new (...args: any[]) => string | CSSProperties) | (() => string | CSSProperties)) | null)[], unknown, unknown>>;
|
|
109
|
-
readonly required: false;
|
|
110
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
111
|
-
__epPropKey: true;
|
|
112
|
-
};
|
|
97
|
+
readonly popperClass: EpPropFinalized<(new (...args: any[]) => string | false | Record<string, any> | ClassValue[]) | (() => ClassValue) | (((new (...args: any[]) => string | false | Record<string, any> | ClassValue[]) | (() => ClassValue)) | null)[], unknown, unknown, undefined, boolean>;
|
|
98
|
+
readonly popperStyle: EpPropFinalized<(new (...args: any[]) => string | false | _$vue.CSSProperties | StyleValue[]) | (() => StyleValue) | (((new (...args: any[]) => string | false | _$vue.CSSProperties | StyleValue[]) | (() => StyleValue)) | null)[], unknown, unknown, undefined, boolean>;
|
|
113
99
|
readonly disabled: BooleanConstructor;
|
|
114
100
|
readonly teleported: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
115
101
|
readonly popperOffset: NumberConstructor;
|
|
@@ -138,8 +124,10 @@ declare const _default: _$vue.DefineComponent<ExtractPropTypes<{
|
|
|
138
124
|
__epPropKey: true;
|
|
139
125
|
};
|
|
140
126
|
}>> & Readonly<{}>, {
|
|
141
|
-
readonly teleported: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
142
127
|
readonly disabled: boolean;
|
|
128
|
+
readonly popperClass: ClassValue;
|
|
129
|
+
readonly popperStyle: StyleValue;
|
|
130
|
+
readonly teleported: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
143
131
|
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, true, {}, any>;
|
|
144
132
|
//#endregion
|
|
145
133
|
export { SubMenuProps, SubMenuPropsPublic, _default as default, subMenuProps };
|
|
@@ -33,11 +33,27 @@ const subMenuProps = buildProps({
|
|
|
33
33
|
/**
|
|
34
34
|
* @description custom class name for the popup menu
|
|
35
35
|
*/
|
|
36
|
-
popperClass:
|
|
36
|
+
popperClass: {
|
|
37
|
+
type: definePropType([
|
|
38
|
+
String,
|
|
39
|
+
Array,
|
|
40
|
+
Object,
|
|
41
|
+
Boolean
|
|
42
|
+
]),
|
|
43
|
+
default: void 0
|
|
44
|
+
},
|
|
37
45
|
/**
|
|
38
46
|
* @description custom style for the popup menu
|
|
39
47
|
*/
|
|
40
|
-
popperStyle: {
|
|
48
|
+
popperStyle: {
|
|
49
|
+
type: definePropType([
|
|
50
|
+
String,
|
|
51
|
+
Array,
|
|
52
|
+
Object,
|
|
53
|
+
Boolean
|
|
54
|
+
]),
|
|
55
|
+
default: void 0
|
|
56
|
+
},
|
|
41
57
|
/**
|
|
42
58
|
* @description whether the sub-menu is disabled
|
|
43
59
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sub-menu.mjs","names":[],"sources":["../../../../../../packages/components/menu/src/sub-menu.ts"],"sourcesContent":["import {\n Fragment,\n computed,\n defineComponent,\n getCurrentInstance,\n h,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n reactive,\n ref,\n vShow,\n watch,\n withDirectives,\n} from 'vue'\nimport { useTimeoutFn } from '@vueuse/core'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n buildProps,\n definePropType,\n focusElement,\n iconPropType,\n isString,\n isUndefined,\n throwError,\n} from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ArrowDown, ArrowRight } from '@element-plus/icons-vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport useMenu from './use-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\nimport { MENU_INJECTION_KEY, SUB_MENU_INJECTION_KEY } from './tokens'\n\nimport type { Placement } from '@element-plus/components/popper'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type {\n CSSProperties,\n ExtractPropTypes,\n ExtractPublicPropTypes,\n VNodeArrayChildren,\n} from 'vue'\nimport type { MenuProvider, SubMenuProvider } from './types'\n\nexport const subMenuProps = buildProps({\n /**\n * @description unique identification\n */\n index: {\n type: String,\n required: true,\n },\n /**\n * @description timeout before showing a sub-menu(inherit `show-timeout` of the menu by default.)\n */\n showTimeout: Number,\n /**\n * @description timeout before hiding a sub-menu(inherit `hide-timeout` of the menu by default.)\n */\n hideTimeout: Number,\n /**\n * @description custom class name for the popup menu\n */\n popperClass: String,\n /**\n * @description custom style for the popup menu\n */\n popperStyle: {\n type: definePropType<string | CSSProperties>([String, Object]),\n },\n /**\n * @description whether the sub-menu is disabled\n */\n disabled: Boolean,\n /**\n * @description whether popup menu is teleported to the body\n */\n teleported: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description offset of the popper (overrides the `popper` of menu)\n */\n popperOffset: Number,\n /**\n * @description Icon when menu are expanded and submenu are closed, `expand-close-icon` and `expand-open-icon` need to be passed together to take effect\n */\n expandCloseIcon: {\n type: iconPropType,\n },\n /**\n * @description Icon when menu are expanded and submenu are opened, `expand-open-icon` and `expand-close-icon` need to be passed together to take effect\n */\n expandOpenIcon: {\n type: iconPropType,\n },\n /**\n * @description Icon when menu are collapsed and submenu are closed, `collapse-close-icon` and `collapse-open-icon` need to be passed together to take effect\n */\n collapseCloseIcon: {\n type: iconPropType,\n },\n /**\n * @description Icon when menu are collapsed and submenu are opened, `collapse-open-icon` and `collapse-close-icon` need to be passed together to take effect\n */\n collapseOpenIcon: {\n type: iconPropType,\n },\n} as const)\nexport type SubMenuProps = ExtractPropTypes<typeof subMenuProps>\nexport type SubMenuPropsPublic = ExtractPublicPropTypes<typeof subMenuProps>\n\nconst COMPONENT_NAME = 'ElSubMenu'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: subMenuProps,\n\n setup(props, { slots, expose }) {\n const instance = getCurrentInstance()!\n const { indexPath, parentMenu } = useMenu(\n instance,\n computed(() => props.index)\n )\n const nsMenu = useNamespace('menu')\n const nsSubMenu = useNamespace('sub-menu')\n\n // inject\n const rootMenu = inject<MenuProvider>(MENU_INJECTION_KEY)\n if (!rootMenu) throwError(COMPONENT_NAME, 'can not inject root menu')\n\n const subMenu = inject<SubMenuProvider>(\n `${SUB_MENU_INJECTION_KEY}${parentMenu.value!.uid}`\n )\n if (!subMenu) throwError(COMPONENT_NAME, 'can not inject sub menu')\n\n const items = ref<MenuProvider['items']>({})\n const subMenus = ref<MenuProvider['subMenus']>({})\n\n let timeout: (() => void) | undefined\n const mouseInChild = ref(false)\n const verticalTitleRef = ref<HTMLDivElement>()\n const vPopper = ref<TooltipInstance>()\n\n // computed\n const isFirstLevel = computed(() => subMenu.level === 0)\n const currentPlacement = computed<Placement>(() =>\n mode.value === 'horizontal' && isFirstLevel.value\n ? 'bottom-start'\n : 'right-start'\n )\n const subMenuTitleIcon = computed(() => {\n const isExpandedMode =\n (mode.value === 'horizontal' && isFirstLevel.value) ||\n (mode.value === 'vertical' && !rootMenu.props.collapse)\n\n if (isExpandedMode) {\n if (props.expandCloseIcon && props.expandOpenIcon) {\n return opened.value ? props.expandOpenIcon : props.expandCloseIcon\n }\n return ArrowDown\n } else {\n if (props.collapseCloseIcon && props.collapseOpenIcon) {\n return opened.value ? props.collapseOpenIcon : props.collapseCloseIcon\n }\n return ArrowRight\n }\n })\n\n const appendToBody = computed(() => {\n const value = props.teleported\n return isUndefined(value) ? isFirstLevel.value : value\n })\n const menuTransitionName = computed(() =>\n rootMenu.props.collapse\n ? `${nsMenu.namespace.value}-zoom-in-left`\n : `${nsMenu.namespace.value}-zoom-in-top`\n )\n const fallbackPlacements = computed<Placement[]>(() =>\n mode.value === 'horizontal' && isFirstLevel.value\n ? [\n 'bottom-start',\n 'bottom-end',\n 'top-start',\n 'top-end',\n 'right-start',\n 'left-start',\n ]\n : [\n 'right-start',\n 'right',\n 'right-end',\n 'left-start',\n 'bottom-start',\n 'bottom-end',\n 'top-start',\n 'top-end',\n ]\n )\n const opened = computed(() => rootMenu.openedMenus.includes(props.index))\n const active = computed(() =>\n [...Object.values(items.value), ...Object.values(subMenus.value)].some(\n ({ active }) => active\n )\n )\n\n const mode = computed(() => rootMenu.props.mode)\n const persistent = computed(() => rootMenu.props.persistent)\n const item = reactive({\n index: props.index,\n indexPath,\n active,\n })\n\n const ulStyle = useMenuCssVar(rootMenu.props, subMenu.level + 1)\n\n const subMenuPopperOffset = computed(\n () => props.popperOffset ?? rootMenu.props.popperOffset\n )\n\n const subMenuPopperClass = computed(\n () => props.popperClass ?? rootMenu.props.popperClass\n )\n\n const subMenuPopperStyle = computed(\n () => props.popperStyle ?? rootMenu.props.popperStyle\n )\n\n const subMenuShowTimeout = computed(\n () => props.showTimeout ?? rootMenu.props.showTimeout\n )\n\n const subMenuHideTimeout = computed(\n () => props.hideTimeout ?? rootMenu.props.hideTimeout\n )\n\n // methods\n const doDestroy = () =>\n vPopper.value?.popperRef?.popperInstanceRef?.destroy()\n\n const handleCollapseToggle = (value: boolean) => {\n if (!value) {\n doDestroy()\n }\n }\n\n const handleClick = () => {\n if (\n (rootMenu.props.menuTrigger === 'hover' &&\n rootMenu.props.mode === 'horizontal') ||\n (rootMenu.props.collapse && rootMenu.props.mode === 'vertical') ||\n props.disabled\n )\n return\n\n rootMenu.handleSubMenuClick({\n index: props.index,\n indexPath: indexPath.value,\n active: active.value,\n })\n }\n\n const handleMouseenter = (\n event: MouseEvent | FocusEvent,\n showTimeout = subMenuShowTimeout.value\n ) => {\n if (event.type === 'focus') return\n\n if (\n (rootMenu.props.menuTrigger === 'click' &&\n rootMenu.props.mode === 'horizontal') ||\n (!rootMenu.props.collapse && rootMenu.props.mode === 'vertical') ||\n props.disabled\n ) {\n subMenu.mouseInChild.value = true\n return\n }\n subMenu.mouseInChild.value = true\n\n timeout?.()\n ;({ stop: timeout } = useTimeoutFn(() => {\n rootMenu.openMenu(props.index, indexPath.value)\n }, showTimeout))\n\n if (appendToBody.value) {\n parentMenu.value.vnode.el?.dispatchEvent(new MouseEvent('mouseenter'))\n }\n\n if (event.type === 'mouseenter' && event.target) {\n nextTick(() => {\n focusElement(event.target as HTMLElement, { preventScroll: true })\n })\n }\n }\n\n const handleMouseleave = (deepDispatch = false) => {\n if (\n (rootMenu.props.menuTrigger === 'click' &&\n rootMenu.props.mode === 'horizontal') ||\n (!rootMenu.props.collapse && rootMenu.props.mode === 'vertical')\n ) {\n subMenu.mouseInChild.value = false\n return\n }\n timeout?.()\n subMenu.mouseInChild.value = false\n ;({ stop: timeout } = useTimeoutFn(\n () =>\n !mouseInChild.value &&\n rootMenu.closeMenu(props.index, indexPath.value),\n subMenuHideTimeout.value\n ))\n\n if (appendToBody.value && deepDispatch) {\n subMenu.handleMouseleave?.(true)\n }\n }\n\n watch(\n () => rootMenu.props.collapse,\n (value) => handleCollapseToggle(Boolean(value))\n )\n\n // provide\n {\n const addSubMenu: SubMenuProvider['addSubMenu'] = (item) => {\n subMenus.value[item.index] = item\n }\n const removeSubMenu: SubMenuProvider['removeSubMenu'] = (item) => {\n delete subMenus.value[item.index]\n }\n provide<SubMenuProvider>(`${SUB_MENU_INJECTION_KEY}${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n handleMouseleave,\n mouseInChild,\n level: subMenu.level + 1,\n })\n }\n\n // expose\n expose({\n opened,\n })\n\n // lifecycle\n onMounted(() => {\n rootMenu.addSubMenu(item)\n subMenu.addSubMenu(item)\n })\n\n onBeforeUnmount(() => {\n subMenu.removeSubMenu(item)\n rootMenu.removeSubMenu(item)\n })\n\n return () => {\n const titleTag: VNodeArrayChildren = [\n slots.title?.(),\n h(\n ElIcon,\n {\n class: nsSubMenu.e('icon-arrow'),\n style: {\n transform: opened.value\n ? (props.expandCloseIcon && props.expandOpenIcon) ||\n (props.collapseCloseIcon &&\n props.collapseOpenIcon &&\n rootMenu.props.collapse)\n ? 'none'\n : 'rotateZ(180deg)'\n : 'none',\n },\n },\n {\n default: () =>\n isString(subMenuTitleIcon.value)\n ? h(instance.appContext.components[subMenuTitleIcon.value])\n : h(subMenuTitleIcon.value),\n }\n ),\n ]\n\n // this render function is only used for bypass `Vue`'s compiler caused patching issue.\n const child = rootMenu.isMenuPopup\n ? h(\n ElTooltip,\n {\n ref: vPopper,\n visible: opened.value,\n effect: 'light',\n pure: true,\n offset: subMenuPopperOffset.value,\n showArrow: false,\n persistent: persistent.value,\n popperClass: subMenuPopperClass.value,\n popperStyle: subMenuPopperStyle.value,\n placement: currentPlacement.value,\n teleported: appendToBody.value,\n fallbackPlacements: fallbackPlacements.value,\n transition: menuTransitionName.value,\n gpuAcceleration: false,\n },\n {\n content: () =>\n h(\n 'div',\n {\n class: [\n nsMenu.m(mode.value),\n nsMenu.m('popup-container'),\n subMenuPopperClass.value,\n ],\n onMouseenter: (evt: MouseEvent) =>\n handleMouseenter(evt, 100),\n onMouseleave: () => handleMouseleave(true),\n onFocus: (evt: FocusEvent) => handleMouseenter(evt, 100),\n },\n [\n h(\n 'ul',\n {\n class: [\n nsMenu.b(),\n nsMenu.m('popup'),\n nsMenu.m(`popup-${currentPlacement.value}`),\n ],\n style: ulStyle.value,\n },\n [slots.default?.()]\n ),\n ]\n ),\n default: () =>\n h(\n 'div',\n {\n class: nsSubMenu.e('title'),\n onClick: handleClick,\n },\n titleTag\n ),\n }\n )\n : h(Fragment, {}, [\n h(\n 'div',\n {\n class: nsSubMenu.e('title'),\n ref: verticalTitleRef,\n onClick: handleClick,\n },\n titleTag\n ),\n h(\n ElCollapseTransition,\n {},\n {\n default: () =>\n withDirectives(\n h(\n 'ul',\n {\n role: 'menu',\n class: [nsMenu.b(), nsMenu.m('inline')],\n style: ulStyle.value,\n },\n [slots.default?.()]\n ),\n [[vShow, opened.value]]\n ),\n }\n ),\n ])\n\n return h(\n 'li',\n {\n class: [\n nsSubMenu.b(),\n nsSubMenu.is('active', active.value),\n nsSubMenu.is('opened', opened.value),\n nsSubMenu.is('disabled', props.disabled),\n ],\n role: 'menuitem',\n ariaHaspopup: true,\n ariaExpanded: opened.value,\n onMouseenter: handleMouseenter,\n onMouseleave: () => handleMouseleave(),\n onFocus: handleMouseenter,\n },\n [child]\n )\n }\n },\n})\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sub-menu.mjs","names":[],"sources":["../../../../../../packages/components/menu/src/sub-menu.ts"],"sourcesContent":["import {\n Fragment,\n computed,\n defineComponent,\n getCurrentInstance,\n h,\n inject,\n nextTick,\n onBeforeUnmount,\n onMounted,\n provide,\n reactive,\n ref,\n vShow,\n watch,\n withDirectives,\n} from 'vue'\nimport { useTimeoutFn } from '@vueuse/core'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n buildProps,\n definePropType,\n focusElement,\n iconPropType,\n isString,\n isUndefined,\n throwError,\n} from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ArrowDown, ArrowRight } from '@element-plus/icons-vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport useMenu from './use-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\nimport { MENU_INJECTION_KEY, SUB_MENU_INJECTION_KEY } from './tokens'\n\nimport type { ClassValue } from '@element-plus/utils'\nimport type { Placement } from '@element-plus/components/popper'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type {\n ExtractPropTypes,\n ExtractPublicPropTypes,\n StyleValue,\n VNodeArrayChildren,\n} from 'vue'\nimport type { MenuProvider, SubMenuProvider } from './types'\n\nexport const subMenuProps = buildProps({\n /**\n * @description unique identification\n */\n index: {\n type: String,\n required: true,\n },\n /**\n * @description timeout before showing a sub-menu(inherit `show-timeout` of the menu by default.)\n */\n showTimeout: Number,\n /**\n * @description timeout before hiding a sub-menu(inherit `hide-timeout` of the menu by default.)\n */\n hideTimeout: Number,\n /**\n * @description custom class name for the popup menu\n */\n popperClass: {\n type: definePropType<ClassValue>([String, Array, Object, Boolean]),\n default: undefined,\n },\n /**\n * @description custom style for the popup menu\n */\n popperStyle: {\n type: definePropType<StyleValue>([String, Array, Object, Boolean]),\n default: undefined,\n },\n /**\n * @description whether the sub-menu is disabled\n */\n disabled: Boolean,\n /**\n * @description whether popup menu is teleported to the body\n */\n teleported: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description offset of the popper (overrides the `popper` of menu)\n */\n popperOffset: Number,\n /**\n * @description Icon when menu are expanded and submenu are closed, `expand-close-icon` and `expand-open-icon` need to be passed together to take effect\n */\n expandCloseIcon: {\n type: iconPropType,\n },\n /**\n * @description Icon when menu are expanded and submenu are opened, `expand-open-icon` and `expand-close-icon` need to be passed together to take effect\n */\n expandOpenIcon: {\n type: iconPropType,\n },\n /**\n * @description Icon when menu are collapsed and submenu are closed, `collapse-close-icon` and `collapse-open-icon` need to be passed together to take effect\n */\n collapseCloseIcon: {\n type: iconPropType,\n },\n /**\n * @description Icon when menu are collapsed and submenu are opened, `collapse-open-icon` and `collapse-close-icon` need to be passed together to take effect\n */\n collapseOpenIcon: {\n type: iconPropType,\n },\n} as const)\nexport type SubMenuProps = ExtractPropTypes<typeof subMenuProps>\nexport type SubMenuPropsPublic = ExtractPublicPropTypes<typeof subMenuProps>\n\nconst COMPONENT_NAME = 'ElSubMenu'\nexport default defineComponent({\n name: COMPONENT_NAME,\n props: subMenuProps,\n\n setup(props, { slots, expose }) {\n const instance = getCurrentInstance()!\n const { indexPath, parentMenu } = useMenu(\n instance,\n computed(() => props.index)\n )\n const nsMenu = useNamespace('menu')\n const nsSubMenu = useNamespace('sub-menu')\n\n // inject\n const rootMenu = inject<MenuProvider>(MENU_INJECTION_KEY)\n if (!rootMenu) throwError(COMPONENT_NAME, 'can not inject root menu')\n\n const subMenu = inject<SubMenuProvider>(\n `${SUB_MENU_INJECTION_KEY}${parentMenu.value!.uid}`\n )\n if (!subMenu) throwError(COMPONENT_NAME, 'can not inject sub menu')\n\n const items = ref<MenuProvider['items']>({})\n const subMenus = ref<MenuProvider['subMenus']>({})\n\n let timeout: (() => void) | undefined\n const mouseInChild = ref(false)\n const verticalTitleRef = ref<HTMLDivElement>()\n const vPopper = ref<TooltipInstance>()\n\n // computed\n const isFirstLevel = computed(() => subMenu.level === 0)\n const currentPlacement = computed<Placement>(() =>\n mode.value === 'horizontal' && isFirstLevel.value\n ? 'bottom-start'\n : 'right-start'\n )\n const subMenuTitleIcon = computed(() => {\n const isExpandedMode =\n (mode.value === 'horizontal' && isFirstLevel.value) ||\n (mode.value === 'vertical' && !rootMenu.props.collapse)\n\n if (isExpandedMode) {\n if (props.expandCloseIcon && props.expandOpenIcon) {\n return opened.value ? props.expandOpenIcon : props.expandCloseIcon\n }\n return ArrowDown\n } else {\n if (props.collapseCloseIcon && props.collapseOpenIcon) {\n return opened.value ? props.collapseOpenIcon : props.collapseCloseIcon\n }\n return ArrowRight\n }\n })\n\n const appendToBody = computed(() => {\n const value = props.teleported\n return isUndefined(value) ? isFirstLevel.value : value\n })\n const menuTransitionName = computed(() =>\n rootMenu.props.collapse\n ? `${nsMenu.namespace.value}-zoom-in-left`\n : `${nsMenu.namespace.value}-zoom-in-top`\n )\n const fallbackPlacements = computed<Placement[]>(() =>\n mode.value === 'horizontal' && isFirstLevel.value\n ? [\n 'bottom-start',\n 'bottom-end',\n 'top-start',\n 'top-end',\n 'right-start',\n 'left-start',\n ]\n : [\n 'right-start',\n 'right',\n 'right-end',\n 'left-start',\n 'bottom-start',\n 'bottom-end',\n 'top-start',\n 'top-end',\n ]\n )\n const opened = computed(() => rootMenu.openedMenus.includes(props.index))\n const active = computed(() =>\n [...Object.values(items.value), ...Object.values(subMenus.value)].some(\n ({ active }) => active\n )\n )\n\n const mode = computed(() => rootMenu.props.mode)\n const persistent = computed(() => rootMenu.props.persistent)\n const item = reactive({\n index: props.index,\n indexPath,\n active,\n })\n\n const ulStyle = useMenuCssVar(rootMenu.props, subMenu.level + 1)\n\n const subMenuPopperOffset = computed(\n () => props.popperOffset ?? rootMenu.props.popperOffset\n )\n\n const subMenuPopperClass = computed(\n () => props.popperClass ?? rootMenu.props.popperClass\n )\n\n const subMenuPopperStyle = computed(\n () => props.popperStyle ?? rootMenu.props.popperStyle\n )\n\n const subMenuShowTimeout = computed(\n () => props.showTimeout ?? rootMenu.props.showTimeout\n )\n\n const subMenuHideTimeout = computed(\n () => props.hideTimeout ?? rootMenu.props.hideTimeout\n )\n\n // methods\n const doDestroy = () =>\n vPopper.value?.popperRef?.popperInstanceRef?.destroy()\n\n const handleCollapseToggle = (value: boolean) => {\n if (!value) {\n doDestroy()\n }\n }\n\n const handleClick = () => {\n if (\n (rootMenu.props.menuTrigger === 'hover' &&\n rootMenu.props.mode === 'horizontal') ||\n (rootMenu.props.collapse && rootMenu.props.mode === 'vertical') ||\n props.disabled\n )\n return\n\n rootMenu.handleSubMenuClick({\n index: props.index,\n indexPath: indexPath.value,\n active: active.value,\n })\n }\n\n const handleMouseenter = (\n event: MouseEvent | FocusEvent,\n showTimeout = subMenuShowTimeout.value\n ) => {\n if (event.type === 'focus') return\n\n if (\n (rootMenu.props.menuTrigger === 'click' &&\n rootMenu.props.mode === 'horizontal') ||\n (!rootMenu.props.collapse && rootMenu.props.mode === 'vertical') ||\n props.disabled\n ) {\n subMenu.mouseInChild.value = true\n return\n }\n subMenu.mouseInChild.value = true\n\n timeout?.()\n ;({ stop: timeout } = useTimeoutFn(() => {\n rootMenu.openMenu(props.index, indexPath.value)\n }, showTimeout))\n\n if (appendToBody.value) {\n parentMenu.value.vnode.el?.dispatchEvent(new MouseEvent('mouseenter'))\n }\n\n if (event.type === 'mouseenter' && event.target) {\n nextTick(() => {\n focusElement(event.target as HTMLElement, { preventScroll: true })\n })\n }\n }\n\n const handleMouseleave = (deepDispatch = false) => {\n if (\n (rootMenu.props.menuTrigger === 'click' &&\n rootMenu.props.mode === 'horizontal') ||\n (!rootMenu.props.collapse && rootMenu.props.mode === 'vertical')\n ) {\n subMenu.mouseInChild.value = false\n return\n }\n timeout?.()\n subMenu.mouseInChild.value = false\n ;({ stop: timeout } = useTimeoutFn(\n () =>\n !mouseInChild.value &&\n rootMenu.closeMenu(props.index, indexPath.value),\n subMenuHideTimeout.value\n ))\n\n if (appendToBody.value && deepDispatch) {\n subMenu.handleMouseleave?.(true)\n }\n }\n\n watch(\n () => rootMenu.props.collapse,\n (value) => handleCollapseToggle(Boolean(value))\n )\n\n // provide\n {\n const addSubMenu: SubMenuProvider['addSubMenu'] = (item) => {\n subMenus.value[item.index] = item\n }\n const removeSubMenu: SubMenuProvider['removeSubMenu'] = (item) => {\n delete subMenus.value[item.index]\n }\n provide<SubMenuProvider>(`${SUB_MENU_INJECTION_KEY}${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n handleMouseleave,\n mouseInChild,\n level: subMenu.level + 1,\n })\n }\n\n // expose\n expose({\n opened,\n })\n\n // lifecycle\n onMounted(() => {\n rootMenu.addSubMenu(item)\n subMenu.addSubMenu(item)\n })\n\n onBeforeUnmount(() => {\n subMenu.removeSubMenu(item)\n rootMenu.removeSubMenu(item)\n })\n\n return () => {\n const titleTag: VNodeArrayChildren = [\n slots.title?.(),\n h(\n ElIcon,\n {\n class: nsSubMenu.e('icon-arrow'),\n style: {\n transform: opened.value\n ? (props.expandCloseIcon && props.expandOpenIcon) ||\n (props.collapseCloseIcon &&\n props.collapseOpenIcon &&\n rootMenu.props.collapse)\n ? 'none'\n : 'rotateZ(180deg)'\n : 'none',\n },\n },\n {\n default: () =>\n isString(subMenuTitleIcon.value)\n ? h(instance.appContext.components[subMenuTitleIcon.value])\n : h(subMenuTitleIcon.value),\n }\n ),\n ]\n\n // this render function is only used for bypass `Vue`'s compiler caused patching issue.\n const child = rootMenu.isMenuPopup\n ? h(\n ElTooltip,\n {\n ref: vPopper,\n visible: opened.value,\n effect: 'light',\n pure: true,\n offset: subMenuPopperOffset.value,\n showArrow: false,\n persistent: persistent.value,\n popperClass: subMenuPopperClass.value,\n popperStyle: subMenuPopperStyle.value,\n placement: currentPlacement.value,\n teleported: appendToBody.value,\n fallbackPlacements: fallbackPlacements.value,\n transition: menuTransitionName.value,\n gpuAcceleration: false,\n },\n {\n content: () =>\n h(\n 'div',\n {\n class: [\n nsMenu.m(mode.value),\n nsMenu.m('popup-container'),\n subMenuPopperClass.value,\n ],\n onMouseenter: (evt: MouseEvent) =>\n handleMouseenter(evt, 100),\n onMouseleave: () => handleMouseleave(true),\n onFocus: (evt: FocusEvent) => handleMouseenter(evt, 100),\n },\n [\n h(\n 'ul',\n {\n class: [\n nsMenu.b(),\n nsMenu.m('popup'),\n nsMenu.m(`popup-${currentPlacement.value}`),\n ],\n style: ulStyle.value,\n },\n [slots.default?.()]\n ),\n ]\n ),\n default: () =>\n h(\n 'div',\n {\n class: nsSubMenu.e('title'),\n onClick: handleClick,\n },\n titleTag\n ),\n }\n )\n : h(Fragment, {}, [\n h(\n 'div',\n {\n class: nsSubMenu.e('title'),\n ref: verticalTitleRef,\n onClick: handleClick,\n },\n titleTag\n ),\n h(\n ElCollapseTransition,\n {},\n {\n default: () =>\n withDirectives(\n h(\n 'ul',\n {\n role: 'menu',\n class: [nsMenu.b(), nsMenu.m('inline')],\n style: ulStyle.value,\n },\n [slots.default?.()]\n ),\n [[vShow, opened.value]]\n ),\n }\n ),\n ])\n\n return h(\n 'li',\n {\n class: [\n nsSubMenu.b(),\n nsSubMenu.is('active', active.value),\n nsSubMenu.is('opened', opened.value),\n nsSubMenu.is('disabled', props.disabled),\n ],\n role: 'menuitem',\n ariaHaspopup: true,\n ariaExpanded: opened.value,\n onMouseenter: handleMouseenter,\n onMouseleave: () => handleMouseleave(),\n onFocus: handleMouseenter,\n },\n [child]\n )\n }\n },\n})\n"],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ type MessageContext = {
|
|
|
11
11
|
vm: ComponentInternalInstance;
|
|
12
12
|
props: Mutable<MessageProps>;
|
|
13
13
|
};
|
|
14
|
-
declare const placementInstances: _$vue.ShallowReactive<Record<"
|
|
14
|
+
declare const placementInstances: _$vue.ShallowReactive<Record<"bottom" | "top" | "top-left" | "top-right" | "bottom-left" | "bottom-right", MessageContext[]>>;
|
|
15
15
|
declare const getOrCreatePlacementInstances: (placement: MessagePlacement) => MessageContext[];
|
|
16
16
|
declare const getInstance: (id: string, placement: MessagePlacement) => {
|
|
17
17
|
current: MessageContext;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IconPropType } from "../../../utils/vue/icon.js";
|
|
2
2
|
import { EpPropFinalized } from "../../../utils/vue/props/types.js";
|
|
3
|
-
import { Mutable } from "../../../utils/typescript.js";
|
|
3
|
+
import { ClassValue, Mutable } from "../../../utils/typescript.js";
|
|
4
4
|
import _default from "./message.vue.js";
|
|
5
5
|
import * as _$vue from "vue";
|
|
6
6
|
import { AppContext, ExtractPublicPropTypes, VNode } from "vue";
|
|
@@ -10,7 +10,7 @@ interface MessageProps {
|
|
|
10
10
|
/**
|
|
11
11
|
* @description custom class name for Message
|
|
12
12
|
*/
|
|
13
|
-
customClass?:
|
|
13
|
+
customClass?: ClassValue;
|
|
14
14
|
/**
|
|
15
15
|
* @description whether `message` is treated as HTML string
|
|
16
16
|
*/
|
|
@@ -106,7 +106,7 @@ declare const messageDefaults: Mutable<{
|
|
|
106
106
|
* @deprecated Removed after 3.0.0, Use `MessageProps` instead.
|
|
107
107
|
*/
|
|
108
108
|
declare const messageProps: {
|
|
109
|
-
readonly customClass: EpPropFinalized<
|
|
109
|
+
readonly customClass: EpPropFinalized<(new (...args: any[]) => string | false | Record<string, any> | ClassValue[]) | (() => ClassValue) | (((new (...args: any[]) => string | false | Record<string, any> | ClassValue[]) | (() => ClassValue)) | null)[], unknown, unknown, "", boolean>;
|
|
110
110
|
readonly dangerouslyUseHTMLString: EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
111
111
|
readonly duration: EpPropFinalized<NumberConstructor, unknown, unknown, 3000, boolean>;
|
|
112
112
|
readonly icon: EpPropFinalized<(new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component) | (((new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component)) | null)[], unknown, unknown, undefined, boolean>;
|
|
@@ -130,10 +130,10 @@ declare const messageProps: {
|
|
|
130
130
|
readonly prototype: any;
|
|
131
131
|
}) | null)[], unknown, unknown, undefined, boolean>;
|
|
132
132
|
readonly showClose: EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
133
|
-
readonly type: EpPropFinalized<StringConstructor, "
|
|
133
|
+
readonly type: EpPropFinalized<StringConstructor, "primary" | "success" | "warning" | "info" | "error", unknown, "info", boolean>;
|
|
134
134
|
readonly plain: EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
135
135
|
readonly offset: EpPropFinalized<NumberConstructor, unknown, unknown, 16, boolean>;
|
|
136
|
-
readonly placement: EpPropFinalized<StringConstructor, "
|
|
136
|
+
readonly placement: EpPropFinalized<StringConstructor, "bottom" | "top" | "top-left" | "top-right" | "bottom-left" | "bottom-right", unknown, undefined, boolean>;
|
|
137
137
|
readonly zIndex: EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
138
138
|
readonly grouping: EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
139
139
|
readonly repeatNum: EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
|
|
@@ -45,7 +45,12 @@ const messageProps = buildProps({
|
|
|
45
45
|
* @description custom class name for Message
|
|
46
46
|
*/
|
|
47
47
|
customClass: {
|
|
48
|
-
type:
|
|
48
|
+
type: definePropType([
|
|
49
|
+
String,
|
|
50
|
+
Array,
|
|
51
|
+
Object,
|
|
52
|
+
Boolean
|
|
53
|
+
]),
|
|
49
54
|
default: messageDefaults.customClass
|
|
50
55
|
},
|
|
51
56
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.mjs","names":[],"sources":["../../../../../../packages/components/message/src/message.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n isClient,\n mutable,\n} from '@element-plus/utils'\n\nimport type { AppContext, ExtractPublicPropTypes, VNode } from 'vue'\nimport type { IconPropType, Mutable } from '@element-plus/utils'\nimport type MessageConstructor from './message.vue'\n\nexport interface MessageProps {\n /**\n * @description custom class name for Message\n */\n customClass?:
|
|
1
|
+
{"version":3,"file":"message.mjs","names":[],"sources":["../../../../../../packages/components/message/src/message.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n isClient,\n mutable,\n} from '@element-plus/utils'\n\nimport type { AppContext, ExtractPublicPropTypes, VNode } from 'vue'\nimport type { ClassValue, IconPropType, Mutable } from '@element-plus/utils'\nimport type MessageConstructor from './message.vue'\n\nexport interface MessageProps {\n /**\n * @description custom class name for Message\n */\n customClass?: ClassValue\n /**\n * @description whether `message` is treated as HTML string\n */\n dangerouslyUseHTMLString?: boolean\n /**\n * @description display duration, millisecond. If set to 0, it will not turn off automatically\n */\n duration?: number\n /**\n * @description custom icon component, overrides `type`\n */\n icon?: IconPropType\n /**\n * @description message dom id\n */\n id?: string\n /**\n * @description message text\n */\n message?: string | VNode | (() => VNode)\n /**\n * @description callback function when closed with the message instance as the parameter\n */\n onClose?: () => void\n /**\n * @description whether to show a close button\n */\n showClose?: boolean\n /**\n * @description message type\n */\n type?: MessageType\n /**\n * @description whether message is plain\n */\n plain?: boolean\n /**\n * @description set the distance to the top of viewport\n */\n offset?: number\n /**\n * @description message placement position\n */\n placement?: MessagePlacement\n /**\n * @description message element zIndex value\n */\n zIndex?: number\n /**\n * @description merge messages with the same content, type of VNode message is not supported\n */\n grouping?: boolean\n /**\n * @description The number of repetitions, similar to badge, is used as the initial number when used with `grouping`\n */\n repeatNum?: number\n}\n\nexport const messageTypes = [\n 'primary',\n 'success',\n 'info',\n 'warning',\n 'error',\n] as const\n\nexport const messagePlacement = [\n 'top',\n 'top-left',\n 'top-right',\n 'bottom',\n 'bottom-left',\n 'bottom-right',\n] as const\n\nexport const MESSAGE_DEFAULT_PLACEMENT = 'top'\n\nexport type MessageType = (typeof messageTypes)[number]\nexport type MessagePlacement = (typeof messagePlacement)[number]\n/** @deprecated please use `MessageType` instead */\nexport type messageType = MessageType // will be removed in 3.0.0.\n\nexport interface MessageConfigContext {\n max?: number\n grouping?: boolean\n duration?: number\n offset?: number\n showClose?: boolean\n plain?: boolean\n placement?: string\n}\n\nexport const messageDefaults = mutable({\n customClass: '',\n dangerouslyUseHTMLString: false,\n duration: 3000,\n icon: undefined,\n id: '',\n message: '',\n onClose: undefined,\n showClose: false,\n type: 'info',\n plain: false,\n offset: 16,\n placement: undefined,\n zIndex: 0,\n grouping: false,\n repeatNum: 1,\n appendTo: isClient ? document.body : (undefined as never),\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `MessageProps` instead.\n */\nexport const messageProps = buildProps({\n /**\n * @description custom class name for Message\n */\n customClass: {\n type: definePropType<ClassValue>([String, Array, Object, Boolean]),\n default: messageDefaults.customClass,\n },\n /**\n * @description whether `message` is treated as HTML string\n */\n dangerouslyUseHTMLString: {\n type: Boolean,\n default: messageDefaults.dangerouslyUseHTMLString,\n },\n /**\n * @description display duration, millisecond. If set to 0, it will not turn off automatically\n */\n duration: {\n type: Number,\n default: messageDefaults.duration,\n },\n /**\n * @description custom icon component, overrides `type`\n */\n icon: {\n type: iconPropType,\n default: messageDefaults.icon,\n },\n /**\n * @description message dom id\n */\n id: {\n type: String,\n default: messageDefaults.id,\n },\n /**\n * @description message text\n */\n message: {\n type: definePropType<string | VNode | (() => VNode)>([\n String,\n Object,\n Function,\n ]),\n default: messageDefaults.message,\n },\n /**\n * @description callback function when closed with the message instance as the parameter\n */\n onClose: {\n type: definePropType<() => void>(Function),\n default: messageDefaults.onClose,\n },\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: messageDefaults.showClose,\n },\n /**\n * @description message type\n */\n type: {\n type: String,\n values: messageTypes,\n default: messageDefaults.type,\n },\n /**\n * @description whether message is plain\n */\n plain: {\n type: Boolean,\n default: messageDefaults.plain,\n },\n /**\n * @description set the distance to the top of viewport\n */\n offset: {\n type: Number,\n default: messageDefaults.offset,\n },\n /**\n * @description message placement position\n */\n placement: {\n type: String,\n values: messagePlacement,\n default: messageDefaults.placement,\n },\n /**\n * @description message element zIndex value\n */\n zIndex: {\n type: Number,\n default: messageDefaults.zIndex,\n },\n /**\n * @description merge messages with the same content, type of VNode message is not supported\n */\n grouping: {\n type: Boolean,\n default: messageDefaults.grouping,\n },\n /**\n * @description The number of repetitions, similar to badge, is used as the initial number when used with `grouping`\n */\n repeatNum: {\n type: Number,\n default: messageDefaults.repeatNum,\n },\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `MessageProps` instead.\n */\nexport type MessagePropsPublic = ExtractPublicPropTypes<typeof messageProps>\n\nexport const messageEmits = {\n destroy: () => true,\n}\nexport type MessageEmits = typeof messageEmits\n\nexport type MessageInstance = InstanceType<typeof MessageConstructor> & unknown\n\nexport type MessageOptions = Partial<\n Mutable<\n Omit<MessageProps, 'id'> & {\n appendTo?: HTMLElement | string\n }\n >\n>\nexport type MessageParams = MessageOptions | MessageOptions['message']\nexport type MessageParamsNormalized = Omit<MessageProps, 'id'> & {\n /**\n * @description set the root element for the message, default to `document.body`\n */\n appendTo: HTMLElement\n}\nexport type MessageOptionsWithType = Omit<MessageOptions, 'type'>\nexport type MessageParamsWithType =\n MessageOptionsWithType | MessageOptions['message']\n\nexport interface MessageHandler {\n /**\n * @description close the Message\n */\n close: () => void\n}\n\nexport type MessageFn = {\n (options?: MessageParams, appContext?: null | AppContext): MessageHandler\n closeAll(type?: MessageType): void\n closeAllByPlacement(position: MessagePlacement): void\n}\nexport type MessageTypedFn = (\n options?: MessageParamsWithType,\n appContext?: null | AppContext\n) => MessageHandler\n\nexport type Message = MessageFn & {\n primary: MessageTypedFn\n success: MessageTypedFn\n warning: MessageTypedFn\n info: MessageTypedFn\n error: MessageTypedFn\n}\n"],"mappings":";;;;;AA2EA,MAAa,eAAe;CAC1B;CACA;CACA;CACA;CACA;CACD;AAED,MAAa,mBAAmB;CAC9B;CACA;CACA;CACA;CACA;CACA;CACD;AAED,MAAa,4BAA4B;AAiBzC,MAAa,kBAAkB,QAAQ;CACrC,aAAa;CACb,0BAA0B;CAC1B,UAAU;CACV,MAAM,KAAA;CACN,IAAI;CACJ,SAAS;CACT,SAAS,KAAA;CACT,WAAW;CACX,MAAM;CACN,OAAO;CACP,QAAQ;CACR,WAAW,KAAA;CACX,QAAQ;CACR,UAAU;CACV,WAAW;CACX,UAAU,WAAW,SAAS,OAAQ,KAAA;CACvC,CAAU;;;;AAKX,MAAa,eAAe,WAAW;;;;CAIrC,aAAa;EACX,MAAM,eAA2B;GAAC;GAAQ;GAAO;GAAQ;GAAQ,CAAC;EAClE,SAAS,gBAAgB;EAC1B;;;;CAID,0BAA0B;EACxB,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,UAAU;EACR,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,MAAM;EACJ,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,IAAI;EACF,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,SAAS;EACP,MAAM,eAA+C;GACnD;GACA;GACA;GACD,CAAC;EACF,SAAS,gBAAgB;EAC1B;;;;CAID,SAAS;EACP,MAAM,eAA2B,SAAS;EAC1C,SAAS,gBAAgB;EAC1B;;;;CAID,WAAW;EACT,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,MAAM;EACJ,MAAM;EACN,QAAQ;EACR,SAAS,gBAAgB;EAC1B;;;;CAID,OAAO;EACL,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,QAAQ;EACN,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,WAAW;EACT,MAAM;EACN,QAAQ;EACR,SAAS,gBAAgB;EAC1B;;;;CAID,QAAQ;EACN,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,UAAU;EACR,MAAM;EACN,SAAS,gBAAgB;EAC1B;;;;CAID,WAAW;EACT,MAAM;EACN,SAAS,gBAAgB;EAC1B;CACF,CAAU;AAOX,MAAa,eAAe,EAC1B,eAAe,MAChB"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IconPropType } from "../../../utils/vue/icon.js";
|
|
2
|
+
import { ClassValue } from "../../../utils/typescript.js";
|
|
2
3
|
import { MessagePlacement, MessageProps, MessageType } from "./message.js";
|
|
3
4
|
import * as _$vue from "vue";
|
|
4
5
|
|
|
@@ -17,18 +18,18 @@ declare const __VLS_base: _$vue.DefineComponent<MessageProps, {
|
|
|
17
18
|
}, string, _$vue.PublicProps, Readonly<MessageProps> & Readonly<{
|
|
18
19
|
onDestroy?: (() => any) | undefined;
|
|
19
20
|
}>, {
|
|
21
|
+
id: string;
|
|
20
22
|
type: MessageType;
|
|
23
|
+
icon: IconPropType;
|
|
24
|
+
zIndex: number;
|
|
21
25
|
offset: number;
|
|
22
26
|
placement: MessagePlacement;
|
|
23
|
-
id: string;
|
|
24
|
-
zIndex: number;
|
|
25
|
-
onClose: () => void;
|
|
26
|
-
icon: IconPropType;
|
|
27
|
-
plain: boolean;
|
|
28
27
|
message: string | _$vue.VNode | (() => _$vue.VNode);
|
|
29
28
|
showClose: boolean;
|
|
29
|
+
onClose: () => void;
|
|
30
|
+
plain: boolean;
|
|
30
31
|
duration: number;
|
|
31
|
-
customClass: string;
|
|
32
|
+
customClass: string | false | Record<string, any> | ClassValue[] | null;
|
|
32
33
|
dangerouslyUseHTMLString: boolean;
|
|
33
34
|
grouping: boolean;
|
|
34
35
|
repeatNum: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"method.mjs","names":["MessageConstructor"],"sources":["../../../../../../packages/components/message/src/method.ts"],"sourcesContent":["import { createVNode, isVNode, render } from 'vue'\nimport {\n debugWarn,\n hasOwn,\n isBoolean,\n isClient,\n isElement,\n isFunction,\n isNumber,\n isString,\n} from '@element-plus/utils'\nimport { messageConfig } from '@element-plus/components/config-provider'\nimport MessageConstructor from './message.vue'\nimport {\n MESSAGE_DEFAULT_PLACEMENT,\n messageDefaults,\n messagePlacement,\n messageTypes,\n} from './message'\nimport { getOrCreatePlacementInstances, placementInstances } from './instance'\n\nimport type { MessageContext } from './instance'\nimport type { AppContext } from 'vue'\nimport type {\n Message,\n MessageFn,\n MessageHandler,\n MessageOptions,\n MessageParams,\n MessageParamsNormalized,\n MessagePlacement,\n MessageType,\n} from './message'\n\nlet seed = 1\n\n// TODO: Since Notify.ts is basically the same like this file. So we could do some encapsulation against them to reduce code duplication.\n\nconst normalizeAppendTo = (normalized: MessageOptions) => {\n const appendTo = normalized.appendTo\n if (!appendTo) {\n normalized.appendTo = document.body\n } else if (isString(normalized.appendTo)) {\n let appendTo = document.querySelector<HTMLElement>(normalized.appendTo)\n\n // should fallback to default value with a warning\n if (!isElement(appendTo)) {\n debugWarn(\n 'ElMessage',\n 'the appendTo option is not an HTMLElement. Falling back to document.body.'\n )\n appendTo = document.body\n }\n normalized.appendTo = appendTo\n }\n}\n\nconst normalizePlacement = (normalized: MessageOptions) => {\n // if placement is not passed and global has config, use global config\n if (\n !normalized.placement &&\n isString(messageConfig.placement) &&\n messageConfig.placement\n ) {\n normalized.placement = messageConfig.placement as\n | MessagePlacement\n | undefined\n }\n // if placement is not passed and global has no config, use default config\n if (!normalized.placement) {\n normalized.placement = MESSAGE_DEFAULT_PLACEMENT\n }\n // if placement is not valid, use default config\n if (!messagePlacement.includes(normalized.placement!)) {\n debugWarn(\n 'ElMessage',\n `Invalid placement: ${normalized.placement}. Falling back to '${MESSAGE_DEFAULT_PLACEMENT}'.`\n )\n normalized.placement = MESSAGE_DEFAULT_PLACEMENT\n }\n}\n\nconst normalizeOptions = (params?: MessageParams) => {\n const options: MessageOptions =\n !params || isString(params) || isVNode(params) || isFunction(params)\n ? { message: params }\n : params\n\n const normalized: MessageOptions = {\n ...messageDefaults,\n ...options,\n }\n\n normalizeAppendTo(normalized)\n normalizePlacement(normalized)\n\n // When grouping is configured globally,\n // if grouping is manually set when calling message individually and it is not equal to the default value,\n // the global configuration cannot override the current setting. default => false\n if (isBoolean(messageConfig.grouping) && !normalized.grouping) {\n normalized.grouping = messageConfig.grouping\n }\n if (isNumber(messageConfig.duration) && normalized.duration === 3000) {\n normalized.duration = messageConfig.duration\n }\n if (isNumber(messageConfig.offset) && normalized.offset === 16) {\n normalized.offset = messageConfig.offset\n }\n if (isBoolean(messageConfig.showClose) && !normalized.showClose) {\n normalized.showClose = messageConfig.showClose\n }\n if (isBoolean(messageConfig.plain) && !normalized.plain) {\n normalized.plain = messageConfig.plain\n }\n\n return normalized as MessageParamsNormalized\n}\n\nconst closeMessage = (instance: MessageContext) => {\n const placement = instance.props.placement || MESSAGE_DEFAULT_PLACEMENT\n const instances = placementInstances[placement]\n\n const idx = instances.indexOf(instance)\n if (idx === -1) return\n instances.splice(idx, 1)\n const { handler } = instance\n handler.close()\n}\n\nconst createMessage = (\n { appendTo, ...options }: MessageParamsNormalized,\n context?: AppContext | null\n): MessageContext => {\n const id = `message_${seed++}`\n const userOnClose = options.onClose\n\n const container = document.createElement('div')\n\n const props = {\n ...options,\n // now the zIndex will be used inside the message.vue component instead of here.\n // zIndex: nextIndex() + options.zIndex\n id,\n onClose: () => {\n userOnClose?.()\n closeMessage(instance)\n },\n\n // clean message element preventing mem leak\n onDestroy: () => {\n // since the element is destroy, then the VNode should be collected by GC as well\n // we do not want cause any mem leak because we have returned vm as a reference to users\n // so that we manually set it to false.\n render(null, container)\n },\n }\n const vnode = createVNode(\n MessageConstructor,\n props,\n isFunction(props.message) || isVNode(props.message)\n ? {\n default: isFunction(props.message)\n ? props.message\n : () => props.message,\n }\n : null\n )\n vnode.appContext = context || message._context\n\n render(vnode, container)\n // instances will remove this item when close function gets called. So we do not need to worry about it.\n appendTo.appendChild(container.firstElementChild!)\n\n const vm = vnode.component!\n\n const handler: MessageHandler = {\n // instead of calling the onClose function directly, setting this value so that we can have the full lifecycle\n // for out component, so that all closing steps will not be skipped.\n close: () => {\n vm.exposed!.close()\n },\n }\n\n const instance: MessageContext = {\n id,\n vnode,\n vm,\n handler,\n props: (vnode.component as any).props,\n }\n\n return instance\n}\n\nconst message: MessageFn &\n Partial<Message> & { _context: AppContext | null } = (\n options = {},\n context\n) => {\n if (!isClient) return { close: () => undefined }\n\n const normalized = normalizeOptions(options)\n const instances = getOrCreatePlacementInstances(\n normalized.placement || MESSAGE_DEFAULT_PLACEMENT\n )\n\n if (normalized.grouping && instances.length) {\n const instance = instances.find(\n ({ vnode: vm }) => vm.props?.message === normalized.message\n )\n if (instance) {\n instance.props.repeatNum! += 1\n instance.props.type = normalized.type\n return instance.handler\n }\n }\n\n if (isNumber(messageConfig.max) && instances.length >= messageConfig.max) {\n return { close: () => undefined }\n }\n\n const instance = createMessage(normalized, context)\n\n instances.push(instance)\n return instance.handler\n}\n\nmessageTypes.forEach((type) => {\n message[type] = (options = {}, appContext) => {\n const normalized = normalizeOptions(options)\n return message({ ...normalized, type }, appContext)\n }\n})\n\nexport function closeAll(type?: MessageType): void {\n for (const placement in placementInstances) {\n if (hasOwn(placementInstances, placement)) {\n // Create a copy of instances to avoid modification during iteration\n const instances: MessageContext[] = [...placementInstances[placement]]\n for (const instance of instances) {\n if (!type || type === instance.props.type) {\n instance.handler.close()\n }\n }\n }\n }\n}\n\nexport function closeAllByPlacement(placement: MessagePlacement) {\n if (!placementInstances[placement]) return\n // Create a copy of instances to avoid modification during iteration\n const instances = [...placementInstances[placement]]\n instances.forEach((instance) => instance.handler.close())\n}\n\nmessage.closeAll = closeAll\nmessage.closeAllByPlacement = closeAllByPlacement\nmessage._context = null\n\nexport default message as Message\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"method.mjs","names":["MessageConstructor"],"sources":["../../../../../../packages/components/message/src/method.ts"],"sourcesContent":["import { createVNode, isVNode, render } from 'vue'\nimport {\n debugWarn,\n hasOwn,\n isBoolean,\n isClient,\n isElement,\n isFunction,\n isNumber,\n isString,\n} from '@element-plus/utils'\nimport { messageConfig } from '@element-plus/components/config-provider'\nimport MessageConstructor from './message.vue'\nimport {\n MESSAGE_DEFAULT_PLACEMENT,\n messageDefaults,\n messagePlacement,\n messageTypes,\n} from './message'\nimport { getOrCreatePlacementInstances, placementInstances } from './instance'\n\nimport type { MessageContext } from './instance'\nimport type { AppContext } from 'vue'\nimport type {\n Message,\n MessageFn,\n MessageHandler,\n MessageOptions,\n MessageParams,\n MessageParamsNormalized,\n MessagePlacement,\n MessageType,\n} from './message'\n\nlet seed = 1\n\n// TODO: Since Notify.ts is basically the same like this file. So we could do some encapsulation against them to reduce code duplication.\n\nconst normalizeAppendTo = (normalized: MessageOptions) => {\n const appendTo = normalized.appendTo\n if (!appendTo) {\n normalized.appendTo = document.body\n } else if (isString(normalized.appendTo)) {\n let appendTo = document.querySelector<HTMLElement>(normalized.appendTo)\n\n // should fallback to default value with a warning\n if (!isElement(appendTo)) {\n debugWarn(\n 'ElMessage',\n 'the appendTo option is not an HTMLElement. Falling back to document.body.'\n )\n appendTo = document.body\n }\n normalized.appendTo = appendTo\n }\n}\n\nconst normalizePlacement = (normalized: MessageOptions) => {\n // if placement is not passed and global has config, use global config\n if (\n !normalized.placement &&\n isString(messageConfig.placement) &&\n messageConfig.placement\n ) {\n normalized.placement = messageConfig.placement as\n MessagePlacement | undefined\n }\n // if placement is not passed and global has no config, use default config\n if (!normalized.placement) {\n normalized.placement = MESSAGE_DEFAULT_PLACEMENT\n }\n // if placement is not valid, use default config\n if (!messagePlacement.includes(normalized.placement!)) {\n debugWarn(\n 'ElMessage',\n `Invalid placement: ${normalized.placement}. Falling back to '${MESSAGE_DEFAULT_PLACEMENT}'.`\n )\n normalized.placement = MESSAGE_DEFAULT_PLACEMENT\n }\n}\n\nconst normalizeOptions = (params?: MessageParams) => {\n const options: MessageOptions =\n !params || isString(params) || isVNode(params) || isFunction(params)\n ? { message: params }\n : params\n\n const normalized: MessageOptions = {\n ...messageDefaults,\n ...options,\n }\n\n normalizeAppendTo(normalized)\n normalizePlacement(normalized)\n\n // When grouping is configured globally,\n // if grouping is manually set when calling message individually and it is not equal to the default value,\n // the global configuration cannot override the current setting. default => false\n if (isBoolean(messageConfig.grouping) && !normalized.grouping) {\n normalized.grouping = messageConfig.grouping\n }\n if (isNumber(messageConfig.duration) && normalized.duration === 3000) {\n normalized.duration = messageConfig.duration\n }\n if (isNumber(messageConfig.offset) && normalized.offset === 16) {\n normalized.offset = messageConfig.offset\n }\n if (isBoolean(messageConfig.showClose) && !normalized.showClose) {\n normalized.showClose = messageConfig.showClose\n }\n if (isBoolean(messageConfig.plain) && !normalized.plain) {\n normalized.plain = messageConfig.plain\n }\n\n return normalized as MessageParamsNormalized\n}\n\nconst closeMessage = (instance: MessageContext) => {\n const placement = instance.props.placement || MESSAGE_DEFAULT_PLACEMENT\n const instances = placementInstances[placement]\n\n const idx = instances.indexOf(instance)\n if (idx === -1) return\n instances.splice(idx, 1)\n const { handler } = instance\n handler.close()\n}\n\nconst createMessage = (\n { appendTo, ...options }: MessageParamsNormalized,\n context?: AppContext | null\n): MessageContext => {\n const id = `message_${seed++}`\n const userOnClose = options.onClose\n\n const container = document.createElement('div')\n\n const props = {\n ...options,\n // now the zIndex will be used inside the message.vue component instead of here.\n // zIndex: nextIndex() + options.zIndex\n id,\n onClose: () => {\n userOnClose?.()\n closeMessage(instance)\n },\n\n // clean message element preventing mem leak\n onDestroy: () => {\n // since the element is destroy, then the VNode should be collected by GC as well\n // we do not want cause any mem leak because we have returned vm as a reference to users\n // so that we manually set it to false.\n render(null, container)\n },\n }\n const vnode = createVNode(\n MessageConstructor,\n props,\n isFunction(props.message) || isVNode(props.message)\n ? {\n default: isFunction(props.message)\n ? props.message\n : () => props.message,\n }\n : null\n )\n vnode.appContext = context || message._context\n\n render(vnode, container)\n // instances will remove this item when close function gets called. So we do not need to worry about it.\n appendTo.appendChild(container.firstElementChild!)\n\n const vm = vnode.component!\n\n const handler: MessageHandler = {\n // instead of calling the onClose function directly, setting this value so that we can have the full lifecycle\n // for out component, so that all closing steps will not be skipped.\n close: () => {\n vm.exposed!.close()\n },\n }\n\n const instance: MessageContext = {\n id,\n vnode,\n vm,\n handler,\n props: (vnode.component as any).props,\n }\n\n return instance\n}\n\nconst message: MessageFn &\n Partial<Message> & { _context: AppContext | null } = (\n options = {},\n context\n) => {\n if (!isClient) return { close: () => undefined }\n\n const normalized = normalizeOptions(options)\n const instances = getOrCreatePlacementInstances(\n normalized.placement || MESSAGE_DEFAULT_PLACEMENT\n )\n\n if (normalized.grouping && instances.length) {\n const instance = instances.find(\n ({ vnode: vm }) => vm.props?.message === normalized.message\n )\n if (instance) {\n instance.props.repeatNum! += 1\n instance.props.type = normalized.type\n return instance.handler\n }\n }\n\n if (isNumber(messageConfig.max) && instances.length >= messageConfig.max) {\n return { close: () => undefined }\n }\n\n const instance = createMessage(normalized, context)\n\n instances.push(instance)\n return instance.handler\n}\n\nmessageTypes.forEach((type) => {\n message[type] = (options = {}, appContext) => {\n const normalized = normalizeOptions(options)\n return message({ ...normalized, type }, appContext)\n }\n})\n\nexport function closeAll(type?: MessageType): void {\n for (const placement in placementInstances) {\n if (hasOwn(placementInstances, placement)) {\n // Create a copy of instances to avoid modification during iteration\n const instances: MessageContext[] = [...placementInstances[placement]]\n for (const instance of instances) {\n if (!type || type === instance.props.type) {\n instance.handler.close()\n }\n }\n }\n }\n}\n\nexport function closeAllByPlacement(placement: MessagePlacement) {\n if (!placementInstances[placement]) return\n // Create a copy of instances to avoid modification during iteration\n const instances = [...placementInstances[placement]]\n instances.forEach((instance) => instance.handler.close())\n}\n\nmessage.closeAll = closeAll\nmessage.closeAllByPlacement = closeAllByPlacement\nmessage._context = null\n\nexport default message as Message\n"],"mappings":";;;;;;;;;;AAkCA,IAAI,OAAO;AAIX,MAAM,qBAAqB,eAA+B;CAExD,IAAI,CADa,WAAW,UAE1B,WAAW,WAAW,SAAS;MAC1B,IAAI,SAAS,WAAW,SAAS,EAAE;EACxC,IAAI,WAAW,SAAS,cAA2B,WAAW,SAAS;EAGvE,IAAI,CAAC,UAAU,SAAS,EAAE;GACxB,UACE,aACA,4EACD;GACD,WAAW,SAAS;;EAEtB,WAAW,WAAW;;;AAI1B,MAAM,sBAAsB,eAA+B;CAEzD,IACE,CAAC,WAAW,aACZ,SAAS,cAAc,UAAU,IACjC,cAAc,WAEd,WAAW,YAAY,cAAc;CAIvC,IAAI,CAAC,WAAW,WACd,WAAW,YAAA;CAGb,IAAI,CAAC,iBAAiB,SAAS,WAAW,UAAW,EAAE;EACrD,UACE,aACA,sBAAsB,WAAW,UAAU,0BAC5C;EACD,WAAW,YAAA;;;AAIf,MAAM,oBAAoB,WAA2B;CACnD,MAAM,UACJ,CAAC,UAAU,SAAS,OAAO,IAAI,QAAQ,OAAO,IAAI,WAAW,OAAO,GAChE,EAAE,SAAS,QAAQ,GACnB;CAEN,MAAM,aAA6B;EACjC,GAAG;EACH,GAAG;EACJ;CAED,kBAAkB,WAAW;CAC7B,mBAAmB,WAAW;CAK9B,IAAI,UAAU,cAAc,SAAS,IAAI,CAAC,WAAW,UACnD,WAAW,WAAW,cAAc;CAEtC,IAAI,SAAS,cAAc,SAAS,IAAI,WAAW,aAAa,KAC9D,WAAW,WAAW,cAAc;CAEtC,IAAI,SAAS,cAAc,OAAO,IAAI,WAAW,WAAW,IAC1D,WAAW,SAAS,cAAc;CAEpC,IAAI,UAAU,cAAc,UAAU,IAAI,CAAC,WAAW,WACpD,WAAW,YAAY,cAAc;CAEvC,IAAI,UAAU,cAAc,MAAM,IAAI,CAAC,WAAW,OAChD,WAAW,QAAQ,cAAc;CAGnC,OAAO;;AAGT,MAAM,gBAAgB,aAA6B;CAEjD,MAAM,YAAY,mBADA,SAAS,MAAM,aAAA;CAGjC,MAAM,MAAM,UAAU,QAAQ,SAAS;CACvC,IAAI,QAAQ,IAAI;CAChB,UAAU,OAAO,KAAK,EAAE;CACxB,MAAM,EAAE,YAAY;CACpB,QAAQ,OAAO;;AAGjB,MAAM,iBACJ,EAAE,UAAU,GAAG,WACf,YACmB;CACnB,MAAM,KAAK,WAAW;CACtB,MAAM,cAAc,QAAQ;CAE5B,MAAM,YAAY,SAAS,cAAc,MAAM;CAE/C,MAAM,QAAQ;EACZ,GAAG;EAGH;EACA,eAAe;GACb,eAAe;GACf,aAAa,SAAS;;EAIxB,iBAAiB;GAIf,OAAO,MAAM,UAAU;;EAE1B;CACD,MAAM,QAAQ,YACZA,iBACA,OACA,WAAW,MAAM,QAAQ,IAAI,QAAQ,MAAM,QAAQ,GAC/C,EACE,SAAS,WAAW,MAAM,QAAQ,GAC9B,MAAM,gBACA,MAAM,SACjB,GACD,KACL;CACD,MAAM,aAAa,WAAW,QAAQ;CAEtC,OAAO,OAAO,UAAU;CAExB,SAAS,YAAY,UAAU,kBAAmB;CAElD,MAAM,KAAK,MAAM;CAUjB,MAAM,WAA2B;EAC/B;EACA;EACA;EACA,SAAA,EATA,aAAa;GACX,GAAG,QAAS,OAAO;KAQd;EACP,OAAQ,MAAM,UAAkB;EACjC;CAED,OAAO;;AAGT,MAAM,WAEJ,UAAU,EAAE,EACZ,YACG;CACH,IAAI,CAAC,UAAU,OAAO,EAAE,aAAa,KAAA,GAAW;CAEhD,MAAM,aAAa,iBAAiB,QAAQ;CAC5C,MAAM,YAAY,8BAChB,WAAW,aAAA,MACZ;CAED,IAAI,WAAW,YAAY,UAAU,QAAQ;EAC3C,MAAM,WAAW,UAAU,MACxB,EAAE,OAAO,SAAS,GAAG,OAAO,YAAY,WAAW,QACrD;EACD,IAAI,UAAU;GACZ,SAAS,MAAM,aAAc;GAC7B,SAAS,MAAM,OAAO,WAAW;GACjC,OAAO,SAAS;;;CAIpB,IAAI,SAAS,cAAc,IAAI,IAAI,UAAU,UAAU,cAAc,KACnE,OAAO,EAAE,aAAa,KAAA,GAAW;CAGnC,MAAM,WAAW,cAAc,YAAY,QAAQ;CAEnD,UAAU,KAAK,SAAS;CACxB,OAAO,SAAS;;AAGlB,aAAa,SAAS,SAAS;CAC7B,QAAQ,SAAS,UAAU,EAAE,EAAE,eAAe;EAE5C,OAAO,QAAQ;GAAE,GADE,iBAAiB,QACN;GAAE;GAAM,EAAE,WAAW;;EAErD;AAEF,SAAgB,SAAS,MAA0B;CACjD,KAAK,MAAM,aAAa,oBACtB,IAAI,OAAO,oBAAoB,UAAU,EAAE;EAEzC,MAAM,YAA8B,CAAC,GAAG,mBAAmB,WAAW;EACtE,KAAK,MAAM,YAAY,WACrB,IAAI,CAAC,QAAQ,SAAS,SAAS,MAAM,MACnC,SAAS,QAAQ,OAAO;;;AAOlC,SAAgB,oBAAoB,WAA6B;CAC/D,IAAI,CAAC,mBAAmB,YAAY;CAGpC,CADmB,GAAG,mBAAmB,WAChC,CAAC,SAAS,aAAa,SAAS,QAAQ,OAAO,CAAC;;AAG3D,QAAQ,WAAW;AACnB,QAAQ,sBAAsB;AAC9B,QAAQ,WAAW"}
|