@element-plus/nightly 0.0.20260406 → 0.0.20260407
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.full.js +10 -4
- package/dist/index.full.min.js +4 -4
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +4 -4
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +10 -4
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar-eg.js +1 -1
- package/dist/locale/ar-eg.min.js +1 -1
- package/dist/locale/ar-eg.min.mjs +1 -1
- package/dist/locale/ar-eg.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/hi.js +1 -1
- package/dist/locale/hi.min.js +1 -1
- package/dist/locale/hi.min.mjs +1 -1
- package/dist/locale/hi.mjs +1 -1
- package/dist/locale/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lo.js +1 -1
- package/dist/locale/lo.min.js +1 -1
- package/dist/locale/lo.min.mjs +1 -1
- package/dist/locale/lo.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/ms.js +1 -1
- package/dist/locale/ms.min.js +1 -1
- package/dist/locale/ms.min.mjs +1 -1
- package/dist/locale/ms.mjs +1 -1
- package/dist/locale/my.js +1 -1
- package/dist/locale/my.min.js +1 -1
- package/dist/locale/my.min.mjs +1 -1
- package/dist/locale/my.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/no.js +1 -1
- package/dist/locale/no.min.js +1 -1
- package/dist/locale/no.min.mjs +1 -1
- package/dist/locale/no.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +1 -1
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.mjs +1 -1
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/te.js +1 -1
- package/dist/locale/te.min.js +1 -1
- package/dist/locale/te.min.mjs +1 -1
- package/dist/locale/te.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-hk.js +1 -1
- package/dist/locale/zh-hk.min.js +1 -1
- package/dist/locale/zh-hk.min.mjs +1 -1
- package/dist/locale/zh-hk.mjs +1 -1
- package/dist/locale/zh-mo.js +1 -1
- package/dist/locale/zh-mo.min.js +1 -1
- package/dist/locale/zh-mo.min.mjs +1 -1
- package/dist/locale/zh-mo.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/affix/src/affix.vue.d.ts +1 -1
- package/es/components/alert/src/alert.vue.d.ts +1 -1
- package/es/components/anchor/src/anchor.d.ts +1 -1
- package/es/components/anchor/src/anchor.vue.d.ts +4 -4
- package/es/components/autocomplete/src/autocomplete.d.ts +1 -1
- package/es/components/autocomplete/src/autocomplete.vue_vue_type_script_setup_true_lang.mjs +4 -2
- package/es/components/autocomplete/src/autocomplete.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
- package/es/components/badge/src/badge.vue.d.ts +1 -1
- package/es/components/calendar/style/css.mjs +1 -1
- package/es/components/calendar/style/index.mjs +1 -1
- package/es/components/carousel/src/carousel.d.ts +1 -1
- package/es/components/carousel/src/carousel.vue.d.ts +1 -1
- package/es/components/cascader/src/cascader.vue.d.ts +2 -2
- package/es/components/checkbox/src/checkbox-group.vue.d.ts +1 -1
- package/es/components/col/src/col.vue.d.ts +1 -1
- package/es/components/descriptions/src/description.d.ts +1 -1
- package/es/components/descriptions/src/description.vue.d.ts +1 -1
- package/es/components/dialog/src/dialog.vue.d.ts +1 -1
- package/es/components/divider/src/divider.d.ts +1 -1
- package/es/components/divider/src/divider.vue.d.ts +1 -1
- package/es/components/drawer/src/drawer.vue.d.ts +2 -2
- package/es/components/dropdown/src/dropdown.vue.d.ts +6 -6
- package/es/components/dropdown/style/css.mjs +1 -1
- package/es/components/dropdown/style/index.mjs +1 -1
- package/es/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
- package/es/components/input/src/input.d.ts +1 -1
- package/es/components/link/src/link.vue.d.ts +1 -1
- package/es/components/mention/src/mention.d.ts +1 -1
- package/es/components/mention/src/mention.vue_vue_type_script_setup_true_lang.mjs +5 -3
- package/es/components/mention/src/mention.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/mention/src/mention2.mjs.map +1 -1
- package/es/components/menu/src/menu.d.ts +4 -4
- package/es/components/message/src/message.d.ts +1 -1
- package/es/components/message/src/message.vue.d.ts +3 -3
- package/es/components/notification/src/notification.d.ts +1 -1
- package/es/components/notification/src/notification.vue.d.ts +4 -4
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +1 -1
- package/es/components/popover/src/popover.vue.d.ts +1 -1
- package/es/components/popper/src/composables/use-focus-trap.d.ts +1 -1
- package/es/components/popper/src/content.vue.d.ts +1 -1
- package/es/components/progress/src/progress.vue.d.ts +1 -1
- package/es/components/radio/src/radio-group.vue.d.ts +1 -1
- package/es/components/roving-focus-group/src/roving-focus-group.d.ts +1 -1
- package/es/components/roving-focus-group/src/roving-focus-group.vue.d.ts +2 -2
- package/es/components/segmented/src/segmented.d.ts +1 -1
- package/es/components/select/src/select.vue.d.ts +5 -5
- package/es/components/select-v2/src/select.vue.d.ts +5 -5
- package/es/components/slider/src/button.vue.d.ts +1 -1
- package/es/components/slider/src/slider.vue.d.ts +1 -1
- package/es/components/space/src/space.d.ts +4 -4
- package/es/components/splitter/src/splitter.d.ts +1 -1
- package/es/components/steps/src/steps.d.ts +1 -1
- package/es/components/steps/src/steps.vue.d.ts +1 -1
- package/es/components/table/src/table-column/index.d.ts +1 -1
- package/es/components/table/src/table.vue.d.ts +2 -2
- package/es/components/tooltip/src/content.vue.d.ts +1 -1
- package/es/components/tooltip/src/tooltip.vue.d.ts +1 -1
- package/es/components/tree-select/src/tree-select.vue.d.ts +2 -2
- package/es/components/virtual-list/src/builders/build-grid.d.ts +1 -1
- package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +1 -1
- package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +4 -4
- package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +1 -1
- package/es/components/virtual-list/src/components/fixed-size-list.d.ts +4 -4
- package/es/components/virtual-list/src/props.d.ts +2 -2
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/affix/src/affix.vue.d.ts +1 -1
- package/lib/components/alert/src/alert.vue.d.ts +1 -1
- package/lib/components/anchor/src/anchor.d.ts +1 -1
- package/lib/components/anchor/src/anchor.vue.d.ts +4 -4
- package/lib/components/autocomplete/src/autocomplete.d.ts +1 -1
- package/lib/components/autocomplete/src/autocomplete.vue_vue_type_script_setup_true_lang.js +4 -2
- package/lib/components/autocomplete/src/autocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
- package/lib/components/badge/src/badge.vue.d.ts +1 -1
- package/lib/components/calendar/style/css.js +1 -1
- package/lib/components/calendar/style/index.js +1 -1
- package/lib/components/carousel/src/carousel.d.ts +1 -1
- package/lib/components/carousel/src/carousel.vue.d.ts +1 -1
- package/lib/components/cascader/src/cascader.vue.d.ts +2 -2
- package/lib/components/checkbox/src/checkbox-group.vue.d.ts +1 -1
- package/lib/components/col/src/col.vue.d.ts +1 -1
- package/lib/components/descriptions/src/description.d.ts +1 -1
- package/lib/components/descriptions/src/description.vue.d.ts +1 -1
- package/lib/components/dialog/src/dialog.vue.d.ts +1 -1
- package/lib/components/divider/src/divider.d.ts +1 -1
- package/lib/components/divider/src/divider.vue.d.ts +1 -1
- package/lib/components/drawer/src/drawer.vue.d.ts +2 -2
- package/lib/components/dropdown/src/dropdown.vue.d.ts +6 -6
- package/lib/components/dropdown/style/css.js +1 -1
- package/lib/components/dropdown/style/index.js +1 -1
- package/lib/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
- package/lib/components/input/src/input.d.ts +1 -1
- package/lib/components/link/src/link.vue.d.ts +1 -1
- package/lib/components/mention/src/mention.d.ts +1 -1
- package/lib/components/mention/src/mention.vue_vue_type_script_setup_true_lang.js +4 -2
- package/lib/components/mention/src/mention.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/mention/src/mention2.js.map +1 -1
- package/lib/components/menu/src/menu.d.ts +4 -4
- package/lib/components/message/src/message.d.ts +1 -1
- package/lib/components/message/src/message.vue.d.ts +3 -3
- package/lib/components/notification/src/notification.d.ts +1 -1
- package/lib/components/notification/src/notification.vue.d.ts +4 -4
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +1 -1
- package/lib/components/popover/src/popover.vue.d.ts +1 -1
- package/lib/components/popper/src/composables/use-focus-trap.d.ts +1 -1
- package/lib/components/popper/src/content.vue.d.ts +1 -1
- package/lib/components/progress/src/progress.vue.d.ts +1 -1
- package/lib/components/radio/src/radio-group.vue.d.ts +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-group.d.ts +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-group.vue.d.ts +2 -2
- package/lib/components/segmented/src/segmented.d.ts +1 -1
- package/lib/components/select/src/select.vue.d.ts +5 -5
- package/lib/components/select-v2/src/select.vue.d.ts +5 -5
- package/lib/components/slider/src/button.vue.d.ts +1 -1
- package/lib/components/slider/src/slider.vue.d.ts +1 -1
- package/lib/components/space/src/space.d.ts +4 -4
- package/lib/components/splitter/src/splitter.d.ts +1 -1
- package/lib/components/steps/src/steps.d.ts +1 -1
- package/lib/components/steps/src/steps.vue.d.ts +1 -1
- package/lib/components/table/src/table-column/index.d.ts +1 -1
- package/lib/components/table/src/table.vue.d.ts +2 -2
- package/lib/components/tooltip/src/content.vue.d.ts +1 -1
- package/lib/components/tooltip/src/tooltip.vue.d.ts +1 -1
- package/lib/components/tree-select/src/tree-select.vue.d.ts +2 -2
- package/lib/components/virtual-list/src/builders/build-grid.d.ts +1 -1
- package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +1 -1
- package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +4 -4
- package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +1 -1
- package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +4 -4
- package/lib/components/virtual-list/src/props.d.ts +2 -2
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/web-types.json +1 -1
|
@@ -399,8 +399,8 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
399
399
|
"onVisible-change"?: ((...args: any[]) => any) | undefined;
|
|
400
400
|
onCommand?: ((...args: any[]) => any) | undefined;
|
|
401
401
|
}>, {
|
|
402
|
-
readonly effect: EpPropMergeType<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown>;
|
|
403
402
|
readonly teleported: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
403
|
+
readonly effect: EpPropMergeType<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown>;
|
|
404
404
|
readonly size: string;
|
|
405
405
|
readonly disabled: boolean;
|
|
406
406
|
readonly tabindex: EpPropMergeType<(new (...args: any[]) => string | number) | (() => string | number) | (((new (...args: any[]) => string | number) | (() => string | number)) | null)[], unknown, unknown>;
|
|
@@ -688,9 +688,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
688
688
|
"before-show": (...args: any[]) => void;
|
|
689
689
|
"before-hide": (...args: any[]) => void;
|
|
690
690
|
}, vue.PublicProps, {
|
|
691
|
-
effect: PopperEffect;
|
|
692
691
|
offset: number;
|
|
693
692
|
teleported: boolean;
|
|
693
|
+
effect: PopperEffect;
|
|
694
694
|
visible: boolean | null;
|
|
695
695
|
content: string;
|
|
696
696
|
style: string | false | CSSProperties | vue.StyleValue[] | null;
|
|
@@ -739,9 +739,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
739
739
|
onClose: (event?: Event, delay?: number) => void;
|
|
740
740
|
hide: (event?: Event) => void;
|
|
741
741
|
}, {}, {}, {}, {
|
|
742
|
-
effect: PopperEffect;
|
|
743
742
|
offset: number;
|
|
744
743
|
teleported: boolean;
|
|
744
|
+
effect: PopperEffect;
|
|
745
745
|
visible: boolean | null;
|
|
746
746
|
content: string;
|
|
747
747
|
style: string | false | CSSProperties | vue.StyleValue[] | null;
|
|
@@ -795,9 +795,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
795
795
|
"before-show": (...args: any[]) => void;
|
|
796
796
|
"before-hide": (...args: any[]) => void;
|
|
797
797
|
}, string, {
|
|
798
|
-
effect: PopperEffect;
|
|
799
798
|
offset: number;
|
|
800
799
|
teleported: boolean;
|
|
800
|
+
effect: PopperEffect;
|
|
801
801
|
visible: boolean | null;
|
|
802
802
|
content: string;
|
|
803
803
|
style: string | false | CSSProperties | vue.StyleValue[] | null;
|
|
@@ -863,7 +863,7 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
863
863
|
loop: BooleanConstructor;
|
|
864
864
|
dir: EpPropFinalized<StringConstructor, string, unknown, string, boolean>;
|
|
865
865
|
orientation: {
|
|
866
|
-
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "
|
|
866
|
+
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined) | (((new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined)) | null)[], unknown, unknown>>;
|
|
867
867
|
readonly required: false;
|
|
868
868
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
869
869
|
__epPropKey: true;
|
|
@@ -888,7 +888,7 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
888
888
|
loop: BooleanConstructor;
|
|
889
889
|
dir: EpPropFinalized<StringConstructor, string, unknown, string, boolean>;
|
|
890
890
|
orientation: {
|
|
891
|
-
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "
|
|
891
|
+
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined) | (((new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined)) | null)[], unknown, unknown>>;
|
|
892
892
|
readonly required: false;
|
|
893
893
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
894
894
|
__epPropKey: true;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "../../base/style/css.mjs";
|
|
2
2
|
import "../../scrollbar/style/css.mjs";
|
|
3
3
|
import "../../popper/style/css.mjs";
|
|
4
|
-
import "../../button-group/style/css.mjs";
|
|
5
4
|
import "../../button/style/css.mjs";
|
|
5
|
+
import "../../button-group/style/css.mjs";
|
|
6
6
|
import "@element-plus/nightly/theme-chalk/el-dropdown.css";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "../../base/style/index.mjs";
|
|
2
2
|
import "../../scrollbar/style/index.mjs";
|
|
3
3
|
import "../../popper/style/index.mjs";
|
|
4
|
-
import "../../button-group/style/index.mjs";
|
|
5
4
|
import "../../button/style/index.mjs";
|
|
5
|
+
import "../../button-group/style/index.mjs";
|
|
6
6
|
import "@element-plus/nightly/theme-chalk/src/dropdown.scss";
|
|
@@ -31,7 +31,7 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
31
31
|
}>, {
|
|
32
32
|
loop: boolean;
|
|
33
33
|
trapped: boolean;
|
|
34
|
-
focusStartEl: HTMLElement | "
|
|
34
|
+
focusStartEl: HTMLElement | "first" | "container";
|
|
35
35
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
|
|
36
36
|
//#endregion
|
|
37
37
|
export { _default };
|
|
@@ -183,7 +183,7 @@ declare const inputProps: {
|
|
|
183
183
|
};
|
|
184
184
|
readonly type: EpPropFinalized<(new (...args: any[]) => string) | (() => InputType) | (((new (...args: any[]) => string) | (() => InputType)) | null)[], unknown, unknown, "text", boolean>;
|
|
185
185
|
readonly resize: {
|
|
186
|
-
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "
|
|
186
|
+
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "none" | "both" | "horizontal" | "vertical", unknown>>;
|
|
187
187
|
readonly required: false;
|
|
188
188
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
189
189
|
__epPropKey: true;
|
|
@@ -13,10 +13,10 @@ declare const __VLS_base: vue.DefineComponent<LinkProps, {}, {}, {}, {}, vue.Com
|
|
|
13
13
|
}, string, vue.PublicProps, Readonly<LinkProps> & Readonly<{
|
|
14
14
|
onClick?: ((evt: MouseEvent) => any) | undefined;
|
|
15
15
|
}>, {
|
|
16
|
+
target: "_blank" | "_parent" | "_self" | "_top" | (string & NonNullable<unknown>);
|
|
16
17
|
type: "primary" | "success" | "warning" | "info" | "danger" | "default";
|
|
17
18
|
underline: boolean | "always" | "never" | "hover";
|
|
18
19
|
href: string;
|
|
19
|
-
target: "_blank" | "_parent" | "_self" | "_top" | (string & NonNullable<unknown>);
|
|
20
20
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
21
21
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
22
22
|
declare const _default: typeof __VLS_export;
|
|
@@ -232,7 +232,7 @@ declare const mentionProps: {
|
|
|
232
232
|
};
|
|
233
233
|
type: EpPropFinalized<(new (...args: any[]) => string) | (() => InputType) | (((new (...args: any[]) => string) | (() => InputType)) | null)[], unknown, unknown, "text", boolean>;
|
|
234
234
|
resize: {
|
|
235
|
-
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "
|
|
235
|
+
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "none" | "both" | "horizontal" | "vertical", unknown>>;
|
|
236
236
|
readonly required: false;
|
|
237
237
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
238
238
|
__epPropKey: true;
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { EVENT_CODE } from "../../../constants/aria.mjs";
|
|
2
2
|
import { INPUT_EVENT, UPDATE_MODEL_EVENT } from "../../../constants/event.mjs";
|
|
3
3
|
import { getEventCode } from "../../../utils/dom/event.mjs";
|
|
4
|
-
import { isFunction } from "../../../utils/types.mjs";
|
|
4
|
+
import { isArray, isFunction } from "../../../utils/types.mjs";
|
|
5
5
|
import { useNamespace } from "../../../hooks/use-namespace/index.mjs";
|
|
6
6
|
import { useId } from "../../../hooks/use-id/index.mjs";
|
|
7
7
|
import { useFocusController } from "../../../hooks/use-focus-controller/index.mjs";
|
|
8
8
|
import { useFormDisabled } from "../../form/src/hooks/use-form-common-props.mjs";
|
|
9
9
|
import { ElTooltip } from "../../tooltip/index.mjs";
|
|
10
|
-
import { inputProps } from "../../input/src/input.mjs";
|
|
11
10
|
import { ElInput } from "../../input/index.mjs";
|
|
12
11
|
import { getCursorPosition, getMentionCtx } from "./helper.mjs";
|
|
13
12
|
import { mentionDefaultProps, mentionEmits, mentionProps } from "./mention.mjs";
|
|
@@ -25,7 +24,10 @@ var mention_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ define
|
|
|
25
24
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
26
25
|
const props = __props;
|
|
27
26
|
const emit = __emit;
|
|
28
|
-
const passInputProps = computed(() =>
|
|
27
|
+
const passInputProps = computed(() => {
|
|
28
|
+
const inputProps = ElInput.props ?? [];
|
|
29
|
+
return pick(props, isArray(inputProps) ? inputProps : Object.keys(inputProps));
|
|
30
|
+
});
|
|
29
31
|
const ns = useNamespace("mention");
|
|
30
32
|
const disabled = useFormDisabled();
|
|
31
33
|
const contentId = useId();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mention.vue_vue_type_script_setup_true_lang.mjs","names":["$attrs","$slots"],"sources":["../../../../../../packages/components/mention/src/mention.vue"],"sourcesContent":["<template>\n <div ref=\"wrapperRef\" :class=\"ns.b()\">\n <el-input\n v-bind=\"mergeProps(passInputProps, $attrs)\"\n ref=\"elInputRef\"\n :model-value=\"modelValue\"\n :disabled=\"disabled\"\n :role=\"dropdownVisible ? 'combobox' : undefined\"\n :aria-activedescendant=\"dropdownVisible ? hoveringId || '' : undefined\"\n :aria-controls=\"dropdownVisible ? contentId : undefined\"\n :aria-expanded=\"dropdownVisible || undefined\"\n :aria-label=\"ariaLabel\"\n :aria-autocomplete=\"dropdownVisible ? 'none' : undefined\"\n :aria-haspopup=\"dropdownVisible ? 'listbox' : undefined\"\n @input=\"handleInputChange\"\n @keydown=\"handleInputKeyDown\"\n @mousedown=\"handleInputMouseDown\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-input>\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownVisible\"\n :popper-class=\"[ns.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :placement=\"computedPlacement\"\n :fallback-placements=\"computedFallbackPlacements\"\n effect=\"light\"\n pure\n :offset=\"offset\"\n :show-arrow=\"showArrow\"\n >\n <template #default>\n <div :style=\"cursorStyle\" />\n </template>\n <template #content>\n <el-mention-dropdown\n ref=\"dropdownRef\"\n :options=\"filteredOptions\"\n :disabled=\"disabled\"\n :loading=\"loading\"\n :content-id=\"contentId\"\n :aria-label=\"ariaLabel\"\n @select=\"handleSelect\"\n @click.stop=\"elInputRef?.focus()\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-mention-dropdown>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\" setup generic=\"T extends MentionOption = MentionOption\">\nimport { computed, mergeProps, nextTick, ref } from 'vue'\nimport { pick } from 'lodash-unified'\nimport { useFocusController, useId, useNamespace } from '@element-plus/hooks'\nimport ElInput, {\n inputProps,\n inputPropsDefaults,\n} from '@element-plus/components/input'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n EVENT_CODE,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport { getEventCode, isFunction } from '@element-plus/utils'\nimport { mentionDefaultProps, mentionEmits } from './mention'\nimport { filterOption, getCursorPosition, getMentionCtx } from './helper'\nimport ElMentionDropdown from './mention-dropdown.vue'\n\nimport type { MentionProps } from './mention'\nimport type { Placement } from '@popperjs/core'\nimport type { CSSProperties } from 'vue'\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { MentionCtx, MentionOption } from './types'\n\ndefineOptions({\n name: 'ElMention',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<MentionProps<T>>(), {\n ...inputPropsDefaults,\n options: () => [],\n prefix: '@',\n split: ' ',\n filterOption: () => filterOption,\n placement: 'bottom',\n offset: 0,\n popperOptions: () => ({}),\n props: () => mentionDefaultProps,\n})\nconst emit = defineEmits(mentionEmits)\ndefineSlots<\n InputInstance['$slots'] & {\n header?: () => any\n footer?: () => any\n loading?: () => any\n label?: (props: { item: T & MentionOption; index: number }) => any\n }\n>()\n\nconst passInputProps = computed(() => pick(props, Object.keys(inputProps)))\n\nconst ns = useNamespace('mention')\nconst disabled = useFormDisabled()\nconst contentId = useId()\n\nconst elInputRef = ref<InputInstance>()\nconst tooltipRef = ref<TooltipInstance>()\nconst dropdownRef = ref<InstanceType<typeof ElMentionDropdown>>()\n\nconst visible = ref(false)\nconst cursorStyle = ref<CSSProperties>()\nconst mentionCtx = ref<MentionCtx>()\n\nconst computedPlacement = computed<Placement>(() =>\n props.showArrow ? props.placement : `${props.placement}-start`\n)\n\nconst computedFallbackPlacements = computed<Placement[]>(() =>\n props.showArrow ? ['bottom', 'top'] : ['bottom-start', 'top-start']\n)\n\nconst aliasProps = computed(() => ({\n ...mentionDefaultProps,\n ...props.props,\n}))\n\nconst mapOption = (option: T) => {\n const base = {\n label: option[aliasProps.value.label],\n value: option[aliasProps.value.value],\n disabled: option[aliasProps.value.disabled],\n }\n return { ...option, ...base }\n}\n\nconst options = computed(() => props.options.map(mapOption))\n\nconst filteredOptions = computed(() => {\n const { filterOption } = props\n if (!mentionCtx.value || !filterOption) return options.value\n return options.value.filter((option) =>\n filterOption(mentionCtx.value!.pattern, option)\n )\n})\n\nconst dropdownVisible = computed(() => {\n return visible.value && (!!filteredOptions.value.length || props.loading)\n})\n\nconst hoveringId = computed(() => {\n return `${contentId.value}-${dropdownRef.value?.hoveringIndex}`\n})\n\nconst handleInputChange = (value: string) => {\n emit(UPDATE_MODEL_EVENT, value)\n emit(INPUT_EVENT, value)\n syncAfterCursorMove()\n}\n\nconst handleInputKeyDown = (event: KeyboardEvent | Event) => {\n if (elInputRef.value?.isComposing) return\n const code = getEventCode(event as KeyboardEvent)\n\n switch (code) {\n case EVENT_CODE.left:\n case EVENT_CODE.right:\n syncAfterCursorMove()\n break\n case EVENT_CODE.up:\n case EVENT_CODE.down:\n if (!visible.value) return\n event.preventDefault()\n dropdownRef.value?.navigateOptions(\n code === EVENT_CODE.up ? 'prev' : 'next'\n )\n break\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n if (!visible.value) {\n props.type !== 'textarea' && syncAfterCursorMove()\n return\n }\n event.preventDefault()\n if (dropdownRef.value?.hoverOption) {\n dropdownRef.value?.selectHoverOption()\n } else {\n visible.value = false\n }\n break\n case EVENT_CODE.esc:\n if (!visible.value) return\n event.preventDefault()\n visible.value = false\n break\n case EVENT_CODE.backspace:\n if (props.whole && mentionCtx.value) {\n const { splitIndex, selectionEnd, pattern, prefixIndex, prefix } =\n mentionCtx.value\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const matchOption = options.value.find((item) => item.value === pattern)\n const isWhole = isFunction(props.checkIsWhole)\n ? props.checkIsWhole(pattern, prefix)\n : matchOption\n if (isWhole && splitIndex !== -1 && splitIndex + 1 === selectionEnd) {\n event.preventDefault()\n const newValue =\n inputValue.slice(0, prefixIndex) + inputValue.slice(splitIndex + 1)\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('whole-remove', pattern, prefix)\n\n const newSelectionEnd = prefixIndex\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n syncDropdownVisible()\n })\n }\n }\n }\n}\n\nconst { wrapperRef } = useFocusController(elInputRef, {\n disabled,\n afterFocus() {\n syncAfterCursorMove()\n },\n beforeBlur(event) {\n return tooltipRef.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n visible.value = false\n },\n})\n\nconst handleInputMouseDown = () => {\n syncAfterCursorMove()\n}\n\n// Ensure that the original option passed by users is returned\nconst getOriginalOption = (mentionOption: MentionOption) => {\n return props.options.find((option: MentionOption) => {\n return mentionOption.value === option[aliasProps.value.value]\n })\n}\n\nconst handleSelect = (item: MentionOption) => {\n if (!mentionCtx.value) return\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const { split } = props\n\n const newEndPart = inputValue.slice(mentionCtx.value.end)\n const alreadySeparated = newEndPart.startsWith(split)\n const newMiddlePart = `${item.value}${alreadySeparated ? '' : split}`\n\n const newValue =\n inputValue.slice(0, mentionCtx.value.start) + newMiddlePart + newEndPart\n\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('select', getOriginalOption(item)!, mentionCtx.value.prefix)\n\n const newSelectionEnd =\n mentionCtx.value.start + newMiddlePart.length + (alreadySeparated ? 1 : 0)\n\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n inputEl.focus()\n syncDropdownVisible()\n })\n}\n\nconst getInputEl = () =>\n props.type === 'textarea'\n ? elInputRef.value?.textarea\n : elInputRef.value?.input\n\nconst syncAfterCursorMove = () => {\n // can't use nextTick(), get cursor position will be wrong\n setTimeout(() => {\n syncCursor()\n syncDropdownVisible()\n nextTick(() => tooltipRef.value?.updatePopper())\n }, 0)\n}\n\nconst syncCursor = () => {\n const inputEl = getInputEl()\n if (!inputEl) return\n\n const caretPosition = getCursorPosition(inputEl)\n const inputRect = inputEl.getBoundingClientRect()\n const wrapperRect = wrapperRef.value!.getBoundingClientRect()\n\n cursorStyle.value = {\n position: 'absolute',\n width: 0,\n height: `${caretPosition.height}px`,\n left: `${caretPosition.left + inputRect.left - wrapperRect.left}px`,\n top: `${caretPosition.top + inputRect.top - wrapperRect.top}px`,\n }\n}\n\nconst syncDropdownVisible = () => {\n const inputEl = getInputEl()\n if (document.activeElement !== inputEl) {\n visible.value = false\n return\n }\n const { prefix, split } = props\n mentionCtx.value = getMentionCtx(inputEl, prefix, split)\n if (mentionCtx.value && mentionCtx.value.splitIndex === -1) {\n visible.value = true\n emit('search', mentionCtx.value.pattern, mentionCtx.value.prefix)\n return\n }\n visible.value = false\n}\n\ndefineExpose({\n input: elInputRef,\n tooltip: tooltipRef,\n dropdownVisible,\n})\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mention.vue_vue_type_script_setup_true_lang.mjs","names":["$attrs","$slots"],"sources":["../../../../../../packages/components/mention/src/mention.vue"],"sourcesContent":["<template>\n <div ref=\"wrapperRef\" :class=\"ns.b()\">\n <el-input\n v-bind=\"mergeProps(passInputProps, $attrs)\"\n ref=\"elInputRef\"\n :model-value=\"modelValue\"\n :disabled=\"disabled\"\n :role=\"dropdownVisible ? 'combobox' : undefined\"\n :aria-activedescendant=\"dropdownVisible ? hoveringId || '' : undefined\"\n :aria-controls=\"dropdownVisible ? contentId : undefined\"\n :aria-expanded=\"dropdownVisible || undefined\"\n :aria-label=\"ariaLabel\"\n :aria-autocomplete=\"dropdownVisible ? 'none' : undefined\"\n :aria-haspopup=\"dropdownVisible ? 'listbox' : undefined\"\n @input=\"handleInputChange\"\n @keydown=\"handleInputKeyDown\"\n @mousedown=\"handleInputMouseDown\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-input>\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownVisible\"\n :popper-class=\"[ns.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :placement=\"computedPlacement\"\n :fallback-placements=\"computedFallbackPlacements\"\n effect=\"light\"\n pure\n :offset=\"offset\"\n :show-arrow=\"showArrow\"\n >\n <template #default>\n <div :style=\"cursorStyle\" />\n </template>\n <template #content>\n <el-mention-dropdown\n ref=\"dropdownRef\"\n :options=\"filteredOptions\"\n :disabled=\"disabled\"\n :loading=\"loading\"\n :content-id=\"contentId\"\n :aria-label=\"ariaLabel\"\n @select=\"handleSelect\"\n @click.stop=\"elInputRef?.focus()\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-mention-dropdown>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\" setup generic=\"T extends MentionOption = MentionOption\">\nimport { computed, mergeProps, nextTick, ref } from 'vue'\nimport { pick } from 'lodash-unified'\nimport { useFocusController, useId, useNamespace } from '@element-plus/hooks'\nimport ElInput, { inputPropsDefaults } from '@element-plus/components/input'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n EVENT_CODE,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport { getEventCode, isArray, isFunction } from '@element-plus/utils'\nimport { mentionDefaultProps, mentionEmits } from './mention'\nimport { filterOption, getCursorPosition, getMentionCtx } from './helper'\nimport ElMentionDropdown from './mention-dropdown.vue'\n\nimport type { MentionProps } from './mention'\nimport type { Placement } from '@popperjs/core'\nimport type { CSSProperties } from 'vue'\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { MentionCtx, MentionOption } from './types'\n\ndefineOptions({\n name: 'ElMention',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<MentionProps<T>>(), {\n ...inputPropsDefaults,\n options: () => [],\n prefix: '@',\n split: ' ',\n filterOption: () => filterOption,\n placement: 'bottom',\n offset: 0,\n popperOptions: () => ({}),\n props: () => mentionDefaultProps,\n})\nconst emit = defineEmits(mentionEmits)\ndefineSlots<\n InputInstance['$slots'] & {\n header?: () => any\n footer?: () => any\n loading?: () => any\n label?: (props: { item: T & MentionOption; index: number }) => any\n }\n>()\n\nconst passInputProps = computed(() => {\n const inputProps = ElInput.props ?? []\n const keys = isArray(inputProps) ? inputProps : Object.keys(inputProps)\n return pick(props, keys)\n})\n\nconst ns = useNamespace('mention')\nconst disabled = useFormDisabled()\nconst contentId = useId()\n\nconst elInputRef = ref<InputInstance>()\nconst tooltipRef = ref<TooltipInstance>()\nconst dropdownRef = ref<InstanceType<typeof ElMentionDropdown>>()\n\nconst visible = ref(false)\nconst cursorStyle = ref<CSSProperties>()\nconst mentionCtx = ref<MentionCtx>()\n\nconst computedPlacement = computed<Placement>(() =>\n props.showArrow ? props.placement : `${props.placement}-start`\n)\n\nconst computedFallbackPlacements = computed<Placement[]>(() =>\n props.showArrow ? ['bottom', 'top'] : ['bottom-start', 'top-start']\n)\n\nconst aliasProps = computed(() => ({\n ...mentionDefaultProps,\n ...props.props,\n}))\n\nconst mapOption = (option: T) => {\n const base = {\n label: option[aliasProps.value.label],\n value: option[aliasProps.value.value],\n disabled: option[aliasProps.value.disabled],\n }\n return { ...option, ...base }\n}\n\nconst options = computed(() => props.options.map(mapOption))\n\nconst filteredOptions = computed(() => {\n const { filterOption } = props\n if (!mentionCtx.value || !filterOption) return options.value\n return options.value.filter((option) =>\n filterOption(mentionCtx.value!.pattern, option)\n )\n})\n\nconst dropdownVisible = computed(() => {\n return visible.value && (!!filteredOptions.value.length || props.loading)\n})\n\nconst hoveringId = computed(() => {\n return `${contentId.value}-${dropdownRef.value?.hoveringIndex}`\n})\n\nconst handleInputChange = (value: string) => {\n emit(UPDATE_MODEL_EVENT, value)\n emit(INPUT_EVENT, value)\n syncAfterCursorMove()\n}\n\nconst handleInputKeyDown = (event: KeyboardEvent | Event) => {\n if (elInputRef.value?.isComposing) return\n const code = getEventCode(event as KeyboardEvent)\n\n switch (code) {\n case EVENT_CODE.left:\n case EVENT_CODE.right:\n syncAfterCursorMove()\n break\n case EVENT_CODE.up:\n case EVENT_CODE.down:\n if (!visible.value) return\n event.preventDefault()\n dropdownRef.value?.navigateOptions(\n code === EVENT_CODE.up ? 'prev' : 'next'\n )\n break\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n if (!visible.value) {\n props.type !== 'textarea' && syncAfterCursorMove()\n return\n }\n event.preventDefault()\n if (dropdownRef.value?.hoverOption) {\n dropdownRef.value?.selectHoverOption()\n } else {\n visible.value = false\n }\n break\n case EVENT_CODE.esc:\n if (!visible.value) return\n event.preventDefault()\n visible.value = false\n break\n case EVENT_CODE.backspace:\n if (props.whole && mentionCtx.value) {\n const { splitIndex, selectionEnd, pattern, prefixIndex, prefix } =\n mentionCtx.value\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const matchOption = options.value.find((item) => item.value === pattern)\n const isWhole = isFunction(props.checkIsWhole)\n ? props.checkIsWhole(pattern, prefix)\n : matchOption\n if (isWhole && splitIndex !== -1 && splitIndex + 1 === selectionEnd) {\n event.preventDefault()\n const newValue =\n inputValue.slice(0, prefixIndex) + inputValue.slice(splitIndex + 1)\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('whole-remove', pattern, prefix)\n\n const newSelectionEnd = prefixIndex\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n syncDropdownVisible()\n })\n }\n }\n }\n}\n\nconst { wrapperRef } = useFocusController(elInputRef, {\n disabled,\n afterFocus() {\n syncAfterCursorMove()\n },\n beforeBlur(event) {\n return tooltipRef.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n visible.value = false\n },\n})\n\nconst handleInputMouseDown = () => {\n syncAfterCursorMove()\n}\n\n// Ensure that the original option passed by users is returned\nconst getOriginalOption = (mentionOption: MentionOption) => {\n return props.options.find((option: MentionOption) => {\n return mentionOption.value === option[aliasProps.value.value]\n })\n}\n\nconst handleSelect = (item: MentionOption) => {\n if (!mentionCtx.value) return\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const { split } = props\n\n const newEndPart = inputValue.slice(mentionCtx.value.end)\n const alreadySeparated = newEndPart.startsWith(split)\n const newMiddlePart = `${item.value}${alreadySeparated ? '' : split}`\n\n const newValue =\n inputValue.slice(0, mentionCtx.value.start) + newMiddlePart + newEndPart\n\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('select', getOriginalOption(item)!, mentionCtx.value.prefix)\n\n const newSelectionEnd =\n mentionCtx.value.start + newMiddlePart.length + (alreadySeparated ? 1 : 0)\n\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n inputEl.focus()\n syncDropdownVisible()\n })\n}\n\nconst getInputEl = () =>\n props.type === 'textarea'\n ? elInputRef.value?.textarea\n : elInputRef.value?.input\n\nconst syncAfterCursorMove = () => {\n // can't use nextTick(), get cursor position will be wrong\n setTimeout(() => {\n syncCursor()\n syncDropdownVisible()\n nextTick(() => tooltipRef.value?.updatePopper())\n }, 0)\n}\n\nconst syncCursor = () => {\n const inputEl = getInputEl()\n if (!inputEl) return\n\n const caretPosition = getCursorPosition(inputEl)\n const inputRect = inputEl.getBoundingClientRect()\n const wrapperRect = wrapperRef.value!.getBoundingClientRect()\n\n cursorStyle.value = {\n position: 'absolute',\n width: 0,\n height: `${caretPosition.height}px`,\n left: `${caretPosition.left + inputRect.left - wrapperRect.left}px`,\n top: `${caretPosition.top + inputRect.top - wrapperRect.top}px`,\n }\n}\n\nconst syncDropdownVisible = () => {\n const inputEl = getInputEl()\n if (document.activeElement !== inputEl) {\n visible.value = false\n return\n }\n const { prefix, split } = props\n mentionCtx.value = getMentionCtx(inputEl, prefix, split)\n if (mentionCtx.value && mentionCtx.value.splitIndex === -1) {\n visible.value = true\n emit('search', mentionCtx.value.pattern, mentionCtx.value.prefix)\n return\n }\n visible.value = false\n}\n\ndefineExpose({\n input: elInputRef,\n tooltip: tooltipRef,\n dropdownVisible,\n})\n</script>\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mention2.mjs","names":[],"sources":["../../../../../../packages/components/mention/src/mention.vue"],"sourcesContent":["<template>\n <div ref=\"wrapperRef\" :class=\"ns.b()\">\n <el-input\n v-bind=\"mergeProps(passInputProps, $attrs)\"\n ref=\"elInputRef\"\n :model-value=\"modelValue\"\n :disabled=\"disabled\"\n :role=\"dropdownVisible ? 'combobox' : undefined\"\n :aria-activedescendant=\"dropdownVisible ? hoveringId || '' : undefined\"\n :aria-controls=\"dropdownVisible ? contentId : undefined\"\n :aria-expanded=\"dropdownVisible || undefined\"\n :aria-label=\"ariaLabel\"\n :aria-autocomplete=\"dropdownVisible ? 'none' : undefined\"\n :aria-haspopup=\"dropdownVisible ? 'listbox' : undefined\"\n @input=\"handleInputChange\"\n @keydown=\"handleInputKeyDown\"\n @mousedown=\"handleInputMouseDown\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-input>\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownVisible\"\n :popper-class=\"[ns.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :placement=\"computedPlacement\"\n :fallback-placements=\"computedFallbackPlacements\"\n effect=\"light\"\n pure\n :offset=\"offset\"\n :show-arrow=\"showArrow\"\n >\n <template #default>\n <div :style=\"cursorStyle\" />\n </template>\n <template #content>\n <el-mention-dropdown\n ref=\"dropdownRef\"\n :options=\"filteredOptions\"\n :disabled=\"disabled\"\n :loading=\"loading\"\n :content-id=\"contentId\"\n :aria-label=\"ariaLabel\"\n @select=\"handleSelect\"\n @click.stop=\"elInputRef?.focus()\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-mention-dropdown>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\" setup generic=\"T extends MentionOption = MentionOption\">\nimport { computed, mergeProps, nextTick, ref } from 'vue'\nimport { pick } from 'lodash-unified'\nimport { useFocusController, useId, useNamespace } from '@element-plus/hooks'\nimport ElInput, {\n inputProps,\n inputPropsDefaults,\n} from '@element-plus/components/input'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n EVENT_CODE,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport { getEventCode, isFunction } from '@element-plus/utils'\nimport { mentionDefaultProps, mentionEmits } from './mention'\nimport { filterOption, getCursorPosition, getMentionCtx } from './helper'\nimport ElMentionDropdown from './mention-dropdown.vue'\n\nimport type { MentionProps } from './mention'\nimport type { Placement } from '@popperjs/core'\nimport type { CSSProperties } from 'vue'\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { MentionCtx, MentionOption } from './types'\n\ndefineOptions({\n name: 'ElMention',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<MentionProps<T>>(), {\n ...inputPropsDefaults,\n options: () => [],\n prefix: '@',\n split: ' ',\n filterOption: () => filterOption,\n placement: 'bottom',\n offset: 0,\n popperOptions: () => ({}),\n props: () => mentionDefaultProps,\n})\nconst emit = defineEmits(mentionEmits)\ndefineSlots<\n InputInstance['$slots'] & {\n header?: () => any\n footer?: () => any\n loading?: () => any\n label?: (props: { item: T & MentionOption; index: number }) => any\n }\n>()\n\nconst passInputProps = computed(() => pick(props, Object.keys(inputProps)))\n\nconst ns = useNamespace('mention')\nconst disabled = useFormDisabled()\nconst contentId = useId()\n\nconst elInputRef = ref<InputInstance>()\nconst tooltipRef = ref<TooltipInstance>()\nconst dropdownRef = ref<InstanceType<typeof ElMentionDropdown>>()\n\nconst visible = ref(false)\nconst cursorStyle = ref<CSSProperties>()\nconst mentionCtx = ref<MentionCtx>()\n\nconst computedPlacement = computed<Placement>(() =>\n props.showArrow ? props.placement : `${props.placement}-start`\n)\n\nconst computedFallbackPlacements = computed<Placement[]>(() =>\n props.showArrow ? ['bottom', 'top'] : ['bottom-start', 'top-start']\n)\n\nconst aliasProps = computed(() => ({\n ...mentionDefaultProps,\n ...props.props,\n}))\n\nconst mapOption = (option: T) => {\n const base = {\n label: option[aliasProps.value.label],\n value: option[aliasProps.value.value],\n disabled: option[aliasProps.value.disabled],\n }\n return { ...option, ...base }\n}\n\nconst options = computed(() => props.options.map(mapOption))\n\nconst filteredOptions = computed(() => {\n const { filterOption } = props\n if (!mentionCtx.value || !filterOption) return options.value\n return options.value.filter((option) =>\n filterOption(mentionCtx.value!.pattern, option)\n )\n})\n\nconst dropdownVisible = computed(() => {\n return visible.value && (!!filteredOptions.value.length || props.loading)\n})\n\nconst hoveringId = computed(() => {\n return `${contentId.value}-${dropdownRef.value?.hoveringIndex}`\n})\n\nconst handleInputChange = (value: string) => {\n emit(UPDATE_MODEL_EVENT, value)\n emit(INPUT_EVENT, value)\n syncAfterCursorMove()\n}\n\nconst handleInputKeyDown = (event: KeyboardEvent | Event) => {\n if (elInputRef.value?.isComposing) return\n const code = getEventCode(event as KeyboardEvent)\n\n switch (code) {\n case EVENT_CODE.left:\n case EVENT_CODE.right:\n syncAfterCursorMove()\n break\n case EVENT_CODE.up:\n case EVENT_CODE.down:\n if (!visible.value) return\n event.preventDefault()\n dropdownRef.value?.navigateOptions(\n code === EVENT_CODE.up ? 'prev' : 'next'\n )\n break\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n if (!visible.value) {\n props.type !== 'textarea' && syncAfterCursorMove()\n return\n }\n event.preventDefault()\n if (dropdownRef.value?.hoverOption) {\n dropdownRef.value?.selectHoverOption()\n } else {\n visible.value = false\n }\n break\n case EVENT_CODE.esc:\n if (!visible.value) return\n event.preventDefault()\n visible.value = false\n break\n case EVENT_CODE.backspace:\n if (props.whole && mentionCtx.value) {\n const { splitIndex, selectionEnd, pattern, prefixIndex, prefix } =\n mentionCtx.value\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const matchOption = options.value.find((item) => item.value === pattern)\n const isWhole = isFunction(props.checkIsWhole)\n ? props.checkIsWhole(pattern, prefix)\n : matchOption\n if (isWhole && splitIndex !== -1 && splitIndex + 1 === selectionEnd) {\n event.preventDefault()\n const newValue =\n inputValue.slice(0, prefixIndex) + inputValue.slice(splitIndex + 1)\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('whole-remove', pattern, prefix)\n\n const newSelectionEnd = prefixIndex\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n syncDropdownVisible()\n })\n }\n }\n }\n}\n\nconst { wrapperRef } = useFocusController(elInputRef, {\n disabled,\n afterFocus() {\n syncAfterCursorMove()\n },\n beforeBlur(event) {\n return tooltipRef.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n visible.value = false\n },\n})\n\nconst handleInputMouseDown = () => {\n syncAfterCursorMove()\n}\n\n// Ensure that the original option passed by users is returned\nconst getOriginalOption = (mentionOption: MentionOption) => {\n return props.options.find((option: MentionOption) => {\n return mentionOption.value === option[aliasProps.value.value]\n })\n}\n\nconst handleSelect = (item: MentionOption) => {\n if (!mentionCtx.value) return\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const { split } = props\n\n const newEndPart = inputValue.slice(mentionCtx.value.end)\n const alreadySeparated = newEndPart.startsWith(split)\n const newMiddlePart = `${item.value}${alreadySeparated ? '' : split}`\n\n const newValue =\n inputValue.slice(0, mentionCtx.value.start) + newMiddlePart + newEndPart\n\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('select', getOriginalOption(item)!, mentionCtx.value.prefix)\n\n const newSelectionEnd =\n mentionCtx.value.start + newMiddlePart.length + (alreadySeparated ? 1 : 0)\n\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n inputEl.focus()\n syncDropdownVisible()\n })\n}\n\nconst getInputEl = () =>\n props.type === 'textarea'\n ? elInputRef.value?.textarea\n : elInputRef.value?.input\n\nconst syncAfterCursorMove = () => {\n // can't use nextTick(), get cursor position will be wrong\n setTimeout(() => {\n syncCursor()\n syncDropdownVisible()\n nextTick(() => tooltipRef.value?.updatePopper())\n }, 0)\n}\n\nconst syncCursor = () => {\n const inputEl = getInputEl()\n if (!inputEl) return\n\n const caretPosition = getCursorPosition(inputEl)\n const inputRect = inputEl.getBoundingClientRect()\n const wrapperRect = wrapperRef.value!.getBoundingClientRect()\n\n cursorStyle.value = {\n position: 'absolute',\n width: 0,\n height: `${caretPosition.height}px`,\n left: `${caretPosition.left + inputRect.left - wrapperRect.left}px`,\n top: `${caretPosition.top + inputRect.top - wrapperRect.top}px`,\n }\n}\n\nconst syncDropdownVisible = () => {\n const inputEl = getInputEl()\n if (document.activeElement !== inputEl) {\n visible.value = false\n return\n }\n const { prefix, split } = props\n mentionCtx.value = getMentionCtx(inputEl, prefix, split)\n if (mentionCtx.value && mentionCtx.value.splitIndex === -1) {\n visible.value = true\n emit('search', mentionCtx.value.pattern, mentionCtx.value.prefix)\n return\n }\n visible.value = false\n}\n\ndefineExpose({\n input: elInputRef,\n tooltip: tooltipRef,\n dropdownVisible,\n})\n</script>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"mention2.mjs","names":[],"sources":["../../../../../../packages/components/mention/src/mention.vue"],"sourcesContent":["<template>\n <div ref=\"wrapperRef\" :class=\"ns.b()\">\n <el-input\n v-bind=\"mergeProps(passInputProps, $attrs)\"\n ref=\"elInputRef\"\n :model-value=\"modelValue\"\n :disabled=\"disabled\"\n :role=\"dropdownVisible ? 'combobox' : undefined\"\n :aria-activedescendant=\"dropdownVisible ? hoveringId || '' : undefined\"\n :aria-controls=\"dropdownVisible ? contentId : undefined\"\n :aria-expanded=\"dropdownVisible || undefined\"\n :aria-label=\"ariaLabel\"\n :aria-autocomplete=\"dropdownVisible ? 'none' : undefined\"\n :aria-haspopup=\"dropdownVisible ? 'listbox' : undefined\"\n @input=\"handleInputChange\"\n @keydown=\"handleInputKeyDown\"\n @mousedown=\"handleInputMouseDown\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-input>\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownVisible\"\n :popper-class=\"[ns.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :placement=\"computedPlacement\"\n :fallback-placements=\"computedFallbackPlacements\"\n effect=\"light\"\n pure\n :offset=\"offset\"\n :show-arrow=\"showArrow\"\n >\n <template #default>\n <div :style=\"cursorStyle\" />\n </template>\n <template #content>\n <el-mention-dropdown\n ref=\"dropdownRef\"\n :options=\"filteredOptions\"\n :disabled=\"disabled\"\n :loading=\"loading\"\n :content-id=\"contentId\"\n :aria-label=\"ariaLabel\"\n @select=\"handleSelect\"\n @click.stop=\"elInputRef?.focus()\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-mention-dropdown>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\" setup generic=\"T extends MentionOption = MentionOption\">\nimport { computed, mergeProps, nextTick, ref } from 'vue'\nimport { pick } from 'lodash-unified'\nimport { useFocusController, useId, useNamespace } from '@element-plus/hooks'\nimport ElInput, { inputPropsDefaults } from '@element-plus/components/input'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n EVENT_CODE,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport { getEventCode, isArray, isFunction } from '@element-plus/utils'\nimport { mentionDefaultProps, mentionEmits } from './mention'\nimport { filterOption, getCursorPosition, getMentionCtx } from './helper'\nimport ElMentionDropdown from './mention-dropdown.vue'\n\nimport type { MentionProps } from './mention'\nimport type { Placement } from '@popperjs/core'\nimport type { CSSProperties } from 'vue'\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { MentionCtx, MentionOption } from './types'\n\ndefineOptions({\n name: 'ElMention',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<MentionProps<T>>(), {\n ...inputPropsDefaults,\n options: () => [],\n prefix: '@',\n split: ' ',\n filterOption: () => filterOption,\n placement: 'bottom',\n offset: 0,\n popperOptions: () => ({}),\n props: () => mentionDefaultProps,\n})\nconst emit = defineEmits(mentionEmits)\ndefineSlots<\n InputInstance['$slots'] & {\n header?: () => any\n footer?: () => any\n loading?: () => any\n label?: (props: { item: T & MentionOption; index: number }) => any\n }\n>()\n\nconst passInputProps = computed(() => {\n const inputProps = ElInput.props ?? []\n const keys = isArray(inputProps) ? inputProps : Object.keys(inputProps)\n return pick(props, keys)\n})\n\nconst ns = useNamespace('mention')\nconst disabled = useFormDisabled()\nconst contentId = useId()\n\nconst elInputRef = ref<InputInstance>()\nconst tooltipRef = ref<TooltipInstance>()\nconst dropdownRef = ref<InstanceType<typeof ElMentionDropdown>>()\n\nconst visible = ref(false)\nconst cursorStyle = ref<CSSProperties>()\nconst mentionCtx = ref<MentionCtx>()\n\nconst computedPlacement = computed<Placement>(() =>\n props.showArrow ? props.placement : `${props.placement}-start`\n)\n\nconst computedFallbackPlacements = computed<Placement[]>(() =>\n props.showArrow ? ['bottom', 'top'] : ['bottom-start', 'top-start']\n)\n\nconst aliasProps = computed(() => ({\n ...mentionDefaultProps,\n ...props.props,\n}))\n\nconst mapOption = (option: T) => {\n const base = {\n label: option[aliasProps.value.label],\n value: option[aliasProps.value.value],\n disabled: option[aliasProps.value.disabled],\n }\n return { ...option, ...base }\n}\n\nconst options = computed(() => props.options.map(mapOption))\n\nconst filteredOptions = computed(() => {\n const { filterOption } = props\n if (!mentionCtx.value || !filterOption) return options.value\n return options.value.filter((option) =>\n filterOption(mentionCtx.value!.pattern, option)\n )\n})\n\nconst dropdownVisible = computed(() => {\n return visible.value && (!!filteredOptions.value.length || props.loading)\n})\n\nconst hoveringId = computed(() => {\n return `${contentId.value}-${dropdownRef.value?.hoveringIndex}`\n})\n\nconst handleInputChange = (value: string) => {\n emit(UPDATE_MODEL_EVENT, value)\n emit(INPUT_EVENT, value)\n syncAfterCursorMove()\n}\n\nconst handleInputKeyDown = (event: KeyboardEvent | Event) => {\n if (elInputRef.value?.isComposing) return\n const code = getEventCode(event as KeyboardEvent)\n\n switch (code) {\n case EVENT_CODE.left:\n case EVENT_CODE.right:\n syncAfterCursorMove()\n break\n case EVENT_CODE.up:\n case EVENT_CODE.down:\n if (!visible.value) return\n event.preventDefault()\n dropdownRef.value?.navigateOptions(\n code === EVENT_CODE.up ? 'prev' : 'next'\n )\n break\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n if (!visible.value) {\n props.type !== 'textarea' && syncAfterCursorMove()\n return\n }\n event.preventDefault()\n if (dropdownRef.value?.hoverOption) {\n dropdownRef.value?.selectHoverOption()\n } else {\n visible.value = false\n }\n break\n case EVENT_CODE.esc:\n if (!visible.value) return\n event.preventDefault()\n visible.value = false\n break\n case EVENT_CODE.backspace:\n if (props.whole && mentionCtx.value) {\n const { splitIndex, selectionEnd, pattern, prefixIndex, prefix } =\n mentionCtx.value\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const matchOption = options.value.find((item) => item.value === pattern)\n const isWhole = isFunction(props.checkIsWhole)\n ? props.checkIsWhole(pattern, prefix)\n : matchOption\n if (isWhole && splitIndex !== -1 && splitIndex + 1 === selectionEnd) {\n event.preventDefault()\n const newValue =\n inputValue.slice(0, prefixIndex) + inputValue.slice(splitIndex + 1)\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('whole-remove', pattern, prefix)\n\n const newSelectionEnd = prefixIndex\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n syncDropdownVisible()\n })\n }\n }\n }\n}\n\nconst { wrapperRef } = useFocusController(elInputRef, {\n disabled,\n afterFocus() {\n syncAfterCursorMove()\n },\n beforeBlur(event) {\n return tooltipRef.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n visible.value = false\n },\n})\n\nconst handleInputMouseDown = () => {\n syncAfterCursorMove()\n}\n\n// Ensure that the original option passed by users is returned\nconst getOriginalOption = (mentionOption: MentionOption) => {\n return props.options.find((option: MentionOption) => {\n return mentionOption.value === option[aliasProps.value.value]\n })\n}\n\nconst handleSelect = (item: MentionOption) => {\n if (!mentionCtx.value) return\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const { split } = props\n\n const newEndPart = inputValue.slice(mentionCtx.value.end)\n const alreadySeparated = newEndPart.startsWith(split)\n const newMiddlePart = `${item.value}${alreadySeparated ? '' : split}`\n\n const newValue =\n inputValue.slice(0, mentionCtx.value.start) + newMiddlePart + newEndPart\n\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('select', getOriginalOption(item)!, mentionCtx.value.prefix)\n\n const newSelectionEnd =\n mentionCtx.value.start + newMiddlePart.length + (alreadySeparated ? 1 : 0)\n\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n inputEl.focus()\n syncDropdownVisible()\n })\n}\n\nconst getInputEl = () =>\n props.type === 'textarea'\n ? elInputRef.value?.textarea\n : elInputRef.value?.input\n\nconst syncAfterCursorMove = () => {\n // can't use nextTick(), get cursor position will be wrong\n setTimeout(() => {\n syncCursor()\n syncDropdownVisible()\n nextTick(() => tooltipRef.value?.updatePopper())\n }, 0)\n}\n\nconst syncCursor = () => {\n const inputEl = getInputEl()\n if (!inputEl) return\n\n const caretPosition = getCursorPosition(inputEl)\n const inputRect = inputEl.getBoundingClientRect()\n const wrapperRect = wrapperRef.value!.getBoundingClientRect()\n\n cursorStyle.value = {\n position: 'absolute',\n width: 0,\n height: `${caretPosition.height}px`,\n left: `${caretPosition.left + inputRect.left - wrapperRect.left}px`,\n top: `${caretPosition.top + inputRect.top - wrapperRect.top}px`,\n }\n}\n\nconst syncDropdownVisible = () => {\n const inputEl = getInputEl()\n if (document.activeElement !== inputEl) {\n visible.value = false\n return\n }\n const { prefix, split } = props\n mentionCtx.value = getMentionCtx(inputEl, prefix, split)\n if (mentionCtx.value && mentionCtx.value.splitIndex === -1) {\n visible.value = true\n emit('search', mentionCtx.value.pattern, mentionCtx.value.prefix)\n return\n }\n visible.value = false\n}\n\ndefineExpose({\n input: elInputRef,\n tooltip: tooltipRef,\n dropdownVisible,\n})\n</script>\n"],"mappings":""}
|
|
@@ -9,7 +9,7 @@ import { NavigationFailure } from "vue-router";
|
|
|
9
9
|
|
|
10
10
|
//#region ../../packages/components/menu/src/menu.d.ts
|
|
11
11
|
declare const menuProps: {
|
|
12
|
-
readonly mode: EpPropFinalized<StringConstructor, "
|
|
12
|
+
readonly mode: EpPropFinalized<StringConstructor, "horizontal" | "vertical", unknown, "vertical", boolean>;
|
|
13
13
|
readonly defaultActive: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
14
14
|
readonly defaultOpeneds: EpPropFinalized<(new (...args: any[]) => string[]) | (() => string[]) | (((new (...args: any[]) => string[]) | (() => string[])) | null)[], unknown, unknown, () => [], boolean>;
|
|
15
15
|
readonly uniqueOpened: BooleanConstructor;
|
|
@@ -45,7 +45,7 @@ declare const menuEmits: {
|
|
|
45
45
|
};
|
|
46
46
|
type MenuEmits = typeof menuEmits;
|
|
47
47
|
declare const _default: vue.DefineComponent<ExtractPropTypes<{
|
|
48
|
-
readonly mode: EpPropFinalized<StringConstructor, "
|
|
48
|
+
readonly mode: EpPropFinalized<StringConstructor, "horizontal" | "vertical", unknown, "vertical", boolean>;
|
|
49
49
|
readonly defaultActive: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
50
50
|
readonly defaultOpeneds: EpPropFinalized<(new (...args: any[]) => string[]) | (() => string[]) | (((new (...args: any[]) => string[]) | (() => string[])) | null)[], unknown, unknown, () => [], boolean>;
|
|
51
51
|
readonly uniqueOpened: BooleanConstructor;
|
|
@@ -78,7 +78,7 @@ declare const _default: vue.DefineComponent<ExtractPropTypes<{
|
|
|
78
78
|
open: (index: string, indexPath: string[]) => boolean;
|
|
79
79
|
select: (index: string, indexPath: string[], item: MenuItemClicked, routerResult?: Promise<void | NavigationFailure>) => boolean;
|
|
80
80
|
}, string, vue.PublicProps, Readonly<ExtractPropTypes<{
|
|
81
|
-
readonly mode: EpPropFinalized<StringConstructor, "
|
|
81
|
+
readonly mode: EpPropFinalized<StringConstructor, "horizontal" | "vertical", unknown, "vertical", boolean>;
|
|
82
82
|
readonly defaultActive: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
83
83
|
readonly defaultOpeneds: EpPropFinalized<(new (...args: any[]) => string[]) | (() => string[]) | (((new (...args: any[]) => string[]) | (() => string[])) | null)[], unknown, unknown, () => [], boolean>;
|
|
84
84
|
readonly uniqueOpened: BooleanConstructor;
|
|
@@ -112,7 +112,7 @@ declare const _default: vue.DefineComponent<ExtractPropTypes<{
|
|
|
112
112
|
readonly collapse: boolean;
|
|
113
113
|
readonly ellipsis: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
114
114
|
readonly persistent: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
115
|
-
readonly mode: EpPropMergeType<StringConstructor, "
|
|
115
|
+
readonly mode: EpPropMergeType<StringConstructor, "horizontal" | "vertical", unknown>;
|
|
116
116
|
readonly showTimeout: number;
|
|
117
117
|
readonly hideTimeout: number;
|
|
118
118
|
readonly defaultActive: string;
|
|
@@ -134,7 +134,7 @@ declare const messageProps: {
|
|
|
134
134
|
readonly type: EpPropFinalized<StringConstructor, "error" | "info" | "primary" | "success" | "warning", unknown, "info", boolean>;
|
|
135
135
|
readonly plain: EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
136
136
|
readonly offset: EpPropFinalized<NumberConstructor, unknown, unknown, 16, boolean>;
|
|
137
|
-
readonly placement: EpPropFinalized<StringConstructor, "top" | "bottom" | "top-
|
|
137
|
+
readonly placement: EpPropFinalized<StringConstructor, "top" | "bottom" | "top-right" | "top-left" | "bottom-right" | "bottom-left", unknown, undefined, boolean>;
|
|
138
138
|
readonly zIndex: EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
139
139
|
readonly grouping: EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
140
140
|
readonly repeatNum: EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
|
|
@@ -18,17 +18,17 @@ declare const __VLS_base: vue.DefineComponent<MessageProps, {
|
|
|
18
18
|
}, string, vue.PublicProps, Readonly<MessageProps> & Readonly<{
|
|
19
19
|
onDestroy?: (() => any) | undefined;
|
|
20
20
|
}>, {
|
|
21
|
+
zIndex: number;
|
|
22
|
+
offset: number;
|
|
21
23
|
type: MessageType;
|
|
22
24
|
onClose: () => void;
|
|
23
|
-
offset: number;
|
|
24
|
-
duration: number;
|
|
25
|
-
zIndex: number;
|
|
26
25
|
id: string;
|
|
27
26
|
icon: IconPropType;
|
|
28
27
|
placement: MessagePlacement;
|
|
29
28
|
plain: boolean;
|
|
30
29
|
message: string | vue.VNode | (() => vue.VNode);
|
|
31
30
|
showClose: boolean;
|
|
31
|
+
duration: number;
|
|
32
32
|
customClass: string;
|
|
33
33
|
dangerouslyUseHTMLString: boolean;
|
|
34
34
|
grouping: boolean;
|
|
@@ -110,7 +110,7 @@ declare const notificationProps: {
|
|
|
110
110
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
111
111
|
__epPropKey: true;
|
|
112
112
|
};
|
|
113
|
-
readonly position: EpPropFinalized<StringConstructor, "top-
|
|
113
|
+
readonly position: EpPropFinalized<StringConstructor, "top-right" | "top-left" | "bottom-right" | "bottom-left", unknown, "top-right", boolean>;
|
|
114
114
|
readonly showClose: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
115
115
|
readonly title: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
116
116
|
readonly type: EpPropFinalized<StringConstructor, "" | "error" | "info" | "primary" | "success" | "warning", unknown, "", boolean>;
|
|
@@ -17,16 +17,16 @@ declare const __VLS_base: vue.DefineComponent<NotificationProps, {
|
|
|
17
17
|
}, string, vue.PublicProps, Readonly<NotificationProps> & Readonly<{
|
|
18
18
|
onDestroy?: (() => any) | undefined;
|
|
19
19
|
}>, {
|
|
20
|
-
title: string;
|
|
21
|
-
type: NotificationType;
|
|
22
20
|
offset: number;
|
|
23
|
-
duration: number;
|
|
24
|
-
onClick: () => void;
|
|
25
21
|
position: NotificationPosition;
|
|
22
|
+
type: NotificationType;
|
|
23
|
+
title: string;
|
|
26
24
|
id: string;
|
|
25
|
+
onClick: () => void;
|
|
27
26
|
message: string | vue.VNode | (() => vue.VNode);
|
|
28
27
|
closeIcon: IconPropType;
|
|
29
28
|
showClose: boolean;
|
|
29
|
+
duration: number;
|
|
30
30
|
customClass: string;
|
|
31
31
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
32
32
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -27,8 +27,8 @@ declare const __VLS_base: vue.DefineComponent<PopconfirmProps, {
|
|
|
27
27
|
onCancel?: ((e: MouseEvent) => any) | undefined;
|
|
28
28
|
onConfirm?: ((e: MouseEvent) => any) | undefined;
|
|
29
29
|
}>, {
|
|
30
|
-
effect: PopperEffect;
|
|
31
30
|
teleported: boolean;
|
|
31
|
+
effect: PopperEffect;
|
|
32
32
|
icon: IconPropType;
|
|
33
33
|
hideAfter: number;
|
|
34
34
|
width: string | number;
|
|
@@ -33,9 +33,9 @@ declare const __VLS_base: vue.DefineComponent<PopoverProps, {
|
|
|
33
33
|
"onAfter-enter"?: (() => any) | undefined;
|
|
34
34
|
"onAfter-leave"?: (() => any) | undefined;
|
|
35
35
|
}>, {
|
|
36
|
-
effect: PopperEffect;
|
|
37
36
|
offset: number;
|
|
38
37
|
teleported: boolean;
|
|
38
|
+
effect: PopperEffect;
|
|
39
39
|
tabindex: string | number;
|
|
40
40
|
visible: boolean | null;
|
|
41
41
|
content: string;
|
|
@@ -4,7 +4,7 @@ import { SetupContext } from "vue";
|
|
|
4
4
|
|
|
5
5
|
//#region ../../packages/components/popper/src/composables/use-focus-trap.d.ts
|
|
6
6
|
declare const usePopperContentFocusTrap: (props: PopperContentProps, emit: SetupContext<PopperContentEmits>["emit"]) => {
|
|
7
|
-
focusStartRef: vue.Ref<HTMLElement | "
|
|
7
|
+
focusStartRef: vue.Ref<HTMLElement | "first" | "container" | undefined, HTMLElement | "first" | "container" | undefined>;
|
|
8
8
|
trapped: vue.Ref<boolean, boolean>;
|
|
9
9
|
onFocusAfterReleased: (event: CustomEvent) => void;
|
|
10
10
|
onFocusAfterTrapped: () => void;
|
|
@@ -40,8 +40,8 @@ declare const __VLS_base: vue.DefineComponent<PopperContentProps, {
|
|
|
40
40
|
onMouseenter?: ((evt: MouseEvent) => any) | undefined;
|
|
41
41
|
onMouseleave?: ((evt: MouseEvent) => any) | undefined;
|
|
42
42
|
}>, {
|
|
43
|
-
effect: PopperEffect;
|
|
44
43
|
offset: number;
|
|
44
|
+
effect: PopperEffect;
|
|
45
45
|
visible: boolean;
|
|
46
46
|
style: string | false | vue.CSSProperties | vue.StyleValue[] | null;
|
|
47
47
|
enterable: boolean;
|
|
@@ -14,7 +14,6 @@ type __VLS_Slots = {} & {
|
|
|
14
14
|
};
|
|
15
15
|
declare const __VLS_base: vue.DefineComponent<ProgressProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<ProgressProps> & Readonly<{}>, {
|
|
16
16
|
type: "line" | "circle" | "dashboard";
|
|
17
|
-
duration: number;
|
|
18
17
|
color: string | ProgressColor[] | ProgressFn;
|
|
19
18
|
strokeLinecap: NonNullable<vue.SVGAttributes["stroke-linecap"]>;
|
|
20
19
|
strokeWidth: number;
|
|
@@ -22,6 +21,7 @@ declare const __VLS_base: vue.DefineComponent<ProgressProps, {}, {}, {}, {}, vue
|
|
|
22
21
|
format: ProgressFn;
|
|
23
22
|
percentage: number;
|
|
24
23
|
status: "" | "success" | "exception" | "warning";
|
|
24
|
+
duration: number;
|
|
25
25
|
showText: boolean;
|
|
26
26
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
27
27
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -13,9 +13,9 @@ declare const __VLS_base: vue.DefineComponent<RadioGroupProps, {}, {}, {}, {}, v
|
|
|
13
13
|
onChange?: ((val: string | number | boolean | undefined) => any) | undefined;
|
|
14
14
|
"onUpdate:modelValue"?: ((val: string | number | boolean | undefined) => any) | undefined;
|
|
15
15
|
}>, {
|
|
16
|
-
type: "radio" | "button";
|
|
17
16
|
fill: string;
|
|
18
17
|
props: radioOptionProp;
|
|
18
|
+
type: "radio" | "button";
|
|
19
19
|
id: string;
|
|
20
20
|
disabled: boolean;
|
|
21
21
|
modelValue: string | number | boolean;
|
|
@@ -23,7 +23,7 @@ declare const rovingFocusGroupProps: {
|
|
|
23
23
|
loop: BooleanConstructor;
|
|
24
24
|
dir: EpPropFinalized<StringConstructor, string, unknown, string, boolean>;
|
|
25
25
|
orientation: {
|
|
26
|
-
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "
|
|
26
|
+
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined) | (((new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined)) | null)[], unknown, unknown>>;
|
|
27
27
|
readonly required: false;
|
|
28
28
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
29
29
|
__epPropKey: true;
|
|
@@ -38,7 +38,7 @@ declare const __VLS_export: vue.DefineComponent<{}, {}, {}, {}, {}, vue.Componen
|
|
|
38
38
|
loop: BooleanConstructor;
|
|
39
39
|
dir: EpPropFinalized<StringConstructor, string, unknown, string, boolean>;
|
|
40
40
|
orientation: {
|
|
41
|
-
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "
|
|
41
|
+
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined) | (((new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined)) | null)[], unknown, unknown>>;
|
|
42
42
|
readonly required: false;
|
|
43
43
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
44
44
|
__epPropKey: true;
|
|
@@ -63,7 +63,7 @@ declare const __VLS_export: vue.DefineComponent<{}, {}, {}, {}, {}, vue.Componen
|
|
|
63
63
|
loop: BooleanConstructor;
|
|
64
64
|
dir: EpPropFinalized<StringConstructor, string, unknown, string, boolean>;
|
|
65
65
|
orientation: {
|
|
66
|
-
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "
|
|
66
|
+
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined) | (((new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical" | undefined)) | null)[], unknown, unknown>>;
|
|
67
67
|
readonly required: false;
|
|
68
68
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
69
69
|
__epPropKey: true;
|
|
@@ -62,7 +62,7 @@ interface SegmentedProps<T extends Option = Option> {
|
|
|
62
62
|
*/
|
|
63
63
|
declare const segmentedProps: {
|
|
64
64
|
ariaLabel: StringConstructor;
|
|
65
|
-
direction: EpPropFinalized<(new (...args: any[]) => "
|
|
65
|
+
direction: EpPropFinalized<(new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical") | (((new (...args: any[]) => "horizontal" | "vertical") | (() => "horizontal" | "vertical")) | null)[], unknown, unknown, string, boolean>;
|
|
66
66
|
options: EpPropFinalized<(new (...args: any[]) => Option[]) | (() => Option[]) | (((new (...args: any[]) => Option[]) | (() => Option[])) | null)[], unknown, unknown, () => never[], boolean>;
|
|
67
67
|
modelValue: EpPropFinalized<(BooleanConstructor | NumberConstructor | StringConstructor)[], unknown, unknown, undefined, boolean>;
|
|
68
68
|
props: EpPropFinalized<(new (...args: any[]) => Props) | (() => Props) | (((new (...args: any[]) => Props) | (() => Props)) | null)[], unknown, unknown, () => Required<Props>, boolean>;
|
|
@@ -402,10 +402,10 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
402
402
|
"onRemove-tag"?: ((...args: any[]) => any) | undefined;
|
|
403
403
|
"onPopup-scroll"?: ((...args: any[]) => any) | undefined;
|
|
404
404
|
}>, {
|
|
405
|
-
effect: EpPropMergeType<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown>;
|
|
406
|
-
props: Props;
|
|
407
405
|
offset: number;
|
|
408
406
|
teleported: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
407
|
+
props: Props;
|
|
408
|
+
effect: EpPropMergeType<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown>;
|
|
409
409
|
disabled: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
410
410
|
modelValue: EpPropMergeType<(new (...args: any[]) => string | number | boolean | Record<string, any> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[], unknown, unknown>[]) | (() => EpPropMergeType<(BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[], unknown, unknown> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[], unknown, unknown>[] | null) | (((new (...args: any[]) => string | number | boolean | Record<string, any> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[], unknown, unknown>[]) | (() => EpPropMergeType<(BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[], unknown, unknown> | EpPropMergeType<(BooleanConstructor | ObjectConstructor | NumberConstructor | StringConstructor)[], unknown, unknown>[] | null)) | null)[], unknown, unknown>;
|
|
411
411
|
autocomplete: string;
|
|
@@ -747,9 +747,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
747
747
|
"before-show": (...args: any[]) => void;
|
|
748
748
|
"before-hide": (...args: any[]) => void;
|
|
749
749
|
}, vue.PublicProps, {
|
|
750
|
-
effect: PopperEffect;
|
|
751
750
|
offset: number;
|
|
752
751
|
teleported: boolean;
|
|
752
|
+
effect: PopperEffect;
|
|
753
753
|
visible: boolean | null;
|
|
754
754
|
content: string;
|
|
755
755
|
style: string | false | vue.CSSProperties | vue.StyleValue[] | null;
|
|
@@ -798,9 +798,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
798
798
|
onClose: (event?: Event, delay?: number) => void;
|
|
799
799
|
hide: (event?: Event) => void;
|
|
800
800
|
}, {}, {}, {}, {
|
|
801
|
-
effect: PopperEffect;
|
|
802
801
|
offset: number;
|
|
803
802
|
teleported: boolean;
|
|
803
|
+
effect: PopperEffect;
|
|
804
804
|
visible: boolean | null;
|
|
805
805
|
content: string;
|
|
806
806
|
style: string | false | vue.CSSProperties | vue.StyleValue[] | null;
|
|
@@ -854,9 +854,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
854
854
|
"before-show": (...args: any[]) => void;
|
|
855
855
|
"before-hide": (...args: any[]) => void;
|
|
856
856
|
}, string, {
|
|
857
|
-
effect: PopperEffect;
|
|
858
857
|
offset: number;
|
|
859
858
|
teleported: boolean;
|
|
859
|
+
effect: PopperEffect;
|
|
860
860
|
visible: boolean | null;
|
|
861
861
|
content: string;
|
|
862
862
|
style: string | false | vue.CSSProperties | vue.StyleValue[] | null;
|
|
@@ -594,10 +594,10 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
594
594
|
"onVisible-change"?: ((visible: boolean) => any) | undefined;
|
|
595
595
|
"onRemove-tag"?: ((val: unknown) => any) | undefined;
|
|
596
596
|
}>, {
|
|
597
|
-
readonly effect: EpPropMergeType<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown>;
|
|
598
|
-
readonly props: Props;
|
|
599
597
|
readonly offset: number;
|
|
600
598
|
readonly teleported: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
599
|
+
readonly props: Props;
|
|
600
|
+
readonly effect: EpPropMergeType<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown>;
|
|
601
601
|
readonly disabled: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
602
602
|
readonly modelValue: any;
|
|
603
603
|
readonly autocomplete: EpPropMergeType<(new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list") | (((new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list")) | null)[], unknown, unknown>;
|
|
@@ -728,9 +728,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
728
728
|
"before-show": (...args: any[]) => void;
|
|
729
729
|
"before-hide": (...args: any[]) => void;
|
|
730
730
|
}, vue.PublicProps, {
|
|
731
|
-
effect: PopperEffect;
|
|
732
731
|
offset: number;
|
|
733
732
|
teleported: boolean;
|
|
733
|
+
effect: PopperEffect;
|
|
734
734
|
visible: boolean | null;
|
|
735
735
|
content: string;
|
|
736
736
|
style: string | false | vue.CSSProperties | vue.StyleValue[] | null;
|
|
@@ -779,9 +779,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
779
779
|
onClose: (event?: Event, delay?: number) => void;
|
|
780
780
|
hide: (event?: Event) => void;
|
|
781
781
|
}, {}, {}, {}, {
|
|
782
|
-
effect: PopperEffect;
|
|
783
782
|
offset: number;
|
|
784
783
|
teleported: boolean;
|
|
784
|
+
effect: PopperEffect;
|
|
785
785
|
visible: boolean | null;
|
|
786
786
|
content: string;
|
|
787
787
|
style: string | false | vue.CSSProperties | vue.StyleValue[] | null;
|
|
@@ -835,9 +835,9 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
835
835
|
"before-show": (...args: any[]) => void;
|
|
836
836
|
"before-hide": (...args: any[]) => void;
|
|
837
837
|
}, string, {
|
|
838
|
-
effect: PopperEffect;
|
|
839
838
|
offset: number;
|
|
840
839
|
teleported: boolean;
|
|
840
|
+
effect: PopperEffect;
|
|
841
841
|
visible: boolean | null;
|
|
842
842
|
content: string;
|
|
843
843
|
style: string | false | vue.CSSProperties | vue.StyleValue[] | null;
|