{"version":3,"sources":["../../wn-claims-shared/dist/schema/geyser-schema.js","../../wn-claims-shared/dist/schema/property-loss-schema.js","../../wn-claims-shared/dist/schema/public-liability-schema.js","../../wn-claims-shared/dist/schema/vehicle-loss-schema.js","../../wn-claims-shared/dist/schema/windscreen-schema.js","../../wn-claims-shared/dist/schema/vehicle-collision-schema.js","utils/common.js","containers/Wizard.js","components/Geyser/data.js","components/Geyser/Geyser.jsx","components/PropertyLoss/PropertyLoss.jsx","components/Windscreen/Windscreen.jsx","components/PublicLiability/PublicLiability.jsx","components/VehicleLoss/VehicleLoss.jsx","components/VehicleCollision/VehicleCollision.jsx","../../wn-claims-shared/dist/schema/form-selection-schema.js","components/FormSelection/uiSchema.js","components/FormSelection/FormSelection.jsx","../../wn-claims-shared/dist/schema/vehicle-collision-schema-readonly.js","../../wn-claims-shared/dist/schema/geyser-schema-readonly.js","../../wn-claims-shared/dist/schema/property-loss-schema-readonly.js","../../wn-claims-shared/dist/schema/public-liability-schema-readonly.js","../../wn-claims-shared/dist/schema/vehicle-loss-schema-readonly.js","../../wn-claims-shared/dist/schema/windscreen-schema-readonly.js","../../wn-claims-shared/dist/schema/geyser-schema-2021.js","../../wn-claims-shared/dist/schema/property-loss-schema-2021.js","../../wn-claims-shared/dist/schema/public-liability-schema-2021.js","../../wn-claims-shared/dist/schema/vehicle-loss-schema-2021.js","../../wn-claims-shared/dist/schema/windscreen-schema-2021.js","components/ReadOnly/ReadOnlyWizard.jsx","components/ReadOnly/ReadOnly.jsx","routes/AppRouter.jsx","components/common/Header.jsx","components/common/Footer.jsx","components/App/App.jsx","serviceWorker.js","store/reducer.js","store/actions.js","index.js"],"names":["geyser_schema_schema","title","description","type","properties","incident","required","insureddateloss","format","incidentsection","incidentAddress","incidentLat","incidentLong","incidentDescription","incidentburstgeyser","enum","incidentgeysersize","incidentDamages","incidentResultantDamage","dependencies","oneOf","incidentResultantDamageOptions","floors","carpets","ceilings","cupboards","other","incidentOtherPolicy","attachments","attachmentsList","items","attachment","key","maxLength","declaration","insuredaccepttc","insuredcapcity","insureddate","geyser_schema_uiSchema","ui:widget","ui:options","rows","property_loss_schema_schema","incidentisCovered","theft","theftClaim","theftClaimDetails","theftAlarmWorking","theftDescription","police","policeReported","reportDetails","policePlaceReported","policeDateReported","policeCaseNumber","reportNote","otherParty","otherPartyIncident","otherPartyIncidentDetails","name","contactNumber","minLength","email","address","lat","long","property_loss_schema_uiSchema","incidentCause","public_liability_schema_schema","witnesses","witnessList","witness","propertyDamage","propertyDamageName","propertyDamageContactNumber","propertyDamageAddress","personalInjuries","personalInjuriesList","person","attachmentsDescription","public_liability_schema_uiSchema","propertyDamageDescription","relationshipsDescription","orderable","vehicle_loss_schema_schema","incidentVehicleRecovered","currentVehicleLocation","vehicleDetails","vehicleMake","vehicleModel","vehicleYear","vehicleRegistration","vehicleVinNumber","vehicleEngineNumber","driverDetails","driverIsOwner","driverFullName","driverIdPassport","driverContactNumber","driverEmail","driverPermissionByInsured","injured","vehicle_loss_schema_uiSchema","windscreen_schema_schema","incidentChipped","incidentCrackedShattered","windscreen_schema_uiSchema","vehicle_collision_schema_schema","incidentDriverDrugTest","incidentCoverInfo","incidentCover","incidentPolicyDetails","incidentVehicleStatusInfo","incidentVehicleStatus","incidentVehicleLocation","incidentVehicleTowDetails","incidentAssistLineInfo","incidentAssistLine","incidentWNReferenceNumber","incidentReport","injuredPassengers","injuredPassengersInjured","thirdParty","thirdPartyName","thirdPartyContactPerson","thirdPartyContactNumber","thirdPartyEmail","thirdPartyInsurer","thirdPartyInsurerInfo","thirdPartyInsurerDetails","thirdPartyPolicyNumber","thirdPartyvehicleDetails","thirdPartyMake","thirdPartyModel","thirdPartyYear","thirdPartyRegistration","thirdPartyVinNumber","thirdPartyinjured","thirdPartyInjuries","thirdPartyInjuriesList","vehicle_collision_schema_uiSchema","objectMap","object","mapFn","Object","keys","reduce","result","logger","params","_console","console","log","apply","toConsumableArray","logFormEvent","bind","fileSizeExceeded","Wizard","props","_this","schema","uiSchema","classCallCheck","this","possibleConstructorReturn","getPrototypeOf","call","validateTelNumbers","formData","errors","phoneno","forEach","element","formDataInfo","hasOwnProperty","match","onSubmit","_ref","state","step","schemas","length","newstep","parseInt","setState","objectSpread","readOnly","formStage","postForm","getBase64FileName","base64str","str","substr","indexOf","lastIndexOf","getAttachments","attachmentKeys","entry","fileName","fileContent","push","content","hostname","window","location","url","host","config","hosts","concat","postFormEndpoint","warn","default","concatData","selectedForm","strData","JSON","stringify","ct","claimtype","reg","region","FormGuid","formguid","data","Form","FormGUID","Claim","Insured","insuredName","PolicyNo","insuredPolicyNumber","Region","requestorType","ClientEmail","clientEmail","BrokerEmail","brokeremail","Attachments","axios","post","then","response","catch","error","message","code","onBack","_ref2","onStep","handleTabClick","k","checkDuplicateAttachments","files","$","i","fileSize","textContent","split","replace","trim","alert","attr","removeAttr","occurrences","filtered","filter","x","index","handleChanges","_data$formData","descriptionSketch","claimsAttachment","itemsClaimedDocs","document","getElementById","value","saveTabs","thirdparty","thirdpartyInvolved","splice","thirdpartyOther","thirdpartyHaveDetails","selectFormData","GeyserSchema","GeyseruiSchema","VehicleLossSchema","VehicleLossuiSchema","VehicleCollisionSchema","VehicleCollisionuiSchema","WindscreenSchema","WindscreenuiSchema","PropertyLossSchema","PropertyLossuiSchema","PublicLiabilitySchema","PublicLiabilityuiSchema","uiSchemas","btnSubmit","react_default","a","createElement","TitleField","_ref3","className","map","prop","href","back","next","readOnlyHeader","form","tabs","_this2","_this$state","onClick","navHomeReadOnly","navHome","id","style","boxShadow","formErrCode","margin","lib_default","onChange","onError","showErrorList","disabled","validate","tab","cursor","padding","Component","insuredresultantdamages","Geyser","fadeIn","useSpring","opacity","from","web","div","containers_Wizard","PropertyLoss","Windscreen","PublicLiability","VehicleLoss","VehicleCollision","form_selection_schema","insuredtel","brokerage","brokerName","claimtypeCat","claimMotor","claimNonMotor","thirdpartyHaveDetailsNote","classNames","uuidv4","require","FormSelection","_Component","addError","handleFormSelection","e","fD","handleFieldChange","event","parent","removeClass","text","addClass","val","inherits","createClass","selectedFormComponent","components_Geyser_Geyser","components_VehicleLoss_VehicleLoss","components_VehicleCollision_VehicleCollision","components_Windscreen_Windscreen","components_PropertyLoss_PropertyLoss","components_PublicLiability_PublicLiability","formSelect","vehicle_collision_schema_readonly_schema","info","vehicle_collision_schema_readonly_uiSchema","geyser_schema_readonly_schema","geyser_schema_readonly_uiSchema","property_loss_schema_readonly_schema","property_loss_schema_readonly_uiSchema","public_liability_schema_readonly_schema","public_liability_schema_readonly_uiSchema","vehicle_loss_schema_readonly_schema","vehicle_loss_schema_readonly_uiSchema","windscreen_schema_readonly_schema","windscreen_schema_readonly_uiSchema","geyser_schema_2021_schema","broker","brokertel","insured","insuredcell","insuredaddress","insuredsection","insuredburstgeyser","insuredgeysersize","insuredgeyserrepair","geyser_schema_2021_uiSchema","property_loss_schema_2021_schema","insuredContactPerson","insuredContactNumber","insuredContactEmail","insuredVatNumber","incidentdate","incidentplace","incidentestimate","policeplaceReported","policedateReported","policecaseNumber","otherPartyName","otherPartyContactNumber","otherPartyEmail","otherPartyAddress","theftalarmWorking","theftalarmReport","theftforcedEntry","eventDescription","itemsClaimed","itemsClaimedArr","itemsClaimedDescription","itemsClaimedDateReplaced","itemsClaimedCost","property_loss_schema_2021_uiSchema","public_liability_schema_2021_schema","claims","claimsDescription","public_liability_schema_2021_uiSchema","damageOrAccidentObj","incidentRef","incidentTowingOperator","vehicle_loss_schema_2021_schema","contactPerson","contactEmail","vatNumber","incidentType","damageOrAccident","driverOwnerDetails","driverOccupation","descriptionText","thirdPartyDamageDetails","vehicle_loss_schema_2021_uiSchema","windscreen_schema_2021_schema","incidentContactPerson","incidentContactNumber","incidentContactEmail","incidentVatNumber","incidentDateLoss","incidentDateDiscovered","incidentDateReported","incidentChipRepair","incidentBusinessPurpose","incidentDriverName","vehicleChassisNumber","windscreen_schema_2021_uiSchema","FileSaver","fName","GenerateAttachmentLinks","attachmentLinks","pop","fileExtension","join","fileId","formErrBody","componentDidUpdate","hide","item","append","click","saveAs","GeyserSchemaRO","GeyseruiSchemaRO","VehicleLossSchemaRO","VehicleLossuiSchemaRO","VehicleCollisionSchemaRO","VehicleCollisionuiSchemaRO","WindscreenSchemaRO","WindscreenuiSchemaRO","PropertyLossSchemaRO","PropertyLossuiSchemaRO","PublicLiabilitySchemaRO","PublicLiabilityuiSchemaRO","GeyserSchemaOld","GeyseruiSchemaOld","VehicleLossSchemaOld","VehicleLossuiSchemaOld","WindscreenSchemaOld","WindscreenuiSchemaOld","PropertyLossSchemaOld","PropertyLossuiSchemaOld","PublicLiabilitySchemaOld","PublicLiabilityuiSchemaOld","sTest","updateTabsWithIncidentType","wizardComp","loadedFormData","errorMsg","getUrlParameter","FID","getFormEndpoint","FormData","fromDate","createdDate","Created","Form_x0020_Data","parse","wa5v","_name","results","RegExp","exec","search","decodeURIComponent","errorComponent","role","width","marginLeft","marginRight","minHeight","ReadOnlyWizard","AppRouter","react_router_dom","react_router","path","exact","component","ReadOnly","Header","borderBottom","Footer","borderTop","target","App","Fragment","common_Header","routes_AppRouter","common_Footer","Boolean","initialState","reducer","arguments","undefined","store","createStore","ReactDOM","render","es","components_App_App","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.fbe23237.chunk.js","sourcesContent":["import { NONAME } from \"dns\";\nexport var schema = {\n title: \"Geyser\",\n description: \"Geyser form\",\n type: \"object\",\n properties: {\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentburstgeyser\", \"incidentgeysersize\", \"incidentOtherPolicy\"],\n properties: {\n insureddateloss: {\n type: \"string\",\n title: \"Date and Time When Incident Occurred?\",\n format: \"date-time\"\n },\n incidentsection: {\n type: \"string\",\n title: \"Section/Unit Number\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentburstgeyser: {\n type: \"string\",\n title: \"Burst Geyser\",\n enum: [\"Yes\", \"No\"]\n },\n incidentgeysersize: {\n type: \"string\",\n title: \"Size of Geyser\",\n enum: [\"50 Litre\", \"100 Litre\", \"150 Litre\", \"200 Litre\", \"300 Litre\", \"500 Litre\", \"Other\"]\n },\n incidentDamages: {\n type: \"object\",\n title: \"\",\n required: [\"incidentResultantDamage\"],\n properties: {\n incidentResultantDamage: {\n type: \"string\",\n title: \"Is there a Resultant Damage(s)?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentResultantDamage: {\n oneOf: [{\n properties: {\n incidentResultantDamage: {\n enum: [\"Yes\"]\n },\n incidentResultantDamageOptions: {\n type: \"object\",\n title: \"\",\n properties: {\n floors: {\n type: \"boolean\",\n title: \"Floors\"\n },\n carpets: {\n type: \"boolean\",\n title: \"Carpets\"\n },\n ceilings: {\n type: \"boolean\",\n title: \"Ceilings\"\n },\n cupboards: {\n type: \"boolean\",\n title: \"Cupboards\"\n },\n other: {\n type: \"boolean\",\n title: \"Other\"\n }\n }\n }\n }\n }, {\n properties: {\n incidentResultantDamage: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n incidentOtherPolicy: {\n type: \"string\",\n title: \"Is this Incident Covered Under Any Other Policy of Insurance?\",\n enum: [\"Yes\", \"No\"]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Add Any Pictures of the Geyser and Resultant Damages.\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n};","export var schema = {\n title: \"Property Loss\",\n description: \"Property Loss Claim Form\",\n type: \"object\",\n properties: {\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentisCovered\"],\n properties: {\n insureddateloss: {\n title: \"Date and Time When Incident Occurred?\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentisCovered: {\n title: \"Is this Incident Covered Under Any Other Policy of Insurance?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n }\n },\n theft: {\n type: \"object\",\n title: \"Theft\",\n required: [\"theftClaim\"],\n properties: {\n theftClaim: {\n title: \"Is this a Theft or Burglar Claim?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n theftClaim: {\n oneOf: [{\n properties: {\n theftClaim: {\n enum: [\"Yes\"]\n },\n theftClaimDetails: {\n type: \"object\",\n title: \"\",\n properties: {\n theftAlarmWorking: {\n title: \"Is There a Working Alarm at the Insured Premise Where Loss or Damage Took Place?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n },\n theftDescription: {\n title: \"Full Description of How Entry was Gained at the Property\",\n type: \"string\"\n }\n }\n },\n police: {\n type: \"object\",\n title: \"\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the Incident Reported to the Police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Police Station Where Incident Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date Reported\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"SAPS Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }, {\n properties: {\n policeReported: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n theftClaim: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n otherParty: {\n type: \"object\",\n title: \"Loss Caused by Other Parties\",\n required: [\"otherPartyIncident\"],\n properties: {\n otherPartyIncident: {\n title: \"Was the Incident Caused by Other Parties?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n otherPartyIncident: {\n oneOf: [{\n properties: {\n otherPartyIncident: {\n enum: [\"Yes\"]\n },\n otherPartyIncidentDetails: {\n type: \"object\",\n title: \"\",\n required: [\"name\"],\n properties: {\n name: {\n title: \"Other Party Name\",\n type: \"string\"\n },\n contactNumber: {\n title: \"Other Party Contact Number\",\n type: \"string\",\n minLength: 10\n },\n email: {\n title: \"Other Party Contact Email\",\n type: \"string\",\n format: \"email\"\n },\n address: {\n type: \"string\",\n title: \"Other Party Physical Address\"\n },\n lat: {\n type: \"string\",\n title: \"Latitude\"\n },\n long: {\n type: \"string\",\n title: \"Longitude\"\n }\n }\n }\n }\n }, {\n properties: {\n otherPartyIncident: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach the Following Documents if Applicable:\\n - Alarm Activation Report\\n - List of Damaged or Stolen Items\\n - Invoice of Replaced or Repaired Item\\n - Original Receipts\\n - Valuation Reports\\n - Police Report\\n - Photos of Damage Area\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n theftClaimDetails: {\n theftDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n police: {\n reportDetails: {\n policePlaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n }\n },\n otherPartyIncidentDetails: {\n lat: {\n \"ui:widget\": \"hidden\"\n },\n long: {\n \"ui:widget\": \"hidden\"\n }\n },\n incidentCause: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n};","export var schema = {\n title: \"Public Liability\",\n description: \"Public Liability Claim Form\",\n type: \"object\",\n properties: {\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentisCovered\"],\n properties: {\n insureddateloss: {\n title: \"Date and Time When Incident Occurred?\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description on How Incident Occurred?\"\n },\n incidentisCovered: {\n title: \"Is this Incident Covered Under Any Other Policy of Insurance?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the Incident Reported to the Police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Police Station Where Incident Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date Reported\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"SAPS Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }, {\n properties: {\n policeReported: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n },\n witnesses: {\n type: \"object\",\n title: \"Witnesses\",\n properties: {\n witnessList: {\n title: \"Witnesses\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n witness: {\n type: \"array\",\n title: \"Witness\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }]\n }\n }\n }\n }\n }\n },\n propertyDamage: {\n type: \"object\",\n title: \"Property Damage\",\n required: [\"propertyDamageAddress\"],\n properties: {\n propertyDamageName: {\n title: \"Name of Owner\",\n type: \"string\"\n },\n propertyDamageContactNumber: {\n title: \"Contact Number of Owner\",\n type: \"string\",\n minLength: 10\n },\n propertyDamageAddress: {\n type: \"object\",\n title: \"\",\n properties: {\n address: {\n type: \"string\",\n title: \"Address of Owner\"\n },\n lat: {\n type: \"string\",\n title: \"Latitude\"\n },\n long: {\n type: \"string\",\n title: \"Longitude\"\n }\n }\n }\n }\n },\n personalInjuries: {\n type: \"object\",\n title: \"Personal Injuries\",\n properties: {\n personalInjuriesList: {\n title: \"Personal Injuries\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"email\",\n type: \"string\",\n title: \"Contact Email\",\n format: \"email\"\n }, {\n key: \"idPassportNumber\",\n type: \"string\",\n title: \"ID/Passport Number\"\n }, {\n key: \"age\",\n type: \"number\",\n title: \"Age\"\n }, {\n key: \"relationship\",\n title: \"Relationships\",\n description: \"If Person Named Above is in your Service, your Tenant, or Related to you. Please Provide Details.\",\n type: \"string\"\n }]\n }\n }\n }\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach Any Correspondence of Claim Made Against You if Any.\",\n properties: {\n attachmentsDescription: {\n title: \"Description\",\n description: \"If a claim has been, or is being made against you, give details and attach any correspondence.\",\n type: \"string\"\n },\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n reportDetails: {\n policePlaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n propertyDamageAddress: {\n lat: {\n \"ui:widget\": \"hidden\"\n },\n long: {\n \"ui:widget\": \"hidden\"\n }\n },\n propertyDamageDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n relationshipsDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n attachmentsDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n witnessList: {\n \"ui:options\": {\n orderable: false\n }\n },\n personalInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n};","export var schema = {\n title: \"Vehicle Stolen or Hijacked\",\n description: \"Vehicle Stolen or Hijacked Claim Form\",\n type: \"object\",\n properties: {\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentVehicleRecovered\"],\n properties: {\n insureddateloss: {\n title: \"Date and Time When Incident Occurred?\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentVehicleRecovered: {\n type: \"string\",\n title: \"Was the Vehicle Recovered?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentVehicleRecovered: {\n oneOf: [{\n properties: {\n incidentVehicleRecovered: {\n enum: [\"Yes\"]\n },\n currentVehicleLocation: {\n type: \"object\",\n title: \"\",\n required: [\"address\"],\n properties: {\n address: {\n type: \"string\",\n title: \"Location of Vehicle Currently\"\n },\n lat: {\n type: \"string\",\n title: \"Latitude\"\n },\n long: {\n type: \"string\",\n title: \"Longitude\"\n }\n }\n }\n }\n }]\n }\n }\n },\n vehicleDetails: {\n type: \"object\",\n title: \"Vehicle Details\",\n required: [\"vehicleMake\", \"vehicleModel\", \"vehicleYear\", \"vehicleRegistration\"],\n properties: {\n vehicleMake: {\n type: \"string\",\n title: \"Vehicle Make\"\n },\n vehicleModel: {\n type: \"string\",\n title: \"Vehicle Model\"\n },\n vehicleYear: {\n type: \"string\",\n title: \"Vehicle Year\"\n },\n vehicleRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n vehicleVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n },\n vehicleEngineNumber: {\n type: \"string\",\n title: \"Engine Number\"\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the Incident Reported to the Police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Police Station Where Incident Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date Reported\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"SAPS Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }, {\n properties: {\n policeReported: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n },\n driverDetails: {\n type: \"object\",\n title: \"Full Details of Driver\",\n required: [\"driverIsOwner\"],\n properties: {\n driverIsOwner: {\n type: \"string\",\n title: \"Is the Driver the Owner of the Vehicle?\",\n enum: [\"Yes\", \"No\"]\n },\n driverDetails: {\n type: \"object\",\n title: \"Details of Driver\",\n required: [\"driverFullName\", \"driverIdPassport\", \"driverContactNumber\", \"driverPermissionByInsured\"],\n properties: {\n driverFullName: {\n type: \"string\",\n title: \"Driver Full Name\"\n },\n driverIdPassport: {\n type: \"string\",\n title: \"Driver ID/Passport Number\"\n },\n driverContactNumber: {\n type: \"string\",\n title: \"Driver Contact Number\",\n minLength: 10\n },\n driverEmail: {\n type: \"string\",\n format: \"email\",\n title: \"Driver Email\"\n },\n driverPermissionByInsured: {\n type: \"string\",\n title: \"Was the Driver Using the Vehicle with the Insured's Permission?\",\n enum: [\"Yes\", \"No\"]\n }\n }\n }\n }\n },\n witnesses: {\n type: \"object\",\n title: \"Witnesses\",\n description: \"Please Add Witnesses Details\",\n properties: {\n witnessList: {\n title: \"Witnesses\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n witness: {\n type: \"array\",\n title: \"Witness\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }]\n }\n }\n }\n }\n }\n },\n injured: {\n type: \"object\",\n title: \"Injured Persons\",\n required: [\"personalInjuries\"],\n properties: {\n personalInjuries: {\n type: \"string\",\n title: \"Were Any Parties Injured in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n personalInjuries: {\n oneOf: [{\n properties: {\n personalInjuries: {\n enum: [\"Yes\"]\n },\n personalInjuriesList: {\n title: \"Personal Injuries\",\n description: \"Please Add Injured Parties Details\",\n required: [\"name\", \"relationship\"],\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"email\",\n type: \"string\",\n title: \"Contact Email\",\n format: \"email\"\n }, {\n key: \"idPassportNumber\",\n type: \"string\",\n title: \"ID/Passport Number\"\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }, {\n key: \"age\",\n type: \"number\",\n title: \"Age\"\n }, {\n key: \"relationship\",\n title: \"Relationships\",\n description: \"If Person Named Above is in your Service, your Tenant, or Related to You. Please Provide Details.\",\n type: \"string\"\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n personalInjuries: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach Any of the Following Applicable Documents:\\n - Police Report\\n - Copy of Vehicle registration documents\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n currentVehicleLocation: {\n lat: {\n \"ui:widget\": \"hidden\"\n },\n long: {\n \"ui:widget\": \"hidden\"\n }\n },\n reportDetails: {\n policePlaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n witnessList: {\n \"ui:options\": {\n orderable: false\n }\n },\n personalInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n};","export var schema = {\n title: \"Motor Vehicle Windscreen\",\n description: \"Motor Vehicle Windscreen Claim Form\",\n type: \"object\",\n properties: {\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\"],\n properties: {\n insureddateloss: {\n type: \"string\",\n title: \"Date and Time When Incident Occurred?\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentChipped: {\n type: \"boolean\",\n title: \"Chipped\"\n },\n incidentCrackedShattered: {\n type: \"boolean\",\n title: \"Cracked or Shattered\"\n }\n }\n },\n vehicleDetails: {\n type: \"object\",\n title: \"Vehicle Details\",\n required: [\"vehicleMake\", \"vehicleModel\", \"vehicleYear\", \"vehicleRegistration\"],\n properties: {\n vehicleMake: {\n type: \"string\",\n title: \"Vehicle Make\"\n },\n vehicleModel: {\n type: \"string\",\n title: \"Vehicle Model\"\n },\n vehicleYear: {\n type: \"string\",\n title: \"Vehicle Year\"\n },\n vehicleRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n vehicleVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n },\n vehicleEngineNumber: {\n type: \"string\",\n title: \"Engine Number\"\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach Any of the Following Applicable Documents:\\n - Invoice (if already replaced)\\n - Photos of damaged glass\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n required: [\"insuredaccepttc\"],\n title: \"Declaration\",\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n};","export var schema = {\n title: \"Accident Collision\",\n description: \"Accident Collision Claim Form\",\n type: \"object\",\n properties: {\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentDriverDrugTest\"],\n properties: {\n insureddateloss: {\n title: \"Date and Time When Incident Occurred?\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentDriverDrugTest: {\n title: \"Was the Driver Tested for Alcohol or Drug Use?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n },\n incidentCoverInfo: {\n type: \"object\",\n title: \"\",\n required: [\"incidentCover\"],\n properties: {\n incidentCover: {\n title: \"Is the Incident Covered Under Any Other Policy of Insurance?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentCover: {\n oneOf: [{\n required: [\"incidentPolicyDetails\"],\n properties: {\n incidentCover: {\n enum: [\"Yes\"]\n },\n incidentPolicyDetails: {\n type: \"string\",\n title: \"Details of Other Policy\"\n }\n }\n }, {\n properties: {\n incidentCover: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n incidentVehicleStatusInfo: {\n type: \"object\",\n title: \"\",\n required: [\"incidentVehicleStatus\"],\n properties: {\n incidentVehicleStatus: {\n title: \"Vehicle Driveable?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentVehicleStatus: {\n oneOf: [{\n required: [\"incidentVehicleLocation\", \"incidentVehicleTowDetails\"],\n properties: {\n incidentVehicleStatus: {\n enum: [\"No\"]\n },\n incidentVehicleLocation: {\n type: \"string\",\n title: \"Location Where Vehicle was Towed To?\"\n },\n incidentVehicleTowDetails: {\n type: \"string\",\n title: \"Provide Details of Tow Operator Used\"\n }\n }\n }, {\n properties: {\n incidentVehicleStatus: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n },\n incidentAssistLineInfo: {\n type: \"object\",\n title: \"\",\n required: [\"incidentAssistLine\"],\n properties: {\n incidentAssistLine: {\n title: \"Was Western Assist Line Contacted?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentAssistLine: {\n oneOf: [{\n required: [\"incidentWNReferenceNumber\"],\n properties: {\n incidentAssistLine: {\n enum: [\"Yes\"]\n },\n incidentWNReferenceNumber: {\n title: \"Western Assist Reference Number\",\n type: \"string\"\n }\n }\n }, {\n properties: {\n incidentAssistLine: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n },\n dependencies: {\n incidentDriverDrugTest: {\n oneOf: [{\n properties: {\n incidentDriverDrugTest: {\n enum: [\"Yes\"]\n },\n incidentReport: {\n title: \"If the Driver was Tested for Alcohol/Drug Use, Please Attach the Report\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n incidentDriverDrugTest: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n vehicleDetails: {\n type: \"object\",\n title: \"Vehicle Details\",\n required: [\"vehicleMake\", \"vehicleModel\", \"vehicleYear\", \"vehicleRegistration\"],\n properties: {\n vehicleMake: {\n type: \"string\",\n title: \"Vehicle Make\"\n },\n vehicleModel: {\n type: \"string\",\n title: \"Vehicle Model\"\n },\n vehicleYear: {\n type: \"string\",\n title: \"Vehicle Year\"\n },\n vehicleRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n vehicleVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n },\n vehicleEngineNumber: {\n type: \"string\",\n title: \"Engine Number\"\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the Incident Reported to the Police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Police Station Where Incident Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date Reported\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"SAPS Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }, {\n properties: {\n policeReported: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n },\n driverDetails: {\n type: \"object\",\n title: \"Full Details of Driver\",\n required: [\"driverIsOwner\"],\n properties: {\n driverIsOwner: {\n type: \"string\",\n title: \"Is the Driver the Owner of the Vehicle?\",\n enum: [\"Yes\", \"No\"]\n },\n driverDetails: {\n type: \"object\",\n title: \"Details of Driver\",\n required: [\"driverFullName\", \"driverIdPassport\", \"driverContactNumber\", \"driverPermissionByInsured\"],\n properties: {\n driverFullName: {\n type: \"string\",\n title: \"Driver Full Name\"\n },\n driverIdPassport: {\n type: \"string\",\n title: \"Driver ID/Passport Number\"\n },\n driverContactNumber: {\n type: \"string\",\n title: \"Driver Contact Number\",\n minLength: 10\n },\n driverEmail: {\n type: \"string\",\n format: \"email\",\n title: \"Driver Email\"\n },\n driverPermissionByInsured: {\n type: \"string\",\n title: \"Was the Driver Using the Vehicle with the Insured's Permission?\",\n enum: [\"Yes\", \"No\"]\n }\n }\n }\n }\n },\n witnesses: {\n type: \"object\",\n title: \"Witnesses\",\n description: \"Please Add Witnesses Details\",\n properties: {\n witnessList: {\n title: \"Witnesses\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n witness: {\n type: \"array\",\n title: \"Witness\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }]\n }\n }\n }\n }\n }\n },\n injuredPassengers: {\n type: \"object\",\n title: \"Injured Passengers\",\n required: [\"injuredPassengersInjured\"],\n properties: {\n injuredPassengersInjured: {\n type: \"string\",\n title: \"Were there Any Passengers?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n injuredPassengersInjured: {\n oneOf: [{\n properties: {\n injuredPassengersInjured: {\n enum: [\"Yes\"]\n },\n injured: {\n type: \"object\",\n title: \"Injured Passengers\",\n required: [\"personalInjuries\"],\n properties: {\n personalInjuries: {\n type: \"string\",\n title: \"Were Any Passengers Injured in the Incident\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n personalInjuries: {\n oneOf: [{\n properties: {\n personalInjuries: {\n enum: [\"Yes\"]\n },\n personalInjuriesList: {\n title: \"Passengers Injuries\",\n description: \"Please Add Injured Parties Details\",\n required: [\"name\", \"relationship\"],\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"email\",\n type: \"string\",\n title: \"Contact Email\",\n format: \"email\"\n }, {\n key: \"idPassportNumber\",\n type: \"string\",\n title: \"ID/Passport Number\"\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }, {\n key: \"age\",\n type: \"number\",\n title: \"Age\"\n }, {\n key: \"relationship\",\n title: \"Relationships\",\n description: \"If Person Named Above is in your Service, your Tenant, or Related to You. Please Provide Details.\",\n type: \"string\"\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n personalInjuries: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n injuredPassengersInjured: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n thirdParty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdPartyName\", \"thirdPartyContactPerson\", \"thirdPartyContactNumber\", \"thirdPartyInsurer\"],\n properties: {\n thirdPartyName: {\n type: \"string\",\n title: \"Third Party Name\"\n },\n thirdPartyContactPerson: {\n type: \"string\",\n title: \"Third Party Contact Person\"\n },\n thirdPartyContactNumber: {\n type: \"string\",\n title: \"Third Party Contact Number\",\n minLength: 10\n },\n thirdPartyEmail: {\n type: \"string\",\n format: \"email\",\n title: \"Third Party Contact Email\"\n },\n thirdPartyInsurer: {\n type: \"string\",\n title: \"Is Third Party Insured\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdPartyInsurer: {\n oneOf: [{\n properties: {\n thirdPartyInsurer: {\n enum: [\"Yes\"]\n },\n thirdPartyInsurerInfo: {\n type: \"object\",\n title: \"\",\n properties: {\n thirdPartyInsurerDetails: {\n type: \"string\",\n title: \"Third Party Insurer Details\"\n },\n thirdPartyPolicyNumber: {\n type: \"string\",\n title: \"Third Party Policy Number\"\n }\n }\n }\n }\n }, {\n properties: {\n thirdPartyInsurer: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n thirdPartyvehicleDetails: {\n type: \"object\",\n title: \"Third Party Vehicle Details\",\n required: [\"thirdPartyMake\", \"thirdPartyRegistration\"],\n properties: {\n thirdPartyMake: {\n type: \"string\",\n title: \"Vehicle Make\"\n },\n thirdPartyModel: {\n type: \"string\",\n title: \"Vehicle Model\"\n },\n thirdPartyYear: {\n type: \"number\",\n title: \"Vehicle Year\"\n },\n thirdPartyRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n thirdPartyVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n }\n }\n },\n thirdPartyinjured: {\n type: \"object\",\n title: \"Third Party Injured Persons\",\n required: [\"thirdPartyInjuries\"],\n properties: {\n thirdPartyInjuries: {\n type: \"string\",\n title: \"Were There Any Third Party Injuries\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdPartyInjuries: {\n oneOf: [{\n properties: {\n thirdPartyInjuries: {\n enum: [\"Yes\"]\n },\n thirdPartyInjuriesList: {\n title: \"Third Party Injuries\",\n description: \"Please Add Injured Parties Details\",\n required: [\"name\"],\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactPerson\",\n type: \"string\",\n title: \"Contact Person\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"email\",\n type: \"string\",\n title: \"Contact Email\",\n format: \"email\"\n }, {\n key: \"injuriesDescription\",\n type: \"string\",\n title: \"Description of Injuries\"\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n thirdPartyInjuries: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach Any of the Following Applicable Documents:\\n - Sketch of Events Resulting on Loss or Damage\\n - Police Report\\n - Photo of Driver\\u2019s License\\n - Photo of License Disk\\n - Photos of All Sides of your Vehicle\\n - Photos of the Accident Scene \\n - Photos of 3rd Party Vehicle\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n required: [\"attachmentContent\"],\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n incidentCoverInfo: {\n incidentPolicyDetails: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n reportDetails: {\n policePlaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n witnessList: {\n \"ui:options\": {\n orderable: false\n }\n },\n injuredPassengersInjured: {\n personalInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n },\n thirdPartyInsurerInfo: {\n thirdPartyInsurerDetails: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n thirdPartyInjuries: {\n thirdPartyInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n }\n};","// returns a new object with the values at each key mapped using mapFn(value)\r\nexport const objectMap = (object, mapFn) => {\r\n return Object.keys(object).reduce(function(result, key) {\r\n result[key] = mapFn(object[key]);\r\n return result;\r\n }, {});\r\n};\r\n\r\nexport const logger = params => {\r\n const loggingEnabled = true;\r\n if (loggingEnabled) {\r\n console.log(...params);\r\n }\r\n};\r\n\r\nexport const logFormEvent = type => console.log.bind(console, type);\r\n","import React, { Component } from \"react\";\r\nimport Form from \"react-jsonschema-form-bs4\";\r\nimport {\r\n schema as GeyserSchema,\r\n uiSchema as GeyseruiSchema\r\n} from \"wn-claims-shared/dist/schema/geyser-schema\";\r\nimport {\r\n schema as PropertyLossSchema,\r\n uiSchema as PropertyLossuiSchema\r\n} from \"wn-claims-shared/dist/schema/property-loss-schema\";\r\nimport {\r\n schema as PublicLiabilitySchema,\r\n uiSchema as PublicLiabilityuiSchema\r\n} from \"wn-claims-shared/dist/schema/public-liability-schema\";\r\nimport {\r\n schema as VehicleLossSchema,\r\n uiSchema as VehicleLossuiSchema\r\n} from \"wn-claims-shared/dist/schema/vehicle-loss-schema\";\r\nimport {\r\n schema as WindscreenSchema,\r\n uiSchema as WindscreenuiSchema\r\n} from \"wn-claims-shared/dist/schema/windscreen-schema\";\r\nimport {\r\n schema as VehicleCollisionSchema,\r\n uiSchema as VehicleCollisionuiSchema\r\n} from \"wn-claims-shared/dist/schema/vehicle-collision-schema\";\r\nimport axios from \"axios\";\r\nimport { objectMap, logger, logFormEvent } from \"../utils/common\";\r\nimport config from \"../config.json\";\r\nimport $ from \"jquery\";\r\n\r\nlet fileSizeExceeded = false;\r\n\r\nclass Wizard extends Component {\r\n constructor(props) {\r\n super(props);\r\n this.formData = { ...this.props.formData, ...this.props.selectFormData };\r\n\r\n logger([this.formData]);\r\n this.state = {\r\n step: 0,\r\n formData: this.formData,\r\n formStage: 0,\r\n saveTabs: []\r\n };\r\n let schema, uiSchema;\r\n switch (this.formData.claimtype) {\r\n case \"Geyser\":\r\n schema = GeyserSchema;\r\n uiSchema = GeyseruiSchema;\r\n break;\r\n case \"Vehicle Stolen or Hijacked\":\r\n schema = VehicleLossSchema;\r\n uiSchema = VehicleLossuiSchema;\r\n break;\r\n case \"Accident Collision\":\r\n schema = VehicleCollisionSchema;\r\n uiSchema = VehicleCollisionuiSchema;\r\n break;\r\n case \"Motor Vehicle Windscreen\":\r\n schema = WindscreenSchema;\r\n uiSchema = WindscreenuiSchema;\r\n break;\r\n case \"Property Loss or Damage\":\r\n schema = PropertyLossSchema;\r\n uiSchema = PropertyLossuiSchema;\r\n break;\r\n case \"Public Liability\":\r\n schema = PublicLiabilitySchema;\r\n uiSchema = PublicLiabilityuiSchema;\r\n break;\r\n default:\r\n schema = {};\r\n uiSchema = {};\r\n break;\r\n }\r\n\r\n this.schemas = this.props.schemas ? this.props.schemas : [];\r\n this.uiSchemas = this.props.uiSchemas ? this.props.uiSchemas : [];\r\n logger([\"this.schemas: \", this.schemas]);\r\n logger([\"this.uiSchemas: \", this.uiSchemas]);\r\n const sTest = this.props.schemas ? \"schemas defined\" : \"no schemas defined\";\r\n this.readOnly = this.props.readOnly;\r\n this.btnSubmit = ;\r\n if (this.readOnly) {\r\n // TODO: duplicate call of objectMap, when not read only it is being called in the wrapping comp, pass info to here from parent and complete mapping here for all components\r\n objectMap(schema.properties, value => {\r\n this.schemas.push(value);\r\n this.uiSchemas.push(uiSchema);\r\n });\r\n }\r\n this.attachmentKeys = [\r\n // FIXME: find a better solution to hard coding attachment keys here (use a config file or flag with a custom type?)\r\n // Geyser\r\n \"attachmentsList\",\r\n // Group Personal\r\n \"disablementDocCert\",\r\n \"disablementPercentageConfirmation\",\r\n \"disablementAppointmentLetter\",\r\n \"disablementMedReport\",\r\n \"disablementMedAccountsStatements\",\r\n \"disablementPolicePlan\",\r\n \"iodPostMortem\",\r\n \"iodInquestReport\",\r\n \"iodExecutorshipLetter\",\r\n // Property Loss\r\n \"itemsClaimedDocs\",\r\n // Public Liability\r\n \"claimsAttachment\",\r\n // Vehicle Loss\r\n // TODO: add vehicle loss attachment keys\r\n \"incidentReport\",\r\n \"descriptionSketch\"\r\n // Windscreen\r\n ];\r\n logger([\"Logger!\"]);\r\n logger([\"this.schemas: \", this.schemas]);\r\n logger([\"this.uiSchemas: \", this.uiSchemas]);\r\n }\r\n\r\n ObjectFieldTemplate({ TitleField, properties, title, description }) {\r\n return (\r\n
\r\n \r\n
{description}
\r\n
\r\n {properties.map(prop => (\r\n
\r\n {prop.content}\r\n
\r\n ))}\r\n
\r\n
\r\n );\r\n }\r\n // TODO: move to utils\r\n validateTelNumbers = (formData, errors) => {\r\n const phoneno = /^\\d{10}$/;\r\n // FIXME: is it possible to use a universal telephone type to flag telephone number validations instead of hardcoding? if not move to a config file\r\n const telephoneKeys = [\r\n \"contactNumber\",\r\n \"otherPartyIncidentDetails.contactNumber\"\r\n ];\r\n logger([\"formData\", formData]);\r\n logger([\"errors\", errors]); \r\n\r\n telephoneKeys.forEach(element => {\r\n console.log(element);\r\n\r\n var formDataInfo = formData;\r\n\r\n if(typeof formData.otherPartyIncidentDetails != 'undefined'){\r\n if(element == \"otherPartyIncidentDetails.contactNumber\"){\r\n formDataInfo = formData.otherPartyIncidentDetails;\r\n element = \"contactNumber\";\r\n }\r\n }\r\n\r\n if (formDataInfo.hasOwnProperty(element) && formDataInfo[element]) {\r\n if (!formDataInfo[element].match(phoneno)) {\r\n //errors[element].addError(\"Not a valid contact number.\");\r\n }\r\n }\r\n\r\n });\r\n return errors;\r\n };\r\n\r\n onSubmit = ({ formData }) => {\r\n if (this.state.step < this.schemas.length - 1) {\r\n const newstep = parseInt(this.state.step, 10) + 1;\r\n logger([\"newstep:\", newstep]);\r\n\r\n this.setState({\r\n ...this.state,\r\n step: newstep,\r\n formData: {\r\n ...this.state.formData,\r\n ...formData\r\n }\r\n });\r\n } else {\r\n if (!this.readOnly) {\r\n // Don't post if in readOnly mode\r\n this.setState({ formStage: 1 });\r\n this.postForm(formData);\r\n }\r\n }\r\n };\r\n // TODO: move to utils\r\n getBase64FileName = base64str => {\r\n let str = base64str;\r\n str = str.substr(str.indexOf(\"name=\") + 5, str.lastIndexOf(\"base64,\") - 27);\r\n return str;\r\n };\r\n // TODO: move to utils\r\n getAttachments = formData => {\r\n let attachments = [];\r\n logger([\"getAttachments formData\", formData]);\r\n logger([\"getAttachments attachmentKeys\", this.attachmentKeys]);\r\n this.attachmentKeys.forEach(function(key) {\r\n if (formData[key]) {\r\n formData[key].forEach(function(entry) {\r\n logger([\"entry: \", entry]);\r\n const fileName = entry.attachment[0];\r\n const fileContent = entry.attachment[1][0];\r\n attachments.push({ name: fileName, content: fileContent });\r\n /*\r\n fName = fName.substr(\r\n fName.indexOf(\"name=\") + 5,\r\n fName.lastIndexOf(\"base64,\") - 27\r\n );\r\n fName = fName.replace(/[^a-zA-Z0-9]/g, \"\");\r\n logger([\"file name:\", fName]);\r\n logger([\"attachment: \", key + \":\", fName]);\r\n attachments = [\r\n ...attachments,\r\n {\r\n name: fName,\r\n content: entry\r\n }\r\n ];\r\n */\r\n });\r\n }\r\n });\r\n logger([\"generated attachments\", attachments]);\r\n return attachments;\r\n };\r\n\r\n postForm = formData => {\r\n const hostname = window.location.hostname;\r\n let url = \"\";\r\n for (let host in config.hosts) {\r\n if (hostname == config.hosts[host].hostname) {\r\n console.log(`Running on ${host} environment.`);\r\n url = config.hosts[host].postFormEndpoint;\r\n console.log(\"setting Post Form API url to \", url);\r\n }\r\n }\r\n if (!url) {\r\n // set default url if not set\r\n console.warn(\"No valid Post Form API endpoint found in config. Setting to default.\");\r\n url = config.hosts.default.postFormEndpoint;\r\n }\r\n console.log(\"URL\", url);\r\n const concatData = { ...this.state.selectedForm, ...formData };\r\n const strData = JSON.stringify(concatData, null, 0);\r\n logger([\"formData: \", formData]);\r\n logger([\"concatData: \", concatData]);\r\n const ct = concatData.claimtype;\r\n const reg = concatData.region;\r\n const FormGuid = concatData.formguid;\r\n logger([\"formGuid\", FormGuid]);\r\n let attachments = this.getAttachments(concatData);\r\n\r\n const data = {\r\n properties: {\r\n Form: strData,\r\n FormGUID: FormGuid,\r\n Claim: ct,\r\n Insured: concatData.insuredName,\r\n PolicyNo: concatData.insuredPolicyNumber,\r\n Region: reg,\r\n requestorType: concatData.requestorType,\r\n ClientEmail: concatData.clientEmail,\r\n BrokerEmail: concatData.brokeremail,\r\n Attachments: attachments\r\n }\r\n };\r\n logger([\"Data: \", concatData]);\r\n logger([\"Post: \", data]);\r\n logger([\"Post str: \", JSON.stringify(data)]);\r\n axios\r\n .post(url, data)\r\n .then(response => {\r\n logger([\"Done: \", response]);\r\n this.setState({ selectedForm: {}, formStage: 2 }); // FIXME: not resetting state, keep ref of initial state instead\r\n })\r\n .catch(error => {\r\n logger([\"Error: \", error]);\r\n let code = error[\"response\"][\"status\"];\r\n let message;\r\n switch (code) {\r\n case 503:\r\n // request timed out\r\n code = \"Error (503): Request Timed Out\";\r\n message = \"The service is currently not available. Please try again later.\";\r\n break;\r\n default:\r\n // other errors\r\n code = `Error (${code})`;\r\n message = error[\"response\"][\"data\"][\"error\"][\"message\"];\r\n }\r\n logger([\"code: \", code, \" message: \", message]);\r\n // this.setState({\r\n // formErrCode: code,\r\n // formErrMsg: message\r\n // });\r\n this.setState({ \r\n selectedForm: {}, \r\n formStage: 3 \r\n }); \r\n });\r\n };\r\n\r\n onBack = ({ formData }) => {\r\n if (this.state.step > 0) {\r\n const newstep = this.state.step - 1;\r\n logger([\"newstep:\", newstep]);\r\n this.setState({\r\n ...this.state,\r\n step: newstep,\r\n formData: {\r\n ...this.state.formData,\r\n ...formData\r\n }\r\n });\r\n }\r\n };\r\n\r\n onStep = step => {\r\n if (step < this.state.step) {\r\n const newstep = step;\r\n logger([\"tabstep:\", newstep]);\r\n this.setState({\r\n step: newstep\r\n });\r\n logger([\"new step-tab: \", this.state.step]);\r\n }\r\n };\r\n\r\n handleTabClick = k => {\r\n if (fileSizeExceeded) {\r\n return;\r\n }\r\n // Get clicked tab step number\r\n const step = k;\r\n // cancel if the clicked step is after current step,\r\n // ignore this rule in read-only mode\r\n if (!this.readOnly && k > this.state.step) return;\r\n logger([\"goto step: \", k]);\r\n // change state step (triggers loading clicked tab)\r\n this.setState({\r\n ...this.state,\r\n step: step,\r\n formData: {\r\n ...this.state.formData\r\n }\r\n });\r\n };\r\n\r\n checkDuplicateAttachments = attachments => {\r\n if (!attachments) return;\r\n logger([\"attachments\", attachments]);\r\n\r\n let files = $(\"#root_attachmentsList ul.file-info li\");\r\n //Check if file exists\r\n \r\n for (let i = 0; i < files.length; i++) {\r\n let item = files[i];\r\n let file = item.textContent;\r\n let split = file.split(\",\");\r\n let fileSize = split[1].replace(\" bytes)\", \"\");\r\n fileSize = fileSize.trim();\r\n if (fileSize > 20000000) {\r\n alert(\"File upload size limit is 20mb\");\r\n fileSizeExceeded = true;\r\n } else {\r\n fileSizeExceeded = false;\r\n }\r\n }\r\n\r\n if (fileSizeExceeded) {\r\n $(\"#btnNext\").attr(\"disabled\", \"disabled\");\r\n $(\"#btnBack\").attr(\"disabled\", \"disabled\");\r\n } else {\r\n $(\"#btnNext\").removeAttr(\"disabled\");\r\n $(\"#btnBack\").removeAttr(\"disabled\");\r\n }\r\n\r\n let occurrences = {};\r\n\r\n let filtered = attachments.filter(function(x, index) {\r\n logger([\"x name\", x.attachment[0]]);\r\n if (occurrences[x.attachment[0]]) {\r\n x.attachment[0] = x.attachment[0] ? `${x.attachment[0]} (${index})` : `${index}`;\r\n return false;\r\n }\r\n occurrences[x.attachment[0]] = true;\r\n return true;\r\n });\r\n\r\n logger([\"filtered\", filtered]);\r\n };\r\n\r\n handleChanges = data => {\r\n logger([\"changes data: \", data]);\r\n const {\r\n claimtype,\r\n attachmentsList,\r\n descriptionSketch,\r\n incidentReport,\r\n claimsAttachment,\r\n itemsClaimedDocs\r\n } = data.formData;\r\n\r\n if (attachmentsList) this.checkDuplicateAttachments(attachmentsList);\r\n if (descriptionSketch) this.checkDuplicateAttachments(descriptionSketch);\r\n if (incidentReport) this.checkDuplicateAttachments(incidentReport);\r\n if (claimsAttachment) this.checkDuplicateAttachments(claimsAttachment);\r\n if (itemsClaimedDocs) this.checkDuplicateAttachments(itemsClaimedDocs);\r\n\r\n // Check for the incidentAddress\r\n if(typeof data.formData.incidentAddress != 'undefined'){\r\n if(typeof document.getElementById(\"root_incidentAddress\") != 'undefined' && document.getElementById(\"root_incidentAddress\") != null){\r\n if(document.getElementById(\"root_incidentAddress\").value != data.formData.incidentAddress){\r\n data.formData.incidentAddress = document.getElementById(\"root_incidentAddress\").value;\r\n data.formData.incidentLat = document.getElementById(\"root_incidentLat\").value;\r\n data.formData.incidentLong = document.getElementById(\"root_incidentLong\").value;\r\n logger([\"Updated Address: \", data]);\r\n }\r\n }\r\n }else{\r\n //logger('OOps no Incident Address')\r\n }\r\n\r\n // Check for the currentVehicleLocation\r\n if(typeof data.formData.currentVehicleLocation != 'undefined'){\r\n if(typeof document.getElementById(\"root_currentVehicleLocation_address\") != 'undefined' && document.getElementById(\"root_currentVehicleLocation_address\") != null){\r\n if(document.getElementById(\"root_currentVehicleLocation_address\").value != data.formData.currentVehicleLocation){\r\n data.formData.currentVehicleLocation.address = document.getElementById(\"root_currentVehicleLocation_address\").value;\r\n data.formData.currentVehicleLocation.lat = document.getElementById(\"root_currentVehicleLocation_lat\").value;\r\n data.formData.currentVehicleLocation.long = document.getElementById(\"root_currentVehicleLocation_long\").value;\r\n logger([\"Updated Address: \", data]);\r\n }\r\n }\r\n }else{\r\n //logger('OOps no Vehicle Current Address')\r\n }\r\n\r\n // Check for the otherPartyIncidentDetails\r\n if(typeof data.formData.otherPartyIncidentDetails != 'undefined'){\r\n if(typeof document.getElementById(\"root_otherPartyIncidentDetails_address\") != 'undefined' && document.getElementById(\"root_otherPartyIncidentDetails_address\") != null){\r\n if(document.getElementById(\"root_otherPartyIncidentDetails_address\").value != data.formData.otherPartyIncidentDetails){\r\n data.formData.otherPartyIncidentDetails.address = document.getElementById(\"root_otherPartyIncidentDetails_address\").value;\r\n data.formData.otherPartyIncidentDetails.lat = document.getElementById(\"root_otherPartyIncidentDetails_lat\").value;\r\n data.formData.otherPartyIncidentDetails.long = document.getElementById(\"root_otherPartyIncidentDetails_long\").value;\r\n logger([\"Updated Address: \", data]);\r\n }\r\n }\r\n }else{\r\n //logger('OOps no Other Party Address')\r\n }\r\n\r\n // Check for the propertyDamageAddress\r\n if(typeof data.formData.propertyDamageAddress != 'undefined'){\r\n if(typeof document.getElementById(\"root_propertyDamageAddress_address\") != 'undefined' && document.getElementById(\"root_propertyDamageAddress_address\") != null){\r\n if(document.getElementById(\"root_propertyDamageAddress_address\").value != data.formData.propertyDamageAddress){\r\n data.formData.propertyDamageAddress.address = document.getElementById(\"root_propertyDamageAddress_address\").value;\r\n data.formData.propertyDamageAddress.lat = document.getElementById(\"root_propertyDamageAddress_lat\").value;\r\n data.formData.propertyDamageAddress.long = document.getElementById(\"root_propertyDamageAddress_long\").value;\r\n logger([\"Updated Address: \", data]);\r\n }\r\n }\r\n }else{\r\n //logger('OOps no Property Damage Address')\r\n }\r\n\r\n logger([\"claim type: \", claimtype]);\r\n const saveTabs = this.state.saveTabs;\r\n if (\r\n claimtype === \"Accident Collision\" &&\r\n this.formData.thirdparty.thirdpartyInvolved == \"No\"\r\n ) {\r\n logger([\"schemas pre slice: \", this.schemas]);\r\n \r\n if (this.schemas[6].title === \"Third Party\") {\r\n saveTabs.push(this.schemas[6]);\r\n saveTabs.push(this.schemas[7]);\r\n saveTabs.push(this.schemas[8]);\r\n this.schemas.splice(6, 3); // splice Third party tabs\r\n this.setState({\r\n ...this.state,\r\n saveTabs: saveTabs,\r\n formData: {\r\n ...this.state.formData\r\n }\r\n });\r\n }\r\n logger([\"schemas post slice: \", this.schemas]);\r\n logger([\"saved tabs\", saveTabs]);\r\n } \r\n else if (\r\n claimtype === \"Accident Collision\" &&\r\n this.formData.thirdparty.thirdpartyInvolved == \"Yes\" &&\r\n this.formData.thirdparty.thirdpartyOther.thirdpartyHaveDetails == \"No\" \r\n ) {\r\n logger([\"schemas pre slice: \", this.schemas]);\r\n \r\n if (this.schemas[6].title === \"Third Party\") {\r\n saveTabs.push(this.schemas[6]);\r\n saveTabs.push(this.schemas[7]);\r\n this.schemas.splice(6, 2); // splice Third party tabs\r\n this.setState({\r\n ...this.state,\r\n saveTabs: saveTabs,\r\n formData: {\r\n ...this.state.formData\r\n }\r\n });\r\n }\r\n logger([\"schemas post slice: \", this.schemas]);\r\n logger([\"saved tabs\", saveTabs]);\r\n } \r\n \r\n console.log(\"See Full FormData: \", data.formData);\r\n };\r\n\r\n navHome() {\r\n return (window.location.href = \"/\");\r\n }\r\n\r\n navHomeReadOnly() {\r\n return (window.location.href = \"/sites/workbenchqa/SiteAssets/ClaimsList.aspx/\");\r\n }\r\n\r\n render() {\r\n const { formStage, step } = this.state;\r\n\r\n let back, next;\r\n if (!this.readOnly) {\r\n // Normal view buttons\r\n if (step > 0) {\r\n back = (\r\n \r\n );\r\n next = (\r\n \r\n {\" \"}\r\n {step < this.schemas.length - 1 ? \"Next\" : \"Submit\"}\r\n \r\n );\r\n } else {\r\n back = (\r\n // FIXME: use router instead of window\r\n \r\n Back\r\n \r\n );\r\n next = (\r\n \r\n {\" \"}\r\n {step < this.schemas.length - 1 ? \"Next\" : \"Submit\"}\r\n \r\n );\r\n }\r\n } else {\r\n // Set read-only buttons\r\n back = (\r\n \r\n Close\r\n \r\n );\r\n next = \"\";\r\n }\r\n\r\n let readOnlyHeader;\r\n if (this.readOnly) {\r\n readOnlyHeader = (\r\n
\r\n

{this.formData.claimtype}

\r\n

\r\n {\"Policy Number: \" + this.formData.insuredPolicyNumber}\r\n
\r\n {\"Insured Name: \" + this.formData.insuredName}\r\n
\r\n {\"Region: \" + this.formData.region}\r\n

\r\n
\r\n );\r\n }\r\n\r\n let form, tabs;\r\n if (this.state.formErrCode) {\r\n // Form threw error\r\n // form = (\r\n //
\r\n // {this.state.formErrCode ?

{this.state.formErrCode}

: \"\"}\r\n // {this.state.formErrMsg ?
{this.state.formErrMsg}
: \"\"}\r\n //
\r\n // );\r\n\r\n //FIXME: Error moved to formStage=3\r\n\r\n } else {\r\n // No error\r\n if (formStage == 0) {\r\n form = (\r\n
\r\n \r\n
\r\n {back}\r\n {/* //FIXME: remove inline styling */}\r\n {next}\r\n
\r\n \r\n
\r\n );\r\n tabs = Object.keys(this.schemas).map(tab => (\r\n this.handleTabClick(tab)}\r\n disabled={!this.readOnly ? (tab < this.state.step ? false : true) : false}\r\n style={{ cursor: \"pointer\" }}\r\n >\r\n this.state.step ? \" disabled\" : \"\") +\r\n (tab < this.state.step ? \" completed\" : \"\")\r\n }\r\n >\r\n {this.schemas[tab].title}\r\n \r\n \r\n ));\r\n } else if (formStage == 1) {\r\n // Posting form\r\n form = (\r\n
\r\n

Please Wait

\r\n
Submitting claim..
\r\n
\r\n );\r\n } else if (formStage == 2) {\r\n // Successfully posted form\r\n // TODO: use ThankYou shared component instead\r\n form = (\r\n
\r\n

Thank you for submitting your claim

\r\n Your broker will be informed within the next 24 hours of claim number and will be provided with the next steps in the claim process.\r\n
\r\n
\r\n \r\n Finish\r\n \r\n
\r\n );\r\n } else if (formStage == 3) {\r\n // Error posting form\r\n form = (\r\n
\r\n

Oops, something has gone wrong while trying to submit your claim

\r\n Please try again. Click on the button below, update the declaration and resubmit.
All the rest of your claims detail has been stored and don’t have to be recaptured.\r\n
\r\n
\r\n { this.setState({ selectedForm: {}, formStage: 0 }) }}\r\n >\r\n Back to Form\r\n \r\n
\r\n );\r\n }\r\n }\r\n\r\n return (\r\n
\r\n {readOnlyHeader}\r\n
\r\n
\r\n {tabs ? (\r\n
\r\n {tabs}\r\n
\r\n ) : null}\r\n {form}\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default Wizard;\r\n","const formData = {\r\n insuredresultantdamages: [false, false, false, false, false]\r\n};\r\n\r\nexport default formData;\r\n","import React from \"react\";\r\nimport { useTransition, animated, useSpring } from \"react-spring\";\r\nimport { schema, uiSchema } from \"wn-claims-shared/dist/schema/geyser-schema\";\r\nimport Wizard from \"../../containers/Wizard\";\r\nimport { objectMap } from \"../../utils/common\";\r\nimport formData from \"./data\";\r\n\r\nconst schemas = [];\r\nconst uiSchemas = [];\r\nobjectMap(schema.properties, value => {\r\n schemas.push(value);\r\n uiSchemas.push(uiSchema);\r\n});\r\n\r\nconst Geyser = ({ selectFormData }) => {\r\n const fadeIn = useSpring({ opacity: 1, from: { opacity: 0 } });\r\n return (\r\n \r\n

{schema.title}

\r\n
{schema.description}
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default Geyser;\r\n","import React from \"react\";\r\nimport { useTransition, animated, useSpring } from \"react-spring\";\r\nimport { schema, uiSchema } from \"wn-claims-shared/dist/schema/property-loss-schema\";\r\nimport Wizard from \"../../containers/Wizard\";\r\nimport { objectMap } from \"../../utils/common\";\r\n\r\nconst schemas = [];\r\nconst uiSchemas = [];\r\nobjectMap(schema.properties, value => {\r\n schemas.push(value);\r\n uiSchemas.push(uiSchema);\r\n});\r\n\r\nconst PropertyLoss = ({ selectFormData }) => {\r\n const fadeIn = useSpring({ opacity: 1, from: { opacity: 0 } });\r\n return (\r\n \r\n

{schema.title}

\r\n
{schema.description}
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default PropertyLoss;\r\n","import React from \"react\";\r\nimport { useTransition, animated, useSpring } from \"react-spring\";\r\nimport { schema, uiSchema } from \"wn-claims-shared/dist/schema/windscreen-schema\";\r\nimport Wizard from \"../../containers/Wizard\";\r\nimport { objectMap } from \"../../utils/common\";\r\n\r\nconst schemas = [];\r\nconst uiSchemas = [];\r\nobjectMap(schema.properties, value => {\r\n schemas.push(value);\r\n uiSchemas.push(uiSchema);\r\n});\r\n\r\nconst Windscreen = ({ selectFormData }) => {\r\n const fadeIn = useSpring({ opacity: 1, from: { opacity: 0 } });\r\n return (\r\n \r\n

{schema.title}

\r\n
{schema.description}
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default Windscreen;\r\n","import React from \"react\";\r\nimport { useTransition, animated, useSpring } from \"react-spring\";\r\nimport { schema, uiSchema } from \"wn-claims-shared/dist/schema/public-liability-schema\";\r\nimport Wizard from \"../../containers/Wizard\";\r\nimport { objectMap } from \"../../utils/common\";\r\n\r\nconst schemas = [];\r\nconst uiSchemas = [];\r\nobjectMap(schema.properties, value => {\r\n schemas.push(value);\r\n uiSchemas.push(uiSchema);\r\n});\r\n\r\nconst PublicLiability = ({ selectFormData }) => {\r\n const fadeIn = useSpring({ opacity: 1, from: { opacity: 0 } });\r\n return (\r\n \r\n

{schema.title}

\r\n
{schema.description}
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default PublicLiability;\r\n","import React from \"react\";\r\nimport { useTransition, animated, useSpring } from \"react-spring\";\r\nimport { schema, uiSchema } from \"wn-claims-shared/dist/schema/vehicle-loss-schema\";\r\nimport Wizard from \"../../containers/Wizard\";\r\nimport { objectMap } from \"../../utils/common\";\r\n\r\nconst schemas = [];\r\nconst uiSchemas = [];\r\nobjectMap(schema.properties, value => {\r\n schemas.push(value);\r\n uiSchemas.push(uiSchema);\r\n});\r\n\r\nconst VehicleLoss = ({ selectFormData }) => {\r\n const fadeIn = useSpring({ opacity: 1, from: { opacity: 0 } });\r\n return (\r\n \r\n

{schema.title}

\r\n
{schema.description}
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default VehicleLoss;\r\n","import React from \"react\";\nimport { useTransition, animated, useSpring } from \"react-spring\";\nimport { schema, uiSchema } from \"wn-claims-shared/dist/schema/vehicle-collision-schema\";\nimport Wizard from \"../../containers/Wizard\";\nimport { objectMap } from \"../../utils/common\";\n\nconst schemas = [];\nconst uiSchemas = [];\nobjectMap(schema.properties, value => {\n schemas.push(value);\n uiSchemas.push(uiSchema);\n});\n\nconst VehicleCollision = ({ selectFormData }) => {\n const fadeIn = useSpring({ opacity: 1, from: { opacity: 0 } });\n return (\n \n

{schema.title}

\n
{schema.description}
\n \n
\n );\n};\n\nexport default VehicleCollision;\n","var schema = {\n title: \"Form Selection\",\n description: \"Form Selection\",\n type: \"object\",\n required: [\"region\", \"insuredPolicyNumber\", \"insuredName\", \"insuredtel\", \"clientEmail\", \"brokerage\", \"brokeremail\", \"claimtypeCat\", \"claimtype\"],\n properties: {\n region: {\n type: \"string\",\n title: \"Region\",\n enum: [\"Gauteng\", \"Cape Town\"]\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredName: {\n type: \"string\",\n title: \"Insured Name and Surname\"\n },\n insuredtel: {\n type: \"string\",\n title: \"Insured Contact Number\",\n minLength: 10\n },\n clientEmail: {\n type: \"string\",\n title: \"Insured Email\",\n format: \"email\"\n },\n brokerage: {\n type: \"string\",\n title: \"Brokerage\"\n },\n brokerName: {\n type: \"string\",\n title: \"Broker Contact Person\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n },\n claimtypeCat: {\n type: \"string\",\n title: \"What type of incident you want to submit claim for?\",\n enum: [\"Motor\", \"Non-motor\"]\n },\n claimtype: {\n type: \"string\",\n title: \"Item you want to submit claim for\"\n },\n claimMotor: {\n type: \"string\",\n title: \"Motor item you want to submit claim for\",\n enum: [\"Motor Vehicle Windscreen\", \"Vehicle Stolen or Hijacked\", \"Accident Collision\"]\n },\n claimNonMotor: {\n type: \"string\",\n title: \"Non-motor item you want to submit claim for\",\n enum: [\"Geyser\", \"Property Loss or Damage\", \"Public Liability\"]\n }\n },\n dependencies: {\n claimMotor: {\n oneOf: [{\n properties: {\n claimMotor: {\n enum: [\"Accident Collision\"]\n },\n thirdparty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdpartyInvolved\"],\n properties: {\n thirdpartyInvolved: {\n type: \"string\",\n title: \"Was there a Third Party Involved in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyInvolved: {\n oneOf: [{\n properties: {\n thirdpartyInvolved: {\n enum: [\"Yes\"]\n },\n thirdpartyOther: {\n type: \"object\",\n title: \"\",\n required: [\"thirdpartyHaveDetails\"],\n properties: {\n thirdpartyHaveDetails: {\n type: \"string\",\n title: \"Do you have Third Party Details?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyHaveDetails: {\n oneOf: [{\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"No\"]\n },\n thirdpartyHaveDetailsNote: {\n type: \"null\",\n title: \"When you receive third party information, please submit to your broker as it's required for claim processing.\"\n }\n }\n }, {\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n thirdpartyInvolved: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }]\n }\n }\n};\nexport default schema;","const uiSchema = {\r\n claimtype: {\r\n classNames: \"hidden\"\r\n },\r\n claimMotor: {\r\n classNames: \"hidden\"\r\n },\r\n claimNonMotor: {\r\n classNames: \"hidden\"\r\n }\r\n};\r\n\r\nexport default uiSchema;\r\n","import React, { Component } from \"react\";\r\nimport Form from \"react-jsonschema-form-bs4\";\r\nimport Geyser from \"../Geyser/Geyser\";\r\nimport PropertyLoss from \"../PropertyLoss/PropertyLoss\";\r\nimport Windscreen from \"../Windscreen/Windscreen\";\r\nimport PublicLiability from \"../PublicLiability/PublicLiability\";\r\nimport VehicleLoss from \"../VehicleLoss/VehicleLoss\";\r\nimport VehicleCollision from \"../VehicleCollision/VehicleCollision\";\r\nimport schema from \"wn-claims-shared/dist/schema/form-selection-schema\";\r\nimport uiSchema from \"./uiSchema\";\r\nimport $ from \"jquery\";\r\n\r\nconst uuidv4 = require(\"uuid/v4\");\r\nconst log = type => console.log.bind(console, type);\r\n\r\nexport class FormSelection extends Component {\r\n constructor() {\r\n super();\r\n\r\n this.state = {\r\n selectedForm: {}\r\n };\r\n this.selectedForm = {};\r\n }\r\n // TODO: move to utils\r\n validateTelNumbers = (formData, errors) => {\r\n const phoneno = /^\\d{10}$/;\r\n // FIXME: is it possible to use a universal telephone type to flag telephone number validations instead of hardcoding? if not move to a config file\r\n const telephoneKeys = [\r\n \"brokertel\",\r\n \"insuredtel\"\r\n ];\r\n\r\n telephoneKeys.forEach(element => {\r\n //console.log(element);\r\n if (formData.hasOwnProperty(element) && formData[element]) {\r\n if (!formData[element].match(phoneno)) {\r\n errors[element].addError(\"Not a valid contact number.\");\r\n }\r\n }\r\n\r\n });\r\n return errors;\r\n };\r\n\r\n handleFormSelection = ({ formData }, e) => {\r\n // TODO: move formselection logic out of AppRouter\r\n const fD = { ...formData }; // Create a deep copy of formdata\r\n fD.formguid = uuidv4(); // Generate new guid (uuid/v4)\r\n this.setState({ selectedForm: fD }); // Save formdata to state\r\n this.selectedForm = fD;\r\n console.log(fD);\r\n console.log(\"form selected:\", this.state.selectedForm);\r\n };\r\n\r\n handleFieldChange = (event, formData) => {\r\n log(\"changes\");\r\n \r\n var str = \"\";\r\n\r\n // Check claim type category = Motor\r\n if (event.formData.claimtypeCat == \"Motor\") {\r\n event.uiSchema.claimMotor.classNames = \"\";\r\n $(\"#root_claimMotor\").parent().removeClass(\"hidden\");\r\n //Show third party section if Accident Collision selected\r\n var selected = $(\"#root_claimMotor :selected\").text();\r\n if (selected == \"Accident Collision\"){\r\n $(\"#root_thirdparty\").parent().removeClass(\"hidden\"); \r\n }\r\n\r\n str = event.formData.claimMotor;\r\n } else {\r\n event.uiSchema.claimMotor.classNames = \"hidden\";\r\n $(\"#root_claimMotor\").parent().addClass(\"hidden\");\r\n $(\"#root_thirdparty\").parent().addClass(\"hidden\");\r\n $(\"#root_claimMotor\").prop(\"selectedIndex\", 0);\r\n }\r\n\r\n // Check claim type category = Non-Motor\r\n if (event.formData.claimtypeCat == \"Non-motor\") {\r\n event.uiSchema.claimNonMotor.classNames = \"\";\r\n $(\"#root_claimNonMotor\").parent().removeClass(\"hidden\");\r\n str = event.formData.claimNonMotor; \r\n } else {\r\n event.uiSchema.claimNonMotor.classNames = \"hidden\";\r\n $(\"#root_claimNonMotor\").parent().addClass(\"hidden\");\r\n $(\"#root_claimNonMotor\").prop(\"selectedIndex\", 0);\r\n }\r\n\r\n // Update the claimtype\r\n event.formData.claimtype = str;\r\n $(\"#root_claimtype\").val(str);\r\n\r\n };\r\n\r\n render() {\r\n const { selectedForm } = this.state;\r\n\r\n // TODO: move formselection logic out of AppRouter\r\n /* TODO: move component definitions inside below switch statement, \r\n no need to have a seperate component for each form, \r\n just need to pass the form's schema, \r\n uiSchemas and formdata here instead of the component, \r\n use a standard wizard wrapper component to contain Wizard components */\r\n let selectedFormComponent;\r\n switch (selectedForm.claimtype) {\r\n case \"Geyser\":\r\n selectedFormComponent = ;\r\n break;\r\n case \"Vehicle Stolen or Hijacked\":\r\n selectedFormComponent = ;\r\n break;\r\n case \"Accident Collision\":\r\n selectedFormComponent = ;\r\n break;\r\n case \"Motor Vehicle Windscreen\":\r\n selectedFormComponent = ;\r\n break;\r\n case \"Property Loss or Damage\":\r\n selectedFormComponent = ;\r\n break;\r\n case \"Public Liability\":\r\n selectedFormComponent = ;\r\n break;\r\n default:\r\n selectedFormComponent =
no form selected
;\r\n break;\r\n }\r\n const formSelect = (\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n return
{this.state.selectedForm.formguid ? selectedFormComponent : formSelect}
;\r\n }\r\n}\r\n\r\nexport default FormSelection;\r\n","export var schema = {\n title: \"Accident Collision\",\n description: \"Accident Collision Claim Form\",\n type: \"object\",\n properties: {\n info: {\n type: \"object\",\n title: \"Information\",\n required: [\"region\", \"insuredPolicyNumber\", \"insuredName\", \"insuredtel\", \"clientEmail\", \"brokerage\", \"brokeremail\", \"claimtypeCat\", \"claimtype\"],\n properties: {\n region: {\n type: \"string\",\n title: \"Region\",\n enum: [\"Gauteng\", \"Cape Town\"]\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredName: {\n type: \"string\",\n title: \"Insured Name and Surname\"\n },\n insuredtel: {\n type: \"string\",\n title: \"Insured Contact Number\",\n minLength: 10\n },\n clientEmail: {\n type: \"string\",\n title: \"Insured Email\",\n format: \"email\"\n },\n brokerage: {\n type: \"string\",\n title: \"Brokerage\"\n },\n brokerName: {\n type: \"string\",\n title: \"Broker Contact Person\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n },\n claimtypeCat: {\n type: \"string\",\n title: \"What type of incident you want to submit claim for?\",\n enum: [\"Motor\", \"Non-motor\"]\n },\n claimtype: {\n type: \"string\",\n title: \"Item you want to submit claim for\"\n },\n claimMotor: {\n type: \"string\",\n title: \"Motor item you want to submit claim for\",\n enum: [\"Motor Vehicle Windscreen\", \"Vehicle Stolen or Hijacked\", \"Accident Collision\"]\n },\n claimNonMotor: {\n type: \"string\",\n title: \"Non-motor item you want to submit claim for\",\n enum: [\"Geyser\", \"Property Loss or Damage\", \"Public Liability\"]\n }\n },\n dependencies: {\n claimMotor: {\n oneOf: [{\n properties: {\n claimMotor: {\n enum: [\"Accident Collision\"]\n },\n thirdparty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdpartyInvolved\"],\n properties: {\n thirdpartyInvolved: {\n type: \"string\",\n title: \"Was there a Third Party Involved in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyInvolved: {\n oneOf: [{\n properties: {\n thirdpartyInvolved: {\n enum: [\"Yes\"]\n },\n thirdpartyOther: {\n type: \"object\",\n title: \"\",\n required: [\"thirdpartyHaveDetails\"],\n properties: {\n thirdpartyHaveDetails: {\n type: \"string\",\n title: \"Do you have Third Party Details?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyHaveDetails: {\n oneOf: [{\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"No\"]\n },\n thirdpartyHaveDetailsNote: {\n type: \"null\",\n title: \"When you receive third party information, please submit to your broker as it's required for claim processing.\"\n }\n }\n }, {\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n thirdpartyInvolved: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }]\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentDriverDrugTest\"],\n properties: {\n insureddateloss: {\n title: \"Date and Time When Incident Occurred?\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentDriverDrugTest: {\n title: \"Was the Driver Tested for Alcohol or Drug Use?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n },\n incidentCoverInfo: {\n type: \"object\",\n title: \"\",\n required: [\"incidentCover\"],\n properties: {\n incidentCover: {\n title: \"Is the Incident Covered Under Any Other Policy of Insurance?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentCover: {\n oneOf: [{\n required: [\"incidentPolicyDetails\"],\n properties: {\n incidentCover: {\n enum: [\"Yes\"]\n },\n incidentPolicyDetails: {\n type: \"string\",\n title: \"Details of Other Policy\"\n }\n }\n }, {\n properties: {\n incidentCover: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n incidentVehicleStatusInfo: {\n type: \"object\",\n title: \"\",\n required: [\"incidentVehicleStatus\"],\n properties: {\n incidentVehicleStatus: {\n title: \"Vehicle Driveable?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentVehicleStatus: {\n oneOf: [{\n required: [\"incidentVehicleLocation\", \"incidentVehicleTowDetails\"],\n properties: {\n incidentVehicleStatus: {\n enum: [\"No\"]\n },\n incidentVehicleLocation: {\n type: \"string\",\n title: \"Location Where Vehicle was Towed To?\"\n },\n incidentVehicleTowDetails: {\n type: \"string\",\n title: \"Provide Details of Tow Operator Used\"\n }\n }\n }, {\n properties: {\n incidentVehicleStatus: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n },\n incidentAssistLineInfo: {\n type: \"object\",\n title: \"\",\n required: [\"incidentAssistLine\"],\n properties: {\n incidentAssistLine: {\n title: \"Was Western Assist Line Contacted?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentAssistLine: {\n oneOf: [{\n required: [\"incidentWNReferenceNumber\"],\n properties: {\n incidentAssistLine: {\n enum: [\"Yes\"]\n },\n incidentWNReferenceNumber: {\n title: \"Western Assist Reference Number\",\n type: \"string\"\n }\n }\n }, {\n properties: {\n incidentAssistLine: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n },\n dependencies: {\n incidentDriverDrugTest: {\n oneOf: [{\n properties: {\n incidentDriverDrugTest: {\n enum: [\"Yes\"]\n },\n incidentReport: {\n title: \"If the Driver was Tested for Alcohol/Drug Use, Please Attach the Report\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n incidentDriverDrugTest: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n vehicleDetails: {\n type: \"object\",\n title: \"Vehicle Details\",\n required: [\"vehicleMake\", \"vehicleModel\", \"vehicleYear\", \"vehicleRegistration\"],\n properties: {\n vehicleMake: {\n type: \"string\",\n title: \"Vehicle Make\"\n },\n vehicleModel: {\n type: \"string\",\n title: \"Vehicle Model\"\n },\n vehicleYear: {\n type: \"string\",\n title: \"Vehicle Year\"\n },\n vehicleRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n vehicleVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n },\n vehicleEngineNumber: {\n type: \"string\",\n title: \"Engine Number\"\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the Incident Reported to the Police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Police Station Where Incident Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date Reported\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"SAPS Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }, {\n properties: {\n policeReported: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n },\n driverDetails: {\n type: \"object\",\n title: \"Full Details of Driver\",\n required: [\"driverIsOwner\"],\n properties: {\n driverIsOwner: {\n type: \"string\",\n title: \"Is the Driver the Owner of the Vehicle?\",\n enum: [\"Yes\", \"No\"]\n },\n driverDetails: {\n type: \"object\",\n title: \"Details of Driver\",\n required: [\"driverFullName\", \"driverIdPassport\", \"driverContactNumber\", \"driverPermissionByInsured\"],\n properties: {\n driverFullName: {\n type: \"string\",\n title: \"Driver Full Name\"\n },\n driverIdPassport: {\n type: \"string\",\n title: \"Driver ID/Passport Number\"\n },\n driverContactNumber: {\n type: \"string\",\n title: \"Driver Contact Number\",\n minLength: 10\n },\n driverEmail: {\n type: \"string\",\n format: \"email\",\n title: \"Driver Email\"\n },\n driverPermissionByInsured: {\n type: \"string\",\n title: \"Was the Driver Using the Vehicle with the Insured's Permission?\",\n enum: [\"Yes\", \"No\"]\n }\n }\n }\n }\n },\n witnesses: {\n type: \"object\",\n title: \"Witnesses\",\n description: \"Please Add Witnesses Details\",\n properties: {\n witnessList: {\n title: \"Witnesses\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n witness: {\n type: \"array\",\n title: \"Witness\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }]\n }\n }\n }\n }\n }\n },\n injuredPassengers: {\n type: \"object\",\n title: \"Injured Passengers\",\n required: [\"injuredPassengersInjured\"],\n properties: {\n injuredPassengersInjured: {\n type: \"string\",\n title: \"Were there Any Passengers?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n injuredPassengersInjured: {\n oneOf: [{\n properties: {\n injuredPassengersInjured: {\n enum: [\"Yes\"]\n },\n injured: {\n type: \"object\",\n title: \"Injured Passengers\",\n required: [\"personalInjuries\"],\n properties: {\n personalInjuries: {\n type: \"string\",\n title: \"Were Any Passengers Injured in the Incident\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n personalInjuries: {\n oneOf: [{\n properties: {\n personalInjuries: {\n enum: [\"Yes\"]\n },\n personalInjuriesList: {\n title: \"Passengers Injuries\",\n description: \"Please Add Injured Parties Details\",\n required: [\"name\", \"relationship\"],\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"email\",\n type: \"string\",\n title: \"Contact Email\",\n format: \"email\"\n }, {\n key: \"idPassportNumber\",\n type: \"string\",\n title: \"ID/Passport Number\"\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }, {\n key: \"age\",\n type: \"number\",\n title: \"Age\"\n }, {\n key: \"relationship\",\n title: \"Relationships\",\n description: \"If Person Named Above is in your Service, your Tenant, or Related to You. Please Provide Details.\",\n type: \"string\"\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n personalInjuries: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n injuredPassengersInjured: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n thirdParty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdPartyName\", \"thirdPartyContactPerson\", \"thirdPartyContactNumber\", \"thirdPartyInsurer\"],\n properties: {\n thirdPartyName: {\n type: \"string\",\n title: \"Third Party Name\"\n },\n thirdPartyContactPerson: {\n type: \"string\",\n title: \"Third Party Contact Person\"\n },\n thirdPartyContactNumber: {\n type: \"string\",\n title: \"Third Party Contact Number\",\n minLength: 10\n },\n thirdPartyEmail: {\n type: \"string\",\n format: \"email\",\n title: \"Third Party Contact Email\"\n },\n thirdPartyInsurer: {\n type: \"string\",\n title: \"Is Third Party Insured\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdPartyInsurer: {\n oneOf: [{\n properties: {\n thirdPartyInsurer: {\n enum: [\"Yes\"]\n },\n thirdPartyInsurerInfo: {\n type: \"object\",\n title: \"\",\n properties: {\n thirdPartyInsurerDetails: {\n type: \"string\",\n title: \"Third Party Insurer Details\"\n },\n thirdPartyPolicyNumber: {\n type: \"string\",\n title: \"Third Party Policy Number\"\n }\n }\n }\n }\n }, {\n properties: {\n thirdPartyInsurer: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n thirdPartyvehicleDetails: {\n type: \"object\",\n title: \"Third Party Vehicle Details\",\n required: [\"thirdPartyMake\", \"thirdPartyRegistration\"],\n properties: {\n thirdPartyMake: {\n type: \"string\",\n title: \"Vehicle Make\"\n },\n thirdPartyModel: {\n type: \"string\",\n title: \"Vehicle Model\"\n },\n thirdPartyYear: {\n type: \"number\",\n title: \"Vehicle Year\"\n },\n thirdPartyRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n thirdPartyVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n }\n }\n },\n thirdPartyinjured: {\n type: \"object\",\n title: \"Third Party Injured Persons\",\n required: [\"thirdPartyInjuries\"],\n properties: {\n thirdPartyInjuries: {\n type: \"string\",\n title: \"Were There Any Third Party Injuries\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdPartyInjuries: {\n oneOf: [{\n properties: {\n thirdPartyInjuries: {\n enum: [\"Yes\"]\n },\n thirdPartyInjuriesList: {\n title: \"Third Party Injuries\",\n description: \"Please Add Injured Parties Details\",\n required: [\"name\"],\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactPerson\",\n type: \"string\",\n title: \"Contact Person\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"email\",\n type: \"string\",\n title: \"Contact Email\",\n format: \"email\"\n }, {\n key: \"injuriesDescription\",\n type: \"string\",\n title: \"Description of Injuries\"\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n thirdPartyInjuries: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach Any of the Following Applicable Documents:\\n - Sketch of Events Resulting on Loss or Damage\\n - Police Report\\n - Photo of Driver\\u2019s License\\n - Photo of License Disk\\n - Photos of All Sides of your Vehicle\\n - Photos of the Accident Scene \\n - Photos of 3rd Party Vehicle\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n claimMotor: {\n classNames: \"hidden\"\n },\n claimNonMotor: {\n classNames: \"hidden\"\n },\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n incidentCoverInfo: {\n incidentPolicyDetails: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n reportDetails: {\n policePlaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n witnessList: {\n \"ui:options\": {\n orderable: false\n }\n },\n injuredPassengersInjured: {\n personalInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n },\n thirdPartyInsurerInfo: {\n thirdPartyInsurerDetails: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n thirdPartyInjuries: {\n thirdPartyInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n }\n};","import { NONAME } from \"dns\";\nexport var schema = {\n title: \"Geyser\",\n description: \"Geyser form\",\n type: \"object\",\n properties: {\n info: {\n type: \"object\",\n title: \"Information\",\n required: [\"region\", \"insuredPolicyNumber\", \"insuredName\", \"insuredtel\", \"clientEmail\", \"brokerage\", \"brokeremail\", \"claimtypeCat\", \"claimtype\"],\n properties: {\n region: {\n type: \"string\",\n title: \"Region\",\n enum: [\"Gauteng\", \"Cape Town\"]\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredName: {\n type: \"string\",\n title: \"Insured Name and Surname\"\n },\n insuredtel: {\n type: \"string\",\n title: \"Insured Contact Number\",\n minLength: 10\n },\n clientEmail: {\n type: \"string\",\n title: \"Insured Email\",\n format: \"email\"\n },\n brokerage: {\n type: \"string\",\n title: \"Brokerage\"\n },\n brokerName: {\n type: \"string\",\n title: \"Broker Contact Person\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n },\n claimtypeCat: {\n type: \"string\",\n title: \"What type of incident you want to submit claim for?\",\n enum: [\"Motor\", \"Non-motor\"]\n },\n claimtype: {\n type: \"string\",\n title: \"Item you want to submit claim for\"\n },\n claimMotor: {\n type: \"string\",\n title: \"Motor item you want to submit claim for\",\n enum: [\"Motor Vehicle Windscreen\", \"Vehicle Stolen or Hijacked\", \"Accident Collision\"]\n },\n claimNonMotor: {\n type: \"string\",\n title: \"Non-motor item you want to submit claim for\",\n enum: [\"Geyser\", \"Property Loss or Damage\", \"Public Liability\"]\n }\n },\n dependencies: {\n claimMotor: {\n oneOf: [{\n properties: {\n claimMotor: {\n enum: [\"Accident Collision\"]\n },\n thirdparty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdpartyInvolved\"],\n properties: {\n thirdpartyInvolved: {\n type: \"string\",\n title: \"Was there a Third Party Involved in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyInvolved: {\n oneOf: [{\n properties: {\n thirdpartyInvolved: {\n enum: [\"Yes\"]\n },\n thirdpartyOther: {\n type: \"object\",\n title: \"\",\n required: [\"thirdpartyHaveDetails\"],\n properties: {\n thirdpartyHaveDetails: {\n type: \"string\",\n title: \"Do you have Third Party Details?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyHaveDetails: {\n oneOf: [{\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"No\"]\n },\n thirdpartyHaveDetailsNote: {\n type: \"null\",\n title: \"When you receive third party information, please submit to your broker as it's required for claim processing.\"\n }\n }\n }, {\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n thirdpartyInvolved: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }]\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentburstgeyser\", \"incidentgeysersize\", \"incidentOtherPolicy\"],\n properties: {\n insureddateloss: {\n type: \"string\",\n title: \"Date and Time When Incident Occurred?\",\n format: \"date-time\"\n },\n incidentsection: {\n type: \"string\",\n title: \"Section/Unit Number\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentburstgeyser: {\n type: \"string\",\n title: \"Burst Geyser\",\n enum: [\"Yes\", \"No\"]\n },\n incidentgeysersize: {\n type: \"string\",\n title: \"Size of Geyser\",\n enum: [\"50 Litre\", \"100 Litre\", \"150 Litre\", \"200 Litre\", \"300 Litre\", \"500 Litre\", \"Other\"]\n },\n incidentDamages: {\n type: \"object\",\n title: \"\",\n required: [\"incidentResultantDamage\"],\n properties: {\n incidentResultantDamage: {\n type: \"string\",\n title: \"Is there a Resultant Damage(s)?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentResultantDamage: {\n oneOf: [{\n properties: {\n incidentResultantDamage: {\n enum: [\"Yes\"]\n },\n incidentResultantDamageOptions: {\n type: \"object\",\n title: \"\",\n properties: {\n floors: {\n type: \"boolean\",\n title: \"Floors\"\n },\n carpets: {\n type: \"boolean\",\n title: \"Carpets\"\n },\n ceilings: {\n type: \"boolean\",\n title: \"Ceilings\"\n },\n cupboards: {\n type: \"boolean\",\n title: \"Cupboards\"\n },\n other: {\n type: \"boolean\",\n title: \"Other\"\n }\n }\n }\n }\n }, {\n properties: {\n incidentResultantDamage: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n incidentOtherPolicy: {\n type: \"string\",\n title: \"Is this Incident Covered Under Any Other Policy of Insurance?\",\n enum: [\"Yes\", \"No\"]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Add Any Pictures of the Geyser and Resultant Damages.\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n claimMotor: {\n classNames: \"hidden\"\n },\n claimNonMotor: {\n classNames: \"hidden\"\n },\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n};","export var schema = {\n title: \"Property Loss\",\n description: \"Property Loss Claim Form\",\n type: \"object\",\n properties: {\n info: {\n type: \"object\",\n title: \"Information\",\n required: [\"region\", \"insuredPolicyNumber\", \"insuredName\", \"insuredtel\", \"clientEmail\", \"brokerage\", \"brokeremail\", \"claimtypeCat\", \"claimtype\"],\n properties: {\n region: {\n type: \"string\",\n title: \"Region\",\n enum: [\"Gauteng\", \"Cape Town\"]\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredName: {\n type: \"string\",\n title: \"Insured Name and Surname\"\n },\n insuredtel: {\n type: \"string\",\n title: \"Insured Contact Number\",\n minLength: 10\n },\n clientEmail: {\n type: \"string\",\n title: \"Insured Email\",\n format: \"email\"\n },\n brokerage: {\n type: \"string\",\n title: \"Brokerage\"\n },\n brokerName: {\n type: \"string\",\n title: \"Broker Contact Person\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n },\n claimtypeCat: {\n type: \"string\",\n title: \"What type of incident you want to submit claim for?\",\n enum: [\"Motor\", \"Non-motor\"]\n },\n claimtype: {\n type: \"string\",\n title: \"Item you want to submit claim for\"\n },\n claimMotor: {\n type: \"string\",\n title: \"Motor item you want to submit claim for\",\n enum: [\"Motor Vehicle Windscreen\", \"Vehicle Stolen or Hijacked\", \"Accident Collision\"]\n },\n claimNonMotor: {\n type: \"string\",\n title: \"Non-motor item you want to submit claim for\",\n enum: [\"Geyser\", \"Property Loss or Damage\", \"Public Liability\"]\n }\n },\n dependencies: {\n claimMotor: {\n oneOf: [{\n properties: {\n claimMotor: {\n enum: [\"Accident Collision\"]\n },\n thirdparty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdpartyInvolved\"],\n properties: {\n thirdpartyInvolved: {\n type: \"string\",\n title: \"Was there a Third Party Involved in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyInvolved: {\n oneOf: [{\n properties: {\n thirdpartyInvolved: {\n enum: [\"Yes\"]\n },\n thirdpartyOther: {\n type: \"object\",\n title: \"\",\n required: [\"thirdpartyHaveDetails\"],\n properties: {\n thirdpartyHaveDetails: {\n type: \"string\",\n title: \"Do you have Third Party Details?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyHaveDetails: {\n oneOf: [{\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"No\"]\n },\n thirdpartyHaveDetailsNote: {\n type: \"null\",\n title: \"When you receive third party information, please submit to your broker as it's required for claim processing.\"\n }\n }\n }, {\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n thirdpartyInvolved: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }]\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentisCovered\"],\n properties: {\n insureddateloss: {\n title: \"Date and Time When Incident Occurred?\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentisCovered: {\n title: \"Is this Incident Covered Under Any Other Policy of Insurance?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n }\n },\n theft: {\n type: \"object\",\n title: \"Theft\",\n required: [\"theftClaim\"],\n properties: {\n theftClaim: {\n title: \"Is this a Theft or Burglar Claim?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n theftClaim: {\n oneOf: [{\n properties: {\n theftClaim: {\n enum: [\"Yes\"]\n },\n theftClaimDetails: {\n type: \"object\",\n title: \"\",\n properties: {\n theftAlarmWorking: {\n title: \"Is There a Working Alarm at the Insured Premise Where Loss or Damage Took Place?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n },\n theftDescription: {\n title: \"Full Description of How Entry was Gained at the Property\",\n type: \"string\"\n }\n }\n },\n police: {\n type: \"object\",\n title: \"\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the Incident Reported to the Police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Police Station Where Incident Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date Reported\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"SAPS Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }, {\n properties: {\n policeReported: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n theftClaim: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n otherParty: {\n type: \"object\",\n title: \"Loss Caused by Other Parties\",\n required: [\"otherPartyIncident\"],\n properties: {\n otherPartyIncident: {\n title: \"Was the Incident Caused by Other Parties?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n otherPartyIncident: {\n oneOf: [{\n properties: {\n otherPartyIncident: {\n enum: [\"Yes\"]\n },\n otherPartyIncidentDetails: {\n type: \"object\",\n title: \"\",\n required: [\"name\"],\n properties: {\n name: {\n title: \"Other Party Name\",\n type: \"string\"\n },\n contactNumber: {\n title: \"Other Party Contact Number\",\n type: \"string\",\n minLength: 10\n },\n email: {\n title: \"Other Party Contact Email\",\n type: \"string\",\n format: \"email\"\n },\n address: {\n type: \"string\",\n title: \"Other Party Physical Address\"\n },\n lat: {\n type: \"string\",\n title: \"Latitude\"\n },\n long: {\n type: \"string\",\n title: \"Longitude\"\n }\n }\n }\n }\n }, {\n properties: {\n otherPartyIncident: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach the Following Documents if Applicable:\\n - Alarm Activation Report\\n - List of Damaged or Stolen Items\\n - Invoice of Replaced or Repaired Item\\n - Original Receipts\\n - Valuation Reports\\n - Police Report\\n - Photos of Damage Area\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n claimMotor: {\n classNames: \"hidden\"\n },\n claimNonMotor: {\n classNames: \"hidden\"\n },\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n theftClaimDetails: {\n theftDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n police: {\n reportDetails: {\n policePlaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n }\n },\n otherPartyIncidentDetails: {\n lat: {\n \"ui:widget\": \"hidden\"\n },\n long: {\n \"ui:widget\": \"hidden\"\n }\n },\n incidentCause: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n};","export var schema = {\n title: \"Public Liability\",\n description: \"Public Liability Claim Form\",\n type: \"object\",\n properties: {\n info: {\n type: \"object\",\n title: \"Information\",\n required: [\"region\", \"insuredPolicyNumber\", \"insuredName\", \"insuredtel\", \"clientEmail\", \"brokerage\", \"brokeremail\", \"claimtypeCat\", \"claimtype\"],\n properties: {\n region: {\n type: \"string\",\n title: \"Region\",\n enum: [\"Gauteng\", \"Cape Town\"]\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredName: {\n type: \"string\",\n title: \"Insured Name and Surname\"\n },\n insuredtel: {\n type: \"string\",\n title: \"Insured Contact Number\",\n minLength: 10\n },\n clientEmail: {\n type: \"string\",\n title: \"Insured Email\",\n format: \"email\"\n },\n brokerage: {\n type: \"string\",\n title: \"Brokerage\"\n },\n brokerName: {\n type: \"string\",\n title: \"Broker Contact Person\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n },\n claimtypeCat: {\n type: \"string\",\n title: \"What type of incident you want to submit claim for?\",\n enum: [\"Motor\", \"Non-motor\"]\n },\n claimtype: {\n type: \"string\",\n title: \"Item you want to submit claim for\"\n },\n claimMotor: {\n type: \"string\",\n title: \"Motor item you want to submit claim for\",\n enum: [\"Motor Vehicle Windscreen\", \"Vehicle Stolen or Hijacked\", \"Accident Collision\"]\n },\n claimNonMotor: {\n type: \"string\",\n title: \"Non-motor item you want to submit claim for\",\n enum: [\"Geyser\", \"Property Loss or Damage\", \"Public Liability\"]\n }\n },\n dependencies: {\n claimMotor: {\n oneOf: [{\n properties: {\n claimMotor: {\n enum: [\"Accident Collision\"]\n },\n thirdparty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdpartyInvolved\"],\n properties: {\n thirdpartyInvolved: {\n type: \"string\",\n title: \"Was there a Third Party Involved in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyInvolved: {\n oneOf: [{\n properties: {\n thirdpartyInvolved: {\n enum: [\"Yes\"]\n },\n thirdpartyOther: {\n type: \"object\",\n title: \"\",\n required: [\"thirdpartyHaveDetails\"],\n properties: {\n thirdpartyHaveDetails: {\n type: \"string\",\n title: \"Do you have Third Party Details?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyHaveDetails: {\n oneOf: [{\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"No\"]\n },\n thirdpartyHaveDetailsNote: {\n type: \"null\",\n title: \"When you receive third party information, please submit to your broker as it's required for claim processing.\"\n }\n }\n }, {\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n thirdpartyInvolved: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }]\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentisCovered\"],\n properties: {\n insureddateloss: {\n title: \"Date and Time When Incident Occurred?\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description on How Incident Occurred?\"\n },\n incidentisCovered: {\n title: \"Is this Incident Covered Under Any Other Policy of Insurance?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the Incident Reported to the Police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Police Station Where Incident Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date Reported\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"SAPS Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }, {\n properties: {\n policeReported: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n },\n witnesses: {\n type: \"object\",\n title: \"Witnesses\",\n properties: {\n witnessList: {\n title: \"Witnesses\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n witness: {\n type: \"array\",\n title: \"Witness\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }]\n }\n }\n }\n }\n }\n },\n propertyDamage: {\n type: \"object\",\n title: \"Property Damage\",\n required: [\"propertyDamageAddress\"],\n properties: {\n propertyDamageName: {\n title: \"Name of Owner\",\n type: \"string\"\n },\n propertyDamageContactNumber: {\n title: \"Contact Number of Owner\",\n type: \"string\",\n minLength: 10\n },\n propertyDamageAddress: {\n type: \"object\",\n title: \"\",\n properties: {\n address: {\n type: \"string\",\n title: \"Address of Owner\"\n },\n lat: {\n type: \"string\",\n title: \"Latitude\"\n },\n long: {\n type: \"string\",\n title: \"Longitude\"\n }\n }\n }\n }\n },\n personalInjuries: {\n type: \"object\",\n title: \"Personal Injuries\",\n properties: {\n personalInjuriesList: {\n title: \"Personal Injuries\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"email\",\n type: \"string\",\n title: \"Contact Email\",\n format: \"email\"\n }, {\n key: \"idPassportNumber\",\n type: \"string\",\n title: \"ID/Passport Number\"\n }, {\n key: \"age\",\n type: \"number\",\n title: \"Age\"\n }, {\n key: \"relationship\",\n title: \"Relationships\",\n description: \"If Person Named Above is in your Service, your Tenant, or Related to you. Please Provide Details.\",\n type: \"string\"\n }]\n }\n }\n }\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach Any Correspondence of Claim Made Against You if Any.\",\n properties: {\n attachmentsDescription: {\n title: \"Description\",\n description: \"If a claim has been, or is being made against you, give details and attach any correspondence.\",\n type: \"string\"\n },\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n claimMotor: {\n classNames: \"hidden\"\n },\n claimNonMotor: {\n classNames: \"hidden\"\n },\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n reportDetails: {\n policePlaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n propertyDamageAddress: {\n lat: {\n \"ui:widget\": \"hidden\"\n },\n long: {\n \"ui:widget\": \"hidden\"\n }\n },\n propertyDamageDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n relationshipsDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n attachmentsDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n witnessList: {\n \"ui:options\": {\n orderable: false\n }\n },\n personalInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n};","export var schema = {\n title: \"Vehicle Stolen or Hijacked\",\n description: \"Vehicle Stolen or Hijacked Claim Form\",\n type: \"object\",\n properties: {\n info: {\n type: \"object\",\n title: \"Information\",\n required: [\"region\", \"insuredPolicyNumber\", \"insuredName\", \"insuredtel\", \"clientEmail\", \"brokerage\", \"brokeremail\", \"claimtypeCat\", \"claimtype\"],\n properties: {\n region: {\n type: \"string\",\n title: \"Region\",\n enum: [\"Gauteng\", \"Cape Town\"]\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredName: {\n type: \"string\",\n title: \"Insured Name and Surname\"\n },\n insuredtel: {\n type: \"string\",\n title: \"Insured Contact Number\",\n minLength: 10\n },\n clientEmail: {\n type: \"string\",\n title: \"Insured Email\",\n format: \"email\"\n },\n brokerage: {\n type: \"string\",\n title: \"Brokerage\"\n },\n brokerName: {\n type: \"string\",\n title: \"Broker Contact Person\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n },\n claimtypeCat: {\n type: \"string\",\n title: \"What type of incident you want to submit claim for?\",\n enum: [\"Motor\", \"Non-motor\"]\n },\n claimtype: {\n type: \"string\",\n title: \"Item you want to submit claim for\"\n },\n claimMotor: {\n type: \"string\",\n title: \"Motor item you want to submit claim for\",\n enum: [\"Motor Vehicle Windscreen\", \"Vehicle Stolen or Hijacked\", \"Accident Collision\"]\n },\n claimNonMotor: {\n type: \"string\",\n title: \"Non-motor item you want to submit claim for\",\n enum: [\"Geyser\", \"Property Loss or Damage\", \"Public Liability\"]\n }\n },\n dependencies: {\n claimMotor: {\n oneOf: [{\n properties: {\n claimMotor: {\n enum: [\"Accident Collision\"]\n },\n thirdparty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdpartyInvolved\"],\n properties: {\n thirdpartyInvolved: {\n type: \"string\",\n title: \"Was there a Third Party Involved in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyInvolved: {\n oneOf: [{\n properties: {\n thirdpartyInvolved: {\n enum: [\"Yes\"]\n },\n thirdpartyOther: {\n type: \"object\",\n title: \"\",\n required: [\"thirdpartyHaveDetails\"],\n properties: {\n thirdpartyHaveDetails: {\n type: \"string\",\n title: \"Do you have Third Party Details?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyHaveDetails: {\n oneOf: [{\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"No\"]\n },\n thirdpartyHaveDetailsNote: {\n type: \"null\",\n title: \"When you receive third party information, please submit to your broker as it's required for claim processing.\"\n }\n }\n }, {\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n thirdpartyInvolved: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }]\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\", \"incidentVehicleRecovered\"],\n properties: {\n insureddateloss: {\n title: \"Date and Time When Incident Occurred?\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentVehicleRecovered: {\n type: \"string\",\n title: \"Was the Vehicle Recovered?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentVehicleRecovered: {\n oneOf: [{\n properties: {\n incidentVehicleRecovered: {\n enum: [\"Yes\"]\n },\n currentVehicleLocation: {\n type: \"object\",\n title: \"\",\n required: [\"address\"],\n properties: {\n address: {\n type: \"string\",\n title: \"Location of Vehicle Currently\"\n },\n lat: {\n type: \"string\",\n title: \"Latitude\"\n },\n long: {\n type: \"string\",\n title: \"Longitude\"\n }\n }\n }\n }\n }]\n }\n }\n },\n vehicleDetails: {\n type: \"object\",\n title: \"Vehicle Details\",\n required: [\"vehicleMake\", \"vehicleModel\", \"vehicleYear\", \"vehicleRegistration\"],\n properties: {\n vehicleMake: {\n type: \"string\",\n title: \"Vehicle Make\"\n },\n vehicleModel: {\n type: \"string\",\n title: \"Vehicle Model\"\n },\n vehicleYear: {\n type: \"string\",\n title: \"Vehicle Year\"\n },\n vehicleRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n vehicleVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n },\n vehicleEngineNumber: {\n type: \"string\",\n title: \"Engine Number\"\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the Incident Reported to the Police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Police Station Where Incident Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date Reported\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"SAPS Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }, {\n properties: {\n policeReported: {\n enum: [\"No\"]\n },\n reportNote: {\n type: \"null\",\n title: \"Please Report Incident to Police and Update Your Broker.\"\n }\n }\n }]\n }\n }\n },\n driverDetails: {\n type: \"object\",\n title: \"Full Details of Driver\",\n required: [\"driverIsOwner\"],\n properties: {\n driverIsOwner: {\n type: \"string\",\n title: \"Is the Driver the Owner of the Vehicle?\",\n enum: [\"Yes\", \"No\"]\n },\n driverDetails: {\n type: \"object\",\n title: \"Details of Driver\",\n required: [\"driverFullName\", \"driverIdPassport\", \"driverContactNumber\", \"driverPermissionByInsured\"],\n properties: {\n driverFullName: {\n type: \"string\",\n title: \"Driver Full Name\"\n },\n driverIdPassport: {\n type: \"string\",\n title: \"Driver ID/Passport Number\"\n },\n driverContactNumber: {\n type: \"string\",\n title: \"Driver Contact Number\",\n minLength: 10\n },\n driverEmail: {\n type: \"string\",\n format: \"email\",\n title: \"Driver Email\"\n },\n driverPermissionByInsured: {\n type: \"string\",\n title: \"Was the Driver Using the Vehicle with the Insured's Permission?\",\n enum: [\"Yes\", \"No\"]\n }\n }\n }\n }\n },\n witnesses: {\n type: \"object\",\n title: \"Witnesses\",\n description: \"Please Add Witnesses Details\",\n properties: {\n witnessList: {\n title: \"Witnesses\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n witness: {\n type: \"array\",\n title: \"Witness\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }]\n }\n }\n }\n }\n }\n },\n injured: {\n type: \"object\",\n title: \"Injured Persons\",\n required: [\"personalInjuries\"],\n properties: {\n personalInjuries: {\n type: \"string\",\n title: \"Were Any Parties Injured in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n personalInjuries: {\n oneOf: [{\n properties: {\n personalInjuries: {\n enum: [\"Yes\"]\n },\n personalInjuriesList: {\n title: \"Personal Injuries\",\n description: \"Please Add Injured Parties Details\",\n required: [\"name\", \"relationship\"],\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"email\",\n type: \"string\",\n title: \"Contact Email\",\n format: \"email\"\n }, {\n key: \"idPassportNumber\",\n type: \"string\",\n title: \"ID/Passport Number\"\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }, {\n key: \"age\",\n type: \"number\",\n title: \"Age\"\n }, {\n key: \"relationship\",\n title: \"Relationships\",\n description: \"If Person Named Above is in your Service, your Tenant, or Related to You. Please Provide Details.\",\n type: \"string\"\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n personalInjuries: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach Any of the Following Applicable Documents:\\n - Police Report\\n - Copy of Vehicle registration documents\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n claimMotor: {\n classNames: \"hidden\"\n },\n claimNonMotor: {\n classNames: \"hidden\"\n },\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n currentVehicleLocation: {\n lat: {\n \"ui:widget\": \"hidden\"\n },\n long: {\n \"ui:widget\": \"hidden\"\n }\n },\n reportDetails: {\n policePlaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n witnessList: {\n \"ui:options\": {\n orderable: false\n }\n },\n personalInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n};","export var schema = {\n title: \"Motor Vehicle Windscreen\",\n description: \"Motor Vehicle Windscreen Claim Form\",\n type: \"object\",\n properties: {\n info: {\n type: \"object\",\n title: \"Information\",\n required: [\"region\", \"insuredPolicyNumber\", \"insuredName\", \"insuredtel\", \"clientEmail\", \"brokerage\", \"brokeremail\", \"claimtypeCat\", \"claimtype\"],\n properties: {\n region: {\n type: \"string\",\n title: \"Region\",\n enum: [\"Gauteng\", \"Cape Town\"]\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredName: {\n type: \"string\",\n title: \"Insured Name and Surname\"\n },\n insuredtel: {\n type: \"string\",\n title: \"Insured Contact Number\",\n minLength: 10\n },\n clientEmail: {\n type: \"string\",\n title: \"Insured Email\",\n format: \"email\"\n },\n brokerage: {\n type: \"string\",\n title: \"Brokerage\"\n },\n brokerName: {\n type: \"string\",\n title: \"Broker Contact Person\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n },\n claimtypeCat: {\n type: \"string\",\n title: \"What type of incident you want to submit claim for?\",\n enum: [\"Motor\", \"Non-motor\"]\n },\n claimtype: {\n type: \"string\",\n title: \"Item you want to submit claim for\"\n },\n claimMotor: {\n type: \"string\",\n title: \"Motor item you want to submit claim for\",\n enum: [\"Motor Vehicle Windscreen\", \"Vehicle Stolen or Hijacked\", \"Accident Collision\"]\n },\n claimNonMotor: {\n type: \"string\",\n title: \"Non-motor item you want to submit claim for\",\n enum: [\"Geyser\", \"Property Loss or Damage\", \"Public Liability\"]\n }\n },\n dependencies: {\n claimMotor: {\n oneOf: [{\n properties: {\n claimMotor: {\n enum: [\"Accident Collision\"]\n },\n thirdparty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdpartyInvolved\"],\n properties: {\n thirdpartyInvolved: {\n type: \"string\",\n title: \"Was there a Third Party Involved in the Incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyInvolved: {\n oneOf: [{\n properties: {\n thirdpartyInvolved: {\n enum: [\"Yes\"]\n },\n thirdpartyOther: {\n type: \"object\",\n title: \"\",\n required: [\"thirdpartyHaveDetails\"],\n properties: {\n thirdpartyHaveDetails: {\n type: \"string\",\n title: \"Do you have Third Party Details?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdpartyHaveDetails: {\n oneOf: [{\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"No\"]\n },\n thirdpartyHaveDetailsNote: {\n type: \"null\",\n title: \"When you receive third party information, please submit to your broker as it's required for claim processing.\"\n }\n }\n }, {\n properties: {\n thirdpartyHaveDetails: {\n enum: [\"Yes\"]\n }\n }\n }]\n }\n }\n }\n }\n }, {\n properties: {\n thirdpartyInvolved: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n }\n }\n }]\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insureddateloss\", \"incidentAddress\", \"incidentDescription\"],\n properties: {\n insureddateloss: {\n type: \"string\",\n title: \"Date and Time When Incident Occurred?\",\n format: \"date-time\"\n },\n incidentAddress: {\n type: \"string\",\n title: \"Address Where Incident Occurred?\"\n },\n incidentLat: {\n type: \"string\",\n title: \"Latitude\"\n },\n incidentLong: {\n type: \"string\",\n title: \"Longitude\"\n },\n incidentDescription: {\n type: \"string\",\n title: \"Description of What Occurred?\"\n },\n incidentChipped: {\n type: \"boolean\",\n title: \"Chipped\"\n },\n incidentCrackedShattered: {\n type: \"boolean\",\n title: \"Cracked or Shattered\"\n }\n }\n },\n vehicleDetails: {\n type: \"object\",\n title: \"Vehicle Details\",\n required: [\"vehicleMake\", \"vehicleModel\", \"vehicleYear\", \"vehicleRegistration\"],\n properties: {\n vehicleMake: {\n type: \"string\",\n title: \"Vehicle Make\"\n },\n vehicleModel: {\n type: \"string\",\n title: \"Vehicle Model\"\n },\n vehicleYear: {\n type: \"string\",\n title: \"Vehicle Year\"\n },\n vehicleRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n vehicleVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n },\n vehicleEngineNumber: {\n type: \"string\",\n title: \"Engine Number\"\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n description: \"Please Attach Any of the Following Applicable Documents:\\n - Invoice (if already replaced)\\n - Photos of damaged glass\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n description: \"File Names Should Not Have Any Round Brackets. ()\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n required: [\"insuredaccepttc\"],\n title: \"Declaration\",\n description: \"I/we declare that to the best of my/our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept Terms and Conditions\",\n description: \"Tick Box to Accept Terms and Conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n claimMotor: {\n classNames: \"hidden\"\n },\n claimNonMotor: {\n classNames: \"hidden\"\n },\n incidentLat: {\n \"ui:widget\": \"hidden\"\n },\n incidentLong: {\n \"ui:widget\": \"hidden\"\n },\n incidentDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n};","import { NONAME } from \"dns\";\nexport var schema = {\n title: \"Geyser\",\n description: \"Geyser form\",\n type: \"object\",\n properties: {\n broker: {\n type: \"object\",\n title: \"Broker\",\n required: [\"insuredName\", \"insuredPolicyNumber\", \"brokertel\", \"brokeremail\"],\n properties: {\n brokertel: {\n type: \"string\",\n title: \"Telephone Number\",\n minLength: 10\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n },\n insuredName: {\n type: \"string\",\n title: \"Name of Insured\"\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n }\n }\n },\n insured: {\n type: \"object\",\n title: \"Insured\",\n properties: {\n insuredtel: {\n type: \"string\",\n title: \"Telephone Number\",\n minLength: 10\n },\n insuredcell: {\n type: \"string\",\n title: \"Cell Number\",\n minLength: 10\n },\n insuredaddress: {\n type: \"string\",\n title: \"Address where loss occurred\"\n },\n insuredsection: {\n type: \"string\",\n title: \"Section / Unit Number\"\n },\n insureddateloss: {\n type: \"string\",\n title: \"Date of Damages or Loss\",\n format: \"date-time\"\n },\n insuredburstgeyser: {\n type: \"string\",\n title: \"Burst Geyser\",\n enum: [\"Yes\", \"No\"]\n },\n insuredgeysersize: {\n type: \"string\",\n title: \"Size of Geyser\",\n enum: [\"50 Litre\", \"100 Litre\", \"150 Litre\", \"200 Litre\", \"300 Litre\", \"500 Litre\", \"Other\"]\n },\n insuredgeyserrepair: {\n type: \"string\",\n title: \"Geyser Maintenace\",\n enum: [\"50 Litre\", \"100 Litre\", \"200 Litre\", \"300 Litre\", \"500 Litre\", \"Other\"]\n },\n insuredresultantdamages: {\n type: \"array\",\n title: \"Resultant Damages\",\n items: [{\n key: \"floors\",\n type: \"boolean\",\n title: \"Floors\"\n }, {\n key: \"carpets\",\n type: \"boolean\",\n title: \"Carpets\"\n }, {\n key: \"ceilings\",\n type: \"boolean\",\n title: \"Ceilings\"\n }, {\n key: \"cupboards\",\n type: \"boolean\",\n title: \"Cupboards\"\n }, {\n key: \"other\",\n type: \"boolean\",\n title: \"Other\"\n }]\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my / our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept terms and conditions\",\n description: \"Tick box to accept terms and conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n insuredaddress: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n};","export var schema = {\n title: \"Property Loss\",\n description: \"Property Loss Claim Form\",\n type: \"object\",\n properties: {\n insured: {\n type: \"object\",\n title: \"Insured\",\n required: [\"insuredName\", \"insuredPolicyNumber\", \"brokeremail\"],\n properties: {\n insuredName: {\n type: \"string\",\n title: \"Name of Insured\"\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredContactPerson: {\n type: \"string\",\n title: \"Contact Person\"\n },\n insuredContactNumber: {\n type: \"string\",\n title: \"Contact Phone Number\"\n },\n insuredContactEmail: {\n type: \"string\",\n title: \"Contact Email Address\",\n format: \"email\"\n },\n insuredVatNumber: {\n type: \"string\",\n title: \"VAT Number\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n properties: {\n incidentdate: {\n title: \"Date of Incident\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentplace: {\n type: \"string\",\n title: \"Place of Loss\"\n },\n incidentestimate: {\n type: \"string\",\n title: \"Estimate\"\n },\n incidentisCovered: {\n type: \"boolean\",\n title: \"Is this incident covered under any other policy of insurance?\"\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n properties: {\n policeplaceReported: {\n title: \"Place where Reported\",\n type: \"string\"\n },\n policedateReported: {\n title: \"Date of Reporting\",\n type: \"string\",\n format: \"date\"\n },\n policecaseNumber: {\n title: \"Case Number (If Reported)\",\n type: \"string\"\n }\n }\n },\n otherParty: {\n type: \"object\",\n title: \"Loss Caused by Other Parties\",\n properties: {\n otherPartyName: {\n title: \"Name\",\n type: \"string\"\n },\n otherPartyContactNumber: {\n title: \"Contact Phone Number\",\n type: \"string\"\n },\n otherPartyEmail: {\n title: \"Contact Email Address\",\n type: \"string\",\n format: \"email\"\n },\n otherPartyAddress: {\n title: \"Address\",\n type: \"string\"\n }\n }\n },\n theft: {\n type: \"object\",\n title: \"Theft\",\n properties: {\n theftalarmWorking: {\n title: \"Is there a working alarm at the insured premise where loss or damage took place?\",\n type: \"boolean\"\n },\n theftalarmReport: {\n title: \"Alarm activation report attached?\",\n type: \"boolean\"\n },\n theftforcedEntry: {\n title: \"Proof of forcible entry (e.g. repair invoice) attached?\",\n type: \"boolean\"\n },\n theftDescription: {\n title: \"Full description of how entry was gained at the property\",\n type: \"string\"\n }\n }\n },\n description: {\n type: \"object\",\n title: \"Description\",\n properties: {\n eventDescription: {\n title: \"Description\",\n type: \"string\"\n }\n }\n },\n itemsClaimed: {\n type: \"object\",\n title: \"Items Claimed\",\n properties: {\n itemsClaimedArr: {\n title: \"Items Claimed\",\n type: \"array\",\n items: [{\n key: \"item1\",\n type: \"object\",\n properties: {\n itemsClaimedDescription: {\n type: \"string\",\n title: \"Description of items that are being claimed for\"\n },\n itemsClaimedDateReplaced: {\n type: \"string\",\n title: \"Date replaced\",\n format: \"date\"\n },\n itemsClaimedCost: {\n type: \"number\",\n title: \"Cost of replacement\"\n }\n }\n }]\n },\n itemsClaimedDocs: {\n title: \"Supporting documents\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my / our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept terms and conditions\",\n description: \"Tick box to accept terms and conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n policeplaceReported: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n otherPartyAddress: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n eventDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n incidentCause: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n};","export var schema = {\n title: \"Public Liability\",\n description: \"Public Liability Claim Form\",\n type: \"object\",\n properties: {\n insured: {\n type: \"object\",\n title: \"Insured\",\n required: [\"insuredName\", \"insuredPolicyNumber\", \"brokeremail\"],\n properties: {\n insuredName: {\n type: \"string\",\n title: \"Name of Insured\"\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n insuredContactPerson: {\n type: \"string\",\n title: \"Contact Person\"\n },\n insuredContactNumber: {\n type: \"string\",\n title: \"Contact Phone Number\"\n },\n insuredContactEmail: {\n type: \"string\",\n title: \"Contact Email Address\"\n },\n insuredVatNumber: {\n type: \"string\",\n title: \"VAT Number\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"incidentdate\"],\n properties: {\n incidentdate: {\n title: \"Date of Incident\",\n type: \"string\",\n format: \"date-time\"\n },\n incidentplace: {\n type: \"string\",\n title: \"Place of Loss\"\n },\n incidentestimate: {\n type: \"string\",\n title: \"Estimate\"\n },\n incidentisCovered: {\n type: \"boolean\",\n title: \"Is this incident covered under any other policy of insurance?\"\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n properties: {\n policeplaceReported: {\n title: \"Place where Reported\",\n type: \"string\"\n },\n policedateReported: {\n title: \"Date of Reporting\",\n type: \"string\",\n format: \"date\"\n },\n policecaseNumber: {\n title: \"Case Number (If Reported)\",\n type: \"string\"\n }\n }\n },\n witnesses: {\n type: \"object\",\n title: \"Witnesses\",\n properties: {\n witnessList: {\n title: \"Witnesses\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n witness: {\n type: \"array\",\n title: \"Witness\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\"\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }]\n }\n }\n }\n }\n }\n },\n propertyDamage: {\n type: \"object\",\n title: \"Property Damage\",\n properties: {\n propertyDamageName: {\n title: \"Name of owner\",\n type: \"string\"\n },\n propertyDamageAddress: {\n title: \"Address of owner\",\n type: \"string\"\n },\n propertyDamageDescription: {\n title: \"Description of loss or damage\",\n type: \"string\"\n }\n }\n },\n personalInjuries: {\n type: \"object\",\n title: \"Personal Injuries\",\n properties: {\n personalInjuriesList: {\n title: \"Personal Injuries\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\"\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }, {\n key: \"age\",\n type: \"number\",\n title: \"Age\"\n }, {\n key: \"relationship\",\n title: \"Relationships\",\n description: \"If person named above is in your service, your tenant, or related to you, give full details\",\n type: \"string\"\n }]\n }\n }\n }\n }\n }\n },\n claims: {\n type: \"object\",\n title: \"Claims\",\n properties: {\n claimsDescription: {\n title: \"Description\",\n description: \"If a claim has been, or is being made against you, give details and attach any correspondence.\",\n type: \"string\"\n },\n claimsAttachment: {\n title: \"Attachments\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n eventDescription: {\n type: \"object\",\n title: \"Description\",\n properties: {\n relationshipsDescription: {\n title: \"Description\",\n type: \"string\"\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my / our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept terms and conditions\",\n description: \"Tick box to accept terms and conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n incidentplace: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n propertyDamageDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n relationshipsDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n claimsDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n eventDescription: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n witnessList: {\n \"ui:options\": {\n orderable: false\n }\n },\n personalInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n};","var damageOrAccidentObj = {\n type: \"object\",\n title: \"Damage / Accident Details\",\n required: [\"incidentAddress\", \"incidentDriverDrugTest\", \"incidentCover\", \"incidentVehicleStatus\", \"incidentAssistLine\"],\n properties: {\n incidentAddress: {\n title: \"Incident Address\",\n type: \"string\"\n },\n incidentDriverDrugTest: {\n title: \"Was the driver tested for alcohol or drug abuse? (where applicable)\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n },\n incidentCover: {\n title: \"Is the incident covered under any other policy of insurance?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n },\n incidentVehicleStatus: {\n title: \"Vehicle Driveable\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n },\n incidentAssistLine: {\n title: \"Was assist line called?\",\n type: \"string\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n incidentAssistLine: {\n oneOf: [{\n properties: {\n incidentAssistLine: {\n enum: [\"Yes\"]\n },\n incidentRef: {\n title: \"Assist line reference number\",\n type: \"string\"\n }\n }\n }, {\n properties: {\n incidentAssistLine: {\n enum: [\"No\"]\n },\n incidentTowingOperator: {\n title: \"Provide details of towing operator used.\",\n type: \"string\"\n }\n }\n }]\n },\n incidentDriverDrugTest: {\n oneOf: [{\n properties: {\n incidentDriverDrugTest: {\n enum: [\"Yes\"]\n },\n incidentReport: {\n title: \"If the driver was tested for alcohol/drug abuse attach the report\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n incidentDriverDrugTest: {\n enum: [\"No\"]\n }\n }\n }]\n },\n incidentCover: {\n oneOf: [{\n properties: {\n incidentCover: {\n enum: [\"Yes\"]\n },\n incidentPolicyDetails: {\n type: \"string\",\n title: \"Details of other policy\"\n }\n }\n }, {\n properties: {\n incidentCover: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n};\nexport var schema = {\n title: \"Motor Vehicle Loss or Damage\",\n description: \"Motor Vehicle Loss or Damage Claim Form\",\n type: \"object\",\n properties: {\n insured: {\n type: \"object\",\n title: \"Insured\",\n required: [\"insuredName\", \"insuredPolicyNumber\", \"contactPerson\", \"brokeremail\"],\n properties: {\n insuredName: {\n type: \"string\",\n title: \"Name of Insured\"\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n contactPerson: {\n type: \"string\",\n title: \"Contact Person\"\n },\n contactNumber: {\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n },\n contactEmail: {\n type: \"string\",\n title: \"Contact Email Address\",\n format: \"email\"\n },\n vatNumber: {\n type: \"string\",\n title: \"VAT Number\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n }\n }\n },\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"incidentType\", \"incidentdate\"],\n properties: {\n incidentType: {\n title: \"Incident Type\",\n type: \"string\",\n enum: [\"Vehicle Stolen\", \"Vehicle stolen and recovered with damages\", \"Accident (Own Damage)\", \"Accident with third party\"]\n },\n incidentdate: {\n title: \"Date of Incident\",\n type: \"string\",\n format: \"date-time\"\n }\n },\n dependencies: {\n incidentType: {\n oneOf: [{\n properties: {\n incidentType: {\n enum: [\"Vehicle Stolen\"]\n },\n incidentplace: {\n type: \"string\",\n title: \"Place of Loss\"\n }\n }\n }, {\n properties: {\n incidentType: {\n enum: [\"Vehicle stolen and recovered with damages\"]\n },\n damageOrAccident: damageOrAccidentObj\n }\n }, {\n properties: {\n incidentType: {\n enum: [\"Accident (Own Damage)\"]\n },\n damageOrAccident: damageOrAccidentObj\n }\n }, {\n properties: {\n incidentType: {\n enum: [\"Accident with third party\"]\n },\n damageOrAccident: damageOrAccidentObj\n }\n }]\n }\n }\n },\n police: {\n type: \"object\",\n title: \"Police\",\n required: [\"policeReported\"],\n properties: {\n policeReported: {\n type: \"string\",\n title: \"Was the incident reported to the police?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n policeReported: {\n oneOf: [{\n properties: {\n policeReported: {\n enum: [\"Yes\"]\n },\n reportDetails: {\n type: \"object\",\n title: \"Police Report Details\",\n required: [\"policePlaceReported\", \"policeDateReported\", \"policeCaseNumber\"],\n properties: {\n policePlaceReported: {\n title: \"Place where Reported\",\n type: \"string\"\n },\n policeDateReported: {\n title: \"Date of Reporting\",\n type: \"string\",\n format: \"date\"\n },\n policeCaseNumber: {\n title: \"Case Number\",\n type: \"string\"\n }\n }\n }\n }\n }]\n }\n }\n },\n vehicleDetails: {\n type: \"object\",\n title: \"Vehicle Details\",\n required: [\"vehicleMake\", \"vehicleModel\", \"vehicleRegistration\"],\n properties: {\n vehicleMake: {\n type: \"string\",\n title: \"Make\"\n },\n vehicleModel: {\n type: \"string\",\n title: \"Model\"\n },\n vehicleRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n vehicleVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n }\n }\n },\n driverOwnerDetails: {\n type: \"object\",\n title: \"Full Details of Driver and Owner\",\n required: [\"driverIsOwner\"],\n properties: {\n driverIsOwner: {\n type: \"string\",\n title: \"Is the driver the owner of the vehicle?\",\n enum: [\"Yes\", \"No\"]\n },\n driverDetails: {\n type: \"object\",\n title: \"Details of Driver\",\n required: [\"driverFullName\", \"driverIdPassport\", \"driverOccupation\", \"driverPermissionByInsured\", \"driverContactNumber\"],\n properties: {\n driverFullName: {\n type: \"string\",\n title: \"Full Name\"\n },\n driverIdPassport: {\n type: \"string\",\n title: \"ID / passport number\"\n },\n driverOccupation: {\n type: \"string\",\n title: \"Occupation\"\n },\n driverPermissionByInsured: {\n type: \"string\",\n title: \"Was the driver using the vehicle with the insured's permission\"\n },\n driverContactNumber: {\n type: \"string\",\n title: \"Contact Number\"\n },\n driverEmail: {\n type: \"string\",\n format: \"email\",\n title: \"Email\"\n }\n }\n }\n }\n },\n witnesses: {\n type: \"object\",\n title: \"Witnesses\",\n properties: {\n witnessList: {\n title: \"Witnesses\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n witness: {\n type: \"array\",\n title: \"Witness\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\"\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }]\n }\n }\n }\n }\n }\n },\n description: {\n type: \"object\",\n title: \"Description\",\n properties: {\n descriptionSketch: {\n title: \"Sketch of Events Resulting on Loss or Damage\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n },\n descriptionText: {\n type: \"string\",\n title: \"Description of Events Resulting in Loss or Damage\"\n }\n }\n },\n injured: {\n type: \"object\",\n title: \"Injured Persons\",\n properties: {\n personalInjuries: {\n type: \"string\",\n title: \"Where any parties injured in the incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n personalInjuries: {\n oneOf: [{\n properties: {\n personalInjuries: {\n enum: [\"Yes\"]\n },\n personalInjuriesList: {\n title: \"Personal Injuries\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"string\",\n type: \"string\",\n title: \"Contact Number\"\n }, {\n key: \"address\",\n type: \"string\",\n title: \"Address\"\n }, {\n key: \"age\",\n type: \"number\",\n title: \"Age\"\n }, {\n key: \"relationship\",\n title: \"Relationships\",\n description: \"If person named above is in your service, your tenant, or related to you, give full details\",\n type: \"string\"\n }]\n }\n }\n }\n }\n }\n }, {\n properties: {\n personalInjuries: {\n enum: [\"No\"]\n }\n }\n }]\n }\n }\n },\n thirdParty: {\n type: \"object\",\n title: \"Third Party\",\n required: [\"thirdPartyName\", \"thirdPartyContactPerson\", \"thirdPartyContactNumber\", \"thirdPartyInsurerDetails\", \"thirdPartyPolicyNumber\"],\n properties: {\n thirdPartyName: {\n type: \"string\",\n title: \"Name\"\n },\n thirdPartyContactPerson: {\n type: \"string\",\n title: \"Contact Person\"\n },\n thirdPartyContactNumber: {\n type: \"string\",\n title: \"Contact Number\"\n },\n thirdPartyEmail: {\n type: \"string\",\n format: \"email\",\n title: \"Email\"\n },\n thirdPartyInsurerDetails: {\n type: \"string\",\n title: \"Insurer Details\"\n },\n thirdPartyPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n }\n }\n },\n thirdPartyvehicleDetails: {\n type: \"object\",\n title: \"Third Party Vehicle Details\",\n required: [\"thirdPartyMake\", \"thirdPartyYear\", \"thirdPartyModel\", \"thirdPartyRegistration\", \"thirdPartyDamageDetails\"],\n properties: {\n thirdPartyMake: {\n type: \"string\",\n title: \"Make\"\n },\n thirdPartyYear: {\n type: \"number\",\n title: \"Year\"\n },\n thirdPartyModel: {\n type: \"string\",\n title: \"Model\"\n },\n thirdPartyRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n thirdPartyVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n },\n thirdPartyDamageDetails: {\n type: \"string\",\n title: \"Details of damage\"\n }\n }\n },\n thirdPartyinjured: {\n type: \"object\",\n title: \"Third Party Injured Persons\",\n properties: {\n thirdPartyInjuries: {\n type: \"string\",\n title: \"Where any parties injured in the incident?\",\n enum: [\"Yes\", \"No\"]\n }\n },\n dependencies: {\n thirdPartyInjuries: {\n type: \"object\",\n title: \"Personal Injuries\",\n properties: {\n thirdPartyInjuriesList: {\n title: \"Personal Injuries\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n person: {\n type: \"array\",\n title: \"Injured Person\",\n items: [{\n key: \"name\",\n type: \"string\",\n title: \"Name\"\n }, {\n key: \"contactNumber\",\n type: \"string\",\n title: \"Contact Number\",\n minLength: 10\n }, {\n key: \"contactPerson\",\n type: \"string\",\n title: \"Contact Person\"\n }, {\n key: \"contactEmail\",\n type: \"string\",\n title: \"Contact Email\"\n }, {\n key: \"injuriesDescription\",\n type: \"string\",\n title: \"Description of Injuries\"\n }]\n }\n }\n }\n }\n }\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n title: \"Declaration\",\n required: [\"insuredaccepttc\"],\n description: \"I/we declare that to the best of my / our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept terms and conditions\",\n description: \"Tick box to accept terms and conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {\n damageOrAccident: {\n incidentAddress: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n incidentPolicyDetails: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n },\n descriptionText: {\n \"ui:widget\": \"textarea\",\n \"ui:options\": {\n rows: 5\n }\n }\n },\n witnessList: {\n \"ui:options\": {\n orderable: false\n }\n },\n personalInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n },\n thirdPartyInjuriesList: {\n \"ui:options\": {\n orderable: false\n }\n }\n};","export var schema = {\n title: \"Motor Vehicle Windscreen\",\n description: \"Motor Vehicle Windscreen Claim Form\",\n type: \"object\",\n properties: {\n incident: {\n type: \"object\",\n title: \"Incident\",\n required: [\"insuredName\", \"insuredPolicyNumber\", \"brokeremail\"],\n properties: {\n insuredName: {\n type: \"string\",\n title: \"Name of Insured\"\n },\n insuredPolicyNumber: {\n type: \"string\",\n title: \"Policy Number\"\n },\n incidentContactPerson: {\n type: \"string\",\n title: \"Contact Person\"\n },\n incidentContactNumber: {\n type: \"string\",\n title: \"Contact Phone Number\"\n },\n incidentContactEmail: {\n type: \"string\",\n title: \"Contact Email Address\",\n format: \"email\"\n },\n incidentVatNumber: {\n type: \"string\",\n title: \"VAT Number\"\n },\n brokeremail: {\n type: \"string\",\n title: \"Broker Email\",\n format: \"email\"\n }\n }\n },\n insured: {\n type: \"object\",\n title: \"Insured\",\n properties: {\n incidentDateLoss: {\n type: \"string\",\n title: \"Date of Loss\",\n format: \"date-time\"\n },\n incidentDateDiscovered: {\n type: \"string\",\n title: \"Date Discovered\",\n format: \"date\"\n },\n incidentDateReported: {\n type: \"string\",\n title: \"Date Reported\",\n format: \"date\"\n },\n incidentChipRepair: {\n type: \"boolean\",\n title: \"Chip Repair\"\n },\n incidentCrackedShattered: {\n type: \"boolean\",\n title: \"Cracked or Shattered\"\n },\n incidentBusinessPurpose: {\n type: \"boolean\",\n title: \"Was vehicle used for business purposes at time of loss?\"\n },\n incidentCause: {\n type: \"string\",\n title: \"Cause of breakage\"\n },\n incidentDriverName: {\n type: \"string\",\n title: \"Driver's name at time of incident\"\n }\n }\n },\n vehicleDetails: {\n type: \"object\",\n title: \"Vehicle Details\",\n properties: {\n vehicleMake: {\n type: \"string\",\n title: \"Make\"\n },\n vehicleModel: {\n type: \"string\",\n title: \"Model\"\n },\n vehicleYear: {\n type: \"string\",\n title: \"Year\"\n },\n vehicleRegistration: {\n type: \"string\",\n title: \"Registration Number\"\n },\n vehicleVinNumber: {\n type: \"string\",\n title: \"VIN Number\"\n },\n vehicleChassisNumber: {\n type: \"string\",\n title: \"Chassis Number\"\n }\n }\n },\n attachments: {\n type: \"object\",\n title: \"Attachments\",\n properties: {\n attachmentsList: {\n title: \"Attachments\",\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n attachment: {\n type: \"array\",\n title: \"Attachment\",\n items: [{\n key: \"attachName\",\n title: \"Title\",\n type: \"string\",\n maxLength: 200\n }, {\n key: \"attachmentContent\",\n type: \"array\",\n title: \"Attachment\",\n items: {\n type: \"string\",\n format: \"data-url\"\n }\n }]\n }\n }\n }\n }\n }\n },\n declaration: {\n type: \"object\",\n required: [\"insuredaccepttc\"],\n title: \"Declaration\",\n description: \"I/we declare that to the best of my / our knowledge the above statements are true. I acknowledge that the information set out above is provided freely so that Western may process my claim and give effect to the terms and conditions contained in the policy wording. I herewith give my consent that Western may use this information, my personal information on record and additional information obtained from other sources in order to determine whether to accept or reject my claim and take all necessary steps ancillary thereto to give effect hereto. I understand that I may be liable for output VAT in terms of section 8(8) of the VAT Act 89 of 1991.\",\n properties: {\n insuredaccepttc: {\n type: \"boolean\",\n title: \"Accept terms and conditions\",\n description: \"Tick box to accept terms and conditions\"\n },\n insuredcapcity: {\n type: \"string\",\n title: \"Capacity\"\n },\n insureddate: {\n type: \"string\",\n title: \"Date\",\n format: \"date\"\n }\n }\n }\n }\n};\nexport var uiSchema = {};","import React, { Component } from \"react\";\r\nimport Form from \"react-jsonschema-form-bs4\";\r\n//Current version\r\nimport {\r\n schema as GeyserSchema,\r\n uiSchema as GeyseruiSchema\r\n} from \"wn-claims-shared/dist/schema/geyser-schema\";\r\nimport {\r\n schema as PropertyLossSchema,\r\n uiSchema as PropertyLossuiSchema\r\n} from \"wn-claims-shared/dist/schema/property-loss-schema\";\r\nimport {\r\n schema as PublicLiabilitySchema,\r\n uiSchema as PublicLiabilityuiSchema\r\n} from \"wn-claims-shared/dist/schema/public-liability-schema\";\r\nimport {\r\n schema as VehicleLossSchema,\r\n uiSchema as VehicleLossuiSchema\r\n} from \"wn-claims-shared/dist/schema/vehicle-loss-schema\";\r\nimport {\r\n schema as WindscreenSchema,\r\n uiSchema as WindscreenuiSchema\r\n} from \"wn-claims-shared/dist/schema/windscreen-schema\";\r\nimport {\r\n schema as VehicleCollisionSchema,\r\n uiSchema as VehicleCollisionuiSchema\r\n} from \"wn-claims-shared/dist/schema/vehicle-collision-schema-readonly\";\r\n//Read Only\r\nimport {\r\n schema as GeyserSchemaRO,\r\n uiSchema as GeyseruiSchemaRO\r\n} from \"wn-claims-shared/dist/schema/geyser-schema-readonly\";\r\nimport {\r\n schema as PropertyLossSchemaRO,\r\n uiSchema as PropertyLossuiSchemaRO\r\n} from \"wn-claims-shared/dist/schema/property-loss-schema-readonly\";\r\nimport {\r\n schema as PublicLiabilitySchemaRO,\r\n uiSchema as PublicLiabilityuiSchemaRO\r\n} from \"wn-claims-shared/dist/schema/public-liability-schema-readonly\";\r\nimport {\r\n schema as VehicleLossSchemaRO,\r\n uiSchema as VehicleLossuiSchemaRO\r\n} from \"wn-claims-shared/dist/schema/vehicle-loss-schema-readonly\";\r\nimport {\r\n schema as WindscreenSchemaRO,\r\n uiSchema as WindscreenuiSchemaRO\r\n} from \"wn-claims-shared/dist/schema/windscreen-schema-readonly\";\r\nimport {\r\n schema as VehicleCollisionSchemaRO,\r\n uiSchema as VehicleCollisionuiSchemaRO\r\n} from \"wn-claims-shared/dist/schema/vehicle-collision-schema-readonly\";\r\n//Previous version, before update in 2022\r\nimport {\r\n schema as GeyserSchemaOld,\r\n uiSchema as GeyseruiSchemaOld\r\n} from \"wn-claims-shared/dist/schema/geyser-schema-2021\";\r\nimport {\r\n schema as PropertyLossSchemaOld,\r\n uiSchema as PropertyLossuiSchemaOld\r\n} from \"wn-claims-shared/dist/schema/property-loss-schema-2021\";\r\nimport {\r\n schema as PublicLiabilitySchemaOld,\r\n uiSchema as PublicLiabilityuiSchemaOld\r\n} from \"wn-claims-shared/dist/schema/public-liability-schema-2021\";\r\nimport {\r\n schema as VehicleLossSchemaOld,\r\n uiSchema as VehicleLossuiSchemaOld\r\n} from \"wn-claims-shared/dist/schema/vehicle-loss-schema-2021\";\r\nimport {\r\n schema as WindscreenSchemaOld,\r\n uiSchema as WindscreenuiSchemaOld\r\n} from \"wn-claims-shared/dist/schema/windscreen-schema-2021\";\r\n\r\nimport axios from \"axios\";\r\nimport { objectMap, logger, logFormEvent } from \"../../utils/common\";\r\nimport $ from \"jquery\";\r\nimport { saveAs } from \"file-saver\";\r\nimport config from \"../../config\";\r\n\r\nconst FileSaver = require(\"file-saver\");\r\nconst uuidv4 = require(\"uuid/v4\");\r\n\r\nclass Wizard extends Component {\r\n constructor(props) {\r\n super(props);\r\n logger([\"readonly wiz\"]);\r\n this.formErrCode = \"\";\r\n this.formErrBody = \"\";\r\n\r\n this.formData = { ...this.props.formData, ...this.props.selectFormData };\r\n logger([\"this.formData\", this.formData]);\r\n\r\n this.state = {\r\n step: 0,\r\n formData: this.formData,\r\n formStage: 0,\r\n saveTabs: []\r\n };\r\n\r\n let schema, uiSchema;\r\n if (this.formData.claimtypeCat){\r\n logger([\"2022 form layout (New)\"]);\r\n //load new forms\r\n switch (this.formData.claimtype) {\r\n case \"Geyser\":\r\n schema = GeyserSchemaRO;\r\n uiSchema = GeyseruiSchemaRO;\r\n break;\r\n case \"Vehicle Stolen or Hijacked\":\r\n schema = VehicleLossSchemaRO;\r\n uiSchema = VehicleLossuiSchemaRO;\r\n break;\r\n case \"Accident Collision\":\r\n schema = VehicleCollisionSchemaRO;\r\n uiSchema = VehicleCollisionuiSchemaRO;\r\n break;\r\n case \"Motor Vehicle Windscreen\":\r\n schema = WindscreenSchemaRO;\r\n uiSchema = WindscreenuiSchemaRO;\r\n break;\r\n case \"Property Loss or Damage\":\r\n schema = PropertyLossSchemaRO;\r\n uiSchema = PropertyLossuiSchemaRO;\r\n break;\r\n case \"Public Liability\":\r\n schema = PublicLiabilitySchemaRO;\r\n uiSchema = PublicLiabilityuiSchemaRO;\r\n break;\r\n default:\r\n schema = {};\r\n uiSchema = {};\r\n break;\r\n }\r\n } else {\r\n logger([\"First form layout (Old)\"]);\r\n //load old forms \r\n switch (this.formData.claimtype) {\r\n case \"Geyser\":\r\n schema = GeyserSchemaOld;\r\n uiSchema = GeyseruiSchemaOld;\r\n break;\r\n case \"Motor Vehicle Loss or Damage\":\r\n schema = VehicleLossSchemaOld;\r\n uiSchema = VehicleLossuiSchemaOld;\r\n break;\r\n case \"Motor Vehicle Windscreen\":\r\n schema = WindscreenSchemaOld;\r\n uiSchema = WindscreenuiSchemaOld;\r\n break;\r\n case \"Property Loss or Damage\":\r\n schema = PropertyLossSchemaOld;\r\n uiSchema = PropertyLossuiSchemaOld;\r\n break;\r\n case \"Public Liability\":\r\n schema = PublicLiabilitySchemaOld;\r\n uiSchema = PublicLiabilityuiSchemaOld;\r\n break;\r\n default:\r\n schema = {};\r\n uiSchema = {};\r\n break;\r\n }\r\n }\r\n\r\n this.schemas = this.props.schemas ? this.props.schemas : [];\r\n this.uiSchemas = this.props.uiSchemas ? this.props.uiSchemas : [];\r\n logger([\"this.schemas: \", this.schemas]);\r\n logger([\"this.uiSchemas: \", this.uiSchemas]);\r\n const sTest = this.props.schemas ? \"schemas defined\" : \"no schemas defined\";\r\n logger([\"sTest:\", sTest]); // FIXME: remove\r\n this.readOnly = this.props.readOnly;\r\n this.btnSubmit = ;\r\n if (this.readOnly) {\r\n // TODO: duplicate call of objectMap, when not read only it is being called in the wrapping comp, pass info to here from parent and complete mapping here for all components\r\n objectMap(schema.properties, value => {\r\n this.schemas.push(value);\r\n this.uiSchemas.push(uiSchema);\r\n });\r\n }\r\n this.attachmentKeys = [\r\n // FIXME: find a better solution to hard coding attachment keys here (use a config file or flag with a custom type?)\r\n // Geyser\r\n \"attachmentsList\",\r\n // Group Personal\r\n \"disablementDocCert\",\r\n \"disablementPercentageConfirmation\",\r\n \"disablementAppointmentLetter\",\r\n \"disablementMedReport\",\r\n \"disablementMedAccountsStatements\",\r\n \"disablementPolicePlan\",\r\n \"iodPostMortem\",\r\n \"iodInquestReport\",\r\n \"iodExecutorshipLetter\",\r\n // Property Loss\r\n \"itemsClaimedDocs\",\r\n // Public Liability\r\n \"claimsAttachment\",\r\n // Vehicle Loss\r\n // TODO: add vehicle loss attachment keys\r\n \"incidentReport\",\r\n \"descriptionSketch\"\r\n // Windscreen\r\n ];\r\n logger([\"Logger!\"]);\r\n logger([\"this.schemas: \", this.schemas]);\r\n logger([\"this.uiSchemas: \", this.uiSchemas]);\r\n this.attachmentLinks = this.GenerateAttachmentLinks(this.formData);\r\n if (this.formData[\"claimtype\"]) {\r\n this.updateTabsWithIncidentType(this.formData); // update tabs after form data loaded\r\n }\r\n }\r\n\r\n updateTabsWithIncidentType(data) {\r\n logger([\"changes data: \", data]);\r\n const { claimtype } = data;\r\n logger([\"incident type: \", claimtype]);\r\n console.log(\"incident type: \", claimtype);\r\n const saveTabs = this.state.saveTabs;\r\n if (\r\n claimtype === \"Accident Collision\" &&\r\n this.formData.thirdparty.thirdpartyInvolved == \"No\"\r\n ) {\r\n logger([\"schemas pre slice: \", this.schemas]);\r\n if (this.schemas[6].title === \"Third Party\") {\r\n saveTabs.push(this.schemas[6]);\r\n saveTabs.push(this.schemas[7]);\r\n saveTabs.push(this.schemas[8]);\r\n this.schemas.splice(6, 3); // splice Third party tabs\r\n this.setState({\r\n ...this.state,\r\n saveTabs: saveTabs,\r\n formData: {\r\n ...this.state.formData\r\n }\r\n });\r\n }\r\n logger([\"schemas post slice: \", this.schemas]);\r\n logger([\"saved tabs\", saveTabs]);\r\n } else if (\r\n claimtype === \"Accident Collision\" &&\r\n this.formData.thirdparty.thirdpartyInvolved == \"Yes\" &&\r\n this.formData.thirdparty.thirdpartyOther.thirdpartyHaveDetails == \"No\" \r\n ) {\r\n if (this.schemas[6].title === \"Third Party\") {\r\n saveTabs.push(this.schemas[6]);\r\n saveTabs.push(this.schemas[7]);\r\n this.schemas.splice(6, 2); // splice Third party tabs\r\n this.setState({\r\n ...this.state,\r\n saveTabs: saveTabs,\r\n formData: {\r\n ...this.state.formData\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n ObjectFieldTemplate({ TitleField, properties, title, description }) {\r\n return (\r\n
\r\n \r\n
{description}
\r\n
\r\n {properties.map(prop => (\r\n
\r\n {prop.content}\r\n
\r\n ))}\r\n
\r\n
\r\n );\r\n }\r\n // TODO: move to utils\r\n validateTelNumbers = (formData, errors) => {\r\n const phoneno = /^\\d{10}$/;\r\n // FIXME: is it possible to use a universal telephone type to flag telephone number validations instead of hardcoding? if not move to a config file\r\n const telephoneKeys = [\"brokertel\", \"brokerfax\", \"insuredtel\", \"insuredfax\", \"insuredcell\"];\r\n logger([\"formData\", formData]);\r\n logger([\"errors\", errors]);\r\n telephoneKeys.forEach(element => {\r\n console.log(element);\r\n if (formData.hasOwnProperty(element) && formData[element]) {\r\n if (!formData[element].match(phoneno)) {\r\n errors[element].addError(\"Not a valid telephone number.\");\r\n }\r\n }\r\n });\r\n return errors;\r\n };\r\n\r\n onSubmit = ({ formData }) => {\r\n if (this.state.step < this.schemas.length - 1) {\r\n const newstep = parseInt(this.state.step, 10) + 1;\r\n logger([\"newstep:\", newstep]);\r\n\r\n this.setState({\r\n ...this.state,\r\n step: newstep,\r\n formData: {\r\n ...this.state.formData,\r\n ...formData\r\n }\r\n });\r\n } else {\r\n if (!this.readOnly) {\r\n // Don't post if in readOnly mode\r\n this.setState({ formStage: 1 });\r\n this.postForm(formData);\r\n }\r\n }\r\n };\r\n // TODO: move to utils\r\n getBase64FileName = base64str => {\r\n let str = base64str;\r\n str = str.substr(str.indexOf(\"name=\") + 5, str.lastIndexOf(\"base64,\") - 27);\r\n return str;\r\n };\r\n // TODO: move to utils\r\n getAttachments = formData => {\r\n let attachments = [];\r\n this.attachmentKeys.forEach(function(key) {\r\n if (formData[key]) {\r\n formData[key].forEach(function(entry) {\r\n logger([\"entry: \", entry]);\r\n let fName = entry;\r\n fName = fName.substr(fName.indexOf(\"name=\") + 5, fName.lastIndexOf(\"base64,\") - 27);\r\n fName = fName.replace(/[^a-zA-Z0-9]/g, \"\");\r\n logger([\"file name:\", fName]);\r\n logger([\"attachment: \", key + \":\", fName]);\r\n attachments = [\r\n ...attachments,\r\n {\r\n name: fName,\r\n content: entry\r\n }\r\n ];\r\n });\r\n }\r\n });\r\n\r\n return attachments;\r\n };\r\n\r\n GenerateAttachmentLinks = formData => {\r\n let attachmentLinks = [];\r\n this.attachmentKeys.forEach(key => {\r\n if (formData[key]) {\r\n formData[key].forEach(entry => {\r\n logger([\"add attachment links entry\", entry]);\r\n\r\n const fileContent = entry.attachment[1][0];\r\n\r\n if(fileContent[0]!=\"\")\r\n {\r\n let fileName = fileContent\r\n .split(\"name=\")\r\n .pop()\r\n .split(\";base64\")[0];\r\n \r\n fileName = fileName.split(\"%20\").join(\" \");\r\n const fileExtension = fileName.split(\".\").pop();\r\n const fileId = uuidv4();\r\n attachmentLinks.push({\r\n fileId: fileId,\r\n fileName: fileName,\r\n fileContent: fileContent,\r\n fileExtension: fileExtension\r\n });}\r\n console.log(\"attachmentLinks\", attachmentLinks);\r\n });\r\n }\r\n });\r\n logger([\"generate attachmentLinks data\", attachmentLinks]);\r\n return attachmentLinks;\r\n };\r\n\r\n postForm = formData => {\r\n const hostname = window.location.hostname;\r\n let url = \"\";\r\n for (let host in config.hosts) {\r\n if (hostname == config.hosts[host].hostname) {\r\n console.log(`Running on ${host} environment.`);\r\n url = config.hosts[host].postFormEndpoint;\r\n console.log(\"setting Post Form API url to \", url);\r\n }\r\n }\r\n if (!url) {\r\n // set default url if not set\r\n console.warn(\"No valid Post Form API endpoint found in config. Setting to default.\");\r\n url = config.hosts.default.postFormEndpoint;\r\n }\r\n console.log(\"URL\", url);\r\n const concatData = { ...this.state.selectedForm, ...formData };\r\n const strData = JSON.stringify(concatData, null, 0);\r\n logger([\"formData: \", formData]);\r\n logger([\"concatData: \", concatData]);\r\n const ct = concatData.claimtype;\r\n const reg = concatData.region;\r\n\r\n let attachments = this.getAttachments(concatData);\r\n\r\n const data = {\r\n properties: {\r\n Form: strData,\r\n Claim: ct,\r\n Insured: concatData.insuredName,\r\n PolicyNo: concatData.insuredPolicyNumber,\r\n Region: reg,\r\n BrokerEmail: concatData.brokeremail,\r\n Attachments: attachments\r\n }\r\n };\r\n logger([\"Data: \", concatData]);\r\n logger([\"Post: \", data]);\r\n axios\r\n .post(url, data)\r\n .then(response => {\r\n logger([\"Done: \", response]);\r\n this.setState({ selectedForm: {}, formStage: 2 }); // FIXME: not resetting state, keep ref of initial state instead\r\n })\r\n .catch(error => {\r\n logger([\"Error: \", error]);\r\n this.formErrCode = error[\"response\"][\"status\"];\r\n this.formErrBody = error[\"response\"][\"data\"][\"error\"];\r\n this.setState({\r\n formErrCode: error[\"response\"][\"status\"],\r\n formErrBody: error[\"response\"][\"data\"][\"error\"]\r\n });\r\n });\r\n };\r\n\r\n onBack = ({ formData }) => {\r\n if (this.state.step > 0) {\r\n const newstep = this.state.step - 1;\r\n logger([\"newstep:\", newstep]);\r\n this.setState({\r\n ...this.state,\r\n step: newstep,\r\n formData: {\r\n ...this.state.formData,\r\n ...formData\r\n }\r\n });\r\n }\r\n };\r\n\r\n onStep = step => {\r\n if (step < this.state.step) {\r\n const newstep = step;\r\n logger([\"tabstep:\", newstep]);\r\n this.setState({\r\n step: newstep\r\n });\r\n logger([\"new step-tab: \", this.state.step]);\r\n }\r\n };\r\n\r\n handleTabClick = k => {\r\n // Get clicked tab step number\r\n const step = k;\r\n // cancel if the clicked step is after current step,\r\n // ignore this rule in read-only mode\r\n if (!this.readOnly && k > this.state.step) return;\r\n logger([\"goto step: \", k]);\r\n // change state step (triggers loading clicked tab)\r\n this.setState({\r\n ...this.state,\r\n step: step,\r\n formData: {\r\n ...this.state.formData\r\n }\r\n });\r\n };\r\n\r\n componentDidUpdate = () => {\r\n if (this.readOnly) {\r\n this.attachmentKeys.forEach(key => {\r\n if (this.state.formData[key]) {\r\n // hide attachment widget\r\n $(`#root_${key} .array-item .array-item-list .array-item:nth-child(2)`).hide();\r\n // hide buttons\r\n $(`#root_${key} .array-item-toolbox .btn-group`).hide();\r\n $(`#root_${key} .array-item-add`).hide();\r\n // append download button\r\n this.attachmentLinks.forEach((item, index) => {\r\n $(`#root_${key} .array-item:nth-child(${index + 1}) .array-item-toolbox`).append(\r\n `Download`\r\n );\r\n $(`#${item.fileId}`).click(() => FileSaver.saveAs(item.fileContent, item.fileName));\r\n });\r\n }\r\n });\r\n }\r\n };\r\n\r\n navHome() {\r\n return (window.location.href = \"/\");\r\n }\r\n\r\n render() {\r\n let tabs = Object.keys(this.schemas).map(tab => (\r\n this.handleTabClick(tab)}\r\n disabled={!this.readOnly ? (tab < this.state.step ? false : true) : false}\r\n style={{ cursor: \"pointer\" }}\r\n >\r\n this.state.step ? \" disabled\" : \"\") +\r\n (tab < this.state.step ? \" completed\" : \"\")\r\n }\r\n >\r\n {this.schemas[tab].title}\r\n \r\n \r\n ));\r\n\r\n let back, next;\r\n if (!this.readOnly) {\r\n // Normal view buttons\r\n if (this.state.step > 0) {\r\n back = (\r\n \r\n );\r\n next = (\r\n \r\n {\" \"}\r\n {this.state.step < this.schemas.length - 1 ? \"Next\" : \"Submit\"}\r\n \r\n );\r\n } else {\r\n back = (\r\n // FIXME: use router instead of window\r\n \r\n Back\r\n \r\n );\r\n next = (\r\n \r\n {\" \"}\r\n {this.state.step < this.schemas.length - 1 ? \"Next\" : \"Submit\"}\r\n \r\n );\r\n }\r\n } else {\r\n // Set read-only buttons\r\n back = (\r\n \r\n );\r\n next = \"\";\r\n }\r\n let readOnlyHeader;\r\n if (this.readOnly) {\r\n readOnlyHeader = (\r\n
\r\n

{this.formData.claimtype}

\r\n

\r\n {\"Policy Number: \" + this.formData.insuredPolicyNumber}\r\n
\r\n {\"Insured Name: \" + this.formData.insuredName}\r\n
\r\n {\"Region: \" + this.formData.region}\r\n

\r\n
\r\n );\r\n }\r\n let form;\r\n if (this.formErrCode !== \"\") {\r\n // Form threw error\r\n form = (\r\n
\r\n

Error

\r\n

{this.formErrCode}

\r\n
{this.formErrBody}
\r\n
\r\n );\r\n } else {\r\n // No error\r\n if (this.state.formStage == 0) {\r\n form = (\r\n
\r\n \r\n
\r\n {back}\r\n {/* //FIXME: remove inline styling */}\r\n {next}\r\n
\r\n \r\n
\r\n );\r\n } else if (this.state.formStage == 1) {\r\n // Posting form\r\n form = (\r\n
\r\n

Please Wait

\r\n
Submitting claim..
\r\n
\r\n );\r\n } else if (this.state.formStage == 2) {\r\n // Successfully posted form\r\n // TODO: use ThankYou shared component instead\r\n form = (\r\n
\r\n

Thank You

\r\n Your claim has been submitted.\r\n
\r\n \r\n
\r\n );\r\n }\r\n }\r\n\r\n return (\r\n
\r\n {readOnlyHeader}\r\n
\r\n
\r\n
\r\n {tabs}\r\n
\r\n {form}\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default Wizard;\r\n","import React, { Component } from \"react\";\r\nimport axios from \"axios\";\r\nimport { logger } from \"../../utils/common\";\r\nimport Wizard from \"./ReadOnlyWizard\";\r\nimport config from \"../../config.json\";\r\n\r\nexport class FormSelection extends Component {\r\n constructor() {\r\n super();\r\n const claimsList = [];\r\n this.wizardComp =
;\r\n this.state = { loadedFormData: {}, errorMsg: null };\r\n this.id = \"\";\r\n if (this.getUrlParameter(\"FID\")) {\r\n this.FID = this.getUrlParameter(\"FID\");\r\n console.log(\"ID:\", this.FID);\r\n const { hostname } = window.location;\r\n let url = \"\";\r\n for (let host in config.hosts) {\r\n if (hostname === config.hosts[host].hostname) {\r\n logger([`Running on ${host} environment.`]);\r\n url = config.hosts[host].getFormEndpoint;\r\n logger([\"setting Get Form API url to \", url]);\r\n }\r\n }\r\n if (!url) {\r\n // set default url if not set\r\n console.warn(\"No valid Get Form API endpoint found in config. Setting to default.\");\r\n url = config.hosts.default.getFormEndpoint;\r\n }\r\n console.log(\"URL\", url);\r\n\r\n axios\r\n .post(url, {\r\n FormGUID: this.FID\r\n })\r\n .then(response => {\r\n logger([\"response: \", response]);\r\n if (response.data.FormData.length > 1) {\r\n this.setState({ ...this.state, errorMsg: \"Duplicate Form GUID.\" });\r\n return;\r\n }\r\n let formData;\r\n let fromDate = {createdDate: response.data.FormData[0].Created};\r\n\r\n if (response.data.FormData[0].Form_x0020_Data) {\r\n // QA mapping\r\n formData = JSON.parse(response.data.FormData[0].Form_x0020_Data);\r\n formData = {...formData, ...fromDate};\r\n } else if (response.data.FormData[0].wa5v) {\r\n // PROD mapping\r\n formData = JSON.parse(response.data.FormData[0].wa5v);\r\n formData = {...formData, ...fromDate};\r\n }\r\n\r\n console.log(\"formData\", formData);\r\n this.setState({ ...this.state, formData: formData });\r\n })\r\n .catch(error => {\r\n console.log(\"err\", error);\r\n this.setState({ ...this.state, errorMsg: \"Form not found.\" });\r\n });\r\n }\r\n\r\n this.state = {};\r\n }\r\n\r\n getUrlParameter(_name) {\r\n const name = _name.replace(/[\\[]/, \"\\\\[\").replace(/[\\]]/, \"\\\\]\");\r\n const regex = new RegExp(\"[\\\\?&]\" + name + \"=([^&#]*)\");\r\n const results = regex.exec(window.location.search);\r\n return results === null ? \"\" : decodeURIComponent(results[1].replace(/\\+/g, \" \"));\r\n }\r\n\r\n render() {\r\n const { errorMsg, formData } = this.state;\r\n const errorComponent = (\r\n \r\n

Error

\r\n

{errorMsg}

\r\n
\r\n );\r\n return (\r\n
\r\n {!errorMsg && !formData ? \"Loading...\" : null}\r\n {errorMsg ? errorComponent : null}\r\n {formData ? : null}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default FormSelection;\r\n","import React, { Component } from \"react\";\r\nimport { BrowserRouter as Router, Route, Link, Redirect } from \"react-router-dom\";\r\nimport FormSelection from \"../components/FormSelection/FormSelection\";\r\nimport ReadOnly from \"../components/ReadOnly/ReadOnly\";\r\n\r\nconst uuidv4 = require(\"uuid/v4\");\r\n\r\nexport class AppRouter extends Component {\r\n constructor() {\r\n super();\r\n\r\n this.state = {\r\n selectedForm: {}\r\n };\r\n }\r\n\r\n handleFormSelection({ formData }, e) {\r\n // TODO: move formselection logic out of AppRouter\r\n const fD = { ...formData }; // Create a deep copy of formdata\r\n fD.formguid = uuidv4(); // Generate new guid (uuid/v4) //TODO: remove formguid\r\n this.setState({ selectedForm: fD }); // Save formdata to state // TODO: use redux\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n {/* {this.state.selectedForm.formguid ? selectedFormComponent : formSelect} */}\r\n\r\n {/* TODO: remove sandbox before going to prod build */}\r\n\r\n \r\n \r\n {/* */}\r\n {/* */}\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default AppRouter;\r\n","import React from \"react\";\r\n\r\nconst Header = () => (\r\n // TODO: use theme instead of inline styling\r\n \r\n);\r\n\r\nexport default Header;\r\n","import React from \"react\";\r\n\r\nconst Footer = () => (\r\n // TODO: use theme instead of inline styling\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Legal Details | \r\n Privacy Policy\r\n
\r\n
\r\n Western National © 2019\r\n
\r\n
\r\n v1.3\r\n
\r\n
\r\n
\r\n
\r\n
\r\n);\r\n\r\nexport default Footer;\r\n","import React from \"react\";\r\nimport \"./App.css\";\r\nimport AppRouter from \"../../routes/AppRouter\";\r\nimport Header from \"../common/Header\";\r\nimport Footer from \"../common/Footer\";\r\nimport FormSelection from \"../FormSelection/FormSelection\";\r\n\r\nconst App = () => (\r\n <>\r\n
\r\n
\r\n \r\n {/* */}\r\n {/* */}\r\n
\r\n