{"version":3,"sources":["components/icons/icon-arrow-right.svg","components/icons/icon-assignment.svg","components/icons/icon-block.svg","components/icons/icon-brand.svg","components/icons/icon-cancel.svg","components/icons/icon-check.svg","components/icons/icon-check-circle.svg","components/icons/icon-chevron-down.svg","components/icons/icon-chevron-left.svg","components/icons/icon-chevron-right.svg","components/icons/icon-chevron-up.svg","components/icons/icon-clock-circle.svg","components/icons/icon-delete.svg","components/icons/icon-description.svg","components/icons/icon-facebook.svg","components/icons/icon-fallback.svg","components/icons/icon-favorite.svg","components/icons/icon-flair-square.svg","components/icons/icon-flair-triangle-outline.svg","components/icons/icon-edit.svg","components/icons/icon-help-circle.svg","components/icons/icon-mail-outline.svg","components/icons/icon-menu.svg","components/icons/icon-message.svg","components/icons/icon-remove.svg","components/icons/icon-twitter.svg","components/icons/icon-view.svg","components/icons/icon-warning.svg","assets/icons/icon-lock-shield.svg","assets/icons/icon-help-chat.svg","assets/icons/icon-close.svg","assets/img/icon-help-chat.svg","withTracker.tsx","common/utils.ts","components/buttons/Button.tsx","components/buttons/IconButton.tsx","components/buttons/IconLinkButton.tsx","components/common/Spinner.tsx","components/common/DataTable.tsx","assets/icons/icon-done.svg","components/common/ModalOverlay.tsx","components/common/Page.tsx","components/cpaipw/LoadContainer.tsx","components/cpaipw/QuoteContainer.tsx","assets/icons/icon-error.svg","components/cpaipw/CheckboxButton.tsx","components/cpaipw/HaveAQuestion.tsx","components/cpaipw/Steps.tsx","components/cpaipw/RadioButton.tsx","components/cpaipw/CheckboxGroup.tsx","components/cpaipw/RadioButtonGroup.tsx","components/cpaipw/Divider.tsx","components/cpaipw/FormButtons.tsx","components/cpaipw/QuestionContainer.tsx","components/cpaipw/InfoMessage.tsx","components/cpaipw/InfoBox.tsx","components/cpaipw/AmountField.tsx","components/cpaipw/UnitsTypeInput.tsx","quote/policy/utils.ts","api/OliverAPI.ts","quote/FormContext.tsx","components/cpaipw/NeedsAssessmentSidebarCard.tsx","components/cpaipw/AmountInput.tsx","components/common/PageHero.tsx","components/common/Tabs.tsx","assets/icons/icon-close-24.svg","common/404Page.tsx","common/401Page.tsx","components/common/PageFooter.tsx","components/cpaipw/ErrorMessage.tsx","quote/aboutYou/GetStarted.tsx","assets/icons/icon-needs-assessment.svg","quote/policy/TogglePolicyButton.tsx","quote/aboutYou/YourDetails.tsx","assets/icons/icon-shield-people.svg","assets/icons/icon-expenses.svg","assets/icons/icon-savings.svg","assets/img/thumbs-up.svg","quote/needsAssessment/NeedsAssessmentStep0.tsx","quote/needsAssessment/NeedsAssessmentStep1.tsx","quote/needsAssessment/NeedsAssessmentStep2.tsx","quote/needsAssessment/NeedsAssessmentStep3.tsx","quote/needsAssessment/NeedsAssessmentStep4.tsx","quote/needsAssessment/NeedsAssessmentStep5.tsx","quote/needsAssessment/NeedsAssessmentStep6.tsx","quote/needsAssessment/NeedsAssessmentStep7.tsx","assets/icons/icon-load.svg","quote/needsAssessment/NeedsAssessmentStep8.tsx","quote/policy/PolicyContext.tsx","quote/policy/useConstant.ts","assets/icons/icon-add.svg","quote/policy/ApplyToChildrenToggle.tsx","quote/policy/CoverageAmountField.tsx","quote/policy/CoverageAmountRadio.tsx","quote/policy/WaitingPeriodRadio.tsx","assets/icons/icon-subtract.svg","assets/icons/icon-tooltip.svg","quote/policy/LearnMore.tsx","quote/policy/PolicyCard.tsx","quote/policy/PolicyList.tsx","quote/policy/CustomerPolicyCard.tsx","quote/policy/SideBarComponent.tsx","quote/policy/SelectPolicy.tsx","quote/policy/PolicyReviewItem.tsx","quote/policy/ReviewSelection.tsx","application/utils.ts","components/cpaipw/Select.tsx","components/cpaipw/HeightInput.tsx","components/cpaipw/WeightInput.tsx","application/AboutYouQuestions/ApplicationContext.tsx","application/AboutYouQuestions/AboutYouApplicationStep1.tsx","application/BeneficiaryQuestions/BeneficiaryContext.tsx","application/HealthQuestions/HealthContext.tsx","application/HistoryQuestions/HistoryContext.tsx","application/LifestyleQuestions/LifestyleContext.tsx","application/SubmissionContext.tsx","application/AboutYouQuestions/AboutYouApplicationStep2.tsx","components/cpaipw/AddRemoveChildContainer.tsx","application/AboutYouQuestions/AboutYouApplicationStep3.tsx","components/cpaipw/Accordion.tsx","components/cpaipw/BeneficiaryAccordion.tsx","application/BeneficiaryQuestions/beneficiariesComponents/Individuals.tsx","application/BeneficiaryQuestions/beneficiariesComponents/Corporations.tsx","application/BeneficiaryQuestions/beneficiariesComponents/Estate.tsx","application/BeneficiaryQuestions/BeneficiaryApplicationStep1.tsx","components/cpaipw/DayMonthYearInput.tsx","components/cpaipw/HealthAccordion.tsx","application/HealthQuestions/HealthApplicationStep1.tsx","application/HealthQuestions/HealthApplicationStep2.tsx","application/HealthQuestions/HealthApplicationStep3.tsx","application/HealthQuestions/HealthApplicationStep4.tsx","application/HealthQuestions/HealthApplicationStep5.tsx","components/cpaipw/IllnessContainer.tsx","application/HistoryQuestions/HistoryApplicationStep1.tsx","application/LifestyleQuestions/LifestyleApplicationStep1.tsx","application/LifestyleQuestions/LifestyleApplicationStep2.tsx","application/LifestyleQuestions/LifestyleApplicationStep3.tsx","application/LifestyleQuestions/LifestyleApplicationStep4.tsx","application/LifestyleQuestions/LifestyleApplicationStep5.tsx","application/LifestyleQuestions/lifestyleComponents/AlcoholicBeveragesForm.tsx","application/LifestyleQuestions/lifestyleComponents/DrugsOrNarcoticsForm.tsx","application/LifestyleQuestions/lifestyleComponents/EcigarettesForm.tsx","application/LifestyleQuestions/lifestyleComponents/TobaccoForm.tsx","application/LifestyleQuestions/lifestyleComponents/TobaccoSubstituteForm.tsx","application/LifestyleQuestions/LifestyleApplicationStep6.tsx","application/BeneficiaryQuestions/BeneficiaryApplicationStep2.tsx","application/BeneficiaryQuestions/BeneficiaryApplicationStep3.tsx","application/reviewApplication/ApplicationReview.tsx","application/reviewApplication/ApplicationThankYou.tsx","application/reviewApplication/Sign.tsx","application/reviewApplication/ApplicationNextSteps.tsx","quote/aboutYou/SelectInsuranceType.tsx","Routes.tsx","App.tsx","registerServiceWorker.ts","index.tsx","assets/img/cpaipw-2020-logo-colour.svg","components/icons/icon-add.svg"],"names":["React","Icon","props","createElement","defaultProps","module","exports","default","GoogleAnalytics","process","REACT_APP_ANALYTICS_TRACKING_ID","debug","require","REACT_APP_OPTIMIZE_ID","SecurityRoles","withTracker","WrappedComponent","options","trackPage","page","HOC","this","location","pathname","nextProps","currentPage","nextPage","antIcon","type","style","fontSize","spin","Button","to","onClick","className","disabled","children","tabIndex","loading","otherProps","classNames","indicator","IconButton","icon","title","Spinner","breakpoints","REACT_APP_B2C_ClientID","REACT_APP_B2C_Authority","split","validationError","message","validationStatus","validationSuccess","Array","prototype","swapItems","a","b","splice","Validation","validateEmail","email","currentUsersEmail","undefined","emailRegexValue","test","indexOf","validateErrorCode","errorCode","length","match","validateIfLessThanOrEqualTo","num","standard","validateIsGreaterThan","validateStringIsNotEmpty","value","trim","validateValueIsUnique","list","includes","runMultipleValidations","listOfValidationFunctions","listOfMessages","reduce","acc","validationFunction","i","validateArrayIsNotEmpty","validatePhoneNumber","phoneNumber","validValue","validateIfANumberOrNumbers","values","setValue","validValues","isArray","isNaN","validateIsActive","status","validateAddress","address1","isValid","validProperties","every","prop","validateCustomFieldHasOneOption","controlTypeId","QuotePages","ApplicationPages","NavRoutes","ValidationMessages","Utils","d","format","Date","toLocaleDateString","year","month","day","moment","unix","diff","toDate","items","fn","promise","item","then","Promise","resolve","hasRoles","rolesRequired","some","role","preventDefault","event","shuffle","input","j","Math","floor","random","tmp","join","randomString","longString","substr","getFormattedDate","date","validateDate","newDate","getAgeFromDate","generateUUID","getTime","replace","c","r","toString","generateCode","getScrollbarWidth","outer","document","inner","visibility","width","appendChild","body","widthWithoutScrollbar","offsetWidth","overflow","widthWithScrollbar","removeChild","debounce","timer","delay","clearTimeout","setTimeout","disableBodyScrolling","classList","add","fixedEls","querySelectorAll","window","innerWidth","forEach","element","paddingRight","enableBodyScrolling","remove","formatCurrency","decimals","Intl","NumberFormat","currency","minimumFractionDigits","maximumFractionDigits","getNumberWithCommas","parts","getAbbreviatedNumber","setDocTitle","shouldMarkError","error","touched","hasError","extractIdToken","encodedIdToken","decodedToken","decodeJwt","base64IdToken","JWSPayload","base64Decoded","base64DecodeStringUrlSafe","JSON","parse","err","jwtToken","isEmpty","matches","exec","header","JWSSig","atob","decodeURIComponent","decode","h1","h2","h3","h4","bits","c1","c2","c3","codes","String","Error","decoded","charAt","fromCharCode","str","filterPickList","picklistCode","pickListItems","filter","row","picklistitemValue","find","code","id","extractKeyValueFromChangeEvent","target","name","dataset","checked","extractValueFromDropDown","dropdownValue","map","key","_path","Modal","Page","LoadContainer","isLoading","QuoteContainer","columnClasses","largeColumn","sidebar","_extends","Object","assign","arguments","source","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","sourceKeys","keys","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","_ref","svgRef","height","viewBox","ref","ForwardRef","forwardRef","CheckboxButton","Fragment","hideBorder","isToggle","isActive","onChange","label","HaveAQuestion","src","IconHelpChat","alt","href","rel","Steps","steps","totalSteps","push","currentstep","RadioButton","CheckboxGroup","val","newValues","arr","index","removeItem","handleSelect","data-toggle","option","RadioButtonGroup","optionCount","multipleBtns","Divider","FormButtons","onClickBack","onClickNext","backLabel","nextLabel","QuestionContainer","returnVal","displayIndex","fill","InfoMessage","InfoBox","AmountField","prepend","append","bgColour","description","Units","PoliciesIds","PolicyFields","UnitsTypeInput","selectedUnit","ftin","e","onBlur","units","onUnitChange","oliverAPI","getOliverProducts","axios","get","response","data","getQuote","request","post","postApplicant","postApplication","getSignatureRequest","postSignerInformation","postReport","sendApplyEvent","postExportApplicants","postAddTagToContact","postAddNeedsAssessmentToContact","policies","policyId","life","mostPopular","fields","coverageAmountField","requirements","min","max","multiplesOf","ltd","waitingPeriod","mustBeWorking","grossMonthlyEarnings","ci","applyToChildren","cich","cpaMax","spouseMax","equalOrLowerThanTLB","deplife","coverageAmountRadio","officeOH","requiresLTD","coverageAmountRadioOptions","applyToChildrenRadioOptions","waitingPeriodRadioOptions","tooltipText","cpaStatusRadioOptions","cpaBodiesRadioOptions","whyToBuyOptions","getFormattedValue","toLocaleString","sortProducts","products","sorted","policy","foundProducts","product","settings","sortProductsByName","getNearest10k","ceil","FormContext","createContext","upsertFormValues","setCurrentPage","setInitialUserData","setUserDataLoading","setPersonalData","setIsLoading","setApplicantId","setNeedsAssessment","setWeightUnit","setSkippedNeedsAssessment","setHeightUnit","setNeedsAssessmentOnly","calculateTotal","setSpouseData","setSpouseApplicantId","needsAssessment","personalData","initialUserData","skippedNeedsAssessment","userDataLoading","applicantId","heightUnit","weightUnit","lbs","yourDetails","needsAssessmentOnly","spouseData","spouseApplicantId","recommended_term_life","FormProvider","useState","initailUserData","needsAssessmentId","setNeedsAssessmentId","useEffect","needsAssessmentVals","debts","numVal","parseInt","savings","valueOfSavings","expenses","insurance","existingInsurance","income","annualIncome","annualIncomeYears","annualIncomeYearsOther","total","smoking_status","usedTobacco","existing_client","existingClient","hasSpouse","spouseFirstName","calculations","recommendation","whyToBuy","reasonToBuy","v","reasonToBuyOther","incomeYears","applicant","first_name","firstName","last_name","lastName","optIn","referred_by","referredBy","sendPDFByEmail","phonenumber","cpa_status","cpaStatus","cpa_body","cpaBody","date_of_birth","dob","gender","applicant_id","debt_auto","autoLoans","debt_cc","creditCard","debt_loc","lineOfCredit","debt_student_loan","studentLoans","debt_other","other","debt_mortgage_balance","mortgageBalance","annual_income","annual_income_years","why_to_buy","existing_insurance_bank","bank","existing_insurance_employer","employer","existing_insurance_life","expense_funeral","funeral","expense_legacy","legacy","expense_tuition","tuition","expense_wedding","wedding","has_wants_num_children","numberChildren","savings_chequing","chequingAccounts","savings_other","savings_rrsp","rrsp","savings_savings","savingsAccount","savings_tfsa","tfsa","spouse_name","spouseLastName","needs_assessment_id","applicantResp","spouseApplicant","spouseDob","spouseGender","spouseEmail","spouseOptIn","spousePhonenumber","spouseUsedTobacco","spouseRequest","spouseResp","tagName","console","Provider","NeedsAssessmentSidebarCard","FormCtx","useContext","currentStep","step","AmountInput","thousandSeparator","onValueChange","defaultValue","HeroTabs","menuItems","findIndex","PageHero","quoteMenuItems","personalizePolicy","applyForCoverage","applicationsMenuItems","aboutYou","beneficiaries","health","lifestyle","history","review","hideTabsPages","QuoteAboutYou","QuoteSelectInsuranceType","navOpen","setNavOpen","useHistory","scrollTo","top","Logo","IconLockShield","IconClose","Tabs","FourOhFourPage","FourOhOnePage","PageFooter","ErrorMessage","GetStarted","useForm","defaultValues","mode","reValidateMode","control","handleSubmit","errors","trigger","getValues","onSubmit","result","alert","params","URLSearchParams","search","checkParamsValues","htmlFor","rules","required","render","validate","areaCode","substring","mask","getInputRef","_rect","_rect2","_rect3","_rect4","_path2","_line","_circle","_line2","_ellipse","_line3","_circle2","TogglePolicyButton","isSelected","YourDetails","urlParams","showSpouse","setShowSpouse","updatePolicy","QuoteSelectPolicy","age","placeholder","_path3","_path4","_path5","_path6","opacity","x","y","rx","stroke","strokeWidth","x1","y1","x2","y2","strokeLinecap","cx","cy","ry","_path7","_path8","_path9","_path10","_path11","_path12","_path13","_path14","_path15","_path16","_path17","_path18","_line4","fillRule","clipRule","NeedsAssessmentStep0","minWidth","next","skip","QuoteNeedsAssessmentStep1","NeedsAssessmentStep1","watch","setError","clearErrors","watchReasonToBuy","QuoteNeedsAssessmentStep0","QuoteNeedsAssessmentStep2","NeedsAssessmentStep2","QuoteNeedsAssessmentStep3","debtsFields","NeedsAssessmentStep3","watchHasMortgage","hasMortgage","watchHasDebts","hasDebts","number","QuoteNeedsAssessmentStep4","NeedsAssessmentStep4","QuoteNeedsAssessmentStep5","NeedsAssessmentStep5","watchAnnualIncomeYears","QuoteNeedsAssessmentStep6","expensesFields","NeedsAssessmentStep6","watchHasWantChildren","watchPayFuneral","hasWantChildren","payFuneral","QuoteNeedsAssessmentStep7","savingsFields","existingInsuranceFields","NeedsAssessmentStep7","QuoteNeedsAssessmentStep8","watchHasSavings","watchHasInsurance","hasSavings","hasInsurance","transform","strokeLinejoin","NeedsAssessmentStep8","formRef","useRef","emailSent","setEmailSent","emailSendError","setEmailSendError","emailError","setEmailError","saveRecommendation","contactEmail","na","why_to_buy_other","annual_income_years_other","NAOnly","is_needs_assessment","is_pdf_sent","current","scrollIntoView","behavior","pattern","PolicyActionContext","policyDispatch","createRequest","createQuoteData","setQuoteData","productTitle","setIsDirty","checkAndSetHasChildDL","checkAndSetHasChildCI","spousePolicyDispatch","spouseCreateRequest","spouseCreateQuoteData","setSpouseQuoteData","spouseProductTitle","setSpouseIsDirty","spouseCheckAndSetHasChildDLorCL","PolicyDataContext","quoteData","isDirty","hasChildDL","hasChildCI","spousePolicy","spouseQuoteData","spouseIsDirty","spouseHasChildDLorCI","PolicyProvider","useReducer","handlePolicyState","selectedPolicies","dispatch","setHasChildDL","setHasChildCI","spouseSelectedPolicies","spouseDispatch","setSpouseHasChildDLorCI","formCtx","quote","prod","premium","parameters","coverageAmount","coverage","waiting_period","policyData","updatedPolicyData","createProductOption","hasChildDLPolicy","p","hasChildCIPolicy","founndApplicantCI","hasDL","getPeriodFromTextValue","period","getCoverageFromTextValue","state","filterArr","createLongTermDisabilityOptionsId","waiting_period_option","createDependencyOptionsId","useConstant","ApplyToChildrenToggle","CoverageAmountField","CoverageAmountRadio","WaitingPeriodRadio","LearnMore","PolicyCard","PolicyAction","PolicyData","warning","setWarning","readMore","setReadMore","currentItem","methods","useFormContext","onChangeField","isSpouse","debouncedRequest","loadPolicies","getMax","userIsSpouse","lifeVal","isTermLife","isADD","isDisablity","waitingPeriodField","applyToChildrenField","policyErrors","showRequirements","displayedReqs","duration","controllerprops","Number","cpaChildrenCI","spouseChildrenCI","PolicyList","log","policyList","cpaDependentLife","spouseDependentLife","padding","display","alignItems","CustomerPolicyCard","summaryTitle","productOrder","validProducts","availableProducts","sort","aTitle","bTitle","borderRadius","passValueToDispatch","handleMenuClick","SideBarComponent","primaryQuote","spouseQuote","isPrimaryQuoteLoading","isSpouseQuoteLoading","isLoadingProducts","primaryUserData","PolicyDataCtx","PolicyActionCtx","quoteItem","toFixed","spouseQuoteItem","goToReview","QuoteYourDetails","QuoteReviewPolicy","SelectPolicy","useLocation","setQuote","setProducts","setIsLoadingProducts","isDropdownVisible","setDropdownVisible","setSpouseQuote","isSpouseDropdownVisible","setSpouseDropdownVisible","setSpouseChildrenCI","setCpaChildrenCI","setSpouseDependentLife","setCpaDependentLife","isSpouseIncluded","hasInitializedPolicies","setHasInitializedPolicies","handleDebouncedAsync","execute","handleSpouseDebouncedAsync","getProducts","asyncFunctionDebounced","AwesomeDebouncePromise","getPremium","useAsyncCallback","asyncSpouseFunctionDebounced","getSpousePremium","isProductAdded","productId","isSpouseProductAdded","availableSpouseProducts","loadPolicy","passSpouseValueToDispatch","createSpouseRequest","CI","fetchedData","spouseValues","spouseFetchedData","PolicyReviewItem","waitingPeriodTooltipOpen","setWaitingPeriodTooltipOpen","applyToChildrenTooltipOpen","setApplyToChildrenTooltipOpen","parseFloat","visible","childCoverageAmount","ReviewSelection","spouseTotal","handleEmailReport","updateContactDetails","combinedValues","hasSpousePolicy","spouse_applicant_id","has_spouse_policy","open","emailSubscriptionOptIn","emailSubscription","f","itemProduct","childCi","totalPremium","addCIChildData","lifestyleValidation","notApplicable","provinces","getChildrenDetails","childrenData","foundChildData","child","Select","selected","province","HeightInput","formCxt","unit","setUnit","displayValue","setDisplayValue","ft","in","displayValueFtIn","setDisplayValueFtIn","convertToFT","newValue","convertToCM","valueFt","valueIn","handleOnChange","cm","cmInInches","feet","inches","ftinSplit","footPart","inchPart","newUnit","WeightInput","convertToLbs","convertToKg","kg","weight","round","ApplicationDataContext","applicationData","getAccordionUsers","ApplicationActionContext","setApplicationData","extractChildData","ApplicationProvider","userArray","userId","displayName","concat","vals","contents","AboutYouApplication1","PolicyCtx","appDataContext","appActionContext","showChildren","cpaNumber","address","city","postalCode","homePhone","birthCountry","birthProvinceOrState","weightOneYearAgo","weightChangeReason","quoteId","quote_id","ApplicationAboutYouStep2","BeneficiaryDataContext","beneficiaryData","isUnder18","defaultData","division","individuals","corporations","estate","trustee","BeneficiaryActionContext","setBeneficiaryData","extractBeneficiaryNames","extractBeneficiaryAllocations","extractTrustee","getIndividuals","getCorporations","getEstate","setIsUnder18","BeneficiaryProvider","filterKeys","bData","beneficiaryKey","found","middleInitial","relationship","isEqually","allocation","foundIndex","confirmedUnderstanding","user","defaultHealthQuestionaire","HealthDataContext","healthQuestionaireData","HealthActionContext","setHealthQuestionaireData","extractHealthData","HealthProvider","applicationCtx","nameOfApplicantOrChildren","idOfApplicantOrChildren","healthQuestionsOfApplicantOrChildren","dateOfIllness","lengthOfHospitalization","lengthOfHospitalizationMeasurement","lengthOfIllness","lengthOfIllnessMeasurement","nameAndAddressOfPhysiciansOrHospitals","natureOfIllness","HistoryDataContext","historyData","HistoryActionContext","setHistoryData","extractHistoryData","HistoryProvider","filteredHistoryDataKeys","historyContextData","innerHistoryUserDataKey","illness","familyMember","illnessDataForFamilyMember","ageAtDeath","ageAtOnsetIllness","ageIfAlive","nameOfIllness","LifestyleActionContext","setLifestyleQuestions","extractLifestyleData","extractLifestyleDataSection6","extractLifestyleDataSection1","LifestyleDataContext","lifestyleQuestions","LifestyleProvider","queriedLifestyleData","section6","question","questionDataList","consumptionAmount","amount","section","lifeStyleSection","userLifeStyleData","sec","suspended","section1","SubmissionContext","setSubmitApplication","submissionLoading","applicationId","SubmissionProvider","setApplicationId","beneficiaryCtx","healthCtx","lifestyleCtx","historyCtx","submitApplicationData","setSubmitApplicationData","setSubmissionLoading","application","applicationID","aboutYouApplication","healthAnswers","lifestyleAnswers","historyRecords","submitApplication","AboutYouApplication2","policyCtx","submissionCtx","isWorking","reasonForNotWorking","occupation","workPhone","workedHours","watchIsWorking","onValidSubmit","ApplicationAboutYouStep3","ApplicationBeneficiariesStep1","rows","ApplicationAboutYouStep1","AddRemoveChildContainer","childIds","setChildIds","newChildIds","currentChildren","defaultValuesId","dateOfBirth","newArray","newIdArray","AboutYouApplication3","accordionStyles","Accordion","defaultState","selectedUsers","setSelectedUsers","users","setUsers","newUsers","currentState","cloneElement","BeneficiaryAccordion","setSelected","beneficaryData","haveData","Individuals","individualIds","setIndividualIds","newIds","individual","defaultIndividual","relationshipToInsured","handleToggle","oldState","newState","Corporations","corporationIds","setCorporationIds","corporation","defaultCorporation","nameOfCorporation","Estate","nameOfEstate","BeneficiaryApplicationStep1","beneficiaryActionContext","hasBeneficiary","ApplicationBeneficiariesStep2","DayMonthYearInput","previousUnitValue","getValue","HealthAccordion","healthDataContext","fieldNameHasDot","fieldName","errorList","foundHealthData","section1Questions","section2Questions","findData","section3Questions","section4Questions","section5Questions","validateRequired","validateUnitData","hasUnit","HealthApplicationStep1","healthActionContext","healthData","watchNa","watchAll","formHasFields","defaultselectedUsers","ApplicationBeneficiariesStep3","section1Data","ApplicationHealthStep2","HealthApplicationStep2","healthDataKeys","notYetConsultedDoctor","waitingToSeeSpecialist","advisedMedsOrSurgery","ApplicationHealthStep1","contentKeys","section2Data","ApplicationHealthStep3","HealthApplicationStep3","inHospitalNotRelated","addictionTreatmentCenter","section3Data","ApplicationHealthStep4","HealthApplicationStep4","section4Data","ApplicationHealthStep5","HealthApplicationStep5","onHandleSubmit","section5Data","ApplicationLifestyleStep1","abnormalitiesIncludingAidsOrHiv","cancer","endocrineSystem","lungDisorders","cysticFibrosis","physicalDisorder","heartDisease","gastroIntestinal","bloodDisorders","cerebral","neurologicalImpairment","problemsWithKidneys","muscleJointsAndBone","earNoseAndThroat","IllnessGroup","illnessIndexFromProps","illnessData","ill","illnessIndex","setIllnessIndex","foundIllness","currentlySelectedUser","memberName","lastItem","updatedIllnessData","updateIllnessData","illnessIndexData","updatedStuff","IllnessForm","IllnessContainer","members","illnesses","selectedFamilyMembers","setSelectedFamilyMembers","familyOptions","HistoryApplicationStep1","historyActionCtx","historyDataCtx","notApplicableOrEmptyValue","filteredKeys","ApplicationReview","historyUsers","ApplicationLifestyleStep6","ReasonForm","defaultValuesForUser","reason","dates","LifestyleApplicationStep1","lifestyleActionContext","lifestyleData","ApplicationLifestyleStep2","LifestyleApplicationStep2","lifestyleDataContext","watchQ1","checkboxOptions","lifestyleUserData","section2","driversLicenseSuspended","ApplicationLifestyleStep3","section3","accusedOrFoundGuilty","ApplicationLifestyleStep4","section4","ApplicationLifestyleStep5","LifestyleApplicationStep5","section5","addictionTreatment","AlcoholicBevaragesForm","alcholicBeverage","DrugsOrNarcoticsForm","drugsOrNarcotics","numberGramsPerWeek","EcigarettesForm","eCigarettes","TobaccoForm","tobacco","TobaccoSubstitureForm","tobaccoSubstitute","LifestyleApplicationStep6","ApplicationHistoryStep1","tobaccoUsers","t","eCigUsers","tobaccoSubUsers","alcoholicBevyUsers","narcoticsUsers","BeneficiaryApplicationStep2","setIndividuals","setCorporations","setEstate","equallyShared","setEquallyShared","setTotal","individualsData","corporationsData","estateData","isEqual","watchValues","getAverage","all","percentage","newTotal","iData","BeneficiaryApplicationStep3","beneficaryDataConext","beneficiaryUnder18","designateTrustee","iUnderstand","watchUnder18","watchDesignateTrustee","ApplicationCxt","SubmissionCtx","signatureDataLoading","setSignatureDataLoading","emailAddress","witnessName","witnessEmail","quoteTotal","application_id","signers","ApplicationNextSteps","ApplicationThankYou","Sign","clientHasSigned","setClientHasSigned","redirectUser","setRedirectUser","signatureData","setSignatureData","useParams","client","HelloSign","clientId","client_id","sign","status_code","getSignature","on","once","sign_url","testMode","skipDomainVerification","allowCancel","SelectInsuranceType","handleClick","Routes","path","component","exact","LifestyleApplicationStep4","LifestyleApplicationStep3","App","Boolean","hostname","ReactDOM","getElementById","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.1d533c6b.chunk.js","sourcesContent":["var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"width\":\"24\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM4 12c0-4.42 3.58-8 8-8 1.85 0 3.55.63 4.9 1.69L5.69 16.9C4.63 15.55 4 13.85 4 12zm8 8c-1.85 0-3.55-.63-4.9-1.69L18.31 7.1C19.37 8.45 20 10.15 20 12c0 4.42-3.58 8-8 8z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"circle\",{\"cx\":\"69\",\"cy\":\"69\",\"r\":\"69\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M107.6 38.4c-1.6-1.6-3.7-2.4-5.7-2.4-2.1 0-4.1.8-5.7 2.4l-5.9 5.9-5.9-5.9c-1.6-1.6-3.7-2.4-5.7-2.4-2.1 0-4.1.8-5.7 2.4-3.2 3.1-3.2 8.2 0 11.4l5.9 5.9-9.9 9.7-9.8-9.8 5.9-5.9c3.2-3.2 3.2-8.4-.2-11.5-1.5-1.4-3.5-2.1-5.4-2.1-2.2 0-4.4.9-6.1 2.5l-5.7 5.6-5.9-5.9c-1.6-1.6-3.7-2.4-5.7-2.4s-4.1.8-5.7 2.4c-3.2 3.1-3.2 8.2 0 11.4l11.8 11.7L60.9 80v28h16.2V80l30.5-30.3c3.2-3.1 3.2-8.2 0-11.3zM40 53.6l-6.8-6.7c-1.6-1.6-1.6-4.1 0-5.7.8-.8 1.8-1.2 2.9-1.2 1.1 0 2.1.4 2.9 1.2l5.9 5.9-2.7 2.7c-1.2 1.1-1.9 2.4-2.2 3.8zm64.8-6.7l-28 27.8c-.4-1.4-1.1-2.7-2.2-3.8l-2.8-2.8 12.6-12.6-8.8-8.7c-1.6-1.6-1.6-4.1 0-5.7.8-.8 1.8-1.2 2.9-1.2s2.1.4 2.9 1.2l8.8 8.7 8.8-8.7c.8-.8 1.8-1.2 2.9-1.2s2.1.4 2.9 1.2c1.6 1.7 1.6 4.2 0 5.8z\",\"fill\":\"#fff\",\"key\":1}),React.createElement(\"path\",{\"d\":\"M285.3 61.5h14.4v6.8c1.5-2.5 3.4-4.4 5.7-5.7 2.2-1.3 4.8-2 7.8-2h1.2c.5 0 1 .1 1.6.2v13.9c-1.9-1-4-1.4-6.2-1.4-3.3 0-5.9 1-7.5 3-1.7 2-2.5 4.9-2.5 8.8v17.7h-14.4V61.5zM280.6 73.5c-1-2.7-2.4-5-4.2-6.9-1.8-2-3.9-3.5-6.5-4.7-2.5-1.2-5.3-1.7-8.3-1.7-5.1 0-9.3 1.8-12.7 5.4V36h-14.4v66.7h14.4v-4.6c3.1 3.9 7.3 5.9 12.6 5.9 2.9 0 5.6-.6 8.2-1.7 2.5-1.2 4.7-2.7 6.6-4.7 1.9-2 3.3-4.3 4.3-7s1.6-5.5 1.6-8.6c-.1-3-.6-5.9-1.6-8.5zm-14.3 12.3c-.5 1.1-1.2 2.1-2 3-.8.9-1.8 1.5-2.9 2-1.1.5-2.3.7-3.6.7-1.3 0-2.5-.3-3.6-.8s-2.1-1.2-3-2c-.8-.8-1.5-1.8-2-2.9-.5-1.1-.7-2.3-.7-3.6 0-1.3.3-2.5.8-3.7s1.2-2.2 2-3c.8-.9 1.8-1.5 2.9-2 1.1-.5 2.3-.7 3.6-.7 1.3 0 2.5.3 3.7.8 1.1.5 2.1 1.2 2.9 2 .8.9 1.5 1.9 2 3 .5 1.2.7 2.4.7 3.7 0 1.1-.3 2.3-.8 3.5z\",\"fillRule\":\"evenodd\",\"clipRule\":\"evenodd\",\"key\":2}),React.createElement(\"path\",{\"d\":\"M200.8 61.5h14.4v6.8c1.5-2.5 3.4-4.4 5.7-5.7 2.2-1.3 4.8-2 7.8-2h1.2c.5 0 1 .1 1.6.2v13.9c-1.9-1-4-1.4-6.2-1.4-3.3 0-5.9 1-7.5 3-1.7 2-2.5 4.9-2.5 8.8v17.7h-14.4V61.5z\",\"fillRule\":\"evenodd\",\"clipRule\":\"evenodd\",\"fill\":\"#1fac4f\",\"key\":3}),React.createElement(\"path\",{\"d\":\"M183.1 61.5v4.1c-3.3-3.6-7.6-5.4-12.7-5.4-3 0-5.8.6-8.3 1.7-2.5 1.2-4.6 2.7-6.5 4.7-1.8 2-3.2 4.3-4.2 7s-1.5 5.5-1.5 8.4c0 3.2.5 6.1 1.6 8.8 1 2.7 2.5 5 4.3 7 1.9 2 4 3.5 6.5 4.6 2.5 1.1 5.2 1.6 8.2 1.6 5.3 0 9.4-2 12.5-5.9v4.6h14.5V61.5h-14.4zm-.3 24.3c-.5 1.1-1.2 2.1-2 3-.8.9-1.8 1.5-2.9 2s-2.3.7-3.6.7c-1.3 0-2.6-.2-3.7-.7-1.1-.5-2.1-1.2-2.9-2-.8-.9-1.5-1.9-2-3s-.7-2.5-.7-3.8c0-1.3.2-2.5.7-3.6.5-1.1 1.1-2.1 2-2.9.8-.9 1.8-1.5 2.9-2 1.1-.5 2.4-.7 3.7-.7 1.3 0 2.5.2 3.6.7s2.1 1.2 2.9 2c.8.9 1.5 1.9 2 3 .5 1.2.8 2.4.8 3.7 0 1.2-.2 2.4-.8 3.6z\",\"fillRule\":\"evenodd\",\"clipRule\":\"evenodd\",\"key\":4}),React.createElement(\"path\",{\"d\":\"M52.1 55.6l9.5-9.4c.6-.6.9-1.4.9-2.2 0-.8-.4-1.6-1-2.2-.7-.6-1.4-.7-2-.7-.9 0-1.9.4-2.5 1.1L45.7 53.3c-1.3 1.3-1.3 3.3 0 4.6L65.9 78v25h6.2V76.9c0-.9-.4-1.8-1-2.5l-19-18.8z\",\"fill\":\"#1abc56\",\"key\":5})]);\n}\n\nIcon.defaultProps = {\"viewBox\":\"0 0 316 138\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0-.75h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0-.5h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0-.25h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"defs\",{\"key\":0},React.createElement(\"path\",{\"d\":\"M0 0h24v24H0V0z\",\"id\":\"a\"})),React.createElement(\"clipPath\",{\"id\":\"b\",\"key\":1},React.createElement(\"use\",{\"overflow\":\"visible\",\"xlinkHref\":\"#a\"})),React.createElement(\"path\",{\"clipPath\":\"url(#b)\",\"d\":\"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm4.2 14.2L11 13V7h1.5v5.2l4.5 2.7-.8 1.3z\",\"key\":2})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"width\":\"24\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"className\":\"st1\",\"d\":\"M20.9,2H3.1C2.5,2,2,2.5,2,3.1v17.8C2,21.5,2.5,22,3.1,22h9.6v-7.7h-2.6v-3h2.6V9c0-2.6,1.6-4,3.9-4\\n\\t\\tc1.1,0,2.1,0.1,2.3,0.1v2.7l-1.6,0c-1.3,0-1.5,0.6-1.5,1.5v1.9h3l-0.4,3h-2.6V22h5.1c0.6,0,1.1-0.5,1.1-1.1V3.1\\n\\t\\tC22,2.5,21.5,2,20.9,2z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0,0h24v24H0V0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#3c5a99\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M107.6 38.4c-1.6-1.6-3.7-2.4-5.7-2.4-2.1 0-4.1.8-5.7 2.4l-5.9 5.9-5.9-5.9c-1.6-1.6-3.7-2.4-5.7-2.4-2.1 0-4.1.8-5.7 2.4-3.2 3.1-3.2 8.2 0 11.4l5.9 5.9-9.9 9.7-9.8-9.8 5.9-5.9c3.2-3.2 3.2-8.4-.2-11.5-1.5-1.4-3.5-2.1-5.4-2.1-2.2 0-4.4.9-6.1 2.5l-5.7 5.6-5.9-5.9c-1.6-1.6-3.7-2.4-5.7-2.4s-4.1.8-5.7 2.4c-3.2 3.1-3.2 8.2 0 11.4l11.8 11.7L60.9 80v28h16.2V80l30.5-30.3c3.2-3.1 3.2-8.2 0-11.3zM40 53.6l-6.8-6.7c-1.6-1.6-1.6-4.1 0-5.7.8-.8 1.8-1.2 2.9-1.2 1.1 0 2.1.4 2.9 1.2l5.9 5.9-2.7 2.7c-1.2 1.1-1.9 2.4-2.2 3.8zm64.8-6.7l-28 27.8c-.4-1.4-1.1-2.7-2.2-3.8l-2.8-2.8 12.6-12.6-8.8-8.7c-1.6-1.6-1.6-4.1 0-5.7.8-.8 1.8-1.2 2.9-1.2s2.1.4 2.9 1.2l8.8 8.7 8.8-8.7c.8-.8 1.8-1.2 2.9-1.2s2.1.4 2.9 1.2c1.6 1.7 1.6 4.2 0 5.8z\"}));\n}\n\nIcon.defaultProps = {\"viewBox\":\"0 0 138 138\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"rect\",{\"x\":\"10\",\"y\":\"10\",\"width\":\"70\",\"height\":\"70\",\"style\":{\"fill\":\"none\",\"stroke\":\"#eee\",\"strokeWidth\":\"1\",\"opacity\":\"0.2\",\"vectorEffect\":\"non-scaling-stroke\"},\"key\":0}),React.createElement(\"polygon\",{\"points\":\"20 74 0 74 10 89.85 20 74\",\"style\":{\"fill\":\"#eee\",\"opacity\":\"0.2\"},\"key\":1}),React.createElement(\"rect\",{\"width\":\"90\",\"height\":\"90\",\"style\":{\"fill\":\"none\"},\"key\":2})]);\n}\n\nIcon.defaultProps = {\"viewBox\":\"0 0 90 90\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"polygon\",{\"points\":\"17.5 21 17.5 1 1.65 11 17.5 21\",\"style\":{\"fill\":\"none\",\"stroke\":\"#eee\",\"strokeWidth\":\"1\",\"vectorEffect\":\"non-scaling-stroke\"},\"key\":0}),React.createElement(\"rect\",{\"width\":\"18\",\"height\":\"22\",\"style\":{\"fill\":\"none\"},\"key\":1})]);\n}\n\nIcon.defaultProps = {\"viewBox\":\"0 0 18 22\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H4V8l8 5 8-5v10zm-8-7L4 6h16l-8 5z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-2 12H6v-2h12v2zm0-3H6V9h12v2zm0-3H6V6h12v2z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M19 13H5v-2h14v2z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"width\":\"24\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"className\":\"st0\",\"d\":\"M23.1,5.1c-0.8,0.4-1.7,0.6-2.6,0.7c0.9-0.6,1.7-1.5,2-2.5c-0.9,0.6-1.9,0.9-2.9,1.1c-0.8-0.9-2-1.5-3.3-1.5\\n\\t\\tc-2.5,0-4.5,2-4.5,4.5c0,0.4,0,0.7,0.1,1C8,8.4,4.7,6.5,2.4,3.8C2,4.5,1.8,5.2,1.8,6.1c0,1.6,0.8,3,2,3.8c-0.7,0-1.5-0.2-2-0.6v0.1\\n\\t\\tc0,2.2,1.6,4.1,3.6,4.5C5,13.9,4.7,14,4.2,14c-0.3,0-0.6,0-0.8-0.1c0.6,1.9,2.2,3.2,4.3,3.2c-1.6,1.2-3.5,1.9-5.7,1.9\\n\\t\\tc-0.4,0-0.7,0-1.1-0.1c2,1.3,4.5,2,7.1,2c8.4,0,13-7,13-13c0-0.2,0-0.4,0-0.6C21.7,6.8,22.5,6.1,23.1,5.1L23.1,5.1z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0,0h24v24H0V0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#1da1f2\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"width\":\"24\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n","module.exports = __webpack_public_path__ + \"static/media/icon-lock-shield.4f517ec8.svg\";","module.exports = __webpack_public_path__ + \"static/media/icon-help-chat.da0d272f.svg\";","module.exports = __webpack_public_path__ + \"static/media/icon-close.5276b565.svg\";","module.exports = __webpack_public_path__ + \"static/media/icon-help-chat.74f1f5fb.svg\";","import * as React from 'react';\nimport * as GoogleAnalytics from 'react-ga';\n\nGoogleAnalytics.initialize(\n\tprocess.env.REACT_APP_ANALYTICS_TRACKING_ID!,\n\t{ debug: false }\n);\n// process.env.NODE_ENV === 'development' ? true : false\nGoogleAnalytics.plugin.require(process.env.REACT_APP_OPTIMIZE_ID!, null);\n\nconst withTracker = (WrappedComponent: any, options = {}) => {\n\tconst trackPage = (page: any) => {\n\t\tGoogleAnalytics.set({\n\t\t\tpage,\n\t\t\t...options,\n\t\t});\n\t\tGoogleAnalytics.pageview(page);\n\t};\n\n\tconst HOC = class extends React.Component {\n\t\tpublic componentDidMount() {\n\t\t\tconst page = this.props.location.pathname;\n\t\t\ttrackPage(page);\n\t\t}\n\n\t\tpublic componentWillReceiveProps(nextProps: any) {\n\t\t\tconst currentPage = this.props.location.pathname;\n\t\t\tconst nextPage = nextProps.location.pathname;\n\n\t\t\tif (currentPage !== nextPage) {\n\t\t\t\ttrackPage(nextPage);\n\t\t\t}\n\t\t}\n\n\t\tpublic render() {\n\t\t\treturn ;\n\t\t}\n\t};\n\n\treturn HOC;\n};\n\nexport default withTracker;","// eslint rule disabled due to regex throughout file\n/* eslint-disable no-useless-escape*/\nimport moment from 'moment';\n// import { UserAgentApplication } from 'msal';\nimport { concat } from 'lodash';\n\nexport const breakpoints = {\n\txs: 0,\n\tsm: 576,\n\tmd: 768,\n\tlg: 992,\n\txl: 1200,\n\txxl: 1600\n};\n\nexport const barchartColors = [\n\t'rgba(248, 32, 32, 0.5)',\n\t'rgba(223, 88, 150, 0.5)',\n\t'rgba(209, 89, 45, 0.5)',\n\t'rgba(189, 132, 66, 0.5)',\n\t'rgba(170, 189, 57, 0.5)',\n\t'rgba(172, 209, 9, 0.5)',\n\t'rgba(82, 209, 9, 0.5)',\n\t'rgba(9, 209, 142, 0.5)',\n\t'rgba(9, 152, 209, 0.5)',\n\t'rgba(9, 79, 209, 0.5)'\n];\n\nexport const months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];\n\n/**\n * @param {number} month\n * @returns {array}\n * @description eg. input month =4 , returns [4,5,6,7,8,9,10,11,12,1,2,3]\n */\nexport const sortDateStartingFromCurrent = (month: number) => {\n\tconst numericMonths = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];\n\tif (month > 12) {\n\t\tmonth = month - 12;\n\t}\n\tconst sortedMonth: number[] = [];\n\tconst pastMonth: number[] = [];\n\tnumericMonths.forEach(m => {\n\t\tif (m - month < 0) {\n\t\t\tpastMonth.push(m);\n\t\t} else {\n\t\t\tsortedMonth.push(m);\n\t\t}\n\t});\n\tconst result = concat(sortedMonth, pastMonth);\n\treturn result;\n};\n\nexport const truncateString = (description: string, limit: number = 20) => {\n\tif (description.length > limit) {\n\t\treturn description.substring(0, limit) + '...';\n\t}\n\treturn description;\n};\n\nexport const getTime = (mode: string) => {\n\tconst today = new Date();\n\tswitch (mode) {\n\t\tcase ('today'): return moment(today);\n\t\tcase ('thisYear'): return moment(`${today.getFullYear()}-01-01`);\n\t\tcase ('lastYear'): return moment(`${today.getFullYear() - 1}-01-01`);\n\t\tcase ('twoYearsBefore'): return moment(`${today.getFullYear() - 2}-01-01`);\n\t\tcase ('thisMonth'): return moment(today).format('YYYY-MM');\n\t\tcase ('lastMonth'): return moment(today).subtract(1, 'month').endOf('month').format('YYYY-MM');\n\t\tcase ('twoMonthsBefore'): return moment(today).subtract(2, 'month').endOf('month').format('YYYY-MM');\n\t\tdefault: return moment(today);\n\t}\n};\n\nexport const renderPercentage = (count: number, sum: number) => (Math.round(count / sum * 10000) / 100 + '%');\n\nexport const B2CConfiguration = {\n\tclientID: process.env.REACT_APP_B2C_ClientID!,\n\tauthority: process.env.REACT_APP_B2C_Authority!,\n\tb2cScopes: process.env.REACT_APP_B2C_Scopes!.split(',')\n};\nexport enum SecurityRoles {\n\tAdministrator = 'Admin',\n\tCustomer = 'Customer'\n}\n\nexport interface IParameterValidation {\n\tvalidationStatus: 'success' | 'error' | 'warning' | 'validating' | undefined;\n\tmessage: string;\n}\n\nexport const numericInputRegex = /^[0-9]*$/g;\nexport const alphabetsDashInputRegex = /^[a-zA-Z- ]*$/g;\nexport const alphaNumCommaDotDashInputRegex = /^[A-Za-z0-9\\s,\\.\\-]*$/g;\nexport const birthYearRegex = /(?:19|20)\\d\\d/g;\n\nconst validationError = (message: string): IParameterValidation => {\n\treturn { validationStatus: 'error', message };\n};\n\nconst validationWarning = (message: string): IParameterValidation => {\n\treturn { validationStatus: 'warning', message };\n};\n\nconst validationSuccess = (message: string = ''): IParameterValidation => {\n\treturn { validationStatus: 'success', message };\n};\n\nconst validationNoMessage = (): IParameterValidation => {\n\treturn { validationStatus: undefined, message: '' };\n};\n\n// helper method for swapping item indice in array\ndeclare global {\n\t// tslint:disable-next-line\n\tinterface Array {\n\t\tswapItems(a: number, b: number): void;\n\t}\n}\n\n// eslint-disable-next-line no-extend-native\nArray.prototype.swapItems = function(a, b) {\n\tthis[a] = this.splice(b, 1, this[a])[0];\n\treturn this;\n};\n\nexport class Validation {\n\tpublic static validateEmail = (email?: string, currentUsersEmail: string[] = []): IParameterValidation => {\n\t\tif (!email) {\n\t\t\treturn validationNoMessage();\n\t\t}\n\t\tconst emailRegexValue = /[a-z0-9\\._%+!$&*=^|~#%'`?{}/\\-]+@([a-z0-9\\-]+\\.){1,}([a-z]{2,16})/;\n\t\tif (email === '') {\n\t\t\treturn validationError('Please enter a valid email');\n\t\t}\n\n\t\t// compare with regex first then check if it's existing email\n\t\tif (!emailRegexValue.test(email)) {\n\t\t\treturn validationError('Please enter a valid email');\n\t\t}\n\n\t\tif (currentUsersEmail.indexOf(email) !== -1) {\n\t\t\treturn validationError('Email is already in use');\n\t\t}\n\n\t\treturn validationSuccess();\n\t}\n\n\tpublic static validateErrorCode = (errorCode: string): IParameterValidation => {\n\t\tconst fleetErrorRegex = /^[A-Z]{1,2}$/g;\n\n\t\tif (errorCode === '') {\n\t\t\treturn validationError('Please enter a valid fleet error');\n\t\t}\n\n\t\tif (errorCode.length === 2 && errorCode[1] !== 'X') {\n\t\t\treturn validationError('Fleet Error with length 2 must end with X');\n\t\t}\n\n\t\tif (!errorCode.match(fleetErrorRegex)) {\n\t\t\treturn validationError('Fleet Error has to be 1 or 2 capital letters');\n\t\t}\n\n\t\treturn validationSuccess();\n\t}\n\n\tpublic static validateIfLessThanOrEqualTo = (num: number, standard: number, message: string): IParameterValidation => {\n\t\tif (num <= standard) {\n\t\t\treturn validationSuccess();\n\t\t} else {\n\t\t\treturn validationError(message);\n\t\t}\n\t}\n\n\tpublic static validateIsGreaterThan = (num: number, standard: number, message: string): IParameterValidation => {\n\t\tif (num > standard) {\n\t\t\treturn validationSuccess();\n\t\t} else {\n\t\t\treturn validationError(message);\n\t\t}\n\t}\n\n\t/*\n\t\tThis function will take a value, and check whether or not it is empty or undefined. It will return an error\n\t\twith the passed in message, if the value is empty.\n\t*/\n\tpublic static validateStringIsNotEmpty = (value: string, message: string): IParameterValidation => {\n\t\tif (value === undefined || value.trim() === '') {\n\t\t\treturn validationError(message);\n\t\t}\n\t\treturn validationSuccess('Successful');\n\t}\n\n\t// checks whether a value exists in a given list, returns IParameterValidation object with the given message\n\tpublic static validateValueIsUnique = (list: string[]) => (value: string, message: string): IParameterValidation => {\n\t\tconst presentInList: boolean = list.includes(value);\n\t\tif (presentInList) {\n\t\t\treturn validationError(message);\n\t\t}\n\t\treturn validationSuccess('Successful');\n\t}\n\n\t// takes in list of Validation Functions, a list of corresponding Error messages, and a value, and runs multiple Validations on that value\n\t// !! NOTE: validaitonFunction MUST have a signature of functionName(value: string, message: string): IParameterValidation { ... }\n\tpublic static runMultipleValidations = (listOfValidationFunctions: any[], listOfMessages: any[], value: any): IParameterValidation => {\n\n\t\ttype ValidationFunction = (value: string, message: string) => IParameterValidation;\n\t\treturn listOfValidationFunctions.reduce((acc: IParameterValidation, validationFunction: ValidationFunction, i) => {\n\t\t\tif (acc.validationStatus === 'error') {\n\t\t\t\t// if an error has already occured, no need to run the next validation\n\t\t\t\treturn acc;\n\t\t\t}\n\t\t\t// otherwise, we need to run the next validation Function and see its output.\n\t\t\tconst validationOutcome: IParameterValidation = validationFunction(value, listOfMessages[i]);\n\t\t\treturn validationOutcome;\n\t\t}, {} as IParameterValidation);\n\t}\n\n\tpublic static validateArrayIsNotEmpty = (value: any[], message: string): IParameterValidation => {\n\t\tif (value !== undefined && value.length > 0) {\n\t\t\treturn validationSuccess();\n\t\t}\n\t\treturn validationError(message);\n\t}\n\n\tpublic static validatePhoneNumber = (phoneNumber: string): IParameterValidation => {\n\t\tlet validValue = validationError('Please enter a valid phone number ');\n\t\tconst phoneNumberValidation = /^\\(?([0-9]{3})\\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$/;\n\t\tif (phoneNumber) {\n\t\t\tif (phoneNumber.length < 10) {\n\t\t\t\tvalidValue = validationWarning('Please enter a 10 digit phone number');\n\t\t\t}\n\t\t\tif (phoneNumberValidation.test(phoneNumber)) {\n\t\t\t\tvalidValue = validationSuccess();\n\t\t\t}\n\n\t\t}\n\t\treturn validValue;\n\t}\n\t/* used to set daysUntilredaction, DaysUntilCoreLocked fields to show no\n\tvalidation when set to none and error if set to timed if passing in a bool */\n\tpublic static validateIfANumberOrNumbers = (values: number | number[], setValue: boolean | undefined = undefined): IParameterValidation => {\n\t\tlet validValues = {} as IParameterValidation;\n\t\tif (setValue !== undefined) {\n\t\t\tif (setValue === true) {\n\t\t\t\tif (!Array.isArray(values) && isNaN(values)) {\n\t\t\t\t\tvalidValues = validationNoMessage();\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (setValue === false) {\n\t\t\t\tif (!Array.isArray(values) && isNaN(values)) {\n\t\t\t\t\tvalidValues = validationError('Please enter a value!');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (setValue === undefined) {\n\t\t\tif (Array.isArray(values)) {\n\t\t\t\tif ((values.length > 0) !== true) {\n\t\t\t\t\tvalidValues = validationError('Please choose an option ');\n\t\t\t\t} else {\n\t\t\t\t\tvalidValues = validationSuccess();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (values === undefined) {\n\t\t\t\t\tvalidValues = validationError('Please choose an option');\n\t\t\t\t} else {\n\t\t\t\t\tvalidValues = validationSuccess();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn validValues;\n\t}\n\n\tpublic static validateIsActive = (status: boolean): IParameterValidation => {\n\t\tif (typeof status !== 'boolean' || status === undefined) {\n\t\t\treturn { validationStatus: 'error', message: 'Please choose a value' };\n\t\t}\n\n\t\treturn { validationStatus: 'success', message: '' };\n\t}\n\n\tpublic static validateAddress = (address1: string): IParameterValidation => {\n\t\tlet validateAddress = { validationStatus: 'error', message: 'Please enter an address' };\n\t\tif (address1 && address1 !== '' && address1.length > 0) {\n\t\t\tvalidateAddress = { validationStatus: 'success', message: '' };\n\t\t}\n\t\treturn validateAddress as IParameterValidation;\n\t}\n\n\tpublic static isValid = (validProperties: string[]) => {\n\t\tconst isValid = validProperties.every(prop => prop === 'success' || prop === undefined);\n\t\treturn isValid;\n\t}\n\n\tpublic static validateCustomFieldHasOneOption = (options: any[], controlTypeId: number): IParameterValidation => {\n\t\tif (controlTypeId && controlTypeId !== 10236 && options.length === 0) {\n\t\t\treturn validationError('Please add at least one option');\n\t\t}\n\t\treturn { validationStatus: undefined, message: '' };\n\t}\n}\n\n// export class Auth {\n// \tpublic static SetupAuthClient = () => {\n// \t\tconst clientApplication = new UserAgentApplication(\n// \t\t\tB2CConfiguration.clientID,\n// \t\t\tB2CConfiguration.authority,\n// \t\t\t(errorDesc: any, token: any, error: any, tokenType: any) => {\n// \t\t\t\t// Called after loginRedirect or acquireTokenPopup\n// \t\t\t\t// tslint:disable-next-line\n// \t\t\t\tconsole.info('signupin callback ');\n// \t\t\t},\n// \t\t\t{\n// \t\t\t\tpostLogoutRedirectUri: window.location.origin\n// \t\t\t}\n// \t\t);\n// \t\treturn clientApplication;\n// \t}\n// }\n\nexport interface InputError {\n\thasError: boolean;\n\tmessage: string;\n}\n\n// tslint:disable\nexport const emailRegex = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n// tslint:enable\n\nexport class Utils {\n\t// tslint:disable\n\tpublic static generateUUID = () => {\n\t\tlet d = new Date().getTime();\n\t\tconst uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {\n\t\t\tconst r = ((d + Math.random() * 16) % 16) | 0;\n\t\t\td = Math.floor(d / 16);\n\t\t\treturn (c === 'x' ? r : (r & 0x3) | 0x8).toString(16);\n\t\t});\n\t\treturn uuid;\n\t};\n\t// tslint:enable\n\n\tpublic static formatDate(d: any, format?: string) {\n\t\tif (!d) {\n\t\t\treturn '';\n\t\t}\n\n\t\treturn new Date(d).toLocaleDateString('en-US', { year: 'numeric', month: 'short', day: 'numeric' });\n\t}\n\n\tpublic static formatUnixDate(d: any, format?: string) {\n\t\tif (!d) {\n\t\t\treturn '';\n\t\t}\n\n\t\treturn moment.unix(d).format(format || 'YYYY-MM-DD');\n\t}\n\n\tpublic static getAgeFromBirthdate(d: string) {\n\t\tif (!d) {\n\t\t\treturn '';\n\t\t}\n\n\t\treturn moment().diff(moment(d, 'YYYYMMDD'), 'years');\n\t}\n\n\tpublic static dateStringToDate(d: string) {\n\t\tif (moment(d, 'YYYY-MM-DD').isValid()) {\n\t\t\treturn moment(d, 'YYYY-MM-DD').toDate();\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tpublic static forEachPromise(items: any, fn: any) {\n\t\treturn items.reduce(\n\t\t\t(promise: any, item: any) => {\n\t\t\t\treturn promise.then(() => {\n\t\t\t\t\treturn fn(item);\n\t\t\t\t});\n\t\t\t},\n\t\t\tPromise.resolve()\n\t\t);\n\t}\n\n\tpublic static isAuthorized(hasRoles: string[], rolesRequired: string[]) {\n\t\tlet authorized = false;\n\t\tif (hasRoles.indexOf('admin') >= 0 || rolesRequired == null || rolesRequired.length === 0) {\n\t\t\tauthorized = true;\n\t\t} else {\n\t\t\tauthorized = hasRoles.some(role => {\n\t\t\t\treturn rolesRequired.indexOf(role) >= 0;\n\t\t\t});\n\t\t}\n\t\treturn authorized;\n\t}\n\n\tpublic static generateCode = () => {\n\t\t// Generates a random alphanumeric string of length 6\n\t\treturn Math.random()\n\t\t\t.toString(36)\n\t\t\t.substr(2, 6);\n\t}\n\n\n\t// https://gist.github.com/bsara/c60dd6bbb04e0969221f607f0df68716\n\tpublic static getScrollbarWidth = () => {\n\t\tconst outer = document.createElement('div');\n\t\tconst inner = document.createElement('div');\n\n\t\touter.style.visibility = 'hidden';\n\t\touter.style.width = '100px';\n\t\tinner.style.width = '100%';\n\n\t\touter.appendChild(inner);\n\t\tdocument.body.appendChild(outer);\n\n\t\tconst widthWithoutScrollbar = outer.offsetWidth;\n\n\t\touter.style.overflow = 'scroll';\n\n\t\tconst widthWithScrollbar = inner.offsetWidth;\n\n\t\tdocument.body.removeChild(outer);\n\n\t\treturn widthWithoutScrollbar - widthWithScrollbar;\n\t}\n\n\tpublic static debounce = (fn: () => void, delay = 50) => {\n\t\tlet timer: any;\n\t\treturn () => {\n\t\t\tclearTimeout(timer);\n\t\t\ttimer = setTimeout(() => fn(), delay);\n\t\t};\n\t}\n\n\tpublic static disableBodyScrolling = (className: string = 'disable-scroll') => {\n\t\tdocument.body.classList.add(className);\n\t\tconst fixedEls = document.querySelectorAll('[data-adjust-fixed-scrollbar]') as any;\n\t\tif (window.innerWidth < breakpoints.xl) {\n\t\t\tfixedEls.forEach((element: HTMLElement) => element.style.paddingRight = `${Utils.getScrollbarWidth()}px`);\n\t\t}\n\t}\n\n\tpublic static enableBodyScrolling = (className: string = 'disable-scroll') => {\n\t\tdocument.body.classList.remove(className);\n\t\tconst fixedEls = document.querySelectorAll('[data-adjust-fixed-scrollbar]') as any;\n\t\tfixedEls.forEach((element: HTMLElement) => element.style.paddingRight = '');\n\t}\n\n\tpublic static formatCurrency = (value?: number, decimals?: number) => {\n\t\tif (value == null) {\n\t\t\treturn '';\n\t\t}\n\n\t\tconst formatter = new Intl.NumberFormat('en-CA', {\n\t\t\tstyle: 'currency',\n\t\t\tcurrency: 'CAD',\n\t\t\tminimumFractionDigits: decimals === undefined ? 2 : decimals,\n\t\t\tmaximumFractionDigits: decimals === undefined ? 2 : decimals,\n\t\t});\n\n\t\treturn formatter.format(value);\n\t}\n\n\tpublic static getNumberWithCommas = (value: number | string | undefined) => {\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tconst parts = value.toString().split('.');\n\t\tparts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n\t\treturn parts.join('.');\n\t}\n\n\tpublic static getAbbreviatedNumber = (value: number) => {\n\t\tif (value >= 1000000) {\n\t\t\treturn value / 1000000 + 'm';\n\t\t} else if (value >= 1000) {\n\t\t\treturn value / 1000 + 'k';\n\t\t}\n\n\t\treturn value.toString();\n\t}\n\n\tpublic static setDocTitle = (value: string | undefined) => {\n\t\tconst titleSuffix = 'Core';\n\t\tif (value) {\n\t\t\tdocument.title = `${value} | ${titleSuffix}`;\n\t\t} else {\n\t\t\tdocument.title = titleSuffix;\n\t\t}\n\t}\n\n\tpublic static shouldMarkError = (error: InputError, touched: boolean) => {\n\t\tconst hasError = error.hasError;\n\t\tconst shouldShow = touched;\n\t\treturn hasError ? shouldShow : false;\n\t}\n\n\tpublic static extractIdToken = (encodedIdToken: string) => {\n\t\t// id token will be decoded to get the username\n\t\tconst decodedToken = Utils.decodeJwt(encodedIdToken);\n\t\tif (!decodedToken) {\n\t\t\treturn null;\n\t\t}\n\t\ttry {\n\t\t\tconst base64IdToken = decodedToken.JWSPayload;\n\t\t\tconst base64Decoded = Utils.base64DecodeStringUrlSafe(base64IdToken);\n\t\t\tif (!base64Decoded) {\n\t\t\t\t// this._requestContext.logger.info('The returned id_token could not be base64 url safe decoded.');\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\t// ECMA script has JSON built-in support\n\t\t\treturn JSON.parse(base64Decoded);\n\t\t} catch (err) {\n\t\t\t// this._requestContext.logger.error('The returned id_token could not be decoded' + err);\n\t\t}\n\t\treturn null;\n\t}\n\n\tpublic static decodeJwt = (jwtToken: string) => {\n\t\tif (Utils.isEmpty(jwtToken)) {\n\t\t\treturn null;\n\t\t}\n\t\tconst idTokenPartsRegex = /^([^\\.\\s]*)\\.([^\\.\\s]+)\\.([^\\.\\s]*)$/;\n\t\tconst matches = idTokenPartsRegex.exec(jwtToken);\n\t\tif (!matches || matches.length < 4) {\n\t\t\t// this._requestContext.logger.warn('The returned id_token is not parseable.');\n\t\t\treturn null;\n\t\t}\n\t\tconst crackedToken = {\n\t\t\theader: matches[1],\n\t\t\tJWSPayload: matches[2],\n\t\t\tJWSSig: matches[3]\n\t\t};\n\t\treturn crackedToken;\n\t}\n\n\tpublic static base64DecodeStringUrlSafe = (base64IdToken: string) => {\n\t\t// html5 should support atob function for decoding\n\t\tbase64IdToken = base64IdToken.replace(/-/g, '+').replace(/_/g, '/');\n\t\tif (window.atob) {\n\t\t\treturn decodeURIComponent(window.atob(base64IdToken)); // jshint ignore:line\n\t\t} else {\n\t\t\treturn decodeURIComponent(Utils.decode(base64IdToken));\n\t\t}\n\t}\n\n\tpublic static decode = (base64IdToken: string) => {\n\t\tconst codes = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\t\tbase64IdToken = String(base64IdToken).replace(/=+$/, '');\n\t\tconst length = base64IdToken.length;\n\t\tif (length % 4 === 1) {\n\t\t\tthrow new Error('The token to be decoded is not correctly encoded.');\n\t\t}\n\t\tlet h1: number;\n\t\tlet h2: number;\n\t\tlet h3: number;\n\t\tlet h4: number;\n\t\tlet bits: number;\n\t\tlet c1: number;\n\t\tlet c2: number;\n\t\tlet c3: number;\n\t\tlet decoded: string = '';\n\t\tfor (let i = 0; i < length; i += 4) {\n\t\t\t// Every 4 base64 encoded character will be converted to 3 byte string, which is 24 bits\n\t\t\t// then 6 bits per base64 encoded character\n\t\t\th1 = codes.indexOf(base64IdToken.charAt(i));\n\t\t\th2 = codes.indexOf(base64IdToken.charAt(i + 1));\n\t\t\th3 = codes.indexOf(base64IdToken.charAt(i + 2));\n\t\t\th4 = codes.indexOf(base64IdToken.charAt(i + 3));\n\t\t\t// tslint:disable\n\t\t\t// For padding, if last two are '='\n\t\t\tif (i + 2 === length - 1) {\n\t\t\t\tbits = (h1 << 18) | (h2 << 12) | (h3 << 6);\n\t\t\t\tc1 = (bits >> 16) & 255;\n\t\t\t\tc2 = (bits >> 8) & 255;\n\t\t\t\tdecoded += String.fromCharCode(c1, c2);\n\t\t\t\tbreak;\n\t\t\t} else if (i + 1 === length - 1) {\n\t\t\t\tbits = (h1 << 18) | (h2 << 12);\n\t\t\t\tc1 = (bits >> 16) & 255;\n\t\t\t\tdecoded += String.fromCharCode(c1);\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tbits = (h1 << 18) | (h2 << 12) | (h3 << 6) | h4;\n\t\t\t// then convert to 3 byte chars\n\t\t\tc1 = (bits >> 16) & 255;\n\t\t\tc2 = (bits >> 8) & 255;\n\t\t\tc3 = bits & 255;\n\t\t\t// tslint:enable\n\t\t\tdecoded += String.fromCharCode(c1, c2, c3);\n\t\t}\n\t\treturn decoded;\n\t}\n\n\tpublic static isEmpty = (str: string) => {\n\t\treturn typeof str === 'undefined' || !str || 0 === str.length;\n\t}\n\n\tpublic static filterPickList = (picklistCode: string, pickListItems: PickListItemResponseDTO[]) => (filter: any, row: any) => {\n\t\tconst picklistitemValue = pickListItems.find((item: PickListItemResponseDTO) => item.code === picklistCode);\n\t\tif (filter.value === 'All') {\n\t\t\treturn true;\n\t\t}\n\t\telse if (filter.value === 'Yes') {\n\t\t\treturn row[picklistCode]!.indexOf(picklistitemValue!.id!) !== -1;\n\t\t} else {\n\t\t\treturn row[picklistCode]!.indexOf(picklistitemValue!.id!) === -1;\n\t\t}\n\t}\n\n\t/** Extracts a value from an HTMLInputElement provided by a React.ChangeEvent */\n\tpublic static extractKeyValueFromChangeEvent = (event: React.ChangeEvent): { name: string, value: any } => {\n\t\tlet value: any = event.target.value;\n\t\tif (value === 'true') {\n\t\t\tvalue = true;\n\t\t}\n\t\tif (value === 'false') {\n\t\t\tvalue = false;\n\t\t}\n\t\tlet name: any = event.target.name;\n\t\tif (event.target.type === 'checkbox') {\n\t\t\tif (event.target.dataset != null) {\n\t\t\t\t// Don't split if single value\n\t\t\t\tif (value === '') {\n\t\t\t\t\tvalue = [];\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value.split(',');\n\t\t\t\t}\n\n\t\t\t\tname = event.target.dataset.name;\n\t\t\t} else {\n\t\t\t\tvalue = event.target.checked;\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tname,\n\t\t\tvalue\n\t\t};\n\t}\n\n\t/*For ant Components */\n\tpublic static extractValueFromDropDown = (dropdownValue: any) => {\n\t\tif (Array.isArray(dropdownValue)) {\n\t\t\tdropdownValue.map(value => value.key);\n\t\t}\n\t}\n}\n\nexport function preventDefault(event: React.FormEvent) {\n\tevent.preventDefault();\n}\n\nexport enum QuotePages {\n\tyourDetails = 'Your Details',\n\tneedsAssessment = 'Needs Assessment',\n\tpersonalizePolicy = 'Personalize Your Policy',\n\tapplyForCoverage = 'Apply for Coverage',\n}\n\nexport enum ApplicationPages {\n\taboutYou = 'About You',\n\thealth = 'Health',\n\tbeneficiaries = 'Beneficiaries',\n\tlifestyle = 'Lifestyle',\n\thistory = 'History',\n\treview = 'Review',\n}\n\nexport function removeItem(arr: any[], value: any) {\n\tvar index = arr.indexOf(value);\n\tif (index > -1) {\n\t arr.splice(index, 1);\n\t}\n\treturn arr;\n}\n\nexport enum NavRoutes {\n\tQuoteAboutYou = '/',\n\tQuoteSelectInsuranceType = '/quote/select-insurance-type',\n\tQuoteYourDetails = '/quote/your-details',\n\tQuoteNeedsAssessmentStep0 = '/quote/needs-assessment',\n\tQuoteNeedsAssessmentStep1 = '/quote/needs-assessment/1',\n\tQuoteNeedsAssessmentStep2 = '/quote/needs-assessment/2',\n\tQuoteNeedsAssessmentStep3 = '/quote/needs-assessment/3',\n\tQuoteNeedsAssessmentStep4 = '/quote/needs-assessment/4',\n\tQuoteNeedsAssessmentStep5 = '/quote/needs-assessment/5',\n\tQuoteNeedsAssessmentStep6 = '/quote/needs-assessment/6',\n\tQuoteNeedsAssessmentStep7 = '/quote/needs-assessment/7',\n\tQuoteNeedsAssessmentStep8 = '/quote/needs-assessment/8',\n\tQuoteSelectPolicy = '/quote/select-policy',\n\tQuoteReviewPolicy = '/quote/select-policy/review',\n\tApplicationAboutYouStep1 = '/application/about-you',\n\tApplicationAboutYouStep2 = '/application/about-you/2',\n\tApplicationAboutYouStep3 = '/application/about-you/3',\n\tApplicationBeneficiariesStep1 = '/application/beneficiaries',\n\tApplicationBeneficiariesStep2 = '/application/beneficiaries/2',\n\tApplicationBeneficiariesStep3 = '/application/beneficiaries/3',\n\tApplicationBeneficiariesStep4 = '/application/beneficiaries/4',\n\tApplicationHealthStep1 = '/application/health',\n\tApplicationHealthStep2 = '/application/health/2',\n\tApplicationHealthStep3 = '/application/health/3',\n\tApplicationHealthStep4 = '/application/health/4',\n\tApplicationHealthStep5 = '/application/health/5',\n\tApplicationLifestyleStep1 = '/application/lifestyle',\n\tApplicationLifestyleStep2 = '/application/lifestyle/2',\n\tApplicationLifestyleStep3 = '/application/lifestyle/3',\n\tApplicationLifestyleStep4 = '/application/lifestyle/4',\n\tApplicationLifestyleStep5 = '/application/lifestyle/5',\n\tApplicationLifestyleStep6 = '/application/lifestyle/6',\n\tApplicationHistoryStep1 = '/application/history',\n\tApplicationReview = '/application/review',\n\tApplicationNextSteps = '/application/review/2',\n\tSign = '/application/sign/:code',\n\tApplicationThankYou = '/application/sign/thank-you',\n}\n\nexport enum ValidationMessages {\n\trequired = 'This field is required.',\n\temail = 'Please enter a valid email address.',\n\tdate = 'Please enter a valid date format (YYYY/MM/DD).',\n\tnumber = 'Please enter a valid number.',\n\tunit = 'Please select a unit of measurement',\n\tage = 'Applicant must be under the age of 65 at time of application.'\n}\n\nexport function shuffle(input: string) {\n\tvar a = input.split(''),\n\t\tn = a.length;\n\n\tfor(var i = n - 1; i > 0; i--) {\n\t\tvar j = Math.floor(Math.random() * (i + 1));\n\t\tvar tmp = a[i];\n\t\ta[i] = a[j];\n\t\ta[j] = tmp;\n\t}\n\treturn a.join('');\n}\n\n\nexport function randomString(length: number = 10) {\n\tconst longString = shuffle('abcdefghijklmnopqrstuvwxyxABCDEFGHIJKLMNOPQRSTUVWXYX1234567890abcdefghijklmnopqrstuvwxyxABCDEFGHIJKLMNOPQRSTUVWXYX1234567890');\n\treturn longString.substr(0, length);\n}\n\nfunction getFormattedDate(date: string) {\n\tconst format = 'YYYY/MM/DD';\n\tconst newDate = moment(date, format, true).format(format);\n\treturn newDate;\n}\n\nexport function validateDate(date: string) {\n\tconst newDate = getFormattedDate(date);\n\tconst validate = moment(newDate).isValid();\n\treturn !validate;\n}\n\nexport function getAgeFromDate(date: string) {\n\tconst newDate = getFormattedDate(date);\n\tconst age = moment().diff(newDate, 'years');;\n\treturn age;\n}\n\nexport default Utils;","import * as React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Spin, Icon } from 'antd';\nimport classNames from 'classnames';\n\ninterface IProps {\n\tonClick?: (e?: any) => any;\n\tchildren?: {};\n\tto?: string | {};\n\ttype?: 'button' | 'submit' | 'reset';\n\tdisabled?: boolean;\n\tclassName?: string;\n\ttabIndex?: number;\n\tloading?: boolean;\n\tstyle?: {};\n}\n\nconst antIcon = ;\n\nconst Button: React.FC = (props: IProps): JSX.Element => {\n\tconst { to, onClick, className, type, disabled, children, tabIndex, loading, ...otherProps } = props;\n\n\tif (to && !disabled) {\n\t\treturn (\n\t\t\t\n\t\t\t\t{children}\n\t\t\t\t{loading && }\n\t\t\t\n\t\t);\n\t}\n\n\treturn (\n\t\t\n\t\t\t{loading && }\n\t\t\t{children}\n\t\t\n\t);\n};\n\nexport default Button;\n","import * as React from 'react';\nimport { Tooltip } from 'antd';\n\n// tslint:disable-next-line\nconst className = require('classnames');\n\ninterface IProps {\n\tonClick?: (value?: {}) => void;\n\ticon?: {};\n\tchildren?: {};\n\tlink?: string;\n\ttitle?: string;\n\tclassName?: string;\n\tstyle?: {};\n\ttype?: 'button' | 'submit' | 'reset';\n\tdisabled?: boolean;\n}\n\nconst IconButton: React.FC = (props) => {\n\tconst Button = (\n\t\t\n\t\t\t{props.icon}\n\t\t\t{props.children}\n\t\t\n\t);\n\n\tif (props.title) {\n\t\treturn (\n\t\t\t\n\t\t\t\t{Button}\n\t\t\t\n\t\t);\n\t}\n\n\treturn Button;\n};\n\nexport default IconButton;\n","import * as React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Tooltip } from 'antd';\n\n// tslint:disable-next-line\nconst className = require('classnames');\n\ninterface IProps {\n\tonClick?: (value?: {}) => void;\n\tchildren?: {};\n\tto: string | {};\n\ttitle?: string;\n\tclassName?: string;\n\tstyle?: {};\n\tdisabled?: boolean;\n}\n\nclass IconLinkButton extends React.Component {\n\tpublic render() {\n\t\tconst LinkElement = (\n\t\t\t {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\treturn this.props.onClick && this.props.onClick();\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{this.props.children}\n\t\t\t\n\t\t);\n\n\t\tif (this.props.title) {\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t{LinkElement}\n\t\t\t\t\n\t\t\t);\n\t\t}\n\n\t\treturn LinkElement;\n\t}\n}\n\nexport default IconLinkButton;\n","import React from 'react';\nimport classNames from 'classnames';\n\ninterface IProps {\n\tclassName?: string;\n\tsize?: string;\n}\n\nconst Spinner: React.FC = ( props: IProps ) => {\n\treturn(\n\t\t\n\t);\n};\n\nexport default Spinner;\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport ReactTable from 'react-table';\nimport 'react-table/react-table.css';\n\nimport { IconChevronLeft, IconChevronRight } from '../../components/icons';\nimport { Spinner } from '.';\nimport { IconButton } from '../buttons';\n\ninterface IProps {\n\tclassName?: string;\n\tfilterable?: boolean;\n\tTableComponent?: React.ReactType;\n\tcolumns?: any[];\n\tdata?: any[];\n\tgetTableProps?: (...args: any[]) => {};\n\tgetTheadFilterThProps?: (...args: any[]) => {};\n\tgetTheadGroupProps?: (...args: any[]) => {};\n\tgetTheadProps?: (...args: any[]) => {};\n\tgetTheadThProps?: (...args: any[]) => {};\n\tgetTbodyProps?: (...args: any[]) => {};\n\tgetTrProps?: (...args: any[]) => {};\n\tgetTdProps?: (...args: any[]) => {};\n\tminRows?: number;\n\thasActions?: boolean;\n\tresizable?: boolean;\n\tsortable?: boolean;\n\tfiltered?: any[];\n\tonFilteredChange?: any;\n\tnoDataText?: string;\n\tshowPagination?: boolean;\n\tonPageChange?: (pageIndex: number) => void;\n\tpage?: number;\n\t// handles clicks on each data table row, if not provided nothing happens\n\tonRowClick?: ({ row, original }: { row?: any, original?: any }) => void;\n\tloading?: boolean;\n}\n\nclass DataTable extends React.Component {\n\tpublic onPageChange = (e: any, callback: () => void) => {\n\t\t// TODO: Find a better way to animate the page\n\t\twindow.scrollTo({\n\t\t\ttop: 0,\n\t\t\tleft: 0,\n\t\t\tbehavior: 'smooth'\n\t\t});\n\t\tcallback();\n\t}\n\n\tpublic getTrProps = (_: any, rowInfo: any) => {\n\t\tconst { onRowClick } = this.props;\n\t\tif (onRowClick) {\n\t\t\treturn {\n\t\t\t\tclassName: 'tr cursor-pointer',\n\t\t\t\tonClick(e: any, handleOriginal: any) {\n\t\t\t\t\tonRowClick(rowInfo);\n\t\t\t\t\tif (handleOriginal) {\n\t\t\t\t\t\thandleOriginal();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t} else {\n\t\t\treturn {\n\t\t\t\tclassName: 'tr '\n\t\t\t};\n\t\t}\n\t}\n\n\tpublic render() {\n\t\tconst {\n\t\t\tclassName,\n\t\t\tfilterable,\n\t\t\thasActions,\n\t\t\tTableComponent,\n\t\t\tcolumns,\n\t\t\tdata,\n\t\t\tshowPagination = true,\n\t\t\tgetTableProps = () => {\n\t\t\t\treturn { className: 'table' };\n\t\t\t},\n\t\t\tgetTheadFilterThProps = () => {\n\t\t\t\treturn { className: 'th' };\n\t\t\t},\n\t\t\tgetTheadGroupProps = () => {\n\t\t\t\treturn { className: 'thead theadgroup' };\n\t\t\t},\n\t\t\tgetTheadProps = () => {\n\t\t\t\treturn { className: 'thead' };\n\t\t\t},\n\t\t\tgetTheadThProps = () => {\n\t\t\t\treturn { className: 'th' };\n\t\t\t},\n\t\t\tgetTbodyProps = () => {\n\t\t\t\treturn { className: 'tbody' };\n\t\t\t},\n\t\t\tgetTdProps = () => {\n\t\t\t\treturn { className: 'td' };\n\t\t\t},\n\t\t\tminRows = 0,\n\t\t\tresizable = false,\n\t\t\tsortable = false,\n\t\t\tnoDataText,\n\t\t\tfiltered,\n\t\t\tonFilteredChange,\n\t\t\tonPageChange,\n\t\t\tpage,\n\t\t\tloading,\n\t\t} = this.props;\n\t\treturn (\n\t\t\t {\n\t\t\t\t\treturn String(row[filter.id]).toLowerCase().includes(String(filter.value).toLowerCase());\n\t\t\t\t}}\n\t\t\t\tTableComponent={TableComponent}\n\t\t\t\tcolumns={columns}\n\t\t\t\tdata={data}\n\t\t\t\tshowPagination={showPagination}\n\t\t\t\tgetTableProps={getTableProps}\n\t\t\t\tgetTheadFilterThProps={getTheadFilterThProps}\n\t\t\t\tgetTheadGroupProps={getTheadGroupProps}\n\t\t\t\tgetTheadProps={getTheadProps}\n\t\t\t\tgetTheadThProps={getTheadThProps}\n\t\t\t\tgetTbodyProps={getTbodyProps}\n\t\t\t\tgetTrProps={this.getTrProps}\n\t\t\t\tgetTdProps={getTdProps}\n\t\t\t\tminRows={minRows}\n\t\t\t\tresizable={resizable}\n\t\t\t\tloading={loading}\n\t\t\t\tLoadingComponent={() => loading ? : null}\n\t\t\t\tsortable={sortable}\n\t\t\t\tPreviousComponent={p => (\n\t\t\t\t\t this.onPageChange(e, p.onClick)}\n\t\t\t\t\t\tdisabled={p.disabled}\n\t\t\t\t\t\tclassName=\"btn-link\"\n\t\t\t\t\t>\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\tNextComponent={p => (\n\t\t\t\t\t this.onPageChange(e, p.onClick)}\n\t\t\t\t\t\tdisabled={p.disabled}\n\t\t\t\t\t\tclassName=\"btn-link\"\n\t\t\t\t\t>\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\tonPageChange={onPageChange}\n\t\t\t\tnoDataText={!loading && noDataText}\n\t\t\t\tpage={page}\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport default DataTable;","var _path;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconDone = function SvgIconDone(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.00021 16.7878L3.6063 11.3939C3.27157 11.0592 2.72885 11.0592 2.39412 11.3939C2.05938 11.7286 2.05938 12.2714 2.39412 12.6061L8.39412 18.6061C8.72885 18.9408 9.27157 18.9408 9.6063 18.6061L21.6063 6.60609C21.941 6.27135 21.941 5.72864 21.6063 5.3939C21.2716 5.05917 20.7289 5.05917 20.3941 5.3939L9.00021 16.7878Z\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconDone, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-done.a1b32d83.svg\";\nexport { ForwardRef as ReactComponent };","import * as React from 'react';\nimport Utils from '../../common/utils';\nimport { Button } from '../buttons';\n\n// tslint:disable\nconst Modal = require('react-modal');\nconst classNames = require('classnames');\n// tslint:disable\n\ninterface IProps {\n\tclassName?: string;\n\theaderChildren?: {};\n\tchildren?: {};\n\tfooterChildren?: {};\n\tconfirmButtonChildren?: {};\n\tcancelButtonChildren?: {};\n\tconfirmButtonLink?: string;\n\tcancelButtonLink?: string;\n\tconfirmButtonAction?: (value?: {}) => void;\n\tcancelButtonAction?: (value?: {}) => void;\n\tisOpen: boolean;\n\tonRequestClose?: () => any;\n\thideCloseButton?: boolean;\n\tmodalSize?: string;\n}\n\nclass ModalOverlay extends React.Component {\n\tpublic componentWillMount() {\n\t\tModal.setAppElement('body');\n\t}\n\n\tpublic componentWillReceiveProps(nextProps: any) {\n\t\tif (nextProps.isOpen) {\n\t\t\tthis.handleOpen();\n\t\t} else {\n\t\t\tthis.handleClose();\n\t\t}\n\t}\n\n\tpublic componentWillUnmount() {\n\t\tthis.handleClose();\n\t}\n\n\tpublic handleOpen() {\n\t\tdocument.body.classList.add('modal-open');\n\t\tif (window.innerHeight < document.body.offsetHeight) {\n\t\t\tdocument.body.style.paddingRight = `${Utils.getScrollbarWidth()}px`;\n\t\t}\n\t}\n\n\tpublic handleClose() {\n\t\tdocument.body.classList.remove('modal-open');\n\t\tdocument.body.style.paddingRight = '';\n\t}\n\n\tpublic render() {\n\t\tconst {\n\t\t\tclassName,\n\t\t\tisOpen,\n\t\t\tchildren,\n\t\t\tonRequestClose,\n\t\t\thideCloseButton,\n\t\t\theaderChildren,\n\t\t\tfooterChildren,\n\t\t\tcancelButtonChildren,\n\t\t\tcancelButtonAction,\n\t\t\tcancelButtonLink,\n\t\t\tconfirmButtonChildren,\n\t\t\tconfirmButtonAction,\n\t\t\tconfirmButtonLink,\n\t\t\tmodalSize\n\t\t} = this.props;\n\t\treturn (\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t{!hideCloseButton && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\t{headerChildren &&
{headerChildren}
}\n\t\t\t\t\t
{children}
\n\t\t\t\t\t{(footerChildren || cancelButtonChildren || confirmButtonChildren) && (\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t{cancelButtonChildren && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{confirmButtonChildren && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{footerChildren}\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t\n\t\t);\n\t}\n}\n\nexport default ModalOverlay;\n","import * as React from 'react';\nimport classNames from 'classnames';\n\nimport Utils from 'common/utils';\n\ninterface IProps {\n\tchildren: {};\n\tclassName?: string;\n\ttitle?: string;\n}\n\nconst Page: React.FC = ( props: IProps ): JSX.Element => {\n\tconst { className, children, title } = props;\n\n\tReact.useEffect(() => {\n\t\tif (title && title !== '') {\n\t\t\tUtils.setDocTitle(props.title);\n\t\t}\n\t});\n\n\treturn (\n\t\t
\n\t\t\t{children}\n\t\t
\n\t);\n};\n\nexport default Page;\n","import React from 'react';\nimport { Spinner } from 'components/common';\n\ninterface IProps {\n\tchildren: any;\n\tisLoading?: boolean;\n}\n\nexport const LoadContainer: React.FC = ( props: IProps ) => {\n\tif (props.isLoading) {\n\t\treturn (\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t);\n\t}\n\treturn props.children;\n};\n","import React from 'react';\nimport { Page } from 'components/common';\nimport { HaveAQuestion } from 'components/cpaipw';\nimport classNames from 'classnames';\n\ninterface IProps {\n\tchildren: any;\n\tsidebar?: JSX.Element | null;\n\tlargeColumn?: boolean;\n}\n\nexport const QuoteContainer: React.FC = ( props: IProps ) => {\n\tconst columnClasses = props.largeColumn ? 'col-lg-8' : 'col-lg-6 offset-sm-1 col-sm-10';\n\treturn (\n\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t{props.children}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{props.sidebar}\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n","var _path;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconError = function SvgIconError(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n style: {\n fill: \"currentColor\"\n },\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 2C17.523 2 22 6.478 22 12C22 17.522 17.523 22 12 22C6.477 22 2 17.522 2 12C2 6.478 6.477 2 12 2ZM12 3.667C7.405 3.667 3.667 7.405 3.667 12C3.667 16.595 7.405 20.333 12 20.333C16.595 20.333 20.333 16.595 20.333 12C20.333 7.405 16.595 3.667 12 3.667ZM11.9987 14.5022C12.5502 14.5022 12.9973 14.9494 12.9973 15.5009C12.9973 16.0524 12.5502 16.4996 11.9987 16.4996C11.4471 16.4996 11 16.0524 11 15.5009C11 14.9494 11.4471 14.5022 11.9987 14.5022ZM11.9945 7C12.3742 6.9997 12.6882 7.2816 12.7381 7.64764L12.7451 7.7494L12.7487 12.251C12.749 12.6652 12.4135 13.0013 11.9993 13.0016C11.6196 13.0019 11.3055 12.72 11.2556 12.354L11.2487 12.2522L11.2451 7.7506C11.2447 7.33639 11.5802 7.00033 11.9945 7Z\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconError, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-error.93e98239.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport classNames from 'classnames';\nimport {ReactComponent as Done} from 'assets/icons/icon-done.svg';\n\ninterface IProps {\n\tname?: string;\n\tlabel?: string;\n\tvalue?: string;\n\tisActive: boolean;\n\tisToggle?: boolean;\n\tonClick: () => void;\n\tclassName?: string;\n\tdisabled?: boolean;\n\thideBorder?: boolean;\n}\n\nexport const CheckboxButton: React.FC = (props: IProps) => {\n\tconst btnToggleClassName = 'form-btn-toggle align-items-center';\n\tconst btnCheckboxClassName = 'form-btn-checkbox d-flex align-items-start';\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n\n};","import React from 'react';\nimport IconHelpChat from 'assets/img/icon-help-chat.svg';\ninterface IProps {\n}\n\nexport const HaveAQuestion: React.FC = ( props: IProps ) => {\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\"Talk\n\t\t\t\t

Have a question?

\n\t\t\t\tTalk to an expert!\n\t\t\t\t{/* \n\t\t\t\t */}\n\t\t\t\tContact us\n\t\t\t
\n\t\t
\n\t);\n};","import React from 'react';\nimport classNames from 'classnames';\n\ninterface IProps {\n\tcurrentstep: number;\n\ttotalSteps: number;\n}\n\nexport const Steps: React.FC = ( props: IProps ) => {\n\tconst steps = [];\n\n\tfor (let i=1; i <= props.totalSteps; i++) {\n\t\tsteps.push(\n\t\t\t props.currentstep && 'bg-gray-200',\n\t\t\t\t\t\ti < props.currentstep && 'bg-secondary-dark',\n\t\t\t\t\t\ti < props.totalSteps && 'mr-1',\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t\n\t\t\t

Step {props.currentstep} of {props.totalSteps}

\n\t\t\t
\n\t\t\t\t{steps}\n\t\t\t
\n\t\t
\n\t);\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport {ReactComponent as Done} from 'assets/icons/icon-done.svg';\n\ninterface IProps {\n\tname?: string;\n\tlabel?: string;\n\tvalue?: string;\n\tisActive: boolean;\n\tisToggle?: boolean;\n\tonClick: () => void;\n\tclassName?: string;\n\tdisabled?: boolean;\n}\n\nexport const RadioButton: React.FC = (props: IProps) => {\n\tconst btnToggleClassName = 'form-btn-toggle';\n\tconst btnRadioClassName = 'form-btn-radio mb-3 d-flex align-items-start';\n\n\treturn (\n\t\t\n\t);\n};","import classNames from 'classnames';\nimport { removeItem } from 'common/utils';\nimport * as React from 'react';\nimport { CheckboxButton } from './CheckboxButton';\n\nexport interface CheckboxOption {\n\tlabel: string;\n\tvalue: string;\n}\n\ninterface IProps {\n\tname: string;\n\toptions: CheckboxOption[];\n\tonChange: (value: string[]) => void;\n\tclassName?: string;\n\tvalue: string[];\n\tdisabled?: boolean;\n}\n\nexport const CheckboxGroup: React.FC = (props: IProps) => {\n\tconst onChange = (val: string) => props.onChange(handleSelect(val));\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.options.map((option, key) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t onChange(option.value)}\n\t\t\t\t\t\t\tdisabled={props.disabled}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t\n\t\t\n\t);\n\n\tfunction handleSelect(val: string) {\n\t\tif ( props.value === null || props.value === undefined || props.value.length === 0 ) {\n\t\t\treturn [val];\n\t\t}\n\t\tif ( props.value.includes(val) ) {\n\t\t\tconst newValues = [...props.value];\n\t\t\tif ( props.value.length === 1) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\treturn removeItem(newValues, val);\n\t\t} else {\n\t\t\treturn [...props.value, val];\n\t\t}\n\t}\n\n};","import * as React from 'react';\nimport { RadioButton } from './RadioButton';\nimport classNames from 'classnames';\n\nexport interface RadioOption {\n\tlabel: string;\n\tvalue: string;\n}\n\ninterface IProps {\n\tname: string;\n\toptions: RadioOption[];\n\tonChange: (val: any) => void;\n\tclassName?: string;\n\tvalue?: string;\n\tdisabled?: boolean;\n\tlist?: boolean; // force show as list even if there are only two options\n\tmultipleBtns?: boolean;\n}\n\nexport const RadioButtonGroup: React.FC = (props: IProps) => {\n\tconst optionCount = props.options.length;\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.options.map((option: RadioOption, key) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t props.onChange(option.value)}\n\t\t\t\t\t\t\tdisabled={props.disabled}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t\n\t\t\n\t);\n};","import classNames from 'classnames';\nimport React from 'react';\n\ninterface IProps {\n\tclassName?: string;\n}\n\nexport const Divider: React.FC = ( props: IProps ): JSX.Element => {\n\n\treturn (\n\t\t
\n\t);\n};\n","import React from 'react';\nimport { Button } from 'components/buttons';\nimport classNames from 'classnames';\nimport { Divider } from './Divider';\n\ninterface IProps {\n\tonClickBack?: () => void;\n\tonClickNext?: (() => void) | ((data: any) => Promise);\n\tclassName?: string;\n\tbackLabel?: string;\n\tnextLabel?: string;\n\ttype?: 'button' | 'reset' | 'submit';\n}\n\nexport const FormButtons: React.FC = ( props: IProps ) => {\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\t{props.onClickBack && (\n\t\t\t\t\t\n\t\t\t\t\t\t{props.backLabel ? props.backLabel : 'Back'}\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t{props.onClickNext && (\n\t\t\t\t\t\n\t\t\t\t\t\t{props.nextLabel ? props.nextLabel : 'Next'}\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t
\n\t\t
\n\t);\n};\n","import classNames from 'classnames';\nimport React from 'react';\n\ninterface IProps {\n\tindex: number;\n\tchildren: {};\n}\n\nexport const QuestionContainer: React.FC = ( props: IProps ) => {\n\tconst displayIndex = () => {\n\t\tlet returnVal = props.index.toString();\n\t\tif (props.index < 10) {\n\t\t\treturnVal = '0' + returnVal;\n\t\t}\n\t\treturn returnVal;\n\t};\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{displayIndex()}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t\t{props.children}\n\t\t\t
\n\t\t
\n\t);\n};\n","import React, { ReactElement } from 'react';\nimport classNames from 'classnames';\nimport { ReactComponent as IconError } from 'assets/icons/icon-error.svg';\n\ninterface IProps {\n\tchildren?: string | ReactElement | ReactElement[];\n\tclassName?: string;\n}\n\nexport const InfoMessage: React.FC = ( props: IProps ) => {\n\tif ( !props.children ) {\n\t\treturn ;\n\t}\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t{typeof props.children === 'string' ? (\n\t\t\t\t

\n\t\t\t\t\t{props.children}\n\t\t\t\t

\n\t\t\t) : (\n\t\t\t\t
\n\t\t\t\t\t{props.children}\n\t\t\t\t
\n\t\t\t)}\n\t\t
\n\t);\n};","import classNames from 'classnames';\nimport React from 'react';\n\ninterface IProps extends React.HTMLAttributes {\n\ttitle?: string;\n}\n\nexport function InfoBox( props: React.PropsWithChildren ) {\n\tconst { title, className, children, ...otherProps } = props;\n\treturn (\n\t\t
\n\t\t\t{title !== undefined && (\n\t\t\t\t
{title}
\n\t\t\t)}\n\t\t\t{children !== undefined &&

{children}

}\n\t\t
\n\t);\n}","import classNames from 'classnames';\nimport React from 'react';\n\ninterface IProps {\n\titem: {\n\t\tlabel: string;\n\t\tdescription?: string;\n\t\tname?: any;\n\t}\n\tprepend?: string;\n\tappend?: string;\n\tindex?: number;\n}\n\nexport function AmountField( props: React.PropsWithChildren ) {\n\tconst { item, index, children, prepend, append } = props;\n\tlet bgColour = '';\n\tif ( index === undefined || ( index !== undefined && index % 2 === 0 ) ) {\n\t\tbgColour = 'bg-gray-100';\n\t}\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t{item.description !== undefined && (\n\t\t\t\t\t\t{item.description}\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t{prepend && (\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
{prepend}
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{children}\n\t\t\t\t\t\t{append && (\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
{append}
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t)}\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n}","import React from 'react';\nimport { RadioButtonGroup } from './RadioButtonGroup';\n\nexport interface IUnit {\n\tlabel: string,\n\tvalue: Units\n}\n\ninterface IProps {\n\tname: string;\n\tunits: IUnit[];\n\tselectedUnit: string;\n\tvalue: string;\n\tid?: string;\n\tmultipleBtns?: boolean;\n\tonChange: (value: string) => void;\n\tonUnitChange: (unit: Units) => void;\n\tonBlur?: () => void;\n}\n\nexport enum Units {\n\tftin = 'ft in',\n\tcm = 'cm',\n\tkg = 'kg',\n\tlbs = 'lbs',\n}\n\nexport const UnitsTypeInput: React.FC = (props: IProps) => {\n\treturn (\n\t\t\n\t\t\t{props.selectedUnit !== Units.ftin && (\n\t\t\t\t
\n\t\t\t\t\t props.onChange(e.target.value)}\n\t\t\t\t\t\tonBlur={(e) => {\n\t\t\t\t\t\t\tif (props.onBlur) {props.onBlur();};\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t\t
\n\t\t\t\t\t\t{props.selectedUnit}\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t)}\n\t\t\t\n\t\t
\n\t);\n};","import { CheckboxOption } from 'components/cpaipw/CheckboxGroup';\nimport { RadioOption } from 'components/cpaipw/RadioButtonGroup';\n\nexport enum PoliciesIds {\n\tadd = 'ADD',\n\tci = 'CI',\n\tcich = 'CICH',\n\tdeplife = 'DEPLIFE',\n\tlife = 'LIFE',\n\tdental = 'DENTAL',\n\tehb = 'EHB',\n\tofficeOH = 'OFFICEOH',\n\tltd = 'LTD',\n};\n\nexport type Policy = {\n\tpolicyId: PoliciesIds;\n\ttitle: string;\n\tmostPopular?: boolean;\n\trequirements: PolicyRequirements;\n\tfields: PolicyFields[];\n}\n\nexport type QuoteFromOliver = {\n\tid?: PoliciesIds;\n\ttitle?: string;\n\tpremium?: number;\n\tparameters: {\n\t\tcoverageAmount?: string\n\t\twaitingPeriod?: string;\n\t}\n}\n\nexport enum PolicyFields {\n\tcoverageAmountField = 'coverageAmountField',\n\tcoverageAmountRadio = 'coverageAmountRadio',\n\tapplyToChildren = 'applyToChildren',\n\twaitingPeriod = 'waitingPeriod',\n}\n\nexport type PolicyRequirements = {\n\tmin?: number;\n\tmax?: number;\n\tmultiplesOf?: number;\n\trequiresLTD?: boolean;\n\tspouseMax: number;\n\tcpaMax?: number;\n\tequalOrLowerThanTLB?: true;\n\tmustBeWorking?: boolean;\n\tgrossMonthlyEarnings?: true;\n\tchildren?: true;\n}\n\nexport type PolicyParams = {\n\tcoverageAmount?: string;\n\twaitingPeriod?: string;\n\tapplyToChildren?: string;\n}\n\nexport type MyPolicy = {\n\tpolicyId: PoliciesIds;\n\tparameters?: PolicyParams;\n}\n\nexport const policies = [\n\t{\n\t\tpolicyId: PoliciesIds.life,\n\t\tmostPopular: true,\n\t\tfields: [\n\t\t\tPolicyFields.coverageAmountField,\n\t\t],\n\t\trequirements: {\n\t\t\tmin: 10000,\n\t\t\tmax: 2000000,\n\t\t\tmultiplesOf: 10000,\n\t\t},\n\t},\n\t{\n\t\tpolicyId: PoliciesIds.ltd,\n\t\tmostPopular: true,\n\t\tfields: [\n\t\t\tPolicyFields.coverageAmountField,\n\t\t\tPolicyFields.waitingPeriod,\n\t\t],\n\t\trequirements: {\n\t\t\tmax: 10000,\n\t\t\tmin: 100,\n\t\t\tmultiplesOf: 100,\n\t\t\tmustBeWorking: true,\n\t\t\tgrossMonthlyEarnings: true,\n\t\t},\n\t},\n\t{\n\t\tpolicyId: PoliciesIds.ci,\n\t\tfields: [\n\t\t\tPolicyFields.coverageAmountField,\n\t\t\tPolicyFields.applyToChildren,\n\t\t],\n\t\trequirements: {\n\t\t\tmin: 0,\n\t\t\tmax: 250000,\n\t\t\tmultiplesOf: 10000,\n\t\t},\n\t},\n\t{\n\t\tpolicyId: PoliciesIds.cich,\n\t\tfields: [],\n\t\trequirements: {},\n\t},\n\t{\n\t\tpolicyId: PoliciesIds.add,\n\t\tfields: [\n\t\t\tPolicyFields.coverageAmountField,\n\t\t],\n\t\trequirements: {\n\t\t\tmin: 10000,\n\t\t\tcpaMax: 1000000,\n\t\t\tmultiplesOf: 10000,\n\t\t\tspouseMax: 500000,\n\t\t\tequalOrLowerThanTLB: true,\n\t\t},\n\t},\n\t{\n\t\tpolicyId: PoliciesIds.deplife,\n\t\tfields: [\n\t\t\tPolicyFields.coverageAmountRadio,\n\t\t],\n\t\trequirements: {\n\t\t\tchildren: true,\n\t\t}\n\t},\n\t{\n\t\tpolicyId: PoliciesIds.officeOH,\n\t\tfields: [\n\t\t\tPolicyFields.coverageAmountField,\n\t\t],\n\t\trequirements: {\n\t\t\tmax: 6000,\n\t\t\tmin: 100,\n\t\t\tmultiplesOf: 100,\n\t\t\trequiresLTD: true,\n\t\t},\n\t},\n] as Policy[];\n\nexport const coverageAmountRadioOptions = [\n\t{\n\t\tlabel: '$10,000',\n\t\tvalue: 'IDLIF10/10',\n\t},\n\t{\n\t\tlabel: '$15,000',\n\t\tvalue: 'IDLIF15/15',\n\t},\n\t{\n\t\tlabel: '$20,000',\n\t\tvalue: 'IDLIF20/20',\n\t},\n\t{\n\t\tlabel: '$25,000',\n\t\tvalue: 'IDLIF25/25',\n\t},\n] as RadioOption[];\n\nexport const applyToChildrenRadioOptions = [\n\t{\n\t\tlabel: 'Yes',\n\t\tvalue: 'yes',\n\t},\n\t{\n\t\tlabel: 'No',\n\t\tvalue: 'no',\n\t},\n] as RadioOption[];\n\nexport const waitingPeriodRadioOptions = [\n\t{\n\t\tlabel: '30 days',\n\t\tvalue: 'ILTD30',\n\t},\n\t{\n\t\tlabel: '90 days',\n\t\tvalue: 'ILTD90',\n\t},\n\t{\n\t\tlabel: '120 days',\n\t\tvalue: 'ILTD120',\n\t},\n\t{\n\t\tlabel: '180 days',\n\t\tvalue: 'ILTD180',\n\t},\n\t{\n\t\tlabel: '365 days',\n\t\tvalue: 'ILTD365',\n\t},\n] as RadioOption[];\n\n\n\nexport interface IPolicyComponentProps {\n\tvalue?: string;\n\tonChange: (val: string) => void;\n\terror?: string;\n\tdescription?: string;\n}\n\nexport const tooltipText = {\n\twaitingPeriod: 'This is the time before benefits begin if disabled.',\n\tapplyToChildren: 'A flat $10,000 benefit will be available for each child.',\n};\n\nexport const cpaStatusRadioOptions = [\n\t{\n\t\tlabel: 'CPA Member',\n\t\tvalue: 'member',\n\t},\n\t{\n\t\tlabel: 'CPA Candidate',\n\t\tvalue: 'student',\n\t},\n\t{\n\t\tlabel: 'Spouse of a CPA Member or CPA Candidate',\n\t\tvalue: 'spouse',\n\t},\n];\n\nexport const cpaBodiesRadioOptions = [\n\t{\n\t\tlabel: 'CPA Alberta',\n\t\tvalue: 'cpaAB',\n\t},\n\t{\n\t\tlabel: 'CPA British Columbia',\n\t\tvalue: 'cpaBC',\n\t},\n\t{\n\t\tlabel: 'CPA Manitoba',\n\t\tvalue: 'cpaMB',\n\t},\n\t{\n\t\tlabel: 'CPA Northwest Territories',\n\t\tvalue: 'cpaNT',\n\t},\n\t{\n\t\tlabel: 'CPA Saskatchewan',\n\t\tvalue: 'cpaSK',\n\t},\n];\n\nexport const whyToBuyOptions = [\n\t{\n\t\tlabel: 'Getting Married',\n\t\tvalue: 'gettingMarried',\n\t},\n\t{\n\t\tlabel: 'Buying a New Home',\n\t\tvalue: 'buyingANewHome',\n\t},\n\t{\n\t\tlabel: 'Birth of a Child',\n\t\tvalue: 'birthOfAChild',\n\t},\n\t{\n\t\tlabel: 'New Job',\n\t\tvalue: 'newJobNewPlaceOfEmployment',\n\t},\n\t{\n\t\tlabel: 'Death of a Loved One',\n\t\tvalue: 'deathOfALovedOne',\n\t},\n\t{\n\t\tlabel: 'I Started my Own Company',\n\t\tvalue: 'iStartedMyOwnCompany',\n\t},\n\t{\n\t\tlabel: 'I’m Becoming a Partner at a Firm',\n\t\tvalue: 'imBecomingAPartnerAtAFirm',\n\t},\n\t{\n\t\tlabel: 'Buying an Income Property',\n\t\tvalue: 'buyingAnIncomeProperty',\n\t},\n\t{\n\t\tlabel: 'Becoming Self-Employed',\n\t\tvalue: 'becomingSelfEmployed',\n\t},\n\t{\n\t\tlabel: 'Becoming Grandparents and Want to Leave a Legacy',\n\t\tvalue: 'becomingGrandparentsAndWantToLeaveALegacy',\n\t},\n\t{\n\t\tlabel: 'Other (Please Specify)',\n\t\tvalue: 'other',\n\t},\n] as CheckboxOption[];\n\nexport function getFormattedValue(value: number | undefined) {\n\tif (value === undefined) {\n\t\treturn '';\n\t}\n\treturn (value).toLocaleString('en');\n}\n\nexport const sortProducts = (products: any[]) => { //products is either OliverProductResponseDTO[] or QuoteFromOliver[]\n\tvar sorted = [] as any[];\n\n\tpolicies.forEach((policy: Policy, index: number) => {\n\t\tvar foundProducts = products.filter((product) => product.id === policy.policyId);\n\t\tif (foundProducts.length > 0) {\n\t\t\tsorted.push({\n\t\t\t\tindex: index,\n\t\t\t\tproduct: foundProducts[0],\n\t\t\t\tsettings: policy\n\t\t\t});\n\t\t}\n\t});\n\n\treturn sorted;\n};\n\nexport const sortProductsByName = (products: MyPolicy[]) => { //products is either OliverProductResponseDTO[] or QuoteFromOliver[]\n\tvar sorted = [] as MyPolicy[];\n\n\tpolicies.forEach((policy: Policy, index: number) => {\n\t\tvar foundProducts = products.filter((product) => product.policyId === policy.policyId);\n\t\tif (foundProducts.length > 0) {\n\t\t\tsorted.push(policy);\n\t\t}\n\t});\n\n\treturn sorted;\n};\n\nexport function getNearest10k(value: number) {\n\treturn Math.ceil(value / 10000) * 10000;\n}","import axios from 'axios';\nconst apiUrl = process.env.REACT_APP_API_URL;\n\nconst oliverAPI = {\n\tgetOliverProducts: async () => {\n\t\treturn axios.get(`${apiUrl}/anon/oliver/products`)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as OliverProductResponseDTO[];\n\t\t\t});\n\t},\n\tgetQuote: async (request: QuoteRequest) => {\n\t\treturn axios.post(`${apiUrl}/anon/oliver/quote`, request)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as OliverQuoteResponseDTO;\n\t\t\t});\n\t},\n\tpostApplicant: async (request: ApplicantRequest) => {\n\t\treturn axios.post(`${apiUrl}/anon/oliver/applicant`, request)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as ApplicantDTO;\n\t\t\t});\n\t},\n\tpostApplication: async (request: ApplicationRequest) => {\n\t\treturn axios.post(`${apiUrl}/anon/oliver/application`, request)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as string;\n\t\t\t});\n\t},\n\tgetSignatureRequest: (request: SignatureLinkRequest) => {\n\t\treturn axios.get(`${apiUrl}/anon/oliver/signlink?code=${request.code}`)\n\t\t\t.then(response => response.data as SignatureDTO);\n\t},\n\tpostSignerInformation: (request: SignatureRequest) => {\n\t\treturn axios.post(`${apiUrl}/anon/oliver/signature`, request)\n\t\t\t.then(response => response.data);\n\t},\n\tpostReport: async (request: ReportRequest | ReportWithSpouseRequest) => {\n\t\treturn axios.post(`${apiUrl}/anon/oliver/report`, request)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as boolean;\n\t\t\t});\n\t},\n\tsendApplyEvent: async (request: ReportWithSpouseRequest) => {\n\t\treturn axios.post(`${apiUrl}/anon/oliver/apply`, request)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as boolean;\n\t\t\t});\n\t},\n\tpostExportApplicants: async (request: any) => {\n\t\treturn axios.get(`${apiUrl}/anon/oliver/exportapplicants`, request)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as boolean;\n\t\t\t});\n\t},\n\tpostAddTagToContact: async (request: {tagName: string, email: string}) => {\n\t\treturn axios.post(`${apiUrl}/anon/oliver/addtagtocontact`, request)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as boolean;\n\t\t\t});\n\t},\n\tpostAddNeedsAssessmentToContact: async (request: ACNeedsAssessmentRequest) => {\n\t\treturn axios.post(`${apiUrl}/anon/oliver/addneedsassessmenttocontact`, request)\n\t\t\t.then((response) => {\n\t\t\t\treturn response.data as boolean;\n\t\t\t});\n\t}\n};\n\nexport default oliverAPI;","import React from 'react';\nimport { ApplicationPages, QuotePages } from 'common/utils';\nimport { Units } from 'components/cpaipw/UnitsTypeInput';\nimport oliverAPI from 'api/OliverAPI';\nimport { getNearest10k } from './policy/utils';\n\n\nexport interface IFormContext {\n\tupsertFormValues: (values: IinitialQuestions & IAboutYou & INeedsAssessment) => Promise;\n\tsetInitialUserData: React.Dispatch>;\n\tsetCurrentPage: (page: QuotePages | ApplicationPages) => void;\n\tsetIsLoading: React.Dispatch>;\n\tsetNeedsAssessment: React.Dispatch>;\n\tsetPersonalData: React.Dispatch>;\n\tsetApplicantId: React.Dispatch>;\n\tsetWeightUnit: React.Dispatch>;\n\tsetHeightUnit: React.Dispatch>;\n\tsetSkippedNeedsAssessment: React.Dispatch>;\n\tsetNeedsAssessmentOnly: React.Dispatch>;\n\tcalculateTotal: () => ITotalNeedsAssessment;\n\tsetSpouseData: React.Dispatch>;\n\tsetSpouseApplicantId: React.Dispatch>;\n\tinitialUserData: IinitialQuestions | null;\n\tpersonalData: IAboutYou;\n\tneedsAssessment: INeedsAssessment;\n\tcurrentPage: QuotePages | ApplicationPages;\n\tisLoading: boolean;\n\tapplicantId: string;\n\tskippedNeedsAssessment: boolean;\n\tweightUnit: Units;\n\theightUnit: Units;\n\tneedsAssessmentOnly?: boolean;\n\trecommended_term_life?: number,\n\t//Spouse\n\tspouseData: ISpouseData | null;\n\tspouseApplicantId: string;\n}\n\nexport const FormContext = React.createContext({\n\tupsertFormValues: async () => undefined,\n\tsetCurrentPage: () => { },\n\tsetInitialUserData: () => { },\n\tsetUserDataLoading: () => { },\n\tsetPersonalData: () => { },\n\tsetIsLoading: () => { },\n\tsetApplicantId: () => { },\n\tsetNeedsAssessment: () => { },\n\tsetWeightUnit: () => { },\n\tsetSkippedNeedsAssessment: () => { },\n\tsetHeightUnit: () => { },\n\tsetNeedsAssessmentOnly: () => { },\n\tcalculateTotal: () => Object(),\n\tsetSpouseData: () => { },\n\tsetSpouseApplicantId: () => { },\n\tneedsAssessment: {},\n\tpersonalData: {},\n\tinitialUserData: {},\n\tisLoading: true,\n\tskippedNeedsAssessment: false,\n\tuserDataLoading: true,\n\tapplicantId: '',\n\theightUnit: Units.ftin,\n\tweightUnit: Units.lbs,\n\tcurrentPage: QuotePages.yourDetails,\n\tneedsAssessmentOnly: false,\n\tspouseData: {},\n\tspouseApplicantId: '',\n\trecommended_term_life: 0,\n} as IFormContext);\n\nexport interface IinitialQuestions {\n\tfirstName?: string;\n\tlastName?: string;\n\temail?: string;\n\tphonenumber?: string;\n\toptIn?: boolean;\n\texistingClient?: string;\n\treferredBy?: string;\n\tsendPDFByEmail?: boolean;\n}\n\nexport type IAboutYou = {\n\tdob?: string;\n\tgender?: string;\n\tusedTobacco?: string;\n\tcpaStatus?: string;\n\tcpaBody?: string;\n}\n\nexport type ISpouseData = {\n\tspouseFirstName?: string;\n\tspouseLastName?: string;\n\tspouseEmail?: string;\n\tspousePhonenumber?: string;\n\tspouseOptIn?: boolean;\n\tspouseDob?: string;\n\tspouseGender?: string;\n\tspouseUsedTobacco?: string;\n}\n\nexport type INeedsAssessment = {\n\treasonToBuy?: string[];\n\treasonToBuyOther?: string;\n\thasMortgage?: string;\n\thasDebts?: string;\n\tdebts?: IDebts;\n\thasSavings?: string;\n\tvalueOfSavings?: ISavings;\n\tannualIncome?: string;\n\tannualIncomeYears?: string;\n\tannualIncomeYearsOther?: string;\n\thasWantChildren?: string;\n\tnumberChildren?: string;\n\tpayFuneral?: string;\n\texpenses?: IExpenses;\n\thasInsurance?: string;\n\texistingInsurance?: IExistingInsurance;\n\tstep?: number;\n\trecommended_term_life?: number;\n}\n\nexport type IDebts = {\n\tlineOfCredit?: string;\n\tcreditCard?: string;\n\tstudentLoans?: string;\n\tautoLoans?: string;\n\tmortgageBalance?: string;\n\tother?: string;\n}\n\nexport type ISavings = {\n\trrsp?: string;\n\ttfsa?: string;\n\tchequingAccounts?: string;\n\tsavingsAccount?: string;\n\tother?: string;\n}\n\nexport type IExpenses = {\n\ttuition?: string;\n\twedding?: string;\n\tlegacy?: string;\n\tfuneral?: string;\n}\n\nexport type IExistingInsurance = {\n\temployer?: string;\n\tbank?: string;\n\tlife?: string;\n}\nexport type ITotalNeedsAssessment = {\n\tdebts: number;\n\tsavings: number;\n\texpenses: number;\n\tinsurance: number;\n\tincome: number;\n\ttotal: number;\n}\n\n\nconst FormProvider = (props: any) => {\n\tconst [initailUserData, setInitialUserData] = React.useState({});\n\tconst [personalData, setPersonalData] = React.useState({}); //({firstName: 'Bob', lastName: 'Ross', cpaStatus: 'member', cpaBody: 'cpaAB'});\n\tconst [needsAssessment, setNeedsAssessment] = React.useState({});\n\tconst [currentPage, setCurrentPage] = React.useState(QuotePages.yourDetails);\n\tconst [isLoading, setIsLoading] = React.useState(false);\n\tconst [skippedNeedsAssessment, setSkippedNeedsAssessment] = React.useState(false);\n\tconst [needsAssessmentOnly, setNeedsAssessmentOnly] = React.useState(undefined);\n\tconst [weightUnit, setWeightUnit] = React.useState(Units.lbs);\n\tconst [heightUnit, setHeightUnit] = React.useState(Units.ftin);\n\tconst [needsAssessmentId, setNeedsAssessmentId] = React.useState('');\n\tconst [applicantId, setApplicantId] = React.useState('');\n\tconst [spouseData, setSpouseData] = React.useState({});\n\tconst [spouseApplicantId, setSpouseApplicantId] = React.useState('');\n\n\tReact.useEffect(() => {\n\t\t// if on this page http://localhost:3000/quote/needs-assessment set needsassessmentonly to true\n\t\tif (window.location.href.includes('needs-assessment')) {\n\t\t\tsetNeedsAssessmentOnly(true);\n\t\t}\n\t}, []);\n\n\n\tconst checkSetCurrentPage = (page: QuotePages | ApplicationPages) => {\n\t\tif (currentPage !== page) {\n\t\t\tsetCurrentPage(page);\n\t\t}\n\t};\n\n\tfunction calculateTotal(): ITotalNeedsAssessment {\n\t\tconst needsAssessmentVals = needsAssessment;\n\t\tlet debts = 0;\n\t\tif (needsAssessmentVals.debts !== undefined) {\n\t\t\tconst debtsKeys = Object.keys(needsAssessmentVals.debts);\n\t\t\tdebtsKeys.forEach((key) => {\n\t\t\t\tconst value = needsAssessmentVals.debts?.[key as keyof IDebts];\n\t\t\t\tif (value !== undefined) {\n\t\t\t\t\tconst numVal = parseInt(value);\n\t\t\t\t\tif (isNaN(numVal) === false) {\n\t\t\t\t\t\tdebts += numVal;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet savings = 0;\n\t\tif (needsAssessmentVals.valueOfSavings !== undefined) {\n\t\t\tconst savingsKeys = Object.keys(needsAssessmentVals.valueOfSavings);\n\t\t\tsavingsKeys.forEach((key) => {\n\t\t\t\tconst value = needsAssessmentVals.valueOfSavings?.[key as keyof ISavings];\n\t\t\t\tif (value !== undefined) {\n\t\t\t\t\tconst numVal = parseInt(value);\n\t\t\t\t\tif (isNaN(numVal) === false) {\n\t\t\t\t\t\tsavings += numVal;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet expenses = 0;\n\n\t\tif (needsAssessmentVals.expenses !== undefined) {\n\t\t\tconst expensesKeys = Object.keys(needsAssessmentVals.expenses);\n\t\t\texpensesKeys.forEach((key) => {\n\t\t\t\tconst value = needsAssessmentVals.expenses?.[key as keyof IExpenses];\n\t\t\t\tif (value !== undefined) {\n\t\t\t\t\tconst numVal = parseInt(value);\n\t\t\t\t\tif (isNaN(numVal) === false) {\n\t\t\t\t\t\texpenses += numVal;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet insurance = 0;\n\t\tif (needsAssessmentVals.existingInsurance !== undefined) {\n\t\t\tconst existingInsuranceKeys = Object.keys(needsAssessmentVals.existingInsurance);\n\t\t\texistingInsuranceKeys.forEach((key) => {\n\t\t\t\tconst value = needsAssessmentVals.existingInsurance?.[key as keyof IExistingInsurance];\n\t\t\t\tif (value !== undefined) {\n\t\t\t\t\tconst numVal = parseInt(value);\n\t\t\t\t\tif (isNaN(numVal) === false) {\n\t\t\t\t\t\tinsurance += numVal;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\tlet income = 0;\n\t\tif (needsAssessmentVals.annualIncome !== undefined && needsAssessmentVals.annualIncomeYears !== undefined) {\n\t\t\tconst annualIncome = parseInt(needsAssessmentVals.annualIncome);\n\t\t\tlet annualIncomeYears = 0;\n\t\t\tif (needsAssessmentVals.annualIncomeYears === 'other' && needsAssessmentVals.annualIncomeYearsOther !== undefined) {\n\t\t\t\tannualIncomeYears = parseInt(needsAssessmentVals.annualIncomeYearsOther);\n\t\t\t} else {\n\t\t\t\tannualIncomeYears = parseInt(needsAssessmentVals.annualIncomeYears);\n\t\t\t}\n\t\t\tif (isNaN(annualIncomeYears) === false) {\n\t\t\t\tincome = annualIncome * annualIncomeYears;\n\t\t\t}\n\t\t}\n\n\t\tconst total = income + expenses + debts - savings - insurance;\n\n\t\treturn {\n\t\t\tincome,\n\t\t\tinsurance,\n\t\t\texpenses,\n\t\t\tdebts,\n\t\t\tsavings,\n\t\t\ttotal,\n\t\t};\n\t}\n\n\tasync function upsertFormValues(values: IinitialQuestions & IAboutYou & INeedsAssessment & ISpouseData) {\n\t\tconst smoking_status = values?.usedTobacco || personalData?.usedTobacco;\n\t\tconst existing_client = values?.existingClient || initailUserData?.existingClient;\n\t\tconst hasSpouse = values?.spouseFirstName !== undefined && values?.spouseFirstName !== '';\n\n\t\t//recommended term life\n\t\tconst calculations = calculateTotal();\n\t\tconst total = getNearest10k(calculations.total);\n\t\tconst recommendation = (total > 2000000) ? 2000000 : (total <= 0) ? 10000 : total;\n\t\tvalues.recommended_term_life = recommendation;\n\n\t\tlet whyToBuy = '';\n\t\tif (values.reasonToBuy !== undefined) {\n\t\t\tvalues.reasonToBuy?.map((v, i) => {\n\t\t\t\tif (i > 0) {\n\t\t\t\t\twhyToBuy = whyToBuy + ', ';\n\t\t\t\t};\n\t\t\t\tif (v === 'other') {\n\t\t\t\t\twhyToBuy = whyToBuy + values.reasonToBuyOther;\n\t\t\t\t} else {\n\t\t\t\t\twhyToBuy = whyToBuy + v;\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (needsAssessment.reasonToBuy !== undefined) {\n\t\t\tneedsAssessment.reasonToBuy?.map((v, i) => {\n\t\t\t\tif (i > 0) {\n\t\t\t\t\twhyToBuy = whyToBuy + ', ';\n\t\t\t\t};\n\t\t\t\tif (v === 'other') {\n\t\t\t\t\twhyToBuy = whyToBuy + needsAssessment.reasonToBuyOther;\n\t\t\t\t} else {\n\t\t\t\t\twhyToBuy = whyToBuy + v;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet incomeYears = undefined;\n\t\tif (values.annualIncomeYears !== undefined) {\n\t\t\tif (values.annualIncomeYears === 'other' && values.annualIncomeYearsOther !== undefined) {\n\t\t\t\tincomeYears = values.annualIncomeYearsOther;\n\t\t\t} else {\n\t\t\t\tincomeYears = values.annualIncomeYears;\n\t\t\t}\n\t\t} else if (needsAssessment.annualIncomeYears !== undefined) {\n\t\t\tif (needsAssessment.annualIncomeYears === 'other' && needsAssessment.annualIncomeYearsOther !== undefined) {\n\t\t\t\tincomeYears = needsAssessment.annualIncomeYearsOther;\n\t\t\t} else {\n\t\t\t\tincomeYears = needsAssessment.annualIncomeYears;\n\t\t\t}\n\t\t}\n\n\t\tvar applicant: ApplicantDTO = {\n\t\t\tfirst_name: values?.firstName || initailUserData?.firstName,\n\t\t\tlast_name: values?.lastName || initailUserData?.lastName,\n\t\t\temail: values?.email || initailUserData?.email,\n\t\t\toptIn: values?.optIn || initailUserData?.optIn,\n\t\t\texisting_client: (existing_client && existing_client === 'yes' ? true : false),\n\t\t\treferred_by: values?.referredBy || initailUserData?.referredBy,\n\t\t\tsendPDFByEmail: values?.sendPDFByEmail || initailUserData?.sendPDFByEmail,\n\t\t\tphoneNumber: values?.phonenumber || initailUserData?.phonenumber,\n\t\t\tcpa_status: values?.cpaStatus || personalData?.cpaStatus,\n\t\t\tcpa_body: values?.cpaBody || personalData?.cpaBody,\n\t\t\tdate_of_birth: values?.dob || personalData?.dob,\n\t\t\tgender: values?.gender || personalData?.gender,\n\t\t\tsmoking_status: (smoking_status && smoking_status === 'yes' ? true : false),\n\t\t\tapplicant_id: applicantId !== '' ? applicantId : undefined,\n\t\t\tdebt_auto: values?.debts?.autoLoans || needsAssessment?.debts?.autoLoans,\n\t\t\tdebt_cc: values?.debts?.creditCard || needsAssessment?.debts?.creditCard,\n\t\t\tdebt_loc: values?.debts?.lineOfCredit || needsAssessment?.debts?.lineOfCredit,\n\t\t\tdebt_student_loan: values?.debts?.studentLoans || needsAssessment?.debts?.studentLoans,\n\t\t\tdebt_other: values?.debts?.other || needsAssessment?.debts?.other,\n\t\t\tdebt_mortgage_balance: values?.debts?.mortgageBalance || needsAssessment?.debts?.mortgageBalance,\n\t\t\tannual_income: values?.annualIncome || needsAssessment?.annualIncome,\n\t\t\tannual_income_years: incomeYears,\n\t\t\twhy_to_buy: whyToBuy !== '' ? whyToBuy : undefined,\n\t\t\texisting_insurance_bank: values?.existingInsurance?.bank || needsAssessment?.existingInsurance?.bank,\n\t\t\texisting_insurance_employer: values?.existingInsurance?.employer || needsAssessment?.existingInsurance?.employer,\n\t\t\texisting_insurance_life: values?.existingInsurance?.life || needsAssessment?.existingInsurance?.life,\n\t\t\texpense_funeral: values?.expenses?.funeral || needsAssessment?.expenses?.funeral,\n\t\t\texpense_legacy: values?.expenses?.legacy || needsAssessment?.expenses?.legacy,\n\t\t\texpense_tuition: values?.expenses?.tuition || needsAssessment?.expenses?.tuition,\n\t\t\texpense_wedding: values?.expenses?.wedding || needsAssessment?.expenses?.wedding,\n\t\t\thas_wants_num_children: values?.numberChildren || needsAssessment?.numberChildren,\n\t\t\tsavings_chequing: values?.valueOfSavings?.chequingAccounts || needsAssessment?.valueOfSavings?.chequingAccounts,\n\t\t\tsavings_other: values?.valueOfSavings?.other || needsAssessment?.valueOfSavings?.other,\n\t\t\tsavings_rrsp: values?.valueOfSavings?.rrsp || needsAssessment?.valueOfSavings?.rrsp,\n\t\t\tsavings_savings: values?.valueOfSavings?.savingsAccount || needsAssessment?.valueOfSavings?.savingsAccount,\n\t\t\tsavings_tfsa: values?.valueOfSavings?.tfsa || needsAssessment?.valueOfSavings?.tfsa,\n\t\t\tspouse_name: hasSpouse ? values?.spouseFirstName + ' ' + values?.spouseLastName : '',\n\t\t\trecommended_term_life: values?.recommended_term_life?.toString(),\n\t\t\tneeds_assessment_id: needsAssessmentId !== '' ? needsAssessmentId : undefined,\n\t\t};\n\n\t\tconst request = { applicant, needsAssessmentOnly } as ApplicantRequest;\n\n\t\ttry {\n\t\t\tconst applicantResp = await oliverAPI.postApplicant(request);\n\n\t\t\tif (applicantResp.applicant_id !== undefined && applicantResp.applicant_id !== '' && applicantResp.applicant_id !== null) {\n\t\t\t\tsetApplicantId(applicantResp.applicant_id);\n\t\t\t\tsetNeedsAssessmentId(applicantResp.needs_assessment_id ?? '');\n\t\t\t}\n\n\t\t\t// if spouse data is present, create another applicant for them and post it with the oliver api, then set the spouse applicant id\n\t\t\tif (hasSpouse) {\n\t\t\t\t// create spouse applicant\n\t\t\t\tvar spouseApplicant: ApplicantDTO = {\n\t\t\t\t\tfirst_name: values?.spouseFirstName,\n\t\t\t\t\tlast_name: values?.spouseLastName,\n\t\t\t\t\tdate_of_birth: values?.spouseDob,\n\t\t\t\t\tgender: values?.spouseGender,\n\t\t\t\t\temail: values?.spouseEmail,\n\t\t\t\t\toptIn: values?.spouseOptIn,\n\t\t\t\t\tphoneNumber: values?.spousePhonenumber,\n\t\t\t\t\tsmoking_status: (values?.spouseUsedTobacco && values?.spouseUsedTobacco === 'yes' ? true : false),\n\t\t\t\t\tcpa_status: 'spouse',\n\t\t\t\t\tcpa_body: values?.cpaBody || personalData?.cpaBody,\n\t\t\t\t\tapplicant_id: spouseApplicantId !== '' ? spouseApplicantId : undefined,\n\t\t\t\t\tspouse_name: applicant.first_name + ' ' + applicant.last_name,\n\t\t\t\t};\n\n\t\t\t\tconst spouseRequest = { applicant: spouseApplicant } as ApplicantRequest;\n\n\t\t\t\tconst spouseResp = await oliverAPI.postApplicant(spouseRequest);\n\n\t\t\t\tif (values?.spouseEmail !== undefined && values?.spouseEmail !== '') {\n\t\t\t\t\toliverAPI.postAddTagToContact({ tagName: 'Add a Spouse Lead', email: values.spouseEmail });\n\t\t\t\t}\n\t\t\t\tsetSpouseApplicantId(spouseResp?.applicant_id ?? '');\n\t\t\t}\n\t\t\treturn applicantResp;\n\n\t\t} catch (error) {\n\t\t\tconsole.error({ error });\n\t\t\treturn undefined;\n\t\t}\n\t}\n\n\treturn (\n\t\t\n\t\t\t{props.children}\n\t\t\n\t);\n};\n\nexport default FormProvider;\n","import classNames from 'classnames';\nimport { FormContext } from 'quote/FormContext';\nimport { getNearest10k } from 'quote/policy/utils';\nimport React from 'react';\n\ninterface IProps {}\n\nexport const NeedsAssessmentSidebarCard: React.FC = ( props: IProps ) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst currentStep = FormCtx.needsAssessment.step || 0;\n\tconst calculations = FormCtx.calculateTotal();\n\tconst total = getNearest10k(calculations.total);\n\tconst recommendation = ( total > 2000000 ) ? 2000000 : ( total <= 0 ) ? 10000 : total;\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
Coverage Amount
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\tDebts\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{currentStep <= 2 ? (\n\t\t\t\t\t\t\t'Calculated after step 2'\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t'$'+calculations.debts.toLocaleString('en')\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\tExpenses\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{currentStep <= 3 ? (\n\t\t\t\t\t\t\t'Calculated after step 2'\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t'$'+(calculations.expenses + calculations.income).toLocaleString('en')\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\tSavings\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{currentStep <= 4 ? (\n\t\t\t\t\t\t\t'Calculated after step 3'\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t'-$' + calculations.savings.toLocaleString('en')\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\tWorking Total\n\t\t\t\t\t\t{currentStep < 3 ? (\n\t\t\t\t\t\t\t${(0).toLocaleString('en')}\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t${recommendation.toLocaleString('en')}\n\t\t\t\t\t\t)}\n\t\t\t\t\t
\n\t\t\t\t\t{calculations.debts < 10000 && currentStep > 2 ? (\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tAuto-populates a minimum of $10,000 and rounds to the nearest $10,000.\n\t\t\t\t\t\t

\n\t\t\t\t\t) : (\n\t\t\t\t\t\tnull\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n","import React from 'react';\nimport { NumericFormat } from 'react-number-format';\n\ninterface IProps {\n\tname?: string;\n\tvalue?: number | string;\n\tonChange: (value: string) => void;\n}\n\nexport const AmountInput: React.FC = (props: IProps) => {\n\tconst { name, onChange, value } = props;\n\n\treturn (\n\t\t {\n\t\t\t\tonChange(value);\n\t\t\t}}\n\t\t\tdefaultValue={value}\n\t\t\tclassName=\"form-control\"\n\t\t\ttype=\"text\"\n\t\t/>\n\t);\n};","import * as React from 'react';\nimport classNames from 'classnames';\nimport Logo from 'assets/img/cpaipw-2020-logo-colour.svg';\nimport IconLockShield from 'assets/icons/icon-lock-shield.svg';\nimport IconHelpChat from 'assets/icons/icon-help-chat.svg';\nimport IconClose from 'assets/icons/icon-close.svg';\nimport { HaveAQuestion } from 'components/cpaipw';\nimport { FormContext } from 'quote/FormContext';\nimport { ApplicationPages, NavRoutes, QuotePages } from 'common/utils';\nimport { useHistory } from 'react-router-dom';\n\ninterface IProps {\n\tclassName?: string;\n\ttitle?: string;\n}\n\nconst PageHero: React.FC = ( props: IProps ) => {\n\tconst quoteMenuItems = [\n\t\tQuotePages.yourDetails,\n\t\tQuotePages.personalizePolicy,\n\t\tQuotePages.applyForCoverage,\n\t];\n\tconst applicationsMenuItems = [\n\t\tApplicationPages.aboutYou,\n\t\tApplicationPages.beneficiaries,\n\t\tApplicationPages.health,\n\t\tApplicationPages.lifestyle,\n\t\tApplicationPages.history,\n\t\tApplicationPages.review,\n\t];\n\tconst hideTabsPages: string[] = [\n\t\tNavRoutes.QuoteAboutYou,\n\t\tNavRoutes.QuoteSelectInsuranceType,\n\t];\n\n\tconst [navOpen, setNavOpen] = React.useState(false);\n\tconst FormCtx = React.useContext(FormContext);\n\tconst { currentPage } = FormCtx;\n\n\tconst history = useHistory();\n\tconst menuItems = history.location.pathname.includes('/application/') ? applicationsMenuItems : quoteMenuItems;\n\n\tReact.useEffect(() => {\n\t\tif (navOpen) {\n\t\t\tdocument.body.classList.add('navbar-expanded');\n\t\t} else {\n\t\t\tsetTimeout(() =>\n\t\t\t\tdocument.body.classList.remove('navbar-expanded'), 200\n\t\t\t);\n\t\t}\n\t}, [navOpen]);\n\n\tReact.useEffect(() => {\n\t\twindow.scrollTo({top: 0});\n\t}, [history.location.pathname]);\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\"CPAIPW\"\n\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\"Your\n\t\t\t\t\t\t\tYour information is secure with us.\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t\t{(!FormCtx.needsAssessmentOnly && !hideTabsPages.includes(window.location.pathname)) && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\"CPAIPW\"\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\ninterface IHeroTabsProps {\n\tmenuItems: string[];\n\tcurrentPage: string;\n}\n\nconst HeroTabs: React.FC = ( props: IHeroTabsProps ) => {\n\n\treturn (\n\t\t
    \n\t\t\t{props.menuItems.map((item, index) => {\n\t\t\t\treturn (\n\t\t\t\t\t
  • val === props.currentPage) && 'underline')} key={`menu-item${index}`}>\n\t\t\t\t\t\t{item}\n\t\t\t\t\t\t{index + 1}\n\t\t\t\t\t
  • \n\t\t\t\t);\n\t\t\t})}\n\t\t
\n\t);\n};\n\n\nexport default PageHero;","import React from 'react';\nimport { NavLink, useLocation } from 'react-router-dom';\nimport classNames from 'classnames';\nimport { Utils } from 'common/utils';\n\ninterface ITab {\n\tid: number;\n\tto: string;\n\tlabel: string;\n}\n\ninterface IProps {\n\ttabs: ITab[];\n\tclassName?: string;\n}\n\nconst Tabs: React.FC = ( props ) => {\n\tlet location = useLocation();\n\n\tReact.useEffect(() => {\n\t\tUtils.setDocTitle(getTabTitle(location, props.tabs));\n\t}, [location, props.tabs]);\n\n\treturn (\n\t\t
\n\t\t\t{props.tabs.map((tab) => (\n\t\t\t\t\n\t\t\t\t\t{tab.label}\n\t\t\t\t\n\t\t\t))}\n\t\t
\n\t);\n};\n\nfunction getTabTitle(location: any, tabs: any[]) {\n\tlet title = '';\n\n\tconst currentTab = tabs.find((tab: any) => {\n\t\treturn location && (tab.to === location.pathname);\n\t});\n\n\tif (currentTab) {\n\t\ttitle = currentTab.label;\n\t}\n\treturn title;\n}\n\nexport default Tabs;","var _path;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconClose24 = function SvgIconClose24(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 32 32\",\n style: {\n fill: \"#006fba\"\n },\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.6131 5.84946L5.72402 5.72385C6.20467 5.24321 6.96097 5.20623 7.48403 5.61293L7.60964 5.72385L16.0002 14.1133L24.3907 5.72385C24.9114 5.20315 25.7556 5.20315 26.2763 5.72385C26.797 6.24455 26.797 7.08877 26.2763 7.60947L17.8868 16L26.2763 24.3905C26.7569 24.8712 26.7939 25.6275 26.3872 26.1505L26.2763 26.2761C25.7957 26.7568 25.0393 26.7938 24.5163 26.3871L24.3907 26.2761L16.0002 17.8867L7.60964 26.2761C7.08894 26.7968 6.24472 26.7968 5.72402 26.2761C5.20332 25.7554 5.20332 24.9112 5.72402 24.3905L14.1135 16L5.72402 7.60947C5.24338 7.12882 5.2064 6.37252 5.6131 5.84946L5.72402 5.72385L5.6131 5.84946Z\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconClose24, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-close-24.b932b48f.svg\";\nexport { ForwardRef as ReactComponent };","import * as React from 'react';\nimport { Page } from 'components/common';\n\nclass FourOhFourPage extends React.Component<{}, {}> {\n\n\tpublic render() {\n\t\treturn (\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t

404

\n\t\t\t\t\t

Page not found

\n\t\t\t\t\t

Sorry, I'm not sure how you got here but this place doesn't exist.

\n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n}\n\nexport default FourOhFourPage;\n","import * as React from 'react';\n\nimport { Page } from 'components/common';\n\nclass FourOhOnePage extends React.Component<{}, {}> {\n\tpublic render() {\n\t\treturn (\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t

401

\n\t\t\t\t\t

Unauthorized

\n\t\t\t\t\t

Sorry, you do not have access.

\n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n}\n\nexport default FourOhOnePage;\n","import * as React from 'react';\nimport { Link } from 'react-router-dom';\n\nconst PageFooter: React.FC = (): JSX.Element => {\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t© Copyright 2020 CPA Insurance Plans West, All Rights Reserved.\n\t\t\t\t\t\tPrivacy Policy\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default PageFooter;\n","import React from 'react';\nimport classNames from 'classnames';\nimport { ReactComponent as IconError } from 'assets/icons/icon-error.svg';\n\ninterface IProps {\n\tchildren?: string;\n\tclassName?: string;\n}\n\nexport const ErrorMessage: React.FC = ( props: IProps ) => {\n\tif ( !props.children ) {\n\t\treturn ;\n\t}\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t

\n\t\t\t\t{props.children}\n\t\t\t

\n\t\t
\n\t);\n};","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw/RadioButtonGroup';\nimport { FormContext, IinitialQuestions } from 'quote/FormContext';\nimport { useForm, Controller } from 'react-hook-form';\nimport { QuoteContainer, LoadContainer, FormButtons, CheckboxButton } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, preventDefault, QuotePages, ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { PatternFormat } from 'react-number-format';\n\ninterface IProps {\n\tlocation: any;\n}\n\nconst GetStarted: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\n\tconst history = useHistory();\n\tconst validateAreaCode = (value: any) => {\n\t\tconst areaCode = value.substring(4, 5);\n\t\tif (areaCode.includes('0') || areaCode.includes('1')) {\n\t\t\treturn 'Please enter a valid phone number';\n\t\t}\n\t\treturn true;\n\t};\n\n\tconst { control, handleSubmit, errors, trigger, getValues } = useForm({\n\t\tdefaultValues: {\n\t\t\tfirstName: FormCtx.initialUserData?.firstName || '',\n\t\t\tlastName: FormCtx.initialUserData?.lastName || '',\n\t\t\temail: FormCtx.initialUserData?.email || '',\n\t\t\tphonenumber: FormCtx.initialUserData?.phonenumber || '',\n\t\t\toptIn: FormCtx.initialUserData?.optIn,\n\t\t\treferredBy: FormCtx.initialUserData?.referredBy || '',\n\t\t\texistingClient: FormCtx.initialUserData?.existingClient,\n\t\t},\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t});\n\tconst onSubmit = async (values: IinitialQuestions) => {\n\t\tFormCtx.setIsLoading(true);\n\t\tFormCtx.setInitialUserData(values);\n\n\t\tconst result = await FormCtx.upsertFormValues(values);\n\t\tFormCtx.setIsLoading(false);\n\n\t\tif (result !== undefined) {\n\t\t\thistory.replace(NavRoutes.QuoteSelectInsuranceType);\n\t\t} else {\n\t\t\talert('Failed to fetch policy');\n\t\t}\n\t};\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.yourDetails);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tasync function checkParamsValues() {\n\t\t\tconst isValid = await trigger();\n\t\t\tif (isValid === true) {\n\t\t\t\tconst values = getValues();\n\t\t\t\tonSubmit(values);\n\t\t\t}\n\t\t}\n\t\tconst params = new URLSearchParams(props.location.search);\n\t\tif ((params.get('dob') || params.get('gender') || params.get('usedTobacco'))) {\n\n\t\t\tFormCtx.setIsLoading(true);\n\t\t\tsetTimeout(() => {\n\t\t\t\tcheckParamsValues();\n\t\t\t}, 100);\n\t\t}\n\t\tFormCtx.setIsLoading(false);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\n\treturn (\n\t\t\n\t\t\t

Get Started

\n\t\t\t

To help us get started with your quote, please enter your information below.

\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors.firstName?.message}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors.lastName?.message}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors.email?.message}\n\t\t\t\t\t
\n\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors.phonenumber?.message}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors.existingClient?.message}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors.referredBy?.message}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n\n};\n\nexport default GetStarted;\n","var _path, _rect, _rect2, _rect3, _rect4, _path2, _line, _circle, _line2, _ellipse, _line3, _circle2;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconNeedsAssessment = function SvgIconNeedsAssessment(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 153,\n height: 189,\n viewBox: \"0 0 153 189\",\n fill: \"none\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n opacity: 0.4,\n d: \"M76.0774 150.967C118.094 150.967 152.155 117.172 152.155 75.4834C152.155 33.7951 118.094 0 76.0774 0C34.061 0 0 33.7951 0 75.4834C0 117.172 34.061 150.967 76.0774 150.967Z\",\n fill: \"#CCE2F1\"\n })), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: 44.3538,\n y: 32.4936,\n width: 28.0537,\n height: 28.0537,\n rx: 14.0269,\n stroke: \"#006FBA\",\n strokeWidth: 4.63953\n })), _rect2 || (_rect2 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 2.31977,\n y: 44.1713,\n width: 112.122,\n height: 142.48,\n rx: 7.02116,\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 4.63953\n })), _rect3 || (_rect3 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 16.331,\n y: 53.5131,\n width: 84.0993,\n height: 119.128,\n rx: 7.02116,\n fill: \"#00BFFF\",\n stroke: \"#006FBA\",\n strokeWidth: 4.63953\n })), _rect4 || (_rect4 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 28.0073,\n y: 44.1713,\n width: 60.747,\n height: 18.7128,\n rx: 7.02116,\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 4.63953\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M52.3345 101.798C52.3345 103.755 53.8918 105.152 55.7686 105.152C57.6455 105.152 59.2428 103.755 59.2428 101.798C59.2428 99.8813 57.6455 98.4837 55.7686 98.4837C53.8918 98.4837 52.3345 99.8813 52.3345 101.798ZM49.659 81.9117C49.1399 83.1896 49.4993 84.9865 50.8969 85.5855C52.2945 86.1845 54.3311 85.5456 54.7703 84.2677C55.2495 82.91 56.2878 82.351 57.4857 82.351C59.1629 82.351 60.3209 83.509 60.3209 84.707C60.3209 85.5855 59.9615 86.3841 58.5639 87.0231L57.2461 87.5821C53.8918 88.8999 53.0133 91.6153 53.0133 93.572C53.0133 95.8481 54.2512 96.6867 55.7287 96.6867C57.2861 96.6867 58.484 95.5686 58.6038 94.171C58.6837 93.1327 59.4025 92.6136 60.5605 92.2941C63.6752 91.3358 65.9115 88.6204 65.9115 84.7469C65.9115 79.955 62.4773 76.9601 57.4857 76.9601C53.6922 76.9601 50.857 78.797 49.659 81.9117Z\",\n fill: \"#006FBA\"\n })), _line || (_line = /*#__PURE__*/React.createElement(\"line\", {\n x1: 43.1013,\n y1: 120.352,\n x2: 82.8312,\n y2: 120.352,\n stroke: \"#006FBA\",\n strokeWidth: 4.63953,\n strokeLinecap: \"round\"\n })), _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 32.8634,\n cy: 120.259,\n r: 2.7064,\n fill: \"#006FBA\"\n })), _line2 || (_line2 = /*#__PURE__*/React.createElement(\"line\", {\n x1: 43.0833,\n y1: 132.631,\n x2: 82.7384,\n y2: 132.631,\n stroke: \"#006FBA\",\n strokeWidth: 4.63953,\n strokeLinecap: \"round\"\n })), _ellipse || (_ellipse = /*#__PURE__*/React.createElement(\"ellipse\", {\n cx: 32.8588,\n cy: 132.632,\n rx: 2.70183,\n ry: 2.7064,\n fill: \"#006FBA\"\n })), _line3 || (_line3 = /*#__PURE__*/React.createElement(\"line\", {\n x1: 43.1011,\n y1: 145.002,\n x2: 82.831,\n y2: 145.003,\n stroke: \"#006FBA\",\n strokeWidth: 4.63953,\n strokeLinecap: \"round\"\n })), _circle2 || (_circle2 = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 32.8634,\n cy: 145.003,\n r: 2.7064,\n fill: \"#006FBA\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconNeedsAssessment, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-needs-assessment.66b85118.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { ReactComponent as IconClose } from 'assets/icons/icon-close-24.svg';\n\ninterface IProps {\n\tisSelected: boolean;\n\tonClick: () => void;\n}\n\nexport const TogglePolicyButton: React.FC = ( props: IProps ) => {\n\n\treturn (\n\t\t\n\t);\n};\n","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw/RadioButtonGroup';\nimport { FormContext, IAboutYou, ISpouseData, IinitialQuestions } from 'quote/FormContext';\nimport { useForm, Controller } from 'react-hook-form';\nimport { QuoteContainer, LoadContainer, FormButtons } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { getAgeFromDate, NavRoutes, preventDefault, QuotePages, validateDate, ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { PatternFormat } from 'react-number-format';\nimport { cpaBodiesRadioOptions, cpaStatusRadioOptions } from 'quote/policy/utils';\nimport { TogglePolicyButton } from 'quote/policy/TogglePolicyButton';\n\ninterface IProps {\n\tlocation: any;\n}\n\nconst YourDetails: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst urlParams = new URLSearchParams(props.location.search);\n\tconst history = useHistory();\n\tconst [showSpouse, setShowSpouse] = React.useState(FormCtx.spouseApplicantId !== undefined && FormCtx.spouseApplicantId !== '');\n\n\tconst validateAreaCode = (value: any) => {\n\t\tconst areaCode = value.substring(4, 5);\n\t\tif (areaCode.includes('0') || areaCode.includes('1')) {\n\t\t\treturn 'Please enter a valid phone number';\n\t\t}\n\t\treturn true;\n\t};\n\n\tconst { control, handleSubmit, errors, trigger, getValues } = useForm({\n\t\tdefaultValues: {\n\t\t\t...FormCtx.initialUserData,\n\t\t\tdob: urlParams.get('dob') || FormCtx.personalData?.dob || '',\n\t\t\tgender: urlParams.get('gender') || FormCtx.personalData?.gender || '',\n\t\t\tusedTobacco: urlParams.get('usedTobacco') || FormCtx.personalData?.usedTobacco || '',\n\t\t\tcpaStatus: FormCtx.personalData?.cpaStatus || '',\n\t\t\tcpaBody: FormCtx.personalData?.cpaBody || '',\n\t\t\tspouseDob: FormCtx.spouseData?.spouseDob || '',\n\t\t\tspouseGender: FormCtx.spouseData?.spouseGender || '',\n\t\t\tspouseUsedTobacco: FormCtx.spouseData?.spouseUsedTobacco || '',\n\t\t\tspouseFirstName: FormCtx.spouseData?.spouseFirstName || '',\n\t\t\tspouseLastName: FormCtx.spouseData?.spouseLastName || '',\n\t\t\tspouseEmail: FormCtx.spouseData?.spouseEmail || '',\n\t\t\tspousePhonenumber: FormCtx.spouseData?.spousePhonenumber || '',\n\t\t},\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t});\n\n\tconst removeSpouse = () => {\n\t\tsetShowSpouse(false);\n\t\tFormCtx.setSpouseData({});\n\t\tFormCtx.setSpouseApplicantId('');\n\t};\n\n\tconst onSubmit = async (values: IAboutYou & IinitialQuestions & ISpouseData) => {\n\t\tFormCtx.setIsLoading(true);\n\t\tFormCtx.setPersonalData(values);\n\t\tFormCtx.setSpouseData(values);\n\n\t\tconst result = await FormCtx.upsertFormValues(values);\n\t\tFormCtx.setIsLoading(false);\n\n\t\tlet updatePolicy = false;\n\n\t\tif (result !== undefined) {\n\t\t\tif (FormCtx.needsAssessmentOnly === undefined) {\n\t\t\t\tFormCtx.setSkippedNeedsAssessment(true);\n\t\t\t} else {\n\t\t\t\tFormCtx.setSkippedNeedsAssessment(false);\n\t\t\t\tupdatePolicy = true;\n\t\t\t}\n\t\t\thistory.replace(NavRoutes.QuoteSelectPolicy, { updatePolicy: updatePolicy });\n\t\t} else {\n\t\t\talert('Failed to fetch policy');\n\t\t}\n\n\t};\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.yourDetails);\n\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tasync function checkParamsValues() {\n\t\t\tconst isValid = await trigger();\n\t\t\tif (isValid === true) {\n\t\t\t\tconst values = getValues();\n\t\t\t\tonSubmit(values);\n\t\t\t}\n\t\t}\n\t\tconst params = new URLSearchParams(props.location.search);\n\t\tif ((params.get('dob') || params.get('gender') || params.get('usedTobacco'))) {\n\n\t\t\tFormCtx.setIsLoading(true);\n\t\t\tsetTimeout(() => {\n\t\t\t\tcheckParamsValues();\n\t\t\t}, 100);\n\t\t}\n\t\tFormCtx.setIsLoading(false);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\n\treturn (\n\t\t\n\t\t\t

Your Details

\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

You

\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t validateDate(date) ? ValidationMessages.date : getAgeFromDate(date) >= 65 ? ValidationMessages.age : true,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors.dob?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors.gender?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors.usedTobacco?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors.cpaStatus?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors.cpaBody?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\n\t\t\t\t\t{showSpouse ? (\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Your Spouse

\n\t\t\t\t\t\t\t\t\t removeSpouse()} isSelected={true} />\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.spouseFirstName?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.spouseLastName?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t validateDate(date) ? ValidationMessages.date : getAgeFromDate(date) >= 65 ? ValidationMessages.age : true,\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.spouseDob?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.spouseGender?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.spouseEmail?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.spousePhonenumber?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.spouseUsedTobacco?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Would you like to add your spouse?

\n\t\t\t\t\t\t\t\t\t

CPAs and their spouses are both eligible for insurance under our plan. You can enter their information below to get a quote for both of you.

\n\t\t\t\t\t\t\t\t\t

Note: if your spouse is also a CPA, please complete a separate quote.

\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t\t history.push(NavRoutes.QuoteSelectInsuranceType)}\n\t\t\t\t\t\tonClickNext={handleSubmit(onSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n\n};\n\nexport default YourDetails;\n","var _path, _path2, _circle, _path3, _circle2, _path4, _path5, _path6;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconShieldPeople = function SvgIconShieldPeople(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 100,\n height: 69,\n viewBox: \"0 0 100 69\",\n fill: \"none\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M65.6741 65.427C55.6786 63.305 36.2118 50.001 39.7073 11.5872C45.8638 11.6709 57.5312 9.95021 65.7917 2.19464C70.6182 6.52426 78.2955 12.2904 91.4456 11.6231C92.466 19.5028 92.3351 31.0829 88.7923 41.6284C85.2302 52.2315 78.2823 61.6488 65.6741 65.427Z\",\n fill: \"#00BFFF\",\n stroke: \"#006FBA\",\n strokeWidth: 3.18182\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M61.3621 33.8631L64.5992 36.806C65.0301 37.1977 65.6896 37.1929 66.1148 36.795L73.8621 29.5449\",\n stroke: \"#006FBA\",\n strokeWidth: 3.18182,\n strokeLinecap: \"round\"\n })), _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 40.9107,\n cy: 35.2271,\n r: 15.4545,\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3.18182\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M53.628 56.4674C56.45 59.2039 58.1785 62.7884 58.5573 66.5909L24.3973 66.5909C24.7761 62.7884 26.5046 59.2039 29.3265 56.4674C32.541 53.3504 36.9109 51.5909 41.4773 51.5909C46.0437 51.5909 50.4136 53.3504 53.628 56.4674Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3.18182\n })), _circle2 || (_circle2 = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 12.5016,\n cy: 45.4554,\n r: 9.77273,\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3.18182\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20.1661 59.6139C21.8877 61.492 22.9944 63.9477 23.3135 66.5904L1.68649 66.5904C2.00559 63.9477 3.11232 61.492 4.83391 59.6139C6.89259 57.3681 9.65361 56.1358 12.5 56.1358C15.3464 56.1358 18.1074 57.3681 20.1661 59.6139Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3.18182\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M93.8645 45.4554C93.8645 50.7805 89.3088 55.2282 83.5236 55.2282C77.7385 55.2282 73.1827 50.7805 73.1827 45.4554C73.1827 40.1304 77.7385 35.6827 83.5236 35.6827C89.3088 35.6827 93.8645 40.1304 93.8645 45.4554Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3.18182\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M91.7579 59.6139C93.4795 61.492 94.5862 63.9477 94.9053 66.5904L73.2783 66.5904C73.5974 63.9477 74.7041 61.492 76.4257 59.6139C78.4844 57.3681 81.2454 56.1358 84.0918 56.1358C86.9382 56.1358 89.6992 57.3681 91.7579 59.6139Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3.18182\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconShieldPeople, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-shield-people.6829b214.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11, _path12, _path13, _path14, _path15, _path16, _path17, _path18;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconExpenses = function SvgIconExpenses(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 56,\n height: 70,\n viewBox: \"0 0 56 70\",\n fill: \"none\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M0 40.5859C0 37.2722 2.68629 34.5859 6 34.5859H28C31.3137 34.5859 34 37.2722 34 40.5859V57.1735C34 60.4872 31.3137 63.1735 28 63.1735H6C2.68629 63.1735 0 60.4872 0 57.1735V40.5859Z\",\n fill: \"#B0E8FB\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M28 37.8559H6C4.49226 37.8559 3.27 39.0782 3.27 40.5859V57.1735C3.27 58.6812 4.49226 59.9035 6 59.9035H28C29.5077 59.9035 30.73 58.6812 30.73 57.1735V40.5859C30.73 39.0782 29.5077 37.8559 28 37.8559ZM6 34.5859C2.68629 34.5859 0 37.2722 0 40.5859V57.1735C0 60.4872 2.68629 63.1735 6 63.1735H28C31.3137 63.1735 34 60.4872 34 57.1735V40.5859C34 37.2722 31.3137 34.5859 28 34.5859H6Z\",\n fill: \"#006FBA\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M39.049 54.234C39.0552 54.1243 39.0584 54.0138 39.0584 53.9025L39.0584 30.9624C39.0584 30.4735 39.1205 29.9867 39.2432 29.5134L41.7826 19.7206L15.7732 19.7177C12.5848 19.7173 10 22.3019 10 25.4902L10 53.9004C10 54.0137 10.0033 54.1261 10.0097 54.2378L13.9802 57.6953L19.3355 54.2281L24.1553 57.6953L28.975 54.2281L34.3303 57.6953L39.049 54.234Z\",\n fill: \"#00BFFF\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M19.4245 50.5966L24.1553 53.9997L28.886 50.5966L34.2241 54.0527L36.0584 52.7071L36.0584 30.9624C36.0584 30.2195 36.1527 29.4796 36.3392 28.7604L37.9055 22.7201L15.7728 22.7177C14.2415 22.7175 13 23.9588 13 25.4902L13 52.8637L14.2464 53.9491L19.4245 50.5966ZM13.9802 57.6953L10.0097 54.2378C10.0033 54.1261 10 54.0137 10 53.9004L10 25.4902C10 22.3019 12.5848 19.7173 15.7732 19.7177L41.7826 19.7206L39.2432 29.5134C39.1205 29.9867 39.0584 30.4735 39.0584 30.9624L39.0584 53.9025C39.0584 54.0138 39.0552 54.1243 39.049 54.234L34.3303 57.6953L28.975 54.2281L24.1553 57.6953L19.3355 54.2281L13.9802 57.6953Z\",\n fill: \"#006FBA\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M26.3436 3.50719C26.3398 3.59324 26.3379 3.67978 26.3379 3.76677V27.0828C26.3379 27.5659 26.2772 28.047 26.1574 28.515L23.6136 38.4468L49.6231 38.4498C52.8114 38.4501 55.3962 35.8656 55.3962 32.6772V3.76889C55.3962 3.68008 55.3942 3.59175 55.3903 3.50392L51.4161 0L46.0608 3.51041L41.241 0L36.4212 3.51041L31.0659 0L26.3436 3.50719Z\",\n fill: \"#00BFFF\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M45.9709 7.15637L41.241 3.71137L36.511 7.15637L31.173 3.65731L29.3379 5.02026V27.0828C29.3379 27.8169 29.2457 28.5482 29.0636 29.2593L27.4787 35.4473L49.6234 35.4498C51.1547 35.4499 52.3962 34.2086 52.3962 32.6772V4.86369L51.1478 3.76295L45.9709 7.15637ZM51.4161 0L55.3903 3.50392C55.3942 3.59175 55.3962 3.68008 55.3962 3.76889V32.6772C55.3962 35.8656 52.8114 38.4501 49.6231 38.4498L23.6136 38.4468L26.1574 28.515C26.2772 28.047 26.3379 27.5659 26.3379 27.0828V3.76677C26.3379 3.67978 26.3398 3.59324 26.3436 3.50719L31.0659 0L36.4212 3.51041L41.241 0L46.0608 3.51041L51.4161 0Z\",\n fill: \"#006FBA\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.4364 19.7187L15.4364 22.5286C16.965 22.5286 18.2041 23.7678 18.2041 25.2963L18.2041 32.9335C18.2042 35.9807 20.6744 38.451 23.7216 38.451C26.7688 38.451 29.2391 35.9807 29.2391 32.9335L29.2391 19.7187L15.4364 19.7187Z\",\n fill: \"#00BFFF\"\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.4364 19.7187L15.4364 22.5286C15.7929 22.5286 16.1337 22.596 16.4466 22.7187C17.4756 23.1223 18.2041 24.1243 18.2041 25.2963L18.2041 32.9335C18.2042 35.9807 20.6744 38.451 23.7216 38.451C26.7688 38.451 29.2391 35.9807 29.2391 32.9335L29.2391 19.7187L15.4364 19.7187ZM26.2391 22.7187L26.2391 32.9335C26.2391 34.3239 25.112 35.451 23.7216 35.451C22.3313 35.451 21.2042 34.3239 21.2041 32.9335L21.2041 25.2963C21.2041 24.3699 20.9857 23.4945 20.5975 22.7187L26.2391 22.7187Z\",\n fill: \"#006FBA\"\n })), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M36.3254 13.6204C36.3254 11.1129 38.3582 9.08008 40.8657 9.08008V9.08008C43.3733 9.08008 45.4061 11.1129 45.4061 13.6204V13.6204C45.4061 16.128 43.3733 18.1608 40.8657 18.1608V18.1608C38.3582 18.1608 36.3254 16.128 36.3254 13.6204V13.6204Z\",\n fill: \"#B0E8FB\"\n })), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M39.3254 13.6204C39.3254 14.4712 40.015 15.1608 40.8657 15.1608C41.7165 15.1608 42.4061 14.4712 42.4061 13.6204C42.4061 12.7697 41.7165 12.0801 40.8657 12.0801C40.015 12.0801 39.3254 12.7697 39.3254 13.6204ZM40.8657 9.08008C38.3582 9.08008 36.3254 11.1129 36.3254 13.6204C36.3254 16.128 38.3582 18.1608 40.8657 18.1608C43.3733 18.1608 45.4061 16.128 45.4061 13.6204C45.4061 11.1129 43.3733 9.08008 40.8657 9.08008Z\",\n fill: \"#006FBA\"\n })), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M31.7847 21.9748C31.7847 21.0719 32.5167 20.3398 33.4197 20.3398H38.3224C39.2254 20.3398 39.9574 21.0719 39.9574 21.9748C39.9574 22.8778 39.2254 23.6098 38.3224 23.6098H33.4197C32.5167 23.6098 31.7847 22.8778 31.7847 21.9748Z\",\n fill: \"#006FBA\"\n })), _path12 || (_path12 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M41.7749 21.9748C41.7749 21.0719 42.5069 20.3398 43.4099 20.3398H48.3126C49.2156 20.3398 49.9476 21.0719 49.9476 21.9748C49.9476 22.8778 49.2156 23.6098 48.3126 23.6098H43.4099C42.5069 23.6098 41.7749 22.8778 41.7749 21.9748Z\",\n fill: \"#006FBA\"\n })), _path13 || (_path13 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M35.4165 27.4241C35.4165 26.5211 36.1485 25.7891 37.0515 25.7891H45.5865C46.4895 25.7891 47.2215 26.5211 47.2215 27.4241C47.2215 28.327 46.4895 29.0591 45.5865 29.0591H37.0515C36.1485 29.0591 35.4165 28.327 35.4165 27.4241Z\",\n fill: \"#006FBA\"\n })), _path14 || (_path14 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M0 46.7734C0 43.4597 2.68629 40.7734 6 40.7734H39C42.3137 40.7734 45 43.4597 45 46.7734V63.9993C45 67.313 42.3137 69.9993 39 69.9993H6C2.68629 69.9993 0 67.313 0 63.9993V46.7734Z\",\n fill: \"#B0E8FB\"\n })), _path15 || (_path15 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M39 44.0434H6C4.49227 44.0434 3.27 45.2657 3.27 46.7734V63.9993C3.27 65.507 4.49226 66.7293 6 66.7293H39C40.5077 66.7293 41.73 65.507 41.73 63.9993V46.7734C41.73 45.2657 40.5077 44.0434 39 44.0434ZM6 40.7734C2.68629 40.7734 0 43.4597 0 46.7734V63.9993C0 67.313 2.68629 69.9993 6 69.9993H39C42.3137 69.9993 45 67.313 45 63.9993V46.7734C45 43.4597 42.3137 40.7734 39 40.7734H6Z\",\n fill: \"#006FBA\"\n })), _path16 || (_path16 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M29 55.0158C29 51.7559 31.6426 49.1133 34.9025 49.1133H46.463C46.8487 49.1133 47.1615 49.426 47.1615 49.8118V60.2197C47.1615 60.6055 46.8487 60.9182 46.463 60.9182H34.9025C31.6426 60.9182 29 58.2756 29 55.0158V55.0158Z\",\n fill: \"#B0E8FB\"\n })), _path17 || (_path17 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M44.1615 52.1133H34.9025C33.2995 52.1133 32 53.4128 32 55.0158C32 56.6188 33.2995 57.9182 34.9025 57.9182H44.1615V52.1133ZM34.9025 49.1133C31.6426 49.1133 29 51.7559 29 55.0158C29 58.2756 31.6426 60.9182 34.9025 60.9182H46.463C46.8487 60.9182 47.1615 60.6055 47.1615 60.2197V49.8118C47.1615 49.426 46.8487 49.1133 46.463 49.1133H34.9025Z\",\n fill: \"#006FBA\"\n })), _path18 || (_path18 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M37.1734 55.0164C37.1734 55.7687 36.5636 56.3785 35.8113 56.3785C35.0591 56.3785 34.4492 55.7687 34.4492 55.0164C34.4492 54.2641 35.0591 53.6543 35.8113 53.6543C36.5636 53.6543 37.1734 54.2641 37.1734 55.0164Z\",\n fill: \"#006FBA\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconExpenses, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-expenses.bcd3c0e7.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3, _line, _line2, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _line3, _line4, _circle, _circle2, _path11, _path12, _path13, _path14;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconSavings = function SvgIconSavings(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 71,\n height: 70,\n viewBox: \"0 0 71 70\",\n fill: \"none\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M69.2482 61.4265C69.2482 62.2882 68.786 63.1827 67.8122 63.9131C66.8379 64.6438 65.4231 65.1401 63.7967 65.1401C62.1703 65.1401 60.7556 64.6438 59.7813 63.9131C58.8074 63.1827 58.3452 62.2882 58.3452 61.4265C58.3452 60.5648 58.8074 59.6703 59.7813 58.9399C60.7556 58.2092 62.1703 57.7129 63.7967 57.7129C65.4231 57.7129 66.8379 58.2092 67.8122 58.9399C68.786 59.6703 69.2482 60.5648 69.2482 61.4265Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M69.2482 56.2117C69.2482 57.0734 68.786 57.9679 67.8122 58.6983C66.8379 59.429 65.4231 59.9253 63.7967 59.9253C62.1703 59.9253 60.7556 59.429 59.7813 58.6983C58.8074 57.9679 58.3452 57.0734 58.3452 56.2117C58.3452 55.35 58.8074 54.4555 59.7813 53.7251C60.7556 52.9944 62.1703 52.498 63.7967 52.498C65.4231 52.498 66.8379 52.9944 67.8122 53.7251C68.786 54.4555 69.2482 55.35 69.2482 56.2117Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M69.2482 50.9988C69.2482 51.8605 68.786 52.755 67.8122 53.4854C66.8379 54.2161 65.4231 54.7124 63.7967 54.7124C62.1703 54.7124 60.7556 54.2161 59.7813 53.4854C58.8074 52.755 58.3452 51.8605 58.3452 50.9988C58.3452 50.1371 58.8074 49.2426 59.7813 48.5122C60.7556 47.7815 62.1703 47.2852 63.7967 47.2852C65.4231 47.2852 66.8379 47.7815 67.8122 48.5122C68.786 49.2426 69.2482 50.1371 69.2482 50.9988Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _line || (_line = /*#__PURE__*/React.createElement(\"line\", {\n x1: 58.3452,\n y1: 50.998,\n x2: 58.3452,\n y2: 61.4253,\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _line2 || (_line2 = /*#__PURE__*/React.createElement(\"line\", {\n x1: 69.581,\n y1: 50.998,\n x2: 69.581,\n y2: 61.4253,\n stroke: \"#006FBA\",\n strokeWidth: 2.3\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M12.8453 27.5351L12.4803 20.101C12.4668 19.8254 12.7359 19.6247 12.9927 19.7258C14.8763 20.4677 17.4812 21.7789 19.463 23.4548C23.0493 21.9348 27.1923 21.0674 31.6054 21.0674C45.2559 21.0674 56.3219 29.3668 56.3219 39.6047C56.3219 46.0822 51.8921 51.7837 45.1807 55.0981L44.5255 62.9056C44.4584 63.7058 43.7892 64.3212 42.9862 64.3212H38.2439C37.4408 64.3212 36.7717 63.7058 36.7045 62.9056L36.277 57.8114C34.7643 58.0284 33.2025 58.142 31.6054 58.142C29.4605 58.142 26.8252 58.009 24.1132 57.636L23.671 62.9056C23.6039 63.7058 22.9348 64.3212 22.1317 64.3212H17.3894C16.5863 64.3212 15.9172 63.7058 15.85 62.9056L15.2112 55.2926C12.199 53.946 9.82632 52.009 8.95757 49.258C8.52314 48.9336 8.15195 48.6603 7.82587 48.4202L7.82557 48.4199C6.5992 47.5169 6.01084 47.0837 5.09572 46.1685L5.06275 46.128C4.88857 45.9763 4.71747 45.8167 4.55013 45.6494C1.86519 42.9653 1.16414 39.3135 2.98429 37.4927C3.98714 36.4895 5.5461 36.2515 7.19302 36.689C7.92269 33.2251 9.93152 30.0802 12.8453 27.5351Z\",\n fill: \"#00BFFF\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.4803 20.101L13.9785 20.0275V20.0275L12.4803 20.101ZM12.8453 27.5351L13.8321 28.6648L14.3791 28.1869L14.3435 27.4615L12.8453 27.5351ZM12.9927 19.7258L13.5423 18.3302V18.3302L12.9927 19.7258ZM19.463 23.4548L18.4945 24.6002L19.1989 25.1959L20.0484 24.8359L19.463 23.4548ZM45.1807 55.0981L44.5165 53.7532L43.7568 54.1284L43.6859 54.9727L45.1807 55.0981ZM44.5255 62.9056L46.0203 63.031V63.031L44.5255 62.9056ZM36.7045 62.9056L35.2097 63.031V63.031L36.7045 62.9056ZM36.277 57.8114L37.7718 57.6859L37.6387 56.1006L36.064 56.3266L36.277 57.8114ZM24.1132 57.636L24.3176 56.15L22.7508 55.9345L22.6185 57.5106L24.1132 57.636ZM23.671 62.9056L22.1763 62.7801V62.7801L23.671 62.9056ZM15.85 62.9056L17.3448 62.7801V62.7801L15.85 62.9056ZM15.2112 55.2926L16.7059 55.1672L16.6319 54.2847L15.8234 53.9232L15.2112 55.2926ZM8.95757 49.258L10.3879 48.8063L10.2424 48.3454L9.85511 48.0562L8.95757 49.258ZM7.82587 48.4202L8.71528 47.2123L8.71368 47.2111L7.82587 48.4202ZM7.82557 48.4199L6.93616 49.6278L6.93777 49.629L7.82557 48.4199ZM5.09572 46.1685L3.9328 47.1159L3.98103 47.1751L4.03502 47.2291L5.09572 46.1685ZM5.06275 46.128L6.22567 45.1806L6.14471 45.0812L6.04806 44.997L5.06275 46.128ZM4.55013 45.6494L5.61062 44.5886H5.61062L4.55013 45.6494ZM2.98429 37.4927L1.92346 36.4322H1.92346L2.98429 37.4927ZM7.19302 36.689L6.80795 38.1387L8.3351 38.5443L8.66081 36.9982L7.19302 36.689ZM10.9821 20.1746L11.3471 27.6086L14.3435 27.4615L13.9785 20.0275L10.9821 20.1746ZM13.5423 18.3302C12.2283 17.8126 10.9175 18.8581 10.9821 20.1746L13.9785 20.0275C14.0161 20.7927 13.2435 21.4367 12.443 21.1215L13.5423 18.3302ZM20.4316 22.3094C18.2805 20.4904 15.513 19.1063 13.5423 18.3302L12.443 21.1215C14.2396 21.829 16.6819 23.0674 18.4945 24.6002L20.4316 22.3094ZM31.6054 19.5674C26.9977 19.5674 22.655 20.4728 18.8777 22.0737L20.0484 24.8359C23.4436 23.3969 27.3869 22.5674 31.6054 22.5674V19.5674ZM57.8219 39.6047C57.8219 33.9077 54.7395 28.8645 49.9826 25.2968C45.2261 21.7295 38.7239 19.5674 31.6054 19.5674V22.5674C38.1375 22.5674 43.9935 24.555 48.1826 27.6968C52.3713 30.8383 54.8219 35.0637 54.8219 39.6047H57.8219ZM45.8449 56.4431C52.8943 52.9617 57.8219 46.8241 57.8219 39.6047H54.8219C54.8219 45.3403 50.8899 50.6057 44.5165 53.7532L45.8449 56.4431ZM46.0203 63.031L46.6754 55.2236L43.6859 54.9727L43.0308 62.7801L46.0203 63.031ZM42.9862 65.8212C44.569 65.8212 45.8879 64.6083 46.0203 63.031L43.0308 62.7801C43.0288 62.8033 43.0094 62.8212 42.9862 62.8212V65.8212ZM38.2439 65.8212H42.9862V62.8212H38.2439V65.8212ZM35.2097 63.031C35.3421 64.6083 36.661 65.8212 38.2439 65.8212V62.8212C38.2206 62.8212 38.2012 62.8033 38.1992 62.7801L35.2097 63.031ZM34.7823 57.9368L35.2097 63.031L38.1992 62.7801L37.7718 57.6859L34.7823 57.9368ZM31.6054 59.642C33.2736 59.642 34.9065 59.5233 36.49 59.2962L36.064 56.3266C34.622 56.5334 33.1315 56.642 31.6054 56.642V59.642ZM23.9089 59.122C26.6988 59.5057 29.4032 59.642 31.6054 59.642V56.642C29.5178 56.642 26.9517 56.5123 24.3176 56.15L23.9089 59.122ZM25.1658 63.031L25.608 57.7615L22.6185 57.5106L22.1763 62.7801L25.1658 63.031ZM22.1317 65.8212C23.7146 65.8212 25.0334 64.6083 25.1658 63.031L22.1763 62.7801C22.1743 62.8033 22.155 62.8212 22.1317 62.8212V65.8212ZM17.3894 65.8212H22.1317V62.8212H17.3894V65.8212ZM14.3553 63.031C14.4876 64.6083 15.8065 65.8212 17.3894 65.8212V62.8212C17.3661 62.8212 17.3467 62.8033 17.3448 62.7801L14.3553 63.031ZM13.7164 55.4181L14.3553 63.031L17.3448 62.7801L16.7059 55.1672L13.7164 55.4181ZM7.5272 49.7097C8.58189 53.0496 11.4095 55.2361 14.599 56.662L15.8234 53.9232C12.9884 52.6559 11.0707 50.9685 10.3879 48.8063L7.5272 49.7097ZM6.93646 49.628C7.26258 49.8682 7.6301 50.1388 8.06004 50.4599L9.85511 48.0562C9.41619 47.7284 9.04133 47.4524 8.71528 47.2123L6.93646 49.628ZM6.93777 49.629L6.93807 49.6292L8.71368 47.2111L8.71338 47.2109L6.93777 49.629ZM4.03502 47.2291C5.03738 48.2315 5.70672 48.7225 6.93616 49.6278L8.71499 47.2121C7.49167 46.3113 6.98429 45.9358 6.15642 45.1078L4.03502 47.2291ZM3.89983 47.0754L3.9328 47.1159L6.25863 45.221L6.22567 45.1806L3.89983 47.0754ZM3.48964 46.7102C3.68121 46.9017 3.87738 47.0847 4.07744 47.259L6.04806 44.997C5.89976 44.8678 5.75373 44.7316 5.61062 44.5886L3.48964 46.7102ZM1.92346 36.4322C0.556913 37.7992 0.259506 39.7319 0.604697 41.5301C0.951771 43.3381 1.96327 45.1844 3.48964 46.7102L5.61062 44.5886C4.45205 43.4304 3.77055 42.1087 3.5509 40.9645C3.32937 39.8105 3.59152 39.007 4.04513 38.5532L1.92346 36.4322ZM7.57809 35.2392C5.61581 34.718 3.43173 34.9235 1.92346 36.4322L4.04513 38.5532C4.54256 38.0556 5.4764 37.785 6.80795 38.1387L7.57809 35.2392ZM11.8585 26.4054C8.74403 29.1258 6.53319 32.5442 5.72523 36.3798L8.66081 36.9982C9.31218 33.906 11.119 31.0346 13.8321 28.6648L11.8585 26.4054Z\",\n fill: \"#006FBA\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M60.7007 64.8057C60.7007 65.6621 60.2414 66.5518 59.2722 67.2787C58.3025 68.0059 56.8942 68.5001 55.2748 68.5001C53.6555 68.5001 52.2472 68.0059 51.2775 67.2787C50.3083 66.5518 49.849 65.6621 49.849 64.8057C49.849 63.9493 50.3083 63.0596 51.2775 62.3327C52.2472 61.6055 53.6555 61.1113 55.2748 61.1113C56.8942 61.1113 58.3025 61.6055 59.2722 62.3327C60.2414 63.0596 60.7007 63.9493 60.7007 64.8057Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M60.7007 59.6104C60.7007 60.4668 60.2414 61.3565 59.2722 62.0834C58.3025 62.8106 56.8942 63.3048 55.2748 63.3048C53.6555 63.3048 52.2472 62.8106 51.2775 62.0834C50.3083 61.3565 49.849 60.4668 49.849 59.6104C49.849 58.754 50.3083 57.8643 51.2775 57.1374C52.2472 56.4102 53.6555 55.916 55.2748 55.916C56.8942 55.916 58.3025 56.4102 59.2722 57.1374C60.2414 57.8643 60.7007 58.754 60.7007 59.6104Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M60.7007 54.4151C60.7007 55.2715 60.2414 56.1612 59.2722 56.8881C58.3025 57.6153 56.8942 58.1095 55.2748 58.1095C53.6555 58.1095 52.2472 57.6153 51.2775 56.8881C50.3083 56.1612 49.849 55.2715 49.849 54.4151C49.849 53.5587 50.3083 52.669 51.2775 51.9421C52.2472 51.2149 53.6555 50.7207 55.2748 50.7207C56.8942 50.7207 58.3025 51.2149 59.2722 51.9421C60.2414 52.669 60.7007 53.5587 60.7007 54.4151Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _path9 || (_path9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M60.7007 49.2237C60.7007 50.0801 60.2414 50.9698 59.2722 51.6967C58.3025 52.4239 56.8942 52.9181 55.2748 52.9181C53.6555 52.9181 52.2472 52.4239 51.2775 51.6967C50.3083 50.9698 49.849 50.0801 49.849 49.2237C49.849 48.3673 50.3083 47.4776 51.2775 46.7507C52.2472 46.0235 53.6555 45.5293 55.2748 45.5293C56.8942 45.5293 58.3025 46.0235 59.2722 46.7507C60.2414 47.4776 60.7007 48.3673 60.7007 49.2237Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _path10 || (_path10 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M60.7007 44.0264C60.7007 44.8828 60.2414 45.7725 59.2722 46.4994C58.3025 47.2266 56.8942 47.7208 55.2748 47.7208C53.6555 47.7208 52.2472 47.2266 51.2775 46.4994C50.3083 45.7725 49.849 44.8828 49.849 44.0264C49.849 43.17 50.3083 42.2803 51.2775 41.5534C52.2472 40.8262 53.6555 40.332 55.2748 40.332C56.8942 40.332 58.3025 40.8262 59.2722 41.5534C60.2414 42.2803 60.7007 43.17 60.7007 44.0264Z\",\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _line3 || (_line3 = /*#__PURE__*/React.createElement(\"line\", {\n x1: 49.849,\n y1: 44.0293,\n x2: 49.849,\n y2: 64.8068,\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _line4 || (_line4 = /*#__PURE__*/React.createElement(\"line\", {\n x1: 61.1004,\n y1: 44.1406,\n x2: 61.1004,\n y2: 64.9182,\n stroke: \"#006FBA\",\n strokeWidth: 2.2\n })), _circle || (_circle = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 33.1791,\n cy: 17.9799,\n r: 4.6791,\n fill: \"#B0E8FB\",\n stroke: \"#006FBA\",\n strokeWidth: 3\n })), _circle2 || (_circle2 = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 17.4437,\n cy: 34.9719,\n r: 2.31762,\n fill: \"#006FBA\"\n })), _path11 || (_path11 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M25 29C25 29 28.3684 27 33 27C37.6316 27 41 29 41 29\",\n stroke: \"#006FBA\",\n strokeWidth: 3,\n strokeLinecap: \"round\"\n })), _path12 || (_path12 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M56 33.9842C58.1884 33.8555 64.6508 31.7405 63.7239 28.9599C62.797 26.1794 59.8619 26.6424 59.0896 28.5755C58.4731 30.1182 60.2481 34.7528 63.7239 34.3666C65.6549 34.152 66.4272 33.9786 67.972 32.82\",\n stroke: \"#006FBA\",\n strokeWidth: 3,\n strokeLinecap: \"round\"\n })), _path13 || (_path13 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M30.6277 1.97266L30.6277 8.87406\",\n stroke: \"#006FBA\",\n strokeWidth: 3,\n strokeLinecap: \"round\"\n })), _path14 || (_path14 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M35.4963 4.07422V8.70947\",\n stroke: \"#006FBA\",\n strokeWidth: 3,\n strokeLinecap: \"round\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconSavings, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-savings.f36c7c24.svg\";\nexport { ForwardRef as ReactComponent };","var _path, _path2, _path3, _path4, _path5, _rect, _path6, _path7, _path8, _line, _line2, _line3;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgThumbsUp = function SvgThumbsUp(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 152,\n height: 156,\n viewBox: \"0 0 152 156\",\n fill: \"none\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n opacity: 0.4,\n d: \"M81.1926 155.063C120.117 155.063 151.671 123.755 151.671 85.1349C151.671 46.5148 120.117 15.207 81.1926 15.207C42.2686 15.207 10.7145 46.5148 10.7145 85.1349C10.7145 123.755 42.2686 155.063 81.1926 155.063Z\",\n fill: \"#CCE2F1\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M123.629 95.4298C122.806 98.2315 120.655 100.491 117.91 101.44C118.002 101.576 118.093 101.801 118.139 101.937H98.3278C96.0401 101.937 96.0401 106.456 98.3278 106.456H114.89C116.812 106.456 118.459 107.54 119.145 109.212C118.413 112.285 116.446 114.811 113.294 115.494H93.7525C91.4648 115.494 91.4648 120.013 93.7525 120.013H112.054C112.15 120.013 113.93 119.967 114.62 122.317V122.362C112.832 125.801 107.757 128.327 103.727 129.01C100.295 129.597 99.6135 130.139 96.8179 130.682C90.0007 131.942 82.4515 133.072 73.0264 133.434C72.5231 133.483 71.9741 133.483 71.425 133.483H71.2878C55.3657 133.434 46.2609 124.446 46.2609 124.446V90.554C46.2609 90.554 48.5943 83.8208 57.6991 70.2189C68.8629 53.5894 69.1374 65.6549 79.7063 37.0954C80.3469 35.3331 81.5364 33.7515 83.6868 33.887C85.4758 34.0226 86.9353 35.1523 87.3013 36.6436C86.8026 44.5516 85.2928 51.4655 82.726 56.7074C81.1247 60.0514 79.5691 63.2146 78.6998 66.6038C78.3337 68.1402 78.4252 69.1344 78.6998 69.4507C78.7455 69.4959 78.837 69.5863 78.9285 69.6315C78.8828 69.7219 78.8828 69.8574 78.837 69.9478C77.5559 75.0541 79.2488 79.2567 87.1641 79.2567H119.466C121.342 79.2567 122.943 80.3864 123.629 81.9681C123.167 83.5949 122.206 85.0409 120.93 86.1254C121.387 86.5321 121.795 86.9388 122.119 87.4359C121.387 87.9737 120.472 88.3804 119.466 88.3804H98.3278C96.0401 88.3804 96.0401 92.8993 98.3278 92.8993H119.466C121.296 92.8993 122.897 93.8934 123.629 95.4298Z\",\n fill: \"#FFCEBF\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M125.15 86.1364C127.071 87.8084 128.261 90.2034 128.261 92.8695C128.261 96.7512 125.699 100.235 122.13 101.451C123.137 102.901 123.686 104.619 123.686 106.471C123.686 110.855 121.535 114.605 117.372 115.464C119.11 115.464 119.705 118.672 119.339 120.796C118.607 125.044 112.572 128.252 107.947 129.021C104.515 129.608 103.833 130.15 101.038 130.693C92.8023 132.229 83.4687 133.585 71.0697 133.585C53.3632 133.585 43.1146 123.688 42.657 123.236L41.3302 121.926V85.4134L41.559 84.6903C41.6962 84.3785 44.4414 77.3697 53.5463 63.3205C65.7623 44.4315 64.344 59.1179 74.9129 31.4623C76.377 27.5308 79.2137 24.9551 83.057 24.9551L83.606 25.0003C88.227 25.2714 91.7958 28.9317 91.6585 33.315C91.4298 42.6239 89.8742 50.758 86.946 56.7229C85.3446 60.0669 83.789 63.2301 82.9197 66.6193C82.5537 68.1557 82.6452 69.1499 82.9197 69.4662C83.1942 69.7825 84.2923 70.3202 86.8087 70.3202H103.097C104.378 70.3202 105.384 71.3144 105.384 72.5797C105.384 73.845 104.378 74.8391 103.097 74.8391H86.8087C78.8934 74.8391 77.2006 70.6366 78.4816 65.5302C81.0896 55.2271 86.7629 45.6019 87.0832 33.1749C87.1747 31.277 85.4819 29.605 83.3315 29.4695C81.1811 29.3339 79.9915 30.9155 79.351 32.6779C68.782 61.2373 68.5075 49.1718 57.3438 65.8014C48.2389 79.4032 45.9055 86.1364 45.9055 86.1364V120.028C45.9055 120.028 55.0561 129.066 71.0697 129.066C87.0832 129.066 93.4886 126.806 107.215 124.547C109.685 124.14 114.535 122.559 114.535 120.028C114.535 115.554 111.79 115.509 111.698 115.509H102.548C100.26 115.509 100.26 110.99 102.548 110.99H114.535C117.051 110.99 119.11 109.002 119.11 106.471C119.11 103.986 117.051 101.952 114.535 101.952H107.123C104.835 101.952 104.835 97.4336 107.123 97.4336H119.11C121.627 97.4336 123.686 95.3549 123.686 92.8695C123.686 90.3841 121.627 88.3958 119.11 88.3958H107.123C104.835 88.3958 104.835 83.8769 107.123 83.8769H119.11C121.627 83.8769 123.686 81.8886 123.686 79.358C123.686 76.8726 121.627 74.8391 119.11 74.8391H112.247C110.966 74.8391 109.96 73.845 109.96 72.5797C109.96 71.3144 110.966 70.3202 112.247 70.3202H119.11C124.143 70.3202 128.261 74.3872 128.261 79.358C128.261 82.0694 127.071 84.5096 125.15 86.1364Z\",\n fill: \"#000B13\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M105.384 72.5798C105.384 71.3325 104.36 70.3203 103.097 70.3203C101.834 70.3203 100.809 71.3325 100.809 72.5798C100.809 73.827 101.834 74.8392 103.097 74.8392C104.36 74.8392 105.384 73.827 105.384 72.5798Z\",\n fill: \"#000B13\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M39.9113 83.666H6.184C4.10479 83.666 2.41552 84.9716 2.41092 86.5821L2.29879 125.841C2.29419 127.451 3.976 128.757 6.05522 128.757H39.7825C41.8617 128.757 43.551 127.451 43.5556 125.841L43.6677 86.5821C43.6723 84.9716 41.9905 83.666 39.9113 83.666Z\",\n fill: \"#006FBA\"\n })), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n width: 7.5528,\n height: 45.0909,\n rx: 3.7764,\n transform: \"matrix(-1 0 0 1 42.4845 84.6055)\",\n fill: \"#CCE2F1\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M39.9101 83.666H6.18287C4.10366 83.666 2.41439 84.9716 2.40979 86.5821L2.29766 125.841C2.29306 127.451 3.97487 128.757 6.05409 128.757H39.7813C41.8606 128.757 43.5498 127.451 43.5544 125.841L43.6666 86.5821C43.6712 84.9716 41.9893 83.666 39.9101 83.666Z\",\n stroke: \"#000B13\",\n strokeWidth: 4,\n strokeLinejoin: \"round\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M36.7558 104.001C36.7558 105.248 35.7309 106.26 34.4682 106.26C33.2054 106.26 32.1805 105.248 32.1805 104.001V85.9255C32.1805 84.6782 33.2054 83.666 34.4682 83.666C35.7309 83.666 36.7558 84.6782 36.7558 85.9255V104.001Z\",\n fill: \"#000B13\"\n })), _path8 || (_path8 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M36.7558 113.041C36.7558 111.793 35.7309 110.781 34.4682 110.781C33.2054 110.781 32.1805 111.793 32.1805 113.041V122.078C32.1805 123.326 33.2054 124.338 34.4682 124.338C35.7309 124.338 36.7558 123.326 36.7558 122.078V113.041Z\",\n fill: \"#000B13\"\n })), _line || (_line = /*#__PURE__*/React.createElement(\"line\", {\n x1: 2.5,\n y1: -2.5,\n x2: 10.6674,\n y2: -2.5,\n transform: \"matrix(0.492473 0.870328 -0.872423 0.488751 61.3665 8.51562)\",\n stroke: \"#43B02A\",\n strokeWidth: 5,\n strokeLinecap: \"round\"\n })), _line2 || (_line2 = /*#__PURE__*/React.createElement(\"line\", {\n x1: 2.5,\n y1: -2.5,\n x2: 10.6517,\n y2: -2.5,\n transform: \"matrix(-0.0579659 0.998319 -0.998352 -0.0573912 84.1127 0.0605469)\",\n stroke: \"#43B02A\",\n strokeWidth: 5,\n strokeLinecap: \"round\"\n })), _line3 || (_line3 = /*#__PURE__*/React.createElement(\"line\", {\n x1: 2.5,\n y1: -2.5,\n x2: 10.6845,\n y2: -2.5,\n transform: \"matrix(-0.708871 0.705338 -0.708871 -0.705338 108.007 11.334)\",\n stroke: \"#43B02A\",\n strokeWidth: 5,\n strokeLinecap: \"round\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgThumbsUp, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/thumbs-up.0fa9e51a.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { FormContext } from 'quote/FormContext';\nimport { Page } from 'components/common';\nimport { Button } from 'components/buttons';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, QuotePages } from 'common/utils';\nimport { ReactComponent as IconClipBoard } from 'assets/icons/icon-needs-assessment.svg';\nimport { ReactComponent as IconShieldPeople } from 'assets/icons/icon-shield-people.svg';\nimport { ReactComponent as IconExpenses } from 'assets/icons/icon-expenses.svg';\nimport { ReactComponent as IconSavings } from 'assets/icons/icon-savings.svg';\n\ninterface IProps {\n}\n\nconst NeedsAssessmentStep0: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

Get a personalized recommendation by filling out our quick needs assessment.

\n\t\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\t\tIt is important to have Life Insurance, but it is equally important to know WHY you need it.\n\t\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t

A Life Insurance Policy Calculation

\n\t\t\t\t\t\t\t\t\t

In general, a Life Insurance policy is the sum of all your savings and existing Life\n\t\t\t\t\t\t\t\t\t\tInsurance coverage subtracted from the sum of all your debts and forseeable expenses.\n\t\t\t\t\t\t\t\t\t\tThe remaining debt and expenses that have yet to be paid is what we call a \"gap\".\n\t\t\t\t\t\t\t\t\t\tWe then recommend a Life Insurance policy which will pay out the entirety of that gap.

\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\tCalculation Breakdown\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

What's Your Why to Buy?

\n\t\t\t\t\t\t\t

Understand your insurance needs before you select your policy.

\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

Debts & Expenses

\n\t\t\t\t\t\t\t

A high-level view of all your debts and an estimate of your foreseeable everyday expenses and financial goals for larger one-time payments.

\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t

Savings

\n\t\t\t\t\t\t\t

A high-level view of all your current savings and investments.

\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t

Answering each of the questions in this assessment will provide you with a clear picture of your Life Insurance needs.

\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n\tfunction next(skip: boolean) {\n\t\tFormCtx.setSkippedNeedsAssessment(skip);\n\t\tif (skip === true) {\n\t\t\thistory.push(NavRoutes.QuoteSelectPolicy);\n\t\t} else {\n\t\t\thistory.push(NavRoutes.QuoteNeedsAssessmentStep1);\n\t\t}\n\t}\n};\nexport default NeedsAssessmentStep0;\n","import React from 'react';\nimport { FormContext, INeedsAssessment } from 'quote/FormContext';\nimport { useForm, Controller } from 'react-hook-form';\nimport { FormButtons, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { CheckboxGroup } from 'components/cpaipw/CheckboxGroup';\nimport { NavRoutes, QuotePages, ValidationMessages } from 'common/utils';\nimport { ReactComponent as IconShieldPeople } from 'assets/icons/icon-shield-people.svg';\nimport { whyToBuyOptions } from 'quote/policy/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\ninterface IProps {\n}\n\nconst NeedsAssessmentStep1: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\n\tconst { control, handleSubmit, watch, errors, setError, clearErrors } = useForm({\n\t\tdefaultValues: FormCtx.needsAssessment,\n\t});\n\n\tconst onSubmit = (values: INeedsAssessment) => {\n\t\tif (values.reasonToBuy === undefined || values.reasonToBuy?.length === 0 ) {\n\t\t\tsetError('reasonToBuyOther', { message: ValidationMessages.required });\n\t\t\treturn;\n\t\t}\n\t\tvalues.step = 2;\n\t\tFormCtx.setNeedsAssessment({...FormCtx.needsAssessment, ...values});\n\t\tif (!FormCtx.needsAssessmentOnly) {\n\t\t\tFormCtx.upsertFormValues(values);\n\t\t}\n\t\thistory.push(NavRoutes.QuoteNeedsAssessmentStep2);\n\t};\n\tconst watchReasonToBuy = watch('reasonToBuy');\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tclearErrors();\n\t}, [clearErrors, watchReasonToBuy]);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\t

What’s Your Why to Buy?

\n\t\t\t\t\n\t\t\t\t

\n\t\t\t\t\tThere are many reasons an individual takes out a Life Insurance policy and they\n\t\t\t\t\tare often related to big life changes. From the list below identify your reason(s)\n\t\t\t\t\tfor wanting to purchase Life Insurance:\n\t\t\t\t

\n\t\t\t\t

check all that apply

\n\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{watchReasonToBuy?.includes('other') && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\t{errors?.reasonToBuyOther?.message}\n\t\t\t\t
\n\t\t\t\t history.push(FormCtx.needsAssessmentOnly ? NavRoutes.QuoteNeedsAssessmentStep0 : NavRoutes.QuoteSelectPolicy)}\n\t\t\t\t\tonClickNext={handleSubmit(onSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t
\n\t);\n};\nexport default NeedsAssessmentStep1;\n","import React from 'react';\nimport { FormContext } from 'quote/FormContext';\nimport { FormButtons, InfoBox, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, QuotePages } from 'common/utils';\nimport { ReactComponent as IconDebts } from 'assets/icons/icon-expenses.svg';\n\ninterface IProps {\n\tlocation: any;\n}\n\nconst NeedsAssessmentStep2: React.FC = () => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t

Financial Standing – Debts and Expenses

\n\t\t\t\n\t\t\t\n\t\t\t\tIn order to provide your Life Insurance\n\t\t\t\tpolicy estimate, we need to ask you about your current financial standing and foreseeable expenses.\n\t\t\t\n\t\t\t history.push(NavRoutes.QuoteNeedsAssessmentStep1)}\n\t\t\t\tonClickNext={() => history.push(NavRoutes.QuoteNeedsAssessmentStep3)}\n\t\t\t/>\n\t\t
\n\t);\n};\nexport default NeedsAssessmentStep2;\n","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw/RadioButtonGroup';\nimport { FormContext, IDebts, INeedsAssessment } from 'quote/FormContext';\nimport { useForm, Controller } from 'react-hook-form';\nimport { AmountField, FormButtons, NeedsAssessmentSidebarCard, QuoteContainer, Steps, AmountInput } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, QuotePages, ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { ReactComponent as IconDebts } from 'assets/icons/icon-expenses.svg';\n\ninterface IProps {\n\tlocation: any;\n}\n\nconst NeedsAssessmentStep3: React.FC = (props: IProps, index: number) => {\n\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\n\tconst { control, handleSubmit, watch, errors } = useForm({\n\t\tdefaultValues: FormCtx.needsAssessment,\n\t});\n\tconst onSubmit = (values: INeedsAssessment) => {\n\t\tif ( values.debts === undefined ) {\n\t\t\tvalues.debts = {};\n\t\t}\n\t\tdebtsFields.forEach((item) => {\n\t\t\tif ( values.debts !== undefined && (values.debts[item.name] === undefined || values.debts[item.name] === '')) {\n\t\t\t\tvalues.debts[item.name] = '0';\n\t\t\t}\n\t\t});\n\t\tvalues.step = 3;\n\t\tif (!FormCtx.needsAssessmentOnly) {\n\t\t\tFormCtx.upsertFormValues(values);\n\t\t}\n\t\tFormCtx.setNeedsAssessment({...FormCtx.needsAssessment, ...values});\n\t\thistory.push(NavRoutes.QuoteNeedsAssessmentStep4);\n\t};\n\n\tconst watchHasMortgage = watch().hasMortgage;\n\tconst watchHasDebts = watch().hasDebts;\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t}>\n\t\t\t
\n\n\t\t\t\t\n\t\t\t\t

Financial Standing – Debts and Expenses

\n\t\t\t\t\n\t\t\t\t

As a general rule, in the case of a claim, you would want your coverage and savings to pay back all your debt and foreseeable expenses.

\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.hasMortgage?.message}\n\t\t\t\t
\n\n\t\t\t\t{watchHasMortgage === 'yes' && (\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t isNaN(val) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t{errors?.debts?.mortgageBalance?.message}\n\t\t\t\t\t
\n\t\t\t\t)}\n\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t

Line of Credit, Credit Card, Student Loans, Auto Loans, etc.

\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.hasDebts?.message}\n\t\t\t\t
\n\t\t\t\t{watchHasDebts === 'yes' && (\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t(Specify amounts in CAD)\n\t\t\t\t\t\t{debtsFields.filter(v => v.name !== 'mortgageBalance').map((item, index: number) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t ((val !== undefined && val !== null && val !== '') && isNaN(val)) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{errors?.debts?.[item.name]?.message}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t\t history.push(NavRoutes.QuoteNeedsAssessmentStep2)}\n\t\t\t\t\tonClickNext={handleSubmit(onSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nconst debtsFields = [\n\t{\n\t\tlabel: 'Line of Credit',\n\t\tname: 'lineOfCredit',\n\t},\n\t{\n\t\tlabel: 'Credit Card',\n\t\tname: 'creditCard',\n\t},\n\t{\n\t\tlabel: 'Student Loans',\n\t\tname: 'studentLoans',\n\t},\n\t{\n\t\tlabel: 'Auto Loans',\n\t\tname: 'autoLoans',\n\t},\n\t{\n\t\tlabel: 'Other Debts',\n\t\tname: 'other',\n\t\tdescription: '(sum of all other additional debts not listed)',\n\t},\n\t{\n\t\tlabel: 'What is your current mortgage balance?',\n\t\tname: 'mortgageBalance',\n\t}\n] as {\n\tlabel: string;\n\tname: keyof IDebts;\n\tdescription?: string;\n}[];\nexport default NeedsAssessmentStep3;\n","import React from 'react';\nimport { FormContext } from 'quote/FormContext';\nimport { FormButtons, InfoBox, NeedsAssessmentSidebarCard, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, QuotePages } from 'common/utils';\nimport { ReactComponent as IconExpenses } from 'assets/icons/icon-expenses.svg';\n\ninterface IProps {}\n\nconst NeedsAssessmentStep4: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t}>\n\t\t\t\n\t\t\t

Foreseeable Expenses

\n\t\t\t\n\t\t\t

\n\t\t\t\tForeseeable Expenses are predicted based on your payment history and lifestyle. Foreseeable expenses can be divided into two categories:\n\t\t\t

\n\t\t\t\n\t\t\t\tThese expenses can be described as total costs to be incurred on an annual basis. Some key examples include grocery bills,\n\t\t\t\tWi-Fi & internet, cellphone bills, utility payments, transportation payments, extracurriculars, and vacations.\n\t\t\t\n\t\t\t\n\t\t\t\tThese expenses are often related to your stage of life and reflect your financial goals.\n\t\t\t\tThese expenses might be post-secondary tuition for a child or spouse, paying for a child’s wedding, and other\n\t\t\t\tcosts related to your lifestyle. (i) this can also include funeral costs.\n\t\t\t\n\t\t\t history.push(NavRoutes.QuoteNeedsAssessmentStep3)}\n\t\t\t\tonClickNext={() => history.push(NavRoutes.QuoteNeedsAssessmentStep5)}\n\t\t\t/>\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\nexport default NeedsAssessmentStep4;\n","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw/RadioButtonGroup';\nimport { FormContext, INeedsAssessment } from 'quote/FormContext';\nimport { useForm, Controller } from 'react-hook-form';\nimport { AmountField, FormButtons, InfoBox, InfoMessage, NeedsAssessmentSidebarCard, QuoteContainer, Steps, AmountInput } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, QuotePages, ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { ReactComponent as IconExpenses } from 'assets/icons/icon-expenses.svg';\n\ninterface IProps {}\n\nconst NeedsAssessmentStep5: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\n\tconst { control, handleSubmit, errors, watch } = useForm({\n\t\tdefaultValues: FormCtx.needsAssessment,\n\t});\n\tconst onSubmit = (values: INeedsAssessment) => {\n\t\tif ( values.annualIncomeYears !== 'other' ) {\n\t\t\tvalues.annualIncomeYearsOther = undefined;\n\t\t}\n\n\t\tif (!FormCtx.needsAssessmentOnly) {\n\t\t\tFormCtx.upsertFormValues(values);\n\t\t}\n\n\t\tFormCtx.setNeedsAssessment({...FormCtx.needsAssessment, ...values});\n\n\t\thistory.push(NavRoutes.QuoteNeedsAssessmentStep6);\n\t};\n\tconst watchAnnualIncomeYears = watch('annualIncomeYears');\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t}>\n\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t

Foreseeable Expenses

\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\tThese expenses can be described as costs predicted to be accrued annually based on your current lifestyle.\n\t\t\t\t\t\n\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t isNaN(val) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t{errors?.annualIncome?.message}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors?.annualIncomeYears?.message}\n\t\t\t\t\t\t{watchAnnualIncomeYears?.includes('other') && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t isNaN(val) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\tyears\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{errors?.annualIncomeYearsOther?.message}\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t history.push(NavRoutes.QuoteNeedsAssessmentStep4)}\n\t\t\t\t\tonClickNext={handleSubmit(onSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\nexport default NeedsAssessmentStep5;\n","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw/RadioButtonGroup';\nimport { FormContext, IExpenses, INeedsAssessment } from 'quote/FormContext';\nimport { useForm, Controller } from 'react-hook-form';\nimport { FormButtons, QuoteContainer, InfoMessage, Steps, InfoBox, AmountField, NeedsAssessmentSidebarCard, AmountInput } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, QuotePages, ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { ReactComponent as IconExpenses } from 'assets/icons/icon-expenses.svg';\n\ninterface IProps {\n\tlocation: any;\n}\n\nconst NeedsAssessmentStep6: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\n\tconst { control, handleSubmit, errors, watch } = useForm({\n\t\tdefaultValues: FormCtx.needsAssessment,\n\t});\n\tconst onSubmit = (values: INeedsAssessment) => {\n\n\t\tif ( values.expenses === undefined ) {\n\t\t\tvalues.expenses = {};\n\t\t}\n\t\tif ( values.hasWantChildren === 'no' ) {\n\t\t\tvalues.numberChildren = '0';\n\t\t}\n\n\t\texpensesFields.forEach((item) => {\n\t\t\tif ( values.expenses !== undefined && (values.expenses[item.name] === undefined || values.expenses[item.name] === '')) {\n\t\t\t\tvalues.expenses[item.name] = '0';\n\t\t\t}\n\t\t});\n\n\t\tif (!FormCtx.needsAssessmentOnly) {\n\t\t\tFormCtx.upsertFormValues(values);\n\t\t}\n\n\t\tvalues.step = 4;\n\t\tFormCtx.setNeedsAssessment({...FormCtx.needsAssessment, ...values});\n\n\t\thistory.push(NavRoutes.QuoteNeedsAssessmentStep7);\n\t};\n\n\tconst watchHasWantChildren = watch('hasWantChildren');\n\tconst watchPayFuneral = watch('payFuneral');\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t}>\n\t\t\t
\n\t\t\t\t\n\t\t\t\t

Forseeable Expenses

\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tThese are one-time expenses related to your stage of life and life plan.\n\t\t\t\t\n\t\t\t\t

\n\t\t\t\t\tYour financial goals can still be looked after with proper planning, so in the event that you pass,\n\t\t\t\t\tyour debt can be paid back in full, and you can plan to provide additional money to be used by your beneficiaries.\n\t\t\t\t

\n\t\t\t\t

\n\t\t\t\t\tTo calculate the amount of coverage you need to pay your additional expenses, please answer the following questions accordingly:\n\t\t\t\t

\n\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.hasWantChildren?.message}\n\t\t\t\t
\n\t\t\t\t{watchHasWantChildren === 'yes' && (\n\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t (isNaN(val) || val <= 0) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.numberChildren?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tWe’ve estimated the average costs to help you with your decision.\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{expensesFields.filter(v => v.name !== 'funeral').map((item, index: number) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t ((val !== undefined && val !== null && val !== '') && isNaN(val)) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors?.expenses?.[item.name]?.message}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.payFuneral?.message}\n\t\t\t\t
\n\t\t\t\t{watchPayFuneral === 'yes' && (\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t{expensesFields.filter(v => v.name === 'funeral').map((item, index: number) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t isNaN(val) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{errors?.expenses?.[item.name]?.message}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t\t history.push(NavRoutes.QuoteNeedsAssessmentStep5)}\n\t\t\t\t\tonClickNext={handleSubmit(onSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nconst expensesFields = [\n\t{\n\t\tlabel: 'Funeral',\n\t\tname: 'funeral',\n\t\tdescription: 'Avg. $9,000',\n\t},\n\t{\n\t\tlabel: 'Tuition',\n\t\tname: 'tuition',\n\t\tdescription: 'Avg. 4-Year Undergraduate Program $26,772',\n\t},\n\t{\n\t\tlabel: 'Wedding',\n\t\tname: 'wedding',\n\t\tdescription: 'Avg. $30,000',\n\t},\n\t{\n\t\tlabel: 'Legacy',\n\t\tname: 'legacy',\n\t\tdescription: 'Amount is a personal choice',\n\t},\n] as {\n\tlabel: string;\n\tname: keyof IExpenses;\n\tdescription?: string;\n}[];\nexport default NeedsAssessmentStep6;\n","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw/RadioButtonGroup';\nimport { FormContext, IExistingInsurance, INeedsAssessment, ISavings } from 'quote/FormContext';\nimport { Controller, useForm } from 'react-hook-form';\nimport { AmountField, FormButtons, LoadContainer, NeedsAssessmentSidebarCard, QuoteContainer, Steps, AmountInput } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, QuotePages, ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { ReactComponent as IconSavings } from 'assets/icons/icon-savings.svg';\n\ninterface IProps {\n\tlocation: any;\n}\n\nconst NeedsAssessmentStep7: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\n\tconst { control, handleSubmit, errors, watch } = useForm({\n\t\tdefaultValues: FormCtx.needsAssessment,\n\t});\n\tconst onSubmit = async (values: INeedsAssessment) => {\n\t\tif (values.valueOfSavings === undefined) {\n\t\t\tvalues.valueOfSavings = {};\n\t\t}\n\n\t\tsavingsFields.forEach((item) => {\n\t\t\tif (values.valueOfSavings !== undefined && (values.valueOfSavings[item.name] === undefined || values.valueOfSavings[item.name] === '')) {\n\t\t\t\tvalues.valueOfSavings[item.name] = '0';\n\t\t\t}\n\t\t});\n\t\tif (values.existingInsurance === undefined) {\n\t\t\tvalues.existingInsurance = {};\n\t\t}\n\n\t\texistingInsuranceFields.forEach((item) => {\n\t\t\tif (values.existingInsurance !== undefined && (values.existingInsurance[item.name] === undefined || values.existingInsurance[item.name] === '')) {\n\t\t\t\tvalues.existingInsurance[item.name] = '0';\n\t\t\t}\n\t\t});\n\t\tFormCtx.setIsLoading(true);\n\t\tif (!FormCtx.needsAssessmentOnly) {\n\t\t\tawait FormCtx.upsertFormValues(values);\n\t\t}\n\n\t\tvalues.step = 5;\n\n\t\tFormCtx.setNeedsAssessment({ ...FormCtx.needsAssessment, ...values });\n\n\t\tFormCtx.setIsLoading(false);\n\t\thistory.push(NavRoutes.QuoteNeedsAssessmentStep8);\n\t};\n\n\tconst watchHasSavings = watch('hasSavings');\n\tconst watchHasInsurance = watch('hasInsurance');\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t}>\n\t\t\t
\n\t\t\t\t\n\t\t\t\t

Savings & Assets

\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t

Now it’s time to calculate your savings!

\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors?.hasSavings?.message}\n\t\t\t\t\t
\n\t\t\t\t\t{watchHasSavings === 'yes' && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

(Specify amounts in CAD)

\n\t\t\t\t\t\t\t\t{savingsFields.map((item, index: number) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t ((val !== undefined && val !== null && val !== '') && isNaN(val)) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{errors?.valueOfSavings?.[item.name]?.message}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors?.hasInsurance?.message}\n\t\t\t\t\t
\n\t\t\t\t\t{watchHasInsurance === 'yes' && existingInsuranceFields.map((item, index: number) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t ((val !== undefined && val !== null && val !== '') && isNaN(val)) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\trender={({ onChange, value, name }) =>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{errors?.existingInsurance?.[item.name]?.message}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t\t history.push(NavRoutes.QuoteNeedsAssessmentStep6)}\n\t\t\t\t\t\tonClickNext={handleSubmit(onSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t
\n\t\t\t\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nconst savingsFields = [\n\t{\n\t\tlabel: 'RRSP',\n\t\tname: 'rrsp',\n\t},\n\t{\n\t\tlabel: 'TFSA',\n\t\tname: 'tfsa',\n\t},\n\t{\n\t\tlabel: 'Chequing Accounts',\n\t\tname: 'chequingAccounts',\n\t},\n\t{\n\t\tlabel: 'Savings Accounts',\n\t\tname: 'savingsAccount',\n\t},\n\t{\n\t\tlabel: 'Other Investments',\n\t\tname: 'other',\n\t\tdescription: 'sum of all other additional investments not listed',\n\t}\n] as {\n\tlabel: string;\n\tname: keyof ISavings;\n\tdescription?: string;\n}[];\n\nconst existingInsuranceFields = [\n\t{\n\t\tlabel: 'Life Insurance through your employer',\n\t\tname: 'employer',\n\t},\n\t{\n\t\tlabel: 'Mortgage Insurance through a bank',\n\t\tname: 'bank',\n\t},\n\t{\n\t\tlabel: 'Existing Individual Life Insurance Policy',\n\t\tname: 'life',\n\t}\n] as {\n\tlabel: string;\n\tname: keyof IExistingInsurance;\n\tdescription?: string;\n}[];\n\nexport default NeedsAssessmentStep7;\n","var _path;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconLoad = function SvgIconLoad(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 12,\n height: 13,\n viewBox: \"0 0 12 13\",\n style: {\n fill: \"currentColor\"\n },\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.3986 0.661117V2.95708C1.3986 3.31574 1.68935 3.60648 2.048 3.60648H4.34397C4.70262 3.60648 4.99337 3.31574 4.99337 2.95708C4.99337 2.59843 4.70262 2.30769 4.34397 2.30769L3.81021 2.30702C5.55612 1.26269 7.85174 1.49251 9.35571 2.99648C11.1309 4.77172 11.1309 7.64995 9.35571 9.42519C7.58047 11.2004 4.70224 11.2004 2.927 9.42519C1.84652 8.34471 1.39423 6.8192 1.67804 5.34612C1.74589 4.99395 1.5154 4.65345 1.16322 4.5856C0.811045 4.51775 0.470546 4.74824 0.402695 5.10041C0.0381927 6.99235 0.620109 8.95508 2.00861 10.3436C4.29106 12.626 7.99164 12.626 10.2741 10.3436C12.5565 8.06113 12.5565 4.36054 10.2741 2.07809C8.20918 0.0131791 4.98358 -0.183627 2.69742 1.48767L2.6974 0.661117C2.6974 0.302464 2.40665 0.0117188 2.048 0.0117188C1.68935 0.0117188 1.3986 0.302464 1.3986 0.661117Z\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconLoad, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-load.486554ed.svg\";\nexport { ForwardRef as ReactComponent };","import React, { useRef } from 'react';\nimport { Button } from 'components/buttons';\nimport { FormContext, IinitialQuestions } from 'quote/FormContext';\nimport { QuoteContainer } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes, QuotePages, ValidationMessages } from 'common/utils';\nimport { ReactComponent as ThumbsUp } from 'assets/img/thumbs-up.svg';\nimport { getNearest10k } from 'quote/policy/utils';\nimport { Controller, useForm } from 'react-hook-form';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { Checkbox } from 'antd';\nimport { ReactComponent as IconLoad } from 'assets/icons/icon-load.svg';\nimport oliverAPI from 'api/OliverAPI';\n\ninterface IProps { }\n\nconst NeedsAssessmentStep8: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst history = useHistory();\n\tconst calculations = FormCtx.calculateTotal();\n\tconst total = getNearest10k(calculations.total);\n\tconst recommendation = (total > 2000000) ? 2000000 : (total <= 0) ? 10000 : total;\n\tconst formRef = useRef(null);\n\tconst [emailSent, setEmailSent] = React.useState(false);\n\tconst [emailSendError, setEmailSendError] = React.useState();\n\tconst [emailError, setEmailError] = React.useState();\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\n\t\tif (!FormCtx.needsAssessmentOnly) {\n\t\t\tsaveRecommendation(FormCtx.initialUserData?.email);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst saveRecommendation = async (contactEmail : string | undefined) => {\n\t\tFormCtx.setSkippedNeedsAssessment(false);\n\t\tawait FormCtx.upsertFormValues({ recommended_term_life: recommendation });\n\t\t// send needs assessment tag\n\t\tawait oliverAPI.postAddTagToContact({ tagName: 'Needs Assessment', email: contactEmail || '' });\n\n\t\tconst na: NeedsAssessmentDTO = {\n\t\t\temail: contactEmail || '',\n\t\t\trecommendation: recommendation.toString(),\n\t\t\tdebt_loc: FormCtx.needsAssessment.debts?.lineOfCredit || '',\n\t\t\tdebt_cc: FormCtx.needsAssessment.debts?.creditCard || '',\n\t\t\tdebt_student_loan: FormCtx.needsAssessment.debts?.studentLoans || '',\n\t\t\tdebt_auto: FormCtx.needsAssessment.debts?.autoLoans || '',\n\t\t\tdebt_other: FormCtx.needsAssessment.debts?.other || '',\n\t\t\tdebt_mortgage_balance: FormCtx.needsAssessment.debts?.mortgageBalance || '',\n\t\t\twhy_to_buy: FormCtx.needsAssessment.reasonToBuy?.toString() || '',\n\t\t\twhy_to_buy_other: FormCtx.needsAssessment.reasonToBuyOther || '',\n\t\t\tannual_income: FormCtx.needsAssessment.annualIncome || '',\n\t\t\tannual_income_years: FormCtx.needsAssessment.annualIncomeYears || '',\n\t\t\tannual_income_years_other: FormCtx.needsAssessment.annualIncomeYearsOther || '',\n\t\t\thas_wants_num_children: FormCtx.needsAssessment.numberChildren || '',\n\t\t\texpense_tuition: FormCtx.needsAssessment.expenses?.tuition || '',\n\t\t\texpense_wedding: FormCtx.needsAssessment.expenses?.wedding || '',\n\t\t\texpense_legacy: FormCtx.needsAssessment.expenses?.legacy || '',\n\t\t\texpense_funeral: FormCtx.needsAssessment.expenses?.funeral || '',\n\t\t\tsavings_rrsp: FormCtx.needsAssessment.valueOfSavings?.rrsp || '',\n\t\t\tsavings_tfsa: FormCtx.needsAssessment.valueOfSavings?.tfsa || '',\n\t\t\tsavings_chequing: FormCtx.needsAssessment.valueOfSavings?.chequingAccounts || '',\n\t\t\tsavings_savings: FormCtx.needsAssessment.valueOfSavings?.savingsAccount || '',\n\t\t\tsavings_other: FormCtx.needsAssessment.valueOfSavings?.other || '',\n\t\t\texisting_insurance_employer: FormCtx.needsAssessment.existingInsurance?.employer || '',\n\t\t\texisting_insurance_bank: FormCtx.needsAssessment.existingInsurance?.bank || '',\n\t\t\texisting_insurance_life: FormCtx.needsAssessment.existingInsurance?.life || '',\n\t\t};\n\t\toliverAPI.postAddNeedsAssessmentToContact({ na: na });\n\t};\n\n\tconst next = () => {\n\t\tconst NAOnly = FormCtx.needsAssessmentOnly;\n\t\tFormCtx.setNeedsAssessmentOnly(NAOnly ? false : undefined);\n\t\tif (NAOnly) {\n\t\t\thistory.push(NavRoutes.QuoteAboutYou);\n\t\t} else {\n\t\t\thistory.push(NavRoutes.QuoteSelectPolicy, { updatePolicy: true });\n\t\t}\n\t};\n\n\tconst { control, handleSubmit, errors } = useForm({\n\t\tdefaultValues: {\n\t\t\tfirstName: FormCtx.initialUserData?.firstName || '',\n\t\t\tlastName: FormCtx.initialUserData?.lastName || '',\n\t\t\temail: FormCtx.initialUserData?.email || '',\n\t\t\toptIn: FormCtx.initialUserData?.optIn\n\t\t},\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t});\n\n\tconst onSubmit = async (values: IinitialQuestions) => {\n\t\tFormCtx.setIsLoading(true);\n\t\tif (emailSendError !== undefined) {\n\t\t\tsetEmailSendError(undefined);\n\t\t}\n\t\tFormCtx.setInitialUserData(values);\n\t\tconst result = await FormCtx.upsertFormValues(values);\n\n\t\tsaveRecommendation(values.email);\n\n\t\tif (result !== undefined) {\n\t\t\tconst is_pdf_sent = await oliverAPI.postReport({ needs_assessment_id: result.needs_assessment_id, is_needs_assessment: true });\n\t\t\tsetEmailSent(is_pdf_sent);\n\t\t\tif (!is_pdf_sent) {\n\t\t\t\tsetEmailSendError('There was a problem sending the email. Please verify your information and try again.');\n\t\t\t}\n\t\t} else {\n\t\t\tsetEmailError(ValidationMessages.email);\n\t\t}\n\t\tFormCtx.setIsLoading(false);\n\t};\n\n\tconst scrollToForm = () => {\n\t\tif (formRef && formRef.current) {\n\t\t\tformRef.current.scrollIntoView({ behavior: 'smooth' });\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

Our Recommendation:

\n\t\t\t\t\t
${recommendation.toLocaleString('en')} of Coverage
\n\t\t\t\t\t

\n\t\t\t\t\t\tBased on the information you’ve provided;\n\t\t\t\t\t\twe estimate you need this amount of coverage. For a detailed and comprehensive\n\t\t\t\t\t\tanalysis, we encourage you to speak with one of our advisors today!\n\t\t\t\t\t

\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t{FormCtx.needsAssessmentOnly && !emailSent &&\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t\t

Details

\n\n\t\t\t
\n\t\t\t\tDebts\n\t\t\t\t{calculations.debts.toLocaleString('en')}\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\tCurrent Debts\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t${calculations.debts.toLocaleString('en')}\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\tExpenses\n\t\t\t\t{(calculations.expenses + calculations.income).toLocaleString('en')}\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\tBasic Expenses\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t${calculations.income.toLocaleString('en')}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tAdditional Expenses\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t${calculations.expenses.toLocaleString('en')}\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\tSavings and Assets\n\t\t\t\t{((calculations.savings + calculations.insurance) * -1).toLocaleString('en')}\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\tTotal Savings & Investments\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t-${calculations.savings.toLocaleString('en')}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tExisting Insurance\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t-${(calculations.insurance).toLocaleString('en')}\n\t\t\t\t\n\t\t\t
\n\t\t\t
\n\t\t\t\t
Our Recommendation:
\n\t\t\t\t

${recommendation.toLocaleString('en')}

\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t

\n\t\t\t\t\tRecommendation rounded to
the nearest 10,000.
\n\t\t\t\t

\n\t\t\t
\n\n\t\t\t{FormCtx.needsAssessmentOnly && !emailSent &&\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

Get a copy of your needs assessment sent to your email.

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.firstName?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors.lastName?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tonChange(event);\n\t\t\t\t\t\t\t\t\t\t\t\tif (emailError !== undefined) { setEmailError(undefined); }\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tname=\"email\"\n\t\t\t\t\t\t\t\t\t\t\tid=\"email\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors.email?.message ?? emailError}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t onChange(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\tYes, I would like to receive e-mail according to my subscription preferences. I understand I can unsubscribe at any time.\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{FormCtx.isLoading === true ? 'Sending Report' : 'Send Me My Report'}\n\t\t\t\t\t\t\t\t{FormCtx.isLoading === true && }\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t}\n\n\t\t\t{emailSent &&\n\t\t\t\t
\n\t\t\t\t\t

Success! A report has been sent to

\n\t\t\t\t\t{FormCtx.initialUserData?.email}\n\t\t\t\t\t

Check your email to see your needs assessment report.\n\t\t\t\t\t

\n\t\t\t\t
\n\t\t\t}\n\t\t
\n\t);\n};\nexport default NeedsAssessmentStep8;\n","import { FormContext } from 'quote/FormContext';\nimport React from 'react';\nimport { MyPolicy, PoliciesIds, QuoteFromOliver } from './utils';\n\n\ninterface IPolicyDataContext {\n\tpolicy: MyPolicy[];\n\tquoteData: OliverQuoteResponseDTO;\n\tisDirty: boolean;\n\thasChildDL: boolean;\n\thasChildCI: boolean;\n\tspousePolicy: MyPolicy[];\n\tspouseQuoteData: OliverQuoteResponseDTO,\n\tspouseIsDirty: boolean,\n\tspouseHasChildDLorCI: boolean,\n}\n\ninterface IPolicyActionContext {\n\tpolicyDispatch: React.Dispatch;\n\tcreateRequest: (policy: MyPolicy[]) => any;\n\tcreateQuoteData: (data: OliverQuoteResponseDTO) => QuoteFromOliver[];\n\tsetQuoteData: (data: OliverQuoteResponseDTO) => any;\n\tproductTitle: (id: string | undefined) => string;\n\tsetIsDirty: React.Dispatch>;\n\tcheckAndSetHasChildDL: () => void;\n\tcheckAndSetHasChildCI: () => void;\n\tspousePolicyDispatch: React.Dispatch;\n\tspouseCreateRequest: (policy: MyPolicy[]) => any;\n\tspouseCreateQuoteData: (data: OliverQuoteResponseDTO) => QuoteFromOliver[];\n\tsetSpouseQuoteData: (data: OliverQuoteResponseDTO) => any;\n\tspouseProductTitle: (id: string | undefined) => string;\n\tsetSpouseIsDirty: React.Dispatch>;\n\tspouseCheckAndSetHasChildDLorCL: () => void;\n}\n\nconst PolicyActionContext = React.createContext({\n\tpolicyDispatch: () => [],\n\tcreateRequest: (data: MyPolicy[]) => { },\n\tcreateQuoteData: (data: OliverQuoteResponseDTO) => [],\n\tsetQuoteData: (data: OliverQuoteResponseDTO) => { },\n\tproductTitle: (id: string | undefined) => '',\n\tsetIsDirty: () => { },\n\tcheckAndSetHasChildDL: () => undefined,\n\tcheckAndSetHasChildCI: () => undefined,\n\tspousePolicyDispatch: () => [],\n\tspouseCreateRequest: (data: MyPolicy[]) => { },\n\tspouseCreateQuoteData: (data: OliverQuoteResponseDTO) => [],\n\tsetSpouseQuoteData: (data: OliverQuoteResponseDTO) => { },\n\tspouseProductTitle: (id: string | undefined) => '',\n\tsetSpouseIsDirty: () => { },\n\tspouseCheckAndSetHasChildDLorCL: () => undefined,\n});\n\nconst PolicyDataContext = React.createContext({\n\tpolicy: [],\n\tquoteData: {},\n\tisDirty: true,\n\thasChildDL: false,\n\thasChildCI: false,\n\tspousePolicy: [],\n\tspouseQuoteData: {},\n\tspouseIsDirty: true,\n\tspouseHasChildDLorCI: false,\n});\n\nconst PolicyProvider = (props: any) => {\n\tconst [selectedPolicies, dispatch] = React.useReducer(handlePolicyState, []);\n\tconst [quoteData, setQuoteData] = React.useState({});\n\tconst [isDirty, setIsDirty] = React.useState(true);\n\tconst [hasChildDL, setHasChildDL] = React.useState(true);\n\tconst [hasChildCI, setHasChildCI] = React.useState(true);\n\tconst [spouseSelectedPolicies, spouseDispatch] = React.useReducer(handlePolicyState, []);\n\tconst [spouseQuoteData, setSpouseQuoteData] = React.useState({});\n\tconst [spouseIsDirty, setSpouseIsDirty] = React.useState(true);\n\tconst [spouseHasChildDLorCI, setSpouseHasChildDLorCI] = React.useState(true);\n\tconst formCtx = React.useContext(FormContext);\n\n\n\tconst createRequest = (policyData: MyPolicy[]): QuoteRequest => {\n\n\t\tconst updatedPolicyData = policyData.map(policy => ({\n\t\t\tid: policy.policyId,\n\t\t\toption: createProductOption(policy),\n\t\t}));\n\t\treturn {\n\t\t\tquote: {\n\t\t\t\tapplicant_id: formCtx.applicantId, //99201\n\t\t\t\tproducts: updatedPolicyData,\n\t\t\t}\n\t\t} as QuoteRequest;\n\t};\n\n\tconst productTitle = (id: string | undefined) => {\n\t\tlet title = '';\n\t\tif (id !== undefined) {\n\t\t\tswitch (id) {\n\t\t\t\tcase PoliciesIds.life:\n\t\t\t\t\ttitle = 'Term Life';\n\t\t\t\t\tbreak;\n\t\t\t\tcase PoliciesIds.ltd:\n\t\t\t\t\ttitle = 'Long Term Disability';\n\t\t\t\t\tbreak;\n\t\t\t\tcase PoliciesIds.officeOH:\n\t\t\t\t\ttitle = 'Office Overhead';\n\t\t\t\t\tbreak;\n\t\t\t\tcase PoliciesIds.deplife:\n\t\t\t\t\ttitle = 'Dependent Life';\n\t\t\t\t\tbreak;\n\t\t\t\tcase PoliciesIds.ci:\n\t\t\t\t\ttitle = 'Critical Illness';\n\t\t\t\t\tbreak;\n\t\t\t\tcase PoliciesIds.cich:\n\t\t\t\t\ttitle = 'Critical Illness - Child(ren)';\n\t\t\t\t\tbreak;\n\t\t\t\tcase PoliciesIds.add:\n\t\t\t\t\ttitle = 'Accidental Death and Dismemberment';\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn title;\n\t};\n\n\n\tconst createQuoteData = (quote: OliverQuoteResponseDTO) => {\n\t\tlet quoteData = [] as QuoteFromOliver[];\n\t\tif (quote.products !== undefined && quote.products.length > 0) {\n\t\t\tquoteData = quote.products.map(prod => {\n\t\t\t\treturn {\n\t\t\t\t\tid: prod.id as PoliciesIds,\n\t\t\t\t\ttitle: productTitle(prod.id),\n\t\t\t\t\tpremium: prod.option?.premium,\n\t\t\t\t\tparameters: {\n\t\t\t\t\t\tcoverageAmount: prod.option?.coverage,\n\t\t\t\t\t\twaitingPeriod: prod.option?.waiting_period,\n\t\t\t\t\t}\n\t\t\t\t} as QuoteFromOliver;\n\t\t\t});\n\t\t}\n\n\t\treturn quoteData;\n\t};\n\n\tconst checkAndSetHasChildDL = () => {\n\t\tconst hasChildDLPolicy = (selectedPolicies.findIndex(p => p.policyId === PoliciesIds.deplife) !== -1);\n\t\tsetHasChildDL(hasChildDLPolicy);\n\t};\n\n\tconst checkAndSetHasChildCI = () => {\n\t\tlet hasChildCIPolicy = false;\n\t\tconst founndApplicantCI = selectedPolicies.find(p => p.policyId === PoliciesIds.ci);\n\t\tif (founndApplicantCI !== undefined && founndApplicantCI.parameters !== undefined) {\n\t\t\thasChildCIPolicy = founndApplicantCI.parameters.applyToChildren === 'yes';\n\t\t}\n\n\t\tsetHasChildCI(hasChildCIPolicy);\n\t};\n\n\tconst spouseCreateRequest = (policyData: MyPolicy[]): QuoteRequest => {\n\t\tconst updatedPolicyData = policyData.map(policy => ({\n\t\t\tid: policy.policyId,\n\t\t\toption: createProductOption(policy),\n\t\t}));\n\t\treturn {\n\t\t\tquote: {\n\t\t\t\t// applicant_id: formCtx.spouseApplicantId, //99201\n\t\t\t\tapplicant_id: formCtx.spouseApplicantId, //99201\n\t\t\t\tproducts: updatedPolicyData,\n\t\t\t}\n\t\t} as QuoteRequest;\n\t};\n\n\tconst spouseCheckAndSetHasChildDLorCL = () => {\n\t\tconst hasDL = (spouseSelectedPolicies.findIndex(p => p.policyId === PoliciesIds.deplife) !== -1);\n\t\tlet hasChildCI = false;\n\t\tconst founndApplicantCI = spouseSelectedPolicies.find(p => p.policyId === PoliciesIds.ci);\n\t\tif (founndApplicantCI !== undefined && founndApplicantCI.parameters !== undefined) {\n\t\t\thasChildCI = founndApplicantCI.parameters.applyToChildren === 'yes';\n\t\t}\n\t\tconst hasChildPolicy = (hasDL || hasChildCI);\n\n\t\tsetSpouseHasChildDLorCI(hasChildPolicy);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.children}\n\t\t\t\n\t\t\n\t);\n\n\tfunction getPeriodFromTextValue(value: string | undefined) {\n\t\tlet period = 0;\n\t\tif (value !== undefined) {\n\t\t\tswitch (value) {\n\t\t\t\tcase 'ILTD30':\n\t\t\t\t\tperiod = 30;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ILTD90':\n\t\t\t\t\tperiod = 90;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ILTD120':\n\t\t\t\t\tperiod = 120;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ILTD180':\n\t\t\t\t\tperiod = 180;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ILTD365':\n\t\t\t\t\tperiod = 365;\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn period;\n\t}\n\n\tfunction getCoverageFromTextValue(value: string | undefined) {\n\t\tlet coverage = 0;\n\t\tif (value !== undefined) {\n\t\t\tswitch (value) {\n\t\t\t\tcase 'IDLIF10/10':\n\t\t\t\t\tcoverage = 10000;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'IDLIF15/15':\n\t\t\t\t\tcoverage = 15000;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'IDLIF20/20':\n\t\t\t\t\tcoverage = 20000;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'IDLIF25/25':\n\t\t\t\t\tcoverage = 25000;\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn coverage;\n\t}\n\n\tfunction handlePolicyState(state: MyPolicy[], data: MyPolicy | MyPolicy[]) {\n\t\tif (Array.isArray(data)) {\n\t\t\treturn data;\n\t\t}\n\t\tconst arrPos = state.findIndex(val => val.policyId === data.policyId);\n\t\tif (arrPos !== -1 && data.parameters === undefined) {\n\t\t\tif (state.length === 1) {\n\t\t\t\treturn [];\n\t\t\t} else {\n\t\t\t\tconst filterArr = state.filter((val) => val.policyId !== data.policyId);\n\t\t\t\treturn [...filterArr];\n\t\t\t}\n\t\t} else {\n\t\t\tconst filterArr = state.filter((val) => val.policyId !== data.policyId);\n\t\t\treturn [...filterArr, data];\n\t\t}\n\t}\n\n\tfunction createProductOption(policy: MyPolicy): QuoteProductOptionsDTO {\n\t\tlet option = {} as QuoteProductOptionsDTO;\n\t\t// create method to map data to oliver option dto\n\t\t// use policy id cause its enum to create other type of data\n\t\tswitch (policy.policyId) {\n\t\t\tcase PoliciesIds.life:\n\t\t\t\toption = {\n\t\t\t\t\tid: 'ITERMLIFE',\n\t\t\t\t\tcoverage: policy.parameters?.coverageAmount,\n\t\t\t\t\ttype: 'AGE',\n\t\t\t\t} as QuoteProductOptionsDTO;\n\t\t\t\tbreak;\n\t\t\tcase PoliciesIds.ltd:\n\t\t\t\toption = {\n\t\t\t\t\tid: createLongTermDisabilityOptionsId(policy),\n\t\t\t\t\tcoverage: policy.parameters?.coverageAmount,\n\t\t\t\t\ttype: 'AGE',\n\t\t\t\t\twaiting_period: getPeriodFromTextValue(policy.parameters?.waitingPeriod),\n\t\t\t\t\twaiting_period_option: 'IMMEDIATE',\n\t\t\t\t} as QuoteProductOptionsDTO;\n\t\t\t\tbreak;\n\t\t\tcase PoliciesIds.officeOH:\n\t\t\t\toption = {\n\t\t\t\t\tid: 'IOFFICEOH',\n\t\t\t\t\tcoverage: policy.parameters?.coverageAmount,\n\t\t\t\t\ttype: 'AGE',\n\t\t\t\t} as QuoteProductOptionsDTO;\n\t\t\t\tbreak;\n\t\t\tcase PoliciesIds.deplife:\n\t\t\t\toption = {\n\t\t\t\t\tid: createDependencyOptionsId(policy),\n\t\t\t\t\tcoverage: getCoverageFromTextValue(policy.parameters?.coverageAmount),\n\t\t\t\t\ttype: 'VOLUME',\n\t\t\t\t} as QuoteProductOptionsDTO;\n\t\t\t\tbreak;\n\t\t\tcase PoliciesIds.ci:\n\t\t\t\toption = {\n\t\t\t\t\tid: 'ICI',\n\t\t\t\t\tcoverage: policy.parameters?.coverageAmount,\n\t\t\t\t\ttype: 'AGE',\n\t\t\t\t\t// apply_to_all_children: policy.parameters?.applyToChildren === 'yes'\n\t\t\t\t} as QuoteProductOptionsDTO;\n\t\t\t\tbreak;\n\t\t\tcase PoliciesIds.cich:\n\t\t\t\toption = {\n\t\t\t\t\tid: 'ICIChild',\n\t\t\t\t\tcoverage: policy.parameters?.coverageAmount,\n\t\t\t\t\ttype: 'VOLUME',\n\t\t\t\t} as QuoteProductOptionsDTO;\n\t\t\t\tbreak;\n\t\t\tcase PoliciesIds.add:\n\t\t\t\toption = {\n\t\t\t\t\tid: 'IADD',\n\t\t\t\t\tcoverage: policy.parameters?.coverageAmount,\n\t\t\t\t\ttype: 'VOLUME',\n\t\t\t\t} as QuoteProductOptionsDTO;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\t\treturn option;\n\n\t}\n\n\tfunction createLongTermDisabilityOptionsId(policy: MyPolicy) {\n\t\treturn policy.parameters?.waitingPeriod;\n\t}\n\n\tfunction createDependencyOptionsId(policy: MyPolicy) {\n\t\treturn policy.parameters?.coverageAmount;\n\t}\n};\n\nexport {\n\tPolicyActionContext,\n\tPolicyDataContext,\n};\n\nexport default PolicyProvider;","import React from 'react';\n\ntype ResultBox = { v: T }\n\nexport default function useConstant(fn: () => T): T {\n\tconst ref = React.useRef>();\n\n\tif (!ref.current) {\n\t\tref.current = { v: fn() };\n\t}\n\n\treturn ref.current.v;\n}","var _path;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconAdd = function SvgIconAdd(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n style: {\n fill: \"currentColor\"\n },\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.8834 3.00673L12 3C12.5128 3 12.9355 3.38604 12.9933 3.88338L13 4V11H20C20.5128 11 20.9355 11.386 20.9933 11.8834L21 12C21 12.5128 20.614 12.9355 20.1166 12.9933L20 13H13V20C13 20.5128 12.614 20.9355 12.1166 20.9933L12 21C11.4872 21 11.0645 20.614 11.0067 20.1166L11 20V13H4C3.48716 13 3.06449 12.614 3.00673 12.1166L3 12C3 11.4872 3.38604 11.0645 3.88338 11.0067L4 11H11V4C11 3.48716 11.386 3.06449 11.8834 3.00673L12 3L11.8834 3.00673Z\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconAdd, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-add.6dc98848.svg\";\nexport { ForwardRef as ReactComponent };","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw';\nimport { RadioOption } from 'components/cpaipw/RadioButtonGroup';\nimport { IPolicyComponentProps } from './utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\n\ninterface IProps extends IPolicyComponentProps {\n\toptions: RadioOption[]\n}\n\nexport const ApplyToChildrenToggle: React.FC = ( props: IProps ) => {\n\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t- Flat $10,000 benefit available.\n\t\t\t- Will apply to all children.\n\t\t\t\n\t\t\t{props.error}\n\t\t
\n\t);\n};","import { AmountInput } from 'components/cpaipw';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport React from 'react';\nimport { IPolicyComponentProps } from './utils';\nimport classNames from 'classnames';\n\nexport const CoverageAmountField: React.FC = (props: IPolicyComponentProps) => {\n\n\t// TODO: debounce field (created race condition before, needs extra care)\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t{props.description && {props.description}}\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t$\n\t\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t\t{props.error}\n\t\t
\n\t);\n};\n","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw';\nimport { RadioOption } from 'components/cpaipw/RadioButtonGroup';\nimport { IPolicyComponentProps } from './utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\n\ninterface IProps extends IPolicyComponentProps {\n\toptions: RadioOption[]\n}\n\nexport const CoverageAmountRadio: React.FC = ( props: IProps ) => {\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t\n\t\t\t{props.error}\n\t\t
\n\t);\n};\n","import React from 'react';\nimport { RadioButtonGroup } from 'components/cpaipw';\nimport { RadioOption } from 'components/cpaipw/RadioButtonGroup';\nimport { IPolicyComponentProps } from './utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\n\ninterface IProps extends IPolicyComponentProps {\n\toptions: RadioOption[]\n}\n\nexport const WaitingPeriodRadio: React.FC = ( props: IProps ) => {\n\treturn (\n\t\t
\n\t\t\t\n\t\t\tThis is the time before benefits begin if disabled.\n\t\t\t\n\t\t\t{props.error}\n\t\t
\n\t);\n};\n","var _path;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconSubtract = function SvgIconSubtract(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 18,\n height: 2,\n viewBox: \"0 0 18 2\",\n fill: \"none\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M0 0.75C0 0.3358 0.335785 0 0.75 0H17.25C17.6642 0 18 0.3358 18 0.75C18 1.1642 17.6642 1.5 17.25 1.5H0.75C0.335785 1.5 0 1.1642 0 0.75Z\",\n fill: \"#006FBA\"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconSubtract, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-subtract.ab83c810.svg\";\nexport { ForwardRef as ReactComponent };","var _path;\n\nvar _excluded = [\"svgRef\", \"title\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React from \"react\";\n\nvar SvgIconTooltip = function SvgIconTooltip(_ref) {\n var svgRef = _ref.svgRef,\n title = _ref.title,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n style: {\n fill: \"currentColor\"\n },\n viewBox: \"0 0 20 20\",\n ref: svgRef\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", null, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M 10 1.667969 C 14.601562 1.667969 18.332031 5.398438 18.332031 10 C 18.332031 14.601562 14.601562 18.332031 10 18.332031 C 5.398438 18.332031 1.667969 14.601562 1.667969 10 C 1.667969 5.398438 5.398438 1.667969 10 1.667969 Z M 10 12.917969 C 9.539062 12.917969 9.167969 13.289062 9.167969 13.75 C 9.167969 14.210938 9.539062 14.582031 10 14.582031 C 10.460938 14.582031 10.832031 14.210938 10.832031 13.75 C 10.832031 13.289062 10.460938 12.917969 10 12.917969 Z M 10 5.625 C 8.734375 5.625 7.707031 6.652344 7.707031 7.917969 C 7.707031 8.261719 7.988281 8.542969 8.332031 8.542969 C 8.648438 8.542969 8.910156 8.304688 8.953125 8 L 8.957031 7.917969 C 8.957031 7.339844 9.425781 6.875 10 6.875 C 10.574219 6.875 11.042969 7.339844 11.042969 7.917969 C 11.042969 8.367188 10.929688 8.585938 10.503906 9.027344 L 10.390625 9.140625 C 9.660156 9.875 9.375 10.347656 9.375 11.25 C 9.375 11.59375 9.65625 11.875 10 11.875 C 10.34375 11.875 10.625 11.59375 10.625 11.25 C 10.625 10.800781 10.738281 10.578125 11.164062 10.140625 L 11.273438 10.023438 C 12.007812 9.292969 12.292969 8.820312 12.292969 7.917969 C 12.292969 6.652344 11.265625 5.625 10 5.625 Z M 10 5.625 \"\n })));\n};\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(SvgIconTooltip, _extends({\n svgRef: ref\n }, props));\n});\nexport default __webpack_public_path__ + \"static/media/icon-tooltip.753b964d.svg\";\nexport { ForwardRef as ReactComponent };","/* eslint-disable max-len */\nimport React from 'react';\nimport { PoliciesIds } from './utils';\n\ninterface IProps {\n\tproduct: PoliciesIds;\n}\n\nexport const LearnMore: React.FC = (props: IProps) => {\n\n\tif (props.product === PoliciesIds.life) {\n\t\treturn (\n\t\t\t\n\t\t\t\t
Why Term Life insurance?
\n\t\t\t\t

We at CPAIPW love Term Life and consider it a must have coverage for everyone.

\n\t\t\t\t
    \n\t\t\t\t\t
  • Term Life is the simplest way to make sure your important people have some much-needed financial support if you’re not around anymore.
  • \n\t\t\t\t\t
  • It gives you the ability to meet those inheritance and education fund goals you set for your dependents if your time is cut short.
  • \n\t\t\t\t\t
  • If you need one of those buy/sell agreements, this is what the bank and your partners are looking for.
  • \n\t\t\t\t\t
  • Best of all, it can save you money by replacing that over-priced mortgage insurance (we will never get over the fact that the price of mortgage insurance never goes down despite the coverage reducing).
  • \n\t\t\t\t
\n\t\t\t\t
How much coverage do you need?
\n\t\t\t\t

There is no right answer. The goal is to have enough coverage to meet your current and future financial goals and obligations if something happens to you. Here are some of the variables to consider:

\n\t\t\t\t
    \n\t\t\t\t\t
  • Add: Mortgage balance & other debt(s) + income replacement for your loved ones + inflation-adjusted education expense + inheritance + amounts owing to business partners & other business debts
  • \n\t\t\t\t\t
  • Subtract: Your savings + amount of existing life insurance
  • \n\t\t\t\t\t
  • Equals: A pretty good estimate of the coverage you will need
  • \n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n\n\tif (props.product === PoliciesIds.ltd) {\n\t\treturn (\n\t\t\t\n\t\t\t\t
Why Long Term Disability insurance?
\n\t\t\t\t

Along with Term Life, Long Term Disability (LTD) is another one of those must have coverages.

\n\t\t\t\t

\n\t\t\t\t\tWe wish for a happy & healthy life for everyone, but accidents do happen, you may become disabled and unable to work.\n\t\t\t\t\tIf this does happen to you, we want to make sure you still have income, so you can focus on getting healthy and feeling great again!\n\t\t\t\t

\n\t\t\t\t

How to calculate your maximum LTD limit:

\n\t\t\t\t

Your limit is the lower of $10,000 or 60% of the first $11,668 of gross monthly earnings and 50% of the balance.

\n\t\t\t\t

Example 1) Your gross monthly earnings are above $10,000 limit:

\n\t\t\t\t

Gross monthly earnings: $20,000.00

\n\t\t\t\t

\n\t\t\t\t\tFirst $11,668 x 60% = $7,000.80\n\t\t\t\t\tNext $8,332 x 50% = $4,166.00\n\t\t\t\t\tMaximum limit: $10,000 ($11,166.80)\n\t\t\t\t

\n\n\t\t\t\t

Example 2) Your gross monthly earnings below are $10,000 limit:

\n\n\t\t\t\t

Gross monthly earnings: $12,000.00

\n\t\t\t\t

\n\t\t\t\t\tFirst $11,668 x 60% = $7,000.80\n\t\t\t\t\tNext $332.00 x 50% = $166.00\n\t\t\t\t\tTotal limit: $7,166.80\n\t\t\t\t

\n\n\t\t\t\t

How to determine your gross monthly earnings:

\n\t\t\t\t

Your gross monthly earnings is equal to the amounts paid as fees, salary, bonus, commission or honorarium (excluding investment income) in the previous 12 months or 24 months, whichever is greater.

\n\n\t\t\t\t

What qualifies as gross monthly earnings:

\n\t\t\t\t
    \n\t\t\t\t\t
  • (a) A sole proprietor’s or partner’s share net income of a CPA Firm for the immediate preceding fiscal year of the firm;
  • \n\t\t\t\t\t
  • (b) Share of your Professional Corporation’s share of proprietorship/partnership net income after deducting expenses but before any distribution of earnings for the immediately preceding fiscal year;
  • \n\t\t\t\t\t
  • (c) Employment income from a business not owned by you for the previous calendar year;
  • \n\t\t\t\t\t
  • (d) Share of net income from an incorporated or unincorporated business owned wholly or partially by you prior to any income distribution to yourself for the immediately proceeding fiscal year; plus
  • \n\t\t\t\t\t
  • (e) Any other suitable “earnings” component that the board of directors of the Policyholder may deem appropriate from time to time.
  • \n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n\n\tif (props.product === PoliciesIds.ci) {\n\t\treturn (\n\t\t\t\n\t\t\t\t
Why Critical Illness insurance?
\n\t\t\t\t

\n\t\t\t\t\tCritical Illness provides you with immediate financial relief with a tax free lump-sum payment upon diagnosis of one of the covered illness.\n\t\t\t\t\tThis covers things like Alzheimer’s Disease, cancer (restrictions apply), major surgeries.\n\t\t\t\t

\n\t\t\t\t

\n\t\t\t\t\tSelect, Child Critical Illness to ensure you also have coverage for a tax free lump-sum payment should your dependent child be diagnosed with one of the covered illnesses.\n\t\t\t\t

\n\t\t\t\t

For a complete list of covered illnesses, contact us.

\n\t\t\t
\n\t\t);\n\t}\n\n\tif (props.product === PoliciesIds.add) {\n\t\treturn (\n\t\t\t\n\t\t\t\t
Why Accidental Death & Dismemberment Insurance?
\n\t\t\t\t

\n\t\t\t\t\tAccidental Death and Dismemberment (AD&D) is a perfect complement to Term Life.\n\t\t\t\t\tIt is added protection for you and your family in the event of an accident that results in death or serious injury.\n\t\t\t\t\tIt coverages things like loss of life, eye sight, speech, hearings, and limbs, etc.\n\t\t\t\t

\n\t\t\t\t

For the complete Accidental Loss and Loss of Use Schedule, speak with an Advisor at 1-800-661-6430.

\n\t\t\t
\n\t\t);\n\t}\n\n\tif (props.product === PoliciesIds.deplife) {\n\t\treturn (\n\t\t\t\n\t\t\t\t
Why Dependent Life insurance?
\n\t\t\t\t

\n\t\t\t\t\tWe get it, no one wants to think about the loss of a child, but for few bucks a month,\n\t\t\t\t\tit ensures funeral and other expenses can be covered in the case of the death of your child.\n\t\t\t\t

\n\t\t\t
\n\t\t);\n\t}\n\n\tif (props.product === PoliciesIds.officeOH) {\n\t\treturn (\n\t\t\t\n\t\t\t\t
Why Office Overhead insurance?
\n\t\t\t\t

\n\t\t\t\t\tAs a sole proprietor or partner, being healthy and performing at your best is critical for your ability to learn a living.\n\t\t\t\t\tIf you become disabled, covering expenses will be top of mind. This is where office overhead can help by providing coverage for rent,\n\t\t\t\t\tsalaries, utilities, memberships, and insurance, business taxes, and other normal business expenses.\n\t\t\t\t

\n\t\t\t
\n\t\t);\n\t}\n\n\treturn ;\n};","import React from 'react';\nimport classNames from 'classnames';\nimport { ApplyToChildrenToggle } from './ApplyToChildrenToggle';\nimport { CoverageAmountField } from './CoverageAmountField';\nimport { CoverageAmountRadio } from './CoverageAmountRadio';\nimport { Policy, PolicyFields, coverageAmountRadioOptions, waitingPeriodRadioOptions, applyToChildrenRadioOptions, MyPolicy, PoliciesIds, getFormattedValue } from './utils';\nimport { WaitingPeriodRadio } from './WaitingPeriodRadio';\nimport { ReactComponent as IconAdd } from 'assets/icons/icon-add.svg';\nimport { ReactComponent as IconSubtract } from 'assets/icons/icon-subtract.svg';\nimport { TogglePolicyButton } from './TogglePolicyButton';\nimport AnimateHeight from 'react-animate-height';\nimport { Controller, useFormContext, ValidationValueMessage } from 'react-hook-form';\nimport { PolicyActionContext, PolicyDataContext } from './PolicyContext';\nimport { FormContext } from 'quote/FormContext';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { NavRoutes, ValidationMessages } from 'common/utils';\nimport { LearnMore } from './LearnMore';\nimport { Link } from 'react-router-dom';\n\ninterface IProps {\n\tproduct: OliverProductResponseDTO;\n\tsettings: Policy;\n\tonClick: (myPolicy: MyPolicy) => void;\n\tselectedPolicies: MyPolicy[];\n\tindex: number;\n\tdebouncedRequest: () => Promise;\n\tisSpouse?: boolean;\n\tspouseChildrenCI?: boolean;\n\tcpaChildrenCI?: boolean;\n\tloadPolicies?: () => void;\n}\n\nexport const PolicyCard: React.FC = (props: IProps) => {\n\tconst filter = props.selectedPolicies.filter((val) =>\n\t\tval.policyId === props.product.id &&\n\t\tval.policyId !== PoliciesIds.cich);\n\tconst PolicyAction = React.useContext(PolicyActionContext);\n\tconst PolicyData = React.useContext(PolicyDataContext);\n\tconst [warning, setWarning] = React.useState(undefined);\n\tconst [readMore, setReadMore] = React.useState(false);\n\tconst isSelected = filter.length === 1;\n\tconst currentItem = filter[0];\n\tconst methods = useFormContext();\n\tconst { control, errors } = methods;\n\n\tconst FormCtx = React.useContext(FormContext);\n\tconst { settings } = props;\n\tconst { requirements } = settings;\n\t// const displayIndex = () => {\n\t// \tlet returnVal = (props.index + 1).toString();\n\t// \tif (props.index < 10) {\n\t// \t\treturnVal = '0' + returnVal;\n\t// \t}\n\t// \treturn returnVal;\n\t// };\n\n\tReact.useEffect(() => {\n\t\tif (warning !== undefined) {\n\t\t\tsetWarning(undefined);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [props.selectedPolicies]);\n\n\tconst onChangeField = () => {\n\t\tif (PolicyData.isDirty === false && props.isSpouse === false) {\n\t\t\tPolicyAction.setIsDirty(true);\n\t\t}\n\t\tif (PolicyData.spouseIsDirty === false && props.isSpouse === true) {\n\t\t\tPolicyAction.setSpouseIsDirty(true);\n\t\t}\n\t\tprops.debouncedRequest();\n\t\tprops.loadPolicies?.();\n\t};\n\n\tconst getMax = (): ValidationValueMessage | undefined => {\n\t\tif (requirements.spouseMax === undefined && requirements.cpaMax === undefined && requirements.max === undefined) {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (currentItem.policyId === PoliciesIds.add) {\n\t\t\tconst userIsSpouse = FormCtx.personalData.cpaStatus === 'spouse' ? true : props.isSpouse;\n\t\t\tconst values = methods.getValues();\n\t\t\tconst lifeVal = values.policy?.['LIFE']?.coverageAmount;\n\t\t\tconst max = userIsSpouse ? requirements.spouseMax : requirements.cpaMax;\n\t\t\tif (lifeVal && lifeVal <= max!) {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: lifeVal,\n\t\t\t\t\tmessage: 'The maximum coverage cannot exceed the Life Term Benefit amount'\n\t\t\t\t} as ValidationValueMessage;\n\t\t\t}\n\t\t\treturn userIsSpouse ?\n\t\t\t\t{\n\t\t\t\t\tvalue: requirements.spouseMax,\n\t\t\t\t\tmessage: `The maximum coverage amount for the Spouse of a CPA is $${getFormattedValue(requirements?.spouseMax)}`\n\t\t\t\t} as ValidationValueMessage :\n\t\t\t\t{\n\t\t\t\t\tvalue: requirements.cpaMax,\n\t\t\t\t\tmessage: `The maximum coverage amount is $${getFormattedValue(requirements?.cpaMax)}`\n\t\t\t\t} as ValidationValueMessage;\n\t\t}\n\t\treturn {\n\t\t\tvalue: requirements.max,\n\t\t\tmessage: `The maximum coverage amount is $${getFormattedValue(requirements?.max)}`\n\t\t} as ValidationValueMessage;\n\t};\n\n\tconst title = props.isSpouse ? PolicyAction.spouseProductTitle(props.product.id) : PolicyAction.productTitle(props.product.id);\n\tconst isTermLife = title === 'Term Life';\n\tconst isADD = title === 'Accidental Death and Dismemberment';\n\tconst isDisablity = title === 'Long Term Disability';\n\n\tconst coverageAmountField = props.isSpouse ? `spousePolicy[${props.settings.policyId}].coverageAmount` : `policy[${props.settings.policyId}].coverageAmount`;\n\tconst waitingPeriodField = props.isSpouse ? `spousePolicy[${props.settings.policyId}].waitingPeriod` : `policy[${props.settings.policyId}].waitingPeriod`;\n\tconst applyToChildrenField = props.isSpouse ? `spousePolicy[${props.settings.policyId}].applyToChildren` : `policy[${props.settings.policyId}].applyToChildren`;\n\tconst policyErrors = props.isSpouse ? errors?.spousePolicy : errors?.policy;\n\n\tconst showRequirements = (): boolean => {\n\t\tif(isDisablity){\n\t\t\treturn false;\n\t\t}\n\n\t\tif (isADD) { // Ignoring Accidental Death & Dismemberment for now because of conditional maxes\n\t\t\treturn true;\n\t\t}\n\n\t\tconst { min, max, spouseMax, cpaMax, multiplesOf, ...displayedReqs } = requirements;\n\t\tif (Object.keys(displayedReqs).length > 0) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\t};\n\n\tif (!isSelected) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t

{title}

\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t{warning}\n\t\t\t\t\n\t\t\t\t\t{isSelected && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t{settings.fields.includes(PolicyFields.coverageAmountField) &&\n\t\t\t\t\t\t\t\t\t\t requirements.multiplesOf ?\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue % requirements.multiplesOf === 0 || `Must be multiples of $${getFormattedValue(requirements.multiplesOf)}` : undefined,\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\trender={(controllerprops) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t { controllerprops.onChange(val); onChangeField(); }}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\terror={policyErrors?.[props.settings.policyId]?.coverageAmount?.message}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription={!isADD ?\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`Enter multiples of $${getFormattedValue(requirements.multiplesOf)} up to $${getFormattedValue(Number(getMax()?.value))}.` : undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t{isTermLife && !props.isSpouse &&\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t

Need help calculating the amount?

\n\t\t\t\t\t\t\t\t\t\t\tTake the Needs Assessment\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t{settings.fields.includes(PolicyFields.coverageAmountRadio) &&\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t { controllerprops.onChange(val); onChangeField(); }}\n\t\t\t\t\t\t\t\t\t\t\t\t\toptions={coverageAmountRadioOptions}\n\t\t\t\t\t\t\t\t\t\t\t\t\terror={policyErrors?.[props.settings.policyId]?.coverageAmount?.message}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t{settings.fields.includes(PolicyFields.waitingPeriod) && \n\t\t\t\t\t\t\t\t\t\t\t { controllerprops.onChange(val); onChangeField(); }}\n\t\t\t\t\t\t\t\t\t\t\t\terror={policyErrors?.[props.settings.policyId]?.waitingPeriod?.message}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>}\n\t\t\t\t\t\t\t\t\t{settings.fields.includes(PolicyFields.applyToChildren)\n\t\t\t\t\t\t\t\t\t\t&& ((props.isSpouse && !props.cpaChildrenCI)\t// if is spouse and cpa does not have children selected for CI\n\t\t\t\t\t\t\t\t\t\t\t|| (!props.isSpouse && !props.spouseChildrenCI))\t// or if not spouse and spouse has children selected for CI\n\t\t\t\t\t\t\t\t\t\t&&\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t { controllerprops.onChange(val); onChangeField(); }}\n\t\t\t\t\t\t\t\t\t\t\t\t\terror={policyErrors?.[props.settings.policyId]?.applyToChildren?.message}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t{showRequirements() && (\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t

Requirements:

\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t{requirements.min !== undefined && requirements.min > 0 && isADD && // Ignoring Accidental Death & Dismemberment for now because of conditional maxes\n\t\t\t\t\t\t\t\t\t\t\t\t
  • Enter multiples of ${getFormattedValue(requirements.multiplesOf)}
  • \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t{requirements.max && isADD &&\n\t\t\t\t\t\t\t\t\t\t\t\t
  • CPA Max: ${getFormattedValue(requirements.max)}
  • \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t{requirements.cpaMax && isADD &&\n\t\t\t\t\t\t\t\t\t\t\t\t
  • CPA Max: ${getFormattedValue(requirements.cpaMax)}
  • \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t{requirements.spouseMax && isADD &&\n\t\t\t\t\t\t\t\t\t\t\t\t
  • Non-CPA Max: ${getFormattedValue(requirements.spouseMax)}
  • \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t{/* {requirements.multiplesOf && isADD &&\n\t\t\t\t\t\t\t\t\t\t\t\t
  • Multiples of: ${getFormattedValue(requirements.multiplesOf)}
  • \n\t\t\t\t\t\t\t\t\t\t\t} */}\n\t\t\t\t\t\t\t\t\t\t\t{requirements.requiresLTD &&\n\t\t\t\t\t\t\t\t\t\t\t\t
  • Requires Long Term Disability Benefit
  • \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t{requirements.equalOrLowerThanTLB &&\n\t\t\t\t\t\t\t\t\t\t\t\t
  • Must be lower or equal to Term Life Benefit
  • \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t{props.settings.policyId === PoliciesIds.deplife &&\n\t\t\t\t\t\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\t\t\t\t\tDependent Child must be above the age of 14 days old and under the age of 23 or under 25 years of age (unmarried and financially dependent)\n\t\t\t\t\t\t\t\t\t\t\t\t\tand attending school full-time or is suffering from a functional impairment.\n\t\t\t\t\t\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t{props.settings.policyId === PoliciesIds.deplife &&\n\t\t\t\t\t\t\t\t\t\t\t\t
  • Flat amount chosen will apply to all children.
  • \n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{readMore ? (\n\t\t\t\t\t\n\t\t\t\t) : (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t
\n\t\t
\n\t);\n\tfunction validateToggle() {\n\t\tif (props.product.id === PoliciesIds.officeOH && isSelected === false) {\n\t\t\tconst getLTDProduct = props.selectedPolicies.filter((val) => val.policyId === PoliciesIds.ltd);\n\t\t\tconst ltdIsActive = getLTDProduct.length === 1;\n\t\t\tif (!ltdIsActive) {\n\t\t\t\tsetWarning('Must add Long Term Disability first.');\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (props.product.id === PoliciesIds.ltd && isSelected === true) {\n\t\t\tconst getOfficeOHProduct = props.selectedPolicies.filter((val) => val.policyId === PoliciesIds.officeOH);\n\t\t\tconst officeOHIsActive = getOfficeOHProduct.length === 1;\n\t\t\tif (officeOHIsActive) {\n\t\t\t\tsetWarning('Must remove Office Overhead first.');\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (props.product.id === PoliciesIds.add && isSelected === false) {\n\t\t\tconst getLifeProduct = props.selectedPolicies.filter((val) => val.policyId === PoliciesIds.life);\n\t\t\tconst lifeIsActive = getLifeProduct.length === 1;\n\t\t\tif (!lifeIsActive) {\n\t\t\t\tsetWarning('Must add Life Term first.');\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (props.product.id === PoliciesIds.life && isSelected === true) {\n\t\t\tconst getAddProduct = props.selectedPolicies.filter((val) => val.policyId === PoliciesIds.add);\n\t\t\tconst addIsActive = getAddProduct.length === 1;\n\t\t\tif (addIsActive) {\n\t\t\t\tsetWarning('Must remove Accidental Death and Dismemberment first.');\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tprops.onClick({ policyId: settings.policyId });\n\t\tprops.debouncedRequest();\n\t\tprops.loadPolicies?.();\n\t}\n};\n","import React from 'react';\nimport { PolicyActionContext } from './PolicyContext';\nimport { IconAdd } from 'components/icons';\nimport { Button } from 'components/buttons';\nimport { PoliciesIds } from './utils';\n\ninterface PolicyListProps {\n\tpolicyList: OliverProductResponseDTO[];\n\tisSpouse?: boolean;\n\tonClick: (e: any) => void;\n\tspouseDependentLife?: boolean;\n\tcpaDependentLife?: boolean;\n}\n\nconst PolicyList: React.FC = (props) => {\n\tconst PolicyAction = React.useContext(PolicyActionContext);\n\tconsole.log('props', props);\n\tconst policies = props.policyList\n\t\t.filter(product =>\n\t\t\t!(props.isSpouse && (PolicyAction.spouseProductTitle(product.id) === 'Long Term Disability' || PolicyAction.spouseProductTitle(product.id) === 'Office Overhead'))\n\t\t\t&& !(props.isSpouse && props.cpaDependentLife && product.id === PoliciesIds.deplife)\n\t\t\t&& !(props.isSpouse === false && props.spouseDependentLife && product.id === PoliciesIds.deplife)\n\t\t\t&& product.id !== 'CICH');\n\treturn (\n\t\t
\n\t\t\t{policies.map((product, index) => (\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
{props.isSpouse ? PolicyAction.spouseProductTitle(product.id) : PolicyAction.productTitle(product.id)}
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t))}\n\t\t
\n\t);\n};\n\nexport default PolicyList;\n","import React from 'react';\nimport { MyPolicy, sortProducts } from './utils';\nimport { PolicyCard } from './PolicyCard';\nimport { FormContext } from 'quote/FormContext';\nimport { PolicyActionContext } from './PolicyContext';\nimport PolicyList from './PolicyList';\n\ninterface CustomerProps {\n\tavailableProducts: OliverProductResponseDTO[];\n\thandleMenuClick: (e: any) => void;\n\tisDropdownVisible: boolean;\n\tsetDropdownVisible: React.Dispatch>;\n\tproducts: OliverProductResponseDTO[] | undefined;\n\tselectedPolicies: MyPolicy[];\n\tdebouncedRequest: any;\n\tpassValueToDispatch: (data: any) => void;\n\tisSpouse?: boolean;\n\tspouseChildrenCI?: boolean;\n\tcpaChildrenCI?: boolean;\n\tspouseDependentLife?: boolean;\n\tcpaDependentLife?: boolean;\n\tloadPolicies?: () => void;\n}\n\nexport const CustomerPolicyCard: React.FC = (props) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst PolicyAction = React.useContext(PolicyActionContext);\n\tconst summaryTitle = props.isSpouse\n\t\t? `${FormCtx.spouseData?.spouseFirstName || ''} ${FormCtx.spouseData?.spouseLastName || ''}`\n\t\t: `${FormCtx.initialUserData?.firstName || ''} ${FormCtx.initialUserData?.lastName || ''}`;\n\n\tconst productOrder = [\n\t\t'Term Life',\n\t\t'Long Term Disability',\n\t\t'Critical Illness',\n\t\t'Accidental Death and Dismemberment',\n\t\t'Dependent Life',\n\t\t'Office Overhead'\n\t];\n\n\tconst validProducts = props.availableProducts.filter(product => {\n\t\tconst title = props.isSpouse ? PolicyAction.spouseProductTitle(product.id) : PolicyAction.productTitle(product.id);\n\t\treturn title;\n\t});\n\n\tvalidProducts.sort((a, b) => {\n\t\tconst aTitle = props.isSpouse ? PolicyAction.spouseProductTitle(a.id) : PolicyAction.productTitle(a.id);\n\t\tconst bTitle = props.isSpouse ? PolicyAction.spouseProductTitle(b.id) : PolicyAction.productTitle(b.id);\n\t\treturn productOrder.indexOf(aTitle) - productOrder.indexOf(bTitle);\n\t});\n\treturn (\n\t\t
\n\t\t\t

{summaryTitle}'s Policy

\n\t\t\t{props.products && props.products.length > 0 && sortProducts(props.products).map((item) => {\n\t\t\t\treturn ;\n\t\t\t})}\n\t\t\t
\n\t\t\t\t

Add Coverage

\n\t\t\t\t{props.isSpouse ?\n\t\t\t\t\t

Add another product to your spouse’s policy until it’s just right for their needs.

\n\t\t\t\t\t:\n\t\t\t\t\t

Add another product to personalize your policy until it’s just right for your needs.

\n\t\t\t\t}\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n","import React from 'react';\nimport { FormContext } from 'quote/FormContext';\nimport { PolicyActionContext, PolicyDataContext } from './PolicyContext';\nimport { MyPolicy, QuoteFromOliver, sortProductsByName } from './utils';\nimport classNames from 'classnames';\nimport { ReactComponent as IconLoad } from 'assets/icons/icon-load.svg';\nimport { NavRoutes } from 'common/utils';\nimport { useHistory } from 'react-router-dom';\n\ninterface IProps {\n\tprimaryQuote: QuoteFromOliver[];\n\tspouseQuote?: QuoteFromOliver[];\n\tisPrimaryQuoteLoading?: boolean;\n\tisSpouseQuoteLoading?: boolean;\n\tisLoadingProducts?: boolean;\n\tloadPolicies?: () => void;\n}\n\nexport const SideBarComponent: React.FC = (props: IProps) => {\n\tconst { primaryQuote, spouseQuote, isPrimaryQuoteLoading, isSpouseQuoteLoading, isLoadingProducts, loadPolicies } = props;\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst { initialUserData: primaryUserData } = FormCtx;\n\tconst PolicyDataCtx = React.useContext(PolicyDataContext);\n\tconst PolicyActionCtx = React.useContext(PolicyActionContext);\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

{primaryUserData?.firstName || ''} {primaryUserData?.lastName || ''}'s Policy Summary

\n\t\t\t\t\t{PolicyDataCtx.policy.length === 0 &&

Start adding policies to your plan and we’ll calculate how much it will cost you monthly.

}\n\t\t\t\t\t{sortProductsByName(PolicyDataCtx.policy).map((item: MyPolicy, index: number) => {\n\t\t\t\t\t\tconst quoteItem = primaryQuote.find((val: QuoteFromOliver) => val.id === item.policyId);\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t{PolicyActionCtx.productTitle(item.policyId)}\n\t\t\t\t\t\t\t\t{!PolicyDataCtx.isDirty && primaryQuote.length > 0 && quoteItem !== undefined ? (\n\t\t\t\t\t\t\t\t\t${quoteItem?.premium?.toFixed(2).toLocaleString()} /mo\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t\t{PolicyDataCtx.policy.length !== 0 && (\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\tTotal\n\t\t\t\t\t\t\t{PolicyDataCtx.isDirty || primaryQuote.length === 0 ? (\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t${PolicyDataCtx.quoteData.total?.toFixed(2).toLocaleString()} /mo\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t
\n\n\t\t\t{FormCtx.spouseApplicantId !== undefined && FormCtx.spouseApplicantId !== '' &&\n\t\t\t\t<>\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

{FormCtx.spouseData?.spouseFirstName || ''} {FormCtx.spouseData?.spouseLastName || ''}'s Policy Summary

\n\t\t\t\t\t\t\t{PolicyDataCtx.spousePolicy.length === 0 &&

Start adding policies to your plan and we’ll calculate how much it will cost you monthly.

}\n\t\t\t\t\t\t\t{sortProductsByName(PolicyDataCtx.spousePolicy).map((item: MyPolicy, index: number) => {\n\t\t\t\t\t\t\t\tconst spouseQuoteItem = spouseQuote?.find((val: QuoteFromOliver) => val.id === item.policyId);\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t{PolicyActionCtx.spouseProductTitle(item.policyId)}\n\t\t\t\t\t\t\t\t\t\t{!PolicyDataCtx.spouseIsDirty && spouseQuote && spouseQuote.length > 0 && spouseQuoteItem !== undefined ? (\n\t\t\t\t\t\t\t\t\t\t\t${spouseQuoteItem?.premium?.toFixed(2).toLocaleString()} /mo\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t{PolicyDataCtx.spousePolicy.length !== 0 && (\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\tTotal\n\t\t\t\t\t\t\t\t\t{PolicyDataCtx.spouseIsDirty || spouseQuote === undefined || spouseQuote.length === 0 ? (\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t${PolicyDataCtx.spouseQuoteData.total?.toFixed(2).toLocaleString()} /mo\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\n\n\t\t\t\t\t{PolicyDataCtx.spousePolicy.length !== 0 && (\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\tCombined Total\n\t\t\t\t\t\t\t{PolicyDataCtx.spouseIsDirty || spouseQuote === undefined || spouseQuote.length === 0 ? (\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t${(\n\t\t\t\t\t\t\t\t\t\t(PolicyDataCtx.spouseQuoteData?.total || 0) +\n\t\t\t\t\t\t\t\t\t\t(PolicyDataCtx.quoteData?.total || 0)\n\t\t\t\t\t\t\t\t\t).toFixed(2).toLocaleString()} /mo\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t}\n\n\t\t\t
\n\t\t\t\t{spouseQuote !== undefined && spouseQuote.length !== 0 ? (\n\t\t\t\t\tPolicyDataCtx.isDirty || primaryQuote.length === 0 || PolicyDataCtx.spouseIsDirty || spouseQuote?.length === 0 ? (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{isPrimaryQuoteLoading || isSpouseQuoteLoading ? 'Loading premiums' : 'Calculate Premium'}\n\t\t\t\t\t\t\t{(isPrimaryQuoteLoading || isSpouseQuoteLoading) && }\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{!isPrimaryQuoteLoading && !isSpouseQuoteLoading &&\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t\t\t: (\n\n\t\t\t\t\t\tPolicyDataCtx.isDirty || primaryQuote.length === 0 ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{isPrimaryQuoteLoading ? 'Loading premiums' : 'Calculate Premium'}\n\t\t\t\t\t\t\t\t{isPrimaryQuoteLoading && }\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{!isPrimaryQuoteLoading &&\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t))}\n\t\t\t
\n\t\t
\n\n\t);\n\n\tfunction goToReview() {\n\t\tif (isPrimaryQuoteLoading || isSpouseQuoteLoading) { return; }\n\t\tPolicyActionCtx.checkAndSetHasChildCI();\n\t\tPolicyActionCtx.checkAndSetHasChildDL();\n\t\tPolicyActionCtx.spouseCheckAndSetHasChildDLorCL();\n\t\thistory.push(NavRoutes.QuoteReviewPolicy);\n\t}\n};\n","import React from 'react';\nimport { LoadContainer, QuoteContainer } from 'components/cpaipw';\nimport { FormContext } from 'quote/FormContext';\nimport { preventDefault, QuotePages } from 'common/utils';\nimport { getNearest10k, MyPolicy, PoliciesIds, PolicyParams, QuoteFromOliver } from './utils';\nimport { PolicyActionContext, PolicyDataContext } from './PolicyContext';\nimport { FormProvider, useForm } from 'react-hook-form';\nimport { useLocation } from 'react-router-dom';\nimport oliverAPI from 'api/OliverAPI';\nimport AwesomeDebouncePromise from 'awesome-debounce-promise';\nimport useConstant from './useConstant';\nimport { useAsyncCallback } from 'react-async-hook';\nimport { CustomerPolicyCard } from './CustomerPolicyCard';\nimport { SideBarComponent } from './SideBarComponent';\n\ninterface IProps { }\n\nconst SelectPolicy: React.FC = (props: IProps) => {\n\tconst location = useLocation();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst PolicyActionCtx = React.useContext(PolicyActionContext);\n\tconst PolicyDataCtx = React.useContext(PolicyDataContext);\n\tconst [quote, setQuote] = React.useState([]);\n\tconst [products, setProducts] = React.useState(undefined);\n\tconst [isLoadingProducts, setIsLoadingProducts] = React.useState(true);\n\tconst [isDropdownVisible, setDropdownVisible] = React.useState(false);\n\n\t//For Spouse\n\tconst [spouseQuote, setSpouseQuote] = React.useState([]);\n\tconst [isSpouseDropdownVisible, setSpouseDropdownVisible] = React.useState(false);\n\tconst [spouseChildrenCI, setSpouseChildrenCI] = React.useState(false);\n\tconst [cpaChildrenCI, setCpaChildrenCI] = React.useState(false);\n\tconst [spouseDependentLife, setSpouseDependentLife] = React.useState(false);\n\tconst [cpaDependentLife, setCpaDependentLife] = React.useState(false);\n\tconst isSpouseIncluded = FormCtx.spouseApplicantId !== undefined && FormCtx.spouseApplicantId !== '';\n\tconst [hasInitializedPolicies, setHasInitializedPolicies] = React.useState(false);\n\n\tconst methods = useForm({\n\t\tmode: 'onChange',\n\t\treValidateMode: 'onChange',\n\t});\n\n\tReact.useEffect(() => {\n\t\tif (PolicyDataCtx.isDirty === false) {\n\t\t\tPolicyActionCtx.setIsDirty(true);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [PolicyDataCtx.policy]);\n\n\tReact.useEffect(() => {\n\t\tif (isSpouseIncluded && PolicyDataCtx.spouseIsDirty === false) {\n\t\t\tPolicyActionCtx.setSpouseIsDirty(true);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [PolicyDataCtx.spousePolicy, isSpouseIncluded]);\n\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.personalizePolicy);\n\t\thandleDebouncedAsync.execute();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tif (hasInitializedPolicies === true) {\n\t\t\tif (PolicyDataCtx.policy.length === 0) {\n\t\t\t\tPolicyActionCtx.setQuoteData({});\n\t\t\t\tconst quote = PolicyActionCtx.createQuoteData({});\n\t\t\t\tsetQuote(quote);\n\t\t\t}\n\t\t\tif (PolicyDataCtx.spousePolicy.length === 0) {\n\t\t\t\tPolicyActionCtx.setSpouseQuoteData({});\n\t\t\t\tconst spouseQuote = PolicyActionCtx.spouseCreateQuoteData({});\n\t\t\t\tsetSpouseQuote(spouseQuote);\n\t\t\t}\n\t\t}\n\t\tsetSpouseChildrenCI(PolicyDataCtx.spousePolicy.some(policy => policy.policyId === PoliciesIds.cich));\n\t\tsetCpaChildrenCI(PolicyDataCtx.policy.some(policy => policy.policyId === PoliciesIds.cich));\n\t\tsetSpouseDependentLife(PolicyDataCtx.spousePolicy.some(policy => policy.policyId === PoliciesIds.deplife));\n\t\tsetCpaDependentLife(PolicyDataCtx.policy.some(policy => policy.policyId === PoliciesIds.deplife));\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [PolicyDataCtx.policy, PolicyDataCtx.spousePolicy]);\n\n\tReact.useEffect(() => {\n\n\t\tif (!hasInitializedPolicies) {\n\t\t\tconst calculations = FormCtx.calculateTotal();\n\t\t\tconst state = location.state as { updatePolicy?: boolean };\n\t\t\tconst updatePolicy = state?.updatePolicy !== undefined ? state?.updatePolicy : false;\n\t\t\tif (PolicyDataCtx.policy.length === 0 || updatePolicy === true) {\n\t\t\t\tconst total = getNearest10k(calculations.total);\n\t\t\t\tconst recommendation = (total > 2000000) ? 2000000 : (total <= 10000) ? 10000 : total;\n\t\t\t\tPolicyActionCtx.policyDispatch(\n\t\t\t\t\t{\n\t\t\t\t\t\tpolicyId: PoliciesIds.life,\n\t\t\t\t\t\tparameters: {\n\t\t\t\t\t\t\tcoverageAmount: FormCtx.skippedNeedsAssessment === false ? recommendation.toString() : '1000000',\n\t\t\t\t\t\t},\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t};\n\t\t\tif (PolicyDataCtx.spousePolicy.length === 0 || updatePolicy === true) {\n\t\t\t\tPolicyActionCtx.spousePolicyDispatch(\n\t\t\t\t\t{\n\t\t\t\t\t\tpolicyId: PoliciesIds.life,\n\t\t\t\t\t\tparameters: {\n\t\t\t\t\t\t\tcoverageAmount: '1000000',\n\t\t\t\t\t\t},\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t};\n\t\t\tsetHasInitializedPolicies(true);\n\t\t}\n\t\thandleDebouncedAsync.execute();\n\t\thandleSpouseDebouncedAsync.execute();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tasync function getProducts() {\n\t\t\tconst products = await oliverAPI.getOliverProducts();\n\t\t\tsetProducts(products);\n\t\t\tsetIsLoadingProducts(false);\n\t\t}\n\t\tgetProducts();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst asyncFunctionDebounced = useConstant(() => AwesomeDebouncePromise(\n\t\tgetPremium,\n\t\t1000,\n\t\t{ key: () => 'policy' }\n\t));\n\tconst handleDebouncedAsync = useAsyncCallback(asyncFunctionDebounced);\n\n\t//For Spouse\n\tconst asyncSpouseFunctionDebounced = useConstant(() => AwesomeDebouncePromise(\n\t\tgetSpousePremium,\n\t\t1000,\n\t\t{ key: () => 'spousePolicy' }\n\t));\n\tconst handleSpouseDebouncedAsync = useAsyncCallback(asyncSpouseFunctionDebounced);\n\n\t// Create a filtered list of products that are not already added to the policy\n\tconst isProductAdded = (productId: string) => {\n\t\treturn PolicyDataCtx.policy.some(policy => policy.policyId === productId);\n\t};\n\n\tconst availableProducts = products?.filter(product => product.id && !isProductAdded(product.id));\n\n\n\tfunction handleMenuClick(e: any) {\n\t\tconst productId = e.key;\n\t\tif (!isProductAdded(productId)) {\n\t\t\tconst policy: MyPolicy = {\n\t\t\t\tpolicyId: productId as PoliciesIds\n\t\t\t};\n\t\t\tPolicyActionCtx.policyDispatch(policy);\n\t\t}\n\t\tsetDropdownVisible(false);\n\t}\n\n\t// Create a filtered list of products that are not already added to the policy - For Spouse\n\tconst isSpouseProductAdded = (productId: string) => {\n\t\treturn PolicyDataCtx.spousePolicy.some(policy => policy.policyId === productId);\n\t};\n\n\tconst availableSpouseProducts = products?.filter(product => product.id && !isSpouseProductAdded(product.id));\n\n\tfunction handleSpouseMenuClick(e: any) {\n\t\tconst productId = e.key;\n\t\tif (!isSpouseProductAdded(productId)) {\n\t\t\tconst policy: MyPolicy = {\n\t\t\t\tpolicyId: productId as PoliciesIds\n\t\t\t};\n\t\t\tPolicyActionCtx.spousePolicyDispatch(policy);\n\t\t}\n\t\tsetSpouseDropdownVisible(false);\n\t}\n\n\tfunction loadPolicy() {\n\t\thandleDebouncedAsync.execute();\n\t\tisSpouseIncluded &&\n\t\t\thandleSpouseDebouncedAsync.execute();\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t{isSpouseIncluded &&\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t}\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n\n\tfunction passValueToDispatch(data: any) {\n\t\tPolicyActionCtx.policyDispatch(data);\n\t}\n\n\tfunction passSpouseValueToDispatch(data: any) {\n\t\tPolicyActionCtx.spousePolicyDispatch(data);\n\t}\n\n\tfunction createRequest(values: any) {\n\t\tconst keys = Object.keys(values);\n\t\tconst params = keys.map((key: string) => {\n\t\t\treturn {\n\t\t\t\tpolicyId: key,\n\t\t\t\tparameters: values[key] as PolicyParams | undefined,\n\t\t\t};\n\t\t}) as MyPolicy[];\n\t\tpassValueToDispatch(params);\n\t\tconst request = PolicyActionCtx.createRequest(params);\n\t\treturn request;\n\t}\n\n\tfunction createSpouseRequest(values: any) {\n\t\tconst keys = Object.keys(values);\n\t\tconst params = keys.map((key: string) => {\n\t\t\treturn {\n\t\t\t\tpolicyId: key,\n\t\t\t\tparameters: values[key] as PolicyParams | undefined,\n\t\t\t};\n\t\t}) as MyPolicy[];\n\t\tpassSpouseValueToDispatch(params);\n\t\tconst request = PolicyActionCtx.spouseCreateRequest(params);\n\t\treturn request;\n\t}\n\n\tasync function getPremium() {\n\t\tconst isValid = await methods.trigger();\n\t\tconst values = methods.getValues().policy;\n\n\t\tif (values?.CI !== undefined && values?.CI?.coverageAmount === '0' && values?.CI?.applyToChildren !== 'yes') {\n\t\t\tmethods.setError('policy.CI.coverageAmount', { message: 'A coverage amount of $0 is only possible when coverage for children is enabled.' });\n\t\t\treturn;\n\t\t}\n\n\t\tif (isValid === false) {\n\t\t\treturn;\n\t\t}\n\t\tif (values?.CI !== undefined && values?.CI?.applyToChildren === 'yes') {\n\t\t\tvalues[PoliciesIds.cich] = {\n\t\t\t\t//// This is the default coverage amount for\n\t\t\t\t//// adding children to Critical Illness\n\t\t\t\tcoverageAmount: 10000,\n\t\t\t};\n\t\t}\n\t\tconst request = createRequest(values);\n\t\tconst fetchedData = await oliverAPI.getQuote(request);\n\n\t\tPolicyActionCtx.setQuoteData(fetchedData);\n\t\tconst quote = PolicyActionCtx.createQuoteData(fetchedData);\n\t\tsetQuote(quote);\n\t\tPolicyActionCtx.setIsDirty(false);\n\t}\n\n\tasync function getSpousePremium() {\n\t\tconst isValid = await methods.trigger();\n\t\tconst spouseValues = methods.getValues().spousePolicy;\n\n\t\tif (spouseValues?.CI !== undefined && spouseValues?.CI?.coverageAmount === '0' && spouseValues?.CI?.applyToChildren !== 'yes') {\n\t\t\tmethods.setError('policy.CI.coverageAmount', { message: 'A coverage amount of $0 is only possible when coverage for children is enabled.' });\n\t\t\treturn;\n\t\t}\n\t\tif (isValid === false) {\n\t\t\treturn;\n\t\t}\n\t\tif (spouseValues?.CI !== undefined && spouseValues?.CI?.applyToChildren === 'yes') {\n\t\t\tspouseValues[PoliciesIds.cich] = {\n\t\t\t\t//// This is the default coverage amount for\n\t\t\t\t//// adding children to Critical Illness\n\t\t\t\tcoverageAmount: 10000,\n\t\t\t};\n\t\t}\n\t\tconst spouseRequest = createSpouseRequest(spouseValues);\n\t\tconst spouseFetchedData = await oliverAPI.getQuote(spouseRequest);\n\n\t\tPolicyActionCtx.setSpouseQuoteData(spouseFetchedData);\n\t\tconst spouseQuote = PolicyActionCtx.spouseCreateQuoteData(spouseFetchedData);\n\t\tsetSpouseQuote(spouseQuote);\n\t\tPolicyActionCtx.setSpouseIsDirty(false);\n\t}\n\n};\n\n\n\nexport default SelectPolicy;\n","import React from 'react';\nimport { Tooltip } from 'antd';\nimport { ReactComponent as IconTooltip } from 'assets/icons/icon-tooltip.svg';\nimport { Button } from 'components/buttons';\nimport { tooltipText } from './utils';\n\ninterface IProps {\n\titem: any;\n}\n\nexport const PolicyReviewItem: React.FC = ( props: IProps ) => {\n\tconst { title, premium, parameters } = props.item;\n\tconst [waitingPeriodTooltipOpen, setWaitingPeriodTooltipOpen] = React.useState(false);\n\tconst [applyToChildrenTooltipOpen, setApplyToChildrenTooltipOpen] = React.useState(false);\n\n\treturn (\n\t\t\n\t\t\t
\n\t\t\t\t
{title}
\n\t\t\t\t
\n\t\t\t\t\t
${premium ? premium.toFixed(2).toLocaleString() : 0.00}
\n\t\t\t\t\t
/mo
\n\t\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t\t{parameters.coverageAmount && (\n\t\t\t\t\t
\n\t\t\t\t\t\tCoverage Amount\n\t\t\t\t\t\t${parseFloat(parameters.coverageAmount).toLocaleString('en')}\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t\t{parameters.waitingPeriod !== '0' && parameters.waitingPeriod !== 0 && (\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\tWaiting Period\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t{parameters.waitingPeriod} days\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t\t{parameters.childCoverageAmount && (\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\tChild(ren) Coverage\n\t\t\t\t\t\t
\n\t\t\t\t\t\t${parseFloat(parameters.childCoverageAmount).toLocaleString('en')}\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t\t{parameters.applyToChildren && (\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\tApply to Children\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t{parameters.applyToChildren}\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t
\n\t\t
\n\t);\n\tfunction toggleWaitingPeriodTooltip() {\n\t\tsetWaitingPeriodTooltipOpen(v => !v);\n\t}\n\tfunction toggleApplyToChildrenTooltip() {\n\t\tsetApplyToChildrenTooltipOpen(v => !v);\n\t}\n};\n","import React from 'react';\nimport { NavRoutes, QuotePages, ValidationMessages } from 'common/utils';\nimport { CheckboxButton, QuoteContainer } from 'components/cpaipw';\nimport { FormContext } from 'quote/FormContext';\nimport { PolicyReviewItem } from './PolicyReviewItem';\nimport { PolicyActionContext, PolicyDataContext } from './PolicyContext';\nimport { Button } from 'components/buttons';\nimport { useHistory } from 'react-router-dom';\nimport { PoliciesIds, sortProducts } from './utils';\nimport { Controller, FormProvider, useForm } from 'react-hook-form';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport oliverAPI from 'api/OliverAPI';\nimport { ReactComponent as IconLoad } from 'assets/icons/icon-load.svg';\n\ninterface IOptIn {\n\toptIn: boolean;\n\temail: string;\n\tsendPDFByEmail: boolean;\n}\n\nconst ReviewSelection: React.FC = () => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst PolicyData = React.useContext(PolicyDataContext);\n\tconst PolicyAction = React.useContext(PolicyActionContext);\n\tconst history = useHistory();\n\tconst quoteData = PolicyAction.createQuoteData(PolicyData.quoteData);\n\tconst hasChildCI = PolicyData.hasChildCI;\n\tconst spouseQuoteData = PolicyAction.createQuoteData(PolicyData.spouseQuoteData);\n\tconst total = PolicyData.quoteData.total;\n\tconst spouseTotal = PolicyData.spouseQuoteData.total;\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\tdefaultValues: {\n\t\t\toptIn: FormCtx.initialUserData?.optIn,\n\t\t\temail: FormCtx.initialUserData?.email || ''\n\t\t},\n\t\treValidateMode: 'onChange'\n\t});\n\tconst { control, errors, handleSubmit } = methods;\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(QuotePages.applyForCoverage);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\tconst [emailSent, setEmailSent] = React.useState(false);\n\tconst [emailError, setEmailError] = React.useState();\n\tconst [emailSendError, setEmailSendError] = React.useState();\n\n\tconst handleEmailReport = async (values: IOptIn) => {\n\t\tFormCtx.setIsLoading(true);\n\t\tif (emailSendError !== undefined) {\n\t\t\tsetEmailSendError(undefined);\n\t\t}\n\n\t\ttry {\n\t\t\tif (values.email) {\n\t\t\t\tupdateContactDetails(values);\n\t\t\t\tconst combinedValues = {\n\t\t\t\t\t...FormCtx.initialUserData,\n\t\t\t\t\t...FormCtx.personalData,\n\t\t\t\t\t...FormCtx.spouseData,\n\t\t\t\t\t...FormCtx.needsAssessment,\n\t\t\t\t\t...values,\n\t\t\t\t\tsendPDFByEmail: true\n\t\t\t\t};\n\t\t\t\tawait FormCtx.upsertFormValues(combinedValues);\n\t\t\t\tconst hasSpousePolicy = PolicyData.spousePolicy.length > 0;\n\t\t\t\tconst is_pdf_sent = await oliverAPI.postReport({ applicant_id: FormCtx.applicantId, spouse_applicant_id: FormCtx.spouseApplicantId, has_spouse_policy: hasSpousePolicy });\n\t\t\t\tsetEmailSent(is_pdf_sent);\n\t\t\t\tif (!is_pdf_sent) {\n\t\t\t\t\tsetEmailSendError('There was a problem sending the email. Please verify your information and try again.');\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tsetEmailError(ValidationMessages.email);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tsetEmailSendError('There was a problem sending the email. Please verify your information and try again.');\n\t\t} finally {\n\t\t\tFormCtx.setIsLoading(false);\n\t\t}\n\t};\n\n\tconst onSubmit = async (values: IOptIn) => {\n\t\tFormCtx.setIsLoading(true);\n\t\tupdateContactDetails(values);\n\t\tconst combinedValues = {\n\t\t\t...FormCtx.initialUserData,\n\t\t\t...FormCtx.personalData,\n\t\t\t...FormCtx.spouseData,\n\t\t\t...FormCtx.needsAssessment,\n\t\t\t...values,\n\t\t\tsendPDFByEmail: true\n\t\t};\n\t\tconst result = await FormCtx.upsertFormValues(combinedValues);\n\t\tFormCtx.setIsLoading(false);\n\t\tif (result !== undefined) {\n\t\t\twindow.open('https://app.hellosign.com/s/F8ADs3cY');\n\t\t} else {\n\t\t\talert('error');\n\t\t}\n\t\tconst hasSpousePolicy = PolicyData.spousePolicy.length > 0;\n\t\tawait oliverAPI.sendApplyEvent({\n\t\t\tapplicant_id: FormCtx.applicantId,\n\t\t\tspouse_applicant_id: FormCtx.spouseApplicantId,\n\t\t\thas_spouse_policy: hasSpousePolicy,\n\t\t\t//opt_in: FormCtx.initialUserData?.optIn\n\t\t});\n\t};\n\n\tconst updateContactDetails = (values: IOptIn) => {\n\t\tconst email = values.email !== undefined && values.email !== '' ? values.email : FormCtx.initialUserData?.email;\n\t\tconst sendPDFByEmail = values.sendPDFByEmail !== undefined ? values.sendPDFByEmail : FormCtx.initialUserData?.sendPDFByEmail;\n\n\t\tFormCtx.setInitialUserData({\n\t\t\t...FormCtx.initialUserData,\n\t\t\temail,\n\t\t\toptIn: values.optIn,\n\t\t\tsendPDFByEmail\n\t\t});\n\t};\n\n\tconst emailSubscriptionOptIn = FormCtx.initialUserData?.optIn;\n\n\tconst addCIChildData = (item: any) => {\n\t\tif (item.product.id === PoliciesIds.ci && hasChildCI) {\n\t\t\tconst childCi = quoteData.find((val: any) => val.id === PoliciesIds.cich);\n\t\t\tif (childCi) {\n\t\t\t\tconst totalPremium = childCi.premium + item.product.premium;\n\t\t\t\titem.product.premium = totalPremium;\n\t\t\t\titem.product.parameters.childCoverageAmount = childCi.parameters.coverageAmount;\n\t\t\t}\n\t\t}\n\n\t\treturn item;\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Review your quote

\n\t\t\t\t
\n\t\t\t\t\t

{FormCtx.initialUserData?.firstName || ''} {FormCtx.initialUserData?.lastName || ''}'s CPA Policy

\n\t\t\t\t\t{quoteData.length > 0 && sortProducts(quoteData)\n\t\t\t\t\t\t.filter(f => f.product.id !== PoliciesIds.cich)\n\t\t\t\t\t\t.map((item: any) => {\n\t\t\t\t\t\t\tconst itemProduct = addCIChildData(item);\n\t\t\t\t\t\t\titem.product = { itemProduct, ...item.product };\n\t\t\t\t\t\t\treturn ;\n\t\t\t\t\t\t})}\n\t\t\t\t\t
\n\t\t\t\t\t\t
Total
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
${total && total.toFixed(2).toLocaleString()}
\n\t\t\t\t\t\t\t
/mo
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t{FormCtx.spouseApplicantId !== undefined && FormCtx.spouseApplicantId !== '' && spouseQuoteData.length > 0 &&\n\t\t\t\t\t
\n\t\t\t\t\t\t

{FormCtx.spouseData?.spouseFirstName || ''} {FormCtx.spouseData?.spouseLastName || ''}'s CPA Policy

\n\t\t\t\t\t\t{spouseQuoteData.length > 0 && sortProducts(spouseQuoteData).map((item: any) => {\n\t\t\t\t\t\t\treturn ;\n\t\t\t\t\t\t})}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
Total
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
${spouseTotal && spouseTotal.toFixed(2).toLocaleString()}
\n\t\t\t\t\t\t\t\t
/mo
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t}\n\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t{emailSubscription()}\n\t\t\t\t
\n\t\t\t
\n\t\t
);\n\n\tfunction emailSubscription() {\n\t\treturn (\n\t\t\t
\n\t\t\t\t{emailSent ||\n\t\t\t\t\t
\n\t\t\t\t\t\t

Get a copy of your quote sent to your email.

\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tonChange(event);\n\t\t\t\t\t\t\t\t\t\t\tif (emailError !== undefined) { setEmailError(undefined); }\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors.email?.message ?? emailError}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t{!emailSubscriptionOptIn && !FormCtx.isLoading &&\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"text-left font-weight-normal\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tSend Email\n\t\t\t\t\t\t\n\t\t\t\t\t\t{emailSendError}\n\t\t\t\t\t
\n\t\t\t\t}\n\t\t\t\t{emailSent &&\n\t\t\t\t\t
\n\t\t\t\t\t\t

Success!

\n\t\t\t\t\t\t

Your quote has been sent to

\n\t\t\t\t\t\t{FormCtx.initialUserData?.email}\n\t\t\t\t\t\t

Check your email soon to see your personalized report.\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t}\n\t\t\t
);\n\t}\n};\nexport default ReviewSelection;\n","import { ValidationMessages } from 'common/utils';\nimport { IChild } from './AboutYouQuestions/ApplicationContext';\nimport { LifestyleConsumptionQuestionWithUserName, LifestyleSingleQuestion, LifestyleQuestionWithUserName } from './LifestyleQuestions/LifestyleTypes';\n\nexport function lifestyleValidation(val: string[], notApplicable: boolean) {\n\tif (notApplicable === false) {\n\t\tif (val.length === 0) {\n\t\t\treturn ValidationMessages.required;\n\t\t}\n\t}\n}\n\nexport const provinces = [\n\t{\n\t\tlabel: 'Alberta',\n\t\tvalue: 'alberta'\n\t},\n\t{\n\t\tlabel: 'British Columbia',\n\t\tvalue: 'british columbia'\n\t},\n\t{\n\t\tlabel: 'Manitoba',\n\t\tvalue: 'manitoba'\n\t},\n\t{\n\t\tlabel: 'New Brunswick',\n\t\tvalue: 'new brunswick'\n\t},\n\t{\n\t\tlabel: 'Newfoundland and Labrador',\n\t\tvalue: 'Newfoundland and Labrador'\n\t},\n\t{\n\t\tlabel: 'Northwest Territories',\n\t\tvalue: 'northwest territories'\n\t},\n\t{\n\t\tlabel: 'Nova Scotia',\n\t\tvalue: 'Nova Scotia'\n\t},\n\t{\n\t\tlabel: 'Northwest Territories',\n\t\tvalue: 'northwest territories'\n\t},\n\t{\n\t\tlabel: 'Nunavut',\n\t\tvalue: 'Nunavut'\n\t},\n\t{\n\t\tlabel: 'Ontario',\n\t\tvalue: 'Ontario'\n\t},\n\t{\n\t\tlabel: 'Prince Edward Island',\n\t\tvalue: 'prince edward island'\n\t},\n\t{\n\t\tlabel: 'Quebec',\n\t\tvalue: 'quebec'\n\t},\n\t{\n\t\tlabel: 'Saskatchewan',\n\t\tvalue: 'saskatchewan'\n\t},\n\t{\n\t\tlabel: 'Yukon',\n\t\tvalue: 'yukon'\n\t}\n];\n\nexport function extractSection6LifestyleData(vals: any, children: IChild[]) {\n\tlet queriedLifestyleData = {};\n\tif (vals === null || vals === undefined) {\n\t\treturn queriedLifestyleData;\n\t}\n\n\tif (vals.notApplicable) {\n\t\treturn queriedLifestyleData;\n\t}\n\n\tconst section6Questions = Object.keys(vals).filter(v => v !== 'notApplicable');\n\tsection6Questions.forEach(question => {\n\t\tconst questionDataList = [] as LifestyleConsumptionQuestionWithUserName[];\n\t\tconst userQuestionDataKeys = Object.keys(vals[question]);\n\t\tuserQuestionDataKeys.forEach(user => {\n\t\t\tlet data = {} as LifestyleConsumptionQuestionWithUserName;\n\t\t\tif (user !== 'Applicant') {\n\t\t\t\t// data.idOfApplicantOrChildren = getChildrenDetails(user, children);\n\t\t\t} else {\n\t\t\t\tdata.idOfApplicantOrChildren = user;\n\t\t\t}\n\n\t\t\tconst keys = Object.keys(vals[question][user]);\n\n\t\t\tif (keys.length > 1) {\n\t\t\t\tkeys.forEach(key => {\n\t\t\t\t\tif (key === 'numberGramsPerWeek') {\n\t\t\t\t\t\tdata.consumptionAmount = vals[question][user][key];\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tdata.consumptionAmount = vals[question][user][keys[0]];\n\t\t\t}\n\n\t\t\tquestionDataList.push(data);\n\t\t\t(queriedLifestyleData as any)[question] = questionDataList;\n\t\t});\n\t\t// console.log('keys', queriedLifestyleData);\n\t});\n\n\treturn queriedLifestyleData;\n}\n\n\nexport function extractLifestyleData(vals: any, section: string, children: IChild[]) {\n\tlet queriedLifestyleData = [] as LifestyleQuestionWithUserName[];\n\tif (vals === null || vals === undefined) {\n\t\treturn queriedLifestyleData;\n\t}\n\n\tif (vals.notApplicable) {\n\t\treturn queriedLifestyleData;\n\t}\n\n\tconst userLifeStyleData = Object.keys(vals[section]);\n\n\tuserLifeStyleData.forEach(key => {\n\t\tconst data = {\n\t\t\tidOfApplicantOrChildren: key,\n\t\t\tdata: vals[section][key],\n\t\t} as LifestyleQuestionWithUserName;\n\t\tqueriedLifestyleData.push(data);\n\t});\n\n\treturn queriedLifestyleData;\n}\n\nexport function extractSimpleLifestyleData(vals: any, section: string, children: IChild[]) {\n\tlet queriedLifestyleData = [] as LifestyleSingleQuestion[];\n\n\tif (vals === null || vals === undefined) {\n\t\treturn queriedLifestyleData;\n\t}\n\n\tif (vals.notApplicable) {\n\t\treturn queriedLifestyleData;\n\t}\n\n\tconst lifestyleData = vals[section].filter((key: any) => key !== '' && key !== undefined);\n\tconst userLifeStyleData = lifestyleData.map((sec: any) => {\n\n\t\tlet data = {\n\t\t\tsuspended: true,\n\t\t\tidOfApplicantOrChildren: sec,\n\t\t} as LifestyleSingleQuestion;\n\n\t\tif (sec !== 'Applicant') {\n\t\t\tconst nameField = getChildrenDetails(sec, children);\n\t\t\tdata.name = nameField!;\n\t\t}\n\n\t\treturn data;\n\n\t});\n\n\treturn userLifeStyleData;\n}\n\nexport const getChildrenDetails = (id: string, childrenData?: IChild[]) => {\n\tif ( childrenData === undefined ) { return null; }\n\n\tconst foundChildData = childrenData.find(child => child.id === id) as IChild;\n\tif (foundChildData !== undefined) {\n\t\treturn foundChildData.firstName;\n\t} else {\n\t\treturn '';\n\t}\n\n};","import React from 'react';\n\ninterface IOption {\n\tlabel: string,\n\tvalue: string\n}\n\ninterface IProps {\n\tname: string,\n\toptions: IOption[],\n\tonChange: (value: string) => void;\n\tselected: string,\n\tplaceholder?: string;\n\tdisabled?: boolean;\n}\n\nexport const Select: React.FC = (props: IProps) => {\n\n\treturn (\n\t\t\n\t\t\t (props.onChange(e.target.value))}\n\t\t\t\tplaceholder={props.placeholder}\n\t\t\t\tdisabled={props.disabled}\n\t\t\t>\n\t\t\t\t{props.options.map((province, key) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{province.label}\n\t\t\t\t\t\t\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t\n\t\t\n\t);\n};\n","import React from 'react';\nimport { FormContext } from 'quote/FormContext';\nimport { IUnit, Units, UnitsTypeInput } from './UnitsTypeInput';\n\ninterface IProps {\n\tname: string;\n\tid?: string;\n\tvalue: string; // always metric (cm)\n\tonChange: (value: string) => void; // always sends in metric (cm) value\n}\n\nexport const HeightInput: React.FC = (props: IProps) => {\n\tconst formCxt = React.useContext(FormContext);\n\tconst { heightUnit: unit, setHeightUnit: setUnit } = formCxt;\n\tconst [displayValue, setDisplayValue] = React.useState(props.value);\n\tconst [displayValueFtIn, setDisplayValueFtIn] = React.useState<{ft: string, in: string}>({ft: '', in: ''});\n\n\n\tReact.useEffect(() => {\n\t\tif (unit === Units.ftin) {\n\t\t\tsetDisplayValue(convertToFT(displayValue));\n\t\t} else {\n\t\t\t// double check to see if display value isn't in cm yet\n\t\t\tif ( props.value !== displayValue ) {\n\t\t\t\tconst newValue = convertToCM(displayValue);\n\t\t\t\tsetDisplayValue(newValue);\n\t\t\t}\n\t\t}\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [unit]);\n\n\tReact.useEffect(() => {\n\t\tif (displayValueFtIn.ft !== '' && displayValueFtIn.in !== '') {\n\t\t\tconst valueFt = parseInt(displayValueFtIn.ft);\n\t\t\tconst valueIn = parseInt(displayValueFtIn.in);\n\t\t\tif ( isNaN(valueFt) || isNaN(valueIn) ) {\n\t\t\t\tprops.onChange('NaN');\n\t\t\t} else {\n\t\t\t\thandleOnChange(`${valueFt}'${valueIn}\"`);\n\t\t\t}\n\t\t} else {\n\t\t\tconst newValue = convertToCM(displayValue);\n\t\t\tsetDisplayValue(newValue);\n\t\t}\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [displayValueFtIn]);\n\n\tconst units = [\n\t\t{\n\t\t\tlabel: Units.ftin,\n\t\t\tvalue: Units.ftin\n\t\t},\n\t\t{\n\t\t\tlabel: Units.cm,\n\t\t\tvalue: Units.cm\n\t\t}\n\t] as IUnit[];\n\n\tconst handleOnChange = (value: string) => {\n\t\tsetDisplayValue(value);\n\t\tvar height = value;\n\t\tif (unit === Units.ftin) {\n\t\t\theight = convertToCM(height);\n\t\t}\n\n\t\tprops.onChange(height);\n\t};\n\n\tconst convertToFT = (value: string) => {\n\t\tif(value.length <= 0) { return value; };\n\t\tvar cm = Number(value);\n\n\t\tif(isNaN(cm)) { return value; };\n\t\tvar cmInInches = cm / 2.54;\n\t\tvar feet = Math.floor(cm / 30.48);\n\t\tvar inches = (cmInInches - (feet * 12)).toFixed(0);\n\t\tsetDisplayValueFtIn({ft: `${feet}`, in: `${inches}`});\n\t\treturn `${feet}'${inches}\"`;\n\t};\n\n\tconst convertToCM = (value: string) => {\n\t\tif(value.length <= 0) { return value; }\n\n\t\tvar height = value.trim();\n\n\t\tvar ftinSplit = null;\n\t\tvar footPart = null;\n\t\tvar inchPart = null;\n\t\tif (height.includes(\"'\") && height.includes('\"')) {\n\t\t\tftinSplit = height.split(\"'\");\n\t\t\tfootPart = ftinSplit[0].trim();\n\t\t\tinchPart = ftinSplit[1].replace('\"', '').trim();\n\t\t} else if (height.includes('ft') && height.includes('in')) {\n\t\t\tftinSplit = height.split('ft');\n\t\t\tfootPart = ftinSplit[0].trim();\n\t\t\tinchPart = ftinSplit[1].replace('in', '').trim();\n\t\t} else if (height.includes(' ') && height.length > 2) {\n\t\t\tftinSplit = height.split(' ');\n\t\t\tfootPart = ftinSplit[0].trim();\n\t\t\tinchPart = ftinSplit[1].trim();\n\t\t} else { return value; }\n\n\t\tvar feet = Number(footPart);\n\t\tvar inches = Number(inchPart);\n\n\t\tif(isNaN(feet) || isNaN(inches)) { return value; };\n\n\t\tvar feetInCM = (feet * 30.48);\n\t\tvar inchesInCM = inches * 2.54;\n\t\tvar total = feetInCM + inchesInCM;\n\n\t\treturn total.toFixed(0);\n\t};\n\n\tconst updateUnits = (newUnit: Units) => {\n\t\tsetUnit(newUnit);\n\n\t\tif (newUnit === Units.ftin) {\n\t\t\tsetDisplayValue(convertToFT(displayValue));\n\t\t} else {\n\t\t\tvar newValue = convertToCM(displayValue);\n\t\t\tsetDisplayValue(newValue);\n\t\t\tprops.onChange(newValue);\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t{unit === Units.ftin && (\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tsetDisplayValueFtIn({\n\t\t\t\t\t\t\t\t\t...displayValueFtIn,\n\t\t\t\t\t\t\t\t\tft: e.target.value\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\tft\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tsetDisplayValueFtIn({\n\t\t\t\t\t\t\t\t\t...displayValueFtIn,\n\t\t\t\t\t\t\t\t\tin: e.target.value\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\tin\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t)}\n\t\t\t\n\t\t
\n\t);\n};\n\n","import React from 'react';\nimport { FormContext } from 'quote/FormContext';\nimport { IUnit, Units, UnitsTypeInput } from './UnitsTypeInput';\n\ninterface IProps {\n\tname: string;\n\tid?: string;\n\tvalue: string; // always metric (kg)\n\tonChange: (value: string) => void; // always sends in metric (kg) value\n}\n\nexport const WeightInput: React.FC = (props: IProps) => {\n\tconst formCxt = React.useContext(FormContext);\n\tconst { weightUnit: unit, setWeightUnit: setUnit } = formCxt;\n\tconst [displayValue, setDisplayValue] = React.useState(props.value);\n\n\tReact.useEffect(() => {\n\t\tif (unit === Units.lbs) {\n\t\t\tsetDisplayValue(convertToLbs(displayValue));\n\t\t} else {\n\t\t\t// double check to see if display value isn't in kgs yet\n\t\t\tif ( props.value !== displayValue ) {\n\t\t\t\tconst newValue = convertToKg(displayValue);\n\t\t\t\tsetDisplayValue(newValue);\n\t\t\t}\n\t\t}\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [unit]);\n\n\tconst units = [\n\t\t{\n\t\t\tlabel: Units.lbs,\n\t\t\tvalue: Units.lbs\n\t\t},\n\t\t{\n\t\t\tlabel: Units.kg,\n\t\t\tvalue: Units.kg\n\t\t}\n\t] as IUnit[];\n\n\tconst handleOnChange = (value: string) => {\n\t\tsetDisplayValue(value);\n\t\tlet weight = value;\n\t\tif (unit === Units.lbs) {\n\t\t\tweight = convertToKg(weight);\n\t\t}\n\n\t\tprops.onChange(weight);\n\t};\n\n\tconst updateUnits = (newUnit: Units) => {\n\t\tif ( newUnit === unit ) {\n\t\t\treturn;\n\t\t}\n\t\tsetUnit(newUnit);\n\t};\n\n\tconst convertToLbs = (value: string) => {\n\t\tlet weight = parseFloat(value);\n\n\t\treturn isNaN(weight) ? value : Math.round(weight / 0.453592).toString();\n\t};\n\n\tconst convertToKg = (value: string) => {\n\t\tlet weight = parseFloat(value);\n\n\t\treturn isNaN(weight) ? value : Math.round(weight * 0.453592).toString();\n\t};\n\n\treturn (\n\t\t\n\t);\n};","import React from 'react';\n\nexport interface IChild {\n\tid: string,\n\trelationship?: string,\n\tfirstName?: string,\n\tmiddleInitial?: string,\n\tlastName?: string,\n\tdateOfBirth?: string,\n\tgender?: string,\n\theight?: string,\n\tweight?: string,\n\tweightOneYearAgo?: string,\n\tweightChangeReason?: string\n}\n\nexport interface IEmployer {\n\tname: string;\n\taddress: string;\n\tcity: string;\n\tprovince: string;\n\tpostalCode: string;\n};\n\nexport interface IAboutYouApplication {\n\tapplicationId?: string,\n\tapplicantId?: string,\n\tquoteId?: string,\n\tfirstName?: string,\n\tlastName?: string,\n\tcpaNumber?: string,\n\temail?: string,\n\taddress?: string,\n\tcity?: string,\n\tprovince?: string,\n\tpostalCode?: string,\n\thomePhone?: string,\n\tbirthCountry?: string,\n\tbirthProvinceOrState?: string,\n\theight?: string,\n\tweight?: string,\n\tweightOneYearAgo?: string,\n\tweightChangeReason?: string,\n\toccupation?: string,\n\tisWorking?: string,\n\treasonForNotWorking?: string,\n\tworkPhone?: string,\n\tworkedHours?: string,\n\temployer?: IEmployer,\n\tchildren?: IChild[]\n}\n\ninterface IApplicationDataContext {\n\tapplicationData: IAboutYouApplication;\n\tgetAccordionUsers: () => AccordionUser[];\n}\n\ninterface IApplicationActionContext {\n\tsetApplicationData: React.Dispatch>;\n\textractChildData: (vals: any) => void;\n}\n\nconst ApplicationDataContext = React.createContext({\n\tapplicationData: {},\n\tgetAccordionUsers: () => [],\n\n});\n\nconst ApplicationActionContext = React.createContext({\n\tsetApplicationData: () => null,\n\textractChildData: () => null\n});\n\n\nexport type AccordionUser = {\n\tdisplayName: string;\n\tuserId: string;\n};\n\nconst ApplicationProvider = (props: any) => {\n\tconst [applicationData, setApplicationData] = React.useState({});\n\n\tconst getAccordionUsers = () => {\n\t\tconst userArray: AccordionUser[] = [];\n\t\tuserArray.push({\n\t\t\tuserId: 'Applicant',\n\t\t\tdisplayName: `${applicationData.firstName} ${applicationData.lastName}`,\n\t\t});\n\t\tconst children = applicationData.children !== undefined && applicationData.children.map((child: IChild) => {\n\t\t\treturn {\n\t\t\t\tuserId: child.id,\n\t\t\t\tdisplayName: `${child.firstName} ${child.lastName}`\n\t\t\t} as AccordionUser;\n\t\t});\n\t\tif (Array.isArray(children) && children.length > 0) {\n\t\t\treturn userArray.concat(children);\n\t\t}\n\t\treturn userArray;\n\t};\n\n\tconst extractChildData = (vals: any) => {\n\t\tif (vals === null || vals === undefined) {\n\t\t\treturn [] as IChild[];\n\t\t}\n\t\tconst children = Object.keys(vals);\n\t\tconst contents = children.map((child: any, index: number) => {\n\t\t\tconst newChild: IChild = {\n\t\t\t\t...vals?.[child],\n\t\t\t\tid: children[index],\n\t\t\t};\n\t\t\treturn newChild;\n\t\t});\n\t\tconst data = applicationData;\n\t\tdata.children = contents;\n\t\tsetApplicationData(data);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.children}\n\t\t\t\n\t\t\n\t);\n};\n\nexport {\n\tApplicationActionContext,\n\tApplicationDataContext,\n};\n\nexport default ApplicationProvider;","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault, ValidationMessages } from 'common/utils';\nimport { Divider, FormButtons, QuoteContainer, Steps } from 'components/cpaipw';\nimport { FormContext } from 'quote/FormContext';\nimport { useHistory } from 'react-router-dom';\nimport { provinces } from '../utils';\nimport { Select } from 'components/cpaipw/Select';\nimport { Controller, useForm } from 'react-hook-form';\nimport { HeightInput } from 'components/cpaipw/HeightInput';\nimport { WeightInput } from 'components/cpaipw/WeightInput';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { ApplicationActionContext, ApplicationDataContext, IAboutYouApplication } from 'application/AboutYouQuestions/ApplicationContext';\nimport { PolicyDataContext } from 'quote/policy/PolicyContext';\n\nconst AboutYouApplication1: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst PolicyCtx = React.useContext(PolicyDataContext);\n\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\tconst appActionContext = React.useContext(ApplicationActionContext);\n\tconst showChildren = PolicyCtx.hasChildDL || PolicyCtx.hasChildCI;\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.aboutYou);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\t//TODO: Add validation and set context\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t\tdefaultValues: {\n\t\t\temail: appDataContext.applicationData.email || '',\n\t\t\tcpaNumber: appDataContext.applicationData.cpaNumber || '',\n\t\t\taddress: appDataContext.applicationData.address || '',\n\t\t\tcity: appDataContext.applicationData.city || '',\n\t\t\tprovince: appDataContext.applicationData.city || provinces[0].value,\n\t\t\tpostalCode: appDataContext.applicationData.postalCode || '',\n\t\t\thomePhone: appDataContext.applicationData.homePhone || '',\n\t\t\tbirthCountry: appDataContext.applicationData.birthCountry || '',\n\t\t\tbirthProvinceOrState: appDataContext.applicationData.birthProvinceOrState || '',\n\t\t\theight: appDataContext.applicationData.height || '',\n\t\t\tweight: appDataContext.applicationData.weight || '',\n\t\t\tweightOneYearAgo: appDataContext.applicationData.weightOneYearAgo || '',\n\t\t\tweightChangeReason: appDataContext.applicationData.weightChangeReason || '',\n\t\t}\n\t});\n\n\tconst { control, handleSubmit, errors } = methods;\n\n\tconst onValidSubmit = (vals: IAboutYouApplication) => {\n\t\tappActionContext.setApplicationData({\n\t\t\t...appDataContext.applicationData,\n\t\t\t...vals,\n\t\t\tfirstName: FormCtx.initialUserData?.firstName || '',\n\t\t\tlastName: FormCtx.initialUserData?.lastName || '',\n\t\t\temail: FormCtx.initialUserData?.email || '',\n\t\t\tapplicantId: FormCtx.applicantId,\n\t\t\tquoteId: PolicyCtx.quoteData.quote_id,\n\t\t});\n\t\thistory.push(NavRoutes.ApplicationAboutYouStep2);\n\t};\n\treturn (\n\t\t//TODO: Change out QuoteContainer component\n\t\t\n\t\t\t

About you

\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.email?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.cpaNumber?.message}\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.address?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.city?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.postalCode?.message}\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.homePhone?.message}\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t
Place of Birth
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.birthCountry?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.birthProvinceOrState?.message}\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t isNaN(parseFloat(value)) ? ValidationMessages.number : undefined\n\t\t\t\t\t\t}}\n\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.height?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t isNaN(parseFloat(value)) ? ValidationMessages.number : undefined\n\t\t\t\t\t\t}}\n\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.weight?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t isNaN(parseFloat(value)) ? ValidationMessages.number : undefined\n\t\t\t\t\t\t}}\n\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.weightOneYearAgo?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t
\n\t\t\t\t history.push(NavRoutes.QuoteReviewPolicy)}\n\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default AboutYouApplication1;\n","import React from 'react';\nimport { IBeneficiaryData, ICorporation, IEstate, IIndividual, ITrustee } from './BeneficiaryTypes';\n\ninterface IBeneficiaryDataContext {\n\tbeneficiaryData: IBeneficiaryData;\n\tisUnder18: string;\n\n}\n\ninterface IBeneficiaryDataActionContext {\n\tsetBeneficiaryData: React.Dispatch>;\n\textractBeneficiaryNames: (value: any) => void,\n\textractBeneficiaryAllocations: (value: any, isEqually: boolean) => void,\n\textractTrustee: (value: any) => void,\n\tgetIndividuals: () => IAssignedBeneficiary[] | undefined,\n\tgetCorporations: () => IAssignedBeneficiary[] | undefined,\n\tgetEstate: () => IAssignedBeneficiary | undefined,\n\tsetIsUnder18: React.Dispatch>;\n}\n\nconst BeneficiaryDataContext = React.createContext({\n\tbeneficiaryData: {} as IBeneficiaryData,\n\tisUnder18: ''\n});\n\nconst defaultData: IBeneficiaryData = {\n\tdivision: undefined,\n\tindividuals: undefined,\n\tcorporations: undefined,\n\testate: undefined,\n\ttrustee: undefined\n};\n\nconst BeneficiaryActionContext = React.createContext({\n\tsetBeneficiaryData: () => defaultData,\n\textractBeneficiaryNames: () => undefined,\n\textractBeneficiaryAllocations: () => undefined,\n\textractTrustee: () => undefined,\n\tgetIndividuals: () => undefined,\n\tgetCorporations: () => undefined,\n\tgetEstate: () => undefined,\n\tsetIsUnder18: () => undefined\n});\n\nexport type IAssignedBeneficiary = {\n\tid: string;\n\tdisplayName: string;\n}\n\nconst BeneficiaryProvider = (props: any) => {\n\tconst [beneficiaryData, setBeneficiaryData] = React.useState({} as IBeneficiaryData);\n\tconst [isUnder18, setIsUnder18] = React.useState('');\n\n\tconst getIndividuals = () => {\n\t\tvar beneficiaries = undefined;\n\n\t\tif (beneficiaryData.individuals !== undefined && beneficiaryData.individuals.length > 0) {\n\t\t\tbeneficiaries = [] as IAssignedBeneficiary[];\n\t\t\tconst individuals = beneficiaryData.individuals.map((user) => {\n\t\t\t\treturn {\n\t\t\t\t\tid: user.id,\n\t\t\t\t\tdisplayName: `${user.firstName} ${user.lastName}`\n\t\t\t\t} as IAssignedBeneficiary;\n\t\t\t});\n\n\t\t\tif (individuals && individuals.length > 0) {\n\t\t\t\tbeneficiaries.push(...individuals);\n\t\t\t}\n\t\t}\n\n\t\treturn beneficiaries;\n\t};\n\n\n\tconst getCorporations = () => {\n\t\tvar beneficiaries = undefined;\n\n\t\tif (beneficiaryData.corporations !== undefined && beneficiaryData.corporations.length > 0) {\n\t\t\tbeneficiaries = [] as IAssignedBeneficiary[];\n\t\t\tconst corporations = beneficiaryData.corporations.map((user) => {\n\t\t\t\treturn {\n\t\t\t\t\tid: user.id,\n\t\t\t\t\tdisplayName: user.name\n\t\t\t\t};\n\t\t\t});\n\n\t\t\tif (corporations && corporations.length > 0) {\n\t\t\t\tbeneficiaries.push(...corporations);\n\t\t\t}\n\t\t}\n\n\t\treturn beneficiaries;\n\n\t};\n\n\tconst getEstate = () => {\n\t\tvar estate = undefined;\n\n\t\tif(beneficiaryData.estate !== undefined) {\n\t\t\testate = {\n\t\t\t\tid: 'estate',\n\t\t\t\tdisplayName: beneficiaryData.estate.name\n\t\t\t} as IAssignedBeneficiary;\n\t\t}\n\n\t\treturn estate;\n\t};\n\n\tconst extractBeneficiaryNames = (val: any) => {\n\t\tconst filterKeys = Object.keys(val);\n\t\tvar bData = beneficiaryData;\n\n\t\tfilterKeys.forEach(type => {\n\t\t\tconst beneficiaryKey = Object.keys(val[type]);\n\n\t\t\tif(type === 'estate') {\n\t\t\t\tif (bData.estate === undefined) {\n\t\t\t\t\tbData.estate = {\n\t\t\t\t\t\tname: val[type][beneficiaryKey[0]]\n\t\t\t\t\t} as IEstate;\n\t\t\t\t}\n\t\t\t} else if(type === 'corporations') {\n\t\t\t\tvar corporations = [] as ICorporation[];\n\t\t\t\tbeneficiaryKey.forEach(id => {\n\t\t\t\t\tconst found = bData.corporations !== undefined ? bData.corporations?.find((i) => i.id === id) : undefined;\n\t\t\t\t\tif (found) {\n\t\t\t\t\t\tfound.name = val[type][id]['nameOfCorporation'];\n\t\t\t\t\t\tcorporations.push(found);\n\t\t\t\t\t} else{\n\t\t\t\t\t\tcorporations.push(\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: id,\n\t\t\t\t\t\t\t\tname: val[type][id]['nameOfCorporation']\n\t\t\t\t\t\t\t} as ICorporation\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tbData.corporations = corporations;\n\t\t\t} else {\n\t\t\t\tvar individuals = [] as IIndividual[];\n\t\t\t\tbeneficiaryKey.forEach(id => {\n\t\t\t\t\tconst found = bData.individuals !== undefined ? bData.individuals?.find((i) => i.id === id) : undefined;\n\t\t\t\t\tif (found) {\n\t\t\t\t\t\tfound.firstName = val[type][id]['firstName'];\n\t\t\t\t\t\tfound.middleInitial = val[type][id]['middleInitial'];\n\t\t\t\t\t\tfound.lastName = val[type][id]['lastName'];\n\t\t\t\t\t\tfound.relationship = val[type][id]['relationshipToInsured'];\n\t\t\t\t\t\tindividuals.push(found);\n\t\t\t\t\t} else{\n\t\t\t\t\t\tindividuals.push(\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: id,\n\t\t\t\t\t\t\t\tfirstName: val[type][id]['firstName'],\n\t\t\t\t\t\t\t\tmiddleInitial: val[type][id]['middleInitial'],\n\t\t\t\t\t\t\t\tlastName: val[type][id]['lastName'],\n\t\t\t\t\t\t\t\trelationship: val[type][id]['relationshipToInsured'],\n\t\t\t\t\t\t\t} as IIndividual\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tbData.individuals = individuals;\n\t\t\t}\n\t\t});\n\n\t\tsetBeneficiaryData(bData);\n\t};\n\n\tconst extractBeneficiaryAllocations = (val: any, isEqually: boolean) => {\n\t\tconst filterKeys = Object.keys(val);\n\t\tconst data = beneficiaryData;\n\t\tdata.division = isEqually ? 'EQUAL_SHARES' : 'PER_ALLOCATION';\n\n\t\tfilterKeys.forEach(type => {\n\n\t\t\tif(type === 'estate' && data.estate) {\n\t\t\t\tdata.estate.allocation = val[type];\n\t\t\t} else {\n\t\t\t\tvar foundIndex = -1;\n\t\t\t\tif(data.individuals !== undefined && data.individuals.length > 0) {\n\t\t\t\t\tfoundIndex = data.individuals.findIndex(i => i.id === type);\n\n\t\t\t\t\tif (foundIndex !== -1) {\n\t\t\t\t\t\tdata.individuals[foundIndex].allocation = val[type];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (foundIndex === -1 && data.corporations !== undefined && data.corporations.length > 0) {\n\t\t\t\t\tfoundIndex = data.corporations.findIndex(i => i.id === type);\n\n\t\t\t\t\tif (foundIndex !== -1) {\n\t\t\t\t\t\tdata.corporations[foundIndex].allocation = val[type];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tsetBeneficiaryData(data);\n\t};\n\n\tconst extractTrustee = (val: any) => {\n\t\tvar trustee;\n\t\tif (val['designateTrustee'] === 'yes') {\n\t\t\ttrustee = {\n\t\t\t\tfirstName: val['firstName'],\n\t\t\t\tmiddleInitial: val['middleInitial'],\n\t\t\t\tlastName: val['lastName'],\n\t\t\t\tphoneNumber: val['phoneNumber'],\n\t\t\t\temail: val['email'],\n\t\t\t\trelationship: val['relationshipToInsured'],\n\t\t\t\tconfirmedUnderstanding: val['iUnderstand']\n\t\t\t} as ITrustee;\n\t\t}\n\n\t\tconst data = beneficiaryData;\n\t\tdata.trustee = trustee;\n\n\t\tsetBeneficiaryData(data);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.children}\n\t\t\t\n\t\t\n\t);\n};\n\nexport {\n\tBeneficiaryActionContext,\n\tBeneficiaryDataContext\n};\n\nexport default BeneficiaryProvider;","import { ApplicationDataContext, IChild } from 'application/AboutYouQuestions/ApplicationContext';\nimport { getChildrenDetails } from 'application/utils';\nimport React from 'react';\nimport { HealthQuestionaire, IHealthQuestion, IHealthQuestionWithUserName } from './HealthTypes';\n\nconst defaultHealthQuestionaire = {} as HealthQuestionaire;\n\ninterface IHealthQuestionDataContext {\n\thealthQuestionaireData: HealthQuestionaire;\n}\n\ninterface IHealthQuestionDataActionContext {\n\tsetHealthQuestionaireData: React.Dispatch>;\n\textractHealthData: (vals: any, children?: IChild[]) => IHealthQuestionWithUserName[];\n}\n\nconst HealthDataContext = React.createContext({\n\thealthQuestionaireData: {},\n});\n\nconst HealthActionContext = React.createContext({\n\tsetHealthQuestionaireData: () => { },\n\textractHealthData: () => []\n});\n\nconst HealthProvider = (props: any) => {\n\tconst [healthQuestionaireData, setHealthQuestionaireData] = React.useState(defaultHealthQuestionaire);\n\tconst applicationCtx = React.useContext(ApplicationDataContext);\n\n\tconst extractHealthData = (vals: any, children?: IChild[]) => {\n\t\tif (vals === null || vals === undefined ) {\n\t\t\treturn [] as IHealthQuestionWithUserName[];\n\t\t}\n\t\tconst keys = Object.keys(vals);\n\t\tconst result = keys.map(id => {\n\t\t\treturn {\n\t\t\t\tnameOfApplicantOrChildren: id !== 'Applicant' ? getChildrenDetails(id, children) : applicationCtx.applicationData.firstName, // add first name, last name\n\t\t\t\tidOfApplicantOrChildren: id,\n\t\t\t\thealthQuestionsOfApplicantOrChildren: {\n\t\t\t\t\tdateOfIllness: vals[id].dateOfIllness,\n\t\t\t\t\tlengthOfHospitalization: vals[id].lengthOfHospitalization.value,\n\t\t\t\t\tlengthOfHospitalizationMeasurement: vals[id].lengthOfHospitalization.unit,\n\t\t\t\t\tlengthOfIllness: vals[id].lengthOfIllness.value,\n\t\t\t\t\tlengthOfIllnessMeasurement: vals[id].lengthOfIllness.unit,\n\t\t\t\t\tnameAndAddressOfPhysiciansOrHospitals: vals[id].nameAndAddressOfPhysiciansOrHospitals,\n\t\t\t\t\tnatureOfIllness: vals[id].natureOfIllness,\n\t\t\t\t} as IHealthQuestion,\n\t\t\t} as IHealthQuestionWithUserName;\n\t\t});\n\t\treturn result;\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.children}\n\t\t\t\n\t\t\n\t);\n};\n\nexport {\n\tHealthActionContext,\n\tHealthDataContext,\n};\n\nexport default HealthProvider;","import { randomString } from 'common/utils';\nimport React from 'react';\nimport { IHistoryData, IllnessDTO } from './HistoryTypes';\n\ninterface IHistoryDataContext {\n\thistoryData: IHistoryData[];\n}\n\ninterface IHistoryDataActionContext {\n\tsetHistoryData: React.Dispatch>;\n\textractHistoryData: (filteredHistoryDataKeys: string[], value: any) => void,\n}\n\nconst HistoryDataContext = React.createContext({\n\thistoryData: []\n});\n\nconst HistoryActionContext = React.createContext({\n\tsetHistoryData: () => null,\n\textractHistoryData: () => undefined\n});\n\n\nconst HistoryProvider = (props: any) => {\n\tconst [historyData, setHistoryData] = React.useState([]);\n\n\tconst extractHistoryData = (filteredHistoryDataKeys: string[], val: any) => {\n\t\tconst historyContextData = [] as IHistoryData[];\n\n\t\t// our data for history looks like this applicant.familMember.illness.randomlyGeneratedString\n\t\tfilteredHistoryDataKeys.forEach(user => {\n\t\t\tconst innerHistoryUserDataKey = Object.keys(val[user]);\n\n\t\t\tlet historyData = {\n\t\t\t\tuser,\n\t\t\t\tillness: [],\n\t\t\t} as IHistoryData;\n\n\t\t\tinnerHistoryUserDataKey.forEach(familyMember => {\n\n\t\t\t\tconst familyMemberKeys = Object.keys(val[user][familyMember]);\n\n\t\t\t\tfamilyMemberKeys.forEach(illness => {\n\t\t\t\t\tconst data = val[user][familyMember][illness] as IllnessDTO;\n\n\t\t\t\t\tlet illnessDataForFamilyMember = {\n\t\t\t\t\t\tid: randomString(9),\n\t\t\t\t\t\tageAtDeath: data.ageAtDeath,\n\t\t\t\t\t\tageAtOnsetIllness: data.ageAtOnsetIllness,\n\t\t\t\t\t\tageIfAlive: data.ageIfAlive,\n\t\t\t\t\t\tnameOfIllness: data.nameOfIllness,\n\t\t\t\t\t\tfamilyMember,\n\t\t\t\t\t} as IllnessDTO;\n\n\t\t\t\t\thistoryData.illness.push(illnessDataForFamilyMember);\n\t\t\t\t});\n\t\t\t});\n\t\t\thistoryContextData.push(historyData);\n\t\t});\n\n\t\tsetHistoryData(historyContextData);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.children}\n\t\t\t\n\t\t\n\t);\n};\n\nexport {\n\tHistoryActionContext,\n\tHistoryDataContext\n};\n\nexport default HistoryProvider;","import { IChild } from 'application/AboutYouQuestions/ApplicationContext';\nimport React from 'react';\nimport { LifestyleQuestionaire, LifestyleSingleQuestion, LifestyleQuestionWithUserName } from './LifestyleTypes';\n\ninterface ILifestyleDataContext {\n\tlifestyleQuestions: LifestyleQuestionaire;\n}\n\ninterface ILifestyleActionContext {\n\tsetLifestyleQuestions: React.Dispatch>;\n\textractLifestyleData: (vals: any, section: string, children: IChild[], lifestyleSection: string) => void;\n\textractLifestyleDataSection6: (vals: any, children: IChild[]) => boolean;\n\textractLifestyleDataSection1: (vals: any, section: string) => boolean;\n}\n\nconst LifestyleActionContext = React.createContext({\n\tsetLifestyleQuestions: () => null,\n\textractLifestyleData: () => false,\n\textractLifestyleDataSection6: () => false,\n\textractLifestyleDataSection1: () => false,\n});\n\nconst LifestyleDataContext = React.createContext({\n\tlifestyleQuestions: {} as LifestyleQuestionaire,\n});\n\nconst LifestyleProvider = (props: any) => {\n\tconst [lifestyleQuestions, setLifestyleQuestions] = React.useState({});\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{props.children}\n\t\t\t\n\t\t\n\t);\n\n\tfunction extractLifestyleDataSection1(vals: any, section: string) {\n\t\tlet queriedLifestyleData = [] as LifestyleQuestionWithUserName[];\n\t\tif (vals === null || vals === undefined) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (vals.notApplicable) {\n\t\t\tsetLifestyleQuestions({ ...lifestyleQuestions, section1: [] });\n\t\t\treturn true;\n\t\t}\n\n\t\tconst userLifeStyleData = Object.keys(vals[section]);\n\n\t\tuserLifeStyleData.forEach(key => {\n\t\t\tconst lifestyleData = vals[section][key] as LifestyleQuestionaire;\n\t\t\tconst data = {\n\t\t\t\tidOfApplicantOrChildren: key,\n\t\t\t\tdata: lifestyleData!,\n\t\t\t} as LifestyleQuestionWithUserName;\n\t\t\tqueriedLifestyleData.push(data);\n\t\t});\n\n\t\tsetLifestyleQuestions({ ...lifestyleQuestions, section1: queriedLifestyleData });\n\t\treturn true;\n\t}\n\n\tfunction extractSection6LifestyleData(vals: any) {\n\t\tlet queriedLifestyleData = {};\n\t\tif (vals === null || vals === undefined) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (vals.notApplicable) {\n\t\t\tsetLifestyleQuestions({ ...lifestyleQuestions, section6: {} });\n\t\t\treturn true;\n\t\t}\n\n\t\tconst section6Questions = Object.keys(vals).filter(v => v !== 'notApplicable');\n\t\tsection6Questions.forEach(question => {\n\t\t\tconst questionDataList = [] as LifestyleConsumptionQuestionWithUserName[];\n\t\t\tconst userQuestionDataKeys = Object.keys(vals[question]);\n\t\t\tuserQuestionDataKeys.forEach(user => {\n\t\t\t\tconst data = {\n\t\t\t\t\tidOfApplicantOrChildren: user,\n\t\t\t\t\tconsumptionAmount: vals[question][user].amount,\n\t\t\t\t} as LifestyleConsumptionQuestionWithUserName;\n\n\t\t\t\tquestionDataList.push(data);\n\t\t\t\t(queriedLifestyleData as any)[question] = questionDataList;\n\t\t\t});\n\t\t});\n\n\t\tsetLifestyleQuestions({ ...lifestyleQuestions, section6: queriedLifestyleData });\n\t\treturn true;\n\t}\n\n\n\tfunction extractSimpleLifestyleData(vals: any, section: string, children: IChild[], lifeStyleSection: string) {\n\t\tconst data = { ...lifestyleQuestions };\n\t\tif (vals === null || vals === undefined) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (vals.notApplicable) {\n\t\t\t(data as any)[lifeStyleSection] = [];\n\t\t\tsetLifestyleQuestions(data);\n\t\t\treturn;\n\t\t}\n\n\t\tconst lifestyleData = vals[section].filter((key: any) => key !== '' && key !== undefined);\n\t\tconst userLifeStyleData = lifestyleData.map((sec: any) => {\n\t\t\tlet data = {\n\t\t\t\tsuspended: true,\n\t\t\t\tidOfApplicantOrChildren: sec,\n\t\t\t\tname: sec !== 'Applicant' ? getChildrenDetails(sec, children) : 'Applicant'\n\t\t\t} as LifestyleSingleQuestion;\n\t\t\treturn data;\n\n\t\t});\n\n\t\t(data as any)[lifeStyleSection] = userLifeStyleData;\n\n\t\tsetLifestyleQuestions(data);\n\t}\n\n\tfunction getChildrenDetails(id: string, childrenData?: IChild[]) {\n\t\tif (childrenData === undefined) { return undefined; }\n\n\t\tconst foundChildData = childrenData.find(child => child.id === id) as IChild;\n\t\tif (foundChildData !== undefined) {\n\t\t\treturn `${foundChildData.firstName} ${foundChildData.lastName}`;\n\t\t} else {\n\t\t\treturn '';\n\t\t}\n\n\t};\n\n};\n\nexport {\n\tLifestyleActionContext,\n\tLifestyleDataContext\n};\n\nexport default LifestyleProvider;","import oliverAPI from 'api/OliverAPI';\nimport React, { useEffect, useState } from 'react';\nimport { ApplicationDataContext } from './AboutYouQuestions/ApplicationContext';\nimport { BeneficiaryDataContext } from './BeneficiaryQuestions/BeneficiaryContext';\nimport { HealthDataContext } from './HealthQuestions/HealthContext';\nimport { HistoryDataContext } from './HistoryQuestions/HistoryContext';\nimport { LifestyleDataContext } from './LifestyleQuestions/LifestyleContext';\n\ninterface ISubmissionContext {\n\tsetSubmitApplication: React.Dispatch>;\n\tsubmissionLoading: boolean;\n\tapplicationId: string | undefined;\n};\n\nexport const SubmissionContext = React.createContext({\n\tsetSubmitApplication: () => null,\n\tsubmissionLoading: false,\n\tapplicationId: undefined,\n});\n\nconst SubmissionProvider = (props: any) => {\n\tconst [applicationId, setApplicationId] = useState('');\n\tconst applicationCtx = React.useContext(ApplicationDataContext);\n\tconst beneficiaryCtx = React.useContext(BeneficiaryDataContext);\n\tconst healthCtx = React.useContext(HealthDataContext);\n\tconst lifestyleCtx = React.useContext(LifestyleDataContext);\n\tconst historyCtx = React.useContext(HistoryDataContext);\n\n\tconst [submitApplicationData, setSubmitApplicationData] = React.useState(false);\n\tconst [submissionLoading, setSubmissionLoading] = React.useState(false);\n\n\n\tuseEffect(() => {\n\t\tconst submitApplication = async () => {\n\t\t\tsetSubmissionLoading(true);\n\t\t\tlet id = undefined;\n\t\t\tlet request = {\n\t\t\t\tapplication: {\n\t\t\t\t\tapplicationID: applicationId,\n\t\t\t\t\taboutYouApplication: applicationCtx.applicationData,\n\t\t\t\t\tbeneficiaries: beneficiaryCtx.beneficiaryData,\n\t\t\t\t\thealthAnswers: healthCtx.healthQuestionaireData,\n\t\t\t\t\tlifestyleAnswers: lifestyleCtx.lifestyleQuestions,\n\t\t\t\t\thistory: {\n\t\t\t\t\t\thistoryRecords: historyCtx.historyData\n\t\t\t\t\t}\n\t\t\t\t} as ApplicationDTO\n\t\t\t} as ApplicationRequest;\n\n\t\t\tid = await oliverAPI.postApplication(request);\n\t\t\t// console.log('applicationId',id);\n\t\t\tsetApplicationId(id);\n\t\t};\n\n\t\tif (submitApplicationData) {\n\t\t\tsubmitApplication();\n\t\t}\n\t\treturn () => {\n\t\t\tsetSubmitApplicationData(false);\n\t\t\tsetSubmissionLoading(false);\n\t\t};\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [submitApplicationData]);\n\n\treturn (\n\t\t\n\t\t\t{props.children}\n\t\t\n\t);\n};\n\nexport default SubmissionProvider;","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault, ValidationMessages } from 'common/utils';\nimport { Divider, FormButtons, QuoteContainer, RadioButtonGroup, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { FormContext } from 'quote/FormContext';\nimport { Select } from 'components/cpaipw/Select';\nimport { provinces } from 'application/utils';\nimport { Controller, useForm } from 'react-hook-form';\nimport AnimateHeight from 'react-animate-height';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { IAboutYouApplication, ApplicationActionContext, ApplicationDataContext } from './ApplicationContext';\nimport { PolicyDataContext } from 'quote/policy/PolicyContext';\nimport { SubmissionContext } from 'application/SubmissionContext';\n\nconst AboutYouApplication2: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst policyCtx = React.useContext(PolicyDataContext);\n\tconst showChildren = policyCtx.hasChildDL || policyCtx.hasChildCI;\n\tconst submissionCtx = React.useContext(SubmissionContext);\n\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\tconst appActionContext = React.useContext(ApplicationActionContext);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t\tdefaultValues: {\n\t\t\tisWorking: appDataContext.applicationData.isWorking || '',\n\t\t\treasonForNotWorking: appDataContext.applicationData.reasonForNotWorking || '',\n\t\t\toccupation: appDataContext.applicationData.occupation || '',\n\t\t\tworkPhone: appDataContext.applicationData.workPhone || '',\n\t\t\tworkedHours: appDataContext.applicationData.workedHours || '',\n\t\t\temployer: {\n\t\t\t\tname: appDataContext.applicationData.employer?.name || '',\n\t\t\t\taddress: appDataContext.applicationData.employer?.address || '',\n\t\t\t\tcity: appDataContext.applicationData.employer?.city || '',\n\t\t\t\tprovince: appDataContext.applicationData.employer?.province || provinces[0].value,\n\t\t\t\tpostalCode: appDataContext.applicationData.employer?.postalCode || '',\n\t\t\t}\n\t\t}\n\t});\n\n\tconst { control, watch, handleSubmit, errors } = methods;\n\n\tconst watchIsWorking = watch(['isWorking']);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.aboutYou);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst onValidSubmit = async ( data: IAboutYouApplication ) => {\n\t\tappActionContext.setApplicationData({\n\t\t\t...appDataContext.applicationData,\n\t\t\t...data\n\t\t});\n\n\t\tif(showChildren) {\n\t\t\thistory.push(NavRoutes.ApplicationAboutYouStep3);\n\t\t} else {\n\t\t\tsubmissionCtx.setSubmitApplication(true);\n\t\t\thistory.push(NavRoutes.ApplicationBeneficiariesStep1);\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t

About you

\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.isWorking?.message}\n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t{watchIsWorking.isWorking === 'no' && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.reasonForNotWorking?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t\t\n\n\n\t\t\t\t\t{watchIsWorking.isWorking === 'yes' && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.occupation?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.employer?.name?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.employer?.address?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.employer?.city?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.employer?.province?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.employer?.postalCode?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.workPhone?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.workedHours?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t
\n\t\t\t\t history.push(NavRoutes.ApplicationAboutYouStep1)}\n\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default AboutYouApplication2;","import React, { useState } from 'react';\nimport { Button } from 'components/buttons';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { HeightInput } from './HeightInput';\nimport { WeightInput } from './WeightInput';\nimport { randomString, validateDate, ValidationMessages } from 'common/utils';\nimport { Divider, RadioButtonGroup } from 'components/cpaipw';\nimport { ErrorMessage } from './ErrorMessage';\nimport { ApplicationDataContext, IChild } from 'application/AboutYouQuestions/ApplicationContext';\ninterface IProps {\n\n}\n\nexport const AddRemoveChildContainer: React.FC = (props: IProps) => {\n\tconst [childIds, setChildIds] = useState([randomString(8)]);\n\n\t//TODO: Add validation and set context\n\tconst methods = useFormContext();\n\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\tconst { children } = appDataContext.applicationData;\n\n\tReact.useEffect(() => {\n\t\tif (children !== undefined && children.length > 0) {\n\t\t\tconst newChildIds = children.map((child: IChild) => {\n\t\t\t\treturn child.id || randomString(8);\n\t\t\t});\n\t\t\tsetChildIds(newChildIds);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst { control, errors } = methods;\n\n\tconst addChild = () => {\n\t\tconst newIdArray = [...childIds];\n\t\tnewIdArray.push(randomString(8));\n\t\tsetChildIds(newIdArray);\n\t};\n\n\tconst currentChildren = appDataContext.applicationData.children;\n\n\tconst removeChild = (id: string) => {\n\t\tconst newArray = childIds.filter(c => c !== id);\n\t\tsetChildIds(newArray);\n\t};\n\n\treturn (\n\t\t\n\t\t\t{childIds.map((id: string, index: number) => {\n\t\t\t\tconst defaultValuesId = appDataContext.applicationData.children?.findIndex((v: IChild) => v.id === id);\n\t\t\t\treturn (\n\t\t\t\t\t
\n\t\t\t\t\t\t{index !== 0 && }\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.children?.[id]?.firstName?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.children?.[id]?.lastName?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors.children?.[id]?.gender?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t validateDate(date) ? ValidationMessages.date : true,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors.children?.[id]?.dateOfBirth?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t isNaN(parseFloat(value)) ? ValidationMessages.number : undefined\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.children?.[id]?.height?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t isNaN(parseFloat(value)) ? ValidationMessages.number : undefined\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.children?.[id]?.weight?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t isNaN(parseFloat(value)) ? ValidationMessages.number : undefined\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.children?.[id]?.weightOneYearAgo?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t removeChild(id)}\n\t\t\t\t\t\t\tdisabled={index === 0 && childIds.length === 1}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\tRemove Child -\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t})}\n\t\t\t\n\t\t\t\tAdd Child +\n\t\t\t\n\t\t
\n\t);\n};","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { FormButtons, InfoMessage, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { FormContext } from 'quote/FormContext';\nimport { AddRemoveChildContainer } from 'components/cpaipw/AddRemoveChildContainer';\nimport { FormProvider, useForm } from 'react-hook-form';\nimport { ApplicationActionContext } from 'application/AboutYouQuestions/ApplicationContext';\nimport { SubmissionContext } from 'application/SubmissionContext';\n\nconst AboutYouApplication3: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst submissionCtx = React.useContext(SubmissionContext);\n\n\tconst appActionContext = React.useContext(ApplicationActionContext);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t});\n\n\tconst { handleSubmit } = methods;\n\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.aboutYou);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst onValidSubmit = async (val: any) => {\n\t\tappActionContext.extractChildData(val.children);\n\t\tsubmissionCtx.setSubmitApplication(true);\n\t\thistory.push(NavRoutes.ApplicationBeneficiariesStep1);\n\t};\n\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

About you

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
Child Information
\n\t\t\t\t\t\n\t\t\t\t\t\t

List the children and/or students that are eligible to be proposed in your insurance application.

\n\t\t\t\t\t\t

In this application:

\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
  • A child refers to those under 23.
  • \n\t\t\t\t\t\t\t
  • A student refers to those under 25 and is a full-time post-secondary student.
  • \n\t\t\t\t\t\t
\n\t\t\t\t\t\t

This information is required for Dependent Life and/or Child Critical Illness.

\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t history.push(NavRoutes.ApplicationAboutYouStep2)}\n\t\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default AboutYouApplication3;","import React from 'react';\nimport classNames from 'classnames';\nimport AnimateHeight from 'react-animate-height';\nimport { CheckboxButton } from './CheckboxButton';\nimport { AccordionUser, ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\n\ninterface IProps {\n\tdisabled?: boolean;\n\tdefaultState?: string[];\n\tchildren: React.ReactElement;\n}\n\nexport const accordionStyles = {\n\tfirstItem: 'rounded-bottom-0 rounded-sm-top',\n\tlastItem: 'rounded-top-0 rounded-sm-bottom',\n\tcenterItem: 'rounded-bottom-0 rounded-top-0',\n\tallItems: 'border-0 mb-0',\n\n\tfirstDiv: 'border border-gray-400',\n\tcenterDiv: 'border-left border-right border-bottom border-gray-400',\n\tlastDiv: 'border-left border-right border-bottom border-gray-400',\n\tactiveDiv: 'bg-gray-100'\n};\n\nexport const Accordion: React.FC = ( props: IProps ) => {\n\tconst [selectedUsers, setSelectedUsers] = React.useState(props.defaultState || []);\n\tconst [users, setUsers] = React.useState([]);\n\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\n\tReact.useEffect(() => {\n\t\tconst newUsers = appDataContext.getAccordionUsers();\n\t\tsetUsers(newUsers);\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tif ( props.disabled === true ) {\n\t\t\tsetSelectedUsers([]);\n\t\t}\n\t}, [props.disabled]);\n\n\treturn (\n\t\t
\n\t\t\t{users.map((user: AccordionUser, index: number) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t handleSelect(user.userId)}\n\t\t\t\t\t\t\tvalue=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{selectedUsers.includes(user.userId) && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{React.cloneElement(props.children, { user: user.userId })}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t})\n\t\t\t}\n\t\t
\n\t);\n\n\tfunction handleSelect(user: string) {\n\t\tconst currentState = [...selectedUsers];\n\t\tif ( selectedUsers.includes(user) ) {\n\t\t\tsetSelectedUsers(currentState.filter((v: string) => v !== user));\n\t\t} else {\n\t\t\tcurrentState.push(user);\n\t\t\tsetSelectedUsers(currentState);\n\t\t}\n\t}\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport AnimateHeight from 'react-animate-height';\nimport { CheckboxButton } from './CheckboxButton';\nimport { accordionStyles } from './Accordion';\nimport { BeneficiaryDataContext } from 'application/BeneficiaryQuestions/BeneficiaryContext';\nimport { useFormContext } from 'react-hook-form';\n\ninterface IProps {\n\tdisabled?: boolean;\n\tchildren: React.ReactElement[];\n}\n\nexport const BeneficiaryAccordion: React.FC = ( props: IProps ) => {\n\tconst [selected, setSelected] = React.useState([]);\n\tconst beneficiaryDataContext = React.useContext(BeneficiaryDataContext);\n\tconst beneficaryData = beneficiaryDataContext.beneficiaryData;\n\n\tconst methods = useFormContext();\n\n\tconst {clearErrors } = methods;\n\n\n\tReact.useEffect(() => {\n\t\tif ( props.disabled === true ) {\n\t\t\tsetSelected([]);\n\t\t} else {\n\t\t\tconst haveData = [];\n\t\t\tif (beneficaryData.individuals !== undefined && beneficaryData.individuals.length > 0) {\n\t\t\t\thaveData.push(0);\n\t\t\t}\n\n\t\t\tif (beneficaryData.corporations !== undefined && beneficaryData.corporations.length > 0) {\n\t\t\t\thaveData.push(1);\n\t\t\t}\n\n\t\t\tif (beneficaryData.estate !== undefined) {\n\t\t\t\thaveData.push(2);\n\t\t\t}\n\n\t\t\tsetSelected(haveData);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [props.disabled]);\n\n\t// const users = props.users;\n\n\treturn (\n\t\t
\n\t\t\t{props.children.map((child: React.ReactElement, index: number) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t handleSelect(index)}\n\t\t\t\t\t\t\tvalue=\"\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{selected.includes(index) && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{React.cloneElement(child)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t})\n\t\t\t}\n\t\t
\n\t);\n\n\tfunction handleSelect(index: number) {\n\t\tconst currentState = [...selected];\n\t\tif ( selected.includes(index) ) {\n\t\t\tsetSelected(currentState.filter((v: number) => v !== index));\n\t\t} else {\n\t\t\tcurrentState.push(index);\n\t\t\tsetSelected(currentState);\n\t\t\tclearErrors('hasBeneficiary');\n\t\t}\n\t}\n};\n","import { randomString, ValidationMessages } from 'common/utils';\nimport { Button } from 'components/buttons';\nimport { Divider } from 'components/cpaipw';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport React from 'react';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { BeneficiaryDataContext } from '../BeneficiaryContext';\nimport { IIndividual } from '../BeneficiaryTypes';\nimport { IBeneficiariesProps } from './beneficiariesProps';\n\nexport const Individuals: React.FC = ( props: IBeneficiariesProps ) => {\n\tconst [individualIds, setIndividualIds] = React.useState([randomString(7)]);\n\tconst methods = useFormContext();\n\tconst beneficaryDataConext = React.useContext(BeneficiaryDataContext);\n\tconst { individuals } = beneficaryDataConext.beneficiaryData;\n\n\tconst { control, errors } = methods;\n\n\tReact.useEffect(() => {\n\t\tif(individuals !== undefined && individuals.length > 0) {\n\t\t\tconst newIds = individuals.map((individual: IIndividual) => {\n\t\t\t\treturn individual.id || randomString(7);\n\t\t\t});\n\t\t\tsetIndividualIds(newIds);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t
\n\t\t\t{individualIds.map((id: string, index: number) => {\n\t\t\t\tconst defaultIndividual = individuals?.find((i: IIndividual) => i.id === id);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.individuals?.[id]?.firstName?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.individuals?.[id]?.lastName?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.individuals?.[id]?.relationshipToInsured?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t{((index + 1) <= individualIds.length && individualIds.length > 1) && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{((index + 1) === individualIds.length || individualIds.length === 1) && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t})}\n\t\t
\n\n\t);\n\tfunction handleToggle( id?: string ) {\n\t\t// console.log(id);\n\t\tconst oldState = [...individualIds];\n\t\tif ( id === undefined ) {\n\t\t\toldState.push(randomString(7));\n\t\t\tsetIndividualIds(oldState);\n\t\t} else {\n\t\t\tconst newState = oldState.filter((v: string) => v !== id);\n\t\t\tsetIndividualIds(newState);\n\t\t}\n\t}\n};\n","import { randomString, ValidationMessages } from 'common/utils';\nimport { Button } from 'components/buttons';\nimport { Divider } from 'components/cpaipw';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport React from 'react';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { BeneficiaryDataContext } from '../BeneficiaryContext';\nimport { ICorporation } from '../BeneficiaryTypes';\nimport { IBeneficiariesProps } from './beneficiariesProps';\n\nexport const Corporations: React.FC = ( props: IBeneficiariesProps ) => {\n\tconst [corporationIds, setCorporationIds] = React.useState([randomString(7)]);\n\tconst methods = useFormContext();\n\tconst beneficaryDataConext = React.useContext(BeneficiaryDataContext);\n\tconst { corporations } = beneficaryDataConext.beneficiaryData;\n\n\tconst { control, errors } = methods;\n\n\tReact.useEffect(() => {\n\t\tif(corporations !== undefined && corporations.length > 0) {\n\t\t\tconst newIds = corporations.map((corporation: ICorporation) => {\n\t\t\t\treturn corporation.id || randomString(7);\n\t\t\t});\n\t\t\tsetCorporationIds(newIds);\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t
\n\t\t\t{corporationIds.map((id: string, index: number) => {\n\t\t\t\tconst defaultCorporation = corporations?.find((c: ICorporation) => c.id === id);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.corporations?.[id]?.nameOfCorporation?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t{((index + 1) <= corporationIds.length && corporationIds.length > 1) && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{((index + 1) === corporationIds.length || corporationIds.length === 1) && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t
\n\t\t\t\t);\n\t\t\t})}\n\t\t
\n\n\t);\n\tfunction handleToggle( id?: string ) {\n\t\t// console.log(id);\n\t\tconst oldState = [...corporationIds];\n\t\tif ( id === undefined ) {\n\t\t\toldState.push(randomString(7));\n\t\t\tsetCorporationIds(oldState);\n\t\t} else {\n\t\t\tconst newState = oldState.filter((v: string) => v !== id);\n\t\t\tsetCorporationIds(newState);\n\t\t}\n\t}\n};\n","import React from 'react';\nimport { ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { useFormContext, Controller } from 'react-hook-form';\nimport { IBeneficiariesProps } from './beneficiariesProps';\nimport { BeneficiaryDataContext } from '../BeneficiaryContext';\n\nexport const Estate: React.FC = ( props: IBeneficiariesProps ) => {\n\tconst beneficaryDataConext = React.useContext(BeneficiaryDataContext);\n\tconst { estate } = beneficaryDataConext.beneficiaryData;\n\n\tconst methods = useFormContext();\n\n\tconst { control, errors } = methods;\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errors?.estate?.nameOfEstate?.message}\n\t\t\t
\n\t\t
\n\t);\n};\n","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { FormButtons, InfoMessage, LoadContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { BeneficiaryAccordion } from 'components/cpaipw/BeneficiaryAccordion';\nimport { FormContext } from 'quote/FormContext';\nimport { useForm, FormProvider } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { Corporations, Estate, Individuals } from './beneficiariesComponents';\nimport { BeneficiaryActionContext } from './BeneficiaryContext';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { PolicyDataContext } from 'quote/policy/PolicyContext';\nimport { SubmissionContext } from 'application/SubmissionContext';\n\n\nconst BeneficiaryApplicationStep1: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst policyCtx = React.useContext(PolicyDataContext);\n\tconst showChildren = policyCtx.hasChildDL || policyCtx.hasChildCI;\n\tconst beneficiaryActionContext = React.useContext(BeneficiaryActionContext);\n\tconst submissionCtx = React.useContext(SubmissionContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.beneficiaries);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\n\tconst { handleSubmit, setError, errors } = methods;\n\n\tconst onValidSubmit = (val: any) => {\n\t\tif (Object.keys(val).length === 0) {\n\t\t\tsetError('hasBeneficiary', { message: 'At least one beneficiary is required.' });\n\t\t\treturn;\n\t\t}\n\n\t\tbeneficiaryActionContext.extractBeneficiaryNames(val);\n\t\thistory.push(NavRoutes.ApplicationBeneficiariesStep2);\n\t};\n\n\tconst navigateBack = () => {\n\t\tif (showChildren) {\n\t\t\thistory.push(NavRoutes.ApplicationAboutYouStep3);\n\t\t} else {\n\t\t\thistory.push(NavRoutes.ApplicationAboutYouStep2);\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

Beneficiaries

\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tSelect the type of beneficiaries you want to add:\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tDesignating a beneficiary ensures the coverage amount can be claimed by and paid directly how you want upon your death.\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t{errors?.hasBeneficiary?.message}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default BeneficiaryApplicationStep1;","import { DayMonthYear } from 'application/HealthQuestions/HealthTypes';\nimport React from 'react';\nimport { RadioButtonGroup } from './RadioButtonGroup';\n\ninterface IProps {\n\tname: string;\n\tid?: string;\n\tvalue: string | DayMonthYear;\n\tonChange: (value: string | DayMonthYear) => void;\n}\n\n\nexport const DayMonthYearInput: React.FC = (props: IProps) => {\n\tconst previousUnitValue = getUnitValue(props.value);\n\tconst [unit, setUnit] = React.useState(previousUnitValue);\n\n\tconst units = [\n\t\t{\n\t\t\tlabel: 'Days',\n\t\t\tvalue: 'days'\n\t\t},\n\t\t{\n\t\t\tlabel: 'Months',\n\t\t\tvalue: 'months'\n\t\t},\n\t\t{\n\t\t\tlabel: 'Years',\n\t\t\tvalue: 'years'\n\t\t}\n\t];\n\n\tconst getValue = ( val: string | DayMonthYear ) => {\n\t\tif ( typeof val === 'object' && val !== null ) {\n\t\t\treturn val.value;\n\t\t} else {\n\t\t\treturn val;\n\t\t};\n \t};\n\n\treturn (\n\t\t\n\t\t\t onValueChange(e.target.value)}\n\t\t\t/>\n\t\t\t\n\t\t\n\t);\n\tfunction onUnitChange(val: string) {\n\t\tsetUnit(val);\n\t\tprops.onChange({\n\t\t\tvalue: getValue(props.value),\n\t\t\tunit: val,\n\t\t});\n\t}\n\tfunction onValueChange(val: string) {\n\t\tif ( unit === '') {\n\t\t\tprops.onChange(val);\n\t\t} else {\n\t\t\tprops.onChange({\n\t\t\t\tvalue: val,\n\t\t\t\tunit: unit,\n\t\t\t});\n\t\t}\n\t};\n\n\tfunction getUnitValue(val: string | DayMonthYear){\n\t\tif ( typeof val === 'object' && val !== null ) {\n\t\t\treturn val.unit;\n\t\t} else {\n\t\t\treturn val;\n\t\t};\n\t}\n};\n","import React from 'react';\nimport { DayMonthYear, IHealthAbnormalities, IHealthQuestionWithUserName, ILast5Years, ISymptomQuestions } from 'application/HealthQuestions/HealthTypes';\nimport { ValidationMessages } from 'common/utils';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { DayMonthYearInput } from './DayMonthYearInput';\nimport { ErrorMessage } from './ErrorMessage';\nimport { HealthDataContext } from 'application/HealthQuestions/HealthContext';\n\ninterface IProps {\n\tname: string\n\tuser?: string;\n\tsection: string;\n}\n\nexport const HealthAccordion: React.FC = (props: IProps) => {\n\tconst methods = useFormContext();\n\tconst healthDataContext = React.useContext(HealthDataContext);\n\n\tconst { control, errors } = methods;\n\tconst user = props.user || '';\n\tconst { healthQuestionaireData } = healthDataContext;\n\n\tconst fieldNameHasDot = props.name.includes('.');\n\tconst fieldName = fieldNameHasDot ? props.name.split('.') : props.name;\n\tconst errorList = fieldNameHasDot ? errors?.[fieldName[0]]?.[fieldName[1]]?.[user] : errors?.[props.name]?.[user];\n\n\tlet foundHealthData = undefined;\n\tif (props.section === 'section1') {\n\t\tif (healthQuestionaireData?.section1Questions !== undefined) {\n\t\t\tfoundHealthData = healthQuestionaireData?.section1Questions?.find(data => data.idOfApplicantOrChildren === user);\n\t\t}\n\t} else if (props.section === 'section2') {\n\t\t// console.log('fieldname=', fieldName[1]);\n\t\tif (healthQuestionaireData?.section2Questions !== undefined) {\n\t\t\tconst findData = healthQuestionaireData?.section2Questions?.[fieldName[1] as keyof ISymptomQuestions];\n\t\t\tfoundHealthData = findData !== undefined ? findData.find((data: IHealthQuestionWithUserName) => data.idOfApplicantOrChildren === user) : undefined;\n\t\t}\n\t} else if (props.section === 'section3') {\n\t\tif (healthQuestionaireData?.section3Questions !== undefined) {\n\t\t\tconst findData = healthQuestionaireData?.section3Questions?.[fieldName[1] as keyof ILast5Years];\n\t\t\tfoundHealthData = findData !== undefined ? findData.find((data: IHealthQuestionWithUserName) => data.idOfApplicantOrChildren === user) : undefined;\n\t\t}\n\t} else if (props.section === 'section4') {\n\t\tif (healthQuestionaireData?.section4Questions !== undefined) {\n\t\t\tfoundHealthData = healthQuestionaireData?.section4Questions?.find(data => data.idOfApplicantOrChildren === user);\n\t\t}\n\t} else if (props.section === 'section5') {\n\t\tif (healthQuestionaireData?.section5Questions !== undefined) {\n\t\t\tconst findData = healthQuestionaireData?.section5Questions?.[fieldName[1] as keyof IHealthAbnormalities];\n\t\t\tfoundHealthData = findData !== undefined ? findData.find((data: IHealthQuestionWithUserName) => data.idOfApplicantOrChildren === user) : undefined;\n\t\t}\n\t};\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errorList?.natureOfIllness?.message}\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errorList?.dateOfIllness?.message}\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t hasValue(value) || ValidationMessages.required,\n\t\t\t\t\t\t\tvalidateUnitData: (value) => hasUnit(value) || ValidationMessages.unit,\n\t\t\t\t\t\t},\n\t\t\t\t\t}}\n\t\t\t\t\trender={({ onChange, value }) => }\n\t\t\t\t/>\n\t\t\t\t{errorList?.lengthOfIllness?.message}\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errorList?.nameAndAddressOfPhysiciansOrHospitals?.message}\n\t\t\t
\n\t\t
\n\t);\n\n\tfunction hasValue(val: string | DayMonthYear) {\n\t\tif (typeof val === 'object' && val !== null) {\n\t\t\treturn val.value !== '';\n\t\t} else {\n\t\t\treturn val !== '';\n\t\t};\n\t}\n\n\tfunction hasUnit(val: string | DayMonthYear) {\n\t\tif (typeof val === 'object' && val !== null) {\n\t\t\treturn val.unit !== '';\n\t\t}\n\n\t\tif (typeof val === 'string') {\n\t\t\treturn false;\n\t\t}\n\t}\n};\n","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, Divider, FormButtons, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { QuestionContainer } from 'components/cpaipw/QuestionContainer';\nimport { FormContext } from 'quote/FormContext';\nimport { HealthAccordion } from 'components/cpaipw/HealthAccordion';\nimport { Controller, FormProvider, useForm } from 'react-hook-form';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { Accordion } from 'components/cpaipw/Accordion';\nimport { HealthActionContext, HealthDataContext } from './HealthContext';\nimport { IHealthQuestionWithUserName } from './HealthTypes';\nimport { ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\n\nconst HealthApplicationStep1: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\n\tconst healthActionContext = React.useContext(HealthActionContext);\n\tconst healthDataContext = React.useContext(HealthDataContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.health);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst healthData = healthDataContext.healthQuestionaireData?.section1Questions;\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t\tdefaultValues: {\n\t\t\tnotApplicable: (Array.isArray(healthData) && healthData.length === 0) ? true : false\n\t\t}\n\t});\n\n\tconst { control, watch, setError, errors } = methods;\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst watchAll = watch();\n\tconst formHasFields = Object.keys(watchAll).filter(v => v !== 'notApplicable');\n\n\tconst defaultselectedUsers = healthData !== undefined ? healthData?.map((item: IHealthQuestionWithUserName) => {\n\t\treturn item.idOfApplicantOrChildren;\n\t}) : undefined;\n\n\tconst onHandleSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tconst section1Data = healthActionContext.extractHealthData(val.section1Questions, appDataContext.applicationData.children!) as IHealthQuestionWithUserName[];\n\t\thealthActionContext.setHealthQuestionaireData({ ...healthDataContext.healthQuestionaireData, section1Questions: section1Data });\n\t\thistory.push(NavRoutes.ApplicationHealthStep2);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Health

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t 0}\n\t\t\t\t\t\t\t\t\t\tlabel=\"Not Applicable\"\n\t\t\t\t\t\t\t\t\t\tonClick={() => onChange(!value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.notApplicable?.message}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t history.push(NavRoutes.ApplicationBeneficiariesStep3)}\n\t\t\t\t\t\tonClickNext={methods.handleSubmit(onHandleSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default HealthApplicationStep1;","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { FormContext } from 'quote/FormContext';\nimport { Controller, FormProvider, useForm } from 'react-hook-form';\nimport { HealthAccordion } from 'components/cpaipw/HealthAccordion';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { Accordion } from 'components/cpaipw/Accordion';\nimport { HealthActionContext, HealthDataContext } from './HealthContext';\nimport { IHealthQuestionWithUserName, ISymptomQuestions } from './HealthTypes';\nimport { ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\n\n\nconst HealthApplicationStep2: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\n\tconst healthActionContext = React.useContext(HealthActionContext);\n\tconst healthDataContext = React.useContext(HealthDataContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.health);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\tconst healthData = healthDataContext.healthQuestionaireData?.section2Questions;\n\n\tconst healthDataKeys = healthData && Object.keys(healthData);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t\tdefaultValues: {\n\t\t\tnotApplicable: healthDataKeys !== undefined && healthDataKeys?.length === 0 ? true : false\n\t\t}\n\t});\n\tconst { control, watch, setError, errors } = methods;\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst watchAll = watch();\n\tconst formHasFields = Object.keys(watchAll).filter(v => v !== 'notApplicable');\n\n\tconst defaultselectedUsers: any = {};\n\tif (healthDataKeys !== undefined) {\n\t\thealthDataKeys?.forEach((key: string) => {\n\t\t\tconst data = healthData?.[key as keyof ISymptomQuestions];\n\t\t\tconst users = data?.map(item => {\n\t\t\t\treturn item.idOfApplicantOrChildren;\n\t\t\t});\n\t\t\tdefaultselectedUsers[key] = users;\n\t\t});\n\t}\n\n\tconst onHandleSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tconst section2Questions = val.section2Questions !== undefined ? val.section2Questions : {};\n\t\tconst contentKeys = Object.keys(section2Questions);\n\t\tconst section2Data: ISymptomQuestions = {};\n\t\tcontentKeys.forEach(key => {\n\t\t\tconst data = healthActionContext.extractHealthData(val.section2Questions[key], appDataContext.applicationData.children) as IHealthQuestionWithUserName[];\n\t\t\tsection2Data[key as keyof ISymptomQuestions] = data;\n\t\t});\n\n\t\thealthActionContext.setHealthQuestionaireData({ ...healthDataContext.healthQuestionaireData, section2Questions: section2Data });\n\t\thistory.push(NavRoutes.ApplicationHealthStep3);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Health

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tHas the proposed insured had or do they currently have discomfort, signs or symptoms for which:\n\t\t\t\t\t

\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t 0}\n\t\t\t\t\t\t\t\t\t\tlabel=\"Not Applicable\"\n\t\t\t\t\t\t\t\t\t\tonClick={() => onChange(!value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.notApplicable?.message}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t history.push(NavRoutes.ApplicationHealthStep1)}\n\t\t\t\t\t\tonClickNext={methods.handleSubmit(onHandleSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default HealthApplicationStep2;","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { FormContext } from 'quote/FormContext';\nimport { Controller, FormProvider, useForm } from 'react-hook-form';\nimport { HealthAccordion } from 'components/cpaipw/HealthAccordion';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { Accordion } from 'components/cpaipw/Accordion';\nimport { HealthActionContext, HealthDataContext } from './HealthContext';\nimport { IHealthQuestionWithUserName, ILast5Years } from './HealthTypes';\nimport { ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\n\nconst HealthApplicationStep3: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\n\tconst healthActionContext = React.useContext(HealthActionContext);\n\tconst healthDataContext = React.useContext(HealthDataContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.health);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst healthData = healthDataContext.healthQuestionaireData?.section3Questions;\n\n\tconst healthDataKeys = healthData && Object.keys(healthData);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t\tdefaultValues: {\n\t\t\tnotApplicable: healthDataKeys !== undefined && healthDataKeys?.length === 0 ? true : false\n\t\t}\n\t});\n\tconst { control, watch, setError, errors } = methods;\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst watchAll = watch();\n\tconst formHasFields = Object.keys(watchAll).filter(v => v !== 'notApplicable');\n\n\tconst defaultselectedUsers: any = {};\n\tif (healthDataKeys !== undefined) {\n\t\thealthDataKeys?.forEach((key: string) => {\n\t\t\tconst data = healthData?.[key as keyof ILast5Years];\n\t\t\tconst users = data?.map(item => {\n\t\t\t\treturn item.idOfApplicantOrChildren;\n\t\t\t});\n\t\t\tdefaultselectedUsers[key] = users;\n\t\t});\n\t}\n\n\tconst onHandleSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tconst section3Questions = val.section3Questions !== undefined ? val.section3Questions : {};\n\t\tconst contentKeys = Object.keys(section3Questions);\n\t\tconst section3Data: ILast5Years = {};\n\t\tcontentKeys.forEach(key => {\n\t\t\tconst data = healthActionContext.extractHealthData(val.section3Questions[key], appDataContext.applicationData.children) as IHealthQuestionWithUserName[];\n\t\t\tsection3Data[key as keyof ILast5Years] = data;\n\t\t});\n\n\t\thealthActionContext.setHealthQuestionaireData({ ...healthDataContext.healthQuestionaireData, section3Questions: section3Data });\n\t\thistory.push(NavRoutes.ApplicationHealthStep4);\n\t};\n\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Health

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tIn the last 5 years, has the proposed insured spent more than 72 hours: \n\t\t\t\t\t

\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t 0}\n\t\t\t\t\t\t\t\t\t\tonClick={() => onChange(!value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.notApplicable?.message}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t history.push(NavRoutes.ApplicationHealthStep2)}\n\t\t\t\t\t\tonClickNext={methods.handleSubmit(onHandleSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default HealthApplicationStep3;","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { FormContext } from 'quote/FormContext';\nimport { Controller, FormProvider, useForm } from 'react-hook-form';\nimport { HealthAccordion } from 'components/cpaipw/HealthAccordion';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { Accordion } from 'components/cpaipw/Accordion';\nimport { HealthActionContext, HealthDataContext } from './HealthContext';\nimport { IHealthQuestionWithUserName } from './HealthTypes';\nimport { ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\n\nconst HealthApplicationStep4: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\n\tconst healthActionContext = React.useContext(HealthActionContext);\n\tconst healthDataContext = React.useContext(HealthDataContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.health);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst healthData = healthDataContext.healthQuestionaireData?.section4Questions;\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t\tdefaultValues: {\n\t\t\tnotApplicable: (Array.isArray(healthData) && healthData.length === 0) ? true : false\n\t\t}\n\t});\n\n\tconst { control, watch, setError, errors } = methods;\n\n\tconst watchNa = watch(['notApplicable']);\n\tconst defaultselectedUsers = healthData !== undefined ? healthData?.map((item: IHealthQuestionWithUserName) => {\n\t\treturn item.idOfApplicantOrChildren;\n\t}) : undefined;\n\n\tconst onHandleSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tconst section4Data = healthActionContext.extractHealthData(val.section4Questions, appDataContext.applicationData.children) as IHealthQuestionWithUserName[];\n\n\t\thealthActionContext.setHealthQuestionaireData({ ...healthDataContext.healthQuestionaireData, section4Questions: section4Data });\n\t\thistory.push(NavRoutes.ApplicationHealthStep5);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Health

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.notApplicable?.message}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t history.push(NavRoutes.ApplicationHealthStep3)}\n\t\t\t\t\t\tonClickNext={methods.handleSubmit(onHandleSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default HealthApplicationStep4;","import React from 'react';\nimport { CheckboxButton, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { FormContext } from 'quote/FormContext';\nimport { Controller, FormProvider, useForm } from 'react-hook-form';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { Accordion } from 'components/cpaipw/Accordion';\nimport { HealthAccordion } from 'components/cpaipw/HealthAccordion';\nimport { HealthActionContext, HealthDataContext } from './HealthContext';\nimport { IHealthAbnormalities, IHealthQuestionWithUserName } from './HealthTypes';\nimport { ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\nimport { SubmissionContext } from 'application/SubmissionContext';\n\nconst HealthApplicationStep5: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst submissionCtx = React.useContext(SubmissionContext);\n\n\tconst healthActionContext = React.useContext(HealthActionContext);\n\tconst healthDataContext = React.useContext(HealthDataContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.health);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst healthData = healthDataContext.healthQuestionaireData?.section5Questions;\n\n\tconst healthDataKeys = healthData && Object.keys(healthData);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t\tdefaultValues: {\n\t\t\tnotApplicable: healthDataKeys !== undefined && healthDataKeys?.length === 0 ? true : false\n\t\t}\n\t});\n\tconst { control, watch, setError, errors } = methods;\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst watchAll = watch();\n\tconst formHasFields = Object.keys(watchAll).filter(v => v !== 'notApplicable');\n\n\tconst defaultselectedUsers: any = {};\n\n\tif (healthDataKeys !== undefined) {\n\t\thealthDataKeys?.forEach((key: string) => {\n\t\t\tconst data = healthData?.[key as keyof IHealthAbnormalities];\n\t\t\tconst users = data?.map(item => {\n\t\t\t\treturn item.idOfApplicantOrChildren;\n\t\t\t});\n\t\t\tdefaultselectedUsers[key] = users;\n\t\t});\n\t}\n\n\tconst onHandleSubmit = async (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tconst section5Questions = val.section5Questions !== undefined ? val.section5Questions : {};\n\t\tconst contentKeys = Object.keys(section5Questions);\n\t\tconst section5Data: IHealthAbnormalities = {};\n\t\tcontentKeys.forEach(key => {\n\t\t\tconst data = healthActionContext.extractHealthData(val.section5Questions[key], appDataContext.applicationData.children) as IHealthQuestionWithUserName[];\n\t\t\tsection5Data[key as keyof IHealthAbnormalities] = data;\n\t\t});\n\n\t\thealthActionContext.setHealthQuestionaireData({ ...healthDataContext.healthQuestionaireData, section5Questions: section5Data });\n\t\tsubmissionCtx.setSubmitApplication(true);\n\t\thistory.push(NavRoutes.ApplicationLifestyleStep1);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Health

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tIn the last 5 years, has the proposed insured consulted a health professional, been diagnosed, recieved treatment or\n\t\t\t\t\t\tundergone surger for any of the following:\n\t\t\t\t\t

\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t 0}\n\t\t\t\t\t\t\t\t\t\tlabel=\"Not Applicable\"\n\t\t\t\t\t\t\t\t\t\tonClick={() => onChange(!value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.notApplicable?.message}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t history.push(NavRoutes.ApplicationHealthStep4)}\n\t\t\t\t\t\tonClickNext={methods.handleSubmit(onHandleSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default HealthApplicationStep5;","import { IHistoryData, IllnessDTO } from 'application/HistoryQuestions/HistoryTypes';\nimport classNames from 'classnames';\nimport { randomString } from 'common/utils';\nimport Button from 'components/buttons/Button';\nimport React from 'react';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { CheckboxGroup, CheckboxOption } from './CheckboxGroup';\nimport { Divider } from './Divider';\nimport { ErrorMessage } from './ErrorMessage';\n\ninterface IProps {\n\tuser?: string;\n\thistoryData: IHistoryData[];\n}\n\nconst IllnessContainer: React.FC = (props: IProps) => {\n\tconst historyData = props.historyData.find(history => history.user === props.user);\n\tconst members = historyData !== undefined ? historyData.illness.map(ill => ill.familyMember) : [];\n\tconst illnesses = historyData !== undefined && historyData.illness.length > 0 ? historyData.illness : [];\n\tconst [selectedFamilyMembers, setSelectedFamilyMembers] = React.useState(members);\n\n\tconst user = props.user || '';\n\n\tconst familyOptions = [\n\t\t{\n\t\t\tlabel: 'Father',\n\t\t\tvalue: 'Father',\n\t\t}, {\n\t\t\tlabel: 'Mother',\n\t\t\tvalue: 'Mother'\n\t\t}, {\n\t\t\tlabel: 'Brother',\n\t\t\tvalue: 'Brother'\n\t\t}, {\n\t\t\tlabel: 'Sister',\n\t\t\tvalue: 'Sister'\n\t\t}\n\t] as CheckboxOption[];\n\treturn (\n\t\t
\n\t\t\t setSelectedFamilyMembers(value)}\n\t\t\t\toptions={familyOptions}\n\t\t\t\tvalue={selectedFamilyMembers}\n\t\t\t/>\n\t\t\t{familyOptions.map((option, index: number) => {\n\t\t\t\treturn selectedFamilyMembers.includes(option.value) ?\n\t\t\t\t\t :\n\t\t\t\t\t;\n\t\t\t})}\n\t\t
);\n};\n\ninterface IllnessGroupProps {\n\tmemberName: string;\n\tcurrentlySelectedUser: string;\n\tillnessData: IllnessDTO[];\n}\n\nconst IllnessGroup: React.FC = (props: IllnessGroupProps) => {\n\tconst illnessIndexFromProps = props.illnessData.length > 0 ? props.illnessData.map(ill => ill.id) : [];\n\tif (illnessIndexFromProps.length === 0) {\n\t\tillnessIndexFromProps.push(randomString(9));\n\t}\n\tconst [illnessIndex, setIllnessIndex] = React.useState([...illnessIndexFromProps]);\n\n\treturn (\n\t\t\n\t\t\t{\n\t\t\t\tillnessIndex.map((item, index) => {\n\t\t\t\t\tconst foundIllness = props.illnessData.find(ill => ill.id === item);\n\t\t\t\t\treturn ();\n\t\t\t\t})\n\t\t\t}\n\t\t\n\t);\n\n\tfunction updateIllnessData(index: string | undefined) {\n\t\tconst illnessIndexData = [...illnessIndex];\n\t\tif (index !== undefined) {\n\t\t\tconst updatedStuff = illnessIndexData.filter((data: string) => data !== index);\n\t\t\tsetIllnessIndex(updatedStuff);\n\t\t} else {\n\t\t\tillnessIndexData.push(randomString(9));\n\t\t\tsetIllnessIndex(illnessIndexData);\n\t\t}\n\t}\n\n};\n\ninterface IllnessFormProps {\n\tlastItem: boolean;\n\tcurrentlySelectedUser: string;\n\tillnessData?: IllnessDTO;\n\tindex: string;\n\tmemberName: string;\n\tupdatedIllnessData: (index: string | undefined) => void;\n}\n\nconst IllnessForm: React.FC = (props: IllnessFormProps) => {\n\tconst methods = useFormContext();\n\tconst { control, errors } = methods;\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\t

{props.memberName}

\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.[props.currentlySelectedUser]?.[props.memberName]?.[props.index]?.nameOfIllness?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.[props.currentlySelectedUser]?.[props.memberName]?.[props.index]?.ageAtOnsetIllness?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.[props.currentlySelectedUser]?.[props.memberName]?.[props.index]?.ageIfAlive?.message}\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{errors?.[props.currentlySelectedUser]?.[props.memberName]?.[props.index]?.ageAtDeath?.message}\n\t\t\t\t
\n\t\t\t
\n\t\t\t\n\t\t\t\t{props.lastItem ? 'Add Illness +' : 'Remove Illness -'}\n\t\t\t\n\t\t
\n\t);\n\n\tfunction handleButtonClick() {\n\t\tif (props.lastItem) {\n\t\t\treturn props.updatedIllnessData(undefined);\n\t\t} else {\n\t\t\treturn props.updatedIllnessData(props.index);\n\t\t}\n\t}\n};\nexport default IllnessContainer;\n","import { SubmissionContext } from 'application/SubmissionContext';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { Accordion } from 'components/cpaipw/Accordion';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport IllnessContainer from 'components/cpaipw/IllnessContainer';\nimport { FormContext } from 'quote/FormContext';\nimport React from 'react';\nimport { useForm, FormProvider, Controller } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { HistoryActionContext, HistoryDataContext } from './HistoryContext';\n\n\nconst HistoryApplicationStep1: React.FC = () => {\n\tconst history = useHistory();\n\n\tconst FormCtx = React.useContext(FormContext);\n\tconst historyActionCtx = React.useContext(HistoryActionContext);\n\tconst historyDataCtx = React.useContext(HistoryDataContext);\n\tconst submissionCtx = React.useContext(SubmissionContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.history);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tdefaultValues: {\n\t\t\thistoryData: [],\n\t\t},\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\tconst { control, setError, handleSubmit } = methods;\n\n\t// const watchNa = watch(['notApplicable'])\n\n\tconst onValidSubmit = async (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (notApplicableOrEmptyValue(keys, val)) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\t\tconst filteredKeys = keys.filter(key => key !== 'notApplicable');\n\t\thistoryActionCtx.extractHistoryData(filteredKeys, val);\n\t\tsubmissionCtx.setSubmitApplication(true);\n\t\thistory.push(NavRoutes.ApplicationReview);\n\t};\n\n\tconst historyUsers = historyDataCtx.historyData.length > 0 ? historyDataCtx.historyData.map(history => history.user) : [];\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

History

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{''}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t history.push(NavRoutes.ApplicationLifestyleStep6)}\n\t\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n\n\tfunction notApplicableOrEmptyValue(keys: string[], val: any) {\n\t\treturn keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false;\n\t}\n};\n\nexport default HistoryApplicationStep1;","import { ApplicationPages, NavRoutes, preventDefault, ValidationMessages } from 'common/utils';\nimport { CheckboxButton, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { Accordion } from 'components/cpaipw/Accordion';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { FormContext } from 'quote/FormContext';\nimport React from 'react';\nimport { Controller, FormProvider, useForm, useFormContext } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { LifestyleActionContext, LifestyleDataContext } from './LifestyleContext';\nimport { LifestyleQuestionWithUserName } from './LifestyleTypes';\n\nconst LifestyleApplicationStep1: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst lifestyleActionContext = React.useContext(LifestyleActionContext);\n\tconst lifestyleDataContext = React.useContext(LifestyleDataContext);\n\n\tconst lifestyleData = lifestyleDataContext.lifestyleQuestions.section1;\n\n\tconst defaultselectedUsers = lifestyleData === undefined ? [] : lifestyleData.map((values: LifestyleQuestionWithUserName) => { return values.idOfApplicantOrChildren; });\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.lifestyle);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tdefaultValues: {\n\t\t\tsection1: lifestyleData || [],\n\t\t\tnotApplicable: lifestyleData !== undefined && lifestyleData.length === 0\n\t\t},\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\n\tconst { control, handleSubmit, errors, watch, setError } = methods;\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst onValidSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tlifestyleActionContext.extractLifestyleDataSection1(val, 'section1');\n\t\thistory.push(NavRoutes.ApplicationLifestyleStep2);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Lifestyle Questions

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\tIn the last 10 years has the proposed insured has an application for insurance declined or modified,\n\t\t\t\t\t\t\t\tor appoved with an exclusion or extra premium\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t 0) || watch}\n\t\t\t\t\t\t\t\t\t\tlabel=\"Not Applicable\"\n\t\t\t\t\t\t\t\t\t\tonClick={() => onChange(!value)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.notApplicable?.message}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t history.push(NavRoutes.ApplicationHealthStep5)}\n\t\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\n\ninterface IReasonFormProps {\n\tname: string;\n\tuser?: string;\n\tdefaultValues?: LifestyleQuestionWithUserName[]\n}\n\nconst ReasonForm: React.FC = (props: IReasonFormProps) => {\n\tconst user = props.user || '';\n\tconst methods = useFormContext();\n\n\tconst { control, errors } = methods;\n\n\tconst defaultValuesForUser = props.defaultValues !== undefined && props.defaultValues.length > 0 ?\n\t\tprops.defaultValues.find(val => val.idOfApplicantOrChildren === props.user) : undefined;\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errors?.[props.name]?.[user]?.reason?.message}\n\t\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errors?.[props.name]?.[user]?.dates?.message}\n\t\t\t
\n\t\t
\n\n\t);\n};\n\nexport default LifestyleApplicationStep1;\n","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, CheckboxGroup, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { FormContext } from 'quote/FormContext';\nimport { Controller, useForm } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { AccordionUser, ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\nimport { CheckboxOption } from 'components/cpaipw/CheckboxGroup';\nimport { lifestyleValidation } from 'application/utils';\nimport { LifestyleActionContext, LifestyleDataContext } from './LifestyleContext';\n\nconst LifestyleApplicationStep2: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\tconst lifestyleDataContext = React.useContext(LifestyleDataContext);\n\tconst lifestyleActionContext = React.useContext(LifestyleActionContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.lifestyle);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\n\tconst { control, handleSubmit, errors, watch, setError } = methods;\n\n\tconst watchQ1 = watch(['driversLicenseSuspended']);\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst onValidSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tlifestyleActionContext.extractLifestyleData(val, 'driversLicenseSuspended', appDataContext.applicationData.children!, 'section2');\n\t\thistory.push(NavRoutes.ApplicationLifestyleStep3);\n\t};\n\n\tconst users = appDataContext.getAccordionUsers();\n\tconst checkboxOptions = users.map((user: AccordionUser) => {\n\t\treturn {\n\t\t\tlabel: user.displayName,\n\t\t\tvalue: user.userId,\n\t\t} as CheckboxOption;\n\t});\n\n\tconst lifestyleUserData = lifestyleDataContext.lifestyleQuestions.section2 && lifestyleDataContext.lifestyleQuestions.section2.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section2.map(data => data.idOfApplicantOrChildren) : [];\n\n\n\treturn (\n\t\t\n\t\t\t

Lifestyle Questions

\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tIn the last 5 years has the proposed insured had their driver's license suspended or revoked ?\n\t\t\t\t\t\t

\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t lifestyleValidation(val, watchNa.notApplicable)) : undefined\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.driversLicenseSuspended?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\tdisabled={watchQ1.driversLicenseSuspended !== undefined && watchQ1.driversLicenseSuspended.length !== 0}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t history.push(NavRoutes.ApplicationLifestyleStep1)}\n\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default LifestyleApplicationStep2;\n","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, CheckboxGroup, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { FormContext } from 'quote/FormContext';\nimport { Controller, useForm } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { AccordionUser, ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\nimport { CheckboxOption } from 'components/cpaipw/CheckboxGroup';\nimport { lifestyleValidation } from 'application/utils';\nimport { LifestyleDataContext, LifestyleActionContext } from './LifestyleContext';\n\n\nconst HealthApplicationStep3: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\tconst lifestyleDataContext = React.useContext(LifestyleDataContext);\n\tconst lifestyleActionContext = React.useContext(LifestyleActionContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.lifestyle);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\n\tconst { control, handleSubmit, errors, watch, setError } = methods;\n\n\tconst watchQ1 = watch(['accusedOrFoundGuilty']);\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst onValidSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tlifestyleActionContext.extractLifestyleData(val, 'accusedOrFoundGuilty', appDataContext.applicationData.children!, 'section3');\n\t\thistory.push(NavRoutes.ApplicationLifestyleStep4);\n\t};\n\n\tconst users = appDataContext.getAccordionUsers();\n\tconst checkboxOptions = users.map((user: AccordionUser) => {\n\t\treturn {\n\t\t\tlabel: user.displayName,\n\t\t\tvalue: user.userId,\n\t\t} as CheckboxOption;\n\t});\n\n\tconst lifestyleUserData = lifestyleDataContext.lifestyleQuestions.section3 && lifestyleDataContext.lifestyleQuestions.section3.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section3.map(data => data.idOfApplicantOrChildren) : [];\n\n\treturn (\n\t\t\n\t\t\t

Lifestyle Questions

\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tHas the proposed insured been accused or found guilty of a criminal act within the last 5 years?\n\t\t\t\t\t\t

\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t lifestyleValidation(val, watchNa.notApplicable)) : undefined\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.accusedOrFoundGuilty?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\tdisabled={Array.isArray(watchQ1.accusedOrFoundGuilty) && watchQ1.accusedOrFoundGuilty.length > 0 && lifestyleUserData.length === 0}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t history.push(NavRoutes.ApplicationLifestyleStep2)}\n\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default HealthApplicationStep3;","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, CheckboxGroup, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { FormContext } from 'quote/FormContext';\nimport { Controller, useForm } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { ApplicationDataContext, AccordionUser } from 'application/AboutYouQuestions/ApplicationContext';\nimport { CheckboxOption } from 'components/cpaipw/CheckboxGroup';\nimport { lifestyleValidation } from 'application/utils';\nimport { LifestyleDataContext, LifestyleActionContext } from './LifestyleContext';\n\n\nconst HealthApplicationStep4: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\n\tconst lifestyleDataContext = React.useContext(LifestyleDataContext);\n\tconst lifestyleActionContext = React.useContext(LifestyleActionContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.lifestyle);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\n\tconst { control, handleSubmit, errors, watch, setError } = methods;\n\n\tconst watchQ1 = watch(['usedTobacco']);\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst onValidSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tlifestyleActionContext.extractLifestyleData(val, 'usedTobacco', appDataContext.applicationData.children!, 'section4');\n\t\thistory.push(NavRoutes.ApplicationLifestyleStep5);\n\t};\n\n\tconst users = appDataContext.getAccordionUsers();\n\tconst checkboxOptions = users.map((user: AccordionUser) => {\n\t\treturn {\n\t\t\tlabel: user.displayName,\n\t\t\tvalue: user.userId,\n\t\t} as CheckboxOption;\n\t});\n\n\tconst lifestyleUserData = lifestyleDataContext.lifestyleQuestions.section4 && lifestyleDataContext.lifestyleQuestions.section4.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section4.map(data => data.idOfApplicantOrChildren) : [];\n\n\n\treturn (\n\t\t\n\t\t\t

Lifestyle Questions

\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tIn the last 12 months, has the proposed insured used any form of tobacco, including e-cigarettes or other tobacco substitutes?\n\t\t\t\t\t\t

\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t lifestyleValidation(val, watchNa.notApplicable)) : undefined\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.usedTobacco?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\tdisabled={Array.isArray(watchQ1.usedTobacco) && watchQ1.usedTobacco.length > 0 && lifestyleUserData.length === 0}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t history.push(NavRoutes.ApplicationLifestyleStep3)}\n\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default HealthApplicationStep4;","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, CheckboxGroup, Divider, FormButtons, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { FormContext } from 'quote/FormContext';\nimport { Controller, useForm } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { ApplicationDataContext, AccordionUser } from 'application/AboutYouQuestions/ApplicationContext';\nimport { CheckboxOption } from 'components/cpaipw/CheckboxGroup';\nimport { lifestyleValidation } from 'application/utils';\nimport { LifestyleDataContext, LifestyleActionContext } from './LifestyleContext';\n\nconst LifestyleApplicationStep5: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\tconst lifestyleDataContext = React.useContext(LifestyleDataContext);\n\tconst lifestyleActionContext = React.useContext(LifestyleActionContext);\n\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.lifestyle);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\n\tconst { control, handleSubmit, errors, watch, setError } = methods;\n\n\tconst watchQ1 = watch(['addictionTreatment']);\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst onValidSubmit = (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tlifestyleActionContext.extractLifestyleData(val, 'addictionTreatment', appDataContext.applicationData.children!, 'section5');\n\t\thistory.push(NavRoutes.ApplicationLifestyleStep6);\n\t};\n\n\tconst users = appDataContext.getAccordionUsers();\n\tconst checkboxOptions = users.map((user: AccordionUser) => {\n\t\treturn {\n\t\t\tlabel: user.displayName,\n\t\t\tvalue: user.userId,\n\t\t} as CheckboxOption;\n\t});\n\n\tconst lifestyleUserData = lifestyleDataContext.lifestyleQuestions.section5 && lifestyleDataContext.lifestyleQuestions.section5.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section5.map(data => data.idOfApplicantOrChildren) : [];\n\n\t// console.log('data', lifestyleUserData);\n\treturn (\n\t\t\n\t\t\t

Lifestyle Questions

\n\t\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tHas the proposed insured received treatment for drug or alcohol addiction, or has a health professional recommended that they reduce their drug or alcohol consumption?\n\t\t\t\t\t\t

\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t lifestyleValidation(val, watchNa.notApplicable)) : undefined\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.addictionTreatment?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\tdisabled={Array.isArray(watchQ1.addictionTreatment) && watchQ1.addictionTreatment.length > 0 && lifestyleUserData.length === 0}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t\t history.push(NavRoutes.ApplicationLifestyleStep4)}\n\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t/>\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default LifestyleApplicationStep5;","import { ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport React from 'react';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { ILifestyleFormProps } from './lifestyleProps';\n\nexport const AlcoholicBevaragesForm: React.FC = ( props: ILifestyleFormProps ) => {\n\tconst user = props.user || '';\n\tconst methods = useFormContext();\n\n\tconst { control, errors } = methods;\n\tconst lifestyleData = props.data?.find(d => d.idOfApplicantOrChildren === user);\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t

Number of servings per week

\n\t\t\t\t

1 serving =

\n\t\t\t\t

1 bottle of beer (8 ounces)

\n\t\t\t\t

1 glass of wine (4 ounces)

\n\t\t\t\t

2 ounces of spirits

\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errors?.alcholicBeverage?.[user]?.amount?.message}\n\t\t\t
\n\t\t
\n\n\t);\n};","import { ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport React from 'react';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { ILifestyleFormProps } from './lifestyleProps';\n\nexport const DrugsOrNarcoticsForm: React.FC = ( props: ILifestyleFormProps ) => {\n\tconst user = props.user || '';\n\tconst methods = useFormContext();\n\n\tconst { control, errors } = methods;\n\tconst lifestyleData = props.data?.find(d => d.idOfApplicantOrChildren === user);\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errors?.drugsOrNarcotics?.[user]?.numberGramsPerWeek?.message}\n\t\t\t
\n\t\t
\n\n\t);\n};","import { ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport React from 'react';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { ILifestyleFormProps } from './lifestyleProps';\n\nexport const EcigarettesForm: React.FC = ( props: ILifestyleFormProps ) => {\n\tconst user = props.user || '';\n\tconst methods = useFormContext();\n\n\tconst { control, errors } = methods;\n\tconst lifestyleData = props.data?.find(d => d.idOfApplicantOrChildren === user);\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errors?.eCigarettes?.[user]?.amount?.message}\n\t\t\t
\n\t\t
\n\n\t);\n};","import { ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport React from 'react';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { ILifestyleFormProps } from './lifestyleProps';\n\nexport const TobaccoForm: React.FC = ( props: ILifestyleFormProps ) => {\n\tconst user = props.user || '';\n\tconst methods = useFormContext();\n\n\tconst { control, errors } = methods;\n\tconst lifestyleData = props.data?.find(d => d.idOfApplicantOrChildren === user);\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errors?.tobacco?.[user]?.amount?.message}\n\t\t\t
\n\t\t
\n\n\t);\n};","import { ValidationMessages } from 'common/utils';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport React from 'react';\nimport { Controller, useFormContext } from 'react-hook-form';\nimport { ILifestyleFormProps } from './lifestyleProps';\n\nexport const TobaccoSubstitureForm: React.FC = ( props: ILifestyleFormProps ) => {\n\tconst user = props.user || '';\n\tconst methods = useFormContext();\n\n\tconst { control, errors } = methods;\n\tconst lifestyleData = props.data?.find(d => d.idOfApplicantOrChildren === user);\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{errors?.tobaccoSubstitute?.[user]?.amount?.message}\n\t\t\t
\n\t\t
\n\n\t);\n};","import { ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\nimport { SubmissionContext } from 'application/SubmissionContext';\nimport { ApplicationPages, NavRoutes, preventDefault } from 'common/utils';\nimport { CheckboxButton, Divider, FormButtons, LoadContainer, QuestionContainer, QuoteContainer, Steps } from 'components/cpaipw';\nimport { Accordion } from 'components/cpaipw/Accordion';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { FormContext } from 'quote/FormContext';\nimport React from 'react';\nimport { Controller, FormProvider, useForm } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { AlcoholicBevaragesForm } from './lifestyleComponents/AlcoholicBeveragesForm';\nimport { DrugsOrNarcoticsForm } from './lifestyleComponents/DrugsOrNarcoticsForm';\nimport { EcigarettesForm } from './lifestyleComponents/EcigarettesForm';\nimport { TobaccoForm } from './lifestyleComponents/TobaccoForm';\nimport { TobaccoSubstitureForm } from './lifestyleComponents/TobaccoSubstituteForm';\nimport { LifestyleActionContext, LifestyleDataContext } from './LifestyleContext';\n\n\nconst LifestyleApplicationStep6: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\n\tconst appDataContext = React.useContext(ApplicationDataContext);\n\n\tconst lifestyleActionContext = React.useContext(LifestyleActionContext);\n\tconst lifestyleDataContext = React.useContext(LifestyleDataContext);\n\tconst submissionCtx = React.useContext(SubmissionContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.lifestyle);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\n\tconst { control, handleSubmit, errors, watch, setError } = methods;\n\n\n\tconst watchNa = watch(['notApplicable']);\n\n\tconst watchAll = watch();\n\tconst formHasFields = Object.keys(watchAll).filter(v => v !== 'notApplicable');\n\n\tconst onValidSubmit = async (val: any) => {\n\t\tconst keys = Object.keys(val);\n\t\tif (keys.includes('notApplicable') && keys.length === 1 && val['notApplicable'] === false) {\n\t\t\tsetError('notApplicable', { message: 'If none of the situations are applicable, please select \"Not Applicable\"' });\n\t\t\treturn;\n\t\t}\n\n\t\tlifestyleActionContext.extractLifestyleDataSection6(val, appDataContext.applicationData.children!);\n\t\tsubmissionCtx.setSubmitApplication(true);\n\t\thistory.push(NavRoutes.ApplicationHistoryStep1);\n\t};\n\n\tconst tobaccoUsers = lifestyleDataContext.lifestyleQuestions.section6 && lifestyleDataContext.lifestyleQuestions.section6.tobacco\n\t\t&& lifestyleDataContext.lifestyleQuestions.section6.tobacco.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section6.tobacco.map(t => t.idOfApplicantOrChildren) : [];\n\n\tconst eCigUsers = lifestyleDataContext.lifestyleQuestions.section6 && lifestyleDataContext.lifestyleQuestions.section6.eCigarettes &&\n\t\tlifestyleDataContext.lifestyleQuestions.section6.eCigarettes.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section6.eCigarettes.map(t => t.idOfApplicantOrChildren) : [];\n\n\tconst tobaccoSubUsers = lifestyleDataContext.lifestyleQuestions.section6 && lifestyleDataContext.lifestyleQuestions.section6.tobaccoSubstitute &&\n\t\tlifestyleDataContext.lifestyleQuestions.section6.tobaccoSubstitute.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section6.tobaccoSubstitute.map(t => t.idOfApplicantOrChildren) : [];\n\n\tconst alcoholicBevyUsers = lifestyleDataContext.lifestyleQuestions.section6 && lifestyleDataContext.lifestyleQuestions.section6.alcholicBeverage &&\n\t\tlifestyleDataContext.lifestyleQuestions.section6.alcholicBeverage.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section6.alcholicBeverage.map(t => t.idOfApplicantOrChildren) : [];\n\n\tconst narcoticsUsers = lifestyleDataContext.lifestyleQuestions.section6 && lifestyleDataContext.lifestyleQuestions.section6.drugsOrNarcotics &&\n\t\tlifestyleDataContext.lifestyleQuestions.section6.drugsOrNarcotics.length > 0 ?\n\t\tlifestyleDataContext.lifestyleQuestions.section6.drugsOrNarcotics.map(t => t.idOfApplicantOrChildren) : [];\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

Lifestyle Questions

\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\tHow much of the following does the proposed insured consume? If none, indicate 0.\n\t\t\t\t\t\t

\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

Tobacco

\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

E-cigarettes

\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

Tobacco substitute

\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

Alcoholic beverages

\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t

Drugs or narcotics (including marijuana)?

\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={formHasFields.length > 0}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.notApplicable?.message}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t history.push(NavRoutes.ApplicationLifestyleStep5)}\n\t\t\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n\n\n};\n\nexport default LifestyleApplicationStep6;","import React, { useEffect } from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault, ValidationMessages } from 'common/utils';\nimport { CheckboxButton, FormButtons, QuoteContainer, Steps, Divider } from 'components/cpaipw';\nimport { FormContext } from 'quote/FormContext';\nimport { useForm, FormProvider, Controller } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport classNames from 'classnames';\nimport { BeneficiaryActionContext, BeneficiaryDataContext, IAssignedBeneficiary } from './BeneficiaryContext';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\n\nconst BeneficiaryApplicationStep2: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst beneficaryDataConext = React.useContext(BeneficiaryDataContext);\n\tconst beneficiaries = beneficaryDataConext.beneficiaryData;\n\tconst beneficiaryActionContext = React.useContext(BeneficiaryActionContext);\n\n\tconst [individuals, setIndividuals] = React.useState(undefined);\n\tconst [corporations, setCorporations] = React.useState(undefined);\n\tconst [estate, setEstate] = React.useState(undefined);\n\tconst [equallyShared, setEquallyShared] = React.useState(undefined);\n\tconst [total, setTotal] = React.useState(100);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.beneficiaries);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tconst individualsData = beneficiaryActionContext.getIndividuals();\n\t\tconst corporationsData = beneficiaryActionContext.getCorporations();\n\t\tconst estateData = beneficiaryActionContext.getEstate();\n\t\tconst isEqual = beneficiaries.division;\n\n\t\tif ( isEqual === 'EQUAL_SHARES' || isEqual === undefined ) {\n\t\t\tsetEquallyShared(true);\n\t\t} else {\n\t\t\tsetEquallyShared(false);\n\t\t}\n\n\t\tsetIndividuals(individualsData);\n\t\tsetCorporations(corporationsData);\n\t\tsetEstate(estateData);\n\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tmode: 'onChange',\n\t\treValidateMode: 'onChange'\n\t});\n\n\tconst { control, setValue, getValues, handleSubmit, watch, errors, setError, clearErrors } = methods;\n\n\tconst watchValues = watch();\n\n\tReact.useEffect(() => {\n\t\tclearErrors('total');\n\t}, [total, clearErrors]);\n\n\tuseEffect(() => {\n\t\tif (equallyShared) {\n\t\t\tconst value = getAverage();\n\n\t\t\tconst all = [] as IAssignedBeneficiary[];\n\n\t\t\tif(individuals !== undefined && individuals.length > 0) { all.push(...individuals); }\n\t\t\tif(corporations !== undefined && corporations.length > 0) { all.push(...corporations); }\n\t\t\tif(estate !== undefined) { all.push(estate); }\n\n\t\t\tall.forEach((i) => {\n\t\t\t\tsetValue(i.id, value);\n\t\t\t});\n\t\t}\n\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [equallyShared]);\n\n\tReact.useEffect(() => {\n\t\tif ( equallyShared === false ) {\n\t\t\tcalculateTotal();\n\t\t}\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [watchValues]);\n\n\tconst onValidSubmit = (val: any) => {\n\t\tif( total !== 100 ) {\n\t\t\tsetError('total', { message: 'The total percentage has to add up to 100%' });\n\t\t\treturn;\n\t\t}\n\t\tbeneficiaryActionContext.extractBeneficiaryAllocations(val, equallyShared === true);\n\t\thistory.push(NavRoutes.ApplicationBeneficiariesStep3);\n\t};\n\n\tconst getAverage = () => {\n\t\tconst numberIndividuals = individuals !== undefined ? individuals.length : 0;\n\t\tconst numberCorporations = corporations !== undefined ? corporations.length : 0;\n\t\tconst hasEstate = estate !== undefined;\n\t\tconst total = numberIndividuals + numberCorporations + (hasEstate ? 1 : 0);\n\t\tlet percentage = 100 / total;\n\n\t\tif( Math.round(percentage) !== percentage ) {\n\t\t\treturn percentage.toFixed(2);\n \t}\n\n\t\treturn percentage;\n\t};\n\n\tconst calculateTotal = () => {\n\t\tvar newTotal = 0;\n\n\t\tif (individuals !== undefined ? individuals.length : 0) {\n\t\t\tindividuals?.forEach(i => {\n\t\t\t\tconst val = getValues(i.id);\n\t\t\t\tif ( isNaN(val) ) {\n\t\t\t\t\tsetTotal(-1);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tnewTotal += Number(val);\n\t\t\t});\n\t\t}\n\n\t\tif (corporations !== undefined ? corporations.length : 0) {\n\t\t\tcorporations?.forEach(i => {\n\t\t\t\tconst val = getValues(i.id);\n\t\t\t\tif ( isNaN(val) ) {\n\t\t\t\t\tsetTotal(-1);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tnewTotal += Number(val);\n\t\t\t});\n\t\t}\n\n\t\tif (estate !== undefined) {\n\t\t\tconst val = getValues(estate.id);\n\t\t\tif ( isNaN(val) ) {\n\t\t\t\tsetTotal(-1);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tnewTotal += Number(val);\n\t\t}\n\n\t\tsetTotal(newTotal);\n\t};\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Beneficiaries

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t

\n\t\t\t\t\t\tTo be divided as follows:\n\t\t\t\t\t

\n\n\t\t\t\t\t{individuals &&
\n\t\t\t\t\t\t
Individual(s)
\n\t\t\t\t\t\t{individuals.map((individual: IAssignedBeneficiary, index: number) => {\n\t\t\t\t\t\t\tconst iData = beneficiaries.individuals?.find((i) => i.id === individual.id);\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
{individual.displayName}
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t isNaN(val) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\tdefaultValue={(iData !== undefined && iData.allocation !== undefined) ? iData.allocation : getAverage()}\n\t\t\t\t\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t
%
\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t{errors?.[individual.id]?.message}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t}\n\t\t\t\t\t{corporations &&
\n\t\t\t\t\t\t
Corporations(s)
\n\t\t\t\t\t\t{corporations.map((corporation, index: number) => {\n\t\t\t\t\t\t\tconst iData = beneficiaries.corporations?.find((i) => i.id === corporation.id);\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
{corporation.displayName}
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t isNaN(val) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\tdefaultValue={(iData !== undefined && iData.allocation !== undefined)? iData.allocation : getAverage()}\n\t\t\t\t\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t
%
\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t{errors?.[corporation.id]?.message}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t}\n\t\t\t\t\t{estate && (\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
Estate
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
{estate.displayName}
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t isNaN(val) ? ValidationMessages.number : true,\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tdefaultValue={(beneficiaries.estate !== undefined && beneficiaries.estate.allocation !== undefined) ? beneficiaries.estate.allocation : getAverage()}\n\t\t\t\t\t\t\t\t\t\t\trender={({ onChange, value }) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
%
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t{errors?.[estate.id]?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\tTotal percentage:\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{(total !== -1) ? ((Math.round(total) === total) ? total : total.toFixed(2)) : '0'}%\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t{errors?.total?.message}\n\t\t\t\t\t history.push(NavRoutes.ApplicationBeneficiariesStep1)}\n\t\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n\tfunction handleEquallyShared() {\n\t\tclearErrors();\n\t\tsetEquallyShared(!equallyShared);\n\t\tsetTotal(100);\n\t}\n};\n\nexport default BeneficiaryApplicationStep2;","import React from 'react';\nimport { ApplicationPages, NavRoutes, preventDefault, ValidationMessages } from 'common/utils';\nimport { RadioButtonGroup, FormButtons, InfoMessage, QuoteContainer, Steps, CheckboxButton } from 'components/cpaipw';\nimport { FormContext } from 'quote/FormContext';\nimport { useForm, FormProvider, Controller } from 'react-hook-form';\nimport { useHistory } from 'react-router-dom';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport { BeneficiaryActionContext, BeneficiaryDataContext } from './BeneficiaryContext';\nimport { SubmissionContext } from 'application/SubmissionContext';\n\n\nconst BeneficiaryApplicationStep3: React.FC = () => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\tconst submissionCtx = React.useContext(SubmissionContext);\n\tconst beneficaryDataConext = React.useContext(BeneficiaryDataContext);\n\tconst beneficiaryActionContext = React.useContext(BeneficiaryActionContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.beneficiaries);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst methods = useForm({\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange',\n\t\tdefaultValues: {\n\t\t\tbeneficiaryUnder18: beneficaryDataConext.isUnder18,\n\t\t\tdesignateTrustee: beneficaryDataConext.beneficiaryData.trustee ? 'yes' : 'no',\n\t\t\tfirstName: beneficaryDataConext.beneficiaryData.trustee?.firstName || '',\n\t\t\tlastName: beneficaryDataConext.beneficiaryData.trustee?.lastName || '',\n\t\t\tmiddleInitial: beneficaryDataConext.beneficiaryData.trustee?.middleInitial || '',\n\t\t\trelationshipToInsured: beneficaryDataConext.beneficiaryData.trustee?.relationship || '',\n\t\t\tiUnderstand: beneficaryDataConext.beneficiaryData.trustee?.confirmedUnderstanding || '',\n\t\t}\n\t});\n\tconst { control, watch, errors, handleSubmit } = methods;\n\n\tconst watchUnder18 = watch(['beneficiaryUnder18']);\n\tconst watchDesignateTrustee = watch(['designateTrustee']);\n\n\tconst onValidSubmit = async (val: any) => {\n\t\tbeneficiaryActionContext.extractTrustee(val);\n\t\tbeneficiaryActionContext.setIsUnder18(val['beneficiaryUnder18']);\n\t\tsubmissionCtx.setSubmitApplication(true);\n\t\thistory.push(NavRoutes.ApplicationHealthStep1);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t

Beneficiaries

\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{errors?.beneficiaryUnder18?.message}\n\t\t\t\t\t
\n\t\t\t\t\t{watchUnder18.beneficiaryUnder18 === 'yes' && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tWhen designating a trustee/administrator, we recommend you consult with a legal advisor, and with any proposed trustee/administrator.\n\t\t\t\t\t\t\t\t\tSelect “No” if you have already made another trustee/administrator appointment.\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.designateTrustee?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t\t{watchDesignateTrustee.designateTrustee === 'yes' && watchUnder18.beneficiaryUnder18 === 'yes' && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
Trustee Contact Information
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.firstName?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.lastName?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{errors?.relationshipToInsured?.message}\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\tI hereby appoint the following trustee to receive and to hold in trust, on behalf of any beneficiary,\n\t\t\t\t\t\t\t\tmoney payable to the beneficiary under this plan where, at the time of payment is to be made,\n\t\t\t\t\t\t\t\tthe beneficiary is a minor or otherwise lacks legal capacity. The trustee shall act prudently and may use the money,\n\t\t\t\t\t\t\t\tincluding any returns on it or investments made, for the education and/or maintenance of the beneficiary.\n\t\t\t\t\t\t\t\tThe trust will terminate once thebeneficiary is of the age of majority and has legal capacity.\n\t\t\t\t\t\t\t\tAt that time, the trustee shall deliver to the beneficiary all assets held in trust.\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t onChange(!value)}\n\t\t\t\t\t\t\t\t\t\tisActive={value}\n\t\t\t\t\t\t\t\t\t\tlabel=\"I understand and accept.\"\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{errors?.iUnderstand?.message}\n\t\t\t\t\t\t
\n\t\t\t\t\t)}\n\t\t\t\t\t history.push(NavRoutes.ApplicationBeneficiariesStep2)}\n\t\t\t\t\t\tonClickNext={handleSubmit(onValidSubmit)}\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default BeneficiaryApplicationStep3;","import React from 'react';\nimport { LoadContainer, QuoteContainer } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { sortProducts } from '../../quote/policy/utils';\nimport { FormContext } from 'quote/FormContext';\nimport { PolicyActionContext, PolicyDataContext } from 'quote/policy/PolicyContext';\nimport { ApplicationPages, NavRoutes, preventDefault, ValidationMessages } from 'common/utils';\nimport { PolicyReviewItem } from 'quote/policy/PolicyReviewItem';\nimport { useForm, FormProvider, Controller } from 'react-hook-form';\nimport { ErrorMessage } from 'components/cpaipw/ErrorMessage';\nimport oliverAPI from 'api/OliverAPI';\nimport { SubmissionContext } from 'application/SubmissionContext';\nimport { ApplicationDataContext } from 'application/AboutYouQuestions/ApplicationContext';\nimport { Button } from 'components/buttons';\n\ninterface IProps {\n\n}\ninterface SignatureFields {\n\temailAddress: string;\n\twitnessName: string;\n\twitnessEmail: string;\n}\nconst ApplicationReview: React.FC = (props: IProps) => {\n\tconst FormCtx = React.useContext(FormContext);\n\tconst ApplicationCxt = React.useContext(ApplicationDataContext);\n\tconst PolicyData = React.useContext(PolicyDataContext);\n\tconst PolicyAction = React.useContext(PolicyActionContext);\n\tconst SubmissionCtx = React.useContext(SubmissionContext);\n\n\tconst [signatureDataLoading, setSignatureDataLoading] = React.useState(false);\n\n\tconst history = useHistory();\n\n\tconst methods = useForm({\n\t\tdefaultValues: {\n\t\t\temailAddress: ApplicationCxt.applicationData.email,\n\t\t\twitnessName: '',\n\t\t\twitnessEmail: '',\n\t\t},\n\t\tmode: 'onSubmit',\n\t\treValidateMode: 'onChange'\n\t});\n\tconst { control, handleSubmit, errors } = methods;\n\n\tconst quoteData = PolicyAction.createQuoteData(PolicyData.quoteData);\n\tconst quoteTotal = PolicyData.quoteData.total;\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.review);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tconst onValidSubmit = async (vals: SignatureFields) => {\n\t\tsetSignatureDataLoading(false);\n\t\tawait oliverAPI.postSignerInformation({\n\t\t\tapplication_id: SubmissionCtx.applicationId,\n\t\t\tsigners: [\n\t\t\t\t{\n\t\t\t\t\trole: 'applicant',\n\t\t\t\t\tname: ApplicationCxt.applicationData.firstName! + ' ' + ApplicationCxt.applicationData.lastName!,\n\t\t\t\t\temail: vals.emailAddress,\n\t\t\t\t},\n\t\t\t]\n\t\t});\n\t\thistory.push(NavRoutes.ApplicationNextSteps);\n\t};\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t

{ApplicationCxt.applicationData.firstName}, please review Your Policy

\n\t\t\t\t\t
\n\t\t\t\t\t\t{quoteData.length > 0 && sortProducts(quoteData).map((item: any) => {\n\t\t\t\t\t\t\treturn ;\n\t\t\t\t\t\t})}\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
Total
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
${quoteTotal && quoteTotal.toFixed(2).toLocaleString()}
\n\t\t\t\t\t\t\t\t
/mo
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

Please confirm the following email as your policy will be emailed to that email address:

\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{errors?.emailAddress?.message}\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tSubmit\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default ApplicationReview;","import React from 'react';\nimport { FormContext } from 'quote/FormContext';\nimport { ApplicationPages } from 'common/utils';\nimport { Page } from 'components/common';\nimport {ReactComponent as ThumbsUp} from 'assets/img/thumbs-up.svg';\n\ninterface IProps {\n\n}\n\nconst ApplicationThankYou: React.FC = () => {\n\tconst FormCtx = React.useContext(FormContext);\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.review);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t

Woo-hoo! You’re all done!

\n\t\t\t\t\t

Next Steps

\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
01
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
Your application will be reviewed.
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\tYour application will reviewed by a member of our team.\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
02
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
We will contact you with next steps.
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\tWe will contact you with next steps in the next 2 business days.\n\t\t\t\t\t\t\t\t\tIf you have any questions chat one-on-one.\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default ApplicationThankYou;","\nimport React from 'react';\nimport HelloSign from 'hellosign-embedded';\nimport oliverAPI from 'api/OliverAPI';\nimport { ReactComponent as ThumbsUp } from 'assets/img/thumbs-up.svg';\nimport { useParams } from 'react-router';\nimport { Page } from 'components/common';\nimport { FormContext } from 'quote/FormContext';\nimport { useHistory } from 'react-router-dom';\nimport { ApplicationPages, NavRoutes } from 'common/utils';\nimport { LoadContainer } from 'components/cpaipw';\nimport { Button } from 'components/buttons';\n\nconst Sign: React.FC = () => {\n\tconst FormCtx = React.useContext(FormContext);\n\n\tconst [signatureDataLoading, setSignatureDataLoading] = React.useState(true);\n\tconst [clientHasSigned, setClientHasSigned] = React.useState(false);\n\tconst [redirectUser, setRedirectUser] = React.useState(false);\n\tconst [signatureData, setSignatureData] = React.useState({});\n\n\tconst history = useHistory();\n\tconst { code } = useParams<{code: string}>();\n\tconst client = new HelloSign({clientId: signatureData.client_id});\n\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.review);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tasync function getSignature() {\n\t\t\ttry {\n\t\t\t\tconst sign = await oliverAPI.getSignatureRequest({ code });\n\t\t\t\tif ( sign.status_code === 'signed' ) {\n\t\t\t\t\thistory.replace(NavRoutes.ApplicationThankYou);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tsetSignatureData(sign);\n\t\t\t\tsetSignatureDataLoading(false);\n\t\t\t} catch (error) {\n\t\t\t\treturn alert('The signature link seems to be invalid.');\n\t\t\t}\n\t\t}\n\t\tgetSignature();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\tReact.useEffect(() => {\n\t\tif (clientHasSigned) {\n\t\t\tsetRedirectUser(true);\n\t\t}\n\t\treturn () => {\n\t\t\tsetSignatureDataLoading(false);\n\t\t\t// setClientHasSigned(false);\n\t\t};\n\t}, [clientHasSigned]);\n\n\tReact.useEffect(() => {\n\t\tif (redirectUser) {\n\t\t\thistory.push(NavRoutes.ApplicationThankYou);\n\t\t}\n\t\treturn () => {\n\t\t\tsetSignatureDataLoading(false);\n\t\t\tsetRedirectUser(false);\n\t\t\tsetClientHasSigned(false);\n\t\t};\n\t}, [history, redirectUser]);\n\n\tclient.on('sign', () => {\n\t\tsetClientHasSigned(true);\n\t});\n\n\tclient.on('finish', () => {\n\t\tsetRedirectUser(true);\n\t});\n\tclient.once('sign', () => {\n\t\tsetClientHasSigned(true);\n\t});\n\n\tclient.on('close', () => {\n\t\tsetRedirectUser(true);\n\t});\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

Woo-hoo! You’re almost there!

\n\t\t\t\t\t\t\t

Click the \"Sign Now\" button to provide your digital signature.

\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t

Next Steps

\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
01
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
Provide a digital signature
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

Provide a digital signature now by clicking “sign now”.

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
02
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
Your application will be reviewed
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\tYour application will reviewed by a member of our team.\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
03
\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
We will contact you with next steps
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\tWe will contact you with next steps in the next 2 business days.\n\t\t\t\t\t\t\t\t\tIf you have any questions chat one-on-one.\n\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n\tfunction sign() {\n\t\tclient.open(signatureData.sign_url!, {\n\t\t\ttestMode: true,\n\t\t\tskipDomainVerification: true,\n\t\t\tallowCancel: false,\n\t\t});\n\t}\n};\n\nexport default Sign;","import React from 'react';\nimport { FormContext } from 'quote/FormContext';\nimport { ApplicationPages } from 'common/utils';\nimport { Page } from 'components/common';\nimport { ReactComponent as ThumbsUp } from 'assets/img/thumbs-up.svg';\n\ninterface IProps {\n\n}\n\nconst ApplicationNextSteps: React.FC = () => {\n\tconst FormCtx = React.useContext(FormContext);\n\tReact.useEffect(() => {\n\t\tFormCtx.setCurrentPage(ApplicationPages.review);\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t

Woo-hoo! You’re almost there!

\n\t\t\t\t\t\t

Please check your mailbox, you will have received a link to your application to sign.

\n\t\t\t\t\t\t

You are safe to close this browser window.

\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t

Next Steps

\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
01
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Provide a digital signature
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

Provide a digital signature now by clicking through the link you can find in your mailbox.

\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
02
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Have your witness provide a digital signature
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\tYour witness also has received an email with a request to sign the application.\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t
03
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
Your application will be reviewed.
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\tYour application will reviewed by a member of our team and we'll contact you within the next two business days.\n\t\t\t\t\t\t\t

\n\t\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default ApplicationNextSteps;","import React from 'react';\nimport { QuoteContainer } from 'components/cpaipw';\nimport { useHistory } from 'react-router-dom';\nimport { NavRoutes } from 'common/utils';\nimport { Button } from 'antd';\nimport oliverAPI from 'api/OliverAPI';\nimport { FormContext } from 'quote/FormContext';\n\ntype buttonType = 'personal' | 'group' | 'home';\ninterface IProps {\n}\n\nconst SelectInsuranceType: React.FC = (props: IProps) => {\n\tconst history = useHistory();\n\tconst FormCtx = React.useContext(FormContext);\n\n\tconst handleClick = (type: buttonType) => {\n\t\tif (type === 'personal') {\n\t\t\toliverAPI.postAddTagToContact({tagName: 'API Tag for Quoter', email: FormCtx.initialUserData?.email || ''});\n\t\t\thistory.push(NavRoutes.QuoteYourDetails);\n\t\t} else if (type === 'group') {\n\t\t\toliverAPI.postAddTagToContact({tagName: 'Group Benefits Lead', email: FormCtx.initialUserData?.email || ''});\n\t\t\twindow.open('https://www.cpaipw.ca/firm-products/', '_blank');\n\t\t} else if (type === 'home') {\n\t\t\toliverAPI.postAddTagToContact({tagName: 'TPIC Lead', email: FormCtx.initialUserData?.email || ''});\n\t\t\twindow.open('https://www.cpaipw.ca/home-insurance/', '_blank');\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t

What type of quote are you looking for?

\n\n\t\t\t
\n\t\t\t\t

Personal Insurance

\n\t\t\t\t

Term Life Insurance, Long Term Disability, Critical Illness, Accidental Death & Dismemberment, Dependent Life, or Office Overhead for you and your spouse.

\n\t\t\t\t\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t

Group Employee Benefits for CPA Firms

\n\t\t\t\t

Group Benefits offerings including Extended Healthcare & Dental, Term Life, Long Term Disability and Critical Illness.

\n\t\t\t\t\n\t\t\t
\n\n\t\t\t
\n\t\t\t\t

Home and Auto Insurance

\n\t\t\t\t

See more information on our Home & Auto Insurance offerings.

\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n\n};\n\nexport default SelectInsuranceType;\n","import * as React from 'react';\nimport { Route, Switch } from 'react-router-dom';\n\nimport FourOhFourPage from './common/404Page';\nimport FourOhOnePage from './common/401Page';\nimport PageFooter from './components/common/PageFooter';\n\nimport { PageHero } from 'components/common';\nimport GetStarted from 'quote/aboutYou/GetStarted';\nimport YourDetails from 'quote/aboutYou/YourDetails';\nimport NeedsAssessmentStep0 from 'quote/needsAssessment/NeedsAssessmentStep0';\nimport NeedsAssessmentStep1 from 'quote/needsAssessment/NeedsAssessmentStep1';\nimport NeedsAssessmentStep2 from 'quote/needsAssessment/NeedsAssessmentStep2';\nimport NeedsAssessmentStep3 from 'quote/needsAssessment/NeedsAssessmentStep3';\nimport NeedsAssessmentStep4 from 'quote/needsAssessment/NeedsAssessmentStep4';\nimport NeedsAssessmentStep5 from 'quote/needsAssessment/NeedsAssessmentStep5';\nimport NeedsAssessmentStep6 from 'quote/needsAssessment/NeedsAssessmentStep6';\nimport NeedsAssessmentStep7 from 'quote/needsAssessment/NeedsAssessmentStep7';\nimport NeedsAssessmentStep8 from 'quote/needsAssessment/NeedsAssessmentStep8';\nimport SelectPolicy from 'quote/policy/SelectPolicy';\nimport ReviewSelection from 'quote/policy/ReviewSelection';\nimport { NavRoutes } from 'common/utils';\nimport AboutYouApplication1 from 'application/AboutYouQuestions/AboutYouApplicationStep1';\nimport AboutYouApplication2 from 'application/AboutYouQuestions/AboutYouApplicationStep2';\nimport AboutYouApplication3 from 'application/AboutYouQuestions/AboutYouApplicationStep3';\nimport BeneficiaryApplicationStep1 from 'application/BeneficiaryQuestions/BeneficiaryApplicationStep1';\nimport HealthApplicationStep1 from 'application/HealthQuestions/HealthApplicationStep1';\nimport HealthApplicationStep2 from 'application/HealthQuestions/HealthApplicationStep2';\nimport HealthApplicationStep3 from 'application/HealthQuestions/HealthApplicationStep3';\nimport HealthApplicationStep4 from 'application/HealthQuestions/HealthApplicationStep4';\nimport HealthApplicationStep5 from 'application/HealthQuestions/HealthApplicationStep5';\nimport HistoryApplicationStep1 from 'application/HistoryQuestions/HistoryApplicationStep1';\nimport LifestyleApplicationStep1 from 'application/LifestyleQuestions/LifestyleApplicationStep1';\nimport LifestyleApplicationStep2 from 'application/LifestyleQuestions/LifestyleApplicationStep2';\nimport LifestyleApplicationStep3 from 'application/LifestyleQuestions/LifestyleApplicationStep3';\nimport LifestyleApplicationStep4 from 'application/LifestyleQuestions/LifestyleApplicationStep4';\nimport LifestyleApplicationStep5 from 'application/LifestyleQuestions/LifestyleApplicationStep5';\nimport LifestyleApplicationStep6 from 'application/LifestyleQuestions/LifestyleApplicationStep6';\nimport BeneficiaryApplicationStep2 from 'application/BeneficiaryQuestions/BeneficiaryApplicationStep2';\nimport BeneficiaryApplicationStep3 from 'application/BeneficiaryQuestions/BeneficiaryApplicationStep3';\nimport ApplicationReview from 'application/reviewApplication/ApplicationReview';\nimport ApplicationThankYou from 'application/reviewApplication/ApplicationThankYou';\nimport Sign from 'application/reviewApplication/Sign';\nimport ApplicationNextSteps from 'application/reviewApplication/ApplicationNextSteps';\nimport SelectInsuranceType from 'quote/aboutYou/SelectInsuranceType';\n\nconst Routes: React.FC = () => {\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default Routes;\n","import * as React from 'react';\nimport { BrowserRouter as Router, Route } from 'react-router-dom';\n\nimport withTracker from './withTracker';\nimport Routes from './Routes';\n\nimport './App.css';\nimport FormProvider from 'quote/FormContext';\nimport PolicyProvider from 'quote/policy/PolicyContext';\nimport ApplicationProvider from 'application/AboutYouQuestions/ApplicationContext';\nimport HistoryProvider from 'application/HistoryQuestions/HistoryContext';\nimport HealthProvider from 'application/HealthQuestions/HealthContext';\nimport LifestyleProvider from 'application/LifestyleQuestions/LifestyleContext';\nimport BeneficiaryProvider from 'application/BeneficiaryQuestions/BeneficiaryContext';\nimport SubmissionProvider from 'application/SubmissionContext';\n\ninterface IProps {\n\n}\n\nconst App: React.FC = (props: IProps) => {\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default App;\n","// tslint:disable:no-console\n// In production, we register a service worker to serve assets from local cache.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on the 'N+1' visit to a page, since previously\n// cached resources are updated in the background.\n\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\n// This link also includes instructions on opting out of this behavior.\n\nconst isLocalhost = Boolean(\n\twindow.location.hostname === 'localhost' ||\n\t\t// [::1] is the IPv6 localhost address.\n\t\twindow.location.hostname === '[::1]' ||\n\t\t// 127.0.0.1/8 is considered localhost for IPv4.\n\t\twindow.location.hostname.match(\n\t\t\t/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n\t\t)\n);\n\nexport default function register() {\n\tif (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n\t\t// The URL constructor is available in all browsers that support SW.\n\t\tconst publicUrl = new URL(\n\t\t\tprocess.env.PUBLIC_URL!,\n\t\t\twindow.location.toString()\n\t\t);\n\t\tif (publicUrl.origin !== window.location.origin) {\n\t\t\t// Our service worker won't work if PUBLIC_URL is on a different origin\n\t\t\t// from what our page is served on. This might happen if a CDN is used to\n\t\t\t// serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\n\t\t\treturn;\n\t\t}\n\n\t\twindow.addEventListener('load', () => {\n\t\t\tconst swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n\t\t\tif (!isLocalhost) {\n\t\t\t\t// Is not local host. Just register service worker\n\t\t\t\tregisterValidSW(swUrl);\n\t\t\t} else {\n\t\t\t\t// This is running on localhost. Lets check if a service worker still exists or not.\n\t\t\t\tcheckValidServiceWorker(swUrl);\n\t\t\t}\n\t\t});\n\t}\n}\n\nfunction registerValidSW(swUrl: string) {\n\tnavigator.serviceWorker\n\t\t.register(swUrl)\n\t\t.then(registration => {\n\t\t\tregistration.onupdatefound = () => {\n\t\t\t\tconst installingWorker = registration.installing;\n\t\t\t\tif (installingWorker) {\n\t\t\t\t\tinstallingWorker.onstatechange = () => {\n\t\t\t\t\t\tif (installingWorker.state === 'installed') {\n\t\t\t\t\t\t\tif (navigator.serviceWorker.controller) {\n\t\t\t\t\t\t\t\t// At this point, the old content will have been purged and\n\t\t\t\t\t\t\t\t// the fresh content will have been added to the cache.\n\t\t\t\t\t\t\t\t// It's the perfect time to display a 'New content is\n\t\t\t\t\t\t\t\t// available; please refresh.' message in your web app.\n\t\t\t\t\t\t\t\tconsole.log('New content is available; please refresh.');\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// At this point, everything has been precached.\n\t\t\t\t\t\t\t\t// It's the perfect time to display a\n\t\t\t\t\t\t\t\t// 'Content is cached for offline use.' message.\n\t\t\t\t\t\t\t\tconsole.log('Content is cached for offline use.');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t};\n\t\t})\n\t\t.catch(error => {\n\t\t\tconsole.error('Error during service worker registration:', error);\n\t\t});\n}\n\nfunction checkValidServiceWorker(swUrl: string) {\n\t// Check if the service worker can be found. If it can't reload the page.\n\tfetch(swUrl)\n\t\t.then(response => {\n\t\t\t// Ensure service worker exists, and that we really are getting a JS file.\n\t\t\tif (\n\t\t\t\tresponse.status === 404 ||\n\t\t\t\tresponse.headers.get('content-type')!.indexOf('javascript') === -1\n\t\t\t) {\n\t\t\t\t// No service worker found. Probably a different app. Reload the page.\n\t\t\t\tnavigator.serviceWorker.ready.then(registration => {\n\t\t\t\t\tregistration.unregister().then(() => {\n\t\t\t\t\t\twindow.location.reload();\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Service worker found. Proceed as normal.\n\t\t\t\tregisterValidSW(swUrl);\n\t\t\t}\n\t\t})\n\t\t.catch(() => {\n\t\t\tconsole.log(\n\t\t\t\t'No internet connection found. App is running in offline mode.'\n\t\t\t);\n\t\t});\n}\n\nexport function unregister() {\n\tif ('serviceWorker' in navigator) {\n\t\tnavigator.serviceWorker.ready.then(registration => {\n\t\t\tregistration.unregister();\n\t\t});\n\t}\n}\n","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport App from './App';\nimport { unregister } from './registerServiceWorker';\nimport '../node_modules/antd/dist/antd.css';\nimport 'index.scss';\n\nReactDOM.render(, document.getElementById('root') as HTMLElement);\n\n// service workers need more work before using in an app. (ie notification of a new version)\n// registerServiceWorker();\nunregister();\n","module.exports = __webpack_public_path__ + \"static/media/cpaipw-2020-logo-colour.2cd4b191.svg\";","var React = require('react');\n\nfunction Icon (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\",\"key\":0}),React.createElement(\"path\",{\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\",\"key\":1})]);\n}\n\nIcon.defaultProps = {\"fill\":\"#000000\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"width\":\"24\"};\n\nmodule.exports = Icon;\n\nIcon.default = Icon;\n"],"sourceRoot":""}