import { useState, useCallback } from 'react'; import ScheduleView from './components/ScheduleView.jsx'; import CarManagement from './components/CarManagement.jsx'; import TimelineView from './components/TimelineView.jsx'; import useWebSocket from './hooks/useWebSocket.js'; import styles from './App.module.css'; export default function App() { const [page, setPage] = useState('schedule'); const [reloadKey, setReloadKey] = useState(0); const handleWsMessage = useCallback((msg) => { if (msg.type === 'data_changed') { setReloadKey((k) => k + 1); } }, []); const { status: wsStatus } = useWebSocket(handleWsMessage); return (

🚗 代車スケジュール管理

{wsStatus === 'error' && (
⚠️ サーバーとの接続が切断されました。ページを再読み込みしてください。
)}
{page === 'schedule' && } {page === 'timeline' && } {page === 'cars' && }
); }