"use client"; import { useState } from "react"; import { useNodes } from "@/lib/useNodes"; import { useSystems } from "@/lib/useSystems"; import { NodeCard } from "@/components/NodeCard"; import { NodeConfigModal } from "@/components/NodeConfigModal"; import type { NodeRecord } from "@/lib/types"; export default function NodesPage() { const { nodes, loading } = useNodes(); const { systems } = useSystems(); const [configNode, setConfigNode] = useState(null); const systemMap = Object.fromEntries(systems.map((s) => [s.system_id, s])); const pending = nodes.filter((n) => !n.configured); return (

Nodes

{pending.length > 0 && (

Needs Configuration ({pending.length})

{pending.map((n) => (
setConfigNode(n)} className="cursor-pointer">
))}
)}

All Nodes ({nodes.length})

{loading ? (

Loading…

) : nodes.length === 0 ? (

No nodes registered yet. Boot a Pi to get started.

) : (
{nodes.map((n) => ( ))}
)}
{configNode && ( setConfigNode(null)} /> )}
); }