@element-plus/nightly 0.0.20260313 → 0.0.20260315
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 +13 -7
- 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 +13 -7
- 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.d.ts +6 -6
- package/es/components/affix/src/affix.mjs.map +1 -1
- package/es/components/affix/src/affix.vue.d.ts +10 -31
- package/es/components/alert/src/alert.d.ts +1 -1
- package/es/components/alert/src/alert.vue.d.ts +5 -29
- package/es/components/anchor/src/anchor-link.vue.d.ts +2 -16
- package/es/components/anchor/src/anchor.d.ts +3 -3
- package/es/components/anchor/src/anchor.vue.d.ts +6 -30
- package/es/components/autocomplete/src/autocomplete.d.ts +16 -21
- package/es/components/autocomplete/src/autocomplete.vue.d.ts +23 -71
- package/es/components/avatar/src/avatar-group-props.d.ts +3 -3
- package/es/components/avatar/src/avatar-group.d.ts +10 -10
- package/es/components/avatar/src/avatar.d.ts +5 -5
- package/es/components/avatar/src/avatar.mjs.map +1 -1
- package/es/components/avatar/src/avatar.vue.d.ts +7 -22
- package/es/components/backtop/src/backtop.vue.d.ts +5 -25
- package/es/components/badge/src/badge.d.ts +2 -2
- package/es/components/badge/src/badge.vue.d.ts +4 -28
- package/es/components/breadcrumb/src/breadcrumb-item.d.ts +1 -1
- package/es/components/breadcrumb/src/breadcrumb-item.vue.d.ts +2 -16
- package/es/components/breadcrumb/src/breadcrumb.d.ts +1 -1
- package/es/components/breadcrumb/src/breadcrumb.vue.d.ts +2 -16
- package/es/components/button/src/button-group.vue.d.ts +3 -19
- package/es/components/button/src/button.d.ts +5 -5
- package/es/components/button/src/button.vue.d.ts +9 -41
- package/es/components/calendar/src/calendar.d.ts +1 -1
- package/es/components/calendar/src/calendar.vue.d.ts +6 -20
- package/es/components/calendar/src/date-table.d.ts +7 -1
- package/es/components/calendar/src/date-table.vue.d.ts +4 -4
- package/es/components/card/src/card.d.ts +1 -1
- package/es/components/card/src/card.vue.d.ts +2 -22
- package/es/components/carousel/src/carousel-item.vue.d.ts +2 -18
- package/es/components/carousel/src/carousel.d.ts +1 -1
- package/es/components/carousel/src/carousel.vue.d.ts +8 -44
- package/es/components/cascader/src/cascader.d.ts +16 -21
- package/es/components/cascader/src/cascader.vue.d.ts +19 -75
- package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/cascader/src/cascader2.mjs.map +1 -1
- package/es/components/cascader-panel/src/config.d.ts +6 -6
- package/es/components/cascader-panel/src/index.vue.d.ts +128 -26
- package/es/components/cascader-panel/src/menu.vue.d.ts +3 -3
- package/es/components/check-tag/src/check-tag.vue.d.ts +4 -18
- package/es/components/checkbox/src/checkbox-button.vue.d.ts +7 -41
- package/es/components/checkbox/src/checkbox-group.d.ts +2 -2
- package/es/components/checkbox/src/checkbox-group.vue.d.ts +6 -38
- package/es/components/checkbox/src/checkbox.vue.d.ts +7 -41
- package/es/components/checkbox/src/composables/use-checkbox-model.d.ts +2 -2
- package/es/components/checkbox/src/composables/use-checkbox-status.d.ts +1 -1
- package/es/components/checkbox/src/composables/use-checkbox.d.ts +3 -3
- package/es/components/col/src/col.d.ts +5 -5
- package/es/components/col/src/col.vue.d.ts +2 -34
- package/es/components/collapse/src/collapse-item.d.ts +3 -8
- package/es/components/collapse/src/collapse-item.vue.d.ts +3 -19
- package/es/components/collapse/src/collapse.d.ts +2 -2
- package/es/components/collapse/src/collapse.vue.d.ts +7 -23
- package/es/components/collapse-transition/src/collapse-transition.vue.d.ts +1 -1
- package/es/components/collection/src/collection.d.ts +6 -6
- package/es/components/color-picker/src/color-picker.d.ts +7 -7
- package/es/components/color-picker/src/color-picker.vue.d.ts +12 -42
- package/es/components/color-picker-panel/src/color-picker-panel.d.ts +4 -4
- package/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts +6 -26
- package/es/components/config-provider/src/config-provider-props.d.ts +1 -1
- package/es/components/config-provider/src/config-provider.d.ts +8 -8
- package/es/components/container/src/aside.vue.d.ts +2 -16
- package/es/components/container/src/container.vue.d.ts +7 -1
- package/es/components/container/src/footer.vue.d.ts +2 -16
- package/es/components/container/src/header.vue.d.ts +2 -16
- package/es/components/container/src/main.vue.d.ts +1 -1
- package/es/components/countdown/src/countdown.d.ts +2 -2
- package/es/components/countdown/src/countdown.vue.d.ts +5 -23
- package/es/components/date-picker/src/date-picker.d.ts +45 -54
- package/es/components/date-picker/src/props.d.ts +16 -21
- package/es/components/date-picker-panel/src/date-picker-panel.d.ts +16 -16
- package/es/components/date-picker-panel/src/props/date-picker-panel.d.ts +4 -4
- package/es/components/descriptions/src/description-item.d.ts +6 -6
- package/es/components/descriptions/src/description.vue.d.ts +2 -22
- package/es/components/dialog/src/dialog.d.ts +3 -3
- package/es/components/dialog/src/dialog.vue.d.ts +14 -56
- package/es/components/dialog/src/use-dialog.d.ts +7 -7
- package/es/components/divider/src/divider.d.ts +1 -1
- package/es/components/divider/src/divider.vue.d.ts +2 -20
- package/es/components/drawer/src/drawer.d.ts +3 -3
- package/es/components/drawer/src/drawer.vue.d.ts +15 -65
- package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown-item.vue.d.ts +141 -9
- package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown-menu.vue.d.ts +5 -5
- package/es/components/dropdown/src/dropdown.d.ts +13 -13
- package/es/components/dropdown/src/dropdown.vue.d.ts +569 -45
- package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
- package/es/components/empty/src/empty.vue.d.ts +2 -18
- package/es/components/focus-trap/src/focus-trap.vue.d.ts +6 -6
- package/es/components/focus-trap/src/utils.d.ts +3 -3
- package/es/components/form/src/form-item.d.ts +3 -3
- package/es/components/form/src/form-item.vue.d.ts +5 -25
- package/es/components/form/src/form.d.ts +2 -2
- package/es/components/form/src/form.vue.d.ts +6 -32
- package/es/components/form/src/hooks/use-form-item.d.ts +1 -1
- package/es/components/icon/src/icon.d.ts +1 -1
- package/es/components/icon/src/icon.vue.d.ts +2 -16
- package/es/components/image/src/image.d.ts +3 -3
- package/es/components/image/src/image.vue.d.ts +13 -45
- package/es/components/image-viewer/src/image-viewer.d.ts +2 -2
- package/es/components/image-viewer/src/image-viewer.vue.d.ts +10 -38
- package/es/components/index.d.ts +8 -8
- package/es/components/infinite-scroll/index.d.ts +1 -1
- package/es/components/input/src/input.d.ts +12 -17
- package/es/components/input/src/input.vue.d.ts +21 -55
- package/es/components/input-number/src/input-number.d.ts +4 -4
- package/es/components/input-number/src/input-number.vue.d.ts +13 -51
- package/es/components/input-tag/src/composables/use-drag-tag.d.ts +2 -2
- package/es/components/input-tag/src/composables/use-hovering.d.ts +1 -1
- package/es/components/input-tag/src/composables/use-input-tag-dom.d.ts +4 -3
- package/es/components/input-tag/src/composables/use-input-tag.d.ts +6 -6
- package/es/components/input-tag/src/input-tag.d.ts +5 -10
- package/es/components/input-tag/src/input-tag.vue.d.ts +14 -52
- package/es/components/link/src/link.d.ts +2 -2
- package/es/components/link/src/link.vue.d.ts +5 -25
- package/es/components/loading/src/loading.d.ts +19 -15
- package/es/components/mention/src/mention.d.ts +19 -24
- package/es/components/mention/src/mention.vue.d.ts +16 -66
- package/es/components/menu/index.d.ts +1 -1
- package/es/components/menu/src/menu-item-group.vue.d.ts +2 -1
- package/es/components/menu/src/menu-item.d.ts +2 -2
- package/es/components/menu/src/menu-item.vue.d.ts +5 -19
- package/es/components/menu/src/menu.d.ts +26 -26
- package/es/components/menu/src/sub-menu.d.ts +20 -20
- package/es/components/message/src/message.d.ts +6 -6
- package/es/components/message/src/message.vue.d.ts +11 -56
- package/es/components/message-box/src/index.mjs.map +1 -1
- package/es/components/notification/src/notification.d.ts +6 -11
- package/es/components/notification/src/notification.vue.d.ts +12 -46
- package/es/components/overlay/index.d.ts +11 -11
- package/es/components/overlay/src/overlay.d.ts +3 -3
- package/es/components/overlay/src/overlay.mjs.map +1 -1
- package/es/components/page-header/src/page-header.d.ts +1 -1
- package/es/components/page-header/src/page-header.vue.d.ts +4 -20
- package/es/components/pagination/src/pagination.d.ts +22 -22
- package/es/components/popconfirm/src/popconfirm.d.ts +4 -4
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +6 -34
- package/es/components/popover/src/popover.d.ts +11 -11
- package/es/components/popover/src/popover.vue.d.ts +10 -58
- package/es/components/popper/src/arrow.vue.d.ts +2 -2
- package/es/components/popper/src/composables/use-content-dom.d.ts +1 -1
- package/es/components/popper/src/composables/use-content.d.ts +5 -5
- package/es/components/popper/src/composables/use-content.mjs +9 -0
- package/es/components/popper/src/composables/use-content.mjs.map +1 -1
- package/es/components/popper/src/composables/use-focus-trap.d.ts +2 -2
- package/es/components/popper/src/content.d.ts +18 -18
- package/es/components/popper/src/content.vue.d.ts +13 -61
- package/es/components/popper/src/popper.vue.d.ts +2 -16
- package/es/components/popper/src/trigger.vue.d.ts +3 -13
- package/es/components/progress/src/progress.d.ts +4 -4
- package/es/components/progress/src/progress.vue.d.ts +4 -36
- package/es/components/radio/src/radio-button.vue.d.ts +4 -26
- package/es/components/radio/src/radio-group.d.ts +1 -1
- package/es/components/radio/src/radio-group.vue.d.ts +6 -36
- package/es/components/radio/src/radio.vue.d.ts +7 -31
- package/es/components/rate/src/rate.d.ts +5 -5
- package/es/components/rate/src/rate.vue.d.ts +7 -49
- package/es/components/result/src/result.vue.d.ts +2 -20
- package/es/components/roving-focus-group/src/roving-focus-group.d.ts +9 -9
- package/es/components/roving-focus-group/src/roving-focus-group.vue.d.ts +77 -1
- package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
- package/es/components/roving-focus-group/src/roving-focus-item.mjs.map +1 -1
- package/es/components/roving-focus-group/src/roving-focus-item.vue.d.ts +26 -7
- package/es/components/row/src/row.d.ts +2 -2
- package/es/components/row/src/row.vue.d.ts +2 -20
- package/es/components/scrollbar/src/scrollbar.d.ts +1 -1
- package/es/components/scrollbar/src/scrollbar.vue.d.ts +6 -38
- package/es/components/scrollbar/src/thumb.vue.d.ts +2 -1
- package/es/components/segmented/index.d.ts +26 -239
- package/es/components/segmented/src/segmented.d.ts +3 -3
- package/es/components/segmented/src/segmented.vue.d.ts +6 -30
- package/es/components/select/src/option-group.mjs.map +1 -1
- package/es/components/select/src/option-group.vue.d.ts +6 -6
- package/es/components/select/src/option.vue.d.ts +8 -8
- package/es/components/select/src/option2.mjs.map +1 -1
- package/es/components/select/src/select-dropdown.mjs.map +1 -1
- package/es/components/select/src/select.d.ts +13 -23
- package/es/components/select/src/select.vue.d.ts +559 -95
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs +3 -2
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/select/src/select2.mjs.map +1 -1
- package/es/components/select-v2/src/defaults.d.ts +17 -27
- package/es/components/select-v2/src/group-item.mjs.map +1 -1
- package/es/components/select-v2/src/option-item.mjs.map +1 -1
- package/es/components/select-v2/src/select.mjs.map +1 -1
- package/es/components/select-v2/src/select.vue.d.ts +358 -103
- package/es/components/skeleton/src/skeleton-item.d.ts +1 -1
- package/es/components/skeleton/src/skeleton-item.vue.d.ts +2 -16
- package/es/components/skeleton/src/skeleton.d.ts +2 -2
- package/es/components/skeleton/src/skeleton.vue.d.ts +4 -22
- package/es/components/slider/src/button.vue.d.ts +9 -9
- package/es/components/slider/src/composables/use-lifecycle.d.ts +1 -1
- package/es/components/slider/src/composables/use-slide.d.ts +3 -3
- package/es/components/slider/src/composables/use-slider-button.d.ts +5 -5
- package/es/components/slider/src/marker.d.ts +2 -2
- package/es/components/slider/src/slider.d.ts +6 -6
- package/es/components/slider/src/slider.vue.d.ts +27 -27
- package/es/components/slot/src/only-child.d.ts +1 -1
- package/es/components/space/src/item.d.ts +4 -4
- package/es/components/space/src/space.d.ts +22 -23
- package/es/components/space/src/space.mjs.map +1 -1
- package/es/components/space/src/use-space.d.ts +1 -1
- package/es/components/splitter/src/hooks/useContainer.d.ts +2 -2
- package/es/components/splitter/src/hooks/useResize.d.ts +7 -1
- package/es/components/splitter/src/hooks/useSize.d.ts +1 -1
- package/es/components/splitter/src/split-panel.vue.d.ts +6 -20
- package/es/components/splitter/src/splitter.vue.d.ts +4 -18
- package/es/components/statistic/src/statistic.d.ts +2 -2
- package/es/components/statistic/src/statistic.vue.d.ts +3 -25
- package/es/components/steps/src/item.d.ts +2 -2
- package/es/components/steps/src/item.vue.d.ts +2 -22
- package/es/components/steps/src/steps.d.ts +2 -2
- package/es/components/steps/src/steps.vue.d.ts +4 -26
- package/es/components/switch/src/switch.d.ts +5 -5
- package/es/components/switch/src/switch.vue.d.ts +7 -37
- package/es/components/table/src/filter-panel.mjs.map +1 -1
- package/es/components/table/src/h-helper.d.ts +17 -0
- package/es/components/table/src/store/index.d.ts +880 -880
- package/es/components/table/src/table-body/index.d.ts +10 -8
- package/es/components/table/src/table-column/index.d.ts +105 -5
- package/es/components/table/src/table-footer/index.d.ts +5 -5
- package/es/components/table/src/table-header/index.d.ts +109 -7
- package/es/components/table/src/table.mjs.map +1 -1
- package/es/components/table/src/table.vue.d.ts +931 -460
- package/es/components/table-v2/src/cell.d.ts +1 -1
- package/es/components/table-v2/src/components/auto-resizer.d.ts +4 -4
- package/es/components/table-v2/src/components/header-row.d.ts +3 -3
- package/es/components/table-v2/src/components/header.d.ts +7 -7
- package/es/components/table-v2/src/components/row.d.ts +7 -7
- package/es/components/table-v2/src/composables/use-auto-resize.d.ts +3 -3
- package/es/components/table-v2/src/composables/use-data.d.ts +1 -1
- package/es/components/table-v2/src/composables/use-row.d.ts +4 -4
- package/es/components/table-v2/src/composables/use-scrollbar.d.ts +3 -0
- package/es/components/table-v2/src/header.d.ts +1 -1
- package/es/components/table-v2/src/row.d.ts +1 -1
- package/es/components/table-v2/src/table-grid.d.ts +10 -10
- package/es/components/table-v2/src/table-v2.d.ts +24 -24
- package/es/components/table-v2/src/table.d.ts +9 -9
- package/es/components/table-v2/src/use-table.d.ts +8 -8
- package/es/components/tabs/src/tab-bar.d.ts +4 -4
- package/es/components/tabs/src/tab-bar.vue.d.ts +4 -20
- package/es/components/tabs/src/tab-nav.d.ts +11 -11
- package/es/components/tabs/src/tab-pane.vue.d.ts +3 -19
- package/es/components/tabs/src/tabs.d.ts +18 -18
- package/es/components/tag/src/tag.d.ts +1 -1
- package/es/components/tag/src/tag.vue.d.ts +6 -22
- package/es/components/teleport/src/teleport.d.ts +1 -1
- package/es/components/teleport/src/teleport.vue.d.ts +6 -6
- package/es/components/text/src/text.vue.d.ts +2 -20
- package/es/components/time-picker/src/common/picker.vue.d.ts +50 -59
- package/es/components/time-picker/src/common/props.d.ts +17 -22
- package/es/components/time-picker/src/composables/use-common-picker.d.ts +13 -3
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +5 -5
- package/es/components/time-picker/src/time-picker.d.ts +42 -51
- package/es/components/time-select/src/time-select.d.ts +8 -8
- package/es/components/time-select/src/time-select.vue.d.ts +13 -51
- package/es/components/timeline/src/timeline-item.d.ts +2 -2
- package/es/components/timeline/src/timeline-item.vue.d.ts +3 -25
- package/es/components/timeline/src/timeline.d.ts +5 -5
- package/es/components/tooltip/src/content.d.ts +11 -11
- package/es/components/tooltip/src/content.vue.d.ts +8 -66
- package/es/components/tooltip/src/content.vue_vue_type_script_setup_true_lang.mjs +0 -3
- package/es/components/tooltip/src/content.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/tooltip/src/content2.mjs.map +1 -1
- package/es/components/tooltip/src/tooltip.d.ts +13 -13
- package/es/components/tooltip/src/tooltip.vue.d.ts +14 -80
- package/es/components/tooltip/src/trigger.d.ts +2 -2
- package/es/components/tour/src/content.d.ts +3 -3
- package/es/components/tour/src/step.d.ts +8 -8
- package/es/components/tour/src/step.vue.d.ts +6 -28
- package/es/components/tour/src/tour.d.ts +9 -9
- package/es/components/tour/src/tour.vue.d.ts +11 -53
- package/es/components/transfer/src/transfer-panel.vue.d.ts +6 -36
- package/es/components/transfer/src/transfer.d.ts +8 -8
- package/es/components/transfer/src/transfer.vue.d.ts +8 -48
- package/es/components/tree/src/model/useDragNode.d.ts +1 -1
- package/es/components/tree/src/tree-node.mjs.map +1 -1
- package/es/components/tree/src/tree.d.ts +4 -4
- package/es/components/tree/src/tree.vue.d.ts +594 -23
- package/es/components/tree/src/tree2.mjs.map +1 -1
- package/es/components/tree-select/src/tree-select.vue.d.ts +60 -78
- package/es/components/tree-v2/src/tree.vue.d.ts +6 -53
- package/es/components/tree-v2/src/virtual-tree.d.ts +1 -12
- package/es/components/upload/src/upload-content.d.ts +19 -19
- package/es/components/upload/src/upload-content.vue.d.ts +5 -53
- package/es/components/upload/src/upload-dragger.vue.d.ts +4 -18
- package/es/components/upload/src/upload-list.d.ts +4 -4
- package/es/components/upload/src/upload-list.vue.d.ts +4 -24
- package/es/components/upload/src/upload.d.ts +27 -27
- package/es/components/upload/src/upload.vue.d.ts +6 -56
- package/es/components/virtual-list/src/builders/build-grid.d.ts +23 -23
- package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +23 -23
- package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +34 -20
- package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +23 -23
- package/es/components/virtual-list/src/components/fixed-size-list.d.ts +34 -20
- package/es/components/virtual-list/src/hooks/use-cache.d.ts +1 -3
- package/es/components/virtual-list/src/hooks/use-cache.mjs.map +1 -1
- package/es/components/virtual-list/src/props.d.ts +17 -17
- package/es/components/watermark/src/watermark.d.ts +2 -2
- package/es/components/watermark/src/watermark.vue.d.ts +3 -23
- package/es/directives/index.d.ts +1 -1
- package/es/hooks/use-calc-input-width/index.d.ts +2 -2
- package/es/hooks/use-composition/index.d.ts +1 -1
- package/es/hooks/use-draggable/index.d.ts +1 -1
- package/es/hooks/use-empty-values/index.d.ts +1 -1
- package/es/hooks/use-floating/index.d.ts +60 -8
- package/es/hooks/use-focus-controller/index.d.ts +2 -2
- package/es/hooks/use-model-toggle/index.d.ts +1 -1
- package/es/hooks/use-ordered-children/index.d.ts +2 -2
- package/es/hooks/use-popper/index.d.ts +3 -3
- package/es/hooks/use-teleport/index.d.ts +1 -1
- package/es/hooks/use-throttle-render/index.d.ts +1 -1
- package/es/index.d.ts +9 -9
- package/es/utils/index.d.ts +2 -2
- package/es/utils/typescript.d.ts +5 -1
- package/es/utils/typescript.mjs.map +1 -1
- package/es/utils/vue/icon.d.ts +14 -14
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/affix/src/affix.d.ts +6 -6
- package/lib/components/affix/src/affix.js.map +1 -1
- package/lib/components/affix/src/affix.vue.d.ts +10 -31
- package/lib/components/alert/src/alert.d.ts +1 -1
- package/lib/components/alert/src/alert.vue.d.ts +5 -29
- package/lib/components/anchor/src/anchor-link.vue.d.ts +2 -16
- package/lib/components/anchor/src/anchor.d.ts +3 -3
- package/lib/components/anchor/src/anchor.vue.d.ts +6 -30
- package/lib/components/autocomplete/src/autocomplete.d.ts +16 -21
- package/lib/components/autocomplete/src/autocomplete.vue.d.ts +23 -71
- package/lib/components/avatar/src/avatar-group-props.d.ts +3 -3
- package/lib/components/avatar/src/avatar-group.d.ts +10 -10
- package/lib/components/avatar/src/avatar.d.ts +5 -5
- package/lib/components/avatar/src/avatar.js.map +1 -1
- package/lib/components/avatar/src/avatar.vue.d.ts +7 -22
- package/lib/components/backtop/src/backtop.vue.d.ts +5 -25
- package/lib/components/badge/src/badge.d.ts +2 -2
- package/lib/components/badge/src/badge.vue.d.ts +4 -28
- package/lib/components/breadcrumb/src/breadcrumb-item.d.ts +1 -1
- package/lib/components/breadcrumb/src/breadcrumb-item.vue.d.ts +2 -16
- package/lib/components/breadcrumb/src/breadcrumb.d.ts +1 -1
- package/lib/components/breadcrumb/src/breadcrumb.vue.d.ts +2 -16
- package/lib/components/button/src/button-group.vue.d.ts +3 -19
- package/lib/components/button/src/button.d.ts +5 -5
- package/lib/components/button/src/button.vue.d.ts +9 -41
- package/lib/components/calendar/src/calendar.d.ts +1 -1
- package/lib/components/calendar/src/calendar.vue.d.ts +6 -20
- package/lib/components/calendar/src/date-table.d.ts +7 -1
- package/lib/components/calendar/src/date-table.vue.d.ts +4 -4
- package/lib/components/card/src/card.d.ts +1 -1
- package/lib/components/card/src/card.vue.d.ts +2 -22
- package/lib/components/carousel/src/carousel-item.vue.d.ts +2 -18
- package/lib/components/carousel/src/carousel.d.ts +1 -1
- package/lib/components/carousel/src/carousel.vue.d.ts +8 -44
- package/lib/components/cascader/src/cascader.d.ts +16 -21
- package/lib/components/cascader/src/cascader.vue.d.ts +19 -75
- package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/cascader/src/cascader2.js.map +1 -1
- package/lib/components/cascader-panel/src/config.d.ts +6 -6
- package/lib/components/cascader-panel/src/index.vue.d.ts +128 -26
- package/lib/components/cascader-panel/src/menu.vue.d.ts +3 -3
- package/lib/components/check-tag/src/check-tag.vue.d.ts +4 -18
- package/lib/components/checkbox/src/checkbox-button.vue.d.ts +7 -41
- package/lib/components/checkbox/src/checkbox-group.d.ts +2 -2
- package/lib/components/checkbox/src/checkbox-group.vue.d.ts +6 -38
- package/lib/components/checkbox/src/checkbox.vue.d.ts +7 -41
- package/lib/components/checkbox/src/composables/use-checkbox-model.d.ts +2 -2
- package/lib/components/checkbox/src/composables/use-checkbox-status.d.ts +1 -1
- package/lib/components/checkbox/src/composables/use-checkbox.d.ts +3 -3
- package/lib/components/col/src/col.d.ts +5 -5
- package/lib/components/col/src/col.vue.d.ts +2 -34
- package/lib/components/collapse/src/collapse-item.d.ts +3 -8
- package/lib/components/collapse/src/collapse-item.vue.d.ts +3 -19
- package/lib/components/collapse/src/collapse.d.ts +2 -2
- package/lib/components/collapse/src/collapse.vue.d.ts +7 -23
- package/lib/components/collapse-transition/src/collapse-transition.vue.d.ts +1 -1
- package/lib/components/collection/src/collection.d.ts +6 -6
- package/lib/components/color-picker/src/color-picker.d.ts +7 -7
- package/lib/components/color-picker/src/color-picker.vue.d.ts +12 -42
- package/lib/components/color-picker-panel/src/color-picker-panel.d.ts +4 -4
- package/lib/components/color-picker-panel/src/color-picker-panel.vue.d.ts +6 -26
- package/lib/components/config-provider/src/config-provider-props.d.ts +1 -1
- package/lib/components/config-provider/src/config-provider.d.ts +8 -8
- package/lib/components/container/src/aside.vue.d.ts +2 -16
- package/lib/components/container/src/container.vue.d.ts +7 -1
- package/lib/components/container/src/footer.vue.d.ts +2 -16
- package/lib/components/container/src/header.vue.d.ts +2 -16
- package/lib/components/container/src/main.vue.d.ts +1 -1
- package/lib/components/countdown/src/countdown.d.ts +2 -2
- package/lib/components/countdown/src/countdown.vue.d.ts +5 -23
- package/lib/components/date-picker/src/date-picker.d.ts +45 -54
- package/lib/components/date-picker/src/props.d.ts +16 -21
- package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +16 -16
- package/lib/components/date-picker-panel/src/props/date-picker-panel.d.ts +4 -4
- package/lib/components/descriptions/src/description-item.d.ts +6 -6
- package/lib/components/descriptions/src/description.vue.d.ts +2 -22
- package/lib/components/dialog/src/dialog.d.ts +3 -3
- package/lib/components/dialog/src/dialog.vue.d.ts +14 -56
- package/lib/components/dialog/src/use-dialog.d.ts +7 -7
- package/lib/components/divider/src/divider.d.ts +1 -1
- package/lib/components/divider/src/divider.vue.d.ts +2 -20
- package/lib/components/drawer/src/drawer.d.ts +3 -3
- package/lib/components/drawer/src/drawer.vue.d.ts +15 -65
- package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
- package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
- package/lib/components/dropdown/src/dropdown-item.vue.d.ts +141 -9
- package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
- package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +5 -5
- package/lib/components/dropdown/src/dropdown.d.ts +13 -13
- package/lib/components/dropdown/src/dropdown.vue.d.ts +569 -45
- package/lib/components/dropdown/src/dropdown2.js.map +1 -1
- package/lib/components/empty/src/empty.vue.d.ts +2 -18
- package/lib/components/focus-trap/src/focus-trap.vue.d.ts +6 -6
- package/lib/components/focus-trap/src/utils.d.ts +3 -3
- package/lib/components/form/src/form-item.d.ts +3 -3
- package/lib/components/form/src/form-item.vue.d.ts +5 -25
- package/lib/components/form/src/form.d.ts +2 -2
- package/lib/components/form/src/form.vue.d.ts +6 -32
- package/lib/components/form/src/hooks/use-form-item.d.ts +1 -1
- package/lib/components/icon/src/icon.d.ts +1 -1
- package/lib/components/icon/src/icon.vue.d.ts +2 -16
- package/lib/components/image/src/image.d.ts +3 -3
- package/lib/components/image/src/image.vue.d.ts +13 -45
- package/lib/components/image-viewer/src/image-viewer.d.ts +2 -2
- package/lib/components/image-viewer/src/image-viewer.vue.d.ts +10 -38
- package/lib/components/index.d.ts +8 -8
- package/lib/components/infinite-scroll/index.d.ts +1 -1
- package/lib/components/input/src/input.d.ts +12 -17
- package/lib/components/input/src/input.vue.d.ts +21 -55
- package/lib/components/input-number/src/input-number.d.ts +4 -4
- package/lib/components/input-number/src/input-number.vue.d.ts +13 -51
- package/lib/components/input-tag/src/composables/use-drag-tag.d.ts +2 -2
- package/lib/components/input-tag/src/composables/use-hovering.d.ts +1 -1
- package/lib/components/input-tag/src/composables/use-input-tag-dom.d.ts +4 -3
- package/lib/components/input-tag/src/composables/use-input-tag.d.ts +6 -6
- package/lib/components/input-tag/src/input-tag.d.ts +5 -10
- package/lib/components/input-tag/src/input-tag.vue.d.ts +14 -52
- package/lib/components/link/src/link.d.ts +2 -2
- package/lib/components/link/src/link.vue.d.ts +5 -25
- package/lib/components/loading/src/loading.d.ts +19 -15
- package/lib/components/mention/src/mention.d.ts +19 -24
- package/lib/components/mention/src/mention.vue.d.ts +16 -66
- package/lib/components/menu/index.d.ts +1 -1
- package/lib/components/menu/src/menu-item-group.vue.d.ts +2 -1
- package/lib/components/menu/src/menu-item.d.ts +2 -2
- package/lib/components/menu/src/menu-item.vue.d.ts +5 -19
- package/lib/components/menu/src/menu.d.ts +26 -26
- package/lib/components/menu/src/sub-menu.d.ts +20 -20
- package/lib/components/message/src/message.d.ts +6 -6
- package/lib/components/message/src/message.vue.d.ts +11 -56
- package/lib/components/message-box/src/index.js.map +1 -1
- package/lib/components/notification/src/notification.d.ts +6 -11
- package/lib/components/notification/src/notification.vue.d.ts +12 -46
- package/lib/components/overlay/index.d.ts +11 -11
- package/lib/components/overlay/src/overlay.d.ts +3 -3
- package/lib/components/overlay/src/overlay.js.map +1 -1
- package/lib/components/page-header/src/page-header.d.ts +1 -1
- package/lib/components/page-header/src/page-header.vue.d.ts +4 -20
- package/lib/components/pagination/src/pagination.d.ts +22 -22
- package/lib/components/popconfirm/src/popconfirm.d.ts +4 -4
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +6 -34
- package/lib/components/popover/src/popover.d.ts +11 -11
- package/lib/components/popover/src/popover.vue.d.ts +10 -58
- package/lib/components/popper/src/arrow.vue.d.ts +2 -2
- package/lib/components/popper/src/composables/use-content-dom.d.ts +1 -1
- package/lib/components/popper/src/composables/use-content.d.ts +5 -5
- package/lib/components/popper/src/composables/use-content.js +9 -0
- package/lib/components/popper/src/composables/use-content.js.map +1 -1
- package/lib/components/popper/src/composables/use-focus-trap.d.ts +2 -2
- package/lib/components/popper/src/content.d.ts +18 -18
- package/lib/components/popper/src/content.vue.d.ts +13 -61
- package/lib/components/popper/src/popper.vue.d.ts +2 -16
- package/lib/components/popper/src/trigger.vue.d.ts +3 -13
- package/lib/components/progress/src/progress.d.ts +4 -4
- package/lib/components/progress/src/progress.vue.d.ts +4 -36
- package/lib/components/radio/src/radio-button.vue.d.ts +4 -26
- package/lib/components/radio/src/radio-group.d.ts +1 -1
- package/lib/components/radio/src/radio-group.vue.d.ts +6 -36
- package/lib/components/radio/src/radio.vue.d.ts +7 -31
- package/lib/components/rate/src/rate.d.ts +5 -5
- package/lib/components/rate/src/rate.vue.d.ts +7 -49
- package/lib/components/result/src/result.vue.d.ts +2 -20
- package/lib/components/roving-focus-group/src/roving-focus-group.d.ts +9 -9
- package/lib/components/roving-focus-group/src/roving-focus-group.vue.d.ts +77 -1
- package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-item.js.map +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-item.vue.d.ts +26 -7
- package/lib/components/row/src/row.d.ts +2 -2
- package/lib/components/row/src/row.vue.d.ts +2 -20
- package/lib/components/scrollbar/src/scrollbar.d.ts +1 -1
- package/lib/components/scrollbar/src/scrollbar.vue.d.ts +6 -38
- package/lib/components/scrollbar/src/thumb.vue.d.ts +2 -1
- package/lib/components/segmented/index.d.ts +26 -239
- package/lib/components/segmented/src/segmented.d.ts +3 -3
- package/lib/components/segmented/src/segmented.vue.d.ts +6 -30
- package/lib/components/select/src/option-group.js.map +1 -1
- package/lib/components/select/src/option-group.vue.d.ts +6 -6
- package/lib/components/select/src/option.vue.d.ts +8 -8
- package/lib/components/select/src/option2.js.map +1 -1
- package/lib/components/select/src/select-dropdown.js.map +1 -1
- package/lib/components/select/src/select.d.ts +13 -23
- package/lib/components/select/src/select.vue.d.ts +559 -95
- package/lib/components/select/src/select.vue_vue_type_script_lang.js +3 -2
- package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/select/src/select2.js.map +1 -1
- package/lib/components/select-v2/src/defaults.d.ts +17 -27
- package/lib/components/select-v2/src/group-item.js.map +1 -1
- package/lib/components/select-v2/src/option-item.js.map +1 -1
- package/lib/components/select-v2/src/select.js.map +1 -1
- package/lib/components/select-v2/src/select.vue.d.ts +358 -103
- package/lib/components/skeleton/src/skeleton-item.d.ts +1 -1
- package/lib/components/skeleton/src/skeleton-item.vue.d.ts +2 -16
- package/lib/components/skeleton/src/skeleton.d.ts +2 -2
- package/lib/components/skeleton/src/skeleton.vue.d.ts +4 -22
- package/lib/components/slider/src/button.vue.d.ts +9 -9
- package/lib/components/slider/src/composables/use-lifecycle.d.ts +1 -1
- package/lib/components/slider/src/composables/use-slide.d.ts +3 -3
- package/lib/components/slider/src/composables/use-slider-button.d.ts +5 -5
- package/lib/components/slider/src/marker.d.ts +2 -2
- package/lib/components/slider/src/slider.d.ts +6 -6
- package/lib/components/slider/src/slider.vue.d.ts +27 -27
- package/lib/components/slot/src/only-child.d.ts +1 -1
- package/lib/components/space/src/item.d.ts +4 -4
- package/lib/components/space/src/space.d.ts +22 -23
- package/lib/components/space/src/space.js.map +1 -1
- package/lib/components/space/src/use-space.d.ts +1 -1
- package/lib/components/splitter/src/hooks/useContainer.d.ts +2 -2
- package/lib/components/splitter/src/hooks/useResize.d.ts +7 -1
- package/lib/components/splitter/src/hooks/useSize.d.ts +1 -1
- package/lib/components/splitter/src/split-panel.vue.d.ts +6 -20
- package/lib/components/splitter/src/splitter.vue.d.ts +4 -18
- package/lib/components/statistic/src/statistic.d.ts +2 -2
- package/lib/components/statistic/src/statistic.vue.d.ts +3 -25
- package/lib/components/steps/src/item.d.ts +2 -2
- package/lib/components/steps/src/item.vue.d.ts +2 -22
- package/lib/components/steps/src/steps.d.ts +2 -2
- package/lib/components/steps/src/steps.vue.d.ts +4 -26
- package/lib/components/switch/src/switch.d.ts +5 -5
- package/lib/components/switch/src/switch.vue.d.ts +7 -37
- package/lib/components/table/src/filter-panel.js.map +1 -1
- package/lib/components/table/src/h-helper.d.ts +17 -0
- package/lib/components/table/src/store/index.d.ts +880 -880
- package/lib/components/table/src/table-body/index.d.ts +10 -8
- package/lib/components/table/src/table-column/index.d.ts +105 -5
- package/lib/components/table/src/table-footer/index.d.ts +5 -5
- package/lib/components/table/src/table-header/index.d.ts +109 -7
- package/lib/components/table/src/table.js.map +1 -1
- package/lib/components/table/src/table.vue.d.ts +931 -460
- package/lib/components/table-v2/src/cell.d.ts +1 -1
- package/lib/components/table-v2/src/components/auto-resizer.d.ts +4 -4
- package/lib/components/table-v2/src/components/header-row.d.ts +3 -3
- package/lib/components/table-v2/src/components/header.d.ts +7 -7
- package/lib/components/table-v2/src/components/row.d.ts +7 -7
- package/lib/components/table-v2/src/composables/use-auto-resize.d.ts +3 -3
- package/lib/components/table-v2/src/composables/use-data.d.ts +1 -1
- package/lib/components/table-v2/src/composables/use-row.d.ts +4 -4
- package/lib/components/table-v2/src/composables/use-scrollbar.d.ts +3 -0
- package/lib/components/table-v2/src/header.d.ts +1 -1
- package/lib/components/table-v2/src/row.d.ts +1 -1
- package/lib/components/table-v2/src/table-grid.d.ts +10 -10
- package/lib/components/table-v2/src/table-v2.d.ts +24 -24
- package/lib/components/table-v2/src/table.d.ts +9 -9
- package/lib/components/table-v2/src/use-table.d.ts +8 -8
- package/lib/components/tabs/src/tab-bar.d.ts +4 -4
- package/lib/components/tabs/src/tab-bar.vue.d.ts +4 -20
- package/lib/components/tabs/src/tab-nav.d.ts +11 -11
- package/lib/components/tabs/src/tab-pane.vue.d.ts +3 -19
- package/lib/components/tabs/src/tabs.d.ts +18 -18
- package/lib/components/tag/src/tag.d.ts +1 -1
- package/lib/components/tag/src/tag.vue.d.ts +6 -22
- package/lib/components/teleport/src/teleport.d.ts +1 -1
- package/lib/components/teleport/src/teleport.vue.d.ts +6 -6
- package/lib/components/text/src/text.vue.d.ts +2 -20
- package/lib/components/time-picker/src/common/picker.vue.d.ts +50 -59
- package/lib/components/time-picker/src/common/props.d.ts +17 -22
- package/lib/components/time-picker/src/composables/use-common-picker.d.ts +13 -3
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +5 -5
- package/lib/components/time-picker/src/time-picker.d.ts +42 -51
- package/lib/components/time-select/src/time-select.d.ts +8 -8
- package/lib/components/time-select/src/time-select.vue.d.ts +13 -51
- package/lib/components/timeline/src/timeline-item.d.ts +2 -2
- package/lib/components/timeline/src/timeline-item.vue.d.ts +3 -25
- package/lib/components/timeline/src/timeline.d.ts +5 -5
- package/lib/components/tooltip/src/content.d.ts +11 -11
- package/lib/components/tooltip/src/content.vue.d.ts +8 -66
- package/lib/components/tooltip/src/content.vue_vue_type_script_setup_true_lang.js +0 -3
- package/lib/components/tooltip/src/content.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/tooltip/src/content2.js.map +1 -1
- package/lib/components/tooltip/src/tooltip.d.ts +13 -13
- package/lib/components/tooltip/src/tooltip.vue.d.ts +14 -80
- package/lib/components/tooltip/src/trigger.d.ts +2 -2
- package/lib/components/tour/src/content.d.ts +3 -3
- package/lib/components/tour/src/step.d.ts +8 -8
- package/lib/components/tour/src/step.vue.d.ts +6 -28
- package/lib/components/tour/src/tour.d.ts +9 -9
- package/lib/components/tour/src/tour.vue.d.ts +11 -53
- package/lib/components/transfer/src/transfer-panel.vue.d.ts +6 -36
- package/lib/components/transfer/src/transfer.d.ts +8 -8
- package/lib/components/transfer/src/transfer.vue.d.ts +8 -48
- package/lib/components/tree/src/model/useDragNode.d.ts +1 -1
- package/lib/components/tree/src/tree-node.js.map +1 -1
- package/lib/components/tree/src/tree.d.ts +4 -4
- package/lib/components/tree/src/tree.vue.d.ts +594 -23
- package/lib/components/tree/src/tree2.js.map +1 -1
- package/lib/components/tree-select/src/tree-select.vue.d.ts +60 -78
- package/lib/components/tree-v2/src/tree.vue.d.ts +6 -53
- package/lib/components/tree-v2/src/virtual-tree.d.ts +1 -12
- package/lib/components/upload/src/upload-content.d.ts +19 -19
- package/lib/components/upload/src/upload-content.vue.d.ts +5 -53
- package/lib/components/upload/src/upload-dragger.vue.d.ts +4 -18
- package/lib/components/upload/src/upload-list.d.ts +4 -4
- package/lib/components/upload/src/upload-list.vue.d.ts +4 -24
- package/lib/components/upload/src/upload.d.ts +27 -27
- package/lib/components/upload/src/upload.vue.d.ts +6 -56
- package/lib/components/virtual-list/src/builders/build-grid.d.ts +23 -23
- package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +23 -23
- package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +34 -20
- package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +23 -23
- package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +34 -20
- package/lib/components/virtual-list/src/hooks/use-cache.d.ts +1 -3
- package/lib/components/virtual-list/src/hooks/use-cache.js.map +1 -1
- package/lib/components/virtual-list/src/props.d.ts +17 -17
- package/lib/components/watermark/src/watermark.d.ts +2 -2
- package/lib/components/watermark/src/watermark.vue.d.ts +3 -23
- package/lib/directives/index.d.ts +1 -1
- package/lib/hooks/use-calc-input-width/index.d.ts +2 -2
- package/lib/hooks/use-composition/index.d.ts +1 -1
- package/lib/hooks/use-draggable/index.d.ts +1 -1
- package/lib/hooks/use-empty-values/index.d.ts +1 -1
- package/lib/hooks/use-floating/index.d.ts +60 -8
- package/lib/hooks/use-focus-controller/index.d.ts +2 -2
- package/lib/hooks/use-model-toggle/index.d.ts +1 -1
- package/lib/hooks/use-ordered-children/index.d.ts +2 -2
- package/lib/hooks/use-popper/index.d.ts +3 -3
- package/lib/hooks/use-teleport/index.d.ts +1 -1
- package/lib/hooks/use-throttle-render/index.d.ts +1 -1
- package/lib/index.d.ts +9 -9
- package/lib/utils/index.d.ts +2 -2
- package/lib/utils/typescript.d.ts +5 -1
- package/lib/utils/typescript.js.map +1 -1
- package/lib/utils/vue/icon.d.ts +14 -14
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/web-types.json +1 -1
|
@@ -104,12 +104,12 @@ var select_vue_vue_type_script_lang_default = defineComponent({
|
|
|
104
104
|
if (isObject(item) && (item.type.name === "ElOption" || item.type.name === "ElTree")) {
|
|
105
105
|
const _name = item.type.name;
|
|
106
106
|
if (_name === "ElTree") flatTreeSelectData(item.props?.data || []).forEach((treeItem) => {
|
|
107
|
-
treeItem.currentLabel = treeItem.label
|
|
107
|
+
treeItem.currentLabel = treeItem.label ?? (isObject(treeItem.value) ? "" : treeItem.value);
|
|
108
108
|
API.onOptionCreate(treeItem);
|
|
109
109
|
});
|
|
110
110
|
else if (_name === "ElOption") {
|
|
111
111
|
const obj = { ...item.props };
|
|
112
|
-
obj.currentLabel = obj.label
|
|
112
|
+
obj.currentLabel = obj.label ?? (isObject(obj.value) ? "" : obj.value);
|
|
113
113
|
API.onOptionCreate(obj);
|
|
114
114
|
}
|
|
115
115
|
}
|
|
@@ -117,6 +117,7 @@ var select_vue_vue_type_script_lang_default = defineComponent({
|
|
|
117
117
|
};
|
|
118
118
|
watch(() => [props.persistent || API.expanded.value || !slots.default ? void 0 : slots.default?.(), modelValue.value], () => {
|
|
119
119
|
if (props.persistent || API.expanded.value) return;
|
|
120
|
+
if (!slots.default) return;
|
|
120
121
|
API.states.options.clear();
|
|
121
122
|
manuallyRenderSlots(slots.default?.());
|
|
122
123
|
}, { immediate: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.vue_vue_type_script_lang.mjs","names":[],"sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @change.stop\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ||\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label || (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [\n props.persistent || API.expanded.value || !slots.default\n ? undefined\n : slots.default?.(),\n modelValue.value,\n ],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select.vue_vue_type_script_lang.mjs","names":[],"sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @change.stop\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ??\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label ?? (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [\n props.persistent || API.expanded.value || !slots.default\n ? undefined\n : slots.default?.(),\n modelValue.value,\n ],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // When using :options prop (no slot content), el-option components register\n // and unregister themselves via onOptionCreate/onOptionDestroy lifecycle hooks.\n // Calling options.clear() here would prematurely wipe options that are still\n // mounted, causing a \"No Data\" flash during rapid open/close toggling.\n if (!slots.default) {\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select2.mjs","names":[],"sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @change.stop\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ||\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label || (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [\n props.persistent || API.expanded.value || !slots.default\n ? undefined\n : slots.default?.(),\n modelValue.value,\n ],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCACE,mBAoVM,OApVN,WAoVM;EAnVJ,KAAI;EAEH,OAAK,CAAG,KAAA,SAAS,GAAC,EAAI,KAAA,SAAS,EAAE,KAAA,WAAU,CAAA;oBAC3C,KAAA,oBAAqB,GAAA,OAAA,QAAA,OAAA,OAAA,WAAE,KAAA,OAAO,gBAAa,OAAA,EAAA,EAC3C,cAAU,OAAA,QAAA,OAAA,OAAA,WAAE,KAAA,OAAO,gBAAa,QAAA,CAAA,GAEjC,YA4Ua,uBAAA;EA3UX,KAAI;EACH,SAAS,KAAA;EACT,WAAW,KAAA;EACX,YAAY,KAAA;EACZ,gBAAY,CAAG,KAAA,SAAS,EAAC,SAAA,EAAY,KAAA,YAAW;EAChD,gBAAc,KAAA;EACd,kBAAgB,KAAA;EAChB,uBAAqB,KAAA;EACrB,QAAQ,KAAA;EACT,MAAA;EACA,SAAQ;EACP,YAAU,GAAK,KAAA,SAAS,UAAU,MAAK;EACvC,2BAAyB;EACzB,oBAAkB;EAClB,YAAY,KAAA;EACZ,aAAW,KAAA;EACX,cAAY,KAAA;EACZ,QAAQ,KAAA;EACR,cAAa,KAAA;EACb,QAAI,OAAA,QAAA,OAAA,OAAA,WAAE,KAAA,OAAO,eAAY;;EAEf,SAAO,cA+OV,CA9ON,mBA8OM,OAAA;GA7OJ,KAAI;GACH,OAAK,eAAA;IAAgB,KAAA,SAAS,EAAC,UAAA;IAAyB,KAAA,SAAS,GAAE,WAAY,KAAA,UAAS;IAAe,KAAA,SAAS,GAAE,YAAa,KAAA,OAAO,cAAa;IAAe,KAAA,SAAS,GAAE,cAAe,KAAA,WAAU;IAAe,KAAA,SAAS,GAAE,YAAa,KAAA,eAAc;;GAO3P,SAAK,OAAA,OAAA,OAAA,KAAA,eAAA,GAAA,SAAU,KAAA,cAAA,KAAA,WAAA,GAAA,KAAU,EAAA,CAAA,UAAA,CAAA;;GAGlB,KAAA,OAAO,UAAA,WAAA,EADf,mBAMM,OAAA;;IAJJ,KAAI;IACH,OAAK,eAAE,KAAA,SAAS,EAAC,SAAA,CAAA;OAElB,WAAsB,KAAA,QAAA,SAAA,CAAA;GAExB,mBA8LM,OAAA;IA7LJ,KAAI;IACH,OAAK,eAAA,CAAkB,KAAA,SAAS,EAAC,YAAA,EAA6B,KAAA,SAAS,GAAA,QAA4C,KAAA,YAAQ,CAAK,KAAA,OAAO,UAAM,CAAA,CAAM,KAAA,OAAO,SAAS,OAAA,CAAA,CAAA;;IAS5J,KAAA,WADR,WA6GO,KAAA,QAAA,OAAA;;KA1GJ,MAAM,KAAA,OAAO;KACb,WAAY,KAAA;KACZ,gBAAiB,KAAA;aAwGb,EAAA,UAAA,KAAA,EAtGL,mBAyBM,UAAA,MAAA,WAxBW,KAAA,cAAR,SAAI;yBADb,mBAyBM,OAAA;MAvBH,KAAK,KAAA,YAAY,KAAI;MACrB,OAAK,eAAE,KAAA,SAAS,EAAC,gBAAA,CAAA;SAElB,YAmBS,mBAAA;MAlBN,UAAQ,CAAG,KAAA,kBAAc,CAAK,KAAK;MACnC,MAAM,KAAA;MACN,MAAM,KAAA;MACN,QAAQ,KAAA;MACT,uBAAA;MACC,OAAK,eAAE,KAAA,SAAQ;MACf,UAAK,WAAE,KAAA,UAAU,QAAQ,KAAI;;6BAWvB,CATP,mBASO,QAAA,EATA,OAAK,eAAE,KAAA,SAAS,EAAC,YAAA,CAAA,EAAA,GACtB,WAOO,KAAA,QAAA,SAAA;OALJ,OAAO,KAAK;OACZ,OAAO,KAAK;OACZ,OAAO,KAAK;eAGR,CAAA,gCADF,KAAK,aAAY,EAAA,EAAA,CAAA,CAAA,CAAA;;;;;;;;;;eAOpB,KAAA,gBAAgB,KAAA,OAAO,SAAS,SAAS,KAAA,mBAAA,WAAA,EADjD,YA0Ea,uBAAA;;KAxEX,KAAI;KACH,UAAU,KAAA,uBAAmB,CAAK,KAAA;KAClC,uBAAwC,KAAA,YAAY,sBAAkB;;;;;;KAQtE,QAAQ,KAAA,YAAY,UAAU,KAAA;KAC9B,WAAW,KAAA,YAAY,aAAS;KAChC,gBAAc,KAAA,YAAY,eAAe,KAAA;KACzC,gBAAc,KAAA,YAAY,eAAe,KAAA;KACzC,YAAY,KAAA,YAAY,cAAc,KAAA;KACtC,aAAW,KAAA,YAAY,YAAY,KAAA;KACnC,kBAAgB,KAAA,YAAY,iBAAiB,KAAA;KAC7C,YAAY,KAAA,YAAY;KACxB,cAAY,KAAA,YAAY;KACxB,cAAY,KAAA,YAAY;KACxB,cAAY,KAAA,YAAY;KACxB,QAAQ,KAAA,YAAY;;KAEV,SAAO,cAiBV,CAhBN,mBAgBM,OAAA;MAfJ,KAAI;MACH,OAAK,eAAE,KAAA,SAAS,EAAC,gBAAA,CAAA;SAElB,YAWS,mBAAA;MAVN,UAAU;MACV,MAAM,KAAA;MACN,MAAM,KAAA;MACN,QAAQ,KAAA;MACT,uBAAA;MACC,OAAK,eAAE,KAAA,iBAAgB;;6BAIjB,CAFP,mBAEO,QAAA,EAFA,OAAK,eAAE,KAAA,SAAS,EAAC,YAAA,CAAA,EAAA,EAAe,QACnC,gBAAG,KAAA,OAAO,SAAS,SAAS,KAAA,gBAAe,EAAA,EAAA,CAAA,CAAA;;;;;;;;KAK1C,SAAO,cA4BV,CA3BN,mBA2BM,OAAA;MA3BD,KAAI;MAAc,OAAK,eAAE,KAAA,SAAS,EAAC,YAAA,CAAA;2BACtC,mBAyBM,UAAA,MAAA,WAxBW,KAAA,kBAAR,SAAI;0BADb,mBAyBM,OAAA;OAvBH,KAAK,KAAA,YAAY,KAAI;OACrB,OAAK,eAAE,KAAA,SAAS,EAAC,gBAAA,CAAA;UAElB,YAmBS,mBAAA;OAlBP,OAAM;OACL,UAAQ,CAAG,KAAA,kBAAc,CAAK,KAAK;OACnC,MAAM,KAAA;OACN,MAAM,KAAA;OACN,QAAQ,KAAA;OACT,uBAAA;OACC,UAAK,WAAE,KAAA,UAAU,QAAQ,KAAI;;8BAWvB,CATP,mBASO,QAAA,EATA,OAAK,eAAE,KAAA,SAAS,EAAC,YAAA,CAAA,EAAA,GACtB,WAOO,KAAA,QAAA,SAAA;QALJ,OAAO,KAAK;QACZ,OAAO,KAAK;QACZ,OAAO,KAAK;gBAGR,CAAA,gCADF,KAAK,aAAY,EAAA,EAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;IASpC,mBA+CM,OAAA,EA9CH,OAAK,eAAA;KAAoB,KAAA,SAAS,EAAC,gBAAA;KAAmC,KAAA,SAAS,EAAC,gBAAA;KAAmC,KAAA,SAAS,GAAA,UAAA,CAAmD,KAAA,cAAkC,KAAA,kBAAA,CAAwC,KAAA,OAAO,cAAU,CAAK,KAAA,UAAA;WAWhR,mBA2BE,SAAA;KA1BC,IAAI,KAAA;KACL,KAAI;KACH,OAAO,KAAA,OAAO;KACf,MAAK;KACJ,MAAM,KAAA;KACN,OAAK,eAAA,CAAG,KAAA,SAAS,EAAC,QAAA,EAAW,KAAA,SAAS,GAAG,KAAA,WAAU,CAAA,CAAA;KACnD,UAAU,KAAA;KACV,cAAc,KAAA;KACd,OAAK,eAAE,KAAA,WAAU;KACjB,UAAU,KAAA;KACX,MAAK;KACJ,UAAQ,CAAG,KAAA;KACZ,YAAW;KACV,yBAAuB,KAAA,aAAa,MAAE;KACtC,iBAAe,KAAA;KACf,iBAAe,KAAA;KACf,cAAY,KAAA;KACb,qBAAkB;KAClB,iBAAc;KACb,WAAO,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,KAAA,iBAAA,KAAA,cAAA,GAAA,KAAa;KACtB,oBAAgB,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,KAAA,0BAAA,KAAA,uBAAA,GAAA,KAAsB;KACxC,qBAAiB,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,KAAA,2BAAA,KAAA,wBAAA,GAAA,KAAuB;KAC1C,kBAAc,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,KAAA,wBAAA,KAAA,qBAAA,GAAA,KAAoB;KACpC,SAAK,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,KAAA,WAAA,KAAA,QAAA,GAAA,KAAO;KACd,UAAM,OAAA,OAAA,OAAA,KAAA,oBAAP,IAAY,CAAA,OAAA,CAAA;KACX,SAAK,OAAA,OAAA,OAAA,KAAA,eAAA,GAAA,SAAO,KAAA,cAAA,KAAA,WAAA,GAAA,KAAU,EAAA,CAAA,OAAA,CAAA;8BAGjB,KAAA,cAAA,WAAA,EADR,mBAME,QAAA;;KAJA,KAAI;KACJ,eAAY;KACX,OAAK,eAAE,KAAA,SAAS,EAAC,mBAAA,CAAA;kBAClB,gBAA0B,KAAlB,OAAO,WAAU;;IAIrB,KAAA,yBAAA,WAAA,EADR,mBAqBM,OAAA;;KAnBH,OAAK,eAAA;MAAoB,KAAA,SAAS,EAAC,gBAAA;MAAmC,KAAA,SAAS,EAAC,cAAA;MAAiC,KAAA,SAAS,GAAA,eAAA,CAAwD,KAAA,iBAAkB,KAAA,YAAQ,CAAK,KAAA,OAAO,WAAA;;QAUjN,KAAA,gBADR,WAQO,KAAA,QAAA,SAAA;;KALJ,OAAO,KAAA,UAAU,KAAA,WAAU,CAAG;KAC9B,OAAO,KAAA;KACP,OAAO,KAAA;aAGH,CADL,mBAAqC,QAAA,MAAA,gBAA5B,KAAA,mBAAkB,EAAA,EAAA,CAAA,CAAA,IAAA,WAAA,EAE7B,mBAA4C,QAAA,YAAA,gBAA5B,KAAA,mBAAkB,EAAA,EAAA,EAAA;;GAGtC,mBA4BM,OAAA;IA5BD,KAAI;IAAa,OAAK,eAAE,KAAA,SAAS,EAAC,SAAA,CAAA;;IAE7B,KAAA,iBAAa,CAAK,KAAA,gBAAA,WAAA,EAD1B,YAKU,oBAAA;;KAHP,OAAK,eAAA;MAAG,KAAA,SAAS,EAAC,QAAA;MAAW,KAAA,SAAS,EAAC,OAAA;MAAU,KAAA;MAAW,CAAA;;4BAE5B,EAAA,WAAA,EAAjC,YAAiC,wBAAjB,KAAA,cAAa,CAAA,EAAA,CAAA;;;IAGvB,KAAA,gBAAgB,KAAA,aAAA,WAAA,EADxB,YAUU,oBAAA;;KARP,OAAK,eAAA;MAAoB,KAAA,SAAS,EAAC,QAAA;MAA2B,KAAA,SAAS,EAAC,OAAA;MAA0B,KAAA,SAAS,EAAC,QAAA;;KAK5G,SAAO,KAAA;;4BAEqB,EAAA,WAAA,EAA7B,YAA6B,wBAAb,KAAA,UAAS,CAAA,EAAA,CAAA;;;IAGnB,KAAA,iBAAiB,KAAA,gBAAgB,KAAA,kBAAA,WAAA,EADzC,YASU,oBAAA;;KAPP,OAAK,eAAA;MAAoB,KAAA,QAAQ,EAAC,OAAA;MAA0B,KAAA,QAAQ,EAAC,eAAA;MAAkC,KAAA,QAAQ,GAAE,WAAY,KAAA,kBAAa,aAAA;;;4BAM3G,EAAA,WAAA,EAAhC,YAAgC,wBAAhB,KAAA,aAAY,CAAA,EAAA,CAAA;;;;;EAKzB,SAAO,cAmEC,CAlEjB,YAkEiB,2BAAA,EAlED,KAAI,WAAS,EAAA;0BAOrB;IALE,KAAA,OAAO,UAAA,WAAA,EADf,mBAMM,OAAA;;KAJH,OAAK,eAAE,KAAA,SAAS,GAAE,YAAA,SAAA,CAAA;KAClB,SAAK,OAAA,OAAA,OAAA,KAAA,oBAAN,IAAW,CAAA,OAAA,CAAA;QAEX,WAAsB,KAAA,QAAA,SAAA,CAAA;mBAExB,YAoCe,yBAAA;KAlCZ,IAAI,KAAA;KACL,KAAI;KACJ,KAAI;KACH,cAAY,KAAA,SAAS,GAAE,YAAA,OAAA;KACvB,cAAY,KAAA,SAAS,GAAE,YAAA,OAAA;KACvB,OAAK,eAAA,CAAG,KAAA,SAAS,GAAE,SAAU,KAAA,yBAAoB,EAAA,CAAA,CAAA;KAClD,MAAK;KACJ,cAAY,KAAA;KACb,oBAAiB;KAChB,UAAQ,KAAA;;4BAMP,CAHM,KAAA,iBAAA,WAAA,EADR,YAIE,sBAAA;;MAFC,OAAO,KAAA,OAAO;MACd,SAAS;iEAEZ,YAiBa,uBAAA,MAAA;6BADJ,CAfP,WAeO,KAAA,QAAA,WAAA,EAAA,QAAA,EAAA,UAAA,KAAA,EAdL,mBAaW,UAAA,MAAA,WAbyB,KAAA,UAAlB,QAAQ,UAAK;+DAAoB,OAAK,EAAA,CAE9C,KAAA,WAAW,OAAM,EAAG,UAAA,WAAA,EAD5B,YAUkB,4BAAA;;QARf,OAAO,KAAA,SAAS,OAAM;QACtB,UAAU,KAAA,YAAY,OAAM;;+BAGO,EAAA,UAAA,KAAA,EADpC,mBAIE,UAAA,MAAA,WAHe,KAAA,WAAW,OAAM,GAAzB,SAAI;6BADb,YAIE,sBAJF,WAIE,EAFC,KAAK,KAAA,SAAS,KAAI,EAAA,EAAA,EAAA,SAAA,MAAA,EACX,KAAA,eAAe,KAAI,CAAA,EAAA,MAAA,GAAA;;;wDAG/B,YAAoD,sBAApD,WAAoD;;;UAA1B,KAAA,eAAe,OAAM,CAAA,EAAA,MAAA,GAAA,EAAA;;;;;;;;;;;;iBA/B7C,KAAA,OAAO,QAAQ,OAAI,KAAA,CAAS,KAAA,QAAO,CAAA,CAAA;IAqCrC,KAAA,OAAO,WAAW,KAAA,WAAA,WAAA,EAD1B,mBAKM,OAAA;;KAHH,OAAK,eAAE,KAAA,SAAS,GAAE,YAAA,UAAA,CAAA;QAEnB,WAAuB,KAAA,QAAA,UAAA,CAAA,QAGZ,KAAA,WAAW,KAAA,yBAAoB,KAAA,WAAA,EAD5C,mBAOM,OAAA;;KALH,OAAK,eAAE,KAAA,SAAS,GAAE,YAAA,QAAA,CAAA;QAEnB,WAEO,KAAA,QAAA,SAAA,EAAA,QAAA,CADL,mBAA4B,QAAA,MAAA,gBAAnB,KAAA,UAAS,EAAA,EAAA,CAAA,CAAA,CAAA;IAId,KAAA,OAAO,UAAA,WAAA,EADf,mBAMM,OAAA;;KAJH,OAAK,eAAE,KAAA,SAAS,GAAE,YAAA,SAAA,CAAA;KAClB,SAAK,OAAA,OAAA,OAAA,KAAA,oBAAN,IAAW,CAAA,OAAA,CAAA;QAEX,WAAsB,KAAA,QAAA,SAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;EA7UD,KAAA;EAAb,KAAA;EAAW,CAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"select2.mjs","names":[],"sources":["../../../../../../packages/components/select/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @[mouseEnterEventName]=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :placement=\"placement\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n pure\n trigger=\"click\"\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n :stop-popper-mouse-event=\"false\"\n :gpu-acceleration=\"false\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!states.selected.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.selected\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"collapseTags && states.selected.length > maxCollapseTags\"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"collapseTagStyle\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.selected.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"item in collapseTagList\"\n :key=\"getValueKey(item)\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !item.isDisabled\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"item.index\"\n :label=\"item.currentLabel\"\n :value=\"item.value\"\n >\n {{ item.currentLabel }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n type=\"text\"\n :name=\"name\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n :autocomplete=\"autocomplete\"\n :style=\"inputStyle\"\n :tabindex=\"tabindex\"\n role=\"combobox\"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n :aria-activedescendant=\"hoverOption?.id || ''\"\n :aria-controls=\"contentId\"\n :aria-expanded=\"dropdownMenuVisible\"\n :aria-label=\"ariaLabel\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n @keydown=\"handleKeydown\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"onInput\"\n @change.stop\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"getOption(modelValue!).index\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent && !showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsSelect.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsSelect.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click=\"handleClearClick\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu ref=\"menuRef\">\n <div\n v-if=\"$slots.header\"\n :class=\"nsSelect.be('dropdown', 'header')\"\n @click.stop\n >\n <slot name=\"header\" />\n </div>\n <el-scrollbar\n v-show=\"states.options.size > 0 && !loading\"\n :id=\"contentId\"\n ref=\"scrollbarRef\"\n tag=\"ul\"\n :wrap-class=\"nsSelect.be('dropdown', 'wrap')\"\n :view-class=\"nsSelect.be('dropdown', 'list')\"\n :class=\"[nsSelect.is('empty', filteredOptionsCount === 0)]\"\n role=\"listbox\"\n :aria-label=\"ariaLabel\"\n aria-orientation=\"vertical\"\n @scroll=\"popupScroll\"\n >\n <el-option\n v-if=\"showNewOption\"\n :value=\"states.inputValue\"\n :created=\"true\"\n />\n <el-options>\n <slot>\n <template v-for=\"(option, index) in options\" :key=\"index\">\n <el-option-group\n v-if=\"getOptions(option)?.length\"\n :label=\"getLabel(option)\"\n :disabled=\"getDisabled(option)\"\n >\n <el-option\n v-for=\"item in getOptions(option)\"\n :key=\"getValue(item)\"\n v-bind=\"getOptionProps(item)\"\n />\n </el-option-group>\n <el-option v-else v-bind=\"getOptionProps(option)\" />\n </template>\n </slot>\n </el-options>\n </el-scrollbar>\n <div\n v-if=\"$slots.loading && loading\"\n :class=\"nsSelect.be('dropdown', 'loading')\"\n >\n <slot name=\"loading\" />\n </div>\n <div\n v-else-if=\"loading || filteredOptionsCount === 0\"\n :class=\"nsSelect.be('dropdown', 'empty')\"\n >\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n provide,\n reactive,\n toRefs,\n watch,\n} from 'vue'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { flattedChildren, isArray, isObject } from '@element-plus/utils'\nimport { useCalcInputWidth } from '@element-plus/hooks'\nimport { useProps } from '@element-plus/components/select-v2/src/useProps'\nimport ElOption from './option.vue'\nimport ElSelectMenu from './select-dropdown.vue'\nimport { useSelect } from './useSelect'\nimport { selectKey } from './token'\nimport ElOptions from './options'\nimport { selectProps } from './select'\nimport ElOptionGroup from './option-group.vue'\n\nimport type { AppConfig, AppContext, VNode } from 'vue'\nimport type { SelectContext } from './type'\n\nconst COMPONENT_NAME = 'ElSelect'\n\ntype WarnHandler = AppConfig['warnHandler']\n\ninterface WarnHandlerRecord {\n originalWarnHandler: WarnHandler\n handler: WarnHandler\n count: number\n}\n\nconst warnHandlerMap = new WeakMap<AppContext, WarnHandlerRecord>()\n\nconst createSelectWarnHandler = (appContext: AppContext): WarnHandler => {\n return (...args) => {\n // Overrides warnings about slots not being executable outside of a render function.\n // We call slot below just to simulate data when persist is false, this warning message should be ignored\n const message = args[0]\n if (\n !message ||\n (message.includes(\n 'Slot \"default\" invoked outside of the render function'\n ) &&\n args[2]?.includes('ElTreeSelect'))\n )\n return\n const original = warnHandlerMap.get(appContext)?.originalWarnHandler\n if (original) {\n original(...args)\n return\n }\n // eslint-disable-next-line no-console\n console.warn(...args)\n }\n}\n\nconst getWarnHandlerRecord = (appContext: AppContext): WarnHandlerRecord => {\n let record = warnHandlerMap.get(appContext)\n if (!record) {\n record = {\n originalWarnHandler: appContext.config.warnHandler,\n handler: createSelectWarnHandler(appContext),\n count: 0,\n }\n warnHandlerMap.set(appContext, record)\n }\n return record\n}\nexport default defineComponent({\n name: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n components: {\n ElSelectMenu,\n ElOption,\n ElOptions,\n ElOptionGroup,\n ElTag,\n ElScrollbar,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectProps,\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'remove-tag',\n 'clear',\n 'visible-change',\n 'focus',\n 'blur',\n 'popup-scroll',\n ],\n\n setup(props, { emit, slots }) {\n const instance = getCurrentInstance()!\n const warnRecord = getWarnHandlerRecord(instance.appContext)\n warnRecord.count += 1\n instance.appContext.config.warnHandler = warnRecord.handler\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n\n return multiple ? fallback : rawModelValue\n })\n\n const _props = reactive({\n ...toRefs(props),\n modelValue,\n })\n\n const API = useSelect(_props, emit)\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const { getLabel, getValue, getOptions, getDisabled } = useProps(props)\n\n const getOptionProps = (option: Record<string, any>) => ({\n label: getLabel(option),\n value: getValue(option),\n disabled: getDisabled(option),\n })\n\n const flatTreeSelectData = (data: any[]) => {\n return data.reduce((acc, item) => {\n acc.push(item)\n if (item.children && item.children.length > 0) {\n acc.push(...flatTreeSelectData(item.children))\n }\n return acc\n }, [])\n }\n\n const manuallyRenderSlots = (vnodes: VNode[] | undefined) => {\n // After option rendering is completed, the useSelect internal state can collect the value of each option.\n // If the persistent value is false, option will not be rendered by default, so in this case,\n // manually render and load option data here.\n const children = flattedChildren(vnodes || []) as VNode[]\n children.forEach((item) => {\n if (\n isObject(item) &&\n // @ts-expect-error\n (item.type.name === 'ElOption' || item.type.name === 'ElTree')\n ) {\n // @ts-expect-error\n const _name = item.type.name\n if (_name === 'ElTree') {\n // tree-select component is a special case.\n // So we need to handle it separately.\n const treeData = item.props?.data || []\n const flatData = flatTreeSelectData(treeData)\n flatData.forEach((treeItem: any) => {\n treeItem.currentLabel =\n treeItem.label ??\n (isObject(treeItem.value) ? '' : treeItem.value)\n API.onOptionCreate(treeItem)\n })\n } else if (_name === 'ElOption') {\n const obj = { ...item.props } as any\n obj.currentLabel =\n obj.label ?? (isObject(obj.value) ? '' : obj.value)\n API.onOptionCreate(obj)\n }\n }\n })\n }\n watch(\n () => [\n props.persistent || API.expanded.value || !slots.default\n ? undefined\n : slots.default?.(),\n modelValue.value,\n ],\n () => {\n // When persistent is false and the dropdown is closed, the menu is unmounted.\n // We should always re-hydrate option data from slots so labels stay in sync\n // with dynamic option list updates. Skip only when persistent is true or\n // when the dropdown is currently expanded (mounted options will manage themselves).\n if (props.persistent || API.expanded.value) {\n // If persistent is true, we don't need to manually render slots.\n return\n }\n // When using :options prop (no slot content), el-option components register\n // and unregister themselves via onOptionCreate/onOptionDestroy lifecycle hooks.\n // Calling options.clear() here would prematurely wipe options that are still\n // mounted, causing a \"No Data\" flash during rapid open/close toggling.\n if (!slots.default) {\n return\n }\n // Reset current options snapshot before re-collecting from slots.\n API.states.options.clear()\n manuallyRenderSlots(slots.default?.())\n },\n {\n immediate: true,\n }\n )\n\n provide(\n selectKey,\n reactive({\n props: _props,\n states: API.states,\n selectRef: API.selectRef,\n optionsArray: API.optionsArray,\n setSelected: API.setSelected,\n handleOptionSelect: API.handleOptionSelect,\n onOptionCreate: API.onOptionCreate,\n onOptionDestroy: API.onOptionDestroy,\n }) satisfies SelectContext\n )\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.selected.map((i) => i.currentLabel as string)\n })\n\n onBeforeUnmount(() => {\n // https://github.com/element-plus/element-plus/issues/21279\n const record = warnHandlerMap.get(instance.appContext)\n if (!record) return\n record.count -= 1\n if (record.count <= 0) {\n instance.appContext.config.warnHandler = record.originalWarnHandler\n warnHandlerMap.delete(instance.appContext)\n }\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n getLabel,\n getValue,\n getOptions,\n getDisabled,\n getOptionProps,\n }\n },\n})\n</script>\n"],"mappings":"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"}
|
|
@@ -31,21 +31,16 @@ interface TagTooltipProps {
|
|
|
31
31
|
declare const selectV2Props: {
|
|
32
32
|
readonly ariaLabel: StringConstructor;
|
|
33
33
|
readonly emptyValues: ArrayConstructor;
|
|
34
|
-
readonly valueOnClear: EpPropFinalized<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown, undefined, boolean>;
|
|
34
|
+
readonly valueOnClear: EpPropFinalized<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | (((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null)) | null)[], unknown, unknown, undefined, boolean>;
|
|
35
35
|
readonly allowCreate: BooleanConstructor;
|
|
36
|
-
readonly autocomplete: EpPropFinalized<(new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list") | ((new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list"))[], unknown, unknown, "none", boolean>;
|
|
36
|
+
readonly autocomplete: EpPropFinalized<(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, "none", boolean>;
|
|
37
37
|
readonly automaticDropdown: BooleanConstructor;
|
|
38
38
|
readonly clearable: BooleanConstructor;
|
|
39
|
-
readonly clearIcon: {
|
|
40
|
-
|
|
41
|
-
readonly required: false;
|
|
42
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
43
|
-
__epPropKey: true;
|
|
44
|
-
};
|
|
45
|
-
readonly effect: EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | ((new (...args: any[]) => string) | (() => PopperEffect))[], unknown, unknown, "light", boolean>;
|
|
39
|
+
readonly clearIcon: EpPropFinalized<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown, vue.DefineComponent<{}, void, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>;
|
|
40
|
+
readonly effect: EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown, "light", boolean>;
|
|
46
41
|
readonly collapseTags: BooleanConstructor;
|
|
47
42
|
readonly collapseTagsTooltip: BooleanConstructor;
|
|
48
|
-
readonly tagTooltip: EpPropFinalized<(new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps) | ((new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps))[], unknown, unknown, () => {}, boolean>;
|
|
43
|
+
readonly tagTooltip: EpPropFinalized<(new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps) | (((new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps)) | null)[], unknown, unknown, () => {}, boolean>;
|
|
49
44
|
readonly maxCollapseTags: EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
|
|
50
45
|
readonly defaultFirstOption: BooleanConstructor;
|
|
51
46
|
readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
@@ -66,11 +61,11 @@ declare const selectV2Props: {
|
|
|
66
61
|
(): any;
|
|
67
62
|
new (): any;
|
|
68
63
|
readonly prototype: any;
|
|
69
|
-
} | ((new (...args: any[]) => any) | (() => any) | {
|
|
64
|
+
} | (((new (...args: any[]) => any) | (() => any) | {
|
|
70
65
|
(): any;
|
|
71
66
|
new (): any;
|
|
72
67
|
readonly prototype: any;
|
|
73
|
-
})[], unknown, unknown, undefined, boolean>;
|
|
68
|
+
}) | null)[], unknown, unknown, undefined, boolean>;
|
|
74
69
|
readonly multiple: BooleanConstructor;
|
|
75
70
|
readonly multipleLimit: EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
76
71
|
readonly name: StringConstructor;
|
|
@@ -146,7 +141,7 @@ declare const selectV2Props: {
|
|
|
146
141
|
[x: string]: boolean;
|
|
147
142
|
} | (string | {
|
|
148
143
|
[x: string]: boolean;
|
|
149
|
-
} | any)[])[])[])[])[])[])[])[])[])[])[]) | ((new (...args: any[]) => string | {
|
|
144
|
+
} | any)[])[])[])[])[])[])[])[])[])[])[]) | (((new (...args: any[]) => string | {
|
|
150
145
|
[x: string]: boolean;
|
|
151
146
|
} | (string | {
|
|
152
147
|
[x: string]: boolean;
|
|
@@ -194,18 +189,18 @@ declare const selectV2Props: {
|
|
|
194
189
|
[x: string]: boolean;
|
|
195
190
|
} | (string | {
|
|
196
191
|
[x: string]: boolean;
|
|
197
|
-
} | any)[])[])[])[])[])[])[])[])[])[])[]))[], unknown, unknown>>;
|
|
192
|
+
} | any)[])[])[])[])[])[])[])[])[])[])[])) | null)[], unknown, unknown>>;
|
|
198
193
|
readonly required: false;
|
|
199
194
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
200
195
|
__epPropKey: true;
|
|
201
196
|
};
|
|
202
197
|
readonly popperStyle: {
|
|
203
|
-
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | false | CSSProperties | vue.StyleValue[]) | (() => vue.StyleValue) | ((new (...args: any[]) => string | false | CSSProperties | vue.StyleValue[]) | (() => vue.StyleValue))[], unknown, unknown>>;
|
|
198
|
+
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | false | CSSProperties | vue.StyleValue[]) | (() => vue.StyleValue) | (((new (...args: any[]) => string | false | CSSProperties | vue.StyleValue[]) | (() => vue.StyleValue)) | null)[], unknown, unknown>>;
|
|
204
199
|
readonly required: false;
|
|
205
200
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
206
201
|
__epPropKey: true;
|
|
207
202
|
};
|
|
208
|
-
readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | ((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>))[], unknown, unknown, () => Partial<Options>, boolean>;
|
|
203
|
+
readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => Partial<Options>, boolean>;
|
|
209
204
|
readonly remote: BooleanConstructor;
|
|
210
205
|
readonly debounce: EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
|
|
211
206
|
readonly size: {
|
|
@@ -214,15 +209,15 @@ declare const selectV2Props: {
|
|
|
214
209
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
215
210
|
__epPropKey: true;
|
|
216
211
|
};
|
|
217
|
-
readonly props: EpPropFinalized<(new (...args: any[]) => Props) | (() => Props) | ((new (...args: any[]) => Props) | (() => Props))[], unknown, unknown, () => Required<Props>, boolean>;
|
|
212
|
+
readonly props: EpPropFinalized<(new (...args: any[]) => Props) | (() => Props) | (((new (...args: any[]) => Props) | (() => Props)) | null)[], unknown, unknown, () => Required<Props>, boolean>;
|
|
218
213
|
readonly valueKey: EpPropFinalized<StringConstructor, unknown, unknown, "value", boolean>;
|
|
219
214
|
readonly scrollbarAlwaysOn: BooleanConstructor;
|
|
220
215
|
readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
221
216
|
readonly offset: EpPropFinalized<NumberConstructor, unknown, unknown, 12, boolean>;
|
|
222
217
|
readonly remoteShowSuffix: BooleanConstructor;
|
|
223
218
|
readonly showArrow: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
224
|
-
readonly placement: EpPropFinalized<(new (...args: any[]) => "
|
|
225
|
-
readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | ((new (...args: any[]) => Placement[]) | (() => Placement[]))[], unknown, unknown, readonly ["bottom-start", "top-start", "right", "left"], boolean>;
|
|
219
|
+
readonly placement: EpPropFinalized<(new (...args: any[]) => "top" | "auto" | "bottom" | "bottom-start" | "left" | "right" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement) | (((new (...args: any[]) => "top" | "auto" | "bottom" | "bottom-start" | "left" | "right" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement)) | null)[], Placement, unknown, "bottom-start", boolean>;
|
|
220
|
+
readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | (((new (...args: any[]) => Placement[]) | (() => Placement[])) | null)[], unknown, unknown, readonly ["bottom-start", "top-start", "right", "left"], boolean>;
|
|
226
221
|
readonly tagType: {
|
|
227
222
|
readonly default: "info";
|
|
228
223
|
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "info" | "primary" | "success" | "warning" | "danger", unknown>>;
|
|
@@ -232,25 +227,20 @@ declare const selectV2Props: {
|
|
|
232
227
|
};
|
|
233
228
|
readonly tagEffect: {
|
|
234
229
|
readonly default: "light";
|
|
235
|
-
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "
|
|
230
|
+
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "light" | "dark" | "plain", unknown>>;
|
|
236
231
|
readonly required: false;
|
|
237
232
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
238
233
|
readonly __epPropKey: true;
|
|
239
234
|
};
|
|
240
235
|
readonly tabindex: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, 0, boolean>;
|
|
241
236
|
readonly appendTo: {
|
|
242
|
-
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>) | ((new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown>))[], unknown, unknown>>;
|
|
237
|
+
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>) | (((new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>)) | null)[], unknown, unknown>>;
|
|
243
238
|
readonly required: false;
|
|
244
239
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
245
240
|
__epPropKey: true;
|
|
246
241
|
};
|
|
247
242
|
readonly fitInputWidth: EpPropFinalized<readonly [BooleanConstructor, NumberConstructor], unknown, number | boolean, true, boolean>;
|
|
248
|
-
readonly suffixIcon: {
|
|
249
|
-
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | ((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component))[], unknown, unknown>>;
|
|
250
|
-
readonly required: false;
|
|
251
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
252
|
-
__epPropKey: true;
|
|
253
|
-
};
|
|
243
|
+
readonly suffixIcon: EpPropFinalized<(new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component) | (((new (...args: any[]) => (string | vue.Component) & {}) | (() => string | vue.Component)) | null)[], unknown, unknown, vue.DefineComponent<{}, void, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>;
|
|
254
244
|
};
|
|
255
245
|
declare const optionV2Props: {
|
|
256
246
|
readonly data: ArrayConstructor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group-item.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/group-item.vue"],"sourcesContent":["<template>\n <div\n :class=\"ns.be('group', 'title')\"\n :style=\"{ ...style, lineHeight: `${height}px` }\"\n >\n {{ item.label }}\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties, PropType } from 'vue'\n\nexport default defineComponent({\n props: {\n item: {\n type: Object,\n required: true,\n },\n style: {\n type: Object as PropType<CSSProperties>,\n },\n height: Number,\n },\n setup() {\n const ns = useNamespace('select')\n return {\n ns,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;qBACE,mBAKM,OAAA;EAJH,OAAK,eAAE,KAAA,GAAG,GAAE,SAAA,QAAA,CAAA;EACZ,OAAK,eAAA;GAAA,GAAO,KAAA;GAAK,YAAA,GAAiB,KAAA,OAAM;GAAA,CAAA;
|
|
1
|
+
{"version":3,"file":"group-item.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/group-item.vue"],"sourcesContent":["<template>\n <div\n :class=\"ns.be('group', 'title')\"\n :style=\"{ ...style, lineHeight: `${height}px` }\"\n >\n {{ item.label }}\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties, PropType } from 'vue'\n\nexport default defineComponent({\n props: {\n item: {\n type: Object,\n required: true,\n },\n style: {\n type: Object as PropType<CSSProperties>,\n },\n height: Number,\n },\n setup() {\n const ns = useNamespace('select')\n return {\n ns,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;qBACE,mBAKM,OAAA;EAJH,OAAK,eAAE,KAAA,GAAG,GAAE,SAAA,QAAA,CAAA;EACZ,OAAK,eAAA;GAAA,GAAO,KAAA;GAAK,YAAA,GAAiB,KAAA,OAAM;GAAA,CAAA;EAAA,kBAEtC,KAAA,KAAK,MAAK,EAAA,EAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"option-item.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/option-item.vue"],"sourcesContent":["<template>\n <li\n :id=\"`${contentId}-${index}`\"\n role=\"option\"\n :aria-selected=\"selected\"\n :aria-disabled=\"disabled || undefined\"\n :style=\"style\"\n :class=\"[\n ns.be('dropdown', 'item'),\n ns.is('selected', selected),\n ns.is('disabled', disabled),\n ns.is('created', created),\n ns.is('hovering', hovering),\n ]\"\n @mousemove=\"hoverItem\"\n @click.stop=\"selectOptionClick\"\n >\n <slot :item=\"item\" :index=\"index\" :disabled=\"disabled\">\n <span>{{ getLabel(item) }}</span>\n </slot>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useOption } from './useOption'\nimport { useProps } from './useProps'\nimport { optionV2Emits, optionV2Props } from './defaults'\nimport { selectV2InjectionKey } from './token'\n\nexport default defineComponent({\n props: optionV2Props,\n emits: optionV2Emits,\n setup(props, { emit }) {\n const select = inject(selectV2InjectionKey)!\n const ns = useNamespace('select')\n const { hoverItem, selectOptionClick } = useOption(props, { emit })\n const { getLabel } = useProps(select.props)\n const contentId = select.contentId\n\n return {\n ns,\n contentId,\n hoverItem,\n selectOptionClick,\n getLabel,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;;;;;;qBACE,mBAmBK,MAAA;EAlBF,IAAE,GAAK,KAAA,UAAS,GAAI,KAAA;EACrB,MAAK;EACJ,iBAAe,KAAA;EACf,iBAAe,KAAA,YAAY;EAC3B,OAAK,eAAE,KAAA,MAAK;EACZ,OAAK,eAAA;GAAU,KAAA,GAAG,GAAE,YAAA,OAAA;GAA4B,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAS,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAS,KAAA,GAAG,GAAE,WAAY,KAAA,QAAO;GAAS,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ
|
|
1
|
+
{"version":3,"file":"option-item.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/option-item.vue"],"sourcesContent":["<template>\n <li\n :id=\"`${contentId}-${index}`\"\n role=\"option\"\n :aria-selected=\"selected\"\n :aria-disabled=\"disabled || undefined\"\n :style=\"style\"\n :class=\"[\n ns.be('dropdown', 'item'),\n ns.is('selected', selected),\n ns.is('disabled', disabled),\n ns.is('created', created),\n ns.is('hovering', hovering),\n ]\"\n @mousemove=\"hoverItem\"\n @click.stop=\"selectOptionClick\"\n >\n <slot :item=\"item\" :index=\"index\" :disabled=\"disabled\">\n <span>{{ getLabel(item) }}</span>\n </slot>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useOption } from './useOption'\nimport { useProps } from './useProps'\nimport { optionV2Emits, optionV2Props } from './defaults'\nimport { selectV2InjectionKey } from './token'\n\nexport default defineComponent({\n props: optionV2Props,\n emits: optionV2Emits,\n setup(props, { emit }) {\n const select = inject(selectV2InjectionKey)!\n const ns = useNamespace('select')\n const { hoverItem, selectOptionClick } = useOption(props, { emit })\n const { getLabel } = useProps(select.props)\n const contentId = select.contentId\n\n return {\n ns,\n contentId,\n hoverItem,\n selectOptionClick,\n getLabel,\n }\n },\n})\n</script>\n"],"mappings":";;;;;;;;;;;qBACE,mBAmBK,MAAA;EAlBF,IAAE,GAAK,KAAA,UAAS,GAAI,KAAA;EACrB,MAAK;EACJ,iBAAe,KAAA;EACf,iBAAe,KAAA,YAAY,KAAA;EAC3B,OAAK,eAAE,KAAA,MAAK;EACZ,OAAK,eAAA;GAAU,KAAA,GAAG,GAAE,YAAA,OAAA;GAA4B,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAS,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAS,KAAA,GAAG,GAAE,WAAY,KAAA,QAAO;GAAS,KAAA,GAAG,GAAE,YAAa,KAAA,SAAQ;GAAA,CAAA;EAOjL,aAAS,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,KAAA,aAAA,KAAA,UAAA,GAAA,KAAA;EACX,SAAK,OAAA,OAAA,OAAA,KAAA,eAAA,GAAA,SAAO,KAAA,qBAAA,KAAA,kBAAA,GAAA,KAAA,EAAiB,CAAA,OAAA,CAAA;EAAA,EAAA,CAE9B,WAEO,KAAA,QAAA,WAAA;EAFA,MAAM,KAAA;EAAO,OAAO,KAAA;EAAQ,UAAU,KAAA;EAAA,QAEtC,CADL,mBAAiC,QAAA,MAAA,gBAAxB,KAAA,SAAS,KAAA,KAAI,CAAA,EAAA,EAAA,CAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @mouseenter=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n :placement=\"placement\"\n pure\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n trigger=\"click\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!modelValue.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.cachedOptions\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(getValue(item))\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !getDisabled(item)\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"getIndex(item)\"\n :label=\"getLabel(item)\"\n :value=\"getValue(item)\"\n >\n {{ getLabel(item) }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"\n collapseTags && states.cachedOptions.length > maxCollapseTags\n \"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n :style=\"collapseTagStyle\"\n disable-transitions\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.cachedOptions.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"selected in collapseTagList\"\n :key=\"getValueKey(getValue(selected))\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !getDisabled(selected)\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, selected)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"getIndex(selected)\"\n :label=\"getLabel(selected)\"\n :value=\"getValue(selected)\"\n >\n {{ getLabel(selected) }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n :style=\"inputStyle\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n autocapitalize=\"off\"\n :aria-expanded=\"expanded\"\n :aria-label=\"ariaLabel\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n role=\"combobox\"\n :aria-controls=\"contentId\"\n :aria-activedescendant=\"\n states.hoveringIndex >= 0\n ? `${contentId}-${states.hoveringIndex}`\n : ''\n \"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n type=\"text\"\n :name=\"name\"\n @input=\"onInput\"\n @change.stop\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @keydown.up.stop.prevent=\"onKeyboardNavigate('backward')\"\n @keydown.down.stop.prevent=\"onKeyboardNavigate('forward')\"\n @keydown.enter.stop.prevent=\"onKeyboardSelect\"\n @keydown.esc.stop.prevent=\"handleEsc\"\n @keydown.delete.stop=\"handleDel\"\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"allOptionsValueMap.get(modelValue)?.index ?? -1\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent\"\n v-show=\"!showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsInput.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsInput.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click.prevent.stop=\"handleClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu\n :id=\"contentId\"\n ref=\"menuRef\"\n :data=\"filteredOptions\"\n :width=\"popperSize - BORDER_HORIZONTAL_WIDTH\"\n :hovering-index=\"states.hoveringIndex\"\n :scrollbar-always-on=\"scrollbarAlwaysOn\"\n :aria-label=\"ariaLabel\"\n >\n <template v-if=\"$slots.header\" #header>\n <div :class=\"nsSelect.be('dropdown', 'header')\" @click.stop>\n <slot name=\"header\" />\n </div>\n </template>\n <template #default=\"scope\">\n <slot v-bind=\"scope\" />\n </template>\n <template v-if=\"$slots.loading && loading\" #loading>\n <div :class=\"nsSelect.be('dropdown', 'loading')\">\n <slot name=\"loading\" />\n </div>\n </template>\n <template v-else-if=\"loading || filteredOptions.length === 0\" #empty>\n <div :class=\"nsSelect.be('dropdown', 'empty')\">\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n </template>\n <template v-if=\"$slots.footer\" #footer>\n <div :class=\"nsSelect.be('dropdown', 'footer')\" @click.stop>\n <slot name=\"footer\" />\n </div>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, provide, reactive, toRefs } from 'vue'\nimport { isArray } from '@element-plus/utils'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { useCalcInputWidth, useId } from '@element-plus/hooks'\nimport ElSelectMenu from './select-dropdown'\nimport useSelect from './useSelect'\nimport { selectV2Emits, selectV2Props } from './defaults'\nimport { selectV2InjectionKey } from './token'\nimport { BORDER_HORIZONTAL_WIDTH } from '@element-plus/constants'\n\nexport default defineComponent({\n name: 'ElSelectV2',\n components: {\n ElSelectMenu,\n ElTag,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectV2Props,\n emits: selectV2Emits,\n setup(props, { emit }) {\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n return multiple ? fallback : rawModelValue\n })\n\n const API = useSelect(\n reactive({\n ...toRefs(props),\n modelValue,\n }),\n emit\n )\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const contentId = useId()\n\n provide(selectV2InjectionKey, {\n props: reactive({\n ...toRefs(props),\n height: API.popupHeight,\n modelValue,\n }),\n expanded: API.expanded,\n tooltipRef: API.tooltipRef,\n contentId,\n onSelect: API.onSelect,\n onHover: API.onHover,\n onKeyboardNavigate: API.onKeyboardNavigate,\n onKeyboardSelect: API.onKeyboardSelect,\n })\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.cachedOptions.map((i) => API.getLabel(i) as string)\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n contentId,\n BORDER_HORIZONTAL_WIDTH,\n }\n },\n})\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/select.vue"],"sourcesContent":["<template>\n <div\n ref=\"selectRef\"\n v-click-outside:[popperRef]=\"handleClickOutside\"\n :class=\"[nsSelect.b(), nsSelect.m(selectSize)]\"\n @mouseenter=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :teleported=\"teleported\"\n :popper-class=\"[nsSelect.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :effect=\"effect\"\n :placement=\"placement\"\n pure\n :transition=\"`${nsSelect.namespace.value}-zoom-in-top`\"\n trigger=\"click\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n :show-arrow=\"showArrow\"\n :offset=\"offset\"\n @before-show=\"handleMenuEnter\"\n @hide=\"states.isBeforeHide = false\"\n >\n <template #default>\n <div\n ref=\"wrapperRef\"\n :class=\"[\n nsSelect.e('wrapper'),\n nsSelect.is('focused', isFocused),\n nsSelect.is('hovering', states.inputHovering),\n nsSelect.is('filterable', filterable),\n nsSelect.is('disabled', selectDisabled),\n ]\"\n @click.prevent=\"toggleMenu\"\n >\n <div\n v-if=\"$slots.prefix\"\n ref=\"prefixRef\"\n :class=\"nsSelect.e('prefix')\"\n >\n <slot name=\"prefix\" />\n </div>\n <div\n ref=\"selectionRef\"\n :class=\"[\n nsSelect.e('selection'),\n nsSelect.is(\n 'near',\n multiple && !$slots.prefix && !!modelValue.length\n ),\n ]\"\n >\n <slot\n v-if=\"multiple\"\n name=\"tag\"\n :data=\"states.cachedOptions\"\n :delete-tag=\"deleteTag\"\n :select-disabled=\"selectDisabled\"\n >\n <div\n v-for=\"item in showTagList\"\n :key=\"getValueKey(getValue(item))\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"!selectDisabled && !getDisabled(item)\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n :style=\"tagStyle\"\n @close=\"deleteTag($event, item)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"getIndex(item)\"\n :label=\"getLabel(item)\"\n :value=\"getValue(item)\"\n >\n {{ getLabel(item) }}\n </slot>\n </span>\n </el-tag>\n </div>\n\n <el-tooltip\n v-if=\"\n collapseTags && states.cachedOptions.length > maxCollapseTags\n \"\n ref=\"tagTooltipRef\"\n :disabled=\"dropdownMenuVisible || !collapseTagsTooltip\"\n :fallback-placements=\"\n tagTooltip?.fallbackPlacements ?? [\n 'bottom',\n 'top',\n 'right',\n 'left',\n ]\n \"\n :effect=\"tagTooltip?.effect ?? effect\"\n :placement=\"tagTooltip?.placement ?? 'bottom'\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :teleported=\"tagTooltip?.teleported ?? teleported\"\n :append-to=\"tagTooltip?.appendTo ?? appendTo\"\n :popper-options=\"tagTooltip?.popperOptions ?? popperOptions\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\n :offset=\"tagTooltip?.offset\"\n >\n <template #default>\n <div\n ref=\"collapseItemRef\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n :closable=\"false\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n :style=\"collapseTagStyle\"\n disable-transitions\n >\n <span :class=\"nsSelect.e('tags-text')\">\n + {{ states.cachedOptions.length - maxCollapseTags }}\n </span>\n </el-tag>\n </div>\n </template>\n <template #content>\n <div ref=\"tagMenuRef\" :class=\"nsSelect.e('selection')\">\n <div\n v-for=\"selected in collapseTagList\"\n :key=\"getValueKey(getValue(selected))\"\n :class=\"nsSelect.e('selected-item')\"\n >\n <el-tag\n class=\"in-tooltip\"\n :closable=\"!selectDisabled && !getDisabled(selected)\"\n :size=\"collapseTagSize\"\n :type=\"tagType\"\n :effect=\"tagEffect\"\n disable-transitions\n @close=\"deleteTag($event, selected)\"\n >\n <span :class=\"nsSelect.e('tags-text')\">\n <slot\n name=\"label\"\n :index=\"getIndex(selected)\"\n :label=\"getLabel(selected)\"\n :value=\"getValue(selected)\"\n >\n {{ getLabel(selected) }}\n </slot>\n </span>\n </el-tag>\n </div>\n </div>\n </template>\n </el-tooltip>\n </slot>\n <div\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('input-wrapper'),\n nsSelect.is(\n 'hidden',\n !filterable ||\n selectDisabled ||\n (!states.inputValue && !isFocused)\n ),\n ]\"\n >\n <input\n :id=\"inputId\"\n ref=\"inputRef\"\n :value=\"states.inputValue\"\n :style=\"inputStyle\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n aria-autocomplete=\"none\"\n aria-haspopup=\"listbox\"\n autocapitalize=\"off\"\n :aria-expanded=\"expanded\"\n :aria-label=\"ariaLabel\"\n :class=\"[nsSelect.e('input'), nsSelect.is(selectSize)]\"\n :disabled=\"selectDisabled\"\n role=\"combobox\"\n :aria-controls=\"contentId\"\n :aria-activedescendant=\"\n states.hoveringIndex >= 0\n ? `${contentId}-${states.hoveringIndex}`\n : ''\n \"\n :readonly=\"!filterable\"\n spellcheck=\"false\"\n type=\"text\"\n :name=\"name\"\n @input=\"onInput\"\n @change.stop\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @keydown.up.stop.prevent=\"onKeyboardNavigate('backward')\"\n @keydown.down.stop.prevent=\"onKeyboardNavigate('forward')\"\n @keydown.enter.stop.prevent=\"onKeyboardSelect\"\n @keydown.esc.stop.prevent=\"handleEsc\"\n @keydown.delete.stop=\"handleDel\"\n @click.stop=\"toggleMenu\"\n />\n <span\n v-if=\"filterable\"\n ref=\"calculatorRef\"\n aria-hidden=\"true\"\n :class=\"nsSelect.e('input-calculator')\"\n v-text=\"states.inputValue\"\n />\n </div>\n <div\n v-if=\"shouldShowPlaceholder\"\n :class=\"[\n nsSelect.e('selected-item'),\n nsSelect.e('placeholder'),\n nsSelect.is(\n 'transparent',\n !hasModelValue || (expanded && !states.inputValue)\n ),\n ]\"\n >\n <slot\n v-if=\"hasModelValue\"\n name=\"label\"\n :index=\"allOptionsValueMap.get(modelValue)?.index ?? -1\"\n :label=\"currentPlaceholder\"\n :value=\"modelValue\"\n >\n <span>{{ currentPlaceholder }}</span>\n </slot>\n <span v-else>{{ currentPlaceholder }}</span>\n </div>\n </div>\n <div ref=\"suffixRef\" :class=\"nsSelect.e('suffix')\">\n <el-icon\n v-if=\"iconComponent\"\n v-show=\"!showClearBtn\"\n :class=\"[nsSelect.e('caret'), nsInput.e('icon'), iconReverse]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"[\n nsSelect.e('caret'),\n nsInput.e('icon'),\n nsSelect.e('clear'),\n ]\"\n @click.prevent.stop=\"handleClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </div>\n </div>\n </template>\n <template #content>\n <el-select-menu\n :id=\"contentId\"\n ref=\"menuRef\"\n :data=\"filteredOptions\"\n :width=\"popperSize - BORDER_HORIZONTAL_WIDTH\"\n :hovering-index=\"states.hoveringIndex\"\n :scrollbar-always-on=\"scrollbarAlwaysOn\"\n :aria-label=\"ariaLabel\"\n >\n <template v-if=\"$slots.header\" #header>\n <div :class=\"nsSelect.be('dropdown', 'header')\" @click.stop>\n <slot name=\"header\" />\n </div>\n </template>\n <template #default=\"scope\">\n <slot v-bind=\"scope\" />\n </template>\n <template v-if=\"$slots.loading && loading\" #loading>\n <div :class=\"nsSelect.be('dropdown', 'loading')\">\n <slot name=\"loading\" />\n </div>\n </template>\n <template v-else-if=\"loading || filteredOptions.length === 0\" #empty>\n <div :class=\"nsSelect.be('dropdown', 'empty')\">\n <slot name=\"empty\">\n <span>{{ emptyText }}</span>\n </slot>\n </div>\n </template>\n <template v-if=\"$slots.footer\" #footer>\n <div :class=\"nsSelect.be('dropdown', 'footer')\" @click.stop>\n <slot name=\"footer\" />\n </div>\n </template>\n </el-select-menu>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, provide, reactive, toRefs } from 'vue'\nimport { isArray } from '@element-plus/utils'\nimport { ClickOutside } from '@element-plus/directives'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\nimport { useCalcInputWidth, useId } from '@element-plus/hooks'\nimport ElSelectMenu from './select-dropdown'\nimport useSelect from './useSelect'\nimport { selectV2Emits, selectV2Props } from './defaults'\nimport { selectV2InjectionKey } from './token'\nimport { BORDER_HORIZONTAL_WIDTH } from '@element-plus/constants'\n\nexport default defineComponent({\n name: 'ElSelectV2',\n components: {\n ElSelectMenu,\n ElTag,\n ElTooltip,\n ElIcon,\n },\n directives: { ClickOutside },\n props: selectV2Props,\n emits: selectV2Emits,\n setup(props, { emit }) {\n const modelValue = computed(() => {\n const { modelValue: rawModelValue, multiple } = props\n const fallback = multiple ? [] : undefined\n // When it is array, we check if this is multi-select.\n // Based on the result we get\n if (isArray(rawModelValue)) {\n return multiple ? rawModelValue : fallback\n }\n return multiple ? fallback : rawModelValue\n })\n\n const API = useSelect(\n reactive({\n ...toRefs(props),\n modelValue,\n }),\n emit\n )\n const { calculatorRef, inputStyle } = useCalcInputWidth()\n const contentId = useId()\n\n provide(selectV2InjectionKey, {\n props: reactive({\n ...toRefs(props),\n height: API.popupHeight,\n modelValue,\n }),\n expanded: API.expanded,\n tooltipRef: API.tooltipRef,\n contentId,\n onSelect: API.onSelect,\n onHover: API.onHover,\n onKeyboardNavigate: API.onKeyboardNavigate,\n onKeyboardSelect: API.onKeyboardSelect,\n })\n\n const selectedLabel = computed(() => {\n if (!props.multiple) {\n return API.states.selectedLabel\n }\n return API.states.cachedOptions.map((i) => API.getLabel(i) as string)\n })\n\n return {\n ...API,\n modelValue,\n selectedLabel,\n calculatorRef,\n inputStyle,\n contentId,\n BORDER_HORIZONTAL_WIDTH,\n }\n },\n})\n</script>\n"],"mappings":"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"}
|