* Remove workspace schema creation from signUp * Set user workspaceMember nullable * Remove workspace creation * Handle null workspace in tokens * Update onboarding status * Generate types * Move createWorkspace to workspace resolver * Create workspace after signup * Update createWorkspace return type * Update createWorkspace return type * Create core.workspace at signup * WIP * Fix create workspace * Fix create workspace * Clean code * Remove useless recoil set * Simplify create workspace request * Set currentWorkspace at login * Fix tests * Create a recoil value for is workspaceSchema created * Rename createWorkspace to createWorkspaceSchema * Code review returns * Use AppPath when possible * Try without state * Fix * Fixes * Rename createWorkspaceSchema to activateWorkspace * Remove defaultAvatarUrl from user * Add defaultAvatarUrl to core user This reverts commit 1701c30eb18804558293cc42043aedf96ea888df. * Add defaultAvatarUrl to core user This reverts commit 1701c30eb18804558293cc42043aedf96ea888df. * Fix ci * Fix tests * Fix storybook * Fix test * Remove useless query * Fix test * Fix test * Fix mock data * Fix test * Clean Mock Requests * Fix tentative * Revert "Clean Mock Requests" This reverts commit 8aa20a34363ffddfdee24f18fc80b27ea0ad5e1d. * Fix * Revert "Fix" This reverts commit 2df7e9b6569b8bfb53f6a45391db725e28d16a18. * Revert "Revert "Clean Mock Requests"" This reverts commit 3aefef8e9600d161434a047e845563d1b8e0692e. * Revert "Fix tentative" This reverts commit 13e7748d6f3b3858d30fb08adbc8ad347c5556ee. * Update filename --------- Co-authored-by: Charles Bochet <charles@twenty.com>
62 lines
1.9 KiB
TypeScript
62 lines
1.9 KiB
TypeScript
import { useNavigate } from 'react-router-dom';
|
|
import styled from '@emotion/styled';
|
|
|
|
import { SignInBackgroundMockPage } from '@/sign-in-background-mock/components/SignInBackgroundMockPage';
|
|
import { AppPath } from '@/types/AppPath';
|
|
import { MainButton } from '@/ui/input/button/components/MainButton';
|
|
import AnimatedPlaceholder from '@/ui/layout/animated-placeholder/components/AnimatedPlaceholder';
|
|
import { StyledEmptyTextContainer } from '@/ui/layout/animated-placeholder/components/EmptyPlaceholderStyled';
|
|
import {
|
|
StyledErrorContainer,
|
|
StyledErrorSubTitle,
|
|
StyledErrorTitle,
|
|
} from '@/ui/layout/animated-placeholder/components/ErrorPlaceholderStyled';
|
|
|
|
const StyledBackDrop = styled.div`
|
|
align-items: center;
|
|
backdrop-filter: ${({ theme }) => theme.blur.light};
|
|
background: ${({ theme }) => theme.background.transparent.secondary};
|
|
display: flex;
|
|
flex-direction: column;
|
|
height: 100%;
|
|
justify-content: center;
|
|
left: 0;
|
|
position: fixed;
|
|
top: 0;
|
|
width: 100%;
|
|
z-index: 10000;
|
|
`;
|
|
|
|
const StyledButtonContainer = styled.div`
|
|
width: 200px;
|
|
`;
|
|
|
|
export const NotFound = () => {
|
|
const navigate = useNavigate();
|
|
|
|
return (
|
|
<>
|
|
<StyledBackDrop>
|
|
<StyledErrorContainer>
|
|
<AnimatedPlaceholder type="error404" />
|
|
<StyledEmptyTextContainer>
|
|
<StyledErrorTitle>Off the beaten path</StyledErrorTitle>
|
|
<StyledErrorSubTitle>
|
|
The page you're seeking is either gone or never was. Let's get you
|
|
back on track
|
|
</StyledErrorSubTitle>
|
|
</StyledEmptyTextContainer>
|
|
<StyledButtonContainer>
|
|
<MainButton
|
|
title="Back to content"
|
|
fullWidth
|
|
onClick={() => navigate(AppPath.Index)}
|
|
/>
|
|
</StyledButtonContainer>
|
|
</StyledErrorContainer>
|
|
</StyledBackDrop>
|
|
<SignInBackgroundMockPage />
|
|
</>
|
|
);
|
|
};
|