1{{/*2 empty-state — the library card: what a bundle is, where it goes, and the one3 button that puts a picker in front of the reader.45 It is a whole page rather than a region because a library with nothing in it6 has no explorer to be a region of. It renders inside #atlas-shell all the7 same, so an import that fills the library can swap the explorer straight8 into its place.9*/}}10{{define "empty-state"}}<!doctype html>11<html lang="en">12<head>13<meta charset="utf-8">14<meta name="viewport" content="width=device-width, initial-scale=1">15<meta name="color-scheme" content="dark">16<link rel="icon" href="data:,">17<title>Atlas</title>18<link rel="stylesheet" href="/assets/app.css">19<script src="/assets/htmx.js" defer></script>20</head>21<body class="atlas">22<div id="atlas-shell" class="empty-state">23 <strong>No volumes installed yet</strong>24 <p>Each volume is a single <code>.atlas</code> file. Drop one into</p>25 <p><code id="empty-path">{{.LibraryDir}}</code></p>26 <p>and it appears here at the next launch — or pick files to copy in:</p>27 <button type="button" id="empty-open"28 hx-post="/bundles/import" hx-swap="none">Open .atlas files…</button>29</div>30{{template "import" .}}31{{template "island" .}}32<div hidden hx-sse:connect="/events" hx-trigger="load" id="atlas-events"></div>33<div hidden hx-get="/" hx-trigger="catalog from:#atlas-events"34 hx-target="#atlas-shell" hx-select="#atlas-shell" hx-swap="outerMorph"></div>35</body>36</html>37{{end}}