UNPKG

@t1mmen/srtd

Version:

Supabase Repeatable Template Definitions (srtd): 🪄 Live-reloading SQL templates for Supabase DX. Make your database changes reviewable and migrations maintainable! 🚀

29 lines • 1.12 kB
// hooks/useTemplateState.ts import { useEffect, useState } from 'react'; import { TemplateManager } from '../lib/templateManager.js'; import { findProjectRoot } from '../utils/findProjectRoot.js'; export function useTemplateState() { const [loading, setLoading] = useState(true); const [error, setError] = useState(null); const [items, setItems] = useState([]); useEffect(() => { async function fetchStatus() { try { const baseDir = await findProjectRoot(); const manager = await TemplateManager.create(baseDir); const templates = await manager.findTemplates(); const statuses = await Promise.all(templates.map(t => manager.getTemplateStatus(t))); setItems(statuses); } catch (err) { setError(err instanceof Error ? err.message : 'Unknown error'); } finally { setLoading(false); } } fetchStatus(); }, []); return { loading, error, items }; } //# sourceMappingURL=useTemplateState.js.map