import { Handlers, PageProps } from "$fresh/server.ts"; import { MainLayout } from "@components/layouts/main.tsx"; 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 { ResourceCard } from "@components/Card.tsx"; import { listResources } from "@lib/marka/index.ts"; import { parseResourceUrl, searchResource } from "@lib/search.ts"; import { GenericResource, RecipeResource } from "@lib/marka/schema.ts"; export const handler: Handlers< { recipes: RecipeResource[] | null; searchResults?: GenericResource[] } > = { async GET(req, ctx) { const recipes = await listResources("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: RecipeResource[] | null; searchResults: GenericResource[] } >, ) { const { recipes, searchResults } = props.data; return (
Back

🍽️ Recipes

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