diff --git a/src/app/features/settings/about/About.tsx b/src/app/features/settings/about/About.tsx index cdf91b893..3c5fdf357 100644 --- a/src/app/features/settings/about/About.tsx +++ b/src/app/features/settings/about/About.tsx @@ -4,12 +4,12 @@ import { Page, PageContent, PageHeader } from '../../../components/page'; import { SequenceCard } from '../../../components/sequence-card'; import { SequenceCardStyle } from '../styles.css'; import { SettingTile } from '../../../components/setting-tile'; -import { trimTrailingSlash } from '../../../utils/common'; +import { getOriginBaseUrl, withOriginBaseUrl } from '../../../pages/pathUtils'; import pkg from '../../../../../package.json'; import { clearCacheAndReload } from '../../../../client/initMatrix'; import { useMatrixClient } from '../../../hooks/useMatrixClient'; -const LotusLogo = `${trimTrailingSlash(import.meta.env.BASE_URL)}/public/res/Lotus.png`; +const LotusLogo = withOriginBaseUrl(getOriginBaseUrl(), '/public/res/Lotus.png'); type MSC1929Contact = { matrix_id?: string; diff --git a/src/app/pages/auth/AuthLayout.tsx b/src/app/pages/auth/AuthLayout.tsx index 07b46ae6e..a448f75b4 100644 --- a/src/app/pages/auth/AuthLayout.tsx +++ b/src/app/pages/auth/AuthLayout.tsx @@ -20,7 +20,7 @@ import { } from '../../hooks/useClientConfig'; import { AsyncStatus, useAsyncCallback } from '../../hooks/useAsyncCallback'; import { LOGIN_PATH, REGISTER_PATH, RESET_PASSWORD_PATH } from '../paths'; -import { trimTrailingSlash } from '../../utils/common'; +import { getOriginBaseUrl, withOriginBaseUrl } from '../pathUtils'; import { ServerPicker } from './ServerPicker'; import { AutoDiscoveryAction, autoDiscovery } from '../../cs-api'; import { SpecVersionsLoader } from '../../components/SpecVersionsLoader'; @@ -31,7 +31,7 @@ import { AuthFlowsProvider } from '../../hooks/useAuthFlows'; import { AuthServerProvider } from '../../hooks/useAuthServer'; import { tryDecodeURIComponent } from '../../utils/dom'; -const LotusLogo = `${trimTrailingSlash(import.meta.env.BASE_URL)}/public/res/Lotus.png`; +const LotusLogo = withOriginBaseUrl(getOriginBaseUrl(), '/public/res/Lotus.png'); const currentAuthPath = (pathname: string): string => { if (matchPath(LOGIN_PATH, pathname)) { diff --git a/src/app/pages/auth/oidc/oidcConfig.ts b/src/app/pages/auth/oidc/oidcConfig.ts index 89f5129bf..0e4ff4e4e 100644 --- a/src/app/pages/auth/oidc/oidcConfig.ts +++ b/src/app/pages/auth/oidc/oidcConfig.ts @@ -1,9 +1,8 @@ import type { OidcRegistrationClientMetadata } from 'matrix-js-sdk'; -import { trimTrailingSlash } from '../../../utils/common'; import { OIDC_CALLBACK_PATH } from '../../paths'; import { getOriginBaseUrl, withOriginBaseUrl } from '../../pathUtils'; -const LotusLogo = `${trimTrailingSlash(import.meta.env.BASE_URL)}/public/res/Lotus.png`; +const LotusLogo = withOriginBaseUrl(getOriginBaseUrl(), '/public/res/Lotus.png'); /** * Absolute URL the OIDC provider redirects back to after authorization. diff --git a/src/app/pages/client/ClientNonUIFeatures.tsx b/src/app/pages/client/ClientNonUIFeatures.tsx index c02ed8940..3a8437752 100644 --- a/src/app/pages/client/ClientNonUIFeatures.tsx +++ b/src/app/pages/client/ClientNonUIFeatures.tsx @@ -17,7 +17,6 @@ import { manualDndAtom } from '../../state/manualDnd'; import { isSnoozeActive, notificationSnoozeUntilAtom } from '../../state/notificationSnooze'; import { isWithinTimeWindow } from '../../utils/timeWindow'; import { roomToUnreadAtom } from '../../state/room/roomToUnread'; -import { trimTrailingSlash } from '../../utils/common'; import NotificationSound from '../../../../public/sound/notification.ogg'; import InviteSound from '../../../../public/sound/invite.ogg'; import { notificationPermission, setFavicon, showOsNotification } from '../../utils/dom'; @@ -27,7 +26,13 @@ import { settingsAtom } from '../../state/settings'; import { allInvitesAtom } from '../../state/room-list/inviteList'; import { useMatrixClient } from '../../hooks/useMatrixClient'; import { useHydrateMsgDrafts } from '../../hooks/useHydrateMsgDrafts'; -import { getDirectRoomPath, getHomeRoomPath, getInboxInvitesPath } from '../pathUtils'; +import { + getDirectRoomPath, + getHomeRoomPath, + getInboxInvitesPath, + getOriginBaseUrl, + withOriginBaseUrl, +} from '../pathUtils'; import { mDirectAtom } from '../../state/mDirectList'; import { getMemberName, @@ -67,9 +72,9 @@ import { // Grace period after the initial sync settles before invite notifications arm, so // the async invite-atom population lands first and isn't mistaken for new invites. -const LogoSVG = `${trimTrailingSlash(import.meta.env.BASE_URL)}/public/res/lotus.png`; -const LogoUnreadSVG = `${trimTrailingSlash(import.meta.env.BASE_URL)}/public/res/lotus-unread.png`; -const LogoHighlightSVG = `${trimTrailingSlash(import.meta.env.BASE_URL)}/public/res/lotus-highlight.png`; +const LogoSVG = withOriginBaseUrl(getOriginBaseUrl(), '/public/res/lotus.png'); +const LogoUnreadSVG = withOriginBaseUrl(getOriginBaseUrl(), '/public/res/lotus-unread.png'); +const LogoHighlightSVG = withOriginBaseUrl(getOriginBaseUrl(), '/public/res/lotus-highlight.png'); const INVITE_NOTIFY_ARM_DELAY_MS = 3000; diff --git a/src/app/pages/client/WelcomePage.tsx b/src/app/pages/client/WelcomePage.tsx index ebe6241e8..f1498f9cb 100644 --- a/src/app/pages/client/WelcomePage.tsx +++ b/src/app/pages/client/WelcomePage.tsx @@ -1,10 +1,10 @@ import React from 'react'; import { Box, Button, Icon, Icons, Text, config, toRem } from 'folds'; import { Page, PageHero, PageHeroSection } from '../../components/page'; -import { trimTrailingSlash } from '../../utils/common'; +import { getOriginBaseUrl, withOriginBaseUrl } from '../pathUtils'; import pkg from '../../../../package.json'; -const LotusLogo = `${trimTrailingSlash(import.meta.env.BASE_URL)}/public/res/Lotus.png`; +const LotusLogo = withOriginBaseUrl(getOriginBaseUrl(), '/public/res/Lotus.png'); export function WelcomePage() { return (