ef5274acd5
- Fix Quarkus BOM groupId (io.quarkus:quarkus-bom) and version (3.37.1)
- Fix artifact names: quarkus-resteasy, quarkus-resteasy-qute, quarkus-resteasy-client
- Add UserAgentFilter for MusicBrainz API compliance
- Fix @RestClient qualifier on MB client injection points
- Fix Qute template section names: {#insert}{/insert}, {#else} not {:else}
- Fix template injection with @Location annotation
- Remove unused imports
- Fix RSS feed builder to use Synd API
72 lines
2.4 KiB
HTML
72 lines
2.4 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en" data-theme="dark">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>DiscDrop</title>
|
|
<link href="https://cdn.jsdelivr.net/npm/daisyui@4.12.23/dist/full.min.css" rel="stylesheet">
|
|
<script src="https://unpkg.com/htmx.org@2.0.4/dist/htmx.min.js"></script>
|
|
<style>
|
|
.search-dropdown {
|
|
position: absolute;
|
|
top: 100%;
|
|
left: 0;
|
|
right: 0;
|
|
z-index: 50;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body class="min-h-screen bg-base-200">
|
|
<div class="navbar bg-base-100 shadow-lg px-4">
|
|
<div class="flex-1 gap-2">
|
|
<a href="/" class="text-xl font-bold">🎵 DiscDrop</a>
|
|
<div class="tabs tabs-box ml-4 hidden sm:flex">
|
|
<a href="/" class="tab {#if activeTab == 'releases'}tab-active{/if}">Releases</a>
|
|
<a href="/artists" class="tab {#if activeTab == 'artists'}tab-active{/if}">Artists</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="flex-none gap-2 relative">
|
|
<div class="form-control">
|
|
<input type="text" placeholder="Search artists..."
|
|
class="input input-bordered input-sm w-48 md:w-64"
|
|
name="q"
|
|
hx-get="/api/artists/search"
|
|
hx-trigger="keyup changed delay:300ms"
|
|
hx-target="#search-results"
|
|
hx-swap="innerHTML"
|
|
autocomplete="off">
|
|
</div>
|
|
<div id="search-results" class="search-dropdown"></div>
|
|
|
|
<select class="select select-bordered select-sm w-full max-w-[8rem]" data-choose-theme>
|
|
<option value="dark">Dark</option>
|
|
<option value="light">Light</option>
|
|
<option value="synthwave">Synthwave</option>
|
|
<option value="retro">Retro</option>
|
|
<option value="dracula">Dracula</option>
|
|
<option value="night">Night</option>
|
|
<option value="dim">Dim</option>
|
|
<option value="nord">Nord</option>
|
|
</select>
|
|
|
|
<button class="btn btn-ghost btn-sm"
|
|
onclick="settingsModal.showModal()">⚙️</button>
|
|
</div>
|
|
</div>
|
|
|
|
<main class="container mx-auto p-4">
|
|
{#insert page-content}{/insert}
|
|
</main>
|
|
|
|
<dialog id="settingsModal" class="modal">
|
|
<div class="modal-box" id="settings-modal-content"
|
|
hx-get="/api/settings/form"
|
|
hx-trigger="load"
|
|
hx-swap="innerHTML">
|
|
<span class="loading loading-spinner"></span>
|
|
</div>
|
|
</dialog>
|
|
</body>
|
|
</html>
|