@element-plus/nightly 0.0.20260104 → 0.0.20260106
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/attributes.json +1 -1
- package/dist/index.css +1 -1
- package/dist/index.full.js +171 -26
- package/dist/index.full.min.js +14 -14
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +14 -14
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +169 -27
- 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 +2 -1
- package/es/component.mjs.map +1 -1
- package/es/components/affix/src/affix.mjs +1 -1
- package/es/components/autocomplete/index.mjs +2 -2
- package/es/components/autocomplete/src/autocomplete.mjs +60 -486
- package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete2.mjs +486 -60
- package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
- package/es/components/avatar/index.d.ts +8 -2
- package/es/components/avatar/index.mjs +9 -3
- package/es/components/avatar/index.mjs.map +1 -1
- package/es/components/avatar/src/avatar-group-props.d.ts +138 -0
- package/es/components/avatar/src/avatar-group-props.mjs +33 -0
- package/es/components/avatar/src/avatar-group-props.mjs.map +1 -0
- package/es/components/avatar/src/avatar-group.d.ts +274 -0
- package/es/components/avatar/src/avatar-group.mjs +61 -0
- package/es/components/avatar/src/avatar-group.mjs.map +1 -0
- package/es/components/avatar/src/avatar.d.ts +12 -2
- package/es/components/avatar/src/avatar.mjs +1 -3
- package/es/components/avatar/src/avatar.mjs.map +1 -1
- package/es/components/avatar/src/avatar.vue.d.ts +24 -6
- package/es/components/avatar/src/avatar2.mjs +20 -9
- package/es/components/avatar/src/avatar2.mjs.map +1 -1
- package/es/components/avatar/src/constants.d.ts +7 -0
- package/es/components/avatar/src/constants.mjs +6 -0
- package/es/components/avatar/src/constants.mjs.map +1 -0
- package/es/components/avatar/src/instance.d.ts +2 -0
- package/es/components/avatar-group/style/css.d.ts +3 -0
- package/es/components/avatar-group/style/css.mjs +4 -0
- package/es/components/avatar-group/style/css.mjs.map +1 -0
- package/es/components/avatar-group/style/index.d.ts +3 -0
- package/es/components/avatar-group/style/index.mjs +4 -0
- package/es/components/avatar-group/style/index.mjs.map +1 -0
- package/es/components/badge/index.mjs +2 -2
- package/es/components/badge/src/badge.mjs +83 -31
- package/es/components/badge/src/badge.mjs.map +1 -1
- package/es/components/badge/src/badge2.mjs +31 -83
- package/es/components/badge/src/badge2.mjs.map +1 -1
- package/es/components/breadcrumb/index.mjs +2 -2
- package/es/components/breadcrumb/src/breadcrumb.mjs +9 -37
- package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb2.mjs +37 -9
- package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
- package/es/components/carousel/index.mjs +2 -2
- package/es/components/carousel/src/carousel-item.mjs +7 -79
- package/es/components/carousel/src/carousel-item.mjs.map +1 -1
- package/es/components/carousel/src/carousel-item2.mjs +79 -7
- package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
- package/es/components/cascader/index.mjs +2 -2
- package/es/components/cascader/src/cascader.mjs +103 -843
- package/es/components/cascader/src/cascader.mjs.map +1 -1
- package/es/components/cascader/src/cascader2.mjs +843 -103
- package/es/components/cascader/src/cascader2.mjs.map +1 -1
- package/es/components/collapse/index.mjs +4 -4
- package/es/components/collapse/src/collapse-item.mjs +17 -118
- package/es/components/collapse/src/collapse-item.mjs.map +1 -1
- package/es/components/collapse/src/collapse-item2.mjs +118 -17
- package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
- package/es/components/collapse/src/collapse.mjs +24 -33
- package/es/components/collapse/src/collapse.mjs.map +1 -1
- package/es/components/collapse/src/collapse2.mjs +33 -24
- package/es/components/collapse/src/collapse2.mjs.map +1 -1
- package/es/components/dialog/src/dialog-content.mjs +38 -112
- package/es/components/dialog/src/dialog-content.mjs.map +1 -1
- package/es/components/dialog/src/dialog-content2.mjs +112 -38
- package/es/components/dialog/src/dialog-content2.mjs.map +1 -1
- package/es/components/dialog/src/dialog.mjs +2 -2
- package/es/components/dialog/src/dialog2.mjs +1 -1
- package/es/components/divider/index.mjs +2 -2
- package/es/components/divider/src/divider.mjs +43 -15
- package/es/components/divider/src/divider.mjs.map +1 -1
- package/es/components/divider/src/divider2.mjs +15 -43
- package/es/components/divider/src/divider2.mjs.map +1 -1
- package/es/components/image-viewer/index.mjs +2 -2
- package/es/components/image-viewer/src/image-viewer.mjs +50 -557
- package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer2.mjs +557 -50
- package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
- package/es/components/index.mjs +28 -26
- package/es/components/index.mjs.map +1 -1
- package/es/components/input/index.mjs +2 -2
- package/es/components/input/src/input.mjs +586 -124
- package/es/components/input/src/input.mjs.map +1 -1
- package/es/components/input/src/input2.mjs +124 -586
- package/es/components/input/src/input2.mjs.map +1 -1
- package/es/components/input-tag/src/input-tag.mjs +1 -1
- package/es/components/mention/index.mjs +2 -2
- package/es/components/mention/src/mention.mjs +75 -327
- package/es/components/mention/src/mention.mjs.map +1 -1
- package/es/components/mention/src/mention2.mjs +327 -75
- package/es/components/mention/src/mention2.mjs.map +1 -1
- package/es/components/menu/index.mjs +2 -2
- package/es/components/menu/src/menu-item-group.mjs +4 -51
- package/es/components/menu/src/menu-item-group.mjs.map +1 -1
- package/es/components/menu/src/menu-item-group2.mjs +51 -4
- package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper.mjs +69 -7
- package/es/components/pagination/src/components/jumper.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper2.mjs +7 -69
- package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
- package/es/components/pagination/src/components/pager.mjs +229 -15
- package/es/components/pagination/src/components/pager.mjs.map +1 -1
- package/es/components/pagination/src/components/pager2.mjs +15 -229
- package/es/components/pagination/src/components/pager2.mjs.map +1 -1
- package/es/components/pagination/src/pagination.mjs +2 -2
- package/es/components/popover/index.mjs +2 -2
- package/es/components/popover/src/popover.mjs +120 -65
- package/es/components/popover/src/popover.mjs.map +1 -1
- package/es/components/popover/src/popover2.mjs +65 -120
- package/es/components/popover/src/popover2.mjs.map +1 -1
- package/es/components/popper/index.mjs +2 -2
- package/es/components/popper/src/arrow.mjs +38 -7
- package/es/components/popper/src/arrow.mjs.map +1 -1
- package/es/components/popper/src/arrow2.mjs +7 -38
- package/es/components/popper/src/arrow2.mjs.map +1 -1
- package/es/components/popper/src/content.mjs +1 -1
- package/es/components/progress/index.mjs +2 -2
- package/es/components/progress/src/progress.mjs +256 -52
- package/es/components/progress/src/progress.mjs.map +1 -1
- package/es/components/progress/src/progress2.mjs +52 -256
- package/es/components/progress/src/progress2.mjs.map +1 -1
- package/es/components/rate/index.mjs +2 -2
- package/es/components/rate/src/rate.mjs +295 -85
- package/es/components/rate/src/rate.mjs.map +1 -1
- package/es/components/rate/src/rate2.mjs +85 -295
- package/es/components/rate/src/rate2.mjs.map +1 -1
- package/es/components/result/index.mjs +2 -2
- package/es/components/result/src/result.mjs +96 -29
- package/es/components/result/src/result.mjs.map +1 -1
- package/es/components/result/src/result2.mjs +29 -96
- package/es/components/result/src/result2.mjs.map +1 -1
- package/es/components/scrollbar/index.mjs +2 -2
- package/es/components/scrollbar/src/scrollbar.mjs +244 -56
- package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar2.mjs +56 -244
- package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
- package/es/components/segmented/index.mjs +2 -2
- package/es/components/segmented/src/segmented.mjs +44 -209
- package/es/components/segmented/src/segmented.mjs.map +1 -1
- package/es/components/segmented/src/segmented2.mjs +209 -44
- package/es/components/segmented/src/segmented2.mjs.map +1 -1
- package/es/components/select/src/select.mjs +2 -2
- package/es/components/select-v2/src/defaults.mjs +1 -1
- package/es/components/skeleton/index.mjs +2 -2
- package/es/components/skeleton/src/skeleton.mjs +67 -17
- package/es/components/skeleton/src/skeleton.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton2.mjs +17 -67
- package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
- package/es/components/table/src/store/current.mjs +2 -4
- package/es/components/table/src/store/current.mjs.map +1 -1
- package/es/components/tag/index.mjs +2 -2
- package/es/components/tag/src/tag.mjs +131 -26
- package/es/components/tag/src/tag.mjs.map +1 -1
- package/es/components/tag/src/tag2.mjs +26 -131
- package/es/components/tag/src/tag2.mjs.map +1 -1
- package/es/components/teleport/index.mjs +2 -2
- package/es/components/teleport/src/teleport.mjs +18 -8
- package/es/components/teleport/src/teleport.mjs.map +1 -1
- package/es/components/teleport/src/teleport2.mjs +8 -18
- package/es/components/teleport/src/teleport2.mjs.map +1 -1
- package/es/components/time-select/index.mjs +2 -2
- package/es/components/time-select/src/time-select.mjs +138 -66
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/time-select/src/time-select2.mjs +66 -138
- package/es/components/time-select/src/time-select2.mjs.map +1 -1
- package/es/components/tooltip/src/content.mjs +1 -1
- package/es/components/tooltip/src/tooltip.mjs +1 -1
- package/es/components/tooltip/src/tooltip2.mjs +1 -1
- package/es/components/tour/index.mjs +2 -2
- package/es/components/tour/src/step.mjs +255 -43
- package/es/components/tour/src/step.mjs.map +1 -1
- package/es/components/tour/src/step2.mjs +43 -255
- package/es/components/tour/src/step2.mjs.map +1 -1
- package/es/components/tour/src/tour.mjs +1 -1
- package/es/components/transfer/src/composables/use-check.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.mjs +173 -20
- package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel2.mjs +20 -173
- package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
- package/es/components/transfer/src/transfer2.mjs +1 -1
- package/es/components/upload/index.mjs +1 -1
- package/es/components/upload/src/upload-content.d.ts +1 -0
- package/es/components/upload/src/upload-content.vue.d.ts +3 -0
- package/es/components/upload/src/upload-content2.mjs +5 -3
- package/es/components/upload/src/upload-content2.mjs.map +1 -1
- package/es/components/upload/src/upload-dragger.d.ts +1 -0
- package/es/components/upload/src/upload-dragger.mjs +11 -69
- package/es/components/upload/src/upload-dragger.mjs.map +1 -1
- package/es/components/upload/src/upload-dragger.vue.d.ts +3 -0
- package/es/components/upload/src/upload-dragger2.mjs +116 -10
- package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
- package/es/components/upload/src/upload.d.ts +2 -0
- package/es/components/upload/src/upload.mjs +2 -1
- package/es/components/upload/src/upload.mjs.map +1 -1
- package/es/components/upload/src/upload.vue.d.ts +3 -0
- package/es/components/virtual-list/src/hooks/use-grid-wheel.mjs +4 -4
- package/es/components/virtual-list/src/hooks/use-grid-wheel.mjs.map +1 -1
- package/es/index.mjs +28 -26
- package/es/index.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/global.d.ts +1 -0
- package/lib/component.js +1 -0
- package/lib/component.js.map +1 -1
- package/lib/components/affix/src/affix.js +1 -1
- package/lib/components/autocomplete/index.js +2 -2
- package/lib/components/autocomplete/src/autocomplete.js +59 -484
- package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
- package/lib/components/autocomplete/src/autocomplete2.js +484 -59
- package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
- package/lib/components/avatar/index.d.ts +8 -2
- package/lib/components/avatar/index.js +10 -1
- package/lib/components/avatar/index.js.map +1 -1
- package/lib/components/avatar/src/avatar-group-props.d.ts +138 -0
- package/lib/components/avatar/src/avatar-group-props.js +37 -0
- package/lib/components/avatar/src/avatar-group-props.js.map +1 -0
- package/lib/components/avatar/src/avatar-group.d.ts +274 -0
- package/lib/components/avatar/src/avatar-group.js +65 -0
- package/lib/components/avatar/src/avatar-group.js.map +1 -0
- package/lib/components/avatar/src/avatar.d.ts +12 -2
- package/lib/components/avatar/src/avatar.js +1 -3
- package/lib/components/avatar/src/avatar.js.map +1 -1
- package/lib/components/avatar/src/avatar.vue.d.ts +24 -6
- package/lib/components/avatar/src/avatar2.js +19 -8
- package/lib/components/avatar/src/avatar2.js.map +1 -1
- package/lib/components/avatar/src/constants.d.ts +7 -0
- package/lib/components/avatar/src/constants.js +10 -0
- package/lib/components/avatar/src/constants.js.map +1 -0
- package/lib/components/avatar/src/instance.d.ts +2 -0
- package/lib/components/avatar-group/style/css.d.ts +3 -0
- package/lib/components/avatar-group/style/css.js +7 -0
- package/lib/components/avatar-group/style/css.js.map +1 -0
- package/lib/components/avatar-group/style/index.d.ts +3 -0
- package/lib/components/avatar-group/style/index.js +7 -0
- package/lib/components/avatar-group/style/index.js.map +1 -0
- package/lib/components/badge/index.js +2 -2
- package/lib/components/badge/src/badge.js +83 -31
- package/lib/components/badge/src/badge.js.map +1 -1
- package/lib/components/badge/src/badge2.js +31 -83
- package/lib/components/badge/src/badge2.js.map +1 -1
- package/lib/components/breadcrumb/index.js +2 -2
- package/lib/components/breadcrumb/src/breadcrumb.js +9 -37
- package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
- package/lib/components/breadcrumb/src/breadcrumb2.js +37 -9
- package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
- package/lib/components/carousel/index.js +2 -2
- package/lib/components/carousel/src/carousel-item.js +7 -79
- package/lib/components/carousel/src/carousel-item.js.map +1 -1
- package/lib/components/carousel/src/carousel-item2.js +79 -7
- package/lib/components/carousel/src/carousel-item2.js.map +1 -1
- package/lib/components/cascader/index.js +2 -2
- package/lib/components/cascader/src/cascader.js +103 -842
- package/lib/components/cascader/src/cascader.js.map +1 -1
- package/lib/components/cascader/src/cascader2.js +842 -103
- package/lib/components/cascader/src/cascader2.js.map +1 -1
- package/lib/components/collapse/index.js +4 -4
- package/lib/components/collapse/src/collapse-item.js +17 -118
- package/lib/components/collapse/src/collapse-item.js.map +1 -1
- package/lib/components/collapse/src/collapse-item2.js +118 -17
- package/lib/components/collapse/src/collapse-item2.js.map +1 -1
- package/lib/components/collapse/src/collapse.js +26 -33
- package/lib/components/collapse/src/collapse.js.map +1 -1
- package/lib/components/collapse/src/collapse2.js +33 -26
- package/lib/components/collapse/src/collapse2.js.map +1 -1
- package/lib/components/dialog/src/dialog-content.js +38 -111
- package/lib/components/dialog/src/dialog-content.js.map +1 -1
- package/lib/components/dialog/src/dialog-content2.js +111 -38
- package/lib/components/dialog/src/dialog-content2.js.map +1 -1
- package/lib/components/dialog/src/dialog.js +2 -2
- package/lib/components/dialog/src/dialog2.js +1 -1
- package/lib/components/divider/index.js +2 -2
- package/lib/components/divider/src/divider.js +43 -15
- package/lib/components/divider/src/divider.js.map +1 -1
- package/lib/components/divider/src/divider2.js +15 -43
- package/lib/components/divider/src/divider2.js.map +1 -1
- package/lib/components/image-viewer/index.js +2 -2
- package/lib/components/image-viewer/src/image-viewer.js +51 -557
- package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer2.js +557 -51
- package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
- package/lib/components/index.js +83 -78
- package/lib/components/index.js.map +1 -1
- package/lib/components/input/index.js +2 -2
- package/lib/components/input/src/input.js +582 -121
- package/lib/components/input/src/input.js.map +1 -1
- package/lib/components/input/src/input2.js +121 -582
- package/lib/components/input/src/input2.js.map +1 -1
- package/lib/components/input-tag/src/input-tag.js +1 -1
- package/lib/components/mention/index.js +2 -2
- package/lib/components/mention/src/mention.js +75 -325
- package/lib/components/mention/src/mention.js.map +1 -1
- package/lib/components/mention/src/mention2.js +325 -75
- package/lib/components/mention/src/mention2.js.map +1 -1
- package/lib/components/menu/index.js +2 -2
- package/lib/components/menu/src/menu-item-group.js +4 -51
- package/lib/components/menu/src/menu-item-group.js.map +1 -1
- package/lib/components/menu/src/menu-item-group2.js +51 -4
- package/lib/components/menu/src/menu-item-group2.js.map +1 -1
- package/lib/components/pagination/src/components/jumper.js +69 -7
- package/lib/components/pagination/src/components/jumper.js.map +1 -1
- package/lib/components/pagination/src/components/jumper2.js +7 -69
- package/lib/components/pagination/src/components/jumper2.js.map +1 -1
- package/lib/components/pagination/src/components/pager.js +229 -15
- package/lib/components/pagination/src/components/pager.js.map +1 -1
- package/lib/components/pagination/src/components/pager2.js +15 -229
- package/lib/components/pagination/src/components/pager2.js.map +1 -1
- package/lib/components/pagination/src/pagination.js +2 -2
- package/lib/components/popover/index.js +2 -2
- package/lib/components/popover/src/popover.js +120 -66
- package/lib/components/popover/src/popover.js.map +1 -1
- package/lib/components/popover/src/popover2.js +66 -120
- package/lib/components/popover/src/popover2.js.map +1 -1
- package/lib/components/popper/index.js +2 -2
- package/lib/components/popper/src/arrow.js +38 -8
- package/lib/components/popper/src/arrow.js.map +1 -1
- package/lib/components/popper/src/arrow2.js +8 -38
- package/lib/components/popper/src/arrow2.js.map +1 -1
- package/lib/components/popper/src/content.js +1 -1
- package/lib/components/progress/index.js +2 -2
- package/lib/components/progress/src/progress.js +256 -52
- package/lib/components/progress/src/progress.js.map +1 -1
- package/lib/components/progress/src/progress2.js +52 -256
- package/lib/components/progress/src/progress2.js.map +1 -1
- package/lib/components/rate/index.js +2 -2
- package/lib/components/rate/src/rate.js +294 -85
- package/lib/components/rate/src/rate.js.map +1 -1
- package/lib/components/rate/src/rate2.js +85 -294
- package/lib/components/rate/src/rate2.js.map +1 -1
- package/lib/components/result/index.js +2 -2
- package/lib/components/result/src/result.js +96 -31
- package/lib/components/result/src/result.js.map +1 -1
- package/lib/components/result/src/result2.js +31 -96
- package/lib/components/result/src/result2.js.map +1 -1
- package/lib/components/scrollbar/index.js +2 -2
- package/lib/components/scrollbar/src/scrollbar.js +244 -57
- package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar2.js +57 -244
- package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
- package/lib/components/segmented/index.js +2 -2
- package/lib/components/segmented/src/segmented.js +45 -208
- package/lib/components/segmented/src/segmented.js.map +1 -1
- package/lib/components/segmented/src/segmented2.js +208 -45
- package/lib/components/segmented/src/segmented2.js.map +1 -1
- package/lib/components/select/src/select.js +2 -2
- package/lib/components/select-v2/src/defaults.js +1 -1
- package/lib/components/skeleton/index.js +2 -2
- package/lib/components/skeleton/src/skeleton.js +67 -17
- package/lib/components/skeleton/src/skeleton.js.map +1 -1
- package/lib/components/skeleton/src/skeleton2.js +17 -67
- package/lib/components/skeleton/src/skeleton2.js.map +1 -1
- package/lib/components/table/src/store/current.js +2 -4
- package/lib/components/table/src/store/current.js.map +1 -1
- package/lib/components/tag/index.js +2 -2
- package/lib/components/tag/src/tag.js +131 -27
- package/lib/components/tag/src/tag.js.map +1 -1
- package/lib/components/tag/src/tag2.js +27 -131
- package/lib/components/tag/src/tag2.js.map +1 -1
- package/lib/components/teleport/index.js +2 -2
- package/lib/components/teleport/src/teleport.js +18 -8
- package/lib/components/teleport/src/teleport.js.map +1 -1
- package/lib/components/teleport/src/teleport2.js +8 -18
- package/lib/components/teleport/src/teleport2.js.map +1 -1
- package/lib/components/time-select/index.js +2 -2
- package/lib/components/time-select/src/time-select.js +143 -66
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/time-select/src/time-select2.js +66 -143
- package/lib/components/time-select/src/time-select2.js.map +1 -1
- package/lib/components/tooltip/src/content.js +1 -1
- package/lib/components/tooltip/src/tooltip.js +1 -1
- package/lib/components/tooltip/src/tooltip2.js +1 -1
- package/lib/components/tour/index.js +2 -2
- package/lib/components/tour/src/step.js +254 -43
- package/lib/components/tour/src/step.js.map +1 -1
- package/lib/components/tour/src/step2.js +43 -254
- package/lib/components/tour/src/step2.js.map +1 -1
- package/lib/components/tour/src/tour.js +1 -1
- package/lib/components/transfer/src/composables/use-check.js +1 -1
- package/lib/components/transfer/src/transfer-panel.js +173 -22
- package/lib/components/transfer/src/transfer-panel.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel2.js +22 -173
- package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
- package/lib/components/transfer/src/transfer2.js +1 -1
- package/lib/components/upload/index.js +1 -1
- package/lib/components/upload/src/upload-content.d.ts +1 -0
- package/lib/components/upload/src/upload-content.vue.d.ts +3 -0
- package/lib/components/upload/src/upload-content2.js +5 -3
- package/lib/components/upload/src/upload-content2.js.map +1 -1
- package/lib/components/upload/src/upload-dragger.d.ts +1 -0
- package/lib/components/upload/src/upload-dragger.js +12 -69
- package/lib/components/upload/src/upload-dragger.js.map +1 -1
- package/lib/components/upload/src/upload-dragger.vue.d.ts +3 -0
- package/lib/components/upload/src/upload-dragger2.js +116 -11
- package/lib/components/upload/src/upload-dragger2.js.map +1 -1
- package/lib/components/upload/src/upload.d.ts +2 -0
- package/lib/components/upload/src/upload.js +2 -1
- package/lib/components/upload/src/upload.js.map +1 -1
- package/lib/components/upload/src/upload.vue.d.ts +3 -0
- package/lib/components/virtual-list/src/hooks/use-grid-wheel.js +4 -4
- package/lib/components/virtual-list/src/hooks/use-grid-wheel.js.map +1 -1
- package/lib/index.js +83 -78
- package/lib/index.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/tags.json +1 -1
- package/theme-chalk/el-avatar-group.css +1 -0
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/avatar-group.scss +25 -0
- package/theme-chalk/src/common/var.scss +9 -0
- package/theme-chalk/src/index.scss +1 -0
- package/web-types.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input2.mjs","sources":["../../../../../../packages/components/input/src/input.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n containerKls,\n {\n [nsInput.bm('group', 'append')]: $slots.append,\n [nsInput.bm('group', 'prepend')]: $slots.prepend,\n },\n ]\"\n :style=\"containerStyle\"\n @mouseenter=\"handleMouseEnter\"\n @mouseleave=\"handleMouseLeave\"\n >\n <!-- input -->\n <template v-if=\"type !== 'textarea'\">\n <!-- prepend slot -->\n <div v-if=\"$slots.prepend\" :class=\"nsInput.be('group', 'prepend')\">\n <slot name=\"prepend\" />\n </div>\n\n <div ref=\"wrapperRef\" :class=\"wrapperKls\">\n <!-- prefix slot -->\n <span v-if=\"$slots.prefix || prefixIcon\" :class=\"nsInput.e('prefix')\">\n <span :class=\"nsInput.e('prefix-inner')\">\n <slot name=\"prefix\" />\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </span>\n </span>\n\n <input\n :id=\"inputId\"\n ref=\"input\"\n :class=\"nsInput.e('inner')\"\n v-bind=\"attrs\"\n :name=\"name\"\n :minlength=\"minlength\"\n :maxlength=\"maxlength\"\n :type=\"showPassword ? (passwordVisible ? 'text' : 'password') : type\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :tabindex=\"tabindex\"\n :aria-label=\"ariaLabel\"\n :placeholder=\"placeholder\"\n :style=\"inputStyle\"\n :form=\"form\"\n :autofocus=\"autofocus\"\n :role=\"containerRole\"\n :inputmode=\"inputmode\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n\n <!-- suffix slot -->\n <span v-if=\"suffixVisible\" :class=\"nsInput.e('suffix')\">\n <span :class=\"nsInput.e('suffix-inner')\">\n <template\n v-if=\"!showClear || !showPwdVisible || !isWordLimitVisible\"\n >\n <slot name=\"suffix\" />\n <el-icon v-if=\"suffixIcon\" :class=\"nsInput.e('icon')\">\n <component :is=\"suffixIcon\" />\n </el-icon>\n </template>\n <el-icon\n v-if=\"showClear\"\n :class=\"[nsInput.e('icon'), nsInput.e('clear')]\"\n @mousedown.prevent=\"NOOP\"\n @click=\"clear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n <el-icon\n v-if=\"showPwdVisible\"\n :class=\"[nsInput.e('icon'), nsInput.e('password')]\"\n @click=\"handlePasswordVisible\"\n @mousedown.prevent=\"NOOP\"\n @mouseup.prevent=\"NOOP\"\n >\n <component :is=\"passwordIcon\" />\n </el-icon>\n <span\n v-if=\"isWordLimitVisible\"\n :class=\"[\n nsInput.e('count'),\n nsInput.is('outside', wordLimitPosition === 'outside'),\n ]\"\n >\n <span :class=\"nsInput.e('count-inner')\">\n {{ textLength }} / {{ maxlength }}\n </span>\n </span>\n <el-icon\n v-if=\"validateState && validateIcon && needStatusIcon\"\n :class=\"[\n nsInput.e('icon'),\n nsInput.e('validateIcon'),\n nsInput.is('loading', validateState === 'validating'),\n ]\"\n >\n <component :is=\"validateIcon\" />\n </el-icon>\n </span>\n </span>\n </div>\n\n <!-- append slot -->\n <div v-if=\"$slots.append\" :class=\"nsInput.be('group', 'append')\">\n <slot name=\"append\" />\n </div>\n </template>\n\n <!-- textarea -->\n <template v-else>\n <textarea\n :id=\"inputId\"\n ref=\"textarea\"\n :class=\"[nsTextarea.e('inner'), nsInput.is('focus', isFocused)]\"\n v-bind=\"attrs\"\n :name=\"name\"\n :minlength=\"minlength\"\n :maxlength=\"maxlength\"\n :tabindex=\"tabindex\"\n :disabled=\"inputDisabled\"\n :readonly=\"readonly\"\n :autocomplete=\"autocomplete\"\n :style=\"textareaStyle\"\n :aria-label=\"ariaLabel\"\n :placeholder=\"placeholder\"\n :form=\"form\"\n :autofocus=\"autofocus\"\n :rows=\"rows\"\n :role=\"containerRole\"\n @compositionstart=\"handleCompositionStart\"\n @compositionupdate=\"handleCompositionUpdate\"\n @compositionend=\"handleCompositionEnd\"\n @input=\"handleInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @change=\"handleChange\"\n @keydown=\"handleKeydown\"\n />\n <span\n v-if=\"isWordLimitVisible\"\n :style=\"countStyle\"\n :class=\"[\n nsInput.e('count'),\n nsInput.is('outside', wordLimitPosition === 'outside'),\n ]\"\n >\n {{ textLength }} / {{ maxlength }}\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n ref,\n shallowRef,\n toRef,\n useAttrs as useRawAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { Hide as IconHide, View as IconView } from '@element-plus/icons-vue'\nimport {\n useFormDisabled,\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport {\n NOOP,\n ValidateComponentsMap,\n debugWarn,\n isClient,\n isObject,\n} from '@element-plus/utils'\nimport {\n useAttrs,\n useComposition,\n useCursor,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { calcTextareaHeight, looseToNumber } from './utils'\nimport { inputEmits, inputProps } from './input'\n\nimport type { StyleValue } from 'vue'\n\ntype TargetElement = HTMLInputElement | HTMLTextAreaElement\n\nconst COMPONENT_NAME = 'ElInput'\ndefineOptions({\n name: COMPONENT_NAME,\n inheritAttrs: false,\n})\nconst props = defineProps(inputProps)\nconst emit = defineEmits(inputEmits)\n\nconst rawAttrs = useRawAttrs()\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst containerKls = computed(() => [\n props.type === 'textarea' ? nsTextarea.b() : nsInput.b(),\n nsInput.m(inputSize.value),\n nsInput.is('disabled', inputDisabled.value),\n nsInput.is('exceed', inputExceed.value),\n {\n [nsInput.b('group')]: slots.prepend || slots.append,\n [nsInput.m('prefix')]: slots.prefix || props.prefixIcon,\n [nsInput.m('suffix')]:\n slots.suffix || props.suffixIcon || props.clearable || props.showPassword,\n [nsInput.bm('suffix', 'password-clear')]:\n showClear.value && showPwdVisible.value,\n [nsInput.b('hidden')]: props.type === 'hidden',\n },\n rawAttrs.class,\n])\n\nconst wrapperKls = computed(() => [\n nsInput.e('wrapper'),\n nsInput.is('focus', isFocused.value),\n])\n\nconst { form: elForm, formItem: elFormItem } = useFormItem()\nconst { inputId } = useFormItemInputId(props, {\n formItemContext: elFormItem,\n})\nconst inputSize = useFormSize()\nconst inputDisabled = useFormDisabled()\nconst nsInput = useNamespace('input')\nconst nsTextarea = useNamespace('textarea')\n\nconst input = shallowRef<HTMLInputElement>()\nconst textarea = shallowRef<HTMLTextAreaElement>()\n\nconst hovering = ref(false)\nconst passwordVisible = ref(false)\nconst countStyle = ref<StyleValue>()\nconst textareaCalcStyle = shallowRef(props.inputStyle)\n\nconst _ref = computed(() => input.value || textarea.value)\n\n// wrapperRef for type=\"text\", handleFocus and handleBlur for type=\"textarea\"\nconst { wrapperRef, isFocused, handleFocus, handleBlur } = useFocusController(\n _ref,\n {\n disabled: inputDisabled,\n afterBlur() {\n if (props.validateEvent) {\n elFormItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n },\n }\n)\n\nconst needStatusIcon = computed(() => elForm?.statusIcon ?? false)\nconst validateState = computed(() => elFormItem?.validateState || '')\nconst validateIcon = computed(\n () => validateState.value && ValidateComponentsMap[validateState.value]\n)\nconst passwordIcon = computed(() =>\n passwordVisible.value ? IconView : IconHide\n)\nconst containerStyle = computed<StyleValue>(() => [\n rawAttrs.style as StyleValue,\n])\nconst textareaStyle = computed<StyleValue>(() => [\n props.inputStyle,\n textareaCalcStyle.value,\n { resize: props.resize },\n])\nconst nativeInputValue = computed(() =>\n isNil(props.modelValue) ? '' : String(props.modelValue)\n)\nconst showClear = computed(\n () =>\n props.clearable &&\n !inputDisabled.value &&\n !props.readonly &&\n !!nativeInputValue.value &&\n (isFocused.value || hovering.value)\n)\nconst showPwdVisible = computed(\n () => props.showPassword && !inputDisabled.value && !!nativeInputValue.value\n)\nconst isWordLimitVisible = computed(\n () =>\n props.showWordLimit &&\n !!props.maxlength &&\n (props.type === 'text' || props.type === 'textarea') &&\n !inputDisabled.value &&\n !props.readonly &&\n !props.showPassword\n)\nconst textLength = computed(() => nativeInputValue.value.length)\nconst inputExceed = computed(\n () =>\n // show exceed style if length of initial value greater then maxlength\n !!isWordLimitVisible.value && textLength.value > Number(props.maxlength)\n)\nconst suffixVisible = computed(\n () =>\n !!slots.suffix ||\n !!props.suffixIcon ||\n showClear.value ||\n props.showPassword ||\n isWordLimitVisible.value ||\n (!!validateState.value && needStatusIcon.value)\n)\nconst hasModelModifiers = computed(\n () => !!Object.keys(props.modelModifiers).length\n)\n\nconst [recordCursor, setCursor] = useCursor(input)\n\nuseResizeObserver(textarea, (entries) => {\n onceInitSizeTextarea()\n if (\n !isWordLimitVisible.value ||\n (props.resize !== 'both' && props.resize !== 'horizontal')\n )\n return\n const entry = entries[0]\n const { width } = entry.contentRect\n countStyle.value = {\n /** right: 100% - width + padding(22) - right(10) */\n right: `calc(100% - ${width + 22 - 10}px)`,\n }\n})\n\nconst resizeTextarea = () => {\n const { type, autosize } = props\n\n if (!isClient || type !== 'textarea' || !textarea.value) return\n\n if (autosize) {\n const minRows = isObject(autosize) ? autosize.minRows : undefined\n const maxRows = isObject(autosize) ? autosize.maxRows : undefined\n const textareaStyle = calcTextareaHeight(textarea.value, minRows, maxRows)\n\n // If the scrollbar is displayed, the height of the textarea needs more space than the calculated height.\n // If set textarea height in this case, the scrollbar will not hide.\n // So we need to hide scrollbar first, and reset it in next tick.\n // see https://github.com/element-plus/element-plus/issues/8825\n textareaCalcStyle.value = {\n overflowY: 'hidden',\n ...textareaStyle,\n }\n\n nextTick(() => {\n // NOTE: Force repaint to make sure the style set above is applied.\n textarea.value!.offsetHeight\n textareaCalcStyle.value = textareaStyle\n })\n } else {\n textareaCalcStyle.value = {\n minHeight: calcTextareaHeight(textarea.value).minHeight,\n }\n }\n}\n\nconst createOnceInitResize = (resizeTextarea: () => void) => {\n let isInit = false\n return () => {\n if (isInit || !props.autosize) return\n const isElHidden = textarea.value?.offsetParent === null\n if (!isElHidden) {\n setTimeout(resizeTextarea)\n isInit = true\n }\n }\n}\n// fix: https://github.com/element-plus/element-plus/issues/12074\nconst onceInitSizeTextarea = createOnceInitResize(resizeTextarea)\n\nconst setNativeInputValue = () => {\n const input = _ref.value\n const formatterValue = props.formatter\n ? props.formatter(nativeInputValue.value)\n : nativeInputValue.value\n if (!input || input.value === formatterValue || props.type === 'file') return\n input.value = formatterValue\n}\n\nconst formatValue = (value: string) => {\n const { trim, number } = props.modelModifiers\n if (trim) {\n value = value.trim()\n }\n if (number) {\n value = `${looseToNumber(value)}`\n }\n if (props.formatter && props.parser) {\n value = props.parser(value)\n }\n return value\n}\n\nconst handleInput = async (event: Event) => {\n // should not emit input during composition\n // see: https://github.com/ElemeFE/element/issues/10516\n if (isComposing.value) return\n\n const { lazy } = props.modelModifiers\n let { value } = event.target as TargetElement\n if (lazy) {\n emit(INPUT_EVENT, value)\n return\n }\n\n value = formatValue(value)\n\n // hack for https://github.com/ElemeFE/element/issues/8548\n // should remove the following line when we don't support IE\n if (String(value) === nativeInputValue.value) {\n // preserve native features while being compatible with #9501\n if (props.formatter) {\n setNativeInputValue()\n }\n return\n }\n\n recordCursor()\n emit(UPDATE_MODEL_EVENT, value)\n emit(INPUT_EVENT, value)\n\n // ensure native input value is controlled\n // see: https://github.com/ElemeFE/element/issues/12850\n await nextTick()\n\n if ((props.formatter && props.parser) || !hasModelModifiers.value) {\n setNativeInputValue()\n }\n setCursor()\n}\n\nconst handleChange = async (event: Event) => {\n let { value } = event.target as TargetElement\n\n value = formatValue(value)\n if (props.modelModifiers.lazy) {\n emit(UPDATE_MODEL_EVENT, value)\n }\n emit(CHANGE_EVENT, value, event)\n\n await nextTick()\n setNativeInputValue()\n}\n\nconst {\n isComposing,\n handleCompositionStart,\n handleCompositionUpdate,\n handleCompositionEnd,\n} = useComposition({ emit, afterComposition: handleInput })\n\nconst handlePasswordVisible = () => {\n passwordVisible.value = !passwordVisible.value\n}\n\nconst focus = () => _ref.value?.focus()\n\nconst blur = () => _ref.value?.blur()\n\nconst handleMouseLeave = (evt: MouseEvent) => {\n hovering.value = false\n emit('mouseleave', evt)\n}\n\nconst handleMouseEnter = (evt: MouseEvent) => {\n hovering.value = true\n emit('mouseenter', evt)\n}\n\nconst handleKeydown = (evt: KeyboardEvent) => {\n emit('keydown', evt)\n}\n\nconst select = () => {\n _ref.value?.select()\n}\n\nconst clear = () => {\n emit(UPDATE_MODEL_EVENT, '')\n emit(CHANGE_EVENT, '')\n emit('clear')\n emit(INPUT_EVENT, '')\n}\n\nwatch(\n () => props.modelValue,\n () => {\n nextTick(() => resizeTextarea())\n if (props.validateEvent) {\n elFormItem?.validate?.('change').catch((err) => debugWarn(err))\n }\n }\n)\n\n// native input value is set explicitly\n// do not use v-model / :value in template\n// see: https://github.com/ElemeFE/element/issues/14521\nwatch(nativeInputValue, (newValue) => {\n if (!_ref.value) {\n return\n }\n const { trim, number } = props.modelModifiers\n const elValue = _ref.value.value\n const displayValue =\n (number || props.type === 'number') && !/^0\\d/.test(elValue)\n ? `${looseToNumber(elValue)}`\n : elValue\n\n if (displayValue === newValue) {\n return\n }\n\n if (document.activeElement === _ref.value && _ref.value.type !== 'range') {\n if (trim && displayValue.trim() === newValue) {\n return\n }\n }\n\n setNativeInputValue()\n})\n\n// when change between <input> and <textarea>,\n// update DOM dependent value and styles\n// https://github.com/ElemeFE/element/issues/14857\nwatch(\n () => props.type,\n async () => {\n await nextTick()\n setNativeInputValue()\n resizeTextarea()\n }\n)\n\nonMounted(() => {\n if (!props.formatter && props.parser) {\n debugWarn(\n COMPONENT_NAME,\n 'If you set the parser, you also need to set the formatter.'\n )\n }\n setNativeInputValue()\n nextTick(resizeTextarea)\n})\n\ndefineExpose({\n /** @description HTML input element */\n input,\n /** @description HTML textarea element */\n textarea,\n /** @description HTML element, input or textarea */\n ref: _ref,\n /** @description style of textarea. */\n textareaStyle,\n\n /** @description from props (used on unit test) */\n autosize: toRef(props, 'autosize'),\n\n /** @description is input composing */\n isComposing,\n\n /** @description HTML input element native method */\n focus,\n /** @description HTML input element native method */\n blur,\n /** @description HTML input element native method */\n select,\n /** @description clear input value */\n clear,\n /** @description resize textarea. */\n resizeTextarea,\n})\n</script>\n"],"names":["useRawAttrs","useAttrs","IconView","IconHide","textareaStyle","resizeTextarea","input","_openBlock","_createElementBlock","_normalizeClass","_unref","$slots","_normalizeStyle","_createCommentVNode","type","_Fragment","_renderSlot","_createElementVNode","prefixIcon","_createBlock","_resolveDynamicComponent","_mergeProps","name","minlength","maxlength","showPassword","readonly","autocomplete","tabindex","ariaLabel","placeholder","inputStyle","form","autofocus","containerRole","inputmode","suffixIcon","_withModifiers","clearIcon","wordLimitPosition","_toDisplayString","rows"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"input2.mjs","sources":["../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n isString,\n mutable,\n} from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useAriaProps, useSizeProp } from '@element-plus/hooks'\nimport { CircleClose } from '@element-plus/icons-vue'\n\nimport type {\n ExtractPropTypes,\n ExtractPublicPropTypes,\n HTMLAttributes,\n StyleValue,\n} from 'vue'\n\nexport type InputModelModifiers = {\n lazy?: boolean\n number?: boolean\n trim?: boolean\n}\nexport type InputAutoSize = { minRows?: number; maxRows?: number } | boolean\n// Some commonly used values for input type\nexport type InputType =\n | 'text'\n | 'textarea'\n | 'number'\n | 'password'\n | 'email'\n | 'search'\n | 'tel'\n | 'url'\n | (string & NonNullable<unknown>)\n\nexport const inputProps = buildProps({\n /**\n * @description native input id\n */\n id: {\n type: String,\n default: undefined,\n },\n /**\n * @description input box size\n */\n size: useSizeProp,\n /**\n * @description whether to disable\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<string | number | null | undefined>([\n String,\n Number,\n Object,\n ]),\n default: '',\n },\n /**\n * @description v-model modifiers, reference [Vue modifiers](https://vuejs.org/guide/essentials/forms.html#modifiers)\n */\n modelModifiers: {\n type: definePropType<InputModelModifiers>(Object),\n default: () => ({}),\n },\n /**\n * @description same as `maxlength` in native input\n */\n maxlength: {\n type: [String, Number],\n },\n /**\n * @description same as `minlength` in native input\n */\n minlength: {\n type: [String, Number],\n },\n /**\n * @description type of input, see more in [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Form_%3Cinput%3E_types)\n */\n type: {\n type: definePropType<InputType>(String),\n default: 'text',\n },\n /**\n * @description control the resizability\n */\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n /**\n * @description whether textarea has an adaptive height\n */\n autosize: {\n type: definePropType<InputAutoSize>([Boolean, Object]),\n default: false,\n },\n /**\n * @description native input autocomplete\n */\n autocomplete: {\n type: definePropType<HTMLInputElement['autocomplete']>(String),\n default: 'off',\n },\n /**\n * @description format content\n */\n formatter: {\n type: Function,\n },\n /**\n * @description parse content\n */\n parser: {\n type: Function,\n },\n /**\n * @description placeholder\n */\n placeholder: {\n type: String,\n },\n /**\n * @description native input form\n */\n form: {\n type: String,\n },\n /**\n * @description native input readonly\n */\n readonly: Boolean,\n /**\n * @description whether to show clear button\n */\n clearable: Boolean,\n /**\n * @description custom clear icon component\n */\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n /**\n * @description toggleable password input\n */\n showPassword: Boolean,\n /**\n * @description word count\n */\n showWordLimit: Boolean,\n /**\n * @description word count position, valid when `show-word-limit` is true\n */\n wordLimitPosition: {\n type: String,\n values: ['inside', 'outside'],\n default: 'inside',\n },\n /**\n * @description suffix icon\n */\n suffixIcon: {\n type: iconPropType,\n },\n /**\n * @description prefix icon\n */\n prefixIcon: {\n type: iconPropType,\n },\n /**\n * @description container role, internal properties provided for use by the picker component\n */\n containerRole: {\n type: String,\n default: undefined,\n },\n /**\n * @description input tabindex\n */\n tabindex: {\n type: [String, Number],\n default: 0,\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description input or textarea element style\n */\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n /**\n * @description native input autofocus\n */\n autofocus: Boolean,\n rows: {\n type: Number,\n default: 2,\n },\n ...useAriaProps(['ariaLabel']),\n /**\n * @description native input mode for virtual keyboards\n */\n inputmode: {\n type: definePropType<HTMLAttributes['inputmode']>(String),\n default: undefined,\n },\n /**\n * @description same as `name` in native input\n */\n name: String,\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\nexport type InputPropsPublic = ExtractPublicPropTypes<typeof inputProps>\n\nexport const inputEmits = {\n [UPDATE_MODEL_EVENT]: (value: string) => isString(value),\n input: (value: string) => isString(value),\n change: (value: string, evt?: Event) =>\n isString(value) && (evt instanceof Event || evt === undefined),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n mouseleave: (evt: MouseEvent) => evt instanceof MouseEvent,\n mouseenter: (evt: MouseEvent) => evt instanceof MouseEvent,\n // NOTE: when autofill by browser, the keydown event is instanceof Event, not KeyboardEvent\n // relative bug report https://github.com/element-plus/element-plus/issues/6665\n keydown: (evt: KeyboardEvent | Event) => evt instanceof Event,\n compositionstart: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionupdate: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionend: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n}\nexport type InputEmits = typeof inputEmits\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { tagProps } from '../../tag/src/
|
|
1
|
+
import { tagProps } from '../../tag/src/tag2.mjs';
|
|
2
2
|
import { CircleClose } from '@element-plus/icons-vue';
|
|
3
3
|
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
|
4
4
|
import { EVENT_CODE } from '../../../constants/aria.mjs';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Mention from './src/
|
|
2
|
-
export { mentionDefaultProps, mentionEmits, mentionProps } from './src/
|
|
1
|
+
import Mention from './src/mention2.mjs';
|
|
2
|
+
export { mentionDefaultProps, mentionEmits, mentionProps } from './src/mention.mjs';
|
|
3
3
|
import { withInstall } from '../../utils/vue/install.mjs';
|
|
4
4
|
|
|
5
5
|
const ElMention = withInstall(Mention);
|
|
@@ -1,333 +1,81 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import ElMentionDropdown from './mention-dropdown2.mjs';
|
|
8
|
-
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
9
|
-
import { inputProps } from '../../input/src/input.mjs';
|
|
10
|
-
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
11
|
-
import { useFormDisabled } from '../../form/src/hooks/use-form-common-props.mjs';
|
|
12
|
-
import { useId } from '../../../hooks/use-id/index.mjs';
|
|
13
|
-
import { useFocusController } from '../../../hooks/use-focus-controller/index.mjs';
|
|
14
|
-
import { UPDATE_MODEL_EVENT, INPUT_EVENT } from '../../../constants/event.mjs';
|
|
15
|
-
import { getEventCode } from '../../../utils/dom/event.mjs';
|
|
16
|
-
import { EVENT_CODE } from '../../../constants/aria.mjs';
|
|
17
|
-
import { isFunction } from '@vue/shared';
|
|
1
|
+
import { filterOption } from './helper.mjs';
|
|
2
|
+
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
|
3
|
+
import { inputProps } from '../../input/src/input2.mjs';
|
|
4
|
+
import { isString, isFunction, isObject } from '@vue/shared';
|
|
5
|
+
import { useTooltipContentProps } from '../../tooltip/src/content.mjs';
|
|
6
|
+
import { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
|
|
18
7
|
|
|
19
|
-
const
|
|
20
|
-
...
|
|
21
|
-
|
|
22
|
-
|
|
8
|
+
const mentionProps = buildProps({
|
|
9
|
+
...inputProps,
|
|
10
|
+
options: {
|
|
11
|
+
type: definePropType(Array),
|
|
12
|
+
default: () => []
|
|
23
13
|
},
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
()
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
});
|
|
74
|
-
const handleInputChange = (value) => {
|
|
75
|
-
emit(UPDATE_MODEL_EVENT, value);
|
|
76
|
-
emit(INPUT_EVENT, value);
|
|
77
|
-
syncAfterCursorMove();
|
|
78
|
-
};
|
|
79
|
-
const handleInputKeyDown = (event) => {
|
|
80
|
-
var _a, _b, _c, _d;
|
|
81
|
-
if ((_a = elInputRef.value) == null ? void 0 : _a.isComposing)
|
|
82
|
-
return;
|
|
83
|
-
const code = getEventCode(event);
|
|
84
|
-
switch (code) {
|
|
85
|
-
case EVENT_CODE.left:
|
|
86
|
-
case EVENT_CODE.right:
|
|
87
|
-
syncAfterCursorMove();
|
|
88
|
-
break;
|
|
89
|
-
case EVENT_CODE.up:
|
|
90
|
-
case EVENT_CODE.down:
|
|
91
|
-
if (!visible.value)
|
|
92
|
-
return;
|
|
93
|
-
event.preventDefault();
|
|
94
|
-
(_b = dropdownRef.value) == null ? void 0 : _b.navigateOptions(
|
|
95
|
-
code === EVENT_CODE.up ? "prev" : "next"
|
|
96
|
-
);
|
|
97
|
-
break;
|
|
98
|
-
case EVENT_CODE.enter:
|
|
99
|
-
case EVENT_CODE.numpadEnter:
|
|
100
|
-
if (!visible.value) {
|
|
101
|
-
props.type !== "textarea" && syncAfterCursorMove();
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
event.preventDefault();
|
|
105
|
-
if ((_c = dropdownRef.value) == null ? void 0 : _c.hoverOption) {
|
|
106
|
-
(_d = dropdownRef.value) == null ? void 0 : _d.selectHoverOption();
|
|
107
|
-
} else {
|
|
108
|
-
visible.value = false;
|
|
109
|
-
}
|
|
110
|
-
break;
|
|
111
|
-
case EVENT_CODE.esc:
|
|
112
|
-
if (!visible.value)
|
|
113
|
-
return;
|
|
114
|
-
event.preventDefault();
|
|
115
|
-
visible.value = false;
|
|
116
|
-
break;
|
|
117
|
-
case EVENT_CODE.backspace:
|
|
118
|
-
if (props.whole && mentionCtx.value) {
|
|
119
|
-
const { splitIndex, selectionEnd, pattern, prefixIndex, prefix } = mentionCtx.value;
|
|
120
|
-
const inputEl = getInputEl();
|
|
121
|
-
if (!inputEl)
|
|
122
|
-
return;
|
|
123
|
-
const inputValue = inputEl.value;
|
|
124
|
-
const matchOption = options.value.find((item) => item.value === pattern);
|
|
125
|
-
const isWhole = isFunction(props.checkIsWhole) ? props.checkIsWhole(pattern, prefix) : matchOption;
|
|
126
|
-
if (isWhole && splitIndex !== -1 && splitIndex + 1 === selectionEnd) {
|
|
127
|
-
event.preventDefault();
|
|
128
|
-
const newValue = inputValue.slice(0, prefixIndex) + inputValue.slice(splitIndex + 1);
|
|
129
|
-
emit(UPDATE_MODEL_EVENT, newValue);
|
|
130
|
-
emit(INPUT_EVENT, newValue);
|
|
131
|
-
emit("whole-remove", pattern, prefix);
|
|
132
|
-
const newSelectionEnd = prefixIndex;
|
|
133
|
-
nextTick(() => {
|
|
134
|
-
inputEl.selectionStart = newSelectionEnd;
|
|
135
|
-
inputEl.selectionEnd = newSelectionEnd;
|
|
136
|
-
syncDropdownVisible();
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
};
|
|
142
|
-
const { wrapperRef } = useFocusController(elInputRef, {
|
|
143
|
-
disabled,
|
|
144
|
-
afterFocus() {
|
|
145
|
-
syncAfterCursorMove();
|
|
146
|
-
},
|
|
147
|
-
beforeBlur(event) {
|
|
148
|
-
var _a;
|
|
149
|
-
return (_a = tooltipRef.value) == null ? void 0 : _a.isFocusInsideContent(event);
|
|
150
|
-
},
|
|
151
|
-
afterBlur() {
|
|
152
|
-
visible.value = false;
|
|
153
|
-
}
|
|
154
|
-
});
|
|
155
|
-
const handleInputMouseDown = () => {
|
|
156
|
-
syncAfterCursorMove();
|
|
157
|
-
};
|
|
158
|
-
const getOriginalOption = (mentionOption) => {
|
|
159
|
-
return props.options.find((option) => {
|
|
160
|
-
return mentionOption.value === option[aliasProps.value.value];
|
|
161
|
-
});
|
|
162
|
-
};
|
|
163
|
-
const handleSelect = (item) => {
|
|
164
|
-
if (!mentionCtx.value)
|
|
165
|
-
return;
|
|
166
|
-
const inputEl = getInputEl();
|
|
167
|
-
if (!inputEl)
|
|
168
|
-
return;
|
|
169
|
-
const inputValue = inputEl.value;
|
|
170
|
-
const { split } = props;
|
|
171
|
-
const newEndPart = inputValue.slice(mentionCtx.value.end);
|
|
172
|
-
const alreadySeparated = newEndPart.startsWith(split);
|
|
173
|
-
const newMiddlePart = `${item.value}${alreadySeparated ? "" : split}`;
|
|
174
|
-
const newValue = inputValue.slice(0, mentionCtx.value.start) + newMiddlePart + newEndPart;
|
|
175
|
-
emit(UPDATE_MODEL_EVENT, newValue);
|
|
176
|
-
emit(INPUT_EVENT, newValue);
|
|
177
|
-
emit("select", getOriginalOption(item), mentionCtx.value.prefix);
|
|
178
|
-
const newSelectionEnd = mentionCtx.value.start + newMiddlePart.length + (alreadySeparated ? 1 : 0);
|
|
179
|
-
nextTick(() => {
|
|
180
|
-
inputEl.selectionStart = newSelectionEnd;
|
|
181
|
-
inputEl.selectionEnd = newSelectionEnd;
|
|
182
|
-
inputEl.focus();
|
|
183
|
-
syncDropdownVisible();
|
|
184
|
-
});
|
|
185
|
-
};
|
|
186
|
-
const getInputEl = () => {
|
|
187
|
-
var _a, _b;
|
|
188
|
-
return props.type === "textarea" ? (_a = elInputRef.value) == null ? void 0 : _a.textarea : (_b = elInputRef.value) == null ? void 0 : _b.input;
|
|
189
|
-
};
|
|
190
|
-
const syncAfterCursorMove = () => {
|
|
191
|
-
setTimeout(() => {
|
|
192
|
-
syncCursor();
|
|
193
|
-
syncDropdownVisible();
|
|
194
|
-
nextTick(() => {
|
|
195
|
-
var _a;
|
|
196
|
-
return (_a = tooltipRef.value) == null ? void 0 : _a.updatePopper();
|
|
197
|
-
});
|
|
198
|
-
}, 0);
|
|
199
|
-
};
|
|
200
|
-
const syncCursor = () => {
|
|
201
|
-
const inputEl = getInputEl();
|
|
202
|
-
if (!inputEl)
|
|
203
|
-
return;
|
|
204
|
-
const caretPosition = getCursorPosition(inputEl);
|
|
205
|
-
const inputRect = inputEl.getBoundingClientRect();
|
|
206
|
-
const wrapperRect = wrapperRef.value.getBoundingClientRect();
|
|
207
|
-
cursorStyle.value = {
|
|
208
|
-
position: "absolute",
|
|
209
|
-
width: 0,
|
|
210
|
-
height: `${caretPosition.height}px`,
|
|
211
|
-
left: `${caretPosition.left + inputRect.left - wrapperRect.left}px`,
|
|
212
|
-
top: `${caretPosition.top + inputRect.top - wrapperRect.top}px`
|
|
213
|
-
};
|
|
214
|
-
};
|
|
215
|
-
const syncDropdownVisible = () => {
|
|
216
|
-
const inputEl = getInputEl();
|
|
217
|
-
if (document.activeElement !== inputEl) {
|
|
218
|
-
visible.value = false;
|
|
219
|
-
return;
|
|
220
|
-
}
|
|
221
|
-
const { prefix, split } = props;
|
|
222
|
-
mentionCtx.value = getMentionCtx(inputEl, prefix, split);
|
|
223
|
-
if (mentionCtx.value && mentionCtx.value.splitIndex === -1) {
|
|
224
|
-
visible.value = true;
|
|
225
|
-
emit("search", mentionCtx.value.pattern, mentionCtx.value.prefix);
|
|
226
|
-
return;
|
|
227
|
-
}
|
|
228
|
-
visible.value = false;
|
|
229
|
-
};
|
|
230
|
-
__expose({
|
|
231
|
-
input: elInputRef,
|
|
232
|
-
tooltip: tooltipRef,
|
|
233
|
-
dropdownVisible
|
|
234
|
-
});
|
|
235
|
-
return (_ctx, _cache) => {
|
|
236
|
-
return openBlock(), createElementBlock(
|
|
237
|
-
"div",
|
|
238
|
-
{
|
|
239
|
-
ref_key: "wrapperRef",
|
|
240
|
-
ref: wrapperRef,
|
|
241
|
-
class: normalizeClass(unref(ns).b())
|
|
242
|
-
},
|
|
243
|
-
[
|
|
244
|
-
createVNode(unref(ElInput), mergeProps(mergeProps(passInputProps.value, _ctx.$attrs), {
|
|
245
|
-
ref_key: "elInputRef",
|
|
246
|
-
ref: elInputRef,
|
|
247
|
-
"model-value": _ctx.modelValue,
|
|
248
|
-
disabled: unref(disabled),
|
|
249
|
-
role: dropdownVisible.value ? "combobox" : void 0,
|
|
250
|
-
"aria-activedescendant": dropdownVisible.value ? hoveringId.value || "" : void 0,
|
|
251
|
-
"aria-controls": dropdownVisible.value ? unref(contentId) : void 0,
|
|
252
|
-
"aria-expanded": dropdownVisible.value || void 0,
|
|
253
|
-
"aria-label": _ctx.ariaLabel,
|
|
254
|
-
"aria-autocomplete": dropdownVisible.value ? "none" : void 0,
|
|
255
|
-
"aria-haspopup": dropdownVisible.value ? "listbox" : void 0,
|
|
256
|
-
onInput: handleInputChange,
|
|
257
|
-
onKeydown: handleInputKeyDown,
|
|
258
|
-
onMousedown: handleInputMouseDown
|
|
259
|
-
}), createSlots({
|
|
260
|
-
_: 2
|
|
261
|
-
}, [
|
|
262
|
-
renderList(_ctx.$slots, (_, name) => {
|
|
263
|
-
return {
|
|
264
|
-
name,
|
|
265
|
-
fn: withCtx((slotProps) => [
|
|
266
|
-
renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps)))
|
|
267
|
-
])
|
|
268
|
-
};
|
|
269
|
-
})
|
|
270
|
-
]), 1040, ["model-value", "disabled", "role", "aria-activedescendant", "aria-controls", "aria-expanded", "aria-label", "aria-autocomplete", "aria-haspopup"]),
|
|
271
|
-
createVNode(unref(ElTooltip), {
|
|
272
|
-
ref_key: "tooltipRef",
|
|
273
|
-
ref: tooltipRef,
|
|
274
|
-
visible: dropdownVisible.value,
|
|
275
|
-
"popper-class": [unref(ns).e("popper"), _ctx.popperClass],
|
|
276
|
-
"popper-style": _ctx.popperStyle,
|
|
277
|
-
"popper-options": _ctx.popperOptions,
|
|
278
|
-
placement: computedPlacement.value,
|
|
279
|
-
"fallback-placements": computedFallbackPlacements.value,
|
|
280
|
-
effect: "light",
|
|
281
|
-
pure: "",
|
|
282
|
-
offset: _ctx.offset,
|
|
283
|
-
"show-arrow": _ctx.showArrow
|
|
284
|
-
}, {
|
|
285
|
-
default: withCtx(() => [
|
|
286
|
-
createElementVNode(
|
|
287
|
-
"div",
|
|
288
|
-
{
|
|
289
|
-
style: normalizeStyle(cursorStyle.value)
|
|
290
|
-
},
|
|
291
|
-
null,
|
|
292
|
-
4
|
|
293
|
-
)
|
|
294
|
-
]),
|
|
295
|
-
content: withCtx(() => [
|
|
296
|
-
createVNode(ElMentionDropdown, {
|
|
297
|
-
ref_key: "dropdownRef",
|
|
298
|
-
ref: dropdownRef,
|
|
299
|
-
options: filteredOptions.value,
|
|
300
|
-
disabled: unref(disabled),
|
|
301
|
-
loading: _ctx.loading,
|
|
302
|
-
"content-id": unref(contentId),
|
|
303
|
-
"aria-label": _ctx.ariaLabel,
|
|
304
|
-
onSelect: handleSelect,
|
|
305
|
-
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => {
|
|
306
|
-
var _a;
|
|
307
|
-
return (_a = elInputRef.value) == null ? void 0 : _a.focus();
|
|
308
|
-
}, ["stop"]))
|
|
309
|
-
}, createSlots({
|
|
310
|
-
_: 2
|
|
311
|
-
}, [
|
|
312
|
-
renderList(_ctx.$slots, (_, name) => {
|
|
313
|
-
return {
|
|
314
|
-
name,
|
|
315
|
-
fn: withCtx((slotProps) => [
|
|
316
|
-
renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps)))
|
|
317
|
-
])
|
|
318
|
-
};
|
|
319
|
-
})
|
|
320
|
-
]), 1032, ["options", "disabled", "loading", "content-id", "aria-label"])
|
|
321
|
-
]),
|
|
322
|
-
_: 3
|
|
323
|
-
}, 8, ["visible", "popper-class", "popper-style", "popper-options", "placement", "fallback-placements", "offset", "show-arrow"])
|
|
324
|
-
],
|
|
325
|
-
2
|
|
326
|
-
);
|
|
327
|
-
};
|
|
14
|
+
prefix: {
|
|
15
|
+
type: definePropType([String, Array]),
|
|
16
|
+
default: "@",
|
|
17
|
+
validator: (val) => {
|
|
18
|
+
if (isString(val))
|
|
19
|
+
return val.length === 1;
|
|
20
|
+
return val.every((v) => isString(v) && v.length === 1);
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
split: {
|
|
24
|
+
type: String,
|
|
25
|
+
default: " ",
|
|
26
|
+
validator: (val) => val.length === 1
|
|
27
|
+
},
|
|
28
|
+
filterOption: {
|
|
29
|
+
type: definePropType([Boolean, Function]),
|
|
30
|
+
default: () => filterOption,
|
|
31
|
+
validator: (val) => {
|
|
32
|
+
if (val === false)
|
|
33
|
+
return true;
|
|
34
|
+
return isFunction(val);
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
placement: {
|
|
38
|
+
type: definePropType(String),
|
|
39
|
+
default: "bottom"
|
|
40
|
+
},
|
|
41
|
+
showArrow: Boolean,
|
|
42
|
+
offset: {
|
|
43
|
+
type: Number,
|
|
44
|
+
default: 0
|
|
45
|
+
},
|
|
46
|
+
whole: Boolean,
|
|
47
|
+
checkIsWhole: {
|
|
48
|
+
type: definePropType(
|
|
49
|
+
Function
|
|
50
|
+
)
|
|
51
|
+
},
|
|
52
|
+
modelValue: String,
|
|
53
|
+
loading: Boolean,
|
|
54
|
+
popperClass: useTooltipContentProps.popperClass,
|
|
55
|
+
popperStyle: useTooltipContentProps.popperStyle,
|
|
56
|
+
popperOptions: {
|
|
57
|
+
type: definePropType(Object),
|
|
58
|
+
default: () => ({})
|
|
59
|
+
},
|
|
60
|
+
props: {
|
|
61
|
+
type: definePropType(Object),
|
|
62
|
+
default: () => mentionDefaultProps
|
|
328
63
|
}
|
|
329
64
|
});
|
|
330
|
-
|
|
65
|
+
const mentionEmits = {
|
|
66
|
+
[UPDATE_MODEL_EVENT]: (value) => isString(value),
|
|
67
|
+
"whole-remove": (pattern, prefix) => isString(pattern) && isString(prefix),
|
|
68
|
+
input: (value) => isString(value),
|
|
69
|
+
search: (pattern, prefix) => isString(pattern) && isString(prefix),
|
|
70
|
+
select: (option, prefix) => isObject(option) && isString(prefix),
|
|
71
|
+
focus: (evt) => evt instanceof FocusEvent,
|
|
72
|
+
blur: (evt) => evt instanceof FocusEvent
|
|
73
|
+
};
|
|
74
|
+
const mentionDefaultProps = {
|
|
75
|
+
value: "value",
|
|
76
|
+
label: "label",
|
|
77
|
+
disabled: "disabled"
|
|
78
|
+
};
|
|
331
79
|
|
|
332
|
-
export {
|
|
80
|
+
export { mentionDefaultProps, mentionEmits, mentionProps };
|
|
333
81
|
//# sourceMappingURL=mention.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mention.mjs","sources":["../../../../../../packages/components/mention/src/mention.vue"],"sourcesContent":["<template>\n <div ref=\"wrapperRef\" :class=\"ns.b()\">\n <el-input\n v-bind=\"mergeProps(passInputProps, $attrs)\"\n ref=\"elInputRef\"\n :model-value=\"modelValue\"\n :disabled=\"disabled\"\n :role=\"dropdownVisible ? 'combobox' : undefined\"\n :aria-activedescendant=\"dropdownVisible ? hoveringId || '' : undefined\"\n :aria-controls=\"dropdownVisible ? contentId : undefined\"\n :aria-expanded=\"dropdownVisible || undefined\"\n :aria-label=\"ariaLabel\"\n :aria-autocomplete=\"dropdownVisible ? 'none' : undefined\"\n :aria-haspopup=\"dropdownVisible ? 'listbox' : undefined\"\n @input=\"handleInputChange\"\n @keydown=\"handleInputKeyDown\"\n @mousedown=\"handleInputMouseDown\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-input>\n <el-tooltip\n ref=\"tooltipRef\"\n :visible=\"dropdownVisible\"\n :popper-class=\"[ns.e('popper'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"popperOptions\"\n :placement=\"computedPlacement\"\n :fallback-placements=\"computedFallbackPlacements\"\n effect=\"light\"\n pure\n :offset=\"offset\"\n :show-arrow=\"showArrow\"\n >\n <template #default>\n <div :style=\"cursorStyle\" />\n </template>\n <template #content>\n <el-mention-dropdown\n ref=\"dropdownRef\"\n :options=\"filteredOptions\"\n :disabled=\"disabled\"\n :loading=\"loading\"\n :content-id=\"contentId\"\n :aria-label=\"ariaLabel\"\n @select=\"handleSelect\"\n @click.stop=\"elInputRef?.focus()\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]=\"slotProps\">\n <slot :name=\"name\" v-bind=\"slotProps\" />\n </template>\n </el-mention-dropdown>\n </template>\n </el-tooltip>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, mergeProps, nextTick, ref } from 'vue'\nimport { pick } from 'lodash-unified'\nimport { useFocusController, useId, useNamespace } from '@element-plus/hooks'\nimport ElInput, { inputProps } from '@element-plus/components/input'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport {\n EVENT_CODE,\n INPUT_EVENT,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useFormDisabled } from '@element-plus/components/form'\nimport { getEventCode, isFunction } from '@element-plus/utils'\nimport { mentionDefaultProps, mentionEmits, mentionProps } from './mention'\nimport { getCursorPosition, getMentionCtx } from './helper'\nimport ElMentionDropdown from './mention-dropdown.vue'\n\nimport type { Placement } from '@popperjs/core'\nimport type { CSSProperties } from 'vue'\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { MentionCtx, MentionOption } from './types'\n\ndefineOptions({\n name: 'ElMention',\n inheritAttrs: false,\n})\n\nconst props = defineProps(mentionProps)\nconst emit = defineEmits(mentionEmits)\n\nconst passInputProps = computed(() => pick(props, Object.keys(inputProps)))\n\nconst ns = useNamespace('mention')\nconst disabled = useFormDisabled()\nconst contentId = useId()\n\nconst elInputRef = ref<InputInstance>()\nconst tooltipRef = ref<TooltipInstance>()\nconst dropdownRef = ref<InstanceType<typeof ElMentionDropdown>>()\n\nconst visible = ref(false)\nconst cursorStyle = ref<CSSProperties>()\nconst mentionCtx = ref<MentionCtx>()\n\nconst computedPlacement = computed<Placement>(() =>\n props.showArrow ? props.placement : `${props.placement}-start`\n)\n\nconst computedFallbackPlacements = computed<Placement[]>(() =>\n props.showArrow ? ['bottom', 'top'] : ['bottom-start', 'top-start']\n)\n\nconst aliasProps = computed(() => ({\n ...mentionDefaultProps,\n ...props.props,\n}))\n\nconst mapOption = (option: MentionOption) => {\n const base = {\n label: option[aliasProps.value.label],\n value: option[aliasProps.value.value],\n disabled: option[aliasProps.value.disabled],\n }\n return { ...option, ...base }\n}\n\nconst options = computed(() => props.options.map(mapOption))\n\nconst filteredOptions = computed(() => {\n const { filterOption } = props\n if (!mentionCtx.value || !filterOption) return options.value\n return options.value.filter((option) =>\n filterOption(mentionCtx.value!.pattern, option)\n )\n})\n\nconst dropdownVisible = computed(() => {\n return visible.value && (!!filteredOptions.value.length || props.loading)\n})\n\nconst hoveringId = computed(() => {\n return `${contentId.value}-${dropdownRef.value?.hoveringIndex}`\n})\n\nconst handleInputChange = (value: string) => {\n emit(UPDATE_MODEL_EVENT, value)\n emit(INPUT_EVENT, value)\n syncAfterCursorMove()\n}\n\nconst handleInputKeyDown = (event: KeyboardEvent | Event) => {\n if (elInputRef.value?.isComposing) return\n const code = getEventCode(event as KeyboardEvent)\n\n switch (code) {\n case EVENT_CODE.left:\n case EVENT_CODE.right:\n syncAfterCursorMove()\n break\n case EVENT_CODE.up:\n case EVENT_CODE.down:\n if (!visible.value) return\n event.preventDefault()\n dropdownRef.value?.navigateOptions(\n code === EVENT_CODE.up ? 'prev' : 'next'\n )\n break\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n if (!visible.value) {\n props.type !== 'textarea' && syncAfterCursorMove()\n return\n }\n event.preventDefault()\n if (dropdownRef.value?.hoverOption) {\n dropdownRef.value?.selectHoverOption()\n } else {\n visible.value = false\n }\n break\n case EVENT_CODE.esc:\n if (!visible.value) return\n event.preventDefault()\n visible.value = false\n break\n case EVENT_CODE.backspace:\n if (props.whole && mentionCtx.value) {\n const { splitIndex, selectionEnd, pattern, prefixIndex, prefix } =\n mentionCtx.value\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const matchOption = options.value.find((item) => item.value === pattern)\n const isWhole = isFunction(props.checkIsWhole)\n ? props.checkIsWhole(pattern, prefix)\n : matchOption\n if (isWhole && splitIndex !== -1 && splitIndex + 1 === selectionEnd) {\n event.preventDefault()\n const newValue =\n inputValue.slice(0, prefixIndex) + inputValue.slice(splitIndex + 1)\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('whole-remove', pattern, prefix)\n\n const newSelectionEnd = prefixIndex\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n syncDropdownVisible()\n })\n }\n }\n }\n}\n\nconst { wrapperRef } = useFocusController(elInputRef, {\n disabled,\n afterFocus() {\n syncAfterCursorMove()\n },\n beforeBlur(event) {\n return tooltipRef.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n visible.value = false\n },\n})\n\nconst handleInputMouseDown = () => {\n syncAfterCursorMove()\n}\n\n// Ensure that the original option passed by users is returned\nconst getOriginalOption = (mentionOption: MentionOption) => {\n return props.options.find((option: MentionOption) => {\n return mentionOption.value === option[aliasProps.value.value]\n })\n}\n\nconst handleSelect = (item: MentionOption) => {\n if (!mentionCtx.value) return\n const inputEl = getInputEl()\n if (!inputEl) return\n const inputValue = inputEl.value\n const { split } = props\n\n const newEndPart = inputValue.slice(mentionCtx.value.end)\n const alreadySeparated = newEndPart.startsWith(split)\n const newMiddlePart = `${item.value}${alreadySeparated ? '' : split}`\n\n const newValue =\n inputValue.slice(0, mentionCtx.value.start) + newMiddlePart + newEndPart\n\n emit(UPDATE_MODEL_EVENT, newValue)\n emit(INPUT_EVENT, newValue)\n emit('select', getOriginalOption(item)!, mentionCtx.value.prefix)\n\n const newSelectionEnd =\n mentionCtx.value.start + newMiddlePart.length + (alreadySeparated ? 1 : 0)\n\n nextTick(() => {\n // input value is updated\n inputEl.selectionStart = newSelectionEnd\n inputEl.selectionEnd = newSelectionEnd\n inputEl.focus()\n syncDropdownVisible()\n })\n}\n\nconst getInputEl = () =>\n props.type === 'textarea'\n ? elInputRef.value?.textarea\n : elInputRef.value?.input\n\nconst syncAfterCursorMove = () => {\n // can't use nextTick(), get cursor position will be wrong\n setTimeout(() => {\n syncCursor()\n syncDropdownVisible()\n nextTick(() => tooltipRef.value?.updatePopper())\n }, 0)\n}\n\nconst syncCursor = () => {\n const inputEl = getInputEl()\n if (!inputEl) return\n\n const caretPosition = getCursorPosition(inputEl)\n const inputRect = inputEl.getBoundingClientRect()\n const wrapperRect = wrapperRef.value!.getBoundingClientRect()\n\n cursorStyle.value = {\n position: 'absolute',\n width: 0,\n height: `${caretPosition.height}px`,\n left: `${caretPosition.left + inputRect.left - wrapperRect.left}px`,\n top: `${caretPosition.top + inputRect.top - wrapperRect.top}px`,\n }\n}\n\nconst syncDropdownVisible = () => {\n const inputEl = getInputEl()\n if (document.activeElement !== inputEl) {\n visible.value = false\n return\n }\n const { prefix, split } = props\n mentionCtx.value = getMentionCtx(inputEl, prefix, split)\n if (mentionCtx.value && mentionCtx.value.splitIndex === -1) {\n visible.value = true\n emit('search', mentionCtx.value.pattern, mentionCtx.value.prefix)\n return\n }\n visible.value = false\n}\n\ndefineExpose({\n input: elInputRef,\n tooltip: tooltipRef,\n dropdownVisible,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref","_createVNode","_mergeProps","$attrs","modelValue","ariaLabel","_createSlots","$slots","_withCtx","_renderSlot","_normalizeProps","_guardReactiveProps","popperClass","popperStyle","popperOptions","offset","showArrow","_createElementVNode","_normalizeStyle","loading","_withModifiers"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mention.mjs","sources":["../../../../../../packages/components/mention/src/mention.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isFunction,\n isObject,\n isString,\n} from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { inputProps } from '@element-plus/components/input'\nimport { filterOption } from './helper'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\n\nimport type { ExtractPropTypes, ExtractPublicPropTypes } from 'vue'\nimport type Mention from './mention.vue'\nimport type { MentionOption } from './types'\nimport type { Options } from '@element-plus/components/popper'\n\nexport const mentionProps = buildProps({\n ...inputProps,\n /**\n * @description mention options list\n */\n options: {\n type: definePropType<MentionOption[]>(Array),\n default: () => [],\n },\n /**\n * @description prefix character to trigger mentions. The string length must be exactly 1.\n */\n prefix: {\n type: definePropType<string | string[]>([String, Array]),\n default: '@',\n validator: (val: string | string[]) => {\n if (isString(val)) return val.length === 1\n return val.every((v) => isString(v) && v.length === 1)\n },\n },\n /**\n * @description character to split mentions. The string length must be exactly 1.\n */\n split: {\n type: String,\n default: ' ',\n validator: (val: string) => val.length === 1,\n },\n /**\n * @description customize filter option logic.\n */\n filterOption: {\n type: definePropType<false | typeof filterOption>([Boolean, Function]),\n default: () => filterOption,\n validator: (val) => {\n if (val === false) return true\n return isFunction(val)\n },\n },\n /**\n * @description set popup placement\n */\n placement: {\n type: definePropType<'bottom' | 'top'>(String),\n default: 'bottom',\n },\n /**\n * @description whether the dropdown panel has an arrow\n */\n showArrow: Boolean,\n /**\n * @description offset of the dropdown panel\n */\n offset: {\n type: Number,\n default: 0,\n },\n /**\n * @description when backspace is pressed to delete, whether the mention content is deleted as a whole\n */\n whole: Boolean,\n /**\n * @description when backspace is pressed to delete, check if the mention is a whole\n */\n checkIsWhole: {\n type: definePropType<(pattern: string, prefix: string) => boolean>(\n Function\n ),\n },\n /**\n * @description input value\n */\n modelValue: String,\n /**\n * @description whether the dropdown panel of mentions is in a loading state.\n */\n loading: Boolean,\n /**\n * @description custom class name for dropdown panel\n */\n popperClass: useTooltipContentProps.popperClass,\n /**\n * @description custom style for dropdown panel\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 configuration options\n */\n props: {\n type: definePropType<MentionOptionProps>(Object),\n default: () => mentionDefaultProps,\n },\n})\n\nexport const mentionEmits = {\n [UPDATE_MODEL_EVENT]: (value: string) => isString(value),\n 'whole-remove': (pattern: string, prefix: string) =>\n isString(pattern) && isString(prefix),\n input: (value: string) => isString(value),\n search: (pattern: string, prefix: string) =>\n isString(pattern) && isString(prefix),\n select: (option: MentionOption, prefix: string) =>\n isObject(option) && isString(prefix),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n}\n\nexport type MentionEmits = typeof mentionEmits\nexport type MentionProps = ExtractPropTypes<typeof mentionProps>\nexport type MentionPropsPublic = ExtractPublicPropTypes<typeof mentionProps>\nexport type MentionInstance = InstanceType<typeof Mention> & unknown\n\nexport type { MentionOption } from './types'\n\nexport type MentionOptionProps = {\n value?: string\n label?: string\n disabled?: string\n [key: string]: string | undefined\n}\n\nexport const mentionDefaultProps: Required<MentionOptionProps> = {\n value: 'value',\n label: 'label',\n disabled: 'disabled',\n}\n"],"names":[],"mappings":"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"}
|