@element-plus/nightly 0.0.20250225 → 0.0.20250227
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 +28 -16
- package/dist/index.full.min.js +13 -13
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +13 -13
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +28 -16
- 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/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/ms.js +1 -1
- package/dist/locale/ms.min.js +1 -1
- package/dist/locale/ms.min.mjs +1 -1
- package/dist/locale/ms.mjs +1 -1
- package/dist/locale/my.js +1 -1
- package/dist/locale/my.min.js +1 -1
- package/dist/locale/my.min.mjs +1 -1
- package/dist/locale/my.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/no.js +1 -1
- package/dist/locale/no.min.js +1 -1
- package/dist/locale/no.min.mjs +1 -1
- package/dist/locale/no.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +1 -1
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.mjs +1 -1
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/te.js +1 -1
- package/dist/locale/te.min.js +1 -1
- package/dist/locale/te.min.mjs +1 -1
- package/dist/locale/te.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-hk.js +1 -1
- package/dist/locale/zh-hk.min.js +1 -1
- package/dist/locale/zh-hk.min.mjs +1 -1
- package/dist/locale/zh-hk.mjs +1 -1
- package/dist/locale/zh-mo.js +1 -1
- package/dist/locale/zh-mo.min.js +1 -1
- package/dist/locale/zh-mo.min.mjs +1 -1
- package/dist/locale/zh-mo.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/affix/index.mjs +2 -2
- package/es/components/affix/src/affix.mjs +118 -25
- package/es/components/affix/src/affix.mjs.map +1 -1
- package/es/components/affix/src/affix2.mjs +25 -118
- package/es/components/affix/src/affix2.mjs.map +1 -1
- package/es/components/anchor/index.mjs +1 -1
- package/es/components/anchor/src/anchor-link.mjs +81 -5
- package/es/components/anchor/src/anchor-link.mjs.map +1 -1
- package/es/components/anchor/src/anchor-link2.mjs +5 -81
- package/es/components/anchor/src/anchor-link2.mjs.map +1 -1
- package/es/components/autocomplete/index.mjs +2 -2
- package/es/components/autocomplete/src/autocomplete.mjs +79 -367
- package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete2.mjs +367 -79
- package/es/components/autocomplete/src/autocomplete2.mjs.map +1 -1
- package/es/components/avatar/index.mjs +2 -2
- package/es/components/avatar/src/avatar.mjs +31 -65
- package/es/components/avatar/src/avatar.mjs.map +1 -1
- package/es/components/avatar/src/avatar2.mjs +65 -31
- package/es/components/avatar/src/avatar2.mjs.map +1 -1
- package/es/components/breadcrumb/index.mjs +2 -2
- package/es/components/breadcrumb/src/breadcrumb-item.mjs +8 -56
- package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb-item2.mjs +56 -8
- package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
- package/es/components/carousel/index.mjs +2 -2
- package/es/components/carousel/src/carousel-item.mjs +69 -7
- package/es/components/carousel/src/carousel-item.mjs.map +1 -1
- package/es/components/carousel/src/carousel-item2.mjs +7 -69
- package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
- package/es/components/check-tag/index.mjs +2 -2
- package/es/components/check-tag/src/check-tag.mjs +38 -14
- package/es/components/check-tag/src/check-tag.mjs.map +1 -1
- package/es/components/check-tag/src/check-tag2.mjs +14 -38
- package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
- package/es/components/col/index.mjs +2 -2
- package/es/components/col/src/col.mjs +64 -43
- package/es/components/col/src/col.mjs.map +1 -1
- package/es/components/col/src/col2.mjs +43 -64
- package/es/components/col/src/col2.mjs.map +1 -1
- package/es/components/collapse/index.mjs +2 -2
- package/es/components/collapse/src/collapse-item.mjs +18 -90
- package/es/components/collapse/src/collapse-item.mjs.map +1 -1
- package/es/components/collapse/src/collapse-item2.mjs +90 -18
- package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
- package/es/components/descriptions/src/description2.mjs +1 -1
- package/es/components/descriptions/src/descriptions-row.mjs +6 -63
- package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
- package/es/components/descriptions/src/descriptions-row2.mjs +63 -6
- package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
- package/es/components/dialog/index.mjs +2 -2
- package/es/components/dialog/src/dialog.mjs +171 -67
- package/es/components/dialog/src/dialog.mjs.map +1 -1
- package/es/components/dialog/src/dialog2.mjs +67 -171
- package/es/components/dialog/src/dialog2.mjs.map +1 -1
- package/es/components/divider/index.mjs +2 -2
- package/es/components/divider/src/divider.mjs +34 -16
- package/es/components/divider/src/divider.mjs.map +1 -1
- package/es/components/divider/src/divider2.mjs +16 -34
- package/es/components/divider/src/divider2.mjs.map +1 -1
- package/es/components/drawer/src/drawer.mjs +1 -1
- package/es/components/dropdown/index.mjs +2 -2
- package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
- package/es/components/dropdown/src/dropdown-item.mjs +1 -1
- package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
- package/es/components/dropdown/src/dropdown.mjs +108 -299
- package/es/components/dropdown/src/dropdown.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown2.mjs +299 -108
- package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
- package/es/components/empty/index.mjs +2 -2
- package/es/components/empty/src/empty.mjs +52 -11
- package/es/components/empty/src/empty.mjs.map +1 -1
- package/es/components/empty/src/empty2.mjs +11 -52
- package/es/components/empty/src/empty2.mjs.map +1 -1
- package/es/components/image/index.mjs +2 -2
- package/es/components/image/src/image.mjs +68 -222
- package/es/components/image/src/image.mjs.map +1 -1
- package/es/components/image/src/image2.mjs +222 -68
- package/es/components/image/src/image2.mjs.map +1 -1
- package/es/components/index.mjs +26 -26
- package/es/components/input-tag/index.mjs +2 -2
- package/es/components/input-tag/src/input-tag.mjs +65 -215
- package/es/components/input-tag/src/input-tag.mjs.map +1 -1
- package/es/components/input-tag/src/input-tag2.mjs +215 -65
- package/es/components/input-tag/src/input-tag2.mjs.map +1 -1
- package/es/components/link/index.mjs +2 -2
- package/es/components/link/src/link.mjs +49 -24
- package/es/components/link/src/link.mjs.map +1 -1
- package/es/components/link/src/link2.mjs +24 -49
- package/es/components/link/src/link2.mjs.map +1 -1
- package/es/components/mention/index.mjs +2 -2
- package/es/components/mention/src/mention.mjs +62 -282
- package/es/components/mention/src/mention.mjs.map +1 -1
- package/es/components/mention/src/mention2.mjs +282 -62
- package/es/components/mention/src/mention2.mjs.map +1 -1
- package/es/components/pagination/src/components/prev.mjs +17 -35
- package/es/components/pagination/src/components/prev.mjs.map +1 -1
- package/es/components/pagination/src/components/prev2.mjs +35 -17
- package/es/components/pagination/src/components/prev2.mjs.map +1 -1
- package/es/components/pagination/src/pagination.mjs +1 -1
- package/es/components/popover/src/popover.mjs +1 -1
- package/es/components/popper/index.mjs +2 -2
- package/es/components/popper/src/arrow.mjs +36 -7
- package/es/components/popper/src/arrow.mjs.map +1 -1
- package/es/components/popper/src/arrow2.mjs +7 -36
- package/es/components/popper/src/arrow2.mjs.map +1 -1
- package/es/components/radio/index.mjs +2 -2
- package/es/components/radio/src/radio-group.mjs +65 -34
- package/es/components/radio/src/radio-group.mjs.map +1 -1
- package/es/components/radio/src/radio-group2.mjs +34 -65
- package/es/components/radio/src/radio-group2.mjs.map +1 -1
- package/es/components/scrollbar/index.mjs +1 -1
- package/es/components/scrollbar/src/bar.mjs +10 -64
- package/es/components/scrollbar/src/bar.mjs.map +1 -1
- package/es/components/scrollbar/src/bar2.mjs +64 -10
- package/es/components/scrollbar/src/bar2.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
- package/es/components/scrollbar/src/thumb.mjs +11 -129
- package/es/components/scrollbar/src/thumb.mjs.map +1 -1
- package/es/components/scrollbar/src/thumb2.mjs +129 -11
- package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
- package/es/components/segmented/index.mjs +2 -2
- package/es/components/segmented/src/segmented.mjs +33 -167
- package/es/components/segmented/src/segmented.mjs.map +1 -1
- package/es/components/segmented/src/segmented2.mjs +167 -33
- package/es/components/segmented/src/segmented2.mjs.map +1 -1
- package/es/components/select-v2/src/select-dropdown.mjs +1 -1
- package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
- package/es/components/select-v2/src/select.vue.d.ts +1 -1
- package/es/components/select-v2/src/useSelect.d.ts +1 -1
- package/es/components/select-v2/src/useSelect.mjs +16 -12
- package/es/components/select-v2/src/useSelect.mjs.map +1 -1
- package/es/components/slider/index.mjs +2 -2
- package/es/components/slider/src/slider.mjs +238 -92
- package/es/components/slider/src/slider.mjs.map +1 -1
- package/es/components/slider/src/slider2.mjs +92 -238
- package/es/components/slider/src/slider2.mjs.map +1 -1
- package/es/components/switch/index.mjs +2 -2
- package/es/components/switch/src/switch.mjs +228 -72
- package/es/components/switch/src/switch.mjs.map +1 -1
- package/es/components/switch/src/switch2.mjs +72 -228
- package/es/components/switch/src/switch2.mjs.map +1 -1
- package/es/components/table/src/table-header/event-helper.mjs +1 -1
- package/es/components/table/src/table-header/event-helper.mjs.map +1 -1
- package/es/components/teleport/index.mjs +2 -2
- package/es/components/teleport/src/teleport.mjs +8 -18
- package/es/components/teleport/src/teleport.mjs.map +1 -1
- package/es/components/teleport/src/teleport2.mjs +18 -8
- package/es/components/teleport/src/teleport2.mjs.map +1 -1
- package/es/components/timeline/index.mjs +2 -2
- package/es/components/timeline/src/timeline-item.mjs +33 -72
- package/es/components/timeline/src/timeline-item.mjs.map +1 -1
- package/es/components/timeline/src/timeline-item2.mjs +72 -33
- package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
- package/es/components/tooltip/src/tooltip.mjs +1 -1
- package/es/components/tooltip/src/tooltip2.mjs +1 -1
- package/es/components/tooltip-v2/index.mjs +2 -2
- package/es/components/tooltip-v2/src/content2.mjs +1 -1
- package/es/components/tooltip-v2/src/tooltip.mjs +77 -19
- package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
- package/es/components/tooltip-v2/src/tooltip2.mjs +19 -77
- package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
- package/es/components/tour/index.mjs +2 -2
- package/es/components/tour/src/step.mjs +44 -168
- package/es/components/tour/src/step.mjs.map +1 -1
- package/es/components/tour/src/step2.mjs +168 -44
- package/es/components/tour/src/step2.mjs.map +1 -1
- package/es/components/transfer/src/composables/use-check.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.mjs +130 -19
- package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel2.mjs +19 -130
- package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
- package/es/components/transfer/src/transfer2.mjs +1 -1
- package/es/components/tree/src/tree-node.mjs +1 -1
- package/es/components/tree/src/tree-node.mjs.map +1 -1
- package/es/components/tree/src/tree.mjs +4 -0
- package/es/components/tree/src/tree.mjs.map +1 -1
- package/es/components/tree/src/tree.type.d.ts +1 -0
- package/es/components/tree/src/tree.vue.d.ts +9 -0
- package/es/components/tree-v2/src/composables/useTree.mjs +1 -1
- package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
- package/es/components/tree-v2/src/tree.vue.d.ts +3 -0
- package/es/components/tree-v2/src/virtual-tree.d.ts +1 -0
- package/es/components/tree-v2/src/virtual-tree.mjs +4 -0
- package/es/components/tree-v2/src/virtual-tree.mjs.map +1 -1
- package/es/components/upload/index.mjs +1 -1
- package/es/components/upload/src/upload-content.mjs +196 -33
- package/es/components/upload/src/upload-content.mjs.map +1 -1
- package/es/components/upload/src/upload-content2.mjs +33 -196
- package/es/components/upload/src/upload-content2.mjs.map +1 -1
- package/es/components/upload/src/upload2.mjs +1 -1
- package/es/components/visual-hidden/index.mjs +3 -3
- package/es/components/visual-hidden/src/visual-hidden.mjs +35 -6
- package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
- package/es/components/visual-hidden/src/visual-hidden2.mjs +6 -35
- package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
- package/es/directives/click-outside/index.mjs +1 -1
- package/es/hooks/use-focus-controller/index.mjs +1 -1
- package/es/hooks/use-lockscreen/index.mjs +1 -1
- package/es/index.mjs +26 -26
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/affix/index.js +2 -2
- package/lib/components/affix/src/affix.js +118 -26
- package/lib/components/affix/src/affix.js.map +1 -1
- package/lib/components/affix/src/affix2.js +26 -118
- package/lib/components/affix/src/affix2.js.map +1 -1
- package/lib/components/anchor/index.js +1 -1
- package/lib/components/anchor/src/anchor-link.js +81 -5
- package/lib/components/anchor/src/anchor-link.js.map +1 -1
- package/lib/components/anchor/src/anchor-link2.js +5 -81
- package/lib/components/anchor/src/anchor-link2.js.map +1 -1
- package/lib/components/autocomplete/index.js +2 -2
- package/lib/components/autocomplete/src/autocomplete.js +79 -366
- package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
- package/lib/components/autocomplete/src/autocomplete2.js +366 -79
- package/lib/components/autocomplete/src/autocomplete2.js.map +1 -1
- package/lib/components/avatar/index.js +2 -2
- package/lib/components/avatar/src/avatar.js +32 -65
- package/lib/components/avatar/src/avatar.js.map +1 -1
- package/lib/components/avatar/src/avatar2.js +65 -32
- package/lib/components/avatar/src/avatar2.js.map +1 -1
- package/lib/components/breadcrumb/index.js +2 -2
- package/lib/components/breadcrumb/src/breadcrumb-item.js +8 -56
- package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
- package/lib/components/breadcrumb/src/breadcrumb-item2.js +56 -8
- package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
- package/lib/components/carousel/index.js +2 -2
- package/lib/components/carousel/src/carousel-item.js +69 -7
- package/lib/components/carousel/src/carousel-item.js.map +1 -1
- package/lib/components/carousel/src/carousel-item2.js +7 -69
- package/lib/components/carousel/src/carousel-item2.js.map +1 -1
- package/lib/components/check-tag/index.js +2 -2
- package/lib/components/check-tag/src/check-tag.js +38 -15
- package/lib/components/check-tag/src/check-tag.js.map +1 -1
- package/lib/components/check-tag/src/check-tag2.js +15 -38
- package/lib/components/check-tag/src/check-tag2.js.map +1 -1
- package/lib/components/col/index.js +2 -2
- package/lib/components/col/src/col.js +64 -43
- package/lib/components/col/src/col.js.map +1 -1
- package/lib/components/col/src/col2.js +43 -64
- package/lib/components/col/src/col2.js.map +1 -1
- package/lib/components/collapse/index.js +2 -2
- package/lib/components/collapse/src/collapse-item.js +18 -90
- package/lib/components/collapse/src/collapse-item.js.map +1 -1
- package/lib/components/collapse/src/collapse-item2.js +90 -18
- package/lib/components/collapse/src/collapse-item2.js.map +1 -1
- package/lib/components/descriptions/src/description2.js +1 -1
- package/lib/components/descriptions/src/descriptions-row.js +6 -63
- package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
- package/lib/components/descriptions/src/descriptions-row2.js +63 -6
- package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
- package/lib/components/dialog/index.js +2 -2
- package/lib/components/dialog/src/dialog.js +171 -68
- package/lib/components/dialog/src/dialog.js.map +1 -1
- package/lib/components/dialog/src/dialog2.js +68 -171
- package/lib/components/dialog/src/dialog2.js.map +1 -1
- package/lib/components/divider/index.js +2 -2
- package/lib/components/divider/src/divider.js +34 -16
- package/lib/components/divider/src/divider.js.map +1 -1
- package/lib/components/divider/src/divider2.js +16 -34
- package/lib/components/divider/src/divider2.js.map +1 -1
- package/lib/components/drawer/src/drawer.js +1 -1
- package/lib/components/dropdown/index.js +2 -2
- package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
- package/lib/components/dropdown/src/dropdown-item.js +1 -1
- package/lib/components/dropdown/src/dropdown-menu.js +1 -1
- package/lib/components/dropdown/src/dropdown.js +117 -299
- package/lib/components/dropdown/src/dropdown.js.map +1 -1
- package/lib/components/dropdown/src/dropdown2.js +299 -117
- package/lib/components/dropdown/src/dropdown2.js.map +1 -1
- package/lib/components/empty/index.js +2 -2
- package/lib/components/empty/src/empty.js +52 -11
- package/lib/components/empty/src/empty.js.map +1 -1
- package/lib/components/empty/src/empty2.js +11 -52
- package/lib/components/empty/src/empty2.js.map +1 -1
- package/lib/components/image/index.js +2 -2
- package/lib/components/image/src/image.js +68 -221
- package/lib/components/image/src/image.js.map +1 -1
- package/lib/components/image/src/image2.js +221 -68
- package/lib/components/image/src/image2.js.map +1 -1
- package/lib/components/index.js +26 -26
- package/lib/components/input-tag/index.js +2 -2
- package/lib/components/input-tag/src/input-tag.js +65 -214
- package/lib/components/input-tag/src/input-tag.js.map +1 -1
- package/lib/components/input-tag/src/input-tag2.js +214 -65
- package/lib/components/input-tag/src/input-tag2.js.map +1 -1
- package/lib/components/link/index.js +2 -2
- package/lib/components/link/src/link.js +49 -25
- package/lib/components/link/src/link.js.map +1 -1
- package/lib/components/link/src/link2.js +25 -49
- package/lib/components/link/src/link2.js.map +1 -1
- package/lib/components/mention/index.js +2 -2
- package/lib/components/mention/src/mention.js +61 -280
- package/lib/components/mention/src/mention.js.map +1 -1
- package/lib/components/mention/src/mention2.js +280 -61
- package/lib/components/mention/src/mention2.js.map +1 -1
- package/lib/components/pagination/src/components/prev.js +18 -35
- package/lib/components/pagination/src/components/prev.js.map +1 -1
- package/lib/components/pagination/src/components/prev2.js +35 -18
- package/lib/components/pagination/src/components/prev2.js.map +1 -1
- package/lib/components/pagination/src/pagination.js +1 -1
- package/lib/components/popover/src/popover.js +1 -1
- package/lib/components/popper/index.js +2 -2
- package/lib/components/popper/src/arrow.js +36 -8
- package/lib/components/popper/src/arrow.js.map +1 -1
- package/lib/components/popper/src/arrow2.js +8 -36
- package/lib/components/popper/src/arrow2.js.map +1 -1
- package/lib/components/radio/index.js +2 -2
- package/lib/components/radio/src/radio-group.js +65 -35
- package/lib/components/radio/src/radio-group.js.map +1 -1
- package/lib/components/radio/src/radio-group2.js +35 -65
- package/lib/components/radio/src/radio-group2.js.map +1 -1
- package/lib/components/scrollbar/index.js +1 -1
- package/lib/components/scrollbar/src/bar.js +10 -64
- package/lib/components/scrollbar/src/bar.js.map +1 -1
- package/lib/components/scrollbar/src/bar2.js +64 -10
- package/lib/components/scrollbar/src/bar2.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar2.js +1 -1
- package/lib/components/scrollbar/src/thumb.js +11 -129
- package/lib/components/scrollbar/src/thumb.js.map +1 -1
- package/lib/components/scrollbar/src/thumb2.js +129 -11
- package/lib/components/scrollbar/src/thumb2.js.map +1 -1
- package/lib/components/segmented/index.js +2 -2
- package/lib/components/segmented/src/segmented.js +34 -167
- package/lib/components/segmented/src/segmented.js.map +1 -1
- package/lib/components/segmented/src/segmented2.js +167 -34
- package/lib/components/segmented/src/segmented2.js.map +1 -1
- package/lib/components/select-v2/src/select-dropdown.js +1 -1
- package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
- package/lib/components/select-v2/src/select.vue.d.ts +1 -1
- package/lib/components/select-v2/src/useSelect.d.ts +1 -1
- package/lib/components/select-v2/src/useSelect.js +15 -11
- package/lib/components/select-v2/src/useSelect.js.map +1 -1
- package/lib/components/slider/index.js +2 -2
- package/lib/components/slider/src/slider.js +238 -93
- package/lib/components/slider/src/slider.js.map +1 -1
- package/lib/components/slider/src/slider2.js +93 -238
- package/lib/components/slider/src/slider2.js.map +1 -1
- package/lib/components/switch/index.js +2 -2
- package/lib/components/switch/src/switch.js +227 -72
- package/lib/components/switch/src/switch.js.map +1 -1
- package/lib/components/switch/src/switch2.js +72 -227
- package/lib/components/switch/src/switch2.js.map +1 -1
- package/lib/components/table/src/table-header/event-helper.js +1 -1
- package/lib/components/table/src/table-header/event-helper.js.map +1 -1
- package/lib/components/teleport/index.js +2 -2
- package/lib/components/teleport/src/teleport.js +8 -18
- package/lib/components/teleport/src/teleport.js.map +1 -1
- package/lib/components/teleport/src/teleport2.js +18 -8
- package/lib/components/teleport/src/teleport2.js.map +1 -1
- package/lib/components/timeline/index.js +2 -2
- package/lib/components/timeline/src/timeline-item.js +33 -72
- package/lib/components/timeline/src/timeline-item.js.map +1 -1
- package/lib/components/timeline/src/timeline-item2.js +72 -33
- package/lib/components/timeline/src/timeline-item2.js.map +1 -1
- package/lib/components/tooltip/src/tooltip.js +1 -1
- package/lib/components/tooltip/src/tooltip2.js +1 -1
- package/lib/components/tooltip-v2/index.js +2 -2
- package/lib/components/tooltip-v2/src/content2.js +1 -1
- package/lib/components/tooltip-v2/src/tooltip.js +77 -19
- package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
- package/lib/components/tooltip-v2/src/tooltip2.js +19 -77
- package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
- package/lib/components/tour/index.js +2 -2
- package/lib/components/tour/src/step.js +44 -167
- package/lib/components/tour/src/step.js.map +1 -1
- package/lib/components/tour/src/step2.js +167 -44
- package/lib/components/tour/src/step2.js.map +1 -1
- package/lib/components/transfer/src/composables/use-check.js +1 -1
- package/lib/components/transfer/src/transfer-panel.js +130 -21
- package/lib/components/transfer/src/transfer-panel.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel2.js +21 -130
- package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
- package/lib/components/transfer/src/transfer2.js +1 -1
- package/lib/components/tree/src/tree-node.js +1 -1
- package/lib/components/tree/src/tree-node.js.map +1 -1
- package/lib/components/tree/src/tree.js +4 -0
- package/lib/components/tree/src/tree.js.map +1 -1
- package/lib/components/tree/src/tree.type.d.ts +1 -0
- package/lib/components/tree/src/tree.vue.d.ts +9 -0
- package/lib/components/tree-v2/src/composables/useTree.js +1 -1
- package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
- package/lib/components/tree-v2/src/tree.vue.d.ts +3 -0
- package/lib/components/tree-v2/src/virtual-tree.d.ts +1 -0
- package/lib/components/tree-v2/src/virtual-tree.js +4 -0
- package/lib/components/tree-v2/src/virtual-tree.js.map +1 -1
- package/lib/components/upload/index.js +1 -1
- package/lib/components/upload/src/upload-content.js +194 -31
- package/lib/components/upload/src/upload-content.js.map +1 -1
- package/lib/components/upload/src/upload-content2.js +31 -194
- package/lib/components/upload/src/upload-content2.js.map +1 -1
- package/lib/components/upload/src/upload2.js +1 -1
- package/lib/components/visual-hidden/index.js +2 -2
- package/lib/components/visual-hidden/src/visual-hidden.js +35 -6
- package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
- package/lib/components/visual-hidden/src/visual-hidden2.js +6 -35
- package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
- package/lib/directives/click-outside/index.js +1 -1
- package/lib/hooks/use-focus-controller/index.js +1 -1
- package/lib/hooks/use-lockscreen/index.js +1 -1
- package/lib/index.js +26 -26
- 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-tabs.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/tabs.scss +1 -0
- package/web-types.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.js","sources":["../../../../../../packages/components/tree/src/tree.vue"],"sourcesContent":["<template>\n <div\n ref=\"el$\"\n :class=\"[\n ns.b(),\n ns.is('dragging', !!dragState.draggingNode),\n ns.is('drop-not-allow', !dragState.allowDrop),\n ns.is('drop-inner', dragState.dropType === 'inner'),\n { [ns.m('highlight-current')]: highlightCurrent },\n ]\"\n role=\"tree\"\n >\n <el-tree-node\n v-for=\"child in root.childNodes\"\n :key=\"getNodeKey(child)\"\n :node=\"child\"\n :props=\"props\"\n :accordion=\"accordion\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :render-content=\"renderContent\"\n @node-expand=\"handleNodeExpand\"\n />\n <div v-if=\"isEmpty\" :class=\"ns.e('empty-block')\">\n <slot name=\"empty\">\n <span :class=\"ns.e('empty-text')\">\n {{ emptyText ?? t('el.tree.emptyText') }}\n </span>\n </slot>\n </div>\n <div\n v-show=\"dragState.showDropIndicator\"\n ref=\"dropIndicator$\"\n :class=\"ns.e('drop-indicator')\"\n />\n </div>\n</template>\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n inject,\n provide,\n ref,\n watch,\n} from 'vue'\nimport { iconPropType } from '@element-plus/utils'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { formItemContextKey } from '@element-plus/components/form'\nimport { selectKey } from '@element-plus/components/select/src/token'\nimport TreeStore from './model/tree-store'\nimport { getNodeKey as getNodeKeyUtil, handleCurrentChange } from './model/util'\nimport ElTreeNode from './tree-node.vue'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { useDragNodeHandler } from './model/useDragNode'\nimport { useKeydown } from './model/useKeydown'\nimport type Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type {\n TreeComponentProps,\n TreeData,\n TreeKey,\n TreeNodeData,\n} from './tree.type'\n\nexport default defineComponent({\n name: 'ElTree',\n components: { ElTreeNode },\n props: {\n data: {\n type: Array,\n default: () => [],\n },\n emptyText: {\n type: String,\n },\n renderAfterExpand: {\n type: Boolean,\n default: true,\n },\n nodeKey: String,\n checkStrictly: Boolean,\n defaultExpandAll: Boolean,\n expandOnClickNode: {\n type: Boolean,\n default: true,\n },\n checkOnClickNode: Boolean,\n checkDescendants: {\n type: Boolean,\n default: false,\n },\n autoExpandParent: {\n type: Boolean,\n default: true,\n },\n defaultCheckedKeys: Array as PropType<\n TreeComponentProps['defaultCheckedKeys']\n >,\n defaultExpandedKeys: Array as PropType<\n TreeComponentProps['defaultExpandedKeys']\n >,\n currentNodeKey: [String, Number] as PropType<string | number>,\n renderContent: Function,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n draggable: {\n type: Boolean,\n default: false,\n },\n allowDrag: Function,\n allowDrop: Function,\n props: {\n type: Object as PropType<TreeComponentProps['props']>,\n default: () => ({\n children: 'children',\n label: 'label',\n disabled: 'disabled',\n }),\n },\n lazy: {\n type: Boolean,\n default: false,\n },\n highlightCurrent: Boolean,\n load: Function as PropType<TreeComponentProps['load']>,\n filterNodeMethod: Function as PropType<\n TreeComponentProps['filterNodeMethod']\n >,\n accordion: Boolean,\n indent: {\n type: Number,\n default: 18,\n },\n icon: {\n type: iconPropType,\n },\n },\n emits: [\n 'check-change',\n 'current-change',\n 'node-click',\n 'node-contextmenu',\n 'node-collapse',\n 'node-expand',\n 'check',\n 'node-drag-start',\n 'node-drag-end',\n 'node-drop',\n 'node-drag-leave',\n 'node-drag-enter',\n 'node-drag-over',\n ],\n setup(props, ctx) {\n const { t } = useLocale()\n const ns = useNamespace('tree')\n const selectInfo = inject(selectKey, null)\n\n const store = ref<TreeStore>(\n new TreeStore({\n key: props.nodeKey,\n data: props.data,\n lazy: props.lazy,\n props: props.props,\n load: props.load,\n currentNodeKey: props.currentNodeKey,\n checkStrictly: props.checkStrictly,\n checkDescendants: props.checkDescendants,\n defaultCheckedKeys: props.defaultCheckedKeys,\n defaultExpandedKeys: props.defaultExpandedKeys,\n autoExpandParent: props.autoExpandParent,\n defaultExpandAll: props.defaultExpandAll,\n filterNodeMethod: props.filterNodeMethod,\n })\n )\n\n store.value.initialize()\n\n const root = ref<Node>(store.value.root)\n const currentNode = ref<Node>(null)\n const el$ = ref<Nullable<HTMLElement>>(null)\n const dropIndicator$ = ref<Nullable<HTMLElement>>(null)\n\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n\n const { dragState } = useDragNodeHandler({\n props,\n ctx,\n el$,\n dropIndicator$,\n store,\n })\n\n useKeydown({ el$ }, store)\n\n const isEmpty = computed(() => {\n const { childNodes } = root.value\n const hasFilteredOptions = selectInfo\n ? selectInfo.hasFilteredOptions !== 0\n : false\n return (\n (!childNodes ||\n childNodes.length === 0 ||\n childNodes.every(({ visible }) => !visible)) &&\n !hasFilteredOptions\n )\n })\n\n watch(\n () => props.currentNodeKey,\n (newVal) => {\n store.value.setCurrentNodeKey(newVal)\n }\n )\n\n watch(\n () => props.defaultCheckedKeys,\n (newVal) => {\n store.value.setDefaultCheckedKey(newVal)\n }\n )\n\n watch(\n () => props.defaultExpandedKeys,\n (newVal) => {\n store.value.setDefaultExpandedKeys(newVal)\n }\n )\n\n watch(\n () => props.data,\n (newVal) => {\n store.value.setData(newVal)\n },\n { deep: true }\n )\n\n watch(\n () => props.checkStrictly,\n (newVal) => {\n store.value.checkStrictly = newVal\n }\n )\n\n const filter = (value) => {\n if (!props.filterNodeMethod)\n throw new Error('[Tree] filterNodeMethod is required when filter')\n store.value.filter(value)\n }\n\n const getNodeKey = (node: Node) => {\n return getNodeKeyUtil(props.nodeKey, node.data)\n }\n\n const getNodePath = (data: TreeKey | TreeNodeData) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in getNodePath')\n const node = store.value.getNode(data)\n if (!node) return []\n const path = [node.data]\n let parent = node.parent\n while (parent && parent !== root.value) {\n path.push(parent.data)\n parent = parent.parent\n }\n return path.reverse()\n }\n\n const getCheckedNodes = (\n leafOnly?: boolean,\n includeHalfChecked?: boolean\n ): TreeNodeData[] => {\n return store.value.getCheckedNodes(leafOnly, includeHalfChecked)\n }\n\n const getCheckedKeys = (leafOnly?: boolean): TreeKey[] => {\n return store.value.getCheckedKeys(leafOnly)\n }\n\n const getCurrentNode = (): TreeNodeData => {\n const currentNode = store.value.getCurrentNode()\n return currentNode ? currentNode.data : null\n }\n\n const getCurrentKey = (): any => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in getCurrentKey')\n const currentNode = getCurrentNode()\n return currentNode ? currentNode[props.nodeKey] : null\n }\n\n const setCheckedNodes = (nodes: Node[], leafOnly?: boolean) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCheckedNodes')\n store.value.setCheckedNodes(nodes, leafOnly)\n }\n\n const setCheckedKeys = (keys: TreeKey[], leafOnly?: boolean) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCheckedKeys')\n store.value.setCheckedKeys(keys, leafOnly)\n }\n\n const setChecked = (\n data: TreeKey | TreeNodeData,\n checked: boolean,\n deep: boolean\n ) => {\n store.value.setChecked(data, checked, deep)\n }\n\n const getHalfCheckedNodes = (): TreeNodeData[] => {\n return store.value.getHalfCheckedNodes()\n }\n\n const getHalfCheckedKeys = (): TreeKey[] => {\n return store.value.getHalfCheckedKeys()\n }\n\n const setCurrentNode = (node: Node, shouldAutoExpandParent = true) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCurrentNode')\n\n handleCurrentChange(store, ctx.emit, () => {\n broadcastExpanded(node)\n store.value.setUserCurrentNode(node, shouldAutoExpandParent)\n })\n }\n\n const setCurrentKey = (key?: TreeKey, shouldAutoExpandParent = true) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCurrentKey')\n\n handleCurrentChange(store, ctx.emit, () => {\n broadcastExpanded()\n store.value.setCurrentNodeKey(key, shouldAutoExpandParent)\n })\n }\n\n const getNode = (data: TreeKey | TreeNodeData): Node => {\n return store.value.getNode(data)\n }\n\n const remove = (data: TreeNodeData | Node) => {\n store.value.remove(data)\n }\n\n const append = (\n data: TreeNodeData,\n parentNode: TreeNodeData | TreeKey | Node\n ) => {\n store.value.append(data, parentNode)\n }\n\n const insertBefore = (\n data: TreeNodeData,\n refNode: TreeKey | TreeNodeData | Node\n ) => {\n store.value.insertBefore(data, refNode)\n }\n\n const insertAfter = (\n data: TreeNodeData,\n refNode: TreeKey | TreeNodeData | Node\n ) => {\n store.value.insertAfter(data, refNode)\n }\n\n const handleNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const updateKeyChildren = (key: TreeKey, data: TreeData) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in updateKeyChild')\n store.value.updateChildren(key, data)\n }\n\n provide('RootTree', {\n ctx,\n props,\n store,\n root,\n currentNode,\n instance: getCurrentInstance(),\n } as any)\n\n provide(formItemContextKey, undefined)\n\n return {\n ns,\n // ref\n store,\n root,\n currentNode,\n dragState,\n el$,\n dropIndicator$,\n\n // computed\n isEmpty,\n\n // methods\n filter,\n getNodeKey,\n getNodePath,\n getCheckedNodes,\n getCheckedKeys,\n getCurrentNode,\n getCurrentKey,\n setCheckedNodes,\n setCheckedKeys,\n setChecked,\n getHalfCheckedNodes,\n getHalfCheckedKeys,\n setCurrentNode,\n setCurrentKey,\n t,\n getNode,\n remove,\n append,\n insertBefore,\n insertAfter,\n handleNodeExpand,\n updateKeyChildren,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElTreeNode","iconPropType","useLocale","useNamespace","inject","selectKey","ref","TreeStore","useNodeExpandEventBroadcast","useDragNodeHandler","useKeydown","computed","watch","getNodeKeyUtil","currentNode","handleCurrentChange","provide","getCurrentInstance","formItemContextKey","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_Fragment","_renderList","_createBlock","_renderSlot","_createElementVNode","_toDisplayString","_createCommentVNode","_withDirectives","_vShow","_export_sfc"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tree.js","sources":["../../../../../../packages/components/tree/src/tree.vue"],"sourcesContent":["<template>\n <div\n ref=\"el$\"\n :class=\"[\n ns.b(),\n ns.is('dragging', !!dragState.draggingNode),\n ns.is('drop-not-allow', !dragState.allowDrop),\n ns.is('drop-inner', dragState.dropType === 'inner'),\n { [ns.m('highlight-current')]: highlightCurrent },\n ]\"\n role=\"tree\"\n >\n <el-tree-node\n v-for=\"child in root.childNodes\"\n :key=\"getNodeKey(child)\"\n :node=\"child\"\n :props=\"props\"\n :accordion=\"accordion\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :render-content=\"renderContent\"\n @node-expand=\"handleNodeExpand\"\n />\n <div v-if=\"isEmpty\" :class=\"ns.e('empty-block')\">\n <slot name=\"empty\">\n <span :class=\"ns.e('empty-text')\">\n {{ emptyText ?? t('el.tree.emptyText') }}\n </span>\n </slot>\n </div>\n <div\n v-show=\"dragState.showDropIndicator\"\n ref=\"dropIndicator$\"\n :class=\"ns.e('drop-indicator')\"\n />\n </div>\n</template>\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n inject,\n provide,\n ref,\n watch,\n} from 'vue'\nimport { iconPropType } from '@element-plus/utils'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { formItemContextKey } from '@element-plus/components/form'\nimport { selectKey } from '@element-plus/components/select/src/token'\nimport TreeStore from './model/tree-store'\nimport { getNodeKey as getNodeKeyUtil, handleCurrentChange } from './model/util'\nimport ElTreeNode from './tree-node.vue'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { useDragNodeHandler } from './model/useDragNode'\nimport { useKeydown } from './model/useKeydown'\nimport type Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type {\n TreeComponentProps,\n TreeData,\n TreeKey,\n TreeNodeData,\n} from './tree.type'\n\nexport default defineComponent({\n name: 'ElTree',\n components: { ElTreeNode },\n props: {\n data: {\n type: Array,\n default: () => [],\n },\n emptyText: {\n type: String,\n },\n renderAfterExpand: {\n type: Boolean,\n default: true,\n },\n nodeKey: String,\n checkStrictly: Boolean,\n defaultExpandAll: Boolean,\n expandOnClickNode: {\n type: Boolean,\n default: true,\n },\n checkOnClickNode: Boolean,\n checkOnClickLeaf: {\n type: Boolean,\n default: true,\n },\n checkDescendants: {\n type: Boolean,\n default: false,\n },\n autoExpandParent: {\n type: Boolean,\n default: true,\n },\n defaultCheckedKeys: Array as PropType<\n TreeComponentProps['defaultCheckedKeys']\n >,\n defaultExpandedKeys: Array as PropType<\n TreeComponentProps['defaultExpandedKeys']\n >,\n currentNodeKey: [String, Number] as PropType<string | number>,\n renderContent: Function,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n draggable: {\n type: Boolean,\n default: false,\n },\n allowDrag: Function,\n allowDrop: Function,\n props: {\n type: Object as PropType<TreeComponentProps['props']>,\n default: () => ({\n children: 'children',\n label: 'label',\n disabled: 'disabled',\n }),\n },\n lazy: {\n type: Boolean,\n default: false,\n },\n highlightCurrent: Boolean,\n load: Function as PropType<TreeComponentProps['load']>,\n filterNodeMethod: Function as PropType<\n TreeComponentProps['filterNodeMethod']\n >,\n accordion: Boolean,\n indent: {\n type: Number,\n default: 18,\n },\n icon: {\n type: iconPropType,\n },\n },\n emits: [\n 'check-change',\n 'current-change',\n 'node-click',\n 'node-contextmenu',\n 'node-collapse',\n 'node-expand',\n 'check',\n 'node-drag-start',\n 'node-drag-end',\n 'node-drop',\n 'node-drag-leave',\n 'node-drag-enter',\n 'node-drag-over',\n ],\n setup(props, ctx) {\n const { t } = useLocale()\n const ns = useNamespace('tree')\n const selectInfo = inject(selectKey, null)\n\n const store = ref<TreeStore>(\n new TreeStore({\n key: props.nodeKey,\n data: props.data,\n lazy: props.lazy,\n props: props.props,\n load: props.load,\n currentNodeKey: props.currentNodeKey,\n checkStrictly: props.checkStrictly,\n checkDescendants: props.checkDescendants,\n defaultCheckedKeys: props.defaultCheckedKeys,\n defaultExpandedKeys: props.defaultExpandedKeys,\n autoExpandParent: props.autoExpandParent,\n defaultExpandAll: props.defaultExpandAll,\n filterNodeMethod: props.filterNodeMethod,\n })\n )\n\n store.value.initialize()\n\n const root = ref<Node>(store.value.root)\n const currentNode = ref<Node>(null)\n const el$ = ref<Nullable<HTMLElement>>(null)\n const dropIndicator$ = ref<Nullable<HTMLElement>>(null)\n\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n\n const { dragState } = useDragNodeHandler({\n props,\n ctx,\n el$,\n dropIndicator$,\n store,\n })\n\n useKeydown({ el$ }, store)\n\n const isEmpty = computed(() => {\n const { childNodes } = root.value\n const hasFilteredOptions = selectInfo\n ? selectInfo.hasFilteredOptions !== 0\n : false\n return (\n (!childNodes ||\n childNodes.length === 0 ||\n childNodes.every(({ visible }) => !visible)) &&\n !hasFilteredOptions\n )\n })\n\n watch(\n () => props.currentNodeKey,\n (newVal) => {\n store.value.setCurrentNodeKey(newVal)\n }\n )\n\n watch(\n () => props.defaultCheckedKeys,\n (newVal) => {\n store.value.setDefaultCheckedKey(newVal)\n }\n )\n\n watch(\n () => props.defaultExpandedKeys,\n (newVal) => {\n store.value.setDefaultExpandedKeys(newVal)\n }\n )\n\n watch(\n () => props.data,\n (newVal) => {\n store.value.setData(newVal)\n },\n { deep: true }\n )\n\n watch(\n () => props.checkStrictly,\n (newVal) => {\n store.value.checkStrictly = newVal\n }\n )\n\n const filter = (value) => {\n if (!props.filterNodeMethod)\n throw new Error('[Tree] filterNodeMethod is required when filter')\n store.value.filter(value)\n }\n\n const getNodeKey = (node: Node) => {\n return getNodeKeyUtil(props.nodeKey, node.data)\n }\n\n const getNodePath = (data: TreeKey | TreeNodeData) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in getNodePath')\n const node = store.value.getNode(data)\n if (!node) return []\n const path = [node.data]\n let parent = node.parent\n while (parent && parent !== root.value) {\n path.push(parent.data)\n parent = parent.parent\n }\n return path.reverse()\n }\n\n const getCheckedNodes = (\n leafOnly?: boolean,\n includeHalfChecked?: boolean\n ): TreeNodeData[] => {\n return store.value.getCheckedNodes(leafOnly, includeHalfChecked)\n }\n\n const getCheckedKeys = (leafOnly?: boolean): TreeKey[] => {\n return store.value.getCheckedKeys(leafOnly)\n }\n\n const getCurrentNode = (): TreeNodeData => {\n const currentNode = store.value.getCurrentNode()\n return currentNode ? currentNode.data : null\n }\n\n const getCurrentKey = (): any => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in getCurrentKey')\n const currentNode = getCurrentNode()\n return currentNode ? currentNode[props.nodeKey] : null\n }\n\n const setCheckedNodes = (nodes: Node[], leafOnly?: boolean) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCheckedNodes')\n store.value.setCheckedNodes(nodes, leafOnly)\n }\n\n const setCheckedKeys = (keys: TreeKey[], leafOnly?: boolean) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCheckedKeys')\n store.value.setCheckedKeys(keys, leafOnly)\n }\n\n const setChecked = (\n data: TreeKey | TreeNodeData,\n checked: boolean,\n deep: boolean\n ) => {\n store.value.setChecked(data, checked, deep)\n }\n\n const getHalfCheckedNodes = (): TreeNodeData[] => {\n return store.value.getHalfCheckedNodes()\n }\n\n const getHalfCheckedKeys = (): TreeKey[] => {\n return store.value.getHalfCheckedKeys()\n }\n\n const setCurrentNode = (node: Node, shouldAutoExpandParent = true) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCurrentNode')\n\n handleCurrentChange(store, ctx.emit, () => {\n broadcastExpanded(node)\n store.value.setUserCurrentNode(node, shouldAutoExpandParent)\n })\n }\n\n const setCurrentKey = (key?: TreeKey, shouldAutoExpandParent = true) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCurrentKey')\n\n handleCurrentChange(store, ctx.emit, () => {\n broadcastExpanded()\n store.value.setCurrentNodeKey(key, shouldAutoExpandParent)\n })\n }\n\n const getNode = (data: TreeKey | TreeNodeData): Node => {\n return store.value.getNode(data)\n }\n\n const remove = (data: TreeNodeData | Node) => {\n store.value.remove(data)\n }\n\n const append = (\n data: TreeNodeData,\n parentNode: TreeNodeData | TreeKey | Node\n ) => {\n store.value.append(data, parentNode)\n }\n\n const insertBefore = (\n data: TreeNodeData,\n refNode: TreeKey | TreeNodeData | Node\n ) => {\n store.value.insertBefore(data, refNode)\n }\n\n const insertAfter = (\n data: TreeNodeData,\n refNode: TreeKey | TreeNodeData | Node\n ) => {\n store.value.insertAfter(data, refNode)\n }\n\n const handleNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const updateKeyChildren = (key: TreeKey, data: TreeData) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in updateKeyChild')\n store.value.updateChildren(key, data)\n }\n\n provide('RootTree', {\n ctx,\n props,\n store,\n root,\n currentNode,\n instance: getCurrentInstance(),\n } as any)\n\n provide(formItemContextKey, undefined)\n\n return {\n ns,\n // ref\n store,\n root,\n currentNode,\n dragState,\n el$,\n dropIndicator$,\n\n // computed\n isEmpty,\n\n // methods\n filter,\n getNodeKey,\n getNodePath,\n getCheckedNodes,\n getCheckedKeys,\n getCurrentNode,\n getCurrentKey,\n setCheckedNodes,\n setCheckedKeys,\n setChecked,\n getHalfCheckedNodes,\n getHalfCheckedKeys,\n setCurrentNode,\n setCurrentKey,\n t,\n getNode,\n remove,\n append,\n insertBefore,\n insertAfter,\n handleNodeExpand,\n updateKeyChildren,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElTreeNode","iconPropType","useLocale","useNamespace","inject","selectKey","ref","TreeStore","useNodeExpandEventBroadcast","useDragNodeHandler","useKeydown","computed","watch","getNodeKeyUtil","currentNode","handleCurrentChange","provide","getCurrentInstance","formItemContextKey","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_Fragment","_renderList","_createBlock","_renderSlot","_createElementVNode","_toDisplayString","_createCommentVNode","_withDirectives","_vShow","_export_sfc"],"mappings":"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"}
|
|
@@ -22,6 +22,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
22
22
|
default: boolean;
|
|
23
23
|
};
|
|
24
24
|
checkOnClickNode: BooleanConstructor;
|
|
25
|
+
checkOnClickLeaf: {
|
|
26
|
+
type: BooleanConstructor;
|
|
27
|
+
default: boolean;
|
|
28
|
+
};
|
|
25
29
|
checkDescendants: {
|
|
26
30
|
type: BooleanConstructor;
|
|
27
31
|
default: boolean;
|
|
@@ -368,6 +372,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
368
372
|
default: boolean;
|
|
369
373
|
};
|
|
370
374
|
checkOnClickNode: BooleanConstructor;
|
|
375
|
+
checkOnClickLeaf: {
|
|
376
|
+
type: BooleanConstructor;
|
|
377
|
+
default: boolean;
|
|
378
|
+
};
|
|
371
379
|
checkDescendants: {
|
|
372
380
|
type: BooleanConstructor;
|
|
373
381
|
default: boolean;
|
|
@@ -440,6 +448,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
440
448
|
showCheckbox: boolean;
|
|
441
449
|
expandOnClickNode: boolean;
|
|
442
450
|
checkOnClickNode: boolean;
|
|
451
|
+
checkOnClickLeaf: boolean;
|
|
443
452
|
checkDescendants: boolean;
|
|
444
453
|
autoExpandParent: boolean;
|
|
445
454
|
highlightCurrent: boolean;
|
|
@@ -166,7 +166,7 @@ function useTree(props, emit) {
|
|
|
166
166
|
if (props.expandOnClickNode) {
|
|
167
167
|
toggleExpand(node);
|
|
168
168
|
}
|
|
169
|
-
if (props.showCheckbox && props.checkOnClickNode && !node.disabled) {
|
|
169
|
+
if (props.showCheckbox && (props.checkOnClickNode || node.isLeaf && props.checkOnClickLeaf) && !node.disabled) {
|
|
170
170
|
toggleCheckbox(node, !isChecked(node), true);
|
|
171
171
|
}
|
|
172
172
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTree.js","sources":["../../../../../../../packages/components/tree-v2/src/composables/useTree.ts"],"sourcesContent":["import { computed, nextTick, ref, shallowRef, watch } from 'vue'\nimport { isObject } from '@element-plus/utils'\nimport {\n CURRENT_CHANGE,\n NODE_CLICK,\n NODE_COLLAPSE,\n NODE_DROP,\n NODE_EXPAND,\n TreeOptionsEnum,\n} from '../virtual-tree'\nimport { useCheck } from './useCheck'\nimport { useFilter } from './useFilter'\nimport type {\n FixedSizeList,\n Alignment as ScrollStrategy,\n} from '@element-plus/components/virtual-list'\nimport type { SetupContext } from 'vue'\nimport type { treeEmits } from '../virtual-tree'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type {\n Tree,\n TreeData,\n TreeKey,\n TreeNode,\n TreeNodeData,\n TreeProps,\n} from '../types'\n\nexport function useTree(\n props: TreeProps,\n emit: SetupContext<typeof treeEmits>['emit']\n) {\n const expandedKeySet = ref<Set<TreeKey>>(new Set(props.defaultExpandedKeys))\n const currentKey = ref<TreeKey | undefined>()\n const tree = shallowRef<Tree | undefined>()\n const listRef = ref<typeof FixedSizeList | undefined>()\n\n watch(\n () => props.currentNodeKey,\n (key) => {\n currentKey.value = key\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => props.data,\n (data: TreeData) => {\n setData(data)\n },\n {\n immediate: true,\n }\n )\n\n const {\n isIndeterminate,\n isChecked,\n toggleCheckbox,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n } = useCheck(props, tree)\n\n const { doFilter, hiddenNodeKeySet, isForceHiddenExpandIcon } = useFilter(\n props,\n tree\n )\n\n const valueKey = computed(() => {\n return props.props?.value || TreeOptionsEnum.KEY\n })\n const childrenKey = computed(() => {\n return props.props?.children || TreeOptionsEnum.CHILDREN\n })\n const disabledKey = computed(() => {\n return props.props?.disabled || TreeOptionsEnum.DISABLED\n })\n const labelKey = computed(() => {\n return props.props?.label || TreeOptionsEnum.LABEL\n })\n\n const flattenTree = computed(() => {\n const expandedKeys = expandedKeySet.value\n const hiddenKeys = hiddenNodeKeySet.value\n const flattenNodes: TreeNode[] = []\n const nodes = tree.value?.treeNodes || []\n\n const stack: TreeNode[] = []\n for (let i = nodes.length - 1; i >= 0; --i) {\n stack.push(nodes[i])\n }\n while (stack.length) {\n const node = stack.pop()!\n if (hiddenKeys.has(node.key)) continue\n\n flattenNodes.push(node)\n if (node.children && expandedKeys.has(node.key)) {\n for (let i = node.children.length - 1; i >= 0; --i) {\n stack.push(node.children[i])\n }\n }\n }\n\n return flattenNodes\n })\n\n const isNotEmpty = computed(() => {\n return flattenTree.value.length > 0\n })\n\n function createTree(data: TreeData): Tree {\n const treeNodeMap: Map<TreeKey, TreeNode> = new Map()\n const levelTreeNodeMap: Map<number, TreeNode[]> = new Map()\n let maxLevel = 1\n function traverse(\n nodes: TreeData,\n level = 1,\n parent: TreeNode | undefined = undefined\n ) {\n const siblings: TreeNode[] = []\n for (const rawNode of nodes) {\n const value = getKey(rawNode)\n const node: TreeNode = {\n level,\n key: value,\n data: rawNode,\n }\n node.label = getLabel(rawNode)\n node.parent = parent\n const children = getChildren(rawNode)\n node.disabled = getDisabled(rawNode)\n node.isLeaf = !children || children.length === 0\n if (children && children.length) {\n node.children = traverse(children, level + 1, node)\n }\n siblings.push(node)\n treeNodeMap.set(value, node)\n if (!levelTreeNodeMap.has(level)) {\n levelTreeNodeMap.set(level, [])\n }\n levelTreeNodeMap.get(level)?.push(node)\n }\n if (level > maxLevel) {\n maxLevel = level\n }\n return siblings\n }\n const treeNodes: TreeNode[] = traverse(data)\n return {\n treeNodeMap,\n levelTreeNodeMap,\n maxLevel,\n treeNodes,\n }\n }\n\n function filter(query: string) {\n const keys = doFilter(query)\n if (keys) {\n expandedKeySet.value = keys\n }\n }\n\n function getChildren(node: TreeNodeData): TreeNodeData[] {\n return node[childrenKey.value]\n }\n\n function getKey(node: TreeNodeData): TreeKey {\n if (!node) {\n return ''\n }\n return node[valueKey.value]\n }\n\n function getDisabled(node: TreeNodeData): boolean {\n return node[disabledKey.value]\n }\n\n function getLabel(node: TreeNodeData): string {\n return node[labelKey.value]\n }\n\n function toggleExpand(node: TreeNode) {\n const expandedKeys = expandedKeySet.value\n if (expandedKeys.has(node.key)) {\n collapseNode(node)\n } else {\n expandNode(node)\n }\n }\n\n function setExpandedKeys(keys: TreeKey[]) {\n const expandedKeys = new Set<TreeKey>()\n const nodeMap = tree.value!.treeNodeMap\n\n keys.forEach((k) => {\n let node = nodeMap.get(k)\n while (node && !expandedKeys.has(node.key)) {\n expandedKeys.add(node.key)\n node = node.parent\n }\n })\n\n expandedKeySet.value = expandedKeys\n }\n\n function handleNodeClick(node: TreeNode, e: MouseEvent) {\n emit(NODE_CLICK, node.data, node, e)\n handleCurrentChange(node)\n if (props.expandOnClickNode) {\n toggleExpand(node)\n }\n if (props.showCheckbox && props.checkOnClickNode && !node.disabled) {\n toggleCheckbox(node, !isChecked(node), true)\n }\n }\n\n function handleNodeDrop(node: TreeNode, e: DragEvent) {\n emit(NODE_DROP, node.data, node, e)\n }\n\n function handleCurrentChange(node: TreeNode) {\n if (!isCurrent(node)) {\n currentKey.value = node.key\n emit(CURRENT_CHANGE, node.data, node)\n }\n }\n\n function handleNodeCheck(node: TreeNode, checked: CheckboxValueType) {\n toggleCheckbox(node, checked)\n }\n\n function expandNode(node: TreeNode) {\n const keySet = expandedKeySet.value\n if (tree.value && props.accordion) {\n // whether only one node among the same level can be expanded at one time\n const { treeNodeMap } = tree.value\n keySet.forEach((key) => {\n const treeNode = treeNodeMap.get(key)\n if (node && node.level === treeNode?.level) {\n keySet.delete(key)\n }\n })\n }\n keySet.add(node.key)\n emit(NODE_EXPAND, node.data, node)\n }\n\n function collapseNode(node: TreeNode) {\n expandedKeySet.value.delete(node.key)\n emit(NODE_COLLAPSE, node.data, node)\n }\n\n function isExpanded(node: TreeNode): boolean {\n return expandedKeySet.value.has(node.key)\n }\n\n function isDisabled(node: TreeNode): boolean {\n return !!node.disabled\n }\n\n function isCurrent(node: TreeNode): boolean {\n const current = currentKey.value\n return current !== undefined && current === node.key\n }\n\n function getCurrentNode(): TreeNodeData | undefined {\n if (!currentKey.value) return undefined\n return tree.value?.treeNodeMap.get(currentKey.value)?.data\n }\n\n function getCurrentKey(): TreeKey | undefined {\n return currentKey.value\n }\n\n function setCurrentKey(key: TreeKey): void {\n currentKey.value = key\n }\n\n function setData(data: TreeData) {\n nextTick(() => (tree.value = createTree(data)))\n }\n\n function getNode(data: TreeKey | TreeNodeData) {\n const key = isObject(data) ? getKey(data) : data\n return tree.value?.treeNodeMap.get(key)\n }\n\n function scrollToNode(key: TreeKey, strategy: ScrollStrategy = 'auto') {\n const node = getNode(key)\n if (node && listRef.value) {\n listRef.value.scrollToItem(flattenTree.value.indexOf(node), strategy)\n }\n }\n\n function scrollTo(offset: number) {\n listRef.value?.scrollTo(offset)\n }\n\n return {\n tree,\n flattenTree,\n isNotEmpty,\n listRef,\n getKey,\n getChildren,\n toggleExpand,\n toggleCheckbox,\n isExpanded,\n isChecked,\n isIndeterminate,\n isDisabled,\n isCurrent,\n isForceHiddenExpandIcon,\n handleNodeClick,\n handleNodeDrop,\n handleNodeCheck,\n // expose\n getCurrentNode,\n getCurrentKey,\n setCurrentKey,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n filter,\n setData,\n getNode,\n expandNode,\n collapseNode,\n setExpandedKeys,\n scrollToNode,\n scrollTo,\n }\n}\n"],"names":["ref","shallowRef","watch","useCheck","useFilter","computed","TreeOptionsEnum","NODE_CLICK","NODE_DROP","CURRENT_CHANGE","NODE_EXPAND","NODE_COLLAPSE","nextTick","isObject"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useTree.js","sources":["../../../../../../../packages/components/tree-v2/src/composables/useTree.ts"],"sourcesContent":["import { computed, nextTick, ref, shallowRef, watch } from 'vue'\nimport { isObject } from '@element-plus/utils'\nimport {\n CURRENT_CHANGE,\n NODE_CLICK,\n NODE_COLLAPSE,\n NODE_DROP,\n NODE_EXPAND,\n TreeOptionsEnum,\n} from '../virtual-tree'\nimport { useCheck } from './useCheck'\nimport { useFilter } from './useFilter'\nimport type {\n FixedSizeList,\n Alignment as ScrollStrategy,\n} from '@element-plus/components/virtual-list'\nimport type { SetupContext } from 'vue'\nimport type { treeEmits } from '../virtual-tree'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type {\n Tree,\n TreeData,\n TreeKey,\n TreeNode,\n TreeNodeData,\n TreeProps,\n} from '../types'\n\nexport function useTree(\n props: TreeProps,\n emit: SetupContext<typeof treeEmits>['emit']\n) {\n const expandedKeySet = ref<Set<TreeKey>>(new Set(props.defaultExpandedKeys))\n const currentKey = ref<TreeKey | undefined>()\n const tree = shallowRef<Tree | undefined>()\n const listRef = ref<typeof FixedSizeList | undefined>()\n\n watch(\n () => props.currentNodeKey,\n (key) => {\n currentKey.value = key\n },\n {\n immediate: true,\n }\n )\n\n watch(\n () => props.data,\n (data: TreeData) => {\n setData(data)\n },\n {\n immediate: true,\n }\n )\n\n const {\n isIndeterminate,\n isChecked,\n toggleCheckbox,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n } = useCheck(props, tree)\n\n const { doFilter, hiddenNodeKeySet, isForceHiddenExpandIcon } = useFilter(\n props,\n tree\n )\n\n const valueKey = computed(() => {\n return props.props?.value || TreeOptionsEnum.KEY\n })\n const childrenKey = computed(() => {\n return props.props?.children || TreeOptionsEnum.CHILDREN\n })\n const disabledKey = computed(() => {\n return props.props?.disabled || TreeOptionsEnum.DISABLED\n })\n const labelKey = computed(() => {\n return props.props?.label || TreeOptionsEnum.LABEL\n })\n\n const flattenTree = computed(() => {\n const expandedKeys = expandedKeySet.value\n const hiddenKeys = hiddenNodeKeySet.value\n const flattenNodes: TreeNode[] = []\n const nodes = tree.value?.treeNodes || []\n\n const stack: TreeNode[] = []\n for (let i = nodes.length - 1; i >= 0; --i) {\n stack.push(nodes[i])\n }\n while (stack.length) {\n const node = stack.pop()!\n if (hiddenKeys.has(node.key)) continue\n\n flattenNodes.push(node)\n if (node.children && expandedKeys.has(node.key)) {\n for (let i = node.children.length - 1; i >= 0; --i) {\n stack.push(node.children[i])\n }\n }\n }\n\n return flattenNodes\n })\n\n const isNotEmpty = computed(() => {\n return flattenTree.value.length > 0\n })\n\n function createTree(data: TreeData): Tree {\n const treeNodeMap: Map<TreeKey, TreeNode> = new Map()\n const levelTreeNodeMap: Map<number, TreeNode[]> = new Map()\n let maxLevel = 1\n function traverse(\n nodes: TreeData,\n level = 1,\n parent: TreeNode | undefined = undefined\n ) {\n const siblings: TreeNode[] = []\n for (const rawNode of nodes) {\n const value = getKey(rawNode)\n const node: TreeNode = {\n level,\n key: value,\n data: rawNode,\n }\n node.label = getLabel(rawNode)\n node.parent = parent\n const children = getChildren(rawNode)\n node.disabled = getDisabled(rawNode)\n node.isLeaf = !children || children.length === 0\n if (children && children.length) {\n node.children = traverse(children, level + 1, node)\n }\n siblings.push(node)\n treeNodeMap.set(value, node)\n if (!levelTreeNodeMap.has(level)) {\n levelTreeNodeMap.set(level, [])\n }\n levelTreeNodeMap.get(level)?.push(node)\n }\n if (level > maxLevel) {\n maxLevel = level\n }\n return siblings\n }\n const treeNodes: TreeNode[] = traverse(data)\n return {\n treeNodeMap,\n levelTreeNodeMap,\n maxLevel,\n treeNodes,\n }\n }\n\n function filter(query: string) {\n const keys = doFilter(query)\n if (keys) {\n expandedKeySet.value = keys\n }\n }\n\n function getChildren(node: TreeNodeData): TreeNodeData[] {\n return node[childrenKey.value]\n }\n\n function getKey(node: TreeNodeData): TreeKey {\n if (!node) {\n return ''\n }\n return node[valueKey.value]\n }\n\n function getDisabled(node: TreeNodeData): boolean {\n return node[disabledKey.value]\n }\n\n function getLabel(node: TreeNodeData): string {\n return node[labelKey.value]\n }\n\n function toggleExpand(node: TreeNode) {\n const expandedKeys = expandedKeySet.value\n if (expandedKeys.has(node.key)) {\n collapseNode(node)\n } else {\n expandNode(node)\n }\n }\n\n function setExpandedKeys(keys: TreeKey[]) {\n const expandedKeys = new Set<TreeKey>()\n const nodeMap = tree.value!.treeNodeMap\n\n keys.forEach((k) => {\n let node = nodeMap.get(k)\n while (node && !expandedKeys.has(node.key)) {\n expandedKeys.add(node.key)\n node = node.parent\n }\n })\n\n expandedKeySet.value = expandedKeys\n }\n\n function handleNodeClick(node: TreeNode, e: MouseEvent) {\n emit(NODE_CLICK, node.data, node, e)\n handleCurrentChange(node)\n if (props.expandOnClickNode) {\n toggleExpand(node)\n }\n if (\n props.showCheckbox &&\n (props.checkOnClickNode || (node.isLeaf && props.checkOnClickLeaf)) &&\n !node.disabled\n ) {\n toggleCheckbox(node, !isChecked(node), true)\n }\n }\n\n function handleNodeDrop(node: TreeNode, e: DragEvent) {\n emit(NODE_DROP, node.data, node, e)\n }\n\n function handleCurrentChange(node: TreeNode) {\n if (!isCurrent(node)) {\n currentKey.value = node.key\n emit(CURRENT_CHANGE, node.data, node)\n }\n }\n\n function handleNodeCheck(node: TreeNode, checked: CheckboxValueType) {\n toggleCheckbox(node, checked)\n }\n\n function expandNode(node: TreeNode) {\n const keySet = expandedKeySet.value\n if (tree.value && props.accordion) {\n // whether only one node among the same level can be expanded at one time\n const { treeNodeMap } = tree.value\n keySet.forEach((key) => {\n const treeNode = treeNodeMap.get(key)\n if (node && node.level === treeNode?.level) {\n keySet.delete(key)\n }\n })\n }\n keySet.add(node.key)\n emit(NODE_EXPAND, node.data, node)\n }\n\n function collapseNode(node: TreeNode) {\n expandedKeySet.value.delete(node.key)\n emit(NODE_COLLAPSE, node.data, node)\n }\n\n function isExpanded(node: TreeNode): boolean {\n return expandedKeySet.value.has(node.key)\n }\n\n function isDisabled(node: TreeNode): boolean {\n return !!node.disabled\n }\n\n function isCurrent(node: TreeNode): boolean {\n const current = currentKey.value\n return current !== undefined && current === node.key\n }\n\n function getCurrentNode(): TreeNodeData | undefined {\n if (!currentKey.value) return undefined\n return tree.value?.treeNodeMap.get(currentKey.value)?.data\n }\n\n function getCurrentKey(): TreeKey | undefined {\n return currentKey.value\n }\n\n function setCurrentKey(key: TreeKey): void {\n currentKey.value = key\n }\n\n function setData(data: TreeData) {\n nextTick(() => (tree.value = createTree(data)))\n }\n\n function getNode(data: TreeKey | TreeNodeData) {\n const key = isObject(data) ? getKey(data) : data\n return tree.value?.treeNodeMap.get(key)\n }\n\n function scrollToNode(key: TreeKey, strategy: ScrollStrategy = 'auto') {\n const node = getNode(key)\n if (node && listRef.value) {\n listRef.value.scrollToItem(flattenTree.value.indexOf(node), strategy)\n }\n }\n\n function scrollTo(offset: number) {\n listRef.value?.scrollTo(offset)\n }\n\n return {\n tree,\n flattenTree,\n isNotEmpty,\n listRef,\n getKey,\n getChildren,\n toggleExpand,\n toggleCheckbox,\n isExpanded,\n isChecked,\n isIndeterminate,\n isDisabled,\n isCurrent,\n isForceHiddenExpandIcon,\n handleNodeClick,\n handleNodeDrop,\n handleNodeCheck,\n // expose\n getCurrentNode,\n getCurrentKey,\n setCurrentKey,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n filter,\n setData,\n getNode,\n expandNode,\n collapseNode,\n setExpandedKeys,\n scrollToNode,\n scrollTo,\n }\n}\n"],"names":["ref","shallowRef","watch","useCheck","useFilter","computed","TreeOptionsEnum","NODE_CLICK","NODE_DROP","CURRENT_CHANGE","NODE_EXPAND","NODE_COLLAPSE","nextTick","isObject"],"mappings":"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"}
|
|
@@ -32,6 +32,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
|
|
|
32
32
|
};
|
|
33
33
|
readonly expandOnClickNode: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
34
34
|
readonly checkOnClickNode: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
35
|
+
readonly checkOnClickLeaf: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
35
36
|
readonly currentNodeKey: {
|
|
36
37
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => import("./types").TreeKey) | ((new (...args: any[]) => string | number) | (() => import("./types").TreeKey))[], unknown, unknown>>;
|
|
37
38
|
readonly required: false;
|
|
@@ -105,6 +106,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
|
|
|
105
106
|
};
|
|
106
107
|
readonly expandOnClickNode: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
107
108
|
readonly checkOnClickNode: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
109
|
+
readonly checkOnClickLeaf: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
108
110
|
readonly currentNodeKey: {
|
|
109
111
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => import("./types").TreeKey) | ((new (...args: any[]) => string | number) | (() => import("./types").TreeKey))[], unknown, unknown>>;
|
|
110
112
|
readonly required: false;
|
|
@@ -142,6 +144,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
|
|
|
142
144
|
readonly defaultExpandedKeys: import("./types").TreeKey[];
|
|
143
145
|
readonly expandOnClickNode: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
144
146
|
readonly checkOnClickNode: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
147
|
+
readonly checkOnClickLeaf: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
145
148
|
readonly highlightCurrent: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
146
149
|
}>;
|
|
147
150
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
@@ -45,6 +45,7 @@ export declare const treeProps: {
|
|
|
45
45
|
};
|
|
46
46
|
readonly expandOnClickNode: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
47
47
|
readonly checkOnClickNode: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
48
|
+
readonly checkOnClickLeaf: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
48
49
|
readonly currentNodeKey: {
|
|
49
50
|
readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number) | (() => TreeKey) | ((new (...args: any[]) => string | number) | (() => TreeKey))[], unknown, unknown>>;
|
|
50
51
|
readonly required: false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"virtual-tree.js","sources":["../../../../../../packages/components/tree-v2/src/virtual-tree.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n isBoolean,\n mutable,\n} from '@element-plus/utils'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type { InjectionKey } from 'vue'\nimport type { TreeNodeData } from '@element-plus/components/tree/src/tree.type'\nimport type {\n CheckedInfo,\n FilterMethod,\n TreeContext,\n TreeData,\n TreeKey,\n TreeNode,\n TreeOptionProps,\n} from './types'\n\n// constants\nexport const ROOT_TREE_INJECTION_KEY: InjectionKey<TreeContext> = Symbol()\nconst EMPTY_NODE = {\n key: -1,\n level: -1,\n data: {},\n} as const\n\n// enums\nexport enum TreeOptionsEnum {\n KEY = 'id',\n LABEL = 'label',\n CHILDREN = 'children',\n DISABLED = 'disabled',\n CLASS = '',\n}\n\nexport const enum SetOperationEnum {\n ADD = 'add',\n DELETE = 'delete',\n}\n\nconst itemSize = {\n type: Number,\n default: 26,\n}\n\n// props\nexport const treeProps = buildProps({\n data: {\n type: definePropType<TreeData>(Array),\n default: () => mutable([] as const),\n },\n emptyText: {\n type: String,\n },\n height: {\n type: Number,\n default: 200,\n },\n props: {\n type: definePropType<TreeOptionProps>(Object),\n default: () =>\n mutable({\n children: TreeOptionsEnum.CHILDREN,\n label: TreeOptionsEnum.LABEL,\n disabled: TreeOptionsEnum.DISABLED,\n value: TreeOptionsEnum.KEY,\n class: TreeOptionsEnum.CLASS,\n } as const),\n },\n highlightCurrent: {\n type: Boolean,\n default: false,\n },\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n defaultCheckedKeys: {\n type: definePropType<TreeKey[]>(Array),\n default: () => mutable([] as const),\n },\n // Whether checked state of a node not affects its father and\n // child nodes when show-checkbox is true\n checkStrictly: {\n type: Boolean,\n default: false,\n },\n defaultExpandedKeys: {\n type: definePropType<TreeKey[]>(Array),\n default: () => mutable([] as const),\n },\n indent: {\n type: Number,\n default: 16,\n },\n itemSize,\n icon: {\n type: iconPropType,\n },\n expandOnClickNode: {\n type: Boolean,\n default: true,\n },\n checkOnClickNode: {\n type: Boolean,\n default: false,\n },\n currentNodeKey: {\n type: definePropType<TreeKey>([String, Number]),\n },\n // TODO need to optimization\n accordion: {\n type: Boolean,\n default: false,\n },\n filterMethod: {\n type: definePropType<FilterMethod>(Function),\n },\n // Performance mode will increase memory usage, but scrolling will be smoother\n perfMode: {\n type: Boolean,\n default: true,\n },\n} as const)\n\nexport const treeNodeProps = buildProps({\n node: {\n type: definePropType<TreeNode>(Object),\n default: () => mutable(EMPTY_NODE),\n },\n expanded: {\n type: Boolean,\n default: false,\n },\n checked: {\n type: Boolean,\n default: false,\n },\n indeterminate: {\n type: Boolean,\n default: false,\n },\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n current: {\n type: Boolean,\n default: false,\n },\n hiddenExpandIcon: {\n type: Boolean,\n default: false,\n },\n itemSize,\n} as const)\n\nexport const treeNodeContentProps = buildProps({\n node: {\n type: definePropType<TreeNode>(Object),\n required: true,\n },\n} as const)\n\n// emits\nexport const NODE_CLICK = 'node-click'\nexport const NODE_DROP = 'node-drop'\nexport const NODE_EXPAND = 'node-expand'\nexport const NODE_COLLAPSE = 'node-collapse'\nexport const CURRENT_CHANGE = 'current-change'\nexport const NODE_CHECK = 'check'\nexport const NODE_CHECK_CHANGE = 'check-change'\nexport const NODE_CONTEXTMENU = 'node-contextmenu'\n\nexport const treeEmits = {\n [NODE_CLICK]: (data: TreeNodeData, node: TreeNode, e: MouseEvent) =>\n data && node && e,\n [NODE_DROP]: (data: TreeNodeData, node: TreeNode, e: DragEvent) =>\n data && node && e,\n [NODE_EXPAND]: (data: TreeNodeData, node: TreeNode) => data && node,\n [NODE_COLLAPSE]: (data: TreeNodeData, node: TreeNode) => data && node,\n [CURRENT_CHANGE]: (data: TreeNodeData, node: TreeNode) => data && node,\n [NODE_CHECK]: (data: TreeNodeData, checkedInfo: CheckedInfo) =>\n data && checkedInfo,\n [NODE_CHECK_CHANGE]: (data: TreeNodeData, checked: boolean) =>\n data && isBoolean(checked),\n [NODE_CONTEXTMENU]: (evt: Event, data: TreeNodeData, node: TreeNode) =>\n evt && data && node,\n}\n\nexport const treeNodeEmits = {\n click: (node: TreeNode, e: MouseEvent) => !!(node && e),\n drop: (node: TreeNode, e: DragEvent) => !!(node && e),\n toggle: (node: TreeNode) => !!node,\n check: (node: TreeNode, checked: CheckboxValueType) =>\n node && isBoolean(checked),\n}\n"],"names":["buildProps","definePropType","mutable","iconPropType","isBoolean"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"virtual-tree.js","sources":["../../../../../../packages/components/tree-v2/src/virtual-tree.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n isBoolean,\n mutable,\n} from '@element-plus/utils'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\nimport type { InjectionKey } from 'vue'\nimport type { TreeNodeData } from '@element-plus/components/tree/src/tree.type'\nimport type {\n CheckedInfo,\n FilterMethod,\n TreeContext,\n TreeData,\n TreeKey,\n TreeNode,\n TreeOptionProps,\n} from './types'\n\n// constants\nexport const ROOT_TREE_INJECTION_KEY: InjectionKey<TreeContext> = Symbol()\nconst EMPTY_NODE = {\n key: -1,\n level: -1,\n data: {},\n} as const\n\n// enums\nexport enum TreeOptionsEnum {\n KEY = 'id',\n LABEL = 'label',\n CHILDREN = 'children',\n DISABLED = 'disabled',\n CLASS = '',\n}\n\nexport const enum SetOperationEnum {\n ADD = 'add',\n DELETE = 'delete',\n}\n\nconst itemSize = {\n type: Number,\n default: 26,\n}\n\n// props\nexport const treeProps = buildProps({\n data: {\n type: definePropType<TreeData>(Array),\n default: () => mutable([] as const),\n },\n emptyText: {\n type: String,\n },\n height: {\n type: Number,\n default: 200,\n },\n props: {\n type: definePropType<TreeOptionProps>(Object),\n default: () =>\n mutable({\n children: TreeOptionsEnum.CHILDREN,\n label: TreeOptionsEnum.LABEL,\n disabled: TreeOptionsEnum.DISABLED,\n value: TreeOptionsEnum.KEY,\n class: TreeOptionsEnum.CLASS,\n } as const),\n },\n highlightCurrent: {\n type: Boolean,\n default: false,\n },\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n defaultCheckedKeys: {\n type: definePropType<TreeKey[]>(Array),\n default: () => mutable([] as const),\n },\n // Whether checked state of a node not affects its father and\n // child nodes when show-checkbox is true\n checkStrictly: {\n type: Boolean,\n default: false,\n },\n defaultExpandedKeys: {\n type: definePropType<TreeKey[]>(Array),\n default: () => mutable([] as const),\n },\n indent: {\n type: Number,\n default: 16,\n },\n itemSize,\n icon: {\n type: iconPropType,\n },\n expandOnClickNode: {\n type: Boolean,\n default: true,\n },\n checkOnClickNode: {\n type: Boolean,\n default: false,\n },\n checkOnClickLeaf: {\n type: Boolean,\n default: true,\n },\n currentNodeKey: {\n type: definePropType<TreeKey>([String, Number]),\n },\n // TODO need to optimization\n accordion: {\n type: Boolean,\n default: false,\n },\n filterMethod: {\n type: definePropType<FilterMethod>(Function),\n },\n // Performance mode will increase memory usage, but scrolling will be smoother\n perfMode: {\n type: Boolean,\n default: true,\n },\n} as const)\n\nexport const treeNodeProps = buildProps({\n node: {\n type: definePropType<TreeNode>(Object),\n default: () => mutable(EMPTY_NODE),\n },\n expanded: {\n type: Boolean,\n default: false,\n },\n checked: {\n type: Boolean,\n default: false,\n },\n indeterminate: {\n type: Boolean,\n default: false,\n },\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n current: {\n type: Boolean,\n default: false,\n },\n hiddenExpandIcon: {\n type: Boolean,\n default: false,\n },\n itemSize,\n} as const)\n\nexport const treeNodeContentProps = buildProps({\n node: {\n type: definePropType<TreeNode>(Object),\n required: true,\n },\n} as const)\n\n// emits\nexport const NODE_CLICK = 'node-click'\nexport const NODE_DROP = 'node-drop'\nexport const NODE_EXPAND = 'node-expand'\nexport const NODE_COLLAPSE = 'node-collapse'\nexport const CURRENT_CHANGE = 'current-change'\nexport const NODE_CHECK = 'check'\nexport const NODE_CHECK_CHANGE = 'check-change'\nexport const NODE_CONTEXTMENU = 'node-contextmenu'\n\nexport const treeEmits = {\n [NODE_CLICK]: (data: TreeNodeData, node: TreeNode, e: MouseEvent) =>\n data && node && e,\n [NODE_DROP]: (data: TreeNodeData, node: TreeNode, e: DragEvent) =>\n data && node && e,\n [NODE_EXPAND]: (data: TreeNodeData, node: TreeNode) => data && node,\n [NODE_COLLAPSE]: (data: TreeNodeData, node: TreeNode) => data && node,\n [CURRENT_CHANGE]: (data: TreeNodeData, node: TreeNode) => data && node,\n [NODE_CHECK]: (data: TreeNodeData, checkedInfo: CheckedInfo) =>\n data && checkedInfo,\n [NODE_CHECK_CHANGE]: (data: TreeNodeData, checked: boolean) =>\n data && isBoolean(checked),\n [NODE_CONTEXTMENU]: (evt: Event, data: TreeNodeData, node: TreeNode) =>\n evt && data && node,\n}\n\nexport const treeNodeEmits = {\n click: (node: TreeNode, e: MouseEvent) => !!(node && e),\n drop: (node: TreeNode, e: DragEvent) => !!(node && e),\n toggle: (node: TreeNode) => !!node,\n check: (node: TreeNode, checked: CheckboxValueType) =>\n node && isBoolean(checked),\n}\n"],"names":["buildProps","definePropType","mutable","iconPropType","isBoolean"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var upload$1 = require('./src/upload2.js');
|
|
6
6
|
var upload = require('./src/upload.js');
|
|
7
|
-
var uploadContent = require('./src/upload-
|
|
7
|
+
var uploadContent = require('./src/upload-content2.js');
|
|
8
8
|
var uploadList = require('./src/upload-list.js');
|
|
9
9
|
var uploadDragger = require('./src/upload-dragger.js');
|
|
10
10
|
var constants = require('./src/constants.js');
|
|
@@ -2,41 +2,204 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var vue = require('vue');
|
|
6
|
+
var lodashUnified = require('lodash-unified');
|
|
7
|
+
var uploadDragger = require('./upload-dragger2.js');
|
|
8
|
+
var uploadContent = require('./upload-content2.js');
|
|
5
9
|
var upload = require('./upload.js');
|
|
6
|
-
var
|
|
10
|
+
var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
|
|
11
|
+
var objects = require('../../../utils/objects.js');
|
|
12
|
+
var index = require('../../../hooks/use-namespace/index.js');
|
|
13
|
+
var useFormCommonProps = require('../../form/src/hooks/use-form-common-props.js');
|
|
7
14
|
var shared = require('@vue/shared');
|
|
8
15
|
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
16
|
+
const __default__ = vue.defineComponent({
|
|
17
|
+
name: "ElUploadContent",
|
|
18
|
+
inheritAttrs: false
|
|
19
|
+
});
|
|
20
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
21
|
+
...__default__,
|
|
22
|
+
props: uploadContent.uploadContentProps,
|
|
23
|
+
setup(__props, { expose }) {
|
|
24
|
+
const props = __props;
|
|
25
|
+
const ns = index.useNamespace("upload");
|
|
26
|
+
const disabled = useFormCommonProps.useFormDisabled();
|
|
27
|
+
const requests = vue.shallowRef({});
|
|
28
|
+
const inputRef = vue.shallowRef();
|
|
29
|
+
const uploadFiles = (files) => {
|
|
30
|
+
if (files.length === 0)
|
|
31
|
+
return;
|
|
32
|
+
const { autoUpload, limit, fileList, multiple, onStart, onExceed } = props;
|
|
33
|
+
if (limit && fileList.length + files.length > limit) {
|
|
34
|
+
onExceed(files, fileList);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
if (!multiple) {
|
|
38
|
+
files = files.slice(0, 1);
|
|
39
|
+
}
|
|
40
|
+
for (const file of files) {
|
|
41
|
+
const rawFile = file;
|
|
42
|
+
rawFile.uid = upload.genFileId();
|
|
43
|
+
onStart(rawFile);
|
|
44
|
+
if (autoUpload)
|
|
45
|
+
upload$1(rawFile);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const upload$1 = async (rawFile) => {
|
|
49
|
+
inputRef.value.value = "";
|
|
50
|
+
if (!props.beforeUpload) {
|
|
51
|
+
return doUpload(rawFile);
|
|
52
|
+
}
|
|
53
|
+
let hookResult;
|
|
54
|
+
let beforeData = {};
|
|
55
|
+
try {
|
|
56
|
+
const originData = props.data;
|
|
57
|
+
const beforeUploadPromise = props.beforeUpload(rawFile);
|
|
58
|
+
beforeData = shared.isPlainObject(props.data) ? lodashUnified.cloneDeep(props.data) : props.data;
|
|
59
|
+
hookResult = await beforeUploadPromise;
|
|
60
|
+
if (shared.isPlainObject(props.data) && lodashUnified.isEqual(originData, beforeData)) {
|
|
61
|
+
beforeData = lodashUnified.cloneDeep(props.data);
|
|
62
|
+
}
|
|
63
|
+
} catch (e) {
|
|
64
|
+
hookResult = false;
|
|
65
|
+
}
|
|
66
|
+
if (hookResult === false) {
|
|
67
|
+
props.onRemove(rawFile);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
let file = rawFile;
|
|
71
|
+
if (hookResult instanceof Blob) {
|
|
72
|
+
if (hookResult instanceof File) {
|
|
73
|
+
file = hookResult;
|
|
74
|
+
} else {
|
|
75
|
+
file = new File([hookResult], rawFile.name, {
|
|
76
|
+
type: rawFile.type
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
doUpload(Object.assign(file, {
|
|
81
|
+
uid: rawFile.uid
|
|
82
|
+
}), beforeData);
|
|
83
|
+
};
|
|
84
|
+
const resolveData = async (data, rawFile) => {
|
|
85
|
+
if (shared.isFunction(data)) {
|
|
86
|
+
return data(rawFile);
|
|
87
|
+
}
|
|
88
|
+
return data;
|
|
89
|
+
};
|
|
90
|
+
const doUpload = async (rawFile, beforeData) => {
|
|
91
|
+
const {
|
|
92
|
+
headers,
|
|
93
|
+
data,
|
|
94
|
+
method,
|
|
95
|
+
withCredentials,
|
|
96
|
+
name: filename,
|
|
97
|
+
action,
|
|
98
|
+
onProgress,
|
|
99
|
+
onSuccess,
|
|
100
|
+
onError,
|
|
101
|
+
httpRequest
|
|
102
|
+
} = props;
|
|
103
|
+
try {
|
|
104
|
+
beforeData = await resolveData(beforeData != null ? beforeData : data, rawFile);
|
|
105
|
+
} catch (e) {
|
|
106
|
+
props.onRemove(rawFile);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const { uid } = rawFile;
|
|
110
|
+
const options = {
|
|
111
|
+
headers: headers || {},
|
|
112
|
+
withCredentials,
|
|
113
|
+
file: rawFile,
|
|
114
|
+
data: beforeData,
|
|
115
|
+
method,
|
|
116
|
+
filename,
|
|
117
|
+
action,
|
|
118
|
+
onProgress: (evt) => {
|
|
119
|
+
onProgress(evt, rawFile);
|
|
120
|
+
},
|
|
121
|
+
onSuccess: (res) => {
|
|
122
|
+
onSuccess(res, rawFile);
|
|
123
|
+
delete requests.value[uid];
|
|
124
|
+
},
|
|
125
|
+
onError: (err) => {
|
|
126
|
+
onError(err, rawFile);
|
|
127
|
+
delete requests.value[uid];
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
const request = httpRequest(options);
|
|
131
|
+
requests.value[uid] = request;
|
|
132
|
+
if (request instanceof Promise) {
|
|
133
|
+
request.then(options.onSuccess, options.onError);
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
const handleChange = (e) => {
|
|
137
|
+
const files = e.target.files;
|
|
138
|
+
if (!files)
|
|
139
|
+
return;
|
|
140
|
+
uploadFiles(Array.from(files));
|
|
141
|
+
};
|
|
142
|
+
const handleClick = () => {
|
|
143
|
+
if (!disabled.value) {
|
|
144
|
+
inputRef.value.value = "";
|
|
145
|
+
inputRef.value.click();
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
const handleKeydown = () => {
|
|
149
|
+
handleClick();
|
|
150
|
+
};
|
|
151
|
+
const abort = (file) => {
|
|
152
|
+
const _reqs = objects.entriesOf(requests.value).filter(file ? ([uid]) => String(file.uid) === uid : () => true);
|
|
153
|
+
_reqs.forEach(([uid, req]) => {
|
|
154
|
+
if (req instanceof XMLHttpRequest)
|
|
155
|
+
req.abort();
|
|
156
|
+
delete requests.value[uid];
|
|
157
|
+
});
|
|
158
|
+
};
|
|
159
|
+
expose({
|
|
160
|
+
abort,
|
|
161
|
+
upload: upload$1
|
|
162
|
+
});
|
|
163
|
+
return (_ctx, _cache) => {
|
|
164
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
165
|
+
class: vue.normalizeClass([
|
|
166
|
+
vue.unref(ns).b(),
|
|
167
|
+
vue.unref(ns).m(_ctx.listType),
|
|
168
|
+
vue.unref(ns).is("drag", _ctx.drag),
|
|
169
|
+
vue.unref(ns).is("disabled", vue.unref(disabled))
|
|
170
|
+
]),
|
|
171
|
+
tabindex: vue.unref(disabled) ? "-1" : "0",
|
|
172
|
+
onClick: handleClick,
|
|
173
|
+
onKeydown: vue.withKeys(vue.withModifiers(handleKeydown, ["self"]), ["enter", "space"])
|
|
174
|
+
}, [
|
|
175
|
+
_ctx.drag ? (vue.openBlock(), vue.createBlock(uploadDragger["default"], {
|
|
176
|
+
key: 0,
|
|
177
|
+
disabled: vue.unref(disabled),
|
|
178
|
+
onFile: uploadFiles
|
|
179
|
+
}, {
|
|
180
|
+
default: vue.withCtx(() => [
|
|
181
|
+
vue.renderSlot(_ctx.$slots, "default")
|
|
182
|
+
]),
|
|
183
|
+
_: 3
|
|
184
|
+
}, 8, ["disabled"])) : vue.renderSlot(_ctx.$slots, "default", { key: 1 }),
|
|
185
|
+
vue.createElementVNode("input", {
|
|
186
|
+
ref_key: "inputRef",
|
|
187
|
+
ref: inputRef,
|
|
188
|
+
class: vue.normalizeClass(vue.unref(ns).e("input")),
|
|
189
|
+
name: _ctx.name,
|
|
190
|
+
disabled: vue.unref(disabled),
|
|
191
|
+
multiple: _ctx.multiple,
|
|
192
|
+
accept: _ctx.accept,
|
|
193
|
+
type: "file",
|
|
194
|
+
onChange: handleChange,
|
|
195
|
+
onClick: vue.withModifiers(() => {
|
|
196
|
+
}, ["stop"])
|
|
197
|
+
}, null, 42, ["name", "disabled", "multiple", "accept", "onClick"])
|
|
198
|
+
], 42, ["tabindex", "onKeydown"]);
|
|
199
|
+
};
|
|
38
200
|
}
|
|
39
201
|
});
|
|
202
|
+
var UploadContent = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "upload-content.vue"]]);
|
|
40
203
|
|
|
41
|
-
exports
|
|
204
|
+
exports["default"] = UploadContent;
|
|
42
205
|
//# sourceMappingURL=upload-content.js.map
|