@element-plus/nightly 0.0.20240302 → 0.0.20240304
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +1 -1
- package/dist/index.full.js +11 -4
- package/dist/index.full.min.js +11 -11
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +11 -11
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +11 -4
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar-eg.js +1 -1
- package/dist/locale/ar-eg.min.js +1 -1
- package/dist/locale/ar-eg.min.mjs +1 -1
- package/dist/locale/ar-eg.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/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/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/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/index.mjs +2 -2
- package/es/components/affix/src/affix.mjs +117 -26
- package/es/components/affix/src/affix.mjs.map +1 -1
- package/es/components/affix/src/affix2.mjs +26 -117
- package/es/components/affix/src/affix2.mjs.map +1 -1
- package/es/components/alert/index.d.ts +4 -4
- package/es/components/alert/src/alert.d.ts +1 -1
- package/es/components/alert/src/alert.vue.d.ts +4 -4
- package/es/components/anchor/index.d.ts +1 -0
- package/es/components/anchor/src/anchor.vue.d.ts +1 -0
- package/es/components/anchor/src/anchor2.mjs +4 -1
- package/es/components/anchor/src/anchor2.mjs.map +1 -1
- package/es/components/autocomplete/index.d.ts +65 -65
- package/es/components/autocomplete/src/autocomplete.vue.d.ts +65 -65
- package/es/components/button/index.d.ts +5 -5
- package/es/components/button/src/button.d.ts +1 -1
- package/es/components/button/src/button.vue.d.ts +5 -5
- package/es/components/button/src/use-button.d.ts +1 -1
- package/es/components/calendar/index.d.ts +5 -5
- package/es/components/calendar/src/calendar.vue.d.ts +5 -5
- package/es/components/carousel/index.d.ts +1 -1
- package/es/components/carousel/src/carousel.vue.d.ts +1 -1
- package/es/components/cascader/index.d.ts +128 -128
- package/es/components/cascader/src/cascader.vue.d.ts +64 -64
- package/es/components/color-picker/index.d.ts +38 -38
- package/es/components/color-picker/src/color-picker.vue.d.ts +38 -38
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +17 -17
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +17 -17
- package/es/components/date-picker/src/panel-utils.d.ts +34 -34
- package/es/components/dialog/index.d.ts +1 -1
- package/es/components/dialog/src/dialog.vue.d.ts +1 -1
- package/es/components/drawer/index.d.ts +1 -1
- package/es/components/drawer/src/drawer.vue.d.ts +1 -1
- package/es/components/dropdown/index.d.ts +14 -14
- package/es/components/dropdown/src/dropdown-item-impl.vue.d.ts +1 -1
- package/es/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
- package/es/components/dropdown/src/dropdown.vue.d.ts +12 -12
- package/es/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
- package/es/components/form/index.d.ts +12 -12
- package/es/components/form/src/form-item.d.ts +1 -1
- package/es/components/form/src/form-item.vue.d.ts +5 -5
- package/es/components/image/index.d.ts +1 -1
- package/es/components/image/src/image.vue.d.ts +1 -1
- package/es/components/index.mjs +4 -4
- package/es/components/input/index.d.ts +12 -12
- package/es/components/input/index.mjs +2 -2
- package/es/components/input/src/input.mjs +115 -453
- package/es/components/input/src/input.mjs.map +1 -1
- package/es/components/input/src/input.vue.d.ts +12 -12
- package/es/components/input/src/input2.mjs +453 -115
- package/es/components/input/src/input2.mjs.map +1 -1
- package/es/components/input-number/index.d.ts +45 -45
- package/es/components/input-number/src/input-number.vue.d.ts +45 -45
- package/es/components/message/src/message.d.ts +1 -1
- package/es/components/message/src/message.vue.d.ts +4 -4
- package/es/components/message-box/src/index.vue.d.ts +1 -1
- package/es/components/notification/src/notification.d.ts +1 -1
- package/es/components/notification/src/notification.vue.d.ts +4 -4
- package/es/components/pagination/src/components/jumper.vue.d.ts +12 -12
- package/es/components/pagination/src/components/sizes.vue.d.ts +27 -27
- package/es/components/popconfirm/index.d.ts +23 -23
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +23 -23
- package/es/components/popover/index.d.ts +18 -18
- package/es/components/popover/src/popover.vue.d.ts +18 -18
- package/es/components/popper/index.mjs +2 -2
- package/es/components/popper/src/arrow.mjs +37 -8
- package/es/components/popper/src/arrow.mjs.map +1 -1
- package/es/components/popper/src/arrow2.mjs +8 -37
- package/es/components/popper/src/arrow2.mjs.map +1 -1
- package/es/components/popper/src/content.vue.d.ts +6 -6
- package/es/components/result/index.d.ts +4 -4
- package/es/components/result/src/result.d.ts +1 -1
- package/es/components/result/src/result.vue.d.ts +4 -4
- package/es/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
- package/es/components/select/index.d.ts +27 -27
- package/es/components/select/src/select.vue.d.ts +27 -27
- package/es/components/select/src/useSelect.d.ts +25 -25
- package/es/components/select-v2/index.d.ts +54 -54
- package/es/components/select-v2/src/option-item.vue.d.ts +1 -1
- package/es/components/select-v2/src/select.vue.d.ts +27 -27
- package/es/components/select-v2/src/useSelect.d.ts +25 -25
- package/es/components/slider/index.d.ts +75 -75
- package/es/components/slider/src/button.vue.d.ts +6 -6
- package/es/components/slider/src/composables/use-slide.d.ts +24 -24
- package/es/components/slider/src/slider.vue.d.ts +75 -75
- package/es/components/steps/index.d.ts +16 -16
- package/es/components/steps/src/item.d.ts +1 -1
- package/es/components/steps/src/item.vue.d.ts +4 -4
- package/es/components/steps/src/steps.d.ts +2 -2
- package/es/components/steps/src/steps.vue.d.ts +8 -8
- package/es/components/table/index.d.ts +1 -1
- package/es/components/table/src/filter-panel.vue.d.ts +12 -12
- package/es/components/table/src/table.vue.d.ts +1 -1
- package/es/components/tag/index.d.ts +1 -1
- package/es/components/tag/src/tag.vue.d.ts +1 -1
- package/es/components/time-picker/src/common/picker.vue.d.ts +34 -34
- package/es/components/time-select/index.d.ts +114 -114
- package/es/components/time-select/src/time-select.vue.d.ts +57 -57
- package/es/components/tooltip/index.d.ts +6 -6
- package/es/components/tooltip/src/content.vue.d.ts +6 -6
- package/es/components/tooltip/src/tooltip.mjs +1 -1
- package/es/components/tooltip/src/tooltip.vue.d.ts +6 -6
- package/es/components/tooltip/src/tooltip2.mjs +1 -1
- package/es/components/tooltip-v2/index.d.ts +4 -4
- package/es/components/tooltip-v2/src/tooltip.vue.d.ts +4 -4
- package/es/components/tour/index.d.ts +11 -11
- package/es/components/tour/src/content.vue.d.ts +1 -1
- package/es/components/tour/src/step.vue.d.ts +5 -5
- package/es/components/tour/src/tour.vue.d.ts +1 -1
- package/es/components/transfer/index.d.ts +65 -65
- package/es/components/transfer/src/transfer-panel.vue.d.ts +12 -12
- package/es/components/transfer/src/transfer.vue.d.ts +65 -65
- package/es/components/tree-v2/index.d.ts +1 -1
- package/es/components/tree-v2/src/tree-node.vue.d.ts +1 -1
- package/es/components/tree-v2/src/tree.vue.d.ts +1 -1
- package/es/components/upload/index.d.ts +5 -5
- package/es/components/upload/src/upload-content.vue.d.ts +1 -1
- package/es/components/upload/src/upload.vue.d.ts +5 -5
- package/es/index.mjs +4 -4
- package/es/utils/dom/scroll.d.ts +1 -1
- package/es/utils/dom/scroll.mjs +6 -2
- package/es/utils/dom/scroll.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/index.js +2 -2
- package/lib/components/affix/src/affix.js +117 -27
- package/lib/components/affix/src/affix.js.map +1 -1
- package/lib/components/affix/src/affix2.js +27 -117
- package/lib/components/affix/src/affix2.js.map +1 -1
- package/lib/components/alert/index.d.ts +4 -4
- package/lib/components/alert/src/alert.d.ts +1 -1
- package/lib/components/alert/src/alert.vue.d.ts +4 -4
- package/lib/components/anchor/index.d.ts +1 -0
- package/lib/components/anchor/src/anchor.vue.d.ts +1 -0
- package/lib/components/anchor/src/anchor2.js +4 -1
- package/lib/components/anchor/src/anchor2.js.map +1 -1
- package/lib/components/autocomplete/index.d.ts +65 -65
- package/lib/components/autocomplete/src/autocomplete.vue.d.ts +65 -65
- package/lib/components/button/index.d.ts +5 -5
- package/lib/components/button/src/button.d.ts +1 -1
- package/lib/components/button/src/button.vue.d.ts +5 -5
- package/lib/components/button/src/use-button.d.ts +1 -1
- package/lib/components/calendar/index.d.ts +5 -5
- package/lib/components/calendar/src/calendar.vue.d.ts +5 -5
- package/lib/components/carousel/index.d.ts +1 -1
- package/lib/components/carousel/src/carousel.vue.d.ts +1 -1
- package/lib/components/cascader/index.d.ts +128 -128
- package/lib/components/cascader/src/cascader.vue.d.ts +64 -64
- package/lib/components/color-picker/index.d.ts +38 -38
- package/lib/components/color-picker/src/color-picker.vue.d.ts +38 -38
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +17 -17
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +17 -17
- package/lib/components/date-picker/src/panel-utils.d.ts +34 -34
- package/lib/components/dialog/index.d.ts +1 -1
- package/lib/components/dialog/src/dialog.vue.d.ts +1 -1
- package/lib/components/drawer/index.d.ts +1 -1
- package/lib/components/drawer/src/drawer.vue.d.ts +1 -1
- package/lib/components/dropdown/index.d.ts +14 -14
- package/lib/components/dropdown/src/dropdown-item-impl.vue.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown-item.vue.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown.vue.d.ts +12 -12
- package/lib/components/focus-trap/src/focus-trap.vue.d.ts +1 -1
- package/lib/components/form/index.d.ts +12 -12
- package/lib/components/form/src/form-item.d.ts +1 -1
- package/lib/components/form/src/form-item.vue.d.ts +5 -5
- package/lib/components/image/index.d.ts +1 -1
- package/lib/components/image/src/image.vue.d.ts +1 -1
- package/lib/components/index.js +4 -4
- package/lib/components/input/index.d.ts +12 -12
- package/lib/components/input/index.js +2 -2
- package/lib/components/input/src/input.js +115 -452
- package/lib/components/input/src/input.js.map +1 -1
- package/lib/components/input/src/input.vue.d.ts +12 -12
- package/lib/components/input/src/input2.js +452 -115
- package/lib/components/input/src/input2.js.map +1 -1
- package/lib/components/input-number/index.d.ts +45 -45
- package/lib/components/input-number/src/input-number.vue.d.ts +45 -45
- package/lib/components/message/src/message.d.ts +1 -1
- package/lib/components/message/src/message.vue.d.ts +4 -4
- package/lib/components/message-box/src/index.vue.d.ts +1 -1
- package/lib/components/notification/src/notification.d.ts +1 -1
- package/lib/components/notification/src/notification.vue.d.ts +4 -4
- package/lib/components/pagination/src/components/jumper.vue.d.ts +12 -12
- package/lib/components/pagination/src/components/sizes.vue.d.ts +27 -27
- package/lib/components/popconfirm/index.d.ts +23 -23
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +23 -23
- package/lib/components/popover/index.d.ts +18 -18
- package/lib/components/popover/src/popover.vue.d.ts +18 -18
- package/lib/components/popper/index.js +2 -2
- package/lib/components/popper/src/arrow.js +37 -9
- package/lib/components/popper/src/arrow.js.map +1 -1
- package/lib/components/popper/src/arrow2.js +9 -37
- package/lib/components/popper/src/arrow2.js.map +1 -1
- package/lib/components/popper/src/content.vue.d.ts +6 -6
- package/lib/components/result/index.d.ts +4 -4
- package/lib/components/result/src/result.d.ts +1 -1
- package/lib/components/result/src/result.vue.d.ts +4 -4
- package/lib/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
- package/lib/components/select/index.d.ts +27 -27
- package/lib/components/select/src/select.vue.d.ts +27 -27
- package/lib/components/select/src/useSelect.d.ts +25 -25
- package/lib/components/select-v2/index.d.ts +54 -54
- package/lib/components/select-v2/src/option-item.vue.d.ts +1 -1
- package/lib/components/select-v2/src/select.vue.d.ts +27 -27
- package/lib/components/select-v2/src/useSelect.d.ts +25 -25
- package/lib/components/slider/index.d.ts +75 -75
- package/lib/components/slider/src/button.vue.d.ts +6 -6
- package/lib/components/slider/src/composables/use-slide.d.ts +24 -24
- package/lib/components/slider/src/slider.vue.d.ts +75 -75
- package/lib/components/steps/index.d.ts +16 -16
- package/lib/components/steps/src/item.d.ts +1 -1
- package/lib/components/steps/src/item.vue.d.ts +4 -4
- package/lib/components/steps/src/steps.d.ts +2 -2
- package/lib/components/steps/src/steps.vue.d.ts +8 -8
- package/lib/components/table/index.d.ts +1 -1
- package/lib/components/table/src/filter-panel.vue.d.ts +12 -12
- package/lib/components/table/src/table.vue.d.ts +1 -1
- package/lib/components/tag/index.d.ts +1 -1
- package/lib/components/tag/src/tag.vue.d.ts +1 -1
- package/lib/components/time-picker/src/common/picker.vue.d.ts +34 -34
- package/lib/components/time-select/index.d.ts +114 -114
- package/lib/components/time-select/src/time-select.vue.d.ts +57 -57
- package/lib/components/tooltip/index.d.ts +6 -6
- package/lib/components/tooltip/src/content.vue.d.ts +6 -6
- package/lib/components/tooltip/src/tooltip.js +1 -1
- package/lib/components/tooltip/src/tooltip.vue.d.ts +6 -6
- package/lib/components/tooltip/src/tooltip2.js +1 -1
- package/lib/components/tooltip-v2/index.d.ts +4 -4
- package/lib/components/tooltip-v2/src/tooltip.vue.d.ts +4 -4
- package/lib/components/tour/index.d.ts +11 -11
- package/lib/components/tour/src/content.vue.d.ts +1 -1
- package/lib/components/tour/src/step.vue.d.ts +5 -5
- package/lib/components/tour/src/tour.vue.d.ts +1 -1
- package/lib/components/transfer/index.d.ts +65 -65
- package/lib/components/transfer/src/transfer-panel.vue.d.ts +12 -12
- package/lib/components/transfer/src/transfer.vue.d.ts +65 -65
- package/lib/components/tree-v2/index.d.ts +1 -1
- package/lib/components/tree-v2/src/tree-node.vue.d.ts +1 -1
- package/lib/components/tree-v2/src/tree.vue.d.ts +1 -1
- package/lib/components/upload/index.d.ts +5 -5
- package/lib/components/upload/src/upload-content.vue.d.ts +1 -1
- package/lib/components/upload/src/upload.vue.d.ts +5 -5
- package/lib/index.js +4 -4
- package/lib/utils/dom/scroll.d.ts +1 -1
- package/lib/utils/dom/scroll.js +5 -1
- package/lib/utils/dom/scroll.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/theme-chalk/el-anchor.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/anchor.scss +2 -2
- package/web-types.json +1 -1
|
@@ -1,32 +1,123 @@
|
|
|
1
|
+
import { defineComponent, shallowRef, ref, computed, watch, onMounted, watchEffect, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, createElementVNode, renderSlot } from 'vue';
|
|
2
|
+
import { useWindowSize, useElementBounding, useEventListener } from '@vueuse/core';
|
|
1
3
|
import '../../../utils/index.mjs';
|
|
2
|
-
import '../../../
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
4
|
+
import '../../../hooks/index.mjs';
|
|
5
|
+
import { affixProps, affixEmits } from './affix2.mjs';
|
|
6
|
+
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
7
|
+
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
8
|
+
import { addUnit } from '../../../utils/dom/style.mjs';
|
|
9
|
+
import { throwError } from '../../../utils/error.mjs';
|
|
10
|
+
import { getScrollContainer } from '../../../utils/dom/scroll.mjs';
|
|
6
11
|
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
12
|
+
const COMPONENT_NAME = "ElAffix";
|
|
13
|
+
const __default__ = defineComponent({
|
|
14
|
+
name: COMPONENT_NAME
|
|
15
|
+
});
|
|
16
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
17
|
+
...__default__,
|
|
18
|
+
props: affixProps,
|
|
19
|
+
emits: affixEmits,
|
|
20
|
+
setup(__props, { expose, emit }) {
|
|
21
|
+
const props = __props;
|
|
22
|
+
const ns = useNamespace("affix");
|
|
23
|
+
const target = shallowRef();
|
|
24
|
+
const root = shallowRef();
|
|
25
|
+
const scrollContainer = shallowRef();
|
|
26
|
+
const { height: windowHeight } = useWindowSize();
|
|
27
|
+
const {
|
|
28
|
+
height: rootHeight,
|
|
29
|
+
width: rootWidth,
|
|
30
|
+
top: rootTop,
|
|
31
|
+
bottom: rootBottom,
|
|
32
|
+
update: updateRoot
|
|
33
|
+
} = useElementBounding(root, { windowScroll: false });
|
|
34
|
+
const targetRect = useElementBounding(target);
|
|
35
|
+
const fixed = ref(false);
|
|
36
|
+
const scrollTop = ref(0);
|
|
37
|
+
const transform = ref(0);
|
|
38
|
+
const rootStyle = computed(() => {
|
|
39
|
+
return {
|
|
40
|
+
height: fixed.value ? `${rootHeight.value}px` : "",
|
|
41
|
+
width: fixed.value ? `${rootWidth.value}px` : ""
|
|
42
|
+
};
|
|
43
|
+
});
|
|
44
|
+
const affixStyle = computed(() => {
|
|
45
|
+
if (!fixed.value)
|
|
46
|
+
return {};
|
|
47
|
+
const offset = props.offset ? addUnit(props.offset) : 0;
|
|
48
|
+
return {
|
|
49
|
+
height: `${rootHeight.value}px`,
|
|
50
|
+
width: `${rootWidth.value}px`,
|
|
51
|
+
top: props.position === "top" ? offset : "",
|
|
52
|
+
bottom: props.position === "bottom" ? offset : "",
|
|
53
|
+
transform: transform.value ? `translateY(${transform.value}px)` : "",
|
|
54
|
+
zIndex: props.zIndex
|
|
55
|
+
};
|
|
56
|
+
});
|
|
57
|
+
const update = () => {
|
|
58
|
+
if (!scrollContainer.value)
|
|
59
|
+
return;
|
|
60
|
+
scrollTop.value = scrollContainer.value instanceof Window ? document.documentElement.scrollTop : scrollContainer.value.scrollTop || 0;
|
|
61
|
+
if (props.position === "top") {
|
|
62
|
+
if (props.target) {
|
|
63
|
+
const difference = targetRect.bottom.value - props.offset - rootHeight.value;
|
|
64
|
+
fixed.value = props.offset > rootTop.value && targetRect.bottom.value > 0;
|
|
65
|
+
transform.value = difference < 0 ? difference : 0;
|
|
66
|
+
} else {
|
|
67
|
+
fixed.value = props.offset > rootTop.value;
|
|
68
|
+
}
|
|
69
|
+
} else if (props.target) {
|
|
70
|
+
const difference = windowHeight.value - targetRect.top.value - props.offset - rootHeight.value;
|
|
71
|
+
fixed.value = windowHeight.value - props.offset < rootBottom.value && windowHeight.value > targetRect.top.value;
|
|
72
|
+
transform.value = difference < 0 ? -difference : 0;
|
|
73
|
+
} else {
|
|
74
|
+
fixed.value = windowHeight.value - props.offset < rootBottom.value;
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
const handleScroll = () => {
|
|
78
|
+
updateRoot();
|
|
79
|
+
emit("scroll", {
|
|
80
|
+
scrollTop: scrollTop.value,
|
|
81
|
+
fixed: fixed.value
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
watch(fixed, (val) => emit("change", val));
|
|
85
|
+
onMounted(() => {
|
|
86
|
+
var _a;
|
|
87
|
+
if (props.target) {
|
|
88
|
+
target.value = (_a = document.querySelector(props.target)) != null ? _a : void 0;
|
|
89
|
+
if (!target.value)
|
|
90
|
+
throwError(COMPONENT_NAME, `Target is not existed: ${props.target}`);
|
|
91
|
+
} else {
|
|
92
|
+
target.value = document.documentElement;
|
|
93
|
+
}
|
|
94
|
+
scrollContainer.value = getScrollContainer(root.value, true);
|
|
95
|
+
updateRoot();
|
|
96
|
+
});
|
|
97
|
+
useEventListener(scrollContainer, "scroll", handleScroll);
|
|
98
|
+
watchEffect(update);
|
|
99
|
+
expose({
|
|
100
|
+
update,
|
|
101
|
+
updateRoot
|
|
102
|
+
});
|
|
103
|
+
return (_ctx, _cache) => {
|
|
104
|
+
return openBlock(), createElementBlock("div", {
|
|
105
|
+
ref_key: "root",
|
|
106
|
+
ref: root,
|
|
107
|
+
class: normalizeClass(unref(ns).b()),
|
|
108
|
+
style: normalizeStyle(unref(rootStyle))
|
|
109
|
+
}, [
|
|
110
|
+
createElementVNode("div", {
|
|
111
|
+
class: normalizeClass({ [unref(ns).m("fixed")]: fixed.value }),
|
|
112
|
+
style: normalizeStyle(unref(affixStyle))
|
|
113
|
+
}, [
|
|
114
|
+
renderSlot(_ctx.$slots, "default")
|
|
115
|
+
], 6)
|
|
116
|
+
], 6);
|
|
117
|
+
};
|
|
24
118
|
}
|
|
25
119
|
});
|
|
26
|
-
|
|
27
|
-
scroll: ({ scrollTop, fixed }) => isNumber(scrollTop) && isBoolean(fixed),
|
|
28
|
-
[CHANGE_EVENT]: (fixed) => isBoolean(fixed)
|
|
29
|
-
};
|
|
120
|
+
var Affix = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "affix.vue"]]);
|
|
30
121
|
|
|
31
|
-
export {
|
|
122
|
+
export { Affix as default };
|
|
32
123
|
//# sourceMappingURL=affix.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"affix.mjs","sources":["../../../../../../packages/components/affix/src/affix.
|
|
1
|
+
{"version":3,"file":"affix.mjs","sources":["../../../../../../packages/components/affix/src/affix.vue"],"sourcesContent":["<template>\n <div ref=\"root\" :class=\"ns.b()\" :style=\"rootStyle\">\n <div :class=\"{ [ns.m('fixed')]: fixed }\" :style=\"affixStyle\">\n <slot />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref, shallowRef, watch, watchEffect } from 'vue'\nimport {\n useElementBounding,\n useEventListener,\n useWindowSize,\n} from '@vueuse/core'\nimport { addUnit, getScrollContainer, throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { affixEmits, affixProps } from './affix'\nimport type { CSSProperties } from 'vue'\n\nconst COMPONENT_NAME = 'ElAffix'\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(affixProps)\nconst emit = defineEmits(affixEmits)\n\nconst ns = useNamespace('affix')\n\nconst target = shallowRef<HTMLElement>()\nconst root = shallowRef<HTMLDivElement>()\nconst scrollContainer = shallowRef<HTMLElement | Window>()\nconst { height: windowHeight } = useWindowSize()\nconst {\n height: rootHeight,\n width: rootWidth,\n top: rootTop,\n bottom: rootBottom,\n update: updateRoot,\n} = useElementBounding(root, { windowScroll: false })\nconst targetRect = useElementBounding(target)\n\nconst fixed = ref(false)\nconst scrollTop = ref(0)\nconst transform = ref(0)\n\nconst rootStyle = computed<CSSProperties>(() => {\n return {\n height: fixed.value ? `${rootHeight.value}px` : '',\n width: fixed.value ? `${rootWidth.value}px` : '',\n }\n})\n\nconst affixStyle = computed<CSSProperties>(() => {\n if (!fixed.value) return {}\n\n const offset = props.offset ? addUnit(props.offset) : 0\n return {\n height: `${rootHeight.value}px`,\n width: `${rootWidth.value}px`,\n top: props.position === 'top' ? offset : '',\n bottom: props.position === 'bottom' ? offset : '',\n transform: transform.value ? `translateY(${transform.value}px)` : '',\n zIndex: props.zIndex,\n }\n})\n\nconst update = () => {\n if (!scrollContainer.value) return\n\n scrollTop.value =\n scrollContainer.value instanceof Window\n ? document.documentElement.scrollTop\n : scrollContainer.value.scrollTop || 0\n\n if (props.position === 'top') {\n if (props.target) {\n const difference =\n targetRect.bottom.value - props.offset - rootHeight.value\n fixed.value = props.offset > rootTop.value && targetRect.bottom.value > 0\n transform.value = difference < 0 ? difference : 0\n } else {\n fixed.value = props.offset > rootTop.value\n }\n } else if (props.target) {\n const difference =\n windowHeight.value -\n targetRect.top.value -\n props.offset -\n rootHeight.value\n fixed.value =\n windowHeight.value - props.offset < rootBottom.value &&\n windowHeight.value > targetRect.top.value\n transform.value = difference < 0 ? -difference : 0\n } else {\n fixed.value = windowHeight.value - props.offset < rootBottom.value\n }\n}\n\nconst handleScroll = () => {\n updateRoot()\n emit('scroll', {\n scrollTop: scrollTop.value,\n fixed: fixed.value,\n })\n}\n\nwatch(fixed, (val) => emit('change', val))\n\nonMounted(() => {\n if (props.target) {\n target.value =\n document.querySelector<HTMLElement>(props.target) ?? undefined\n if (!target.value)\n throwError(COMPONENT_NAME, `Target is not existed: ${props.target}`)\n } else {\n target.value = document.documentElement\n }\n scrollContainer.value = getScrollContainer(root.value!, true)\n updateRoot()\n})\n\nuseEventListener(scrollContainer, 'scroll', handleScroll)\nwatchEffect(update)\n\ndefineExpose({\n /** @description update affix status */\n update,\n /** @description update rootRect info */\n updateRoot,\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -1,123 +1,32 @@
|
|
|
1
|
-
import { defineComponent, shallowRef, ref, computed, watch, onMounted, watchEffect, openBlock, createElementBlock, normalizeClass, unref, normalizeStyle, createElementVNode, renderSlot } from 'vue';
|
|
2
|
-
import { useWindowSize, useElementBounding, useEventListener } from '@vueuse/core';
|
|
3
1
|
import '../../../utils/index.mjs';
|
|
4
|
-
import '../../../
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import { addUnit } from '../../../utils/dom/style.mjs';
|
|
9
|
-
import { throwError } from '../../../utils/error.mjs';
|
|
10
|
-
import { getScrollContainer } from '../../../utils/dom/scroll.mjs';
|
|
2
|
+
import '../../../constants/index.mjs';
|
|
3
|
+
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
|
4
|
+
import { isNumber, isBoolean } from '../../../utils/types.mjs';
|
|
5
|
+
import { CHANGE_EVENT } from '../../../constants/event.mjs';
|
|
11
6
|
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
width: rootWidth,
|
|
30
|
-
top: rootTop,
|
|
31
|
-
bottom: rootBottom,
|
|
32
|
-
update: updateRoot
|
|
33
|
-
} = useElementBounding(root, { windowScroll: false });
|
|
34
|
-
const targetRect = useElementBounding(target);
|
|
35
|
-
const fixed = ref(false);
|
|
36
|
-
const scrollTop = ref(0);
|
|
37
|
-
const transform = ref(0);
|
|
38
|
-
const rootStyle = computed(() => {
|
|
39
|
-
return {
|
|
40
|
-
height: fixed.value ? `${rootHeight.value}px` : "",
|
|
41
|
-
width: fixed.value ? `${rootWidth.value}px` : ""
|
|
42
|
-
};
|
|
43
|
-
});
|
|
44
|
-
const affixStyle = computed(() => {
|
|
45
|
-
if (!fixed.value)
|
|
46
|
-
return {};
|
|
47
|
-
const offset = props.offset ? addUnit(props.offset) : 0;
|
|
48
|
-
return {
|
|
49
|
-
height: `${rootHeight.value}px`,
|
|
50
|
-
width: `${rootWidth.value}px`,
|
|
51
|
-
top: props.position === "top" ? offset : "",
|
|
52
|
-
bottom: props.position === "bottom" ? offset : "",
|
|
53
|
-
transform: transform.value ? `translateY(${transform.value}px)` : "",
|
|
54
|
-
zIndex: props.zIndex
|
|
55
|
-
};
|
|
56
|
-
});
|
|
57
|
-
const update = () => {
|
|
58
|
-
if (!scrollContainer.value)
|
|
59
|
-
return;
|
|
60
|
-
scrollTop.value = scrollContainer.value instanceof Window ? document.documentElement.scrollTop : scrollContainer.value.scrollTop || 0;
|
|
61
|
-
if (props.position === "top") {
|
|
62
|
-
if (props.target) {
|
|
63
|
-
const difference = targetRect.bottom.value - props.offset - rootHeight.value;
|
|
64
|
-
fixed.value = props.offset > rootTop.value && targetRect.bottom.value > 0;
|
|
65
|
-
transform.value = difference < 0 ? difference : 0;
|
|
66
|
-
} else {
|
|
67
|
-
fixed.value = props.offset > rootTop.value;
|
|
68
|
-
}
|
|
69
|
-
} else if (props.target) {
|
|
70
|
-
const difference = windowHeight.value - targetRect.top.value - props.offset - rootHeight.value;
|
|
71
|
-
fixed.value = windowHeight.value - props.offset < rootBottom.value && windowHeight.value > targetRect.top.value;
|
|
72
|
-
transform.value = difference < 0 ? -difference : 0;
|
|
73
|
-
} else {
|
|
74
|
-
fixed.value = windowHeight.value - props.offset < rootBottom.value;
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
const handleScroll = () => {
|
|
78
|
-
updateRoot();
|
|
79
|
-
emit("scroll", {
|
|
80
|
-
scrollTop: scrollTop.value,
|
|
81
|
-
fixed: fixed.value
|
|
82
|
-
});
|
|
83
|
-
};
|
|
84
|
-
watch(fixed, (val) => emit("change", val));
|
|
85
|
-
onMounted(() => {
|
|
86
|
-
var _a;
|
|
87
|
-
if (props.target) {
|
|
88
|
-
target.value = (_a = document.querySelector(props.target)) != null ? _a : void 0;
|
|
89
|
-
if (!target.value)
|
|
90
|
-
throwError(COMPONENT_NAME, `Target is not existed: ${props.target}`);
|
|
91
|
-
} else {
|
|
92
|
-
target.value = document.documentElement;
|
|
93
|
-
}
|
|
94
|
-
scrollContainer.value = getScrollContainer(root.value, true);
|
|
95
|
-
updateRoot();
|
|
96
|
-
});
|
|
97
|
-
useEventListener(scrollContainer, "scroll", handleScroll);
|
|
98
|
-
watchEffect(update);
|
|
99
|
-
expose({
|
|
100
|
-
update,
|
|
101
|
-
updateRoot
|
|
102
|
-
});
|
|
103
|
-
return (_ctx, _cache) => {
|
|
104
|
-
return openBlock(), createElementBlock("div", {
|
|
105
|
-
ref_key: "root",
|
|
106
|
-
ref: root,
|
|
107
|
-
class: normalizeClass(unref(ns).b()),
|
|
108
|
-
style: normalizeStyle(unref(rootStyle))
|
|
109
|
-
}, [
|
|
110
|
-
createElementVNode("div", {
|
|
111
|
-
class: normalizeClass({ [unref(ns).m("fixed")]: fixed.value }),
|
|
112
|
-
style: normalizeStyle(unref(affixStyle))
|
|
113
|
-
}, [
|
|
114
|
-
renderSlot(_ctx.$slots, "default")
|
|
115
|
-
], 6)
|
|
116
|
-
], 6);
|
|
117
|
-
};
|
|
7
|
+
const affixProps = buildProps({
|
|
8
|
+
zIndex: {
|
|
9
|
+
type: definePropType([Number, String]),
|
|
10
|
+
default: 100
|
|
11
|
+
},
|
|
12
|
+
target: {
|
|
13
|
+
type: String,
|
|
14
|
+
default: ""
|
|
15
|
+
},
|
|
16
|
+
offset: {
|
|
17
|
+
type: Number,
|
|
18
|
+
default: 0
|
|
19
|
+
},
|
|
20
|
+
position: {
|
|
21
|
+
type: String,
|
|
22
|
+
values: ["top", "bottom"],
|
|
23
|
+
default: "top"
|
|
118
24
|
}
|
|
119
25
|
});
|
|
120
|
-
|
|
26
|
+
const affixEmits = {
|
|
27
|
+
scroll: ({ scrollTop, fixed }) => isNumber(scrollTop) && isBoolean(fixed),
|
|
28
|
+
[CHANGE_EVENT]: (fixed) => isBoolean(fixed)
|
|
29
|
+
};
|
|
121
30
|
|
|
122
|
-
export {
|
|
31
|
+
export { affixEmits, affixProps };
|
|
123
32
|
//# sourceMappingURL=affix2.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"affix2.mjs","sources":["../../../../../../packages/components/affix/src/affix.
|
|
1
|
+
{"version":3,"file":"affix2.mjs","sources":["../../../../../../packages/components/affix/src/affix.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isBoolean,\n isNumber,\n} from '@element-plus/utils'\nimport { CHANGE_EVENT } from '@element-plus/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type { ZIndexProperty } from 'csstype'\nimport type Affix from './affix.vue'\n\nexport const affixProps = buildProps({\n /**\n * @description affix element zIndex value\n * */\n zIndex: {\n type: definePropType<ZIndexProperty>([Number, String]),\n default: 100,\n },\n /**\n * @description target container. (CSS selector)\n */\n target: {\n type: String,\n default: '',\n },\n /**\n * @description offset distance\n * */\n offset: {\n type: Number,\n default: 0,\n },\n /**\n * @description position of affix\n * */\n position: {\n type: String,\n values: ['top', 'bottom'],\n default: 'top',\n },\n} as const)\nexport type AffixProps = ExtractPropTypes<typeof affixProps>\n\nexport const affixEmits = {\n scroll: ({ scrollTop, fixed }: { scrollTop: number; fixed: boolean }) =>\n isNumber(scrollTop) && isBoolean(fixed),\n [CHANGE_EVENT]: (fixed: boolean) => isBoolean(fixed),\n}\nexport type AffixEmits = typeof affixEmits\n\nexport type AffixInstance = InstanceType<typeof Affix>\n"],"names":[],"mappings":";;;;;;AAOY,MAAC,UAAU,GAAG,UAAU,CAAC;AACrC,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;AAC7B,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC;AAC3E,EAAE,CAAC,YAAY,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC;AAC7C;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare const ElAlert: import("@element-plus/nightly/es/utils").SFCWithInstall<import("vue").DefineComponent<{
|
|
2
2
|
readonly title: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
3
3
|
readonly description: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
4
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "
|
|
4
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "success" | "warning" | "error" | "info", unknown, "info", boolean>;
|
|
5
5
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
6
6
|
readonly closeText: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
7
7
|
readonly showIcon: BooleanConstructor;
|
|
@@ -12,7 +12,7 @@ export declare const ElAlert: import("@element-plus/nightly/es/utils").SFCWithIn
|
|
|
12
12
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
|
13
13
|
readonly title: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
14
14
|
readonly description: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
15
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "
|
|
15
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "success" | "warning" | "error" | "info", unknown, "info", boolean>;
|
|
16
16
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
17
17
|
readonly closeText: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
18
18
|
readonly showIcon: BooleanConstructor;
|
|
@@ -120,7 +120,7 @@ export declare const ElAlert: import("@element-plus/nightly/es/utils").SFCWithIn
|
|
|
120
120
|
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
121
121
|
readonly title: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
122
122
|
readonly description: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
123
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "
|
|
123
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "success" | "warning" | "error" | "info", unknown, "info", boolean>;
|
|
124
124
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
125
125
|
readonly closeText: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
126
126
|
readonly showIcon: BooleanConstructor;
|
|
@@ -129,7 +129,7 @@ export declare const ElAlert: import("@element-plus/nightly/es/utils").SFCWithIn
|
|
|
129
129
|
}>> & {
|
|
130
130
|
onClose?: ((evt: MouseEvent) => any) | undefined;
|
|
131
131
|
}, {
|
|
132
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "
|
|
132
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "success" | "warning" | "error" | "info", unknown>;
|
|
133
133
|
readonly title: string;
|
|
134
134
|
readonly description: string;
|
|
135
135
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -3,7 +3,7 @@ export declare const alertEffects: readonly ["light", "dark"];
|
|
|
3
3
|
export declare const alertProps: {
|
|
4
4
|
readonly title: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
5
5
|
readonly description: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
6
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "
|
|
6
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "success" | "warning" | "error" | "info", unknown, "info", boolean>;
|
|
7
7
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
8
8
|
readonly closeText: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
9
9
|
readonly showIcon: BooleanConstructor;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
declare const _default: import("vue").DefineComponent<{
|
|
2
2
|
readonly title: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
3
3
|
readonly description: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
4
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "
|
|
4
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "success" | "warning" | "error" | "info", unknown, "info", boolean>;
|
|
5
5
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
6
6
|
readonly closeText: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
7
7
|
readonly showIcon: BooleanConstructor;
|
|
@@ -12,7 +12,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
12
12
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
|
13
13
|
readonly title: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
14
14
|
readonly description: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
15
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "
|
|
15
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "success" | "warning" | "error" | "info", unknown, "info", boolean>;
|
|
16
16
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
17
17
|
readonly closeText: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
18
18
|
readonly showIcon: BooleanConstructor;
|
|
@@ -120,7 +120,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
120
120
|
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
121
121
|
readonly title: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
122
122
|
readonly description: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
123
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "
|
|
123
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, "success" | "warning" | "error" | "info", unknown, "info", boolean>;
|
|
124
124
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
125
125
|
readonly closeText: import("@element-plus/nightly/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
126
126
|
readonly showIcon: BooleanConstructor;
|
|
@@ -129,7 +129,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
129
129
|
}>> & {
|
|
130
130
|
onClose?: ((evt: MouseEvent) => any) | undefined;
|
|
131
131
|
}, {
|
|
132
|
-
readonly type: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "
|
|
132
|
+
readonly type: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "success" | "warning" | "error" | "info", unknown>;
|
|
133
133
|
readonly title: string;
|
|
134
134
|
readonly description: string;
|
|
135
135
|
readonly closable: import("@element-plus/nightly/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -59,6 +59,7 @@ export declare const ElAnchor: import("@element-plus/nightly/es/utils").SFCWithI
|
|
|
59
59
|
addLink: (state: import("./src/constants").AnchorLinkState) => void;
|
|
60
60
|
removeLink: (href: string) => void;
|
|
61
61
|
setCurrentAnchor: (href: string) => void;
|
|
62
|
+
clearAnimate: null;
|
|
62
63
|
scrollToAnchor: (href: string) => void;
|
|
63
64
|
scrollTo: (href?: string | undefined) => void;
|
|
64
65
|
handleClick: (e: MouseEvent, href?: string | undefined) => void;
|
|
@@ -60,6 +60,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
60
60
|
addLink: (state: AnchorLinkState) => void;
|
|
61
61
|
removeLink: (href: string) => void;
|
|
62
62
|
setCurrentAnchor: (href: string) => void;
|
|
63
|
+
clearAnimate: null;
|
|
63
64
|
scrollToAnchor: (href: string) => void;
|
|
64
65
|
scrollTo: (href?: string | undefined) => void;
|
|
65
66
|
handleClick: (e: MouseEvent, href?: string | undefined) => void;
|
|
@@ -47,18 +47,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
47
47
|
emit("change", href);
|
|
48
48
|
}
|
|
49
49
|
};
|
|
50
|
+
let clearAnimate = null;
|
|
50
51
|
const scrollToAnchor = (href) => {
|
|
51
52
|
if (!containerEl.value)
|
|
52
53
|
return;
|
|
53
54
|
const target = getElement(href);
|
|
54
55
|
if (!target)
|
|
55
56
|
return;
|
|
57
|
+
if (clearAnimate)
|
|
58
|
+
clearAnimate();
|
|
56
59
|
isScrolling = true;
|
|
57
60
|
const scrollEle = getScrollElement(target, containerEl.value);
|
|
58
61
|
const distance = getOffsetTopDistance(target, scrollEle);
|
|
59
62
|
const max = scrollEle.scrollHeight - scrollEle.clientHeight;
|
|
60
63
|
const to = Math.min(distance - props.offset, max);
|
|
61
|
-
animateScrollTo(containerEl.value, currentScrollTop, to, props.duration, () => {
|
|
64
|
+
clearAnimate = animateScrollTo(containerEl.value, currentScrollTop, to, props.duration, () => {
|
|
62
65
|
setTimeout(() => {
|
|
63
66
|
isScrolling = false;
|
|
64
67
|
}, 20);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchor2.mjs","sources":["../../../../../../packages/components/anchor/src/anchor.vue"],"sourcesContent":["<template>\n <div ref=\"anchorRef\" :class=\"cls\">\n <div\n v-if=\"marker\"\n ref=\"markerRef\"\n :class=\"ns.e('marker')\"\n :style=\"markerStyle\"\n />\n <div :class=\"ns.e('list')\">\n <slot />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, provide, ref, watch } from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport { useNamespace } from '@element-plus/hooks'\nimport {\n animateScrollTo,\n getElement,\n getOffsetTopDistance,\n getScrollElement,\n getScrollTop,\n isUndefined,\n isWindow,\n throttleByRaf,\n} from '@element-plus/utils'\nimport { anchorEmits, anchorProps } from './anchor'\nimport { anchorKey } from './constants'\n\nimport type { AnchorLinkState } from './constants'\n\ndefineOptions({\n name: 'ElAnchor',\n})\n\nconst props = defineProps(anchorProps)\nconst emit = defineEmits(anchorEmits)\n\nconst currentAnchor = ref('')\nconst anchorRef = ref<HTMLElement | null>(null)\nconst markerRef = ref<HTMLElement | null>(null)\nconst containerEl = ref<HTMLElement | Window>()\n\nconst links: Record<string, HTMLElement> = {}\nlet isScrolling = false\nlet currentScrollTop = 0\n\nconst ns = useNamespace('anchor')\n\nconst cls = computed(() => [\n ns.b(),\n props.type === 'underline' ? ns.m('underline') : '',\n ns.m(props.direction),\n])\n\nconst addLink = (state: AnchorLinkState) => {\n links[state.href] = state.el\n}\n\nconst removeLink = (href: string) => {\n delete links[href]\n}\n\nconst setCurrentAnchor = (href: string) => {\n const activeHref = currentAnchor.value\n if (activeHref !== href) {\n currentAnchor.value = href\n emit('change', href)\n }\n}\n\nconst scrollToAnchor = (href: string) => {\n if (!containerEl.value) return\n const target = getElement(href)\n if (!target) return\n isScrolling = true\n const scrollEle = getScrollElement(target, containerEl.value)\n const distance = getOffsetTopDistance(target, scrollEle)\n const max = scrollEle.scrollHeight - scrollEle.clientHeight\n const to = Math.min(distance - props.offset, max)\n animateScrollTo(\n containerEl.value,\n currentScrollTop,\n to,\n props.duration,\n () => {\n // make sure it is executed after throttleByRaf's handleScroll\n setTimeout(() => {\n isScrolling = false\n }, 20)\n }\n )\n}\n\nconst scrollTo = (href?: string) => {\n if (href) {\n setCurrentAnchor(href)\n scrollToAnchor(href)\n }\n}\n\nconst handleClick = (e: MouseEvent, href?: string) => {\n emit('click', e, href)\n scrollTo(href)\n}\n\nconst handleScroll = throttleByRaf(() => {\n if (containerEl.value) {\n currentScrollTop = getScrollTop(containerEl.value)\n }\n const currentHref = getCurrentHref()\n if (isScrolling || isUndefined(currentHref)) return\n setCurrentAnchor(currentHref)\n})\n\nconst getCurrentHref = () => {\n if (!containerEl.value) return\n const scrollTop = getScrollTop(containerEl.value)\n const anchorTopList: { top: number; href: string }[] = []\n\n for (const href of Object.keys(links)) {\n const target = getElement(href)\n if (!target) continue\n const scrollEle = getScrollElement(target, containerEl.value)\n const distance = getOffsetTopDistance(target, scrollEle)\n anchorTopList.push({\n top: distance - props.offset - props.bound,\n href,\n })\n }\n anchorTopList.sort((prev, next) => prev.top - next.top)\n\n for (let i = 0; i < anchorTopList.length; i++) {\n const item = anchorTopList[i]\n const next = anchorTopList[i + 1]\n\n if (i === 0 && scrollTop === 0) {\n return ''\n }\n if (item.top <= scrollTop && (!next || next.top > scrollTop)) {\n return item.href\n }\n }\n}\n\nconst getContainer = () => {\n const el = getElement(props.container)\n if (!el || isWindow(el)) {\n containerEl.value = window\n } else {\n containerEl.value = el\n }\n}\n\nuseEventListener(containerEl, 'scroll', handleScroll)\n\nconst markerStyle = computed(() => {\n if (!anchorRef.value || !markerRef.value || !currentAnchor.value) return {}\n const currentLinkEl = links[currentAnchor.value]\n if (!currentLinkEl) return {}\n const anchorRect = anchorRef.value.getBoundingClientRect()\n const markerRect = markerRef.value.getBoundingClientRect()\n const linkRect = currentLinkEl.getBoundingClientRect()\n\n if (props.direction === 'horizontal') {\n const left = linkRect.left - anchorRect.left\n return {\n left: `${left}px`,\n width: `${linkRect.width}px`,\n opacity: 1,\n }\n } else {\n const top =\n linkRect.top - anchorRect.top + (linkRect.height - markerRect.height) / 2\n return {\n top: `${top}px`,\n opacity: 1,\n }\n }\n})\n\nonMounted(() => {\n getContainer()\n const hash = decodeURIComponent(window.location.hash)\n const target = getElement(hash)\n if (target) {\n scrollTo(hash)\n } else {\n handleScroll()\n }\n})\n\nwatch(\n () => props.container,\n () => {\n getContainer()\n }\n)\n\nprovide(anchorKey, {\n ns,\n direction: props.direction,\n currentAnchor,\n addLink,\n removeLink,\n handleClick,\n})\n\ndefineExpose({\n scrollTo,\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"anchor2.mjs","sources":["../../../../../../packages/components/anchor/src/anchor.vue"],"sourcesContent":["<template>\n <div ref=\"anchorRef\" :class=\"cls\">\n <div\n v-if=\"marker\"\n ref=\"markerRef\"\n :class=\"ns.e('marker')\"\n :style=\"markerStyle\"\n />\n <div :class=\"ns.e('list')\">\n <slot />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, provide, ref, watch } from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport { useNamespace } from '@element-plus/hooks'\nimport {\n animateScrollTo,\n getElement,\n getOffsetTopDistance,\n getScrollElement,\n getScrollTop,\n isUndefined,\n isWindow,\n throttleByRaf,\n} from '@element-plus/utils'\nimport { anchorEmits, anchorProps } from './anchor'\nimport { anchorKey } from './constants'\n\nimport type { AnchorLinkState } from './constants'\n\ndefineOptions({\n name: 'ElAnchor',\n})\n\nconst props = defineProps(anchorProps)\nconst emit = defineEmits(anchorEmits)\n\nconst currentAnchor = ref('')\nconst anchorRef = ref<HTMLElement | null>(null)\nconst markerRef = ref<HTMLElement | null>(null)\nconst containerEl = ref<HTMLElement | Window>()\n\nconst links: Record<string, HTMLElement> = {}\nlet isScrolling = false\nlet currentScrollTop = 0\n\nconst ns = useNamespace('anchor')\n\nconst cls = computed(() => [\n ns.b(),\n props.type === 'underline' ? ns.m('underline') : '',\n ns.m(props.direction),\n])\n\nconst addLink = (state: AnchorLinkState) => {\n links[state.href] = state.el\n}\n\nconst removeLink = (href: string) => {\n delete links[href]\n}\n\nconst setCurrentAnchor = (href: string) => {\n const activeHref = currentAnchor.value\n if (activeHref !== href) {\n currentAnchor.value = href\n emit('change', href)\n }\n}\n\nlet clearAnimate: (() => void) | null = null\n\nconst scrollToAnchor = (href: string) => {\n if (!containerEl.value) return\n const target = getElement(href)\n if (!target) return\n if (clearAnimate) clearAnimate()\n isScrolling = true\n const scrollEle = getScrollElement(target, containerEl.value)\n const distance = getOffsetTopDistance(target, scrollEle)\n const max = scrollEle.scrollHeight - scrollEle.clientHeight\n const to = Math.min(distance - props.offset, max)\n clearAnimate = animateScrollTo(\n containerEl.value,\n currentScrollTop,\n to,\n props.duration,\n () => {\n // make sure it is executed after throttleByRaf's handleScroll\n setTimeout(() => {\n isScrolling = false\n }, 20)\n }\n )\n}\n\nconst scrollTo = (href?: string) => {\n if (href) {\n setCurrentAnchor(href)\n scrollToAnchor(href)\n }\n}\n\nconst handleClick = (e: MouseEvent, href?: string) => {\n emit('click', e, href)\n scrollTo(href)\n}\n\nconst handleScroll = throttleByRaf(() => {\n if (containerEl.value) {\n currentScrollTop = getScrollTop(containerEl.value)\n }\n const currentHref = getCurrentHref()\n if (isScrolling || isUndefined(currentHref)) return\n setCurrentAnchor(currentHref)\n})\n\nconst getCurrentHref = () => {\n if (!containerEl.value) return\n const scrollTop = getScrollTop(containerEl.value)\n const anchorTopList: { top: number; href: string }[] = []\n\n for (const href of Object.keys(links)) {\n const target = getElement(href)\n if (!target) continue\n const scrollEle = getScrollElement(target, containerEl.value)\n const distance = getOffsetTopDistance(target, scrollEle)\n anchorTopList.push({\n top: distance - props.offset - props.bound,\n href,\n })\n }\n anchorTopList.sort((prev, next) => prev.top - next.top)\n\n for (let i = 0; i < anchorTopList.length; i++) {\n const item = anchorTopList[i]\n const next = anchorTopList[i + 1]\n\n if (i === 0 && scrollTop === 0) {\n return ''\n }\n if (item.top <= scrollTop && (!next || next.top > scrollTop)) {\n return item.href\n }\n }\n}\n\nconst getContainer = () => {\n const el = getElement(props.container)\n if (!el || isWindow(el)) {\n containerEl.value = window\n } else {\n containerEl.value = el\n }\n}\n\nuseEventListener(containerEl, 'scroll', handleScroll)\n\nconst markerStyle = computed(() => {\n if (!anchorRef.value || !markerRef.value || !currentAnchor.value) return {}\n const currentLinkEl = links[currentAnchor.value]\n if (!currentLinkEl) return {}\n const anchorRect = anchorRef.value.getBoundingClientRect()\n const markerRect = markerRef.value.getBoundingClientRect()\n const linkRect = currentLinkEl.getBoundingClientRect()\n\n if (props.direction === 'horizontal') {\n const left = linkRect.left - anchorRect.left\n return {\n left: `${left}px`,\n width: `${linkRect.width}px`,\n opacity: 1,\n }\n } else {\n const top =\n linkRect.top - anchorRect.top + (linkRect.height - markerRect.height) / 2\n return {\n top: `${top}px`,\n opacity: 1,\n }\n }\n})\n\nonMounted(() => {\n getContainer()\n const hash = decodeURIComponent(window.location.hash)\n const target = getElement(hash)\n if (target) {\n scrollTo(hash)\n } else {\n handleScroll()\n }\n})\n\nwatch(\n () => props.container,\n () => {\n getContainer()\n }\n)\n\nprovide(anchorKey, {\n ns,\n direction: props.direction,\n currentAnchor,\n addLink,\n removeLink,\n handleClick,\n})\n\ndefineExpose({\n scrollTo,\n})\n</script>\n"],"names":[],"mappings":"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"}
|