feat(src/router/index.ts): добавляет логику перенаправления для чатов в зависимости от активного диалога

 feat(src/views/chat/ChatRoomView.vue): обновляет модальное окно завершения диалога с новыми опциями

 feat(src/views/feed/FeedView.vue): добавляет уведомление о текущем активном матче в ленте

 feat(src/components/common/AppToast.vue): добавляет кнопку действия в уведомления для интерактивности

 feat(src/views/chat/ChatsListView.vue): сортирует чаты по статусу для улучшения пользовательского интерфейса
This commit is contained in:
Oscar
2026-06-09 15:38:22 +03:00
parent 78fe3b5a98
commit 6119e8a2bd
6 changed files with 544 additions and 42 deletions

View File

@@ -17,6 +17,11 @@
</svg>
</span>
<span class="toast__message">{{ toast.message }}</span>
<button
v-if="toast.action"
class="toast__action"
@click="toast.action.onClick(); uiStore.removeToast(toast.id)"
>{{ toast.action.label }}</button>
<button class="toast__close" aria-label="Закрыть" @click="uiStore.removeToast(toast.id)">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M18 6L6 18M6 6l12 12" /></svg>
</button>
@@ -100,6 +105,25 @@ const uiStore = useUi()
line-height: 1.4;
}
&__action {
background: none;
border: 1px solid var(--color-border);
border-radius: var(--radius-xs);
color: var(--color-cream);
cursor: pointer;
font-family: var(--font-mono);
font-size: 0.6875rem;
padding: 3px 8px;
white-space: nowrap;
flex-shrink: 0;
transition: border-color var(--transition-fast), color var(--transition-fast);
&:hover {
border-color: var(--color-signal);
color: var(--color-signal);
}
}
&__close {
width: 20px;
height: 20px;