import { API_URL } from '$env/static/private'; import type { PageServerLoad } from './$types'; import type { Chapter } from '$lib/types'; export const load = (async ({ parent, fetch, cookies }) => { await parent(); const session = cookies.get('session'); let res = await fetch(`${API_URL}/chapters`, { headers: { Authorization: `Bearer ${session}` } }); if (!res.ok) { return { daily: null }; } const chapters = (await res.json()) as Chapter[]; const lastChapter = chapters.filter((chapter) => chapter.show).pop(); if (!lastChapter) { return { daily: null }; } res = await fetch(`${API_URL}/chapter/${lastChapter.id}`, { headers: { Authorization: `Bearer ${session}` } }); if (!res.ok) { return { daily: { chapter: lastChapter, puzzle: null } }; } const chapter = (await res.json()) as Chapter; const lastPuzzle = chapter.puzzles.filter((puzzle) => puzzle.show).pop(); return { daily: { chapter: lastChapter, puzzle: lastPuzzle } }; }) satisfies PageServerLoad;