From 4ae3d965f982a666e54e8910d22ef544897c0e38 Mon Sep 17 00:00:00 2001 From: lebaudantoine Date: Wed, 29 Jan 2025 15:50:25 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=B8(frontend)=20show=20support=20toggl?= =?UTF-8?q?e=20only=20if=20support=20is=20enabled?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Avoid misleading the user, if support is not enabled, as it's optional, avoid displaying a useless control button. Requested by Dutch counterparts. --- .../rooms/livekit/components/controls/SupportToggle.tsx | 8 ++++++++ src/frontend/src/features/support/hooks/useSupport.tsx | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/src/frontend/src/features/rooms/livekit/components/controls/SupportToggle.tsx b/src/frontend/src/features/rooms/livekit/components/controls/SupportToggle.tsx index 91042060..7e484564 100644 --- a/src/frontend/src/features/rooms/livekit/components/controls/SupportToggle.tsx +++ b/src/frontend/src/features/rooms/livekit/components/controls/SupportToggle.tsx @@ -4,9 +4,11 @@ import { useTranslation } from 'react-i18next' import { Crisp } from 'crisp-sdk-web' import { useEffect, useState } from 'react' import { ToggleButtonProps } from '@/primitives/ToggleButton' +import { useIsSupportEnabled } from '@/features/support/hooks/useSupport' export const SupportToggle = ({ onPress, ...props }: ToggleButtonProps) => { const { t } = useTranslation('rooms', { keyPrefix: 'controls' }) + const [isOpened, setIsOpened] = useState(() => { return window?.$crisp?.is?.('chat:opened') || false }) @@ -28,6 +30,12 @@ export const SupportToggle = ({ onPress, ...props }: ToggleButtonProps) => { } }, []) + const isSupportEnabled = useIsSupportEnabled() + + if (!isSupportEnabled) { + return + } + return ( { if (!Crisp.isCrispInjected()) return @@ -29,3 +30,8 @@ export const useSupport = ({ id }: useSupportProps) => { return null } + +export const useIsSupportEnabled = () => { + const { data } = useConfig() + return !!data?.support?.id +}