46 lines
1.2 KiB
Plaintext
46 lines
1.2 KiB
Plaintext
package template
|
|
|
|
templ Layout(slot templ.Component, user templ.Component) {
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8"/>
|
|
<title>web-app-template</title>
|
|
<link rel="icon" href="/static/favicon.svg"/>
|
|
<link rel="stylesheet" href="/static/css/tailwind.css"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<meta
|
|
name="htmx-config"
|
|
content='{
|
|
"includeIndicatorStyles": false,
|
|
"selfRequestsOnly": true,
|
|
"allowScriptTags": false
|
|
}'
|
|
/>
|
|
<script src="/static/js/htmx.min.js"></script>
|
|
<script src="/static/js/toast.js"></script>
|
|
</head>
|
|
<body hx-headers='{"csrf-token": "CSRF_TOKEN"}'>
|
|
<div class="h-screen flex flex-col">
|
|
<div class="flex justify-end items-center gap-2 py-1 px-2 h-12 md:gap-10 md:px-10 md:py-2 shadow-sm">
|
|
<a href="/" class="flex-1 flex gap-2">
|
|
<img src="/static/favicon.svg" alt="web-app-template logo"/>
|
|
<span>web-app-template</span>
|
|
</a>
|
|
@user
|
|
</div>
|
|
<div class="flex-1">
|
|
if slot != nil {
|
|
@slot
|
|
}
|
|
</div>
|
|
</div>
|
|
<div class="" id="toasts">
|
|
<div class="hidden" id="toast">
|
|
New message arrived.
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|
|
}
|