-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Description: Create login form using paragon form fields VAN-1882
- Loading branch information
1 parent
c7a2ba0
commit 24808ff
Showing
4 changed files
with
123 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
import React from 'react'; | ||
|
||
import { useIntl } from '@edx/frontend-platform/i18n'; | ||
import { | ||
Button, Container, Form, Hyperlink, | ||
} from '@openedx/paragon'; | ||
|
||
import messages from './messages'; | ||
import SocialAuthButton from '../../common-ui/SocialAuthButtons'; | ||
|
||
import './index.scss'; | ||
|
||
/** | ||
* Login form component that holds the login form functionality. | ||
* | ||
* @returns {JSX.Element} The rendered login component along with social auth buttons. | ||
*/ | ||
|
||
const LoginForm = () => { | ||
const { formatMessage } = useIntl(); | ||
|
||
return ( | ||
<Container size="lg" className="w-100 h-100 overflow-auto form-layout"> | ||
<h1 className="display-1 form-heading mb-4">{formatMessage(messages.loginFormHeadingText)}</h1> | ||
<SocialAuthButton /> | ||
<div className="text-center mb-4.5 mt-4.5"> | ||
{formatMessage(messages.loginFormOrMsg)} | ||
</div> | ||
<Form> | ||
<Form.Row className="mb-4"> | ||
<Form.Group controlId="formGridEmail" className="w-100 m-0"> | ||
<Form.Control | ||
type="email" | ||
floatingLabel="Email" | ||
/> | ||
</Form.Group> | ||
</Form.Row> | ||
<Form.Row className="mb-3"> | ||
<Form.Group controlId="formGridPassword" className="w-100 m-0"> | ||
<Form.Control | ||
type="password" | ||
floatingLabel="Password" | ||
/> | ||
</Form.Group> | ||
</Form.Row> | ||
<Form.Row> | ||
<Hyperlink className="hyper-link"> | ||
{formatMessage(messages.loginFormForgotPasswordButtonText)} | ||
</Hyperlink> | ||
</Form.Row> | ||
<Form.Row className="mt-6 mb-4.5"> | ||
<Button className="w-100" variant="primary">{formatMessage(messages.loginFormSignInButtonText)}</Button> | ||
</Form.Row> | ||
<Form.Row> | ||
<span> | ||
{formatMessage(messages.loginFormSignUpHelpingText)} | ||
<Hyperlink className="hyper-link"> | ||
{formatMessage(messages.loginFormSignUpLink)} | ||
</Hyperlink> | ||
</span> | ||
</Form.Row> | ||
</Form> | ||
</Container> | ||
); | ||
}; | ||
|
||
export default LoginForm; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
.form-layout { | ||
padding: 3.5rem 2.5rem 3.5rem 2.5rem; | ||
} | ||
|
||
.form-heading { | ||
text-align: center !important; | ||
font-style: italic; | ||
} | ||
|
||
.hyper-link { | ||
text-decoration: underline; | ||
cursor: pointer; | ||
} | ||
|
||
.pgn__form-control-floating-label-text:after { | ||
content:"*"; | ||
color: #AB0D02; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
import { defineMessages } from '@edx/frontend-platform/i18n'; | ||
|
||
const messages = defineMessages({ | ||
loginFormHeadingText: { | ||
id: 'login.form.heading.text', | ||
defaultMessage: 'Login', | ||
description: 'Text of heading', | ||
}, | ||
loginFormSignInButtonText: { | ||
id: 'login.form.signin.button.text', | ||
defaultMessage: 'Sign in', | ||
description: 'Text of sign in button', | ||
}, | ||
loginFormForgotPasswordButtonText: { | ||
id: 'login.form.forgot.password.button.text', | ||
defaultMessage: 'Forgot Password?', | ||
description: 'Button text for forgot password', | ||
}, | ||
loginFormSignUpHelpingText: { | ||
id: 'login.form.sign.up.helping.text', | ||
defaultMessage: 'Don’t have an account yet?', | ||
description: 'Description of sign up link helping text', | ||
}, | ||
loginFormSignUpLink: { | ||
id: 'login.form.sign.up.link.text', | ||
defaultMessage: 'Create an account', | ||
description: 'Description of sign up link', | ||
}, | ||
loginFormOrMsg: { | ||
id: 'login.form.or.message', | ||
defaultMessage: 'or', | ||
description: 'Text of or', | ||
}, | ||
}); | ||
|
||
export default messages; |