Rocky_Mountain_Vending/.pnpm-store/v10/files/76/646e3f3a78a232048b148cdc7c0e3fa97cc3d09742e50d17b75cf3e3b5c83f870417054caa707061fce61371709fd7a6416448a553a3264aa3a5dac10757c5
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

26 lines
900 B
Text

import type { DateLib } from "../classes/index.js";
/**
* Returns the start date of the week in the broadcast calendar.
*
* The broadcast week starts on Monday. If the first day of the month is not a
* Monday, this function calculates the previous Monday as the start of the
* broadcast week.
*
* @since 9.4.0
* @param date The date for which to calculate the start of the broadcast week.
* @param dateLib The date library to use for date manipulation.
* @returns The start date of the broadcast week.
*/
export function startOfBroadcastWeek(date: Date, dateLib: DateLib): Date {
const firstOfMonth = dateLib.startOfMonth(date);
const dayOfWeek = firstOfMonth.getDay();
if (dayOfWeek === 1) {
return firstOfMonth;
} else if (dayOfWeek === 0) {
return dateLib.addDays(firstOfMonth, -1 * 6);
} else {
return dateLib.addDays(firstOfMonth, -1 * (dayOfWeek - 1));
}
}