element-plus-mobile 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/attributes.json +1 -1
- package/dist/index.css +1 -1
- package/dist/index.full.js +594 -905
- package/dist/index.full.min.js +8 -8
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +8 -8
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +593 -904
- 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/component.mjs +3 -3
- package/es/components/button/src/button-custom.mjs +49 -1
- package/es/components/button/src/button-custom.mjs.map +1 -1
- package/es/components/button/src/button-group.mjs +1 -1
- package/es/components/button/src/button-group.mjs.map +1 -1
- package/es/components/button/src/button-group.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/button/src/button-group2.mjs.map +1 -1
- package/es/components/cascader/src/cascader.d.ts +3 -131
- package/es/components/cascader/src/cascader.mjs +15 -24
- package/es/components/cascader/src/cascader.mjs.map +1 -1
- package/es/components/cascader/src/cascader.vue.d.ts +0 -6
- package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs +12 -37
- package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/cascader/src/cascader2.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.mjs +8 -0
- package/es/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker.d.ts +0 -16
- package/es/components/color-picker/src/color-picker.mjs +0 -3
- package/es/components/color-picker/src/color-picker.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker.vue.d.ts +0 -1
- package/es/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.mjs +4 -14
- package/es/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
- package/es/components/countdown/src/countdown.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/es/components/date-picker/src/date-picker.d.ts +0 -3
- package/es/components/date-picker/src/props.d.ts +0 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/es/components/date-picker-panel/src/date-picker-panel.d.ts +1 -1
- package/es/components/form/index.d.ts +2 -2
- package/es/components/form/src/form-item.d.ts +0 -15
- package/es/components/form/src/form-item.mjs +0 -11
- package/es/components/form/src/form-item.mjs.map +1 -1
- package/es/components/form/src/form-item.vue.d.ts +5 -6
- package/es/components/form/src/form-item.vue_vue_type_script_setup_true_lang.mjs +15 -46
- package/es/components/form/src/form-item.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/form/src/form-item2.mjs.map +1 -1
- package/es/components/form/src/form.d.ts +0 -20
- package/es/components/form/src/form.mjs +0 -15
- package/es/components/form/src/form.mjs.map +1 -1
- package/es/components/form/src/form.vue.d.ts +0 -2
- package/es/components/form/src/form.vue_vue_type_script_setup_true_lang.mjs +3 -19
- package/es/components/form/src/form.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/form/src/form2.mjs.map +1 -1
- package/es/components/form/src/types.d.ts +2 -5
- package/es/components/form/src/utils.mjs +1 -32
- package/es/components/form/src/utils.mjs.map +1 -1
- package/es/components/index.d.ts +2 -2
- package/es/components/index.mjs +6 -6
- package/es/components/input-number/src/input-number.d.ts +0 -5
- package/es/components/input-number/src/input-number.mjs +0 -1
- package/es/components/input-number/src/input-number.mjs.map +1 -1
- package/es/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.mjs +2 -4
- package/es/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/input-number/src/input-number2.mjs.map +1 -1
- package/es/components/link/src/link.d.ts +2 -2
- package/es/components/link/src/link.mjs +3 -9
- package/es/components/link/src/link.mjs.map +1 -1
- package/es/components/link/src/link.vue.d.ts +1 -1
- package/es/components/link/src/link.vue_vue_type_script_setup_true_lang.mjs +2 -13
- package/es/components/link/src/link.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/link/src/link2.mjs.map +1 -1
- package/es/components/menu/src/menu.mjs +1 -1
- package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.mjs +26 -77
- package/es/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
- package/es/components/select/src/select-dropdown.mjs +7 -10
- package/es/components/select/src/select-dropdown.mjs.map +1 -1
- package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs +4 -22
- package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/select/src/select.d.ts +1 -21
- package/es/components/select/src/select.mjs +0 -32
- package/es/components/select/src/select.mjs.map +1 -1
- package/es/components/select/src/select.vue.d.ts +0 -40
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/select/src/select2.mjs +8 -44
- package/es/components/select/src/select2.mjs.map +1 -1
- package/es/components/select/src/useSelect.mjs +12 -26
- package/es/components/select/src/useSelect.mjs.map +1 -1
- package/es/components/select-v2/src/defaults.d.ts +1 -21
- package/es/components/select-v2/src/defaults.mjs +1 -38
- package/es/components/select-v2/src/defaults.mjs.map +1 -1
- package/es/components/select-v2/src/select.mjs +8 -44
- package/es/components/select-v2/src/select.mjs.map +1 -1
- package/es/components/select-v2/src/select.vue.d.ts +0 -38
- package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs.map +1 -1
- package/es/components/select-v2/src/useSelect.mjs +20 -60
- package/es/components/select-v2/src/useSelect.mjs.map +1 -1
- package/es/components/space/src/space.d.ts +21 -7
- package/es/components/space/src/space.mjs +2 -5
- package/es/components/space/src/space.mjs.map +1 -1
- package/es/components/space/src/use-space.mjs +7 -4
- package/es/components/space/src/use-space.mjs.map +1 -1
- package/es/components/splitter/src/split-bar.mjs.map +1 -1
- package/es/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.mjs +51 -58
- package/es/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/splitter/src/splitter.d.ts +1 -1
- package/es/components/splitter/src/splitter.mjs +1 -1
- package/es/components/splitter/src/splitter.mjs.map +1 -1
- package/es/components/splitter/src/splitter.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/splitter/src/splitter2.mjs.map +1 -1
- package/es/components/table/src/table.vue_vue_type_script_lang.mjs +1 -1
- package/es/components/time-picker/src/common/picker.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.vue.d.ts +0 -3
- package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs +4 -3
- package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/time-picker/src/common/props.d.ts +0 -1
- package/es/components/time-picker/src/common/props.mjs +0 -1
- package/es/components/time-picker/src/common/props.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/es/components/time-picker/src/time-picker.d.ts +0 -3
- package/es/components/time-picker/src/time-picker.mjs +2 -3
- package/es/components/time-picker/src/time-picker.mjs.map +1 -1
- package/es/components/time-select/src/time-select.d.ts +0 -7
- package/es/components/time-select/src/time-select.mjs +0 -4
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/time-select/src/time-select.vue.d.ts +0 -3
- package/es/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.mjs +0 -2
- package/es/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/time-select/src/time-select2.mjs.map +1 -1
- package/es/components/transfer/src/composables/index.d.ts +2 -1
- package/es/components/transfer/src/composables/index.mjs +2 -1
- package/es/components/transfer/src/composables/use-tab.d.ts +15 -0
- package/es/components/transfer/src/composables/use-tab.mjs +47 -0
- package/es/components/transfer/src/composables/use-tab.mjs.map +1 -0
- package/es/components/transfer/src/transfer-panel.d.ts +2 -3
- package/es/components/transfer/src/transfer-panel.vue.d.ts +4 -31
- package/es/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.mjs +40 -67
- package/es/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
- package/es/components/transfer/src/transfer.vue.d.ts +359 -5
- package/es/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.mjs +162 -55
- package/es/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/transfer/src/transfer2.mjs.map +1 -1
- package/es/components/tree-select/src/tree-select.vue.d.ts +0 -37
- package/es/components/tree-select/src/tree.mjs +16 -3
- package/es/components/tree-select/src/tree.mjs.map +1 -1
- package/es/index.d.ts +2 -2
- package/es/index.mjs +11 -11
- package/es/plugin.mjs +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/component.js +107 -107
- package/lib/components/button/src/button-custom.js +49 -1
- package/lib/components/button/src/button-custom.js.map +1 -1
- package/lib/components/button/src/button-group.js +1 -1
- package/lib/components/button/src/button-group.js.map +1 -1
- package/lib/components/button/src/button-group.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/button/src/button-group2.js.map +1 -1
- package/lib/components/cascader/src/cascader.d.ts +3 -131
- package/lib/components/cascader/src/cascader.js +19 -29
- package/lib/components/cascader/src/cascader.js.map +1 -1
- package/lib/components/cascader/src/cascader.vue.d.ts +0 -6
- package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js +36 -61
- package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/cascader/src/cascader2.js.map +1 -1
- package/lib/components/cascader-panel/src/index.js.map +1 -1
- package/lib/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.js +8 -0
- package/lib/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/color-picker/src/color-picker.d.ts +0 -16
- package/lib/components/color-picker/src/color-picker.js +0 -3
- package/lib/components/color-picker/src/color-picker.js.map +1 -1
- package/lib/components/color-picker/src/color-picker.vue.d.ts +0 -1
- package/lib/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.js +21 -31
- package/lib/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/color-picker/src/color-picker2.js.map +1 -1
- package/lib/components/countdown/src/countdown.vue_vue_type_script_setup_true_lang.js +1 -1
- package/lib/components/date-picker/src/date-picker.d.ts +0 -3
- package/lib/components/date-picker/src/props.d.ts +0 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js +18 -18
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js +23 -23
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +1 -1
- package/lib/components/form/index.d.ts +2 -2
- package/lib/components/form/src/form-item.d.ts +0 -15
- package/lib/components/form/src/form-item.js +0 -11
- package/lib/components/form/src/form-item.js.map +1 -1
- package/lib/components/form/src/form-item.vue.d.ts +5 -6
- package/lib/components/form/src/form-item.vue_vue_type_script_setup_true_lang.js +14 -45
- package/lib/components/form/src/form-item.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/form/src/form-item2.js.map +1 -1
- package/lib/components/form/src/form.d.ts +0 -20
- package/lib/components/form/src/form.js +0 -15
- package/lib/components/form/src/form.js.map +1 -1
- package/lib/components/form/src/form.vue.d.ts +0 -2
- package/lib/components/form/src/form.vue_vue_type_script_setup_true_lang.js +2 -18
- package/lib/components/form/src/form.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/form/src/form2.js.map +1 -1
- package/lib/components/form/src/types.d.ts +2 -5
- package/lib/components/form/src/utils.js +0 -32
- package/lib/components/form/src/utils.js.map +1 -1
- package/lib/components/index.d.ts +2 -2
- package/lib/components/index.js +123 -123
- package/lib/components/input-number/src/input-number.d.ts +0 -5
- package/lib/components/input-number/src/input-number.js +0 -1
- package/lib/components/input-number/src/input-number.js.map +1 -1
- package/lib/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.js +13 -15
- package/lib/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/input-number/src/input-number2.js.map +1 -1
- package/lib/components/link/src/link.d.ts +2 -2
- package/lib/components/link/src/link.js +3 -9
- package/lib/components/link/src/link.js.map +1 -1
- package/lib/components/link/src/link.vue.d.ts +1 -1
- package/lib/components/link/src/link.vue_vue_type_script_setup_true_lang.js +6 -17
- package/lib/components/link/src/link.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/link/src/link2.js.map +1 -1
- package/lib/components/menu/src/menu.js +7 -7
- package/lib/components/menu/src/menu.js.map +1 -1
- package/lib/components/message-box/src/index.vue_vue_type_script_lang.js +19 -19
- package/lib/components/message-box/src/index.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.js +26 -77
- package/lib/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/scrollbar/src/thumb2.js.map +1 -1
- package/lib/components/select/src/select-dropdown.js +6 -9
- package/lib/components/select/src/select-dropdown.js.map +1 -1
- package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js +3 -21
- package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/select/src/select.d.ts +1 -21
- package/lib/components/select/src/select.js +10 -43
- package/lib/components/select/src/select.js.map +1 -1
- package/lib/components/select/src/select.vue.d.ts +0 -40
- package/lib/components/select/src/select.vue_vue_type_script_lang.js +12 -12
- package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/select/src/select2.js +8 -44
- package/lib/components/select/src/select2.js.map +1 -1
- package/lib/components/select/src/useSelect.js +11 -25
- package/lib/components/select/src/useSelect.js.map +1 -1
- package/lib/components/select-v2/src/defaults.d.ts +1 -21
- package/lib/components/select-v2/src/defaults.js +12 -50
- package/lib/components/select-v2/src/defaults.js.map +1 -1
- package/lib/components/select-v2/src/select.js +8 -44
- package/lib/components/select-v2/src/select.js.map +1 -1
- package/lib/components/select-v2/src/select.vue.d.ts +0 -38
- package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js +12 -12
- package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/select-v2/src/useSelect.js +19 -59
- package/lib/components/select-v2/src/useSelect.js.map +1 -1
- package/lib/components/space/src/space.d.ts +21 -7
- package/lib/components/space/src/space.js +2 -5
- package/lib/components/space/src/space.js.map +1 -1
- package/lib/components/space/src/use-space.js +7 -4
- package/lib/components/space/src/use-space.js.map +1 -1
- package/lib/components/splitter/src/split-bar.js.map +1 -1
- package/lib/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.js +50 -57
- package/lib/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/splitter/src/splitter.d.ts +1 -1
- package/lib/components/splitter/src/splitter.js +1 -1
- package/lib/components/splitter/src/splitter.js.map +1 -1
- package/lib/components/splitter/src/splitter.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/splitter/src/splitter2.js.map +1 -1
- package/lib/components/table/src/table.vue_vue_type_script_lang.js +8 -8
- package/lib/components/table/src/table.vue_vue_type_script_lang.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.vue.d.ts +0 -3
- package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js +4 -3
- package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/time-picker/src/common/props.d.ts +0 -1
- package/lib/components/time-picker/src/common/props.js +0 -1
- package/lib/components/time-picker/src/common/props.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.js +10 -10
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/time-picker/src/time-picker.d.ts +0 -3
- package/lib/components/time-picker/src/time-picker.js +0 -1
- package/lib/components/time-picker/src/time-picker.js.map +1 -1
- package/lib/components/time-select/src/time-select.d.ts +0 -7
- package/lib/components/time-select/src/time-select.js +0 -4
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/time-select/src/time-select.vue.d.ts +0 -3
- package/lib/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.js +0 -2
- package/lib/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/time-select/src/time-select2.js.map +1 -1
- package/lib/components/transfer/src/composables/index.d.ts +2 -1
- package/lib/components/transfer/src/composables/index.js +3 -1
- package/lib/components/transfer/src/composables/use-tab.d.ts +15 -0
- package/lib/components/transfer/src/composables/use-tab.js +49 -0
- package/lib/components/transfer/src/composables/use-tab.js.map +1 -0
- package/lib/components/transfer/src/transfer-panel.d.ts +2 -3
- package/lib/components/transfer/src/transfer-panel.vue.d.ts +4 -31
- package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.js +40 -67
- package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
- package/lib/components/transfer/src/transfer.vue.d.ts +359 -5
- package/lib/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.js +161 -54
- package/lib/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/transfer/src/transfer2.js.map +1 -1
- package/lib/components/tree-select/src/tree-select.vue.d.ts +0 -37
- package/lib/components/tree-select/src/tree.js +15 -2
- package/lib/components/tree-select/src/tree.js.map +1 -1
- package/lib/index.d.ts +2 -2
- package/lib/index.js +265 -265
- package/lib/plugin.js +12 -12
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +3 -3
- package/tags.json +1 -1
- package/theme-chalk/display.css +1 -1
- package/theme-chalk/el-cascader-panel.css +1 -1
- package/theme-chalk/el-cascader.css +1 -1
- package/theme-chalk/el-checkbox-group.css +1 -1
- package/theme-chalk/el-checkbox.css +1 -1
- package/theme-chalk/el-color-picker-panel.css +1 -1
- package/theme-chalk/el-color-picker.css +1 -1
- package/theme-chalk/el-date-picker-panel.css +1 -1
- package/theme-chalk/el-form-item.css +1 -1
- package/theme-chalk/el-form.css +1 -1
- package/theme-chalk/el-input-number.css +1 -1
- package/theme-chalk/el-input.css +1 -1
- package/theme-chalk/el-link.css +1 -1
- package/theme-chalk/el-option.css +1 -1
- package/theme-chalk/el-radio-group.css +1 -1
- package/theme-chalk/el-radio.css +1 -1
- package/theme-chalk/el-rate.css +1 -1
- package/theme-chalk/el-scrollbar.css +1 -1
- package/theme-chalk/el-segmented.css +1 -1
- package/theme-chalk/el-select-dropdown-v2.css +1 -1
- package/theme-chalk/el-select-dropdown.css +1 -1
- package/theme-chalk/el-select-v2.css +1 -1
- package/theme-chalk/el-select.css +1 -1
- package/theme-chalk/el-slider.css +1 -1
- package/theme-chalk/el-space.css +1 -1
- package/theme-chalk/el-splitter.css +1 -1
- package/theme-chalk/el-switch.css +1 -1
- package/theme-chalk/el-text.css +1 -1
- package/theme-chalk/el-time-picker.css +1 -1
- package/theme-chalk/el-time-select.css +1 -1
- package/theme-chalk/el-transfer.css +1 -1
- package/theme-chalk/el-upload.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/cascader-panel.scss +61 -0
- package/theme-chalk/src/cascader.scss +69 -0
- package/theme-chalk/src/checkbox-group.scss +6 -10
- package/theme-chalk/src/checkbox.scss +21 -23
- package/theme-chalk/src/color-picker-panel.scss +91 -16
- package/theme-chalk/src/color-picker.scss +64 -6
- package/theme-chalk/src/common/var.scss +10 -17
- package/theme-chalk/src/date-picker/date-picker.scss +75 -0
- package/theme-chalk/src/date-picker/date-range-picker.scss +95 -0
- package/theme-chalk/src/date-picker/picker-panel.scss +95 -1
- package/theme-chalk/src/date-picker/picker.scss +93 -0
- package/theme-chalk/src/date-picker/time-picker.scss +49 -0
- package/theme-chalk/src/date-picker/time-range-picker.scss +29 -0
- package/theme-chalk/src/date-picker/time-spinner.scss +35 -0
- package/theme-chalk/src/form-item.scss +20 -122
- package/theme-chalk/src/form.scss +0 -29
- package/theme-chalk/src/input-number.scss +24 -123
- package/theme-chalk/src/input.scss +18 -57
- package/theme-chalk/src/link.scss +0 -13
- package/theme-chalk/src/option.scss +11 -31
- package/theme-chalk/src/radio-group.scss +4 -6
- package/theme-chalk/src/radio.scss +21 -23
- package/theme-chalk/src/rate.scss +15 -17
- package/theme-chalk/src/scrollbar.scss +0 -2
- package/theme-chalk/src/segmented.scss +7 -9
- package/theme-chalk/src/select-dropdown.scss +35 -62
- package/theme-chalk/src/select.scss +37 -65
- package/theme-chalk/src/slider.scss +44 -45
- package/theme-chalk/src/space.scss +17 -8
- package/theme-chalk/src/splitter.scss +49 -81
- package/theme-chalk/src/switch.scss +36 -54
- package/theme-chalk/src/text.scss +0 -1
- package/theme-chalk/src/time-select.scss +17 -0
- package/theme-chalk/src/transfer.scss +223 -120
- package/theme-chalk/src/upload.scss +176 -2
- package/web-types.json +1 -1
- package/es/components/form/src/form-label-wrap.mjs +0 -72
- package/es/components/form/src/form-label-wrap.mjs.map +0 -1
- package/es/components/form/src/utils.d.ts +0 -13
- package/lib/components/form/src/form-label-wrap.js +0 -73
- package/lib/components/form/src/form-label-wrap.js.map +0 -1
- package/lib/components/form/src/utils.d.ts +0 -13
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from "../../../constants/event.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { isNumber } from "../../../utils/types.mjs";
|
|
3
3
|
import { ArrowDown, CircleClose } from "../../../utils/vue/builtin-icons.mjs";
|
|
4
4
|
import { buildProps, definePropType } from "../../../utils/vue/props/runtime.mjs";
|
|
5
5
|
import { iconPropType } from "../../../utils/vue/icon.mjs";
|
|
@@ -9,7 +9,6 @@ import { useAriaProps } from "../../../hooks/use-aria/index.mjs";
|
|
|
9
9
|
import { useTooltipContentProps } from "../../tooltip/src/content.mjs";
|
|
10
10
|
import { tagProps } from "../../tag/src/tag.mjs";
|
|
11
11
|
import { defaultProps } from "./useProps.mjs";
|
|
12
|
-
import { placements } from "@popperjs/core";
|
|
13
12
|
|
|
14
13
|
//#region ../../packages/components/select-v2/src/defaults.ts
|
|
15
14
|
const selectV2Props = buildProps({
|
|
@@ -88,18 +87,12 @@ const selectV2Props = buildProps({
|
|
|
88
87
|
required: true
|
|
89
88
|
},
|
|
90
89
|
placeholder: { type: String },
|
|
91
|
-
teleported: useTooltipContentProps.teleported,
|
|
92
|
-
mobile: Boolean,
|
|
93
90
|
persistent: {
|
|
94
91
|
type: Boolean,
|
|
95
92
|
default: true
|
|
96
93
|
},
|
|
97
94
|
popperClass: useTooltipContentProps.popperClass,
|
|
98
95
|
popperStyle: useTooltipContentProps.popperStyle,
|
|
99
|
-
popperOptions: {
|
|
100
|
-
type: definePropType(Object),
|
|
101
|
-
default: () => ({})
|
|
102
|
-
},
|
|
103
96
|
remote: Boolean,
|
|
104
97
|
debounce: {
|
|
105
98
|
type: Number,
|
|
@@ -119,29 +112,7 @@ const selectV2Props = buildProps({
|
|
|
119
112
|
type: Boolean,
|
|
120
113
|
default: true
|
|
121
114
|
},
|
|
122
|
-
offset: {
|
|
123
|
-
type: Number,
|
|
124
|
-
default: 12
|
|
125
|
-
},
|
|
126
115
|
remoteShowSuffix: Boolean,
|
|
127
|
-
showArrow: {
|
|
128
|
-
type: Boolean,
|
|
129
|
-
default: true
|
|
130
|
-
},
|
|
131
|
-
placement: {
|
|
132
|
-
type: definePropType(String),
|
|
133
|
-
values: placements,
|
|
134
|
-
default: "bottom-start"
|
|
135
|
-
},
|
|
136
|
-
fallbackPlacements: {
|
|
137
|
-
type: definePropType(Array),
|
|
138
|
-
default: [
|
|
139
|
-
"bottom-start",
|
|
140
|
-
"top-start",
|
|
141
|
-
"right",
|
|
142
|
-
"left"
|
|
143
|
-
]
|
|
144
|
-
},
|
|
145
116
|
tagType: {
|
|
146
117
|
...tagProps.type,
|
|
147
118
|
default: "info"
|
|
@@ -154,14 +125,6 @@ const selectV2Props = buildProps({
|
|
|
154
125
|
type: [String, Number],
|
|
155
126
|
default: 0
|
|
156
127
|
},
|
|
157
|
-
appendTo: useTooltipContentProps.appendTo,
|
|
158
|
-
fitInputWidth: {
|
|
159
|
-
type: [Boolean, Number],
|
|
160
|
-
default: true,
|
|
161
|
-
validator(val) {
|
|
162
|
-
return isBoolean(val) || isNumber(val);
|
|
163
|
-
}
|
|
164
|
-
},
|
|
165
128
|
suffixIcon: {
|
|
166
129
|
type: iconPropType,
|
|
167
130
|
default: ArrowDown
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/defaults.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport {\n useAriaProps,\n useEmptyValuesProps,\n useSizeProp,\n} from '@element-plus/hooks'\nimport {\n ArrowDown,\n CircleClose,\n buildProps,\n definePropType,\n iconPropType,\n isBoolean,\n isNumber,\n} from '@element-plus/utils'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { tagProps } from '../../tag'\nimport { defaultProps } from './useProps'\n\nimport type SelectV2 from './select.vue'\nimport type { Option, OptionType } from './select.types'\nimport type { Props } from './useProps'\nimport type { EmitFn } from '@element-plus/utils/vue/typescript'\nimport type {\n CSSProperties,\n ExtractPropTypes,\n ExtractPublicPropTypes,\n} from 'vue'\nimport type {\n Options,\n Placement,\n PopperEffect,\n} from '@element-plus/components/popper'\n/**\n * @description Tag tooltip configuration interface\n */\nexport interface TagTooltipProps {\n appendTo?: string | HTMLElement\n placement?: Placement\n fallbackPlacements?: Placement[]\n effect?: PopperEffect\n popperClass?: string\n popperStyle?: string | CSSProperties\n transition?: string\n teleported?: boolean\n popperOptions?: Partial<Options>\n showAfter?: number\n hideAfter?: number\n autoClose?: number\n offset?: number\n}\n\nexport const selectV2Props = buildProps({\n /**\n * @description whether creating new items is allowed. To use this, `filterable` must be true\n */\n allowCreate: Boolean,\n /**\n * @description autocomplete of select input\n */\n autocomplete: {\n type: definePropType<'none' | 'both' | 'list' | 'inline'>(String),\n default: 'none',\n },\n /**\n * @description for non-filterable Select, this prop decides if the option menu pops up when the input is focused\n */\n automaticDropdown: Boolean,\n /**\n * @description whether select can be cleared\n */\n clearable: Boolean,\n /**\n * @description custom clear icon\n */\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n /**\n * @description tooltip theme, built-in theme: `dark` / `light`\n */\n effect: {\n type: definePropType<PopperEffect>(String),\n default: 'light',\n },\n /**\n * @description whether to collapse tags to a text when multiple selecting\n */\n collapseTags: Boolean,\n /**\n * @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true\n */\n collapseTagsTooltip: Boolean,\n /**\n * @description configuration object for the collapse-tags tooltip. To use this, `collapse-tags` and `collapse-tags-tooltip` must be true\n */\n tagTooltip: {\n type: definePropType<TagTooltipProps>(Object),\n default: () => ({}),\n },\n /**\n * @description The max tags number to be shown. To use this, `collapse-tags` must be true\n */\n maxCollapseTags: {\n type: Number,\n default: 1,\n },\n /**\n * @description\n */\n defaultFirstOption: Boolean,\n /**\n * @description is disabled\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description Estimated item height for variable option sizes. Defaults to fixed `itemHeight` when omitted.\n */\n estimatedOptionHeight: {\n type: Number,\n default: undefined,\n },\n /**\n * @description whether Select is filterable\n */\n filterable: Boolean,\n /**\n * @description custom filter method, the first parameter is the current input value. To use this, `filterable` must be true\n */\n filterMethod: {\n type: definePropType<(query: string) => void>(Function),\n },\n /**\n * @description The height of the dropdown panel, 34px for each item\n */\n height: {\n type: Number,\n default: 274, // same as select dropdown menu\n },\n /**\n * @description The height of the dropdown item\n */\n itemHeight: {\n type: Number,\n default: 34,\n },\n /**\n * @description native input id\n */\n id: String,\n /**\n * @description whether Select is loading data from server\n */\n loading: Boolean,\n /**\n * @description displayed text while loading data from server, default is 'Loading'\n */\n loadingText: String,\n /**\n * @description biding value\n */\n modelValue: {\n type: definePropType<\n any[] | string | number | boolean | Record<string, any> | any\n >([Array, String, Number, Boolean, Object]),\n default: undefined,\n },\n /**\n * @description is multiple\n */\n multiple: Boolean,\n /**\n * @description maximum number of options user can select when multiple is true. No limit when set to 0\n */\n multipleLimit: {\n type: Number,\n default: 0,\n },\n /**\n * @description the name attribute of select input\n */\n name: String,\n /**\n * @description displayed text when there is no options, you can also use slot empty, the default is 'No Data'\n */\n noDataText: String,\n /**\n * @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'\n */\n noMatchText: String,\n /**\n * @description function that gets called when the input value changes. Its parameter is the current input value. To use this, `filterable` must be true\n */\n remoteMethod: {\n type: definePropType<(query: string) => void>(Function),\n },\n /**\n * @description whether reserve the keyword after select filtered option.\n */\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n /**\n * @description data of the options, the key of `value` and `label` can be customize by `props`\n */\n options: {\n type: definePropType<OptionType[]>(Array),\n required: true,\n },\n /**\n * @description placeholder, the default is 'Please select'\n */\n placeholder: {\n type: String,\n },\n /**\n * @description whether select dropdown is teleported, if `true` it will be teleported to where `append-to` sets\n */\n teleported: useTooltipContentProps.teleported,\n /**\n * @description force the select to use the mobile interaction model regardless of viewport width\n */\n mobile: Boolean,\n /**\n * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description custom class name for Select's dropdown\n */\n popperClass: useTooltipContentProps.popperClass,\n /**\n * @description custom style for Select's dropdown\n */\n popperStyle: useTooltipContentProps.popperStyle,\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}) as Partial<Options>,\n },\n /**\n * @description whether search data from server\n */\n remote: Boolean,\n /**\n * @description debounce delay during remote search, in milliseconds\n */\n debounce: {\n type: Number,\n default: 300,\n },\n /**\n * @description size of component\n */\n size: useSizeProp,\n /**\n * @description configuration options, see the following table\n */\n props: {\n type: definePropType<Props>(Object),\n default: () => defaultProps,\n },\n /**\n * @description unique identity key name for value, required when value is an object\n */\n valueKey: {\n type: String,\n default: 'value',\n },\n /**\n * @description Controls whether the scrollbar is always displayed\n */\n scrollbarAlwaysOn: Boolean,\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description offset of the dropdown\n */\n offset: {\n type: Number,\n default: 12,\n },\n /**\n * @description in remote search method show suffix icon\n */\n remoteShowSuffix: Boolean,\n /**\n * @description Determines whether the arrow is displayed\n */\n showArrow: {\n type: Boolean,\n default: true,\n },\n /**\n * @description position of dropdown\n */\n placement: {\n type: definePropType<Placement>(String),\n values: placements,\n default: 'bottom-start',\n },\n /**\n * @description list of possible positions for dropdown\n */\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: ['bottom-start', 'top-start', 'right', 'left'],\n },\n /**\n * @description tag type\n */\n tagType: { ...tagProps.type, default: 'info' },\n /**\n * @description tag effect\n */\n tagEffect: { ...tagProps.effect, default: 'light' },\n /**\n * @description tabindex for input\n */\n tabindex: {\n type: [String, Number],\n default: 0,\n },\n /**\n * @description which element the select dropdown appends to\n */\n appendTo: useTooltipContentProps.appendTo,\n /**\n * @description if it is `true`, the width of the dropdown panel is the same as the input box.\n * if it is `false`, the width is automatically calculated based on the value of `label`,\n * or it can be set to a number to make it a fixed width\n */\n fitInputWidth: {\n type: [Boolean, Number],\n default: true,\n validator(val) {\n return isBoolean(val) || isNumber(val)\n },\n },\n suffixIcon: {\n type: iconPropType,\n default: ArrowDown,\n },\n ...useEmptyValuesProps,\n ...useAriaProps(['ariaLabel']),\n} as const)\n\nexport const optionV2Props = buildProps({\n data: Array,\n disabled: Boolean,\n hovering: Boolean,\n item: {\n type: definePropType<Option>(Object),\n required: true,\n },\n index: Number,\n style: Object,\n selected: Boolean,\n created: Boolean,\n} as const)\n\n/* eslint-disable @typescript-eslint/no-unused-vars */\nexport const selectV2Emits = {\n [UPDATE_MODEL_EVENT]: (val: SelectV2Props['modelValue']) => true,\n [CHANGE_EVENT]: (val: SelectV2Props['modelValue']) => true,\n 'remove-tag': (val: unknown) => true,\n 'visible-change': (visible: boolean) => true,\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n}\nexport const optionV2Emits = {\n hover: (index?: number) => isNumber(index),\n select: (val: Option, index?: number) => true,\n}\n/* eslint-enable @typescript-eslint/no-unused-vars */\n\nexport type SelectV2Props = ExtractPropTypes<typeof selectV2Props>\nexport type SelectV2PropsPublic = ExtractPublicPropTypes<typeof selectV2Props>\nexport type OptionV2Props = ExtractPropTypes<typeof optionV2Props>\nexport type OptionV2PropsPublic = ExtractPublicPropTypes<typeof optionV2Props>\nexport type SelectV2EmitFn = EmitFn<typeof selectV2Emits>\nexport type OptionV2EmitFn = EmitFn<typeof optionV2Emits>\n\nexport type SelectV2Instance = InstanceType<typeof SelectV2> & unknown\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"defaults.mjs","names":[],"sources":["../../../../../../packages/components/select-v2/src/defaults.ts"],"sourcesContent":["import {\n useAriaProps,\n useEmptyValuesProps,\n useSizeProp,\n} from '@element-plus/hooks'\nimport {\n ArrowDown,\n CircleClose,\n buildProps,\n definePropType,\n iconPropType,\n isNumber,\n} from '@element-plus/utils'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { tagProps } from '../../tag'\nimport { defaultProps } from './useProps'\n\nimport type SelectV2 from './select.vue'\nimport type { Option, OptionType } from './select.types'\nimport type { Props } from './useProps'\nimport type { EmitFn } from '@element-plus/utils/vue/typescript'\nimport type {\n CSSProperties,\n ExtractPropTypes,\n ExtractPublicPropTypes,\n} from 'vue'\nimport type { PopperEffect } from '@element-plus/components/popper'\n/**\n * @description Tag tooltip configuration interface\n */\nexport interface TagTooltipProps {\n effect?: PopperEffect\n popperClass?: string\n popperStyle?: string | CSSProperties\n transition?: string\n showAfter?: number\n hideAfter?: number\n autoClose?: number\n}\n\nexport const selectV2Props = buildProps({\n /**\n * @description whether creating new items is allowed. To use this, `filterable` must be true\n */\n allowCreate: Boolean,\n /**\n * @description autocomplete of select input\n */\n autocomplete: {\n type: definePropType<'none' | 'both' | 'list' | 'inline'>(String),\n default: 'none',\n },\n /**\n * @description for non-filterable Select, this prop decides if the option menu pops up when the input is focused\n */\n automaticDropdown: Boolean,\n /**\n * @description whether select can be cleared\n */\n clearable: Boolean,\n /**\n * @description custom clear icon\n */\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n /**\n * @description tooltip theme, built-in theme: `dark` / `light`\n */\n effect: {\n type: definePropType<PopperEffect>(String),\n default: 'light',\n },\n /**\n * @description whether to collapse tags to a text when multiple selecting\n */\n collapseTags: Boolean,\n /**\n * @description whether show all selected tags when tapping the collapsed summary. To use this, `collapse-tags` must be true\n */\n collapseTagsTooltip: Boolean,\n /**\n * @description configuration object for the collapse-tags tooltip. To use this, `collapse-tags` and `collapse-tags-tooltip` must be true\n */\n tagTooltip: {\n type: definePropType<TagTooltipProps>(Object),\n default: () => ({}),\n },\n /**\n * @description The max tags number to be shown. To use this, `collapse-tags` must be true\n */\n maxCollapseTags: {\n type: Number,\n default: 1,\n },\n /**\n * @description\n */\n defaultFirstOption: Boolean,\n /**\n * @description is disabled\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description Estimated item height for variable option sizes. Defaults to fixed `itemHeight` when omitted.\n */\n estimatedOptionHeight: {\n type: Number,\n default: undefined,\n },\n /**\n * @description whether Select is filterable\n */\n filterable: Boolean,\n /**\n * @description custom filter method, the first parameter is the current input value. To use this, `filterable` must be true\n */\n filterMethod: {\n type: definePropType<(query: string) => void>(Function),\n },\n /**\n * @description The height of the dropdown panel, 34px for each item\n */\n height: {\n type: Number,\n default: 274, // same as select dropdown menu\n },\n /**\n * @description The height of the dropdown item\n */\n itemHeight: {\n type: Number,\n default: 34,\n },\n /**\n * @description native input id\n */\n id: String,\n /**\n * @description whether Select is loading data from server\n */\n loading: Boolean,\n /**\n * @description displayed text while loading data from server, default is 'Loading'\n */\n loadingText: String,\n /**\n * @description biding value\n */\n modelValue: {\n type: definePropType<\n any[] | string | number | boolean | Record<string, any> | any\n >([Array, String, Number, Boolean, Object]),\n default: undefined,\n },\n /**\n * @description is multiple\n */\n multiple: Boolean,\n /**\n * @description maximum number of options user can select when multiple is true. No limit when set to 0\n */\n multipleLimit: {\n type: Number,\n default: 0,\n },\n /**\n * @description the name attribute of select input\n */\n name: String,\n /**\n * @description displayed text when there is no options, you can also use slot empty, the default is 'No Data'\n */\n noDataText: String,\n /**\n * @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'\n */\n noMatchText: String,\n /**\n * @description function that gets called when the input value changes. Its parameter is the current input value. To use this, `filterable` must be true\n */\n remoteMethod: {\n type: definePropType<(query: string) => void>(Function),\n },\n /**\n * @description whether reserve the keyword after select filtered option.\n */\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n /**\n * @description data of the options, the key of `value` and `label` can be customize by `props`\n */\n options: {\n type: definePropType<OptionType[]>(Array),\n required: true,\n },\n /**\n * @description placeholder, the default is 'Please select'\n */\n placeholder: {\n type: String,\n },\n /**\n * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description custom class name for Select's dropdown\n */\n popperClass: useTooltipContentProps.popperClass,\n /**\n * @description custom style for Select's dropdown\n */\n popperStyle: useTooltipContentProps.popperStyle,\n /**\n * @description whether search data from server\n */\n remote: Boolean,\n /**\n * @description debounce delay during remote search, in milliseconds\n */\n debounce: {\n type: Number,\n default: 300,\n },\n /**\n * @description size of component\n */\n size: useSizeProp,\n /**\n * @description configuration options, see the following table\n */\n props: {\n type: definePropType<Props>(Object),\n default: () => defaultProps,\n },\n /**\n * @description unique identity key name for value, required when value is an object\n */\n valueKey: {\n type: String,\n default: 'value',\n },\n /**\n * @description Controls whether the scrollbar is always displayed\n */\n scrollbarAlwaysOn: Boolean,\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description in remote search method show suffix icon\n */\n remoteShowSuffix: Boolean,\n /**\n * @description tag type\n */\n tagType: { ...tagProps.type, default: 'info' },\n /**\n * @description tag effect\n */\n tagEffect: { ...tagProps.effect, default: 'light' },\n /**\n * @description tabindex for input\n */\n tabindex: {\n type: [String, Number],\n default: 0,\n },\n suffixIcon: {\n type: iconPropType,\n default: ArrowDown,\n },\n ...useEmptyValuesProps,\n ...useAriaProps(['ariaLabel']),\n} as const)\n\nexport const optionV2Props = buildProps({\n data: Array,\n disabled: Boolean,\n hovering: Boolean,\n item: {\n type: definePropType<Option>(Object),\n required: true,\n },\n index: Number,\n style: Object,\n selected: Boolean,\n created: Boolean,\n} as const)\n\n/* eslint-disable @typescript-eslint/no-unused-vars */\nexport const selectV2Emits = {\n [UPDATE_MODEL_EVENT]: (val: SelectV2Props['modelValue']) => true,\n [CHANGE_EVENT]: (val: SelectV2Props['modelValue']) => true,\n 'remove-tag': (val: unknown) => true,\n 'visible-change': (visible: boolean) => true,\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n}\nexport const optionV2Emits = {\n hover: (index?: number) => isNumber(index),\n select: (val: Option, index?: number) => true,\n}\n/* eslint-enable @typescript-eslint/no-unused-vars */\n\nexport type SelectV2Props = ExtractPropTypes<typeof selectV2Props>\nexport type SelectV2PropsPublic = ExtractPublicPropTypes<typeof selectV2Props>\nexport type OptionV2Props = ExtractPropTypes<typeof optionV2Props>\nexport type OptionV2PropsPublic = ExtractPublicPropTypes<typeof optionV2Props>\nexport type SelectV2EmitFn = EmitFn<typeof selectV2Emits>\nexport type OptionV2EmitFn = EmitFn<typeof optionV2Emits>\n\nexport type SelectV2Instance = InstanceType<typeof SelectV2> & unknown\n"],"mappings":";;;;;;;;;;;;;AAyCA,MAAa,gBAAgB,WAAW;CAItC,aAAa;CAIb,cAAc;EACZ,MAAM,eAAoD,OAAO;EACjE,SAAS;EACV;CAID,mBAAmB;CAInB,WAAW;CAIX,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,QAAQ;EACN,MAAM,eAA6B,OAAO;EAC1C,SAAS;EACV;CAID,cAAc;CAId,qBAAqB;CAIrB,YAAY;EACV,MAAM,eAAgC,OAAO;EAC7C,gBAAgB,EAAE;EACnB;CAID,iBAAiB;EACf,MAAM;EACN,SAAS;EACV;CAID,oBAAoB;CAIpB,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,uBAAuB;EACrB,MAAM;EACN,SAAS;EACV;CAID,YAAY;CAIZ,cAAc,EACZ,MAAM,eAAwC,SAAS,EACxD;CAID,QAAQ;EACN,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,IAAI;CAIJ,SAAS;CAIT,aAAa;CAIb,YAAY;EACV,MAAM,eAEJ;GAAC;GAAO;GAAQ;GAAQ;GAAS;GAAO,CAAC;EAC3C,SAAS;EACV;CAID,UAAU;CAIV,eAAe;EACb,MAAM;EACN,SAAS;EACV;CAID,MAAM;CAIN,YAAY;CAIZ,aAAa;CAIb,cAAc,EACZ,MAAM,eAAwC,SAAS,EACxD;CAID,gBAAgB;EACd,MAAM;EACN,SAAS;EACV;CAID,SAAS;EACP,MAAM,eAA6B,MAAM;EACzC,UAAU;EACX;CAID,aAAa,EACX,MAAM,QACP;CAID,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,aAAa,uBAAuB;CAIpC,aAAa,uBAAuB;CAIpC,QAAQ;CAIR,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,MAAM;CAIN,OAAO;EACL,MAAM,eAAsB,OAAO;EACnC,eAAe;EAChB;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,mBAAmB;CAInB,eAAe;EACb,MAAM;EACN,SAAS;EACV;CAID,kBAAkB;CAIlB,SAAS;EAAE,GAAG,SAAS;EAAM,SAAS;EAAQ;CAI9C,WAAW;EAAE,GAAG,SAAS;EAAQ,SAAS;EAAS;CAInD,UAAU;EACR,MAAM,CAAC,QAAQ,OAAO;EACtB,SAAS;EACV;CACD,YAAY;EACV,MAAM;EACN,SAAS;EACV;CACD,GAAG;CACH,GAAG,aAAa,CAAC,YAAY,CAAC;CAC/B,CAAU;AAEX,MAAa,gBAAgB,WAAW;CACtC,MAAM;CACN,UAAU;CACV,UAAU;CACV,MAAM;EACJ,MAAM,eAAuB,OAAO;EACpC,UAAU;EACX;CACD,OAAO;CACP,OAAO;CACP,UAAU;CACV,SAAS;CACV,CAAU;AAGX,MAAa,gBAAgB;EAC1B,sBAAsB,QAAqC;EAC3D,gBAAgB,QAAqC;CACtD,eAAe,QAAiB;CAChC,mBAAmB,YAAqB;CACxC,QAAQ,QAAoB,eAAe;CAC3C,OAAO,QAAoB,eAAe;CAC1C,aAAa;CACd;AACD,MAAa,gBAAgB;CAC3B,QAAQ,UAAmB,SAAS,MAAM;CAC1C,SAAS,KAAa,UAAmB;CAC1C"}
|
|
@@ -28,36 +28,23 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
28
28
|
const _directive_click_outside = resolveDirective("click-outside");
|
|
29
29
|
return withDirectives((openBlock(), createElementBlock("div", {
|
|
30
30
|
ref: "selectRef",
|
|
31
|
-
class: normalizeClass([
|
|
32
|
-
_ctx.nsSelect.b(),
|
|
33
|
-
_ctx.nsSelect.m(_ctx.selectSize),
|
|
34
|
-
_ctx.nsSelect.is("mobile", _ctx.isMobile)
|
|
35
|
-
]),
|
|
31
|
+
class: normalizeClass([_ctx.nsSelect.b(), _ctx.nsSelect.m(_ctx.selectSize)]),
|
|
36
32
|
onMouseenter: _cache[16] || (_cache[16] = ($event) => _ctx.states.inputHovering = true),
|
|
37
33
|
onMouseleave: _cache[17] || (_cache[17] = ($event) => _ctx.states.inputHovering = false)
|
|
38
34
|
}, [createVNode(_component_el_tooltip, {
|
|
39
35
|
ref: "tooltipRef",
|
|
40
36
|
visible: _ctx.dropdownMenuVisible,
|
|
41
|
-
teleported:
|
|
42
|
-
"popper-class": [
|
|
43
|
-
_ctx.nsSelect.e("popper"),
|
|
44
|
-
_ctx.popperClass,
|
|
45
|
-
_ctx.nsSelect.is("mobile", _ctx.isMobile)
|
|
46
|
-
],
|
|
37
|
+
teleported: true,
|
|
38
|
+
"popper-class": [_ctx.nsSelect.e("popper"), _ctx.popperClass],
|
|
47
39
|
"popper-style": _ctx.popperStyle,
|
|
48
40
|
"gpu-acceleration": false,
|
|
49
41
|
"stop-popper-mouse-event": false,
|
|
50
|
-
"popper-options": _ctx.popperOptions,
|
|
51
|
-
"fallback-placements": _ctx.fallbackPlacements,
|
|
52
42
|
effect: _ctx.effect,
|
|
53
|
-
placement: _ctx.placement,
|
|
54
43
|
pure: "",
|
|
55
|
-
transition:
|
|
44
|
+
transition: `${_ctx.nsSelect.namespace.value}-fade-in-linear`,
|
|
56
45
|
trigger: "click",
|
|
57
46
|
persistent: _ctx.persistent,
|
|
58
|
-
"
|
|
59
|
-
"show-arrow": _ctx.showArrow,
|
|
60
|
-
offset: _ctx.offset,
|
|
47
|
+
"show-arrow": false,
|
|
61
48
|
onBeforeShow: _ctx.handleMenuEnter,
|
|
62
49
|
onHide: _cache[15] || (_cache[15] = ($event) => _ctx.states.isBeforeHide = false)
|
|
63
50
|
}, {
|
|
@@ -117,24 +104,14 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
117
104
|
key: 0,
|
|
118
105
|
ref: "tagTooltipRef",
|
|
119
106
|
disabled: _ctx.dropdownMenuVisible || !_ctx.collapseTagsTooltip,
|
|
120
|
-
"
|
|
121
|
-
"bottom",
|
|
122
|
-
"top",
|
|
123
|
-
"right",
|
|
124
|
-
"left"
|
|
125
|
-
],
|
|
107
|
+
trigger: "click",
|
|
126
108
|
effect: _ctx.tagTooltip?.effect ?? _ctx.effect,
|
|
127
|
-
placement: _ctx.tagTooltip?.placement ?? "bottom",
|
|
128
109
|
"popper-class": _ctx.tagTooltip?.popperClass ?? _ctx.popperClass,
|
|
129
110
|
"popper-style": _ctx.tagTooltip?.popperStyle ?? _ctx.popperStyle,
|
|
130
|
-
teleported: _ctx.tagTooltip?.teleported ?? _ctx.resolvedTeleported,
|
|
131
|
-
"append-to": _ctx.tagTooltip?.appendTo ?? _ctx.appendTo,
|
|
132
|
-
"popper-options": _ctx.tagTooltip?.popperOptions ?? _ctx.popperOptions,
|
|
133
111
|
transition: _ctx.tagTooltip?.transition,
|
|
134
112
|
"show-after": _ctx.tagTooltip?.showAfter,
|
|
135
113
|
"hide-after": _ctx.tagTooltip?.hideAfter,
|
|
136
|
-
"auto-close": _ctx.tagTooltip?.autoClose
|
|
137
|
-
offset: _ctx.tagTooltip?.offset
|
|
114
|
+
"auto-close": _ctx.tagTooltip?.autoClose
|
|
138
115
|
}, {
|
|
139
116
|
default: withCtx(() => [createElementVNode("div", {
|
|
140
117
|
ref: "collapseItemRef",
|
|
@@ -188,19 +165,13 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
188
165
|
_: 3
|
|
189
166
|
}, 8, [
|
|
190
167
|
"disabled",
|
|
191
|
-
"fallback-placements",
|
|
192
168
|
"effect",
|
|
193
|
-
"placement",
|
|
194
169
|
"popper-class",
|
|
195
170
|
"popper-style",
|
|
196
|
-
"teleported",
|
|
197
|
-
"append-to",
|
|
198
|
-
"popper-options",
|
|
199
171
|
"transition",
|
|
200
172
|
"show-after",
|
|
201
173
|
"hide-after",
|
|
202
|
-
"auto-close"
|
|
203
|
-
"offset"
|
|
174
|
+
"auto-close"
|
|
204
175
|
])) : createCommentVNode("v-if", true)]) : createCommentVNode("v-if", true),
|
|
205
176
|
createElementVNode("div", { class: normalizeClass([
|
|
206
177
|
_ctx.nsSelect.e("selected-item"),
|
|
@@ -363,18 +334,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
363
334
|
_: 3
|
|
364
335
|
}, 8, [
|
|
365
336
|
"visible",
|
|
366
|
-
"teleported",
|
|
367
337
|
"popper-class",
|
|
368
338
|
"popper-style",
|
|
369
|
-
"popper-options",
|
|
370
|
-
"fallback-placements",
|
|
371
339
|
"effect",
|
|
372
|
-
"placement",
|
|
373
340
|
"transition",
|
|
374
341
|
"persistent",
|
|
375
|
-
"append-to",
|
|
376
|
-
"show-arrow",
|
|
377
|
-
"offset",
|
|
378
342
|
"onBeforeShow"
|
|
379
343
|
])], 34)), [[
|
|
380
344
|
_directive_click_outside,
|
|
@@ -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=\"[\n nsSelect.b(),\n nsSelect.m(selectSize),\n nsSelect.is('mobile', isMobile),\n ]\"\n @mouseenter=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :teleported=\"resolvedTeleported\"\n :popper-class=\"[\n nsSelect.e('popper'),\n popperClass!,\n nsSelect.is('mobile', isMobile),\n ]\"\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=\"\n isMobile\n ? `${nsSelect.namespace.value}-fade-in-linear`\n : `${nsSelect.namespace.value}-zoom-in-top`\n \"\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 ?? resolvedTeleported\"\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 <ElIconContent :icon=\"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 <ElIconContent :icon=\"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 <ElIconContent :icon=\"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 || showMobileFooter\" #footer>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n <div\n v-if=\"showMobileFooter\"\n :class=\"[\n nsSelect.be('dropdown', 'footer'),\n nsSelect.e('mobile-actions'),\n ]\"\n @click.stop\n >\n <el-button @click.stop=\"cancelMobileSelection\">\n {{ mobileCancelText }}\n </el-button>\n <el-button type=\"primary\" @click.stop=\"confirmMobileSelection\">\n {{ mobileConfirmText }}\n </el-button>\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 ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport ElButton from '@element-plus/components/button'\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 ElIconContent,\n ElButton,\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: API.selectionModelValue,\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=\"true\"\n :popper-class=\"[nsSelect.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n :effect=\"effect\"\n pure\n :transition=\"`${nsSelect.namespace.value}-fade-in-linear`\"\n trigger=\"click\"\n :persistent=\"persistent\"\n :show-arrow=\"false\"\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 trigger=\"click\"\n :effect=\"tagTooltip?.effect ?? effect\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\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 <ElIconContent :icon=\"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 <ElIconContent :icon=\"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 <ElIconContent :icon=\"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 || showMobileFooter\" #footer>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n <div\n v-if=\"showMobileFooter\"\n :class=\"[\n nsSelect.be('dropdown', 'footer'),\n nsSelect.e('mobile-actions'),\n ]\"\n @click.stop\n >\n <el-button @click.stop=\"cancelMobileSelection\">\n {{ mobileCancelText }}\n </el-button>\n <el-button type=\"primary\" @click.stop=\"confirmMobileSelection\">\n {{ mobileConfirmText }}\n </el-button>\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 ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport ElButton from '@element-plus/components/button'\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 ElIconContent,\n ElButton,\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: API.selectionModelValue,\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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"}
|
|
@@ -92,8 +92,6 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
92
92
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
93
93
|
__epPropKey: true;
|
|
94
94
|
};
|
|
95
|
-
readonly teleported: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
96
|
-
readonly mobile: BooleanConstructor;
|
|
97
95
|
readonly persistent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
98
96
|
readonly popperClass: {
|
|
99
97
|
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | {
|
|
@@ -203,7 +201,6 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
203
201
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
204
202
|
__epPropKey: true;
|
|
205
203
|
};
|
|
206
|
-
readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => Partial<Options>, boolean>;
|
|
207
204
|
readonly remote: BooleanConstructor;
|
|
208
205
|
readonly debounce: EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
|
|
209
206
|
readonly size: {
|
|
@@ -216,11 +213,7 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
216
213
|
readonly valueKey: EpPropFinalized<StringConstructor, unknown, unknown, "value", boolean>;
|
|
217
214
|
readonly scrollbarAlwaysOn: BooleanConstructor;
|
|
218
215
|
readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
219
|
-
readonly offset: EpPropFinalized<NumberConstructor, unknown, unknown, 12, boolean>;
|
|
220
216
|
readonly remoteShowSuffix: BooleanConstructor;
|
|
221
|
-
readonly showArrow: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
222
|
-
readonly placement: EpPropFinalized<(new (...args: any[]) => "top" | "auto" | "bottom" | "left" | "bottom-start" | "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" | "left" | "bottom-start" | "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>;
|
|
223
|
-
readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | (((new (...args: any[]) => Placement[]) | (() => Placement[])) | null)[], unknown, unknown, readonly ["bottom-start", "top-start", "right", "left"], boolean>;
|
|
224
217
|
readonly tagType: {
|
|
225
218
|
readonly default: "info";
|
|
226
219
|
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "info" | "primary" | "success" | "warning" | "danger", unknown>>;
|
|
@@ -236,13 +229,6 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
236
229
|
readonly __epPropKey: true;
|
|
237
230
|
};
|
|
238
231
|
readonly tabindex: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, 0, boolean>;
|
|
239
|
-
readonly appendTo: {
|
|
240
|
-
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>>;
|
|
241
|
-
readonly required: false;
|
|
242
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
243
|
-
__epPropKey: true;
|
|
244
|
-
};
|
|
245
|
-
readonly fitInputWidth: EpPropFinalized<readonly [BooleanConstructor, NumberConstructor], unknown, number | boolean, true, boolean>;
|
|
246
232
|
readonly suffixIcon: EpPropFinalized<(new (...args: any[]) => IconPropType & {}) | (() => IconPropType) | (((new (...args: any[]) => IconPropType & {}) | (() => IconPropType)) | null)[], unknown, unknown, vue.DefineComponent<{}, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
247
233
|
[key: string]: any;
|
|
248
234
|
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>;
|
|
@@ -277,8 +263,6 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
277
263
|
})[]>;
|
|
278
264
|
iconComponent: vue.ComputedRef<IconPropType>;
|
|
279
265
|
iconReverse: vue.ComputedRef<string>;
|
|
280
|
-
isMobile: vue.ComputedRef<boolean>;
|
|
281
|
-
resolvedTeleported: vue.ComputedRef<boolean>;
|
|
282
266
|
selectionModelValue: vue.ComputedRef<any>;
|
|
283
267
|
showMobileFooter: vue.ComputedRef<boolean>;
|
|
284
268
|
mobileCancelText: vue.ComputedRef<string>;
|
|
@@ -456,8 +440,6 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
456
440
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
457
441
|
__epPropKey: true;
|
|
458
442
|
};
|
|
459
|
-
readonly teleported: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
460
|
-
readonly mobile: BooleanConstructor;
|
|
461
443
|
readonly persistent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
462
444
|
readonly popperClass: {
|
|
463
445
|
readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | {
|
|
@@ -567,7 +549,6 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
567
549
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
568
550
|
__epPropKey: true;
|
|
569
551
|
};
|
|
570
|
-
readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => Partial<Options>, boolean>;
|
|
571
552
|
readonly remote: BooleanConstructor;
|
|
572
553
|
readonly debounce: EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
|
|
573
554
|
readonly size: {
|
|
@@ -580,11 +561,7 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
580
561
|
readonly valueKey: EpPropFinalized<StringConstructor, unknown, unknown, "value", boolean>;
|
|
581
562
|
readonly scrollbarAlwaysOn: BooleanConstructor;
|
|
582
563
|
readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
583
|
-
readonly offset: EpPropFinalized<NumberConstructor, unknown, unknown, 12, boolean>;
|
|
584
564
|
readonly remoteShowSuffix: BooleanConstructor;
|
|
585
|
-
readonly showArrow: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
586
|
-
readonly placement: EpPropFinalized<(new (...args: any[]) => "top" | "auto" | "bottom" | "left" | "bottom-start" | "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" | "left" | "bottom-start" | "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>;
|
|
587
|
-
readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | (((new (...args: any[]) => Placement[]) | (() => Placement[])) | null)[], unknown, unknown, readonly ["bottom-start", "top-start", "right", "left"], boolean>;
|
|
588
565
|
readonly tagType: {
|
|
589
566
|
readonly default: "info";
|
|
590
567
|
readonly type: vue.PropType<EpPropMergeType<StringConstructor, "info" | "primary" | "success" | "warning" | "danger", unknown>>;
|
|
@@ -600,13 +577,6 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
600
577
|
readonly __epPropKey: true;
|
|
601
578
|
};
|
|
602
579
|
readonly tabindex: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, 0, boolean>;
|
|
603
|
-
readonly appendTo: {
|
|
604
|
-
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>>;
|
|
605
|
-
readonly required: false;
|
|
606
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
607
|
-
__epPropKey: true;
|
|
608
|
-
};
|
|
609
|
-
readonly fitInputWidth: EpPropFinalized<readonly [BooleanConstructor, NumberConstructor], unknown, number | boolean, true, boolean>;
|
|
610
580
|
readonly suffixIcon: EpPropFinalized<(new (...args: any[]) => IconPropType & {}) | (() => IconPropType) | (((new (...args: any[]) => IconPropType & {}) | (() => IconPropType)) | null)[], unknown, unknown, vue.DefineComponent<{}, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
611
581
|
[key: string]: any;
|
|
612
582
|
}>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>, boolean>;
|
|
@@ -619,16 +589,12 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
619
589
|
"onVisible-change"?: ((visible: boolean) => any) | undefined;
|
|
620
590
|
"onRemove-tag"?: ((val: unknown) => any) | undefined;
|
|
621
591
|
}>, {
|
|
622
|
-
readonly offset: number;
|
|
623
|
-
readonly teleported: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
624
592
|
readonly props: Props;
|
|
625
593
|
readonly effect: EpPropMergeType<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown>;
|
|
626
594
|
readonly height: number;
|
|
627
595
|
readonly valueKey: string;
|
|
628
596
|
readonly modelValue: any;
|
|
629
597
|
readonly debounce: number;
|
|
630
|
-
readonly placement: EpPropMergeType<(new (...args: any[]) => "top" | "auto" | "bottom" | "left" | "bottom-start" | "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" | "left" | "bottom-start" | "right" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement)) | null)[], Placement, unknown>;
|
|
631
|
-
readonly fitInputWidth: EpPropMergeType<readonly [BooleanConstructor, NumberConstructor], unknown, number | boolean>;
|
|
632
598
|
readonly disabled: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
633
599
|
readonly autocomplete: EpPropMergeType<(new (...args: any[]) => "inline" | "none" | "both" | "list") | (() => "inline" | "none" | "both" | "list") | (((new (...args: any[]) => "inline" | "none" | "both" | "list") | (() => "inline" | "none" | "both" | "list")) | null)[], unknown, unknown>;
|
|
634
600
|
readonly clearable: boolean;
|
|
@@ -636,11 +602,7 @@ declare const __VLS_export: vue.DefineComponent<vue.ExtractPropTypes<{
|
|
|
636
602
|
readonly suffixIcon: IconPropType;
|
|
637
603
|
readonly tabindex: EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
|
|
638
604
|
readonly validateEvent: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
639
|
-
readonly mobile: boolean;
|
|
640
605
|
readonly multiple: boolean;
|
|
641
|
-
readonly fallbackPlacements: Placement[];
|
|
642
|
-
readonly popperOptions: Partial<Options>;
|
|
643
|
-
readonly showArrow: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
644
606
|
readonly persistent: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
645
607
|
readonly loading: boolean;
|
|
646
608
|
readonly valueOnClear: EpPropMergeType<(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>;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { BORDER_HORIZONTAL_WIDTH } from "../../../constants/form.mjs";
|
|
2
2
|
import { isArray } from "../../../utils/types.mjs";
|
|
3
|
-
import ClickOutside from "../../../directives/click-outside/index.mjs";
|
|
4
3
|
import { useCalcInputWidth } from "../../../hooks/use-calc-input-width/index.mjs";
|
|
5
4
|
import { useId } from "../../../hooks/use-id/index.mjs";
|
|
6
5
|
import icon_content_default from "../../icon/src/icon-content.mjs";
|
|
7
6
|
import { ElIcon } from "../../icon/index.mjs";
|
|
8
7
|
import { ElTooltip } from "../../tooltip/index.mjs";
|
|
9
8
|
import { ElButton } from "../../button/index.mjs";
|
|
9
|
+
import ClickOutside from "../../../directives/click-outside/index.mjs";
|
|
10
10
|
import { ElTag } from "../../tag/index.mjs";
|
|
11
11
|
import { selectV2Emits, selectV2Props } from "./defaults.mjs";
|
|
12
12
|
import { selectV2InjectionKey } from "./token.mjs";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.vue_vue_type_script_lang.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=\"[\n nsSelect.b(),\n nsSelect.m(selectSize),\n nsSelect.is('mobile', isMobile),\n ]\"\n @mouseenter=\"states.inputHovering = true\"\n @mouseleave=\"states.inputHovering = false\"\n >\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownMenuVisible\"\n :teleported=\"resolvedTeleported\"\n :popper-class=\"[\n nsSelect.e('popper'),\n popperClass!,\n nsSelect.is('mobile', isMobile),\n ]\"\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=\"\n isMobile\n ? `${nsSelect.namespace.value}-fade-in-linear`\n : `${nsSelect.namespace.value}-zoom-in-top`\n \"\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 ?? resolvedTeleported\"\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 <ElIconContent :icon=\"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 <ElIconContent :icon=\"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 <ElIconContent :icon=\"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 || showMobileFooter\" #footer>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n <div\n v-if=\"showMobileFooter\"\n :class=\"[\n nsSelect.be('dropdown', 'footer'),\n nsSelect.e('mobile-actions'),\n ]\"\n @click.stop\n >\n <el-button @click.stop=\"cancelMobileSelection\">\n {{ mobileCancelText }}\n </el-button>\n <el-button type=\"primary\" @click.stop=\"confirmMobileSelection\">\n {{ mobileConfirmText }}\n </el-button>\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 ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport ElButton from '@element-plus/components/button'\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 ElIconContent,\n ElButton,\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: API.selectionModelValue,\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":";;;;;;;;;;;;;;;;;AAmXA,8CAAe,gBAAgB;CAC7B,MAAM;CACN,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;EACD;CACD,YAAY,EAAE,cAAc;CAC5B,OAAO;CACP,OAAO;CACP,MAAM,OAAO,EAAE,QAAQ;EACrB,MAAM,aAAa,eAAe;GAChC,MAAM,EAAE,YAAY,eAAe,aAAa;GAChD,MAAM,WAAW,WAAW,EAAC,GAAI;AAGjC,OAAI,QAAQ,cAAc,CACxB,QAAO,WAAW,gBAAgB;AAEpC,UAAO,WAAW,WAAW;IAC9B;EAED,MAAM,MAAM,UACV,SAAS;GACP,GAAG,OAAO,MAAM;GAChB;GACD,CAAC,EACF,KACF;EACA,MAAM,EAAE,eAAe,eAAe,mBAAkB;EACxD,MAAM,YAAY,OAAM;AAExB,UAAQ,sBAAsB;GAC5B,OAAO,SAAS;IACd,GAAG,OAAO,MAAM;IAChB,QAAQ,IAAI;IACZ,YAAY,IAAI;IACjB,CAAC;GACF,UAAU,IAAI;GACd,YAAY,IAAI;GAChB;GACA,UAAU,IAAI;GACd,SAAS,IAAI;GACb,oBAAoB,IAAI;GACxB,kBAAkB,IAAI;GACvB,CAAA;EAED,MAAM,gBAAgB,eAAe;AACnC,OAAI,CAAC,MAAM,SACT,QAAO,IAAI,OAAO;AAEpB,UAAO,IAAI,OAAO,cAAc,KAAK,MAAM,IAAI,SAAS,EAAC,CAAW;IACrE;AAED,SAAO;GACL,GAAG;GACH;GACA;GACA;GACA;GACA;GACA;GACF;;CAEH,CAAA"}
|
|
1
|
+
{"version":3,"file":"select.vue_vue_type_script_lang.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=\"true\"\n :popper-class=\"[nsSelect.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :gpu-acceleration=\"false\"\n :stop-popper-mouse-event=\"false\"\n :effect=\"effect\"\n pure\n :transition=\"`${nsSelect.namespace.value}-fade-in-linear`\"\n trigger=\"click\"\n :persistent=\"persistent\"\n :show-arrow=\"false\"\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 trigger=\"click\"\n :effect=\"tagTooltip?.effect ?? effect\"\n :popper-class=\"tagTooltip?.popperClass ?? popperClass\"\n :popper-style=\"tagTooltip?.popperStyle ?? popperStyle\"\n :transition=\"tagTooltip?.transition\"\n :show-after=\"tagTooltip?.showAfter\"\n :hide-after=\"tagTooltip?.hideAfter\"\n :auto-close=\"tagTooltip?.autoClose\"\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 <ElIconContent :icon=\"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 <ElIconContent :icon=\"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 <ElIconContent :icon=\"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 || showMobileFooter\" #footer>\n <div\n v-if=\"$slots.footer\"\n :class=\"nsSelect.be('dropdown', 'footer')\"\n @click.stop\n >\n <slot name=\"footer\" />\n </div>\n <div\n v-if=\"showMobileFooter\"\n :class=\"[\n nsSelect.be('dropdown', 'footer'),\n nsSelect.e('mobile-actions'),\n ]\"\n @click.stop\n >\n <el-button @click.stop=\"cancelMobileSelection\">\n {{ mobileCancelText }}\n </el-button>\n <el-button type=\"primary\" @click.stop=\"confirmMobileSelection\">\n {{ mobileConfirmText }}\n </el-button>\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 ElIconContent from '@element-plus/components/icon/src/icon-content.vue'\nimport ElButton from '@element-plus/components/button'\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 ElIconContent,\n ElButton,\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: API.selectionModelValue,\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":";;;;;;;;;;;;;;;;;AAsVA,8CAAe,gBAAgB;CAC7B,MAAM;CACN,YAAY;EACV;EACA;EACA;EACA;EACA;EACA;EACD;CACD,YAAY,EAAE,cAAc;CAC5B,OAAO;CACP,OAAO;CACP,MAAM,OAAO,EAAE,QAAQ;EACrB,MAAM,aAAa,eAAe;GAChC,MAAM,EAAE,YAAY,eAAe,aAAa;GAChD,MAAM,WAAW,WAAW,EAAC,GAAI;AAGjC,OAAI,QAAQ,cAAc,CACxB,QAAO,WAAW,gBAAgB;AAEpC,UAAO,WAAW,WAAW;IAC9B;EAED,MAAM,MAAM,UACV,SAAS;GACP,GAAG,OAAO,MAAM;GAChB;GACD,CAAC,EACF,KACF;EACA,MAAM,EAAE,eAAe,eAAe,mBAAkB;EACxD,MAAM,YAAY,OAAM;AAExB,UAAQ,sBAAsB;GAC5B,OAAO,SAAS;IACd,GAAG,OAAO,MAAM;IAChB,QAAQ,IAAI;IACZ,YAAY,IAAI;IACjB,CAAC;GACF,UAAU,IAAI;GACd,YAAY,IAAI;GAChB;GACA,UAAU,IAAI;GACd,SAAS,IAAI;GACb,oBAAoB,IAAI;GACxB,kBAAkB,IAAI;GACvB,CAAA;EAED,MAAM,gBAAgB,eAAe;AACnC,OAAI,CAAC,MAAM,SACT,QAAO,IAAI,OAAO;AAEpB,UAAO,IAAI,OAAO,cAAc,KAAK,MAAM,IAAI,SAAS,EAAC,CAAW;IACrE;AAED,SAAO;GACL,GAAG;GACH;GACA;GACA;GACA;GACA;GACA;GACF;;CAEH,CAAA"}
|