{"version":3,"file":"Login-0995d4a0.js","sources":["../../src/views/auth/components/Login/Login.tsx"],"sourcesContent":["import { LockOutlined, UserOutlined } from '@ant-design/icons';\r\nimport { TokenStore } from '@axl/accel-framework/stores';\r\nimport { Alert, Button, Form, Input, Spin, Typography } from 'antd';\r\nimport { Rule } from \"antd/lib/form\";\r\nimport { SchoolDocTitle, useLoc, useRouter } from 'components';\r\nimport { observer } from 'mobx-react';\r\nimport React, { useCallback, useEffect, useState } from \"react\";\r\nimport { useInstance } from \"react-ioc\";\r\nimport { Link } from 'react-router-dom';\r\nimport { SchoolStore } from 'stores';\r\nimport AuthStore from 'views/auth/stores/AuthStore';\r\nimport authStyles from '../styles/auth.module.scss';\r\nimport loginStyles from './Login.module.scss';\r\nimport { FormBuilder } from '@axl/accel-framework/components';\r\n\r\ndeclare type LoginActType = 'logout';\r\ntype LoginParams = {\r\n contactId: string;\r\n act: LoginActType,\r\n returnUrl: string;\r\n}\r\n\r\nconst Login: React.FC = () => {\r\n const authStore = useInstance(AuthStore);\r\n const tokenStore = useInstance(TokenStore);\r\n const loc = useLoc();\r\n const schoolStore = useInstance(SchoolStore);\r\n const [form] = Form.useForm();\r\n const [emailDisabled] = useState(authStore.hasContactEmail);\r\n\r\n const { params, history, navigate } = useRouter();\r\n\r\n useEffect(() => {\r\n authStore.setUrlParameters(params);\r\n if (params.act == 'logout')\r\n logout();\r\n }, [])\r\n\r\n const logout = useCallback(async () => {\r\n await authStore.logout();\r\n tokenStore.clearTokens();\r\n\r\n //if the app is from iframe, we need to send message to parent window that we are logged out\r\n //@ts-ignore\r\n if (window.ReactNativeWebView) {\r\n //@ts-ignore\r\n window.ReactNativeWebView.postMessage(JSON.stringify({\r\n from: \"axl\",\r\n type: \"logout\",\r\n }), '*');\r\n }\r\n\r\n history.replace('/login');\r\n }, []);\r\n\r\n const login = useCallback(async () => {\r\n if (await authStore.login())\r\n navigate(params.returnUrl || '/');\r\n }, []);\r\n\r\n const passwordRules: Rule[] = [\r\n {\r\n required: true,\r\n message: loc.word('Please input your password')\r\n },\r\n {\r\n type: 'string',\r\n min: 6,\r\n message: loc.word('Password must be longer than 6 characters')\r\n },\r\n {\r\n type: 'string',\r\n max: 30,\r\n message: loc.word('Password must be shorter than 30 characters')\r\n }\r\n ];\r\n\r\n return \r\n {loc.word('Login')}\r\n \r\n {authStore.errors.map(x => )}\r\n
login()}\r\n layout='vertical'\r\n initialValues={{ email: authStore.email }}\r\n validateTrigger='onBlur'>\r\n\r\n x.required().email() : undefined}\r\n itemProps={{ placeholder: loc.word('Enter email'), prefix: , tabIndex: 1, disabled: emailDisabled }}\r\n onChange={e => {\r\n authStore.setEmail(e.target.value);\r\n form.setFieldsValue({ email: authStore.email });\r\n }} />\r\n\r\n \r\n {loc.word('Password')}\r\n {loc.word('Forgot password?')}\r\n }\r\n name=\"password\"\r\n rules={passwordRules}\r\n className={loginStyles.password_input}>\r\n }\r\n type=\"password\"\r\n placeholder={loc.word('Enter your password')}\r\n onChange={e => authStore.setPassword(e.target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n {(!schoolStore.school.disableOpenRegistration && !authStore.hasContactEmail)\r\n &&
\r\n {loc.word(`Don't have an account?`)} {loc.word('Register')}\r\n
}\r\n \r\n
\r\n
;\r\n}\r\n\r\nexport default observer(Login);"],"names":["Login","authStore","useInstance","AuthStore","tokenStore","TokenStore","loc","useLoc","schoolStore","SchoolStore","form","Form","emailDisabled","useState","params","history","navigate","useRouter","useEffect","logout","useCallback","login","passwordRules","SchoolDocTitle","jsx","Typography","authStyles","jsxs","Spin","x","Alert","FormBuilder","UserOutlined","e","Link","loginStyles","Input","LockOutlined","Button","Login$1","observer"],"mappings":"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"}