diff options
| author | Joe Mou <dev@mou.fo> | 2026-01-27 16:58:56 -0500 |
|---|---|---|
| committer | Joe Mou <dev@mou.fo> | 2026-01-27 17:21:42 -0500 |
| commit | 8fec0b99fbe193326d25fc107e0c625dcf05fd12 (patch) | |
| tree | b37629a1f2e77408b82f5d1a5691906a3dfe9cad /views | |
| parent | 70534dacebc69e05d2674a08b4b75b352b8a8913 (diff) | |
Split branch and path bread crumbs into separate section
Diffstat (limited to 'views')
| -rw-r--r-- | views/_nav.eta | 18 | ||||
| -rw-r--r-- | views/_tree.eta | 2 | ||||
| -rw-r--r-- | views/blob.eta | 4 | ||||
| -rw-r--r-- | views/layout.eta | 22 | ||||
| -rw-r--r-- | views/repo.eta | 2 | ||||
| -rw-r--r-- | views/tree.eta | 4 |
6 files changed, 28 insertions, 24 deletions
diff --git a/views/_nav.eta b/views/_nav.eta new file mode 100644 index 0000000..338a6a6 --- /dev/null +++ b/views/_nav.eta @@ -0,0 +1,18 @@ +<section> + <div class="branch"><img src="/static/icons/git-branch.svg" alt="branch" class="icon"> <%= it.branch %></div> + <% if (it.path && it.path !== "/") { %> + <a href="/<%= it.repo.owner %>/<%= it.repo.name %>/tree/<%= it.branch %>">(top)</a><% + const pathParts = it.path.split('/').filter(p => p); + let currentPath = ''; + for (let i = 0; i < pathParts.length; i++) { + const part = pathParts[i]; + currentPath += (currentPath ? '/' : '') + part; + const isLast = i === pathParts.length - 1; + if (isLast) { + %>/<%= part %><%= it.isTree ? "/" : "" %><% + } else { + %>/<a href="/<%= it.repo.owner %>/<%= it.repo.name %>/tree/<%= it.branch %>/<%= currentPath %>"><%= part %></a><% + } + } %> + <% } %> +</section> diff --git a/views/_tree.eta b/views/_tree.eta index d0c3453..311762f 100644 --- a/views/_tree.eta +++ b/views/_tree.eta @@ -1,3 +1,5 @@ +<%~ include("./_nav.eta", {...it, isTree: true}) %> + <table> <% for (const item of it.items) { %> <tr> diff --git a/views/blob.eta b/views/blob.eta index 7328a62..277b46d 100644 --- a/views/blob.eta +++ b/views/blob.eta @@ -1,4 +1,6 @@ -<% layout("./layout") %> +<% layout("./layout.eta") %> + +<%~ include("./_nav.eta", it) %> <div> <% if (it.language) { %> diff --git a/views/layout.eta b/views/layout.eta index bfcd370..f053b84 100644 --- a/views/layout.eta +++ b/views/layout.eta @@ -6,29 +6,11 @@ <link rel="stylesheet" href="/static/style.css"> </head> <body> - <header> + <div class="box"> <div class="repo"><%= it.repo.owner %>/<%= it.repo.name %></div> - <div class="branch"><img src="/static/icons/git-branch.svg" alt="branch" class="icon"> <%= it.branch %></div> - <% if (it.path) { %> - <span> - <a href="/<%= it.repo.owner %>/<%= it.repo.name %>/tree/<%= it.branch %>">(top)</a><% - const pathParts = it.path.split('/').filter(p => p); - let currentPath = ''; - for (let i = 0; i < pathParts.length; i++) { - const part = pathParts[i]; - currentPath += (currentPath ? '/' : '') + part; - const isLast = i === pathParts.length - 1; - if (isLast) { - %>/<%= part %><% - } else { - %>/<a href="/<%= it.repo.owner %>/<%= it.repo.name %>/tree/<%= it.branch %>/<%= currentPath %>"><%= part %></a><% - } - } %> - </span> - <% } %> <pre><code>git clone https://github.com/<%= it.repo.owner %>/<%= it.repo.name %>.git git clone git@github.com:<%= it.repo.owner %>/<%= it.repo.name %>.git</code></pre> - </header> + </div> <%~ it.body %> diff --git a/views/repo.eta b/views/repo.eta index 5bebb95..9122775 100644 --- a/views/repo.eta +++ b/views/repo.eta @@ -1,4 +1,4 @@ -<% layout("./layout") %> +<% layout("./layout.eta") %> <% if (it.info) { %> <div class="box"> diff --git a/views/tree.eta b/views/tree.eta index 7068754..6e675e1 100644 --- a/views/tree.eta +++ b/views/tree.eta @@ -1,3 +1,3 @@ -<% layout("./layout") %> +<% layout("./layout.eta") %> -<%~ include("./_tree", it) %> +<%~ include("./_tree.eta", it) %> |
