23 lines
814 B
TypeScript
23 lines
814 B
TypeScript
// <StartPage> — `/`, the swarm's landing page: the swarm's name over the
|
|
// digital-rain backdrop, plus the setup assistant while the swarm has no
|
|
// `ruth`. The header's swarm name links here. The hive roster that used to be
|
|
// `/` is now `/hives`.
|
|
import { MatrixRain } from "../shell/MatrixRain.js";
|
|
import { useSwarmName } from "../shell/useSwarmName.js";
|
|
import { SetupAssistant } from "./SetupAssistant.js";
|
|
import "./StartPage.css";
|
|
|
|
// Same fallback as the header and the page title, so an unnamed swarm shows
|
|
// one label everywhere.
|
|
const DEFAULT_NAME = "hyperhive swarm";
|
|
|
|
export function StartPage() {
|
|
const name = useSwarmName() ?? DEFAULT_NAME;
|
|
return (
|
|
<div class="start-page">
|
|
<MatrixRain />
|
|
<h1 class="start-page-name">{name}</h1>
|
|
<SetupAssistant />
|
|
</div>
|
|
);
|
|
}
|