44 lines
2.5 KiB
HTML
44 lines
2.5 KiB
HTML
{! #include "../ui-repolist.h" !}
|
|
|
|
{% page cgit_print_repolist %}
|
|
{! ctx.page.title = ctx.cfg.root_title; !}
|
|
{! page_start(); !}
|
|
<header class="bg-gray-50 border-b border-gray-300">
|
|
{# Repo header #}
|
|
<div class="max-w-[1280px] mx-auto py-4 flex gap-x-1">
|
|
<a href="{{ cgit_rooturl()|attr }}" class="text-lg hover:underline">{{ ctx.cfg.root_title }}</a>
|
|
</div>
|
|
</header>
|
|
<main class="max-w-[1280px] mx-auto py-4">
|
|
{# Main content #}
|
|
<form method="GET" action="{{ cgit_rooturl()|attr }}" class="flex text-sm mb-4 outline-1 outline-gray-300 rounded-lg has-[input:focus-within]:outline-2 has-[input:focus-within]:outline-blue-600">
|
|
{# Search box #}
|
|
<input name="q" value="{{ ctx.qry.search|attr }}" type="text" placeholder="Search repos…" class="flex-1 py-1.5 pl-2 text-sm focus:outline-none">
|
|
<button class="py-1.5 px-2 cursor-pointer" action="submit" value="search">
|
|
{# Heroicons micro magnifying-glass #}
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="text-gray-700 size-4"><path fill-rule="evenodd" d="M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z" clip-rule="evenodd" /></svg>
|
|
</button>
|
|
</form>
|
|
<div class="grid grid-cols-[auto_1fr]">
|
|
{# Repo list #}
|
|
{! cgit_repolist_sort_repolist("idle"); !}
|
|
{% for int i = 0; i < cgit_repolist.count; i++ %}
|
|
{! ctx.repo = &cgit_repolist.repos[i]; !}
|
|
{! if (!cgit_repolist_is_visible(ctx.repo)) { continue; } !}
|
|
<div{% if i > 0 %} class="border-t border-gray-300 pt-2 mt-2"{% endif %}>
|
|
{# Heroicons outline cube #}
|
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-6"><path stroke-linecap="round" stroke-linejoin="round" d="m21 7.5-9-5.25L3 7.5m18 0-9 5.25m9-5.25v9l-9 5.25M3 7.5l9 5.25M3 7.5v9l9 5.25m0-9v9" /></svg>
|
|
</div>
|
|
<div class="{% if i > 0 %}border-t border-gray-300 pt-2 mt-2 {% endif %}pl-2">
|
|
{! char *repourl = cgit_repourl(ctx.repo->url); !}
|
|
<div><a href="{{ repourl|attr }}" class="font-semibold text-blue-500 hover:text-blue-600 hover:underline">{{ ctx.repo->name }}</a></div>
|
|
{! free(repourl); !}
|
|
<div class="text-sm text-gray-500">{{ ctx.repo->desc }}</div>
|
|
<div class="text-sm text-gray-500">Updated {! cgit_repolist_print_modtime_themed(ctx.repo); !}</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</main>
|
|
{! page_end(); !}
|
|
{% endpage %}
|