@element-plus/nightly 0.0.20250823 → 0.0.20250825
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/attributes.json +1 -1
- package/dist/index.full.js +29 -26
- package/dist/index.full.min.js +6 -6
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +4 -4
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +29 -26
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar-eg.js +1 -1
- package/dist/locale/ar-eg.min.js +1 -1
- package/dist/locale/ar-eg.min.mjs +1 -1
- package/dist/locale/ar-eg.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/ckb.js +1 -1
- package/dist/locale/ckb.min.js +1 -1
- package/dist/locale/ckb.min.mjs +1 -1
- package/dist/locale/ckb.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/hi.js +1 -1
- package/dist/locale/hi.min.js +1 -1
- package/dist/locale/hi.min.mjs +1 -1
- package/dist/locale/hi.mjs +1 -1
- package/dist/locale/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lo.js +1 -1
- package/dist/locale/lo.min.js +1 -1
- package/dist/locale/lo.min.mjs +1 -1
- package/dist/locale/lo.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/ms.js +1 -1
- package/dist/locale/ms.min.js +1 -1
- package/dist/locale/ms.min.mjs +1 -1
- package/dist/locale/ms.mjs +1 -1
- package/dist/locale/my.js +1 -1
- package/dist/locale/my.min.js +1 -1
- package/dist/locale/my.min.mjs +1 -1
- package/dist/locale/my.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/no.js +1 -1
- package/dist/locale/no.min.js +1 -1
- package/dist/locale/no.min.mjs +1 -1
- package/dist/locale/no.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +1 -1
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.mjs +1 -1
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/sw.js +1 -1
- package/dist/locale/sw.min.js +1 -1
- package/dist/locale/sw.min.mjs +1 -1
- package/dist/locale/sw.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/te.js +1 -1
- package/dist/locale/te.min.js +1 -1
- package/dist/locale/te.min.mjs +1 -1
- package/dist/locale/te.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-hk.js +1 -1
- package/dist/locale/zh-hk.min.js +1 -1
- package/dist/locale/zh-hk.min.mjs +1 -1
- package/dist/locale/zh-hk.mjs +1 -1
- package/dist/locale/zh-mo.js +1 -1
- package/dist/locale/zh-mo.min.js +1 -1
- package/dist/locale/zh-mo.min.mjs +1 -1
- package/dist/locale/zh-mo.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/breadcrumb/src/breadcrumb-item.vue.d.ts +1 -1
- package/es/components/calendar/src/calendar2.mjs +1 -1
- package/es/components/calendar/src/date-table.mjs +89 -31
- package/es/components/calendar/src/date-table.mjs.map +1 -1
- package/es/components/calendar/src/date-table2.mjs +31 -89
- package/es/components/calendar/src/date-table2.mjs.map +1 -1
- package/es/components/calendar/src/use-date-table.mjs +1 -1
- package/es/components/cascader/src/cascader.d.ts +1 -1
- package/es/components/cascader/src/cascader.vue.d.ts +2 -2
- package/es/components/cascader-panel/src/config.d.ts +2 -2
- package/es/components/cascader-panel/src/config.mjs +1 -1
- package/es/components/cascader-panel/src/config.mjs.map +1 -1
- package/es/components/cascader-panel/src/index.vue.d.ts +2 -2
- package/es/components/cascader-panel/src/node.d.ts +1 -1
- package/es/components/cascader-panel/src/node.mjs.map +1 -1
- package/es/components/cascader-panel/src/node2.mjs +2 -4
- package/es/components/cascader-panel/src/node2.mjs.map +1 -1
- package/es/components/cascader-panel/src/types.d.ts +1 -1
- package/es/components/cascader-panel/src/types.mjs.map +1 -1
- package/es/components/collapse/index.mjs +2 -2
- package/es/components/collapse/src/collapse.mjs +28 -23
- package/es/components/collapse/src/collapse.mjs.map +1 -1
- package/es/components/collapse/src/collapse2.mjs +23 -28
- package/es/components/collapse/src/collapse2.mjs.map +1 -1
- package/es/components/countdown/index.mjs +2 -2
- package/es/components/countdown/src/countdown.mjs +79 -21
- package/es/components/countdown/src/countdown.mjs.map +1 -1
- package/es/components/countdown/src/countdown2.mjs +21 -79
- package/es/components/countdown/src/countdown2.mjs.map +1 -1
- package/es/components/date-picker-panel/src/composables/use-range-picker.d.ts +3 -3
- package/es/components/date-picker-panel/src/composables/use-range-picker.mjs +6 -6
- package/es/components/date-picker-panel/src/composables/use-range-picker.mjs.map +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.mjs +6 -5
- package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.mjs.map +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.mjs +4 -4
- package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.mjs.map +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.mjs +4 -4
- package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.mjs.map +1 -1
- package/es/components/descriptions/index.mjs +2 -2
- package/es/components/descriptions/src/description.mjs +26 -127
- package/es/components/descriptions/src/description.mjs.map +1 -1
- package/es/components/descriptions/src/description2.mjs +127 -26
- package/es/components/descriptions/src/description2.mjs.map +1 -1
- package/es/components/drawer/index.mjs +2 -2
- package/es/components/drawer/src/drawer.mjs +27 -202
- package/es/components/drawer/src/drawer.mjs.map +1 -1
- package/es/components/drawer/src/drawer2.mjs +202 -27
- package/es/components/drawer/src/drawer2.mjs.map +1 -1
- package/es/components/dropdown/src/dropdown.mjs +1 -1
- package/es/components/empty/index.mjs +2 -2
- package/es/components/empty/src/empty.mjs +52 -11
- package/es/components/empty/src/empty.mjs.map +1 -1
- package/es/components/empty/src/empty2.mjs +11 -52
- package/es/components/empty/src/empty2.mjs.map +1 -1
- package/es/components/form/src/types.d.ts +1 -62
- package/es/components/image/index.mjs +2 -2
- package/es/components/image/src/image.mjs +227 -65
- package/es/components/image/src/image.mjs.map +1 -1
- package/es/components/image/src/image2.mjs +65 -227
- package/es/components/image/src/image2.mjs.map +1 -1
- package/es/components/index.mjs +16 -16
- package/es/components/input-tag/style/css.d.ts +1 -0
- package/es/components/input-tag/style/css.mjs +1 -0
- package/es/components/input-tag/style/css.mjs.map +1 -1
- package/es/components/input-tag/style/index.d.ts +2 -1
- package/es/components/input-tag/style/index.mjs +1 -0
- package/es/components/input-tag/style/index.mjs.map +1 -1
- package/es/components/menu/index.mjs +2 -2
- package/es/components/menu/src/menu-item.mjs +100 -15
- package/es/components/menu/src/menu-item.mjs.map +1 -1
- package/es/components/menu/src/menu-item2.mjs +15 -100
- package/es/components/menu/src/menu-item2.mjs.map +1 -1
- package/es/components/notification/index.mjs +1 -1
- package/es/components/notification/src/notification.mjs +73 -140
- package/es/components/notification/src/notification.mjs.map +1 -1
- package/es/components/notification/src/notification2.mjs +140 -73
- package/es/components/notification/src/notification2.mjs.map +1 -1
- package/es/components/notification/src/notify.mjs +2 -2
- package/es/components/page-header/index.mjs +2 -2
- package/es/components/page-header/src/page-header.mjs +97 -16
- package/es/components/page-header/src/page-header.mjs.map +1 -1
- package/es/components/page-header/src/page-header2.mjs +16 -97
- package/es/components/page-header/src/page-header2.mjs.map +1 -1
- package/es/components/popover/src/popover.mjs +1 -1
- package/es/components/progress/index.mjs +2 -2
- package/es/components/progress/src/progress.mjs +207 -53
- package/es/components/progress/src/progress.mjs.map +1 -1
- package/es/components/progress/src/progress2.mjs +53 -207
- package/es/components/progress/src/progress2.mjs.map +1 -1
- package/es/components/scrollbar/src/bar.mjs +64 -10
- package/es/components/scrollbar/src/bar.mjs.map +1 -1
- package/es/components/scrollbar/src/bar2.mjs +10 -64
- package/es/components/scrollbar/src/bar2.mjs.map +1 -1
- package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
- package/es/components/splitter/index.mjs +2 -2
- package/es/components/splitter/src/split-panel2.mjs +4 -0
- package/es/components/splitter/src/split-panel2.mjs.map +1 -1
- package/es/components/splitter/src/splitter.mjs +99 -9
- package/es/components/splitter/src/splitter.mjs.map +1 -1
- package/es/components/splitter/src/splitter2.mjs +9 -99
- package/es/components/splitter/src/splitter2.mjs.map +1 -1
- package/es/components/steps/index.mjs +2 -2
- package/es/components/steps/src/item.mjs +193 -19
- package/es/components/steps/src/item.mjs.map +1 -1
- package/es/components/steps/src/item2.mjs +19 -193
- package/es/components/steps/src/item2.mjs.map +1 -1
- package/es/components/tabs/index.mjs +1 -1
- package/es/components/tabs/src/tab-bar.mjs +87 -11
- package/es/components/tabs/src/tab-bar.mjs.map +1 -1
- package/es/components/tabs/src/tab-bar2.mjs +11 -87
- package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
- package/es/components/tabs/src/tab-nav.mjs +1 -1
- package/es/components/tooltip/index.mjs +1 -1
- package/es/components/tooltip/src/tooltip.mjs +1 -1
- package/es/components/tooltip/src/tooltip2.mjs +1 -1
- package/es/components/tooltip/src/trigger.mjs +14 -72
- package/es/components/tooltip/src/trigger.mjs.map +1 -1
- package/es/components/tooltip/src/trigger2.mjs +72 -14
- package/es/components/tooltip/src/trigger2.mjs.map +1 -1
- package/es/components/tour/index.mjs +2 -2
- package/es/components/tour/src/mask.mjs +74 -18
- package/es/components/tour/src/mask.mjs.map +1 -1
- package/es/components/tour/src/mask2.mjs +18 -74
- package/es/components/tour/src/mask2.mjs.map +1 -1
- package/es/components/tour/src/step.mjs +189 -44
- package/es/components/tour/src/step.mjs.map +1 -1
- package/es/components/tour/src/step2.mjs +44 -189
- package/es/components/tour/src/step2.mjs.map +1 -1
- package/es/components/tour/src/tour2.mjs +1 -1
- package/es/components/transfer/index.mjs +2 -2
- package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.mjs +1 -1
- package/es/components/transfer/src/transfer.mjs +68 -164
- package/es/components/transfer/src/transfer.mjs.map +1 -1
- package/es/components/transfer/src/transfer2.mjs +164 -68
- package/es/components/transfer/src/transfer2.mjs.map +1 -1
- package/es/hooks/use-locale/index.d.ts +5 -2
- package/es/hooks/use-locale/index.mjs.map +1 -1
- package/es/index.d.ts +445 -265
- package/es/index.mjs +16 -16
- package/es/utils/typescript.d.ts +61 -0
- package/es/utils/typescript.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/breadcrumb/src/breadcrumb-item.vue.d.ts +1 -1
- package/lib/components/calendar/src/calendar2.js +1 -1
- package/lib/components/calendar/src/date-table.js +89 -35
- package/lib/components/calendar/src/date-table.js.map +1 -1
- package/lib/components/calendar/src/date-table2.js +35 -89
- package/lib/components/calendar/src/date-table2.js.map +1 -1
- package/lib/components/calendar/src/use-date-table.js +1 -1
- package/lib/components/cascader/src/cascader.d.ts +1 -1
- package/lib/components/cascader/src/cascader.vue.d.ts +2 -2
- package/lib/components/cascader-panel/src/config.d.ts +2 -2
- package/lib/components/cascader-panel/src/config.js +1 -1
- package/lib/components/cascader-panel/src/config.js.map +1 -1
- package/lib/components/cascader-panel/src/index.vue.d.ts +2 -2
- package/lib/components/cascader-panel/src/node.d.ts +1 -1
- package/lib/components/cascader-panel/src/node.js.map +1 -1
- package/lib/components/cascader-panel/src/node2.js +2 -4
- package/lib/components/cascader-panel/src/node2.js.map +1 -1
- package/lib/components/cascader-panel/src/types.d.ts +1 -1
- package/lib/components/cascader-panel/src/types.js.map +1 -1
- package/lib/components/collapse/index.js +2 -2
- package/lib/components/collapse/src/collapse.js +28 -25
- package/lib/components/collapse/src/collapse.js.map +1 -1
- package/lib/components/collapse/src/collapse2.js +25 -28
- package/lib/components/collapse/src/collapse2.js.map +1 -1
- package/lib/components/countdown/index.js +2 -2
- package/lib/components/countdown/src/countdown.js +79 -22
- package/lib/components/countdown/src/countdown.js.map +1 -1
- package/lib/components/countdown/src/countdown2.js +22 -79
- package/lib/components/countdown/src/countdown2.js.map +1 -1
- package/lib/components/date-picker-panel/src/composables/use-range-picker.d.ts +3 -3
- package/lib/components/date-picker-panel/src/composables/use-range-picker.js +6 -6
- package/lib/components/date-picker-panel/src/composables/use-range-picker.js.map +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.js +6 -5
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.js.map +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.js +4 -4
- package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.js.map +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.js +4 -4
- package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.js.map +1 -1
- package/lib/components/descriptions/index.js +2 -2
- package/lib/components/descriptions/src/description.js +26 -127
- package/lib/components/descriptions/src/description.js.map +1 -1
- package/lib/components/descriptions/src/description2.js +127 -26
- package/lib/components/descriptions/src/description2.js.map +1 -1
- package/lib/components/drawer/index.js +2 -2
- package/lib/components/drawer/src/drawer.js +28 -202
- package/lib/components/drawer/src/drawer.js.map +1 -1
- package/lib/components/drawer/src/drawer2.js +202 -28
- package/lib/components/drawer/src/drawer2.js.map +1 -1
- package/lib/components/dropdown/src/dropdown.js +1 -1
- package/lib/components/empty/index.js +2 -2
- package/lib/components/empty/src/empty.js +52 -11
- package/lib/components/empty/src/empty.js.map +1 -1
- package/lib/components/empty/src/empty2.js +11 -52
- package/lib/components/empty/src/empty2.js.map +1 -1
- package/lib/components/form/src/types.d.ts +1 -62
- package/lib/components/image/index.js +2 -2
- package/lib/components/image/src/image.js +226 -65
- package/lib/components/image/src/image.js.map +1 -1
- package/lib/components/image/src/image2.js +65 -226
- package/lib/components/image/src/image2.js.map +1 -1
- package/lib/components/index.js +16 -16
- package/lib/components/input-tag/style/css.d.ts +1 -0
- package/lib/components/input-tag/style/css.js +1 -0
- package/lib/components/input-tag/style/css.js.map +1 -1
- package/lib/components/input-tag/style/index.d.ts +2 -1
- package/lib/components/input-tag/style/index.js +1 -0
- package/lib/components/input-tag/style/index.js.map +1 -1
- package/lib/components/menu/index.js +2 -2
- package/lib/components/menu/src/menu-item.js +100 -16
- package/lib/components/menu/src/menu-item.js.map +1 -1
- package/lib/components/menu/src/menu-item2.js +16 -100
- package/lib/components/menu/src/menu-item2.js.map +1 -1
- package/lib/components/notification/index.js +1 -1
- package/lib/components/notification/src/notification.js +74 -139
- package/lib/components/notification/src/notification.js.map +1 -1
- package/lib/components/notification/src/notification2.js +139 -74
- package/lib/components/notification/src/notification2.js.map +1 -1
- package/lib/components/notification/src/notify.js +2 -2
- package/lib/components/page-header/index.js +2 -2
- package/lib/components/page-header/src/page-header.js +97 -17
- package/lib/components/page-header/src/page-header.js.map +1 -1
- package/lib/components/page-header/src/page-header2.js +17 -97
- package/lib/components/page-header/src/page-header2.js.map +1 -1
- package/lib/components/popover/src/popover.js +1 -1
- package/lib/components/progress/index.js +2 -2
- package/lib/components/progress/src/progress.js +207 -53
- package/lib/components/progress/src/progress.js.map +1 -1
- package/lib/components/progress/src/progress2.js +53 -207
- package/lib/components/progress/src/progress2.js.map +1 -1
- package/lib/components/scrollbar/src/bar.js +64 -10
- package/lib/components/scrollbar/src/bar.js.map +1 -1
- package/lib/components/scrollbar/src/bar2.js +10 -64
- package/lib/components/scrollbar/src/bar2.js.map +1 -1
- package/lib/components/scrollbar/src/scrollbar2.js +1 -1
- package/lib/components/splitter/index.js +2 -2
- package/lib/components/splitter/src/split-panel2.js +4 -0
- package/lib/components/splitter/src/split-panel2.js.map +1 -1
- package/lib/components/splitter/src/splitter.js +99 -9
- package/lib/components/splitter/src/splitter.js.map +1 -1
- package/lib/components/splitter/src/splitter2.js +9 -99
- package/lib/components/splitter/src/splitter2.js.map +1 -1
- package/lib/components/steps/index.js +2 -2
- package/lib/components/steps/src/item.js +193 -19
- package/lib/components/steps/src/item.js.map +1 -1
- package/lib/components/steps/src/item2.js +19 -193
- package/lib/components/steps/src/item2.js.map +1 -1
- package/lib/components/tabs/index.js +1 -1
- package/lib/components/tabs/src/tab-bar.js +87 -11
- package/lib/components/tabs/src/tab-bar.js.map +1 -1
- package/lib/components/tabs/src/tab-bar2.js +11 -87
- package/lib/components/tabs/src/tab-bar2.js.map +1 -1
- package/lib/components/tabs/src/tab-nav.js +1 -1
- package/lib/components/tooltip/index.js +1 -1
- package/lib/components/tooltip/src/tooltip.js +1 -1
- package/lib/components/tooltip/src/tooltip2.js +1 -1
- package/lib/components/tooltip/src/trigger.js +14 -72
- package/lib/components/tooltip/src/trigger.js.map +1 -1
- package/lib/components/tooltip/src/trigger2.js +72 -14
- package/lib/components/tooltip/src/trigger2.js.map +1 -1
- package/lib/components/tour/index.js +2 -2
- package/lib/components/tour/src/mask.js +74 -18
- package/lib/components/tour/src/mask.js.map +1 -1
- package/lib/components/tour/src/mask2.js +18 -74
- package/lib/components/tour/src/mask2.js.map +1 -1
- package/lib/components/tour/src/step.js +188 -44
- package/lib/components/tour/src/step.js.map +1 -1
- package/lib/components/tour/src/step2.js +44 -188
- package/lib/components/tour/src/step2.js.map +1 -1
- package/lib/components/tour/src/tour2.js +1 -1
- package/lib/components/transfer/index.js +2 -2
- package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
- package/lib/components/transfer/src/transfer-panel.js +1 -1
- package/lib/components/transfer/src/transfer.js +72 -164
- package/lib/components/transfer/src/transfer.js.map +1 -1
- package/lib/components/transfer/src/transfer2.js +164 -72
- package/lib/components/transfer/src/transfer2.js.map +1 -1
- package/lib/hooks/use-locale/index.d.ts +5 -2
- package/lib/hooks/use-locale/index.js.map +1 -1
- package/lib/index.d.ts +445 -265
- package/lib/index.js +16 -16
- package/lib/utils/typescript.d.ts +61 -0
- package/lib/utils/typescript.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/web-types.json +1 -1
@@ -1,70 +1,232 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import {
|
1
|
+
import { defineComponent, useAttrs, computed, ref, watch, onMounted, openBlock, createElementBlock, mergeProps, unref, renderSlot, createElementVNode, normalizeClass, toDisplayString, Fragment, createCommentVNode, createBlock, createSlots, withCtx, normalizeProps, guardReactiveProps, nextTick } from 'vue';
|
2
|
+
import { isClient, useThrottleFn, useIntersectionObserver } from '@vueuse/core';
|
3
|
+
import { fromPairs } from 'lodash-unified';
|
4
|
+
import { ElImageViewer } from '../../image-viewer/index.mjs';
|
5
|
+
import { imageProps, imageEmits } from './image2.mjs';
|
6
|
+
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
7
|
+
import { isElement, isWindow } from '../../../utils/types.mjs';
|
8
|
+
import { useLocale } from '../../../hooks/use-locale/index.mjs';
|
9
|
+
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
10
|
+
import { useAttrs as useAttrs$1 } from '../../../hooks/use-attrs/index.mjs';
|
11
|
+
import { isArray, isString } from '@vue/shared';
|
12
|
+
import { getScrollContainer } from '../../../utils/dom/scroll.mjs';
|
4
13
|
|
5
|
-
const
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
14
|
+
const __default__ = defineComponent({
|
15
|
+
name: "ElImage",
|
16
|
+
inheritAttrs: false
|
17
|
+
});
|
18
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
19
|
+
...__default__,
|
20
|
+
props: imageProps,
|
21
|
+
emits: imageEmits,
|
22
|
+
setup(__props, { expose, emit }) {
|
23
|
+
const props = __props;
|
24
|
+
const { t } = useLocale();
|
25
|
+
const ns = useNamespace("image");
|
26
|
+
const rawAttrs = useAttrs();
|
27
|
+
const containerAttrs = computed(() => {
|
28
|
+
return fromPairs(Object.entries(rawAttrs).filter(([key]) => /^(data-|on[A-Z])/i.test(key) || ["id", "style"].includes(key)));
|
29
|
+
});
|
30
|
+
const imgAttrs = useAttrs$1({
|
31
|
+
excludeListeners: true,
|
32
|
+
excludeKeys: computed(() => {
|
33
|
+
return Object.keys(containerAttrs.value);
|
34
|
+
})
|
35
|
+
});
|
36
|
+
const imageSrc = ref();
|
37
|
+
const hasLoadError = ref(false);
|
38
|
+
const isLoading = ref(true);
|
39
|
+
const showViewer = ref(false);
|
40
|
+
const container = ref();
|
41
|
+
const _scrollContainer = ref();
|
42
|
+
const supportLoading = isClient && "loading" in HTMLImageElement.prototype;
|
43
|
+
let stopScrollListener;
|
44
|
+
const imageKls = computed(() => [
|
45
|
+
ns.e("inner"),
|
46
|
+
preview.value && ns.e("preview"),
|
47
|
+
isLoading.value && ns.is("loading")
|
48
|
+
]);
|
49
|
+
const imageStyle = computed(() => {
|
50
|
+
const { fit } = props;
|
51
|
+
if (isClient && fit) {
|
52
|
+
return { objectFit: fit };
|
53
|
+
}
|
54
|
+
return {};
|
55
|
+
});
|
56
|
+
const preview = computed(() => {
|
57
|
+
const { previewSrcList } = props;
|
58
|
+
return isArray(previewSrcList) && previewSrcList.length > 0;
|
59
|
+
});
|
60
|
+
const imageIndex = computed(() => {
|
61
|
+
const { previewSrcList, initialIndex } = props;
|
62
|
+
let previewIndex = initialIndex;
|
63
|
+
if (initialIndex > previewSrcList.length - 1) {
|
64
|
+
previewIndex = 0;
|
65
|
+
}
|
66
|
+
return previewIndex;
|
67
|
+
});
|
68
|
+
const isManual = computed(() => {
|
69
|
+
if (props.loading === "eager")
|
70
|
+
return false;
|
71
|
+
return !supportLoading && props.loading === "lazy" || props.lazy;
|
72
|
+
});
|
73
|
+
const loadImage = () => {
|
74
|
+
if (!isClient)
|
75
|
+
return;
|
76
|
+
isLoading.value = true;
|
77
|
+
hasLoadError.value = false;
|
78
|
+
imageSrc.value = props.src;
|
79
|
+
};
|
80
|
+
function handleLoad(event) {
|
81
|
+
isLoading.value = false;
|
82
|
+
hasLoadError.value = false;
|
83
|
+
emit("load", event);
|
84
|
+
}
|
85
|
+
function handleError(event) {
|
86
|
+
isLoading.value = false;
|
87
|
+
hasLoadError.value = true;
|
88
|
+
emit("error", event);
|
89
|
+
}
|
90
|
+
function handleLazyLoad(isIntersecting) {
|
91
|
+
if (isIntersecting) {
|
92
|
+
loadImage();
|
93
|
+
removeLazyLoadListener();
|
94
|
+
}
|
95
|
+
}
|
96
|
+
const lazyLoadHandler = useThrottleFn(handleLazyLoad, 200, true);
|
97
|
+
async function addLazyLoadListener() {
|
98
|
+
var _a;
|
99
|
+
if (!isClient)
|
100
|
+
return;
|
101
|
+
await nextTick();
|
102
|
+
const { scrollContainer } = props;
|
103
|
+
if (isElement(scrollContainer)) {
|
104
|
+
_scrollContainer.value = scrollContainer;
|
105
|
+
} else if (isString(scrollContainer) && scrollContainer !== "") {
|
106
|
+
_scrollContainer.value = (_a = document.querySelector(scrollContainer)) != null ? _a : void 0;
|
107
|
+
} else if (container.value) {
|
108
|
+
const scrollContainer2 = getScrollContainer(container.value);
|
109
|
+
_scrollContainer.value = isWindow(scrollContainer2) ? void 0 : scrollContainer2;
|
110
|
+
}
|
111
|
+
const { stop } = useIntersectionObserver(container, ([entry]) => {
|
112
|
+
lazyLoadHandler(entry.isIntersecting);
|
113
|
+
}, { root: _scrollContainer });
|
114
|
+
stopScrollListener = stop;
|
115
|
+
}
|
116
|
+
function removeLazyLoadListener() {
|
117
|
+
if (!isClient || !lazyLoadHandler)
|
118
|
+
return;
|
119
|
+
stopScrollListener == null ? void 0 : stopScrollListener();
|
120
|
+
_scrollContainer.value = void 0;
|
121
|
+
stopScrollListener = void 0;
|
122
|
+
}
|
123
|
+
function clickHandler() {
|
124
|
+
if (!preview.value)
|
125
|
+
return;
|
126
|
+
showViewer.value = true;
|
127
|
+
emit("show");
|
128
|
+
}
|
129
|
+
function closeViewer() {
|
130
|
+
showViewer.value = false;
|
131
|
+
emit("close");
|
132
|
+
}
|
133
|
+
function switchViewer(val) {
|
134
|
+
emit("switch", val);
|
135
|
+
}
|
136
|
+
watch(() => props.src, () => {
|
137
|
+
if (isManual.value) {
|
138
|
+
isLoading.value = true;
|
139
|
+
hasLoadError.value = false;
|
140
|
+
removeLazyLoadListener();
|
141
|
+
addLazyLoadListener();
|
142
|
+
} else {
|
143
|
+
loadImage();
|
144
|
+
}
|
145
|
+
});
|
146
|
+
onMounted(() => {
|
147
|
+
if (isManual.value) {
|
148
|
+
addLazyLoadListener();
|
149
|
+
} else {
|
150
|
+
loadImage();
|
151
|
+
}
|
152
|
+
});
|
153
|
+
expose({
|
154
|
+
showPreview: clickHandler
|
155
|
+
});
|
156
|
+
return (_ctx, _cache) => {
|
157
|
+
return openBlock(), createElementBlock("div", mergeProps({
|
158
|
+
ref_key: "container",
|
159
|
+
ref: container
|
160
|
+
}, unref(containerAttrs), {
|
161
|
+
class: [unref(ns).b(), _ctx.$attrs.class]
|
162
|
+
}), [
|
163
|
+
hasLoadError.value ? renderSlot(_ctx.$slots, "error", { key: 0 }, () => [
|
164
|
+
createElementVNode("div", {
|
165
|
+
class: normalizeClass(unref(ns).e("error"))
|
166
|
+
}, toDisplayString(unref(t)("el.image.error")), 3)
|
167
|
+
]) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
168
|
+
imageSrc.value !== void 0 ? (openBlock(), createElementBlock("img", mergeProps({ key: 0 }, unref(imgAttrs), {
|
169
|
+
src: imageSrc.value,
|
170
|
+
loading: _ctx.loading,
|
171
|
+
style: unref(imageStyle),
|
172
|
+
class: unref(imageKls),
|
173
|
+
crossorigin: _ctx.crossorigin,
|
174
|
+
onClick: clickHandler,
|
175
|
+
onLoad: handleLoad,
|
176
|
+
onError: handleError
|
177
|
+
}), null, 16, ["src", "loading", "crossorigin"])) : createCommentVNode("v-if", true),
|
178
|
+
isLoading.value ? (openBlock(), createElementBlock("div", {
|
179
|
+
key: 1,
|
180
|
+
class: normalizeClass(unref(ns).e("wrapper"))
|
181
|
+
}, [
|
182
|
+
renderSlot(_ctx.$slots, "placeholder", {}, () => [
|
183
|
+
createElementVNode("div", {
|
184
|
+
class: normalizeClass(unref(ns).e("placeholder"))
|
185
|
+
}, null, 2)
|
186
|
+
])
|
187
|
+
], 2)) : createCommentVNode("v-if", true)
|
188
|
+
], 64)),
|
189
|
+
unref(preview) ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [
|
190
|
+
showViewer.value ? (openBlock(), createBlock(unref(ElImageViewer), {
|
191
|
+
key: 0,
|
192
|
+
"z-index": _ctx.zIndex,
|
193
|
+
"initial-index": unref(imageIndex),
|
194
|
+
infinite: _ctx.infinite,
|
195
|
+
"zoom-rate": _ctx.zoomRate,
|
196
|
+
"min-scale": _ctx.minScale,
|
197
|
+
"max-scale": _ctx.maxScale,
|
198
|
+
"show-progress": _ctx.showProgress,
|
199
|
+
"url-list": _ctx.previewSrcList,
|
200
|
+
crossorigin: _ctx.crossorigin,
|
201
|
+
"hide-on-click-modal": _ctx.hideOnClickModal,
|
202
|
+
teleported: _ctx.previewTeleported,
|
203
|
+
"close-on-press-escape": _ctx.closeOnPressEscape,
|
204
|
+
onClose: closeViewer,
|
205
|
+
onSwitch: switchViewer
|
206
|
+
}, createSlots({
|
207
|
+
toolbar: withCtx((toolbar) => [
|
208
|
+
renderSlot(_ctx.$slots, "toolbar", normalizeProps(guardReactiveProps(toolbar)))
|
209
|
+
]),
|
210
|
+
default: withCtx(() => [
|
211
|
+
_ctx.$slots.viewer ? (openBlock(), createElementBlock("div", { key: 0 }, [
|
212
|
+
renderSlot(_ctx.$slots, "viewer")
|
213
|
+
])) : createCommentVNode("v-if", true)
|
214
|
+
]),
|
215
|
+
_: 2
|
216
|
+
}, [
|
217
|
+
_ctx.$slots.progress ? {
|
218
|
+
name: "progress",
|
219
|
+
fn: withCtx((progress) => [
|
220
|
+
renderSlot(_ctx.$slots, "progress", normalizeProps(guardReactiveProps(progress)))
|
221
|
+
])
|
222
|
+
} : void 0
|
223
|
+
]), 1032, ["z-index", "initial-index", "infinite", "zoom-rate", "min-scale", "max-scale", "show-progress", "url-list", "crossorigin", "hide-on-click-modal", "teleported", "close-on-press-escape"])) : createCommentVNode("v-if", true)
|
224
|
+
], 64)) : createCommentVNode("v-if", true)
|
225
|
+
], 16);
|
226
|
+
};
|
59
227
|
}
|
60
228
|
});
|
61
|
-
|
62
|
-
load: (evt) => evt instanceof Event,
|
63
|
-
error: (evt) => evt instanceof Event,
|
64
|
-
switch: (val) => isNumber(val),
|
65
|
-
close: () => true,
|
66
|
-
show: () => true
|
67
|
-
};
|
229
|
+
var Image = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "image.vue"]]);
|
68
230
|
|
69
|
-
export {
|
231
|
+
export { Image as default };
|
70
232
|
//# sourceMappingURL=image.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"image.mjs","sources":["../../../../../../packages/components/image/src/image.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isNumber,\n mutable,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes, __ExtractPublicPropTypes } from 'vue'\nimport type Image from './image.vue'\n\nexport const imageProps = buildProps({\n /**\n * @description when enabling preview, use this flag to control whether clicking on backdrop can exit preview mode.\n */\n hideOnClickModal: Boolean,\n /**\n * @description image source, same as native.\n */\n src: {\n type: String,\n default: '',\n },\n /**\n * @description indicate how the image should be resized to fit its container, same as [object-fit](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit).\n */\n fit: {\n type: String,\n values: ['', 'contain', 'cover', 'fill', 'none', 'scale-down'],\n default: '',\n },\n /**\n * @description Indicates how the browser should load the image, same as [native](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#attr-loading)\n */\n loading: {\n type: String,\n values: ['eager', 'lazy'],\n },\n /**\n * @description whether to use lazy load.\n */\n lazy: Boolean,\n /**\n * @description the container to add scroll listener when using lazy load.\n */\n scrollContainer: {\n type: definePropType<string | HTMLElement | undefined>([String, Object]),\n },\n /**\n * @description allow big image preview.\n */\n previewSrcList: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n /**\n * @description whether to append image-viewer to body. A nested parent element attribute transform should have this attribute set to `true`.\n */\n previewTeleported: Boolean,\n /**\n * @description set image preview z-index.\n */\n zIndex: {\n type: Number,\n },\n /**\n * @description initial preview image index, less than the length of `url-list`.\n */\n initialIndex: {\n type: Number,\n default: 0,\n },\n /**\n * @description whether the viewer preview is infinite.\n */\n infinite: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the image-viewer can be closed by pressing ESC.\n */\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n /**\n * @description the zoom rate of the image viewer zoom event\n */\n zoomRate: {\n type: Number,\n default: 1.2,\n },\n /**\n * @description the min scale of the image viewer zoom event.\n */\n minScale: {\n type: Number,\n default: 0.2,\n },\n /**\n * @description the max scale of the image viewer zoom event.\n */\n maxScale: {\n type: Number,\n default: 7,\n },\n /**\n * @description show preview image progress content.\n */\n showProgress: Boolean,\n /**\n * @description set HTML attribute: crossorigin.\n */\n crossorigin: {\n type: definePropType<'anonymous' | 'use-credentials' | ''>(String),\n },\n} as const)\nexport type ImageProps = ExtractPropTypes<typeof imageProps>\nexport type ImagePropsPublic = __ExtractPublicPropTypes<typeof imageProps>\n\nexport const imageEmits = {\n load: (evt: Event) => evt instanceof Event,\n error: (evt: Event) => evt instanceof Event,\n switch: (val: number) => isNumber(val),\n close: () => true,\n show: () => true,\n}\nexport type ImageEmits = typeof imageEmits\nexport type ImageInstance = InstanceType<typeof Image> & unknown\n"],"names":[],"mappings":";;;;AAMY,MAAC,UAAU,GAAG,UAAU,CAAC;AACrC,EAAE,gBAAgB,EAAE,OAAO;AAC3B,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC;AAClE,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;AAC7B,GAAG;AACH,EAAE,IAAI,EAAE,OAAO;AACf,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,iBAAiB,EAAE,OAAO;AAC5B,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,YAAY,EAAE,OAAO;AACvB,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACrC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACtC,EAAE,MAAM,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC;AAChC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,IAAI,EAAE,MAAM,IAAI;AAClB;;;;"}
|
1
|
+
{"version":3,"file":"image.mjs","sources":["../../../../../../packages/components/image/src/image.vue"],"sourcesContent":["<template>\n <div ref=\"container\" v-bind=\"containerAttrs\" :class=\"[ns.b(), $attrs.class]\">\n <slot v-if=\"hasLoadError\" name=\"error\">\n <div :class=\"ns.e('error')\">{{ t('el.image.error') }}</div>\n </slot>\n <template v-else>\n <img\n v-if=\"imageSrc !== undefined\"\n v-bind=\"imgAttrs\"\n :src=\"imageSrc\"\n :loading=\"loading\"\n :style=\"imageStyle\"\n :class=\"imageKls\"\n :crossorigin=\"crossorigin\"\n @click=\"clickHandler\"\n @load=\"handleLoad\"\n @error=\"handleError\"\n />\n <div v-if=\"isLoading\" :class=\"ns.e('wrapper')\">\n <slot name=\"placeholder\">\n <div :class=\"ns.e('placeholder')\" />\n </slot>\n </div>\n </template>\n <template v-if=\"preview\">\n <image-viewer\n v-if=\"showViewer\"\n :z-index=\"zIndex\"\n :initial-index=\"imageIndex\"\n :infinite=\"infinite\"\n :zoom-rate=\"zoomRate\"\n :min-scale=\"minScale\"\n :max-scale=\"maxScale\"\n :show-progress=\"showProgress\"\n :url-list=\"previewSrcList\"\n :crossorigin=\"crossorigin\"\n :hide-on-click-modal=\"hideOnClickModal\"\n :teleported=\"previewTeleported\"\n :close-on-press-escape=\"closeOnPressEscape\"\n @close=\"closeViewer\"\n @switch=\"switchViewer\"\n >\n <div v-if=\"$slots.viewer\">\n <slot name=\"viewer\" />\n </div>\n <template v-if=\"$slots.progress\" #progress=\"progress\">\n <slot name=\"progress\" v-bind=\"progress\" />\n </template>\n <template #toolbar=\"toolbar\">\n <slot name=\"toolbar\" v-bind=\"toolbar\" />\n </template>\n </image-viewer>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n ref,\n useAttrs as useRawAttrs,\n watch,\n} from 'vue'\nimport { useIntersectionObserver, useThrottleFn } from '@vueuse/core'\nimport { fromPairs } from 'lodash-unified'\nimport { useAttrs, useLocale, useNamespace } from '@element-plus/hooks'\nimport ImageViewer from '@element-plus/components/image-viewer'\nimport {\n getScrollContainer,\n isArray,\n isClient,\n isElement,\n isString,\n isWindow,\n} from '@element-plus/utils'\nimport { imageEmits, imageProps } from './image'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElImage',\n inheritAttrs: false,\n})\n\nconst props = defineProps(imageProps)\nconst emit = defineEmits(imageEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('image')\nconst rawAttrs = useRawAttrs()\n\nconst containerAttrs = computed(() => {\n return fromPairs(\n Object.entries(rawAttrs).filter(\n ([key]) => /^(data-|on[A-Z])/i.test(key) || ['id', 'style'].includes(key)\n )\n )\n})\n\nconst imgAttrs = useAttrs({\n excludeListeners: true,\n excludeKeys: computed<string[]>(() => {\n return Object.keys(containerAttrs.value)\n }),\n})\n\nconst imageSrc = ref<string | undefined>()\nconst hasLoadError = ref(false)\nconst isLoading = ref(true)\nconst showViewer = ref(false)\nconst container = ref<HTMLElement>()\nconst _scrollContainer = ref<HTMLElement | undefined>()\n\nconst supportLoading = isClient && 'loading' in HTMLImageElement.prototype\nlet stopScrollListener: (() => void) | undefined\n\nconst imageKls = computed(() => [\n ns.e('inner'),\n preview.value && ns.e('preview'),\n isLoading.value && ns.is('loading'),\n])\n\nconst imageStyle = computed<CSSProperties>(() => {\n const { fit } = props\n if (isClient && fit) {\n return { objectFit: fit }\n }\n return {}\n})\n\nconst preview = computed(() => {\n const { previewSrcList } = props\n return isArray(previewSrcList) && previewSrcList.length > 0\n})\n\nconst imageIndex = computed(() => {\n const { previewSrcList, initialIndex } = props\n let previewIndex = initialIndex\n if (initialIndex > previewSrcList.length - 1) {\n previewIndex = 0\n }\n return previewIndex\n})\n\nconst isManual = computed(() => {\n if (props.loading === 'eager') return false\n return (!supportLoading && props.loading === 'lazy') || props.lazy\n})\n\nconst loadImage = () => {\n if (!isClient) return\n\n // reset status\n isLoading.value = true\n hasLoadError.value = false\n imageSrc.value = props.src\n}\n\nfunction handleLoad(event: Event) {\n isLoading.value = false\n hasLoadError.value = false\n emit('load', event)\n}\n\nfunction handleError(event: Event) {\n isLoading.value = false\n hasLoadError.value = true\n emit('error', event)\n}\n\nfunction handleLazyLoad(isIntersecting: boolean) {\n if (isIntersecting) {\n loadImage()\n removeLazyLoadListener()\n }\n}\n\nconst lazyLoadHandler = useThrottleFn(handleLazyLoad, 200, true)\n\nasync function addLazyLoadListener() {\n if (!isClient) return\n\n await nextTick()\n\n const { scrollContainer } = props\n if (isElement(scrollContainer)) {\n _scrollContainer.value = scrollContainer\n } else if (isString(scrollContainer) && scrollContainer !== '') {\n _scrollContainer.value =\n document.querySelector<HTMLElement>(scrollContainer) ?? undefined\n } else if (container.value) {\n const scrollContainer = getScrollContainer(container.value)\n _scrollContainer.value = isWindow(scrollContainer)\n ? undefined\n : scrollContainer\n }\n\n const { stop } = useIntersectionObserver(\n container,\n ([entry]) => {\n lazyLoadHandler(entry.isIntersecting)\n },\n { root: _scrollContainer }\n )\n stopScrollListener = stop\n}\n\nfunction removeLazyLoadListener() {\n if (!isClient || !lazyLoadHandler) return\n\n stopScrollListener?.()\n _scrollContainer.value = undefined\n stopScrollListener = undefined\n}\n\nfunction clickHandler() {\n // don't show viewer when preview is false\n if (!preview.value) return\n showViewer.value = true\n emit('show')\n}\n\nfunction closeViewer() {\n showViewer.value = false\n emit('close')\n}\n\nfunction switchViewer(val: number) {\n emit('switch', val)\n}\n\nwatch(\n () => props.src,\n () => {\n if (isManual.value) {\n // reset status\n isLoading.value = true\n hasLoadError.value = false\n removeLazyLoadListener()\n addLazyLoadListener()\n } else {\n loadImage()\n }\n }\n)\n\nonMounted(() => {\n if (isManual.value) {\n addLazyLoadListener()\n } else {\n loadImage()\n }\n})\n\ndefineExpose({\n /** @description manually open preview */\n showPreview: clickHandler,\n})\n</script>\n"],"names":["useRawAttrs","useAttrs","scrollContainer","_openBlock","_createElementBlock","_mergeProps","_unref"],"mappings":"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"}
|
@@ -1,232 +1,70 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import {
|
4
|
-
import { ElImageViewer } from '../../image-viewer/index.mjs';
|
5
|
-
import { imageProps, imageEmits } from './image.mjs';
|
6
|
-
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
7
|
-
import { isElement, isWindow } from '../../../utils/types.mjs';
|
8
|
-
import { useLocale } from '../../../hooks/use-locale/index.mjs';
|
9
|
-
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
10
|
-
import { useAttrs as useAttrs$1 } from '../../../hooks/use-attrs/index.mjs';
|
11
|
-
import { isArray, isString } from '@vue/shared';
|
12
|
-
import { getScrollContainer } from '../../../utils/dom/scroll.mjs';
|
1
|
+
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
|
2
|
+
import { mutable } from '../../../utils/typescript.mjs';
|
3
|
+
import { isNumber } from '../../../utils/types.mjs';
|
13
4
|
|
14
|
-
const
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
const isManual = computed(() => {
|
69
|
-
if (props.loading === "eager")
|
70
|
-
return false;
|
71
|
-
return !supportLoading && props.loading === "lazy" || props.lazy;
|
72
|
-
});
|
73
|
-
const loadImage = () => {
|
74
|
-
if (!isClient)
|
75
|
-
return;
|
76
|
-
isLoading.value = true;
|
77
|
-
hasLoadError.value = false;
|
78
|
-
imageSrc.value = props.src;
|
79
|
-
};
|
80
|
-
function handleLoad(event) {
|
81
|
-
isLoading.value = false;
|
82
|
-
hasLoadError.value = false;
|
83
|
-
emit("load", event);
|
84
|
-
}
|
85
|
-
function handleError(event) {
|
86
|
-
isLoading.value = false;
|
87
|
-
hasLoadError.value = true;
|
88
|
-
emit("error", event);
|
89
|
-
}
|
90
|
-
function handleLazyLoad(isIntersecting) {
|
91
|
-
if (isIntersecting) {
|
92
|
-
loadImage();
|
93
|
-
removeLazyLoadListener();
|
94
|
-
}
|
95
|
-
}
|
96
|
-
const lazyLoadHandler = useThrottleFn(handleLazyLoad, 200, true);
|
97
|
-
async function addLazyLoadListener() {
|
98
|
-
var _a;
|
99
|
-
if (!isClient)
|
100
|
-
return;
|
101
|
-
await nextTick();
|
102
|
-
const { scrollContainer } = props;
|
103
|
-
if (isElement(scrollContainer)) {
|
104
|
-
_scrollContainer.value = scrollContainer;
|
105
|
-
} else if (isString(scrollContainer) && scrollContainer !== "") {
|
106
|
-
_scrollContainer.value = (_a = document.querySelector(scrollContainer)) != null ? _a : void 0;
|
107
|
-
} else if (container.value) {
|
108
|
-
const scrollContainer2 = getScrollContainer(container.value);
|
109
|
-
_scrollContainer.value = isWindow(scrollContainer2) ? void 0 : scrollContainer2;
|
110
|
-
}
|
111
|
-
const { stop } = useIntersectionObserver(container, ([entry]) => {
|
112
|
-
lazyLoadHandler(entry.isIntersecting);
|
113
|
-
}, { root: _scrollContainer });
|
114
|
-
stopScrollListener = stop;
|
115
|
-
}
|
116
|
-
function removeLazyLoadListener() {
|
117
|
-
if (!isClient || !lazyLoadHandler)
|
118
|
-
return;
|
119
|
-
stopScrollListener == null ? void 0 : stopScrollListener();
|
120
|
-
_scrollContainer.value = void 0;
|
121
|
-
stopScrollListener = void 0;
|
122
|
-
}
|
123
|
-
function clickHandler() {
|
124
|
-
if (!preview.value)
|
125
|
-
return;
|
126
|
-
showViewer.value = true;
|
127
|
-
emit("show");
|
128
|
-
}
|
129
|
-
function closeViewer() {
|
130
|
-
showViewer.value = false;
|
131
|
-
emit("close");
|
132
|
-
}
|
133
|
-
function switchViewer(val) {
|
134
|
-
emit("switch", val);
|
135
|
-
}
|
136
|
-
watch(() => props.src, () => {
|
137
|
-
if (isManual.value) {
|
138
|
-
isLoading.value = true;
|
139
|
-
hasLoadError.value = false;
|
140
|
-
removeLazyLoadListener();
|
141
|
-
addLazyLoadListener();
|
142
|
-
} else {
|
143
|
-
loadImage();
|
144
|
-
}
|
145
|
-
});
|
146
|
-
onMounted(() => {
|
147
|
-
if (isManual.value) {
|
148
|
-
addLazyLoadListener();
|
149
|
-
} else {
|
150
|
-
loadImage();
|
151
|
-
}
|
152
|
-
});
|
153
|
-
expose({
|
154
|
-
showPreview: clickHandler
|
155
|
-
});
|
156
|
-
return (_ctx, _cache) => {
|
157
|
-
return openBlock(), createElementBlock("div", mergeProps({
|
158
|
-
ref_key: "container",
|
159
|
-
ref: container
|
160
|
-
}, unref(containerAttrs), {
|
161
|
-
class: [unref(ns).b(), _ctx.$attrs.class]
|
162
|
-
}), [
|
163
|
-
hasLoadError.value ? renderSlot(_ctx.$slots, "error", { key: 0 }, () => [
|
164
|
-
createElementVNode("div", {
|
165
|
-
class: normalizeClass(unref(ns).e("error"))
|
166
|
-
}, toDisplayString(unref(t)("el.image.error")), 3)
|
167
|
-
]) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
168
|
-
imageSrc.value !== void 0 ? (openBlock(), createElementBlock("img", mergeProps({ key: 0 }, unref(imgAttrs), {
|
169
|
-
src: imageSrc.value,
|
170
|
-
loading: _ctx.loading,
|
171
|
-
style: unref(imageStyle),
|
172
|
-
class: unref(imageKls),
|
173
|
-
crossorigin: _ctx.crossorigin,
|
174
|
-
onClick: clickHandler,
|
175
|
-
onLoad: handleLoad,
|
176
|
-
onError: handleError
|
177
|
-
}), null, 16, ["src", "loading", "crossorigin"])) : createCommentVNode("v-if", true),
|
178
|
-
isLoading.value ? (openBlock(), createElementBlock("div", {
|
179
|
-
key: 1,
|
180
|
-
class: normalizeClass(unref(ns).e("wrapper"))
|
181
|
-
}, [
|
182
|
-
renderSlot(_ctx.$slots, "placeholder", {}, () => [
|
183
|
-
createElementVNode("div", {
|
184
|
-
class: normalizeClass(unref(ns).e("placeholder"))
|
185
|
-
}, null, 2)
|
186
|
-
])
|
187
|
-
], 2)) : createCommentVNode("v-if", true)
|
188
|
-
], 64)),
|
189
|
-
unref(preview) ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [
|
190
|
-
showViewer.value ? (openBlock(), createBlock(unref(ElImageViewer), {
|
191
|
-
key: 0,
|
192
|
-
"z-index": _ctx.zIndex,
|
193
|
-
"initial-index": unref(imageIndex),
|
194
|
-
infinite: _ctx.infinite,
|
195
|
-
"zoom-rate": _ctx.zoomRate,
|
196
|
-
"min-scale": _ctx.minScale,
|
197
|
-
"max-scale": _ctx.maxScale,
|
198
|
-
"show-progress": _ctx.showProgress,
|
199
|
-
"url-list": _ctx.previewSrcList,
|
200
|
-
crossorigin: _ctx.crossorigin,
|
201
|
-
"hide-on-click-modal": _ctx.hideOnClickModal,
|
202
|
-
teleported: _ctx.previewTeleported,
|
203
|
-
"close-on-press-escape": _ctx.closeOnPressEscape,
|
204
|
-
onClose: closeViewer,
|
205
|
-
onSwitch: switchViewer
|
206
|
-
}, createSlots({
|
207
|
-
toolbar: withCtx((toolbar) => [
|
208
|
-
renderSlot(_ctx.$slots, "toolbar", normalizeProps(guardReactiveProps(toolbar)))
|
209
|
-
]),
|
210
|
-
default: withCtx(() => [
|
211
|
-
_ctx.$slots.viewer ? (openBlock(), createElementBlock("div", { key: 0 }, [
|
212
|
-
renderSlot(_ctx.$slots, "viewer")
|
213
|
-
])) : createCommentVNode("v-if", true)
|
214
|
-
]),
|
215
|
-
_: 2
|
216
|
-
}, [
|
217
|
-
_ctx.$slots.progress ? {
|
218
|
-
name: "progress",
|
219
|
-
fn: withCtx((progress) => [
|
220
|
-
renderSlot(_ctx.$slots, "progress", normalizeProps(guardReactiveProps(progress)))
|
221
|
-
])
|
222
|
-
} : void 0
|
223
|
-
]), 1032, ["z-index", "initial-index", "infinite", "zoom-rate", "min-scale", "max-scale", "show-progress", "url-list", "crossorigin", "hide-on-click-modal", "teleported", "close-on-press-escape"])) : createCommentVNode("v-if", true)
|
224
|
-
], 64)) : createCommentVNode("v-if", true)
|
225
|
-
], 16);
|
226
|
-
};
|
5
|
+
const imageProps = buildProps({
|
6
|
+
hideOnClickModal: Boolean,
|
7
|
+
src: {
|
8
|
+
type: String,
|
9
|
+
default: ""
|
10
|
+
},
|
11
|
+
fit: {
|
12
|
+
type: String,
|
13
|
+
values: ["", "contain", "cover", "fill", "none", "scale-down"],
|
14
|
+
default: ""
|
15
|
+
},
|
16
|
+
loading: {
|
17
|
+
type: String,
|
18
|
+
values: ["eager", "lazy"]
|
19
|
+
},
|
20
|
+
lazy: Boolean,
|
21
|
+
scrollContainer: {
|
22
|
+
type: definePropType([String, Object])
|
23
|
+
},
|
24
|
+
previewSrcList: {
|
25
|
+
type: definePropType(Array),
|
26
|
+
default: () => mutable([])
|
27
|
+
},
|
28
|
+
previewTeleported: Boolean,
|
29
|
+
zIndex: {
|
30
|
+
type: Number
|
31
|
+
},
|
32
|
+
initialIndex: {
|
33
|
+
type: Number,
|
34
|
+
default: 0
|
35
|
+
},
|
36
|
+
infinite: {
|
37
|
+
type: Boolean,
|
38
|
+
default: true
|
39
|
+
},
|
40
|
+
closeOnPressEscape: {
|
41
|
+
type: Boolean,
|
42
|
+
default: true
|
43
|
+
},
|
44
|
+
zoomRate: {
|
45
|
+
type: Number,
|
46
|
+
default: 1.2
|
47
|
+
},
|
48
|
+
minScale: {
|
49
|
+
type: Number,
|
50
|
+
default: 0.2
|
51
|
+
},
|
52
|
+
maxScale: {
|
53
|
+
type: Number,
|
54
|
+
default: 7
|
55
|
+
},
|
56
|
+
showProgress: Boolean,
|
57
|
+
crossorigin: {
|
58
|
+
type: definePropType(String)
|
227
59
|
}
|
228
60
|
});
|
229
|
-
|
61
|
+
const imageEmits = {
|
62
|
+
load: (evt) => evt instanceof Event,
|
63
|
+
error: (evt) => evt instanceof Event,
|
64
|
+
switch: (val) => isNumber(val),
|
65
|
+
close: () => true,
|
66
|
+
show: () => true
|
67
|
+
};
|
230
68
|
|
231
|
-
export {
|
69
|
+
export { imageEmits, imageProps };
|
232
70
|
//# sourceMappingURL=image2.mjs.map
|