Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
H
hw92
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
5
Issues
5
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Болатов Ален
hw92
Commits
bede3bc6
Commit
bede3bc6
authored
Apr 03, 2023
by
Болатов Ален
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch '23' into 'dev'
added register form See merge request
!25
parents
3736c5a2
b98cd03b
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
111 additions
and
61 deletions
+111
-61
Layout.tsx
frontend/src/components/Layout.tsx
+5
-4
HomePage.tsx
frontend/src/containers/HomePage.tsx
+5
-1
Register.tsx
frontend/src/containers/Register.tsx
+97
-56
index.css
frontend/src/index.css
+4
-0
No files found.
frontend/src/components/Layout.tsx
View file @
bede3bc6
...
...
@@ -3,12 +3,13 @@ import {NavLink, Outlet} from 'react-router-dom';
const
Layout
:
FunctionComponent
=
():
ReactElement
=>
{
return
(
<
div
className=
"
container mx-auto
"
>
<
div
className=
"flex justify-between"
>
<
div
className=
"
bg-gray-50 dark:bg-gray-900
"
>
<
div
className=
"flex justify-between
container mx-auto
"
>
<
a
href=
"#"
>
Add Post
</
a
>
<
div
>
<
NavLink
to=
{
'register'
}
>
Register
</
NavLink
>
<
NavLink
to=
{
'login'
}
>
Login
</
NavLink
>
<
NavLink
className=
{
'mr-3'
}
to=
{
'register'
}
>
Login or Register
</
NavLink
>
</
div
>
</
div
>
<
Outlet
/>
...
...
frontend/src/containers/HomePage.tsx
View file @
bede3bc6
...
...
@@ -2,7 +2,11 @@ import {FunctionComponent, ReactElement, useEffect} from 'react';
import
{
shallowEqual
,
useDispatch
}
from
'react-redux'
;
const
HomePage
:
FunctionComponent
=
():
ReactElement
=>
{
return
<
div
>
homepage
</
div
>;
return
(
<
div
className=
"bg-gray-50 dark:bg-gray-900 h-screen w-full container mx-auto"
>
homepage
</
div
>
);
};
export
default
HomePage
;
frontend/src/containers/Register.tsx
View file @
bede3bc6
...
...
@@ -28,64 +28,105 @@ const Register = () => {
// }
return
(
<
div
className=
"w-full max-w-xs m-auto h-screen mt-[200px]"
>
<
form
onSubmit=
{
handleSubmit
}
className=
"bg-white shadow-md rounded px-8 pt-6 pb-8 mb-4"
>
<
div
className=
"mb-4"
>
<
label
className=
"block text-gray-700 text-sm font-bold mb-2"
htmlFor=
"username"
>
Username
</
label
>
<
input
onChange=
{
handleUserInput
}
className=
"shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 leading-tight focus:outline-none focus:shadow-outline"
id=
"username"
type=
"text"
placeholder=
"Username"
name=
"username"
/>
<
div
className=
"flex flex-col items-center justify-center px-6 py-8 mx-auto md:h-screen lg:py-0"
>
<
div
className=
"w-full bg-white rounded-lg shadow dark:border md:mt-0 sm:max-w-md xl:p-0 dark:bg-gray-800 dark:border-gray-700"
>
<
div
className=
"p-6 space-y-4 md:space-y-6 sm:p-8"
>
<
h1
className=
"text-xl font-bold leading-tight tracking-tight text-gray-900 md:text-2xl dark:text-white"
>
Create and account
</
h1
>
<
form
className=
"space-y-4 md:space-y-6"
action=
"#"
>
<
div
>
<
label
htmlFor=
"username"
className=
"block mb-2 text-sm font-medium text-gray-900 dark:text-white"
>
Your username
</
label
>
<
input
type=
"text"
name=
"username"
id=
"username"
className=
"bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
placeholder=
"username"
required
/>
</
div
>
<
div
>
<
label
htmlFor=
"password"
className=
"block mb-2 text-sm font-medium text-gray-900 dark:text-white"
>
Password
</
label
>
<
input
type=
"password"
name=
"password"
id=
"password"
placeholder=
"••••••••"
className=
"bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
required
/>
</
div
>
<
div
>
<
label
htmlFor=
"confirm-password"
className=
"block mb-2 text-sm font-medium text-gray-900 dark:text-white"
>
Confirm password
</
label
>
<
input
type=
"confirm-password"
name=
"confirm-password"
id=
"confirm-password"
placeholder=
"••••••••"
className=
"bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"
required
/>
</
div
>
<
div
className=
"flex items-start"
>
<
div
className=
"flex items-center h-5"
>
<
input
id=
"terms"
aria
-
describedby=
"terms"
type=
"checkbox"
className=
"w-4 h-4 border border-gray-300 rounded bg-gray-50 focus:ring-3 focus:ring-primary-300 dark:bg-gray-700 dark:border-gray-600 dark:focus:ring-primary-600 dark:ring-offset-gray-800"
required
/>
</
div
>
<
div
className=
"ml-3 text-sm"
>
<
label
htmlFor=
"terms"
className=
"font-light text-gray-500 dark:text-gray-300"
>
I accept the
{
' '
}
<
a
className=
"font-medium text-primary-600 hover:underline dark:text-primary-500"
href=
"#"
>
Terms and Conditions
</
a
>
</
label
>
</
div
>
</
div
>
<
button
type=
"submit"
className=
"w-full text-white bg-primary-600 hover:bg-primary-700 focus:ring-4 focus:outline-none focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800"
>
Create an account
</
button
>
<
p
className=
"text-sm font-light text-gray-500 dark:text-gray-400"
>
Already have an account?
{
' '
}
<
a
href=
"#"
className=
"font-medium text-primary-600 hover:underline dark:text-primary-500"
>
Login here
</
a
>
</
p
>
</
form
>
</
div
>
<
div
className=
"mb-6"
>
<
label
className=
"block text-gray-700 text-sm font-bold mb-2"
htmlFor=
"password"
>
Password
</
label
>
<
input
onChange=
{
handleUserInput
}
className=
"shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 mb-3 leading-tight focus:outline-none focus:shadow-outline"
id=
"password"
type=
"password"
placeholder=
"Password"
name=
"password"
/>
</
div
>
<
div
className=
"flex items-center justify-between"
>
<
button
className=
"inline-block align-baseline font-bold text-sm text-blue-500 hover:text-blue-800"
type=
"button"
onClick=
{
handleRegister
}
>
Register
</
button
>
<
button
className=
"bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded focus:outline-none focus:shadow-outline"
type=
"submit"
>
Sign In
</
button
>
</
div
>
</
form
>
<
p
className=
"text-center text-gray-500 text-xs"
>
©
2020 Acme Corp. All rights reserved.
</
p
>
</
div
>
</
div
>
);
};
export
default
Register
;
frontend/src/index.css
View file @
bede3bc6
...
...
@@ -4,6 +4,10 @@
font-weight
:
400
;
}
*
{
color
:
white
;
}
@tailwind
base
;
@tailwind
components
;
@tailwind
utilities
;
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment