{"version":3,"file":"UYvuYxn2.js","sources":["../../../../src/components/datePicker/range/useDatePicker.ts","../../../../src/components/datePicker/range/date-picker.vue","../../../../src/components/components/advancedList/components/filters/dateFilter/dateFilter.vue"],"sourcesContent":["import dayjs from 'dayjs';\nimport { SSR_safe_mq_breakpointIsMobile } from '@/injectionSymbols';\n\nexport function useDatePicker(\n props: { modelValue: [Date, Date]; mode: 'all' | 'future' | 'past' },\n emit: (event: 'update:modelValue', value: [Date, Date]) => void,\n) {\n const isMobile = inject(SSR_safe_mq_breakpointIsMobile);\n const { t } = useTrans();\n\n const settings = {\n locale: 'de',\n weekNumName: t('calendar.labels.cw'),\n monthNameFormat: 'long',\n position: 'left',\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n altPosition: (el: HTMLElement | undefined) => ({\n top: '0',\n left: '0',\n transform: 'none',\n }),\n range: false,\n presetRanges: getPresetRanges(),\n format: (date: Date) => dayjs(date).format('DD.MM.YYYY'),\n enableTimePicker: false,\n autoApply: true,\n };\n\n const datepicker1 = ref(null);\n const datepicker2 = ref(null);\n\n const date = ref<[Date, Date]>(\n props.modelValue ? props.modelValue : [dayjs().toDate(), dayjs().toDate()],\n );\n watch(\n () => props.modelValue,\n (newValue) => {\n if (newValue[0] !== date.value[0]) date.value[0] = newValue[0];\n if (newValue[1] !== date.value[1]) date.value[1] = newValue[1];\n },\n );\n\n function setRange(range: Date[]) {\n date.value[0] = range[0];\n date.value[1] = range[1];\n datepicker1.value.closeMenu();\n datepicker2.value.closeMenu();\n }\n\n function onDatepickerClosed() {\n emit('update:modelValue', date.value);\n }\n\n function getPresetRanges() {\n const today = {\n label: t('calendar.presetRanges.today'),\n value: [dayjs().toDate(), dayjs().toDate()],\n slot: 'preset-button',\n };\n\n if (props.mode === 'future')\n return [\n today,\n {\n label: t('calendar.presetRanges.nextWeek'),\n value: [dayjs().toDate(), dayjs().add(7, 'day').toDate()],\n slot: 'none',\n },\n {\n label: t('calendar.presetRanges.nextMonth'),\n value: [dayjs().toDate(), dayjs().add(30, 'day').toDate()],\n slot: 'none',\n },\n {\n label: t('calendar.presetRanges.unlimited'),\n value: [dayjs().toDate(), null],\n slot: 'none',\n },\n ];\n if (props.mode === 'past')\n return [\n today,\n {\n label: t('calendar.presetRanges.lastWeek'),\n value: [dayjs().subtract(7, 'day').toDate(), dayjs().toDate()],\n slot: 'none',\n },\n {\n label: t('calendar.presetRanges.lastMonth'),\n value: [dayjs().subtract(30, 'day').toDate(), dayjs().toDate()],\n slot: 'none',\n },\n {\n label: t('calendar.presetRanges.unlimited'),\n value: [null, dayjs().toDate()],\n slot: 'none',\n },\n ];\n return [];\n }\n return {\n isMobile,\n settings,\n datepicker1,\n datepicker2,\n date,\n setRange,\n onDatepickerClosed,\n };\n}\n","\n\n\n\n","\n\n"],"names":["useDatePicker","props","emit","isMobile","inject","SSR_safe_mq_breakpointIsMobile","t","useTrans","settings","el","getPresetRanges","date","dayjs","datepicker1","ref","datepicker2","watch","newValue","setRange","range","onDatepickerClosed","today","__props","__emit","emits","hasDateFilter","computed","timespan"],"mappings":"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"}