{"version":3,"file":"useDisableDate.mjs","sources":["../../../../components/date-picker/hooks/useDisableDate.ts"],"sourcesContent":["import { isObject } from 'lodash-es';\nimport dayjs from 'dayjs';\nimport type { TdDatePickerProps, TdDateRangePickerProps } from '../type';\nimport { isEnabledDate } from '@tdesign/common-js/date-picker/utils';\n\nexport interface disableDateProps {\n  disableDate?: TdDatePickerProps['disableDate'] | TdDateRangePickerProps['disableDate'];\n  format?: TdDatePickerProps['format'];\n  mode?: TdDatePickerProps['mode'];\n  start?: Date;\n  end?: Date;\n}\n\nexport function useDisableDate(props: disableDateProps) {\n  const { disableDate, format, mode, start, end } = props;\n\n  return {\n    disableDate: (value: Date) => !isEnabledDate({ disableDate, format, mode, value }),\n    minDate:\n      isObject(disableDate) && 'before' in disableDate\n        ? new Date(dayjs(disableDate.before).startOf('day').format())\n        : start,\n    maxDate:\n      isObject(disableDate) && 'after' in disableDate ? new Date(dayjs(disableDate.after).endOf('day').format()) : end,\n  };\n}\n"],"names":["useDisableDate","props","disableDate","format","mode","start","end","value","isEnabledDate","minDate","isObject","Date","dayjs","before","startOf","maxDate","after","endOf"],"mappings":";;;;;;;;;;;;;;;;;;;;AAaO,SAASA,eAAeC,KAAyB,EAAA;AACtD,EAAA,IAAQC,YAAa,GAA6BD,KAAA,CAA1CC,WAAa;IAAAC,MAAA,GAA6BF,KAAA,CAA7BE,MAAA;IAAQC,IAAM,GAAeH,KAAA,CAArBG,IAAM;IAAAC,KAAA,GAAeJ,KAAA,CAAfI,KAAA;IAAOC,MAAQL,KAAA,CAARK;EAEnC,OAAA;AACLJ,IAAAA,WAAA,EAAa,SAAbA,WAAAA,CAAcK,KAAA,EAAA;MAAA,OAAgB,CAACC,aAAA,CAAc;AAAEN,QAAAA,WAAa,EAAbA,YAAa;AAAAC,QAAAA,MAAA,EAAAA,MAAA;AAAQC,QAAAA,IAAM,EAANA,IAAM;AAAAG,QAAAA,KAAA,EAAAA,KAAAA;AAAM,OAAC,CAAA,CAAA;AAAA,KAAA;AACjFE,IAAAA,SACEC,QAAS,CAAAR,YAAW,CAAK,IAAA,QAAA,IAAYA,eACjC,IAAIS,IAAA,CAAKC,KAAM,CAAAV,YAAA,CAAYW,MAAM,CAAE,CAAAC,OAAA,CAAQ,KAAK,CAAE,CAAAX,MAAA,EAAQ,CAC1D,GAAAE,KAAA;AACNU,IAAAA,SACEL,QAAS,CAAAR,YAAW,CAAK,IAAA,OAAA,IAAWA,eAAc,IAAIS,IAAA,CAAKC,KAAM,CAAAV,YAAA,CAAYc,KAAK,CAAE,CAAAC,KAAA,CAAM,KAAK,CAAE,CAAAd,MAAA,EAAQ,CAAI,GAAAG,GAAAA;GACjH,CAAA;AACF;;;;"}