{"version":3,"sources":["components/AppHeader.jsx","services/actionDeclarer.js","reducers/formReducer.js","hooks/useForm.js","config.js","components/SignInForm.jsx","components/OptOutForm.jsx","components/SubmissionConfirmation.jsx","App.js","index.js"],"names":["AppHeader","title","id","style","backgroundColor","padding","textTransform","margin","color","fontSize","fontWeight","letterSpacing","textAlign","actionDeclarer","Proxy","get","target","name","x","dispatch","payload","type","UPDATE","SET","formReducer","state","action","value","useForm","initialState","useReducer","updateField","setFormData","useMemo","data","formData","settings","SignInForm","setUser","setIsLoading","email","useState","validationError","setValidationError","signInError","setSignInError","handleSignIn","a","axios","method","baseURL","url","headers","api_key","params","response","console","log","className","Form","maxWidth","boxSizing","Input","required","label","onChange","textDecoration","href","Button","boxShadow","marginTop","size","content","onClick","window","location","replace","OptOutForm","user","setPreferences","schoolOptions","setSchoolOptions","useEffect","options","map","school","i","key","text","description","handlePreferences","preferences","Object","keys","reduce","acc","field","startsWith","preferenceString","length","join","firstName","lastName","maidenName","dob","allPreferences","preference_Name","preference_Address","preference_Phone","preference_Email","preference_DOB","preference_DOA","preference_Institution","preference_Status","preference_Standing","preference_Degrees","handleSubmit","schoolID","marginBottom","autoComplete","Field","isClearable","selected","customInput","mask","keepCharPositions","guide","e","Select","search","Checkbox","checked","preference","tabindex","inline","SubmissionConfirmation","arr","split","push","item","showPreferences","App","isLoading","Boolean","Dimmer","active","page","inverted","Loader","ReactDOM","render","document","getElementById"],"mappings":"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","file":"static/js/main.4856bce2.chunk.js","sourcesContent":["import React from 'react';\r\n\r\nconst AppHeader = ({ title }) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{ title }\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default AppHeader;","export const actionDeclarer = new Proxy (\r\n {}, {\r\n get ( target, name ) {\r\n const x = { [ name ]: dispatch => ( payload => dispatch( {type:x[name], payload} )) };\r\n return x[name];\r\n }\r\n }\r\n);\r\n","import { actionDeclarer } from '../services/actionDeclarer';\r\n\r\nexport const { UPDATE, SET } = actionDeclarer;\r\n\r\nconst formReducer = ( state = {}, action ) => {\r\n switch ( action.type ) {\r\n case UPDATE:\r\n return { ...state, [ action.payload.name ]: action.payload.value };\r\n case SET:\r\n return action.payload;\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default formReducer;\r\n","import { useMemo, useReducer } from 'react';\r\nimport formReducer, { SET, UPDATE } from '../reducers/formReducer';\r\n\r\nexport const useForm = ( initialState = {} ) => {\r\n const [ state, dispatch ] = useReducer( formReducer, initialState );\r\n\r\n const updateField = ({ target }) => UPDATE( dispatch )( target )\r\n\r\n const setFormData = useMemo( data => data => {\r\n if ( data ) {\r\n SET( dispatch )( data );\r\n }\r\n }, [] );\r\n\r\n return { formData: state, updateField, setFormData };\r\n}\r\n","export const settings = {\r\n\tapiUrl: 'https://staging-api.msc2c.org/ferpa'\r\n};","import React, { useState } from 'react';\r\nimport axios from 'axios';\r\nimport { Button, Form } from 'semantic-ui-react';\r\nimport { useForm } from '../hooks/useForm';\r\nimport { settings } from '../config.js';\r\n\r\nconst SignInForm = ({ setUser, setIsLoading }) => {\r\n\r\n\tconst { formData, updateField } = useForm({\r\n\t\temail: ''\r\n\t});\r\n\r\n\tconst [ validationError, setValidationError ] = useState( false );\r\n\tconst [ signInError, setSignInError ] = useState( false );\r\n\r\n\tconst handleSignIn = async () => {\r\n\t\tif ( !formData.email ) {\r\n\t\t\tsetValidationError( true );\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tsetIsLoading( 'Locating your C2C application...' );\r\n\t\ttry {\r\n\t\t\tconst response = await axios({\r\n\t\t\t\tmethod: 'get',\r\n\t\t\t\tbaseURL: settings.apiUrl,\r\n\t\t\t\turl: '/validate',\r\n\t\t\t\theaders: {\r\n\t\t\t\t\tapi_key: 'TEtBUElBZG1pbjomWGhoWiQqQGhnNFEhNyM='\r\n\t\t\t\t},\r\n\t\t\t\tparams: {\r\n\t\t\t\t\temail: formData.email\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tif ( response.data.id ) {\r\n\t\t\t\tsetUser({\r\n\t\t\t\t\tid: response.data.id,\r\n\t\t\t\t\temail: response.data.email\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tsetSignInError( true );\r\n\t\t\t};\r\n\t\t\tsetIsLoading( '' );\r\n\t\t} catch( err ) {\r\n\t\t\tconsole.log( err );\r\n\t\t\tsetSignInError( true );\r\n\t\t\tsetIsLoading( '' );\r\n\t\t}\r\n\t}\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t
\r\n\t\t\t\t

In order to process your FERPA opt-out election for student directory information associated with your participation in the C2C Program, please enter the email address used when submitting your C2C application.

\r\n\t\t\t
\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t{ validationError\r\n\t\t\t\t?

Please complete all required (*) fields

\r\n\t\t\t\t: null\r\n\t\t\t}\r\n\t\t\t{ signInError\r\n\t\t\t\t?

Sorry, we are unable to locate an application submitted using that email address. Please try again, or contact us if you have any issues accessing the opt-out form.

\r\n\t\t\t\t: null\r\n\t\t\t}\r\n\r\n\t\t\t\r\n\t\t\t window.location.replace( 'https://msc2c.org/privacy-policy' ) }\r\n\t\t\t/>\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default SignInForm;","import React, { useEffect, useState } from 'react';\r\nimport axios from 'axios';\r\nimport { Button, Form } from 'semantic-ui-react';\r\nimport DatePicker from 'react-datepicker';\r\nimport MaskedInput from 'react-text-mask';\r\nimport { useForm } from '../hooks/useForm';\r\nimport { settings } from '../config.js';\r\n\r\nconst OptOutForm = ({ user, setPreferences, setIsLoading }) => {\r\n\r\n\tconst [ schoolOptions, setSchoolOptions ] = useState( [] );\r\n\tconst [ validationError, setValidationError ] = useState( false );\r\n\r\n\tuseEffect( () => {\r\n\t\t( async () => {\r\n\t\t\ttry {\r\n\t\t\t\tconst response = await axios({\r\n\t\t\t\t\tmethod: 'get',\r\n\t\t\t\t\tbaseURL: settings.apiUrl,\r\n\t\t\t\t\turl: '/schools',\r\n\t\t\t\t\theaders: {\r\n\t\t\t\t\t\tapi_key: 'TEtBUElBZG1pbjomWGhoWiQqQGhnNFEhNyM='\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tconst options = response.data.map( ( school, i ) => {\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tkey: i + 1,\r\n\t\t\t\t\t\ttext: school.description,\r\n\t\t\t\t\t\tvalue: school.id\r\n\t\t\t\t\t};\r\n\t\t\t\t});\r\n\r\n\t\t\t\tsetSchoolOptions( options );\r\n\t\t\t} catch( err ) {\r\n\t\t\t\tconsole.log( err );\r\n\t\t\t}\r\n\t\t} )();\r\n\t}, [] );\r\n\r\n\tconst handlePreferences = () => {\r\n\t\tconst preferences = Object.keys( formData ).reduce( ( acc, field ) => {\r\n\t\t\tif ( field.startsWith( 'preference_' ) ) {\r\n\t\t\t return [ ...acc, field ];\r\n\t\t\t}\r\n\r\n\t\t\treturn acc;\r\n\t\t}, [] );\r\n\r\n\t\tlet preferenceString = [];\r\n\r\n\t\tfor ( let i = 0; i < preferences.length; i++ ) {\r\n\t\t\tif ( formData[ preferences[ i ] ] ) {\r\n\t\t\t\tpreferenceString = [ ...preferenceString, i + 1 ];\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn preferenceString.join( ', ' );\r\n\t}\r\n\r\n\tconst handleAllPreferences = ( e, { checked } ) => {\r\n\t\tconst preferences = Object.keys( formData ).reduce( ( acc, field ) => {\r\n\t\t\tif ( field.startsWith( 'preference_' ) ) {\r\n\t\t\t return [ ...acc, field ];\r\n\t\t\t}\r\n\r\n\t\t\treturn acc;\r\n\t\t}, [] );\r\n\r\n\t\tupdateField({ target: { name: 'allPreferences', value: checked } })\r\n\r\n\t\tfor ( let preference of preferences ) {\r\n\t\t\tupdateField({ target: { name: preference, value: checked } })\r\n\t\t}\r\n\t}\r\n\r\n\tconst { formData, updateField } = useForm({\r\n\t\tfirstName: '',\r\n\t\tlastName: '',\r\n\t\tmaidenName: '',\r\n\t\tdob: '',\r\n\t\tschool: 0,\r\n\t\tallPreferences: false,\r\n\t\tpreference_Name: false,\r\n\t\tpreference_Address: false,\r\n\t\tpreference_Phone: false,\r\n\t\tpreference_Email: false,\r\n\t\tpreference_DOB: false,\r\n\t\tpreference_DOA: false,\r\n\t\tpreference_Institution: false,\r\n\t\tpreference_Status: false,\r\n\t\tpreference_Standing: false,\r\n\t\tpreference_Degrees: false\r\n\t});\r\n\r\n\tconst handleSubmit = async () => {\r\n\t\tconst preferences = handlePreferences();\r\n\t\tif ( !formData.firstName || !formData.lastName || !formData.dob || !formData.school || !preferences.length ) {\r\n\t\t\tsetValidationError( true );\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tsetIsLoading( 'Submitting Form...' );\r\n\t\tconst data = {\r\n\t\t\t...user,\r\n\t\t\tfirstName: formData.firstName,\r\n\t\t\tlastName: formData.lastName,\r\n\t\t\tmaidenName: formData.maidenName,\r\n\t\t\tdob: formData.dob,\r\n\t\t\tschoolID: formData.school,\r\n\t\t\toptions: preferences\r\n\t\t}\r\n\r\n\t\ttry {\r\n\t\t\tawait axios({\r\n\t\t\t\tmethod: 'post',\r\n\t\t\t\tbaseURL: settings.apiUrl,\r\n\t\t\t\turl: '/record',\r\n\t\t\t\tdata,\r\n\t\t\t\theaders: {\r\n\t\t\t\t\tapi_key: 'TEtBUElBZG1pbjomWGhoWiQqQGhnNFEhNyM='\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tsetPreferences( preferences );\r\n\t\t\tsetIsLoading( '' );\r\n\t\t} catch ( err ) {\r\n\t\t\tconsole.log( err );\r\n\t\t\tsetIsLoading( '' );\r\n\t\t}\r\n\t}\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t
\r\n\t\t\t\t

To opt-out, please complete the required fields and review the information below.

\r\n\t\t\t
\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tonChange={ e => updateField({ target: { name: \"dob\", value: e } }) }\r\n\t\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t\t updateField({ target: { name, value } } ) }\r\n\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\tupdateField({ target: { name, value: checked } })\r\n\t\t\t\t\t\t\tupdateField({ target: { name: 'allPreferences', value: false } })\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\tupdateField({ target: { name, value: checked } })\r\n\t\t\t\t\t\t\tupdateField({ target: { name: 'allPreferences', value: false } })\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t { updateField({ target: { name, value: checked } }) } }\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t { updateField({ target: { name, value: checked } }) } }\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t { updateField({ target: { name, value: checked } }) } }\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t { updateField({ target: { name, value: checked } }) } }\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t { updateField({ target: { name, value: checked } }) } }\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t { updateField({ target: { name, value: checked } }) } }\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t { updateField({ target: { name, value: checked } }) } }\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t { updateField({ target: { name, value: checked } }) } }\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t

NOTICE OF DIRECTORY INFORMATION OPT-OUT

\r\n\t\t\t

In accordance with the Federal Educational Rights and Privacy Act of 1974 (FERPA), as amended, a student’s education records are maintained as confidential and, except for a limited number of special circumstances listed in that law, will not be released to a third party without the student’s prior written consent. The law, however, does allow schools to release student “directory information” without obtaining the prior consent of the student. If you do not want the release of certain types of directory information without your prior consent, you may choose to “opt-out” of this FERPA exception by signing the form below. Directory information of a student who has opted-out from the release of directory information, in accordance with this policy/procedure for opting out, will remain flagged until the student requests that the flag be removed by completing and submitting a revocation of the opt-out to the program.

\r\n\r\n\t\t\t

INSTRUCTIONS TO THE COMPLETE 2 COMPETE PROGRAM

\r\n\t\t\t

I request the withholding of the following personally identifiable information identified as Directory Information under FERPA. I understand that upon submission of this form, the information checked cannot be released to third parties without my written consent or unless the program is required by law or permitted under FERPA to release such information without my prior written consent; and that the checked directory information will not otherwise be released from the time the program receives my form until my optout request is rescinded. I understand that I may not opt-out of use of my student ID number because it is necessary identifying information for the program. I further understand that if directory information is released prior to the program receiving my optout request, the program may not be able to stop the disclosure of my directory information. I understand that I may request and change how my directory information is used by contacting the program.

\r\n\r\n\t\t\t{ validationError\r\n\t\t\t\t?

Please complete all required (*) fields and select at least one of the opt-out preferences.

\r\n\t\t\t\t: null\r\n\t\t\t}\r\n\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default OptOutForm;","import React from 'react';\r\n\r\nconst SubmissionConfirmation = ({ preferences }) => {\r\n\r\n\tconst showPreferences = () => {\r\n\t\tconst arr = [];\r\n\t\tfor ( let preference of preferences.split( ', ' ) ) {\r\n\t\t\tswitch( preference ) {\r\n\t\t\t\tcase '1':\r\n\t\t\t\t\tarr.push( 'Name' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '2':\r\n\t\t\t\t\tarr.push( 'Permanent or home address' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '3':\r\n\t\t\t\t\tarr.push( 'Telephone numbers' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '4':\r\n\t\t\t\t\tarr.push( 'E-mail address' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '5':\r\n\t\t\t\t\tarr.push( 'Date of birth' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '6':\r\n\t\t\t\t\tarr.push( 'Dates of attendance' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '7':\r\n\t\t\t\t\tarr.push( 'Most recent institution attended' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '8':\r\n\t\t\t\t\tarr.push( 'Enrollment Status' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '9':\r\n\t\t\t\t\tarr.push( 'Class standing' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase '10':\r\n\t\t\t\t\tarr.push( 'Degree(s) received' );\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn arr.map( item =>
  • { item }
  • );\r\n\t}\r\n\r\n\treturn (\r\n\t\t
    \r\n\t\t\t

    Your opt-out request to withhold the following personally identifiable information, identified as ‘Directory Information’ under FERPA, was received.
    The information you selected will not be released to third parties unless the C2C program is required by law, or permitted under FERPA, to release such information.

    \r\n\t\t\t
      \r\n\t\t\t\t{ showPreferences() }\r\n\t\t\t
    \r\n\t\t
    \r\n\t);\r\n};\r\n\r\nexport default SubmissionConfirmation;","import React, { useState } from 'react';\r\nimport { Dimmer, Loader } from 'semantic-ui-react'\r\n\r\nimport './App.css';\r\n\r\nimport AppHeader from './components/AppHeader';\r\nimport SignInForm from './components/SignInForm';\r\nimport OptOutForm from './components/OptOutForm';\r\nimport SubmissionConfirmation from './components/SubmissionConfirmation';\r\n\r\n\r\nconst App = () => {\r\n const [ isLoading, setIsLoading ] = useState( '');\r\n const [ user, setUser ] = useState( null );\r\n const [ preferences, setPreferences ] = useState( null );\r\n\r\n return (\r\n <>\r\n { Boolean( isLoading )\r\n ? \r\n \r\n

    { isLoading }

    \r\n
    \r\n : null }\r\n \r\n
    \r\n { user\r\n ? preferences\r\n ? \r\n : \r\n : \r\n }\r\n
    \r\n \r\n );\r\n}\r\n\r\nexport default App;\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\n\r\nimport App from './App';\r\n\r\nimport \"react-datepicker/dist/react-datepicker.css\";\r\n\r\nReactDOM.render(\r\n\t,\r\n\tdocument.getElementById('root')\r\n);\r\n"],"sourceRoot":""}