import { Handlers, PageProps } from "$fresh/server.ts"; import { MainLayout } from "@components/layouts/main.tsx"; import { Recipe } from "@lib/recipeSchema.ts"; import { Grid } from "@components/Grid.tsx"; import { IconArrowLeft } from "@components/icons.tsx"; import { KMenu } from "@islands/KMenu.tsx"; import { RedirectSearchHandler } from "@islands/Search.tsx"; import { GenericResource } from "@lib/types.ts"; import { ResourceCard } from "@components/Card.tsx"; import { fetchResource } from "@lib/resources.ts"; import { parseResourceUrl, searchResource } from "@lib/search.ts"; export const handler: Handlers< { recipes: Recipe[] | null; searchResults?: GenericResource[] } > = { async GET(req, ctx) { const { content: recipes } = await fetchResource("recipes"); const searchParams = parseResourceUrl(req.url); const searchResults = searchParams && await searchResource({ ...searchParams, types: ["recipe"] }); return ctx.render({ recipes, searchResults }); }, }; export default function Greet( props: PageProps< { recipes: Recipe[] | null; searchResults: GenericResource[] } >, ) { const { recipes, searchResults } = props.data; return (
Back

🍽️ Recipes

{recipes?.filter((s) => !!s?.content?.name).map((doc) => { return ; })}
); }