element-plus 2.3.3 → 2.3.5
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 +323 -225
- package/dist/index.full.min.js +18 -18
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +18 -18
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +323 -226
- 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/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +21 -21
- 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 +21 -21
- 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/affix/src/affix.mjs +1 -1
- package/es/components/avatar/src/avatar.mjs +1 -1
- package/es/components/avatar/src/avatar2.mjs +1 -1
- package/es/components/badge/src/badge2.mjs +1 -1
- package/es/components/button/index.d.ts +15 -0
- package/es/components/button/src/button.d.ts +4 -3
- package/es/components/button/src/button.mjs +5 -1
- package/es/components/button/src/button.mjs.map +1 -1
- package/es/components/button/src/button.vue.d.ts +15 -0
- package/es/components/button/src/button2.mjs +34 -35
- package/es/components/button/src/button2.mjs.map +1 -1
- package/es/components/button/src/use-button.d.ts +11 -0
- package/es/components/button/src/use-button.mjs +12 -0
- package/es/components/button/src/use-button.mjs.map +1 -1
- package/es/components/calendar/index.d.ts +15 -0
- package/es/components/calendar/src/calendar.vue.d.ts +17 -2
- package/es/components/carousel/index.d.ts +10 -0
- package/es/components/carousel/src/carousel-item.vue.d.ts +1 -0
- package/es/components/carousel/src/carousel-item2.mjs +7 -1
- package/es/components/carousel/src/carousel-item2.mjs.map +1 -1
- package/es/components/carousel/src/carousel.mjs +1 -1
- package/es/components/carousel/src/carousel.vue.d.ts +8 -0
- package/es/components/carousel/src/carousel2.mjs +7 -2
- package/es/components/carousel/src/carousel2.mjs.map +1 -1
- package/es/components/carousel/src/constants.d.ts +1 -0
- package/es/components/carousel/src/constants.mjs.map +1 -1
- package/es/components/carousel/src/use-carousel-item.d.ts +1 -0
- package/es/components/carousel/src/use-carousel-item.mjs +7 -5
- package/es/components/carousel/src/use-carousel-item.mjs.map +1 -1
- package/es/components/carousel/src/use-carousel.d.ts +8 -0
- package/es/components/carousel/src/use-carousel.mjs +21 -1
- package/es/components/carousel/src/use-carousel.mjs.map +1 -1
- package/es/components/cascader/index.d.ts +16 -16
- package/es/components/cascader/src/cascader.mjs +1 -1
- package/es/components/cascader/src/cascader.vue.d.ts +8 -8
- package/es/components/cascader/src/cascader2.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.mjs +1 -1
- package/es/components/cascader-panel/src/index.mjs.map +1 -1
- package/es/components/check-tag/index.d.ts +1 -0
- package/es/components/check-tag/src/check-tag.mjs +1 -1
- package/es/components/check-tag/src/check-tag.mjs.map +1 -1
- package/es/components/check-tag/src/check-tag.vue.d.ts +1 -0
- package/es/components/check-tag/src/check-tag2.mjs +3 -2
- package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox.mjs +1 -1
- package/es/components/checkbox/src/composables/use-checkbox-status.mjs +1 -1
- package/es/components/col/src/col2.mjs +1 -1
- package/es/components/collapse/src/collapse.mjs +1 -1
- package/es/components/color-picker/index.d.ts +15 -0
- package/es/components/color-picker/src/color-picker.vue.d.ts +15 -0
- package/es/components/color-picker/src/utils/draggable.mjs +1 -0
- package/es/components/color-picker/src/utils/draggable.mjs.map +1 -1
- package/es/components/countdown/src/countdown.mjs +1 -1
- package/es/components/countdown/src/utils.mjs +1 -1
- package/es/components/date-picker/index.d.ts +173 -172
- package/es/components/date-picker/index.mjs +1 -0
- package/es/components/date-picker/index.mjs.map +1 -1
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +15 -0
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +15 -0
- package/es/components/date-picker/src/date-picker.d.ts +86 -86
- package/es/components/date-picker/src/date-picker.mjs +1 -5
- package/es/components/date-picker/src/date-picker.mjs.map +1 -1
- package/es/components/date-picker/src/panel-utils.d.ts +30 -0
- package/es/components/date-picker/src/props/date-picker.d.ts +77 -0
- package/es/components/date-picker/src/props/date-picker.mjs +3 -0
- package/es/components/date-picker/src/props/date-picker.mjs.map +1 -1
- package/es/components/dialog/src/dialog.mjs +1 -1
- package/es/components/dialog/src/use-dialog.mjs.map +1 -1
- package/es/components/dropdown/index.d.ts +1 -0
- package/es/components/dropdown/index.mjs +1 -0
- package/es/components/dropdown/index.mjs.map +1 -1
- package/es/components/dropdown/src/instance.d.ts +2 -0
- package/es/components/dropdown/src/instance.mjs +2 -0
- package/es/components/dropdown/src/instance.mjs.map +1 -0
- package/es/components/empty/src/empty.mjs.map +1 -1
- package/es/components/form/src/form-item2.mjs +2 -1
- package/es/components/form/src/form-item2.mjs.map +1 -1
- package/es/components/form/src/form.mjs +1 -1
- package/es/components/image/src/image.mjs +1 -1
- package/es/components/image/src/image2.mjs +31 -29
- package/es/components/image/src/image2.mjs.map +1 -1
- package/es/components/image-viewer/src/image-viewer.mjs +1 -1
- package/es/components/image-viewer/src/image-viewer2.mjs +2 -1
- package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
- package/es/components/index.mjs +1 -0
- package/es/components/index.mjs.map +1 -1
- package/es/components/input/src/input2.mjs.map +1 -1
- package/es/components/input/src/utils.mjs +1 -1
- package/es/components/input-number/src/input-number.mjs +1 -1
- package/es/components/input-number/src/input-number2.mjs +5 -3
- package/es/components/input-number/src/input-number2.mjs.map +1 -1
- package/es/components/loading/src/loading.mjs +1 -4
- package/es/components/loading/src/loading.mjs.map +1 -1
- package/es/components/loading/src/service.mjs +4 -4
- package/es/components/loading/src/service.mjs.map +1 -1
- package/es/components/menu/src/menu.mjs +1 -1
- package/es/components/menu/src/menu.mjs.map +1 -1
- package/es/components/menu/src/sub-menu.mjs +1 -1
- package/es/components/menu/src/sub-menu.mjs.map +1 -1
- package/es/components/message/src/message.mjs +1 -1
- package/es/components/message/src/message.mjs.map +1 -1
- package/es/components/message/src/method.mjs +2 -2
- package/es/components/message/src/method.mjs.map +1 -1
- package/es/components/message-box/src/messageBox.mjs +1 -1
- package/es/components/message-box/src/messageBox.mjs.map +1 -1
- package/es/components/notification/src/notify.mjs +1 -1
- package/es/components/notification/src/notify.mjs.map +1 -1
- package/es/components/page-header/src/page-header.mjs.map +1 -1
- package/es/components/pagination/src/pagination.mjs +1 -1
- package/es/components/popconfirm/index.d.ts +15 -0
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +15 -0
- package/es/components/popover/src/popover.mjs +1 -1
- package/es/components/popper/src/utils.d.ts +1 -1
- package/es/components/popper/src/utils.mjs +1 -0
- package/es/components/popper/src/utils.mjs.map +1 -1
- package/es/components/progress/index.d.ts +8 -0
- package/es/components/progress/src/progress.d.ts +2 -0
- package/es/components/progress/src/progress.mjs +2 -0
- package/es/components/progress/src/progress.mjs.map +1 -1
- package/es/components/progress/src/progress.vue.d.ts +8 -0
- package/es/components/progress/src/progress2.mjs +3 -1
- package/es/components/progress/src/progress2.mjs.map +1 -1
- package/es/components/radio/src/radio.mjs +1 -1
- package/es/components/rate/src/rate.mjs +1 -1
- package/es/components/result/src/result.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar.mjs +1 -1
- package/es/components/scrollbar/src/scrollbar2.mjs +2 -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/select.mjs.map +1 -1
- package/es/components/select/src/useSelect.mjs +10 -3
- package/es/components/select/src/useSelect.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
- package/es/components/skeleton/src/skeleton.mjs.map +1 -1
- package/es/components/slider/src/button.mjs +1 -1
- package/es/components/slider/src/slider.mjs +1 -1
- package/es/components/space/src/space.mjs +1 -1
- package/es/components/space/src/use-space.mjs +1 -1
- package/es/components/statistic/src/statistic2.mjs +1 -1
- package/es/components/steps/index.d.ts +2 -0
- package/es/components/steps/src/item.vue.d.ts +1 -0
- package/es/components/steps/src/item2.mjs +10 -7
- package/es/components/steps/src/item2.mjs.map +1 -1
- package/es/components/steps/src/steps.mjs +1 -1
- package/es/components/switch/src/switch.mjs +1 -1
- package/es/components/switch/src/switch2.mjs +1 -1
- package/es/components/table/src/composables/use-scrollbar.mjs +1 -1
- package/es/components/table/src/table-body/index.mjs +1 -1
- package/es/components/table/src/table-body/index.mjs.map +1 -1
- package/es/components/table/src/table-header/event-helper.mjs +7 -3
- package/es/components/table/src/table-header/event-helper.mjs.map +1 -1
- package/es/components/table/src/table-layout.mjs +1 -1
- package/es/components/table/src/table-layout.mjs.map +1 -1
- package/es/components/table/src/util.mjs +1 -1
- package/es/components/table-v2/src/components/row.mjs +1 -1
- package/es/components/table-v2/src/composables/use-row.mjs +1 -1
- package/es/components/table-v2/src/composables/use-styles.mjs +1 -1
- package/es/components/table-v2/src/renderers/cell.mjs +1 -1
- package/es/components/table-v2/src/renderers/cell.mjs.map +1 -1
- package/es/components/table-v2/src/table-grid.mjs +1 -1
- package/es/components/tabs/src/tabs.mjs +1 -2
- package/es/components/tabs/src/tabs.mjs.map +1 -1
- package/es/components/tag/index.d.ts +8 -8
- package/es/components/tag/src/tag.d.ts +2 -2
- package/es/components/tag/src/tag.mjs +2 -2
- package/es/components/tag/src/tag.mjs.map +1 -1
- package/es/components/tag/src/tag.vue.d.ts +8 -8
- package/es/components/tag/src/tag2.mjs +3 -3
- package/es/components/tag/src/tag2.mjs.map +1 -1
- package/es/components/time-picker/src/common/props.d.ts +27 -9
- package/es/components/time-picker/src/common/props.mjs.map +1 -1
- package/es/components/time-picker/src/props/shared.mjs.map +1 -1
- package/es/components/time-picker/src/time-picker.d.ts +6 -0
- package/es/components/time-picker/src/time-picker.mjs.map +1 -1
- package/es/components/time-select/src/time-select.mjs.map +1 -1
- package/es/components/time-select/src/time-select2.mjs.map +1 -1
- package/es/components/timeline/index.d.ts +38 -0
- package/es/components/timeline/src/timeline-item.mjs.map +1 -1
- package/es/components/timeline/src/timeline-item.vue.d.ts +19 -0
- package/es/components/timeline/src/timeline-item2.mjs +9 -7
- package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
- package/es/components/tooltip/src/tooltip2.mjs +1 -1
- package/es/components/tooltip-v2/src/root2.mjs +2 -2
- package/es/components/transfer/index.d.ts +15 -0
- package/es/components/transfer/src/transfer.vue.d.ts +15 -0
- package/es/components/tree/index.d.ts +2 -2
- package/es/components/tree/src/model/useDragNode.mjs +2 -2
- package/es/components/tree/src/model/useDragNode.mjs.map +1 -1
- package/es/components/tree/src/tree.mjs +9 -5
- package/es/components/tree/src/tree.mjs.map +1 -1
- package/es/components/tree/src/tree.type.d.ts +1 -1
- package/es/components/tree/src/tree.vue.d.ts +1 -1
- package/es/components/tree-select/src/tree-select.mjs.map +1 -1
- package/es/components/tree-select/src/tree.mjs +20 -3
- package/es/components/tree-select/src/tree.mjs.map +1 -1
- package/es/components/upload/index.d.ts +8 -0
- package/es/components/upload/src/upload-content2.mjs +5 -1
- package/es/components/upload/src/upload-content2.mjs.map +1 -1
- package/es/components/upload/src/upload-list.vue.d.ts +8 -0
- package/es/components/upload/src/upload.vue.d.ts +8 -0
- package/es/components/virtual-list/src/builders/build-grid.mjs +2 -1
- package/es/components/virtual-list/src/builders/build-grid.mjs.map +1 -1
- package/es/components/virtual-list/src/builders/build-list.mjs +2 -1
- package/es/components/virtual-list/src/builders/build-list.mjs.map +1 -1
- package/es/components/virtual-list/src/components/dynamic-size-grid.mjs +1 -2
- package/es/components/virtual-list/src/components/dynamic-size-grid.mjs.map +1 -1
- package/es/components/virtual-list/src/components/fixed-size-grid.mjs +1 -1
- package/es/directives/click-outside/index.mjs +1 -1
- package/es/directives/click-outside/index.mjs.map +1 -1
- package/es/hooks/use-delayed-toggle/index.mjs +1 -1
- package/es/hooks/use-escape-keydown/index.mjs +2 -1
- package/es/hooks/use-escape-keydown/index.mjs.map +1 -1
- package/es/hooks/use-floating/index.mjs.map +1 -1
- package/es/hooks/use-id/index.mjs +1 -1
- package/es/hooks/use-id/index.mjs.map +1 -1
- package/es/hooks/use-lockscreen/index.mjs +1 -1
- package/es/hooks/use-lockscreen/index.mjs.map +1 -1
- package/es/hooks/use-model-toggle/index.mjs +2 -1
- package/es/hooks/use-model-toggle/index.mjs.map +1 -1
- package/es/hooks/use-popper-container/index.mjs +2 -1
- package/es/hooks/use-popper-container/index.mjs.map +1 -1
- package/es/hooks/use-teleport/index.mjs +1 -1
- package/es/hooks/use-teleport/index.mjs.map +1 -1
- package/es/hooks/use-z-index/index.mjs +1 -1
- package/es/index.mjs +1 -0
- package/es/index.mjs.map +1 -1
- package/es/locale/lang/fa.mjs +20 -20
- package/es/locale/lang/fa.mjs.map +1 -1
- package/es/utils/browser.d.ts +2 -0
- package/es/utils/browser.mjs +1 -0
- package/es/utils/browser.mjs.map +1 -1
- package/es/utils/dom/position.mjs +1 -0
- package/es/utils/dom/position.mjs.map +1 -1
- package/es/utils/dom/scroll.mjs +2 -1
- package/es/utils/dom/scroll.mjs.map +1 -1
- package/es/utils/dom/style.mjs +3 -2
- package/es/utils/dom/style.mjs.map +1 -1
- package/es/utils/i18n.mjs +1 -1
- package/es/utils/i18n.mjs.map +1 -1
- package/es/utils/index.mjs +2 -2
- package/es/utils/raf.mjs +1 -0
- package/es/utils/raf.mjs.map +1 -1
- package/es/utils/types.d.ts +2 -1
- package/es/utils/types.mjs +3 -2
- package/es/utils/types.mjs.map +1 -1
- package/es/utils/vue/global-node.mjs +1 -0
- package/es/utils/vue/global-node.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/affix/src/affix.js +3 -3
- package/lib/components/affix/src/affix.js.map +1 -1
- package/lib/components/avatar/src/avatar.js +2 -2
- package/lib/components/avatar/src/avatar.js.map +1 -1
- package/lib/components/avatar/src/avatar2.js +2 -2
- package/lib/components/avatar/src/avatar2.js.map +1 -1
- package/lib/components/badge/src/badge2.js +2 -2
- package/lib/components/badge/src/badge2.js.map +1 -1
- package/lib/components/button/index.d.ts +15 -0
- package/lib/components/button/src/button.d.ts +4 -3
- package/lib/components/button/src/button.js +4 -0
- package/lib/components/button/src/button.js.map +1 -1
- package/lib/components/button/src/button.vue.d.ts +15 -0
- package/lib/components/button/src/button2.js +33 -34
- package/lib/components/button/src/button2.js.map +1 -1
- package/lib/components/button/src/use-button.d.ts +11 -0
- package/lib/components/button/src/use-button.js +12 -0
- package/lib/components/button/src/use-button.js.map +1 -1
- package/lib/components/calendar/index.d.ts +15 -0
- package/lib/components/calendar/src/calendar.vue.d.ts +17 -2
- package/lib/components/carousel/index.d.ts +10 -0
- package/lib/components/carousel/src/carousel-item.vue.d.ts +1 -0
- package/lib/components/carousel/src/carousel-item2.js +7 -1
- package/lib/components/carousel/src/carousel-item2.js.map +1 -1
- package/lib/components/carousel/src/carousel.js +2 -2
- package/lib/components/carousel/src/carousel.js.map +1 -1
- package/lib/components/carousel/src/carousel.vue.d.ts +8 -0
- package/lib/components/carousel/src/carousel2.js +7 -2
- package/lib/components/carousel/src/carousel2.js.map +1 -1
- package/lib/components/carousel/src/constants.d.ts +1 -0
- package/lib/components/carousel/src/constants.js.map +1 -1
- package/lib/components/carousel/src/use-carousel-item.d.ts +1 -0
- package/lib/components/carousel/src/use-carousel-item.js +7 -5
- package/lib/components/carousel/src/use-carousel-item.js.map +1 -1
- package/lib/components/carousel/src/use-carousel.d.ts +8 -0
- package/lib/components/carousel/src/use-carousel.js +21 -1
- package/lib/components/carousel/src/use-carousel.js.map +1 -1
- package/lib/components/cascader/index.d.ts +16 -16
- package/lib/components/cascader/src/cascader.js +2 -2
- package/lib/components/cascader/src/cascader.js.map +1 -1
- package/lib/components/cascader/src/cascader.vue.d.ts +8 -8
- package/lib/components/cascader/src/cascader2.js.map +1 -1
- package/lib/components/cascader-panel/src/index.js +1 -1
- package/lib/components/cascader-panel/src/index.js.map +1 -1
- package/lib/components/check-tag/index.d.ts +1 -0
- package/lib/components/check-tag/src/check-tag.js +3 -3
- package/lib/components/check-tag/src/check-tag.js.map +1 -1
- package/lib/components/check-tag/src/check-tag.vue.d.ts +1 -0
- package/lib/components/check-tag/src/check-tag2.js +2 -1
- package/lib/components/check-tag/src/check-tag2.js.map +1 -1
- package/lib/components/checkbox/src/checkbox.js +3 -3
- package/lib/components/checkbox/src/checkbox.js.map +1 -1
- package/lib/components/checkbox/src/composables/use-checkbox-status.js +2 -2
- package/lib/components/checkbox/src/composables/use-checkbox-status.js.map +1 -1
- package/lib/components/col/src/col2.js +3 -3
- package/lib/components/col/src/col2.js.map +1 -1
- package/lib/components/collapse/src/collapse.js +2 -2
- package/lib/components/collapse/src/collapse.js.map +1 -1
- package/lib/components/color-picker/index.d.ts +15 -0
- package/lib/components/color-picker/src/color-picker.vue.d.ts +15 -0
- package/lib/components/color-picker/src/utils/draggable.js +1 -0
- package/lib/components/color-picker/src/utils/draggable.js.map +1 -1
- package/lib/components/countdown/src/countdown.js +2 -2
- package/lib/components/countdown/src/countdown.js.map +1 -1
- package/lib/components/countdown/src/utils.js +2 -2
- package/lib/components/countdown/src/utils.js.map +1 -1
- package/lib/components/date-picker/index.d.ts +173 -172
- package/lib/components/date-picker/index.js +4 -2
- package/lib/components/date-picker/index.js.map +1 -1
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +15 -0
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +15 -0
- package/lib/components/date-picker/src/date-picker.d.ts +86 -86
- package/lib/components/date-picker/src/date-picker.js +1 -5
- package/lib/components/date-picker/src/date-picker.js.map +1 -1
- package/lib/components/date-picker/src/panel-utils.d.ts +30 -0
- package/lib/components/date-picker/src/props/date-picker.d.ts +77 -0
- package/lib/components/date-picker/src/props/date-picker.js +3 -0
- package/lib/components/date-picker/src/props/date-picker.js.map +1 -1
- package/lib/components/dialog/src/dialog.js +2 -2
- package/lib/components/dialog/src/dialog.js.map +1 -1
- package/lib/components/dialog/src/use-dialog.js.map +1 -1
- package/lib/components/dropdown/index.d.ts +1 -0
- package/lib/components/dropdown/index.js +1 -0
- package/lib/components/dropdown/index.js.map +1 -1
- package/lib/components/dropdown/src/instance.d.ts +2 -0
- package/lib/components/dropdown/src/instance.js +3 -0
- package/lib/components/dropdown/src/instance.js.map +1 -0
- package/lib/components/empty/src/empty.js.map +1 -1
- package/lib/components/form/src/form-item2.js +2 -1
- package/lib/components/form/src/form-item2.js.map +1 -1
- package/lib/components/form/src/form.js +2 -2
- package/lib/components/form/src/form.js.map +1 -1
- package/lib/components/image/src/image.js +2 -2
- package/lib/components/image/src/image.js.map +1 -1
- package/lib/components/image/src/image2.js +30 -28
- package/lib/components/image/src/image2.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer.js +2 -2
- package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
- package/lib/components/image-viewer/src/image-viewer2.js +2 -1
- package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
- package/lib/components/index.js +2 -0
- package/lib/components/index.js.map +1 -1
- package/lib/components/input/src/input2.js.map +1 -1
- package/lib/components/input/src/utils.js +3 -3
- package/lib/components/input/src/utils.js.map +1 -1
- package/lib/components/input-number/src/input-number.js +4 -4
- package/lib/components/input-number/src/input-number.js.map +1 -1
- package/lib/components/input-number/src/input-number2.js +10 -8
- package/lib/components/input-number/src/input-number2.js.map +1 -1
- package/lib/components/loading/src/loading.js +1 -4
- package/lib/components/loading/src/loading.js.map +1 -1
- package/lib/components/loading/src/service.js +4 -4
- package/lib/components/loading/src/service.js.map +1 -1
- package/lib/components/menu/src/menu.js +1 -1
- package/lib/components/menu/src/menu.js.map +1 -1
- package/lib/components/menu/src/sub-menu.js +1 -1
- package/lib/components/menu/src/sub-menu.js.map +1 -1
- package/lib/components/message/src/message.js +1 -1
- package/lib/components/message/src/message.js.map +1 -1
- package/lib/components/message/src/method.js +2 -2
- package/lib/components/message/src/method.js.map +1 -1
- package/lib/components/message-box/src/messageBox.js +1 -1
- package/lib/components/message-box/src/messageBox.js.map +1 -1
- package/lib/components/notification/src/notify.js +1 -1
- package/lib/components/notification/src/notify.js.map +1 -1
- package/lib/components/page-header/src/page-header.js.map +1 -1
- package/lib/components/pagination/src/pagination.js +8 -8
- package/lib/components/pagination/src/pagination.js.map +1 -1
- package/lib/components/popconfirm/index.d.ts +15 -0
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +15 -0
- package/lib/components/popover/src/popover.js +2 -2
- package/lib/components/popover/src/popover.js.map +1 -1
- package/lib/components/popper/src/utils.d.ts +1 -1
- package/lib/components/popper/src/utils.js +1 -0
- package/lib/components/popper/src/utils.js.map +1 -1
- package/lib/components/progress/index.d.ts +8 -0
- package/lib/components/progress/src/progress.d.ts +2 -0
- package/lib/components/progress/src/progress.js +2 -0
- package/lib/components/progress/src/progress.js.map +1 -1
- package/lib/components/progress/src/progress.vue.d.ts +8 -0
- package/lib/components/progress/src/progress2.js +3 -1
- package/lib/components/progress/src/progress2.js.map +1 -1
- package/lib/components/radio/src/radio.js +3 -3
- package/lib/components/radio/src/radio.js.map +1 -1
- package/lib/components/rate/src/rate.js +3 -3
- package/lib/components/rate/src/rate.js.map +1 -1
- package/lib/components/result/src/result.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar.js +2 -2
- package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar2.js +4 -3
- 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/select.js.map +1 -1
- package/lib/components/select/src/useSelect.js +11 -4
- package/lib/components/select/src/useSelect.js.map +1 -1
- package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
- package/lib/components/skeleton/src/skeleton.js.map +1 -1
- package/lib/components/slider/src/button.js +2 -2
- package/lib/components/slider/src/button.js.map +1 -1
- package/lib/components/slider/src/slider.js +2 -2
- package/lib/components/slider/src/slider.js.map +1 -1
- package/lib/components/space/src/space.js +3 -3
- package/lib/components/space/src/space.js.map +1 -1
- package/lib/components/space/src/use-space.js +2 -2
- package/lib/components/space/src/use-space.js.map +1 -1
- package/lib/components/statistic/src/statistic2.js +2 -2
- package/lib/components/statistic/src/statistic2.js.map +1 -1
- package/lib/components/steps/index.d.ts +2 -0
- package/lib/components/steps/src/item.vue.d.ts +1 -0
- package/lib/components/steps/src/item2.js +11 -8
- package/lib/components/steps/src/item2.js.map +1 -1
- package/lib/components/steps/src/steps.js +2 -2
- package/lib/components/steps/src/steps.js.map +1 -1
- package/lib/components/switch/src/switch.js +4 -4
- package/lib/components/switch/src/switch.js.map +1 -1
- package/lib/components/switch/src/switch2.js +4 -4
- package/lib/components/switch/src/switch2.js.map +1 -1
- package/lib/components/table/src/composables/use-scrollbar.js +2 -2
- package/lib/components/table/src/composables/use-scrollbar.js.map +1 -1
- package/lib/components/table/src/table-body/index.js +1 -1
- package/lib/components/table/src/table-body/index.js.map +1 -1
- package/lib/components/table/src/table-header/event-helper.js +7 -3
- package/lib/components/table/src/table-header/event-helper.js.map +1 -1
- package/lib/components/table/src/table-layout.js +1 -1
- package/lib/components/table/src/table-layout.js.map +1 -1
- package/lib/components/table/src/util.js +4 -4
- package/lib/components/table/src/util.js.map +1 -1
- package/lib/components/table-v2/src/components/row.js +2 -2
- package/lib/components/table-v2/src/components/row.js.map +1 -1
- package/lib/components/table-v2/src/composables/use-row.js +2 -2
- package/lib/components/table-v2/src/composables/use-row.js.map +1 -1
- package/lib/components/table-v2/src/composables/use-styles.js +3 -3
- package/lib/components/table-v2/src/composables/use-styles.js.map +1 -1
- package/lib/components/table-v2/src/renderers/cell.js +1 -1
- package/lib/components/table-v2/src/renderers/cell.js.map +1 -1
- package/lib/components/table-v2/src/table-grid.js +2 -2
- package/lib/components/table-v2/src/table-grid.js.map +1 -1
- package/lib/components/tabs/src/tabs.js +2 -3
- package/lib/components/tabs/src/tabs.js.map +1 -1
- package/lib/components/tag/index.d.ts +8 -8
- package/lib/components/tag/src/tag.d.ts +2 -2
- package/lib/components/tag/src/tag.js +2 -2
- package/lib/components/tag/src/tag.js.map +1 -1
- package/lib/components/tag/src/tag.vue.d.ts +8 -8
- package/lib/components/tag/src/tag2.js +3 -3
- package/lib/components/tag/src/tag2.js.map +1 -1
- package/lib/components/time-picker/src/common/props.d.ts +27 -9
- package/lib/components/time-picker/src/common/props.js.map +1 -1
- package/lib/components/time-picker/src/props/shared.js.map +1 -1
- package/lib/components/time-picker/src/time-picker.d.ts +6 -0
- package/lib/components/time-picker/src/time-picker.js.map +1 -1
- package/lib/components/time-select/src/time-select.js.map +1 -1
- package/lib/components/time-select/src/time-select2.js.map +1 -1
- package/lib/components/timeline/index.d.ts +38 -0
- package/lib/components/timeline/src/timeline-item.js.map +1 -1
- package/lib/components/timeline/src/timeline-item.vue.d.ts +19 -0
- package/lib/components/timeline/src/timeline-item2.js +8 -6
- package/lib/components/timeline/src/timeline-item2.js.map +1 -1
- package/lib/components/tooltip/src/tooltip2.js +2 -2
- package/lib/components/tooltip/src/tooltip2.js.map +1 -1
- package/lib/components/tooltip-v2/src/root2.js +1 -1
- package/lib/components/tooltip-v2/src/root2.js.map +1 -1
- package/lib/components/transfer/index.d.ts +15 -0
- package/lib/components/transfer/src/transfer.vue.d.ts +15 -0
- package/lib/components/tree/index.d.ts +2 -2
- package/lib/components/tree/src/model/useDragNode.js +2 -2
- package/lib/components/tree/src/model/useDragNode.js.map +1 -1
- package/lib/components/tree/src/tree.js +8 -4
- package/lib/components/tree/src/tree.js.map +1 -1
- package/lib/components/tree/src/tree.type.d.ts +1 -1
- package/lib/components/tree/src/tree.vue.d.ts +1 -1
- package/lib/components/tree-select/src/tree-select.js.map +1 -1
- package/lib/components/tree-select/src/tree.js +20 -3
- package/lib/components/tree-select/src/tree.js.map +1 -1
- package/lib/components/upload/index.d.ts +8 -0
- package/lib/components/upload/src/upload-content2.js +4 -0
- package/lib/components/upload/src/upload-content2.js.map +1 -1
- package/lib/components/upload/src/upload-list.vue.d.ts +8 -0
- package/lib/components/upload/src/upload.vue.d.ts +8 -0
- package/lib/components/virtual-list/src/builders/build-grid.js +8 -7
- package/lib/components/virtual-list/src/builders/build-grid.js.map +1 -1
- package/lib/components/virtual-list/src/builders/build-list.js +6 -5
- package/lib/components/virtual-list/src/builders/build-list.js.map +1 -1
- package/lib/components/virtual-list/src/components/dynamic-size-grid.js +2 -3
- package/lib/components/virtual-list/src/components/dynamic-size-grid.js.map +1 -1
- package/lib/components/virtual-list/src/components/fixed-size-grid.js +3 -3
- package/lib/components/virtual-list/src/components/fixed-size-grid.js.map +1 -1
- package/lib/directives/click-outside/index.js +1 -1
- package/lib/directives/click-outside/index.js.map +1 -1
- package/lib/hooks/use-delayed-toggle/index.js +2 -2
- package/lib/hooks/use-delayed-toggle/index.js.map +1 -1
- package/lib/hooks/use-escape-keydown/index.js +2 -1
- package/lib/hooks/use-escape-keydown/index.js.map +1 -1
- package/lib/hooks/use-floating/index.js.map +1 -1
- package/lib/hooks/use-id/index.js +1 -1
- package/lib/hooks/use-id/index.js.map +1 -1
- package/lib/hooks/use-lockscreen/index.js +1 -1
- package/lib/hooks/use-lockscreen/index.js.map +1 -1
- package/lib/hooks/use-model-toggle/index.js +3 -2
- package/lib/hooks/use-model-toggle/index.js.map +1 -1
- package/lib/hooks/use-popper-container/index.js +2 -1
- package/lib/hooks/use-popper-container/index.js.map +1 -1
- package/lib/hooks/use-teleport/index.js +1 -1
- package/lib/hooks/use-teleport/index.js.map +1 -1
- package/lib/hooks/use-z-index/index.js +2 -2
- package/lib/hooks/use-z-index/index.js.map +1 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/locale/lang/fa.js +20 -20
- package/lib/locale/lang/fa.js.map +1 -1
- package/lib/utils/browser.d.ts +2 -0
- package/lib/utils/browser.js +8 -0
- package/lib/utils/browser.js.map +1 -1
- package/lib/utils/dom/position.js +1 -0
- package/lib/utils/dom/position.js.map +1 -1
- package/lib/utils/dom/scroll.js +2 -1
- package/lib/utils/dom/scroll.js.map +1 -1
- package/lib/utils/dom/style.js +3 -2
- package/lib/utils/dom/style.js.map +1 -1
- package/lib/utils/i18n.js +1 -1
- package/lib/utils/i18n.js.map +1 -1
- package/lib/utils/index.js +11 -9
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/raf.js +1 -0
- package/lib/utils/raf.js.map +1 -1
- package/lib/utils/types.d.ts +2 -1
- package/lib/utils/types.js +4 -9
- package/lib/utils/types.js.map +1 -1
- package/lib/utils/vue/global-node.js +1 -0
- package/lib/utils/vue/global-node.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/tags.json +1 -1
- package/theme-chalk/el-carousel-item.css +1 -1
- package/theme-chalk/el-carousel.css +1 -1
- package/theme-chalk/el-menu.css +1 -1
- package/theme-chalk/el-progress.css +1 -1
- package/theme-chalk/el-transfer.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/carousel-item.scss +8 -0
- package/theme-chalk/src/carousel.scss +9 -2
- package/theme-chalk/src/menu.scss +1 -0
- package/theme-chalk/src/progress.scss +27 -0
- package/theme-chalk/src/text.scss +1 -1
- package/theme-chalk/src/transfer.scss +1 -2
- package/web-types.json +1 -1
|
@@ -5,7 +5,7 @@ import '../../../constants/index.mjs';
|
|
|
5
5
|
import SpaceItem from './item.mjs';
|
|
6
6
|
import { useSpace } from './use-space.mjs';
|
|
7
7
|
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
|
8
|
-
import { isNumber } from '
|
|
8
|
+
import { isNumber } from '../../../utils/types.mjs';
|
|
9
9
|
import { componentSizes } from '../../../constants/size.mjs';
|
|
10
10
|
import { isFragment, PatchFlags, isValidElementNode } from '../../../utils/vue/vnode.mjs';
|
|
11
11
|
|
|
@@ -3,7 +3,7 @@ import '../../../utils/index.mjs';
|
|
|
3
3
|
import '../../../hooks/index.mjs';
|
|
4
4
|
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
5
5
|
import { isArray } from '@vue/shared';
|
|
6
|
-
import { isNumber } from '
|
|
6
|
+
import { isNumber } from '../../../utils/types.mjs';
|
|
7
7
|
|
|
8
8
|
const SIZE_MAP = {
|
|
9
9
|
small: 8,
|
|
@@ -5,7 +5,7 @@ import { statisticProps } from './statistic.mjs';
|
|
|
5
5
|
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
6
6
|
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
7
7
|
import { isFunction } from '@vue/shared';
|
|
8
|
-
import { isNumber } from '
|
|
8
|
+
import { isNumber } from '../../../utils/types.mjs';
|
|
9
9
|
|
|
10
10
|
const __default__ = defineComponent({
|
|
11
11
|
name: "ElStatistic"
|
|
@@ -142,6 +142,7 @@ export declare const ElSteps: import("element-plus/es/utils").SFCWithInstall<imp
|
|
|
142
142
|
stepsCount: import("vue").ComputedRef<number>;
|
|
143
143
|
isLast: import("vue").ComputedRef<boolean>;
|
|
144
144
|
space: import("vue").ComputedRef<string | number>;
|
|
145
|
+
containerKls: import("vue").ComputedRef<string[]>;
|
|
145
146
|
style: import("vue").ComputedRef<import("vue").CSSProperties>;
|
|
146
147
|
setIndex: (val: number) => void;
|
|
147
148
|
calcProgress: (status: string) => void;
|
|
@@ -289,6 +290,7 @@ export declare const ElStep: import("element-plus/es/utils").SFCWithInstall<impo
|
|
|
289
290
|
stepsCount: import("vue").ComputedRef<number>;
|
|
290
291
|
isLast: import("vue").ComputedRef<boolean>;
|
|
291
292
|
space: import("vue").ComputedRef<string | number>;
|
|
293
|
+
containerKls: import("vue").ComputedRef<string[]>;
|
|
292
294
|
style: import("vue").ComputedRef<import("vue").CSSProperties>;
|
|
293
295
|
setIndex: (val: number) => void;
|
|
294
296
|
calcProgress: (status: string) => void;
|
|
@@ -73,6 +73,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
73
73
|
stepsCount: import("vue").ComputedRef<number>;
|
|
74
74
|
isLast: import("vue").ComputedRef<boolean>;
|
|
75
75
|
space: import("vue").ComputedRef<string | number>;
|
|
76
|
+
containerKls: import("vue").ComputedRef<string[]>;
|
|
76
77
|
style: import("vue").ComputedRef<CSSProperties>;
|
|
77
78
|
setIndex: (val: number) => void;
|
|
78
79
|
calcProgress: (status: string) => void;
|
|
@@ -6,7 +6,7 @@ import '../../../utils/index.mjs';
|
|
|
6
6
|
import { stepProps } from './item.mjs';
|
|
7
7
|
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
8
8
|
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
9
|
-
import { isNumber } from '
|
|
9
|
+
import { isNumber } from '../../../utils/types.mjs';
|
|
10
10
|
|
|
11
11
|
const __default__ = defineComponent({
|
|
12
12
|
name: "ElStep"
|
|
@@ -60,6 +60,14 @@ const _sfc_main = defineComponent({
|
|
|
60
60
|
const space = computed(() => {
|
|
61
61
|
return isSimple.value ? "" : parent.props.space;
|
|
62
62
|
});
|
|
63
|
+
const containerKls = computed(() => {
|
|
64
|
+
return [
|
|
65
|
+
ns.b(),
|
|
66
|
+
ns.is(isSimple.value ? "simple" : parent.props.direction),
|
|
67
|
+
ns.is("flex", isLast.value && !space.value && !isCenter.value),
|
|
68
|
+
ns.is("center", isCenter.value && !isVertical.value && !isSimple.value)
|
|
69
|
+
];
|
|
70
|
+
});
|
|
63
71
|
const style = computed(() => {
|
|
64
72
|
const style2 = {
|
|
65
73
|
flexBasis: isNumber(space.value) ? `${space.value}px` : space.value ? space.value : `${100 / (stepsCount.value - (isCenter.value ? 0 : 1))}%`
|
|
@@ -106,12 +114,7 @@ const _sfc_main = defineComponent({
|
|
|
106
114
|
return (_ctx, _cache) => {
|
|
107
115
|
return openBlock(), createElementBlock("div", {
|
|
108
116
|
style: normalizeStyle(unref(style)),
|
|
109
|
-
class: normalizeClass(
|
|
110
|
-
unref(ns).b(),
|
|
111
|
-
unref(ns).is(unref(isSimple) ? "simple" : unref(parent).props.direction),
|
|
112
|
-
unref(ns).is("flex", unref(isLast) && !unref(space) && !unref(isCenter)),
|
|
113
|
-
unref(ns).is("center", unref(isCenter) && !unref(isVertical) && !unref(isSimple))
|
|
114
|
-
])
|
|
117
|
+
class: normalizeClass(unref(containerKls))
|
|
115
118
|
}, [
|
|
116
119
|
createCommentVNode(" icon & line "),
|
|
117
120
|
createElementVNode("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item2.mjs","sources":["../../../../../../packages/components/steps/src/item.vue"],"sourcesContent":["<template>\n <div\n :style=\"style\"\n :class=\"[\n ns.b(),\n ns.is(isSimple ? 'simple' : parent.props.direction),\n ns.is('flex', isLast && !space && !isCenter),\n ns.is('center', isCenter && !isVertical && !isSimple),\n ]\"\n >\n <!-- icon & line -->\n <div :class=\"[ns.e('head'), ns.is(currentStatus)]\">\n <div v-if=\"!isSimple\" :class=\"ns.e('line')\">\n <i :class=\"ns.e('line-inner')\" :style=\"lineStyle\" />\n </div>\n\n <div\n :class=\"[ns.e('icon'), ns.is(icon || $slots.icon ? 'icon' : 'text')]\"\n >\n <slot name=\"icon\">\n <el-icon v-if=\"icon\" :class=\"ns.e('icon-inner')\">\n <component :is=\"icon\" />\n </el-icon>\n <el-icon\n v-else-if=\"currentStatus === 'success'\"\n :class=\"[ns.e('icon-inner'), ns.is('status')]\"\n >\n <Check />\n </el-icon>\n <el-icon\n v-else-if=\"currentStatus === 'error'\"\n :class=\"[ns.e('icon-inner'), ns.is('status')]\"\n >\n <Close />\n </el-icon>\n <div v-else-if=\"!isSimple\" :class=\"ns.e('icon-inner')\">\n {{ index + 1 }}\n </div>\n </slot>\n </div>\n </div>\n <!-- title & description -->\n <div :class=\"ns.e('main')\">\n <div :class=\"[ns.e('title'), ns.is(currentStatus)]\">\n <slot name=\"title\">{{ title }}</slot>\n </div>\n <div v-if=\"isSimple\" :class=\"ns.e('arrow')\" />\n <div v-else :class=\"[ns.e('description'), ns.is(currentStatus)]\">\n <slot name=\"description\">{{ description }}</slot>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n getCurrentInstance,\n inject,\n onBeforeUnmount,\n onMounted,\n reactive,\n ref,\n watch,\n} from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { Check, Close } from '@element-plus/icons-vue'\nimport { isNumber } from '@element-plus/utils'\nimport { stepProps } from './item'\n\nimport type { CSSProperties, Ref } from 'vue'\n\nexport interface IStepsProps {\n space: number | string\n active: number\n direction: string\n alignCenter: boolean\n simple: boolean\n finishStatus: string\n processStatus: string\n}\n\nexport interface StepItemState {\n uid: number | undefined\n currentStatus: string\n setIndex: (val: number) => void\n calcProgress: (status: string) => void\n}\n\nexport interface IStepsInject {\n props: IStepsProps\n steps: Ref<StepItemState[]>\n}\n\ndefineOptions({\n name: 'ElStep',\n})\n\nconst props = defineProps(stepProps)\nconst ns = useNamespace('step')\nconst index = ref(-1)\nconst lineStyle = ref({})\nconst internalStatus = ref('')\nconst parent = inject('ElSteps') as IStepsInject\nconst currentInstance = getCurrentInstance()\n\nonMounted(() => {\n watch(\n [\n () => parent.props.active,\n () => parent.props.processStatus,\n () => parent.props.finishStatus,\n ],\n ([active]) => {\n updateStatus(active)\n },\n { immediate: true }\n )\n})\n\nonBeforeUnmount(() => {\n parent.steps.value = parent.steps.value.filter(\n (instance) => instance.uid !== currentInstance?.uid\n )\n})\n\nconst currentStatus = computed(() => {\n return props.status || internalStatus.value\n})\n\nconst prevStatus = computed(() => {\n const prevStep = parent.steps.value[index.value - 1]\n return prevStep ? prevStep.currentStatus : 'wait'\n})\n\nconst isCenter = computed(() => {\n return parent.props.alignCenter\n})\n\nconst isVertical = computed(() => {\n return parent.props.direction === 'vertical'\n})\n\nconst isSimple = computed(() => {\n return parent.props.simple\n})\n\nconst stepsCount = computed(() => {\n return parent.steps.value.length\n})\n\nconst isLast = computed(() => {\n return parent.steps.value[stepsCount.value - 1]?.uid === currentInstance?.uid\n})\n\nconst space = computed(() => {\n return isSimple.value ? '' : parent.props.space\n})\n\nconst style = computed(() => {\n const style: CSSProperties = {\n flexBasis: isNumber(space.value)\n ? `${space.value}px`\n : space.value\n ? space.value\n : `${100 / (stepsCount.value - (isCenter.value ? 0 : 1))}%`,\n }\n if (isVertical.value) return style\n if (isLast.value) {\n style.maxWidth = `${100 / stepsCount.value}%`\n }\n return style\n})\n\nconst setIndex = (val: number) => {\n index.value = val\n}\n\nconst calcProgress = (status: string) => {\n const isWait = status === 'wait'\n const style: CSSProperties = {\n transitionDelay: `${isWait ? '-' : ''}${150 * index.value}ms`,\n }\n const step = status === parent.props.processStatus || isWait ? 0 : 100\n\n style.borderWidth = step && !isSimple.value ? '1px' : 0\n style[parent.props.direction === 'vertical' ? 'height' : 'width'] = `${step}%`\n lineStyle.value = style\n}\n\nconst updateStatus = (activeIndex: number) => {\n if (activeIndex > index.value) {\n internalStatus.value = parent.props.finishStatus\n } else if (activeIndex === index.value && prevStatus.value !== 'error') {\n internalStatus.value = parent.props.processStatus\n } else {\n internalStatus.value = 'wait'\n }\n const prevChild = parent.steps.value[index.value - 1]\n if (prevChild) prevChild.calcProgress(internalStatus.value)\n}\n\nconst stepItemState = reactive({\n uid: computed(() => currentInstance?.uid),\n currentStatus,\n setIndex,\n calcProgress,\n})\n\nparent.steps.value = [...parent.steps.value, stepItemState]\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"item2.mjs","sources":["../../../../../../packages/components/steps/src/item.vue"],"sourcesContent":["<template>\n <div :style=\"style\" :class=\"containerKls\">\n <!-- icon & line -->\n <div :class=\"[ns.e('head'), ns.is(currentStatus)]\">\n <div v-if=\"!isSimple\" :class=\"ns.e('line')\">\n <i :class=\"ns.e('line-inner')\" :style=\"lineStyle\" />\n </div>\n\n <div\n :class=\"[ns.e('icon'), ns.is(icon || $slots.icon ? 'icon' : 'text')]\"\n >\n <slot name=\"icon\">\n <el-icon v-if=\"icon\" :class=\"ns.e('icon-inner')\">\n <component :is=\"icon\" />\n </el-icon>\n <el-icon\n v-else-if=\"currentStatus === 'success'\"\n :class=\"[ns.e('icon-inner'), ns.is('status')]\"\n >\n <Check />\n </el-icon>\n <el-icon\n v-else-if=\"currentStatus === 'error'\"\n :class=\"[ns.e('icon-inner'), ns.is('status')]\"\n >\n <Close />\n </el-icon>\n <div v-else-if=\"!isSimple\" :class=\"ns.e('icon-inner')\">\n {{ index + 1 }}\n </div>\n </slot>\n </div>\n </div>\n <!-- title & description -->\n <div :class=\"ns.e('main')\">\n <div :class=\"[ns.e('title'), ns.is(currentStatus)]\">\n <slot name=\"title\">{{ title }}</slot>\n </div>\n <div v-if=\"isSimple\" :class=\"ns.e('arrow')\" />\n <div v-else :class=\"[ns.e('description'), ns.is(currentStatus)]\">\n <slot name=\"description\">{{ description }}</slot>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n getCurrentInstance,\n inject,\n onBeforeUnmount,\n onMounted,\n reactive,\n ref,\n watch,\n} from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { Check, Close } from '@element-plus/icons-vue'\nimport { isNumber } from '@element-plus/utils'\nimport { stepProps } from './item'\n\nimport type { CSSProperties, Ref } from 'vue'\n\nexport interface IStepsProps {\n space: number | string\n active: number\n direction: string\n alignCenter: boolean\n simple: boolean\n finishStatus: string\n processStatus: string\n}\n\nexport interface StepItemState {\n uid: number | undefined\n currentStatus: string\n setIndex: (val: number) => void\n calcProgress: (status: string) => void\n}\n\nexport interface IStepsInject {\n props: IStepsProps\n steps: Ref<StepItemState[]>\n}\n\ndefineOptions({\n name: 'ElStep',\n})\n\nconst props = defineProps(stepProps)\nconst ns = useNamespace('step')\nconst index = ref(-1)\nconst lineStyle = ref({})\nconst internalStatus = ref('')\nconst parent = inject('ElSteps') as IStepsInject\nconst currentInstance = getCurrentInstance()\n\nonMounted(() => {\n watch(\n [\n () => parent.props.active,\n () => parent.props.processStatus,\n () => parent.props.finishStatus,\n ],\n ([active]) => {\n updateStatus(active)\n },\n { immediate: true }\n )\n})\n\nonBeforeUnmount(() => {\n parent.steps.value = parent.steps.value.filter(\n (instance) => instance.uid !== currentInstance?.uid\n )\n})\n\nconst currentStatus = computed(() => {\n return props.status || internalStatus.value\n})\n\nconst prevStatus = computed(() => {\n const prevStep = parent.steps.value[index.value - 1]\n return prevStep ? prevStep.currentStatus : 'wait'\n})\n\nconst isCenter = computed(() => {\n return parent.props.alignCenter\n})\n\nconst isVertical = computed(() => {\n return parent.props.direction === 'vertical'\n})\n\nconst isSimple = computed(() => {\n return parent.props.simple\n})\n\nconst stepsCount = computed(() => {\n return parent.steps.value.length\n})\n\nconst isLast = computed(() => {\n return parent.steps.value[stepsCount.value - 1]?.uid === currentInstance?.uid\n})\n\nconst space = computed(() => {\n return isSimple.value ? '' : parent.props.space\n})\n\nconst containerKls = computed(() => {\n return [\n ns.b(),\n ns.is(isSimple.value ? 'simple' : parent.props.direction),\n ns.is('flex', isLast.value && !space.value && !isCenter.value),\n ns.is('center', isCenter.value && !isVertical.value && !isSimple.value),\n ]\n})\n\nconst style = computed(() => {\n const style: CSSProperties = {\n flexBasis: isNumber(space.value)\n ? `${space.value}px`\n : space.value\n ? space.value\n : `${100 / (stepsCount.value - (isCenter.value ? 0 : 1))}%`,\n }\n if (isVertical.value) return style\n if (isLast.value) {\n style.maxWidth = `${100 / stepsCount.value}%`\n }\n return style\n})\n\nconst setIndex = (val: number) => {\n index.value = val\n}\n\nconst calcProgress = (status: string) => {\n const isWait = status === 'wait'\n const style: CSSProperties = {\n transitionDelay: `${isWait ? '-' : ''}${150 * index.value}ms`,\n }\n const step = status === parent.props.processStatus || isWait ? 0 : 100\n\n style.borderWidth = step && !isSimple.value ? '1px' : 0\n style[parent.props.direction === 'vertical' ? 'height' : 'width'] = `${step}%`\n lineStyle.value = style\n}\n\nconst updateStatus = (activeIndex: number) => {\n if (activeIndex > index.value) {\n internalStatus.value = parent.props.finishStatus\n } else if (activeIndex === index.value && prevStatus.value !== 'error') {\n internalStatus.value = parent.props.processStatus\n } else {\n internalStatus.value = 'wait'\n }\n const prevChild = parent.steps.value[index.value - 1]\n if (prevChild) prevChild.calcProgress(internalStatus.value)\n}\n\nconst stepItemState = reactive({\n uid: computed(() => currentInstance?.uid),\n currentStatus,\n setIndex,\n calcProgress,\n})\n\nparent.steps.value = [...parent.steps.value, stepItemState]\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import '../../../constants/index.mjs';
|
|
|
2
2
|
import '../../../utils/index.mjs';
|
|
3
3
|
import { buildProps } from '../../../utils/vue/props/runtime.mjs';
|
|
4
4
|
import { CHANGE_EVENT } from '../../../constants/event.mjs';
|
|
5
|
-
import { isNumber } from '
|
|
5
|
+
import { isNumber } from '../../../utils/types.mjs';
|
|
6
6
|
|
|
7
7
|
const stepsProps = buildProps({
|
|
8
8
|
space: {
|
|
@@ -4,7 +4,7 @@ import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs
|
|
|
4
4
|
import { iconPropType } from '../../../utils/vue/icon.mjs';
|
|
5
5
|
import { isValidComponentSize } from '../../../utils/vue/validator.mjs';
|
|
6
6
|
import { UPDATE_MODEL_EVENT, CHANGE_EVENT, INPUT_EVENT } from '../../../constants/event.mjs';
|
|
7
|
-
import { isBoolean, isNumber } from '
|
|
7
|
+
import { isBoolean, isNumber } from '../../../utils/types.mjs';
|
|
8
8
|
import { isString } from '@vue/shared';
|
|
9
9
|
|
|
10
10
|
const switchProps = buildProps({
|
|
@@ -15,7 +15,7 @@ import { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';
|
|
|
15
15
|
import { addUnit } from '../../../utils/dom/style.mjs';
|
|
16
16
|
import { UPDATE_MODEL_EVENT, CHANGE_EVENT, INPUT_EVENT } from '../../../constants/event.mjs';
|
|
17
17
|
import { debugWarn, throwError } from '../../../utils/error.mjs';
|
|
18
|
-
import { isBoolean } from '
|
|
18
|
+
import { isBoolean } from '../../../utils/types.mjs';
|
|
19
19
|
|
|
20
20
|
const _hoisted_1 = ["onClick"];
|
|
21
21
|
const _hoisted_2 = ["id", "aria-checked", "aria-disabled", "name", "true-value", "false-value", "disabled", "tabindex", "onKeydown"];
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { defineComponent, getCurrentInstance, inject, watch, onUnmounted, h } from 'vue';
|
|
2
|
-
import { isClient } from '@vueuse/core';
|
|
3
2
|
import '../../../../utils/index.mjs';
|
|
4
3
|
import '../../../../hooks/index.mjs';
|
|
5
4
|
import useLayoutObserver from '../layout-observer.mjs';
|
|
@@ -8,6 +7,7 @@ import { TABLE_INJECTION_KEY } from '../tokens.mjs';
|
|
|
8
7
|
import useRender from './render-helper.mjs';
|
|
9
8
|
import defaultProps from './defaults.mjs';
|
|
10
9
|
import { useNamespace } from '../../../../hooks/use-namespace/index.mjs';
|
|
10
|
+
import { isClient } from '@vueuse/core';
|
|
11
11
|
import { removeClass, addClass } from '../../../../utils/dom/style.mjs';
|
|
12
12
|
|
|
13
13
|
var TableBody = defineComponent({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../../../packages/components/table/src/table-body/index.ts"],"sourcesContent":["// @ts-nocheck\nimport {\n defineComponent,\n getCurrentInstance,\n h,\n inject,\n onUnmounted,\n watch,\n} from 'vue'\nimport {
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../../packages/components/table/src/table-body/index.ts"],"sourcesContent":["// @ts-nocheck\nimport {\n defineComponent,\n getCurrentInstance,\n h,\n inject,\n onUnmounted,\n watch,\n} from 'vue'\nimport { addClass, isClient, removeClass } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport useLayoutObserver from '../layout-observer'\nimport { removePopper } from '../util'\nimport { TABLE_INJECTION_KEY } from '../tokens'\nimport useRender from './render-helper'\nimport defaultProps from './defaults'\n\nimport type { VNode } from 'vue'\n\nexport default defineComponent({\n name: 'ElTableBody',\n props: defaultProps,\n setup(props) {\n const instance = getCurrentInstance()\n const parent = inject(TABLE_INJECTION_KEY)\n const ns = useNamespace('table')\n const { wrappedRowRender, tooltipContent, tooltipTrigger } =\n useRender(props)\n const { onColumnsChange, onScrollableChange } = useLayoutObserver(parent!)\n\n watch(props.store.states.hoverRow, (newVal: any, oldVal: any) => {\n if (!props.store.states.isComplex.value || !isClient) return\n let raf = window.requestAnimationFrame\n if (!raf) {\n raf = (fn) => window.setTimeout(fn, 16)\n }\n raf(() => {\n // just get first level children; fix #9723\n const el = instance?.vnode.el as HTMLElement\n const rows = Array.from(el?.children || []).filter((e) =>\n e?.classList.contains(`${ns.e('row')}`)\n )\n const oldRow = rows[oldVal]\n const newRow = rows[newVal]\n if (oldRow) {\n removeClass(oldRow, 'hover-row')\n }\n if (newRow) {\n addClass(newRow, 'hover-row')\n }\n })\n })\n\n onUnmounted(() => {\n removePopper?.()\n })\n\n return {\n ns,\n onColumnsChange,\n onScrollableChange,\n wrappedRowRender,\n tooltipContent,\n tooltipTrigger,\n }\n },\n render() {\n const { wrappedRowRender, store } = this\n const data = store.states.data.value || []\n return h('tbody', {}, [\n data.reduce((acc: VNode[], row) => {\n return acc.concat(wrappedRowRender(row, acc.length))\n }, []),\n ])\n },\n})\n"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { getCurrentInstance, inject, ref } from 'vue';
|
|
2
|
-
import { isClient } from '@vueuse/core';
|
|
3
2
|
import '../../../../utils/index.mjs';
|
|
4
3
|
import { TABLE_INJECTION_KEY } from '../tokens.mjs';
|
|
4
|
+
import { isClient } from '@vueuse/core';
|
|
5
5
|
import { addClass, removeClass, hasClass } from '../../../../utils/dom/style.mjs';
|
|
6
|
+
import { isElement } from '../../../../utils/types.mjs';
|
|
6
7
|
|
|
7
8
|
function useEvent(props, emit) {
|
|
8
9
|
const instance = getCurrentInstance();
|
|
@@ -88,10 +89,13 @@ function useEvent(props, emit) {
|
|
|
88
89
|
}
|
|
89
90
|
};
|
|
90
91
|
const handleMouseMove = (event, column) => {
|
|
91
|
-
var _a;
|
|
92
92
|
if (column.children && column.children.length > 0)
|
|
93
93
|
return;
|
|
94
|
-
const
|
|
94
|
+
const el = event.target;
|
|
95
|
+
if (!isElement(el)) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
const target = el == null ? void 0 : el.closest("th");
|
|
95
99
|
if (!column || !column.resizable)
|
|
96
100
|
return;
|
|
97
101
|
if (!dragging.value && props.border) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-helper.mjs","sources":["../../../../../../../packages/components/table/src/table-header/event-helper.ts"],"sourcesContent":["// @ts-nocheck\nimport { getCurrentInstance, inject, ref } from 'vue'\nimport { isClient } from '@vueuse/core'\nimport { addClass, hasClass, removeClass } from '@element-plus/utils'\nimport { TABLE_INJECTION_KEY } from '../tokens'\nimport type { TableHeaderProps } from '.'\nimport type { TableColumnCtx } from '../table-column/defaults'\n\nfunction useEvent<T>(props: TableHeaderProps<T>, emit) {\n const instance = getCurrentInstance()\n const parent = inject(TABLE_INJECTION_KEY)\n const handleFilterClick = (event: Event) => {\n event.stopPropagation()\n return\n }\n\n const handleHeaderClick = (event: Event, column: TableColumnCtx<T>) => {\n if (!column.filters && column.sortable) {\n handleSortClick(event, column, false)\n } else if (column.filterable && !column.sortable) {\n handleFilterClick(event)\n }\n parent?.emit('header-click', column, event)\n }\n\n const handleHeaderContextMenu = (event: Event, column: TableColumnCtx<T>) => {\n parent?.emit('header-contextmenu', column, event)\n }\n const draggingColumn = ref(null)\n const dragging = ref(false)\n const dragState = ref({})\n const handleMouseDown = (event: MouseEvent, column: TableColumnCtx<T>) => {\n if (!isClient) return\n if (column.children && column.children.length > 0) return\n /* istanbul ignore if */\n if (draggingColumn.value && props.border) {\n dragging.value = true\n\n const table = parent\n emit('set-drag-visible', true)\n const tableEl = table?.vnode.el\n const tableLeft = tableEl.getBoundingClientRect().left\n const columnEl = instance.vnode.el.querySelector(`th.${column.id}`)\n const columnRect = columnEl.getBoundingClientRect()\n const minLeft = columnRect.left - tableLeft + 30\n\n addClass(columnEl, 'noclick')\n\n dragState.value = {\n startMouseLeft: event.clientX,\n startLeft: columnRect.right - tableLeft,\n startColumnLeft: columnRect.left - tableLeft,\n tableLeft,\n }\n const resizeProxy = table?.refs.resizeProxy as HTMLElement\n resizeProxy.style.left = `${(dragState.value as any).startLeft}px`\n\n document.onselectstart = function () {\n return false\n }\n document.ondragstart = function () {\n return false\n }\n\n const handleMouseMove = (event: MouseEvent) => {\n const deltaLeft =\n event.clientX - (dragState.value as any).startMouseLeft\n const proxyLeft = (dragState.value as any).startLeft + deltaLeft\n\n resizeProxy.style.left = `${Math.max(minLeft, proxyLeft)}px`\n }\n\n const handleMouseUp = () => {\n if (dragging.value) {\n const { startColumnLeft, startLeft } = dragState.value as any\n const finalLeft = Number.parseInt(resizeProxy.style.left, 10)\n const columnWidth = finalLeft - startColumnLeft\n column.width = column.realWidth = columnWidth\n table?.emit(\n 'header-dragend',\n column.width,\n startLeft - startColumnLeft,\n column,\n event\n )\n requestAnimationFrame(() => {\n props.store.scheduleLayout(false, true)\n })\n document.body.style.cursor = ''\n dragging.value = false\n draggingColumn.value = null\n dragState.value = {}\n emit('set-drag-visible', false)\n }\n\n document.removeEventListener('mousemove', handleMouseMove)\n document.removeEventListener('mouseup', handleMouseUp)\n document.onselectstart = null\n document.ondragstart = null\n\n setTimeout(() => {\n removeClass(columnEl, 'noclick')\n }, 0)\n }\n\n document.addEventListener('mousemove', handleMouseMove)\n document.addEventListener('mouseup', handleMouseUp)\n }\n }\n\n const handleMouseMove = (event: MouseEvent, column: TableColumnCtx<T>) => {\n if (column.children && column.children.length > 0) return\n\n const target = (event.target as HTMLElement)?.closest('th')\n\n if (!column || !column.resizable) return\n\n if (!dragging.value && props.border) {\n const rect = target.getBoundingClientRect()\n\n const bodyStyle = document.body.style\n if (rect.width > 12 && rect.right - event.pageX < 8) {\n bodyStyle.cursor = 'col-resize'\n if (hasClass(target, 'is-sortable')) {\n target.style.cursor = 'col-resize'\n }\n draggingColumn.value = column\n } else if (!dragging.value) {\n bodyStyle.cursor = ''\n if (hasClass(target, 'is-sortable')) {\n target.style.cursor = 'pointer'\n }\n draggingColumn.value = null\n }\n }\n }\n\n const handleMouseOut = () => {\n if (!isClient) return\n document.body.style.cursor = ''\n }\n const toggleOrder = ({ order, sortOrders }) => {\n if (order === '') return sortOrders[0]\n const index = sortOrders.indexOf(order || null)\n return sortOrders[index > sortOrders.length - 2 ? 0 : index + 1]\n }\n const handleSortClick = (\n event: Event,\n column: TableColumnCtx<T>,\n givenOrder: string | boolean\n ) => {\n event.stopPropagation()\n const order =\n column.order === givenOrder ? null : givenOrder || toggleOrder(column)\n\n const target = (event.target as HTMLElement)?.closest('th')\n\n if (target) {\n if (hasClass(target, 'noclick')) {\n removeClass(target, 'noclick')\n return\n }\n }\n\n if (!column.sortable) return\n\n const states = props.store.states\n let sortProp = states.sortProp.value\n let sortOrder\n const sortingColumn = states.sortingColumn.value\n\n if (\n sortingColumn !== column ||\n (sortingColumn === column && sortingColumn.order === null)\n ) {\n if (sortingColumn) {\n sortingColumn.order = null\n }\n states.sortingColumn.value = column\n sortProp = column.property\n }\n if (!order) {\n sortOrder = column.order = null\n } else {\n sortOrder = column.order = order\n }\n\n states.sortProp.value = sortProp\n states.sortOrder.value = sortOrder\n\n parent?.store.commit('changeSortCondition')\n }\n\n return {\n handleHeaderClick,\n handleHeaderContextMenu,\n handleMouseDown,\n handleMouseMove,\n handleMouseOut,\n handleSortClick,\n handleFilterClick,\n }\n}\n\nexport default useEvent\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-helper.mjs","sources":["../../../../../../../packages/components/table/src/table-header/event-helper.ts"],"sourcesContent":["// @ts-nocheck\nimport { getCurrentInstance, inject, ref } from 'vue'\nimport {\n addClass,\n hasClass,\n isClient,\n isElement,\n removeClass,\n} from '@element-plus/utils'\nimport { TABLE_INJECTION_KEY } from '../tokens'\nimport type { TableHeaderProps } from '.'\nimport type { TableColumnCtx } from '../table-column/defaults'\n\nfunction useEvent<T>(props: TableHeaderProps<T>, emit) {\n const instance = getCurrentInstance()\n const parent = inject(TABLE_INJECTION_KEY)\n const handleFilterClick = (event: Event) => {\n event.stopPropagation()\n return\n }\n\n const handleHeaderClick = (event: Event, column: TableColumnCtx<T>) => {\n if (!column.filters && column.sortable) {\n handleSortClick(event, column, false)\n } else if (column.filterable && !column.sortable) {\n handleFilterClick(event)\n }\n parent?.emit('header-click', column, event)\n }\n\n const handleHeaderContextMenu = (event: Event, column: TableColumnCtx<T>) => {\n parent?.emit('header-contextmenu', column, event)\n }\n const draggingColumn = ref(null)\n const dragging = ref(false)\n const dragState = ref({})\n const handleMouseDown = (event: MouseEvent, column: TableColumnCtx<T>) => {\n if (!isClient) return\n if (column.children && column.children.length > 0) return\n /* istanbul ignore if */\n if (draggingColumn.value && props.border) {\n dragging.value = true\n\n const table = parent\n emit('set-drag-visible', true)\n const tableEl = table?.vnode.el\n const tableLeft = tableEl.getBoundingClientRect().left\n const columnEl = instance.vnode.el.querySelector(`th.${column.id}`)\n const columnRect = columnEl.getBoundingClientRect()\n const minLeft = columnRect.left - tableLeft + 30\n\n addClass(columnEl, 'noclick')\n\n dragState.value = {\n startMouseLeft: event.clientX,\n startLeft: columnRect.right - tableLeft,\n startColumnLeft: columnRect.left - tableLeft,\n tableLeft,\n }\n const resizeProxy = table?.refs.resizeProxy as HTMLElement\n resizeProxy.style.left = `${(dragState.value as any).startLeft}px`\n\n document.onselectstart = function () {\n return false\n }\n document.ondragstart = function () {\n return false\n }\n\n const handleMouseMove = (event: MouseEvent) => {\n const deltaLeft =\n event.clientX - (dragState.value as any).startMouseLeft\n const proxyLeft = (dragState.value as any).startLeft + deltaLeft\n\n resizeProxy.style.left = `${Math.max(minLeft, proxyLeft)}px`\n }\n\n const handleMouseUp = () => {\n if (dragging.value) {\n const { startColumnLeft, startLeft } = dragState.value as any\n const finalLeft = Number.parseInt(resizeProxy.style.left, 10)\n const columnWidth = finalLeft - startColumnLeft\n column.width = column.realWidth = columnWidth\n table?.emit(\n 'header-dragend',\n column.width,\n startLeft - startColumnLeft,\n column,\n event\n )\n requestAnimationFrame(() => {\n props.store.scheduleLayout(false, true)\n })\n document.body.style.cursor = ''\n dragging.value = false\n draggingColumn.value = null\n dragState.value = {}\n emit('set-drag-visible', false)\n }\n\n document.removeEventListener('mousemove', handleMouseMove)\n document.removeEventListener('mouseup', handleMouseUp)\n document.onselectstart = null\n document.ondragstart = null\n\n setTimeout(() => {\n removeClass(columnEl, 'noclick')\n }, 0)\n }\n\n document.addEventListener('mousemove', handleMouseMove)\n document.addEventListener('mouseup', handleMouseUp)\n }\n }\n\n const handleMouseMove = (event: MouseEvent, column: TableColumnCtx<T>) => {\n if (column.children && column.children.length > 0) return\n const el = event.target as HTMLElement\n if (!isElement(el)) {\n return\n }\n const target = el?.closest('th')\n\n if (!column || !column.resizable) return\n\n if (!dragging.value && props.border) {\n const rect = target.getBoundingClientRect()\n\n const bodyStyle = document.body.style\n if (rect.width > 12 && rect.right - event.pageX < 8) {\n bodyStyle.cursor = 'col-resize'\n if (hasClass(target, 'is-sortable')) {\n target.style.cursor = 'col-resize'\n }\n draggingColumn.value = column\n } else if (!dragging.value) {\n bodyStyle.cursor = ''\n if (hasClass(target, 'is-sortable')) {\n target.style.cursor = 'pointer'\n }\n draggingColumn.value = null\n }\n }\n }\n\n const handleMouseOut = () => {\n if (!isClient) return\n document.body.style.cursor = ''\n }\n const toggleOrder = ({ order, sortOrders }) => {\n if (order === '') return sortOrders[0]\n const index = sortOrders.indexOf(order || null)\n return sortOrders[index > sortOrders.length - 2 ? 0 : index + 1]\n }\n const handleSortClick = (\n event: Event,\n column: TableColumnCtx<T>,\n givenOrder: string | boolean\n ) => {\n event.stopPropagation()\n const order =\n column.order === givenOrder ? null : givenOrder || toggleOrder(column)\n\n const target = (event.target as HTMLElement)?.closest('th')\n\n if (target) {\n if (hasClass(target, 'noclick')) {\n removeClass(target, 'noclick')\n return\n }\n }\n\n if (!column.sortable) return\n\n const states = props.store.states\n let sortProp = states.sortProp.value\n let sortOrder\n const sortingColumn = states.sortingColumn.value\n\n if (\n sortingColumn !== column ||\n (sortingColumn === column && sortingColumn.order === null)\n ) {\n if (sortingColumn) {\n sortingColumn.order = null\n }\n states.sortingColumn.value = column\n sortProp = column.property\n }\n if (!order) {\n sortOrder = column.order = null\n } else {\n sortOrder = column.order = order\n }\n\n states.sortProp.value = sortProp\n states.sortOrder.value = sortOrder\n\n parent?.store.commit('changeSortCondition')\n }\n\n return {\n handleHeaderClick,\n handleHeaderContextMenu,\n handleMouseDown,\n handleMouseMove,\n handleMouseOut,\n handleSortClick,\n handleFilterClick,\n }\n}\n\nexport default useEvent\n"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ref, isRef, nextTick } from 'vue';
|
|
2
|
-
import { isClient } from '@vueuse/core';
|
|
3
2
|
import '../../../utils/index.mjs';
|
|
4
3
|
import { parseHeight } from './util.mjs';
|
|
5
4
|
import { hasOwn } from '@vue/shared';
|
|
5
|
+
import { isClient } from '@vueuse/core';
|
|
6
6
|
|
|
7
7
|
class TableLayout {
|
|
8
8
|
constructor(options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-layout.mjs","sources":["../../../../../../packages/components/table/src/table-layout.ts"],"sourcesContent":["// @ts-nocheck\nimport { isRef, nextTick, ref } from 'vue'\nimport { isClient } from '@vueuse/core'\nimport { hasOwn } from '@element-plus/utils'\nimport { parseHeight } from './util'\nimport type { Ref } from 'vue'\n\nimport type { TableColumnCtx } from './table-column/defaults'\nimport type { TableHeader } from './table-header'\nimport type { Table } from './table/defaults'\nimport type { Store } from './store'\nclass TableLayout<T> {\n observers: TableHeader[]\n table: Table<T>\n store: Store<T>\n columns: TableColumnCtx<T>[]\n fit: boolean\n showHeader: boolean\n\n height: Ref<null | number>\n scrollX: Ref<boolean>\n scrollY: Ref<boolean>\n bodyWidth: Ref<null | number>\n fixedWidth: Ref<null | number>\n rightFixedWidth: Ref<null | number>\n tableHeight: Ref<null | number>\n headerHeight: Ref<null | number> // Table Header Height\n appendHeight: Ref<null | number> // Append Slot Height\n footerHeight: Ref<null | number> // Table Footer Height\n gutterWidth: number\n constructor(options: Record<string, any>) {\n this.observers = []\n this.table = null\n this.store = null\n this.columns = []\n this.fit = true\n this.showHeader = true\n this.height = ref(null)\n this.scrollX = ref(false)\n this.scrollY = ref(false)\n this.bodyWidth = ref(null)\n this.fixedWidth = ref(null)\n this.rightFixedWidth = ref(null)\n this.gutterWidth = 0\n for (const name in options) {\n if (hasOwn(options, name)) {\n if (isRef(this[name])) {\n this[name as string].value = options[name]\n } else {\n this[name as string] = options[name]\n }\n }\n }\n if (!this.table) {\n throw new Error('Table is required for Table Layout')\n }\n if (!this.store) {\n throw new Error('Store is required for Table Layout')\n }\n }\n\n updateScrollY() {\n const height = this.height.value\n /**\n * When the height is not initialized, it is null.\n * After the table is initialized, when the height is not configured, the height is 0.\n */\n if (height === null) return false\n const scrollBarRef = this.table.refs.scrollBarRef\n if (this.table.vnode.el && scrollBarRef?.wrapRef) {\n let scrollY = true\n const prevScrollY = this.scrollY.value\n scrollY =\n scrollBarRef.wrapRef.scrollHeight > scrollBarRef.wrapRef.clientHeight\n this.scrollY.value = scrollY\n return prevScrollY !== scrollY\n }\n return false\n }\n\n setHeight(value: string | number, prop = 'height') {\n if (!isClient) return\n const el = this.table.vnode.el\n value = parseHeight(value)\n this.height.value = Number(value)\n\n if (!el && (value || value === 0))\n return nextTick(() => this.setHeight(value, prop))\n\n if (typeof value === 'number') {\n el.style[prop] = `${value}px`\n this.updateElsHeight()\n } else if (typeof value === 'string') {\n el.style[prop] = value\n this.updateElsHeight()\n }\n }\n\n setMaxHeight(value: string | number) {\n this.setHeight(value, 'max-height')\n }\n\n getFlattenColumns(): TableColumnCtx<T>[] {\n const flattenColumns = []\n const columns = this.table.store.states.columns.value\n columns.forEach((column) => {\n if (column.isColumnGroup) {\n // eslint-disable-next-line prefer-spread\n flattenColumns.push.apply(flattenColumns, column.columns)\n } else {\n flattenColumns.push(column)\n }\n })\n\n return flattenColumns\n }\n\n updateElsHeight() {\n this.updateScrollY()\n this.notifyObservers('scrollable')\n }\n\n headerDisplayNone(elm: HTMLElement) {\n if (!elm) return true\n let headerChild = elm\n while (headerChild.tagName !== 'DIV') {\n if (getComputedStyle(headerChild).display === 'none') {\n return true\n }\n headerChild = headerChild.parentElement\n }\n return false\n }\n\n updateColumnsWidth() {\n if (!isClient) return\n const fit = this.fit\n const bodyWidth = this.table.vnode.el.clientWidth\n let bodyMinWidth = 0\n\n const flattenColumns = this.getFlattenColumns()\n const flexColumns = flattenColumns.filter(\n (column) => typeof column.width !== 'number'\n )\n flattenColumns.forEach((column) => {\n // Clean those columns whose width changed from flex to unflex\n if (typeof column.width === 'number' && column.realWidth)\n column.realWidth = null\n })\n if (flexColumns.length > 0 && fit) {\n flattenColumns.forEach((column) => {\n bodyMinWidth += Number(column.width || column.minWidth || 80)\n })\n if (bodyMinWidth <= bodyWidth) {\n // DON'T HAVE SCROLL BAR\n this.scrollX.value = false\n\n const totalFlexWidth = bodyWidth - bodyMinWidth\n\n if (flexColumns.length === 1) {\n flexColumns[0].realWidth =\n Number(flexColumns[0].minWidth || 80) + totalFlexWidth\n } else {\n const allColumnsWidth = flexColumns.reduce(\n (prev, column) => prev + Number(column.minWidth || 80),\n 0\n )\n const flexWidthPerPixel = totalFlexWidth / allColumnsWidth\n let noneFirstWidth = 0\n\n flexColumns.forEach((column, index) => {\n if (index === 0) return\n const flexWidth = Math.floor(\n Number(column.minWidth || 80) * flexWidthPerPixel\n )\n noneFirstWidth += flexWidth\n column.realWidth = Number(column.minWidth || 80) + flexWidth\n })\n\n flexColumns[0].realWidth =\n Number(flexColumns[0].minWidth || 80) +\n totalFlexWidth -\n noneFirstWidth\n }\n } else {\n // HAVE HORIZONTAL SCROLL BAR\n this.scrollX.value = true\n flexColumns.forEach((column) => {\n column.realWidth = Number(column.minWidth)\n })\n }\n\n this.bodyWidth.value = Math.max(bodyMinWidth, bodyWidth)\n this.table.state.resizeState.value.width = this.bodyWidth.value\n } else {\n flattenColumns.forEach((column) => {\n if (!column.width && !column.minWidth) {\n column.realWidth = 80\n } else {\n column.realWidth = Number(column.width || column.minWidth)\n }\n bodyMinWidth += column.realWidth\n })\n this.scrollX.value = bodyMinWidth > bodyWidth\n\n this.bodyWidth.value = bodyMinWidth\n }\n\n const fixedColumns = this.store.states.fixedColumns.value\n\n if (fixedColumns.length > 0) {\n let fixedWidth = 0\n fixedColumns.forEach((column) => {\n fixedWidth += Number(column.realWidth || column.width)\n })\n\n this.fixedWidth.value = fixedWidth\n }\n\n const rightFixedColumns = this.store.states.rightFixedColumns.value\n if (rightFixedColumns.length > 0) {\n let rightFixedWidth = 0\n rightFixedColumns.forEach((column) => {\n rightFixedWidth += Number(column.realWidth || column.width)\n })\n\n this.rightFixedWidth.value = rightFixedWidth\n }\n this.notifyObservers('columns')\n }\n\n addObserver(observer: TableHeader) {\n this.observers.push(observer)\n }\n\n removeObserver(observer: TableHeader) {\n const index = this.observers.indexOf(observer)\n if (index !== -1) {\n this.observers.splice(index, 1)\n }\n }\n\n notifyObservers(event: string) {\n const observers = this.observers\n observers.forEach((observer) => {\n switch (event) {\n case 'columns':\n observer.state?.onColumnsChange(this)\n break\n case 'scrollable':\n observer.state?.onScrollableChange(this)\n break\n default:\n throw new Error(`Table Layout don't have event ${event}.`)\n }\n })\n }\n}\n\nexport default TableLayout\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table-layout.mjs","sources":["../../../../../../packages/components/table/src/table-layout.ts"],"sourcesContent":["// @ts-nocheck\nimport { isRef, nextTick, ref } from 'vue'\nimport { hasOwn, isClient } from '@element-plus/utils'\nimport { parseHeight } from './util'\nimport type { Ref } from 'vue'\n\nimport type { TableColumnCtx } from './table-column/defaults'\nimport type { TableHeader } from './table-header'\nimport type { Table } from './table/defaults'\nimport type { Store } from './store'\nclass TableLayout<T> {\n observers: TableHeader[]\n table: Table<T>\n store: Store<T>\n columns: TableColumnCtx<T>[]\n fit: boolean\n showHeader: boolean\n\n height: Ref<null | number>\n scrollX: Ref<boolean>\n scrollY: Ref<boolean>\n bodyWidth: Ref<null | number>\n fixedWidth: Ref<null | number>\n rightFixedWidth: Ref<null | number>\n tableHeight: Ref<null | number>\n headerHeight: Ref<null | number> // Table Header Height\n appendHeight: Ref<null | number> // Append Slot Height\n footerHeight: Ref<null | number> // Table Footer Height\n gutterWidth: number\n constructor(options: Record<string, any>) {\n this.observers = []\n this.table = null\n this.store = null\n this.columns = []\n this.fit = true\n this.showHeader = true\n this.height = ref(null)\n this.scrollX = ref(false)\n this.scrollY = ref(false)\n this.bodyWidth = ref(null)\n this.fixedWidth = ref(null)\n this.rightFixedWidth = ref(null)\n this.gutterWidth = 0\n for (const name in options) {\n if (hasOwn(options, name)) {\n if (isRef(this[name])) {\n this[name as string].value = options[name]\n } else {\n this[name as string] = options[name]\n }\n }\n }\n if (!this.table) {\n throw new Error('Table is required for Table Layout')\n }\n if (!this.store) {\n throw new Error('Store is required for Table Layout')\n }\n }\n\n updateScrollY() {\n const height = this.height.value\n /**\n * When the height is not initialized, it is null.\n * After the table is initialized, when the height is not configured, the height is 0.\n */\n if (height === null) return false\n const scrollBarRef = this.table.refs.scrollBarRef\n if (this.table.vnode.el && scrollBarRef?.wrapRef) {\n let scrollY = true\n const prevScrollY = this.scrollY.value\n scrollY =\n scrollBarRef.wrapRef.scrollHeight > scrollBarRef.wrapRef.clientHeight\n this.scrollY.value = scrollY\n return prevScrollY !== scrollY\n }\n return false\n }\n\n setHeight(value: string | number, prop = 'height') {\n if (!isClient) return\n const el = this.table.vnode.el\n value = parseHeight(value)\n this.height.value = Number(value)\n\n if (!el && (value || value === 0))\n return nextTick(() => this.setHeight(value, prop))\n\n if (typeof value === 'number') {\n el.style[prop] = `${value}px`\n this.updateElsHeight()\n } else if (typeof value === 'string') {\n el.style[prop] = value\n this.updateElsHeight()\n }\n }\n\n setMaxHeight(value: string | number) {\n this.setHeight(value, 'max-height')\n }\n\n getFlattenColumns(): TableColumnCtx<T>[] {\n const flattenColumns = []\n const columns = this.table.store.states.columns.value\n columns.forEach((column) => {\n if (column.isColumnGroup) {\n // eslint-disable-next-line prefer-spread\n flattenColumns.push.apply(flattenColumns, column.columns)\n } else {\n flattenColumns.push(column)\n }\n })\n\n return flattenColumns\n }\n\n updateElsHeight() {\n this.updateScrollY()\n this.notifyObservers('scrollable')\n }\n\n headerDisplayNone(elm: HTMLElement) {\n if (!elm) return true\n let headerChild = elm\n while (headerChild.tagName !== 'DIV') {\n if (getComputedStyle(headerChild).display === 'none') {\n return true\n }\n headerChild = headerChild.parentElement\n }\n return false\n }\n\n updateColumnsWidth() {\n if (!isClient) return\n const fit = this.fit\n const bodyWidth = this.table.vnode.el.clientWidth\n let bodyMinWidth = 0\n\n const flattenColumns = this.getFlattenColumns()\n const flexColumns = flattenColumns.filter(\n (column) => typeof column.width !== 'number'\n )\n flattenColumns.forEach((column) => {\n // Clean those columns whose width changed from flex to unflex\n if (typeof column.width === 'number' && column.realWidth)\n column.realWidth = null\n })\n if (flexColumns.length > 0 && fit) {\n flattenColumns.forEach((column) => {\n bodyMinWidth += Number(column.width || column.minWidth || 80)\n })\n if (bodyMinWidth <= bodyWidth) {\n // DON'T HAVE SCROLL BAR\n this.scrollX.value = false\n\n const totalFlexWidth = bodyWidth - bodyMinWidth\n\n if (flexColumns.length === 1) {\n flexColumns[0].realWidth =\n Number(flexColumns[0].minWidth || 80) + totalFlexWidth\n } else {\n const allColumnsWidth = flexColumns.reduce(\n (prev, column) => prev + Number(column.minWidth || 80),\n 0\n )\n const flexWidthPerPixel = totalFlexWidth / allColumnsWidth\n let noneFirstWidth = 0\n\n flexColumns.forEach((column, index) => {\n if (index === 0) return\n const flexWidth = Math.floor(\n Number(column.minWidth || 80) * flexWidthPerPixel\n )\n noneFirstWidth += flexWidth\n column.realWidth = Number(column.minWidth || 80) + flexWidth\n })\n\n flexColumns[0].realWidth =\n Number(flexColumns[0].minWidth || 80) +\n totalFlexWidth -\n noneFirstWidth\n }\n } else {\n // HAVE HORIZONTAL SCROLL BAR\n this.scrollX.value = true\n flexColumns.forEach((column) => {\n column.realWidth = Number(column.minWidth)\n })\n }\n\n this.bodyWidth.value = Math.max(bodyMinWidth, bodyWidth)\n this.table.state.resizeState.value.width = this.bodyWidth.value\n } else {\n flattenColumns.forEach((column) => {\n if (!column.width && !column.minWidth) {\n column.realWidth = 80\n } else {\n column.realWidth = Number(column.width || column.minWidth)\n }\n bodyMinWidth += column.realWidth\n })\n this.scrollX.value = bodyMinWidth > bodyWidth\n\n this.bodyWidth.value = bodyMinWidth\n }\n\n const fixedColumns = this.store.states.fixedColumns.value\n\n if (fixedColumns.length > 0) {\n let fixedWidth = 0\n fixedColumns.forEach((column) => {\n fixedWidth += Number(column.realWidth || column.width)\n })\n\n this.fixedWidth.value = fixedWidth\n }\n\n const rightFixedColumns = this.store.states.rightFixedColumns.value\n if (rightFixedColumns.length > 0) {\n let rightFixedWidth = 0\n rightFixedColumns.forEach((column) => {\n rightFixedWidth += Number(column.realWidth || column.width)\n })\n\n this.rightFixedWidth.value = rightFixedWidth\n }\n this.notifyObservers('columns')\n }\n\n addObserver(observer: TableHeader) {\n this.observers.push(observer)\n }\n\n removeObserver(observer: TableHeader) {\n const index = this.observers.indexOf(observer)\n if (index !== -1) {\n this.observers.splice(index, 1)\n }\n }\n\n notifyObservers(event: string) {\n const observers = this.observers\n observers.forEach((observer) => {\n switch (event) {\n case 'columns':\n observer.state?.onColumnsChange(this)\n break\n case 'scrollable':\n observer.state?.onScrollableChange(this)\n break\n default:\n throw new Error(`Table Layout don't have event ${event}.`)\n }\n })\n }\n}\n\nexport default TableLayout\n"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import '../../../utils/index.mjs';
|
|
|
5
5
|
import '../../../hooks/index.mjs';
|
|
6
6
|
import { isObject, hasOwn, isArray } from '@vue/shared';
|
|
7
7
|
import { throwError } from '../../../utils/error.mjs';
|
|
8
|
-
import { isBoolean } from '
|
|
8
|
+
import { isBoolean } from '../../../utils/types.mjs';
|
|
9
9
|
import { useDelayedToggle } from '../../../hooks/use-delayed-toggle/index.mjs';
|
|
10
10
|
|
|
11
11
|
const getCell = function(event) {
|
|
@@ -3,7 +3,7 @@ import '../../../../utils/index.mjs';
|
|
|
3
3
|
import { tableV2RowProps } from '../row.mjs';
|
|
4
4
|
import { TableV2InjectionKey } from '../tokens.mjs';
|
|
5
5
|
import { placeholderSign } from '../private.mjs';
|
|
6
|
-
import { isNumber } from '
|
|
6
|
+
import { isNumber } from '../../../../utils/types.mjs';
|
|
7
7
|
import { isFunction, isArray } from '@vue/shared';
|
|
8
8
|
|
|
9
9
|
const useTableRow = (props) => {
|
|
@@ -2,7 +2,7 @@ import { getCurrentInstance, shallowRef, ref, computed, unref } from 'vue';
|
|
|
2
2
|
import { debounce } from 'lodash-unified';
|
|
3
3
|
import '../../../../utils/index.mjs';
|
|
4
4
|
import { FixedDir } from '../constants.mjs';
|
|
5
|
-
import { isNumber } from '
|
|
5
|
+
import { isNumber } from '../../../../utils/types.mjs';
|
|
6
6
|
|
|
7
7
|
const useRow = (props, { mainTableRef, leftTableRef, rightTableRef }) => {
|
|
8
8
|
const vm = getCurrentInstance();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { computed, unref } from 'vue';
|
|
2
2
|
import '../../../../utils/index.mjs';
|
|
3
3
|
import { sum, enforceUnit } from '../utils.mjs';
|
|
4
|
-
import { isNumber } from '
|
|
4
|
+
import { isNumber } from '../../../../utils/types.mjs';
|
|
5
5
|
import { addUnit } from '../../../../utils/dom/style.mjs';
|
|
6
6
|
|
|
7
7
|
const useStyles = (props, {
|
|
@@ -70,7 +70,7 @@ const CellRenderer = ({
|
|
|
70
70
|
};
|
|
71
71
|
const Cell = CellComponent(cellProps);
|
|
72
72
|
const kls = [ns.e("row-cell"), column.class, column.align === Alignment.CENTER && ns.is("align-center"), column.align === Alignment.RIGHT && ns.is("align-right")];
|
|
73
|
-
const expandable = rowIndex >= 0 && column.key === expandColumnKey;
|
|
73
|
+
const expandable = rowIndex >= 0 && expandColumnKey && column.key === expandColumnKey;
|
|
74
74
|
const expanded = rowIndex >= 0 && expandedRowKeys.includes(rowData[rowKey]);
|
|
75
75
|
let IconOrPlaceholder;
|
|
76
76
|
const iconStyle = `margin-inline-start: ${depth * indentSize}px;`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cell.mjs","sources":["../../../../../../../packages/components/table-v2/src/renderers/cell.tsx"],"sourcesContent":["import { get } from 'lodash-unified'\nimport { isFunction, isObject } from '@element-plus/utils'\nimport { ExpandIcon, TableCell } from '../components'\nimport { Alignment } from '../constants'\nimport { placeholderSign } from '../private'\nimport { componentToSlot, enforceUnit, tryCall } from '../utils'\n\nimport type { FunctionalComponent, UnwrapNestedRefs, VNode } from 'vue'\nimport type { CellRendererParams } from '../types'\nimport type { TableV2RowCellRenderParam } from '../components'\nimport type { UseNamespaceReturn } from '@element-plus/hooks'\nimport type { UseTableReturn } from '../use-table'\nimport type { TableV2Props } from '../table'\n\ntype CellRendererProps = TableV2RowCellRenderParam &\n Pick<\n TableV2Props,\n 'cellProps' | 'expandColumnKey' | 'indentSize' | 'iconSize' | 'rowKey'\n > &\n UnwrapNestedRefs<Pick<UseTableReturn, 'expandedRowKeys'>> & {\n ns: UseNamespaceReturn\n }\n\nconst CellRenderer: FunctionalComponent<CellRendererProps> = (\n {\n // renderer props\n columns,\n column,\n columnIndex,\n depth,\n expandIconProps,\n isScrolling,\n rowData,\n rowIndex,\n // from use-table\n style,\n expandedRowKeys,\n ns,\n // derived props\n cellProps: _cellProps,\n expandColumnKey,\n indentSize,\n iconSize,\n rowKey,\n },\n { slots }\n) => {\n const cellStyle = enforceUnit(style)\n\n if (column.placeholderSign === placeholderSign) {\n return <div class={ns.em('row-cell', 'placeholder')} style={cellStyle} />\n }\n const { cellRenderer, dataKey, dataGetter } = column\n\n const columnCellRenderer = componentToSlot(cellRenderer)\n\n const CellComponent =\n columnCellRenderer ||\n slots.default ||\n ((props: CellRendererParams<any>) => <TableCell {...props} />)\n\n const cellData = isFunction(dataGetter)\n ? dataGetter({ columns, column, columnIndex, rowData, rowIndex })\n : get(rowData, dataKey ?? '')\n\n const extraCellProps = tryCall(_cellProps, {\n cellData,\n columns,\n column,\n columnIndex,\n rowIndex,\n rowData,\n })\n\n const cellProps = {\n class: ns.e('cell-text'),\n columns,\n column,\n columnIndex,\n cellData,\n isScrolling,\n rowData,\n rowIndex,\n }\n\n const Cell = CellComponent(cellProps)\n\n const kls = [\n ns.e('row-cell'),\n column.class,\n column.align === Alignment.CENTER && ns.is('align-center'),\n column.align === Alignment.RIGHT && ns.is('align-right'),\n ]\n\n const expandable
|
|
1
|
+
{"version":3,"file":"cell.mjs","sources":["../../../../../../../packages/components/table-v2/src/renderers/cell.tsx"],"sourcesContent":["import { get } from 'lodash-unified'\nimport { isFunction, isObject } from '@element-plus/utils'\nimport { ExpandIcon, TableCell } from '../components'\nimport { Alignment } from '../constants'\nimport { placeholderSign } from '../private'\nimport { componentToSlot, enforceUnit, tryCall } from '../utils'\n\nimport type { FunctionalComponent, UnwrapNestedRefs, VNode } from 'vue'\nimport type { CellRendererParams } from '../types'\nimport type { TableV2RowCellRenderParam } from '../components'\nimport type { UseNamespaceReturn } from '@element-plus/hooks'\nimport type { UseTableReturn } from '../use-table'\nimport type { TableV2Props } from '../table'\n\ntype CellRendererProps = TableV2RowCellRenderParam &\n Pick<\n TableV2Props,\n 'cellProps' | 'expandColumnKey' | 'indentSize' | 'iconSize' | 'rowKey'\n > &\n UnwrapNestedRefs<Pick<UseTableReturn, 'expandedRowKeys'>> & {\n ns: UseNamespaceReturn\n }\n\nconst CellRenderer: FunctionalComponent<CellRendererProps> = (\n {\n // renderer props\n columns,\n column,\n columnIndex,\n depth,\n expandIconProps,\n isScrolling,\n rowData,\n rowIndex,\n // from use-table\n style,\n expandedRowKeys,\n ns,\n // derived props\n cellProps: _cellProps,\n expandColumnKey,\n indentSize,\n iconSize,\n rowKey,\n },\n { slots }\n) => {\n const cellStyle = enforceUnit(style)\n\n if (column.placeholderSign === placeholderSign) {\n return <div class={ns.em('row-cell', 'placeholder')} style={cellStyle} />\n }\n const { cellRenderer, dataKey, dataGetter } = column\n\n const columnCellRenderer = componentToSlot(cellRenderer)\n\n const CellComponent =\n columnCellRenderer ||\n slots.default ||\n ((props: CellRendererParams<any>) => <TableCell {...props} />)\n\n const cellData = isFunction(dataGetter)\n ? dataGetter({ columns, column, columnIndex, rowData, rowIndex })\n : get(rowData, dataKey ?? '')\n\n const extraCellProps = tryCall(_cellProps, {\n cellData,\n columns,\n column,\n columnIndex,\n rowIndex,\n rowData,\n })\n\n const cellProps = {\n class: ns.e('cell-text'),\n columns,\n column,\n columnIndex,\n cellData,\n isScrolling,\n rowData,\n rowIndex,\n }\n\n const Cell = CellComponent(cellProps)\n\n const kls = [\n ns.e('row-cell'),\n column.class,\n column.align === Alignment.CENTER && ns.is('align-center'),\n column.align === Alignment.RIGHT && ns.is('align-right'),\n ]\n\n const expandable =\n rowIndex >= 0 && expandColumnKey && column.key === expandColumnKey\n const expanded = rowIndex >= 0 && expandedRowKeys.includes(rowData[rowKey])\n\n let IconOrPlaceholder: VNode | undefined\n const iconStyle = `margin-inline-start: ${depth * indentSize}px;`\n if (expandable) {\n if (isObject(expandIconProps)) {\n IconOrPlaceholder = (\n <ExpandIcon\n {...expandIconProps}\n class={[ns.e('expand-icon'), ns.is('expanded', expanded)]}\n size={iconSize}\n expanded={expanded}\n style={iconStyle}\n expandable\n />\n )\n } else {\n IconOrPlaceholder = (\n <div\n style={[\n iconStyle,\n `width: ${iconSize}px; height: ${iconSize}px;`,\n ].join(' ')}\n />\n )\n }\n }\n\n return (\n <div class={kls} style={cellStyle} {...extraCellProps} role=\"cell\">\n {IconOrPlaceholder}\n {Cell}\n </div>\n )\n}\n\nCellRenderer.inheritAttrs = false\n\nexport default CellRenderer\n"],"names":["CellRenderer","columns","column","columnIndex","depth","expandIconProps","isScrolling","rowData","rowIndex","style","expandedRowKeys","ns","cellProps","indentSize","rowKey","slots","cellStyle","_createVNode","TableCell","dataKey","dataGetter","default","cellData","extraCellProps","class","_mergeProps","kls","e","expandable","expanded","iconStyle","IconOrPlaceholder","iconSize"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { TableV2InjectionKey } from './tokens.mjs';
|
|
|
6
6
|
import { tableV2GridProps } from './grid.mjs';
|
|
7
7
|
import { sum } from './utils.mjs';
|
|
8
8
|
import { isObject } from '@vue/shared';
|
|
9
|
-
import { isNumber } from '
|
|
9
|
+
import { isNumber } from '../../../utils/types.mjs';
|
|
10
10
|
import DynamicSizeGrid from '../../virtual-list/src/components/dynamic-size-grid.mjs';
|
|
11
11
|
import FixedSizeGrid from '../../virtual-list/src/components/fixed-size-grid.mjs';
|
|
12
12
|
import TableV2Header from './components/header.mjs';
|
|
@@ -8,11 +8,10 @@ import { tabsRootContextKey } from './constants.mjs';
|
|
|
8
8
|
import TabNav from './tab-nav.mjs';
|
|
9
9
|
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
|
10
10
|
import { isString } from '@vue/shared';
|
|
11
|
-
import { isNumber } from '
|
|
11
|
+
import { isNumber, isUndefined } from '../../../utils/types.mjs';
|
|
12
12
|
import { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
|
|
13
13
|
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
14
14
|
import { useOrderedChildren } from '../../../hooks/use-ordered-children/index.mjs';
|
|
15
|
-
import { isUndefined } from '../../../utils/types.mjs';
|
|
16
15
|
import { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';
|
|
17
16
|
import { EVENT_CODE } from '../../../constants/aria.mjs';
|
|
18
17
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.mjs","sources":["../../../../../../packages/components/tabs/src/tabs.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n getCurrentInstance,\n nextTick,\n provide,\n ref,\n renderSlot,\n watch,\n} from 'vue'\nimport {\n buildProps,\n definePropType,\n isNumber,\n isString,\n isUndefined,\n} from '@element-plus/utils'\nimport { EVENT_CODE, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport ElIcon from '@element-plus/components/icon'\nimport { Plus } from '@element-plus/icons-vue'\nimport {\n useDeprecated,\n useNamespace,\n useOrderedChildren,\n} from '@element-plus/hooks'\nimport { tabsRootContextKey } from './constants'\nimport TabNav from './tab-nav'\n\nimport type { TabNavInstance } from './tab-nav'\nimport type { TabsPaneContext } from './constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type { Awaitable } from '@element-plus/utils'\n\nexport type TabPaneName = string | number\n\nexport const tabsProps = buildProps({\n type: {\n type: String,\n values: ['card', 'border-card', ''],\n default: '',\n },\n activeName: {\n type: [String, Number],\n },\n closable: Boolean,\n addable: Boolean,\n modelValue: {\n type: [String, Number],\n },\n editable: Boolean,\n tabPosition: {\n type: String,\n values: ['top', 'right', 'bottom', 'left'],\n default: 'top',\n },\n beforeLeave: {\n type: definePropType<\n (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>\n >(Function),\n default: () => true,\n },\n stretch: Boolean,\n} as const)\nexport type TabsProps = ExtractPropTypes<typeof tabsProps>\n\nconst isPaneName = (value: unknown): value is string | number =>\n isString(value) || isNumber(value)\n\nexport const tabsEmits = {\n [UPDATE_MODEL_EVENT]: (name: TabPaneName) => isPaneName(name),\n tabClick: (pane: TabsPaneContext, ev: Event) => ev instanceof Event,\n tabChange: (name: TabPaneName) => isPaneName(name),\n edit: (paneName: TabPaneName | undefined, action: 'remove' | 'add') =>\n ['remove', 'add'].includes(action),\n tabRemove: (name: TabPaneName) => isPaneName(name),\n tabAdd: () => true,\n}\nexport type TabsEmits = typeof tabsEmits\n\nexport type TabsPanes = Record<number, TabsPaneContext>\n\nexport default defineComponent({\n name: 'ElTabs',\n\n props: tabsProps,\n emits: tabsEmits,\n\n setup(props, { emit, slots, expose }) {\n const ns = useNamespace('tabs')\n\n const {\n children: panes,\n addChild: registerPane,\n removeChild: unregisterPane,\n } = useOrderedChildren<TabsPaneContext>(getCurrentInstance()!, 'ElTabPane')\n\n const nav$ = ref<TabNavInstance>()\n const currentName = ref<TabPaneName>(\n props.modelValue ?? props.activeName ?? '0'\n )\n\n const changeCurrentName = (value: TabPaneName) => {\n currentName.value = value\n emit(UPDATE_MODEL_EVENT, value)\n emit('tabChange', value)\n }\n\n const setCurrentName = async (value?: TabPaneName) => {\n // should do nothing.\n if (currentName.value === value || isUndefined(value)) return\n\n try {\n const canLeave = await props.beforeLeave?.(value, currentName.value)\n if (canLeave !== false) {\n changeCurrentName(value)\n\n // call exposed function, Vue doesn't support expose in typescript yet.\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n nav$.value?.removeFocus?.()\n }\n } catch {}\n }\n\n const handleTabClick = (\n tab: TabsPaneContext,\n tabName: TabPaneName,\n event: Event\n ) => {\n if (tab.props.disabled) return\n setCurrentName(tabName)\n emit('tabClick', tab, event)\n }\n\n const handleTabRemove = (pane: TabsPaneContext, ev: Event) => {\n if (pane.props.disabled || isUndefined(pane.props.name)) return\n ev.stopPropagation()\n emit('edit', pane.props.name, 'remove')\n emit('tabRemove', pane.props.name)\n }\n\n const handleTabAdd = () => {\n emit('edit', undefined, 'add')\n emit('tabAdd')\n }\n\n useDeprecated(\n {\n from: '\"activeName\"',\n replacement: '\"model-value\" or \"v-model\"',\n scope: 'ElTabs',\n version: '2.3.0',\n ref: 'https://element-plus.org/en-US/component/tabs.html#attributes',\n type: 'Attribute',\n },\n computed(() => !!props.activeName)\n )\n\n watch(\n () => props.activeName,\n (modelValue) => setCurrentName(modelValue)\n )\n\n watch(\n () => props.modelValue,\n (modelValue) => setCurrentName(modelValue)\n )\n\n watch(currentName, async () => {\n await nextTick()\n // call exposed function, Vue doesn't support expose in typescript yet.\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n nav$.value?.scrollToActiveTab()\n })\n\n provide(tabsRootContextKey, {\n props,\n currentName,\n registerPane,\n unregisterPane,\n })\n\n expose({\n currentName,\n })\n\n return () => {\n const newButton =\n props.editable || props.addable ? (\n <span\n class={ns.e('new-tab')}\n tabindex=\"0\"\n onClick={handleTabAdd}\n onKeydown={(ev: KeyboardEvent) => {\n if (ev.code === EVENT_CODE.enter) handleTabAdd()\n }}\n >\n <ElIcon class={ns.is('icon-plus')}>\n <Plus />\n </ElIcon>\n </span>\n ) : null\n\n const header = (\n <div class={[ns.e('header'), ns.is(props.tabPosition)]}>\n {newButton}\n <TabNav\n ref={nav$}\n currentName={currentName.value}\n editable={props.editable}\n type={props.type}\n panes={panes.value}\n stretch={props.stretch}\n onTabClick={handleTabClick}\n onTabRemove={handleTabRemove}\n />\n </div>\n )\n\n const panels = (\n <div class={ns.e('content')}>{renderSlot(slots, 'default')}</div>\n )\n\n return (\n <div\n class={[\n ns.b(),\n ns.m(props.tabPosition),\n {\n [ns.m('card')]: props.type === 'card',\n [ns.m('border-card')]: props.type === 'border-card',\n },\n ]}\n >\n {...props.tabPosition !== 'bottom'\n ? [header, panels]\n : [panels, header]}\n </div>\n )\n }\n },\n})\n"],"names":["tabsProps","buildProps","type","String","values","default","activeName","Number","closable","Boolean","addable","modelValue","editable","tabPosition","beforeLeave","definePropType","Function","stretch","tabsEmits","name","tabClick","ev","tabChange","edit","tabRemove","tabAdd","props","emits","slots","expose","children","addChild","removeChild","unregisterPane","getCurrentInstance","nav$","changeCurrentName","value","currentName","emit","UPDATE_MODEL_EVENT","setCurrentName","handleTabClick","event","handleTabRemove","pane","disabled","handleTabAdd","useDeprecated","from","replacement","scope","version","ref","watch","nextTick","_createVNode","newButton","ns","e","panes"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tabs.mjs","sources":["../../../../../../packages/components/tabs/src/tabs.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n getCurrentInstance,\n nextTick,\n provide,\n ref,\n renderSlot,\n watch,\n} from 'vue'\nimport {\n buildProps,\n definePropType,\n isNumber,\n isString,\n isUndefined,\n} from '@element-plus/utils'\nimport { EVENT_CODE, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport ElIcon from '@element-plus/components/icon'\nimport { Plus } from '@element-plus/icons-vue'\nimport {\n useDeprecated,\n useNamespace,\n useOrderedChildren,\n} from '@element-plus/hooks'\nimport { tabsRootContextKey } from './constants'\nimport TabNav from './tab-nav'\n\nimport type { TabNavInstance } from './tab-nav'\nimport type { TabsPaneContext } from './constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type { Awaitable } from '@element-plus/utils'\n\nexport type TabPaneName = string | number\n\nexport const tabsProps = buildProps({\n type: {\n type: String,\n values: ['card', 'border-card', ''],\n default: '',\n },\n activeName: {\n type: [String, Number],\n },\n closable: Boolean,\n addable: Boolean,\n modelValue: {\n type: [String, Number],\n },\n editable: Boolean,\n tabPosition: {\n type: String,\n values: ['top', 'right', 'bottom', 'left'],\n default: 'top',\n },\n beforeLeave: {\n type: definePropType<\n (newName: TabPaneName, oldName: TabPaneName) => Awaitable<void | boolean>\n >(Function),\n default: () => true,\n },\n stretch: Boolean,\n} as const)\nexport type TabsProps = ExtractPropTypes<typeof tabsProps>\n\nconst isPaneName = (value: unknown): value is string | number =>\n isString(value) || isNumber(value)\n\nexport const tabsEmits = {\n [UPDATE_MODEL_EVENT]: (name: TabPaneName) => isPaneName(name),\n tabClick: (pane: TabsPaneContext, ev: Event) => ev instanceof Event,\n tabChange: (name: TabPaneName) => isPaneName(name),\n edit: (paneName: TabPaneName | undefined, action: 'remove' | 'add') =>\n ['remove', 'add'].includes(action),\n tabRemove: (name: TabPaneName) => isPaneName(name),\n tabAdd: () => true,\n}\nexport type TabsEmits = typeof tabsEmits\n\nexport type TabsPanes = Record<number, TabsPaneContext>\n\nexport default defineComponent({\n name: 'ElTabs',\n\n props: tabsProps,\n emits: tabsEmits,\n\n setup(props, { emit, slots, expose }) {\n const ns = useNamespace('tabs')\n\n const {\n children: panes,\n addChild: registerPane,\n removeChild: unregisterPane,\n } = useOrderedChildren<TabsPaneContext>(getCurrentInstance()!, 'ElTabPane')\n\n const nav$ = ref<TabNavInstance>()\n const currentName = ref<TabPaneName>(\n props.modelValue ?? props.activeName ?? '0'\n )\n\n const changeCurrentName = (value: TabPaneName) => {\n currentName.value = value\n emit(UPDATE_MODEL_EVENT, value)\n emit('tabChange', value)\n }\n\n const setCurrentName = async (value?: TabPaneName) => {\n // should do nothing.\n if (currentName.value === value || isUndefined(value)) return\n\n try {\n const canLeave = await props.beforeLeave?.(value, currentName.value)\n if (canLeave !== false) {\n changeCurrentName(value)\n\n // call exposed function, Vue doesn't support expose in typescript yet.\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n nav$.value?.removeFocus?.()\n }\n } catch {}\n }\n\n const handleTabClick = (\n tab: TabsPaneContext,\n tabName: TabPaneName,\n event: Event\n ) => {\n if (tab.props.disabled) return\n setCurrentName(tabName)\n emit('tabClick', tab, event)\n }\n\n const handleTabRemove = (pane: TabsPaneContext, ev: Event) => {\n if (pane.props.disabled || isUndefined(pane.props.name)) return\n ev.stopPropagation()\n emit('edit', pane.props.name, 'remove')\n emit('tabRemove', pane.props.name)\n }\n\n const handleTabAdd = () => {\n emit('edit', undefined, 'add')\n emit('tabAdd')\n }\n\n useDeprecated(\n {\n from: '\"activeName\"',\n replacement: '\"model-value\" or \"v-model\"',\n scope: 'ElTabs',\n version: '2.3.0',\n ref: 'https://element-plus.org/en-US/component/tabs.html#attributes',\n type: 'Attribute',\n },\n computed(() => !!props.activeName)\n )\n\n watch(\n () => props.activeName,\n (modelValue) => setCurrentName(modelValue)\n )\n\n watch(\n () => props.modelValue,\n (modelValue) => setCurrentName(modelValue)\n )\n\n watch(currentName, async () => {\n await nextTick()\n // call exposed function, Vue doesn't support expose in typescript yet.\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n nav$.value?.scrollToActiveTab()\n })\n\n provide(tabsRootContextKey, {\n props,\n currentName,\n registerPane,\n unregisterPane,\n })\n\n expose({\n currentName,\n })\n\n return () => {\n const newButton =\n props.editable || props.addable ? (\n <span\n class={ns.e('new-tab')}\n tabindex=\"0\"\n onClick={handleTabAdd}\n onKeydown={(ev: KeyboardEvent) => {\n if (ev.code === EVENT_CODE.enter) handleTabAdd()\n }}\n >\n <ElIcon class={ns.is('icon-plus')}>\n <Plus />\n </ElIcon>\n </span>\n ) : null\n\n const header = (\n <div class={[ns.e('header'), ns.is(props.tabPosition)]}>\n {newButton}\n <TabNav\n ref={nav$}\n currentName={currentName.value}\n editable={props.editable}\n type={props.type}\n panes={panes.value}\n stretch={props.stretch}\n onTabClick={handleTabClick}\n onTabRemove={handleTabRemove}\n />\n </div>\n )\n\n const panels = (\n <div class={ns.e('content')}>{renderSlot(slots, 'default')}</div>\n )\n\n return (\n <div\n class={[\n ns.b(),\n ns.m(props.tabPosition),\n {\n [ns.m('card')]: props.type === 'card',\n [ns.m('border-card')]: props.type === 'border-card',\n },\n ]}\n >\n {...props.tabPosition !== 'bottom'\n ? [header, panels]\n : [panels, header]}\n </div>\n )\n }\n },\n})\n"],"names":["tabsProps","buildProps","type","String","values","default","activeName","Number","closable","Boolean","addable","modelValue","editable","tabPosition","beforeLeave","definePropType","Function","stretch","tabsEmits","name","tabClick","ev","tabChange","edit","tabRemove","tabAdd","props","emits","slots","expose","children","addChild","removeChild","unregisterPane","getCurrentInstance","nav$","changeCurrentName","value","currentName","emit","UPDATE_MODEL_EVENT","setCurrentName","handleTabClick","event","handleTabRemove","pane","disabled","handleTabAdd","useDeprecated","from","replacement","scope","version","ref","watch","nextTick","_createVNode","newButton","ns","e","panes"],"mappings":"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"}
|