45 lines
1.2 KiB
Plaintext
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>
|
|
}
|