- Added functionality to save and retrieve the current dashboard view in localStorage for improved user experience. - Updated DashboardLayout component to handle view changes with access control based on user roles. - Renamed Experiments component to ExperimentManagement for clarity. - Introduced new ExperimentPhase interface and related utility functions for managing experiment phases. - Updated seed data to include initial roles and experiment phases for testing. - Cleaned up unnecessary blank lines in various files for better code readability.
34 lines
782 B
TypeScript
Executable File
34 lines
782 B
TypeScript
Executable File
import { LiveCameraView } from './LiveCameraView'
|
|
|
|
interface CameraRouteProps {
|
|
cameraNumber: string
|
|
}
|
|
|
|
export function CameraRoute({ cameraNumber }: CameraRouteProps) {
|
|
// Validate camera number (only allow camera1, camera2, etc.)
|
|
if (!cameraNumber || !/^camera\d+$/.test(cameraNumber)) {
|
|
return (
|
|
<div className="min-h-screen flex items-center justify-center bg-gray-900">
|
|
<div className="text-center text-white">
|
|
<h1 className="text-2xl font-bold mb-4">Invalid Camera</h1>
|
|
<p className="text-gray-300">Camera number must be in format: camera1, camera2, etc.</p>
|
|
</div>
|
|
</div>
|
|
)
|
|
}
|
|
|
|
return <LiveCameraView cameraName={cameraNumber} />
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|