33 lines
1.2 KiB
TypeScript
33 lines
1.2 KiB
TypeScript
// Deterministic per-room theming: background image + accent color.
|
|
|
|
const ROOM_BACKGROUNDS = [
|
|
"/backgrounds/room-1.png",
|
|
"/backgrounds/room-2.png",
|
|
"/backgrounds/room-3.png",
|
|
"/backgrounds/room-4.png",
|
|
"/backgrounds/room-5.png",
|
|
]
|
|
|
|
export const ALL_ROOMS_BACKGROUND = "/backgrounds/all-rooms.png"
|
|
|
|
// Tailwind background classes used to color-code events per room.
|
|
const ROOM_COLORS = [
|
|
{ bg: "bg-blue-500", dot: "bg-blue-500", ring: "ring-blue-400" },
|
|
{ bg: "bg-emerald-500", dot: "bg-emerald-500", ring: "ring-emerald-400" },
|
|
{ bg: "bg-purple-500", dot: "bg-purple-500", ring: "ring-purple-400" },
|
|
{ bg: "bg-orange-500", dot: "bg-orange-500", ring: "ring-orange-400" },
|
|
{ bg: "bg-pink-500", dot: "bg-pink-500", ring: "ring-pink-400" },
|
|
{ bg: "bg-cyan-500", dot: "bg-cyan-500", ring: "ring-cyan-400" },
|
|
{ bg: "bg-amber-500", dot: "bg-amber-500", ring: "ring-amber-400" },
|
|
{ bg: "bg-teal-500", dot: "bg-teal-500", ring: "ring-teal-400" },
|
|
]
|
|
|
|
export function getRoomBackground(roomId: number | null): string {
|
|
if (roomId === null) return ALL_ROOMS_BACKGROUND
|
|
return ROOM_BACKGROUNDS[roomId % ROOM_BACKGROUNDS.length]
|
|
}
|
|
|
|
export function getRoomColor(roomId: number) {
|
|
return ROOM_COLORS[roomId % ROOM_COLORS.length]
|
|
}
|