{"version":3,"sources":["components/auth/AzureADProvider.js","components/ReferralNavbar.js","components/Form/ReferralForm.js","components/DownloadCSV.js","App.js","index.js"],"names":["loginRequest","scopes","LoginType","Redirect","ReferralNavbar","Navbar","bg","expand","Brand","href","Toggle","Collapse","id","Nav","className","Link","Component","ReferralForm","props","submit","a","validator","isEmail","state","employeeEmail","alert","isNumeric","studentUIN","studentEmail","isMobilePhone","studentPhone","studentAmount","params","account","instance","getAllAccounts","inputData","EmployerEmail","Reason","employeeReason","EmployerName","employeeName","EmployerOffice","employeeOffice","EmployerTitle","employeeTitle","StudentEmail","StudentName","studentName","StudentUin","StudentPhoneNo","Amount","acquireTokenSilent","then","response","id_token","idToken","accessToken","console","log","JSON","stringify","fetch","method","headers","Headers","body","status","window","location","reload","bind","Container","style","marginTop","DownloadCSV","process","json","setState","data","CSVLink","current","link","click","React","createRef","Button","onClick","this","filename","ref","target","App","msalContext","accounts","length","loginRedirect","catch","e","basename","exact","path","withMsal","baseUrl","document","getElementsByTagName","getAttribute","msalInstance","createBrowserHistory","PublicClientApplication","auth","authority","clientId","redirectUri","cache","cacheLocation","storeAuthStateInCookie","rootElement","getElementById","ReactDOM","render"],"mappings":"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","file":"static/js/main.ac93a363.chunk.js","sourcesContent":["import React, { Component } from 'react';\r\nimport { MsalAuthProvider, LoginType } from 'react-aad-msal';\r\n//import \"core-js/stable\";\r\nimport \"regenerator-runtime/runtime\";\r\n\r\nexport const msalConfig = {\r\n auth: {\r\n authority: 'https://login.microsoftonline.com/e202cd47-7a56-4baa-99e3-e3b71a7c77dd',\r\n clientId: 'f72cdd12-6339-44b3-b1ca-7f14e8b58d8f',\r\n redirectUri: 'https://apps.sa.uic.edu/geer'\r\n //redirectUri: 'https://dev.sa.uic.edu/geer'\r\n //redirectUri: 'https://localhost:44391'\r\n },\r\n cache: {\r\n cacheLocation: 'sessionStorage',\r\n storeAuthStateInCookie: true\r\n }\r\n}\r\n\r\nexport const loginRequest = {\r\n scopes: [\"user.read\"]\r\n}\r\n\r\nconst options = {\r\n loginType: LoginType.Redirect\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Navbar, Nav } from 'react-bootstrap';\r\n\r\nclass ReferralNavbar extends Component {\r\n\r\n render() {\r\n return (\r\n \r\n Referral Form\r\n \r\n \r\n \r\n \r\n \r\n )\r\n }\r\n\r\n}\r\n\r\nexport default ReferralNavbar;","import React, { Component } from 'react';\r\nimport {Container, Card, Form, Button, Row, Col} from 'react-bootstrap';\r\nimport validator from 'validator';\r\n\r\nclass ReferralForm extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.submit = this.submit.bind(this);\r\n this.state = {\r\n employeeReason: '',\r\n employeeName: '',\r\n employeeEmail: '',\r\n employeeOffice: '',\r\n employeeTitle: '',\r\n studentName: '',\r\n studentUIN: '',\r\n studentEmail: '',\r\n studentPhone: '',\r\n studentAmount: ''\r\n }\r\n this.props.instance.getAllAccounts()[0];\r\n }\r\n\r\n submit = async () => {\r\n if (!validator.isEmail(this.state.employeeEmail)) {\r\n alert(\"Please enter valid Email address for Employee\");\r\n return;\r\n }\r\n if (!validator.isNumeric(this.state.studentUIN)) {\r\n alert(\"Please enter valid UIN\");\r\n return;\r\n }\r\n if (!validator.isEmail(this.state.studentEmail)) {\r\n alert(\"Please enter valid Email address for Student\");\r\n return;\r\n }\r\n if (!validator.isMobilePhone(this.state.studentPhone)) {\r\n alert(\"Please enter valid phone number for Student\");\r\n return;\r\n }\r\n if (!validator.isNumeric(this.state.studentAmount)) {\r\n alert(\"Please enter valid amount\");\r\n return;\r\n }\r\n let params = { scopes: [\"user.read\"], account: this.props.instance.getAllAccounts()[0] };\r\n let inputData = {\r\n EmployerEmail: this.state.employeeEmail,\r\n Reason: this.state.employeeReason,\r\n EmployerName: this.state.employeeName,\r\n EmployerOffice: this.state.employeeOffice,\r\n EmployerTitle: this.state.employeeTitle,\r\n StudentEmail: this.state.studentEmail,\r\n StudentName: this.state.studentName,\r\n StudentUin: this.state.studentUIN,\r\n StudentPhoneNo: this.state.studentPhone,\r\n Amount: this.state.studentAmount\r\n };\r\n this.props.instance.acquireTokenSilent(params).then(response => {\r\n let id_token = response.idToken;\r\n let access_token = response.accessToken;\r\n console.log(JSON.stringify(inputData));\r\n console.log(id_token);\r\n fetch('./api/form', {\r\n method: 'POST',\r\n headers: new Headers({\r\n 'Authorization': 'Bearer ' + id_token,\r\n 'Content-Type': 'application/json'\r\n }),\r\n body: JSON.stringify(inputData)\r\n }).then(function (response) {\r\n if (response.status != 200)\r\n alert(\"Submission not successful\");\r\n else\r\n alert(\"Submission Successful\");\r\n window.location.reload();\r\n });\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n

\r\n ATTENTION: We have reached the end of funding for this grant. We will no longer be accepting referrals.\r\n

\r\n {/**/}\r\n {/* Referral Form*/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/*

Please complete the below application to refer a currently enrolled UIC student to receive an Emergency Grant typically up to $2500 though the GEER Emergency Grant Program.

*/}\r\n {/*

To be eligible for the grant, students must meet the below criteria:

*/}\r\n {/*
    */}\r\n {/*
  • A UIC degree-seeking, undergraduate student
  • */}\r\n {/*
  • Currently enrolled
  • */}\r\n {/*
  • A US Citizen/Resident; DACA recipient; Undocumented resident
  • */}\r\n {/*
*/}\r\n {/*

Students are eligible even if they:

*/}\r\n {/*
    */}\r\n {/*
  • have already received a U and I Care grant
  • */}\r\n {/*
  • have already received a HEERF/COVID-19 Emergency Grant
  • */}\r\n {/*
*/}\r\n {/*
*/}\r\n {/*
*/}\r\n {/*
*/}\r\n {/* */}\r\n {/*

Your Information

*/}\r\n {/*
*/}\r\n {/* */}\r\n {/* Name*/}\r\n {/* this.setState({ employeeName: e.target.value })} />*/}\r\n {/* */}\r\n {/* */}\r\n {/* Email*/}\r\n {/* this.setState({ employeeEmail: e.target.value })} />*/}\r\n {/* */}\r\n {/* */}\r\n {/* Office*/}\r\n {/* this.setState({ employeeOffice: e.target.value })} />*/}\r\n {/* */}\r\n {/* */}\r\n {/* Title*/}\r\n {/* this.setState({ employeeTitle: e.target.value })} />*/}\r\n {/* */}\r\n {/*
*/}\r\n {/*

Student Information

*/}\r\n {/*
*/}\r\n {/* */}\r\n {/* Name*/}\r\n {/* this.setState({ studentName: e.target.value })} />*/}\r\n {/* */}\r\n {/* */}\r\n {/* UIN*/}\r\n {/* this.setState({ studentUIN: e.target.value })} />*/}\r\n {/* */}\r\n {/* */}\r\n {/* Email*/}\r\n {/* this.setState({ studentEmail: e.target.value })} />*/}\r\n {/* */}\r\n {/* */}\r\n {/* Phone*/}\r\n {/* this.setState({ studentPhone: e.target.value })} />*/}\r\n {/* */}\r\n {/* */}\r\n {/* Amount Requested*/}\r\n {/* this.setState({ studentAmount: e.target.value })} />*/}\r\n {/* */}\r\n {/* */}\r\n {/* Referral Reason*/}\r\n {/* this.setState({ employeeReason: e.target.value })} />*/}\r\n {/* */}\r\n {/* Please provide enough details so that an assessment of the situation can be made.*/}\r\n {/* */}\r\n {/* */}\r\n {/*
*/}\r\n {/*

Please contact Jo Berry at jberry25@uic.edu or Sue Farruggia at spf@uic.edu with any questions.

*/}\r\n {/*
*/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/*
*/}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default ReferralForm;","import React, { Component } from 'react';\r\nimport { Button } from 'react-bootstrap';\r\nimport { CSVLink } from 'react-csv';\r\n\r\nclass DownloadCSV extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.CSVLink = React.createRef();\r\n this.submit = this.submit.bind(this);\r\n this.state = {\r\n data: []\r\n }\r\n }\r\n\r\n submit = async () => {\r\n let params = { scopes: [\"user.read\"], account: this.props.instance.getAllAccounts()[0] };\r\n console.log(process.env);\r\n this.props.instance.acquireTokenSilent(params).then(response => {\r\n let id_token = response.idToken;\r\n fetch('./api/reports', {\r\n headers: new Headers({\r\n 'Authorization': 'Bearer ' + id_token,\r\n 'Content-Type': 'application/json'\r\n })\r\n }).then(response => response.json()).then(response => {\r\n this.setState({ data: response });\r\n }).then(() => {\r\n this.CSVLink.current.link.click();\r\n });\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n \r\nexport default DownloadCSV;","import React, { Component } from 'react';\r\nimport { BrowserRouter, Switch, Route } from 'react-router-dom';\r\nimport { withMsal } from '@azure/msal-react';\r\nimport ReferralNavbar from './components/ReferralNavbar';\r\nimport ReferralForm from './components/Form/ReferralForm';\r\nimport { loginRequest } from './components/auth/AzureADProvider';\r\nimport DownloadCSV from './components/DownloadCSV';\r\n\r\nclass App extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n instance: this.props.msalContext.instance\r\n }\r\n if (this.props.msalContext.accounts.length <= 0)\r\n this.state.instance.loginRedirect(loginRequest).catch(e => {\r\n console.log(e);\r\n });\r\n }\r\n\r\n render() {\r\n let isAuth = this.props.msalContext.accounts.length > 0;\r\n if (isAuth)\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n )\r\n else return (
)\r\n }\r\n}\r\n\r\nexport default App = withMsal(App);\r\n","import 'bootstrap/dist/css/bootstrap.css';\r\n//import 'bootstrap/dist/css/bootstrap-theme.css';\r\nimport './index.css';\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { PublicClientApplication } from \"@azure/msal-browser\";\r\nimport { MsalProvider } from \"@azure/msal-react\";\r\nimport { createBrowserHistory } from 'history';\r\nimport { msalConfig } from './components/auth/AzureADProvider';\r\nimport App from './App';\r\n\r\n// Create browser history to use in the Redux store\r\nconst baseUrl = document.getElementsByTagName('base')[0].getAttribute('href');\r\nconst history = createBrowserHistory({ basename: baseUrl });\r\n\r\nconst msalInstance = new PublicClientApplication(msalConfig);\r\n\r\nconst rootElement = document.getElementById('root');\r\n\r\nReactDOM.render(\r\n
\r\n \r\n \r\n \r\n
\r\n ,\r\n rootElement);\r\n"],"sourceRoot":""}