Make list/deck group sections collapsible with prominent headers
Group headers now use a solid tan background, bold uppercase text, and a ▼/▶ arrow indicator so collapsible sections are visually obvious. Uses native <details>/<summary> elements; ungrouped items show inline when no named groups exist. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
9acd0a792f
commit
24e709e038
2 files changed
+23
-8
No files matched your search
+4
-2
@@ -1324,10 +1324,12 @@ function renderGroupSections(groups, renderItem) {
|
||||
const ungrouped = groups[''] || [];
|
||||
let html = '';
|
||||
for (const g of named) {
|
||||
html += `<div class="list-group"><div class="list-group-header">${esc(g)}</div>${groups[g].map(renderItem).join('')}</div>`;
|
||||
html += `<details class="list-group" open><summary class="list-group-header">${esc(g)}</summary>${groups[g].map(renderItem).join('')}</details>`;
|
||||
}
|
||||
if (ungrouped.length) {
|
||||
html += `<div class="list-group">${named.length ? '<div class="list-group-header">Ungrouped</div>' : ''}${ungrouped.map(renderItem).join('')}</div>`;
|
||||
html += named.length
|
||||
? `<details class="list-group" open><summary class="list-group-header">Ungrouped</summary>${ungrouped.map(renderItem).join('')}</details>`
|
||||
: ungrouped.map(renderItem).join('');
|
||||
}
|
||||
return html || '<p class="hint">None yet.</p>';
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user