import { c as MS_IN_SECOND, b as MS_IN_MINUTE, a as MS_IN_HOUR } from "./constants-BuFquuHl.mjs"; import { n as normalizeUnit } from "./normalizeUnit-bp5SODxw.mjs"; import { s as startOfDate, a as startOfTime } from "./startOfTime-B-McK1mQ.mjs"; import units from "./units.mjs"; const { DATE, DAY, HOUR, MINUTE, MONTH, SECOND, YEAR } = units; function startOf(date, unit) { unit = normalizeUnit(unit); let time = 0; switch (unit) { case YEAR: time = startOfDate(date, void 0, 0, 1); break; case MONTH: time = startOfDate(date, void 0, void 0, 1); break; case DATE: case DAY: time = startOfDate(date); break; case HOUR: time = startOfTime(date, MS_IN_HOUR); break; case MINUTE: time = startOfTime(date, MS_IN_MINUTE); break; case SECOND: time = startOfTime(date, MS_IN_SECOND); break; } time && date.setTime(time); return date; } export { startOf as default };