Migrated pitch-deck from breakpilot-pwa to breakpilot-core. Container: bp-core-pitch-deck on port 3012. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
793 B
TypeScript
30 lines
793 B
TypeScript
'use client'
|
|
|
|
import { useState, useEffect } from 'react'
|
|
import { PitchData } from '../types'
|
|
|
|
export function usePitchData() {
|
|
const [data, setData] = useState<PitchData | null>(null)
|
|
const [loading, setLoading] = useState(true)
|
|
const [error, setError] = useState<string | null>(null)
|
|
|
|
useEffect(() => {
|
|
async function fetchData() {
|
|
try {
|
|
const res = await fetch('/api/data')
|
|
if (!res.ok) throw new Error(`HTTP ${res.status}`)
|
|
const json = await res.json()
|
|
setData(json)
|
|
} catch (err) {
|
|
console.error('Failed to load pitch data:', err)
|
|
setError(err instanceof Error ? err.message : 'Unknown error')
|
|
} finally {
|
|
setLoading(false)
|
|
}
|
|
}
|
|
fetchData()
|
|
}, [])
|
|
|
|
return { data, loading, error }
|
|
}
|