Refactor chat interface and enhance user experience

- Updated the ChatWindow component to provide clearer instructions and actions when no conversation is selected, improving user guidance.
- Redesigned the MenuBar to display session timeout information more effectively.
- Enhanced the SearchView component with a more user-friendly country selection using a Multiselect dropdown.
- Improved the UserList component to display user age and gender, enhancing user profile visibility.
- Updated various views (ChatView, FaqView, FeedbackView, PartnersView, RulesView, SafetyView) to include a consistent app branding link for better navigation.

These changes collectively enhance the chat interface, improve user engagement, and streamline navigation across the application.
This commit is contained in:
Torsten Schulz (local)
2026-04-20 12:01:26 +02:00
parent 0fcc6878bd
commit 336e8308cf
12 changed files with 1024 additions and 224 deletions

View File

@@ -1,10 +1,6 @@
<template>
<div class="menu">
<template v-if="chatStore.isLoggedIn">
<span class="menu-info-text">{{ $t('menu_in_chat_for', [chatStore.currentConversation || '-']) }}</span>
<span v-if="chatStore.remainingSecondsToTimeout > 0" class="menu-info-text">
{{ $t('menu_timeout_in', [formatTime(chatStore.remainingSecondsToTimeout)]) }}
</span>
<button @click="handleLeave">{{ $t('menu_leave') }}</button>
<button @click="handleSearch" :class="{ 'is-active': chatStore.currentView === 'search' }">
{{ $t('menu_search') }}
@@ -18,6 +14,9 @@
<button @click="handleHistory" :class="{ 'is-active': chatStore.currentView === 'history' }">
{{ $t('menu_history') }}
</button>
<span v-if="chatStore.remainingSecondsToTimeout > 0" class="menu-info-text">
{{ formatTime(chatStore.remainingSecondsToTimeout) }}
</span>
</template>
</div>
</template>