| 1 | {{/* layout — every page's document: the head, the estilo bar and <main>. |
| 2 | It replaces rastrillo's topbar shell, whose <header rst-shell-bar> |
| 3 | hard-codes an "Account" summary and a tail that wraps, neither of which |
| 4 | estilo may restyle (estilo's CSS may not select rastrillo's markup). |
| 5 | |
| 6 | Every page's data carries a Frame (chrome.go): the bar, and the |
| 7 | <title> parts before the app's name. The title is built here and only |
| 8 | here, "{part} · {part} · Docs", so no handler can drift from the |
| 9 | suite's separator. |
| 10 | |
| 11 | <meta charset> comes first, before anything that could be read as |
| 12 | text. The stylesheets are in the suite's fixed order: tokens, theme, |
| 13 | brand, then estilo's base, menu and chrome, then the page's own. */}} |
| 14 | {{define "layout"}}<!doctype html> |
| 15 | <html lang="en" dir="ltr"{{with .Frame.Theme}} data-theme="{{.}}"{{end}}> |
| 16 | <head> |
| 17 | <meta charset="utf-8"> |
| 18 | <meta name="viewport" content="width=device-width, initial-scale=1"> |
| 19 | <title>{{range .Frame.TitleParts}}{{.}} · {{end}}{{.Frame.Chrome.App.Name}}</title> |
| 20 | <link rel="stylesheet" href="/static/estilo/fonts/v1/fonts.css"> |
| 21 | <link rel="stylesheet" href="{{asset "static/tokens.css"}}"> |
| 22 | <link rel="stylesheet" href="{{asset "static/estilo/busy.css"}}"> |
| 23 | <link rel="stylesheet" href="{{asset "static/theme.css"}}"> |
| 24 | {{template "head" .}} |
| 25 | <link rel="stylesheet" href="{{asset "static/estilo/base.css"}}"> |
| 26 | <link rel="stylesheet" href="{{asset "static/estilo/menu.css"}}"> |
| 27 | <link rel="stylesheet" href="{{asset "static/estilo/chrome.css"}}"> |
| 28 | <link rel="stylesheet" href="{{asset "static/estilo/sky.css"}}"> |
| 29 | <script defer src="{{asset "static/rastrillo.js"}}"></script> |
| 30 | <script defer src="{{asset "static/estilo/busy.js"}}"></script> |
| 31 | {{iconAssets}} |
| 32 | <script defer src="{{asset "static/select.js"}}"></script> |
| 33 | <script defer src="{{asset "static/datetime.js"}}"></script> |
| 34 | <script defer src="{{asset "static/estilo/chrome.js"}}"></script> |
| 35 | </head> |
| 36 | <body> |
| 37 | <div estilo-shell> |
| 38 | <a rst-skip href="#main">{{.Frame.Chrome.Labels.Skip}}</a> |
| 39 | {{template "estilo-bar" .Frame.Chrome}} |
| 40 | <main rst-page id="main"> |
| 41 | {{template "content" .}} |
| 42 | </main> |
| 43 | </div> |
| 44 | </body> |
| 45 | </html> |
| 46 | {{end}} |
| 47 | |