diff --git a/web/src/lib/components/shared-components/navigation-bar/account-info-panel.svelte b/web/src/lib/components/shared-components/navigation-bar/account-info-panel.svelte
index 22b74767d52..aaa8a3cdcf7 100644
--- a/web/src/lib/components/shared-components/navigation-bar/account-info-panel.svelte
+++ b/web/src/lib/components/shared-components/navigation-bar/account-info-panel.svelte
@@ -6,9 +6,13 @@
import { AppRoute } from '$lib/constants';
import { modalManager } from '$lib/managers/modal-manager.svelte';
import AvatarEditModal from '$lib/modals/AvatarEditModal.svelte';
+ import HelpAndFeedbackModal from '$lib/modals/HelpAndFeedbackModal.svelte';
import { user } from '$lib/stores/user.store';
+ import { userInteraction } from '$lib/stores/user.svelte';
+ import { getAboutInfo, type ServerAboutResponseDto } from '@immich/sdk';
import { Button } from '@immich/ui';
import { mdiCog, mdiLogout, mdiPencil, mdiWrench } from '@mdi/js';
+ import { onMount } from 'svelte';
import { t } from 'svelte-i18n';
import { fade } from 'svelte/transition';
import UserAvatar from '../user-avatar.svelte';
@@ -19,6 +23,12 @@
}
let { onLogout, onClose = () => {} }: Props = $props();
+
+ let info: ServerAboutResponseDto | undefined = $state();
+
+ onMount(async () => {
+ info = userInteraction.aboutInfo ?? (await getAboutInfo());
+ });
@@ -91,13 +101,25 @@
+
+
{
+ onClose();
+ if (info) {
+ await modalManager.show(HelpAndFeedbackModal, { info });
+ }
+ }}
>
+ {$t('support_and_feedback')}
+
diff --git a/web/src/lib/components/shared-components/navigation-bar/navigation-bar.svelte b/web/src/lib/components/shared-components/navigation-bar/navigation-bar.svelte
index debc2689235..bd162625142 100644
--- a/web/src/lib/components/shared-components/navigation-bar/navigation-bar.svelte
+++ b/web/src/lib/components/shared-components/navigation-bar/navigation-bar.svelte
@@ -12,18 +12,13 @@
import SearchBar from '$lib/components/shared-components/search-bar/search-bar.svelte';
import { AppRoute } from '$lib/constants';
import { authManager } from '$lib/managers/auth-manager.svelte';
- import { modalManager } from '$lib/managers/modal-manager.svelte';
- import HelpAndFeedbackModal from '$lib/modals/HelpAndFeedbackModal.svelte';
import { mobileDevice } from '$lib/stores/mobile-device.svelte';
import { notificationManager } from '$lib/stores/notification-manager.svelte';
import { featureFlags } from '$lib/stores/server-config.store';
import { sidebarStore } from '$lib/stores/sidebar.svelte';
import { user } from '$lib/stores/user.store';
- import { userInteraction } from '$lib/stores/user.svelte';
- import { getAboutInfo, type ServerAboutResponseDto } from '@immich/sdk';
import { Button, IconButton } from '@immich/ui';
- import { mdiBellBadge, mdiBellOutline, mdiHelpCircleOutline, mdiMagnify, mdiMenu, mdiTrayArrowUp } from '@mdi/js';
- import { onMount } from 'svelte';
+ import { mdiBellBadge, mdiBellOutline, mdiMagnify, mdiMenu, mdiTrayArrowUp } from '@mdi/js';
import { t } from 'svelte-i18n';
import ThemeButton from '../theme-button.svelte';
import UserAvatar from '../user-avatar.svelte';
@@ -42,12 +37,6 @@
let shouldShowNotificationPanel = $state(false);
let innerWidth: number = $state(0);
const hasUnreadNotifications = $derived(notificationManager.notifications.length > 0);
-
- let info: ServerAboutResponseDto | undefined = $state();
-
- onMount(async () => {
- info = userInteraction.aboutInfo ?? (await getAboutInfo());
- });
@@ -130,18 +119,6 @@
-
- info && modalManager.show(HelpAndFeedbackModal, { info })}
- aria-label={$t('support_and_feedback')}
- />
-
-
(shouldShowNotificationPanel = false),