{"version":3,"file":"is-in-time-range.cjs","names":["parseTimeString"],"sources":["../../../src/utils/is-in-time-range/is-in-time-range.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { AnyDateValue } from '../../types';\nimport { parseTimeString } from '../parse-time-string/parse-time-string';\n\ninterface IsInTimeRangeInput {\n  date: AnyDateValue;\n  startTime?: string;\n  endTime?: string;\n}\n\n/** Returns true if the given date's time is within the specified time range */\nexport function isInTimeRange({\n  date,\n  startTime = '00:00:00',\n  endTime = '23:59:59',\n}: IsInTimeRangeInput) {\n  const targetDate = dayjs(date);\n  const parsedStartTime = parseTimeString(startTime);\n  const parsedEndTime = parseTimeString(endTime);\n\n  const startDateTime = targetDate\n    .hour(parsedStartTime.hours)\n    .minute(parsedStartTime.minutes)\n    .second(parsedStartTime.seconds);\n\n  const endDateTime = targetDate\n    .hour(parsedEndTime.hours)\n    .minute(parsedEndTime.minutes)\n    .second(parsedEndTime.seconds);\n\n  return targetDate.isAfter(startDateTime) && targetDate.isBefore(endDateTime);\n}\n"],"mappings":";;;;;;;AAWA,SAAgB,cAAc,EAC5B,MACA,YAAY,YACZ,UAAU,cACW;CACrB,MAAM,cAAA,GAAA,MAAA,QAAA,CAAmB,IAAI;CAC7B,MAAM,kBAAkBA,0BAAAA,gBAAgB,SAAS;CACjD,MAAM,gBAAgBA,0BAAAA,gBAAgB,OAAO;CAE7C,MAAM,gBAAgB,WACnB,KAAK,gBAAgB,KAAK,CAAC,CAC3B,OAAO,gBAAgB,OAAO,CAAC,CAC/B,OAAO,gBAAgB,OAAO;CAEjC,MAAM,cAAc,WACjB,KAAK,cAAc,KAAK,CAAC,CACzB,OAAO,cAAc,OAAO,CAAC,CAC7B,OAAO,cAAc,OAAO;CAE/B,OAAO,WAAW,QAAQ,aAAa,KAAK,WAAW,SAAS,WAAW;AAC7E"}