// SPDX-License-Identifier: AGPL-3.0-or-later package web // Shell is the page: head, the two bars, the work area (content and rail), // the overlays and the key map. The content is the children. templ Shell(l Layout, rail templ.Component) { { l.Title } @Topbar(l)
{ children... }
if l.HasRail && rail != nil { }
@OverlayHelp() @OverlayRefs(l) @OverlayCmd(l.Cmd) @Statusbar(l) @Keys() } // Topbar is the top bar, neferbar style: the one accent block (instance) // fading into the black bar, the path, the repo sections, the ref switcher. templ Topbar(l Layout) {
{ l.Instance } if len(l.Sections) > 0 { } if l.Ref != "" { }
} // Statusbar is the bottom bar: mode, context, the ":" command prompt, the // source link (AGPL §13), hints, live state and the cursor position. Plain // text only: the top bar carries the accent. templ Statusbar(l Layout) { } // Footer is the version and the link to the source of the running version, // which the AGPL §13 asks every user of the service to be offered. templ Footer(l Layout) { ermite { l.Version } · source }