diff --git a/src/hooks/useEmDashContent.ts b/src/hooks/useEmDashContent.ts new file mode 100644 index 0000000..e121a6f --- /dev/null +++ b/src/hooks/useEmDashContent.ts @@ -0,0 +1,26 @@ +'use client' +import { useState, useEffect } from 'react' + +export interface CmsItem { + id: string + slug: string + data: Record + publishedAt: string | null +} + +export function useEmDashContent(collection: string) { + const [items, setItems] = useState([]) + const [loading, setLoading] = useState(true) + + useEffect(() => { + fetch(`/api/emdash/${collection}`) + .then(r => r.json()) + .then((data: { items?: CmsItem[] }) => { + setItems(data.items ?? []) + setLoading(false) + }) + .catch(() => setLoading(false)) + }, [collection]) + + return { items, loading } +}