Huge refactor for bulk editing of references and new schema changes in backend

This commit is contained in:
Ian Keane 2026-06-11 10:06:20 -04:00
parent eb130ffcfd
commit 067272b797
3 changed files with 624 additions and 19 deletions

View file

@ -9,11 +9,12 @@
<body>
<header>
<h1>🎵 Repertory</h1>
<h1>🪕 Repertory</h1>
<div id="header-actions">
<input type="search" id="filter-search" placeholder="Search…" />
<button id="btn-clear-filters" hidden>✕ Clear filters</button>
<span id="status"></span>
<button id="btn-bulk-edit" hidden>⚡ Bulk Edit</button>
<button id="btn-add-tune" hidden>+ Add tune</button>
<button id="btn-unlock">🔒 Unlock</button>
</div>
@ -25,15 +26,16 @@
<thead>
<tr>
<th data-col="name">Name <span class="sort-indicator"></span></th>
<th data-filter="key">Key</th>
<th data-filter="source">Source</th>
<th data-filter="modal">Modal</th>
<th data-filter="key">Key</th>
<th data-filter="modal"><span class="col-full">Modal</span><span class="col-short">Mod.</span></th>
<th data-filter="instrument">Instrument</th>
<th data-filter="tuning">Tuning</th>
<th data-filter="callable">Callable</th>
<th data-filter="review">Review</th>
<th data-filter="to_learn">To learn</th>
<th data-filter="callable"><span class="col-full">Callable</span><span class="col-short">Call.</span></th>
<th data-filter="review"><span class="col-full">Review</span><span class="col-short">Rev.</span></th>
<th data-filter="to_learn"><span class="col-full">To learn</span><span class="col-short">Learn</span></th>
<th>Notes</th>
<th>Refs</th>
<th class="edit-col" hidden></th>
</tr>
</thead>
@ -47,6 +49,40 @@
<div id="filter-popover-inner"></div>
</div>
<!-- ── Bulk edit popover ─────────────────────────────────────── -->
<div id="bulk-edit-popover" hidden>
<button id="btn-open-bulk-refs">📎 Bulk Edit References</button>
</div>
<!-- ── Bulk edit references modal ───────────────────────────── -->
<dialog id="bulk-refs-modal">
<h2>Bulk Edit References</h2>
<div id="bulk-refs-controls">
<input type="search" id="bulk-refs-search" placeholder="Filter by name…" />
<select id="bulk-refs-instrument">
<option value="">All instruments</option>
</select>
<select id="bulk-refs-source">
<option value="">All sources</option>
</select>
<select id="bulk-refs-has-refs">
<option value="">All tunes</option>
<option value="no">No refs yet</option>
<option value="yes">Has refs</option>
</select>
<select id="bulk-refs-sort">
<option value="newest">Newest first</option>
<option value="oldest">Oldest first</option>
<option value="name_asc">Name A→Z</option>
<option value="name_desc">Name Z→A</option>
</select>
</div>
<div id="bulk-refs-list"></div>
<div class="modal-actions">
<button id="btn-bulk-refs-close">Close</button>
</div>
</dialog>
<!-- ── Add / Edit tune modal ────────────────────────────────── -->
<dialog id="tune-modal">
<form id="tune-form" method="dialog">
@ -106,6 +142,7 @@
<div id="refs-section">
<h3>References</h3>
<div id="refs-list"></div>
<datalist id="ref-site-list"></datalist>
<button type="button" id="btn-add-ref">+ reference</button>
</div>
@ -118,6 +155,15 @@
</form>
</dialog>
<!-- ── References display modal ─────────────────────────────── -->
<dialog id="refs-modal">
<h2 id="refs-modal-title">References</h2>
<div id="refs-modal-list"></div>
<div class="modal-actions">
<button id="btn-refs-modal-close">Close</button>
</div>
</dialog>
<!-- ── Notes modal ──────────────────────────────────────────── -->
<dialog id="notes-modal">
<h2 id="notes-modal-title">Notes</h2>