|
1 |
| -<div class="container"> |
2 |
| - <div class="row"> |
3 |
| - <section class="max-w-screen-lg py-16 mx-auto lg:py-20"> |
4 |
| - <h1 class="pb-16 text-2xl font-bold text-center md:text-4xl">Admin</h1> |
5 |
| - </section> |
6 |
| - </div> |
7 |
| - <ul role="list" class="divide-y divide-gray-100"> |
8 |
| - <li class="relative flex py-5"> |
9 |
| - <div class="flex min-w-0 gap-x-4"> |
10 |
| - <div class="min-w-0 flex-auto"> |
11 |
| - <p class="font-semibold leading-6"> |
12 |
| - <a href="/admin/flipper"> |
13 |
| - <span class="absolute inset-x-0 -top-px bottom-0"></span> |
14 |
| - Flipper |
15 |
| - </a> |
16 |
| - </p> |
| 1 | +<% |
| 2 | +nav = { |
| 3 | + "Flipper" => "/admin/flipper", |
| 4 | + "Mission Control Jobs" => "/admin/jobs", |
| 5 | + "Litestream" => "/admin/litestream", |
| 6 | +} |
| 7 | +%> |
| 8 | +<article> |
| 9 | + <%= render Pages::Header.new(title: "Admin") %> |
| 10 | + <div class="container"> |
| 11 | + <ul role="list" class="divide-y divide-gray-100"> |
| 12 | + <% nav.each do |label, url| %> |
| 13 | + <li class="relative flex py-5"> |
| 14 | + <div class="flex min-w-0 gap-x-4"> |
| 15 | + <div class="min-w-0 flex-auto"> |
| 16 | + <p class="font-semibold leading-6"> |
| 17 | + <%= link_to url do %> |
| 18 | + <span class="absolute inset-x-0 -top-px bottom-0"></span> |
| 19 | + <%= label %> |
| 20 | + <% end %> |
| 21 | + </p> |
| 22 | + </div> |
17 | 23 | </div>
|
18 |
| - </div> |
19 |
| - <div class="flex shrink-0 items-center gap-x-4"> |
20 |
| - <svg class="h-5 w-5 flex-none text-gray-400" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"> |
21 |
| - <path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z" clip-rule="evenodd" /> |
22 |
| - </svg> |
23 |
| - </div> |
24 |
| - </li> |
25 |
| - <li class="relative flex py-5"> |
26 |
| - <div class="flex min-w-0 gap-x-4"> |
27 |
| - <div class="min-w-0 flex-auto"> |
28 |
| - <p class="font-semibold leading-6"> |
29 |
| - <a href="/admin/jobs"> |
30 |
| - <span class="absolute inset-x-0 -top-px bottom-0"></span> |
31 |
| - Mission Control Jobs |
32 |
| - </a> |
33 |
| - </p> |
| 24 | + <div class="flex shrink-0 items-center gap-x-4"> |
| 25 | + <svg class="h-5 w-5 flex-none text-gray-400" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"> |
| 26 | + <path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z" clip-rule="evenodd" /> |
| 27 | + </svg> |
34 | 28 | </div>
|
35 |
| - </div> |
36 |
| - <div class="flex shrink-0 items-center gap-x-4"> |
37 |
| - <svg class="h-5 w-5 flex-none text-gray-400" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"> |
38 |
| - <path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z" clip-rule="evenodd" /> |
39 |
| - </svg> |
40 |
| - </div> |
41 |
| - </li> |
42 |
| - </ul> |
43 |
| -</div> |
| 29 | + </li> |
| 30 | + <% end %> |
| 31 | + </ul> |
| 32 | + </div> |
| 33 | +</article> |
44 | 34 |
|
| 35 | +<% content_for :head do %> |
45 | 36 | <script type="text/javascript">
|
46 | 37 | document.addEventListener("DOMContentLoaded", () => {
|
47 | 38 | if (window.channels?.heartbeat?.subscribe) {
|
|
50 | 41 | }
|
51 | 42 | });
|
52 | 43 | </script>
|
| 44 | +<% end %> |
0 commit comments