UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 19.5 kB
{"version":3,"file":"panel-year-range.mjs","sources":["../../../../../../../packages/components/date-picker-panel/src/date-picker-com/panel-year-range.vue"],"sourcesContent":["<template>\n <div :class=\"panelKls\">\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n :disabled=\"yearRangeDisabled\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div :class=\"leftPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n type=\"button\"\n :class=\"leftPanelKls.arrowLeftBtn\"\n :disabled=\"yearRangeDisabled\"\n @click=\"leftPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\n :class=\"leftPanelKls.arrowRightBtn\"\n @click=\"leftNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ leftLabel }}</div>\n </div>\n <year-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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\n @changerange=\"handleChangeRange\"\n @pick=\"handleRangePick\"\n @select=\"onSelect\"\n />\n </div>\n <div :class=\"rightPanelKls.content\">\n <div :class=\"drpNs.e('header')\">\n <button\n v-if=\"unlinkPanels\"\n type=\"button\"\n :disabled=\"!enableYearArrow || yearRangeDisabled\"\n :class=\"rightPanelKls.arrowLeftBtn\"\n @click=\"rightPrevYear\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :class=\"rightPanelKls.arrowRightBtn\"\n :disabled=\"yearRangeDisabled\"\n @click=\"rightNextYear\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n <div>{{ rightLabel }}</div>\n </div>\n <year-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 :disabled=\"yearRangeDisabled\"\n :cell-class-name=\"cellClassName\"\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\" setup>\nimport { computed, inject, ref, toRef, unref, useSlots, watch } from 'vue'\nimport dayjs from 'dayjs'\nimport { DArrowLeft, DArrowRight } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport { useLocale } from '@element-plus/hooks'\nimport { PICKER_BASE_INJECTION_KEY } from '@element-plus/components/time-picker'\nimport {\n panelYearRangeEmits,\n panelYearRangeProps,\n} from '../props/panel-year-range'\nimport { useYearRangeHeader } from '../composables/use-year-range-header'\nimport { useRangePicker } from '../composables/use-range-picker'\nimport {\n correctlyParseUserInput,\n getDefaultValue,\n isValidRange,\n} from '../utils'\nimport { ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY } from '../constants'\nimport YearTable from './basic-year-table.vue'\nimport { useFormDisabled } from '@element-plus/components/form'\n\nimport type { Dayjs } from 'dayjs'\n\ndefineOptions({\n name: 'DatePickerYearRange',\n})\n\nconst props = defineProps(panelYearRangeProps)\nconst emit = defineEmits(panelYearRangeEmits)\nconst step = 10\nconst unit = 'year'\n\nconst { lang } = useLocale()\nconst leftDate = ref(dayjs().locale(lang.value))\nconst rightDate = ref(dayjs().locale(lang.value).add(step, unit))\nconst isDefaultFormat = inject(\n ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY,\n undefined\n) as any\nconst pickerBase = inject(PICKER_BASE_INJECTION_KEY) as any\nconst { shortcuts, disabledDate, cellClassName } = pickerBase.props\nconst format = toRef(pickerBase.props, 'format')\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst {\n minDate,\n maxDate,\n rangeState,\n ppNs,\n drpNs,\n\n handleChangeRange,\n handleRangeConfirm,\n handleShortcutClick,\n onSelect,\n parseValue,\n} = useRangePicker(props, {\n defaultValue,\n leftDate,\n rightDate,\n step,\n unit,\n sortDates,\n})\n\nconst {\n leftPrevYear,\n rightNextYear,\n leftNextYear,\n rightPrevYear,\n leftLabel,\n rightLabel,\n leftYear,\n rightYear,\n} = useYearRangeHeader({\n unlinkPanels: toRef(props, 'unlinkPanels'),\n leftDate,\n rightDate,\n})\n\nconst yearRangeDisabled = useFormDisabled()\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst panelKls = computed(() => [\n ppNs.b(),\n drpNs.b(),\n ppNs.is('border', props.border),\n ppNs.is('disabled', yearRangeDisabled.value),\n {\n 'has-sidebar': Boolean(useSlots().sidebar) || hasShortcuts.value,\n },\n])\n\nconst leftPanelKls = computed(() => {\n return {\n content: [ppNs.e('content'), drpNs.e('content'), 'is-left'],\n arrowLeftBtn: [ppNs.e('icon-btn'), 'd-arrow-left'],\n arrowRightBtn: [\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.value),\n 'd-arrow-right',\n ],\n }\n})\n\nconst rightPanelKls = computed(() => {\n return {\n content: [ppNs.e('content'), drpNs.e('content'), 'is-right'],\n arrowLeftBtn: [\n ppNs.e('icon-btn'),\n ppNs.is('disabled', !enableYearArrow.value || yearRangeDisabled.value),\n 'd-arrow-left',\n ],\n arrowRightBtn: [ppNs.e('icon-btn'), 'd-arrow-right'],\n }\n})\n\nconst enableYearArrow = computed(() => {\n return props.unlinkPanels && rightYear.value > leftYear.value + 1\n})\n\ntype RangePickValue = {\n minDate: Dayjs\n maxDate: Dayjs\n}\nconst handleRangePick = (val: RangePickValue, close = true) => {\n const minDate_ = val.minDate\n const maxDate_ = val.maxDate\n if (maxDate.value === maxDate_ && minDate.value === minDate_) {\n return\n }\n emit('calendar-change', [minDate_.toDate(), maxDate_ && maxDate_.toDate()])\n maxDate.value = maxDate_\n minDate.value = minDate_\n\n if (!close) return\n handleRangeConfirm()\n}\n\nconst parseUserInput = (value: Dayjs | Dayjs[]) => {\n return correctlyParseUserInput(\n value,\n format.value,\n lang.value,\n isDefaultFormat\n )\n}\n\nconst isValidValue = (date: [Dayjs, Dayjs]) => {\n return (\n isValidRange(date) &&\n (disabledDate\n ? !disabledDate(date[0].toDate()) && !disabledDate(date[1].toDate())\n : true)\n )\n}\n\nconst handleClear = () => {\n let valueOnClear = null\n if (pickerBase?.emptyValues) {\n valueOnClear = pickerBase.emptyValues.valueOnClear.value\n }\n const defaultArr = getDefaultValue(unref(defaultValue), {\n lang: unref(lang),\n step,\n unit,\n unlinkPanels: props.unlinkPanels,\n })\n leftDate.value = defaultArr[0]\n rightDate.value = defaultArr[1]\n emit('pick', valueOnClear)\n}\n\nfunction sortDates(minDate: Dayjs | undefined, maxDate: Dayjs | undefined) {\n if (props.unlinkPanels && maxDate) {\n const minDateYear = minDate?.year() || 0\n const maxDateYear = maxDate.year()\n\n rightDate.value =\n minDateYear + step > maxDateYear ? maxDate.add(step, unit) : maxDate\n } else {\n rightDate.value = leftDate.value.add(step, unit)\n }\n}\n\nwatch(\n () => props.visible,\n (visible) => {\n if (!visible && rangeState.value.selecting) {\n parseValue(props.parsedValue)\n onSelect(false)\n }\n }\n)\n\nemit('set-picker-option', ['isValidValue', isValidValue])\nemit('set-picker-option', ['parseUserInput', parseUserInput])\nemit('set-picker-option', ['handleClear', handleClear])\n</script>\n"],"names":["minDate","maxDate","_openBlock","_createElementBlock","_normalizeClass","_createElementVNode","_unref","_renderSlot","_Fragment","_renderList","_toDisplayString","_createVNode","_withCtx","unlinkPanels"],"mappings":"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"}