{"version":3,"file":"InquiryForm.js","mappings":"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","sources":["webpack://@hedtech/powercampus-self-service/webpack/runtime/chunk loaded","webpack://@hedtech/powercampus-self-service/webpack/runtime/create fake namespace object","webpack://@hedtech/powercampus-self-service/./ClientApp/Components/Admissions/ApplicationForm/AddressSearchModal.tsx","webpack://@hedtech/powercampus-self-service/./ClientApp/Components/Admissions/ApplicationForm/FieldsHandler.tsx","webpack://@hedtech/powercampus-self-service/./ClientApp/Components/Admissions/ApplicationForm/FieldsGroupHandler.tsx","webpack://@hedtech/powercampus-self-service/./ClientApp/Components/Admissions/ApplicationForm/ApplicationCompletedModal.tsx","webpack://@hedtech/powercampus-self-service/./ClientApp/Components/Admissions/ApplicationForm/ApplicationHandler.tsx","webpack://@hedtech/powercampus-self-service/./ClientApp/Components/Admissions/ApplicationForm/ETSSearchModal.tsx","webpack://@hedtech/powercampus-self-service/./ClientApp/Requests/Admissions/InquiryForm.ts","webpack://@hedtech/powercampus-self-service/./ClientApp/Components/Admissions/InquiryForm/InquiryFormView.tsx","webpack://@hedtech/powercampus-self-service/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://@hedtech/powercampus-self-service/webpack/bootstrap","webpack://@hedtech/powercampus-self-service/webpack/runtime/compat get default export","webpack://@hedtech/powercampus-self-service/webpack/runtime/define property getters","webpack://@hedtech/powercampus-self-service/webpack/runtime/global","webpack://@hedtech/powercampus-self-service/webpack/runtime/hasOwnProperty shorthand","webpack://@hedtech/powercampus-self-service/webpack/runtime/make namespace object","webpack://@hedtech/powercampus-self-service/webpack/runtime/node module decorator","webpack://@hedtech/powercampus-self-service/webpack/runtime/runtimeId","webpack://@hedtech/powercampus-self-service/webpack/runtime/jsonp chunk loading","webpack://@hedtech/powercampus-self-service/webpack/runtime/nonce","webpack://@hedtech/powercampus-self-service/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));\n\t}\n\tdef['default'] = () => (value);\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","/* Copyright 2019 - 2024 Ellucian Company L.P. and its affiliates.\r\n * File: AddressSearchModal.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Button, { ButtonGroup } from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Modal from '@hedtech/powercampus-design-system/react/core/Modal';\r\nimport Pagination from '@hedtech/powercampus-design-system/react/core/Pagination';\r\nimport Table, { TableBody, TableCell, TableHead, TableRow } from '@hedtech/powercampus-design-system/react/core/Table';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\nimport TextLink from '@hedtech/powercampus-design-system/react/core/TextLink';\r\nimport TextField from '@hedtech/powercampus-design-system/react/core/TextField';\r\n\r\n// Types\r\nimport { IAddress } from '../../../Types/Account/IAddress';\r\nimport { IAddressSearchModal } from '../../../Types/Resources/Admissions/IApplicationFormResources';\r\n// #endregion Types\r\n\r\n// #region Internal types\r\nexport interface IAddressSearchModalProps {\r\n addresses?: IAddress[];\r\n hasSearchZipCode: boolean;\r\n open: boolean;\r\n pageNumber: number;\r\n pageSize: number;\r\n rowsPerPageOptions: number[];\r\n totalAddress: number;\r\n zipCode?: string;\r\n\r\n // events\r\n onChangePage: (event: any, page: number) => void;\r\n onChangeRowsPerPage: (event: any) => void;\r\n onChangeTextField?: (event: any) => void;\r\n onClear: () => void;\r\n onClickZipLink: (zipCode?: string, city?: string, stateProvinceId?: number, countryId?: number,\r\n countyId?: number) => void;\r\n onClose: () => void;\r\n onSearch: () => void;\r\n\r\n // resources\r\n resources: IAddressSearchModal;\r\n}\r\n// #endregion Internal types\r\n\r\n// #region Component\r\nconst AddressSearchModal: React.FC = (props: IAddressSearchModalProps): JSX.Element => {\r\n const {\r\n addresses,\r\n hasSearchZipCode,\r\n open,\r\n pageNumber,\r\n pageSize,\r\n rowsPerPageOptions,\r\n totalAddress,\r\n zipCode,\r\n\r\n // events\r\n onChangePage,\r\n onChangeRowsPerPage,\r\n onChangeTextField,\r\n onClear,\r\n onClickZipLink,\r\n onClose,\r\n onSearch,\r\n\r\n // resources\r\n resources\r\n } = props;\r\n\r\n const footerModal: JSX.Element = (\r\n \r\n \r\n {resources.btnSearch}\r\n \r\n \r\n {resources.btnClear}\r\n \r\n \r\n );\r\n\r\n let table: JSX.Element | undefined;\r\n\r\n if (addresses && addresses.length > 0) {\r\n const tableBody: JSX.Element[] = [];\r\n addresses.forEach((address, j) => {\r\n tableBody.push(\r\n \r\n \r\n onClickZipLink(address.zipCode, address.city, address.stateProvinceId, address.countryId, address.countyId)}\r\n >\r\n {address.zipCode}\r\n \r\n \r\n \r\n \r\n {address.city}\r\n \r\n \r\n \r\n \r\n {address.state}\r\n \r\n \r\n \r\n \r\n {address.county}\r\n \r\n \r\n \r\n \r\n {address.country}\r\n \r\n \r\n \r\n );\r\n });\r\n\r\n table = (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {resources.lblZipCode}\r\n \r\n \r\n {resources.lblCity}\r\n \r\n \r\n {resources.lblState}\r\n \r\n \r\n {resources.lblCounty}\r\n \r\n \r\n {resources.lblCountry}\r\n \r\n \r\n \r\n \r\n {tableBody}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n else if (hasSearchZipCode) {\r\n table = (\r\n \r\n {resources.lblNoResults}\r\n \r\n );\r\n }\r\n\r\n let paginationComponent: JSX.Element | undefined;\r\n if (addresses && addresses.length > 0) {\r\n paginationComponent = (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n let bodyModal: JSX.Element;\r\n bodyModal = (\r\n <>\r\n \r\n \r\n \r\n \r\n
\r\n \r\n {footerModal}\r\n \r\n
\r\n
\r\n
\r\n {table}\r\n
\r\n {paginationComponent}\r\n \r\n );\r\n\r\n return (\r\n \r\n {bodyModal}\r\n \r\n );\r\n};\r\n// #endregion Component\r\n\r\n// Export: Component\r\nexport default AddressSearchModal;","/* Copyright 2018 - 2024 Ellucian Company L.P. and its affiliates.\r\n * File: FieldsHandle.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Button from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Checkbox from '@hedtech/powercampus-design-system/react/core/Checkbox';\r\nimport DatePicker from '@hedtech/powercampus-design-system/react/core/DatePicker';\r\nimport Dropdown from '@hedtech/powercampus-design-system/react/core/Dropdown';\r\nimport ExpansionPanel from '@hedtech/powercampus-design-system/react/core/ExpansionPanel';\r\nimport FormControl, { FormControlLabel, FormGroup } from '@hedtech/powercampus-design-system/react/core/FormControl';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Icon from '@hedtech/powercampus-design-system/react/core/Icon';\r\nimport IconButton from '@hedtech/powercampus-design-system/react/core/IconButton';\r\nimport List from '@hedtech/powercampus-design-system/react/core/List';\r\nimport Paragraph, { TextColor, TextSize } from '@hedtech/powercampus-design-system/react/core/Paragraph';\r\nimport RadioGroup from '@hedtech/powercampus-design-system/react/core/RadioGroup';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\nimport TextField from '@hedtech/powercampus-design-system/react/core/TextField';\r\nimport TextLink from '@hedtech/powercampus-design-system/react/core/TextLink';\r\n\r\n// Internal components\r\nimport { IApplicationHandler } from '../../../Types/Resources/Admissions/IApplicationFormResources';\r\n\r\n// Helpers\r\nimport Tokens from '@hedtech/powercampus-design-system/react/core/styles/Tokens';\r\nimport { createStyles, withStyles, WithStyles } from '@hedtech/powercampus-design-system/react/core/styles/withStyles';\r\nimport { isWidthUp, withWidth, WithWidth } from '@hedtech/powercampus-design-system/react/core/withWidth';\r\n\r\n// Types\r\nimport { IDropDownOption } from '@hedtech/powercampus-design-system/types/IDropDownOption';\r\nimport { IApplicationErrors } from '../../../Types/Applications/IApplicationErrors';\r\nimport { IApplicationIpeds } from '../../../Types/Applications/IApplicationIpeds';\r\nimport { IFieldForm } from '../../../Types/Form/IFieldForm';\r\n// #endregion\r\n\r\n// #region Internal types\r\nexport interface IFieldsHandlerProps {\r\n dateTimeCulture: string;\r\n errors: IApplicationErrors[];\r\n expandedPanelId: boolean | string;\r\n fields: IFieldForm[];\r\n governmentIdFormat: string;\r\n groupIndex: number;\r\n isExpansionPanel: boolean;\r\n isHorizontalAligned: boolean;\r\n shortDatePattern: string;\r\n stepIndex: number;\r\n\r\n resources: IApplicationHandler;\r\n\r\n onClickButton: (event: React.MouseEvent) => void;\r\n onChangeCheckBox: (event: React.ChangeEvent) => void;\r\n onChangeDateTimeField: (date: string, id: string, isValid: boolean) => void;\r\n onDeleteItem: (event: any) => void;\r\n onChangeDropDown: (optionSelected: IDropDownOption, id: string) => void;\r\n onChangeExpansionPanel: (label: string) => void;\r\n onChangeListCheckbox: (event: any) => void;\r\n onChangeRadioGroup: (event: React.ChangeEvent, value: string) => void;\r\n onChangeTextField: (event: React.ChangeEvent) => void;\r\n}\r\n\r\nconst styles = createStyles({\r\n category: {\r\n marginBottom: Tokens.spacing30,\r\n marginLeft: Tokens.spacing50\r\n },\r\n federalCategory: {\r\n '& > span:nth-child(2)': {\r\n fontWeight: Tokens.fontWeightBold\r\n },\r\n marginBottom: Tokens.spacing30\r\n }\r\n});\r\n\r\ntype PropsWithStyles = IFieldsHandlerProps & WithStyles & WithWidth;\r\n// #endregion\r\n\r\n// #region Component\r\nconst FieldsHandler: React.FC = (props: PropsWithStyles): JSX.Element => {\r\n const {\r\n classes,\r\n dateTimeCulture,\r\n errors,\r\n expandedPanelId,\r\n fields,\r\n governmentIdFormat,\r\n groupIndex,\r\n isExpansionPanel,\r\n isHorizontalAligned,\r\n resources,\r\n shortDatePattern,\r\n stepIndex,\r\n width,\r\n\r\n onChangeCheckBox,\r\n onChangeDropDown,\r\n onChangeDateTimeField,\r\n onChangeExpansionPanel,\r\n onChangeListCheckbox,\r\n onChangeRadioGroup,\r\n onChangeTextField,\r\n onClickButton,\r\n onDeleteItem\r\n } = props;\r\n\r\n const elements: JSX.Element[] = [];\r\n\r\n // General Sections Arrays\r\n let ids: string[] = [];\r\n const sectionIndexes: number[] = [];\r\n let sectionElements: JSX.Element[] = [];\r\n const sectionContainers: JSX.Element[] = [];\r\n let sectionIndex: number;\r\n\r\n // Header Arrays\r\n let headerDeleteElement: JSX.Element[] = [];\r\n let headerTitleElements: string[] = [];\r\n const firstHeaderTitleElement: string[] = [];\r\n\r\n const getId = (idStringArray: string[], index: number): number => Number(idStringArray[index]);\r\n\r\n const setHeaderTitleElements = (field: IFieldForm): void => {\r\n if (field.isExpansionPanelHeader) {\r\n if (field.value) {\r\n if (headerTitleElements[0] === resources.lblNew) {\r\n headerTitleElements.splice(0, 1);\r\n }\r\n if (field.componentType && field.componentType === 'Dropdown') {\r\n let selectedOption: number = 0;\r\n if (field.data && field.data.options && field.data.options.length > 0) {\r\n selectedOption =\r\n field.data.options.findIndex(x => x.value === field.value);\r\n if (selectedOption > -1) {\r\n headerTitleElements.push(`${field.data.options[selectedOption].description} `);\r\n }\r\n }\r\n }\r\n else {\r\n headerTitleElements.push(`${field.value} `);\r\n }\r\n }\r\n if (headerTitleElements.length === 0) {\r\n headerTitleElements.push(resources.lblNew);\r\n }\r\n }\r\n };\r\n\r\n const fillElements = (fieldElement: JSX.Element, field: IFieldForm): void => {\r\n if (isExpansionPanel && field.componentType === 'DeleteIconButton') {\r\n headerDeleteElement.push(fieldElement);\r\n }\r\n else {\r\n sectionElements.push(fieldElement);\r\n }\r\n };\r\n\r\n const setMultipleFields = (field: IFieldForm, fieldElementWithGrid: JSX.Element, id: string) => {\r\n ids = field.data.id.split('|');\r\n sectionIndex = errors[getId(ids, 1)].groupErrors[getId(ids, 2)].sectionErrors.findIndex(\r\n section => section.sectionIndex === Number(getId(ids, 4))\r\n );\r\n\r\n // Verify if section exists\r\n if (sectionIndexes.includes(getId(ids, 4))) {\r\n setHeaderTitleElements(field);\r\n fillElements(fieldElementWithGrid, field);\r\n }\r\n // Create a new section\r\n else {\r\n sectionElements = [];\r\n headerDeleteElement = [];\r\n headerTitleElements = [];\r\n\r\n setHeaderTitleElements(field);\r\n fillElements(fieldElementWithGrid, field);\r\n sectionIndexes.push(getId(ids, 4));\r\n\r\n sectionContainers.push(\r\n isExpansionPanel ? (\r\n -1 ?\r\n errors[getId(ids, 1)].groupErrors[getId(ids, 2)].sectionErrors.length > 0 ?\r\n errors[getId(ids, 1)].groupErrors[getId(ids, 2)].sectionErrors[sectionIndex].isSectionError\r\n : false\r\n : false}\r\n background=\"gray\"\r\n expandIcon={}\r\n expanded={expandedPanelId === `panel|${stepIndex}|${groupIndex}|${getId(ids, 4)}`}\r\n header={(\r\n \r\n \r\n 0 && sectionIndex > -1 ?\r\n errors[getId(ids, 1)].groupErrors[getId(ids, 2)].sectionErrors[sectionIndex].isSectionError ?\r\n 'error' : undefined\r\n : undefined}\r\n >\r\n {headerTitleElements}\r\n \r\n \r\n \r\n {headerDeleteElement}\r\n \r\n \r\n )}\r\n key={`expansionPanel|${field.data.id}|${id}`}\r\n onChange={onChangeExpansionPanel(`panel|${stepIndex}|${groupIndex}|${getId(ids, 4)}`)}\r\n >\r\n \r\n {sectionElements}\r\n \r\n \r\n ) : (\r\n \r\n \r\n {sectionElements}\r\n \r\n \r\n )\r\n );\r\n }\r\n };\r\n\r\n if (errors) {\r\n if (errors[stepIndex].groupErrors[groupIndex].groupId === 'addressInformationGroup') {\r\n firstHeaderTitleElement.push(`${resources.lblPrimary} `);\r\n }\r\n }\r\n\r\n fields.forEach((field, j) => {\r\n let fieldElement: JSX.Element | undefined;\r\n\r\n let id: string;\r\n if (field.data.modified) {\r\n id = `${field.data.id}`;\r\n }\r\n else {\r\n id = `${field.data.id}|${stepIndex}|${groupIndex}|${j}`;\r\n }\r\n\r\n let fieldSize: false | 'auto' | true | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;\r\n switch (field.gridSize) {\r\n case 'XS':\r\n fieldSize = 2;\r\n break;\r\n case 'S':\r\n fieldSize = 3;\r\n break;\r\n case 'M':\r\n fieldSize = 4;\r\n break;\r\n case 'L':\r\n fieldSize = 6;\r\n break;\r\n case 'XL':\r\n fieldSize = 12;\r\n break;\r\n default:\r\n fieldSize = 12;\r\n }\r\n\r\n switch (field.componentType) {\r\n case 'Button':\r\n fieldSize = isHorizontalAligned ? 3 : fieldSize;\r\n fieldElement = (\r\n \r\n \r\n {field.data.label}\r\n \r\n \r\n );\r\n break;\r\n case 'TextField':\r\n if (id.substr(0, 'postalCodeId'.length) === 'postalCodeId' ||\r\n id.substr(0, 'educationEtsCodeId'.length) === 'educationEtsCodeId') {\r\n let buttonId: string = '';\r\n let isPostalCode: boolean = false;\r\n if (field.data.modified) {\r\n if (id.substr(0, 'postalCodeId'.length) === 'postalCodeId') {\r\n buttonId = id.replace('postalCodeId', 'postalCodeButtonId');\r\n }\r\n if (id.substr(0, 'educationEtsCodeId'.length) === 'educationEtsCodeId') {\r\n buttonId = id.replace('educationEtsCodeId', 'educationEtsCodeButtonId');\r\n }\r\n }\r\n else {\r\n if (id.substr(0, 'postalCodeId'.length) === 'postalCodeId') {\r\n buttonId = `postalCodeButtonId|${stepIndex}|${groupIndex}|${j + 1}`;\r\n isPostalCode = true;\r\n }\r\n if (id.substr(0, 'educationEtsCodeId'.length) === 'educationEtsCodeId') {\r\n buttonId = `educationEtsCodeButtonId|${stepIndex}|${groupIndex}|${j + 1}`;\r\n }\r\n }\r\n\r\n fieldElement = (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {resources.lblSearch}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n else {\r\n let format: string | undefined;\r\n if (id.substr(0, 'governmentId'.length) === 'governmentId' && governmentIdFormat) {\r\n format = governmentIdFormat;\r\n }\r\n\r\n fieldElement = (\r\n \r\n \r\n \r\n );\r\n }\r\n break;\r\n\r\n case 'Dropdown':\r\n const emptyOption: IDropDownOption = {\r\n description: String(resources.lblSelect),\r\n value: ''\r\n };\r\n let exist: boolean = false;\r\n if (field.default && field.data.options) {\r\n field.data.options.forEach(option => {\r\n if (option.value.toString() === field.default.toString()) {\r\n exist = true;\r\n }\r\n });\r\n }\r\n fieldElement = (\r\n \r\n \r\n \r\n );\r\n break;\r\n\r\n case 'Checkbox':\r\n let checked: boolean = false;\r\n if (field.value !== undefined) {\r\n checked = field.value;\r\n }\r\n fieldElement = (\r\n \r\n \r\n \r\n );\r\n break;\r\n\r\n case 'DatePicker':\r\n fieldElement = (\r\n \r\n \r\n \r\n );\r\n break;\r\n\r\n case 'DeleteIconButton':\r\n fieldSize = isHorizontalAligned ? 1 : fieldSize;\r\n const idDelete: string = field.data.id;\r\n fieldElement = (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n break;\r\n\r\n case 'CheckboxList':\r\n let messageRequired: JSX.Element | undefined;\r\n if (field.data.error && field.isRequired) {\r\n messageRequired = (\r\n \r\n {field.data.helperText}\r\n \r\n );\r\n }\r\n else {\r\n messageRequired = undefined;\r\n }\r\n const chkElements: JSX.Element[] = [];\r\n let isCheck: boolean;\r\n if (field.data.options) {\r\n field.data.options.forEach((option, i) => {\r\n isCheck = false;\r\n if (field.value) {\r\n const array: string[] = Object.values(field.value.split(','));\r\n if (field.value && array.length > 0) {\r\n const index: number = array.findIndex(x => x === option.value.toString());\r\n if (index > -1) {\r\n isCheck = true;\r\n }\r\n }\r\n }\r\n chkElements.push(\r\n \r\n )\r\n }\r\n label={option.description}\r\n key={`${field.data.id}|list|${i}`}\r\n />\r\n );\r\n });\r\n }\r\n fieldElement = (\r\n \r\n {messageRequired}\r\n {field.data.label ? (\r\n \r\n {field.isRequired ? `${field.data.label} *` : `${field.data.label}`}\r\n \r\n ) : undefined}\r\n \r\n \r\n {chkElements}\r\n \r\n \r\n \r\n );\r\n break;\r\n\r\n case 'Text':\r\n const errorColor: TextColor | undefined = field.data.error ? 'error' : undefined;\r\n let colorText: TextColor | undefined;\r\n if (!errorColor) {\r\n colorText = field.color ? field.color : undefined;\r\n }\r\n else {\r\n colorText = errorColor;\r\n }\r\n const size: TextSize | undefined = field.size;\r\n\r\n if (!field.isWithLink) {\r\n fieldElement = (\r\n \r\n \r\n {field.data.label}\r\n \r\n \r\n );\r\n }\r\n else {\r\n if (field.actionUrl && field.data.label) {\r\n const actions: string[] = field.actionUrl.split('|');\r\n fieldElement = (\r\n \r\n {\r\n if (action.substr(0, 'mailto:'.length) === 'mailto:' ||\r\n action.substr(0, 'tel:'.length) === 'tel:') {\r\n return ((_event: React.MouseEvent) => {\r\n window.location.href = `${action}`;\r\n });\r\n }\r\n else {\r\n return ((_event: React.MouseEvent) => {\r\n window.open(`${action}`, '_blank');\r\n });\r\n }\r\n })\r\n }\r\n />\r\n \r\n );\r\n }\r\n }\r\n break;\r\n\r\n case 'RadioGroup':\r\n const options: IDropDownOption[] = [];\r\n fieldElement = (\r\n \r\n \r\n {field.data.label}\r\n \r\n \r\n \r\n );\r\n break;\r\n\r\n case 'NestedCheckboxList':\r\n const array: IApplicationIpeds[] = [];\r\n if (field.value) {\r\n const ipedsArray = field.value.split(',');\r\n ipedsArray.forEach(iped => {\r\n const ipedItem = iped.split('$');\r\n if (ipedItem[0] !== '') {\r\n if (ipedItem.length > 1) {\r\n array.push({\r\n ipedsEthnicityId: ipedItem[1],\r\n ipedsFederalCategoryId: ipedItem[0]\r\n });\r\n }\r\n else {\r\n array.push({\r\n ipedsFederalCategoryId: ipedItem[0]\r\n });\r\n }\r\n }\r\n });\r\n }\r\n let errorMessage: JSX.Element | undefined;\r\n if (field.data.error) {\r\n errorMessage = (\r\n \r\n {field.data.helperText}\r\n \r\n );\r\n }\r\n else {\r\n errorMessage = undefined;\r\n }\r\n const elementsList: JSX.Element[] = [];\r\n if (field.data.complexOptions && field.data.complexOptions.length > 0) {\r\n field.data.complexOptions.forEach(complexItem => {\r\n const elements: JSX.Element[] = [];\r\n if (complexItem.options && complexItem.options.length > 0) {\r\n complexItem.options.forEach(item => {\r\n let childIsChecked: boolean = false;\r\n if (array.length > 0) {\r\n let index: number = -1;\r\n index =\r\n array.findIndex(x =>\r\n (x.ipedsEthnicityId ?\r\n x.ipedsEthnicityId.toString() : '') === item.value.toString() &&\r\n x.ipedsFederalCategoryId.toString() === complexItem.value.toString());\r\n if (index > -1) {\r\n childIsChecked = true;\r\n }\r\n }\r\n elements.push(\r\n \r\n )\r\n }\r\n label={item.description}\r\n />\r\n );\r\n });\r\n }\r\n let parentIsChecked: boolean = false;\r\n if (array.length > 0) {\r\n let index: number = -1;\r\n index =\r\n array.findIndex(x =>\r\n (x.ipedsFederalCategoryId ?\r\n x.ipedsFederalCategoryId.toString() : '') === complexItem.value.toString());\r\n if (index > -1) {\r\n parentIsChecked = true;\r\n }\r\n }\r\n elementsList.push(\r\n <>\r\n \r\n )\r\n }\r\n label={complexItem.description}\r\n />\r\n {elements}\r\n \r\n );\r\n });\r\n }\r\n fieldElement = (\r\n \r\n {field.data.label ? (\r\n \r\n {field.isRequired ? `${field.data.label} *` : `${field.data.label}`}\r\n \r\n ) : undefined}\r\n \r\n {errorMessage}\r\n \r\n \r\n {elementsList}\r\n \r\n \r\n \r\n \r\n );\r\n break;\r\n case 'Link':\r\n if (field.data.label) {\r\n fieldElement = (\r\n \r\n \r\n {field.data.label}\r\n \r\n \r\n );\r\n }\r\n break;\r\n case 'IconLinkEmail':\r\n if (field.data.label) {\r\n fieldElement = (\r\n \r\n { if (field.actionUrl) { window.location.href = field.actionUrl } }}\r\n >\r\n {field.data.label}\r\n \r\n \r\n );\r\n }\r\n break;\r\n case 'IconLinkPhone':\r\n if (field.data.label) {\r\n fieldElement = (\r\n \r\n { if (field.actionUrl) { window.location.href = field.actionUrl } }}\r\n >\r\n {field.data.label}\r\n \r\n \r\n );\r\n }\r\n break;\r\n case 'Divider':\r\n fieldElement = (\r\n \r\n
\r\n
\r\n );\r\n break;\r\n case 'Image':\r\n fieldElement = (\r\n \r\n \r\n \r\n );\r\n break;\r\n case 'HtmlElement':\r\n fieldElement = (\r\n \r\n \r\n
\r\n \r\n \r\n );\r\n break;\r\n }\r\n\r\n /* Determines the expansion panel header\r\n * for the first element of a group */\r\n if (field.isExpansionPanelHeader && field.value) {\r\n if (!field.data.modified) {\r\n if (field.componentType && field.componentType === 'Dropdown') {\r\n let selectedOption: number = 0;\r\n if (field.data && field.data.options && field.data.options.length > 0) {\r\n selectedOption =\r\n field.data.options.findIndex(x => x.value === field.value);\r\n if (selectedOption > -1) {\r\n firstHeaderTitleElement.push(`${field.data.options[selectedOption].description} `);\r\n }\r\n }\r\n }\r\n else {\r\n firstHeaderTitleElement.push(`${field.value} `);\r\n }\r\n }\r\n }\r\n\r\n /* Determines if the element is copied */\r\n if (fieldElement) {\r\n const fieldElementWithGrid = (\r\n isHorizontalAligned ? (\r\n fieldElement\r\n ) : (\r\n \r\n {fieldElement}\r\n \r\n )\r\n );\r\n if (field.data.modified) {\r\n setMultipleFields(field, fieldElementWithGrid, id);\r\n }\r\n else {\r\n elements.push(fieldElementWithGrid);\r\n }\r\n }\r\n });\r\n\r\n return (\r\n isExpansionPanel && sectionContainers.length > 0 ? (\r\n <>\r\n }\r\n header={(\r\n \r\n {firstHeaderTitleElement.length > 0 ? firstHeaderTitleElement : resources.lblNew}\r\n \r\n )}\r\n onChange={onChangeExpansionPanel(`panel|${stepIndex}|${groupIndex}`)}\r\n >\r\n \r\n {elements}\r\n \r\n \r\n {sectionContainers}\r\n \r\n ) : (\r\n <>\r\n \r\n {isHorizontalAligned && isWidthUp('sm', width) ? (elements) : (\r\n \r\n {elements}\r\n \r\n )}\r\n \r\n {sectionContainers}\r\n \r\n\r\n ));\r\n};\r\n// #endregion\r\n\r\n// Export: Component\r\nexport default withStyles(styles)(withWidth()(FieldsHandler));","/* Copyright 2019 Ellucian Company L.P. and its affiliates.\r\n* File: FieldsGroupHandler.tsx\r\n* Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\n\r\n// Internal components\r\nimport { IApplicationHandler } from '../../../Types/Resources/Admissions/IApplicationFormResources';\r\nimport FieldsHandler from './FieldsHandler';\r\n\r\n// Core components\r\nimport Button from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\n\r\n// Helpers\r\nimport Tokens from '@hedtech/powercampus-design-system/react/core/styles/Tokens';\r\nimport { createStyles, withStyles, WithStyles } from '@hedtech/powercampus-design-system/react/core/styles/withStyles';\r\n\r\n// Types\r\nimport { IDropDownOption } from '@hedtech/powercampus-design-system/types/IDropDownOption';\r\nimport { IApplicationErrors } from '../../../Types/Applications/IApplicationErrors';\r\nimport { IFieldsGroup } from '../../../Types/Form/IFieldsGroup';\r\n// #endregion\r\n\r\n// #region Internal types\r\nexport interface IFieldsGroupHandlerProps {\r\n dateTimeCulture: string;\r\n errors: IApplicationErrors[];\r\n expanded: boolean | string;\r\n fieldGroup: IFieldsGroup;\r\n fieldGroupIndex: number;\r\n firstDayOfWeek: number;\r\n governmentIdFormat: string;\r\n isExpansionPanel: boolean;\r\n isHorizontalAligned: boolean;\r\n shortDatePattern: string;\r\n stepIndex: number;\r\n\r\n resources: IApplicationHandler;\r\n\r\n onAddMore: (fieldGroup: IFieldsGroup, stepIndex: number, fieldGroupIndex: number) => void;\r\n onChangeCheckBox: (event: React.ChangeEvent) => void;\r\n onChangeDateTimeField: (date: string, id: string, isValid: boolean) => void;\r\n onChangeDropDown: (optionSelected: IDropDownOption, id: string) => void;\r\n onChangeExpansionPanel: (label: string) => void;\r\n onChangeListCheckbox: (event: any) => void;\r\n onChangeRadioGroup: (event: React.ChangeEvent, value: string) => void;\r\n onChangeTextField: (event: React.ChangeEvent) => void;\r\n onClickButton: (event: React.MouseEvent) => void;\r\n onDeleteItem: (event: any) => void;\r\n}\r\n\r\nconst styles = (() => createStyles({\r\n buttonTop: {\r\n marginTop: Tokens.spacing30\r\n },\r\n groupTitleBottom: {\r\n marginBottom: 0\r\n }\r\n}));\r\n\r\ntype PropsWithStyles = IFieldsGroupHandlerProps & WithStyles;\r\n\r\n// #endregion\r\n\r\n// #region Component\r\nconst FieldsGroupHandler: React.FC = (props: PropsWithStyles): JSX.Element => {\r\n const {\r\n classes,\r\n dateTimeCulture,\r\n errors,\r\n expanded,\r\n fieldGroup,\r\n fieldGroupIndex,\r\n firstDayOfWeek,\r\n governmentIdFormat,\r\n isExpansionPanel,\r\n isHorizontalAligned,\r\n shortDatePattern,\r\n stepIndex,\r\n resources,\r\n\r\n onAddMore,\r\n onChangeCheckBox,\r\n onChangeDropDown,\r\n onChangeDateTimeField,\r\n onChangeExpansionPanel,\r\n onChangeListCheckbox,\r\n onChangeRadioGroup,\r\n onChangeTextField,\r\n onClickButton,\r\n onDeleteItem\r\n } = props;\r\n\r\n const isDisabled: boolean = fieldGroup.isDisableButton ? fieldGroup.isDisableButton : false;\r\n\r\n const content: JSX.Element[] = [];\r\n /* Field Id will be created in this way:\r\n * fieldId_sectionIndex_fieldIndex_positionInCollection\r\n * */\r\n const addMore = () => onAddMore(fieldGroup, stepIndex, fieldGroupIndex);\r\n if (fieldGroup.isMultiple) {\r\n content.push(\r\n \r\n \r\n \r\n );\r\n }\r\n let labelElement: JSX.Element | undefined;\r\n if (fieldGroup.label) {\r\n labelElement = (\r\n \r\n {fieldGroup.label}\r\n \r\n );\r\n }\r\n let instructionsElement: JSX.Element | undefined;\r\n if (fieldGroup.instructions) {\r\n instructionsElement = (\r\n \r\n {fieldGroup.instructions}\r\n \r\n );\r\n }\r\n\r\n content.push(\r\n \r\n {(fieldGroup.label !== '' || fieldGroup.instructions) &&\r\n fieldGroup.id !== 'confirmationGroup' ?\r\n (\r\n \r\n \r\n {labelElement}\r\n {instructionsElement}\r\n \r\n \r\n ) : undefined}\r\n \r\n \r\n );\r\n\r\n if (fieldGroup.isMultiple && Number(fieldGroup.maximumAllowed) !== 1) {\r\n content.push(\r\n \r\n \r\n \r\n {resources.lblAddNew}\r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n return (\r\n <>\r\n {content}\r\n \r\n );\r\n};\r\n// #endregion\r\n\r\n// Export: Component\r\nexport default withStyles(styles)(FieldsGroupHandler);","/* Copyright 2019 Ellucian Company L.P. and its affiliates.\r\n * File: ApplicationCompletedModal.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Button, { ButtonGroup } from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Divider from '@hedtech/powercampus-design-system/react/core/Divider';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Modal from '@hedtech/powercampus-design-system/react/core/Modal';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\n\r\n// Internal components\r\nimport { IApplicationHandler } from '../../../Types/Resources/Admissions/IApplicationFormResources';\r\nimport FieldsGroupHandler from './FieldsGroupHandler';\r\n\r\n// Helpers\r\nimport Tokens from '@hedtech/powercampus-design-system/react/core/styles/Tokens';\r\nimport { createStyles, withStyles, WithStyles } from '@hedtech/powercampus-design-system/react/core/styles/withStyles';\r\n\r\n// Types\r\nimport { IDropDownOption } from '@hedtech/powercampus-design-system/types/IDropDownOption';\r\nimport { IFieldsGroup } from '../../../Types/Form/IFieldsGroup';\r\nimport { IPaymentTransaction } from '../../../Types/Payment/IPaymentTransaction';\r\n// #endregion\r\n\r\n// #region Internal types\r\nexport interface IApplicationCompletedModalProps {\r\n dateTimeCulture: string;\r\n failedPayment: boolean;\r\n fieldGroup?: IFieldsGroup;\r\n paymentTransaction?: IPaymentTransaction;\r\n shortDatePattern: string;\r\n successPayment: boolean;\r\n\r\n onAddMore: (fieldGroup: IFieldsGroup, stepIndex: number, fieldGroupIndex: number) => void;\r\n onChangeCheckBox: (event: React.ChangeEvent) => void;\r\n onChangeDateTimeField: (date: string, id: string, isValid: boolean) => void;\r\n onChangeDropDown: (optionSelected: IDropDownOption, id: string) => void;\r\n onChangeListCheckbox: (event: any) => void;\r\n onChangeRadioGroup: (event: React.ChangeEvent, value: string) => void;\r\n onChangeTextField: (event: React.ChangeEvent) => void;\r\n onClickButton: (event: React.MouseEvent) => void;\r\n onCloseFailedPayment: (event: React.MouseEvent) => void;\r\n\r\n resourcesApplicationHandler: IApplicationHandler;\r\n}\r\n\r\nconst styles = createStyles({\r\n containerDetails: {\r\n backgroundColor: Tokens.colorBrandNeutral200,\r\n padding: Tokens.spacing50\r\n }\r\n});\r\n\r\ntype PropsWithStyles = IApplicationCompletedModalProps & WithStyles;\r\n// #endregion\r\n\r\n// #region Component\r\nconst ApplicationCompletedModal: React.FC = (props: PropsWithStyles): JSX.Element => {\r\n const {\r\n classes,\r\n dateTimeCulture,\r\n failedPayment,\r\n fieldGroup,\r\n paymentTransaction,\r\n shortDatePattern,\r\n successPayment,\r\n\r\n onAddMore,\r\n onChangeCheckBox,\r\n onChangeDateTimeField,\r\n onChangeDropDown,\r\n onChangeListCheckbox,\r\n onChangeRadioGroup,\r\n onChangeTextField,\r\n onClickButton,\r\n onCloseFailedPayment,\r\n\r\n resourcesApplicationHandler\r\n } = props;\r\n\r\n let footerModal: JSX.Element;\r\n footerModal = (\r\n \r\n \r\n {resourcesApplicationHandler.btnOk}\r\n \r\n \r\n );\r\n\r\n const bodyModal: JSX.Element[] = [];\r\n if (fieldGroup) {\r\n bodyModal.push(\r\n \r\n {failedPayment ?\r\n (\r\n \r\n \r\n {resourcesApplicationHandler.lblContentTextApplication}\r\n \r\n \r\n ) :\r\n successPayment && paymentTransaction ?\r\n (\r\n \r\n \r\n
\r\n \r\n {resourcesApplicationHandler.lblTitleDetails}\r\n \r\n \r\n \r\n \r\n \r\n {resourcesApplicationHandler.lblAmount}\r\n \r\n \r\n \r\n \r\n {paymentTransaction.amount}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {resourcesApplicationHandler.lblDescription}\r\n \r\n \r\n \r\n \r\n {paymentTransaction.description}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {resourcesApplicationHandler.lblAuthorizationCode}\r\n \r\n \r\n \r\n \r\n {paymentTransaction.authorizationNumber}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n ) :\r\n undefined\r\n }\r\n {!failedPayment ?\r\n (\r\n \r\n \r\n \r\n ) : undefined}\r\n
\r\n );\r\n }\r\n\r\n return (\r\n \r\n {bodyModal}\r\n \r\n );\r\n};\r\n// #endregion\r\n\r\n// Export: Component\r\nexport default withStyles(styles)(ApplicationCompletedModal);","/* Copyright 2019 - 2023 Ellucian Company L.P. and its affiliates.\r\n* File: ApplicationHandler.tsx\r\n* Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React, { RefObject } from 'react';\r\nimport Media from 'react-media';\r\n\r\n// Core components\r\nimport Button, { ButtonGroup } from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Card from '@hedtech/powercampus-design-system/react/core/Card';\r\nimport Divider from '@hedtech/powercampus-design-system/react/core/Divider';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Icon from '@hedtech/powercampus-design-system/react/core/Icon';\r\nimport MessageStyled from '@hedtech/powercampus-design-system/react/core/MessageStyled';\r\nimport ReCAPTCHA from '@hedtech/powercampus-design-system/react/core/ReCaptcha';\r\nimport StepProgress, {\r\n MobileStepper,\r\n MobileStepperLabel,\r\n MobileStepperStep,\r\n MobileStepperTitle,\r\n Step,\r\n StepButton,\r\n StepContent,\r\n StepLabel\r\n} from '@hedtech/powercampus-design-system/react/core/StepProgress';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\n\r\n// Internal components\r\nimport ApplicationCompletedModal from './ApplicationCompletedModal';\r\nimport FieldsGroupHandler from './FieldsGroupHandler';\r\n\r\n// Helpers\r\nimport Format from '@hedtech/powercampus-design-system/helpers/Format';\r\nimport Tokens from '@hedtech/powercampus-design-system/react/core/styles/Tokens';\r\nimport { createStyles, Theme, withStyles, WithStyles } from '@hedtech/powercampus-design-system/react/core/styles/withStyles';\r\n\r\n// Types\r\nimport { IDropDownOption } from '@hedtech/powercampus-design-system/types/IDropDownOption';\r\nimport { IApplicationContent } from '../../../Types/Applications/IApplicationContent';\r\nimport { IApplicationErrors } from '../../../Types/Applications/IApplicationErrors';\r\nimport { IApplicationForm } from '../../../Types/Form/IApplicationForm';\r\nimport { IFieldsGroup } from '../../../Types/Form/IFieldsGroup';\r\nimport { IPaymentTransaction } from '../../../Types/Payment/IPaymentTransaction';\r\nimport { IApplicationHandler } from '../../../Types/Resources/Admissions/IApplicationFormResources';\r\n// #endregion\r\n\r\n// #region Internal types\r\nexport interface IApplicationHandlerProps {\r\n activeStep: number;\r\n components?: IApplicationForm;\r\n dateTimeCulture: string;\r\n errors: IApplicationErrors[];\r\n expanded: boolean | string;\r\n failedPayment: boolean;\r\n firstDayOfWeek: number;\r\n governmentIdFormat: string;\r\n paymentTransaction: IPaymentTransaction;\r\n saveMessage?: string;\r\n section?: JSON;\r\n shortDatePattern: string;\r\n showSaveButton: boolean;\r\n successPayment: boolean;\r\n\r\n resources: IApplicationHandler;\r\n onAddMore: (fieldGroup: IFieldsGroup) => void;\r\n onBackStep: () => void;\r\n onClickSave?: () => void;\r\n onClickStep: (event: React.MouseEvent) => void;\r\n onChangeCheckBox: (event: React.ChangeEvent) => void;\r\n onChangeDateTimeField: (date: string, id: string, isValid: boolean) => void;\r\n onChangeDropDown: (optionSelected: IDropDownOption, id: string) => void;\r\n onChangeExpansionPanel: (label: string) => void;\r\n onChangeListCheckbox: (event: any) => void;\r\n onChangeRadioGroup: (event: React.ChangeEvent, value: string) => void;\r\n onChangeTextField: (event: React.ChangeEvent) => void;\r\n onClickButton: (event: React.MouseEvent) => void;\r\n onCloseFailedPayment: (event: React.MouseEvent) => void;\r\n onDeleteItem: (event: any) => void;\r\n onNextStep: () => void;\r\n onSubmit: () => void;\r\n\r\n // #region ReCaptcha\r\n isReCaptchaSubmitEnabled: boolean;\r\n reCaptchaError: boolean;\r\n reCaptchaRef: RefObject;\r\n reCaptchaSiteKey: string;\r\n uiCulture: string;\r\n onRecaptchaChange: (token: any) => void;\r\n onReCaptchaError: () => void;\r\n // #endregion ReCaptcha\r\n}\r\n\r\nconst styles = (theme: Theme) => createStyles({\r\n backButtonMovil: {\r\n marginLeft: Tokens.spacing30\r\n },\r\n boxStep: {\r\n '& > span > span > span': {\r\n textAlign: 'left'\r\n },\r\n '&:focus': {\r\n boxShadow: 'none'\r\n }\r\n },\r\n buttonContainer: {\r\n marginTop: Tokens.spacing50\r\n },\r\n buttonsContainerMovil: {\r\n marginRight: Tokens.spacing50\r\n },\r\n buttonStep: {\r\n marginRight: Tokens.spacing40\r\n },\r\n cardRoot: {\r\n [theme.breakpoints.up('sm')]: {\r\n marginTop: Tokens.spacing80\r\n }\r\n },\r\n fieldContainer: {\r\n marginTop: Tokens.spacing30\r\n },\r\n footerPadding: {\r\n padding: `${Tokens.spacing50} ${Tokens.spacing50} 0 ${Tokens.spacing50}`,\r\n textAlign: 'center'\r\n },\r\n inline: {\r\n display: 'inline'\r\n },\r\n paddingLeft: {\r\n paddingLeft: Tokens.spacing80\r\n },\r\n marginLeft: {\r\n display: 'inline',\r\n marginLeft: Tokens.sizingSmall\r\n },\r\n mobileStepperContent: {\r\n minHeight: '65vh',\r\n padding: `${Tokens.spacing40} ${Tokens.spacing40} 0 ${Tokens.spacing40}`\r\n },\r\n reCaptchaErrorText: {\r\n paddingBottom: Tokens.spacing30\r\n },\r\n saveButtonMargin: {\r\n marginLeft: Tokens.sizingSmall,\r\n marginRight: Tokens.sizingSmall\r\n },\r\n saveFooter: {\r\n textAlign: 'center'\r\n },\r\n stepperDesktop: {\r\n padding: `${Tokens.spacing50} ${Tokens.spacing50} 0 ${Tokens.spacing50}`\r\n }\r\n});\r\n\r\ntype PropsWithStyles = IApplicationHandlerProps & WithStyles;\r\n// #endregion\r\n\r\n// #region Component\r\n\r\nconst ApplicationHandler: React.FC = (props: PropsWithStyles): JSX.Element => {\r\n const {\r\n activeStep,\r\n classes,\r\n components,\r\n dateTimeCulture,\r\n errors,\r\n expanded,\r\n failedPayment,\r\n firstDayOfWeek,\r\n governmentIdFormat,\r\n paymentTransaction,\r\n saveMessage,\r\n shortDatePattern,\r\n showSaveButton,\r\n successPayment,\r\n\r\n onAddMore,\r\n onBackStep,\r\n onClickSave,\r\n onClickStep,\r\n onChangeCheckBox,\r\n onChangeDateTimeField,\r\n onChangeDropDown,\r\n onChangeExpansionPanel,\r\n onChangeListCheckbox,\r\n onChangeRadioGroup,\r\n onChangeTextField,\r\n onClickButton,\r\n onCloseFailedPayment,\r\n onDeleteItem,\r\n onNextStep,\r\n onSubmit,\r\n\r\n resources,\r\n\r\n // #region ReCaptcha\r\n isReCaptchaSubmitEnabled,\r\n reCaptchaError,\r\n reCaptchaRef,\r\n reCaptchaSiteKey,\r\n uiCulture,\r\n onRecaptchaChange,\r\n onReCaptchaError\r\n // #endregion ReCaptcha\r\n } = props;\r\n\r\n const noContent: JSX.Element = (\r\n \r\n );\r\n\r\n const reCaptchaElement: JSX.Element = (\r\n <>\r\n \r\n {reCaptchaError && (\r\n \r\n \r\n {resources.lblReCaptchaRequired}\r\n \r\n \r\n )}\r\n \r\n );\r\n\r\n let content: IApplicationContent[] = [];\r\n if (components && components.steps && components.steps.length > 0) {\r\n content = Array(components.steps.length);\r\n components.steps.forEach((step, i) => {\r\n const fieldsGroupsElements: JSX.Element[] = [];\r\n if (step.fieldsGroups && step.fieldsGroups.length > 0) {\r\n step.fieldsGroups.forEach((fieldGroup, j) => {\r\n fieldsGroupsElements.push(\r\n \r\n );\r\n });\r\n }\r\n\r\n content[i] = {\r\n content: (\r\n \r\n \r\n {fieldsGroupsElements}\r\n \r\n ),\r\n instructions: step.instructions,\r\n title: step.title\r\n };\r\n });\r\n }\r\n\r\n const fieldsGroupsModal: JSX.Element[] = [];\r\n const footer: JSX.Element[] = [];\r\n if (components && components.fieldsGroups) {\r\n if (components.fieldsGroups.length > 0) {\r\n // Confirmation Dialog\r\n if (components.isCompletedApplication) {\r\n let confirmationGroup: IFieldsGroup | undefined;\r\n const confirmationIndex: number =\r\n components.fieldsGroups.findIndex(x => x.id === 'confirmationGroup');\r\n if (confirmationIndex > -1) {\r\n confirmationGroup = components.fieldsGroups[confirmationIndex];\r\n }\r\n\r\n fieldsGroupsModal.push(\r\n \r\n );\r\n }\r\n // Footer\r\n let footerGroup: IFieldsGroup | undefined;\r\n const footerGroupIndex: number =\r\n components.fieldsGroups.findIndex(x => x.id === 'footerGroup');\r\n if (footerGroupIndex > -1) {\r\n footerGroup = components.fieldsGroups[footerGroupIndex];\r\n }\r\n if (footerGroup) {\r\n footer.push(\r\n \r\n );\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n \r\n
\r\n \r\n {content.length > 0 ? (\r\n \r\n {(matches: boolean): JSX.Element => matches ? (\r\n \r\n {resources.lblNext}\r\n \r\n )\r\n }\r\n backButton={\r\n (\r\n \r\n {resources.lblBack}\r\n \r\n )\r\n }\r\n >\r\n
\r\n \r\n <>\r\n {components ? (\r\n <>\r\n {components.name || ''}\r\n {components.enableOnlinePayment\r\n && components.feeAmount ?\r\n (\r\n \r\n {Format.toString(components.isFlatFee\r\n ? resources.formatHasFee\r\n : resources.formatHasFees,\r\n [components.feeAmount])}\r\n \r\n )\r\n : undefined}\r\n \r\n ) : undefined}\r\n \r\n \r\n\r\n {activeStep !== content.length ? (\r\n <>\r\n \r\n \r\n {content[activeStep].title}\r\n \r\n \r\n {content[activeStep].content}\r\n \r\n ) : (\r\n <>\r\n \r\n {content.map((step, i) => (\r\n \r\n \r\n \r\n {errors[i].isStepError ? (\r\n \r\n {step.title}\r\n \r\n ) : step.title}\r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n {isReCaptchaSubmitEnabled && Boolean(reCaptchaSiteKey) && (\r\n \r\n {reCaptchaElement}\r\n \r\n )}\r\n \r\n \r\n {resources.lblSubmit}\r\n \r\n \r\n \r\n \r\n )\r\n }\r\n
\r\n \r\n ) : (\r\n <>\r\n {components ? (\r\n \r\n \r\n \r\n {components.name || ''}\r\n \r\n {components.enableOnlinePayment\r\n && components.feeAmount ?\r\n (\r\n \r\n {Format.toString(components.isFlatFee\r\n ? resources.formatHasFee\r\n : resources.formatHasFees, [components.feeAmount])}\r\n \r\n )\r\n : undefined}\r\n \r\n \r\n \r\n ) : undefined}\r\n \r\n {content.map((step, i) => (\r\n \r\n \r\n \r\n {errors[i].isStepError ? (\r\n \r\n {step.title}\r\n \r\n ) : step.title}\r\n \r\n \r\n \r\n {step.content}\r\n {activeStep !== content.length - 1 && (\r\n \r\n \r\n \r\n \r\n {resources.lblBack}\r\n \r\n \r\n {resources.lblNext}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n ))}\r\n \r\n {activeStep === content.length - 1 && (\r\n \r\n {isReCaptchaSubmitEnabled && Boolean(reCaptchaSiteKey) && (\r\n \r\n {reCaptchaElement}\r\n \r\n )}\r\n \r\n \r\n \r\n {resources.lblBack}\r\n \r\n \r\n {resources.lblSubmit}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n )\r\n }\r\n
\r\n ) : noContent}\r\n {showSaveButton && onClickSave ?\r\n (\r\n
\r\n
\r\n \r\n \r\n {saveMessage}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {resources.lblSave}\r\n
\r\n \r\n
\r\n
\r\n )\r\n : undefined\r\n }\r\n
\r\n {footer}\r\n
\r\n {fieldsGroupsModal}\r\n
\r\n \r\n \r\n );\r\n};\r\n// #endregion\r\n\r\n// Export: Component\r\nexport default withStyles(styles)(ApplicationHandler);","/* Copyright 2019 - 2024 Ellucian Company L.P. and its affiliates.\r\n * File: ETSSearchModal.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Button, { ButtonGroup } from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Dropdown from '@hedtech/powercampus-design-system/react/core/Dropdown';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Modal from '@hedtech/powercampus-design-system/react/core/Modal';\r\nimport Pagination from '@hedtech/powercampus-design-system/react/core/Pagination';\r\nimport Table, { TableBody, TableCell, TableHead, TableRow } from '@hedtech/powercampus-design-system/react/core/Table';\r\nimport TextField from '@hedtech/powercampus-design-system/react/core/TextField';\r\nimport TextLink from '@hedtech/powercampus-design-system/react/core/TextLink';\r\n\r\n// Types\r\nimport { IDropDownOption } from '@hedtech/powercampus-design-system/types/IDropDownOption';\r\nimport { IInstitution } from '../../../Types/Applications/IInstitution';\r\nimport { IETSSearchModal } from '../../../Types/Resources/Admissions/IApplicationFormResources';\r\n\r\n// #endregion\r\n\r\n// #region Internal types\r\nexport interface IETSSearchModalProps {\r\n city?: string;\r\n countries: IDropDownOption[];\r\n country?: number;\r\n etsCode?: string;\r\n institutionName?: string;\r\n institutions?: IInstitution[];\r\n open: boolean;\r\n pageNumber: number;\r\n pageSize: number;\r\n rowsPerPageOptions: number[];\r\n state?: number;\r\n states: IDropDownOption[];\r\n totalInstitutions: number;\r\n\r\n // events\r\n onChangeDropDownETSSearch?: (optionSelected: IDropDownOption, id: string) => void;\r\n onChangePage: (event: any, page: number) => void;\r\n onChangeRowsPerPage: (event: any) => void;\r\n onChangeTextFieldETSSearch?: (event: any) => void;\r\n onClear: () => void;\r\n onClickETSLink: (institutionName?: string, etsCode?: string, ficeCode?: string,\r\n city?: string, stateProvinceId?: number, countryId?: number) => void;\r\n onClose: () => void;\r\n onSearch: () => void;\r\n\r\n // resources\r\n resources: IETSSearchModal;\r\n}\r\n// #endregion\r\n\r\n// #region Component\r\nconst ETSSearchModal: React.FC = (props: IETSSearchModalProps): JSX.Element => {\r\n const {\r\n city,\r\n countries,\r\n country,\r\n etsCode,\r\n institutionName,\r\n institutions,\r\n open,\r\n pageNumber,\r\n pageSize,\r\n rowsPerPageOptions,\r\n state,\r\n states,\r\n totalInstitutions,\r\n\r\n // events\r\n onChangeDropDownETSSearch,\r\n onChangePage,\r\n onChangeRowsPerPage,\r\n onChangeTextFieldETSSearch,\r\n onClear,\r\n onClickETSLink,\r\n onClose,\r\n onSearch,\r\n\r\n // resources\r\n resources\r\n } = props;\r\n\r\n const emptyOptionState: IDropDownOption = {\r\n description: resources.lblEmptyOptionState,\r\n value: ''\r\n };\r\n\r\n const emptyOptionCountry: IDropDownOption = {\r\n description: resources.lblEmptyOptionCountry,\r\n value: ''\r\n };\r\n\r\n const footerModal: JSX.Element = (\r\n \r\n \r\n {resources.btnSearch}\r\n \r\n \r\n {resources.btnClear}\r\n \r\n \r\n );\r\n\r\n let tableInstitutions: JSX.Element | undefined;\r\n if (institutions && institutions.length > 0) {\r\n tableInstitutions = (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {resources.lblInstitutionName}\r\n \r\n \r\n {resources.lblETSCode}\r\n \r\n \r\n {resources.lblFICECode}\r\n \r\n \r\n {resources.lblCity}\r\n \r\n \r\n {resources.lblState}\r\n \r\n \r\n {resources.lblCountry}\r\n \r\n \r\n \r\n \r\n {\r\n institutions.map(\r\n (row, i) => (\r\n \r\n \r\n onClickETSLink(row.name, row.etsCode, row.ficeCode, row.city,\r\n row.stateProvinceId, row.countryId)}\r\n >\r\n \r\n {row.name}\r\n \r\n \r\n \r\n \r\n \r\n {row.etsCode}\r\n \r\n \r\n \r\n \r\n {row.ficeCode}\r\n \r\n \r\n \r\n \r\n {row.city}\r\n \r\n \r\n \r\n \r\n {row.stateDesc}\r\n \r\n \r\n \r\n \r\n {row.countryDesc}\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 let paginationComponent: JSX.Element | undefined;\r\n if (institutions && institutions.length > 0) {\r\n paginationComponent = (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n const bodyModal: JSX.Element = (\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 \r\n \r\n \r\n \r\n
\r\n \r\n {footerModal}\r\n \r\n
\r\n
\r\n {tableInstitutions}\r\n {paginationComponent}\r\n \r\n );\r\n\r\n return (\r\n \r\n {bodyModal}\r\n \r\n );\r\n};\r\n// #endregion\r\n\r\n// Export: Component\r\nexport default ETSSearchModal;","/* Copyright 2019 - 2023 Ellucian Company L.P. and its affiliates.\r\n* File: InquiryForm.ts */\r\n\r\n// Types\r\nimport { ILogData } from '@hedtech/powercampus-design-system/types/ILogData';\r\nimport { IInquiry } from '../../Types/Inquiries/IInquiry';\r\n\r\n// Helpers\r\nimport Request from '@hedtech/powercampus-design-system/helpers/Request';\r\n\r\n// Functions for requests\r\nconst InquiryFormRequests = {\r\n // #region Addresses\r\n getAddresses(startIndex: number, length: number, zipCode?: string, resolver?: (json: string) => void,\r\n resolveError?: (logData: ILogData) => void): void {\r\n Request.post(this.getAddresses.name, '/Address',\r\n {\r\n length,\r\n startIndex,\r\n zipCode\r\n },\r\n resolver, resolveError);\r\n },\r\n // #endregion Addresses\r\n\r\n // #region ApplicationHandler\r\n getComponents(id: number, resolver: (json: string) => void, resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.getComponents.name, '/Forms/Details',\r\n {\r\n id: id,\r\n type: 1\r\n },\r\n resolver, resolveError);\r\n },\r\n // #endregion\r\n\r\n // #region TestScores\r\n getChildOptions(url: string, id: number, step: string, group: string, targetId: string, isApplicationForm: boolean,\r\n resolver: (json: string) => void, resolveError: (logData: ILogData) => void,\r\n formId?: number): void {\r\n if (!formId) {\r\n Request.post(this.getChildOptions.name, `/${url}`, {\r\n group,\r\n id,\r\n step,\r\n targetId\r\n }, resolver, resolveError);\r\n }\r\n else {\r\n Request.post(this.getChildOptions.name, `/${url}`, {\r\n formId,\r\n group,\r\n id,\r\n step,\r\n targetId,\r\n isApplicationForm\r\n }, resolver, resolveError);\r\n }\r\n },\r\n getValidateScoreType(\r\n applicationId: number,\r\n test: any,\r\n group: string,\r\n componentId: string,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.getValidateScoreType.name,\r\n '/TestScores/ScoreType',\r\n { formId: applicationId, testId: test, group, componentId },\r\n resolver,\r\n resolveError);\r\n },\r\n // #endregion\r\n\r\n // #region Institutions\r\n getCountries(resolver: (json: string) => void, resolveError: (logData: ILogData) => void): void {\r\n Request.get(this.getCountries.name, '/Institutions/Countries', resolver, resolveError);\r\n },\r\n getStates(resolver: (json: string) => void, resolveError: (logData: ILogData) => void): void {\r\n Request.get(this.getCountries.name, '/Institutions/States', resolver, resolveError);\r\n },\r\n getInstitutions(startIndex: number, length: number, institutionName?: string, etsCode?: string,\r\n city?: string, stateId?: number, countryId?: number, resolver?: (json: string) => void,\r\n resolveError?: (logData: ILogData) => void): void {\r\n Request.post(this.getInstitutions.name, '/Institutions',\r\n {\r\n length,\r\n startIndex,\r\n institution: {\r\n city,\r\n countryId,\r\n etsCode,\r\n name: institutionName,\r\n stateProvinceId: stateId\r\n }\r\n },\r\n resolver, resolveError);\r\n },\r\n // #endregion\r\n\r\n // #region Settings\r\n getReCaptchaSettings(resolver: (json: string) => void): void {\r\n Request.post(this.getReCaptchaSettings.name, '/Inquiries/RecaptchaSettings', null, resolver);\r\n },\r\n // #endregion\r\n\r\n // #region InquiryForm\r\n postSubmit(inquiry: IInquiry, resolver: (json: string) => void, resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postSubmit.name, '/Inquiries/Create', inquiry, resolver, resolveError);\r\n }\r\n // #endregion\r\n};\r\n\r\n// Export object with the requests\r\nexport default InquiryFormRequests;","/* Copyright 2019 - 2024 Ellucian Company L.P. and its affiliates.\r\n * File: InquiryFormView.tsx\r\n * Type: Container component */\r\n\r\n// #region Imports\r\nimport moment from 'moment';\r\nimport React, { RefObject } from 'react';\r\nimport ReactDOM from 'react-dom';\r\n\r\n// Core components\r\nimport Layout, { withLayout } from '@hedtech/powercampus-design-system/react/components/Layout';\r\n\r\n// Internal Components\r\nimport AddressSearchModal from '../ApplicationForm/AddressSearchModal';\r\nimport ApplicationHandler from '../ApplicationForm/ApplicationHandler';\r\nimport ETSSearchModal from '../ApplicationForm/ETSSearchModal';\r\n\r\n// Types\r\nimport { ICultures } from '@hedtech/powercampus-design-system/types/ICultures';\r\nimport { IDropDownOption } from '@hedtech/powercampus-design-system/types/IDropDownOption';\r\nimport { IJsonResult } from '@hedtech/powercampus-design-system/types/IJsonResult';\r\nimport { ILogData } from '@hedtech/powercampus-design-system/types/ILogData';\r\nimport { IAddress } from '../../../Types/Account/IAddress';\r\nimport { IApplicationActivity } from '../../../Types/Applications/IApplicationActivity';\r\nimport { IApplicationAddress } from '../../../Types/Applications/IApplicationAddress';\r\nimport { IApplicationEducation } from '../../../Types/Applications/IApplicationEducation';\r\nimport { IApplicationErrors } from '../../../Types/Applications/IApplicationErrors';\r\nimport { IGroupErrors } from '../../../Types/Applications/IApplicationErrors';\r\nimport { IApplicationIpeds } from '../../../Types/Applications/IApplicationIpeds';\r\nimport { IApplicationPhoneList } from '../../../Types/Applications/IApplicationPhoneList';\r\nimport { IApplicationProgram } from '../../../Types/Applications/IApplicationProgram';\r\nimport { IApplicationUserDefined } from '../../../Types/Applications/IApplicationUserDefined';\r\nimport { IInstitution } from '../../../Types/Applications/IInstitution';\r\nimport { IApplicationForm } from '../../../Types/Form/IApplicationForm';\r\nimport { IDataForm } from '../../../Types/Form/IDataForm';\r\nimport { IFieldForm } from '../../../Types/Form/IFieldForm';\r\nimport { IFieldsGroup } from '../../../Types/Form/IFieldsGroup';\r\nimport { IInquiry } from '../../../Types/Inquiries/IInquiry';\r\nimport { IInquiryFormResources } from '../../../Types/Resources/Admissions/IInquiryFormResources';\r\n\r\n// Helpers\r\nimport Format from '@hedtech/powercampus-design-system/helpers/Format';\r\nimport LogData from '@hedtech/powercampus-design-system/helpers/LogData';\r\nimport Resolver from '@hedtech/powercampus-design-system/helpers/Resolver';\r\n\r\n// Constants\r\nimport Constants from '@hedtech/powercampus-design-system/helpers/Constants';\r\n\r\n// Requests\r\nimport RequestsInquiry from '../../../Requests/Admissions/InquiryForm';\r\n\r\n// State Management\r\nimport LayoutActions from '@hedtech/powercampus-design-system/flux/actions/LayoutActions';\r\nimport LayoutStore from '@hedtech/powercampus-design-system/flux/stores/LayoutStore';\r\n// #endregion Imports\r\n\r\n// #region Types\r\n\r\ninterface IInquiryFormState {\r\n // Address\r\n addressessCount: number;\r\n\r\n // Address Search Modal\r\n addresses?: IAddress[];\r\n hasSearchZipCode: boolean;\r\n openAddressSearchModal: boolean;\r\n selectedZipCode?: string;\r\n\r\n // Inquiry\r\n activeStep: number;\r\n components?: IApplicationForm;\r\n componentError: boolean;\r\n cultures: ICultures;\r\n dateTimeCulture: string;\r\n errors: IApplicationErrors[];\r\n expanded: boolean | string;\r\n expansionPanelHeaders: string[];\r\n firstDayOfWeek: number;\r\n inquiry: IInquiry;\r\n resources?: IInquiryFormResources;\r\n rowsPerPageOptions: number[];\r\n shortDatePattern: string;\r\n\r\n // Education Information\r\n educationCount: number;\r\n\r\n // ETS Search Modal\r\n countries?: IDropDownOption[];\r\n institutions?: IInstitution[];\r\n openETSSearchModal: boolean;\r\n selectedCity?: string;\r\n selectedCountry?: number;\r\n selectedEtsCode?: string;\r\n selectedFieldId?: string;\r\n selectedInstitutionName?: string;\r\n selectedState?: number;\r\n states?: IDropDownOption[];\r\n pageNumber: number;\r\n pageSize: number;\r\n total: number;\r\n\r\n // Phone\r\n phoneCount: number;\r\n\r\n // Programs\r\n programsCount: number;\r\n\r\n // Activities\r\n activityCount: number;\r\n\r\n // ReCatpcha\r\n isReCaptchaSubmitInquiryEnabled: boolean;\r\n reCaptchaError: boolean;\r\n reCaptchaSiteKey: string;\r\n uiCulture: string;\r\n}\r\n// #endregion Types\r\n\r\n// #region Component\r\nclass InquiryFormView extends React.Component {\r\n private idMainPage: string;\r\n private idModule: string;\r\n private idPage: string;\r\n private reCaptchaRef: RefObject;\r\n\r\n public readonly state: Readonly;\r\n\r\n public constructor(props) {\r\n super(props);\r\n\r\n // #region Initialize Variables and State\r\n this.idMainPage = 'Inquiries';\r\n this.idModule = 'Admissions';\r\n this.idPage = 'InquiryForm';\r\n this.state = this.getInitialState();\r\n this.reCaptchaRef = React.createRef();\r\n // #endregion Initialize Variables and State\r\n\r\n // #region Bind State Management Listeners\r\n LayoutStore.addLayoutReadyListener(this.onLayoutReady);\r\n // #endregion State Management Listeners\r\n }\r\n\r\n private getInitialState(): IInquiryFormState {\r\n let resources: IInquiryFormResources | undefined;\r\n let isReCaptchaSubmitInquiryEnabled: boolean = false;\r\n let reCaptchaSiteKey: string = '';\r\n\r\n if (this.state) {\r\n resources = this.state.resources;\r\n isReCaptchaSubmitInquiryEnabled = this.state.isReCaptchaSubmitInquiryEnabled;\r\n reCaptchaSiteKey = this.state.reCaptchaSiteKey;\r\n }\r\n\r\n const cultures: ICultures = LayoutStore.getCultures();\r\n\r\n return {\r\n activeStep: 0,\r\n activityCount: 0,\r\n addresses: [],\r\n addressessCount: 0,\r\n componentError: false,\r\n components: undefined,\r\n cultures: LayoutStore.getCultures(),\r\n dateTimeCulture: cultures.dateTimeCulture,\r\n educationCount: 0,\r\n errors: [],\r\n expanded: false,\r\n expansionPanelHeaders: [],\r\n firstDayOfWeek: cultures.firstDayOfWeek,\r\n inquiry: {\r\n addresses: [],\r\n education: [],\r\n phones: [],\r\n userDefined: []\r\n },\r\n hasSearchZipCode: false,\r\n institutions: [],\r\n openAddressSearchModal: false,\r\n openETSSearchModal: false,\r\n pageNumber: 0,\r\n pageSize: 5,\r\n phoneCount: 0,\r\n programsCount: 0,\r\n resources: resources,\r\n rowsPerPageOptions: [5, 10, 15, 20, 25, 50],\r\n shortDatePattern: cultures.shortDatePattern,\r\n total: 0,\r\n\r\n // #region ReCaptcha\r\n isReCaptchaSubmitInquiryEnabled: isReCaptchaSubmitInquiryEnabled,\r\n reCaptchaError: false,\r\n reCaptchaSiteKey: reCaptchaSiteKey,\r\n uiCulture: LayoutStore.getCultures().uiCulture\r\n // #endregion ReCaptcha\r\n };\r\n }\r\n\r\n // #region Events\r\n\r\n private onAddMore = (fieldGroup: IFieldsGroup, stepIndex: number, fieldGroupIndex: number): void => {\r\n try {\r\n if (fieldGroup.id && fieldGroup.id !== '') {\r\n const {\r\n activityCount,\r\n addressessCount,\r\n components,\r\n educationCount,\r\n errors,\r\n expanded,\r\n phoneCount,\r\n programsCount\r\n } = this.state;\r\n\r\n switch (fieldGroup.id) {\r\n case 'programOfStudyGroup':\r\n if (components) {\r\n this.createNewSection(components, fieldGroup, errors, stepIndex,\r\n fieldGroupIndex, programsCount, 'programOfStudydErrorsId', expanded);\r\n\r\n this.setState({\r\n programsCount: programsCount + 1\r\n });\r\n }\r\n break;\r\n case 'phoneGroup':\r\n if (components) {\r\n this.createNewSection(components, fieldGroup, errors, stepIndex,\r\n fieldGroupIndex, phoneCount, 'phoneErrorsId', expanded);\r\n\r\n this.setState({\r\n phoneCount: phoneCount + 1\r\n });\r\n }\r\n break;\r\n case 'addressInformationGroup':\r\n if (components) {\r\n // Error id is not sent because errorId for this group will be excluded\r\n this.createNewSection(components, fieldGroup, errors, stepIndex,\r\n fieldGroupIndex, addressessCount, '', expanded);\r\n\r\n this.setState({\r\n addressessCount: addressessCount + 1\r\n });\r\n }\r\n break;\r\n case 'educationGroup':\r\n if (components) {\r\n // Error id is not sent because errorId for this group will be excluded\r\n this.createNewSection(components, fieldGroup, errors, stepIndex,\r\n fieldGroupIndex, educationCount, '', expanded);\r\n\r\n this.setState({\r\n educationCount: educationCount + 1\r\n });\r\n }\r\n break;\r\n case 'activityGroup':\r\n if (components) {\r\n const initialGroupLength: number = fieldGroup.fields.length;\r\n\r\n // Error id is not sent because errorId for this group will be excluded\r\n this.createNewSection(components, fieldGroup, errors, stepIndex,\r\n fieldGroupIndex, activityCount, '', expanded);\r\n\r\n const finalGroupLength: number = fieldGroup.fields.length;\r\n const newSet: IFieldForm[] = fieldGroup.fields.slice(initialGroupLength, finalGroupLength);\r\n const parentDropDown: IFieldForm = newSet[newSet.findIndex(e => e.childField !== null)];\r\n const childDropDown: IFieldForm = newSet[newSet.findIndex(e => e.data.id.split('|')[0] === parentDropDown.childField)];\r\n childDropDown.data.options = [];\r\n parentDropDown.childField = childDropDown.data.id;\r\n\r\n this.setState({\r\n activityCount: activityCount + 1\r\n });\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onAddMore.name, e));\r\n }\r\n };\r\n\r\n private onAddDeleteButton = (fieldGroup: IFieldsGroup, stepIndex: number, fieldGroupIndex:\r\n number, groupLength: number, sectionNumber: number): void => {\r\n try {\r\n const data: IDataForm = {\r\n id: `deleteIcon|${stepIndex}|${fieldGroupIndex}|${groupLength}|${sectionNumber}`,\r\n modified: true,\r\n section: sectionNumber\r\n };\r\n\r\n const deleteButton: IFieldForm = {\r\n componentType: 'DeleteIconButton',\r\n data: data,\r\n isNumeric: false,\r\n isRequired: false,\r\n onClick: this.onDeleteItem,\r\n value: ''\r\n };\r\n\r\n fieldGroup.fields.push(deleteButton);\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onAddDeleteButton.name, e));\r\n }\r\n };\r\n\r\n private onBackStep = (): void => {\r\n try {\r\n const {\r\n activeStep\r\n } = this.state;\r\n\r\n this.setState({\r\n activeStep: activeStep - 1\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onBackStep.name, e));\r\n }\r\n };\r\n\r\n private onClickStep = (event: React.MouseEvent) => {\r\n try {\r\n\r\n const steps: string[] = event.currentTarget.id.split('|');\r\n this.setState({\r\n activeStep: Number(steps[1])\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onClickStep.name, e));\r\n }\r\n };\r\n\r\n private onChangeCheckBox = (event: any): void => {\r\n try {\r\n const {\r\n components,\r\n inquiry\r\n } = this.state;\r\n\r\n if (inquiry && components) {\r\n const inq: IInquiry = inquiry;\r\n const fieldId: string[] = event.target.id.split('|');\r\n const newComponents: IApplicationForm = components;\r\n const value: boolean = Boolean(event.target.checked);\r\n const evaluateAppJs = eval;\r\n\r\n switch (fieldId[0]) {\r\n case 'extraCurricularActivityId':\r\n inq.isInterestedInExtracurricular = value;\r\n break;\r\n case 'financialAidId':\r\n inq.isInterestedInFinancialAid = value;\r\n break;\r\n case 'retiredId':\r\n inq.isRetired = value;\r\n break;\r\n case 'seekingDegreeId':\r\n inq.isSeekingDegree = value;\r\n break;\r\n case 'policyCheckboxId':\r\n inq.policy = value;\r\n break;\r\n case 'criminalConvictionsId':\r\n inq.isCriminalConviction = value;\r\n break;\r\n }\r\n if (fieldId.length < 5) {\r\n if (fieldId && fieldId[1] && fieldId[2] && fieldId[3]) {\r\n const field: IFieldForm = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n\r\n if (field.isUserDefined && field.customScript) {\r\n if (value) {\r\n field.value = evaluateAppJs(field.customScript);\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n }\r\n else {\r\n field.value = NaN;\r\n }\r\n }\r\n else {\r\n field.value = value ? value : undefined;\r\n }\r\n }\r\n }\r\n else {\r\n const field: IFieldForm | undefined =\r\n components.steps[Number(fieldId[1])].\r\n fieldsGroups[Number(fieldId[2])].\r\n fields.find(x =>\r\n x.data.section === Number(fieldId[4]) &&\r\n x.data.id.substr(0, fieldId[0].length) === fieldId[0]);\r\n if (field) {\r\n field.value = value;\r\n }\r\n }\r\n\r\n this.setState({\r\n components: newComponents,\r\n inquiry: inq\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeCheckBox.name, e));\r\n }\r\n };\r\n\r\n private onChangeDateTimeField = (date: string, id: string, isValid: boolean): void => {\r\n try {\r\n const {\r\n components,\r\n cultures,\r\n inquiry,\r\n resources\r\n } = this.state;\r\n\r\n if (id && id !== '' && inquiry && components) {\r\n const inq: IInquiry = inquiry;\r\n const fieldId: string[] = id.split('|');\r\n let newComponents: IApplicationForm = components;\r\n const field = newComponents.steps[Number(fieldId[1])].\r\n fieldsGroups[Number(fieldId[2])].\r\n fields[Number(fieldId[3])];\r\n\r\n const dateMinFormat: string =\r\n moment().add(-100, 'years').format(cultures.shortDatePattern.toUpperCase());\r\n const dateMaxFormat: string =\r\n moment().add(100, 'years').format(cultures.shortDatePattern.toUpperCase());\r\n\r\n switch (fieldId[0]) {\r\n case 'dateOfEntryId':\r\n inq.dateOfEntry = date;\r\n newComponents = this.setValues(fieldId, newComponents, date);\r\n if (isValid) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n newComponents = this.cleanErrorMessages(fieldId, newComponents);\r\n }\r\n else {\r\n if (date) {\r\n field.data.error = true;\r\n if (resources) {\r\n field.data.helperText =\r\n Format.toString(resources.formatDateOutOfRange, [dateMinFormat, dateMaxFormat]);\r\n }\r\n }\r\n else {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n }\r\n }\r\n break;\r\n case 'dateOfBirthId':\r\n inq.dateOfBirth = date;\r\n newComponents = this.setValues(fieldId, newComponents, date);\r\n if (isValid) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n newComponents = this.cleanErrorMessages(fieldId, newComponents);\r\n }\r\n else {\r\n if (date) {\r\n field.data.error = true;\r\n if (resources) {\r\n field.data.helperText =\r\n Format.toString(resources.formatDateOutOfRange, [dateMinFormat, dateMaxFormat]);\r\n }\r\n }\r\n else {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n }\r\n }\r\n break;\r\n case 'visaExpirationDateId':\r\n inq.visaExpiration = date;\r\n newComponents = this.setValues(fieldId, newComponents, date);\r\n if (isValid) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n newComponents = this.cleanErrorMessages(fieldId, newComponents);\r\n }\r\n else {\r\n if (date) {\r\n field.data.error = true;\r\n if (resources) {\r\n field.data.helperText =\r\n Format.toString(resources.formatDateOutOfRange, [dateMinFormat, dateMaxFormat]);\r\n }\r\n }\r\n else {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n }\r\n }\r\n break;\r\n case 'passportExpirationDateId':\r\n inq.passportExpiration = date;\r\n newComponents = this.setValues(fieldId, newComponents, date);\r\n if (isValid) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n newComponents = this.cleanErrorMessages(fieldId, newComponents);\r\n }\r\n else {\r\n if (date) {\r\n field.data.error = true;\r\n if (resources) {\r\n field.data.helperText =\r\n Format.toString(resources.formatDateOutOfRange, [dateMinFormat, dateMaxFormat]);\r\n }\r\n }\r\n else {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n }\r\n }\r\n break;\r\n default:\r\n newComponents = this.setValues(fieldId, newComponents, date);\r\n if (isValid) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n newComponents = this.cleanErrorMessages(fieldId, newComponents);\r\n }\r\n else {\r\n if (date) {\r\n field.data.error = true;\r\n if (resources) {\r\n field.data.helperText =\r\n Format.toString(resources.formatDateOutOfRange, [dateMinFormat, dateMaxFormat]);\r\n }\r\n }\r\n else {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n }\r\n }\r\n break;\r\n }\r\n\r\n this.setState({\r\n components: newComponents,\r\n inquiry: inq\r\n });\r\n\r\n }\r\n\r\n } catch (e) {\r\n this.logError(LogData.fromException(this.onChangeDateTimeField.name, e));\r\n }\r\n };\r\n\r\n private onChangeDropDown = (optionSelected: IDropDownOption, id: string): void => {\r\n try {\r\n const {\r\n components,\r\n inquiry\r\n } = this.state;\r\n\r\n if (id && id !== '' && inquiry && components) {\r\n const inq: IInquiry = inquiry;\r\n const fieldId: string[] = id.split('|');\r\n\r\n let valueSelected: any | undefined;\r\n if (optionSelected.value) {\r\n switch (typeof optionSelected.value) {\r\n case 'string':\r\n valueSelected = String(optionSelected.value);\r\n break;\r\n case 'number':\r\n valueSelected = Number(optionSelected.value);\r\n break;\r\n default:\r\n valueSelected = optionSelected.value;\r\n break;\r\n }\r\n }\r\n\r\n switch (fieldId[0]) {\r\n case 'sessionPeriodId':\r\n const selectedPeriod = optionSelected.description.split('/');\r\n if (selectedPeriod.length === 1) {\r\n inquiry.academicYear = Number(optionSelected.value);\r\n }\r\n if (selectedPeriod.length === 2) {\r\n inquiry.termPeriodId = Number(optionSelected.value);\r\n }\r\n if (selectedPeriod.length === 3) {\r\n inquiry.sessionPeriodId = Number(optionSelected.value);\r\n }\r\n break;\r\n case 'hispanicGroupId':\r\n if (components) {\r\n // Get fieldsGroup\r\n const fieldsGroup: IFieldForm[] =\r\n components.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields;\r\n // Get checkBoxList hispanicCheckboxListId index\r\n let checkBoxListIndex: number = -1;\r\n fieldsGroup.forEach((field, i) => {\r\n if (field.data.id.substr(0, 'hispanicCheckboxListId'.length) === 'hispanicCheckboxListId') {\r\n checkBoxListIndex = i;\r\n }\r\n });\r\n // Get checkBoxList hispanicCheckboxListId\r\n const checkBoxListField: IFieldForm =\r\n components.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[checkBoxListIndex];\r\n let ipedsList: IApplicationIpeds[] | undefined = inq.ipeds;\r\n if (valueSelected === '1') {\r\n if (checkBoxListField) {\r\n // Add category in list\r\n const ipeds: IApplicationIpeds = { ipedsEthnicityId: undefined, ipedsFederalCategoryId: 1 };\r\n if (ipedsList) {\r\n const ipedIndex: number =\r\n ipedsList.findIndex(x => x.ipedsFederalCategoryId === 1);\r\n // Category was not found, add category\r\n if (ipedIndex === -1) {\r\n ipedsList.push(ipeds);\r\n }\r\n }\r\n // ipedsList was undefined so add a new item with category\r\n else {\r\n ipedsList = [ipeds];\r\n }\r\n checkBoxListField.value = undefined;\r\n }\r\n }\r\n if (valueSelected === '0') {\r\n if (checkBoxListField) {\r\n if (ipedsList && ipedsList.length > 0) {\r\n let index: number = -1;\r\n do {\r\n index = ipedsList.findIndex(x => x.ipedsFederalCategoryId === 1);\r\n if (index > -1) {\r\n ipedsList.splice(index, 1);\r\n }\r\n } while (index > -1);\r\n }\r\n checkBoxListField.value = undefined;\r\n }\r\n }\r\n if (valueSelected === undefined) {\r\n if (checkBoxListField) {\r\n if (ipedsList && ipedsList.length > 0) {\r\n let index: number = ipedsList.length;\r\n do {\r\n ipedsList.splice(index, 1);\r\n index--;\r\n } while (ipedsList.length > 0);\r\n }\r\n checkBoxListField.value = undefined;\r\n }\r\n }\r\n inq.ipeds = ipedsList;\r\n this.setState({\r\n components: components,\r\n inquiry: inq\r\n });\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n let newComponents: IApplicationForm = components;\r\n if (fieldId && fieldId[1] && fieldId[2] && fieldId[3]) {\r\n newComponents = this.cleanErrorMessages(fieldId, newComponents);\r\n newComponents = this.setValues(fieldId, newComponents, valueSelected);\r\n\r\n const fieldGroup: any = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])];\r\n\r\n const sectionFields: any = fieldGroup.fields.filter(x => (x.data.id.split('|')[4] || '') === (fieldId[4] || ''));\r\n\r\n sectionFields.forEach(field => {\r\n if (fieldId[0] === 'activityTypeId' && field.childField && valueSelected && valueSelected !== '' &&\r\n Number(valueSelected) > 0) {\r\n RequestsInquiry.getChildOptions(\r\n field.childEndPoint,\r\n valueSelected || 0,\r\n fieldId[1],\r\n fieldId[2],\r\n field.childField,\r\n false,\r\n this.resolveGetChildOptions,\r\n this.logError,\r\n Number(newComponents.applicationFormId));\r\n }\r\n });\r\n }\r\n this.setState({\r\n components: newComponents,\r\n inquiry: inq\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeDropDown.name, e));\r\n }\r\n };\r\n\r\n private onChangeDropDownETSSearch = (optionSelected: IDropDownOption, id: string): void => {\r\n try {\r\n if (id && id !== '') {\r\n switch (id) {\r\n case 'ddlCountry':\r\n this.setState({\r\n selectedCountry: optionSelected.value === '' ? undefined :\r\n Number(optionSelected.value)\r\n });\r\n break;\r\n case 'ddlState':\r\n this.setState({\r\n selectedState: optionSelected.value === '' ? undefined :\r\n Number(optionSelected.value)\r\n });\r\n break;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeDropDownETSSearch.name, e));\r\n }\r\n };\r\n\r\n private onChangeExpansionPanel = (panelId: string) => (): void => {\r\n try {\r\n this.setState({\r\n expanded: panelId\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeExpansionPanel.name, e));\r\n }\r\n };\r\n\r\n private onChangeListCheckbox = (event: any): void => {\r\n try {\r\n const {\r\n components,\r\n inquiry\r\n } = this.state;\r\n\r\n const fieldId: string[] = event.currentTarget.id.split('|');\r\n const inq: IInquiry = inquiry;\r\n\r\n if (inquiry && components) {\r\n const newComponents: IApplicationForm = components;\r\n const childField: string[] = event.target.id.split('|');\r\n if (childField[1] === 'noHispanicNestedCheckboxListId') {\r\n if (event.target.checked === true) {\r\n let ipedNew: IApplicationIpeds = { ipedsFederalCategoryId: 0 };\r\n let ipedIndex: number = -1;\r\n if (childField[0] === 'child') {\r\n ipedNew = {\r\n ipedsEthnicityId: Number(childField[7]),\r\n ipedsFederalCategoryId: Number(childField[6])\r\n };\r\n if (inq.ipeds) {\r\n ipedIndex = inq.ipeds.findIndex(x => x.ipedsEthnicityId === undefined &&\r\n x.ipedsFederalCategoryId === Number(childField[6]));\r\n }\r\n }\r\n else if (childField[0] === 'parent') {\r\n ipedNew = {\r\n ipedsEthnicityId: undefined,\r\n ipedsFederalCategoryId: Number(childField[6])\r\n };\r\n if (inq.ipeds) {\r\n ipedIndex =\r\n inq.ipeds.findIndex(x => x.ipedsFederalCategoryId ===\r\n Number(childField[6]));\r\n }\r\n }\r\n if (inq.ipeds) {\r\n if (ipedIndex > -1) {\r\n inq.ipeds[ipedIndex] = ipedNew;\r\n }\r\n else {\r\n inq.ipeds.push(ipedNew);\r\n }\r\n }\r\n else {\r\n inq.ipeds = [ipedNew];\r\n }\r\n }\r\n else {\r\n if (inq.ipeds) {\r\n if (childField[0] === 'child') {\r\n const itemToRemove: number =\r\n inq.ipeds.findIndex(x => x.ipedsEthnicityId === Number(childField[7]) &&\r\n x.ipedsFederalCategoryId === Number(childField[6]));\r\n inq.ipeds.splice(itemToRemove, 1);\r\n }\r\n else if (childField[0] === 'parent') {\r\n let index: number = -1;\r\n do {\r\n index = inq.ipeds.findIndex(x =>\r\n x.ipedsFederalCategoryId === Number(childField[6]));\r\n if (index > -1) {\r\n inq.ipeds.splice(index, 1);\r\n }\r\n } while (index > -1);\r\n }\r\n }\r\n }\r\n if (childField && childField[2] && childField[3] && childField[4]) {\r\n const field: IFieldForm =\r\n newComponents.steps[Number(childField[2])].\r\n fieldsGroups[Number(childField[3])].\r\n fields[Number(childField[4])];\r\n if (inq.ipeds && inq.ipeds.length === 0 && field.isRequired) {\r\n field.value = undefined;\r\n }\r\n else {\r\n // change value of field\r\n if (inq.ipeds) {\r\n field.value = undefined;\r\n inq.ipeds.forEach(iped => {\r\n if (iped.ipedsFederalCategoryId !== 1) {\r\n if (field.value) {\r\n field.value = field.value +\r\n `${iped.ipedsFederalCategoryId.toString()}$${iped.ipedsEthnicityId ?\r\n iped.ipedsEthnicityId.toString() : ''},`;\r\n }\r\n else {\r\n field.value =\r\n `${iped.ipedsFederalCategoryId.toString()}$${iped.ipedsEthnicityId ?\r\n iped.ipedsEthnicityId.toString() : ''},`;\r\n }\r\n }\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n // const newComponents: IApplicationForm = components;\r\n switch (fieldId[0]) {\r\n case 'interestId':\r\n if (inq.academicInterests) {\r\n const index: number = inq.academicInterests.findIndex(x => x === Number(fieldId[4]));\r\n if (event.target.checked === true) {\r\n inq.academicInterests.push(Number(fieldId[4]));\r\n }\r\n else {\r\n inq.academicInterests.splice(index, 1);\r\n }\r\n }\r\n else {\r\n if (event.target.checked === true) {\r\n inq.academicInterests = [Number(fieldId[4])];\r\n }\r\n }\r\n if (fieldId && fieldId[1] && fieldId[2] && fieldId[3] && fieldId[4]) {\r\n const field: any = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n if (inq.academicInterests && inq.academicInterests.length === 0 && field.isRequired) {\r\n field.value = undefined;\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n }\r\n else {\r\n if (inq.academicInterests) {\r\n field.value = inq.academicInterests.toString();\r\n }\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n }\r\n }\r\n break;\r\n case 'sourceId':\r\n if (inq.sources) {\r\n const index: number = inq.sources.findIndex(x => x === Number(fieldId[4]));\r\n if (event.target.checked === true) {\r\n inq.sources.push(Number(fieldId[4]));\r\n }\r\n else {\r\n inq.sources.splice(index, 1);\r\n }\r\n }\r\n else {\r\n if (event.target.checked === true) {\r\n inq.sources = [Number(fieldId[4])];\r\n }\r\n }\r\n if (fieldId && fieldId[1] && fieldId[2] && fieldId[3] && fieldId[4]) {\r\n const field: any = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n if (inq.sources && inq.sources.length === 0 && field.isRequired) {\r\n field.value = undefined;\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n }\r\n else {\r\n if (inq.sources) {\r\n field.value = inq.sources.toString();\r\n }\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n }\r\n }\r\n break;\r\n case 'hispanicCheckboxListId':\r\n const ipedNew: IApplicationIpeds = {\r\n ipedsEthnicityId: Number(fieldId[4]),\r\n ipedsFederalCategoryId: 1\r\n };\r\n if (inq.ipeds) {\r\n const ipedIndex: number = inq.ipeds.findIndex(x => x.ipedsEthnicityId === undefined &&\r\n x.ipedsFederalCategoryId === 1);\r\n if (event.target.checked === true) {\r\n // when exists category 1 and null, record should be updated\r\n if (ipedIndex > -1) {\r\n inq.ipeds[ipedIndex] = ipedNew;\r\n }\r\n else {\r\n inq.ipeds.push(ipedNew);\r\n }\r\n }\r\n else {\r\n // remove item from list\r\n const itemToRemove: number =\r\n inq.ipeds.findIndex(x => x.ipedsEthnicityId === Number(fieldId[4]) &&\r\n x.ipedsFederalCategoryId === 1);\r\n inq.ipeds.splice(itemToRemove, 1);\r\n }\r\n }\r\n else {\r\n inq.ipeds = [ipedNew];\r\n }\r\n // Select yes in radio buttons\r\n newComponents.steps[Number(fieldId[1])].\r\n fieldsGroups[Number(fieldId[2])].fields.forEach(field => {\r\n if (field.data.id === 'hispanicGroupId') {\r\n field.value = '1';\r\n }\r\n });\r\n // Add in the list of value id's selected\r\n if (fieldId && fieldId[1] && fieldId[2] && fieldId[3] && fieldId[4]) {\r\n const field: IFieldForm =\r\n newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n if (inq.ipeds && inq.ipeds.length === 0 && field.isRequired) {\r\n field.value = undefined;\r\n }\r\n else {\r\n // change value of field\r\n if (inq.ipeds) {\r\n const ipedsArray: string[] = [];\r\n inq.ipeds.forEach(ethnicity => {\r\n if (ethnicity.ipedsFederalCategoryId === 1) {\r\n if (ethnicity.ipedsEthnicityId) {\r\n ipedsArray.push(ethnicity.ipedsEthnicityId.toString());\r\n }\r\n }\r\n });\r\n field.value = ipedsArray.toString();\r\n }\r\n }\r\n }\r\n break;\r\n }\r\n this.setState({\r\n components: newComponents,\r\n inquiry: inq\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeListCheckbox.name, e));\r\n }\r\n };\r\n\r\n private onChangeRadioGroup = (event: any, value: string): void => {\r\n try {\r\n const {\r\n components,\r\n inquiry\r\n } = this.state;\r\n\r\n if (event.target.name && event.target.name !== '' && inquiry && components) {\r\n const inq: IInquiry = inquiry;\r\n const fieldId: string[] = event.target.name.split('|');\r\n let newComponents: IApplicationForm = components;\r\n\r\n switch (fieldId[0]) {\r\n case 'primaryPhoneId':\r\n newComponents = this.onPrimaryButtonClick(fieldId, newComponents, value);\r\n break;\r\n }\r\n\r\n newComponents = this.cleanErrorMessages(fieldId, newComponents);\r\n newComponents = this.setValues(fieldId, newComponents, value);\r\n\r\n this.setState({\r\n components: newComponents,\r\n inquiry: inq\r\n });\r\n }\r\n\r\n } catch (e) {\r\n this.logError(LogData.fromException(this.onChangeRadioGroup.name, e));\r\n }\r\n };\r\n\r\n private onChangeTextField = (event: any): void => {\r\n try {\r\n const {\r\n components,\r\n inquiry\r\n } = this.state;\r\n\r\n if (event.target.id && event.target.id !== '' && inquiry && components) {\r\n const inq: IInquiry = inquiry;\r\n const fieldId: string[] = event.target.id.split('|');\r\n let newComponents: IApplicationForm = components;\r\n switch (fieldId[0]) {\r\n case 'emailId':\r\n if (fieldId && fieldId[1] && fieldId[2]) {\r\n const field: any = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n if (event.target.value.match(components.emailRegExpression)) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n field.value = event.target.value;\r\n inq.email = event.target.value;\r\n }\r\n else {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageNotValid;\r\n }\r\n }\r\n break;\r\n case 'emergencyPhoneId':\r\n if (!event.target.value.match(/^[0-9]*$/g)) {\r\n const onlyNum = new RegExp(/([A-Za-zñ<> äÄëËïÏöÖüÜáÁéÉíÍóÓúÚýÝ'¿\"#_-Ä-´°%;&¨Ñ,¡.*+?^=!:$(){}|[\\]\\/\\\\])/g);\r\n event.target.value = event.target.value.replace(onlyNum, '');\r\n }\r\n break;\r\n case 'firstNameId':\r\n inq.firstName = event.target.value;\r\n break;\r\n case 'formerLastNameId':\r\n inq.formerLastName = event.target.value;\r\n break;\r\n case 'governmentId':\r\n if (fieldId && fieldId[1] && fieldId[2] && fieldId[3]) {\r\n const governmentId = event.target.value.replace(/[-.]/g, '');\r\n const field: any = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n if (Number(governmentId.length) !== newComponents.governmentIdMaxLength) {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageFormat;\r\n }\r\n else {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n inq.governmentId = governmentId;\r\n }\r\n }\r\n break;\r\n case 'lastNameId':\r\n inq.lastName = event.target.value;\r\n break;\r\n case 'lastNamePrefixId':\r\n inq.lastNamePrefix = event.target.value;\r\n break;\r\n case 'legalNameId':\r\n inq.legalName = event.target.value;\r\n break;\r\n case 'middleNameId':\r\n inq.middleName = event.target.value;\r\n break;\r\n case 'monthsInCountryId':\r\n if (fieldId && fieldId[1] && fieldId[2] && fieldId[3]) {\r\n if (!event.target.value.match(/^[0-9]*$/g)) {\r\n const onlyNum = new RegExp(/([A-Za-zñ<> äÄëËïÏöÖüÜáÁéÉíÍóÓúÚýÝ'¿\"#_-Ä-´°%;&¨Ñ,¡.*+?^=!:$(){}|[\\]\\/\\\\])/g);\r\n event.target.value = event.target.value.replace(onlyNum, '');\r\n }\r\n const field: any = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n if (Number(event.target.value) >= 0 && Number(event.target.value) <= 9999) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n inq.monthsInCountry = Number(event.target.value);\r\n }\r\n else {\r\n if (Number(event.target.value) > 9999) {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRange;\r\n }\r\n else {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageNumeric;\r\n }\r\n }\r\n }\r\n break;\r\n case 'nickNameId':\r\n inq.nickname = event.target.value;\r\n break;\r\n case 'passportNumberId':\r\n inq.passportNumber = event.target.value;\r\n break;\r\n case 'phoneNumberId':\r\n if (!event.target.value.match(/^[0-9]*$/g)) {\r\n const onlyNum = new RegExp(/([A-Za-zñ<> äÄëËïÏöÖüÜáÁéÉíÍóÓúÚýÝ'¿\"#_-Ä-´°%;&¨Ñ,¡.*+?^=!:$(){}|[\\]\\/\\\\])/g);\r\n event.target.value = event.target.value.replace(onlyNum, '');\r\n }\r\n break;\r\n case 'visaNumberId':\r\n inq.visaNumber = event.target.value;\r\n break;\r\n case 'numberOfHoursPerWeekId':\r\n if (!event.target.value.match(/^[0-9]*$/g)) {\r\n const onlyNum = new RegExp(/([A-Za-zñ<> äÄëËïÏöÖüÜáÁéÉíÍóÓúÚýÝ'¿\"#_-Ä-´°%;&¨Ñ,¡.*+?^=!:$(){}|[\\]\\/\\\\])/g);\r\n event.target.value = event.target.value.replace(onlyNum, '');\r\n }\r\n let fieldHoursPerWeek: any;\r\n if (fieldId.length < 5) {\r\n fieldHoursPerWeek = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n }\r\n else {\r\n fieldHoursPerWeek = newComponents.steps[Number(fieldId[1])].\r\n fieldsGroups[Number(fieldId[2])].fields.find(x =>\r\n x.data.section === Number(fieldId[4]) &&\r\n x.data.id.substr(0, 'numberOfHoursPerWeekId'.length) ===\r\n 'numberOfHoursPerWeekId');\r\n }\r\n if (Number(event.target.value) > 168) {\r\n fieldHoursPerWeek.data.error = true;\r\n fieldHoursPerWeek.data.helperText = fieldHoursPerWeek.data.errorMessageRange;\r\n }\r\n else {\r\n fieldHoursPerWeek.data.error = false;\r\n fieldHoursPerWeek.data.helperText = '';\r\n }\r\n break;\r\n case 'numberOfWeeksPerYearId':\r\n if (!event.target.value.match(/^[0-9]*$/g)) {\r\n const onlyNum = new RegExp(/([A-Za-zñ<> äÄëËïÏöÖüÜáÁéÉíÍóÓúÚýÝ'¿\"#_-Ä-´°%;&¨Ñ,¡.*+?^=!:$(){}|[\\]\\/\\\\])/g);\r\n event.target.value = event.target.value.replace(onlyNum, '');\r\n }\r\n let fieldWeeksPerYear: any;\r\n if (fieldId.length < 5) {\r\n fieldWeeksPerYear = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n }\r\n else {\r\n fieldWeeksPerYear = newComponents.steps[Number(fieldId[1])].\r\n fieldsGroups[Number(fieldId[2])].fields.find(x =>\r\n x.data.section === Number(fieldId[4]) &&\r\n x.data.id.substr(0, 'numberOfWeeksPerYearId'.length) ===\r\n 'numberOfWeeksPerYearId');\r\n }\r\n if (Number(event.target.value) > 52) {\r\n fieldWeeksPerYear.data.error = true;\r\n fieldWeeksPerYear.data.helperText = fieldWeeksPerYear.data.errorMessageRange;\r\n }\r\n else {\r\n fieldWeeksPerYear.data.error = false;\r\n fieldWeeksPerYear.data.helperText = '';\r\n }\r\n break;\r\n case 'numberOfYearsId':\r\n if (!event.target.value.match(/^[0-9]*$/g)) {\r\n const onlyNum = new RegExp(/([A-Za-zñ<> äÄëËïÏöÖüÜáÁéÉíÍóÓúÚýÝ'¿\"#_-Ä-´°%;&¨Ñ,¡.*+?^=!:$(){}|[\\]\\/\\\\])/g);\r\n event.target.value = event.target.value.replace(onlyNum, '');\r\n }\r\n let fieldYears: any;\r\n if (fieldId.length < 5) {\r\n fieldYears = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n }\r\n else {\r\n fieldYears = newComponents.steps[Number(fieldId[1])].\r\n fieldsGroups[Number(fieldId[2])].fields.find(x =>\r\n x.data.section === Number(fieldId[4]) &&\r\n x.data.id.substr(0, 'numberOfYearsId'.length) ===\r\n 'numberOfYearsId');\r\n }\r\n if (Number(event.target.value) > 99) {\r\n fieldYears.data.error = true;\r\n fieldYears.data.helperText = fieldYears.data.errorMessageRange;\r\n }\r\n else {\r\n fieldYears.data.error = false;\r\n fieldYears.data.helperText = '';\r\n }\r\n break;\r\n case 'licenseNumberId':\r\n inq.licenseNumber = event.target.value;\r\n break;\r\n case 'portOfEntryId':\r\n inq.portOfEntry = event.target.value;\r\n break;\r\n case 'sevisNumberId':\r\n inq.sevisNumber = event.target.value;\r\n break;\r\n }\r\n\r\n newComponents = this.cleanErrorMessages(fieldId, newComponents);\r\n newComponents = this.setValues(fieldId, newComponents, event.target.value);\r\n\r\n this.setState({\r\n components: newComponents,\r\n inquiry: inq\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeTextField.name, e));\r\n }\r\n };\r\n\r\n private onChangeTextFieldAddressSearch = (event: any): void => {\r\n try {\r\n if (event.target.id && event.target.id !== '') {\r\n switch (event.target.id) {\r\n case 'txtZipCode':\r\n this.setState({\r\n selectedZipCode: event.target.value\r\n });\r\n break;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeTextFieldAddressSearch.name, e));\r\n }\r\n };\r\n\r\n private onChangeTextFieldETSSearch = (event: any): void => {\r\n try {\r\n if (event.target.id && event.target.id !== '') {\r\n switch (event.target.id) {\r\n case 'txtEtsCode':\r\n this.setState({\r\n selectedEtsCode: event.target.value\r\n });\r\n break;\r\n case 'txtCity':\r\n this.setState({\r\n selectedCity: event.target.value\r\n });\r\n break;\r\n case 'txtInstitutionName':\r\n this.setState({\r\n selectedInstitutionName: event.target.value\r\n });\r\n break;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeTextFieldETSSearch.name, e));\r\n }\r\n };\r\n\r\n private onClickButton = (event: React.MouseEvent): void => {\r\n try {\r\n const {\r\n components,\r\n inquiry\r\n } = this.state;\r\n\r\n if (event.currentTarget.id && event.currentTarget.id !== '' && inquiry && components) {\r\n const fieldId: string[] = event.currentTarget.id.split('|');\r\n\r\n switch (fieldId[0]) {\r\n case 'educationEtsCodeButtonId':\r\n this.setState({\r\n institutions: undefined,\r\n openETSSearchModal: true,\r\n selectedCity: undefined,\r\n selectedCountry: undefined,\r\n selectedEtsCode: undefined,\r\n selectedFieldId: event.currentTarget.id,\r\n selectedInstitutionName: undefined,\r\n selectedState: undefined\r\n });\r\n break;\r\n case 'postalCodeButtonId':\r\n // Get zip code\r\n let zipCode: string = '';\r\n const fieldGroup: IFieldForm[] =\r\n components.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields;\r\n let fieldIndex: number = -1;\r\n if (fieldId.length > 4) {\r\n fieldIndex = fieldGroup.findIndex(x => x.data.section === Number(fieldId[4]) &&\r\n x.data.id.substr(0, 'postalCodeId'.length) === 'postalCodeId');\r\n }\r\n else {\r\n fieldIndex = fieldGroup.findIndex(x => x.data.id === 'postalCodeId');\r\n }\r\n if (fieldIndex > -1) {\r\n zipCode = components.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].\r\n fields[fieldIndex].value;\r\n }\r\n\r\n this.setState({\r\n openAddressSearchModal: true,\r\n hasSearchZipCode: false,\r\n selectedFieldId: event.currentTarget.id,\r\n selectedZipCode: zipCode\r\n });\r\n\r\n LayoutActions.setLoading(true);\r\n\r\n const {\r\n pageSize\r\n } = this.state;\r\n\r\n RequestsInquiry.getAddresses(\r\n 0,\r\n pageSize,\r\n zipCode,\r\n this.resolveGetAddress, this.logError);\r\n\r\n const {\r\n total\r\n } = this.state;\r\n\r\n if (total) {\r\n const previousSize = pageSize;\r\n // Fix 60\r\n this.setState({\r\n pageSize: 0\r\n }, () => {\r\n this.setState({\r\n pageNumber: 0,\r\n pageSize: previousSize\r\n });\r\n });\r\n }\r\n break;\r\n case 'finishId':\r\n // Get action of button\r\n const confirmationIndex: number =\r\n components.fieldsGroups.findIndex(x => x.id === 'confirmationGroup');\r\n const finishButtonId: number =\r\n components.fieldsGroups[confirmationIndex].fields.findIndex(x => x.data.id === 'finishId');\r\n if (confirmationIndex > -1 && finishButtonId > -1) {\r\n const actionUrl: string | undefined = components.fieldsGroups[confirmationIndex].fields[finishButtonId].actionUrl;\r\n if (actionUrl) {\r\n window.location.assign(actionUrl);\r\n }\r\n else {\r\n window.location.assign(`${Constants.webUrl}/Admissions/Inquiries`);\r\n }\r\n }\r\n break;\r\n default:\r\n const actionUrl: string | undefined =\r\n components.steps[Number(fieldId[1])].\r\n fieldsGroups[Number(fieldId[2])].\r\n fields[Number(fieldId[3])].actionUrl;\r\n if (actionUrl) {\r\n window.location.assign(actionUrl);\r\n }\r\n else {\r\n window.location.assign(`${Constants.webUrl}/Admissions/Inquiries`);\r\n }\r\n break;\r\n }\r\n }\r\n\r\n } catch (e) {\r\n LayoutActions.setLoading(false);\r\n this.logError(LogData.fromException(this.onClickButton.name, e));\r\n }\r\n };\r\n\r\n private onClickInstitutionLink = (institutionName?: string, etsCode?: string, ficeCode?: string,\r\n city?: string, stateProvinceId?: number, countryId?: number): void => {\r\n try {\r\n const {\r\n components,\r\n selectedFieldId\r\n } = this.state;\r\n\r\n if (selectedFieldId && components) {\r\n const fieldId: string[] = selectedFieldId.split('|');\r\n\r\n const fieldGroup: IFieldForm[] =\r\n components.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields;\r\n\r\n if (fieldId.length > 4) {\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationInstitutionName', true, institutionName);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationEtsCodeId', true, etsCode);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationFiceCode', true, ficeCode);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationCityId', true, city);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationStateId', true, stateProvinceId);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationCountryId', true, countryId);\r\n }\r\n else {\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationInstitutionName', false, institutionName);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationEtsCodeId', false, etsCode);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationFiceCode', false, ficeCode);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationCityId', false, city);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationStateId', false, stateProvinceId);\r\n this.assignFieldValue(fieldGroup, fieldId, 'educationCountryId', false, countryId);\r\n }\r\n }\r\n\r\n this.setState({\r\n openETSSearchModal: false\r\n });\r\n\r\n } catch (e) {\r\n this.logError(LogData.fromException(this.onClickInstitutionLink.name, e));\r\n }\r\n };\r\n\r\n private onClickZipCodeLink = (zipCode?: string, city?: string, stateProvinceId?: number, countryId?: number,\r\n countyId?: number): void => {\r\n try {\r\n const {\r\n components,\r\n selectedFieldId\r\n } = this.state;\r\n\r\n if (selectedFieldId && components) {\r\n const fieldId: string[] = selectedFieldId.split('|');\r\n\r\n const fieldGroup: IFieldForm[] =\r\n components.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields;\r\n\r\n if (fieldId.length > 4) {\r\n this.assignFieldValue(fieldGroup, fieldId, 'addressCityId', true, city);\r\n this.assignFieldValue(fieldGroup, fieldId, 'stateProvinceId', true, stateProvinceId);\r\n this.assignFieldValue(fieldGroup, fieldId, 'postalCodeId', true, zipCode);\r\n this.assignFieldValue(fieldGroup, fieldId, 'addressCountyId', true, countyId);\r\n this.assignFieldValue(fieldGroup, fieldId, 'addressCountryId', true, countryId);\r\n }\r\n else {\r\n this.assignFieldValue(fieldGroup, fieldId, 'addressCityId', false, city);\r\n this.assignFieldValue(fieldGroup, fieldId, 'stateProvinceId', false, stateProvinceId);\r\n this.assignFieldValue(fieldGroup, fieldId, 'postalCodeId', false, zipCode);\r\n this.assignFieldValue(fieldGroup, fieldId, 'addressCountyId', false, countyId);\r\n this.assignFieldValue(fieldGroup, fieldId, 'addressCountryId', false, countryId);\r\n }\r\n }\r\n\r\n this.setState({\r\n openAddressSearchModal: false\r\n });\r\n\r\n } catch (e) {\r\n this.logError(LogData.fromException(this.onClickZipCodeLink.name, e));\r\n }\r\n };\r\n\r\n private onCloseAddressSearchModal = (): void => {\r\n try {\r\n this.setState({\r\n addresses: [],\r\n hasSearchZipCode: false,\r\n openAddressSearchModal: false,\r\n selectedZipCode: undefined\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onCloseAddressSearchModal.name, e));\r\n }\r\n };\r\n\r\n private onCloseETSSearchModal = (): void => {\r\n try {\r\n this.setState({\r\n institutions: [],\r\n openETSSearchModal: false,\r\n selectedCity: undefined,\r\n selectedCountry: undefined,\r\n selectedEtsCode: undefined,\r\n selectedInstitutionName: undefined,\r\n selectedState: undefined\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onCloseETSSearchModal.name, e));\r\n }\r\n };\r\n\r\n private onDeleteItem = (event: any): void => {\r\n try {\r\n const {\r\n errors,\r\n components,\r\n inquiry\r\n } = this.state;\r\n\r\n if (components) {\r\n const newComponents: IApplicationForm = { ...components };\r\n const inq: IInquiry = inquiry;\r\n if (event.currentTarget.id) {\r\n const buttonId: string[] = event.currentTarget.id.split('|');\r\n const componentName: string = newComponents.steps[buttonId[1]].fieldsGroups[buttonId[2]].id;\r\n const fields: IFieldForm[] = newComponents.steps[buttonId[1]].fieldsGroups[buttonId[2]].fields;\r\n if (fields) {\r\n let fieldIndex: number;\r\n do {\r\n fieldIndex = fields.findIndex(x => x.data.section === Number(buttonId[4]));\r\n if (fieldIndex > -1) {\r\n fields.splice(fieldIndex, 1);\r\n }\r\n } while (fieldIndex > -1);\r\n }\r\n newComponents.steps[Number(buttonId[1])].fieldsGroups[Number(buttonId[2])].fields = fields;\r\n\r\n // Delete section from sectionErrors\r\n const sectionIndex = errors[Number(buttonId[1])].groupErrors[Number(buttonId[2])].sectionErrors.findIndex(\r\n section => section.sectionIndex === Number(buttonId[4]));\r\n if (sectionIndex > -1) {\r\n errors[Number(buttonId[1])].groupErrors[Number(buttonId[2])].sectionErrors.splice(sectionIndex, 1);\r\n }\r\n\r\n switch (componentName) {\r\n case 'phoneGroup':\r\n // Search for primary selected in phone group\r\n const primaryPhoneField: IFieldForm[] = newComponents.steps[buttonId[1]].fieldsGroups[buttonId[2]]\r\n .fields.filter(x => x.data.id.substr(0, 'primaryPhoneId'.length) === 'primaryPhoneId' && x.value === '1');\r\n // If doesn't exist, select first item as primary\r\n if (primaryPhoneField.length === 0) {\r\n const firstPrimaryPhoneField: number = newComponents.steps[buttonId[1]].fieldsGroups[buttonId[2]]\r\n .fields.findIndex(x => x.data.id === 'primaryPhoneId');\r\n if (firstPrimaryPhoneField > -1) {\r\n newComponents.steps[buttonId[1]].fieldsGroups[buttonId[2]]\r\n .fields[firstPrimaryPhoneField].value = '1';\r\n }\r\n }\r\n break;\r\n }\r\n const fieldGroup: IFieldsGroup =\r\n newComponents.steps[buttonId[1]].fieldsGroups[buttonId[2]];\r\n let maxAdd: number;\r\n if (fieldGroup.maximumAllowed) {\r\n maxAdd = Number(fieldGroup.maximumAllowed) - 1;\r\n }\r\n else {\r\n maxAdd = 99;\r\n }\r\n if (errors[buttonId[1]].groupErrors[buttonId[2]].sectionErrors.length < maxAdd) {\r\n // Add more button if it was remove\r\n newComponents.steps[buttonId[1]].fieldsGroups[buttonId[2]].isMultiple = true;\r\n }\r\n }\r\n\r\n this.setState({\r\n components: newComponents,\r\n errors: errors,\r\n inquiry: inq\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onDeleteItem.name, e));\r\n }\r\n };\r\n\r\n private onNextStep = (): void => {\r\n try {\r\n const {\r\n activeStep\r\n } = this.state;\r\n\r\n this.setState({\r\n activeStep: activeStep + 1\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onNextStep.name, e));\r\n }\r\n };\r\n\r\n private onSubmit = (): void => {\r\n try {\r\n const {\r\n components,\r\n inquiry\r\n } = this.state;\r\n\r\n const applicationTop: HTMLElement | null = document.getElementById('applicationTop');\r\n if (applicationTop) {\r\n applicationTop.scrollIntoView();\r\n }\r\n\r\n if (components) {\r\n components.steps.forEach(step => {\r\n step.fieldsGroups.forEach(fieldsGroup => {\r\n fieldsGroup.fields.forEach(field => {\r\n field.value = field.value ? field.value : field.default;\r\n this.setApplicationValues(field.data.id, field.value);\r\n });\r\n });\r\n });\r\n }\r\n\r\n this.setState({\r\n components\r\n });\r\n\r\n const {\r\n isReCaptchaSubmitInquiryEnabled\r\n } = this.state;\r\n\r\n let reCaptchaResponse: string = '';\r\n if (isReCaptchaSubmitInquiryEnabled && this.reCaptchaRef?.current) {\r\n reCaptchaResponse = this.reCaptchaRef.current.getValue();\r\n this.setState({\r\n reCaptchaError: !Boolean(reCaptchaResponse)\r\n });\r\n }\r\n\r\n const allRequiredFields: boolean = this.reviewRequiredFields();\r\n if (!isReCaptchaSubmitInquiryEnabled || reCaptchaResponse) {\r\n this.setState({\r\n reCaptchaError: false\r\n });\r\n\r\n if (allRequiredFields) {\r\n if (inquiry) {\r\n LayoutActions.setLoading(true);\r\n RequestsInquiry.postSubmit(inquiry, this.resolveSubmitInquiry, this.logError);\r\n }\r\n }\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onSubmit.name, e));\r\n }\r\n };\r\n\r\n // #region ReCaptcha\r\n private onRecaptchaChange = (token: any): void => {\r\n try {\r\n this.setState({\r\n reCaptchaError: !Boolean(token)\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onRecaptchaChange.name, e));\r\n }\r\n };\r\n\r\n private onReCaptchaError = (): void => {\r\n try {\r\n this.setState({\r\n reCaptchaError: true\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onReCaptchaError.name, e));\r\n }\r\n };\r\n // #endregion ReCaptcha\r\n // #endregion Events\r\n\r\n // #region Functions\r\n private assignFieldValue = (fieldGroup: IFieldForm[], fieldId: string[],\r\n fieldIdName: string, isSectionField: boolean, value?: any): void => {\r\n const {\r\n components\r\n } = this.state;\r\n\r\n if (components) {\r\n let fieldIndex: number = 1;\r\n if (isSectionField) {\r\n fieldIndex = fieldGroup.findIndex(x => x.data.section === Number(fieldId[4]) &&\r\n x.data.id.substr(0, fieldIdName.length) === fieldIdName);\r\n }\r\n else {\r\n fieldIndex = fieldGroup.findIndex(x => x.data.id === fieldIdName);\r\n }\r\n if (fieldIndex > -1) {\r\n components.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].\r\n fields[fieldIndex].value = value;\r\n }\r\n }\r\n };\r\n\r\n private cleanErrorMessages = (fieldId: string[], newComponents: IApplicationForm): IApplicationForm => {\r\n if (fieldId && fieldId[1] && fieldId[2] && fieldId[3]) {\r\n let field: IFieldForm | undefined;\r\n\r\n if (fieldId.length > 4) {\r\n const fieldGroup: IFieldForm[] =\r\n newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields;\r\n field =\r\n fieldGroup.find(x => x.data.id.split('|')[3] === fieldId[3] && x.data.id.split('|')[4] === fieldId[4]);\r\n }\r\n else {\r\n field =\r\n newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n }\r\n\r\n if (field !== undefined) {\r\n if ((field.data.errorMessageDuplicate === undefined ||\r\n field.data.errorMessageDuplicate === null) &&\r\n (field.data.errorMessageFormat === undefined ||\r\n field.data.errorMessageFormat === null) &&\r\n (field.data.errorMessageNotValid === undefined ||\r\n field.data.errorMessageNotValid === null) &&\r\n (field.data.errorMessageNumeric === undefined ||\r\n field.data.errorMessageNumeric === null) &&\r\n (field.data.errorMessagePrimary === undefined ||\r\n field.data.errorMessagePrimary === null) &&\r\n (field.data.errorMessageRange === undefined ||\r\n field.data.errorMessageRange === null)) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n }\r\n }\r\n }\r\n return newComponents;\r\n };\r\n\r\n private copyField = (id: string, stepIndex: number, fieldGroupIndex: number,\r\n groupLength: number, sectionNumber: number, newComponents: IApplicationForm): IApplicationForm => {\r\n try {\r\n const fields: any =\r\n newComponents.steps[stepIndex].fieldsGroups[fieldGroupIndex].fields;\r\n const fieldIndex: number =\r\n fields.findIndex(x => x.data.id === id);\r\n\r\n const copiedField: IFieldForm = fields[fieldIndex];\r\n const newField: IFieldForm = JSON.parse(JSON.stringify(copiedField));\r\n\r\n newField.data.id =\r\n `${id}|${stepIndex}|${fieldGroupIndex}|${groupLength}|${sectionNumber}`;\r\n newField.value = copiedField.default ? copiedField.default : '';\r\n newField.data.error = false;\r\n newField.data.helperText = '';\r\n newField.data.modified = true;\r\n newField.data.section = sectionNumber;\r\n fields.push(newField);\r\n newComponents.steps[stepIndex].fieldsGroups[fieldGroupIndex].fields = fields;\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.copyField.name, e));\r\n }\r\n return newComponents;\r\n };\r\n\r\n private createNewSection = (components: IApplicationForm, fieldGroup: IFieldsGroup, errors: IApplicationErrors[],\r\n stepIndex: number, fieldGroupIndex: number, count: number, errorTexId: string, expanded): void => {\r\n let newComponents: IApplicationForm = components;\r\n const groupLength: number = fieldGroup.fields.length;\r\n /* Initialization of SectionErrors in errors state variable and set of\r\n * SectionIndex = sectionErrors.length -1; \r\n */\r\n const sectionIndex: number = errors[stepIndex].groupErrors[fieldGroupIndex].sectionErrors.push(\r\n { sectionIndex: count, isSectionError: false, fieldsErrors: [] }) - 1;\r\n\r\n fieldGroup.fields.forEach((field, i) => {\r\n if (!field.data.modified) {\r\n if (field.data.id !== errorTexId) {\r\n newComponents = this.copyField(field.data.id, stepIndex,\r\n fieldGroupIndex, (groupLength - 1) + i, count, newComponents);\r\n }\r\n // Initialization of FieldErrors in errors state variable\r\n errors[stepIndex].groupErrors[fieldGroupIndex].sectionErrors[sectionIndex].fieldsErrors.push(\r\n { fieldId: field.data.id, isFieldError: false }\r\n );\r\n }\r\n });\r\n\r\n this.onAddDeleteButton(fieldGroup, stepIndex, fieldGroupIndex, (groupLength - 1), count);\r\n\r\n let maxAdd: number;\r\n if (fieldGroup.maximumAllowed) {\r\n maxAdd = Number(fieldGroup.maximumAllowed) - 1;\r\n }\r\n else {\r\n maxAdd = 99;\r\n }\r\n if (errors && errors[stepIndex].groupErrors[fieldGroupIndex].sectionErrors.length < maxAdd) {\r\n fieldGroup.isMultiple = true;\r\n }\r\n else {\r\n fieldGroup.isMultiple = false;\r\n }\r\n\r\n this.setState({\r\n components: newComponents,\r\n errors: errors,\r\n expanded: fieldGroup.isExpansionPanel ?\r\n `panel|${stepIndex}|${fieldGroupIndex}|${count}` : expanded\r\n });\r\n };\r\n\r\n private onChangePage = (_event: any, page: number): void => {\r\n try {\r\n this.setState({\r\n pageNumber: page\r\n });\r\n\r\n LayoutActions.setLoading(true);\r\n\r\n const {\r\n selectedInstitutionName,\r\n selectedEtsCode,\r\n selectedCity,\r\n selectedState,\r\n selectedCountry,\r\n pageSize\r\n } = this.state;\r\n\r\n RequestsInquiry.getInstitutions(\r\n page,\r\n pageSize,\r\n selectedInstitutionName,\r\n selectedEtsCode,\r\n selectedCity,\r\n selectedState,\r\n selectedCountry,\r\n this.resolveGetInstitutions, this.logError);\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangePage.name, e));\r\n }\r\n };\r\n\r\n private onChangePageAddress = (_event: any, page: number): void => {\r\n try {\r\n this.setState({\r\n pageNumber: page\r\n });\r\n\r\n LayoutActions.setLoading(true);\r\n\r\n const {\r\n selectedZipCode,\r\n pageSize\r\n } = this.state;\r\n\r\n RequestsInquiry.getAddresses(\r\n page,\r\n pageSize,\r\n selectedZipCode,\r\n this.resolveGetAddress, this.logError);\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangePage.name, e));\r\n }\r\n };\r\n\r\n private onChangeRowsPerPage = (event: any): void => {\r\n try {\r\n this.setState({\r\n pageSize: Number(event.target.value)\r\n });\r\n\r\n LayoutActions.setLoading(true);\r\n\r\n const {\r\n selectedInstitutionName,\r\n selectedEtsCode,\r\n selectedCity,\r\n selectedState,\r\n selectedCountry,\r\n pageNumber\r\n } = this.state;\r\n\r\n RequestsInquiry.getInstitutions(\r\n pageNumber,\r\n Number(event.target.value),\r\n selectedInstitutionName,\r\n selectedEtsCode,\r\n selectedCity,\r\n selectedState,\r\n selectedCountry,\r\n this.resolveGetInstitutions, this.logError);\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeRowsPerPage.name, e));\r\n }\r\n };\r\n\r\n private onChangeRowsPerPageAddress = (event: any): void => {\r\n try {\r\n this.setState({\r\n pageSize: Number(event.target.value)\r\n });\r\n\r\n LayoutActions.setLoading(true);\r\n\r\n const {\r\n selectedZipCode,\r\n pageNumber\r\n } = this.state;\r\n\r\n RequestsInquiry.getAddresses(\r\n pageNumber,\r\n Number(event.target.value),\r\n selectedZipCode,\r\n this.resolveGetAddress, this.logError);\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeRowsPerPage.name, e));\r\n }\r\n };\r\n\r\n private onClearAddress = (): void => {\r\n try {\r\n this.setState({\r\n addresses: [],\r\n hasSearchZipCode: false,\r\n selectedZipCode: undefined\r\n });\r\n }\r\n catch (e) {\r\n throw e;\r\n }\r\n };\r\n\r\n private onClearInstitution = (): void => {\r\n try {\r\n this.setState({\r\n institutions: [],\r\n selectedCity: undefined,\r\n selectedCountry: undefined,\r\n selectedEtsCode: undefined,\r\n selectedInstitutionName: undefined,\r\n selectedState: undefined\r\n });\r\n }\r\n catch (e) {\r\n throw e;\r\n }\r\n };\r\n\r\n private onPrimaryButtonClick = (fieldId: string[], newComponents: IApplicationForm, value: any): IApplicationForm => {\r\n try {\r\n const phoneFields: any = newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])];\r\n let field: any = [];\r\n let numRow: number = 4;\r\n\r\n field = newComponents;\r\n phoneFields.fields.forEach(function (item, row) {\r\n const idFields: string[] = item.data.id.split('|');\r\n if (fieldId[0] === idFields[0]) {\r\n if (fieldId[3] !== idFields[3] || fieldId[4] !== idFields[4]) {\r\n item.value = '';\r\n }\r\n else {\r\n numRow = row;\r\n }\r\n }\r\n });\r\n\r\n field.steps[Number(fieldId[1])].fieldsGroups[fieldId[2]].fields[Number(numRow)].value = value;\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveLayoutReady.name, e));\r\n }\r\n return newComponents;\r\n };\r\n\r\n private onSearchAddress = (): void => {\r\n try {\r\n LayoutActions.setLoading(true);\r\n\r\n const {\r\n pageSize,\r\n selectedZipCode\r\n } = this.state;\r\n\r\n RequestsInquiry.getAddresses(\r\n 0,\r\n pageSize,\r\n selectedZipCode,\r\n this.resolveGetAddress, this.logError);\r\n\r\n const {\r\n total\r\n } = this.state;\r\n\r\n if (total) {\r\n const previousSize = pageSize;\r\n // Fix 60\r\n this.setState({\r\n pageSize: 0\r\n }, () => {\r\n this.setState({\r\n pageNumber: 0,\r\n pageSize: previousSize\r\n });\r\n });\r\n }\r\n\r\n this.setState({\r\n hasSearchZipCode: true\r\n });\r\n }\r\n catch (e) {\r\n LayoutActions.setLoading(false);\r\n throw e;\r\n }\r\n };\r\n\r\n private onSearchInstitution = (): void => {\r\n try {\r\n LayoutActions.setLoading(true);\r\n\r\n const {\r\n selectedCity,\r\n selectedEtsCode,\r\n selectedInstitutionName,\r\n selectedState,\r\n selectedCountry,\r\n pageSize\r\n } = this.state;\r\n\r\n RequestsInquiry.getInstitutions(\r\n 0,\r\n pageSize,\r\n selectedInstitutionName,\r\n selectedEtsCode,\r\n selectedCity,\r\n selectedState,\r\n selectedCountry,\r\n this.resolveGetInstitutions, this.logError);\r\n\r\n const {\r\n total\r\n } = this.state;\r\n\r\n if (total) {\r\n const previousSize = pageSize;\r\n // Fix 60\r\n this.setState({\r\n pageSize: 0\r\n }, () => {\r\n this.setState({\r\n pageNumber: 0,\r\n pageSize: previousSize\r\n });\r\n });\r\n }\r\n }\r\n catch (e) {\r\n LayoutActions.setLoading(false);\r\n throw e;\r\n }\r\n };\r\n\r\n private reviewActivities = (fieldsGroup: IFieldsGroup): boolean => {\r\n const {\r\n activityCount,\r\n inquiry\r\n } = this.state;\r\n\r\n let isValid = true;\r\n\r\n let activityList: IApplicationActivity[] = [];\r\n const activity: IApplicationActivity = {};\r\n\r\n let activityTypefield: IFieldForm | undefined;\r\n if (activityTypefield = fieldsGroup.fields.find(x => x.data.id === 'activityTypeId')) {\r\n activity.activityType = activityTypefield.value;\r\n }\r\n let activityField: IFieldForm | undefined;\r\n if (activityField = fieldsGroup.fields.find(x => x.data.id === 'activityId')) {\r\n activity.activity = activityField.value;\r\n }\r\n let positionHeldField: IFieldForm | undefined;\r\n if (positionHeldField = fieldsGroup.fields.find(x => x.data.id === 'positionHeldId')) {\r\n activity.position = positionHeldField.value;\r\n }\r\n let numberOfHoursPerWeekField: IFieldForm | undefined;\r\n if (numberOfHoursPerWeekField = fieldsGroup.fields.find(x => x.data.id === 'numberOfHoursPerWeekId')) {\r\n activity.hoursPerWeek = numberOfHoursPerWeekField.value;\r\n }\r\n let numberOfWeeksPerYearField: IFieldForm | undefined;\r\n if (numberOfWeeksPerYearField = fieldsGroup.fields.find(x => x.data.id === 'numberOfWeeksPerYearId')) {\r\n activity.weeksPerYear = numberOfWeeksPerYearField.value;\r\n }\r\n let numberOfYearsField: IFieldForm | undefined;\r\n if (numberOfYearsField = fieldsGroup.fields.find(x => x.data.id === 'numberOfYearsId')) {\r\n activity.numberOfYears = numberOfYearsField.value;\r\n }\r\n let participated9Field: IFieldForm | undefined;\r\n if (participated9Field = fieldsGroup.fields.find(x => x.data.id === 'participated9Id')) {\r\n activity.participatedGrade09 = participated9Field.value;\r\n }\r\n let participated10Field: IFieldForm | undefined;\r\n if (participated10Field = fieldsGroup.fields.find(x => x.data.id === 'participated10Id')) {\r\n activity.participatedGrade10 = participated10Field.value;\r\n }\r\n let participated11Field: IFieldForm | undefined;\r\n if (participated11Field = fieldsGroup.fields.find(x => x.data.id === 'participated11Id')) {\r\n activity.participatedGrade11 = participated11Field.value;\r\n }\r\n let participated12Field: IFieldForm | undefined;\r\n if (participated12Field = fieldsGroup.fields.find(x => x.data.id === 'participated12Id')) {\r\n activity.participatedGrade12 = participated12Field.value;\r\n }\r\n let participatedPostSecondaryField: IFieldForm | undefined;\r\n if (participatedPostSecondaryField = fieldsGroup.fields.find(x => x.data.id === 'participatedPostSecondaryId')) {\r\n activity.participatedPostsecondary = participatedPostSecondaryField.value;\r\n }\r\n\r\n // XNOR\r\n // If any required fields or none are filled that is allowed\r\n activity.activityType = activity.activityType || 0;\r\n activity.activity = activity.activity || 0;\r\n if (!(activity.activityType !== 0 && activity.activity !== 0) &&\r\n (activity.activityType !== 0 || activity.activity !== 0)) {\r\n return false;\r\n }\r\n\r\n activityList = this.setApplicationActivitiesValues(activity, activityList);\r\n\r\n let i: number = 0;\r\n do {\r\n let activityItem: IApplicationActivity = {};\r\n activityItem = this.setApplicationActivitiesAdditional(fieldsGroup, i, activityItem);\r\n\r\n // Duplicated\r\n if (activityList.find(x => x.activityType === activityItem.activityType &&\r\n x.activity === activityItem.activity)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'activityErrosId'.length) === 'activityErrosId' &&\r\n x.data.section === i);\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageDuplicate;\r\n field.data.error = true;\r\n });\r\n return false;\r\n }\r\n\r\n activityList = this.setApplicationActivitiesValues(activityItem, activityList);\r\n\r\n i++;\r\n } while (i < activityCount);\r\n\r\n if (activityList.length > 0) {\r\n // Required fields should be filled\r\n activityList.forEach(activity => {\r\n if (activity.position || activity.hoursPerWeek ||\r\n activity.weeksPerYear || activity.numberOfYears ||\r\n activity.participatedGrade09 || activity.participatedGrade10 ||\r\n activity.participatedGrade11 || activity.participatedGrade12 ||\r\n activity.participatedPostsecondary) {\r\n if ((activity.activityType === null || activity.activityType === 0) &&\r\n (activity.activity === null || activity.activity === 0)) {\r\n isValid = false;\r\n }\r\n }\r\n });\r\n }\r\n // List is empty so no error should be show\r\n else {\r\n fieldsGroup.fields.forEach(field => {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n });\r\n isValid = true;\r\n }\r\n if (isValid) {\r\n inquiry.activities = activityList;\r\n }\r\n\r\n this.setState({\r\n inquiry\r\n });\r\n\r\n return isValid;\r\n };\r\n\r\n private reviewAddress = (fieldsGroup: IFieldsGroup): boolean => {\r\n const {\r\n addressessCount,\r\n inquiry\r\n } = this.state;\r\n\r\n const addressList: IApplicationAddress[] = [];\r\n let address: IApplicationAddress = { isPrimary: false };\r\n\r\n address = this.setApplicationAddress(fieldsGroup, address);\r\n address = this.setApplicationAddressValues(address);\r\n\r\n if (address.type !== 0 && address.line1 !== '' &&\r\n address.city !== '' && address.country !== 0) {\r\n address.isPrimary = true;\r\n addressList.push(address);\r\n }\r\n else if (address.line2 || address.line3 || address.line4 ||\r\n address.city || address.stateProvince || address.postalCode ||\r\n address.county) {\r\n addressList.push(address);\r\n }\r\n\r\n let i: number = 0;\r\n do {\r\n let address: IApplicationAddress = { isPrimary: false };\r\n address = this.setApplicationAddressAdditional(fieldsGroup, i, address);\r\n\r\n // Duplicated\r\n if (addressList.find(x => x.type === address.type)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'addressErrorsId'.length) === 'addressErrorsId' &&\r\n x.data.section === i);\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageDuplicate;\r\n field.data.error = true;\r\n });\r\n return false;\r\n }\r\n\r\n address = this.setApplicationAddressValues(address);\r\n\r\n if (address.type !== 0 && address.line1 !== '' &&\r\n address.city !== '' && address.country !== 0) {\r\n addressList.push(address);\r\n }\r\n else if (address.line2 !== '' || address.line3 !== '' || address.line4 !== '' ||\r\n address.city !== '' || address.stateProvince !== 0 || address.postalCode !== '' ||\r\n address.county !== 0) {\r\n addressList.push(address);\r\n }\r\n i++;\r\n } while (i < addressessCount);\r\n\r\n inquiry.addresses = addressList;\r\n\r\n this.setState({\r\n inquiry\r\n });\r\n\r\n return true;\r\n };\r\n\r\n private reviewEducation = (fieldsGroup: IFieldsGroup): boolean => {\r\n const {\r\n components,\r\n educationCount,\r\n inquiry\r\n } = this.state;\r\n\r\n let isValid: boolean = true;\r\n const educationList: IApplicationEducation[] = [];\r\n let education: IApplicationEducation = {\r\n enrollment: {},\r\n institution: {\r\n city: '',\r\n countryDesc: '',\r\n etsCode: '',\r\n ficeCode: '',\r\n id: 0,\r\n name: '',\r\n stateDesc: ''\r\n }\r\n };\r\n\r\n education = this.setApplicationEducation(fieldsGroup, education);\r\n education = this.setApplicationEducationValues(education);\r\n\r\n if (education.institution.city || education.enrollment.startDate || education.enrollment.endDate ||\r\n education.institution.etsCode || education.institution.name || education.institution.ficeCode) {\r\n educationList.push(education);\r\n }\r\n else if (education.enrollment.curriculumId && education.enrollment.curriculumId > 0 ||\r\n education.enrollment.honorsId && education.enrollment.honorsId > 0 ||\r\n education.enrollment.degreeId && education.enrollment.degreeId > 0 ||\r\n education.enrollment.degreeId && education.enrollment.degreeId > 0 ||\r\n education.institution.id && education.institution.id > 0 ||\r\n education.institution.stateProvinceId && education.institution.stateProvinceId > 0 ||\r\n education.institution.countryId && education.institution.countryId > 0) {\r\n educationList.push(education);\r\n }\r\n\r\n // Dates\r\n if (education.enrollment.startDate && education.enrollment.endDate) {\r\n if (components && (education.enrollment.startDate || education.enrollment.endDate)) {\r\n if (moment(education.enrollment.startDate).format(Constants.dateFormatMoment) > moment(education.enrollment.endDate).format(Constants.dateFormatMoment)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id === 'educationErrosId');\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageNotValid;\r\n field.data.error = true;\r\n });\r\n return false;\r\n }\r\n else if (moment(education.enrollment.startDate).format(Constants.dateFormatMoment) < moment(education.enrollment.endDate).format(Constants.dateFormatMoment)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id === 'educationErrosId');\r\n fieldsById.forEach(field => {\r\n field.data.label = '';\r\n field.data.error = false;\r\n });\r\n }\r\n else if (education.enrollment && education.enrollment.startDate && education.enrollment.endDate &&\r\n (education.enrollment.startDate < moment(components.dateTimeMin).format(Constants.dateFormatMoment) ||\r\n education.enrollment.endDate > moment(components.dateTimeMax).format(Constants.dateFormatMoment))) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id === 'educationErrosId');\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageRange\r\n + moment(components.dateTimeMin).format('YYYY') + '-' +\r\n + moment(components.dateTimeMax).format('YYYY');\r\n field.data.error = true;\r\n });\r\n return false;\r\n }\r\n else if (education.enrollment && education.enrollment.startDate && education.enrollment.endDate &&\r\n (education.enrollment.startDate < moment(components.dateTimeMin).format(Constants.dateFormatMoment) ||\r\n education.enrollment.endDate < moment(components.dateTimeMax).format(Constants.dateFormatMoment))) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id === 'educationErrosId');\r\n fieldsById.forEach(field => {\r\n field.data.label = '';\r\n field.data.error = false;\r\n });\r\n }\r\n }\r\n }\r\n\r\n let i: number = 0;\r\n do {\r\n let education: IApplicationEducation = {\r\n enrollment: {},\r\n institution: {\r\n city: '',\r\n countryDesc: '',\r\n etsCode: '',\r\n ficeCode: '',\r\n id: 0,\r\n name: '',\r\n stateDesc: ''\r\n }\r\n };\r\n\r\n education = this.setApplicationEducationAdditional(fieldsGroup, i, education);\r\n education = this.setApplicationEducationValues(education);\r\n\r\n // Dates\r\n if (education.enrollment.startDate && education.enrollment.endDate) {\r\n if (components && (education.enrollment.startDate || education.enrollment.endDate)) {\r\n if (moment(education.enrollment.startDate).format(Constants.dateFormatMoment) >\r\n moment(education.enrollment.endDate).format(Constants.dateFormatMoment)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'educationErrosId'.length) === 'educationErrosId' &&\r\n x.data.section === i);\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageNotValid;\r\n field.data.error = true;\r\n });\r\n return false;\r\n }\r\n else if (moment(education.enrollment.startDate).format(Constants.dateFormatMoment) <\r\n moment(education.enrollment.endDate).format(Constants.dateFormatMoment)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'educationErrosId'.length) === 'educationErrosId' &&\r\n x.data.section === i);\r\n fieldsById.forEach(field => {\r\n field.data.label = '';\r\n field.data.error = false;\r\n });\r\n }\r\n else if (education.enrollment && education.enrollment.startDate && education.enrollment.endDate &&\r\n (education.enrollment.startDate < moment(components.dateTimeMin).format(Constants.dateFormatMoment) ||\r\n education.enrollment.endDate > moment(components.dateTimeMax).format(Constants.dateFormatMoment))) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'educationErrosId'.length) === 'educationErrosId' &&\r\n x.data.section === i);\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageRange\r\n + moment(components.dateTimeMin).format('YYYY') + '-' +\r\n + moment(components.dateTimeMax).format('YYYY');\r\n field.data.error = true;\r\n });\r\n return false;\r\n }\r\n else if (education.enrollment && education.enrollment.startDate && education.enrollment.endDate &&\r\n (education.enrollment.startDate < moment(components.dateTimeMin).format(Constants.dateFormatMoment) ||\r\n education.enrollment.endDate < moment(components.dateTimeMax).format(Constants.dateFormatMoment))) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'educationErrosId'.length) === 'educationErrosId' &&\r\n x.data.section === i);\r\n fieldsById.forEach(field => {\r\n field.data.label = '';\r\n field.data.error = false;\r\n });\r\n }\r\n }\r\n }\r\n // Duplicated\r\n if (education.enrollment && education.enrollment.degreeId && education.enrollment.curriculumId &&\r\n education.enrollment.honorsId &&\r\n (education.enrollment.degreeId > 0 && education.enrollment.curriculumId > 0 &&\r\n education.enrollment.honorsId > 0)) {\r\n if (educationList.find(x => x.enrollment.degreeId === education.enrollment.degreeId &&\r\n x.enrollment.curriculumId === education.enrollment.curriculumId &&\r\n x.enrollment.honorsId === education.enrollment.honorsId)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'educationErrosId'.length) === 'educationErrosId' &&\r\n x.data.section === i);\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageDuplicate;\r\n field.data.error = true;\r\n });\r\n return false;\r\n }\r\n }\r\n else {\r\n if (education.institution.etsCode) {\r\n if (educationList.find(x => x.institution.etsCode === education.institution.etsCode)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'educationErrosId'.length) === 'educationErrosId');\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageDuplicate;\r\n field.data.error = true;\r\n });\r\n return false;\r\n }\r\n }\r\n }\r\n\r\n if (education.institution.city || education.enrollment.startDate || education.enrollment.endDate ||\r\n education.institution.etsCode || education.institution.city || education.institution.ficeCode) {\r\n educationList.push(education);\r\n }\r\n else if (education.enrollment && education.enrollment.curriculumId && education.enrollment.honorsId &&\r\n education.institution.stateProvinceId && education.institution.countryId &&\r\n (education.enrollment.curriculumId > 0 || education.enrollment.honorsId > 0 ||\r\n education.institution.id > 0 || education.institution.stateProvinceId > 0 ||\r\n education.institution.countryId > 0)) {\r\n educationList.push(education);\r\n }\r\n i++;\r\n } while (i < educationCount);\r\n\r\n // Education is required\r\n if (fieldsGroup.isRequired) {\r\n // List is no empty so no error should be show.\r\n if (educationList.length > 0) {\r\n isValid = true;\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id === 'educationErrosId');\r\n fieldsById.forEach(field => {\r\n field.data.label = '';\r\n field.data.error = false;\r\n });\r\n }\r\n // List is empty so error should be show.\r\n else {\r\n isValid = false;\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id === 'educationErrosId');\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageRequired;\r\n field.data.error = true;\r\n });\r\n }\r\n }\r\n // Education is include\r\n else {\r\n // List is empty so no error should be show\r\n if (educationList.length === 0) {\r\n fieldsGroup.fields.forEach(field => {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n });\r\n isValid = true;\r\n }\r\n }\r\n if (isValid) {\r\n inquiry.education = educationList;\r\n }\r\n this.setState({\r\n inquiry: inquiry\r\n });\r\n\r\n return isValid;\r\n };\r\n\r\n private reviewIpeds = (fieldsGroup: IFieldsGroup): boolean => {\r\n const {\r\n inquiry\r\n } = this.state;\r\n\r\n let isValid = true;\r\n const hispanicAnswer: string = fieldsGroup.fields[2].value;\r\n\r\n if (hispanicAnswer) {\r\n // If question is responded with NO, user must select at least one subrace\r\n if (hispanicAnswer === '0') {\r\n if (inquiry.ipeds) {\r\n const subRaces: IApplicationIpeds[] =\r\n inquiry.ipeds.filter(x => x.ipedsFederalCategoryId !== 1);\r\n if (subRaces.length === 0) {\r\n isValid = false;\r\n const textErrorIndex: number = fieldsGroup.fields.findIndex(x => x.data.id === 'ipedsErrorsId');\r\n fieldsGroup.fields[textErrorIndex].data.label =\r\n fieldsGroup.errorMessageRequired;\r\n }\r\n }\r\n else {\r\n isValid = false;\r\n const textErrorIndex: number = fieldsGroup.fields.findIndex(x => x.data.id === 'ipedsErrorsId');\r\n fieldsGroup.fields[textErrorIndex].data.label =\r\n fieldsGroup.errorMessageRequired;\r\n }\r\n }\r\n }\r\n else {\r\n // If question was not answered and some subraces were selected, user must answer question\r\n if (inquiry.ipeds && inquiry.ipeds.length > 0) {\r\n isValid = false;\r\n const textErrorIndex: number = fieldsGroup.fields.findIndex(x => x.data.id === 'ipedsErrorsId');\r\n fieldsGroup.fields[textErrorIndex].data.label =\r\n fieldsGroup.errorMessageNotValid;\r\n }\r\n }\r\n return isValid;\r\n };\r\n\r\n private reviewPhoneGroup = (fieldsGroup: IFieldsGroup): boolean => {\r\n const {\r\n inquiry,\r\n phoneCount\r\n } = this.state;\r\n\r\n const phoneList: IApplicationPhoneList[] = [];\r\n\r\n const phone: IApplicationPhoneList = { type: '', countryId: 0, number: '', isPrimary: false };\r\n const phoneTypeField = fieldsGroup.fields.findIndex(x => x.data.id === 'phoneTypeId');\r\n if (phoneTypeField > -1) {\r\n phone.type = fieldsGroup.fields[phoneTypeField].value;\r\n }\r\n const phoneCountryField = fieldsGroup.fields.findIndex(x => x.data.id === 'phoneCountryId');\r\n if (phoneCountryField > -1) {\r\n phone.countryId = fieldsGroup.fields[phoneCountryField].value;\r\n }\r\n const phoneNumberField = fieldsGroup.fields.findIndex(x => x.data.id === 'phoneNumberId');\r\n if (phoneNumberField > -1) {\r\n phone.number = fieldsGroup.fields[phoneNumberField].value;\r\n }\r\n const primaryPhoneField = fieldsGroup.fields.findIndex(x => x.data.id === 'primaryPhoneId');\r\n if (primaryPhoneField > -1) {\r\n phone.isPrimary = fieldsGroup.fields[primaryPhoneField].value === '1' ? true : false;\r\n }\r\n\r\n // Set values\r\n phone.type = phone.type === null ? '' : phone.type;\r\n phone.countryId = phone.countryId === 0 ? 0 : phone.countryId;\r\n phone.number = phone.number === null ? '' : phone.number;\r\n phone.isPrimary = phone.isPrimary === null ? false : phone.isPrimary;\r\n\r\n // Add phone to list\r\n if (phone.type !== '' && phone.countryId !== 0 && phone.number !== '') {\r\n phoneList.push(phone);\r\n }\r\n\r\n let i: number = 0;\r\n do {\r\n const phoneItem: IApplicationPhoneList = { type: '', countryId: 0, number: '', isPrimary: false };\r\n\r\n const fieldsBySection = fieldsGroup.fields.filter(x => x.data.section === i);\r\n fieldsBySection.forEach(field => {\r\n if (field.data.id.substr(0, 'phoneTypeId'.length) === 'phoneTypeId') {\r\n phoneItem.type = field.value;\r\n }\r\n if (field.data.id.substr(0, 'phoneCountryId'.length) === 'phoneCountryId') {\r\n phoneItem.countryId = field.value;\r\n }\r\n if (field.data.id.substr(0, 'phoneNumberId'.length) === 'phoneNumberId') {\r\n phoneItem.number = field.value;\r\n }\r\n if (field.data.id.substr(0, 'primaryPhoneId'.length) === 'primaryPhoneId') {\r\n phoneItem.isPrimary = field.value === '1' ? true : false;\r\n }\r\n });\r\n // Duplicated\r\n if (phoneList.length > 0 &&\r\n phoneList.find(x => x.type === phoneItem.type &&\r\n x.countryId === phoneItem.countryId && x.number === phoneItem.number)) {\r\n const fieldsById =\r\n fieldsGroup.fields.filter(x =>\r\n x.data.id.substr(0, 'phoneErrorsId'.length) === 'phoneErrorsId');\r\n fieldsById.forEach(field => {\r\n field.data.label = fieldsGroup.errorMessageDuplicate;\r\n });\r\n return false;\r\n }\r\n // Set values\r\n phoneItem.type = phoneItem.type === null ? '' : phoneItem.type;\r\n phoneItem.countryId = phoneItem.countryId === 0 ? 0 : phoneItem.countryId;\r\n phoneItem.number = phoneItem.number === null ? '' : phoneItem.number;\r\n phoneItem.isPrimary = phoneItem.isPrimary === null ? false : phoneItem.isPrimary;\r\n\r\n // Add phone to list\r\n if (phoneItem.type !== '' && phoneItem.countryId !== 0 && phoneItem.number !== '') {\r\n phoneList.push(phoneItem);\r\n }\r\n i++;\r\n } while (i < phoneCount);\r\n\r\n inquiry.phones = phoneList;\r\n\r\n this.setState({\r\n inquiry\r\n });\r\n\r\n return true;\r\n };\r\n\r\n private reviewPrograms = (fieldsGroup: IFieldsGroup): boolean => {\r\n const {\r\n inquiry,\r\n programsCount\r\n } = this.state;\r\n\r\n let isValid = true;\r\n\r\n const programList: IApplicationProgram[] = [];\r\n const program: IApplicationProgram = { programId: 0 };\r\n const programField = fieldsGroup.fields.findIndex(x => x.data.id === 'programOfStudydId');\r\n if (programField > -1) {\r\n program.programId = fieldsGroup.fields[programField].value;\r\n }\r\n const commintmentField = fieldsGroup.fields.findIndex(x => x.data.id === 'commitmentId');\r\n if (commintmentField > -1) {\r\n program.commitmentId = fieldsGroup.fields[commintmentField].value;\r\n }\r\n if (program.programId > 0) {\r\n programList.push(program);\r\n }\r\n let i: number = 0;\r\n do {\r\n const program: IApplicationProgram = { programId: 0 };\r\n\r\n const fieldsBySection = fieldsGroup.fields.filter(x => x.data.section === i);\r\n fieldsBySection.forEach(field => {\r\n if (field.data.id.substr(0, 'programOfStudydId'.length) === 'programOfStudydId') {\r\n program.programId = field.value;\r\n }\r\n if (field.data.id.substr(0, 'commitmentId'.length) === 'commitmentId') {\r\n program.commitmentId = field.value;\r\n }\r\n });\r\n if (programList.find(x => x.programId === program.programId)) {\r\n isValid = false;\r\n const textErrorIndex: number = fieldsGroup.fields.findIndex(x => x.data.id === 'programOfStudydErrorsId');\r\n fieldsGroup.fields[textErrorIndex].data.label =\r\n fieldsGroup.errorMessageDuplicate;\r\n }\r\n if (programList.find(x => x.programId ===\r\n program.programId && x.commitmentId === program.commitmentId)) {\r\n isValid = false;\r\n const textErrorIndex: number = fieldsGroup.fields.findIndex(x => x.data.id === 'programOfStudydErrorsId');\r\n fieldsGroup.fields[textErrorIndex].data.label =\r\n fieldsGroup.errorMessageRequired;\r\n }\r\n else if (program.programId > 0) {\r\n programList.push(program);\r\n }\r\n i++;\r\n } while (i < programsCount);\r\n\r\n if (isValid) {\r\n inquiry.programs = programList;\r\n }\r\n\r\n this.setState({\r\n inquiry\r\n });\r\n\r\n return isValid;\r\n };\r\n\r\n private reviewRequiredFields = (): boolean => {\r\n const {\r\n components,\r\n errors,\r\n inquiry\r\n } = this.state;\r\n\r\n let isValid: boolean = true;\r\n if (components) {\r\n let programsValid: boolean = true;\r\n let validPhones: boolean = true;\r\n let ipedsValid: boolean = true;\r\n let addressValid: boolean = true;\r\n let userDefinedValid: boolean = true;\r\n let educationValid: boolean = true;\r\n let activityValid: boolean = true;\r\n\r\n let ids: string[] = [];\r\n let fieldSectionIndex: number;\r\n let fieldId: string;\r\n let sectionErrorIndex: number;\r\n let fieldErrorIndex: number;\r\n\r\n components.steps.forEach((step, stepIndex) => {\r\n fieldErrorIndex = -1;\r\n step.fieldsGroups.forEach((fieldsGroup, groupIndex) => {\r\n fieldsGroup.fields.forEach(field => {\r\n if (field.isRequired && !field.value) {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n isValid = false;\r\n } else if (field.isNumeric && String(field.value).length > 0 && isNaN(Number(field.value))) {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageNumeric;\r\n isValid = false;\r\n } else if (field.isRequired && field.value && field.componentType === 'DatePicker') {\r\n const date = moment(field.value, Constants.dateFormatMoment);\r\n const isDateValid: boolean = date.isValid();\r\n const minDate = new Date(moment().add(-100, 'years').toDate());\r\n const maxDate = new Date(moment().add(+100, 'years').toDate());\r\n\r\n const isDateInRange: boolean =\r\n new Date(moment(field.value).toDate()) >= minDate &&\r\n new Date(moment(field.value).toDate()) <= maxDate;\r\n if (!isDateValid || !isDateInRange) {\r\n field.value = undefined;\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n isValid = false;\r\n }\r\n if (isDateValid && isDateInRange) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n }\r\n } else if (field.value && field.componentType === 'DatePicker') {\r\n const date = moment(field.value, Constants.dateFormatMoment);\r\n const isDateValid: boolean = date.isValid();\r\n const minDate = new Date(moment().add(-100, 'years').toDate());\r\n const maxDate = new Date(moment().add(+100, 'years').toDate());\r\n\r\n const isDateInRange: boolean =\r\n new Date(moment(field.value).toDate()) >= minDate &&\r\n new Date(moment(field.value).toDate()) <= maxDate;\r\n if (isDateValid && !isDateInRange) {\r\n field.value = undefined;\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n isValid = false;\r\n }\r\n }\r\n else {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n }\r\n });\r\n\r\n // #region Programs\r\n if (fieldsGroup.id === 'programOfStudyGroup') {\r\n programsValid = this.reviewPrograms(fieldsGroup);\r\n const textErrorIndex: number = fieldsGroup.fields.findIndex(x => x.data.id === 'programOfStudydErrorsId');\r\n if (!programsValid) {\r\n if (textErrorIndex > -1) {\r\n fieldsGroup.fields[textErrorIndex].data.error = true;\r\n }\r\n }\r\n else {\r\n if (textErrorIndex > -1) {\r\n fieldsGroup.fields[textErrorIndex].data.error = false;\r\n fieldsGroup.fields[textErrorIndex].data.label = '';\r\n }\r\n }\r\n }\r\n // #endregion Programs\r\n\r\n // #region Phones\r\n if (fieldsGroup.id === 'phoneGroup') {\r\n validPhones = this.reviewPhoneGroup(fieldsGroup);\r\n const textErrorIndex: number = fieldsGroup.fields.findIndex(x => x.data.id === 'phoneErrorsId');\r\n if (!validPhones) {\r\n if (textErrorIndex > -1) {\r\n fieldsGroup.fields[textErrorIndex].data.error = true;\r\n }\r\n }\r\n else {\r\n if (textErrorIndex > -1) {\r\n fieldsGroup.fields[textErrorIndex].data.error = false;\r\n fieldsGroup.fields[textErrorIndex].data.label = '';\r\n }\r\n }\r\n }\r\n // #endregion Phones\r\n\r\n // #region Ipeds\r\n if (fieldsGroup.id === 'ipedsGroup') {\r\n ipedsValid = this.reviewIpeds(fieldsGroup);\r\n const textErrorIndex: number = fieldsGroup.fields.findIndex(x => x.data.id === 'ipedsErrorsId');\r\n if (!ipedsValid) {\r\n if (textErrorIndex > -1) {\r\n fieldsGroup.fields[textErrorIndex].data.error = true;\r\n }\r\n }\r\n else {\r\n if (textErrorIndex > -1) {\r\n fieldsGroup.fields[textErrorIndex].data.error = false;\r\n fieldsGroup.fields[textErrorIndex].data.label = '';\r\n }\r\n }\r\n }\r\n // #endregion Ipeds\r\n\r\n // #region Address\r\n if (fieldsGroup.id === 'addressInformationGroup') {\r\n addressValid = this.reviewAddress(fieldsGroup);\r\n isValid = !addressValid ? false : isValid;\r\n }\r\n // #endregion Address\r\n\r\n // #region UserDefinedFields\r\n if (fieldsGroup.isCustom) {\r\n userDefinedValid = this.reviewUserDefined(fieldsGroup);\r\n isValid = !userDefinedValid ? false : isValid;\r\n }\r\n // #endregion UserDefinedFields\r\n\r\n // #region Education\r\n if (fieldsGroup.id === 'educationGroup') {\r\n educationValid = this.reviewEducation(fieldsGroup);\r\n isValid = !educationValid ? false : isValid;\r\n }\r\n // #endregion Education\r\n\r\n // #region Activities\r\n if (fieldsGroup.id === 'activityGroup') {\r\n activityValid = this.reviewActivities(fieldsGroup);\r\n }\r\n // #endregion Activities\r\n\r\n // Group errors\r\n fieldsGroup.fields.forEach(field => {\r\n // Set errors in copied fields inside the SectionErrors array of errors state variable\r\n if (field.data.modified) {\r\n ids = field.data.id.split('|');\r\n if (ids[0] !== 'deleteIcon') {\r\n // Gets the actual Section index from the field id\r\n fieldSectionIndex = Number(ids[4]);\r\n // Gets the actual Field id\r\n fieldId = ids[0];\r\n // Gets the index of the sectionErrors array\r\n sectionErrorIndex = errors[stepIndex].groupErrors[groupIndex].sectionErrors.findIndex(section =>\r\n section.sectionIndex === fieldSectionIndex);\r\n if (sectionErrorIndex > -1) {\r\n // Gets the index of the fieldErrors array\r\n fieldErrorIndex = errors[stepIndex].groupErrors[groupIndex].sectionErrors[sectionErrorIndex].fieldsErrors\r\n .findIndex(field => field.fieldId === fieldId);\r\n if (fieldErrorIndex > -1) {\r\n // Sets the value of the error\r\n errors[stepIndex].groupErrors[groupIndex].sectionErrors[sectionErrorIndex].fieldsErrors[fieldErrorIndex]\r\n .isFieldError = field.data.error ? field.data.error : false;\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n // Set errors in first fields inside the firstSectionErrors array state variable\r\n fieldErrorIndex = errors[stepIndex].groupErrors[groupIndex].firstSectionErrors.firstFieldsErrors.findIndex(fieldError =>\r\n fieldError.fieldId === field.data.id);\r\n // Checks if the field is already in firstFieldsErrors\r\n if (fieldErrorIndex > -1) {\r\n errors[stepIndex].groupErrors[groupIndex].firstSectionErrors.firstFieldsErrors[fieldErrorIndex].isFieldError =\r\n field.data.error ? field.data.error : false;\r\n } else {\r\n errors[stepIndex].groupErrors[groupIndex].firstSectionErrors.firstFieldsErrors.push(\r\n { fieldId: field.data.id, isFieldError: field.data.error ? field.data.error : false }\r\n );\r\n }\r\n }\r\n });\r\n\r\n errors[stepIndex].groupErrors[groupIndex].firstSectionErrors.isFirstSectionErrors =\r\n errors[stepIndex].groupErrors[groupIndex].firstSectionErrors.firstFieldsErrors.some(fieldError => fieldError.isFieldError);\r\n\r\n errors[stepIndex].groupErrors[groupIndex].sectionErrors.forEach(sectionError => {\r\n sectionError.isSectionError = sectionError.fieldsErrors.some(fieldError => fieldError.isFieldError);\r\n });\r\n\r\n errors[stepIndex].groupErrors[groupIndex].isGroupError =\r\n fieldsGroup.fields.some(field => field.data.error ? field.data.error : false);\r\n });\r\n errors[stepIndex].isStepError = errors[stepIndex].groupErrors.some(groupError => groupError.isGroupError);\r\n });\r\n\r\n // Multiple components validations\r\n isValid = programsValid &&\r\n validPhones && ipedsValid && addressValid &&\r\n activityValid &&\r\n isValid;\r\n\r\n const allErrors: IGroupErrors[] = [];\r\n const especificErrors: IGroupErrors[] = [];\r\n if (!isValid) {\r\n errors.forEach(step => {\r\n step.groupErrors.forEach(groupError => {\r\n if (groupError.isGroupError) {\r\n if ((groupError.groupId === 'educationGroup' && inquiry.education.length === 0) ||\r\n groupError.groupId === 'activityGroup') {\r\n especificErrors.push(groupError);\r\n }\r\n else {\r\n allErrors.push(groupError);\r\n }\r\n }\r\n });\r\n });\r\n if (allErrors.length === 0) {\r\n isValid = programsValid && validPhones &&\r\n ipedsValid && addressValid &&\r\n educationValid && activityValid;\r\n }\r\n }\r\n\r\n this.setState({\r\n components: components,\r\n errors: errors\r\n });\r\n }\r\n return isValid;\r\n };\r\n\r\n private reviewUserDefined = (fieldsGroup: IFieldsGroup): boolean => {\r\n const {\r\n inquiry\r\n } = this.state;\r\n\r\n let isValid: boolean = true;\r\n fieldsGroup.fields.forEach(field => {\r\n if (field.isUserDefined) {\r\n // validate length of field\r\n const userDefined: IApplicationUserDefined = {\r\n columnLabel: '',\r\n columnName: '',\r\n columnType: 0,\r\n columnValue: '',\r\n isUploading: false\r\n };\r\n if (field.value) {\r\n if (field.maxLength && field.value.toString().length <= field.maxLength) {\r\n field.data.error = false;\r\n field.data.helperText = '';\r\n isValid = true;\r\n\r\n userDefined.columnLabel = field.data.id;\r\n userDefined.columnName = field.data.id;\r\n if (field.dataType === 'nvarchar') {\r\n userDefined.columnType = 1;\r\n }\r\n if (field.dataType === 'date') {\r\n userDefined.columnType = 2;\r\n }\r\n if (field.dataType === 'time') {\r\n userDefined.columnType = 3;\r\n }\r\n userDefined.columnValue = field.value;\r\n userDefined.isUploading = field.isUploading ? field.isUploading : false;\r\n let userDefinedIndex: number = -1;\r\n userDefinedIndex =\r\n inquiry.userDefined.findIndex(x => x.columnName === userDefined.columnName);\r\n if (userDefinedIndex > -1) {\r\n inquiry.userDefined.splice(userDefinedIndex, 1);\r\n }\r\n inquiry.userDefined.push(userDefined);\r\n }\r\n else {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRange;\r\n isValid = false;\r\n }\r\n }\r\n else {\r\n if (field.isRequired) {\r\n field.data.error = true;\r\n field.data.helperText = field.data.errorMessageRequired;\r\n isValid = false;\r\n }\r\n }\r\n }\r\n });\r\n return isValid;\r\n };\r\n\r\n private setApplicationActivitiesValues = (activity: IApplicationActivity,\r\n activityList: IApplicationActivity[]): IApplicationActivity[] => {\r\n activity.activityType = activity.activityType || 0;\r\n activity.activity = activity.activity || 0;\r\n activity.hoursPerWeek = activity.hoursPerWeek || 0;\r\n activity.weeksPerYear = activity.weeksPerYear || 0;\r\n activity.numberOfYears = activity.numberOfYears || 0;\r\n activity.participatedGrade09 = activity.participatedGrade09 || false;\r\n activity.participatedGrade10 = activity.participatedGrade10 || false;\r\n activity.participatedGrade11 = activity.participatedGrade11 || false;\r\n activity.participatedGrade12 = activity.participatedGrade12 || false;\r\n activity.participatedPostsecondary = activity.participatedPostsecondary || false;\r\n\r\n if (activity.activityType !== 0 && activity.activity !== 0) {\r\n activityList.push(activity);\r\n }\r\n else if (activity.position || activity.hoursPerWeek || activity.weeksPerYear ||\r\n activity.numberOfYears || activity.participatedGrade09 || activity.participatedGrade10 ||\r\n activity.participatedGrade11 || activity.participatedGrade12 || activity.participatedPostsecondary) {\r\n activityList.push(activity);\r\n }\r\n return activityList;\r\n };\r\n\r\n private setApplicationActivitiesAdditional = (fieldsGroup: any, sectionNumber: number, activityItem: IApplicationActivity):\r\n IApplicationActivity => {\r\n const fieldsBySection = fieldsGroup.fields.filter(x => x.data.section === sectionNumber);\r\n fieldsBySection.forEach(field => {\r\n if (field.data.id.substr(0, 'activityTypeId'.length) === 'activityTypeId') {\r\n activityItem.activityType = field.value;\r\n }\r\n if (field.data.id.substr(0, 'activityId'.length) === 'activityId') {\r\n activityItem.activity = field.value;\r\n }\r\n if (field.data.id.substr(0, 'positionHeldId'.length) === 'positionHeldId') {\r\n activityItem.position = field.value;\r\n }\r\n if (field.data.id.substr(0, 'numberOfHoursPerWeekId'.length) === 'numberOfHoursPerWeekId') {\r\n activityItem.hoursPerWeek = field.value;\r\n }\r\n if (field.data.id.substr(0, 'numberOfWeeksPerYearId'.length) === 'numberOfWeeksPerYearId') {\r\n activityItem.weeksPerYear = field.value;\r\n }\r\n if (field.data.id.substr(0, 'numberOfYearsId'.length) === 'numberOfYearsId') {\r\n activityItem.numberOfYears = field.value;\r\n }\r\n if (field.data.id.substr(0, 'participated9Id'.length) === 'participated9Id') {\r\n activityItem.participatedGrade09 = Boolean(field.value);\r\n }\r\n if (field.data.id.substr(0, 'participated10Id'.length) === 'participated10Id') {\r\n activityItem.participatedGrade10 = Boolean(field.value);\r\n }\r\n if (field.data.id.substr(0, 'participated11Id'.length) === 'participated11Id') {\r\n activityItem.participatedGrade11 = Boolean(field.value);\r\n }\r\n if (field.data.id.substr(0, 'participated12Id'.length) === 'participated12Id') {\r\n activityItem.participatedGrade12 = Boolean(field.value);\r\n }\r\n if (field.data.id.substr(0, 'participatedPostSecondaryId'.length) === 'participatedPostSecondaryId') {\r\n activityItem.participatedPostsecondary = Boolean(field.value);\r\n }\r\n });\r\n return activityItem;\r\n };\r\n\r\n private setApplicationAddress = (fieldsGroup: any, address: IApplicationAddress):\r\n IApplicationAddress => {\r\n const addressTypefield = fieldsGroup.fields.findIndex(x => x.data.id === 'addressTypeId');\r\n if (addressTypefield > -1) {\r\n address.type = fieldsGroup.fields[addressTypefield].value;\r\n }\r\n const houseNumberField = fieldsGroup.fields.findIndex(x => x.data.id === 'houseNumberId');\r\n if (houseNumberField > -1) {\r\n address.houseNumber = fieldsGroup.fields[houseNumberField].value;\r\n }\r\n const addressLine1Field = fieldsGroup.fields.findIndex(x => x.data.id === 'addressLine1Id');\r\n if (addressLine1Field > -1) {\r\n address.line1 = fieldsGroup.fields[addressLine1Field].value;\r\n }\r\n const addressLine2Field = fieldsGroup.fields.findIndex(x => x.data.id === 'addressLine2Id');\r\n if (addressLine2Field > -1) {\r\n address.line2 = fieldsGroup.fields[addressLine2Field].value;\r\n }\r\n const addressLine3Field = fieldsGroup.fields.findIndex(x => x.data.id === 'addressLine3Id');\r\n if (addressLine3Field > -1) {\r\n address.line3 = fieldsGroup.fields[addressLine3Field].value;\r\n }\r\n const addressLine4Field = fieldsGroup.fields.findIndex(x => x.data.id === 'addressLine4Id');\r\n if (addressLine4Field > -1) {\r\n address.line4 = fieldsGroup.fields[addressLine4Field].value;\r\n }\r\n const addressCityField = fieldsGroup.fields.findIndex(x => x.data.id === 'addressCityId');\r\n if (addressCityField > -1) {\r\n address.city = fieldsGroup.fields[addressCityField].value;\r\n }\r\n const stateProvinceField = fieldsGroup.fields.findIndex(x => x.data.id === 'stateProvinceId');\r\n if (stateProvinceField > -1) {\r\n address.stateProvince = fieldsGroup.fields[stateProvinceField].value;\r\n }\r\n const postalCodeField = fieldsGroup.fields.findIndex(x => x.data.id === 'postalCodeId');\r\n if (postalCodeField > -1) {\r\n address.postalCode = fieldsGroup.fields[postalCodeField].value;\r\n }\r\n const countyIdField = fieldsGroup.fields.findIndex(x => x.data.id === 'addressCountyId');\r\n if (countyIdField > -1) {\r\n address.county = fieldsGroup.fields[countyIdField].value;\r\n }\r\n const addressCountryField = fieldsGroup.fields.findIndex(x => x.data.id === 'addressCountryId');\r\n if (addressCountryField > -1) {\r\n address.country = fieldsGroup.fields[addressCountryField].value;\r\n }\r\n return address;\r\n };\r\n\r\n private setApplicationAddressValues = (address: IApplicationAddress): IApplicationAddress => {\r\n address.type = address.type || 0;\r\n address.line1 = address.line1 || '';\r\n address.city = address.city || '';\r\n address.country = address.country || 0;\r\n\r\n address.line2 = address.line2 || '';\r\n address.line3 = address.line3 || '';\r\n address.line4 = address.line4 || '';\r\n address.city = address.city || '';\r\n address.stateProvince = address.stateProvince || 0;\r\n address.postalCode = address.postalCode || '';\r\n address.county = address.county || 0;\r\n\r\n return address;\r\n };\r\n\r\n private setApplicationAddressAdditional = (fieldsGroup: any, sectionNumber: number,\r\n address: IApplicationAddress): IApplicationAddress => {\r\n const fieldsBySection = fieldsGroup.fields.filter(x => x.data.section === sectionNumber);\r\n fieldsBySection.forEach(field => {\r\n if (field.data.id.substr(0, 'addressTypeId'.length) === 'addressTypeId') {\r\n address.type = field.value;\r\n }\r\n if (field.data.id.substr(0, 'houseNumberId'.length) === 'houseNumberId') {\r\n address.houseNumber = field.value;\r\n }\r\n if (field.data.id.substr(0, 'addressLine1Id'.length) === 'addressLine1Id') {\r\n address.line1 = field.value;\r\n }\r\n if (field.data.id.substr(0, 'addressLine2Id'.length) === 'addressLine2Id') {\r\n address.line2 = field.value;\r\n }\r\n if (field.data.id.substr(0, 'addressLine3Id'.length) === 'addressLine3Id') {\r\n address.line3 = field.value;\r\n }\r\n if (field.data.id.substr(0, 'addressLine4Id'.length) === 'addressLine4Id') {\r\n address.line4 = field.value;\r\n }\r\n if (field.data.id.substr(0, 'addressCityId'.length) === 'addressCityId') {\r\n address.city = field.value;\r\n }\r\n if (field.data.id.substr(0, 'stateProvinceId'.length) === 'stateProvinceId') {\r\n address.stateProvince = field.value;\r\n }\r\n if (field.data.id.substr(0, 'postalCodeId'.length) === 'postalCodeId') {\r\n address.postalCode = field.value;\r\n }\r\n if (field.data.id.substr(0, 'addressCountyId'.length) === 'addressCountyId') {\r\n address.county = field.value;\r\n }\r\n if (field.data.id.substr(0, 'addressCountryId'.length) === 'addressCountryId') {\r\n address.country = field.value;\r\n }\r\n });\r\n return address;\r\n };\r\n\r\n private setApplicationEducation = (fieldsGroup: any, education: IApplicationEducation): IApplicationEducation => {\r\n const degreefield = fieldsGroup.fields.findIndex(x => x.data.id === 'educationDegreeId');\r\n if (degreefield > -1) {\r\n education.enrollment.degreeId = fieldsGroup.fields[degreefield].value;\r\n }\r\n const curriculumField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationCurriculumId');\r\n if (curriculumField > -1) {\r\n education.enrollment.curriculumId = fieldsGroup.fields[curriculumField].value;\r\n }\r\n const honorsField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationHonorsId');\r\n if (honorsField > -1) {\r\n education.enrollment.honorsId = fieldsGroup.fields[honorsField].value;\r\n }\r\n const startDateField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationStartDateId');\r\n if (startDateField > -1) {\r\n education.enrollment.startDate = fieldsGroup.fields[startDateField].value;\r\n }\r\n const endDateField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationEndDateId');\r\n if (endDateField > -1) {\r\n education.enrollment.endDate = fieldsGroup.fields[endDateField].value;\r\n }\r\n const institutionField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationInstitutionName');\r\n if (institutionField > -1) {\r\n education.institution.name = fieldsGroup.fields[institutionField].value;\r\n }\r\n const etsCodeField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationEtsCodeId');\r\n if (etsCodeField > -1) {\r\n education.institution.etsCode = fieldsGroup.fields[etsCodeField].value;\r\n }\r\n const cityField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationCityId');\r\n if (cityField > -1) {\r\n education.institution.city = fieldsGroup.fields[cityField].value;\r\n }\r\n const stateField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationStateId');\r\n if (stateField > -1) {\r\n education.institution.stateProvinceId = fieldsGroup.fields[stateField].value;\r\n }\r\n const countryField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationCountryId');\r\n if (countryField > -1) {\r\n education.institution.countryId = fieldsGroup.fields[countryField].value;\r\n }\r\n const ficeCodeField = fieldsGroup.fields.findIndex(x => x.data.id === 'educationFiceCode');\r\n if (ficeCodeField > -1) {\r\n education.institution.ficeCode = fieldsGroup.fields[ficeCodeField].value;\r\n }\r\n return education;\r\n };\r\n\r\n private setApplicationEducationValues = (education: IApplicationEducation): IApplicationEducation => {\r\n education.institution.city = education.institution.city || '';\r\n education.enrollment.curriculumId = education.enrollment.curriculumId || 0;\r\n education.enrollment.degreeId = education.enrollment.degreeId || 0;\r\n education.enrollment.honorsId = education.enrollment.honorsId || 0;\r\n education.enrollment.startDate = education.enrollment.startDate || undefined;\r\n education.enrollment.endDate = education.enrollment.endDate || undefined;\r\n education.institution.id = education.institution.id || 0;\r\n education.institution.name = education.institution.name || '';\r\n education.institution.etsCode = education.institution.etsCode || '';\r\n education.institution.city = education.institution.city || '';\r\n education.institution.stateProvinceId = education.institution.stateProvinceId || 0;\r\n education.institution.countryId = education.institution.countryId || 0;\r\n education.institution.ficeCode = education.institution.ficeCode || '';\r\n return education;\r\n };\r\n\r\n private setApplicationEducationAdditional = (fieldsGroup: any, sectionNumber: number, education: IApplicationEducation):\r\n IApplicationEducation => {\r\n const fieldsBySection = fieldsGroup.fields.filter(x => x.data.section === sectionNumber);\r\n fieldsBySection.forEach(field => {\r\n if (field.data.id.substr(0, 'educationDegreeId'.length) === 'educationDegreeId') {\r\n education.enrollment.degreeId = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationCurriculumId'.length) === 'educationCurriculumId') {\r\n education.enrollment.curriculumId = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationHonorsId'.length) === 'educationHonorsId') {\r\n education.enrollment.honorsId = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationStartDateId'.length) === 'educationStartDateId') {\r\n education.enrollment.startDate = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationEndDateId'.length) === 'educationEndDateId') {\r\n education.enrollment.endDate = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationInstitutionName'.length) === 'educationInstitutionName') {\r\n education.institution.name = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationEtsCodeId'.length) === 'educationEtsCodeId') {\r\n education.institution.etsCode = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationCityId'.length) === 'educationCityId') {\r\n education.institution.city = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationStateId'.length) === 'educationStateId') {\r\n education.institution.stateProvinceId = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationCountryId'.length) === 'educationCountryId') {\r\n education.institution.countryId = field.value;\r\n }\r\n if (field.data.id.substr(0, 'educationFiceCode'.length) === 'educationFiceCode') {\r\n education.institution.ficeCode = field.value;\r\n }\r\n });\r\n return education;\r\n };\r\n\r\n private setApplicationValues = (fieldId: string, fieldDefault: any): void => {\r\n const {\r\n inquiry\r\n } = this.state;\r\n\r\n switch (fieldId) {\r\n case 'attendStatusId':\r\n inquiry.collegeAttendStatus = fieldDefault;\r\n break;\r\n case 'counselorId':\r\n inquiry.counselorId = fieldDefault;\r\n break;\r\n case 'countryOfBirthId':\r\n inquiry.countryOfBirth = fieldDefault;\r\n break;\r\n case 'ethnicityId':\r\n inquiry.ethnicity = fieldDefault;\r\n break;\r\n case 'genderId':\r\n inquiry.gender = fieldDefault;\r\n break;\r\n case 'maritalyId':\r\n inquiry.maritalStatus = fieldDefault;\r\n break;\r\n case 'passportCountryId':\r\n inquiry.passportCountryId = fieldDefault;\r\n break;\r\n case 'primaryCitizenshipId':\r\n inquiry.primaryCitizenship = fieldDefault;\r\n break;\r\n case 'primaryLanguageId':\r\n inquiry.primaryLanguage = fieldDefault;\r\n break;\r\n case 'prefixId':\r\n inquiry.prefix = fieldDefault;\r\n break;\r\n case 'religionId':\r\n inquiry.religion = fieldDefault;\r\n break;\r\n case 'secondayCitizenshipId':\r\n inquiry.secondaryCitizenship = fieldDefault;\r\n break;\r\n case 'secondaryLanguageId':\r\n inquiry.secondaryLanguage = fieldDefault;\r\n break;\r\n case 'sessionPeriodId':\r\n inquiry.period = fieldDefault;\r\n break;\r\n case 'suffixId':\r\n inquiry.suffix = fieldDefault;\r\n break;\r\n case 'veteranId':\r\n inquiry.veteranStatus = fieldDefault;\r\n break;\r\n case 'visaId':\r\n inquiry.visa = fieldDefault;\r\n break;\r\n case 'visaCountryId':\r\n inquiry.visaCountryId = fieldDefault;\r\n break;\r\n case 'licenseStateId':\r\n inquiry.licenseStateId = fieldDefault;\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n this.setState({\r\n inquiry: fieldDefault\r\n });\r\n };\r\n\r\n private setValues = (fieldId: string[], newComponents: IApplicationForm, value: any): IApplicationForm => {\r\n if (fieldId.length > 4) {\r\n const fieldGroup: IFieldForm[] =\r\n newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields;\r\n const field: IFieldForm | undefined =\r\n fieldGroup.find(x => x.data.id.split('|')[3] === fieldId[3] && x.data.id.split('|')[4] === fieldId[4]);\r\n if (field) {\r\n field.value = value;\r\n }\r\n }\r\n else {\r\n const field: IFieldForm =\r\n newComponents.steps[Number(fieldId[1])].fieldsGroups[Number(fieldId[2])].fields[Number(fieldId[3])];\r\n if (fieldId) {\r\n field.value = value;\r\n }\r\n }\r\n return newComponents;\r\n };\r\n // #endregion Functions\r\n\r\n // #region Error Functions\r\n private logError = (logData: ILogData): void => {\r\n LayoutActions.setLogData(logData);\r\n };\r\n\r\n private redirectError = (code: number): void => {\r\n LayoutActions.setRedirectCode(code);\r\n };\r\n // #endregion Error Functions\r\n\r\n // #region Resolvers\r\n private resolveLayoutReady = () => {\r\n try {\r\n const {\r\n resources,\r\n inquiry\r\n } = this.state;\r\n\r\n if (resources) {\r\n document.title = resources.lblPageTitle;\r\n\r\n if (inquiry) {\r\n const hdnAppId: HTMLInputElement | undefined =\r\n document.getElementById('hdnInquiryId') as HTMLInputElement;\r\n const inq: IInquiry = inquiry;\r\n if (hdnAppId && hdnAppId.value) {\r\n inq.inquiryFormSettingId = Number(hdnAppId.value);\r\n hdnAppId.remove();\r\n\r\n RequestsInquiry.getComponents(inq.inquiryFormSettingId, this.resolveGetComponents, this.logError);\r\n\r\n this.setState({\r\n inquiry: inq\r\n });\r\n }\r\n }\r\n }\r\n else {\r\n this.logError(LogData.noResources(this.resolveLayoutReady.name));\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveLayoutReady.name, e));\r\n }\r\n };\r\n\r\n private resolveCountries = (json: string): void => {\r\n try {\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveCountries.name);\r\n\r\n if (result?.status) {\r\n const countries: any = result.data;\r\n this.setState({\r\n countries: countries\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveCountries.name, e));\r\n }\r\n };\r\n\r\n private resolveGetAddress = (json: string): void => {\r\n try {\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveGetAddress.name);\r\n\r\n if (result?.status) {\r\n this.setState({\r\n addresses: result.data.addresses,\r\n total: result.data.overallCount\r\n });\r\n LayoutActions.setLoading(false);\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveGetAddress.name, e));\r\n }\r\n };\r\n\r\n private resolveGetComponents = (json: string): void => {\r\n try {\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveGetComponents.name);\r\n\r\n if (result?.status) {\r\n const components: IApplicationForm = result.data;\r\n const errors: IApplicationErrors[] = Array(components.steps.length);\r\n components.steps.forEach((step, i) => {\r\n errors[i] = { isStepError: false, groupErrors: Array(step.fieldsGroups.length), stepTitle: step.title };\r\n for (let j = 0; j < step.fieldsGroups.length; j++) {\r\n errors[i].groupErrors[j] = {\r\n firstSectionErrors: {\r\n firstFieldsErrors: [],\r\n isFirstSectionErrors: false\r\n },\r\n groupId: step.fieldsGroups[j].id,\r\n isGroupError: false,\r\n sectionErrors: []\r\n };\r\n }\r\n });\r\n this.setState({\r\n components: components,\r\n errors: errors\r\n }, () => LayoutActions.setLoading(false));\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveGetComponents.name, e));\r\n }\r\n };\r\n\r\n private resolveGetChildOptions = (json: string): void => {\r\n try {\r\n const {\r\n components\r\n } = this.state;\r\n\r\n if (components) {\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveGetChildOptions.name);\r\n\r\n if (result?.status) {\r\n if (result.data) {\r\n if (result.data.step && result.data.group && result.data.targetId) {\r\n const fields: any = components.steps[Number(result.data.step)].fieldsGroups[Number(result.data.group)].fields;\r\n const fieldIndex: number =\r\n fields.findIndex(x => x.data.id === result.data.targetId);\r\n if (fieldIndex > -1) {\r\n const childField: IFieldForm = fields[fieldIndex];\r\n if (result.data.results) {\r\n childField.data.options = result.data.results as IDropDownOption[];\r\n }\r\n else {\r\n childField.data.options = [] as IDropDownOption[];\r\n }\r\n if (childField) {\r\n childField.value = undefined;\r\n }\r\n this.setState({\r\n components: components\r\n });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveGetChildOptions.name, e));\r\n }\r\n };\r\n\r\n private resolveGetInstitutions = (json: string): void => {\r\n try {\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveGetInstitutions.name);\r\n\r\n if (result?.status) {\r\n this.setState({\r\n institutions: result.data.institutions,\r\n total: result.data.overallCount\r\n });\r\n LayoutActions.setLoading(false);\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveGetInstitutions.name, e));\r\n }\r\n };\r\n\r\n private resolveStates = (json: string): void => {\r\n try {\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveStates.name);\r\n\r\n if (result?.status) {\r\n const states: any = result.data;\r\n this.setState({\r\n states: states\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveStates.name, e));\r\n }\r\n };\r\n\r\n private resolveSubmitInquiry = (json: string): void => {\r\n try {\r\n const {\r\n components,\r\n resources\r\n } = this.state;\r\n\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveSubmitInquiry.name);\r\n\r\n if (result?.status && resources) {\r\n LayoutActions.setLoading(false);\r\n\r\n if (components) {\r\n components.isCompletedApplication = true;\r\n }\r\n\r\n this.setState({\r\n components: components\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveSubmitInquiry.name, e));\r\n }\r\n };\r\n\r\n private resolveValidateScore = (json: string): void => {\r\n try {\r\n const {\r\n components\r\n } = this.state;\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveValidateScore.name);\r\n\r\n if (result?.status && components) {\r\n components.steps.forEach(step => {\r\n const group: IFieldsGroup | undefined = step.fieldsGroups.find(g => g.id === result.data.group);\r\n if (group) {\r\n const field: IFieldForm | undefined = group.fields.find(f => f.data.id === result.data.componentId);\r\n if (field) {\r\n if (result.data.isNumeric) {\r\n field.isNumeric = true;\r\n } else {\r\n field.isNumeric = false;\r\n }\r\n }\r\n }\r\n });\r\n\r\n this.setState({\r\n components: this.state.components\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveValidateScore.name, e));\r\n }\r\n };\r\n\r\n private resolveGetReCaptchaSettings = (json: string): void => {\r\n try {\r\n const result: IJsonResult | undefined\r\n = Resolver(json, this.resolveGetReCaptchaSettings.name);\r\n if (result?.status) {\r\n this.setState({\r\n isReCaptchaSubmitInquiryEnabled: result.data.isReCaptchaSubmitInquiryEnabled,\r\n reCaptchaSiteKey: result.data.reCaptchaSiteKey || ''\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveGetReCaptchaSettings.name, e));\r\n }\r\n };\r\n // #endregion Resolvers\r\n\r\n // #region State Management Events\r\n private onLayoutReady = (): void => {\r\n const ready: boolean = LayoutStore.getLayoutReady();\r\n const resources: IInquiryFormResources | undefined = LayoutStore.getResources();\r\n const cultures: ICultures = LayoutStore.getCultures();\r\n\r\n if (ready) {\r\n\r\n RequestsInquiry.getStates(this.resolveStates, this.logError);\r\n RequestsInquiry.getCountries(this.resolveCountries, this.logError);\r\n RequestsInquiry.getReCaptchaSettings(this.resolveGetReCaptchaSettings);\r\n\r\n this.setState({\r\n dateTimeCulture: cultures.dateTimeCulture,\r\n firstDayOfWeek: cultures.firstDayOfWeek,\r\n shortDatePattern: cultures.shortDatePattern,\r\n\r\n // Resources\r\n resources: resources\r\n }, this.resolveLayoutReady);\r\n }\r\n else {\r\n this.setState({\r\n componentError: true\r\n }, () => this.logError(LogData.layoutNoReady(this.onLayoutReady.name)));\r\n }\r\n };\r\n // #endregion State Management Events\r\n\r\n // #region Lifecycle\r\n public componentDidMount = (): void => {\r\n // TO DO: Send the ApplicationId\r\n };\r\n\r\n public componentWillUnmount = (): void => {\r\n LayoutStore.removeLayoutReadyListener(this.onLayoutReady);\r\n };\r\n\r\n public componentDidCatch = (error, info): void => {\r\n this.setState({\r\n componentError: true\r\n }, () => {\r\n this.logError(LogData.fromComponentException(this.componentDidCatch.name, error, info));\r\n this.redirectError(500);\r\n });\r\n };\r\n // #endregion Lifecycle\r\n\r\n public render(): JSX.Element {\r\n const {\r\n activeStep,\r\n addresses,\r\n componentError,\r\n components,\r\n countries,\r\n dateTimeCulture,\r\n errors,\r\n expanded,\r\n firstDayOfWeek,\r\n hasSearchZipCode,\r\n institutions,\r\n openAddressSearchModal,\r\n openETSSearchModal,\r\n pageNumber,\r\n pageSize,\r\n resources,\r\n rowsPerPageOptions,\r\n selectedCity,\r\n selectedCountry,\r\n selectedEtsCode,\r\n selectedInstitutionName,\r\n selectedState,\r\n selectedZipCode,\r\n shortDatePattern,\r\n states,\r\n total,\r\n\r\n // #region ReCaptcha\r\n isReCaptchaSubmitInquiryEnabled,\r\n reCaptchaError,\r\n reCaptchaSiteKey,\r\n uiCulture\r\n // #endregion ReCaptcha\r\n } = this.state;\r\n\r\n let addressSearchModal: JSX.Element | undefined;\r\n\r\n if (resources && resources.addressSearchModal) {\r\n addressSearchModal = (\r\n \r\n );\r\n }\r\n\r\n let etsSearchModal: JSX.Element | undefined;\r\n if (resources && resources.etsSearchModal && states && countries) {\r\n etsSearchModal = (\r\n \r\n );\r\n }\r\n\r\n let contentPage: JSX.Element | undefined;\r\n if (!componentError && resources) {\r\n if (components) {\r\n contentPage = (\r\n <>\r\n \r\n \r\n );\r\n }\r\n }\r\n\r\n return (\r\n \r\n {contentPage}\r\n {addressSearchModal}\r\n {etsSearchModal}\r\n \r\n );\r\n }\r\n}\r\n\r\nconst InquiryFormViewWithLayout = withLayout(InquiryFormView);\r\n// #endregion Component\r\n\r\n// RenderDOM: Component\r\nReactDOM.render(, document.getElementById('root'));","var map = {\n\t\"./af\": 42786,\n\t\"./af.js\": 42786,\n\t\"./ar\": 30867,\n\t\"./ar-dz\": 14130,\n\t\"./ar-dz.js\": 14130,\n\t\"./ar-kw\": 96135,\n\t\"./ar-kw.js\": 96135,\n\t\"./ar-ly\": 56440,\n\t\"./ar-ly.js\": 56440,\n\t\"./ar-ma\": 47702,\n\t\"./ar-ma.js\": 47702,\n\t\"./ar-sa\": 16040,\n\t\"./ar-sa.js\": 16040,\n\t\"./ar-tn\": 37100,\n\t\"./ar-tn.js\": 37100,\n\t\"./ar.js\": 30867,\n\t\"./az\": 31083,\n\t\"./az.js\": 31083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 68338,\n\t\"./bg.js\": 68338,\n\t\"./bm\": 67438,\n\t\"./bm.js\": 67438,\n\t\"./bn\": 8905,\n\t\"./bn-bd\": 76225,\n\t\"./bn-bd.js\": 76225,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 11560,\n\t\"./bo.js\": 11560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 80622,\n\t\"./bs.js\": 80622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 50877,\n\t\"./cv.js\": 50877,\n\t\"./cy\": 47373,\n\t\"./cy.js\": 47373,\n\t\"./da\": 24780,\n\t\"./da.js\": 24780,\n\t\"./de\": 59740,\n\t\"./de-at\": 60217,\n\t\"./de-at.js\": 60217,\n\t\"./de-ch\": 60894,\n\t\"./de-ch.js\": 60894,\n\t\"./de.js\": 59740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 50837,\n\t\"./el.js\": 50837,\n\t\"./en-au\": 78348,\n\t\"./en-au.js\": 78348,\n\t\"./en-ca\": 77925,\n\t\"./en-ca.js\": 77925,\n\t\"./en-gb\": 22243,\n\t\"./en-gb.js\": 22243,\n\t\"./en-ie\": 46436,\n\t\"./en-ie.js\": 46436,\n\t\"./en-il\": 47207,\n\t\"./en-il.js\": 47207,\n\t\"./en-in\": 44175,\n\t\"./en-in.js\": 44175,\n\t\"./en-nz\": 76319,\n\t\"./en-nz.js\": 76319,\n\t\"./en-sg\": 31662,\n\t\"./en-sg.js\": 31662,\n\t\"./eo\": 92915,\n\t\"./eo.js\": 92915,\n\t\"./es\": 55655,\n\t\"./es-do\": 55251,\n\t\"./es-do.js\": 55251,\n\t\"./es-mx\": 96112,\n\t\"./es-mx.js\": 96112,\n\t\"./es-us\": 71146,\n\t\"./es-us.js\": 71146,\n\t\"./es.js\": 55655,\n\t\"./et\": 81073,\n\t\"./et.js\": 81073,\n\t\"./eu\": 77763,\n\t\"./eu.js\": 77763,\n\t\"./fa\": 76959,\n\t\"./fa.js\": 76959,\n\t\"./fi\": 11897,\n\t\"./fi.js\": 11897,\n\t\"./fil\": 42549,\n\t\"./fil.js\": 42549,\n\t\"./fo\": 94694,\n\t\"./fo.js\": 94694,\n\t\"./fr\": 15596,\n\t\"./fr-ca\": 63049,\n\t\"./fr-ca.js\": 63049,\n\t\"./fr-ch\": 52330,\n\t\"./fr-ch.js\": 52330,\n\t\"./fr.js\": 15596,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 29295,\n\t\"./ga.js\": 29295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 38794,\n\t\"./gl.js\": 38794,\n\t\"./gom-deva\": 27884,\n\t\"./gom-deva.js\": 27884,\n\t\"./gom-latn\": 23168,\n\t\"./gom-latn.js\": 23168,\n\t\"./gu\": 95349,\n\t\"./gu.js\": 95349,\n\t\"./he\": 24206,\n\t\"./he.js\": 24206,\n\t\"./hi\": 30094,\n\t\"./hi.js\": 30094,\n\t\"./hr\": 30316,\n\t\"./hr.js\": 30316,\n\t\"./hu\": 22138,\n\t\"./hu.js\": 22138,\n\t\"./hy-am\": 11423,\n\t\"./hy-am.js\": 11423,\n\t\"./id\": 29218,\n\t\"./id.js\": 29218,\n\t\"./is\": 90135,\n\t\"./is.js\": 90135,\n\t\"./it\": 90626,\n\t\"./it-ch\": 10150,\n\t\"./it-ch.js\": 10150,\n\t\"./it.js\": 90626,\n\t\"./ja\": 39183,\n\t\"./ja.js\": 39183,\n\t\"./jv\": 24286,\n\t\"./jv.js\": 24286,\n\t\"./ka\": 12105,\n\t\"./ka.js\": 12105,\n\t\"./kk\": 47772,\n\t\"./kk.js\": 47772,\n\t\"./km\": 18758,\n\t\"./km.js\": 18758,\n\t\"./kn\": 79282,\n\t\"./kn.js\": 79282,\n\t\"./ko\": 33730,\n\t\"./ko.js\": 33730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 33291,\n\t\"./ky.js\": 33291,\n\t\"./lb\": 36841,\n\t\"./lb.js\": 36841,\n\t\"./lo\": 55466,\n\t\"./lo.js\": 55466,\n\t\"./lt\": 57010,\n\t\"./lt.js\": 57010,\n\t\"./lv\": 37595,\n\t\"./lv.js\": 37595,\n\t\"./me\": 39861,\n\t\"./me.js\": 39861,\n\t\"./mi\": 35493,\n\t\"./mi.js\": 35493,\n\t\"./mk\": 95966,\n\t\"./mk.js\": 95966,\n\t\"./ml\": 87341,\n\t\"./ml.js\": 87341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 10370,\n\t\"./mr.js\": 10370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 45851,\n\t\"./ms-my.js\": 45851,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 72126,\n\t\"./mt.js\": 72126,\n\t\"./my\": 56165,\n\t\"./my.js\": 56165,\n\t\"./nb\": 64924,\n\t\"./nb.js\": 64924,\n\t\"./ne\": 16744,\n\t\"./ne.js\": 16744,\n\t\"./nl\": 93901,\n\t\"./nl-be\": 59814,\n\t\"./nl-be.js\": 59814,\n\t\"./nl.js\": 93901,\n\t\"./nn\": 83877,\n\t\"./nn.js\": 83877,\n\t\"./oc-lnc\": 92135,\n\t\"./oc-lnc.js\": 92135,\n\t\"./pa-in\": 15858,\n\t\"./pa-in.js\": 15858,\n\t\"./pl\": 64495,\n\t\"./pl.js\": 64495,\n\t\"./pt\": 89520,\n\t\"./pt-br\": 57971,\n\t\"./pt-br.js\": 57971,\n\t\"./pt.js\": 89520,\n\t\"./ro\": 96459,\n\t\"./ro.js\": 96459,\n\t\"./ru\": 21793,\n\t\"./ru.js\": 21793,\n\t\"./sd\": 40950,\n\t\"./sd.js\": 40950,\n\t\"./se\": 10490,\n\t\"./se.js\": 10490,\n\t\"./si\": 90124,\n\t\"./si.js\": 90124,\n\t\"./sk\": 64249,\n\t\"./sk.js\": 64249,\n\t\"./sl\": 14985,\n\t\"./sl.js\": 14985,\n\t\"./sq\": 51104,\n\t\"./sq.js\": 51104,\n\t\"./sr\": 49131,\n\t\"./sr-cyrl\": 79915,\n\t\"./sr-cyrl.js\": 79915,\n\t\"./sr.js\": 49131,\n\t\"./ss\": 95606,\n\t\"./ss.js\": 95606,\n\t\"./sv\": 98760,\n\t\"./sv.js\": 98760,\n\t\"./sw\": 91172,\n\t\"./sw.js\": 91172,\n\t\"./ta\": 27333,\n\t\"./ta.js\": 27333,\n\t\"./te\": 23110,\n\t\"./te.js\": 23110,\n\t\"./tet\": 52095,\n\t\"./tet.js\": 52095,\n\t\"./tg\": 27321,\n\t\"./tg.js\": 27321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tk\": 19005,\n\t\"./tk.js\": 19005,\n\t\"./tl-ph\": 75768,\n\t\"./tl-ph.js\": 75768,\n\t\"./tlh\": 89444,\n\t\"./tlh.js\": 89444,\n\t\"./tr\": 72397,\n\t\"./tr.js\": 72397,\n\t\"./tzl\": 28254,\n\t\"./tzl.js\": 28254,\n\t\"./tzm\": 51106,\n\t\"./tzm-latn\": 30699,\n\t\"./tzm-latn.js\": 30699,\n\t\"./tzm.js\": 51106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 67691,\n\t\"./uk.js\": 67691,\n\t\"./ur\": 13795,\n\t\"./ur.js\": 13795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 60588,\n\t\"./uz-latn.js\": 60588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 65666,\n\t\"./vi.js\": 65666,\n\t\"./x-pseudo\": 14378,\n\t\"./x-pseudo.js\": 14378,\n\t\"./yo\": 75805,\n\t\"./yo.js\": 75805,\n\t\"./zh-cn\": 83839,\n\t\"./zh-cn.js\": 83839,\n\t\"./zh-hk\": 55726,\n\t\"./zh-hk.js\": 55726,\n\t\"./zh-mo\": 99807,\n\t\"./zh-mo.js\": 99807,\n\t\"./zh-tw\": 74152,\n\t\"./zh-tw.js\": 74152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 11;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t11: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunk_hedtech_powercampus_self_service\"] = self[\"webpackChunk_hedtech_powercampus_self_service\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [464], () => (__webpack_require__(4256)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","leafPrototypes","getProto","props","table","paginationComponent","bodyModal","addresses","hasSearchZipCode","open","pageNumber","pageSize","rowsPerPageOptions","totalAddress","zipCode","onChangePage","onChangeRowsPerPage","onChangeTextField","onClear","onClickZipLink","onClose","onSearch","resources","footerModal","React","ButtonGroup","id","Button","onClick","btnSearch","color","btnClear","length","tableBody","forEach","address","j","push","TableRow","key","concat","TableCell","columnName","lblZipCode","component","scope","TextLink","city","stateProvinceId","countryId","countyId","lblCity","lblState","state","lblCounty","county","lblCountry","country","Grid","container","spacing","item","xs","Table","breakpoint","TableHead","TableBody","Text","lblNoResults","Pagination","count","page","rowsPerPage","onPageChange","onRowsPerPageChange","sm","TextField","label","type","value","onChange","onEnterPress","Modal","header","lblTitle","maxWidth","styles","createStyles","category","marginBottom","Tokens","spacing30","marginLeft","spacing50","federalCategory","fontWeight","fontWeightBold","withStyles","withWidth","sectionIndex","classes","dateTimeCulture","errors","expandedPanelId","fields","governmentIdFormat","groupIndex","isExpansionPanel","isHorizontalAligned","shortDatePattern","stepIndex","width","onChangeCheckBox","onChangeDropDown","onChangeDateTimeField","onChangeExpansionPanel","onChangeListCheckbox","onChangeRadioGroup","onClickButton","onDeleteItem","elements","ids","sectionIndexes","sectionElements","sectionContainers","headerDeleteElement","headerTitleElements","firstHeaderTitleElement","getId","idStringArray","index","Number","setHeaderTitleElements","field","isExpansionPanelHeader","lblNew","splice","componentType","selectedOption","data","options","findIndex","x","description","fillElements","fieldElement","groupErrors","groupId","lblPrimary","fieldSize","modified","gridSize","md","substr","buttonId","isPostalCode","replace","alignItems","direction","error","helperText","required","isRequired","String","maxCharacters","undefined","lblSearch","format","placeholder","emptyOption","lblSelect","exist","option","toString","Dropdown","multiple","allowMultipleSelection","checked","Checkbox","DatePicker","culture","idDelete","IconButton","title","btnDelete","Icon","name","messageRequired","size","isCheck","chkElements","i","array","Object","values","split","FormControlLabel","root","control","FormControl","FormGroup","colorText","isWithLink","actionUrl","actions","Paragraph","text","events","map","action","_event","window","location","href","RadioGroup","errorMessage","iped","ipedItem","ipedsEthnicityId","ipedsFederalCategoryId","elementsList","complexOptions","complexItem","childIsChecked","parentIsChecked","List","IconProps","src","alt","dangerouslySetInnerHTML","__html","fieldElementWithGrid","sectionErrors","section","includes","ExpansionPanel","applicationFormError","isSectionError","background","expandIcon","expanded","justifyContent","isWidthUp","setMultipleFields","firstSectionErrors","isFirstSectionErrors","buttonTop","marginTop","groupTitleBottom","labelElement","instructionsElement","fieldGroup","fieldGroupIndex","firstDayOfWeek","onAddMore","isDisabled","isDisableButton","content","isMultiple","instructions","className","FieldsHandler","maximumAllowed","disabled","lblAddNew","containerDetails","backgroundColor","colorBrandNeutral200","padding","failedPayment","paymentTransaction","successPayment","onCloseFailedPayment","resourcesApplicationHandler","btnOk","lblContentTextApplication","lblTitleDetails","Divider","align","lblAmount","amount","lblDescription","lblAuthorizationCode","authorizationNumber","FieldsGroupHandler","footer","showTitleBarClose","theme","backButtonMovil","boxStep","textAlign","boxShadow","buttonContainer","buttonsContainerMovil","marginRight","buttonStep","spacing40","cardRoot","_defineProperty","breakpoints","up","spacing80","fieldContainer","footerPadding","inline","display","paddingLeft","sizingSmall","mobileStepperContent","minHeight","reCaptchaErrorText","paddingBottom","saveButtonMargin","saveFooter","stepperDesktop","activeStep","components","saveMessage","showSaveButton","onBackStep","onClickSave","onClickStep","onNextStep","onSubmit","isReCaptchaSubmitEnabled","reCaptchaError","reCaptchaRef","reCaptchaSiteKey","uiCulture","onRecaptchaChange","onReCaptchaError","noContent","MessageStyled","classMessage","message","lblNotAvailable","reCaptchaElement","ReCAPTCHA","hl","ref","sitekey","onExpired","onErrored","lblReCaptchaRequired","steps","Array","step","fieldsGroupsElements","fieldsGroups","fieldsGroupsModal","isCompletedApplication","confirmationGroup","confirmationIndex","ApplicationCompletedModal","footerGroup","footerGroupIndex","Card","accent","Media","query","mqXSmall","matches","MobileStepper","position","nextButton","fluid","lblNext","backButton","lblBack","MobileStepperTitle","enableOnlinePayment","feeAmount","Format","isFlatFee","formatHasFee","formatHasFees","MobileStepperStep","MobileStepperLabel","StepProgress","nonLinear","orientation","Step","StepButton","StepLabel","isStepError","optional","role","formatCompleteStep","Boolean","lblSubmit","StepContent","variant","lblSave","tableInstitutions","countries","etsCode","institutionName","institutions","states","totalInstitutions","onChangeDropDownETSSearch","onChangeTextFieldETSSearch","onClickETSLink","emptyOptionState","lblEmptyOptionState","emptyOptionCountry","lblEmptyOptionCountry","lblInstitutionName","lblETSCode","lblFICECode","row","ficeCode","stateDesc","countryDesc","getAddresses","startIndex","resolver","resolveError","Request","post","this","getComponents","getChildOptions","url","group","targetId","isApplicationForm","formId","getValidateScoreType","applicationId","test","componentId","testId","getCountries","get","getStates","getInstitutions","stateId","institution","getReCaptchaSettings","postSubmit","inquiry","InquiryFormView","_React$Component","_this","_classCallCheck","_callSuper","_this$state","activityCount","addressessCount","educationCount","phoneCount","programsCount","createNewSection","setState","initialGroupLength","finalGroupLength","newSet","slice","parentDropDown","e","childField","childDropDown","logError","LogData","fromException","groupLength","sectionNumber","deleteButton","isNumeric","onAddDeleteButton","event","currentTarget","_this$state2","inq","fieldId","target","newComponents","evaluateAppJs","eval","isInterestedInExtracurricular","isInterestedInFinancialAid","isRetired","isSeekingDegree","policy","isCriminalConviction","isUserDefined","customScript","NaN","find","date","isValid","_this$state3","cultures","dateMinFormat","moment","add","toUpperCase","dateMaxFormat","dateOfEntry","setValues","cleanErrorMessages","formatDateOutOfRange","errorMessageRequired","dateOfBirth","visaExpiration","passportExpiration","optionSelected","_this$state4","valueSelected","_typeof","selectedPeriod","academicYear","termPeriodId","sessionPeriodId","fieldsGroup","checkBoxListIndex","checkBoxListField","ipedsList","ipeds","filter","RequestsInquiry","childEndPoint","resolveGetChildOptions","applicationFormId","selectedCountry","selectedState","panelId","_this$state5","ipedNew","ipedIndex","itemToRemove","academicInterests","sources","ipedsArray","ethnicity","_this$state6","onPrimaryButtonClick","_this$state7","match","emailRegExpression","email","errorMessageNotValid","onlyNum","RegExp","firstName","formerLastName","governmentId","governmentIdMaxLength","errorMessageFormat","lastName","lastNamePrefix","legalName","middleName","monthsInCountry","errorMessageRange","errorMessageNumeric","nickname","passportNumber","visaNumber","fieldHoursPerWeek","fieldWeeksPerYear","fieldYears","licenseNumber","portOfEntry","sevisNumber","selectedZipCode","onChangeTextFieldAddressSearch","selectedEtsCode","selectedCity","selectedInstitutionName","_this$state8","openETSSearchModal","selectedFieldId","fieldIndex","openAddressSearchModal","LayoutActions","setLoading","resolveGetAddress","total","previousSize","finishButtonId","assign","Constants","webUrl","_this$state9","assignFieldValue","onClickInstitutionLink","_this$state10","onClickZipCodeLink","onCloseAddressSearchModal","onCloseETSSearchModal","_this$state11","_objectSpread","componentName","firstPrimaryPhoneField","maxAdd","_this$reCaptchaRef","_this$state12","applicationTop","document","getElementById","scrollIntoView","setApplicationValues","isReCaptchaSubmitInquiryEnabled","reCaptchaResponse","current","getValue","allRequiredFields","reviewRequiredFields","resolveSubmitInquiry","token","fieldIdName","isSectionField","errorMessageDuplicate","errorMessagePrimary","copiedField","newField","JSON","parse","stringify","copyField","errorTexId","fieldsErrors","isFieldError","_this$state13","resolveGetInstitutions","_this$state14","_this$state15","_this$state16","phoneFields","numRow","idFields","resolveLayoutReady","_this$state17","_this$state18","activityTypefield","activityField","positionHeldField","numberOfHoursPerWeekField","numberOfWeeksPerYearField","numberOfYearsField","participated9Field","participated10Field","participated11Field","participated12Field","participatedPostSecondaryField","_this$state19","activityList","activity","activityType","hoursPerWeek","weeksPerYear","numberOfYears","participatedGrade09","participatedGrade10","participatedGrade11","participatedGrade12","participatedPostsecondary","setApplicationActivitiesValues","_ret","_loop","activityItem","setApplicationActivitiesAdditional","v","activities","_this$state20","addressList","isPrimary","setApplicationAddress","setApplicationAddressValues","line1","line2","line3","line4","stateProvince","postalCode","_ret2","_loop2","setApplicationAddressAdditional","_this$state21","educationList","education","enrollment","setApplicationEducation","setApplicationEducationValues","startDate","endDate","curriculumId","honorsId","degreeId","dateFormatMoment","dateTimeMin","dateTimeMax","_ret3","_loop3","setApplicationEducationAdditional","hispanicAnswer","textErrorIndex","_this$state22","phoneList","phone","number","phoneTypeField","phoneCountryField","phoneNumberField","primaryPhoneField","_ret4","_loop4","phoneItem","phones","_this$state23","programList","program","programId","programField","commintmentField","commitmentId","_loop5","programs","_this$state24","fieldSectionIndex","sectionErrorIndex","fieldErrorIndex","programsValid","validPhones","ipedsValid","addressValid","userDefinedValid","educationValid","activityValid","isNaN","isDateValid","minDate","Date","toDate","maxDate","isDateInRange","reviewPrograms","reviewPhoneGroup","reviewIpeds","reviewAddress","isCustom","reviewUserDefined","reviewEducation","reviewActivities","firstFieldsErrors","fieldError","some","sectionError","isGroupError","groupError","allErrors","especificErrors","userDefined","columnLabel","columnType","columnValue","isUploading","maxLength","userDefinedIndex","dataType","addressTypefield","houseNumberField","houseNumber","addressLine1Field","addressLine2Field","addressLine3Field","addressLine4Field","addressCityField","stateProvinceField","postalCodeField","countyIdField","addressCountryField","degreefield","curriculumField","honorsField","startDateField","endDateField","institutionField","etsCodeField","cityField","stateField","countryField","ficeCodeField","fieldDefault","collegeAttendStatus","counselorId","countryOfBirth","gender","maritalStatus","passportCountryId","primaryCitizenship","primaryLanguage","prefix","religion","secondaryCitizenship","secondaryLanguage","period","suffix","veteranStatus","visa","visaCountryId","licenseStateId","logData","setLogData","code","setRedirectCode","_this$state25","lblPageTitle","hdnAppId","inquiryFormSettingId","remove","resolveGetComponents","noResources","json","result","Resolver","resolveCountries","status","overallCount","stepTitle","results","resolveStates","_this$state26","resolveValidateScore","g","f","resolveGetReCaptchaSettings","ready","LayoutStore","getLayoutReady","getResources","getCultures","componentError","layoutNoReady","onLayoutReady","removeLayoutReadyListener","info","fromComponentException","componentDidCatch","redirectError","idMainPage","idModule","idPage","getInitialState","addLayoutReadyListener","_inherits","_createClass","expansionPanelHeaders","addressSearchModal","etsSearchModal","contentPage","_this$state27","AddressSearchModal","onChangePageAddress","onChangeRowsPerPageAddress","onClearAddress","onSearchAddress","ETSSearchModal","onClearInstitution","onSearchInstitution","ApplicationHandler","applicationHandler","Layout","hideHeader","showCart","showNotifications","InquiryFormViewWithLayout","withLayout","ReactDOM","webpackContext","req","webpackContextResolve","__webpack_require__","o","Error","keys","resolve","module","exports","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","every","r","n","getter","__esModule","d","a","getPrototypeOf","obj","t","mode","then","ns","create","def","indexOf","getOwnPropertyNames","definition","defineProperty","enumerable","globalThis","Function","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","bind","nc","__webpack_exports__"],"sourceRoot":""}