element-plus 1.2.0-beta.4 → 1.2.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +1 -1
- package/dist/index.full.js +1149 -988
- package/dist/index.full.min.js +9 -9
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +9 -9
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +1145 -982
- package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/calendar/index.d.ts +2 -2
- package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs.map +1 -1
- package/es/components/calendar/src/index.vue.d.ts +1 -1
- package/es/components/calendar/src/index.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/calendar/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/calendar/src/index.vue_vue_type_template_id_819aa44a_lang.mjs.map +1 -1
- package/es/components/carousel/src/item.vue_vue_type_script_lang.mjs +0 -1
- package/es/components/carousel/src/item.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/carousel/src/item.vue_vue_type_template_id_3d2e4fb8_lang.mjs.map +1 -1
- package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.vue_vue_type_script_lang.mjs +13 -18
- package/es/components/cascader-panel/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.mjs.map +1 -1
- package/es/components/cascader-panel/src/menu.vue.d.ts +1 -1
- package/es/components/cascader-panel/src/menu.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/cascader-panel/src/menu.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/cascader-panel/src/menu.vue_vue_type_template_id_9c79e4e2_lang.mjs.map +1 -1
- package/es/components/color-picker/index.d.ts +2 -2
- package/es/components/color-picker/src/index.vue.d.ts +1 -1
- package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.mjs.map +1 -1
- package/es/components/config-provider/index.d.ts +2 -1
- package/es/components/config-provider/index.mjs +1 -0
- package/es/components/config-provider/index.mjs.map +1 -1
- package/es/components/config-provider/src/config-provider.d.ts +1 -1
- package/es/components/config-provider/src/index.d.ts +1 -1
- package/es/components/config-provider/src/index.mjs +2 -2
- package/es/components/config-provider/src/index.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_template_id_0572814e_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-month-table.vue.d.ts +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_template_id_2f6fcbf2_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_template_id_441df31d_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.mjs.map +1 -1
- package/es/components/dialog/src/use-dialog.mjs +4 -4
- package/es/components/dialog/src/use-dialog.mjs.map +1 -1
- package/es/components/dropdown/index.d.ts +1 -1
- package/es/components/dropdown/src/dropdown.vue.d.ts +1 -1
- package/es/components/empty/src/empty.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/empty/src/empty.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/empty/src/empty.vue_vue_type_template_id_10d211eb_lang.mjs.map +1 -1
- package/es/components/image/index.d.ts +1 -1
- package/es/components/image/src/image.vue.d.ts +1 -1
- package/es/components/image/src/image.vue_vue_type_script_lang.mjs +3 -3
- package/es/components/image/src/image.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/image/src/image.vue_vue_type_template_id_34467287_lang.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.mjs.map +1 -1
- package/es/components/index.mjs +1 -0
- package/es/components/index.mjs.map +1 -1
- package/es/components/input/src/input.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.mjs +1 -2
- package/es/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/menu/src/menu-collapse-transition.vue_vue_type_template_id_db8e3ce6_lang.mjs.map +1 -1
- package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs +8 -8
- package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.mjs +2 -0
- package/es/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.mjs.map +1 -1
- package/es/components/page-header/index.d.ts +1 -1
- package/es/components/page-header/src/page-header.vue.d.ts +1 -1
- package/es/components/page-header/src/page-header.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/page-header/src/page-header.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/page-header/src/page-header.vue_vue_type_template_id_d12fb4b2_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper.vue.d.ts +1 -1
- package/es/components/pagination/src/components/jumper.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/pagination/src/components/jumper.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper.vue_vue_type_template_id_772239ce_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/sizes.vue.d.ts +1 -1
- package/es/components/pagination/src/components/sizes.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/pagination/src/components/sizes.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/sizes.vue_vue_type_template_id_3a063678_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/total.vue.d.ts +1 -1
- package/es/components/pagination/src/components/total.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/pagination/src/components/total.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/pagination/src/components/total.vue_vue_type_template_id_bc261314_lang.mjs.map +1 -1
- package/es/components/pagination/src/pagination.mjs +2 -2
- package/es/components/pagination/src/pagination.mjs.map +1 -1
- package/es/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.mjs.map +1 -1
- package/es/components/popper/src/use-popper/defaults.mjs +1 -1
- package/es/components/popper/src/use-popper/index.d.ts +1 -1538
- package/es/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar.vue_vue_type_template_id_303f965d_lang.mjs.map +1 -1
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs +3 -3
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs.map +1 -1
- package/es/components/select/src/useSelect.mjs +3 -3
- package/es/components/select/src/useSelect.mjs.map +1 -1
- package/es/components/select-v2/index.d.ts +2 -2
- package/es/components/select-v2/src/select.vue.d.ts +1 -1
- package/es/components/select-v2/src/useSelect.mjs +2 -2
- package/es/components/select-v2/src/useSelect.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/table/index.d.ts +1 -1
- package/es/components/table/src/filter-panel.vue.d.ts +2 -2
- package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.mjs.map +1 -1
- package/es/components/table/src/table-body/index.d.ts +1 -1
- package/es/components/table/src/table-footer/index.d.ts +1 -1
- package/es/components/table/src/table-header/index.d.ts +1 -1
- package/es/components/table/src/table.vue.d.ts +5 -13
- package/es/components/table/src/table.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/table/src/table.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_template_id_3b3cfa6a_lang.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_template_id_57d94b44_lang.mjs.map +1 -1
- package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel.vue.d.ts +1 -1
- package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.mjs.map +1 -1
- package/es/components/tree/index.d.ts +2 -2
- package/es/components/tree/src/tree.vue.d.ts +1 -1
- package/es/components/tree/src/tree.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/tree/src/tree.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/tree/src/tree.vue_vue_type_template_id_7539bec5_lang.mjs.map +1 -1
- package/es/components/tree-v2/index.d.ts +1 -1
- package/es/components/tree-v2/src/tree.vue.d.ts +1 -1
- package/es/components/tree-v2/src/tree.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/tree-v2/src/tree.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/tree-v2/src/tree.vue_vue_type_template_id_5b45a1b2_lang.mjs.map +1 -1
- package/es/components/tree-v2/src/virtual-tree.mjs +4 -4
- package/es/components/upload/src/upload-list.vue.d.ts +1 -1
- package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs +2 -2
- package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.mjs.map +1 -1
- package/es/hooks/index.d.ts +12 -15
- package/es/hooks/index.mjs +12 -15
- package/es/hooks/index.mjs.map +1 -1
- package/es/hooks/use-attrs/index.d.ts +2 -2
- package/es/hooks/use-attrs/index.mjs +2 -2
- package/es/hooks/use-attrs/index.mjs.map +1 -1
- package/es/hooks/use-focus/index.d.ts +1 -2
- package/es/hooks/use-focus/index.mjs +2 -2
- package/es/hooks/use-focus/index.mjs.map +1 -1
- package/es/hooks/use-form-item/index.d.ts +1 -1
- package/es/hooks/use-form-item/index.mjs +3 -3
- package/es/hooks/use-form-item/index.mjs.map +1 -1
- package/es/hooks/use-global-config/index.d.ts +1 -1
- package/es/hooks/use-global-config/index.mjs +1 -3
- package/es/hooks/use-global-config/index.mjs.map +1 -1
- package/es/hooks/use-locale/index.d.ts +9 -7
- package/es/hooks/use-locale/index.mjs +18 -51
- package/es/hooks/use-locale/index.mjs.map +1 -1
- package/es/hooks/use-lockscreen/index.d.ts +1 -2
- package/es/hooks/use-lockscreen/index.mjs +19 -21
- package/es/hooks/use-lockscreen/index.mjs.map +1 -1
- package/es/hooks/use-modal/index.d.ts +3 -3
- package/es/hooks/use-modal/index.mjs +6 -8
- package/es/hooks/use-modal/index.mjs.map +1 -1
- package/es/hooks/use-model-toggle/index.d.ts +3 -5
- package/es/hooks/use-model-toggle/index.mjs +9 -6
- package/es/hooks/use-model-toggle/index.mjs.map +1 -1
- package/es/hooks/use-popper/index.mjs +2 -2
- package/es/hooks/use-popper/index.mjs.map +1 -1
- package/es/hooks/use-prevent-global/index.d.ts +1 -2
- package/es/hooks/use-prevent-global/index.mjs +7 -7
- package/es/hooks/use-prevent-global/index.mjs.map +1 -1
- package/es/hooks/use-restore-active/index.d.ts +1 -2
- package/es/hooks/use-restore-active/index.mjs +2 -2
- package/es/hooks/use-restore-active/index.mjs.map +1 -1
- package/es/hooks/use-teleport/index.d.ts +1 -2
- package/es/hooks/use-teleport/index.mjs +4 -4
- package/es/hooks/use-teleport/index.mjs.map +1 -1
- package/es/hooks/use-throttle-render/index.d.ts +1 -1
- package/es/hooks/use-throttle-render/index.mjs +3 -3
- package/es/hooks/use-throttle-render/index.mjs.map +1 -1
- package/es/hooks/use-timeout/index.d.ts +2 -2
- package/es/hooks/use-timeout/index.mjs +10 -12
- package/es/hooks/use-timeout/index.mjs.map +1 -1
- package/es/hooks/use-transition-fallthrough/index.d.ts +1 -1
- package/es/hooks/use-transition-fallthrough/index.mjs.map +1 -1
- package/es/index.mjs +13 -15
- package/es/index.mjs.map +1 -1
- package/es/make-installer.mjs +2 -2
- package/es/make-installer.mjs.map +1 -1
- package/es/tokens/config-provider.d.ts +3 -3
- package/es/tokens/config-provider.mjs.map +1 -1
- package/es/utils/types.d.ts +25 -0
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js +1 -1
- package/lib/components/calendar/index.d.ts +2 -2
- package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js +1 -1
- package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js.map +1 -1
- package/lib/components/calendar/src/index.vue.d.ts +1 -1
- package/lib/components/calendar/src/index.vue_vue_type_script_lang.js +1 -1
- package/lib/components/calendar/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/calendar/src/index.vue_vue_type_template_id_819aa44a_lang.js.map +1 -1
- package/lib/components/carousel/src/item.vue_vue_type_script_lang.js +0 -1
- package/lib/components/carousel/src/item.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/carousel/src/item.vue_vue_type_template_id_3d2e4fb8_lang.js.map +1 -1
- package/lib/components/cascader/src/index.vue_vue_type_script_lang.js +1 -1
- package/lib/components/cascader/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js.map +1 -1
- package/lib/components/cascader-panel/src/index.vue_vue_type_script_lang.js +13 -18
- package/lib/components/cascader-panel/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.js.map +1 -1
- package/lib/components/cascader-panel/src/menu.vue.d.ts +1 -1
- package/lib/components/cascader-panel/src/menu.vue_vue_type_script_lang.js +1 -1
- package/lib/components/cascader-panel/src/menu.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/cascader-panel/src/menu.vue_vue_type_template_id_9c79e4e2_lang.js.map +1 -1
- package/lib/components/color-picker/index.d.ts +2 -2
- package/lib/components/color-picker/src/index.vue.d.ts +1 -1
- package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js +1 -1
- package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.js.map +1 -1
- package/lib/components/config-provider/index.d.ts +2 -1
- package/lib/components/config-provider/index.js +2 -0
- package/lib/components/config-provider/index.js.map +1 -1
- package/lib/components/config-provider/src/config-provider.d.ts +1 -1
- package/lib/components/config-provider/src/index.d.ts +1 -1
- package/lib/components/config-provider/src/index.js +1 -1
- package/lib/components/config-provider/src/index.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.js +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_template_id_0572814e_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue.d.ts +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.js +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_template_id_2f6fcbf2_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.js +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_template_id_441df31d_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.js.map +1 -1
- package/lib/components/dialog/src/use-dialog.js +3 -3
- package/lib/components/dialog/src/use-dialog.js.map +1 -1
- package/lib/components/dropdown/index.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown.vue.d.ts +1 -1
- package/lib/components/empty/src/empty.vue_vue_type_script_lang.js +1 -1
- package/lib/components/empty/src/empty.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/empty/src/empty.vue_vue_type_template_id_10d211eb_lang.js.map +1 -1
- package/lib/components/image/index.d.ts +1 -1
- package/lib/components/image/src/image.vue.d.ts +1 -1
- package/lib/components/image/src/image.vue_vue_type_script_lang.js +2 -2
- package/lib/components/image/src/image.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/image/src/image.vue_vue_type_template_id_34467287_lang.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js +1 -1
- package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.js.map +1 -1
- package/lib/components/index.js +2 -0
- package/lib/components/index.js.map +1 -1
- package/lib/components/input/src/input.vue_vue_type_script_lang.js +1 -1
- package/lib/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.js +1 -2
- package/lib/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/menu/src/menu-collapse-transition.vue_vue_type_template_id_db8e3ce6_lang.js.map +1 -1
- package/lib/components/message-box/src/index.vue_vue_type_script_lang.js +6 -6
- package/lib/components/message-box/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.js +2 -0
- package/lib/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.js.map +1 -1
- package/lib/components/page-header/index.d.ts +1 -1
- package/lib/components/page-header/src/page-header.vue.d.ts +1 -1
- package/lib/components/page-header/src/page-header.vue_vue_type_script_lang.js +1 -1
- package/lib/components/page-header/src/page-header.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/page-header/src/page-header.vue_vue_type_template_id_d12fb4b2_lang.js.map +1 -1
- package/lib/components/pagination/src/components/jumper.vue.d.ts +1 -1
- package/lib/components/pagination/src/components/jumper.vue_vue_type_script_lang.js +1 -1
- package/lib/components/pagination/src/components/jumper.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/pagination/src/components/jumper.vue_vue_type_template_id_772239ce_lang.js.map +1 -1
- package/lib/components/pagination/src/components/sizes.vue.d.ts +1 -1
- package/lib/components/pagination/src/components/sizes.vue_vue_type_script_lang.js +1 -1
- package/lib/components/pagination/src/components/sizes.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/pagination/src/components/sizes.vue_vue_type_template_id_3a063678_lang.js.map +1 -1
- package/lib/components/pagination/src/components/total.vue.d.ts +1 -1
- package/lib/components/pagination/src/components/total.vue_vue_type_script_lang.js +1 -1
- package/lib/components/pagination/src/components/total.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/pagination/src/components/total.vue_vue_type_template_id_bc261314_lang.js.map +1 -1
- package/lib/components/pagination/src/pagination.js +1 -1
- package/lib/components/pagination/src/pagination.js.map +1 -1
- package/lib/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.js +1 -1
- package/lib/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.js.map +1 -1
- package/lib/components/popper/src/use-popper/defaults.js +1 -1
- package/lib/components/popper/src/use-popper/index.d.ts +1 -1538
- package/lib/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.js +1 -1
- package/lib/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar.vue_vue_type_template_id_303f965d_lang.js.map +1 -1
- package/lib/components/select/src/select.vue_vue_type_script_lang.js +2 -2
- package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js.map +1 -1
- package/lib/components/select/src/useSelect.js +2 -2
- package/lib/components/select/src/useSelect.js.map +1 -1
- package/lib/components/select-v2/index.d.ts +2 -2
- package/lib/components/select-v2/src/select.vue.d.ts +1 -1
- package/lib/components/select-v2/src/useSelect.js +1 -1
- package/lib/components/select-v2/src/useSelect.js.map +1 -1
- package/lib/components/skeleton/src/skeleton.vue_vue_type_script_lang.js +1 -1
- package/lib/components/skeleton/src/skeleton.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/table/index.d.ts +1 -1
- package/lib/components/table/src/filter-panel.vue.d.ts +2 -2
- package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js +1 -1
- package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.js.map +1 -1
- package/lib/components/table/src/table-body/index.d.ts +1 -1
- package/lib/components/table/src/table-footer/index.d.ts +1 -1
- package/lib/components/table/src/table-header/index.d.ts +1 -1
- package/lib/components/table/src/table.vue.d.ts +5 -13
- package/lib/components/table/src/table.vue_vue_type_script_lang.js +1 -1
- package/lib/components/table/src/table.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js +1 -1
- package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.js +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_template_id_3b3cfa6a_lang.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.js +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_template_id_57d94b44_lang.js.map +1 -1
- package/lib/components/transfer/src/index.vue_vue_type_script_lang.js +1 -1
- package/lib/components/transfer/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel.vue.d.ts +1 -1
- package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js +1 -1
- package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.js.map +1 -1
- package/lib/components/tree/index.d.ts +2 -2
- package/lib/components/tree/src/tree.vue.d.ts +1 -1
- package/lib/components/tree/src/tree.vue_vue_type_script_lang.js +1 -1
- package/lib/components/tree/src/tree.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/tree/src/tree.vue_vue_type_template_id_7539bec5_lang.js.map +1 -1
- package/lib/components/tree-v2/index.d.ts +1 -1
- package/lib/components/tree-v2/src/tree.vue.d.ts +1 -1
- package/lib/components/tree-v2/src/tree.vue_vue_type_script_lang.js +1 -1
- package/lib/components/tree-v2/src/tree.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/tree-v2/src/tree.vue_vue_type_template_id_5b45a1b2_lang.js.map +1 -1
- package/lib/components/tree-v2/src/virtual-tree.js +4 -4
- package/lib/components/upload/src/upload-list.vue.d.ts +1 -1
- package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js +1 -1
- package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.js.map +1 -1
- package/lib/hooks/index.d.ts +12 -15
- package/lib/hooks/index.js +42 -48
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/use-attrs/index.d.ts +2 -2
- package/lib/hooks/use-attrs/index.js +2 -2
- package/lib/hooks/use-attrs/index.js.map +1 -1
- package/lib/hooks/use-focus/index.d.ts +1 -2
- package/lib/hooks/use-focus/index.js +2 -2
- package/lib/hooks/use-focus/index.js.map +1 -1
- package/lib/hooks/use-form-item/index.d.ts +1 -1
- package/lib/hooks/use-form-item/index.js +2 -2
- package/lib/hooks/use-form-item/index.js.map +1 -1
- package/lib/hooks/use-global-config/index.d.ts +1 -1
- package/lib/hooks/use-global-config/index.js +1 -3
- package/lib/hooks/use-global-config/index.js.map +1 -1
- package/lib/hooks/use-locale/index.d.ts +9 -7
- package/lib/hooks/use-locale/index.js +23 -50
- package/lib/hooks/use-locale/index.js.map +1 -1
- package/lib/hooks/use-lockscreen/index.d.ts +1 -2
- package/lib/hooks/use-lockscreen/index.js +18 -20
- package/lib/hooks/use-lockscreen/index.js.map +1 -1
- package/lib/hooks/use-modal/index.d.ts +3 -3
- package/lib/hooks/use-modal/index.js +6 -8
- package/lib/hooks/use-modal/index.js.map +1 -1
- package/lib/hooks/use-model-toggle/index.d.ts +3 -5
- package/lib/hooks/use-model-toggle/index.js +9 -6
- package/lib/hooks/use-model-toggle/index.js.map +1 -1
- package/lib/hooks/use-popper/index.js +2 -2
- package/lib/hooks/use-popper/index.js.map +1 -1
- package/lib/hooks/use-prevent-global/index.d.ts +1 -2
- package/lib/hooks/use-prevent-global/index.js +7 -7
- package/lib/hooks/use-prevent-global/index.js.map +1 -1
- package/lib/hooks/use-restore-active/index.d.ts +1 -2
- package/lib/hooks/use-restore-active/index.js +2 -2
- package/lib/hooks/use-restore-active/index.js.map +1 -1
- package/lib/hooks/use-teleport/index.d.ts +1 -2
- package/lib/hooks/use-teleport/index.js +4 -4
- package/lib/hooks/use-teleport/index.js.map +1 -1
- package/lib/hooks/use-throttle-render/index.d.ts +1 -1
- package/lib/hooks/use-throttle-render/index.js +3 -3
- package/lib/hooks/use-throttle-render/index.js.map +1 -1
- package/lib/hooks/use-timeout/index.d.ts +2 -2
- package/lib/hooks/use-timeout/index.js +10 -12
- package/lib/hooks/use-timeout/index.js.map +1 -1
- package/lib/hooks/use-transition-fallthrough/index.d.ts +1 -1
- package/lib/hooks/use-transition-fallthrough/index.js.map +1 -1
- package/lib/index.js +46 -50
- package/lib/index.js.map +1 -1
- package/lib/make-installer.js +1 -1
- package/lib/make-installer.js.map +1 -1
- package/lib/tokens/config-provider.d.ts +3 -3
- package/lib/tokens/config-provider.js.map +1 -1
- package/lib/utils/types.d.ts +25 -0
- 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/theme-chalk/el-dropdown.css +1 -1
- package/theme-chalk/el-input.css +1 -1
- package/theme-chalk/el-tag.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/dropdown.scss +2 -0
- package/theme-chalk/src/input.scss +4 -0
- package/theme-chalk/src/tag.scss +4 -1
- package/web-types.json +1 -1
- package/es/components/cascader/index.d.ts +0 -8748
- package/es/components/cascader/src/index.vue.d.ts +0 -4380
- package/es/components/message-box/src/index.vue.d.ts +0 -1838
- package/es/components/popper/index.d.ts +0 -3476
- package/es/components/popper/src/index.vue.d.ts +0 -1735
- package/es/hooks/use-css-var/index.d.ts +0 -36
- package/es/hooks/use-css-var/index.mjs +0 -45
- package/es/hooks/use-css-var/index.mjs.map +0 -1
- package/es/hooks/use-events/index.d.ts +0 -7
- package/es/hooks/use-events/index.mjs +0 -19
- package/es/hooks/use-events/index.mjs.map +0 -1
- package/es/hooks/use-migrating/index.d.ts +0 -7
- package/es/hooks/use-migrating/index.mjs +0 -35
- package/es/hooks/use-migrating/index.mjs.map +0 -1
- package/es/hooks/use-transition/index.d.ts +0 -13
- package/es/hooks/use-transition/index.mjs +0 -25
- package/es/hooks/use-transition/index.mjs.map +0 -1
- package/lib/components/cascader/index.d.ts +0 -8748
- package/lib/components/cascader/src/index.vue.d.ts +0 -4380
- package/lib/components/message-box/src/index.vue.d.ts +0 -1838
- package/lib/components/popper/index.d.ts +0 -3476
- package/lib/components/popper/src/index.vue.d.ts +0 -1735
- package/lib/hooks/use-css-var/index.d.ts +0 -36
- package/lib/hooks/use-css-var/index.js +0 -51
- package/lib/hooks/use-css-var/index.js.map +0 -1
- package/lib/hooks/use-events/index.d.ts +0 -7
- package/lib/hooks/use-events/index.js +0 -23
- package/lib/hooks/use-events/index.js.map +0 -1
- package/lib/hooks/use-migrating/index.d.ts +0 -7
- package/lib/hooks/use-migrating/index.js +0 -39
- package/lib/hooks/use-migrating/index.js.map +0 -1
- package/lib/hooks/use-transition/index.d.ts +0 -13
- package/lib/hooks/use-transition/index.js +0 -30
- package/lib/hooks/use-transition/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-popper/index.ts"],"sourcesContent":["import {\n cloneVNode,\n computed,\n Fragment,\n getCurrentInstance,\n h,\n nextTick,\n toDisplayString,\n toRef,\n Transition,\n ref,\n renderSlot,\n withDirectives,\n} from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { createPopper } from '@popperjs/core'\nimport { ClickOutside } from '@element-plus/directives'\nimport {\n generateId,\n isHTMLElement,\n isString,\n refAttacher,\n} from '@element-plus/utils/util'\nimport { getFirstValidNode } from '@element-plus/utils/vnode'\nimport { stop } from '@element-plus/utils/dom'\nimport PopupManager from '@element-plus/utils/popup-manager'\nimport { throwError } from '@element-plus/utils/error'\n\nimport useTeleport from '../use-teleport'\nimport useTimeout from '../use-timeout'\nimport { useModelToggle } from '../use-model-toggle'\nimport { useTransitionFallthrough } from '../use-transition-fallthrough'\nimport { defaultPopperOptions, defaultModifiers } from './use-popper-options'\nimport { useTargetEvents, DEFAULT_TRIGGER } from './use-target-events'\n\nimport type {\n CSSProperties,\n ComponentPublicInstance,\n ExtractPropTypes,\n PropType,\n} from 'vue'\nimport type {\n Instance as PopperInstance,\n StrictModifiers,\n} from '@popperjs/core'\nimport type { RefElement, Nullable } from '@element-plus/utils/types'\nimport type { Trigger } from './use-target-events'\n\nexport type PopperEffect = 'light' | 'dark'\nexport type Offset = [number, number] | number\n\ntype ElementType = ComponentPublicInstance | HTMLElement\n\nexport const DARK_EFFECT = 'dark'\nexport const LIGHT_EFFECT = 'light'\n\nexport const usePopperControlProps = {\n appendToBody: {\n type: Boolean,\n default: true,\n },\n arrowOffset: {\n type: Number,\n },\n popperOptions: defaultPopperOptions,\n popperClass: {\n type: String,\n default: '',\n },\n}\n\nexport const usePopperProps = {\n ...usePopperControlProps,\n // the arrow size is an equailateral triangle with 10px side length, the 3rd side length ~ 14.1px\n // adding a offset to the ceil of 4.1 should be 5 this resolves the problem of arrow overflowing out of popper.\n autoClose: {\n type: Number,\n default: 0,\n },\n content: {\n type: String,\n default: '',\n },\n class: String,\n style: Object,\n hideAfter: {\n type: Number,\n default: 200,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n effect: {\n type: String as PropType<PopperEffect>,\n default: DARK_EFFECT,\n },\n enterable: {\n type: Boolean,\n default: true,\n },\n manualMode: {\n type: Boolean,\n default: false,\n },\n showAfter: {\n type: Number,\n default: 0,\n },\n pure: {\n type: Boolean,\n default: false,\n },\n showArrow: {\n type: Boolean,\n default: true,\n },\n transition: {\n type: String,\n default: 'el-fade-in-linear',\n },\n trigger: {\n type: [String, Array] as PropType<Trigger>,\n default: DEFAULT_TRIGGER,\n },\n visible: {\n type: Boolean,\n default: undefined,\n },\n stopPopperMouseEvent: {\n type: Boolean,\n default: true,\n },\n}\n\nexport const usePopperHook = () => {\n const vm = getCurrentInstance()!\n const props: ExtractPropTypes<typeof usePopperProps> = vm.proxy?.$props as any\n const { slots } = vm\n\n const arrowRef = ref<RefElement>(null)\n const triggerRef = ref<ElementType>(null)\n const popperRef = ref<RefElement>(null)\n\n const popperStyle = ref<CSSProperties>({ zIndex: PopupManager.nextZIndex() })\n const visible = ref(false)\n const isManual = computed(\n () => props.manualMode || props.trigger === 'manual'\n )\n\n const popperId = `el-popper-${generateId()}`\n let popperInstance: Nullable<PopperInstance> = null\n\n const { renderTeleport, showTeleport, hideTeleport } = useTeleport(\n popupRenderer,\n toRef(props, 'appendToBody')\n )\n\n const { show, hide } = useModelToggle({\n indicator: visible,\n onShow,\n onHide,\n })\n\n const { registerTimeout, cancelTimeout } = useTimeout()\n\n // event handlers\n\n function onShow() {\n popperStyle.value.zIndex = PopupManager.nextZIndex()\n nextTick(initializePopper)\n }\n\n function onHide() {\n hideTeleport()\n nextTick(detachPopper)\n }\n\n /**\n * The calling mechanism here is:\n * when the visibility gets changed, let's say we change it to true\n * the delayShow gets called which initializes a global root node for the popper content\n * to insert in, then it register a timer for calling the show method, which changes the flag to\n * true, then calls onShow method.\n * So the order of invocation is: delayedShow -> timer(show) -> set the indicator to true -> onShow\n */\n\n function delayShow() {\n if (isManual.value || props.disabled) return\n // renders out the teleport element root.\n showTeleport()\n registerTimeout(show, props.showAfter)\n }\n\n function delayHide() {\n if (isManual.value) return\n registerTimeout(hide, props.hideAfter)\n }\n\n function onToggle() {\n if (visible.value) {\n delayShow()\n } else {\n delayHide()\n }\n }\n\n function detachPopper() {\n popperInstance?.destroy?.()\n popperInstance = null\n }\n\n function onPopperMouseEnter() {\n // if trigger is click, user won't be able to close popper when\n // user tries to move the mouse over popper contents\n if (props.enterable && props.trigger !== 'click') {\n cancelTimeout()\n }\n }\n\n function onPopperMouseLeave() {\n const { trigger } = props\n const shouldPrevent =\n (isString(trigger) && (trigger === 'click' || trigger === 'focus')) ||\n // we'd like to test array type trigger here, but the only case we need to cover is trigger === 'click' or\n // trigger === 'focus', because that when trigger is string\n // trigger.length === 1 and trigger[0] === 5 chars string is mutually exclusive.\n // so there will be no need to test if trigger is array type.\n (trigger.length === 1 &&\n (trigger[0] === 'click' || trigger[0] === 'focus'))\n if (shouldPrevent) return\n delayHide()\n }\n\n function initializePopper() {\n if (!visible.value || popperInstance !== null) {\n return\n }\n const unwrappedTrigger = triggerRef.value\n const $el = isHTMLElement(unwrappedTrigger)\n ? unwrappedTrigger\n : (unwrappedTrigger as ComponentPublicInstance).$el\n\n popperInstance = createPopper($el, popperRef.value, buildPopperOptions())\n popperInstance.update()\n }\n\n function buildPopperOptions() {\n const modifiers = [...defaultModifiers, ...props.popperOptions.modifiers]\n\n if (props.showArrow) {\n modifiers.push({\n name: 'arrow',\n options: {\n padding: props.arrowOffset || 5,\n element: arrowRef.value,\n },\n } as StrictModifiers)\n }\n\n return {\n ...props.popperOptions,\n modifiers,\n }\n }\n\n const { onAfterEnter, onAfterLeave, onBeforeEnter, onBeforeLeave } =\n useTransitionFallthrough()\n\n const events = useTargetEvents(delayShow, delayHide, onToggle)\n\n const arrowRefAttacher = refAttacher(arrowRef)\n const popperRefAttacher = refAttacher(popperRef)\n const triggerRefAttacher = refAttacher(triggerRef)\n\n // renderers\n function popupRenderer() {\n const mouseUpAndDown = props.stopPopperMouseEvent ? stop : NOOP\n return h(\n Transition as any,\n {\n name: props.transition,\n onAfterEnter,\n onAfterLeave,\n onBeforeEnter,\n onBeforeLeave,\n },\n {\n default: () => () =>\n visible.value\n ? h(\n 'div',\n {\n 'aria-hidden': false,\n class: [\n props.popperClass,\n 'el-popper',\n `is-${props.effect}`,\n props.pure ? 'is-pure' : '',\n ],\n style: popperStyle.value,\n id: popperId,\n ref: popperRefAttacher,\n role: 'tooltip',\n onMouseenter: onPopperMouseEnter,\n onMouseleave: onPopperMouseLeave,\n onClick: stop,\n onMousedown: mouseUpAndDown,\n onMouseup: mouseUpAndDown,\n },\n [\n renderSlot(slots, 'default', {}, () => [\n toDisplayString(props.content),\n ]),\n arrowRenderer(),\n ]\n )\n : null,\n }\n )\n }\n\n function arrowRenderer() {\n return props.showArrow\n ? h(\n 'div',\n {\n ref: arrowRefAttacher,\n class: 'el-popper__arrow',\n 'data-popper-arrow': '',\n },\n null\n )\n : null\n }\n\n function triggerRenderer(triggerProps) {\n const trigger = slots.trigger?.()\n const firstElement = getFirstValidNode(trigger, 1)\n if (!firstElement)\n throwError('renderTrigger', 'trigger expects single rooted node')\n return cloneVNode(firstElement, triggerProps, true)\n }\n\n function render() {\n const trigger = triggerRenderer({\n 'aria-describedby': popperId,\n class: props.class,\n style: props.style,\n ref: triggerRefAttacher,\n ...events,\n })\n return h(Fragment, null, [\n isManual.value\n ? trigger\n : withDirectives(trigger, [[ClickOutside, delayHide]]),\n renderTeleport(),\n ])\n }\n\n return {\n render,\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-popper/index.ts"],"sourcesContent":["import {\n cloneVNode,\n computed,\n Fragment,\n getCurrentInstance,\n h,\n nextTick,\n toDisplayString,\n toRef,\n Transition,\n ref,\n renderSlot,\n withDirectives,\n} from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { createPopper } from '@popperjs/core'\nimport { ClickOutside } from '@element-plus/directives'\nimport {\n generateId,\n isHTMLElement,\n isString,\n refAttacher,\n} from '@element-plus/utils/util'\nimport { getFirstValidNode } from '@element-plus/utils/vnode'\nimport { stop } from '@element-plus/utils/dom'\nimport PopupManager from '@element-plus/utils/popup-manager'\nimport { throwError } from '@element-plus/utils/error'\n\nimport { useTeleport } from '../use-teleport'\nimport { useTimeout } from '../use-timeout'\nimport { useModelToggle } from '../use-model-toggle'\nimport { useTransitionFallthrough } from '../use-transition-fallthrough'\nimport { defaultPopperOptions, defaultModifiers } from './use-popper-options'\nimport { useTargetEvents, DEFAULT_TRIGGER } from './use-target-events'\n\nimport type {\n CSSProperties,\n ComponentPublicInstance,\n ExtractPropTypes,\n PropType,\n} from 'vue'\nimport type {\n Instance as PopperInstance,\n StrictModifiers,\n} from '@popperjs/core'\nimport type { RefElement, Nullable } from '@element-plus/utils/types'\nimport type { Trigger } from './use-target-events'\n\nexport type PopperEffect = 'light' | 'dark'\nexport type Offset = [number, number] | number\n\ntype ElementType = ComponentPublicInstance | HTMLElement\n\nexport const DARK_EFFECT = 'dark'\nexport const LIGHT_EFFECT = 'light'\n\nexport const usePopperControlProps = {\n appendToBody: {\n type: Boolean,\n default: true,\n },\n arrowOffset: {\n type: Number,\n },\n popperOptions: defaultPopperOptions,\n popperClass: {\n type: String,\n default: '',\n },\n}\n\nexport const usePopperProps = {\n ...usePopperControlProps,\n // the arrow size is an equailateral triangle with 10px side length, the 3rd side length ~ 14.1px\n // adding a offset to the ceil of 4.1 should be 5 this resolves the problem of arrow overflowing out of popper.\n autoClose: {\n type: Number,\n default: 0,\n },\n content: {\n type: String,\n default: '',\n },\n class: String,\n style: Object,\n hideAfter: {\n type: Number,\n default: 200,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n effect: {\n type: String as PropType<PopperEffect>,\n default: DARK_EFFECT,\n },\n enterable: {\n type: Boolean,\n default: true,\n },\n manualMode: {\n type: Boolean,\n default: false,\n },\n showAfter: {\n type: Number,\n default: 0,\n },\n pure: {\n type: Boolean,\n default: false,\n },\n showArrow: {\n type: Boolean,\n default: true,\n },\n transition: {\n type: String,\n default: 'el-fade-in-linear',\n },\n trigger: {\n type: [String, Array] as PropType<Trigger>,\n default: DEFAULT_TRIGGER,\n },\n visible: {\n type: Boolean,\n default: undefined,\n },\n stopPopperMouseEvent: {\n type: Boolean,\n default: true,\n },\n}\n\nexport const usePopperHook = () => {\n const vm = getCurrentInstance()!\n const props: ExtractPropTypes<typeof usePopperProps> = vm.proxy?.$props as any\n const { slots } = vm\n\n const arrowRef = ref<RefElement>(null)\n const triggerRef = ref<ElementType>(null)\n const popperRef = ref<RefElement>(null)\n\n const popperStyle = ref<CSSProperties>({ zIndex: PopupManager.nextZIndex() })\n const visible = ref(false)\n const isManual = computed(\n () => props.manualMode || props.trigger === 'manual'\n )\n\n const popperId = `el-popper-${generateId()}`\n let popperInstance: Nullable<PopperInstance> = null\n\n const { renderTeleport, showTeleport, hideTeleport } = useTeleport(\n popupRenderer,\n toRef(props, 'appendToBody')\n )\n\n const { show, hide } = useModelToggle({\n indicator: visible,\n onShow,\n onHide,\n })\n\n const { registerTimeout, cancelTimeout } = useTimeout()\n\n // event handlers\n\n function onShow() {\n popperStyle.value.zIndex = PopupManager.nextZIndex()\n nextTick(initializePopper)\n }\n\n function onHide() {\n hideTeleport()\n nextTick(detachPopper)\n }\n\n /**\n * The calling mechanism here is:\n * when the visibility gets changed, let's say we change it to true\n * the delayShow gets called which initializes a global root node for the popper content\n * to insert in, then it register a timer for calling the show method, which changes the flag to\n * true, then calls onShow method.\n * So the order of invocation is: delayedShow -> timer(show) -> set the indicator to true -> onShow\n */\n\n function delayShow() {\n if (isManual.value || props.disabled) return\n // renders out the teleport element root.\n showTeleport()\n registerTimeout(show, props.showAfter)\n }\n\n function delayHide() {\n if (isManual.value) return\n registerTimeout(hide, props.hideAfter)\n }\n\n function onToggle() {\n if (visible.value) {\n delayShow()\n } else {\n delayHide()\n }\n }\n\n function detachPopper() {\n popperInstance?.destroy?.()\n popperInstance = null\n }\n\n function onPopperMouseEnter() {\n // if trigger is click, user won't be able to close popper when\n // user tries to move the mouse over popper contents\n if (props.enterable && props.trigger !== 'click') {\n cancelTimeout()\n }\n }\n\n function onPopperMouseLeave() {\n const { trigger } = props\n const shouldPrevent =\n (isString(trigger) && (trigger === 'click' || trigger === 'focus')) ||\n // we'd like to test array type trigger here, but the only case we need to cover is trigger === 'click' or\n // trigger === 'focus', because that when trigger is string\n // trigger.length === 1 and trigger[0] === 5 chars string is mutually exclusive.\n // so there will be no need to test if trigger is array type.\n (trigger.length === 1 &&\n (trigger[0] === 'click' || trigger[0] === 'focus'))\n if (shouldPrevent) return\n delayHide()\n }\n\n function initializePopper() {\n if (!visible.value || popperInstance !== null) {\n return\n }\n const unwrappedTrigger = triggerRef.value\n const $el = isHTMLElement(unwrappedTrigger)\n ? unwrappedTrigger\n : (unwrappedTrigger as ComponentPublicInstance).$el\n\n popperInstance = createPopper($el, popperRef.value, buildPopperOptions())\n popperInstance.update()\n }\n\n function buildPopperOptions() {\n const modifiers = [...defaultModifiers, ...props.popperOptions.modifiers]\n\n if (props.showArrow) {\n modifiers.push({\n name: 'arrow',\n options: {\n padding: props.arrowOffset || 5,\n element: arrowRef.value,\n },\n } as StrictModifiers)\n }\n\n return {\n ...props.popperOptions,\n modifiers,\n }\n }\n\n const { onAfterEnter, onAfterLeave, onBeforeEnter, onBeforeLeave } =\n useTransitionFallthrough()\n\n const events = useTargetEvents(delayShow, delayHide, onToggle)\n\n const arrowRefAttacher = refAttacher(arrowRef)\n const popperRefAttacher = refAttacher(popperRef)\n const triggerRefAttacher = refAttacher(triggerRef)\n\n // renderers\n function popupRenderer() {\n const mouseUpAndDown = props.stopPopperMouseEvent ? stop : NOOP\n return h(\n Transition as any,\n {\n name: props.transition,\n onAfterEnter,\n onAfterLeave,\n onBeforeEnter,\n onBeforeLeave,\n },\n {\n default: () => () =>\n visible.value\n ? h(\n 'div',\n {\n 'aria-hidden': false,\n class: [\n props.popperClass,\n 'el-popper',\n `is-${props.effect}`,\n props.pure ? 'is-pure' : '',\n ],\n style: popperStyle.value,\n id: popperId,\n ref: popperRefAttacher,\n role: 'tooltip',\n onMouseenter: onPopperMouseEnter,\n onMouseleave: onPopperMouseLeave,\n onClick: stop,\n onMousedown: mouseUpAndDown,\n onMouseup: mouseUpAndDown,\n },\n [\n renderSlot(slots, 'default', {}, () => [\n toDisplayString(props.content),\n ]),\n arrowRenderer(),\n ]\n )\n : null,\n }\n )\n }\n\n function arrowRenderer() {\n return props.showArrow\n ? h(\n 'div',\n {\n ref: arrowRefAttacher,\n class: 'el-popper__arrow',\n 'data-popper-arrow': '',\n },\n null\n )\n : null\n }\n\n function triggerRenderer(triggerProps) {\n const trigger = slots.trigger?.()\n const firstElement = getFirstValidNode(trigger, 1)\n if (!firstElement)\n throwError('renderTrigger', 'trigger expects single rooted node')\n return cloneVNode(firstElement, triggerProps, true)\n }\n\n function render() {\n const trigger = triggerRenderer({\n 'aria-describedby': popperId,\n class: props.class,\n style: props.style,\n ref: triggerRefAttacher,\n ...events,\n })\n return h(Fragment, null, [\n isManual.value\n ? trigger\n : withDirectives(trigger, [[ClickOutside, delayHide]]),\n renderTeleport(),\n ])\n }\n\n return {\n render,\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
declare const
|
|
3
|
-
export default _default;
|
|
2
|
+
export declare const usePreventGlobal: <E extends keyof DocumentEventMap>(indicator: Ref<boolean>, evt: E, cb: (e: DocumentEventMap[E]) => boolean) => void;
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { watch } from 'vue';
|
|
2
|
-
import {
|
|
2
|
+
import { useEventListener } from '@vueuse/core';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
const usePreventGlobal = (indicator, evt, cb) => {
|
|
5
5
|
const prevent = (e) => {
|
|
6
|
-
if (cb(e))
|
|
6
|
+
if (cb(e))
|
|
7
7
|
e.stopImmediatePropagation();
|
|
8
|
-
}
|
|
9
8
|
};
|
|
9
|
+
let stop = void 0;
|
|
10
10
|
watch(() => indicator.value, (val) => {
|
|
11
11
|
if (val) {
|
|
12
|
-
|
|
12
|
+
stop = useEventListener(document, evt, prevent, true);
|
|
13
13
|
} else {
|
|
14
|
-
|
|
14
|
+
stop == null ? void 0 : stop();
|
|
15
15
|
}
|
|
16
16
|
}, { immediate: true });
|
|
17
17
|
};
|
|
18
18
|
|
|
19
|
-
export { usePreventGlobal
|
|
19
|
+
export { usePreventGlobal };
|
|
20
20
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-prevent-global/index.ts"],"sourcesContent":["import { watch } from 'vue'\nimport {
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-prevent-global/index.ts"],"sourcesContent":["import { watch } from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport type { Ref } from 'vue'\n\nexport const usePreventGlobal = <E extends keyof DocumentEventMap>(\n indicator: Ref<boolean>,\n evt: E,\n cb: (e: DocumentEventMap[E]) => boolean\n) => {\n const prevent = (e: DocumentEventMap[E]) => {\n if (cb(e)) e.stopImmediatePropagation()\n }\n let stop: (() => void) | undefined = undefined\n watch(\n () => indicator.value,\n (val) => {\n if (val) {\n stop = useEventListener(document, evt, prevent, true)\n } else {\n stop?.()\n }\n },\n { immediate: true }\n )\n}\n"],"names":[],"mappings":";;;MAIa,mBAAmB,CAC9B,WACA,KACA,OACG;AACH,QAAM,UAAU,CAAC,MAA2B;AAC1C,QAAI,GAAG;AAAI,QAAE;AAAA;AAEf,MAAI,OAAiC;AACrC,QACE,MAAM,UAAU,OAChB,CAAC,QAAQ;AACP,QAAI,KAAK;AACP,aAAO,iBAAiB,UAAU,KAAK,SAAS;AAAA,WAC3C;AACL;AAAA;AAAA,KAGJ,EAAE,WAAW;AAAA;;;;"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
declare const _default: (toggle: Ref<boolean>, initialFocus?: Ref<HTMLElement> | undefined) => void;
|
|
3
2
|
/**
|
|
4
3
|
* This method provides dialogable components the ability to restore previously activated element before
|
|
5
4
|
* the dialog gets opened
|
|
6
5
|
*/
|
|
7
|
-
export
|
|
6
|
+
export declare const useRestoreActive: (toggle: Ref<boolean>, initialFocus?: Ref<HTMLElement> | undefined) => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { watch, isRef } from 'vue';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
const useRestoreActive = (toggle, initialFocus) => {
|
|
4
4
|
let previousActive;
|
|
5
5
|
watch(() => toggle.value, (val) => {
|
|
6
6
|
var _a, _b;
|
|
@@ -19,5 +19,5 @@ var useRestoreActive = (toggle, initialFocus) => {
|
|
|
19
19
|
});
|
|
20
20
|
};
|
|
21
21
|
|
|
22
|
-
export { useRestoreActive
|
|
22
|
+
export { useRestoreActive };
|
|
23
23
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-restore-active/index.ts"],"sourcesContent":["import { isRef, watch } from 'vue'\nimport type { Ref } from 'vue'\n\n/**\n * This method provides dialogable components the ability to restore previously activated element before\n * the dialog gets opened\n */\nexport
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-restore-active/index.ts"],"sourcesContent":["import { isRef, watch } from 'vue'\nimport type { Ref } from 'vue'\n\n/**\n * This method provides dialogable components the ability to restore previously activated element before\n * the dialog gets opened\n */\nexport const useRestoreActive = (\n toggle: Ref<boolean>,\n initialFocus?: Ref<HTMLElement>\n) => {\n let previousActive: HTMLElement\n watch(\n () => toggle.value,\n (val) => {\n if (val) {\n previousActive = document.activeElement as HTMLElement\n if (isRef(initialFocus)) {\n initialFocus.value.focus?.()\n }\n } else {\n if (process.env.NODE_ENV === 'testing') {\n previousActive.focus.call(previousActive)\n } else {\n previousActive.focus()\n }\n }\n }\n )\n}\n"],"names":[],"mappings":";;MAOa,mBAAmB,CAC9B,QACA,iBACG;AACH,MAAI;AACJ,QACE,MAAM,OAAO,OACb,CAAC,QAAQ;AAdb;AAeM,QAAI,KAAK;AACP,uBAAiB,SAAS;AAC1B,UAAI,MAAM,eAAe;AACvB,iCAAa,OAAM,UAAnB;AAAA;AAAA,WAEG;AACL,UAAI,QAAQ,IAAI,aAAa,WAAW;AACtC,uBAAe,MAAM,KAAK;AAAA,aACrB;AACL,uBAAe;AAAA;AAAA;AAAA;AAAA;;;;"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { VNode, Ref } from 'vue';
|
|
2
|
-
declare const
|
|
2
|
+
export declare const useTeleport: (contentRenderer: () => VNode, appendToBody: Ref<boolean>) => {
|
|
3
3
|
isTeleportVisible: Ref<boolean>;
|
|
4
4
|
showTeleport: () => void;
|
|
5
5
|
hideTeleport: () => void;
|
|
6
6
|
renderTeleport: () => void;
|
|
7
7
|
};
|
|
8
|
-
export default _default;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { ref, h, Teleport, onUnmounted } from 'vue';
|
|
2
2
|
import { NOOP } from '@vue/shared';
|
|
3
|
-
import
|
|
3
|
+
import { isClient } from '@vueuse/core';
|
|
4
4
|
import { createGlobalNode, removeGlobalNode } from '../../utils/global-nodes.mjs';
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
const useTeleport = (contentRenderer, appendToBody) => {
|
|
7
7
|
const isTeleportVisible = ref(false);
|
|
8
|
-
if (
|
|
8
|
+
if (!isClient) {
|
|
9
9
|
return {
|
|
10
10
|
isTeleportVisible,
|
|
11
11
|
showTeleport: NOOP,
|
|
@@ -39,5 +39,5 @@ var useTeleport = (contentRenderer, appendToBody) => {
|
|
|
39
39
|
};
|
|
40
40
|
};
|
|
41
41
|
|
|
42
|
-
export { useTeleport
|
|
42
|
+
export { useTeleport };
|
|
43
43
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-teleport/index.ts"],"sourcesContent":["import { h, ref, Teleport, onUnmounted } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-teleport/index.ts"],"sourcesContent":["import { h, ref, Teleport, onUnmounted } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { isClient } from '@vueuse/core'\nimport {\n createGlobalNode,\n removeGlobalNode,\n} from '@element-plus/utils/global-nodes'\n\nimport type { VNode, Ref } from 'vue'\n\nexport const useTeleport = (\n contentRenderer: () => VNode,\n appendToBody: Ref<boolean>\n) => {\n const isTeleportVisible = ref(false)\n\n if (!isClient) {\n return {\n isTeleportVisible,\n showTeleport: NOOP,\n hideTeleport: NOOP,\n renderTeleport: NOOP,\n }\n }\n\n let $el: HTMLElement | null = null\n\n const showTeleport = () => {\n isTeleportVisible.value = true\n // this allows the delayed showing strategy since the the content itself could be enterable\n // e.g. el-popper\n if ($el !== null) return\n\n $el = createGlobalNode()\n }\n\n const hideTeleport = () => {\n isTeleportVisible.value = false\n if ($el !== null) {\n removeGlobalNode($el)\n $el = null\n }\n }\n\n const renderTeleport = () => {\n return appendToBody.value !== true\n ? contentRenderer()\n : isTeleportVisible.value\n ? [h(Teleport, { to: $el }, contentRenderer())]\n : undefined\n }\n\n onUnmounted(hideTeleport)\n\n return {\n isTeleportVisible,\n showTeleport,\n hideTeleport,\n renderTeleport,\n }\n}\n"],"names":[],"mappings":";;;;;MAUa,cAAc,CACzB,iBACA,iBACG;AACH,QAAM,oBAAoB,IAAI;AAE9B,MAAI,CAAC,UAAU;AACb,WAAO;AAAA,MACL;AAAA,MACA,cAAc;AAAA,MACd,cAAc;AAAA,MACd,gBAAgB;AAAA;AAAA;AAIpB,MAAI,MAA0B;AAE9B,QAAM,eAAe,MAAM;AACzB,sBAAkB,QAAQ;AAG1B,QAAI,QAAQ;AAAM;AAElB,UAAM;AAAA;AAGR,QAAM,eAAe,MAAM;AACzB,sBAAkB,QAAQ;AAC1B,QAAI,QAAQ,MAAM;AAChB,uBAAiB;AACjB,YAAM;AAAA;AAAA;AAIV,QAAM,iBAAiB,MAAM;AAC3B,WAAO,aAAa,UAAU,OAC1B,oBACA,kBAAkB,QAClB,CAAC,EAAE,UAAU,EAAE,IAAI,OAAO,sBAC1B;AAAA;AAGN,cAAY;AAEZ,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;;;;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
export
|
|
2
|
+
export declare const useThrottleRender: (loading: Ref<boolean>, throttle?: number) => Ref<boolean>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, onMounted, watch } from 'vue';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
const useThrottleRender = (loading, throttle = 0) => {
|
|
4
4
|
if (throttle === 0)
|
|
5
5
|
return loading;
|
|
6
6
|
const throttled = ref(false);
|
|
@@ -22,7 +22,7 @@ function useThrottleRender(loading, throttle = 0) {
|
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
24
|
return throttled;
|
|
25
|
-
}
|
|
25
|
+
};
|
|
26
26
|
|
|
27
|
-
export { useThrottleRender
|
|
27
|
+
export { useThrottleRender };
|
|
28
28
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-throttle-render/index.ts"],"sourcesContent":["import { onMounted, ref, watch } from 'vue'\n\nimport type { Ref } from 'vue'\
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-throttle-render/index.ts"],"sourcesContent":["import { onMounted, ref, watch } from 'vue'\n\nimport type { Ref } from 'vue'\n\nexport const useThrottleRender = (loading: Ref<boolean>, throttle = 0) => {\n if (throttle === 0) return loading\n const throttled = ref(false)\n let timeoutHandle = 0\n\n const dispatchThrottling = () => {\n if (timeoutHandle) {\n clearTimeout(timeoutHandle)\n }\n timeoutHandle = window.setTimeout(() => {\n throttled.value = loading.value\n }, throttle)\n }\n onMounted(dispatchThrottling)\n\n watch(\n () => loading.value,\n (val) => {\n if (val) {\n dispatchThrottling()\n } else {\n throttled.value = val\n }\n }\n )\n return throttled\n}\n"],"names":[],"mappings":";;MAIa,oBAAoB,CAAC,SAAuB,WAAW,MAAM;AACxE,MAAI,aAAa;AAAG,WAAO;AAC3B,QAAM,YAAY,IAAI;AACtB,MAAI,gBAAgB;AAEpB,QAAM,qBAAqB,MAAM;AAC/B,QAAI,eAAe;AACjB,mBAAa;AAAA;AAEf,oBAAgB,OAAO,WAAW,MAAM;AACtC,gBAAU,QAAQ,QAAQ;AAAA,OACzB;AAAA;AAEL,YAAU;AAEV,QACE,MAAM,QAAQ,OACd,CAAC,QAAQ;AACP,QAAI,KAAK;AACP;AAAA,WACK;AACL,gBAAU,QAAQ;AAAA;AAAA;AAIxB,SAAO;AAAA;;;;"}
|
|
@@ -1,20 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { tryOnScopeDispose } from '@vueuse/core';
|
|
2
2
|
|
|
3
3
|
function useTimeout() {
|
|
4
4
|
let timeoutHandle;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
const registerTimeout = (fn, delay) => {
|
|
6
|
+
cancelTimeout();
|
|
7
|
+
timeoutHandle = window.setTimeout(fn, delay);
|
|
8
|
+
};
|
|
9
|
+
const cancelTimeout = () => window.clearTimeout(timeoutHandle);
|
|
10
|
+
tryOnScopeDispose(() => cancelTimeout());
|
|
8
11
|
return {
|
|
9
|
-
registerTimeout
|
|
10
|
-
|
|
11
|
-
timeoutHandle = setTimeout(fn, delay);
|
|
12
|
-
},
|
|
13
|
-
cancelTimeout: () => {
|
|
14
|
-
clearTimeout(timeoutHandle);
|
|
15
|
-
}
|
|
12
|
+
registerTimeout,
|
|
13
|
+
cancelTimeout
|
|
16
14
|
};
|
|
17
15
|
}
|
|
18
16
|
|
|
19
|
-
export { useTimeout
|
|
17
|
+
export { useTimeout };
|
|
20
18
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-timeout/index.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-timeout/index.ts"],"sourcesContent":["import { tryOnScopeDispose } from '@vueuse/core'\n\nexport function useTimeout() {\n let timeoutHandle: number\n\n const registerTimeout = (fn: (...args: any[]) => any, delay: number) => {\n cancelTimeout()\n timeoutHandle = window.setTimeout(fn, delay)\n }\n const cancelTimeout = () => window.clearTimeout(timeoutHandle)\n\n tryOnScopeDispose(() => cancelTimeout())\n\n return {\n registerTimeout,\n cancelTimeout,\n }\n}\n"],"names":[],"mappings":";;sBAE6B;AAC3B,MAAI;AAEJ,QAAM,kBAAkB,CAAC,IAA6B,UAAkB;AACtE;AACA,oBAAgB,OAAO,WAAW,IAAI;AAAA;AAExC,QAAM,gBAAgB,MAAM,OAAO,aAAa;AAEhD,oBAAkB,MAAM;AAExB,SAAO;AAAA,IACL;AAAA,IACA;AAAA;AAAA;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const useTransitionFallthroughEmits:
|
|
1
|
+
export declare const useTransitionFallthroughEmits: readonly ["after-appear", "after-enter", "after-leave", "appear", "appear-cancelled", "before-enter", "before-leave", "enter", "enter-cancelled", "leave", "leave-cancelled"];
|
|
2
2
|
/**
|
|
3
3
|
* NOTE:
|
|
4
4
|
* This is only a delegator for delegating transition callbacks.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-transition-fallthrough/index.ts"],"sourcesContent":["/* istanbul ignore file */\nimport { getCurrentInstance } from 'vue'\n\nconst AFTER_APPEAR = 'after-appear'\nconst AFTER_ENTER = 'after-enter'\nconst AFTER_LEAVE = 'after-leave'\nconst APPEAR = 'appear'\nconst APPEAR_CANCELLED = 'appear-cancelled'\nconst BEFORE_ENTER = 'before-enter'\nconst BEFORE_LEAVE = 'before-leave'\nconst ENTER = 'enter'\nconst ENTER_CANCELLED = 'enter-cancelled'\nconst LEAVE = 'leave'\nconst LEAVE_CANCELLED = 'leave-cancelled'\n\nexport const useTransitionFallthroughEmits = [\n AFTER_APPEAR,\n AFTER_ENTER,\n AFTER_LEAVE,\n APPEAR,\n APPEAR_CANCELLED,\n BEFORE_ENTER,\n BEFORE_LEAVE,\n ENTER,\n ENTER_CANCELLED,\n LEAVE,\n LEAVE_CANCELLED,\n]\n\n// Sometimes we want to delegate the transition emitted event\n// we have to right the function locally, which is not a good\n// approach to this, so we created this hook for the event\n// fallthrough\n\n/**\n * NOTE:\n * This is only a delegator for delegating transition callbacks.\n * Use this at your need.\n */\n\n/**\n * Simple usage\n *\n * In your setups:\n *\n * setup() {\n * const fallthroughMethods = useTransitionFallthrough()\n * return fallthrough\n * }\n *\n * In your template:\n *\n * <template>\n * <transition name=\"whatever\" v-bind=\"fallthrough\">\n * <slot />\n * </transition>\n * </template>\n *\n */\n\nexport const useTransitionFallthrough = () => {\n const { emit } = getCurrentInstance()
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-transition-fallthrough/index.ts"],"sourcesContent":["/* istanbul ignore file */\nimport { getCurrentInstance } from 'vue'\n\nconst AFTER_APPEAR = 'after-appear'\nconst AFTER_ENTER = 'after-enter'\nconst AFTER_LEAVE = 'after-leave'\nconst APPEAR = 'appear'\nconst APPEAR_CANCELLED = 'appear-cancelled'\nconst BEFORE_ENTER = 'before-enter'\nconst BEFORE_LEAVE = 'before-leave'\nconst ENTER = 'enter'\nconst ENTER_CANCELLED = 'enter-cancelled'\nconst LEAVE = 'leave'\nconst LEAVE_CANCELLED = 'leave-cancelled'\n\nexport const useTransitionFallthroughEmits = [\n AFTER_APPEAR,\n AFTER_ENTER,\n AFTER_LEAVE,\n APPEAR,\n APPEAR_CANCELLED,\n BEFORE_ENTER,\n BEFORE_LEAVE,\n ENTER,\n ENTER_CANCELLED,\n LEAVE,\n LEAVE_CANCELLED,\n] as const\n\n// Sometimes we want to delegate the transition emitted event\n// we have to right the function locally, which is not a good\n// approach to this, so we created this hook for the event\n// fallthrough\n\n/**\n * NOTE:\n * This is only a delegator for delegating transition callbacks.\n * Use this at your need.\n */\n\n/**\n * Simple usage\n *\n * In your setups:\n *\n * setup() {\n * const fallthroughMethods = useTransitionFallthrough()\n * return fallthrough\n * }\n *\n * In your template:\n *\n * <template>\n * <transition name=\"whatever\" v-bind=\"fallthrough\">\n * <slot />\n * </transition>\n * </template>\n *\n */\n\nexport const useTransitionFallthrough = () => {\n const { emit } = getCurrentInstance()!\n\n return {\n onAfterAppear: () => {\n emit(AFTER_APPEAR)\n },\n onAfterEnter: () => {\n emit(AFTER_ENTER)\n },\n onAfterLeave: () => {\n emit(AFTER_LEAVE)\n },\n onAppearCancelled: () => {\n emit(APPEAR_CANCELLED)\n },\n onBeforeEnter: () => {\n emit(BEFORE_ENTER)\n },\n onBeforeLeave: () => {\n emit(BEFORE_LEAVE)\n },\n onEnter: () => {\n emit(ENTER)\n },\n onEnterCancelled: () => {\n emit(ENTER_CANCELLED)\n },\n onLeave: () => {\n emit(LEAVE)\n },\n onLeaveCancelled: () => {\n emit(LEAVE_CANCELLED)\n },\n }\n}\n"],"names":[],"mappings":";;AAGA,MAAM,eAAe;AACrB,MAAM,cAAc;AACpB,MAAM,cAAc;AACpB,MAAM,SAAS;AACf,MAAM,mBAAmB;AACzB,MAAM,eAAe;AACrB,MAAM,eAAe;AACrB,MAAM,QAAQ;AACd,MAAM,kBAAkB;AACxB,MAAM,QAAQ;AACd,MAAM,kBAAkB;MAEX,gCAAgC;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;MAkCW,2BAA2B,MAAM;AAC5C,QAAM,EAAE,SAAS;AAEjB,SAAO;AAAA,IACL,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,cAAc,MAAM;AAClB,WAAK;AAAA;AAAA,IAEP,cAAc,MAAM;AAClB,WAAK;AAAA;AAAA,IAEP,mBAAmB,MAAM;AACvB,WAAK;AAAA;AAAA,IAEP,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,SAAS,MAAM;AACb,WAAK;AAAA;AAAA,IAEP,kBAAkB,MAAM;AACtB,WAAK;AAAA;AAAA,IAEP,SAAS,MAAM;AACb,WAAK;AAAA;AAAA,IAEP,kBAAkB,MAAM;AACtB,WAAK;AAAA;AAAA;AAAA;;;;"}
|
package/es/index.mjs
CHANGED
|
@@ -36,6 +36,7 @@ export { ElCol } from './components/col/index.mjs';
|
|
|
36
36
|
export { ElCollapse, ElCollapseItem } from './components/collapse/index.mjs';
|
|
37
37
|
export { ElCollapseTransition } from './components/collapse-transition/index.mjs';
|
|
38
38
|
export { ElColorPicker } from './components/color-picker/index.mjs';
|
|
39
|
+
export { configProviderProps } from './components/config-provider/src/config-provider.mjs';
|
|
39
40
|
export { ElConfigProvider } from './components/config-provider/index.mjs';
|
|
40
41
|
export { ElAside, ElContainer, ElFooter, ElHeader, ElMain } from './components/container/index.mjs';
|
|
41
42
|
export { ElDatePicker } from './components/date-picker/index.mjs';
|
|
@@ -149,24 +150,21 @@ export { default as RepeatClick } from './directives/repeat-click/index.mjs';
|
|
|
149
150
|
export { default as TrapFocus } from './directives/trap-focus/index.mjs';
|
|
150
151
|
export { default as Mousewheel } from './directives/mousewheel/index.mjs';
|
|
151
152
|
export { default as Resize } from './directives/resize/index.mjs';
|
|
152
|
-
export {
|
|
153
|
-
export {
|
|
154
|
-
export {
|
|
155
|
-
export {
|
|
156
|
-
export {
|
|
157
|
-
export {
|
|
158
|
-
export {
|
|
159
|
-
export { default as useThrottleRender } from './hooks/use-throttle-render/index.mjs';
|
|
160
|
-
export { default as usePreventGlobal } from './hooks/use-prevent-global/index.mjs';
|
|
161
|
-
export { default as useTeleport } from './hooks/use-teleport/index.mjs';
|
|
162
|
-
export { default as useTimeout } from './hooks/use-timeout/index.mjs';
|
|
153
|
+
export { useAttrs } from './hooks/use-attrs/index.mjs';
|
|
154
|
+
export { useFocus } from './hooks/use-focus/index.mjs';
|
|
155
|
+
export { useFormItem, useFormItemProps } from './hooks/use-form-item/index.mjs';
|
|
156
|
+
export { useGlobalConfig } from './hooks/use-global-config/index.mjs';
|
|
157
|
+
export { buildTranslator, localeContextKey, localeProviderMaker, provideLocale, translate, useLocale, useLocaleProps } from './hooks/use-locale/index.mjs';
|
|
158
|
+
export { useLockscreen } from './hooks/use-lockscreen/index.mjs';
|
|
159
|
+
export { useModal } from './hooks/use-modal/index.mjs';
|
|
163
160
|
export { useModelToggle, useModelToggleEmits, useModelToggleProps } from './hooks/use-model-toggle/index.mjs';
|
|
164
161
|
export { DARK_EFFECT, LIGHT_EFFECT, usePopperControlProps, usePopperHook, usePopperProps } from './hooks/use-popper/index.mjs';
|
|
165
|
-
export {
|
|
166
|
-
export {
|
|
167
|
-
export { useFormItem, useFormItemProps } from './hooks/use-form-item/index.mjs';
|
|
162
|
+
export { usePreventGlobal } from './hooks/use-prevent-global/index.mjs';
|
|
163
|
+
export { useRestoreActive } from './hooks/use-restore-active/index.mjs';
|
|
168
164
|
export { useSameTarget } from './hooks/use-same-target/index.mjs';
|
|
169
|
-
export {
|
|
165
|
+
export { useTeleport } from './hooks/use-teleport/index.mjs';
|
|
166
|
+
export { useThrottleRender } from './hooks/use-throttle-render/index.mjs';
|
|
167
|
+
export { useTimeout } from './hooks/use-timeout/index.mjs';
|
|
170
168
|
export { elFormItemKey, elFormKey } from './tokens/form.mjs';
|
|
171
169
|
export { buttonGroupContextKey } from './tokens/button.mjs';
|
|
172
170
|
export { elBreadcrumbKey } from './tokens/breadcrumb.mjs';
|
package/es/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../packages/element-plus/index.ts"],"sourcesContent":["import installer from './defaults'\nexport * from '@element-plus/components'\nexport * from '@element-plus/directives'\nexport * from '@element-plus/hooks'\nexport * from '@element-plus/tokens'\n\nexport { default as makeInstaller } from './make-installer'\nexport { default } from './defaults'\n\nexport const install = installer.install\nexport const version = installer.version\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../packages/element-plus/index.ts"],"sourcesContent":["import installer from './defaults'\nexport * from '@element-plus/components'\nexport * from '@element-plus/directives'\nexport * from '@element-plus/hooks'\nexport * from '@element-plus/tokens'\n\nexport { default as makeInstaller } from './make-installer'\nexport { default } from './defaults'\n\nexport const install = installer.install\nexport const version = installer.version\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MASa,UAAU,UAAU;MACpB,UAAU,UAAU;;;;"}
|
package/es/make-installer.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { setConfig } from './utils/config.mjs';
|
|
2
2
|
import './hooks/index.mjs';
|
|
3
3
|
import { version } from './version.mjs';
|
|
4
|
-
import { localeProviderMaker,
|
|
4
|
+
import { localeProviderMaker, localeContextKey } from './hooks/use-locale/index.mjs';
|
|
5
5
|
|
|
6
6
|
const makeInstaller = (components = []) => {
|
|
7
7
|
const apps = [];
|
|
@@ -19,7 +19,7 @@ const makeInstaller = (components = []) => {
|
|
|
19
19
|
});
|
|
20
20
|
if (option.locale) {
|
|
21
21
|
const localeProvides = localeProviderMaker(opts.locale);
|
|
22
|
-
app.provide(
|
|
22
|
+
app.provide(localeContextKey, localeProvides);
|
|
23
23
|
}
|
|
24
24
|
app.config.globalProperties.$ELEMENT = option;
|
|
25
25
|
setConfig(option);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-installer.mjs","sources":["../../../packages/element-plus/make-installer.ts"],"sourcesContent":["import { setConfig } from '@element-plus/utils/config'\nimport {
|
|
1
|
+
{"version":3,"file":"make-installer.mjs","sources":["../../../packages/element-plus/make-installer.ts"],"sourcesContent":["import { setConfig } from '@element-plus/utils/config'\nimport { localeContextKey, localeProviderMaker } from '@element-plus/hooks'\nimport { version } from './version'\n\nimport type { App, Plugin } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { InstallOptions } from '@element-plus/utils/config'\n\nconst makeInstaller = (components: Plugin[] = []) => {\n const apps: App[] = []\n\n const install = (app: App, opts: InstallOptions) => {\n const defaultInstallOpt: InstallOptions = {\n size: '' as ComponentSize,\n zIndex: 2000,\n }\n\n const option = Object.assign(defaultInstallOpt, opts)\n if (apps.includes(app)) return\n apps.push(app)\n\n components.forEach((c) => {\n app.use(c)\n })\n\n if (option.locale) {\n const localeProvides = localeProviderMaker(opts.locale)\n app.provide(localeContextKey, localeProvides)\n }\n\n app.config.globalProperties.$ELEMENT = option\n // app.provide() ? is this better? I think its not that flexible but worth implement\n setConfig(option)\n }\n\n return {\n version,\n install,\n }\n}\n\nexport default makeInstaller\n"],"names":[],"mappings":";;;;;MAQM,gBAAgB,CAAC,aAAuB,OAAO;AACnD,QAAM,OAAc;AAEpB,QAAM,UAAU,CAAC,KAAU,SAAyB;AAClD,UAAM,oBAAoC;AAAA,MACxC,MAAM;AAAA,MACN,QAAQ;AAAA;AAGV,UAAM,SAAS,OAAO,OAAO,mBAAmB;AAChD,QAAI,KAAK,SAAS;AAAM;AACxB,SAAK,KAAK;AAEV,eAAW,QAAQ,CAAC,MAAM;AACxB,UAAI,IAAI;AAAA;AAGV,QAAI,OAAO,QAAQ;AACjB,YAAM,iBAAiB,oBAAoB,KAAK;AAChD,UAAI,QAAQ,kBAAkB;AAAA;AAGhC,QAAI,OAAO,iBAAiB,WAAW;AAEvC,cAAU;AAAA;AAGZ,SAAO;AAAA,IACL;AAAA,IACA;AAAA;AAAA;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { configProviderProps } from 'element-plus/es/components/config-provider
|
|
1
|
+
import type { configProviderProps } from 'element-plus/es/components/config-provider';
|
|
2
2
|
import type { InjectionKey, ExtractPropTypes } from 'vue';
|
|
3
|
-
export declare type
|
|
4
|
-
export declare const configProviderContextKey: InjectionKey<
|
|
3
|
+
export declare type ConfigProviderContext = ExtractPropTypes<typeof configProviderProps>;
|
|
4
|
+
export declare const configProviderContextKey: InjectionKey<ConfigProviderContext>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-provider.mjs","sources":["../../../../packages/tokens/config-provider.ts"],"sourcesContent":["import type { configProviderProps } from '@element-plus/components/config-provider
|
|
1
|
+
{"version":3,"file":"config-provider.mjs","sources":["../../../../packages/tokens/config-provider.ts"],"sourcesContent":["import type { configProviderProps } from '@element-plus/components/config-provider'\nimport type { InjectionKey, ExtractPropTypes } from 'vue'\n\nexport type ConfigProviderContext = ExtractPropTypes<typeof configProviderProps>\n\nexport const configProviderContextKey: InjectionKey<ConfigProviderContext> =\n Symbol()\n"],"names":[],"mappings":"MAKa,2BACX;;;;"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { CSSProperties, Plugin } from 'vue';
|
|
2
|
+
declare type OptionalKeys<T extends Record<string, unknown>> = {
|
|
3
|
+
[K in keyof T]: T extends Record<K, T[K]> ? never : K;
|
|
4
|
+
}[keyof T];
|
|
5
|
+
declare type RequiredKeys<T extends Record<string, unknown>> = Exclude<keyof T, OptionalKeys<T>>;
|
|
6
|
+
declare type MonoArgEmitter<T, Keys extends keyof T> = <K extends Keys>(evt: K, arg?: T[K]) => void;
|
|
7
|
+
declare type BiArgEmitter<T, Keys extends keyof T> = <K extends Keys>(evt: K, arg: T[K]) => void;
|
|
8
|
+
export declare type EventEmitter<T extends Record<string, unknown>> = MonoArgEmitter<T, OptionalKeys<T>> & BiArgEmitter<T, RequiredKeys<T>>;
|
|
9
|
+
export declare type AnyFunction<T> = (...args: any[]) => T;
|
|
10
|
+
export declare type PartialReturnType<T extends (...args: unknown[]) => unknown> = Partial<ReturnType<T>>;
|
|
11
|
+
export declare type SFCWithInstall<T> = T & Plugin;
|
|
12
|
+
export declare type Nullable<T> = T | null;
|
|
13
|
+
export declare type RefElement = Nullable<HTMLElement>;
|
|
14
|
+
export declare type CustomizedHTMLElement<T> = HTMLElement & T;
|
|
15
|
+
export declare type Indexable<T> = {
|
|
16
|
+
[key: string]: T;
|
|
17
|
+
};
|
|
18
|
+
export declare type Hash<T> = Indexable<T>;
|
|
19
|
+
export declare type TimeoutHandle = number;
|
|
20
|
+
export declare type ComponentSize = 'large' | 'medium' | 'small' | 'mini';
|
|
21
|
+
export declare type StyleValue = string | CSSProperties | Array<StyleValue>;
|
|
22
|
+
export declare type Mutable<T> = {
|
|
23
|
+
-readonly [P in keyof T]: T[P];
|
|
24
|
+
};
|
|
25
|
+
export {};
|
package/es/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "1.2.0-beta.
|
|
1
|
+
export declare const version = "1.2.0-beta.5";
|
package/es/version.mjs
CHANGED
package/es/version.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '1.2.0-beta.
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '1.2.0-beta.5'\n"],"names":[],"mappings":"MAAa,UAAU;;;;"}
|
|
@@ -102,7 +102,7 @@ var script = vue.defineComponent({
|
|
|
102
102
|
"select"
|
|
103
103
|
],
|
|
104
104
|
setup(props, ctx) {
|
|
105
|
-
const attrs = index$5
|
|
105
|
+
const attrs = index$5.useAttrs();
|
|
106
106
|
const suggestions = vue.ref([]);
|
|
107
107
|
const highlightedIndex = vue.ref(-1);
|
|
108
108
|
const dropdownWidth = vue.ref("");
|
|
@@ -16,7 +16,7 @@ declare const _Calendar: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
16
16
|
validatedRange: import("vue").ComputedRef<import("dayjs").Dayjs[][]>;
|
|
17
17
|
pickDay: (day: import("dayjs").Dayjs) => void;
|
|
18
18
|
selectDate: (type: "today" | "prev-month" | "next-month" | "prev-year" | "next-year") => void;
|
|
19
|
-
t: (
|
|
19
|
+
t: import("../..").Translator;
|
|
20
20
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue")[], "input" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
21
21
|
modelValue?: unknown;
|
|
22
22
|
range?: unknown;
|
|
@@ -45,7 +45,7 @@ export declare const ElCalendar: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
45
45
|
validatedRange: import("vue").ComputedRef<import("dayjs").Dayjs[][]>;
|
|
46
46
|
pickDay: (day: import("dayjs").Dayjs) => void;
|
|
47
47
|
selectDate: (type: "today" | "prev-month" | "next-month" | "prev-year" | "next-year") => void;
|
|
48
|
-
t: (
|
|
48
|
+
t: import("../..").Translator;
|
|
49
49
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue")[], "input" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
50
50
|
modelValue?: unknown;
|
|
51
51
|
range?: unknown;
|
|
@@ -41,7 +41,7 @@ var script = vue.defineComponent({
|
|
|
41
41
|
},
|
|
42
42
|
emits: ["pick"],
|
|
43
43
|
setup(props, ctx) {
|
|
44
|
-
const { lang } = index.
|
|
44
|
+
const { lang } = index.useLocale();
|
|
45
45
|
const WEEK_DAYS = vue.ref(dayjs__default["default"]().locale(lang.value).localeData().weekdaysShort());
|
|
46
46
|
const now = dayjs__default["default"]().locale(lang.value);
|
|
47
47
|
const firstDayOfWeek = now.$locale().weekStart || 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-table.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"pickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport {
|
|
1
|
+
{"version":3,"file":"date-table.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"pickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport type { Dayjs } from 'dayjs'\nimport type { PropType } from 'vue'\ndayjs.extend(localeData)\n\nexport const getPrevMonthLastDays = (date: Dayjs, amount) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(amount).map((_, index) => lastDay - (amount - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nexport default defineComponent({\n props: {\n selectedDay: {\n type: Object as PropType<Dayjs>,\n },\n range: {\n type: Array as PropType<Array<Dayjs>>,\n },\n date: {\n type: Object as PropType<Dayjs>,\n },\n hideHeader: {\n type: Boolean,\n },\n },\n emits: ['pick'],\n setup(props, ctx) {\n const { lang } = useLocale()\n const WEEK_DAYS = ref(\n dayjs().locale(lang.value).localeData().weekdaysShort()\n )\n\n const now = dayjs().locale(lang.value)\n\n // todo better way to get Day.js locale object\n const firstDayOfWeek = (now as any).$locale().weekStart || 0\n\n const toNestedArr = (days) => {\n return rangeArr(days.length / 7).map((_, index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n }\n\n const getFormattedDate = (day, type): Dayjs => {\n let result\n if (type === 'prev') {\n result = props.date.startOf('month').subtract(1, 'month').date(day)\n } else if (type === 'next') {\n result = props.date.startOf('month').add(1, 'month').date(day)\n } else {\n result = props.date.date(day)\n }\n return result\n }\n\n const getCellClass = ({ text, type }) => {\n const classes = [type]\n if (type === 'current') {\n const date_ = getFormattedDate(text, type)\n if (date_.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date_.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const pickDay = ({ text, type }) => {\n const date = getFormattedDate(text, type)\n ctx.emit('pick', date)\n }\n\n const getSlotData = ({ text, type }) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n const isInRange = computed(() => {\n return props.range && props.range.length\n })\n\n const rows = computed(() => {\n let days = []\n if (isInRange.value) {\n const [start, end] = props.range\n const currentMonthRange = rangeArr(end.date() - start.date() + 1).map(\n (_, index) => ({\n text: start.date() + index,\n type: 'current',\n })\n )\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays = getMonthDays(props.date).map((day) => ({\n text: day,\n type: 'current',\n }))\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays = rangeArr(42 - days.length).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n\n if (start === 0) {\n return WEEK_DAYS.value\n } else {\n return WEEK_DAYS.value\n .slice(start)\n .concat(WEEK_DAYS.value.slice(0, start))\n }\n })\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n pickDay,\n getSlotData,\n }\n },\n})\n</script>\n"],"names":["dayjs","localeData","rangeArr","defineComponent","useLocale","ref","computed"],"mappings":"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"}
|
package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-table.vue_vue_type_template_id_297fdb36_lang.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue?vue&type=template&id=297fdb36&lang.js"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"pickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport {
|
|
1
|
+
{"version":3,"file":"date-table.vue_vue_type_template_id_297fdb36_lang.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue?vue&type=template&id=297fdb36&lang.js"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"pickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport type { Dayjs } from 'dayjs'\nimport type { PropType } from 'vue'\ndayjs.extend(localeData)\n\nexport const getPrevMonthLastDays = (date: Dayjs, amount) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(amount).map((_, index) => lastDay - (amount - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nexport default defineComponent({\n props: {\n selectedDay: {\n type: Object as PropType<Dayjs>,\n },\n range: {\n type: Array as PropType<Array<Dayjs>>,\n },\n date: {\n type: Object as PropType<Dayjs>,\n },\n hideHeader: {\n type: Boolean,\n },\n },\n emits: ['pick'],\n setup(props, ctx) {\n const { lang } = useLocale()\n const WEEK_DAYS = ref(\n dayjs().locale(lang.value).localeData().weekdaysShort()\n )\n\n const now = dayjs().locale(lang.value)\n\n // todo better way to get Day.js locale object\n const firstDayOfWeek = (now as any).$locale().weekStart || 0\n\n const toNestedArr = (days) => {\n return rangeArr(days.length / 7).map((_, index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n }\n\n const getFormattedDate = (day, type): Dayjs => {\n let result\n if (type === 'prev') {\n result = props.date.startOf('month').subtract(1, 'month').date(day)\n } else if (type === 'next') {\n result = props.date.startOf('month').add(1, 'month').date(day)\n } else {\n result = props.date.date(day)\n }\n return result\n }\n\n const getCellClass = ({ text, type }) => {\n const classes = [type]\n if (type === 'current') {\n const date_ = getFormattedDate(text, type)\n if (date_.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date_.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const pickDay = ({ text, type }) => {\n const date = getFormattedDate(text, type)\n ctx.emit('pick', date)\n }\n\n const getSlotData = ({ text, type }) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n const isInRange = computed(() => {\n return props.range && props.range.length\n })\n\n const rows = computed(() => {\n let days = []\n if (isInRange.value) {\n const [start, end] = props.range\n const currentMonthRange = rangeArr(end.date() - start.date() + 1).map(\n (_, index) => ({\n text: start.date() + index,\n type: 'current',\n })\n )\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays = getMonthDays(props.date).map((day) => ({\n text: day,\n type: 'current',\n }))\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays = rangeArr(42 - days.length).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n\n if (start === 0) {\n return WEEK_DAYS.value\n } else {\n return WEEK_DAYS.value\n .slice(start)\n .concat(WEEK_DAYS.value.slice(0, start))\n }\n })\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n pickDay,\n getSlotData,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_renderSlot"],"mappings":";;;;;;;;qBA2Be,OAAM;;0BA1BnBA;IACG;;;;IAID,aAAY;AAAA,IACZ,aAAY;AAAA;KAEE,oCAAdA;4BACEA,0DAAkB,gBAAP;gCAAXA,+BAA6B,KAAK,2BAAQ;;;IAE5CC;4BACED,0DACyB,YAAf,KAAK;gCADfA;UAEG,KAAK;AAAA,UACL;;;;;gCAKDA,0DACwB,MAAd,MAAM;oCADhBA;cAEG;AAAA,cACA,0BAAO,kBAAa;AAAA,cACpB,qBAAO,aAAQ;AAAA;cAEhBC,8BAAA;gBACEC;kBAAuB,MAAM,iBAAY;AAAA,mBAAzC;kBACED,yDAAS,KAAK;;;;;;;;;;;;;"}
|
|
@@ -19,7 +19,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
19
19
|
validatedRange: ComputedRef<dayjs.Dayjs[][]>;
|
|
20
20
|
pickDay: (day: Dayjs) => void;
|
|
21
21
|
selectDate: (type: DateType) => void;
|
|
22
|
-
t: (
|
|
22
|
+
t: import("element-plus/es/hooks").Translator;
|
|
23
23
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue")[], "input" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
24
24
|
modelValue?: unknown;
|
|
25
25
|
range?: unknown;
|
|
@@ -39,7 +39,7 @@ var script = vue.defineComponent({
|
|
|
39
39
|
},
|
|
40
40
|
emits: ["input", "update:modelValue"],
|
|
41
41
|
setup(props, ctx) {
|
|
42
|
-
const { t, lang } = index$1.
|
|
42
|
+
const { t, lang } = index$1.useLocale();
|
|
43
43
|
const selectedDay = vue.ref(null);
|
|
44
44
|
const now = dayjs__default["default"]().locale(lang.value);
|
|
45
45
|
const prevMonthDayjs = vue.computed(() => {
|