Add 4 UX improvements to spelling/flashcards panel

- Assign → button on each list row opens a popup to pick a kid directly
  without scrolling up to the assignment dropdowns
- Hide/Unhide button on built-in lists (stored in localStorage) keeps
  UNGROUPED clean; Show hidden toggle reveals them dimmed when needed
- Mastery progress bar on each kid showing X/Y words mastered for their
  current assigned list (server now returns listProgress in /api/overview)
- Filter-lists / filter-decks search input for fast lookup by name

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
nmemmertandClaude Sonnet 4.6 committed 2026-07-27 13:47:27 -04:00
1 parent 5c2b5baec2
commit 774979f2e4
4 files changed
+152 -21

No files matched your search

+13
View File
@@ -300,6 +300,10 @@
<h2>This week's list per kid</h2>
<div id="assign-rows"></div>
<h2>Word lists</h2>
<div class="filter-bar">
<input id="list-filter" type="search" placeholder="Filter lists…" aria-label="Filter lists">
<button type="button" id="list-show-hidden" class="secondary small" hidden>Show hidden</button>
</div>
<div id="list-rows"></div>
<h2>Test results</h2>
<div id="results-area"></div>
@@ -347,6 +351,9 @@
<h1>Flashcard Decks</h1>
<div class="panel-cols">
<div class="panel-col">
<div class="filter-bar">
<input id="deck-filter" type="search" placeholder="Filter decks…" aria-label="Filter decks">
</div>
<div id="deck-rows"></div>
</div>
<div class="panel-col">
@@ -437,6 +444,12 @@
</main>
</div>
<!-- Floating assign popup -->
<div id="assign-popup" hidden>
<p class="assign-popup-label">Assign to…</p>
<div id="assign-popup-students"></div>
</div>
<script src="admin.js"></script>
</body>
</html>