{"version":3,"sources":["network/userQuery.js","config/auth.js","pages/Private.js","network/loginMutation.js","pages/AuthenticationForm.js","AuthGate.js","config/apolloClient.js","App.js","index.js"],"names":["userQueryGQL","gql","useAuthToken","useCookies","cookies","setCookie","removeCookie","authToken","Private","user","logout","removeAuthToken","apolloClient","useApolloClient","a","clearStore","useLogout","currentURL","window","location","href","Box","sx","flexGrow","AppBar","position","Grid","container","justifyContent","Toolbar","Button","color","onClick","map","value","item","xs","Card","CardContent","key","Path","Description","loginMutationGQL","AuthenticationForm","loading","React","useState","username","password","showPassword","company","values","setValues","style","height","background","setAuthToken","removeAuthtoken","useMutation","onCompleted","data","login","token","mutation","variables","useLoginMutation","loginMutation","disableForm","onSubmit","handleChange","prop","event","target","useKey","alignItems","sm","md","Container","maxWidth","minWidth","Typography","variant","component","FormControl","m","width","InputLabel","htmlFor","OutlinedInput","id","type","onChange","size","label","endAdornment","InputAdornment","IconButton","aria-label","onMouseDown","preventDefault","edge","CardActions","disabled","AuthGate","userData","useQuery","getFileList","httpLink","HttpLink","uri","authMiddleware","ApolloLink","operation","forward","setContext","headers","authorization","cache","InMemoryCache","App","ApolloClient","link","concat","useAppApolloClient","client","ReactDOM","render","StrictMode","CookiesProvider","document","getElementById"],"mappings":"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","file":"static/js/main.033db70d.chunk.js","sourcesContent":["import gql from \"graphql-tag\";\nimport { useQuery } from \"@apollo/react-hooks\";\n\nconst userQueryGQL = gql`\n query GetFiles {\n getFileList {\n Description\n Path\n }\n }\n`;\n\nexport const useUserQuery = () => useQuery(userQueryGQL);\n","import { useApolloClient } from \"@apollo/react-hooks\";\nimport { useCookies } from \"react-cookie\";\n\nconst TOKEN_NAME = \"authToken\";\n\n// custom hook to handle authToken - we use compositon to decouple the auth system and it's storage\nexport const useAuthToken = () => {\n const [cookies, setCookie, removeCookie] = useCookies([TOKEN_NAME]);\n const setAuthToken = (authToken) => {\n setCookie(TOKEN_NAME, authToken);\n };\n const removeAuthToken = () => removeCookie(TOKEN_NAME);\n\n return [cookies[TOKEN_NAME], setAuthToken, removeAuthToken];\n};\n\nexport const useLogout = () => {\n const [, , removeAuthToken] = useAuthToken();\n const apolloClient = useApolloClient();\n\n const logout = async () => {\n await apolloClient.clearStore(); // we remove all information in the store\n removeAuthToken();\n };\n return logout;\n};\n","/* eslint-disable react/button-has-type */\nimport React from \"react\";\nimport { useLogout } from \"../config/auth\";\nimport Box from \"@mui/material/Box\";\nimport Paper from \"@mui/material/Paper\";\nimport Grid from \"@mui/material/Grid\";\nimport AppBar from \"@mui/material/AppBar\";\nimport Toolbar from \"@mui/material/Toolbar\";\nimport Button from \"@mui/material/Button\";\nimport Card from \"@mui/material/Card\";\nimport CardContent from \"@mui/material/CardContent\";\n\nconst Private = ({ user }) => {\n const logout = useLogout();\n const currentURL = window.location.href;\n const style = {\n paddingTop: \"20px\",\n height: \"100%\",\n };\n\n return (\n \n \n \n \n \n \n \n \n \n \n\n \n \n {user\n ? user.map((value) => (\n \n \n \n \n {value.Description}\n \n \n \n \n ))\n : null}\n \n \n \n );\n};\n\nexport default Private;\n","/* eslint-disable no-unused-vars */\nimport gql from \"graphql-tag\";\nimport { useMutation } from \"@apollo/react-hooks\";\nimport { useAuthToken } from \"../config/auth\";\n\nexport const loginMutationGQL = gql`\n mutation login($login: String!, $password: String!, $company: String!) {\n login(username: $login, password: $password, company: $company) {\n token\n user {\n UserID\n Username\n }\n }\n }\n`;\n\nexport const useLoginMutation = () => {\n const [_, setAuthToken, removeAuthtoken] = useAuthToken();\n\n const [mutation, mutationResults] = useMutation(loginMutationGQL, {\n onCompleted: (data) => {\n setAuthToken(data.login.token);\n },\n });\n\n // full login function\n const login = (user, password, company) => {\n removeAuthtoken();\n return mutation({\n variables: {\n login: user,\n password,\n company,\n },\n });\n };\n return [login, mutationResults];\n};\n","import { useForm } from \"react-hook-form\";\nimport React, { useState, useEffect } from \"react\";\nimport Box from \"@mui/material/Box\";\nimport Grid from \"@mui/material/Grid\";\nimport Container from \"@mui/material/Container\";\nimport Card from \"@mui/material/Card\";\nimport CardActions from \"@mui/material/CardActions\";\nimport CardContent from \"@mui/material/CardContent\";\nimport Button from \"@mui/material/Button\";\nimport Typography from \"@mui/material/Typography\";\nimport IconButton from \"@mui/material/IconButton\";\n\nimport OutlinedInput from \"@mui/material/OutlinedInput\";\nimport InputLabel from \"@mui/material/InputLabel\";\nimport InputAdornment from \"@mui/material/InputAdornment\";\nimport FormControl from \"@mui/material/FormControl\";\n\nimport Visibility from \"@mui/icons-material/Visibility\";\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\nimport { useLoginMutation } from \"../network/loginMutation\";\nimport { useKey } from \"rooks\";\n\nconst AuthenticationForm = ({ loading }) => {\n const [values, setValues] = React.useState({\n username: \"\",\n password: \"\",\n showPassword: false,\n company: \"\",\n });\n const style = {\n height: \"100%\",\n background: \"#373B44\",\n background: \"-webkit-linear-gradient(to left, #4286f4, #373B44)\",\n background: \"linear-gradient(to left, #4286f4, #373B44)\",\n };\n\n const [loginMutation, loginMutationResults] = useLoginMutation();\n\n const disableForm = loginMutationResults.loading || loading;\n\n const onSubmit = () =>\n loginMutation(values.username, values.password, values.company);\n\n const handleChange = (prop) => (event) => {\n setValues({ ...values, [prop]: event.target.value });\n };\n\n const handleClickShowPassword = () => {\n setValues({\n ...values,\n showPassword: !values.showPassword,\n });\n };\n const handleMouseDownPassword = (event) => {\n event.preventDefault();\n };\n useKey([\"Enter\"], onSubmit);\n return (\n \n \n \n \n \n \n \n \n Login\n \n \n \n \n \n \n \n Company\n \n \n \n \n \n \n \n \n \n Username\n \n \n \n \n \n \n \n \n \n Password\n \n \n \n {values.showPassword ? (\n \n ) : (\n \n )}\n \n \n }\n label=\"Password\"\n />\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default AuthenticationForm;\n","import React from \"react\";\nimport { useUserQuery } from \"./network/userQuery\";\nimport Private from \"./pages/Private\";\nimport AuthenticationForm from \"./pages/AuthenticationForm\";\nimport { useAuthToken } from \"./config/auth\";\n\nexport const AuthGate = () => {\n const [authToken] = useAuthToken();\n const userData = useUserQuery();\n\n if (userData && authToken) {\n if (userData && userData.data && userData.data.getFileList) {\n return ;\n }\n }\n return ;\n};\n","import ApolloClient from \"apollo-client\";\nimport { InMemoryCache } from \"apollo-cache-inmemory\";\nimport { ApolloLink } from \"apollo-link\";\nimport { HttpLink } from \"apollo-link-http\";\nimport { useAuthToken } from \"./auth\";\n\nconst httpLink = new HttpLink({ uri: \"https://dpfecorp.com/customers/api\" });\n\nconst authMiddleware = (authToken) =>\n new ApolloLink((operation, forward) => {\n // add the authorization to the headers\n if (authToken) {\n operation.setContext({\n headers: {\n authorization: authToken,\n },\n });\n }\n\n return forward(operation);\n });\n\nconst cache = new InMemoryCache({});\n\nexport const useAppApolloClient = () => {\n const [authToken] = useAuthToken();\n return new ApolloClient({\n link: authMiddleware(authToken).concat(httpLink),\n cache,\n });\n};\n","import React from \"react\";\nimport { ApolloProvider } from \"@apollo/react-hooks\";\nimport { AuthGate } from \"./AuthGate\";\nimport { useAppApolloClient } from \"./config/apolloClient\";\n\nfunction App() {\n const apolloClient = useAppApolloClient();\n\n return (\n \n \n \n );\n}\n\nexport default App;\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport \"./index.css\";\nimport { CookiesProvider } from \"react-cookie\";\nimport App from \"./App\";\n\nReactDOM.render(\n \n \n \n \n ,\n document.getElementById(\"root\")\n);\n"],"sourceRoot":""}