@element-plus/nightly 0.0.20221020 → 0.0.20221022
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +1 -1
- package/dist/index.full.js +527 -528
- package/dist/index.full.min.js +20 -20
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +21 -21
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +527 -528
- package/dist/locale/af.js +1 -1
- package/dist/locale/af.min.js +1 -1
- package/dist/locale/af.min.mjs +1 -1
- package/dist/locale/af.mjs +1 -1
- package/dist/locale/ar.js +1 -1
- package/dist/locale/ar.min.js +1 -1
- package/dist/locale/ar.min.mjs +1 -1
- package/dist/locale/ar.mjs +1 -1
- package/dist/locale/az.js +1 -1
- package/dist/locale/az.min.js +1 -1
- package/dist/locale/az.min.mjs +1 -1
- package/dist/locale/az.mjs +1 -1
- package/dist/locale/bg.js +1 -1
- package/dist/locale/bg.min.js +1 -1
- package/dist/locale/bg.min.mjs +1 -1
- package/dist/locale/bg.mjs +1 -1
- package/dist/locale/bn.js +1 -1
- package/dist/locale/bn.min.js +1 -1
- package/dist/locale/bn.min.mjs +1 -1
- package/dist/locale/bn.mjs +1 -1
- package/dist/locale/ca.js +1 -1
- package/dist/locale/ca.min.js +1 -1
- package/dist/locale/ca.min.mjs +1 -1
- package/dist/locale/ca.mjs +1 -1
- package/dist/locale/cs.js +1 -1
- package/dist/locale/cs.min.js +1 -1
- package/dist/locale/cs.min.mjs +1 -1
- package/dist/locale/cs.mjs +1 -1
- package/dist/locale/da.js +1 -1
- package/dist/locale/da.min.js +1 -1
- package/dist/locale/da.min.mjs +1 -1
- package/dist/locale/da.mjs +1 -1
- package/dist/locale/de.js +1 -1
- package/dist/locale/de.min.js +1 -1
- package/dist/locale/de.min.mjs +1 -1
- package/dist/locale/de.mjs +1 -1
- package/dist/locale/el.js +1 -1
- package/dist/locale/el.min.js +1 -1
- package/dist/locale/el.min.mjs +1 -1
- package/dist/locale/el.mjs +1 -1
- package/dist/locale/en.js +1 -1
- package/dist/locale/en.min.js +1 -1
- package/dist/locale/en.min.mjs +1 -1
- package/dist/locale/en.mjs +1 -1
- package/dist/locale/eo.js +1 -1
- package/dist/locale/eo.min.js +1 -1
- package/dist/locale/eo.min.mjs +1 -1
- package/dist/locale/eo.mjs +1 -1
- package/dist/locale/es.js +1 -1
- package/dist/locale/es.min.js +1 -1
- package/dist/locale/es.min.mjs +1 -1
- package/dist/locale/es.mjs +1 -1
- package/dist/locale/et.js +1 -1
- package/dist/locale/et.min.js +1 -1
- package/dist/locale/et.min.mjs +1 -1
- package/dist/locale/et.mjs +1 -1
- package/dist/locale/eu.js +1 -1
- package/dist/locale/eu.min.js +1 -1
- package/dist/locale/eu.min.mjs +1 -1
- package/dist/locale/eu.mjs +1 -1
- package/dist/locale/fa.js +1 -1
- package/dist/locale/fa.min.js +1 -1
- package/dist/locale/fa.min.mjs +1 -1
- package/dist/locale/fa.mjs +1 -1
- package/dist/locale/fi.js +1 -1
- package/dist/locale/fi.min.js +1 -1
- package/dist/locale/fi.min.mjs +1 -1
- package/dist/locale/fi.mjs +1 -1
- package/dist/locale/fr.js +1 -1
- package/dist/locale/fr.min.js +1 -1
- package/dist/locale/fr.min.mjs +1 -1
- package/dist/locale/fr.mjs +1 -1
- package/dist/locale/he.js +1 -1
- package/dist/locale/he.min.js +1 -1
- package/dist/locale/he.min.mjs +1 -1
- package/dist/locale/he.mjs +1 -1
- package/dist/locale/hr.js +1 -1
- package/dist/locale/hr.min.js +1 -1
- package/dist/locale/hr.min.mjs +1 -1
- package/dist/locale/hr.mjs +1 -1
- package/dist/locale/hu.js +1 -1
- package/dist/locale/hu.min.js +1 -1
- package/dist/locale/hu.min.mjs +1 -1
- package/dist/locale/hu.mjs +1 -1
- package/dist/locale/hy-am.js +1 -1
- package/dist/locale/hy-am.min.js +1 -1
- package/dist/locale/hy-am.min.mjs +1 -1
- package/dist/locale/hy-am.mjs +1 -1
- package/dist/locale/id.js +1 -1
- package/dist/locale/id.min.js +1 -1
- package/dist/locale/id.min.mjs +1 -1
- package/dist/locale/id.mjs +1 -1
- package/dist/locale/it.js +1 -1
- package/dist/locale/it.min.js +1 -1
- package/dist/locale/it.min.mjs +1 -1
- package/dist/locale/it.mjs +1 -1
- package/dist/locale/ja.js +1 -1
- package/dist/locale/ja.min.js +1 -1
- package/dist/locale/ja.min.mjs +1 -1
- package/dist/locale/ja.mjs +1 -1
- package/dist/locale/kk.js +1 -1
- package/dist/locale/kk.min.js +1 -1
- package/dist/locale/kk.min.mjs +1 -1
- package/dist/locale/kk.mjs +1 -1
- package/dist/locale/km.js +1 -1
- package/dist/locale/km.min.js +1 -1
- package/dist/locale/km.min.mjs +1 -1
- package/dist/locale/km.mjs +1 -1
- package/dist/locale/ko.js +1 -1
- package/dist/locale/ko.min.js +1 -1
- package/dist/locale/ko.min.mjs +1 -1
- package/dist/locale/ko.mjs +1 -1
- package/dist/locale/ku.js +1 -1
- package/dist/locale/ku.min.js +1 -1
- package/dist/locale/ku.min.mjs +1 -1
- package/dist/locale/ku.mjs +1 -1
- package/dist/locale/ky.js +1 -1
- package/dist/locale/ky.min.js +1 -1
- package/dist/locale/ky.min.mjs +1 -1
- package/dist/locale/ky.mjs +1 -1
- package/dist/locale/lt.js +1 -1
- package/dist/locale/lt.min.js +1 -1
- package/dist/locale/lt.min.mjs +1 -1
- package/dist/locale/lt.mjs +1 -1
- package/dist/locale/lv.js +1 -1
- package/dist/locale/lv.min.js +1 -1
- package/dist/locale/lv.min.mjs +1 -1
- package/dist/locale/lv.mjs +1 -1
- package/dist/locale/mg.js +1 -1
- package/dist/locale/mg.min.js +1 -1
- package/dist/locale/mg.min.mjs +1 -1
- package/dist/locale/mg.mjs +1 -1
- package/dist/locale/mn.js +1 -1
- package/dist/locale/mn.min.js +1 -1
- package/dist/locale/mn.min.mjs +1 -1
- package/dist/locale/mn.mjs +1 -1
- package/dist/locale/nb-no.js +1 -1
- package/dist/locale/nb-no.min.js +1 -1
- package/dist/locale/nb-no.min.mjs +1 -1
- package/dist/locale/nb-no.mjs +1 -1
- package/dist/locale/nl.js +1 -1
- package/dist/locale/nl.min.js +1 -1
- package/dist/locale/nl.min.mjs +1 -1
- package/dist/locale/nl.mjs +1 -1
- package/dist/locale/pa.js +1 -1
- package/dist/locale/pa.min.js +1 -1
- package/dist/locale/pa.min.mjs +1 -1
- package/dist/locale/pa.mjs +1 -1
- package/dist/locale/pl.js +1 -1
- package/dist/locale/pl.min.js +1 -1
- package/dist/locale/pl.min.mjs +1 -1
- package/dist/locale/pl.mjs +1 -1
- package/dist/locale/pt-br.js +1 -1
- package/dist/locale/pt-br.min.js +1 -1
- package/dist/locale/pt-br.min.mjs +1 -1
- package/dist/locale/pt-br.mjs +1 -1
- package/dist/locale/pt.js +1 -1
- package/dist/locale/pt.min.js +1 -1
- package/dist/locale/pt.min.mjs +1 -1
- package/dist/locale/pt.mjs +1 -1
- package/dist/locale/ro.js +1 -1
- package/dist/locale/ro.min.js +1 -1
- package/dist/locale/ro.min.mjs +1 -1
- package/dist/locale/ro.mjs +1 -1
- package/dist/locale/ru.js +1 -1
- package/dist/locale/ru.min.js +1 -1
- package/dist/locale/ru.min.mjs +1 -1
- package/dist/locale/ru.mjs +1 -1
- package/dist/locale/sk.js +1 -1
- package/dist/locale/sk.min.js +1 -1
- package/dist/locale/sk.min.mjs +1 -1
- package/dist/locale/sk.mjs +1 -1
- package/dist/locale/sl.js +1 -1
- package/dist/locale/sl.min.js +1 -1
- package/dist/locale/sl.min.mjs +1 -1
- package/dist/locale/sl.mjs +1 -1
- package/dist/locale/sr.js +1 -1
- package/dist/locale/sr.min.js +1 -1
- package/dist/locale/sr.min.mjs +1 -1
- package/dist/locale/sr.mjs +1 -1
- package/dist/locale/sv.js +1 -1
- package/dist/locale/sv.min.js +1 -1
- package/dist/locale/sv.min.mjs +1 -1
- package/dist/locale/sv.mjs +1 -1
- package/dist/locale/ta.js +1 -1
- package/dist/locale/ta.min.js +1 -1
- package/dist/locale/ta.min.mjs +1 -1
- package/dist/locale/ta.mjs +1 -1
- package/dist/locale/th.js +1 -1
- package/dist/locale/th.min.js +1 -1
- package/dist/locale/th.min.mjs +1 -1
- package/dist/locale/th.mjs +1 -1
- package/dist/locale/tk.js +1 -1
- package/dist/locale/tk.min.js +1 -1
- package/dist/locale/tk.min.mjs +1 -1
- package/dist/locale/tk.mjs +1 -1
- package/dist/locale/tr.js +1 -1
- package/dist/locale/tr.min.js +1 -1
- package/dist/locale/tr.min.mjs +1 -1
- package/dist/locale/tr.mjs +1 -1
- package/dist/locale/ug-cn.js +1 -1
- package/dist/locale/ug-cn.min.js +1 -1
- package/dist/locale/ug-cn.min.mjs +1 -1
- package/dist/locale/ug-cn.mjs +1 -1
- package/dist/locale/uk.js +1 -1
- package/dist/locale/uk.min.js +1 -1
- package/dist/locale/uk.min.mjs +1 -1
- package/dist/locale/uk.mjs +1 -1
- package/dist/locale/uz-uz.js +1 -1
- package/dist/locale/uz-uz.min.js +1 -1
- package/dist/locale/uz-uz.min.mjs +1 -1
- package/dist/locale/uz-uz.mjs +1 -1
- package/dist/locale/vi.js +1 -1
- package/dist/locale/vi.min.js +1 -1
- package/dist/locale/vi.min.mjs +1 -1
- package/dist/locale/vi.mjs +1 -1
- package/dist/locale/zh-cn.js +1 -1
- package/dist/locale/zh-cn.min.js +1 -1
- package/dist/locale/zh-cn.min.mjs +1 -1
- package/dist/locale/zh-cn.mjs +1 -1
- package/dist/locale/zh-tw.js +1 -1
- package/dist/locale/zh-tw.min.js +1 -1
- package/dist/locale/zh-tw.min.mjs +1 -1
- package/dist/locale/zh-tw.mjs +1 -1
- package/es/components/calendar/index.d.ts +23 -33
- package/es/components/calendar/src/calendar.d.ts +0 -2
- package/es/components/calendar/src/calendar.mjs.map +1 -1
- package/es/components/calendar/src/calendar.vue.d.ts +94 -108
- package/es/components/calendar/src/calendar2.mjs +18 -129
- package/es/components/calendar/src/calendar2.mjs.map +1 -1
- package/es/components/calendar/src/instance.d.ts +2 -0
- package/es/components/calendar/src/use-calendar.d.ts +12 -0
- package/es/components/calendar/src/use-calendar.mjs +135 -0
- package/es/components/calendar/src/use-calendar.mjs.map +1 -0
- package/es/components/date-picker/src/composables/use-range-picker.d.ts +1 -1
- package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +6 -6
- package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +24 -24
- package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +26 -26
- package/es/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +3 -3
- package/es/components/date-picker/src/panel-utils.d.ts +53 -53
- package/es/components/dialog/index.d.ts +1 -0
- package/es/components/dialog/src/dialog.vue.d.ts +1 -0
- package/es/components/dialog/src/dialog2.mjs +4 -2
- package/es/components/dialog/src/dialog2.mjs.map +1 -1
- package/es/components/dialog/src/use-dialog.d.ts +1 -0
- package/es/components/dialog/src/use-dialog.mjs +7 -0
- package/es/components/dialog/src/use-dialog.mjs.map +1 -1
- package/es/components/drawer/index.d.ts +1 -0
- package/es/components/drawer/src/drawer.vue.d.ts +1 -0
- package/es/components/index.mjs +6 -6
- package/es/components/menu/src/menu-item2.mjs +1 -1
- package/es/components/message/index.mjs +1 -1
- package/es/components/message/src/message.mjs +86 -146
- package/es/components/message/src/message.mjs.map +1 -1
- package/es/components/message/src/message2.mjs +146 -86
- package/es/components/message/src/message2.mjs.map +1 -1
- package/es/components/message/src/method.mjs +2 -2
- package/es/components/popover/style/css.d.ts +1 -1
- package/es/components/popover/style/css.mjs +1 -1
- package/es/components/popover/style/index.d.ts +1 -1
- package/es/components/popover/style/index.mjs +1 -1
- package/es/components/popper/index.mjs +4 -4
- package/es/components/popper/src/arrow.mjs +8 -37
- package/es/components/popper/src/arrow.mjs.map +1 -1
- package/es/components/popper/src/arrow2.mjs +37 -8
- package/es/components/popper/src/arrow2.mjs.map +1 -1
- package/es/components/popper/src/popper.mjs +25 -33
- package/es/components/popper/src/popper.mjs.map +1 -1
- package/es/components/popper/src/popper2.mjs +33 -25
- package/es/components/popper/src/popper2.mjs.map +1 -1
- package/es/components/select-v2/index.d.ts +2 -2
- package/es/components/select-v2/src/select.vue.d.ts +1 -1
- package/es/components/select-v2/src/useSelect.d.ts +1 -1
- package/es/components/select-v2/src/useSelect.mjs +5 -5
- package/es/components/select-v2/src/useSelect.mjs.map +1 -1
- package/es/components/time-picker/src/composables/use-time-picker.d.ts +2 -2
- package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +5 -5
- package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +17 -17
- package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +17 -17
- package/es/components/tooltip/src/tooltip.mjs +2 -2
- package/es/components/tooltip/src/tooltip2.mjs +1 -1
- package/es/components/transfer/src/composables/use-check.mjs +1 -1
- package/es/components/transfer/src/transfer-panel.mjs +131 -19
- package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
- package/es/components/transfer/src/transfer-panel2.mjs +19 -131
- package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
- package/es/components/transfer/src/transfer2.mjs +1 -1
- package/es/components/tree-v2/index.d.ts +868 -3
- package/es/components/tree-v2/src/composables/useCheck.d.ts +2 -1
- package/es/components/tree-v2/src/composables/useCheck.mjs.map +1 -1
- package/es/components/tree-v2/src/composables/useTree.d.ts +6 -3
- package/es/components/tree-v2/src/composables/useTree.mjs +1 -1
- package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
- package/es/components/tree-v2/src/tree-node.mjs +63 -78
- package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
- package/es/components/tree-v2/src/tree-node.vue.d.ts +566 -3
- package/es/components/tree-v2/src/tree.mjs +62 -75
- package/es/components/tree-v2/src/tree.mjs.map +1 -1
- package/es/components/tree-v2/src/tree.vue.d.ts +868 -3
- package/es/components/tree-v2/src/types.d.ts +1 -1
- package/es/components/tree-v2/src/virtual-tree.d.ts +3 -2
- package/es/components/tree-v2/src/virtual-tree.mjs.map +1 -1
- package/es/components/upload/index.mjs +3 -3
- package/es/components/upload/src/upload-content.mjs +1 -1
- package/es/components/upload/src/upload-content2.mjs +2 -2
- package/es/components/upload/src/upload-dragger.mjs +70 -11
- package/es/components/upload/src/upload-dragger.mjs.map +1 -1
- package/es/components/upload/src/upload-dragger2.mjs +11 -70
- package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
- package/es/components/upload/src/upload-list.mjs +1 -1
- package/es/components/upload/src/upload.mjs +120 -105
- package/es/components/upload/src/upload.mjs.map +1 -1
- package/es/components/upload/src/upload2.mjs +105 -120
- package/es/components/upload/src/upload2.mjs.map +1 -1
- package/es/components/upload/src/use-handlers.mjs +1 -1
- package/es/index.mjs +6 -6
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/calendar/index.d.ts +23 -33
- package/lib/components/calendar/src/calendar.d.ts +0 -2
- package/lib/components/calendar/src/calendar.js.map +1 -1
- package/lib/components/calendar/src/calendar.vue.d.ts +94 -108
- package/lib/components/calendar/src/calendar2.js +22 -137
- package/lib/components/calendar/src/calendar2.js.map +1 -1
- package/lib/components/calendar/src/instance.d.ts +2 -0
- package/lib/components/calendar/src/use-calendar.d.ts +12 -0
- package/lib/components/calendar/src/use-calendar.js +143 -0
- package/lib/components/calendar/src/use-calendar.js.map +1 -0
- package/lib/components/date-picker/src/composables/use-range-picker.d.ts +1 -1
- package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +6 -6
- package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +24 -24
- package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +26 -26
- package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +3 -3
- package/lib/components/date-picker/src/panel-utils.d.ts +53 -53
- package/lib/components/dialog/index.d.ts +1 -0
- package/lib/components/dialog/src/dialog.vue.d.ts +1 -0
- package/lib/components/dialog/src/dialog2.js +4 -2
- package/lib/components/dialog/src/dialog2.js.map +1 -1
- package/lib/components/dialog/src/use-dialog.d.ts +1 -0
- package/lib/components/dialog/src/use-dialog.js +7 -0
- package/lib/components/dialog/src/use-dialog.js.map +1 -1
- package/lib/components/drawer/index.d.ts +1 -0
- package/lib/components/drawer/src/drawer.vue.d.ts +1 -0
- package/lib/components/index.js +6 -6
- package/lib/components/menu/src/menu-item2.js +1 -1
- package/lib/components/message/index.js +1 -1
- package/lib/components/message/src/message.js +87 -144
- package/lib/components/message/src/message.js.map +1 -1
- package/lib/components/message/src/message2.js +144 -87
- package/lib/components/message/src/message2.js.map +1 -1
- package/lib/components/message/src/method.js +2 -2
- package/lib/components/popover/style/css.d.ts +1 -1
- package/lib/components/popover/style/css.js +1 -1
- package/lib/components/popover/style/index.d.ts +1 -1
- package/lib/components/popover/style/index.js +1 -1
- package/lib/components/popper/index.js +4 -4
- package/lib/components/popper/src/arrow.js +9 -37
- package/lib/components/popper/src/arrow.js.map +1 -1
- package/lib/components/popper/src/arrow2.js +37 -9
- package/lib/components/popper/src/arrow2.js.map +1 -1
- package/lib/components/popper/src/popper.js +28 -33
- package/lib/components/popper/src/popper.js.map +1 -1
- package/lib/components/popper/src/popper2.js +33 -28
- package/lib/components/popper/src/popper2.js.map +1 -1
- package/lib/components/select-v2/index.d.ts +2 -2
- package/lib/components/select-v2/src/select.vue.d.ts +1 -1
- package/lib/components/select-v2/src/useSelect.d.ts +1 -1
- package/lib/components/select-v2/src/useSelect.js +5 -5
- package/lib/components/select-v2/src/useSelect.js.map +1 -1
- package/lib/components/time-picker/src/composables/use-time-picker.d.ts +2 -2
- package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +5 -5
- package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +17 -17
- package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +17 -17
- package/lib/components/tooltip/src/tooltip.js +2 -2
- package/lib/components/tooltip/src/tooltip2.js +1 -1
- package/lib/components/transfer/src/composables/use-check.js +1 -1
- package/lib/components/transfer/src/transfer-panel.js +131 -21
- package/lib/components/transfer/src/transfer-panel.js.map +1 -1
- package/lib/components/transfer/src/transfer-panel2.js +21 -131
- package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
- package/lib/components/transfer/src/transfer2.js +1 -1
- package/lib/components/tree-v2/index.d.ts +868 -3
- package/lib/components/tree-v2/src/composables/useCheck.d.ts +2 -1
- package/lib/components/tree-v2/src/composables/useCheck.js.map +1 -1
- package/lib/components/tree-v2/src/composables/useTree.d.ts +6 -3
- package/lib/components/tree-v2/src/composables/useTree.js +1 -1
- package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
- package/lib/components/tree-v2/src/tree-node.js +66 -81
- package/lib/components/tree-v2/src/tree-node.js.map +1 -1
- package/lib/components/tree-v2/src/tree-node.vue.d.ts +566 -3
- package/lib/components/tree-v2/src/tree.js +61 -74
- package/lib/components/tree-v2/src/tree.js.map +1 -1
- package/lib/components/tree-v2/src/tree.vue.d.ts +868 -3
- package/lib/components/tree-v2/src/types.d.ts +1 -1
- package/lib/components/tree-v2/src/virtual-tree.d.ts +3 -2
- package/lib/components/tree-v2/src/virtual-tree.js.map +1 -1
- package/lib/components/upload/index.js +3 -3
- package/lib/components/upload/src/upload-content.js +1 -1
- package/lib/components/upload/src/upload-content2.js +2 -2
- package/lib/components/upload/src/upload-dragger.js +70 -12
- package/lib/components/upload/src/upload-dragger.js.map +1 -1
- package/lib/components/upload/src/upload-dragger2.js +12 -70
- package/lib/components/upload/src/upload-dragger2.js.map +1 -1
- package/lib/components/upload/src/upload-list.js +1 -1
- package/lib/components/upload/src/upload.js +120 -108
- package/lib/components/upload/src/upload.js.map +1 -1
- package/lib/components/upload/src/upload2.js +108 -120
- package/lib/components/upload/src/upload2.js.map +1 -1
- package/lib/components/upload/src/use-handlers.js +1 -1
- package/lib/index.js +6 -6
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +2 -2
- package/tags.json +1 -1
- package/theme-chalk/el-popover.css +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/src/popover.scss +10 -1
- package/web-types.json +1 -1
|
@@ -1,17 +1,12 @@
|
|
|
1
|
-
import { defineComponent,
|
|
2
|
-
import dayjs from 'dayjs';
|
|
1
|
+
import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, renderSlot, toDisplayString, createVNode, withCtx, createTextVNode, createCommentVNode, createSlots, normalizeProps, mergeProps, Fragment, renderList, createBlock } from 'vue';
|
|
3
2
|
import { ElButtonGroup, ElButton } from '../../button/index.mjs';
|
|
4
3
|
import '../../../hooks/index.mjs';
|
|
5
|
-
import '../../../utils/index.mjs';
|
|
6
|
-
import '../../../constants/index.mjs';
|
|
7
4
|
import DateTable from './date-table2.mjs';
|
|
5
|
+
import { useCalendar } from './use-calendar.mjs';
|
|
8
6
|
import { calendarProps, calendarEmits } from './calendar.mjs';
|
|
9
7
|
import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
|
|
10
8
|
import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
|
|
11
9
|
import { useLocale } from '../../../hooks/use-locale/index.mjs';
|
|
12
|
-
import { INPUT_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
|
|
13
|
-
import { debugWarn } from '../../../utils/error.mjs';
|
|
14
|
-
import { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';
|
|
15
10
|
|
|
16
11
|
const COMPONENT_NAME = "ElCalendar";
|
|
17
12
|
const __default__ = defineComponent({
|
|
@@ -23,126 +18,20 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
23
18
|
emits: calendarEmits,
|
|
24
19
|
setup(__props, { expose, emit }) {
|
|
25
20
|
const props = __props;
|
|
26
|
-
const solts = useSlots();
|
|
27
21
|
const ns = useNamespace("calendar");
|
|
28
|
-
const {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
set(val) {
|
|
38
|
-
if (!val)
|
|
39
|
-
return;
|
|
40
|
-
selectedDay.value = val;
|
|
41
|
-
const result = val.toDate();
|
|
42
|
-
emit(INPUT_EVENT, result);
|
|
43
|
-
emit(UPDATE_MODEL_EVENT, result);
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
const validatedRange = computed(() => {
|
|
47
|
-
if (!props.range)
|
|
48
|
-
return [];
|
|
49
|
-
const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value));
|
|
50
|
-
const [startDayjs, endDayjs] = rangeArrDayjs;
|
|
51
|
-
if (startDayjs.isAfter(endDayjs)) {
|
|
52
|
-
debugWarn(COMPONENT_NAME, "end time should be greater than start time");
|
|
53
|
-
return [];
|
|
54
|
-
}
|
|
55
|
-
if (startDayjs.isSame(endDayjs, "month")) {
|
|
56
|
-
return calculateValidatedDateRange(startDayjs, endDayjs);
|
|
57
|
-
} else {
|
|
58
|
-
if (startDayjs.add(1, "month").month() !== endDayjs.month()) {
|
|
59
|
-
debugWarn(COMPONENT_NAME, "start time and end time interval must not exceed two months");
|
|
60
|
-
return [];
|
|
61
|
-
}
|
|
62
|
-
return calculateValidatedDateRange(startDayjs, endDayjs);
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
const date = computed(() => {
|
|
66
|
-
if (!props.modelValue) {
|
|
67
|
-
if (realSelectedDay.value) {
|
|
68
|
-
return realSelectedDay.value;
|
|
69
|
-
} else if (validatedRange.value.length) {
|
|
70
|
-
return validatedRange.value[0][0];
|
|
71
|
-
}
|
|
72
|
-
return now;
|
|
73
|
-
} else {
|
|
74
|
-
return dayjs(props.modelValue).locale(lang.value);
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
const prevMonthDayjs = computed(() => date.value.subtract(1, "month").date(1));
|
|
78
|
-
const nextMonthDayjs = computed(() => date.value.add(1, "month").date(1));
|
|
79
|
-
const prevYearDayjs = computed(() => date.value.subtract(1, "year").date(1));
|
|
80
|
-
const nextYearDayjs = computed(() => date.value.add(1, "year").date(1));
|
|
22
|
+
const {
|
|
23
|
+
calculateValidatedDateRange,
|
|
24
|
+
date,
|
|
25
|
+
pickDay,
|
|
26
|
+
realSelectedDay,
|
|
27
|
+
selectDate,
|
|
28
|
+
validatedRange
|
|
29
|
+
} = useCalendar(props, emit, COMPONENT_NAME);
|
|
30
|
+
const { t } = useLocale();
|
|
81
31
|
const i18nDate = computed(() => {
|
|
82
32
|
const pickedMonth = `el.datepicker.month${date.value.format("M")}`;
|
|
83
33
|
return `${date.value.year()} ${t("el.datepicker.year")} ${t(pickedMonth)}`;
|
|
84
34
|
});
|
|
85
|
-
const calculateValidatedDateRange = (startDayjs, endDayjs) => {
|
|
86
|
-
const firstDay = startDayjs.startOf("week");
|
|
87
|
-
const lastDay = endDayjs.endOf("week");
|
|
88
|
-
const firstMonth = firstDay.get("month");
|
|
89
|
-
const lastMonth = lastDay.get("month");
|
|
90
|
-
if (firstMonth === lastMonth) {
|
|
91
|
-
return [[firstDay, lastDay]];
|
|
92
|
-
} else if (firstMonth + 1 === lastMonth) {
|
|
93
|
-
const firstMonthLastDay = firstDay.endOf("month");
|
|
94
|
-
const lastMonthFirstDay = lastDay.startOf("month");
|
|
95
|
-
const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, "week");
|
|
96
|
-
const lastMonthStartDay = isSameWeek ? lastMonthFirstDay.add(1, "week") : lastMonthFirstDay;
|
|
97
|
-
return [
|
|
98
|
-
[firstDay, firstMonthLastDay],
|
|
99
|
-
[lastMonthStartDay.startOf("week"), lastDay]
|
|
100
|
-
];
|
|
101
|
-
} else if (firstMonth + 2 === lastMonth || (firstMonth + 1) % 11 === lastMonth) {
|
|
102
|
-
const firstMonthLastDay = firstDay.endOf("month");
|
|
103
|
-
const secondMonthFirstDay = firstDay.add(1, "month").startOf("month");
|
|
104
|
-
const secondMonthStartDay = firstMonthLastDay.isSame(secondMonthFirstDay, "week") ? secondMonthFirstDay.add(1, "week") : secondMonthFirstDay;
|
|
105
|
-
const secondMonthLastDay = secondMonthStartDay.endOf("month");
|
|
106
|
-
const lastMonthFirstDay = lastDay.startOf("month");
|
|
107
|
-
const lastMonthStartDay = secondMonthLastDay.isSame(lastMonthFirstDay, "week") ? lastMonthFirstDay.add(1, "week") : lastMonthFirstDay;
|
|
108
|
-
return [
|
|
109
|
-
[firstDay, firstMonthLastDay],
|
|
110
|
-
[secondMonthStartDay.startOf("week"), secondMonthLastDay],
|
|
111
|
-
[lastMonthStartDay.startOf("week"), lastDay]
|
|
112
|
-
];
|
|
113
|
-
} else {
|
|
114
|
-
debugWarn(COMPONENT_NAME, "start time and end time interval must not exceed two months");
|
|
115
|
-
return [];
|
|
116
|
-
}
|
|
117
|
-
};
|
|
118
|
-
const pickDay = (day) => {
|
|
119
|
-
realSelectedDay.value = day;
|
|
120
|
-
};
|
|
121
|
-
const selectDate = (type) => {
|
|
122
|
-
let day;
|
|
123
|
-
if (type === "prev-month") {
|
|
124
|
-
day = prevMonthDayjs.value;
|
|
125
|
-
} else if (type === "next-month") {
|
|
126
|
-
day = nextMonthDayjs.value;
|
|
127
|
-
} else if (type === "prev-year") {
|
|
128
|
-
day = prevYearDayjs.value;
|
|
129
|
-
} else if (type === "next-year") {
|
|
130
|
-
day = nextYearDayjs.value;
|
|
131
|
-
} else {
|
|
132
|
-
day = now;
|
|
133
|
-
}
|
|
134
|
-
if (day.isSame(date.value, "day"))
|
|
135
|
-
return;
|
|
136
|
-
pickDay(day);
|
|
137
|
-
};
|
|
138
|
-
useDeprecated({
|
|
139
|
-
from: '"dateCell"',
|
|
140
|
-
replacement: '"date-cell"',
|
|
141
|
-
scope: "ElCalendar",
|
|
142
|
-
version: "2.3.0",
|
|
143
|
-
ref: "https://element-plus.org/en-US/component/calendar.html#slots",
|
|
144
|
-
type: "Slot"
|
|
145
|
-
}, computed(() => !!solts.dateCell));
|
|
146
35
|
expose({
|
|
147
36
|
selectedDay: realSelectedDay,
|
|
148
37
|
pickDay,
|
|
@@ -168,7 +57,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
168
57
|
default: withCtx(() => [
|
|
169
58
|
createVNode(unref(ElButton), {
|
|
170
59
|
size: "small",
|
|
171
|
-
onClick: _cache[0] || (_cache[0] = ($event) => selectDate("prev-month"))
|
|
60
|
+
onClick: _cache[0] || (_cache[0] = ($event) => unref(selectDate)("prev-month"))
|
|
172
61
|
}, {
|
|
173
62
|
default: withCtx(() => [
|
|
174
63
|
createTextVNode(toDisplayString(unref(t)("el.datepicker.prevMonth")), 1)
|
|
@@ -177,7 +66,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
177
66
|
}),
|
|
178
67
|
createVNode(unref(ElButton), {
|
|
179
68
|
size: "small",
|
|
180
|
-
onClick: _cache[1] || (_cache[1] = ($event) => selectDate("today"))
|
|
69
|
+
onClick: _cache[1] || (_cache[1] = ($event) => unref(selectDate)("today"))
|
|
181
70
|
}, {
|
|
182
71
|
default: withCtx(() => [
|
|
183
72
|
createTextVNode(toDisplayString(unref(t)("el.datepicker.today")), 1)
|
|
@@ -186,7 +75,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
186
75
|
}),
|
|
187
76
|
createVNode(unref(ElButton), {
|
|
188
77
|
size: "small",
|
|
189
|
-
onClick: _cache[2] || (_cache[2] = ($event) => selectDate("next-month"))
|
|
78
|
+
onClick: _cache[2] || (_cache[2] = ($event) => unref(selectDate)("next-month"))
|
|
190
79
|
}, {
|
|
191
80
|
default: withCtx(() => [
|
|
192
81
|
createTextVNode(toDisplayString(unref(t)("el.datepicker.nextMonth")), 1)
|
|
@@ -206,7 +95,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
206
95
|
createVNode(DateTable, {
|
|
207
96
|
date: unref(date),
|
|
208
97
|
"selected-day": unref(realSelectedDay),
|
|
209
|
-
onPick: pickDay
|
|
98
|
+
onPick: unref(pickDay)
|
|
210
99
|
}, createSlots({ _: 2 }, [
|
|
211
100
|
_ctx.$slots["date-cell"] || _ctx.$slots.dateCell ? {
|
|
212
101
|
name: "date-cell",
|
|
@@ -214,7 +103,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
214
103
|
_ctx.$slots["date-cell"] ? renderSlot(_ctx.$slots, "date-cell", normalizeProps(mergeProps({ key: 0 }, data))) : renderSlot(_ctx.$slots, "dateCell", normalizeProps(mergeProps({ key: 1 }, data)))
|
|
215
104
|
])
|
|
216
105
|
} : void 0
|
|
217
|
-
]), 1032, ["date", "selected-day"])
|
|
106
|
+
]), 1032, ["date", "selected-day", "onPick"])
|
|
218
107
|
], 2)) : (openBlock(), createElementBlock("div", {
|
|
219
108
|
key: 1,
|
|
220
109
|
class: normalizeClass(unref(ns).e("body"))
|
|
@@ -226,7 +115,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
226
115
|
"selected-day": unref(realSelectedDay),
|
|
227
116
|
range: range_,
|
|
228
117
|
"hide-header": index !== 0,
|
|
229
|
-
onPick: pickDay
|
|
118
|
+
onPick: unref(pickDay)
|
|
230
119
|
}, createSlots({ _: 2 }, [
|
|
231
120
|
_ctx.$slots["date-cell"] || _ctx.$slots.dateCell ? {
|
|
232
121
|
name: "date-cell",
|
|
@@ -234,7 +123,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
234
123
|
_ctx.$slots["date-cell"] ? renderSlot(_ctx.$slots, "date-cell", normalizeProps(mergeProps({ key: 0 }, data))) : renderSlot(_ctx.$slots, "dateCell", normalizeProps(mergeProps({ key: 1 }, data)))
|
|
235
124
|
])
|
|
236
125
|
} : void 0
|
|
237
|
-
]), 1032, ["date", "selected-day", "range", "hide-header"]);
|
|
126
|
+
]), 1032, ["date", "selected-day", "range", "hide-header", "onPick"]);
|
|
238
127
|
}), 128))
|
|
239
128
|
], 2))
|
|
240
129
|
], 2);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar2.mjs","sources":["../../../../../../packages/components/calendar/src/calendar.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('header')\">\n <slot name=\"header\" :date=\"i18nDate\">\n <div :class=\"ns.e('title')\">{{ i18nDate }}</div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('button-group')\">\n <el-button-group>\n <el-button size=\"small\" @click=\"selectDate('prev-month')\">\n {{ t('el.datepicker.prevMonth') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('today')\">\n {{ t('el.datepicker.today') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('next-month')\">\n {{ t('el.datepicker.nextMonth') }}\n </el-button>\n </el-button-group>\n </div>\n </slot>\n </div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('body')\">\n <date-table :date=\"date\" :selected-day=\"realSelectedDay\" @pick=\"pickDay\">\n <template\n v-if=\"$slots['date-cell'] || $slots.dateCell\"\n #date-cell=\"data\"\n >\n <slot v-if=\"$slots['date-cell']\" name=\"date-cell\" v-bind=\"data\" />\n <slot v-else name=\"dateCell\" v-bind=\"data\" />\n </template>\n </date-table>\n </div>\n <div v-else :class=\"ns.e('body')\">\n <date-table\n v-for=\"(range_, index) in validatedRange\"\n :key=\"index\"\n :date=\"range_[0]\"\n :selected-day=\"realSelectedDay\"\n :range=\"range_\"\n :hide-header=\"index !== 0\"\n @pick=\"pickDay\"\n >\n <template\n v-if=\"$slots['date-cell'] || $slots.dateCell\"\n #date-cell=\"data\"\n >\n <slot v-if=\"$slots['date-cell']\" name=\"date-cell\" v-bind=\"data\" />\n <slot v-else name=\"dateCell\" v-bind=\"data\" />\n </template>\n </date-table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref, useSlots } from 'vue'\nimport dayjs from 'dayjs'\nimport { ElButton, ElButtonGroup } from '@element-plus/components/button'\nimport { useDeprecated, useLocale, useNamespace } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport { INPUT_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport DateTable from './date-table.vue'\nimport { calendarEmits, calendarProps } from './calendar'\n\nimport type { CalendarDateType } from './calendar'\nimport type { ComputedRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\nconst COMPONENT_NAME = 'ElCalendar'\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(calendarProps)\nconst emit = defineEmits(calendarEmits)\n\nconst solts = useSlots()\nconst ns = useNamespace('calendar')\nconst { t, lang } = useLocale()\n\nconst selectedDay = ref<Dayjs>()\nconst now = dayjs().locale(lang.value)\n\nconst realSelectedDay = computed<Dayjs | undefined>({\n get() {\n if (!props.modelValue) return selectedDay.value\n return date.value\n },\n set(val) {\n if (!val) return\n selectedDay.value = val\n const result = val.toDate()\n\n emit(INPUT_EVENT, result)\n emit(UPDATE_MODEL_EVENT, result)\n },\n})\n\n// if range is valid, we get a two-digit array\nconst validatedRange = computed(() => {\n if (!props.range) return []\n const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value))\n const [startDayjs, endDayjs] = rangeArrDayjs\n if (startDayjs.isAfter(endDayjs)) {\n debugWarn(COMPONENT_NAME, 'end time should be greater than start time')\n return []\n }\n if (startDayjs.isSame(endDayjs, 'month')) {\n // same month\n return calculateValidatedDateRange(startDayjs, endDayjs)\n } else {\n // two months\n if (startDayjs.add(1, 'month').month() !== endDayjs.month()) {\n debugWarn(\n COMPONENT_NAME,\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n return calculateValidatedDateRange(startDayjs, endDayjs)\n }\n})\n\nconst date: ComputedRef<Dayjs> = computed(() => {\n if (!props.modelValue) {\n if (realSelectedDay.value) {\n return realSelectedDay.value\n } else if (validatedRange.value.length) {\n return validatedRange.value[0][0]\n }\n return now\n } else {\n return dayjs(props.modelValue).locale(lang.value)\n }\n})\nconst prevMonthDayjs = computed(() => date.value.subtract(1, 'month').date(1))\nconst nextMonthDayjs = computed(() => date.value.add(1, 'month').date(1))\nconst prevYearDayjs = computed(() => date.value.subtract(1, 'year').date(1))\nconst nextYearDayjs = computed(() => date.value.add(1, 'year').date(1))\n\nconst i18nDate = computed(() => {\n const pickedMonth = `el.datepicker.month${date.value.format('M')}`\n return `${date.value.year()} ${t('el.datepicker.year')} ${t(pickedMonth)}`\n})\n\n// https://github.com/element-plus/element-plus/issues/3155\n// Calculate the validate date range according to the start and end dates\nconst calculateValidatedDateRange = (\n startDayjs: Dayjs,\n endDayjs: Dayjs\n): [Dayjs, Dayjs][] => {\n const firstDay = startDayjs.startOf('week')\n const lastDay = endDayjs.endOf('week')\n const firstMonth = firstDay.get('month')\n const lastMonth = lastDay.get('month')\n\n // Current mouth\n if (firstMonth === lastMonth) {\n return [[firstDay, lastDay]]\n }\n // Two adjacent months\n else if (firstMonth + 1 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the first month and the first day of the last month is in the same week\n const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, 'week')\n const lastMonthStartDay = isSameWeek\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Three consecutive months (compatible: 2021-01-30 to 2021-02-28)\n else if (\n firstMonth + 2 === lastMonth ||\n (firstMonth + 1) % 11 === lastMonth\n ) {\n const firstMonthLastDay = firstDay.endOf('month')\n const secondMonthFirstDay = firstDay.add(1, 'month').startOf('month')\n\n // Whether the last day of the first month and the second month is in the same week\n const secondMonthStartDay = firstMonthLastDay.isSame(\n secondMonthFirstDay,\n 'week'\n )\n ? secondMonthFirstDay.add(1, 'week')\n : secondMonthFirstDay\n\n const secondMonthLastDay = secondMonthStartDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the second month and the last day of the last month is in the same week\n const lastMonthStartDay = secondMonthLastDay.isSame(\n lastMonthFirstDay,\n 'week'\n )\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [secondMonthStartDay.startOf('week'), secondMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Other cases\n else {\n debugWarn(\n COMPONENT_NAME,\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n}\n\nconst pickDay = (day: Dayjs) => {\n realSelectedDay.value = day\n}\n\nconst selectDate = (type: CalendarDateType) => {\n let day: Dayjs\n if (type === 'prev-month') {\n day = prevMonthDayjs.value\n } else if (type === 'next-month') {\n day = nextMonthDayjs.value\n } else if (type === 'prev-year') {\n day = prevYearDayjs.value\n } else if (type === 'next-year') {\n day = nextYearDayjs.value\n } else {\n day = now\n }\n\n if (day.isSame(date.value, 'day')) return\n pickDay(day)\n}\n\nuseDeprecated(\n {\n from: '\"dateCell\"',\n replacement: '\"date-cell\"',\n scope: 'ElCalendar',\n version: '2.3.0',\n ref: 'https://element-plus.org/en-US/component/calendar.html#slots',\n type: 'Slot',\n },\n computed(() => !!solts.dateCell)\n)\n\ndefineExpose({\n /** @description currently selected date */\n selectedDay: realSelectedDay,\n /** @description select a specific date */\n pickDay,\n /** @description select date */\n selectDate,\n /** @description Calculate the validate date range according to the start and end dates */\n calculateValidatedDateRange,\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"calendar2.mjs","sources":["../../../../../../packages/components/calendar/src/calendar.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('header')\">\n <slot name=\"header\" :date=\"i18nDate\">\n <div :class=\"ns.e('title')\">{{ i18nDate }}</div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('button-group')\">\n <el-button-group>\n <el-button size=\"small\" @click=\"selectDate('prev-month')\">\n {{ t('el.datepicker.prevMonth') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('today')\">\n {{ t('el.datepicker.today') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('next-month')\">\n {{ t('el.datepicker.nextMonth') }}\n </el-button>\n </el-button-group>\n </div>\n </slot>\n </div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('body')\">\n <date-table :date=\"date\" :selected-day=\"realSelectedDay\" @pick=\"pickDay\">\n <template\n v-if=\"$slots['date-cell'] || $slots.dateCell\"\n #date-cell=\"data\"\n >\n <slot v-if=\"$slots['date-cell']\" name=\"date-cell\" v-bind=\"data\" />\n <slot v-else name=\"dateCell\" v-bind=\"data\" />\n </template>\n </date-table>\n </div>\n <div v-else :class=\"ns.e('body')\">\n <date-table\n v-for=\"(range_, index) in validatedRange\"\n :key=\"index\"\n :date=\"range_[0]\"\n :selected-day=\"realSelectedDay\"\n :range=\"range_\"\n :hide-header=\"index !== 0\"\n @pick=\"pickDay\"\n >\n <template\n v-if=\"$slots['date-cell'] || $slots.dateCell\"\n #date-cell=\"data\"\n >\n <slot v-if=\"$slots['date-cell']\" name=\"date-cell\" v-bind=\"data\" />\n <slot v-else name=\"dateCell\" v-bind=\"data\" />\n </template>\n </date-table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { ElButton, ElButtonGroup } from '@element-plus/components/button'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\n\nimport DateTable from './date-table.vue'\nimport { useCalendar } from './use-calendar'\nimport { calendarEmits, calendarProps } from './calendar'\n\nconst ns = useNamespace('calendar')\n\nconst COMPONENT_NAME = 'ElCalendar'\ndefineOptions({\n name: COMPONENT_NAME,\n})\n\nconst props = defineProps(calendarProps)\nconst emit = defineEmits(calendarEmits)\n\nconst {\n calculateValidatedDateRange,\n date,\n pickDay,\n realSelectedDay,\n selectDate,\n validatedRange,\n} = useCalendar(props, emit, COMPONENT_NAME)\n\nconst { t } = useLocale()\n\nconst i18nDate = computed(() => {\n const pickedMonth = `el.datepicker.month${date.value.format('M')}`\n return `${date.value.year()} ${t('el.datepicker.year')} ${t(pickedMonth)}`\n})\n\ndefineExpose({\n /** @description currently selected date */\n selectedDay: realSelectedDay,\n /** @description select a specific date */\n pickDay,\n /** @description select date */\n selectDate,\n /** @description Calculate the validate date range according to the start and end dates */\n calculateValidatedDateRange,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;mCAiEc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;;AALA,IAAM,MAAA,EAAA,GAAK,aAAa,UAAU,CAAA,CAAA;AAUlC,IAAM,MAAA;AAAA,MACJ,2BAAA;AAAA,MACA,IAAA;AAAA,MACA,OAAA;AAAA,MACA,eAAA;AAAA,MACA,UAAA;AAAA,MACA,cAAA;AAAA,KACE,GAAA,WAAA,CAAY,KAAO,EAAA,IAAA,EAAM,cAAc,CAAA,CAAA;AAE3C,IAAM,MAAA,EAAE,MAAM,SAAU,EAAA,CAAA;AAExB,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC9B,MAAA,MAAM,WAAc,GAAA,CAAA,mBAAA,EAAsB,IAAK,CAAA,KAAA,CAAM,OAAO,GAAG,CAAA,CAAA,CAAA,CAAA;AAC/D,MAAO,OAAA,CAAA,EAAG,KAAK,KAAM,CAAA,IAAA,MAAU,CAAE,CAAA,oBAAoB,CAAK,CAAA,CAAA,EAAA,CAAA,CAAE,WAAW,CAAA,CAAA,CAAA,CAAA;AAAA,KACxE,CAAA,CAAA;AAED,IAAa,MAAA,CAAA;AAAA,MAEX,WAAa,EAAA,eAAA;AAAA,MAEb,OAAA;AAAA,MAEA,UAAA;AAAA,MAEA,2BAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import type DateTable from './date-table.vue';
|
|
2
|
+
import type Calendar from './calendar.vue';
|
|
2
3
|
export declare type DateTableInstance = InstanceType<typeof DateTable>;
|
|
3
4
|
export declare type CalendarDateTableInstance = DateTableInstance;
|
|
5
|
+
export declare type CalendarInstance = InstanceType<typeof Calendar>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import dayjs from 'dayjs';
|
|
2
|
+
import type { ComputedRef, SetupContext } from 'vue';
|
|
3
|
+
import type { Dayjs } from 'dayjs';
|
|
4
|
+
import type { CalendarDateType, CalendarEmits, CalendarProps } from './calendar';
|
|
5
|
+
export declare const useCalendar: (props: CalendarProps, emit: SetupContext<CalendarEmits>['emit'], componentName: string) => {
|
|
6
|
+
calculateValidatedDateRange: (startDayjs: Dayjs, endDayjs: Dayjs) => [Dayjs, Dayjs][];
|
|
7
|
+
date: ComputedRef<dayjs.Dayjs>;
|
|
8
|
+
realSelectedDay: import("vue").WritableComputedRef<dayjs.Dayjs | undefined>;
|
|
9
|
+
pickDay: (day: Dayjs) => void;
|
|
10
|
+
selectDate: (type: CalendarDateType) => void;
|
|
11
|
+
validatedRange: ComputedRef<[dayjs.Dayjs, dayjs.Dayjs][]>;
|
|
12
|
+
};
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { useSlots, ref, computed } from 'vue';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import '../../../hooks/index.mjs';
|
|
4
|
+
import '../../../utils/index.mjs';
|
|
5
|
+
import '../../../constants/index.mjs';
|
|
6
|
+
import { useLocale } from '../../../hooks/use-locale/index.mjs';
|
|
7
|
+
import { INPUT_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';
|
|
8
|
+
import { debugWarn } from '../../../utils/error.mjs';
|
|
9
|
+
import { useDeprecated } from '../../../hooks/use-deprecated/index.mjs';
|
|
10
|
+
|
|
11
|
+
const adjacentMonth = (start, end) => {
|
|
12
|
+
const firstMonthLastDay = start.endOf("month");
|
|
13
|
+
const lastMonthFirstDay = end.startOf("month");
|
|
14
|
+
const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, "week");
|
|
15
|
+
const lastMonthStartDay = isSameWeek ? lastMonthFirstDay.add(1, "week") : lastMonthFirstDay;
|
|
16
|
+
return [
|
|
17
|
+
[start, firstMonthLastDay],
|
|
18
|
+
[lastMonthStartDay.startOf("week"), end]
|
|
19
|
+
];
|
|
20
|
+
};
|
|
21
|
+
const threeConsecutiveMonth = (start, end) => {
|
|
22
|
+
const firstMonthLastDay = start.endOf("month");
|
|
23
|
+
const secondMonthFirstDay = start.add(1, "month").startOf("month");
|
|
24
|
+
const secondMonthStartDay = firstMonthLastDay.isSame(secondMonthFirstDay, "week") ? secondMonthFirstDay.add(1, "week") : secondMonthFirstDay;
|
|
25
|
+
const secondMonthLastDay = secondMonthStartDay.endOf("month");
|
|
26
|
+
const lastMonthFirstDay = end.startOf("month");
|
|
27
|
+
const lastMonthStartDay = secondMonthLastDay.isSame(lastMonthFirstDay, "week") ? lastMonthFirstDay.add(1, "week") : lastMonthFirstDay;
|
|
28
|
+
return [
|
|
29
|
+
[start, firstMonthLastDay],
|
|
30
|
+
[secondMonthStartDay.startOf("week"), secondMonthLastDay],
|
|
31
|
+
[lastMonthStartDay.startOf("week"), end]
|
|
32
|
+
];
|
|
33
|
+
};
|
|
34
|
+
const useCalendar = (props, emit, componentName) => {
|
|
35
|
+
const slots = useSlots();
|
|
36
|
+
const { lang } = useLocale();
|
|
37
|
+
const selectedDay = ref();
|
|
38
|
+
const now = dayjs().locale(lang.value);
|
|
39
|
+
const realSelectedDay = computed({
|
|
40
|
+
get() {
|
|
41
|
+
if (!props.modelValue)
|
|
42
|
+
return selectedDay.value;
|
|
43
|
+
return date.value;
|
|
44
|
+
},
|
|
45
|
+
set(val) {
|
|
46
|
+
if (!val)
|
|
47
|
+
return;
|
|
48
|
+
selectedDay.value = val;
|
|
49
|
+
const result = val.toDate();
|
|
50
|
+
emit(INPUT_EVENT, result);
|
|
51
|
+
emit(UPDATE_MODEL_EVENT, result);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
const validatedRange = computed(() => {
|
|
55
|
+
if (!props.range)
|
|
56
|
+
return [];
|
|
57
|
+
const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value));
|
|
58
|
+
const [startDayjs, endDayjs] = rangeArrDayjs;
|
|
59
|
+
if (startDayjs.isAfter(endDayjs)) {
|
|
60
|
+
debugWarn(componentName, "end time should be greater than start time");
|
|
61
|
+
return [];
|
|
62
|
+
}
|
|
63
|
+
if (startDayjs.isSame(endDayjs, "month")) {
|
|
64
|
+
return calculateValidatedDateRange(startDayjs, endDayjs);
|
|
65
|
+
} else {
|
|
66
|
+
if (startDayjs.add(1, "month").month() !== endDayjs.month()) {
|
|
67
|
+
debugWarn(componentName, "start time and end time interval must not exceed two months");
|
|
68
|
+
return [];
|
|
69
|
+
}
|
|
70
|
+
return calculateValidatedDateRange(startDayjs, endDayjs);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
const date = computed(() => {
|
|
74
|
+
if (!props.modelValue) {
|
|
75
|
+
return realSelectedDay.value || (validatedRange.value.length ? validatedRange.value[0][0] : now);
|
|
76
|
+
} else {
|
|
77
|
+
return dayjs(props.modelValue).locale(lang.value);
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
const prevMonthDayjs = computed(() => date.value.subtract(1, "month").date(1));
|
|
81
|
+
const nextMonthDayjs = computed(() => date.value.add(1, "month").date(1));
|
|
82
|
+
const prevYearDayjs = computed(() => date.value.subtract(1, "year").date(1));
|
|
83
|
+
const nextYearDayjs = computed(() => date.value.add(1, "year").date(1));
|
|
84
|
+
const calculateValidatedDateRange = (startDayjs, endDayjs) => {
|
|
85
|
+
const firstDay = startDayjs.startOf("week");
|
|
86
|
+
const lastDay = endDayjs.endOf("week");
|
|
87
|
+
const firstMonth = firstDay.get("month");
|
|
88
|
+
const lastMonth = lastDay.get("month");
|
|
89
|
+
if (firstMonth === lastMonth) {
|
|
90
|
+
return [[firstDay, lastDay]];
|
|
91
|
+
} else if (firstMonth + 1 === lastMonth) {
|
|
92
|
+
return adjacentMonth(firstDay, lastDay);
|
|
93
|
+
} else if (firstMonth + 2 === lastMonth || (firstMonth + 1) % 11 === lastMonth) {
|
|
94
|
+
return threeConsecutiveMonth(firstDay, lastDay);
|
|
95
|
+
} else {
|
|
96
|
+
debugWarn(componentName, "start time and end time interval must not exceed two months");
|
|
97
|
+
return [];
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
const pickDay = (day) => {
|
|
101
|
+
realSelectedDay.value = day;
|
|
102
|
+
};
|
|
103
|
+
const selectDate = (type) => {
|
|
104
|
+
const dateMap = {
|
|
105
|
+
"prev-month": prevMonthDayjs.value,
|
|
106
|
+
"next-month": nextMonthDayjs.value,
|
|
107
|
+
"prev-year": prevYearDayjs.value,
|
|
108
|
+
"next-year": nextYearDayjs.value,
|
|
109
|
+
today: now
|
|
110
|
+
};
|
|
111
|
+
const day = dateMap[type];
|
|
112
|
+
if (!day.isSame(date.value, "day")) {
|
|
113
|
+
pickDay(day);
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
useDeprecated({
|
|
117
|
+
from: '"dateCell"',
|
|
118
|
+
replacement: '"date-cell"',
|
|
119
|
+
scope: "ElCalendar",
|
|
120
|
+
version: "2.3.0",
|
|
121
|
+
ref: "https://element-plus.org/en-US/component/calendar.html#slots",
|
|
122
|
+
type: "Slot"
|
|
123
|
+
}, computed(() => !!slots.dateCell));
|
|
124
|
+
return {
|
|
125
|
+
calculateValidatedDateRange,
|
|
126
|
+
date,
|
|
127
|
+
realSelectedDay,
|
|
128
|
+
pickDay,
|
|
129
|
+
selectDate,
|
|
130
|
+
validatedRange
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
export { useCalendar };
|
|
135
|
+
//# sourceMappingURL=use-calendar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-calendar.mjs","sources":["../../../../../../packages/components/calendar/src/use-calendar.ts"],"sourcesContent":["import { computed, ref, useSlots } from 'vue'\nimport dayjs from 'dayjs'\nimport { useDeprecated, useLocale } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport { INPUT_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { ComputedRef, SetupContext } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type { CalendarDateType, CalendarEmits, CalendarProps } from './calendar'\n\nconst adjacentMonth = (start: Dayjs, end: Dayjs): [Dayjs, Dayjs][] => {\n const firstMonthLastDay = start.endOf('month')\n const lastMonthFirstDay = end.startOf('month')\n\n // Whether the last day of the first month and the first day of the last month is in the same week\n const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, 'week')\n const lastMonthStartDay = isSameWeek\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [start, firstMonthLastDay],\n [lastMonthStartDay.startOf('week'), end],\n ]\n}\n\nconst threeConsecutiveMonth = (start: Dayjs, end: Dayjs): [Dayjs, Dayjs][] => {\n const firstMonthLastDay = start.endOf('month')\n const secondMonthFirstDay = start.add(1, 'month').startOf('month')\n\n // Whether the last day of the first month and the second month is in the same week\n const secondMonthStartDay = firstMonthLastDay.isSame(\n secondMonthFirstDay,\n 'week'\n )\n ? secondMonthFirstDay.add(1, 'week')\n : secondMonthFirstDay\n\n const secondMonthLastDay = secondMonthStartDay.endOf('month')\n const lastMonthFirstDay = end.startOf('month')\n\n // Whether the last day of the second month and the last day of the last month is in the same week\n const lastMonthStartDay = secondMonthLastDay.isSame(lastMonthFirstDay, 'week')\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [start, firstMonthLastDay],\n [secondMonthStartDay.startOf('week'), secondMonthLastDay],\n [lastMonthStartDay.startOf('week'), end],\n ]\n}\n\nexport const useCalendar = (\n props: CalendarProps,\n emit: SetupContext<CalendarEmits>['emit'],\n componentName: string\n) => {\n const slots = useSlots()\n const { lang } = useLocale()\n\n const selectedDay = ref<Dayjs>()\n const now = dayjs().locale(lang.value)\n\n const realSelectedDay = computed<Dayjs | undefined>({\n get() {\n if (!props.modelValue) return selectedDay.value\n return date.value\n },\n set(val) {\n if (!val) return\n selectedDay.value = val\n const result = val.toDate()\n\n emit(INPUT_EVENT, result)\n emit(UPDATE_MODEL_EVENT, result)\n },\n })\n\n // if range is valid, we get a two-digit array\n const validatedRange = computed(() => {\n if (!props.range) return []\n const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value))\n const [startDayjs, endDayjs] = rangeArrDayjs\n if (startDayjs.isAfter(endDayjs)) {\n debugWarn(componentName, 'end time should be greater than start time')\n return []\n }\n if (startDayjs.isSame(endDayjs, 'month')) {\n // same month\n return calculateValidatedDateRange(startDayjs, endDayjs)\n } else {\n // two months\n if (startDayjs.add(1, 'month').month() !== endDayjs.month()) {\n debugWarn(\n componentName,\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n return calculateValidatedDateRange(startDayjs, endDayjs)\n }\n })\n\n const date: ComputedRef<Dayjs> = computed(() => {\n if (!props.modelValue) {\n return (\n realSelectedDay.value ||\n (validatedRange.value.length ? validatedRange.value[0][0] : now)\n )\n } else {\n return dayjs(props.modelValue).locale(lang.value)\n }\n })\n const prevMonthDayjs = computed(() => date.value.subtract(1, 'month').date(1))\n const nextMonthDayjs = computed(() => date.value.add(1, 'month').date(1))\n const prevYearDayjs = computed(() => date.value.subtract(1, 'year').date(1))\n const nextYearDayjs = computed(() => date.value.add(1, 'year').date(1))\n\n // https://github.com/element-plus/element-plus/issues/3155\n // Calculate the validate date range according to the start and end dates\n const calculateValidatedDateRange = (\n startDayjs: Dayjs,\n endDayjs: Dayjs\n ): [Dayjs, Dayjs][] => {\n const firstDay = startDayjs.startOf('week')\n const lastDay = endDayjs.endOf('week')\n const firstMonth = firstDay.get('month')\n const lastMonth = lastDay.get('month')\n\n // Current mouth\n if (firstMonth === lastMonth) {\n return [[firstDay, lastDay]]\n }\n // Two adjacent months\n else if (firstMonth + 1 === lastMonth) {\n return adjacentMonth(firstDay, lastDay)\n }\n // Three consecutive months (compatible: 2021-01-30 to 2021-02-28)\n else if (\n firstMonth + 2 === lastMonth ||\n (firstMonth + 1) % 11 === lastMonth\n ) {\n return threeConsecutiveMonth(firstDay, lastDay)\n }\n // Other cases\n else {\n debugWarn(\n componentName,\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n }\n\n const pickDay = (day: Dayjs) => {\n realSelectedDay.value = day\n }\n\n const selectDate = (type: CalendarDateType) => {\n const dateMap: Record<CalendarDateType, Dayjs> = {\n 'prev-month': prevMonthDayjs.value,\n 'next-month': nextMonthDayjs.value,\n 'prev-year': prevYearDayjs.value,\n 'next-year': nextYearDayjs.value,\n today: now,\n }\n\n const day = dateMap[type]\n\n if (!day.isSame(date.value, 'day')) {\n pickDay(day)\n }\n }\n\n useDeprecated(\n {\n from: '\"dateCell\"',\n replacement: '\"date-cell\"',\n scope: 'ElCalendar',\n version: '2.3.0',\n ref: 'https://element-plus.org/en-US/component/calendar.html#slots',\n type: 'Slot',\n },\n computed(() => !!slots.dateCell)\n )\n\n return {\n calculateValidatedDateRange,\n date,\n realSelectedDay,\n pickDay,\n selectDate,\n validatedRange,\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -55,7 +55,7 @@ export declare const useRangePicker: (props: PanelRangeSharedProps, { defaultVal
|
|
|
55
55
|
startOf: (unit: import("dayjs").OpUnitType) => Dayjs;
|
|
56
56
|
endOf: (unit: import("dayjs").OpUnitType) => Dayjs;
|
|
57
57
|
format: (template?: string | undefined) => string;
|
|
58
|
-
diff: (date?: string | number | Date | Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "
|
|
58
|
+
diff: (date?: string | number | Date | Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "day" | "hour" | "minute" | "second" | "millisecond" | "hours" | "minutes" | "seconds" | "s" | "milliseconds" | "days" | "years" | "d" | "h" | "m" | "ms" | "w" | "quarter" | "quarters" | "Q" | undefined, float?: boolean | undefined) => number;
|
|
59
59
|
valueOf: () => number;
|
|
60
60
|
unix: () => number;
|
|
61
61
|
daysInMonth: () => number;
|
|
@@ -167,7 +167,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
167
167
|
startOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
|
|
168
168
|
endOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
|
|
169
169
|
format: (template?: string | undefined) => string;
|
|
170
|
-
diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "
|
|
170
|
+
diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "day" | "hour" | "minute" | "second" | "millisecond" | "hours" | "minutes" | "seconds" | "s" | "milliseconds" | "days" | "years" | "d" | "h" | "m" | "ms" | "w" | "quarter" | "quarters" | "Q" | undefined, float?: boolean | undefined) => number;
|
|
171
171
|
valueOf: () => number;
|
|
172
172
|
unix: () => number;
|
|
173
173
|
daysInMonth: () => number;
|
|
@@ -303,7 +303,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
303
303
|
startOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
|
|
304
304
|
endOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
|
|
305
305
|
format: (template?: string | undefined) => string;
|
|
306
|
-
diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "
|
|
306
|
+
diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "day" | "hour" | "minute" | "second" | "millisecond" | "hours" | "minutes" | "seconds" | "s" | "milliseconds" | "days" | "years" | "d" | "h" | "m" | "ms" | "w" | "quarter" | "quarters" | "Q" | undefined, float?: boolean | undefined) => number;
|
|
307
307
|
valueOf: () => number;
|
|
308
308
|
unix: () => number;
|
|
309
309
|
daysInMonth: () => number;
|
|
@@ -332,7 +332,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
332
332
|
isSameOrAfter: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
|
|
333
333
|
isSameOrBefore: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
|
|
334
334
|
} | undefined;
|
|
335
|
-
type?: ("week" | "normal" | "
|
|
335
|
+
type?: ("week" | "normal" | "prev-month" | "next-month" | "today") | undefined;
|
|
336
336
|
}[][]>;
|
|
337
337
|
focusWithClick: boolean;
|
|
338
338
|
firstDayOfWeek: any;
|
|
@@ -406,7 +406,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
406
406
|
startOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
|
|
407
407
|
endOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
|
|
408
408
|
format: (template?: string | undefined) => string;
|
|
409
|
-
diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "
|
|
409
|
+
diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "day" | "hour" | "minute" | "second" | "millisecond" | "hours" | "minutes" | "seconds" | "s" | "milliseconds" | "days" | "years" | "d" | "h" | "m" | "ms" | "w" | "quarter" | "quarters" | "Q" | undefined, float?: boolean | undefined) => number;
|
|
410
410
|
valueOf: () => number;
|
|
411
411
|
unix: () => number;
|
|
412
412
|
daysInMonth: () => number;
|
|
@@ -542,7 +542,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
542
542
|
startOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
|
|
543
543
|
endOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
|
|
544
544
|
format: (template?: string | undefined) => string;
|
|
545
|
-
diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "
|
|
545
|
+
diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "day" | "hour" | "minute" | "second" | "millisecond" | "hours" | "minutes" | "seconds" | "s" | "milliseconds" | "days" | "years" | "d" | "h" | "m" | "ms" | "w" | "quarter" | "quarters" | "Q" | undefined, float?: boolean | undefined) => number;
|
|
546
546
|
valueOf: () => number;
|
|
547
547
|
unix: () => number;
|
|
548
548
|
daysInMonth: () => number;
|
|
@@ -571,7 +571,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
571
571
|
isSameOrAfter: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
|
|
572
572
|
isSameOrBefore: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
|
|
573
573
|
} | undefined;
|
|
574
|
-
type?: ("week" | "normal" | "
|
|
574
|
+
type?: ("week" | "normal" | "prev-month" | "next-month" | "today") | undefined;
|
|
575
575
|
}[][]>;
|
|
576
576
|
focus: () => Promise<void>;
|
|
577
577
|
isNormalDay: (type?: string) => boolean;
|