1 line
4.8 KiB
Plaintext
1 line
4.8 KiB
Plaintext
{"version":3,"file":"select-controller.vue2.mjs","sources":["../../../../../../packages/components/calendar/src/select-controller.vue"],"sourcesContent":["<template>\n <el-select\n :model-value=\"yearValue\"\n size=\"small\"\n :class=\"nsSelect.e('year')\"\n :validate-event=\"false\"\n :options=\"yearOptions\"\n @change=\"handleYearChange\"\n />\n <el-select\n :model-value=\"monthValue\"\n size=\"small\"\n :class=\"nsSelect.e('month')\"\n :validate-event=\"false\"\n :options=\"monthOptions\"\n @change=\"handleMonthChange\"\n />\n <el-button size=\"small\" @click=\"selectToday\">\n {{ t('el.datepicker.today') }}\n </el-button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport dayjs from 'dayjs'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElSelect from '@element-plus/components/select'\nimport { ElButton } from '@element-plus/components/button'\nimport { isFunction } from '@element-plus/utils'\nimport { selectControllerEmits } from './select-controller'\n\nimport type { SelectControllerProps } from './select-controller'\n\ndefineOptions({\n name: 'SelectController',\n})\n\nconst props = defineProps<SelectControllerProps>()\nconst emit = defineEmits(selectControllerEmits)\n\nconst nsSelect = useNamespace('calendar-select')\nconst { t, lang } = useLocale()\n\nconst monthOptions = Array.from({ length: 12 }, (_, index) => {\n const actualMonth = index + 1\n const label = isFunction(props.formatter)\n ? props.formatter(actualMonth, 'month')\n : actualMonth\n return {\n value: actualMonth,\n label,\n }\n})\n\nconst yearValue = computed(() => props.date.year())\nconst monthValue = computed(() => props.date.month() + 1)\n// Get an array of 20 years\nconst yearOptions = computed(() => {\n const years = []\n for (let i = -10; i < 10; i++) {\n const year = yearValue.value + i\n if (year > 0) {\n const label = isFunction(props.formatter)\n ? props.formatter(year, 'year')\n : year\n years.push({ value: year, label })\n }\n }\n return years\n})\n\nconst handleYearChange = (year: number) => {\n emit(\n 'date-change',\n dayjs(new Date(year, monthValue.value - 1, 1)).locale(lang.value)\n )\n}\n\nconst handleMonthChange = (month: number) => {\n emit(\n 'date-change',\n dayjs(new Date(yearValue.value, month - 1, 1)).locale(lang.value)\n )\n}\n\nconst selectToday = () => {\n emit('date-change', 'today')\n}\n</script>\n"],"names":["_createVNode","_unref","_normalizeClass"],"mappings":"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"} |