You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			86 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			TypeScript
		
	
			
		
		
	
	
			86 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			TypeScript
		
	
| import { Provider } from 'react-redux';
 | |
| import styled from 'styled-components';
 | |
| 
 | |
| import useMount from 'react-use/lib/useMount';
 | |
| import { onboardingStore } from '../../state/onboarding/store';
 | |
| import { SessionTheme } from '../../themes/SessionTheme';
 | |
| import { setSignInByLinking } from '../../util/storage';
 | |
| import { SessionToastContainer } from '../SessionToastContainer';
 | |
| import { Flex } from '../basic/Flex';
 | |
| import { ModalContainer } from './ModalContainer';
 | |
| import { RegistrationStages } from './RegistrationStages';
 | |
| import { Hero } from './components';
 | |
| 
 | |
| const StyledFullscreenContainer = styled(Flex)`
 | |
|   position: relative;
 | |
|   width: 100%;
 | |
|   height: 100%;
 | |
|   background-color: var(--background-primary-color);
 | |
|   color: var(--text-primary-color);
 | |
| `;
 | |
| 
 | |
| const StyledSessionContent = styled(Flex)`
 | |
|   z-index: 1;
 | |
|   &-accent {
 | |
|     &-text {
 | |
|       font-family: var(--font-accent), var(--font-default);
 | |
|       text-align: center;
 | |
|       .title {
 | |
|         font-size: 90px;
 | |
|         font-weight: 700;
 | |
|         line-height: 100px;
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   &-registration {
 | |
|     padding-inline-end: 128px;
 | |
|   }
 | |
| 
 | |
|   &-header {
 | |
|     display: flex;
 | |
|     flex-direction: row;
 | |
|     width: 100%;
 | |
|     justify-content: space-between;
 | |
|     padding: 17px 20px;
 | |
|   }
 | |
| 
 | |
|   &-body {
 | |
|     display: flex;
 | |
|     flex-direction: row;
 | |
|     flex: 1;
 | |
|     align-items: center;
 | |
|     width: 100%;
 | |
|     padding-bottom: 20px;
 | |
|   }
 | |
| `;
 | |
| 
 | |
| export const SessionRegistrationView = () => {
 | |
|   useMount(() => {
 | |
|     void setSignInByLinking(false);
 | |
|   });
 | |
| 
 | |
|   return (
 | |
|     <Provider store={onboardingStore}>
 | |
|       <SessionTheme>
 | |
|         <StyledFullscreenContainer container={true} alignItems="center">
 | |
|           <Hero />
 | |
|           <StyledSessionContent
 | |
|             flexDirection="column"
 | |
|             alignItems="center"
 | |
|             container={true}
 | |
|             height="100%"
 | |
|             flexGrow={1}
 | |
|           >
 | |
|             <Flex container={true} margin="auto" alignItems="center" flexDirection="column">
 | |
|               <SessionToastContainer />
 | |
|               <ModalContainer />
 | |
|               <RegistrationStages />
 | |
|             </Flex>
 | |
|           </StyledSessionContent>
 | |
|         </StyledFullscreenContainer>
 | |
|       </SessionTheme>
 | |
|     </Provider>
 | |
|   );
 | |
| };
 |