{"version":3,"sources":["store/reducers/resource.ts","store/reducers/action-type.util.ts","store/reducers/authentication.ts","store/reducers/proposals.ts","store/reducers/productBuilder.ts","store/models/broker.model.ts","store/models/client.model.ts","constants/StringConstants.ts","store/models/proposal.model.ts","util/utils.currency.ts","store/reducers/proposalOptions.ts","store/reducers/clientOptions.ts","store/reducers/brokers.ts","store/reducers/companies.ts","store/reducers/brokerBuilder.ts","store/reducers/affiiate.ts","store/reducers/index.ts","store/index.ts","views/AppSideNav/AppSideNav.tsx","views/AppContainer.tsx","views/Layout/FooterShort.tsx","constants/EnvConstants.ts","views/Layout/HeaderHome.tsx","views/QuoteEngine/Quote.tsx","components/ProposalStepper/ProposalStepper.tsx","components/Toast/Toast.tsx","util/utils.defaultValues.ts","util/utils.validators.ts","views/Broker/Age.tsx","components/Form/TextField/TextField.tsx","components/Form/NumberFormatField/NumberFormatField.tsx","components/Form/CheckboxField/CheckboxField.tsx","components/Form/ToggleField/ToggleField.tsx","components/Form/SingleSelectField/SingleSelectField.tsx","components/Form/SimpleDatePickerField/SimpleDatePickerField.tsx","components/Form/TypeaheadField/AsyncTypeaheadField.tsx","components/Form/TypeaheadField/TypeaheadField.tsx","views/Broker/Client.tsx","views/Broker/CaseDesign.tsx","views/Broker/Welcome.tsx","views/Layout/Footer.tsx","views/Layout/Header.tsx","views/Broker/ClientBuilder.tsx","views/QuoteEngine/QuoteWizard.tsx","views/QuoteEngine/QuoteSent.tsx","views/Login/Login.tsx","views/BrokerBuilder/ExistentBrokerNav.tsx","views/BrokerBuilder/BrokerBuilder.tsx","routes.tsx","app.tsx","config/axios-config.ts","constants/StorageConstants.ts","index.tsx"],"names":["SortDirection","PENDING","actionType","concat","FULFILLED","REJECTED","ACTION_TYPES","initialState","sessionInitialized","isAuthenticated","currentBroker","undefined","isLoggedIn","validateEmailRequest","username","axios","post","then","data","brokerId","getBrokerId","failed","error","catch","response","id","clearSessionTokens","localStorage","clear","getActionSymbol","getOr","getActionData","ListOptions","Object","classCallCheck","this","page","rows","sort","query","ResourceStore","loading","listOptions","total","projection","map","ResourceFactory","resourceKey","resourceUrl","resourceIdKey","customDefaultState","defaultState","resourceSymbol","Symbol","itemsToMap","keyBy","itemsToProjection","items","i","remapItem","item","objectSpread","remapItems","FETCH_LIST","FETCH","CREATE","UPDATE","DELETE","fetchList","arguments","length","sortOptions","get","sortOrder","startCase","type","meta","payload","params","set","fetch","create","update","remove","delete","reducer","state","action","totalRows","productTypeList","carrierTypeList","occupationClassTypeList","designTypeList","renewabilityTypeList","bpTypeList","epTypeList","ownOccTypeList","residualTypeList","minimumResidualBenefitPayableTypeList","futureInsurabilityOptionsTypeList","airTypeList","colaTypeList","mentalNervousLimitationTypeList","catastrophicBenefitRiderTypeList","uniqueProvisionsTypeList","defaultBroker","brokerID","brokerName","preferredName","primaryPhone","primaryEmail","companyName","affiliateName","externalID","isSMSTextEnabled","brokerProduction","carrierType","premiumTotal","defaultMedication","name","dose","frequencyTypeID","defaultCondition","conditionName","medications","defaultClient","firstName","lastName","email","conditions","FORM_FIELD_REQUIRED","FORM_FIELD_INVALID","BRO_EMAIL_TYPE_PRIMARY","BRO_EMAIL_TYPE_ALT","BRO_EMAIL_TYPE_CC","BRO_EMAIL_TYPE_REQUESTER","BRO_PHONE_TYPE_OFFICE","BRO_PHONE_TYPE_CELL","BRO_PHONE_TYPE_FAX","NEW_AFFILIATE","NEW_COMPANY","NEW_PROPOSAL","NEW_BROKER","defaultProposal","proposalID","proposalGroupID","broker","client","caseDesign","organization","specialistID","productTypeID","epTypeID","bpTypeID","payorTypeID","tobaccoTypeID","tobaccoFrequencyTypeID","isMaxBenefit","statusTypeID","originationTypeID","roundCurrency","value","parseFloat","toFixed","isSubmitting","isSavingNext","isClassificationLoaded","isSavingPrevious","overviewOptions","selectOriginList","selectSpecialistList","selectBrokerList","selectProductList","selectHearAboutUsList","clientOptions","selectGenderList","selectPrefixList","selectTobaccoTypeList","selectTobaccoFrequencyList","selectMedicationFrequencyList","selectCredentialTypeList","selectGovernmentTypeList","selectStateList","selectOccupationStatusList","selectPaidByTypeList","classificationOptions","bpTypeFullList","designTypeFullList","caseDesignOptions","selectBPList","selectEPList","selectPayorList","selectRiderList","caseDesignRiderOptions","productID","productName","riders","statusList","age","years","months","days","isSubmitToastVisible","isSaveToastVisible","currentProposal","proposalMap","selectedOccupationOption","newProposal","_action$payload$data$","overviewDetails","hearAboutUsTypeID","objectWithoutProperties","esm_extends","clientDetails","clients","c","push","isReplaceExistingCoverage","_action$payload$data$2","caseDesignDetails","productType","benefitAmount","_action$payload$data2","proposal","createdDate","isSubmitted","defineProperty","fetchOccupation","occupationID","productOptions","selectProductTypes","createBroker","fetchBroker","updateBroker","companyAffiliate","isAfiliateRequestInProgress","affiliateList","branchList","companyList","rbmList","hearAboutUsList","brokerPrimaryEmailValidating","existentBrokerIdByEmail","existentBrokerFirstNameByEmail","existentBrokerLastNameByEmail","affiliateLogoId","fetchAffiliateLogo","affiliateId","rootReducer","combineReducers","auth","proposals","proposalOptions","occupationOption","newState","_action$payload$data","classifications","proposalId","analyzer","baseBenefitAmount","ssib","totalBenefitAmount","annualPremium","potentialBenefitPayout","monthlyPremium","classificationDetails","_action$meta","productBuilder","dropdownOptions","brokers","companies","brokerBuilder","selectAffiliateList","selectBranchList","selectRBMList","selectCompanyList","existentBroker","affiliate","defaultMiddleware","thunkMiddleware","promiseMiddleware","reduxDevtoolsExtension","window","composedMiddleware","trace","traceLimit","compose","applyMiddleware","apply","store","createStore","AppSideNav","props","_this$createMap","_this","possibleConstructorReturn","getPrototypeOf","call","createProposal","S","path","createCompany","createAffiliate","createMap","handleOnClick","getCreateButton","open","history","isActiveClassName","isActive","location","pathname","getCreateName","logout","toggle","bind","assertThisInitialized","dropdownOpen","setState","prevState","split","filter","x","react","className","React","withRouter","connect","_ref","AppContainer","_React$Component","inherits","createClass","key","react_default","a","createElement","views_AppSideNav_AppSideNav","children","Component","FooterShort","BASE_API_URL","process","HeaderHome","match","affiliateParam","url","startsWith","_this$props","affiliateLogoLoading","mapDispatchToProps","QuoteEngine","campaignParam","companyParam","companyId","campaignId","brokerUrl","react_router","to","ColorlibConnector","withStyles","line","height","border","borderRadius","StepConnector","ProposalStepper","steps","classes","activeStep","onClick","GroupAdd_default","Settings_default","root","Stepper","alternativeLabel","nonLinear","style","backgroundColor","connector","step","index","Step","label","theme","width","margin","marginBottom","button","marginRight","spacing","backButton","completed","display","instructions","marginTop","active","color","styles","fontSize","fontWeight","icon","Snackbar","MuiSnackbar","Toast","message","onClose","closeButton","Button","e","Toast_Snackbar","anchorOrigin","vertical","horizontal","autoHideDuration","ContentProps","padding","defaultOptionValue","addDefaultOption","options","Array","isArray","disabled","toConsumableArray","isEmptyOrDefault","undefinedIfDefault","PHONE_NUMBER_REGEX","RegExp","ZIP_CODE_REGEX","isEmpty","isValidPercentage","values","floatValue","Age","Container","Row","Col","sm","Label","TextField","light","appendText","prependText","placeholder","fieldProps","react_final_form_es","assign","component","input","touched","InputGroup","InputGroupAddon","addonType","InputGroupText","NumberFormatField","thousandSeparator","prefix","decimalScale","isAllowed","isRequired","hint","onChange","rest","Tooltip","title","placement","Help_default","react_number_format_es","fixedDecimalScale","onValueChange","number","CheckboxField","render","classNames","checked","ToggleField","SingleSelect","SingleSelectField","parse","parseInt","StyleKeyboardDatePicker","background","KeyboardDatePicker","SimpleDatePicker","emptyLabel","clearable","required","format","date","dateString","onError","console","log","SimpleDatePickerField","AsyncTypeaheadFieldComponent","_getPrototypeOf2","_len","args","_key","isLoading","handleSearch","asyncToGenerator","regenerator_default","mark","_callee","queryText","wrap","_context","prev","next","sent","t0","stop","_x","typeaheadProps","_this$state","isError","FormGroup","react_bootstrap_typeahead_es","labelKey","onSearch","isInvalid","visited","invalid","isValid","valid","event","AsyncTypeaheadField","TypeaheadFieldComponent","selected","asArray","castArray","newProps","defaultSelected","keyValueToDropdownOption","kvp","TypeaheadField","Client","searchOccupations","searchText","encodeURIComponent","abrupt","handleSubmit","formAction","previous","handleValidate","errors","clientID","P","clientEmail","dateOfBirth","genderTypeID","annualIncome","stateID","clientPhone","occupationTypeID","phoneNumber","test","_this2","officePhoneMask","phoneMask","_this$props2","selectedOcc","prefixOptions","credentialOptions","stateOptions","occupationStatusOptions","genderOptions","tobaccoTypeOptions","tobaccoFrequencyOptions","governmentTypeOptions","booleanOptions","onSubmit","validate","initialValues","mutators","arrayMutators","formProps","formValues","isGovernment","isBusinessOwner","doesWorkFromHome","doesUseTobacco","hasExistingCoverage","selectedOccOption","SingleSelectField_SingleSelectField","Fragment","TextField_TextField_TextField","formatString","SimpleDatePickerField_SimpleDatePickerField","react_final_form_listeners_es","dob","asDate","Date","fetchAge","views_Broker_Age","Form_TypeaheadField_AsyncTypeaheadField","NumberFormatField_NumberFormatField_NumberFormatField","String","fluid","CheckboxField_CheckboxField_CheckboxField","ToggleField_ToggleField_ToggleField","form","change","Spinner","ProposalDetailsCaseDesign","isProductTypeKnown","productOptionsList","bpOptions","epOptions","payorOptions","isMaxBenefitFieldState","getFieldState","isTermsAcceptedFieldState","isTermsAcceptedValue","isProductTypeKnownFieldState","isProductTypeKnownValue","fetchRiders","r","description","href","target","Welcome","hideLoggedInToast","Footer","Header","stepSymbol","stepIndexSymbol","numPages","ClientBuilder","storeClient","Math","min","saveProposalNext","submit","_ref2","_callee2","_context2","submitProposal","_x2","_ref3","_callee3","_context3","storeCaseDesign","max","saveProposalPrevious","_x3","_ref4","_callee4","nextPage","save","_context4","collectCaseDesignFormValuesToProposal","_x4","_x5","_x6","_ref5","_callee5","_context5","collectClientFormValuesToProposal","_x7","_x8","_x9","tobaccoFrequencyID","replace","_componentDidMount","_callee6","_context6","fetchBrokerProfile","fetchClientOptions","fetchCaseDesignOptions","fetchProductTypeOptions","views_Broker_Client","Broker_CaseDesign","logoAffiliateUrl","logoBrokerUrl","brokerLogo","affiliateLogo","views_Layout_Header","views_Broker_Welcome","components_Toast_Toast","hideToast","hideSaveToast","src","components_ProposalStepper_ProposalStepper","_ref6","_callee7","stepIndex","_context7","document","getElementById","dispatchEvent","Event","cancelable","_x10","_x11","renderActivePage","views_Layout_Footer","fetchProposalOptions","fetchStatusList","fetchProposal","fetchProposalClassifications","saveProposal","resetBuilder","changeStatusTypeForProposal","QuoteWizard","views_Broker_ClientBuilder","QuoteSent","Login","authResult","validateEmail","FORM_ERROR","from","search","Layout_HeaderHome","submitFailed","submitError","submitting","noValidate","defaultValue","views_Layout_FooterShort","dispatch","ExistentBrokerNav","BrokerBuilder","fieldName","zipCode","result","formValuesToBroker","fillBrokerEmptyValues","affiliateID","cellPhone","brokerPhones","isPrimary","phoneType","brokerAdditionalEmails","emailAddress","emailType","affiliateIDs","isNaN","companyIDs","companyID","Number","isInteger","address","affiliateFreeTypeName","companyFreeTypeName","marketingCampaignID","HearAboutTypeID","notes","brokerToFormValues","affiliates","officePhoneItem","find","officePhone","faxPhone","alternateEmail","ccEmail","requestorEmail","formStateTemp","formStateHandler","createDecorator","field","updates","allValues","previousValues","emailDisabled","fetchProductBuilderOptions","fetchBrokerOptions","defaultValues","howDidYouHearAboutUsID","companyFullList","hearAboutUsFullList","selectedCompanyDetails","howDidYouHearAboutUs","isCompanyRendering","isAffiliateRendering","stateList","brokerAffiliateID","decorators","unfilteredCompanyList","b","localeCompare","selectedCompany","Form_TypeaheadField_TypeaheadField","fetchCompanyAffiliate","getPrimaryPhoneLabel","fetchBrokerByPrimaryEmail","views_BrokerBuilder_ExistentBrokerNav","campaignID","_ref5$brokerBuilder","Routes","src_views_AppContainer","App","useUtils_cfb96ac9","utils","MomentUtils","react_router_dom","routes","removeAgents","config","defaults","agent","httpAgent","httpsAgent","baseURL","setupAxios","onUnauthenticated","onResponseError","responseError","status","missingConfig","isLoginRoute","request","responseURL","getItem","interceptors","use","token","headers","Authorization","mountPoint","actions","bindActionCreators","ReactDOM","es","app"],"mappings":"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","file":"static/js/main.29a7cf78.chunk.js","sourcesContent":["import axios from \"axios\";\nimport { get, set, startCase } from \"lodash\";\nimport { getOr, keyBy } from \"lodash/fp\";\nimport { PENDING, FULFILLED, REJECTED } from \"./action-type.util\";\n\nconst getActionSymbol = getOr(null, \"meta.resourceSymbol\");\nconst getActionData = getOr(null, \"payload.data\");\n\nenum SortDirection {\n Asc,\n Desc\n}\n\ntype SortOption = [string, SortDirection.Asc | SortDirection.Desc];\n\nexport class ListOptions {\n page: number = 1;\n rows: number = 25;\n sort: SortOption[] = [];\n query?: { [key: string]: string } = {};\n}\n\ninterface IResourceMap {\n [id: string]: R;\n}\n\nexport class ResourceStore {\n loading: boolean = false;\n error: any = {};\n listOptions: ListOptions = new ListOptions();\n total: number = 0;\n projection: Array = [];\n map: IResourceMap = {};\n}\n\nexport default function ResourceFactory(\n resourceKey: string,\n resourceUrl: string,\n resourceIdKey: string,\n customDefaultState?: () => ResourceStore,\n ...functions: Array<(state: ResourceStore, action: any) => ResourceStore>\n) {\n const defaultState = customDefaultState ? customDefaultState() : new ResourceStore();\n const resourceSymbol = Symbol(resourceKey);\n const itemsToMap = keyBy(resourceIdKey);\n const itemsToProjection = items => items.map(i => i[resourceIdKey]);\n const remapItem = item => ({ id: item[resourceIdKey], ...item });\n const remapItems = items => items.map(remapItem);\n\n const ACTION_TYPES = {\n FETCH_LIST: `${resourceKey}/FETCH_LIST`,\n FETCH: `${resourceKey}/FETCH`,\n CREATE: `${resourceKey}/CREATE`,\n UPDATE: `${resourceKey}/UPDATE`,\n DELETE: `${resourceKey}/DELETE`\n };\n\n function resourceReducer(state = defaultState, action): ResourceStore {\n if (getActionSymbol(action) !== resourceSymbol) {\n return state;\n }\n\n switch (action.type) {\n case PENDING(ACTION_TYPES.FETCH):\n case PENDING(ACTION_TYPES.FETCH_LIST): {\n return { ...state, loading: true, error: null };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_LIST): {\n const data = getActionData(action);\n const map = itemsToMap(data.items);\n const projection = itemsToProjection(data.items);\n const listOptions = action.meta.listOptions;\n\n return {\n ...state,\n map: {\n ...state.map,\n ...map\n },\n projection,\n total: data.totalRows,\n listOptions,\n error: null,\n loading: false\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH): {\n const data = getActionData(action);\n const map = itemsToMap([data]);\n return {\n ...state,\n map: {\n ...state.map,\n ...map\n },\n error: null,\n loading: false\n };\n }\n\n case REJECTED(ACTION_TYPES.FETCH):\n case REJECTED(ACTION_TYPES.FETCH_LIST): {\n return { ...defaultState, error: true }; // TODO: extract error from rejected payload.\n }\n\n default: {\n return state;\n }\n }\n }\n\n /**\n * Query a list of resources with the specified options.\n * @param {PageQuery} listOptions - query options.\n */\n function fetchList(listOptions: ListOptions = new ListOptions()) {\n const { page, rows, sort: sortOptions, query } = listOptions;\n\n const sort = get(sortOptions, \"0.0\");\n const sortOrder = startCase(get(sortOptions, \"0.1\"));\n\n return {\n type: ACTION_TYPES.FETCH_LIST,\n meta: { resourceSymbol, listOptions },\n payload: axios\n .get(resourceUrl, {\n params: {\n ...query,\n page,\n sort,\n sortOrder,\n rows\n }\n })\n .then(response => {\n const items = get(response, \"data.items\", null);\n if (items) set(response, \"data.items\", remapItems(items));\n return response;\n })\n };\n }\n\n /**\n * Fetch a single resource\n * @param {string} id - resource id.\n */\n function fetch(id: string) {\n return {\n type: ACTION_TYPES.FETCH,\n meta: { resourceSymbol },\n payload: axios.get(`${resourceUrl}/${id}`).then(response => {\n const item = get(response, \"data\", null);\n if (item) set(response, \"data\", remapItem(item));\n return response;\n })\n };\n }\n\n /**\n * Create a resource with the specified parameters.\n * @param {[key: string]: any} params - key value pairs to initialize the resource.\n */\n function create(params: { [key: string]: any }) {\n return {\n type: ACTION_TYPES.CREATE,\n meta: { resourceSymbol },\n payload: axios.post(resourceUrl, params)\n };\n }\n\n /**\n * Update the resource specified by the provided params.\n *\n * **NOTE** - the params must contain the id of the resource to update.\n *\n * @param {[key: string]: any} params - key value pairs to initialize the resource.\n */\n function update(params: { [key: string]: any }) {\n return {\n type: ACTION_TYPES.CREATE,\n meta: { resourceSymbol },\n payload: axios.post(resourceUrl, params)\n };\n }\n\n /**\n * Delete the resource with the specified id.\n * @param {number} id\n */\n function remove(id: number) {\n return {\n type: ACTION_TYPES.DELETE,\n meta: { resourceSymbol },\n payload: axios.delete(`${resourceUrl}/${id}`)\n };\n }\n\n return {\n fetchList,\n fetch,\n create,\n update,\n remove,\n reducer: resourceReducer\n };\n}\n","export const PENDING = actionType => `${actionType}_PENDING`\nexport const FULFILLED = actionType => `${actionType}_FULFILLED`\nexport const REJECTED = actionType => `${actionType}_REJECTED`\n","import axios from \"axios\";\nimport { IAuthenticationResult } from \"./../models/authenticationResult.model\";\nimport { PENDING, FULFILLED, REJECTED } from \"./action-type.util\";\n\nexport const ACTION_TYPES = {\n LOGIN: \"auth/LOGIN\",\n REFRESH: \"auth/REFRESH\",\n LOGOUT: \"auth/LOGOUT\",\n HIDE_LOGGEDIN_TOAST: \"auth/HIDE_LOGGEDIN_TOAST\",\n FETCH_BROKER_PROFILE: \"brokerauth/FETCH_PROFILE\"\n};\n\nconst initialState = {\n sessionInitialized: false,\n isAuthenticated: false,\n currentBroker: undefined,\n isLoggedIn: false\n};\n\nexport type AuthState = Readonly;\n\n/**\n * Authentication Reducer\n */\nexport default (state: AuthState = initialState, action): AuthState => {\n switch (action.type) {\n \n case FULFILLED(ACTION_TYPES.FETCH_BROKER_PROFILE): {\n const broker = action.payload.data;\n return {\n ...state,\n isLoggedIn: true,\n currentBroker: broker\n };\n }\n\n case REJECTED(ACTION_TYPES.FETCH_BROKER_PROFILE): {\n return {\n ...state,\n isAuthenticated: false\n };\n }\n\n // no - network statuses\n case ACTION_TYPES.HIDE_LOGGEDIN_TOAST: {\n return {\n ...state,\n isLoggedIn: false\n };\n }\n\n default:\n return state;\n }\n};\n\nexport const hideLoggedInToast = () => {\n return {\n type: ACTION_TYPES.HIDE_LOGGEDIN_TOAST\n };\n};\n\n/**\n * Fetch broker profile information.\n */\nexport const fetchBrokerProfile = (id: string) => ({\n type: ACTION_TYPES.FETCH_BROKER_PROFILE,\n payload: axios.get(\"brokerspublic/\" + id)\n});\n\n/*\n * Perform ValidateEmail Network Request.\n */\nconst validateEmailRequest = (username) => {\n return axios.post(\"validateEmail\", { username })\n .then((data) =>\n {\n var brokerID = getBrokerId(data);\n var result: IAuthenticationResult = {\n brokerId: brokerID,\n failed: false,\n error: undefined\n };\n\n return result;\n })\n .catch((error) => {\n var result: IAuthenticationResult = {\n brokerId: undefined,\n failed: true,\n error: error.response.data\n };\n\n return result;\n });\n}\n\n/**\n * Initialize a brker session with an email\n * @param {string} username - email of specified broker.\n */\nexport const validateEmail = (username) => async dispatch => {\n return await validateEmailRequest(username);\n};\n\nexport const logout = () => dispatch => {\n clearSessionTokens();\n dispatch({ type: ACTION_TYPES.LOGOUT });\n};\n\nconst getBrokerId = (response: { data?: { id: string; } }) => {\n //localStorage.setItem(K.BROKERID, response.data.externalID); // may be not needed, will remove later\n return response.data.id;\n};\n\n/**\n * Clear active users storage.\n */\nconst clearSessionTokens = () => {\n localStorage.clear();\n};\n","import { IProposalRecord } from \"../models/proposal.model\";\nimport ResourceFactory from \"./resource\";\n\nconst resourceKey = \"proposals\";\nconst resourceUrl = \"proposals\";\nconst resourceIdKey = \"proposalID\";\n\nconst { reducer, fetchList, create, fetch } = ResourceFactory(\n resourceKey,\n resourceUrl,\n resourceIdKey\n);\n\nexport type ProposalResourcesState = ReturnType;\nexport const fetchProposalsList = fetchList;\nexport const createProposal = create;\nexport const fetchProposal = fetch;\nexport default reducer;\n","import axios from \"axios\";\n\nimport { PENDING, FULFILLED, REJECTED } from \"./action-type.util\";\n\nexport const ACTION_TYPES = {\n FETCH_OPTIONS: \"productBuilder/FETCH_OPTIONS\",\n CREATE_PRODUCT: \"productBuilder/CREATE_PRODUCT\"\n};\n\nconst initialState = {\n loading: false,\n productTypeList: [],\n carrierTypeList: [],\n occupationClassTypeList: [],\n designTypeList: [],\n renewabilityTypeList: [],\n bpTypeList: [],\n epTypeList: [],\n ownOccTypeList: [],\n residualTypeList: [],\n minimumResidualBenefitPayableTypeList: [],\n futureInsurabilityOptionsTypeList: [],\n airTypeList: [],\n colaTypeList: [],\n mentalNervousLimitationTypeList: [],\n catastrophicBenefitRiderTypeList: [],\n uniqueProvisionsTypeList: []\n};\n\nexport type ProductBuilderState = Readonly;\n\n/*\n * Product Builder Reducer\n */\nexport default (state: ProductBuilderState = initialState, action): ProductBuilderState => {\n switch (action.type) {\n // Pending Actions\n case PENDING(ACTION_TYPES.FETCH_OPTIONS):\n case PENDING(ACTION_TYPES.CREATE_PRODUCT): {\n return {\n ...state,\n loading: true\n };\n }\n\n // Fulfilled Actions\n case FULFILLED(ACTION_TYPES.FETCH_OPTIONS): {\n const dropdownOptions = action.payload.data;\n\n return {\n ...state,\n ...dropdownOptions\n };\n }\n\n case FULFILLED(ACTION_TYPES.CREATE_PRODUCT): {\n return {\n ...state,\n loading: false\n };\n }\n\n // Rejected Actions\n case REJECTED(ACTION_TYPES.FETCH_OPTIONS): {\n return {\n ...state,\n loading: false\n };\n }\n\n case REJECTED(ACTION_TYPES.CREATE_PRODUCT): {\n return {\n ...state,\n loading: false\n };\n }\n\n default: {\n return state;\n }\n }\n};\n\n/**\n * Populate the Product Builder drop downs with options.\n */\nexport const fetchProductBuilderOptions = () => ({\n type: ACTION_TYPES.FETCH_OPTIONS,\n payload: axios.get(\"products/builder\")\n});\n\n/**\n * Create a new product with the specified product options.\n */\nexport const createProduct = payload => ({\n type: ACTION_TYPES.CREATE_PRODUCT,\n payload: axios.post(\"products\", payload)\n});\n","import * as S from \"../../constants/StringConstants\";\n\nexport interface IBroker {\n brokerID: 0;\n brokerName: string;\n preferredName: string;\n primaryPhone: string;\n primaryEmail: string;\n companyName: string;\n affiliateName: string;\n externalID: number;\n isSMSTextEnabled: boolean;\n brokerProduction: [\n {\n carrierType: string;\n premiumTotal: number;\n }\n ];\n}\n\nexport const defaultBroker: Readonly = {\n brokerID: null,\n brokerName: \"\",\n preferredName: \"\",\n primaryPhone: \"\",\n primaryEmail: \"\",\n companyName: \"\",\n affiliateName: \"\",\n externalID: null,\n isSMSTextEnabled: false,\n brokerProduction: [\n {\n carrierType: undefined,\n premiumTotal: undefined\n }\n ]\n};\n","export interface IClient {\n firstName: string;\n lastName: string;\n email: string,\n conditions: ICondition[];\n}\n\nexport interface ICondition {\n conditionName: string;\n medications: IMedication[];\n}\n\nexport interface IMedication {\n name: string;\n dose: string;\n frequencyTypeID: number;\n}\n\nexport const defaultMedication: Readonly = {\n name: undefined,\n dose: undefined,\n frequencyTypeID: 1\n};\n\nexport const defaultCondition: Readonly = {\n conditionName: undefined,\n medications: [defaultMedication]\n};\n\nexport const defaultClient: Readonly = {\n firstName: undefined,\n lastName: undefined,\n email: undefined,\n conditions: [defaultCondition]\n};\n","/*\n * Main\n */\nexport const MAIN_TITLE = \"DIS\";\nexport const MAIN_PROPOSAL_DETAILS = (proposalID: any) => `DIS | Proposal - ${proposalID}`\n\n/*\n * Quote Engine\n */\nexport const QUOTE_ENGINE = \"Welcome to the Tru Specialty Engine\";\nexport const QUOTE_ENGINE_REGISTER_LABEL = \"Register\";\nexport const QUOTE_ENGINE_LOGIN_LABEL = \"Login\";\nexport const QUOTE_ENGINE_FAILED_MESSAGE = \"Quote Engine Generic Error\";\nexport const AFFILIATE = \"Affiliate\";\nexport const QUOTE_SENT_SUCCESS_MESSAGE = \"Thank you! We’ve received your request and will contact you within 48 hours with income protection options.\";\nexport const NEW_QUOTE_CREATION = \"Create new Quote\";\nexport const NEW_QUOTE_CREATION_LABEL = \"This email already exists in the database, click button \";\n\n/*\n * Login\n */\nexport const LOGIN_SIGN_IN = \"Next\";\nexport const FORGOT_PSWD = \"Submit\";\nexport const EMAIL_LABEL = \"Email\";\nexport const LOGIN_PASSWORD = \"Password\";\nexport const LOGIN_INVALID_PASSWORD = \"Invalid Password\";\nexport const LOGIN_FAILED_MESSAGE = \"The email is invalid please email and call DIS for assistance. (Email: it@diservices.com Phone: 800-898-9641)\";\nexport const ACCESS_FAILED_MESSAGE = \"Failed to fetch account data.\";\nexport const LOGIN_PASSWORD_REQUIRED = \"Please enter a password.\";\nexport const LOGIN_EMAIL_REQUIRED = \"Please enter an email.\";\n\n/*\n * Forgot Password\n */\nexport const FORGOT_PASSWORD = \"Forgot your password?\";\nexport const FORGOT_PASSWORD_LABEL = \"FORGOT PASSWORD\";\nexport const FORGOT_PASSWORD_DESCRIPTION =\n \"Please input your email below and the administrator will reset your password\";\nexport const FORGOT_PASSWORD_RESET_BUTTON = \"Send\";\nexport const FORGOT_PASSWORD_ADMIN_NOTIFIED = \"ADMINISTRATOR SUCCESSFULLY NOTIFIED\";\n\n/*\n * Client Builder\n */\nexport const WELCOME_BACK_LABEL = \"Welcome Back, \";\n\n/*\n * Product Builder\n */\nexport const PB_PRODUCT_TYPE = \"Product\";\nexport const PB_CARRIER_TYPE = \"Carrier\";\nexport const PB_OCCUPATION_CLASS_TYPE = \"Occupation Class\";\nexport const PB_DESIGN_TYPE = \"Design\";\nexport const PB_RENEWABILITY_TYPE = \"Renewability\";\nexport const PB_BP_TYPE = \"Benefit Period\";\nexport const PB_EP_TYPE = \"Elimination Period\";\nexport const PB_OWN_OCC_TYPE = \"Own OCC\";\nexport const PB_RESIDUAL_TYPE = \"Residual\";\nexport const PB_AIR_TYPE = \"AIR\";\nexport const PB_COLA_TYPE = \"COLA\";\nexport const PB_CATASTROPHIC_BENEFIT_TYPE = \"Catastrophic Benefit Rider\";\nexport const PB_FUTURE_INSURABILITY_OPTIONS_TYPE = \"Future Insurability Options\";\nexport const PB_UNIQUE_PROVISIONS_TYPE = \"Unique Provisions\";\nexport const PB_MINIMUM_RESIDUAL_BENEFIT_TYPE = \"Minimum Residual Benefit Payable\";\nexport const PB_MENTAL_NERVOUS_LIMITATION_TYPE = \"Mental Nervous Limitation\";\nexport const PB_SUBMIT_BUTTON = \"Submit\";\nexport const PB_PRODUCT_CREATED_MESSAGE = \"Success!\";\nexport const PB_DEFAULT_PRODUCT_TYPE = \"Select a Product\";\nexport const PB_SUBMIT_SUCCESS_TOAST = \"Successfully submitted!\";\nexport const PB_SAVE_SUCCESS_TOAST = \"Your changes have been saved.\";\nexport const PB_PROPOSAL_SUBMITTED = \"Proposal Submitted, please wait.\";\nexport const PB_INTRUCTIONS1 = \"Tell Us About the Person to Be Insured\";\nexport const PB_INTRUCTIONS2 = \"Select Coverage\";\nexport const PB_INTRUCTIONS3 = \"Receive Your Quote\";\n/*\n * Loading\n */\nexport const LOADING = \"Loading...\";\n\n/*\n * Components\n */\nexport const DD_NO_RESULTS = \"No Results Found\";\n\n/*\n * Errors\n */\nexport const ERROR_NETWORK_GENERAL = \"Network error. Please try again later.\";\nexport const ERROR_USER_ROLE_UNAUTHORIZED = \"You are not authorized to access this page.\";\n\n/**\n * Form Errors\n */\nexport const FORM_FIELD_REQUIRED = \"This field is required\";\nexport const FORM_FIELD_INVALID = \"Invalid\";\nexport const FORM_DOCUMENT_REQUIRED = \"Document required\";\n\n/*\n * Proposals Table\n */\nexport const PRO_COL_TIME = \"Time\";\nexport const PRO_COL_PROPOSAL = \"Proposal\";\nexport const PRO_COL_REV = \"Rev\";\nexport const PRO_COL_BRANCH = \"Branch\";\nexport const PRO_COL_RBM = \"RBM\";\nexport const PRO_COL_AFFILIATE = \"Affiliate\";\nexport const PRO_COL_MEMBER = \"Member Company\";\nexport const PRO_COL_BROKER = \"Broker\";\nexport const PRO_COL_CLIENT = \"Client\";\nexport const PRO_COL_PROPOSAL_SPECIALIST = \"Proposal Specialist\";\nexport const PRO_COL_STATUS = \"Status\";\nexport const PRO_COL_MULTI_LIFE = \"Multi-Life\";\nexport const PRO_ALL = \"All\";\n\n/**\n * Brokers Table\n */\nexport const BRO_COL_NAME = \"Broker Name\";\nexport const BRO_COL_PRIMARY_PHONE = \"Primary Phone\";\nexport const BRO_COL_PRIMARY_EMAIL = \"Primary Email\";\nexport const BRO_COL_COMPANY = \"Company\";\nexport const BRO_COL_AFFILIATE = \"Affiliate\";\nexport const BRO_PAGE_TITLE = \"Brokers\";\n\n/**\n * Broker Builder\n */\n\nexport const BRO_NEW_TITLE = \"Broker Detail\";\nexport const BRO_SUBMIT_BUTTON = \"Next\";\n\nexport const BRO_EMAIL_TYPE_PRIMARY = \"Primary\";\nexport const BRO_EMAIL_TYPE_ALT = \"Alternate\";\nexport const BRO_EMAIL_TYPE_CC = \"CC\";\nexport const BRO_EMAIL_TYPE_REQUESTER = \"Requester\";\n\nexport const BRO_PHONE_TYPE_OFFICE = \"Office\";\nexport const BRO_PHONE_TYPE_CELL = \"Cell\";\nexport const BRO_PHONE_TYPE_FAX = \"Fax\";\nexport const BRO_PRIMARY_LABEL = \"PRIMARY #\";\n\nexport const BRO_INFO_TITLE = \"BROKER INFORMATION\";\nexport const BRO_PHONE_TITLE = \"PHONE\";\nexport const BRO_EMAIL_TITLE = \"EMAIL\";\nexport const BRO_ADDRESS_TITLE = \"ADDRESS\";\nexport const BRO_NOTES_TITLE = \"BROKER NOTES\";\n\nexport const BRO_FIRST_NAME_LABEL = \"First Name\";\nexport const BRO_LAST_NAME_LABEL = \"Last Name\";\nexport const BRO_PREF_NAME_LABEL = \"Preferred Name\";\nexport const BRO_AFFILIATE_LABEL = \"Affiliate\";\nexport const BRO_COMPANY_LABEL = \"Company\";\nexport const BRO_BROKER_ID_LABEL = \"Broker ID\";\nexport const BRO_EXTERNAL_ID_LABEL = \" External ID\";\nexport const BRO_BRANCH_LABEL = \"Branch\";\nexport const BRO_RBM_LABEL = \"RBM\";\nexport const BRO_BUSINESS_OWNER_LABEL = \"Business Owner\";\nexport const BRO_STREET_ADDRESS_LABEL = \"Street Address\";\nexport const BRO_CITY_LABEL = \"City\";\nexport const BRO_STATE_LABEL = \"State\";\nexport const BRO_ZIP_LABEL = \"Zip\";\nexport const BRO_NOTES_LABEL = \"Provide additional instructions we should know about\";\n\n/*\n * Proposal Status\n */\nexport const PRO_STATUS_QA = \"QA\";\nexport const PRO_STATUS_SINGLE_CLASS = \"Single Class\";\nexport const PRO_STATUS_ASSIGNED = \"Assigned\";\nexport const PRO_STATUS_APP_SUBMITTED = \"App Submitted\";\nexport const PRO_STATUS_PENDING = \"Pending\";\nexport const PRO_STATUS_IN_FORCE = \"In Force\";\nexport const PRO_STATUS_VOID = \"Void\";\n\n/*\n * Side Navigation\n */\nexport const NEW_AFFILIATE = \"Affiliate\";\nexport const NEW_COMPANY = \"Company\";\nexport const NEW_PROPOSAL = \"Proposal\";\nexport const NEW_BROKER = \"Broker\";\nexport const NAV_SOMETHING = \"Something for broker only\";\nexport const NAV_USERS = \"Users\";\nexport const NAV_PRODUCT_BUILDER = \"Product Builder\";\nexport const PAGINATION_ROWS_PER_PAGE = \"Rows per page\";\nexport const PAGINATION_PAGE_STATUS = (rowStart: number, rowEnd: number, rowTotal: number) =>\n `${rowStart}-${rowEnd} of ${rowTotal}`;\nexport const NAV_LOGOUT = \"Logout\";\n/**\n * Product Builder\n */\nexport const PB_STATUS_LABEL = \"Status\";\n\n/**\n * Proposal Details Overview\n */\nexport const PDO_SPECIALIST_TITLE = \"SPECIALIST\";\nexport const PDO_BROKER_TITLE = \"BROKER\";\nexport const PDO_PRODUCT_TITLE = \"PRODUCT\";\nexport const PDO_CLIENT_TITLE = \"CLIENT\";\nexport const PDO_PROPOSAL_SOURCE_TITLE = \"PROPOSAL SOURCE\";\n\nexport const PDO_SPECIALIST_NAME_LABEL = \"Proposal Specialist Name\";\nexport const PDO_BROKER_NAME_LABEL = \"Broker Name\";\nexport const PDO_PREFERRED_BROKER_NAME_LABEL = \"Preferred Broker Name\";\nexport const PDO_BROKER_PRIMARY_PHONE_LABEL = \"Primary Phone\";\nexport const PDO_BROKER_COMPANY_LABEL = \"Company\";\nexport const PDO_BROKER_AFFILIATE_LABEL = \"Affiliate\";\nexport const PDO_BROKER_ID_LABEL = \"Broker ID\";\nexport const PDO_BROKER_EXTERNAL_ID_LABEL = \"External ID\";\nexport const PDO_BROKER_DETAILS_BUTTON = \"View Broker Details\";\nexport const PDO_PRODUCT_TYPE_LABEL = \"Product Type\";\nexport const PDO_CLIENT_FIRST_NAME_LABEL = \"First Name\";\nexport const PDO_CLIENT_LAST_NAME_LABEL = \"Last Name\";\nexport const PDO_ORIGINATION_LABEL = \"Origination\";\nexport const PDO_HOW_DID_LABEL = \"How Did You Hear About Us?\";\nexport const PDO_MARKETING_CAMPAIGN_LABEL = \"Campaign\";\nexport const PDO_QUOTE_ENGINE = \"Quote Engine\";\n\n/**\n * Proposal Details Client\n */\nexport const PDC_CLIENT_INFORMATION_TITLE = \"YOUR INFORMATION\";\nexport const PDC_BROKER_QUOTE_TITLE = \"Get Your TruSpecialty Quote\";\nexport const PDC_CLIENT_FIRST_NAME_LABEL = \"First Name\";\nexport const PDC_CLIENT_LAST_NAME_LABEL = \"Last Name\";\nexport const PDC_CLIENT_EMAIL_NAME_LABEL = \"Client Email\";\nexport const PDC_CLIENT_PHONE = \"Client Phone\";\nexport const PDC_CLIENT_EMAIL_NAME_NOTE = \"**Please note: Client Email isn’t retained\";\nexport const PDC_CLIENT_PHONE_NAME_NOTE = \"**Please note: Client Phone number not retained\";\nexport const PDC_CLIENT_OCCUPATION_NOTE = \"**If the desired occupation is not present, please search for 'all other' and add occupation in the 'Other' field\";\n\nexport const PDC_PREFIX_LABEL = \"Prefix\";\nexport const PDC_CREDENTIALS_LABEL = \"Credentials\";\nexport const PDC_STATE_LABEL = \"State\";\nexport const PDC_DOB_LABEL = \"Date of Birth\";\nexport const PDC_YEARS_LABEL = \"Years\";\nexport const PDC_MONTHS_LABEL = \"Months\";\nexport const PDC_DAYS_LABEL = \"Days\";\nexport const PDC_GENDER_LABEL = \"Gender\";\nexport const PDC_HEIGHT_LABEL = \"Height\";\nexport const PDC_WEIGHT_LABEL = \"Weight\";\n\nexport const PDC_NCLIENT_PHONE = \"Phone Number\";\nexport const PDC_NCLIENT_EMAIL = \"Email\";\n\nexport const PDC_OCCUPATION_TITLE = \"OCCUPATION\";\nexport const PDC_OCCUPATION_OTHER_NAME_LABEL = \"Other\";\nexport const PDC_OCCUPATION_NAME_LABEL = \"Occupation Name\";\nexport const PDC_OCCUPATION_STATUS_LABEL = \"Residency Status\";\nexport const PDC_DUTIES_LABEL = \"Duties\";\nexport const PDC_ANNUAL_INCOME_LABEL = \"Annual Income\";\nexport const PDC_BONES_LABEL = \"Bonus\";\nexport const PDC_PASSIVE_INCOME_LABEL = \"Passive Income\";\nexport const PDC_GOVERNMENT_LABEL = \"Government\";\nexport const PDC_GOVERNMENT_YEARS_LABEL = \"Government Years\";\nexport const PDC_BUSINESS_OWNER_LABEL = \"Business Owner\";\nexport const PDC_WORK_FROM_HOME_LABEL = \"Work from Home\";\nexport const PDC_YEARS_IN_BUSINESS_LABEL = \"Years in Business\";\nexport const PDC_EMPLOYEES_LABEL = \"Employees\";\nexport const PDC_GOVERNMENT_TYPE_LABEL = \"Type\";\nexport const PDC_PERCENTAGE_FROM_HOME = \"% Work from Home\";\n\nexport const PDC_TOBACCO_USAGE_TITLE = \"TOBACCO USAGE\";\nexport const PDC_TOBACCO_TYPE_LABEL = \"Type\";\nexport const PDC_TOBACCO_FREQUENCY_LABEL = \"Frequency\";\nexport const PDC_TOBACCO_LAST_USE_LABEL = \"Last Use\";\nexport const PDC_MEDICAL_NOTES_TITLE = \"MEDICAL NOTES\";\nexport const PDC_NAME_OF_CONDITION_LABEL = \"Name of Condition\";\nexport const PDC_DATE_OF_DIAGNOSIS_LABEL = \"Date of Diagnosis\";\nexport const PDC_TYPE_OF_TREATMENT_LABEL = \"Type of Treatment\";\nexport const PDC_MEDICATIONS_TAKEN_LABEL = \"Medications Taken\";\nexport const PDC_MEDICATION_NAME_LABEL = \"Medication Name\";\nexport const PDC_DOSE_LABEL = \"Dose\";\nexport const PDC_FREQUENCY_LABEL = \"Frequency\";\nexport const PDC_ADD_MEDICATION_BUTTON = \"ADD ANOTHER MEDICATION\";\nexport const PDC_ADDITIONAL_NOTES_LABEL = \"Additional Notes\";\nexport const PDC_ADD_CONDITION_LABEL = \"Add Another Condition\";\nexport const PDC_SPOUSE_DETAILS_TITLE = \"SPOUSE DETAILS\";\nexport const PDC_SPOUSE_DETAILS_LABEL = \"Spouse Details\";\nexport const PDC_MULTI_LIFE_TITLE = \"MULTI-LIFE\";\nexport const PDC_DELETE = \"Delete\";\nexport const PDC_EXISTING_COVERAGE = \"EXISTING COVERAGE\";\nexport const PDC_RESIDENCY = \"RESIDENCY\";\nexport const PDC_INDIVIDUAL_LABEL = \"Individual Monthly Benefit\";\nexport const PDC_REPLACE_EXISTING_LABEL = \"Replace Existing\";\nexport const PDC_GROUP_PERCENT_LABEL = \"Group %\";\nexport const PDC_GROUP_CAP_LABEL = \"Group Cap\";\nexport const PDC_PAID_BY_LABEL = \"Paid By\";\n\nexport const PDC_RESIDENT_PROGRAM = \"Resident Program\";\nexport const PDC_END_DATE = \"End Date\";\nexport const PDC_CURRENT_ANNUAL_INCOME = \"Current Annual Income\";\nexport const PDC_STARTING_FELLOWSHIP = \"Starting Fellowship\";\nexport const PDC_FELLOWSHIP_PROGRAM = \"Fellowship Program\";\nexport const PDC_SIGNED_EMPLOYMENT_CONTRACT = \"Signed Employment Contract Date\";\n\n\nexport const PDC_YES = \"Yes\";\nexport const PDC_NO = \"No\";\n\n/**\n * Proposal Builder Steps\n */\nexport const PDS_CLIENT = \"Client\";\nexport const PDS_CASE_DESIGN = \"Product Options\";\n\n/**\n * Proposal Container\n */\nexport const PC_NEW_TITLE = \"New Proposal\";\nexport const PC_EXISTING_TITLE = \"Existing Proposal\";\nexport const PC_DETAILS_TAB = \"Details\";\nexport const PC_DOCUMENTATION_TAB = \"Documentation\";\nexport const PC_PROPOSAL_BUTTON = \"Proposal\";\nexport const PC_ANALYZER_BUTTON = \"Analyzer\";\nexport const PC_SAVE_BUTTON = \"Create\";\nexport const PC_NEXT_BUTTON = \"Next\";\nexport const PC_PREV_BUTTON = \"Previous\";\nexport const PC_SUBMIT_BUTTON = \"Submit\";\nexport const PC_REVISIONS = \"Revisions\";\nexport const PC_PROPOSAL_NOTES = \"Proposal Notes\";\nexport const PC_BROKER_NOTES = \"Broker Notes\";\nexport const PC_NOTE_DEFAULT_TITLE = \"None Yet\";\nexport const PC_NOTE_DEFAULT_DESC = \"Data will appear here when available.\";\nexport const PC_REVISION_DEFAULT_TITLE = \"No Revisions\";\nexport const PC_REVISION_DEFAULT_DESC = \"Proposal Revisions will appear here.\";\nexport const PC_NEW_NOTE = \"New Note\";\nexport const PC_DISCLAIMER = \"Disclaimer\";\nexport const PC_SAVE_DISCLAIMER_BUTTON = \"Save\";\n\n/**\n * Affiliates Table\n */\n\nexport const AFF_COL_NAME = \"Affiliate Name\";\nexport const AFF_COL_ADDRESS = \"Address\";\nexport const AFF_COL_BRANCH = \"Branch\";\nexport const AFF_COL_PHONE = \"Phone\";\nexport const AFF_COL_PRIMARY_CONTACT = \"Primary Contact\";\nexport const AFF_COL_AFFILIATE_ID = \"Affiliate ID\";\nexport const AFF_COL_EXTERNAL_ID = \"External ID\";\nexport const AFF_PAGE_TITLE = \"Affiliates\";\n\n/**\n * Affiliates Form\n */\n\nexport const AFF_NAME_LABEL = \"Affiliate Name\";\nexport const AFF_BRANCH_TYPE_LABEL = \"Branch Type\";\nexport const AFF_PHONE_LABEL = \"Phone\";\nexport const AFF_EMAIL_LABEL = \"Email\";\nexport const AFF_AFFILIATE_ID_LABEL = \"Affiliate ID\";\nexport const AFF_EXTERNAL_ID_LABEL = \"External ID\";\nexport const AFF_STREET_ADDRESS_LABEL = \"Street Address\";\nexport const AFF_CITY_LABEL = \"City\";\nexport const AFF_STATE_LABEL = \"State\";\nexport const AFF_ZIP_LABEL = \"Zip\";\nexport const AFF_CONTACT_ID_LABEL = \"Contact ID\";\nexport const AFF_FIRST_NAME_LABEL = \"First Name\";\nexport const AFF_LAST_NAME_LABEL = \"Last Name\";\nexport const AFF_IS_PRIMARY_LABEL = \"Primary Contact\";\nexport const AFF_ERROR_ONLY_1_PRIMARY = \"Only one contact may be primary\";\nexport const AFF_CONTACT_HEADER = \"Contacts\";\nexport const AFF_SUBMIT_BUTTON = \"Save\";\nexport const AFF_ADD_ALT_CONTACT = \"Add Alternate Contact\";\nexport const AFF_DETAIL_PAGE_TITLE = \"Affiliate Detail\";\nexport const AFF_DETAIL_CARD_TITLE = \"Affiliate Information\";\nexport const AFF_DETAIL_CARD_TITLE_PRI = \"Primary Contact\";\nexport const AFF_DETAIL_CARD_TITLE_AFF = \"Alternate Contact\";\nexport const AFF_DETAIL_CARD_TITLE4 = \"address\";\nexport const AFF_DETAIL_CARD_TITLE5 = \"Companies\";\nexport const AFF_COM_COL_COMPANY_NAME = \"Company Name\";\nexport const AFF_COM_COL_BRANCH = \"Branch\";\nexport const AFF_COM_COL_EMAIL = \"Email\";\nexport const AFF_COM_COL_PHONE = \"Phone\";\nexport const AFF_NOTES_LABEL = \"Saved Notes\";\nexport const AFF_NOTES_TITLE = \"AFFILIATE NOTES\";\n\n/**\n * Companies Table\n */\n\nexport const CO_COL_NAME = \"Company Name\";\nexport const CO_COL_ADDRESS = \"Address\";\nexport const CO_COL_BRANCH = \"Branch\";\nexport const CO_COL_RBM = \"RBM\";\nexport const CO_COL_PHONE = \"Phone\";\nexport const CO_COL_EMAIL = \"Email\";\nexport const CO_COL_PRIMARY_CONTACT = \"Primary Contact\";\nexport const CO_COL_COMPANY_ID = \"Company ID\";\nexport const CO_COL_EXTERNAL_ID = \"External ID\";\nexport const CO_PAGE_TITLE = \"Companies\";\n\n/**\n * Company Form\n */\n\nexport const CO_NAME_LABEL = \"Company Name\";\nexport const CO_AFFILIATE_LABEL = \"Affiliate\";\nexport const CO_FIRST_NAME_LABEL = \"First Name\";\nexport const CO_LAST_NAME_LABEL = \"Last Name\";\nexport const CO_COMPANY_ID_LABEL = \"Company ID\";\nexport const CO_EXTERNAL_ID_LABEL = \"External ID\";\nexport const CO_BRANCH_LABEL = \"Branch\";\nexport const CO_RBM_LABEL = \"RBM\";\nexport const CO_PHONE_LABEL = \"Phone\";\nexport const CO_EMAIL_LABEL = \"Email\";\nexport const CO_STREET_ADDRESS_LABEL = \"Street Address\";\nexport const CO_CITY_LABEL = \"City\";\nexport const CO_STATE_LABEL = \"State\";\nexport const CO_ZIP_LABEL = \"Zip\";\nexport const CO_SUBMIT_BUTTON = \"Save\";\nexport const CO_DETAIL_PAGE_TITLE = \"Company Detail\";\nexport const CO_SECOND_TITLE = \"Company Information\";\nexport const CO_THIRD_TITLE = \"Primary Contact\";\nexport const CO_FOURTH_TITLE = \"Address\";\nexport const CO_ADD_AFFILIATE_BUTTON = \"Add Affiliate\";\nexport const CO_AFFILIATE_DETAILS_BUTTON = \"Affiliate Details\";\nexport const CO_NO_AFF_RESULTS = \"No Results Found\";\n\n/**\n *\n * Products\n */\n\nexport const PROD_COL_PRODUCT_TYPE = \"Product\";\nexport const PROD_COL_CARRIER_TYPE = \"Carrier\";\nexport const PROD_COL_OCC_CLASS_TYPE = \"OCC Class\";\nexport const PROD_COL_DESIGN_TYPE = \"Design\";\nexport const PROD_COL_RENEWABILITY_TYPE = \"Renewability\";\nexport const PROD_COL_BP_TYPE = \"BP\";\nexport const PROD_COL_EP_TYPE = \"EP\";\nexport const PROD_COL_OWN_OCC_TYPE = \"Own OCC\";\nexport const PROD_COL_RESIDUAL_TYPE = \"Residual\";\nexport const PROD_COL_AIR_TYPE = \"AIR\";\nexport const PROD_COL_COLA_TYPE = \"COLA\";\nexport const PROD_COL_PRODUCT_ID = \"ID\";\nexport const PROD_DELETE_BUTTON = \"Delete\";\n\n/**\n * Medical Notes\n */\nexport const MN_CONDITION_NAME_LABEL = \"Name of Condition\";\nexport const MN_DATE_OF_DIAGNOSIS_LABEL = \"Date of Diagnosis\";\nexport const MN_TYPE_OF_TREATMENT_LABEL = \"Type of Treatment\";\nexport const MN_MEDICATIONS_TAKEN_LABEL = \"Medications Taken\";\nexport const MN_MEDICATION_NAME_LABEL = \"Medication Name\";\nexport const MN_DOSE_LABEL = \"Dose\";\nexport const MN_FREQUENCY_LABEL = \"Frequency\";\nexport const MN_ADD_MEDICATION_BUTTON = \"ADD ANOTHER MEDICATION\";\nexport const MN_ADDITIONAL_NOTES_LABEL = \"Additional Notes\";\nexport const MN_ADD_CONDITION_LABEL = \"Add Another Condition\";\n\n/**\n * Modal\n */\nexport const MOD_DIALOG_1 = \"You have made changes to this proposal without saving them.\";\n\n/**\n * Classifications Step\n */\nexport const PBC_CARRIER_LABEL = \"Carrier\";\nexport const PBC_OCC_LABEL = \"Occupation Class\";\nexport const PBC_TITLE = \"DISABILITY INSURANCE PRODUCT CLASSIFICATION DETAILS\";\nexport const PBC_PRODUCT_LABEL = \"Product\";\nexport const PBC_ADD_COLUMN_BUTTON = \"Add Column\";\nexport const PBC_DELETE = \"Delete\";\n\n/**\n * Case Design\n */\nexport const PBCD_PRODUCT_SELECTION_TITLE = \"PRODUCT SELECTION\";\nexport const PBCD_PRODUCT_TYPE_LABEL = \"Product Type\";\nexport const PBCD_BP_LABEL = \"Benefit Period\";\nexport const PBCD_BP_NOTE = \"The maximum duration of time in which benefits can be paid\";\nexport const PBCD_EP_LABEL = \"Elimination Period\";\nexport const PBCD_EP_NOTE = \"The period of days a claimant must wait prior to accruing benefits\";\nexport const PBCD_PAYOR_LABEL = \"Payor\";\nexport const PBCD_PAYOR_NOTE = \"Who is paying the premiums? Employee = tax free benefits, Employer = taxable benefits.\";\nexport const PBCD_BENEFIT_AMOUNT = \"Benefit Amount\";\nexport const PBCD_BENEFIT_NOTE = \"The amount of coverage available based on earned income. Typically, the carriers can protect up to 65% of your clients gross income\";\nexport const PDC_I_AM_NOT_SURE_NOTE = \"Need a little help? Allow our highly trained sales specialist to design this policy for you\";\nexport const PBCD_ADDITIONAL_CLIENT_NOTE = \"Additional client or case design info\";\n\n\n/**\n * Analyzer\n */\nexport const ANL_BASE_BENEFIT_LABEL = \"Base Benefit\";\nexport const ANL_OCC_CLASS_LABEL = \"Occ Class\";\nexport const ANL_SSIB_LABEL = \"SSIB\";\nexport const ANL_TOTAL_BENEFIT_LABEL = \"Total Benefit\";\nexport const ANL_RENEWABILITY_LABEL = \"Renewability\";\nexport const ANL_BP_LABEL = \"Benefit Period\";\nexport const ANL_EP_LABEL = \"Elimination Period\";\nexport const ANL_OWN_OCC_LABEL = \"Own Occ\";\nexport const ANL_RESIDUAL_LABEL = \"Residual\";\nexport const ANL_MINIMUM_RESIDUAL_LABEL = \"Minimum Residual Benefit Payable\";\nexport const ANL_FUTURE_INSURABILITY_LABEL = \"Future Insurability Options\";\nexport const ANL_AIR_LABEL = \"AIR\";\nexport const ANL_COLA_LABEL = \"COLA\";\nexport const ANL_MENTAL_NERVOUS_LABEL = \"Mental Nervous Limitation\";\nexport const ANL_CATASTROPHIC_LABEL = \"Catastrophic\";\nexport const ANL_CATASTROPHIC_AMOUNT_LABEL = \"Amount\";\nexport const ANL_UNIQUE_PROVISION_LABEL = \"Unique Provision\";\nexport const ANL_AP_LABEL = \"Annual Premium\";\nexport const ANL_POTENTIAL_BENEFIT_LABEL = \"Potential Benefit Payout\";\nexport const ANL_MONTHLY_LABEL = \"Monthly Premium\";\nexport const ANL_SAVE_BUTTON = \"Save Page\";\nexport const ANL_COST_PER_100_LABEL = \"Cost per 100 of Benefit \";\n\n/**\n * Documentation\n */\nexport const DOC_DOCUMENTS_TITLE = \"DOCUMENTS ASSOCIATED WITH PROPOSAL\";\nexport const DOC_ADD_DOCUMENT_BUTTON = \"Add Document(s)\";\nexport const DOC_ATTACH_COL = \"Attach\";\nexport const DOC_NAME_COL = \"Name\";\nexport const DOC_TYPE_COL = \"Type\";\nexport const DOC_DOWNLOAD_COL = \"Download\";\nexport const DOC_DELETE_COL = \"Delete\";\nexport const DOC_MODIFIED_BY_COL = \"Modified By\";\nexport const DOC_MODIFIED_DATE_COL = \"Modified\";\nexport const DOC_SEND_DOCUMENTATION_TITLE = \"SEND DOCUMENTATION\";\nexport const DOC_DEFAULT_RECIPIENTS = \"Default Recipients:\";\nexport const DOC_OTHER_EMAIL = \"Other Email:\";\nexport const DOC_SUBJECT = \"Subject:\";\nexport const DOC_BODY_TITLE = \"Email Body:\";\nexport const DOC_SMS_TITLE = \"SMS Body:\";\nexport const DOC_SEND_BUTTON = \"Send\";\nexport const DOC_FILE_UPLOAD_SUCCESS_TOAST = \"File upload success!\";\nexport const DOC_DOWNLOAD_BUTTON = \"Download\";\nexport const DOC_DELETE_BUTTON = \"Delete\";\nexport const DOC_CONF_MODAL_TITLE = \"Documentation Successfully Sent\";\nexport const DOC_CONF_MODAL_REV_NOTE = \"Confirmation will be noted in the Revisions section\";\nexport const DOC_CONF_MODAL_BUTTON = \"Continue\";\nexport const DOC_EMAIL_VALIDATION_FAIL_TOAST =\n \"Please ensure the email contains an attachment and a valid recipient\";\nexport const DOC_DELETE_CONFIRM_TEXT = \"Are you sure you want to delete this document?\";\nexport const DOC_DELETE_YES_BUTTON = \"Yes\";\nexport const DOC_DELETE_NO_BUTTON = \"No\";\n\n/**\n * Upload Document Modal\n */\nexport const UDM_TITLE = \"Upload Document\";\nexport const UDM_CANCEL_BUTTON = \"Cancel\";\nexport const UDM_UPLOAD_BUTTON = \"Upload\";\nexport const UDM_DEFAULT_FILE_TYPE = \"Document Type\";\nexport const UDM_SEND_SMS = \"Send SMS\";\nexport const UDM_DROPZONE = \"Drag 'n' drop or click to select file.\";\nexport const UDM_DELETE_BUTTON = \"Delete\";\n\n/**\n * Form Modal\n */\nexport const FM_DEFAULT_SAVE = \"Save\";\n\n/**\n * Accordion\n */\nexport const AC_EDIT_BUTTON = \"Edit\";\n\n/**\n * Toast\n */\nexport const T_BUTTON = \"CLOSE\";\n\n/*\n * Dropdown Builder Labels\n */\nexport const DD_BUILDER_LABEL_BRANCH = \"Branch\";\nexport const DD_BUILDER_LABEL_COMPANY = \"Company\";\nexport const DD_BUILDER_LABEL_RBM = \"RBM\";\nexport const DD_BUILDER_LABEL_BUSINESS_OWNER = \"Business Owner\";\n\n/*\n *\n */\nexport const REV_ITEM_SENT = (date: any, time: any, zone: any) =>\n `Sent on ${date} at ${time} ${zone}`;\nexport const REV_NEW_VALUE_LABEL = \"New Value:\";\nexport const REV_OLD_VALUE_LABEL = \"Old Value:\";\n","import { IBroker, defaultBroker } from \"./broker.model\";\nimport { IClient, defaultClient } from \"./client.model\";\nimport * as S from \"../../constants/StringConstants\";\n\n/**\n * ProposalRecords represent a single entry in the proposals table.\n */\nexport interface IProposalRecord {\n timeSpan: string;\n proposalID: number;\n revisionNumber: number;\n branch: string;\n rbm: string;\n affiliate: string;\n memberCompany: string;\n brokerName: string;\n clientName: string;\n specialistName: string;\n status: string;\n}\n\nexport const defaultValue: Readonly = {\n timeSpan: \"\",\n proposalID: null,\n revisionNumber: null,\n branch: \"\",\n rbm: \"\",\n affiliate: \"\",\n memberCompany: \"\",\n brokerName: \"\",\n clientName: \"\",\n specialistName: \"\",\n status: \"\"\n};\n\nexport interface IProposal {\n proposalID: number;\n proposalGroupID: number;\n broker: IBroker;\n client: IClient;\n caseDesign: any;\n organization: string;\n specialistID: number;\n productTypeID: number;\n epTypeID: number;\n bpTypeID: number;\n payorTypeID: number;\n tobaccoTypeID: number;\n tobaccoFrequencyTypeID: number;\n isMaxBenefit: boolean;\n statusTypeID: number;\n originationTypeID: number;\n}\n\nexport const defaultProposal: Readonly = {\n proposalID: null,\n proposalGroupID: null,\n broker: defaultBroker,\n client: defaultClient,\n caseDesign: null,\n organization: S.PDO_QUOTE_ENGINE,\n specialistID: undefined,\n productTypeID: undefined,\n epTypeID: undefined,\n bpTypeID: undefined,\n payorTypeID: undefined,\n tobaccoTypeID: 1,\n tobaccoFrequencyTypeID: 1,\n isMaxBenefit: true,\n statusTypeID: 2,\n originationTypeID: 1\n};\n\nexport const overviewDefaults = {\n proposalID: null,\n proposalGroupID: null,\n broker: defaultBroker,\n clients: [defaultClient]\n};\n","/**\n * utils.currency.ts\n * Disability Insurance Services\n *\n * Created by Jeremy Moyers\n */\n\n/**\n * Round the specified number to the hundreds place.\n * @param {number} value - the number value to round.\n */\nexport const roundCurrency = (value: number): number => {\n if (value === undefined) {\n return;\n }\n return parseFloat(value.toFixed(2));\n};\n\nexport const formatUSD = (value: number): string => {\n const formatter = new Intl.NumberFormat(\"en-US\", {\n style: \"currency\",\n currency: \"USD\"\n });\n\n return formatter.format(value);\n};\n","import axios from \"axios\";\nimport { get } from \"lodash\";\nimport { PENDING, FULFILLED, REJECTED } from \"./action-type.util\";\nimport { IOption } from \"../models/option.model\";\nimport { defaultProposal } from \"../models/proposal.model\";\nimport { defaultCondition } from \"../models/client.model\";\nimport { roundCurrency } from \"../../util/utils.currency\";\n\nconst ACTION_TYPES = {\n RESET_BUILDER: \"proposal/RESET_BUILDER\",\n FETCH_OPTIONS: \"proposal/FETCH_OPTIONS\",\n FETCH_BROKER: \"proposal/FETCH_BROKER\",\n FETCH_RIDERS: \"proposal/FETCH_RIDERS\",\n FETCH_STATUS_LIST: \"proposal/FETCH_STATUS_LIST\",\n FETCH_PROPOSAL: \"proposal/FETCH_PROPOSAL\",\n FETCH_PROPOSAL_CLASSIFICATION: \"proposal/FETCH_PROPOSAL_CLASSIFICATION\",\n SAVE_PROPOSAL: \"proposal/SAVE_PROPOSAL\",\n SUBMIT_PROPOSAL: \"proposal/SUBMIT_PROPOSAL\",\n FETCH_AGE: \"proposal/FETCH_AGE\",\n\n HIDE_SUBMIT_TOAST: \"proposal/HIDE_SUBMIT_TOAST\",\n HIDE_SAVE_TOAST: \"proposal/HIDE_SAVE_TOAST\",\n FETCH_OCCUPATION: \"proposal/FETCH_OCCUPATION\",\n CHANGE_STATUS_TYPE: \"proposal/CHANGE_STATUS_TYPE\"\n};\n\nconst overviewOptions = {\n selectOriginList: [],\n selectSpecialistList: [],\n selectBrokerList: [],\n selectProductList: [],\n selectHearAboutUsList: []\n};\n\nconst clientOptions = {\n selectGenderList: [],\n selectPrefixList: [],\n selectTobaccoTypeList: [],\n selectTobaccoFrequencyList: [],\n selectMedicationFrequencyList: [],\n selectCredentialTypeList: [],\n selectGovernmentTypeList: [],\n selectStateList: [],\n selectOccupationStatusList: [],\n selectPaidByTypeList: []\n};\n\nconst classificationOptions = {\n bpTypeFullList: [],\n designTypeFullList: []\n};\n\nconst caseDesignOptions = {\n selectBPList: [],\n selectEPList: [],\n selectPayorList: [],\n selectRiderList: []\n};\n\ntype StatusList = IOption[];\n\ntype CarrierOptions = {\n [productTypeID: number]: IOption[];\n};\n\ntype OccClassOptions = {\n [productTypeID: number]: {\n [carrierValue: number]: IOption[];\n };\n};\n\ntype productOptions = {\n [productTypeID: number]: {\n [carrierValue: number]: {\n [occClassValue: number]: IOption[];\n };\n };\n};\n\ntype CaseDesignRiderOptions = {\n productID: number;\n productName: string;\n riders: Array;\n};\n\nconst initialState = {\n isSubmitting: false,\n isSavingNext: false,\n isClassificationLoaded: false,\n isSavingPrevious: false,\n overviewOptions: overviewOptions,\n clientOptions: clientOptions,\n classificationOptions: classificationOptions,\n caseDesignOptions: caseDesignOptions,\n // Step 2\n caseDesignRiderOptions: {\n productID: null,\n productName: \"\",\n riders: []\n },\n statusList: [],\n age: {\n years: \"\",\n months: \"\",\n days: \"\"\n },\n isSubmitToastVisible: false,\n isSaveToastVisible: false,\n currentProposal: {},\n proposalMap: {}, // going to delete that prop with all possible referencies\n selectedOccupationOption: undefined\n};\n\nexport type ProposalOverviewOptionsState = Readonly;\nexport type ProposalClientOptions = Readonly;\nexport type ProposalClassificationOptions = Readonly;\nexport type ProposalCaseDesignOptions = Readonly;\nexport type ProposalOptionsState = Readonly;\n\n/**\n * ProposalOptions Reducer\n */\nexport default (state: ProposalOptionsState = initialState, action): ProposalOptionsState => {\n switch (action.type) {\n // Pending\n case PENDING(ACTION_TYPES.SUBMIT_PROPOSAL): {\n return {\n ...state,\n isSubmitting: true\n };\n }\n case PENDING(ACTION_TYPES.FETCH_OCCUPATION):\n case PENDING(ACTION_TYPES.FETCH_AGE):\n case PENDING(ACTION_TYPES.FETCH_PROPOSAL):\n case PENDING(ACTION_TYPES.FETCH_STATUS_LIST):\n case PENDING(ACTION_TYPES.FETCH_RIDERS):\n case PENDING(ACTION_TYPES.FETCH_OPTIONS): {\n return {\n ...state\n };\n }\n\n // Fulfilled\n\n case FULFILLED(ACTION_TYPES.RESET_BUILDER): {\n return {\n ...initialState\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_OCCUPATION): {\n const occupationOption = get(action, \"payload.data\");\n return {\n ...state,\n selectedOccupationOption: occupationOption\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_AGE): {\n const age = {\n years: action.payload.data.years,\n months: action.payload.data.months,\n days: action.payload.data.days\n };\n return {\n ...state,\n age\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_RIDERS): {\n const productID = action.payload.data.productID;\n const productName = action.payload.data.productName;\n const riders = action.payload.data.riders;\n return {\n ...state,\n caseDesignRiderOptions: {\n productID,\n productName,\n riders\n }\n };\n }\n\n case ACTION_TYPES.SAVE_PROPOSAL: {\n const currentProposal = action.payload;\n return {\n ...state,\n currentProposal,\n isSaveToastVisible: true,\n isSavingNext: false,\n isSavingPrevious: false\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_PROPOSAL): {\n const newState = newProposal(state, action);\n return {\n ...state,\n ...newState\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_PROPOSAL_CLASSIFICATION): {\n const { classifications, proposalId, ...classificationOptions } = action.payload.data;\n\n classifications.map(c => {\n c.analyzer.baseBenefitAmount = roundCurrency(c.analyzer.baseBenefitAmount);\n c.analyzer.ssib = roundCurrency(c.analyzer.ssib);\n c.analyzer.totalBenefitAmount = roundCurrency(c.analyzer.totalBenefitAmount);\n c.analyzer.annualPremium = roundCurrency(c.analyzer.annualPremium);\n c.analyzer.potentialBenefitPayout = roundCurrency(c.analyzer.potentialBenefitPayout);\n c.analyzer.monthlyPremium = roundCurrency(c.analyzer.monthlyPremium);\n return c;\n });\n\n return {\n ...state,\n isClassificationLoaded: true,\n classificationOptions,\n proposalMap:{\n ...state.proposalMap,\n [proposalId]:{\n ...state.proposalMap[proposalId],\n classifications\n }\n }\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_OPTIONS): {\n const overviewOptions = action.payload.data.overviewDetails;\n const clientOptions = action.payload.data.clientDetails;\n const classificationOptions = action.payload.data.classificationDetails;\n const caseDesignOptions = action.payload.data.caseDesignDetails;\n const specialistID = action.meta.specialistID;\n return {\n ...state,\n overviewOptions,\n clientOptions,\n classificationOptions,\n caseDesignOptions,\n proposalMap: {\n [\"new\"]: {\n ...defaultProposal,\n specialistID\n }\n }\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_STATUS_LIST): {\n const statusList = get(action, \"payload.data\");\n return {\n ...state,\n statusList\n };\n }\n\n case FULFILLED(ACTION_TYPES.SUBMIT_PROPOSAL): {\n const currentProposal = {};\n return {\n ...state,\n currentProposal,\n isSubmitting: false,\n isSubmitToastVisible: true\n };\n }\n\n // Rejected\n case REJECTED(ACTION_TYPES.FETCH_OCCUPATION):\n case REJECTED(ACTION_TYPES.SUBMIT_PROPOSAL):\n case REJECTED(ACTION_TYPES.FETCH_AGE):\n case REJECTED(ACTION_TYPES.FETCH_STATUS_LIST):\n case REJECTED(ACTION_TYPES.FETCH_RIDERS):\n case REJECTED(ACTION_TYPES.FETCH_OPTIONS): {\n return {\n ...state,\n isSubmitting: false,\n isSavingNext: false,\n isSavingPrevious: false\n };\n }\n\n // Non - network\n case ACTION_TYPES.HIDE_SUBMIT_TOAST: {\n return {\n ...state,\n isSubmitToastVisible: false\n };\n }\n\n case ACTION_TYPES.HIDE_SAVE_TOAST: {\n return {\n ...state,\n isSaveToastVisible: false\n };\n }\n\n case ACTION_TYPES.CHANGE_STATUS_TYPE: {\n const { proposalID, statusTypeID } = action.meta;\n const proposal = state.proposalMap[proposalID];\n\n return {\n ...state,\n proposalMap: {\n ...state.proposalMap,\n [proposalID]: {\n ...proposal,\n statusTypeID\n }\n }\n };\n }\n\n default: {\n return {\n ...state\n };\n }\n }\n};\n\nconst newProposal = (state: ProposalOptionsState, action): ProposalOptionsState => {\n const {\n specialistID,\n broker,\n productTypeID,\n hearAboutUsTypeID,\n originationTypeID,\n ...overviewOptions\n } = action.payload.data.overviewDetails;\n\n const { ...clientOptions } = action.payload.data.clientDetails;\n var { clients } = action.payload.data.clientDetails;\n\n // Ensure clients have a default medical condition.\n clients = clients.map(c => {\n if (c.conditions.length === 0) {\n c.conditions.push(defaultCondition);\n }\n c.isReplaceExistingCoverage = c.isReplaceExistingCoverage ? 1 : 0;\n return c;\n });\n\n const {\n productType,\n bpTypeID,\n epTypeID,\n payorTypeID,\n benefitAmount,\n isMaxBenefit,\n riders,\n ...caseDesignOptions\n } = action.payload.data.caseDesignDetails;\n\n const {\n proposalID,\n proposalGroupID,\n statusTypeID,\n createdDate,\n isSubmitted\n } = action.payload.data;\n\n const proposal = {\n proposalID,\n proposalGroupID,\n specialistID,\n broker,\n productTypeID,\n originationTypeID,\n hearAboutUsTypeID,\n clients,\n productType,\n bpTypeID,\n epTypeID,\n payorTypeID,\n benefitAmount,\n isMaxBenefit,\n riders,\n statusTypeID,\n createdDate,\n isSubmitted\n };\n\n // HACK: pull the age out and store it in the top level state.\n const age = get(proposal, \"clients.0.age\");\n\n return {\n ...state,\n overviewOptions,\n clientOptions,\n caseDesignOptions,\n proposalMap: {\n ...state.proposalMap,\n [proposalID]: proposal\n },\n age\n };\n};\n\nexport const resetBuilder = () => {\n return {\n type: FULFILLED(ACTION_TYPES.RESET_BUILDER),\n payload: {}\n };\n};\n\n/**\n * Fetch an existing proposal and it's options\n */\nexport const fetchProposal = (id: string) => {\n return {\n type: ACTION_TYPES.FETCH_PROPOSAL,\n payload: axios.get(`proposals/${id}`)\n };\n};\n\n/**\n * Fetch an existing proposal Classification options\n */\nexport const fetchProposalClassifications = (id: string) => {\n return {\n type: ACTION_TYPES.FETCH_PROPOSAL_CLASSIFICATION,\n payload: axios.get(`proposals/${id}/classifications`)\n };\n};\n\n/**\n * Create a resource with the specified parameters.\n * @param {[key: string]: any} params - key value pairs to initialize the resource.\n */\nexport const saveProposal = (params: { [key: string]: any }) => {\n return {\n type: ACTION_TYPES.SAVE_PROPOSAL,\n meta: { formAction: \"save\" },\n payload: axios.post(\"proposals\", params)\n };\n};\n\n/**\n * Submit a proposal to DIS\n * @param params\n */\nexport const submitProposal = (params: { [key: string]: any }) => {\n return {\n type: ACTION_TYPES.SUBMIT_PROPOSAL,\n payload: axios.post(`brokerspublic/proposal`, params)\n };\n};\n\n/**\n * Save the proposal on client side only.\n * @param params -proposal json data.\n */\nexport const saveProposalNext = (params: { [key: string]: any }) =>\n({\n type: ACTION_TYPES.SAVE_PROPOSAL,\n meta: { formAction: \"next\" },\n payload: params\n});\n\n/**\n * Save the proposal on client side only.\n * @params params - proposal json data.\n */\nexport const saveProposalPrevious = (params: { [key: string]: any }) => ({\n type: ACTION_TYPES.SAVE_PROPOSAL,\n meta: { formAction: \"previous\" },\n payload: params\n});\n\n/**\n * Fetch all status options available.\n */\nexport const fetchStatusList = () => ({\n type: ACTION_TYPES.FETCH_STATUS_LIST,\n payload: axios.get(\"proposals/statuses\")\n});\n\n/**\n * Fetch dropdown options for creating a new proposal.\n */\nexport const fetchProposalOptions = (specialistID: number) => ({\n type: ACTION_TYPES.FETCH_OPTIONS,\n meta: { specialistID },\n payload: axios.get(\"proposals/new\")\n});\n\n/**\n * Fetch details for the specified broker.\n * @param {number} brokerId\n */\nexport const fetchBrokerDetails = brokerId => ({\n type: ACTION_TYPES.FETCH_BROKER,\n payload: axios.get(`brokers/${brokerId}`)\n});\n\n/**\n * Fetch the riders for the specified product.\n * @param {number} productTypeID\n */\nexport const fetchRiders = (productTypeID: number) => ({\n type: ACTION_TYPES.FETCH_RIDERS,\n payload: axios.get(`products/${productTypeID}/riders`, { params: { id: productTypeID } })\n});\n\n/**\n * Request age break down for the specified date of birth.\n * Age breakdown: X years X months X days\n * @param dob\n */\nexport const fetchAge = (dob: string) => {\n return {\n type: ACTION_TYPES.FETCH_AGE,\n payload: axios.get(`datetime/age/${dob.split('T')[0]}`)\n };\n};\n\nexport const fetchOccupation = (occupationID: number) => {\n return {\n type: ACTION_TYPES.FETCH_OCCUPATION,\n payload: axios.get(`proposals/occupations/${occupationID}`)\n };\n};\n\n/**\n * Update state to hide the submission toast.\n */\nexport const hideToast = () => {\n return {\n type: ACTION_TYPES.HIDE_SUBMIT_TOAST\n };\n};\n\nexport const hideSaveToast = () => {\n return {\n type: ACTION_TYPES.HIDE_SAVE_TOAST\n };\n};\n\n/**\n * Change the statusTypeID for the specified proposal in redux.\n * The status type dropdown lives outside the rest of the proposal builder form so it\n * requires a workaround to propagate it's changes. I hate life.\n * @param {string} proposalID - id of the specified proposal. \"new\" is a valid id.\n * @param {number} statusTypeID - id of the status type.\n */\nexport const changeStatusTypeForProposal = (proposalID: string, statusTypeID: number) => {\n return {\n type: ACTION_TYPES.CHANGE_STATUS_TYPE,\n meta: { proposalID, statusTypeID }\n };\n};\n","import axios from \"axios\";\nimport { get } from \"lodash\";\nimport { PENDING, FULFILLED, REJECTED } from \"./action-type.util\";\nimport { IOption } from \"../models/option.model\";\nimport { defaultProposal } from \"../models/proposal.model\";\nimport { defaultCondition } from \"../models/client.model\";\nimport { roundCurrency } from \"../../util/utils.currency\";\nimport { string } from \"prop-types\";\n\nconst ACTION_TYPES = {\n CLIENT_FETCH_OPTIONS: \"client/FETCH_OPTIONS\",\n CASEDESIGN_FETCH_OPTIONS: \"casedesign/FETCH_OPTIONS\",\n PRODUCT_FETCH_PRODUCTTYPES: \"product/FETCH_PRODUCTTYPES\",\n FETCH_RIDERS: \"casedesign/FETCH_RIDERS\"\n};\n\nconst productOptions = {\n selectProductTypes: []\n};\n\nconst clientOptions = {\n selectGenderList: [],\n selectPrefixList: [],\n selectTobaccoTypeList: [],\n selectTobaccoFrequencyList: [],\n selectMedicationFrequencyList: [],\n selectCredentialTypeList: [],\n selectGovernmentTypeList: [],\n selectStateList: [],\n selectOccupationStatusList: [],\n selectPaidByTypeList: []\n};\n\nconst caseDesignOptions = {\n selectBPList: [],\n selectEPList: [],\n selectPayorList: [],\n selectRiderList: []\n};\n\nconst initialState = {\n isSubmitting: false,\n isSavingNext: false,\n isSavingPrevious: false,\n\n productOptions: productOptions,\n clientOptions: clientOptions,\n caseDesignOptions: caseDesignOptions,\n caseDesignRiderOptions: {\n productID: null,\n productName: \"\",\n riders: []\n }\n};\n\nexport type ClientsOptions = Readonly;\nexport type ProposalCaseDesignOptions = Readonly;\nexport type ClientOptionsState = Readonly;\n\n/**\n * ClientOptions Reducer\n */\nexport default (state: ClientOptionsState = initialState, action): ClientOptionsState => {\n switch (action.type) {\n case PENDING(ACTION_TYPES.CLIENT_FETCH_OPTIONS): {\n return {\n ...state\n };\n }\n case FULFILLED(ACTION_TYPES.CLIENT_FETCH_OPTIONS): {\n var clientOptions = action.payload.data;\n return {\n ...state,\n clientOptions\n };\n }\n case REJECTED(ACTION_TYPES.CLIENT_FETCH_OPTIONS): {\n return {\n ...state,\n isSubmitting: false,\n isSavingNext: false,\n isSavingPrevious: false\n };\n }\n\n case PENDING(ACTION_TYPES.FETCH_RIDERS):\n case PENDING(ACTION_TYPES.CASEDESIGN_FETCH_OPTIONS): {\n return {\n ...state\n };\n }\n case FULFILLED(ACTION_TYPES.CASEDESIGN_FETCH_OPTIONS): {\n var caseDesignOptions = action.payload.data;\n\n return {\n ...state,\n caseDesignOptions\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_RIDERS): {\n const productID = action.payload.data.productID;\n const productName = action.payload.data.productName;\n const riders = action.payload.data.riders;\n return {\n ...state,\n caseDesignRiderOptions: {\n productID,\n productName,\n riders\n }\n };\n }\n\n case REJECTED(ACTION_TYPES.CASEDESIGN_FETCH_OPTIONS): {\n return {\n ...state,\n isSubmitting: false,\n isSavingNext: false,\n isSavingPrevious: false\n };\n }\n\n case FULFILLED(ACTION_TYPES.PRODUCT_FETCH_PRODUCTTYPES): {\n var productOptions = action.payload.data;\n return {\n ...state,\n productOptions\n };\n }\n case PENDING(ACTION_TYPES.PRODUCT_FETCH_PRODUCTTYPES): {\n return {\n ...state\n };\n }\n case REJECTED(ACTION_TYPES.PRODUCT_FETCH_PRODUCTTYPES): {\n return {\n ...state\n };\n }\n\n default: {\n return {\n ...state\n };\n }\n }\n};\n\n/**\n * Fetch dropdown options for creating a new potential proposal.\n */\nexport const fetchClientOptions = () => ({\n type: ACTION_TYPES.CLIENT_FETCH_OPTIONS,\n meta: { },\n payload: axios.get(\"brokerspublic/clientoptions\")\n});\n\nexport const fetchCaseDesignOptions = () => ({\n type: ACTION_TYPES.CASEDESIGN_FETCH_OPTIONS,\n meta: { },\n payload: axios.get(\"brokerspublic/casedesignoptions\")\n});\n\nexport const fetchProductTypeOptions = () => ({\n type: ACTION_TYPES.PRODUCT_FETCH_PRODUCTTYPES,\n meta: { },\n payload: axios.get(\"brokerspublic/producttypes\")\n});\n\nexport const fetchRiders = (productTypeID: number) => ({\n type: ACTION_TYPES.FETCH_RIDERS,\n payload: axios.get(`products/${productTypeID}/riders`, { params: { id: productTypeID } })\n});\n","import { IBroker } from \"../models/broker.model\";\nimport ResourceFactory from \"./resource\";\n\nconst resourceKey = \"brokerspublic\";\nconst resourceUrl = \"brokerspublic\";\nconst resourceIdKey = \"brokerID\";\n\nconst { reducer, fetchList, create, fetch, update } = ResourceFactory(resourceKey, resourceUrl, resourceIdKey);\n\nexport type BrokerResourcesState = ReturnType;\nexport const fetchBrokersList = fetchList;\nexport const createBroker = create;\nexport const fetchBroker = fetch;\nexport const updateBroker = update;\nexport default reducer;\n","import axios from 'axios'\n\nimport { ICompany } from '../models/company.model'\nimport ResourceFactory from './resource'\n\nconst resourceKey = 'companies'\nconst resourceUrl = 'companies'\nconst resourceIdKey = 'companyID'\n\nconst { reducer, fetchList, fetch, create, update } = ResourceFactory(\n resourceKey,\n resourceUrl,\n resourceIdKey\n)\n\nexport type CompanyResourcesState = ReturnType\nexport const fetchCompanyList = fetchList\nexport const fetchCompany = fetch\nexport const createCompany = create\nexport const updateCompany = update\nexport default reducer\n","import axios from \"axios\";\n\nimport { PENDING, FULFILLED, REJECTED } from \"./action-type.util\";\n\nconst ACTION_TYPES = {\n FETCH_OPTIONS: \"brokers/FETCH_OPTIONS\",\n FETCH_AFFILIATE: \"brokers/FETCH_AFFILIATE\",\n FETCH_BROKER_PRIMARY_EMAIL: \"brokers/FETCH_BROKER_PRIMARY_EMAIL\",\n};\n\nconst initialState = {\n loading: false,\n companyAffiliate: undefined,\n isAfiliateRequestInProgress: false,\n affiliateList: [],\n branchList: [],\n companyList: [],\n selectStateList: [],\n selectOccupationStatusList: [],\n rbmList: [],\n hearAboutUsList: [],\n brokerPrimaryEmailValidating: false,\n existentBrokerIdByEmail: undefined,\n existentBrokerFirstNameByEmail: undefined,\n existentBrokerLastNameByEmail: undefined\n};\n\nexport type BrokerBuilderState = Readonly;\n\n/**\n * BrokerBuilder Reducer\n */\nexport default (state: BrokerBuilderState = initialState, action): BrokerBuilderState => {\n switch (action.type) {\n case PENDING(ACTION_TYPES.FETCH_AFFILIATE):{\n return {\n ...state,\n companyAffiliate: undefined,\n loading: true,\n isAfiliateRequestInProgress: true\n };\n }\n case PENDING(ACTION_TYPES.FETCH_OPTIONS): {\n return {\n ...state,\n companyAffiliate: undefined,\n loading: true\n };\n }\n case PENDING(ACTION_TYPES.FETCH_BROKER_PRIMARY_EMAIL): {\n return {\n ...state,\n brokerPrimaryEmailValidating: true,\n existentBrokerIdByEmail: undefined\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_OPTIONS): {\n const affiliateList = action.payload.data.selectAffiliateList;\n const branchList = action.payload.data.selectBranchList;\n const rbmList = action.payload.data.selectRBMList;\n const companyList = action.payload.data.selectCompanyList;\n const selectStateList = action.payload.data.selectStateList;\n const selectOccupationStatusList = action.payload.data.selectOccupationStatusList;\n const hearAboutUsList = action.payload.data.selectHearAboutUsList;\n\n return {\n ...state,\n companyAffiliate: undefined,\n affiliateList,\n companyList,\n branchList,\n rbmList,\n selectStateList,\n selectOccupationStatusList,\n hearAboutUsList,\n loading: false,\n brokerPrimaryEmailValidating: false,\n existentBrokerIdByEmail: undefined\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_AFFILIATE): {\n const companyAffiliate = action.payload.data;\n return {\n ...state,\n companyAffiliate,\n isAfiliateRequestInProgress: false\n };\n }\n\n case FULFILLED(ACTION_TYPES.FETCH_BROKER_PRIMARY_EMAIL): {\n const existentBroker = action.payload.data;\n return {\n ...state,\n brokerPrimaryEmailValidating: false,\n existentBrokerIdByEmail: existentBroker.brokerID\n };\n }\n\n case REJECTED(ACTION_TYPES.FETCH_OPTIONS): {\n return {\n ...state,\n loading: false\n };\n }\n\n case REJECTED(ACTION_TYPES.FETCH_BROKER_PRIMARY_EMAIL): {\n return {\n ...state,\n brokerPrimaryEmailValidating: false,\n existentBrokerIdByEmail: undefined\n };\n }\n\n default: {\n return {\n ...state\n };\n }\n }\n};\n\nexport const fetchBrokerOptions = (campaignID: number) => {\n var url = `brokerspublic/new`;\n if(campaignID) {\n url += \"/\" + campaignID;\n }\n return {\n type: ACTION_TYPES.FETCH_OPTIONS,\n payload: axios.get(url)\n };\n};\n\nexport const fetchCompanyAffiliate = (companyID: number) => ({\n type: ACTION_TYPES.FETCH_AFFILIATE,\n payload: axios.get(`companies/${companyID}/affiliate`)\n});\n\nexport const fetchBrokerByPrimaryEmail = (email: string) => ({\n type: ACTION_TYPES.FETCH_BROKER_PRIMARY_EMAIL,\n payload: axios.post(`validatePrimaryEmailExists`, { email })\n});\n","import axios from \"axios\";\n\nimport { PENDING, FULFILLED, REJECTED } from \"./action-type.util\";\n\nconst ACTION_TYPES = {\n FETCH_AFFILIATE_LOGO: \"affiliate/FETCH_AFFILIATE_LOGO\"\n};\n\nconst initialState = {\n loading: false,\n affiliateLogoId: undefined,\n};\n\nexport type AffiliateState = Readonly;\n\n/**\n * Affiliate Reducer\n */\nexport default (state: AffiliateState = initialState, action): AffiliateState => {\n switch (action.type) {\n case PENDING(ACTION_TYPES.FETCH_AFFILIATE_LOGO):{\n return {\n ...state,\n affiliateLogoId: undefined,\n loading: true\n };\n }\n \n case FULFILLED(ACTION_TYPES.FETCH_AFFILIATE_LOGO): {\n return {\n ...state,\n affiliateLogoId: action.payload.data,\n loading: false\n };\n }\n\n case REJECTED(ACTION_TYPES.FETCH_AFFILIATE_LOGO): {\n return {\n ...state,\n loading: false\n };\n }\n\n default: {\n return {\n ...state\n };\n }\n }\n};\n\nexport const fetchAffiliateLogo = (affiliateId: number) => ({\n type: ACTION_TYPES.FETCH_AFFILIATE_LOGO,\n payload: axios.get(`affiliates/${affiliateId}/logo`)\n});\n\n","import { combineReducers } from \"redux\";\n\nimport auth, { AuthState } from \"./authentication\";\nimport proposals, { ProposalResourcesState } from \"./proposals\";\nimport productBuilder, { ProductBuilderState } from \"./productBuilder\";\nimport proposalOptions, { ProposalOptionsState } from \"./proposalOptions\";\nimport clientOptions, { ClientOptionsState } from \"./clientOptions\";\nimport brokers, { BrokerResourcesState } from \"./brokers\";\nimport companies, { CompanyResourcesState } from \"./companies\";\nimport brokerBuilder, { BrokerBuilderState } from \"./brokerBuilder\";\nimport affiliate, { AffiliateState } from \"./affiiate\";\n\nexport interface IRootState {\n readonly auth: AuthState;\n readonly proposals: ProposalResourcesState;\n readonly proposalOptions: ProposalOptionsState;\n readonly clientOptions: ClientOptionsState;\n readonly productBuilder: ProductBuilderState;\n readonly brokers: BrokerResourcesState;\n readonly companies: CompanyResourcesState;\n readonly brokerBuilder: BrokerBuilderState;\n readonly affiliate: AffiliateState;\n}\n\nconst rootReducer = combineReducers({\n auth,\n proposals,\n proposalOptions,\n clientOptions,\n productBuilder,\n brokers,\n companies,\n brokerBuilder,\n affiliate\n});\n\nexport default rootReducer;\n","import { createStore, combineReducers, applyMiddleware, compose } from 'redux'\nimport promiseMiddleware from 'redux-promise-middleware'\nimport thunkMiddleware from 'redux-thunk'\nimport rootReducer, { IRootState } from './reducers/index'\n\nconst defaultMiddleware = [thunkMiddleware, promiseMiddleware]\n\nconst reduxDevtoolsExtension = window['__REDUX_DEVTOOLS_EXTENSION_COMPOSE__']\nconst devtoolsCompose = reduxDevtoolsExtension\n ? reduxDevtoolsExtension({ trace: true, traceLimit: 10 })\n : null\nconst devComposeEnhancers: (a: R) => R = devtoolsCompose || compose\n\nconst composedMiddleware =\n process.env.NODE_ENV === 'development'\n ? devComposeEnhancers(applyMiddleware(...defaultMiddleware))\n : compose(applyMiddleware(...defaultMiddleware))\n\nconst store = createStore(rootReducer, {} as IRootState, composedMiddleware)\n\nexport default store\n","import * as React from \"react\";\nimport { connect } from \"react-redux\";\nimport { Component } from \"react\";\nimport { RouteComponentProps, Link, withRouter } from \"react-router-dom\";\n\nimport {\n Dropdown,\n UncontrolledDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem\n} from \"reactstrap\";\n\nimport * as S from \"../../constants/StringConstants\";\nimport { IRootState } from \"src/store/reducers\";\nimport \"./AppSideNav.scss\";\n\ninterface IAppSideNavProps extends StateProps, DispatchProps, RouteComponentProps {\n}\n\nexport interface AppSideNavState {\n dropdownOpen?: boolean;\n}\n\nexport interface AppSideNavProps {\n dropdownOpen?: boolean;\n}\n\nclass AppSideNav extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n this.toggle = this.toggle.bind(this);\n this.state = { dropdownOpen: false };\n }\n\n toggle() {\n this.setState(prevState => ({\n dropdownOpen: !prevState.dropdownOpen\n }));\n }\n\n createProposal = {\n name: S.NEW_PROPOSAL,\n path: \"/proposals/new\"\n };\n\n createCompany = {\n name: S.NEW_COMPANY,\n path: \"/companies/new\"\n };\n\n createAffiliate = {\n name: S.NEW_AFFILIATE,\n path: \"/affiliates/new\"\n };\n\n createBroker = {\n name: S.NEW_BROKER,\n path: \"/brokers/new\"\n };\n\n createMap = {\n [\"proposals\"]: this.createProposal,\n [\"companies\"]: this.createCompany,\n [\"affiliates\"]: this.createAffiliate,\n [\"brokers\"]: this.createBroker\n };\n\n handleOnClick = () => {\n const path = this.getCreateButton().path;\n\n if (path === this.createProposal.path) {\n window.open(path);\n } else {\n this.props.history.push(path);\n }\n };\n\n isActiveClassName = (path: string): string => {\n return this.isActive(path) ? \"isActive\" : \"\";\n };\n\n isActive = (path: string) => {\n return this.props.location.pathname === path;\n };\n\n getCreateButton() {\n return (\n this.createMap[this.props.location.pathname.split(\"/\").filter(x => x)[0]] ||\n this.createProposal\n );\n }\n\n getCreateName = () => {\n return this.getCreateButton().name;\n };\n\n logout = () => {\n //this.props.logout();\n };\n\n render() {\n return (\n \n );\n }\n}\n\nconst mapStateToProps = ({ auth }: IRootState) => ({\n});\n\nconst mapDispatchToProps = { };\n\ntype StateProps = ReturnType;\ntype DispatchProps = typeof mapDispatchToProps;\n\nexport default withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps\n )(AppSideNav)\n);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { RouteComponentProps, Switch, Route, Redirect } from \"react-router-dom\";\nimport { Container, Row, Col } from \"reactstrap\";\nimport cx from \"classnames\";\n\nimport { IRootState } from \"../store/reducers\";\nimport AppSideNav from \"./AppSideNav/AppSideNav\";\nimport \"./AppContainer.scss\";\n\nexport interface IAppContainerProps extends StateProps, DispatchProps, RouteComponentProps {}\n\nexport class AppContainer extends React.Component {\n render() {\n return (\n
\n \n\n
{this.props.children}
\n
\n );\n }\n}\n\nconst mapStateToProps = (state: IRootState) => ({});\n\nconst mapDispatchToProps = {};\n\ntype StateProps = ReturnType;\ntype DispatchProps = typeof mapDispatchToProps;\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(AppContainer);\n","import \"./FooterShort.scss\";\nimport React from \"react\";\nimport { IRootState } from \"../../store/reducers\";\nimport { connect } from \"react-redux\";\nimport { Container, Row, Col } from 'reactstrap'\n\nexport interface IFooterShortState {\n }\n\n export interface IFooterShortProps extends StateProps, DispatchProps {\n }\n\n class FooterShort extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n isLoggedIn: false\n };\n }\n\n render() {\n\n return (\n \n );\n }\n }\n\n const mapStateToProps = (state: IRootState) => ({\n\n });\n\n const mapDispatchToProps = {\n };\n\n type StateProps = ReturnType;\n type DispatchProps = typeof mapDispatchToProps;\n\n export default connect(\n mapStateToProps,\n mapDispatchToProps\n )(FooterShort);\n\n","export const BASE_API_URL = process.env.REACT_APP_BASE_API_URL as string\n","import \"./Header.scss\";\nimport React from \"react\";\nimport { get, set } from \"lodash\";\nimport { BrowserRouter as Router, Link, RouteComponentProps } from \"react-router-dom\";\nimport { IRootState } from \"../../store/reducers\";\nimport { connect } from \"react-redux\";\nimport { Container, Row, Col } from 'reactstrap'\nimport { BASE_API_URL } from \"../../constants/EnvConstants\";\nimport { fetchAffiliateLogo } from \"../../store/reducers/affiiate\";\n\nexport interface IHeaderHomeState {\n affiliateId?: number;\n}\n\nexport interface IHeaderHomeProps extends StateProps, DispatchProps, RouteComponentProps {\n}\n\nclass HeaderHome extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n affiliateId: undefined\n };\n }\n\n async componentDidMount() {\n if (this.props.match) {\n const affiliateParam = get(this.props.match.params, \"affiliateId\");\n\n var affiliateId = undefined;\n if (affiliateParam && this.props.match.url.startsWith(\"/quote/\")) {\n affiliateId = +affiliateParam.match(/(\\d+)/)[0];\n this.setState(state =>\n {\n affiliateId\n });\n this.props.fetchAffiliateLogo(affiliateId);\n }\n }\n }\n\n render() {\n var logoAffiliateUrl = undefined;\n\n const { affiliateLogoId, affiliateLogoLoading } = this.props;\n if (affiliateLogoId){\n logoAffiliateUrl = BASE_API_URL + \"affiliates/\" + affiliateLogoId + \"/affiliateLogo\";\n }\n\n return (
\n //
\n // \n // \n // \n //
\n // \"\"\n //
\n // \n // {!logoAffiliateUrl && !affiliateLogoLoading\n // ? \n // \n // {/*
\n //
\n // diservices.com\n //
\n //
*/}\n // \n // \n //
\n //
\n // 619-584-2570\n //
\n //
\n // \n //
\n // :\n // \n // \n //  \n // \n // \n // \n // \n // \n // }\n //
\n //
\n //
\n );\n }\n }\n\n const mapStateToProps = (state: IRootState) => ({\n affiliateLogoId: state.affiliate.affiliateLogoId,\n affiliateLogoLoading: state.affiliate.loading\n });\n\n const mapDispatchToProps = {\n fetchAffiliateLogo,\n };\n\n type StateProps = ReturnType;\n type DispatchProps = typeof mapDispatchToProps;\n\n export default connect(\n mapStateToProps,\n mapDispatchToProps\n )(HeaderHome);\n\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { BrowserRouter as Router, Link, RouteComponentProps, Redirect } from \"react-router-dom\";\nimport { Container, Row, Col, Spinner } from \"reactstrap\";\nimport { get } from \"lodash\";\n\nimport { IRootState } from \"../../store/reducers\";\nimport * as S from \"../../constants/StringConstants\";\nimport \"./Quote.scss\";\nimport Header from '../Layout/Header';\nimport FooterShort from '../Layout/FooterShort';\nimport HeaderHome from '../Layout/HeaderHome';\n\nexport interface IQuoteEngineProps extends StateProps, DispatchProps, RouteComponentProps {\n\n}\n\nexport class QuoteEngine extends React.Component {\n render() {\n const affiliateParam = get(this.props.match.params, \"affiliateId\");\n const campaignParam = get(this.props.match.params, \"campaignId\");\n const companyParam = get(this.props.match.params, \"companyId\");\n\n var affiliateId = undefined;\n if (affiliateParam)\n affiliateId = +affiliateParam.match(/(\\d+)/)[0];\n\n var companyId = undefined;\n if (companyParam)\n companyId = +companyParam.match(/(\\d+)/)[0];\n\n var campaignId = undefined;\n if (campaignParam)\n campaignId = +campaignParam.match(/(\\d+)/)[0];\n\n let brokerUrl = \"/brokers\";\n let loginUrl = \"/login\";\n if (companyId) {\n brokerUrl = brokerUrl + \"/company/\" + companyId + \"/new\";\n }\n else if (affiliateId) {\n brokerUrl = brokerUrl + \"/affiliate/\" + affiliateId + \"/new\";\n } else {\n brokerUrl += \"/new\";\n }\n\n if (campaignId) {\n let campaignParam = \"/campaign/\" + campaignId;\n brokerUrl += campaignParam;\n loginUrl += campaignParam;\n }\n\n return ;\n\n return (\n
\n \n\n
\n \n \n \n
\n

