diff --git a/lib/services/dom-parser.js b/lib/services/dom-parser.js index ba3379b..0786333 100644 --- a/lib/services/dom-parser.js +++ b/lib/services/dom-parser.js @@ -14,10 +14,16 @@ const parseDate = (timeText) => { } } - const normalizedTimeString = `${datePart}${timePart || ''}` - const startTime = dayjs(normalizedTimeString) + const rangeTimeParts = timePart ? timePart.split('–') : [] + const startTimePart = `${datePart || ''}${rangeTimeParts[0] || ''}` + const endTimePart = `${datePart || ''}${rangeTimeParts[1] || ''}` - const { start, duration } = parseDates(startTime, null) + const startTime = dayjs(startTimePart) + const endTime = dayjs(endTimePart) + + const normalizedStartTime = startTime.isValid() ? startTime : dayjs(new Date()) + const normalizedEndTime = endTime.isValid() ? endTime : dayjs(new Date()) + const { start, duration } = parseDates(normalizedStartTime, normalizedEndTime) return { start,