{"version":3,"sources":["components/Data/DataObjects.js","components/Header/CoEHeader.js","components/Footer/CoEFooter.js","components/Annoucement.js","components/RadioButtonGroup.js","components/TextInput.js","StartPage.js","components/DropdownList.js","PersonalInfoPage.js","components/TextArea.js","components/DateTimeInput.js","components/FileInput.js","components/GoogleMapComponent.js","IncidentInfoPage.js","components/Data/jsonp.js","WitnessInfoPage.js","COEReportPage.js","AuthorityReportPage.js","components/CheckboxComponent.js","SubmitPage.js","EmergencyContactPage.js","EFMCContactedPage.js","EmployeeSubmitterInfoPage.js","EPSSubmitterInfoPage.js","CausePage.js","SubmissionCompletePage.js","App.js","registerServiceWorker.js","index.js","components/Header/edmonton.svg","components/Footer/edmonton-square.svg"],"names":["UserTypes","InsurancePolicyTypes","YesNoEnum","PaddingCharacter","PaddingSide","IVosLine","StartLatitude","StartLongitude","OtherDepartmentInfo","key","value","id","OtherBranches","parentId","ValidFileTypes","pdf","jpg","doc","docx","xlxs","tiff","gif","png","avi","wmv","mp4","mov","mp3","wav","txt","Validations","AnnouncementColours","red","blue","yellow","green","LocationType","beforeUnloadEventHandler","ev","preventDefault","returnValue","StateData","fieldId","fieldValue","validationMessage","Object","classCallCheck","this","PageSetting","fieldLabel","validationSettings","shouldRender","ignoreFieldWhenSubmitting","iVosLine","startIndex","endIndex","paddingCharacter","paddingSide","iVosLineGroupingId","ValidationSetting","_ref","Mandatory","Phone","Email","PastDate","PostalCode","NonNegativeNumber","MaxFieldLength","PoliceFileNumber","UserTypeOptions","LocationTypeOptions","LocationTypeOptionsEPS","InsurancePolicyTypeOptions","InternalInsurancePolicyTypeOptions","EPSInsurancePolicyTypeOptions","YesNoOptions","YesNoUnderInvestigationOptions","Authorities","Directions","Provinces","CauseOfTheIncidentOptions","GetBaseUrl","getUrl","window","location","baseUrl","protocol","host","pathname","split","length","substring","CreateTargetObject","target","name","ValidationFunctionMap","_ValidationFunctionMa","defineProperty","validationFunction","pfn","test","errMsg","concat","phone","trim","email","postalCode","date","Date","number","isNaN","getValidationValue","validation","formData","ValidatePage","pageName","isPageValid","newPageFormData","page","PageToPageFieldsMap","_i","_Object$keys","keys","fieldValidationMessage","pageFieldInfo","formField","fieldLength","toString","iVosFieldLength","maxFieldLength","_i2","_Object$entries","entries","_ref4","_ref3","slicedToArray","isFieldValid","Pages","PageOrderByUser","_PageOrderByUser","IsFieldMandatory","fieldData","GetFormFieldValidationMsg","formDataForField","mandatorySetting","GetFormFieldValue","vehicleInfoRender","policyType","StartPageSettings","insurancePolicyType","userType","coePropertyDamage","licensePlateNumber","vehicleUnitNumber","transitReportNumber","policeFileNumber","_ref11","PersonalInfoPageSettings","firstName","lastName","address","addressPostalCode","_ref15","addressCity","addressProvince","phoneNumber","_ref18","vehicleInfo","shouldRenderLocationFields","locationType","IncidentInfoPageSettings","typeOfLocation","dateOfIncident","_ref21","incidentFacility","onStreetOfIncident","crossStreetOfIncident","longitudeOfIncident","latitudeOfIncident","incidentApartmentNumber","incidentHouseNumber","incidentStreetName","directionOfTravel","descriptionOfLocation","descriptionOfIncident","descriptionOfDamageOrInjury","estimatedValueOfDamage","_ref33","files","shouldRenderWitness","witnessNumber","WitnessInfoPageSettings","witness1FirstName","witness1LastName","witness1PhoneNumber","witness1Email","witness1Relationship","witness2FirstName","witness2LastName","witness2PhoneNumber","witness2Email","witness2Relationship","witness3FirstName","witness3LastName","witness3PhoneNumber","witness3Email","witness3Relationship","shouldRenderCoEContactFields","COEReportPageSettings","isReportedToCOE","reportCOEContactName","reportCOEContactEmail","reportCOEContactPhoneNumber","reportCOEFileNumber","reportCOEDate","shouldRenderAuthorityContactFields","AuthorityReportPageSettings","isReportedToAuthorities","reportAuthority","otherReportAuthority","reportAuthorityContactName","reportAuthorityContactEmail","reportAuthorityContactPhoneNumber","reportAuthorityFileNumber","reportAuthorityDate","SubmitPageSettings","responsibilityReason","termOfAgreement","disclaimer","aboutCollectionOfData","claimSubmittedBy","shouldShowEmergencyContactFields","EmergencyContactPageFieldSettings","wasEmergencyContactNotified","emergencyContactFirstName","emergencyContactLastName","emergencyContactPhone","emergencyContactRelationship","EFMCContactedPageFieldDataSettings","wasEFMCContacted","whatActionWasTakenByEmployee","EmployeeSubmitterInfoPageSettings","branch","branchOtherName","shouldRenderOtherBranchName","department","section","employeeFirstName","employeeLastName","employeeEmail","_ref67","EPSSubmitterInfoPageSettings","badgeNumber","epsRank","epsName","epsEmail","_ref71","docketNumber","courtDate","chargesLaid","chargesDetails","chargesLaidField","damageDuringRegularDuties","supervisorNotified","CausePageSettings","causeOfIncident","otherCauseExplaination","_PageToPageFieldsMap","CoEHeader","react_default","a","createElement","className","href","rel","src","headerLogo","width","alt","CoEFooter","currentYear","getFullYear","footerLogo","data-span","Announcement","props","colour","Data","text","RadioButtonGroup","validationMsg","defaultValue","undefined","htmlFor","showFieldLabel","options","map","option","type","checked","onChange","onChangeHandler","style","paddingLeft","display","color","marginBottom","TextInput","isFieldMandatory","isCurrencyField","react_number_format_es","thousandSeparator","prefix","readOnly","event","replace","message","StartPage","currentPage","components_RadioButtonGroup","Fragment","marginTop","fontWeight","components_TextInput","DropdownList","PersonalInfoPage","Annoucement","components_DropdownList","TextArea","maxLength","rows","DateTimeInput","react_datepicker_min_default","newDate","selected","autoComplete","showTimeSelect","dateFormat","FileInput","fileInputRef","useRef","pluralStr","border","cursor","ref","height","opacity","overflow","position","zIndex","multiple","onFileChange","FileDrop","onDrop","onTargetClick","current","click","index_es","icon","faFileUpload","paddingTop","x","i","size","toFixed","title","marginRight","marginLeft","onClick","e","deleteFile","faTimesCircle","MainMap","_this","lat","lng","possibleConstructorReturn","getPrototypeOf","call","state","centerAroundCurrentLocation","markers","bind","assertThisInitialized","t","coord","latLng","onMapClick","setState","previousState","dist","google","zoom","initialCenter","marker","index","React","Component","GoogleMapComponent","GoogleApiWrapper","apiKey","IncidentInfoPage","_useState","useState","_useState2","slimStreets","setSlimStreets","useEffect","url","callback","errorCallback","arguments","callbackParameter","errorCallbackParameter","callbackName","Math","round","random","errorCallbackName","indexOf","data","document","body","removeChild","script","appendChild","Jsonp","streetData","StreetNameAndQuadrant","unshift","error","components_DateTimeInput","components_GoogleMapComponent","updateLonLat","components_TextArea","components_FileInput","WitnessInfoPage","Array","from","addWitness","removeWitness","COEReportPage","AuthorityReportPage","CheckboxComponent","divClass","SubmitPage","components_CheckboxComponent","EmergencyContactPage","EFMCContactedPage","EmployeeSubmitterInfoPage","departments","branches","sections","EPSSubmitterInfoPage","CausePage","SubmissionCompletePage","isSuccessful","refNumber","reload","App","_useState5","setCurrentPage","_useState3","_useState4","setFormData","_useState6","_useState7","isLoading","setIsLoading","_useState8","_useState9","submissionRefNumber","setSubmissionRefNumber","_useState10","_useState11","setDepartments","_useState12","_useState13","setBranches","_useState14","_useState15","setSections","_useState16","_useState17","filteredBranches","setFilteredBranches","_useState18","_useState19","filteredSections","setFilteredSections","navigator","geolocation","getCurrentPosition","pos","_objectSpread2","coords","objectSpread","longitude","latitude","addEventListener","removeEventListener","scrollTo","axios","get","then","res","depts","filter","OrganizationType","Name","Id","push","brn","ParentId","apply","toConsumableArray","sectns","getUpdatedNumberOfWitnesses","adjustment","filterOrgStructures","orgArray","idToFilterBy","handleChange","newFormData","newValue","_newFormData","_newFormData2","_newFormData3","getNewFormData","determineAndSetNextPage","direction","userPageOrderArray","currentIndex","nextPage","movePage","_Data$ValidatePage","_Data$ValidatePage2","isLastPageDisplayed","slice","TopMessageJsx","Header_CoEHeader","src_StartPage","src_PersonalInfoPage","src_IncidentInfoPage","uploadedFiles","acceptedFileMimes","totalFileSize","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","Symbol","iterator","next","done","file","includes","err","return","getElementById","alert","alreadyAddedFiles","lon","_objectSpread5","fileToDelete","fileData","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","splice","src_WitnessInfoPage","_clearWitnessData","numberOfWitnesses","clearWitnessData","src_COEReportPage","src_AuthorityReportPage","src_SubmitPage","src_EmergencyContactPage","src_EFMCContactedPage","src_EmployeeSubmitterInfoPage","src_EPSSubmitterInfoPage","src_CausePage","src_SubmissionCompletePage","justifyContent","disabled","isFirstPageDisplayed","lib","fontSize","getPaginationText","_Data$ValidatePage3","_Data$ValidatePage4","submitData","FormData","fileNames","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_step3","_iterator3","append","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_step4","_iterator4","pageSetting","_loop","formFieldValue","join","dept","FieldId","FieldValue","format","String","FieldLabel","StartIndex","EndIndex","IVosLineGroupingId","FieldOrderNumber","JSON","stringify","post","status","claimNumber","Footer_CoEFooter","Boolean","hostname","match","rootElement","ReactDOM","render","src_App","serviceWorker","ready","registration","unregister","module","exports","__webpack_require__","p"],"mappings":"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","file":"static/js/main.1385122f.chunk.js","sourcesContent":["export const UserTypes = {\r\n Citizen: 'Citizen',\r\n COEEmployee: 'COEEmployee',\r\n EPS: 'EPS'\r\n};\r\n\r\nexport const InsurancePolicyTypes = {\r\n CitizenAuto: 'CIT Veh Temp Pol',\r\n CitizenGL: 'CIT GL Temp Pol',\r\n InternalProperty: 'INT PR Temp',\r\n InternalGL: 'INT GL Temp',\r\n EPSVehicle: 'EPS VEH Temp Pol',\r\n EPSProperty: 'EPS PR Temp',\r\n EPSGL: 'EPS GL Temp'\r\n};\r\n\r\nexport const YesNoEnum = {\r\n Yes: 'Yes',\r\n No: 'No'\r\n};\r\n\r\nconst UnderInvestigation = 'Under Investigation';\r\n\r\nexport const PaddingCharacter = {\r\n Blank: 'Blank',\r\n Zero: 'Zero'\r\n};\r\n\r\nexport const PaddingSide = {\r\n Left: 'Left',\r\n Right: 'Right'\r\n};\r\n\r\nexport const IVosLine = {\r\n CT: 'CT', // claimant\r\n CL: 'CL', // claim\r\n CONTA: 'CONTA', // contact\r\n VEH: 'VEH', // vehicle\r\n NOTE: 'NOTE'\r\n};\r\n\r\nexport const FileSelectorId = \"fileSelectorInput\"\r\nexport const StartLatitude = 53.54535911928182;\r\nexport const StartLongitude = -113.49020147646456;\r\nexport const MaxFieldLength = 2000;\r\nexport const OtherDepartmentInfo = {\r\n key: '3aa48a36-24ef-4f31-a572-714dea76a41a',\r\n value: 'Other',\r\n id: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n};\r\nexport const OtherBranches = [\r\n {\r\n key: '1483c75e-4440-4521-8353-5aae9e9c6f95',\r\n value: 'Blatchford District Energy Public Utility',\r\n id: '1483c75e-4440-4521-8353-5aae9e9c6f95',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n {\r\n key: '36400719-4839-4e3b-8dc9-2e4c3ca98802',\r\n value: 'Business Improvement Areas (BIAs)',\r\n id: '36400719-4839-4e3b-8dc9-2e4c3ca98802',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n {\r\n key: '1961a605-74f1-4979-9ab3-01202b9bdd62',\r\n value: 'Citadel',\r\n id: '1961a605-74f1-4979-9ab3-01202b9bdd62',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n {\r\n key: 'aa67140d-0c79-4f5c-96dd-7972d231fecc',\r\n value: 'Edmonton Public Library (EPL)',\r\n id: 'aa67140d-0c79-4f5c-96dd-7972d231fecc',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n {\r\n key: 'f617a450-d3df-4bf1-ba24-5733e8cc190e',\r\n value: 'Explore Edmonton',\r\n id: 'f617a450-d3df-4bf1-ba24-5733e8cc190e',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n {\r\n key: '0673e4dc-7e94-4bd7-aa12-b208bdf97a55',\r\n value: 'Fort Edmonton Management Company (FEMCO)',\r\n id: '0673e4dc-7e94-4bd7-aa12-b208bdf97a55',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n {\r\n key: '00079998-9659-49ee-bf15-dbca1f7412af',\r\n value: 'TWOSE (Telus World of Science)',\r\n id: '00079998-9659-49ee-bf15-dbca1f7412af',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n /*Added by Damigu on June-25-2021*/\r\n {\r\n key: 'ab089ty7-4uy7-y5rt-1248-db45877414e7',\r\n value: 'Innovate Edmonton',\r\n id: 'ab089ty7-4uy7-y5rt-1248-db45877414e7',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n\r\n /*Added by Damigu on June-25-2021*/\r\n {\r\n key: 'ef154f11-1489-eaf4-4aae-a4bc4782f541',\r\n value: 'EPS Sworn Members',\r\n id: 'ef154f11-1489-eaf4-4aae-a4bc4782f541',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n },\r\n\r\n {\r\n key: 'ff154f11-1489-eaf4-4aae-a4bc4782f541',\r\n value: 'Other (Specify)',\r\n id: 'ff154f11-1489-eaf4-4aae-a4bc4782f541',\r\n parentId: '3aa48a36-24ef-4f31-a572-714dea76a41a'\r\n }\r\n\r\n];\r\n\r\nexport const ValidFileTypes = {\r\n pdf: \"application/pdf\",\r\n jpg: \"image/jpeg\",\r\n doc: \"application/msword\",\r\n docx: \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\r\n xlxs: \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\",\r\n tiff: \"image/tiff\",\r\n gif: \"image/gif\",\r\n png: \"image/png\",\r\n avi: \"video/x-msvideo\",\r\n wmv: \"video/x-ms-wmv\",\r\n mp4: \"video/mp4\",\r\n mov: \"video/quicktime\",\r\n mp3: \"audio/mpeg\",\r\n wav: \"audio/wav\",\r\n txt: \"text/plain\"\r\n}\r\n\r\nexport const Validations = {\r\n Mandatory: 'Mandatory',\r\n Phone: 'Phone',\r\n Email: 'Email',\r\n PastDate: 'PastDate',\r\n PostalCode: 'PostalCode',\r\n NonNegativeNumber: 'NonNegativeNumber',\r\n MaxFieldLength: 'MaxFieldLength',\r\n PoliceFileNumber: 'PoliceFileNumber'\r\n};\r\n// the key and value must be the same\r\nexport const AnnouncementColours = {\r\n red: 'red',\r\n blue: 'blue',\r\n yellow: 'yellow',\r\n green: 'green'\r\n}\r\n\r\nexport const LocationType = {\r\n NearestIntersection: 'NearestIntersection',\r\n StreetAddress: 'StreetAddress',\r\n OutsideEdmonton: 'OutsideEdmonton'\r\n // ,GPSCoordinates: 'GPSCoordinates'\r\n}\r\n\r\nexport const beforeUnloadEventHandler = (ev) => {\r\n ev.preventDefault();\r\n return ev.returnValue = 'The form information has not been submitted. Are you sure you want to close the form?';\r\n};\r\n\r\nexport const NumberOfWitnessesFieldName = 'numberofWitnesses';\r\nconst OtherExplainOption = 'Other (explain)';\r\nexport class StateData {\r\n constructor(fieldId, fieldValue, validationMessage) {\r\n this.fieldId = fieldId;\r\n this.fieldValue = fieldValue;\r\n this.validationMessage = validationMessage;\r\n }\r\n}\r\n\r\nexport class PageSetting {\r\n constructor(fieldId, fieldLabel, validationSettings, shouldRender, ignoreFieldWhenSubmitting,\r\n iVosLine, startIndex, endIndex, paddingCharacter, paddingSide, iVosLineGroupingId) {\r\n this.fieldId = fieldId;\r\n this.fieldLabel = fieldLabel;\r\n this.validationSettings = validationSettings;\r\n this.shouldRender = shouldRender;\r\n this.ignoreFieldWhenSubmitting = ignoreFieldWhenSubmitting;\r\n this.iVosLine = iVosLine;\r\n this.startIndex = startIndex;\r\n this.endIndex = endIndex;\r\n this.paddingCharacter = paddingCharacter;\r\n this.paddingSide = paddingSide;\r\n this.iVosLineGroupingId = iVosLineGroupingId;\r\n }\r\n}\r\n\r\n// Properties are boolean (truthy/falsy) except MaxFieldLength which must be an integer if it is truthy\r\n// A property can be a function which\r\nexport class ValidationSetting {\r\n constructor({ Mandatory, Phone, Email, PastDate, PostalCode, NonNegativeNumber, MaxFieldLength, PoliceFileNumber }) {\r\n this[Validations.Mandatory] = Mandatory;\r\n this[Validations.Phone] = Phone;\r\n this[Validations.Email] = Email;\r\n this[Validations.PastDate] = PastDate;\r\n this[Validations.PostalCode] = PostalCode;\r\n this[Validations.NonNegativeNumber] = NonNegativeNumber;\r\n this[Validations.MaxFieldLength] = MaxFieldLength;\r\n this[Validations.PoliceFileNumber] = PoliceFileNumber;\r\n }\r\n}\r\n\r\n//button group options.Value is radio input text(what user sees), and key is the html \"value\" of the input\r\nexport const UserTypeOptions = [\r\n { key: UserTypes.Citizen, value: 'Citizen / Visitor' },\r\n { key: UserTypes.COEEmployee, value: 'City of Edmonton Employee / Insured Partner' },\r\n { key: UserTypes.EPS, value: 'EPS Member' }\r\n];\r\n\r\nexport const LocationTypeOptions = [\r\n { key: '', value: 'Please Select...' },\r\n { key: LocationType.NearestIntersection, value: 'Nearest Intersection' },\r\n { key: LocationType.StreetAddress, value: 'Street Address' }\r\n // ,{ key: LocationType.GPSCoordinates, value: 'Select On Map' }\r\n];\r\n\r\nexport const LocationTypeOptionsEPS = [\r\n { key: '', value: 'Please Select...' },\r\n { key: LocationType.NearestIntersection, value: 'Nearest Intersection' },\r\n { key: LocationType.StreetAddress, value: 'Street Address' },\r\n { key: LocationType.OutsideEdmonton, value: 'Outside of Edmonton' }\r\n // ,{ key: LocationType.GPSCoordinates, value: 'Select On Map' }\r\n];\r\n\r\n\r\nexport const InsurancePolicyTypeOptions = [\r\n { key: InsurancePolicyTypes.CitizenAuto, value: 'Yes' },\r\n { key: InsurancePolicyTypes.CitizenGL, value: 'No' }\r\n];\r\n\r\nexport const InternalInsurancePolicyTypeOptions = [\r\n { key: InsurancePolicyTypes.InternalProperty, value: 'Yes' },\r\n { key: InsurancePolicyTypes.InternalGL, value: 'No' },\r\n];\r\n\r\nexport const EPSInsurancePolicyTypeOptions = [\r\n { key: InsurancePolicyTypes.EPSVehicle, value: 'EPS vehicle' },\r\n { key: InsurancePolicyTypes.EPSProperty, value: 'Damage to EPS or COE property (excluding motor vehicles)' },\r\n { key: InsurancePolicyTypes.EPSGL, value: 'Damage or Injury to Citizen/Visitor Person or Property (excluding motor vehicle accident)' }\r\n];\r\nexport const YesNoOptions = [\r\n { key: YesNoEnum.Yes, value: 'Yes' },\r\n { key: YesNoEnum.No, value: 'No' }\r\n];\r\n\r\nexport const YesNoUnderInvestigationOptions = [\r\n { key: YesNoEnum.Yes, value: 'Yes' },\r\n { key: YesNoEnum.No, value: 'No' },\r\n { key: UnderInvestigation, value: UnderInvestigation }\r\n];\r\n///options ///////////\r\n\r\n///// Dropwdown list options ////////\r\n\r\nexport const Authorities = [\r\n { key: '', value: 'Please Select...' },\r\n { key: 'Police', value: 'Police' },\r\n { key: 'Fire', value: 'Fire' },\r\n { key: 'Ambulance', value: 'Ambulance' },\r\n { key: OtherExplainOption, value: OtherExplainOption }\r\n];\r\n\r\nexport const Directions = [\r\n { key: '', value: 'Please Select...' },\r\n { key: 'Northbound', value: 'Northbound' },\r\n { key: 'Southbound', value: 'Southbound' },\r\n { key: 'Eastbound', value: 'Eastbound' },\r\n { key: 'Westbound', value: 'Westbound' }\r\n];\r\n\r\nexport const Provinces = [\r\n { key: '', value: 'Please Select...' },\r\n { key: 'AB', value: 'Alberta' },\r\n { key: 'BC', value: 'British Columbia' },\r\n { key: 'MB', value: 'Manitoba' },\r\n { key: 'NB', value: 'New Brunswick' },\r\n { key: 'NL', value: 'Newfoundland and Labrador' },\r\n { key: 'NT', value: 'Northwest Territories' },\r\n { key: 'NS', value: 'Nova Scotia' },\r\n { key: 'NU', value: 'Nunavut' },\r\n { key: 'ON', value: 'Ontario' },\r\n { key: 'PE', value: 'Prince Edward Island' },\r\n { key: 'QC', value: 'Quebec' },\r\n { key: 'SK', value: 'Saskatchewan' },\r\n { key: 'YT', value: 'Yukon' }\r\n];\r\n\r\nexport const CauseOfTheIncidentOptions = [\r\n { key: '', value: 'Please Select...' },\r\n { key: 'Environment / Spill', value: 'Environment / Spill' },\r\n { key: 'Fire / Smoke / Explosion', value: 'Fire / Smoke / Explosion' },\r\n { key: 'Injury to Public', value: 'Injury to Public' },\r\n { key: 'Medical Condition', value: 'Medical Condition' },\r\n { key: 'Theft over $5000', value: 'Theft over $5000' },\r\n { key: 'Theft under $5000', value: 'Theft under $5000' },\r\n { key: 'Vandalism / Damages / Loss', value: 'Vandalism / Damages / Loss' },\r\n { key: 'Water Damage/Flooding', value: 'Water Damage/Flooding' },\r\n { key: 'Motor Vehicle Accident', value: 'Motor Vehicle Accident' },\r\n { key: 'Police Action', value: 'Police Action' },\r\n { key: 'Abuse (Physical/Mental/Verbal)', value: 'Abuse (Physical/Mental/Verbal)' },\r\n { key: 'Police Action (Board up)', value: 'Police Action (Board up)' }, \r\n { key: OtherExplainOption, value: OtherExplainOption }\r\n];\r\n///// End of Dropwdown list options /////\r\n\r\nexport const GetBaseUrl = () => {\r\n const getUrl = window.location;\r\n const baseUrl = getUrl.protocol + \"//\" + getUrl.host + \"/\" + getUrl.pathname.split('/')[1];\r\n return baseUrl[baseUrl.length - 1] === '/' ? baseUrl.substring(0, baseUrl.length - 1) : baseUrl;\r\n}\r\n\r\nexport const CreateTargetObject = (fieldId, fieldValue) => ({ target: { name: fieldId, value: fieldValue } });\r\nconst isValidPostalCode = (postalCode) => /^[A-Za-z]\\d[A-Za-z][ -]?\\d[A-Za-z]\\d$/.test(postalCode.trim());\r\nconst isValidEmail = (email) => /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/.test(email.trim());\r\nconst isValidPhone = (phone) => {\r\n phone = phone.trim();\r\n if (phone.length !== 10) {\r\n return false;\r\n }\r\n\r\n return /^[+]?[(]?[0-9]{3}[)]?[-\\s.]?[0-9]{3}[-\\s.]?[0-9]{4,6}$/.test(phone);\r\n}\r\nconst isValidPoliceFileNumber = (pfn) => {\r\n return /^\\d{2}-\\d{6,7}$/.test(pfn);\r\n}\r\nconst isPastDate = (date) => date instanceof Date ? date < new Date() : new Date(date) < new Date();\r\nconst isNonNegativeNumber = (number) => !isNaN(number) && number >= 0;\r\n\r\nconst ValidationFunctionMap = {\r\n [Validations.PoliceFileNumber]: { validationFunction: isValidPoliceFileNumber, errMsg: (fieldLabel) => `${fieldLabel} is not a valid Police File Number format. Format is 2X-XXXXXXX` },\r\n [Validations.Phone]: { validationFunction: isValidPhone, errMsg: (fieldLabel) => `${fieldLabel} is not a valid phone number format. Phone number must have 10 digits with no spaces, dashes or brackets.` },\r\n [Validations.Email]: { validationFunction: isValidEmail, errMsg: (fieldLabel) => `${fieldLabel} is not a valid email` },\r\n [Validations.PostalCode]: { validationFunction: isValidPostalCode, errMsg: (fieldLabel) => `${fieldLabel} is not a valid postal code` },\r\n [Validations.PastDate]: { validationFunction: isPastDate, errMsg: (fieldLabel) => `${fieldLabel} must be in the past` },\r\n [Validations.NonNegativeNumber]: { validationFunction: isNonNegativeNumber, errMsg: (fieldLabel) => `${fieldLabel} must be a positive number` }\r\n};\r\n\r\nconst getValidationValue = (validation, formData) => {\r\n if (typeof validation === \"function\") {\r\n return validation(formData);\r\n }\r\n else {\r\n return validation;\r\n }\r\n}\r\n\r\nexport const ValidatePage = (pageName, formData) => {\r\n let isPageValid = true;\r\n const newPageFormData = {};\r\n const page = PageToPageFieldsMap[pageName];\r\n for (const fieldId of Object.keys(page)) {\r\n let fieldValidationMessage = '';\r\n const pageFieldInfo = page[fieldId];\r\n const validationSettings = pageFieldInfo.validationSettings;\r\n if (validationSettings) {\r\n const formField = formData[fieldId] || {};\r\n const fieldValue = formField.fieldValue;\r\n if (!pageFieldInfo.shouldRender || (pageFieldInfo.shouldRender && pageFieldInfo.shouldRender(formData))) {\r\n const fieldLabel = pageFieldInfo.fieldLabel;\r\n const fieldLength = (fieldValue || '').toString().trim().length;\r\n const isMandatory = getValidationValue(validationSettings[Validations.Mandatory], formData);\r\n if (isMandatory && fieldLength === 0) {\r\n fieldValidationMessage = `This field is mandatory`;\r\n }\r\n else if (fieldLength > 0) {\r\n let iVosFieldLength = 0;\r\n if (pageFieldInfo.startIndex && pageFieldInfo.endIndex) {\r\n iVosFieldLength = pageFieldInfo.endIndex - pageFieldInfo.startIndex + 1;\r\n }\r\n const maxFieldLength =\r\n getValidationValue(validationSettings[Validations.MaxFieldLength], formData)\r\n || iVosFieldLength\r\n || MaxFieldLength;\r\n if (!(fieldValue instanceof Date) && fieldLength > maxFieldLength) {\r\n fieldValidationMessage = `Maxiumum length is ${maxFieldLength} characters`;\r\n }\r\n else {\r\n for (let [key, value] of Object.entries(validationSettings)) {\r\n if (key !== Validations.Mandatory && key !== Validations.MaxFieldLength) {\r\n const validation = typeof value === \"function\" ? getValidationValue(value, formData) : value;\r\n if (validation) {\r\n fieldValidationMessage = ValidationFunctionMap[key].validationFunction(fieldValue) ? '' : ValidationFunctionMap[key].errMsg(fieldLabel);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n let isFieldValid = !fieldValidationMessage;\r\n if (!isFieldValid || (isFieldValid && formField && formField.validationMessage)) {\r\n newPageFormData[fieldId] = new StateData(fieldId, fieldValue, fieldValidationMessage);\r\n }\r\n\r\n isPageValid &= isFieldValid;\r\n }\r\n }\r\n\r\n return [isPageValid, newPageFormData];\r\n};\r\n//#Page Data and Settings\r\n\r\n///// Page Data and Settings /////////////\r\nexport const Pages = {\r\n StartPage: 'StartPage',\r\n PersonalInfoPage: 'PersonalInfoPage',\r\n IncidentInfoPage: 'IncidentInfoPage',\r\n WitnessInfoPage: 'WitnessInfoPage',\r\n COEReportPage: 'COEReportPage',\r\n AuthorityReportPage: 'AuthorityReportPage',\r\n SubmitPage: 'SubmitPage',\r\n EmergencyContactPage: 'EmergencyContactPage',\r\n EFMCContactedPage: 'EFMCContactedPage',\r\n EmployeeSubmitterInfoPage: 'EmployeeSubmitterInfoPage',\r\n EPSSubmitterInfoPage: 'EPSSubmitterInfoPage',\r\n CausePage: 'CausePage',\r\n SubmissionCompletePage: 'SubmissionCompletePage'\r\n};\r\n\r\nexport const PageOrderByUser = {\r\n [UserTypes.Citizen]: [Pages.StartPage, Pages.PersonalInfoPage, Pages.IncidentInfoPage, Pages.WitnessInfoPage, Pages.COEReportPage,\r\n Pages.AuthorityReportPage, Pages.SubmitPage],\r\n [UserTypes.COEEmployee]: [Pages.StartPage, Pages.EmployeeSubmitterInfoPage, Pages.PersonalInfoPage,\r\n Pages.IncidentInfoPage, Pages.WitnessInfoPage, Pages.EmergencyContactPage, Pages.EFMCContactedPage, Pages.AuthorityReportPage, Pages.CausePage],\r\n [UserTypes.EPS]: [Pages.StartPage, Pages.EPSSubmitterInfoPage, Pages.PersonalInfoPage, Pages.IncidentInfoPage, Pages.WitnessInfoPage,\r\n Pages.EmergencyContactPage, Pages.EFMCContactedPage, Pages.CausePage]\r\n};\r\n\r\nexport const IsFieldMandatory = (fieldData, formData) => fieldData.validationSettings && (typeof fieldData.validationSettings[Validations.Mandatory] === 'function' ? fieldData.validationSettings[Validations.Mandatory](formData) : fieldData.validationSettings[Validations.Mandatory]);\r\nexport const GetFormFieldValidationMsg = (formData, fieldData) => {\r\n const formDataForField = formData[fieldData.fieldId];\r\n if (!formDataForField || !formDataForField.validationMessage) {\r\n return '';\r\n }\r\n const validationSettings = fieldData.validationSettings;\r\n const mandatorySetting = validationSettings && validationSettings[Validations.Mandatory];\r\n if (mandatorySetting && typeof mandatorySetting === 'function' && !mandatorySetting(formData)) {\r\n formDataForField.validationMessage = '';\r\n }\r\n\r\n return formDataForField.validationMessage;\r\n}\r\nexport const GetFormFieldValue = (formData, fieldId) => formData[fieldId] ? formData[fieldId].fieldValue : '';\r\n\r\n/// Each Page setting property and fieldId should be unique in the application. /////\r\n/// The object properties(same as fieldId) order should be as it appears on the page since ES2015 perserves order of properties. /////\r\nconst vehicleInfoRender = (formData) => {\r\n var policyType = GetFormFieldValue(formData, StartPageSettings.insurancePolicyType.fieldId);\r\n return policyType === InsurancePolicyTypes.CitizenAuto || policyType === InsurancePolicyTypes.EPSVehicle\r\n};\r\n//const shouldVehicleInfoBeMandatory = (formData) => vehicleInfoRender(formData); // GetFormFieldValue(formData, StartPageSettings.userType.fieldId) !== UserTypes.Citizen;\r\nconst coePropertyDamageRender = (formData) => GetFormFieldValue(formData, StartPageSettings.userType.fieldId) === UserTypes.COEEmployee;\r\nconst isPoliceFileNumberMandatory = (formData) => GetFormFieldValue(formData, StartPageSettings.userType.fieldId) === UserTypes.EPS;\r\nexport const StartPageSettings = {\r\n userType: new PageSetting('userType', 'Who Are You?', new ValidationSetting({[Validations.Mandatory]:true})),\r\n insurancePolicyType: new PageSetting('insurancePolicyType',\r\n 'Does your claim involve a City of Edmonton vehicle? (eg. ETS, DATS, EPS, City of Edmonton vehicle)?',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.CL, 44, 81),\r\n coePropertyDamage: new PageSetting('coePropertyDamage', 'Is there damage to City of Edmonton property?',\r\n new ValidationSetting({ [Validations.Mandatory]: false }), coePropertyDamageRender),\r\n licensePlateNumber: new PageSetting('licensePlateNumber', 'License Plate Number',\r\n new ValidationSetting({ [Validations.Mandatory]: false }), vehicleInfoRender, null, IVosLine.VEH, 1534, 1613),\r\n vehicleUnitNumber: new PageSetting('vehicleUnitNumber', 'Unit Number',\r\n new ValidationSetting({ [Validations.Mandatory]: false }), vehicleInfoRender, null, IVosLine.VEH, 127, 156),\r\n transitReportNumber: new PageSetting('transitReportNumber', 'Transit / Fleet Report Number',\r\n new ValidationSetting({ [Validations.Mandatory]: false }), vehicleInfoRender, null, IVosLine.VEH, 3358, 3367),\r\n policeFileNumber: new PageSetting('policeFileNumber', 'Police File Number',\r\n new ValidationSetting({ [Validations.Mandatory]: isPoliceFileNumberMandatory, [Validations.PoliceFileNumber]:true }), null, null, IVosLine.CL, 829, 846)\r\n};\r\n\r\nexport const PersonalInfoPageSettings = {\r\n firstName: new PageSetting('firstName', 'First Name',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.CT, 141, 155),\r\n lastName: new PageSetting('lastName', 'Last Name',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.CT, 156, 185),\r\n address: new PageSetting('address', 'Address',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.CT, 202, 251),\r\n addressPostalCode: new PageSetting('addressPostalCode', 'Postal Code',\r\n new ValidationSetting({ [Validations.Mandatory]: true, [Validations.PostalCode]: true }), null, null, IVosLine.CT, 339, 347),\r\n addressCity: new PageSetting('addressCity', 'City',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.CT, 302, 336),\r\n addressProvince: new PageSetting('addressProvince', 'Province',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.CT, 337, 338), \r\n phoneNumber: new PageSetting('phoneNumber', 'Phone',\r\n new ValidationSetting({ [Validations.Mandatory]: true, [Validations.Phone]: true }), null, null, IVosLine.CT, 383, 402),\r\n email: new PageSetting('email', 'Email',\r\n new ValidationSetting({ [Validations.Email]: true }), null, null, IVosLine.CT, 443, 492),\r\n vehicleInfo: new PageSetting('vehicleInfo', 'Vehicle Info (Year/Make/Model)',\r\n new ValidationSetting({ [Validations.Mandatory]: false }), null, null, IVosLine.NOTE),\r\n};\r\n\r\nconst shouldRenderLocationFields = (formData, locationType) => GetFormFieldValue(formData, IncidentInfoPageSettings.typeOfLocation.fieldId) === locationType;\r\nexport const IncidentInfoPageSettings = {\r\n dateOfIncident: new PageSetting('dateOfIncident', 'Date and Time of Incident',\r\n new ValidationSetting({ [Validations.Mandatory]: true, [Validations.PastDate]: true }), null, null,\r\n IVosLine.CL, 178, 194),\r\n incidentFacility: new PageSetting('incidentFacility', 'Facility', null, null, null, IVosLine.NOTE, null, null, null, null, 1),\r\n typeOfLocation: new PageSetting('typeOfLocation', 'Location of Incident', new ValidationSetting({ [Validations.Mandatory]: true })),\r\n onStreetOfIncident: new PageSetting('onStreetOfIncident', 'On Street', new ValidationSetting({[Validations.Mandatory]:true}), (formData) => shouldRenderLocationFields(formData, LocationType.NearestIntersection)),\r\n crossStreetOfIncident: new PageSetting('crossStreetOfIncident', 'Cross Street', new ValidationSetting({[Validations.Mandatory]:true}), (formData) => shouldRenderLocationFields(formData, LocationType.NearestIntersection)),\r\n longitudeOfIncident: new PageSetting('longitudeOfIncident', 'Lon', new ValidationSetting({[Validations.Mandatory]:false})),\r\n latitudeOfIncident: new PageSetting('latitudeOfIncident', 'Lat', new ValidationSetting({[Validations.Mandatory]:false})),\r\n incidentApartmentNumber: new PageSetting('incidentApartmentNumber', 'Apartment Number', null, (formData) => shouldRenderLocationFields(formData, LocationType.StreetAddress)),\r\n incidentHouseNumber: new PageSetting('incidentHouseNumber', 'House Number', new ValidationSetting({[Validations.Mandatory]:true}), (formData) => shouldRenderLocationFields(formData, LocationType.StreetAddress)),\r\n incidentStreetName: new PageSetting('incidentStreetName', 'Street Name', new ValidationSetting({[Validations.Mandatory]:true}), (formData) => shouldRenderLocationFields(formData, LocationType.StreetAddress)),\r\n directionOfTravel: new PageSetting('directionOfTravel', 'Direction of Travel', new ValidationSetting({[Validations.Mandatory]:true}), (formData) => shouldRenderLocationFields(formData, LocationType.NearestIntersection)),\r\n descriptionOfLocation: new PageSetting('descriptionOfLocation', 'Description of Location', new ValidationSetting({ [Validations.Mandatory]: true }), (formData) => shouldRenderLocationFields(formData, LocationType.OutsideEdmonton)),\r\n descriptionOfIncident: new PageSetting('descriptionOfIncident', 'Description of Incident',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.CL, 899, 1153), // maps to claim comment set to 255 characters instead of NOTE\r\n descriptionOfDamageOrInjury: new PageSetting('descriptionOfDamageOrInjury', 'Description of Damage or Injury', // if there is additional info provide a document\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE),\r\n estimatedValueOfDamage: new PageSetting('estimatedValueOfDamage', 'Estimated Value of Damage in Dollars',\r\n new ValidationSetting({ [Validations.Mandatory]: true, [Validations.NonNegativeNumber]: true }),\r\n null, null, IVosLine.CT, 2169, 2188), \r\n files: new PageSetting('files', 'Upload Supporting Documents', null),\r\n};\r\n\r\nexport const MaximumNumberOfWitnesses = 3; // if this value changes then WitnessInfoPageSettings need to be updated\r\nconst shouldRenderWitness = (witnessNumber, formData) => witnessNumber <= formData[NumberOfWitnessesFieldName];\r\nexport const WitnessInfoPageSettings = {\r\n witness1FirstName: new PageSetting('witness1FirstName', 'First Name', null,\r\n (formData) => shouldRenderWitness(1, formData), null, IVosLine.CONTA, 294, 308, null, null, 1),\r\n witness1LastName: new PageSetting('witness1LastName', 'Last Name', null,\r\n (formData) => shouldRenderWitness(1, formData), null, IVosLine.CONTA, 309, 338, null, null, 1),\r\n witness1PhoneNumber: new PageSetting('witness1PhoneNumber', 'Phone Number',\r\n new ValidationSetting({ [Validations.Phone]: true }),\r\n (formData) => shouldRenderWitness(1, formData), null, IVosLine.CONTA, 339, 358, null, null, 1),\r\n witness1Email: new PageSetting('witness1Email', 'Email',\r\n new ValidationSetting({ [Validations.Email]: true }),\r\n (formData) => shouldRenderWitness(1, formData), null, IVosLine.CONTA, 429, 478, null, null, 1),\r\n witness1Relationship: new PageSetting('witness1Relationship', 'Relationship', null,\r\n (formData) => shouldRenderWitness(1, formData), null, IVosLine.CONTA, 171, 220, null, null, 1),\r\n witness2FirstName: new PageSetting('witness2FirstName', 'First Name', null,\r\n (formData) => shouldRenderWitness(2, formData), null, IVosLine.CONTA, 294, 308, null, null, 2),\r\n witness2LastName: new PageSetting('witness2LastName', 'Last Name', null,\r\n (formData) => shouldRenderWitness(2, formData), null, IVosLine.CONTA, 309, 338, null, null, 2),\r\n witness2PhoneNumber: new PageSetting('witness2PhoneNumber', 'Phone Number',\r\n new ValidationSetting({ [Validations.Phone]: true }),\r\n (formData) => shouldRenderWitness(2, formData), null, IVosLine.CONTA, 339, 358, null, null, 2),\r\n witness2Email: new PageSetting('witness2Email', 'Email',\r\n new ValidationSetting({ [Validations.Email]: true }),\r\n (formData) => shouldRenderWitness(2, formData), null, IVosLine.CONTA, 429, 478, null, null, 2),\r\n witness2Relationship: new PageSetting('witness2Relationship', 'Relationship', null,\r\n (formData) => shouldRenderWitness(2, formData), null, IVosLine.CONTA, 171, 220, null, null, 2),\r\n witness3FirstName: new PageSetting('witness3FirstName', 'First Name', null,\r\n (formData) => shouldRenderWitness(3, formData), null, IVosLine.CONTA, 294, 308, null, null, 3),\r\n witness3LastName: new PageSetting('witness3LastName', 'Last Name', null,\r\n (formData) => shouldRenderWitness(3, formData), null, IVosLine.CONTA, 309, 338, null, null, 3),\r\n witness3PhoneNumber: new PageSetting('witness3PhoneNumber', 'Phone Number',\r\n new ValidationSetting({ [Validations.Phone]: true }),\r\n (formData) => shouldRenderWitness(3, formData), null, IVosLine.CONTA, 339, 358, null, null, 3),\r\n witness3Email: new PageSetting('witness3Email', 'Email',\r\n new ValidationSetting({ [Validations.Email]: true }),\r\n (formData) => shouldRenderWitness(3, formData), null, IVosLine.CONTA, 429, 478, null, null, 3),\r\n witness3Relationship: new PageSetting('witness3Relationship', 'Relationship', null,\r\n (formData) => shouldRenderWitness(3, formData), null, IVosLine.CONTA, 171, 220, null, null, 3)\r\n};\r\n\r\nconst shouldRenderCoEContactFields = (formData) => GetFormFieldValue(formData, COEReportPageSettings.isReportedToCOE.fieldId) === YesNoEnum.Yes;\r\nexport const COEReportPageSettings = {\r\n isReportedToCOE: new PageSetting('isReportedToCOE', 'Have you reported this incident to the City of Edmonton?', null, null, null, IVosLine.NOTE, null, null, null, null, 2),\r\n reportCOEContactName: new PageSetting('reportCOEContactName', 'City Contact Name', new ValidationSetting({ [Validations.Mandatory]: true }), shouldRenderCoEContactFields, null, IVosLine.NOTE, null, null, null, null, 2), \r\n reportCOEContactEmail: new PageSetting('reportCOEContactEmail', 'City Contact Email', new ValidationSetting({ [Validations.Email]: true }), shouldRenderCoEContactFields, null, IVosLine.NOTE, null, null, null, null, 2),\r\n reportCOEContactPhoneNumber: new PageSetting('reportCOEContactPhoneNumber', 'City Contact Phone', new ValidationSetting({ [Validations.Phone]: false }), shouldRenderCoEContactFields, null, IVosLine.NOTE, null, null, null, null, 2),\r\n reportCOEFileNumber: new PageSetting('reportCOEFileNumber', 'File/Reference Number', null, shouldRenderCoEContactFields, null, IVosLine.NOTE, null, null, null, null, 2),\r\n reportCOEDate: new PageSetting('reportCOEDate', 'Date Reported', new ValidationSetting({ [Validations.PastDate]: true }), shouldRenderCoEContactFields, null, IVosLine.NOTE, null, null, null, null, 2),\r\n};\r\n\r\nconst shouldRenderAuthorityContactFields = (formData) => GetFormFieldValue(formData, AuthorityReportPageSettings.isReportedToAuthorities.fieldId) === YesNoEnum.Yes;\r\nconst shouldRenderOtherReportAuthority = (formData) => shouldRenderAuthorityContactFields(formData) && GetFormFieldValue(formData, AuthorityReportPageSettings.reportAuthority.fieldId) === OtherExplainOption;\r\nexport const AuthorityReportPageSettings = {\r\n isReportedToAuthorities: new PageSetting('isReportedToAuthorities', 'Were the authorities notified?', null, null, null, IVosLine.NOTE, null, null, null, null, 3),\r\n reportAuthority: new PageSetting('reportAuthority', 'Who was notified?', new ValidationSetting({ [Validations.Mandatory]: true }), shouldRenderAuthorityContactFields, null, IVosLine.NOTE, null, null, null, null, 3),\r\n otherReportAuthority: new PageSetting('otherReportAuthority', 'Please Specify', new ValidationSetting({ [Validations.Mandatory]: true }), shouldRenderOtherReportAuthority, null, IVosLine.NOTE, null, null, null, null, 3),\r\n reportAuthorityContactName: new PageSetting('reportAuthorityContactName', 'Authority Contact Name', new ValidationSetting({ [Validations.Mandatory]: true }), shouldRenderAuthorityContactFields, null, IVosLine.NOTE, null, null, null, null, 3),\r\n reportAuthorityContactEmail: new PageSetting('reportAuthorityContactEmail', 'Authority Contact Email', new ValidationSetting({ [Validations.Email]: true }), shouldRenderAuthorityContactFields, null, IVosLine.NOTE, null, null, null, null, 3),\r\n reportAuthorityContactPhoneNumber: new PageSetting('reportAuthorityContactPhoneNumber', 'Authority Contact Phone', new ValidationSetting({ [Validations.Phone]: true }), shouldRenderAuthorityContactFields, null, IVosLine.NOTE, null, null, null, null, 3),\r\n reportAuthorityFileNumber: new PageSetting('reportAuthorityFileNumber', 'File/Reference Number', null, shouldRenderAuthorityContactFields, null, IVosLine.NOTE, null, null, null, null, 3),\r\n reportAuthorityDate: new PageSetting('reportAuthorityDate', 'Date Reported', new ValidationSetting({ [Validations.PastDate]: true }), shouldRenderAuthorityContactFields, null, IVosLine.NOTE, null, null, null, null, 3),\r\n};\r\n\r\nexport const SubmitPageSettings = {\r\n responsibilityReason: new PageSetting('responsibilityReason',\r\n 'Why do you feel the City of Edmonton should be responsible for your damage or injury?',\r\n new ValidationSetting({[Validations.Mandatory]:true}), null, null, IVosLine.NOTE),\r\n termOfAgreement: new PageSetting('termOfAgreement',\r\n 'I solemnly swear that I am the owner/occupier of the property damaged, AND/OR I am the person who suffered from the above reported injuries, that the foregoing is a correct and accurate statement as to the damages incurred.',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, true),\r\n disclaimer: new PageSetting('disclaimer',\r\n 'This statement is for information purposes only and its receipt in no way infers acceptance of any responsibility by the City of Edmonton for the stated damages. Be aware that there are notice periods for providing the City of Edmonton with notice of certain types of claims and an ultimate limitation period to bring an action in respect of all claims. If the alleged damage might have occurred as a result of work being performed by a contractor on behalf of the City of Edmonton, your claim will be forwarded to the Contractor.',\r\n new ValidationSetting({[Validations.Mandatory]:true}), null, true),\r\n aboutCollectionOfData: new PageSetting('aboutCollectionOfData',\r\n 'This personal information is collected under the authority of Section 33(c) of the Freedom of Information and Protection of Privacy Act and will be used to process claims against the City of Edmonton. It may also be disclosed to third parties to verify the information given and/or for the processing of your claim. It is protected by the privacy provisions of the Act. If you have any questions about the collection, use or disclosure, contact the Director of Insurance and Claims Management, City of Edmonton, 4th Floor, Chancery Hall, 3 Sir Winston Churchill Square, 780-496-7200.',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, true),\r\n claimSubmittedBy: new PageSetting('claimSubmittedBy', 'Claim Submitted By',\r\n new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.CT, 1607, 1686)\r\n};\r\n\r\nconst shouldShowEmergencyContactFields = (formData) => GetFormFieldValue(formData, EmergencyContactPageFieldSettings.wasEmergencyContactNotified.fieldId) === YesNoEnum.Yes;\r\nexport const EmergencyContactPageFieldSettings = {\r\n wasEmergencyContactNotified: new PageSetting('wasEmergencyContactNotified', 'Was Next of Kin/Emergency Contact Notified?',\r\n new ValidationSetting({ [Validations.Mandatory]: true })),\r\n emergencyContactFirstName: new PageSetting('emergencyContactFirstName', 'First Name', new ValidationSetting({ [Validations.Mandatory]: true }),\r\n shouldShowEmergencyContactFields, null, IVosLine.CONTA, 294, 308, null, null, 4),\r\n emergencyContactLastName: new PageSetting('emergencyContactLastName', 'Last Name', new ValidationSetting({ [Validations.Mandatory]: true }),\r\n shouldShowEmergencyContactFields, null, IVosLine.CONTA, 309, 338, null, null, 4),\r\n emergencyContactPhone: new PageSetting('emergencyContactPhone', 'Phone', null,\r\n shouldShowEmergencyContactFields, null, IVosLine.CONTA, 339, 358, null, null, 4),\r\n emergencyContactRelationship: new PageSetting('emergencyContactRelationship', 'Relationship', new ValidationSetting({ [Validations.Mandatory]: true }),\r\n shouldShowEmergencyContactFields, null, IVosLine.CONTA, 171, 220, null, null, 4),\r\n}\r\n\r\nconst shouldShowWhatActionWasTakenByEmployee = (formData) => GetFormFieldValue(formData, EFMCContactedPageFieldDataSettings.wasEFMCContacted.fieldId) === YesNoEnum.Yes;\r\nexport const EFMCContactedPageFieldDataSettings = {\r\n wasEFMCContacted: new PageSetting('wasEFMCContacted', 'Were Emergency/Facility Maintenance Services Contacted?', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 4),\r\n whatActionWasTakenByEmployee: new PageSetting('whatActionWasTakenByEmployee', 'What is the FMS Work Order Number, and what action was taken by employee / department?', new ValidationSetting({ [Validations.Mandatory]: true }), shouldShowWhatActionWasTakenByEmployee, null, IVosLine.NOTE, null, null, null, null, 4)\r\n}\r\nconst shouldRenderOtherBranchName = (formData) => GetFormFieldValue(formData, EmployeeSubmitterInfoPageSettings.branch.fieldId) === \"ff154f11-1489-eaf4-4aae-a4bc4782f541\";\r\nexport const EmployeeSubmitterInfoPageSettings = {\r\n branch: new PageSetting('branch', 'Branch/Insured Partner', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 5),\r\n branchOtherName: new PageSetting('branchOtherName', 'Branch/Insured Partner Name', new ValidationSetting({ [Validations.Mandatory]: true }), (formData) => shouldRenderOtherBranchName(formData), null, IVosLine.NOTE, null, null, null, null, 5),\r\n department: new PageSetting('department', 'Department', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 5),\r\n section: new PageSetting('section', 'Section', new ValidationSetting({ [Validations.Mandatory]: false }), null, null, IVosLine.NOTE, null, null, null, null, 5),\r\n employeeFirstName: new PageSetting('employeeFirstName', 'Employee First Name ', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 5),\r\n employeeLastName: new PageSetting('employeeLastName', 'Employee Last Name', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 5),\r\n employeeEmail: new PageSetting('employeeEmail', 'Employee Email', new ValidationSetting({ [Validations.Mandatory]: true, [Validations.Email]:true }), null, null, IVosLine.NOTE, null, null, null, null, 5),\r\n}\r\n\r\nconst shouldRenderChargesDetails = (formData) => {\r\n const chargesLaidField = GetFormFieldValue(formData, EPSSubmitterInfoPageSettings.chargesLaid.fieldId);\r\n if (chargesLaidField === YesNoEnum.Yes || chargesLaidField === UnderInvestigation) {\r\n return true;\r\n }\r\n\r\n return false;\r\n}\r\n\r\nexport const EPSSubmitterInfoPageSettings = {\r\n badgeNumber: new PageSetting('badgeNumber', 'Badge Number', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 6),\r\n epsRank: new PageSetting('epsRank', 'Rank', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 6),\r\n epsName: new PageSetting('epsName', 'Name', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 6),\r\n epsEmail: new PageSetting('epsEmail', 'Email', new ValidationSetting({ [Validations.Mandatory]: true, [Validations.Email]: true }), null, null, IVosLine.NOTE, null, null, null, null, 6),\r\n docketNumber: new PageSetting('docketNumber', 'Docket Number', new ValidationSetting({ [Validations.Mandatory]: false }), null, null, IVosLine.NOTE, null, null, null, null, 6),\r\n courtDate: new PageSetting('courtDate', 'Court Date', null, null, null, IVosLine.NOTE, null, null, null, null, 6),\r\n chargesLaid: new PageSetting('chargesLaid', 'Have Charges Been Laid?', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 6),\r\n chargesDetails: new PageSetting('chargesDetails', 'Charge / Investigation Details - Include suspect name & DOB if available', new ValidationSetting({ [Validations.Mandatory]: true }), shouldRenderChargesDetails, null, IVosLine.NOTE, null, null, null, null, 6),\r\n damageDuringRegularDuties: new PageSetting('damageDuringRegularDuties', 'Was the damage done in the course of performing regular duties (i.e. search warrants, welfare checks)?', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 6),\r\n supervisorNotified: new PageSetting('supervisorNotified', 'Has your supervisor been advised of this incident?', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 6)\r\n}\r\n\r\nconst shouldRenderOtherExplaination = (formData) => GetFormFieldValue(formData, CausePageSettings.causeOfIncident.fieldId) === OtherExplainOption;\r\nexport const CausePageSettings = {\r\n causeOfIncident: new PageSetting('causeOfIncident', 'Cause of the Incident', new ValidationSetting({ [Validations.Mandatory]: true }), null, null, IVosLine.NOTE, null, null, null, null, 7),\r\n otherCauseExplaination: new PageSetting('otherCauseExplaination', 'Please Specify', new ValidationSetting({ [Validations.Mandatory]: true }), shouldRenderOtherExplaination, null, IVosLine.NOTE, null, null, null, null, 7)\r\n};\r\n\r\n\r\nexport const PageToPageFieldsMap = {\r\n [Pages.StartPage]: StartPageSettings,\r\n [Pages.PersonalInfoPage]: PersonalInfoPageSettings,\r\n [Pages.IncidentInfoPage]: IncidentInfoPageSettings,\r\n [Pages.WitnessInfoPage]: WitnessInfoPageSettings,\r\n [Pages.COEReportPage]: COEReportPageSettings,\r\n [Pages.AuthorityReportPage]: AuthorityReportPageSettings,\r\n [Pages.SubmitPage]: SubmitPageSettings,\r\n [Pages.EmergencyContactPage]: EmergencyContactPageFieldSettings,\r\n [Pages.EFMCContactedPage]: EFMCContactedPageFieldDataSettings,\r\n [Pages.EmployeeSubmitterInfoPage]: EmployeeSubmitterInfoPageSettings,\r\n [Pages.EPSSubmitterInfoPage]: EPSSubmitterInfoPageSettings,\r\n [Pages.CausePage]: CausePageSettings\r\n};\r\n\r\n///// End of Page Data and Settings /////////////\r\n//#endPage Data and Settings","import React from 'react';\r\nimport headerLogo from './edmonton.svg';\r\n\r\nconst CoEHeader = () => {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nexport default CoEHeader;","import React from 'react';\r\nimport footerLogo from './edmonton-square.svg';\r\n\r\nconst CoEFooter = () => {\r\n const currentYear = new Date().getFullYear();\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport default CoEFooter;","import React from 'react';\r\nimport * as Data from './Data/DataObjects';\r\n\r\nconst Announcement = (props) => {\r\n return (\r\n
\r\n

\r\n {props.text}\r\n

\r\n
\r\n );\r\n}\r\n\r\nexport default Announcement;","import React from 'react';\r\nimport * as Data from './Data/DataObjects';\r\n\r\nconst RadioButtonGroup = (props) => {\r\n if (props.fieldData.shouldRender && !props.fieldData.shouldRender(props.formData)) {\r\n return null;\r\n }\r\n const validationMsg = Data.GetFormFieldValidationMsg(props.formData, props.fieldData);\r\n let value = Data.GetFormFieldValue(props.formData, props.fieldData.fieldId);\r\n if (props.defaultValue && (value === null || value === undefined || value === '')) {\r\n value = props.defaultValue;\r\n }\r\n return (\r\n
\r\n \r\n
\r\n {props.options.map(option => (\r\n
\r\n \r\n \r\n
\r\n ))}\r\n

{validationMsg}

\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default RadioButtonGroup;","import React from 'react';\r\nimport NumberFormat from 'react-number-format';\r\nimport * as Data from './Data/DataObjects';\r\n\r\nconst TextInput = (props) => {\r\n if (props.fieldData.shouldRender && !props.fieldData.shouldRender(props.formData)) {\r\n return null;\r\n }\r\n const isFieldMandatory = Data.IsFieldMandatory(props.fieldData, props.formData);\r\n const validationMsg = Data.GetFormFieldValidationMsg(props.formData, props.fieldData);\r\n return (\r\n
\r\n \r\n
\r\n {props.isCurrencyField ?\r\n { return props.onChangeHandler(Data.CreateTargetObject(props.fieldData.fieldId, event.target.value.replace(/,/g, '').substring(1))) }}\r\n />\r\n :\r\n \r\n }\r\n

{props.message}

\r\n

{validationMsg}

\r\n
\r\n
{isFieldMandatory ? (*) : ''}
\r\n\r\n
\r\n );\r\n}\r\n\r\nexport default TextInput;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport RadioButtonGroup from './components/RadioButtonGroup';\r\nimport TextInput from './components/TextInput';\r\n\r\nconst StartPage = (props) => {\r\n if (props.currentPage !== Data.Pages.StartPage) {\r\n return null;\r\n }\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Who Are You

\r\n
\r\n

\r\n

\r\n
\r\n
\r\n \r\n\r\n {Data.StartPageSettings.coePropertyDamage.shouldRender(props.formData) ?\r\n <>\r\n
\r\n
\r\n Is there damage to City of Edmonton property (or a leased property insured by the City of Edmonton)?\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n :\r\n \r\n Data.GetFormFieldValue(props.formData, Data.StartPageSettings.userType.fieldId) === Data.UserTypes.Citizen ?\r\n <>\r\n
\r\n
\r\n Does your claim involve a City of Edmonton vehicle? (eg. ETS, DATS, EPS, City of Edmonton vehicle). \r\n
PLEASE NOTE: City Vehicle - DOES NOT INCLUDE - LRT, lawn sweepers, street sweepers and snow removal graders - for these types of units please choose \"No\".
\r\n
\r\n
\r\n\r\n \r\n \r\n :\r\n <>\r\n
\r\n
\r\n Does your claim involve:\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\r\nexport default StartPage;","import React from 'react';\r\nimport * as Data from './Data/DataObjects';\r\n\r\nconst DropdownList = (props) => {\r\n if (props.fieldData.shouldRender && !props.fieldData.shouldRender(props.formData)) {\r\n return null;\r\n }\r\n const isFieldMandatory = Data.IsFieldMandatory(props.fieldData, props.formData);\r\n const validationMsg = Data.GetFormFieldValidationMsg(props.formData, props.fieldData);\r\n return (\r\n
\r\n \r\n
\r\n \r\n {props.options.map(option => (\r\n \r\n ))}\r\n \r\n

{validationMsg}

\r\n
\r\n
{isFieldMandatory ? (*) : ''}
\r\n
\r\n );\r\n}\r\n\r\nexport default DropdownList;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport DropdownList from './components/DropdownList';\r\nimport Announcement from './components/Annoucement';\r\n\r\nconst PersonalInfoPage = (props) => { \r\n if (props.currentPage !== Data.Pages.PersonalInfoPage) {\r\n return null;\r\n }\r\n const userType = Data.GetFormFieldValue(props.formData, Data.StartPageSettings.userType.fieldId);\r\n const coeEmployeeAnnouncement = 'If name and information was not collected please fill in info as \"Unknown\" or \"N/A\". Do not use employee information.';\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

{userType === Data.UserTypes.Citizen ?\r\n 'Personal Information' : 'Citizen Information' }\r\n

\r\n
\r\n {userType === Data.UserTypes.COEEmployee ?\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 {userType === Data.UserTypes.Citizen ?\r\n
If email is not provided you will not get a copy of your submitted form.
\r\n : null}\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default PersonalInfoPage;","import React from 'react';\r\nimport * as Data from './Data/DataObjects';\r\n\r\nconst TextArea = (props) => {\r\n if (props.fieldData.shouldRender && !props.fieldData.shouldRender(props.formData)) {\r\n return null;\r\n }\r\n\r\n const isFieldMandatory = Data.IsFieldMandatory(props.fieldData, props.formData);\r\n const validationMsg = Data.GetFormFieldValidationMsg(props.formData, props.fieldData);\r\n let maxLength = Data.MaxFieldLength; \r\n if (props.fieldData.iVosLine && props.fieldData.startIndex && props.fieldData.endIndex) {\r\n maxLength = props.fieldData.endIndex - props.fieldData.startIndex + 1;\r\n }\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n

{props.message}

\r\n

{validationMsg}

\r\n
\r\n
{isFieldMandatory ? (*) : ''}
\r\n
\r\n );\r\n}\r\n\r\nexport default TextArea;","import React from 'react';\r\nimport DateTimePicker from 'react-datepicker';\r\nimport \"react-datepicker/dist/react-datepicker.css\";\r\nimport * as Data from './Data/DataObjects';\r\n\r\nconst DateTimeInput = (props) => {\r\n if (props.fieldData.shouldRender && !props.fieldData.shouldRender(props.formData)) {\r\n return null;\r\n }\r\n const isFieldMandatory = Data.IsFieldMandatory(props.fieldData, props.formData);\r\n const validationMsg = Data.GetFormFieldValidationMsg(props.formData, props.fieldData);\r\n return (\r\n
\r\n \r\n
\r\n props.onChangeHandler(Data.CreateTargetObject(props.fieldData.fieldId, newDate))}\r\n selected={Data.GetFormFieldValue(props.formData, props.fieldData.fieldId) ? props.formData[props.fieldData.fieldId].fieldValue : ''}\r\n name={props.fieldData.fieldId}\r\n autoComplete=\"off\"\r\n showTimeSelect={props.showTimeSelect}\r\n className={validationMsg ? \"form-control error-style\" : \"form-control\"}\r\n dateFormat=\"MMMM d, yyyy h:mm aa\"\r\n />\r\n {isFieldMandatory ? (*) : ''}\r\n \r\n

{validationMsg}

\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default DateTimeInput;","import React, { useRef } from 'react';\r\nimport * as Data from './Data/DataObjects';\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { faTimesCircle, faFileUpload } from '@fortawesome/free-solid-svg-icons';\r\nimport { FileDrop } from 'react-file-drop';\r\n\r\nconst FileInput = (props) => { \r\n const fileInputRef = useRef(null);\r\n const onTargetClick = () => {\r\n fileInputRef.current.click()\r\n }\r\n if (props.fieldData.shouldRender && !props.fieldData.shouldRender(props.formData)) {\r\n return null;\r\n }\r\n const isFieldMandatory = Data.IsFieldMandatory(props.fieldData, props.formData);\r\n const files = Data.GetFormFieldValue(props.formData, props.fieldData.fieldId) || [];\r\n const pluralStr = files.length === 1 ? '' : 's';\r\n const validationMsg = Data.GetFormFieldValidationMsg(props.formData, props.fieldData);\r\n return (\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n Drag files here or click to upload. \r\n \r\n \r\n
\r\n
\r\n

{validationMsg}

\r\n
\r\n
Selected file{pluralStr}:{files.length ? files.map((x, i) => (
{x.name} ({(x.size / 1000000).toFixed(2)} MB) props.deleteFile(x)}>
)) : ' No files selected'}
\r\n

Maximum total attachement size: 25 MB.

\r\n

Accepted file types:{`${Object.keys(Data.ValidFileTypes).map(x => ` ${x}`).toString()}.`}

\r\n
\r\n
\r\n
\r\n
{isFieldMandatory ? (*) : ''}
\r\n
\r\n );\r\n}\r\n\r\nexport default FileInput;","import React from 'react';\r\nimport { Map, Marker, GoogleApiWrapper } from 'google-maps-react';\r\nimport * as Data from './Data/DataObjects';\r\n\r\nclass MainMap extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n let lat, lng;\r\n if (props.lat && props.lng) {\r\n lat = props.lat;\r\n lng = props.lng;\r\n } \r\n else {\r\n lat = Data.StartLatitude;\r\n lng = Data.StartLongitude;\r\n }\r\n\r\n this.state = {\r\n centerAroundCurrentLocation: !(!!props.lat && !!props.lng),\r\n lat,\r\n lng,\r\n markers: [\r\n {\r\n title: \"Location Of Incident\",\r\n name: \"Location Of Incident\",\r\n position: {lat, lng}\r\n \r\n }\r\n ]\r\n };\r\n this.onClick = this.onClick.bind(this);\r\n }\r\n\r\n onClick(t, map, coord) {\r\n const { latLng } = coord;\r\n const lat = latLng.lat();\r\n const lng = latLng.lng();\r\n this.props.onMapClick(lng, lat);\r\n this.setState(previousState => {\r\n return {\r\n markers: [\r\n // ...previousState.markers, // comment out if only one marker on at a time\r\n {\r\n title: \"Location Of Incident\",\r\n name: \"Location Of Incident\",\r\n position: { lat, lng }\r\n }\r\n ]\r\n };\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n {this.state.markers.map((marker, index) => (\r\n \r\n ))}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nconst GoogleMapComponent = GoogleApiWrapper({\r\n apiKey: ('AIzaSyBtE4sYxuOCZo8wfl1-bhWmFOuVjTIUYhE')\r\n})(MainMap);\r\n\r\nexport default GoogleMapComponent;","import * as Data from './components/Data/DataObjects';\r\nimport Jsonp from './components/Data/jsonp';\r\nimport React, { useState, useEffect } from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport TextArea from './components/TextArea';\r\nimport DateTimeInput from './components/DateTimeInput';\r\nimport DropdownList from './components/DropdownList';\r\nimport FileInput from './components/FileInput';\r\nimport GoogleMapComponent from './components/GoogleMapComponent';\r\n\r\nconst IncidentInfoPage = (props) => {\r\n const [slimStreets, setSlimStreets] = useState([]);\r\n const currentPage = props.currentPage;\r\n useEffect(() => {\r\n if (currentPage === Data.Pages.IncidentInfoPage && slimStreets.length === 0) {\r\n Jsonp(\"https://maps.edmonton.ca/api/rest/address.ashx?request=getaddressstreetnames&arg=%7B%22StreetNameAndQuadrant%22%3A%22%22%7D&NaCl=3782305\",\r\n (data) => {\r\n const streetData = data.map(x => ({\r\n key: x.StreetNameAndQuadrant,\r\n value: x.StreetNameAndQuadrant\r\n }));\r\n streetData.unshift({ key: '', value: 'Please Select...' });\r\n setSlimStreets(streetData);\r\n },\r\n (error) => {\r\n });\r\n }\r\n }, [slimStreets, currentPage]);\r\n\r\n if (currentPage !== Data.Pages.IncidentInfoPage) {\r\n return null;\r\n }\r\n const userType = Data.GetFormFieldValue(props.formData, Data.StartPageSettings.userType.fieldId);\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Incident Information

\r\n
\r\n

\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {slimStreets.length ?\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 \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default IncidentInfoPage;","export default (url, callback, errorCallback = null, callbackParameter = 'callback', errorCallbackParameter = 'errCallBack') => {\r\n const callbackName = 'jsonp_callback_' + Math.round(100000 * Math.random());\r\n let errorCallbackName = null;\r\n url = url + (url.indexOf('?') >= 0 ? '&' : '?') + callbackParameter + '=' + callbackName;\r\n if (errorCallback) {\r\n errorCallbackName = 'jsonp_error_callback_' + Math.round(100000 * Math.random());\r\n window[errorCallbackName] = function (data) {\r\n delete window[errorCallbackName];\r\n delete window[callbackName];\r\n document.body.removeChild(script);\r\n errorCallback(data);\r\n };\r\n url = url + (url.indexOf('?') >= 0 ? '&' : '?') + errorCallbackParameter + '=' + errorCallbackName;\r\n }\r\n\r\n window[callbackName] = function (data) {\r\n delete window[callbackName];\r\n if (errorCallbackName) {\r\n delete window[errorCallbackName];\r\n }\r\n document.body.removeChild(script);\r\n callback(data);\r\n };\r\n\r\n var script = document.createElement('script'); \r\n script.src = url; \r\n document.body.appendChild(script);\r\n};\r\n","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\n\r\nconst WitnessInfoPage = (props) => { \r\n if (props.currentPage !== Data.Pages.WitnessInfoPage) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Witness Information

\r\n
\r\n

\r\n You can add up to {Data.MaximumNumberOfWitnesses} witnesses\r\n

\r\n
\r\n {Array.from(Array(props.formData[Data.NumberOfWitnessesFieldName]).keys(), x => x+1).map(x => (\r\n
\r\n
\r\n

Witness {x}

\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
\r\n
\r\n );\r\n}\r\n\r\nexport default WitnessInfoPage;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport DateTimeInput from './components/DateTimeInput';\r\nimport RadioButtonGroup from './components/RadioButtonGroup';\r\n\r\nconst COEReportPage = (props) => {\r\n if (props.currentPage !== Data.Pages.COEReportPage) {\r\n return null;\r\n }\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Have you reported this incident to the City of Edmonton?

\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\nexport default COEReportPage;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport DateTimeInput from './components/DateTimeInput';\r\nimport RadioButtonGroup from './components/RadioButtonGroup';\r\nimport DropdownList from './components/DropdownList';\r\n\r\nconst AuthorityReportPage = (props) => {\r\n if (props.currentPage !== Data.Pages.AuthorityReportPage) {\r\n return null;\r\n }\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Were the authorities notified?

\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\r\nexport default AuthorityReportPage;","import React from 'react';\r\nimport * as Data from './Data/DataObjects';\r\n\r\nconst CheckboxComponent = (props) => {\r\n if (props.fieldData.shouldRender && !props.fieldData.shouldRender(props.formData)) {\r\n return null;\r\n }\r\n \r\n const validationMsg = Data.GetFormFieldValidationMsg(props.formData, props.fieldData);\r\n return (\r\n
\r\n
\r\n props.onChangeHandler(Data.CreateTargetObject(props.fieldData.fieldId, event.target.checked)) }\r\n />\r\n {props.fieldData.fieldLabel}\r\n

{validationMsg}

\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default CheckboxComponent;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport TextArea from './components/TextArea';\r\nimport CheckboxComponent from './components/CheckboxComponent';\r\n\r\nconst SubmitPage = (props) => {\r\n if (props.currentPage !== Data.Pages.SubmitPage) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Submit

\r\n
\r\n

\r\n

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

Disclaimer

\r\n
\r\n
\r\n \r\n
\r\n
\r\n

About the Collection, Use, and Disclosure of Personal Information

\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Term of Agreement

\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\nexport default SubmitPage;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport TextArea from './components/TextArea';\r\nimport DateTimeInput from './components/DateTimeInput';\r\nimport CheckboxComponent from './components/CheckboxComponent';\r\nimport RadioButtonGroup from './components/RadioButtonGroup';\r\n//import axios from 'axios';\r\n\r\nconst EmergencyContactPage = (props) => {\r\n if (props.currentPage !== Data.Pages.EmergencyContactPage) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Emergency Contact Information

\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\nexport default EmergencyContactPage;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport TextArea from './components/TextArea';\r\nimport DateTimeInput from './components/DateTimeInput';\r\nimport CheckboxComponent from './components/CheckboxComponent';\r\nimport RadioButtonGroup from './components/RadioButtonGroup';\r\nimport Announcement from './components/Annoucement';\r\n//import axios from 'axios';\r\n\r\nconst EFMCContactedPage = (props) => {\r\n if (props.currentPage !== Data.Pages.EFMCContactedPage) {\r\n return null;\r\n }\r\n const userType = Data.GetFormFieldValue(props.formData, Data.StartPageSettings.userType.fieldId);\r\n const announcement = 'If this is a door breach, please indicate if a contractor was called to secure the building.';\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

EFMC Contact Information

\r\n
\r\n

\r\n

\r\n
\r\n
\r\n {userType === Data.UserTypes.EPS ?\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\nexport default EFMCContactedPage;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport Announcement from './components/Annoucement';\r\nimport DropdownList from './components/DropdownList';\r\n\r\nconst EmployeeSubmitterInfoPage = (props) => {\r\n if (props.currentPage !== Data.Pages.EmployeeSubmitterInfoPage) {\r\n return null;\r\n }\r\n return (\r\n <>\r\n
\r\n
\r\n
\r\n

\r\n STOP - If this is an EMERGENCY\r\n

\r\n During office hours, please call Insurance & Claims Management at 780-496-7200.\r\n

\r\n After hours:
\r\n For Property Damage, please call Facility Maintenance Emergency Services at 780-496-4270.\r\n
For Injuries, please call claims supervisor at 780-991-8029.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Employee Information

\r\n
\r\n

\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n { !!props.sections.length &&\r\n \r\n }\r\n \r\n \r\n \r\n
A copy of the submission will be sent to the email address you have provided.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default EmployeeSubmitterInfoPage;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport TextInput from './components/TextInput';\r\nimport TextArea from './components/TextArea';\r\nimport DateTimeInput from './components/DateTimeInput';\r\nimport CheckboxComponent from './components/CheckboxComponent';\r\nimport RadioButtonGroup from './components/RadioButtonGroup';\r\n//import axios from 'axios';\r\n\r\nconst EPSSubmitterInfoPage = (props) => {\r\n if (props.currentPage !== Data.Pages.EPSSubmitterInfoPage) {\r\n return null;\r\n }\r\n /*/// */\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

EPS Submitter Information

\r\n
\r\n

\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
Email notification of submission will be sent to ICOLSubmissionDist@edmontonpolice.ca in addition to the email address you have provided.
\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\nexport default EPSSubmitterInfoPage;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nimport DropdownList from './components/DropdownList';\r\nimport TextArea from './components/TextArea';\r\n//import axios from 'axios';\r\n\r\nconst CausePage = (props) => {\r\n if (props.currentPage !== Data.Pages.CausePage) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

Cause Of Incident

\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\nexport default CausePage;","import * as Data from './components/Data/DataObjects';\r\nimport React from 'react';\r\nconst SubmissionCompletePage = (props) => {\r\n if (props.currentPage !== Data.Pages.SubmissionCompletePage) {\r\n return null;\r\n }\r\n const reloadPage = (event) => {\r\n window.location.reload(false);\r\n }\r\n const title = props.isSuccessful ? `Form successfully submitted. Your submission reference number is ${props.refNumber}.`\r\n : `There was an error submitting your form. Please contact 311 if the error continues`;\r\n \r\n return (\r\n
\r\n
\r\n
\r\n
\r\n

{title}

\r\n
\r\n

\r\n Click here to go back to the City of Edmonton home page. \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\nexport default SubmissionCompletePage;","import React, { useState, useEffect } from 'react';\r\nimport { format } from 'date-fns';\r\nimport './coe.css';\r\nimport './custom.css'\r\nimport * as Data from './components/Data/DataObjects';\r\nimport CoEHeader from './components/Header/CoEHeader';\r\nimport CoEFooter from './components/Footer/CoEFooter';\r\nimport Announcement from './components/Annoucement';\r\nimport StartPage from './StartPage';\r\nimport PersonalInfoPage from './PersonalInfoPage';\r\nimport IncidentInfoPage from './IncidentInfoPage';\r\nimport WitnessInfoPage from './WitnessInfoPage';\r\nimport COEReportPage from './COEReportPage';\r\nimport AuthorityReportPage from './AuthorityReportPage';\r\nimport SubmitPage from './SubmitPage';\r\nimport EmergencyContactPage from './EmergencyContactPage';\r\nimport EFMCContactedPage from './EFMCContactedPage';\r\nimport EmployeeSubmitterInfoPage from './EmployeeSubmitterInfoPage';\r\nimport EPSSubmitterInfoPage from './EPSSubmitterInfoPage';\r\nimport CausePage from './CausePage';\r\nimport SubmissionCompletePage from './SubmissionCompletePage';\r\nimport axios from 'axios';\r\nimport { LoopCircleLoading } from 'react-loadingg';\r\n\r\nconst App = () => {\r\n const [currentPage, setCurrentPage] = useState(Data.Pages.StartPage);\r\n const [formData, setFormData] = useState({\r\n [Data.StartPageSettings.userType.fieldId]: new Data.StateData(Data.StartPageSettings.userType.fieldId, Data.UserTypes.Citizen),\r\n [Data.NumberOfWitnessesFieldName]: 0,\r\n [Data.EmergencyContactPageFieldSettings.wasEmergencyContactNotified.fieldId]: \r\n new Data.StateData(Data.EmergencyContactPageFieldSettings.wasEmergencyContactNotified.fieldId, Data.YesNoEnum.No),\r\n [Data.EFMCContactedPageFieldDataSettings.wasEFMCContacted.fieldId]:\r\n new Data.StateData(Data.EFMCContactedPageFieldDataSettings.wasEFMCContacted.fieldId, Data.YesNoEnum.No),\r\n [Data.IncidentInfoPageSettings.longitudeOfIncident.fieldId]: new Data.StateData(Data.IncidentInfoPageSettings.longitudeOfIncident.fieldId, Data.StartLongitude, null),\r\n [Data.IncidentInfoPageSettings.latitudeOfIncident.fieldId]: new Data.StateData(Data.IncidentInfoPageSettings.latitudeOfIncident.fieldId, Data.StartLatitude, null),\r\n\r\n });\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [submissionRefNumber, setSubmissionRefNumber] = useState(null);\r\n const [departments, setDepartments] = useState([]);\r\n const [branches, setBranches] = useState([]);\r\n const [sections, setSections] = useState([]);\r\n const [filteredBranches, setFilteredBranches] = useState([]);\r\n const [filteredSections, setFilteredSections] = useState([]);\r\n\r\n useEffect(() => {\r\n if (navigator && navigator.geolocation) {\r\n navigator.geolocation.getCurrentPosition((pos) => {\r\n const coords = pos.coords;\r\n setFormData({\r\n ...formData,\r\n [Data.IncidentInfoPageSettings.longitudeOfIncident.fieldId]: new Data.StateData(Data.IncidentInfoPageSettings.longitudeOfIncident.fieldId, coords.longitude, null),\r\n [Data.IncidentInfoPageSettings.latitudeOfIncident.fieldId]: new Data.StateData(Data.IncidentInfoPageSettings.latitudeOfIncident.fieldId, coords.latitude, null),\r\n });\r\n });\r\n }\r\n }, []);\r\n \r\n\r\n useEffect(() => { \r\n if (currentPage === Data.Pages.StartPage) {\r\n window.addEventListener(\"beforeunload\", Data.beforeUnloadEventHandler);\r\n }\r\n else if (currentPage === Data.Pages.SubmissionCompletePage) {\r\n window.removeEventListener(\"beforeunload\", Data.beforeUnloadEventHandler);\r\n }\r\n }, [currentPage]);\r\n useEffect(() => {\r\n window.scrollTo(0, 0); // move page to top of screen\r\n }, [currentPage]);\r\n\r\n useEffect(() => {\r\n if (!departments.length) {\r\n axios.get(`${Data.GetBaseUrl()}/home/getorgstructuresata`)\r\n .then(res => {\r\n const data = res.data;\r\n const depts = data.filter(x => x.OrganizationType === 'Department'\r\n && x.Name !== 'Office of the City Auditor').map(x => ({\r\n key: x.Id,\r\n value: x.Name,\r\n id: x.Id\r\n }));\r\n depts.unshift({ key: '', value: 'Please Select Department...' });\r\n depts.push(Data.OtherDepartmentInfo);\r\n setDepartments(depts);\r\n\r\n const brn = data.filter(x => x.OrganizationType === 'Branch').map(x => ({\r\n key: x.Id,\r\n value: x.Name,\r\n id: x.Id,\r\n parentId: x.ParentId\r\n }));\r\n\r\n brn.push(...Data.OtherBranches);\r\n setBranches(brn);\r\n setFilteredBranches([{\r\n key: '',\r\n value: 'Please select a Department first...',\r\n id: '',\r\n parentId: ''\r\n }]);\r\n const sectns = data.filter(x => x.OrganizationType === 'Section').map(x => ({\r\n id: x.Id,\r\n key: x.Id,\r\n value: x.Name,\r\n parentId: x.ParentId\r\n }));\r\n setSections(sectns);\r\n });\r\n }\r\n }, [departments]);\r\n \r\n const getUpdatedNumberOfWitnesses = (adjustment) => formData[Data.NumberOfWitnessesFieldName] + adjustment;\r\n const addWitness = () => setFormData({...formData, [Data.NumberOfWitnessesFieldName]: getUpdatedNumberOfWitnesses(1)});\r\n\r\n const removeWitness = () => {\r\n const numberOfWitnesses = formData[Data.NumberOfWitnessesFieldName];\r\n const clearWitnessData = {\r\n [Data.WitnessInfoPageSettings.witness1FirstName.fieldId.replace(/[1]/, numberOfWitnesses)]: null,\r\n [Data.WitnessInfoPageSettings.witness1LastName.fieldId.replace(/[1]/, numberOfWitnesses)]: null,\r\n [Data.WitnessInfoPageSettings.witness1PhoneNumber.fieldId.replace(/[1]/, numberOfWitnesses)]: null,\r\n [Data.WitnessInfoPageSettings.witness1Relationship.fieldId.replace(/[1]/, numberOfWitnesses)]: null\r\n };\r\n\r\n setFormData({ ...formData, ...clearWitnessData, [Data.NumberOfWitnessesFieldName]: getUpdatedNumberOfWitnesses(-1)}); \r\n }\r\n\r\n const updateLonLat = (lon, lat) => {\r\n setFormData({\r\n ...formData,\r\n [Data.IncidentInfoPageSettings.longitudeOfIncident.fieldId]: new Data.StateData(Data.IncidentInfoPageSettings.longitudeOfIncident.fieldId, lon, null),\r\n [Data.IncidentInfoPageSettings.latitudeOfIncident.fieldId]: new Data.StateData(Data.IncidentInfoPageSettings.latitudeOfIncident.fieldId, lat, null),\r\n }); \r\n }\r\n\r\n const filterOrgStructures = (orgArray, idToFilterBy) => orgArray.filter(x => x.parentId === idToFilterBy);\r\n const getNewFormData = (fieldId, newValue) => {\r\n let newFormData;\r\n if (fieldId === Data.EmployeeSubmitterInfoPageSettings.department.fieldId\r\n && formData[Data.EmployeeSubmitterInfoPageSettings.department.fieldId] !== newValue.fieldValue) {\r\n newFormData = {\r\n [fieldId]: newValue,\r\n [Data.EmployeeSubmitterInfoPageSettings.branch]: null,\r\n [Data.EmployeeSubmitterInfoPageSettings.section]: null\r\n };\r\n\r\n const filteredBranches = filterOrgStructures(branches, newValue.fieldValue);\r\n if (filteredBranches.length === 0) {\r\n filteredBranches.push({\r\n key: '',\r\n value: 'Please select a Department first...',\r\n id: '',\r\n parentId: ''\r\n });\r\n }\r\n else {\r\n filteredBranches.unshift({ key: '', value: 'Please Select Branch...', id: '', parentId: '' });\r\n }\r\n setFilteredBranches(filteredBranches);\r\n setFilteredSections([]);\r\n }\r\n else if (fieldId === Data.EmployeeSubmitterInfoPageSettings.branch.fieldId\r\n && formData[Data.EmployeeSubmitterInfoPageSettings.branch.fieldId] !== newValue.fieldValue) {\r\n newFormData = {\r\n [fieldId]: newValue,\r\n [Data.EmployeeSubmitterInfoPageSettings.section]: null\r\n };\r\n \r\n const filteredSections = filterOrgStructures(sections, newValue.fieldValue);\r\n if (filteredSections.length > 0) {\r\n filteredSections.unshift({ key: '', value: 'Please Select Section...', id: '', parentId: '' });\r\n }\r\n \r\n setFilteredSections(filteredSections);\r\n }\r\n else if (fieldId === Data.StartPageSettings.userType.fieldId) {\r\n newFormData = { [fieldId]: newValue, [Data.StartPageSettings.insurancePolicyType.fieldId]: null };\r\n }\r\n else {\r\n newFormData = { [fieldId]: newValue };\r\n }\r\n \r\n return newFormData;\r\n }\r\n\r\n const handleChange = (event) => { \r\n const fieldId = event.target.name;\r\n const newValue = new Data.StateData(fieldId, event.target.value, null);\r\n const newFormData = getNewFormData(fieldId, newValue);\r\n setFormData({ ...formData, ...newFormData });\r\n }\r\n\r\n const deleteFile = (fileToDelete) => {\r\n const fileData = [...formData[Data.IncidentInfoPageSettings.files.fieldId].fieldValue];\r\n let index = -1;\r\n let i = 0;\r\n for (const file of fileData) {\r\n if (fileToDelete.name === file.name && fileToDelete.size === file.size) {\r\n index = i;\r\n }\r\n i++;\r\n }\r\n if (index >= 0) {\r\n fileData.splice(index, 1);\r\n setFormData({ ...formData, [Data.IncidentInfoPageSettings.files.fieldId]: new Data.StateData(Data.IncidentInfoPageSettings.files.fieldId, fileData) });\r\n }\r\n }\r\n const onFileChange = (event) => {\r\n const uploadedFiles = event.target && event.target.files ? event.target.files : event;\r\n const files = [];\r\n const acceptedFileMimes = Object.entries(Data.ValidFileTypes).map(x => x[1]);\r\n let totalFileSize = 0;\r\n for (const file of uploadedFiles) {\r\n if (acceptedFileMimes.includes(file.type)) {\r\n files.push(file);\r\n totalFileSize += file.size;\r\n }\r\n }\r\n\r\n let fileSelector = document.getElementById(Data.FileSelectorId);\r\n fileSelector.value = \"\";\r\n\r\n if (totalFileSize > 25000000) {\r\n alert(\"File attachments cannot be greater than 25 MB in size in total.\")\r\n return;\r\n }\r\n\r\n const alreadyAddedFiles = Data.GetFormFieldValue(formData, Data.IncidentInfoPageSettings.files.fieldId) || [];\r\n setFormData({ ...formData, [Data.IncidentInfoPageSettings.files.fieldId]: new Data.StateData(Data.IncidentInfoPageSettings.files.fieldId, [...alreadyAddedFiles, ...files]) });\r\n }; \r\n\r\n const determineAndSetNextPage = (direction) => {\r\n const userPageOrderArray = Data.PageOrderByUser[formData[Data.StartPageSettings.userType.fieldId].fieldValue];\r\n const currentIndex = userPageOrderArray.indexOf(currentPage);\r\n const nextPage = userPageOrderArray[currentIndex + direction];\r\n setCurrentPage(nextPage);\r\n };\r\n\r\n const movePage = (direction) => { \r\n if (direction > 0) {\r\n const [isPageValid, newPageFormData] = Data.ValidatePage(currentPage, formData);\r\n if (isPageValid) {\r\n determineAndSetNextPage(direction);\r\n }\r\n else {\r\n setFormData({ ...formData, ...newPageFormData });\r\n //TODO display error message, move to top of page?\r\n }\r\n }\r\n else {\r\n determineAndSetNextPage(direction);\r\n }\r\n }\r\n\r\n const FormatFieldValue = (formFieldValue) => {\r\n if (formFieldValue === null || formFieldValue === undefined) {\r\n return \"\";\r\n }\r\n else if (formFieldValue instanceof Date) { \r\n return format(formFieldValue, 'yyyy/MM/dd HH:mm:ss');\r\n }\r\n else {\r\n return String(formFieldValue).trim();\r\n }\r\n }\r\n\r\n const submitForm = (event) => {\r\n event.preventDefault();\r\n const [isPageValid, newPageFormData] = Data.ValidatePage(currentPage, formData);\r\n if (!isPageValid) {\r\n setFormData({ ...formData, ...newPageFormData });\r\n return;\r\n }\r\n\r\n setIsLoading(true); \r\n const submitData = new FormData();\r\n const data = [];\r\n const userType = Data.GetFormFieldValue(formData, Data.StartPageSettings.userType.fieldId);\r\n\r\n const fileData = formData[Data.IncidentInfoPageSettings.files.fieldId];\r\n const fileNames = [];\r\n let i = 0;\r\n if (fileData && fileData.fieldValue) {\r\n \r\n for (const file of fileData.fieldValue) {\r\n submitData.append(`File${++i}`, file, file.name);\r\n fileNames.push(file.name);\r\n }\r\n } \r\n\r\n i = 0;\r\n for (const page of Data.PageOrderByUser[userType]) {\r\n const pageSetting = Data.PageToPageFieldsMap[page];\r\n for (const fieldId of Object.keys(pageSetting)) {\r\n if ((!pageSetting[fieldId].shouldRender || pageSetting[fieldId].shouldRender(formData)) && !pageSetting[fieldId].ignoreFieldWhenSubmitting) {\r\n let fieldValue;\r\n if (fieldId === Data.IncidentInfoPageSettings.files.fieldId) {\r\n fieldValue = fileNames.join(\", \");\r\n }\r\n else if (fieldId === Data.EmployeeSubmitterInfoPageSettings.department.fieldId) {\r\n const dept = departments.filter(x => x.id === (formData[fieldId] ? formData[fieldId].fieldValue : null));\r\n fieldValue = dept ? dept[0].value : null;\r\n }\r\n else if (fieldId === Data.EmployeeSubmitterInfoPageSettings.branch.fieldId) {\r\n const brn = branches.filter(x => x.id === (formData[fieldId] ? formData[fieldId].fieldValue : null));\r\n fieldValue = brn ? brn[0].value : null;\r\n }\r\n else if (fieldId === Data.EmployeeSubmitterInfoPageSettings.section.fieldId) {\r\n const section = sections.filter(x => x.id === (formData[fieldId] ? formData[fieldId].fieldValue : null));\r\n fieldValue = section && section[0] ? section[0].value : null;\r\n }\r\n else {\r\n fieldValue = formData[fieldId] ? formData[fieldId].fieldValue : null;\r\n }\r\n\r\n data.push({\r\n FieldId: fieldId,\r\n FieldValue: FormatFieldValue(fieldValue),\r\n FieldLabel: pageSetting[fieldId].fieldLabel,\r\n IVosLine: pageSetting[fieldId].iVosLine,\r\n StartIndex: pageSetting[fieldId].startIndex,\r\n EndIndex: pageSetting[fieldId].endIndex,\r\n PaddingCharacter: pageSetting[fieldId].paddingCharacter ? pageSetting[fieldId].paddingCharacter : pageSetting[fieldId].iVosLine ? Data.PaddingCharacter.Blank : null,\r\n PaddingSide: pageSetting[fieldId].paddingSide ? pageSetting[fieldId].paddingSide : pageSetting[fieldId].iVosLine ? Data.PaddingSide.Right : null,\r\n IVosLineGroupingId: pageSetting[fieldId].iVosLineGroupingId,\r\n FieldOrderNumber: ++i\r\n });\r\n }\r\n }\r\n }\r\n\r\n submitData.append('formData', JSON.stringify({ Data: data }));\r\n axios.post(`${Data.GetBaseUrl()}/home`, submitData, {})\r\n .then(res => {\r\n setIsLoading(false);\r\n // console.log(res);\r\n if (res.status === 201) {\r\n setSubmissionRefNumber(res.data.claimNumber); \r\n }\r\n else {\r\n //TODO set error message \r\n }\r\n setCurrentPage(Data.Pages.SubmissionCompletePage);\r\n });\r\n }\r\n\r\n const isLastPageDisplayed = () => {\r\n const userType = Data.GetFormFieldValue(formData, Data.StartPageSettings.userType.fieldId);\r\n return userType && currentPage === Data.PageOrderByUser[userType].slice(-1)[0];\r\n }\r\n\r\n const isFirstPageDisplayed = () => {\r\n const userType = Data.GetFormFieldValue(formData, Data.StartPageSettings.userType.fieldId);\r\n return !userType || currentPage === Data.PageOrderByUser[userType][0];\r\n }\r\n\r\n const getPaginationText = () => {\r\n const userType = Data.GetFormFieldValue(formData, Data.StartPageSettings.userType.fieldId);\r\n return userType ? `Page ${Data.PageOrderByUser[userType].indexOf(currentPage)+1} of ${Data.PageOrderByUser[userType].length}` : '';\r\n }\r\n const TopMessageJsx = <> In order to start an injury or property damage claim with the City of Edmonton, complete the following form and your request will be reviewed by the Insurance and Claims Management Group.\r\n ;\r\n\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n

Injury and Property Damage Claim Form

\r\n
\r\n
\r\n { currentPage === Data.Pages.StartPage ?\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 \r\n \r\n \r\n {currentPage !== Data.Pages.SubmissionCompletePage ?\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {isLoading ? \r\n : {getPaginationText()}\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\nexport default App;\r\n","// In production, we register a service worker to serve assets from local cache.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\r\n// cached resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\r\n// This link also includes instructions on opting out of this behavior.\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.1/8 is considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport default function register () {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Lets check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl);\r\n } else {\r\n // Is not local host. Just register service worker\r\n registerValidSW(swUrl);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW (swUrl) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the old content will have been purged and\r\n // the fresh content will have been added to the cache.\r\n // It's the perfect time to display a \"New content is\r\n // available; please refresh.\" message in your web app.\r\n console.log('New content is available; please refresh.');\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker (swUrl) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl)\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n if (\r\n response.status === 404 ||\r\n response.headers.get('content-type').indexOf('javascript') === -1\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister () {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","import 'bootstrap/dist/css/bootstrap.css';\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\n//import { BrowserRouter } from 'react-router-dom';\r\nimport App from './App';\r\nimport * as serviceWorker from './registerServiceWorker';\r\n\r\n//const baseUrl = document.getElementsByTagName('base')[0].getAttribute('href');\r\nconst rootElement = document.getElementById('root');\r\n\r\n//ReactDOM.render(\r\n// \r\n// \r\n// ,\r\n// rootElement);\r\n\r\nReactDOM.render( \r\n ,\r\n rootElement);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n\r\n","module.exports = __webpack_public_path__ + \"static/media/edmonton.7743875a.svg\";","module.exports = __webpack_public_path__ + \"static/media/edmonton-square.958c71b1.svg\";"],"sourceRoot":""}