feat: add Show Page Emails tab (#2962)

* feat: add Show Page Emails tab

Closes #2926, Closes #2927

* feat: review - disable Emails tab if messaging not enabled

* refactor: review - add FeatureFlagKey type

---------

Co-authored-by: Thais GUIGON <thaisguigon@macbook-pro.home>
This commit is contained in:
Thaïs
2023-12-15 16:31:03 +01:00
committed by GitHub
parent 800330df90
commit ac3c517c82
5 changed files with 53 additions and 8 deletions

View File

@ -1,7 +1,8 @@
import { ReactNode } from 'react';
import styled from '@emotion/styled';
type H1TitleProps = {
title: string;
title: ReactNode;
fontColor?: H1TitleFontColor;
className?: string;
};

View File

@ -1,5 +1,6 @@
import styled from '@emotion/styled';
import { Emails } from '@/activities/emails/components/Emails';
import { Attachments } from '@/activities/files/components/Attachments';
import { Notes } from '@/activities/notes/components/Notes';
import { EntityTasks } from '@/activities/tasks/components/EntityTasks';
@ -16,6 +17,7 @@ import { TabList } from '@/ui/layout/tab/components/TabList';
import { activeTabIdScopedState } from '@/ui/layout/tab/states/activeTabIdScopedState';
import { useRecoilScopedState } from '@/ui/utilities/recoil-scope/hooks/useRecoilScopedState';
import { useIsMobile } from '@/ui/utilities/responsive/hooks/useIsMobile';
import { useIsFeatureEnabled } from '@/workspace/hooks/useIsFeatureEnabled';
import { ShowPageRecoilScopeContext } from '../../states/ShowPageRecoilScopeContext';
@ -52,6 +54,8 @@ export const ShowPageRightContainer = ({
notes,
emails,
}: ShowPageRightContainerProps) => {
const isMessagingEnabled = useIsFeatureEnabled('IS_MESSAGING_ENABLED');
const TASK_TABS = [
{
id: 'timeline',
@ -86,7 +90,7 @@ export const ShowPageRightContainer = ({
title: 'Emails',
Icon: IconMail,
hide: !emails,
disabled: true,
disabled: !isMessagingEnabled || entity.type === 'Custom',
},
];
@ -104,6 +108,7 @@ export const ShowPageRightContainer = ({
{activeTabId === 'tasks' && <EntityTasks entity={entity} />}
{activeTabId === 'notes' && <Notes entity={entity} />}
{activeTabId === 'files' && <Attachments targetableEntity={entity} />}
{activeTabId === 'emails' && <Emails />}
</StyledShowPageRightContainer>
);
};