{S.QUOTE_ENGINE}

\n
\n \n
\n\n \n \n
\n {S.QUOTE_ENGINE_LOGIN_LABEL}\n
\n \n
\n
\n
\n\n \n
\n );\n }\n}\n\nconst mapStateToProps = ({ auth }: IRootState) => ({\n isAuthenticated: auth.isAuthenticated\n});\nconst mapDispatchToProps = {};\n\ntype StateProps = ReturnType;\ntype DispatchProps = typeof mapDispatchToProps;\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(QuoteEngine);\n","import React from \"react\";\nimport clsx from 'clsx';\nimport { connect } from \"react-redux\";\nimport { makeStyles, withStyles, createMuiTheme } from \"@material-ui/core/styles\";\nimport Stepper from \"@material-ui/core/Stepper\";\nimport Step from \"@material-ui/core/Step\";\nimport StepButton from \"@material-ui/core/StepButton\";\nimport StepConnector from '@material-ui/core/StepConnector';\nimport { withRouter, RouteComponentProps } from \"react-router-dom\";\nimport StepLabel from \"@material-ui/core/StepLabel\";\nimport { IRootState } from \"../../store/reducers\";\n\nimport SettingsIcon from '@material-ui/icons/Settings';\nimport GroupAddIcon from '@material-ui/icons/GroupAdd';\n\nimport \"./ProposalStepper.scss\";\n\nconst styles = theme => ({\n root: {\n width: \"90%\",\n margin: \"0 auto\",\n marginBottom: \"2.5rem\"\n },\n button: {\n marginRight: theme.spacing(1)\n },\n backButton: {\n marginRight: theme.spacing(1)\n },\n completed: {\n display: \"inline-block\"\n },\n instructions: {\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n active: {\n color: \"#d85d0f !important\"\n },\n styles: {\n fontSize: \"2.2rem !important\",\n fontWeight: 900\n },\n icon: {\n fontSize: \"2.4rem\"\n }\n});\n\nexport interface IStep {\n label?: string;\n to?: string;\n completed?: boolean;\n optional?: boolean;\n}\n\nexport interface IStepperProps extends RouteComponentProps {\n steps: IStep[];\n activeStep: number;\n classes: any;\n onClick: (e: any, stepIndex: number) => any;\n}\n\nexport interface IStepperState {\n activeStep: number;\n skipped: any;\n completed: any;\n}\n\nconst ColorlibConnector = withStyles({\n line: {\n height: 0,\n border: 0,\n borderRadius: 0,\n },\n})(StepConnector);\n\nexport class ProposalStepper extends React.Component {\n render() {\n const { steps, classes, history, onClick, activeStep } = this.props;\n const icons = {\n 1: ,\n 2: ,\n };\n\n function getStepActiveState(activeStep, index) {\n return activeStep == index ? \"stepper__step__active\" : \"stepper__step\";\n }\n\n return (\n
\n
\n }>\n {steps.map((step, index) => (\n \n {/* onClick(e, index)} completed={step.completed}>\n (\n
\n
)}\n StepIconProps={{\n classes: {\n root: classes.icon1,\n active: classes.active1,\n text: classes.styles1\n }\n }}>\n {step.label}\n \n
*/}\n
\n\n ))}\n
\n
\n
\n );\n }\n}\n\nexport default withStyles(styles)(withRouter(ProposalStepper));\n","/**\n * Toast.tsx\n * Disability Insurance Services\n *\n * Created by Jeremy Moyers on Thur May 2 14:46:37 2019\n */\nimport React from \"react\";\nimport MuiSnackbar from \"@material-ui/core/Snackbar\";\nimport MuiSnackbarContent from \"@material-ui/core/Snackbar\";\nimport Button from \"@material-ui/core/Button\";\nimport \"./Toast.scss\";\nimport * as S from \"../../constants/StringConstants\";\n\nimport { withStyles } from \"@material-ui/core/styles\";\n\ninterface IToastProps {\n message: string;\n open: boolean;\n onClose: () => void;\n}\n\nconst Snackbar = withStyles(theme => ({\n root: {\n width: \"57rem\"\n }\n}))(MuiSnackbar);\n\nclass Toast extends React.Component {\n render() {\n const { message, open, onClose } = this.props;\n\n const closeButton = (\n {\n onClose();\n }}\n className=\"toast__close-button\">\n {S.T_BUTTON}\n \n );\n\n return (\n \n );\n }\n}\n\nexport default Toast;\n","/**\n * utils.defaultValues.ts\n * Disability Insurance Services\n *\n * Created by Jeremy Moyers on Wed May 17\n */\n\n// The default value for Single Select option lists\n// It has to be a string because HTML Javascript and React Final Form hate you.\nexport const defaultOptionValue = -1;\n\nexport const addDefaultOption = function(label, options){\n if(Array.isArray(options)){\n return [\n { key: label, value: defaultOptionValue, disabled: false },\n ...options\n ];\n }\n else {\n return [\n { key: label, value: defaultOptionValue, disabled: false }\n ];\n }\n} \n\nexport const isEmptyOrDefault = (value: any): boolean => {\n return !value || (value && value === defaultOptionValue || value === -1);\n};\n\nexport const undefinedIfDefault = (value: any): any => {\n return value === defaultOptionValue || value === -1 ? undefined : value;\n};\n","import { isEmptyOrDefault } from \"./utils.defaultValues\";\nimport { NumberFormatValues } from \"react-number-format\";\n\nexport const PHONE_NUMBER_REGEX = new RegExp(/(^(\\+\\d{1,2}\\s)?\\(?\\d{3}\\)?[\\s.-]\\d{3}[\\s.-]\\d{4}(?:[\\s.-]\\d{1,6})?$)/);\nexport const ZIP_CODE_REGEX = new RegExp(/^[0-9]*$/);\nexport const EXTERNAL_ID_REGEX = new RegExp(/^\\d{1,9}$/);\n\n/**\n * Check if the input string is undefined, null, or white space from beginning to end of string.\n * @param value\n */\nexport const isEmpty = (value: string): boolean => {\n return value === null || value === undefined || value.match(/^\\s*$/) !== null;\n};\n\n/**\n * Ensure the specified number value is a valid number between 0-100.\n * Allow for undefined.\n * @param {NumberFormatValues} values provided by a NumberFormatField\n */\nexport const isValidPercentage = (values: NumberFormatValues): boolean => {\n if (!values.floatValue) {\n return true;\n }\n return values.floatValue <= 100;\n};\n","/**\n * Age.tsx\n * Disability Insurance Services\n *\n * Created by Jeremy Moyers on Wed\n */\n\nimport React from \"react\";\nimport { get } from \"lodash\";\nimport { Container, Row, Col, Label } from \"reactstrap\";\nimport { connect } from \"react-redux\";\n\nimport * as S from \"../../constants/StringConstants\";\nimport { IRootState } from \"../../store/reducers\";\nimport TextField from \"../../components/Form/TextField/TextField\";\nimport \"./Age.scss\"\n\nexport interface IAgeProps extends StateProps, DispatchProps {}\n\nclass Age extends React.Component {\n render() {\n const { age } = this.props;\n\n return (\n \n \n \n \n
\n
    \n
  • \n {S.PDC_YEARS_LABEL}\n
  • \n
  • \n
    \n \n
    \n
  • \n
