element-plus 2.1.9 → 2.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/attributes.json +1 -1
- package/dist/index.css +1 -1
- package/dist/index.full.js +678 -598
- package/dist/index.full.min.js +11 -17
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +11 -17
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +677 -597
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.js.map +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.min.mjs.map +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.js.map +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.min.mjs.map +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.js.map +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.min.mjs.map +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.js.map +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.min.mjs.map +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.js.map +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.min.mjs.map +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.js.map +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.min.mjs.map +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.js.map +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.min.mjs.map +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.js.map +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.min.mjs.map +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.js.map +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.min.mjs.map +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.js.map +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.min.mjs.map +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.js.map +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.min.mjs.map +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.js.map +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.min.mjs.map +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.js.map +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.min.mjs.map +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.js.map +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.min.mjs.map +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.js.map +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.min.mjs.map +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.js.map +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.min.mjs.map +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.js.map +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.min.mjs.map +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.js.map +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.min.mjs.map +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.js.map +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.min.mjs.map +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.js.map +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.min.mjs.map +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.js.map +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.min.mjs.map +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.js.map +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.min.mjs.map +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.js.map +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.min.mjs.map +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.js.map +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.min.mjs.map +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.js.map +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.min.mjs.map +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.js.map +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.min.mjs.map +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.js.map +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.min.mjs.map +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.js.map +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.min.mjs.map +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.js.map +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.min.mjs.map +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.js.map +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.min.mjs.map +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.js.map +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.min.mjs.map +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.js.map +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.min.mjs.map +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.js.map +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.min.mjs.map +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.js.map +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.min.mjs.map +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.js.map +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.min.mjs.map +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.js.map +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.min.mjs.map +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.js.map +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.min.mjs.map +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.js.map +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.min.mjs.map +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.js.map +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.min.mjs.map +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.js.map +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.min.mjs.map +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.js.map +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.min.mjs.map +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.js.map +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.min.mjs.map +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.js.map +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.min.mjs.map +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.js.map +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.min.mjs.map +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.js.map +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.min.mjs.map +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.js.map +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.min.mjs.map +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.js.map +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.min.mjs.map +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/autocomplete/index.d.ts +0 -4599
- package/es/components/autocomplete/src/autocomplete.mjs +1 -1
- package/es/components/autocomplete/src/autocomplete.vue.d.ts +0 -4599
- package/es/components/cascader/index.d.ts +0 -6132
- package/es/components/cascader/src/index.mjs +1 -1
- package/es/components/cascader/src/index.vue.d.ts +0 -3066
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +2 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown.mjs +1 -1
- package/es/components/empty/src/img-empty.mjs +7 -17
- package/es/components/empty/src/img-empty.mjs.map +1 -1
- package/es/components/form/index.d.ts +4 -6
- package/es/components/form/src/form-item.vue.d.ts +2 -3
- package/es/components/form/src/form-item2.mjs +22 -22
- package/es/components/form/src/form-item2.mjs.map +1 -1
- package/es/components/form/src/form-label-wrap.mjs +6 -6
- package/es/components/form/src/form-label-wrap.mjs.map +1 -1
- package/es/components/index.mjs +1 -1
- package/es/components/input/index.d.ts +0 -1533
- package/es/components/input/src/input.vue.d.ts +6 -1539
- package/es/components/input/src/input2.mjs +101 -124
- package/es/components/input/src/input2.mjs.map +1 -1
- package/es/components/input-number/index.d.ts +0 -3066
- package/es/components/input-number/src/input-number.vue.d.ts +0 -3066
- package/es/components/loading/src/loading.mjs +3 -1
- package/es/components/loading/src/loading.mjs.map +1 -1
- package/es/components/loading/src/service.mjs +1 -2
- package/es/components/loading/src/service.mjs.map +1 -1
- package/es/components/menu/index.d.ts +84 -0
- package/es/components/menu/src/menu-collapse-transition.mjs +10 -7
- package/es/components/menu/src/menu-collapse-transition.mjs.map +1 -1
- package/es/components/menu/src/menu-item-group.vue.d.ts +14 -0
- package/es/components/menu/src/menu-item-group2.mjs +12 -7
- package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
- package/es/components/menu/src/menu-item.vue.d.ts +28 -0
- package/es/components/menu/src/menu-item2.mjs +15 -7
- package/es/components/menu/src/menu-item2.mjs.map +1 -1
- package/es/components/menu/src/menu.mjs +10 -6
- package/es/components/menu/src/menu.mjs.map +1 -1
- package/es/components/menu/src/sub-menu.mjs +17 -14
- package/es/components/menu/src/sub-menu.mjs.map +1 -1
- package/es/components/menu/src/utils/menu-bar.d.ts +2 -2
- package/es/components/menu/src/utils/menu-bar.mjs +4 -4
- package/es/components/menu/src/utils/menu-bar.mjs.map +1 -1
- package/es/components/menu/src/utils/menu-item.d.ts +2 -2
- package/es/components/menu/src/utils/menu-item.mjs +4 -4
- package/es/components/menu/src/utils/menu-item.mjs.map +1 -1
- package/es/components/message-box/src/index.mjs +56 -47
- package/es/components/message-box/src/index.mjs.map +1 -1
- package/es/components/message-box/src/index.vue.d.ts +17 -1
- package/es/components/popconfirm/src/popconfirm.mjs +1 -1
- package/es/components/popover/src/popover.mjs +1 -1
- package/es/components/popper/src/content.vue.d.ts +1 -1
- package/es/components/popper/src/content2.mjs +3 -3
- package/es/components/popper/src/content2.mjs.map +1 -1
- package/es/components/select/src/select.mjs +4 -6
- package/es/components/select/src/select.mjs.map +1 -1
- package/es/components/select/src/useSelect.mjs +1 -2
- package/es/components/select/src/useSelect.mjs.map +1 -1
- package/es/components/select-v2/src/defaults.mjs +1 -1
- package/es/components/table/src/table/defaults.d.ts +1 -1
- package/es/components/table/src/table/defaults.mjs.map +1 -1
- package/es/components/table-v2/index.d.ts +1 -0
- package/es/components/table-v2/src/cell.d.ts +3 -3
- package/es/components/table-v2/src/cell.mjs +5 -3
- package/es/components/table-v2/src/cell.mjs.map +1 -1
- package/es/components/table-v2/src/column-resizer.d.ts +14 -0
- package/es/components/table-v2/src/column-resizer.mjs +24 -0
- package/es/components/table-v2/src/column-resizer.mjs.map +1 -0
- package/es/components/table-v2/src/column.d.ts +4 -6
- package/es/components/table-v2/src/column.mjs +2 -6
- package/es/components/table-v2/src/column.mjs.map +1 -1
- package/es/components/table-v2/src/common.d.ts +1 -2
- package/es/components/table-v2/src/common.mjs.map +1 -1
- package/es/components/table-v2/src/constants.d.ts +13 -1
- package/es/components/table-v2/src/constants.mjs +16 -2
- package/es/components/table-v2/src/constants.mjs.map +1 -1
- package/es/components/table-v2/src/expand-icon.d.ts +11 -0
- package/es/components/table-v2/src/grid.d.ts +18 -22
- package/es/components/table-v2/src/grid.mjs +6 -4
- package/es/components/table-v2/src/grid.mjs.map +1 -1
- package/es/components/table-v2/src/header-cell.d.ts +1 -19
- package/es/components/table-v2/src/header-row.d.ts +1 -20
- package/es/components/table-v2/src/header-row.mjs +0 -1
- package/es/components/table-v2/src/header-row.mjs.map +1 -1
- package/es/components/table-v2/src/header.d.ts +1 -19
- package/es/components/table-v2/src/private.d.ts +1 -0
- package/es/components/table-v2/src/private.mjs +4 -0
- package/es/components/table-v2/src/private.mjs.map +1 -0
- package/es/components/table-v2/src/renderers/cell.d.ts +10 -0
- package/es/components/table-v2/src/renderers/header-cell.d.ts +10 -0
- package/es/components/table-v2/src/renderers/header.d.ts +9 -0
- package/es/components/table-v2/src/renderers/left-table.d.ts +8 -0
- package/es/components/table-v2/src/renderers/main-table.d.ts +8 -0
- package/es/components/table-v2/src/renderers/right-table.d.ts +8 -0
- package/es/components/table-v2/src/renderers/row.d.ts +10 -0
- package/es/components/table-v2/src/row.d.ts +8 -20
- package/es/components/table-v2/src/row.mjs +4 -1
- package/es/components/table-v2/src/row.mjs.map +1 -1
- package/es/components/table-v2/src/sort-icon.d.ts +8 -0
- package/es/components/table-v2/src/table-cell.d.ts +8 -18
- package/es/components/table-v2/src/table-column-resizer.d.ts +31 -0
- package/es/components/table-v2/src/table-grid.d.ts +45 -47
- package/es/components/table-v2/src/table-header-cell.d.ts +7 -47
- package/es/components/table-v2/src/table-header-row.d.ts +15 -40
- package/es/components/table-v2/src/table-header.d.ts +14 -39
- package/es/components/table-v2/src/table-row.d.ts +31 -41
- package/es/components/table-v2/src/table-v2.d.ts +151 -0
- package/es/components/table-v2/src/table.d.ts +33 -32
- package/es/components/table-v2/src/table.mjs +36 -4
- package/es/components/table-v2/src/table.mjs.map +1 -1
- package/es/components/table-v2/src/tokens.d.ts +2 -1
- package/es/components/table-v2/src/tokens.mjs.map +1 -1
- package/es/components/table-v2/src/types.d.ts +8 -11
- package/es/components/table-v2/src/use-columns.d.ts +18 -0
- package/es/components/table-v2/src/{useTable.mjs → use-columns.mjs} +43 -36
- package/es/components/table-v2/src/use-columns.mjs.map +1 -0
- package/es/components/table-v2/src/use-table.d.ts +58 -0
- package/es/components/table-v2/src/use-table.mjs +304 -0
- package/es/components/table-v2/src/use-table.mjs.map +1 -0
- package/es/components/table-v2/src/utils.d.ts +7 -0
- package/es/components/table-v2/src/utils.mjs +23 -0
- package/es/components/table-v2/src/utils.mjs.map +1 -0
- package/es/components/time-select/index.d.ts +28 -0
- package/es/components/time-select/src/time-select.mjs +7 -3
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/time-select/src/time-select.vue.d.ts +14 -0
- package/es/components/tooltip/index.mjs +2 -2
- package/es/components/tooltip/src/content.mjs +1 -1
- package/es/components/tooltip/src/content.vue.d.ts +2 -2
- package/es/components/tooltip/src/tooltip.mjs +174 -62
- package/es/components/tooltip/src/tooltip.mjs.map +1 -1
- package/es/components/tooltip/src/tooltip2.mjs +62 -174
- package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
- package/es/components/tooltip/src/trigger.mjs +1 -1
- package/es/components/tree-select/src/tree-select.mjs +1 -0
- package/es/components/tree-select/src/tree-select.mjs.map +1 -1
- package/es/components/tree-select/src/tree.mjs +16 -3
- package/es/components/tree-select/src/tree.mjs.map +1 -1
- package/es/components/virtual-list/index.d.ts +2 -1
- package/es/components/virtual-list/index.mjs +1 -1
- package/es/components/virtual-list/src/builders/build-grid.d.ts +18 -9
- package/es/components/virtual-list/src/builders/build-grid.mjs +37 -9
- package/es/components/virtual-list/src/builders/build-grid.mjs.map +1 -1
- package/es/components/virtual-list/src/builders/build-list.d.ts +16 -2
- package/es/components/virtual-list/src/builders/build-list.mjs +7 -5
- package/es/components/virtual-list/src/builders/build-list.mjs.map +1 -1
- package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +29 -5
- package/es/components/virtual-list/src/components/dynamic-size-grid.mjs +32 -2
- package/es/components/virtual-list/src/components/dynamic-size-grid.mjs.map +1 -1
- package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +16 -2
- package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +15 -3
- package/es/components/virtual-list/src/components/fixed-size-list.d.ts +16 -2
- package/es/components/virtual-list/src/components/scrollbar.d.ts +14 -0
- package/es/components/virtual-list/src/components/scrollbar.mjs +27 -28
- package/es/components/virtual-list/src/components/scrollbar.mjs.map +1 -1
- package/es/components/virtual-list/src/defaults.d.ts +1 -1
- package/es/components/virtual-list/src/defaults.mjs +1 -1
- package/es/components/virtual-list/src/defaults.mjs.map +1 -1
- package/es/components/virtual-list/src/hooks/use-grid-wheel.mjs +7 -2
- package/es/components/virtual-list/src/hooks/use-grid-wheel.mjs.map +1 -1
- package/es/components/virtual-list/src/props.d.ts +9 -0
- package/es/components/virtual-list/src/props.mjs +15 -0
- package/es/components/virtual-list/src/props.mjs.map +1 -1
- package/es/components/virtual-list/src/types.d.ts +5 -0
- package/es/index.mjs +1 -1
- package/es/utils/animation.mjs +3 -1
- package/es/utils/animation.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/index.d.ts +0 -4599
- package/lib/components/autocomplete/src/autocomplete.js +1 -1
- package/lib/components/autocomplete/src/autocomplete.vue.d.ts +0 -4599
- package/lib/components/cascader/index.d.ts +0 -6132
- package/lib/components/cascader/src/index.js +1 -1
- package/lib/components/cascader/src/index.vue.d.ts +0 -3066
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +2 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
- package/lib/components/dropdown/src/dropdown.js +1 -1
- package/lib/components/empty/src/img-empty.js +7 -17
- package/lib/components/empty/src/img-empty.js.map +1 -1
- package/lib/components/form/index.d.ts +4 -6
- package/lib/components/form/src/form-item.vue.d.ts +2 -3
- package/lib/components/form/src/form-item2.js +22 -22
- package/lib/components/form/src/form-item2.js.map +1 -1
- package/lib/components/form/src/form-label-wrap.js +6 -6
- package/lib/components/form/src/form-label-wrap.js.map +1 -1
- package/lib/components/index.js +1 -1
- package/lib/components/input/index.d.ts +0 -1533
- package/lib/components/input/src/input.vue.d.ts +6 -1539
- package/lib/components/input/src/input2.js +100 -123
- package/lib/components/input/src/input2.js.map +1 -1
- package/lib/components/input-number/index.d.ts +0 -3066
- package/lib/components/input-number/src/input-number.vue.d.ts +0 -3066
- package/lib/components/loading/src/loading.js +3 -1
- package/lib/components/loading/src/loading.js.map +1 -1
- package/lib/components/loading/src/service.js +1 -2
- package/lib/components/loading/src/service.js.map +1 -1
- package/lib/components/menu/index.d.ts +84 -0
- package/lib/components/menu/src/menu-collapse-transition.js +10 -7
- package/lib/components/menu/src/menu-collapse-transition.js.map +1 -1
- package/lib/components/menu/src/menu-item-group.vue.d.ts +14 -0
- package/lib/components/menu/src/menu-item-group2.js +11 -6
- package/lib/components/menu/src/menu-item-group2.js.map +1 -1
- package/lib/components/menu/src/menu-item.vue.d.ts +28 -0
- package/lib/components/menu/src/menu-item2.js +15 -7
- package/lib/components/menu/src/menu-item2.js.map +1 -1
- package/lib/components/menu/src/menu.js +14 -10
- package/lib/components/menu/src/menu.js.map +1 -1
- package/lib/components/menu/src/sub-menu.js +23 -20
- package/lib/components/menu/src/sub-menu.js.map +1 -1
- package/lib/components/menu/src/utils/menu-bar.d.ts +2 -2
- package/lib/components/menu/src/utils/menu-bar.js +4 -4
- package/lib/components/menu/src/utils/menu-bar.js.map +1 -1
- package/lib/components/menu/src/utils/menu-item.d.ts +2 -2
- package/lib/components/menu/src/utils/menu-item.js +4 -4
- package/lib/components/menu/src/utils/menu-item.js.map +1 -1
- package/lib/components/message-box/src/index.js +71 -62
- package/lib/components/message-box/src/index.js.map +1 -1
- package/lib/components/message-box/src/index.vue.d.ts +17 -1
- package/lib/components/popconfirm/src/popconfirm.js +1 -1
- package/lib/components/popover/src/popover.js +1 -1
- package/lib/components/popper/src/content.vue.d.ts +1 -1
- package/lib/components/popper/src/content2.js +3 -3
- package/lib/components/popper/src/content2.js.map +1 -1
- package/lib/components/select/src/select.js +3 -5
- package/lib/components/select/src/select.js.map +1 -1
- package/lib/components/select/src/useSelect.js +1 -2
- package/lib/components/select/src/useSelect.js.map +1 -1
- package/lib/components/select-v2/src/defaults.js +1 -1
- package/lib/components/table/src/table/defaults.d.ts +1 -1
- package/lib/components/table/src/table/defaults.js.map +1 -1
- package/lib/components/table-v2/index.d.ts +1 -0
- package/lib/components/table-v2/src/cell.d.ts +3 -3
- package/lib/components/table-v2/src/cell.js +5 -3
- package/lib/components/table-v2/src/cell.js.map +1 -1
- package/lib/components/table-v2/src/column-resizer.d.ts +14 -0
- package/lib/components/table-v2/src/column-resizer.js +28 -0
- package/lib/components/table-v2/src/column-resizer.js.map +1 -0
- package/lib/components/table-v2/src/column.d.ts +4 -6
- package/lib/components/table-v2/src/column.js +2 -6
- package/lib/components/table-v2/src/column.js.map +1 -1
- package/lib/components/table-v2/src/common.d.ts +1 -2
- package/lib/components/table-v2/src/common.js.map +1 -1
- package/lib/components/table-v2/src/constants.d.ts +13 -1
- package/lib/components/table-v2/src/constants.js +18 -1
- package/lib/components/table-v2/src/constants.js.map +1 -1
- package/lib/components/table-v2/src/expand-icon.d.ts +11 -0
- package/lib/components/table-v2/src/grid.d.ts +18 -22
- package/lib/components/table-v2/src/grid.js +5 -3
- package/lib/components/table-v2/src/grid.js.map +1 -1
- package/lib/components/table-v2/src/header-cell.d.ts +1 -19
- package/lib/components/table-v2/src/header-row.d.ts +1 -20
- package/lib/components/table-v2/src/header-row.js +0 -1
- package/lib/components/table-v2/src/header-row.js.map +1 -1
- package/lib/components/table-v2/src/header.d.ts +1 -19
- package/lib/components/table-v2/src/private.d.ts +1 -0
- package/lib/components/table-v2/src/private.js +8 -0
- package/lib/components/table-v2/src/private.js.map +1 -0
- package/lib/components/table-v2/src/renderers/cell.d.ts +10 -0
- package/lib/components/table-v2/src/renderers/header-cell.d.ts +10 -0
- package/lib/components/table-v2/src/renderers/header.d.ts +9 -0
- package/lib/components/table-v2/src/renderers/left-table.d.ts +8 -0
- package/lib/components/table-v2/src/renderers/main-table.d.ts +8 -0
- package/lib/components/table-v2/src/renderers/right-table.d.ts +8 -0
- package/lib/components/table-v2/src/renderers/row.d.ts +10 -0
- package/lib/components/table-v2/src/row.d.ts +8 -20
- package/lib/components/table-v2/src/row.js +4 -1
- package/lib/components/table-v2/src/row.js.map +1 -1
- package/lib/components/table-v2/src/sort-icon.d.ts +8 -0
- package/lib/components/table-v2/src/table-cell.d.ts +8 -18
- package/lib/components/table-v2/src/table-column-resizer.d.ts +31 -0
- package/lib/components/table-v2/src/table-grid.d.ts +45 -47
- package/lib/components/table-v2/src/table-header-cell.d.ts +7 -47
- package/lib/components/table-v2/src/table-header-row.d.ts +15 -40
- package/lib/components/table-v2/src/table-header.d.ts +14 -39
- package/lib/components/table-v2/src/table-row.d.ts +31 -41
- package/lib/components/table-v2/src/table-v2.d.ts +151 -0
- package/lib/components/table-v2/src/table.d.ts +33 -32
- package/lib/components/table-v2/src/table.js +36 -4
- package/lib/components/table-v2/src/table.js.map +1 -1
- package/lib/components/table-v2/src/tokens.d.ts +2 -1
- package/lib/components/table-v2/src/tokens.js.map +1 -1
- package/lib/components/table-v2/src/types.d.ts +8 -11
- package/lib/components/table-v2/src/use-columns.d.ts +18 -0
- package/lib/components/table-v2/src/{useTable.js → use-columns.js} +42 -36
- package/lib/components/table-v2/src/use-columns.js.map +1 -0
- package/lib/components/table-v2/src/use-table.d.ts +58 -0
- package/lib/components/table-v2/src/use-table.js +308 -0
- package/lib/components/table-v2/src/use-table.js.map +1 -0
- package/lib/components/table-v2/src/utils.d.ts +7 -0
- package/lib/components/table-v2/src/utils.js +30 -0
- package/lib/components/table-v2/src/utils.js.map +1 -0
- package/lib/components/time-select/index.d.ts +28 -0
- package/lib/components/time-select/src/time-select.js +6 -2
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/time-select/src/time-select.vue.d.ts +14 -0
- package/lib/components/tooltip/index.js +2 -2
- package/lib/components/tooltip/src/content.js +1 -1
- package/lib/components/tooltip/src/content.vue.d.ts +2 -2
- package/lib/components/tooltip/src/tooltip.js +174 -64
- package/lib/components/tooltip/src/tooltip.js.map +1 -1
- package/lib/components/tooltip/src/tooltip2.js +64 -174
- package/lib/components/tooltip/src/tooltip2.js.map +1 -1
- package/lib/components/tooltip/src/trigger.js +1 -1
- package/lib/components/tree-select/src/tree-select.js +1 -0
- package/lib/components/tree-select/src/tree-select.js.map +1 -1
- package/lib/components/tree-select/src/tree.js +16 -3
- package/lib/components/tree-select/src/tree.js.map +1 -1
- package/lib/components/virtual-list/index.d.ts +2 -1
- package/lib/components/virtual-list/index.js +1 -1
- package/lib/components/virtual-list/src/builders/build-grid.d.ts +18 -9
- package/lib/components/virtual-list/src/builders/build-grid.js +36 -8
- package/lib/components/virtual-list/src/builders/build-grid.js.map +1 -1
- package/lib/components/virtual-list/src/builders/build-list.d.ts +16 -2
- package/lib/components/virtual-list/src/builders/build-list.js +7 -5
- package/lib/components/virtual-list/src/builders/build-list.js.map +1 -1
- package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +29 -5
- package/lib/components/virtual-list/src/components/dynamic-size-grid.js +32 -2
- package/lib/components/virtual-list/src/components/dynamic-size-grid.js.map +1 -1
- package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +16 -2
- package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +15 -3
- package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +16 -2
- package/lib/components/virtual-list/src/components/scrollbar.d.ts +14 -0
- package/lib/components/virtual-list/src/components/scrollbar.js +26 -27
- package/lib/components/virtual-list/src/components/scrollbar.js.map +1 -1
- package/lib/components/virtual-list/src/defaults.d.ts +1 -1
- package/lib/components/virtual-list/src/defaults.js +1 -1
- package/lib/components/virtual-list/src/defaults.js.map +1 -1
- package/lib/components/virtual-list/src/hooks/use-grid-wheel.js +7 -2
- package/lib/components/virtual-list/src/hooks/use-grid-wheel.js.map +1 -1
- package/lib/components/virtual-list/src/props.d.ts +9 -0
- package/lib/components/virtual-list/src/props.js +15 -0
- package/lib/components/virtual-list/src/props.js.map +1 -1
- package/lib/components/virtual-list/src/types.d.ts +5 -0
- package/lib/index.js +1 -1
- package/lib/utils/animation.js +3 -1
- package/lib/utils/animation.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 +6 -6
- package/theme-chalk/el-badge.css +1 -1
- package/theme-chalk/el-cascader.css +1 -1
- package/theme-chalk/el-check-tag.css +1 -1
- package/theme-chalk/el-color-picker.css +1 -1
- package/theme-chalk/el-date-picker.css +1 -1
- package/theme-chalk/el-form.css +1 -1
- package/theme-chalk/el-input-number.css +1 -1
- package/theme-chalk/el-input.css +1 -1
- package/theme-chalk/el-option.css +1 -1
- package/theme-chalk/el-result.css +1 -1
- package/theme-chalk/el-select.css +1 -1
- package/theme-chalk/el-table-v2.css +1 -0
- package/theme-chalk/el-tag.css +1 -1
- package/theme-chalk/el-time-picker.css +1 -1
- package/theme-chalk/el-time-select.css +1 -1
- package/theme-chalk/el-upload.css +1 -1
- package/theme-chalk/el-virtual-list.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/badge.scss +14 -12
- package/theme-chalk/src/cascader.scss +8 -13
- package/theme-chalk/src/check-tag.scss +1 -1
- package/theme-chalk/src/color-picker.scss +45 -6
- package/theme-chalk/src/common/var.scss +0 -2
- package/theme-chalk/src/dark/css-vars.scss +4 -0
- package/theme-chalk/src/dark/var.scss +19 -0
- package/theme-chalk/src/date-picker/picker.scss +12 -0
- package/theme-chalk/src/date-picker/time-spinner.scss +1 -1
- package/theme-chalk/src/form.scss +4 -2
- package/theme-chalk/src/index.scss +1 -0
- package/theme-chalk/src/input-number.scss +9 -7
- package/theme-chalk/src/input.scss +109 -168
- package/theme-chalk/src/option.scss +0 -4
- package/theme-chalk/src/result.scss +0 -2
- package/theme-chalk/src/select/common.scss +1 -1
- package/theme-chalk/src/select.scss +12 -6
- package/theme-chalk/src/table-v2.scss +189 -0
- package/theme-chalk/src/tag.scss +24 -20
- package/theme-chalk/src/upload.scss +2 -2
- package/theme-chalk/src/virtual-list.scss +3 -0
- package/web-types.json +1 -1
- package/es/components/table-v2/src/useTable.d.ts +0 -13
- package/es/components/table-v2/src/useTable.mjs.map +0 -1
- package/lib/components/table-v2/src/useTable.d.ts +0 -13
- package/lib/components/table-v2/src/useTable.js.map +0 -1
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { CSSProperties } from 'vue';
|
|
2
|
+
import type { FixedDirection, KeyType } from './types';
|
|
3
|
+
import type { TableV2Props } from './table';
|
|
4
|
+
import type { onRowRenderedParams } from './grid';
|
|
5
|
+
import type { RowExpandParams, RowHoverParams } from './row';
|
|
6
|
+
import type { TableGridInstance } from './table-grid';
|
|
7
|
+
declare type Nullable<T> = T | null;
|
|
8
|
+
declare type ScrollPos = {
|
|
9
|
+
scrollLeft: number;
|
|
10
|
+
scrollTop: number;
|
|
11
|
+
};
|
|
12
|
+
declare function useTable(props: TableV2Props): {
|
|
13
|
+
columns: import("vue").Ref<import("./types").Column<any>[]>;
|
|
14
|
+
containerRef: import("vue").Ref<any>;
|
|
15
|
+
mainTableRef: import("vue").Ref<TableGridInstance | undefined>;
|
|
16
|
+
leftTableRef: import("vue").Ref<TableGridInstance | undefined>;
|
|
17
|
+
rightTableRef: import("vue").Ref<TableGridInstance | undefined>;
|
|
18
|
+
isResetting: import("vue").ShallowRef<boolean>;
|
|
19
|
+
isScrolling: import("vue").ShallowRef<boolean>;
|
|
20
|
+
hoveringRowKey: import("vue").ShallowRef<Nullable<KeyType>>;
|
|
21
|
+
hasFixedColumns: import("vue").ComputedRef<number>;
|
|
22
|
+
columnsStyles: import("vue").ComputedRef<Record<KeyType, CSSProperties>>;
|
|
23
|
+
columnsTotalWidth: import("vue").ComputedRef<number>;
|
|
24
|
+
data: import("vue").ComputedRef<any[]>;
|
|
25
|
+
expandedRowKeys: import("vue").Ref<KeyType[]>;
|
|
26
|
+
depthMap: import("vue").Ref<{
|
|
27
|
+
[x: string]: number;
|
|
28
|
+
[x: number]: number;
|
|
29
|
+
[x: symbol]: number;
|
|
30
|
+
}>;
|
|
31
|
+
fixedColumnsOnLeft: import("vue").ComputedRef<import("./types").Column<any>[]>;
|
|
32
|
+
fixedColumnOnRight: import("vue").ComputedRef<import("./types").Column<any>[]>;
|
|
33
|
+
mainColumns: import("vue").ComputedRef<import("./types").Column<any>[]>;
|
|
34
|
+
bodyWidth: import("vue").ComputedRef<number>;
|
|
35
|
+
rootStyle: import("vue").ComputedRef<CSSProperties>;
|
|
36
|
+
headerWidth: import("vue").ComputedRef<number>;
|
|
37
|
+
mainTableHeight: import("vue").ComputedRef<number>;
|
|
38
|
+
fixedTableHeight: import("vue").ComputedRef<number>;
|
|
39
|
+
leftTableWidth: import("vue").ComputedRef<number>;
|
|
40
|
+
rightTableWidth: import("vue").ComputedRef<number>;
|
|
41
|
+
scrollTo: (params: ScrollPos) => void;
|
|
42
|
+
scrollToLeft: (scrollLeft: number) => void;
|
|
43
|
+
scrollToTop: (scrollTop: number) => void;
|
|
44
|
+
onColumnSorted: (e: MouseEvent) => void;
|
|
45
|
+
onRowHovered: ({ hovered, rowKey }: RowHoverParams<any>) => void;
|
|
46
|
+
onRowExpanded: ({ expanded, rowData, rowIndex, rowKey, }: RowExpandParams<any>) => void;
|
|
47
|
+
onRowsRendered: (params: onRowRenderedParams) => void;
|
|
48
|
+
onRowHeightChanged: (rowKey: KeyType, height: number, rowIdx: number) => void;
|
|
49
|
+
onFixedRowHeightChanged: ({ rowKey, height, rowIndex, }: {
|
|
50
|
+
rowKey: KeyType;
|
|
51
|
+
height: number;
|
|
52
|
+
rowIndex: number;
|
|
53
|
+
}, fixedDir: FixedDirection) => void;
|
|
54
|
+
onScroll: (params: ScrollPos) => void;
|
|
55
|
+
onVerticalScroll: ({ scrollTop }: ScrollPos) => void;
|
|
56
|
+
};
|
|
57
|
+
export { useTable };
|
|
58
|
+
export declare type UseTableReturn = ReturnType<typeof useTable>;
|
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var vue = require('vue');
|
|
6
|
+
require('../../../utils/index.js');
|
|
7
|
+
var utils = require('./utils.js');
|
|
8
|
+
var useColumns = require('./use-columns.js');
|
|
9
|
+
var constants = require('./constants.js');
|
|
10
|
+
var core = require('@vueuse/core');
|
|
11
|
+
var types = require('../../../utils/types.js');
|
|
12
|
+
var shared = require('@vue/shared');
|
|
13
|
+
|
|
14
|
+
function useTable(props) {
|
|
15
|
+
const emit = vue.getCurrentInstance().emit;
|
|
16
|
+
const {
|
|
17
|
+
columns,
|
|
18
|
+
columnsStyles,
|
|
19
|
+
columnsTotalWidth,
|
|
20
|
+
fixedColumnsOnLeft,
|
|
21
|
+
fixedColumnOnRight,
|
|
22
|
+
hasFixedColumns,
|
|
23
|
+
mainColumns,
|
|
24
|
+
getColumn
|
|
25
|
+
} = useColumns.useColumns(vue.toRef(props, "columns"), vue.toRef(props, "fixed"));
|
|
26
|
+
const expandedRowKeys = vue.ref(props.defaultExpandedRowKeys || []);
|
|
27
|
+
const depthMap = vue.ref({});
|
|
28
|
+
const hoveringRowKey = vue.shallowRef(null);
|
|
29
|
+
const resetIndex = vue.shallowRef(null);
|
|
30
|
+
const isResetting = vue.shallowRef(false);
|
|
31
|
+
const isScrolling = vue.shallowRef(false);
|
|
32
|
+
const containerRef = vue.ref();
|
|
33
|
+
const mainTableRef = vue.ref();
|
|
34
|
+
const leftTableRef = vue.ref();
|
|
35
|
+
const rightTableRef = vue.ref();
|
|
36
|
+
const scrollPos = vue.ref({ scrollLeft: 0, scrollTop: 0 });
|
|
37
|
+
const lastRenderedRowIndex = vue.ref(-1);
|
|
38
|
+
const rowHeights = vue.shallowRef({});
|
|
39
|
+
const leftTableHeights = vue.shallowRef({});
|
|
40
|
+
const mainTableHeights = vue.shallowRef({});
|
|
41
|
+
const rightTableHeights = vue.shallowRef({});
|
|
42
|
+
const rowsHeight = vue.computed(() => {
|
|
43
|
+
const { rowHeight, estimatedRowHeight } = props;
|
|
44
|
+
const _data = vue.unref(data);
|
|
45
|
+
if (core.isNumber(estimatedRowHeight)) {
|
|
46
|
+
return _data.length * estimatedRowHeight;
|
|
47
|
+
}
|
|
48
|
+
return _data.length * rowHeight;
|
|
49
|
+
});
|
|
50
|
+
const flattenedData = vue.computed(() => {
|
|
51
|
+
const depths = {};
|
|
52
|
+
const { data: data2, rowKey } = props;
|
|
53
|
+
const _expandedRowKeys = vue.unref(expandedRowKeys);
|
|
54
|
+
if (!_expandedRowKeys || !_expandedRowKeys.length)
|
|
55
|
+
return data2;
|
|
56
|
+
const array = [];
|
|
57
|
+
const keysSet = /* @__PURE__ */ new Set();
|
|
58
|
+
_expandedRowKeys.forEach((x) => keysSet.add(x));
|
|
59
|
+
let copy = data2.slice();
|
|
60
|
+
copy.forEach((x) => depths[x[rowKey]] = 0);
|
|
61
|
+
while (copy.length > 0) {
|
|
62
|
+
const item = copy.shift();
|
|
63
|
+
array.push(item);
|
|
64
|
+
if (keysSet.has(item[rowKey]) && Array.isArray(item.children) && item.children.length > 0) {
|
|
65
|
+
copy = [...item.children, ...copy];
|
|
66
|
+
item.children.forEach((child) => depths[child[rowKey]] = depths[item[rowKey]] + 1);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
depthMap.value = depths;
|
|
70
|
+
return array;
|
|
71
|
+
});
|
|
72
|
+
const data = vue.computed(() => {
|
|
73
|
+
const { data: data2, expandColumnKey } = props;
|
|
74
|
+
return expandColumnKey ? vue.unref(flattenedData) : data2;
|
|
75
|
+
});
|
|
76
|
+
const bodyWidth = vue.computed(() => {
|
|
77
|
+
const { fixed, width, vScrollbarSize } = props;
|
|
78
|
+
const ret = width - vScrollbarSize;
|
|
79
|
+
return fixed ? Math.max(Math.round(vue.unref(columnsTotalWidth)), ret) : ret;
|
|
80
|
+
});
|
|
81
|
+
const rootStyle = vue.computed(() => {
|
|
82
|
+
const { style = {}, height, width } = props;
|
|
83
|
+
return utils.enforceUnit({
|
|
84
|
+
...style,
|
|
85
|
+
height,
|
|
86
|
+
width
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
const headerWidth = vue.computed(() => vue.unref(bodyWidth) + (props.fixed ? props.vScrollbarSize : 0));
|
|
90
|
+
const mainTableHeight = vue.computed(() => {
|
|
91
|
+
const { height = 0, maxHeight = 0, footerHeight, hScrollbarSize } = props;
|
|
92
|
+
if (maxHeight > 0) {
|
|
93
|
+
const _fixedRowsHeight = vue.unref(fixedRowsHeight);
|
|
94
|
+
const _rowsHeight = vue.unref(rowsHeight);
|
|
95
|
+
const _headerHeight = vue.unref(headerHeight);
|
|
96
|
+
const total = _headerHeight + _fixedRowsHeight + _rowsHeight + hScrollbarSize;
|
|
97
|
+
return Math.min(total, maxHeight - footerHeight);
|
|
98
|
+
}
|
|
99
|
+
return height - footerHeight;
|
|
100
|
+
});
|
|
101
|
+
const fixedTableHeight = vue.computed(() => {
|
|
102
|
+
const { maxHeight } = props;
|
|
103
|
+
const tableHeight = vue.unref(mainTableHeight);
|
|
104
|
+
if (core.isNumber(maxHeight) && maxHeight > 0)
|
|
105
|
+
return tableHeight;
|
|
106
|
+
const totalHeight = vue.unref(rowsHeight) + vue.unref(headerHeight) + vue.unref(fixedRowsHeight);
|
|
107
|
+
return Math.min(tableHeight, totalHeight);
|
|
108
|
+
});
|
|
109
|
+
const mapColumn = (column) => column.width;
|
|
110
|
+
const leftTableWidth = vue.computed(() => utils.sum(vue.unref(fixedColumnsOnLeft).map(mapColumn)));
|
|
111
|
+
const rightTableWidth = vue.computed(() => utils.sum(vue.unref(fixedColumnOnRight).map(mapColumn)));
|
|
112
|
+
const headerHeight = vue.computed(() => utils.sum(props.headerHeight));
|
|
113
|
+
const fixedRowsHeight = vue.computed(() => {
|
|
114
|
+
var _a;
|
|
115
|
+
return (((_a = props.fixedData) == null ? void 0 : _a.length) || 0) * props.rowHeight;
|
|
116
|
+
});
|
|
117
|
+
const windowHeight = vue.computed(() => {
|
|
118
|
+
return vue.unref(mainTableHeight) - vue.unref(headerHeight) - vue.unref(fixedRowsHeight);
|
|
119
|
+
});
|
|
120
|
+
function doScroll(params) {
|
|
121
|
+
var _a, _b, _c;
|
|
122
|
+
const { scrollTop } = params;
|
|
123
|
+
(_a = mainTableRef.value) == null ? void 0 : _a.scrollTo(params);
|
|
124
|
+
(_b = leftTableRef.value) == null ? void 0 : _b.scrollToTop(scrollTop);
|
|
125
|
+
(_c = rightTableRef.value) == null ? void 0 : _c.scrollToTop(scrollTop);
|
|
126
|
+
}
|
|
127
|
+
function scrollTo(params) {
|
|
128
|
+
scrollPos.value = params;
|
|
129
|
+
doScroll(params);
|
|
130
|
+
}
|
|
131
|
+
function scrollToTop(scrollTop) {
|
|
132
|
+
scrollPos.value.scrollTop = scrollTop;
|
|
133
|
+
doScroll(vue.unref(scrollPos));
|
|
134
|
+
}
|
|
135
|
+
function scrollToLeft(scrollLeft) {
|
|
136
|
+
var _a, _b;
|
|
137
|
+
scrollPos.value.scrollLeft = scrollLeft;
|
|
138
|
+
(_b = (_a = mainTableRef.value) == null ? void 0 : _a.scrollTo) == null ? void 0 : _b.call(_a, vue.unref(scrollPos));
|
|
139
|
+
}
|
|
140
|
+
function onMaybeEndReached() {
|
|
141
|
+
const { onEndReached } = props;
|
|
142
|
+
if (!onEndReached)
|
|
143
|
+
return;
|
|
144
|
+
const { scrollTop } = vue.unref(scrollPos);
|
|
145
|
+
const _totalHeight = vue.unref(rowsHeight);
|
|
146
|
+
const clientHeight = vue.unref(windowHeight);
|
|
147
|
+
const heightUntilEnd = _totalHeight - (scrollTop + clientHeight) + props.hScrollbarSize;
|
|
148
|
+
if (vue.unref(lastRenderedRowIndex) >= 0 && _totalHeight !== vue.unref(rowsHeight)) {
|
|
149
|
+
onEndReached(heightUntilEnd);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
function updateRows() {
|
|
153
|
+
isResetting.value = true;
|
|
154
|
+
resetAfterIndex(vue.unref(resetIndex), false);
|
|
155
|
+
resetIndex.value = null;
|
|
156
|
+
isResetting.value = false;
|
|
157
|
+
}
|
|
158
|
+
function resetAfterIndex(index, forceUpdate = false) {
|
|
159
|
+
if (types.isUndefined(props.estimatedRowHeight))
|
|
160
|
+
return;
|
|
161
|
+
[mainTableRef, leftTableRef, rightTableRef].forEach((tableRef) => {
|
|
162
|
+
const table = vue.unref(tableRef);
|
|
163
|
+
if (table)
|
|
164
|
+
table.resetAfterRowIndex(index, forceUpdate);
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
function onScroll(params) {
|
|
168
|
+
var _a;
|
|
169
|
+
scrollTo(params);
|
|
170
|
+
(_a = props.onScroll) == null ? void 0 : _a.call(props, params);
|
|
171
|
+
}
|
|
172
|
+
function onVerticalScroll({ scrollTop }) {
|
|
173
|
+
const { scrollTop: currentScrollTop } = vue.unref(scrollPos);
|
|
174
|
+
if (scrollTop !== currentScrollTop)
|
|
175
|
+
scrollToTop(scrollTop);
|
|
176
|
+
}
|
|
177
|
+
function onRowsRendered(params) {
|
|
178
|
+
var _a;
|
|
179
|
+
(_a = props.onRowRendered) == null ? void 0 : _a.call(props, params);
|
|
180
|
+
if (params.rowCacheEnd > vue.unref(lastRenderedRowIndex)) {
|
|
181
|
+
lastRenderedRowIndex.value = params.rowCacheEnd;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
function onRowHovered({ hovered, rowKey }) {
|
|
185
|
+
hoveringRowKey.value = hovered ? rowKey : null;
|
|
186
|
+
}
|
|
187
|
+
function onRowExpanded({
|
|
188
|
+
expanded,
|
|
189
|
+
rowData,
|
|
190
|
+
rowIndex,
|
|
191
|
+
rowKey
|
|
192
|
+
}) {
|
|
193
|
+
var _a, _b;
|
|
194
|
+
const _expandedRowKeys = [...vue.unref(expandedRowKeys)];
|
|
195
|
+
const currentKeyIndex = _expandedRowKeys.indexOf(rowKey);
|
|
196
|
+
if (expanded) {
|
|
197
|
+
if (currentKeyIndex === -1)
|
|
198
|
+
_expandedRowKeys.push(rowKey);
|
|
199
|
+
} else {
|
|
200
|
+
if (currentKeyIndex > -1)
|
|
201
|
+
_expandedRowKeys.splice(currentKeyIndex, 1);
|
|
202
|
+
}
|
|
203
|
+
expandedRowKeys.value = _expandedRowKeys;
|
|
204
|
+
emit("update:expandedRowKeys", _expandedRowKeys);
|
|
205
|
+
(_a = props.onRowExpand) == null ? void 0 : _a.call(props, {
|
|
206
|
+
expanded,
|
|
207
|
+
rowData,
|
|
208
|
+
rowIndex,
|
|
209
|
+
rowKey
|
|
210
|
+
});
|
|
211
|
+
(_b = props.onExpandedRowsChange) == null ? void 0 : _b.call(props, _expandedRowKeys);
|
|
212
|
+
}
|
|
213
|
+
function onColumnSorted(e) {
|
|
214
|
+
var _a;
|
|
215
|
+
const { key } = e.currentTarget.dataset;
|
|
216
|
+
if (!key)
|
|
217
|
+
return;
|
|
218
|
+
const { sortState, sortBy } = props;
|
|
219
|
+
let order = constants.SortOrder.ASC;
|
|
220
|
+
if (shared.isObject(sortState)) {
|
|
221
|
+
order = constants.oppositeOrderMap[sortState[key]];
|
|
222
|
+
} else {
|
|
223
|
+
order = constants.oppositeOrderMap[sortBy.order];
|
|
224
|
+
}
|
|
225
|
+
(_a = props.onColumnSort) == null ? void 0 : _a.call(props, { column: getColumn(key), key, order });
|
|
226
|
+
}
|
|
227
|
+
function onRowHeightChanged(rowKey, height, rowIdx) {
|
|
228
|
+
const resetIdx = vue.unref(resetIndex);
|
|
229
|
+
if (resetIdx === null) {
|
|
230
|
+
resetIndex.value = rowIdx;
|
|
231
|
+
} else {
|
|
232
|
+
if (resetIdx > rowIdx) {
|
|
233
|
+
resetIndex.value = rowIdx;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
rowHeights.value[rowKey] = height;
|
|
237
|
+
}
|
|
238
|
+
function onFixedRowHeightChanged({
|
|
239
|
+
rowKey,
|
|
240
|
+
height,
|
|
241
|
+
rowIndex
|
|
242
|
+
}, fixedDir) {
|
|
243
|
+
if (!fixedDir) {
|
|
244
|
+
mainTableHeights.value[rowKey] = height;
|
|
245
|
+
} else {
|
|
246
|
+
if (fixedDir === "right") {
|
|
247
|
+
rightTableHeights.value[rowKey] = height;
|
|
248
|
+
} else {
|
|
249
|
+
leftTableHeights.value[rowKey] = height;
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
const _rowHeights = vue.unref(rowHeights);
|
|
253
|
+
if (_rowHeights[rowKey] !== height) {
|
|
254
|
+
onRowHeightChanged(rowKey, height, rowIndex);
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
vue.watch(() => vue.unref(scrollPos).scrollTop, (cur, prev) => {
|
|
258
|
+
if (cur > prev)
|
|
259
|
+
onMaybeEndReached();
|
|
260
|
+
});
|
|
261
|
+
vue.watch(lastRenderedRowIndex, () => onMaybeEndReached());
|
|
262
|
+
vue.watch(() => props.expandedRowKeys, (val) => expandedRowKeys.value = val, {
|
|
263
|
+
deep: true
|
|
264
|
+
});
|
|
265
|
+
vue.watch(rowHeights, () => {
|
|
266
|
+
updateRows();
|
|
267
|
+
});
|
|
268
|
+
return {
|
|
269
|
+
columns,
|
|
270
|
+
containerRef,
|
|
271
|
+
mainTableRef,
|
|
272
|
+
leftTableRef,
|
|
273
|
+
rightTableRef,
|
|
274
|
+
isResetting,
|
|
275
|
+
isScrolling,
|
|
276
|
+
hoveringRowKey,
|
|
277
|
+
hasFixedColumns,
|
|
278
|
+
columnsStyles,
|
|
279
|
+
columnsTotalWidth,
|
|
280
|
+
data,
|
|
281
|
+
expandedRowKeys,
|
|
282
|
+
depthMap,
|
|
283
|
+
fixedColumnsOnLeft,
|
|
284
|
+
fixedColumnOnRight,
|
|
285
|
+
mainColumns,
|
|
286
|
+
bodyWidth,
|
|
287
|
+
rootStyle,
|
|
288
|
+
headerWidth,
|
|
289
|
+
mainTableHeight,
|
|
290
|
+
fixedTableHeight,
|
|
291
|
+
leftTableWidth,
|
|
292
|
+
rightTableWidth,
|
|
293
|
+
scrollTo,
|
|
294
|
+
scrollToLeft,
|
|
295
|
+
scrollToTop,
|
|
296
|
+
onColumnSorted,
|
|
297
|
+
onRowHovered,
|
|
298
|
+
onRowExpanded,
|
|
299
|
+
onRowsRendered,
|
|
300
|
+
onRowHeightChanged,
|
|
301
|
+
onFixedRowHeightChanged,
|
|
302
|
+
onScroll,
|
|
303
|
+
onVerticalScroll
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
exports.useTable = useTable;
|
|
308
|
+
//# sourceMappingURL=use-table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-table.js","sources":["../../../../../../packages/components/table-v2/src/use-table.ts"],"sourcesContent":["import {\n computed,\n getCurrentInstance,\n ref,\n shallowRef,\n toRef,\n unref,\n watch,\n} from 'vue'\nimport { isNumber, isObject, isUndefined } from '@element-plus/utils'\nimport { enforceUnit, sum } from './utils'\nimport { useColumns } from './use-columns'\nimport { SortOrder, oppositeOrderMap } from './constants'\n\nimport type { CSSProperties } from 'vue'\nimport type { FixedDirection, KeyType } from './types'\nimport type { TableV2Props } from './table'\nimport type { onRowRenderedParams } from './grid'\nimport type { RowExpandParams, RowHoverParams } from './row'\n// component\nimport type { TableGridInstance } from './table-grid'\n\ntype Nullable<T> = T | null\ntype ScrollPos = { scrollLeft: number; scrollTop: number }\ntype Heights = Record<KeyType, CSSProperties['height']>\n\nfunction useTable(props: TableV2Props) {\n const emit = getCurrentInstance()!.emit\n\n const {\n columns,\n columnsStyles,\n columnsTotalWidth,\n fixedColumnsOnLeft,\n fixedColumnOnRight,\n hasFixedColumns,\n mainColumns,\n getColumn,\n } = useColumns(toRef(props, 'columns'), toRef(props, 'fixed'))\n // state\n const expandedRowKeys = ref<KeyType[]>(props.defaultExpandedRowKeys || [])\n const depthMap = ref<Record<KeyType, number>>({})\n const hoveringRowKey = shallowRef<Nullable<KeyType>>(null)\n // const resizingKey = shallowRef<Nullable<KeyType>>(null)\n // const resizingWidth = shallowRef(0)\n const resetIndex = shallowRef<Nullable<number>>(null)\n const isResetting = shallowRef(false)\n const isScrolling = shallowRef(false)\n\n // DOM/Component refs\n const containerRef = ref()\n const mainTableRef = ref<TableGridInstance>()\n const leftTableRef = ref<TableGridInstance>()\n const rightTableRef = ref<TableGridInstance>()\n\n const scrollPos = ref<ScrollPos>({ scrollLeft: 0, scrollTop: 0 })\n const lastRenderedRowIndex = ref(-1)\n const rowHeights = shallowRef<Heights>({})\n const leftTableHeights = shallowRef<Heights>({})\n const mainTableHeights = shallowRef<Heights>({})\n const rightTableHeights = shallowRef<Heights>({})\n\n const rowsHeight = computed(() => {\n const { rowHeight, estimatedRowHeight } = props\n const _data = unref(data)\n if (isNumber(estimatedRowHeight)) {\n return _data.length * estimatedRowHeight\n }\n\n return _data.length * rowHeight\n })\n\n const flattenedData = computed(() => {\n const depths = {}\n const { data, rowKey } = props\n\n const _expandedRowKeys = unref(expandedRowKeys)\n\n if (!_expandedRowKeys || !_expandedRowKeys.length) return data\n\n const array: any[] = []\n const keysSet = new Set()\n _expandedRowKeys.forEach((x) => keysSet.add(x))\n\n let copy: any[] = data.slice()\n copy.forEach((x) => (depths[x[rowKey]] = 0))\n while (copy.length > 0) {\n const item = copy.shift()!\n\n array.push(item)\n if (\n keysSet.has(item[rowKey]) &&\n Array.isArray(item.children) &&\n item.children.length > 0\n ) {\n copy = [...item.children, ...copy]\n item.children.forEach(\n (child: any) => (depths[child[rowKey]] = depths[item[rowKey]] + 1)\n )\n }\n }\n\n depthMap.value = depths\n return array\n })\n\n const data = computed(() => {\n const { data, expandColumnKey } = props\n return expandColumnKey ? unref(flattenedData) : data\n })\n\n const bodyWidth = computed(() => {\n const { fixed, width, vScrollbarSize } = props\n const ret = width - vScrollbarSize\n return fixed ? Math.max(Math.round(unref(columnsTotalWidth)), ret) : ret\n })\n\n const rootStyle = computed<CSSProperties>(() => {\n const { style = {}, height, width } = props\n return enforceUnit({\n ...style,\n height,\n width,\n })\n })\n\n const headerWidth = computed(\n () => unref(bodyWidth) + (props.fixed ? props.vScrollbarSize : 0)\n )\n\n const mainTableHeight = computed(() => {\n const { height = 0, maxHeight = 0, footerHeight, hScrollbarSize } = props\n\n if (maxHeight > 0) {\n const _fixedRowsHeight = unref(fixedRowsHeight)\n const _rowsHeight = unref(rowsHeight)\n const _headerHeight = unref(headerHeight)\n const total =\n _headerHeight + _fixedRowsHeight + _rowsHeight + hScrollbarSize\n\n return Math.min(total, maxHeight - footerHeight)\n }\n\n return height - footerHeight\n })\n\n const fixedTableHeight = computed(() => {\n const { maxHeight } = props\n const tableHeight = unref(mainTableHeight)\n if (isNumber(maxHeight) && maxHeight > 0) return tableHeight\n\n const totalHeight =\n unref(rowsHeight) + unref(headerHeight) + unref(fixedRowsHeight)\n\n return Math.min(tableHeight, totalHeight)\n })\n\n const mapColumn = (column: TableV2Props['columns'][number]) => column.width\n\n const leftTableWidth = computed(() =>\n sum(unref(fixedColumnsOnLeft).map(mapColumn))\n )\n\n const rightTableWidth = computed(() =>\n sum(unref(fixedColumnOnRight).map(mapColumn))\n )\n\n const headerHeight = computed(() => sum(props.headerHeight))\n\n const fixedRowsHeight = computed(() => {\n return (props.fixedData?.length || 0) * props.rowHeight\n })\n\n const windowHeight = computed(() => {\n return unref(mainTableHeight) - unref(headerHeight) - unref(fixedRowsHeight)\n })\n\n function doScroll(params: ScrollPos) {\n const { scrollTop } = params\n\n mainTableRef.value?.scrollTo(params)\n leftTableRef.value?.scrollToTop(scrollTop)\n rightTableRef.value?.scrollToTop(scrollTop)\n }\n\n // methods\n function scrollTo(params: ScrollPos) {\n scrollPos.value = params\n\n doScroll(params)\n }\n\n function scrollToTop(scrollTop: number) {\n scrollPos.value.scrollTop = scrollTop\n\n doScroll(unref(scrollPos))\n }\n\n function scrollToLeft(scrollLeft: number) {\n scrollPos.value.scrollLeft = scrollLeft\n\n mainTableRef.value?.scrollTo?.(unref(scrollPos))\n }\n\n function onMaybeEndReached() {\n const { onEndReached } = props\n if (!onEndReached) return\n\n const { scrollTop } = unref(scrollPos)\n\n const _totalHeight = unref(rowsHeight)\n const clientHeight = unref(windowHeight)\n\n const heightUntilEnd =\n _totalHeight - (scrollTop + clientHeight) + props.hScrollbarSize\n\n if (\n unref(lastRenderedRowIndex) >= 0 &&\n _totalHeight !== unref(rowsHeight)\n ) {\n onEndReached(heightUntilEnd)\n }\n }\n\n function updateRows() {\n isResetting.value = true\n resetAfterIndex(unref(resetIndex)!, false)\n // force update\n resetIndex.value = null\n isResetting.value = false\n }\n\n function resetAfterIndex(index: number, forceUpdate = false) {\n if (isUndefined(props.estimatedRowHeight)) return\n ;[mainTableRef, leftTableRef, rightTableRef].forEach((tableRef) => {\n const table = unref(tableRef)\n if (table) table.resetAfterRowIndex(index, forceUpdate)\n })\n }\n // events\n\n function onScroll(params: ScrollPos) {\n scrollTo(params)\n props.onScroll?.(params)\n }\n\n function onVerticalScroll({ scrollTop }: ScrollPos) {\n const { scrollTop: currentScrollTop } = unref(scrollPos)\n if (scrollTop !== currentScrollTop) scrollToTop(scrollTop)\n }\n\n function onRowsRendered(params: onRowRenderedParams) {\n props.onRowRendered?.(params)\n\n if (params.rowCacheEnd > unref(lastRenderedRowIndex)) {\n lastRenderedRowIndex.value = params.rowCacheEnd\n }\n }\n\n function onRowHovered({ hovered, rowKey }: RowHoverParams<any>) {\n hoveringRowKey.value = hovered ? rowKey : null\n }\n\n function onRowExpanded({\n expanded,\n rowData,\n rowIndex,\n rowKey,\n }: RowExpandParams<any>) {\n const _expandedRowKeys = [...unref(expandedRowKeys)]\n const currentKeyIndex = _expandedRowKeys.indexOf(rowKey)\n if (expanded) {\n if (currentKeyIndex === -1) _expandedRowKeys.push(rowKey)\n } else {\n if (currentKeyIndex > -1) _expandedRowKeys.splice(currentKeyIndex, 1)\n }\n expandedRowKeys.value = _expandedRowKeys\n\n emit('update:expandedRowKeys', _expandedRowKeys)\n props.onRowExpand?.({\n expanded,\n rowData,\n rowIndex,\n rowKey,\n })\n // If this is not controlled, then use this to notify changes\n props.onExpandedRowsChange?.(_expandedRowKeys)\n }\n\n // function onColumnResized(\n // { key }: TableV2Props['columns'][number],\n // width: number\n // ) {\n // resizingWidth.value = width\n // const column = getColumn(key)!\n\n // updateColumnWidth(column, width)\n // props.onColumnResize?.(column, width)\n // }\n\n // function onColumnResizeStart({ key }: TableV2Props['columns'][number]) {\n // resizingKey.value = key\n // }\n\n // function onColumnResizeEnd() {\n // const _resizingKey = unref(resizingKey)\n // const _resizingWidth = unref(resizingWidth)\n\n // resizingKey.value = null\n // resizingWidth.value = 0\n\n // if (!_resizingKey || !_resizingWidth) return\n\n // props.onColumnResizeEnded?.(getColumn(_resizingKey)!, _resizingWidth)\n // }\n\n function onColumnSorted(e: MouseEvent) {\n const { key } = (e.currentTarget as HTMLElement).dataset\n if (!key) return\n const { sortState, sortBy } = props\n\n let order = SortOrder.ASC\n\n if (isObject(sortState)) {\n order = oppositeOrderMap[sortState[key]]\n } else {\n order = oppositeOrderMap[sortBy.order]\n }\n\n props.onColumnSort?.({ column: getColumn(key)!, key, order })\n }\n\n function onRowHeightChanged(rowKey: KeyType, height: number, rowIdx: number) {\n const resetIdx = unref(resetIndex)\n if (resetIdx === null) {\n resetIndex.value = rowIdx\n } else {\n if (resetIdx > rowIdx) {\n resetIndex.value = rowIdx\n }\n }\n\n rowHeights.value[rowKey] = height\n }\n\n function onFixedRowHeightChanged(\n {\n rowKey,\n height,\n rowIndex,\n }: {\n rowKey: KeyType\n height: number\n rowIndex: number\n },\n fixedDir: FixedDirection\n ) {\n if (!fixedDir) {\n mainTableHeights.value[rowKey] = height\n } else {\n if (fixedDir === 'right') {\n rightTableHeights.value[rowKey] = height\n } else {\n leftTableHeights.value[rowKey] = height\n }\n }\n\n const _rowHeights = unref(rowHeights)\n if (_rowHeights[rowKey] !== height) {\n onRowHeightChanged(rowKey, height, rowIndex)\n }\n }\n\n // When scrollTop changes, maybe reaching the bottom\n watch(\n () => unref(scrollPos).scrollTop,\n (cur, prev) => {\n if (cur > prev) onMaybeEndReached()\n }\n )\n\n // when rendered row changes, maybe reaching the bottom\n watch(lastRenderedRowIndex, () => onMaybeEndReached())\n\n watch(\n () => props.expandedRowKeys,\n (val) => (expandedRowKeys.value = val),\n {\n deep: true,\n }\n )\n\n watch(rowHeights, () => {\n updateRows()\n })\n\n return {\n // models\n columns,\n containerRef,\n mainTableRef,\n leftTableRef,\n rightTableRef,\n // states\n isResetting,\n isScrolling,\n hoveringRowKey,\n hasFixedColumns,\n // resizingKey,\n // records\n columnsStyles,\n columnsTotalWidth,\n data,\n expandedRowKeys,\n depthMap,\n fixedColumnsOnLeft,\n fixedColumnOnRight,\n mainColumns,\n // metadata\n bodyWidth,\n rootStyle,\n headerWidth,\n mainTableHeight,\n fixedTableHeight,\n leftTableWidth,\n rightTableWidth,\n\n // methods\n scrollTo,\n scrollToLeft,\n scrollToTop,\n\n // event handlers\n onColumnSorted,\n // onColumnResized,\n // onColumnResizeStart,\n // onColumnResizeEnd,\n onRowHovered,\n onRowExpanded,\n onRowsRendered,\n onRowHeightChanged,\n onFixedRowHeightChanged,\n onScroll,\n onVerticalScroll,\n }\n}\n\nexport { useTable }\n\nexport type UseTableReturn = ReturnType<typeof useTable>\n"],"names":["getCurrentInstance","useColumns","toRef","ref","shallowRef","computed","unref","isNumber","enforceUnit","sum","isUndefined","SortOrder","isObject","oppositeOrderMap","watch"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CSSProperties, Component, Slot } from 'vue';
|
|
2
|
+
export declare const sum: (listLike: number | number[]) => number;
|
|
3
|
+
export declare const tryCall: <T>(fLike: T, params: T extends (...args: infer K) => unknown ? K : any, defaultRet?: {}) => any;
|
|
4
|
+
export declare const enforceUnit: (style: CSSProperties) => CSSProperties;
|
|
5
|
+
export declare const componentToSlot: <T>(ComponentLike: JSX.Element | ((props: T) => Component<T, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | undefined) => Slot | ((props: T) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
6
|
+
[key: string]: any;
|
|
7
|
+
}>);
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var vue = require('vue');
|
|
6
|
+
require('../../../utils/index.js');
|
|
7
|
+
var shared = require('@vue/shared');
|
|
8
|
+
var style = require('../../../utils/vue/style.js');
|
|
9
|
+
|
|
10
|
+
const sumReducer = (sum2, num) => sum2 + num;
|
|
11
|
+
const sum = (listLike) => {
|
|
12
|
+
return shared.isArray(listLike) ? listLike.reduce(sumReducer, 0) : listLike;
|
|
13
|
+
};
|
|
14
|
+
const tryCall = (fLike, params, defaultRet = {}) => {
|
|
15
|
+
return shared.isFunction(fLike) ? fLike(params) : fLike != null ? fLike : defaultRet;
|
|
16
|
+
};
|
|
17
|
+
const enforceUnit = (style$1) => {
|
|
18
|
+
;
|
|
19
|
+
["width", "maxWidth", "minWidth", "height"].forEach((key) => {
|
|
20
|
+
style$1[key] = style.addUnit(style$1[key]);
|
|
21
|
+
});
|
|
22
|
+
return style$1;
|
|
23
|
+
};
|
|
24
|
+
const componentToSlot = (ComponentLike) => vue.isVNode(ComponentLike) ? (props) => vue.h(ComponentLike, props) : ComponentLike;
|
|
25
|
+
|
|
26
|
+
exports.componentToSlot = componentToSlot;
|
|
27
|
+
exports.enforceUnit = enforceUnit;
|
|
28
|
+
exports.sum = sum;
|
|
29
|
+
exports.tryCall = tryCall;
|
|
30
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../../../packages/components/table-v2/src/utils.ts"],"sourcesContent":["import { h, isVNode } from 'vue'\nimport { addUnit, isArray, isFunction } from '@element-plus/utils'\n\nimport type { CSSProperties, Component, Slot } from 'vue'\n\nconst sumReducer = (sum: number, num: number) => sum + num\n\nexport const sum = (listLike: number | number[]) => {\n return isArray(listLike) ? listLike.reduce(sumReducer, 0) : listLike\n}\n\nexport const tryCall = <T>(\n fLike: T,\n params: T extends (...args: infer K) => unknown ? K : any,\n defaultRet = {}\n) => {\n return isFunction(fLike) ? fLike(params) : fLike ?? defaultRet\n}\n\nexport const enforceUnit = (style: CSSProperties) => {\n ;['width', 'maxWidth', 'minWidth', 'height'].forEach((key) => {\n style[key] = addUnit(style[key])\n })\n\n return style\n}\n\nexport const componentToSlot = <T>(\n ComponentLike: JSX.Element | ((props: T) => Component<T>) | undefined\n) =>\n isVNode(ComponentLike)\n ? (props: T) => h(ComponentLike, props)\n : (ComponentLike as Slot)\n"],"names":["isArray","isFunction","style","addUnit","isVNode","h"],"mappings":";;;;;;;;;AAEA,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,GAAG,CAAC;AACjC,MAAC,GAAG,GAAG,CAAC,QAAQ,KAAK;AACjC,EAAE,OAAOA,cAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC;AACvE,EAAE;AACU,MAAC,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,GAAG,EAAE,KAAK;AAC3D,EAAE,OAAOC,iBAAU,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,GAAG,UAAU,CAAC;AAChF,EAAE;AACU,MAAC,WAAW,GAAG,CAACC,OAAK,KAAK;AACtC,EAAE,CAAC;AACH,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK;AAC/D,IAAIA,OAAK,CAAC,GAAG,CAAC,GAAGC,aAAO,CAACD,OAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AACrC,GAAG,CAAC,CAAC;AACL,EAAE,OAAOA,OAAK,CAAC;AACf,EAAE;AACU,MAAC,eAAe,GAAG,CAAC,aAAa,KAAKE,WAAO,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,KAAKC,KAAC,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG;;;;;;;"}
|
|
@@ -63,6 +63,20 @@ declare const _TimeSelect: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
63
63
|
default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
|
64
64
|
};
|
|
65
65
|
}, {
|
|
66
|
+
nsInput: {
|
|
67
|
+
namespace: import("vue").ComputedRef<string>;
|
|
68
|
+
b: (blockSuffix?: string) => string;
|
|
69
|
+
e: (element?: string | undefined) => string;
|
|
70
|
+
m: (modifier?: string | undefined) => string;
|
|
71
|
+
be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
|
|
72
|
+
em: (element?: string | undefined, modifier?: string | undefined) => string;
|
|
73
|
+
bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
|
|
74
|
+
bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
|
|
75
|
+
is: {
|
|
76
|
+
(name: string, state: boolean | undefined): string;
|
|
77
|
+
(name: string): string;
|
|
78
|
+
};
|
|
79
|
+
};
|
|
66
80
|
select: import("vue").Ref<null>;
|
|
67
81
|
value: import("vue").ComputedRef<string | undefined>;
|
|
68
82
|
items: import("vue").ComputedRef<never[]>;
|
|
@@ -218,6 +232,20 @@ export declare const ElTimeSelect: SFCWithInstall<import("vue").DefineComponent<
|
|
|
218
232
|
default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
|
219
233
|
};
|
|
220
234
|
}, {
|
|
235
|
+
nsInput: {
|
|
236
|
+
namespace: import("vue").ComputedRef<string>;
|
|
237
|
+
b: (blockSuffix?: string) => string;
|
|
238
|
+
e: (element?: string | undefined) => string;
|
|
239
|
+
m: (modifier?: string | undefined) => string;
|
|
240
|
+
be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
|
|
241
|
+
em: (element?: string | undefined, modifier?: string | undefined) => string;
|
|
242
|
+
bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
|
|
243
|
+
bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
|
|
244
|
+
is: {
|
|
245
|
+
(name: string, state: boolean | undefined): string;
|
|
246
|
+
(name: string): string;
|
|
247
|
+
};
|
|
248
|
+
};
|
|
221
249
|
select: import("vue").Ref<null>;
|
|
222
250
|
value: import("vue").ComputedRef<string | undefined>;
|
|
223
251
|
items: import("vue").ComputedRef<never[]>;
|
|
@@ -8,9 +8,11 @@ var customParseFormat = require('dayjs/plugin/customParseFormat.js');
|
|
|
8
8
|
var index = require('../../select/index.js');
|
|
9
9
|
var index$1 = require('../../icon/index.js');
|
|
10
10
|
var iconsVue = require('@element-plus/icons-vue');
|
|
11
|
+
require('../../../hooks/index.js');
|
|
11
12
|
require('../../../constants/index.js');
|
|
12
13
|
var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
|
|
13
14
|
var size = require('../../../constants/size.js');
|
|
15
|
+
var index$2 = require('../../../hooks/use-namespace/index.js');
|
|
14
16
|
|
|
15
17
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
16
18
|
|
|
@@ -139,6 +141,7 @@ const _sfc_main = vue.defineComponent({
|
|
|
139
141
|
},
|
|
140
142
|
emits: ["change", "blur", "focus", "update:modelValue"],
|
|
141
143
|
setup(props) {
|
|
144
|
+
const nsInput = index$2.useNamespace("input");
|
|
142
145
|
const select = vue.ref(null);
|
|
143
146
|
const value = vue.computed(() => props.modelValue);
|
|
144
147
|
const start = vue.computed(() => {
|
|
@@ -186,6 +189,7 @@ const _sfc_main = vue.defineComponent({
|
|
|
186
189
|
(_b = (_a = select.value) == null ? void 0 : _a.focus) == null ? void 0 : _b.call(_a);
|
|
187
190
|
};
|
|
188
191
|
return {
|
|
192
|
+
nsInput,
|
|
189
193
|
select,
|
|
190
194
|
value,
|
|
191
195
|
items,
|
|
@@ -217,13 +221,13 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
217
221
|
prefix: vue.withCtx(() => [
|
|
218
222
|
_ctx.prefixIcon ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
|
|
219
223
|
key: 0,
|
|
220
|
-
class: "
|
|
224
|
+
class: vue.normalizeClass(_ctx.nsInput.e("prefix-icon"))
|
|
221
225
|
}, {
|
|
222
226
|
default: vue.withCtx(() => [
|
|
223
227
|
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.prefixIcon)))
|
|
224
228
|
]),
|
|
225
229
|
_: 1
|
|
226
|
-
})) : vue.createCommentVNode("v-if", true)
|
|
230
|
+
}, 8, ["class"])) : vue.createCommentVNode("v-if", true)
|
|
227
231
|
]),
|
|
228
232
|
default: vue.withCtx(() => [
|
|
229
233
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.items, (item) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-select.js","sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :model-value=\"value\"\n :disabled=\"disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :effect=\"effect\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n @update:model-value=\"(event) => $emit('update:modelValue', event)\"\n @change=\"(event) => $emit('change', event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" class=\"el-input__prefix-icon\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport ElSelect from '@element-plus/components/select'\nimport ElIcon from '@element-plus/components/icon'\nimport { CircleClose, Clock } from '@element-plus/icons-vue'\n\nimport { componentSizes } from '@element-plus/constants'\nimport type { Component, PropType } from 'vue'\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ninterface Time {\n hours: number\n minutes: number\n}\n\nconst parseTime = (time: string): null | Time => {\n const values = (time || '').split(':')\n if (values.length >= 2) {\n let hours = Number.parseInt(values[0], 10)\n const minutes = Number.parseInt(values[1], 10)\n const timeUpper = time.toUpperCase()\n if (timeUpper.includes('AM') && hours === 12) {\n hours = 0\n } else if (timeUpper.includes('PM') && hours !== 12) {\n hours += 12\n }\n return {\n hours,\n minutes,\n }\n }\n return null\n}\nconst compareTime = (time1: string, time2: string): number => {\n const value1 = parseTime(time1)\n const value2 = parseTime(time2)\n const minutes1 = value1.minutes + value1.hours * 60\n const minutes2 = value2.minutes + value2.hours * 60\n if (minutes1 === minutes2) {\n return 0\n }\n return minutes1 > minutes2 ? 1 : -1\n}\nconst padTime = (time: number | string) => {\n return `${time}`.padStart(2, '0')\n}\nconst formatTime = (time: Time): string => {\n return `${padTime(time.hours)}:${padTime(time.minutes)}`\n}\nconst nextTime = (time: string, step: string): string => {\n const timeValue = parseTime(time)\n const stepValue = parseTime(step)\n const next = {\n hours: timeValue.hours,\n minutes: timeValue.minutes,\n }\n next.minutes += stepValue.minutes\n next.hours += stepValue.hours\n next.hours += Math.floor(next.minutes / 60)\n next.minutes = next.minutes % 60\n return formatTime(next)\n}\n\nexport default defineComponent({\n name: 'ElTimeSelect',\n components: { ElSelect, ElOption, ElIcon },\n model: {\n prop: 'value',\n event: 'change',\n },\n props: {\n format: {\n type: String,\n default: 'HH:mm',\n },\n modelValue: String,\n disabled: {\n type: Boolean,\n default: false,\n },\n editable: {\n type: Boolean,\n default: true,\n },\n effect: {\n type: String as PropType<'light' | 'dark' | string>,\n default: 'light',\n },\n clearable: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String as PropType<ComponentSize>,\n values: componentSizes,\n default: '',\n },\n placeholder: {\n type: String,\n default: '',\n },\n start: {\n type: String,\n default: '09:00',\n },\n end: {\n type: String,\n default: '18:00',\n },\n step: {\n type: String,\n default: '00:30',\n },\n minTime: {\n type: String,\n default: '',\n },\n maxTime: {\n type: String,\n default: '',\n },\n name: {\n type: String,\n default: '',\n },\n prefixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: Clock,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n },\n emits: ['change', 'blur', 'focus', 'update:modelValue'],\n setup(props) {\n // computed\n const select = ref(null)\n const value = computed(() => props.modelValue)\n const start = computed(() => {\n const time = parseTime(props.start)\n return formatTime(time)\n })\n const end = computed(() => {\n const time = parseTime(props.end)\n return formatTime(time)\n })\n const step = computed(() => {\n const time = parseTime(props.step)\n return formatTime(time)\n })\n const minTime = computed(() => {\n const time = parseTime(props.minTime)\n return time ? formatTime(time) : null\n })\n const maxTime = computed(() => {\n const time = parseTime(props.maxTime)\n return time ? formatTime(time) : null\n })\n const items = computed(() => {\n const result = []\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime\n while (compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm').format(props.format)\n result.push({\n value: currentTime,\n disabled:\n compareTime(current, minTime.value || '-1:-1') <= 0 ||\n compareTime(current, maxTime.value || '100:100') >= 0,\n })\n current = nextTime(current, step.value)\n }\n }\n return result\n })\n const blur = () => {\n select.value?.blur?.()\n }\n const focus = () => {\n select.value?.focus?.()\n }\n\n return {\n select,\n value,\n items,\n blur,\n focus,\n }\n },\n})\n</script>\n"],"names":["dayjs","customParseFormat","ElSelect","defineComponent","ElIcon","componentSizes","Clock","CircleClose","ref","computed","_resolveComponent","_openBlock","_createBlock","_withCtx","_createElementBlock","_Fragment","_renderList"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"time-select.js","sources":["../../../../../../packages/components/time-select/src/time-select.vue"],"sourcesContent":["<template>\n <el-select\n ref=\"select\"\n :model-value=\"value\"\n :disabled=\"disabled\"\n :clearable=\"clearable\"\n :clear-icon=\"clearIcon\"\n :size=\"size\"\n :effect=\"effect\"\n :placeholder=\"placeholder\"\n default-first-option\n :filterable=\"editable\"\n @update:model-value=\"(event) => $emit('update:modelValue', event)\"\n @change=\"(event) => $emit('change', event)\"\n @blur=\"(event) => $emit('blur', event)\"\n @focus=\"(event) => $emit('focus', event)\"\n >\n <el-option\n v-for=\"item in items\"\n :key=\"item.value\"\n :label=\"item.value\"\n :value=\"item.value\"\n :disabled=\"item.disabled\"\n />\n <template #prefix>\n <el-icon v-if=\"prefixIcon\" :class=\"nsInput.e('prefix-icon')\">\n <component :is=\"prefixIcon\" />\n </el-icon>\n </template>\n </el-select>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat.js'\nimport ElSelect from '@element-plus/components/select'\nimport ElIcon from '@element-plus/components/icon'\nimport { CircleClose, Clock } from '@element-plus/icons-vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport { componentSizes } from '@element-plus/constants'\nimport type { Component, PropType } from 'vue'\ndayjs.extend(customParseFormat)\n\nconst { Option: ElOption } = ElSelect\n\ninterface Time {\n hours: number\n minutes: number\n}\n\nconst parseTime = (time: string): null | Time => {\n const values = (time || '').split(':')\n if (values.length >= 2) {\n let hours = Number.parseInt(values[0], 10)\n const minutes = Number.parseInt(values[1], 10)\n const timeUpper = time.toUpperCase()\n if (timeUpper.includes('AM') && hours === 12) {\n hours = 0\n } else if (timeUpper.includes('PM') && hours !== 12) {\n hours += 12\n }\n return {\n hours,\n minutes,\n }\n }\n return null\n}\nconst compareTime = (time1: string, time2: string): number => {\n const value1 = parseTime(time1)\n const value2 = parseTime(time2)\n const minutes1 = value1.minutes + value1.hours * 60\n const minutes2 = value2.minutes + value2.hours * 60\n if (minutes1 === minutes2) {\n return 0\n }\n return minutes1 > minutes2 ? 1 : -1\n}\nconst padTime = (time: number | string) => {\n return `${time}`.padStart(2, '0')\n}\nconst formatTime = (time: Time): string => {\n return `${padTime(time.hours)}:${padTime(time.minutes)}`\n}\nconst nextTime = (time: string, step: string): string => {\n const timeValue = parseTime(time)\n const stepValue = parseTime(step)\n const next = {\n hours: timeValue.hours,\n minutes: timeValue.minutes,\n }\n next.minutes += stepValue.minutes\n next.hours += stepValue.hours\n next.hours += Math.floor(next.minutes / 60)\n next.minutes = next.minutes % 60\n return formatTime(next)\n}\n\nexport default defineComponent({\n name: 'ElTimeSelect',\n components: { ElSelect, ElOption, ElIcon },\n model: {\n prop: 'value',\n event: 'change',\n },\n props: {\n format: {\n type: String,\n default: 'HH:mm',\n },\n modelValue: String,\n disabled: {\n type: Boolean,\n default: false,\n },\n editable: {\n type: Boolean,\n default: true,\n },\n effect: {\n type: String as PropType<'light' | 'dark' | string>,\n default: 'light',\n },\n clearable: {\n type: Boolean,\n default: true,\n },\n size: {\n type: String as PropType<ComponentSize>,\n values: componentSizes,\n default: '',\n },\n placeholder: {\n type: String,\n default: '',\n },\n start: {\n type: String,\n default: '09:00',\n },\n end: {\n type: String,\n default: '18:00',\n },\n step: {\n type: String,\n default: '00:30',\n },\n minTime: {\n type: String,\n default: '',\n },\n maxTime: {\n type: String,\n default: '',\n },\n name: {\n type: String,\n default: '',\n },\n prefixIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: Clock,\n },\n clearIcon: {\n type: [String, Object] as PropType<string | Component>,\n default: CircleClose,\n },\n },\n emits: ['change', 'blur', 'focus', 'update:modelValue'],\n setup(props) {\n const nsInput = useNamespace('input')\n const select = ref(null)\n\n const value = computed(() => props.modelValue)\n const start = computed(() => {\n const time = parseTime(props.start)\n return formatTime(time)\n })\n const end = computed(() => {\n const time = parseTime(props.end)\n return formatTime(time)\n })\n const step = computed(() => {\n const time = parseTime(props.step)\n return formatTime(time)\n })\n const minTime = computed(() => {\n const time = parseTime(props.minTime)\n return time ? formatTime(time) : null\n })\n const maxTime = computed(() => {\n const time = parseTime(props.maxTime)\n return time ? formatTime(time) : null\n })\n const items = computed(() => {\n const result = []\n if (props.start && props.end && props.step) {\n let current = start.value\n let currentTime\n while (compareTime(current, end.value) <= 0) {\n currentTime = dayjs(current, 'HH:mm').format(props.format)\n result.push({\n value: currentTime,\n disabled:\n compareTime(current, minTime.value || '-1:-1') <= 0 ||\n compareTime(current, maxTime.value || '100:100') >= 0,\n })\n current = nextTime(current, step.value)\n }\n }\n return result\n })\n const blur = () => {\n select.value?.blur?.()\n }\n const focus = () => {\n select.value?.focus?.()\n }\n\n return {\n nsInput,\n select,\n value,\n items,\n blur,\n focus,\n }\n },\n})\n</script>\n"],"names":["dayjs","customParseFormat","ElSelect","defineComponent","ElIcon","componentSizes","Clock","CircleClose","useNamespace","ref","computed","_resolveComponent","_openBlock","_createBlock","_withCtx","_createCommentVNode","_createElementBlock","_Fragment","_renderList"],"mappings":"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"}
|
|
@@ -63,6 +63,20 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
63
63
|
default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
|
64
64
|
};
|
|
65
65
|
}, {
|
|
66
|
+
nsInput: {
|
|
67
|
+
namespace: import("vue").ComputedRef<string>;
|
|
68
|
+
b: (blockSuffix?: string) => string;
|
|
69
|
+
e: (element?: string | undefined) => string;
|
|
70
|
+
m: (modifier?: string | undefined) => string;
|
|
71
|
+
be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
|
|
72
|
+
em: (element?: string | undefined, modifier?: string | undefined) => string;
|
|
73
|
+
bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
|
|
74
|
+
bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
|
|
75
|
+
is: {
|
|
76
|
+
(name: string, state: boolean | undefined): string;
|
|
77
|
+
(name: string): string;
|
|
78
|
+
};
|
|
79
|
+
};
|
|
66
80
|
select: import("vue").Ref<null>;
|
|
67
81
|
value: import("vue").ComputedRef<string | undefined>;
|
|
68
82
|
items: import("vue").ComputedRef<never[]>;
|