diff options
| author | Fuwn <[email protected]> | 2023-12-18 22:39:30 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-12-18 22:39:30 -0800 |
| commit | 1a17e9dced7275635aa83ff56a8340a422679dca (patch) | |
| tree | 262ba68f97a688a4dbad16a325a63afa3aa97444 /src/routes/schedule/+page.svelte | |
| parent | feat(schedule): timezone picker (diff) | |
| download | due.moe-1a17e9dced7275635aa83ff56a8340a422679dca.tar.xz due.moe-1a17e9dced7275635aa83ff56a8340a422679dca.zip | |
feat(schedule): move current day to first
Diffstat (limited to 'src/routes/schedule/+page.svelte')
| -rw-r--r-- | src/routes/schedule/+page.svelte | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/routes/schedule/+page.svelte b/src/routes/schedule/+page.svelte index 6b07ea27..5b207b03 100644 --- a/src/routes/schedule/+page.svelte +++ b/src/routes/schedule/+page.svelte @@ -40,6 +40,19 @@ : event.pageY + offset; imageStyle = `top: ${imageTop}px; left: ${imageLeft}px;`; }; + + const shiftSubsPleaseSchedule = (schedule: SubsPlease['schedule']) => { + const days = Object.keys(schedule); + const currentDayIndex = days.indexOf(new Date().toLocaleString('en-us', { weekday: 'long' })); + const shiftedSchedule: { [key: string]: any } = {}; + + days + .slice(currentDayIndex) + .concat(days.slice(0, currentDayIndex)) + .forEach((day) => (shiftedSchedule[day] = schedule[day as keyof typeof schedule])); + + return shiftedSchedule; + }; </script> {#await subsPleasePromise} @@ -65,7 +78,7 @@ </p> <div id="list-container"> - {#each Object.entries(subsPlease.schedule) as [day, scheduleEntry]} + {#each Object.entries(shiftSubsPleaseSchedule(subsPlease.schedule)) as [day, scheduleEntry]} <details open class="list" |