UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 21.2 kB
{"version":3,"file":"panel-month-range.mjs","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-month-range.vue"],"sourcesContent":["<template>\n <div\n class=\"el-picker-panel el-date-range-picker\"\n :class=\"[\n {\n 'has-sidebar': $slots.sidebar || hasShortcuts,\n },\n ]\"\n >\n <div class=\"el-picker-panel__body-wrapper\">\n <slot name=\"sidebar\" class=\"el-picker-panel__sidebar\" />\n <div v-if=\"hasShortcuts\" class=\"el-picker-panel__sidebar\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n type=\"button\"\n class=\"el-picker-panel__shortcut\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div class=\"el-picker-panel__body\">\n <div\n class=\"el-picker-panel__content el-date-range-picker__content is-left\"\n >\n <div class=\"el-date-range-picker__header\">\n <button\n type=\"button\"\n class=\"el-picker-panel__icon-btn d-arrow-left\"\n @click=\"leftPrevYear\"\n >\n <el-icon><d-arrow-left /></el-icon>\n </button>\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"{ 'is-disabled': !enableYearArrow }\"\n class=\"el-picker-panel__icon-btn d-arrow-right\"\n @click=\"leftNextYear\"\n >\n <el-icon><d-arrow-right /></el-icon>\n </button>\n <div>{{ leftLabel }}</div>\n </div>\n <month-table\n selection-mode=\"range\"\n :date=\"leftDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div\n class=\"el-picker-panel__content el-date-range-picker__content is-right\"\n >\n <div class=\"el-date-range-picker__header\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow\"\n :class=\"{ 'is-disabled': !enableYearArrow }\"\n class=\"el-picker-panel__icon-btn d-arrow-left\"\n @click=\"rightPrevYear\"\n >\n <el-icon><d-arrow-left /></el-icon>\n </button>\n <button\n type=\"button\"\n class=\"el-picker-panel__icon-btn d-arrow-right\"\n @click=\"rightNextYear\"\n >\n <el-icon><d-arrow-right /></el-icon>\n </button>\n <div>{{ rightLabel }}</div>\n </div>\n <month-table\n selection-mode=\"range\"\n :date=\"rightDate\"\n :min-date=\"minDate\"\n :max-date=\"maxDate\"\n :range-state=\"rangeState\"\n :disabled-date=\"disabledDate\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, inject, ref, toRef, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport MonthTable from './basic-month-table.vue'\n\nimport type { PropType } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\nexport default defineComponent({\n components: { MonthTable, ElIcon, DArrowLeft, DArrowRight },\n\n props: {\n unlinkPanels: Boolean,\n parsedValue: {\n type: Array as PropType<Dayjs[]>,\n },\n },\n\n emits: ['pick', 'set-picker-option'],\n\n setup(props, ctx) {\n const { t, lang } = useLocale()\n const leftDate = ref(dayjs().locale(lang.value))\n const rightDate = ref(dayjs().locale(lang.value).add(1, 'year'))\n\n const hasShortcuts = computed(() => !!shortcuts.length)\n\n const handleShortcutClick = (shortcut) => {\n const shortcutValues =\n typeof shortcut.value === 'function' ? shortcut.value() : shortcut.value\n if (shortcutValues) {\n ctx.emit('pick', [\n dayjs(shortcutValues[0]).locale(lang.value),\n dayjs(shortcutValues[1]).locale(lang.value),\n ])\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick(ctx)\n }\n }\n\n const leftPrevYear = () => {\n leftDate.value = leftDate.value.subtract(1, 'year')\n if (!props.unlinkPanels) {\n rightDate.value = rightDate.value.subtract(1, 'year')\n }\n }\n\n const rightNextYear = () => {\n if (!props.unlinkPanels) {\n leftDate.value = leftDate.value.add(1, 'year')\n }\n rightDate.value = rightDate.value.add(1, 'year')\n }\n\n const leftNextYear = () => {\n leftDate.value = leftDate.value.add(1, 'year')\n }\n\n const rightPrevYear = () => {\n rightDate.value = rightDate.value.subtract(1, 'year')\n }\n const leftLabel = computed(() => {\n return `${leftDate.value.year()} ${t('el.datepicker.year')}`\n })\n\n const rightLabel = computed(() => {\n return `${rightDate.value.year()} ${t('el.datepicker.year')}`\n })\n\n const leftYear = computed(() => {\n return leftDate.value.year()\n })\n\n const rightYear = computed(() => {\n return rightDate.value.year() === leftDate.value.year()\n ? leftDate.value.year() + 1\n : rightDate.value.year()\n })\n\n const enableYearArrow = computed(() => {\n return props.unlinkPanels && rightYear.value > leftYear.value + 1\n })\n\n const minDate = ref(null)\n const maxDate = ref(null)\n\n const rangeState = ref({\n endDate: null,\n selecting: false,\n })\n\n const handleChangeRange = (val) => {\n rangeState.value = val\n }\n\n const handleRangePick = (val, close = true) => {\n // const defaultTime = props.defaultTime || []\n // const minDate_ = modifyWithTimeString(val.minDate, defaultTime[0])\n // const maxDate_ = modifyWithTimeString(val.maxDate, defaultTime[1])\n // todo\n const minDate_ = val.minDate\n const maxDate_ = val.maxDate\n if (maxDate.value === maxDate_ && minDate.value === minDate_) {\n return\n }\n maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleConfirm()\n }\n\n const isValidValue = (value) => {\n return (\n Array.isArray(value) &&\n value &&\n value[0] &&\n value[1] &&\n value[0].valueOf() <= value[1].valueOf()\n )\n }\n\n const handleConfirm = (visible = false) => {\n if (isValidValue([minDate.value, maxDate.value])) {\n ctx.emit('pick', [minDate.value, maxDate.value], visible)\n }\n }\n\n const onSelect = (selecting) => {\n rangeState.value.selecting = selecting\n if (!selecting) {\n rangeState.value.endDate = null\n }\n }\n\n const formatToString = (value) => {\n return value.map((_) => _.format(format))\n }\n\n const getDefaultValue = () => {\n let start: Dayjs\n if (Array.isArray(defaultValue.value)) {\n const left = dayjs(defaultValue.value[0])\n let right = dayjs(defaultValue.value[1])\n if (!props.unlinkPanels) {\n right = left.add(1, 'year')\n }\n return [left, right]\n } else if (defaultValue.value) {\n start = dayjs(defaultValue.value)\n } else {\n start = dayjs()\n }\n start = start.locale(lang.value)\n return [start, start.add(1, 'year')]\n }\n\n // pickerBase.hub.emit('SetPickerOption', ['isValidValue', isValidValue])\n ctx.emit('set-picker-option', ['formatToString', formatToString])\n const pickerBase = inject('EP_PICKER_BASE') as any\n const { shortcuts, disabledDate, format } = pickerBase.props\n const defaultValue = toRef(pickerBase.props, 'defaultValue')\n\n watch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n const defaultArr = getDefaultValue()\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n }\n },\n { immediate: true }\n )\n\n watch(\n () => props.parsedValue,\n (newVal) => {\n if (newVal && newVal.length === 2) {\n minDate.value = newVal[0]\n maxDate.value = newVal[1]\n leftDate.value = minDate.value\n if (props.unlinkPanels && maxDate.value) {\n const minDateYear = minDate.value.year()\n const maxDateYear = maxDate.value.year()\n rightDate.value =\n minDateYear === maxDateYear\n ? maxDate.value.add(1, 'year')\n : maxDate.value\n } else {\n rightDate.value = leftDate.value.add(1, 'year')\n }\n } else {\n const defaultArr = getDefaultValue()\n minDate.value = null\n maxDate.value = null\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n }\n },\n { immediate: true }\n )\n\n return {\n shortcuts,\n disabledDate,\n onSelect,\n handleRangePick,\n rangeState,\n handleChangeRange,\n minDate,\n maxDate,\n enableYearArrow,\n leftLabel,\n rightLabel,\n leftNextYear,\n leftPrevYear,\n rightNextYear,\n rightPrevYear,\n t,\n leftDate,\n rightDate,\n hasShortcuts,\n handleShortcutClick,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_openBlock","_Fragment","_renderList","_toDisplayString","_createVNode","_withCtx"],"mappings":"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"}