\n
\n \n \n
\n
    \n
  • \n {S.PDC_MONTHS_LABEL}\n
  • \n
  • \n
    \n \n
    \n
  • \n
\n
\n \n \n
\n
    \n
  • \n {S.PDC_DAYS_LABEL}\n
  • \n
  • \n
    \n \n
    \n
  • \n
\n
\n \n
\n
\n \n );\n }\n}\n\nconst mapStateToProps = (state: IRootState) => ({\n age: state.proposalOptions.age\n});\n\nconst mapDispatchToProps = {};\n\ntype StateProps = ReturnType;\ntype DispatchProps = typeof mapDispatchToProps;\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(Age);\n","import React from \"react\";\nimport { Field, FieldProps } from \"react-final-form\";\nimport { Input, InputGroup, InputGroupAddon, InputGroupText } from \"reactstrap\";\nimport \"./TextField.scss\";\n\n/**\n * label - label decoration for describing the text input content. ex: \"username\" or \"email\";\n * light - assign true to render light themed text field component.\n * appendText - static text content displayed after the input field. ex: \"_______ lbs\" or \"________ meters\";\n * prependText - static text content displayed before the input field. ex: \"$ _______\"\n */\nexport interface ITextFieldProps extends FieldProps {\n label?: string;\n light?: boolean;\n type?: string;\n appendText?: string;\n prependText?: string;\n placeholder?: string;\n}\n\nexport default class TextField extends React.Component<\n ITextFieldProps\n > {\n render() {\n const { label, light, appendText, prependText, disabled, placeholder, ...fieldProps } = this.props;\n\n return (\n \n {({ input, meta }) => \n {\n return (\n \n
    \n
  • \n \n
  • \n
  • \n \n {prependText && (\n \n {prependText}\n \n )}\n \n {meta.touched && meta.error && {meta.error}}\n {appendText && (\n \n {appendText}\n \n )}\n \n
  • \n
