@element-plus/nightly 0.0.20260929 → 0.0.20260930
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.full.js +18 -7
- package/dist/index.full.min.js +3 -3
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +3 -3
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +18 -7
- 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/affix/src/affix.d.ts +1 -1
- package/es/components/affix/src/affix.vue.d.ts +3 -3
- package/es/components/alert/src/alert.d.ts +1 -1
- package/es/components/anchor/src/anchor.vue.d.ts +2 -2
- package/es/components/autocomplete/src/autocomplete.d.ts +4 -4
- package/es/components/avatar/src/avatar-group-props.d.ts +2 -2
- package/es/components/avatar/src/avatar-group.d.ts +4 -4
- package/es/components/avatar/src/avatar.d.ts +2 -2
- package/es/components/backtop/src/backtop.vue.d.ts +1 -1
- package/es/components/badge/src/badge.d.ts +1 -1
- package/es/components/badge/src/badge.vue.d.ts +1 -1
- package/es/components/button/src/button-group.d.ts +2 -2
- package/es/components/button/src/button-group.vue.d.ts +1 -1
- package/es/components/button/src/button.d.ts +3 -3
- package/es/components/button/src/button.vue.d.ts +6 -6
- package/es/components/button/src/use-button.d.ts +3 -3
- package/es/components/carousel/src/carousel.d.ts +1 -1
- package/es/components/carousel/src/carousel.vue.d.ts +1 -1
- package/es/components/cascader/src/cascader.d.ts +5 -5
- package/es/components/cascader/src/cascader.vue.d.ts +6 -6
- package/es/components/cascader-panel/src/index.vue.d.ts +2 -2
- package/es/components/cascader-panel/src/menu.vue.d.ts +1 -1
- package/es/components/check-tag/src/check-tag.d.ts +1 -1
- package/es/components/checkbox/src/checkbox-button.vue.d.ts +2 -2
- package/es/components/checkbox/src/checkbox-group.d.ts +1 -1
- package/es/components/checkbox/src/checkbox-group.vue.d.ts +2 -2
- package/es/components/checkbox/src/checkbox.d.ts +9 -9
- package/es/components/checkbox/src/checkbox.vue.d.ts +2 -2
- package/es/components/checkbox/src/composables/use-checkbox-status.d.ts +2 -2
- package/es/components/checkbox/src/composables/use-checkbox.d.ts +2 -2
- package/es/components/col/src/col.vue.d.ts +1 -1
- package/es/components/color-picker/src/color-picker.d.ts +1 -1
- package/es/components/color-picker-panel/src/color-picker-panel.vue.d.ts +1 -1
- package/es/components/config-provider/src/config-provider-props.d.ts +1 -1
- package/es/components/config-provider/src/config-provider.d.ts +2 -2
- package/es/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
- package/es/components/date-picker/src/date-picker.d.ts +9 -9
- package/es/components/date-picker/src/props.d.ts +3 -3
- package/es/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue.d.ts +1 -1
- package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +1 -1
- package/es/components/date-picker-panel/src/date-picker-panel.d.ts +5 -5
- package/es/components/date-picker-panel/src/panel-utils.d.ts +9 -9
- package/es/components/date-picker-panel/src/props/date-picker-panel.d.ts +1 -1
- package/es/components/descriptions/src/description-item.d.ts +18 -18
- package/es/components/descriptions/src/description.d.ts +1 -1
- package/es/components/descriptions/src/description.vue.d.ts +1 -1
- package/es/components/dialog/src/dialog.vue.d.ts +2 -2
- package/es/components/divider/src/divider.d.ts +1 -1
- package/es/components/drawer/src/drawer.vue.d.ts +3 -3
- package/es/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
- package/es/components/dropdown/src/dropdown.d.ts +4 -4
- package/es/components/dropdown/src/dropdown.vue.d.ts +59 -59
- package/es/components/form/src/form-item.d.ts +1 -1
- package/es/components/form/src/form-item.vue.d.ts +1 -1
- package/es/components/form/src/form.d.ts +2 -2
- package/es/components/form/src/hooks/use-form-common-props.d.ts +2 -2
- package/es/components/image/src/image.vue.d.ts +2 -2
- package/es/components/input/src/input.d.ts +3 -3
- package/es/components/input/src/input.vue.d.ts +1 -1
- package/es/components/input-number/src/input-number.d.ts +3 -3
- package/es/components/input-number/src/input-number.vue.d.ts +1 -1
- package/es/components/input-otp/src/input-otp.vue.d.ts +1 -1
- package/es/components/input-tag/src/composables/use-input-tag.d.ts +1 -1
- package/es/components/input-tag/src/input-tag.d.ts +4 -4
- package/es/components/input-tag/src/input-tag.vue.d.ts +2 -2
- package/es/components/link/src/link.d.ts +1 -1
- package/es/components/link/src/link.vue.d.ts +1 -1
- package/es/components/mention/src/mention.d.ts +4 -4
- package/es/components/menu/src/menu.d.ts +5 -5
- package/es/components/message/src/instance.d.ts +1 -1
- package/es/components/message/src/message.d.ts +2 -2
- package/es/components/message/src/message.vue.d.ts +1 -1
- package/es/components/message-box/src/index.vue.d.ts +28 -28
- package/es/components/notification/src/notification.d.ts +1 -1
- package/es/components/notification/src/notification.vue.d.ts +3 -3
- package/es/components/page-header/src/page-header.vue.d.ts +1 -1
- package/es/components/pagination/src/components/jumper.d.ts +1 -1
- package/es/components/pagination/src/components/jumper.vue.d.ts +2 -2
- package/es/components/pagination/src/components/sizes.d.ts +1 -1
- package/es/components/pagination/src/components/sizes.vue.d.ts +2 -2
- package/es/components/pagination/src/pagination.d.ts +5 -5
- package/es/components/popconfirm/src/popconfirm.d.ts +2 -2
- package/es/components/popconfirm/src/popconfirm.vue.d.ts +1 -1
- package/es/components/popover/src/popover.d.ts +17 -17
- package/es/components/popover/src/popover.vue.d.ts +5 -5
- package/es/components/popper/src/composables/use-content.d.ts +2 -2
- package/es/components/popper/src/content.d.ts +4 -4
- package/es/components/popper/src/content.vue.d.ts +3 -3
- package/es/components/popper/src/popper.d.ts +2 -2
- package/es/components/progress/src/progress.d.ts +1 -1
- package/es/components/progress/src/progress.vue.d.ts +1 -1
- package/es/components/radio/src/radio-button.d.ts +4 -4
- package/es/components/radio/src/radio-button.vue.d.ts +2 -2
- package/es/components/radio/src/radio-group.d.ts +1 -1
- package/es/components/radio/src/radio-group.vue.d.ts +2 -2
- package/es/components/radio/src/radio.d.ts +8 -8
- package/es/components/radio/src/radio.vue.d.ts +3 -3
- package/es/components/radio/src/use-radio.d.ts +1 -1
- package/es/components/rate/src/rate.d.ts +1 -1
- package/es/components/result/src/result.d.ts +1 -1
- package/es/components/row/src/row.d.ts +2 -2
- package/es/components/row/src/row.vue.d.ts +1 -1
- package/es/components/scrollbar/src/scrollbar.vue.d.ts +2 -2
- package/es/components/segmented/index.d.ts +1 -1
- package/es/components/segmented/src/segmented.d.ts +2 -2
- package/es/components/select/src/option.d.ts +2 -2
- package/es/components/select/src/option.vue.d.ts +5 -5
- package/es/components/select/src/select.d.ts +6 -6
- package/es/components/select/src/select.vue.d.ts +60 -60
- package/es/components/select/src/useOption.d.ts +2 -2
- package/es/components/select/src/useSelect.d.ts +6 -6
- package/es/components/select-v2/src/defaults.d.ts +4 -4
- package/es/components/select-v2/src/select.vue.d.ts +40 -40
- package/es/components/select-v2/src/useSelect.d.ts +1 -1
- package/es/components/skeleton/src/skeleton.vue.d.ts +1 -1
- package/es/components/slider/src/slider.d.ts +2 -2
- package/es/components/slider/src/slider.vue.d.ts +6 -6
- package/es/components/space/src/space.d.ts +5 -5
- package/es/components/splitter/src/splitter.vue.d.ts +2 -2
- package/es/components/steps/src/item.d.ts +1 -1
- package/es/components/steps/src/steps.d.ts +2 -2
- package/es/components/switch/src/switch.d.ts +1 -1
- package/es/components/switch/src/switch.vue.d.ts +2 -2
- package/es/components/table/src/filter-panel.vue.d.ts +36 -36
- package/es/components/table/src/table/defaults.d.ts +6 -6
- package/es/components/table/src/table/style-helper.d.ts +2 -2
- package/es/components/table/src/table-column/defaults.d.ts +2 -2
- package/es/components/table/src/table-header/index.d.ts +7 -7
- package/es/components/table/src/table.vue.d.ts +3 -3
- package/es/components/table-v2/src/table-v2.d.ts +1 -1
- package/es/components/tabs/src/tab-nav.d.ts +1 -1
- package/es/components/tabs/src/tabs.d.ts +5 -5
- package/es/components/tag/src/tag.d.ts +3 -3
- package/es/components/tag/src/tag.vue.d.ts +2 -2
- package/es/components/text/src/text.d.ts +2 -2
- package/es/components/text/src/text.vue.d.ts +1 -1
- package/es/components/time-picker/src/common/picker-range-trigger.vue.d.ts +2 -2
- package/es/components/time-picker/src/common/picker.mjs.map +1 -1
- package/es/components/time-picker/src/common/picker.vue.d.ts +9 -9
- package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs +16 -5
- package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
- package/es/components/time-picker/src/common/props.d.ts +3 -3
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +2 -2
- package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +2 -2
- package/es/components/time-picker/src/time-picker.d.ts +9 -9
- package/es/components/time-select/src/time-select.d.ts +1 -1
- package/es/components/time-select/src/time-select.vue.d.ts +2 -2
- package/es/components/timeline/src/timeline-item.d.ts +3 -3
- package/es/components/timeline/src/timeline-item.vue.d.ts +1 -1
- package/es/components/tooltip/src/content.d.ts +1 -1
- package/es/components/tooltip/src/content.vue.d.ts +4 -4
- package/es/components/tooltip/src/tooltip.d.ts +3 -3
- package/es/components/tooltip/src/tooltip.vue.d.ts +6 -6
- package/es/components/tooltip/src/trigger.d.ts +1 -1
- package/es/components/tour/src/content.d.ts +2 -2
- package/es/components/tour/src/mask.vue.d.ts +1 -1
- package/es/components/tour/src/step.d.ts +1 -1
- package/es/components/tour/src/tour.d.ts +1 -1
- package/es/components/tree/src/tree-node.vue.d.ts +7 -7
- package/es/components/tree/src/tree.vue.d.ts +8 -8
- package/es/components/tree-select/src/tree-select-option.d.ts +5 -5
- package/es/components/tree-select/src/tree-select.vue.d.ts +21 -21
- package/es/components/tree-v2/src/composables/useTree.d.ts +12 -12
- package/es/components/tree-v2/src/tree.vue.d.ts +4 -4
- package/es/components/upload/src/upload-content.vue.d.ts +2 -2
- package/es/components/upload/src/upload.vue.d.ts +2 -2
- package/es/components/virtual-list/src/builders/build-grid.d.ts +5 -5
- package/es/components/virtual-list/src/builders/build-list.d.ts +6 -6
- package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +5 -5
- package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +6 -6
- package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +5 -5
- package/es/components/virtual-list/src/components/fixed-size-list.d.ts +6 -6
- package/es/components/virtual-list/src/components/scrollbar.d.ts +1 -1
- package/es/components/watermark/src/watermark.vue.d.ts +1 -1
- package/es/hooks/use-floating/index.d.ts +4 -4
- package/es/hooks/use-popper/index.d.ts +2 -2
- package/es/hooks/use-size/index.d.ts +3 -3
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/affix/src/affix.d.ts +1 -1
- package/lib/components/affix/src/affix.vue.d.ts +3 -3
- package/lib/components/alert/src/alert.d.ts +1 -1
- package/lib/components/anchor/src/anchor.vue.d.ts +2 -2
- package/lib/components/autocomplete/src/autocomplete.d.ts +4 -4
- package/lib/components/avatar/src/avatar-group-props.d.ts +2 -2
- package/lib/components/avatar/src/avatar-group.d.ts +4 -4
- package/lib/components/avatar/src/avatar.d.ts +2 -2
- package/lib/components/backtop/src/backtop.vue.d.ts +1 -1
- package/lib/components/badge/src/badge.d.ts +1 -1
- package/lib/components/badge/src/badge.vue.d.ts +1 -1
- package/lib/components/button/src/button-group.d.ts +2 -2
- package/lib/components/button/src/button-group.vue.d.ts +1 -1
- package/lib/components/button/src/button.d.ts +3 -3
- package/lib/components/button/src/button.vue.d.ts +6 -6
- package/lib/components/button/src/use-button.d.ts +3 -3
- package/lib/components/carousel/src/carousel.d.ts +1 -1
- package/lib/components/carousel/src/carousel.vue.d.ts +1 -1
- package/lib/components/cascader/src/cascader.d.ts +5 -5
- package/lib/components/cascader/src/cascader.vue.d.ts +6 -6
- package/lib/components/cascader-panel/src/index.vue.d.ts +2 -2
- package/lib/components/cascader-panel/src/menu.vue.d.ts +1 -1
- package/lib/components/check-tag/src/check-tag.d.ts +1 -1
- package/lib/components/checkbox/src/checkbox-button.vue.d.ts +2 -2
- package/lib/components/checkbox/src/checkbox-group.d.ts +1 -1
- package/lib/components/checkbox/src/checkbox-group.vue.d.ts +2 -2
- package/lib/components/checkbox/src/checkbox.d.ts +9 -9
- package/lib/components/checkbox/src/checkbox.vue.d.ts +2 -2
- package/lib/components/checkbox/src/composables/use-checkbox-status.d.ts +2 -2
- package/lib/components/checkbox/src/composables/use-checkbox.d.ts +2 -2
- package/lib/components/col/src/col.vue.d.ts +1 -1
- package/lib/components/color-picker/src/color-picker.d.ts +1 -1
- package/lib/components/color-picker-panel/src/color-picker-panel.vue.d.ts +1 -1
- package/lib/components/config-provider/src/config-provider-props.d.ts +1 -1
- package/lib/components/config-provider/src/config-provider.d.ts +2 -2
- package/lib/components/config-provider/src/hooks/use-global-config.d.ts +1 -1
- package/lib/components/date-picker/src/date-picker.d.ts +9 -9
- package/lib/components/date-picker/src/props.d.ts +3 -3
- package/lib/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-quarter-range.vue.d.ts +1 -1
- package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +1 -1
- package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +5 -5
- package/lib/components/date-picker-panel/src/panel-utils.d.ts +9 -9
- package/lib/components/date-picker-panel/src/props/date-picker-panel.d.ts +1 -1
- package/lib/components/descriptions/src/description-item.d.ts +18 -18
- package/lib/components/descriptions/src/description.d.ts +1 -1
- package/lib/components/descriptions/src/description.vue.d.ts +1 -1
- package/lib/components/dialog/src/dialog.vue.d.ts +2 -2
- package/lib/components/divider/src/divider.d.ts +1 -1
- package/lib/components/drawer/src/drawer.vue.d.ts +3 -3
- package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +1 -1
- package/lib/components/dropdown/src/dropdown.d.ts +4 -4
- package/lib/components/dropdown/src/dropdown.vue.d.ts +59 -59
- package/lib/components/form/src/form-item.d.ts +1 -1
- package/lib/components/form/src/form-item.vue.d.ts +1 -1
- package/lib/components/form/src/form.d.ts +2 -2
- package/lib/components/form/src/hooks/use-form-common-props.d.ts +2 -2
- package/lib/components/image/src/image.vue.d.ts +2 -2
- package/lib/components/input/src/input.d.ts +3 -3
- package/lib/components/input/src/input.vue.d.ts +1 -1
- package/lib/components/input-number/src/input-number.d.ts +3 -3
- package/lib/components/input-number/src/input-number.vue.d.ts +1 -1
- package/lib/components/input-otp/src/input-otp.vue.d.ts +1 -1
- package/lib/components/input-tag/src/composables/use-input-tag.d.ts +1 -1
- package/lib/components/input-tag/src/input-tag.d.ts +4 -4
- package/lib/components/input-tag/src/input-tag.vue.d.ts +2 -2
- package/lib/components/link/src/link.d.ts +1 -1
- package/lib/components/link/src/link.vue.d.ts +1 -1
- package/lib/components/mention/src/mention.d.ts +4 -4
- package/lib/components/menu/src/menu.d.ts +5 -5
- package/lib/components/message/src/instance.d.ts +1 -1
- package/lib/components/message/src/message.d.ts +2 -2
- package/lib/components/message/src/message.vue.d.ts +1 -1
- package/lib/components/message-box/src/index.vue.d.ts +28 -28
- package/lib/components/notification/src/notification.d.ts +1 -1
- package/lib/components/notification/src/notification.vue.d.ts +3 -3
- package/lib/components/page-header/src/page-header.vue.d.ts +1 -1
- package/lib/components/pagination/src/components/jumper.d.ts +1 -1
- package/lib/components/pagination/src/components/jumper.vue.d.ts +2 -2
- package/lib/components/pagination/src/components/sizes.d.ts +1 -1
- package/lib/components/pagination/src/components/sizes.vue.d.ts +2 -2
- package/lib/components/pagination/src/pagination.d.ts +5 -5
- package/lib/components/popconfirm/src/popconfirm.d.ts +2 -2
- package/lib/components/popconfirm/src/popconfirm.vue.d.ts +1 -1
- package/lib/components/popover/src/popover.d.ts +17 -17
- package/lib/components/popover/src/popover.vue.d.ts +5 -5
- package/lib/components/popper/src/composables/use-content.d.ts +2 -2
- package/lib/components/popper/src/content.d.ts +4 -4
- package/lib/components/popper/src/content.vue.d.ts +3 -3
- package/lib/components/popper/src/popper.d.ts +2 -2
- package/lib/components/progress/src/progress.d.ts +1 -1
- package/lib/components/progress/src/progress.vue.d.ts +1 -1
- package/lib/components/radio/src/radio-button.d.ts +4 -4
- package/lib/components/radio/src/radio-button.vue.d.ts +2 -2
- package/lib/components/radio/src/radio-group.d.ts +1 -1
- package/lib/components/radio/src/radio-group.vue.d.ts +2 -2
- package/lib/components/radio/src/radio.d.ts +8 -8
- package/lib/components/radio/src/radio.vue.d.ts +3 -3
- package/lib/components/radio/src/use-radio.d.ts +1 -1
- package/lib/components/rate/src/rate.d.ts +1 -1
- package/lib/components/result/src/result.d.ts +1 -1
- package/lib/components/row/src/row.d.ts +2 -2
- package/lib/components/row/src/row.vue.d.ts +1 -1
- package/lib/components/scrollbar/src/scrollbar.vue.d.ts +2 -2
- package/lib/components/segmented/index.d.ts +1 -1
- package/lib/components/segmented/src/segmented.d.ts +2 -2
- package/lib/components/select/src/option.d.ts +2 -2
- package/lib/components/select/src/option.vue.d.ts +5 -5
- package/lib/components/select/src/select.d.ts +6 -6
- package/lib/components/select/src/select.vue.d.ts +60 -60
- package/lib/components/select/src/useOption.d.ts +2 -2
- package/lib/components/select/src/useSelect.d.ts +6 -6
- package/lib/components/select-v2/src/defaults.d.ts +4 -4
- package/lib/components/select-v2/src/select.vue.d.ts +40 -40
- package/lib/components/select-v2/src/useSelect.d.ts +1 -1
- package/lib/components/skeleton/src/skeleton.vue.d.ts +1 -1
- package/lib/components/slider/src/slider.d.ts +2 -2
- package/lib/components/slider/src/slider.vue.d.ts +6 -6
- package/lib/components/space/src/space.d.ts +5 -5
- package/lib/components/splitter/src/splitter.vue.d.ts +2 -2
- package/lib/components/steps/src/item.d.ts +1 -1
- package/lib/components/steps/src/steps.d.ts +2 -2
- package/lib/components/switch/src/switch.d.ts +1 -1
- package/lib/components/switch/src/switch.vue.d.ts +2 -2
- package/lib/components/table/src/filter-panel.vue.d.ts +36 -36
- package/lib/components/table/src/table/defaults.d.ts +6 -6
- package/lib/components/table/src/table/style-helper.d.ts +2 -2
- package/lib/components/table/src/table-column/defaults.d.ts +2 -2
- package/lib/components/table/src/table-header/index.d.ts +7 -7
- package/lib/components/table/src/table.vue.d.ts +3 -3
- package/lib/components/table-v2/src/table-v2.d.ts +1 -1
- package/lib/components/tabs/src/tab-nav.d.ts +1 -1
- package/lib/components/tabs/src/tabs.d.ts +5 -5
- package/lib/components/tag/src/tag.d.ts +3 -3
- package/lib/components/tag/src/tag.vue.d.ts +2 -2
- package/lib/components/text/src/text.d.ts +2 -2
- package/lib/components/text/src/text.vue.d.ts +1 -1
- package/lib/components/time-picker/src/common/picker-range-trigger.vue.d.ts +2 -2
- package/lib/components/time-picker/src/common/picker.js.map +1 -1
- package/lib/components/time-picker/src/common/picker.vue.d.ts +9 -9
- package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js +16 -5
- package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/lib/components/time-picker/src/common/props.d.ts +3 -3
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +2 -2
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +2 -2
- package/lib/components/time-picker/src/time-picker.d.ts +9 -9
- package/lib/components/time-select/src/time-select.d.ts +1 -1
- package/lib/components/time-select/src/time-select.vue.d.ts +2 -2
- package/lib/components/timeline/src/timeline-item.d.ts +3 -3
- package/lib/components/timeline/src/timeline-item.vue.d.ts +1 -1
- package/lib/components/tooltip/src/content.d.ts +1 -1
- package/lib/components/tooltip/src/content.vue.d.ts +4 -4
- package/lib/components/tooltip/src/tooltip.d.ts +3 -3
- package/lib/components/tooltip/src/tooltip.vue.d.ts +6 -6
- package/lib/components/tooltip/src/trigger.d.ts +1 -1
- package/lib/components/tour/src/content.d.ts +2 -2
- package/lib/components/tour/src/mask.vue.d.ts +1 -1
- package/lib/components/tour/src/step.d.ts +1 -1
- package/lib/components/tour/src/tour.d.ts +1 -1
- package/lib/components/tree/src/tree-node.vue.d.ts +7 -7
- package/lib/components/tree/src/tree.vue.d.ts +8 -8
- package/lib/components/tree-select/src/tree-select-option.d.ts +5 -5
- package/lib/components/tree-select/src/tree-select.vue.d.ts +21 -21
- package/lib/components/tree-v2/src/composables/useTree.d.ts +12 -12
- package/lib/components/tree-v2/src/tree.vue.d.ts +4 -4
- package/lib/components/upload/src/upload-content.vue.d.ts +2 -2
- package/lib/components/upload/src/upload.vue.d.ts +2 -2
- package/lib/components/virtual-list/src/builders/build-grid.d.ts +5 -5
- package/lib/components/virtual-list/src/builders/build-list.d.ts +6 -6
- package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +5 -5
- package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +6 -6
- package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +5 -5
- package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +6 -6
- package/lib/components/virtual-list/src/components/scrollbar.d.ts +1 -1
- package/lib/components/watermark/src/watermark.vue.d.ts +1 -1
- package/lib/hooks/use-floating/index.d.ts +4 -4
- package/lib/hooks/use-popper/index.d.ts +2 -2
- package/lib/hooks/use-size/index.d.ts +3 -3
- 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/src/table.scss +0 -0
- package/web-types.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"picker.js","names":[],"sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n :visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n role=\"dialog\"\n teleported\n :transition=\"`${nsDate.namespace.value}-zoom-in-top`\"\n :popper-class=\"[`${nsDate.namespace.value}-picker__popper`, popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"false\"\n :placement=\"placement\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @before-show=\"onBeforeShow\"\n @show=\"onShow\"\n @hide=\"onHide\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string\n \"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n displayValue as string\n \"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string\n \"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsDate.is('focus', pickerVisible),\n $attrs.class,\n ]\"\n :style=\"$attrs.style\"\n :readonly=\"\n !editable ||\n readonly ||\n isDatesPicker ||\n isMonthsPicker ||\n isYearsPicker ||\n isQuartersPicker ||\n type === 'week'\n \"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n :validate-event=\"false\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keydown=\"handleKeydownInput\"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"nsInput.e('icon')\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart.passive=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @mousedown.prevent=\"NOOP\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <picker-range-trigger\n v-else\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string[]\n \"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string[]\n \"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :start-placeholder=\"startPlaceholder\"\n :end-placeholder=\"endPlaceholder\"\n :class=\"rangeInputKls\"\n :style=\"$attrs.style\"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n autocomplete=\"off\"\n role=\"combobox\"\n @click=\"onMouseDownInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @start-input=\"handleStartInput\"\n @start-change=\"handleStartChange\"\n @end-input=\"handleEndInput\"\n @end-change=\"handleEndChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #range-separator>\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"clearIcon\"\n :class=\"clearIconKls\"\n @mousedown.prevent=\"NOOP\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :date-format=\"dateFormat\"\n :time-format=\"timeFormat\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n :show-now=\"showNow\"\n :show-confirm=\"showConfirm\"\n :show-footer=\"showFooter\"\n :show-week-number=\"showWeekNumber\"\n :single-panel=\"singlePanel\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @clear=\"onClear\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n provide,\n ref,\n unref,\n useAttrs,\n watch,\n} from 'vue'\nimport { onClickOutside, unrefElement } from '@vueuse/core'\nimport {\n useEmptyValues,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { NOOP, debugWarn, getEventCode, isArray } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { dayOrDaysToDate, valueEquals } from '../utils'\nimport {\n PICKER_BASE_INJECTION_KEY,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n ROOT_COMMON_PICKER_INJECTION_KEY,\n} from '../constants'\nimport { useCommonPicker } from '../composables/use-common-picker'\nimport { timePickerDefaultProps } from './props'\nimport PickerRangeTrigger from './picker-range-trigger.vue'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance, Ref } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { DayOrDays, TimePickerDefaultProps, UserInput } from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'clear',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\nconst attrs = useAttrs()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { formItem } = useFormItem()\nconst elPopperOptions = inject(\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n {} as Options\n)\nconst emptyValues = useEmptyValues(props, null)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<InputInstance>()\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\nlet hasJustTabExitedInput = false\n\nconst pickerDisabled = useFormDisabled()\n\nconst commonPicker = useCommonPicker(props, emit)\nconst {\n parsedValue,\n pickerActualVisible,\n userInput,\n pickerVisible,\n pickerOptions,\n valueIsEmpty,\n emitInput,\n onPick,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n} = commonPicker\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(inputRef, {\n disabled: pickerDisabled,\n beforeFocus() {\n return props.readonly\n },\n afterFocus() {\n if (!props.automaticDropdown) return\n pickerVisible.value = true\n },\n beforeBlur(event) {\n return (\n !hasJustTabExitedInput && refPopper.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n if (isTimePicker.value && !props.saveOnBlur) {\n if (!valueIsEmpty.value) {\n pickerOptions.value.handleCancel?.()\n }\n } else {\n handleChange()\n }\n pickerVisible.value = false\n hasJustTabExitedInput = false\n props.validateEvent && formItem?.validate('blur').catch(NOOP)\n },\n})\n\nconst hovering = ref(false)\n\nconst rangeInputKls = computed(() => [\n nsDate.b('editor'),\n nsDate.bm('editor', props.type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled.value),\n nsDate.is('active', pickerVisible.value),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize.value) : '',\n attrs.class,\n])\n\nconst clearIconKls = computed(() => [\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n !showClearBtn.value ? nsRange.em('close-icon', 'hidden') : '',\n])\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n nextTick(() => {\n if (val) {\n valueOnOpen.value = props.modelValue\n }\n })\n }\n})\nconst emitChange = (\n val: TimePickerDefaultProps['modelValue'] | null,\n isClear?: boolean\n) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n emit(CHANGE_EVENT, val)\n // Set the value of valueOnOpen when clearing to avoid triggering change events multiple times.\n isClear && (valueOnOpen.value = val)\n props.validateEvent && formItem?.validate('change').catch(NOOP)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n return Array.from<HTMLInputElement>(\n inputRef.value.$el.querySelectorAll('input')\n )\n }\n return []\n})\n\n// @ts-ignore\nconst setSelectionRange = (start: number, end: number, pos?: 'min' | 'max') => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n pickerVisible.value = false\n emit('visible-change', false)\n}\n\nconst handleOpen = () => {\n pickerVisible.value = true\n}\n\nconst handleClose = () => {\n pickerVisible.value = false\n}\n\nconst displayValue = computed<UserInput>(() => {\n const formattedValue = formatToString(parsedValue.value)\n if (isArray(userInput.value)) {\n return [\n userInput.value[0] ?? (formattedValue && formattedValue[0]) ?? '',\n userInput.value[1] ?? (formattedValue && formattedValue[1]) ?? '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (isTimePicker.value && valueIsEmpty.value && !props.saveOnBlur) return ''\n if (!isTimePicker.value && valueIsEmpty.value) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.value ||\n isMonthsPicker.value ||\n isYearsPicker.value ||\n isQuartersPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n})\n\nconst isTimeLikePicker = computed(() => props.type.includes('time'))\n\nconst isTimePicker = computed(() => props.type.startsWith('time'))\n\nconst isDatesPicker = computed(() => props.type === 'dates')\n\nconst isMonthsPicker = computed(() => props.type === 'months')\n\nconst isYearsPicker = computed(() => props.type === 'years')\n\nconst isQuartersPicker = computed(() => props.type === 'quarters')\n\nconst triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClearBtn = computed(\n () =>\n props.clearable &&\n !pickerDisabled.value &&\n !props.readonly &&\n !valueIsEmpty.value &&\n (hovering.value || isFocused.value)\n)\n\nconst onClear = (event?: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClearBtn.value) {\n event?.stopPropagation()\n // When the handleClear Function was provided, emit null will be executed inside it\n // There is no need for us to execute emit null twice. #14752\n if (pickerOptions.value.handleClear) {\n pickerOptions.value.handleClear()\n } else {\n emitInput(emptyValues.valueOnClear.value)\n }\n emitChange(emptyValues.valueOnClear.value, true)\n onHide()\n }\n emit('clear')\n}\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n hovering.value = true\n }\n}\nconst onMouseLeave = () => {\n hovering.value = false\n}\n\nconst onTouchStartInput = (event: TouchEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\n\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useFormSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n\nconst stophandle = onClickOutside(\n inputRef as Ref<ComponentPublicInstance>,\n (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unrefElement(inputRef as Ref<ComponentPublicInstance>)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n (inputEl && e.composedPath().includes(inputEl))\n )\n return\n pickerVisible.value = false\n }\n)\n\nonBeforeUnmount(() => {\n stophandle?.()\n})\n\nconst handleChange = () => {\n if (isTimePicker.value && !props.saveOnBlur) return\n\n const isRangeEmpty =\n isArray(userInput.value) && userInput.value.every((v) => v === '')\n\n if (userInput.value && !isRangeEmpty) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(dayOrDaysToDate(value))\n }\n userInput.value = null\n }\n }\n if (userInput.value === '' || isRangeEmpty) {\n emitInput(emptyValues.valueOnClear.value)\n emitChange(emptyValues.valueOnClear.value, true)\n userInput.value = null\n }\n}\n\nconst parseUserInputToDayjs = (value: UserInput) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput!(value)\n}\n\nconst formatToString = (value: DayOrDays) => {\n if (!value) return null\n const res = isArray(value)\n ? value.map((_) => _.format(props.format))\n : value.format(props.format)\n return res as UserInput\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: Event | KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const code = getEventCode(event as KeyboardEvent)\n emitKeydown(event as KeyboardEvent)\n if (code === EVENT_CODE.esc) {\n if (pickerVisible.value === true) {\n pickerVisible.value = false\n event.preventDefault()\n event.stopPropagation()\n }\n return\n }\n\n if (code === EVENT_CODE.down) {\n if (pickerOptions.value.handleFocusPicker) {\n event.preventDefault()\n event.stopPropagation()\n }\n if (pickerVisible.value === false) {\n pickerVisible.value = true\n await nextTick()\n }\n if (pickerOptions.value.handleFocusPicker) {\n pickerOptions.value.handleFocusPicker()\n return\n }\n }\n\n if (code === EVENT_CODE.tab) {\n hasJustTabExitedInput = true\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (!pickerVisible.value) {\n pickerVisible.value = true\n } else if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n } else {\n if (\n !isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n debugWarn(\n 'Picker',\n `Invalid user input: ${displayValue.value}. Please check the format of the input.`\n )\n }\n }\n event.preventDefault()\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n if (pickerOptions.value.handleKeydownInput) {\n pickerOptions.value.handleKeydownInput(event as KeyboardEvent)\n }\n}\nconst onUserInput = (e: string) => {\n userInput.value = e\n // Temporary fix when the picker is dismissed and the input box\n // is focused, just mimic the behavior of antdesign.\n if (!pickerVisible.value) {\n pickerVisible.value = true\n }\n}\n\nconst handleStartInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [target.value, userInput.value[1]]\n } else {\n userInput.value = [target.value, null]\n }\n}\n\nconst handleEndInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [userInput.value[0], target.value]\n } else {\n userInput.value = [null, target.value]\n }\n}\n\nconst handleStartChange = () => {\n const values = userInput.value as string[]\n const value = parseUserInputToDayjs(values && values[0]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n formatToString(value) as string,\n displayValue.value?.[1] || null,\n ]\n const newValue = [value, parsedVal && (parsedVal[1] || null)] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst handleEndChange = () => {\n const values = unref(userInput) as string[]\n const value = parseUserInputToDayjs(values && values[1]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n unref(displayValue)?.[0] || null,\n formatToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst focus = () => {\n inputRef.value?.focus()\n}\n\nconst blur = () => {\n inputRef.value?.blur()\n}\n\nprovide(PICKER_BASE_INJECTION_KEY, {\n props,\n emptyValues,\n})\nprovide(ROOT_COMMON_PICKER_INJECTION_KEY, commonPicker)\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description blur input box.\n */\n blur,\n /**\n * @description opens picker\n */\n handleOpen,\n /**\n * @description closes picker\n */\n handleClose,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"picker.js","names":[],"sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n :visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n role=\"dialog\"\n teleported\n :transition=\"`${nsDate.namespace.value}-zoom-in-top`\"\n :popper-class=\"[`${nsDate.namespace.value}-picker__popper`, popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"false\"\n :placement=\"placement\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @before-show=\"onBeforeShow\"\n @show=\"onShow\"\n @hide=\"onHide\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string\n \"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n displayValue as string\n \"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string\n \"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsDate.is('focus', pickerVisible),\n $attrs.class,\n ]\"\n :style=\"$attrs.style\"\n :readonly=\"\n !editable ||\n readonly ||\n isDatesPicker ||\n isMonthsPicker ||\n isYearsPicker ||\n isQuartersPicker ||\n type === 'week'\n \"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n :validate-event=\"false\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keydown=\"handleKeydownInput\"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"nsInput.e('icon')\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart.passive=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @mousedown.prevent=\"onClearIconMousedown\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <picker-range-trigger\n v-else\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string[]\n \"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string[]\n \"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :start-placeholder=\"startPlaceholder\"\n :end-placeholder=\"endPlaceholder\"\n :class=\"rangeInputKls\"\n :style=\"$attrs.style\"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n autocomplete=\"off\"\n role=\"combobox\"\n @click=\"onMouseDownInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @start-input=\"handleStartInput\"\n @start-change=\"handleStartChange\"\n @end-input=\"handleEndInput\"\n @end-change=\"handleEndChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #range-separator>\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"clearIcon\"\n :class=\"clearIconKls\"\n @mousedown.prevent=\"onClearIconMousedown\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :date-format=\"dateFormat\"\n :time-format=\"timeFormat\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n :show-now=\"showNow\"\n :show-confirm=\"showConfirm\"\n :show-footer=\"showFooter\"\n :show-week-number=\"showWeekNumber\"\n :single-panel=\"singlePanel\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @clear=\"onClear\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n provide,\n ref,\n unref,\n useAttrs,\n watch,\n} from 'vue'\nimport { onClickOutside, unrefElement } from '@vueuse/core'\nimport {\n useEmptyValues,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { NOOP, debugWarn, getEventCode, isArray } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { dayOrDaysToDate, valueEquals } from '../utils'\nimport {\n PICKER_BASE_INJECTION_KEY,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n ROOT_COMMON_PICKER_INJECTION_KEY,\n} from '../constants'\nimport { useCommonPicker } from '../composables/use-common-picker'\nimport { timePickerDefaultProps } from './props'\nimport PickerRangeTrigger from './picker-range-trigger.vue'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance, Ref } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { DayOrDays, TimePickerDefaultProps, UserInput } from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'clear',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\nconst attrs = useAttrs()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { formItem } = useFormItem()\nconst elPopperOptions = inject(\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n {} as Options\n)\nconst emptyValues = useEmptyValues(props, null)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<InputInstance>()\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\nlet hasJustTabExitedInput = false\nlet isClearIconMousedown = false\n\nconst pickerDisabled = useFormDisabled()\n\nconst commonPicker = useCommonPicker(props, emit)\nconst {\n parsedValue,\n pickerActualVisible,\n userInput,\n pickerVisible,\n pickerOptions,\n valueIsEmpty,\n emitInput,\n onPick,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n} = commonPicker\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(inputRef, {\n disabled: pickerDisabled,\n beforeFocus() {\n return props.readonly\n },\n afterFocus() {\n if (!props.automaticDropdown) return\n // Clicking the clear icon focuses the input, which must not open the panel (#24826)\n if (isClearIconMousedown) {\n isClearIconMousedown = false\n return\n }\n pickerVisible.value = true\n },\n beforeBlur(event) {\n return (\n !hasJustTabExitedInput && refPopper.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n if (isTimePicker.value && !props.saveOnBlur) {\n if (!valueIsEmpty.value) {\n pickerOptions.value.handleCancel?.()\n }\n } else {\n handleChange()\n }\n pickerVisible.value = false\n hasJustTabExitedInput = false\n isClearIconMousedown = false\n props.validateEvent && formItem?.validate('blur').catch(NOOP)\n },\n})\n\nconst hovering = ref(false)\n\nconst rangeInputKls = computed(() => [\n nsDate.b('editor'),\n nsDate.bm('editor', props.type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled.value),\n nsDate.is('active', pickerVisible.value),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize.value) : '',\n attrs.class,\n])\n\nconst clearIconKls = computed(() => [\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n !showClearBtn.value ? nsRange.em('close-icon', 'hidden') : '',\n])\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n nextTick(() => {\n if (val) {\n valueOnOpen.value = props.modelValue\n }\n })\n }\n})\nconst emitChange = (\n val: TimePickerDefaultProps['modelValue'] | null,\n isClear?: boolean\n) => {\n // determine user real change only\n if (\n isClear ||\n !(\n valueEquals(val, valueOnOpen.value) ||\n // the parent may normalize the cleared value to another empty\n // representation, e.g. `null` to '' (#24826)\n (emptyValues.isEmptyValue(val) &&\n emptyValues.isEmptyValue(valueOnOpen.value))\n )\n ) {\n emit(CHANGE_EVENT, val)\n // Set the value of valueOnOpen when clearing to avoid triggering change events multiple times.\n isClear && (valueOnOpen.value = val)\n props.validateEvent && formItem?.validate('change').catch(NOOP)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n return Array.from<HTMLInputElement>(\n inputRef.value.$el.querySelectorAll('input')\n )\n }\n return []\n})\n\n// @ts-ignore\nconst setSelectionRange = (start: number, end: number, pos?: 'min' | 'max') => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n pickerVisible.value = false\n emit('visible-change', false)\n}\n\nconst handleOpen = () => {\n pickerVisible.value = true\n}\n\nconst handleClose = () => {\n pickerVisible.value = false\n}\n\nconst displayValue = computed<UserInput>(() => {\n const formattedValue = formatToString(parsedValue.value)\n if (isArray(userInput.value)) {\n return [\n userInput.value[0] ?? (formattedValue && formattedValue[0]) ?? '',\n userInput.value[1] ?? (formattedValue && formattedValue[1]) ?? '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (isTimePicker.value && valueIsEmpty.value && !props.saveOnBlur) return ''\n if (!isTimePicker.value && valueIsEmpty.value) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.value ||\n isMonthsPicker.value ||\n isYearsPicker.value ||\n isQuartersPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n})\n\nconst isTimeLikePicker = computed(() => props.type.includes('time'))\n\nconst isTimePicker = computed(() => props.type.startsWith('time'))\n\nconst isDatesPicker = computed(() => props.type === 'dates')\n\nconst isMonthsPicker = computed(() => props.type === 'months')\n\nconst isYearsPicker = computed(() => props.type === 'years')\n\nconst isQuartersPicker = computed(() => props.type === 'quarters')\n\nconst triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClearBtn = computed(\n () =>\n props.clearable &&\n !pickerDisabled.value &&\n !props.readonly &&\n !valueIsEmpty.value &&\n (hovering.value || isFocused.value)\n)\n\nconst onClearIconMousedown = () => {\n isClearIconMousedown = true\n}\n\nconst onClear = (event?: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n isClearIconMousedown = false\n if (showClearBtn.value) {\n event?.stopPropagation()\n // When the handleClear Function was provided, emit null will be executed inside it\n // There is no need for us to execute emit null twice. #14752\n if (pickerOptions.value.handleClear) {\n pickerOptions.value.handleClear()\n } else {\n emitInput(emptyValues.valueOnClear.value)\n }\n emitChange(emptyValues.valueOnClear.value, true)\n onHide()\n }\n emit('clear')\n}\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n hovering.value = true\n }\n}\nconst onMouseLeave = () => {\n hovering.value = false\n isClearIconMousedown = false\n}\n\nconst onTouchStartInput = (event: TouchEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\n\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useFormSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n\nconst stophandle = onClickOutside(\n inputRef as Ref<ComponentPublicInstance>,\n (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unrefElement(inputRef as Ref<ComponentPublicInstance>)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n (inputEl && e.composedPath().includes(inputEl))\n )\n return\n pickerVisible.value = false\n }\n)\n\nonBeforeUnmount(() => {\n stophandle?.()\n})\n\nconst handleChange = () => {\n if (isTimePicker.value && !props.saveOnBlur) return\n\n const isRangeEmpty =\n isArray(userInput.value) && userInput.value.every((v) => v === '')\n\n if (userInput.value && !isRangeEmpty) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(dayOrDaysToDate(value))\n }\n userInput.value = null\n }\n }\n if (userInput.value === '' || isRangeEmpty) {\n emitInput(emptyValues.valueOnClear.value)\n emitChange(emptyValues.valueOnClear.value, true)\n userInput.value = null\n }\n}\n\nconst parseUserInputToDayjs = (value: UserInput) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput!(value)\n}\n\nconst formatToString = (value: DayOrDays) => {\n if (!value) return null\n const res = isArray(value)\n ? value.map((_) => _.format(props.format))\n : value.format(props.format)\n return res as UserInput\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: Event | KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const code = getEventCode(event as KeyboardEvent)\n emitKeydown(event as KeyboardEvent)\n if (code === EVENT_CODE.esc) {\n if (pickerVisible.value === true) {\n pickerVisible.value = false\n event.preventDefault()\n event.stopPropagation()\n }\n return\n }\n\n if (code === EVENT_CODE.down) {\n if (pickerOptions.value.handleFocusPicker) {\n event.preventDefault()\n event.stopPropagation()\n }\n if (pickerVisible.value === false) {\n pickerVisible.value = true\n await nextTick()\n }\n if (pickerOptions.value.handleFocusPicker) {\n pickerOptions.value.handleFocusPicker()\n return\n }\n }\n\n if (code === EVENT_CODE.tab) {\n hasJustTabExitedInput = true\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (!pickerVisible.value) {\n pickerVisible.value = true\n } else if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n } else {\n if (\n !isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n debugWarn(\n 'Picker',\n `Invalid user input: ${displayValue.value}. Please check the format of the input.`\n )\n }\n }\n event.preventDefault()\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n if (pickerOptions.value.handleKeydownInput) {\n pickerOptions.value.handleKeydownInput(event as KeyboardEvent)\n }\n}\nconst onUserInput = (e: string) => {\n userInput.value = e\n // Temporary fix when the picker is dismissed and the input box\n // is focused, just mimic the behavior of antdesign.\n if (!pickerVisible.value) {\n pickerVisible.value = true\n }\n}\n\nconst handleStartInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [target.value, userInput.value[1]]\n } else {\n userInput.value = [target.value, null]\n }\n}\n\nconst handleEndInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [userInput.value[0], target.value]\n } else {\n userInput.value = [null, target.value]\n }\n}\n\nconst handleStartChange = () => {\n const values = userInput.value as string[]\n const value = parseUserInputToDayjs(values && values[0]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n formatToString(value) as string,\n displayValue.value?.[1] || null,\n ]\n const newValue = [value, parsedVal && (parsedVal[1] || null)] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst handleEndChange = () => {\n const values = unref(userInput) as string[]\n const value = parseUserInputToDayjs(values && values[1]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n unref(displayValue)?.[0] || null,\n formatToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst focus = () => {\n inputRef.value?.focus()\n}\n\nconst blur = () => {\n inputRef.value?.blur()\n}\n\nprovide(PICKER_BASE_INJECTION_KEY, {\n props,\n emptyValues,\n})\nprovide(ROOT_COMMON_PICKER_INJECTION_KEY, commonPicker)\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description blur input box.\n */\n blur,\n /**\n * @description opens picker\n */\n handleOpen,\n /**\n * @description closes picker\n */\n handleClose,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"mappings":""}
|
|
@@ -61,7 +61,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
61
61
|
readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
62
62
|
readonly unlinkPanels: BooleanConstructor;
|
|
63
63
|
readonly singlePanel: BooleanConstructor;
|
|
64
|
-
readonly placement: EpPropFinalized<(new (...args: any[]) => "
|
|
64
|
+
readonly placement: EpPropFinalized<(new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
|
|
65
65
|
readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement$1[]) | (() => Placement$1[]) | (((new (...args: any[]) => Placement$1[]) | (() => Placement$1[])) | null)[], unknown, unknown, readonly ["bottom", "top", "right", "left"], boolean>;
|
|
66
66
|
readonly disabledHours: {
|
|
67
67
|
readonly type: _$vue.PropType<GetDisabledHours>;
|
|
@@ -107,7 +107,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
107
107
|
readonly saveOnBlur: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
108
108
|
readonly prefixIcon: EpPropFinalized<(new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component) | (((new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component)) | null)[], unknown, unknown, "", boolean>;
|
|
109
109
|
readonly size: {
|
|
110
|
-
readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "
|
|
110
|
+
readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
|
|
111
111
|
readonly required: false;
|
|
112
112
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
113
113
|
__epPropKey: true;
|
|
@@ -116,7 +116,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
116
116
|
readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
117
117
|
readonly placeholder: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
118
118
|
readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => {}, boolean>;
|
|
119
|
-
readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number |
|
|
119
|
+
readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
|
|
120
120
|
readonly rangeSeparator: EpPropFinalized<StringConstructor, unknown, unknown, "-", boolean>;
|
|
121
121
|
readonly startPlaceholder: StringConstructor;
|
|
122
122
|
readonly endPlaceholder: StringConstructor;
|
|
@@ -190,7 +190,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
190
190
|
readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
191
191
|
readonly unlinkPanels: BooleanConstructor;
|
|
192
192
|
readonly singlePanel: BooleanConstructor;
|
|
193
|
-
readonly placement: EpPropFinalized<(new (...args: any[]) => "
|
|
193
|
+
readonly placement: EpPropFinalized<(new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
|
|
194
194
|
readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement$1[]) | (() => Placement$1[]) | (((new (...args: any[]) => Placement$1[]) | (() => Placement$1[])) | null)[], unknown, unknown, readonly ["bottom", "top", "right", "left"], boolean>;
|
|
195
195
|
readonly disabledHours: {
|
|
196
196
|
readonly type: _$vue.PropType<GetDisabledHours>;
|
|
@@ -236,7 +236,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
236
236
|
readonly saveOnBlur: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
237
237
|
readonly prefixIcon: EpPropFinalized<(new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component) | (((new (...args: any[]) => (string | _$vue.Component) & {}) | (() => string | _$vue.Component)) | null)[], unknown, unknown, "", boolean>;
|
|
238
238
|
readonly size: {
|
|
239
|
-
readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "
|
|
239
|
+
readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
|
|
240
240
|
readonly required: false;
|
|
241
241
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
242
242
|
__epPropKey: true;
|
|
@@ -245,7 +245,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
245
245
|
readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
246
246
|
readonly placeholder: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
247
247
|
readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => {}, boolean>;
|
|
248
|
-
readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number |
|
|
248
|
+
readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
|
|
249
249
|
readonly rangeSeparator: EpPropFinalized<StringConstructor, unknown, unknown, "-", boolean>;
|
|
250
250
|
readonly startPlaceholder: StringConstructor;
|
|
251
251
|
readonly endPlaceholder: StringConstructor;
|
|
@@ -273,10 +273,10 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
273
273
|
"onPanel-change"?: ((...args: any[]) => any) | undefined;
|
|
274
274
|
"onVisible-change"?: ((...args: any[]) => any) | undefined;
|
|
275
275
|
}>, {
|
|
276
|
-
readonly type: string;
|
|
277
276
|
readonly disabled: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
277
|
+
readonly type: string;
|
|
278
278
|
readonly valueOnClear: EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | (((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null)) | null)[], unknown, unknown>;
|
|
279
|
-
readonly modelValue: EpPropMergeType<(new (...args: any[]) => string | number |
|
|
279
|
+
readonly modelValue: EpPropMergeType<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown>;
|
|
280
280
|
readonly placeholder: string;
|
|
281
281
|
readonly readonly: boolean;
|
|
282
282
|
readonly clearable: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -287,7 +287,7 @@ declare const __VLS_base: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
287
287
|
readonly popperClass: ClassValue;
|
|
288
288
|
readonly popperStyle: _$vue.StyleValue;
|
|
289
289
|
readonly fallbackPlacements: Placement$1[];
|
|
290
|
-
readonly placement: EpPropMergeType<(new (...args: any[]) => "
|
|
290
|
+
readonly placement: EpPropMergeType<(new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown>;
|
|
291
291
|
readonly popperOptions: Partial<Options>;
|
|
292
292
|
readonly automaticDropdown: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
293
293
|
readonly editable: EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -49,6 +49,7 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
|
|
|
49
49
|
const inputRef = (0, vue.ref)();
|
|
50
50
|
const valueOnOpen = (0, vue.ref)(null);
|
|
51
51
|
let hasJustTabExitedInput = false;
|
|
52
|
+
let isClearIconMousedown = false;
|
|
52
53
|
const pickerDisabled = require_use_form_common_props.useFormDisabled();
|
|
53
54
|
const commonPicker = require_use_common_picker.useCommonPicker(props, emit);
|
|
54
55
|
const { parsedValue, pickerActualVisible, userInput, pickerVisible, pickerOptions, valueIsEmpty, emitInput, onPick, onSetPickerOption, onCalendarChange, onPanelChange } = commonPicker;
|
|
@@ -59,6 +60,10 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
|
|
|
59
60
|
},
|
|
60
61
|
afterFocus() {
|
|
61
62
|
if (!props.automaticDropdown) return;
|
|
63
|
+
if (isClearIconMousedown) {
|
|
64
|
+
isClearIconMousedown = false;
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
62
67
|
pickerVisible.value = true;
|
|
63
68
|
},
|
|
64
69
|
beforeBlur(event) {
|
|
@@ -70,6 +75,7 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
|
|
|
70
75
|
} else handleChange();
|
|
71
76
|
pickerVisible.value = false;
|
|
72
77
|
hasJustTabExitedInput = false;
|
|
78
|
+
isClearIconMousedown = false;
|
|
73
79
|
props.validateEvent && formItem?.validate("blur").catch(_vue_shared.NOOP);
|
|
74
80
|
}
|
|
75
81
|
});
|
|
@@ -100,7 +106,7 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
|
|
|
100
106
|
});
|
|
101
107
|
});
|
|
102
108
|
const emitChange = (val, isClear) => {
|
|
103
|
-
if (isClear || !require_utils.valueEquals(val, valueOnOpen.value)) {
|
|
109
|
+
if (isClear || !(require_utils.valueEquals(val, valueOnOpen.value) || emptyValues.isEmptyValue(val) && emptyValues.isEmptyValue(valueOnOpen.value))) {
|
|
104
110
|
emit(require_event.CHANGE_EVENT, val);
|
|
105
111
|
isClear && (valueOnOpen.value = val);
|
|
106
112
|
props.validateEvent && formItem?.validate("change").catch(_vue_shared.NOOP);
|
|
@@ -159,8 +165,12 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
|
|
|
159
165
|
const isQuartersPicker = (0, vue.computed)(() => props.type === "quarters");
|
|
160
166
|
const triggerIcon = (0, vue.computed)(() => props.prefixIcon || (isTimeLikePicker.value ? _element_plus_icons_vue.Clock : _element_plus_icons_vue.Calendar));
|
|
161
167
|
const showClearBtn = (0, vue.computed)(() => props.clearable && !pickerDisabled.value && !props.readonly && !valueIsEmpty.value && (hovering.value || isFocused.value));
|
|
168
|
+
const onClearIconMousedown = () => {
|
|
169
|
+
isClearIconMousedown = true;
|
|
170
|
+
};
|
|
162
171
|
const onClear = (event) => {
|
|
163
172
|
if (props.readonly || pickerDisabled.value) return;
|
|
173
|
+
isClearIconMousedown = false;
|
|
164
174
|
if (showClearBtn.value) {
|
|
165
175
|
event?.stopPropagation();
|
|
166
176
|
if (pickerOptions.value.handleClear) pickerOptions.value.handleClear();
|
|
@@ -180,6 +190,7 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
|
|
|
180
190
|
};
|
|
181
191
|
const onMouseLeave = () => {
|
|
182
192
|
hovering.value = false;
|
|
193
|
+
isClearIconMousedown = false;
|
|
183
194
|
};
|
|
184
195
|
const onTouchStartInput = (event) => {
|
|
185
196
|
if (props.readonly || pickerDisabled.value) return;
|
|
@@ -415,12 +426,12 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
|
|
|
415
426
|
suffix: (0, vue.withCtx)(() => [showClearBtn.value && _ctx.clearIcon ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(require_index$3.ElIcon), {
|
|
416
427
|
key: 0,
|
|
417
428
|
class: (0, vue.normalizeClass)(`${(0, vue.unref)(nsInput).e("icon")} clear-icon`),
|
|
418
|
-
onMousedown: (0, vue.withModifiers)(
|
|
429
|
+
onMousedown: (0, vue.withModifiers)(onClearIconMousedown, ["prevent"]),
|
|
419
430
|
onClick: onClear
|
|
420
431
|
}, {
|
|
421
432
|
default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(_ctx.clearIcon)))]),
|
|
422
433
|
_: 1
|
|
423
|
-
}, 8, ["class"
|
|
434
|
+
}, 8, ["class"])) : (0, vue.createCommentVNode)("v-if", true)]),
|
|
424
435
|
_: 1
|
|
425
436
|
}, 8, [
|
|
426
437
|
"id",
|
|
@@ -477,12 +488,12 @@ var picker_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.d
|
|
|
477
488
|
suffix: (0, vue.withCtx)(() => [_ctx.clearIcon ? ((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.unref)(require_index$3.ElIcon), {
|
|
478
489
|
key: 0,
|
|
479
490
|
class: (0, vue.normalizeClass)(clearIconKls.value),
|
|
480
|
-
onMousedown: (0, vue.withModifiers)(
|
|
491
|
+
onMousedown: (0, vue.withModifiers)(onClearIconMousedown, ["prevent"]),
|
|
481
492
|
onClick: onClear
|
|
482
493
|
}, {
|
|
483
494
|
default: (0, vue.withCtx)(() => [((0, vue.openBlock)(), (0, vue.createBlock)((0, vue.resolveDynamicComponent)(_ctx.clearIcon)))]),
|
|
484
495
|
_: 1
|
|
485
|
-
}, 8, ["class"
|
|
496
|
+
}, 8, ["class"])) : (0, vue.createCommentVNode)("v-if", true)]),
|
|
486
497
|
_: 3
|
|
487
498
|
}, 8, [
|
|
488
499
|
"id",
|
package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"picker.vue_vue_type_script_setup_true_lang.js","names":["$attrs","popperClass","popperStyle","fallbackPlacements","placement","id","name","placeholder","type","editable","readonly","ariaLabel","tabindex","clearIcon","startPlaceholder","endPlaceholder","rangeSeparator","format","dateFormat","timeFormat","unlinkPanels","defaultValue","showNow","showConfirm","showFooter","showWeekNumber","singlePanel"],"sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n :visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n role=\"dialog\"\n teleported\n :transition=\"`${nsDate.namespace.value}-zoom-in-top`\"\n :popper-class=\"[`${nsDate.namespace.value}-picker__popper`, popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"false\"\n :placement=\"placement\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @before-show=\"onBeforeShow\"\n @show=\"onShow\"\n @hide=\"onHide\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string\n \"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n displayValue as string\n \"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string\n \"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsDate.is('focus', pickerVisible),\n $attrs.class,\n ]\"\n :style=\"$attrs.style\"\n :readonly=\"\n !editable ||\n readonly ||\n isDatesPicker ||\n isMonthsPicker ||\n isYearsPicker ||\n isQuartersPicker ||\n type === 'week'\n \"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n :validate-event=\"false\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keydown=\"handleKeydownInput\"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"nsInput.e('icon')\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart.passive=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @mousedown.prevent=\"NOOP\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <picker-range-trigger\n v-else\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string[]\n \"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string[]\n \"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :start-placeholder=\"startPlaceholder\"\n :end-placeholder=\"endPlaceholder\"\n :class=\"rangeInputKls\"\n :style=\"$attrs.style\"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n autocomplete=\"off\"\n role=\"combobox\"\n @click=\"onMouseDownInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @start-input=\"handleStartInput\"\n @start-change=\"handleStartChange\"\n @end-input=\"handleEndInput\"\n @end-change=\"handleEndChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #range-separator>\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"clearIcon\"\n :class=\"clearIconKls\"\n @mousedown.prevent=\"NOOP\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :date-format=\"dateFormat\"\n :time-format=\"timeFormat\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n :show-now=\"showNow\"\n :show-confirm=\"showConfirm\"\n :show-footer=\"showFooter\"\n :show-week-number=\"showWeekNumber\"\n :single-panel=\"singlePanel\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @clear=\"onClear\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n provide,\n ref,\n unref,\n useAttrs,\n watch,\n} from 'vue'\nimport { onClickOutside, unrefElement } from '@vueuse/core'\nimport {\n useEmptyValues,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { NOOP, debugWarn, getEventCode, isArray } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { dayOrDaysToDate, valueEquals } from '../utils'\nimport {\n PICKER_BASE_INJECTION_KEY,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n ROOT_COMMON_PICKER_INJECTION_KEY,\n} from '../constants'\nimport { useCommonPicker } from '../composables/use-common-picker'\nimport { timePickerDefaultProps } from './props'\nimport PickerRangeTrigger from './picker-range-trigger.vue'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance, Ref } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { DayOrDays, TimePickerDefaultProps, UserInput } from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'clear',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\nconst attrs = useAttrs()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { formItem } = useFormItem()\nconst elPopperOptions = inject(\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n {} as Options\n)\nconst emptyValues = useEmptyValues(props, null)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<InputInstance>()\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\nlet hasJustTabExitedInput = false\n\nconst pickerDisabled = useFormDisabled()\n\nconst commonPicker = useCommonPicker(props, emit)\nconst {\n parsedValue,\n pickerActualVisible,\n userInput,\n pickerVisible,\n pickerOptions,\n valueIsEmpty,\n emitInput,\n onPick,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n} = commonPicker\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(inputRef, {\n disabled: pickerDisabled,\n beforeFocus() {\n return props.readonly\n },\n afterFocus() {\n if (!props.automaticDropdown) return\n pickerVisible.value = true\n },\n beforeBlur(event) {\n return (\n !hasJustTabExitedInput && refPopper.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n if (isTimePicker.value && !props.saveOnBlur) {\n if (!valueIsEmpty.value) {\n pickerOptions.value.handleCancel?.()\n }\n } else {\n handleChange()\n }\n pickerVisible.value = false\n hasJustTabExitedInput = false\n props.validateEvent && formItem?.validate('blur').catch(NOOP)\n },\n})\n\nconst hovering = ref(false)\n\nconst rangeInputKls = computed(() => [\n nsDate.b('editor'),\n nsDate.bm('editor', props.type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled.value),\n nsDate.is('active', pickerVisible.value),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize.value) : '',\n attrs.class,\n])\n\nconst clearIconKls = computed(() => [\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n !showClearBtn.value ? nsRange.em('close-icon', 'hidden') : '',\n])\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n nextTick(() => {\n if (val) {\n valueOnOpen.value = props.modelValue\n }\n })\n }\n})\nconst emitChange = (\n val: TimePickerDefaultProps['modelValue'] | null,\n isClear?: boolean\n) => {\n // determine user real change only\n if (isClear || !valueEquals(val, valueOnOpen.value)) {\n emit(CHANGE_EVENT, val)\n // Set the value of valueOnOpen when clearing to avoid triggering change events multiple times.\n isClear && (valueOnOpen.value = val)\n props.validateEvent && formItem?.validate('change').catch(NOOP)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n return Array.from<HTMLInputElement>(\n inputRef.value.$el.querySelectorAll('input')\n )\n }\n return []\n})\n\n// @ts-ignore\nconst setSelectionRange = (start: number, end: number, pos?: 'min' | 'max') => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n pickerVisible.value = false\n emit('visible-change', false)\n}\n\nconst handleOpen = () => {\n pickerVisible.value = true\n}\n\nconst handleClose = () => {\n pickerVisible.value = false\n}\n\nconst displayValue = computed<UserInput>(() => {\n const formattedValue = formatToString(parsedValue.value)\n if (isArray(userInput.value)) {\n return [\n userInput.value[0] ?? (formattedValue && formattedValue[0]) ?? '',\n userInput.value[1] ?? (formattedValue && formattedValue[1]) ?? '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (isTimePicker.value && valueIsEmpty.value && !props.saveOnBlur) return ''\n if (!isTimePicker.value && valueIsEmpty.value) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.value ||\n isMonthsPicker.value ||\n isYearsPicker.value ||\n isQuartersPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n})\n\nconst isTimeLikePicker = computed(() => props.type.includes('time'))\n\nconst isTimePicker = computed(() => props.type.startsWith('time'))\n\nconst isDatesPicker = computed(() => props.type === 'dates')\n\nconst isMonthsPicker = computed(() => props.type === 'months')\n\nconst isYearsPicker = computed(() => props.type === 'years')\n\nconst isQuartersPicker = computed(() => props.type === 'quarters')\n\nconst triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClearBtn = computed(\n () =>\n props.clearable &&\n !pickerDisabled.value &&\n !props.readonly &&\n !valueIsEmpty.value &&\n (hovering.value || isFocused.value)\n)\n\nconst onClear = (event?: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (showClearBtn.value) {\n event?.stopPropagation()\n // When the handleClear Function was provided, emit null will be executed inside it\n // There is no need for us to execute emit null twice. #14752\n if (pickerOptions.value.handleClear) {\n pickerOptions.value.handleClear()\n } else {\n emitInput(emptyValues.valueOnClear.value)\n }\n emitChange(emptyValues.valueOnClear.value, true)\n onHide()\n }\n emit('clear')\n}\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n hovering.value = true\n }\n}\nconst onMouseLeave = () => {\n hovering.value = false\n}\n\nconst onTouchStartInput = (event: TouchEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\n\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useFormSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n\nconst stophandle = onClickOutside(\n inputRef as Ref<ComponentPublicInstance>,\n (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unrefElement(inputRef as Ref<ComponentPublicInstance>)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n (inputEl && e.composedPath().includes(inputEl))\n )\n return\n pickerVisible.value = false\n }\n)\n\nonBeforeUnmount(() => {\n stophandle?.()\n})\n\nconst handleChange = () => {\n if (isTimePicker.value && !props.saveOnBlur) return\n\n const isRangeEmpty =\n isArray(userInput.value) && userInput.value.every((v) => v === '')\n\n if (userInput.value && !isRangeEmpty) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(dayOrDaysToDate(value))\n }\n userInput.value = null\n }\n }\n if (userInput.value === '' || isRangeEmpty) {\n emitInput(emptyValues.valueOnClear.value)\n emitChange(emptyValues.valueOnClear.value, true)\n userInput.value = null\n }\n}\n\nconst parseUserInputToDayjs = (value: UserInput) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput!(value)\n}\n\nconst formatToString = (value: DayOrDays) => {\n if (!value) return null\n const res = isArray(value)\n ? value.map((_) => _.format(props.format))\n : value.format(props.format)\n return res as UserInput\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: Event | KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const code = getEventCode(event as KeyboardEvent)\n emitKeydown(event as KeyboardEvent)\n if (code === EVENT_CODE.esc) {\n if (pickerVisible.value === true) {\n pickerVisible.value = false\n event.preventDefault()\n event.stopPropagation()\n }\n return\n }\n\n if (code === EVENT_CODE.down) {\n if (pickerOptions.value.handleFocusPicker) {\n event.preventDefault()\n event.stopPropagation()\n }\n if (pickerVisible.value === false) {\n pickerVisible.value = true\n await nextTick()\n }\n if (pickerOptions.value.handleFocusPicker) {\n pickerOptions.value.handleFocusPicker()\n return\n }\n }\n\n if (code === EVENT_CODE.tab) {\n hasJustTabExitedInput = true\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (!pickerVisible.value) {\n pickerVisible.value = true\n } else if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n } else {\n if (\n !isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n debugWarn(\n 'Picker',\n `Invalid user input: ${displayValue.value}. Please check the format of the input.`\n )\n }\n }\n event.preventDefault()\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n if (pickerOptions.value.handleKeydownInput) {\n pickerOptions.value.handleKeydownInput(event as KeyboardEvent)\n }\n}\nconst onUserInput = (e: string) => {\n userInput.value = e\n // Temporary fix when the picker is dismissed and the input box\n // is focused, just mimic the behavior of antdesign.\n if (!pickerVisible.value) {\n pickerVisible.value = true\n }\n}\n\nconst handleStartInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [target.value, userInput.value[1]]\n } else {\n userInput.value = [target.value, null]\n }\n}\n\nconst handleEndInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [userInput.value[0], target.value]\n } else {\n userInput.value = [null, target.value]\n }\n}\n\nconst handleStartChange = () => {\n const values = userInput.value as string[]\n const value = parseUserInputToDayjs(values && values[0]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n formatToString(value) as string,\n displayValue.value?.[1] || null,\n ]\n const newValue = [value, parsedVal && (parsedVal[1] || null)] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst handleEndChange = () => {\n const values = unref(userInput) as string[]\n const value = parseUserInputToDayjs(values && values[1]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n unref(displayValue)?.[0] || null,\n formatToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst focus = () => {\n inputRef.value?.focus()\n}\n\nconst blur = () => {\n inputRef.value?.blur()\n}\n\nprovide(PICKER_BASE_INJECTION_KEY, {\n props,\n emptyValues,\n})\nprovide(ROOT_COMMON_PICKER_INJECTION_KEY, commonPicker)\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description blur input box.\n */\n blur,\n /**\n * @description opens picker\n */\n handleOpen,\n /**\n * @description closes picker\n */\n handleClose,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"picker.vue_vue_type_script_setup_true_lang.js","names":["$attrs","popperClass","popperStyle","fallbackPlacements","placement","id","name","placeholder","type","editable","readonly","ariaLabel","tabindex","clearIcon","startPlaceholder","endPlaceholder","rangeSeparator","format","dateFormat","timeFormat","unlinkPanels","defaultValue","showNow","showConfirm","showFooter","showWeekNumber","singlePanel"],"sources":["../../../../../../../packages/components/time-picker/src/common/picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"refPopper\"\n :visible=\"pickerVisible\"\n effect=\"light\"\n pure\n trigger=\"click\"\n v-bind=\"$attrs\"\n role=\"dialog\"\n teleported\n :transition=\"`${nsDate.namespace.value}-zoom-in-top`\"\n :popper-class=\"[`${nsDate.namespace.value}-picker__popper`, popperClass!]\"\n :popper-style=\"popperStyle\"\n :popper-options=\"elPopperOptions\"\n :fallback-placements=\"fallbackPlacements\"\n :gpu-acceleration=\"false\"\n :placement=\"placement\"\n :stop-popper-mouse-event=\"false\"\n :hide-after=\"0\"\n persistent\n @before-show=\"onBeforeShow\"\n @show=\"onShow\"\n @hide=\"onHide\"\n >\n <template #default>\n <el-input\n v-if=\"!isRangeInput\"\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string\n \"\n ref=\"inputRef\"\n container-role=\"combobox\"\n :model-value=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n displayValue as string\n \"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string\n \"\n :size=\"pickerSize\"\n :disabled=\"pickerDisabled\"\n :placeholder=\"placeholder\"\n :class=\"[\n nsDate.b('editor'),\n nsDate.bm('editor', type),\n nsDate.is('focus', pickerVisible),\n $attrs.class,\n ]\"\n :style=\"$attrs.style\"\n :readonly=\"\n !editable ||\n readonly ||\n isDatesPicker ||\n isMonthsPicker ||\n isYearsPicker ||\n isQuartersPicker ||\n type === 'week'\n \"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n :validate-event=\"false\"\n @input=\"onUserInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @keydown=\"handleKeydownInput\"\n @change=\"handleChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @click.stop\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"nsInput.e('icon')\"\n @mousedown.prevent=\"onMouseDownInput\"\n @touchstart.passive=\"onTouchStartInput\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"showClearBtn && clearIcon\"\n :class=\"`${nsInput.e('icon')} clear-icon`\"\n @mousedown.prevent=\"onClearIconMousedown\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </el-input>\n <picker-range-trigger\n v-else\n :id=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n id as string[]\n \"\n ref=\"inputRef\"\n :model-value=\"displayValue\"\n :name=\"\n // https://github.com/vuejs/language-tools/issues/2104#issuecomment-3092541527\n name as string[]\n \"\n :disabled=\"pickerDisabled\"\n :readonly=\"!editable || readonly\"\n :start-placeholder=\"startPlaceholder\"\n :end-placeholder=\"endPlaceholder\"\n :class=\"rangeInputKls\"\n :style=\"$attrs.style\"\n :aria-label=\"ariaLabel\"\n :tabindex=\"tabindex\"\n autocomplete=\"off\"\n role=\"combobox\"\n @click=\"onMouseDownInput\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n @start-input=\"handleStartInput\"\n @start-change=\"handleStartChange\"\n @end-input=\"handleEndInput\"\n @end-change=\"handleEndChange\"\n @mousedown=\"onMouseDownInput\"\n @mouseenter=\"onMouseEnter\"\n @mouseleave=\"onMouseLeave\"\n @touchstart.passive=\"onTouchStartInput\"\n @keydown=\"handleKeydownInput\"\n >\n <template #prefix>\n <el-icon\n v-if=\"triggerIcon\"\n :class=\"[nsInput.e('icon'), nsRange.e('icon')]\"\n >\n <component :is=\"triggerIcon\" />\n </el-icon>\n </template>\n <template #range-separator>\n <slot name=\"range-separator\">\n <span :class=\"nsRange.b('separator')\">{{ rangeSeparator }}</span>\n </slot>\n </template>\n <template #suffix>\n <el-icon\n v-if=\"clearIcon\"\n :class=\"clearIconKls\"\n @mousedown.prevent=\"onClearIconMousedown\"\n @click=\"onClear\"\n >\n <component :is=\"clearIcon\" />\n </el-icon>\n </template>\n </picker-range-trigger>\n </template>\n <template #content>\n <slot\n :visible=\"pickerVisible\"\n :actual-visible=\"pickerActualVisible\"\n :parsed-value=\"parsedValue\"\n :format=\"format\"\n :date-format=\"dateFormat\"\n :time-format=\"timeFormat\"\n :unlink-panels=\"unlinkPanels\"\n :type=\"type\"\n :default-value=\"defaultValue\"\n :show-now=\"showNow\"\n :show-confirm=\"showConfirm\"\n :show-footer=\"showFooter\"\n :show-week-number=\"showWeekNumber\"\n :single-panel=\"singlePanel\"\n @pick=\"onPick\"\n @select-range=\"setSelectionRange\"\n @set-picker-option=\"onSetPickerOption\"\n @calendar-change=\"onCalendarChange\"\n @clear=\"onClear\"\n @panel-change=\"onPanelChange\"\n @mousedown.stop\n />\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n onBeforeUnmount,\n provide,\n ref,\n unref,\n useAttrs,\n watch,\n} from 'vue'\nimport { onClickOutside, unrefElement } from '@vueuse/core'\nimport {\n useEmptyValues,\n useFocusController,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n useFormDisabled,\n useFormItem,\n useFormSize,\n} from '@element-plus/components/form'\nimport ElInput from '@element-plus/components/input'\nimport ElIcon from '@element-plus/components/icon'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { NOOP, debugWarn, getEventCode, isArray } from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { Calendar, Clock } from '@element-plus/icons-vue'\nimport { dayOrDaysToDate, valueEquals } from '../utils'\nimport {\n PICKER_BASE_INJECTION_KEY,\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n ROOT_COMMON_PICKER_INJECTION_KEY,\n} from '../constants'\nimport { useCommonPicker } from '../composables/use-common-picker'\nimport { timePickerDefaultProps } from './props'\nimport PickerRangeTrigger from './picker-range-trigger.vue'\n\nimport type { InputInstance } from '@element-plus/components/input'\nimport type { Dayjs } from 'dayjs'\nimport type { ComponentPublicInstance, Ref } from 'vue'\nimport type { Options } from '@popperjs/core'\nimport type { DayOrDays, TimePickerDefaultProps, UserInput } from './props'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\n\ndefineOptions({\n name: 'Picker',\n})\n\nconst props = defineProps(timePickerDefaultProps)\nconst emit = defineEmits([\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'clear',\n 'calendar-change',\n 'panel-change',\n 'visible-change',\n 'keydown',\n])\nconst attrs = useAttrs()\n\nconst nsDate = useNamespace('date')\nconst nsInput = useNamespace('input')\nconst nsRange = useNamespace('range')\n\nconst { formItem } = useFormItem()\nconst elPopperOptions = inject(\n PICKER_POPPER_OPTIONS_INJECTION_KEY,\n {} as Options\n)\nconst emptyValues = useEmptyValues(props, null)\n\nconst refPopper = ref<TooltipInstance>()\nconst inputRef = ref<InputInstance>()\nconst valueOnOpen = ref<TimePickerDefaultProps['modelValue'] | null>(null)\nlet hasJustTabExitedInput = false\nlet isClearIconMousedown = false\n\nconst pickerDisabled = useFormDisabled()\n\nconst commonPicker = useCommonPicker(props, emit)\nconst {\n parsedValue,\n pickerActualVisible,\n userInput,\n pickerVisible,\n pickerOptions,\n valueIsEmpty,\n emitInput,\n onPick,\n onSetPickerOption,\n onCalendarChange,\n onPanelChange,\n} = commonPicker\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(inputRef, {\n disabled: pickerDisabled,\n beforeFocus() {\n return props.readonly\n },\n afterFocus() {\n if (!props.automaticDropdown) return\n // Clicking the clear icon focuses the input, which must not open the panel (#24826)\n if (isClearIconMousedown) {\n isClearIconMousedown = false\n return\n }\n pickerVisible.value = true\n },\n beforeBlur(event) {\n return (\n !hasJustTabExitedInput && refPopper.value?.isFocusInsideContent(event)\n )\n },\n afterBlur() {\n if (isTimePicker.value && !props.saveOnBlur) {\n if (!valueIsEmpty.value) {\n pickerOptions.value.handleCancel?.()\n }\n } else {\n handleChange()\n }\n pickerVisible.value = false\n hasJustTabExitedInput = false\n isClearIconMousedown = false\n props.validateEvent && formItem?.validate('blur').catch(NOOP)\n },\n})\n\nconst hovering = ref(false)\n\nconst rangeInputKls = computed(() => [\n nsDate.b('editor'),\n nsDate.bm('editor', props.type),\n nsInput.e('wrapper'),\n nsDate.is('disabled', pickerDisabled.value),\n nsDate.is('active', pickerVisible.value),\n nsRange.b('editor'),\n pickerSize ? nsRange.bm('editor', pickerSize.value) : '',\n attrs.class,\n])\n\nconst clearIconKls = computed(() => [\n nsInput.e('icon'),\n nsRange.e('close-icon'),\n !showClearBtn.value ? nsRange.em('close-icon', 'hidden') : '',\n])\n\nwatch(pickerVisible, (val) => {\n if (!val) {\n userInput.value = null\n nextTick(() => {\n emitChange(props.modelValue)\n })\n } else {\n nextTick(() => {\n if (val) {\n valueOnOpen.value = props.modelValue\n }\n })\n }\n})\nconst emitChange = (\n val: TimePickerDefaultProps['modelValue'] | null,\n isClear?: boolean\n) => {\n // determine user real change only\n if (\n isClear ||\n !(\n valueEquals(val, valueOnOpen.value) ||\n // the parent may normalize the cleared value to another empty\n // representation, e.g. `null` to '' (#24826)\n (emptyValues.isEmptyValue(val) &&\n emptyValues.isEmptyValue(valueOnOpen.value))\n )\n ) {\n emit(CHANGE_EVENT, val)\n // Set the value of valueOnOpen when clearing to avoid triggering change events multiple times.\n isClear && (valueOnOpen.value = val)\n props.validateEvent && formItem?.validate('change').catch(NOOP)\n }\n}\nconst emitKeydown = (e: KeyboardEvent) => {\n emit('keydown', e)\n}\n\nconst refInput = computed<HTMLInputElement[]>(() => {\n if (inputRef.value) {\n return Array.from<HTMLInputElement>(\n inputRef.value.$el.querySelectorAll('input')\n )\n }\n return []\n})\n\n// @ts-ignore\nconst setSelectionRange = (start: number, end: number, pos?: 'min' | 'max') => {\n const _inputs = refInput.value\n if (!_inputs.length) return\n if (!pos || pos === 'min') {\n _inputs[0].setSelectionRange(start, end)\n _inputs[0].focus()\n } else if (pos === 'max') {\n _inputs[1].setSelectionRange(start, end)\n _inputs[1].focus()\n }\n}\n\nconst onBeforeShow = () => {\n pickerActualVisible.value = true\n}\n\nconst onShow = () => {\n emit('visible-change', true)\n}\n\nconst onHide = () => {\n pickerActualVisible.value = false\n pickerVisible.value = false\n emit('visible-change', false)\n}\n\nconst handleOpen = () => {\n pickerVisible.value = true\n}\n\nconst handleClose = () => {\n pickerVisible.value = false\n}\n\nconst displayValue = computed<UserInput>(() => {\n const formattedValue = formatToString(parsedValue.value)\n if (isArray(userInput.value)) {\n return [\n userInput.value[0] ?? (formattedValue && formattedValue[0]) ?? '',\n userInput.value[1] ?? (formattedValue && formattedValue[1]) ?? '',\n ]\n } else if (userInput.value !== null) {\n return userInput.value\n }\n if (isTimePicker.value && valueIsEmpty.value && !props.saveOnBlur) return ''\n if (!isTimePicker.value && valueIsEmpty.value) return ''\n if (!pickerVisible.value && valueIsEmpty.value) return ''\n if (formattedValue) {\n return isDatesPicker.value ||\n isMonthsPicker.value ||\n isYearsPicker.value ||\n isQuartersPicker.value\n ? (formattedValue as Array<string>).join(', ')\n : formattedValue\n }\n return ''\n})\n\nconst isTimeLikePicker = computed(() => props.type.includes('time'))\n\nconst isTimePicker = computed(() => props.type.startsWith('time'))\n\nconst isDatesPicker = computed(() => props.type === 'dates')\n\nconst isMonthsPicker = computed(() => props.type === 'months')\n\nconst isYearsPicker = computed(() => props.type === 'years')\n\nconst isQuartersPicker = computed(() => props.type === 'quarters')\n\nconst triggerIcon = computed(\n () => props.prefixIcon || (isTimeLikePicker.value ? Clock : Calendar)\n)\n\nconst showClearBtn = computed(\n () =>\n props.clearable &&\n !pickerDisabled.value &&\n !props.readonly &&\n !valueIsEmpty.value &&\n (hovering.value || isFocused.value)\n)\n\nconst onClearIconMousedown = () => {\n isClearIconMousedown = true\n}\n\nconst onClear = (event?: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n isClearIconMousedown = false\n if (showClearBtn.value) {\n event?.stopPropagation()\n // When the handleClear Function was provided, emit null will be executed inside it\n // There is no need for us to execute emit null twice. #14752\n if (pickerOptions.value.handleClear) {\n pickerOptions.value.handleClear()\n } else {\n emitInput(emptyValues.valueOnClear.value)\n }\n emitChange(emptyValues.valueOnClear.value, true)\n onHide()\n }\n emit('clear')\n}\n\nconst onMouseDownInput = async (event: MouseEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\nconst onMouseEnter = () => {\n if (props.readonly || pickerDisabled.value) return\n if (!valueIsEmpty.value && props.clearable) {\n hovering.value = true\n }\n}\nconst onMouseLeave = () => {\n hovering.value = false\n isClearIconMousedown = false\n}\n\nconst onTouchStartInput = (event: TouchEvent) => {\n if (props.readonly || pickerDisabled.value) return\n if (\n (event.touches[0].target as HTMLElement)?.tagName !== 'INPUT' ||\n isFocused.value ||\n !props.automaticDropdown\n ) {\n pickerVisible.value = true\n }\n}\n\nconst isRangeInput = computed(() => {\n return props.type.includes('range')\n})\n\nconst pickerSize = useFormSize()\n\nconst popperEl = computed(() => unref(refPopper)?.popperRef?.contentRef)\n\nconst stophandle = onClickOutside(\n inputRef as Ref<ComponentPublicInstance>,\n (e: PointerEvent) => {\n const unrefedPopperEl = unref(popperEl)\n const inputEl = unrefElement(inputRef as Ref<ComponentPublicInstance>)\n if (\n (unrefedPopperEl &&\n (e.target === unrefedPopperEl ||\n e.composedPath().includes(unrefedPopperEl))) ||\n e.target === inputEl ||\n (inputEl && e.composedPath().includes(inputEl))\n )\n return\n pickerVisible.value = false\n }\n)\n\nonBeforeUnmount(() => {\n stophandle?.()\n})\n\nconst handleChange = () => {\n if (isTimePicker.value && !props.saveOnBlur) return\n\n const isRangeEmpty =\n isArray(userInput.value) && userInput.value.every((v) => v === '')\n\n if (userInput.value && !isRangeEmpty) {\n const value = parseUserInputToDayjs(displayValue.value)\n if (value) {\n if (isValidValue(value)) {\n emitInput(dayOrDaysToDate(value))\n }\n userInput.value = null\n }\n }\n if (userInput.value === '' || isRangeEmpty) {\n emitInput(emptyValues.valueOnClear.value)\n emitChange(emptyValues.valueOnClear.value, true)\n userInput.value = null\n }\n}\n\nconst parseUserInputToDayjs = (value: UserInput) => {\n if (!value) return null\n return pickerOptions.value.parseUserInput!(value)\n}\n\nconst formatToString = (value: DayOrDays) => {\n if (!value) return null\n const res = isArray(value)\n ? value.map((_) => _.format(props.format))\n : value.format(props.format)\n return res as UserInput\n}\n\nconst isValidValue = (value: DayOrDays) => {\n return pickerOptions.value.isValidValue!(value)\n}\n\nconst handleKeydownInput = async (event: Event | KeyboardEvent) => {\n if (props.readonly || pickerDisabled.value) return\n\n const code = getEventCode(event as KeyboardEvent)\n emitKeydown(event as KeyboardEvent)\n if (code === EVENT_CODE.esc) {\n if (pickerVisible.value === true) {\n pickerVisible.value = false\n event.preventDefault()\n event.stopPropagation()\n }\n return\n }\n\n if (code === EVENT_CODE.down) {\n if (pickerOptions.value.handleFocusPicker) {\n event.preventDefault()\n event.stopPropagation()\n }\n if (pickerVisible.value === false) {\n pickerVisible.value = true\n await nextTick()\n }\n if (pickerOptions.value.handleFocusPicker) {\n pickerOptions.value.handleFocusPicker()\n return\n }\n }\n\n if (code === EVENT_CODE.tab) {\n hasJustTabExitedInput = true\n return\n }\n\n if (code === EVENT_CODE.enter || code === EVENT_CODE.numpadEnter) {\n if (!pickerVisible.value) {\n pickerVisible.value = true\n } else if (\n userInput.value === null ||\n userInput.value === '' ||\n isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n handleChange()\n pickerVisible.value = false\n } else {\n if (\n !isValidValue(parseUserInputToDayjs(displayValue.value) as DayOrDays)\n ) {\n debugWarn(\n 'Picker',\n `Invalid user input: ${displayValue.value}. Please check the format of the input.`\n )\n }\n }\n event.preventDefault()\n event.stopPropagation()\n return\n }\n\n // if user is typing, do not let picker handle key input\n if (userInput.value) {\n event.stopPropagation()\n return\n }\n if (pickerOptions.value.handleKeydownInput) {\n pickerOptions.value.handleKeydownInput(event as KeyboardEvent)\n }\n}\nconst onUserInput = (e: string) => {\n userInput.value = e\n // Temporary fix when the picker is dismissed and the input box\n // is focused, just mimic the behavior of antdesign.\n if (!pickerVisible.value) {\n pickerVisible.value = true\n }\n}\n\nconst handleStartInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [target.value, userInput.value[1]]\n } else {\n userInput.value = [target.value, null]\n }\n}\n\nconst handleEndInput = (event: Event) => {\n const target = event.target as HTMLInputElement\n if (userInput.value) {\n userInput.value = [userInput.value[0], target.value]\n } else {\n userInput.value = [null, target.value]\n }\n}\n\nconst handleStartChange = () => {\n const values = userInput.value as string[]\n const value = parseUserInputToDayjs(values && values[0]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n formatToString(value) as string,\n displayValue.value?.[1] || null,\n ]\n const newValue = [value, parsedVal && (parsedVal[1] || null)] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst handleEndChange = () => {\n const values = unref(userInput) as string[]\n const value = parseUserInputToDayjs(values && values[1]) as Dayjs\n const parsedVal = unref(parsedValue) as [Dayjs, Dayjs]\n if (value && value.isValid()) {\n userInput.value = [\n unref(displayValue)?.[0] || null,\n formatToString(value) as string,\n ]\n const newValue = [parsedVal && parsedVal[0], value] as DayOrDays\n if (isValidValue(newValue)) {\n emitInput(dayOrDaysToDate(newValue))\n userInput.value = null\n }\n }\n}\n\nconst focus = () => {\n inputRef.value?.focus()\n}\n\nconst blur = () => {\n inputRef.value?.blur()\n}\n\nprovide(PICKER_BASE_INJECTION_KEY, {\n props,\n emptyValues,\n})\nprovide(ROOT_COMMON_PICKER_INJECTION_KEY, commonPicker)\n\ndefineExpose({\n /**\n * @description focus input box.\n */\n focus,\n /**\n * @description blur input box.\n */\n blur,\n /**\n * @description opens picker\n */\n handleOpen,\n /**\n * @description closes picker\n */\n handleClose,\n /**\n * @description pick item manually\n */\n onPick,\n})\n</script>\n"],"mappings":"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"}
|
|
@@ -42,7 +42,7 @@ declare const timePickerDefaultProps: {
|
|
|
42
42
|
readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
43
43
|
readonly unlinkPanels: BooleanConstructor;
|
|
44
44
|
readonly singlePanel: BooleanConstructor;
|
|
45
|
-
readonly placement: EpPropFinalized<(new (...args: any[]) => "
|
|
45
|
+
readonly placement: EpPropFinalized<(new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1) | (((new (...args: any[]) => "left" | "right" | "top" | "auto" | "bottom" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement$1)) | null)[], Placement$1, unknown, "bottom", boolean>;
|
|
46
46
|
readonly fallbackPlacements: EpPropFinalized<(new (...args: any[]) => Placement$1[]) | (() => Placement$1[]) | (((new (...args: any[]) => Placement$1[]) | (() => Placement$1[])) | null)[], unknown, unknown, readonly ["bottom", "top", "right", "left"], boolean>;
|
|
47
47
|
readonly disabledHours: {
|
|
48
48
|
readonly type: _$vue.PropType<GetDisabledHours>;
|
|
@@ -88,7 +88,7 @@ declare const timePickerDefaultProps: {
|
|
|
88
88
|
readonly saveOnBlur: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
89
89
|
readonly prefixIcon: EpPropFinalized<(new (...args: any[]) => (string | Component) & {}) | (() => string | Component) | (((new (...args: any[]) => (string | Component) & {}) | (() => string | Component)) | null)[], unknown, unknown, "", boolean>;
|
|
90
90
|
readonly size: {
|
|
91
|
-
readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "
|
|
91
|
+
readonly type: _$vue.PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
|
|
92
92
|
readonly required: false;
|
|
93
93
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
94
94
|
__epPropKey: true;
|
|
@@ -97,7 +97,7 @@ declare const timePickerDefaultProps: {
|
|
|
97
97
|
readonly disabled: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
98
98
|
readonly placeholder: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
99
99
|
readonly popperOptions: EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => {}, boolean>;
|
|
100
|
-
readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number |
|
|
100
|
+
readonly modelValue: EpPropFinalized<(new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null) | (((new (...args: any[]) => string | number | string[] | Date | number[] | Date[]) | (() => ModelValueType | null)) | null)[], unknown, unknown, "", boolean>;
|
|
101
101
|
readonly rangeSeparator: EpPropFinalized<StringConstructor, unknown, unknown, "-", boolean>;
|
|
102
102
|
readonly startPlaceholder: StringConstructor;
|
|
103
103
|
readonly endPlaceholder: StringConstructor;
|
|
@@ -15,9 +15,9 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
15
15
|
readonly actualVisible: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
16
16
|
readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
17
17
|
}>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
18
|
-
"select-range": (...args: any[]) => void;
|
|
19
18
|
pick: (...args: any[]) => void;
|
|
20
19
|
"set-picker-option": (...args: any[]) => void;
|
|
20
|
+
"select-range": (...args: any[]) => void;
|
|
21
21
|
}, string, _$vue.PublicProps, Readonly<_$vue.ExtractPropTypes<{
|
|
22
22
|
readonly datetimeRole: StringConstructor;
|
|
23
23
|
readonly parsedValue: {
|
|
@@ -30,9 +30,9 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
30
30
|
readonly actualVisible: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
31
31
|
readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
32
32
|
}>> & Readonly<{
|
|
33
|
-
"onSelect-range"?: ((...args: any[]) => any) | undefined;
|
|
34
33
|
onPick?: ((...args: any[]) => any) | undefined;
|
|
35
34
|
"onSet-picker-option"?: ((...args: any[]) => any) | undefined;
|
|
35
|
+
"onSelect-range"?: ((...args: any[]) => any) | undefined;
|
|
36
36
|
}>, {
|
|
37
37
|
readonly visible: boolean;
|
|
38
38
|
readonly format: string;
|
|
@@ -14,9 +14,9 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
14
14
|
readonly actualVisible: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
15
15
|
readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
16
16
|
}>, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
17
|
-
"select-range": (...args: any[]) => void;
|
|
18
17
|
pick: (...args: any[]) => void;
|
|
19
18
|
"set-picker-option": (...args: any[]) => void;
|
|
19
|
+
"select-range": (...args: any[]) => void;
|
|
20
20
|
}, string, _$vue.PublicProps, Readonly<_$vue.ExtractPropTypes<{
|
|
21
21
|
readonly parsedValue: {
|
|
22
22
|
readonly type: _$vue.PropType<[dayjs.Dayjs, dayjs.Dayjs]>;
|
|
@@ -28,9 +28,9 @@ declare const __VLS_export: _$vue.DefineComponent<_$vue.ExtractPropTypes<{
|
|
|
28
28
|
readonly actualVisible: EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
|
|
29
29
|
readonly format: EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
30
30
|
}>> & Readonly<{
|
|
31
|
-
"onSelect-range"?: ((...args: any[]) => any) | undefined;
|
|
32
31
|
onPick?: ((...args: any[]) => any) | undefined;
|
|
33
32
|
"onSet-picker-option"?: ((...args: any[]) => any) | undefined;
|
|
33
|
+
"onSelect-range"?: ((...args: any[]) => any) | undefined;
|
|
34
34
|
}>, {
|
|
35
35
|
readonly visible: boolean;
|
|
36
36
|
readonly format: string;
|