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:
1 parent
3ef78b5eb1
commit
9140c4fcc7
4 files changed
+24
-3
No files matched your search
@@ -109,3 +109,12 @@ textarea {
|
||||
50% { rotate: 180deg; }
|
||||
100% { rotate: 360deg; }
|
||||
}
|
||||
|
||||
a {
|
||||
color: var(--primary);
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
@@ -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
@@ -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>
|
||||
|
||||
@@ -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) => {
|
||||
|
||||
Reference in new issue
Block a user