import React, { useState, useCallback } from 'react'
import PropTypes from 'prop-types'
import { Field, Form } from 'react-final-form'
import { useDispatch } from 'react-redux'
import Button from '@material-ui/core/Button'
import Card from '@material-ui/core/Card'
import CardActions from '@material-ui/core/CardActions'
import CircularProgress from '@material-ui/core/CircularProgress'
import TextField from '@material-ui/core/TextField'
import { createMuiTheme, makeStyles } from '@material-ui/core/styles'
import { ThemeProvider } from '@material-ui/styles'
import Logo from '../icons/android-icon-192x192.png'
import { useLogin, useNotify, useTranslate } from 'react-admin'
import Notification from './Notification'
import useCurrentTheme from '../themes/useCurrentTheme'
import config from '../config'
import { clearQueue } from '../actions'
const useStyles = makeStyles(
(theme) => ({
main: {
display: 'flex',
flexDirection: 'column',
minHeight: '100vh',
alignItems: 'center',
justifyContent: 'flex-start',
background: `url(${config.loginBackgroundURL})`,
backgroundRepeat: 'no-repeat',
backgroundSize: 'cover',
backgroundPosition: 'center',
},
card: {
minWidth: 300,
marginTop: '6em',
overflow: 'visible',
},
avatar: {
margin: '1em',
display: 'flex',
justifyContent: 'center',
marginTop: '-3em',
},
icon: {
backgroundColor: 'transparent',
width: '6.3em',
},
systemName: {
marginTop: '1em',
display: 'flex',
justifyContent: 'center',
color: '#3f51b5', //theme.palette.grey[500]
},
welcome: {
marginTop: '1em',
padding: '0 1em 1em 1em',
display: 'flex',
justifyContent: 'center',
flexWrap: 'wrap',
color: '#3f51b5', //theme.palette.grey[500]
},
form: {
padding: '0 1em 1em 1em',
},
input: {
marginTop: '1em',
},
actions: {
padding: '0 1em 1em 1em',
},
button: {},
systemNameLink: {
textDecoration: 'none',
},
}),
{ name: 'NDLogin' }
)
const renderInput = ({
meta: { touched, error } = {},
input: { ...inputProps },
...props
}) => (