{"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  },\n  setup(props) {\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    }));\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          />\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              />,\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              />,\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          />\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","setup","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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"}