\n \n )\n }}\n
\n );\n }\n}\n","import React from \"react\";\nimport { Field, FieldProps } from \"react-final-form\";\nimport NumberFormat, { NumberFormatValues } from \"react-number-format\";\nimport \"./NumberFormatField.scss\";\nimport { Tooltip } from '@material-ui/core';\nimport PriorityHighIcon from '@material-ui/icons/PriorityHigh';\nimport HelpIcon from '@material-ui/icons/Help';\n\n/**\n * label - label decoration for describing the text input content. ex: \"username\" or \"email\";\n * light - assign true to render light themed text field component.\n */\nexport interface INumberFormatProps extends FieldProps {\n label?: string;\n light?: boolean;\n thousandSeparator?: boolean;\n prefix?: string;\n decimalScale?: number;\n isAllowed?: (values: NumberFormatValues) => boolean;\n isRequired?: Boolean;\n hint?: String;\n}\n\nexport default class NumberFormatField extends React.Component<\n INumberFormatProps\n> {\n render() {\n const {\n label,\n light,\n disabled,\n thousandSeparator,\n prefix,\n decimalScale,\n isAllowed,\n isRequired,\n hint,\n ...fieldProps\n } = this.props;\n\n return (\n \n {({ input, meta } : {input:any, meta: any}) => {\n const { onChange, ...rest } = input;\n return (\n \n
    \n
  • \n \n {isRequired ?\n \n : ''\n }\n {hint ?\n {hint}} placement=\"right-start\">\n \n \n : ''\n }\n
  • \n
  • \n {\n const { value } = values;\n const number = parseFloat(value);\n onChange(number as any);\n }}\n {...rest}\n type=\"text\"\n />\n {meta.touched && meta.error && {meta.error}}\n
  • \n
\n \n );\n }}\n
\n );\n }\n}\n","import React from \"react\";\nimport { Field, FieldProps, FieldRenderProps } from \"react-final-form\";\nimport classNames from \"classnames\";\n\nimport \"./CheckboxField.scss\";\n\ninterface ICheckboxFieldProps extends FieldProps {\n label: string;\n}\n\nexport default class CheckboxField extends React.Component<\n ICheckboxFieldProps\n> {\n render = () => {\n const { label, ...fieldProps } = this.props;\n return (\n \n {({ input, meta }) => (\n
\n \n
\n )}\n
\n );\n };\n}\n","/**\n * ToggleField.tsx\n * Disability Insurance Services\n *\n * Created by Jeremy Moyers on Tues May 1 14:46:37 2019\n * Copyright Seamgen, LLC. All rights reserved.\n */\nimport React from \"react\";\nimport { Field, FieldProps } from \"react-final-form\";\nimport classNames from \"classnames\";\n\nimport \"./ToggleField.scss\";\n\ninterface IToggleProps extends FieldProps {\n label: string;\n}\n\nexport default class ToggleField extends React.Component> {\n render = () => {\n const { label, ...fieldProps } = this.props;\n return (\n \n {({ input, meta }) => (\n
\n \n
\n )}\n
\n );\n };\n}\n","import React from \"react\";\nimport { Field, FieldProps, FieldRenderProps } from \"react-final-form\";\nimport { IListOption } from \"../../../store/models/listOption.models\";\nimport { defaultOptionValue } from \"../../../util/utils.defaultValues\";\nimport \"./SingleSelectField.scss\";\nimport { Tooltip } from '@material-ui/core';\nimport PriorityHighIcon from '@material-ui/icons/PriorityHigh';\nimport HelpIcon from '@material-ui/icons/Help';\n\n/**\n * @param {string} label - user facing string used for the title of the Select.\n * @param {Array} - options presented in the Select to the user.\n */\nexport interface ISelectProps extends FieldProps {\n label?: string;\n options: Array;\n}\n\nexport interface ISelectRenderProps\n extends ISelectProps,\n FieldRenderProps {}\n\n/**\n * The standard select component.\n *\n * Displays a list of IListOption objects.\n */\nexport class SingleSelect extends React.Component {\n render() {\n const { label, options, input, meta, disabled, isRequired, hint, ...rest } = this.props;\n\n return (\n \n
    \n
  • \n \n {isRequired ?\n \n : ''\n }\n {hint ?\n {hint}} placement=\"right-start\">\n \n \n : ''\n }\n
  • \n
  • \n \n
  • \n {meta.touched && meta.error && {meta.error}}\n
\n \n );\n }\n}\n\n// HTMLSelectElement\n\nexport interface ISelectFieldProps extends ISelectProps, FieldProps \n{\n isRequired?: Boolean;\n hint?: String;\n}\n\nexport default function SingleSelectField(props: ISelectFieldProps) {\n return (\n {\n const id = parseInt(value, 10);\n /*\n This was once a way to avoid having to filter the default value out of every\n model to DTO conversion. However, in order to differentiate between deleting\n an analyzer column and selecting a default value from the dropdown we need to\n allow the default Option value to persist. A possible solution is to add a\n 'doesFilterDefaultValues' prop but for now were just gonna filter default\n values in every dto conversion.\n if (id === defaultOptionValue) {\n return undefined;\n }\n */\n return id;\n }}\n {...props}\n />\n );\n}\n","import React from \"react\";\nimport { Field, FieldProps, FieldRenderProps } from \"react-final-form\";\nimport { KeyboardDatePicker } from \"@material-ui/pickers\";\nimport { withStyles } from \"@material-ui/core/styles\";\n\nimport \"./SimpleDatePickerField.scss\";\n\nexport interface ISimpleDatePickerProps extends FieldProps {\n label?: string;\n}\n\nexport interface ISimpleDatePickerRenderProps\n extends ISimpleDatePickerProps,\n FieldRenderProps {}\n\nconst StyleKeyboardDatePicker = withStyles({\n root: {\n background: \"transparent\"\n }\n})(KeyboardDatePicker);\n\nexport class SimpleDatePicker extends React.Component {\n render() {\n const { input, meta, label, disabled } = this.props;\n\n const value = input.value ? input.value : null;\n\n /**\n * Open bug about the emptyLabel warning https://github.com/mui-org/material-ui-pickers/issues/1093\n */\n return (\n
\n {\n const dateString = date ? date.format() : null;\n input.onChange(dateString as any);\n }}\n onError={error => console.log(\"error\", error)}\n />\n {meta.touched && meta.error && {meta.error}}\n
\n );\n }\n}\n\nexport interface ISimpleDatePickerFieldProps extends ISimpleDatePickerProps, FieldProps \n{\n isRequired?: Boolean;\n}\n\nexport default function SimpleDatePickerField(props: ISimpleDatePickerFieldProps) {\n return ;\n}\n","import React from \"react\";\nimport { get } from \"lodash\";\nimport { Field, FieldProps, FieldRenderProps } from \"react-final-form\";\nimport { AsyncTypeahead } from \"react-bootstrap-typeahead\";\nimport { FormGroup, Label, DropdownItem } from \"reactstrap\";\nimport { ITypeaheadOption } from \"./TypeaheadField\";\nimport { render } from \"react-dom\";\n\nimport \"./AsyncTypeaheadField.scss\";\n\nexport const typeAheadErrorSymbol = Symbol(\"TYPEAHEAD_ERROR\");\n\ninterface IAsyncTypeaheadProps {\n label: string;\n isRequired?: boolean;\n fetch: (query: string) => Promise;\n onChange?: (selected: any) => void;\n}\n\ninterface IAsyncTypeaheadFieldRenderProps\n extends FieldRenderProps,\n IAsyncTypeaheadProps {}\n\nexport interface IAsyncTypeaheadFieldState {}\n\nexport class AsyncTypeaheadFieldComponent extends React.Component<\n IAsyncTypeaheadFieldRenderProps,\n IAsyncTypeaheadFieldState\n> {\n state = {\n isLoading: false,\n options: [],\n error: null\n };\n\n handleSearch = async (queryText: string) => {\n this.setState({ isLoading: true });\n\n try {\n const options = await this.props.fetch(queryText);\n this.setState({ isLoading: false, options });\n } catch (error) {\n this.setState({ isLoading: false, error });\n }\n };\n\n render() {\n const {\n input,\n input: { onChange },\n meta,\n label,\n fetch,\n isRequired,\n ...typeaheadProps\n } = this.props;\n const { isLoading, options } = this.state;\n const { touched } = meta;\n const error = get(meta, [\"error\", \"errorLabel\"], meta.error);\n const isError = touched && error;\n\n return (\n \n
\n \n {isRequired ?\n \n : ''\n }\n {\n if (typeaheadProps.onChange) {\n typeaheadProps.onChange(event);\n }\n return onChange(event);\n }}\n />\n {isError && {error}}\n
\n
\n );\n }\n}\n\nexport interface IAsyncTypeaheadFieldProps\n extends FieldProps,\n IAsyncTypeaheadProps {}\n\nconst AsyncTypeaheadField = (props: IAsyncTypeaheadFieldProps) => (\n \n);\n\nexport default AsyncTypeaheadField;\n","import React from \"react\";\nimport { Field, FieldProps, FieldRenderProps } from \"react-final-form\";\nimport { Typeahead } from \"react-bootstrap-typeahead\";\nimport { FormGroup, Label } from \"reactstrap\";\nimport { castArray } from 'lodash'\n\nimport * as S from \"../../../constants/StringConstants\";\nimport { IListOption } from \"../../../store/models/listOption.models\";\nimport \"./TypeaheadField.scss\";\n\nexport interface ITypeaheadOption {\n value: string | number | boolean | {};\n label?: string;\n}\n\nexport interface ITypeaheadProps {\n label: string;\n option?: ITypeaheadOption[];\n emptyLabel?: string;\n selected?: ITypeaheadOption | ITypeaheadOption[];\n}\n\nexport interface ITypeaheadFieldRenderProps\n extends FieldRenderProps,\n ITypeaheadProps {}\n\nexport interface ITypeaheadState {\n selected: ITypeaheadOption\n}\n\nexport class TypeaheadFieldComponent extends React.Component<\n ITypeaheadFieldRenderProps\n> {\n state = {\n selected: undefined\n }\n\n constructor (props: ITypeaheadFieldRenderProps) {\n super(props)\n const asArray = castArray(props.selected)\n if (asArray && asArray.length && asArray[0]) {\n this.state = {\n selected: asArray\n }\n }\n }\n\n onChange (selected: ITypeaheadOption) {\n this.setState({\n selected\n })\n }\n\n render() {\n const { input, meta, label, emptyLabel, selected, ...typeaheadProps } = this.props;\n\n const newProps = {\n id: input.name,\n isValid: meta.visited && meta.invalid,\n emptyLabel: emptyLabel || S.DD_NO_RESULTS,\n // these 2 lines so Typescript will shut up\n selected: [],\n defaultSelected: [],\n onChange: this.onChange,\n ...input,\n ...typeaheadProps\n }\n\n if (selected) {\n if (Array.isArray(selected)) {\n newProps.selected = selected\n } else {\n newProps.selected = [selected]\n }\n }\n\n return (\n \n \n \n {meta.touched && meta.error && {meta.error}}\n \n );\n }\n}\n\n// TODO: make types for ITypeaheadOption and IListOption & use constructors for that\nexport function keyValueToDropdownOption(kvp: IListOption): ITypeaheadOption {\n return {\n label: kvp.key,\n value: kvp.value\n };\n}\n\nexport interface ITypeaheadFieldProps\n extends FieldProps,\n ITypeaheadProps {}\n\nconst TypeaheadField = (props: ITypeaheadFieldProps) => (\n \n);\n\nexport default TypeaheadField;\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { Container, Row, Col, Spinner } from \"reactstrap\";\nimport { Form as FinalForm, FormRenderProps } from \"react-final-form\";\nimport { get, set } from \"lodash\";\nimport { OnBlur, OnChange } from \"react-final-form-listeners\";\nimport axios from \"axios\";\nimport arrayMutators from \"final-form-arrays\";\nimport { RouteComponentProps } from \"react-router\";\nimport formatString from 'format-string-by-pattern'\n\nimport * as S from \"../../constants/StringConstants\";\nimport * as P from \"../../util/utils.validators\";\nimport { IRootState } from \"../../store/reducers\";\nimport Age from \"./Age\";\nimport TextField from \"../../components/Form/TextField/TextField\";\nimport NumberFormatField from \"../../components/Form/NumberFormatField/NumberFormatField\";\nimport CheckboxField from \"../../components/Form/CheckboxField/CheckboxField\";\nimport ToggleField from \"../../components/Form/ToggleField/ToggleField\";\nimport SingleSelectField from \"../../components/Form/SingleSelectField/SingleSelectField\";\nimport SimpleDatePickerField from \"../../components/Form/SimpleDatePickerField/SimpleDatePickerField\";\nimport AsyncTypeaheadField, { typeAheadErrorSymbol } from \"../../components/Form/TypeaheadField/AsyncTypeaheadField\";\nimport { keyValueToDropdownOption, ITypeaheadOption } from \"../../components/Form/TypeaheadField/TypeaheadField\";\nimport MedicalNotes from \"./MedicalNotes\";\nimport { fetchAge, fetchOccupation } from \"../../store/reducers/proposalOptions\";\nimport { IProposal } from \"../../store/models/proposal.model\";\n\nimport \"./Client.scss\";\nimport { addDefaultOption, isEmptyOrDefault } from \"../../util/utils.defaultValues\";\n\nexport const saveSymbol = Symbol(\"SAVE FORM\");\nexport const stepSymbol = Symbol(\"STEP FORM\");\nexport const stepIndexSymbol = Symbol(\"STEP INDEX\");\n\nexport interface IProposalDetailsClientProps extends StateProps, DispatchProps, RouteComponentProps<{ id: string }>\n{\n proposal: IProposal;\n next: (values: any) => void;\n step: (values: any, pageIndex: number) => void;\n previous: (values: any) => void;\n clientID: string;\n}\n\nclass Client extends React.Component {\n searchOccupations = async (searchText?: string) => {\n const response = await axios.get(\n `proposals/occupations${searchText ? `?searchText=${encodeURIComponent(searchText)}` : \"\"}`\n );\n\n return response.data.map(keyValueToDropdownOption);\n };\n\n handleSubmit = values => {\n const { next, previous } = this.props;\n const { formAction, ...rest } = values;\n if (formAction === \"clientNext\") {\n next(rest);\n }\n };\n\n handleValidate = values => {\n const errors = {};\n\n if (this.props.clientID) {\n const firstName = get(values, \"firstName\");\n if (P.isEmpty(firstName)) {\n set(errors, \"firstName\", S.FORM_FIELD_REQUIRED);\n }\n const clientEmail = get(values, \"email\");\n if (P.isEmpty(clientEmail)) {\n set(errors, \"email\", S.FORM_FIELD_REQUIRED);\n }\n }\n\n const dateOfBirth = get(values, \"dateOfBirth\");\n if (P.isEmpty(dateOfBirth)) {\n set(errors, \"dateOfBirth\", S.FORM_FIELD_REQUIRED);\n }\n\n const genderTypeID = get(values, \"genderTypeID\");\n if (isEmptyOrDefault(genderTypeID)) {\n set(errors, \"genderTypeID\", S.FORM_FIELD_REQUIRED);\n }\n\n const annualIncome = get(values, \"annualIncome\");\n if (isEmptyOrDefault(annualIncome)) {\n set(errors, \"annualIncome\", S.FORM_FIELD_REQUIRED);\n }\n\n const stateID = get(values, \"stateID\");\n if (isEmptyOrDefault(stateID)) {\n set(errors, \"stateID\", S.FORM_FIELD_REQUIRED);\n }\n\n const clientPhone = get(values, \"clientPhone\");\n if (isEmptyOrDefault(clientPhone)) {\n set(errors, \"clientPhone\", S.FORM_FIELD_REQUIRED);\n }\n\n const clientEmail = get(values, \"clientEmail\");\n if (isEmptyOrDefault(clientEmail)) {\n set(errors, \"clientEmail\", S.FORM_FIELD_REQUIRED);\n }\n\n const occupationTypeID = get(values, \"occupationTypeID\");\n if (isEmptyOrDefault(occupationTypeID)) {\n set(errors, \"occupationTypeID\", S.FORM_FIELD_REQUIRED);\n }\n\n const isGovernment = get(values, \"isGovernment\");\n if (isGovernment) {\n const govtYears = get(values, \"govtYears\");\n if (!govtYears) {\n set(errors, \"govtYears\", S.FORM_FIELD_REQUIRED);\n }\n }\n\n const isBusinessOwner = get(values, \"isBusinessOwner\");\n if (isBusinessOwner) {\n const yearsInBusiness = get(values, \"yearsInBusiness\");\n if (!yearsInBusiness) {\n set(errors, \"yearsInBusiness\", S.FORM_FIELD_REQUIRED);\n }\n\n const employees = get(values, \"employees\");\n if (!employees) {\n set(errors, \"employees\", S.FORM_FIELD_REQUIRED);\n }\n }\n\n const phoneNumber = get(values, \"phone\")\n const pattern = P.PHONE_NUMBER_REGEX\n if (phoneNumber && !pattern.test(phoneNumber)) {\n set(errors, \"phone\", S.FORM_FIELD_INVALID)\n }\n\n const doesWorkFromHome = get(values, \"doesWorkFromHome\");\n if (doesWorkFromHome) {\n const percentWorkFromHome = get(values, \"percentWorkFromHome\");\n if (!percentWorkFromHome) {\n set(errors, \"percentWorkFromHome\", S.FORM_FIELD_REQUIRED);\n }\n }\n\n return errors;\n };\n\n render() {\n const officePhoneMask = { name: 'phone-1', parse: '(999) 999-9999.999999' }\n const phoneMask = { name: 'phone-1', parse: '(999) 999-9999' }\n\n const {\n clientOptions,\n selectedOcc,\n proposal,\n isSubmitting,\n isSavingNext,\n } = this.props;\n\n const prefixOptions = addDefaultOption(S.PDC_PREFIX_LABEL, clientOptions.selectPrefixList);\n const credentialOptions = addDefaultOption(\n S.PDC_CREDENTIALS_LABEL,\n clientOptions.selectCredentialTypeList\n );\n const stateOptions = addDefaultOption(S.PDC_STATE_LABEL, clientOptions.selectStateList);\n const occupationStatusOptions = addDefaultOption(S.PDC_OCCUPATION_STATUS_LABEL, clientOptions.selectOccupationStatusList);\n const genderOptions = addDefaultOption(S.PDC_GENDER_LABEL, clientOptions.selectGenderList);\n const tobaccoTypeOptions = addDefaultOption(\n S.PDC_TOBACCO_TYPE_LABEL,\n clientOptions.selectTobaccoTypeList\n );\n const tobaccoFrequencyOptions = addDefaultOption(\n S.PDC_TOBACCO_FREQUENCY_LABEL,\n clientOptions.selectTobaccoFrequencyList\n );\n const governmentTypeOptions = addDefaultOption(\n S.PDC_GOVERNMENT_TYPE_LABEL,\n clientOptions.selectGovernmentTypeList\n );\n\n const booleans = [{ key: S.PDC_YES, value: 1 }, { key: S.PDC_NO, value: 0 }];\n const booleanOptions = addDefaultOption(\"\", booleans);\n\n const selectPaidByTypeList = addDefaultOption(\n S.PDC_PAID_BY_LABEL,\n get(clientOptions, \"selectPaidByTypeList\", [])\n );\n\n return (\n \n {formProps => {\n const formValues = formProps.values;\n\n const isGovernment = get(formValues, \"isGovernment\");\n const isBusinessOwner = get(formValues, \"isBusinessOwner\");\n const doesWorkFromHome = get(formValues, \"doesWorkFromHome\");\n\n const doesUseTobacco = get(formValues, \"doesUseTobacco\");\n const hasMedicalNotes = get(formValues, \"hasMedicalNotes\");\n const hasSpouse = get(formValues, \"hasSpouse\");\n const hasExistingCoverage = get(formValues, \"hasExistingCoverage\");\n\n const selectedOccOption = [];\n if (selectedOcc) {\n selectedOccOption.push(keyValueToDropdownOption(selectedOcc));\n }\n\n return (\n \n \n \n \n

{S.PDC_CLIENT_INFORMATION_TITLE}

\n \n
\n
\n
\n \n \n \n {\n return parseInt(value, 10);\n }}\n />\n \n \n \n \n \n \n \n \n {this.props.clientID\n ?\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n : \n \n \n \n \n \n \n \n }\n\n \n \n {\n return parseInt(value, 10);\n }}\n />\n \n \n \n \n {() => {\n const dob = get(formValues, \"dateOfBirth\");\n const asDate = new Date(dob);\n // if it's in the future, skip asking for age\n if (dob && asDate < new Date()) {\n this.props.fetchAge(dob);\n }\n }}\n \n \n \n \n \n \n\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n\n {/**\n * OCCUPATION SECTION\n */}\n \n \n

{S.PDC_OCCUPATION_TITLE}

\n \n
\n \n \n {\n if (options.length > 0) {\n return options[0].value;\n }\n }}\n />\n \n {value => {\n const occupationTypeID = parseInt(value, 10);\n if (occupationTypeID) {\n this.props.fetchOccupation(occupationTypeID);\n }\n }}\n \n \n \n \n \n \n \n \n \n \n \n \n {\n return parseFloat(String(value)).toFixed(2);\n }}\n />\n \n \n {\n return parseFloat(String(value)).toFixed(2);\n }}\n />\n \n \n \n \n \n\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n\n \n {isGovernment && (\n \n \n \n )}\n\n {isGovernment && (\n \n \n \n )}\n\n {isBusinessOwner && (\n \n \n \n )}\n\n {isBusinessOwner && (\n \n \n \n )}\n\n {doesWorkFromHome && (\n \n \n \n )}\n \n\n {/**\n * TOBACCO USAGE\n */}\n\n \n \n \n \n \n {doesUseTobacco && (\n \n \n {\n return parseInt(value, 10);\n }}\n />\n \n \n {\n return parseInt(value, 10);\n }}\n />\n \n \n \n \n \n )}\n {/**\n * MEDICAL NOTES\n */}\n {/* \n \n \n \n \n {hasMedicalNotes && (\n \n \n \n \n \n )} */}\n\n {/**\n * SPOUSE DETAILS\n */}\n {/* \n \n \n \n \n {hasSpouse && (\n \n \n \n \n \n )} */}\n {/**\n * Existing Coverage\n */}\n \n \n \n \n \n\n {hasExistingCoverage && (\n \n \n {\n return value\n ? parseFloat(String(value)).toFixed(2)\n : 0;\n }}\n />\n \n \n \n \n \n )}\n {hasExistingCoverage && (\n \n \n {\n return parseFloat(String(value));\n }}\n />\n \n \n {\n return parseFloat(String(value)).toFixed(2);\n }}\n />\n \n \n \n \n \n )}\n\n {/**\n * Residence\n */}\n \n \n

