1import { listAvailablePuzzleDates } from "@/lib/shikaku/catalog.ts";2import { define } from "../utils.ts";3import DeltaMark from "../components/DeltaMark.tsx";4import KeepScene from "../components/KeepScene.tsx";5import DailyStackLink from "../islands/DailyStackLink.tsx";6import HomeStats from "../islands/HomeStats.tsx";7import OfflineBadge from "../islands/OfflineBadge.tsx";89export default define.page(function Home() {10 const latest = listAvailablePuzzleDates().at(-1) ??11 new Date().toISOString().slice(0, 10);1213 return (14 <main class="home">15 <div class="home__frame">16 <div class="home__scene" aria-hidden="true">17 <i class="home__banner home__banner--left" />18 <i class="home__banner home__banner--right" />19 <KeepScene />20 </div>2122 <div class="home__copy">23 <h1 class="home__title">RECT.RUN</h1>24 <HomeStats fallbackDate={latest} />25 <div class="home__actions">26 <DailyStackLink fallbackDate={latest} />27 <a class="btn btn--ghost" href="/d">Archive</a>28 </div>29 <div class="home__foot label">30 <DeltaMark size={22} ring="white" variant="flicker" />31 <span>Daily Shikaku</span>32 <OfflineBadge />33 </div>34 </div>35 </div>36 </main>37 );38});