@element-plus/nightly 0.0.20220219 → 0.0.20220220
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/dist/index.full.js +2 -2
- package/dist/index.full.min.js +1 -1
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +1 -1
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +2 -2
- 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.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/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/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/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/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/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/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/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-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/src/index.mjs.map +1 -1
- package/es/components/avatar/src/avatar2.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
- package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
- package/es/components/button/src/button-group2.mjs.map +1 -1
- package/es/components/calendar/src/calendar2.mjs.map +1 -1
- package/es/components/calendar/src/date-table2.mjs.map +1 -1
- package/es/components/card/src/card2.mjs.map +1 -1
- package/es/components/carousel/src/item.mjs.map +1 -1
- package/es/components/carousel/src/main.mjs.map +1 -1
- package/es/components/cascader/src/index.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.mjs.map +1 -1
- package/es/components/cascader-panel/src/menu.mjs.map +1 -1
- package/es/components/cascader-panel/src/node2.mjs.map +1 -1
- package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox-button.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox.mjs.map +1 -1
- package/es/components/collapse/src/collapse-item.mjs.map +1 -1
- package/es/components/collapse/src/collapse.mjs.map +1 -1
- package/es/components/collapse-transition/src/collapse-transition.mjs.map +1 -1
- package/es/components/collection/src/collection-item.mjs.map +1 -1
- package/es/components/collection/src/collection2.mjs.map +1 -1
- package/es/components/color-picker/src/components/alpha-slider.mjs.map +1 -1
- package/es/components/color-picker/src/components/hue-slider.mjs.map +1 -1
- package/es/components/color-picker/src/components/predefine.mjs.map +1 -1
- package/es/components/color-picker/src/components/sv-panel.mjs.map +1 -1
- package/es/components/color-picker/src/index.mjs.map +1 -1
- package/es/components/container/src/aside.mjs.map +1 -1
- package/es/components/container/src/container.mjs.map +1 -1
- package/es/components/container/src/footer.mjs.map +1 -1
- package/es/components/container/src/header.mjs.map +1 -1
- package/es/components/container/src/main.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-month-table.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-year-table.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs.map +1 -1
- package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
- package/es/components/descriptions/src/index.mjs.map +1 -1
- package/es/components/dialog/src/dialog2.mjs.map +1 -1
- package/es/components/divider/src/divider2.mjs.map +1 -1
- package/es/components/drawer/src/drawer2.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown-item-impl.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown-item.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown-menu.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown2.mjs.map +1 -1
- package/es/components/empty/src/empty2.mjs.map +1 -1
- package/es/components/empty/src/img-empty.mjs.map +1 -1
- package/es/components/focus-trap/src/focus-trap.mjs.map +1 -1
- package/es/components/form/src/form-item.mjs.map +1 -1
- package/es/components/form/src/form.mjs.map +1 -1
- package/es/components/image/src/image2.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
- package/es/components/input/src/input2.mjs.map +1 -1
- package/es/components/input-number/src/input-number2.mjs.map +1 -1
- package/es/components/link/src/link2.mjs.map +1 -1
- package/es/components/menu/src/menu-collapse-transition.mjs.map +1 -1
- package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
- package/es/components/menu/src/menu-item2.mjs.map +1 -1
- package/es/components/message/src/message2.mjs.map +1 -1
- package/es/components/message-box/src/index.mjs.map +1 -1
- package/es/components/notification/src/notification2.mjs.map +1 -1
- package/es/components/page-header/src/page-header2.mjs.map +1 -1
- package/es/components/pagination/src/components/jumper.mjs.map +1 -1
- package/es/components/pagination/src/components/next.mjs.map +1 -1
- package/es/components/pagination/src/components/pager.mjs.map +1 -1
- package/es/components/pagination/src/components/prev.mjs.map +1 -1
- package/es/components/pagination/src/components/sizes.mjs.map +1 -1
- package/es/components/pagination/src/components/total.mjs.map +1 -1
- package/es/components/popconfirm/src/popconfirm2.mjs.map +1 -1
- package/es/components/popover/src/index.mjs.map +1 -1
- package/es/components/popper/src/arrow.mjs.map +1 -1
- package/es/components/popper/src/content.mjs.map +1 -1
- package/es/components/popper/src/popper2.mjs.map +1 -1
- package/es/components/popper/src/trigger.mjs.map +1 -1
- package/es/components/progress/src/progress2.mjs.map +1 -1
- package/es/components/radio/src/radio-button2.mjs.map +1 -1
- package/es/components/radio/src/radio-group2.mjs.map +1 -1
- package/es/components/radio/src/radio2.mjs.map +1 -1
- package/es/components/rate/src/rate2.mjs.map +1 -1
- package/es/components/result/src/result2.mjs.map +1 -1
- package/es/components/roving-focus-group/src/roving-focus-group-impl.mjs.map +1 -1
- 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.map +1 -1
- package/es/components/scrollbar/src/bar2.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar2.mjs.map +1 -1
- package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
- package/es/components/select/src/option-group.mjs.map +1 -1
- package/es/components/select/src/option.mjs.map +1 -1
- package/es/components/select/src/select-dropdown.mjs.map +1 -1
- package/es/components/select/src/select.mjs.map +1 -1
- package/es/components/select-v2/src/group-item.mjs.map +1 -1
- package/es/components/select-v2/src/option-item.mjs.map +1 -1
- package/es/components/select-v2/src/select.mjs.map +1 -1
- package/es/components/skeleton/src/image-placeholder.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
- package/es/components/slider/src/button.mjs.map +1 -1
- package/es/components/slider/src/index.mjs.map +1 -1
- package/es/components/space/src/item.mjs.map +1 -1
- package/es/components/steps/src/index.mjs.map +1 -1
- package/es/components/steps/src/item.mjs.map +1 -1
- package/es/components/switch/src/switch2.mjs.map +1 -1
- package/es/components/table/src/filter-panel.mjs.map +1 -1
- package/es/components/table/src/table.mjs.map +1 -1
- package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
- package/es/components/tabs/src/tab-pane2.mjs.map +1 -1
- package/es/components/tag/src/tag2.mjs.map +1 -1
- package/es/components/teleport/src/teleport2.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker-com/panel-time-range.mjs.map +1 -1
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
- package/es/components/tooltip/src/content.mjs.map +1 -1
- package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
- package/es/components/tooltip/src/trigger.mjs.map +1 -1
- package/es/components/transfer/src/index.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
- package/es/components/tree/src/tree-node.mjs.map +1 -1
- package/es/components/tree/src/tree.mjs.map +1 -1
- package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
- package/es/components/tree-v2/src/tree.mjs.map +1 -1
- package/es/components/upload/src/upload-dragger.mjs.map +1 -1
- package/es/components/upload/src/upload-list.mjs.map +1 -1
- package/es/components/upload/src/upload.mjs.map +1 -1
- package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/autocomplete/src/index.js.map +1 -1
- package/lib/components/avatar/src/avatar2.js.map +1 -1
- package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
- package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
- package/lib/components/button/src/button-group2.js.map +1 -1
- package/lib/components/calendar/src/calendar2.js.map +1 -1
- package/lib/components/calendar/src/date-table2.js.map +1 -1
- package/lib/components/card/src/card2.js.map +1 -1
- package/lib/components/carousel/src/item.js.map +1 -1
- package/lib/components/carousel/src/main.js.map +1 -1
- package/lib/components/cascader/src/index.js.map +1 -1
- package/lib/components/cascader-panel/src/index.js.map +1 -1
- package/lib/components/cascader-panel/src/menu.js.map +1 -1
- package/lib/components/cascader-panel/src/node2.js.map +1 -1
- package/lib/components/check-tag/src/check-tag2.js.map +1 -1
- package/lib/components/checkbox/src/checkbox-button.js.map +1 -1
- package/lib/components/checkbox/src/checkbox.js.map +1 -1
- package/lib/components/collapse/src/collapse-item.js.map +1 -1
- package/lib/components/collapse/src/collapse.js.map +1 -1
- package/lib/components/collapse-transition/src/collapse-transition.js.map +1 -1
- package/lib/components/collection/src/collection-item.js.map +1 -1
- package/lib/components/collection/src/collection2.js.map +1 -1
- package/lib/components/color-picker/src/components/alpha-slider.js.map +1 -1
- package/lib/components/color-picker/src/components/hue-slider.js.map +1 -1
- package/lib/components/color-picker/src/components/predefine.js.map +1 -1
- package/lib/components/color-picker/src/components/sv-panel.js.map +1 -1
- package/lib/components/color-picker/src/index.js.map +1 -1
- package/lib/components/container/src/aside.js.map +1 -1
- package/lib/components/container/src/container.js.map +1 -1
- package/lib/components/container/src/footer.js.map +1 -1
- package/lib/components/container/src/header.js.map +1 -1
- package/lib/components/container/src/main.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-month-table.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-year-table.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.js.map +1 -1
- package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
- package/lib/components/descriptions/src/index.js.map +1 -1
- package/lib/components/dialog/src/dialog2.js.map +1 -1
- package/lib/components/divider/src/divider2.js.map +1 -1
- package/lib/components/drawer/src/drawer2.js.map +1 -1
- package/lib/components/dropdown/src/dropdown-item-impl.js.map +1 -1
- package/lib/components/dropdown/src/dropdown-item.js.map +1 -1
- package/lib/components/dropdown/src/dropdown-menu.js.map +1 -1
- package/lib/components/dropdown/src/dropdown2.js.map +1 -1
- package/lib/components/empty/src/empty2.js.map +1 -1
- package/lib/components/empty/src/img-empty.js.map +1 -1
- package/lib/components/focus-trap/src/focus-trap.js.map +1 -1
- package/lib/components/form/src/form-item.js.map +1 -1
- package/lib/components/form/src/form.js.map +1 -1
- package/lib/components/image/src/image2.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
- package/lib/components/input/src/input2.js.map +1 -1
- package/lib/components/input-number/src/input-number2.js.map +1 -1
- package/lib/components/link/src/link2.js.map +1 -1
- package/lib/components/menu/src/menu-collapse-transition.js.map +1 -1
- package/lib/components/menu/src/menu-item-group2.js.map +1 -1
- package/lib/components/menu/src/menu-item2.js.map +1 -1
- package/lib/components/message/src/message2.js.map +1 -1
- package/lib/components/message-box/src/index.js.map +1 -1
- package/lib/components/notification/src/notification2.js.map +1 -1
- package/lib/components/page-header/src/page-header2.js.map +1 -1
- package/lib/components/pagination/src/components/jumper.js.map +1 -1
- package/lib/components/pagination/src/components/next.js.map +1 -1
- package/lib/components/pagination/src/components/pager.js.map +1 -1
- package/lib/components/pagination/src/components/prev.js.map +1 -1
- package/lib/components/pagination/src/components/sizes.js.map +1 -1
- package/lib/components/pagination/src/components/total.js.map +1 -1
- package/lib/components/popconfirm/src/popconfirm2.js.map +1 -1
- package/lib/components/popover/src/index.js.map +1 -1
- package/lib/components/popper/src/arrow.js.map +1 -1
- package/lib/components/popper/src/content.js.map +1 -1
- package/lib/components/popper/src/popper2.js.map +1 -1
- package/lib/components/popper/src/trigger.js.map +1 -1
- package/lib/components/progress/src/progress2.js.map +1 -1
- package/lib/components/radio/src/radio-button2.js.map +1 -1
- package/lib/components/radio/src/radio-group2.js.map +1 -1
- package/lib/components/radio/src/radio2.js.map +1 -1
- package/lib/components/rate/src/rate2.js.map +1 -1
- package/lib/components/result/src/result2.js.map +1 -1
- package/lib/components/roving-focus-group/src/roving-focus-group-impl.js.map +1 -1
- 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.map +1 -1
- package/lib/components/scrollbar/src/bar2.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar2.js.map +1 -1
- package/lib/components/scrollbar/src/thumb2.js.map +1 -1
- package/lib/components/select/src/option-group.js.map +1 -1
- package/lib/components/select/src/option.js.map +1 -1
- package/lib/components/select/src/select-dropdown.js.map +1 -1
- package/lib/components/select/src/select.js.map +1 -1
- package/lib/components/select-v2/src/group-item.js.map +1 -1
- package/lib/components/select-v2/src/option-item.js.map +1 -1
- package/lib/components/select-v2/src/select.js.map +1 -1
- package/lib/components/skeleton/src/image-placeholder.js.map +1 -1
- package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
- package/lib/components/skeleton/src/skeleton2.js.map +1 -1
- package/lib/components/slider/src/button.js.map +1 -1
- package/lib/components/slider/src/index.js.map +1 -1
- package/lib/components/space/src/item.js.map +1 -1
- package/lib/components/steps/src/index.js.map +1 -1
- package/lib/components/steps/src/item.js.map +1 -1
- package/lib/components/switch/src/switch2.js.map +1 -1
- package/lib/components/table/src/filter-panel.js.map +1 -1
- package/lib/components/table/src/table.js.map +1 -1
- package/lib/components/tabs/src/tab-bar2.js.map +1 -1
- package/lib/components/tabs/src/tab-pane2.js.map +1 -1
- package/lib/components/tag/src/tag2.js.map +1 -1
- package/lib/components/teleport/src/teleport2.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.js.map +1 -1
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.js.map +1 -1
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/timeline/src/timeline-item2.js.map +1 -1
- package/lib/components/tooltip/src/content.js.map +1 -1
- package/lib/components/tooltip/src/tooltip2.js.map +1 -1
- package/lib/components/tooltip/src/trigger.js.map +1 -1
- package/lib/components/transfer/src/index.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel.js.map +1 -1
- package/lib/components/tree/src/tree-node.js.map +1 -1
- package/lib/components/tree/src/tree.js.map +1 -1
- package/lib/components/tree-v2/src/tree-node.js.map +1 -1
- package/lib/components/tree-v2/src/tree.js.map +1 -1
- package/lib/components/upload/src/upload-dragger.js.map +1 -1
- package/lib/components/upload/src/upload-list.js.map +1 -1
- package/lib/components/upload/src/upload.js.map +1 -1
- package/lib/components/visual-hidden/src/visual-hidden.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/web-types.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../packages/components/transfer/src/index.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <transfer-panel\n ref=\"leftPanel\"\n :data=\"sourceData\"\n :option-render=\"optionRender\"\n :placeholder=\"panelFilterPlaceholder\"\n :title=\"leftPanelTitle\"\n :filterable=\"filterable\"\n :format=\"format\"\n :filter-method=\"filterMethod\"\n :default-checked=\"leftDefaultChecked\"\n :props=\"props\"\n @checked-change=\"onSourceCheckedChange\"\n >\n <slot name=\"left-footer\"></slot>\n </transfer-panel>\n <div :class=\"ns.e('buttons')\">\n <el-button\n type=\"primary\"\n :class=\"[ns.e('button'), ns.is('with-texts', hasButtonTexts)]\"\n :disabled=\"rightChecked.length === 0\"\n @click=\"addToLeft\"\n >\n <el-icon><arrow-left /></el-icon>\n <span v-if=\"buttonTexts[0] !== undefined\">{{ buttonTexts[0] }}</span>\n </el-button>\n <el-button\n type=\"primary\"\n :class=\"[ns.e('button'), ns.is('with-texts', hasButtonTexts)]\"\n :disabled=\"leftChecked.length === 0\"\n @click=\"addToRight\"\n >\n <span v-if=\"buttonTexts[1] !== undefined\">{{ buttonTexts[1] }}</span>\n <el-icon><arrow-right /></el-icon>\n </el-button>\n </div>\n <transfer-panel\n ref=\"rightPanel\"\n :data=\"targetData\"\n :option-render=\"optionRender\"\n :placeholder=\"panelFilterPlaceholder\"\n :filterable=\"filterable\"\n :format=\"format\"\n :filter-method=\"filterMethod\"\n :title=\"rightPanelTitle\"\n :default-checked=\"rightDefaultChecked\"\n :props=\"props\"\n @checked-change=\"onTargetCheckedChange\"\n >\n <slot name=\"right-footer\"></slot>\n </transfer-panel>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n h,\n reactive,\n ref,\n toRefs,\n watch,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport ElIcon from '@element-plus/components/icon'\nimport { elFormItemKey } from '@element-plus/tokens'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport TransferPanel from './transfer-panel.vue'\nimport { useComputedData } from './useComputedData'\nimport {\n useCheckedChange,\n LEFT_CHECK_CHANGE_EVENT,\n RIGHT_CHECK_CHANGE_EVENT,\n} from './useCheckedChange'\nimport { useMove } from './useMove'\nimport { CHANGE_EVENT } from './transfer'\n\nimport type { PropType, VNode } from 'vue'\nimport type { ElFormItemContext } from '@element-plus/tokens'\nimport type { DataItem, Format, Key, Props, TargetOrder } from './transfer'\n\ntype TransferType = InstanceType<typeof TransferPanel>\n\nexport default defineComponent({\n name: 'ElTransfer',\n\n components: {\n TransferPanel,\n ElButton,\n ElIcon,\n ArrowLeft,\n ArrowRight,\n },\n\n props: {\n data: {\n type: Array as PropType<DataItem[]>,\n default: () => [],\n },\n titles: {\n type: Array as PropType<any> as PropType<[string, string]>,\n default: () => [],\n },\n buttonTexts: {\n type: Array as PropType<any> as PropType<[string, string]>,\n default: () => [],\n },\n filterPlaceholder: {\n type: String,\n default: '',\n },\n filterMethod: Function as PropType<\n (query: string, item: DataItem) => boolean\n >,\n leftDefaultChecked: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n rightDefaultChecked: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n renderContent: Function as PropType<(h, option) => VNode>,\n modelValue: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n format: {\n type: Object as PropType<Format>,\n default: () => ({}),\n },\n filterable: {\n type: Boolean,\n default: false,\n },\n props: {\n type: Object as PropType<Props>,\n default: () => ({\n label: 'label',\n key: 'key',\n disabled: 'disabled',\n }),\n },\n targetOrder: {\n type: String as PropType<TargetOrder>,\n default: 'original',\n validator: (val: string) => {\n return ['original', 'push', 'unshift'].includes(val)\n },\n },\n },\n\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n LEFT_CHECK_CHANGE_EVENT,\n RIGHT_CHECK_CHANGE_EVENT,\n ],\n\n setup(props, { emit, slots }) {\n const { t } = useLocale()\n const ns = useNamespace('transfer')\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n\n const checkedState = reactive({\n leftChecked: [],\n rightChecked: [],\n })\n\n const { propsKey, sourceData, targetData } = useComputedData(props)\n\n const { onSourceCheckedChange, onTargetCheckedChange } = useCheckedChange(\n checkedState,\n emit\n )\n\n const { addToLeft, addToRight } = useMove(\n props,\n checkedState,\n propsKey,\n emit\n )\n\n const leftPanel = ref<TransferType>()\n const rightPanel = ref<TransferType>()\n\n const clearQuery = (which: 'left' | 'right') => {\n switch (which) {\n case 'left':\n leftPanel.value!.query = ''\n break\n case 'right':\n rightPanel.value!.query = ''\n break\n }\n }\n\n const hasButtonTexts = computed(() => props.buttonTexts.length === 2)\n\n const leftPanelTitle = computed(\n () => props.titles[0] || t('el.transfer.titles.0')\n )\n\n const rightPanelTitle = computed(\n () => props.titles[1] || t('el.transfer.titles.1')\n )\n\n const panelFilterPlaceholder = computed(\n () => props.filterPlaceholder || t('el.transfer.filterPlaceholder')\n )\n\n watch(\n () => props.modelValue,\n () => {\n elFormItem.validate?.('change')\n }\n )\n\n const optionRender = computed(() => (option) => {\n if (props.renderContent) return props.renderContent(h, option)\n\n if (slots.default) return slots.default({ option })\n\n return h('span', option[props.props.label] || option[props.props.key])\n })\n\n return {\n ns,\n sourceData,\n targetData,\n onSourceCheckedChange,\n onTargetCheckedChange,\n addToLeft,\n addToRight,\n\n ...toRefs(checkedState),\n\n hasButtonTexts,\n leftPanelTitle,\n rightPanelTitle,\n panelFilterPlaceholder,\n clearQuery,\n leftPanel,\n rightPanel,\n\n optionRender,\n }\n },\n})\n</script>\n"],"names":["defineComponent","TransferPanel","ElButton","ElIcon","ArrowLeft","ArrowRight","UPDATE_MODEL_EVENT","CHANGE_EVENT","LEFT_CHECK_CHANGE_EVENT","RIGHT_CHECK_CHANGE_EVENT","useLocale","useNamespace","inject","elFormItemKey","reactive","useComputedData","useCheckedChange","useMove","ref","computed"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAwFA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,mBACVC;AAAA,cACAC;AAAA,YACAC;AAAA,eACAC;AAAA,gBACAC;AAAA;AAAA,EAGF,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,cAAc;AAAA,IAGd,oBAAoB;AAAA,MAClB,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,eAAe;AAAA,IACf,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAO;AAAA,IAElB,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAO,QACd,OAAO;AAAA,QACP,KAAK;AAAA,QACL,UAAU;AAAA;AAAA;AAAA,IAGd,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,QAAgB;AAC1B,eAAO,CAAC,YAAY,QAAQ,WAAW,SAAS;AAAA;AAAA;AAAA;AAAA,EAKtD,OAAO;AAAA,IACLC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA;AAAA,EAGF,MAAM,OAAO,EAAE,MAAM,SAAS;AAC5B,UAAM,EAAE,MAAMC;AACd,UAAM,KAAKC,qBAAa;AACxB,UAAM,aAAaC,WAAOC,oBAAe;AAEzC,UAAM,eAAeC,aAAS;AAAA,MAC5B,aAAa;AAAA,MACb,cAAc;AAAA;AAGhB,UAAM,EAAE,UAAU,YAAY,eAAeC,gCAAgB;AAE7D,UAAM,EAAE,uBAAuB,0BAA0BC,kCACvD,cACA;AAGF,UAAM,EAAE,WAAW,eAAeC,gBAChC,OACA,cACA,UACA;AAGF,UAAM,YAAYC;AAClB,UAAM,aAAaA;AAEnB,UAAM,aAAa,CAAC,UAA4B;AAC9C,cAAQ;AAAA,aACD;AACH,oBAAU,MAAO,QAAQ;AACzB;AAAA,aACG;AACH,qBAAW,MAAO,QAAQ;AAC1B;AAAA;AAAA;AAIN,UAAM,iBAAiBC,aAAS,MAAM,MAAM,YAAY,WAAW;AAEnE,UAAM,iBAAiBA,aACrB,MAAM,MAAM,OAAO,MAAM,EAAE;AAG7B,UAAM,kBAAkBA,aACtB,MAAM,MAAM,OAAO,MAAM,EAAE;AAG7B,UAAM,yBAAyBA,aAC7B,MAAM,MAAM,qBAAqB,EAAE;AAGrC,cACE,MAAM,MAAM,YACZ,MAAM;AACJ;AAAsB;AAI1B;AACE,UAAI;AAAqB,eAAO;AAEhC;AAAmB,eAAO;AAE1B,eAAS;AAAwD;AAGnE;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,gBAEU;AAAA,MAEV;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA;AAAA;AAAA;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../packages/components/transfer/src/index.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <transfer-panel\n ref=\"leftPanel\"\n :data=\"sourceData\"\n :option-render=\"optionRender\"\n :placeholder=\"panelFilterPlaceholder\"\n :title=\"leftPanelTitle\"\n :filterable=\"filterable\"\n :format=\"format\"\n :filter-method=\"filterMethod\"\n :default-checked=\"leftDefaultChecked\"\n :props=\"props\"\n @checked-change=\"onSourceCheckedChange\"\n >\n <slot name=\"left-footer\"></slot>\n </transfer-panel>\n <div :class=\"ns.e('buttons')\">\n <el-button\n type=\"primary\"\n :class=\"[ns.e('button'), ns.is('with-texts', hasButtonTexts)]\"\n :disabled=\"rightChecked.length === 0\"\n @click=\"addToLeft\"\n >\n <el-icon><arrow-left /></el-icon>\n <span v-if=\"buttonTexts[0] !== undefined\">{{ buttonTexts[0] }}</span>\n </el-button>\n <el-button\n type=\"primary\"\n :class=\"[ns.e('button'), ns.is('with-texts', hasButtonTexts)]\"\n :disabled=\"leftChecked.length === 0\"\n @click=\"addToRight\"\n >\n <span v-if=\"buttonTexts[1] !== undefined\">{{ buttonTexts[1] }}</span>\n <el-icon><arrow-right /></el-icon>\n </el-button>\n </div>\n <transfer-panel\n ref=\"rightPanel\"\n :data=\"targetData\"\n :option-render=\"optionRender\"\n :placeholder=\"panelFilterPlaceholder\"\n :filterable=\"filterable\"\n :format=\"format\"\n :filter-method=\"filterMethod\"\n :title=\"rightPanelTitle\"\n :default-checked=\"rightDefaultChecked\"\n :props=\"props\"\n @checked-change=\"onTargetCheckedChange\"\n >\n <slot name=\"right-footer\"></slot>\n </transfer-panel>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n h,\n reactive,\n ref,\n toRefs,\n watch,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport ElIcon from '@element-plus/components/icon'\nimport { elFormItemKey } from '@element-plus/tokens'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { ArrowLeft, ArrowRight } from '@element-plus/icons-vue'\nimport TransferPanel from './transfer-panel.vue'\nimport { useComputedData } from './useComputedData'\nimport {\n useCheckedChange,\n LEFT_CHECK_CHANGE_EVENT,\n RIGHT_CHECK_CHANGE_EVENT,\n} from './useCheckedChange'\nimport { useMove } from './useMove'\nimport { CHANGE_EVENT } from './transfer'\n\nimport type { PropType, VNode } from 'vue'\nimport type { ElFormItemContext } from '@element-plus/tokens'\nimport type { DataItem, Format, Key, Props, TargetOrder } from './transfer'\n\ntype TransferType = InstanceType<typeof TransferPanel>\n\nexport default defineComponent({\n name: 'ElTransfer',\n\n components: {\n TransferPanel,\n ElButton,\n ElIcon,\n ArrowLeft,\n ArrowRight,\n },\n\n props: {\n data: {\n type: Array as PropType<DataItem[]>,\n default: () => [],\n },\n titles: {\n type: Array as PropType<any> as PropType<[string, string]>,\n default: () => [],\n },\n buttonTexts: {\n type: Array as PropType<any> as PropType<[string, string]>,\n default: () => [],\n },\n filterPlaceholder: {\n type: String,\n default: '',\n },\n filterMethod: Function as PropType<\n (query: string, item: DataItem) => boolean\n >,\n leftDefaultChecked: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n rightDefaultChecked: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n renderContent: Function as PropType<(h, option) => VNode>,\n modelValue: {\n type: Array as PropType<Key[]>,\n default: () => [],\n },\n format: {\n type: Object as PropType<Format>,\n default: () => ({}),\n },\n filterable: {\n type: Boolean,\n default: false,\n },\n props: {\n type: Object as PropType<Props>,\n default: () => ({\n label: 'label',\n key: 'key',\n disabled: 'disabled',\n }),\n },\n targetOrder: {\n type: String as PropType<TargetOrder>,\n default: 'original',\n validator: (val: string) => {\n return ['original', 'push', 'unshift'].includes(val)\n },\n },\n },\n\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n LEFT_CHECK_CHANGE_EVENT,\n RIGHT_CHECK_CHANGE_EVENT,\n ],\n\n setup(props, { emit, slots }) {\n const { t } = useLocale()\n const ns = useNamespace('transfer')\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n\n const checkedState = reactive({\n leftChecked: [],\n rightChecked: [],\n })\n\n const { propsKey, sourceData, targetData } = useComputedData(props)\n\n const { onSourceCheckedChange, onTargetCheckedChange } = useCheckedChange(\n checkedState,\n emit\n )\n\n const { addToLeft, addToRight } = useMove(\n props,\n checkedState,\n propsKey,\n emit\n )\n\n const leftPanel = ref<TransferType>()\n const rightPanel = ref<TransferType>()\n\n const clearQuery = (which: 'left' | 'right') => {\n switch (which) {\n case 'left':\n leftPanel.value!.query = ''\n break\n case 'right':\n rightPanel.value!.query = ''\n break\n }\n }\n\n const hasButtonTexts = computed(() => props.buttonTexts.length === 2)\n\n const leftPanelTitle = computed(\n () => props.titles[0] || t('el.transfer.titles.0')\n )\n\n const rightPanelTitle = computed(\n () => props.titles[1] || t('el.transfer.titles.1')\n )\n\n const panelFilterPlaceholder = computed(\n () => props.filterPlaceholder || t('el.transfer.filterPlaceholder')\n )\n\n watch(\n () => props.modelValue,\n () => {\n elFormItem.validate?.('change')\n }\n )\n\n const optionRender = computed(() => (option) => {\n if (props.renderContent) return props.renderContent(h, option)\n\n if (slots.default) return slots.default({ option })\n\n return h('span', option[props.props.label] || option[props.props.key])\n })\n\n return {\n ns,\n sourceData,\n targetData,\n onSourceCheckedChange,\n onTargetCheckedChange,\n addToLeft,\n addToRight,\n\n ...toRefs(checkedState),\n\n hasButtonTexts,\n leftPanelTitle,\n rightPanelTitle,\n panelFilterPlaceholder,\n clearQuery,\n leftPanel,\n rightPanel,\n\n optionRender,\n }\n },\n})\n</script>\n"],"names":["defineComponent","TransferPanel","ElButton","ElIcon","ArrowLeft","ArrowRight","UPDATE_MODEL_EVENT","CHANGE_EVENT","LEFT_CHECK_CHANGE_EVENT","RIGHT_CHECK_CHANGE_EVENT","useLocale","useNamespace","inject","elFormItemKey","reactive","useComputedData","useCheckedChange","useMove","ref","computed"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAwFA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,mBACVC;AAAA,cACAC;AAAA,YACAC;AAAA,eACAC;AAAA,gBACAC;AAAA;AAAA,EAGF,OAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,cAAc;AAAA,IAGd,oBAAoB;AAAA,MAClB,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,eAAe;AAAA,IACf,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,MAAM;AAAA;AAAA,IAEjB,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAO;AAAA,IAElB,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAO,QACd,OAAO;AAAA,QACP,KAAK;AAAA,QACL,UAAU;AAAA;AAAA;AAAA,IAGd,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,QAAgB;AAC1B,eAAO,CAAC,YAAY,QAAQ,WAAW,SAAS;AAAA;AAAA;AAAA;AAAA,EAKtD,OAAO;AAAA,IACLC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA;AAAA,EAGF,MAAM,OAAO,EAAE,MAAM,SAAS;AAC5B,UAAM,EAAE,MAAMC;AACd,UAAM,KAAKC,qBAAa;AACxB,UAAM,aAAaC,WAAOC,oBAAe;AAEzC,UAAM,eAAeC,aAAS;AAAA,MAC5B,aAAa;AAAA,MACb,cAAc;AAAA;AAGhB,UAAM,EAAE,UAAU,YAAY,eAAeC,gCAAgB;AAE7D,UAAM,EAAE,uBAAuB,0BAA0BC,kCACvD,cACA;AAGF,UAAM,EAAE,WAAW,eAAeC,gBAChC,OACA,cACA,UACA;AAGF,UAAM,YAAYC;AAClB,UAAM,aAAaA;AAEnB,UAAM,aAAa,CAAC,UAA4B;AAC9C,cAAQ;AAAA,aACD;AACH,oBAAU,MAAO,QAAQ;AACzB;AAAA,aACG;AACH,qBAAW,MAAO,QAAQ;AAC1B;AAAA;AAAA;AAIN,UAAM,iBAAiBC,aAAS,MAAM,MAAM,YAAY,WAAW;AAEnE,UAAM,iBAAiBA,aACrB,MAAM,MAAM,OAAO,MAAM,EAAE;AAG7B,UAAM,kBAAkBA,aACtB,MAAM,MAAM,OAAO,MAAM,EAAE;AAG7B,UAAM,yBAAyBA,aAC7B,MAAM,MAAM,qBAAqB,EAAE;AAGrC,cACE,MAAM,MAAM,YACZ,MAAM;AACJ;AAAsB;AAI1B;AACE,UAAI;AAAqB,eAAO;AAEhC;AAAmB,eAAO;AAE1B,eAAS;AAAwD;AAGnE;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,gBAEU;AAAA,MAEV;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA;AAAA;AAAA;;;;;;;;;;AAtME;AAnDU;;AAeG;AAbX,MACH;AAAM,MACN;AAAe,MACf;AAAa,MACb;AAAO,MACP,YAAY;AAAA,MACZ;AAAQ,MACR;AAAe,MACf;AAAiB,MACjB;AAAO,MACP,iBAAgB;AAAA;;AAEe;AAAA;AAAA;;;AAqB5B,gCAnBO;AAAI;;AASH;AAPL,QACJ;AAA4C,QAC5C,+BAAuB;AAAM,QAC7B;AAAO;;AAEyB;AAAA;AAAV;AAAA;AAAA;;;;;;;AAWb;AAPL,QACJ;AAA4C,QAC5C;AAA4B,QAC5B;AAAO;;AAE6D;UACrE;AAAkC;AAAV;AAAA;AAAA;;;;;;;AAiBX;AAbX,MACH;AAAM,MACN;AAAe,MACf;AAAa,MACb;AAAY,MACZ;AAAQ,MACR;AAAe,MACf;AAAO,MACP;AAAiB,MACjB;AAAO,MACP,iBAAgB;AAAA;;AAEgB;AAAA;AAAA;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer-panel.js","sources":["../../../../../../packages/components/transfer/src/transfer-panel.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b('panel')\">\n <p :class=\"ns.be('panel', 'header')\">\n <el-checkbox\n v-model=\"allChecked\"\n :indeterminate=\"isIndeterminate\"\n @change=\"handleAllCheckedChange\"\n >\n {{ title }}\n <span>{{ checkedSummary }}</span>\n </el-checkbox>\n </p>\n\n <div :class=\"[ns.be('panel', 'body'), ns.is('with-footer', hasFooter)]\">\n <el-input\n v-if=\"filterable\"\n v-model=\"query\"\n :class=\"ns.be('panel', 'filter')\"\n size=\"default\"\n :placeholder=\"placeholder\"\n :prefix-icon=\"SearchIcon\"\n clearable\n @mouseenter=\"inputHover = true\"\n @mouseleave=\"inputHover = false\"\n >\n </el-input>\n <el-checkbox-group\n v-show=\"!hasNoMatch && data.length > 0\"\n v-model=\"checked\"\n :class=\"[ns.is('filterable', filterable), ns.be('panel', 'list')]\"\n >\n <el-checkbox\n v-for=\"item in filteredData\"\n :key=\"item[keyProp]\"\n :class=\"ns.be('panel', 'item')\"\n :label=\"item[keyProp]\"\n :disabled=\"item[disabledProp]\"\n >\n <option-content :option=\"optionRender(item)\" />\n </el-checkbox>\n </el-checkbox-group>\n <p\n v-show=\"hasNoMatch || data.length === 0\"\n :class=\"ns.be('panel', 'empty')\"\n >\n {{ hasNoMatch ? t('el.transfer.noMatch') : t('el.transfer.noData') }}\n </p>\n </div>\n <p v-if=\"hasFooter\" :class=\"ns.be('panel', 'footer')\">\n <slot></slot>\n </p>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, reactive, toRefs } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCheckbox, ElCheckboxGroup } from '@element-plus/components/checkbox'\nimport ElInput from '@element-plus/components/input'\nimport { Search } from '@element-plus/icons-vue'\nimport { useCheck, useCheckProps, CHECKED_CHANGE_EVENT } from './useCheck'\n\nexport default defineComponent({\n name: 'ElTransferPanel',\n\n components: {\n ElCheckboxGroup,\n ElCheckbox,\n ElInput,\n OptionContent: ({ option }) => option,\n },\n\n props: useCheckProps,\n\n emits: [CHECKED_CHANGE_EVENT],\n\n setup(props, { slots }) {\n const { t } = useLocale()\n const ns = useNamespace('transfer')\n\n const panelState = reactive({\n checked: [],\n allChecked: false,\n query: '',\n inputHover: false,\n checkChangeByUser: true,\n })\n\n const {\n labelProp,\n keyProp,\n disabledProp,\n filteredData,\n checkedSummary,\n isIndeterminate,\n handleAllCheckedChange,\n } = useCheck(props, panelState)\n\n const hasNoMatch = computed(() => {\n return panelState.query.length > 0 && filteredData.value.length === 0\n })\n\n const hasFooter = computed(() => !!slots.default()[0].children.length)\n\n const { checked, allChecked, query, inputHover, checkChangeByUser } =\n toRefs(panelState)\n\n return {\n ns,\n labelProp,\n keyProp,\n disabledProp,\n filteredData,\n checkedSummary,\n isIndeterminate,\n handleAllCheckedChange,\n\n checked,\n allChecked,\n query,\n inputHover,\n checkChangeByUser,\n\n hasNoMatch,\n SearchIcon: Search,\n hasFooter,\n\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElCheckboxGroup","ElCheckbox","ElInput","useCheckProps","CHECKED_CHANGE_EVENT","useLocale","useNamespace","reactive","useCheck","computed","toRefs","Search","
|
|
1
|
+
{"version":3,"file":"transfer-panel.js","sources":["../../../../../../packages/components/transfer/src/transfer-panel.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b('panel')\">\n <p :class=\"ns.be('panel', 'header')\">\n <el-checkbox\n v-model=\"allChecked\"\n :indeterminate=\"isIndeterminate\"\n @change=\"handleAllCheckedChange\"\n >\n {{ title }}\n <span>{{ checkedSummary }}</span>\n </el-checkbox>\n </p>\n\n <div :class=\"[ns.be('panel', 'body'), ns.is('with-footer', hasFooter)]\">\n <el-input\n v-if=\"filterable\"\n v-model=\"query\"\n :class=\"ns.be('panel', 'filter')\"\n size=\"default\"\n :placeholder=\"placeholder\"\n :prefix-icon=\"SearchIcon\"\n clearable\n @mouseenter=\"inputHover = true\"\n @mouseleave=\"inputHover = false\"\n >\n </el-input>\n <el-checkbox-group\n v-show=\"!hasNoMatch && data.length > 0\"\n v-model=\"checked\"\n :class=\"[ns.is('filterable', filterable), ns.be('panel', 'list')]\"\n >\n <el-checkbox\n v-for=\"item in filteredData\"\n :key=\"item[keyProp]\"\n :class=\"ns.be('panel', 'item')\"\n :label=\"item[keyProp]\"\n :disabled=\"item[disabledProp]\"\n >\n <option-content :option=\"optionRender(item)\" />\n </el-checkbox>\n </el-checkbox-group>\n <p\n v-show=\"hasNoMatch || data.length === 0\"\n :class=\"ns.be('panel', 'empty')\"\n >\n {{ hasNoMatch ? t('el.transfer.noMatch') : t('el.transfer.noData') }}\n </p>\n </div>\n <p v-if=\"hasFooter\" :class=\"ns.be('panel', 'footer')\">\n <slot></slot>\n </p>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, reactive, toRefs } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { ElCheckbox, ElCheckboxGroup } from '@element-plus/components/checkbox'\nimport ElInput from '@element-plus/components/input'\nimport { Search } from '@element-plus/icons-vue'\nimport { useCheck, useCheckProps, CHECKED_CHANGE_EVENT } from './useCheck'\n\nexport default defineComponent({\n name: 'ElTransferPanel',\n\n components: {\n ElCheckboxGroup,\n ElCheckbox,\n ElInput,\n OptionContent: ({ option }) => option,\n },\n\n props: useCheckProps,\n\n emits: [CHECKED_CHANGE_EVENT],\n\n setup(props, { slots }) {\n const { t } = useLocale()\n const ns = useNamespace('transfer')\n\n const panelState = reactive({\n checked: [],\n allChecked: false,\n query: '',\n inputHover: false,\n checkChangeByUser: true,\n })\n\n const {\n labelProp,\n keyProp,\n disabledProp,\n filteredData,\n checkedSummary,\n isIndeterminate,\n handleAllCheckedChange,\n } = useCheck(props, panelState)\n\n const hasNoMatch = computed(() => {\n return panelState.query.length > 0 && filteredData.value.length === 0\n })\n\n const hasFooter = computed(() => !!slots.default()[0].children.length)\n\n const { checked, allChecked, query, inputHover, checkChangeByUser } =\n toRefs(panelState)\n\n return {\n ns,\n labelProp,\n keyProp,\n disabledProp,\n filteredData,\n checkedSummary,\n isIndeterminate,\n handleAllCheckedChange,\n\n checked,\n allChecked,\n query,\n inputHover,\n checkChangeByUser,\n\n hasNoMatch,\n SearchIcon: Search,\n hasFooter,\n\n t,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElCheckboxGroup","ElCheckbox","ElInput","useCheckProps","CHECKED_CHANGE_EVENT","useLocale","useNamespace","reactive","useCheck","computed","toRefs","Search","_createElementBlock","_normalizeClass","_createElementVNode","_createVNode","_createBlock","_Fragment","_renderSlot"],"mappings":";;;;;;;;;;;;;;AA8DA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,qBACVC;AAAA,gBACAC;AAAA,aACAC;AAAA,IACA,eAAe,CAAC,EAAE,aAAa;AAAA;AAAA,EAGjC,OAAOC;AAAA,EAEP,OAAO,CAACC;AAAA,EAER,MAAM,OAAO,EAAE,SAAS;AACtB,UAAM,EAAE,MAAMC;AACd,UAAM,KAAKC,qBAAa;AAExB,UAAM,aAAaC,aAAS;AAAA,MAC1B,SAAS;AAAA,MACT,YAAY;AAAA,MACZ,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,mBAAmB;AAAA;AAGrB,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACEC,kBAAS,OAAO;AAEpB,UAAM,aAAaC,aAAS,MAAM;AAChC,aAAO,WAAW,MAAM,SAAS,KAAK,aAAa,MAAM,WAAW;AAAA;AAGtE,UAAM,YAAYA,aAAS,MAAM,CAAC,CAAC,MAAM,UAAU,GAAG,SAAS;AAE/D,UAAM,EAAE,SAAS,YAAY,OAAO,YAAY,sBAC9CC,WAAO;AAET,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA,YAAYC;AAAA,MACZ;AAAA,MAEA;AAAA;AAAA;AAAA;;;;;;0BA9HJC,uBAkDM;AAAA,IAlDA,OAAKC,mBAAE,QAAG,EAAC;AAAA;IACfC,uBASI;AAAA,MATA,OAAKD,mBAAE,QAAG,GAAE;AAAA;MACdE,gBAOc;AAAA,oBANH;AAAA,uFAAU;AAAA,QAClB,eAAe;AAAA,QACf,UAAQ;AAAA;6BAET,MAAW;AAAA,kDAAR,cAAQ,KACX;AAAA,iCAAiC,kCAAxB,sBAAc;AAAA;AAAA;;;IAI3BD,uBAkCM;AAAA,MAlCA,OAAKD,oBAAG,QAAG,GAAE,kBAAmB,QAAG,GAAE,eAAgB;AAAA;MAEjD,oCADRG,gBAWW;AAAA;oBATA;AAAA,kFAAK;AAAA,QACb,OAAKH,mBAAE,QAAG,GAAE;AAAA,QACb,MAAK;AAAA,QACJ,aAAa;AAAA,QACb,eAAa;AAAA,QACd;AAAA,QACC,cAAU,sCAAE,kBAAU;AAAA,QACtB,cAAU,sCAAE,kBAAU;AAAA;yBAGzBE,gBAcoB;AAAA,oBAZT;AAAA,oFAAO;AAAA,QACf,OAAKF,oBAAG,QAAG,GAAE,cAAe,kBAAa,QAAG,GAAE;AAAA;6BAG7C,MAA4B;AAAA,gCAD9BD,uBAQcK,mCAPG,mBAAY,CAApB,SAAI;oCADbD,gBAQc;AAAA,cANX,KAAK,KAAK;AAAA,cACV,OAAKH,mBAAE,QAAG,GAAE;AAAA,cACZ,OAAO,KAAK;AAAA,cACZ,UAAU,KAAK;AAAA;mCAEhB,MAA+C;AAAA,gBAA/CE,gBAA+C;AAAA,kBAA9B,QAAQ,kBAAa;AAAA;;;;;;;;qBAX/B,mBAAc,UAAK,SAAM;AAAA;AAAA,yBAcpCD,uBAKI;AAAA,QAHD,OAAKD,mBAAE,QAAG,GAAE;AAAA,6BAEV,kBAAa,OAAC,yBAA0B,OAAC;AAAA,oBAHpC,mBAAc,UAAK,WAAM;AAAA;AAAA;IAM5B,mCAATD,uBAEI;AAAA;MAFiB,OAAKC,mBAAE,QAAG,GAAE;AAAA;MAC/BK,eAAa;AAAA;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-node.js","sources":["../../../../../../packages/components/tree/src/tree-node.vue"],"sourcesContent":["<template>\n <div\n v-show=\"node.visible\"\n ref=\"node$\"\n :class=\"[\n ns.b('node'),\n ns.is('expanded', expanded),\n ns.is('current', node.isCurrent),\n ns.is('hidden', !node.visible),\n ns.is('focusable', !node.disabled),\n ns.is('checked', !node.disabled && node.checked),\n getNodeClass(node),\n ]\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"node.disabled\"\n :aria-checked=\"node.checked\"\n :draggable=\"tree.props.draggable\"\n :data-key=\"getNodeKey(node)\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n @dragstart.stop=\"handleDragStart\"\n @dragover.stop=\"handleDragOver\"\n @dragend.stop=\"handleDragEnd\"\n @drop.stop=\"handleDrop\"\n >\n <div\n :class=\"ns.be('node', 'content')\"\n :style=\"{ paddingLeft: (node.level - 1) * tree.props.indent + 'px' }\"\n >\n <el-icon\n v-if=\"tree.props.icon || CaretRight\"\n :class=\"[\n ns.be('node', 'expand-icon'),\n ns.is('leaf', node.isLeaf),\n {\n expanded: !node.isLeaf && expanded,\n },\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"tree.props.icon || CaretRight\"></component>\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"node.checked\"\n :indeterminate=\"node.indeterminate\"\n :disabled=\"!!node.disabled\"\n @click.stop\n @change=\"handleCheckChange\"\n />\n <el-icon\n v-if=\"node.loading\"\n :class=\"[ns.be('node', 'loading-icon'), ns.is('loading')]\"\n >\n <loading />\n </el-icon>\n <node-content :node=\"node\" :render-content=\"renderContent\" />\n </div>\n <el-collapse-transition>\n <div\n v-if=\"!renderAfterExpand || childNodeRendered\"\n v-show=\"expanded\"\n :class=\"ns.be('node', 'children')\"\n role=\"group\"\n :aria-expanded=\"expanded\"\n >\n <el-tree-node\n v-for=\"child in node.childNodes\"\n :key=\"getNodeKey(child)\"\n :render-content=\"renderContent\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :node=\"child\"\n :accordion=\"accordion\"\n :props=\"props\"\n @node-expand=\"handleChildNodeExpand\"\n />\n </div>\n </el-collapse-transition>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n getCurrentInstance,\n ref,\n watch,\n nextTick,\n inject,\n provide,\n} from 'vue'\nimport { isString, isFunction } from '@vue/shared'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CaretRight, Loading } from '@element-plus/icons-vue'\nimport { debugWarn } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport NodeContent from './tree-node-content.vue'\nimport { getNodeKey as getNodeKeyUtil } from './model/util'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { dragEventsKey } from './model/useDragNode'\nimport Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type { TreeOptionProps, TreeNodeData, RootTreeType } from './tree.type'\n\nexport default defineComponent({\n name: 'ElTreeNode',\n components: {\n ElCollapseTransition,\n ElCheckbox,\n NodeContent,\n ElIcon,\n Loading,\n },\n props: {\n node: {\n type: Node,\n default: () => ({}),\n },\n props: {\n type: Object as PropType<TreeOptionProps>,\n default: () => ({}),\n },\n accordion: Boolean,\n renderContent: Function,\n renderAfterExpand: Boolean,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['node-expand'],\n setup(props, ctx) {\n const ns = useNamespace('tree')\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n const tree = inject<RootTreeType>('RootTree')\n const expanded = ref(false)\n const childNodeRendered = ref(false)\n const oldChecked = ref<boolean>(null)\n const oldIndeterminate = ref<boolean>(null)\n const node$ = ref<Nullable<HTMLElement>>(null)\n const dragEvents = inject(dragEventsKey)\n const instance = getCurrentInstance()\n\n provide('NodeInstance', instance)\n if (!tree) {\n debugWarn('Tree', \"Can not find node's tree.\")\n }\n\n if (props.node.expanded) {\n expanded.value = true\n childNodeRendered.value = true\n }\n\n const childrenKey = tree.props['children'] || 'children'\n watch(\n () => {\n const children = props.node.data[childrenKey]\n return children && [...children]\n },\n () => {\n props.node.updateChildren()\n }\n )\n\n watch(\n () => props.node.indeterminate,\n (val) => {\n handleSelectChange(props.node.checked, val)\n }\n )\n\n watch(\n () => props.node.checked,\n (val) => {\n handleSelectChange(val, props.node.indeterminate)\n }\n )\n\n watch(\n () => props.node.expanded,\n (val) => {\n nextTick(() => (expanded.value = val))\n if (val) {\n childNodeRendered.value = true\n }\n }\n )\n\n const getNodeKey = (node: Node): any => {\n return getNodeKeyUtil(tree.props.nodeKey, node.data)\n }\n\n const getNodeClass = (node: Node) => {\n const nodeClassFunc = props.props.class\n if (!nodeClassFunc) {\n return {}\n }\n let className\n if (isFunction(nodeClassFunc)) {\n const { data } = node\n className = nodeClassFunc(data, node)\n } else {\n className = nodeClassFunc\n }\n\n if (isString(className)) {\n return { [className]: true }\n } else {\n return className\n }\n }\n\n const handleSelectChange = (checked: boolean, indeterminate: boolean) => {\n if (\n oldChecked.value !== checked ||\n oldIndeterminate.value !== indeterminate\n ) {\n tree.ctx.emit('check-change', props.node.data, checked, indeterminate)\n }\n oldChecked.value = checked\n oldIndeterminate.value = indeterminate\n }\n\n const handleClick = (e: MouseEvent) => {\n const store = tree.store.value\n store.setCurrentNode(props.node)\n tree.ctx.emit(\n 'current-change',\n store.currentNode ? store.currentNode.data : null,\n store.currentNode\n )\n tree.currentNode.value = props.node\n\n if (tree.props.expandOnClickNode) {\n handleExpandIconClick()\n }\n\n if (tree.props.checkOnClickNode && !props.node.disabled) {\n handleCheckChange(null, {\n target: { checked: !props.node.checked },\n })\n }\n tree.ctx.emit('node-click', props.node.data, props.node, instance, e)\n }\n\n const handleContextMenu = (event: Event) => {\n if (tree.instance.vnode.props['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree.ctx.emit(\n 'node-contextmenu',\n event,\n props.node.data,\n props.node,\n instance\n )\n }\n\n const handleExpandIconClick = () => {\n if (props.node.isLeaf) return\n if (expanded.value) {\n tree.ctx.emit('node-collapse', props.node.data, props.node, instance)\n props.node.collapse()\n } else {\n props.node.expand()\n ctx.emit('node-expand', props.node.data, props.node, instance)\n }\n }\n\n const handleCheckChange = (value, ev) => {\n props.node.setChecked(ev.target.checked, !tree.props.checkStrictly)\n nextTick(() => {\n const store = tree.store.value\n tree.ctx.emit('check', props.node.data, {\n checkedNodes: store.getCheckedNodes(),\n checkedKeys: store.getCheckedKeys(),\n halfCheckedNodes: store.getHalfCheckedNodes(),\n halfCheckedKeys: store.getHalfCheckedKeys(),\n })\n })\n }\n\n const handleChildNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n tree.ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const handleDragStart = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragStart({ event, treeNode: props })\n }\n\n const handleDragOver = (event: DragEvent) => {\n event.preventDefault()\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragOver({\n event,\n treeNode: { $el: node$.value, node: props.node },\n })\n }\n\n const handleDrop = (event: DragEvent) => {\n event.preventDefault()\n }\n\n const handleDragEnd = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragEnd(event)\n }\n\n return {\n ns,\n node$,\n tree,\n expanded,\n childNodeRendered,\n oldChecked,\n oldIndeterminate,\n getNodeKey,\n getNodeClass,\n handleSelectChange,\n handleClick,\n handleContextMenu,\n handleExpandIconClick,\n handleCheckChange,\n handleChildNodeExpand,\n handleDragStart,\n handleDragOver,\n handleDrop,\n handleDragEnd,\n CaretRight,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElCollapseTransition","ElCheckbox","NodeContent","ElIcon","Loading","Node","useNamespace","useNodeExpandEventBroadcast","inject","ref","dragEventsKey","getCurrentInstance","getNodeKeyUtil","isFunction","isString","CaretRight","_withDirectives","_normalizeClass","_createCommentVNode","_withModifiers","_withCtx","_Fragment","_openBlock","_createBlock"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tree-node.js","sources":["../../../../../../packages/components/tree/src/tree-node.vue"],"sourcesContent":["<template>\n <div\n v-show=\"node.visible\"\n ref=\"node$\"\n :class=\"[\n ns.b('node'),\n ns.is('expanded', expanded),\n ns.is('current', node.isCurrent),\n ns.is('hidden', !node.visible),\n ns.is('focusable', !node.disabled),\n ns.is('checked', !node.disabled && node.checked),\n getNodeClass(node),\n ]\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"node.disabled\"\n :aria-checked=\"node.checked\"\n :draggable=\"tree.props.draggable\"\n :data-key=\"getNodeKey(node)\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n @dragstart.stop=\"handleDragStart\"\n @dragover.stop=\"handleDragOver\"\n @dragend.stop=\"handleDragEnd\"\n @drop.stop=\"handleDrop\"\n >\n <div\n :class=\"ns.be('node', 'content')\"\n :style=\"{ paddingLeft: (node.level - 1) * tree.props.indent + 'px' }\"\n >\n <el-icon\n v-if=\"tree.props.icon || CaretRight\"\n :class=\"[\n ns.be('node', 'expand-icon'),\n ns.is('leaf', node.isLeaf),\n {\n expanded: !node.isLeaf && expanded,\n },\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"tree.props.icon || CaretRight\"></component>\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"node.checked\"\n :indeterminate=\"node.indeterminate\"\n :disabled=\"!!node.disabled\"\n @click.stop\n @change=\"handleCheckChange\"\n />\n <el-icon\n v-if=\"node.loading\"\n :class=\"[ns.be('node', 'loading-icon'), ns.is('loading')]\"\n >\n <loading />\n </el-icon>\n <node-content :node=\"node\" :render-content=\"renderContent\" />\n </div>\n <el-collapse-transition>\n <div\n v-if=\"!renderAfterExpand || childNodeRendered\"\n v-show=\"expanded\"\n :class=\"ns.be('node', 'children')\"\n role=\"group\"\n :aria-expanded=\"expanded\"\n >\n <el-tree-node\n v-for=\"child in node.childNodes\"\n :key=\"getNodeKey(child)\"\n :render-content=\"renderContent\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :node=\"child\"\n :accordion=\"accordion\"\n :props=\"props\"\n @node-expand=\"handleChildNodeExpand\"\n />\n </div>\n </el-collapse-transition>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n getCurrentInstance,\n ref,\n watch,\n nextTick,\n inject,\n provide,\n} from 'vue'\nimport { isString, isFunction } from '@vue/shared'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CaretRight, Loading } from '@element-plus/icons-vue'\nimport { debugWarn } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport NodeContent from './tree-node-content.vue'\nimport { getNodeKey as getNodeKeyUtil } from './model/util'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { dragEventsKey } from './model/useDragNode'\nimport Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type { TreeOptionProps, TreeNodeData, RootTreeType } from './tree.type'\n\nexport default defineComponent({\n name: 'ElTreeNode',\n components: {\n ElCollapseTransition,\n ElCheckbox,\n NodeContent,\n ElIcon,\n Loading,\n },\n props: {\n node: {\n type: Node,\n default: () => ({}),\n },\n props: {\n type: Object as PropType<TreeOptionProps>,\n default: () => ({}),\n },\n accordion: Boolean,\n renderContent: Function,\n renderAfterExpand: Boolean,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['node-expand'],\n setup(props, ctx) {\n const ns = useNamespace('tree')\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n const tree = inject<RootTreeType>('RootTree')\n const expanded = ref(false)\n const childNodeRendered = ref(false)\n const oldChecked = ref<boolean>(null)\n const oldIndeterminate = ref<boolean>(null)\n const node$ = ref<Nullable<HTMLElement>>(null)\n const dragEvents = inject(dragEventsKey)\n const instance = getCurrentInstance()\n\n provide('NodeInstance', instance)\n if (!tree) {\n debugWarn('Tree', \"Can not find node's tree.\")\n }\n\n if (props.node.expanded) {\n expanded.value = true\n childNodeRendered.value = true\n }\n\n const childrenKey = tree.props['children'] || 'children'\n watch(\n () => {\n const children = props.node.data[childrenKey]\n return children && [...children]\n },\n () => {\n props.node.updateChildren()\n }\n )\n\n watch(\n () => props.node.indeterminate,\n (val) => {\n handleSelectChange(props.node.checked, val)\n }\n )\n\n watch(\n () => props.node.checked,\n (val) => {\n handleSelectChange(val, props.node.indeterminate)\n }\n )\n\n watch(\n () => props.node.expanded,\n (val) => {\n nextTick(() => (expanded.value = val))\n if (val) {\n childNodeRendered.value = true\n }\n }\n )\n\n const getNodeKey = (node: Node): any => {\n return getNodeKeyUtil(tree.props.nodeKey, node.data)\n }\n\n const getNodeClass = (node: Node) => {\n const nodeClassFunc = props.props.class\n if (!nodeClassFunc) {\n return {}\n }\n let className\n if (isFunction(nodeClassFunc)) {\n const { data } = node\n className = nodeClassFunc(data, node)\n } else {\n className = nodeClassFunc\n }\n\n if (isString(className)) {\n return { [className]: true }\n } else {\n return className\n }\n }\n\n const handleSelectChange = (checked: boolean, indeterminate: boolean) => {\n if (\n oldChecked.value !== checked ||\n oldIndeterminate.value !== indeterminate\n ) {\n tree.ctx.emit('check-change', props.node.data, checked, indeterminate)\n }\n oldChecked.value = checked\n oldIndeterminate.value = indeterminate\n }\n\n const handleClick = (e: MouseEvent) => {\n const store = tree.store.value\n store.setCurrentNode(props.node)\n tree.ctx.emit(\n 'current-change',\n store.currentNode ? store.currentNode.data : null,\n store.currentNode\n )\n tree.currentNode.value = props.node\n\n if (tree.props.expandOnClickNode) {\n handleExpandIconClick()\n }\n\n if (tree.props.checkOnClickNode && !props.node.disabled) {\n handleCheckChange(null, {\n target: { checked: !props.node.checked },\n })\n }\n tree.ctx.emit('node-click', props.node.data, props.node, instance, e)\n }\n\n const handleContextMenu = (event: Event) => {\n if (tree.instance.vnode.props['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree.ctx.emit(\n 'node-contextmenu',\n event,\n props.node.data,\n props.node,\n instance\n )\n }\n\n const handleExpandIconClick = () => {\n if (props.node.isLeaf) return\n if (expanded.value) {\n tree.ctx.emit('node-collapse', props.node.data, props.node, instance)\n props.node.collapse()\n } else {\n props.node.expand()\n ctx.emit('node-expand', props.node.data, props.node, instance)\n }\n }\n\n const handleCheckChange = (value, ev) => {\n props.node.setChecked(ev.target.checked, !tree.props.checkStrictly)\n nextTick(() => {\n const store = tree.store.value\n tree.ctx.emit('check', props.node.data, {\n checkedNodes: store.getCheckedNodes(),\n checkedKeys: store.getCheckedKeys(),\n halfCheckedNodes: store.getHalfCheckedNodes(),\n halfCheckedKeys: store.getHalfCheckedKeys(),\n })\n })\n }\n\n const handleChildNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n tree.ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const handleDragStart = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragStart({ event, treeNode: props })\n }\n\n const handleDragOver = (event: DragEvent) => {\n event.preventDefault()\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragOver({\n event,\n treeNode: { $el: node$.value, node: props.node },\n })\n }\n\n const handleDrop = (event: DragEvent) => {\n event.preventDefault()\n }\n\n const handleDragEnd = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragEnd(event)\n }\n\n return {\n ns,\n node$,\n tree,\n expanded,\n childNodeRendered,\n oldChecked,\n oldIndeterminate,\n getNodeKey,\n getNodeClass,\n handleSelectChange,\n handleClick,\n handleContextMenu,\n handleExpandIconClick,\n handleCheckChange,\n handleChildNodeExpand,\n handleDragStart,\n handleDragOver,\n handleDrop,\n handleDragEnd,\n CaretRight,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElCollapseTransition","ElCheckbox","NodeContent","ElIcon","Loading","Node","useNamespace","useNodeExpandEventBroadcast","inject","ref","dragEventsKey","getCurrentInstance","getNodeKeyUtil","isFunction","isString","CaretRight","_createElementBlock","_normalizeClass","_createElementVNode","_normalizeStyle","_createBlock","_withModifiers","_resolveDynamicComponent","_createVNode","_Fragment"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.js","sources":["../../../../../../packages/components/tree/src/tree.vue"],"sourcesContent":["<template>\n <div\n ref=\"el$\"\n :class=\"[\n ns.b(),\n ns.is('dragging', !!dragState.draggingNode),\n ns.is('drop-not-allow', !dragState.allowDrop),\n ns.is('drop-inner', dragState.dropType === 'inner'),\n { [ns.m('highlight-current')]: highlightCurrent },\n ]\"\n role=\"tree\"\n >\n <el-tree-node\n v-for=\"child in root.childNodes\"\n :key=\"getNodeKey(child)\"\n :node=\"child\"\n :props=\"props\"\n :accordion=\"accordion\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :render-content=\"renderContent\"\n @node-expand=\"handleNodeExpand\"\n />\n <div v-if=\"isEmpty\" :class=\"ns.e('empty-block')\">\n <span :class=\"ns.e('empty-text')\">{{\n emptyText ?? t('el.tree.emptyText')\n }}</span>\n </div>\n <div\n v-show=\"dragState.showDropIndicator\"\n ref=\"dropIndicator$\"\n :class=\"ns.e('drop-indicator')\"\n ></div>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n provide,\n computed,\n watch,\n getCurrentInstance,\n} from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport TreeStore from './model/tree-store'\nimport { getNodeKey as getNodeKeyUtil } from './model/util'\nimport ElTreeNode from './tree-node.vue'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { useDragNodeHandler } from './model/useDragNode'\nimport { useKeydown } from './model/useKeydown'\nimport type Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType, Component } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type {\n TreeComponentProps,\n TreeNodeData,\n TreeKey,\n TreeData,\n} from './tree.type'\n\nexport default defineComponent({\n name: 'ElTree',\n components: { ElTreeNode },\n props: {\n data: {\n type: Array,\n default: () => [],\n },\n emptyText: {\n type: String,\n },\n renderAfterExpand: {\n type: Boolean,\n default: true,\n },\n nodeKey: String,\n checkStrictly: Boolean,\n defaultExpandAll: Boolean,\n expandOnClickNode: {\n type: Boolean,\n default: true,\n },\n checkOnClickNode: Boolean,\n checkDescendants: {\n type: Boolean,\n default: false,\n },\n autoExpandParent: {\n type: Boolean,\n default: true,\n },\n defaultCheckedKeys: Array as PropType<\n TreeComponentProps['defaultCheckedKeys']\n >,\n defaultExpandedKeys: Array as PropType<\n TreeComponentProps['defaultExpandedKeys']\n >,\n currentNodeKey: [String, Number] as PropType<string | number>,\n renderContent: Function,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n draggable: {\n type: Boolean,\n default: false,\n },\n allowDrag: Function,\n allowDrop: Function,\n props: {\n type: Object as PropType<TreeComponentProps['props']>,\n default: () => ({\n children: 'children',\n label: 'label',\n disabled: 'disabled',\n }),\n },\n lazy: {\n type: Boolean,\n default: false,\n },\n highlightCurrent: Boolean,\n load: Function as PropType<TreeComponentProps['load']>,\n filterNodeMethod: Function as PropType<\n TreeComponentProps['filterNodeMethod']\n >,\n accordion: Boolean,\n indent: {\n type: Number,\n default: 18,\n },\n icon: [String, Object] as PropType<string | Component>,\n },\n emits: [\n 'check-change',\n 'current-change',\n 'node-click',\n 'node-contextmenu',\n 'node-collapse',\n 'node-expand',\n 'check',\n 'node-drag-start',\n 'node-drag-end',\n 'node-drop',\n 'node-drag-leave',\n 'node-drag-enter',\n 'node-drag-over',\n ],\n setup(props, ctx) {\n const { t } = useLocale()\n const ns = useNamespace('tree')\n\n const store = ref<TreeStore>(\n new TreeStore({\n key: props.nodeKey,\n data: props.data,\n lazy: props.lazy,\n props: props.props,\n load: props.load,\n currentNodeKey: props.currentNodeKey,\n checkStrictly: props.checkStrictly,\n checkDescendants: props.checkDescendants,\n defaultCheckedKeys: props.defaultCheckedKeys,\n defaultExpandedKeys: props.defaultExpandedKeys,\n autoExpandParent: props.autoExpandParent,\n defaultExpandAll: props.defaultExpandAll,\n filterNodeMethod: props.filterNodeMethod,\n })\n )\n\n store.value.initialize()\n\n const root = ref<Node>(store.value.root)\n const currentNode = ref<Node>(null)\n const el$ = ref<Nullable<HTMLElement>>(null)\n const dropIndicator$ = ref<Nullable<HTMLElement>>(null)\n\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n\n const { dragState } = useDragNodeHandler({\n props,\n ctx,\n el$,\n dropIndicator$,\n store,\n })\n\n useKeydown({ el$ }, store)\n\n const isEmpty = computed(() => {\n const { childNodes } = root.value\n return (\n !childNodes ||\n childNodes.length === 0 ||\n childNodes.every(({ visible }) => !visible)\n )\n })\n\n watch(\n () => props.defaultCheckedKeys,\n (newVal) => {\n store.value.setDefaultCheckedKey(newVal)\n }\n )\n\n watch(\n () => props.defaultExpandedKeys,\n (newVal) => {\n store.value.setDefaultExpandedKeys(newVal)\n }\n )\n\n watch(\n () => props.data,\n (newVal) => {\n store.value.setData(newVal)\n },\n { deep: true }\n )\n\n watch(\n () => props.checkStrictly,\n (newVal) => {\n store.value.checkStrictly = newVal\n }\n )\n\n const filter = (value) => {\n if (!props.filterNodeMethod)\n throw new Error('[Tree] filterNodeMethod is required when filter')\n store.value.filter(value)\n }\n\n const getNodeKey = (node: Node) => {\n return getNodeKeyUtil(props.nodeKey, node.data)\n }\n\n const getNodePath = (data: TreeKey | TreeNodeData) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in getNodePath')\n const node = store.value.getNode(data)\n if (!node) return []\n const path = [node.data]\n let parent = node.parent\n while (parent && parent !== root.value) {\n path.push(parent.data)\n parent = parent.parent\n }\n return path.reverse()\n }\n\n const getCheckedNodes = (\n leafOnly?: boolean,\n includeHalfChecked?: boolean\n ): TreeNodeData[] => {\n return store.value.getCheckedNodes(leafOnly, includeHalfChecked)\n }\n\n const getCheckedKeys = (leafOnly?: boolean): TreeKey[] => {\n return store.value.getCheckedKeys(leafOnly)\n }\n\n const getCurrentNode = (): TreeNodeData => {\n const currentNode = store.value.getCurrentNode()\n return currentNode ? currentNode.data : null\n }\n\n const getCurrentKey = (): any => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in getCurrentKey')\n const currentNode = getCurrentNode()\n return currentNode ? currentNode[props.nodeKey] : null\n }\n\n const setCheckedNodes = (nodes: Node[], leafOnly?: boolean) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCheckedNodes')\n store.value.setCheckedNodes(nodes, leafOnly)\n }\n\n const setCheckedKeys = (keys, leafOnly?: boolean) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCheckedKeys')\n store.value.setCheckedKeys(keys, leafOnly)\n }\n\n const setChecked = (\n data: TreeKey | TreeNodeData,\n checked: boolean,\n deep: boolean\n ) => {\n store.value.setChecked(data, checked, deep)\n }\n\n const getHalfCheckedNodes = (): TreeNodeData[] => {\n return store.value.getHalfCheckedNodes()\n }\n\n const getHalfCheckedKeys = (): TreeKey[] => {\n return store.value.getHalfCheckedKeys()\n }\n\n const setCurrentNode = (node: Node, shouldAutoExpandParent = true) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCurrentNode')\n store.value.setUserCurrentNode(node, shouldAutoExpandParent)\n }\n\n const setCurrentKey = (key: TreeKey, shouldAutoExpandParent = true) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCurrentKey')\n store.value.setCurrentNodeKey(key, shouldAutoExpandParent)\n }\n\n const getNode = (data: TreeKey | TreeNodeData): Node => {\n return store.value.getNode(data)\n }\n\n const remove = (data: TreeNodeData | Node) => {\n store.value.remove(data)\n }\n\n const append = (\n data: TreeNodeData,\n parentNode: TreeNodeData | TreeKey | Node\n ) => {\n store.value.append(data, parentNode)\n }\n\n const insertBefore = (\n data: TreeNodeData,\n refNode: TreeKey | TreeNodeData\n ) => {\n store.value.insertBefore(data, refNode)\n }\n\n const insertAfter = (\n data: TreeNodeData,\n refNode: TreeKey | TreeNodeData\n ) => {\n store.value.insertAfter(data, refNode)\n }\n\n const handleNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const updateKeyChildren = (key: TreeKey, data: TreeData) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in updateKeyChild')\n store.value.updateChildren(key, data)\n }\n\n provide('RootTree', {\n ctx,\n props,\n store,\n root,\n currentNode,\n instance: getCurrentInstance(),\n } as any)\n\n return {\n ns,\n // ref\n store,\n root,\n currentNode,\n dragState,\n el$,\n dropIndicator$,\n\n // computed\n isEmpty,\n\n // methods\n filter,\n getNodeKey,\n getNodePath,\n getCheckedNodes,\n getCheckedKeys,\n getCurrentNode,\n getCurrentKey,\n setCheckedNodes,\n setCheckedKeys,\n setChecked,\n getHalfCheckedNodes,\n getHalfCheckedKeys,\n setCurrentNode,\n setCurrentKey,\n t,\n getNode,\n remove,\n append,\n insertBefore,\n insertAfter,\n handleNodeExpand,\n updateKeyChildren,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElTreeNode","useLocale","useNamespace","ref","TreeStore","useNodeExpandEventBroadcast","useDragNodeHandler","computed","getNodeKeyUtil","getCurrentInstance","_openBlock"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tree.js","sources":["../../../../../../packages/components/tree/src/tree.vue"],"sourcesContent":["<template>\n <div\n ref=\"el$\"\n :class=\"[\n ns.b(),\n ns.is('dragging', !!dragState.draggingNode),\n ns.is('drop-not-allow', !dragState.allowDrop),\n ns.is('drop-inner', dragState.dropType === 'inner'),\n { [ns.m('highlight-current')]: highlightCurrent },\n ]\"\n role=\"tree\"\n >\n <el-tree-node\n v-for=\"child in root.childNodes\"\n :key=\"getNodeKey(child)\"\n :node=\"child\"\n :props=\"props\"\n :accordion=\"accordion\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :render-content=\"renderContent\"\n @node-expand=\"handleNodeExpand\"\n />\n <div v-if=\"isEmpty\" :class=\"ns.e('empty-block')\">\n <span :class=\"ns.e('empty-text')\">{{\n emptyText ?? t('el.tree.emptyText')\n }}</span>\n </div>\n <div\n v-show=\"dragState.showDropIndicator\"\n ref=\"dropIndicator$\"\n :class=\"ns.e('drop-indicator')\"\n ></div>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n ref,\n provide,\n computed,\n watch,\n getCurrentInstance,\n} from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport TreeStore from './model/tree-store'\nimport { getNodeKey as getNodeKeyUtil } from './model/util'\nimport ElTreeNode from './tree-node.vue'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { useDragNodeHandler } from './model/useDragNode'\nimport { useKeydown } from './model/useKeydown'\nimport type Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType, Component } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type {\n TreeComponentProps,\n TreeNodeData,\n TreeKey,\n TreeData,\n} from './tree.type'\n\nexport default defineComponent({\n name: 'ElTree',\n components: { ElTreeNode },\n props: {\n data: {\n type: Array,\n default: () => [],\n },\n emptyText: {\n type: String,\n },\n renderAfterExpand: {\n type: Boolean,\n default: true,\n },\n nodeKey: String,\n checkStrictly: Boolean,\n defaultExpandAll: Boolean,\n expandOnClickNode: {\n type: Boolean,\n default: true,\n },\n checkOnClickNode: Boolean,\n checkDescendants: {\n type: Boolean,\n default: false,\n },\n autoExpandParent: {\n type: Boolean,\n default: true,\n },\n defaultCheckedKeys: Array as PropType<\n TreeComponentProps['defaultCheckedKeys']\n >,\n defaultExpandedKeys: Array as PropType<\n TreeComponentProps['defaultExpandedKeys']\n >,\n currentNodeKey: [String, Number] as PropType<string | number>,\n renderContent: Function,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n draggable: {\n type: Boolean,\n default: false,\n },\n allowDrag: Function,\n allowDrop: Function,\n props: {\n type: Object as PropType<TreeComponentProps['props']>,\n default: () => ({\n children: 'children',\n label: 'label',\n disabled: 'disabled',\n }),\n },\n lazy: {\n type: Boolean,\n default: false,\n },\n highlightCurrent: Boolean,\n load: Function as PropType<TreeComponentProps['load']>,\n filterNodeMethod: Function as PropType<\n TreeComponentProps['filterNodeMethod']\n >,\n accordion: Boolean,\n indent: {\n type: Number,\n default: 18,\n },\n icon: [String, Object] as PropType<string | Component>,\n },\n emits: [\n 'check-change',\n 'current-change',\n 'node-click',\n 'node-contextmenu',\n 'node-collapse',\n 'node-expand',\n 'check',\n 'node-drag-start',\n 'node-drag-end',\n 'node-drop',\n 'node-drag-leave',\n 'node-drag-enter',\n 'node-drag-over',\n ],\n setup(props, ctx) {\n const { t } = useLocale()\n const ns = useNamespace('tree')\n\n const store = ref<TreeStore>(\n new TreeStore({\n key: props.nodeKey,\n data: props.data,\n lazy: props.lazy,\n props: props.props,\n load: props.load,\n currentNodeKey: props.currentNodeKey,\n checkStrictly: props.checkStrictly,\n checkDescendants: props.checkDescendants,\n defaultCheckedKeys: props.defaultCheckedKeys,\n defaultExpandedKeys: props.defaultExpandedKeys,\n autoExpandParent: props.autoExpandParent,\n defaultExpandAll: props.defaultExpandAll,\n filterNodeMethod: props.filterNodeMethod,\n })\n )\n\n store.value.initialize()\n\n const root = ref<Node>(store.value.root)\n const currentNode = ref<Node>(null)\n const el$ = ref<Nullable<HTMLElement>>(null)\n const dropIndicator$ = ref<Nullable<HTMLElement>>(null)\n\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n\n const { dragState } = useDragNodeHandler({\n props,\n ctx,\n el$,\n dropIndicator$,\n store,\n })\n\n useKeydown({ el$ }, store)\n\n const isEmpty = computed(() => {\n const { childNodes } = root.value\n return (\n !childNodes ||\n childNodes.length === 0 ||\n childNodes.every(({ visible }) => !visible)\n )\n })\n\n watch(\n () => props.defaultCheckedKeys,\n (newVal) => {\n store.value.setDefaultCheckedKey(newVal)\n }\n )\n\n watch(\n () => props.defaultExpandedKeys,\n (newVal) => {\n store.value.setDefaultExpandedKeys(newVal)\n }\n )\n\n watch(\n () => props.data,\n (newVal) => {\n store.value.setData(newVal)\n },\n { deep: true }\n )\n\n watch(\n () => props.checkStrictly,\n (newVal) => {\n store.value.checkStrictly = newVal\n }\n )\n\n const filter = (value) => {\n if (!props.filterNodeMethod)\n throw new Error('[Tree] filterNodeMethod is required when filter')\n store.value.filter(value)\n }\n\n const getNodeKey = (node: Node) => {\n return getNodeKeyUtil(props.nodeKey, node.data)\n }\n\n const getNodePath = (data: TreeKey | TreeNodeData) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in getNodePath')\n const node = store.value.getNode(data)\n if (!node) return []\n const path = [node.data]\n let parent = node.parent\n while (parent && parent !== root.value) {\n path.push(parent.data)\n parent = parent.parent\n }\n return path.reverse()\n }\n\n const getCheckedNodes = (\n leafOnly?: boolean,\n includeHalfChecked?: boolean\n ): TreeNodeData[] => {\n return store.value.getCheckedNodes(leafOnly, includeHalfChecked)\n }\n\n const getCheckedKeys = (leafOnly?: boolean): TreeKey[] => {\n return store.value.getCheckedKeys(leafOnly)\n }\n\n const getCurrentNode = (): TreeNodeData => {\n const currentNode = store.value.getCurrentNode()\n return currentNode ? currentNode.data : null\n }\n\n const getCurrentKey = (): any => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in getCurrentKey')\n const currentNode = getCurrentNode()\n return currentNode ? currentNode[props.nodeKey] : null\n }\n\n const setCheckedNodes = (nodes: Node[], leafOnly?: boolean) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCheckedNodes')\n store.value.setCheckedNodes(nodes, leafOnly)\n }\n\n const setCheckedKeys = (keys, leafOnly?: boolean) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCheckedKeys')\n store.value.setCheckedKeys(keys, leafOnly)\n }\n\n const setChecked = (\n data: TreeKey | TreeNodeData,\n checked: boolean,\n deep: boolean\n ) => {\n store.value.setChecked(data, checked, deep)\n }\n\n const getHalfCheckedNodes = (): TreeNodeData[] => {\n return store.value.getHalfCheckedNodes()\n }\n\n const getHalfCheckedKeys = (): TreeKey[] => {\n return store.value.getHalfCheckedKeys()\n }\n\n const setCurrentNode = (node: Node, shouldAutoExpandParent = true) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCurrentNode')\n store.value.setUserCurrentNode(node, shouldAutoExpandParent)\n }\n\n const setCurrentKey = (key: TreeKey, shouldAutoExpandParent = true) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in setCurrentKey')\n store.value.setCurrentNodeKey(key, shouldAutoExpandParent)\n }\n\n const getNode = (data: TreeKey | TreeNodeData): Node => {\n return store.value.getNode(data)\n }\n\n const remove = (data: TreeNodeData | Node) => {\n store.value.remove(data)\n }\n\n const append = (\n data: TreeNodeData,\n parentNode: TreeNodeData | TreeKey | Node\n ) => {\n store.value.append(data, parentNode)\n }\n\n const insertBefore = (\n data: TreeNodeData,\n refNode: TreeKey | TreeNodeData\n ) => {\n store.value.insertBefore(data, refNode)\n }\n\n const insertAfter = (\n data: TreeNodeData,\n refNode: TreeKey | TreeNodeData\n ) => {\n store.value.insertAfter(data, refNode)\n }\n\n const handleNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const updateKeyChildren = (key: TreeKey, data: TreeData) => {\n if (!props.nodeKey)\n throw new Error('[Tree] nodeKey is required in updateKeyChild')\n store.value.updateChildren(key, data)\n }\n\n provide('RootTree', {\n ctx,\n props,\n store,\n root,\n currentNode,\n instance: getCurrentInstance(),\n } as any)\n\n return {\n ns,\n // ref\n store,\n root,\n currentNode,\n dragState,\n el$,\n dropIndicator$,\n\n // computed\n isEmpty,\n\n // methods\n filter,\n getNodeKey,\n getNodePath,\n getCheckedNodes,\n getCheckedKeys,\n getCurrentNode,\n getCurrentKey,\n setCheckedNodes,\n setCheckedKeys,\n setChecked,\n getHalfCheckedNodes,\n getHalfCheckedKeys,\n setCurrentNode,\n setCurrentKey,\n t,\n getNode,\n remove,\n append,\n insertBefore,\n insertAfter,\n handleNodeExpand,\n updateKeyChildren,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElTreeNode","useLocale","useNamespace","ref","TreeStore","useNodeExpandEventBroadcast","useDragNodeHandler","computed","getNodeKeyUtil","getCurrentInstance","_openBlock"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-node.js","sources":["../../../../../../packages/components/tree-v2/src/tree-node.vue"],"sourcesContent":["<template>\n <div\n ref=\"node$\"\n :class=\"[\n ns.b('node'),\n ns.is('expanded', expanded),\n ns.is('current', current),\n ns.is('focusable', !disabled),\n ns.is('checked', !disabled && checked),\n ]\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"disabled\"\n :aria-checked=\"checked\"\n :data-key=\"node?.key\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n >\n <div\n :class=\"ns.be('node', 'content')\"\n :style=\"{ paddingLeft: `${(node.level - 1) * indent}px` }\"\n >\n <el-icon\n v-if=\"icon\"\n :class=\"[\n ns.is('leaf', !!node?.isLeaf),\n ns.is('hidden', hiddenExpandIcon),\n {\n expanded: !node?.isLeaf && expanded,\n },\n ns.be('node', 'expand-icon'),\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"icon\" />\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"checked\"\n :indeterminate=\"indeterminate\"\n :disabled=\"disabled\"\n @change=\"handleCheckChange\"\n @click.stop\n />\n <el-node-content :node=\"node\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, inject } from 'vue'\nimport { CaretRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { useNamespace } from '@element-plus/hooks'\nimport ElNodeContent from './tree-node-content'\nimport {\n ROOT_TREE_INJECTION_KEY,\n NODE_CONTEXTMENU,\n treeNodeEmits,\n treeNodeProps,\n} from './virtual-tree'\n\nconst DEFAULT_ICON = 'caret-right'\n\nexport default defineComponent({\n name: 'ElTreeNode',\n components: {\n ElIcon,\n CaretRight,\n ElCheckbox,\n ElNodeContent,\n },\n props: treeNodeProps,\n emits: treeNodeEmits,\n setup(props, { emit }) {\n const tree = inject(ROOT_TREE_INJECTION_KEY)\n const ns = useNamespace('tree')\n\n const indent = computed(() => {\n return tree?.props.indent ?? 16\n })\n\n const icon = computed(() => {\n return tree?.props.icon ?? DEFAULT_ICON\n })\n\n const handleClick = (e: MouseEvent) => {\n emit('click', props.node, e)\n }\n const handleExpandIconClick = () => {\n emit('toggle', props.node)\n }\n const handleCheckChange = (value: boolean) => {\n emit('check', props.node, value)\n }\n const handleContextMenu = (event: Event) => {\n if (tree?.instance?.vnode?.props?.['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree?.ctx.emit(NODE_CONTEXTMENU, event, props.node?.data, props.node)\n }\n\n return {\n ns,\n indent,\n icon,\n handleClick,\n handleExpandIconClick,\n handleCheckChange,\n handleContextMenu,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElIcon","CaretRight","ElCheckbox","ElNodeContent","treeNodeProps","treeNodeEmits","inject","ROOT_TREE_INJECTION_KEY","useNamespace","computed"
|
|
1
|
+
{"version":3,"file":"tree-node.js","sources":["../../../../../../packages/components/tree-v2/src/tree-node.vue"],"sourcesContent":["<template>\n <div\n ref=\"node$\"\n :class=\"[\n ns.b('node'),\n ns.is('expanded', expanded),\n ns.is('current', current),\n ns.is('focusable', !disabled),\n ns.is('checked', !disabled && checked),\n ]\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"disabled\"\n :aria-checked=\"checked\"\n :data-key=\"node?.key\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n >\n <div\n :class=\"ns.be('node', 'content')\"\n :style=\"{ paddingLeft: `${(node.level - 1) * indent}px` }\"\n >\n <el-icon\n v-if=\"icon\"\n :class=\"[\n ns.is('leaf', !!node?.isLeaf),\n ns.is('hidden', hiddenExpandIcon),\n {\n expanded: !node?.isLeaf && expanded,\n },\n ns.be('node', 'expand-icon'),\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"icon\" />\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"checked\"\n :indeterminate=\"indeterminate\"\n :disabled=\"disabled\"\n @change=\"handleCheckChange\"\n @click.stop\n />\n <el-node-content :node=\"node\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, inject } from 'vue'\nimport { CaretRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { useNamespace } from '@element-plus/hooks'\nimport ElNodeContent from './tree-node-content'\nimport {\n ROOT_TREE_INJECTION_KEY,\n NODE_CONTEXTMENU,\n treeNodeEmits,\n treeNodeProps,\n} from './virtual-tree'\n\nconst DEFAULT_ICON = 'caret-right'\n\nexport default defineComponent({\n name: 'ElTreeNode',\n components: {\n ElIcon,\n CaretRight,\n ElCheckbox,\n ElNodeContent,\n },\n props: treeNodeProps,\n emits: treeNodeEmits,\n setup(props, { emit }) {\n const tree = inject(ROOT_TREE_INJECTION_KEY)\n const ns = useNamespace('tree')\n\n const indent = computed(() => {\n return tree?.props.indent ?? 16\n })\n\n const icon = computed(() => {\n return tree?.props.icon ?? DEFAULT_ICON\n })\n\n const handleClick = (e: MouseEvent) => {\n emit('click', props.node, e)\n }\n const handleExpandIconClick = () => {\n emit('toggle', props.node)\n }\n const handleCheckChange = (value: boolean) => {\n emit('check', props.node, value)\n }\n const handleContextMenu = (event: Event) => {\n if (tree?.instance?.vnode?.props?.['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree?.ctx.emit(NODE_CONTEXTMENU, event, props.node?.data, props.node)\n }\n\n return {\n ns,\n indent,\n icon,\n handleClick,\n handleExpandIconClick,\n handleCheckChange,\n handleContextMenu,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElIcon","CaretRight","ElCheckbox","ElNodeContent","treeNodeProps","treeNodeEmits","inject","ROOT_TREE_INJECTION_KEY","useNamespace","computed"],"mappings":";;;;;;;;;;;;;;AAgEA,MAAM,eAAe;AAErB,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,YACVC;AAAA,gBACAC;AAAA,gBACAC;AAAA,mBACAC;AAAA;AAAA,EAEF,OAAOC;AAAA,EACP,OAAOC;AAAA,EACP,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,OAAOC,WAAOC;AACpB,UAAM,KAAKC,qBAAa;AAExB,UAAM,SAASC,aAAS,MAAM;AAC5B,aAAO;AAAsB;AAG/B;AACE,6BAAmB;AAAQ;AAG7B,+BAAuC;AACrC;AAA0B;AAE5B,UAAM,wBAAwB;AAC5B;AAAqB;AAEvB,UAAM,qBAAqB;AACzB;AAA0B;AAE5B,UAAM,oBAAoB;AACxB;AACE;AACA,cAAM;AAAA;AAER;AAAgE;AAGlE;AAAO,MACL;AAAA,MACA;AAAA;AACA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;;;AAjEE;AA7CA;AACE;AAAc;AAAkC;AAAkC;AAAoC,MAAiB,QAAG;AAA2B;AAAA,UAOtK;AAAA,cACI;AAAA;AACO;AACA,IACf,gBAAc;AAAA,IACd;AAAgB,IAChB;AAAuB,IACvB,eAAW;AAAE;IAEd;AA2BM,aA1BE;AAAO,0DACmB;AAAa;;AAenC;;AAXF;AAAoC,UAAmB,wBAAgB;AAAA;;AAAsE;AAAA,UAAiC,QAAG,GAAE;AAAA;AAAA,4DAQvJ;AAAA;;AAEV;AAAR;AAAA;;;AAShB;QALC;AAAa;AACE;AACL,QACV;AAAQ,QACR;AAAD;AAAW;;AAEe;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.js","sources":["../../../../../../packages/components/tree-v2/src/tree.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b(), { [ns.m('highlight-current')]: highlightCurrent }]\"\n role=\"tree\"\n >\n <fixed-size-list\n v-if=\"isNotEmpty\"\n :class-name=\"ns.b('virtual-list')\"\n :data=\"flattenTree\"\n :total=\"flattenTree.length\"\n :height=\"height\"\n :item-size=\"itemSize\"\n :perf-mode=\"perfMode\"\n >\n <template #default=\"{ data, index, style }\">\n <el-tree-node\n :key=\"data[index].key\"\n :style=\"style\"\n :node=\"data[index]\"\n :expanded=\"isExpanded(data[index])\"\n :show-checkbox=\"showCheckbox\"\n :checked=\"isChecked(data[index])\"\n :indeterminate=\"isIndeterminate(data[index])\"\n :disabled=\"isDisabled(data[index])\"\n :current=\"isCurrent(data[index])\"\n :hidden-expand-icon=\"isForceHiddenExpandIcon(data[index])\"\n @click=\"handleNodeClick\"\n @toggle=\"toggleExpand\"\n @check=\"handleNodeCheck\"\n ></el-tree-node>\n </template>\n </fixed-size-list>\n <div v-else :class=\"ns.e('empty-block')\">\n <span :class=\"ns.e('empty-text')\">{{\n emptyText ?? t('el.tree.emptyText')\n }}</span>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, getCurrentInstance, provide } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { FixedSizeList } from '@element-plus/components/virtual-list'\nimport { useTree } from './composables/useTree'\nimport ElTreeNode from './tree-node.vue'\nimport { ROOT_TREE_INJECTION_KEY, treeEmits, treeProps } from './virtual-tree'\nimport type { TreeProps } from './types'\n\nexport default defineComponent({\n name: 'ElTreeV2',\n components: {\n ElTreeNode,\n FixedSizeList,\n },\n props: treeProps,\n emits: treeEmits,\n setup(props: TreeProps, ctx) {\n provide(ROOT_TREE_INJECTION_KEY, {\n ctx,\n props,\n instance: getCurrentInstance(),\n })\n const { t } = useLocale()\n const ns = useNamespace('tree')\n const {\n flattenTree,\n isNotEmpty,\n toggleExpand,\n isExpanded,\n isIndeterminate,\n isChecked,\n isDisabled,\n isCurrent,\n isForceHiddenExpandIcon,\n toggleCheckbox,\n handleNodeClick,\n handleNodeCheck,\n // expose\n getCurrentNode,\n getCurrentKey,\n setCurrentKey,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n filter,\n setData,\n } = useTree(props, ctx.emit)\n\n ctx.expose({\n getCurrentNode,\n getCurrentKey,\n setCurrentKey,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n filter,\n setData,\n })\n\n return {\n t,\n ns,\n flattenTree,\n itemSize: 26,\n isNotEmpty,\n toggleExpand,\n toggleCheckbox,\n isExpanded,\n isIndeterminate,\n isChecked,\n isDisabled,\n isCurrent,\n isForceHiddenExpandIcon,\n handleNodeClick,\n handleNodeCheck,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElTreeNode","FixedSizeList","treeProps","treeEmits","ROOT_TREE_INJECTION_KEY","getCurrentInstance","useLocale","useNamespace","useTree"],"mappings":";;;;;;;;;;;;;;;AAiDA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,gBACVC;AAAA,mBACAC;AAAA;AAAA,EAEF,OAAOC;AAAA,EACP,OAAOC;AAAA,EACP,MAAM,OAAkB,KAAK;AAC3B,gBAAQC,qCAAyB;AAAA,MAC/B;AAAA,MACA;AAAA,MACA,UAAUC;AAAA;AAEZ,UAAM,EAAE,MAAMC;AACd,UAAM,KAAKC,qBAAa;AACxB,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACEC,gBAAQ,OAAO,IAAI;AAEvB,QAAI,OAAO;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAGF,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;
|
|
1
|
+
{"version":3,"file":"tree.js","sources":["../../../../../../packages/components/tree-v2/src/tree.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b(), { [ns.m('highlight-current')]: highlightCurrent }]\"\n role=\"tree\"\n >\n <fixed-size-list\n v-if=\"isNotEmpty\"\n :class-name=\"ns.b('virtual-list')\"\n :data=\"flattenTree\"\n :total=\"flattenTree.length\"\n :height=\"height\"\n :item-size=\"itemSize\"\n :perf-mode=\"perfMode\"\n >\n <template #default=\"{ data, index, style }\">\n <el-tree-node\n :key=\"data[index].key\"\n :style=\"style\"\n :node=\"data[index]\"\n :expanded=\"isExpanded(data[index])\"\n :show-checkbox=\"showCheckbox\"\n :checked=\"isChecked(data[index])\"\n :indeterminate=\"isIndeterminate(data[index])\"\n :disabled=\"isDisabled(data[index])\"\n :current=\"isCurrent(data[index])\"\n :hidden-expand-icon=\"isForceHiddenExpandIcon(data[index])\"\n @click=\"handleNodeClick\"\n @toggle=\"toggleExpand\"\n @check=\"handleNodeCheck\"\n ></el-tree-node>\n </template>\n </fixed-size-list>\n <div v-else :class=\"ns.e('empty-block')\">\n <span :class=\"ns.e('empty-text')\">{{\n emptyText ?? t('el.tree.emptyText')\n }}</span>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, getCurrentInstance, provide } from 'vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { FixedSizeList } from '@element-plus/components/virtual-list'\nimport { useTree } from './composables/useTree'\nimport ElTreeNode from './tree-node.vue'\nimport { ROOT_TREE_INJECTION_KEY, treeEmits, treeProps } from './virtual-tree'\nimport type { TreeProps } from './types'\n\nexport default defineComponent({\n name: 'ElTreeV2',\n components: {\n ElTreeNode,\n FixedSizeList,\n },\n props: treeProps,\n emits: treeEmits,\n setup(props: TreeProps, ctx) {\n provide(ROOT_TREE_INJECTION_KEY, {\n ctx,\n props,\n instance: getCurrentInstance(),\n })\n const { t } = useLocale()\n const ns = useNamespace('tree')\n const {\n flattenTree,\n isNotEmpty,\n toggleExpand,\n isExpanded,\n isIndeterminate,\n isChecked,\n isDisabled,\n isCurrent,\n isForceHiddenExpandIcon,\n toggleCheckbox,\n handleNodeClick,\n handleNodeCheck,\n // expose\n getCurrentNode,\n getCurrentKey,\n setCurrentKey,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n filter,\n setData,\n } = useTree(props, ctx.emit)\n\n ctx.expose({\n getCurrentNode,\n getCurrentKey,\n setCurrentKey,\n getCheckedKeys,\n getCheckedNodes,\n getHalfCheckedKeys,\n getHalfCheckedNodes,\n setChecked,\n setCheckedKeys,\n filter,\n setData,\n })\n\n return {\n t,\n ns,\n flattenTree,\n itemSize: 26,\n isNotEmpty,\n toggleExpand,\n toggleCheckbox,\n isExpanded,\n isIndeterminate,\n isChecked,\n isDisabled,\n isCurrent,\n isForceHiddenExpandIcon,\n handleNodeClick,\n handleNodeCheck,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElTreeNode","FixedSizeList","treeProps","treeEmits","ROOT_TREE_INJECTION_KEY","getCurrentInstance","useLocale","useNamespace","useTree"],"mappings":";;;;;;;;;;;;;;;AAiDA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,gBACVC;AAAA,mBACAC;AAAA;AAAA,EAEF,OAAOC;AAAA,EACP,OAAOC;AAAA,EACP,MAAM,OAAkB,KAAK;AAC3B,gBAAQC,qCAAyB;AAAA,MAC/B;AAAA,MACA;AAAA,MACA,UAAUC;AAAA;AAEZ,UAAM,EAAE,MAAMC;AACd,UAAM,KAAKC,qBAAa;AACxB,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACEC,gBAAQ,OAAO,IAAI;AAEvB,QAAI,OAAO;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAGF,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;;AApFE;AAnC4C,IAChD;AAAK;;AA4Ba;MAxBf;AAAgB,MAChB;AAAM,MACN;AAAmB,MACnB;AAAQ,MACR,aAAW;AAAA,MACX,aAAW;AAAA;;AAE4B,0BACtC;AAcgB;AAbI,UACjB;AAAO,UACP;AAAW,UACX,UAAU;AAAgB,UAC1B;AAAe,UACf;AAAwB,UACxB,oCAA+B;AAAK,UACpC;AAA0B,UAC1B;AAAwB,UACxB;AAAiD,UACjD;AAAO,UACP;AAAQ,UACR;AAAO;;;;AAQR;MAJO;AAAW;;AAGb;AAFS;AACF;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-dragger.js","sources":["../../../../../../packages/components/upload/src/upload-dragger.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b('dragger'), ns.is('dragover', dragover)]\"\n @drop.prevent=\"onDrop\"\n @dragover.prevent=\"onDragover\"\n @dragleave.prevent=\"dragover = false\"\n >\n <slot></slot>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, inject } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { ElUpload } from './upload.type'\n\nexport default defineComponent({\n name: 'ElUploadDrag',\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['file'],\n setup(props, { emit }) {\n const uploader = inject('uploader', {} as ElUpload)\n const ns = useNamespace('upload')\n const dragover = ref(false)\n\n function onDrop(e: DragEvent) {\n if (props.disabled || !uploader) return\n const accept = uploader.props?.accept || uploader.accept\n dragover.value = false\n if (!accept) {\n emit('file', e.dataTransfer.files)\n return\n }\n emit(\n 'file',\n Array.from(e.dataTransfer.files).filter((file) => {\n const { type, name } = file\n const extension =\n name.indexOf('.') > -1 ? `.${name.split('.').pop()}` : ''\n const baseType = type.replace(/\\/.*$/, '')\n return accept\n .split(',')\n .map((type) => type.trim())\n .filter((type) => type)\n .some((acceptedType) => {\n if (acceptedType.startsWith('.')) {\n return extension === acceptedType\n }\n if (/\\/\\*$/.test(acceptedType)) {\n return baseType === acceptedType.replace(/\\/\\*$/, '')\n }\n if (/^[^/]+\\/[^/]+$/.test(acceptedType)) {\n return type === acceptedType\n }\n return false\n })\n })\n )\n }\n\n function onDragover() {\n if (!props.disabled) dragover.value = true\n }\n\n return {\n ns,\n dragover,\n onDrop,\n onDragover,\n }\n },\n})\n</script>\n"],"names":["defineComponent","inject","useNamespace","ref"],"mappings":";;;;;;;;;AAgBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,OAAO,CAAC;AAAA,EACR,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,WAAWC,WAAO,YAAY;AACpC,UAAM,KAAKC,mBAAa;AACxB,UAAM,WAAWC,QAAI;AAErB,oBAAgB,GAAc;AAC5B,UAAI;AAA6B;AACjC;AACA,uBAAiB;AACjB;AACE;AACA;AAAA;AAEF;AAGI,+BAAuB;AACvB,cAAM,YACJ,KAAK;AACP,cAAM,gBAAgB,QAAQ,SAAS;AACvC,sBACG,eACI,CAAC;AAGJ,2BAAiB,WAAW;AAC1B;AAAqB;AAEvB;AACE;AAAkD;AAEpD;AACE;AAAgB;AAElB;AAAO;AAAA;AAAA;AAMjB;AACE;AAAqB,iBAAS,QAAQ;AAAA;AAGxC;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;
|
|
1
|
+
{"version":3,"file":"upload-dragger.js","sources":["../../../../../../packages/components/upload/src/upload-dragger.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b('dragger'), ns.is('dragover', dragover)]\"\n @drop.prevent=\"onDrop\"\n @dragover.prevent=\"onDragover\"\n @dragleave.prevent=\"dragover = false\"\n >\n <slot></slot>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref, inject } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { ElUpload } from './upload.type'\n\nexport default defineComponent({\n name: 'ElUploadDrag',\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['file'],\n setup(props, { emit }) {\n const uploader = inject('uploader', {} as ElUpload)\n const ns = useNamespace('upload')\n const dragover = ref(false)\n\n function onDrop(e: DragEvent) {\n if (props.disabled || !uploader) return\n const accept = uploader.props?.accept || uploader.accept\n dragover.value = false\n if (!accept) {\n emit('file', e.dataTransfer.files)\n return\n }\n emit(\n 'file',\n Array.from(e.dataTransfer.files).filter((file) => {\n const { type, name } = file\n const extension =\n name.indexOf('.') > -1 ? `.${name.split('.').pop()}` : ''\n const baseType = type.replace(/\\/.*$/, '')\n return accept\n .split(',')\n .map((type) => type.trim())\n .filter((type) => type)\n .some((acceptedType) => {\n if (acceptedType.startsWith('.')) {\n return extension === acceptedType\n }\n if (/\\/\\*$/.test(acceptedType)) {\n return baseType === acceptedType.replace(/\\/\\*$/, '')\n }\n if (/^[^/]+\\/[^/]+$/.test(acceptedType)) {\n return type === acceptedType\n }\n return false\n })\n })\n )\n }\n\n function onDragover() {\n if (!props.disabled) dragover.value = true\n }\n\n return {\n ns,\n dragover,\n onDrop,\n onDragover,\n }\n },\n})\n</script>\n"],"names":["defineComponent","inject","useNamespace","ref"],"mappings":";;;;;;;;;AAgBA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;AAAA,EAGb,OAAO,CAAC;AAAA,EACR,MAAM,OAAO,EAAE,QAAQ;AACrB,UAAM,WAAWC,WAAO,YAAY;AACpC,UAAM,KAAKC,mBAAa;AACxB,UAAM,WAAWC,QAAI;AAErB,oBAAgB,GAAc;AAC5B,UAAI;AAA6B;AACjC;AACA,uBAAiB;AACjB;AACE;AACA;AAAA;AAEF;AAGI,+BAAuB;AACvB,cAAM,YACJ,KAAK;AACP,cAAM,gBAAgB,QAAQ,SAAS;AACvC,sBACG,eACI,CAAC;AAGJ,2BAAiB,WAAW;AAC1B;AAAqB;AAEvB;AACE;AAAkD;AAEpD;AACE;AAAgB;AAElB;AAAO;AAAA;AAAA;AAMjB;AACE;AAAqB,iBAAS,QAAQ;AAAA;AAGxC;AAAO;AACL,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;2CAjEE;AAAA,wDANsB;AAAkB,IAC3C;AAAoB,IACpB,qEAAkB,6CAAU;AAAA,IAC5B,qEAAmB;AAAQ;;AAEf;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-list.js","sources":["../../../../../../packages/components/upload/src/upload-list.vue"],"sourcesContent":["<template>\n <transition-group\n tag=\"ul\"\n :class=\"[\n nsUpload.b('list'),\n nsUpload.bm('list', listType),\n nsUpload.is('disabled', disabled),\n ]\"\n :name=\"nsList.b()\"\n >\n <li\n v-for=\"file in files\"\n :key=\"file.uid || file\"\n :class=\"[\n nsUpload.be('list', 'item'),\n nsUpload.is(file.status),\n { focusing },\n ]\"\n tabindex=\"0\"\n @keydown.delete=\"!disabled && handleRemove(file)\"\n @focus=\"focusing = true\"\n @blur=\"focusing = false\"\n @click=\"onFileClicked\"\n >\n <slot :file=\"file\">\n <img\n v-if=\"\n file.status !== 'uploading' &&\n ['picture-card', 'picture'].includes(listType)\n \"\n :class=\"nsUpload.be('list', 'item-thumbnail')\"\n :src=\"file.url\"\n alt=\"\"\n />\n <a :class=\"nsUpload.be('list', 'item-name')\" @click=\"handleClick(file)\">\n <el-icon :class=\"nsIcon.m('document')\"><document /></el-icon>\n {{ file.name }}\n </a>\n <label :class=\"nsUpload.be('list', 'item-status-label')\">\n <el-icon\n v-if=\"listType === 'text'\"\n :class=\"[nsIcon.m('upload-success'), nsIcon.m('circle-check')]\"\n >\n <circle-check />\n </el-icon>\n <el-icon\n v-else-if=\"['picture-card', 'picture'].includes(listType)\"\n :class=\"[nsIcon.m('upload-success'), nsIcon.m('check')]\"\n >\n <check />\n </el-icon>\n </label>\n <el-icon\n v-if=\"!disabled\"\n :class=\"nsIcon.m('close')\"\n @click=\"handleRemove(file)\"\n >\n <close />\n </el-icon>\n <!-- Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn-->\n <!-- This is a bug which needs to be fixed -->\n <!-- TODO: Fix the incorrect navigation interaction -->\n <i v-if=\"!disabled\" :class=\"nsIcon.m('close-tip')\">{{\n t('el.upload.deleteTip')\n }}</i>\n <el-progress\n v-if=\"file.status === 'uploading'\"\n :type=\"listType === 'picture-card' ? 'circle' : 'line'\"\n :stroke-width=\"listType === 'picture-card' ? 6 : 2\"\n :percentage=\"+file.percentage\"\n style=\"margin-top: 0.5rem\"\n />\n <span\n v-if=\"listType === 'picture-card'\"\n :class=\"nsUpload.be('list', 'item-actions')\"\n >\n <span\n :class=\"nsUpload.be('list', 'item-preview')\"\n @click=\"handlePreview(file)\"\n >\n <el-icon :class=\"nsIcon.m('zoom-in')\"><zoom-in /></el-icon>\n </span>\n <span\n v-if=\"!disabled\"\n :class=\"nsUpload.be('list', 'item-delete')\"\n @click=\"handleRemove(file)\"\n >\n <el-icon :class=\"nsIcon.m('delete')\"><delete /></el-icon>\n </span>\n </span>\n </slot>\n </li>\n </transition-group>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n Document,\n Delete,\n Close,\n ZoomIn,\n Check,\n CircleCheck,\n} from '@element-plus/icons-vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElProgress from '@element-plus/components/progress'\n\nimport type { PropType } from 'vue'\nimport type { UploadFile } from './upload.type'\n\nexport default defineComponent({\n name: 'ElUploadList',\n components: {\n ElProgress,\n ElIcon,\n Document,\n Delete,\n Close,\n ZoomIn,\n Check,\n CircleCheck,\n },\n props: {\n files: {\n type: Array as PropType<UploadFile[]>,\n default: () => [] as File[],\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n handlePreview: {\n type: Function as PropType<(file: UploadFile) => void>,\n default: () => NOOP,\n },\n listType: {\n type: String as PropType<'picture' | 'picture-card' | 'text'>,\n default: 'text',\n },\n },\n emits: ['remove'],\n setup(props, { emit }) {\n const { t } = useLocale()\n const nsUpload = useNamespace('upload')\n const nsIcon = useNamespace('icon')\n const nsList = useNamespace('list')\n\n const handleClick = (file: UploadFile) => {\n props.handlePreview(file)\n }\n\n const onFileClicked = (e: Event) => {\n ;(e.target as HTMLElement).focus()\n }\n\n const handleRemove = (file: UploadFile) => {\n emit('remove', file)\n }\n return {\n focusing: ref(false),\n handleClick,\n handleRemove,\n onFileClicked,\n t,\n nsUpload,\n nsIcon,\n nsList,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElProgress","ElIcon","Document","Delete","Close","ZoomIn","Check","CircleCheck","NOOP","useLocale","useNamespace","ref","
|
|
1
|
+
{"version":3,"file":"upload-list.js","sources":["../../../../../../packages/components/upload/src/upload-list.vue"],"sourcesContent":["<template>\n <transition-group\n tag=\"ul\"\n :class=\"[\n nsUpload.b('list'),\n nsUpload.bm('list', listType),\n nsUpload.is('disabled', disabled),\n ]\"\n :name=\"nsList.b()\"\n >\n <li\n v-for=\"file in files\"\n :key=\"file.uid || file\"\n :class=\"[\n nsUpload.be('list', 'item'),\n nsUpload.is(file.status),\n { focusing },\n ]\"\n tabindex=\"0\"\n @keydown.delete=\"!disabled && handleRemove(file)\"\n @focus=\"focusing = true\"\n @blur=\"focusing = false\"\n @click=\"onFileClicked\"\n >\n <slot :file=\"file\">\n <img\n v-if=\"\n file.status !== 'uploading' &&\n ['picture-card', 'picture'].includes(listType)\n \"\n :class=\"nsUpload.be('list', 'item-thumbnail')\"\n :src=\"file.url\"\n alt=\"\"\n />\n <a :class=\"nsUpload.be('list', 'item-name')\" @click=\"handleClick(file)\">\n <el-icon :class=\"nsIcon.m('document')\"><document /></el-icon>\n {{ file.name }}\n </a>\n <label :class=\"nsUpload.be('list', 'item-status-label')\">\n <el-icon\n v-if=\"listType === 'text'\"\n :class=\"[nsIcon.m('upload-success'), nsIcon.m('circle-check')]\"\n >\n <circle-check />\n </el-icon>\n <el-icon\n v-else-if=\"['picture-card', 'picture'].includes(listType)\"\n :class=\"[nsIcon.m('upload-success'), nsIcon.m('check')]\"\n >\n <check />\n </el-icon>\n </label>\n <el-icon\n v-if=\"!disabled\"\n :class=\"nsIcon.m('close')\"\n @click=\"handleRemove(file)\"\n >\n <close />\n </el-icon>\n <!-- Due to close btn only appears when li gets focused disappears after li gets blurred, thus keyboard navigation can never reach close btn-->\n <!-- This is a bug which needs to be fixed -->\n <!-- TODO: Fix the incorrect navigation interaction -->\n <i v-if=\"!disabled\" :class=\"nsIcon.m('close-tip')\">{{\n t('el.upload.deleteTip')\n }}</i>\n <el-progress\n v-if=\"file.status === 'uploading'\"\n :type=\"listType === 'picture-card' ? 'circle' : 'line'\"\n :stroke-width=\"listType === 'picture-card' ? 6 : 2\"\n :percentage=\"+file.percentage\"\n style=\"margin-top: 0.5rem\"\n />\n <span\n v-if=\"listType === 'picture-card'\"\n :class=\"nsUpload.be('list', 'item-actions')\"\n >\n <span\n :class=\"nsUpload.be('list', 'item-preview')\"\n @click=\"handlePreview(file)\"\n >\n <el-icon :class=\"nsIcon.m('zoom-in')\"><zoom-in /></el-icon>\n </span>\n <span\n v-if=\"!disabled\"\n :class=\"nsUpload.be('list', 'item-delete')\"\n @click=\"handleRemove(file)\"\n >\n <el-icon :class=\"nsIcon.m('delete')\"><delete /></el-icon>\n </span>\n </span>\n </slot>\n </li>\n </transition-group>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n Document,\n Delete,\n Close,\n ZoomIn,\n Check,\n CircleCheck,\n} from '@element-plus/icons-vue'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElProgress from '@element-plus/components/progress'\n\nimport type { PropType } from 'vue'\nimport type { UploadFile } from './upload.type'\n\nexport default defineComponent({\n name: 'ElUploadList',\n components: {\n ElProgress,\n ElIcon,\n Document,\n Delete,\n Close,\n ZoomIn,\n Check,\n CircleCheck,\n },\n props: {\n files: {\n type: Array as PropType<UploadFile[]>,\n default: () => [] as File[],\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n handlePreview: {\n type: Function as PropType<(file: UploadFile) => void>,\n default: () => NOOP,\n },\n listType: {\n type: String as PropType<'picture' | 'picture-card' | 'text'>,\n default: 'text',\n },\n },\n emits: ['remove'],\n setup(props, { emit }) {\n const { t } = useLocale()\n const nsUpload = useNamespace('upload')\n const nsIcon = useNamespace('icon')\n const nsList = useNamespace('list')\n\n const handleClick = (file: UploadFile) => {\n props.handlePreview(file)\n }\n\n const onFileClicked = (e: Event) => {\n ;(e.target as HTMLElement).focus()\n }\n\n const handleRemove = (file: UploadFile) => {\n emit('remove', file)\n }\n return {\n focusing: ref(false),\n handleClick,\n handleRemove,\n onFileClicked,\n t,\n nsUpload,\n nsIcon,\n nsList,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElProgress","ElIcon","Document","Delete","Close","ZoomIn","Check","CircleCheck","NOOP","useLocale","useNamespace","ref","_createBlock","_TransitionGroup","_normalizeClass","_createElementBlock","_Fragment","_withKeys","_renderSlot","_createElementVNode","_createVNode","_toDisplayString","_createCommentVNode"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.js","sources":["../../../../../../packages/components/upload/src/upload.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b(), ns.m(listType)]\"\n tabindex=\"0\"\n @click=\"handleClick\"\n @keydown.self.enter.space=\"handleKeydown\"\n >\n <template v-if=\"drag\">\n <upload-dragger :disabled=\"disabled\" @file=\"uploadFiles\">\n <slot></slot>\n </upload-dragger>\n </template>\n <template v-else>\n <slot></slot>\n </template>\n <input\n ref=\"inputRef\"\n :class=\"ns.e('input')\"\n type=\"file\"\n :name=\"name\"\n :multiple=\"multiple\"\n :accept=\"accept\"\n @change=\"handleChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { hasOwn } from '@element-plus/utils'\n\nimport { useNamespace } from '@element-plus/hooks'\nimport ajax from './ajax'\nimport UploadDragger from './upload-dragger.vue'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type { ListType, UploadFile, ElFile } from './upload.type'\n\ntype IFileHanlder = (\n file: Nullable<ElFile[]>,\n fileList?: UploadFile[]\n) => unknown\n\ntype AjaxEventListener = (e: ProgressEvent, file: ElFile) => unknown\n\nexport default defineComponent({\n components: {\n UploadDragger,\n },\n props: {\n type: {\n type: String,\n default: '',\n },\n action: {\n type: String,\n required: true,\n },\n name: {\n type: String,\n default: 'file',\n },\n data: {\n type: Object as PropType<Record<string, any>>,\n default: () => null,\n },\n headers: {\n type: Object as PropType<Nullable<Partial<Headers>>>,\n default: () => null,\n },\n method: {\n type: String,\n default: 'post',\n },\n withCredentials: {\n type: Boolean,\n default: false,\n },\n multiple: {\n type: Boolean as PropType<Nullable<boolean>>,\n default: null,\n },\n // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers\n accept: {\n type: String,\n default: '',\n },\n onStart: {\n type: Function as PropType<(file: File) => void>,\n default: NOOP as (file: File) => void,\n },\n onProgress: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n onSuccess: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n onError: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n beforeUpload: {\n type: Function as PropType<\n (file: File) => Promise<File | Blob> | boolean | unknown\n >,\n default: NOOP as (file: File) => void,\n },\n drag: {\n type: Boolean,\n default: false,\n },\n onPreview: {\n type: Function as PropType<IFileHanlder>,\n default: NOOP as IFileHanlder,\n },\n onRemove: {\n type: Function as PropType<\n (file: Nullable<FileList>, rawFile: ElFile) => void\n >,\n default: NOOP as (file: Nullable<FileList>, rawFile: ElFile) => void,\n },\n fileList: {\n type: Array as PropType<UploadFile[]>,\n default: () => [] as UploadFile[],\n },\n autoUpload: {\n type: Boolean,\n default: true,\n },\n listType: {\n type: String as PropType<ListType>,\n default: 'text',\n },\n httpRequest: {\n type: Function as\n | PropType<typeof ajax>\n | PropType<(...args: unknown[]) => Promise<unknown>>,\n default: () => ajax,\n },\n disabled: Boolean,\n limit: {\n type: Number as PropType<Nullable<number>>,\n default: null,\n },\n onExceed: {\n type: Function as PropType<\n (files: FileList, fileList: UploadFile[]) => void\n >,\n default: NOOP,\n },\n },\n setup(props) {\n const reqs = ref({} as Record<string, XMLHttpRequest | Promise<any>>)\n const ns = useNamespace('upload')\n const mouseover = ref(false)\n const inputRef = ref(null as Nullable<HTMLInputElement>)\n\n function uploadFiles(files: FileList) {\n if (props.limit && props.fileList.length + files.length > props.limit) {\n props.onExceed(files, props.fileList)\n return\n }\n let postFiles = Array.from(files)\n if (!props.multiple) {\n postFiles = postFiles.slice(0, 1)\n }\n if (postFiles.length === 0) {\n return\n }\n postFiles.forEach((rawFile) => {\n props.onStart(rawFile)\n if (props.autoUpload) upload(rawFile as ElFile)\n })\n }\n\n function upload(rawFile: ElFile) {\n inputRef.value.value = null\n if (!props.beforeUpload) {\n return post(rawFile)\n }\n const before = props.beforeUpload(rawFile)\n if (before instanceof Promise) {\n before\n .then((processedFile) => {\n const fileType = Object.prototype.toString.call(processedFile)\n if (fileType === '[object File]' || fileType === '[object Blob]') {\n if (fileType === '[object Blob]') {\n processedFile = new File([processedFile], rawFile.name, {\n type: rawFile.type,\n })\n }\n for (const p in rawFile) {\n if (hasOwn(rawFile, p)) {\n processedFile[p] = rawFile[p]\n }\n }\n post(processedFile)\n } else {\n post(rawFile)\n }\n })\n .catch(() => {\n props.onRemove(null, rawFile)\n })\n } else if (before !== false) {\n post(rawFile)\n } else {\n props.onRemove(null, rawFile)\n }\n }\n function abort(file) {\n const _reqs = reqs.value\n if (file) {\n let uid = file\n if (file.uid) uid = file.uid\n if (_reqs[uid]) {\n ;(_reqs[uid] as XMLHttpRequest).abort()\n }\n } else {\n Object.keys(_reqs).forEach((uid) => {\n if (_reqs[uid]) (_reqs[uid] as XMLHttpRequest).abort()\n delete _reqs[uid]\n })\n }\n }\n\n function post(rawFile: ElFile) {\n const { uid } = rawFile\n const options = {\n headers: props.headers,\n withCredentials: props.withCredentials,\n file: rawFile,\n data: props.data,\n method: props.method,\n filename: props.name,\n action: props.action,\n onProgress: (e) => {\n props.onProgress(e, rawFile)\n },\n onSuccess: (res) => {\n props.onSuccess(res, rawFile)\n delete reqs.value[uid]\n },\n onError: (err) => {\n props.onError(err, rawFile)\n delete reqs.value[uid]\n },\n }\n const req = props.httpRequest(options)\n reqs.value[uid] = req\n if (req instanceof Promise) {\n req.then(options.onSuccess, options.onError)\n }\n }\n\n function handleChange(e: DragEvent) {\n const files = (e.target as HTMLInputElement).files\n if (!files) return\n uploadFiles(files)\n }\n\n function handleClick() {\n if (!props.disabled) {\n inputRef.value.value = null\n inputRef.value.click()\n }\n }\n\n function handleKeydown() {\n handleClick()\n }\n\n return {\n ns,\n reqs,\n mouseover,\n inputRef,\n abort,\n post,\n handleChange,\n handleClick,\n handleKeydown,\n upload,\n uploadFiles,\n }\n },\n})\n</script>\n"],"names":["defineComponent","UploadDragger","NOOP","ajax","ref","useNamespace","hasOwn","_openBlock","_withCtx","_renderSlot","_normalizeClass"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"upload.js","sources":["../../../../../../packages/components/upload/src/upload.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b(), ns.m(listType)]\"\n tabindex=\"0\"\n @click=\"handleClick\"\n @keydown.self.enter.space=\"handleKeydown\"\n >\n <template v-if=\"drag\">\n <upload-dragger :disabled=\"disabled\" @file=\"uploadFiles\">\n <slot></slot>\n </upload-dragger>\n </template>\n <template v-else>\n <slot></slot>\n </template>\n <input\n ref=\"inputRef\"\n :class=\"ns.e('input')\"\n type=\"file\"\n :name=\"name\"\n :multiple=\"multiple\"\n :accept=\"accept\"\n @change=\"handleChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { hasOwn } from '@element-plus/utils'\n\nimport { useNamespace } from '@element-plus/hooks'\nimport ajax from './ajax'\nimport UploadDragger from './upload-dragger.vue'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\nimport type { ListType, UploadFile, ElFile } from './upload.type'\n\ntype IFileHanlder = (\n file: Nullable<ElFile[]>,\n fileList?: UploadFile[]\n) => unknown\n\ntype AjaxEventListener = (e: ProgressEvent, file: ElFile) => unknown\n\nexport default defineComponent({\n components: {\n UploadDragger,\n },\n props: {\n type: {\n type: String,\n default: '',\n },\n action: {\n type: String,\n required: true,\n },\n name: {\n type: String,\n default: 'file',\n },\n data: {\n type: Object as PropType<Record<string, any>>,\n default: () => null,\n },\n headers: {\n type: Object as PropType<Nullable<Partial<Headers>>>,\n default: () => null,\n },\n method: {\n type: String,\n default: 'post',\n },\n withCredentials: {\n type: Boolean,\n default: false,\n },\n multiple: {\n type: Boolean as PropType<Nullable<boolean>>,\n default: null,\n },\n // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers\n accept: {\n type: String,\n default: '',\n },\n onStart: {\n type: Function as PropType<(file: File) => void>,\n default: NOOP as (file: File) => void,\n },\n onProgress: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n onSuccess: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n onError: {\n type: Function as PropType<AjaxEventListener>,\n default: NOOP as AjaxEventListener,\n },\n beforeUpload: {\n type: Function as PropType<\n (file: File) => Promise<File | Blob> | boolean | unknown\n >,\n default: NOOP as (file: File) => void,\n },\n drag: {\n type: Boolean,\n default: false,\n },\n onPreview: {\n type: Function as PropType<IFileHanlder>,\n default: NOOP as IFileHanlder,\n },\n onRemove: {\n type: Function as PropType<\n (file: Nullable<FileList>, rawFile: ElFile) => void\n >,\n default: NOOP as (file: Nullable<FileList>, rawFile: ElFile) => void,\n },\n fileList: {\n type: Array as PropType<UploadFile[]>,\n default: () => [] as UploadFile[],\n },\n autoUpload: {\n type: Boolean,\n default: true,\n },\n listType: {\n type: String as PropType<ListType>,\n default: 'text',\n },\n httpRequest: {\n type: Function as\n | PropType<typeof ajax>\n | PropType<(...args: unknown[]) => Promise<unknown>>,\n default: () => ajax,\n },\n disabled: Boolean,\n limit: {\n type: Number as PropType<Nullable<number>>,\n default: null,\n },\n onExceed: {\n type: Function as PropType<\n (files: FileList, fileList: UploadFile[]) => void\n >,\n default: NOOP,\n },\n },\n setup(props) {\n const reqs = ref({} as Record<string, XMLHttpRequest | Promise<any>>)\n const ns = useNamespace('upload')\n const mouseover = ref(false)\n const inputRef = ref(null as Nullable<HTMLInputElement>)\n\n function uploadFiles(files: FileList) {\n if (props.limit && props.fileList.length + files.length > props.limit) {\n props.onExceed(files, props.fileList)\n return\n }\n let postFiles = Array.from(files)\n if (!props.multiple) {\n postFiles = postFiles.slice(0, 1)\n }\n if (postFiles.length === 0) {\n return\n }\n postFiles.forEach((rawFile) => {\n props.onStart(rawFile)\n if (props.autoUpload) upload(rawFile as ElFile)\n })\n }\n\n function upload(rawFile: ElFile) {\n inputRef.value.value = null\n if (!props.beforeUpload) {\n return post(rawFile)\n }\n const before = props.beforeUpload(rawFile)\n if (before instanceof Promise) {\n before\n .then((processedFile) => {\n const fileType = Object.prototype.toString.call(processedFile)\n if (fileType === '[object File]' || fileType === '[object Blob]') {\n if (fileType === '[object Blob]') {\n processedFile = new File([processedFile], rawFile.name, {\n type: rawFile.type,\n })\n }\n for (const p in rawFile) {\n if (hasOwn(rawFile, p)) {\n processedFile[p] = rawFile[p]\n }\n }\n post(processedFile)\n } else {\n post(rawFile)\n }\n })\n .catch(() => {\n props.onRemove(null, rawFile)\n })\n } else if (before !== false) {\n post(rawFile)\n } else {\n props.onRemove(null, rawFile)\n }\n }\n function abort(file) {\n const _reqs = reqs.value\n if (file) {\n let uid = file\n if (file.uid) uid = file.uid\n if (_reqs[uid]) {\n ;(_reqs[uid] as XMLHttpRequest).abort()\n }\n } else {\n Object.keys(_reqs).forEach((uid) => {\n if (_reqs[uid]) (_reqs[uid] as XMLHttpRequest).abort()\n delete _reqs[uid]\n })\n }\n }\n\n function post(rawFile: ElFile) {\n const { uid } = rawFile\n const options = {\n headers: props.headers,\n withCredentials: props.withCredentials,\n file: rawFile,\n data: props.data,\n method: props.method,\n filename: props.name,\n action: props.action,\n onProgress: (e) => {\n props.onProgress(e, rawFile)\n },\n onSuccess: (res) => {\n props.onSuccess(res, rawFile)\n delete reqs.value[uid]\n },\n onError: (err) => {\n props.onError(err, rawFile)\n delete reqs.value[uid]\n },\n }\n const req = props.httpRequest(options)\n reqs.value[uid] = req\n if (req instanceof Promise) {\n req.then(options.onSuccess, options.onError)\n }\n }\n\n function handleChange(e: DragEvent) {\n const files = (e.target as HTMLInputElement).files\n if (!files) return\n uploadFiles(files)\n }\n\n function handleClick() {\n if (!props.disabled) {\n inputRef.value.value = null\n inputRef.value.click()\n }\n }\n\n function handleKeydown() {\n handleClick()\n }\n\n return {\n ns,\n reqs,\n mouseover,\n inputRef,\n abort,\n post,\n handleChange,\n handleClick,\n handleKeydown,\n upload,\n uploadFiles,\n }\n },\n})\n</script>\n"],"names":["defineComponent","UploadDragger","NOOP","ajax","ref","useNamespace","hasOwn","_createElementBlock","_normalizeClass","_createBlock","_renderSlot","_createElementVNode"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visual-hidden.js","sources":["../../../../../../packages/components/visual-hidden/src/visual-hidden.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\" :style=\"computedStyle\"> </span>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\n\nexport default defineComponent({\n name: 'ElVisuallyHidden',\n props: {\n style: {\n type: [String, Object, Array],\n },\n },\n setup(props) {\n return {\n computedStyle: computed(() => {\n return [\n props.style,\n {\n position: 'absolute',\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n wordWrap: 'normal',\n },\n ] as any\n }),\n }\n },\n})\n</script>\n"],"names":["defineComponent","computed"],"mappings":";;;;;;;AAOA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,QAAQ;AAAA;AAAA;AAAA,EAG3B,MAAM,OAAO;AACX,WAAO;AAAA,MACL,eAAeC,aAAS,MAAM;AAC5B,eAAO;AAAA,UACL,MAAM;AAAA,UACN;AAAA,YACE,UAAU;AAAA,YACV,QAAQ;AAAA,YACR,OAAO;AAAA,YACP,QAAQ;AAAA,YACR,SAAS;AAAA,YACT,QAAQ;AAAA,YACR,UAAU;AAAA,YACV,MAAM;AAAA,YACN,YAAY;AAAA,YACZ,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA
|
|
1
|
+
{"version":3,"file":"visual-hidden.js","sources":["../../../../../../packages/components/visual-hidden/src/visual-hidden.vue"],"sourcesContent":["<template>\n <span v-bind=\"$attrs\" :style=\"computedStyle\"> </span>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\n\nexport default defineComponent({\n name: 'ElVisuallyHidden',\n props: {\n style: {\n type: [String, Object, Array],\n },\n },\n setup(props) {\n return {\n computedStyle: computed(() => {\n return [\n props.style,\n {\n position: 'absolute',\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n wordWrap: 'normal',\n },\n ] as any\n }),\n }\n },\n})\n</script>\n"],"names":["defineComponent","computed","_createElementBlock","_mergeProps"],"mappings":";;;;;;;AAOA,MAAK,YAAaA,oBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,QAAQ;AAAA;AAAA;AAAA,EAG3B,MAAM,OAAO;AACX,WAAO;AAAA,MACL,eAAeC,aAAS,MAAM;AAC5B,eAAO;AAAA,UACL,MAAM;AAAA,UACN;AAAA,YACE,UAAU;AAAA,YACV,QAAQ;AAAA,YACR,OAAO;AAAA,YACP,QAAQ;AAAA,YACR,SAAS;AAAA,YACT,QAAQ;AAAA,YACR,UAAU;AAAA,YACV,MAAM;AAAA,YACN,YAAY;AAAA,YACZ,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;0BA5BpBC,uBAAqD,QAArDC,eAAc,KAAuC,QAAjC,EAAG,OAAO,uBAAa;AAAA;;;;;"}
|
package/lib/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "0.0.
|
|
1
|
+
export declare const version = "0.0.20220220";
|
package/lib/version.js
CHANGED
package/lib/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.
|
|
1
|
+
{"version":3,"file":"version.js","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220220'\n"],"names":[],"mappings":";;;;AAAY,MAAC,OAAO,GAAG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@element-plus/nightly",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.20220220",
|
|
4
4
|
"description": "A Component Library for Vue 3",
|
|
5
5
|
"homepage": "https://element-plus.org/",
|
|
6
6
|
"keywords": [
|
|
@@ -77,5 +77,5 @@
|
|
|
77
77
|
"not ie 11",
|
|
78
78
|
"not op_mini all"
|
|
79
79
|
],
|
|
80
|
-
"gitHead": "
|
|
80
|
+
"gitHead": "4c4be8f9517dfe61421b55fe2afad7e25a37197b"
|
|
81
81
|
}
|