// import directus from '~/lib/directus' export const getStaticPaths = async () => { const url = new URL(`${process.env.NEXT_PUBLIC_DIRECTUS_API_URL}/items/vendors`) url.searchParams.append('fields[]', 'slug') url.searchParams.append('limit', -1) const res = await fetch(url.toString()) const { data: vendors } = await res.json() return { paths: vendors.map((v) => ({ params: { slug: v.slug } })), fallback: false, // false or "blocking" } } export const getStaticProps = async ({ params: { slug } }) => { const url = new URL(`${process.env.NEXT_PUBLIC_DIRECTUS_API_URL}/items/vendors`) url.searchParams.append('fields[]', '*') url.searchParams.append('fields[]', 'categories.categories_id.slug') url.searchParams.append('fields[]', 'categories.categories_id.name') url.searchParams.append('fields[]', 'categories.categories_id.parent_id') url.searchParams.append('fields[]', 'categories.categories_id.subcategories.slug') url.searchParams.append('fields[]', 'categories.categories_id.subcategories.name') url.searchParams.append('limit', 1) url.searchParams.append('filter', JSON.stringify({ slug: { _eq: slug } })) const res = await fetch(url.toString()) const { data: [vendor], } = await res.json() return { props: vendor } } export default function VendorPage(vendor) { return ( <>
{vendor.description}
{vendor.address_line_1 && (
<>
{vendor.address_line_1}
>
)}
{vendor.address_line_2 && (
<>
{vendor.address_line_2}
>
)}
{vendor.city && (
<>
{vendor.city}
>
)}
{vendor.state && (
<>
{vendor.state}
>
)}
{vendor.country && (
<>
{vendor.country}
>
)}