From 03f89f483c2c277588fa233e7c68c09cbea3c24f Mon Sep 17 00:00:00 2001 From: Deepak Kumar Date: Fri, 2 Feb 2024 15:54:11 +0530 Subject: [PATCH] GH-3734 Display password reset in auth modal for signed in user as well (#3764) Add function to check if component should have modal in layout --- .../src/modules/ui/layout/page/DefaultLayout.tsx | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/twenty-front/src/modules/ui/layout/page/DefaultLayout.tsx b/packages/twenty-front/src/modules/ui/layout/page/DefaultLayout.tsx index 7fbf374d8..b2dd429a2 100644 --- a/packages/twenty-front/src/modules/ui/layout/page/DefaultLayout.tsx +++ b/packages/twenty-front/src/modules/ui/layout/page/DefaultLayout.tsx @@ -1,4 +1,4 @@ -import { ReactNode } from 'react'; +import { ReactNode, useMemo } from 'react'; import { css, Global, useTheme } from '@emotion/react'; import styled from '@emotion/styled'; import { motion } from 'framer-motion'; @@ -15,9 +15,11 @@ import { MobileNavigationBar } from '@/navigation/components/MobileNavigationBar import { useIsSettingsPage } from '@/navigation/hooks/useIsSettingsPage'; import { objectSettingsWidth } from '@/settings/data-model/constants/objectSettings'; import { SignInBackgroundMockPage } from '@/sign-in-background-mock/components/SignInBackgroundMockPage'; +import { AppPath } from '@/types/AppPath'; import { desktopNavDrawerWidths } from '@/ui/navigation/navigation-drawer/constants'; import { useIsMobile } from '@/ui/utilities/responsive/hooks/useIsMobile'; import { useScreenSize } from '@/ui/utilities/screen-size/hooks/useScreenSize'; +import { useIsMatchingLocation } from '~/hooks/useIsMatchingLocation'; const StyledLayout = styled.div` background: ${({ theme }) => theme.background.noisy}; @@ -71,6 +73,15 @@ export const DefaultLayout = ({ children }: DefaultLayoutProps) => { const isSettingsPage = useIsSettingsPage(); const theme = useTheme(); const widowsWidth = useScreenSize().width; + const isMatchingLocation = useIsMatchingLocation(); + + const showAuthModal = useMemo(() => { + return ( + (onboardingStatus && onboardingStatus !== OnboardingStatus.Completed) || + isMatchingLocation(AppPath.ResetPassword) + ); + }, [isMatchingLocation, onboardingStatus]); + return ( <> { > - {onboardingStatus && - onboardingStatus !== OnboardingStatus.Completed ? ( + {showAuthModal ? ( <>