{"version":3,"file":"PanelContent.mjs","sources":["../../../src/date-picker/panel/PanelContent.tsx"],"sourcesContent":["import { defineComponent, PropType } from 'vue';\nimport { usePrefixClass } from '../../hooks/useConfig';\nimport type { TdDatePickerProps } from '../type';\n\nimport TDateHeader from '../base/Header';\nimport TDateTable from '../base/Table';\nimport TTimePickerPanel from '../../time-picker/panel/time-picker-panel';\nimport { getDefaultFormat } from '../../_common/js/date-picker/format';\n\nexport default defineComponent({\n  name: 'XPanelContent',\n  props: {\n    mode: String as PropType<TdDatePickerProps['mode']>,\n    format: String as PropType<TdDatePickerProps['format']>,\n    enableTimePicker: Boolean as PropType<TdDatePickerProps['enableTimePicker']>,\n    timePickerProps: {\n      type: Object as PropType<TdDatePickerProps['timePickerProps']>,\n      default: () => ({}),\n    },\n    year: Number,\n    month: Number,\n    tableData: Array,\n    time: String,\n    firstDayOfWeek: Number,\n    partial: String,\n    popupVisible: Boolean,\n    onYearChange: Function,\n    onMonthChange: Function,\n    onJumperClick: Function,\n    onCellMouseEnter: Function,\n    onCellClick: Function,\n    onCellMouseLeave: Function,\n    onTimePickerChange: Function,\n    value: [String, Number, Array, Date],\n  },\n  setup(props) {\n    const COMPONENT_NAME = usePrefixClass('date-picker__panel');\n\n    const { timeFormat } = getDefaultFormat({\n      mode: props.mode,\n      format: props.format,\n      enableTimePicker: props.enableTimePicker,\n    });\n\n    const defaultTimeValue = '00:00:00';\n\n    return () => (\n      <div class={`${COMPONENT_NAME.value}-content`}>\n        <div class={`${COMPONENT_NAME.value}-${props.mode}`}>\n          <TDateHeader\n            mode={props.mode}\n            year={props.year}\n            month={props.month}\n            onMonthChange={(val: number) => props.onMonthChange?.(val, { partial: props.partial })}\n            onYearChange={(val: number) => props.onYearChange?.(val, { partial: props.partial })}\n            onJumperClick={({ trigger }: { trigger: string }) =>\n              props.onJumperClick?.({ trigger, partial: props.partial })\n            }\n          />\n\n          <TDateTable\n            mode={props.mode}\n            data={props.tableData}\n            time={props.time}\n            value={props.value}\n            format={props.format}\n            firstDayOfWeek={props.firstDayOfWeek}\n            onCellClick={(date: Date, { e }: { e: MouseEvent }) =>\n              props.onCellClick?.(date, { e, partial: props.partial })\n            }\n            onCellMouseEnter={(date: Date) => props.onCellMouseEnter?.(date, { partial: props.partial })}\n            onCellMouseLeave={props.onCellMouseLeave}\n          />\n        </div>\n\n        {props.enableTimePicker && (\n          <div class={`${COMPONENT_NAME.value}-time`}>\n            <div class={`${COMPONENT_NAME.value}-time-viewer`}>{props.time || defaultTimeValue}</div>\n            <TTimePickerPanel\n              {...{\n                key: props.partial,\n                isShowPanel: props.popupVisible,\n                format: timeFormat,\n                value: props.time || defaultTimeValue,\n                onChange: props.onTimePickerChange,\n                ...props.timePickerProps,\n              }}\n            />\n          </div>\n        )}\n      </div>\n    );\n  },\n});\n"],"names":["name","props","mode","format","enableTimePicker","timePickerProps","type","year","month","tableData","time","firstDayOfWeek","partial","popupVisible","onYearChange","onMonthChange","onJumperClick","onCellMouseEnter","onCellClick","onCellMouseLeave","onTimePickerChange","_createVNode","trigger","e","value"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,oBAAA,eAAA,CAAA;AACEA,EAAAA,IAAAA,EAAAA,eAAAA;AACAC,EAAAA,KAAAA,EAAAA;AACEC,IAAAA,IAAAA,EAAAA,MAAAA;AACAC,IAAAA,MAAAA,EAAAA,MAAAA;AACAC,IAAAA,gBAAAA,EAAAA,OAAAA;AACAC,IAAAA,eAAAA,EAAAA;AACEC,MAAAA,IAAAA,EAAAA,MAAAA;AACA,MAAA,SAAA,EAAA,SAAA,QAAA,GAAA;AAAS,QAAA,OAAA,EAAA,CAAA;AAAQ,OAAA;;AAEnBC,IAAAA,IAAAA,EAAAA,MAAAA;AACAC,IAAAA,KAAAA,EAAAA,MAAAA;AACAC,IAAAA,SAAAA,EAAAA,KAAAA;AACAC,IAAAA,IAAAA,EAAAA,MAAAA;AACAC,IAAAA,cAAAA,EAAAA,MAAAA;AACAC,IAAAA,OAAAA,EAAAA,MAAAA;AACAC,IAAAA,YAAAA,EAAAA,OAAAA;AACAC,IAAAA,YAAAA,EAAAA,QAAAA;AACAC,IAAAA,aAAAA,EAAAA,QAAAA;AACAC,IAAAA,aAAAA,EAAAA,QAAAA;AACAC,IAAAA,gBAAAA,EAAAA,QAAAA;AACAC,IAAAA,WAAAA,EAAAA,QAAAA;AACAC,IAAAA,gBAAAA,EAAAA,QAAAA;AACAC,IAAAA,kBAAAA,EAAAA,QAAAA;;;;AAIM,IAAA,IAAA,cAAA,GAAA,cAAA,CAAA,oBAAA,CAAA,CAAA;;;;;AAMN,OAAA,CAAA;;;;AAIO,MAAA,OAAAC,WAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,EAAA,CAAA,MAAA,CAAA,cAAA,CAAA,KAAA,EAAA,UAAA,CAAA;AACyB,OAAA,EAAA,CAAAA,WAAA,CAAA,KAAA,EAAA;;;;;;;AAMR,UAAA,IAAA,oBAAA,CAAA;AAAA,UAAA,OAAA,CAAA,oBAAA,GAAA,KAAA,CAAA,aAAA,MAAA,IAAA,IAAA,oBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,oBAAA,CAAA,IAAA,CAAA,KAAA,EAAA,GAAA,EAAA;;AAAoE,WAAA,CAAA,CAAA;AACpF,SAAA;;AAA+B,UAAA,IAAA,mBAAA,CAAA;AAAA,UAAA,OAAA,CAAA,mBAAA,GAAA,KAAA,CAAA,YAAA,MAAA,IAAA,IAAA,mBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,mBAAA,CAAA,IAAA,CAAA,KAAA,EAAA,GAAA,EAAA;;AAAmD,WAAA,CAAA,CAAA;AAAC,SAAA;;AACpE,UAAA,IAAA,oBAAA,CAAA;AAAA,UAAA,IAAA,OAAA,GAAA,IAAA,CAAA,OAAA,CAAA;AAAW,UAAA,OAAA,CAAA,oBAAA,GAAA,KAAA,CAAA,aAAA,MAAA,IAAA,IAAA,oBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,oBAAA,CAAA,IAAA,CAAA,KAAA,EAAA;AACAC,YAAAA,OAAAA,EAAAA,OAAAA;;AAAgC,WAAA,CAAA,CAAA;AAE5D,SAAA;;;;;;;;AASE,QAAA,aAAA,EAAA,SAAA,WAAA,CAAA,IAAA,EAAA,KAAA,EAAA;AAAc,UAAA,IAAA,kBAAA,CAAA;AAAA,UAAA,IAAA,CAAA,GAAA,KAAA,CAAA,CAAA,CAAA;AAAc,UAAA,OAAA,CAAA,kBAAA,GAAA,KAAA,CAAA,WAAA,MAAA,IAAA,IAAA,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,kBAAA,CAAA,IAAA,CAAA,KAAA,EAAA,IAAA,EAAA;AACEC,YAAAA,CAAAA,EAAAA,CAAAA;;AAA0B,WAAA,CAAA,CAAA;AAAC,SAAA;;;;;AAEiC,WAAA,CAAA,CAAA;AAAC,SAAA;AAAA,QAAA,kBAAA,EAAA,KAAA,CAAA,gBAAA;AAE7F,OAAA,EAAA,IAAA,CAAA,CAAA,CAAA,EAAA,KAAA,CAAA,gBAAA,IAAAF,WAAA,CAAA,KAAA,EAAA;AAIA,QAAA,OAAA,EAAA,EAAA,CAAA,MAAA,CAAA,cAAA,CAAA,KAAA,EAAA,OAAA,CAAA;AAA8B,OAAA,EAAA,CAAAA,WAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,EAAA,CAAA,MAAA,CAAA,cAAA,CAAA,KAAA,EAAA,cAAA,CAAA;;;;AAMxBlB,QAAAA,MAAAA,EAAAA,UAAAA;AACAqB,QAAAA,KAAAA,EAAAA,KAAAA,CAAAA,IAAAA,IAAAA,gBAAAA;;;;AASd,GAAA;AACF,CAAA,CAAA;;;;"}