import React from 'react'; import PropTypes from 'prop-types'; import { withStyles } from '@material-ui/core/styles'; import classNames from 'classnames'; import { Field, reduxForm } from 'redux-form/immutable'; import { connect } from 'react-redux'; import Visibility from '@material-ui/icons/Visibility'; import VisibilityOff from '@material-ui/icons/VisibilityOff'; import AllInclusive from '@material-ui/icons/AllInclusive'; import Brightness5 from '@material-ui/icons/Brightness5'; import People from '@material-ui/icons/People'; import ArrowForward from '@material-ui/icons/ArrowForward'; import { Button, IconButton, InputAdornment, FormControl, FormControlLabel } from '@material-ui/core'; import styles from './user-jss'; import { TextFieldRedux, CheckboxRedux } from './ReduxFormMUI'; import { ContentDivider } from '../Divider'; import PapperBlock from '../PapperBlock/PapperBlock'; // validation functions const required = value => (value == null ? 'Required' : undefined); const email = value => ( value && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(value) ? 'Invalid email' : undefined ); class LoginForm extends React.Component { state = { showPassword: false } handleClickShowPassword = () => { this.setState({ showPassword: !this.state.showPassword }); }; handleMouseDownPassword = event => { event.preventDefault(); }; render() { const { classes, handleSubmit, pristine, submitting } = this.props; return (
{this.state.showPassword ? : } ) }} required validate={required} className={classes.field} />
} label="Remember" />
Cannot Login? | {' '}
); } } LoginForm.propTypes = { classes: PropTypes.object.isRequired, handleSubmit: PropTypes.func.isRequired, pristine: PropTypes.bool.isRequired, submitting: PropTypes.bool.isRequired, }; const LoginFormReduxed = reduxForm({ form: 'immutableExample', enableReinitialize: true, })(LoginForm); const reducer = 'login'; const FormInit = connect( state => ({ force: state, initialValues: state.getIn([reducer, 'usersLogin']) }), )(LoginFormReduxed); export default withStyles(styles)(FormInit);