feat(dashboard): klickbare Session-Cards + UI-Verbesserungen

- Session-Cards mit Agent sind klickbar (navigiert zum Chat)
- Card-Menü bleibt nutzbar via pointer-events Logik
- Menü-Reihenfolge: Bearbeiten vor Chat öffnen
- Session-Beschreibung: textarea → input (einzeilig)
- Globale Link-Styles (a { color: var(--primary) })
This commit is contained in:
Meleki committed 2026-03-05 19:50:43 +01:00
1 parent 3ef78b5eb1
commit 9140c4fcc7
4 files changed
+24 -3

No files matched your search

+9
View File
@@ -109,3 +109,12 @@ textarea {
50% { rotate: 180deg; }
100% { rotate: 360deg; }
}
a {
color: var(--primary);
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
+7 -1
View File
@@ -69,10 +69,15 @@
}
.card.clickable {
pointer-events: none;
}
.card.clickable:not(:has(.card-menu-dropdown:not([hidden]))) {
pointer-events: unset;
cursor: pointer;
}
.card.clickable:hover {
.card.clickable:not(:has(.card-menu-dropdown:not([hidden]))):hover {
border-color: var(--primary);
filter: var(--hover-filter);
}
@@ -185,6 +190,7 @@
padding-block: var(--badge-spacing);
z-index: 1000;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
pointer-events: all;
}
.card-menu-dropdown[hidden] {
+1 -1
View File
@@ -109,7 +109,7 @@
<label>Name</label>
<input type="text" id="sessionName" placeholder="Name der Session">
<label>Beschreibung</label>
<textarea id="sessionDescription" rows="3" placeholder="Beschreibung (optional)"></textarea>
<input id="sessionDescription" placeholder="Kurze Beschreibung (optional)">
<label>Agent</label>
<select id="agentSelect"></select>
<label>Workspace</label>
+7 -1
View File
@@ -60,8 +60,8 @@ registerPage('dashboard', {
<div class="card-menu">
<button class="card-menu-trigger icon-btn"><i class="fa fa-ellipsis-v"></i></button>
<div class="card-menu-dropdown" hidden>
<button class="card-menu-item" data-action="chat"><i class="fa fa-comment"></i> Chat öffnen</button>
<button class="card-menu-item" data-action="edit"><i class="fa fa-pencil"></i> Bearbeiten</button>
<button class="card-menu-item" data-action="chat"><i class="fa fa-comment"></i> Chat öffnen</button>
</div>
</div>
</div>
@@ -79,6 +79,12 @@ registerPage('dashboard', {
chatBtn.title = 'Kein Agent zugewiesen';
}
// Card selbst klickbar wenn Agent zugewiesen
if (agent) {
card.classList.add('clickable');
card.addEventListener('click', () => navigateTo('chat', { id: s.sessionId }));
}
const menuTrigger = card.querySelector('.card-menu-trigger');
const menuDropdown = card.querySelector('.card-menu-dropdown');
menuTrigger.addEventListener('click', (e) => {