|
|
@ -8,7 +8,7 @@ import useAuth, { AuthResponse } from "src/hooks/auth"
|
|
|
|
import useNodeData, { NodeData, NodeUpdate } from "src/hooks/node-data"
|
|
|
|
import useNodeData, { NodeData, NodeUpdate } from "src/hooks/node-data"
|
|
|
|
import { ReactComponent as TailscaleIcon } from "src/icons/tailscale-icon.svg"
|
|
|
|
import { ReactComponent as TailscaleIcon } from "src/icons/tailscale-icon.svg"
|
|
|
|
import ProfilePic from "src/ui/profile-pic"
|
|
|
|
import ProfilePic from "src/ui/profile-pic"
|
|
|
|
import { Link, Route, Switch, useLocation } from "wouter"
|
|
|
|
import { Link, Route, Router, Switch, useLocation } from "wouter"
|
|
|
|
import DeviceDetailsView from "./views/device-details-view"
|
|
|
|
import DeviceDetailsView from "./views/device-details-view"
|
|
|
|
|
|
|
|
|
|
|
|
export default function App() {
|
|
|
|
export default function App() {
|
|
|
@ -46,6 +46,7 @@ function WebClient({
|
|
|
|
{/* TODO(sonia): get rid of the conditions here once full/readonly
|
|
|
|
{/* TODO(sonia): get rid of the conditions here once full/readonly
|
|
|
|
* views live on same components */}
|
|
|
|
* views live on same components */}
|
|
|
|
{data.DebugMode === "full" && auth?.ok && <Header node={data} />}
|
|
|
|
{data.DebugMode === "full" && auth?.ok && <Header node={data} />}
|
|
|
|
|
|
|
|
<Router base={data.URLPrefix}>
|
|
|
|
<Switch>
|
|
|
|
<Switch>
|
|
|
|
<Route path="/">
|
|
|
|
<Route path="/">
|
|
|
|
<HomeView
|
|
|
|
<HomeView
|
|
|
@ -70,6 +71,7 @@ function WebClient({
|
|
|
|
<h2 className="mt-8">Page not found</h2>
|
|
|
|
<h2 className="mt-8">Page not found</h2>
|
|
|
|
</Route>
|
|
|
|
</Route>
|
|
|
|
</Switch>
|
|
|
|
</Switch>
|
|
|
|
|
|
|
|
</Router>
|
|
|
|
</>
|
|
|
|
</>
|
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|