Front-Complete/src/app/main/sign-up/SignUpPage.tsx

172 lines
4.2 KiB
TypeScript

import Typography from '@mui/material/Typography';
import { Link } from 'react-router-dom';
import AvatarGroup from '@mui/material/AvatarGroup';
import Avatar from '@mui/material/Avatar';
import Box from '@mui/material/Box';
import Paper from '@mui/material/Paper';
import Tabs from '@mui/material/Tabs';
import Tab from '@mui/material/Tab';
import { useState } from 'react';
import _ from '../../../@lodash/@lodash';
import JwtSignUpTab from './tabs/JwSignUpTab';
import FirebaseSignUpTab from './tabs/FirebaseSignUpTab';
const tabs = [
{
id: 'jwt',
title: 'JWT',
logo: 'assets/images/logo/jwt.svg',
logoClass: 'h-40 p-4 bg-black rounded-12'
},
{
id: 'firebase',
title: 'Firebase',
logo: 'assets/images/logo/firebase.svg',
logoClass: 'h-40'
}
];
/**
* The sign up page.
*/
function SignUpPage() {
const [selectedTabId, setSelectedTabId] = useState(tabs[0].id);
function handleSelectTab(id: string) {
setSelectedTabId(id);
}
return (
<div className="flex min-w-0 flex-auto flex-col items-center sm:justify-center md:p-32">
<Paper className="flex min-h-full w-full overflow-hidden rounded-0 sm:min-h-auto sm:w-auto sm:rounded-2xl sm:shadow md:w-full md:max-w-6xl">
<div className="w-full px-16 py-32 ltr:border-r-1 rtl:border-l-1 sm:w-auto sm:p-48 md:p-64">
<div className="mx-auto w-full max-w-320 sm:mx-0 sm:w-320">
<img
className="w-48"
src="assets/images/logo/logo1.svg"
alt="logo"
/>
<Typography className="mt-32 text-4xl font-extrabold leading-tight tracking-tight">
Registrarse
</Typography>
<div className="mt-2 flex items-baseline font-medium">
<Typography>Ya tienes cuenta?</Typography>
<Link
className="ml-4"
to="/sign-in"
>
Inicia sesión
</Link>
</div>
{/*
<Tabs
value={_.findIndex(tabs, { id: selectedTabId })}
variant="fullWidth"
className="w-full mt-24 mb-32"
indicatorColor="secondary"
>
{tabs.map((item) => (
<Tab
onClick={() => handleSelectTab(item.id)}
key={item.id}
icon={
<img
className={item.logoClass}
src={item.logo}
alt={item.title}
/>
}
className="min-w-0"
label={item.title}
/>
))}
</Tabs>
*/}
<JwtSignUpTab />
{/* {selectedTabId === 'firebase' && <FirebaseSignUpTab />}
*/} </div>
</div>
<Box
className="relative hidden h-auto justify-center items-center flex-auto p-64 md:flex lg:px-112"
sx={{ backgroundColor: 'primary.main' }}>
<svg
className="pointer-events-none absolute inset-0"
viewBox="0 0 960 540"
width="100%"
height="100%"
preserveAspectRatio="xMidYMax slice"
xmlns="http://www.w3.org/2000/svg"
>
<Box
component="g"
sx={{ color: 'primary.light' }}
className="opacity-20"
fill="none"
stroke="currentColor"
strokeWidth="100"
>
<circle
r="234"
cx="796"
cy="23"
/>
</Box>
</svg>
<Box
component="svg"
className="absolute -right-64 -top-64 opacity-20"
sx={{ color: 'primary.light' }}
viewBox="0 0 220 192"
width="220px"
height="192px"
fill="none"
>
<defs>
<pattern
id="837c3e70-6c3a-44e6-8854-cc48c737b659"
x="0"
y="0"
width="20"
height="20"
patternUnits="userSpaceOnUse"
>
<rect
x="0"
y="0"
width="4"
height="4"
fill="currentColor"
/>
</pattern>
</defs>
<rect
width="220"
height="192"
fill="url(#837c3e70-6c3a-44e6-8854-cc48c737b659)"
/>
</Box>
<div className="relative z-10 w-full max-w-2xl">
<img
className="w-216 "
src="assets/images/empresa/logoAlphaWC.svg"
alt="logo"
/>
<div className="text-7xl font-bold leading-loose text-gray-100">
<div>Bienvenido</div>
</div>
<div className="mt-24 text-lg leading-none text-gray-400">
Al sistema que se encarga de tu facturación electrónica.
</div>
</div>
</Box>
</Paper>
</div>
);
}
export default SignUpPage;