feat(ui): Tabs ohne 'Root'; Favoriten-Tab hinzugefügt und filtert lokale Sterne
This commit is contained in:
parent
99588e446c
commit
b9295a9050
2 changed files with 11 additions and 3 deletions
|
|
@ -225,8 +225,7 @@ app.get('/api/sounds', (req: Request, res: Response) => {
|
||||||
const filteredItems = itemsByFolder.filter((s) => (q ? s.name.toLowerCase().includes(q) : true));
|
const filteredItems = itemsByFolder.filter((s) => (q ? s.name.toLowerCase().includes(q) : true));
|
||||||
|
|
||||||
const total = allItems.length;
|
const total = allItems.length;
|
||||||
const rootCount = rootFiles.length;
|
const foldersOut = [{ key: '__all__', name: 'Alle', count: total }, ...folders];
|
||||||
const foldersOut = [{ key: '__all__', name: 'Alle', count: total }, { key: '', name: 'Root', count: rootCount }, ...folders];
|
|
||||||
|
|
||||||
res.json({ items: filteredItems, total, folders: foldersOut });
|
res.json({ items: filteredItems, total, folders: foldersOut });
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -132,6 +132,15 @@ export default function App() {
|
||||||
|
|
||||||
{folders.length > 0 && (
|
{folders.length > 0 && (
|
||||||
<nav className="tabs">
|
<nav className="tabs">
|
||||||
|
{/* Favoriten Tab */}
|
||||||
|
<button
|
||||||
|
key="__favs__"
|
||||||
|
className={`tab ${activeFolder === '__favs__' ? 'active' : ''}`}
|
||||||
|
type="button"
|
||||||
|
onClick={() => setActiveFolder('__favs__')}
|
||||||
|
>
|
||||||
|
Favoriten
|
||||||
|
</button>
|
||||||
{folders.map((f) => (
|
{folders.map((f) => (
|
||||||
<button
|
<button
|
||||||
key={f.key}
|
key={f.key}
|
||||||
|
|
@ -154,7 +163,7 @@ export default function App() {
|
||||||
{error && <div className="error">{error}</div>}
|
{error && <div className="error">{error}</div>}
|
||||||
|
|
||||||
<section className="grid">
|
<section className="grid">
|
||||||
{filtered.map((s) => {
|
{(activeFolder === '__favs__' ? filtered.filter((s) => !!favs[s.relativePath ?? s.fileName]) : filtered).map((s) => {
|
||||||
const key = `${s.relativePath ?? s.fileName}`;
|
const key = `${s.relativePath ?? s.fileName}`;
|
||||||
const isFav = !!favs[key];
|
const isFav = !!favs[key];
|
||||||
return (
|
return (
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue