@mychoice/mychoice-sdk-modules 2.1.8 → 2.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +12 -8
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/shared/boxes/SelectFormBox/interface.d.ts +1 -1
- package/dist/esm/index.js +12 -8
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/shared/boxes/SelectFormBox/interface.d.ts +1 -1
- package/dist/index.d.ts +1 -1
- package/package.json +4 -4
|
@@ -6,7 +6,7 @@ export type SelectFormBoxProps = DefaultInputProps & LabelFormBoxProps & {
|
|
|
6
6
|
options?: SelectOptionInterface[];
|
|
7
7
|
groupOptions?: SelectOptionGroupInterface[];
|
|
8
8
|
onChange?: (option: OnChangeEventInterface) => void;
|
|
9
|
-
errorMessage?:
|
|
9
|
+
errorMessage?: any;
|
|
10
10
|
hintMessage?: string;
|
|
11
11
|
autoSelectIfValueIsOutOfOptions?: boolean;
|
|
12
12
|
};
|
package/dist/esm/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { ErrorBoundary } from 'react-error-boundary';
|
|
3
|
-
import { AppTypes, TitleForm, TooltipForm, IconDelete, ColorVariablesTypes, InputTypes, InputForm, InputFormPhone, InputFormEmail, InputFormLicence, SelectForm, getFormattedDate, DateTypes, getDateOptions, ButtonForm, OfferHeader, OfferPrice, ButtonBase, ButtonTypes, CategoryTypes, ColorTypes, ButtonVariantTypes, SizeTypes, IconDropdownArrow, OfferDetail, CompanyRoleTypes, OperationHoursInfo, InsuranceTypes, HeaderNavGroup, ButtonMenu, IconLoaderPrimary, getInsuranceType, RequestStatusTypes, formatPostalCode, IconLoaderSecondary, postalCodeFormat, defaultBrokerPhone, useEffectOnce,
|
|
3
|
+
import { AppTypes, TitleForm, TooltipForm, IconDelete, ColorVariablesTypes, InputTypes, InputForm, InputFormPhone, InputFormEmail, InputFormLicence, SelectForm, getFormattedDate, DateTypes, getDateOptions, ButtonForm, OfferHeader, OfferPrice, ButtonBase, ButtonTypes, CategoryTypes, ColorTypes, ButtonVariantTypes, SizeTypes, IconDropdownArrow, OfferDetail, CompanyRoleTypes, OperationHoursInfo, InsuranceTypes, HeaderNavGroup, ButtonMenu, IconLoaderPrimary, getInsuranceType, RequestStatusTypes, formatPostalCode, IconLoaderSecondary, postalCodeFormat, defaultBrokerPhone, useEffectOnce, carCondition, carStatus, carWinterTiresCheck, carKeepPlace, carUsagePurpose, firstDriveDistanceList, dailyDriveBusinessDistanceList, yearlyDriveDistanceList, numberWithCommas, VehiclePrimaryUseTypes, comprehensiveCoverage, collisionCoverage, DeviceTypes, defaultLocalIndex, maritalStatusOptions, subYearsFromDate, occupationOptions, genderOptions, applicantRelationshipOptions, addYearsToDate, checkDateIsSpecial, DriverLicenceTypes, getDifferenceInYears, getLicenceTypeOptions, getDisabledLicenceTypes, yesNoOptions, addDaysToDate, getMinDate, CheckboxForm, subMonthsFromDate, getMinDateByYears, compareDates, insuranceCancellationReasonOptions, DriverListTypes, licenceSuspensionsReasonOptions, trafficTicketsGroupOptions, DriverPriorityTypes, ValidationStatusTypes, QuoteEdit, coverageOptions, liabilityOptions, homeOwnerTypeOptions, tenantBuildingStructureOptions, condoBuildingStructureOptions, homeBuildingStructureOptions, residentsOptions, insuredYearsOptions, getInsuranceYearsOptions, ApplicantListTypes, claimTypeOptions, exteriorFinishOptions, constructionTypeOptions, garageTypeOptions, getNumericOptions, fireHallDistanceOptions, fireHydrantDistanceOptions, primaryHeatingTypeOptions, auxHeatingTypeOptions, InfoMessage, ppOptions, homeCoverageOptions, homeLiabilityOptions, lifeProvinceOptions, lifeInsuranceTypeOptions, lifeCoverageOptions, smokerOptions, MychoiceStep, Step, IconClock, ButtonArrow, DirectionTypes, ButtonTabArrow, ButtonTab, ButtonTabMobile, NavigationCar, NavigationPerson, NavigationDiscount, NavigationQuotes, NavigationAddress, NavigationProperty, ModalTypes } from '@mychoice/mychoice-sdk-components';
|
|
4
4
|
import { useStoreAppConfig, CarQuoteDataHandler, useStorePartner, useStoreAppLoader, useStoreAppModal, StoreConfigAppModalActionTypes, useHandlerPostal, useHandlerCarMake, useHandlerCarModel, useStoreFormCarVehicle, StoreFormCarVehicleActionTypes, useProvince, useStoreFormCarDiscount, useStoreDeviceType, StoreFormCarDiscountActionTypes, useValidationVehicle, useStoreFormCarDriverBase, StoreFormCarDriverBaseActionTypes, useStoreFormCarConfig, useStoreFormCarDriverInfo, StoreFormCarDriverInfoActionTypes, useStoreFormCarDriverLicence, addDayToDate, StoreFormCarDriverLicenceActionTypes, useStoreFormCarDriverInsurance, useStoreFormCarQuote, StoreFormCarDriverInsuranceActionTypes, useStoreFormCarDriverCancellation, StoreFormCarDriverCancellationActionTypes, useStoreFormCarDriverSuspension, StoreFormCarDriverSuspensionActionTypes, useStoreFormCarDriverAccident, StoreFormCarDriverAccidentActionTypes, useStoreFormCarDriverTicket, StoreFormCarDriverTicketActionTypes, useValidationDriver, useValidationCarDiscount, useHandlerCarQuoterEmail, useStoreFormHomeDwelling, useStoreFormHomePostal, useStoreFormHomeApplicantBase, StoreFormHomePostalActionTypes, StoreFormHomeDwellingActionTypes, StoreConfigAppConfigActionTypes, StoreFormHomeApplicantBaseActionTypes, useValidationAddress, useStoreFormHomeApplicantInfo, useStoreFormHomeDiscount, StoreFormHomeDiscountActionTypes, StoreFormHomeApplicantInfoActionTypes, useStoreFormHomeApplicantInsurance, StoreFormHomeApplicantInsuranceActionTypes, useStoreFormHomeApplicantCancellation, StoreFormHomeApplicantCancellationActionTypes, useStoreFormHomeApplicantClaim, StoreFormHomeApplicantClaimActionTypes, useValidationApplicant, useValidationDwelling, useStoreFormHomeQuote, HomeQuoteDataHandler, useValidationHomeDiscount, useHandlerHomeQuoterEmail, useStoreFormLifeCoverage, StoreFormLifeCoverageActionTypes, useValidationCoverage, useStoreFormLifeQuote, useStoreFormLifeApplicant, LifeQuoteDataHandler, useValidationLifeApplicant, useHandlerLifeQuoterEmail, StoreFormLifeApplicantActionTypes, useStoreFormCarPostal, useStoreFormLifePostal, ClearFormDataHandler, useStoreAppDevice, useStoreClient, useHandlerAuth, useHandlerPartner, StoreConfigAppLoaderActionTypes, StoreFormCarConfigActionTypes, StoreFormCarPostalActionTypes, StoreFormCarQuoteActionTypes, StoreFormHomeQuoteActionTypes, StoreFormLifePostalActionTypes, StoreFormLifeQuoteActionTypes, StoreClientActionTypes, StoreConfigAppDeviceActionTypes, StoreProvider, initHttpResponse } from '@mychoice/mychoice-sdk-store';
|
|
5
5
|
import { useNavigate, useLocation, BrowserRouter, Routes, Route, Navigate } from 'react-router-dom';
|
|
6
6
|
import React, { useState, useCallback, useEffect, useRef } from 'react';
|
|
@@ -178,9 +178,9 @@ const usePathGroups = (insuranceType) => {
|
|
|
178
178
|
// [`${InsuranceTypes.Life}`]: [{ name: 'Life', link: `/${appConfigState.localIndex}/life` }],
|
|
179
179
|
};
|
|
180
180
|
const externalPathGroup = [
|
|
181
|
-
{ name: 'Car', link: 'https://
|
|
182
|
-
{ name: 'Home', link: 'https://
|
|
183
|
-
{ name: 'Life', link: 'https://
|
|
181
|
+
{ name: 'Car', link: 'https://quote.mychoice.ca/insurance/car' },
|
|
182
|
+
{ name: 'Home', link: 'https://quote.mychoice.ca/insurance/home' },
|
|
183
|
+
{ name: 'Life', link: 'https://quote.mychoice.ca/insurance/life' },
|
|
184
184
|
{ name: 'Learn', link: 'https://www.mychoice.ca/blog/' },
|
|
185
185
|
];
|
|
186
186
|
// @todo: use in future.
|
|
@@ -298,10 +298,12 @@ const ModalPostal = () => {
|
|
|
298
298
|
const getVehicleYearRange = () => {
|
|
299
299
|
const currentDate = new Date();
|
|
300
300
|
const vehicleYear = [];
|
|
301
|
-
|
|
301
|
+
const currentYear = currentDate.getFullYear();
|
|
302
|
+
const minYear = currentYear - 25;
|
|
303
|
+
for (let year = (currentDate.getFullYear()); year > minYear; year -= 1) {
|
|
302
304
|
vehicleYear.push({ name: `${year}`, value: `${year}` });
|
|
303
305
|
}
|
|
304
|
-
vehicleYear.push({ name:
|
|
306
|
+
vehicleYear.push({ name: `${minYear} or older`, value: `${minYear}` });
|
|
305
307
|
return vehicleYear;
|
|
306
308
|
};
|
|
307
309
|
const getRecommendedRange = (distanceDaily, distanceBusiness) => {
|
|
@@ -403,7 +405,8 @@ const BlockCarInfo = () => {
|
|
|
403
405
|
const { status: statusModel, getVehicleModel, vehicleModelList = [] } = useHandlerCarModel();
|
|
404
406
|
const { vehicleState, dispatchVehicleState } = useStoreFormCarVehicle();
|
|
405
407
|
const { year: currentYear, make: currentMake, model: currentModel, } = vehicleState.items[vehicleState.activeIndex];
|
|
406
|
-
const yearIsValid = !currentYear || Number(currentYear) >
|
|
408
|
+
const yearIsValid = !currentYear || Number(currentYear) > 1998;
|
|
409
|
+
const yearMessage = (jsxs(Fragment, { children: ["Please contact a licenced representative at Hargerty for classic car insurance:", ' ', jsx("a", { href: "tel:18335431540", children: "1-833-543-1540" })] }));
|
|
407
410
|
const handleVehicleYearChange = ({ value }) => {
|
|
408
411
|
if (value) {
|
|
409
412
|
dispatchVehicleState({
|
|
@@ -3765,6 +3768,7 @@ const AppRouteWrapper = (props) => {
|
|
|
3765
3768
|
let postalCode = carPostal;
|
|
3766
3769
|
const { clearFormData, checkIsExpired, checkIsExpiredWithModal, } = ClearFormDataHandler();
|
|
3767
3770
|
const { appLoaderState } = useStoreAppLoader();
|
|
3771
|
+
const isMychoice = appType === AppTypes.MyChoice;
|
|
3768
3772
|
switch (insuranceType) {
|
|
3769
3773
|
case InsuranceTypes.Car:
|
|
3770
3774
|
postalCode = carPostal;
|
|
@@ -3974,7 +3978,7 @@ const AppRouteWrapper = (props) => {
|
|
|
3974
3978
|
}
|
|
3975
3979
|
}
|
|
3976
3980
|
}, [carPostal, homePostal, lifePostal, isReady]);
|
|
3977
|
-
return (jsx(Fragment, { children: isReady && (jsxs(Fragment, { children: [jsx(AppHeader, {}), jsx(AppModal, {}), insuranceType && (jsx(NavigationTop, { title: `${insuranceType.replace(/^./, insuranceType[0].toUpperCase())} Insurance Quote`, postalCode: postalCode, formSteps: steps, validationHooks: validationHooks, clearForm: clearFormData, propertyIsCompleted: isCompleted })), insuranceType && appType === AppTypes.MyChoice && (jsx("div", { className: "step-progress-bar", children: jsx("span", { style: { width: progressLength } }) })), jsx("div", { className: `${insuranceType ? 'form-page-content' : ''} ${insuranceType && appType === AppTypes.MyChoice ? 'mychoice' : ''}`, children: insuranceType && appType === AppTypes.MyChoice && isDesktop && progressLength ? (jsx(Fragment, { children: jsxs("div", { className: "mychoice-content", children: [jsx(StepsBox, { className: "step-box", formSteps: steps, validationHooks: validationHooks, propertyIsCompleted: isCompleted }), children, jsx("div", { className: "empty-steps-container" })] }) })) : children }), !appLoaderState.isOpen && insuranceType === InsuranceTypes.Car && jsx(ProviderImageFooter, {})] })) }));
|
|
3981
|
+
return (jsx(Fragment, { children: isReady && (jsxs(Fragment, { children: [jsx(AppHeader, {}), jsx(AppModal, {}), insuranceType && (jsx(NavigationTop, { title: `${insuranceType.replace(/^./, insuranceType[0].toUpperCase())} Insurance Quote`, postalCode: postalCode, formSteps: steps, validationHooks: validationHooks, clearForm: clearFormData, propertyIsCompleted: isCompleted })), insuranceType && appType === AppTypes.MyChoice && (jsx("div", { className: "step-progress-bar", children: jsx("span", { style: { width: progressLength } }) })), jsx("div", { className: `${insuranceType ? 'form-page-content' : ''} ${insuranceType && appType === AppTypes.MyChoice ? 'mychoice' : ''}`, children: insuranceType && appType === AppTypes.MyChoice && isDesktop && progressLength ? (jsx(Fragment, { children: jsxs("div", { className: "mychoice-content", children: [jsx(StepsBox, { className: "step-box", formSteps: steps, validationHooks: validationHooks, propertyIsCompleted: isCompleted }), children, jsx("div", { className: "empty-steps-container" })] }) })) : children }), isMychoice && !appLoaderState.isOpen && insuranceType === InsuranceTypes.Car && jsx(ProviderImageFooter, {})] })) }));
|
|
3978
3982
|
};
|
|
3979
3983
|
const NestedRoutes = () => {
|
|
3980
3984
|
const insuranceType = getInsuranceType();
|