Files
nebula/layouts/base.templ

45 lines
1.2 KiB
Plaintext

package layouts
import "nebula/pkg/config"
templ Base(title string) {
<!DOCTYPE html>
<html lang="en" class={ "wa-cloak", config.FromContext(ctx).ThemeClass() }>
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="color-scheme" content="dark light"/>
<meta name="htmx-config" content={ config.FromContext(ctx).HTMXConfigJSON() }/>
<title>{ title } - { config.FromContext(ctx).AppTitle }</title>
<script src="https://kit.webawesome.com/47c7425b971f443c.js" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/htmx.org@4.0.0-alpha5/dist/htmx.min.js"></script>
if config.FromContext(ctx).Preload {
<script src="https://cdn.jsdelivr.net/npm/htmx.org@4.0.0-alpha5/dist/ext/hx-preload.js"></script>
}
<script src="https://cdn.jsdelivr.net/npm/d3@7"></script>
@baseStyles()
</head>
<body>
{ children... }
</body>
</html>
}
templ baseStyles() {
<style>
:root {
--wa-color-primary: #17c2ff;
--sidebar-width: 64px;
}
html, body {
min-height: 100%;
padding: 0;
margin: 0;
cursor: default;
}
wa-button, a, [onclick], [hx-get], [hx-post] {
cursor: pointer;
}
</style>
}