{"version":3,"file":"LoginForm.mjs","names":["React","TextField","Paper","Typography","makeStyles","LinearProgress","useTheme","useTranslation","LayoutUnit","Form","FormButtons","SubmitButton","Field","useStyles","theme","root","display","justifyContent","marginTop","spacing","loginWindow","position","flex","padding","width","underline","borderColor","label","color","logo","error","palette","main","LoginForm","props","$","_c","onSubmit","usernameLabel","passwordLabel","loading","classes","t","t0","t1","t2","defaultValue","t3","t4","t5","t6","grey","focused","shrink","style","t7","t8","value","length","t9","t10","t11","t12","t13","value_0","t14","t15","Symbol","for","marginBottom","t16","margin","backgroundColor","t17","t18","t19","t20","t21","t22","t23","t24"],"sources":["../../../src/UI/forms/LoginForm.jsx"],"sourcesContent":["import React from 'react';\nimport {\n  TextField,\n  Paper,\n  Typography,\n  makeStyles,\n  LinearProgress,\n  useTheme\n} from '@material-ui/core';\nimport { useTranslation } from 'react-i18next';\nimport { LayoutUnit } from '../../layout/LayoutUnit';\nimport { Form, FormButtons, SubmitButton, Field } from '../../utilities/form';\nconst useStyles = makeStyles((theme) => ({\n  root: {\n    display: 'flex',\n    justifyContent: 'center',\n    marginTop: theme.spacing(8)\n  },\n  loginWindow: {\n    position: 'relative',\n    flex: 1,\n    padding: theme.spacing(3),\n    width: 390\n  },\n  underline: {\n    '&::after': {\n      borderColor: 'black'\n    }\n  },\n  label: {\n    color: 'black'\n  },\n  logo: {\n    width: 150\n  },\n  error: {\n    color: theme.palette.error.main\n  }\n}));\n\nexport const LoginForm = (props) => {\n  const { onSubmit, logo, usernameLabel, passwordLabel, error, loading } =\n    props;\n  const classes = useStyles();\n  const theme = useTheme();\n  const { t } = useTranslation();\n\n  return (\n    <div className={classes.root}>\n      <Form onSubmit={onSubmit}>\n        <Paper className={classes.loginWindow}>\n          <Typography variant='h5' gutterBottom>\n            {t('login.title', { defaultValue: 'Login' })}\n          </Typography>\n          {error && (\n            <Typography variant='body1' className={classes.error}>\n              {t('login.invalidCredentials', {\n                defaultValue: 'Your username or password is invalid'\n              })}\n            </Typography>\n          )}\n          <Field\n            component={TextField}\n            margin='normal'\n            type='email'\n            name='username'\n            InputProps={{\n              classes: {\n                underline: classes.underline\n              }\n            }}\n            InputLabelProps={{\n              focused: true,\n              shrink: true,\n              style: { color: theme.palette.grey[500] }\n            }}\n            label={\n              usernameLabel ||\n              t('login.signInName', { defaultValue: 'Sign in name' })\n            }\n            fullWidth\n            size='small'\n            variant='standard'\n            validate={(value) => {\n              if (!value?.length) {\n                return t('login.signInNameRequired', {\n                  defaultValue: 'Please enter your sign in name'\n                });\n              }\n            }}\n          />\n          <Field\n            component={TextField}\n            margin='normal'\n            type='password'\n            name='password'\n            InputProps={{\n              classes: {\n                underline: classes.underline\n              }\n            }}\n            InputLabelProps={{\n              focused: true,\n              shrink: true,\n              style: { color: theme.palette.grey[500] }\n            }}\n            label={\n              passwordLabel || t('login.password', { defaultValue: 'Password' })\n            }\n            fullWidth\n            size='small'\n            variant='standard'\n            validate={(value) => {\n              if (!value?.length) {\n                return t('login.passwordRequired', {\n                  defaultValue: 'Please enter your password'\n                });\n              }\n            }}\n          />\n\n          <FormButtons style={{ justifyContent: 'flex-end', marginBottom: 0 }}>\n            <SubmitButton\n              variant='contained'\n              disablePristine={false}\n              style={{\n                margin: 0,\n                backgroundColor: theme.palette.grey[800],\n                color: '#fff'\n              }}\n            >\n              {t('login.signIn', { defaultValue: 'Sign In' })}\n            </SubmitButton>\n          </FormButtons>\n          {logo && (\n            <div>\n              <img className={classes.logo} src={logo} alt='Unity' />\n            </div>\n          )}\n          <LayoutUnit unit='xxs' />\n        </Paper>\n        {loading && <LinearProgress />}\n      </Form>\n    </div>\n  );\n};\n"],"mappings":";;;;;;;;;;AAYA,MAAMa,YAAYT,YAAYU,WAAW;CACvCC,MAAM;EACJC,SAAS;EACTC,gBAAgB;EAChBC,WAAWJ,MAAMK,QAAQ,EAAC;EAC3B;CACDC,aAAa;EACXC,UAAU;EACVC,MAAM;EACNC,SAAST,MAAMK,QAAQ,EAAE;EACzBK,OAAO;EACR;CACDC,WAAW,EACT,YAAY,EACVC,aAAa,SACf,EACD;CACDC,OAAO,EACLC,OAAO,SACR;CACDC,MAAM,EACJL,OAAO,KACR;CACDM,OAAO,EACLF,OAAOd,MAAMiB,QAAQD,MAAME,MAC7B;CACD,EAAE;AAEH,MAAaC,aAAYC,UAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CACvB,MAAA,EAAAC,UAAAR,MAAAS,eAAAC,eAAAT,OAAAU,YACEN;CACF,MAAAO,UAAgB5B,WAAW;CAC3B,MAAAC,QAAcR,UAAU;CACxB,MAAA,EAAAoC,MAAcnC,gBAAgB;CAGZ,MAAAoC,KAAAF,QAAO1B;CAED,MAAA6B,KAAAH,QAAOrB;CAAY,IAAAyB;AAAA,KAAAV,EAAA,OAAAO,GAAA;AAEhCG,OAAAH,EAAE,eAAe,EAAAI,cAAgB,SAAS,CAAC;AAAAX,IAAA,KAAAO;AAAAP,IAAA,KAAAU;OAAAA,MAAAV,EAAA;CAAA,IAAAY;AAAA,KAAAZ,EAAA,OAAAU,IAAA;AAD9CE,OAAA,sBAAA,cAAC,YAAD;GAAoB,SAAA;GAAK,cAAA;GAEZ,EADVF,GACU;AAAAV,IAAA,KAAAU;AAAAV,IAAA,KAAAY;OAAAA,MAAAZ,EAAA;CAAA,IAAAa;AAAA,KAAAb,EAAA,OAAAM,QAAAX,SAAAK,EAAA,OAAAL,SAAAK,EAAA,OAAAO,GAAA;AACZM,OAAAlB,SACC,sBAAA,cAAC,YAAD;GAAoB,SAAA;GAAmB,WAAAW,QAAOX;GAK/C,EAJIY,EAAE,4BAA4B,EAAAI,cACf,wCACf,CAAA,CAEJ;AAAAX,IAAA,KAAAM,QAAAX;AAAAK,IAAA,KAAAL;AAAAK,IAAA,KAAAO;AAAAP,IAAA,KAAAa;OAAAA,MAAAb,EAAA;CAAA,IAAAc;AAAA,KAAAd,EAAA,OAAAM,QAAAhB,WAAA;AAMawB,OAAA,EAAAR,SACD,EAAAhB,WACIgB,QAAOhB,WACpB,EACD;AAAAU,IAAA,KAAAM,QAAAhB;AAAAU,IAAA,KAAAc;OAAAA,MAAAd,EAAA;CAAA,IAAAe;AAAA,KAAAf,EAAA,QAAArB,MAAAiB,QAAAoB,KAAA,MAAA;AACgBD,OAAA;GAAAE,SACN;GAAIC,QACL;GAAIC,OACL,EAAA1B,OAASd,MAAKiB,QAAQoB,KAAK,MAAM;GACzC;AAAAhB,IAAA,MAAArB,MAAAiB,QAAAoB,KAAA;AAAAhB,IAAA,MAAAe;OAAAA,MAAAf,EAAA;CAAA,IAAAoB;AAAA,KAAApB,EAAA,QAAAO,KAAAP,EAAA,QAAAG,eAAA;AAECiB,OAAAjB,iBACAI,EAAE,oBAAoB,EAAAI,cAAgB,gBAAgB,CAAC;AAAAX,IAAA,MAAAO;AAAAP,IAAA,MAAAG;AAAAH,IAAA,MAAAoB;OAAAA,MAAApB,EAAA;CAAA,IAAAqB;AAAA,KAAArB,EAAA,QAAAO,GAAA;AAK/Cc,QAAAC,UAAA;AACR,OAAI,CAACA,OAAKC,OAAQ,QACThB,EAAE,4BAA4B,EAAAI,cACrB,kCACf,CAAC;;AAELX,IAAA,MAAAO;AAAAP,IAAA,MAAAqB;OAAAA,MAAArB,EAAA;CAAA,IAAAwB;AAAA,KAAAxB,EAAA,QAAAc,MAAAd,EAAA,QAAAe,MAAAf,EAAA,QAAAoB,MAAApB,EAAA,QAAAqB,IAAA;AA5BHG,OAAA,sBAAA,cAAC,OAAD;GACa1D,WAAAA;GACJ,QAAA;GACF,MAAA;GACA,MAAA;GACO,YAAAgD;GAKK,iBAAAC;GAMf,OAAAK;GAGF,WAAA;GACK,MAAA;GACG,SAAA;GACE,UAAAC;GAOV,CAAA;AAAArB,IAAA,MAAAc;AAAAd,IAAA,MAAAe;AAAAf,IAAA,MAAAoB;AAAApB,IAAA,MAAAqB;AAAArB,IAAA,MAAAwB;OAAAA,MAAAxB,EAAA;CAAA,IAAAyB;AAAA,KAAAzB,EAAA,QAAAM,QAAAhB,WAAA;AAMYmC,QAAA,EAAAnB,SACD,EAAAhB,WACIgB,QAAOhB,WACpB,EACD;AAAAU,IAAA,MAAAM,QAAAhB;AAAAU,IAAA,MAAAyB;OAAAA,OAAAzB,EAAA;CAAA,IAAA0B;AAAA,KAAA1B,EAAA,QAAArB,MAAAiB,QAAAoB,KAAA,MAAA;AACgBU,QAAA;GAAAT,SACN;GAAIC,QACL;GAAIC,OACL,EAAA1B,OAASd,MAAKiB,QAAQoB,KAAK,MAAM;GACzC;AAAAhB,IAAA,MAAArB,MAAAiB,QAAAoB,KAAA;AAAAhB,IAAA,MAAA0B;OAAAA,OAAA1B,EAAA;CAAA,IAAA2B;AAAA,KAAA3B,EAAA,QAAAI,iBAAAJ,EAAA,QAAAO,GAAA;AAECoB,QAAAvB,iBAAiBG,EAAE,kBAAkB,EAAAI,cAAgB,YAAY,CAAC;AAAAX,IAAA,MAAAI;AAAAJ,IAAA,MAAAO;AAAAP,IAAA,MAAA2B;OAAAA,OAAA3B,EAAA;CAAA,IAAA4B;AAAA,KAAA5B,EAAA,QAAAO,GAAA;AAK1DqB,SAAAC,YAAA;AACR,OAAI,CAACP,SAAKC,OAAQ,QACThB,EAAE,0BAA0B,EAAAI,cACnB,8BACf,CAAC;;AAELX,IAAA,MAAAO;AAAAP,IAAA,MAAA4B;OAAAA,OAAA5B,EAAA;CAAA,IAAA8B;AAAA,KAAA9B,EAAA,QAAAyB,OAAAzB,EAAA,QAAA0B,OAAA1B,EAAA,QAAA2B,OAAA3B,EAAA,QAAA4B,KAAA;AA3BHE,QAAA,sBAAA,cAAC,OAAD;GACahE,WAAAA;GACJ,QAAA;GACF,MAAA;GACA,MAAA;GACO,YAAA2D;GAKK,iBAAAC;GAMf,OAAAC;GAEF,WAAA;GACK,MAAA;GACG,SAAA;GACE,UAAAC;GAOV,CAAA;AAAA5B,IAAA,MAAAyB;AAAAzB,IAAA,MAAA0B;AAAA1B,IAAA,MAAA2B;AAAA3B,IAAA,MAAA4B;AAAA5B,IAAA,MAAA8B;OAAAA,OAAA9B,EAAA;CAAA,IAAA+B;AAAA,KAAA/B,EAAA,QAAAgC,OAAAC,IAAA,4BAAA,EAAA;AAEkBF,QAAA;GAAAjD,gBAAkB;GAAUoD,cAAgB;GAAG;AAAAlC,IAAA,MAAA+B;OAAAA,OAAA/B,EAAA;CAAA,IAAAmC;AAAA,KAAAnC,EAAA,QAAArB,MAAAiB,QAAAoB,KAAA,MAAA;AAIxDmB,QAAA;GAAAC,QACG;GAACC,iBACQ1D,MAAKiB,QAAQoB,KAAK;GAAKvB,OACjC;GACR;AAAAO,IAAA,MAAArB,MAAAiB,QAAAoB,KAAA;AAAAhB,IAAA,MAAAmC;OAAAA,OAAAnC,EAAA;CAAA,IAAAsC;AAAA,KAAAtC,EAAA,QAAAO,GAAA;AAEA+B,QAAA/B,EAAE,gBAAgB,EAAAI,cAAgB,WAAW,CAAC;AAAAX,IAAA,MAAAO;AAAAP,IAAA,MAAAsC;OAAAA,OAAAtC,EAAA;CAAA,IAAAuC;AAAA,KAAAvC,EAAA,QAAAmC,OAAAnC,EAAA,QAAAsC,KAAA;AAVnDC,QAAA,sBAAA,cAAC,aAAD,EAAoB,OAAAR,KAYN,EAXZ,sBAAA,cAAC,cAAD;GACU,SAAA;GACS,iBAAA;GACV,OAAAI;GAQX,EAFKG,IAEL,CAAc;AAAAtC,IAAA,MAAAmC;AAAAnC,IAAA,MAAAsC;AAAAtC,IAAA,MAAAuC;OAAAA,OAAAvC,EAAA;CAAA,IAAAwC;AAAA,KAAAxC,EAAA,QAAAM,QAAAZ,QAAAM,EAAA,QAAAN,MAAA;AACb8C,QAAA9C,QACC,sBAAA,cAAA,OAAA,MACE,sBAAA,cAAA,OAAA;GAAgB,WAAAY,QAAOZ;GAAYA,KAAAA;GAAU,KAAA;GAC/C,CAAA,CACD;AAAAM,IAAA,MAAAM,QAAAZ;AAAAM,IAAA,MAAAN;AAAAM,IAAA,MAAAwC;OAAAA,OAAAxC,EAAA;CAAA,IAAAyC;AAAA,KAAAzC,EAAA,QAAAgC,OAAAC,IAAA,4BAAA,EAAA;AACDQ,QAAA,sBAAA,cAAC,YAAD,EAAiB,MAAA,OAAQ,CAAA;AAAAzC,IAAA,MAAAyC;OAAAA,OAAAzC,EAAA;CAAA,IAAA0C;AAAA,KAAA1C,EAAA,QAAAM,QAAArB,eAAAe,EAAA,QAAA8B,OAAA9B,EAAA,QAAAuC,OAAAvC,EAAA,QAAAwC,OAAAxC,EAAA,QAAAY,MAAAZ,EAAA,QAAAa,MAAAb,EAAA,QAAAwB,IAAA;AAzF3BkB,QAAA,sBAAA,cAAC,OAAD,EAAkB,WAAAjC,IA0FV,EAzFNG,IAGCC,IAODW,IA8BAM,KA8BAS,KAaCC,KAKDC,IACM;AAAAzC,IAAA,MAAAM,QAAArB;AAAAe,IAAA,MAAA8B;AAAA9B,IAAA,MAAAuC;AAAAvC,IAAA,MAAAwC;AAAAxC,IAAA,MAAAY;AAAAZ,IAAA,MAAAa;AAAAb,IAAA,MAAAwB;AAAAxB,IAAA,MAAA0C;OAAAA,OAAA1C,EAAA;CAAA,IAAA2C;AAAA,KAAA3C,EAAA,QAAAK,SAAA;AACPsC,QAAAtC,WAAW,sBAAA,cAAC,gBAAA,KAAiB;AAAAL,IAAA,MAAAK;AAAAL,IAAA,MAAA2C;OAAAA,OAAA3C,EAAA;CAAA,IAAA4C;AAAA,KAAA5C,EAAA,QAAAE,YAAAF,EAAA,QAAA0C,OAAA1C,EAAA,QAAA2C,KAAA;AA5FhCC,QAAA,sBAAA,cAAC,MAAD,EAAgB1C,UA6FT,EA5FLwC,KA2FCC,IACI;AAAA3C,IAAA,MAAAE;AAAAF,IAAA,MAAA0C;AAAA1C,IAAA,MAAA2C;AAAA3C,IAAA,MAAA4C;OAAAA,OAAA5C,EAAA;CAAA,IAAA6C;AAAA,KAAA7C,EAAA,QAAAM,QAAA1B,QAAAoB,EAAA,QAAA4C,KAAA;AA9FTC,QAAA,sBAAA,cAAA,OAAA,EAAgB,WAAArC,IA+FV,EA9FJoC,IA8FI;AAAA5C,IAAA,MAAAM,QAAA1B;AAAAoB,IAAA,MAAA4C;AAAA5C,IAAA,MAAA6C;OAAAA,OAAA7C,EAAA;AAAA,QA/FN6C"}