tdesign-vue-next
Version:
TDesign Component for vue-next
1 lines • 23.1 kB
Source Map (JSON)
{"version":3,"file":"RangePanel.mjs","sources":["../../../../../components/date-picker/components/panel/RangePanel.tsx"],"sourcesContent":["import { defineComponent, PropType, computed } from 'vue';\nimport { useConfig, usePrefixClass } from '@tdesign/shared-hooks';\nimport TPanelContent from './PanelContent';\nimport TExtraContent from './ExtraContent';\nimport { TdDateRangePickerProps, PickerDateRange } from '../../type';\nimport { getDefaultFormat, parseToDayjs } from '@tdesign/common-js/date-picker/format';\nimport { useTableData, useDisableDate } from '../../hooks';\nimport { isArray, isFunction } from 'lodash-es';\nimport log from '@tdesign/common-js/log/index';\n\nexport default defineComponent({\n name: 'TRangePanel',\n props: {\n hoverValue: Array as PropType<Array<string>>,\n range: [Array, Function] as PropType<TdDateRangePickerProps['range']>,\n activeIndex: Number,\n isFirstValueSelected: Boolean,\n disabled: {\n type: [Boolean, Array] as PropType<TdDateRangePickerProps['disabled']>,\n },\n disableDate: [Object, Array, Function] as PropType<TdDateRangePickerProps['disableDate']>,\n disableTime: Function as PropType<TdDateRangePickerProps['disableTime']>,\n mode: {\n type: String as PropType<TdDateRangePickerProps['mode']>,\n default: 'date',\n },\n format: String as PropType<TdDateRangePickerProps['format']>,\n presetsPlacement: {\n type: String as PropType<TdDateRangePickerProps['presetsPlacement']>,\n default: 'bottom',\n },\n value: Array as PropType<Array<string>>,\n timePickerProps: Object as PropType<TdDateRangePickerProps['timePickerProps']>,\n presets: Object as PropType<TdDateRangePickerProps['presets']>,\n popupVisible: Boolean,\n enableTimePicker: Boolean,\n panelPreselection: Boolean,\n firstDayOfWeek: Number,\n year: Array as PropType<Array<number>>,\n month: Array as PropType<Array<number>>,\n time: Array as PropType<Array<string>>,\n cancelRangeSelectLimit: Boolean,\n defaultTime: Array as PropType<TdDateRangePickerProps['defaultTime']>,\n onClick: Function,\n onCellClick: Function,\n onCellMouseEnter: Function,\n onCellMouseLeave: Function,\n onJumperClick: Function,\n onConfirmClick: Function,\n onPresetClick: Function,\n onYearChange: Function,\n onMonthChange: Function,\n onTimePickerChange: Function,\n needConfirm: Boolean,\n cell: {\n type: Function as PropType<TdDateRangePickerProps['cell']>,\n },\n },\n setup(props, { slots }) {\n const COMPONENT_NAME = usePrefixClass('date-range-picker__panel');\n const { globalConfig } = useConfig('datePicker');\n\n const format = computed(\n () =>\n getDefaultFormat({\n mode: props.mode,\n format: props.format,\n enableTimePicker: props.enableTimePicker,\n })?.format,\n );\n\n // 是否隐藏预选状态,只有 value 有值的时候需要隐藏\n const hidePreselection = !props.panelPreselection && props.value.length === 2;\n\n const disableDateOptions = computed(() => {\n const startDateValue = new Date(parseToDayjs(props.value[0], format.value, 'start').toDate().setHours(0, 0, 0));\n const endDateValue = new Date(parseToDayjs(props.value[1], format.value, 'end').toDate().setHours(23, 59, 59));\n let start = props.isFirstValueSelected && props.activeIndex === 1 ? startDateValue : undefined;\n let end = props.isFirstValueSelected && props.activeIndex === 0 ? endDateValue : undefined;\n\n if (props.disabled && isArray(props.disabled)) {\n if (props.disabled[0]) start = startDateValue;\n else if (props.disabled[1]) end = endDateValue;\n }\n\n return useDisableDate({\n format: format.value,\n mode: props.mode,\n disableDate: props.disableDate,\n start,\n end,\n });\n });\n\n // 处理 range 参数\n // - 如果 range 是数组并且其元素为函数或数组(表示左右面板分别的范围),则拆分为 startRange / endRange;\n // - 否则将整个 range 视为单一范围,左右面板共用。\n const rangeValue = computed(() => {\n let startRange = props.range as PickerDateRange;\n let endRange = props.range as PickerDateRange;\n\n if (isArray(props.range)) {\n if (props.range.length !== 2) {\n log.warn('DateRangePicker', '`range` length must be 2 when `range` is an array.');\n }\n const first = props.range[0];\n const second = props.range[1];\n if ((isArray(first) || isFunction(first)) && (isArray(second) || isFunction(second))) {\n startRange = first;\n endRange = second;\n }\n }\n\n return {\n start: startRange,\n end: endRange,\n };\n });\n\n const startTableData = computed(() => {\n const disableDate = isFunction(props.disableDate)\n ? props.disableDate({ partial: 'start', value: props.value[0] })\n : disableDateOptions.value.disableDate;\n return useTableData({\n isRange: true,\n start: props.value[0] ? parseToDayjs(props.value[0], format.value).toDate() : undefined,\n end: props.value[1] ? parseToDayjs(props.value[1], format.value).toDate() : undefined,\n hoverStart:\n !hidePreselection && props.hoverValue[0]\n ? parseToDayjs(props.hoverValue[0], format.value).toDate()\n : undefined,\n hoverEnd:\n !hidePreselection && props.hoverValue[1]\n ? parseToDayjs(props.hoverValue[1], format.value).toDate()\n : undefined,\n year: props.year[0],\n month: props.month[0],\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n range: rangeValue.value.start,\n ...disableDateOptions.value,\n disableDate,\n cancelRangeSelectLimit: props.cancelRangeSelectLimit,\n });\n });\n\n const endTableData = computed(() => {\n const disableDate = isFunction(props.disableDate)\n ? props.disableDate({ partial: 'end', value: props.value })\n : disableDateOptions.value.disableDate;\n\n return useTableData({\n isRange: true,\n start: props.value[0] ? parseToDayjs(props.value[0], format.value).toDate() : undefined,\n end: props.value[1] ? parseToDayjs(props.value[1], format.value).toDate() : undefined,\n hoverStart:\n !hidePreselection && props.hoverValue[0]\n ? parseToDayjs(props.hoverValue[0], format.value).toDate()\n : undefined,\n hoverEnd:\n !hidePreselection && props.hoverValue[1]\n ? parseToDayjs(props.hoverValue[1], format.value).toDate()\n : undefined,\n year: props.mode === 'year' && props.year[1] - props.year[0] <= 9 ? props.year[1] + 9 : props.year[1],\n month: props.month[1],\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n range: rangeValue.value.end,\n ...disableDateOptions.value,\n disableDate,\n cancelRangeSelectLimit: props.cancelRangeSelectLimit,\n });\n });\n\n const panelContentProps = computed(() => ({\n format: format.value,\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n internalYear: props.year,\n popupVisible: props.popupVisible,\n enableTimePicker: props.enableTimePicker,\n timePickerProps: props.timePickerProps,\n onMonthChange: props.onMonthChange,\n onYearChange: props.onYearChange,\n onJumperClick: props.onJumperClick,\n onCellClick: props.onCellClick,\n onCellMouseEnter: props.onCellMouseEnter,\n onCellMouseLeave: props.onCellMouseLeave,\n onTimePickerChange: props.onTimePickerChange,\n disableTime: props.disableTime,\n defaultTime: props.defaultTime,\n cell: props.cell,\n }));\n\n return () => (\n <div\n class={[\n COMPONENT_NAME.value,\n {\n [`${COMPONENT_NAME.value}--direction-row`]: ['left', 'right'].includes(props.presetsPlacement),\n },\n ]}\n onClick={(e) => props.onClick?.({ e })}\n >\n {['top', 'left'].includes(props.presetsPlacement) ? (\n <TExtraContent\n presets={props.presets}\n selectedValue={props.value[props.activeIndex]}\n enableTimePicker={props.enableTimePicker}\n onPresetClick={props.onPresetClick}\n onConfirmClick={props.onConfirmClick}\n presetsPlacement={props.presetsPlacement}\n needConfirm={props.needConfirm}\n v-slots={{ presets: slots.presets }}\n />\n ) : null}\n <div class={`${COMPONENT_NAME.value}-content-wrapper`}>\n {!props.enableTimePicker ? (\n [\n <TPanelContent\n key=\"startPanel\"\n partial=\"start\"\n year={props.year[0]}\n month={props.month[0]}\n time={props.time[props.activeIndex]}\n value={props.value}\n tableData={startTableData.value}\n range={rangeValue.value.start}\n {...panelContentProps.value}\n v-slots={slots}\n />,\n <TPanelContent\n key=\"endPanel\"\n partial=\"end\"\n year={props.year[1]}\n month={props.month[1]}\n time={props.time[props.activeIndex]}\n value={props.value}\n tableData={endTableData.value}\n range={rangeValue.value.end}\n {...panelContentProps.value}\n v-slots={slots}\n />,\n ]\n ) : (\n <TPanelContent\n key=\"start\"\n partial={props.activeIndex ? 'end' : 'start'}\n year={props.activeIndex ? props.year[1] : props.year[0]}\n month={props.activeIndex ? props.month[1] : props.month[0]}\n time={props.activeIndex ? props.time[1] : props.time[0]}\n value={props.value}\n tableData={props.activeIndex ? endTableData.value : startTableData.value}\n range={props.activeIndex ? rangeValue.value.end : rangeValue.value.start}\n {...panelContentProps.value}\n />\n )}\n </div>\n {['bottom', 'right'].includes(props.presetsPlacement) ? (\n <TExtraContent\n presets={props.presets}\n selectedValue={props.value[props.activeIndex]}\n enableTimePicker={props.enableTimePicker}\n onPresetClick={props.onPresetClick}\n onConfirmClick={props.onConfirmClick}\n presetsPlacement={props.presetsPlacement}\n needConfirm={props.needConfirm}\n v-slots={{ presets: slots.presets }}\n />\n ) : null}\n </div>\n );\n },\n});\n"],"names":["defineComponent","name","props","hoverValue","Array","range","Function","activeIndex","Number","isFirstValueSelected","Boolean","disabled","type","disableDate","Object","disableTime","mode","String","format","presetsPlacement","value","timePickerProps","presets","popupVisible","enableTimePicker","panelPreselection","firstDayOfWeek","year","month","time","cancelRangeSelectLimit","defaultTime","onClick","onCellClick","onCellMouseEnter","onCellMouseLeave","onJumperClick","onConfirmClick","onPresetClick","onYearChange","onMonthChange","onTimePickerChange","needConfirm","cell","setup","_ref","slots","COMPONENT_NAME","usePrefixClass","_useConfig","useConfig","globalConfig","computed","_getDefaultFormat","getDefaultFormat","hidePreselection","length","disableDateOptions","startDateValue","Date","parseToDayjs","toDate","setHours","endDateValue","start","end","isArray","useDisableDate","rangeValue","startRange","endRange","log","warn","first","second","isFunction","startTableData","partial","useTableData","_objectSpread","isRange","hoverStart","hoverEnd","endTableData","panelContentProps","internalYear","_createVNode","_defineProperty","concat","includes","e","_props$onClick","call","TExtraContent","TPanelContent","_mergeProps"],"mappings":"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"}