@element-plus/nightly 0.0.20250622 → 0.0.20250624
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 +425 -417
- package/dist/index.full.min.js +17 -17
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +17 -17
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +425 -419
- 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/autocomplete/index.mjs +2 -2
- package/es/components/autocomplete/src/autocomplete.mjs +370 -80
- package/es/components/autocomplete/src/autocomplete.mjs.map +1 -1
- package/es/components/autocomplete/src/autocomplete2.mjs +80 -370
- 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 +65 -31
- package/es/components/avatar/src/avatar.mjs.map +1 -1
- package/es/components/avatar/src/avatar2.mjs +31 -65
- package/es/components/avatar/src/avatar2.mjs.map +1 -1
- package/es/components/calendar/index.mjs +2 -2
- package/es/components/calendar/src/calendar.mjs +134 -16
- package/es/components/calendar/src/calendar.mjs.map +1 -1
- package/es/components/calendar/src/calendar2.mjs +16 -134
- package/es/components/calendar/src/calendar2.mjs.map +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 +50 -55
- 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/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/checkbox/index.mjs +2 -2
- package/es/components/checkbox/src/checkbox-button.mjs +1 -1
- package/es/components/checkbox/src/checkbox.mjs +59 -119
- package/es/components/checkbox/src/checkbox.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox2.mjs +119 -59
- package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker.d.ts +3 -1
- package/es/components/color-picker/src/color-picker.mjs +6 -1
- package/es/components/color-picker/src/color-picker.mjs.map +1 -1
- package/es/components/color-picker/src/color-picker.vue.d.ts +8 -2
- package/es/components/color-picker/src/color-picker2.mjs +6 -4
- package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
- package/es/components/color-picker/src/utils/color.d.ts +1 -1
- package/es/components/color-picker/src/utils/color.mjs.map +1 -1
- package/es/components/drawer/index.mjs +2 -2
- package/es/components/drawer/src/drawer.mjs +26 -178
- package/es/components/drawer/src/drawer.mjs.map +1 -1
- package/es/components/drawer/src/drawer2.mjs +178 -26
- package/es/components/drawer/src/drawer2.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown-item-impl.mjs +1 -1
- package/es/components/dropdown/src/dropdown-menu.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/index.mjs +2 -2
- package/es/components/image/src/image.mjs +226 -68
- package/es/components/image/src/image.mjs.map +1 -1
- package/es/components/image/src/image2.mjs +68 -226
- package/es/components/image/src/image2.mjs.map +1 -1
- package/es/components/index.mjs +17 -17
- 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/message/index.mjs +1 -1
- package/es/components/message/src/message.mjs +153 -92
- package/es/components/message/src/message.mjs.map +1 -1
- package/es/components/message/src/message2.mjs +92 -153
- package/es/components/message/src/message2.mjs.map +1 -1
- package/es/components/message/src/method.mjs +2 -2
- package/es/components/pagination/src/components/jumper.mjs +58 -7
- package/es/components/pagination/src/components/jumper.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper2.mjs +7 -58
- package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
- package/es/components/pagination/src/pagination.mjs +1 -1
- package/es/components/radio/index.mjs +2 -2
- package/es/components/radio/src/radio-group.mjs +34 -65
- package/es/components/radio/src/radio-group.mjs.map +1 -1
- package/es/components/radio/src/radio-group2.mjs +65 -34
- package/es/components/radio/src/radio-group2.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/row/index.mjs +2 -2
- package/es/components/row/src/row.mjs +28 -44
- package/es/components/row/src/row.mjs.map +1 -1
- package/es/components/row/src/row2.mjs +44 -28
- package/es/components/row/src/row2.mjs.map +1 -1
- package/es/components/select/index.mjs +1 -1
- package/es/components/select/src/option.mjs +13 -89
- package/es/components/select/src/option.mjs.map +1 -1
- package/es/components/select/src/option2.mjs +89 -13
- package/es/components/select/src/option2.mjs.map +1 -1
- package/es/components/select/src/select2.mjs +1 -1
- package/es/components/select/src/useOption.mjs +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/text/index.mjs +2 -2
- package/es/components/text/src/text.mjs +67 -21
- package/es/components/text/src/text.mjs.map +1 -1
- package/es/components/text/src/text2.mjs +21 -67
- package/es/components/text/src/text2.mjs.map +1 -1
- package/es/components/time-select/index.mjs +2 -2
- package/es/components/time-select/src/time-select.mjs +132 -54
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/time-select/src/time-select2.mjs +54 -132
- package/es/components/time-select/src/time-select2.mjs.map +1 -1
- package/es/components/timeline/index.mjs +2 -2
- package/es/components/timeline/src/timeline-item.mjs +72 -33
- package/es/components/timeline/src/timeline-item.mjs.map +1 -1
- package/es/components/timeline/src/timeline-item2.mjs +33 -72
- package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
- package/es/components/tooltip-v2/index.mjs +5 -5
- package/es/components/tooltip-v2/src/arrow.mjs +37 -21
- package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
- package/es/components/tooltip-v2/src/arrow2.mjs +21 -37
- package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/content.mjs +110 -48
- package/es/components/tooltip-v2/src/content.mjs.map +1 -1
- package/es/components/tooltip-v2/src/content2.mjs +48 -110
- package/es/components/tooltip-v2/src/content2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/tooltip.mjs +78 -20
- package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
- package/es/components/tooltip-v2/src/tooltip2.mjs +20 -78
- package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
- package/es/components/tooltip-v2/src/trigger.mjs +89 -12
- package/es/components/tooltip-v2/src/trigger.mjs.map +1 -1
- package/es/components/tooltip-v2/src/trigger2.mjs +12 -89
- package/es/components/tooltip-v2/src/trigger2.mjs.map +1 -1
- package/es/components/tree/src/model/node.d.ts +9 -9
- package/es/components/tree/src/model/node.mjs +13 -9
- package/es/components/tree/src/model/node.mjs.map +1 -1
- package/es/components/tree/src/model/tree-store.d.ts +8 -8
- package/es/components/tree/src/model/tree-store.mjs +22 -12
- package/es/components/tree/src/model/tree-store.mjs.map +1 -1
- package/es/components/tree/src/model/useDragNode.d.ts +221 -13
- package/es/components/tree/src/model/useDragNode.mjs +22 -10
- package/es/components/tree/src/model/useDragNode.mjs.map +1 -1
- package/es/components/tree/src/model/useKeydown.d.ts +1 -1
- package/es/components/tree/src/model/useKeydown.mjs +2 -0
- package/es/components/tree/src/model/useKeydown.mjs.map +1 -1
- package/es/components/tree/src/model/useNodeExpandEventBroadcast.d.ts +7 -2
- package/es/components/tree/src/model/useNodeExpandEventBroadcast.mjs +2 -1
- package/es/components/tree/src/model/useNodeExpandEventBroadcast.mjs.map +1 -1
- package/es/components/tree/src/model/util.d.ts +2 -2
- package/es/components/tree/src/model/util.mjs.map +1 -1
- package/es/components/tree/src/tree.mjs +15 -8
- package/es/components/tree/src/tree.mjs.map +1 -1
- package/es/components/tree/src/tree.type.d.ts +6 -6
- package/es/components/tree/src/tree.vue.d.ts +171 -79
- 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/tree.vue.d.ts +3 -3
- package/es/components/tree-v2/src/types.d.ts +1 -0
- 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-content.vue.d.ts +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/upload.vue.d.ts +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/index.d.ts +2608 -2434
- package/es/index.mjs +17 -17
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/autocomplete/index.js +2 -2
- package/lib/components/autocomplete/src/autocomplete.js +368 -79
- package/lib/components/autocomplete/src/autocomplete.js.map +1 -1
- package/lib/components/autocomplete/src/autocomplete2.js +79 -368
- 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 +65 -32
- package/lib/components/avatar/src/avatar.js.map +1 -1
- package/lib/components/avatar/src/avatar2.js +32 -65
- package/lib/components/avatar/src/avatar2.js.map +1 -1
- package/lib/components/calendar/index.js +2 -2
- package/lib/components/calendar/src/calendar.js +134 -17
- package/lib/components/calendar/src/calendar.js.map +1 -1
- package/lib/components/calendar/src/calendar2.js +17 -134
- package/lib/components/calendar/src/calendar2.js.map +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 +48 -53
- 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/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/checkbox/index.js +2 -2
- package/lib/components/checkbox/src/checkbox-button.js +1 -1
- package/lib/components/checkbox/src/checkbox.js +60 -119
- package/lib/components/checkbox/src/checkbox.js.map +1 -1
- package/lib/components/checkbox/src/checkbox2.js +119 -60
- package/lib/components/checkbox/src/checkbox2.js.map +1 -1
- package/lib/components/color-picker/src/color-picker.d.ts +3 -1
- package/lib/components/color-picker/src/color-picker.js +8 -3
- package/lib/components/color-picker/src/color-picker.js.map +1 -1
- package/lib/components/color-picker/src/color-picker.vue.d.ts +8 -2
- package/lib/components/color-picker/src/color-picker2.js +20 -18
- package/lib/components/color-picker/src/color-picker2.js.map +1 -1
- package/lib/components/color-picker/src/utils/color.d.ts +1 -1
- package/lib/components/color-picker/src/utils/color.js.map +1 -1
- package/lib/components/drawer/index.js +2 -2
- package/lib/components/drawer/src/drawer.js +27 -178
- package/lib/components/drawer/src/drawer.js.map +1 -1
- package/lib/components/drawer/src/drawer2.js +178 -27
- package/lib/components/drawer/src/drawer2.js.map +1 -1
- package/lib/components/dropdown/src/dropdown-item-impl.js +1 -1
- package/lib/components/dropdown/src/dropdown-menu.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/index.js +2 -2
- package/lib/components/image/src/image.js +225 -68
- package/lib/components/image/src/image.js.map +1 -1
- package/lib/components/image/src/image2.js +68 -225
- package/lib/components/image/src/image2.js.map +1 -1
- package/lib/components/index.js +18 -16
- 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/message/index.js +1 -1
- package/lib/components/message/src/message.js +152 -94
- package/lib/components/message/src/message.js.map +1 -1
- package/lib/components/message/src/message2.js +94 -152
- package/lib/components/message/src/message2.js.map +1 -1
- package/lib/components/message/src/method.js +2 -2
- package/lib/components/pagination/src/components/jumper.js +58 -7
- package/lib/components/pagination/src/components/jumper.js.map +1 -1
- package/lib/components/pagination/src/components/jumper2.js +7 -58
- package/lib/components/pagination/src/components/jumper2.js.map +1 -1
- package/lib/components/pagination/src/pagination.js +1 -1
- package/lib/components/radio/index.js +2 -2
- package/lib/components/radio/src/radio-group.js +35 -65
- package/lib/components/radio/src/radio-group.js.map +1 -1
- package/lib/components/radio/src/radio-group2.js +65 -35
- package/lib/components/radio/src/radio-group2.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 +27 -31
- 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 +31 -27
- 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/row/index.js +2 -2
- package/lib/components/row/src/row.js +30 -44
- package/lib/components/row/src/row.js.map +1 -1
- package/lib/components/row/src/row2.js +44 -30
- package/lib/components/row/src/row2.js.map +1 -1
- package/lib/components/select/index.js +1 -1
- package/lib/components/select/src/option.js +14 -89
- package/lib/components/select/src/option.js.map +1 -1
- package/lib/components/select/src/option2.js +89 -14
- package/lib/components/select/src/option2.js.map +1 -1
- package/lib/components/select/src/select2.js +1 -1
- package/lib/components/select/src/useOption.js +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/text/index.js +2 -2
- package/lib/components/text/src/text.js +67 -21
- package/lib/components/text/src/text.js.map +1 -1
- package/lib/components/text/src/text2.js +21 -67
- package/lib/components/text/src/text2.js.map +1 -1
- package/lib/components/time-select/index.js +2 -2
- package/lib/components/time-select/src/time-select.js +137 -54
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/time-select/src/time-select2.js +54 -137
- package/lib/components/time-select/src/time-select2.js.map +1 -1
- package/lib/components/timeline/index.js +2 -2
- package/lib/components/timeline/src/timeline-item.js +72 -33
- package/lib/components/timeline/src/timeline-item.js.map +1 -1
- package/lib/components/timeline/src/timeline-item2.js +33 -72
- package/lib/components/timeline/src/timeline-item2.js.map +1 -1
- package/lib/components/tooltip-v2/index.js +5 -5
- package/lib/components/tooltip-v2/src/arrow.js +37 -22
- package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
- package/lib/components/tooltip-v2/src/arrow2.js +22 -37
- package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
- package/lib/components/tooltip-v2/src/content.js +110 -48
- package/lib/components/tooltip-v2/src/content.js.map +1 -1
- package/lib/components/tooltip-v2/src/content2.js +48 -110
- package/lib/components/tooltip-v2/src/content2.js.map +1 -1
- package/lib/components/tooltip-v2/src/tooltip.js +78 -20
- package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
- package/lib/components/tooltip-v2/src/tooltip2.js +20 -78
- package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
- package/lib/components/tooltip-v2/src/trigger.js +89 -12
- package/lib/components/tooltip-v2/src/trigger.js.map +1 -1
- package/lib/components/tooltip-v2/src/trigger2.js +12 -89
- package/lib/components/tooltip-v2/src/trigger2.js.map +1 -1
- package/lib/components/tree/src/model/node.d.ts +9 -9
- package/lib/components/tree/src/model/node.js +13 -9
- package/lib/components/tree/src/model/node.js.map +1 -1
- package/lib/components/tree/src/model/tree-store.d.ts +8 -8
- package/lib/components/tree/src/model/tree-store.js +21 -11
- package/lib/components/tree/src/model/tree-store.js.map +1 -1
- package/lib/components/tree/src/model/useDragNode.d.ts +221 -13
- package/lib/components/tree/src/model/useDragNode.js +22 -10
- package/lib/components/tree/src/model/useDragNode.js.map +1 -1
- package/lib/components/tree/src/model/useKeydown.d.ts +1 -1
- package/lib/components/tree/src/model/useKeydown.js +2 -0
- package/lib/components/tree/src/model/useKeydown.js.map +1 -1
- package/lib/components/tree/src/model/useNodeExpandEventBroadcast.d.ts +7 -2
- package/lib/components/tree/src/model/useNodeExpandEventBroadcast.js +2 -1
- package/lib/components/tree/src/model/useNodeExpandEventBroadcast.js.map +1 -1
- package/lib/components/tree/src/model/util.d.ts +2 -2
- package/lib/components/tree/src/model/util.js.map +1 -1
- package/lib/components/tree/src/tree.js +15 -8
- package/lib/components/tree/src/tree.js.map +1 -1
- package/lib/components/tree/src/tree.type.d.ts +6 -6
- package/lib/components/tree/src/tree.vue.d.ts +171 -79
- 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/tree.vue.d.ts +3 -3
- package/lib/components/tree-v2/src/types.d.ts +1 -0
- 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-content.vue.d.ts +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/upload.vue.d.ts +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/index.d.ts +2608 -2434
- package/lib/index.js +18 -16
- 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,4 +1,6 @@
|
|
1
|
-
import type { InjectionKey } from 'vue';
|
1
|
+
import type { InjectionKey, Ref, SetupContext } from 'vue';
|
2
|
+
import type { AllowDragFunction, AllowDropFunction, FakeNode, NodeDropType } from '../tree.type';
|
3
|
+
import type TreeStore from './tree-store';
|
2
4
|
import type Node from './node';
|
3
5
|
interface TreeNode {
|
4
6
|
node: Node;
|
@@ -8,25 +10,231 @@ interface DragOptions {
|
|
8
10
|
event: DragEvent;
|
9
11
|
treeNode: TreeNode;
|
10
12
|
}
|
13
|
+
interface Props {
|
14
|
+
props: {
|
15
|
+
allowDrag?: AllowDragFunction;
|
16
|
+
allowDrop?: AllowDropFunction;
|
17
|
+
};
|
18
|
+
ctx: SetupContext<string[]>;
|
19
|
+
el$: Ref<HTMLElement | null>;
|
20
|
+
dropIndicator$: Ref<HTMLElement | null>;
|
21
|
+
store: Ref<TreeStore>;
|
22
|
+
}
|
11
23
|
export interface DragEvents {
|
12
24
|
treeNodeDragStart: (options: DragOptions) => void;
|
13
25
|
treeNodeDragOver: (options: DragOptions) => void;
|
14
26
|
treeNodeDragEnd: (event: DragEvent) => void;
|
15
27
|
}
|
16
28
|
export declare const dragEventsKey: InjectionKey<DragEvents>;
|
17
|
-
export declare function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }: {
|
18
|
-
|
19
|
-
ctx: any;
|
20
|
-
el$: any;
|
21
|
-
dropIndicator$: any;
|
22
|
-
store: any;
|
23
|
-
}): {
|
24
|
-
dragState: import("vue").Ref<{
|
25
|
-
showDropIndicator: boolean;
|
26
|
-
draggingNode: null;
|
27
|
-
dropNode: null;
|
29
|
+
export declare function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store, }: Props): {
|
30
|
+
dragState: Ref<{
|
28
31
|
allowDrop: boolean;
|
29
|
-
dropType: null;
|
32
|
+
dropType: NodeDropType | null;
|
33
|
+
draggingNode: {
|
34
|
+
node: {
|
35
|
+
id: number;
|
36
|
+
text: string | null;
|
37
|
+
checked: boolean;
|
38
|
+
indeterminate: boolean;
|
39
|
+
data: import("../tree.type").TreeNodeData;
|
40
|
+
expanded: boolean;
|
41
|
+
parent: any | null;
|
42
|
+
visible: boolean;
|
43
|
+
isCurrent: boolean;
|
44
|
+
store: {
|
45
|
+
currentNode: any | null;
|
46
|
+
currentNodeKey: import("../tree.type").TreeKey | null;
|
47
|
+
nodesMap: import("../tree.type").TreeStoreNodesMap;
|
48
|
+
root: any;
|
49
|
+
data: import("../tree.type").TreeNodeData[];
|
50
|
+
lazy: boolean;
|
51
|
+
load?: import("../tree.type").LoadFunction | undefined;
|
52
|
+
filterNodeMethod?: import("../tree.type").FilterNodeMethodFunction | undefined;
|
53
|
+
key: import("../tree.type").TreeKey;
|
54
|
+
defaultCheckedKeys?: import("../tree.type").TreeKey[] | undefined;
|
55
|
+
checkStrictly: boolean;
|
56
|
+
defaultExpandedKeys?: import("../tree.type").TreeKey[] | undefined;
|
57
|
+
autoExpandParent: boolean;
|
58
|
+
defaultExpandAll: boolean;
|
59
|
+
checkDescendants: boolean;
|
60
|
+
props: {
|
61
|
+
children?: string | undefined;
|
62
|
+
label?: (string | ((data: import("../tree.type").TreeNodeData, node: Node) => string)) | undefined;
|
63
|
+
disabled?: (string | ((data: import("../tree.type").TreeNodeData, node: Node) => boolean)) | undefined;
|
64
|
+
isLeaf?: (string | ((data: import("../tree.type").TreeNodeData, node: Node) => boolean)) | undefined;
|
65
|
+
class?: ((data: import("../tree.type").TreeNodeData, node: Node) => string | {
|
66
|
+
[key: string]: boolean;
|
67
|
+
}) | undefined;
|
68
|
+
};
|
69
|
+
initialize: () => void;
|
70
|
+
filter: (value: import("../tree.type").FilterValue) => void;
|
71
|
+
setData: (newVal: import("../tree.type").TreeData) => void;
|
72
|
+
getNode: (data: import("../tree.type").TreeKey | import("../tree.type").TreeNodeData | Node) => Node;
|
73
|
+
insertBefore: (data: import("../tree.type").TreeNodeData, refData: import("../tree.type").TreeKey | import("../tree.type").TreeNodeData | Node) => void;
|
74
|
+
insertAfter: (data: import("../tree.type").TreeNodeData, refData: import("../tree.type").TreeKey | import("../tree.type").TreeNodeData | Node) => void;
|
75
|
+
remove: (data: import("../tree.type").TreeNodeData | Node) => void;
|
76
|
+
append: (data: import("../tree.type").TreeNodeData, parentData: import("../tree.type").TreeNodeData | import("../tree.type").TreeKey | Node) => void;
|
77
|
+
_initDefaultCheckedNodes: () => void;
|
78
|
+
_initDefaultCheckedNode: (node: Node) => void;
|
79
|
+
setDefaultCheckedKey: (newVal: import("../tree.type").TreeKey[]) => void;
|
80
|
+
registerNode: (node: Node) => void;
|
81
|
+
deregisterNode: (node: Node) => void;
|
82
|
+
getCheckedNodes: (leafOnly?: boolean, includeHalfChecked?: boolean) => import("../tree.type").TreeNodeData[];
|
83
|
+
getCheckedKeys: (leafOnly?: boolean) => import("../tree.type").TreeKey[];
|
84
|
+
getHalfCheckedNodes: () => import("../tree.type").TreeNodeData[];
|
85
|
+
getHalfCheckedKeys: () => import("../tree.type").TreeKey[];
|
86
|
+
_getAllNodes: () => Node[];
|
87
|
+
updateChildren: (key: import("../tree.type").TreeKey, data: import("../tree.type").TreeData) => void;
|
88
|
+
_setCheckedKeys: (key: import("../tree.type").TreeKey, leafOnly: boolean | undefined, checkedKeys: {
|
89
|
+
[key: string]: boolean;
|
90
|
+
}) => void;
|
91
|
+
setCheckedNodes: (array: Node[], leafOnly?: boolean) => void;
|
92
|
+
setCheckedKeys: (keys: import("../tree.type").TreeKey[], leafOnly?: boolean) => void;
|
93
|
+
setDefaultExpandedKeys: (keys: import("../tree.type").TreeKey[]) => void;
|
94
|
+
setChecked: (data: import("../tree.type").TreeKey | import("../tree.type").TreeNodeData, checked: boolean, deep: boolean) => void;
|
95
|
+
getCurrentNode: () => Node | null;
|
96
|
+
setCurrentNode: (currentNode: Node) => void;
|
97
|
+
setUserCurrentNode: (node: Node, shouldAutoExpandParent?: boolean) => void;
|
98
|
+
setCurrentNodeKey: (key: import("../tree.type").TreeKey | null, shouldAutoExpandParent?: boolean) => void;
|
99
|
+
};
|
100
|
+
isLeafByUser: boolean | undefined;
|
101
|
+
isLeaf: boolean | undefined;
|
102
|
+
canFocus: boolean;
|
103
|
+
level: number;
|
104
|
+
loaded: boolean;
|
105
|
+
childNodes: any[];
|
106
|
+
loading: boolean;
|
107
|
+
initialize: () => void;
|
108
|
+
setData: (data: import("../tree.type").TreeNodeData) => void;
|
109
|
+
readonly label: string;
|
110
|
+
readonly key: import("../tree.type").TreeKey | null | undefined;
|
111
|
+
readonly disabled: boolean;
|
112
|
+
readonly nextSibling: any | null;
|
113
|
+
readonly previousSibling: any | null;
|
114
|
+
contains: (target: Node, deep?: boolean) => boolean;
|
115
|
+
remove: () => void;
|
116
|
+
insertChild: (child?: FakeNode | Node, index?: number, batch?: boolean) => void;
|
117
|
+
insertBefore: (child: FakeNode | Node, ref: Node) => void;
|
118
|
+
insertAfter: (child: FakeNode | Node, ref: Node) => void;
|
119
|
+
removeChild: (child: Node) => void;
|
120
|
+
removeChildByData: (data: import("../tree.type").TreeNodeData | null) => void;
|
121
|
+
expand: (callback?: (() => void) | null, expandParent?: boolean) => void;
|
122
|
+
doCreateChildren: (array: import("../tree.type").TreeNodeData[], defaultProps?: import("../tree.type").TreeNodeLoadedDefaultProps) => void;
|
123
|
+
collapse: () => void;
|
124
|
+
shouldLoadData: () => boolean;
|
125
|
+
updateLeafState: () => void;
|
126
|
+
setChecked: (value?: boolean | string, deep?: boolean, recursion?: boolean, passValue?: boolean) => void;
|
127
|
+
getChildren: (forceInit?: boolean) => import("../tree.type").TreeNodeData | import("../tree.type").TreeNodeData[] | null;
|
128
|
+
updateChildren: () => void;
|
129
|
+
loadData: (callback: (data?: import("../tree.type").TreeNodeData[]) => void, defaultProps?: import("../tree.type").TreeNodeLoadedDefaultProps) => void;
|
130
|
+
eachNode: (callback: (node: Node) => void) => void;
|
131
|
+
reInitChecked: () => void;
|
132
|
+
};
|
133
|
+
$el?: HTMLElement | undefined;
|
134
|
+
} | null;
|
135
|
+
showDropIndicator: boolean;
|
136
|
+
dropNode: {
|
137
|
+
node: {
|
138
|
+
id: number;
|
139
|
+
text: string | null;
|
140
|
+
checked: boolean;
|
141
|
+
indeterminate: boolean;
|
142
|
+
data: import("../tree.type").TreeNodeData;
|
143
|
+
expanded: boolean;
|
144
|
+
parent: any | null;
|
145
|
+
visible: boolean;
|
146
|
+
isCurrent: boolean;
|
147
|
+
store: {
|
148
|
+
currentNode: any | null;
|
149
|
+
currentNodeKey: import("../tree.type").TreeKey | null;
|
150
|
+
nodesMap: import("../tree.type").TreeStoreNodesMap;
|
151
|
+
root: any;
|
152
|
+
data: import("../tree.type").TreeNodeData[];
|
153
|
+
lazy: boolean;
|
154
|
+
load?: import("../tree.type").LoadFunction | undefined;
|
155
|
+
filterNodeMethod?: import("../tree.type").FilterNodeMethodFunction | undefined;
|
156
|
+
key: import("../tree.type").TreeKey;
|
157
|
+
defaultCheckedKeys?: import("../tree.type").TreeKey[] | undefined;
|
158
|
+
checkStrictly: boolean;
|
159
|
+
defaultExpandedKeys?: import("../tree.type").TreeKey[] | undefined;
|
160
|
+
autoExpandParent: boolean;
|
161
|
+
defaultExpandAll: boolean;
|
162
|
+
checkDescendants: boolean;
|
163
|
+
props: {
|
164
|
+
children?: string | undefined;
|
165
|
+
label?: (string | ((data: import("../tree.type").TreeNodeData, node: Node) => string)) | undefined;
|
166
|
+
disabled?: (string | ((data: import("../tree.type").TreeNodeData, node: Node) => boolean)) | undefined;
|
167
|
+
isLeaf?: (string | ((data: import("../tree.type").TreeNodeData, node: Node) => boolean)) | undefined;
|
168
|
+
class?: ((data: import("../tree.type").TreeNodeData, node: Node) => string | {
|
169
|
+
[key: string]: boolean;
|
170
|
+
}) | undefined;
|
171
|
+
};
|
172
|
+
initialize: () => void;
|
173
|
+
filter: (value: import("../tree.type").FilterValue) => void;
|
174
|
+
setData: (newVal: import("../tree.type").TreeData) => void;
|
175
|
+
getNode: (data: import("../tree.type").TreeKey | import("../tree.type").TreeNodeData | Node) => Node;
|
176
|
+
insertBefore: (data: import("../tree.type").TreeNodeData, refData: import("../tree.type").TreeKey | import("../tree.type").TreeNodeData | Node) => void;
|
177
|
+
insertAfter: (data: import("../tree.type").TreeNodeData, refData: import("../tree.type").TreeKey | import("../tree.type").TreeNodeData | Node) => void;
|
178
|
+
remove: (data: import("../tree.type").TreeNodeData | Node) => void;
|
179
|
+
append: (data: import("../tree.type").TreeNodeData, parentData: import("../tree.type").TreeNodeData | import("../tree.type").TreeKey | Node) => void;
|
180
|
+
_initDefaultCheckedNodes: () => void;
|
181
|
+
_initDefaultCheckedNode: (node: Node) => void;
|
182
|
+
setDefaultCheckedKey: (newVal: import("../tree.type").TreeKey[]) => void;
|
183
|
+
registerNode: (node: Node) => void;
|
184
|
+
deregisterNode: (node: Node) => void;
|
185
|
+
getCheckedNodes: (leafOnly?: boolean, includeHalfChecked?: boolean) => import("../tree.type").TreeNodeData[];
|
186
|
+
getCheckedKeys: (leafOnly?: boolean) => import("../tree.type").TreeKey[];
|
187
|
+
getHalfCheckedNodes: () => import("../tree.type").TreeNodeData[];
|
188
|
+
getHalfCheckedKeys: () => import("../tree.type").TreeKey[];
|
189
|
+
_getAllNodes: () => Node[];
|
190
|
+
updateChildren: (key: import("../tree.type").TreeKey, data: import("../tree.type").TreeData) => void;
|
191
|
+
_setCheckedKeys: (key: import("../tree.type").TreeKey, leafOnly: boolean | undefined, checkedKeys: {
|
192
|
+
[key: string]: boolean;
|
193
|
+
}) => void;
|
194
|
+
setCheckedNodes: (array: Node[], leafOnly?: boolean) => void;
|
195
|
+
setCheckedKeys: (keys: import("../tree.type").TreeKey[], leafOnly?: boolean) => void;
|
196
|
+
setDefaultExpandedKeys: (keys: import("../tree.type").TreeKey[]) => void;
|
197
|
+
setChecked: (data: import("../tree.type").TreeKey | import("../tree.type").TreeNodeData, checked: boolean, deep: boolean) => void;
|
198
|
+
getCurrentNode: () => Node | null;
|
199
|
+
setCurrentNode: (currentNode: Node) => void;
|
200
|
+
setUserCurrentNode: (node: Node, shouldAutoExpandParent?: boolean) => void;
|
201
|
+
setCurrentNodeKey: (key: import("../tree.type").TreeKey | null, shouldAutoExpandParent?: boolean) => void;
|
202
|
+
};
|
203
|
+
isLeafByUser: boolean | undefined;
|
204
|
+
isLeaf: boolean | undefined;
|
205
|
+
canFocus: boolean;
|
206
|
+
level: number;
|
207
|
+
loaded: boolean;
|
208
|
+
childNodes: any[];
|
209
|
+
loading: boolean;
|
210
|
+
initialize: () => void;
|
211
|
+
setData: (data: import("../tree.type").TreeNodeData) => void;
|
212
|
+
readonly label: string;
|
213
|
+
readonly key: import("../tree.type").TreeKey | null | undefined;
|
214
|
+
readonly disabled: boolean;
|
215
|
+
readonly nextSibling: any | null;
|
216
|
+
readonly previousSibling: any | null;
|
217
|
+
contains: (target: Node, deep?: boolean) => boolean;
|
218
|
+
remove: () => void;
|
219
|
+
insertChild: (child?: FakeNode | Node, index?: number, batch?: boolean) => void;
|
220
|
+
insertBefore: (child: FakeNode | Node, ref: Node) => void;
|
221
|
+
insertAfter: (child: FakeNode | Node, ref: Node) => void;
|
222
|
+
removeChild: (child: Node) => void;
|
223
|
+
removeChildByData: (data: import("../tree.type").TreeNodeData | null) => void;
|
224
|
+
expand: (callback?: (() => void) | null, expandParent?: boolean) => void;
|
225
|
+
doCreateChildren: (array: import("../tree.type").TreeNodeData[], defaultProps?: import("../tree.type").TreeNodeLoadedDefaultProps) => void;
|
226
|
+
collapse: () => void;
|
227
|
+
shouldLoadData: () => boolean;
|
228
|
+
updateLeafState: () => void;
|
229
|
+
setChecked: (value?: boolean | string, deep?: boolean, recursion?: boolean, passValue?: boolean) => void;
|
230
|
+
getChildren: (forceInit?: boolean) => import("../tree.type").TreeNodeData | import("../tree.type").TreeNodeData[] | null;
|
231
|
+
updateChildren: () => void;
|
232
|
+
loadData: (callback: (data?: import("../tree.type").TreeNodeData[]) => void, defaultProps?: import("../tree.type").TreeNodeLoadedDefaultProps) => void;
|
233
|
+
eachNode: (callback: (node: Node) => void) => void;
|
234
|
+
reInitChecked: () => void;
|
235
|
+
};
|
236
|
+
$el?: HTMLElement | undefined;
|
237
|
+
} | null;
|
30
238
|
}>;
|
31
239
|
};
|
32
240
|
export {};
|
@@ -8,7 +8,13 @@ var shared = require('@vue/shared');
|
|
8
8
|
var style = require('../../../../utils/dom/style.js');
|
9
9
|
|
10
10
|
const dragEventsKey = Symbol("dragEvents");
|
11
|
-
function useDragNodeHandler({
|
11
|
+
function useDragNodeHandler({
|
12
|
+
props,
|
13
|
+
ctx,
|
14
|
+
el$,
|
15
|
+
dropIndicator$,
|
16
|
+
store
|
17
|
+
}) {
|
12
18
|
const ns = index.useNamespace("tree");
|
13
19
|
const dragState = vue.ref({
|
14
20
|
showDropIndicator: false,
|
@@ -18,6 +24,8 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
|
|
18
24
|
dropType: null
|
19
25
|
});
|
20
26
|
const treeNodeDragStart = ({ event, treeNode }) => {
|
27
|
+
if (!event.dataTransfer)
|
28
|
+
return;
|
21
29
|
if (shared.isFunction(props.allowDrag) && !props.allowDrag(treeNode.node)) {
|
22
30
|
event.preventDefault();
|
23
31
|
return false;
|
@@ -31,6 +39,8 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
|
|
31
39
|
ctx.emit("node-drag-start", treeNode.node, event);
|
32
40
|
};
|
33
41
|
const treeNodeDragOver = ({ event, treeNode }) => {
|
42
|
+
if (!event.dataTransfer)
|
43
|
+
return;
|
34
44
|
const dropNode = treeNode;
|
35
45
|
const oldDropNode = dragState.value.dropNode;
|
36
46
|
if (oldDropNode && oldDropNode.node.id !== dropNode.node.id) {
|
@@ -74,7 +84,8 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
|
|
74
84
|
dropInner = false;
|
75
85
|
dropNext = false;
|
76
86
|
}
|
77
|
-
const
|
87
|
+
const dropEl = dropNode.$el;
|
88
|
+
const targetPosition = dropEl.querySelector(`.${ns.be("node", "content")}`).getBoundingClientRect();
|
78
89
|
const treePosition = el$.value.getBoundingClientRect();
|
79
90
|
let dropType;
|
80
91
|
const prevPercent = dropPrev ? dropInner ? 0.25 : dropNext ? 0.45 : 1 : -1;
|
@@ -90,7 +101,7 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
|
|
90
101
|
} else {
|
91
102
|
dropType = "none";
|
92
103
|
}
|
93
|
-
const iconPosition =
|
104
|
+
const iconPosition = dropEl.querySelector(`.${ns.be("node", "expand-icon")}`).getBoundingClientRect();
|
94
105
|
const dropIndicator = dropIndicator$.value;
|
95
106
|
if (dropType === "before") {
|
96
107
|
indicatorTop = iconPosition.top - treePosition.top;
|
@@ -100,9 +111,9 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
|
|
100
111
|
dropIndicator.style.top = `${indicatorTop}px`;
|
101
112
|
dropIndicator.style.left = `${iconPosition.right - treePosition.left}px`;
|
102
113
|
if (dropType === "inner") {
|
103
|
-
style.addClass(
|
114
|
+
style.addClass(dropEl, ns.is("drop-inner"));
|
104
115
|
} else {
|
105
|
-
style.removeClass(
|
116
|
+
style.removeClass(dropEl, ns.is("drop-inner"));
|
106
117
|
}
|
107
118
|
dragState.value.showDropIndicator = dropType === "before" || dropType === "after";
|
108
119
|
dragState.value.allowDrop = dragState.value.showDropIndicator || userAllowDropInner;
|
@@ -110,20 +121,21 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
|
|
110
121
|
ctx.emit("node-drag-over", draggingNode.node, dropNode.node, event);
|
111
122
|
};
|
112
123
|
const treeNodeDragEnd = (event) => {
|
124
|
+
var _a, _b;
|
113
125
|
const { draggingNode, dropType, dropNode } = dragState.value;
|
114
126
|
event.preventDefault();
|
115
127
|
if (event.dataTransfer) {
|
116
128
|
event.dataTransfer.dropEffect = "move";
|
117
129
|
}
|
118
|
-
if (draggingNode && dropNode) {
|
130
|
+
if ((draggingNode == null ? void 0 : draggingNode.node.data) && dropNode) {
|
119
131
|
const draggingNodeCopy = { data: draggingNode.node.data };
|
120
132
|
if (dropType !== "none") {
|
121
133
|
draggingNode.node.remove();
|
122
134
|
}
|
123
135
|
if (dropType === "before") {
|
124
|
-
dropNode.node.parent.insertBefore(draggingNodeCopy, dropNode.node);
|
136
|
+
(_a = dropNode.node.parent) == null ? void 0 : _a.insertBefore(draggingNodeCopy, dropNode.node);
|
125
137
|
} else if (dropType === "after") {
|
126
|
-
dropNode.node.parent.insertAfter(draggingNodeCopy, dropNode.node);
|
138
|
+
(_b = dropNode.node.parent) == null ? void 0 : _b.insertAfter(draggingNodeCopy, dropNode.node);
|
127
139
|
} else if (dropType === "inner") {
|
128
140
|
dropNode.node.insertChild(draggingNodeCopy);
|
129
141
|
}
|
@@ -131,8 +143,8 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
|
|
131
143
|
store.value.registerNode(draggingNodeCopy);
|
132
144
|
if (store.value.key) {
|
133
145
|
draggingNode.node.eachNode((node) => {
|
134
|
-
var
|
135
|
-
(
|
146
|
+
var _a2;
|
147
|
+
(_a2 = store.value.nodesMap[node.data[store.value.key]]) == null ? void 0 : _a2.setChecked(node.checked, !store.value.checkStrictly);
|
136
148
|
});
|
137
149
|
}
|
138
150
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useDragNode.js","sources":["../../../../../../../packages/components/tree/src/model/useDragNode.ts"],"sourcesContent":["// @ts-nocheck\nimport { provide, ref } from 'vue'\nimport { addClass, isFunction, removeClass } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { InjectionKey } from 'vue'\nimport type Node from './node'\nimport type { NodeDropType } from '../tree.type'\n\ninterface TreeNode {\n node: Node\n $el?: HTMLElement\n}\n\ninterface DragOptions {\n event: DragEvent\n treeNode: TreeNode\n}\n\nexport interface DragEvents {\n treeNodeDragStart: (options: DragOptions) => void\n treeNodeDragOver: (options: DragOptions) => void\n treeNodeDragEnd: (event: DragEvent) => void\n}\n\nexport const dragEventsKey: InjectionKey<DragEvents> = Symbol('dragEvents')\n\nexport function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {\n const ns = useNamespace('tree')\n const dragState = ref({\n showDropIndicator: false,\n draggingNode: null,\n dropNode: null,\n allowDrop: true,\n dropType: null,\n })\n\n const treeNodeDragStart = ({ event, treeNode }: DragOptions) => {\n if (isFunction(props.allowDrag) && !props.allowDrag(treeNode.node)) {\n event.preventDefault()\n return false\n }\n event.dataTransfer.effectAllowed = 'move'\n\n // wrap in try catch to address IE's error when first param is 'text/plain'\n try {\n // setData is required for draggable to work in FireFox\n // the content has to be '' so dragging a node out of the tree won't open a new tab in FireFox\n event.dataTransfer.setData('text/plain', '')\n } catch {}\n dragState.value.draggingNode = treeNode\n ctx.emit('node-drag-start', treeNode.node, event)\n }\n\n const treeNodeDragOver = ({ event, treeNode }: DragOptions) => {\n const dropNode = treeNode\n const oldDropNode = dragState.value.dropNode\n if (oldDropNode && oldDropNode.node.id !== dropNode.node.id) {\n removeClass(oldDropNode.$el, ns.is('drop-inner'))\n }\n const draggingNode = dragState.value.draggingNode\n if (!draggingNode || !dropNode) return\n\n let dropPrev = true\n let dropInner = true\n let dropNext = true\n let userAllowDropInner = true\n if (isFunction(props.allowDrop)) {\n dropPrev = props.allowDrop(draggingNode.node, dropNode.node, 'prev')\n userAllowDropInner = dropInner = props.allowDrop(\n draggingNode.node,\n dropNode.node,\n 'inner'\n )\n dropNext = props.allowDrop(draggingNode.node, dropNode.node, 'next')\n }\n event.dataTransfer.dropEffect =\n dropInner || dropPrev || dropNext ? 'move' : 'none'\n if (\n (dropPrev || dropInner || dropNext) &&\n oldDropNode?.node.id !== dropNode.node.id\n ) {\n if (oldDropNode) {\n ctx.emit('node-drag-leave', draggingNode.node, oldDropNode.node, event)\n }\n ctx.emit('node-drag-enter', draggingNode.node, dropNode.node, event)\n }\n\n if (dropPrev || dropInner || dropNext) {\n dragState.value.dropNode = dropNode\n } else {\n // Reset dragState.value.dropNode to null when allowDrop is transfer from true to false.(For issue #14704)\n dragState.value.dropNode = null\n }\n\n if (dropNode.node.nextSibling === draggingNode.node) {\n dropNext = false\n }\n if (dropNode.node.previousSibling === draggingNode.node) {\n dropPrev = false\n }\n if (dropNode.node.contains(draggingNode.node, false)) {\n dropInner = false\n }\n if (\n draggingNode.node === dropNode.node ||\n draggingNode.node.contains(dropNode.node)\n ) {\n dropPrev = false\n dropInner = false\n dropNext = false\n }\n\n // find target node without children, just calc content node height\n const targetPosition = dropNode.$el\n .querySelector(`.${ns.be('node', 'content')}`)\n .getBoundingClientRect()\n const treePosition = el$.value.getBoundingClientRect()\n\n let dropType: NodeDropType\n const prevPercent = dropPrev ? (dropInner ? 0.25 : dropNext ? 0.45 : 1) : -1\n const nextPercent = dropNext ? (dropInner ? 0.75 : dropPrev ? 0.55 : 0) : 1\n\n let indicatorTop = -9999\n const distance = event.clientY - targetPosition.top\n if (distance < targetPosition.height * prevPercent) {\n dropType = 'before'\n } else if (distance > targetPosition.height * nextPercent) {\n dropType = 'after'\n } else if (dropInner) {\n dropType = 'inner'\n } else {\n dropType = 'none'\n }\n\n const iconPosition = dropNode.$el\n .querySelector(`.${ns.be('node', 'expand-icon')}`)\n .getBoundingClientRect()\n const dropIndicator = dropIndicator$.value\n if (dropType === 'before') {\n indicatorTop = iconPosition.top - treePosition.top\n } else if (dropType === 'after') {\n indicatorTop = iconPosition.bottom - treePosition.top\n }\n dropIndicator.style.top = `${indicatorTop}px`\n dropIndicator.style.left = `${iconPosition.right - treePosition.left}px`\n\n if (dropType === 'inner') {\n addClass(dropNode.$el, ns.is('drop-inner'))\n } else {\n removeClass(dropNode.$el, ns.is('drop-inner'))\n }\n\n dragState.value.showDropIndicator =\n dropType === 'before' || dropType === 'after'\n dragState.value.allowDrop =\n dragState.value.showDropIndicator || userAllowDropInner\n dragState.value.dropType = dropType\n ctx.emit('node-drag-over', draggingNode.node, dropNode.node, event)\n }\n\n const treeNodeDragEnd = (event: DragEvent) => {\n const { draggingNode, dropType, dropNode } = dragState.value\n event.preventDefault()\n\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1911486\n if (event.dataTransfer) {\n event.dataTransfer.dropEffect = 'move'\n }\n\n if (draggingNode && dropNode) {\n const draggingNodeCopy = { data: draggingNode.node.data }\n if (dropType !== 'none') {\n draggingNode.node.remove()\n }\n if (dropType === 'before') {\n dropNode.node.parent.insertBefore(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'after') {\n dropNode.node.parent.insertAfter(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'inner') {\n dropNode.node.insertChild(draggingNodeCopy)\n }\n if (dropType !== 'none') {\n store.value.registerNode(draggingNodeCopy)\n if (store.value.key) {\n //restore checkbox state after dragging\n draggingNode.node.eachNode((node) => {\n store.value.nodesMap[node.data[store.value.key]]?.setChecked(\n node.checked,\n !store.value.checkStrictly\n )\n })\n }\n }\n\n removeClass(dropNode.$el, ns.is('drop-inner'))\n\n ctx.emit(\n 'node-drag-end',\n draggingNode.node,\n dropNode.node,\n dropType,\n event\n )\n if (dropType !== 'none') {\n ctx.emit('node-drop', draggingNode.node, dropNode.node, dropType, event)\n }\n }\n if (draggingNode && !dropNode) {\n ctx.emit('node-drag-end', draggingNode.node, null, dropType, event)\n }\n\n dragState.value.showDropIndicator = false\n dragState.value.draggingNode = null\n dragState.value.dropNode = null\n dragState.value.allowDrop = true\n }\n\n provide(dragEventsKey, {\n treeNodeDragStart,\n treeNodeDragOver,\n treeNodeDragEnd,\n })\n\n return {\n dragState,\n }\n}\n"],"names":["useNamespace","ref","isFunction","removeClass","addClass","provide"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"useDragNode.js","sources":["../../../../../../../packages/components/tree/src/model/useDragNode.ts"],"sourcesContent":["import { provide, ref } from 'vue'\nimport { addClass, isFunction, removeClass } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { InjectionKey, Ref, SetupContext } from 'vue'\nimport type {\n AllowDragFunction,\n AllowDropFunction,\n FakeNode,\n NodeDropType,\n} from '../tree.type'\nimport type TreeStore from './tree-store'\nimport type Node from './node'\n\ninterface TreeNode {\n node: Node\n $el?: HTMLElement\n}\n\ninterface DragOptions {\n event: DragEvent\n treeNode: TreeNode\n}\n\ninterface Props {\n props: {\n allowDrag?: AllowDragFunction\n allowDrop?: AllowDropFunction\n }\n ctx: SetupContext<string[]>\n el$: Ref<HTMLElement | null>\n dropIndicator$: Ref<HTMLElement | null>\n store: Ref<TreeStore>\n}\n\nexport interface DragEvents {\n treeNodeDragStart: (options: DragOptions) => void\n treeNodeDragOver: (options: DragOptions) => void\n treeNodeDragEnd: (event: DragEvent) => void\n}\n\nexport const dragEventsKey: InjectionKey<DragEvents> = Symbol('dragEvents')\n\nexport function useDragNodeHandler({\n props,\n ctx,\n el$,\n dropIndicator$,\n store,\n}: Props) {\n const ns = useNamespace('tree')\n const dragState = ref<{\n allowDrop: boolean\n dropType: NodeDropType | null\n draggingNode: TreeNode | null\n showDropIndicator: boolean\n dropNode: TreeNode | null\n }>({\n showDropIndicator: false,\n draggingNode: null,\n dropNode: null,\n allowDrop: true,\n dropType: null,\n })\n\n const treeNodeDragStart = ({ event, treeNode }: DragOptions) => {\n if (!event.dataTransfer) return\n if (isFunction(props.allowDrag) && !props.allowDrag(treeNode.node)) {\n event.preventDefault()\n return false\n }\n event.dataTransfer.effectAllowed = 'move'\n\n // wrap in try catch to address IE's error when first param is 'text/plain'\n try {\n // setData is required for draggable to work in FireFox\n // the content has to be '' so dragging a node out of the tree won't open a new tab in FireFox\n event.dataTransfer.setData('text/plain', '')\n } catch {}\n dragState.value.draggingNode = treeNode\n ctx.emit('node-drag-start', treeNode.node, event)\n }\n\n const treeNodeDragOver = ({ event, treeNode }: DragOptions) => {\n if (!event.dataTransfer) return\n const dropNode = treeNode\n const oldDropNode = dragState.value.dropNode\n if (oldDropNode && oldDropNode.node.id !== dropNode.node.id) {\n removeClass(oldDropNode.$el!, ns.is('drop-inner'))\n }\n const draggingNode = dragState.value.draggingNode\n if (!draggingNode || !dropNode) return\n\n let dropPrev = true\n let dropInner = true\n let dropNext = true\n let userAllowDropInner = true\n if (isFunction(props.allowDrop)) {\n dropPrev = props.allowDrop(draggingNode.node, dropNode.node, 'prev')\n userAllowDropInner = dropInner = props.allowDrop(\n draggingNode.node,\n dropNode.node,\n 'inner'\n )\n dropNext = props.allowDrop(draggingNode.node, dropNode.node, 'next')\n }\n event.dataTransfer.dropEffect =\n dropInner || dropPrev || dropNext ? 'move' : 'none'\n if (\n (dropPrev || dropInner || dropNext) &&\n oldDropNode?.node.id !== dropNode.node.id\n ) {\n if (oldDropNode) {\n ctx.emit('node-drag-leave', draggingNode.node, oldDropNode.node, event)\n }\n ctx.emit('node-drag-enter', draggingNode.node, dropNode.node, event)\n }\n\n if (dropPrev || dropInner || dropNext) {\n dragState.value.dropNode = dropNode\n } else {\n // Reset dragState.value.dropNode to null when allowDrop is transfer from true to false.(For issue #14704)\n dragState.value.dropNode = null\n }\n\n if (dropNode.node.nextSibling === draggingNode.node) {\n dropNext = false\n }\n if (dropNode.node.previousSibling === draggingNode.node) {\n dropPrev = false\n }\n if (dropNode.node.contains(draggingNode.node, false)) {\n dropInner = false\n }\n if (\n draggingNode.node === dropNode.node ||\n draggingNode.node.contains(dropNode.node)\n ) {\n dropPrev = false\n dropInner = false\n dropNext = false\n }\n const dropEl = dropNode.$el!\n\n // find target node without children, just calc content node height\n const targetPosition = dropEl\n .querySelector(`.${ns.be('node', 'content')}`)!\n .getBoundingClientRect()\n const treePosition = el$.value!.getBoundingClientRect()\n\n let dropType: NodeDropType\n const prevPercent = dropPrev ? (dropInner ? 0.25 : dropNext ? 0.45 : 1) : -1\n const nextPercent = dropNext ? (dropInner ? 0.75 : dropPrev ? 0.55 : 0) : 1\n\n let indicatorTop = -9999\n const distance = event.clientY - targetPosition.top\n if (distance < targetPosition.height * prevPercent) {\n dropType = 'before'\n } else if (distance > targetPosition.height * nextPercent) {\n dropType = 'after'\n } else if (dropInner) {\n dropType = 'inner'\n } else {\n dropType = 'none'\n }\n\n const iconPosition = dropEl\n .querySelector(`.${ns.be('node', 'expand-icon')}`)!\n .getBoundingClientRect()\n const dropIndicator = dropIndicator$.value\n if (dropType === 'before') {\n indicatorTop = iconPosition.top - treePosition.top\n } else if (dropType === 'after') {\n indicatorTop = iconPosition.bottom - treePosition.top\n }\n dropIndicator!.style.top = `${indicatorTop}px`\n dropIndicator!.style.left = `${iconPosition.right - treePosition.left}px`\n\n if (dropType === 'inner') {\n addClass(dropEl, ns.is('drop-inner'))\n } else {\n removeClass(dropEl, ns.is('drop-inner'))\n }\n\n dragState.value.showDropIndicator =\n dropType === 'before' || dropType === 'after'\n dragState.value.allowDrop =\n dragState.value.showDropIndicator || userAllowDropInner\n dragState.value.dropType = dropType\n ctx.emit('node-drag-over', draggingNode.node, dropNode.node, event)\n }\n\n const treeNodeDragEnd = (event: DragEvent) => {\n const { draggingNode, dropType, dropNode } = dragState.value\n event.preventDefault()\n\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1911486\n if (event.dataTransfer) {\n event.dataTransfer.dropEffect = 'move'\n }\n\n if (draggingNode?.node.data && dropNode) {\n const draggingNodeCopy: FakeNode = { data: draggingNode.node.data }\n if (dropType !== 'none') {\n draggingNode.node.remove()\n }\n if (dropType === 'before') {\n dropNode.node.parent?.insertBefore(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'after') {\n dropNode.node.parent?.insertAfter(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'inner') {\n dropNode.node.insertChild(draggingNodeCopy)\n }\n if (dropType !== 'none') {\n store.value.registerNode(draggingNodeCopy as any)\n if (store.value.key) {\n //restore checkbox state after dragging\n draggingNode.node.eachNode((node) => {\n store.value.nodesMap[node.data[store.value.key]]?.setChecked(\n node.checked,\n !store.value.checkStrictly\n )\n })\n }\n }\n\n removeClass(dropNode.$el!, ns.is('drop-inner'))\n\n ctx.emit(\n 'node-drag-end',\n draggingNode.node,\n dropNode.node,\n dropType,\n event\n )\n if (dropType !== 'none') {\n ctx.emit('node-drop', draggingNode.node, dropNode.node, dropType, event)\n }\n }\n if (draggingNode && !dropNode) {\n ctx.emit('node-drag-end', draggingNode.node, null, dropType, event)\n }\n\n dragState.value.showDropIndicator = false\n dragState.value.draggingNode = null\n dragState.value.dropNode = null\n dragState.value.allowDrop = true\n }\n\n provide(dragEventsKey, {\n treeNodeDragStart,\n treeNodeDragOver,\n treeNodeDragEnd,\n })\n\n return {\n dragState,\n }\n}\n"],"names":["useNamespace","ref","isFunction","removeClass","addClass","provide"],"mappings":";;;;;;;;;AAGY,MAAC,aAAa,GAAG,MAAM,CAAC,YAAY,EAAE;AAC3C,SAAS,kBAAkB,CAAC;AACnC,EAAE,KAAK;AACP,EAAE,GAAG;AACL,EAAE,GAAG;AACL,EAAE,cAAc;AAChB,EAAE,KAAK;AACP,CAAC,EAAE;AACH,EAAE,MAAM,EAAE,GAAGA,kBAAY,CAAC,MAAM,CAAC,CAAC;AAClC,EAAE,MAAM,SAAS,GAAGC,OAAG,CAAC;AACxB,IAAI,iBAAiB,EAAE,KAAK;AAC5B,IAAI,YAAY,EAAE,IAAI;AACtB,IAAI,QAAQ,EAAE,IAAI;AAClB,IAAI,SAAS,EAAE,IAAI;AACnB,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,iBAAiB,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK;AACrD,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY;AAC3B,MAAM,OAAO;AACb,IAAI,IAAIC,iBAAU,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AACxE,MAAM,KAAK,CAAC,cAAc,EAAE,CAAC;AAC7B,MAAM,OAAO,KAAK,CAAC;AACnB,KAAK;AACL,IAAI,KAAK,CAAC,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC;AAC9C,IAAI,IAAI;AACR,MAAM,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACnD,KAAK,CAAC,OAAO,CAAC,EAAE;AAChB,KAAK;AACL,IAAI,SAAS,CAAC,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC;AAC5C,IAAI,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACtD,GAAG,CAAC;AACJ,EAAE,MAAM,gBAAgB,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK;AACpD,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY;AAC3B,MAAM,OAAO;AACb,IAAI,MAAM,QAAQ,GAAG,QAAQ,CAAC;AAC9B,IAAI,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC;AACjD,IAAI,IAAI,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE;AACjE,MAAMC,iBAAW,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;AACxD,KAAK;AACL,IAAI,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC;AACtD,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ;AAClC,MAAM,OAAO;AACb,IAAI,IAAI,QAAQ,GAAG,IAAI,CAAC;AACxB,IAAI,IAAI,SAAS,GAAG,IAAI,CAAC;AACzB,IAAI,IAAI,QAAQ,GAAG,IAAI,CAAC;AACxB,IAAI,IAAI,kBAAkB,GAAG,IAAI,CAAC;AAClC,IAAI,IAAID,iBAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;AACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3E,MAAM,kBAAkB,GAAG,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAClG,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3E,KAAK;AACL,IAAI,KAAK,CAAC,YAAY,CAAC,UAAU,GAAG,SAAS,IAAI,QAAQ,IAAI,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AACxF,IAAI,IAAI,CAAC,QAAQ,IAAI,SAAS,IAAI,QAAQ,KAAK,CAAC,WAAW,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE;AAC1H,MAAM,IAAI,WAAW,EAAE;AACvB,QAAQ,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAChF,OAAO;AACP,MAAM,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC3E,KAAK;AACL,IAAI,IAAI,QAAQ,IAAI,SAAS,IAAI,QAAQ,EAAE;AAC3C,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC1C,KAAK,MAAM;AACX,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;AACtC,KAAK;AACL,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,YAAY,CAAC,IAAI,EAAE;AACzD,MAAM,QAAQ,GAAG,KAAK,CAAC;AACvB,KAAK;AACL,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,eAAe,KAAK,YAAY,CAAC,IAAI,EAAE;AAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC;AACvB,KAAK;AACL,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;AAC1D,MAAM,SAAS,GAAG,KAAK,CAAC;AACxB,KAAK;AACL,IAAI,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AAC1F,MAAM,QAAQ,GAAG,KAAK,CAAC;AACvB,MAAM,SAAS,GAAG,KAAK,CAAC;AACxB,MAAM,QAAQ,GAAG,KAAK,CAAC;AACvB,KAAK;AACL,IAAI,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC;AAChC,IAAI,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC;AACxG,IAAI,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;AAC3D,IAAI,IAAI,QAAQ,CAAC;AACjB,IAAI,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/E,IAAI,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9E,IAAI,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC;AAC7B,IAAI,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC;AACxD,IAAI,IAAI,QAAQ,GAAG,cAAc,CAAC,MAAM,GAAG,WAAW,EAAE;AACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC;AAC1B,KAAK,MAAM,IAAI,QAAQ,GAAG,cAAc,CAAC,MAAM,GAAG,WAAW,EAAE;AAC/D,MAAM,QAAQ,GAAG,OAAO,CAAC;AACzB,KAAK,MAAM,IAAI,SAAS,EAAE;AAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC;AACzB,KAAK,MAAM;AACX,MAAM,QAAQ,GAAG,MAAM,CAAC;AACxB,KAAK;AACL,IAAI,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC;AAC1G,IAAI,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC;AAC/C,IAAI,IAAI,QAAQ,KAAK,QAAQ,EAAE;AAC/B,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC;AACzD,KAAK,MAAM,IAAI,QAAQ,KAAK,OAAO,EAAE;AACrC,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC;AAC5D,KAAK;AACL,IAAI,aAAa,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;AAClD,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC7E,IAAI,IAAI,QAAQ,KAAK,OAAO,EAAE;AAC9B,MAAME,cAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;AAC5C,KAAK,MAAM;AACX,MAAMD,iBAAW,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;AAC/C,KAAK;AACL,IAAI,SAAS,CAAC,KAAK,CAAC,iBAAiB,GAAG,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,OAAO,CAAC;AACtF,IAAI,SAAS,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,iBAAiB,IAAI,kBAAkB,CAAC;AACxF,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACxC,IAAI,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACxE,GAAG,CAAC;AACJ,EAAE,MAAM,eAAe,GAAG,CAAC,KAAK,KAAK;AACrC,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;AACf,IAAI,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC;AACjE,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;AAC3B,IAAI,IAAI,KAAK,CAAC,YAAY,EAAE;AAC5B,MAAM,KAAK,CAAC,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC;AAC7C,KAAK;AACL,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;AAC9E,MAAM,MAAM,gBAAgB,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAChE,MAAM,IAAI,QAAQ,KAAK,MAAM,EAAE;AAC/B,QAAQ,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;AACnC,OAAO;AACP,MAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE;AACjC,QAAQ,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;AACxG,OAAO,MAAM,IAAI,QAAQ,KAAK,OAAO,EAAE;AACvC,QAAQ,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;AACvG,OAAO,MAAM,IAAI,QAAQ,KAAK,OAAO,EAAE;AACvC,QAAQ,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;AACpD,OAAO;AACP,MAAM,IAAI,QAAQ,KAAK,MAAM,EAAE;AAC/B,QAAQ,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;AACnD,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE;AAC7B,UAAU,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,KAAK;AAC/C,YAAY,IAAI,GAAG,CAAC;AACpB,YAAY,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;AACjJ,WAAW,CAAC,CAAC;AACb,SAAS;AACT,OAAO;AACP,MAAMA,iBAAW,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;AACrD,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AACnF,MAAM,IAAI,QAAQ,KAAK,MAAM,EAAE;AAC/B,QAAQ,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AACjF,OAAO;AACP,KAAK;AACL,IAAI,IAAI,YAAY,IAAI,CAAC,QAAQ,EAAE;AACnC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC1E,KAAK;AACL,IAAI,SAAS,CAAC,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC;AAC9C,IAAI,SAAS,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;AACxC,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;AACpC,IAAI,SAAS,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;AACrC,GAAG,CAAC;AACJ,EAAEE,WAAO,CAAC,aAAa,EAAE;AACzB,IAAI,iBAAiB;AACrB,IAAI,gBAAgB;AACpB,IAAI,eAAe;AACnB,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,SAAS;AACb,GAAG,CAAC;AACJ;;;;;"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import type TreeStore from './tree-store';
|
2
2
|
import type { Ref } from 'vue';
|
3
3
|
interface UseKeydownOption {
|
4
|
-
el$: Ref<HTMLElement>;
|
4
|
+
el$: Ref<HTMLElement | null>;
|
5
5
|
}
|
6
6
|
export declare function useKeydown({ el$ }: UseKeydownOption, store: Ref<TreeStore>): void;
|
7
7
|
export {};
|
@@ -74,6 +74,8 @@ function useKeydown({ el$ }, store) {
|
|
74
74
|
core.useEventListener(el$, "keydown", handleKeydown);
|
75
75
|
const initTabIndex = () => {
|
76
76
|
var _a;
|
77
|
+
if (!el$.value)
|
78
|
+
return;
|
77
79
|
const treeItems = Array.from(el$.value.querySelectorAll(`.${ns.is("focusable")}[role=treeitem]`));
|
78
80
|
const checkboxItems = Array.from(el$.value.querySelectorAll("input[type=checkbox]"));
|
79
81
|
checkboxItems.forEach((checkbox) => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useKeydown.js","sources":["../../../../../../../packages/components/tree/src/model/useKeydown.ts"],"sourcesContent":["
|
1
|
+
{"version":3,"file":"useKeydown.js","sources":["../../../../../../../packages/components/tree/src/model/useKeydown.ts"],"sourcesContent":["import { onMounted, onUpdated } from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type TreeStore from './tree-store'\nimport type { Ref } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\n\ninterface UseKeydownOption {\n el$: Ref<HTMLElement | null>\n}\nexport function useKeydown({ el$ }: UseKeydownOption, store: Ref<TreeStore>) {\n const ns = useNamespace('tree')\n\n onMounted(() => {\n initTabIndex()\n })\n\n onUpdated(() => {\n const checkboxItems = Array.from(\n el$.value!.querySelectorAll('input[type=checkbox]')\n )\n checkboxItems.forEach((checkbox) => {\n checkbox.setAttribute('tabindex', '-1')\n })\n })\n\n const handleKeydown = (ev: KeyboardEvent): void => {\n const currentItem = ev.target as HTMLDivElement\n if (!currentItem.className.includes(ns.b('node'))) return\n const code = ev.code\n const treeItems: HTMLElement[] = Array.from(\n el$.value!.querySelectorAll(`.${ns.is('focusable')}[role=treeitem]`)\n )\n const currentIndex = treeItems.indexOf(currentItem)\n let nextIndex\n if ([EVENT_CODE.up, EVENT_CODE.down].includes(code)) {\n ev.preventDefault()\n if (code === EVENT_CODE.up) {\n nextIndex =\n currentIndex === -1\n ? 0\n : currentIndex !== 0\n ? currentIndex - 1\n : treeItems.length - 1\n const startIndex = nextIndex\n while (true) {\n if (store.value.getNode(treeItems[nextIndex].dataset.key!).canFocus)\n break\n nextIndex--\n if (nextIndex === startIndex) {\n nextIndex = -1\n break\n }\n if (nextIndex < 0) {\n nextIndex = treeItems.length - 1\n }\n }\n } else {\n nextIndex =\n currentIndex === -1\n ? 0\n : currentIndex < treeItems.length - 1\n ? currentIndex + 1\n : 0\n const startIndex = nextIndex\n while (true) {\n if (store.value.getNode(treeItems[nextIndex].dataset.key!).canFocus)\n break\n nextIndex++\n if (nextIndex === startIndex) {\n nextIndex = -1\n break\n }\n if (nextIndex >= treeItems.length) {\n nextIndex = 0\n }\n }\n }\n nextIndex !== -1 && treeItems[nextIndex].focus()\n }\n if ([EVENT_CODE.left, EVENT_CODE.right].includes(code)) {\n ev.preventDefault()\n currentItem.click()\n }\n const hasInput = currentItem.querySelector(\n '[type=\"checkbox\"]'\n ) as Nullable<HTMLInputElement>\n if (\n [EVENT_CODE.enter, EVENT_CODE.numpadEnter, EVENT_CODE.space].includes(\n code\n ) &&\n hasInput\n ) {\n ev.preventDefault()\n hasInput.click()\n }\n }\n\n useEventListener(el$, 'keydown', handleKeydown)\n\n const initTabIndex = (): void => {\n if (!el$.value) return\n const treeItems = Array.from(\n el$.value.querySelectorAll(`.${ns.is('focusable')}[role=treeitem]`)\n )\n const checkboxItems = Array.from(\n el$.value.querySelectorAll('input[type=checkbox]')\n )\n checkboxItems.forEach((checkbox) => {\n checkbox.setAttribute('tabindex', '-1')\n })\n const checkedItem = el$.value.querySelectorAll(\n `.${ns.is('checked')}[role=treeitem]`\n )\n if (checkedItem.length) {\n checkedItem[0].setAttribute('tabindex', '0')\n return\n }\n treeItems[0]?.setAttribute('tabindex', '0')\n }\n}\n"],"names":["useNamespace","onMounted","onUpdated","EVENT_CODE","useEventListener"],"mappings":"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"}
|
@@ -1,4 +1,9 @@
|
|
1
1
|
import type Node from '../model/node';
|
2
|
-
|
3
|
-
|
2
|
+
interface Props {
|
3
|
+
node?: Node;
|
4
|
+
accordion: boolean;
|
5
|
+
}
|
6
|
+
export declare function useNodeExpandEventBroadcast(props: Props): {
|
7
|
+
broadcastExpanded: (node?: Node) => void;
|
4
8
|
};
|
9
|
+
export {};
|
@@ -9,8 +9,9 @@ function useNodeExpandEventBroadcast(props) {
|
|
9
9
|
const parentNodeMap = vue.inject(tokens.TREE_NODE_MAP_INJECTION_KEY, null);
|
10
10
|
const currentNodeMap = {
|
11
11
|
treeNodeExpand: (node) => {
|
12
|
+
var _a;
|
12
13
|
if (props.node !== node) {
|
13
|
-
props.node.collapse();
|
14
|
+
(_a = props.node) == null ? void 0 : _a.collapse();
|
14
15
|
}
|
15
16
|
},
|
16
17
|
children: []
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useNodeExpandEventBroadcast.js","sources":["../../../../../../../packages/components/tree/src/model/useNodeExpandEventBroadcast.ts"],"sourcesContent":["
|
1
|
+
{"version":3,"file":"useNodeExpandEventBroadcast.js","sources":["../../../../../../../packages/components/tree/src/model/useNodeExpandEventBroadcast.ts"],"sourcesContent":["import { inject, provide } from 'vue'\nimport { TREE_NODE_MAP_INJECTION_KEY } from '../tokens'\n\nimport type Node from '../model/node'\n\ninterface NodeMap {\n treeNodeExpand(node?: Node): void\n children: NodeMap[]\n}\n\ninterface Props {\n node?: Node\n accordion: boolean\n}\n\nexport function useNodeExpandEventBroadcast(props: Props) {\n const parentNodeMap = inject(\n TREE_NODE_MAP_INJECTION_KEY,\n null\n ) as NodeMap | null\n const currentNodeMap: NodeMap = {\n treeNodeExpand: (node) => {\n if (props.node !== node) {\n props.node?.collapse()\n }\n },\n children: [],\n }\n\n if (parentNodeMap) {\n parentNodeMap.children.push(currentNodeMap)\n }\n\n provide(TREE_NODE_MAP_INJECTION_KEY, currentNodeMap)\n\n return {\n broadcastExpanded: (node?: Node): void => {\n if (!props.accordion) return\n for (const childNode of currentNodeMap.children) {\n childNode.treeNodeExpand(node)\n }\n },\n }\n}\n"],"names":["inject","TREE_NODE_MAP_INJECTION_KEY","provide"],"mappings":";;;;;;;AAEO,SAAS,2BAA2B,CAAC,KAAK,EAAE;AACnD,EAAE,MAAM,aAAa,GAAGA,UAAM,CAACC,kCAA2B,EAAE,IAAI,CAAC,CAAC;AAClE,EAAE,MAAM,cAAc,GAAG;AACzB,IAAI,cAAc,EAAE,CAAC,IAAI,KAAK;AAC9B,MAAM,IAAI,EAAE,CAAC;AACb,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE;AAC/B,QAAQ,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC3D,OAAO;AACP,KAAK;AACL,IAAI,QAAQ,EAAE,EAAE;AAChB,GAAG,CAAC;AACJ,EAAE,IAAI,aAAa,EAAE;AACrB,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAChD,GAAG;AACH,EAAEC,WAAO,CAACD,kCAA2B,EAAE,cAAc,CAAC,CAAC;AACvD,EAAE,OAAO;AACT,IAAI,iBAAiB,EAAE,CAAC,IAAI,KAAK;AACjC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS;AAC1B,QAAQ,OAAO;AACf,MAAM,KAAK,MAAM,SAAS,IAAI,cAAc,CAAC,QAAQ,EAAE;AACvD,QAAQ,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;AACvC,OAAO;AACP,KAAK;AACL,GAAG,CAAC;AACJ;;;;"}
|
@@ -2,6 +2,6 @@ import type { SetupContext } from 'vue';
|
|
2
2
|
import type Node from './node';
|
3
3
|
import type { RootTreeType, TreeKey, TreeNodeData } from '../tree.type';
|
4
4
|
export declare const NODE_KEY = "$treeNodeId";
|
5
|
-
export declare const markNodeData: (node: Node, data: TreeNodeData) => void;
|
6
|
-
export declare const getNodeKey: (key: TreeKey, data: TreeNodeData) => any;
|
5
|
+
export declare const markNodeData: (node: Node, data: TreeNodeData | null) => void;
|
6
|
+
export declare const getNodeKey: (key: TreeKey | undefined, data: TreeNodeData) => any;
|
7
7
|
export declare const handleCurrentChange: (store: RootTreeType["store"], emit: SetupContext["emit"], setCurrent: () => void) => void;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"util.js","sources":["../../../../../../../packages/components/tree/src/model/util.ts"],"sourcesContent":["import type { SetupContext } from 'vue'\nimport type Node from './node'\nimport type { RootTreeType, TreeKey, TreeNodeData } from '../tree.type'\n\nexport const NODE_KEY = '$treeNodeId'\n\nexport const markNodeData = function (node: Node
|
1
|
+
{"version":3,"file":"util.js","sources":["../../../../../../../packages/components/tree/src/model/util.ts"],"sourcesContent":["import type { SetupContext } from 'vue'\nimport type Node from './node'\nimport type { RootTreeType, TreeKey, TreeNodeData } from '../tree.type'\n\nexport const NODE_KEY = '$treeNodeId'\n\nexport const markNodeData = function (\n node: Node,\n data: TreeNodeData | null\n): void {\n if (!data || data[NODE_KEY]) return\n Object.defineProperty(data, NODE_KEY, {\n value: node.id,\n enumerable: false,\n configurable: false,\n writable: false,\n })\n}\n\nexport const getNodeKey = (key: TreeKey | undefined, data: TreeNodeData) =>\n data?.[key || NODE_KEY]\n\nexport const handleCurrentChange = (\n store: RootTreeType['store'],\n emit: SetupContext['emit'],\n setCurrent: () => void\n) => {\n const preCurrentNode = store.value.currentNode\n setCurrent()\n const currentNode = store.value.currentNode\n if (preCurrentNode === currentNode) return\n\n emit('current-change', currentNode ? currentNode.data : null, currentNode)\n}\n"],"names":[],"mappings":";;;;AAAY,MAAC,QAAQ,GAAG,cAAc;AAC1B,MAAC,YAAY,GAAG,SAAS,IAAI,EAAE,IAAI,EAAE;AACjD,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC;AAC7B,IAAI,OAAO;AACX,EAAE,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE;AACxC,IAAI,KAAK,EAAE,IAAI,CAAC,EAAE;AAClB,IAAI,UAAU,EAAE,KAAK;AACrB,IAAI,YAAY,EAAE,KAAK;AACvB,IAAI,QAAQ,EAAE,KAAK;AACnB,GAAG,CAAC,CAAC;AACL,EAAE;AACU,MAAC,UAAU,GAAG,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,QAAQ,EAAE;AAC3E,MAAC,mBAAmB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,KAAK;AAChE,EAAE,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;AACjD,EAAE,UAAU,EAAE,CAAC;AACf,EAAE,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;AAC9C,EAAE,IAAI,cAAc,KAAK,WAAW;AACpC,IAAI,OAAO;AACX,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,GAAG,WAAW,CAAC,IAAI,GAAG,IAAI,EAAE,WAAW,CAAC,CAAC;AAC7E;;;;;;;"}
|
@@ -12,6 +12,7 @@ var useDragNode = require('./model/useDragNode.js');
|
|
12
12
|
var useKeydown = require('./model/useKeydown.js');
|
13
13
|
var tokens = require('./tokens.js');
|
14
14
|
var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
|
15
|
+
var runtime = require('../../../utils/vue/props/runtime.js');
|
15
16
|
var icon = require('../../../utils/vue/icon.js');
|
16
17
|
var index = require('../../../hooks/use-locale/index.js');
|
17
18
|
var index$1 = require('../../../hooks/use-namespace/index.js');
|
@@ -22,7 +23,7 @@ const _sfc_main = vue.defineComponent({
|
|
22
23
|
components: { ElTreeNode: treeNode["default"] },
|
23
24
|
props: {
|
24
25
|
data: {
|
25
|
-
type: Array,
|
26
|
+
type: runtime.definePropType(Array),
|
26
27
|
default: () => []
|
27
28
|
},
|
28
29
|
emptyText: {
|
@@ -55,7 +56,9 @@ const _sfc_main = vue.defineComponent({
|
|
55
56
|
defaultCheckedKeys: Array,
|
56
57
|
defaultExpandedKeys: Array,
|
57
58
|
currentNodeKey: [String, Number],
|
58
|
-
renderContent:
|
59
|
+
renderContent: {
|
60
|
+
type: runtime.definePropType(Function)
|
61
|
+
},
|
59
62
|
showCheckbox: {
|
60
63
|
type: Boolean,
|
61
64
|
default: false
|
@@ -64,8 +67,12 @@ const _sfc_main = vue.defineComponent({
|
|
64
67
|
type: Boolean,
|
65
68
|
default: false
|
66
69
|
},
|
67
|
-
allowDrag:
|
68
|
-
|
70
|
+
allowDrag: {
|
71
|
+
type: runtime.definePropType(Function)
|
72
|
+
},
|
73
|
+
allowDrop: {
|
74
|
+
type: runtime.definePropType(Function)
|
75
|
+
},
|
69
76
|
props: {
|
70
77
|
type: Object,
|
71
78
|
default: () => ({
|
@@ -144,13 +151,13 @@ const _sfc_main = vue.defineComponent({
|
|
144
151
|
return (!childNodes || childNodes.length === 0 || childNodes.every(({ visible }) => !visible)) && !hasFilteredOptions;
|
145
152
|
});
|
146
153
|
vue.watch(() => props.currentNodeKey, (newVal) => {
|
147
|
-
store.value.setCurrentNodeKey(newVal);
|
154
|
+
store.value.setCurrentNodeKey(newVal != null ? newVal : null);
|
148
155
|
});
|
149
156
|
vue.watch(() => props.defaultCheckedKeys, (newVal) => {
|
150
|
-
store.value.setDefaultCheckedKey(newVal);
|
157
|
+
store.value.setDefaultCheckedKey(newVal != null ? newVal : []);
|
151
158
|
});
|
152
159
|
vue.watch(() => props.defaultExpandedKeys, (newVal) => {
|
153
|
-
store.value.setDefaultExpandedKeys(newVal);
|
160
|
+
store.value.setDefaultExpandedKeys(newVal != null ? newVal : []);
|
154
161
|
});
|
155
162
|
vue.watch(() => props.data, (newVal) => {
|
156
163
|
store.value.setData(newVal);
|
@@ -228,7 +235,7 @@ const _sfc_main = vue.defineComponent({
|
|
228
235
|
throw new Error("[Tree] nodeKey is required in setCurrentKey");
|
229
236
|
util.handleCurrentChange(store, ctx.emit, () => {
|
230
237
|
broadcastExpanded();
|
231
|
-
store.value.setCurrentNodeKey(key, shouldAutoExpandParent);
|
238
|
+
store.value.setCurrentNodeKey(key != null ? key : null, shouldAutoExpandParent);
|
232
239
|
});
|
233
240
|
};
|
234
241
|
const getNode = (data) => {
|