feat: new login mobile device
This commit is contained in:
		
				
					committed by
					
						
						Jordan Knott
					
				
			
			
				
	
			
			
			
						parent
						
							886b2763ee
						
					
				
				
					commit
					4f5aa2deb8
				
			@@ -4,10 +4,20 @@ export const Container = styled.div`
 | 
				
			|||||||
  display: flex;
 | 
					  display: flex;
 | 
				
			||||||
  align-items: center;
 | 
					  align-items: center;
 | 
				
			||||||
  justify-content: center;
 | 
					  justify-content: center;
 | 
				
			||||||
  width: 100vw;
 | 
					 | 
				
			||||||
  height: 100vh;
 | 
					  height: 100vh;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    position: relative;
 | 
				
			||||||
 | 
					    top: 30%;
 | 
				
			||||||
 | 
					    font-size: 150px;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const LoginWrapper = styled.div`
 | 
					export const LoginWrapper = styled.div`
 | 
				
			||||||
  width: 60%;
 | 
					  width: 70%;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    width: 90%;
 | 
				
			||||||
 | 
					    margin-top: 50vh;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,7 @@
 | 
				
			|||||||
import styled from 'styled-components';
 | 
					import styled from 'styled-components';
 | 
				
			||||||
import Button from 'shared/components/Button';
 | 
					import Button from 'shared/components/Button';
 | 
				
			||||||
import { mixin } from 'shared/utils/styles';
 | 
					import { mixin } from 'shared/utils/styles';
 | 
				
			||||||
 | 
					import AccessAccount from 'shared/undraw/AccessAccount';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const Wrapper = styled.div`
 | 
					export const Wrapper = styled.div`
 | 
				
			||||||
  background: #eff2f7;
 | 
					  background: #eff2f7;
 | 
				
			||||||
@@ -15,6 +16,12 @@ export const Column = styled.div`
 | 
				
			|||||||
  display: flex;
 | 
					  display: flex;
 | 
				
			||||||
  justify-content: center;
 | 
					  justify-content: center;
 | 
				
			||||||
  align-items: center;
 | 
					  align-items: center;
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    svg {
 | 
				
			||||||
 | 
					      display: none;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    position: absolute;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const LoginFormWrapper = styled.div`
 | 
					export const LoginFormWrapper = styled.div`
 | 
				
			||||||
@@ -25,18 +32,47 @@ export const LoginFormWrapper = styled.div`
 | 
				
			|||||||
export const LoginFormContainer = styled.div`
 | 
					export const LoginFormContainer = styled.div`
 | 
				
			||||||
  min-height: 505px;
 | 
					  min-height: 505px;
 | 
				
			||||||
  padding: 2rem;
 | 
					  padding: 2rem;
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    position: absolute;
 | 
				
			||||||
 | 
					    left: 50%;
 | 
				
			||||||
 | 
					    transform: translate(-50%, -50%);
 | 
				
			||||||
 | 
					    border: solid black 1px;
 | 
				
			||||||
 | 
					    width: 600px;
 | 
				
			||||||
 | 
					    height: 1100px;
 | 
				
			||||||
 | 
					    box-shadow: 20px 20px 50px black;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  @media (min-height: 641px) and (max-height: 653px) {
 | 
				
			||||||
 | 
					    margin-top: 25%;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  @media (min-height: 654px) and (max-height: 823px) and (max-width: 500px) {
 | 
				
			||||||
 | 
					    margin-top: -20%;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  @media (min-height: 480px) and (max-height: 639px) {
 | 
				
			||||||
 | 
					    margin-top: 20%;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const Title = styled.h1`
 | 
					export const Title = styled.h1`
 | 
				
			||||||
  color: #ebeefd;
 | 
					  color: #ebeefd;
 | 
				
			||||||
  font-size: 18px;
 | 
					  font-size: 18px;
 | 
				
			||||||
  margin-bottom: 14px;
 | 
					  margin-bottom: 14px;
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    font-size: 38px;
 | 
				
			||||||
 | 
					    margin-top: 50px;
 | 
				
			||||||
 | 
					    text-align: center;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const SubTitle = styled.h2`
 | 
					export const SubTitle = styled.h2`
 | 
				
			||||||
  color: #c2c6dc;
 | 
					  color: #c2c6dc;
 | 
				
			||||||
  font-size: 14px;
 | 
					  font-size: 14px;
 | 
				
			||||||
  margin-bottom: 14px;
 | 
					  margin-bottom: 14px;
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    margin-top: 30px;
 | 
				
			||||||
 | 
					    font-size: 24.5px;
 | 
				
			||||||
 | 
					    margin-bottom: 90px;
 | 
				
			||||||
 | 
					    text-align: center;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
export const Form = styled.form`
 | 
					export const Form = styled.form`
 | 
				
			||||||
  display: flex;
 | 
					  display: flex;
 | 
				
			||||||
@@ -48,6 +84,10 @@ export const FormLabel = styled.label`
 | 
				
			|||||||
  font-size: 12px;
 | 
					  font-size: 12px;
 | 
				
			||||||
  position: relative;
 | 
					  position: relative;
 | 
				
			||||||
  margin-top: 14px;
 | 
					  margin-top: 14px;
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    font-size: 35px;
 | 
				
			||||||
 | 
					    font-weight: bold;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const FormTextInput = styled.input`
 | 
					export const FormTextInput = styled.input`
 | 
				
			||||||
@@ -59,28 +99,92 @@ export const FormTextInput = styled.input`
 | 
				
			|||||||
  font-size: 1rem;
 | 
					  font-size: 1rem;
 | 
				
			||||||
  color: #c2c6dc;
 | 
					  color: #c2c6dc;
 | 
				
			||||||
  border-radius: 5px;
 | 
					  border-radius: 5px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    border: 5px solid rgba(0, 0, 0, 0.2);
 | 
				
			||||||
 | 
					    border-radius: 5%;
 | 
				
			||||||
 | 
					    font-size: 30px;
 | 
				
			||||||
 | 
					    background-color: #353D64;
 | 
				
			||||||
 | 
					    color: black;
 | 
				
			||||||
 | 
					    padding: 0.7rem 1rem 1rem 3rem;
 | 
				
			||||||
 | 
					    text-align: center;
 | 
				
			||||||
 | 
					    &::placeholder {
 | 
				
			||||||
 | 
					      visibility: hidden;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    &:not(:placeholder-shown) {
 | 
				
			||||||
 | 
					      background-color: white;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const FormIcon = styled.div`
 | 
					export const FormIcon = styled.div`
 | 
				
			||||||
  top: 30px;
 | 
					  top: 30px;
 | 
				
			||||||
  left: 16px;
 | 
					  left: 16px;
 | 
				
			||||||
  position: absolute;
 | 
					  position: absolute;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    svg {
 | 
				
			||||||
 | 
					      width: 40px;
 | 
				
			||||||
 | 
					      height: 40px;
 | 
				
			||||||
 | 
					      display: inline;
 | 
				
			||||||
 | 
					      position: absolute;
 | 
				
			||||||
 | 
					      top: 30px;
 | 
				
			||||||
 | 
					      left: -5px;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const FormError = styled.span`
 | 
					export const FormError = styled.span`
 | 
				
			||||||
  font-size: 0.875rem;
 | 
					  font-size: 0.875rem;
 | 
				
			||||||
  color: ${props => props.theme.colors.danger};
 | 
					  color: ${(props) => props.theme.colors.danger};
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    font-size: 1.8rem;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const LoginButton = styled(Button)``;
 | 
					export const LoginButton = styled(Button)`
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    span {
 | 
				
			||||||
 | 
					      font-size: 40px;
 | 
				
			||||||
 | 
					      text-align: center;
 | 
				
			||||||
 | 
					      width: 100%;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    align-self: center;
 | 
				
			||||||
 | 
					    position: absolute; 
 | 
				
			||||||
 | 
					    right: 0px;
 | 
				
			||||||
 | 
					    margin-top: 40%;
 | 
				
			||||||
 | 
					    width: 100%;
 | 
				
			||||||
 | 
					    &:hover {
 | 
				
			||||||
 | 
					      box-shadow: 5px 5px 20px white;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const ActionButtons = styled.div`
 | 
					export const ActionButtons = styled.div`
 | 
				
			||||||
  margin-top: 17.5px;
 | 
					  margin-top: 17.5px;
 | 
				
			||||||
  display: flex;
 | 
					  display: flex;
 | 
				
			||||||
  justify-content: space-between;
 | 
					  justify-content: space-between;
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    width: 150px;
 | 
				
			||||||
 | 
					    align-content: center;
 | 
				
			||||||
 | 
					    font-size: 50px;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const RegisterButton = styled(Button)``;
 | 
					export const RegisterButton = styled(Button)`
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    span {
 | 
				
			||||||
 | 
					      font-size: 40px;
 | 
				
			||||||
 | 
					      text-align: center;
 | 
				
			||||||
 | 
					      width: 100%;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    width: 100%;
 | 
				
			||||||
 | 
					    position: absolute;
 | 
				
			||||||
 | 
					    left: 0px;
 | 
				
			||||||
 | 
					    margin-top: 29%;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const LogoTitle = styled.div`
 | 
					export const LogoTitle = styled.div`
 | 
				
			||||||
  font-size: 24px;
 | 
					  font-size: 24px;
 | 
				
			||||||
@@ -88,6 +192,9 @@ export const LogoTitle = styled.div`
 | 
				
			|||||||
  margin-left: 12px;
 | 
					  margin-left: 12px;
 | 
				
			||||||
  transition: visibility, opacity, transform 0.25s ease;
 | 
					  transition: visibility, opacity, transform 0.25s ease;
 | 
				
			||||||
  color: #7367f0;
 | 
					  color: #7367f0;
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    font-size: 60px;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export const LogoWrapper = styled.div`
 | 
					export const LogoWrapper = styled.div`
 | 
				
			||||||
@@ -100,5 +207,16 @@ export const LogoWrapper = styled.div`
 | 
				
			|||||||
  padding-bottom: 16px;
 | 
					  padding-bottom: 16px;
 | 
				
			||||||
  margin-bottom: 24px;
 | 
					  margin-bottom: 24px;
 | 
				
			||||||
  color: rgb(222, 235, 255);
 | 
					  color: rgb(222, 235, 255);
 | 
				
			||||||
  border-bottom: 1px solid ${props => mixin.rgba(props.theme.colors.alternate, 0.65)};
 | 
					  border-bottom: 1px solid ${(props) => mixin.rgba(props.theme.colors.alternate, 0.65)};
 | 
				
			||||||
 | 
					  @media (max-width: 600px) {
 | 
				
			||||||
 | 
					    svg {
 | 
				
			||||||
 | 
					      display: inline;
 | 
				
			||||||
 | 
					      width: 80px;
 | 
				
			||||||
 | 
					      height: 80px;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
`;
 | 
					`;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -64,7 +64,11 @@ const Login = ({ onSubmit }: LoginProps) => {
 | 
				
			|||||||
            <Form onSubmit={handleSubmit(loginSubmit)}>
 | 
					            <Form onSubmit={handleSubmit(loginSubmit)}>
 | 
				
			||||||
              <FormLabel htmlFor="username">
 | 
					              <FormLabel htmlFor="username">
 | 
				
			||||||
                Username
 | 
					                Username
 | 
				
			||||||
                <FormTextInput type="text" {...register('username', { required: 'Username is required' })} />
 | 
					                <FormTextInput
 | 
				
			||||||
 | 
					                  placeholder="Username"
 | 
				
			||||||
 | 
					                  type="text"
 | 
				
			||||||
 | 
					                  {...register('username', { required: 'Username is required' })}
 | 
				
			||||||
 | 
					                />
 | 
				
			||||||
                <FormIcon>
 | 
					                <FormIcon>
 | 
				
			||||||
                  <User width={20} height={20} />
 | 
					                  <User width={20} height={20} />
 | 
				
			||||||
                </FormIcon>
 | 
					                </FormIcon>
 | 
				
			||||||
@@ -72,7 +76,11 @@ const Login = ({ onSubmit }: LoginProps) => {
 | 
				
			|||||||
              {errors.username && <FormError>{errors.username.message}</FormError>}
 | 
					              {errors.username && <FormError>{errors.username.message}</FormError>}
 | 
				
			||||||
              <FormLabel htmlFor="password">
 | 
					              <FormLabel htmlFor="password">
 | 
				
			||||||
                Password
 | 
					                Password
 | 
				
			||||||
                <FormTextInput type="password" {...register('password', { required: 'Password is required' })} />
 | 
					                <FormTextInput
 | 
				
			||||||
 | 
					                  placeholder="Password"
 | 
				
			||||||
 | 
					                  type="password"
 | 
				
			||||||
 | 
					                  {...register('password', { required: 'Password is required' })}
 | 
				
			||||||
 | 
					                />
 | 
				
			||||||
                <FormIcon>
 | 
					                <FormIcon>
 | 
				
			||||||
                  <Lock width={20} height={20} />
 | 
					                  <Lock width={20} height={20} />
 | 
				
			||||||
                </FormIcon>
 | 
					                </FormIcon>
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user