{S.PDC_RESIDENCY}

\n \n
\n\n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n \n \n {\n formProps.form.change(\"formAction\", \"clientNext\");\n }}>\n {isSavingNext ? : S.PC_NEXT_BUTTON}\n \n \n \n
\n\n \n );\n }}\n \n );\n }\n}\n\nconst mapStateToProps = (state: IRootState) => ({\n clientOptions: state.clientOptions.clientOptions,\n selectedOcc: state.proposalOptions.selectedOccupationOption,\n isSubmitting: state.clientOptions.isSubmitting,\n isSavingNext: state.clientOptions.isSavingNext,\n isSavingPrevious: state.clientOptions.isSavingPrevious\n});\n\nconst mapDispatchToProps = {\n fetchAge,\n fetchOccupation\n};\n\ntype StateProps = ReturnType;\ntype DispatchProps = typeof mapDispatchToProps;\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(Client);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { RouteComponentProps, Prompt } from \"react-router-dom\";\nimport { Container, Row, Col, Label, Spinner } from \"reactstrap\";\nimport { Form as FinalForm, FormRenderProps } from \"react-final-form\";\nimport { get } from \"lodash\";\n\nimport { IRootState } from \"../../store/reducers\";\nimport { fetchRiders } from \"../../store/reducers/proposalOptions\";\nimport { IProposal } from \"../../store/models/proposal.model\";\nimport SingleSelectField from \"../../components/Form/SingleSelectField/SingleSelectField\";\nimport CheckboxField from \"../../components/Form/CheckboxField/CheckboxField\";\nimport TextField from \"../../components/Form/TextField/TextField\";\nimport ToggleField from \"../../components/Form/ToggleField/ToggleField\";\nimport NumberField from \"../../components/Form/NumberFormatField/NumberFormatField\";\nimport { addDefaultOption, isEmptyOrDefault } from \"../../util/utils.defaultValues\";\nimport { OnChange } from \"react-final-form-listeners\";\n\nimport \"./CaseDesign.scss\";\n\nimport * as S from \"../../constants/StringConstants\";\nimport { Tooltip } from '@material-ui/core';\nimport PriorityHighIcon from '@material-ui/icons/PriorityHigh';\nimport HelpIcon from '@material-ui/icons/Help';\n\nexport interface IProposalDetailsCaseDesignProps\n extends StateProps,\n DispatchProps,\n RouteComponentProps {\n proposal: IProposal;\n productTypeID: number;\n next: (values: any) => void;\n previous: (values: any) => void;\n step: (values: any, pageIndex: number) => void;\n}\n\nexport class ProposalDetailsCaseDesign extends React.Component {\n constructor(props) {\n super(props);\n }\n\n handleSubmit = values => {\n const { next, previous } = this.props;\n const { formAction, ...rest } = values;\n\n if (formAction === \"submit\") {\n next(rest);\n } else {\n previous(rest);\n }\n };\n\n handleValidate = values => {\n const errors = {};\n\n if(values) {\n if (isEmptyOrDefault(values.productTypeID)) {\n errors[\"productTypeID\"] = S.FORM_FIELD_REQUIRED;\n }\n\n if(!values.isProductTypeKnown) {\n if (isEmptyOrDefault(values.bpTypeID)) {\n errors[\"bpTypeID\"] = S.FORM_FIELD_REQUIRED;\n }\n\n if (isEmptyOrDefault(values.epTypeID)) {\n errors[\"epTypeID\"] = S.FORM_FIELD_REQUIRED;\n }\n\n if (isEmptyOrDefault(values.payorTypeID)) {\n errors[\"payorTypeID\"] = S.FORM_FIELD_REQUIRED;\n }\n\n if (!values.isMaxBenefit && !values.benefitAmount) {\n errors[\"benefitAmount\"] = S.FORM_FIELD_REQUIRED;\n }\n }\n }\n\n return errors;\n };\n\n render() {\n const {\n caseDesignOptions,\n caseDesignRiderOptions,\n productOptions,\n proposal,\n isSubmitting\n } = this.props;\n\n const riders = get(caseDesignRiderOptions, \"riders\");\n\n const productOptionsList = addDefaultOption(\"\", productOptions);\n const bpOptions = addDefaultOption(\"\", caseDesignOptions.selectBPList);\n const epOptions = addDefaultOption(\"\", caseDesignOptions.selectEPList);\n const payorOptions = addDefaultOption(\"\", caseDesignOptions.selectPayorList);\n\n return (\n \n {formProps => {\n const form = formProps.form;\n const isMaxBenefitFieldState = form.getFieldState(\"isMaxBenefit\");\n const isMaxBenefit = get(isMaxBenefitFieldState, \"value\");\n\n const isTermsAcceptedFieldState = form.getFieldState(\"isTermsAccepted\");\n const isTermsAcceptedValue = !get(isTermsAcceptedFieldState, \"value\");\n\n const isProductTypeKnownFieldState = form.getFieldState(\"isProductTypeKnown\");\n const isProductTypeKnownValue = !get(isProductTypeKnownFieldState, \"value\");\n return (\n \n \n \n \n

\n {S.PBCD_PRODUCT_SELECTION_TITLE}\n

\n \n
\n \n \n \n \n {value => {\n if(value && value >= 0){\n const productTypeID = value;\n this.props.fetchRiders(productTypeID);\n }\n }}\n \n \n \n \n \n
\n \n {S.PDC_I_AM_NOT_SURE_NOTE}} placement=\"right-start\">\n \n \n \n {value => {\n this.setState({ state: this.state });\n }}\n \n
\n \n \n
\n \n
\n \n \n \n \n
\n \n \n \n \n \n \n \n \n {!isMaxBenefit && (\n \n )}\n \n \n \n \n \n \n \n \n {riders.map(r => {\n return (\n \n\n \n {\n r.description ?\n {r.description}} placement=\"right-start\" className=\"case-design__checkboxHint\">\n \n \n : \"\"\n }\n \n );\n })}\n \n\n \n \n\n
\n \n \n {value => {\n this.setState({ state: this.state });\n }}\n \n
\n \n
\n \n \n View Scope of Authorization.\n \n \n \n \n
 
\n \n
\n \n \n  \n \n \n {\n formProps.form.change(\"formAction\", \"previous\");\n }}>\n {isSubmitting ? : S.PC_PREV_BUTTON}\n \n \n \n
\n {\n formProps.form.change(\"formAction\", \"submit\");\n }}>\n {isSubmitting ? : S.PC_SUBMIT_BUTTON}\n \n
\n \n \n  \n \n
\n
\n\n \n );\n }}\n \n );\n }\n}\n\nconst mapStateToProps = (state: IRootState) => ({\n productOptions: state.clientOptions.productOptions,\n caseDesignOptions: state.clientOptions.caseDesignOptions,\n caseDesignRiderOptions: state.proposalOptions.caseDesignRiderOptions,\n isSubmitting: state.proposalOptions.isSubmitting,\n});\n\nconst mapDispatchToProps = {\n fetchRiders\n};\n\ntype StateProps = ReturnType;\ntype DispatchProps = typeof mapDispatchToProps;\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(ProposalDetailsCaseDesign);\n","import React from \"react\";\nimport { get } from \"lodash\";\nimport { Container, Row, Col, Label } from \"reactstrap\";\nimport { connect } from \"react-redux\";\n\nimport * as S from \"../../constants/StringConstants\";\nimport { IRootState } from \"../../store/reducers\";\nimport \"./Welcome.scss\"\nimport Toast from \"../../components/Toast/Toast\";\nimport {\n hideLoggedInToast\n} from \"../../store/reducers/authentication\";\n\nexport interface IWelcomeState {\n isLoggedIn: boolean;\n}\n\nexport interface IWelcomeProps extends StateProps, DispatchProps {\n}\n\nclass Welcome extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n isLoggedIn: false\n };\n }\n\n render() {\n const { currentBroker, isLoggedIn } = this.props;\n\n var welcomeMessage = \"\";\n if(currentBroker){\n welcomeMessage = S.WELCOME_BACK_LABEL + currentBroker.firstName + ' ' + currentBroker.lastName;\n }\n return (\n
\n {/* {\n this.props.hideLoggedInToast();\n }}\n open={isLoggedIn}\n /> */}\n
\n );\n }\n}\n\nconst mapStateToProps = (state: IRootState) => ({\n currentBroker: state.auth.currentBroker,\n isLoggedIn: state.auth.isLoggedIn\n});\n\nconst mapDispatchToProps = {\n hideLoggedInToast\n};\n\ntype StateProps = ReturnType;\ntype DispatchProps = typeof mapDispatchToProps;\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(Welcome);\n","import \"./Footer.scss\";\nimport React from \"react\";\nimport { IRootState } from \"../../store/reducers\";\nimport { connect } from \"react-redux\";\nimport { Container, Row, Col } from 'reactstrap'\n\nexport interface IFooterState {\n }\n\n export interface IFooterProps extends StateProps, DispatchProps {\n }\n\n class Footer extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n isLoggedIn: false\n };\n }\n\n render() {\n\n return (
\n //