@element-plus/nightly 0.0.20250621 → 0.0.20250623
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.full.js +338 -372
- package/dist/index.full.min.js +16 -16
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +16 -16
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +338 -374
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar-eg.js +1 -1
- package/dist/locale/ar-eg.min.js +1 -1
- package/dist/locale/ar-eg.min.mjs +1 -1
- package/dist/locale/ar-eg.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/hi.js +1 -1
- package/dist/locale/hi.min.js +1 -1
- package/dist/locale/hi.min.mjs +1 -1
- package/dist/locale/hi.mjs +1 -1
- package/dist/locale/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lo.js +1 -1
- package/dist/locale/lo.min.js +1 -1
- package/dist/locale/lo.min.mjs +1 -1
- package/dist/locale/lo.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/ms.js +1 -1
- package/dist/locale/ms.min.js +1 -1
- package/dist/locale/ms.min.mjs +1 -1
- package/dist/locale/ms.mjs +1 -1
- package/dist/locale/my.js +1 -1
- package/dist/locale/my.min.js +1 -1
- package/dist/locale/my.min.mjs +1 -1
- package/dist/locale/my.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/no.js +1 -1
- package/dist/locale/no.min.js +1 -1
- package/dist/locale/no.min.mjs +1 -1
- package/dist/locale/no.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +1 -1
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.mjs +1 -1
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/te.js +1 -1
- package/dist/locale/te.min.js +1 -1
- package/dist/locale/te.min.mjs +1 -1
- package/dist/locale/te.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-hk.js +1 -1
- package/dist/locale/zh-hk.min.js +1 -1
- package/dist/locale/zh-hk.min.mjs +1 -1
- package/dist/locale/zh-hk.mjs +1 -1
- package/dist/locale/zh-mo.js +1 -1
- package/dist/locale/zh-mo.min.js +1 -1
- package/dist/locale/zh-mo.min.mjs +1 -1
- package/dist/locale/zh-mo.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/anchor/index.mjs +2 -2
- package/es/components/anchor/src/anchor.mjs +193 -42
- package/es/components/anchor/src/anchor.mjs.map +1 -1
- package/es/components/anchor/src/anchor2.mjs +42 -193
- package/es/components/anchor/src/anchor2.mjs.map +1 -1
- package/es/components/calendar/src/calendar2.mjs +1 -1
- package/es/components/calendar/src/date-table.mjs +89 -31
- package/es/components/calendar/src/date-table.mjs.map +1 -1
- package/es/components/calendar/src/date-table2.mjs +31 -89
- package/es/components/calendar/src/date-table2.mjs.map +1 -1
- package/es/components/calendar/src/use-date-table.mjs +1 -1
- package/es/components/cascader/src/cascader.d.ts +2 -2
- package/es/components/cascader/src/cascader.mjs +3 -2
- package/es/components/cascader/src/cascader.mjs.map +1 -1
- package/es/components/cascader/src/cascader.vue.d.ts +4 -4
- package/es/components/cascader-panel/index.mjs +1 -1
- package/es/components/cascader-panel/src/config.d.ts +26 -2
- package/es/components/cascader-panel/src/config.mjs +19 -1
- package/es/components/cascader-panel/src/config.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.mjs +45 -54
- package/es/components/cascader-panel/src/index.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.vue.d.ts +46 -46
- package/es/components/cascader-panel/src/instance.d.ts +2 -0
- package/es/components/cascader-panel/src/menu.mjs +68 -85
- package/es/components/cascader-panel/src/menu.mjs.map +1 -1
- package/es/components/cascader-panel/src/menu.vue.d.ts +11 -30
- package/es/components/cascader-panel/src/node-content.d.ts +14 -19
- package/es/components/cascader-panel/src/node-content.mjs +29 -18
- package/es/components/cascader-panel/src/node-content.mjs.map +1 -1
- package/es/components/cascader-panel/src/node.d.ts +9 -8
- package/es/components/cascader-panel/src/node.mjs +12 -12
- package/es/components/cascader-panel/src/node.mjs.map +1 -1
- package/es/components/cascader-panel/src/node.vue.d.ts +3 -36
- package/es/components/cascader-panel/src/node2.mjs +86 -114
- package/es/components/cascader-panel/src/node2.mjs.map +1 -1
- package/es/components/cascader-panel/src/types.d.ts +6 -6
- package/es/components/cascader-panel/src/types.mjs.map +1 -1
- package/es/components/collection/index.mjs +1 -1
- package/es/components/collection/src/collection.mjs +62 -10
- package/es/components/collection/src/collection.mjs.map +1 -1
- package/es/components/collection/src/collection2.mjs +10 -62
- package/es/components/collection/src/collection2.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown-item-impl.mjs +2 -2
- package/es/components/dropdown/src/dropdown-menu.mjs +1 -1
- package/es/components/dropdown/src/dropdown.mjs +1 -1
- package/es/components/dropdown/src/dropdown2.mjs +1 -1
- package/es/components/form/index.mjs +2 -2
- package/es/components/form/src/form.mjs +54 -161
- package/es/components/form/src/form.mjs.map +1 -1
- package/es/components/form/src/form2.mjs +161 -54
- package/es/components/form/src/form2.mjs.map +1 -1
- package/es/components/image-viewer/index.mjs +2 -2
- package/es/components/image-viewer/src/image-viewer.mjs +49 -447
- package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer2.mjs +447 -49
- package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
- package/es/components/index.mjs +14 -14
- package/es/components/input/index.mjs +2 -2
- package/es/components/input/src/input.mjs +106 -437
- package/es/components/input/src/input.mjs.map +1 -1
- package/es/components/input/src/input2.mjs +437 -106
- package/es/components/input/src/input2.mjs.map +1 -1
- package/es/components/mention/src/mention.mjs +1 -1
- package/es/components/mention/src/mention2.mjs +1 -1
- package/es/components/popper/index.mjs +4 -4
- package/es/components/popper/src/arrow.mjs +7 -30
- package/es/components/popper/src/arrow.mjs.map +1 -1
- package/es/components/popper/src/arrow2.mjs +30 -7
- package/es/components/popper/src/arrow2.mjs.map +1 -1
- package/es/components/popper/src/content.mjs +1 -1
- package/es/components/popper/src/trigger.mjs +31 -127
- package/es/components/popper/src/trigger.mjs.map +1 -1
- package/es/components/popper/src/trigger2.mjs +127 -31
- package/es/components/popper/src/trigger2.mjs.map +1 -1
- package/es/components/radio/index.mjs +4 -4
- package/es/components/radio/src/radio-button.mjs +1 -1
- 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/radio/src/radio.mjs +32 -74
- package/es/components/radio/src/radio.mjs.map +1 -1
- package/es/components/radio/src/radio2.mjs +74 -32
- package/es/components/radio/src/radio2.mjs.map +1 -1
- package/es/components/rate/index.mjs +2 -2
- package/es/components/rate/src/rate.mjs +83 -258
- package/es/components/rate/src/rate.mjs.map +1 -1
- package/es/components/rate/src/rate2.mjs +258 -83
- package/es/components/rate/src/rate2.mjs.map +1 -1
- package/es/components/roving-focus-group/index.mjs +3 -3
- package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs +1 -1
- package/es/components/roving-focus-group/src/roving-focus-group.mjs +27 -27
- package/es/components/roving-focus-group/src/roving-focus-group.mjs.map +1 -1
- package/es/components/roving-focus-group/src/roving-focus-group2.mjs +27 -27
- package/es/components/roving-focus-group/src/roving-focus-group2.mjs.map +1 -1
- package/es/components/roving-focus-group/src/roving-focus-item.mjs +1 -1
- package/es/components/segmented/index.mjs +2 -2
- package/es/components/segmented/src/segmented.mjs +168 -42
- package/es/components/segmented/src/segmented.mjs.map +1 -1
- package/es/components/segmented/src/segmented2.mjs +42 -168
- package/es/components/segmented/src/segmented2.mjs.map +1 -1
- package/es/components/slider/index.mjs +2 -2
- package/es/components/slider/src/button.mjs +19 -91
- package/es/components/slider/src/button.mjs.map +1 -1
- package/es/components/slider/src/button2.mjs +91 -19
- package/es/components/slider/src/button2.mjs.map +1 -1
- 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/space/src/space.mjs +0 -2
- package/es/components/space/src/space.mjs.map +1 -1
- package/es/components/table/src/store/index.mjs +0 -1
- package/es/components/table/src/store/index.mjs.map +1 -1
- package/es/components/table/src/store/watcher.mjs +0 -10
- package/es/components/table/src/store/watcher.mjs.map +1 -1
- package/es/components/tabs/src/tab-bar2.mjs +1 -1
- package/es/components/tooltip/src/tooltip.mjs +1 -1
- package/es/components/tooltip/src/tooltip2.mjs +1 -1
- package/es/components/tooltip/src/trigger.mjs +1 -1
- package/es/components/tooltip/src/trigger2.mjs +1 -1
- package/es/components/tree-v2/src/composables/useTree.d.ts +0 -1
- package/es/components/tree-v2/src/composables/useTree.mjs +5 -4
- package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
- package/es/components/tree-v2/src/tree-node.mjs +3 -1
- package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
- package/es/components/tree-v2/src/tree.mjs +1 -2
- package/es/components/tree-v2/src/tree.mjs.map +1 -1
- package/es/components/tree-v2/src/types.d.ts +1 -0
- package/es/index.d.ts +2011 -1957
- package/es/index.mjs +14 -14
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/anchor/index.js +2 -2
- package/lib/components/anchor/src/anchor.js +192 -42
- package/lib/components/anchor/src/anchor.js.map +1 -1
- package/lib/components/anchor/src/anchor2.js +42 -192
- package/lib/components/anchor/src/anchor2.js.map +1 -1
- package/lib/components/calendar/src/calendar2.js +1 -1
- package/lib/components/calendar/src/date-table.js +89 -35
- package/lib/components/calendar/src/date-table.js.map +1 -1
- package/lib/components/calendar/src/date-table2.js +35 -89
- package/lib/components/calendar/src/date-table2.js.map +1 -1
- package/lib/components/calendar/src/use-date-table.js +1 -1
- package/lib/components/cascader/src/cascader.d.ts +2 -2
- package/lib/components/cascader/src/cascader.js +3 -2
- package/lib/components/cascader/src/cascader.js.map +1 -1
- package/lib/components/cascader/src/cascader.vue.d.ts +4 -4
- package/lib/components/cascader-panel/index.js +2 -0
- package/lib/components/cascader-panel/index.js.map +1 -1
- package/lib/components/cascader-panel/src/config.d.ts +26 -2
- package/lib/components/cascader-panel/src/config.js +20 -0
- package/lib/components/cascader-panel/src/config.js.map +1 -1
- package/lib/components/cascader-panel/src/index.js +43 -52
- package/lib/components/cascader-panel/src/index.js.map +1 -1
- package/lib/components/cascader-panel/src/index.vue.d.ts +46 -46
- package/lib/components/cascader-panel/src/instance.d.ts +2 -0
- package/lib/components/cascader-panel/src/menu.js +75 -92
- package/lib/components/cascader-panel/src/menu.js.map +1 -1
- package/lib/components/cascader-panel/src/menu.vue.d.ts +11 -30
- package/lib/components/cascader-panel/src/node-content.d.ts +14 -19
- package/lib/components/cascader-panel/src/node-content.js +28 -17
- package/lib/components/cascader-panel/src/node-content.js.map +1 -1
- package/lib/components/cascader-panel/src/node.d.ts +9 -8
- package/lib/components/cascader-panel/src/node.js +12 -12
- package/lib/components/cascader-panel/src/node.js.map +1 -1
- package/lib/components/cascader-panel/src/node.vue.d.ts +3 -36
- package/lib/components/cascader-panel/src/node2.js +90 -118
- package/lib/components/cascader-panel/src/node2.js.map +1 -1
- package/lib/components/cascader-panel/src/types.d.ts +6 -6
- package/lib/components/cascader-panel/src/types.js.map +1 -1
- package/lib/components/collection/index.js +1 -1
- package/lib/components/collection/src/collection.js +62 -9
- package/lib/components/collection/src/collection.js.map +1 -1
- package/lib/components/collection/src/collection2.js +9 -62
- package/lib/components/collection/src/collection2.js.map +1 -1
- package/lib/components/dropdown/src/dropdown-item-impl.js +2 -2
- package/lib/components/dropdown/src/dropdown-menu.js +1 -1
- package/lib/components/dropdown/src/dropdown.js +1 -1
- package/lib/components/dropdown/src/dropdown2.js +1 -1
- package/lib/components/form/index.js +2 -2
- package/lib/components/form/src/form.js +55 -160
- package/lib/components/form/src/form.js.map +1 -1
- package/lib/components/form/src/form2.js +160 -55
- package/lib/components/form/src/form2.js.map +1 -1
- package/lib/components/image-viewer/index.js +2 -2
- package/lib/components/image-viewer/src/image-viewer.js +50 -447
- package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer2.js +447 -50
- package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
- package/lib/components/index.js +15 -13
- package/lib/components/index.js.map +1 -1
- package/lib/components/input/index.js +2 -2
- package/lib/components/input/src/input.js +104 -434
- package/lib/components/input/src/input.js.map +1 -1
- package/lib/components/input/src/input2.js +434 -104
- package/lib/components/input/src/input2.js.map +1 -1
- package/lib/components/mention/src/mention.js +1 -1
- package/lib/components/mention/src/mention2.js +1 -1
- package/lib/components/popper/index.js +4 -4
- package/lib/components/popper/src/arrow.js +8 -30
- package/lib/components/popper/src/arrow.js.map +1 -1
- package/lib/components/popper/src/arrow2.js +30 -8
- package/lib/components/popper/src/arrow2.js.map +1 -1
- package/lib/components/popper/src/content.js +1 -1
- package/lib/components/popper/src/trigger.js +32 -127
- package/lib/components/popper/src/trigger.js.map +1 -1
- package/lib/components/popper/src/trigger2.js +127 -32
- package/lib/components/popper/src/trigger2.js.map +1 -1
- package/lib/components/radio/index.js +4 -4
- package/lib/components/radio/src/radio-button.js +1 -1
- 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/radio/src/radio.js +33 -73
- package/lib/components/radio/src/radio.js.map +1 -1
- package/lib/components/radio/src/radio2.js +73 -33
- package/lib/components/radio/src/radio2.js.map +1 -1
- package/lib/components/rate/index.js +2 -2
- package/lib/components/rate/src/rate.js +83 -257
- package/lib/components/rate/src/rate.js.map +1 -1
- package/lib/components/rate/src/rate2.js +257 -83
- package/lib/components/rate/src/rate2.js.map +1 -1
- package/lib/components/roving-focus-group/index.js +2 -2
- package/lib/components/roving-focus-group/src/roving-focus-group-impl.js +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-group.js +31 -27
- package/lib/components/roving-focus-group/src/roving-focus-group.js.map +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-group2.js +27 -31
- package/lib/components/roving-focus-group/src/roving-focus-group2.js.map +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-item.js +1 -1
- package/lib/components/segmented/index.js +2 -2
- package/lib/components/segmented/src/segmented.js +168 -44
- package/lib/components/segmented/src/segmented.js.map +1 -1
- package/lib/components/segmented/src/segmented2.js +44 -168
- package/lib/components/segmented/src/segmented2.js.map +1 -1
- package/lib/components/slider/index.js +2 -2
- package/lib/components/slider/src/button.js +20 -91
- package/lib/components/slider/src/button.js.map +1 -1
- package/lib/components/slider/src/button2.js +91 -20
- package/lib/components/slider/src/button2.js.map +1 -1
- 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/space/src/space.js +0 -2
- package/lib/components/space/src/space.js.map +1 -1
- package/lib/components/table/src/store/index.js +0 -1
- package/lib/components/table/src/store/index.js.map +1 -1
- package/lib/components/table/src/store/watcher.js +0 -10
- package/lib/components/table/src/store/watcher.js.map +1 -1
- package/lib/components/tabs/src/tab-bar2.js +1 -1
- package/lib/components/tooltip/src/tooltip.js +1 -1
- package/lib/components/tooltip/src/tooltip2.js +1 -1
- package/lib/components/tooltip/src/trigger.js +1 -1
- package/lib/components/tooltip/src/trigger2.js +1 -1
- package/lib/components/tree-v2/src/composables/useTree.d.ts +0 -1
- package/lib/components/tree-v2/src/composables/useTree.js +5 -4
- package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
- package/lib/components/tree-v2/src/tree-node.js +3 -1
- package/lib/components/tree-v2/src/tree-node.js.map +1 -1
- package/lib/components/tree-v2/src/tree.js +1 -2
- package/lib/components/tree-v2/src/tree.js.map +1 -1
- package/lib/components/tree-v2/src/types.d.ts +1 -0
- package/lib/index.d.ts +2011 -1957
- package/lib/index.js +15 -13
- package/lib/index.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/tags.json +1 -1
- package/web-types.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"cascader.mjs","sources":["../../../../../../packages/components/cascader/src/cascader.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { CommonProps } from '@element-plus/components/cascader-panel'\nimport { buildProps, definePropType, isBoolean } from '@element-plus/utils'\nimport { useEmptyValuesProps, useSizeProp } from '@element-plus/hooks'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { tagProps } from '@element-plus/components/tag'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type {\n CascaderNode,\n CascaderValue,\n} from '@element-plus/components/cascader-panel'\nimport type { Placement } from '@element-plus/components/popper'\n\nexport const cascaderProps = buildProps({\n ...CommonProps,\n /**\n * @description size of input\n */\n size: useSizeProp,\n /**\n * @description placeholder of input\n */\n placeholder: String,\n /**\n * @description whether Cascader is disabled\n */\n disabled: Boolean,\n /**\n * @description whether selected value can be cleared\n */\n clearable: Boolean,\n /**\n * @description whether the options can be searched\n */\n filterable: Boolean,\n /**\n * @description customize search logic, the first parameter is `node`, the second is `keyword`, and need return a boolean value indicating whether it hits.\n */\n filterMethod: {\n type: definePropType<(node: CascaderNode, keyword: string) => boolean>(\n Function\n ),\n default: (node: CascaderNode, keyword: string) =>\n node.text.includes(keyword),\n },\n /**\n * @description option label separator\n */\n separator: {\n type: String,\n default: ' / ',\n },\n /**\n * @description whether to display all levels of the selected value in the input\n */\n showAllLevels: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to collapse tags in multiple selection mode\n */\n collapseTags: Boolean,\n /**\n * @description The max tags number to be shown. To use this, collapse-tags must be true\n */\n maxCollapseTags: {\n type: Number,\n default: 1,\n },\n /**\n * @description native input id\n */\n collapseTagsTooltip: {\n type: Boolean,\n default: false,\n },\n /**\n * @description The max height of collapse tags tooltip, in pixels. To use this, collapse-tags-tooltip must be true\n */\n maxCollapseTagsTooltipHeight: {\n type: [String, Number],\n },\n /**\n * @description debounce delay when typing filter keyword, in milliseconds\n */\n debounce: {\n type: Number,\n default: 300,\n },\n /**\n * @description hook function before filtering with the value to be filtered as its parameter. If `false` is returned or a `Promise` is returned and then is rejected, filtering will be aborted\n */\n beforeFilter: {\n type: definePropType<(value: string) => boolean | Promise<any>>(Function),\n default: () => true,\n },\n /**\n * @description position of dropdown\n */\n placement: {\n type: definePropType<Placement>(String),\n values: placements,\n default: 'bottom-start',\n },\n /**\n * @description list of possible positions for dropdown\n */\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: ['bottom-start', 'bottom', 'top-start', 'top', 'right', 'left'],\n },\n /**\n * @description custom class name for Cascader's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description whether cascader popup is teleported\n */\n teleported: useTooltipContentProps.teleported,\n /**\n * @description tag type\n */\n // eslint-disable-next-line vue/require-prop-types\n tagType: { ...tagProps.type, default: 'info' },\n /**\n * @description tag effect\n */\n tagEffect: { ...tagProps.effect, default: 'light' },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description when dropdown is inactive and `persistent` is `false`, dropdown will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n ...useEmptyValuesProps,\n})\n\
|
1
|
+
{"version":3,"file":"cascader.mjs","sources":["../../../../../../packages/components/cascader/src/cascader.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { CommonProps } from '@element-plus/components/cascader-panel'\nimport { buildProps, definePropType, isBoolean } from '@element-plus/utils'\nimport { useEmptyValuesProps, useSizeProp } from '@element-plus/hooks'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { tagProps } from '@element-plus/components/tag'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type {\n CascaderNode,\n CascaderValue,\n} from '@element-plus/components/cascader-panel'\nimport type { Placement } from '@element-plus/components/popper'\n\nexport const cascaderProps = buildProps({\n ...CommonProps,\n /**\n * @description size of input\n */\n size: useSizeProp,\n /**\n * @description placeholder of input\n */\n placeholder: String,\n /**\n * @description whether Cascader is disabled\n */\n disabled: Boolean,\n /**\n * @description whether selected value can be cleared\n */\n clearable: Boolean,\n /**\n * @description whether the options can be searched\n */\n filterable: Boolean,\n /**\n * @description customize search logic, the first parameter is `node`, the second is `keyword`, and need return a boolean value indicating whether it hits.\n */\n filterMethod: {\n type: definePropType<(node: CascaderNode, keyword: string) => boolean>(\n Function\n ),\n default: (node: CascaderNode, keyword: string) =>\n node.text.includes(keyword),\n },\n /**\n * @description option label separator\n */\n separator: {\n type: String,\n default: ' / ',\n },\n /**\n * @description whether to display all levels of the selected value in the input\n */\n showAllLevels: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether to collapse tags in multiple selection mode\n */\n collapseTags: Boolean,\n /**\n * @description The max tags number to be shown. To use this, collapse-tags must be true\n */\n maxCollapseTags: {\n type: Number,\n default: 1,\n },\n /**\n * @description native input id\n */\n collapseTagsTooltip: {\n type: Boolean,\n default: false,\n },\n /**\n * @description The max height of collapse tags tooltip, in pixels. To use this, collapse-tags-tooltip must be true\n */\n maxCollapseTagsTooltipHeight: {\n type: [String, Number],\n },\n /**\n * @description debounce delay when typing filter keyword, in milliseconds\n */\n debounce: {\n type: Number,\n default: 300,\n },\n /**\n * @description hook function before filtering with the value to be filtered as its parameter. If `false` is returned or a `Promise` is returned and then is rejected, filtering will be aborted\n */\n beforeFilter: {\n type: definePropType<(value: string) => boolean | Promise<any>>(Function),\n default: () => true,\n },\n /**\n * @description position of dropdown\n */\n placement: {\n type: definePropType<Placement>(String),\n values: placements,\n default: 'bottom-start',\n },\n /**\n * @description list of possible positions for dropdown\n */\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: ['bottom-start', 'bottom', 'top-start', 'top', 'right', 'left'],\n },\n /**\n * @description custom class name for Cascader's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description whether cascader popup is teleported\n */\n teleported: useTooltipContentProps.teleported,\n /**\n * @description tag type\n */\n // eslint-disable-next-line vue/require-prop-types\n tagType: { ...tagProps.type, default: 'info' },\n /**\n * @description tag effect\n */\n tagEffect: { ...tagProps.effect, default: 'light' },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description when dropdown is inactive and `persistent` is `false`, dropdown will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n ...useEmptyValuesProps,\n})\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst emitChangeFn = (value: CascaderValue) => true\n\nexport const cascaderEmits = {\n [UPDATE_MODEL_EVENT]: emitChangeFn,\n [CHANGE_EVENT]: emitChangeFn,\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n visibleChange: (val: boolean) => isBoolean(val),\n expandChange: (val: CascaderValue) => !!val,\n removeTag: (val: CascaderNode['valueByOption']) => !!val,\n}\n\n// Type name is taken(cascader-panel/src/node), needs discussion\n// export type CascaderProps = ExtractPropTypes<typeof cascaderProps>\n\nexport type CascaderEmits = typeof cascaderEmits\n"],"names":[],"mappings":"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"}
|
@@ -105,8 +105,8 @@ declare const __VLS_component: import("vue").DefineComponent<{
|
|
105
105
|
presentText: ComputedRef<string>;
|
106
106
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
107
107
|
clear: () => void;
|
108
|
-
"update:modelValue": (
|
109
|
-
change: (
|
108
|
+
"update:modelValue": (value: CascaderValue) => void;
|
109
|
+
change: (value: CascaderValue) => void;
|
110
110
|
blur: (evt: FocusEvent) => void;
|
111
111
|
focus: (evt: FocusEvent) => void;
|
112
112
|
visibleChange: (val: boolean) => void;
|
@@ -184,8 +184,8 @@ declare const __VLS_component: import("vue").DefineComponent<{
|
|
184
184
|
options: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => import("@element-plus/nightly/es/components/cascader-panel").CascaderOption[]) | (() => import("@element-plus/nightly/es/components/cascader-panel").CascaderOption[]) | ((new (...args: any[]) => import("@element-plus/nightly/es/components/cascader-panel").CascaderOption[]) | (() => import("@element-plus/nightly/es/components/cascader-panel").CascaderOption[]))[], unknown, unknown, () => import("@element-plus/nightly/es/components/cascader-panel").CascaderOption[], boolean>;
|
185
185
|
props: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => import("@element-plus/nightly/es/components/cascader-panel").CascaderProps) | (() => import("@element-plus/nightly/es/components/cascader-panel").CascaderProps) | ((new (...args: any[]) => import("@element-plus/nightly/es/components/cascader-panel").CascaderProps) | (() => import("@element-plus/nightly/es/components/cascader-panel").CascaderProps))[], unknown, unknown, () => import("@element-plus/nightly/es/components/cascader-panel").CascaderProps, boolean>;
|
186
186
|
}>> & {
|
187
|
-
"onUpdate:modelValue"?: ((
|
188
|
-
onChange?: ((
|
187
|
+
"onUpdate:modelValue"?: ((value: CascaderValue) => any) | undefined;
|
188
|
+
onChange?: ((value: CascaderValue) => any) | undefined;
|
189
189
|
onFocus?: ((evt: FocusEvent) => any) | undefined;
|
190
190
|
onBlur?: ((evt: FocusEvent) => any) | undefined;
|
191
191
|
onClear?: (() => any) | undefined;
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import CascaderPanel from './src/index.mjs';
|
2
2
|
export { CASCADER_PANEL_INJECTION_KEY } from './src/types.mjs';
|
3
|
-
export { CommonProps, DefaultProps, useCascaderConfig } from './src/config.mjs';
|
3
|
+
export { CommonProps, DefaultProps, cascaderPanelEmits, cascaderPanelProps, useCascaderConfig } from './src/config.mjs';
|
4
4
|
import { withInstall } from '../../utils/vue/install.mjs';
|
5
5
|
|
6
6
|
const ElCascaderPanel = withInstall(CascaderPanel);
|
@@ -1,7 +1,8 @@
|
|
1
|
-
import type {
|
1
|
+
import type { PropType } from 'vue';
|
2
|
+
import type { CascaderConfig, CascaderNodePathValue, CascaderOption, CascaderProps, CascaderValue, RenderLabel } from './node';
|
2
3
|
export declare const CommonProps: {
|
3
4
|
readonly modelValue: {
|
4
|
-
readonly type:
|
5
|
+
readonly type: PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue) | ((new (...args: any[]) => string | number | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue))[], unknown, unknown>>;
|
5
6
|
readonly required: false;
|
6
7
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
7
8
|
__epPropKey: true;
|
@@ -10,6 +11,29 @@ export declare const CommonProps: {
|
|
10
11
|
readonly props: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => CascaderProps) | (() => CascaderProps) | ((new (...args: any[]) => CascaderProps) | (() => CascaderProps))[], unknown, unknown, () => CascaderProps, boolean>;
|
11
12
|
};
|
12
13
|
export declare const DefaultProps: CascaderConfig;
|
14
|
+
export declare const cascaderPanelProps: {
|
15
|
+
border: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
|
16
|
+
renderLabel: {
|
17
|
+
readonly type: PropType<RenderLabel>;
|
18
|
+
readonly required: false;
|
19
|
+
readonly validator: ((val: unknown) => boolean) | undefined;
|
20
|
+
__epPropKey: true;
|
21
|
+
};
|
22
|
+
modelValue: {
|
23
|
+
readonly type: PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue) | ((new (...args: any[]) => string | number | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue))[], unknown, unknown>>;
|
24
|
+
readonly required: false;
|
25
|
+
readonly validator: ((val: unknown) => boolean) | undefined;
|
26
|
+
__epPropKey: true;
|
27
|
+
};
|
28
|
+
options: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => CascaderOption[]) | (() => CascaderOption[]) | ((new (...args: any[]) => CascaderOption[]) | (() => CascaderOption[]))[], unknown, unknown, () => CascaderOption[], boolean>;
|
29
|
+
props: import("@element-plus/nightly/es/utils").EpPropFinalized<(new (...args: any[]) => CascaderProps) | (() => CascaderProps) | ((new (...args: any[]) => CascaderProps) | (() => CascaderProps))[], unknown, unknown, () => CascaderProps, boolean>;
|
30
|
+
};
|
31
|
+
export declare const cascaderPanelEmits: {
|
32
|
+
"update:modelValue": (value: CascaderValue | undefined) => boolean;
|
33
|
+
change: (value: CascaderValue | undefined) => boolean;
|
34
|
+
close: () => boolean;
|
35
|
+
'expand-change': (value: CascaderNodePathValue) => CascaderNodePathValue;
|
36
|
+
};
|
13
37
|
export declare const useCascaderConfig: (props: {
|
14
38
|
props: CascaderProps;
|
15
39
|
}) => import("vue").ComputedRef<{
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { computed } from 'vue';
|
2
2
|
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
3
3
|
import { NOOP } from '@vue/shared';
|
4
|
+
import { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '../../../constants/event.mjs';
|
4
5
|
|
5
6
|
const CommonProps = buildProps({
|
6
7
|
modelValue: {
|
@@ -29,6 +30,23 @@ const DefaultProps = {
|
|
29
30
|
disabled: "disabled",
|
30
31
|
hoverThreshold: 500
|
31
32
|
};
|
33
|
+
const cascaderPanelProps = buildProps({
|
34
|
+
...CommonProps,
|
35
|
+
border: {
|
36
|
+
type: Boolean,
|
37
|
+
default: true
|
38
|
+
},
|
39
|
+
renderLabel: {
|
40
|
+
type: Function
|
41
|
+
}
|
42
|
+
});
|
43
|
+
const emitChangeFn = (value) => true;
|
44
|
+
const cascaderPanelEmits = {
|
45
|
+
[UPDATE_MODEL_EVENT]: emitChangeFn,
|
46
|
+
[CHANGE_EVENT]: emitChangeFn,
|
47
|
+
close: () => true,
|
48
|
+
"expand-change": (value) => value
|
49
|
+
};
|
32
50
|
const useCascaderConfig = (props) => {
|
33
51
|
return computed(() => ({
|
34
52
|
...DefaultProps,
|
@@ -36,5 +54,5 @@ const useCascaderConfig = (props) => {
|
|
36
54
|
}));
|
37
55
|
};
|
38
56
|
|
39
|
-
export { CommonProps, DefaultProps, useCascaderConfig };
|
57
|
+
export { CommonProps, DefaultProps, cascaderPanelEmits, cascaderPanelProps, useCascaderConfig };
|
40
58
|
//# sourceMappingURL=config.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"config.mjs","sources":["../../../../../../packages/components/cascader-panel/src/config.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { NOOP, buildProps, definePropType } from '@element-plus/utils'\n\nimport type {\n CascaderConfig,\n CascaderOption,\n CascaderProps,\n CascaderValue,\n} from './node'\n\nexport const CommonProps = buildProps({\n /**\n * @description specify which key of node object is used as the node's value\n */\n modelValue: {\n type: definePropType<CascaderValue>([Number, String, Array]),\n },\n /**\n * @description data of the options, the key of `value` and `label` can be customize by `CascaderProps`.\n */\n options: {\n type: definePropType<CascaderOption[]>(Array),\n default: () => [] as CascaderOption[],\n },\n /**\n * @description configuration options, see the following `CascaderProps` table.\n */\n props: {\n type: definePropType<CascaderProps>(Object),\n default: () => ({} as CascaderProps),\n },\n} as const)\n\nexport const DefaultProps: CascaderConfig = {\n /**\n * @description trigger mode of expanding options\n */\n expandTrigger: 'click',\n /**\n * @description whether multiple selection is enabled\n */\n multiple: false,\n /**\n * @description whether checked state of a node not affects its parent and child nodes\n */\n checkStrictly: false, // whether all nodes can be selected\n /**\n * @description when checked nodes change, whether to emit an array of node's path, if false, only emit the value of node.\n */\n emitPath: true, // wether to emit an array of all levels value in which node is located\n /**\n * @description whether to dynamic load child nodes, use with `lazyload` attribute\n */\n lazy: false,\n /**\n * @description method for loading child nodes data, only works when `lazy` is true\n */\n lazyLoad: NOOP,\n /**\n * @description specify which key of node object is used as the node's value\n */\n value: 'value',\n /**\n * @description specify which key of node object is used as the node's label\n */\n label: 'label',\n /**\n * @description specify which key of node object is used as the node's children\n */\n children: 'children',\n /**\n * @description specify which key of node object is used as the node's leaf\n */\n leaf: 'leaf',\n /**\n * @description specify which key of node object is used as the node's disabled\n */\n disabled: 'disabled',\n /**\n * @description hover threshold of expanding options\n */\n hoverThreshold: 500,\n}\n\nexport const useCascaderConfig = (props: { props: CascaderProps }) => {\n return computed(() => ({\n ...DefaultProps,\n ...props.props,\n }))\n}\n"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"config.mjs","sources":["../../../../../../packages/components/cascader-panel/src/config.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { NOOP, buildProps, definePropType } from '@element-plus/utils'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { PropType } from 'vue'\nimport type {\n CascaderConfig,\n CascaderNodePathValue,\n CascaderOption,\n CascaderProps,\n CascaderValue,\n RenderLabel,\n} from './node'\n\nexport const CommonProps = buildProps({\n /**\n * @description specify which key of node object is used as the node's value\n */\n modelValue: {\n type: definePropType<CascaderValue>([Number, String, Array]),\n },\n /**\n * @description data of the options, the key of `value` and `label` can be customize by `CascaderProps`.\n */\n options: {\n type: definePropType<CascaderOption[]>(Array),\n default: () => [] as CascaderOption[],\n },\n /**\n * @description configuration options, see the following `CascaderProps` table.\n */\n props: {\n type: definePropType<CascaderProps>(Object),\n default: () => ({} as CascaderProps),\n },\n} as const)\n\nexport const DefaultProps: CascaderConfig = {\n /**\n * @description trigger mode of expanding options\n */\n expandTrigger: 'click',\n /**\n * @description whether multiple selection is enabled\n */\n multiple: false,\n /**\n * @description whether checked state of a node not affects its parent and child nodes\n */\n checkStrictly: false, // whether all nodes can be selected\n /**\n * @description when checked nodes change, whether to emit an array of node's path, if false, only emit the value of node.\n */\n emitPath: true, // wether to emit an array of all levels value in which node is located\n /**\n * @description whether to dynamic load child nodes, use with `lazyload` attribute\n */\n lazy: false,\n /**\n * @description method for loading child nodes data, only works when `lazy` is true\n */\n lazyLoad: NOOP,\n /**\n * @description specify which key of node object is used as the node's value\n */\n value: 'value',\n /**\n * @description specify which key of node object is used as the node's label\n */\n label: 'label',\n /**\n * @description specify which key of node object is used as the node's children\n */\n children: 'children',\n /**\n * @description specify which key of node object is used as the node's leaf\n */\n leaf: 'leaf',\n /**\n * @description specify which key of node object is used as the node's disabled\n */\n disabled: 'disabled',\n /**\n * @description hover threshold of expanding options\n */\n hoverThreshold: 500,\n}\n\nexport const cascaderPanelProps = buildProps({\n ...CommonProps,\n border: {\n type: Boolean,\n default: true,\n },\n renderLabel: {\n type: Function as PropType<RenderLabel>,\n },\n})\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst emitChangeFn = (value: CascaderValue | undefined) => true\n\nexport const cascaderPanelEmits = {\n [UPDATE_MODEL_EVENT]: emitChangeFn,\n [CHANGE_EVENT]: emitChangeFn,\n close: () => true,\n 'expand-change': (value: CascaderNodePathValue) => value,\n}\n\nexport const useCascaderConfig = (props: { props: CascaderProps }) => {\n return computed(() => ({\n ...DefaultProps,\n ...props.props,\n }))\n}\n"],"names":[],"mappings":";;;;;AAGY,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACjD,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,YAAY,GAAG;AAC5B,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,IAAI,EAAE,KAAK;AACb,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,QAAQ,EAAE,UAAU;AACtB,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,UAAU;AACtB,EAAE,cAAc,EAAE,GAAG;AACrB,EAAE;AACU,MAAC,kBAAkB,GAAG,UAAU,CAAC;AAC7C,EAAE,GAAG,WAAW;AAChB,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,CAAC,EAAE;AACH,MAAM,YAAY,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC;AACzB,MAAC,kBAAkB,GAAG;AAClC,EAAE,CAAC,kBAAkB,GAAG,YAAY;AACpC,EAAE,CAAC,YAAY,GAAG,YAAY;AAC9B,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,eAAe,EAAE,CAAC,KAAK,KAAK,KAAK;AACnC,EAAE;AACU,MAAC,iBAAiB,GAAG,CAAC,KAAK,KAAK;AAC5C,EAAE,OAAO,QAAQ,CAAC,OAAO;AACzB,IAAI,GAAG,YAAY;AACnB,IAAI,GAAG,KAAK,CAAC,KAAK;AAClB,GAAG,CAAC,CAAC,CAAC;AACN;;;;"}
|
@@ -1,45 +1,41 @@
|
|
1
|
-
import { defineComponent, ref, computed, provide, reactive, watch, onBeforeUpdate, onMounted,
|
1
|
+
import { defineComponent, useSlots, ref, computed, provide, reactive, watch, onBeforeUpdate, onMounted, openBlock, createElementBlock, normalizeClass, unref, Fragment, renderList, createBlock, withCtx, renderSlot, nextTick } from 'vue';
|
2
2
|
import { isEqual, flattenDeep, cloneDeep } from 'lodash-unified';
|
3
3
|
import ElCascaderMenu from './menu.mjs';
|
4
4
|
import Store from './store.mjs';
|
5
5
|
import Node from './node.mjs';
|
6
|
-
import {
|
6
|
+
import { cascaderPanelProps, cascaderPanelEmits, useCascaderConfig } from './config.mjs';
|
7
7
|
import { sortByOriginalOrder, checkNode, getMenuIndex } from './utils.mjs';
|
8
8
|
import { CASCADER_PANEL_INJECTION_KEY } from './types.mjs';
|
9
9
|
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
10
10
|
import { unique, castArray } from '../../../utils/arrays.mjs';
|
11
11
|
import { scrollIntoView } from '../../../utils/dom/scroll.mjs';
|
12
12
|
import { focusNode, getSibling } from '../../../utils/dom/aria.mjs';
|
13
|
-
import { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '../../../constants/event.mjs';
|
14
13
|
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
14
|
+
import { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '../../../constants/event.mjs';
|
15
15
|
import { isEmpty } from '../../../utils/types.mjs';
|
16
16
|
import { isClient } from '@vueuse/core';
|
17
17
|
import { EVENT_CODE } from '../../../constants/aria.mjs';
|
18
18
|
|
19
|
-
const
|
19
|
+
const __default__ = defineComponent({
|
20
20
|
name: "ElCascaderPanel",
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
},
|
30
|
-
renderLabel: Function
|
31
|
-
},
|
32
|
-
emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT, "close", "expand-change"],
|
33
|
-
setup(props, { emit, slots }) {
|
21
|
+
inheritAttrs: false
|
22
|
+
});
|
23
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
24
|
+
...__default__,
|
25
|
+
props: cascaderPanelProps,
|
26
|
+
emits: cascaderPanelEmits,
|
27
|
+
setup(__props, { expose, emit }) {
|
28
|
+
const props = __props;
|
34
29
|
let manualChecked = false;
|
35
30
|
const ns = useNamespace("cascader");
|
36
31
|
const config = useCascaderConfig(props);
|
37
|
-
|
32
|
+
const slots = useSlots();
|
33
|
+
let store;
|
38
34
|
const initialLoaded = ref(true);
|
39
35
|
const menuList = ref([]);
|
40
|
-
const checkedValue = ref(
|
36
|
+
const checkedValue = ref();
|
41
37
|
const menus = ref([]);
|
42
|
-
const expandingNode = ref(
|
38
|
+
const expandingNode = ref();
|
43
39
|
const checkedNodes = ref([]);
|
44
40
|
const isHoverMenu = computed(() => config.value.expandTrigger === "hover");
|
45
41
|
const renderLabelFn = computed(() => props.renderLabel || slots.default);
|
@@ -74,7 +70,7 @@ const _sfc_main = defineComponent({
|
|
74
70
|
_node.loading = false;
|
75
71
|
_node.loaded = true;
|
76
72
|
_node.childrenData = _node.childrenData || [];
|
77
|
-
|
73
|
+
dataList && (cb == null ? void 0 : cb(dataList));
|
78
74
|
};
|
79
75
|
cfg.lazyLoad(node, resolve);
|
80
76
|
};
|
@@ -112,29 +108,26 @@ const _sfc_main = defineComponent({
|
|
112
108
|
expandParentNode(node);
|
113
109
|
node && expandNode(node);
|
114
110
|
};
|
115
|
-
const getFlattedNodes = (leafOnly) =>
|
116
|
-
return store == null ? void 0 : store.getFlattedNodes(leafOnly);
|
117
|
-
};
|
111
|
+
const getFlattedNodes = (leafOnly) => store == null ? void 0 : store.getFlattedNodes(leafOnly);
|
118
112
|
const getCheckedNodes = (leafOnly) => {
|
119
113
|
var _a;
|
120
|
-
return (_a = getFlattedNodes(leafOnly)) == null ? void 0 : _a.filter((
|
114
|
+
return (_a = getFlattedNodes(leafOnly)) == null ? void 0 : _a.filter(({ checked }) => checked);
|
121
115
|
};
|
122
116
|
const clearCheckedNodes = () => {
|
123
117
|
checkedNodes.value.forEach((node) => node.doCheck(false));
|
124
118
|
calculateCheckedValue();
|
125
119
|
menus.value = menus.value.slice(0, 1);
|
126
|
-
expandingNode.value =
|
120
|
+
expandingNode.value = void 0;
|
127
121
|
emit("expand-change", []);
|
128
122
|
};
|
129
123
|
const calculateCheckedValue = () => {
|
130
|
-
var _a;
|
131
124
|
const { checkStrictly, multiple } = config.value;
|
132
125
|
const oldNodes = checkedNodes.value;
|
133
126
|
const newNodes = getCheckedNodes(!checkStrictly);
|
134
127
|
const nodes = sortByOriginalOrder(oldNodes, newNodes);
|
135
128
|
const values = nodes.map((node) => node.valueByOption);
|
136
129
|
checkedNodes.value = nodes;
|
137
|
-
checkedValue.value = multiple ? values :
|
130
|
+
checkedValue.value = multiple ? values : values[0];
|
138
131
|
};
|
139
132
|
const syncCheckedValue = (loaded = false, forced = false) => {
|
140
133
|
const { modelValue } = props;
|
@@ -168,7 +161,7 @@ const _sfc_main = defineComponent({
|
|
168
161
|
if (newExpandingNode) {
|
169
162
|
newExpandingNode.pathNodes.forEach((node) => expandNode(node, true));
|
170
163
|
} else {
|
171
|
-
expandingNode.value =
|
164
|
+
expandingNode.value = void 0;
|
172
165
|
}
|
173
166
|
oldNodes.forEach((node) => node.doCheck(false));
|
174
167
|
reactive(newNodes).forEach((node) => node.doCheck(true));
|
@@ -247,8 +240,7 @@ const _sfc_main = defineComponent({
|
|
247
240
|
});
|
248
241
|
onBeforeUpdate(() => menuList.value = []);
|
249
242
|
onMounted(() => !isEmpty(props.modelValue) && syncCheckedValue());
|
250
|
-
|
251
|
-
ns,
|
243
|
+
expose({
|
252
244
|
menuList,
|
253
245
|
menus,
|
254
246
|
checkedNodes,
|
@@ -259,32 +251,31 @@ const _sfc_main = defineComponent({
|
|
259
251
|
clearCheckedNodes,
|
260
252
|
calculateCheckedValue,
|
261
253
|
scrollToExpandingNode
|
254
|
+
});
|
255
|
+
return (_ctx, _cache) => {
|
256
|
+
return openBlock(), createElementBlock("div", {
|
257
|
+
class: normalizeClass([unref(ns).b("panel"), unref(ns).is("bordered", _ctx.border)]),
|
258
|
+
onKeydown: handleKeyDown
|
259
|
+
}, [
|
260
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(menus.value, (menu, index) => {
|
261
|
+
return openBlock(), createBlock(ElCascaderMenu, {
|
262
|
+
key: index,
|
263
|
+
ref_for: true,
|
264
|
+
ref: (item) => menuList.value[index] = item,
|
265
|
+
index,
|
266
|
+
nodes: [...menu]
|
267
|
+
}, {
|
268
|
+
empty: withCtx(() => [
|
269
|
+
renderSlot(_ctx.$slots, "empty")
|
270
|
+
]),
|
271
|
+
_: 2
|
272
|
+
}, 1032, ["index", "nodes"]);
|
273
|
+
}), 128))
|
274
|
+
], 34);
|
262
275
|
};
|
263
276
|
}
|
264
277
|
});
|
265
|
-
|
266
|
-
const _component_el_cascader_menu = resolveComponent("el-cascader-menu");
|
267
|
-
return openBlock(), createElementBlock("div", {
|
268
|
-
class: normalizeClass([_ctx.ns.b("panel"), _ctx.ns.is("bordered", _ctx.border)]),
|
269
|
-
onKeydown: _ctx.handleKeyDown
|
270
|
-
}, [
|
271
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.menus, (menu, index) => {
|
272
|
-
return openBlock(), createBlock(_component_el_cascader_menu, {
|
273
|
-
key: index,
|
274
|
-
ref_for: true,
|
275
|
-
ref: (item) => _ctx.menuList[index] = item,
|
276
|
-
index,
|
277
|
-
nodes: [...menu]
|
278
|
-
}, {
|
279
|
-
empty: withCtx(() => [
|
280
|
-
renderSlot(_ctx.$slots, "empty")
|
281
|
-
]),
|
282
|
-
_: 2
|
283
|
-
}, 1032, ["index", "nodes"]);
|
284
|
-
}), 128))
|
285
|
-
], 42, ["onKeydown"]);
|
286
|
-
}
|
287
|
-
var CascaderPanel = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "index.vue"]]);
|
278
|
+
var CascaderPanel = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "index.vue"]]);
|
288
279
|
|
289
280
|
export { CascaderPanel as default };
|
290
281
|
//# sourceMappingURL=index.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/cascader-panel/src/index.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b('panel'), ns.is('bordered', border)]\"\n @keydown=\"handleKeyDown\"\n >\n <el-cascader-menu\n v-for=\"(menu, index) in menus\"\n :key=\"index\"\n :ref=\"(item) => (menuList[index] = item)\"\n :index=\"index\"\n :nodes=\"[...menu]\"\n >\n <template #empty>\n <slot name=\"empty\" />\n </template>\n </el-cascader-menu>\n </div>\n</template>\n\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n nextTick,\n onBeforeUpdate,\n onMounted,\n provide,\n reactive,\n ref,\n watch,\n} from 'vue'\nimport { cloneDeep, flattenDeep, isEqual } from 'lodash-unified'\nimport {\n castArray,\n focusNode,\n getSibling,\n isClient,\n isEmpty,\n scrollIntoView,\n unique,\n} from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useNamespace } from '@element-plus/hooks'\nimport ElCascaderMenu from './menu.vue'\nimport Store from './store'\nimport Node from './node'\nimport { CommonProps, useCascaderConfig } from './config'\nimport { checkNode, getMenuIndex, sortByOriginalOrder } from './utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type {\n default as CascaderNode,\n CascaderNodeValue,\n CascaderOption,\n CascaderValue,\n RenderLabel,\n} from './node'\nimport type { ElCascaderPanelContext } from './types'\n\nexport default defineComponent({\n name: 'ElCascaderPanel',\n\n components: {\n ElCascaderMenu,\n },\n\n props: {\n ...CommonProps,\n border: {\n type: Boolean,\n default: true,\n },\n renderLabel: Function as PropType<RenderLabel>,\n },\n\n emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT, 'close', 'expand-change'],\n\n setup(props, { emit, slots }) {\n // for interrupt sync check status in lazy mode\n let manualChecked = false\n\n const ns = useNamespace('cascader')\n const config = useCascaderConfig(props)\n\n let store: Nullable<Store> = null\n const initialLoaded = ref(true)\n const menuList = ref<any[]>([])\n const checkedValue = ref<Nullable<CascaderValue>>(null)\n const menus = ref<CascaderNode[][]>([])\n const expandingNode = ref<Nullable<CascaderNode>>(null)\n const checkedNodes = ref<CascaderNode[]>([])\n\n const isHoverMenu = computed(() => config.value.expandTrigger === 'hover')\n const renderLabelFn = computed(() => props.renderLabel || slots.default)\n\n const initStore = () => {\n const { options } = props\n const cfg = config.value\n\n manualChecked = false\n store = new Store(options, cfg)\n menus.value = [store.getNodes()]\n\n if (cfg.lazy && isEmpty(props.options)) {\n initialLoaded.value = false\n lazyLoad(undefined, (list) => {\n if (list) {\n store = new Store(list, cfg)\n menus.value = [store.getNodes()]\n }\n initialLoaded.value = true\n syncCheckedValue(false, true)\n })\n } else {\n syncCheckedValue(false, true)\n }\n }\n\n const lazyLoad: ElCascaderPanelContext['lazyLoad'] = (node, cb) => {\n const cfg = config.value\n node! = node || new Node({}, cfg, undefined, true)\n node.loading = true\n\n const resolve = (dataList: CascaderOption[]) => {\n const _node = node as Node\n const parent = _node.root ? null : _node\n dataList && store?.appendNodes(dataList, parent as any)\n _node.loading = false\n _node.loaded = true\n _node.childrenData = _node.childrenData || []\n cb && cb(dataList)\n }\n\n cfg.lazyLoad(node, resolve as any)\n }\n\n const expandNode: ElCascaderPanelContext['expandNode'] = (node, silent) => {\n const { level } = node\n const newMenus = menus.value.slice(0, level)\n let newExpandingNode: Nullable<CascaderNode>\n\n if (node.isLeaf) {\n newExpandingNode = node.pathNodes[level - 2]\n } else {\n newExpandingNode = node\n newMenus.push(node.children)\n }\n\n if (expandingNode.value?.uid !== newExpandingNode?.uid) {\n expandingNode.value = node\n menus.value = newMenus\n !silent && emit('expand-change', node?.pathValues || [])\n }\n }\n\n const handleCheckChange: ElCascaderPanelContext['handleCheckChange'] = (\n node,\n checked,\n emitClose = true\n ) => {\n const { checkStrictly, multiple } = config.value\n const oldNode = checkedNodes.value[0]\n manualChecked = true\n\n !multiple && oldNode?.doCheck(false)\n node.doCheck(checked)\n calculateCheckedValue()\n emitClose && !multiple && !checkStrictly && emit('close')\n !emitClose && !multiple && !checkStrictly && expandParentNode(node)\n }\n\n const expandParentNode = (node) => {\n if (!node) return\n node = node.parent\n expandParentNode(node)\n node && expandNode(node)\n }\n\n const getFlattedNodes = (leafOnly: boolean) => {\n return store?.getFlattedNodes(leafOnly)\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return getFlattedNodes(leafOnly)?.filter((node) => node.checked !== false)\n }\n\n const clearCheckedNodes = () => {\n checkedNodes.value.forEach((node) => node.doCheck(false))\n calculateCheckedValue()\n menus.value = menus.value.slice(0, 1)\n expandingNode.value = null\n emit('expand-change', [])\n }\n\n const calculateCheckedValue = () => {\n const { checkStrictly, multiple } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = getCheckedNodes(!checkStrictly)!\n // ensure the original order\n const nodes = sortByOriginalOrder(oldNodes, newNodes)\n const values = nodes.map((node) => node.valueByOption)\n checkedNodes.value = nodes\n checkedValue.value = multiple ? values : values[0] ?? null\n }\n\n const syncCheckedValue = (loaded = false, forced = false) => {\n const { modelValue } = props\n const { lazy, multiple, checkStrictly } = config.value\n const leafOnly = !checkStrictly\n\n if (\n !initialLoaded.value ||\n manualChecked ||\n (!forced && isEqual(modelValue, checkedValue.value))\n )\n return\n\n if (lazy && !loaded) {\n const values: CascaderNodeValue[] = unique(\n flattenDeep(castArray(modelValue))\n )\n const nodes = values\n .map((val) => store?.getNodeByValue(val))\n .filter((node) => !!node && !node.loaded && !node.loading) as Node[]\n\n if (nodes.length) {\n nodes.forEach((node) => {\n lazyLoad(node, () => syncCheckedValue(false, forced))\n })\n } else {\n syncCheckedValue(true, forced)\n }\n } else {\n const values = multiple ? castArray(modelValue) : [modelValue]\n const nodes = unique(\n values.map((val) => store?.getNodeByValue(val, leafOnly))\n ) as Node[]\n syncMenuState(nodes, forced)\n checkedValue.value = cloneDeep(modelValue)\n }\n }\n\n const syncMenuState = (\n newCheckedNodes: CascaderNode[],\n reserveExpandingState = true\n ) => {\n const { checkStrictly } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = newCheckedNodes.filter(\n (node) => !!node && (checkStrictly || node.isLeaf)\n )\n const oldExpandingNode = store?.getSameNode(expandingNode.value!)\n const newExpandingNode =\n (reserveExpandingState && oldExpandingNode) || newNodes[0]\n\n if (newExpandingNode) {\n newExpandingNode.pathNodes.forEach((node) => expandNode(node, true))\n } else {\n expandingNode.value = null\n }\n\n oldNodes.forEach((node) => node.doCheck(false))\n reactive(newNodes).forEach((node) => node.doCheck(true))\n checkedNodes.value = newNodes\n nextTick(scrollToExpandingNode)\n }\n\n const scrollToExpandingNode = () => {\n if (!isClient) return\n\n menuList.value.forEach((menu) => {\n const menuElement = menu?.$el\n if (menuElement) {\n const container = menuElement.querySelector(\n `.${ns.namespace.value}-scrollbar__wrap`\n )\n const activeNode =\n menuElement.querySelector(\n `.${ns.b('node')}.${ns.is('active')}:last-child`\n ) || menuElement.querySelector(`.${ns.b('node')}.in-active-path`)\n scrollIntoView(container, activeNode)\n }\n })\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n e.preventDefault()\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(target, distance, `.${ns.b('node')}[tabindex=\"-1\"]`)\n )\n break\n }\n case EVENT_CODE.left: {\n e.preventDefault()\n const preMenu = menuList.value[getMenuIndex(target) - 1]\n const expandedNode = preMenu?.$el.querySelector(\n `.${ns.b('node')}[aria-expanded=\"true\"]`\n )\n focusNode(expandedNode)\n break\n }\n case EVENT_CODE.right: {\n e.preventDefault()\n const nextMenu = menuList.value[getMenuIndex(target) + 1]\n const firstNode = nextMenu?.$el.querySelector(\n `.${ns.b('node')}[tabindex=\"-1\"]`\n )\n focusNode(firstNode)\n break\n }\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n checkNode(target)\n break\n }\n }\n\n provide(\n CASCADER_PANEL_INJECTION_KEY,\n reactive({\n config,\n expandingNode,\n checkedNodes,\n isHoverMenu,\n initialLoaded,\n renderLabelFn,\n lazyLoad,\n expandNode,\n handleCheckChange,\n })\n )\n\n watch([config, () => props.options], initStore, {\n deep: true,\n immediate: true,\n })\n\n watch(\n () => props.modelValue,\n () => {\n manualChecked = false\n syncCheckedValue()\n },\n {\n deep: true,\n }\n )\n\n watch(\n () => checkedValue.value,\n (val) => {\n if (!isEqual(val, props.modelValue)) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n }\n }\n )\n\n onBeforeUpdate(() => (menuList.value = []))\n\n onMounted(() => !isEmpty(props.modelValue) && syncCheckedValue())\n\n return {\n ns,\n menuList,\n menus,\n checkedNodes,\n handleKeyDown,\n handleCheckChange,\n getFlattedNodes,\n /**\n * @description get an array of currently selected node,(leafOnly) whether only return the leaf checked nodes, default is `false`\n */\n getCheckedNodes,\n /**\n * @description clear checked nodes\n */\n clearCheckedNodes,\n calculateCheckedValue,\n scrollToExpandingNode,\n }\n },\n})\n</script>\n"],"names":["_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_Fragment","_renderList","_createBlock","_withCtx","_renderSlot"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/cascader-panel/src/index.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b('panel'), ns.is('bordered', border)]\"\n @keydown=\"handleKeyDown\"\n >\n <el-cascader-menu\n v-for=\"(menu, index) in menus\"\n :key=\"index\"\n :ref=\"(item) => (menuList[index] = item as CascaderMenuInstance)\"\n :index=\"index\"\n :nodes=\"[...menu]\"\n >\n <template #empty>\n <slot name=\"empty\" />\n </template>\n </el-cascader-menu>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onBeforeUpdate,\n onMounted,\n provide,\n reactive,\n ref,\n useSlots,\n watch,\n} from 'vue'\nimport { cloneDeep, flattenDeep, isEqual } from 'lodash-unified'\nimport {\n castArray,\n focusNode,\n getSibling,\n isClient,\n isEmpty,\n scrollIntoView,\n unique,\n} from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useNamespace } from '@element-plus/hooks'\nimport ElCascaderMenu from './menu.vue'\nimport Store from './store'\nimport Node from './node'\nimport {\n cascaderPanelEmits,\n cascaderPanelProps,\n useCascaderConfig,\n} from './config'\nimport { checkNode, getMenuIndex, sortByOriginalOrder } from './utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type {\n default as CascaderNode,\n CascaderNodeValue,\n CascaderOption,\n CascaderValue,\n} from './node'\nimport type { ElCascaderPanelContext } from './types'\nimport type { CascaderMenuInstance } from './instance'\n\ndefineOptions({\n name: 'ElCascaderPanel',\n inheritAttrs: false,\n})\n\nconst props = defineProps(cascaderPanelProps)\nconst emit = defineEmits(cascaderPanelEmits)\n\n// for interrupt sync check status in lazy mode\nlet manualChecked = false\n\nconst ns = useNamespace('cascader')\nconst config = useCascaderConfig(props)\nconst slots = useSlots()\n\nlet store: Store\nconst initialLoaded = ref(true)\nconst menuList = ref<CascaderMenuInstance[]>([])\nconst checkedValue = ref<CascaderValue>()\nconst menus = ref<CascaderNode[][]>([])\nconst expandingNode = ref<CascaderNode>()\nconst checkedNodes = ref<CascaderNode[]>([])\n\nconst isHoverMenu = computed(() => config.value.expandTrigger === 'hover')\nconst renderLabelFn = computed(() => props.renderLabel || slots.default)\n\nconst initStore = () => {\n const { options } = props\n const cfg = config.value\n\n manualChecked = false\n store = new Store(options, cfg)\n menus.value = [store.getNodes()]\n\n if (cfg.lazy && isEmpty(props.options)) {\n initialLoaded.value = false\n lazyLoad(undefined, (list) => {\n if (list) {\n store = new Store(list, cfg)\n menus.value = [store.getNodes()]\n }\n initialLoaded.value = true\n syncCheckedValue(false, true)\n })\n } else {\n syncCheckedValue(false, true)\n }\n}\n\nconst lazyLoad: ElCascaderPanelContext['lazyLoad'] = (node, cb) => {\n const cfg = config.value\n node! = node || new Node({}, cfg, undefined, true)\n node.loading = true\n\n const resolve = (dataList?: CascaderOption[]) => {\n const _node = node as Node\n const parent = _node.root ? null : _node\n dataList && store?.appendNodes(dataList, parent as Node)\n _node.loading = false\n _node.loaded = true\n _node.childrenData = _node.childrenData || []\n dataList && cb?.(dataList)\n }\n\n cfg.lazyLoad(node, resolve)\n}\n\nconst expandNode: ElCascaderPanelContext['expandNode'] = (node, silent) => {\n const { level } = node\n const newMenus = menus.value.slice(0, level)\n let newExpandingNode: CascaderNode\n\n if (node.isLeaf) {\n newExpandingNode = node.pathNodes[level - 2]\n } else {\n newExpandingNode = node\n newMenus.push(node.children)\n }\n\n if (expandingNode.value?.uid !== newExpandingNode?.uid) {\n expandingNode.value = node\n menus.value = newMenus\n !silent && emit('expand-change', node?.pathValues || [])\n }\n}\n\nconst handleCheckChange: ElCascaderPanelContext['handleCheckChange'] = (\n node,\n checked,\n emitClose = true\n) => {\n const { checkStrictly, multiple } = config.value\n const oldNode = checkedNodes.value[0]\n manualChecked = true\n\n !multiple && oldNode?.doCheck(false)\n node.doCheck(checked)\n calculateCheckedValue()\n emitClose && !multiple && !checkStrictly && emit('close')\n !emitClose && !multiple && !checkStrictly && expandParentNode(node)\n}\n\nconst expandParentNode = (node: Node | undefined) => {\n if (!node) return\n node = node.parent\n expandParentNode(node)\n node && expandNode(node)\n}\n\nconst getFlattedNodes = (leafOnly: boolean) => store?.getFlattedNodes(leafOnly)\n\nconst getCheckedNodes = (leafOnly: boolean) => {\n return getFlattedNodes(leafOnly)?.filter(({ checked }) => checked)\n}\n\nconst clearCheckedNodes = () => {\n checkedNodes.value.forEach((node) => node.doCheck(false))\n calculateCheckedValue()\n menus.value = menus.value.slice(0, 1)\n expandingNode.value = undefined\n emit('expand-change', [])\n}\n\nconst calculateCheckedValue = () => {\n const { checkStrictly, multiple } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = getCheckedNodes(!checkStrictly)!\n // ensure the original order\n const nodes = sortByOriginalOrder(oldNodes, newNodes)\n const values = nodes.map((node) => node.valueByOption)\n checkedNodes.value = nodes\n checkedValue.value = multiple ? values : values[0]\n}\n\nconst syncCheckedValue = (loaded = false, forced = false) => {\n const { modelValue } = props\n const { lazy, multiple, checkStrictly } = config.value\n const leafOnly = !checkStrictly\n\n if (\n !initialLoaded.value ||\n manualChecked ||\n (!forced && isEqual(modelValue, checkedValue.value))\n )\n return\n\n if (lazy && !loaded) {\n const values: CascaderNodeValue[] = unique(\n flattenDeep(castArray(modelValue as CascaderNodeValue[]))\n )\n const nodes = values\n .map((val) => store?.getNodeByValue(val))\n .filter((node) => !!node && !node.loaded && !node.loading) as Node[]\n\n if (nodes.length) {\n nodes.forEach((node) => {\n lazyLoad(node, () => syncCheckedValue(false, forced))\n })\n } else {\n syncCheckedValue(true, forced)\n }\n } else {\n const values = multiple ? castArray(modelValue) : [modelValue]\n const nodes = unique(\n values.map((val) =>\n store?.getNodeByValue(val as CascaderNodeValue, leafOnly)\n )\n ) as Node[]\n syncMenuState(nodes, forced)\n checkedValue.value = cloneDeep(modelValue)\n }\n}\n\nconst syncMenuState = (\n newCheckedNodes: CascaderNode[],\n reserveExpandingState = true\n) => {\n const { checkStrictly } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = newCheckedNodes.filter(\n (node) => !!node && (checkStrictly || node.isLeaf)\n )\n const oldExpandingNode = store?.getSameNode(expandingNode.value!)\n const newExpandingNode =\n (reserveExpandingState && oldExpandingNode) || newNodes[0]\n\n if (newExpandingNode) {\n newExpandingNode.pathNodes.forEach((node) => expandNode(node, true))\n } else {\n expandingNode.value = undefined\n }\n\n oldNodes.forEach((node) => node.doCheck(false))\n reactive(newNodes).forEach((node) => node.doCheck(true))\n checkedNodes.value = newNodes\n nextTick(scrollToExpandingNode)\n}\n\nconst scrollToExpandingNode = () => {\n if (!isClient) return\n\n menuList.value.forEach((menu) => {\n const menuElement = menu?.$el\n if (menuElement) {\n const container = menuElement.querySelector(\n `.${ns.namespace.value}-scrollbar__wrap`\n )\n const activeNode =\n menuElement.querySelector(\n `.${ns.b('node')}.${ns.is('active')}:last-child`\n ) || menuElement.querySelector(`.${ns.b('node')}.in-active-path`)\n scrollIntoView(container, activeNode)\n }\n })\n}\n\nconst handleKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n e.preventDefault()\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(\n target,\n distance,\n `.${ns.b('node')}[tabindex=\"-1\"]`\n ) as HTMLElement\n )\n break\n }\n case EVENT_CODE.left: {\n e.preventDefault()\n const preMenu = menuList.value[getMenuIndex(target) - 1]\n const expandedNode = preMenu?.$el.querySelector(\n `.${ns.b('node')}[aria-expanded=\"true\"]`\n )\n focusNode(expandedNode)\n break\n }\n case EVENT_CODE.right: {\n e.preventDefault()\n const nextMenu = menuList.value[getMenuIndex(target) + 1]\n const firstNode = nextMenu?.$el.querySelector(\n `.${ns.b('node')}[tabindex=\"-1\"]`\n )\n focusNode(firstNode)\n break\n }\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n checkNode(target)\n break\n }\n}\n\nprovide(\n CASCADER_PANEL_INJECTION_KEY,\n reactive({\n config,\n expandingNode,\n checkedNodes,\n isHoverMenu,\n initialLoaded,\n renderLabelFn,\n lazyLoad,\n expandNode,\n handleCheckChange,\n })\n)\n\nwatch([config, () => props.options], initStore, {\n deep: true,\n immediate: true,\n})\n\nwatch(\n () => props.modelValue,\n () => {\n manualChecked = false\n syncCheckedValue()\n },\n {\n deep: true,\n }\n)\n\nwatch(\n () => checkedValue.value,\n (val) => {\n if (!isEqual(val, props.modelValue)) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n }\n }\n)\n\nonBeforeUpdate(() => (menuList.value = []))\n\nonMounted(() => !isEmpty(props.modelValue) && syncCheckedValue())\n\ndefineExpose({\n menuList,\n menus,\n checkedNodes,\n handleKeyDown,\n handleCheckChange,\n getFlattedNodes,\n /**\n * @description get an array of currently selected node,(leafOnly) whether only return the leaf checked nodes, default is `false`\n */\n getCheckedNodes,\n /**\n * @description clear checked nodes\n */\n clearCheckedNodes,\n calculateCheckedValue,\n scrollToExpandingNode,\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_normalizeClass","_unref","_Fragment","_renderList","_createBlock","_withCtx","_renderSlot"],"mappings":"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"}
|