import { THEME_DARK, THEME_DEFAULT } from "./constants";
import { NightShift } from "./nightShiftTypes";
import { floatingHours, isDay } from "./timeUtils";

export const resolveTheme = (cookies: any, cookiesKey: string) => {
	if (!cookies[cookiesKey]?.sun) {
		return cookies[cookiesKey]?.theme
			? cookies[cookiesKey].theme
			: THEME_DEFAULT;
	}
	const { sun }: NightShift = cookies[cookiesKey];
	const dawnTime = new Date(`01 Jan 1970 ${sun.dawn} GMT+0100`);
	const duskTime = new Date(`01 Jan 1970 ${sun.dusk} GMT+0100`);

	return isDay(floatingHours(dawnTime), floatingHours(duskTime))
		? THEME_DEFAULT
		: THEME_DARK;
};
