import { Head } from "$fresh/runtime.ts"; import { Handlers, PageProps } from "$fresh/server.ts"; import Footer from "../components/Footer.tsx"; import Header from "../components/Header.tsx"; import Search from "../components/Search.tsx"; import SeriesCard from "../components/SeriesCard.tsx"; import { CSS, render } from "$gfm"; import { nrkRadio, NrkSearchResultList } from "../lib/nrk/nrk.ts"; type Props = { query: string | null; rawMarkdown: string; result?: NrkSearchResultList | null; }; export const handler: Handlers = { async GET(request, ctx) { const url = new URL(request.url); const query = url.searchParams.get("query"); let result: Props["result"]; if (query) { result = await nrkRadio.search(query); } const rawMarkdown = await Deno.readTextFile(new URL("../docs/what.md", import.meta.url)); return ctx.render({ query, result, rawMarkdown }); }, }; export default function Home({ data, url }: PageProps) { return ( <> {data.query ? `Søk: ${data.query} - ` : ""}NRSS