{"version":3,"sources":["ccb/shared/HO_components/requireAuthentication.js","ccb/shared/HO_components/contentContainer.js","ccb/shared/HO_components/contentContainerNoOp.js","ccb/shared/HO_components/ContentEditing.js","ccb/shared/HO_components/contentManaged.js","ccb/shared/components/Errors.js","ccb/shared/components/Check.js","ccb/shared/components/ErrorPanel.js","ccb/shared/CommonError.js","ccb/shared/components/FormattedDate.js","ccb/shared/components/FormattedCurrency.js","ccb/shared/components/Radio.js","ccb/shared/components/RadioButton.js","ccb/shared/components/RadioGroup.js","ccb/shared/components/RoundBadge.js","ccb/shared/components/Text.js","ccb/shared/components/InputMask.js","ccb/shared/components/TextArea.js","ccb/shared/components/DropDown.js","ccb/shared/components/Numeric.js","ccb/shared/components/symbols.js","ccb/shared/components/Currency.js","ccb/shared/components/Slider.js","ccb/shared/components/Date.js","ccb/shared/components/Value.js","ccb/shared/components/AddressLookup.js","ccb/shared/components/DatePicker.js","ccb/shared/components/GoogleTagManager.js","ccb/shared/components/IfAuthenticated.js","ccb/shared/components/Dialog.js","ccb/shared/components/BankHolidays.js","ccb/shared/timeout/timeout.js","ccb/shared/components/Pagination.js","ccb/shared/components/FeaturesAdvert1.js","ccb/shared/components/FeaturesAdvert2.js","ccb/shared/components/FeaturesAdvert3.js","ccb/shared/components/HelpAdvert1.js","ccb/shared/components/HelpAdvert2.js","ccb/shared/components/HelpContactSidebar.js","ccb/shared/components/TravelInsuranceAdvert1.js","ccb/shared/components/OurProducts.js","ccb/shared/timeout/TimeOutModal.js","ccb/shared/timeout/sessionTimer.js","ccb/shared/routing/PrivateRoute.js","ccb/shared/routing/NoMatch.js","ccb/shared/routing/PublicRoute.js","ccb/shared/routing/NetworkError.js","styleguide/MinusGlyph.js","styleguide/PlusGlyph.js","styleguide/Colours.js","styleguide/Typography.js","styleguide/Fonts.js","styleguide/components/Lists.js","styleguide/components/Badges.js","styleguide/components/Buttons.js","styleguide/components/Breadcrumbs.js","styleguide/components/Pagination.js","styleguide/components/Alerts.js","styleguide/components/ProgressBars.js","styleguide/components/Tabs.js","styleguide/components/Tables.js","styleguide/components/Inputs.js","styleguide/components/Adverts.js","styleguide/components/SidebarWidgets.js","styleguide/components/Modals.js","styleguide/Styleguide.js","styleguide/Routes.js","ccb/widget-send-message/Details.js","ccb/widget-send-message/Message.js","ccb/widget-send-message/MessageWidgetTest.js","ccb/widget-send-message/Confirmation.js","ccb/widget-send-message/Routes.js","documents/dom/Navigation.js","documents/dom/CodeExample.js","documents/dom/Example.js","documents/dom/Props.js","documents/dom/ComponentPage.js","documents/dom/Routes.js","documents/dom/Docs.js","ccb/shared/routing/AvailableRoutes.js","ccb/shared/routing/Interceptor.js","ccb/shared/components/AuthButton.js","ccb/shared/components/AppMeta/MetaDefault.js","ccb/shared/components/AppMeta/MetaOverride.js","ccb/shared/components/AppMeta/index.js","ccb/shared/components/ScrollToTop.js","ccb/shared/components/TabNavigation.js","ccb/shared/components/Content.js","ccb/shared/components/Markdown.js","ccb/shared/components/Switch.js","ccb/shared/components/confirmdialog/Modal.js","ccb/shared/components/confirmdialog/Confirm.js","ccb/shared/svgs/icons/Alerts.js","ccb/shared/svgs/icons/appleStoreBadge.js","ccb/shared/svgs/icons/BoxProduct.js","ccb/shared/svgs/icons/Calendar.js","ccb/shared/svgs/icons/CreditCardIcon.js","ccb/shared/svgs/icons/Envelope.js","ccb/shared/svgs/icons/Export.js","ccb/shared/svgs/icons/Facebook.js","ccb/shared/svgs/icons/GooglePlayLogo.js","ccb/shared/svgs/icons/HelpAdIcon.js","ccb/shared/svgs/icons/HelpIcon.js","ccb/shared/svgs/icons/Info.js","ccb/shared/svgs/icons/LoanIcon.js","ccb/shared/svgs/icons/MoveMoneyMakePayment.js","ccb/shared/svgs/icons/MoveMoneyManagePayee.js","ccb/shared/svgs/icons/MoveMoneyManagePayments.js","ccb/shared/svgs/icons/MoveMoneyOneOffPayment.js","ccb/shared/svgs/icons/MoveMoneyPayCard.js","ccb/shared/svgs/icons/MoveMoneyStandingOrder.js","ccb/shared/svgs/icons/MoveMoneyTransfer.js","ccb/shared/svgs/icons/MyServicesOverseasNotification.js","ccb/shared/svgs/icons/MyServicesPaperlessStatement.js","ccb/shared/svgs/icons/MyServicesPersonalDetails.js","ccb/shared/svgs/icons/MyServicesSecuritySettings.js","ccb/shared/svgs/icons/MyServicesOrganisationSettings.js","ccb/shared/svgs/icons/MyServicesSettings.js","ccb/shared/svgs/icons/MyServicesUser.js","ccb/shared/svgs/icons/Print.js","ccb/shared/svgs/icons/SavingsIcon.js","ccb/shared/svgs/icons/Success.js","ccb/shared/svgs/icons/Target.js","ccb/shared/svgs/icons/TravelInsuranceAd.js","ccb/shared/svgs/icons/Twitter.js","ccb/shared/svgs/icons/LinkedIn.js","ccb/shared/svgs/icons/Warning.js","ccb/shared/svgs/icons/Warning2.js","ccb/shared/svgs/icons/Dropdown.js","ccb/shared/svgs/index.js","ccb/shared/components/SideLink.js","ccb/shared/ErrorScroll.js","ccb/shared/validation-ccb-tests.js","ccb/shared/components/ContactNumber.js","ccb/shared/components/LinkTag.js","ccb/shared/utility.js","ccb/shared/components/EmailAddress.js","ccb/shared/constants/constants.js","ccb/shared/components/formErrors/LinkErrors.js","ccb/shared/components/AERAbbreviation.js","ccb/shared/components/formErrors/ListItem.js","ccb/shared/components/formErrors/FormErrorList.js","ccb/shared/index.js","ccb/shared/stateManager/loadStateHOC.js","ccb/authentication/shared/PersonalDetailsFormObj.js","ccb/authentication/shared/PersonalDetails.js","ccb/authentication/registration/SecurityDetails.js","ccb/authentication/registration/Register.js","ccb/authentication/registration/Blocked.js","ccb/authentication/registration/Success.js","ccb/authentication/registration/Unsuccessful.js","ccb/authentication/registration/AccountAlreadyExists.js","ccb/authentication/registration/NotAllowed.js","ccb/authentication/shared/AccessDenied.js","ccb/authentication/registration/index.js","ccb/authentication/forgotten-username/UserNameReminder.js","ccb/authentication/forgotten-username/Retrieve.js","ccb/authentication/forgotten-username/Blocked.js","ccb/authentication/forgotten-username/index.js","ccb/authentication/registration/Sidebar.js","ccb/authentication/forgotten-username/Sidebar.js","ccb/authentication/forgotten-password/Sidebar.js","ccb/authentication/update-security-details/Sidebar.js","ccb/authentication/update-organisation-details/Sidebar.js","ccb/authentication/Sidebars.js","ccb/authentication/signed-out/Sidebar.js","ccb/authentication/ServiceItems.js","ccb/authentication/UpdateSecurityDetailsServiceItems.js","ccb/authentication/UpdateOrganisationDetailsServiceItems.js","ccb/authentication/sign-in/Create.js","ccb/authentication/sign-in/Update.js","ccb/authentication/sign-in/Blocked.js","ccb/authentication/sign-in/index.js","ccb/authentication/forgotten-password/SecurityDetails.js","ccb/authentication/forgotten-password/preserveData.js","ccb/authentication/forgotten-password/Retrieve.js","ccb/authentication/forgotten-password/Blocked.js","ccb/authentication/forgotten-password/Success.js","ccb/authentication/forgotten-password/index.js","ccb/authentication/update-security-details/UpdateSecurityDetails.js","ccb/authentication/update-security-details/UpdateSecurityDetailsSuccess.js","ccb/authentication/update-security-details/index.js","ccb/authentication/update-organisation-details/OrganisationDetails.js","ccb/authentication/update-organisation-details/UpdateOrganisationDetails.js","ccb/authentication/update-organisation-details/UpdateOrganisationDetailsSuccess.js","ccb/authentication/update-organisation-details/index.js","ccb/authentication/signed-out/SignedOut.js","ccb/authentication/Routes.js","ccb/authentication/index.js","ccb/messaging-twoway/utility.js","ccb/messaging-twoway/View/index.js","ccb/messaging-twoway/New/SendNewMessage.js","ccb/messaging-twoway/FormatBody.js","ccb/messaging-twoway/New/Confirmation.js","ccb/messaging-twoway/New/index.js","ccb/messaging-twoway/Conversation/View.js","ccb/messaging-twoway/Conversation/Reply/Reply.js","ccb/messaging-twoway/Conversation/Reply/Confirmation.js","ccb/messaging-twoway/Conversation/Reply/index.js","ccb/messaging-twoway/Conversation/Delete/Delete.js","ccb/messaging-twoway/Conversation/Delete/Confirmation.js","ccb/messaging-twoway/Conversation/Delete/index.js","ccb/messaging-twoway/Conversation/index.js","ccb/messaging-twoway/MessagingTwoway.js","ccb/messaging-twoway/SummaryMenuItems.js","ccb/messaging-twoway/MenuItems.js","ccb/messaging-twoway/Routes.js","ccb/messaging-twoway/Sidebars.js","ccb/messaging-twoway/Conversation/Sidebar.js","ccb/messaging-twoway/New/Sidebar.js","ccb/messaging-twoway/View/Sidebar.js","ccb/messaging-twoway/Conversation/Delete/Sidebar.js","ccb/messaging-twoway/Conversation/Reply/Sidebar.js","ccb/messaging-twoway/index.js","ccb/shared/constants/rules.js","ccb/savings-servicing/PayByCard/MakePayment.js","ccb/savings-servicing/PayByCard/ReviewPayment.js","ccb/savings-servicing/PayByCard/CompletePayment.js","ccb/savings-servicing/PayByCard/SuccessfulPayment.js","ccb/savings-servicing/PayByCard/PaymentBreadcrumbs.js","ccb/savings-servicing/PayByCard/index.js","ccb/savings-servicing/Savings.js","ccb/savings-servicing/shared/WithdrawalAccount.js","ccb/savings-servicing/shared/NominatedAccount.js","ccb/savings-servicing/shared/WithdrawalWithClose.js","ccb/savings-servicing/NoticeToWithdrawal/CreateNoticeToWithdraw/Create.js","ccb/savings-servicing/NoticeToWithdrawal/CreateNoticeToWithdraw/Confirmation.js","ccb/savings-servicing/NoticeToWithdrawal/CreateNoticeToWithdraw/CreationSuccess.js","ccb/savings-servicing/utility.js","ccb/savings-servicing/NoticeToWithdrawal/CreateNoticeToWithdraw/CreateNotice.js","ccb/savings-servicing/NoticeToWithdrawal/ListNoticeToWithdraws/NoticeToWithdraw.js","ccb/savings-servicing/NoticeToWithdrawal/ListNoticeToWithdraws/index.js","ccb/savings-servicing/NoticeToWithdrawal/CancelNoticeToWithdraw/CancellationSuccess.js","ccb/savings-servicing/NoticeToWithdrawal/CancelNoticeToWithdraw/Cancel.js","ccb/savings-servicing/NoticeToWithdrawal/CancelNoticeToWithdraw/index.js","ccb/savings-servicing/NoticeToWithdrawal/Routes.js","ccb/savings-servicing/MakeWithdrawal/MakePayment.js","ccb/savings-servicing/MakeWithdrawal/Confirmation.js","ccb/savings-servicing/MakeWithdrawal/WithdrawalSuccess.js","ccb/savings-servicing/MakeWithdrawal/MakeWithdrawal.js","ccb/savings-servicing/MakeWithdrawal/Routes.js","ccb/savings-servicing/shortApply/storageName.js","ccb/savings-servicing/shortApply/ShortApplyList.js","ccb/savings-servicing/shortApply/ShortApplyIndex.js","ccb/savings-servicing/shared/ShortApplyApplication.js","ccb/savings-servicing/shortApply/requestPayload.js","ccb/savings-servicing/shared/ShortApplyReview.js","ccb/savings-servicing/shortApply/ApplicationSuccess.js","ccb/savings-servicing/shortApply/ShortApplyProduct.js","ccb/savings-servicing/shortApply/ShortApply.js","ccb/savings-servicing/Routes.js","ccb/savings-servicing/shared/ApplyAccountSummaryComponent.js","ccb/savings-servicing/SummaryMenuItems.js","ccb/savings-servicing/MenuItems.js","ccb/savings-servicing/shortApply/ShortApplySidebar.js","ccb/savings-servicing/index.js","ccb/user-management/PersonalDetails/View/AboutYou.js","ccb/user-management/PersonalDetails/View/YourAddress.js","ccb/user-management/PersonalDetails/View/index.js","ccb/user-management/PersonalDetails/Edit/AboutYou.js","ccb/user-management/PersonalDetails/Edit/YourAddress.js","ccb/user-management/PersonalDetails/Edit/CorrespondenceAddress.js","ccb/user-management/PersonalDetails/Edit/ContactPreferences.js","ccb/user-management/PersonalDetails/Edit/Confirmation.js","ccb/user-management/PersonalDetails/Edit/index.js","ccb/user-management/PersonalDetails/index.js","ccb/user-management/Routes.js","ccb/user-management/ServiceItems.js","ccb/user-management/PersonalDetails/PersonalDetailsServiceItems.js","ccb/user-management/index.js","ccb/services/RegisteredServiceItems.js","ccb/services/ServicesIndex.js","ccb/services/Services.js","ccb/services/Routes.js","ccb/services/MenuItems.js","ccb/services/SummaryMenuItems.js","ccb/services/index.js","ccb/widget-select-account/SelectAccounts.js","ccb/widget-select-account/SelectAccountsTest.js","ccb/widget-select-account/Routes.js","ccb/widget-select-account/index.js","ccb/widget-system-message/CustomAlert.js","ccb/widget-system-message/SystemMessage.js","ccb/widget-system-message/index.js","documents/dom/componentData.js","lib/interact-authentication/reducers/forgottenUserNameDefinition.js","lib/interact-authentication/actions/forgottenUserNameTypes.js","lib/interact-authentication/reducers/registrationDefinition.js","lib/interact-authentication/actions/registrationTypes.js","lib/interact-authentication/reducers/loginDefinition.js","lib/interact-authentication/actions/loginTypes.js","lib/interact-authentication/reducers/forgottenPasswordDefinition.js","lib/interact-authentication/actions/forgottenPasswordTypes.js","lib/interact-authentication/reducers/updateSecurityDetailsDefinition.js","lib/interact-authentication/actions/updateSecurityDetailsTypes.js","lib/interact-authentication/reducer.js","lib/interact-authentication/mapStateToProps.js","lib/interact-authentication/actions/loginActions.js","lib/interact-authentication/actions/registrationActions.js","lib/interact-authentication/actions/forgottenUserNameActions.js","lib/interact-authentication/actions/forgottenPasswordActions.js","lib/interact-authentication/actions/updateSecurityDetailsActions.js","lib/interact-authentication/mapDispatchToProps.js","lib/interact-authentication/index.js","lib/savings-servicing/reducers/withdrawalDefinition.js","lib/savings-servicing/actions/withdrawalTypes.js","lib/savings-servicing/reducers/shortApplyDefinition.js","lib/savings-servicing/actions/shortApplyTypes.js","lib/savings-servicing/reducer.js","lib/savings-servicing/mapStateToProps.js","lib/savings-servicing/actions/withdrawalActions.js","lib/savings-servicing/actions/shortApply.js","lib/savings-servicing/mapDispatchToProps.js","lib/savings-servicing/index.js","documents/examples/shared/components/Check/CheckExample.js","documents/examples/shared/components/Currency/CurrencyExampleGBP.js","documents/examples/shared/components/Currency/CurrencyExampleLKR.js","documents/examples/shared/components/Date/DateExample.js","documents/examples/shared/components/DatePicker/DatePicker.js","documents/examples/shared/components/Dialog/DialogExample.js","documents/examples/shared/components/DropDown/DropDownExample.js","documents/examples/shared/components/Errors/ErrorsExample.js","documents/examples/shared/components/FormattedCurrency/FormattedCurrencyGBP.js","documents/examples/shared/components/FormattedCurrency/FormattedCurrencyLKR.js","ccb/local-shared/constants/contacts.js","ccb/local-shared/constants/urls.js","ccb/local-shared/index.js","documents/examples/shared/components/FormattedDate/FormattedDateExample.js","documents/examples/shared/components/FormattedDate/FormattedDateExampleWithFormat.js","documents/examples/shared/components/InputMask/CheckExample.js","documents/examples/shared/components/Numeric/NumericExample.js","documents/examples/shared/components/Numeric/NumericExample2.js","documents/examples/shared/components/Pagination/PaginationExample.js","documents/examples/shared/components/Radio/RadioExample.js","documents/examples/shared/components/RadioButton/RadioButtonExample.js","documents/examples/shared/components/RoundBadge/RoundBadgeExample.js","documents/examples/shared/components/Text/TextExample.js","documents/examples/shared/components/Text/Textsample.js","documents/examples/shared/components/TextArea/TextAreaExample.js","ccb/account-type-savings/Balance.js","ccb/account-type-savings/MaturityDetails.js","ccb/account-type-savings/Transactions.js","ccb/account-type-savings/Overview.js","ccb/account-type-savings/Links.js","ccb/account-type-savings/SavingsSummary.js","ccb/account-type-savings/SavingsDetailSummary.js","ccb/account-type-savings/SavingsDetails.js","ccb/accounts/AccountSummary.js","ccb/accounts/AccountsList.js","ccb/accounts/AccountDetails.js","ccb/accounts/AccountDetailsTemplate.js","ccb/accounts/NominatedAccount.js","ccb/accounts/Accounts.js","ccb/accounts/SummarySideBar.js","ccb/accounts/Sidebars.js","ccb/accounts/DetailSideBar.js","ccb/accounts/MenuItems.js","ccb/accounts/SummaryMenuItems.js","ccb/accounts/Routes.js","ccb/accounts/Components/DetailPage/Tabs/Transaction/ExportAccountCSV.js","ccb/accounts/Components/DetailPage/Tabs/TabNavItem.js","ccb/accounts/Components/DetailPage/Tabs/Transaction/TransactionDateRange.js","ccb/accounts/Components/DetailPage/Tabs/Transaction/TransactionDate.js","ccb/accounts/Components/DetailPage/Tabs/Transaction/Transaction.js","ccb/accounts/Components/DetailPage/Tabs/Transaction/TabTransaction.js","ccb/accounts/Components/DetailPage/Tabs/Summary/TabSummary.js","ccb/accounts/Components/DetailPage/Tabs/Document/DownloadDocument.js","ccb/accounts/Components/DetailPage/Tabs/Document/Document.js","ccb/accounts/Components/DetailPage/Tabs/Document/TabDocument.js","ccb/accounts/Components/ListPage/ListPageTransaction.js","ccb/accounts/Components/RedirectByAccountDropdown.js","ccb/accounts/Components/DetailPage/Tabs/Transaction/AccountSupportDropdown.js","ccb/accounts/MaturityMessages/MaturityAlert.js","ccb/accounts/index.js","lib/authentication/reducers/registrationDefinition.js","lib/authentication/actions/registrationTypes.js","lib/authentication/reducers/setupCredentialsDefinition.js","lib/authentication/reducers/tokenAccountDefinition.js","lib/authentication/reducer.js","lib/authentication/actions/registrationActions.js","lib/authentication/actions/setupCredentialsActions.js","lib/authentication/actions/registrationTokenAction.js","lib/authentication/actions/activation.js","lib/authentication/mapDispatchToProps.js","lib/authentication/index.js","ccb/shared/stateManager/stateUtility.js","documents/examples/shared/components sync /^/.*$","reducers/interactCCbReducers.js","reducers/index.js","lib/secure-fetch/secureFetch.js","ccb/widget-sidebar/DefaultSidebar.js","ccb/two-factor/NoDestinations.js","ccb/two-factor/ReturnPages.js","ccb/two-factor/Destinations.js","ccb/two-factor/SelectDestination.js","ccb/two-factor/Failed.js","ccb/two-factor/ExpiredCode.js","ccb/two-factor/ExpiredChallenge.js","ccb/two-factor/ExceededAttempts.js","ccb/two-factor/Error.js","ccb/two-factor/CodeForm.js","ccb/two-factor/Code.js","ccb/two-factor/ExceededRequests.js","ccb/two-factor/DestinationAuth.js","ccb/two-factor/SelectDestinationAuth.js","ccb/two-factor/CodeFormAuth.js","ccb/two-factor/CodeAuth.js","ccb/two-factor/TwoFactorFlow.js","ccb/two-factor/TwoFactorModal.js","ccb/two-factor/TwoFactorSidebar.js","ccb/two-factor/TwoFactorPages.js","ccb/two-factor/Sidebars.js","ccb/widget-sidebar/Registered.js","ccb/widget-sidebar/Sidebar.js","ccb/widget-menu/Registered.js","ccb/widget-menu/Menu.js","ccb/connect/Home.js","ccb/manager/components/authentication-oidc/SignIn.js","ccb/manager/components/authentication-oidc/SignOut.js","ccb/manager/components/authentication-oidc/Callback.js","ccb/manager/components/authentication-oidc/PrivateRoute.js","ccb/manager/components/authentication-oidc/SignOutCallback.js","ccb/manager/components/authentication-oidc/Routes.js","ccb/connect/Connect.js","App.js","serviceWorker.js","config.js","config.env.js","index.js","lib/organisation/reducers/organisationDefinition.js","lib/organisation/actions/organisationTypes.js","lib/organisation/reducer.js","lib/organisation/mapStateToProps.js","lib/organisation/actions/organisationActions.js","lib/organisation/mapDispatchToProps.js","lib/organisation/index.js","lib/accounts/reducers/interestRateDefinition.js","lib/accounts/actions/interestRateTypes.js","lib/accounts/reducers/documentsDefinition.js","lib/accounts/actions/documentTypes.js","lib/accounts/actions/MaturityActions.js","lib/accounts/reducers/maturityDefinition.js","lib/accounts/reducer.js","lib/accounts/actions/interestRateActions.js","lib/accounts/actions/documentActions.js","lib/accounts/mapDispatchToProps.js","lib/accounts/index.js"],"names":["requireAuthentication","contentContainer","Component","container","props","publishedContent","fetchPublishedContentIfNeeded","React","connect","mapStateToProps","mapDispatchToProps","forwardRef","ContentEditing","onClick","e","preventDefault","stopPropagation","tag","cmsTag","editContent","pendingContent","managed","content","published","pending","Object","keys","map","key","ekey","publishedValue","pendingValue","updatedValue","defaultValue","state","hover","hoverOn","bind","hoverOff","this","setState","className","tagEdited","children","onShow","noEdit","classNames","getClassNames","onMouseEnter","onMouseLeave","ContentType","contentManaged","ContentManagedComponent","managedContent","template","validation","rules","templates","forEach","rule","message","trans","errors","applyTemplate","bindings","text","wrapper","renderText","search","RegExp","bindingKey","replace","showOrigin","contentValue","type","name","binding","contentErrorValue","contentOptionValue","contentTextValue","t","Settings","cmsAvailable","componentContent","elementContent","element","error","Errors","dropDown","Options","options","prefix","match","path","substring","indexOf","composedTag","id","inEditMode","rest","contentEditModeSuccess","contentEditModeRequest","saveContentSuccess","saveContentFailed","loadStoredContent","saveContent","contentEdited","contentSaved","setEditMode","isFetching","loadPublishedContentRequest","loadPublishedContentFailed","loadPublishedContentSuccess","shouldFetchPublishedContent","editContentRequest","editContentFailed","editContentSuccess","saveContentRequest","loadPublishedContent","fetchPendingContentIfNeeded","shouldFetchPendingContent","loadPendingContentRequest","loadPendingContentSuccess","loadPendingContentFailed","loadPendingContent","commitContent","pushContent","contentCommitted","contentPushed","commitContentRequest","commitContentFailed","commitContentSuccess","pushContentRequest","pushContentFailed","pushContentSuccess","deleteContentRequest","deleteContentFailed","deleteContentSuccess","deleteContent","historyListRequest","historyListFailed","historyListSuccess","fetchHistoryList","historyList","fetchHistoryListIfNeeded","shouldFetchHistoryList","historyDetail","historyDetailRequest","historyDetailFailed","historyDetailSuccess","resetHistoryDetail","fetchHistoryDetail","savedPendingContent","setShowOrigin","dispatch","staticContext","history","location","withRouter","HasErrors","approval","dirty","approved","failed","field","fieldName","Validate","push","length","FormFeedback","aria-live","aria-relevant","label","subLabel","description","suffix","showErrors","disabled","required","checked","labelClassName","groupClassName","k","value","FormGroup","trim","Input","aria-describedby","invalid","isInvalid","valid","isValid","Label","htmlFor","check","Fragment","CommonError","errorList","indexValue","showError","index","FormattedDate","format","dateFormat","date","dateStr","moment","FormattedCurrency","quantity","qty","parseFloat","isNaN","fallback","setValue","Button","color","active","aria-hidden","RoundBadge","Badge","placeholder","inputPrefix","inputSuffix","input","inputGroupClassName","items","InputGroupAddon","addonType","InputGroupText","InputGroup","isRequired","attachAddons","maxLength","mask","maskChar","onChange","onBlur","pushOption","child","defaultText","optionTemplate","_dropDownOptions","Array","isArray","i","c","dropDownOptions","dp","dpPat","pattern","inputOverride","func","target","found","toString","validity","event","inputMode","symbols","AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTC","BTN","BWP","BYR","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EEK","EGP","ERN","ETB","ETH","EUR","FJD","FKP","GBP","GEL","GGP","GHC","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HRK","HTG","HUF","IDR","ILS","IMP","INR","IQD","IRR","ISK","JEP","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LTC","LTL","LVL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RMB","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLL","SOS","SRD","SSP","STD","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRL","TRY","TTD","TVD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VEF","VND","VUV","WST","XAF","XBT","XCD","XOF","XPF","YER","ZAR","ZWD","dpProp","code","maxDigits","position","currency","symbol","decimal","tempExtract","endsWith","digitPat","startsWith","withInput","inputClassName","step","repeat","Row","Col","sm","calendar","validRange","renderInput","openCalendar","tabIndex","aria-label","copytext","timeFormat","closeOnTab","val","closeOnSelect","isValidDate","Value","decimalPlaces","formattedValue","Number","toFixed","selectAddress","address","callback","response","processAddresses","json","ResponseStatus","Addresses","form","FormUpdater","update","request","Postcode","HouseNumber","fetch","Connection","baseUrl","method","headers","body","JSON","stringify","then","errored","catch","invalidPostcodeFormat","notFound","singleAddress","multipleAddresses","addressComponents","ListGroupItem","BuildingName","BuildingNumber","AddressLine1","Alert","role","Card","ListGroup","flush","getDaysInMonth","year","month","daysInMonth","changeDate","f","data","day","dateOnChange","renderMonths","renderDays","renderYears","dateOnBlur","startFrom","days","showFutureDate","slice","from","counter","months","years","thisYear","Date","getFullYear","dayLabel","monthLabel","yearLabel","daySelect","monthSelect","yearSelect","selectedDate","dateArr","split","hidden","GoogleTagManager","dataLayerName","scriptId","window","script","document","createElement","gtmScriptNode","getElementById","scriptText","createTextNode","textContent","appendChild","head","gtm","gtmParts","gtmId","additionalEvents","previewVariables","scheme","noScriptAsReact","scriptAsReact","Dialog","isOpen","title","Modal","ModalHeader","ModalBody","ModalFooter","BankHolidays","holidayList","getDerivedStateFromProps","nextProps","holidays","setBankHolidays","copytextValue","interval","customccbSavingsServicingDefinition","previous","next","Total","Offset","Size","getNextPage","getPreviousPage","totalPages","Math","ceil","currentPage","size","FeaturesAdvert1","testdata","xs","href","FeaturesAdvert2","FeaturesAdvert3","HelpAdvert1","HelpAdvert2","markdown","HelpContactSidebar","faqClick","navigator","userAgent","includes","open","rel","Session","isAuthenticated","to","TravelInsuranceAdvert1","OurProducts","toggle","collapse","fill","width","Collapse","TimeOutModal","clickedYes","currentTime","getTime","sessionStorage","setItem","startTimer","hideTimeoutModal","clickedNo","appUtility","userSignout","abandon","clearTimer","userLogout","timeoutUrl","timeoutMessage","count","timer","modalVisible","TimerCountDown","contents","SessionTimeout","yesButton","noButton","SignInTimeout","ForgottenPasswordTimeout","RegistreationTimeout","TimeOut","timeOutObj","timeoutID","checkTimer","clearInterval","setInterval","goInactive","timeoutSpan","sessionExpiry","ticketExpiry","elapsedMinutes","getItem","showTimeoutModal","round","url","onTimeout","beforeTimeout","sessionTimer","timeoutObj","timeout","PrivateRoute","pathname","finishTwoFactor","TwoFactor","getStatus","component","render","prevState","computedMatch","lastRequestTime","mapDispatchToProps2FA","NoMatch","stage","metaDescription","hash","NetworkError","onGoBack","goBack","MinusGlyph","alt","src","PlusGlyph","Colours","rgbToHex","rgb","parseInt","colourPanels","querySelectorAll","list","colourPanel","RGBBackgroundColor","getComputedStyle","backgroundColor","backgroundColourCombination","Typography","Fonts","Lists","lg","Badges","linkTitle","linkDescription","linkURL","linkID","iconImage","showMessageCount","Buttons","ButtonGroup","ButtonDropdown","dropdownOpen","DropdownToggle","caret","DropdownMenu","DropdownItem","header","divider","Breadcrumb","BreadcrumbItem","PaginationStyleguide","AlertsStyleguide","visible","onDismiss","ProgressBars","Progress","multi","bar","Tabs","tablist","TabNavigation","init","current","activeTab","Nav","tabs","NavItem","NavLink","aria-selected","aria-controls","setTab","innerRef","refs","onKeyDown","tabKeyDown","TabContent","TabPane","tabId","aria-labelledby","Fade","in","ref","panels","panelKeyDown","Tables","Table","scope","data-transaction-id","Inputs","submit","textInput","stop","textInput2","DropDownInput","DropDownInput2","textAreaInput","textAreaInput2","sliderInput","sliderInput2","dateInput","greaterThanToday","dateInput2","datePickerInput","datePickerInput2","radioInput","radioInput2","radioInput3","checkInput","checkInput2","checkInput3","checkInput4","checkInput5","checkInput6","checkInput7","currencyInput","currencyInput2","maskInput","maskInput2","numericInput","regex","numericInput2","sortcode","sortcode2","Form","autoComplete","onSubmit","extAreaInput2","legend","FormText","Adverts","SidebarWidgets","Modals","StyleguideIndex","toggleData","toggleValue","arrayIndex","toggleDescription","Breadcrumbs","Alerts","Routes","Styleguide","Details","accountOptions","item","AccountName","Balance","Currency","CurrencyCode","AccountKey","Key","replyConversation","selectedData","relatedAccountObj","ConversationKey","MessageBody","Reason","AccountNumber","ProductType","ExtendedProperties","saveData","onChangeAccount","source","accounts","accountKey","Accounts","find","account","getCurrencySymbol","relatedAccount","Message","currentStage","fetchAccountsIfNeeded","alert","replyMessageStatus","messagingTwowayDefinition","accountsDefinition","mapDispatchToPropsMessaging","mapDispatchToPropsAccounts","MessageWidgetTest","Confirmation","onCancel","initializeMoveMoney","resetData","renderSuccessContent","resetReply","alertId","Success","Failed","default","TransferWidgetTest","routeProps","Navigation","components","CodeExample","Example","toggleCode","showCode","example","ExampleComponent","require","componentName","Props","ComponentPage","examples","AvailableRoutes","AccountsRoutes","AuthenticationRoutes","ServicesRoutes","StyleguideRoutes","MessagingTwowayRoutes","SavingsServicingRoutes","WidgetSelectAccountRoutes","WidgetSendMessageRoutes","DocumentsRoutes","UserManagementRoutes","lastUrl","Interceptor","fetchIntercept","register","config","requestError","Promise","reject","startTwoFactor","continueTwoFactor","status","requestUrl","getUrl","get","responseError","inProgress","TwoFactorWrapper","AuthIndicator","logoutHandler","prevProps","customer","Name","AuthButton","MetaDefault","titleTemplate","defaultTitle","process","MetaOverride","ScrollToTop","scrollTo","refreshMe","PureComponent","which","keyCode","names","shiftKey","focus","rightIndex","leftIndex","setTimeout","clientHeight","click","createRef","Hacker","style","Image","toLowerCase","overrides","img","ConfirmModal","modalOpen","confirm","cancel","result","onClose","confirmText","cancelText","confirmColor","cancelColor","modalHeader","cancelButton","Confirm","el","resolve","defaultProps","SVG","height","xmlns","x","y","enableBackground","viewBox","d","xmlnsXlink","data-name","transform","rx","version","points","fillRule","clipRule","gradientUnits","x1","y1","x2","y2","gradientTransform","offset","stopColor","opacity","cx","cy","r","Icon","BoxProduct","Calendar","CreditCardIcon","Envelope","Export","Facebook","GooglePlayLogo","HelpAdIcon","HelpIcon","Info","LoanIcon","MoveMoneyMakePayment","MoveMoneyManagePayee","MoveMoneyManagePayments","MoveMoneyOneOffPayment","MoveMoneyPayCard","MoveMoneyStandingOrder","MoveMoneyTransfer","MyServicesOverseasNotification","MyServicesPaperlessStatement","MyServicesPersonalDetails","MyServicesSecuritySettings","MyServicesOrganisationSettings","MyServicesSettings","MyServicesUser","Print","SavingsIcon","Target","TravelInsuranceAd","Twitter","LinkedIn","Warning","Warning2","Dropdown","SideLink","linkImage","iconImageFill","iconImageWidth","newMessageCount","ErrorScroll","ccbEmail","expects","validate","test","ccbPhone","compareWithAvailableBalance","pars","comparison","balance","String","minAmountCheck","minAmountCheckWithInputValue","par","parValue","maxAmountCheckWithInputValue","approve","addTest","ContactNumber","MIN_SHORT_APPLY_AGE","SHOW_IN_SHORTAPPLY","ACCOUNT_TYPE_CODE","DATE_FORMAT_DDMMYYY","DATE_FORMAT_YYYYMMDD","STANDARD_DATE_FORMAT","STANDARD_DATE_FORMAT_TIME","MARITAL_STATUS_CODE","C","H","D","E","M","P","S","T","W","O","DEPOSIT_METHOD","Cheque","DEPOSIT_SOURCE","GENDER","F","INTEREST_DESTINATION","thisAccount","nominatedAccount","INTEREST_PAYMENT_FREQUENCY","MO","YE","YES","NO","LinkErrors","tagType","FormErrorList","getTitle","bespokeTitle","addressId","output","validations","continainingElement","validationValue","fieldkey","updateFieldKey","aria-atomic","locale","language","loadStateHOC","storageName","StateManagedComponent","updateUrl","updateState","newUrl","queryString","stringifyUrl","query","refreshUrl","urlParams","stateUtility","setPageState","definition","getComponentState","stateData","resetComponentState","currentState","parse","formData","_","isEmpty","excludePaths","firstname","lastname","postcode","b_day","account_number","PersonalDetails","verify","accountdetails","resetTokenAccount","disabledForm","disableForm","ccbAuthenticationDispatch","SecurityDetails","componentDidMount","componentWillUnmount","resetStage","resetRegistration","birthDay","setCredentials","registration","lastUsername","username","Ticket","Username","CredentialValues","password","Context","memorableNumber","TermsAndConditionsDocumentVersion","IdentityRequest","DateOfBirth","buildErrorMsg","credentialsSetup","errorsExist","errorMsg","Status","getErrors","UsernameAlreadyExists","random","floor","NotEnoughCredentials","InvalidUsername","range","min","max","confirmUsername","compare","confirmPassword","confirmMemorableNumber","IdentityResponse","CredentialErrors","errorObj","Spinner","mapDispatchToProps_shared","Register","setStage","timeoutReset","fetching","Entries","Type","activate","checkIfFetching","tokenAccountDetails","getActivationTitle","token","getTokenAccount","AccountTokenId","resetActivation","params","activationCheck","CheckStatus","stageId","Timeout","IdentifyAndVerifyFailedWarning","IdentifyAndVerifyFailed","InvalidTicket","Invalid","ActivationStatus","authenticationDefinition","customccbAuthenticationDefinition","Blocked","Unsuccessful","AccountAlreadyExists","NotAllowed","AccessDenied","Registration","setReferrer","re","exact","UserNameReminder","margin","Retrieve","retrieveUserName","retrivedUserName","NotRegistered","resetForgottenUN","ForgottenUsername","RegistrationSidebar","ForgottenNameSidebar","ForgottenPasswordSidebar","UpdateSecurityDetailsSidebar","AuthenticationSidebars","Sidebar","UpdateOrganisationDetailsSidebar","AuthenticationServiceItems","serviceItem","Media","left","middle","forceBlock","CreateLogin","toggleRememberMe","createLogin","setRememberMeUserName","rememberMeFlag","cachedUserName","countValue","formCopy","rememberMe","login","signoutMessage","removeItem","remembermeUsername","localStorage","loginStatus","Utility","hexDecode","referrer","set","SessionTicket","Customer","TimeoutReset","UnauthorizedSignedOut","CredentialBlocked","Inactive","warning","mapSharedDispatchToProps","UpdateLogin","contextStr","numberSuffix","number","updateLogin","SignInTicket","pin","Data","CredentialStates","Positions","numberStatus","rememberme","credentialsActivate","activationSent","hexEncode","ErrorListHandler","errorOrder","UnknownStatus","pos1","pos2","pos3","autoFocus","setupcredentialsActivate","RequireActivationTicket","SignIn","Create","Update","updateForgotten","setupCredentialsActivate","dob","ResetUserCredentialsTicket","updateForgottenDetails","errorMsgObj","preserveData","setFormData","s","getFormData","resetForgotten","nextKeyCount","keyCount","forgottenPasswordDetails","nextState","resetForgottenPassword","setupCredentials","authenticationDispatch","ForgottenPassword","UpdateSecurityDetails","updateCredentials","submitForm","usernameRules","passwordRules","confirmPasswordRules","memorableNumberRules","confirmMemorableNumberRules","updateSecurityDetailsReceive","updateSecurityDetails","fieldErrors","MustHaveCredential","UsernameExists","NoRegistered","InvalidCredentials","ticket","userName","ccbUpdateDispatch","UpdateSecurityDetailsSuccess","UpdateSecurityDetailsIndex","OrganisationDetails","organisation","FullName","md","CorrespondenceAddress","Street","District","Town","County","ContactDetails","LandlineTelephone","MobileTelephone","Email","MarketingPreferences","Telephone","Post","UpdateOrganisationDetails","codes","details","PersonId","UserId","organisationfetch","organisationDetailsFetch","detailsCount","CustomerId","Id","orgs","org","UpdateOrganisationDetailsSuccess","OrganisationDetailsIndex","SignedOut","messagingUtility","stripEndQuotes","View","getMessages","fetchAllMessagesIfNeeded","previousOffset","TotalConversationsCount","nextOffset","allMessages","messageList","Conversations","sort","a","b","LastModifiedDate","Conversation","MessageCount","HasUnreadMessages","SendNewMessage","AccountStatus","messageBody","subject","accountList","FormatBody","lines","formattedBody","line","Reference","Messages","CreatedDat","Body","NewMessage","ViewConversation","isConversationClosed","closed","ConversationProperties","convProp","executeAction","viewMessage","viewConversation","accountTypeField","accountField","supportActions","messages","accountSuffix","Supports","Sender","SenderType","CreatedDate","ReplyConversation","ReplyConfirmation","ReplyIndex","saveReplyData","setReplyStage","Reply","transactionData","DeleteConversation","confirmDelete","deleteConversation","SortCode","DeleteConfirmation","deleteMessageStatus","DeleteIndex","Delete","MessagingTwoway","resetMessages","New","SummaryMenuItems","updateCount","getNewMessageCount","Count","MessagingTwowayMenuItems","menuItem","MessagingTwowaySidebars","RULES","ammountFormat","ammountFormat2","activationCode2","MakePayment","updateStage","filterAccounts","defaultSelect","amount","paymentType","cardNumber","expiryDate","securityCode","ReviewPayment","substr","CompletePayment","iframeLoaded","iframeRef","contentWindow","formRef","payment","urlParsed","ThreeDSecureUrl","action","param","border","sandbox","onLoad","SuccessfulPayment","PaymentReference","PaymentBreadcrumbs","PayByCard","initialState","cc","cardExpiryDate","resetPayByCard","$set","validateStage","submitMake","makePayByCard","Amount","CardNumber","CardHoldersName","ExpiryDate","Address","PostCode","SecurityCode","PaymentType","SaveCardDetails","errorText","IncorrectPaymentDetails","Declined","CardBlocked","LimitExceeded","renderStage","formState","submitComplete","acknowledgement","completePayByCard","PaymentKey","ThreeDSecureResult","payByCardDefinition","mapDispatchToPropsPayment","Savings","WithdrawalAccount","withdrawDate","NoticePeriodInDays","noticePeriod","RemainingAllowance","brandProductType","NominatedAccount","NominatedAccountNumber","NominatedSortCode","WithdrawalWithClose","updateForm","updatCurrency","newValue","Intl","NumberFormat","charAt","onSubmitHandler","closeAccount","reference","onCancelled","actionDate","filter","mapSavingsServicingDispatchToProps","onSubmitWithdrawal","cancelWithdrawal","utc","closeOption","NominatedAccountName","makeWithdrawResponse","CreationSuccess","resetCreateNoticeToWithdraw","dateValidation","isWeekEnd","isHoliday","CreateNotice","setForm","resetMakeWithdrawal","getActionDate","NumberOfDays","add","createdDate","makeaWithdraw","formCloseAccount","WithdrawalInformation","ActionDate","CloseAccount","onCancelleWithdrawal","NoticeToWithdraw","onCancelHandler","loopIndex","withdrawal","Cancellable","NoticeToWithdrawList","setInitialRange","To","startOf","toISOString","From","subtract","Latest","getTransactions","transactions","Transactions","transaction","Index","TransactionIdentifier","fetchSavingsAccountTransactionsIfNeeded","Range","pendingTransactions","allNotices","savingsMapDispatchToProps","CancellationSuccess","resetCancellation","Cancel","onConfirmCancellation","cancelNoticeToWithdraw","identifier","selectedAccountKey","selectedAccount","selectedTransaction","CancelNoticeToWithdrawView","referenceNo","cancellationResponse","fetchSavingsAccountTransactions","NoticeToWithdrawals","WithdrawalSuccess","MakeWithdrawal","MakeWithdrawalRoute","storage","ShortApplyList","renderOutput","allProducts","shortApplyAvailable","product","Display_For_Short_Apply","page","DepositProducts","contacts","CONTACTS","OptionOneAndThree","getAllProducts","checkLimitExceeded","isShortApply","resetShortapply","setStateDynamic","userManagementDefinition","customccbOrganisationDefinition","userManagementDispatches","ccbOrganisationDispatches","ShortApplyApplication","selectedProduct","selectedOrganisationDetails","organisationDetailsChangedInputRules","organisationSource","orgDetailsChanged","organisationDetailsChangedInput","CONSTANTS","depositAmount","Minimum_investment","Maximum_investment","depositSource","depositMethod","updateCurrency","updateOrganisationDetails","orgId","selectedOrgDetails","organisationDetails","onEvent","actualForm","pageStage","changeStage","valueToCurrencyFormat","organisationList","RegisteredAddress","productName","Product_Name","organisationDropdownOption","dropdownOptions","getPayload","reviewForm","userDetails","Application","DepositFundsOption","ProductTypeCode","Product_Code","DepositAmount","PayInterestIntoAnotherAccount","InterestPaymentFrequency","Interest_Frequency","DOB","FirstName","Surname","informationConfirm","formItems","accuracyConfirm","interestPaymentFrequency","saveShortApply","requestPayload","changeDetails","fetchUserDetailsIfNeeded","Title","MiddleName","Product_Specific_TAndCs_Link","Summary_box_url","ApplicationSuccess","saveShortApplyData","ShortApplyProduct","selectProduct","reviewPaymentHeader","destination","resetSaveShortApply","hasStage","setGlobalValue","saveShortApplyResponse","ShortApplyReview","thisState","accountsDispatchToProps","ShortApply","ShortApplyIndex","ApplyAccountSummaryComponent","getProducts","products","sortProducts","Product_Status","CardHeader","CardBody","To_apply_you_must_list","Key_facts_list","CardFooter","sortedList","orderBy","hideMenu","removeClass","SavingsServicingMenuItems","URLS","AboutYou","yourTitle","firstName","middleNames","lastName","emailAddress","workNumber","mobileNumber","EmailAddress","WorkNumber","MobileNumber","YourAddress","houseNameFlatNumber","houseNumber","addressLine1","addressLine2","townCity","county","AddressLine2","PostTown","resetUserDetails","resetContactOptions","fetchContactOptionsIfNeeded","aboutYouForm","email","ConfirmEmailAddress","HomeNumber","phone","onChangeNameNumber","addressOnEvent","yourAddressForm","buildingNameNumberValidate","country","correspondenceAddressForm","ContactPreferences","hasOwnProperty","call","onChangeContactOptions","contactOptions","saveDataContactOptions","newContactOptions","Option","getContactOptionLabels","contactListOption","otherOptions","lebelItem","newOptions","renderDoneButton","updateUserDetailSuccess","Edit","childForm","submitData","updateUserDetails","PrimaryContactNumber","LastUpdated","Organisation","PoBox","SuiteNumber","FlatNumber","VillageOrDistrict","TownOrCity","Country","CheckedPostCode","HomeStatus","UserManagementServiceItems","RegisteredServiceItems","sb","ServicesIndex","CardColumns","Services","MoveMoneyMenuItems","SelectAccounts","currentAccount","pop","generateAccountInfo","SelectAccountsTest","CustomAlert","closeAlert","alertVisibleArray","SystemMessage","saveSytemMessageArray","renderAlerts","fetchSystemMessagesIfNeeded","messageArray","systemMessages","SystemMessages","messagingSystemDefinition","module","exports","forgottenUserNameDefinition","forgottenUN","registrationDefinition","loginDefinition","oldLogin","newLogin","statusCount","$merge","forgottenPasswordDefinition","forgottenPassword","updateSecurityDetailsDefinition","newState","resetLogin","loggedInPage","createLoginRequest","createLoginFailed","createLoginReceive","updateLoginRequest","updateLoginFailed","updateLoginReceive","setCredentialsRequest","setCredentialsFailed","setCredentialsReceive","registerRequest","registerFailed","registerReceive","forgottenUNRequest","forgottenUNFailed","forgottenUNReceive","updateForgottenRequest","updateForgottenReceiveFailed","updateForgottenReceive","forgottenPasswordRequest","forgottenPasswordFailed","forgottenPasswordReceive","credentials","resetUpdateSecurityDetails","updateSecurityDetailsRequest","updateSecurityDetailsFailed","run","loginActions","registrationActions","forgottenUserNameActions","forgottenPasswordActions","updateSecurityDetailsActions","ccbWithdrawalDefinition","createNoticeParam","withdrawalParam","createResponse","ccbShortApplyDefinition","savingshortapply","setShortApplyResponse","getAllProductsResponse","cancellationRequest","cancellationFailed","cancellationSuccess","setCreateNoticeToWithdrawParam","createWithdrawalRequest","makeaWithdrawSuccess","makeaWithdrawFaliure","setWithdrawalParam","setShortapplyRequest","setShortapplySuccess","setShortapplyFaliure","setShortapply","resetGetShowMaturity","getAllProductsRequest","getAllProductsSuccess","getAllProductsFaliure","saveShortApplyRequest","saveShortApplySuccess","saveShortApplyFaliure","withdrawalActions","shortApply","CheckExample","CurrencyExampleGBP","CurrencyExampleLKR","DateExample","onChangeDate","DialogExample","DropDownExample","ErrorsExample","TextExample","phoneLink","openTimes","companyName","companySiteName","companyFormattedAddress","cashISAFormURL","minimumAge","accountNumber","FormattedDateExample","MaskExample","NumericExample","PaginationExample","RadioExample","onChangeRadioButton","RadioButtonExample","RoundBadgeExample","Textsample","TextAreaExample","InterestRate","MaturityDetails","MaturityDate","isComponentLoaded","FromDate","HTML5_FMT","DATE","ToDate","Overview","accountType","BrandProductType","Links","getLinks","accountStatus","SavingsSummary","colSize","mode","sortCode","dateOpened","DateOpened","dateClosed","DateClosed","CompanyName","SavingsDetailSummary","NextInterestDueDate","StatementMethod","SavingsDetails","setCount","reversed","downloadTypes","fetchSavingsAccountIfNeeded","rangeLocal","activeTabOverride","now","actions","optionName","redirectURL","NoticeWithdrawal","SendMessage","Statements","caption","fetchTransactions","interestRates","interestHistory","customccbAccountsDefinition","mapAccountsDispatchToProps","ccbAccountsMapDispatch","AccountSummary","productType","AccountsList","setMode","setListMode","shown","setStatus","company","setStatusMode","companyList","gridToggle","statusToggle","accountsToList","aria-pressed","elements","keyValues","AccountDetails","AccountDetailsTemplate","thisProps","SummarySideBar","AccountsSidebars","SummarySidebar","AccountsMenuItems","ExportAccountCSV","csvTransactions","csvTransactionsFilename","fromDate","toDate","Description","filename","TabNavItem","TransactionDateRange","subtractDate","setUpdateButton","startDate","endDate","compareStartDate","compareEndDate","Navbar","TransactionDate","itemRef","transactionDate","thisDate","today","yesterday","getDateStr","Transaction","AccountCurrencyCode","character","toUpperCase","itemProp","imgColours","imgBackground","TabTransaction","updateButton","sortTransactions","reverse","olderTransactions","toggleTransactions","Rates","InterestRateHistory","InterestHistories","DateTo","DateFrom","isSame","AnnualInterestRate","listCount","previousDate","print","getRates","getInterestHistoryIfNeeded","latestDates","TabSummary","DownloadDocument","download","downloadedDocument","docInfo","ccbResetDocumentDownload","msSaveOrOpenBlob","byteCharacters","atob","Document","byteNumbers","charCodeAt","byteArray","Uint8Array","blob","Blob","FileExtension","downloadLink","Mime","downloadFileRequest","ccbFetchDocumentDownload","DocumentKey","documentIdData","documentKey","setDocument","DisplayType","TabDocument","onDocTypesChange","docTypeIndex","docType","setDocumentId","getDocTypes","documentTypes","docTypeButtons","documentList","documents","Documents","some","doc","ccbFetchDocumentsIfNeeded","RedirectByAccountDropdown","withdrawalFilter","noticeFilter","onChangeTarget","undefined","accOptions","AccountSupportDropdown","allActions","assign","Messaging","MaturityAlert","getMessage","maturity","diff","visibility","ccbRegistrationDefinition","ccbSetupCredentialsDefinition","setupcredentials","ccbRegistrationTokenDefinition","activationRequest","activationFailed","activationReceive","registrationcheck","resetSetupCredentials","setupCredentialsRequest","setupCredentialsFailed","setupCredentialsReceive","tokenAccountRequest","tokenAccountFailed","tokenAccountReceive","failedSetupCredentials","activationSetupCredentials","setupCredentialsActions","registrationTokenAction","credentialsActions","obj","currenObj","directlyUpdateUrl","currentValues","getPageState","Obj","webpackContext","req","webpackContextResolve","__webpack_require__","o","Error","interactReducers","cmsDefinition","sharedDefinition","twoFactorDefinition","accountsSharedDefinition","accountsSavingsDefinition","includeCustomccbReducers","appReducer","combineReducers","rootReducer","getSessionTicket","session","secureFetch","previousFetch","savedSession","currentSession","err","DefaultSidebar","NoDestinations","back","returnPath","origin","Destinations","initiateState","setDestination","setResend","global","twoFa","continue","sendChallenge","selectedDestination","Destination","ChallengeKey","getKey","twoFapage","destinationReq","twoFaDestination","externalHomeURL","returnTo","isDestinationValid","getErrorMessage","getDestinations","destinations","resetDestinations","mobNumberNotFound","numbers","customUserManagementDefinition","SelectDestination","setMobNumberNotFound","retry","ExpiredCode","ExpiredChallenge","ExceededAttempts","goBackHome","CodeForm","getInitialState","removeCode","sendAnothercode","setCodeResendStatus","initialFormState","addCount","replay","twoFaStatus","modfiyDestination","Code","reSet","custombrandAuthenticationDefinition","ExceededRequests","resetChallenge","DestinationAuth","mapDispatchToProps_auth","SelectDestinationAuth","CodeFormAuth","CodeAuth","TwoFactorFlow","newCodeRequested","reSetTwoFactor","localStatus","isForgottenPasswordDetails","challenge","time","addCounter","TwoFactorModal","TwoFactorSideBar","TwoFactorPages","updateLocation","unlisten","listen","eventupdate","TwoFactorSidebar","TwoFactorSidebars","RegisteredSidebars","HasSidebar","RegisteredMenus","ServicesMenuItems","Menu","route","expand","Container","NavbarToggler","navbar","isActive","Home","signinRedirect","referer","userManager","SignOut","logout","signoutRedirect","id_token_hint","signoutRedirectCallback","clear","clearStaleState","Callback","signinRedirectCallback","user","id_token","access_token","refresh_token","navigateToScreen","redirectUri","SignOutCallback","Connect","cmuRoutes","App","Boolean","hostname","Config","root","site","protocol","port","client_id","client_secret","cms","auth_url","identity_url","envname","env","configuration","IDENTITY_CONFIG","authority","redirect_uri","silent_redirect_uri","post_logout_redirect_uri","audience","response_type","automaticSilentRenew","loadUserInfo","acr_values","ui_locales","filterProtocolClaims","revokeAccessTokenOnSignout","userInfoJwtIssuer","metadata","issuer","jwks_uri","authorization_endpoint","token_endpoint","userinfo_endpoint","end_session_endpoint","check_session_iframe","revocation_endpoint","introspection_endpoint","createUserManager","cmscontent","utility","movemoney","usermanagement","webauthentication","cardservicing","paybycard","loanservicing","alerts","messaging","customccb","Accept","uuid","v4","getValue","cmuHeaders","authorization","middleware","thunk","enhancer","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","applyMiddleware","store","createStore","reducer","loadUser","serviceWorker","ready","unregister","ccbOrganisationDefinition","allDetails","uniqBy","detail","organisationRequest","organisationDetailsRequest","organisationFailed","organisationDetailsReceive","organisationReceive","CustomerCollection","Customers","organisationActions","ccbInterestRateDefinition","oldAccounts","findIndex","accountkey","accountWithDocuments","updatedAccounts","ccbDocumentsDefinition","SAVE_MATURITY_ARRAY","saveMaturityMessageArray","maturityAlertVisibleArray","maturityDefinition","resetInterestHistory","interestHistoryRequest","interestHistoryFailed","interestHistoryReceive","getInterestHistory","ccbShouldFetchInterestHistory","InterestHistory","getState","ccbRequestDocuments","ccbFailedDocuments","ccbReceiveDocuments","ccbFetchDocuments","ccbShouldFetchDocuments","ccbRequestDocumentDownload","ccbFailedDocumentDownload","ccbReceiveDocumentDownload","interestRateActions","ccbDocumentActions","MaturityActions"],"mappings":"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","file":"static/js/main.febb201d.chunk.js","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Session } from '@myie/interact';\nimport { Switch } from '@myie/interact-dom';\n\nfunction requireAuthentication(Component) {\n class AuthenticatedComponent extends React.Component {\n render() {\n const { showAuthError = true } = this.props;\n const showErrorMessage = showAuthError ? 'ShowError' : '';\n\n return Session.isAuthenticated() ? (\n \n ) : (\n \n );\n }\n }\n AuthenticatedComponent.propTypes = {\n showAuthError: PropTypes.any,\n };\n\n return AuthenticatedComponent;\n}\n\nexport default requireAuthentication;\n","import contentContainer from './contentContainerNoOp';\n\nexport default contentContainer;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { PropTypes } from 'prop-types';\n\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-cms';\n\nconst contentContainer = Component => {\n let container = class extends React.Component {\n constructor(props) {\n super(props);\n\n const { publishedContent, fetchPublishedContentIfNeeded } = this.props;\n if (!publishedContent) fetchPublishedContentIfNeeded();\n }\n get displayName() {\n return 'contentContainer';\n }\n\n render() {\n return (\n <>\n \n \n );\n }\n };\n\n container.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n\n publishedContent: PropTypes.object,\n pendingContent: PropTypes.object,\n fetchPublishedContentIfNeeded: PropTypes.func,\n fetchPendingContentIfNeeded: PropTypes.func,\n };\n\n return connect(\n mapStateToProps,\n mapDispatchToProps,\n null,\n { forwardRef: true },\n )(container);\n};\n\nexport default contentContainer;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-cms';\n\nclass ContentEditing extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n hover: false,\n };\n this.hoverOn = this.hoverOn.bind(this);\n this.hoverOff = this.hoverOff.bind(this);\n }\n\n hoverOn() {\n this.setState({ hover: true });\n }\n\n hoverOff() {\n this.setState({ hover: false });\n }\n\n onClick = e => {\n e.preventDefault();\n e.stopPropagation();\n const {\n cmsTag: tag,\n editContent,\n publishedContent,\n pendingContent,\n managed,\n } = this.props;\n\n let content = { content: {} };\n\n const published = publishedContent ? publishedContent[tag] : {};\n const pending = pendingContent ? pendingContent[tag] : {};\n const keys = Object.keys(managed);\n keys.map(key => {\n if (key === 'errors') {\n content[key] = {};\n Object.keys(managed[key]).map(ekey => {\n content[key][ekey] = {\n publishedValue:\n published &&\n published[key] &&\n published[key][ekey] &&\n published[key][ekey].publishedValue\n ? published[key][ekey].publishedValue\n : '',\n pendingValue:\n pending &&\n pending[key] &&\n pending[key][ekey] &&\n pending[key][ekey].pendingValue\n ? pending[key][ekey].pendingValue\n : '',\n updatedValue:\n pending &&\n pending[key] &&\n pending[key][ekey] &&\n pending[key][ekey].updatedValue\n ? pending[key][ekey].updatedValue\n : '',\n defaultValue:\n managed &&\n managed[key] &&\n managed[key][ekey] &&\n managed[key][ekey].defaultValue\n ? managed[key][ekey].defaultValue\n : '',\n };\n return true;\n });\n } else if (key === 'options') {\n content[key] = {};\n Object.keys(managed[key]).map(ekey => {\n content[key][ekey] = {\n publishedValue:\n published &&\n published[key] &&\n published[key][ekey] &&\n published[key][ekey].publishedValue\n ? published[key][ekey].publishedValue\n : '',\n pendingValue:\n pending &&\n pending[key] &&\n pending[key][ekey] &&\n pending[key][ekey].pendingValue\n ? pending[key][ekey].pendingValue\n : '',\n updatedValue:\n pending &&\n pending[key] &&\n pending[key][ekey] &&\n pending[key][ekey].updatedValue\n ? pending[key][ekey].updatedValue\n : '',\n defaultValue:\n managed &&\n managed[key] &&\n managed[key][ekey] &&\n managed[key][ekey].defaultValue\n ? managed[key][ekey].defaultValue\n : '',\n };\n return true;\n });\n } else {\n content['content'][key] = {\n publishedValue:\n published &&\n published['content'] &&\n published['content'][key] &&\n published['content'][key].publishedValue\n ? published['content'][key].publishedValue\n : '',\n pendingValue:\n pending &&\n pending['content'] &&\n pending['content'][key] &&\n pending['content'][key].pendingValue\n ? pending['content'][key].pendingValue\n : '',\n updatedValue:\n pending &&\n pending['content'] &&\n pending['content'][key] &&\n pending['content'][key].updatedValue\n ? pending['content'][key].updatedValue\n : '',\n defaultValue:\n managed && managed[key] && managed[key].defaultValue\n ? managed[key].defaultValue\n : '',\n };\n }\n return true;\n });\n\n editContent(tag, content);\n };\n\n getClassNames() {\n const { tagEdited, cmsTag: tag } = this.props;\n const { hover } = this.state;\n let className = 'cms cms-wrapper';\n\n className += ' cms-wrapper-editable';\n\n if (tagEdited === tag) {\n className += ' cms-wrapper-editable-active';\n }\n if (hover) className += ' cms-wrapper-editable-hover';\n return className;\n }\n\n render() {\n const { children, onShow, noEdit, cmsTag, className } = this.props;\n const classNames = this.getClassNames();\n if (noEdit) {\n return (\n \n {children}\n \n );\n }\n return (\n {\n this.onClick(e);\n }}\n onMouseEnter={e => {\n this.hoverOn(e);\n }}\n onMouseLeave={e => {\n this.hoverOff(e);\n }}\n >\n {onShow ?
{cmsTag}
: null}\n {children}\n \n );\n }\n}\n\nContentEditing.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]).isRequired,\n className: PropTypes.string,\n cmsTag: PropTypes.string,\n editContent: PropTypes.func,\n managed: PropTypes.any,\n noEdit: PropTypes.bool,\n onShow: PropTypes.bool,\n pendingContent: PropTypes.any,\n publishedContent: PropTypes.any,\n tag: PropTypes.any,\n tagEdited: PropTypes.string,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ContentEditing);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-cms';\nimport { withRouter } from 'react-router-dom';\nimport { Settings } from '@myie/interact';\nimport ContentEditing from './ContentEditing';\n\n// TODO: use connect HOC to connect to CMS data in store\n\nconst ContentType = {\n Text: '_text_',\n Error: '_error_',\n Option: '_option_',\n};\n\nfunction contentManaged(Component) {\n class ContentManagedComponent extends React.Component {\n constructor(props) {\n super(props);\n let prefix = props.match.path.substring(1);\n if (prefix.indexOf(':') !== -1) {\n prefix = prefix.substring(0, prefix.indexOf(':'));\n }\n prefix = (prefix.replace(/[/]/g, '.') || 'root').replace(/\\.$/, '');\n let composedTag =\n props.cmsTag || prefix + ':' + (props.id || 'IDMISSING');\n this.state = {\n tag: composedTag,\n managed: null,\n template: props.template,\n };\n }\n\n managedContent = (managed, onShow = false, noEdit = false) => {\n if (!managed) {\n return this.state.managed;\n }\n const { template = {} } = this.state;\n if (managed.validation && managed.validation.rules) {\n var rules = {};\n var templates = {};\n Object.keys(managed.validation.rules).forEach(rule => {\n if (managed.validation.rules[rule].message) {\n rules[rule] = {\n defaultValue: managed.validation.rules[rule].message,\n };\n } else if (managed.validation.rules[rule].trans) {\n rules[rule] = {\n defaultValue: managed.validation.rules[rule].trans(),\n };\n }\n if (managed.validation.rules[rule].template) {\n templates[rule] = managed.validation.rules[rule].template;\n }\n });\n template.errors = templates;\n managed.errors = rules;\n delete managed.validation;\n }\n\n this.setState({ ...this.state, managed, template, onShow, noEdit });\n };\n\n applyTemplate = (bindings, text, wrapper) => {\n const showOrigin = (text, wrapper) => {\n if (this.props.showOrigin) {\n if (typeof text === 'string') {\n return `${wrapper}\\n\\n${text}\\n\\n${wrapper}`;\n }\n }\n return text;\n };\n var renderText = text || '';\n if (bindings) {\n const keys = Object.keys(bindings);\n keys.forEach(key => {\n const search = new RegExp(\n `(\\\\$\\\\[` + key + `\\\\]|\\\\$\\\\{` + key + `\\\\})`,\n 'g',\n );\n let bindingKey = bindings[key];\n if (typeof bindings[key] === 'function') {\n bindingKey = bindingKey();\n }\n renderText = renderText.replace(search, bindingKey);\n });\n }\n return showOrigin(renderText, wrapper);\n };\n\n contentValue = (type, name, binding) => {\n if (!this.state.managed) return '';\n switch (type) {\n case ContentType.Error:\n return this.contentErrorValue(name, binding);\n case ContentType.Option:\n return this.contentOptionValue(name, binding);\n case ContentType.Text:\n return this.contentTextValue(name, binding);\n default:\n // old style shift the params\n return this.contentTextValue(type, name);\n }\n };\n\n contentTextValue = (name, binding) => {\n const { tag, managed, template = {} } = this.state;\n const t = binding ? binding : template[name];\n if (tag) {\n const { publishedContent, pendingContent } = this.props;\n if (Settings.cmsAvailable) {\n if (pendingContent) {\n let componentContent = pendingContent[tag]\n ? pendingContent[tag].content\n : null;\n if (componentContent) {\n let elementContent = componentContent[name];\n if (elementContent) {\n if (elementContent.updatedValue) {\n if (elementContent.updatedValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.updatedValue,\n '++',\n );\n } else if (elementContent.pendingValue) {\n if (elementContent.pendingValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.pendingValue,\n '^^',\n );\n }\n }\n }\n }\n }\n if (publishedContent) {\n let componentContent = publishedContent[tag]\n ? publishedContent[tag].content\n : null;\n if (componentContent) {\n let elementContent = componentContent[name];\n if (elementContent) {\n if (elementContent.publishedValue) {\n if (elementContent.publishedValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.publishedValue,\n '--',\n );\n }\n }\n }\n }\n }\n if (managed) {\n let element = managed[name];\n if (element) {\n return this.applyTemplate(t, element.defaultValue, '!!');\n }\n }\n return '';\n };\n\n contentErrorValue = (error, binding) => {\n const { tag, managed, template = { Errors: {} } } = this.state;\n const t = binding\n ? binding\n : typeof template.errors[error] == 'function'\n ? template.errors[error]()\n : template.errors[error];\n\n if (tag) {\n const { publishedContent, pendingContent } = this.props;\n if (Settings.cmsAvailable) {\n if (pendingContent) {\n let componentContent = pendingContent[tag]\n ? pendingContent[tag]\n : null;\n if (componentContent) {\n let elementContent = componentContent.errors\n ? componentContent.errors[error]\n : null;\n if (elementContent) {\n if (elementContent.updatedValue) {\n if (elementContent.updatedValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.updatedValue,\n '++',\n );\n } else if (elementContent.pendingValue) {\n if (elementContent.pendingValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.pendingValue,\n '^^',\n );\n }\n }\n }\n }\n }\n if (publishedContent) {\n let componentContent = publishedContent[tag]\n ? publishedContent[tag]\n : null;\n if (componentContent) {\n let elementContent = componentContent.errors\n ? componentContent.errors[error]\n : null;\n if (elementContent) {\n if (elementContent.publishedValue) {\n if (elementContent.publishedValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.publishedValue,\n '--',\n );\n }\n }\n }\n }\n }\n\n if (managed) {\n let element = managed.errors[error];\n if (element) {\n return this.applyTemplate(t, element.defaultValue, '!!');\n }\n }\n return '';\n };\n\n contentOptionValue = (dropDown, binding) => {\n const { tag, managed, template = { Options: {} } } = this.state;\n const t = binding\n ? binding\n : template.options\n ? template.options[dropDown]\n : { Options: {} };\n\n if (tag) {\n const { publishedContent, pendingContent } = this.props;\n if (Settings.cmsAvailable) {\n if (pendingContent) {\n let componentContent = pendingContent[tag]\n ? pendingContent[tag]\n : null;\n if (componentContent) {\n let elementContent = componentContent.options\n ? componentContent.options[dropDown]\n : null;\n if (elementContent) {\n if (elementContent.updatedValue) {\n if (elementContent.updatedValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.updatedValue,\n '++',\n );\n } else if (elementContent.pendingValue) {\n if (elementContent.pendingValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.pendingValue,\n '^^',\n );\n }\n }\n }\n }\n }\n if (publishedContent) {\n let componentContent = publishedContent[tag]\n ? publishedContent[tag].options\n : null;\n if (componentContent) {\n let elementContent = componentContent.options\n ? componentContent.options[dropDown]\n : null;\n if (elementContent) {\n if (elementContent.publishedValue) {\n if (elementContent.publishedValue === '<>') {\n return this.applyTemplate(t, '', '++');\n }\n return this.applyTemplate(\n t,\n elementContent.publishedValue,\n '--',\n );\n }\n }\n }\n }\n }\n if (managed) {\n let element = managed.options ? managed.options[dropDown] : null;\n if (element) {\n return this.applyTemplate(t, element.defaultValue, '!!');\n }\n }\n return '';\n };\n\n render() {\n // eslint-disable-next-line no-unused-vars\n const { inEditMode, template, ...rest } = this.props;\n const { tag } = this.state;\n\n delete rest.contentEditModeSuccess;\n delete rest.contentEditModeRequest;\n delete rest.saveContentSuccess;\n delete rest.saveContentFailed;\n delete rest.cmsTag;\n delete rest.loadStoredContent;\n delete rest.editContent;\n delete rest.saveContent;\n delete rest.publishedContent;\n delete rest.contentEdited;\n delete rest.tagEdited;\n delete rest.contentSaved;\n delete rest.setEditMode;\n delete rest.isFetching;\n delete rest.fetchPublishedContentIfNeeded;\n delete rest.loadPublishedContentRequest;\n delete rest.loadPublishedContentFailed;\n delete rest.loadPublishedContentSuccess;\n delete rest.shouldFetchPublishedContent;\n delete rest.editContentRequest;\n delete rest.editContentFailed;\n delete rest.editContentSuccess;\n delete rest.saveContentRequest;\n delete rest.loadPublishedContent;\n delete rest.fetchPendingContentIfNeeded;\n delete rest.shouldFetchPendingContent;\n delete rest.loadPendingContentRequest;\n delete rest.loadPendingContentSuccess;\n delete rest.loadPendingContentFailed;\n delete rest.loadPendingContent;\n delete rest.pendingContent;\n delete rest.commitContent;\n delete rest.pushContent;\n delete rest.contentCommitted;\n delete rest.contentPushed;\n delete rest.commitContentRequest;\n delete rest.commitContentFailed;\n delete rest.commitContentSuccess;\n delete rest.pushContentRequest;\n delete rest.pushContentFailed;\n delete rest.pushContentSuccess;\n delete rest.deleteContentRequest;\n delete rest.deleteContentFailed;\n delete rest.deleteContentSuccess;\n delete rest.deleteContent;\n delete rest.historyListRequest;\n delete rest.historyListFailed;\n delete rest.historyListSuccess;\n delete rest.fetchHistoryList;\n delete rest.historyList;\n delete rest.fetchHistoryListIfNeeded;\n delete rest.shouldFetchHistoryList;\n delete rest.historyDetail;\n delete rest.historyDetailRequest;\n delete rest.historyDetailFailed;\n delete rest.historyDetailSuccess;\n delete rest.resetHistoryDetail;\n delete rest.fetchHistoryDetail;\n delete rest.savedPendingContent;\n delete rest.setShowOrigin;\n delete rest.showOrigin;\n delete rest.error;\n delete rest.dispatch;\n delete rest.staticContext;\n delete rest.history;\n delete rest.location;\n delete rest.match;\n\n if (inEditMode && tag) {\n return (\n \n \n \n );\n }\n return (\n \n );\n }\n }\n ContentManagedComponent.propTypes = {\n cmsTag: PropTypes.any,\n id: PropTypes.any,\n inEditMode: PropTypes.any,\n match: PropTypes.any,\n pendingContent: PropTypes.any,\n publishedContent: PropTypes.any,\n showOrigin: PropTypes.any,\n template: PropTypes.any,\n };\n\n return withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps,\n )(ContentManagedComponent),\n );\n}\n\nexport { ContentType };\nexport default contentManaged;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { FormFeedback } from 'reactstrap';\nimport { Validate } from '@myie/interact';\nimport { ContentType } from '../HO_components/contentManaged';\n\n/**\n * HasErrors function\n * check the given object and\n * will return true or false\n */\nconst HasErrors = validation => {\n const { state = {} } = validation;\n const { approval = {}, dirty } = state;\n if (approval.approved || !approval.failed || !dirty) {\n return true;\n }\n return false;\n};\n\n/**\n * Errors component\n * will display error message\n */\nclass Errors extends React.Component {\n render() {\n const { props } = this;\n\n const { validation = {}, field, contentValue, ...rest } = props;\n const { state = {} } = validation;\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}-${field[1]}`;\n const { approval = {}, dirty } = state;\n const children = [];\n if (!approval.failed || !dirty) {\n return '';\n }\n const errors = Validate.errors(validation);\n errors.forEach(error => {\n var i = 0;\n children.push(\n \n {contentValue\n ? contentValue(ContentType.Error, error.rule)\n : error.message}\n

,\n );\n });\n return children.length ? (\n \n {children}\n \n ) : (\n ''\n );\n }\n}\n\nErrors.propTypes = {\n /**\n * Field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Input validation\n */\n validation: PropTypes.object,\n contentValue: PropTypes.any,\n};\n\nexport default Errors;\nexport { HasErrors };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Input, Label, FormGroup } from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * Check box component\n */\nclass Check extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n suffix,\n managedContent,\n validation,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n suffix: { defaultValue: suffix },\n validation: validation,\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n showErrors = true,\n validation = {},\n children,\n id,\n disabled,\n required,\n checked,\n field,\n className = '',\n labelClassName = '',\n groupClassName = '',\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const suffix = contentValue(ContentType.Text, 'suffix');\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n return (\n \n \n \n \n {label} {subLabel.length > 0 ? {subLabel} : ''}\n {description.length > 0 ? (\n {description}\n ) : (\n ''\n )}\n \n \n {children}\n {suffix.length > 0 ?

{suffix}

: ''}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nCheck.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * if check box is ticked\n */\n checked: PropTypes.bool,\n /**\n * Any children of the component\n */\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.array]),\n className: PropTypes.string,\n /**\n * checkbox description\n */\n description: PropTypes.string,\n /**\n * is checkbox disabled?\n */\n disabled: PropTypes.bool,\n /**\n * input field\n */\n field: PropTypes.any,\n groupClassName: PropTypes.string,\n /**\n * checkbox id?\n */\n id: PropTypes.any,\n label: PropTypes.any,\n labelClassName: PropTypes.string,\n /**\n * should show errors\n */\n required: PropTypes.any,\n /**\n * Should show errors?\n */\n showErrors: PropTypes.bool,\n subLabel: PropTypes.string,\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Validation\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(Check);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Errors from './Errors';\nimport contentManaged from '../HO_components/contentManaged';\n\nclass ErrorPanel extends React.Component {\n constructor(props) {\n super(props);\n const { managedContent, validation } = props;\n managedContent(\n {\n validation: validation,\n },\n false,\n true,\n );\n }\n\n render() {\n const { props } = this;\n const {\n validation = {},\n showErrors = true,\n field,\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n\n return (\n \n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nErrorPanel.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n\n showErrors: PropTypes.bool,\n\n validation: PropTypes.object,\n};\n\nexport default contentManaged(ErrorPanel);\n","import { Validate } from '@myie/interact';\n\nfunction CommonError(errorList) {\n let indexValue;\n let showError = false;\n\n if (errorList.length > 0) {\n errorList.forEach((validation, index) => {\n const error = Validate.errors(validation);\n if (error[0] && error[0].rule === 'required') {\n indexValue = index;\n showError = true;\n return true;\n }\n });\n\n if (!showError) {\n errorList.forEach((validation, index) => {\n const error = Validate.errors(validation);\n if (error[0] && error[0].rule === 'format') {\n indexValue = index;\n showError = true;\n return true;\n }\n });\n }\n }\n\n return {\n showError: showError,\n index: indexValue,\n };\n}\n\nexport default CommonError;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { Settings } from '@myie/interact';\n\n/**\n * FormattedDate component\n * will format and return date\n */\nclass FormattedDate extends React.Component {\n render() {\n const { format = Settings.dateFormat, date } = this.props;\n const dateStr = moment(date).format(format);\n return {dateStr};\n }\n}\n\nFormattedDate.propTypes = {\n /**\n * Date to format\n */\n date: PropTypes.oneOfType([PropTypes.string, PropTypes.instanceOf(Date)]),\n /**\n * A format\n */\n format: PropTypes.string,\n};\n\nexport default FormattedDate;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Currency from 'react-currency-formatter';\n\n/**\n * FormattedCurrency component\n * will format and return currency\n */\nclass FormattedCurrency extends React.Component {\n render() {\n const { props } = this;\n\n const { quantity, ...rest } = props;\n const qty = parseFloat(quantity);\n if ((!qty || isNaN(qty)) && !(qty === 0))\n return {props.fallback || ''};\n return ;\n }\n}\n\nFormattedCurrency.propTypes = {\n fallback: PropTypes.any,\n /**\n * Value to format\n */\n quantity: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n};\n\nexport default FormattedCurrency;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Input, Label, FormGroup } from 'reactstrap';\nimport { Validate } from '@myie/interact';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * Radio component\n */\nclass Radio extends React.Component {\n constructor(props) {\n super(props);\n const { label, subLabel, description, suffix, managedContent } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n suffix: { defaultValue: suffix },\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n validation = {},\n value: setValue,\n children,\n disabled,\n required,\n id,\n field,\n className = '',\n labelClassName = '',\n groupClassName = '',\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const suffix = contentValue(ContentType.Text, 'suffix');\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n return (\n \n \n \n \n {label} {subLabel.length > 0 ? {subLabel} : ''}\n {description.length > 0 ? (\n {description}\n ) : (\n ''\n )}\n \n \n {children}\n {suffix &&

{suffix}

}\n \n );\n }\n}\n\nRadio.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Any children of the component\n */\n children: PropTypes.any,\n /**\n * Class name\n */\n className: PropTypes.string,\n /**\n * Description for radio\n */\n description: PropTypes.string,\n /**\n * Boolean flag whether radio is disabled or not\n */\n disabled: PropTypes.bool,\n /**\n * Field name\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Class name\n */\n groupClassName: PropTypes.string,\n /**\n * Radio id\n */\n id: PropTypes.any.isRequired,\n /**\n * Radio label\n */\n label: PropTypes.any.isRequired,\n /**\n * Class name for the label\n */\n labelClassName: PropTypes.string,\n /**\n * Whether radio is required or not\n */\n required: PropTypes.bool,\n /**\n * Set value for radio\n */\n setValue: PropTypes.any,\n /**\n * Value for radio\n */\n value: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]).isRequired,\n /**\n * Sub label for radio\n */\n subLabel: PropTypes.string,\n /**\n * Suffix for radio\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Validation object\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(Radio);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Button } from 'reactstrap';\nimport { HasErrors } from './Errors';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * RadioButton component\n */\nclass RadioButton extends React.Component {\n constructor(props) {\n super(props);\n const { label, managedContent } = props;\n managedContent({\n label: { defaultValue: label },\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n validation = {},\n value: setValue,\n children,\n id,\n field,\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '' } = validation;\n const label = contentValue(ContentType.Text, 'label');\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n return (\n \n {label}\n {children}\n \n );\n }\n}\n\nRadioButton.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * RadioButton ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Label text\n */\n label: PropTypes.string,\n value: PropTypes.any,\n setValue: PropTypes.any,\n /**\n * Input validation\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(RadioButton);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\nimport { Errors } from '@myie/interact-dom';\nimport { HasErrors } from './Errors';\n/**\n * RadioGroup component\n */\nclass RadioGroup extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n suffix,\n managedContent,\n validation,\n id,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n suffix: { defaultValue: suffix },\n validation: validation,\n id: { defaultValue: id },\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n children,\n groupClassName = '',\n labelClassName = '',\n contentValue,\n managedContent,\n disabled,\n required,\n validation = {},\n showErrors = true,\n field,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const suffix = contentValue(ContentType.Text, 'suffix');\n return (\n \n \n {label}\n {required && (\n \n *\n (required field)\n \n )}{' '}\n {subLabel.length > 0 ? {subLabel} : ''}\n {description.length > 0 ? (\n {description}\n ) : (\n ''\n )}\n \n
{children}
\n {suffix &&

{suffix}

}\n {showErrors && field ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nRadioGroup.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Input required or not\n */\n required: PropTypes.bool,\n /**\n * Text input disabled or not\n */\n disabled: PropTypes.bool,\n /**\n * Any children of the component\n */\n children: PropTypes.any,\n /**\n * Date description text\n */\n description: PropTypes.string,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * Sub label text\n */\n label: PropTypes.any,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n validation: PropTypes.object,\n showErrors: PropTypes.any,\n field: PropTypes.any,\n id: PropTypes.any,\n};\n\nexport default contentManaged(RadioGroup);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Badge } from 'reactstrap';\n\n/**\n * RoundBadge component\n * will display a rounded badge\n */\nclass RoundBadge extends React.Component {\n render() {\n const { children, ...rest } = this.props;\n return (\n \n {children}\n \n );\n }\n}\n\nRoundBadge.propTypes = {\n /**\n * Text to display on the badge\n */\n children: PropTypes.string,\n};\n\nexport default RoundBadge;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Input,\n Label,\n InputGroup,\n InputGroupAddon,\n InputGroupText,\n FormGroup,\n} from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\nclass Text extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n suffix,\n placeholder,\n inputPrefix,\n inputSuffix,\n validation,\n managedContent,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n suffix: { defaultValue: suffix },\n placeholder: { defaultValue: placeholder },\n inputPrefix: { defaultValue: inputPrefix },\n inputSuffix: { defaultValue: inputSuffix },\n validation: validation,\n });\n }\n\n attachAddons(input, inputPrefix, inputSuffix, inputGroupClassName, id) {\n const items = [];\n if (inputPrefix || inputSuffix) {\n if (inputPrefix) {\n items.push(\n \n \n {inputPrefix}\n \n ,\n );\n }\n items.push(input);\n if (inputSuffix) {\n items.push(\n \n \n {inputSuffix}\n \n ,\n );\n }\n return {items};\n }\n return input;\n }\n\n render() {\n const { props } = this;\n\n const {\n children,\n validation = {},\n disabled,\n required,\n labelClassName = '',\n groupClassName = '',\n inputGroupClassName,\n showErrors = true,\n id,\n field,\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const suffix = contentValue(ContentType.Text, 'suffix');\n const placeholder = contentValue(ContentType.Text, 'placeholder');\n const inputPrefix = contentValue(ContentType.Text, 'inputPrefix');\n const inputSuffix = contentValue(ContentType.Text, 'inputSuffix');\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n const isRequired =\n required || (validation && validation.rules && validation.rules.required);\n return (\n \n {label || subLabel || description ? (\n \n ) : (\n ''\n )}\n {this.attachAddons(\n ,\n inputPrefix,\n inputSuffix,\n inputGroupClassName,\n id,\n )}\n\n {suffix &&

{suffix}

}\n {children}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nText.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * Text placeholder text\n */\n placeholder: PropTypes.string,\n /**\n * Text description text\n */\n description: PropTypes.string,\n /**\n * Text input disabled or not\n */\n disabled: PropTypes.bool,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * Date ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Style class name for input group\n */\n inputGroupClassName: PropTypes.string,\n /**\n * A prefix for the input\n */\n inputPrefix: PropTypes.string,\n /**\n * A suffix for the input\n */\n inputSuffix: PropTypes.string,\n /**\n * Label text\n */\n label: PropTypes.string,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * Maximum character limit\n */\n maxLength: PropTypes.any,\n /**\n * Input required or not\n */\n required: PropTypes.bool,\n /**\n * Show errors or not\n */\n showErrors: PropTypes.bool,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Input validation\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(Text);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Input, Label, FormGroup } from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport InputMask from 'react-input-mask';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * Date component\n * will display an input field\n * input will be formatted with the passing mask\n */\nclass Mask extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n placeholder,\n suffix,\n managedContent,\n validation,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n placeholder: { defaultValue: placeholder },\n suffix: { defaultValue: suffix },\n validation: validation,\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n id,\n children,\n disabled,\n required,\n validation = {},\n labelClassName = '',\n groupClassName = '',\n mask,\n field,\n maskChar,\n showErrors = true,\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const suffix = contentValue(ContentType.Text, 'suffix');\n const placeholder = contentValue(ContentType.Text, 'placeholder');\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n return (\n \n {label || subLabel || description ? (\n \n ) : (\n ''\n )}\n \n {() => (\n \n )}\n \n {suffix.length > 0 ?

{suffix}

: ''}\n {children}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nMask.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Text placeholder text\n */\n placeholder: PropTypes.string,\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * Date description text\n */\n description: PropTypes.string,\n /**\n * Is input disabled?\n */\n disabled: PropTypes.bool,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * Date ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Label text\n */\n label: PropTypes.string,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * Any character can be escaped with a backslash\n */\n mask: PropTypes.string.isRequired,\n /**\n * Character to cover unfilled parts of the mask\n */\n maskChar: PropTypes.string,\n /**\n * onBlur function\n */\n onBlur: PropTypes.func.isRequired,\n /**\n * onChange function\n */\n onChange: PropTypes.func.isRequired,\n /**\n * Input required or not\n */\n required: PropTypes.bool,\n /**\n * Show errors or not\n */\n showErrors: PropTypes.bool,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Input validation\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(Mask);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Input, Label, FormGroup } from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * TextArea component\n * will display a text area\n */\nclass TextArea extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n suffix,\n placeholder,\n managedContent,\n validation,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n placeholder: { defaultValue: placeholder },\n suffix: { defaultValue: suffix },\n validation: validation,\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n children,\n validation = {},\n labelClassName = '',\n groupClassName = '',\n showErrors = true,\n id,\n field,\n disabled,\n required,\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const placeholder = contentValue(ContentType.Text, 'placeholder');\n const suffix = contentValue(ContentType.Text, 'suffix');\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n const isRequired =\n required || (validation && validation.rules && validation.rules.required);\n return (\n \n {label || subLabel || description ? (\n \n ) : (\n ''\n )}\n \n {suffix &&

{suffix}

}\n {children}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nTextArea.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * TextArea description text\n */\n description: PropTypes.string,\n /**\n * TextArea disabled or not\n */\n disabled: PropTypes.bool,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * TextArea ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Label text\n */\n label: PropTypes.string.isRequired,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * TextArea required or not\n */\n required: PropTypes.bool,\n /**\n * Show errors or not\n */\n showErrors: PropTypes.bool,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Text placeholder text\n */\n placeholder: PropTypes.string,\n /**\n * Input validation\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(TextArea);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Label, Input, FormGroup } from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * DropDown component\n * will display a dropdown\n */\nclass DropDown extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n suffix,\n managedContent,\n validation,\n children: options,\n } = props;\n const _dropDownOptions = {};\n for (let index = 0; index < options.length; index++) {\n const child = options[index];\n if (Array.isArray(child)) {\n for (let i = 0; i < child.length; i++) {\n const c = child[i];\n if (c.type === 'option') {\n const { defaultText, value } = c.props;\n if (defaultText) {\n _dropDownOptions[value || '_unselected_'] = {\n defaultValue: defaultText,\n };\n }\n }\n }\n }\n if (child.type === 'option') {\n const { defaultText, value } = child.props;\n if (defaultText) {\n _dropDownOptions[value || '_unselected_'] = {\n defaultValue: defaultText,\n };\n }\n }\n }\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n suffix: { defaultValue: suffix },\n validation: validation,\n options: _dropDownOptions,\n });\n }\n\n pushOption = (child, options, key, contentValue) => {\n const {\n defaultText,\n children,\n value,\n template: optionTemplate,\n ...rest\n } = child.props;\n if (defaultText) {\n options.push(\n ,\n );\n } else {\n options.push(\n ,\n );\n }\n };\n\n render() {\n const { props } = this;\n\n const {\n children: dropDownOptions,\n validation = {},\n labelClassName = '',\n groupClassName = '',\n showErrors = true,\n disabled,\n required,\n id,\n field,\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const options = [];\n let key = 0;\n for (let index = 0; index < dropDownOptions.length; index++) {\n const child = dropDownOptions[index];\n if (Array.isArray(child)) {\n for (let i = 0; i < child.length; i++) {\n const c = child[i];\n if (c.type === 'option') {\n this.pushOption(c, options, key, contentValue);\n } else {\n options.push(child);\n }\n key++;\n }\n } else if (child.type === 'option') {\n this.pushOption(child, options, key, contentValue);\n } else {\n options.push(child);\n }\n key++;\n }\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const suffix = contentValue(ContentType.Text, 'suffix');\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n const isRequired =\n required || (validation && validation.rules && validation.rules.required);\n return (\n \n {label || subLabel || description ? (\n \n ) : (\n ''\n )}\n \n {options}\n \n {suffix.length > 0 ?

{suffix}

: ''}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nDropDown.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n options: PropTypes.arrayOf(PropTypes.object),\n /**\n * Any children of the component\n */\n children: PropTypes.array.isRequired,\n /**\n * Date description text\n */\n description: PropTypes.string,\n /**\n * DropDown disabled or not\n */\n disabled: PropTypes.any,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * DropDown ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Label text\n */\n label: PropTypes.string,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * DropDown required or not\n */\n required: PropTypes.bool,\n /**\n * Show errors or not\n */\n showErrors: PropTypes.bool,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Input validation\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(DropDown);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Input, Label, FormGroup } from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * Numeric component\n * will display a numeric input feild\n */\nclass Numeric extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n placeholder,\n description,\n suffix,\n managedContent,\n validation,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n placeholder: { defaultValue: placeholder },\n suffix: { defaultValue: suffix },\n validation: validation,\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n dp = 0,\n children,\n validation = {},\n disabled,\n required,\n labelClassName = '',\n groupClassName = '',\n showErrors = true,\n id,\n field,\n onChange,\n onBlur,\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const placeholder = contentValue(ContentType.Text, 'placeholder');\n const suffix = contentValue(ContentType.Text, 'suffix');\n const dpPat = !dp || dp === 0 ? '' : `[.]{0,1}[0-9]{0,${dp}}`;\n const pattern = `^[0-9]*${dpPat}$`;\n\n const inputOverride = (e, dp, func) => {\n const { target = {} } = e;\n const { value = '' } = target;\n if (\n dp > 0 &&\n value.indexOf('.') !== -1 &&\n value.length - value.indexOf('.') > dp + 1\n ) {\n return;\n }\n const found = value.toString().match(new RegExp(pattern));\n if (value && !found) {\n return;\n }\n\n if (value && target.validity && !target.validity.valid) {\n return;\n }\n if (!value || !isNaN(parseFloat(value))) {\n if (func) {\n func(e);\n }\n }\n };\n\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n const isRequired =\n required || (validation && validation.rules && validation.rules.required);\n return (\n \n {label || subLabel || description ? (\n \n ) : (\n ''\n )}\n inputOverride(event, dp, onBlur)}\n onChange={event => inputOverride(event, dp, onChange)}\n invalid={Validate.isInvalid(state)}\n valid={Validate.isValid(state)}\n id={id}\n name={fieldName}\n value={value}\n disabled={disabled}\n required={required}\n placeholder={placeholder}\n type=\"text\"\n inputMode={dp === 0 ? 'numeric' : 'decimal'}\n pattern={pattern}\n {...rest}\n />\n {suffix &&

{suffix}

}\n {children}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nNumeric.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Any children of the component\n */\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.array]),\n /**\n * Text placeholder text\n */\n placeholder: PropTypes.string,\n /**\n * Numeric description text\n */\n description: PropTypes.string,\n /**\n * Input disabled or not\n */\n disabled: PropTypes.bool,\n /**\n * decimal places\n */\n dp: PropTypes.number,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * Numeric ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Label text\n */\n label: PropTypes.string.isRequired,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * onBlur function\n */\n onBlur: PropTypes.func.isRequired,\n /**\n * onChange function\n */\n onChange: PropTypes.func.isRequired,\n /**\n * Input required or not\n */\n required: PropTypes.bool,\n /**\n * Show errors or not\n */\n showErrors: PropTypes.bool,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Input validation\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(Numeric);\n","const symbols = {\n AED: 'د.إ',\n AFN: '؋',\n ALL: 'L',\n AMD: 'AMD',\n ANG: 'ƒ',\n AOA: 'Kz',\n ARS: '$',\n AUD: '$',\n AWG: 'ƒ',\n AZN: '₼',\n BAM: 'KM',\n BBD: '$',\n BDT: '৳',\n BGN: 'лв',\n BHD: '.د.ب',\n BIF: 'FBu',\n BMD: '$',\n BND: '$',\n BOB: 'Bs.',\n BRL: 'R$',\n BSD: '$',\n BTC: '฿',\n BTN: 'Nu.',\n BWP: 'P',\n BYR: 'p.',\n BZD: 'BZ$',\n CAD: '$',\n CDF: 'FC',\n CHF: 'Fr.',\n CLP: '$',\n CNY: '¥',\n COP: '$',\n CRC: '₡',\n CUC: '$',\n CUP: '₱',\n CVE: '$',\n CZK: 'Kč',\n DJF: 'Fdj',\n DKK: 'kr',\n DOP: 'RD$',\n DZD: 'دج',\n EEK: 'kr',\n EGP: '£',\n ERN: 'Nfk',\n ETB: 'Br',\n ETH: 'Ξ',\n EUR: '€',\n FJD: '$',\n FKP: '£',\n GBP: '£',\n GEL: '₾',\n GGP: '£',\n GHC: '₵',\n GHS: 'GH₵',\n GIP: '£',\n GMD: 'D',\n GNF: 'FG',\n GTQ: 'Q',\n GYD: '$',\n HKD: '$',\n HNL: 'L',\n HRK: 'kn',\n HTG: 'G',\n HUF: 'Ft',\n IDR: 'Rp',\n ILS: '₪',\n IMP: '£',\n INR: '₹',\n IQD: 'ع.د',\n IRR: '﷼',\n ISK: 'kr',\n JEP: '£',\n JMD: 'J$',\n JOD: 'JD',\n JPY: '¥',\n KES: 'KSh',\n KGS: 'лв',\n KHR: '៛',\n KMF: 'CF',\n KPW: '₩',\n KRW: '₩',\n KWD: 'KD',\n KYD: '$',\n KZT: '₸',\n LAK: '₭',\n LBP: '£',\n LKR: '₨',\n LRD: '$',\n LSL: 'M',\n LTC: 'Ł',\n LTL: 'Lt',\n LVL: 'Ls',\n LYD: 'LD',\n MAD: 'MAD',\n MDL: 'lei',\n MGA: 'Ar',\n MKD: 'ден',\n MMK: 'K',\n MNT: '₮',\n MOP: 'MOP$',\n MUR: '₨',\n MVR: 'Rf',\n MWK: 'MK',\n MXN: '$',\n MYR: 'RM',\n MZN: 'MT',\n NAD: '$',\n NGN: '₦',\n NIO: 'C$',\n NOK: 'kr',\n NPR: '₨',\n NZD: '$',\n OMR: '﷼',\n PAB: 'B/.',\n PEN: 'S/.',\n PGK: 'K',\n PHP: '₱',\n PKR: '₨',\n PLN: 'zł',\n PYG: 'Gs',\n QAR: '﷼',\n RMB: '¥',\n RON: 'lei',\n RSD: 'Дин.',\n RUB: '₽',\n RWF: 'R₣',\n SAR: '﷼',\n SBD: '$',\n SCR: '₨',\n SDG: 'ج.س.',\n SEK: 'kr',\n SGD: '$',\n SHP: '£',\n SLL: 'Le',\n SOS: 'S',\n SRD: '$',\n SSP: '£',\n STD: 'Db',\n SVC: '$',\n SYP: '£',\n SZL: 'E',\n THB: '฿',\n TJS: 'SM',\n TMT: 'T',\n TND: 'د.ت',\n TOP: 'T$',\n TRL: '₤',\n TRY: '₺',\n TTD: 'TT$',\n TVD: '$',\n TWD: 'NT$',\n TZS: 'TSh',\n UAH: '₴',\n UGX: 'USh',\n USD: '$',\n UYU: '$U',\n UZS: 'лв',\n VEF: 'Bs',\n VND: '₫',\n VUV: 'VT',\n WST: 'WS$',\n XAF: 'FCFA',\n XBT: 'Ƀ',\n XCD: '$',\n XOF: 'CFA',\n XPF: '₣',\n YER: '﷼',\n ZAR: 'R',\n ZWD: 'Z$',\n};\n\nexport default symbols;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Input,\n Label,\n InputGroup,\n InputGroupAddon,\n InputGroupText,\n FormGroup,\n} from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport currency from 'react-currency-formatter';\nimport symbols from './symbols';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * Currency component\n * will display an input field\n * with decimal places according to the currency,\n * if no currency is given, no decimal places will be added\n */\nclass Currency extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n placeholder,\n suffix,\n managedContent,\n validation,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n placeholder: { defaultValue: placeholder },\n suffix: { defaultValue: suffix },\n validation: validation,\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n dp: dpProp = null,\n code,\n children,\n validation = {},\n inputGroupClassName = '',\n labelClassName = '',\n groupClassName = '',\n showErrors = true,\n id,\n field,\n disabled,\n required,\n onChange,\n onBlur,\n maxDigits = 10, //Currency Default restricted to 10 digits, make this - false to remove the restriction\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const placeholder = contentValue(ContentType.Text, 'placeholder');\n const suffix = contentValue(ContentType.Text, 'suffix');\n\n // added this cludge to find position of symbol and decimal places (when not specified) as I didn't want to duplicate the react-currency-formatter code\n // there may be a better way to do this in the future\n let position = null;\n let dp = dpProp;\n if (code) {\n position = currency({\n quantity: 0,\n currency: code,\n symbol: '!',\n decimal: '.',\n });\n if (!dp) {\n //If dp not specified, use decimal places related to the currency\n let tempExtract =\n position.replace(' ', '').length - position.indexOf('.') - 1;\n dp = position.endsWith('!') ? tempExtract - 1 : tempExtract;\n }\n }\n const dpPat = !dp || dp === 0 ? '' : `([.]{1}[0-9]{0,${dp}})?`;\n const digitPat = !maxDigits ? '*' : `{0,${maxDigits}}`;\n const pattern = `^([0-9]{1,3},?)${digitPat}${dpPat}$`;\n const inputOverride = (e, dp, func) => {\n const { target = {} } = e;\n const { value = '' } = target;\n if (\n dp > 0 &&\n value.indexOf('.') !== -1 &&\n value.length - value.indexOf('.') > dp + 1\n ) {\n return;\n }\n const found = value.match(new RegExp(pattern));\n if (value && !found) {\n return;\n }\n\n if (value && target.validity && !target.validity.valid) {\n return;\n }\n if (!value || !isNaN(parseFloat(value))) {\n if (func) {\n func(e);\n }\n }\n };\n\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n const symbol = symbols[code] || code;\n const isRequired =\n required || (validation && validation.rules && validation.rules.required);\n return (\n \n {label || subLabel || description ? (\n \n ) : (\n ''\n )}\n \n {position && position.startsWith('!') ? (\n \n {symbol}\n \n ) : (\n ''\n )}\n inputOverride(event, dp, onBlur)}\n onChange={event => inputOverride(event, dp, onChange)}\n invalid={Validate.isInvalid(state)}\n valid={Validate.isValid(state)}\n id={id}\n name={fieldName}\n value={value}\n type=\"text\"\n placeholder={placeholder}\n inputMode={dp === 0 ? 'numeric' : 'decimal'}\n pattern={pattern}\n required={required}\n disabled={disabled}\n {...rest}\n />\n {position && position.endsWith('!') ? (\n \n {symbol}\n \n ) : (\n ''\n )}\n \n {suffix &&

{suffix}

}\n {children}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nCurrency.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Text placeholder text\n */\n placeholder: PropTypes.string,\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * Currency code\n */\n code: PropTypes.string,\n /**\n * Currency description\n */\n description: PropTypes.string,\n /**\n * Input disabled or not\n */\n disabled: PropTypes.bool,\n /**\n * decimal places\n */\n dp: PropTypes.number,\n /**\n * Maximum number of digits\n */\n maxDigits: PropTypes.number,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * Currency ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Style class name for input group\n */\n inputGroupClassName: PropTypes.string,\n /**\n * Label text\n */\n label: PropTypes.string,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * onBlur function\n */\n onBlur: PropTypes.func.isRequired,\n /**\n * onChange function\n */\n onChange: PropTypes.func.isRequired,\n /**\n * Input required or not\n */\n required: PropTypes.bool,\n /**\n * Show errors or not\n */\n showErrors: PropTypes.bool,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Input validation\n */\n validation: PropTypes.object,\n};\n\nexport default contentManaged(Currency);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Input, Label, Col, Row, FormGroup } from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * Slider component\n */\nclass Slider extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n suffix,\n placeholder,\n managedContent,\n validation,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n placeholder: { defaultValue: placeholder },\n suffix: { defaultValue: suffix },\n validation: validation,\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n withInput,\n dp,\n children,\n validation = {},\n labelClassName = '',\n inputClassName = '',\n groupClassName = '',\n showErrors = true,\n id,\n field,\n onChange,\n onBlur,\n disabled,\n required,\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const placeholder = contentValue(ContentType.Text, 'placeholder');\n const suffix = contentValue(ContentType.Text, 'suffix');\n const inputOverride = (e, dp, func) => {\n const { target = {} } = e;\n const { value = '' } = target;\n if (\n dp > 0 &&\n value.indexOf('.') !== -1 &&\n value.length - value.indexOf('.') > dp + 1\n ) {\n return;\n }\n if (!target.validity.valid) {\n return;\n }\n if (!value || !isNaN(parseFloat(value))) {\n func(e);\n }\n };\n var step = dp <= 0 ? '1' : '.' + '0'.repeat(dp - 1) + '1';\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n const isRequired =\n required || (validation && validation.rules && validation.rules.required);\n return (\n \n \n \n \n inputOverride(event, dp, onBlur)}\n onChange={event => inputOverride(event, dp, onChange)}\n id={id}\n name={fieldName}\n value={value}\n type=\"range\"\n step={step}\n {...rest}\n />\n \n {withInput ? (\n \n inputOverride(event, dp, onBlur)}\n onChange={event => inputOverride(event, dp, onChange)}\n invalid={Validate.isInvalid(state)}\n valid={Validate.isValid(state)}\n id={`${id}-input`}\n name={fieldName}\n value={value}\n placeholder={placeholder}\n disabled={disabled}\n required={required}\n type=\"number\"\n step={step}\n {...rest}\n />\n \n ) : (\n ''\n )}\n \n {suffix &&

{suffix}

}\n {children}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nSlider.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * Text placeholder text\n */\n placeholder: PropTypes.string,\n /**\n * Date description text\n */\n description: PropTypes.string,\n /**\n * Input disabled or not\n */\n disabled: PropTypes.bool,\n /**\n * decimal places\n */\n dp: PropTypes.number,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * Slider ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Style class name for input\n */\n inputClassName: PropTypes.string,\n /**\n * Label text\n */\n label: PropTypes.string,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * onBlur function\n */\n onBlur: PropTypes.func.isRequired,\n /**\n * onChange function\n */\n onChange: PropTypes.func.isRequired,\n /**\n * Input required or not\n */\n required: PropTypes.bool,\n /**\n * Show errors or not\n */\n showErrors: PropTypes.bool,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Input validation\n */\n validation: PropTypes.object,\n withInput: PropTypes.any,\n};\n\nexport default contentManaged(Slider);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Input,\n Label,\n InputGroup,\n InputGroupAddon,\n InputGroupText,\n FormGroup,\n} from 'reactstrap';\nimport Errors, { HasErrors } from './Errors';\nimport { Validate } from '@myie/interact';\nimport Datetime from 'react-datetime';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\nimport { Icon, Content } from '@myie/interact-dom';\n\n/**\n * Date component (calendar date picker)\n * will display an input field with the calendar icon\n */\nclass Date extends React.Component {\n constructor(props) {\n super(props);\n const {\n label,\n subLabel,\n description,\n placeholder,\n suffix,\n managedContent,\n validation,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n suffix: { defaultValue: suffix },\n calendar: { defaultValue: 'Open calendar' },\n placeholder: { defaultValue: placeholder },\n validation: validation,\n });\n }\n\n render() {\n const {\n children,\n validation = {},\n className = '',\n labelClassName = '',\n groupClassName = '',\n showErrors = true,\n id,\n field,\n disabled,\n required,\n onChange,\n onBlur,\n contentValue,\n managedContent,\n validRange,\n ...rest\n } = this.props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const { value = '', state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const suffix = contentValue(ContentType.Text, 'suffix');\n const placeholder = contentValue(ContentType.Text, 'placeholder');\n let fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n const isRequired =\n required || (validation && validation.rules && validation.rules.required);\n const renderInput = function(props, openCalendar) {\n return (\n \n \n \n \n \n \n );\n };\n\n const dateChange = e => {\n const val = typeof e !== 'string' ? e.format('DD/MM/YYYY') : e;\n onBlur({\n target: {\n name: fieldName,\n value: val,\n },\n });\n };\n\n return (\n \n {label || subLabel || description ? (\n \n ) : (\n ''\n )}\n \n \n \n \n \n \n \n \n {suffix &&

{suffix}

}\n {children}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nDate.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Text placeholder text\n */\n placeholder: PropTypes.string,\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * Style class name for InputGroup\n */\n className: PropTypes.string,\n /**\n * Date description text\n */\n description: PropTypes.string,\n /**\n * Input disabled or not\n */\n disabled: PropTypes.bool,\n /**\n * Input field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Style class name for group\n */\n groupClassName: PropTypes.string,\n /**\n * Date ID\n */\n id: PropTypes.string.isRequired,\n /**\n * Label text\n */\n label: PropTypes.string,\n /**\n * Style class name for label\n */\n labelClassName: PropTypes.string,\n /**\n * onBlur function\n */\n onBlur: PropTypes.func.isRequired,\n /**\n * onChange function\n */\n onChange: PropTypes.func.isRequired,\n /**\n * Input required or not\n */\n required: PropTypes.bool,\n /**\n * Show errors or not\n */\n showErrors: PropTypes.bool,\n /**\n * Sub label text\n */\n subLabel: PropTypes.string,\n /**\n * Suffix text\n */\n suffix: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n /**\n * Input validation\n */\n validation: PropTypes.object,\n /**\n * Valid Date range (it disables any date outside the range)\n */\n validRange: PropTypes.func,\n};\n\nexport default contentManaged(Date);\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\n/**\n * Value component\n * will display given values\n */\nclass Value extends React.Component {\n render() {\n const { props } = this;\n\n const { value, decimalPlaces, ...rest } = props;\n\n let formattedValue = value;\n\n if (decimalPlaces && Number(decimalPlaces)) {\n const convertedValue = value && Number(value) ? Number(value) : Number(0);\n formattedValue = convertedValue.toFixed(Number(decimalPlaces));\n }\n\n if (rest && Object.keys(rest).length) {\n return {formattedValue};\n }\n return {formattedValue};\n }\n}\n\nValue.propTypes = {\n /**\n * Value to display\n */\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n decimalPlaces: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n};\n\nexport default Value;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Card,\n Input,\n Label,\n InputGroupAddon,\n InputGroupText,\n InputGroup,\n ListGroup,\n ListGroupItem,\n Alert,\n FormGroup,\n} from 'reactstrap';\nimport { Form as FormUpdater, Connection } from '@myie/interact';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * AddressLookup component\n */\nclass AddressLookup extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n error: {},\n response: {},\n form: {\n address: {\n rules: {\n required: true,\n },\n },\n },\n };\n const { label, subLabel, description, managedContent } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n invalidPostcodeFormat: {\n defaultValue: 'You have entered an invalide postcode format.',\n },\n notFound: {\n defaultValue: `No Address has been found for entered Postcode.`,\n },\n failed: {\n defaultValue: `Postcode lookup is currently unavailable.`,\n },\n singleAddress: {\n defaultValue: `A single Address has been found.`,\n },\n multipleAddresses: {\n defaultValue: `Multiple Addresses have been found please select your address.`,\n },\n });\n }\n\n selectAddress = (e, address, callback) => {\n if (typeof callback === 'function') {\n callback(address);\n }\n this.setState({ ...this.state, error: {}, response: {} });\n };\n\n processAddresses = (json, callback) => {\n if (json.ResponseStatus === 'Success') {\n this.setState({ ...this.state, response: json, error: null });\n if (json.Addresses.length === 1 && typeof callback === 'function') {\n callback(json.Addresses[0]);\n }\n } else {\n this.setState({ ...this.state, error: {}, response: json });\n }\n };\n\n onChange = e => {\n const form = FormUpdater.update(this.state.form, e.target);\n this.setState({ ...this.state, form });\n };\n\n onClick = (e, callback) => {\n const { value = '' } = this.state.form.address;\n\n const request = {\n Postcode: value,\n HouseNumber: '',\n };\n return fetch(Connection.baseUrl() + `/addresslookup/v1.0/addresses/find`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => this.processAddresses(json, callback))\n .catch(error => this.setState({ ...this.state, error, response: {} }));\n };\n\n render() {\n const {\n children,\n labelClassName = '',\n groupClassName = '',\n id,\n callback,\n contentValue,\n managedContent,\n ...rest\n } = this.props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n\n const { value = '' } = this.state.form.address;\n const { response = {}, error = {} } = this.state;\n const addressComponents = [];\n if (Array.isArray(response.Addresses)) {\n response.Addresses.forEach(address => {\n addressComponents.push(\n this.selectAddress(e, address, callback)}\n >\n {address.BuildingName} {address.BuildingNumber}{' '}\n {address.AddressLine1} {address.Postcode}\n ,\n );\n });\n }\n return (\n \n \n \n \n \n \n this.onClick(e, callback)}\n />\n \n \n \n {children}\n\n {error && error.message ? (\n \n {error.message}\n \n ) : (\n ''\n )}\n {response.ResponseStatus === 'InvalidPostcodeFormat' ? (\n \n {contentValue(ContentType.Text, 'invalidPostcodeFormatError')}\n \n ) : (\n ''\n )}\n {response.ResponseStatus === 'NotFound' ? (\n \n {contentValue(ContentType.Text, 'notFound')}\n \n ) : (\n ''\n )}\n {response.ResponseStatus === 'Failed' ? (\n \n {contentValue(ContentType.Text, 'failed')}\n \n ) : (\n ''\n )}\n {addressComponents.length === 1 ? (\n \n {contentValue(ContentType.Text, 'singleAddress')}\n \n ) : (\n ''\n )}\n {addressComponents.length > 1 ? (\n <>\n \n {contentValue(ContentType.Text, 'multipleAddresses')}\n \n \n {addressComponents}\n \n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nAddressLookup.propTypes = {\n callback: PropTypes.func,\n children: PropTypes.element.isRequired,\n contentValue: PropTypes.any,\n description: PropTypes.string,\n groupClassName: PropTypes.string,\n id: PropTypes.number.isRequired,\n label: PropTypes.string.isRequired,\n labelClassName: PropTypes.string,\n managedContent: PropTypes.any,\n subLabel: PropTypes.string,\n};\n\nexport default contentManaged(AddressLookup);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputGroup, Input, Label } from 'reactstrap';\nimport { Validate } from '@myie/interact';\nimport moment from 'moment';\nimport Errors, { HasErrors } from './Errors';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * Datepicker component\n * will display Day Month Year dropdowns\n */\nclass DatePicker extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n daysInMonth: 31,\n day: false,\n month: false,\n year: false,\n };\n const {\n label,\n subLabel,\n description,\n suffix,\n managedContent,\n validation,\n } = props;\n managedContent({\n label: { defaultValue: label },\n subLabel: { defaultValue: subLabel },\n description: { defaultValue: description },\n suffix: { defaultValue: suffix },\n dayLabel: { defaultValue: 'Day' },\n monthLabel: { defaultValue: 'Month' },\n yearLabel: { defaultValue: 'Year' },\n daySelect: { defaultValue: 'Day' },\n monthSelect: { defaultValue: 'Month' },\n yearSelect: { defaultValue: 'Year' },\n validation: validation,\n });\n }\n\n componentDidMount() {\n if (this.props.selectedDate) {\n let dateArr = this.props.selectedDate.split('-');\n this.setState({\n year: dateArr[0],\n month: dateArr[1],\n day: dateArr[2],\n });\n }\n }\n\n getDaysInMonth = (year, month) => {\n return moment(year + '-' + month, 'YYYY-MM').daysInMonth();\n };\n\n changeDate = (e, f) => {\n const { name, value } = e.target;\n const { field } = this.props;\n const data = { ...this.state };\n data[name] = value;\n if (data.year && data.month) {\n data.daysInMonth = this.getDaysInMonth(data.year, data.month);\n data.day = data.day > data.daysInMonth ? null : data.day;\n }\n const date = data.year + '-' + data.month + '-' + data.day;\n f({ target: { name: field, value: date } });\n this.setState({\n ...this.state,\n [name]: data[name],\n daysInMonth: data.daysInMonth,\n });\n };\n\n dateOnChange = e => {\n const { onChange } = this.props;\n this.renderMonths();\n this.renderDays();\n this.renderYears();\n this.changeDate(e, onChange);\n };\n\n dateOnBlur = e => {\n const { onBlur, onChange } = this.props;\n const data = { ...this.state };\n if (data.day && data.month && data.year) {\n this.changeDate(e, onBlur);\n } else {\n this.changeDate(e, onChange);\n }\n };\n\n renderDays = () => {\n let startFrom = moment().format('DD') - 0;\n let days = [];\n if (this.props.showFutureDate) {\n for (let i = startFrom; i <= this.state.daysInMonth; i++) {\n days.push(\n ,\n );\n }\n } else {\n Array.from(Array(this.state.daysInMonth).keys()).map(counter => {\n let day = counter + 1;\n days.push(\n ,\n );\n return true;\n });\n }\n return days;\n };\n\n renderMonths = () => {\n let startFrom = moment().format('MM') - 0;\n let year = moment().format('YYYY') - 0;\n let options = [];\n if (\n this.props.showFutureDate &&\n (!this.state.year || year === this.state.year - 0)\n ) {\n for (let i = startFrom; i <= moment.months().length - 0; i++) {\n options.push(\n \n {moment.months()[i - 1]}\n ,\n );\n }\n } else {\n moment.months().map(month => {\n options.push(\n \n {month}\n ,\n );\n return true;\n });\n }\n this.renderDays();\n return options;\n };\n\n renderYears = () => {\n let years = [];\n const thisYear = new Date().getFullYear();\n if (this.props.showFutureDate) {\n Array.from(Array(2).keys()).map(counter => {\n let year = thisYear + counter;\n years.push(\n ,\n );\n return true;\n });\n } else {\n Array.from(Array(120).keys()).map(counter => {\n let year = thisYear - counter - 18;\n years.push(\n ,\n );\n return true;\n });\n }\n return years;\n };\n\n render() {\n const {\n showErrors = true,\n field,\n id,\n validation = {},\n groupClassName,\n labelClassName,\n disabled,\n required,\n contentValue,\n } = this.props;\n const { state = {} } = validation;\n const label = contentValue(ContentType.Text, 'label');\n const subLabel = contentValue(ContentType.Text, 'subLabel');\n const description = contentValue(ContentType.Text, 'description');\n const suffix = contentValue(ContentType.Text, 'suffix');\n var fieldName =\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\n const isRequired =\n required || (validation && validation.rules && validation.rules.required);\n return (\n \n \n {label}\n {isRequired ? (\n \n *\n (required field)\n \n ) : (\n ''\n )}{' '}\n {subLabel.length > 0 ? {subLabel} : ''}\n {description.length > 0 ? (\n {description}\n ) : (\n ''\n )}\n \n \n \n {contentValue(ContentType.Text, 'dayLabel')}\n \n \n \n {this.renderDays()}\n \n \n {contentValue(ContentType.Text, 'monthLabel')}\n \n \n \n {this.renderMonths()}\n \n \n {contentValue(ContentType.Text, 'yearLabel')}\n \n \n \n {this.renderYears()}\n \n \n {suffix.length > 0 ?

{suffix}

: ''}\n {showErrors ? (\n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nDatePicker.propTypes = {\n contentValue: PropTypes.any,\n description: PropTypes.string,\n disabled: PropTypes.any,\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n groupClassName: PropTypes.string,\n id: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n labelClassName: PropTypes.string,\n managedContent: PropTypes.func.isRequired,\n onBlur: PropTypes.func.isRequired,\n onChange: PropTypes.func.isRequired,\n required: PropTypes.bool,\n selectedDate: PropTypes.string,\n showErrors: PropTypes.bool,\n showFutureDate: PropTypes.bool,\n subLabel: PropTypes.string,\n suffix: PropTypes.string,\n validation: PropTypes.object,\n};\n\nexport default contentManaged(DatePicker);\n","import React from 'react';\nimport gtmParts from 'react-google-tag-manager';\nimport PropTypes from 'prop-types';\n\n/**\n * GoogleTagManager component\n */\nclass GoogleTagManager extends React.Component {\n componentDidMount() {\n const dataLayerName = this.props.dataLayerName || 'dataLayer';\n const scriptId = this.props.scriptId || 'react-google-tag-manager-gtm';\n\n if (!window[dataLayerName]) {\n const script = document.createElement('script');\n const gtmScriptNode = document.getElementById(scriptId);\n const scriptText = document.createTextNode(gtmScriptNode.textContent);\n\n script.appendChild(scriptText);\n document.head.appendChild(script);\n }\n }\n\n render() {\n const gtm = gtmParts({\n id: this.props.gtmId,\n dataLayerName: this.props.dataLayerName || 'dataLayer',\n additionalEvents: this.props.additionalEvents || {},\n previewVariables: this.props.previewVariables || false,\n scheme: this.props.scheme || 'https:',\n });\n\n return (\n \n {gtm.noScriptAsReact()}\n
\n {gtm.scriptAsReact()}\n
\n
\n );\n }\n}\n\nGoogleTagManager.propTypes = {\n additionalEvents: PropTypes.object,\n dataLayerName: PropTypes.string,\n gtmId: PropTypes.string.isRequired,\n previewVariables: PropTypes.string,\n scheme: PropTypes.string,\n scriptId: PropTypes.string,\n};\n\nexport default GoogleTagManager;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Session } from '@myie/interact';\n\n/**\n * IfAuthenticated component\n * will display the content only if the session is authenticated\n */\nclass IfAuthenticated extends React.Component {\n render() {\n const { children } = this.props;\n if (Session.isAuthenticated()) {\n return {children};\n } else return null;\n }\n}\n\nIfAuthenticated.propTypes = {\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n};\n\nexport default IfAuthenticated;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\n\n/**\n * Dialog component\n * will display a modal\n */\nclass Dialog extends React.Component {\n render() {\n const { props } = this;\n\n const { isOpen, children, id, title, ...rest } = props;\n //Accessibility - Role: Dialog and tabindex is set from \n return (\n \n {title}\n {children}\n \n \n );\n }\n}\n\nDialog.propTypes = {\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * Modal is shown or not\n */\n isOpen: PropTypes.bool.isRequired,\n /**\n * Dialog ID\n */\n id: PropTypes.string,\n /**\n * Title text\n */\n title: PropTypes.string.isRequired,\n};\n\nexport default Dialog;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\n\nclass BankHolidays extends React.Component {\n constructor(props) {\n super(props);\n const { holidayList, managedContent } = props;\n this.state = {};\n managedContent(\n {\n holidayList: { defaultValue: holidayList },\n },\n true,\n );\n }\n\n static getDerivedStateFromProps = nextProps => {\n const {\n holidays,\n setBankHolidays,\n contentValue,\n managedContent,\n ...rest\n } = nextProps;\n\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const copytextValue = contentValue(ContentType.Text, 'holidayList');\n if (holidays !== copytextValue) {\n setBankHolidays(copytextValue);\n }\n\n return null;\n };\n\n render() {\n const { contentValue, managedContent, tag, ...rest } = this.props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const holidayList = contentValue(ContentType.Text, 'holidayList');\n\n if (tag) {\n var Component = tag;\n\n return {holidayList};\n }\n return {holidayList};\n }\n}\n\nBankHolidays.propTypes = {\n contentValue: PropTypes.func.isRequired,\n holidayList: PropTypes.any,\n managedContent: PropTypes.func.isRequired,\n tag: PropTypes.any,\n template: PropTypes.any,\n setBankHolidays: PropTypes.any,\n};\nconst mapStateToProps = state => {\n const { customccbSavingsServicingDefinition } = state;\n return {\n ...customccbSavingsServicingDefinition,\n };\n};\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(contentManaged(BankHolidays));\n","import { Session, Settings, Connection } from '@myie/interact';\nvar interval;\n\nconst TimeOut = function(timeOutObj) {\n this.timeoutID = null;\n\n this.checkTimer = () => {\n return interval != null;\n };\n\n this.clearTimer = () => {\n window.clearInterval(interval);\n interval = null;\n };\n\n this.startTimer = check => {\n if (check && interval) {\n return;\n }\n window.clearInterval(interval);\n this.timeoutID = window.setInterval(this.goInactive, 1000);\n window.sessionStorage.setItem('timeoutID', this.timeoutID);\n interval = this.timeoutID;\n if (Session.isAuthenticated()) {\n fetch(Connection.baseUrl('utility') + `v1.0/ping`, {\n method: 'get',\n headers: Connection.headers(),\n });\n }\n };\n\n this.goInactive = () => {\n let timeoutSpan;\n if (Session.isAuthenticated()) {\n timeoutSpan = Settings.sessionExpiry || 20;\n } else {\n timeoutSpan = Settings.ticketExpiry || 20;\n }\n let currentTime = new Date().getTime();\n let lastRequestTime = window.sessionStorage.getItem('lastRequestTime');\n let elapsedMinutes = (currentTime - lastRequestTime) / (1000 * 60);\n\n if (\n elapsedMinutes > timeoutSpan - 1 &&\n elapsedMinutes < timeoutSpan - 0.01\n ) {\n timeOutObj.showTimeoutModal(\n this.startTimer,\n this.clearTimer,\n timeOutObj.type === `SECURITY_DETAILS`\n ? `TimerCountDown:${timeoutSpan * 60 -\n Math.round(elapsedMinutes * 60)}`\n : timeOutObj.message,\n timeOutObj.url,\n timeOutObj.onTimeout,\n timeOutObj.userLogout,\n );\n } else if (elapsedMinutes >= timeoutSpan) {\n if (timeOutObj && timeOutObj.beforeTimeout) {\n timeOutObj.beforeTimeout();\n }\n Session.abandon();\n clearInterval(this.timeoutID);\n interval = null;\n if (timeOutObj) {\n timeOutObj.onTimeout();\n timeOutObj.userLogout();\n if (timeOutObj.history) {\n timeOutObj.history.push(timeOutObj.url || '/signed-out');\n }\n }\n }\n };\n};\n\nexport default TimeOut;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Button } from 'reactstrap';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\nclass Pagination extends React.Component {\n constructor(props) {\n super(props);\n const { managedContent } = props;\n managedContent({\n previous: { defaultValue: 'Previous' },\n text: { defaultValue: 'Page $[currentPage] of $[totalPages]' },\n next: { defaultValue: 'Next' },\n });\n }\n\n render() {\n const {\n Total,\n Offset,\n Size,\n getNextPage,\n getPreviousPage,\n contentValue,\n } = this.props;\n const totalPages =\n Math.ceil(Total / Size) === 0 ? 1 : Math.ceil(Total / Size);\n const currentPage = Math.ceil(Offset / Size) + 1;\n const previous = contentValue(ContentType.Text, 'previous');\n const next = contentValue(ContentType.Text, 'next');\n const text = contentValue(ContentType.Text, 'text', {\n currentPage: currentPage,\n totalPages: totalPages,\n });\n\n return (\n
\n

{text}

\n getPreviousPage(Offset, Size)}\n disabled={currentPage === 1 ? true : false}\n >\n {previous}\n \n \n getNextPage(Offset, Size, Total)}\n disabled={currentPage === totalPages ? true : false}\n >\n {next}\n \n \n
\n );\n }\n}\n\nPagination.propTypes = {\n Offset: PropTypes.number.isRequired,\n Size: PropTypes.number.isRequired,\n Total: PropTypes.number.isRequired,\n contentValue: PropTypes.any,\n getNextPage: PropTypes.func.isRequired,\n getPreviousPage: PropTypes.func.isRequired,\n managedContent: PropTypes.any,\n next: PropTypes.any,\n previous: PropTypes.any,\n subLabel: PropTypes.any,\n};\n\nexport default contentManaged(Pagination);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Card } from 'reactstrap';\nimport { Icon, Content } from '@myie/interact-dom';\n\nclass FeaturesAdvert1 extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\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\nFeaturesAdvert1.propTypes = {\n items: PropTypes.string,\n};\n\nexport default FeaturesAdvert1;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Card } from 'reactstrap';\nimport { Icon, Content } from '@myie/interact-dom';\n\nclass FeaturesAdvert2 extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\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\nFeaturesAdvert2.propTypes = {\n items: PropTypes.string,\n};\n\nexport default FeaturesAdvert2;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Card } from 'reactstrap';\nimport { Icon, Content } from '@myie/interact-dom';\n\nclass FeaturesAdvert3 extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\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\nFeaturesAdvert3.propTypes = {\n items: PropTypes.string,\n};\n\nexport default FeaturesAdvert3;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Card } from 'reactstrap';\nimport { Icon, Content } from '@myie/interact-dom';\n\nclass HelpAdvert1 extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n \n \n \n

\n \n

\n

\n {' '}\n \n \n \n .\n

\n \n \n \n \n
\n
\n );\n }\n}\n\nHelpAdvert1.propTypes = {\n items: PropTypes.string,\n};\n\nexport default HelpAdvert1;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Card } from 'reactstrap';\nimport { Icon, Content, Markdown } from '@myie/interact-dom';\n\nclass HelpAdvert2 extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n \n \n \n

\n \n

\n

\n 0800 000 0000.`}\n />\n

\n \n \n \n \n
\n
\n );\n }\n}\n\nHelpAdvert2.propTypes = {\n items: PropTypes.string,\n};\n\nexport default HelpAdvert2;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Card } from 'reactstrap';\nimport { Content, Markdown, LinkTag } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nimport { Session } from '@myie/interact';\n\nclass HelpContactSidebar extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n faqClick = e => {\n if (navigator.userAgent.includes('Firefox')) {\n e.preventDefault();\n window.open('/help');\n return false;\n }\n return true;\n };\n\n render() {\n return (\n \n

\n \n

\n

\n {' '}\n \n \n {' '}\n \n

\n

\n \n \n \n \n \n \n

\n {Session.isAuthenticated() ? (\n

\n \n \n \n

\n ) : null}\n
\n );\n }\n}\n\nHelpContactSidebar.propTypes = {\n items: PropTypes.string,\n};\n\nexport default HelpContactSidebar;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Card } from 'reactstrap';\nimport { Icon, Content } from '@myie/interact-dom';\n\nclass TravelInsuranceAdvert1 extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n \n

\n \n

\n \n \n

\n \n

\n \n \n \n \n
\n
\n );\n }\n}\n\nTravelInsuranceAdvert1.propTypes = {\n items: PropTypes.string,\n};\n\nexport default TravelInsuranceAdvert1;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Button, Collapse } from 'reactstrap';\nimport { Icon, Content } from '@myie/interact-dom';\n\nclass OurProducts extends React.Component {\n constructor(props) {\n super(props);\n this.toggle = this.toggle.bind(this);\n this.state = { collapse: false };\n }\n\n toggle() {\n this.setState(state => ({ collapse: !state.collapse }));\n }\n\n render() {\n return (\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 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n );\n }\n}\n\nOurProducts.propTypes = {\n items: PropTypes.string,\n};\n\nexport default OurProducts;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Session } from '@myie/interact';\nimport { Switch, appUtility } from '@myie/interact-dom';\nimport { Modal, ModalBody, ModalFooter, Button } from 'reactstrap';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-shared';\n\nclass TimeOutModal extends React.Component {\n clickedYes = () => {\n let currentTime = new Date().getTime();\n window.sessionStorage.setItem('lastRequestTime', currentTime);\n this.props.startTimer();\n this.props.hideTimeoutModal();\n };\n\n clickedNo = () => {\n if (Session.isAuthenticated()) {\n appUtility.userSignout();\n }\n Session.abandon();\n this.props.clearTimer();\n this.props.hideTimeoutModal();\n this.props.userLogout();\n this.props.history.push(this.props.timeoutUrl);\n };\n\n render() {\n let message = this.props.timeoutMessage || '';\n let count = 0;\n\n if (typeof this.props.timeoutMessage === 'function') {\n message = this.props.timeoutMessage();\n }\n\n if (message.startsWith('TimerCountDown')) {\n const timer = message.split(':');\n message = timer[0];\n count = timer[1];\n }\n\n return (\n \n \n \"\n value={message}\n template={{\n TimerCountDown: { count: count },\n }}\n contents={{\n TimerCountDown: {\n defaultValue:\n 'For security reasons, this page will timeout in $[count] seconds. Would you like more time?',\n },\n SessionTimeout: {\n defaultValue:\n 'You will be logged out in one minute. Do you want to continue your session?',\n },\n yesButton: {\n defaultValue: 'Yes',\n },\n noButton: {\n defaultValue: 'No',\n },\n SignInTimeout: {\n defaultValue:\n 'You have taken too long to complete the sign in process. You will be returned to the first sign in page.',\n },\n ForgottenPasswordTimeout: {\n defaultValue:\n 'You have taken too long to complete the credentials reset process. You will be returned to the first forgotten credentials page.',\n },\n RegistreationTimeout: {\n defaultValue:\n 'You have taken too long to complete the registration process. You will be returned to the first registration page.',\n },\n }}\n />\n \n {Session.isAuthenticated() ||\n this.props.timeoutUrl === '/registration' ||\n this.props.timeoutUrl === '/forgotten-password' ||\n this.props.timeoutUrl === '/sign-in' ? (\n \n \n \"\n value=\"yesButton\"\n contents={{\n yesButton: {\n defaultValue: 'Yes',\n },\n }}\n />\n \n \n \"\n value=\"noButton\"\n contents={{\n noButton: {\n defaultValue: 'No',\n },\n }}\n />\n \n \n ) : (\n ''\n )}\n
\n );\n }\n}\n\nTimeOutModal.propTypes = {\n className: PropTypes.any,\n clearTimer: PropTypes.any,\n hideTimeoutModal: PropTypes.any,\n history: PropTypes.any,\n modalVisible: PropTypes.any,\n startTimer: PropTypes.any,\n timeoutMessage: PropTypes.any,\n timeoutUrl: PropTypes.any,\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(TimeOutModal);\n","import { Session } from '@myie/interact';\nimport { appUtility } from '@myie/interact-dom';\nimport TimeOut from './timeout';\n\nconst sessionTimer = function(props, check = false) {\n if (Session.isAuthenticated()) {\n const timeoutObj = {\n history: props.history,\n userLogout: props.userLogout,\n message: 'SessionTimeout',\n url: '/signed-out',\n beforeTimeout: function() {\n appUtility.userSignout();\n },\n onTimeout: function() {\n window.sessionStorage.setItem('timeoutMessage', 'SignedOut');\n },\n showTimeoutModal: props.showTimeoutModal,\n type: 'VALID_SESSION',\n };\n const timeout = new TimeOut(timeoutObj);\n timeout.startTimer(check);\n }\n};\n\nexport default sessionTimer;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Session, Connection, TwoFactor } from '@myie/interact';\nimport { Route, Redirect, withRouter } from 'react-router-dom';\nimport { sessionTimer } from '@myie/interact-dom';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { mapDispatchToProps as mapDispatchToProps2FA } from '@myie/interact-two-factor';\n\nclass PrivateRoute extends React.Component {\n constructor(props) {\n super(props);\n const { location } = props;\n this.state = { pathname: location.pathname };\n }\n\n componentWillUnmount() {\n const { finishTwoFactor } = this.props;\n if (TwoFactor.getStatus()) finishTwoFactor({});\n }\n\n componentDidMount() {\n if (Session.isAuthenticated()) {\n sessionTimer(this.props, true);\n }\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n if (\n Session.isAuthenticated() &&\n prevState.pathname !== nextProps.location.pathname &&\n nextProps.computedMatch.url === nextProps.location.pathname\n ) {\n const lastRequestTime = new Date().getTime();\n window.sessionStorage.setItem('lastRequestTime', lastRequestTime);\n fetch(Connection.baseUrl('utility') + `v1.0/ping`, {\n method: 'get',\n headers: Connection.headers(),\n });\n return { ...prevState, pathname: nextProps.location.pathname };\n }\n return null;\n }\n\n render() {\n const { component: Component, render, ...rest } = this.props;\n if (Session.isAuthenticated()) {\n if (render) {\n return ;\n } else {\n return } />;\n }\n }\n\n return (\n (\n \n )}\n />\n );\n }\n}\n\nPrivateRoute.propTypes = {\n finishTwoFactor: PropTypes.any,\n Component: PropTypes.any,\n component: PropTypes.any,\n computedMatch: PropTypes.any,\n location: PropTypes.any,\n render: PropTypes.any,\n};\n\nexport default withRouter(\n connect(\n null,\n { ...mapDispatchToProps2FA, ...mapDispatchToProps },\n )(PrivateRoute),\n);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert } from 'reactstrap';\nimport { Content, AppMeta } from '@myie/interact-dom';\n\nconst NoMatch = props => {\n return (\n
\n \n

\n \n

\n \n

\n \n

\n \n {props.location.pathname}\n {props.location.hash}\n \n
\n
\n );\n};\n\nNoMatch.propTypes = {\n location: PropTypes.object,\n};\n\nexport default NoMatch;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Route } from 'react-router-dom';\n\nclass PublicRoute extends React.Component {\n render() {\n const { component: Component, ...rest } = this.props;\n\n return } />;\n }\n}\n\nPublicRoute.propTypes = {\n component: PropTypes.any,\n};\n\nexport default PublicRoute;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert, Button } from 'reactstrap';\nimport { Content, AppMeta } from '@myie/interact-dom';\n\nclass NetworkError extends React.Component {\n onGoBack = () => {\n const { history } = this.props;\n history.goBack();\n };\n\n render() {\n return (\n
\n \n

\n \n

\n \n \n \n
\n \n \n \n
\n
\n );\n }\n}\n\nNetworkError.propTypes = {\n history: PropTypes.any,\n};\n\nexport default NetworkError;\n","import React from 'react';\nimport { Content } from '@myie/interact-dom';\n\nconst MinusGlyph = () => {\n return (\n <>\n \n \n \n \n \n );\n};\n\nexport default MinusGlyph;\n","import React from 'react';\nimport { Content } from '@myie/interact-dom';\n\nconst PlusGlyph = () => {\n return (\n <>\n \n \n \n \n \n );\n};\n\nexport default PlusGlyph;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\n\nclass Colours extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n //Convert RGB code to hex\n rgbToHex = rgb => {\n rgb = rgb.match(\n /^rgba?[\\s+]?\\([\\s+]?(\\d+)[\\s+]?,[\\s+]?(\\d+)[\\s+]?,[\\s+]?(\\d+)[\\s+]?/i,\n );\n return rgb && rgb.length === 4\n ? '#' +\n ('0' + parseInt(rgb[1], 10).toString(16)).slice(-2) +\n ('0' + parseInt(rgb[2], 10).toString(16)).slice(-2) +\n ('0' + parseInt(rgb[3], 10).toString(16)).slice(-2)\n : '';\n };\n\n //Create an array of the colours from the css, and combine the hext and rgb into a string\n componentDidMount() {\n const colourPanels = document.querySelectorAll(\n 'div[class^=\"brand-colour\"]',\n );\n\n var list = [];\n for (var i = 0; i < colourPanels.length; i++) {\n var colourPanel = colourPanels[i];\n const style = getComputedStyle(colourPanel, null);\n const RGBBackgroundColor = style.backgroundColor;\n const HexBackgroundColour = this.rgbToHex(RGBBackgroundColor);\n const backgroundColourCombination =\n RGBBackgroundColor + ' ' + HexBackgroundColour;\n\n list.push(backgroundColourCombination);\n }\n\n this.setState({\n testdata: list,\n });\n }\n\n render() {\n /* This will eventually dynamically cycle through the colours so manual html below wont be needed, but it doesn't work yet.\n \n let items = [];\n\n for (var i = 0; i < this.state.testdata.length; i++) {\n var a = i + 1;\n var classNameVariable = 'brand-colour-' + a;\n items.push(\n \n
{this.state.testdata[i]}
\n ,\n );\n }*/\n\n return (\n
\n

\n Defined within{' '}\n \n sass/abstracts/colours.scss\n \n

\n

Main Colours

\n \n \n
{this.state.testdata[0]}
\n \n \n
{this.state.testdata[1]}
\n \n \n
{this.state.testdata[2]}
\n \n \n
{this.state.testdata[3]}
\n \n \n
{this.state.testdata[4]}
\n \n \n
{this.state.testdata[5]}
\n \n
\n

Text and Links

\n \n \n
{this.state.testdata[6]}
\n \n \n
{this.state.testdata[7]}
\n \n \n
{this.state.testdata[8]}
\n \n \n
{this.state.testdata[9]}
\n \n \n
{this.state.testdata[10]}
\n \n \n
{this.state.testdata[11]}
\n \n
\n

Shades and Light Colours

\n \n \n
\n {this.state.testdata[12]}\n
\n \n \n
\n {this.state.testdata[13]}\n
\n \n \n
\n {this.state.testdata[14]}\n
\n \n \n
\n {this.state.testdata[15]}\n
\n \n \n
\n {this.state.testdata[16]}\n
\n \n \n
{this.state.testdata[17]}
\n \n
\n \n \n
\n {this.state.testdata[18]}\n
\n \n \n
\n {this.state.testdata[19]}\n
\n \n \n
\n {this.state.testdata[20]}\n
\n \n \n
\n {this.state.testdata[21]}\n
\n \n \n
\n {this.state.testdata[22]}\n
\n \n \n
{this.state.testdata[23]}
\n \n
\n \n \n
{this.state.testdata[30]}
\n \n \n
{this.state.testdata[31]}
\n \n \n
{this.state.testdata[32]}
\n \n \n
{this.state.testdata[33]}
\n \n \n
{this.state.testdata[34]}
\n \n \n
{this.state.testdata[35]}
\n \n
\n

Supporting colours

\n \n \n
\n {this.state.testdata[24]}\n
\n \n \n
\n {this.state.testdata[25]}\n
\n \n \n
\n {this.state.testdata[26]}\n
\n \n \n
\n {this.state.testdata[27]}\n
\n \n \n
{this.state.testdata[28]}
\n \n \n
{this.state.testdata[29]}
\n \n
\n
\n );\n }\n}\n\nColours.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Colours;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nclass Typography extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

Heading level 1 - used for page titles

\n

Heading level 2

\n

Heading level 3

\n

Heading level 4

\n
Heading level 5
\n
Heading level 6
\n\n

\n This is a normal paragraph. On static pages, it’s designed for\n readability and optimising the number of characters per line.{' '}\n This is an inline link and{' '}\n \n this is the link state on hover\n \n .\n

\n

\n This is a lead paragraph for text that requires more emphasis. It\n might be used as a longer-form tagline or subheading for a page or\n content section. It may have a slightly larger font size and\n line-height.\n

\n

\n Only use bold in small amounts at a time, too much\n together and it might not have the desired effect.\n

\n

\n Smaller text is used in various places around the site.\n

\n
\n );\n }\n}\n\nTypography.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Typography;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nclass Fonts extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/typography.scss\n \n

\n
\n
Font:
\n
Open Sans, sans-serif;
\n
Font Light:
\n
Open Sans, sans-serif;
\n
Font Italic:
\n
\n Open Sans, sans-serif;\n
\n
Font SemiBold:
\n
Open Sans, sans-serif;
\n
Font Bold:
\n
\n Open Sans, sans-serif;\n
\n
\n
\n );\n }\n}\n\nFonts.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Fonts;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, ListGroup, ListGroupItem } from 'reactstrap';\nimport { Link } from 'react-router-dom';\n\nclass Lists extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/typography.scss\n \n

\n

\n There is a component made for the unordered lists{' '}\n defined within reactstrap. To see an interactive technical\n specification for this component, go to{' '}\n \n https://reactstrap.github.io/components/listgroup/\n \n .\n

\n \n \n

Unstyled list

\n \n Cras justo odio\n Dapibus ac facilisis in\n Morbi leo risus\n Porta ac consectetur ac\n Vestibulum at eros\n \n \n \n

Bullet list

\n \n Cras justo odio\n Dapibus ac facilisis in\n Morbi leo risus\n Porta ac consectetur ac\n Vestibulum at eros\n \n \n \n

Check list

\n \n Cras justo odio\n Dapibus ac facilisis in\n Morbi leo risus\n Porta ac consectetur ac\n Vestibulum at eros\n \n \n
\n \n \n

Ordered list

\n
    \n
  1. Cras justo odio
  2. \n
  3. Dapibus ac facilisis in
  4. \n
  5. Morbi leo risus
  6. \n
  7. Porta ac consectetur ac
  8. \n
  9. Vestibulum at eros
  10. \n
\n \n
\n \n \n

Description list vertical

\n \n \n £314.09\n \n \n available\n \n \n £5000.00\n \n \n credit limit\n \n \n \n \n

Description list using react

\n \n \n £314.09\n \n \n available\n \n \n £5000.00\n \n \n credit limit\n \n \n \n
\n \n \n

Description list dl-horizontal

\n
\n
Balance due
\n
£2300.13
\n
Minimum
\n
£100.00
\n
\n \n \n

Description list reversed

\n \n \n £314.09\n \n \n available\n \n \n £5000.00\n \n \n credit limit\n \n \n \n
\n
\n );\n }\n}\n\nLists.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Lists;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { SideLink } from '@myie/interact-dom';\n\nclass Badges extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/badges.scss\n \n

\n

\n There is a component made for the side link defined\n within shared/components/sideLink.js. There is no\n interactive technical guide for this. To see its usage, go to{' '}\n styleguide/components/Badges.js.\n

\n \n \n

Side Link

\n
\n \n
\n \n \n

Nav bar

\n \n
\n \n \n \n
\n
    \n
  • \n \n Messages{' '}\n \n 3\n \n \n
  • \n
\n
\n
\n \n \n
\n
\n );\n }\n}\n\nBadges.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Badges;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport {\n Row,\n Col,\n Button,\n ButtonGroup,\n ButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from 'reactstrap';\n\nclass Buttons extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/buttons.scss\n \n

\n

\n There is a component made for the buttons defined\n within reactstrap. To see an interactive technical specification for\n this component, go to:\n
\n \n https://reactstrap.github.io/components/buttons/\n \n
\n \n https://reactstrap.github.io/components/button-group/\n \n
\n \n https://reactstrap.github.io/components/button-dropdown/\n \n

\n \n \n \n Type: primary action\n Class: btn-primary\n \n \n \n Type: secondary action\n Class: btn-secondary\n \n \n \n Type: Cancel / back action\n Class: btn-default\n \n \n \n Type: link action\n Class: btn-link\n \n \n \n \n \n Type: primary action\n Class: btn-primary\n \n \n \n Type: secondary action\n Class: btn-secondary\n \n \n \n Type: Cancel / back action\n Class: btn-default\n \n \n \n Type: link action\n Class: btn-link\n \n \n \n \n \n Type: loading action\n Class: btn-loading\n \n \n \n Type: Large button\n Class: bt-lg\n \n \n \n Type: Small button\n Class: btn-sm\n \n \n \n \n \n \n\n Type: Toggle state buttons\n Class: stackbutton & gridbutton\n \n \n \n \n \n Button Dropdown\n \n Header\n Action\n Another Action\n \n Another Action\n \n \n Type: Button Dropdown\n Class: btn-group\n \n \n \n \n Button Dropdown\n \n \n Header\n Action\n Another Action\n \n Another Action\n \n \n Type: Button Dropdown\n Class: btn-group alt-group\n \n \n \n \n \n \n Button Dropdown\n \n \n Header\n Action\n Another Action\n \n Another Action\n \n \n Type: Button Dropdown\n Class: btn-group\n \n \n \n \n Button Dropdown\n \n \n Header\n Action\n Another Action\n \n Another Action\n \n \n Type: Button Dropdown\n Class: btn-group alt-group\n \n \n
\n );\n }\n}\n\nButtons.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Buttons;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Breadcrumb, BreadcrumbItem } from 'reactstrap';\nimport { Link } from 'react-router-dom';\n\nclass Badges extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/breadcrumbs.scss\n \n

\n

\n There is a component made for the breadcrumb defined\n within reactstrap. To see an interactive technical specification for\n this component, go to{' '}\n \n https://reactstrap.github.io/components/breadcrumbs/\n \n .\n

\n
\n \n \n 1 Payment details\n \n 2 Review\n \n 3 Confirmation\n \n \n
\n
\n
\n );\n }\n}\n\nBadges.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Badges;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Pagination } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\n\nclass PaginationStyleguide extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n getPreviousPage = () => {};\n\n getNextPage = () => {};\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/pagination.scss\n \n

\n

\n There is a component made for pagination defined\n within shared/components/Pagination.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n \n
\n );\n }\n}\n\nPaginationStyleguide.propTypes = {\n items: PropTypes.string,\n};\n\nexport default PaginationStyleguide;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert, Button } from 'reactstrap';\nimport { Link } from 'react-router-dom';\n\nclass AlertsStyleguide extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n visible: true,\n };\n\n this.onDismiss = this.onDismiss.bind(this);\n }\n\n onDismiss() {\n this.setState({ visible: false });\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/alerts.scss\n \n

\n

\n There is a component made for the alerts defined\n within reactstrap. To see an interactive technical specification for\n this component, go to{' '}\n \n https://reactstrap.github.io/components/alerts/\n \n .{' '}\n

\n \n This is a primary alert with{' '}\n \n an example link\n \n . Give it a click if you like.\n \n \n This is a secondary alert with{' '}\n \n an example link\n \n . Give it a click if you like.\n \n \n This is a success alert with{' '}\n \n an example link\n \n . Give it a click if you like.\n \n \n This is a danger alert with{' '}\n \n an example link\n \n . Give it a click if you like.\n \n \n This is a warning alert with{' '}\n \n an example link\n \n . Give it a click if you like.\n \n \n

This is a button to click

\n \n
\n \n This is a light alert with{' '}\n \n an example link\n \n . Give it a click if you like.\n \n \n This is a dark alert with{' '}\n \n an example link\n \n . Give it a click if you like.\n \n
\n );\n }\n}\n\nAlertsStyleguide.propTypes = {\n items: PropTypes.string,\n};\n\nexport default AlertsStyleguide;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Progress } from 'reactstrap';\nimport { Link } from 'react-router-dom';\n\nclass ProgressBars extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/progress-bars.scss\n \n

\n

\n There is a component made for the progress bars{' '}\n defined within reactstrap. To see an interactive technical\n specification for this component, go to{' '}\n \n https://reactstrap.github.io/components/progress/\n \n .{' '}\n

\n \n \n \n \n \n \n \n Meh\n \n \n 30%\n \n \n 25%\n \n \n 20%\n \n \n 5%\n \n \n
\n );\n }\n}\n\nProgressBars.propTypes = {\n items: PropTypes.string,\n};\n\nexport default ProgressBars;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Fade, Nav, NavLink, NavItem, TabContent, TabPane } from 'reactstrap';\nimport { TabNavigation } from '@myie/interact-dom';\n\nclass Tabs extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n tablist: TabNavigation.init(1),\n testdata: '',\n };\n }\n\n setTab(e) {\n e.preventDefault();\n const current = e.target.href.substring(e.target.href.indexOf('#') + 1);\n this.setState({ ...this.state, activeTab: current });\n }\n\n render() {\n const { activeTab, tablist } = this.state;\n\n return (\n
\n

\n Defined within{' '}\n \n sass/components/tabs.scss\n \n

\n

\n There is a component made for tabs defined within{' '}\n demo/account-type-savings.js and{' '}\n demo/account-type-loan.js. There is no interactive\n technical guide for this. To see its usage, go to{' '}\n styleguide/components/Tabs.js.\n

\n

\n \n Please note this is a very complicated set of components, so it is\n advisable to look at the example before building your own.\n \n

\n\n \n \n \n \n tablist.panelKeyDown(e, 0, tablist.refs)}\n >\n This is a panel\n \n \n \n \n \n tablist.panelKeyDown(e, 1, tablist.refs)}\n >\n And another panel\n \n \n \n \n
\n );\n }\n}\n\nTabs.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Tabs;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Table } from 'reactstrap';\nimport { Link } from 'react-router-dom';\n\nclass Tables extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/tables.scss\n \n

\n

\n There is a component made for tables defined within\n reactstrap. To see an interactive technical specification for this\n component, go to{' '}\n \n https://reactstrap.github.io/components/tables/\n \n .\n

\n

Table Columns

\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
Manage statements table
DateTypePayeeAmount
08 May 2014 One-off PaymentNatwest£100.00
10 Jun 2014TransferCurrent Account£pound;500.00
05 Aug 2014 Direct debit Electricity billBritish Gas£120.00
\n

Table Rows

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Description of table for accessibility purposes
PayeeJo BloggsCurrent Account
PayeeJane DoeSavings Account
PayeeJohn SmithLoan Account
\n
\n );\n }\n}\n\nTables.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Tables;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Form, FormText, Button, Alert } from 'reactstrap';\nimport {\n Text,\n DropDown,\n TextArea,\n Date,\n DatePicker,\n Radio,\n RadioButton,\n Check,\n Currency,\n Numeric,\n Slider,\n RadioGroup,\n Mask,\n Value,\n} from '@myie/interact-dom';\nimport { Validate } from '@myie/interact';\nimport { Link } from 'react-router-dom';\n\nclass Inputs extends React.Component {\n constructor(props) {\n super(props);\n // Define the initial state:\n this.state = {\n testdata: '',\n form: {\n textInput: {\n rules: {\n title: 'Text Input',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n },\n },\n textInput2: {\n rules: {\n title: 'Text Input',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n },\n },\n DropDownInput: {\n rules: {\n title: 'type of account',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n },\n },\n DropDownInput2: {\n rules: {\n title: 'type of account',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n },\n },\n textAreaInput: {\n rules: {\n title: 'Enter your reply',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n },\n },\n textAreaInput2: {\n rules: {\n title: 'Enter your reply',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n },\n },\n sliderInput: {\n rules: {\n title: 'Slider Input',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n },\n },\n sliderInput2: {\n rules: {\n title: 'Slider Input',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n },\n },\n dateInput: {\n rules: {\n title: 'date',\n stop: true,\n required: {\n trans: () => 'Please select a date.',\n },\n date: {\n format: 'dmy',\n trans: () => 'Please enter a valid date.',\n },\n greaterThanToday: {\n trans: () => 'Please enter a date later than today.',\n },\n },\n },\n dateInput2: {\n rules: {\n title: 'date',\n stop: true,\n required: {\n trans: () => 'Please select a date.',\n },\n date: {\n format: 'dmy',\n trans: () => 'Please enter a valid date.',\n },\n greaterThanToday: {\n trans: () => 'Please enter a date later than today.',\n },\n },\n },\n datePickerInput: {\n rules: {\n title: 'bday',\n stop: true,\n required: {\n trans: () => 'Please tell us your date of birth.',\n },\n date: {\n format: 'ymd',\n trans: () => 'Please select a valid date of birth.',\n },\n },\n },\n datePickerInput2: {\n rules: {\n title: 'bday',\n stop: true,\n required: {\n trans: () => 'Please tell us your date of birth.',\n },\n date: {\n format: 'ymd',\n trans: () => 'Please select a valid date of birth.',\n },\n },\n },\n radioInput: {\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n radioInput2: {\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n radioInput3: {\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n checkInput: {\n value: false,\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n checkInput2: {\n value: false,\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n checkInput3: {\n value: false,\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n checkInput4: {\n value: false,\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n checkInput5: {\n value: false,\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n checkInput6: {\n value: false,\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n checkInput7: {\n value: false,\n rules: {\n required: {\n trans: () => 'Required',\n },\n },\n },\n currencyInput: {\n rules: {\n title: 'Currency Input',\n stop: true,\n required: true,\n currency: true,\n },\n },\n currencyInput2: {\n rules: {\n title: 'Currency Input',\n stop: true,\n required: true,\n currency: true,\n },\n },\n maskInput: {\n rules: {\n title: 'Mask Input',\n stop: true,\n required: true,\n currency: true,\n },\n },\n maskInput2: {\n rules: {\n title: 'Mask Input',\n stop: true,\n required: true,\n currency: true,\n },\n },\n numericInput: {\n rules: {\n title: 'Numeric Input',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n format: {\n regex: /^([0-2]?[1-9]|3[01]|10|20)$/,\n trans: () => 'Format is Invalid',\n },\n },\n },\n numericInput2: {\n rules: {\n title: 'Numeric Input',\n stop: true,\n required: {\n trans: () => 'Required',\n },\n format: {\n regex: /^([0-2]?[1-9]|3[01]|10|20)$/,\n trans: () => 'Format is Invalid',\n },\n },\n },\n sortcode: {\n rules: {\n stop: true,\n required: {\n trans: () => 'Please enter your sort code',\n },\n sortcode: {\n trans: () => 'Please enter a valid sort code',\n },\n },\n },\n sortcode2: {\n rules: {\n stop: true,\n required: {\n trans: () => 'Please enter your sort code',\n },\n sortcode: {\n trans: () => 'Please enter a valid sort code',\n },\n },\n },\n },\n };\n }\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n onClick = e => {\n const { name, checked } = e.target;\n var { form } = this.state;\n form = Validate.input(name, checked ? 'true' : null, form);\n this.setState({ ...this.state, form });\n };\n\n submit = e => {\n e.preventDefault();\n let { form } = this.state;\n form = Validate.form(form);\n this.setState({ ...this.state, form });\n if (!form.approved) {\n return;\n }\n };\n\n render() {\n const { form } = this.state;\n const { onChange, onBlur, onClick } = this;\n\n return (\n
\n

\n Defined within{' '}\n \n sass/components/forms.scss\n \n

\n

\n NB: Every form element requires a label. If for some\n reason you wish to hide the label, you need to add copy text for the\n label and add this to the component:\n
\n labelClassName='sr-only'\n

\n\n \n
\n

Standard Inputs

\n

Text Boxes

\n

\n There is a component made for text boxes defined\n within shared/components/Text.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n Suffix Link}\n field=\"textInput\"\n id=\"textInput\"\n onChange={onChange}\n required\n onBlur={onBlur}\n validation={form.textInput}\n />\n \n
\n

Drop Down

\n

\n There is a component made for select boxes{' '}\n defined within shared/components/DropDown.js. To see\n an interactive technical specification for this component,{' '}\n click here.\n

\n \n \n \n \n \n \n \n \n \n \n
\n

Text Area

\n

\n There is a component made for text areas defined\n within shared/components/TextArea.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n \n \n
\n

Slider

\n

\n There is a component made for range sliders{' '}\n defined within shared/components/Slider.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n \n\n \n
\n
\n
\n

Date Pickers

\n

Date

\n

\n There is a component made for{' '}\n single box date pickers defined within{' '}\n shared/components/Date.js. To see an interactive\n technical specification for this component,{' '}\n click here.\n

\n

\n This component uses{' '}\n shared/components/FormattedDate.js.\n

\n \n \n
\n

DatePicker

\n

\n There is a component made for{' '}\n dropdown date pickers defined within{' '}\n shared/components/DatePicker.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n

\n This component uses{' '}\n shared/components/FormattedDate.js.\n

\n \n \n
\n
\n
\n

Radios and Checkboxes

\n

Radios

\n

\n There is a component made for radios defined\n within shared/components/Radio.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n

\n All radios must be wrapped in a{' '}\n <RadioGroup></RadioGroup> tag, and legend\n copy text will need to be added.\n

\n

\n If you want to float radio buttons in a row, pass the variable{' '}\n groupClassName='not-stacked'. You may need\n to add some max widths to the radios if they are very long.\n

\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n

RadioButton

\n

\n There is a component made for radio buttons{' '}\n defined within shared/components/Check.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n

\n All radios must be wrapped in a{' '}\n <RadioGroup></RadioGroup> tag, and legend\n copy text will need to be added.\n

\n \n \n \n \n
\n

Check boxes

\n

\n There is a component made for check boxes defined\n within shared/components/Check.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n

\n All check boxes must be wrapped in a{' '}\n <RadioGroup></RadioGroup> tag, and legend\n copy text will need to be added.\n

\n

\n If you want to float check boxes in a row, pass the variable{' '}\n groupClassName='not-stacked'. You may need\n to add some max widths to the radios if they are very long.\n

\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n
\n
\n

Bespoke Inputs

\n

Currency

\n

\n There is a component made for currency inputs{' '}\n defined within shared/components/Currency.js. To see\n an interactive technical specification for this component,{' '}\n click here.\n

\n

\n This component uses{' '}\n shared/components/FormattedCurrency.js to return the\n currency. To see or edit a full list of currencies, go to{' '}\n shared/components/symbols.js.\n

\n \n \n
\n

AddressLookup

\n

\n There is a component made for address look up{' '}\n defined within shared/components/AddressLookup.js. To\n see an interactive technical specification for this component,{' '}\n click here.\n

\n Currently in development\n
\n

InputMask

\n

\n There is a component made for input masks defined\n within shared/components/InputMask.js. It can be\n configured for various values, but is mainly used for sortcodes,\n as below. To see an interactive technical specification for this\n component, click here.\n

\n
\n \n
\n
\n \n
\n
\n

Numeric

\n

\n There is a component made for numeric inputs{' '}\n defined within shared/components/Numeric.js. To see\n an interactive technical specification for this component,{' '}\n click here.\n

\n \n \n
\n

Value

\n

\n There is a component made for printed values{' '}\n defined within shared/components/Value.js. To see an\n interactive technical specification for this component,{' '}\n click here.\n

\n

\n There are no accounts to view.\n

\n \n
\n

Form Text

\n \n Note: if somebody else has already taken this username you will\n not be able to use it.\n \n
\n \n
\n );\n }\n}\n\nInputs.propTypes = {\n i18n: PropTypes.any,\n items: PropTypes.string,\n};\n\nexport default Inputs;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport {\n FeaturesAdvert1,\n FeaturesAdvert2,\n FeaturesAdvert3,\n HelpAdvert1,\n HelpAdvert2,\n TravelInsuranceAdvert1,\n} from '@myie/interact-dom';\n\nclass Adverts extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/side-widgets.scss\n \n

\n

\n There is a component made for the various adverts are\n defined within:\n
\n shared/components/FeaturesAdvert1.js\n
\n shared/components/FeaturesAdvert2.js\n
\n shared/components/FeaturesAdvert3.js\n
\n shared/components/HelpAdvert1.js\n
\n shared/components/HelpAdvert2.js\n
\n shared/components/TravelInsuranceAdvert1.js\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\nAdverts.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Adverts;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\n//import Transfer from '../../widget-quick-transfer/Transfer';\nimport { OurProducts } from '@myie/interact-dom';\n\nclass SidebarWidgets extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n return (\n
\n

\n Defined within{' '}\n \n sass/components/side-widgets.scss\n \n

\n

\n There is a component made for the various adverts are\n defined within:\n
\n shared/components/widget-quick-transfer/Transfer.js\n
\n shared/components/widget-quick-transfer/OurProducts.js\n

\n

\n There is no interactive technical guide for this. To see its usage, go\n to the above components.\n

\n \n {/* */}\n \n \n \n \n
\n );\n }\n}\n\nSidebarWidgets.propTypes = {\n i18n: PropTypes.any,\n items: PropTypes.string,\n};\n\nexport default SidebarWidgets;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Dialog } from '@myie/interact';\nimport { Button } from 'reactstrap';\nimport { Link } from 'react-router-dom';\n\nclass Modals extends React.Component {\n constructor() {\n super();\n\n // Define the initial state:\n this.state = {\n testdata: '',\n };\n }\n\n render() {\n //const { i18n } = this.props;\n\n return (\n
\n

\n Defined within{' '}\n \n sass/components/modals.scss\n \n

\n

\n There is a component made for modals defined within{' '}\n shared/components/Dialog.js. To see an interactive\n technical specification for this component,{' '}\n click here\n

\n \n \n

click Here to close the modal

\n \n
\n );\n }\n}\n\nModals.propTypes = {\n items: PropTypes.string,\n};\n\nexport default Modals;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Collapse } from 'reactstrap';\nimport MinusGylph from './MinusGlyph';\nimport PlusGylph from './PlusGlyph';\nimport Colours from './Colours';\nimport Typography from './Typography';\nimport Fonts from './Fonts';\nimport Lists from './components/Lists';\nimport Badges from './components/Badges';\nimport Buttons from './components/Buttons';\nimport Breadcrumbs from './components/Breadcrumbs';\nimport Pagination from './components/Pagination';\nimport Alerts from './components/Alerts';\nimport ProgressBars from './components/ProgressBars';\nimport Tabs from './components/Tabs';\nimport Tables from './components/Tables';\nimport Inputs from './components/Inputs';\nimport Adverts from './components/Adverts';\nimport SidebarWidgets from './components/SidebarWidgets';\nimport Modals from './components/Modals';\n\nclass StyleguideIndex extends React.Component {\n constructor(props) {\n super(props);\n const toggleData = [];\n toggleData[1] = true;\n this.state = {\n toggleData,\n };\n }\n\n toggleDescription(index) {\n let toggleData = this.state;\n toggleData[index] = !toggleData[index];\n if (toggleData.length > 1) {\n toggleData = toggleData.map((toggleValue, arrayIndex) => {\n return arrayIndex !== index ? false : toggleValue;\n });\n }\n this.setState({\n toggleData,\n });\n }\n\n render() {\n const { toggleData } = this.state;\n\n return (\n
\n

Styleguide

\n
\n this.toggleDescription(1)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[1] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[1] ? : }\n
\n
\n

Colours

\n
\n \n
\n \n {toggleData[1] ? : null}\n \n
\n this.toggleDescription(2)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[2] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[2] ? : }\n
\n
\n

Fonts & Typography

\n
\n \n
\n \n {toggleData[2] ? : null}\n {toggleData[2] ? : null}\n \n
\n this.toggleDescription(4)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[4] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[4] ? : }\n
\n
\n

Lists

\n
\n \n
\n \n {toggleData[4] ? : null}\n \n
\n this.toggleDescription(5)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[5] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[5] ? : }\n
\n
\n

Badges

\n
\n \n
\n \n {toggleData[5] ? : null}\n \n
\n this.toggleDescription(6)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[6] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[6] ? : }\n
\n
\n

Buttons

\n
\n \n
\n \n {toggleData[6] ? : null}\n \n
\n this.toggleDescription(7)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[7] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[7] ? : }\n
\n
\n

Breadcrumbs

\n
\n \n
\n \n {toggleData[7] ? : null}\n \n
\n this.toggleDescription(8)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[8] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[8] ? : }\n
\n
\n

Pagination

\n
\n \n
\n \n {toggleData[8] ? : null}\n \n
\n this.toggleDescription(9)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[9] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[9] ? : }\n
\n
\n

Alerts

\n
\n \n
\n \n {toggleData[9] ? : null}\n \n
\n this.toggleDescription(10)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[10] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[10] ? : }\n
\n
\n

Progress Bars

\n
\n \n
\n \n {toggleData[10] ? : null}\n \n
\n this.toggleDescription(11)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[11] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[11] ? : }\n
\n
\n

Tabs

\n
\n \n
\n \n {toggleData[11] ? : null}\n \n
\n this.toggleDescription(12)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[12] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[12] ? : }\n
\n
\n

Tables

\n
\n \n
\n \n {toggleData[12] ? : null}\n \n
\n this.toggleDescription(13)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[13] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[13] ? : }\n
\n
\n

Inputs

\n
\n \n
\n \n {toggleData[13] ? : null}\n \n
\n this.toggleDescription(14)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[14] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[14] ? : }\n
\n
\n

Adverts

\n
\n \n
\n \n {toggleData[14] ? : null}\n \n\n
\n this.toggleDescription(15)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[15] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[15] ? : }\n
\n
\n

Sidebar Widgets

\n
\n \n
\n \n {toggleData[15] ? : null}\n \n\n
\n this.toggleDescription(16)}\n className={`w-100 text-left mr-2 accordion-trigger info-${\n toggleData[16] ? 'open' : 'closed'\n }`}\n >\n
\n {toggleData[16] ? : }\n
\n
\n

Modals

\n
\n \n
\n \n {toggleData[16] ? : null}\n \n
\n );\n }\n}\n\nStyleguideIndex.propTypes = {\n accounts: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n i18n: PropTypes.any,\n colours: PropTypes.any,\n};\n\nexport default StyleguideIndex;\n","import React from 'react';\nimport Styleguide from './Styleguide';\nimport { PrivateRoute } from '@myie/interact-dom';\n\nconst Routes = [\n ,\n];\n\nexport default Routes;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport { symbols, Content, Markdown, ContactNumber } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nimport { Validate } from '@myie/interact';\nimport Currency from 'react-currency-formatter';\n\nclass Details extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: {\n relatedAccount: {\n rules: {\n title: 'Source Account',\n stop: true,\n required: {\n message: 'Please select a related account',\n },\n },\n },\n message: {\n rules: {\n stop: true,\n required: {\n message: 'Please enter a message',\n },\n },\n },\n },\n };\n }\n\n accountOptions = (prefix, item, id) => {\n var name = item.AccountName;\n if (item.Balance) {\n name =\n name +\n ': ' +\n Currency({ quantity: item.Balance, currency: item.CurrencyCode });\n }\n return (\n \n {name}\n \n );\n };\n\n submit = e => {\n e.preventDefault();\n let { form } = this.state;\n const { replyConversation, selectedData } = this.props;\n form = Validate.form(form);\n this.setState({ ...this.state, form });\n if (!form.approved) {\n return;\n }\n let request = {\n AccountKey: selectedData.relatedAccountObj\n ? selectedData.relatedAccountObj.AccountKey\n : null,\n ConversationKey: null,\n MessageBody: selectedData.message,\n Reason: selectedData.relatedAccountObj\n ? 'Account number: ' + selectedData.relatedAccountObj.AccountNumber\n : 'General Enquiry',\n ProductType: selectedData.relatedAccountObj\n ? selectedData.relatedAccountObj.ProductType\n : null,\n ExtendedProperties: {},\n };\n replyConversation(request);\n };\n\n onBlur = e => {\n const { saveData } = this.props;\n let { form } = this.state;\n const { name, value } = e.target;\n form = Validate.input(name, value, form, true);\n saveData(name, value);\n this.setState({ ...this.state, form });\n };\n\n onChangeAccount = e => {\n const { saveData, accounts } = this.props;\n let { form } = this.state;\n const { name, value } = e.target;\n const accountKey = value;\n let source;\n form = Validate.input(name, value, form, true);\n if (accounts) {\n source = accounts.Accounts.find(\n account => account.AccountKey.Key === accountKey,\n );\n }\n saveData(name, value);\n saveData('relatedAccountObj', source);\n this.setState({ ...this.state, form });\n };\n\n onChange = e => {\n const { saveData } = this.props;\n let { form } = this.state;\n const { name, value } = e.target;\n form = Validate.input(name, value, form, true);\n saveData(name, value);\n this.setState({ ...this.state, form });\n };\n\n getCurrencySymbol = CurrencyCode => {\n return symbols[CurrencyCode];\n };\n\n render() {\n const { selectedData } = this.props;\n const { form } = this.state;\n if (selectedData) {\n form.relatedAccount.value = selectedData.relatedAccount;\n form.message.value = selectedData.message;\n }\n\n return (\n <>\n

\n \n

\n \n \n \n \n

\n \n \n \n

\n \n );\n }\n}\n\nDetails.propTypes = {\n accounts: PropTypes.any,\n fetchTransferMapIfNeeded: PropTypes.any,\n replyConversation: PropTypes.any,\n saveData: PropTypes.any,\n selectedData: PropTypes.any,\n setStage: PropTypes.any,\n transactionData: PropTypes.any,\n transfermap: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Details);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Card, Alert } from 'reactstrap';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapDispatchToPropsMessaging } from '@myie/interact-messaging-twoway';\nimport { withRouter } from 'react-router-dom';\nimport { Redirect } from 'react-router';\nimport Details from './Details';\n\nclass Message extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n stage: 'Details',\n message: null,\n data: {},\n };\n }\n\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { replyMessageStatus } = nextProps;\n\n if (replyMessageStatus && replyMessageStatus.ResponseStatus) {\n return {\n ...prevState,\n stage: 'Confirmation',\n };\n } else {\n return null;\n }\n }\n\n // save the data for the request from several forms\n saveData = (name, value) => {\n const { data } = this.state;\n data[name] = value;\n this.setState({ ...this.state, data, message: null });\n };\n\n // select current stage\n currentStage = (accounts = []) => {\n const { stage, data } = this.state;\n\n switch (stage) {\n case 'Details':\n return accounts && accounts.Accounts && accounts.Accounts.length > 0 ? (\n \n ) : (\n false\n );\n case 'Confirmation': {\n return ;\n }\n default:\n }\n };\n\n render() {\n const { error, accounts } = this.props;\n if (!accounts) {\n return null;\n }\n let alert;\n\n const { message } = this.state;\n if (message || error) {\n alert = (\n \n {message || error}\n \n );\n }\n\n return (\n \n {alert ? alert : ''}\n {this.currentStage(accounts)}\n \n );\n }\n}\n\nMessage.propTypes = {\n accounts: PropTypes.any,\n error: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n history: PropTypes.any,\n initializeMoveMoney: PropTypes.any,\n payment: PropTypes.any,\n retrivedUserName: PropTypes.object,\n transfer: PropTypes.any,\n replyMessageStatus: PropTypes.any,\n};\nconst mapStateToProps = state => {\n const { messagingTwowayDefinition, accountsDefinition } = state;\n return {\n ...messagingTwowayDefinition,\n ...accountsDefinition,\n };\n};\nexport default withRouter(\n connect(\n mapStateToProps,\n { ...mapDispatchToPropsMessaging, ...mapDispatchToPropsAccounts },\n )(Message),\n);\n","import React from 'react';\nimport Message from './Message';\n\nclass MessageWidgetTest extends React.Component {\n render() {\n return (\n <>\n

Test Widget:

\n \n \n );\n }\n}\n\nexport default MessageWidgetTest;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport { Content, Switch, Markdown } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nimport { Alert } from 'reactstrap';\n\nclass Confirmation extends React.Component {\n onCancel = () => {\n this.props.initializeMoveMoney();\n this.props.resetData();\n };\n\n componentWillUnmount() {\n const { resetReply } = this.props;\n resetReply();\n }\n\n renderSuccessContent = () => {\n return (\n \n );\n };\n\n render() {\n const { replyMessageStatus } = this.props;\n if (!replyMessageStatus) {\n return null;\n }\n let alertId = null;\n if (replyMessageStatus) {\n switch (replyMessageStatus.ResponseStatus) {\n case 'Success':\n alertId = 'new-message-widget-success';\n break;\n case 'Failed':\n alertId = 'new-message-widget-failure';\n break;\n default:\n alertId = 'new-message-widget-unknown';\n break;\n }\n }\n\n return (\n <>\n
\n

\n \n

\n {replyMessageStatus && (\n \n \"\n value={replyMessageStatus.ResponseStatus}\n defaultText=\"An unknown error occured please check your accounts befor retrying.\"\n contents={{\n Success: {\n defaultValue:\n 'Your message has been sent. See details below.',\n },\n Failed: {\n defaultValue: 'Your message was not sent. Try again.',\n },\n default: {\n defaultValue:\n 'An unknown error occured. Please check your accounts before retrying.',\n },\n }}\n />\n \n )}\n {replyMessageStatus.ResponseStatus === 'Success'\n ? this.renderSuccessContent()\n : false}\n
\n \n \n \n
\n
\n \n );\n }\n}\n\nConfirmation.propTypes = {\n initializeMoveMoney: PropTypes.any,\n replyMessageStatus: PropTypes.any,\n resetData: PropTypes.any,\n resetReply: PropTypes.any,\n transactionData: PropTypes.any,\n transfer: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Confirmation);\n","import React from 'react';\nimport TransferWidgetTest from './MessageWidgetTest';\nimport Confirmation from './Confirmation';\nimport { PrivateRoute } from '@myie/interact-dom';\n\nconst Routes = [\n ,\n }\n />,\n];\n\nexport default Routes;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\n\nconst Navigation = ({ components }) => {\n return (\n
    \n
  • \n \n < Back to styleguide\n \n
  • \n {components.map(name => {\n return (\n
  • \n {name}\n
  • \n );\n })}\n
\n );\n};\n\nNavigation.propTypes = {\n components: PropTypes.array.isRequired,\n};\n\nexport default Navigation;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n//import hljs from 'highlight.js/lib/highlight';\n//import javascript from 'highlight.js/lib/languages/javascript';\n\n// This way is easy, but adds 170K gzipped to bundle since all langs are included.\n// import Highlight from 'react-highlight';\n\nclass CodeExample extends React.Component {\n // componentDidMount() {\n // hljs.registerLanguage('javascript', javascript);\n // hljs.highlightBlock(this.element);\n // }\n\n render() {\n return (\n {\n this.element = ref;\n }}\n >\n {this.props.children}\n \n );\n }\n}\n\nCodeExample.propTypes = {\n children: PropTypes.string.isRequired,\n};\n\nexport default CodeExample;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport CodeExample from './CodeExample';\n\nclass Example extends React.Component {\n constructor(props) {\n super(props);\n this.state = { showCode: false };\n }\n\n toggleCode = event => {\n event.preventDefault();\n this.setState(prevState => {\n return { showCode: !prevState.showCode };\n });\n };\n\n render() {\n const { showCode } = this.state;\n const { code, description, name } = this.props.example;\n // Must use CommonJS require to dynamically require because ES Modules must be statically analyzable.\n const ExampleComponent = require(`../examples/shared/components/${\n this.props.componentName.split('.')[0]\n }/${name}`).default;\n return (\n
\n {description &&

{description}

}\n\n \n\n

\n \n {showCode ? 'Hide' : 'Show'} Code\n \n

\n\n {showCode && {code}}\n
\n );\n }\n}\n\nExample.propTypes = {\n example: PropTypes.object.isRequired,\n componentName: PropTypes.string.isRequired,\n};\n\nexport default Example;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Props = ({ props }) => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n {Object.keys(props).map(key => {\n return (\n \n \n \n \n \n \n \n );\n })}\n \n
NameDescriptionTypeDefaultRequired
{key}{props[key].description}{props[key].type.name}\n {props[key].defaultValue && props[key].defaultValue.value}\n {props[key].required && 'X'}
\n );\n};\n\nProps.propTypes = {\n props: PropTypes.object.isRequired,\n};\n\nexport default Props;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Example from './Example';\nimport Props from './Props';\n\nconst ComponentPage = ({ component }) => {\n // eslint-disable-next-line no-console\n //console.log('component name..', component);\n const { name, description, props, examples } = component;\n\n return (\n
\n

{name}

\n

{description}

\n\n

Example{examples.length > 1 && 's'}

\n {examples.length > 0\n ? examples.map(example => (\n \n ))\n : 'No examples exist.'}\n\n

Props

\n {props ? : 'This component accepts no props.'}\n
\n );\n};\n\nComponentPage.propTypes = {\n component: PropTypes.object.isRequired,\n};\n\nexport default ComponentPage;\n","import React from 'react';\nimport { Route } from 'react-router-dom';\nimport Docs from './Docs';\n\nconst Routes =\n process.env.NODE_ENV !== 'production'\n ? []\n : [];\n\nexport default Routes;\n","import React from 'react';\nimport Navigation from './Navigation';\nimport ComponentPage from './ComponentPage';\nimport componentData from './componentData';\n//import '../../../node_modules/highlight.js/styles/ocean.css';\nimport './index.css';\n\nexport default class Docs extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n route: window.location.hash.substr(1),\n };\n }\n\n componentDidMount() {\n window.addEventListener('hashchange', () => {\n this.setState({ route: window.location.hash.substr(1) });\n });\n }\n\n render() {\n const { route } = this.state;\n const component = route\n ? componentData.filter(\n component =>\n (component && component.name ? component.name : '') === route,\n )[0]\n : componentData[0];\n let test = componentData.map(component => {\n if (component && component.name) {\n return component.name;\n }\n return null;\n });\n\n return (\n
\n
\n \n \n
\n
\n );\n }\n}\n","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\n\nimport { Routes as AccountsRoutes } from '@myie/interact-accounts-dom'\nimport { Routes as AuthenticationRoutes } from '@myie/interact-authentication-dom'\nimport { Routes as ServicesRoutes } from '@myie/interact-services-dom'\nimport { Routes as StyleguideRoutes } from '@myie/interact-styleguide-dom'\nimport { Routes as MessagingTwowayRoutes } from '@myie/interact-messaging-twoway-dom'\nimport { Routes as SavingsServicingRoutes } from '@myie/interact-savings-servicing-dom'\nimport { Routes as WidgetSelectAccountRoutes } from '@myie/interact-widget-select-account-dom'\nimport { Routes as WidgetSendMessageRoutes } from '@myie/interact-widget-send-message-dom'\nimport { Routes as DocumentsRoutes } from '@myie/interact-documents-dom'\nimport { Routes as UserManagementRoutes } from '@myie/interact-user-management-dom'\n\n\nconst AvailableRoutes = [];\n\nAvailableRoutes.push(AccountsRoutes)\nAvailableRoutes.push(AuthenticationRoutes)\nAvailableRoutes.push(ServicesRoutes)\nAvailableRoutes.push(StyleguideRoutes)\nAvailableRoutes.push(MessagingTwowayRoutes)\nAvailableRoutes.push(SavingsServicingRoutes)\nAvailableRoutes.push(WidgetSelectAccountRoutes)\nAvailableRoutes.push(WidgetSendMessageRoutes)\nAvailableRoutes.push(DocumentsRoutes)\nAvailableRoutes.push(UserManagementRoutes)\n\n\nexport default AvailableRoutes;\n\n","import fetchIntercept from 'fetch-intercept';\nimport { TwoFactor } from '@myie/interact';\nimport { mapDispatchToProps } from '@myie/interact-two-factor';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport React from 'react';\nlet lastUrl;\nclass Interceptor extends React.Component {\n constructor(props) {\n super(props);\n fetchIntercept.register({\n request: function(url, config) {\n // Modify the url or config here\n lastUrl = url;\n return [url, config];\n },\n\n requestError: function(error) {\n // Called when an error occured during another 'request' interceptor call\n return Promise.reject(error);\n },\n\n response: function(response) {\n const { startTwoFactor, continueTwoFactor, finishTwoFactor } = props;\n const { status, headers } = response;\n const lastRequestTime = new Date().getTime();\n window.sessionStorage.setItem('lastRequestTime', lastRequestTime);\n const debug = false;\n // all non error\n if (status < 400) {\n const requestUrl = response.url || lastUrl;\n if (TwoFactor.getUrl() === requestUrl) {\n finishTwoFactor();\n }\n return response;\n }\n\n // errors\n switch (status) {\n case 402: {\n // no server session\n const msg = window.sessionStorage.getItem('timeoutMessage');\n if (!msg) {\n window.sessionStorage.setItem(\n 'timeoutMessage',\n 'UnauthorizedSignedOut',\n );\n window.location.replace('/signed-out');\n }\n break;\n }\n case 412: // 2fa signal - start 2FA process\n if (headers.get('x-challenge-status') === 'ISSUED') {\n startTwoFactor(\n response.url || lastUrl,\n headers.get('x-challenge-key'),\n headers.get('x-challenge-status'),\n );\n } else {\n continueTwoFactor(headers.get('x-challenge-status'));\n }\n\n break;\n default:\n // all other errors\n if (!debug) {\n window.location.replace('/network-error');\n }\n }\n // Modify the reponse object if needed\n return response;\n },\n\n responseError: function(error) {\n // Handle an fetch error\n return Promise.reject(error);\n },\n });\n }\n\n render() {\n // doesn't really render anything just a wrapper to allow the injection of props\n const { inProgress, children, TwoFactorWrapper } = this.props;\n if (TwoFactorWrapper) {\n return (\n {children}\n );\n }\n return {children};\n }\n}\n\nInterceptor.propTypes = {\n TwoFactorWrapper: PropTypes.any,\n children: PropTypes.any,\n continueTwoFactor: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n inProgress: PropTypes.any,\n setChallenge: PropTypes.any,\n setValue: PropTypes.any,\n startTwoFactor: PropTypes.any,\n url: PropTypes.any,\n};\n\nexport default connect(\n null,\n mapDispatchToProps,\n)(Interceptor);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Button } from 'reactstrap';\nimport { withRouter } from 'react-router-dom';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Markdown, Content, appUtility } from '@myie/interact-dom';\nimport { Session } from '@myie/interact';\n\n/**\n * AuthButton component\n */\nclass AuthIndicator extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n isAuthenticated: Session.isAuthenticated(),\n };\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (prevState.isAuthenticated !== Session.isAuthenticated()) {\n this.setState({\n ...this.state,\n isAuthenticated: Session.isAuthenticated(),\n });\n }\n }\n\n logoutHandler = () => {\n appUtility.userSignout();\n };\n render() {\n const { history, userLogout, url } = this.props;\n const customer = Session.customer();\n return this.state.isAuthenticated && customer ? (\n
\n
\n \n
\n {\n clearInterval(window.sessionStorage.getItem('timeoutID'));\n this.logoutHandler();\n Session.abandon();\n userLogout();\n history.push(url);\n }}\n >\n \n \n
\n ) : (\n ''\n );\n }\n}\n\nAuthIndicator.propTypes = {\n /**\n * Used for routing\n */\n history: PropTypes.object,\n /**\n * Used for redirecting\n */\n url: PropTypes.string.isRequired,\n /**\n * Used to logout current session\n */\n userLogout: PropTypes.func.isRequired,\n};\n\nconst AuthButton = withRouter(\n connect(\n null,\n mapDispatchToProps,\n )(AuthIndicator),\n);\n\nexport default AuthButton;\n","import React from 'react';\nimport { Helmet } from 'react-helmet-async';\nimport PropTypes from 'prop-types';\n\n/**\n * MetaDefault component\n * will apply metadata application wide\n * e.g: page title, meta description, favicon, etc\n */\nclass MetaDefault extends React.Component {\n render() {\n const { metaDescription } = this.props;\n const defaultTitle = `Cambridge & Counties Bank`;\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nMetaDefault.propTypes = {\n /**\n * meta description\n */\n metaDescription: PropTypes.string.isRequired,\n};\n\nexport default MetaDefault;\n","import React from 'react';\nimport { Helmet } from 'react-helmet-async';\nimport PropTypes from 'prop-types';\n\n/**\n * MetaOverride component\n * can be used to override the MetaDefault values\n */\nclass MetaOverride extends React.Component {\n render() {\n const { metaDescription, title } = this.props;\n\n return (\n \n Cambridge & Counties Bank - {title}\n \n \n );\n }\n}\n\nMetaOverride.propTypes = {\n /**\n * Meta description\n */\n metaDescription: PropTypes.string.isRequired,\n /**\n * Title\n */\n title: PropTypes.string.isRequired,\n};\n\nexport default MetaOverride;\n","import React from 'react';\nimport MetaDefault from './MetaDefault';\nimport MetaOverride from './MetaOverride';\nimport PropTypes from 'prop-types';\nimport contentManaged, {\n ContentType,\n} from '../../HO_components/contentManaged';\n/**\n * AppMeta component\n */\nclass AppMeta extends React.Component {\n constructor(props) {\n super(props);\n const { metaDescription, title, managedContent } = props;\n managedContent(\n {\n metaDescription: { defaultValue: metaDescription },\n title: { defaultValue: title },\n },\n true,\n );\n }\n // select current stage\n currentStage = () => {\n const { stage, contentValue, managedContent, ...rest } = this.props;\n if (!managedContent()) return false;\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const metaDescription = contentValue(ContentType.Text, 'metaDescription');\n const title = contentValue(ContentType.Text, 'title');\n switch (stage) {\n case 'child':\n return (\n \n );\n default:\n }\n return (\n \n );\n };\n\n render() {\n return {this.currentStage()};\n }\n}\n\nAppMeta.propTypes = {\n /**\n * current stage\n */\n stage: PropTypes.string,\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func,\n metaDescription: PropTypes.string,\n title: PropTypes.string,\n};\n\nexport default contentManaged(AppMeta);\n","import { PureComponent } from 'react';\nimport { withRouter } from 'react-router';\nimport PropTypes from 'prop-types';\n\n/**\n * ScrollToTop component\n * The given content will be scrolled to the top\n */\nclass ScrollToTop extends PureComponent {\n componentDidUpdate(prevProps) {\n const { location } = this.props;\n\n if (location.pathname !== prevProps.location.pathname) {\n window.scrollTo(0, 0);\n }\n }\n\n componentDidMount() {\n if (this.props.refreshMe) {\n window.scrollTo(0, 0);\n }\n }\n\n render() {\n const { children } = this.props;\n\n return children;\n }\n}\n\nScrollToTop.propTypes = {\n /**\n * Any children of the component\n */\n children: PropTypes.element.isRequired,\n /**\n * If true the content will be forcefully scrolled to the top\n */\n refreshMe: PropTypes.bool,\n /**\n * Browser address\n */\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n};\n\nexport default withRouter(ScrollToTop);\n","import React from 'react';\n\nconst TabNavigation = (function() {\n const callback = (event, index, refs) => {\n const { tabs, panels } = refs;\n setTimeout(() => {\n panels.forEach((element, i) => {\n tabs[i].current.tabIndex = element.current.clientHeight !== 0 ? 0 : -1;\n });\n }, 250);\n };\n\n const panelKeyDown = (event, name, refs) => {\n const { tabs, panels } = refs;\n const key = event.which || event.keyCode;\n var keys = {\n tab: 9,\n };\n const index = refs.names.indexOf(name);\n switch (key) {\n case keys.tab:\n if (event.shiftKey) {\n if (event.target === panels[index].current) {\n event.preventDefault();\n tabs.forEach((element, i) => {\n element.current.tabIndex = index === i ? 0 : -1;\n });\n tabs[index].current.focus();\n }\n }\n break;\n default:\n }\n };\n\n const tabKeyDown = (event, name, refs) => {\n const { tabs, panels } = refs;\n const key = event.which || event.keyCode;\n var keys = {\n end: 35,\n home: 36,\n left: 37,\n right: 39,\n tab: 9,\n space: 32,\n };\n const index = refs.names.indexOf(name);\n switch (key) {\n case keys.home:\n event.preventDefault();\n tabs[0].current.focus();\n break;\n case keys.end:\n event.preventDefault();\n tabs[tabs.length - 1].current.focus();\n break;\n case keys.right:\n event.preventDefault();\n var rightIndex = index < tabs.length - 1 ? index + 1 : 0;\n tabs.forEach((element, i) => {\n element.current.tabIndex = rightIndex === i ? 0 : -1;\n });\n tabs[rightIndex].current.focus();\n break;\n case keys.left:\n event.preventDefault();\n var leftIndex = index > 0 ? index - 1 : tabs.length - 1;\n tabs.forEach((element, i) => {\n element.current.tabIndex = leftIndex === i ? 0 : -1;\n });\n tabs[leftIndex].current.focus();\n break;\n case keys.tab:\n if (!event.shiftKey) {\n event.preventDefault();\n panels.forEach(element => {\n element.current.focus();\n });\n }\n if (event.shiftKey) {\n callback(event, index, refs);\n }\n break;\n case keys.space:\n event.preventDefault();\n tabs[index].current.click();\n break;\n default:\n }\n };\n\n const init = names => {\n const t = {\n refs: {\n names: names,\n tabs: [],\n panels: [],\n },\n panelKeyDown: panelKeyDown,\n tabKeyDown: tabKeyDown,\n };\n\n for (let index = 0; index < names.length; index++) {\n t.refs.tabs.push(React.createRef());\n t.refs.panels.push(React.createRef());\n }\n return t;\n };\n\n return { init: init };\n})();\n\nexport default TabNavigation;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\nclass Content extends React.Component {\n constructor(props) {\n super(props);\n const { copytext, managedContent } = props;\n managedContent({\n copytext: { defaultValue: copytext },\n });\n }\n\n render() {\n const { contentValue, managedContent, tag, ...rest } = this.props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n const copytext = contentValue(ContentType.Text, 'copytext');\n if (tag) {\n var Component = tag;\n\n return {copytext};\n }\n return {copytext};\n }\n}\n\nContent.propTypes = {\n contentValue: PropTypes.func.isRequired,\n copytext: PropTypes.any,\n managedContent: PropTypes.func.isRequired,\n tag: PropTypes.any,\n template: PropTypes.any,\n};\n\nexport default contentManaged(Content);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport MarkdownToJsx from 'markdown-to-jsx';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\nimport { Settings } from '@myie/interact';\n\nclass Hacker extends React.Component {\n render() {\n return Settings.cmsAvailable ? (\n no scripts allowed\n ) : null;\n }\n}\n\nclass Image extends React.Component {\n render() {\n const { src, alt, ...rest } = this.props;\n const srcTest = (src || '').toLowerCase();\n if (srcTest.indexOf('javascript') !== 0) {\n return {alt};\n }\n return Settings.cmsAvailable ? (\n no scripts allowed\n ) : null;\n }\n}\n\nImage.propTypes = {\n src: PropTypes.string,\n alt: PropTypes.string,\n};\n\nclass Markdown extends React.Component {\n constructor(props) {\n super(props);\n const { markdown, managedContent } = props;\n managedContent({\n markdown: { defaultValue: markdown },\n });\n }\n\n render() {\n const { contentValue, managedContent, ...rest } = this.props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n delete rest.key;\n const markdown = contentValue(ContentType.Text, 'markdown');\n return (\n \n {markdown}\n \n );\n }\n}\n\nMarkdown.propTypes = {\n contentValue: PropTypes.func.isRequired,\n markdown: PropTypes.any,\n managedContent: PropTypes.func.isRequired,\n tag: PropTypes.any,\n template: PropTypes.any,\n};\n\nexport default contentManaged(Markdown);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\n/**\n * Switch component - Manage content text for based on the status\n * i.e. render output for Alert based on the status\n */\nclass Switch extends React.Component {\n constructor(props) {\n super(props);\n const { contents, defaultText, managedContent } = props;\n const content = {};\n content.defaultText = { defaultValue: defaultText };\n Object.keys(contents).forEach(k => {\n content[k] = contents[k];\n });\n managedContent(content, true);\n }\n\n render() {\n const { props } = this;\n\n const {\n tag = 'div',\n value,\n contentValue,\n managedContent,\n defaultText,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n let text = contentValue(ContentType.Text, value);\n if (!text) {\n text = defaultText;\n }\n if (text) {\n const Component = tag;\n delete rest['contents'];\n if (tag === '<>') {\n return {text};\n }\n return {text};\n }\n return '';\n }\n}\n\nSwitch.propTypes = {\n id: PropTypes.string,\n contentValue: PropTypes.func.isRequired,\n contents: PropTypes.object.isRequired,\n defaultText: PropTypes.any,\n managedContent: PropTypes.func.isRequired,\n tag: PropTypes.string,\n value: PropTypes.string.isRequired,\n};\n\nexport default contentManaged(Switch);\n","import React, { Component } from 'react';\nimport { PropTypes } from 'prop-types';\nimport { Modal, ModalHeader, ModalBody, ModalFooter, Button } from 'reactstrap';\n\nexport default class ConfirmModal extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n modalOpen: true,\n };\n\n this.confirm = this.confirm.bind(this);\n this.cancel = this.cancel.bind(this);\n this.toggle = this.toggle.bind(this);\n }\n\n toggle(result = true) {\n this.setState({\n modalOpen: !this.state.modalOpen,\n });\n\n if (typeof this.props.onClose === 'function') {\n this.props.onClose(result);\n }\n }\n\n confirm() {\n this.toggle(true);\n }\n\n cancel() {\n this.toggle(false);\n }\n\n render() {\n const {\n message,\n title,\n confirmText,\n cancelText,\n confirmColor,\n cancelColor,\n className,\n } = this.props;\n\n let modalHeader = null;\n let cancelButton = null;\n\n if (title) {\n modalHeader = (\n {\n this.toggle(false);\n }}\n >\n {title}\n \n );\n }\n\n if (cancelText) {\n cancelButton = (\n \n );\n }\n\n return (\n {\n this.toggle(false);\n }}\n className={className}\n >\n {modalHeader}\n {message}\n \n {cancelButton}{' '}\n \n \n \n );\n }\n}\n\nConfirmModal.propTypes = {\n onClose: PropTypes.func,\n message: PropTypes.any,\n title: PropTypes.any,\n confirmText: PropTypes.any,\n cancelText: PropTypes.any,\n confirmColor: PropTypes.any,\n cancelColor: PropTypes.any,\n className: PropTypes.any,\n};\n","import { render } from 'react-dom';\nimport React from 'react';\nimport { PropTypes } from 'prop-types';\n\nimport Modal from './Modal';\n\nexport default class Confirm extends React.Component {\n constructor(props) {\n super(props);\n this.el = document.createElement('div');\n }\n\n static defaultProps = {\n message: 'Are you sure?',\n title: 'Warning!',\n confirmText: 'Ok',\n cancelText: 'Cancel',\n confirmColor: 'primary',\n cancelColor: '',\n };\n\n static propTypes = {\n message: PropTypes.any,\n title: PropTypes.any,\n confirmText: PropTypes.any,\n cancelText: PropTypes.any,\n confirmColor: PropTypes.any,\n cancelColor: PropTypes.any,\n };\n\n open() {\n let confirmPromise = new Promise(resolve => {\n render(\n {\n resolve(result);\n }}\n />,\n this.el,\n );\n });\n\n return confirmPromise;\n }\n}\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '29.123', height = '33.848' }) => (\n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = '#fff', width = '100%', height = '100%' }) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = '#fff', width = '119.66407' }) => (\n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'black-fill', width = '30', height = '25' }) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ width = '252.356', height = '168.569' }) => (\n \n \n \n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n height: PropTypes.string,\n width: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '29.123' }) => (\n \n \n \n \n \n \n);\n\nSVG.propTypes = { fill: PropTypes.string, width: PropTypes.string };\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '30', height = '30' }) => (\n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ width = '100%', height = '100%' }) => (\n \n {'Facebook'}\n \n \n \n);\n\nSVG.propTypes = {\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ width = '100%', height = '100%' }) => (\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 \n \n \n \n \n);\n\nSVG.propTypes = {\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ width = '89.289', height = '123.833' }) => (\n \n \n \n \n \n);\n\nSVG.propTypes = {\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '29.123' }) => (\n \n \n \n \n \n);\n\nSVG.propTypes = { fill: PropTypes.string, width: PropTypes.string };\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'info-fill', width = '33.251', height = '33.251' }) => (\n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ height = '174.416', width = '176.836' }) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = { height: PropTypes.string, width: PropTypes.string };\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '21.117', height = '32.197' }) => (\n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '35.469', height = '33.886' }) => (\n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '33.875', height = '34.129' }) => (\n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '32', height = '35.721' }) => (\n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '32.986', height = '34.859' }) => (\n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '33.35', height = '35.687' }) => (\n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '33.498', height = '35.734' }) => (\n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '35.813', height = '29.754' }) => (\n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '35.901', height = '35.907' }) => (\n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '35.901', height = '35.907' }) => (\n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '35.901', height = '35.907' }) => (\n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '35.901', height = '35.907' }) => (\n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '31.931', height = '31.932' }) => (\n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '29.39', height = '31.84' }) => (\n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '30', height = '30' }) => (\n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ width = '150.707', height = '234.05' }) => (\n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = { height: PropTypes.string, width: PropTypes.string };\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({\n fill = 'secondary-2-fill',\n width = '36.074',\n height = '34.709',\n}) => (\n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '36.074', height = '34.709' }) => (\n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ width = '119.696', height = '113.112' }) => (\n \n \n \n \n \n \n \n \n \n \n \n);\n\nSVG.propTypes = {\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ width = '100%', height = '100%' }) => (\n \n {'Twitter'}\n \n \n \n);\n\nSVG.propTypes = {\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ width = '100%', height = '100%' }) => (\n \n {'Twitter'}\n \n \n \n);\n\nSVG.propTypes = {\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'error-fill', width = '33.891', height = '29.654' }) => (\n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'icon-fill', width = '33.891', height = '29.654' }) => (\n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SVG = ({ fill = 'info-fill', width = '33.251', height = '33.251' }) => (\n \n \n \n \n \n);\n\nSVG.propTypes = {\n fill: PropTypes.string,\n width: PropTypes.string,\n height: PropTypes.string,\n};\n\nexport default SVG;\n","import React from 'react';\nimport Alerts from './icons/Alerts';\nimport AppleStoreLogo from './icons/appleStoreBadge';\nimport BoxProduct from './icons/BoxProduct';\nimport Calendar from './icons/Calendar';\nimport CreditCardIcon from './icons/CreditCardIcon';\nimport Envelope from './icons/Envelope';\nimport Export from './icons/Export';\nimport Facebook from './icons/Facebook';\nimport GooglePlayLogo from './icons/GooglePlayLogo';\nimport HelpAdIcon from './icons/HelpAdIcon';\nimport HelpIcon from './icons/HelpIcon';\nimport Info from './icons/Info';\nimport LoanIcon from './icons/LoanIcon';\nimport MoveMoneyMakePayment from './icons/MoveMoneyMakePayment';\nimport MoveMoneyManagePayee from './icons/MoveMoneyManagePayee';\nimport MoveMoneyManagePayments from './icons/MoveMoneyManagePayments';\nimport MoveMoneyOneOffPayment from './icons/MoveMoneyOneOffPayment';\nimport MoveMoneyPayCard from './icons/MoveMoneyPayCard';\nimport MoveMoneyStandingOrder from './icons/MoveMoneyStandingOrder';\nimport MoveMoneyTransfer from './icons/MoveMoneyTransfer';\nimport MyServicesOverseasNotification from './icons/MyServicesOverseasNotification';\nimport MyServicesPaperlessStatement from './icons/MyServicesPaperlessStatement';\nimport MyServicesPersonalDetails from './icons/MyServicesPersonalDetails';\nimport MyServicesSecuritySettings from './icons/MyServicesSecuritySettings';\nimport MyServicesOrganisationSettings from './icons/MyServicesOrganisationSettings';\nimport MyServicesSettings from './icons/MyServicesSettings';\nimport MyServicesUser from './icons/MyServicesUser';\nimport Print from './icons/Print';\nimport SavingsIcon from './icons/SavingsIcon';\nimport Success from './icons/Success';\nimport Target from './icons/Target';\nimport TravelInsuranceAd from './icons/TravelInsuranceAd';\nimport Twitter from './icons/Twitter';\nimport LinkedIn from './icons/LinkedIn';\nimport Warning from './icons/Warning';\nimport Warning2 from './icons/Warning2';\nimport Dropdown from './icons/Dropdown';\n\nconst Icon = props => {\n switch (props.name) {\n case 'Alerts':\n return ;\n case 'AppleStoreLogo':\n return ;\n case 'BoxProduct':\n return ;\n case 'Calendar':\n return ;\n case 'CreditCardIcon':\n return ;\n case 'Envelope':\n return ;\n case 'Export':\n return ;\n case 'Facebook':\n return ;\n case 'GooglePlayLogo':\n return ;\n case 'HelpAdIcon':\n return ;\n case 'HelpIcon':\n return ;\n case 'Info':\n return ;\n case 'LoanIcon':\n return ;\n case 'MoveMoneyMakePayment':\n return ;\n case 'MoveMoneyManagePayee':\n return ;\n case 'MoveMoneyManagePayments':\n return ;\n case 'MoveMoneyOneOffPayment':\n return ;\n case 'MoveMoneyPayCard':\n return ;\n case 'MoveMoneyStandingOrder':\n return ;\n case 'MoveMoneyTransfer':\n return ;\n case 'MyServicesOverseasNotification':\n return ;\n case 'MyServicesPaperlessStatement':\n return ;\n case 'MyServicesPersonalDetails':\n return ;\n case 'MyServicesSecuritySettings':\n return ;\n case 'MyServicesOrganisationSettings':\n return ;\n case 'MyServicesSettings':\n return ;\n case 'MyServicesUser':\n return ;\n case 'Print':\n return ;\n case 'SavingsIcon':\n return ;\n case 'Success':\n return ;\n case 'Target':\n return ;\n case 'TravelInsuranceAd':\n return ;\n case 'Twitter':\n return ;\n case 'LinkedIn':\n return ;\n case 'Warning':\n return ;\n case 'Warning2':\n return ;\n case 'Dropdown':\n return ;\n default:\n return;\n }\n};\n\nexport default Icon;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport { Badge } from 'reactstrap';\nimport Icon from '../svgs';\n\nclass SideLink extends React.Component {\n render() {\n const { props } = this;\n\n const {\n linkTitle = '',\n linkDescription = '',\n linkID = '',\n linkURL = '',\n linkImage = '',\n iconImage,\n iconImageFill,\n iconImageWidth,\n newMessageCount,\n } = props;\n\n return (\n \n \n
\n {linkImage && (\n {linkImage}\n )}\n {iconImage && (\n \n )}\n\n {newMessageCount > 0 && (\n \n {newMessageCount}\n \n )}\n
\n
\n {linkTitle}\n \n {linkDescription}\n \n
\n
\n
\n
\n \n
\n );\n }\n}\n\nSideLink.propTypes = {\n items: PropTypes.string,\n linkTitle: PropTypes.object,\n linkDescription: PropTypes.object,\n linkURL: PropTypes.string,\n linkImage: PropTypes.any,\n linkID: PropTypes.string,\n newMessageCount: PropTypes.any,\n iconImage: PropTypes.any,\n iconImageFill: PropTypes.string,\n iconImageWidth: PropTypes.string,\n};\n\nexport default SideLink;\n","function ErrorScroll() {\n var count = 0;\n var int = setInterval(function() {\n var bodyRect = document.body.getBoundingClientRect();\n const elements = document.getElementsByClassName('is-invalid');\n count++;\n if (count > 50) {\n clearInterval(int);\n }\n if (elements && elements.length > 0) {\n clearInterval(int);\n const tabScroll = elements[0];\n const elemRect = tabScroll.getBoundingClientRect();\n const offset = elemRect.top - bodyRect.top;\n window.scrollTo({\n behavior: 'smooth',\n left: 0,\n top: offset - 50,\n });\n }\n }, 10);\n}\n\nexport default ErrorScroll;\n","import approve from 'approvejs';\n\nconst ccbEmail = {\n expects: [],\n message: '{title} must be a valid email address',\n validate: function(value) {\n //^(?=.{1,20}$)[_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[a-z]{2,4})$\n let reg = new RegExp(/^(?=(.+@.+))(?=(.+\\..+))[^\\s]{3,50}$/);\n return reg.test(value);\n },\n};\n\nconst ccbPhone = {\n expects: [],\n message: '{title} must be a valid phone number.',\n validate: function(value) {\n let reg = new RegExp(/^(?=(.[\\d]))07[\\d\\s]{9,20}/);\n return reg.test(value);\n },\n};\n\nconst compareWithAvailableBalance = {\n expects: ['comparison'],\n message: 'Please enter an amount less than available balance',\n validate: function(value, pars) {\n const { comparison } = pars;\n if (typeof comparison === 'function') {\n const balance = comparison();\n const num = value && Number(String(value).replace(/,/g, ''));\n return num <= balance;\n }\n return false;\n },\n};\n\nconst minAmountCheck = {\n expects: ['comparison'],\n message: 'Please enter an amount greater than zero',\n validate: function(value, pars) {\n const { comparison } = pars;\n if (typeof comparison === 'function') {\n const balance = comparison();\n const num = value && Number(String(value).replace(/,/g, ''));\n return num >= balance;\n }\n return false;\n },\n};\n\nconst minAmountCheckWithInputValue = {\n expects: ['comparison'],\n message: '',\n validate: function(value, par) {\n const { comparison } = par;\n if (typeof comparison === 'function') {\n const parValue = comparison();\n if (parValue) {\n const num = value && Number(String(value).replace(/,/g, ''));\n\n return num >= parValue;\n }\n }\n return true;\n },\n};\n\nconst maxAmountCheckWithInputValue = {\n expects: ['comparison'],\n message: '',\n validate: function(value, par) {\n const { comparison } = par;\n if (typeof comparison === 'function') {\n const parValue = comparison();\n if (parValue) {\n const num = value && Number(String(value).replace(/,/g, ''));\n\n return num <= parValue;\n }\n }\n return true;\n },\n};\n\napprove.addTest(compareWithAvailableBalance, 'compareWithAvailableBalance');\napprove.addTest(minAmountCheck, 'minAmountCheck');\napprove.addTest(ccbEmail, 'ccbEmail');\napprove.addTest(ccbPhone, 'ccbPhone');\napprove.addTest(minAmountCheckWithInputValue, 'minAmountCheckWithInputValue');\napprove.addTest(maxAmountCheckWithInputValue, 'maxAmountCheckWithInputValue');\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Content, LinkTag } from '@myie/interact-dom';\n\nclass ContactNumber extends React.Component {\n render() {\n return (\n \n \n \n );\n }\n}\n\nContactNumber.propTypes = {\n items: PropTypes.string,\n};\n\nexport default ContactNumber;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport contentManaged, { ContentType } from '../HO_components/contentManaged';\n\nclass LinkTag extends React.Component {\n constructor(props) {\n super(props);\n const { href, managedContent } = props;\n managedContent({\n href: { defaultValue: href },\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n children,\n className = '',\n id,\n target,\n contentValue,\n managedContent,\n\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n\n const href = contentValue(ContentType.Text, 'href');\n\n return (\n \n {children}\n \n );\n }\n}\n\nLinkTag.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n /**\n * Any children of the component\n */\n children: PropTypes.element,\n /**\n * Text href text\n */\n href: PropTypes.string,\n /**\n * Text className text\n */\n className: PropTypes.string,\n /**\n * Text id text\n */\n id: PropTypes.string,\n\n target: PropTypes.string,\n};\n\nexport default contentManaged(LinkTag);\n","import { Connection } from '@myie/interact';\nconst appUtility = (function() {\n const userSignout = () => {\n fetch(Connection.baseUrl('webauthentication') + `v2.0/user/sign-out`, {\n method: 'post',\n headers: Connection.headers(),\n body: '{}',\n });\n };\n\n return {\n userSignout: userSignout,\n };\n})();\n\nexport default appUtility;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Content, LinkTag } from '@myie/interact-dom';\n\nclass EmailAddress extends React.Component {\n render() {\n return (\n \n \n \n );\n }\n}\n\nEmailAddress.propTypes = {\n items: PropTypes.string,\n};\n\nexport default EmailAddress;\n","export const MIN_SHORT_APPLY_AGE = 18;\nexport const SHOW_IN_SHORTAPPLY = 'SHOW_IN_SHORTAPPLY=TRUE';\nexport const ACCOUNT_TYPE_CODE = ['Fixed Rate ISA', 'Cash ISA', 'ISA'];\n\nexport const DATE_FORMAT_DDMMYYY = 'DD/MM/YYYY';\nexport const DATE_FORMAT_YYYYMMDD = 'YYYY-MM-DD';\nexport const STANDARD_DATE_FORMAT = 'Do MMMM YYYY';\nexport const STANDARD_DATE_FORMAT_TIME = 'Do MMMM YYYY h:mma';\n\nexport const MARITAL_STATUS_CODE = [\n { C: 'Civil Partnership' },\n { H: 'Cohabiting' },\n { D: 'Divorced' },\n { E: 'Engaged' },\n { M: 'Married' },\n { P: 'Partner' },\n { S: 'Single' },\n { T: 'Separated' },\n { W: 'Widowed' },\n { O: 'Other' },\n];\nexport const DEPOSIT_METHOD = [\n { 'Electronic Transfer': 'Electronic Transfer' },\n { Cheque: 'Cheque' },\n];\n\nexport const DEPOSIT_SOURCE = [\n { 'Existing Savings': 'Existing Savings' },\n { 'Trading Income/Profit': 'Trading Income/Profit' },\n { 'Capital Injection/Loan': 'Capital Injection/Loan' },\n { 'Proceeds of a Sale': 'Proceeds of a Sale' },\n { 'Investment/Funding': 'Investment/Funding' },\n { 'Compensation/Settlement': 'Compensation/Settlement' },\n { 'Donation/Grant/Subscriptions': 'Donation/Grant/Subscriptions' },\n { 'Gift/Rebate/Inheritance': 'Gift/Rebate/Inheritance' },\n];\n\nexport const GENDER = { M: 'Male', F: 'Female' };\n\nexport const INTEREST_DESTINATION = [\n { thisAccount: 'This account' },\n { nominatedAccount: 'Nominated account' },\n];\n\nexport const INTEREST_PAYMENT_FREQUENCY = [{ MO: 'Monthly' }, { YE: 'Yearly' }];\nexport const YES = 'yes';\nexport const NO = 'no';\n","import React from 'react';\nimport PropTypes from 'prop-types';\n//import { FormFeedback } from 'reactstrap';\nimport { Validate } from '@myie/interact';\nimport { ContentType } from '../../HO_components/contentManaged';\n\n/**\n * HasErrors function\n * check the given object and\n * will return true or false\n */\nconst HasErrors = validation => {\n const { state = {} } = validation;\n const { approval = {}, dirty } = state;\n if (approval.approved || !approval.failed || !dirty) {\n return true;\n }\n return false;\n};\n\n/**\n * LinkErrors component\n * will display error message\n */\nclass LinkErrors extends React.Component {\n render() {\n const { props } = this;\n\n const { validation = {}, field, contentValue, tagType, ...rest } = props;\n const { state = {} } = validation;\n let fieldName =\n typeof field === 'string' ? field : `${field[0]}-${field[1]}`;\n const { approval = {}, dirty } = state;\n const children = [];\n if (!approval.failed || !dirty) {\n return '';\n }\n const errors = Validate.errors(validation);\n\n errors.forEach(error => {\n children.push(\n \n \n {contentValue\n ? contentValue(ContentType.Error, error.rule)\n : error.message}\n \n ,\n );\n });\n return children.length ? (\n \n {tagType === 'list' ? (\n
  • \n {children}\n
  • \n ) : (\n

    \n {children}\n

    \n )}\n
    \n ) : (\n ''\n );\n }\n}\n\nLinkErrors.propTypes = {\n /**\n * Field names\n */\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\n /**\n * Input validation\n */\n validation: PropTypes.object,\n contentValue: PropTypes.any,\n tagType: PropTypes.any,\n title: PropTypes.any,\n};\n\nexport default LinkErrors;\nexport { HasErrors };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Content } from '@myie/interact-dom';\n\nclass AERAbbreviation extends React.Component {\n render() {\n return (\n \n \n \n \n \n );\n }\n}\n\nAERAbbreviation.propTypes = {\n items: PropTypes.string,\n};\n\nexport default AERAbbreviation;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport LinkErrors from './LinkErrors';\nimport contentManaged from '../../HO_components/contentManaged';\n\nclass ListItem extends React.Component {\n constructor(props) {\n super(props);\n const { validation, managedContent } = props;\n managedContent({\n validation: validation,\n });\n }\n\n render() {\n const { props } = this;\n\n const {\n validation = {},\n field,\n tagType = 'list',\n contentValue,\n managedContent,\n ...rest\n } = props;\n if (!managedContent()) return '';\n Object.keys(managedContent()).forEach(k => {\n delete rest[k];\n });\n\n return (\n \n );\n }\n}\n\nListItem.propTypes = {\n managedContent: PropTypes.func.isRequired,\n contentValue: PropTypes.func.isRequired,\n field: PropTypes.string,\n tagType: PropTypes.any,\n validation: PropTypes.object,\n};\n\nexport default contentManaged(ListItem);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ListItem from './ListItem';\nimport { Validate } from '@myie/interact';\nimport { Markdown } from '@myie/interact-dom';\n\nclass FormErrorList extends React.Component {\n content = items => {\n return (\n \n {items.length > 1 ? (\n \n \n {items.length}\n \n \n ) : null}\n {items.length === 1 ? (\n \n ) : null}\n \n );\n };\n\n getTitle = items => {\n const { title = 'h2', bespokeTitle = '', addressId = '' } = this.props;\n\n if (!items.length > 0) {\n return;\n }\n\n switch (title) {\n case 'h2':\n return (\n \n {bespokeTitle !== '' ? (\n

    {bespokeTitle}

    \n ) : (\n

    {this.content(items)}

    \n )}\n
    \n );\n case 'h3':\n return (\n \n {bespokeTitle !== '' ? (\n

    {bespokeTitle}

    \n ) : (\n

    {this.content(items)}

    \n )}\n
    \n );\n case 'h4':\n return (\n \n {bespokeTitle !== '' ? (\n

    {bespokeTitle}

    \n ) : (\n

    {this.content(items)}

    \n )}\n
    \n );\n\n default:\n }\n };\n\n updateFieldKey(keys, key) {\n let output = key;\n if (key === 'addressInput') {\n if (keys.includes('currentAddressLivingSince')) {\n output = 'currentAddressInput';\n } else if (keys.includes('previousAddressLivingSinceform1')) {\n output = 'addressInputform1';\n } else if (keys.includes('previousAddressLivingSinceform2')) {\n output = 'addressInputform2';\n }\n }\n return output;\n }\n render() {\n const { props } = this;\n const {\n validations = {},\n groupClassName = '',\n showErrors = true,\n continainingElement = '',\n addressId = '',\n } = props;\n let keys = Object.keys(validations);\n let errors = [];\n const items = [];\n\n keys.forEach((key, index) => {\n let validationValue = {};\n if (typeof validations[key] !== 'boolean') {\n validationValue = validations[key];\n\n errors = Validate.errors(validations[key]);\n }\n if (key !== 'approved' && errors.length > 0) {\n let fieldkey = this.updateFieldKey(keys, key);\n items.push(\n ,\n );\n }\n });\n\n return (\n \n {continainingElement === 'section' ? (\n 0 ? 'alert alert-danger form-error-list' : ''\n }`.trim()}\n aria-describedby={`${addressId}-error-message-title`}\n >\n {showErrors ? (\n \n {this.getTitle(items)}\n {items.length > 0 ? (\n
      {items}
    \n ) : (\n ''\n )}\n
    \n ) : (\n ''\n )}\n \n ) : (\n 0 ? 'alert alert-danger form-error-list' : ''\n }`.trim()}\n >\n {showErrors ? (\n \n {this.getTitle(items)}\n {items.length > 0 ? (\n
      {items}
    \n ) : (\n ''\n )}\n
    \n ) : (\n ''\n )}\n \n )}\n
    \n );\n }\n}\n\nFormErrorList.propTypes = {\n title: PropTypes.string,\n validations: PropTypes.object,\n groupClassName: PropTypes.string,\n showErrors: PropTypes.bool,\n bespokeTitle: PropTypes.string,\n continainingElement: PropTypes.string,\n addressId: PropTypes.string,\n};\n\nexport default FormErrorList;\n","//HOC\nimport requireAuthentication from './HO_components/requireAuthentication';\nimport contentContainer from './HO_components/contentContainer';\n\n// components\nimport Check from './components/Check';\nimport Errors, { HasErrors } from './components/Errors';\nimport ErrorPanel from './components/ErrorPanel';\nimport CommonError from './CommonError';\nimport FormattedDate from './components/FormattedDate';\nimport FormattedCurrency from './components/FormattedCurrency';\nimport Radio from './components/Radio';\nimport RadioButton from './components/RadioButton';\nimport RadioGroup from './components/RadioGroup';\nimport RoundBadge from './components/RoundBadge';\nimport Text from './components/Text';\nimport Mask from './components/InputMask';\nimport TextArea from './components/TextArea';\nimport DropDown from './components/DropDown';\nimport Numeric from './components/Numeric';\nimport Currency from './components/Currency';\nimport Slider from './components/Slider';\nimport Date from './components/Date';\nimport Value from './components/Value';\nimport AddressLookup from './components/AddressLookup';\nimport DatePicker from './components/DatePicker';\nimport GoogleTagManager from './components/GoogleTagManager';\nimport IfAuthenticated from './components/IfAuthenticated';\nimport Dialog from './components/Dialog';\nimport BankHolidays from './components/BankHolidays';\n//Symbols\nimport symbols from './components/symbols';\nimport Pagination from './components/Pagination';\n\n// Adverts & Sidebar widgets\nimport FeaturesAdvert1 from './components/FeaturesAdvert1';\nimport FeaturesAdvert2 from './components/FeaturesAdvert2';\nimport FeaturesAdvert3 from './components/FeaturesAdvert3';\nimport HelpAdvert1 from './components/HelpAdvert1';\nimport HelpAdvert2 from './components/HelpAdvert2';\nimport HelpContactSidebar from './components/HelpContactSidebar';\nimport TravelInsuranceAdvert1 from './components/TravelInsuranceAdvert1';\nimport OurProducts from './components/OurProducts';\n\n// timeout\nimport TimeOutModal from './timeout/TimeOutModal';\nimport TimeOut from './timeout/timeout';\nimport sessionTimer from './timeout/sessionTimer';\n// routing\nimport PrivateRoute from './routing/PrivateRoute';\nimport PublicRoute from './routing/PublicRoute';\nimport NoMatch from './routing/NoMatch';\nimport NetworkError from './routing/NetworkError';\nimport AvailableRoutes from './routing/AvailableRoutes';\nimport Interceptor from './routing/Interceptor';\nimport AuthButton from './components/AuthButton';\nimport AppMeta from './components/AppMeta';\nimport ScrollToTop from './components/ScrollToTop';\nimport TabNavigation from './components/TabNavigation';\nimport Content from './components/Content';\nimport Markdown from './components/Markdown';\nimport Switch from './components/Switch';\n\nimport { confirm } from './components/confirmdialog';\nimport SideLink from './components/SideLink';\nimport ErrorScroll from './ErrorScroll';\nimport './validation-ccb-tests';\nimport ContactNumber from './components/ContactNumber';\nimport LinkTag from './components/LinkTag';\nimport EmailAddress from './components/EmailAddress';\nimport appUtility from './utility';\n// setup initial moment config\nimport moment from 'moment';\nimport 'moment/locale/en-gb';\n\nimport Icon from './svgs';\n\nimport { RULES, CONSTANTS } from './constants/';\nimport loadStateHOC from './stateManager/loadStateHOC';\nimport stateUtility from './stateManager/stateUtility';\nimport AERAbbreviation from './components/AERAbbreviation';\nimport FormErrorList from './components/formErrors/FormErrorList';\nimport ListItem from './components/formErrors/ListItem';\nmoment.locale(navigator.language);\n\nexport {\n Switch,\n Content,\n Markdown,\n ErrorScroll,\n HasErrors,\n TabNavigation,\n IfAuthenticated,\n Check,\n Errors,\n ErrorPanel,\n CommonError,\n FormattedDate,\n FormattedCurrency,\n Radio,\n RoundBadge,\n Text,\n TextArea,\n LinkTag,\n Currency,\n Numeric,\n Slider,\n Date,\n Value,\n DropDown,\n DatePicker,\n RadioGroup,\n RadioButton,\n AddressLookup,\n GoogleTagManager,\n PublicRoute,\n PrivateRoute,\n Mask,\n NoMatch,\n NetworkError,\n Interceptor,\n AvailableRoutes,\n TimeOutModal,\n TimeOut,\n sessionTimer,\n symbols,\n Pagination,\n requireAuthentication,\n contentContainer,\n AuthButton,\n AppMeta,\n ScrollToTop,\n Dialog,\n confirm,\n SideLink,\n FeaturesAdvert1,\n FeaturesAdvert2,\n FeaturesAdvert3,\n HelpAdvert1,\n HelpAdvert2,\n HelpContactSidebar,\n TravelInsuranceAdvert1,\n OurProducts,\n ContactNumber,\n Icon,\n EmailAddress,\n BankHolidays,\n CONSTANTS,\n RULES,\n stateUtility,\n loadStateHOC,\n AERAbbreviation,\n ListItem,\n FormErrorList,\n appUtility,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withRouter } from 'react-router-dom';\nimport stateUtility from './stateUtility';\nimport queryString from 'query-string';\nimport _ from 'lodash';\n// TODO: use connect HOC to connect to CMS data in store\n\nfunction loadStateHOC(Component, storageName) {\n class StateManagedComponent extends React.Component {\n constructor(props) {\n super(props);\n const { location } = props;\n const currentState = queryString.parse(location.search);\n const definition = stateUtility.getComponentState(storageName);\n let url = {};\n let formData = {};\n if (definition) {\n formData = definition;\n }\n\n if (currentState && !_.isEmpty(currentState)) {\n url = currentState;\n } else {\n url = {};\n if (definition && definition.excludePaths) {\n if (!definition.excludePaths.includes(this.props.location.pathname)) {\n stateUtility.resetComponentState(storageName);\n formData = stateUtility.getComponentState(storageName);\n }\n } else {\n stateUtility.resetComponentState(storageName);\n formData = stateUtility.getComponentState(storageName);\n }\n }\n\n this.state = { stateData: formData, urlParams: url };\n }\n\n //Update urls with the state and form objects.\n updateUrl = (data, url = null) => {\n const { history } = this.props;\n let path = url;\n if (!url) {\n path = history.location.pathname;\n }\n if (data && !data.url) {\n data.url = {};\n }\n // let strings;\n // strings = stateUtility.addOtherParamsToUrl(match.params);\n this.updateState(data);\n\n //const newUrl = stateUtility.generateUrl(match.path, strings, data.url);\n const newUrl = queryString.stringifyUrl({\n url: path,\n query: data.url,\n });\n history.push(newUrl);\n };\n\n refreshUrl = () => {\n const { history } = this.props;\n const newUrl = queryString.stringifyUrl({\n url: history.location.pathname,\n query: {},\n });\n\n history.push(newUrl);\n this.setState({ urlParams: {} });\n };\n\n updateState = data => {\n const keys = Object.keys(data);\n keys.forEach(key => {\n stateUtility.setPageState(storageName, data[key], key);\n });\n const definition = stateUtility.getComponentState(storageName);\n this.setState({ stateData: definition, urlParams: definition.url });\n };\n\n resetComponentState = () => {\n stateUtility.resetComponentState(storageName);\n const definition = stateUtility.getComponentState(storageName);\n this.setState({ stateData: definition, urlParams: {} });\n };\n\n render() {\n // eslint-disable-next-line no-unused-vars\n const { ...rest } = this.props;\n const { stateData, urlParams } = this.state;\n\n return (\n \n );\n }\n }\n StateManagedComponent.propTypes = {\n cmsTag: PropTypes.any,\n history: PropTypes.any,\n id: PropTypes.any,\n match: PropTypes.any,\n pendingContent: PropTypes.any,\n publishedContent: PropTypes.any,\n showOrigin: PropTypes.any,\n location: PropTypes.any,\n };\n\n return withRouter(StateManagedComponent);\n}\nexport default loadStateHOC;\n","export const form = {\n firstname: {\n rules: {\n stop: true,\n required: {\n message: 'Please enter your first name',\n },\n format: {\n regex: /^[a-zA-Z0-9`¬!\"£$%^&*()_+-={};'#:@~,./<>?'€[\\]]*\\]{0,50}$/,\n message: 'Please enter a valid first name',\n },\n },\n },\n lastname: {\n rules: {\n stop: true,\n required: {\n message: 'Please enter your last name',\n },\n format: {\n regex: /^[a-zA-Z0-9`¬!\" £$%^&*()_+-={};'#:@~,./<>?'€[\\]]*\\]{0,50}$/,\n message: 'Please enter a valid last name',\n },\n },\n },\n postcode: {\n rules: {\n title: 'Postcode',\n stop: true,\n required: {\n message: 'Please enter your home postcode',\n },\n postcode: {\n message: 'Please enter a valid home postcode',\n },\n },\n },\n\n b_day: {\n rules: {\n title: 'bday',\n stop: true,\n required: {\n message: 'Please enter your date of birth',\n },\n date: {\n format: 'ymd',\n message: 'Please select a valid date of birth.',\n },\n },\n },\n account_number: {\n rules: {\n title: 'accountNumber',\n stop: true,\n required: {\n message: 'Please enter your account number',\n },\n format: {\n regex: /^[0-9]{8,8}$/,\n message: 'Please enter a valid account number',\n },\n },\n },\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Button, Form, Row, Col, Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-authentication';\nimport { form } from './PersonalDetailsFormObj';\nimport { Text, DatePicker, Content, LinkTag } from '@myie/interact-dom';\nimport { Validate } from '@myie/interact';\nimport { mapDispatchToProps as ccbAuthenticationDispatch } from '@myie/interact-ccb-authentication';\nclass PersonalDetails extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: form,\n };\n }\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n this.props.saveData(name, value);\n this.setState({ ...this.state, form });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.props.saveData(name, value);\n this.setState({ ...this.state, form });\n };\n\n submit = e => {\n e.preventDefault();\n const { verify } = this.props;\n var { form } = this.state;\n form = Validate.form(form);\n this.setState({ ...this.state, form });\n if (!form.approved) {\n return;\n }\n verify();\n };\n\n render() {\n let { form } = this.state;\n const { message, accountdetails, resetTokenAccount } = this.props;\n if (accountdetails?.Success && !form.account_number.value) {\n form = Validate.input(\n 'account_number',\n accountdetails.AccountNumber,\n form,\n );\n this.props.saveData('account_number', accountdetails.AccountNumber);\n this.setState({ ...this.state, form }, () => {\n resetTokenAccount();\n });\n }\n var disabledForm = false;\n if (this.props.disableForm || this.props.isFetching) {\n disabledForm = true;\n }\n var error;\n return (\n <>\n {error ? error : ''}\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 {message ? (\n \n \n \n ) : null}\n
    \n \n \n \n {disabledForm ? (\n event.preventDefault()}\n >\n \n \n ) : (\n \n \n \n )}\n
    \n \n \n );\n }\n}\n\nPersonalDetails.propTypes = {\n saveData: PropTypes.any,\n setStage: PropTypes.any,\n verify: PropTypes.any,\n disableForm: PropTypes.bool,\n isFetching: PropTypes.bool,\n message: PropTypes.string,\n accountdetails: PropTypes.object,\n resetTokenAccount: PropTypes.func,\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...ccbAuthenticationDispatch,\n },\n)(PersonalDetails);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Button, Form, Row, Col, Spinner } from 'reactstrap';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-authentication';\nimport { mapDispatchToProps as mapDispatchToProps_shared } from '@myie/interact-shared';\nimport { Text, Switch, Content } from '@myie/interact-dom';\nimport { Alert } from 'reactstrap';\nimport { Validate } from '@myie/interact';\n\nclass SecurityDetails extends React.Component {\n constructor(props) {\n super(props);\n const { history, resetRegistration } = this.props;\n this.state = {\n history,\n resetRegistration,\n form: {\n username: {\n rules: {\n title: 'username',\n stop: true,\n required: {\n message: 'Please enter a username',\n },\n range: {\n min: 6,\n max: 23,\n message:\n 'Your username must be at least 6 characters, and no more than 23 characters',\n },\n format: {\n regex: /^[^\\s$&+,/:;=?%#<>{}^~[\\]`\\\\]{6,23}$/,\n message:\n 'Your username contains one or more of these invalid symbols $&+,/:;=?%#<>{}^~[]` or spaces. Please remove them and try again',\n },\n },\n },\n confirmUsername: {\n rules: {\n title: 'confirm username',\n stop: true,\n required: {\n message: 'Please confirm your username',\n },\n format: {\n regex: /^[^\\s$&+,/:;=?%#<>{}^~[\\]`\\\\]{6,23}$/,\n message:\n 'Your username contains one or more of these invalid symbols $&+,/:;=?%#<>{}^~[]` or spaces. Please remove them and try again',\n },\n compare: {\n message: 'Please ensure the username fields match',\n field: 'username',\n comparison: () => {\n return this.state.form.username.value;\n },\n },\n },\n },\n password: {\n rules: {\n title: 'password',\n stop: true,\n required: {\n message: 'Please enter a password',\n },\n format: {\n regex: /^(?=(.*[a-z]){1,})(?=(.*[A-Z]){1,})(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s$).{10,50}$/,\n message: 'Please enter valid a password',\n },\n },\n },\n confirmPassword: {\n rules: {\n title: 'confirm password',\n stop: true,\n required: {\n message: 'Please confirm your password',\n },\n format: {\n regex: /^(?=(.*[a-z]){1,})(?=(.*[A-Z]){1,})(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s$).{10,50}$/,\n message: 'Please enter valid a password',\n },\n compare: {\n message: 'Please ensure the password fields match',\n field: 'password',\n comparison: () => {\n return this.state.form.password.value;\n },\n },\n },\n },\n memorableNumber: {\n rules: {\n title: 'memorable number',\n stop: true,\n required: {\n message: 'Please enter your memorable number',\n },\n format: {\n regex: /^[0-9]{6}$/,\n message: 'Please enter a valid memorable number',\n },\n },\n },\n confirmMemorableNumber: {\n rules: {\n title: 'confirm memorable number',\n stop: true,\n required: {\n message: 'Please confirm your memorable number',\n },\n format: {\n regex: /^[0-9]{6}$/,\n message: 'Please enter a valid memorable number',\n },\n compare: {\n message: 'Please ensure the memorable number fields match',\n field: 'memorableNumber',\n comparison: () => {\n return this.state.form.memorableNumber.value;\n },\n },\n },\n },\n // EmailAddress: {\n // rules: {\n // title: 'EmailAddress',\n // stop: true,\n // required: {\n // message: 'Please enter Email address',\n // },\n // ccbEmail: {\n // message: 'Please enter a valid Email address',\n // },\n // },\n // },\n // MobileNumber: {\n // rules: {\n // title: 'MobileNumber',\n // stop: true,\n // format: {\n // regex: /^$|^(?=^(\\D*(\\d\\D*){11,}$))[0+][0-9\\s]{10,16}$/,\n // message: 'Please enter a valid Mobile number',\n // },\n // },\n // value: '',\n // },\n },\n };\n }\n componentDidMount = () => {\n this.props.timeout.startTimer();\n };\n\n componentWillUnmount = () => {\n this.props.timeout.clearTimer();\n };\n\n resetStage = () => {\n let { resetRegistration } = this.props;\n resetRegistration();\n };\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n submit = e => {\n e.preventDefault();\n var { form } = this.state;\n const { setCredentials, registration } = this.props;\n form = Validate.form(form);\n const lastUsername = form.username.value;\n this.setState({ ...this.state, form, lastUsername });\n if (!form.approved) {\n return;\n }\n let birthDay;\n if (this.props.formData) {\n birthDay = this.props.formData.b_day ? this.props.formData.b_day : '';\n }\n\n const request = {\n Ticket: registration.Ticket,\n Username: form.username.value,\n CredentialValues: [\n {\n Name: 'Password',\n Value: form.password.value,\n Context: '',\n },\n {\n Name: 'Pin',\n Value: form.memorableNumber.value,\n Context: '',\n },\n ],\n TermsAndConditionsDocumentVersion: '1.0',\n ExtendedProperties: {\n IdentityRequest: {\n // email: form.EmailAddress.value,\n // mobileTelephone: form.MobileNumber.value.replace(/\\s/g, ''),\n DateOfBirth: birthDay,\n },\n },\n };\n setCredentials(request);\n };\n\n getErrors() {\n const { credentialsSetup = {} } = this.props;\n let errors = [];\n if (\n credentialsSetup.ExtendedProperties &&\n credentialsSetup.ExtendedProperties.IdentityResponse &&\n credentialsSetup.ExtendedProperties.IdentityResponse.CredentialErrors\n ) {\n credentialsSetup.ExtendedProperties.IdentityResponse.CredentialErrors.forEach(\n element => {\n switch (element) {\n case 'Dob':\n return errors.push(\n \n \n ,\n );\n case 'AllSame':\n return errors.push(\n \n \n ,\n );\n case 'Sequential':\n return errors.push(\n \n \n ,\n );\n case 'Known':\n return errors.push(\n \n \n ,\n );\n case 'Username':\n return errors.push(\n \n \n ,\n );\n default:\n }\n },\n );\n }\n\n return errors;\n }\n\n buildErrorMsg = credentialsSetup => {\n var errorsExist = false;\n var errorMsg = [];\n\n if (credentialsSetup.Status === 'InvalidCredentials') {\n errorMsg = this.getErrors();\n if (errorMsg.length) {\n errorsExist = true;\n }\n } else {\n if (\n credentialsSetup &&\n credentialsSetup.Status &&\n credentialsSetup.Status !== ''\n ) {\n errorsExist = true;\n }\n errorMsg = (\n {\n return this.state.lastUsername;\n },\n random: Math.floor(Math.random() * (9999 - 1000)) + 1000,\n },\n }}\n contents={{\n UsernameAlreadyExists: {\n defaultValue:\n 'Please select another username as your chosen one already exists',\n },\n\n NotEnoughCredentials: {\n defaultValue: 'Not enough credentials were submitted',\n },\n InvalidUsername: {\n defaultValue:\n 'The username entered is not valid. Please enter a valid username.',\n },\n }}\n />\n );\n }\n\n return {\n errorMsg: errorMsg,\n errorsExist: errorsExist,\n };\n };\n\n render() {\n const { credentialsSetup = {} } = this.props;\n const { form } = this.state;\n var errorObj = this.buildErrorMsg(credentialsSetup);\n let disabledForm = false;\n if (this.props.disableForm || this.props.isFetching) {\n disabledForm = true;\n }\n return (\n \n {this.props.isFetching && (\n \n Loading...\n \n )}\n {!this.props.isFetching && (\n <>\n {errorObj.errorMsg}\n \n \n \n \n \n \n \n\n \n {/*

    \n \n

    \n \n */}\n \n
    \n {errorObj.errorsExist ? (\n \n \n \n ) : (\n ''\n )}\n \n )}\n
    \n \n \n \n \n \n \n
    \n \n );\n }\n}\n\nSecurityDetails.propTypes = {\n history: PropTypes.any,\n registration: PropTypes.any,\n resetRegistration: PropTypes.any,\n credentialsSetup: PropTypes.any,\n setCredentials: PropTypes.any,\n timeout: PropTypes.any,\n setStage: PropTypes.any,\n formData: PropTypes.any,\n isFetching: PropTypes.bool,\n disableForm: PropTypes.bool,\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapDispatchToProps_shared,\n },\n)(SecurityDetails);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Breadcrumb, BreadcrumbItem, Alert } from 'reactstrap';\nimport { mapDispatchToProps as mapDispatchToProps_shared } from '@myie/interact-shared';\nimport { mapDispatchToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps as ccbAuthenticationDispatch } from '@myie/interact-ccb-authentication';\nimport { Redirect } from 'react-router-dom';\nimport PersonalDetails from '../shared/PersonalDetails';\n// import PersonalDetailsActivation from './PersonalDetailsActivation';\n// import ActivationCode from './activation-code/ActivationCode';\nimport SecurityDetails from './SecurityDetails';\nimport { Session } from '@myie/interact';\nimport {\n TimeOut,\n Markdown,\n Content,\n Switch,\n AppMeta,\n} from '@myie/interact-dom';\nimport queryString from 'query-string';\n\nclass Register extends React.Component {\n constructor(props) {\n super(props);\n let stage = 'PersonalDetails';\n // if (props.match) {\n // const { id } = props.match.params;\n // if (id === 'activate') {\n // stage = 'PersonalDetailsActivate';\n // }\n // }\n if (props?.location) {\n const { token } = queryString.parse(props?.location.search);\n if (token) {\n props.getTokenAccount({ AccountTokenId: token });\n }\n }\n this.state = {\n stage: stage,\n message: null,\n data: {},\n fetching: false,\n };\n }\n\n componentWillUnmount() {\n const { resetActivation } = this.props;\n resetActivation();\n }\n\n componentDidMount() {\n let stage;\n if (this.props.match) {\n const { id } = this.props.match.params;\n if (id) {\n stage = id;\n }\n }\n if (stage !== 'activate') {\n return ;\n }\n }\n\n // these response status force the form to be reset and switched back to the first page\n static getDerivedStateFromProps = (nextProps, prevState) => {\n const {\n resetRegistration,\n resetActivation,\n registration = {},\n activationCheck = {},\n credentialsSetup = {},\n } = nextProps;\n let activationStage = 'activationCode';\n // if (nextProps.match) {\n // const { id } = nextProps.match.params;\n // if (id === 'activate') {\n // activationStage = 'PersonalDetailsActivate';\n // }\n // }\n if (registration.Status === 'IdentifyAndVerifyFailed') {\n if (\n registration.ExtendedProperties &&\n registration.ExtendedProperties.IdentityResponse &&\n registration.ExtendedProperties.IdentityResponse.ActivationStatus ===\n 'Expired'\n ) {\n return {\n stage: 'activationCode',\n message: '',\n fetching: false,\n };\n }\n if (\n registration.ExtendedProperties &&\n registration.ExtendedProperties.IdentityResponse &&\n registration.ExtendedProperties.IdentityResponse.ActivationStatus ===\n '5'\n ) {\n return {\n stage: 'activationCode',\n message: '',\n fetching: false,\n };\n }\n resetRegistration();\n if (\n registration.ExtendedProperties &&\n registration.ExtendedProperties.IdentityResponse &&\n registration.ExtendedProperties.IdentityResponse.ActivationStatus ===\n '4'\n ) {\n return {\n stage: activationStage,\n message: 'IdentifyAndVerifyFailedWarning',\n fetching: false,\n };\n }\n\n return {\n stage: activationStage,\n message: 'IdentifyAndVerifyFailed',\n fetching: false,\n };\n }\n\n if (registration.Status === 'Success') {\n if (activationCheck.CheckStatus) {\n resetActivation();\n }\n return {\n stage: 'SecurityDetails',\n fetching: false,\n };\n }\n\n if (activationCheck.CheckStatus === 'Invalid') {\n resetActivation();\n return {\n stage: 'PersonalDetails',\n message: 'Invalid',\n fetching: false,\n };\n }\n\n if (\n activationCheck.CheckStatus &&\n activationCheck.CheckStatus !== 'Registered'\n ) {\n return {\n stage: 'SecurityDetails',\n fetching: false,\n };\n }\n\n if (credentialsSetup.Status === 'InvalidTicket') {\n resetRegistration();\n return {\n data: {},\n stage: 'PersonalDetails',\n message: 'InvalidTicket',\n fetching: false,\n };\n }\n\n if (!activationCheck.CheckStatus && prevState.stage === 'activationCode') {\n return {\n data: {},\n stage: 'PersonalDetails',\n fetching: false,\n };\n }\n\n if (!registration.Status && prevState.stage === 'SecurityDetails') {\n return {\n data: {},\n stage: 'PersonalDetails',\n fetching: false,\n };\n }\n\n return null;\n };\n\n // save the data for the request from several forms\n saveData = (name, value) => {\n const { data } = this.state;\n data[name] = value;\n this.setState({ ...this.state, data, message: null });\n };\n\n // change the stage of the form\n setStage = stage => {\n this.setState({ ...this.state, stage, message: null });\n };\n\n timeoutReset = () => {\n this.setState({\n ...this.state,\n data: {},\n stage: 'PersonalDetails',\n message: 'Timeout',\n });\n };\n\n timeoutObj = {\n history: null,\n userLogout: this.props.userLogout,\n message: 'RegistrationTimeout',\n url: '/registration',\n onTimeout: this.timeoutReset,\n showTimeoutModal: this.props.showTimeoutModal,\n type: 'SECURITY_DETAILS',\n };\n\n timeout = new TimeOut(this.timeoutObj);\n\n // verify the identification and verfication entries\n verify = (code = '') => {\n const { data } = this.state;\n const { register } = this.props;\n this.setState({ fetching: true });\n // personal data\n const request = {\n TermsAndConditionsDocumentVersion: 'v1.0',\n Entries: [\n {\n Type: 'firstName',\n Value: data.firstname,\n },\n {\n Type: 'lastName',\n Value: data.lastname,\n },\n {\n Type: 'dateOfBirth',\n Value: data.b_day,\n },\n {\n Type: 'postCode',\n Value: data.postcode,\n },\n {\n Type: 'accountNumber',\n Value: data.account_number,\n },\n ],\n ExtendedProperties: {},\n };\n request.Entries.push({\n Type: 'SecurityDetails',\n Value: code,\n });\n register(request);\n };\n\n activate = () => {\n const { data } = this.state;\n const { register } = this.props;\n\n // personal data\n const request = {\n TermsAndConditionsDocumentVersion: 'v1.0',\n Entries: [\n {\n Type: 'firstName',\n Value: data.firstname,\n },\n ],\n ExtendedProperties: {},\n };\n register(request);\n };\n\n checkIfFetching = () => {\n const { fetching } = this.state;\n return fetching;\n };\n\n // select current stage\n currentStage = message => {\n // let { activationCheck = {} } = this.props;\n let { tokenAccountDetails = {}, isFetching } = this.props;\n switch (this.state.stage) {\n case 'PersonalDetails':\n return (\n \n );\n // case 'PersonalDetailsActivate':\n // return (\n // \n // );\n // case 'activationCode':\n // return (\n // \n // );\n case 'SecurityDetails':\n return (\n \n );\n default:\n }\n };\n\n // select current stage\n getActivationTitle = () => {\n switch (this.state.stage) {\n case 'PersonalDetails':\n return (\n

    \n \n

    \n );\n case 'SecurityDetails':\n return (\n

    \n \n

    \n );\n case 'PersonalDetailsActivate':\n return (\n

    \n \n

    \n );\n\n default:\n }\n };\n\n render() {\n const {\n registration = {},\n credentialsSetup = {},\n activationCheck = {},\n } = this.props;\n let { stage } = this.state;\n if (Session.isAuthenticated()) {\n Session.abandon(null);\n }\n const isNonSignatoryUser = registration?.ExtendedProperties?.IdentityResponse?.CredentialErrors?.includes(\n 'NonSignatory',\n );\n if (isNonSignatoryUser) {\n return ;\n }\n\n // redirect on these credential setup responses\n switch (credentialsSetup.Status) {\n case 'Success':\n return ;\n case 'Unsuccessful':\n return ;\n case 'Blocked':\n return ;\n default:\n }\n\n // redirect on these varification responses\n switch (activationCheck.CheckStatus) {\n case 'Registered':\n return ;\n\n default:\n }\n // redirect on these varification responses\n switch (registration.Status) {\n case 'Blocked':\n return ;\n case 'AlreadyActive':\n return ;\n case 'NotAllowed':\n return ;\n\n default:\n }\n\n const { message } = this.state;\n let stageId;\n if (this.props.match) {\n const { id } = this.props.match.params;\n if (id) {\n stageId = id;\n }\n }\n return (\n
    \n {stageId === 'activate' ? (\n <>\n \n {this.getActivationTitle()}\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 \n )}\n\n
    \n \n {stage === 'PersonalDetails' ? (\n \n \n \n ) : null}\n\n {this.currentStage(message)}\n
    \n );\n }\n}\n\nRegister.propTypes = {\n credentialsSetup: PropTypes.object,\n history: PropTypes.any,\n register: PropTypes.any,\n activationCheck: PropTypes.any,\n registrationcheck: PropTypes.any,\n registration: PropTypes.object,\n showTimeoutModal: PropTypes.any,\n userLogout: PropTypes.any,\n isFetching: PropTypes.bool,\n resetActivation: PropTypes.any,\n match: PropTypes.any,\n tokenAccountDetails: PropTypes.object,\n getTokenAccount: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { authenticationDefinition, customccbAuthenticationDefinition } = state;\n return {\n ...authenticationDefinition,\n ...customccbAuthenticationDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapDispatchToProps_shared,\n ...ccbAuthenticationDispatch,\n },\n)(Register);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, Markdown, ContactNumber } from '@myie/interact-dom';\n\nclass Blocked extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\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\nBlocked.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Blocked);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, LinkTag } from '@myie/interact-dom';\nclass Success extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n render() {\n return (\n
    \n

    \n \n

    \n

    \n \n

    \n\n

    \n \n

    \n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nSuccess.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Success);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, ContactNumber } from '@myie/interact-dom';\n\nclass Unsuccessful extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\n
    \n

    \n \n

    \n\n

    \n \n

    \n

    \n \n \n \n

    \n\n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nUnsuccessful.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Unsuccessful);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, Markdown } from '@myie/interact-dom';\n\nclass AccountAlreadyExists extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\n
    \n

    \n \n

    \n

    \n \n

    \n \n \n \n
    \n \n \n \n \n \n \n
    \n
    \n );\n }\n}\n\nAccountAlreadyExists.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(AccountAlreadyExists);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, Markdown, ContactNumber } from '@myie/interact-dom';\n\nclass NotAllowed extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\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\nNotAllowed.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(NotAllowed);\n","import React from 'react';\n\nimport { Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { Content, Markdown, ContactNumber } from '@myie/interact-dom';\n\nAccessDenied.propTypes = {};\n\nfunction AccessDenied() {\n return (\n
    \n

    \n \n

    \n \n \n

    \n \n \n \n

    \n
    \n
    \n \n \n \n
    \n
    \n );\n}\n\nexport default AccessDenied;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Redirect, Route, Switch } from 'react-router-dom';\n\nimport Register from './Register';\nimport Blocked from './Blocked';\nimport Success from './Success';\nimport Unsuccessful from './Unsuccessful';\nimport AccountAlreadyExists from './AccountAlreadyExists';\nimport NotAllowed from './NotAllowed';\nimport AccessDenied from '../shared/AccessDenied';\n\nimport { NoMatch } from '@myie/interact-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-authentication';\nimport { Alert } from 'reactstrap';\n\nclass Registration extends React.Component {\n componentDidMount() {\n const { setReferrer, location } = this.props;\n const { from } = location.state || { from: { pathname: '/accounts' } };\n setReferrer(from);\n }\n\n render() {\n const { error } = this.props;\n var re = new RegExp('^/registration[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n\n return (\n
    \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n \n \n \n \n \n \n \n \n \n
    \n );\n }\n}\n\nRegistration.propTypes = {\n error: PropTypes.any,\n location: PropTypes.any,\n setReferrer: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Registration);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport { Content, Markdown, AppMeta } from '@myie/interact-dom';\nimport { Alert } from 'reactstrap';\n\nclass UserNameReminder extends React.Component {\n render() {\n return (\n
    \n \n

    \n \n

    \n \n\n \n \n \n \n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nUserNameReminder.propTypes = {\n username: PropTypes.any,\n};\n\nexport default UserNameReminder;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Breadcrumb, BreadcrumbItem } from 'reactstrap';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-authentication';\nimport { Redirect } from 'react-router-dom';\nimport PersonalDetails from '../shared/PersonalDetails';\nimport UserNameReminder from './UserNameReminder';\nimport { Switch, Content, AppMeta } from '@myie/interact-dom';\nimport { Session } from '@myie/interact';\n\nclass Retrieve extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n stage: 'PersonalDetails',\n message: null,\n data: {},\n };\n }\n\n // these response status force the form to be reset and switched back to the first page\n static getDerivedStateFromProps = prevProps => {\n const { retrivedUserName = {}, resetForgottenUN } = prevProps;\n if (retrivedUserName.Status === 'IdentifyAndVerifyFailed') {\n resetForgottenUN();\n return {\n stage: 'PersonalDetails',\n message: 'IdentifyAndVerifyFailed',\n };\n }\n if (retrivedUserName.Status === 'NotRegistered') {\n resetForgottenUN();\n return {\n data: {},\n stage: 'PersonalDetails',\n message: 'NotRegistered',\n };\n }\n return null;\n };\n\n // save the data for the request from several forms\n saveData = (name, value) => {\n const { data } = this.state;\n data[name] = value;\n this.setState({ ...this.state, data, message: null });\n };\n\n // change the stage of the form\n setStage = stage => {\n this.setState({ ...this.state, stage, message: null });\n };\n\n // verify the identification and verfication entries\n verify = () => {\n const { data } = this.state;\n const { retrieveUserName } = this.props;\n\n // personal data\n const request = {\n Entries: [\n {\n Type: 'firstName',\n Value: data.firstname,\n },\n {\n Type: 'lastName',\n Value: data.lastname,\n },\n {\n Type: 'dateOfBirth',\n Value: data.b_day,\n },\n {\n Type: 'postCode',\n Value: data.postcode,\n },\n {\n Type: 'accountNumber',\n Value: data.account_number,\n },\n ],\n ExtendedProperties: {},\n };\n retrieveUserName(request);\n };\n\n // select current stage\n currentStage = () => {\n switch (this.state.stage) {\n case 'PersonalDetails':\n return (\n \n );\n default:\n }\n };\n\n render() {\n const { retrivedUserName = {} } = this.props;\n if (Session.isAuthenticated()) {\n Session.abandon(null);\n }\n const isNonSignatoryUser = retrivedUserName?.ExtendedProperties?.IdentityResponse?.CredentialErrors?.includes(\n 'NonSignatory',\n );\n if (isNonSignatoryUser) {\n return ;\n }\n /* To be replaced by HOC */\n switch (retrivedUserName.Status) {\n case 'Blocked':\n return ;\n case 'Success':\n return ;\n default:\n }\n const { message } = this.state;\n\n return (\n
    \n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n
    \n
    \n

    \n \n

    \n \n {this.currentStage()}\n
    \n );\n }\n}\n\nRetrieve.propTypes = {\n retrieveUserName: PropTypes.any,\n retrivedUserName: PropTypes.object,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Retrieve);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, ContactNumber } from '@myie/interact-dom';\n\nclass Blocked extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\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\nBlocked.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Blocked);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Redirect, Route, Switch } from 'react-router-dom';\n\nimport Register from './Retrieve';\nimport Blocked from './Blocked';\n\nimport { NoMatch } from '@myie/interact-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-authentication';\nimport { Alert } from 'reactstrap';\n\nclass ForgottenUsername extends React.Component {\n componentDidMount() {\n const { setReferrer, location } = this.props;\n const { from } = location.state || { from: { pathname: '/accounts' } };\n setReferrer(from);\n }\n\n render() {\n const { error } = this.props;\n var re = new RegExp('^/forgotten-username[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n\n return (\n
    \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n \n \n \n \n
    \n );\n }\n}\n\nForgottenUsername.propTypes = {\n error: PropTypes.any,\n location: PropTypes.any,\n setReferrer: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ForgottenUsername);\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass RegistrationSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nRegistrationSidebar.propTypes = {};\n\nexport default RegistrationSidebar;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass ForgottenNameSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default ForgottenNameSidebar;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass ForgottenPasswordSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default ForgottenPasswordSidebar;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass UpdateSecurityDetailsSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default UpdateSecurityDetailsSidebar;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass UpdateSecurityDetailsSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default UpdateSecurityDetailsSidebar;\n","import RegistrationSidebar from './registration/Sidebar';\nimport ForgottenNameSidebar from './forgotten-username/Sidebar';\nimport ForgottenPasswordSidebar from './forgotten-password/Sidebar';\nimport UpdateSecurityDetailsSidebar from './update-security-details/Sidebar';\nimport UpdateOrganisationDetailsSidebar from './update-organisation-details/Sidebar';\nimport SignedOutSidebar from './signed-out/Sidebar';\n\nconst AuthenticationSidebars = [\n { url: '/registration/', Sidebar: RegistrationSidebar },\n { url: '/forgotten-username/', Sidebar: ForgottenNameSidebar },\n { url: '/sign-in/', Sidebar: null },\n { url: '/signed-out', Sidebar: SignedOutSidebar },\n { url: '/forgotten-password/', Sidebar: ForgottenPasswordSidebar },\n { url: '/update-security-details', Sidebar: UpdateSecurityDetailsSidebar },\n {\n url: '/update-organisation-details',\n Sidebar: UpdateOrganisationDetailsSidebar,\n },\n];\n\nexport default AuthenticationSidebars;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass SignedOutSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default SignedOutSidebar;\n","import UpdateSecurityDetailsServiceItems from './UpdateSecurityDetailsServiceItems';\nimport UpdateOrganisationDetailsServiceItems from './UpdateOrganisationDetailsServiceItems';\n\nconst AuthenticationServiceItems = [\n {\n name: 'update-security-details-service-item',\n serviceItem: UpdateSecurityDetailsServiceItems,\n },\n {\n name: 'update-organisation-details-service-item',\n serviceItem: UpdateOrganisationDetailsServiceItems,\n },\n];\n\nexport default AuthenticationServiceItems;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Media } from 'reactstrap';\nimport { Markdown, Icon } from '@myie/interact-dom';\n\nclass UpdateSecurityDetails extends React.Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n\nexport default UpdateSecurityDetails;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Media } from 'reactstrap';\nimport { Markdown, Icon } from '@myie/interact-dom';\n\nclass UpdateOrganisationDetails extends React.Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n\nexport default UpdateOrganisationDetails;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Button, Form, Breadcrumb, BreadcrumbItem, Card } from 'reactstrap';\nimport { Redirect, Link } from 'react-router-dom';\nimport { Text, Check } from '@myie/interact-dom';\nimport { Content, Switch, AppMeta } from '@myie/interact-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-authentication';\nimport { mapDispatchToProps as mapSharedDispatchToProps } from '@myie/interact-shared';\nimport { Session, Validate, Utility } from '@myie/interact';\nimport { SystemMessage } from '@myie/interact-widget-system-message-dom';\n\nclass CreateLogin extends React.Component {\n constructor(props) {\n super(props);\n const { login, toggleRememberMe } = this.props;\n let signoutMessage = window.sessionStorage.getItem('timeoutMessage');\n window.sessionStorage.removeItem('timeoutMessage');\n let error;\n if (signoutMessage) {\n error = signoutMessage;\n }\n if (login && login.Status === 'InvalidTicket') {\n error = 'InvalidTicket';\n }\n\n const remembermeUsername = localStorage.getItem('rememberMe');\n toggleRememberMe(!!remembermeUsername);\n this.state = {\n error: error,\n count: 0,\n rememberMeFlag: remembermeUsername,\n loginStatus: '',\n cachedUserName: remembermeUsername\n ? Utility.hexDecode(remembermeUsername)\n : '',\n form: {\n username: {\n value: '',\n rules: {\n title: 'Username',\n stop: true,\n required: {\n message:\n 'Please enter your username – this will be something you selected when you first registered. If you need a reminder of it, select ‘forgotten your username’',\n },\n range: {\n min: 6,\n max: 23,\n message:\n 'Your username must be at least 6 characters, and no more than 23 characters',\n },\n format: {\n regex: /^[^\\s\\\\$\\\\&\\\\+\\\\,\\\\/\\\\:\\\\;\\\\=\\\\?\\\\%\\\\#\\\\<\\\\>\\\\{\\\\}\\\\^\\\\~\\\\[\\\\\\]\\\\`\\\\\\\\]{6,23}$/,\n message:\n 'Your username contains one or more of these invalid symbols $&+,/:;=?%#<>{}^~[]` or spaces. Please remove them and try again',\n },\n },\n },\n password: {\n rules: {\n stop: true,\n title: 'Password',\n required: {\n message: 'Please enter a password',\n },\n },\n },\n rememberMe: {\n value: !!remembermeUsername,\n rules: {\n title:\n 'Remember me (please do not use this option if you are using a shared computer)',\n },\n },\n },\n };\n }\n\n static getDerivedStateFromProps = (nextProps, prevState) => {\n const { login } = nextProps;\n\n if (login) {\n if (prevState.count === 4) {\n return {\n loginStatus: 'warning',\n };\n }\n if (login.Status !== 'Failed') {\n return {\n loginStatus: login.Status,\n count: 0,\n };\n }\n if (prevState.count === 4 && prevState.loginStatus === 'warning') {\n return null;\n }\n return {\n loginStatus: login.Status,\n };\n }\n return null;\n };\n\n componentDidMount() {\n const { setReferrer, userLogout } = this.props;\n const { referrer } = this.props || { referrer: { pathname: '/accounts' } };\n userLogout();\n setReferrer(referrer);\n }\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n onClick = e => {\n const { name, checked } = e.target;\n const { toggleRememberMe } = this.props;\n var { form } = this.state;\n form = Validate.input(name, checked ? 'true' : null, form);\n this.setState({ ...this.state, form });\n toggleRememberMe(checked);\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n submit = e => {\n e.preventDefault();\n const { createLogin, setRememberMeUserName } = this.props;\n var { form, count, rememberMeFlag, cachedUserName } = this.state;\n let countValue = count;\n let formCopy = { ...form };\n let Username = form.username.value;\n if (rememberMeFlag && form.rememberMe.value && !form.username.value) {\n formCopy.username.value = cachedUserName;\n Username = cachedUserName;\n formCopy = Validate.form(formCopy);\n if (!formCopy.approved) {\n return;\n }\n countValue = count + 1;\n } else {\n form = Validate.form(form);\n\n if (!form.approved) {\n return;\n }\n countValue = count + 1;\n }\n this.setState({ ...this.state, form, count: countValue, error: null });\n const request = {\n Username,\n CredentialValues: [\n {\n Name: 'Password',\n Value: form.password.value,\n Context: null,\n },\n ],\n ExtendedProperties: null,\n };\n setRememberMeUserName(Username);\n createLogin(request);\n };\n\n render() {\n const { login } = this.props;\n const { form, loginStatus, rememberMeFlag } = this.state;\n if (Session.isAuthenticated()) {\n Session.abandon(null);\n }\n const isNonSignatoryUser = login?.ExtendedProperties?.IdentityResponse?.CredentialErrors?.includes(\n 'NonSignatory',\n );\n if (isNonSignatoryUser) {\n return ;\n }\n\n var error;\n if (login) {\n switch (loginStatus) {\n case 'Success':\n Session.set(login.SessionTicket, login.Customer);\n return ;\n case 'Failed':\n error = 'Failed';\n break;\n case 'warning':\n error = 'warning';\n break;\n case 'Blocked':\n return ;\n case 'CredentialBlocked':\n error = 'CredentialBlocked';\n break;\n case 'Inactive':\n error = 'Inactive';\n break;\n case 'Incomplete':\n return ;\n default:\n }\n }\n return (\n
    \n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n
    \n
    \n {}\n \n
    \n \n {rememberMeFlag && form.rememberMe.value && !form.username.value ? (\n <>\n

    \n \n {this.state.cachedUserName}\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 {/*

    \n \n

    */}\n {/*
    \n \n \n \n
    */}\n
    \n
    \n
    \n );\n }\n}\n\nCreateLogin.propTypes = {\n createLogin: PropTypes.any,\n login: PropTypes.any,\n referrer: PropTypes.any,\n setReferrer: PropTypes.any,\n userLogout: PropTypes.any,\n toggleRememberMe: PropTypes.func,\n setRememberMeUserName: PropTypes.func,\n isFetching: PropTypes.bool,\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapSharedDispatchToProps,\n },\n)(CreateLogin);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Button, Form, BreadcrumbItem, Breadcrumb, Card } from 'reactstrap';\nimport { Redirect, Link } from 'react-router-dom';\nimport { withRouter } from 'react-router-dom';\nimport { ErrorPanel, CommonError } from '@myie/interact-dom';\nimport { mapDispatchToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps as mapSharedDispatchToProps } from '@myie/interact-shared';\nimport { mapDispatchToProps as ccbAuthenticationDispatch } from '@myie/interact-ccb-authentication';\nimport { Session, Validate, Utility } from '@myie/interact';\nimport { Content, Switch, Text, AppMeta } from '@myie/interact-dom';\n\nclass UpdateLogin extends React.Component {\n constructor(props) {\n super(props);\n if (!props.login) {\n return;\n }\n let contextStr;\n props.login.SignInTicket.Data.CredentialStates.forEach(element => {\n if (element.Name === 'Pin') {\n contextStr = element.Context.replace(/'/g, '\"');\n }\n });\n if (!contextStr) {\n this.props.history.push('/error');\n }\n\n const context = JSON.parse(contextStr);\n const pin = context.Positions;\n this.state = {\n numberStatus: '',\n count: 0,\n form: {\n pin: [\n {\n value: '',\n state: {},\n rules: {\n stop: true,\n title: `Position ${pin[0] + 1}`,\n required: {\n message: 'Please enter the 3 digits requested above',\n template: {\n position: pin[0] + 1,\n },\n },\n format: {\n regex: /^[0-9]{1}$/,\n message: 'Please enter a valid memorable number',\n template: {\n position: pin[0] + 1,\n },\n },\n },\n },\n {\n value: '',\n state: {},\n rules: {\n title: `Position ${pin[1] + 1}`,\n stop: true,\n required: {\n message: 'Please enter the 3 digits requested above',\n template: {\n position: pin[1] + 1,\n },\n },\n format: {\n regex: /^[0-9]{1}$/,\n message: 'Please enter a valid memorable number',\n template: {\n position: pin[1] + 1,\n },\n },\n },\n },\n\n {\n value: '',\n state: {},\n rules: {\n title: `Position ${pin[2] + 1}`,\n stop: true,\n required: {\n message: 'Please enter the 3 digits requested above',\n template: {\n position: pin[2] + 1,\n },\n },\n format: {\n regex: /^[0-9]{1}$/,\n message: 'Please enter a valid memorable number',\n template: {\n position: pin[2] + 1,\n },\n },\n },\n },\n ],\n },\n };\n }\n\n static getDerivedStateFromProps = (nextProps, prevState) => {\n const {\n login,\n setupcredentialsActivate,\n credentialsActivate,\n isFetching,\n } = nextProps;\n if (credentialsActivate && credentialsActivate.Status === 'Success') {\n Session.set(\n credentialsActivate.SessionTicket,\n credentialsActivate.Customer,\n );\n return {\n numberStatus: 'ActivationSuccess',\n };\n }\n if (login) {\n if (\n login.Status === 'RequireActivation' &&\n !isFetching &&\n !prevState.activationSent\n ) {\n if (login.RequireActivationTicket) {\n setupcredentialsActivate({\n RequireActivationTicket:\n login && login.RequireActivationTicket\n ? login.RequireActivationTicket\n : '',\n });\n return {\n activationSent: true,\n };\n }\n }\n if (prevState.count === 3 && login.Status === 'Failed') {\n return {\n numberStatus: 'warning',\n };\n }\n if (login.Status !== 'Failed') {\n return {\n numberStatus: login.Status,\n count: 0,\n };\n }\n if (prevState.count === 3 && prevState.numberStatus === 'warning') {\n return null;\n }\n return {\n numberStatus: login.Status,\n };\n }\n return null;\n };\n\n componentDidMount = () => {\n this.props.timeout.startTimer();\n };\n\n componentWillUnmount = () => {\n this.props.timeout.clearTimer();\n };\n\n numberSuffix = number => {\n switch (number % 10) {\n case 1:\n return 'st';\n case 2:\n return 'nd';\n case 3:\n return 'rd';\n default:\n return 'th';\n }\n };\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n submit = e => {\n e.preventDefault();\n const { updateLogin, login } = this.props;\n var { form, count } = this.state;\n let countValue = count;\n form = Validate.form(form);\n if (form.approved) {\n countValue = count + 1;\n }\n this.setState({ ...this.state, form, count: countValue });\n if (!form.approved) {\n return;\n }\n const request = {\n Ticket: login.SignInTicket,\n CredentialValues: [\n {\n Name: 'Pin',\n Value: form.pin[0].value + form.pin[1].value + form.pin[2].value,\n Context: null,\n },\n ],\n ExtendedProperties: null,\n };\n updateLogin(request);\n };\n\n render() {\n const { rememberme, remembermeUsername, credentialsActivate } = this.props;\n if (!this.props.login) {\n return ;\n }\n const { numberStatus, activationSent } = this.state;\n var pin = [];\n var error;\n const login = this.props.login;\n if (login) {\n switch (numberStatus) {\n case 'Success':\n if (rememberme) {\n localStorage.setItem(\n 'rememberMe',\n Utility.hexEncode(remembermeUsername),\n );\n } else {\n localStorage.removeItem('rememberMe');\n }\n Session.set(login.SessionTicket, login.Customer);\n return ;\n case 'ActivationSuccess': {\n if (rememberme) {\n localStorage.setItem(\n 'rememberMe',\n Utility.hexEncode(remembermeUsername),\n );\n } else {\n localStorage.removeItem('rememberMe');\n }\n Session.set(\n credentialsActivate.SessionTicket,\n credentialsActivate.Customer,\n );\n\n if (localStorage.getItem('firstLogin'))\n return ;\n\n if (activationSent) {\n localStorage.setItem('firstLogin', true);\n return ;\n }\n return ;\n }\n case 'Failed':\n error = 'Failed';\n break;\n case 'Blocked':\n return ;\n case 'CredentialBlocked':\n error = 'CredentialBlocked';\n break;\n case 'warning':\n error = 'warning';\n break;\n case 'Incomplete':\n error = null;\n break;\n case 'RequireActivation':\n error = null;\n break;\n case 'InvalidTicket':\n return ;\n default:\n error = 'UnknownStatus';\n }\n }\n\n let contextStr;\n login.SignInTicket.Data.CredentialStates.forEach(element => {\n if (element.Name === 'Pin') {\n contextStr = element.Context.replace(/'/g, '\"');\n }\n });\n if (!contextStr) {\n return ;\n }\n const context = JSON.parse(contextStr);\n pin = context.Positions;\n\n let ErrorListHandler = [];\n ErrorListHandler.push(this.state.form.pin[0]);\n ErrorListHandler.push(this.state.form.pin[1]);\n ErrorListHandler.push(this.state.form.pin[2]);\n\n const errorOrder = CommonError(ErrorListHandler);\n\n return (\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 \n

    \n \n \n \n

    \n
    \n {errorOrder.showError ? (\n \n ) : (\n ''\n )}\n
    \n
    \n
    \n {error === 'CredentialBlocked' ? (\n \n \n \n ) : (\n \n \n \n )}\n
    \n
    \n
    \n
    \n );\n }\n}\n\nUpdateLogin.propTypes = {\n history: PropTypes.any,\n login: PropTypes.any,\n referrer: PropTypes.any,\n timeout: PropTypes.any,\n updateLogin: PropTypes.any,\n rememberme: PropTypes.bool,\n remembermeUsername: PropTypes.string,\n isFetching: PropTypes.bool,\n credentialsActivate: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { authenticationDefinition, customccbAuthenticationDefinition } = state;\n return {\n ...authenticationDefinition,\n ...customccbAuthenticationDefinition,\n };\n};\n\nexport default withRouter(\n connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapSharedDispatchToProps,\n ...ccbAuthenticationDispatch,\n },\n )(UpdateLogin),\n);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, ContactNumber } from '@myie/interact-dom';\n\nclass Blocked extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\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\nBlocked.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Blocked);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Redirect, Route, Switch } from 'react-router-dom';\nimport { TimeOut } from '@myie/interact-dom';\n\nimport Create from './Create';\nimport Update from './Update';\nimport Blocked from './Blocked';\n\nimport { NoMatch } from '@myie/interact-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-authentication';\nimport { mapDispatchToProps as mapDispatchToProps_shared } from '@myie/interact-shared';\nimport { Alert } from 'reactstrap';\n\nclass SignIn extends React.Component {\n constructor(props) {\n super(props);\n this.state = { rememberme: false, username: null };\n }\n\n componentDidMount() {\n const { setReferrer, location } = this.props;\n const { from } = location.state || { from: { pathname: '/accounts' } };\n setReferrer(from);\n }\n\n toggleRememberMe = value => {\n this.setState({ ...this.state, rememberme: !!value });\n };\n\n setRememberMeUserName = username => {\n this.setState({ ...this.state, username });\n };\n\n timeoutReset = () => {\n window.sessionStorage.setItem('timeoutMessage', 'TimeoutReset');\n };\n\n timeoutObj = {\n history: this.props.history,\n userLogout: this.props.userLogout,\n message: 'SignInTimeout',\n url: '/sign-in',\n onTimeout: this.timeoutReset,\n showTimeoutModal: this.props.showTimeoutModal,\n type: 'LOG_IN',\n };\n\n timeout = new TimeOut(this.timeoutObj);\n\n render() {\n const { error } = this.props;\n const { rememberme, username } = this.state;\n var re = new RegExp('^/sign-in[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n return (\n <>\n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n (\n \n )}\n />\n (\n \n )}\n />\n \n \n \n \n );\n }\n}\n\nSignIn.propTypes = {\n error: PropTypes.any,\n history: PropTypes.any,\n location: PropTypes.any,\n setReferrer: PropTypes.any,\n showTimeoutModal: PropTypes.any,\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapDispatchToProps_shared,\n },\n)(SignIn);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Button, Form, Row, Col, Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapDispatchToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps as mapDispatchToProps_shared } from '@myie/interact-shared';\nimport { mapDispatchToProps as ccbAuthenticationDispatch } from '@myie/interact-ccb-authentication';\nimport { Text, Content, Switch, AppMeta } from '@myie/interact-dom';\nimport { Validate } from '@myie/interact';\n\nclass SecurityDetails extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: {\n password: {\n rules: {\n title: 'password',\n stop: true,\n required: {\n message: '\tPlease enter your password',\n },\n format: {\n regex: /^(?=(.*[a-z]){1,})(?=(.*[A-Z]){1,})(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s$).{10,50}$/,\n message: 'Please enter a valid password',\n },\n },\n },\n confirmPassword: {\n rules: {\n title: 'confirm password',\n stop: true,\n required: {\n message: 'Please confirm your password',\n },\n format: {\n regex: /^(?=(.*[a-z]){1,})(?=(.*[A-Z]){1,})(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s$).{10,50}$/,\n message: 'Please enter a valid value for Confirm your password',\n },\n compare: {\n message:\n 'Your passwords do not match. Please check and try again.',\n\n field: 'password',\n comparison: () => {\n return this.state.form.password.value;\n },\n },\n },\n },\n memorableNumber: {\n rules: {\n title: 'memorable number',\n stop: true,\n required: {\n message: 'Please enter your memorable number',\n },\n format: {\n regex: /^[0-9]{6}$/,\n message: 'Please enter a valid memorable number',\n },\n },\n },\n confirmMemorableNumber: {\n rules: {\n title: 'confirm memorable number',\n stop: true,\n required: {\n message: 'Please confirm your memorable number',\n },\n format: {\n regex: /^[0-9]{6}$/,\n message: 'Please enter a valid memorable number',\n },\n compare: {\n message: 'Please ensure the memorable number fields match',\n field: 'memorableNumber',\n comparison: () => {\n return this.state.form.memorableNumber.value;\n },\n },\n },\n },\n },\n };\n }\n\n componentDidMount = () => {\n this.props.timeout.startTimer();\n };\n\n componentWillUnmount = () => {\n this.props.timeout.clearTimer();\n };\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n submit = e => {\n e.preventDefault();\n var { form } = this.state;\n const { updateForgotten, setupCredentialsActivate } = this.props;\n form = Validate.form(form);\n this.setState({ ...this.state, form });\n if (!form.approved) {\n return;\n }\n let birthDay = this.props.dob;\n\n const request = {\n Ticket: setupCredentialsActivate.ResetUserCredentialsTicket,\n CredentialValues: [\n {\n Name: 'Password',\n Value: form.password.value,\n Context: '',\n },\n {\n Name: 'Pin',\n Value: form.memorableNumber.value,\n Context: '',\n },\n ],\n TermsAndConditionsDocumentVersion: '1.0',\n ExtendedProperties: {\n IdentityRequest: {\n DateOfBirth: birthDay,\n },\n },\n };\n updateForgotten(request);\n };\n\n getErrors() {\n const { updateForgottenDetails = {} } = this.props;\n let errors = [];\n if (\n updateForgottenDetails.ExtendedProperties &&\n updateForgottenDetails.ExtendedProperties.IdentityResponse &&\n updateForgottenDetails.ExtendedProperties.IdentityResponse\n .CredentialErrors\n ) {\n updateForgottenDetails.ExtendedProperties.IdentityResponse.CredentialErrors.forEach(\n element => {\n switch (element) {\n case 'Dob':\n return errors.push(\n \n \n ,\n );\n case 'AllSame':\n return errors.push(\n \n \n ,\n );\n case 'Sequential':\n return errors.push(\n \n \n ,\n );\n case 'Known':\n return errors.push(\n \n \n ,\n );\n case 'Username':\n return errors.push(\n \n \n ,\n );\n default:\n }\n },\n );\n }\n\n return errors;\n }\n\n buildErrorMsg = updateForgottenDetails => {\n var errorsExist = false;\n var errorMsg = [];\n\n if (updateForgottenDetails.Status === 'InvalidCredentials') {\n errorMsg = this.getErrors();\n errorsExist = true;\n } else {\n if (\n updateForgottenDetails &&\n updateForgottenDetails.Status &&\n updateForgottenDetails.Status !== ''\n ) {\n errorsExist = true;\n }\n errorMsg = (\n {\n return this.state.form.username.value;\n },\n random: () => {\n return Math.floor(Math.random() * (9999 - 1000)) + 1000;\n },\n },\n }}\n contents={{\n UsernameAlreadyExists: {\n defaultValue:\n 'The username you specified is already in use. try something like $[name]$[random]',\n },\n\n NotEnoughCredentials: {\n defaultValue: 'Not enough credentials were submitted',\n },\n InvalidUsername: {\n defaultValue:\n 'Your username must be between 6 and 23 characters.',\n },\n }}\n />\n );\n }\n\n return { errorMsg: errorMsg, errorsExist: errorsExist };\n };\n\n render() {\n const { updateForgottenDetails = {} } = this.props;\n const { form } = this.state;\n var errorMsgObj = this.buildErrorMsg(updateForgottenDetails);\n return (\n <>\n \n

    \n \n

    \n \n {' '}\n {errorMsgObj.errorMsg}\n \n \n \n \n \n \n {errorMsgObj.errorsExist ? (\n \n \n \n ) : (\n ''\n )}\n
    \n \n \n \n \n \n \n
    \n \n
    \n \n \n );\n }\n}\n\nSecurityDetails.propTypes = {\n updateForgottenDetails: PropTypes.object,\n updateForgotten: PropTypes.any,\n timeout: PropTypes.any,\n setupCredentialsActivate: PropTypes.any,\n formData: PropTypes.any,\n dob: PropTypes.string,\n};\n\nconst mapStateToProps = state => {\n const { authenticationDefinition, customccbAuthenticationDefinition } = state;\n return {\n ...authenticationDefinition,\n ...customccbAuthenticationDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapDispatchToProps_shared,\n ...ccbAuthenticationDispatch,\n },\n)(SecurityDetails);\n","const preserveData = (function() {\n var formData = {};\n\n const setFormData = s => {\n formData = s;\n };\n\n const getFormData = () => {\n return formData;\n };\n\n return {\n setFormData: setFormData,\n getFormData: getFormData,\n };\n})();\n\nexport default preserveData;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Breadcrumb, BreadcrumbItem } from 'reactstrap';\nimport { mapDispatchToProps as mapDispatchToProps_shared } from '@myie/interact-shared';\nimport { mapDispatchToProps as ccbAuthenticationDispatch } from '@myie/interact-ccb-authentication';\nimport { mapDispatchToProps as authenticationDispatch } from '@myie/interact-authentication';\nimport { Redirect } from 'react-router-dom';\nimport PersonalDetails from '../shared/PersonalDetails';\nimport SecurityDetails from './SecurityDetails';\nimport { Session } from '@myie/interact';\nimport { ContactNumber } from '@myie/interact-dom';\nimport preserveData from './preserveData';\nimport {\n TimeOut,\n Switch,\n Content,\n Markdown,\n AppMeta,\n} from '@myie/interact-dom';\n\nclass Retrieve extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n stage: 'PersonalDetails',\n message: null,\n data: {},\n keyCount: 1,\n };\n }\n\n // these response status force the form to be reset and switched back to the first page\n static getDerivedStateFromProps = (prevProps, nextState) => {\n const {\n resetForgottenPassword,\n setupCredentials,\n setupCredentialsActivate,\n forgottenPasswordDetails = {},\n updateForgottenDetails = {},\n } = prevProps;\n\n // If personal details step - Success\n if (\n setupCredentialsActivate &&\n setupCredentialsActivate.Status === 'Success'\n ) {\n return {\n stage: 'Security', //Go to next step - Security\n message: null,\n data: {}, // Security details step does not require previous data\n };\n }\n\n // If personal details step - RequireActivation\n if (forgottenPasswordDetails.Status === 'RequireActivation') {\n // personal data\n preserveData.setFormData(nextState.data);\n const request = {\n RequireActivationTicket:\n forgottenPasswordDetails.RequireActivationTicket,\n ExtendedProperties: null,\n };\n setupCredentials(request);\n return null;\n }\n\n if (forgottenPasswordDetails.Status === 'NotRegistered') {\n resetForgottenPassword();\n return {\n data: {},\n stage: 'PersonalDetails',\n message: 'NotRegistered',\n };\n }\n\n if (forgottenPasswordDetails.Status === 'IdentifyAndVerifyFailed') {\n resetForgottenPassword();\n return {\n stage: 'PersonalDetails',\n message: 'IdentifyAndVerifyFailed',\n };\n }\n\n if (updateForgottenDetails.Status === 'InvalidTicket') {\n resetForgottenPassword();\n return {\n data: {},\n stage: 'PersonalDetails',\n message: 'InvalidTicket',\n };\n }\n\n // If ticket invalid\n if (\n setupCredentialsActivate &&\n setupCredentialsActivate.Status === 'InvalidTicket'\n ) {\n return {\n stage: 'PersonalDetails',\n message: 'InvalidTicket',\n };\n }\n\n // If ticket invalid\n if (\n setupCredentialsActivate &&\n setupCredentialsActivate.Status === 'IdentifyAndVerifyFailed'\n ) {\n return {\n stage: 'PersonalDetails',\n message: 'IdentifyAndVerifyFailed',\n };\n }\n\n return null;\n };\n\n // save the data for the request from several forms\n saveData = (name, value) => {\n const { data } = this.state;\n data[name] = value;\n this.setState({ ...this.state, data, message: null });\n };\n\n // change the stage of the form\n setStage = stage => {\n this.setState({ ...this.state, stage, message: null });\n };\n\n timeoutReset = () => {\n this.setState({\n ...this.state,\n data: {},\n stage: 'PersonalDetails',\n message: 'Timeout',\n });\n };\n\n timeoutObj = {\n history: this.props.history,\n userLogout: this.props.userLogout,\n message: 'ForgottenPasswordTimeout',\n url: '/forgotten-password',\n onTimeout: this.timeoutReset,\n showTimeoutModal: this.props.showTimeoutModal,\n type: 'FORGOT_CREDENTIALS',\n };\n\n timeout = new TimeOut(this.timeoutObj);\n\n // verify the identification and verfication entries\n verify = () => {\n const { data } = this.state;\n const { resetForgotten } = this.props;\n\n // personal data\n const request = {\n Entries: [\n {\n Type: 'firstName',\n Value: data.firstname,\n },\n {\n Type: 'lastName',\n Value: data.lastname,\n },\n {\n Type: 'dateOfBirth',\n Value: data.b_day,\n },\n {\n Type: 'postCode',\n Value: data.postcode,\n },\n {\n Type: 'accountNumber',\n Value: data.account_number,\n },\n ],\n ExtendedProperties: null,\n };\n\n var nextKeyCount = this.state.keyCount + 1;\n this.setState({\n data: {},\n dob: data.b_day,\n keyCount: nextKeyCount,\n });\n resetForgotten(request);\n };\n\n // select current stage\n currentStage = () => {\n switch (this.state.stage) {\n case 'PersonalDetails':\n return (\n \n );\n case 'Security':\n return (\n \n );\n default:\n }\n };\n\n render() {\n const {\n forgottenPasswordDetails = {},\n updateForgottenDetails = {},\n } = this.props;\n if (Session.isAuthenticated()) {\n Session.abandon(null);\n }\n const isNonSignatoryUser = forgottenPasswordDetails?.ExtendedProperties?.IdentityResponse?.CredentialErrors?.includes(\n 'NonSignatory',\n );\n if (isNonSignatoryUser) {\n return ;\n }\n\n switch (updateForgottenDetails.Status) {\n case 'Success':\n Session.set(\n updateForgottenDetails.SessionTicket,\n updateForgottenDetails.Customer,\n );\n return ;\n case 'Blocked':\n return ;\n default:\n }\n\n switch (forgottenPasswordDetails.Status) {\n case 'Blocked':\n return ;\n default:\n }\n\n const { message } = this.state;\n\n return (\n
    \n \n\n {this.state.stage === 'PersonalDetails' ? (\n

    \n \n

    \n ) : (\n ''\n )}\n {this.state.stage === 'Security' ? (\n

    \n \n

    \n ) : (\n ''\n )}\n
    \n \n \n \n \n \n \n \n \n
    \n
    \n \n {this.state.stage === 'PersonalDetails' ? (\n <>\n \n

    \n \n \n \n

    \n \n ) : (\n ''\n )}\n {this.currentStage()}\n
    \n );\n }\n}\nRetrieve.propTypes = {\n forgottenPasswordDetails: PropTypes.object,\n history: PropTypes.any,\n resetForgotten: PropTypes.any,\n showTimeoutModal: PropTypes.any,\n updateForgottenDetails: PropTypes.object,\n userLogout: PropTypes.any,\n setupCredentialsActivate: PropTypes.any,\n isFetching: PropTypes.bool,\n};\n\nconst mapStateToProps = state => {\n const { authenticationDefinition, customccbAuthenticationDefinition } = state;\n return {\n ...authenticationDefinition,\n ...customccbAuthenticationDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps_shared,\n ...ccbAuthenticationDispatch,\n ...authenticationDispatch,\n },\n)(Retrieve);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, ContactNumber } from '@myie/interact-dom';\n\nclass Blocked extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\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\nBlocked.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Blocked);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\n\nclass Success extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\n
    \n

    \n \n

    \n\n

    \n \n

    \n\n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nSuccess.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Success);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Redirect, Route, Switch, withRouter } from 'react-router-dom';\n\nimport Register from './Retrieve';\nimport Blocked from './Blocked';\nimport Success from './Success';\n\nimport { NoMatch } from '@myie/interact-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-authentication';\nimport { Alert } from 'reactstrap';\n\nclass ForgottenPassword extends React.Component {\n componentDidMount() {\n const { setReferrer, location } = this.props;\n const { from } = location.state || {\n from: {\n pathname: '/accounts',\n },\n };\n setReferrer(from);\n }\n\n render() {\n const { error } = this.props;\n var re = new RegExp('^/forgotten-password[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n return (\n
    \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n \n \n \n \n \n
    \n );\n }\n}\n\nForgottenPassword.propTypes = {\n error: PropTypes.any,\n location: PropTypes.any,\n setReferrer: PropTypes.any,\n};\n\nexport default withRouter(\n connect(\n mapStateToProps,\n mapDispatchToProps,\n )(ForgottenPassword),\n);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Alert, Button, Form, Row, Col } from 'reactstrap';\nimport { Link, Redirect } from 'react-router-dom';\nimport {\n mapDispatchToProps,\n mapStateToProps,\n} from '@myie/interact-authentication';\n// Add additional CCB reducer function for clearing error state on dismount\nimport { mapDispatchToProps as ccbUpdateDispatch } from '@myie/interact-ccb-authentication';\nimport { Text, Switch, Content, Markdown, AppMeta } from '@myie/interact-dom';\nimport { Validate, Session } from '@myie/interact';\n\nclass UpdateSecurityDetails extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n message: null,\n submitForm: {},\n form: {\n username: {\n rules: {\n title: 'username',\n stop: true,\n range: {\n min: 6,\n max: 23,\n message:\n 'Your username must be at least 6 characters, and no more than 23 characters',\n },\n format: {\n regex: /^[^\\s$&+,/:;=?%#<>{}^~[\\]`\\\\]{6,23}$/,\n message:\n 'Your username contains one or more of these invalid symbols $&+,/:;=?%#<>{}^~[]` or spaces. Please remove them and try again',\n },\n },\n },\n password: {\n rules: {\n title: 'password',\n stop: true,\n format: {\n regex: /^(?=(.*[a-z]){1,})(?=(.*[A-Z]){1,})(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s$).{10,50}$/,\n message: 'Please enter valid a password',\n },\n },\n },\n confirmPassword: {\n rules: {\n title: 'confirm password',\n stop: true,\n format: {\n regex: /^(?=(.*[a-z]){1,})(?=(.*[A-Z]){1,})(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s$).{10,50}$/,\n message: 'Please enter valid a password',\n },\n compare: {\n message:\n 'Your passwords do not match. Please check and try again.',\n field: 'password',\n comparison: () => {\n return this.state.form.password.value;\n },\n },\n },\n },\n memorableNumber: {\n rules: {\n title: 'memorable number',\n stop: true,\n required: {\n message: 'Please enter your memorable number',\n },\n format: {\n regex: /^[0-9]{6}$/,\n message: 'Please enter a valid memorable number',\n },\n },\n },\n confirmMemorableNumber: {\n rules: {\n title: 'confirm memorable number',\n stop: true,\n required: {\n message: 'Please confirm your memorable number',\n },\n format: {\n regex: /^[0-9]{6}$/,\n message: 'Please enter a valid memorable number',\n },\n compare: {\n message: 'Please ensure the memorable number fields match',\n field: 'memorableNumber',\n comparison: () => {\n return this.state.form.memorableNumber.value;\n },\n },\n },\n },\n },\n };\n }\n\n onChange = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n if (form[name]) {\n form = Validate.input(name, value, form);\n }\n this.setState({\n ...this.state,\n form,\n });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n if (form[name] && e.target.value) {\n form = Validate.input(name, value, form, true);\n }\n this.setState({\n ...this.state,\n form,\n });\n };\n\n submit = e => {\n e.preventDefault();\n const { updateCredentials } = this.props;\n let { form, message = {}, submitForm = {} } = this.state;\n let {\n username,\n password,\n confirmPassword,\n memorableNumber,\n confirmMemorableNumber,\n } = form;\n if (form.username.value) {\n const usernameRules = { username };\n submitForm = { ...submitForm, ...usernameRules };\n } else {\n delete submitForm.username;\n }\n\n if (form.password.value) {\n const passwordRules = { password };\n const confirmPasswordRules = { confirmPassword };\n submitForm = { ...submitForm, ...passwordRules, ...confirmPasswordRules };\n form = Validate.input('password', form.password.value, form, true);\n form = Validate.input(\n 'confirmPassword',\n form.confirmPassword.value,\n form,\n true,\n );\n } else {\n delete submitForm.password;\n delete submitForm.confirmPassword;\n }\n\n if (form.memorableNumber.value) {\n const memorableNumberRules = { memorableNumber };\n const confirmMemorableNumberRules = {\n confirmMemorableNumber,\n };\n submitForm = {\n ...submitForm,\n ...memorableNumberRules,\n ...confirmMemorableNumberRules,\n };\n form = Validate.input(\n 'memorableNumber',\n form.memorableNumber.value,\n form,\n true,\n );\n form = Validate.input(\n 'confirmMemorableNumber',\n form.confirmMemorableNumber.value,\n form,\n true,\n );\n } else {\n delete submitForm.memorableNumber;\n delete submitForm.confirmMemorableNumber;\n }\n\n if (Object.keys(submitForm).length === 0) {\n message = 'MustHaveCredential';\n this.setState({\n ...this.state,\n form,\n submitForm,\n message,\n });\n return;\n } else {\n message = null;\n }\n submitForm = Validate.form(submitForm);\n if (!submitForm.approved) {\n this.setState({\n ...this.state,\n form,\n submitForm,\n message,\n });\n return;\n }\n\n const request = {\n Username: form.username.value,\n CredentialValues: [],\n ExtendedProperties: null,\n };\n\n if (form.password.value) {\n request.CredentialValues.push({\n Name: 'Password',\n Value: form.password.value,\n Context: 'string',\n });\n }\n\n if (form.memorableNumber.value) {\n request.CredentialValues.push({\n Name: 'Pin',\n Value: form.memorableNumber.value,\n Context: 'string',\n });\n }\n\n updateCredentials(request);\n this.setState({\n ...this.state,\n form,\n submitForm,\n message,\n });\n };\n\n componentWillUnmount = () => {\n // Call CCB reducer function to clear error in redux store\n this.props.updateSecurityDetailsReceive({});\n };\n\n getErrors = () => {\n const { updateSecurityDetails = {} } = this.props;\n let errors = [];\n let fieldErrors = {};\n if (\n updateSecurityDetails &&\n updateSecurityDetails.ExtendedProperties &&\n updateSecurityDetails.ExtendedProperties.IdentityResponse &&\n updateSecurityDetails.ExtendedProperties.IdentityResponse.CredentialErrors\n ) {\n updateSecurityDetails.ExtendedProperties.IdentityResponse.CredentialErrors.forEach(\n element => {\n switch (element) {\n case 'Dob':\n fieldErrors.memorableNumber = element;\n return errors.push(\n \n \n ,\n );\n case 'AllSame':\n fieldErrors.memorableNumber = element;\n return errors.push(\n \n \n ,\n );\n case 'Sequential':\n fieldErrors.memorableNumber = element;\n return errors.push(\n \n \n ,\n );\n case 'Known':\n fieldErrors.password = element;\n return errors.push(\n \n \n ,\n );\n case 'Username':\n fieldErrors.password = element;\n return errors.push(\n \n \n ,\n );\n default:\n }\n },\n );\n }\n\n return {\n errorMsg: errors,\n fieldErrors: fieldErrors,\n };\n };\n\n buildErrorMsg = updateSecurityDetails => {\n var errorsExist = false;\n var errorMsg = [];\n\n if (\n updateSecurityDetails &&\n updateSecurityDetails.Status === 'InvalidCredentials'\n ) {\n errorMsg = this.getErrors().errorMsg;\n errorsExist = true;\n } else {\n if (\n updateSecurityDetails &&\n updateSecurityDetails.Status &&\n updateSecurityDetails.Status !== '' &&\n updateSecurityDetails.Status !== 'Success'\n ) {\n errorsExist = true;\n\n errorMsg = (\n \n );\n }\n }\n\n return { errorMsg: errorMsg, errorsExist: errorsExist };\n };\n\n render() {\n const { updateSecurityDetails } = this.props;\n const retrivedUserName = Session.customer();\n let { form, message } = this.state;\n var errorMsgObj = this.buildErrorMsg(updateSecurityDetails);\n if (updateSecurityDetails) {\n switch (updateSecurityDetails.Status) {\n case 'Success': {\n const customer = Session.customer();\n const ticket = Session.ticket();\n customer.Username = this.state.form.username.value\n ? this.state.form.username.value\n : retrivedUserName.Username;\n Session.set(ticket, customer);\n return ;\n }\n case 'UsernameExists':\n message = 'UsernameExists';\n break;\n case 'NoRegistered':\n message = 'NoRegistered';\n break;\n case 'Blocked':\n message = 'Blocked';\n break;\n case 'NotEnoughCredentials':\n message = 'NotEnoughCredentials';\n break;\n case 'InvalidCredentials':\n message = 'InvalidCredentials';\n break;\n case 'InvalidUsername':\n message = 'InvalidUsername';\n break;\n default:\n }\n }\n\n return (\n
    \n \n

    \n \n

    \n {errorMsgObj.errorMsg}\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 \n {message ? (\n \n \n \n ) : null}\n
    \n \n \n \n \n
    \n \n
    \n );\n }\n}\n\nUpdateSecurityDetails.propTypes = {\n retrivedUserName: PropTypes.object,\n updateCredentials: PropTypes.any,\n updateSecurityDetails: PropTypes.any,\n updateSecurityDetailsReceive: PropTypes.func,\n login: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n // Combine reducer functions\n {\n ...mapDispatchToProps,\n ...ccbUpdateDispatch,\n },\n)(UpdateSecurityDetails);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, Markdown, AppMeta } from '@myie/interact-dom';\n\nclass UpdateSecurityDetailsSuccess extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\n
    \n \n

    \n \n

    \n \n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nUpdateSecurityDetailsSuccess.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(UpdateSecurityDetailsSuccess);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Redirect, Route, Switch } from 'react-router-dom';\nimport { PrivateRoute, NoMatch } from '@myie/interact-dom';\nimport UpdateSecurityDetails from './UpdateSecurityDetails';\nimport UpdateSecurityDetailsSuccess from './UpdateSecurityDetailsSuccess';\nimport { Alert } from 'reactstrap';\n\nclass UpdateSecurityDetailsIndex extends React.Component {\n render() {\n const { error } = this.props;\n var re = new RegExp('^/update-security-details[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n return (\n
    \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n \n \n \n \n
    \n );\n }\n}\n\nUpdateSecurityDetailsIndex.propTypes = {\n error: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n location: PropTypes.any,\n};\n\nexport default UpdateSecurityDetailsIndex;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { Content } from '@myie/interact-dom';\n\nclass OrganisationDetails extends React.Component {\n render() {\n const { organisation } = this.props;\n return (\n <>\n
    \n

    \n \n

    \n \n \n \n \n \n {organisation.CorrespondenceAddress.Street}\n \n \n \n \n \n {organisation.CorrespondenceAddress.District}\n \n \n \n \n \n {organisation.CorrespondenceAddress.Town}\n \n \n \n \n \n {organisation.CorrespondenceAddress.County}\n \n \n \n \n \n {organisation.CorrespondenceAddress.Postcode}\n \n {!organisation.ContactDetails ? (\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n ) : (\n <>\n \n \n \n \n {organisation.ContactDetails.LandlineTelephone}\n \n \n \n \n \n {organisation.ContactDetails.MobileTelephone}\n \n \n \n \n \n {organisation.ContactDetails.Email}\n \n \n )}\n \n

    \n \n

    \n

    \n \n

    \n

    \n \n

    \n\n {!organisation.MarketingPreferences ? (\n

    \n \n

    \n ) : (\n \n \n \n \n \n {organisation.MarketingPreferences.Email ? 'Yes' : 'No'}\n \n \n \n \n \n {organisation.MarketingPreferences.Telephone ? 'Yes' : 'No'}\n \n \n \n \n \n {organisation.MarketingPreferences.Post ? 'Yes' : 'No'}\n \n \n )}\n
    \n
    \n \n );\n }\n}\n\nOrganisationDetails.propTypes = {\n organisation: PropTypes.any,\n};\n\nexport default OrganisationDetails;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-ccb-organisation';\nimport { Markdown, Content } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nimport OrganisationDetails from './OrganisationDetails';\nimport { Session } from '@myie/interact';\n\nclass UpdateOrganisationDetails extends React.Component {\n componentDidMount() {\n const { organisation = { state: 'INIT' } } = this.props;\n\n if (Array.isArray(organisation.codes) && organisation.details.length > 0) {\n return;\n }\n\n const customer = Session.customer();\n const request = {\n PersonId: customer.UserId,\n };\n\n const { organisationfetch } = this.props;\n organisationfetch(request);\n }\n\n componentDidUpdate() {\n const { organisation = { state: 'INIT' } } = this.props;\n if (Array.isArray(organisation.codes)) {\n const { organisationDetailsFetch, isFetching } = this.props;\n let detailsCount = organisation.details.length;\n if (!isFetching && organisation.codes.length > detailsCount) {\n const request = {\n CustomerId: organisation.codes[detailsCount].Id,\n };\n organisationDetailsFetch(request);\n }\n }\n }\n render() {\n const { organisation = { state: 'INIT' } } = this.props;\n let orgs = [];\n if (organisation == null) {\n return null;\n }\n if (organisation?.details) {\n organisation.details.forEach(org => {\n orgs.push(\n ,\n );\n });\n } else {\n return null;\n }\n\n return (\n <>\n

    \n \n

    \n \n

    \n \n

    \n {orgs}\n
    \n \n \n \n
    \n \n );\n }\n}\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(UpdateOrganisationDetails);\n\nUpdateOrganisationDetails.propTypes = {\n account: PropTypes.any,\n loopIndex: PropTypes.any,\n mode: PropTypes.any,\n brandProductType: PropTypes.any,\n organisationfetch: PropTypes.any,\n organisationDetailsFetch: PropTypes.any,\n organisation: PropTypes.any,\n isFetching: PropTypes.bool,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { Content, Markdown, AppMeta } from '@myie/interact-dom';\n\nclass UpdateOrganisationDetailsSuccess extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n userLogout();\n }\n\n render() {\n return (\n
    \n \n

    \n \n

    \n \n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nUpdateOrganisationDetailsSuccess.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(UpdateOrganisationDetailsSuccess);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Redirect, Route, Switch } from 'react-router-dom';\nimport { PrivateRoute, NoMatch } from '@myie/interact-dom';\nimport UpdateOrganisationDetails from './UpdateOrganisationDetails';\nimport UpdateOrganisationDetailsSuccess from './UpdateOrganisationDetailsSuccess';\nimport { Alert } from 'reactstrap';\n\nclass OrganisationDetailsIndex extends React.Component {\n render() {\n const { error } = this.props;\n var re = new RegExp('^/update-organisation-details[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n return (\n
    \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n \n \n \n \n
    \n );\n }\n}\n\nOrganisationDetailsIndex.propTypes = {\n error: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n location: PropTypes.any,\n};\n\nexport default OrganisationDetailsIndex;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps } from '@myie/interact-authentication';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport {\n Switch,\n Content,\n Markdown,\n AppMeta,\n LinkTag,\n} from '@myie/interact-dom';\n\nclass SignedOut extends React.Component {\n componentWillUnmount() {\n const { userLogout } = this.props;\n window.sessionStorage.removeItem('timeoutMessage');\n userLogout();\n }\n\n constructor(props) {\n super(props);\n let signoutMessage = window.sessionStorage.getItem('timeoutMessage');\n let error;\n if (signoutMessage) {\n error = signoutMessage;\n }\n this.state = { error: error };\n }\n\n render() {\n const { error } = this.state;\n return (\n
    \n \n

    \n \n

    \n \n\n \n\n
    \n \n \n \n \n \n \n
    \n
    \n );\n }\n}\n\nSignedOut.propTypes = {\n userLogout: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(SignedOut);\n","import React from 'react';\nimport { Route } from 'react-router-dom';\nimport Registration from './registration';\nimport SignIn from './sign-in';\nimport ForgottenUsername from './forgotten-username';\nimport ForgottenPassword from './forgotten-password';\nimport UpdateSecurityDetailsIndex from './update-security-details/';\nimport UpdateOrganisationDetails from './update-organisation-details/';\nimport SignedOut from './signed-out/SignedOut';\n\nconst Routes = [\n ,\n ,\n ,\n ,\n ,\n ,\n\n ,\n];\n\nexport default Routes;\n","import Registration from './registration';\nimport ForgottenUsername from './forgotten-username';\nimport AuthenticationSidebars from './Sidebars';\nimport AuthenticationServiceItems from './ServiceItems';\nimport SignIn from './sign-in';\nimport Routes from './Routes';\n\nexport {\n Registration,\n ForgottenUsername,\n SignIn,\n Routes,\n AuthenticationSidebars,\n AuthenticationServiceItems,\n};\n","const messagingUtility = (function() {\n const stripEndQuotes = s => {\n // var t = s.length;\n // if (s.charAt(0) == '\"') s = s.substring(1, t--);\n // if (s.charAt(--t) == '\"') s = s.substring(0, t);\n return s;\n };\n\n return {\n stripEndQuotes: stripEndQuotes,\n };\n})();\n\nexport default messagingUtility;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport { Row, Col } from 'reactstrap';\nimport { Utility } from '@myie/interact';\nimport {\n FormattedDate,\n Pagination,\n Content,\n AppMeta,\n} from '@myie/interact-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport moment from 'moment';\nimport messagingUtility from './../utility';\n\nclass View extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n Offset: 0,\n Size: 8,\n };\n this.getMessages(this.state.Offset, this.state.Size);\n }\n\n getMessages = (Offset, Size) => {\n const request = {\n Offset: Offset,\n Size: Size,\n // Page: 0,\n ExtendedProperties: {},\n };\n\n this.props.fetchAllMessagesIfNeeded(request);\n };\n\n render() {\n const { allMessages } = this.props;\n const { Offset, Size } = this.state;\n\n if (allMessages) {\n const messageList = allMessages.Conversations.sort(\n (a, b) => moment(b.LastModifiedDate) - moment(a.LastModifiedDate),\n );\n\n return (\n
    \n \n \n \n

    \n \n

    \n \n \n \n \n \n \n
    \n
    \n {messageList.map(Conversation => (\n \n \n {messagingUtility.stripEndQuotes(Conversation.Reason)}\n \n \n \n \n \n ))}\n
    \n \n
    \n );\n } else {\n return (\n

    \n \n

    \n );\n }\n }\n\n getPreviousPage = (Offset, Size) => {\n const previousOffset = Offset - Size;\n if (previousOffset >= 0) {\n this.setState({ ...this.state, Offset: previousOffset });\n this.getMessages(previousOffset, Size);\n }\n };\n\n getNextPage = (Offset, Size, TotalConversationsCount) => {\n const nextOffset = Offset + Size;\n if (nextOffset <= TotalConversationsCount) {\n this.setState({ ...this.state, Offset: nextOffset });\n this.getMessages(nextOffset, Size);\n }\n };\n}\n\nView.propTypes = {\n allMessages: PropTypes.object,\n fetchAllMessagesIfNeeded: PropTypes.func,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(View);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Form, Row, Col, Button } from 'reactstrap';\nimport { Validate } from '@myie/interact';\nimport { Link } from 'react-router-dom';\nimport { DropDown, Text, TextArea, Content, AppMeta } from '@myie/interact-dom';\nimport Currency from 'react-currency-formatter';\n\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\n\nclass SendNewMessage extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: {\n relatedAccount: {\n rules: {},\n },\n subject: {\n rules: {\n format: {\n regex: /^.{0,100}$/,\n message: 'Please enter a valid subject',\n },\n },\n },\n message: {\n rules: {\n stop: true,\n required: {\n message: 'Please enter a message',\n },\n format: {\n regex: /^[^\\s](.|[\\r\\n]){1,750}$/,\n message: 'Please enter a valid message',\n },\n },\n },\n },\n disabled: false,\n };\n }\n\n accountOptions = (prefix, item, id) => {\n var name = item.AccountNumber;\n if (item.Balance) {\n name =\n name +\n ': ' +\n Currency({ quantity: item.Balance, currency: item.CurrencyCode });\n }\n if (item.AccountStatus === 'Closed') {\n name = name + ' ';\n }\n return (\n \n {name}\n \n );\n };\n\n submit = e => {\n if (this.state.disabled) {\n return;\n }\n this.setState({ disabled: true });\n e.preventDefault();\n let { form } = this.state;\n const { replyConversation, selectedData, accounts } = this.props;\n\n let messageBody = '';\n\n if (selectedData) {\n messageBody = selectedData.message;\n if (selectedData.relatedAccountObj) {\n let account;\n if (accounts) {\n account = accounts.Accounts.find(function(element) {\n return (\n element.AccountKey.Key ===\n selectedData.relatedAccountObj.AccountKey.Key\n );\n });\n }\n\n messageBody = `Message about account number ${account.AccountNumber} \\n ${selectedData.message}`;\n }\n }\n\n form = Validate.form(form);\n this.setState({ ...this.state, form });\n if (!form.approved) {\n this.setState({ disabled: false });\n return;\n }\n this.setState({ disabled: true });\n let request = {\n AccountKey: selectedData.relatedAccountObj\n ? selectedData.relatedAccountObj.AccountKey\n : null,\n ConversationKey: null,\n MessageBody: messageBody,\n Reason: selectedData.subject ? selectedData.subject : 'General Enquiry',\n ProductType: selectedData.relatedAccountObj\n ? selectedData.relatedAccountObj.ProductType\n : null,\n ExtendedProperties: {},\n };\n replyConversation(request);\n };\n\n onBlur = e => {\n let { form } = this.state;\n const { name, value } = e.target;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n onChangeAccount = e => {\n const { saveData, accounts } = this.props;\n let { form } = this.state;\n const { name, value } = e.target;\n const accountKey = value;\n let source;\n form = Validate.input(name, value, form, true);\n if (accounts) {\n source = accounts.Accounts.find(\n account => account.AccountKey.Key === accountKey,\n );\n }\n saveData(name, value);\n saveData('relatedAccountObj', source);\n this.setState({ ...this.state, form });\n };\n\n onChange = e => {\n const { saveData } = this.props;\n let { form } = this.state;\n const { name, value } = e.target;\n form = Validate.input(name, value, form, true);\n saveData(name, value);\n this.setState({ ...this.state, form });\n };\n\n render() {\n const { accounts, selectedData } = this.props;\n const { form } = this.state;\n let accountList = accounts.Accounts;\n if (selectedData) {\n form.relatedAccount.value = selectedData.relatedAccount;\n form.subject.value = selectedData.subject;\n form.message.value = selectedData.message;\n }\n return (\n <>\n \n
    \n \n \n \n \n {accountList.map((item, index) => {\n return this.accountOptions(\n 'related-account',\n item,\n 'related-account-' + index,\n );\n })}\n \n \n \n \n \n

    \n {\n return (\n 750 -\n (this.state.form.message.value\n ? this.state.form.message.value.length\n : 0)\n );\n },\n },\n }}\n copytext=\"Chars remaining: $[counter]\"\n />\n

    \n
    \n \n \n \n \n \n \n
    \n \n \n );\n }\n}\n\nSendNewMessage.propTypes = {\n accounts: PropTypes.any,\n replyConversation: PropTypes.any,\n saveData: PropTypes.any,\n selectedData: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(SendNewMessage);\n","import React from 'react';\n\nconst FormatBody = body => {\n const lines = body.split('\\n');\n const formattedBody = [];\n lines.forEach((line, index) => {\n formattedBody.push(\n \n {line}\n
    \n
    ,\n );\n });\n return formattedBody;\n};\n\nexport default FormatBody;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { FormattedDate, Content, Switch, AppMeta } from '@myie/interact-dom';\nimport { Row, Col, Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport FormatBody from '../FormatBody';\nimport messagingUtility from './../utility';\n\nclass Confirmation extends React.Component {\n componentWillUnmount = () => {\n const { resetReply } = this.props;\n resetReply();\n };\n\n renderSuccessContent = () => {\n const { replyMessageStatus, selectedData } = this.props;\n return (\n <>\n
    \n {selectedData.relatedAccountObj ? (\n \n \n \n \n \n {replyMessageStatus.Conversation.AccountNumber !==\n 'XXXXXXXXXable' &&\n replyMessageStatus.Conversation.AccountNumber !==\n 'Not available' ? (\n <>\n {replyMessageStatus.Conversation.AccountNumber +\n (selectedData.relatedAccountObj.AccountStatus === 'Closed'\n ? ' '\n : '')}\n \n ) : (\n ''\n )}\n \n \n ) : (\n false\n )}\n \n \n \n \n \n {replyMessageStatus.Conversation.Reference}\n \n \n
    \n
    \n

    \n \n \n \n

    \n

    \n {FormatBody(replyMessageStatus.Conversation.Messages[0].Body)}\n

    \n
    \n
    \n
    \n \n );\n };\n\n render() {\n const { replyMessageStatus } = this.props;\n\n let alertId = null;\n if (replyMessageStatus) {\n switch (replyMessageStatus.ResponseStatus) {\n case 'Success':\n alertId = 'new-message-success';\n break;\n case 'Failed':\n alertId = 'new-message-failure';\n break;\n default:\n alertId = 'new-message-unknown';\n break;\n }\n }\n\n return (\n
    \n \n

    \n {messagingUtility.stripEndQuotes(\n replyMessageStatus.Conversation.Reason,\n )}\n

    \n {replyMessageStatus && (\n \n \"\n value={replyMessageStatus.ResponseStatus}\n defaultText=\"An unknown error occured. Please check your accounts before retrying.\"\n contents={{\n Success: {\n defaultValue:\n 'Your message has been sent. See details below.',\n },\n Failed: {\n defaultValue: 'Your message was not sent. Try again.',\n },\n }}\n />\n \n )}\n {replyMessageStatus.ResponseStatus === 'Success'\n ? this.renderSuccessContent()\n : false}\n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nConfirmation.propTypes = {\n replyMessageStatus: PropTypes.any,\n resetContactOptions: PropTypes.any,\n resetReply: PropTypes.any,\n resetUserDetails: PropTypes.any,\n selectedData: PropTypes.any,\n setStage: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Confirmation);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport SendNewMessage from './SendNewMessage';\nimport Confirmation from './Confirmation';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapDispatchToPropsMessaging } from '@myie/interact-messaging-twoway';\nimport { Content } from '@myie/interact-dom';\nimport { Utility } from '@myie/interact';\nimport { withRouter } from 'react-router-dom';\n\nclass NewMessage extends React.Component {\n constructor(props) {\n super(props);\n const { resetReply } = props;\n this.state = {\n stage: 'New',\n data: {},\n };\n resetReply();\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { replyMessageStatus, match, accounts } = nextProps;\n const { data } = prevState;\n\n if (replyMessageStatus && replyMessageStatus.ResponseStatus) {\n if (prevState.stage === 'Confirmation') {\n return {\n data: {},\n stage: 'New',\n };\n }\n if (\n prevState.stage === 'New' &&\n prevState.data &&\n prevState.data.message\n ) {\n return {\n ...prevState,\n stage: 'Confirmation',\n };\n }\n return {\n ...prevState,\n stage: 'New',\n };\n }\n if (match.params.id && accounts) {\n const account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n\n data['relatedAccount'] = account.AccountKey.Key;\n return {\n ...prevState,\n data: data,\n };\n }\n return null;\n }\n\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n saveData = (name, value) => {\n const { data } = this.state;\n data[name] = value;\n this.setState({ ...this.state, data });\n };\n\n currentStage = (accounts = []) => {\n const { data, stage } = this.state;\n const { replyMessageStatus } = this.props;\n switch (stage) {\n case 'New': {\n return (\n \n );\n }\n case 'Confirmation':\n return (\n \n );\n default:\n }\n };\n\n render() {\n const { accounts } = this.props;\n const { stage } = this.state;\n return (\n <>\n {stage === 'New' ? (\n

    \n \n

    \n ) : (\n ''\n )}\n {accounts ? this.currentStage(accounts) : false}\n \n );\n }\n}\n\nNewMessage.propTypes = {\n accounts: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n replyMessageStatus: PropTypes.any,\n resetReply: PropTypes.any,\n match: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { messagingTwowayDefinition, accountsDefinition } = state;\n return {\n ...messagingTwowayDefinition,\n ...accountsDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToPropsMessaging, ...mapDispatchToPropsAccounts },\n)(withRouter(NewMessage));\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Row, Col, Button } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapDispatchToPropsMessaging } from '@myie/interact-messaging-twoway';\nimport { Utility } from '@myie/interact';\nimport PropTypes from 'prop-types';\nimport { FormattedDate, Value, Content, AppMeta } from '@myie/interact-dom';\nimport FormatBody from '../FormatBody';\n\nclass ViewConversation extends React.Component {\n constructor(props) {\n super(props);\n const {\n match,\n allMessages,\n history,\n viewMessage,\n viewConversation,\n } = this.props;\n let conversation;\n this.state = {\n stage: 'View',\n message: null,\n data: {\n accountTypeField: 'All',\n accountField: 'All',\n },\n };\n if (allMessages) {\n if (!viewMessage) {\n conversation = allMessages.Conversations.find(function(element) {\n if (element) {\n return (\n Utility.hexEncode(element.ConversationKey.Key) === match.params.id\n );\n }\n return false;\n });\n\n let request = {\n ConversationKey: conversation.ConversationKey,\n ProductType: 'string',\n ExtendedProperties: {},\n };\n viewConversation(request);\n }\n } else {\n const newUrl = '/messaging-twoway/view';\n history.push(newUrl);\n }\n }\n\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n return {\n ...prevState,\n allMessages: nextProps.allMessages ? nextProps.allMessages : null,\n };\n }\n\n isConversationClosed = Conversation => {\n let closed = false;\n if (Conversation) {\n if (Conversation.ConversationProperties) {\n let convProperties = Conversation.ConversationProperties;\n convProperties.forEach(convProp => {\n if (convProp.Name === 'Closed') {\n if (convProp.Value === 'True') {\n closed = true;\n }\n }\n });\n }\n }\n return closed;\n };\n\n executeAction = e => {\n const value = e.target.value;\n\n const { history, match } = this.props;\n let newUrl;\n switch (value) {\n case 'Reply':\n newUrl =\n '/messaging-twoway/message/' +\n value.toLowerCase() +\n '/' +\n match.params.id;\n history.push(newUrl);\n break;\n case 'Delete':\n newUrl =\n '/messaging-twoway/message/' +\n value.toLowerCase() +\n '/' +\n match.params.id;\n history.push(newUrl);\n break;\n default:\n }\n };\n // select current stage\n render() {\n const { viewMessage, accounts } = this.props;\n let Conversation;\n let supportActions = [];\n let messages = [];\n let accountSuffix = '';\n if (!viewMessage) {\n return (\n

    \n \n

    \n );\n } else {\n Conversation = viewMessage.Conversation;\n }\n\n if (Conversation && Conversation.Supports) {\n supportActions = Conversation.Supports;\n }\n\n if (Conversation && Conversation.Messages) {\n messages = Conversation.Messages;\n }\n\n if (\n Conversation &&\n Conversation.AccountNumber &&\n accounts &&\n accounts.Accounts &&\n accounts.Accounts.length\n ) {\n let account = accounts.Accounts.find(\n a => a.AccountNumber === Conversation.AccountNumber,\n );\n if (account && account.AccountStatus === 'Closed') {\n accountSuffix = ' ';\n }\n }\n\n return (\n
    \n \n

    \n {messages.length > 1 ? : ''}{' '}\n \n

    \n \n \n \n \n \n {Conversation.AccountNumber !== 'XXXXXXXXXable' &&\n Conversation.AccountNumber !== 'Not available' ? (\n <>{Conversation.AccountNumber + accountSuffix}\n ) : (\n ''\n )}\n \n \n \n \n \n {Conversation.Reference}\n {this.isConversationClosed(Conversation)\n ? ' (Conversation closed)'\n : ''}\n \n \n
    \n {messages.map((item, index) => {\n return (\n
    \n

    \n {item.Sender.SenderType !== 'User'\n ? `${item.Sender.SenderType}`\n : ''}{' '}\n \n \n \n

    \n
    \n {FormatBody(item.Body)}\n
    \n
    \n );\n })}\n
    \n
    \n \n \n \n \n \n \n
    \n
    \n );\n }\n}\n\nViewConversation.propTypes = {\n allMessages: PropTypes.any,\n baseUrl: PropTypes.any,\n fetchAllMessagesIfNeeded: PropTypes.any,\n history: PropTypes.any,\n match: PropTypes.any,\n viewConversation: PropTypes.any,\n viewMessage: PropTypes.any,\n accounts: PropTypes.object,\n fetchAccountsIfNeeded: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { messagingTwowayDefinition, accountsDefinition } = state;\n return {\n ...messagingTwowayDefinition,\n ...accountsDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToPropsMessaging, ...mapDispatchToPropsAccounts },\n)(ViewConversation);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Row, Col, Form, Button } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapDispatchToPropsMessaging } from '@myie/interact-messaging-twoway';\nimport { TextArea, Content } from '@myie/interact-dom';\nimport { Validate } from '@myie/interact';\nimport PropTypes from 'prop-types';\nimport { FormattedDate, AppMeta } from '@myie/interact-dom';\nimport FormatBody from '../../FormatBody';\nimport messagingUtility from './../../utility';\n\nclass ReplyConversation extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n stage: 'View',\n message: null,\n data: {},\n form: {\n message: {\n rules: {\n stop: true,\n required: {\n message: 'Please enter a message',\n },\n format: {\n regex: /^[^\\s](.|[\\r\\n]){1,750}$/,\n message: 'Please enter a valid message',\n },\n },\n },\n },\n };\n }\n\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n onBlur = e => {\n let { form } = this.state;\n const { name, value } = e.target;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n onChange = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n submit = e => {\n e.preventDefault();\n const { replyConversation, viewMessage } = this.props;\n let { form } = this.state;\n form = Validate.form(form);\n this.setState({ ...this.state, form });\n if (!form.approved) {\n return;\n }\n if (viewMessage) {\n const request = {\n AccountKey: viewMessage.Conversation.AccountKey\n ? viewMessage.Conversation.AccountKey\n : null,\n ConversationKey: viewMessage.Conversation.ConversationKey,\n MessageBody: form.message.value,\n ExtendedProperties: {},\n };\n replyConversation(request);\n }\n };\n\n // select current stag\n render() {\n const { viewMessage, accounts } = this.props;\n const { form } = this.state;\n let Conversation,\n accountSuffix = '';\n\n let messages = [];\n if (!viewMessage) {\n return null;\n } else {\n Conversation = viewMessage.Conversation;\n }\n\n if (Conversation && Conversation.Messages) {\n messages = Conversation.Messages;\n }\n\n if (\n Conversation &&\n Conversation.AccountNumber &&\n accounts &&\n accounts.Accounts &&\n accounts.Accounts.length\n ) {\n let account = accounts.Accounts.find(\n a => a.AccountNumber === Conversation.AccountNumber,\n );\n if (account && account.AccountStatus === 'Closed') {\n accountSuffix = ' ';\n }\n }\n\n return (\n
    \n \n

    \n {' '}\n {messagingUtility.stripEndQuotes(Conversation.Reason)}\n

    \n \n \n \n \n \n {Conversation.AccountNumber !== 'XXXXXXXXXable' &&\n Conversation.AccountNumber !== 'Not available' ? (\n <>{Conversation.AccountNumber + accountSuffix}\n ) : (\n ''\n )}\n \n \n \n \n \n {Conversation.Reference}\n \n \n \n \n

    \n {\n return (\n 750 -\n (this.state.form.message.value\n ? this.state.form.message.value.length\n : 0)\n );\n },\n },\n }}\n copytext=\"Chars remaining: $[counter]\"\n />\n

    \n
    \n {messages.map((item, index) => {\n return (\n
    \n

    \n {item.Sender.SenderType !== 'User'\n ? `${item.Sender.SenderType}`\n : ''}{' '}\n \n \n \n

    \n

    {FormatBody(item.Body)}

    \n
    \n );\n })}\n
    \n
    \n \n \n \n \n \n \n
    \n \n
    \n );\n }\n}\n\nReplyConversation.propTypes = {\n accounts: PropTypes.object,\n fetchAccountsIfNeeded: PropTypes.func,\n baseUrl: PropTypes.any,\n history: PropTypes.any,\n match: PropTypes.any,\n replyConversation: PropTypes.any,\n setReplyStage: PropTypes.any,\n viewMessage: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { messagingTwowayDefinition, accountsDefinition } = state;\n return {\n ...messagingTwowayDefinition,\n ...accountsDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToPropsMessaging, ...mapDispatchToPropsAccounts },\n)(ReplyConversation);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapDispatchToPropsMessaging } from '@myie/interact-messaging-twoway';\nimport { FormattedDate, Content, Switch, AppMeta } from '@myie/interact-dom';\nimport FormatBody from '../../FormatBody';\nimport messagingUtility from './../../utility';\nclass ReplyConfirmation extends React.Component {\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n render() {\n const { replyMessageStatus, accounts } = this.props;\n let Conversation,\n accountSuffix = '';\n\n let messages = [];\n if (!replyMessageStatus) {\n return null;\n } else {\n Conversation = replyMessageStatus.Conversation;\n }\n\n if (Conversation && Conversation.Messages) {\n messages = Conversation.Messages;\n }\n\n if (\n Conversation &&\n Conversation.AccountNumber &&\n accounts &&\n accounts.Accounts &&\n accounts.Accounts.length\n ) {\n let account = accounts.Accounts.find(\n a => a.AccountNumber === Conversation.AccountNumber,\n );\n if (account && account.AccountStatus === 'Closed') {\n accountSuffix = ' ';\n }\n }\n\n let alertId;\n if (replyMessageStatus) {\n switch (replyMessageStatus.ResponseStatus) {\n case 'Success':\n alertId = 'messaging-twoway-reply-successful';\n break;\n case 'Failed':\n alertId = 'messaging-twoway-reply-request-error';\n break;\n default:\n alertId = 'messaging-twoway-reply-unknown-error';\n break;\n }\n }\n\n return (\n <>\n \n

    \n {replyMessageStatus &&\n replyMessageStatus.ResponseStatus === 'Success' ? (\n <>\n {' '}\n {messages.length > 1 ? (\n \n ) : (\n ''\n )}{' '}\n {messagingUtility.stripEndQuotes(\n Conversation.Reason.replace(/\\\\/g, ''),\n )}\n \n ) : (\n ''\n )}\n {replyMessageStatus &&\n replyMessageStatus.ResponseStatus === 'Failed' ? (\n <>\n \n \n ) : (\n ''\n )}\n

    \n {replyMessageStatus && (\n \n \"\n defaultText=\"An unknown error occured please check your accounts befor retrying.\"\n contents={{\n Success: {\n defaultValue:\n 'Your message has been sent. Please see details below',\n },\n Failed: {\n defaultValue:\n 'Unfortunately we were unable to send this message at this time.',\n },\n }}\n />\n \n )}\n \n {Conversation.AccountNumber !== 'XXXXXXXXXable' &&\n Conversation.AccountNumber !== '' &&\n Conversation.AccountNumber !== 'Not available' ? (\n <>\n \n \n \n \n {Conversation.AccountNumber + accountSuffix}\n \n \n ) : (\n ''\n )}\n \n \n \n \n {Conversation.Reference}\n \n \n
    \n {messages.map((item, index) => {\n return (\n
    \n

    \n {item.Sender.SenderType !== 'User'\n ? `${item.Sender.SenderType}`\n : ''}{' '}\n \n \n \n

    \n {FormatBody(item.Body)}\n
    \n );\n })}\n
    \n
    \n \n \n \n
    \n \n );\n }\n}\n\nReplyConfirmation.propTypes = {\n accounts: PropTypes.object,\n fetchAccountsIfNeeded: PropTypes.func,\n replyMessageStatus: PropTypes.any,\n transactionData: PropTypes.any,\n transfer: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { messagingTwowayDefinition, accountsDefinition } = state;\n return {\n ...messagingTwowayDefinition,\n ...accountsDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToPropsMessaging, ...mapDispatchToPropsAccounts },\n)(ReplyConfirmation);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Alert } from 'reactstrap';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport ReplyConversation from './Reply';\nimport { Utility } from '@myie/interact';\nimport ReplyConfirmation from './Confirmation';\n\nimport PropTypes from 'prop-types';\n\nclass ReplyIndex extends React.Component {\n constructor(props) {\n super(props);\n const {\n match,\n allMessages,\n history,\n viewMessage,\n viewConversation,\n } = this.props;\n let conversation;\n this.state = {\n stage: 'Reply',\n message: null,\n data: {},\n };\n if (allMessages) {\n if (!viewMessage) {\n conversation = allMessages.Conversations.find(function(element) {\n if (element) {\n return (\n Utility.hexEncode(element.ConversationKey.Key) === match.params.id\n );\n }\n return false;\n });\n\n let request = {\n ConversationKey: conversation.ConversationKey,\n ProductType: 'string',\n ExtendedProperties: {},\n };\n viewConversation(request);\n }\n } else {\n const newUrl = '/messaging-twoway/view';\n history.push(newUrl);\n }\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n if (nextProps.replyMessageStatus && prevState.stage === 'Reply') {\n return { ...prevState, stage: 'Confirmation' };\n } else return null;\n }\n\n // save the data for the request from several forms\n saveReplyData = (name, value) => {\n const { data } = this.state;\n data[name] = value;\n this.setState({ ...this.state, data, message: null });\n };\n\n // change the stage of the form\n setReplyStage = stage => {\n const { data } = this.state;\n this.setState({ ...this.state, stage, data, message: null });\n };\n\n // select current stage\n currentStage = () => {\n const { stage } = this.state;\n const { match } = this.props;\n\n switch (stage) {\n case 'Reply':\n return (\n \n );\n case 'Confirmation':\n return (\n \n );\n default:\n }\n };\n\n render() {\n const { error } = this.props;\n let alert;\n\n const { message } = this.state;\n if (message || error) {\n alert = (\n \n {message || error}\n \n );\n }\n\n return (\n
    \n {alert ? { alert } : ''}\n {this.currentStage()}\n
    \n );\n }\n}\n\nReplyIndex.propTypes = {\n accounts: PropTypes.any,\n allMessages: PropTypes.any,\n error: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n history: PropTypes.any,\n initializeMoveMoney: PropTypes.any,\n match: PropTypes.any,\n replyMessageStatus: PropTypes.any,\n retrivedUserName: PropTypes.object,\n transfer: PropTypes.any,\n viewConversation: PropTypes.any,\n viewMessage: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ReplyIndex);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Row, Col, Button } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport { Content } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\n\nclass DeleteConversation extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n stage: 'View',\n message: null,\n };\n }\n\n confirmDelete = () => {\n const { deleteConversation, viewMessage } = this.props;\n const request = {\n ConversationKey: viewMessage.Conversation.ConversationKey,\n ProductType: 'string',\n ConversationProperties: [\n {\n Name: 'Deleted',\n Value: true,\n },\n ],\n ExtendedProperties: {},\n };\n deleteConversation(request);\n };\n\n // select current stag\n render() {\n const { viewMessage, match } = this.props;\n\n let Conversation;\n\n if (!viewMessage) {\n return null;\n } else {\n Conversation = viewMessage.Conversation;\n }\n\n return (\n
    \n

    \n \n

    \n

    \n \n

    \n \n \n \n \n \n \n {Conversation.Reason}\n \n \n \n \n \n {`${Conversation.AccountNumber}${Conversation.SortCode}`}\n \n \n \n \n \n {Conversation.Reference}\n \n \n
    \n \n \n \n \n \n \n
    \n
    \n );\n }\n}\n\nDeleteConversation.propTypes = {\n baseUrl: PropTypes.any,\n deleteConversation: PropTypes.any,\n history: PropTypes.any,\n match: PropTypes.any,\n setReplyStage: PropTypes.any,\n viewMessage: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(DeleteConversation);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport { Content, Switch } from '@myie/interact-dom';\n\nclass DeleteConfirmation extends React.Component {\n render() {\n const { deleteMessageStatus, viewMessage } = this.props;\n let Conversation;\n\n if (!deleteMessageStatus) {\n return null;\n }\n if (viewMessage) {\n Conversation = viewMessage.Conversation;\n }\n\n let alertId;\n if (deleteMessageStatus) {\n switch (deleteMessageStatus.ResponseStatus) {\n case 'Success':\n alertId = 'messaging-twoway-delete-successful';\n break;\n case 'Failed':\n alertId = 'messaging-twoway-delete-request-error';\n break;\n default:\n alertId = 'messaging-twoway-delete-unknown-error';\n break;\n }\n }\n\n return (\n <>\n

    \n \n

    \n {deleteMessageStatus && (\n \n \"\n value={deleteMessageStatus.ResponseStatus}\n defaultText=\"An unknown error occured please check your accounts befor retrying.\"\n contents={{\n Success: {\n defaultValue:\n 'Your message has been deleted. See details below',\n },\n Failed: {\n defaultValue:\n 'An error occured while trying to process your request.',\n },\n }}\n />\n \n )}\n {Conversation && (\n \n \n \n \n \n \n {Conversation.Reason}\n \n \n \n \n \n {`${Conversation.AccountNumber}${Conversation.SortCode}`}\n \n \n \n \n \n {Conversation.Reference}\n \n \n )}\n
    \n \n \n \n
    \n \n );\n }\n}\n\nDeleteConfirmation.propTypes = {\n deleteMessageStatus: PropTypes.any,\n transactionData: PropTypes.any,\n transfer: PropTypes.any,\n viewMessage: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(DeleteConfirmation);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Row, Col, Alert } from 'reactstrap';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport DeleteConversation from './Delete';\nimport ReplyConfirmation from './Confirmation';\nimport { Utility } from '@myie/interact';\nimport PropTypes from 'prop-types';\n\nclass DeleteIndex extends React.Component {\n constructor(props) {\n super(props);\n const {\n viewConversation,\n viewMessage,\n history,\n match,\n allMessages,\n } = this.props;\n let conversation;\n this.state = {\n stage: 'Delete',\n message: null,\n data: {},\n };\n\n if (allMessages) {\n if (!viewMessage) {\n conversation = allMessages.Conversations.find(function(element) {\n if (element) {\n return (\n Utility.hexEncode(element.ConversationKey.Key) === match.params.id\n );\n }\n return false;\n });\n\n let request = {\n ConversationKey: conversation.ConversationKey,\n ProductType: 'string',\n ExtendedProperties: {},\n };\n viewConversation(request);\n }\n } else {\n const newUrl = '/messaging-twoway/view';\n history.push(newUrl);\n }\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n if (nextProps.deleteMessageStatus && prevState.stage === 'Delete') {\n return { ...prevState, stage: 'Confirmation' };\n } else return null;\n }\n\n // save the data for the request from several forms\n saveReplyData = (name, value) => {\n const { data } = this.state;\n data[name] = value;\n this.setState({ ...this.state, data, message: null });\n };\n\n // change the stage of the form\n setReplyStage = stage => {\n const { data } = this.state;\n this.setState({ ...this.state, stage, data, message: null });\n };\n\n // select current stage\n currentStage = () => {\n const { stage } = this.state;\n const { match } = this.props;\n\n switch (stage) {\n case 'Delete':\n return (\n \n );\n case 'Confirmation':\n return (\n \n );\n default:\n }\n };\n\n render() {\n const { error } = this.props;\n let alert;\n\n const { message } = this.state;\n if (message || error) {\n alert = (\n \n {message || error}\n \n );\n }\n\n return (\n
    \n \n {alert ? {alert} : ''}\n {this.currentStage()}\n \n
    \n );\n }\n}\n\nDeleteIndex.propTypes = {\n accounts: PropTypes.any,\n allMessages: PropTypes.any,\n deleteMessageStatus: PropTypes.any,\n error: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n history: PropTypes.any,\n initializeMoveMoney: PropTypes.any,\n match: PropTypes.any,\n retrivedUserName: PropTypes.object,\n transfer: PropTypes.any,\n viewConversation: PropTypes.any,\n viewMessage: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(DeleteIndex);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport View from './View';\nimport ReplyIndex from './Reply';\nimport DeleteIndex from './Delete';\nimport { Alert } from 'reactstrap';\nimport { Route, Switch } from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapDispatchToPropsMessaging } from '@myie/interact-messaging-twoway';\nimport { NoMatch } from '@myie/interact-dom';\n\nclass Conversation extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n stage: 'View',\n message: null,\n data: {},\n };\n }\n\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n componentWillUnmount() {\n const { resetReply } = this.props;\n resetReply();\n }\n\n render() {\n const { error } = this.props;\n\n return (\n \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n }\n />\n }\n />\n }\n />\n \n \n \n );\n }\n}\n\nConversation.propTypes = {\n error: PropTypes.any,\n location: PropTypes.any,\n resetAccountPayees: PropTypes.any,\n resetReply: PropTypes.any,\n accounts: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { messagingTwowayDefinition, accountsDefinition } = state;\n return {\n ...messagingTwowayDefinition,\n ...accountsDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToPropsMessaging, ...mapDispatchToPropsAccounts },\n)(Conversation);\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Switch, Redirect } from 'react-router-dom';\nimport { PrivateRoute } from '@myie/interact-dom';\nimport View from './View';\nimport New from './New';\nimport Conversation from './Conversation';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-messaging-twoway';\n\nclass MessagingTwoway extends Component {\n componentWillUnmount() {\n const { resetMessages } = this.props;\n resetMessages();\n }\n\n render() {\n if (\n this.props.location.pathname.match(\n new RegExp('^/messaging-twoway[/]{0,1}$'),\n )\n ) {\n return ;\n }\n\n return (\n
    \n \n \n \n \n \n
    \n );\n }\n}\n\nMessagingTwoway.propTypes = {\n location: PropTypes.object,\n resetMessages: PropTypes.any,\n};\n\nexport default connect(\n null,\n mapDispatchToProps,\n)(MessagingTwoway);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport { Badge } from 'reactstrap';\nimport { Content } from '@myie/interact-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-messaging-twoway';\nimport { Session } from '@myie/interact';\n\nclass SummaryMenuItems extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n newMessageCount: 0,\n };\n }\n timeoutID = null;\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { newMessageCount } = nextProps;\n\n if (\n newMessageCount &&\n newMessageCount.Count !== prevState.newMessageCount\n ) {\n return {\n ...prevState,\n newMessageCount: newMessageCount.Count,\n };\n } else {\n return null;\n }\n }\n\n componentDidMount() {\n const { getNewMessageCount } = this.props;\n let request = {\n Type: 'New',\n ExtendedProperties: {},\n };\n getNewMessageCount(request);\n }\n\n componentWillUnmount() {\n clearInterval(this.timeoutID);\n }\n\n startTimer = () => {\n this.timeoutID = setInterval(this.updateCount, 120000);\n };\n\n clearTimer = () => {\n clearInterval(this.timeoutID);\n };\n\n updateCount = () => {\n const { getNewMessageCount } = this.props;\n if (!Session.isAuthenticated()) {\n this.clearTimer();\n } else {\n let request = {\n Type: 'New',\n ExtendedProperties: {},\n };\n getNewMessageCount(request);\n }\n };\n\n render() {\n const { newMessageCount } = this.state;\n return (\n \n \n {newMessageCount ? (\n <>\n \n {newMessageCount}\n \n \n ) : (\n ''\n )}\n \n );\n }\n}\n\nSummaryMenuItems.propTypes = {\n getNewMessageCount: PropTypes.any,\n newMessageCount: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(SummaryMenuItems);\n","import SummaryMenuItems from './SummaryMenuItems';\n\nconst MessagingTwowayMenuItems = [\n {\n url: '/messaging-twoway',\n menuItem: SummaryMenuItems,\n },\n];\n\nexport default MessagingTwowayMenuItems;\n","import React from 'react';\nimport { Route } from 'react-router-dom';\nimport MessagingTwoway from './MessagingTwoway';\n\nconst Routes = [\n ,\n];\n\nexport default Routes;\n","import ConversationSidebar from './Conversation/Sidebar';\nimport NewMessageSidebar from './New/Sidebar';\nimport ViewMessageSidebar from './View/Sidebar';\nimport ReplyMessageSidebar from './Conversation/Delete/Sidebar';\nimport DeleteMessageSidebar from './Conversation/Reply/Sidebar';\n\nconst MessagingTwowaySidebars = [\n { url: '/messaging-twoway/message/view/', Sidebar: ConversationSidebar },\n { url: '/messaging-twoway/new', Sidebar: NewMessageSidebar },\n { url: '/messaging-twoway/view', Sidebar: ViewMessageSidebar },\n { url: '/messaging-twoway/message/reply/', Sidebar: ReplyMessageSidebar },\n {\n url: '/messaging-twoway/message/delete/',\n Sidebar: DeleteMessageSidebar,\n },\n];\n\nexport default MessagingTwowaySidebars;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass ConversationSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default ConversationSidebar;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass NewMessageSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default NewMessageSidebar;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass ViewMessageSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default ViewMessageSidebar;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass DeleteMessageSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default DeleteMessageSidebar;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass ReplyMessageSidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default ReplyMessageSidebar;\n","import MessagingTwoway from './MessagingTwoway';\nimport MessagingTwowayMenuItems from './MenuItems';\nimport Routes from './Routes';\nimport MessagingTwowaySidebars from './Sidebars';\n\nexport {\n MessagingTwoway,\n Routes,\n MessagingTwowayMenuItems,\n MessagingTwowaySidebars,\n};\n","export const RULES = {\n //Account Details\n ammountFormat: /^\\d+(,\\d{3})*\\.?\\d*$/,\n ammountFormat2: /^\\d*(,\\d+)*\\.?\\d*$/,\n dateFormat: /^[^\\s].{9}$/,\n activationCode2: /^[0-9]{6}$/,\n};\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Row, Col, Form, Button } from 'reactstrap';\nimport PropTypes from 'prop-types';\nimport { Text, Errors, Currency, Mask } from '@myie/interact-dom';\nimport { RedirectByAccountDropdown } from '@myie/interact-accounts-dom';\nimport { Content } from '@myie/interact-dom';\n\nclass MakePayment extends React.Component {\n render() {\n const {\n account,\n accounts,\n form,\n updateStage,\n onChangeAccount,\n onChange,\n onBlur,\n error,\n referrer = '/accounts',\n } = this.props;\n return (\n
    \n {error}\n\n updateStage(e, 'ReviewPayment')}\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 \n \n \n \n \n \n \n
    \n
    \n \n \n \n \n
    \n \n
    \n );\n }\n}\n\nMakePayment.propTypes = {\n account: PropTypes.any,\n accounts: PropTypes.any,\n error: PropTypes.any,\n form: PropTypes.any,\n info: PropTypes.any,\n isFetching: PropTypes.any,\n match: PropTypes.any,\n onBlur: PropTypes.any,\n onChange: PropTypes.any,\n onChangeAccount: PropTypes.any,\n referrer: PropTypes.any,\n updateStage: PropTypes.any,\n};\n\nexport default MakePayment;\n","import React from 'react';\nimport { Row, Col, Form, Button } from 'reactstrap';\nimport { FormattedCurrency, Content } from '@myie/interact-dom';\nimport { Alert } from 'reactstrap';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\n\nconst ReviewPayment = props => {\n const {\n form,\n updateStage,\n error,\n submit,\n account,\n referrer = '/accounts',\n } = props;\n\n return (\n
    \n

    \n \n

    \n

    \n \n

    \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n
    submit(e)}>\n \n \n \n \n \n \n \n \n \n \n \n {account.AccountName}{' '}\n \n \n \n \n \n \n \n \n \n
    \n \n updateStage(e, 'MakePayment')}\n id=\"make-payment-back\"\n type=\"button\"\n color=\"secondary\"\n >\n \n \n \n \n \n
    \n
    \n
    \n );\n};\n\nReviewPayment.propTypes = {\n account: PropTypes.any,\n error: PropTypes.any,\n form: PropTypes.any,\n info: PropTypes.any,\n referrer: PropTypes.any,\n submit: PropTypes.any,\n updateStage: PropTypes.any,\n};\n\nexport default ReviewPayment;\n","import React from 'react';\nimport { Button, Form } from 'reactstrap';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport { Content } from '@myie/interact-dom';\nconst url = require('url');\n\nclass CompletePayment extends React.Component {\n constructor(props) {\n super(props);\n this.formRef = React.createRef();\n this.iframeRef = React.createRef();\n }\n\n componentDidMount() {\n // use this for posting to iframe\n try {\n this.formRef.current.submit();\n } catch (e) {\n // add code here to trap issues\n }\n }\n\n iframeLoaded = e => {\n const { submit, referrer, history } = this.props;\n try {\n const href = this.iframeRef.current.contentWindow.location.href;\n const search = this.iframeRef.current.contentWindow.location.search;\n if (href.indexOf('3ds-success.html') >= 0) {\n submit(e, search);\n } else if (href.indexOf('3ds-cancel.html') >= 0) {\n history.push(referrer);\n }\n } catch (e) {\n // usually means it iframe is cross-domain, so not our site\n }\n };\n\n render() {\n const { props } = this;\n const {\n updateStage,\n //submit,\n error,\n referrer = '/accounts',\n payment,\n } = props;\n let urlParsed = null;\n let params = null;\n if (payment.ThreeDSecureUrl) {\n urlParsed = url.parse(payment.ThreeDSecureUrl);\n params = urlParsed.query.split(',');\n }\n\n return (\n
    \n {error}\n\n <>\n {/* used for post method */}\n {urlParsed && (\n \n {params.map(param => {\n return (\n \n );\n })}\n \n )}\n {payment.ResponseStatus === 'PerformThreeDSecure' ? (\n \n ) : (\n ''\n )}\n \n updateStage(e, 'MakePayment')}\n >\n {payment.ResponseStatus !== 'PerformThreeDSecure' ? (\n
    \n \n \n \n \n \n \n
    \n ) : (\n ''\n )}\n \n
    \n );\n }\n}\n\nCompletePayment.propTypes = {\n error: PropTypes.any,\n history: PropTypes.any,\n payment: PropTypes.any,\n referrer: PropTypes.string,\n submit: PropTypes.any,\n updateStage: PropTypes.any,\n};\n\nexport default CompletePayment;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Row, Col, Alert } from 'reactstrap';\nimport { FormattedCurrency, Content } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\n\nconst SuccessfulPayment = props => {\n const { account, form, referrer = '/accounts', payment } = props;\n return (\n
    \n \n \n \n \n \n \n \n \n \n \n \n To\n \n \n {account.AccountName}{' '}\n \n \n \n \n \n \n \n \n \n \n \n \n {payment.PaymentReference}\n \n \n
    \n \n \n \n
    \n
    \n );\n};\n\nSuccessfulPayment.propTypes = {\n account: PropTypes.any,\n form: PropTypes.any,\n info: PropTypes.any,\n payment: PropTypes.any,\n referrer: PropTypes.any,\n};\n\nexport default SuccessfulPayment;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Breadcrumb, BreadcrumbItem } from 'reactstrap';\nimport { Content } from '@myie/interact-dom';\n\nclass PaymentBreadcrumbs extends React.Component {\n render() {\n const { stage } = this.props;\n\n return (\n <>\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n
    \n \n );\n }\n}\n\nPaymentBreadcrumbs.propTypes = {\n stage: PropTypes.any,\n};\n\nexport default PaymentBreadcrumbs;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport update from 'immutability-helper';\nimport MakePayment from './MakePayment';\nimport ReviewPayment from './ReviewPayment';\nimport CompletePayment from './CompletePayment';\nimport SuccessfulPayment from './SuccessfulPayment';\nimport PaymentBreadcrumbs from './PaymentBreadcrumbs';\nimport { Validate, Utility } from '@myie/interact';\nimport { mapDispatchToProps as mapDispatchToPropsPayment } from '@myie/interact-pay-by-card';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-accounts';\nimport { Content, Switch } from '@myie/interact-dom';\n\nclass PayByCard extends React.Component {\n constructor(props) {\n super(props);\n this.state = this.initialState();\n }\n\n initialState = () => {\n const { accounts, match } = this.props;\n let account;\n if (accounts) {\n account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n } else {\n account = null;\n }\n return {\n account: account,\n stage: 'MakePayment',\n form: {\n amount: {\n rules: {\n title: 'Amount',\n stop: true,\n required: true,\n currency: true,\n },\n },\n cardNumber: {\n rules: {\n title: 'Card number',\n stop: true,\n required: true,\n cc: {\n message: 'Please enter a valid credit card number',\n },\n },\n },\n expiryDate: {\n rules: {\n title: 'Expiry date',\n stop: true,\n required: true,\n cardExpiryDate: {\n message: 'must be in MM/YY format',\n },\n expiryDate: {},\n },\n },\n securityCode: {\n rules: {\n title: 'CVV',\n stop: true,\n required: true,\n securityCode: {\n message: 'must be 3 digits',\n },\n },\n },\n paymentType: {\n value: 'specific',\n rules: {\n title: 'Payment selection',\n required: true,\n },\n },\n },\n };\n };\n\n // initialise when component umounts\n componentDidMount() {\n const { resetPayByCard, fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n resetPayByCard();\n }\n\n componentDidUpdate(prevProps) {\n const { match, accounts } = this.props;\n if (accounts && prevProps.accounts !== accounts) {\n const account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n this.setState({ ...this.state, account });\n }\n }\n\n // reset payment detail when component unmounts\n componentWillUnmount() {\n const { resetPayByCard } = this.props;\n this.setState({ ...this.state, stage: 'MakePayment' });\n resetPayByCard();\n }\n\n // common onChangeAccount function\n onChangeAccount = e => {\n const { resetPayByCard, fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n resetPayByCard();\n const { value } = e.target;\n if (this.props && this.props.accounts && this.props.accounts.Accounts) {\n const account = this.props.accounts.Accounts.find(function(element) {\n return element.AccountKey.Key === value;\n });\n this.setState({ ...this.initialState(), account });\n }\n };\n\n // common onChange function\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n\n this.setState({ ...this.state, form });\n };\n\n // common onBlur function\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n // update the stage in state\n updateStage = (e, stageId) => {\n e.preventDefault();\n\n if (stageId === 'MakePayment') {\n const { resetPayByCard } = this.props;\n resetPayByCard();\n }\n const state = this.state;\n const stage = update(this.state.stage, { $set: stageId });\n this.setState({ ...state, stage });\n };\n\n // validation for payment entry form in state\n validateStage = (e, stageId) => {\n e.preventDefault();\n var { form } = this.state;\n form = Validate.form(form);\n\n if (!form.approved) {\n this.setState({ ...this.state, form });\n return;\n }\n\n if (stageId === 'MakePayment') {\n const { resetPayByCard } = this.props;\n resetPayByCard();\n }\n const stage = update(this.state.stage, { $set: stageId });\n this.setState({ ...this.state, stage, form });\n };\n\n // submit from review page\n submitMake = e => {\n e.preventDefault();\n const { makePayByCard } = this.props;\n var { form, account } = this.state;\n var request = {\n AccountKey: account.AccountKey,\n Amount: form.amount.value - 0,\n CurrencyCode: account.CurrencyCode,\n CardNumber: form.cardNumber.value,\n CardHoldersName: null,\n ExpiryDate: form.expiryDate.value,\n Address: {},\n PostCode: null,\n SecurityCode: form.securityCode.value,\n PaymentType: form.paymentType.value,\n ProductType: account.ProductType,\n SaveCardDetails: false,\n ExtendedProperties: null,\n };\n makePayByCard(request);\n };\n\n // get error text for payment ResponseStatus\n errorText = () => {\n const { payment } = this.props;\n let error = payment ? (\n \n ) : null;\n return error;\n };\n\n // render page for current stage\n renderStage = stage => {\n const {\n error,\n accounts = {},\n isFetching,\n referrer = '/accounts',\n payment,\n history,\n } = this.props;\n const errorText = error || this.errorText();\n\n var { form, account, formState } = this.state;\n if (stage === 'MakePayment') {\n return (\n <>\n \n \n );\n }\n\n if (stage === 'ReviewPayment') {\n return (\n \n );\n }\n\n if (stage === 'CompletePayment') {\n return (\n \n );\n }\n\n if (stage === 'SuccessfulPayment') {\n return (\n \n );\n }\n };\n\n // submit from 3D Secure page\n submitComplete = (e, acknowledgement) => {\n e.preventDefault();\n const { completePayByCard, payment } = this.props;\n var { form, account } = this.state;\n var request = {\n PaymentKey: payment.PaymentKey,\n AccountKey: account.AccountKey,\n Amount: parseFloat(form.amount.value),\n CurrencyCode: account.CurrencyCode,\n CardNumber: form.cardNumber.value,\n CardHoldersName: null,\n ExpiryDate: form.expiryDate.value,\n Address: {},\n PostCode: null,\n SecurityCode: form.securityCode.value,\n PaymentType: form.paymentType.value,\n ProductType: account.ProductType,\n ThreeDSecureResult: acknowledgement,\n SaveCardDetails: false,\n ExtendedProperties: null,\n };\n completePayByCard(request);\n };\n\n // set stage depending on payment response\n static getDerivedStateFromProps(nextProps, prevState) {\n const { payment } = nextProps;\n if (payment) {\n switch (payment.ResponseStatus) {\n case 'PerformThreeDSecure':\n return { ...prevState, stage: 'CompletePayment' };\n case 'Completed':\n return { ...prevState, stage: 'SuccessfulPayment' };\n\n default:\n }\n } else if (\n prevState.stage === 'SuccessfulPayment' ||\n prevState.stage === 'CompletePayment'\n ) {\n return { ...prevState, stage: 'MakePayment' };\n }\n return null;\n }\n\n render() {\n const { accounts = {} } = this.props;\n const { stage, account } = this.state;\n let { error } = this.props;\n\n if (!accounts.Accounts) {\n return null;\n } else if (!account) {\n return (\n

    \n \n

    \n );\n }\n\n return (\n <>\n

    \n \n

    \n
    \n \n
    \n
    \n {this.renderStage(stage, error)}\n \n );\n }\n}\n\nPayByCard.propTypes = {\n accounts: PropTypes.object,\n completePayByCard: PropTypes.any,\n error: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n history: PropTypes.any,\n isFetching: PropTypes.any,\n makePayByCard: PropTypes.any,\n match: PropTypes.any,\n payment: PropTypes.any,\n referrer: PropTypes.string,\n resetPayByCard: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { payByCardDefinition, accountsDefinition } = state;\n return {\n ...payByCardDefinition,\n ...accountsDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToPropsPayment,\n ...mapDispatchToPropsAccounts,\n },\n)(PayByCard);\n","import React from 'react';\nimport { Route, Switch } from 'react-router-dom';\nimport { PrivateRoute, NoMatch } from '@myie/interact-dom';\nimport PayByCard from './PayByCard';\n\nclass Savings extends React.Component {\n render() {\n return (\n
    \n \n \n \n \n
    \n );\n }\n}\nexport default Savings;\n","import React from 'react';\nimport { Col, Row } from 'reactstrap';\nimport { Content, FormattedCurrency, FormattedDate } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\n\nconst WithdrawalAccount = ({ account, withdrawDate }) => {\n const { ExtendedProperties: { NoticePeriodInDays } = {} } = account;\n\n const noticePeriod = NoticePeriodInDays ? `${NoticePeriodInDays} Days` : '';\n\n return (\n
    \n \n \n \n \n \n {account.AccountNumber}\n \n \n \n \n \n \n \n {account.brandProductType === 'NOTICE_ACCOUNT' ? (\n <>\n \n \n \n \n {noticePeriod}\n \n \n ) : null}\n \n \n \n \n \n \n \n
    \n );\n};\n\nWithdrawalAccount.propTypes = {\n account: PropTypes.object,\n withdrawDate: PropTypes.any,\n};\n\nexport default WithdrawalAccount;\n","import React from 'react';\nimport { Col, Row } from 'reactstrap';\nimport { Content } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\n\nconst NominatedAccount = ({ account }) => {\n const {\n ExtendedProperties: { NominatedAccountNumber, NominatedSortCode } = {},\n } = account;\n\n return (\n
    \n \n \n \n \n \n {NominatedAccountNumber}\n \n \n \n \n \n {NominatedSortCode}\n \n \n
    \n );\n};\n\nNominatedAccount.propTypes = {\n account: PropTypes.object,\n};\n\nexport default NominatedAccount;\n","import React, { Component } from 'react';\nimport { Form, Button, Row, Col } from 'reactstrap';\nimport {\n Content,\n Text,\n Markdown,\n Currency as CurrencyInput,\n Check,\n} from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\nimport { Validate } from '@myie/interact';\n\nclass WithdrawalWithClose extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n form: {\n amount: {\n rules: {\n title: 'Amount',\n stop: true,\n required: {\n message: 'Please enter an amount',\n },\n format: {\n regex: /^\\d+(,\\d{3})*\\.?\\d*$/,\n message: 'Please enter a valid amount',\n },\n minAmountCheck: {\n message: 'Please enter an amount greater than zero',\n comparison: () => {\n return 0.01;\n },\n },\n compareWithAvailableBalance: {\n message: 'Please enter an amount less than available balance',\n comparison: () => {\n const { account: { RemainingAllowance = 0 } = {} } = this.props;\n return RemainingAllowance;\n },\n },\n },\n value: '',\n },\n reference: {\n rules: {\n title: 'Reference',\n stop: true,\n format: {\n regex: /^[a-zA-Z- .\\d/&]{0,18}$/,\n message: 'Please enter a valid reference',\n },\n },\n value: '',\n },\n closeAccount: {\n rules: {\n title: 'Close Account',\n },\n },\n },\n };\n }\n\n onChange = e => {\n this.updateForm(e);\n };\n\n onBlur = e => {\n this.updateForm(e);\n };\n\n updateForm = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n updatCurrency = e => {\n let { name, value } = e.target;\n let newValue = value;\n\n if (newValue !== '') {\n newValue = new Intl.NumberFormat().format(value.replace(/,/g, ''));\n }\n // Deal with trailing . or .0 or .n0\n if (value.charAt(value.length - 1) === '.') {\n newValue += '.';\n }\n if (value.slice(value.length - 2) === '.0') {\n newValue += '.0';\n }\n if (\n value.charAt(value.length - 3) === '.' &&\n value.charAt(value.length - 1) === '0'\n ) {\n if (value.charAt(value.length - 2) === '0') {\n newValue += '.0';\n }\n newValue += '0';\n }\n var { form } = this.state;\n form = Validate.input(name, newValue, form, true);\n this.setState({ ...this.state, form });\n };\n\n onSubmitHandler = e => {\n e.preventDefault();\n const { onSubmit } = this.props;\n let { form } = this.state;\n if (!form.closeAccount.value) {\n form = Validate.form(form);\n this.setState({ ...this.state, form });\n\n if (!form.approved) {\n return;\n }\n if (typeof onSubmit === 'function') {\n onSubmit(form);\n }\n }\n onSubmit(form);\n };\n\n onClick = e => {\n const { name, checked } = e.target;\n var { form } = this.state;\n form = Validate.input(name, checked ? 'true' : null, form);\n if (checked) {\n form.amount.value = '';\n form.reference.value = '';\n }\n this.setState({ ...this.state, form });\n };\n\n render() {\n const { onCancelled, account = {} } = this.props;\n const { form } = this.state;\n\n return (\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\nWithdrawalWithClose.propTypes = {\n account: PropTypes.object,\n onCancelled: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport default WithdrawalWithClose;\n","import React, { Component } from 'react';\nimport { withRouter } from 'react-router-dom';\nimport { Content } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\nimport WithdrawalAccount from '../../shared/WithdrawalAccount';\nimport NominatedAccount from '../../shared/NominatedAccount';\nimport { RedirectByAccountDropdown } from '@myie/interact-accounts-dom';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapSavingsServicingDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport WithdrawalWithClose from '../../shared/WithdrawalWithClose';\n\nclass Create extends Component {\n submitForm = form => {\n const { submitForm } = this.props;\n submitForm('ReviewNotice', form);\n };\n\n render() {\n const {\n account,\n accounts = {},\n onChangeAccount,\n onCancelled,\n actionDate,\n isFetching,\n } = this.props;\n\n return (\n <>\n \n\n

    \n \n

    \n \n\n

    \n \n

    \n\n \n {!isFetching && Object.keys(account).length ? (\n \n ) : null}\n \n );\n }\n}\n\nCreate.propTypes = {\n accounts: PropTypes.any,\n withdrawalAccount: PropTypes.object,\n isFetching: PropTypes.bool,\n history: PropTypes.any,\n onCreate: PropTypes.func,\n match: PropTypes.any,\n actionDate: PropTypes.any,\n onChangeAccount: PropTypes.func,\n onCancelled: PropTypes.func,\n fetchAccountsIfNeeded: PropTypes.func,\n resetMakeWithdrawal: PropTypes.func,\n makeaWithdraw: PropTypes.func,\n account: PropTypes.any,\n submitForm: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbSavingsServicingDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbSavingsServicingDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...mapSavingsServicingDispatchToProps },\n)(withRouter(Create));\n","import React, { Component } from 'react';\nimport {\n Content,\n FormattedCurrency,\n FormattedDate,\n Switch,\n} from '@myie/interact-dom';\nimport { Button } from 'reactstrap';\nimport { withRouter } from 'react-router-dom';\nimport { Col, Row } from 'reactstrap';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport moment from 'moment';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-ccb-savings-servicing';\nimport Currency from 'react-currency-formatter';\n\nclass Confirmation extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n date: moment(new Date())\n .utc()\n .format('YYYY-MM-DD'),\n message: '',\n disabled: false,\n };\n }\n submit = () => {\n const { onSubmitWithdrawal } = this.props;\n if (this.state.disabled) {\n return;\n }\n this.setState({ disabled: true });\n onSubmitWithdrawal();\n };\n\n cancelWithdrawal = () => {\n const { setStage } = this.props;\n setStage('createNotice');\n };\n\n // these response status force the form to be reset and switched back to the first page\n static getDerivedStateFromProps = nextProps => {\n const { makeWithdrawResponse = {} } = nextProps;\n\n if (\n makeWithdrawResponse &&\n makeWithdrawResponse.ResponseStatus === 'Failed'\n ) {\n return {\n message: 'failed',\n disabled: false,\n };\n }\n\n return null;\n };\n\n render() {\n const { form = {}, account = {}, actionDate } = this.props;\n let amount =\n form && form.amount && form.amount.value ? form.amount.value : '';\n const closeOption = form.closeAccount ? form.closeAccount.value : false;\n let reference =\n form && form.reference && form.reference.value\n ? form.reference.value\n : '';\n\n const {\n CurrencyCode,\n RemainingAllowance,\n ExtendedProperties: {\n NominatedAccountNumber,\n NominatedAccountName,\n NominatedSortCode,\n } = {},\n } = account;\n return (\n <>\n \n

    \n \n

    \n\n
    \n \n \n \n \n \n {account.AccountName}{' '}\n {Currency({\n quantity: RemainingAllowance,\n currency: CurrencyCode,\n })}\n \n {account.SortCode} - {account.AccountNumber}\n \n \n \n \n \n \n {NominatedAccountName}\n \n {NominatedSortCode} - {NominatedAccountNumber}\n \n \n \n \n \n \n {!closeOption ? (\n \n ) : (\n \n )}\n \n \n \n \n \n \n \n {!closeOption ? (\n <>\n {' '}\n {reference ? (\n <>\n \n \n \n \n {reference}\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\nConfirmation.propTypes = {\n match: PropTypes.any,\n history: PropTypes.any,\n createNoticeParam: PropTypes.any,\n error: PropTypes.any,\n isFetching: PropTypes.any,\n createResponse: PropTypes.any,\n onSubmitWithdrawal: PropTypes.any,\n createNoticeToWithdraw: PropTypes.func,\n account: PropTypes.any,\n setStage: PropTypes.any,\n form: PropTypes.any,\n actionDate: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(withRouter(Confirmation));\n","import React, { Component } from 'react';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Content } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nimport { Utility } from '@myie/interact';\n\nclass CreationSuccess extends Component {\n componentDidMount() {\n const { resetCreateNoticeToWithdraw } = this.props;\n resetCreateNoticeToWithdraw();\n }\n\n render() {\n const { account = {} } = this.props;\n if (!account) {\n return null;\n }\n\n return (\n <>\n

    \n \n

    \n
    \n \n \n \n
    \n \n );\n }\n}\n\nCreationSuccess.propTypes = {\n resetCreateNoticeToWithdraw: PropTypes.func,\n match: PropTypes.any,\n account: PropTypes.any,\n};\n\nexport default connect(\n null,\n mapDispatchToProps,\n)(CreationSuccess);\n","import moment from 'moment';\nconst dateValidation = (function() {\n const isWeekEnd = date => {\n let day = moment(date).day();\n if (day === 6 || day === 0) {\n return true;\n }\n return false;\n };\n\n const isHoliday = (date, days) => {\n const found = days.find(element => element === date);\n if (found) {\n return true;\n }\n return false;\n };\n\n return {\n isWeekEnd: isWeekEnd,\n isHoliday: isHoliday,\n };\n})();\n\nexport default dateValidation;\n","import React, { Component } from 'react';\nimport { BreadcrumbItem, Breadcrumb } from 'reactstrap';\nimport { withRouter } from 'react-router-dom';\nimport { Content } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\nimport { Utility } from '@myie/interact';\nimport moment from 'moment';\nimport { AppMeta } from '@myie/interact-dom';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapSavingsServicingDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport Create from './Create';\nimport Confirmation from './Confirmation';\nimport CreationSuccess from './CreationSuccess';\nimport dateValidation from './../../utility';\n\nclass CreateNotice extends Component {\n constructor(props) {\n super(props);\n this.state = this.initialState();\n }\n\n initialState = () => {\n const { accounts, match } = this.props;\n let account;\n if (accounts) {\n account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n } else {\n account = null;\n }\n return {\n account: account,\n stage: 'createNotice',\n withdrawDate: moment(),\n form: {},\n };\n };\n\n componentWillUnmount() {\n const { resetMakeWithdrawal } = this.props;\n resetMakeWithdrawal();\n }\n\n componentDidMount() {\n const { resetMakeWithdrawal, fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n resetMakeWithdrawal();\n }\n\n // these response status force the form to be reset and switched back to the first page\n static getDerivedStateFromProps = nextProps => {\n const { makeWithdrawResponse = {} } = nextProps;\n\n if (\n makeWithdrawResponse &&\n makeWithdrawResponse.ResponseStatus === 'Success'\n ) {\n return {\n stage: 'CompleteNotice',\n };\n }\n\n return null;\n };\n\n componentDidUpdate(prevProps) {\n const { match, accounts } = this.props;\n if (accounts && prevProps.accounts !== accounts) {\n const account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n this.setState({ ...this.state, account });\n }\n }\n\n // change the stage of the form\n setStage = stage => {\n this.setState({ ...this.state, stage, message: null });\n };\n\n setForm = form => {\n this.setState({ ...this.state, form, message: null });\n };\n\n //update the stage in state\n submitForm = (stage, form) => {\n if (stage === 'createNotice') {\n const { resetMakeWithdrawal } = this.props;\n resetMakeWithdrawal();\n }\n\n this.setState({ ...this.state, stage, form, message: null });\n };\n\n getActionDate = account => {\n const { holidays } = this.props;\n const { ExtendedProperties: { NoticePeriodInDays } = {} } = account;\n const NumberOfDays = NoticePeriodInDays === 0 ? 0 : NoticePeriodInDays;\n let days = [];\n if (holidays) {\n days = holidays.split(',');\n }\n let date = moment(new Date())\n .utc()\n .add(NumberOfDays, 'days')\n .format('YYYY-MM-DD');\n\n while (\n dateValidation.isWeekEnd(date) ||\n dateValidation.isHoliday(date, days)\n ) {\n let createdDate = moment(date).format('YYYY-MM-DD');\n date = moment(createdDate)\n .add(1, 'days')\n .format('YYYY-MM-DD');\n }\n\n return date;\n };\n\n onSubmitWithdrawal = () => {\n const { account, form } = this.state;\n const { makeaWithdraw } = this.props;\n let formCloseAccount = form.closeAccount.value;\n let request = {\n AccountKey: account.AccountKey,\n WithdrawalInformation: {\n ActionDate: this.getActionDate(account),\n Amount: form.amount.value.replace(/,/g, ''),\n CloseAccount: false,\n PaymentReference: form.reference.value ? form.reference.value : null,\n },\n };\n if (formCloseAccount) {\n request = {\n AccountKey: account.AccountKey,\n WithdrawalInformation: {\n ActionDate: this.getActionDate(account),\n CloseAccount: true,\n },\n };\n }\n\n makeaWithdraw(request);\n };\n\n // common onChangeAccount function\n onChangeAccount = e => {\n const { resetMakeWithdrawal, fetchAccountsIfNeeded, accounts } = this.props;\n fetchAccountsIfNeeded();\n resetMakeWithdrawal();\n const { value } = e.target;\n if (accounts && accounts.Accounts) {\n const account = accounts.Accounts.find(function(element) {\n return element.AccountKey.Key === value;\n });\n this.setState({ ...this.initialState(), account });\n }\n };\n // select current stage\n currentStage = account => {\n const { accounts = {} } = this.props;\n const actionDate = this.getActionDate(account);\n switch (this.state.stage) {\n case 'createNotice':\n return (\n \n );\n case 'ReviewNotice':\n return (\n \n );\n case 'CompleteNotice':\n return (\n \n );\n\n default:\n }\n };\n\n onCancelleWithdrawal = () => {\n const { history } = this.props;\n const { account } = this.state;\n const key =\n (account.AccountKey &&\n account.AccountKey.Key &&\n Utility.hexEncode(account.AccountKey.Key)) ||\n '';\n history.push(`/notice-to-withdraw/${key}`);\n };\n\n render() {\n const { stage, account } = this.state;\n if (!account) {\n return null;\n }\n\n return (\n
    \n {stage === 'createNotice' ? (\n <>\n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n\n {stage === 'ReviewNotice' ? (\n <>\n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n\n {stage === 'CompleteNotice' ? (\n <>\n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n\n {this.currentStage(account)}\n
    \n );\n }\n}\n\nCreateNotice.propTypes = {\n accounts: PropTypes.any,\n withdrawalAccount: PropTypes.object,\n isFetching: PropTypes.bool,\n history: PropTypes.any,\n onCreate: PropTypes.func,\n match: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.func,\n resetMakeWithdrawal: PropTypes.func,\n makeaWithdraw: PropTypes.func,\n holidays: PropTypes.any,\n account: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbSavingsServicingDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbSavingsServicingDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...mapSavingsServicingDispatchToProps },\n)(withRouter(CreateNotice));\n","import React, { Component } from 'react';\nimport { Row, Col } from 'reactstrap';\nimport { Content, FormattedDate, FormattedCurrency } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\n\nclass NoticeToWithdraw extends Component {\n onCancelHandler = () => {\n const { onCancel, loopIndex } = this.props;\n onCancel(loopIndex);\n };\n\n render() {\n const {\n withdrawal,\n index,\n accountKey,\n account: {\n CurrencyCode,\n ExtendedProperties: {\n NominatedAccountNumber,\n NominatedSortCode,\n NominatedAccountName,\n } = {},\n } = {},\n loopIndex,\n } = this.props;\n\n const { ExtendedProperties: { Cancellable } = {} } = withdrawal;\n\n return (\n
    \n \n \n \n \n \n \n \n {NominatedAccountName}\n {`${NominatedSortCode} ${NominatedAccountNumber} `}\n \n \n \n \n \n {withdrawal.Amount !== 0 ? (\n \n ) : (\n \n )}\n \n \n \n \n \n \n \n \n \n \n {Cancellable && (\n \n \n {loopIndex}\n \n )}\n \n \n
    \n
    \n );\n }\n}\n\nNoticeToWithdraw.propTypes = {\n withdrawal: PropTypes.any,\n account: PropTypes.any,\n onCancel: PropTypes.func,\n loopIndex: PropTypes.any,\n index: PropTypes.any,\n accountKey: PropTypes.any,\n};\n\nexport default NoticeToWithdraw;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Fade } from 'reactstrap';\nimport { Link, withRouter } from 'react-router-dom';\nimport { Content } from '@myie/interact-dom';\nimport NoticeToWithdraw from './NoticeToWithdraw';\nimport { Utility } from '@myie/interact';\nimport { RedirectByAccountDropdown } from '@myie/interact-accounts-dom';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as savingsMapDispatchToProps } from '@myie/interact-account-type-savings';\nimport { connect } from 'react-redux';\nimport moment from 'moment';\n\nclass NoticeToWithdrawList extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = this.initialState();\n }\n\n initialState = () => {\n const { accounts, match } = this.props;\n let account;\n if (accounts) {\n account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n } else {\n account = null;\n }\n return {\n account: account,\n range: this.setInitialRange(this.props),\n };\n };\n\n setInitialRange = props => {\n if (props.range) {\n return props.range;\n }\n const to = moment\n .utc()\n .startOf('day')\n .toISOString();\n const from = moment\n .utc()\n .subtract(12, 'months')\n .add(1, 'day')\n .startOf('day')\n .toISOString();\n return {\n To: to,\n From: from,\n Latest: true,\n };\n };\n\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { match, accounts } = this.props;\n const { fetchSavingsAccountTransactionsIfNeeded, isFetching } = this.props;\n if (\n this.state.account &&\n prevState.account !== this.state.account &&\n !isFetching\n ) {\n fetchSavingsAccountTransactionsIfNeeded({\n AccountKey: this.state.account.AccountKey,\n Range: this.state.range,\n });\n }\n if (accounts && prevProps.accounts !== accounts) {\n const account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n this.setState({ ...this.state, account });\n }\n }\n\n onChangeAccount = e => {\n const { fetchAccountsIfNeeded, accounts } = this.props;\n fetchAccountsIfNeeded();\n const { value } = e.target;\n if (accounts && accounts.Accounts) {\n const account = accounts.Accounts.find(function(element) {\n return element.AccountKey.Key === value;\n });\n this.setState({ ...this.initialState(), account });\n }\n };\n\n getTransactions = (transactions, account, accountKey) => {\n let list = [];\n if (\n transactions &&\n transactions.Transactions &&\n transactions.Transactions.length > 0\n ) {\n transactions.Transactions.forEach((transaction, index) => {\n if (transaction.ExtendedProperties.Type === 'PendingTransaction') {\n list.push(\n ,\n );\n }\n });\n }\n\n return list;\n };\n\n render() {\n const { isFetching, accounts = {} } = this.props;\n const { account } = this.state;\n if (!account) {\n return null;\n }\n\n const { AccountKey: { Key } = {}, transactions = {} } = account;\n const accountKey = Key && Utility.hexEncode(Key);\n const pendingTransactions = this.getTransactions(\n transactions,\n account,\n accountKey,\n );\n\n const allNotices = isFetching ? (\n \n ) : (\n pendingTransactions\n );\n\n return (\n
    \n

    \n \n

    \n\n \n {!isFetching ? (\n pendingTransactions.length > 0 ? (\n <>\n

    \n \n

    \n

    \n \n

    \n \n ) : (\n \n )\n ) : null}\n {allNotices}\n
    \n \n \n \n \n \n \n
    \n
    \n );\n }\n}\n\nNoticeToWithdrawList.propTypes = {\n accounts: PropTypes.any,\n isFetching: PropTypes.bool,\n selectedAccount: PropTypes.object,\n history: PropTypes.any,\n withdrawalNotices: PropTypes.any,\n match: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n fetchSavingsAccountTransactionsIfNeeded: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...savingsMapDispatchToProps },\n)(withRouter(NoticeToWithdrawList));\n","import React, { Component } from 'react';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Content } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\n\nclass CancellationSuccess extends Component {\n componentDidMount() {\n const { resetCancellation } = this.props;\n resetCancellation();\n }\n render() {\n const { accountKey } = this.props;\n\n return (\n <>\n

    \n \n

    \n
    \n \n \n \n
    \n \n );\n }\n}\n\nCancellationSuccess.propTypes = {\n resetCancellation: PropTypes.func,\n accountKey: PropTypes.any,\n};\n\nexport default connect(\n null,\n mapDispatchToProps,\n)(CancellationSuccess);\n","import React, { Component } from 'react';\nimport { Content, FormattedCurrency, FormattedDate } from '@myie/interact-dom';\nimport { Col, Row } from 'reactstrap';\nimport { Button } from 'reactstrap';\nimport { Link, withRouter } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapSavingsServicingDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\nimport { Utility } from '@myie/interact';\nimport Currency from 'react-currency-formatter';\n\nclass Cancel extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n accounts: [],\n selectedAccountKey: null,\n selectedAccount: {},\n selectedTransaction: {},\n disabled: false,\n };\n }\n\n onConfirmCancellation = () => {\n if (this.state.disabled) {\n return;\n }\n this.setState({ disabled: true });\n const { cancelNoticeToWithdraw, identifier, account = {} } = this.props;\n const { transactions: { Transactions = [] } = {} } = account;\n let transaction = Transactions.find(\n element => element.TransactionIdentifier === identifier,\n );\n cancelNoticeToWithdraw({\n AccountKey: account && account.AccountKey,\n TransactionIdentifier: transaction.TransactionIdentifier,\n });\n };\n\n render() {\n const { AccountKey: { Key } = {} } = this.props.account;\n const accountKey = Key && Utility.hexEncode(Key);\n\n const { account = {}, identifier } = this.props;\n const {\n CurrencyCode,\n RemainingAllowance,\n ExtendedProperties: {\n NominatedAccountNumber,\n NominatedSortCode,\n NominatedAccountName,\n } = {},\n } = account;\n let transaction = {};\n\n const { transactions: { Transactions = [] } = {} } = account;\n\n transaction = Transactions.find(\n element => element.TransactionIdentifier === identifier,\n );\n\n return (\n <>\n \n\n
    \n \n \n \n \n \n {' '}\n {Currency({\n quantity: RemainingAllowance,\n currency: CurrencyCode,\n })}\n \n {account.SortCode} - {account.AccountNumber}\n \n \n \n \n \n \n {NominatedAccountName}\n \n {NominatedSortCode}-{NominatedAccountNumber}\n \n \n \n \n \n \n {transaction.Amount !== 0 ? (\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\nCancel.propTypes = {\n match: PropTypes.any,\n accounts: PropTypes.any,\n cancellationResponse: PropTypes.any,\n message: PropTypes.any,\n history: PropTypes.any,\n account: PropTypes.any,\n identifier: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.func,\n cancelNoticeToWithdraw: PropTypes.func,\n};\n\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbSavingsServicingDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbSavingsServicingDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...mapSavingsServicingDispatchToProps },\n)(withRouter(Cancel));\n","import React, { Component } from 'react';\nimport { AppMeta, Content } from '@myie/interact-dom';\nimport { BreadcrumbItem, Breadcrumb } from 'reactstrap';\nimport { withRouter } from 'react-router-dom';\nimport { Utility } from '@myie/interact';\nimport PropTypes from 'prop-types';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapSavingsServicingDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\nimport CancellationSuccess from './CancellationSuccess';\nimport Cancel from './Cancel';\nimport moment from 'moment';\n\nclass CancelNoticeToWithdrawView extends Component {\n constructor(props) {\n super(props);\n\n this.state = this.initialState();\n }\n\n initialState = () => {\n const { accounts, match } = this.props;\n let account;\n if (accounts) {\n account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n } else {\n account = null;\n }\n return {\n account: account,\n stage: 'ConfirmCancel',\n withdrawDate: moment(),\n form: {},\n identifier: match.params.referenceNo,\n };\n };\n\n // these response status force the form to be reset and switched back to the first page\n static getDerivedStateFromProps = (nextProps, state) => {\n const {\n cancellationResponse = {},\n accounts = {},\n fetchSavingsAccountTransactions,\n isFetching,\n } = nextProps;\n\n const setInitialRange = props => {\n if (props.range) {\n return props.range;\n }\n const to = moment\n .utc()\n .startOf('day')\n .toISOString();\n const from = moment\n .utc()\n .subtract(12, 'months')\n .add(1, 'day')\n .startOf('day')\n .toISOString();\n return {\n To: to,\n From: from,\n Latest: true,\n };\n };\n if (\n accounts &&\n state.account &&\n !state.account.transactions &&\n !isFetching\n ) {\n fetchSavingsAccountTransactions({\n AccountKey: state.account.AccountKey,\n Range: setInitialRange(nextProps),\n });\n }\n\n if (cancellationResponse && cancellationResponse.Success) {\n return {\n stage: 'Success',\n };\n }\n\n return null;\n };\n\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n onConfirmCancellation = () => {\n const { cancelNoticeToWithdraw } = this.props;\n const { selectedAccount, selectedTransaction } = this.state;\n cancelNoticeToWithdraw({\n AccountKey: selectedAccount && selectedAccount.AccountKey,\n TransactionIdentifier: selectedTransaction.TransactionIdentifier,\n });\n };\n\n // select current stage\n currentStage = account => {\n const { accounts = {} } = this.props;\n const { AccountKey: { Key } = {} } = account;\n const accountKey = Key && Utility.hexEncode(Key);\n\n switch (this.state.stage) {\n case 'ConfirmCancel':\n return (\n \n );\n case 'Success':\n return ;\n\n default:\n }\n };\n\n render() {\n const { stage, account } = this.state;\n if (!account) {\n return null;\n }\n\n return (\n <>\n {stage === 'ConfirmCancel' ? (\n <>\n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n {stage === 'Success' ? (\n <>\n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n\n {this.currentStage(account)}\n \n );\n }\n}\n\nCancelNoticeToWithdrawView.propTypes = {\n match: PropTypes.any,\n accounts: PropTypes.any,\n cancellationResponse: PropTypes.any,\n message: PropTypes.any,\n history: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.func,\n cancelNoticeToWithdraw: PropTypes.func,\n fetchSavingsAccountTransactionsIfNeeded: PropTypes.func,\n isFetching: PropTypes.any,\n referenceNo: PropTypes.any,\n range: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbSavingsServicingDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbSavingsServicingDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...mapSavingsServicingDispatchToProps },\n)(withRouter(CancelNoticeToWithdrawView));\n","import React, { Component } from 'react';\nimport { PrivateRoute, NoMatch } from '@myie/interact-dom';\nimport { Switch, Route } from 'react-router-dom';\nimport CreateNotice from './CreateNoticeToWithdraw/CreateNotice';\nimport NoticeToWithdrawList from './ListNoticeToWithdraws';\nimport CancelNoticeToWithdrawView from './CancelNoticeToWithdraw';\n\nclass NoticeToWithdrawals extends Component {\n render() {\n return (\n
    \n \n \n\n \n \n \n \n
    \n );\n }\n}\n\nexport { NoticeToWithdrawals };\n","import React from 'react';\nimport { Markdown, Content } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\nimport NominatedAccount from '../shared/NominatedAccount';\nimport WithdrawalWithClose from '../shared/WithdrawalWithClose';\nimport WithdrawalAccount from '../shared/WithdrawalAccount';\nimport { RedirectByAccountDropdown } from '@myie/interact-accounts-dom';\n\nclass MakePayment extends React.Component {\n constructor(props) {\n super(props);\n const { account = {} } = props;\n this.state = {\n account: account,\n };\n }\n\n submitForm = form => {\n const { submitForm } = this.props;\n submitForm('ReviewPayment', form);\n };\n\n render() {\n const { account } = this.state;\n const {\n accounts = {},\n onChangeAccount,\n onCancelled,\n actionDate,\n } = this.props;\n if (!account) {\n return null;\n }\n return (\n <>\n \n \n\n

    \n \n

    \n \n\n

    \n \n

    \n

    \n \n

    \n\n \n \n \n );\n }\n}\n\nMakePayment.propTypes = {\n withdrawalAccount: PropTypes.object,\n history: PropTypes.object,\n resetMakeWithdrawal: PropTypes.func,\n accounts: PropTypes.object,\n fetchAccountsIfNeeded: PropTypes.func,\n account: PropTypes.object,\n makeaWithdraw: PropTypes.func,\n onChangeAccount: PropTypes.func,\n match: PropTypes.any,\n actionDate: PropTypes.any,\n submitForm: PropTypes.func,\n onCancelled: PropTypes.func,\n};\n\nexport default MakePayment;\n","import React, { Component } from 'react';\nimport { Content, FormattedCurrency, Switch } from '@myie/interact-dom';\nimport { Button } from 'reactstrap';\nimport { withRouter } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Col, Row } from 'reactstrap';\nimport moment from 'moment';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport Currency from 'react-currency-formatter';\n\nclass Confirmation extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n date: moment(new Date())\n .utc()\n .format('YYYY-MM-DD'),\n message: '',\n disabled: false,\n };\n }\n\n // these response status force the form to be reset and switched back to the first page\n static getDerivedStateFromProps = nextProps => {\n const { makeWithdrawResponse = {} } = nextProps;\n\n if (\n makeWithdrawResponse &&\n makeWithdrawResponse.ResponseStatus === 'Failed'\n ) {\n return {\n message: 'failed',\n disabled: false,\n };\n }\n\n return null;\n };\n\n submit = () => {\n if (this.state.disabled) {\n return;\n }\n this.setState({ disabled: true });\n const { onSubmitWithdrawal } = this.props;\n onSubmitWithdrawal();\n };\n\n cancelWithdrawal = () => {\n const { setStage } = this.props;\n setStage('MakePayment');\n };\n render() {\n const { form = {}, account = {} } = this.props;\n let amount =\n form && form.amount && form.amount.value ? form.amount.value : '';\n let reference =\n form && form.reference && form.reference.value\n ? form.reference.value\n : '';\n const closeOption = form.closeAccount ? form.closeAccount.value : false;\n const {\n CurrencyCode,\n RemainingAllowance,\n ExtendedProperties: {\n NominatedAccountNumber,\n NominatedSortCode,\n NominatedAccountName,\n } = {},\n } = account;\n return (\n <>\n \n

    \n \n

    \n\n
    \n \n \n \n \n \n {account.AccountName}{' '}\n {Currency({\n quantity: RemainingAllowance,\n currency: CurrencyCode,\n })}\n \n {account.SortCode} - {account.AccountNumber}\n \n \n \n \n \n \n {NominatedAccountName}\n \n {NominatedSortCode} - {NominatedAccountNumber}\n \n \n {!closeOption ? (\n <>\n {' '}\n \n \n \n \n \n \n {reference ? (\n <>\n {' '}\n \n \n \n \n {reference}\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\nConfirmation.propTypes = {\n history: PropTypes.any,\n withdrawalParam: PropTypes.any,\n error: PropTypes.any,\n isFetching: PropTypes.any,\n makeWithdrawResponse: PropTypes.any,\n makeaWithdraw: PropTypes.func,\n account: PropTypes.any,\n form: PropTypes.any,\n setStage: PropTypes.any,\n onSubmitWithdrawal: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { customccbSavingsServicingDefinition } = state;\n return {\n ...customccbSavingsServicingDefinition,\n };\n};\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(withRouter(Confirmation));\n","import React, { Component } from 'react';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Content, FormattedCurrency } from '@myie/interact-dom';\nimport { Col, Row } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport Currency from 'react-currency-formatter';\n\nclass WithdrawalSuccess extends Component {\n componentDidMount() {\n const { resetMakeWithdrawal } = this.props;\n resetMakeWithdrawal();\n }\n render() {\n const { form = {}, account = {} } = this.props;\n let amount =\n form && form.amount && form.amount.value ? form.amount.value : '';\n const closeOption = form.closeAccount.value;\n const {\n CurrencyCode,\n Balance,\n ExtendedProperties: {\n NominatedAccountNumber,\n NominatedSortCode,\n NominatedAccountName,\n } = {},\n } = account;\n return (\n <>\n

    \n \n

    \n
    \n \n \n \n \n \n {account.AccountName}{' '}\n {Currency({\n quantity: Balance,\n currency: CurrencyCode,\n })}\n \n {account.SortCode} - {account.AccountNumber}\n \n \n \n \n \n \n {NominatedAccountName}\n \n {NominatedSortCode} - {NominatedAccountNumber}\n \n \n {!closeOption ? (\n <>\n \n \n \n \n \n \n \n ) : (\n ''\n )}\n \n \n \n \n
    \n \n );\n }\n}\n\nWithdrawalSuccess.propTypes = {\n match: PropTypes.any,\n resetMakeWithdrawal: PropTypes.func,\n account: PropTypes.any,\n form: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { customccbSavingsServicingDefinition } = state;\n return {\n ...customccbSavingsServicingDefinition,\n };\n};\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(WithdrawalSuccess);\n","import React from 'react';\nimport { BreadcrumbItem, Breadcrumb, Alert } from 'reactstrap';\nimport { Content, AppMeta } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\nimport { withRouter } from 'react-router-dom';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as mapSavingsServicingDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\nimport { Utility } from '@myie/interact';\nimport moment from 'moment';\nimport MakePayment from './MakePayment';\nimport Confirmation from './Confirmation';\nimport WithdrawalSuccess from './WithdrawalSuccess';\n\nclass MakeWithdrawal extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = this.initialState();\n }\n\n initialState = () => {\n const { accounts, match } = this.props;\n let account;\n if (accounts) {\n account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n } else {\n account = null;\n }\n return {\n account: account,\n stage: 'MakePayment',\n actionDate: moment(new Date())\n .utc()\n .format('YYYY-MM-DD'),\n form: {},\n };\n };\n\n // these response status force the form to be reset and switched back to the first page\n static getDerivedStateFromProps = nextProps => {\n const { makeWithdrawResponse = {} } = nextProps;\n\n if (\n makeWithdrawResponse &&\n makeWithdrawResponse.ResponseStatus === 'Success'\n ) {\n return {\n stage: 'CompletePayment',\n };\n }\n\n return null;\n };\n\n componentDidMount() {\n const { resetMakeWithdrawal, fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n resetMakeWithdrawal();\n }\n\n componentWillUnmount() {\n const { resetMakeWithdrawal } = this.props;\n resetMakeWithdrawal();\n }\n\n componentDidUpdate(prevProps) {\n const { match, accounts } = this.props;\n if (accounts && prevProps.accounts !== accounts) {\n const account = accounts.Accounts.find(function(element) {\n return Utility.hexEncode(element.AccountKey.Key) === match.params.id;\n });\n this.setState({ ...this.state, account });\n }\n }\n\n // common onChangeAccount function\n onChangeAccount = e => {\n const { resetMakeWithdrawal, fetchAccountsIfNeeded, accounts } = this.props;\n fetchAccountsIfNeeded();\n resetMakeWithdrawal();\n const { value } = e.target;\n if (accounts && accounts.Accounts) {\n const account = accounts.Accounts.find(function(element) {\n return element.AccountKey.Key === value;\n });\n this.setState({ ...this.initialState(), account });\n }\n };\n\n // change the stage of the form\n setStage = stage => {\n this.setState({ ...this.state, stage, message: null });\n };\n\n setForm = form => {\n this.setState({ ...this.state, form, message: null });\n };\n\n onCancelleWithdrawal = () => {\n const { history } = this.props;\n history.push('/accounts/list');\n };\n\n //update the stage in state\n submitForm = (stage, form) => {\n if (stage === 'MakePayment') {\n const { resetMakeWithdrawal } = this.props;\n resetMakeWithdrawal();\n }\n\n this.setState({ ...this.state, stage, form, message: null });\n };\n\n onCancelleWithdrawal = () => {\n const { history } = this.props;\n history.push('/accounts/list');\n };\n\n onSubmitWithdrawal = () => {\n const { account, form } = this.state;\n const { makeaWithdraw } = this.props;\n let formCloseAccount = form.closeAccount.value;\n let request = {\n AccountKey: account.AccountKey,\n WithdrawalInformation: {\n ActionDate: this.state.actionDate,\n Amount: form.amount.value.replace(/,/g, ''),\n CloseAccount: false,\n PaymentReference: form.reference.value ? form.reference.value : null,\n },\n };\n if (formCloseAccount) {\n request = {\n AccountKey: account.AccountKey,\n WithdrawalInformation: {\n ActionDate: this.state.actionDate,\n CloseAccount: true,\n },\n };\n }\n\n makeaWithdraw(request);\n };\n\n // select current stage\n currentStage = () => {\n const { accounts = {} } = this.props;\n const { account = {} } = this.state;\n switch (this.state.stage) {\n case 'MakePayment':\n return (\n \n );\n case 'ReviewPayment':\n return (\n \n );\n case 'CompletePayment':\n return (\n \n );\n\n default:\n }\n };\n\n render() {\n const { account, stage } = this.state;\n const { error, isFetching } = this.props;\n if (!account) {\n return null;\n }\n return (\n <>\n {stage === 'MakePayment' ? (\n <>\n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n\n {stage === 'ReviewPayment' ? (\n <>\n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n\n {stage === 'CompletePayment' ? (\n <>\n \n

    \n \n

    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n {!isFetching && error ? (\n \n {error}\n \n ) : null}\n {this.currentStage()}\n \n );\n }\n}\n\nMakeWithdrawal.propTypes = {\n withdrawalAccount: PropTypes.object,\n history: PropTypes.object,\n resetMakeWithdrawal: PropTypes.func,\n accounts: PropTypes.object,\n fetchAccountsIfNeeded: PropTypes.func,\n makeaWithdraw: PropTypes.func,\n match: PropTypes.any,\n error: PropTypes.any,\n holidays: PropTypes.any,\n isFetching: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbSavingsServicingDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbSavingsServicingDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...mapSavingsServicingDispatchToProps },\n)(withRouter(MakeWithdrawal));\n","import React, { Component } from 'react';\nimport { Switch, Route } from 'react-router-dom';\nimport { PrivateRoute, NoMatch } from '@myie/interact-dom';\nimport MakeWithdrawal from './MakeWithdrawal';\n\nclass MakeWithdrawalRoute extends Component {\n render() {\n return (\n
    \n \n \n \n \n
    \n );\n }\n}\n\nexport default MakeWithdrawalRoute;\n","export const storage = {\n name: 'shortApply',\n};\n","import React, { Fragment } from 'react';\nimport { Link } from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport { Content, AppMeta } from '@myie/interact-dom';\nimport { mapDispatchToProps as mapSavingsServicingDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { ApplyAccountSummaryComponent } from '@myie/interact-savings-servicing-dom';\nimport PropTypes from 'prop-types';\nimport { CONTACTS } from '@myie/interact-local-dom';\n\nclass ShortApplyList extends React.Component {\n componentDidMount() {\n window.scrollTo(0, 0);\n }\n\n renderOutput = () => {\n const { allProducts } = this.props;\n let output = [];\n let shortApplyAvailable = false;\n if (allProducts) {\n allProducts.forEach(product => {\n if (product.Display_For_Short_Apply === 'Y') {\n shortApplyAvailable = true;\n }\n });\n }\n if (shortApplyAvailable) {\n output.push(\n \n \n \n \n \n ,\n );\n }\n\n if (output.length === 0) {\n if (!this.props.isFetching && allProducts) {\n output.push(\n \n \n
    \n \n \n \n
    \n
    ,\n );\n } else {\n output.push(\n

    \n \n

    ,\n );\n }\n }\n return output;\n };\n\n render() {\n return (\n
    \n \n \n {this.renderOutput()}\n
    \n );\n }\n}\n\nShortApplyList.propTypes = {\n accounts: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n updateUrl: PropTypes.func,\n getAllProducts: PropTypes.any,\n allProducts: PropTypes.any,\n setStage: PropTypes.func,\n setStateDynamic: PropTypes.func,\n isFetching: PropTypes.any,\n};\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbSavingsServicingDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbSavingsServicingDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapSavingsServicingDispatchToProps,\n },\n)(ShortApplyList);\n","import React, { Component } from 'react';\nimport { withRouter } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { storage } from './storageName';\nimport ShortApplyList from './ShortApplyList';\nimport { mapDispatchToProps as userManagementDispatches } from '@myie/interact-user-management';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport loadStateHOC from '../../shared/stateManager/loadStateHOC';\nimport { mapDispatchToProps as ccbOrganisationDispatches } from '@myie/interact-ccb-organisation';\n\nclass OptionOneAndThree extends Component {\n constructor(props) {\n super(props);\n this.timeoutID = null;\n this.state = {\n message: '',\n disabled: false,\n };\n }\n\n componentDidMount() {\n const { getAllProducts, allProducts } = this.props;\n if (!allProducts) {\n getAllProducts({\n checkLimitExceeded: true,\n isShortApply: true,\n });\n }\n }\n\n componentWillUnmount() {\n const { resetShortapply } = this.props;\n resetShortapply();\n }\n\n render() {\n return (\n \n );\n }\n}\n\nOptionOneAndThree.propTypes = {\n submit: PropTypes.func,\n account: PropTypes.any,\n getAllProducts: PropTypes.any,\n form: PropTypes.any,\n reviewPaymentHeader: PropTypes.string,\n showMaturity: PropTypes.any,\n cancelWithdrawal: PropTypes.func,\n changeHeader: PropTypes.func,\n setStateDynamic: PropTypes.func,\n getAccountDetails: PropTypes.func,\n userDetails: PropTypes.any,\n accounts: PropTypes.object,\n fetchAccountsIfNeeded: PropTypes.func,\n resetShortapply: PropTypes.func,\n fetchUserDetailsIfNeeded: PropTypes.func,\n savingshortapply: PropTypes.object,\n stateData: PropTypes.any,\n refreshUrl: PropTypes.func,\n updateUrl: PropTypes.any,\n urlParams: PropTypes.any,\n allProducts: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const {\n userManagementDefinition,\n accountsDefinition,\n customccbSavingsServicingDefinition,\n customccbOrganisationDefinition,\n } = state;\n return {\n ...customccbSavingsServicingDefinition,\n ...userManagementDefinition,\n ...accountsDefinition,\n ...customccbOrganisationDefinition,\n };\n};\nexport default loadStateHOC(\n connect(\n mapStateToProps,\n {\n ...userManagementDispatches,\n ...mapDispatchToProps,\n ...ccbOrganisationDispatches,\n },\n )(withRouter(OptionOneAndThree)),\n storage.name,\n);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { Validate } from '@myie/interact';\nimport { Row, Col, Form, Button, BreadcrumbItem } from 'reactstrap';\nimport {\n Content,\n RadioGroup,\n Radio,\n FormErrorList,\n CONSTANTS,\n RULES,\n DropDown,\n Currency,\n TextArea,\n AppMeta,\n} from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nimport { mapDispatchToProps as mapSavingsServicingDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { mapDispatchToProps as ccbOrganisationDispatches } from '@myie/interact-ccb-organisation';\nimport { Session } from '@myie/interact';\n\nimport PropTypes from 'prop-types';\n\nclass ShortApplyApplication extends React.Component {\n constructor(props) {\n super(props);\n this.state = this.initialState(props);\n }\n\n initialState = props => {\n const { formData, selectedProduct, selectedOrganisationDetails } = props;\n let data = formData ? formData : null;\n const organisationDetailsChangedInputRules = {\n rules: {\n stop: true,\n required: {\n message:\n 'Please confirm which details about the organisation have changed.',\n },\n format: {\n regex: /^[^\\s](.|[\\r\\n]){1,750}$/,\n message: 'Please enter a valid message.',\n },\n },\n };\n const formItems = {\n organisationSource: {\n rules: {\n stop: true,\n required: {\n message:\n 'Please confirm which organisation you are opening the account on behalf of',\n },\n },\n value: data ? data.organisationSource : '',\n },\n orgDetailsChanged: {\n rules: {\n required: {\n message:\n 'Please confirm if your organisation details have changed.',\n },\n },\n value: data ? data.orgDetailsChanged : '',\n },\n organisationDetailsChangedInput: {\n rules:\n data?.orgDetailsChanged === CONSTANTS.YES\n ? { ...organisationDetailsChangedInputRules.rules }\n : {},\n value: data ? data.organisationDetailsChangedInput : '',\n },\n depositAmount: {\n rules: {\n stop: true,\n required: {\n message: 'Please enter the amount you would like to invest.',\n },\n format: {\n regex: RULES.ammountFormat,\n message: 'Please enter a valid amount.',\n },\n minAmountCheckWithInputValue: {\n message: `Please enter a value that is above the minimum investment amount.`,\n comparison: () => {\n return selectedProduct.Minimum_investment;\n },\n },\n maxAmountCheckWithInputValue: {\n message: `Please enter a value that is below the maximum investment amount`,\n comparison: () => {\n return selectedProduct.Maximum_investment;\n },\n },\n },\n value: data ? data.depositAmount : '',\n },\n depositSource: {\n rules: {\n stop: true,\n required: {\n message: 'Please select where the deposit has come from.',\n },\n },\n value: data ? data.depositSource : '',\n },\n depositMethod: {\n rules: {\n stop: true,\n required: {\n message: 'Please confirm how you will make your deposit.',\n },\n },\n value: data ? data.depositMethod : '',\n },\n };\n\n return {\n data: data ? data : {},\n form: formItems,\n organisationDetailsChangedInputRules:\n organisationDetailsChangedInputRules.rules,\n selectedOrganisationDetails: selectedOrganisationDetails,\n };\n };\n\n componentDidUpdate() {\n this.initialState(this.props);\n const { organisation } = this.props;\n if (organisation && Array.isArray(organisation.codes)) {\n const { organisationDetailsFetch, isFetching } = this.props;\n let detailsCount = organisation.details?.length;\n if (!isFetching && organisation.codes?.length > detailsCount) {\n const request = {\n CustomerId: organisation.codes[detailsCount].Id,\n };\n organisationDetailsFetch(request);\n }\n }\n }\n\n componentDidMount() {\n window.scrollTo(0, 0);\n const { organisation } = this.props;\n if (!organisation) {\n const customer = Session.customer();\n const request = {\n PersonId: customer.UserId,\n };\n const { organisationfetch } = this.props;\n organisationfetch(request);\n }\n }\n\n updateCurrency = e => {\n let { name, value } = e.target;\n const { data } = this.state;\n let newValue = value;\n newValue = new Intl.NumberFormat().format(value.replace(/,/g, ''));\n\n // Deal with trailing . or .0 or .n0\n if (value.charAt(value.length - 1) === '.') {\n newValue += '.';\n }\n if (value.slice(value.length - 2) === '.0') {\n newValue += '.0';\n }\n if (\n value.charAt(value.length - 3) === '.' &&\n value.charAt(value.length - 1) === '0'\n ) {\n if (value.charAt(value.length - 2) === '0') {\n newValue += '.0';\n }\n newValue += '0';\n }\n if (newValue === '0') {\n newValue = '';\n }\n let { form } = this.state;\n form = Validate.input(name, newValue, form, true);\n data[name] = value;\n\n this.setState({ ...this.state, form });\n };\n\n onChange = e => {\n this.updateForm(e);\n };\n\n onBlur = e => {\n this.updateForm(e);\n };\n\n updateForm = e => {\n const { name, value } = e.target;\n let { form, data } = this.state;\n form = Validate.input(name, value, form, true);\n data[name] = value;\n this.setState({ ...this.state, form, data }, () => {\n if (name === 'organisationSource') {\n this.updateOrganisationDetails(form.organisationSource.value);\n }\n });\n };\n\n updateOrganisationDetails = orgId => {\n const { organisationDetails } = this.props;\n let selectedOrgDetails = organisationDetails.find(\n item => item.CustomerId === orgId,\n );\n this.setState({ selectedOrganisationDetails: selectedOrgDetails });\n };\n\n onEvent = e => {\n const { name, value } = e.target;\n let { form, organisationDetailsChangedInputRules, data } = this.state;\n form = Validate.input(name, value, form, true);\n if (name === 'orgDetailsChanged' && value === CONSTANTS.YES) {\n form.organisationDetailsChangedInput.rules = {\n ...organisationDetailsChangedInputRules,\n };\n }\n if (name === 'orgDetailsChanged' && value === CONSTANTS.NO) {\n form.organisationDetailsChangedInput.rules = {};\n form = Validate.input('organisationDetailsChangedInput', '', form, true);\n data['organisationDetailsChangedInput'] = '';\n }\n data[name] = value;\n this.setState({ ...this.state, form, data });\n };\n\n onSubmitHandler = e => {\n e.preventDefault();\n\n let { form, data, selectedOrganisationDetails } = this.state;\n let { updateUrl, setStateDynamic } = this.props;\n let actualForm;\n if (form.depositAmount.value === '0') {\n form.depositAmount.value = '';\n }\n actualForm = Validate.form(form);\n this.setState({ ...this.state, form: actualForm });\n\n if (!actualForm.approved) {\n window.scrollTo(0, 0);\n return;\n }\n setStateDynamic({\n stage: 'review',\n });\n\n let stateData = {\n formData: data,\n selectedOrganisationDetails,\n url: {\n pageStage: 'review',\n },\n };\n updateUrl(stateData);\n //setShortapply(request);\n };\n\n onClick = e => {\n const { name, checked } = e.target;\n let { form, data } = this.state;\n\n form = Validate.input(name, checked ? 'true' : null, form);\n data[name] = checked ? 'true' : null;\n\n this.setState({ ...this.state, form, data });\n };\n\n dropdownOptions(item, index) {\n let keys = Object.keys(item);\n return (\n \n );\n }\n\n organisationDropdownOption(item, index, name) {\n let keys = Object.keys(item);\n return (\n \n );\n }\n\n onBlur = e => {\n this.updateForm(e);\n };\n\n changeStage = () => {\n const { setStateDynamic } = this.props;\n setStateDynamic({ stage: 'list' });\n };\n\n valueToCurrencyFormat = (number, code) => {\n const formatter = new Intl.NumberFormat('en-us', {\n style: 'currency',\n currency: code,\n });\n return formatter.format(number);\n };\n\n render() {\n const currencyCode = 'GBP';\n const { selectedProduct, organisation } = this.props;\n const organisationList = organisation?.codes;\n const { form, selectedOrganisationDetails } = this.state;\n if (!selectedProduct) {\n return null;\n }\n let { CorrespondenceAddress = null, RegisteredAddress = null } =\n selectedOrganisationDetails || {};\n\n return (\n
    \n \n \n
    \n
      \n \n \n \n \n \n \n 2: \n \n \n \n \n \n \n \n \n \n 2: \n \n \n \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n {selectedProduct.Product_Name}\n \n \n {organisationList?.length > 0 && (\n \n \n {organisationList?.length &&\n organisationList.map((item, index) => {\n return this.organisationDropdownOption(\n item,\n index,\n 'organisationSource',\n );\n })}\n \n )}\n\n {this.state.selectedOrganisationDetails && (\n \n \n \n \n \n
    \n {CorrespondenceAddress?.Street ? (\n \n {CorrespondenceAddress?.Street}\n
    \n
    \n ) : null}\n {CorrespondenceAddress?.District ? (\n \n {CorrespondenceAddress?.District}\n
    \n
    \n ) : null}\n {CorrespondenceAddress?.Town ? (\n \n {CorrespondenceAddress?.Town}\n
    \n
    \n ) : null}\n {CorrespondenceAddress?.County ? (\n \n {CorrespondenceAddress?.County}\n
    \n
    \n ) : null}\n {CorrespondenceAddress?.Postcode ? (\n \n {CorrespondenceAddress?.Postcode}\n
    \n
    \n ) : null}\n
    \n \n \n \n \n \n
    \n {RegisteredAddress?.Street ? (\n \n {RegisteredAddress?.Street}\n
    \n
    \n ) : null}\n {RegisteredAddress?.District ? (\n \n {RegisteredAddress?.District}\n
    \n
    \n ) : null}\n {RegisteredAddress?.Town ? (\n \n {RegisteredAddress?.Town}\n
    \n
    \n ) : null}\n {RegisteredAddress?.County ? (\n \n {RegisteredAddress?.County}\n
    \n
    \n ) : null}\n {RegisteredAddress?.Postcode ? (\n \n {RegisteredAddress?.Postcode}\n
    \n
    \n ) : null}\n
    \n \n
    \n )}\n \n \n \n {form.orgDetailsChanged &&\n form.orgDetailsChanged.value &&\n form.orgDetailsChanged.value === CONSTANTS.YES ? (\n \n ) : (\n ''\n )}\n \n \n \n \n \n {CONSTANTS &&\n CONSTANTS.DEPOSIT_SOURCE.map((item, index) => {\n return this.dropdownOptions(item, index, 'depositSource');\n })}\n \n \n \n {CONSTANTS &&\n CONSTANTS.DEPOSIT_METHOD.map((item, index) => {\n return this.dropdownOptions(item, index, 'depositMethod');\n })}\n \n
    \n \n \n \n \n \n \n
    \n \n
    \n );\n }\n}\n\nShortApplyApplication.propTypes = {\n accounts: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n onSubmit: PropTypes.func,\n setStage: PropTypes.func,\n userDetails: PropTypes.any,\n updateUrl: PropTypes.func,\n setStateDynamic: PropTypes.any,\n formData: PropTypes.any,\n selectedProduct: PropTypes.any,\n data: PropTypes.any,\n setShortapply: PropTypes.func,\n organisationDetails: PropTypes.any,\n organisation: PropTypes.any,\n organisationDetailsFetch: PropTypes.func,\n organisationfetch: PropTypes.func,\n isFetching: PropTypes.bool,\n};\nconst mapStateToProps = state => {\n const {\n accountsDefinition,\n customccbSavingsServicingDefinition,\n customccbOrganisationDefinition,\n } = state;\n return {\n ...accountsDefinition,\n ...customccbSavingsServicingDefinition,\n ...customccbOrganisationDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapSavingsServicingDispatchToProps,\n ...ccbOrganisationDispatches,\n },\n)(ShortApplyApplication);\n","const appUtility = (function() {\n const getPayload = (\n formData,\n reviewForm,\n selectedProduct,\n userDetails,\n selectedOrganisationDetails,\n ) => {\n let accountDetails = null;\n const details = selectedOrganisationDetails;\n const obj = {\n Application: {\n DepositFundsOption: formData?.depositSource ?? '',\n ProductTypeCode: selectedProduct?.Product_Code,\n DepositAmount: {\n Amount: formData?.depositAmount.toString().replace(/,/g, ''),\n ExtendedProperties: [{}, {}, {}],\n },\n PayInterestIntoAnotherAccount: accountDetails?.interestPaymentLocation,\n InterestPaymentFrequency: selectedProduct?.Interest_Frequency,\n DOB: userDetails?.ExtendedProperties?.DateOfBirth,\n ExtendedProperties: [\n { Name: 'FirstName', Value: userDetails.FirstName },\n { Name: 'LastName', Value: userDetails.Surname },\n {\n Name: 'ChangedDetails',\n Value: formData.organisationDetailsChangedInput ?? '',\n },\n {\n Name: 'OrganisationDetailsChanged',\n Value: formData.orgDetailsChanged === 'yes' ? 'true' : 'false',\n },\n {\n Name: 'OrganisationName',\n Value: details?.FullName ?? '',\n },\n {\n Name: 'OrganisationEmail',\n Value: details?.ContactDetails?.Email ?? '',\n },\n {\n Name: 'CustomerId',\n Value: formData?.organisationSource ?? '',\n },\n {\n Name: 'DepositMeans',\n Value: formData?.depositMethod ?? '',\n },\n {\n Name: 'FCSCConfirmation',\n Value: reviewForm?.informationConfirm.value ? 'true' : 'false',\n },\n ],\n },\n ExtendedProperties: [\n {\n Name: 'ApplicationType',\n Value: 'ShortApply',\n },\n ],\n };\n\n return obj;\n };\n\n return {\n getPayload: getPayload,\n };\n})();\n\nexport default appUtility;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { Validate } from '@myie/interact';\nimport { Row, Col, Form, Button, BreadcrumbItem, Spinner } from 'reactstrap';\nimport {\n Content,\n FormErrorList,\n FormattedCurrency,\n Check,\n Markdown,\n} from '@myie/interact-dom';\nimport { mapDispatchToProps as mapSavingsServicingDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport PropTypes from 'prop-types';\nimport requestPayload from '../shortApply/requestPayload';\nimport { mapDispatchToProps as ccbOrganisationDispatches } from '@myie/interact-ccb-organisation';\nimport { mapDispatchToProps as userManagementDispatches } from '@myie/interact-user-management';\nclass ShortApplyApplication extends React.Component {\n constructor(props) {\n super(props);\n this.state = this.initialState(props);\n }\n\n initialState = props => {\n const { selectedProduct } = props;\n let data = null;\n const formItems = {\n accuracyConfirm: {\n rules: {\n required: {\n message:\n 'You cannot proceed without opening and reading the Account Terms & Conditions, Summary Box & Tariff of Charges. Please tick the box to authorise the application.',\n },\n },\n value: false,\n },\n informationConfirm: {\n rules: {\n required: {\n message:\n 'You cannot proceed without opening and reading the Information Sheet & Exclusions List. Please tick the box to authorise the application.',\n },\n },\n value: false,\n },\n };\n\n if (\n selectedProduct &&\n selectedProduct.InterestPaymentFrequency &&\n selectedProduct.InterestPaymentFrequency === 'both'\n ) {\n formItems.interestPaymentFrequency = {\n rules: {\n stop: true,\n required: {\n message:\n 'Please tell us when you would like us to pay your interest.',\n },\n },\n value: data ? data.interestPaymentFrequency : '',\n };\n }\n return {\n data: data ? data : {},\n form: formItems,\n };\n };\n\n dropdownOptionValue(item, value) {\n let keys = Object.keys(item);\n if (keys[0] === value) {\n return item[keys[0]];\n }\n }\n\n componentDidUpdate() {\n this.initialState(this.props);\n }\n\n componentDidMount() {\n window.scrollTo(0, 0);\n const { fetchUserDetailsIfNeeded } = this.props;\n let request = {\n ExtendedProperties: {},\n };\n fetchUserDetailsIfNeeded(request);\n }\n\n updateCurrency = e => {\n let { name, value } = e.target;\n const { data } = this.state;\n let newValue = value;\n newValue = new Intl.NumberFormat().format(value.replace(/,/g, ''));\n\n // Deal with trailing . or .0 or .n0\n if (value.charAt(value.length - 1) === '.') {\n newValue += '.';\n }\n if (value.slice(value.length - 2) === '.0') {\n newValue += '.0';\n }\n if (\n value.charAt(value.length - 3) === '.' &&\n value.charAt(value.length - 1) === '0'\n ) {\n if (value.charAt(value.length - 2) === '0') {\n newValue += '.0';\n }\n newValue += '0';\n }\n if (newValue === '0') {\n newValue = '';\n }\n let { form } = this.state;\n form = Validate.input(name, newValue, form, true);\n data[name] = value;\n\n this.setState({ ...this.state, form });\n };\n\n onChange = e => {\n this.updateForm(e);\n };\n\n onBlur = e => {\n this.updateForm(e);\n };\n\n updateForm = e => {\n const { name, checked } = e.target;\n let { form } = this.state;\n form = Validate.input(name, checked, form);\n this.setState({ ...this.state, form });\n };\n\n onSubmitHandler = e => {\n e.preventDefault();\n const { userDetails } = this.props;\n let {\n saveShortApply,\n selectedProduct,\n formData,\n updateUrl,\n selectedOrganisationDetails,\n } = this.props;\n let { form } = this.state;\n\n form = Validate.form(form);\n if (form.approved) {\n let request = requestPayload.getPayload(\n formData,\n form,\n selectedProduct,\n userDetails,\n selectedOrganisationDetails,\n );\n saveShortApply(request);\n let stateData = {\n formData: formData,\n };\n updateUrl(stateData);\n } else {\n window.scrollTo(0, 0);\n this.setState({ form });\n }\n };\n\n onClick = e => {\n const { name, checked } = e.target;\n let { form, data } = this.state;\n\n form = Validate.input(name, checked ? 'true' : null, form);\n data[name] = checked ? 'true' : null;\n\n this.setState({ ...this.state, form, data });\n };\n\n dropdownOptions(item, index, name) {\n let keys = Object.keys(item);\n return (\n \n );\n }\n\n changeDetails = () => {\n const { formData, updateUrl, setStateDynamic } = this.props;\n setStateDynamic({\n stage: 'apply',\n });\n let stateData = {\n formData: formData,\n url: {\n pageStage: 'apply',\n },\n };\n setStateDynamic({ stage: 'apply' });\n updateUrl(stateData);\n };\n\n onBlur = e => {\n this.updateForm(e);\n };\n\n changeStage = () => {\n const { setStateDynamic } = this.props;\n setStateDynamic({ stage: 'list' });\n };\n\n render() {\n const {\n selectedProduct,\n formData,\n userDetails,\n selectedOrganisationDetails,\n isFetching,\n } = this.props;\n const details = selectedOrganisationDetails;\n let { CorrespondenceAddress = null, RegisteredAddress = null } =\n details || {};\n if (!userDetails) {\n return (\n

    \n \n {`...`}\n

    \n );\n }\n const { Title, FirstName, MiddleName, Surname } = userDetails;\n const { form } = this.state;\n\n return (\n
    \n \n\n
    \n
      \n \n \n \n \n \n \n 2: \n \n \n \n \n \n \n \n \n \n 2: \n \n \n \n
    \n
    \n
    \n \n \n {isFetching && (\n <>\n
    \n \n
    \n \n \n )}\n {!isFetching && (\n <>\n \n \n \n \n \n \n {selectedProduct.Product_Name}\n \n \n \n \n \n {details?.FullName}\n \n \n \n \n \n \n \n
    \n {CorrespondenceAddress?.Street ? (\n \n {CorrespondenceAddress?.Street}\n
    \n
    \n ) : null}\n {CorrespondenceAddress?.District ? (\n \n {CorrespondenceAddress?.District}\n
    \n
    \n ) : null}\n {CorrespondenceAddress?.Town ? (\n \n {CorrespondenceAddress?.Town}\n
    \n
    \n ) : null}\n {CorrespondenceAddress?.County ? (\n \n {CorrespondenceAddress?.County}\n
    \n
    \n ) : null}\n {CorrespondenceAddress?.Postcode ? (\n \n {CorrespondenceAddress?.Postcode}\n
    \n
    \n ) : null}\n
    \n \n \n \n \n \n
    \n {RegisteredAddress?.Street ? (\n \n {RegisteredAddress?.Street}\n
    \n
    \n ) : null}\n {RegisteredAddress?.District ? (\n \n {RegisteredAddress?.District}\n
    \n
    \n ) : null}\n {RegisteredAddress?.Town ? (\n \n {RegisteredAddress?.Town}\n
    \n
    \n ) : null}\n {RegisteredAddress?.County ? (\n \n {RegisteredAddress?.County}\n
    \n
    \n ) : null}\n {RegisteredAddress?.Postcode ? (\n \n {RegisteredAddress?.Postcode}\n
    \n
    \n ) : null}\n
    \n \n \n \n \n \n {formData.orgDetailsChanged === 'yes' ? 'Yes' : 'No'}\n \n {formData.orgDetailsChanged === 'yes' && (\n <>\n \n \n \n \n {formData.organisationDetailsChangedInput}\n \n \n )}\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n {formData.depositSource}\n \n \n \n \n \n {formData.depositMethod}\n \n \n \n }\n id={`accuracyConfirm`}\n field=\"accuracyConfirm\"\n value={false}\n onChange={this.onChange}\n validation={form.accuracyConfirm}\n showErrors={true}\n />\n Account Terms & Conditions, the Summary Box and the Tariff of Charges (together the Agreement) being presented to me electronically. That I have full legal authority to enter into the Agreement on behalf of the organisation I represent, and I have read and understand the Agreement and agree to be bound by its terms.\\n\\nI agree that the savings product will be provided subject to the Agreement, as specified and amended from time to time.\\n\\nI understand that the Agreement is legally binding and is enforceable under the laws of England and Wales.\\n\\nI confirm that I am eligible to apply for this savings account and that the information provided as part of the account opening is true and accurate.\\n\\nI confirm that the organisation I represent authorise you to act on the instructions of the signatories (as set out to you in the Terms & Conditions) and you will not be responsible if the organisation suffers a loss as a result of you acting on the authority and instructions of the signatories. I confirm that the signatories are authorised to act on behalf of the organisation and will tell you immediately in writing if the signatories are to be changed or removed;\\n\\nWe are covered by the Financial Services Compensation Scheme (FSCS). The FSCS can pay compensation to depositors if a bank is unable to meet its financial obligations.\\n\\nFor the current level of cover, further details and to view/download the Information Sheet & Exclusions list, please visit our site at www.ccbank.co.uk/fscs.`}\n />\n \n 0344 225 3939 or email savings@ccbank.co.uk.`}\n />\n \n\n 0800 678 1100 or visit www.fscs.org.uk.`}\n />\n\n \n \n )}\n
    \n \n \n \n \n \n \n
    \n \n
    \n );\n }\n}\n\nShortApplyApplication.propTypes = {\n accounts: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n onSubmit: PropTypes.func,\n setStage: PropTypes.func,\n userDetails: PropTypes.any,\n setStateDynamic: PropTypes.any,\n formData: PropTypes.any,\n selectedProduct: PropTypes.any,\n data: PropTypes.any,\n saveShortApply: PropTypes.func,\n updateUrl: PropTypes.func,\n organisation: PropTypes.any,\n fetchUserDetailsIfNeeded: PropTypes.func,\n selectedOrganisationDetails: PropTypes.object,\n isFetching: PropTypes.bool,\n};\nconst mapStateToProps = state => {\n const {\n accountsDefinition,\n customccbSavingsServicingDefinition,\n customccbOrganisationDefinition,\n userManagementDefinition,\n } = state;\n return {\n ...accountsDefinition,\n ...customccbOrganisationDefinition,\n ...userManagementDefinition,\n ...customccbSavingsServicingDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapSavingsServicingDispatchToProps,\n ...ccbOrganisationDispatches,\n ...userManagementDispatches,\n },\n)(ShortApplyApplication);\n","import React, { Component } from 'react';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport { AppMeta, Content, Markdown } from '@myie/interact-dom';\nimport { CONTACTS } from '@myie/interact-local-dom';\nimport { Row, Col } from 'reactstrap';\n\nclass ApplicationSuccess extends Component {\n componentDidMount() {\n window.scrollTo(0, 0);\n }\n\n render() {\n return (\n \n \n \n \n
    \n \n \n \n \n \n {this.props?.saveShortApplyData?.Reference\n ? this.props.saveShortApplyData.Reference\n : ''}\n \n \n
    \n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nApplicationSuccess.propTypes = {\n saveShortApplyData: PropTypes.object,\n selectedProduct: PropTypes.object,\n};\n\nexport default connect(\n null,\n mapDispatchToProps,\n)(ApplicationSuccess);\n","import React, { Component } from 'react';\nimport { withRouter, Redirect } from 'react-router-dom';\nimport { stateUtility } from '@myie/interact-dom';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Utility } from '@myie/interact';\nimport { storage } from './storageName';\nimport ShortApplyApplication from '../shared/ShortApplyApplication';\nimport ShortApplyReview from '../shared/ShortApplyReview';\nimport ApplicationSuccess from './ApplicationSuccess';\nimport { mapDispatchToProps as accountsDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as userManagementDispatches } from '@myie/interact-user-management';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport loadStateHOC from '../../shared/stateManager/loadStateHOC';\n\nclass ShortApplyProduct extends Component {\n constructor(props) {\n super(props);\n const { urlParams, stateData, resetSaveShortApply } = this.props;\n const stateList = ['apply', 'review', 'applySuccess'];\n\n const hasStage = stateList.find(element => element === urlParams.pageStage);\n let stage =\n stateData &&\n stateData.url &&\n stateData.url.pageStage &&\n this.props.urlParams &&\n this.props.urlParams.pageStage\n ? this.props.urlParams.pageStage\n : 'apply';\n if (!hasStage) {\n stage = 'apply';\n resetSaveShortApply();\n }\n\n stateUtility.setGlobalValue({ storage: storage.name });\n this.timeoutID = null;\n this.state = {\n message: '',\n selectedProduct: null,\n stage: stage,\n disabled: false,\n };\n }\n\n componentWillUnmount() {\n const { resetSaveShortApply } = this.props;\n resetSaveShortApply();\n }\n static getDerivedStateFromProps = (nextProps, thisState) => {\n const {\n allProducts,\n match,\n saveShortApplyResponse,\n stateData,\n updateUrl,\n } = nextProps;\n const { selectedProduct, stage } = thisState;\n\n let product = null;\n\n if (allProducts && !selectedProduct) {\n allProducts.forEach(element => {\n if (\n match.params &&\n match.params.id === Utility.hexEncode(element.Product_Code)\n ) {\n product = element;\n }\n });\n\n return {\n selectedProduct: product,\n };\n }\n\n if (\n saveShortApplyResponse &&\n saveShortApplyResponse.Status === 'Success' &&\n stage !== 'applySuccess'\n ) {\n let data = {\n formData: {\n ...stateData.formData,\n },\n url: {\n pageStage: 'applySuccess',\n },\n };\n\n updateUrl(data);\n return {\n stage: 'applySuccess',\n };\n }\n\n return null;\n };\n // change the stage of the form\n setStage = stage => {\n this.setState({ ...this.state, stage, message: null });\n };\n\n setStateDynamic = list => {\n this.setState({ ...this.state, ...list });\n };\n\n selectProduct = product => {\n const { setStateDynamic, form } = this.props;\n this.setState({ ...this.state, selectedProduct: product });\n setStateDynamic({\n reviewPaymentHeader:\n form && form.destination && form.destination.value === 'new'\n ? 'review'\n : 'optionThree',\n selectedProduct: product,\n });\n };\n\n render() {\n const { stage } = this.state;\n const { userDetails, accounts = {}, organisation } = this.props;\n\n if (!this.state.selectedProduct) {\n return ;\n }\n\n if (stage === 'applySuccess') {\n return (\n \n );\n }\n\n switch (stage) {\n case 'apply':\n return (\n \n );\n case 'review':\n return (\n \n );\n\n default:\n }\n\n return null;\n }\n}\n\nShortApplyProduct.propTypes = {\n submit: PropTypes.func,\n account: PropTypes.any,\n getAllProducts: PropTypes.any,\n form: PropTypes.any,\n reviewPaymentHeader: PropTypes.string,\n showMaturity: PropTypes.any,\n cancelWithdrawal: PropTypes.func,\n changeHeader: PropTypes.func,\n saveShortApplyResponse: PropTypes.object,\n setStateDynamic: PropTypes.func,\n getAccountDetails: PropTypes.func,\n userDetails: PropTypes.any,\n accounts: PropTypes.object,\n fetchAccountsIfNeeded: PropTypes.func,\n resetSaveShortApply: PropTypes.func,\n fetchUserDetailsIfNeeded: PropTypes.func,\n savingshortapply: PropTypes.object,\n stateData: PropTypes.any,\n getDepositProduct: PropTypes.func,\n match: PropTypes.any,\n updateUrl: PropTypes.any,\n depositProduct: PropTypes.object,\n urlParams: PropTypes.any,\n organisation: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const {\n customccbSavingsServicingDefinition,\n userManagementDefinition,\n accountsDefinition,\n customccbOrganisationDefinition,\n } = state;\n return {\n ...customccbSavingsServicingDefinition,\n ...userManagementDefinition,\n ...accountsDefinition,\n ...customccbOrganisationDefinition,\n };\n};\nexport default loadStateHOC(\n connect(\n mapStateToProps,\n {\n ...userManagementDispatches,\n ...mapDispatchToProps,\n ...accountsDispatchToProps,\n },\n )(withRouter(ShortApplyProduct)),\n storage.name,\n);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { Redirect, Route, Switch } from 'react-router-dom';\nimport { PrivateRoute, NoMatch } from '@myie/interact-dom';\nimport ShortApplyIndex from './ShortApplyIndex';\nimport ShortApplyProduct from './ShortApplyProduct';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-accounts';\nimport { Alert } from 'reactstrap';\nimport PropTypes from 'prop-types';\n\nclass ShortApply extends React.Component {\n render() {\n const { error } = this.props;\n let re = new RegExp('^/short-apply[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n return (\n
    \n {error ? {error} : ''}\n \n \n \n \n \n
    \n );\n }\n}\n\nShortApply.propTypes = {\n error: PropTypes.any,\n location: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ShortApply);\n","import React from 'react';\nimport Savings from './Savings';\nimport { NoticeToWithdrawals } from './NoticeToWithdrawal/Routes';\nimport MakeWithdrawalRoute from './MakeWithdrawal/Routes';\nimport { Route } from 'react-router-dom';\nimport ShortApply from './shortApply/ShortApply';\n\nconst Routes = [\n ,\n ,\n ,\n ,\n];\n\nexport default Routes;\n","import React, { Component, Fragment } from 'react';\nimport { mapDispatchToProps } from '@myie/interact-ccb-savings-servicing';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Content, LinkTag } from '@myie/interact-dom';\nimport { Utility } from '@myie/interact';\nimport { Card, CardHeader, CardBody, CardFooter, Row, Col } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport orderBy from 'lodash/orderBy';\nclass ApplyAccountSummaryComponent extends Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n getProducts = products => {\n let list = [];\n if (products && products.length > 0) {\n const sortedProductsList = this.sortProducts(products);\n sortedProductsList.forEach((product, index) => {\n if (\n product.Display_For_Short_Apply === 'Y' &&\n product.Product_Status === 'A'\n )\n list.push(\n \n \n

    \n \n \n {index + 1}:{' '}\n \n {product.Product_Name}\n

    \n
    \n \n \n \n

    \n \n

    \n \n {product?.To_apply_you_must_list.map((item, index) => {\n if (item) {\n return
  • {item}
  • ;\n }\n })}\n \n \n \n

    \n \n

    \n \n {product?.Key_facts_list.map((item, index) => {\n if (item) {\n return
  • {item}
  • ;\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 list;\n };\n\n sortProducts(list = []) {\n let sortedList = orderBy(list, 'Sort_order', 'asc');\n return sortedList;\n }\n\n render() {\n const { DepositProducts = [] } = this.props;\n\n return {this.getProducts(DepositProducts)};\n }\n}\n\nApplyAccountSummaryComponent.propTypes = {\n match: PropTypes.any,\n DepositProducts: PropTypes.any,\n page: PropTypes.string,\n};\n\nconst mapStateToProps = state => {\n const { customccbSavingsServicingDefinition } = state;\n return {\n ...customccbSavingsServicingDefinition,\n };\n};\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ApplyAccountSummaryComponent);\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Content } from '@myie/interact-dom';\n\nclass SummaryMenuItems extends React.Component {\n constructor(props) {\n super(props);\n this.state = { removeClass: false };\n }\n\n hideMenu = () => {\n this.setState({ removeClass: !this.state?.removeClass });\n };\n render() {\n return (\n \n \n \n );\n }\n}\n\nexport default SummaryMenuItems;\n","import SummaryMenuItems from './SummaryMenuItems';\nimport { URLS } from '@myie/interact-local-dom';\n\nconst SavingsServicingMenuItems = [\n {\n url: URLS.ShortApply,\n menuItem: SummaryMenuItems,\n },\n];\n\nexport default SavingsServicingMenuItems;\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\nimport { CONTACTS } from '@myie/interact-local-dom';\n\nclass ShortApplySidebar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default ShortApplySidebar;\n","import Routes from './Routes';\nimport Savings from './Savings';\nimport ApplyAccountSummaryComponent from './shared/ApplyAccountSummaryComponent';\nimport SavingsServicingMenuItems from './MenuItems';\nimport SavingsServicingSidebars from './Sidebars';\n\nexport {\n Savings,\n Routes,\n ApplyAccountSummaryComponent,\n SavingsServicingMenuItems,\n SavingsServicingSidebars,\n};\n","import React from 'react';\nimport { Row, Col } from 'reactstrap';\nimport PropTypes from 'prop-types';\nimport { Content } from '@myie/interact-dom';\n\nclass AboutYou extends React.Component {\n render() {\n const { userDetails } = this.props;\n\n let yourTitle = '';\n let firstName = '';\n let middleNames = '';\n let lastName = '';\n let emailAddress = '';\n //let homeNumber = '';\n let workNumber = '';\n let mobileNumber = '';\n\n if (userDetails) {\n yourTitle = userDetails.Title;\n firstName = userDetails.FirstName;\n middleNames = userDetails.MiddleName;\n lastName = userDetails.Surname;\n emailAddress = userDetails.EmailAddress;\n //homeNumber = userDetails.HomeNumber;\n workNumber = userDetails.WorkNumber;\n mobileNumber = userDetails.MobileNumber;\n }\n\n return (\n
    \n

    \n \n

    \n \n \n \n \n \n {yourTitle}\n \n \n \n \n \n {firstName}\n \n \n \n \n \n {middleNames}\n \n \n \n \n \n {lastName}\n \n \n \n \n \n {emailAddress}\n \n \n \n \n \n {workNumber}\n \n \n \n \n \n {mobileNumber}\n \n \n
    \n );\n }\n}\n\nAboutYou.propTypes = {\n userDetails: PropTypes.object,\n};\n\nexport default AboutYou;\n","import React from 'react';\nimport { Row, Col } from 'reactstrap';\nimport PropTypes from 'prop-types';\nimport { Content } from '@myie/interact-dom';\n\nclass YourAddress extends React.Component {\n render() {\n const { userDetails } = this.props;\n\n let houseNameFlatNumber = '';\n let houseNumber = '';\n let addressLine1 = '';\n let addressLine2 = '';\n let townCity = '';\n let county = '';\n let postcode = '';\n\n if (userDetails && userDetails.CorrespondenceAddress) {\n houseNameFlatNumber = userDetails.CorrespondenceAddress.BuildingName;\n houseNumber = userDetails.CorrespondenceAddress.BuildingNumber;\n addressLine1 = userDetails.CorrespondenceAddress.Street;\n addressLine2 = userDetails.CorrespondenceAddress.AddressLine2;\n townCity = userDetails.CorrespondenceAddress.PostTown;\n county = userDetails.CorrespondenceAddress.County;\n postcode = userDetails.CorrespondenceAddress.PostCode;\n }\n\n return (\n
    \n

    \n \n

    \n \n \n \n \n \n {houseNameFlatNumber} {houseNumber} {addressLine1}\n \n \n \n \n \n {addressLine2}\n \n \n \n \n \n {townCity}\n \n \n \n \n \n {county}\n \n \n \n \n \n {postcode}\n \n \n
    \n );\n }\n}\n\nYourAddress.propTypes = {\n userDetails: PropTypes.object,\n};\n\nexport default YourAddress;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\n\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-user-management';\n\nimport AboutYou from './AboutYou';\nimport YourAddress from './YourAddress';\n//import CorrespondenceAddress from './CorrespondenceAddress';\n//import ContactPreferences from './ContactPreferences';\nimport { Content } from '@myie/interact-dom';\n\nclass View extends React.Component {\n constructor(props) {\n super(props);\n const { resetUserDetails, resetContactOptions } = this.props;\n resetUserDetails();\n resetContactOptions();\n }\n\n componentDidMount() {\n const {\n fetchUserDetailsIfNeeded,\n fetchContactOptionsIfNeeded,\n } = this.props;\n let request = {\n ExtendedProperties: {},\n };\n fetchUserDetailsIfNeeded(request);\n fetchContactOptionsIfNeeded(request);\n }\n\n render() {\n const { userDetails /* contactOptions */ } = this.props;\n\n return (\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\nView.propTypes = {\n contactOptions: PropTypes.object,\n fetchContactOptionsIfNeeded: PropTypes.func,\n fetchUserDetailsIfNeeded: PropTypes.func,\n resetContactOptions: PropTypes.any,\n resetUserDetails: PropTypes.any,\n userDetails: PropTypes.object,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(View);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\n\nimport { Text, Content, Markdown } from '@myie/interact-dom';\n\nclass AboutYou extends React.Component {\n constructor(props) {\n super(props);\n const { setForm } = this.props;\n this.state = {\n message: null,\n submitForm: {},\n userDetails: null,\n yourTitle: null,\n firstName: null,\n middleNames: null,\n lastName: null,\n aboutYouForm: {\n EmailAddress: {\n rules: {\n title: 'EmailAddress',\n stop: true,\n required: {\n message: 'Please enter a email.',\n },\n email: {\n message: 'Please enter a valid email.',\n },\n },\n },\n ConfirmEmailAddress: {\n rules: {\n title: 'ConfirmEmailAddress',\n stop: true,\n required: {\n message: 'Please enter a email.',\n },\n email: {\n message: 'Please enter a valid email.',\n },\n compare: {\n message: \"Email address doesn't match\",\n field: 'EmailAddress',\n comparison: () => {\n return this.state.aboutYouForm.EmailAddress.value;\n },\n },\n },\n },\n HomeNumber: {\n rules: {\n title: 'HomeNumber',\n stop: true,\n required: {\n message: 'Please enter a home number.',\n },\n phone: {\n message: 'Please enter a valid home number.',\n },\n },\n },\n WorkNumber: {\n rules: {\n title: 'WorkNumber',\n stop: true,\n required: {\n message: 'Please enter a work number.',\n },\n phone: {\n message: 'Please enter a valid work number.',\n },\n },\n },\n MobileNumber: {\n rules: {\n title: 'MobileNumber',\n stop: true,\n required: {\n message: 'Please enter a mobile number.',\n },\n phone: {\n message: 'Please enter a valid mobile number.',\n },\n },\n },\n },\n };\n setForm('aboutYouForm', this.state.aboutYouForm);\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { aboutYouForm, userDetails } = nextProps;\n\n if (aboutYouForm && aboutYouForm !== prevState.aboutYouForm) {\n return {\n ...prevState,\n aboutYouForm,\n };\n }\n\n //Set userDetails\n\n if (aboutYouForm && userDetails !== prevState.userDetails) {\n aboutYouForm.EmailAddress.value = userDetails.EmailAddress;\n aboutYouForm.ConfirmEmailAddress.value = userDetails.EmailAddress;\n aboutYouForm.HomeNumber.value = userDetails.HomeNumber;\n aboutYouForm.WorkNumber.value = userDetails.WorkNumber;\n aboutYouForm.MobileNumber.value = userDetails.MobileNumber;\n return {\n ...prevState,\n yourTitle: userDetails.Title,\n firstName: userDetails.FirstName,\n middleNames: userDetails.MiddleName,\n lastName: userDetails.Surname,\n aboutYouForm,\n userDetails,\n };\n } else {\n return null;\n }\n }\n\n //Override OnEvent if needed\n onChange = e => {\n const { onEvent } = this.props;\n onEvent('aboutYouForm', e);\n };\n\n //Override OnEvent if needed\n onBlur = e => {\n const { onEvent } = this.props;\n onEvent('aboutYouForm', e);\n };\n\n render() {\n let {\n aboutYouForm,\n yourTitle,\n firstName,\n middleNames,\n lastName,\n } = this.state;\n\n return (\n
    \n \n \n \n \n \n \n \n \n \n {yourTitle}\n \n\n \n \n \n \n {firstName}\n \n\n \n \n \n \n {middleNames}\n \n\n \n \n \n \n {lastName}\n \n \n \n \n \n \n \n \n \n \n \n
    \n );\n }\n}\n\nAboutYou.propTypes = {\n onEvent: PropTypes.any,\n saveData: PropTypes.any,\n setForm: PropTypes.any,\n userDetails: PropTypes.any,\n aboutYouForm: PropTypes.any,\n};\n\nexport default AboutYou;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { Text, Content } from '@myie/interact-dom';\n\nclass YourAddress extends React.Component {\n constructor(props) {\n super(props);\n const { setForm } = this.props;\n this.state = {\n userDetails: null,\n message: null,\n submitForm: {},\n yourAddressForm: {\n BuildingName: {\n rules: {\n title: 'BuildingName',\n stop: true,\n buildingNameNumberValidate: {\n message: 'Please enter a house name or flat number.',\n field: 'BuildingNumber',\n comparison: () => {\n return this.state.yourAddressForm.BuildingNumber.value;\n },\n },\n },\n },\n BuildingNumber: {\n rules: {\n title: 'BuildingNumber',\n stop: true,\n buildingNameNumberValidate: {\n message: 'Please enter a house number.',\n field: 'BuildingName',\n comparison: () => {\n return this.state.yourAddressForm.BuildingName.value;\n },\n },\n },\n },\n AddressLine1: {\n rules: {\n title: 'AddressLine1',\n stop: true,\n required: {\n message: 'Please enter address line 1.',\n },\n },\n },\n AddressLine2: {\n rules: {\n title: 'AddressLine2',\n stop: true,\n },\n },\n PostTown: {\n rules: {\n title: 'townCity',\n stop: true,\n required: {\n message: 'Please enter town/city.',\n },\n },\n },\n County: {\n rules: {\n title: 'country',\n stop: true,\n required: {\n message: 'Please enter country.',\n },\n country: {\n message: 'Please enter a valid country name.',\n },\n },\n },\n PostCode: {\n rules: {\n title: 'postCode',\n stop: true,\n required: {\n message: 'Please enter postcode.',\n },\n postcode: {\n message:\n 'Please enter your postcode in a valid UK postcode format.',\n },\n },\n },\n },\n };\n setForm('yourAddressForm', this.state.yourAddressForm);\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { yourAddressForm, userDetails } = nextProps;\n\n if (yourAddressForm && yourAddressForm !== prevState.yourAddressForm) {\n return {\n ...prevState,\n yourAddressForm,\n };\n }\n\n //Set userDetails\n if (\n yourAddressForm &&\n userDetails !== prevState.userDetails &&\n userDetails.Address\n ) {\n yourAddressForm.BuildingName.value = userDetails.Address.BuildingName;\n yourAddressForm.BuildingNumber.value = userDetails.Address.BuildingNumber;\n yourAddressForm.AddressLine1.value = userDetails.Address.AddressLine1;\n yourAddressForm.AddressLine2.value = userDetails.Address.AddressLine2;\n yourAddressForm.PostTown.value = userDetails.Address.PostTown;\n yourAddressForm.County.value = userDetails.Address.County;\n yourAddressForm.PostCode.value = userDetails.Address.PostCode;\n return {\n ...prevState,\n yourAddressForm,\n userDetails,\n };\n } else {\n return null;\n }\n }\n\n onChange = e => {\n const { onEvent } = this.props;\n onEvent('yourAddressForm', e);\n };\n\n onChangeNameNumber = e => {\n const { addressOnEvent } = this.props;\n addressOnEvent('yourAddressForm', e);\n };\n\n onBlur = e => {\n const { onEvent } = this.props;\n onEvent('yourAddressForm', e);\n };\n\n submit = e => {\n e.preventDefault();\n };\n\n render() {\n let { yourAddressForm } = this.state;\n return (\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n );\n }\n}\n\nYourAddress.propTypes = {\n addressOnEvent: PropTypes.any,\n onEvent: PropTypes.any,\n saveData: PropTypes.any,\n saveDataAddress: PropTypes.any,\n setForm: PropTypes.any,\n setFormValidations: PropTypes.any,\n userDetails: PropTypes.any,\n yourAddressForm: PropTypes.any,\n};\n\nexport default YourAddress;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { Text, Content, Markdown } from '@myie/interact-dom';\n\nclass CorrespondenceAddress extends React.Component {\n constructor(props) {\n super(props);\n const { setForm } = this.props;\n this.state = {\n message: null,\n submitForm: {},\n correspondenceAddressForm: {\n BuildingName: {\n rules: {\n title: 'BuildingName',\n stop: true,\n buildingNameNumberValidate: {\n message: 'Please enter a house name or flat number.',\n field: 'BuildingNumber',\n comparison: () => {\n return this.state.correspondenceAddressForm.BuildingNumber\n .value;\n },\n },\n },\n },\n BuildingNumber: {\n rules: {\n title: 'BuildingNumber',\n stop: true,\n buildingNameNumberValidate: {\n message: 'Please enter a house number.',\n field: 'BuildingName',\n comparison: () => {\n return this.state.correspondenceAddressForm.BuildingName.value;\n },\n },\n },\n },\n AddressLine1: {\n rules: {\n title: 'AddressLine1',\n stop: true,\n required: {\n message: 'Please enter address line 1.',\n },\n },\n },\n AddressLine2: {\n rules: {\n title: 'AddressLine2',\n stop: true,\n },\n },\n PostTown: {\n rules: {\n title: 'townCity',\n stop: true,\n required: {\n message: 'Please enter town/city.',\n },\n },\n },\n County: {\n rules: {\n title: 'County',\n stop: true,\n required: {\n message: 'Please enter County.',\n },\n country: {\n message: 'Please enter a valid County name.',\n },\n },\n },\n PostCode: {\n rules: {\n title: 'postCode',\n stop: true,\n required: {\n message: 'Please enter postcode.',\n },\n postcode: {\n message:\n 'Please enter your postcode in a valid UK postcode format.',\n },\n },\n },\n },\n };\n setForm('correspondenceAddressForm', this.state.correspondenceAddressForm);\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { correspondenceAddressForm, userDetails } = nextProps;\n\n if (\n correspondenceAddressForm &&\n correspondenceAddressForm !== prevState.correspondenceAddressForm\n ) {\n return {\n ...prevState,\n correspondenceAddressForm,\n };\n }\n\n //Set userDetails\n if (\n correspondenceAddressForm &&\n userDetails !== prevState.userDetails &&\n userDetails.Address\n ) {\n correspondenceAddressForm.BuildingName.value =\n userDetails.Address.BuildingName;\n correspondenceAddressForm.BuildingNumber.value =\n userDetails.Address.BuildingNumber;\n correspondenceAddressForm.AddressLine1.value =\n userDetails.Address.AddressLine1;\n correspondenceAddressForm.AddressLine2.value =\n userDetails.Address.AddressLine2;\n correspondenceAddressForm.PostTown.value = userDetails.Address.PostTown;\n correspondenceAddressForm.County.value = userDetails.Address.County;\n correspondenceAddressForm.PostCode.value = userDetails.Address.PostCode;\n return {\n ...prevState,\n correspondenceAddressForm,\n userDetails,\n };\n } else {\n return null;\n }\n }\n\n onChange = e => {\n const { onEvent } = this.props;\n onEvent('correspondenceAddressForm', e);\n };\n\n onChangeNameNumber = e => {\n const { addressOnEvent } = this.props;\n addressOnEvent('correspondenceAddressForm', e);\n };\n\n onBlur = e => {\n const { onEvent } = this.props;\n onEvent('correspondenceAddressForm', e);\n };\n\n submit = e => {\n e.preventDefault();\n };\n\n render() {\n let { correspondenceAddressForm } = this.state;\n return (\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\nCorrespondenceAddress.propTypes = {\n addressOnEvent: PropTypes.any,\n correspondenceAddressForm: PropTypes.any,\n onEvent: PropTypes.any,\n saveDataAddressC: PropTypes.any,\n setForm: PropTypes.any,\n userDetails: PropTypes.any,\n};\n\nexport default CorrespondenceAddress;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Check, Content } from '@myie/interact-dom';\nimport { Validate } from '@myie/interact';\n\nclass ContactPreferences extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n message: null,\n contactOptions: null,\n submitForm: {},\n form: {},\n };\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n return {\n ...prevState,\n contactOptions: nextProps.contactOptions\n ? nextProps.contactOptions.Options\n : null,\n };\n }\n\n onChange = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n if (Object.hasOwnProperty.call(form, name)) {\n form = Validate.input(name, value, form);\n }\n this.setState({\n ...this.state,\n form,\n });\n };\n\n componentDidMount() {\n this.setState({ contactOptions: null });\n }\n\n onChangeContactOptions = e => {\n const { name, value } = e.target;\n const { contactOptions } = this.state;\n const { saveDataContactOptions } = this.props;\n let newContactOptions = contactOptions;\n newContactOptions.forEach(Option => {\n if (Option.Type === name) {\n Option.Value = !Option.Value;\n }\n });\n saveDataContactOptions(name, value);\n this.setState({ contactOptions: newContactOptions });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n if (Object.hasOwnProperty.call(form, name) && e.target.value) {\n form = Validate.input(name, value, form, true);\n }\n this.setState({\n ...this.state,\n form,\n });\n };\n\n submit = e => {\n e.preventDefault();\n };\n\n getContactOptionLabels = contactOptions => {\n const label = [\n {\n Type: 'Email',\n name: 'Email',\n },\n {\n Type: 'Mobile',\n name: 'Mobile',\n },\n {\n Type: 'TextMessage',\n name: 'Text Messages (SMS)',\n },\n {\n Type: 'Post',\n name: 'Post',\n },\n {\n Type: 'OffersFromTheBank',\n name: 'Bank related offers',\n },\n {\n Type: 'OffersFromSelectedPartners',\n name: 'Third party offers',\n },\n ];\n\n let contactListOption = [];\n let otherOptions = [];\n contactOptions.forEach(item => {\n let lebelItem = label.find(label => label.Type === item.Type);\n item.name = lebelItem.name;\n if (\n item.Type === 'OffersFromTheBank' ||\n item.Type === 'OffersFromSelectedPartners'\n ) {\n otherOptions.push(item);\n } else {\n contactListOption.push(item);\n }\n });\n\n return {\n contactListOption: contactListOption,\n otherOptions: otherOptions,\n };\n };\n\n render() {\n const { contactOptions } = this.state;\n if (!contactOptions) {\n return null;\n }\n const newOptions = this.getContactOptionLabels(contactOptions);\n return (\n <>\n

    \n \n

    \n\n
    \n \n \n \n {newOptions.otherOptions.map(item => {\n return (\n
    \n \n
    \n );\n })}\n

    \n \n

    \n {newOptions.contactListOption.map(item => {\n return (\n
    \n \n
    \n );\n })}\n

    \n \n

    \n
    \n \n );\n }\n}\n\nContactPreferences.propTypes = {\n contactOptions: PropTypes.any,\n saveDataContactOptions: PropTypes.any,\n};\n\nexport default ContactPreferences;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { Content, Switch } from '@myie/interact-dom';\n\nclass Confirmation extends React.Component {\n renderDoneButton = () => {\n return (\n \n \n \n );\n };\n\n render() {\n const { updateUserDetailSuccess } = this.props;\n let title = null;\n let id;\n if (updateUserDetailSuccess) {\n switch (updateUserDetailSuccess.ResponseStatus) {\n case 'Success':\n id = 'update-personal-detail-success';\n title = (\n \n );\n break;\n case 'Failed':\n id = 'update-personal-detail-failure';\n title = (\n \n );\n break;\n default:\n id = 'update-personal-detail-unknown';\n title = (\n \n );\n }\n }\n return (\n
    \n
    \n

    {title}

    \n
    \n {updateUserDetailSuccess ? (\n \n \"\n value={updateUserDetailSuccess.ResponseStatus}\n defaultText=\"An unknown error occured please check your accounts before retrying.\"\n contents={{\n Success: {\n defaultValue: 'You have updated your personal details',\n },\n Failed: {\n defaultValue:\n 'An error occured while trying to process your request',\n },\n }}\n />\n \n ) : null}\n {this.renderDoneButton()}\n
    \n );\n }\n}\n\nConfirmation.propTypes = {\n resetContactOptions: PropTypes.any,\n resetUserDetails: PropTypes.any,\n setStage: PropTypes.any,\n updateUserDetailSuccess: PropTypes.any,\n};\n\nexport default Confirmation;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Alert, Form, Button } from 'reactstrap';\nimport { Link } from 'react-router-dom';\nimport { Validate } from '@myie/interact';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-user-management';\nimport AboutYou from './AboutYou';\nimport YourAddress from './YourAddress';\nimport CorrespondenceAddress from './CorrespondenceAddress';\nimport ContactPreferences from './ContactPreferences';\nimport Confirmation from './Confirmation';\nimport approve from 'approvejs';\nimport { Content } from '@myie/interact-dom';\n\nconst buildingNameNumberValidate = {\n expects: ['comparison', 'field'],\n message: 'Please enter a date greater than payment start date',\n validate: function(value, pars) {\n const { comparison } = pars;\n\n if (typeof comparison === 'function') {\n if (value.length > 0) {\n return true;\n } else {\n return comparison().length > 0;\n }\n }\n\n if (value.length > 0) {\n return true;\n } else {\n return comparison().length > 0;\n }\n },\n};\n\napprove.addTest(buildingNameNumberValidate, 'buildingNameNumberValidate');\n\nclass Edit extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n userDetails: null,\n contactOptions: null,\n message: null,\n stage: 'Edit',\n aboutYouForm: null, // Form is defined by child component\n yourAddressForm: null, // Form is defined by child component\n correspondenceAddressForm: null, // Form is defined by child component\n };\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { userDetails, contactOptions, updateUserDetailSuccess } = nextProps;\n\n if (updateUserDetailSuccess && updateUserDetailSuccess.ResponseStatus) {\n return {\n ...prevState,\n stage: 'Success',\n };\n }\n\n if (userDetails && contactOptions) {\n return {\n ...prevState,\n userDetails,\n contactOptions,\n };\n } else {\n return null;\n }\n }\n\n componentDidMount() {\n const {\n fetchUserDetailsIfNeeded,\n fetchContactOptionsIfNeeded,\n } = this.props;\n let request = {\n ExtendedProperties: {},\n };\n fetchUserDetailsIfNeeded(request);\n fetchContactOptionsIfNeeded(request);\n }\n\n setForm = (form, data) => {\n this.setState({ [form]: data });\n };\n\n onEvent = (form, e) => {\n const { name, value } = e.target;\n let childForm = this.state[form];\n childForm = Validate.input(name, value, childForm, true);\n this.setState({\n ...this.state,\n [form]: childForm,\n });\n };\n\n addressOnEvent = (form, e) => {\n const { name, value } = e.target;\n let childForm = this.state[form];\n childForm = Validate.input(name, value, childForm, true);\n if (name === 'BuildingNumber') {\n childForm = Validate.input(\n 'BuildingName',\n childForm.BuildingName.value,\n childForm,\n true,\n );\n }\n if (name === 'BuildingName') {\n childForm = Validate.input(\n 'BuildingNumber',\n childForm.BuildingNumber.value,\n childForm,\n true,\n );\n }\n\n this.setState({\n ...this.state,\n [form]: childForm,\n });\n };\n\n saveDataContactOptions = (name, value) => {\n const { contactOptions } = this.state;\n contactOptions[name] = value;\n this.setState({ ...this.state, contactOptions, message: null });\n };\n\n submitData = () => {\n let {\n userDetails,\n aboutYouForm,\n yourAddressForm,\n correspondenceAddressForm,\n contactOptions,\n } = this.state;\n const { updateUserDetails } = this.props;\n let userDetailsRequest = {\n Title: userDetails.Title,\n MiddleName: userDetails.MiddleName,\n Surname: userDetails.Surname,\n EmailAddress: aboutYouForm.EmailAddress.value,\n PrimaryContactNumber: userDetails.PrimaryContactNumber,\n Postcode: userDetails.Postcode,\n LastUpdated: userDetails.Surname,\n HomeNumber: userDetails.HomeNumber,\n WorkNumber: userDetails.WorkNumber,\n MobileNumber: userDetails.MobileNumber,\n Address: {\n Organisation: 'userDetails.Address.Organisation',\n PoBox: 'userDetails.Address.PoBox',\n SuiteNumber: 'userDetails.Address.SuiteNumber',\n FlatNumber: 'userDetails.Address.FlatNumber',\n BuildingNumber: yourAddressForm.BuildingNumber.value,\n BuildingName: yourAddressForm.BuildingName.value,\n AddressLine1: yourAddressForm.AddressLine1.value,\n AddressLine2: yourAddressForm.AddressLine2.value,\n Street: 'userDetails.Address.Street',\n VillageOrDistrict: 'userDetails.Address.VillageOrDistrict',\n TownOrCity: 'userDetails.Address.TownOrCity',\n PostTown: yourAddressForm.PostTown.value,\n Country: yourAddressForm.County.Country,\n PostCode: yourAddressForm.County.PostCode,\n CheckedPostCode: 'userDetails.Address.CheckedPostCode',\n HomeStatus: 'userDetails.Address.HomeStatus',\n },\n CorrespondenceAddress: {\n Organisation: 'userDetails.Address.Organisation',\n PoBox: 'userDetails.Address.PoBox',\n SuiteNumber: 'userDetails.Address.SuiteNumber',\n FlatNumber: 'userDetails.Address.FlatNumber',\n BuildingNumber: correspondenceAddressForm.BuildingNumber.value,\n BuildingName: correspondenceAddressForm.BuildingName.value,\n AddressLine1: correspondenceAddressForm.AddressLine1.value,\n AddressLine2: correspondenceAddressForm.AddressLine2.value,\n Street: 'userDetails.Address.Street',\n VillageOrDistrict: 'userDetails.Address.VillageOrDistrict',\n TownOrCity: 'userDetails.Address.TownOrCity',\n PostTown: correspondenceAddressForm.PostTown.value,\n Country: correspondenceAddressForm.County.Country,\n PostCode: correspondenceAddressForm.County.PostCode,\n CheckedPostCode: 'userDetails.Address.CheckedPostCode',\n HomeStatus: 'userDetails.Address.HomeStatus',\n },\n ExtendedProperties: {},\n };\n let contactOptionsRequest = {\n Options: contactOptions.Options,\n ExtendedProperties: {},\n };\n updateUserDetails(userDetailsRequest, contactOptionsRequest);\n };\n\n submit = e => {\n e.preventDefault();\n let {\n aboutYouForm,\n yourAddressForm,\n correspondenceAddressForm,\n } = this.state;\n aboutYouForm = Validate.form(aboutYouForm);\n yourAddressForm = Validate.form(yourAddressForm);\n correspondenceAddressForm = Validate.form(correspondenceAddressForm);\n this.setState({\n ...this.state,\n aboutYouForm,\n yourAddressForm,\n correspondenceAddressForm,\n });\n if (\n !aboutYouForm.approved ||\n !yourAddressForm.approved ||\n !correspondenceAddressForm.approved\n ) {\n return;\n }\n this.submitData();\n };\n\n render() {\n let {\n message,\n userDetails,\n contactOptions,\n aboutYouForm,\n yourAddressForm,\n correspondenceAddressForm,\n } = this.state;\n const { updateUserDetailSuccess } = this.props;\n const { stage } = this.state;\n let alert;\n if (!userDetails) {\n return null;\n }\n if (message) {\n alert = (\n \n {message}\n \n );\n } else {\n alert = '';\n }\n if (stage === 'Success') {\n return ;\n } else {\n return (\n
    \n

    \n \n

    \n {alert ? alert : ''}\n

    \n \n \n \n

    \n \n \n \n \n \n
    \n \n \n \n \n
    \n \n
    \n );\n }\n }\n}\n\nEdit.propTypes = {\n contactOptions: PropTypes.any,\n fetchContactOptionsIfNeeded: PropTypes.any,\n fetchUserDetailsIfNeeded: PropTypes.any,\n history: PropTypes.any,\n resetContactOptions: PropTypes.any,\n resetUserDetails: PropTypes.any,\n setContactOptions: PropTypes.any,\n setUserDetails: PropTypes.any,\n updateUserDetails: PropTypes.any,\n userDetails: PropTypes.any,\n updateUserDetailSuccess: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Edit);\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Switch, Redirect } from 'react-router-dom';\nimport { PrivateRoute } from '@myie/interact-dom';\nimport View from './View';\nimport Edit from './Edit';\n\nclass PersonalDetails extends Component {\n render() {\n if (\n this.props.location.pathname.match(\n new RegExp('^/personal-details[/]{0,1}$'),\n )\n ) {\n return ;\n }\n\n return (\n
    \n \n \n ,\n \n \n
    \n );\n }\n}\n\nPersonalDetails.propTypes = {\n location: PropTypes.object,\n};\n\nexport default PersonalDetails;\n","import React from 'react';\nimport { Route } from 'react-router-dom';\nimport PersonalDetails from './PersonalDetails';\n//import ManageStatementsIndex from './ManageStatements';\n\nconst Routes = [\n ,\n];\n\nexport default Routes;\n","import PersonalDetailsServiceItems from './PersonalDetails/PersonalDetailsServiceItems';\n\nconst UserManagementServiceItems = [\n {\n name: 'PersonalDetailsServiceItems',\n serviceItem: PersonalDetailsServiceItems,\n },\n];\n\nexport default UserManagementServiceItems;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Media } from 'reactstrap';\nimport { Markdown, Icon } from '@myie/interact-dom';\n\nclass PersonalDetailsServiceItems extends React.Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n\nexport default PersonalDetailsServiceItems;\n","import PersonalDetails from './PersonalDetails';\nimport Routes from './Routes';\nimport UserManagementServiceItems from './ServiceItems';\n\nexport { PersonalDetails, Routes, UserManagementServiceItems };\n","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\n\nimport { AuthenticationServiceItems } from '@myie/interact-authentication-dom'\nimport { UserManagementServiceItems } from '@myie/interact-user-management-dom'\n\n\nconst RegisteredServiceItems = []\n\nAuthenticationServiceItems.forEach(sb => {\n\tRegisteredServiceItems.push(sb)\n}); \n\nUserManagementServiceItems.forEach(sb => {\n\tRegisteredServiceItems.push(sb)\n}); \n\n\n\nexport default RegisteredServiceItems\n","import React from 'react';\nimport { CardColumns, Card } from 'reactstrap';\nimport PropTypes from 'prop-types';\nimport { Content, AppMeta } from '@myie/interact-dom';\nimport RegisteredServiceItems from './RegisteredServiceItems';\n\nclass ServicesIndex extends React.Component {\n render() {\n return (\n
    \n \n

    \n \n

    \n \n {RegisteredServiceItems.map(sb => (\n \n {}\n \n ))}\n \n
    \n );\n }\n}\n\nServicesIndex.propTypes = {\n accounts: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n};\n\nexport default ServicesIndex;\n","import React from 'react';\nimport { Redirect, Route, Switch } from 'react-router-dom';\nimport { PrivateRoute, NoMatch } from '@myie/interact-dom';\nimport ServicesIndex from './ServicesIndex';\nimport { Alert } from 'reactstrap';\nimport PropTypes from 'prop-types';\n\nclass Services extends React.Component {\n render() {\n const { error } = this.props;\n var re = new RegExp('^/services[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n return (\n
    \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n \n \n \n
    \n );\n }\n}\n\nServices.propTypes = {\n error: PropTypes.any,\n location: PropTypes.any,\n};\n\nexport default Services;\n","import React from 'react';\nimport Services from './Services';\nimport { Route } from 'react-router-dom';\n\nconst Routes = [\n ,\n];\n\nexport default Routes;\n","import SummaryMenuItems from './SummaryMenuItems';\n\nconst MoveMoneyMenuItems = [\n {\n url: '/services',\n menuItem: SummaryMenuItems,\n },\n];\n\nexport default MoveMoneyMenuItems;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Content } from '@myie/interact-dom';\n\nclass SummaryMenuItems extends React.Component {\n render() {\n return (\n \n \n \n );\n }\n}\n\nexport default SummaryMenuItems;\n","import Services from './Services';\nimport Routes from './Routes';\nimport ServicesMenuItems from './MenuItems';\n\nexport { Services, Routes, ServicesMenuItems };\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-accounts';\n\nimport { Markdown, FormattedCurrency } from '@myie/interact-dom';\nimport { Utility } from '@myie/interact';\nimport { Link } from 'react-router-dom';\nimport { withRouter } from 'react-router-dom';\n\nclass SelectAccounts extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n stage: 'Details',\n message: null,\n data: {},\n };\n }\n\n static getDerivedStateFromProps = nextProps => {\n const { accounts = {}, fetchAccountsIfNeeded, isFetching } = nextProps;\n\n if (!accounts && !isFetching) {\n fetchAccountsIfNeeded();\n }\n\n return null;\n };\n\n generateAccountInfo(account) {\n switch (account.ProductType) {\n case 'Loan':\n return (\n <>\n {account.AccountNumber} {account.SortCode}\n \n );\n case 'Savings':\n return (\n <>\n {account.AccountNumber} {account.SortCode}\n \n );\n case 'Current':\n case 'LoyaltyCard':\n case 'MotorLoan':\n return <>{account.AccountNumber};\n\n case 'CreditCard':\n return (\n \n );\n default:\n return null;\n }\n }\n\n render() {\n const { accounts, location = { pathname: '' } } = this.props;\n var currentAccount = null;\n\n if (accounts && accounts.Accounts) {\n currentAccount = accounts.Accounts.find(function(element) {\n if (element) {\n return (\n Utility.hexEncode(element.AccountKey.Key) ===\n location.pathname.split('/').pop()\n );\n }\n return false;\n });\n }\n return (\n
    \n {accounts && accounts.Accounts && accounts.Accounts.length > 0\n ? accounts.Accounts.map((account, index) => {\n // status === 1 means only show closed accounts\n if (\n account.AccountStatus !== 'Closed' &&\n this.props.status === 1\n ) {\n return null;\n }\n // Ccb have asked not to see closed accounts in sidebar\n if (\n account.AccountStatus === 'Closed' /*&& !this.props.status*/\n ) {\n return null;\n }\n\n return (\n \n \n {account.AccountName}\n \n \n \n \n \n {this.generateAccountInfo(account)}\n \n \n );\n })\n : ''}\n
    \n );\n }\n}\n\nSelectAccounts.propTypes = {\n accounts: PropTypes.any,\n error: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n i18n: PropTypes.any,\n isFetching: PropTypes.any,\n location: PropTypes.any,\n status: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { accountsDefinition } = state;\n return {\n ...accountsDefinition,\n };\n};\n\nexport default withRouter(\n connect(\n mapStateToProps,\n { ...mapDispatchToPropsAccounts },\n )(SelectAccounts),\n);\n","import React from 'react';\nimport SelectAccounts from './SelectAccounts';\n\nclass SelectAccountsTest extends React.Component {\n render() {\n return (\n <>\n

    Test Widget:

    \n \n \n );\n }\n}\n\nexport default SelectAccountsTest;\n","import React from 'react';\nimport SelectAccountsTest from './SelectAccountsTest';\nimport { PrivateRoute } from '@myie/interact-dom';\n\nconst Routes = [\n ,\n];\n\nexport default Routes;\n","import SelectAccounts from './SelectAccounts';\nimport Routes from './Routes';\n\nexport { SelectAccounts, Routes };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert } from 'reactstrap';\n\nclass CustomAlert extends React.Component {\n onDismiss = () => {\n const { closeAlert, index } = this.props;\n closeAlert(index);\n };\n\n render() {\n const { message, index, alertVisibleArray } = this.props;\n return (\n <>\n \n {message}\n \n

    \n {message}\n

    \n \n );\n }\n}\n\nCustomAlert.propTypes = {\n alertVisibleArray: PropTypes.any,\n closeAlert: PropTypes.any,\n index: PropTypes.any,\n message: PropTypes.any,\n};\n\nexport default CustomAlert;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport CustomAlert from './CustomAlert';\nimport { mapDispatchToProps as mapDispatchToPropsAccounts } from '@myie/interact-messaging-system';\n\nclass SystemMessage extends React.Component {\n constructor(props) {\n super(props);\n const {\n fetchSystemMessagesIfNeeded,\n alertVisibleArray,\n messageArray,\n } = this.props;\n const request = { ExtendedProperties: {} };\n fetchSystemMessagesIfNeeded(request);\n this.state = {\n alertVisibleArray:\n alertVisibleArray && alertVisibleArray.length ? alertVisibleArray : [],\n messages: messageArray && messageArray.length ? messageArray : [],\n };\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { systemMessages, saveSytemMessageArray } = nextProps;\n let { alertVisibleArray, messages } = prevState;\n if (systemMessages && !alertVisibleArray.length && !messages.length) {\n return systemMessages.SystemMessages.map((message, index) => {\n alertVisibleArray[index] = true;\n messages[index] = message.Body;\n saveSytemMessageArray(alertVisibleArray, messages);\n return {\n ...prevState,\n ...alertVisibleArray,\n ...messages,\n };\n });\n } else {\n return null;\n }\n }\n\n closeAlert = index => {\n let { alertVisibleArray, messages } = this.state;\n let { saveSytemMessageArray } = this.props;\n alertVisibleArray[index] = false;\n saveSytemMessageArray(alertVisibleArray, messages);\n this.setState({ ...this.state, alertVisibleArray: alertVisibleArray });\n };\n\n renderAlerts = (alertVisibleArray, messages) => {\n return messages.map((message, index) => {\n return (\n \n );\n });\n };\n\n render() {\n const { alertVisibleArray, messages } = this.state;\n if (alertVisibleArray.length && messages.length) {\n return this.renderAlerts(alertVisibleArray, messages);\n } else {\n return null;\n }\n }\n}\n\nSystemMessage.propTypes = {\n alertVisibleArray: PropTypes.any,\n fetchSystemMessagesIfNeeded: PropTypes.any,\n messageArray: PropTypes.any,\n saveSytemMessageArray: PropTypes.any,\n systemMessages: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { messagingSystemDefinition } = state;\n return {\n ...messagingSystemDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToPropsAccounts,\n)(SystemMessage);\n","import SystemMessage from './SystemMessage';\n\nexport { SystemMessage };\n","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */module.exports = [{\"name\":\"AddressLookup.js\",\"description\":\"AddressLookup component\",\"props\":{\"callback\":{\"type\":{\"name\":\"func\"},\"required\":false,\"description\":\"Callback function\"},\"children\":{\"type\":{\"name\":\"element\"},\"required\":true,\"description\":\"Children of the component\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Description text\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Group style class name\"},\"id\":{\"type\":{\"name\":\"number\"},\"required\":true,\"description\":\"The address ID\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"The address label\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Label style class name\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"The address sub label\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport {\\r\\n Card,\\r\\n Input,\\r\\n Label,\\r\\n InputGroupAddon,\\r\\n InputGroupText,\\r\\n InputGroup,\\r\\n ListGroup,\\r\\n ListGroupItem,\\r\\n Alert,\\r\\n} from 'reactstrap';\\r\\nimport i18n from 'i18next';\\r\\nimport { Form as FormUpdater, Connection } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * AddressLookup component\\r\\n */\\r\\nclass AddressLookup extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n error: {},\\r\\n response: {},\\r\\n form: {\\r\\n address: {\\r\\n rules: {\\r\\n required: true,\\r\\n },\\r\\n },\\r\\n },\\r\\n };\\r\\n }\\r\\n\\r\\n selectAddress = (e, address, callback) => {\\r\\n if (typeof callback === 'function') {\\r\\n callback(address);\\r\\n }\\r\\n this.setState({ ...this.state, error: {}, response: {} });\\r\\n };\\r\\n\\r\\n processAddresses = (json, callback) => {\\r\\n if (json.ResponseStatus === 'Success') {\\r\\n this.setState({ ...this.state, response: json, error: null });\\r\\n if (json.Addresses.length === 1 && typeof callback === 'function') {\\r\\n callback(json.Addresses[0]);\\r\\n }\\r\\n } else {\\r\\n this.setState({ ...this.state, error: {}, response: json });\\r\\n }\\r\\n };\\r\\n\\r\\n onChange = e => {\\r\\n const form = FormUpdater.update(this.state.form, e.target);\\r\\n this.setState({ ...this.state, form });\\r\\n };\\r\\n\\r\\n onClick = (e, callback) => {\\r\\n const { value = '' } = this.state.form.address;\\r\\n\\r\\n const request = {\\r\\n Postcode: value,\\r\\n HouseNumber: '',\\r\\n };\\r\\n return fetch(Connection.baseUrl() + `/addresslookup/v1.0/addresses/find`, {\\r\\n method: 'post',\\r\\n headers: Connection.headers(),\\r\\n body: JSON.stringify(request),\\r\\n })\\r\\n .then(response => Connection.errored(response))\\r\\n .then(response => response.json())\\r\\n .then(json => this.processAddresses(json, callback))\\r\\n .catch(error => this.setState({ ...this.state, error, response: {} }));\\r\\n };\\r\\n\\r\\n render() {\\r\\n const {\\r\\n children,\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n id,\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n callback,\\r\\n ...rest\\r\\n } = this.props;\\r\\n const { value = '' } = this.state.form.address;\\r\\n const { response = {}, error = {} } = this.state;\\r\\n const addressComponents = [];\\r\\n if (Array.isArray(response.Addresses)) {\\r\\n response.Addresses.forEach(address => {\\r\\n addressComponents.push(\\r\\n this.selectAddress(e, address, callback)}\\r\\n >\\r\\n {address.BuildingName} {address.BuildingNumber}{' '}\\r\\n {address.AddressLine1} {address.Postcode}\\r\\n ,\\r\\n );\\r\\n });\\r\\n }\\r\\n return (\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n this.onClick(e, callback)}\\r\\n />\\r\\n \\r\\n \\r\\n \\r\\n {children}\\r\\n\\r\\n {error && error.message ? (\\r\\n \\r\\n {error.message}\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n {response.ResponseStatus === 'InvalidPostcodeFormat' ? (\\r\\n \\r\\n {i18n.t('common:AddressLookup.invalidPostcodeFormat', {\\r\\n defaultValue: `You have entered an invalide postcode format.`,\\r\\n })}\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n {response.ResponseStatus === 'NotFound' ? (\\r\\n \\r\\n {i18n.t('common:AddressLookup.notFound', {\\r\\n defaultValue: `No Address has been found for entered Postcode.`,\\r\\n })}\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n {response.ResponseStatus === 'Failed' ? (\\r\\n \\r\\n {i18n.t('common:AddressLookup.failed', {\\r\\n defaultValue: `Postcode lookup is currently unavailable.`,\\r\\n })}\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n {addressComponents.length === 1 ? (\\r\\n \\r\\n {i18n.t('common:AddressLookup.singleAddress', {\\r\\n defaultValue: `A single Address has been found.`,\\r\\n })}\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n {addressComponents.length > 1 ? (\\r\\n
    \\r\\n \\r\\n {i18n.t('common:AddressLookup.multipleAddresses', {\\r\\n defaultValue: `Multiple Addresses have been found please select your address.`,\\r\\n })}\\r\\n \\r\\n \\r\\n {addressComponents}\\r\\n \\r\\n
    \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nAddressLookup.propTypes = {\\r\\n /**\\r\\n * Callback function\\r\\n */\\r\\n callback: PropTypes.func,\\r\\n /**\\r\\n * Children of the component\\r\\n */\\r\\n children: PropTypes.element.isRequired,\\r\\n /**\\r\\n * Description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Group style class name\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * The address ID\\r\\n */\\r\\n id: PropTypes.number.isRequired,\\r\\n /**\\r\\n * The address label\\r\\n */\\r\\n label: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Label style class name\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * The address sub label\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n};\\r\\n\\r\\nexport default AddressLookup;\\r\\n\",\"examples\":[]},{\"name\":\"AuthButton.js\",\"description\":\"AuthButton component\",\"props\":{\"history\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Used for routing\"},\"url\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Used for redirecting\"},\"userLogout\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"Used to logout current session\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { connect } from 'react-redux';\\r\\nimport { Button } from 'reactstrap';\\r\\nimport { withRouter } from 'react-router-dom';\\r\\nimport { mapDispatchToProps } from '@myie/interact-shared';\\r\\nimport { FormattedDate, Value } from '@myie/interact-dom';\\r\\nimport { Trans } from 'react-i18next';\\r\\nimport i18n from 'i18next';\\r\\nimport { Session } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * AuthButton component\\r\\n */\\r\\nclass AuthIndicator extends React.Component {\\r\\n render() {\\r\\n const { history, userLogout, url } = this.props;\\r\\n const customer = Session.customer();\\r\\n return Session.isAuthenticated() ? (\\r\\n
    \\r\\n \\r\\n Hi . You last logged in{' '}\\r\\n \\r\\n \\r\\n {\\r\\n clearInterval(window.sessionStorage.getItem('timeoutID'));\\r\\n Session.abandon();\\r\\n userLogout();\\r\\n history.push(url);\\r\\n }}\\r\\n >\\r\\n {i18n.t('common:welcome.signOut', {\\r\\n defaultValue: 'Sign out',\\r\\n })}\\r\\n \\r\\n
    \\r\\n ) : (\\r\\n ''\\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nAuthIndicator.propTypes = {\\r\\n /**\\r\\n * Used for routing\\r\\n */\\r\\n history: PropTypes.object,\\r\\n /**\\r\\n * Used for redirecting\\r\\n */\\r\\n url: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Used to logout current session\\r\\n */\\r\\n userLogout: PropTypes.func.isRequired,\\r\\n};\\r\\n\\r\\nconst AuthButton = withRouter(\\r\\n connect(\\r\\n null,\\r\\n mapDispatchToProps,\\r\\n )(AuthIndicator),\\r\\n);\\r\\n\\r\\nexport default AuthButton;\\r\\n\",\"examples\":[]},{\"name\":\"Check.js\",\"description\":\"Check box component\",\"props\":{\"checked\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"if check box is ticked\"},\"children\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"element\"},{\"name\":\"array\"}]},\"required\":false,\"description\":\"Any children of the component\"},\"className\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"checkbox description\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"is checkbox disabled?\"},\"field\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"input field\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"},\"id\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"checkbox id?\"},\"label\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"},\"required\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"should show errors\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Should show errors?\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Input, Label } from 'reactstrap';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * Check box component\\r\\n */\\r\\nclass Check extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n showErrors = true,\\r\\n validation = {},\\r\\n children,\\r\\n id,\\r\\n disabled,\\r\\n required,\\r\\n checked,\\r\\n field,\\r\\n className = '',\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n suffix = '',\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n {label} {subLabel.length > 0 ? {subLabel} : ''}\\r\\n {description.length > 0 ? (\\r\\n {description}\\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n {children}\\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {showErrors ? : ''}\\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nCheck.propTypes = {\\r\\n /**\\r\\n * if check box is ticked\\r\\n */\\r\\n checked: PropTypes.bool,\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.array]),\\r\\n className: PropTypes.string,\\r\\n /**\\r\\n * checkbox description\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * is checkbox disabled?\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * input field\\r\\n */\\r\\n field: PropTypes.any,\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * checkbox id?\\r\\n */\\r\\n id: PropTypes.any,\\r\\n label: PropTypes.any,\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * should show errors\\r\\n */\\r\\n required: PropTypes.any,\\r\\n /**\\r\\n * Should show errors?\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n subLabel: PropTypes.string,\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default Check;\\r\\n\",\"examples\":[{\"name\":\"CheckExample\",\"description\":\"Check example\",\"code\":\"import React from 'react';\\r\\nimport { Check } from '@myie/interact-dom';\\r\\nimport { Row, Col, FormGroup } from 'reactstrap';\\r\\n\\r\\n/** Check example */\\r\\nclass CheckExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: false,\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = () => {\\r\\n const { value } = this.state;\\r\\n this.setState({ value: !value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default CheckExample;\\r\\n\"}]},{\"name\":\"Currency.js\",\"description\":\"Currency component\\r\\nwill display an input field\\r\\nwith decimal places according to the currency,\\r\\nif no currency is given, no decimal places will be added\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"code\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Currency code\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Currency description\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input disabled or not\"},\"dp\":{\"type\":{\"name\":\"number\"},\"required\":false,\"description\":\"decimal places\"},\"maxDigits\":{\"type\":{\"name\":\"number\"},\"required\":false,\"description\":\"Maximum number of digits\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Currency ID\"},\"inputGroupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for input group\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"onBlur\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onBlur function\"},\"onChange\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onChange function\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input required or not\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport {\\r\\n Input,\\r\\n Label,\\r\\n InputGroup,\\r\\n InputGroupAddon,\\r\\n InputGroupText,\\r\\n} from 'reactstrap';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\nimport currency from 'react-currency-formatter';\\r\\nimport symbols from './symbols';\\r\\n\\r\\n/**\\r\\n * Currency component\\r\\n * will display an input field\\r\\n * with decimal places according to the currency,\\r\\n * if no currency is given, no decimal places will be added\\r\\n */\\r\\nclass Currency extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n dp: dpProp = null,\\r\\n code,\\r\\n children,\\r\\n validation = {},\\r\\n inputGroupClassName = '',\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n showErrors = true,\\r\\n id,\\r\\n field,\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n disabled,\\r\\n required,\\r\\n suffix = '',\\r\\n onChange,\\r\\n onBlur,\\r\\n maxDigits = 10, //Currency Default restricted to 10 digits, make this - false to remove the restriction\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n\\r\\n // added this cludge to find position of symbol and decimal places (when not specified) as I didn't want to duplicate the react-currency-formatter code\\r\\n // there may be a better way to do this in the future\\r\\n let position = null;\\r\\n let dp = dpProp;\\r\\n if (code) {\\r\\n position = currency({\\r\\n quantity: 0,\\r\\n currency: code,\\r\\n symbol: '!',\\r\\n decimal: '.',\\r\\n });\\r\\n if (!dp) {\\r\\n //If dp not specified, use decimal places related to the currency\\r\\n let tempExtract =\\r\\n position.replace(' ', '').length - position.indexOf('.') - 1;\\r\\n dp = position.endsWith('!') ? tempExtract - 1 : tempExtract;\\r\\n }\\r\\n }\\r\\n const dpPat = !dp || dp === 0 ? '' : `([.]{1}[0-9]{0,${dp}})?`;\\r\\n const digitPat = !maxDigits ? '*' : `{0,${maxDigits}}`;\\r\\n const pattern = `^[0-9]${digitPat}${dpPat}$`;\\r\\n const inputOverride = (e, dp, func) => {\\r\\n const { target = {} } = e;\\r\\n const { value = '' } = target;\\r\\n if (\\r\\n dp > 0 &&\\r\\n value.indexOf('.') !== -1 &&\\r\\n value.length - value.indexOf('.') > dp + 1\\r\\n ) {\\r\\n return;\\r\\n }\\r\\n const found = value.match(new RegExp(pattern));\\r\\n if (value && !found) {\\r\\n return;\\r\\n }\\r\\n\\r\\n if (value && target.validity && !target.validity.valid) {\\r\\n return;\\r\\n }\\r\\n if (!value || !isNaN(parseFloat(value))) {\\r\\n if (func) {\\r\\n func(e);\\r\\n }\\r\\n }\\r\\n };\\r\\n\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n const symbol = symbols[code] || code;\\r\\n return (\\r\\n
    \\r\\n {label || subLabel || description ? (\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n {position && position.startsWith('!') ? (\\r\\n \\r\\n {symbol}\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n inputOverride(event, dp, onBlur)}\\r\\n onChange={event => inputOverride(event, dp, onChange)}\\r\\n invalid={Validate.isInvalid(state)}\\r\\n valid={Validate.isValid(state)}\\r\\n id={id}\\r\\n name={fieldName}\\r\\n value={value}\\r\\n type=\\\"text\\\"\\r\\n inputMode={dp === 0 ? 'numeric' : 'decimal'}\\r\\n pattern={pattern}\\r\\n required={required}\\r\\n disabled={disabled}\\r\\n {...rest}\\r\\n />\\r\\n {position && position.endsWith('!') ? (\\r\\n \\r\\n {symbol}\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {children}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nCurrency.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * Currency code\\r\\n */\\r\\n code: PropTypes.string,\\r\\n /**\\r\\n * Currency description\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Input disabled or not\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * decimal places\\r\\n */\\r\\n dp: PropTypes.number,\\r\\n /**\\r\\n * Maximum number of digits\\r\\n */\\r\\n maxDigits: PropTypes.number,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Currency ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Style class name for input group\\r\\n */\\r\\n inputGroupClassName: PropTypes.string,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * onBlur function\\r\\n */\\r\\n onBlur: PropTypes.func.isRequired,\\r\\n /**\\r\\n * onChange function\\r\\n */\\r\\n onChange: PropTypes.func.isRequired,\\r\\n /**\\r\\n * Input required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default Currency;\\r\\n\",\"examples\":[{\"name\":\"CurrencyExampleGBP\",\"description\":\"Currency GBP example\",\"code\":\"import React from 'react';\\r\\nimport { Currency } from '@myie/interact-dom';\\r\\nimport { Row, Col, FormGroup } from 'reactstrap';\\r\\n\\r\\n/** Currency GBP example */\\r\\nclass CurrencyExampleGBP extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n form: {\\r\\n amount: {\\r\\n value: 1500,\\r\\n },\\r\\n },\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { form } = this.state;\\r\\n const value = e.target.value;\\r\\n form.amount.value = value;\\r\\n this.setState({ form });\\r\\n };\\r\\n\\r\\n render() {\\r\\n const currencyCode = 'GBP';\\r\\n const { form } = this.state;\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default CurrencyExampleGBP;\\r\\n\"},{\"name\":\"CurrencyExampleLKR\",\"description\":\"Currency LKR example\",\"code\":\"import React from 'react';\\r\\nimport { Currency } from '@myie/interact-dom';\\r\\nimport { Row, Col, FormGroup } from 'reactstrap';\\r\\n\\r\\n/** Currency LKR example */\\r\\nclass CurrencyExampleLKR extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n form: {\\r\\n amount: {\\r\\n value: 1500,\\r\\n },\\r\\n },\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { form } = this.state;\\r\\n const value = e.target.value;\\r\\n form.amount.value = value;\\r\\n this.setState({ form });\\r\\n };\\r\\n\\r\\n render() {\\r\\n const currencyCode = 'LKR';\\r\\n const { form } = this.state;\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default CurrencyExampleLKR;\\r\\n\"}]},{\"name\":\"Date.js\",\"description\":\"Date component (calendar date picker)\\r\\nwill display an input field with the calendar icon\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"className\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for InputGroup\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Date description text\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input disabled or not\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Date ID\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"onBlur\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onBlur function\"},\"onChange\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onChange function\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input required or not\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport {\\r\\n Input,\\r\\n Label,\\r\\n InputGroup,\\r\\n InputGroupAddon,\\r\\n InputGroupText,\\r\\n} from 'reactstrap';\\r\\nimport i18n from 'i18next';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\nimport Datetime from 'react-datetime';\\r\\n\\r\\n/**\\r\\n * Date component (calendar date picker)\\r\\n * will display an input field with the calendar icon\\r\\n */\\r\\nclass Date extends React.Component {\\r\\n render() {\\r\\n const {\\r\\n children,\\r\\n validation = {},\\r\\n className = '',\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n showErrors = true,\\r\\n id,\\r\\n field,\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n suffix = '',\\r\\n disabled,\\r\\n required,\\r\\n onChange,\\r\\n onBlur,\\r\\n ...rest\\r\\n } = this.props;\\r\\n const { value = '', state = {} } = validation;\\r\\n let fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n\\r\\n const icon =\\r\\n 'data:image/png;base64,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';\\r\\n const renderInput = function(props, openCalendar) {\\r\\n return (\\r\\n \\r\\n \\\"Calendar\\\"\\r\\n \\r\\n );\\r\\n };\\r\\n\\r\\n const dateChange = e => {\\r\\n const val = typeof e !== 'string' ? e.format('DD/MM/YYYY') : e;\\r\\n onBlur({\\r\\n target: {\\r\\n name: fieldName,\\r\\n value: val,\\r\\n },\\r\\n });\\r\\n };\\r\\n\\r\\n return (\\r\\n
    \\r\\n {label || subLabel || description ? (\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {children}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nDate.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * Style class name for InputGroup\\r\\n */\\r\\n className: PropTypes.string,\\r\\n /**\\r\\n * Date description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Input disabled or not\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Date ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * onBlur function\\r\\n */\\r\\n onBlur: PropTypes.func.isRequired,\\r\\n /**\\r\\n * onChange function\\r\\n */\\r\\n onChange: PropTypes.func.isRequired,\\r\\n /**\\r\\n * Input required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default Date;\\r\\n\",\"examples\":[{\"name\":\"DateExample\",\"description\":\"Date example\",\"code\":\"import React from 'react';\\r\\nimport { Date } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Date example */\\r\\nclass DateExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChangeDate = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default DateExample;\\r\\n\"}]},{\"name\":\"DatePicker.js\",\"description\":\"Datepicker component\\r\\nwill display Day Month Year dropdowns\",\"props\":{\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Datepicker description text\"},\"disabled\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"pickers disabled or not\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Datepicker ID\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"onBlur\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onBlur function\"},\"onChange\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onChange function\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input required or not\"},\"selectedDate\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Selected date value\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"showFutureDate\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Will show future dates\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport i18n from 'i18next';\\r\\nimport { InputGroup, Input, Label } from 'reactstrap';\\r\\nimport { Validate } from '@myie/interact';\\r\\nimport moment from 'moment';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\n\\r\\n/**\\r\\n * Datepicker component\\r\\n * will display Day Month Year dropdowns\\r\\n */\\r\\nclass DatePicker extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n daysInMonth: 31,\\r\\n day: false,\\r\\n month: false,\\r\\n year: false,\\r\\n };\\r\\n }\\r\\n\\r\\n componentDidMount() {\\r\\n if (this.props.selectedDate) {\\r\\n let dateArr = this.props.selectedDate.split('-');\\r\\n this.setState({\\r\\n year: dateArr[0],\\r\\n month: dateArr[1],\\r\\n day: dateArr[2],\\r\\n });\\r\\n }\\r\\n }\\r\\n\\r\\n getDaysInMonth = (year, month) => {\\r\\n return moment(year + '-' + month, 'YYYY-MM').daysInMonth();\\r\\n };\\r\\n\\r\\n changeDate = (e, f) => {\\r\\n const { name, value } = e.target;\\r\\n const { field } = this.props;\\r\\n const data = { ...this.state };\\r\\n data[name] = value;\\r\\n if (data.year && data.month) {\\r\\n data.daysInMonth = this.getDaysInMonth(data.year, data.month);\\r\\n data.day = data.day > data.daysInMonth ? null : data.day;\\r\\n }\\r\\n const date = data.year + '-' + data.month + '-' + data.day;\\r\\n f({ target: { name: field, value: date } });\\r\\n this.setState({\\r\\n ...this.state,\\r\\n [name]: data[name],\\r\\n daysInMonth: data.daysInMonth,\\r\\n });\\r\\n };\\r\\n\\r\\n dateOnChange = e => {\\r\\n const { onChange } = this.props;\\r\\n this.renderMonths();\\r\\n this.renderDays();\\r\\n this.renderYears();\\r\\n this.changeDate(e, onChange);\\r\\n };\\r\\n\\r\\n dateOnBlur = e => {\\r\\n const { onBlur, onChange } = this.props;\\r\\n const data = { ...this.state };\\r\\n if (data.day && data.month && data.year) {\\r\\n this.changeDate(e, onBlur);\\r\\n } else {\\r\\n this.changeDate(e, onChange);\\r\\n }\\r\\n };\\r\\n\\r\\n renderDays = () => {\\r\\n let startFrom = moment().format('DD') - 0;\\r\\n let days = [];\\r\\n if (this.props.showFutureDate) {\\r\\n for (let i = startFrom; i <= this.state.daysInMonth; i++) {\\r\\n days.push(\\r\\n ,\\r\\n );\\r\\n }\\r\\n } else {\\r\\n Array.from(Array(this.state.daysInMonth).keys()).map(counter => {\\r\\n let day = counter + 1;\\r\\n days.push(\\r\\n ,\\r\\n );\\r\\n return true;\\r\\n });\\r\\n }\\r\\n return days;\\r\\n };\\r\\n\\r\\n renderMonths = () => {\\r\\n let startFrom = moment().format('MM') - 0;\\r\\n let year = moment().format('YYYY') - 0;\\r\\n let options = [];\\r\\n if (\\r\\n this.props.showFutureDate &&\\r\\n (!this.state.year || year === this.state.year - 0)\\r\\n ) {\\r\\n for (let i = startFrom; i <= moment.months().length - 0; i++) {\\r\\n options.push(\\r\\n \\r\\n {moment.months()[i - 1]}\\r\\n ,\\r\\n );\\r\\n }\\r\\n } else {\\r\\n moment.months().map(month => {\\r\\n options.push(\\r\\n \\r\\n {month}\\r\\n ,\\r\\n );\\r\\n return true;\\r\\n });\\r\\n }\\r\\n this.renderDays();\\r\\n return options;\\r\\n };\\r\\n\\r\\n renderYears = () => {\\r\\n let years = [];\\r\\n const thisYear = new Date().getFullYear();\\r\\n if (this.props.showFutureDate) {\\r\\n Array.from(Array(2).keys()).map(counter => {\\r\\n let year = thisYear + counter;\\r\\n years.push(\\r\\n ,\\r\\n );\\r\\n return true;\\r\\n });\\r\\n } else {\\r\\n Array.from(Array(120).keys()).map(counter => {\\r\\n let year = thisYear - counter - 18;\\r\\n years.push(\\r\\n ,\\r\\n );\\r\\n return true;\\r\\n });\\r\\n }\\r\\n return years;\\r\\n };\\r\\n\\r\\n render() {\\r\\n const {\\r\\n showErrors = true,\\r\\n field,\\r\\n id,\\r\\n validation = {},\\r\\n groupClassName,\\r\\n label,\\r\\n labelClassName,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n disabled,\\r\\n required,\\r\\n suffix = '',\\r\\n } = this.props;\\r\\n const { state = {} } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n
    \\r\\n \\r\\n {label} {subLabel.length > 0 ? {subLabel} : ''}\\r\\n {description.length > 0 ? (\\r\\n {description}\\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n \\r\\n \\r\\n {i18n.t('common:datePicker.dayLabel', {\\r\\n defaultValue: 'Day',\\r\\n })}\\r\\n \\r\\n \\r\\n \\r\\n {this.renderDays()}\\r\\n \\r\\n \\r\\n {i18n.t('common:datePicker.monthLabel', {\\r\\n defaultValue: 'Month',\\r\\n })}\\r\\n \\r\\n \\r\\n \\r\\n {this.renderMonths()}\\r\\n \\r\\n \\r\\n {i18n.t('common:datePicker.yearLabel', {\\r\\n defaultValue: 'Year',\\r\\n })}\\r\\n \\r\\n \\r\\n \\r\\n {this.renderYears()}\\r\\n \\r\\n \\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nDatePicker.propTypes = {\\r\\n /**\\r\\n * Datepicker description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * pickers disabled or not\\r\\n */\\r\\n disabled: PropTypes.any,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Datepicker ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * onBlur function\\r\\n */\\r\\n onBlur: PropTypes.func.isRequired,\\r\\n /**\\r\\n * onChange function\\r\\n */\\r\\n onChange: PropTypes.func.isRequired,\\r\\n /**\\r\\n * Input required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Selected date value\\r\\n */\\r\\n selectedDate: PropTypes.string,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Will show future dates\\r\\n */\\r\\n showFutureDate: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default DatePicker;\\r\\n\",\"examples\":[{\"name\":\"DatePicker\",\"description\":\"DatePicker example\",\"code\":\"import React from 'react';\\r\\nimport { DatePicker } from '@myie/interact-dom';\\r\\nimport { Row, Col, FormGroup } from 'reactstrap';\\r\\n\\r\\n/** DatePicker example */\\r\\nclass DateExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default DateExample;\\r\\n\"}]},{\"name\":\"Dialog.js\",\"description\":\"Dialog component\\r\\nwill display a modal\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"isOpen\":{\"type\":{\"name\":\"bool\"},\"required\":true,\"description\":\"Modal is shown or not\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Dialog ID\"},\"title\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Title text\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Modal, ModalHeader, ModalBody } from 'reactstrap';\\r\\n\\r\\n/**\\r\\n * Dialog component\\r\\n * will display a modal\\r\\n */\\r\\nclass Dialog extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const { isOpen, children, id, title, ...rest } = props;\\r\\n //Accessibility - Role: Dialog and tabindex is set from \\r\\n return (\\r\\n \\r\\n {title}\\r\\n {children}\\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nDialog.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * Modal is shown or not\\r\\n */\\r\\n isOpen: PropTypes.bool.isRequired,\\r\\n /**\\r\\n * Dialog ID\\r\\n */\\r\\n id: PropTypes.string,\\r\\n /**\\r\\n * Title text\\r\\n */\\r\\n title: PropTypes.string.isRequired,\\r\\n};\\r\\n\\r\\nexport default Dialog;\\r\\n\",\"examples\":[{\"name\":\"DialogExample\",\"description\":\"Dialog example\",\"code\":\"import React from 'react';\\r\\nimport { Dialog } from '@myie/interact-dom';\\r\\nimport { Row, Col, FormGroup } from 'reactstrap';\\r\\n\\r\\n/** Dialog example */\\r\\nclass DialogExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: true,\\r\\n };\\r\\n }\\r\\n\\r\\n onClick = () => {\\r\\n const { value } = this.state;\\r\\n this.setState({ value: !value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n const { value } = this.state;\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

    click Here to close the modal

    \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default DialogExample;\\r\\n\"}]},{\"name\":\"DropDown.js\",\"description\":\"DropDown component\\r\\nwill display a dropdown\",\"props\":{\"children\":{\"type\":{\"name\":\"array\"},\"required\":true,\"description\":\"Any children of the component\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Date description text\"},\"disabled\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"DropDown disabled or not\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"DropDown ID\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"DropDown required or not\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Label, Input } from 'reactstrap';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * DropDown component\\r\\n * will display a dropdown\\r\\n */\\r\\nclass DropDown extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n children,\\r\\n validation = {},\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n showErrors = true,\\r\\n disabled,\\r\\n required,\\r\\n id,\\r\\n field,\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n suffix = '',\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n
    \\r\\n {label || subLabel || description ? (\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n {children}\\r\\n \\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nDropDown.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.array.isRequired,\\r\\n /**\\r\\n * Date description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * DropDown disabled or not\\r\\n */\\r\\n disabled: PropTypes.any,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * DropDown ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * DropDown required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default DropDown;\\r\\n\",\"examples\":[{\"name\":\"DropDownExample\",\"description\":\"Dropdown example\",\"code\":\"import React from 'react';\\r\\nimport { DropDown } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Dropdown example */\\r\\nclass DropDownExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default DropDownExample;\\r\\n\"}]},{\"name\":\"Errors.js\",\"description\":\"Errors component\\r\\nwill display error message\",\"props\":{\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Field names\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { FormFeedback } from 'reactstrap';\\r\\nimport { Validate } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * HasErrors function\\r\\n * check the given object and\\r\\n * will return true or false\\r\\n */\\r\\nconst HasErrors = validation => {\\r\\n const { state = {} } = validation;\\r\\n const { approval = {}, dirty } = state;\\r\\n if (approval.approved || !approval.failed || !dirty) {\\r\\n return true;\\r\\n }\\r\\n return false;\\r\\n};\\r\\n\\r\\n/**\\r\\n * Errors component\\r\\n * will display error message\\r\\n */\\r\\nclass Errors extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const { validation = {}, field, ...rest } = props;\\r\\n const { state = {} } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}-${field[1]}`;\\r\\n const { approval = {}, dirty } = state;\\r\\n const children = [];\\r\\n if (!approval.failed || !dirty) {\\r\\n return '';\\r\\n }\\r\\n const errors = Validate.errors(validation);\\r\\n errors.forEach(error => {\\r\\n var i = 0;\\r\\n children.push(\\r\\n \\r\\n {error.message}\\r\\n

    ,\\r\\n );\\r\\n });\\r\\n return children.length ? (\\r\\n \\r\\n {children}\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nErrors.propTypes = {\\r\\n /**\\r\\n * Field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default Errors;\\r\\nexport { HasErrors };\\r\\n\",\"examples\":[{\"name\":\"ErrorsExample\",\"description\":\"Errors example\",\"code\":\"import React from 'react';\\r\\nimport { Errors } from '@myie/interact-dom';\\r\\nimport { Validate } from '@myie/interact';\\r\\nimport { Input, FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Errors example */\\r\\nclass ErrorsExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n form: {\\r\\n name: {\\r\\n value: '',\\r\\n state: {},\\r\\n rules: {\\r\\n title: 'Name',\\r\\n required: 'Name is required',\\r\\n },\\r\\n },\\r\\n },\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { name, value } = e.target;\\r\\n var { form } = this.state;\\r\\n form = Validate.input(name, value, form);\\r\\n this.setState({ ...this.state, form });\\r\\n };\\r\\n\\r\\n onBlur = e => {\\r\\n const { name, value } = e.target;\\r\\n var { form } = this.state;\\r\\n form = Validate.input(name, value, form, true);\\r\\n this.setState({ ...this.state, form });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default ErrorsExample;\\r\\n\"}]},{\"name\":\"FormattedCurrency.js\",\"description\":\"FormattedCurrency component\\r\\nwill format and return currency\",\"props\":{\"fallback\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"\"},\"quantity\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"number\"}]},\"required\":false,\"description\":\"Value to format\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport Currency from 'react-currency-formatter';\\r\\n\\r\\n/**\\r\\n * FormattedCurrency component\\r\\n * will format and return currency\\r\\n */\\r\\nclass FormattedCurrency extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const { quantity, ...rest } = props;\\r\\n const qty = parseFloat(quantity);\\r\\n if ((!qty || isNaN(qty)) && !(qty === 0))\\r\\n return {props.fallback || ''};\\r\\n return ;\\r\\n }\\r\\n}\\r\\n\\r\\nFormattedCurrency.propTypes = {\\r\\n fallback: PropTypes.any,\\r\\n /**\\r\\n * Value to format\\r\\n */\\r\\n quantity: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\\r\\n};\\r\\n\\r\\nexport default FormattedCurrency;\\r\\n\",\"examples\":[{\"name\":\"FormattedCurrencyGBP\",\"description\":\"FormattedCurrency example for GBP\",\"code\":\"import React from 'react';\\r\\nimport { FormattedCurrency } from '@myie/interact-dom';\\r\\nimport { Row, Col, FormGroup } from 'reactstrap';\\r\\n\\r\\n/** FormattedCurrency example for GBP */\\r\\nexport default function TextExample() {\\r\\n const currencyCode = 'GBP';\\r\\n const currencyQuantity = 1500;\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n}\\r\\n\"},{\"name\":\"FormattedCurrencyLKR\",\"description\":\"FormattedCurrency example for LKR\",\"code\":\"import React from 'react';\\r\\nimport { FormattedCurrency } from '@myie/interact-dom';\\r\\nimport { Row, Col, FormGroup } from 'reactstrap';\\r\\n\\r\\n/** FormattedCurrency example for LKR */\\r\\nexport default function TextExample() {\\r\\n const currencyCode = 'LKR';\\r\\n const currencyQuantity = 1500;\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n}\\r\\n\"}]},{\"name\":\"FormattedDate.js\",\"description\":\"FormattedDate component\\r\\nwill format and return date\",\"props\":{\"date\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"instanceOf\",\"value\":\"Date\"}]},\"required\":false,\"description\":\"Date to format\"},\"format\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"A format\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport moment from 'moment';\\r\\nimport { Settings } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * FormattedDate component\\r\\n * will format and return date\\r\\n */\\r\\nclass FormattedDate extends React.Component {\\r\\n render() {\\r\\n const { format = Settings.dateFormat, date } = this.props;\\r\\n const dateStr = moment(date).format(format);\\r\\n return <>{dateStr};\\r\\n }\\r\\n}\\r\\n\\r\\nFormattedDate.propTypes = {\\r\\n /**\\r\\n * Date to format\\r\\n */\\r\\n date: PropTypes.oneOfType([PropTypes.string, PropTypes.instanceOf(Date)]),\\r\\n /**\\r\\n * A format\\r\\n */\\r\\n format: PropTypes.string,\\r\\n};\\r\\n\\r\\nexport default FormattedDate;\\r\\n\",\"examples\":[{\"name\":\"FormattedDateExample\",\"description\":\"FormattedDate example\",\"code\":\"import React from 'react';\\r\\nimport { FormattedDate } from '@myie/interact-dom';\\r\\n\\r\\n/** FormattedDate example */\\r\\nclass FormattedDateExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return ;\\r\\n }\\r\\n}\\r\\n\\r\\nexport default FormattedDateExample;\\r\\n\"},{\"name\":\"FormattedDateExampleWithFormat\",\"description\":\"FormattedDate example with given format\",\"code\":\"import React from 'react';\\r\\nimport { FormattedDate } from '@myie/interact-dom';\\r\\n\\r\\n/** FormattedDate example with given format*/\\r\\nclass FormattedDateExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return ;\\r\\n }\\r\\n}\\r\\n\\r\\nexport default FormattedDateExample;\\r\\n\"}]},{\"name\":\"GoogleTagManager.js\",\"description\":\"GoogleTagManager component\",\"props\":{\"additionalEvents\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"\"},\"dataLayerName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"},\"gtmId\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"\"},\"previewVariables\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"},\"scheme\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"},\"scriptId\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"\"}},\"code\":\"import React from 'react';\\r\\nimport gtmParts from 'react-google-tag-manager';\\r\\nimport PropTypes from 'prop-types';\\r\\n\\r\\n/**\\r\\n * GoogleTagManager component\\r\\n */\\r\\nclass GoogleTagManager extends React.Component {\\r\\n componentDidMount() {\\r\\n const dataLayerName = this.props.dataLayerName || 'dataLayer';\\r\\n const scriptId = this.props.scriptId || 'react-google-tag-manager-gtm';\\r\\n\\r\\n if (!window[dataLayerName]) {\\r\\n const script = document.createElement('script');\\r\\n const gtmScriptNode = document.getElementById(scriptId);\\r\\n const scriptText = document.createTextNode(gtmScriptNode.textContent);\\r\\n\\r\\n script.appendChild(scriptText);\\r\\n document.head.appendChild(script);\\r\\n }\\r\\n }\\r\\n\\r\\n render() {\\r\\n const gtm = gtmParts({\\r\\n id: this.props.gtmId,\\r\\n dataLayerName: this.props.dataLayerName || 'dataLayer',\\r\\n additionalEvents: this.props.additionalEvents || {},\\r\\n previewVariables: this.props.previewVariables || false,\\r\\n scheme: this.props.scheme || 'https:',\\r\\n });\\r\\n\\r\\n return (\\r\\n
    \\r\\n
    {gtm.noScriptAsReact()}
    \\r\\n
    \\r\\n {gtm.scriptAsReact()}\\r\\n
    \\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nGoogleTagManager.propTypes = {\\r\\n additionalEvents: PropTypes.object,\\r\\n dataLayerName: PropTypes.string,\\r\\n gtmId: PropTypes.string.isRequired,\\r\\n previewVariables: PropTypes.string,\\r\\n scheme: PropTypes.string,\\r\\n scriptId: PropTypes.string,\\r\\n};\\r\\n\\r\\nexport default GoogleTagManager;\\r\\n\",\"examples\":[]},{\"name\":\"IfAuthenticated.js\",\"description\":\"IfAuthenticated component\\r\\nwill display the content only if the session is authenticated\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Session } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * IfAuthenticated component\\r\\n * will display the content only if the session is authenticated\\r\\n */\\r\\nclass IfAuthenticated extends React.Component {\\r\\n render() {\\r\\n const { children } = this.props;\\r\\n if (Session.isAuthenticated()) {\\r\\n return <>{children};\\r\\n } else return null;\\r\\n }\\r\\n}\\r\\n\\r\\nIfAuthenticated.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n};\\r\\n\\r\\nexport default IfAuthenticated;\\r\\n\",\"examples\":[]},{\"name\":\"InputMask.js\",\"description\":\"Date component\\r\\nwill display an input field\\r\\ninput will be formatted with the passing mask\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Date description text\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Is input disabled?\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Date ID\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"mask\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Any character can be escaped with a backslash\"},\"maskChar\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Character to cover unfilled parts of the mask\"},\"onBlur\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onBlur function\"},\"onChange\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onChange function\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input required or not\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Input, Label } from 'reactstrap';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\nimport InputMask from 'react-input-mask';\\r\\n\\r\\n/**\\r\\n * Date component\\r\\n * will display an input field\\r\\n * input will be formatted with the passing mask\\r\\n */\\r\\nclass Mask extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n id,\\r\\n children,\\r\\n disabled,\\r\\n required,\\r\\n validation = {},\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n mask,\\r\\n field,\\r\\n label,\\r\\n maskChar,\\r\\n showErrors = true,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n suffix = '',\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n
    \\r\\n {label || subLabel || description ? (\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n {() => (\\r\\n \\r\\n )}\\r\\n \\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {children}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nMask.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * Date description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Is input disabled?\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Date ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * Any character can be escaped with a backslash\\r\\n */\\r\\n mask: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Character to cover unfilled parts of the mask\\r\\n */\\r\\n maskChar: PropTypes.string,\\r\\n /**\\r\\n * onBlur function\\r\\n */\\r\\n onBlur: PropTypes.func.isRequired,\\r\\n /**\\r\\n * onChange function\\r\\n */\\r\\n onChange: PropTypes.func.isRequired,\\r\\n /**\\r\\n * Input required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default Mask;\\r\\n\",\"examples\":[{\"name\":\"CheckExample\",\"description\":\"Mask example\",\"code\":\"import React from 'react';\\r\\nimport { Mask } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Mask example */\\r\\nclass MaskExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n form: {\\r\\n sortcode: {},\\r\\n },\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n const { form } = this.state;\\r\\n form.sortcode.value = value;\\r\\n this.setState({ ...this.state, form });\\r\\n };\\r\\n\\r\\n render() {\\r\\n const { form } = this.state;\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default MaskExample;\\r\\n\"}]},{\"name\":\"Numeric.js\",\"description\":\"Numeric component\\r\\nwill display a numeric input feild\",\"props\":{\"children\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"element\"},{\"name\":\"array\"}]},\"required\":false,\"description\":\"Any children of the component\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Numeric description text\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input disabled or not\"},\"dp\":{\"type\":{\"name\":\"number\"},\"required\":false,\"description\":\"decimal places\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Numeric ID\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"onBlur\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onBlur function\"},\"onChange\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onChange function\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input required or not\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Input, Label } from 'reactstrap';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * Numeric component\\r\\n * will display a numeric input feild\\r\\n */\\r\\nclass Numeric extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n dp = 0,\\r\\n children,\\r\\n validation = {},\\r\\n disabled,\\r\\n required,\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n showErrors = true,\\r\\n id,\\r\\n field,\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n suffix = '',\\r\\n onChange,\\r\\n onBlur,\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n const dpPat = !dp || dp === 0 ? '' : `[.]{0,1}[0-9]{0,${dp}}`;\\r\\n const pattern = `^[0-9]*${dpPat}$`;\\r\\n\\r\\n const inputOverride = (e, dp, func) => {\\r\\n const { target = {} } = e;\\r\\n const { value = '' } = target;\\r\\n if (\\r\\n dp > 0 &&\\r\\n value.indexOf('.') !== -1 &&\\r\\n value.length - value.indexOf('.') > dp + 1\\r\\n ) {\\r\\n return;\\r\\n }\\r\\n const found = value.toString().match(new RegExp(pattern));\\r\\n if (value && !found) {\\r\\n return;\\r\\n }\\r\\n\\r\\n if (value && target.validity && !target.validity.valid) {\\r\\n return;\\r\\n }\\r\\n if (!value || !isNaN(parseFloat(value))) {\\r\\n if (func) {\\r\\n func(e);\\r\\n }\\r\\n }\\r\\n };\\r\\n\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n
    \\r\\n {label || subLabel || description ? (\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n inputOverride(event, dp, onBlur)}\\r\\n onChange={event => inputOverride(event, dp, onChange)}\\r\\n invalid={Validate.isInvalid(state)}\\r\\n valid={Validate.isValid(state)}\\r\\n id={id}\\r\\n name={fieldName}\\r\\n value={value}\\r\\n disabled={disabled}\\r\\n required={required}\\r\\n type=\\\"text\\\"\\r\\n inputMode={dp === 0 ? 'numeric' : 'decimal'}\\r\\n pattern={pattern}\\r\\n {...rest}\\r\\n />\\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {children}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nNumeric.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.oneOfType([PropTypes.element, PropTypes.array]),\\r\\n /**\\r\\n * Numeric description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Input disabled or not\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * decimal places\\r\\n */\\r\\n dp: PropTypes.number,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Numeric ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * onBlur function\\r\\n */\\r\\n onBlur: PropTypes.func.isRequired,\\r\\n /**\\r\\n * onChange function\\r\\n */\\r\\n onChange: PropTypes.func.isRequired,\\r\\n /**\\r\\n * Input required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default Numeric;\\r\\n\",\"examples\":[{\"name\":\"NumericExample\",\"description\":\"Numeric example\",\"code\":\"import React from 'react';\\r\\nimport { Numeric } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Numeric example */\\r\\nclass NumericExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default NumericExample;\\r\\n\"},{\"name\":\"NumericExample2\",\"description\":\"Numeric example with Decimal\",\"code\":\"import React from 'react';\\r\\nimport { Numeric } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Numeric example with Decimal */\\r\\nclass NumericExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default NumericExample;\\r\\n\"}]},{\"name\":\"Pagination.js\",\"description\":\"Pagination component\\r\\nwill display a pagination bar\",\"props\":{\"Total\":{\"type\":{\"name\":\"number\"},\"required\":true,\"description\":\"Total number of items\"},\"Offset\":{\"type\":{\"name\":\"number\"},\"required\":true,\"description\":\"Offset number\"},\"Size\":{\"type\":{\"name\":\"number\"},\"required\":true,\"description\":\"Number of items per page\"},\"getNextPage\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"Function to get next data\"},\"getPreviousPage\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"Function to get previous data\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport i18n from 'i18next';\\r\\nimport { Row, Col, Button } from 'reactstrap';\\r\\n\\r\\n/**\\r\\n * Pagination component\\r\\n * will display a pagination bar\\r\\n */\\r\\nclass Pagination extends React.Component {\\r\\n render() {\\r\\n const { Total, Offset, Size, getNextPage, getPreviousPage } = this.props;\\r\\n\\r\\n const totalPages = Math.ceil(Total / Size);\\r\\n const currentPage = Math.ceil(Offset / Size) + 1;\\r\\n return (\\r\\n \\r\\n \\r\\n getPreviousPage(Offset, Size)}\\r\\n disabled={currentPage === 1 ? true : false}\\r\\n >\\r\\n {i18n.t('common:pagination.previousPageBtn', {\\r\\n defaultValue: 'Previous',\\r\\n })}\\r\\n \\r\\n \\r\\n \\r\\n

    \\r\\n Page {currentPage} of {totalPages}\\r\\n

    \\r\\n \\r\\n \\r\\n getNextPage(Offset, Size, Total)}\\r\\n disabled={currentPage === totalPages ? true : false}\\r\\n >\\r\\n {i18n.t('common:pagination.nextPageBtn', {\\r\\n defaultValue: 'Next',\\r\\n })}\\r\\n \\r\\n \\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nPagination.propTypes = {\\r\\n /**\\r\\n * Total number of items\\r\\n */\\r\\n Total: PropTypes.number.isRequired,\\r\\n /**\\r\\n * Offset number\\r\\n */\\r\\n Offset: PropTypes.number.isRequired,\\r\\n /**\\r\\n * Number of items per page\\r\\n */\\r\\n Size: PropTypes.number.isRequired,\\r\\n /**\\r\\n * Function to get next data\\r\\n */\\r\\n getNextPage: PropTypes.func.isRequired,\\r\\n /**\\r\\n * Function to get previous data\\r\\n */\\r\\n getPreviousPage: PropTypes.func.isRequired,\\r\\n};\\r\\n\\r\\nexport default Pagination;\\r\\n\",\"examples\":[{\"name\":\"PaginationExample\",\"description\":\"Pagination example\",\"code\":\"import React from 'react';\\r\\nimport { Pagination } from '@myie/interact-dom';\\r\\n\\r\\n/** Pagination example */\\r\\nclass PaginationExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n Offset: 0,\\r\\n Size: 8,\\r\\n };\\r\\n }\\r\\n\\r\\n getPreviousPage = (Offset, Size) => {\\r\\n const previousOffset = Offset - Size;\\r\\n if (previousOffset >= 0) {\\r\\n this.setState({ ...this.state, Offset: previousOffset });\\r\\n }\\r\\n };\\r\\n\\r\\n getNextPage = (Offset, Size, TotalConversationsCount) => {\\r\\n const nextOffset = Offset + Size;\\r\\n if (nextOffset <= TotalConversationsCount) {\\r\\n this.setState({ ...this.state, Offset: nextOffset });\\r\\n }\\r\\n };\\r\\n\\r\\n render() {\\r\\n const TotalConversationsCount = 17;\\r\\n const { Offset, Size } = this.state;\\r\\n return (\\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default PaginationExample;\\r\\n\"}]},{\"name\":\"Radio.js\",\"description\":\"Radio component\",\"props\":{\"children\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"Any children of the component\"},\"className\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Class name\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Description for radio\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Boolean flag whether radio is disabled or not\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Field name\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Class name\"},\"id\":{\"type\":{\"name\":\"any\"},\"required\":true,\"description\":\"Radio id\"},\"label\":{\"type\":{\"name\":\"any\"},\"required\":true,\"description\":\"Radio label\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Class name for the label\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Whether radio is required or not\"},\"setValue\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"Set value for radio\"},\"value\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"bool\"},{\"name\":\"string\"}]},\"required\":true,\"description\":\"Value for radio\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label for radio\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix for radio\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Validation object\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Input, Label } from 'reactstrap';\\r\\nimport { Validate } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * Radio component\\r\\n */\\r\\nclass Radio extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n validation = {},\\r\\n value: setValue,\\r\\n children,\\r\\n disabled,\\r\\n required,\\r\\n id,\\r\\n field,\\r\\n className = '',\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n suffix = '',\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n
    \\r\\n \\r\\n \\r\\n {label} {subLabel.length > 0 ? {subLabel} : ''}\\r\\n {description.length > 0 ? (\\r\\n {description}\\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n {children}\\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nRadio.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.any,\\r\\n /**\\r\\n * Class name\\r\\n */\\r\\n className: PropTypes.string,\\r\\n /**\\r\\n * Description for radio\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Boolean flag whether radio is disabled or not\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * Field name\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Class name\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Radio id\\r\\n */\\r\\n id: PropTypes.any.isRequired,\\r\\n /**\\r\\n * Radio label\\r\\n */\\r\\n label: PropTypes.any.isRequired,\\r\\n /**\\r\\n * Class name for the label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * Whether radio is required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Set value for radio\\r\\n */\\r\\n setValue: PropTypes.any,\\r\\n /**\\r\\n * Value for radio\\r\\n */\\r\\n value: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]).isRequired,\\r\\n /**\\r\\n * Sub label for radio\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix for radio\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Validation object\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default Radio;\\r\\n\",\"examples\":[{\"name\":\"RadioExample\",\"description\":\"Radio Button example\",\"code\":\"import React from 'react';\\r\\nimport { Radio } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Radio Button example */\\r\\nclass RadioExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChangeRadioButton = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default RadioExample;\\r\\n\"}]},{\"name\":\"RadioButton.js\",\"description\":\"RadioButton component\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"RadioButton ID\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Label text\"},\"value\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"\"},\"setValue\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Button } from 'reactstrap';\\r\\nimport { HasErrors } from './Errors';\\r\\n\\r\\n/**\\r\\n * RadioButton component\\r\\n */\\r\\nclass RadioButton extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n validation = {},\\r\\n value: setValue,\\r\\n children,\\r\\n id,\\r\\n field,\\r\\n label,\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '' } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n \\r\\n {label}\\r\\n {children}\\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nRadioButton.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * RadioButton ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string,\\r\\n value: PropTypes.any,\\r\\n setValue: PropTypes.any,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default RadioButton;\\r\\n\",\"examples\":[{\"name\":\"RadioButtonExample\",\"description\":\"RadioButton example\",\"code\":\"import React from 'react';\\r\\nimport { RadioButton } from '@myie/interact-dom';\\r\\nimport { Row, Col, FormGroup } from 'reactstrap';\\r\\n\\r\\n/** RadioButton example */\\r\\nclass RadioButtonExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n }\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default RadioButtonExample;\\r\\n\"}]},{\"name\":\"RadioGroup.js\",\"description\":\"RadioGroup component\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Date description text\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"legend\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { FormGroup } from 'reactstrap';\\r\\n\\r\\n/**\\r\\n * RadioGroup component\\r\\n */\\r\\nclass RadioGroup extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n legend,\\r\\n children,\\r\\n groupClassName = '',\\r\\n labelClassName = '',\\r\\n subLabel = '',\\r\\n description = '',\\r\\n suffix = '',\\r\\n ...rest\\r\\n } = props;\\r\\n\\r\\n return (\\r\\n
    \\r\\n \\r\\n {legend} {subLabel.length > 0 ? {subLabel} : ''}\\r\\n {description.length > 0 ? (\\r\\n {description}\\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n \\r\\n {children}\\r\\n \\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nRadioGroup.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * Date description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n legend: PropTypes.any,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n};\\r\\n\\r\\nexport default RadioGroup;\\r\\n\",\"examples\":[]},{\"name\":\"RoundBadge.js\",\"description\":\"RoundBadge component\\r\\nwill display a rounded badge\",\"props\":{\"children\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Text to display on the badge\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Badge } from 'reactstrap';\\r\\n\\r\\n/**\\r\\n * RoundBadge component\\r\\n * will display a rounded badge\\r\\n */\\r\\nclass RoundBadge extends React.Component {\\r\\n render() {\\r\\n const { children, ...rest } = this.props;\\r\\n return (\\r\\n \\r\\n {children}\\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nRoundBadge.propTypes = {\\r\\n /**\\r\\n * Text to display on the badge\\r\\n */\\r\\n children: PropTypes.string,\\r\\n};\\r\\n\\r\\nexport default RoundBadge;\\r\\n\",\"examples\":[{\"name\":\"RoundBadgeExample\",\"description\":\"RoundBadge example\",\"code\":\"import React from 'react';\\r\\nimport { RoundBadge } from '@myie/interact-dom';\\r\\n\\r\\n/** RoundBadge example */\\r\\nclass RoundBadgeExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n }\\r\\n\\r\\n render() {\\r\\n return 10;\\r\\n }\\r\\n}\\r\\n\\r\\nexport default RoundBadgeExample;\\r\\n\"}]},{\"name\":\"ScrollToTop.js\",\"description\":\"ScrollToTop component\\r\\nThe given content will be scrolled to the top\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":true,\"description\":\"Any children of the component\"},\"refreshMe\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"If true the content will be forcefully scrolled to the top\"},\"location\":{\"type\":{\"name\":\"shape\",\"value\":{\"pathname\":{\"name\":\"string\",\"required\":true}}},\"required\":true,\"description\":\"Browser address\"}},\"code\":\"import { PureComponent } from 'react';\\r\\nimport { withRouter } from 'react-router';\\r\\nimport PropTypes from 'prop-types';\\r\\n\\r\\n/**\\r\\n * ScrollToTop component\\r\\n * The given content will be scrolled to the top\\r\\n */\\r\\nclass ScrollToTop extends PureComponent {\\r\\n componentDidUpdate(prevProps) {\\r\\n const { location } = this.props;\\r\\n\\r\\n if (location.pathname !== prevProps.location.pathname) {\\r\\n window.scrollTo(0, 0);\\r\\n }\\r\\n }\\r\\n\\r\\n componentDidMount() {\\r\\n if (this.props.refreshMe) {\\r\\n window.scrollTo(0, 0);\\r\\n }\\r\\n }\\r\\n\\r\\n render() {\\r\\n const { children } = this.props;\\r\\n\\r\\n return children;\\r\\n }\\r\\n}\\r\\n\\r\\nScrollToTop.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element.isRequired,\\r\\n /**\\r\\n * If true the content will be forcefully scrolled to the top\\r\\n */\\r\\n refreshMe: PropTypes.bool,\\r\\n /**\\r\\n * Browser address\\r\\n */\\r\\n location: PropTypes.shape({\\r\\n pathname: PropTypes.string.isRequired,\\r\\n }).isRequired,\\r\\n};\\r\\n\\r\\nexport default withRouter(ScrollToTop);\\r\\n\",\"examples\":[]},{\"name\":\"Slider.js\",\"description\":\"Slider component\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Date description text\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input disabled or not\"},\"dp\":{\"type\":{\"name\":\"number\"},\"required\":false,\"description\":\"decimal places\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Slider ID\"},\"inputClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for input\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"onBlur\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onBlur function\"},\"onChange\":{\"type\":{\"name\":\"func\"},\"required\":true,\"description\":\"onChange function\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input required or not\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"},\"withInput\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Input, Label, Col, Row } from 'reactstrap';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * Slider component\\r\\n */\\r\\nclass Slider extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n withInput,\\r\\n dp,\\r\\n children,\\r\\n validation = {},\\r\\n labelClassName = '',\\r\\n inputClassName = '',\\r\\n groupClassName = '',\\r\\n showErrors = true,\\r\\n id,\\r\\n field,\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n onChange,\\r\\n onBlur,\\r\\n disabled,\\r\\n required,\\r\\n suffix = '',\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n\\r\\n const inputOverride = (e, dp, func) => {\\r\\n const { target = {} } = e;\\r\\n const { value = '' } = target;\\r\\n if (\\r\\n dp > 0 &&\\r\\n value.indexOf('.') !== -1 &&\\r\\n value.length - value.indexOf('.') > dp + 1\\r\\n ) {\\r\\n return;\\r\\n }\\r\\n if (!target.validity.valid) {\\r\\n return;\\r\\n }\\r\\n if (!value || !isNaN(parseFloat(value))) {\\r\\n func(e);\\r\\n }\\r\\n };\\r\\n var step = dp <= 0 ? '1' : '.' + '0'.repeat(dp - 1) + '1';\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n inputOverride(event, dp, onBlur)}\\r\\n onChange={event => inputOverride(event, dp, onChange)}\\r\\n id={id}\\r\\n name={fieldName}\\r\\n value={value}\\r\\n type=\\\"range\\\"\\r\\n step={step}\\r\\n {...rest}\\r\\n />\\r\\n \\r\\n {withInput ? (\\r\\n \\r\\n inputOverride(event, dp, onBlur)}\\r\\n onChange={event => inputOverride(event, dp, onChange)}\\r\\n invalid={Validate.isInvalid(state)}\\r\\n valid={Validate.isValid(state)}\\r\\n id={`${id}-input`}\\r\\n name={fieldName}\\r\\n value={value}\\r\\n disabled={disabled}\\r\\n required={required}\\r\\n type=\\\"number\\\"\\r\\n step={step}\\r\\n {...rest}\\r\\n />\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {children}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nSlider.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * Date description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Input disabled or not\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * decimal places\\r\\n */\\r\\n dp: PropTypes.number,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Slider ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Style class name for input\\r\\n */\\r\\n inputClassName: PropTypes.string,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * onBlur function\\r\\n */\\r\\n onBlur: PropTypes.func.isRequired,\\r\\n /**\\r\\n * onChange function\\r\\n */\\r\\n onChange: PropTypes.func.isRequired,\\r\\n /**\\r\\n * Input required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n withInput: PropTypes.any,\\r\\n};\\r\\n\\r\\nexport default Slider;\\r\\n\",\"examples\":[]},{\"name\":\"Text.js\",\"description\":\"\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Text description text\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Text input disabled or not\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Date ID\"},\"inputGroupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for input group\"},\"inputPrefix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"A prefix for the input\"},\"inputSuffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"A suffix for the input\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"maxLength\":{\"type\":{\"name\":\"any\"},\"required\":false,\"description\":\"Maximum character limit\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Input required or not\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport {\\r\\n Input,\\r\\n Label,\\r\\n InputGroup,\\r\\n InputGroupAddon,\\r\\n InputGroupText,\\r\\n} from 'reactstrap';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\n\\r\\nclass Text extends React.Component {\\r\\n attachAddons(input, inputPrefix, inputSuffix, inputGroupClassName, id) {\\r\\n const items = [];\\r\\n if (inputPrefix || inputSuffix) {\\r\\n if (inputPrefix) {\\r\\n items.push(\\r\\n \\r\\n \\r\\n {inputPrefix}\\r\\n \\r\\n ,\\r\\n );\\r\\n }\\r\\n items.push(input);\\r\\n if (inputSuffix) {\\r\\n items.push(\\r\\n \\r\\n \\r\\n {inputSuffix}\\r\\n \\r\\n ,\\r\\n );\\r\\n }\\r\\n return {items};\\r\\n }\\r\\n return input;\\r\\n }\\r\\n\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n inputPrefix,\\r\\n inputSuffix,\\r\\n children,\\r\\n validation = {},\\r\\n disabled,\\r\\n required,\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n inputGroupClassName,\\r\\n showErrors = true,\\r\\n id,\\r\\n field,\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n suffix = '',\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n
    \\r\\n {label || subLabel || description ? (\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n {this.attachAddons(\\r\\n ,\\r\\n inputPrefix,\\r\\n inputSuffix,\\r\\n inputGroupClassName,\\r\\n id,\\r\\n )}\\r\\n\\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {children}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nText.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * Text description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * Text input disabled or not\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * Date ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Style class name for input group\\r\\n */\\r\\n inputGroupClassName: PropTypes.string,\\r\\n /**\\r\\n * A prefix for the input\\r\\n */\\r\\n inputPrefix: PropTypes.string,\\r\\n /**\\r\\n * A suffix for the input\\r\\n */\\r\\n inputSuffix: PropTypes.string,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * Maximum character limit\\r\\n */\\r\\n maxLength: PropTypes.any,\\r\\n /**\\r\\n * Input required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default Text;\\r\\n\",\"examples\":[{\"name\":\"TextExample\",\"description\":\"Text example 1\",\"code\":\"import React from 'react';\\r\\nimport { Text } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Text example 1 */\\r\\nclass TextExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default TextExample;\\r\\n\"},{\"name\":\"Textsample\",\"description\":\"Text example 2\",\"code\":\"import React from 'react';\\r\\nimport { Text } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Text example 2 */\\r\\nclass Textsample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default Textsample;\\r\\n\"}]},{\"name\":\"TextArea.js\",\"description\":\"TextArea component\\r\\nwill display a text area\",\"props\":{\"children\":{\"type\":{\"name\":\"element\"},\"required\":false,\"description\":\"Any children of the component\"},\"description\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"TextArea description text\"},\"disabled\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"TextArea disabled or not\"},\"field\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"array\"}]},\"required\":true,\"description\":\"Input field names\"},\"groupClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for group\"},\"id\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"TextArea ID\"},\"label\":{\"type\":{\"name\":\"string\"},\"required\":true,\"description\":\"Label text\"},\"labelClassName\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Style class name for label\"},\"required\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"TextArea required or not\"},\"showErrors\":{\"type\":{\"name\":\"bool\"},\"required\":false,\"description\":\"Show errors or not\"},\"subLabel\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Sub label text\"},\"suffix\":{\"type\":{\"name\":\"string\"},\"required\":false,\"description\":\"Suffix text\"},\"validation\":{\"type\":{\"name\":\"object\"},\"required\":false,\"description\":\"Input validation\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\nimport { Input, Label } from 'reactstrap';\\r\\nimport Errors, { HasErrors } from './Errors';\\r\\nimport { Validate } from '@myie/interact';\\r\\n\\r\\n/**\\r\\n * TextArea component\\r\\n * will display a text area\\r\\n */\\r\\nclass TextArea extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const {\\r\\n children,\\r\\n validation = {},\\r\\n labelClassName = '',\\r\\n groupClassName = '',\\r\\n showErrors = true,\\r\\n id,\\r\\n field,\\r\\n label,\\r\\n subLabel = '',\\r\\n description = '',\\r\\n disabled,\\r\\n required,\\r\\n suffix = '',\\r\\n ...rest\\r\\n } = props;\\r\\n const { value = '', state = {} } = validation;\\r\\n var fieldName =\\r\\n typeof field === 'string' ? field : `${field[0]}[${field[1]}]`;\\r\\n return (\\r\\n
    \\r\\n {label || subLabel || description ? (\\r\\n \\r\\n ) : (\\r\\n ''\\r\\n )}\\r\\n \\r\\n {suffix.length > 0 ?

    {suffix}

    : ''}\\r\\n {children}\\r\\n {showErrors ? : ''}\\r\\n
    \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nTextArea.propTypes = {\\r\\n /**\\r\\n * Any children of the component\\r\\n */\\r\\n children: PropTypes.element,\\r\\n /**\\r\\n * TextArea description text\\r\\n */\\r\\n description: PropTypes.string,\\r\\n /**\\r\\n * TextArea disabled or not\\r\\n */\\r\\n disabled: PropTypes.bool,\\r\\n /**\\r\\n * Input field names\\r\\n */\\r\\n field: PropTypes.oneOfType([PropTypes.string, PropTypes.array]).isRequired,\\r\\n /**\\r\\n * Style class name for group\\r\\n */\\r\\n groupClassName: PropTypes.string,\\r\\n /**\\r\\n * TextArea ID\\r\\n */\\r\\n id: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Label text\\r\\n */\\r\\n label: PropTypes.string.isRequired,\\r\\n /**\\r\\n * Style class name for label\\r\\n */\\r\\n labelClassName: PropTypes.string,\\r\\n /**\\r\\n * TextArea required or not\\r\\n */\\r\\n required: PropTypes.bool,\\r\\n /**\\r\\n * Show errors or not\\r\\n */\\r\\n showErrors: PropTypes.bool,\\r\\n /**\\r\\n * Sub label text\\r\\n */\\r\\n subLabel: PropTypes.string,\\r\\n /**\\r\\n * Suffix text\\r\\n */\\r\\n suffix: PropTypes.string,\\r\\n /**\\r\\n * Input validation\\r\\n */\\r\\n validation: PropTypes.object,\\r\\n};\\r\\n\\r\\nexport default TextArea;\\r\\n\",\"examples\":[{\"name\":\"TextAreaExample\",\"description\":\"Text Area Example\",\"code\":\"import React from 'react';\\r\\nimport { TextArea } from '@myie/interact-dom';\\r\\nimport { FormGroup, Row, Col } from 'reactstrap';\\r\\n\\r\\n/** Text Area Example */\\r\\nclass TextAreaExample extends React.Component {\\r\\n constructor(props) {\\r\\n super(props);\\r\\n this.state = {\\r\\n value: '',\\r\\n };\\r\\n }\\r\\n\\r\\n onChange = e => {\\r\\n const { value } = e.target;\\r\\n this.setState({ value });\\r\\n };\\r\\n\\r\\n render() {\\r\\n return (\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n );\\r\\n }\\r\\n}\\r\\n\\r\\nexport default TextAreaExample;\\r\\n\"}]},{\"name\":\"Value.js\",\"description\":\"Value component\\r\\nwill display given values\",\"props\":{\"value\":{\"type\":{\"name\":\"union\",\"value\":[{\"name\":\"string\"},{\"name\":\"number\"}]},\"required\":false,\"description\":\"Value to display\"}},\"code\":\"import React from 'react';\\r\\nimport PropTypes from 'prop-types';\\r\\n\\r\\n/**\\r\\n * Value component\\r\\n * will display given values\\r\\n */\\r\\nclass Value extends React.Component {\\r\\n render() {\\r\\n const { props } = this;\\r\\n\\r\\n const { value, ...rest } = props;\\r\\n if (rest && Object.keys(rest).length) {\\r\\n return {value};\\r\\n }\\r\\n return <>{value};\\r\\n }\\r\\n}\\r\\n\\r\\nValue.propTypes = {\\r\\n /**\\r\\n * Value to display\\r\\n */\\r\\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\\r\\n};\\r\\n\\r\\nexport default Value;\\r\\n\",\"examples\":[]}]","import {\n FORGOTTEN_UN_REQUEST,\n FORGOTTEN_UN_SUCCESS,\n FORGOTTEN_UN_FAILURE,\n RESET_FORGOTTEN_UN,\n} from '../actions/forgottenUserNameTypes';\n\nconst forgottenUserNameDefinition = (state = {}, action) => {\n switch (action.type) {\n case RESET_FORGOTTEN_UN:\n return {\n ...state,\n retrivedUserName: {},\n };\n case FORGOTTEN_UN_SUCCESS:\n return {\n ...state,\n retrivedUserName: action.forgottenUN,\n isFetching: action.isFetching,\n };\n case FORGOTTEN_UN_REQUEST:\n case FORGOTTEN_UN_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n default:\n return state;\n }\n};\n\nexport default forgottenUserNameDefinition;\n","export const RESET_FORGOTTEN_UN = 'RESET_FORGOTTEN_UN';\n\nexport const FORGOTTEN_UN_REQUEST = 'FORGOTTEN_UN_REQUEST';\nexport const FORGOTTEN_UN_SUCCESS = 'FORGOTTEN_UN_SUCCESS';\nexport const FORGOTTEN_UN_FAILURE = 'FORGOTTEN_UN_FAILURE';\n","import {\n SET_CREDENTIALS_REQUEST,\n SET_CREDENTIALS_SUCCESS,\n SET_CREDENTIALS_FAILURE,\n} from '../actions/registrationTypes';\nimport {\n REGISTER_REQUEST,\n REGISTER_SUCCESS,\n REGISTER_FAILURE,\n} from '../actions/registrationTypes';\nimport { RESET_REGISTRATION } from '../actions/registrationTypes';\n\nconst registrationDefinition = (state = {}, action) => {\n switch (action.type) {\n case RESET_REGISTRATION:\n return {\n ...state,\n registration: {},\n credentialsSetup: {},\n };\n case REGISTER_SUCCESS:\n return {\n ...state,\n registration: action.registration,\n isFetching: action.isFetching,\n };\n case SET_CREDENTIALS_SUCCESS:\n return {\n ...state,\n credentialsSetup: action.credentialsSetup,\n isFetching: action.isFetching,\n };\n case SET_CREDENTIALS_REQUEST:\n case SET_CREDENTIALS_FAILURE:\n case REGISTER_REQUEST:\n case REGISTER_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n default:\n return state;\n }\n};\n\nexport default registrationDefinition;\n","export const RESET_REGISTRATION = 'RESET_REGISTRATION';\n\nexport const SET_CREDENTIALS_REQUEST = 'SET_CREDENTIALS_REQUEST';\nexport const SET_CREDENTIALS_SUCCESS = 'SET_CREDENTIALS_SUCCESS';\nexport const SET_CREDENTIALS_FAILURE = 'SET_CREDENTIALS_FAILURE';\n\nexport const REGISTER_REQUEST = 'REGISTER_REQUEST';\nexport const REGISTER_SUCCESS = 'REGISTER_SUCCESS';\nexport const REGISTER_FAILURE = 'REGISTER_FAILURE';\n","import {\n CREATE_LOGIN_REQUEST,\n CREATE_LOGIN_SUCCESS,\n CREATE_LOGIN_FAILURE,\n} from '../actions/loginTypes';\nimport {\n UPDATE_LOGIN_REQUEST,\n UPDATE_LOGIN_SUCCESS,\n UPDATE_LOGIN_FAILURE,\n} from '../actions/loginTypes';\nimport { SET_LOGIN_REFERRER, RESET_LOGIN } from '../actions/loginTypes';\nimport update from 'immutability-helper';\n\nconst loginDefinition = (state = {}, action) => {\n switch (action.type) {\n case SET_LOGIN_REFERRER:\n return {\n ...state,\n referrer: action.referrer,\n login: null,\n };\n case RESET_LOGIN:\n return {\n ...state,\n login: null,\n };\n case UPDATE_LOGIN_SUCCESS: {\n const oldLogin = state.login;\n let newLogin = action.login;\n if (newLogin.Status === 'RequireActivation') {\n newLogin = update(oldLogin, {\n Status: { $set: newLogin.Status },\n RequireActivationTicket: { $set: newLogin.RequireActivationTicket },\n });\n } else {\n if (newLogin.Status !== 'Success' && newLogin.Status !== 'Incomplete') {\n if (oldLogin.statusCount) {\n if (newLogin.Status === oldLogin.Status) {\n newLogin = update(oldLogin, {\n statusCount: { $set: oldLogin.statusCount + 1 },\n Status: { $set: newLogin.Status },\n });\n } else {\n newLogin = update(oldLogin, {\n $merge: { statusCount: 1 },\n Status: { $set: newLogin.Status },\n });\n }\n } else {\n newLogin = update(oldLogin, {\n $merge: { statusCount: 1 },\n Status: { $set: newLogin.Status },\n });\n }\n }\n }\n return {\n ...state,\n login: newLogin,\n isFetching: action.isFetching,\n };\n }\n case CREATE_LOGIN_SUCCESS:\n return {\n ...state,\n login: action.login,\n isFetching: action.isFetching,\n };\n case CREATE_LOGIN_REQUEST:\n case CREATE_LOGIN_FAILURE:\n case UPDATE_LOGIN_REQUEST:\n case UPDATE_LOGIN_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n default:\n return state;\n }\n};\n\nexport default loginDefinition;\n","export const SET_LOGIN_REFERRER = 'SET_LOGIN_REFERRER';\nexport const RESET_LOGIN = 'RESET_LOGIN';\n\nexport const CREATE_LOGIN_REQUEST = 'CREATE_LOGIN_REQUEST';\nexport const CREATE_LOGIN_SUCCESS = 'CREATE_LOGIN_SUCCESS';\nexport const CREATE_LOGIN_FAILURE = 'CREATE_LOGIN_FAILURE';\n\nexport const UPDATE_LOGIN_REQUEST = 'UPDATE_LOGIN_REQUEST';\nexport const UPDATE_LOGIN_SUCCESS = 'UPDATE_LOGIN_SUCCESS';\nexport const UPDATE_LOGIN_FAILURE = 'UPDATE_LOGIN_FAILURE';\n","import {\n UPDATE_FORGOTTEN_REQUEST,\n UPDATE_FORGOTTEN_SUCCESS,\n UPDATE_FORGOTTEN_FAILURE,\n} from '../actions/forgottenPasswordTypes';\nimport {\n FORGOTTEN_PW_REQUEST,\n FORGOTTEN_PW_SUCCESS,\n FORGOTTEN_PW_FAILURE,\n} from '../actions/forgottenPasswordTypes';\nimport { RESET_FORGOTTEN_PW } from '../actions/forgottenPasswordTypes';\n\nconst forgottenPasswordDefinition = (state = {}, action) => {\n switch (action.type) {\n case RESET_FORGOTTEN_PW:\n return {\n ...state,\n forgottenPasswordDetails: {},\n updateForgottenDetails: {},\n };\n case FORGOTTEN_PW_SUCCESS:\n return {\n ...state,\n forgottenPasswordDetails: action.forgottenPassword,\n isFetching: action.isFetching,\n };\n case UPDATE_FORGOTTEN_SUCCESS:\n return {\n ...state,\n updateForgottenDetails: action.updateForgotten,\n isFetching: action.isFetching,\n };\n case UPDATE_FORGOTTEN_REQUEST:\n case UPDATE_FORGOTTEN_FAILURE:\n case FORGOTTEN_PW_REQUEST:\n case FORGOTTEN_PW_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n default:\n return state;\n }\n};\n\nexport default forgottenPasswordDefinition;\n","export const UPDATE_FORGOTTEN_REQUEST = 'UPDATE_FORGOTTEN_REQUEST';\n\nexport const UPDATE_FORGOTTEN_FAILURE = 'UPDATE_FORGOTTEN_FAILURE';\nexport const UPDATE_FORGOTTEN_SUCCESS = 'UPDATE_FORGOTTEN_SUCCESS';\nexport const FORGOTTEN_PW_REQUEST = 'FORGOTTEN_PW_REQUEST';\nexport const FORGOTTEN_PW_FAILURE = 'FORGOTTEN_PW_FAILURE';\nexport const FORGOTTEN_PW_SUCCESS = 'FORGOTTEN_PW_SUCCESS';\nexport const RESET_FORGOTTEN_PW = 'RESET_FORGOTTEN_PW';\n","import {\n UPDATE_SECURITY_DETAILS_REQUEST,\n UPDATE_SECURITY_DETAILS_SUCCESS,\n UPDATE_SECURITY_DETAILS_FAILURE,\n RESET_UPDATE_SECURITY_DETAILS,\n} from '../actions/updateSecurityDetailsTypes';\n\nconst updateSecurityDetailsDefinition = (state = {}, action) => {\n switch (action.type) {\n case RESET_UPDATE_SECURITY_DETAILS:\n return {\n ...state,\n updateSecurityDetails: {},\n };\n case UPDATE_SECURITY_DETAILS_SUCCESS:\n return {\n ...state,\n updateSecurityDetails: action.updateSecurityDetails,\n isFetching: action.isFetching,\n };\n case UPDATE_SECURITY_DETAILS_REQUEST:\n case UPDATE_SECURITY_DETAILS_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n default:\n return state;\n }\n};\n\nexport default updateSecurityDetailsDefinition;\n","export const RESET_UPDATE_SECURITY_DETAILS = 'RESET_UPDATE_SECURITY_DETAILS';\n\nexport const UPDATE_SECURITY_DETAILS_REQUEST =\n 'UPDATE_SECURITY_DETAILS_REQUEST';\nexport const UPDATE_SECURITY_DETAILS_SUCCESS =\n 'UPDATE_SECURITY_DETAILS_SUCCESS';\nexport const UPDATE_SECURITY_DETAILS_FAILURE =\n 'UPDATE_SECURITY_DETAILS_FAILURE';\n","import forgottenUserNameDefinition from './reducers/forgottenUserNameDefinition';\nimport registrationDefinition from './reducers/registrationDefinition';\nimport loginDefinition from './reducers/loginDefinition';\nimport forgottenPasswordDefinition from './reducers/forgottenPasswordDefinition';\nimport updateSecurityDetailsDefinition from './reducers/updateSecurityDetailsDefinition';\n\nconst authenticationDefinition = (state = {}, action) => {\n var newState = state;\n newState = forgottenUserNameDefinition(newState, action);\n newState = registrationDefinition(newState, action);\n newState = loginDefinition(newState, action);\n newState = forgottenPasswordDefinition(newState, action);\n newState = updateSecurityDetailsDefinition(newState, action);\n return newState;\n};\n\nexport default authenticationDefinition;\n","const mapStateToProps = state => {\n const { authenticationDefinition = {} } = state;\n const {\n login,\n credentialsSetup,\n registration,\n retrivedUserName,\n forgottenPasswordDetails,\n updateSecurityDetails,\n updateForgottenDetails,\n referrer,\n isFetching,\n error = null,\n } = authenticationDefinition;\n return {\n login,\n credentialsSetup,\n registration,\n referrer,\n isFetching,\n retrivedUserName,\n forgottenPasswordDetails,\n updateSecurityDetails,\n updateForgottenDetails,\n error,\n };\n};\n\nexport default mapStateToProps;\n","import { Connection, Settings } from '@myie/interact';\nimport {\n CREATE_LOGIN_REQUEST,\n CREATE_LOGIN_SUCCESS,\n CREATE_LOGIN_FAILURE,\n} from './loginTypes';\nimport {\n UPDATE_LOGIN_REQUEST,\n UPDATE_LOGIN_SUCCESS,\n UPDATE_LOGIN_FAILURE,\n} from './loginTypes';\nimport { SET_LOGIN_REFERRER, RESET_LOGIN } from './loginTypes';\n\nexport const resetLogin = () => ({\n type: RESET_LOGIN,\n});\n\nexport const setReferrer = (\n referrer = Settings.loggedInPage || { pathname: '/accounts' },\n) => ({\n type: SET_LOGIN_REFERRER,\n referrer: referrer,\n});\n\nexport const createLoginRequest = () => ({\n type: CREATE_LOGIN_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const createLoginFailed = error => ({\n type: CREATE_LOGIN_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const createLoginReceive = json => ({\n type: CREATE_LOGIN_SUCCESS,\n login: json,\n isFetching: false,\n error: null,\n});\n\nexport const updateLoginRequest = () => ({\n type: UPDATE_LOGIN_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const updateLoginFailed = error => ({\n type: UPDATE_LOGIN_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const updateLoginReceive = json => ({\n type: UPDATE_LOGIN_SUCCESS,\n login: json,\n isFetching: false,\n error: null,\n});\n\nexport const createLogin = request => dispatch => {\n dispatch(createLoginRequest());\n return fetch(\n Connection.baseUrl('webauthentication') + `v2.0/user/sign-in/create`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(createLoginReceive(json)))\n .catch(error => dispatch(createLoginFailed(error)));\n};\n\nexport const updateLogin = request => dispatch => {\n dispatch(updateLoginRequest());\n return fetch(\n Connection.baseUrl('webauthentication') + `v2.0/user/sign-in/update`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(updateLoginReceive(json)))\n .catch(error => dispatch(updateLoginFailed(error)));\n};\n","import { Connection } from '@myie/interact';\n\nimport {\n SET_CREDENTIALS_REQUEST,\n SET_CREDENTIALS_SUCCESS,\n SET_CREDENTIALS_FAILURE,\n} from './registrationTypes';\nimport {\n REGISTER_REQUEST,\n REGISTER_SUCCESS,\n REGISTER_FAILURE,\n} from './registrationTypes';\nimport { RESET_REGISTRATION } from './registrationTypes';\n\nexport const resetRegistration = () => ({\n type: RESET_REGISTRATION,\n});\n\nexport const setCredentialsRequest = () => ({\n type: SET_CREDENTIALS_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const setCredentialsFailed = error => ({\n type: SET_CREDENTIALS_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const setCredentialsReceive = json => ({\n type: SET_CREDENTIALS_SUCCESS,\n credentialsSetup: json,\n isFetching: false,\n error: null,\n});\n\nexport const registerRequest = () => ({\n type: REGISTER_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const registerFailed = error => ({\n type: REGISTER_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const registerReceive = json => ({\n type: REGISTER_SUCCESS,\n registration: json,\n isFetching: false,\n error: null,\n});\n\nexport const setCredentials = request => dispatch => {\n dispatch(setCredentialsRequest());\n return fetch(\n Connection.baseUrl('webauthentication') + `v2.0/user/credentials/setup`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(setCredentialsReceive(json)))\n .catch(error => dispatch(setCredentialsFailed(error)));\n};\n\nexport const register = request => dispatch => {\n dispatch(registerRequest());\n return fetch(Connection.baseUrl('webauthentication') + `v2.0/user/register`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(registerReceive(json)))\n .catch(error => dispatch(registerFailed(error)));\n};\n","import { Connection } from '@myie/interact';\n\nimport {\n FORGOTTEN_UN_REQUEST,\n FORGOTTEN_UN_SUCCESS,\n FORGOTTEN_UN_FAILURE,\n RESET_FORGOTTEN_UN,\n} from './forgottenUserNameTypes.js';\n\nexport const resetForgottenUN = () => ({\n type: RESET_FORGOTTEN_UN,\n});\n\nexport const forgottenUNRequest = () => ({\n type: FORGOTTEN_UN_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const forgottenUNFailed = error => ({\n type: FORGOTTEN_UN_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const forgottenUNReceive = json => ({\n type: FORGOTTEN_UN_SUCCESS,\n forgottenUN: json,\n isFetching: false,\n error: null,\n});\n\nexport const retrieveUserName = request => dispatch => {\n dispatch(forgottenUNRequest());\n return fetch(\n Connection.baseUrl('webauthentication') +\n `v2.0/user/credentials/forgotten-username`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(forgottenUNReceive(json)))\n .catch(error => dispatch(forgottenUNFailed(error)));\n};\n","import { Connection } from '@myie/interact';\n\nimport {\n UPDATE_FORGOTTEN_REQUEST,\n UPDATE_FORGOTTEN_SUCCESS,\n UPDATE_FORGOTTEN_FAILURE,\n} from './forgottenPasswordTypes';\nimport {\n FORGOTTEN_PW_REQUEST,\n FORGOTTEN_PW_SUCCESS,\n FORGOTTEN_PW_FAILURE,\n} from './forgottenPasswordTypes';\nimport { RESET_FORGOTTEN_PW } from './forgottenPasswordTypes';\n\nexport const resetForgottenPassword = () => ({\n type: RESET_FORGOTTEN_PW,\n});\n\nexport const updateForgottenRequest = () => ({\n type: UPDATE_FORGOTTEN_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const updateForgottenReceiveFailed = error => ({\n type: UPDATE_FORGOTTEN_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const updateForgottenReceive = json => ({\n type: UPDATE_FORGOTTEN_SUCCESS,\n updateForgotten: json,\n isFetching: false,\n error: null,\n});\n\nexport const forgottenPasswordRequest = () => ({\n type: FORGOTTEN_PW_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const forgottenPasswordFailed = error => ({\n type: FORGOTTEN_PW_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const forgottenPasswordReceive = json => ({\n type: FORGOTTEN_PW_SUCCESS,\n forgottenPassword: json,\n isFetching: false,\n error: null,\n});\n\nexport const updateForgotten = credentials => dispatch => {\n dispatch(updateForgottenRequest());\n return fetch(\n Connection.baseUrl('webauthentication') +\n `v2.0/user/credentials/update-forgotten`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(credentials),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(updateForgottenReceive(json)))\n .catch(error => dispatch(updateForgottenReceiveFailed(error)));\n};\n\nexport const resetForgotten = request => dispatch => {\n dispatch(forgottenPasswordRequest());\n return fetch(\n Connection.baseUrl('webauthentication') +\n `v2.0/user/credentials/reset-forgotten`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(forgottenPasswordReceive(json)))\n .catch(error => dispatch(forgottenPasswordFailed(error)));\n};\n","import { Connection, TwoFactor } from '@myie/interact';\n\nimport {\n UPDATE_SECURITY_DETAILS_REQUEST,\n UPDATE_SECURITY_DETAILS_SUCCESS,\n UPDATE_SECURITY_DETAILS_FAILURE,\n RESET_UPDATE_SECURITY_DETAILS,\n} from './updateSecurityDetailsTypes.js';\n\nexport const resetUpdateSecurityDetails = () => ({\n type: RESET_UPDATE_SECURITY_DETAILS,\n});\n\nexport const updateSecurityDetailsRequest = () => ({\n type: UPDATE_SECURITY_DETAILS_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const updateSecurityDetailsFailed = error => ({\n type: UPDATE_SECURITY_DETAILS_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const updateSecurityDetailsReceive = json => ({\n type: UPDATE_SECURITY_DETAILS_SUCCESS,\n updateSecurityDetails: json,\n isFetching: false,\n error: null,\n});\n\nexport const updateCredentials = request => dispatch => {\n return TwoFactor.run(() => {\n dispatch(updateSecurityDetailsRequest());\n return fetch(\n Connection.baseUrl('webauthentication') + `v2.0/user/credentials/change`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(updateSecurityDetailsReceive(json)))\n .catch(error => dispatch(updateSecurityDetailsFailed(error)));\n });\n};\n","import * as loginActions from './actions/loginActions';\nimport * as registrationActions from './actions/registrationActions';\nimport * as forgottenUserNameActions from './actions/forgottenUserNameActions';\nimport * as forgottenPasswordActions from './actions/forgottenPasswordActions';\nimport * as updateSecurityDetailsActions from './actions/updateSecurityDetailsActions';\n\nconst mapDispatchToProps = {\n ...loginActions,\n ...registrationActions,\n ...forgottenUserNameActions,\n ...forgottenPasswordActions,\n ...updateSecurityDetailsActions,\n};\n\nexport default mapDispatchToProps;\n","import authenticationDefinition from './reducer';\nimport mapStateToProps from './mapStateToProps';\nimport mapDispatchToProps from './mapDispatchToProps';\n\nexport { authenticationDefinition, mapStateToProps, mapDispatchToProps };\n","import {\n CANCEL_NOTICE_TO_WITHDRAWAL_FAILURE,\n CANCEL_NOTICE_TO_WITHDRAWAL_REQUEST,\n CANCEL_NOTICE_TO_WITHDRAWAL_SUCCESS,\n RESET_CANCEL_NOTICE_TO_WITHDRAWAL,\n SET_CREATE_NOTICE_TO_WITHDRAWAL_PARAMS,\n RESET_CREATE_NOTICE_TO_WITHDRAWAL,\n SET_MAKE_A_WITHDRAW_PARAM,\n MAKE_A_WITHDRAW_SUCCESS,\n MAKE_A_WITHDRAW_FALIURE,\n MAKE_A_WITHDRAW_REQUEST,\n RESET_MAKE_A_WITHDRAW,\n BANK_HOLIDAYS,\n} from '../actions/withdrawalTypes';\n\nconst ccbWithdrawalDefinition = (state = {}, action) => {\n switch (action.type) {\n case CANCEL_NOTICE_TO_WITHDRAWAL_REQUEST:\n case MAKE_A_WITHDRAW_REQUEST:\n return {\n ...state,\n isFetching: action.isFetching,\n };\n case BANK_HOLIDAYS:\n return {\n ...state,\n holidays: action.holidays,\n isFetching: action.isFetching,\n };\n case CANCEL_NOTICE_TO_WITHDRAWAL_SUCCESS:\n return {\n ...state,\n cancellationResponse: action.cancellationResponse,\n isFetching: action.isFetching,\n };\n case CANCEL_NOTICE_TO_WITHDRAWAL_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case RESET_CANCEL_NOTICE_TO_WITHDRAWAL:\n return {\n ...state,\n cancellationResponse: null,\n isFetching: false,\n error: null,\n };\n case SET_CREATE_NOTICE_TO_WITHDRAWAL_PARAMS:\n return {\n ...state,\n createNoticeParam: action.createNoticeParam,\n error: null,\n };\n case SET_MAKE_A_WITHDRAW_PARAM:\n return {\n ...state,\n withdrawalParam: action.withdrawalParam,\n error: null,\n };\n case RESET_CREATE_NOTICE_TO_WITHDRAWAL:\n return {\n ...state,\n createNoticeParam: null,\n createResponse: null,\n error: null,\n };\n case MAKE_A_WITHDRAW_SUCCESS: {\n return {\n ...state,\n makeWithdrawResponse: action.makeWithdrawResponse,\n isFetching: false,\n error: null,\n };\n }\n case MAKE_A_WITHDRAW_FALIURE: {\n return {\n ...state,\n makeWithdrawResponse: null,\n isFetching: false,\n error: action.error,\n };\n }\n case RESET_MAKE_A_WITHDRAW:\n return {\n ...state,\n makeWithdrawResponse: null,\n isFetching: false,\n error: null,\n };\n default:\n return state;\n }\n};\n\nexport default ccbWithdrawalDefinition;\n","export const CANCEL_NOTICE_TO_WITHDRAWAL_REQUEST =\n 'CANCEL_NOTICE_TO_WITHDRAWAL_REQUEST';\nexport const CANCEL_NOTICE_TO_WITHDRAWAL_SUCCESS =\n 'CANCEL_NOTICE_TO_WITHDRAWAL_SUCCESS';\nexport const CANCEL_NOTICE_TO_WITHDRAWAL_FAILURE =\n 'CANCEL_NOTICE_TO_WITHDRAWAL_FAILURE';\nexport const RESET_CANCEL_NOTICE_TO_WITHDRAWAL =\n 'RESET_CANCEL_NOTICE_TO_WITHDRAWAL';\n\nexport const SET_CREATE_NOTICE_TO_WITHDRAWAL_PARAMS =\n 'SET_CREATE_NOTICE_TO_WITHDRAWAL_PARAMS';\n\nexport const CREATE_NOTICE_TO_WITHDRAWAL_REQUEST =\n 'CREATE_NOTICE_TO_WITHDRAWAL_REQUEST';\nexport const CREATE_NOTICE_TO_WITHDRAWAL_SUCCESS =\n 'CREATE_NOTICE_TO_WITHDRAWAL_SUCCESS';\nexport const CREATE_NOTICE_TO_WITHDRAWAL_FAILURE =\n 'CREATE_NOTICE_TO_WITHDRAWAL_FAILURE';\nexport const RESET_CREATE_NOTICE_TO_WITHDRAWAL =\n 'RESET_CREATE_NOTICE_TO_WITHDRAWAL';\n\nexport const SET_MAKE_A_WITHDRAW_PARAM = 'SET_MAKE_A_WITHDRAW_PARAM';\nexport const MAKE_A_WITHDRAW_REQUEST = 'MAKE_A_WITHDRAW_REQUEST';\nexport const MAKE_A_WITHDRAW_SUCCESS = 'MAKE_A_WITHDRAW_SUCCESS';\nexport const MAKE_A_WITHDRAW_FALIURE = 'MAKE_A_WITHDRAW_FALIURE';\nexport const RESET_MAKE_A_WITHDRAW = 'RESET_MAKE_A_WITHDRAW';\nexport const BANK_HOLIDAYS = 'BANK_HOLIDAYS';\n","import {\n RESET_SET_SHORT_APPLY,\n SET_SHORT_APPLY_REQUEST,\n SET_SHORT_APPLY_SUCCESS,\n SET_SHORT_APPLY_FALIURE,\n RESET_SHORT_APPLY_OPTIONS,\n GET_ALL_PRODUCTS_REQUEST,\n GET_ALL_PRODUCTS_SUCCESS,\n GET_ALL_PRODUCTS_FALIURE,\n RESET_SAVE_SHORT_APPLY,\n SAVE_SHORT_APPLY_REQUEST,\n SAVE_SHORT_APPLY_SUCCESS,\n SAVE_SHORT_APPLY_FALIURE,\n} from '../actions/shortApplyTypes';\n\nconst ccbShortApplyDefinition = (state = {}, action) => {\n switch (action.type) {\n case SET_SHORT_APPLY_REQUEST:\n return {\n ...state,\n isFetching: action.isFetching,\n };\n\n case SET_SHORT_APPLY_SUCCESS:\n return {\n ...state,\n savingshortapply: action.setShortApplyResponse,\n isFetching: action.isFetching,\n };\n case SET_SHORT_APPLY_FALIURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case RESET_SET_SHORT_APPLY:\n return {\n ...state,\n savingshortapply: null,\n isFetching: false,\n error: null,\n };\n case GET_ALL_PRODUCTS_REQUEST:\n return {\n ...state,\n isFetching: action.isFetching,\n };\n\n case GET_ALL_PRODUCTS_SUCCESS:\n return {\n ...state,\n allProducts: action.getAllProductsResponse,\n isFetching: action.isFetching,\n };\n case GET_ALL_PRODUCTS_FALIURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case RESET_SHORT_APPLY_OPTIONS:\n return {\n ...state,\n allProducts: null,\n isFetching: false,\n error: null,\n };\n //\n case RESET_SAVE_SHORT_APPLY:\n return {\n ...state,\n saveShortApplyResponse: null,\n isFetching: false,\n error: null,\n };\n case SAVE_SHORT_APPLY_REQUEST:\n return {\n ...state,\n isFetching: action.isFetching,\n };\n\n case SAVE_SHORT_APPLY_SUCCESS:\n return {\n ...state,\n saveShortApplyResponse: action.saveShortApplyResponse,\n isFetching: action.isFetching,\n };\n case SAVE_SHORT_APPLY_FALIURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n default:\n return state;\n }\n};\n\nexport default ccbShortApplyDefinition;\n","export const RESET_SET_SHORT_APPLY = 'RESET_SET_SHORT_APPLY';\nexport const SET_SHORT_APPLY_REQUEST = 'SET_SHORT_APPLY_REQUEST';\nexport const SET_SHORT_APPLY_SUCCESS = 'SET_SHORT_APPLY_SUCCESS';\nexport const SET_SHORT_APPLY_FALIURE = 'SET_SHORT_APPLY_FALIURE';\nexport const RESET_SHORT_APPLY_OPTIONS = 'RESET_SHORT_APPLY_OPTIONS';\nexport const GET_ALL_PRODUCTS_REQUEST = 'GET_ALL_PRODUCTS_REQUEST';\nexport const GET_ALL_PRODUCTS_SUCCESS = 'GET_ALL_PRODUCTS_SUCCESS';\nexport const GET_ALL_PRODUCTS_FALIURE = 'GET_ALL_PRODUCTS_FALIURE';\nexport const RESET_SAVE_SHORT_APPLY = 'RESET_SAVE_SHORT_APPLY';\nexport const SAVE_SHORT_APPLY_REQUEST = 'SAVE_SHORT_APPLY_REQUEST';\nexport const SAVE_SHORT_APPLY_SUCCESS = 'SAVE_SHORT_APPLY_SUCCESS';\nexport const SAVE_SHORT_APPLY_FALIURE = 'SAVE_SHORT_APPLY_FALIURE';\n","import ccbWithdrawalDefinition from './reducers/withdrawalDefinition';\nimport ccbShortApplyDefinition from './reducers/shortApplyDefinition';\nconst customccbSavingsServicingDefinition = (state = {}, action) => {\n var newState = state;\n newState = ccbWithdrawalDefinition(newState, action);\n newState = ccbShortApplyDefinition(newState, action);\n return newState;\n};\n\nexport default customccbSavingsServicingDefinition;\n","const mapStateToProps = state => {\n const { customccbSavingsServicingDefinition = {} } = state;\n const {\n cancellationResponse,\n createNoticeParam,\n makeWithdrawResponse,\n withdrawalParam,\n createResponse,\n isFetching,\n savingshortapply,\n saveShortApplyResponse,\n error = null,\n } = customccbSavingsServicingDefinition;\n\n return {\n cancellationResponse,\n createNoticeParam,\n withdrawalParam,\n makeWithdrawResponse,\n isFetching,\n createResponse,\n savingshortapply,\n saveShortApplyResponse,\n error,\n };\n};\n\nexport default mapStateToProps;\n","import { Connection } from '@myie/interact';\n\nimport {\n CANCEL_NOTICE_TO_WITHDRAWAL_FAILURE,\n CANCEL_NOTICE_TO_WITHDRAWAL_SUCCESS,\n CANCEL_NOTICE_TO_WITHDRAWAL_REQUEST,\n RESET_CANCEL_NOTICE_TO_WITHDRAWAL,\n SET_CREATE_NOTICE_TO_WITHDRAWAL_PARAMS,\n RESET_CREATE_NOTICE_TO_WITHDRAWAL,\n SET_MAKE_A_WITHDRAW_PARAM,\n MAKE_A_WITHDRAW_REQUEST,\n MAKE_A_WITHDRAW_SUCCESS,\n MAKE_A_WITHDRAW_FALIURE,\n RESET_MAKE_A_WITHDRAW,\n BANK_HOLIDAYS,\n} from './withdrawalTypes';\n\nexport const cancellationRequest = () => ({\n type: CANCEL_NOTICE_TO_WITHDRAWAL_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const cancellationFailed = error => ({\n type: CANCEL_NOTICE_TO_WITHDRAWAL_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const cancellationSuccess = json => ({\n type: CANCEL_NOTICE_TO_WITHDRAWAL_SUCCESS,\n cancellationResponse: json,\n isFetching: false,\n error: null,\n});\n\nexport const resetCancellation = () => ({\n type: RESET_CANCEL_NOTICE_TO_WITHDRAWAL,\n});\n\nexport const setCreateNoticeToWithdrawParam = data => ({\n type: SET_CREATE_NOTICE_TO_WITHDRAWAL_PARAMS,\n createNoticeParam: data,\n});\n\nexport const resetCreateNoticeToWithdraw = () => ({\n type: RESET_CREATE_NOTICE_TO_WITHDRAWAL,\n});\n\nexport const setBankHolidays = json => ({\n type: BANK_HOLIDAYS,\n holidays: json,\n isFetching: false,\n error: null,\n});\n\nexport const createWithdrawalRequest = () => ({\n type: MAKE_A_WITHDRAW_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const makeaWithdrawSuccess = json => ({\n type: MAKE_A_WITHDRAW_SUCCESS,\n makeWithdrawResponse: json,\n isFetching: false,\n error: null,\n});\n\nexport const makeaWithdrawFaliure = error => ({\n type: MAKE_A_WITHDRAW_FALIURE,\n makeWithdrawResponse: null,\n isFetching: false,\n error: error.message,\n});\n\nexport const setWithdrawalParam = data => ({\n type: SET_MAKE_A_WITHDRAW_PARAM,\n withdrawalParam: data,\n});\n\nexport const resetMakeWithdrawal = () => ({\n type: RESET_MAKE_A_WITHDRAW,\n});\n\nexport const cancelNoticeToWithdraw = request => dispatch => {\n dispatch(cancellationRequest());\n return fetch(\n Connection.baseUrl('customccb') + `v1.0/cancelpendingtransaction`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(cancellationSuccess(json)))\n .catch(error => {\n dispatch(cancellationFailed(error));\n });\n};\n\nexport const makeaWithdraw = request => dispatch => {\n dispatch(createWithdrawalRequest());\n return fetch(Connection.baseUrl('customccb') + `v1.0/setupwithdrawal`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(makeaWithdrawSuccess(json)))\n .catch(error => dispatch(makeaWithdrawFaliure(error)));\n};\n","import { Connection } from '@myie/interact';\n\nimport {\n RESET_SET_SHORT_APPLY,\n SET_SHORT_APPLY_REQUEST,\n SET_SHORT_APPLY_SUCCESS,\n SET_SHORT_APPLY_FALIURE,\n RESET_SHORT_APPLY_OPTIONS,\n GET_ALL_PRODUCTS_REQUEST,\n GET_ALL_PRODUCTS_SUCCESS,\n GET_ALL_PRODUCTS_FALIURE,\n RESET_SAVE_SHORT_APPLY,\n SAVE_SHORT_APPLY_REQUEST,\n SAVE_SHORT_APPLY_SUCCESS,\n SAVE_SHORT_APPLY_FALIURE,\n} from './shortApplyTypes';\n\nexport const resetShortapply = () => ({\n type: RESET_SET_SHORT_APPLY,\n});\n\nexport const setShortapplyRequest = () => ({\n type: SET_SHORT_APPLY_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const setShortapplySuccess = json => ({\n type: SET_SHORT_APPLY_SUCCESS,\n setShortApplyResponse: json,\n isFetching: false,\n error: null,\n});\n\nexport const setShortapplyFaliure = error => ({\n type: SET_SHORT_APPLY_FALIURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const setShortapply = request => dispatch => {\n dispatch(setShortapplyRequest());\n return fetch(\n Connection.baseUrl('accounts') + `v3.0/savings/savingshortapplymarketpref`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(setShortapplySuccess(json)))\n .catch(error => dispatch(setShortapplyFaliure(error)));\n};\n\nexport const resetGetShowMaturity = () => ({\n type: RESET_SHORT_APPLY_OPTIONS,\n});\n\nexport const getAllProductsRequest = () => ({\n type: GET_ALL_PRODUCTS_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const getAllProductsSuccess = json => ({\n type: GET_ALL_PRODUCTS_SUCCESS,\n getAllProductsResponse: json,\n isFetching: false,\n error: null,\n});\n\nexport const getAllProductsFaliure = error => ({\n type: GET_ALL_PRODUCTS_FALIURE,\n getAllProductsResponse: null,\n isFetching: false,\n error: error.message,\n});\n\nexport const getAllProducts = request => dispatch => {\n dispatch(getAllProductsRequest());\n return fetch(Connection.baseUrl('customccb') + 'v1.0/getallproducts', {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(getAllProductsSuccess(json)))\n .catch(error => dispatch(getAllProductsFaliure(error)));\n};\n\nexport const resetSaveShortApply = () => ({\n type: RESET_SAVE_SHORT_APPLY,\n});\n\nexport const saveShortApplyRequest = () => ({\n type: SAVE_SHORT_APPLY_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const saveShortApplySuccess = json => ({\n type: SAVE_SHORT_APPLY_SUCCESS,\n saveShortApplyResponse: json,\n isFetching: false,\n error: null,\n});\n\nexport const saveShortApplyFaliure = error => ({\n type: SAVE_SHORT_APPLY_FALIURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const saveShortApply = request => dispatch => {\n dispatch(saveShortApplyRequest());\n return fetch(Connection.baseUrl('customccb') + 'v1.0/savings', {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(saveShortApplySuccess(json)))\n .catch(error => dispatch(saveShortApplyFaliure(error)));\n};\n","import * as withdrawalActions from './actions/withdrawalActions';\nimport * as shortApply from './actions/shortApply';\nconst mapDispatchToProps = {\n ...withdrawalActions,\n ...shortApply,\n};\n\nexport default mapDispatchToProps;\n","import customccbSavingsServicingDefinition from './reducer';\nimport mapStateToProps from './mapStateToProps';\nimport mapDispatchToProps from './mapDispatchToProps';\n\nexport {\n customccbSavingsServicingDefinition,\n mapStateToProps,\n mapDispatchToProps,\n};\n","import React from 'react';\nimport { Check } from '@myie/interact-dom';\nimport { Row, Col, FormGroup } from 'reactstrap';\n\n/** Check example */\nclass CheckExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: false,\n };\n }\n\n onChange = () => {\n const { value } = this.state;\n this.setState({ value: !value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default CheckExample;\n","import React from 'react';\nimport { Currency } from '@myie/interact-dom';\nimport { Row, Col, FormGroup } from 'reactstrap';\n\n/** Currency GBP example */\nclass CurrencyExampleGBP extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: {\n amount: {\n value: 1500,\n },\n },\n };\n }\n\n onChange = e => {\n const { form } = this.state;\n const value = e.target.value;\n form.amount.value = value;\n this.setState({ form });\n };\n\n render() {\n const currencyCode = 'GBP';\n const { form } = this.state;\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default CurrencyExampleGBP;\n","import React from 'react';\nimport { Currency } from '@myie/interact-dom';\nimport { Row, Col, FormGroup } from 'reactstrap';\n\n/** Currency LKR example */\nclass CurrencyExampleLKR extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: {\n amount: {\n value: 1500,\n },\n },\n };\n }\n\n onChange = e => {\n const { form } = this.state;\n const value = e.target.value;\n form.amount.value = value;\n this.setState({ form });\n };\n\n render() {\n const currencyCode = 'LKR';\n const { form } = this.state;\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default CurrencyExampleLKR;\n","import React from 'react';\nimport { Date } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Date example */\nclass DateExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChangeDate = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default DateExample;\n","import React from 'react';\nimport { DatePicker } from '@myie/interact-dom';\nimport { Row, Col, FormGroup } from 'reactstrap';\n\n/** DatePicker example */\nclass DateExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default DateExample;\n","import React from 'react';\nimport { Dialog } from '@myie/interact-dom';\nimport { Row, Col, FormGroup } from 'reactstrap';\n\n/** Dialog example */\nclass DialogExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: true,\n };\n }\n\n onClick = () => {\n const { value } = this.state;\n this.setState({ value: !value });\n };\n\n render() {\n const { value } = this.state;\n return (\n \n \n \n \n

    click Here to close the modal

    \n \n
    \n \n
    \n );\n }\n}\n\nexport default DialogExample;\n","import React from 'react';\nimport { DropDown } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Dropdown example */\nclass DropDownExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n\nexport default DropDownExample;\n","import React from 'react';\nimport { Errors } from '@myie/interact-dom';\nimport { Validate } from '@myie/interact';\nimport { Input, FormGroup, Row, Col } from 'reactstrap';\n\n/** Errors example */\nclass ErrorsExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: {\n name: {\n value: '',\n state: {},\n rules: {\n title: 'Name',\n required: 'Name is required',\n },\n },\n },\n };\n }\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n \n );\n }\n}\n\nexport default ErrorsExample;\n","import React from 'react';\nimport { FormattedCurrency } from '@myie/interact-dom';\nimport { Row, Col, FormGroup } from 'reactstrap';\n\n/** FormattedCurrency example for GBP */\nexport default function TextExample() {\n const currencyCode = 'GBP';\n const currencyQuantity = 1500;\n return (\n \n \n \n \n \n \n \n );\n}\n","import React from 'react';\nimport { FormattedCurrency } from '@myie/interact-dom';\nimport { Row, Col, FormGroup } from 'reactstrap';\n\n/** FormattedCurrency example for LKR */\nexport default function TextExample() {\n const currencyCode = 'LKR';\n const currencyQuantity = 1500;\n return (\n \n \n \n \n \n \n \n );\n}\n","export const CONTACTS = {\n phone: '0344 225 3939',\n phoneLink: '03442253939',\n email: 'savings@ccbank.co.uk',\n openTimes: 'Monday to Friday, 9.00am to 5.00pm',\n companyName: 'Cambridge & Counties Bank',\n companySiteName: '',\n companyFormattedAddress: '',\n cashISAFormURL: '',\n minimumAge: '18',\n sortcode: '',\n accountNumber: '',\n};\n","export const URLS = {\n ShortApply: '/short-apply',\n};\n","import { CONTACTS, URLS } from './constants/';\n\nexport { CONTACTS, URLS };\n","import React from 'react';\nimport { FormattedDate } from '@myie/interact-dom';\n\n/** FormattedDate example */\nclass FormattedDateExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return ;\n }\n}\n\nexport default FormattedDateExample;\n","import React from 'react';\nimport { FormattedDate } from '@myie/interact-dom';\n\n/** FormattedDate example with given format*/\nclass FormattedDateExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return ;\n }\n}\n\nexport default FormattedDateExample;\n","import React from 'react';\nimport { Mask } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Mask example */\nclass MaskExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n form: {\n sortcode: {},\n },\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n const { form } = this.state;\n form.sortcode.value = value;\n this.setState({ ...this.state, form });\n };\n\n render() {\n const { form } = this.state;\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default MaskExample;\n","import React from 'react';\nimport { Numeric } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Numeric example */\nclass NumericExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default NumericExample;\n","import React from 'react';\nimport { Numeric } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Numeric example with Decimal */\nclass NumericExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default NumericExample;\n","import React from 'react';\nimport { Pagination } from '@myie/interact-dom';\n\n/** Pagination example */\nclass PaginationExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n Offset: 0,\n Size: 8,\n };\n }\n\n getPreviousPage = (Offset, Size) => {\n const previousOffset = Offset - Size;\n if (previousOffset >= 0) {\n this.setState({ ...this.state, Offset: previousOffset });\n }\n };\n\n getNextPage = (Offset, Size, TotalConversationsCount) => {\n const nextOffset = Offset + Size;\n if (nextOffset <= TotalConversationsCount) {\n this.setState({ ...this.state, Offset: nextOffset });\n }\n };\n\n render() {\n const TotalConversationsCount = 17;\n const { Offset, Size } = this.state;\n return (\n \n );\n }\n}\n\nexport default PaginationExample;\n","import React from 'react';\nimport { Radio } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Radio Button example */\nclass RadioExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChangeRadioButton = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default RadioExample;\n","import React from 'react';\nimport { RadioButton } from '@myie/interact-dom';\nimport { Row, Col, FormGroup } from 'reactstrap';\n\n/** RadioButton example */\nclass RadioButtonExample extends React.Component {\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default RadioButtonExample;\n","import React from 'react';\nimport { RoundBadge } from '@myie/interact-dom';\n\n/** RoundBadge example */\nclass RoundBadgeExample extends React.Component {\n render() {\n return 10;\n }\n}\n\nexport default RoundBadgeExample;\n","import React from 'react';\nimport { Text } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Text example 1 */\nclass TextExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default TextExample;\n","import React from 'react';\nimport { Text } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Text example 2 */\nclass Textsample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default Textsample;\n","import React from 'react';\nimport { TextArea } from '@myie/interact-dom';\nimport { FormGroup, Row, Col } from 'reactstrap';\n\n/** Text Area Example */\nclass TextAreaExample extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n };\n }\n\n onChange = e => {\n const { value } = e.target;\n this.setState({ value });\n };\n\n render() {\n return (\n \n \n \n \n \n \n \n );\n }\n}\n\nexport default TextAreaExample;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col, Card } from 'reactstrap';\nimport { FormattedCurrency, Content, Value } from '@myie/interact-dom';\n\nclass Balance extends React.Component {\n render() {\n const { props } = this;\n const { account, loopIndex } = props;\n const { ExtendedProperties: { InterestPaymentFrequency } = {} } = account;\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {'%'}\n \n {InterestPaymentFrequency}\n \n \n \n \n \n \n );\n }\n}\n\nBalance.propTypes = {\n account: PropTypes.any,\n loopIndex: PropTypes.any,\n};\n\nexport default Balance;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Content } from '@myie/interact-dom';\nimport { MaturityAlert } from '@myie/interact-accounts-dom';\nimport moment from 'moment';\n\nclass MaturityDetails extends React.Component {\n render() {\n const { loopIndex, account } = this.props;\n const { ExtendedProperties: { MaturityDate } = {} } = account;\n\n return (\n \n

    \n \n

    \n

    \n \n

    \n \n );\n }\n}\n\nMaturityDetails.propTypes = {\n account: PropTypes.any,\n loopIndex: PropTypes.any,\n mode: PropTypes.any,\n};\n\nexport default MaturityDetails;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { FormattedCurrency } from '@myie/interact-dom';\nimport {\n mapStateToProps,\n mapDispatchToProps,\n} from '@myie/interact-account-type-savings';\nimport { connect } from 'react-redux';\nimport moment from 'moment';\nimport { Content, FormattedDate } from '@myie/interact-dom';\n\nclass Transactions extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n isComponentLoaded: false,\n };\n }\n\n static getDerivedStateFromProps = nextProps => {\n const {\n accounts = {},\n fetchSavingsAccountTransactionsIfNeeded,\n isFetching,\n account,\n } = nextProps;\n const to = moment().startOf('day');\n const from = moment()\n .subtract(40, 'years')\n .add(1, 'day')\n .startOf('day');\n const range = {\n To: to.toISOString(),\n From: from.toISOString(),\n Latest: true,\n };\n\n if (accounts && !account.transactions && !isFetching) {\n fetchSavingsAccountTransactionsIfNeeded({\n AccountKey: account.AccountKey,\n Range: range,\n ExtendedProperties: {\n FromDate: moment(from).format(moment.HTML5_FMT.DATE),\n ToDate: moment(to)\n .add(1, 'day')\n .format(moment.HTML5_FMT.DATE),\n },\n });\n }\n\n return null;\n };\n\n setInitialRange() {}\n\n componentDidMount() {\n this.setState({ ...this.state, isComponentLoaded: true });\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n if (\n this.props.account === nextProps.account &&\n this.state.isComponentLoaded === nextState.isComponentLoaded\n ) {\n return false;\n } else {\n return true;\n }\n }\n\n render() {\n const { props } = this;\n\n const { account, loopIndex = 0 } = props;\n\n if (account.transactions && account.transactions.Transactions.length > 0) {\n let transactions = [...account.transactions.Transactions];\n //Transactions available - show latest 3 transactions\n return (\n
    \n

    \n \n

    \n \n {transactions\n .filter((i, index) => index < 3)\n .map((transaction, index) => (\n \n \n \n \n \n \n \n \n ))}\n \n
    \n );\n } else {\n if (\n account.transactions &&\n account.transactions.Transactions.length === 0\n ) {\n //No Transaction\n return (\n
    \n

    \n \n

    \n
    \n );\n } else {\n return null;\n }\n }\n }\n}\n\nTransactions.propTypes = {\n account: PropTypes.any,\n fetchSavingsAccountTransactionsIfNeeded: PropTypes.func,\n loopIndex: PropTypes.number,\n isFetching: PropTypes.bool,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Transactions);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-account-type-savings';\nimport MaturityDetails from './MaturityDetails';\nimport Transactions from './Transactions';\nimport moment from 'moment';\n\nclass Overview extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n range: this.setInitialRange(props),\n };\n }\n\n setInitialRange(props) {\n if (props.range) {\n return props.range;\n }\n const to = moment\n .utc()\n .startOf('day')\n .toISOString();\n const from = moment\n .utc()\n .subtract(40, 'years')\n .add(1, 'day')\n .startOf('day')\n .toISOString();\n return {\n To: to,\n From: from,\n Latest: true,\n };\n }\n\n accountType = () => {\n let { account, loopIndex } = this.props;\n switch (account.BrandProductType) {\n case 'EASY_ACCESS':\n return ;\n case 'FIXED_TERM':\n return ;\n default:\n }\n };\n\n render() {\n return <>{this.accountType()};\n }\n}\n\nOverview.propTypes = {\n account: PropTypes.any,\n fetchSavingsAccountTransactionsIfNeeded: PropTypes.func,\n loopIndex: PropTypes.any,\n range: PropTypes.any,\n};\n\nexport default connect(\n null,\n mapDispatchToProps,\n)(Overview);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Link } from 'react-router-dom';\nimport { Utility } from '@myie/interact';\nimport { Content } from '@myie/interact-dom';\n\nclass Links extends React.Component {\n getLinks = () => {\n const {\n BrandProductType,\n loopIndex,\n accountKey,\n accountStatus,\n } = this.props;\n switch (BrandProductType) {\n case 'NOTICE_ACCOUNT':\n if (accountStatus === 'Active') {\n return (\n \n \n \n );\n }\n break;\n case 'EASY_ACCESS':\n if (accountStatus === 'Active') {\n return (\n \n \n \n );\n }\n break;\n default:\n }\n };\n\n render() {\n const { props } = this;\n const { loopIndex } = props;\n\n return (\n \n );\n }\n}\n\nLinks.propTypes = {\n accountKey: PropTypes.any,\n loopIndex: PropTypes.any,\n BrandProductType: PropTypes.string,\n accountStatus: PropTypes.string,\n};\n\nexport default Links;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Card, Row, Col } from 'reactstrap';\nimport Balance from './Balance';\nimport Overview from './Overview';\nimport Links from './Links';\nimport { Content } from '@myie/interact-dom';\nimport moment from 'moment';\n\nclass SavingsSummary extends React.Component {\n render() {\n var colSize = this.props.mode === 1 ? 12 : 6;\n\n const { account, loopIndex, status } = this.props;\n return (\n \n <>\n {account.AccountStatus === 'Closed' ? (\n ''\n ) : (\n

    {account.AccountName}

    \n )}\n \n \n

    \n \n

    \n {account.AccountStatus === 'Closed' ? (\n <>\n

    \n \n

    \n

    \n \n

    \n \n ) : (\n ''\n )}\n

    \n {account.ExtendedProperties.CompanyName\n ? account.ExtendedProperties.CompanyName\n : ''}\n

    \n {account.AccountStatus !== 'Closed' ? (\n \n ) : (\n ''\n )}\n \n {account.AccountStatus !== 'Closed' ? (\n \n \n \n ) : (\n ''\n )}\n
    \n\n \n \n \n );\n }\n}\n\nSavingsSummary.propTypes = {\n account: PropTypes.any,\n loopIndex: PropTypes.any,\n mode: PropTypes.any,\n status: PropTypes.number,\n};\n\nexport default SavingsSummary;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {\n Content,\n FormattedCurrency,\n Value,\n FormattedDate,\n} from '@myie/interact-dom';\nimport { Row, Col } from 'reactstrap';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-account-type-savings';\nimport { mapStateToProps } from '@myie/interact-accounts';\nimport moment from 'moment';\n\nclass SavingsDetailSummary extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n static getDerivedStateFromProps = nextProps => {\n const {\n accounts = {},\n fetchSavingsAccountTransactions,\n account,\n isFetching,\n } = nextProps;\n const to = moment().startOf('day');\n const from = moment()\n .subtract(40, 'years')\n .add(1, 'day')\n .startOf('day');\n const range = {\n To: to.toISOString(),\n From: from.toISOString(),\n Latest: true,\n };\n if (accounts && !account.transactions && !isFetching) {\n fetchSavingsAccountTransactions({\n AccountKey: account.AccountKey,\n Range: range,\n ExtendedProperties: {\n FromDate: moment(from).format(moment.HTML5_FMT.DATE),\n ToDate: moment(to).format(moment.HTML5_FMT.DATE),\n },\n });\n }\n\n return null;\n };\n\n render() {\n const { account } = this.props;\n let pendingTransactions = [];\n if (\n account &&\n account.transactions &&\n account.transactions.Transactions.length > 0\n ) {\n pendingTransactions = account.transactions.Transactions.filter(\n element => element.ExtendedProperties.Type === 'PendingTransaction',\n );\n }\n const { ExtendedProperties: { InterestPaymentFrequency } = {} } = account;\n return (\n <>\n

    \n \n

    \n\n \n \n \n \n \n \n \n \n \n \n \n %\n \n {InterestPaymentFrequency}\n \n \n \n \n \n \n \n \n \n \n \n {account.ExtendedProperties.StatementMethod}\n \n\n {this.props.brandProductType === 'NOTICE_ACCOUNT' ? (\n <>\n \n \n \n \n {account.ExtendedProperties.NoticePeriodInDays}\n \n \n \n \n \n \n {pendingTransactions.length}\n \n \n ) : null}\n {this.props.brandProductType === 'EASY_ACCESS' ? (\n <>\n \n \n \n \n {pendingTransactions.length}\n \n \n ) : null}\n {this.props.brandProductType === 'FIXED_TERM' ? (\n <>\n \n \n \n \n \n \n \n ) : null}\n \n \n );\n }\n}\n\nSavingsDetailSummary.propTypes = {\n account: PropTypes.any,\n loopIndex: PropTypes.any,\n mode: PropTypes.any,\n brandProductType: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(SavingsDetailSummary);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Utility } from '@myie/interact';\nimport SavingsDetailSummary from './SavingsDetailSummary';\nimport { Row, Col, Nav, TabContent } from 'reactstrap';\n//import { AppMeta } from '@myie/interact-dom';\nimport {\n TabNavItem,\n TabTransaction,\n TabDocument,\n AccountSupportDropdown,\n TabSummary,\n} from '@myie/interact-accounts-dom';\nimport Balance from './Balance';\nimport { mapDispatchToProps as mapAccountsDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps } from '@myie/interact-account-type-savings';\nimport { mapDispatchToProps as ccbAccountsMapDispatch } from '@myie/interact-ccb-accounts';\nimport { TabNavigation, Content } from '@myie/interact-dom';\nimport moment from 'moment';\nimport { withRouter } from 'react-router-dom';\n\nclass SavingsDetails extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n tablist: TabNavigation.init(['transactions', 'downloads']),\n reversed: false,\n activeTab: 'summary',\n AccountKey: props.account.AccountKey.Key,\n count: 0,\n range: this.setInitialRange(props),\n downloadTypes: [],\n };\n }\n\n setInitialRange(props) {\n if (props.range) {\n return props.range;\n }\n const to = moment\n .utc()\n .startOf('day')\n .toISOString();\n const from = moment\n .utc()\n .subtract(1, 'months')\n .add(1, 'day')\n .startOf('day')\n .toISOString();\n return {\n To: to,\n From: from,\n Latest: true,\n };\n }\n\n static getDerivedStateFromProps(props, state) {\n let { AccountKey, ...rest } = state;\n const { account, fetchSavingsAccountTransactions } = props;\n if (\n account &&\n account.AccountKey &&\n account.AccountKey.Key &&\n AccountKey !== account.AccountKey.Key &&\n state.activeTab === 'transactions'\n ) {\n let rangeLocal = state.range;\n const from = moment\n .utc()\n .subtract(2, 'years')\n .add(1, 'day')\n .startOf('day')\n .toISOString();\n rangeLocal.From = from;\n fetchSavingsAccountTransactions({\n AccountKey: account.AccountKey,\n Range: rangeLocal,\n });\n }\n\n if (\n account &&\n account.AccountKey &&\n account.AccountKey.Key &&\n AccountKey !== account.AccountKey.Key\n ) {\n return { ...rest, AccountKey: account.AccountKey.Key, count: 0 };\n }\n\n return null;\n }\n\n setCount = count => {\n this.setState({ ...this.state, count });\n };\n\n componentDidMount() {\n const { fetchSavingsAccountIfNeeded, account } = this.props;\n\n fetchSavingsAccountIfNeeded({\n AccountKey: account.AccountKey,\n });\n }\n componentWillUnmount() {\n //For the selected account, transaction tab on detail page might call reverse() function in the props (when click sort by date).\n //This changes the order of transactions in account list in redux\n //When the same account is used on account list to show latest transactions the above call can change the expected result.\n //This call will reset transactions to correct the order for account list page.\n let { account, fetchSavingsAccountTransactions } = this.props;\n let rangeLocal = this.state.range;\n const from = moment\n .utc()\n .subtract(40, 'years')\n .add(1, 'day')\n .startOf('day')\n .toISOString();\n rangeLocal.From = from;\n fetchSavingsAccountTransactions({\n AccountKey: account.AccountKey,\n Range: this.state.range,\n });\n }\n\n setTab(e) {\n e.preventDefault();\n const current = e.target.href.substring(e.target.href.indexOf('#') + 1);\n let { account, fetchSavingsAccountTransactions } = this.props;\n switch (current) {\n case 'transactions': {\n let rangeLocal = this.state.range;\n this.setCount(0);\n const from = moment\n .utc()\n .subtract(2, 'years')\n .add(1, 'day')\n .startOf('day')\n .toISOString();\n rangeLocal.From = from;\n this.setState({ ...this.state, range: rangeLocal });\n fetchSavingsAccountTransactions({\n AccountKey: account.AccountKey,\n Range: rangeLocal,\n });\n break;\n }\n\n case 'summary': {\n let rangeLocal = this.state.range;\n const from = moment\n .utc()\n .subtract(40, 'years')\n .add(1, 'day')\n .startOf('day')\n .toISOString();\n rangeLocal.From = from;\n fetchSavingsAccountTransactions({\n AccountKey: account.AccountKey,\n Range: rangeLocal,\n });\n break;\n }\n default:\n }\n this.setState({ ...this.state, activeTab: current });\n }\n\n render() {\n const { activeTab, tablist, range } = this.state;\n const { props } = this;\n let {\n account,\n accounts,\n location = { pathname: '' },\n fetchSavingsAccountTransactionsIfNeeded,\n loopIndex = 0,\n } = props;\n\n var currentAccount = null;\n if (accounts && accounts.Accounts) {\n currentAccount = accounts.Accounts.find(function(element) {\n if (element) {\n return (\n Utility.hexEncode(element.AccountKey.Key) ===\n location.pathname.split('/').pop()\n );\n }\n return false;\n });\n }\n\n if (!currentAccount) {\n currentAccount = account;\n }\n\n let activeTabOverride = activeTab;\n if (currentAccount.AccountStatus === 'Closed') {\n // Set the activetab to be 'Statements' for closed accounts\n activeTabOverride = 'statements';\n }\n\n return (\n
    \n {account.AccountStatus === 'Closed' ? (\n ''\n ) : (\n <>\n

    {account.AccountName}

    \n \n )}\n

    \n {`${account.AccountNumber} ${account.SortCode}`}\n

    \n

    \n {account.ExtendedProperties.CompanyName\n ? account.ExtendedProperties.CompanyName\n : ''}\n

    \n \n {account.AccountStatus !== 'Closed' ? (\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\nSavingsDetails.propTypes = {\n account: PropTypes.any,\n accounts: PropTypes.object,\n documents: PropTypes.object,\n fetchSavingsAccountIfNeeded: PropTypes.any,\n fetchSavingsAccountTransactions: PropTypes.any,\n fetchSavingsAccountTransactionsIfNeeded: PropTypes.any,\n fetchDocumentsIfNeeded: PropTypes.func,\n loopIndex: PropTypes.number,\n getInterestHistory: PropTypes.any,\n interestHistory: PropTypes.any,\n location: PropTypes.any,\n range: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbAccountsDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbAccountsDefinition,\n };\n};\n\nexport default withRouter(\n connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapAccountsDispatchToProps,\n ...ccbAccountsMapDispatch,\n },\n )(SavingsDetails),\n);\n","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\n\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert } from 'reactstrap';\nimport { Markdown } from '@myie/interact-dom';\nimport { SavingsSummary } from '@myie/interact-account-type-savings-dom';\n\n\nclass AccountSummary extends React.Component {\nrender() {\n// eslint-disable-next-line no-unused-vars\nconst { account, loopIndex, mode } = this.props\nswitch (account.ProductType) {\n\t\tcase \"Savings\": return (); \n\ndefault: return (\n\n
    \n \n
    \n
    \n)\n}\n}\n}\n\nAccountSummary.propTypes = {\naccount: PropTypes.any,\nloopIndex: PropTypes.any,\nmode: PropTypes.any\n}\n\nexport default AccountSummary","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { CardColumns, Button, ButtonGroup, Fade, Col, Row } from 'reactstrap';\nimport AccountSummary from './AccountSummary';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-accounts';\nimport { Markdown, AppMeta, Content, DropDown } from '@myie/interact-dom';\nimport { Validate } from '@myie/interact';\n\nclass AccountsList extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n companyList: [],\n shown: true,\n form: {\n company: {\n rules: {\n title: 'Filter by company',\n stop: true,\n },\n value: '',\n },\n },\n };\n }\n\n static getDerivedStateFromProps = (nextProps, prevState) => {\n const elements = [];\n const keyValues = [];\n const { accounts = {}, status } = nextProps;\n let { Accounts: list = [] } = accounts;\n if (list.length > 0) {\n // status === 1 means show only closed accounts\n list.forEach(account => {\n if (\n (account.AccountStatus !== 'Closed') === !status &&\n account.ExtendedProperties.CompanyName\n ) {\n if (\n !keyValues.find(function(key) {\n return account.ExtendedProperties.CompanyName === key;\n })\n ) {\n elements.push(\n \n {account.ExtendedProperties.CompanyName}\n ,\n );\n }\n keyValues.push(account.ExtendedProperties.CompanyName);\n } else {\n // status === 1 means show only closed accounts\n if (status === 1 && account.ExtendedProperties.CompanyName) {\n if (\n !keyValues.find(function(key) {\n return account.ExtendedProperties.CompanyName === key;\n })\n ) {\n elements.push(\n \n {account.ExtendedProperties.CompanyName}\n ,\n );\n }\n keyValues.push(account.ExtendedProperties.CompanyName);\n }\n }\n });\n\n return {\n companyList: elements,\n };\n }\n\n return null;\n };\n\n setMode = mode => {\n const props = this.props;\n if (mode === props.mode) {\n return;\n }\n const { setListMode } = props;\n this.setState({ shown: false });\n setTimeout(\n function() {\n setListMode(mode);\n this.setState({ shown: true });\n }.bind(this),\n 250,\n );\n };\n\n onChangeAccount = e => {\n const { value, name } = e.target;\n\n let { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n setStatus = status => {\n const props = this.props;\n if (status === props.status) {\n return;\n }\n let { form } = this.state;\n let companyName = form.company.value;\n if (status === 0) {\n // If now show open accounts\n // and current company doesn't have any\n // clear it out\n if (\n this.props.accounts.Accounts.filter(a => {\n return (\n a.ExtendedProperties.CompanyName === companyName &&\n a.AccountStatus !== 'Closed'\n );\n }).length === 0\n ) {\n form.company.value = '';\n }\n }\n const { setStatusMode } = props;\n this.setState({ shown: false, form });\n setTimeout(\n function() {\n setStatusMode(status);\n this.setState({ shown: true });\n }.bind(this),\n 250,\n );\n };\n\n render() {\n let { accounts = {}, isFetching, mode, status } = this.props;\n let { Accounts: list = [] } = accounts;\n let children = [];\n let gridToggle = null;\n let statusToggle = null;\n let accountsToList = [];\n const { shown, form, companyList } = this.state;\n list.forEach(account => {\n if ((account.AccountStatus !== 'Closed') === !status) {\n accountsToList.push(account);\n }\n });\n if (accountsToList.length > 0 && form.company.value !== '') {\n accountsToList = accountsToList.filter(function(account) {\n return account.ExtendedProperties.CompanyName === form.company.value;\n });\n }\n\n if (accountsToList.length > 1) {\n gridToggle = (\n \n this.setMode(0)}\n >\n \n \n this.setMode(1)}\n >\n \n \n \n );\n } else {\n mode = 0;\n }\n\n if (accountsToList.length !== list.length || status === 1) {\n statusToggle = (\n \n this.setStatus(0)}\n >\n \n \n this.setStatus(1)}\n >\n \n \n \n );\n } else {\n status = 0;\n }\n\n accountsToList.forEach((account, index) => {\n children.push(\n ,\n );\n });\n\n if (children.length === 0) {\n if (!isFetching) {\n const state = !status ? 'Active' : 'Closed';\n children.push(\n

    \n \n

    ,\n );\n } else {\n children.push(\n

    \n \n {`...`}\n

    ,\n );\n }\n }\n\n return (\n
    \n \n

    \n \n

    \n \n \n
    \n \n \n\n {companyList.sort((a, b) => a.props.value > b.props.value)}\n \n {statusToggle} {gridToggle}\n
    \n \n
    \n\n \n \n {children}\n \n \n
    \n );\n }\n}\n\nAccountsList.propTypes = {\n acc: PropTypes.object,\n accounts: PropTypes.object,\n history: PropTypes.any,\n isFetching: PropTypes.any,\n mode: PropTypes.any,\n setListMode: PropTypes.any,\n setStatusMode: PropTypes.any,\n status: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(AccountsList);\n","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\n\nimport React from 'react';\nimport PropTypes from 'prop-types'\nimport { Alert } from 'reactstrap'\nimport { Markdown } from '@myie/interact-dom';\nimport { SavingsDetails } from '@myie/interact-account-type-savings-dom';\n\n\nclass AccountDetails extends React.Component {\nrender() {\n// eslint-disable-next-line no-unused-vars\nconst { account, loopIndex, mode } = this.props\nswitch (account.ProductType) {\n\t\tcase \"Savings\": return (); \n\ndefault: return (\n\n
    \n \n
    \n
    \n)\n}\n}\n}\n\nAccountDetails.propTypes = {\naccount: PropTypes.any,\nloopIndex: PropTypes.any,\nmode: PropTypes.any\n}\n\nexport default AccountDetails","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { mapStateToProps } from '@myie/interact-accounts';\nimport { connect } from 'react-redux';\nimport { NoMatch, AppMeta, Content } from '@myie/interact-dom';\nimport { Utility } from '@myie/interact';\nimport AccountDetails from './AccountDetails';\n\nclass AccountDetailsTemplate extends React.Component {\n render() {\n const { accounts } = this.props;\n\n let account = {};\n const thisProps = this.props;\n if (accounts && accounts.Accounts) {\n account = accounts.Accounts.find(function(element) {\n if (element) {\n return (\n Utility.hexEncode(element.AccountKey.Key) ===\n thisProps.match.params.id\n );\n }\n return false;\n });\n if (!account) {\n return ;\n }\n } else {\n return (\n

    \n \n

    \n );\n }\n\n return (\n <>\n \n \n \n );\n }\n}\n\nAccountDetailsTemplate.propTypes = {\n match: PropTypes.object,\n accounts: PropTypes.any,\n};\nexport default connect(mapStateToProps)(AccountDetailsTemplate);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-accounts';\nimport { Utility } from '@myie/interact';\nimport { Content, NoMatch } from '@myie/interact-dom';\nimport { Row, Col } from 'reactstrap';\n\nclass NominatedAccount extends React.Component {\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n render() {\n const { accounts } = this.props;\n\n let account = {};\n const thisProps = this.props;\n if (accounts && accounts.Accounts) {\n account = accounts.Accounts.find(function(element) {\n if (element) {\n return (\n Utility.hexEncode(element.AccountKey.Key) ===\n thisProps.match.params.id\n );\n }\n return false;\n });\n if (!account) {\n return ;\n }\n } else {\n return (\n

    \n \n

    \n );\n }\n\n return (\n
    \n

    \n \n

    \n

    \n \n

    \n

    \n \n \n \n \n

    \n

    \n \n

    \n \n \n \n \n \n {account &&\n account.ExtendedProperties &&\n account.ExtendedProperties.NominatedAccountNumber\n ? account.ExtendedProperties.NominatedAccountNumber\n : ''}\n \n \n \n \n \n {account &&\n account.ExtendedProperties &&\n account.ExtendedProperties.NominatedSortCode\n ? account.ExtendedProperties.NominatedSortCode\n : ''}\n \n \n\n
    \n \n \n \n
    \n
    \n );\n }\n}\n\nNominatedAccount.propTypes = {\n fetchAccountsIfNeeded: PropTypes.any,\n accounts: PropTypes.any,\n match: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(NominatedAccount);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Redirect, Route, Switch } from 'react-router-dom';\nimport { PrivateRoute, NoMatch } from '@myie/interact-dom';\nimport AccountsList from './AccountsList';\nimport AccountDetailsTemplate from './AccountDetailsTemplate';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-accounts';\nimport { Alert } from 'reactstrap';\nimport NominatedAccount from './NominatedAccount';\n\nclass Accounts extends React.Component {\n componentDidMount() {\n const { fetchAccountsIfNeeded } = this.props;\n fetchAccountsIfNeeded();\n }\n\n render() {\n const { error } = this.props;\n const re = new RegExp('^/accounts[/]{0,1}$');\n if (this.props.location.pathname.match(re)) {\n return ;\n }\n return (\n
    \n {error ? (\n \n {error}\n \n ) : (\n ''\n )}\n \n }\n />\n \n \n \n \n
    \n );\n }\n}\n\nAccounts.propTypes = {\n error: PropTypes.any,\n fetchAccountsIfNeeded: PropTypes.any,\n location: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Accounts);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Markdown, SideLink } from '@myie/interact-dom';\nimport { connect } from 'react-redux';\nimport { mapStateToProps } from '@myie/interact-messaging-twoway';\nimport { HelpContactSidebar } from '@myie/interact-dom';\nimport { Session } from '@myie/interact';\nimport { SystemMessage } from '@myie/interact-widget-system-message-dom';\n\nclass SummarySideBar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nSummarySideBar.propTypes = {\n i18n: PropTypes.any,\n newMessageCount: PropTypes.object,\n};\n\nexport default connect(mapStateToProps)(SummarySideBar);\n\n/*export default ('accounts')(\n connect(mapStateToProps)(SummarySideBar),\n); */\n","import SummarySidebar from './SummarySideBar';\nimport DetailSidebar from './DetailSideBar';\n\nconst AccountsSidebars = [\n {\n url: '/accounts/list',\n Sidebar: SummarySidebar,\n },\n {\n url: '/accounts/details/',\n Sidebar: DetailSidebar,\n },\n];\n\nexport default AccountsSidebars;\n","import React from 'react';\nimport { SelectAccounts } from '@myie/interact-widget-select-account-dom';\nimport { Session } from '@myie/interact';\n\nconst DetailSideBar = () => {\n return (\n \n );\n};\n\nexport default DetailSideBar;\n","import SummaryMenuItems from './SummaryMenuItems';\n\nconst AccountsMenuItems = [\n {\n url: '/accounts',\n menuItem: SummaryMenuItems,\n },\n];\n\nexport default AccountsMenuItems;\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { Content } from '@myie/interact-dom';\n\nclass SummaryMenuItems extends React.Component {\n render() {\n return (\n \n \n \n );\n }\n}\n\nexport default SummaryMenuItems;\n","import React from 'react';\nimport Accounts from './Accounts';\nimport { Route } from 'react-router-dom';\n\nconst Routes = [\n ,\n];\n\nexport default Routes;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { CSVLink } from 'react-csv';\nimport moment from 'moment';\nimport { Content, Icon } from '@myie/interact-dom';\n\nclass ExportAccountCSV extends React.Component {\n render() {\n const { account } = this.props;\n\n const csvTransactions = [];\n let csvTransactionsFilename = '';\n const transactions = account.transactions;\n\n if (\n account.transactions &&\n transactions.Transactions &&\n transactions.Transactions.length\n ) {\n csvTransactions.push([\n account.AccountName +\n ' Transactions exported on ' +\n moment(new Date()).format('YYYY-MM-DD h:mm'),\n ]);\n if (transactions.Range) {\n const fromDate = transactions.Range.From\n ? moment(transactions.Range.From).format('YYYY-MM-DD')\n : '';\n const toDate = transactions.Range.To\n ? moment(transactions.Range.To).format('YYYY-MM-DD')\n : '';\n csvTransactions.push(['Start', fromDate, 'End', toDate]);\n csvTransactionsFilename =\n account.AccountName + '_' + fromDate + '_' + toDate + '.csv';\n } else {\n csvTransactions.push(['Latest transactions']);\n csvTransactionsFilename =\n account.AccountName + '_Latest transactions.csv';\n }\n csvTransactions.push(['Date', 'Description', 'Amount', 'Balance']);\n\n transactions.Transactions.forEach(transaction => {\n if (\n transaction &&\n transaction.ExtendedProperties &&\n transaction.ExtendedProperties.Type &&\n transaction.ExtendedProperties.Type !== 'PendingTransaction'\n ) {\n csvTransactions.push([\n moment(transaction.Date)\n .utc()\n .format('YYYY-MM-DD'),\n transaction.Description,\n transaction.Amount,\n transaction.Balance ? transaction.Balance : 0,\n ]);\n }\n });\n\n return (\n \n \n \n \n \n \n );\n } else {\n return '';\n }\n }\n}\n\nExportAccountCSV.propTypes = {\n account: PropTypes.any,\n};\n\nexport default ExportAccountCSV;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { NavLink, NavItem } from 'reactstrap';\nimport { Content } from '@myie/interact-dom';\n\nclass TabNavItem extends React.Component {\n render() {\n const { name, caption, activeTab, tablist, ...rest } = this.props;\n return (\n \n tablist.tabKeyDown(e, name, tablist.refs)}\n {...rest}\n >\n \n \n \n );\n }\n}\nTabNavItem.propTypes = {\n activeTab: PropTypes.string,\n caption: PropTypes.string,\n name: PropTypes.string,\n onClick: PropTypes.func,\n tablist: PropTypes.object,\n};\n\nexport default TabNavItem;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Button, Form, Col, Navbar, Row } from 'reactstrap';\nimport { Date, Content } from '@myie/interact-dom';\nimport { Validate } from '@myie/interact';\n\nimport moment from 'moment';\n\nclass TransactionDateRange extends React.Component {\n constructor(props) {\n super(props);\n const { range } = this.props;\n\n this.state = {\n form: {\n startDate: {\n rules: {\n title: 'start date',\n stop: true,\n required: {\n message: 'Please select a start date',\n },\n date: {\n format: 'dmy',\n message: 'Please select a valid start date',\n },\n compareStartDate: {\n message: 'Start date must be less than or equal to the end date',\n field: 'endDate',\n comparison: () => {\n return this.state.form.endDate.value;\n },\n },\n },\n\n value: this.subtractDate(range.From),\n },\n endDate: {\n rules: {\n title: 'end date',\n stop: true,\n required: {\n message: 'Please select an end date',\n },\n date: {\n format: 'dmy',\n message: 'Please select a valid end date',\n },\n compareEndDate: {\n message:\n 'End date must be greater than or equal to the start date.',\n field: 'startDate',\n comparison: () => {\n return this.state.form.startDate.value;\n },\n },\n },\n\n value: this.subtractDate(range.From),\n },\n },\n };\n }\n\n subtractDate = date => {\n return moment(date).format('DD/MM/YYYY');\n };\n\n onChange = e => {\n let { name, value } = e.target;\n //value = moment(value).format(\"DD/MM/YYYY\");\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({\n ...this.state,\n form,\n });\n };\n\n onBlur = e => {\n let { name, value } = e.target;\n //value = moment(value).format(\"DD/MM/YYYY\");\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({\n ...this.state,\n form,\n });\n };\n\n submit = e => {\n e.preventDefault();\n const { fetchTransactions, toggle, account, setUpdateButton } = this.props;\n let { form } = this.state;\n const from = moment(form.startDate.value, 'DD/MM/YYYY');\n const to = moment(form.endDate.value, 'DD/MM/YYYY');\n const range = {\n To: to,\n From: from,\n };\n\n form = Validate.form(form);\n\n this.setState({\n ...this.state,\n form,\n });\n\n if (!form.approved) {\n return;\n }\n\n let request = {\n AccountKey: account.AccountKey,\n Range: range,\n ExtendedProperties: {\n FromDate: moment(from).format(moment.HTML5_FMT.DATE),\n ToDate: moment(to).format(moment.HTML5_FMT.DATE),\n },\n };\n setUpdateButton();\n fetchTransactions(request);\n toggle(range);\n\n form.endDate.value = this.subtractDate(range.To);\n form.startDate.value = this.subtractDate(range.From);\n this.setState({\n ...this.state,\n form,\n });\n };\n\n render() {\n const { form } = this.state;\n return (\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n }\n}\n\nTransactionDateRange.propTypes = {\n className: PropTypes.string,\n account: PropTypes.any,\n fetchTransactions: PropTypes.any,\n range: PropTypes.any,\n toggle: PropTypes.any,\n setUpdateButton: PropTypes.any,\n};\n\nexport default TransactionDateRange;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Col } from 'reactstrap';\nimport moment from 'moment';\n\nclass TransactionDate extends React.Component {\n render() {\n const { props } = this;\n\n const getDateStr = date => {\n const thisDate = moment(date)\n .startOf('day')\n .toString();\n const today = moment()\n .startOf('day')\n .toString();\n const yesterday = moment()\n .subtract(1, 'days')\n .startOf('day')\n .toString();\n\n if (thisDate === today) {\n return 'Today';\n }\n if (thisDate === yesterday) {\n return 'Yesterday';\n }\n\n return moment(date)\n .format('DD MMM YYYY')\n .toString();\n };\n return (\n \n {getDateStr(props.transactionDate)}\n \n );\n }\n}\n\nTransactionDate.propTypes = {\n transactionDate: PropTypes.any,\n position: PropTypes.any,\n};\n\nexport default TransactionDate;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { Content, RoundBadge, FormattedCurrency } from '@myie/interact-dom';\n\nclass Transaction extends React.Component {\n render() {\n const { props } = this;\n\n const { transaction, AccountCurrencyCode } = props;\n const { position } = props;\n const imgBackground = function() {\n var imgColours = ['blue'];\n var coloursCount = imgColours.length;\n var color = imgColours[position % coloursCount];\n return color + '-badge align-self-center';\n };\n\n const character = transaction.Description.substring(0, 1).toUpperCase();\n\n return (\n \n \n \n \n {character}\n \n \n \n
    \n {transaction.Description}\n
    \n \n \n \n \n \n
    \n \n
    \n \n \n \n \n \n
    \n \n
    \n \n
    \n \n );\n }\n}\n\nTransaction.propTypes = {\n AccountCurrencyCode: PropTypes.any,\n position: PropTypes.any,\n transaction: PropTypes.any,\n accountType: PropTypes.any,\n};\n\nexport default Transaction;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Fade,\n Navbar,\n Nav,\n NavItem,\n Button,\n TabPane,\n Row,\n Col,\n} from 'reactstrap';\nimport ExportAccountCSV from './ExportAccountCSV.js';\nimport TransactionDateRange from './TransactionDateRange';\nimport TransactionDate from './TransactionDate';\nimport Transaction from './Transaction';\nimport { connect } from 'react-redux';\nimport { FormattedDate, Content, Icon, Markdown } from '@myie/interact-dom';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as ccbAccountsMapDispatch } from '@myie/interact-ccb-accounts';\nimport moment from 'moment';\n\nclass TabTransaction extends React.Component {\n constructor(props) {\n super(props);\n this.toggleTransactions = this.toggleTransactions.bind(this);\n this.state = {\n range: props.range ? props.range : null,\n transactions: [],\n updateButton: false,\n };\n }\n\n setUpdateButton = () => {\n this.setState({ ...this.state, updateButton: true });\n };\n\n static getDerivedStateFromProps(props, state) {\n const {\n range,\n activeTab,\n accounts,\n account,\n isFetching,\n getInterestHistoryIfNeeded,\n } = props;\n if (\n activeTab === 'transactions' &&\n accounts &&\n !account.interestHistory &&\n !isFetching\n ) {\n getInterestHistoryIfNeeded({\n AccountKey: account.AccountKey,\n });\n }\n if (range && state.range == null) {\n if (range.Latest) {\n var latestDates = { ...range };\n delete latestDates.Latest;\n return { range, latestDates };\n }\n return { range };\n }\n\n return null;\n }\n\n sortTransactions = () => {\n if (\n this.props.account &&\n this.props.account.transactions &&\n this.props.account.transactions.Transactions\n ) {\n this.props.account.transactions.Transactions.reverse();\n this.setState({\n reverse: !this.state.reverse,\n });\n }\n //this.setState({ ...this.state });\n };\n\n toggleTransactions(range) {\n if (range) {\n this.setState({ collapse: !this.state.collapse, range: range });\n } else {\n this.setState({ collapse: !this.state.collapse });\n }\n }\n\n shouldComponentUpdate() {\n const { range } = this.props;\n if (!range) {\n return false;\n } else {\n return true;\n }\n }\n\n olderTransactions = () => {\n const { fetchTransactions, account, setCount, count } = this.props;\n let months = (count + 1) * 6 + 24;\n setCount(count + 1);\n const to = moment().startOf('day');\n const from = moment()\n .subtract(months, 'months')\n .add(1, 'day')\n .startOf('day');\n const range = {\n To: to.toISOString(),\n From: from.toISOString(),\n };\n let request = {\n AccountKey: account.AccountKey,\n Range: range,\n ExtendedProperties: {\n FromDate: moment(from).format(moment.HTML5_FMT.DATE),\n ToDate: moment(to).format(moment.HTML5_FMT.DATE),\n },\n };\n this.setState({ ...this.state, updateButton: false });\n fetchTransactions(request);\n this.toggleTransactions(range);\n };\n\n getRates(account) {\n let Rates = [];\n if (\n account.interestHistory.InterestRateHistory &&\n account.interestHistory.InterestRateHistory.InterestHistories\n ) {\n let InterestRates = [\n ...account.interestHistory.InterestRateHistory.InterestHistories,\n ];\n\n InterestRates.reverse().forEach((element, index) => {\n let today = moment(new Date()).format('YYYY-MM-DD');\n let toDate = moment(element.DateTo).format('YYYY-MM-DD');\n Rates.push(\n \n \n \n {' - '}\n {moment(toDate).isSame(today, 'day') ? (\n \n ) : (\n \n )}\n \n\n \n {element.AnnualInterestRate}\n {'%'}\n \n ,\n );\n });\n }\n\n return Rates;\n }\n\n render() {\n const {\n name,\n fetchTransactions,\n account,\n activeTab,\n tablist,\n count,\n } = this.props;\n const { range, updateButton } = this.state;\n const transactions = [];\n if (account.transactions && account.transactions.Transactions) {\n let index = 0;\n const listCount = (count + 1) * 20;\n let previousDate = null;\n\n account.transactions.Transactions.forEach(transaction => {\n if (\n transaction &&\n transaction.ExtendedProperties &&\n transaction.ExtendedProperties.Type &&\n transaction.ExtendedProperties.Type !== 'PendingTransaction'\n ) {\n if (index < listCount || updateButton) {\n let thisDate = moment(transaction.Date)\n .startOf('day')\n .toString();\n if (previousDate !== thisDate) {\n transactions.push(\n ,\n );\n previousDate = moment(transaction.Date)\n .startOf('day')\n .toString();\n }\n transactions.push(\n ,\n );\n index++;\n }\n }\n });\n }\n\n return (\n \n \n tablist.panelKeyDown(e, name, tablist.refs)}\n >\n \n \n \n \n \n \n

    \n * Please note re printing: formatting in some browsers may not\n fully work – please contact us if you need help.\n

    \n \n\n \n {transactions.length > 0 ? (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ) : (\n

    \n \n

    \n )}\n
    {transactions}
    \n\n \n \n {\n this.olderTransactions();\n }}\n size=\"sm\"\n className=\"btn-nav float-left mr-0\"\n color=\"link\"\n >\n \n \n \n\n \n {\n window.scrollTo(0, 0);\n }}\n size=\"sm\"\n className=\"btn-nav float-right mr-0\"\n color=\"link\"\n >\n \n \n \n \n {account.interestHistory &&\n account.interestHistory.InterestRateHistory &&\n account.interestHistory.InterestRateHistory.InterestHistories &&\n account.interestHistory.InterestRateHistory.InterestHistories\n .length > 0 ? (\n <>\n

    \n \n

    \n \n \n \n \n {this.getRates(account)}\n \n \n \n \n ) : (\n ''\n )}\n \n \n
    \n \n );\n }\n}\nTabTransaction.propTypes = {\n account: PropTypes.object,\n activeTab: PropTypes.string,\n fetchTransactions: PropTypes.func,\n range: PropTypes.object,\n tablist: PropTypes.object,\n name: PropTypes.any,\n getInterestHistoryIfNeeded: PropTypes.any,\n isFetching: PropTypes.any,\n interestRates: PropTypes.any,\n accounts: PropTypes.any,\n count: PropTypes.any,\n setCount: PropTypes.any,\n transRange: PropTypes.any,\n};\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbAccountsDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbAccountsDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...ccbAccountsMapDispatch },\n)(TabTransaction);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Fade, TabPane } from 'reactstrap';\n\nclass TabSummary extends React.Component {\n render() {\n const { activeTab, tablist, children, name } = this.props;\n\n return (\n \n \n tablist.panelKeyDown(e, name, tablist.refs)}\n >\n {children}\n \n \n \n );\n }\n}\nTabSummary.propTypes = {\n activeTab: PropTypes.string,\n children: PropTypes.node,\n tablist: PropTypes.object,\n name: PropTypes.any,\n};\n\nexport default TabSummary;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { NavLink } from 'reactstrap';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as ccbAccountsMapDispatch } from '@myie/interact-ccb-accounts';\nimport { Content } from '@myie/interact-dom';\nimport moment from 'moment';\n\nclass DownloadDocument extends React.PureComponent {\n constructor(props) {\n super(props);\n\n this.state = {\n date: moment(new Date())\n .utc()\n .format('YYYY-MM-DD'),\n message: '',\n };\n }\n\n componentDidUpdate() {\n const { downloadedDocument, document, documentIdData } = this.props;\n if (\n downloadedDocument &&\n documentIdData &&\n document.DocumentKey.Key === downloadedDocument.documentKey.Key &&\n downloadedDocument.documentKey.Key !== documentIdData.id\n ) {\n this.download(downloadedDocument, document);\n }\n }\n\n download = (downloadedDocument, docInfo) => {\n const { ccbResetDocumentDownload } = this.props;\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\n //For IE and the legacy version of Microsoft Edge, use atob convert base64 encoded data to byte array\n var byteCharacters = window.atob(downloadedDocument.document.Document); // Convert from base64\n var byteNumbers = new Array(byteCharacters.length);\n for (var i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i);\n }\n var byteArray = new Uint8Array(byteNumbers);\n var blob = new Blob([byteArray], { type: 'application/pdf' });\n window.navigator.msSaveOrOpenBlob(\n blob,\n `${docInfo.Name + docInfo.FileExtension}`,\n );\n } else {\n const downloadLink = document.createElement('a');\n downloadLink.href =\n 'data:' +\n downloadedDocument.document.Mime +\n ';base64,' +\n downloadedDocument.document.Document;\n downloadLink.download = `${docInfo.Name + docInfo.FileExtension}`;\n ccbResetDocumentDownload();\n downloadLink.click();\n }\n };\n\n downloadFileRequest = () => {\n const { ccbFetchDocumentDownload, document, selectedAccount } = this.props;\n const request = {\n DocumentKey: document.DocumentKey,\n ExtendedProperties: {\n Date: this.state.date,\n Type: document.Type,\n AccountKey: selectedAccount.AccountKey,\n },\n };\n ccbFetchDocumentDownload(request);\n };\n\n render() {\n return (\n this.downloadFileRequest()}\n href=\"#\"\n >\n \n {document.Name}\n \n );\n }\n}\n\nDownloadDocument.propTypes = {\n ccbFetchDocumentDownload: PropTypes.func,\n ccbResetDocumentDownload: PropTypes.func,\n downloadedDocument: PropTypes.object,\n document: PropTypes.object,\n selectedAccount: PropTypes.any,\n DocumentKey: PropTypes.object,\n index: PropTypes.number,\n setDocument: PropTypes.any,\n documentIdData: PropTypes.object,\n};\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbAccountsDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbAccountsDefinition,\n };\n};\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...ccbAccountsMapDispatch },\n)(DownloadDocument);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { FormattedDate } from '@myie/interact-dom';\nimport DownloadDocument from './DownloadDocument';\n\nclass Document extends React.PureComponent {\n render() {\n const { props } = this;\n\n const {\n document,\n index,\n selectedAccount,\n setDocument,\n documentIdData,\n } = props;\n\n if (!document) {\n return null;\n }\n\n return (\n
  • \n \n \n \n \n \n {document.Name}\n \n \n {document.ExtendedProperties.DisplayType}\n \n \n \n \n \n
  • \n );\n }\n}\n\nDocument.propTypes = {\n AccountCurrencyCode: PropTypes.any,\n position: PropTypes.any,\n transaction: PropTypes.any,\n selectedAccount: PropTypes.any,\n document: PropTypes.object,\n index: PropTypes.number,\n setDocument: PropTypes.any,\n documentIdData: PropTypes.object,\n};\n\nexport default connect(\n null,\n mapDispatchToProps,\n)(Document);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Fade, Navbar, Nav, NavItem, TabPane, Row, Col } from 'reactstrap';\nimport { Check, Content, Markdown } from '@myie/interact-dom';\nimport Document from './Document';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-accounts';\nimport { mapDispatchToProps as ccbAccountsMapDispatch } from '@myie/interact-ccb-accounts';\n\nclass TabDocument extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n downloadTypes: [],\n documentIdData: {\n id: '',\n count: 0,\n },\n };\n }\n\n static getDerivedStateFromProps(props, state) {\n const {\n documents,\n account,\n activeTab,\n ccbFetchDocumentsIfNeeded,\n accounts,\n isFetching,\n } = props;\n const { downloadTypes, documentIdData } = state;\n\n if (\n activeTab === 'statements' &&\n accounts &&\n !account.documents &&\n !isFetching\n ) {\n ccbFetchDocumentsIfNeeded({\n AccountKey: account.AccountKey,\n });\n }\n if (documents && documents.Documents) {\n documents.Documents.forEach(document => {\n if (\n !downloadTypes.some(\n doc => doc.label === document.ExtendedProperties.DisplayType,\n )\n ) {\n const docType = {\n id: document.ExtendedProperties.DisplayType.replace(/\\s+/g, ''),\n label: document.ExtendedProperties.DisplayType,\n checked: true,\n };\n downloadTypes.push(docType);\n }\n });\n\n return {\n downloadTypes,\n documentIdData,\n };\n } else return null;\n }\n\n onDocTypesChange = e => {\n const { downloadTypes } = this.state;\n let docTypeIndex = 0;\n downloadTypes.forEach(docType => {\n if (docType.id === e.target.id) {\n downloadTypes[docTypeIndex].checked = !docType.checked;\n }\n docTypeIndex++;\n });\n this.setState({ ...this.state, downloadTypes });\n };\n\n setDocumentId = id => {\n const { documentIdData } = this.state;\n documentIdData.count = 1;\n documentIdData.id = id;\n this.setState({ ...this.state, documentIdData });\n };\n\n getDocTypes = documentTypes => {\n const docTypeButtons = [];\n if (documentTypes) {\n documentTypes.forEach((docType, index) => {\n const id = docType.id;\n docTypeButtons.push(\n \n \n ,\n );\n });\n }\n\n return docTypeButtons;\n };\n render() {\n const { activeTab, tablist, name, account } = this.props;\n const { downloadTypes } = this.state;\n const documentList = [];\n\n if (account && account.documents && account.documents.Documents) {\n let index = 0;\n account.documents.Documents.forEach(document => {\n if (\n downloadTypes.some(\n doc =>\n doc.label === document.ExtendedProperties.DisplayType &&\n doc.checked,\n )\n ) {\n documentList.push(\n ,\n );\n }\n index++;\n });\n }\n\n return (\n \n \n tablist.panelKeyDown(e, name, tablist.refs)}\n >\n \n \n \n \n\n \n\n {documentList.length > 0 ? (\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
      \n {documentList}\n
    \n \n ) : (\n ''\n )}\n \n
    \n \n );\n }\n}\nTabDocument.propTypes = {\n account: PropTypes.object,\n activeTab: PropTypes.string,\n documents: PropTypes.object,\n ccbFetchDocumentsIfNeeded: PropTypes.func,\n isFetching: PropTypes.bool,\n tablist: PropTypes.object,\n name: PropTypes.any,\n accounts: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { accountsDefinition, customccbAccountsDefinition } = state;\n return {\n ...accountsDefinition,\n ...customccbAccountsDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n { ...mapDispatchToProps, ...ccbAccountsMapDispatch },\n)(TabDocument);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Row, Col } from 'reactstrap';\nimport { FormattedDate, FormattedCurrency } from '@myie/interact-dom';\n\nclass ListPageTransaction extends React.Component {\n render() {\n const { props } = this;\n\n const { account, transaction } = props;\n\n return (\n \n \n
    \n {transaction.Description.charAt(0).toUpperCase() +\n transaction.Description.slice(1).toLowerCase()}\n
    \n \n \n \n \n \n \n \n \n );\n }\n}\n\nListPageTransaction.propTypes = {\n account: PropTypes.object,\n position: PropTypes.any,\n transaction: PropTypes.any,\n};\n\nexport default ListPageTransaction;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { DropDown } from '@myie/interact-dom';\nimport { withRouter } from 'react-router-dom';\nimport { Validate, Utility } from '@myie/interact';\nimport Currency from 'react-currency-formatter';\n\nclass RedirectByAccountDropdown extends React.Component {\n constructor(props) {\n super(props);\n const { defaultSelect } = this.props;\n this.state = {\n form: {\n accountType: {\n value: defaultSelect,\n rules: {\n title: 'Source Account',\n stop: true,\n required: {\n message: 'Please select your account',\n },\n },\n },\n },\n };\n }\n\n withdrawalFilter = accounts => {\n if (accounts) {\n return accounts.filter(\n account =>\n account.AccountStatus !== 'Closed' &&\n account.BrandProductType === 'EASY_ACCESS',\n );\n }\n return [];\n };\n\n noticeFilter = accounts => {\n if (accounts) {\n return accounts.filter(\n account =>\n account.AccountStatus !== 'Closed' &&\n account.BrandProductType === 'NOTICE_ACCOUNT',\n );\n }\n return [];\n };\n\n onChangeTarget = e => {\n const { name, value } = e.target;\n if (value === '') {\n return;\n }\n let { form } = this.state;\n const { baseUrl, accounts, history, onChangeAccount } = this.props;\n form = Validate.input(name, value, form);\n if (accounts && accounts.Accounts) {\n const account = accounts.Accounts.find(function(element) {\n return element.AccountKey.Key === value;\n });\n\n this.setState({ ...this.state, form });\n onChangeAccount(e);\n const newUrl = baseUrl + Utility.hexEncode(account.AccountKey.Key);\n history.push(newUrl);\n }\n };\n\n accountOptions(prefix, item, index) {\n return (\n \n {item.AccountNumber} -{' '}\n {Currency({ quantity: item.Balance, currency: item.CurrencyCode })}\n \n );\n }\n\n render() {\n const { accounts, defaultSelect, filter } = this.props;\n\n const { form } = this.state;\n if (form.accountType.value === undefined) {\n form.accountType.value = defaultSelect;\n }\n\n let accOptions = [];\n switch (filter) {\n case 'withdrawal':\n accOptions = accounts ? this.withdrawalFilter(accounts.Accounts) : [];\n break;\n case 'notice':\n accOptions = accounts ? this.noticeFilter(accounts.Accounts) : [];\n break;\n default:\n }\n\n return (\n \n \n {accOptions.map((item, index) => {\n return this.accountOptions('accountType', item, index);\n })}\n \n );\n }\n}\n\nRedirectByAccountDropdown.propTypes = {\n accounts: PropTypes.any,\n baseUrl: PropTypes.any,\n defaultSelect: PropTypes.any,\n filterAccounts: PropTypes.any,\n history: PropTypes.any,\n onChangeAccount: PropTypes.any,\n filter: PropTypes.any,\n};\n\nexport default withRouter(RedirectByAccountDropdown);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { DropDown } from '@myie/interact-dom';\nimport { withRouter } from 'react-router-dom';\n\nclass AccountSupportDropdown extends React.Component {\n constructor(props) {\n super(props);\n const { actions } = props;\n const defaultActions = {\n Alerts: {\n redirectURL: '/alerts',\n optionName: 'Manage account alerts',\n },\n Messaging: {\n redirectURL: '/messaging-twoway/view',\n optionName: 'Send a message',\n },\n };\n const allActions = Object.assign({}, actions, defaultActions);\n this.state = {\n allActions,\n form: {\n accountOptions: {\n value: '',\n rules: {},\n },\n },\n };\n }\n\n onChangeTarget = e => {\n const { history } = this.props;\n const { allActions } = this.state;\n const { value } = e.target;\n if (value === '') {\n return;\n }\n\n history.push(allActions[value].redirectURL);\n };\n\n accountOptions() {\n const { account } = this.props;\n const { allActions } = this.state;\n const elements = [];\n if (allActions) {\n const keys = Object.keys(allActions);\n keys.forEach(key => {\n if (allActions[key].optionName && account.Supports.includes(key)) {\n elements.push(\n ,\n );\n }\n });\n }\n return elements;\n }\n\n render() {\n const { form } = this.state;\n const options = this.accountOptions();\n return options.length !== 0 ? (\n \n \n {options}\n \n ) : null;\n }\n}\n\nAccountSupportDropdown.propTypes = {\n account: PropTypes.any,\n actions: PropTypes.any,\n history: PropTypes.any,\n};\n\nexport default withRouter(AccountSupportDropdown);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert } from 'reactstrap';\nimport moment from 'moment';\nimport { Content } from '@myie/interact-dom';\n\nclass MaturityAlert extends React.Component {\n onDismiss = () => {\n const { closeAlert, accountKey } = this.props;\n closeAlert(accountKey);\n };\n\n getMessage = MaturityDate => {\n let today = moment();\n let maturity = moment(MaturityDate);\n\n if (maturity.isSame(today, 'day')) {\n return (\n \n );\n } else {\n if (maturity.diff(today, 'day') < 14) {\n return (\n \n );\n } else {\n return (\n \n );\n }\n }\n };\n\n render() {\n const { index, visibility, MaturityDate, alert } = this.props;\n return (\n <>\n {alert ? (\n \n {this.getMessage(MaturityDate)}\n \n ) : (\n this.getMessage(MaturityDate)\n )}\n \n );\n }\n}\n\nMaturityAlert.propTypes = {\n alertVisibleArray: PropTypes.any,\n closeAlert: PropTypes.any,\n accountKey: PropTypes.any,\n message: PropTypes.any,\n index: PropTypes.any,\n MaturityDate: PropTypes.any,\n visibility: PropTypes.any,\n alert: PropTypes.any,\n};\n\nexport default MaturityAlert;\n","import Accounts from './Accounts';\nimport AccountsSidebars from './Sidebars';\nimport AccountsMenuItems from './MenuItems';\nimport Routes from './Routes';\n/* Components */\nimport ExportAccountCSV from './Components/DetailPage/Tabs/Transaction/ExportAccountCSV';\nimport TabNavItem from './Components/DetailPage/Tabs/TabNavItem';\n/* Detail Page */\nimport TransactionDateRange from './Components/DetailPage/Tabs/Transaction/TransactionDateRange'; /* To be removed */\nimport TransactionDate from './Components/DetailPage/Tabs/Transaction/TransactionDate'; /* To be removed */\nimport Transaction from './Components/DetailPage/Tabs/Transaction/Transaction'; /* To be removed */\nimport TabTransaction from './Components/DetailPage/Tabs/Transaction/TabTransaction';\nimport TabSummary from './Components/DetailPage/Tabs/Summary/TabSummary';\nimport TabDocument from './Components/DetailPage/Tabs/Document/TabDocument';\n/* List Page */\nimport ListPageTransaction from './Components/ListPage/ListPageTransaction';\nimport RedirectByAccountDropdown from './Components/RedirectByAccountDropdown';\nimport AccountSupportDropdown from './Components/DetailPage/Tabs/Transaction/AccountSupportDropdown';\nimport Document from './Components/DetailPage/Tabs/Document/Document';\nimport MaturityAlert from './MaturityMessages/MaturityAlert';\n\nexport {\n Accounts,\n AccountsSidebars,\n AccountsMenuItems,\n Routes,\n MaturityAlert,\n ExportAccountCSV,\n TabNavItem,\n Transaction /* To be removed */,\n TransactionDate /* To be removed */,\n TransactionDateRange /* To be removed */,\n RedirectByAccountDropdown,\n ListPageTransaction,\n AccountSupportDropdown,\n Document,\n TabTransaction,\n TabSummary,\n TabDocument,\n};\n","import {\n ACTIVATION_REQUEST,\n ACTIVATION_SUCCESS,\n ACTIVATION_FAILURE,\n RESET_ACTIVATION,\n} from '../actions/registrationTypes';\n\nconst ccbRegistrationDefinition = (state = {}, action) => {\n switch (action.type) {\n case RESET_ACTIVATION:\n return {\n ...state,\n activationCheck: {},\n };\n case ACTIVATION_SUCCESS:\n return {\n ...state,\n activationCheck: action.activationCheck,\n isFetching: action.isFetching,\n };\n case ACTIVATION_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case ACTIVATION_REQUEST:\n default:\n return state;\n }\n};\n\nexport default ccbRegistrationDefinition;\n","export const ACTIVATION_REQUEST = 'ACTIVATION_REQUEST';\nexport const ACTIVATION_SUCCESS = 'ACTIVATION_SUCCESS';\nexport const ACTIVATION_FAILURE = 'ACTIVATION_FAILURE';\nexport const RESET_ACTIVATION = 'RESET_ACTIVATION';\n\nexport const SETUP_CREDENTIALS_REQUEST = 'SETUP_CREDENTIALS_REQUEST';\nexport const SETUP_CREDENTIALS_SUCCESS = 'SETUP_CREDENTIALS_SUCCESS';\nexport const SETUP_CREDENTIALS_FAILURE = 'SETUP_CREDENTIALS_FAILURE';\nexport const RESET_SETUP_CREDENTIALS = 'RESET_SETUP_CREDENTIALS';\n\nexport const TOKEN_ACCOUNT_REQUEST = 'TOKEN_ACCOUNT_REQUEST';\nexport const TOKEN_ACCOUNT_SUCCESS = 'TOKEN_ACCOUNT_SUCCESS';\nexport const TOKEN_ACCOUNT_FAILURE = 'TOKEN_ACCOUNT_FAILURE';\nexport const RESET_TOKEN_ACCOUNT = 'RESET_TOKEN_ACCOUNT';\n\nexport const SETUP_CREDENTIALS_ACTIVATE_REQUEST =\n 'SETUP_CREDENTIALS_ACTIVATE_REQUEST';\nexport const SETUP_CREDENTIALS_ACTIVATE_SUCCESS =\n 'SETUP_CREDENTIALS_ACTIVATE_SUCCESS';\nexport const SETUP_CREDENTIALS_ACTIVATE_FAILURE =\n 'SETUP_CREDENTIALS_ACTIVATE_FAILURE';\nexport const RESET_SETUP_CREDENTIALS_ACTIVATE =\n 'RESET_SETUP_CREDENTIALS_ACTIVATE';\n","import {\n SETUP_CREDENTIALS_REQUEST,\n SETUP_CREDENTIALS_SUCCESS,\n SETUP_CREDENTIALS_FAILURE,\n RESET_SETUP_CREDENTIALS,\n SETUP_CREDENTIALS_ACTIVATE_REQUEST,\n SETUP_CREDENTIALS_ACTIVATE_SUCCESS,\n SETUP_CREDENTIALS_ACTIVATE_FAILURE,\n RESET_SETUP_CREDENTIALS_ACTIVATE,\n} from '../actions/registrationTypes';\n\nconst ccbSetupCredentialsDefinition = (state = {}, action) => {\n switch (action.type) {\n case RESET_SETUP_CREDENTIALS_ACTIVATE:\n return {\n ...state,\n credentialsActivate: {},\n };\n case SETUP_CREDENTIALS_ACTIVATE_SUCCESS:\n return {\n ...state,\n credentialsActivate: action.setupcredentials,\n isFetching: action.isFetching,\n };\n case SETUP_CREDENTIALS_ACTIVATE_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case SETUP_CREDENTIALS_ACTIVATE_REQUEST:\n case RESET_SETUP_CREDENTIALS:\n return {\n ...state,\n setupCredentialsActivate: {},\n };\n case SETUP_CREDENTIALS_SUCCESS:\n return {\n ...state,\n setupCredentialsActivate: action.setupCredentialsActivate,\n isFetching: action.isFetching,\n };\n case SETUP_CREDENTIALS_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case SETUP_CREDENTIALS_REQUEST:\n default:\n return state;\n }\n};\n\nexport default ccbSetupCredentialsDefinition;\n","import {\n TOKEN_ACCOUNT_REQUEST,\n TOKEN_ACCOUNT_SUCCESS,\n TOKEN_ACCOUNT_FAILURE,\n RESET_TOKEN_ACCOUNT,\n} from '../actions/registrationTypes';\n\nconst ccbRegistrationTokenDefinition = (state = {}, action) => {\n switch (action.type) {\n case RESET_TOKEN_ACCOUNT:\n return {\n ...state,\n tokenAccountDetails: {},\n };\n case TOKEN_ACCOUNT_SUCCESS:\n return {\n ...state,\n tokenAccountDetails: action.tokenAccountDetails,\n isFetching: action.isFetching,\n };\n case TOKEN_ACCOUNT_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case TOKEN_ACCOUNT_REQUEST:\n default:\n return state;\n }\n};\n\nexport default ccbRegistrationTokenDefinition;\n","import ccbRegistrationDefinition from './reducers/registrationDefinition';\nimport ccbSetupCredentialsDefinition from './reducers/setupCredentialsDefinition';\nimport ccbRegistrationTokenDefinition from './reducers/tokenAccountDefinition';\n\nconst customccbAuthenticationDefinition = (state = {}, action) => {\n var newState = state;\n newState = ccbRegistrationDefinition(newState, action);\n newState = ccbSetupCredentialsDefinition(newState, action);\n newState = ccbRegistrationTokenDefinition(newState, action);\n return newState;\n};\n\nexport default customccbAuthenticationDefinition;\n","import { Connection } from '@myie/interact';\n\nimport {\n ACTIVATION_REQUEST,\n ACTIVATION_SUCCESS,\n ACTIVATION_FAILURE,\n RESET_ACTIVATION,\n} from './registrationTypes';\n\nexport const resetActivation = () => ({\n type: RESET_ACTIVATION,\n});\nexport const activationRequest = () => ({\n type: ACTIVATION_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const activationFailed = error => ({\n type: ACTIVATION_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const activationReceive = json => ({\n type: ACTIVATION_SUCCESS,\n activationCheck: json,\n isFetching: false,\n error: null,\n});\n\nexport const registrationcheck = request => dispatch => {\n dispatch(activationRequest());\n return fetch(Connection.baseUrl('customccb') + `v1.0/registrationcheck`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(activationReceive(json)))\n .catch(error => dispatch(activationFailed(error)));\n};\n","import { Connection, TwoFactor } from '@myie/interact';\n\nimport {\n SETUP_CREDENTIALS_REQUEST,\n SETUP_CREDENTIALS_SUCCESS,\n SETUP_CREDENTIALS_FAILURE,\n RESET_SETUP_CREDENTIALS,\n} from './registrationTypes';\n\nexport const resetSetupCredentials = () => ({\n type: RESET_SETUP_CREDENTIALS,\n});\nexport const setupCredentialsRequest = () => ({\n type: SETUP_CREDENTIALS_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const setupCredentialsFailed = error => ({\n type: SETUP_CREDENTIALS_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const setupCredentialsReceive = json => ({\n type: SETUP_CREDENTIALS_SUCCESS,\n setupCredentialsActivate: json,\n isFetching: false,\n error: null,\n});\n\nexport const setupCredentials = request => dispatch => {\n return TwoFactor.run(() => {\n dispatch(setupCredentialsRequest());\n return fetch(\n Connection.baseUrl('webauthentication') +\n `v2.0/user/forgottencredentials/activate`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(setupCredentialsReceive(json)))\n .catch(error => dispatch(setupCredentialsFailed(error)));\n });\n};\n","import { Connection } from '@myie/interact';\n\nimport {\n TOKEN_ACCOUNT_REQUEST,\n TOKEN_ACCOUNT_SUCCESS,\n TOKEN_ACCOUNT_FAILURE,\n RESET_TOKEN_ACCOUNT,\n} from './registrationTypes';\n\nexport const resetTokenAccount = () => ({\n type: RESET_TOKEN_ACCOUNT,\n});\nexport const tokenAccountRequest = () => ({\n type: TOKEN_ACCOUNT_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const tokenAccountFailed = error => ({\n type: TOKEN_ACCOUNT_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const tokenAccountReceive = json => ({\n type: TOKEN_ACCOUNT_SUCCESS,\n tokenAccountDetails: json,\n isFetching: false,\n error: null,\n});\n\nexport const getTokenAccount = request => dispatch => {\n dispatch(tokenAccountRequest());\n return fetch(Connection.baseUrl('customccb') + `v1.0/token`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(tokenAccountReceive(json)))\n .catch(error => dispatch(tokenAccountFailed(error)));\n};\n","import { Connection, TwoFactor } from '@myie/interact';\n\nimport {\n SETUP_CREDENTIALS_ACTIVATE_REQUEST,\n SETUP_CREDENTIALS_ACTIVATE_SUCCESS,\n SETUP_CREDENTIALS_ACTIVATE_FAILURE,\n RESET_SETUP_CREDENTIALS_ACTIVATE,\n} from './registrationTypes';\n\nexport const resetActivation = () => ({\n type: RESET_SETUP_CREDENTIALS_ACTIVATE,\n});\nexport const setupCredentialsRequest = () => ({\n type: SETUP_CREDENTIALS_ACTIVATE_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const failedSetupCredentials = error => ({\n type: SETUP_CREDENTIALS_ACTIVATE_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const activationSetupCredentials = json => ({\n type: SETUP_CREDENTIALS_ACTIVATE_SUCCESS,\n setupcredentials: json,\n isFetching: false,\n error: null,\n});\n\nexport const setupcredentialsActivate = request => dispatch => {\n return TwoFactor.run(() => {\n dispatch(setupCredentialsRequest());\n return fetch(\n Connection.baseUrl('webauthentication') +\n `v2.0/user/setupcredentials/activate`,\n {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n },\n )\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(activationSetupCredentials(json)))\n .catch(error => dispatch(failedSetupCredentials(error)));\n });\n};\n","import * as registrationActions from './actions/registrationActions';\nimport * as setupCredentialsActions from './actions/setupCredentialsActions';\nimport * as registrationTokenAction from './actions/registrationTokenAction';\nimport * as credentialsActions from './actions/activation';\n\nconst mapDispatchToProps = {\n ...registrationActions,\n ...setupCredentialsActions,\n ...registrationTokenAction,\n ...credentialsActions,\n};\n\nexport default mapDispatchToProps;\n","import customccbAuthenticationDefinition from './reducer';\nimport mapStateToProps from './mapStateToProps';\nimport mapDispatchToProps from './mapDispatchToProps';\n\nexport {\n customccbAuthenticationDefinition,\n mapStateToProps,\n mapDispatchToProps,\n};\n","import _ from 'lodash';\nimport queryString from 'query-string';\n\nconst stateUtility = (function() {\n // const addOtherParamsToUrl = passedParams => {\n // const params = Object.keys(passedParams);\n // let strings = '/';\n // params.forEach(param => {\n // if (\n // passedParams[param] &&\n // passedParams[param].search('propState') === -1\n // ) {\n // strings = `${strings}/${passedParams[param]}`;\n // }\n // });\n\n // return strings;\n // };\n\n // const updateFormData = (data, formData) => {\n // let newFormData = formData;\n // const keys = Object.keys(data);\n // keys.forEach(key => {\n // if (newFormData[key]) {\n // newFormData[key] = data[key];\n // } else {\n // newFormData[`${key}`] = data[key];\n // }\n // });\n\n // return newFormData;\n // };\n\n const setPageState = (storageName, obj, formData) => {\n let currenObj = {};\n currenObj = JSON.parse(window.sessionStorage.getItem('pageState'));\n if (!currenObj) {\n currenObj = {};\n }\n if (currenObj && currenObj[storageName]) {\n currenObj[storageName][`${formData}`] = obj;\n } else {\n currenObj[`${storageName}`] = {};\n let thisObj = currenObj;\n thisObj[storageName][`${formData}`] = obj;\n }\n window.sessionStorage.setItem('pageState', JSON.stringify(currenObj));\n };\n\n const setGlobalValue = data => {\n let currenObj = JSON.parse(window.sessionStorage.getItem('pageState'));\n if (!currenObj) {\n currenObj = {};\n }\n if (currenObj['global']) {\n let currentValues = currenObj['global'];\n const keys = Object.keys(data);\n keys.forEach(key => {\n if (currentValues[key]) {\n currentValues[key] = data[key];\n } else {\n currentValues[`${key}`] = data[key];\n }\n });\n currenObj['global'] = currentValues;\n } else {\n currenObj['global'] = data;\n }\n window.sessionStorage.setItem('pageState', JSON.stringify(currenObj));\n };\n\n const directlyUpdateUrl = (data, storage, history) => {\n if (!storage) {\n return null;\n }\n\n if (!data && !_.isEmpty(data.url)) {\n data.url = {};\n }\n\n const keys = Object.keys(data);\n keys.forEach(key => {\n setPageState(storage, data[key], key);\n });\n const newUrl = queryString.stringifyUrl({\n url: history.location.pathname,\n query: data.url,\n });\n history.push(newUrl);\n };\n\n const getPageState = () => {\n const data = JSON.parse(window.sessionStorage.getItem('pageState'));\n return data;\n };\n\n const getComponentState = storageName => {\n let currenObj = {};\n const Obj = JSON.parse(window.sessionStorage.getItem('pageState'));\n if (!Obj) {\n currenObj = {};\n }\n if (Obj && storageName && Obj[storageName]) {\n currenObj = Obj[storageName];\n }\n return currenObj;\n };\n\n const resetComponentState = storageName => {\n const Obj = JSON.parse(window.sessionStorage.getItem('pageState'));\n\n if (Obj && Obj[storageName]) {\n delete Obj[storageName];\n }\n window.sessionStorage.setItem('pageState', JSON.stringify(Obj));\n };\n\n // const generateUrl = (path, strings, urlData) => {\n // let newUrlString = '';\n // let splitedUrl = path.split(':');\n // let removeLastString = splitedUrl[0].slice(0, -1);\n // let urlParam = urlData;\n // urlParam.propState = true;\n // newUrlString = `${removeLastString}${strings}${JSON.stringify(urlParam)}`;\n // return newUrlString;\n // };\n\n return {\n //addOtherParamsToUrl: addOtherParamsToUrl,\n directlyUpdateUrl: directlyUpdateUrl,\n //updateFormData: updateFormData,\n setGlobalValue: setGlobalValue,\n //generateUrl: generateUrl,\n setPageState: setPageState,\n getPageState: getPageState,\n getComponentState: getComponentState,\n resetComponentState: resetComponentState,\n };\n})();\n\nexport default stateUtility;\n","var map = {\n\t\"./Check/CheckExample\": 310,\n\t\"./Check/CheckExample.js\": 310,\n\t\"./Currency/CurrencyExampleGBP\": 311,\n\t\"./Currency/CurrencyExampleGBP.js\": 311,\n\t\"./Currency/CurrencyExampleLKR\": 312,\n\t\"./Currency/CurrencyExampleLKR.js\": 312,\n\t\"./Date/DateExample\": 313,\n\t\"./Date/DateExample.js\": 313,\n\t\"./DatePicker/DatePicker\": 314,\n\t\"./DatePicker/DatePicker.js\": 314,\n\t\"./Dialog/DialogExample\": 315,\n\t\"./Dialog/DialogExample.js\": 315,\n\t\"./DropDown/DropDownExample\": 316,\n\t\"./DropDown/DropDownExample.js\": 316,\n\t\"./Errors/ErrorsExample\": 317,\n\t\"./Errors/ErrorsExample.js\": 317,\n\t\"./FormattedCurrency/FormattedCurrencyGBP\": 318,\n\t\"./FormattedCurrency/FormattedCurrencyGBP.js\": 318,\n\t\"./FormattedCurrency/FormattedCurrencyLKR\": 319,\n\t\"./FormattedCurrency/FormattedCurrencyLKR.js\": 319,\n\t\"./FormattedDate/FormattedDateExample\": 320,\n\t\"./FormattedDate/FormattedDateExample.js\": 320,\n\t\"./FormattedDate/FormattedDateExampleWithFormat\": 321,\n\t\"./FormattedDate/FormattedDateExampleWithFormat.js\": 321,\n\t\"./InputMask/CheckExample\": 322,\n\t\"./InputMask/CheckExample.js\": 322,\n\t\"./Numeric/NumericExample\": 323,\n\t\"./Numeric/NumericExample.js\": 323,\n\t\"./Numeric/NumericExample2\": 324,\n\t\"./Numeric/NumericExample2.js\": 324,\n\t\"./Pagination/PaginationExample\": 325,\n\t\"./Pagination/PaginationExample.js\": 325,\n\t\"./Radio/RadioExample\": 326,\n\t\"./Radio/RadioExample.js\": 326,\n\t\"./RadioButton/RadioButtonExample\": 327,\n\t\"./RadioButton/RadioButtonExample.js\": 327,\n\t\"./RoundBadge/RoundBadgeExample\": 328,\n\t\"./RoundBadge/RoundBadgeExample.js\": 328,\n\t\"./Text/TextExample\": 329,\n\t\"./Text/TextExample.js\": 329,\n\t\"./Text/Textsample\": 330,\n\t\"./Text/Textsample.js\": 330,\n\t\"./TextArea/TextAreaExample\": 331,\n\t\"./TextArea/TextAreaExample.js\": 331\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 704;","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\n\nimport { cmsDefinition } from '@myie/interact-cms'\nimport { sharedDefinition } from '@myie/interact-shared'\nimport { twoFactorDefinition } from '@myie/interact-two-factor'\nimport { accountsDefinition as accountsSharedDefinition } from '@myie/interact-accounts'\nimport { authenticationDefinition } from '@myie/interact-authentication'\nimport { payByCardDefinition } from '@myie/interact-pay-by-card'\nimport { messagingTwowayDefinition } from '@myie/interact-messaging-twoway'\nimport { messagingSystemDefinition } from '@myie/interact-messaging-system'\nimport { customccbAccountsDefinition } from '@myie/interact-ccb-accounts';\nimport { userManagementDefinition } from '@myie/interact-user-management'\n\nimport { accountsDefinition as accountsSavingsDefinition } from '@myie/interact-account-type-savings'\n\nconst accountsDefinition = (state = {}, action) => {\n let newState = state\n newState = accountsSharedDefinition(newState, action)\n newState = accountsSavingsDefinition(newState, action)\n newState = customccbAccountsDefinition(newState, action)\n return newState\n}\n\nconst interactReducers = { cmsDefinition, sharedDefinition, twoFactorDefinition, accountsDefinition, authenticationDefinition, payByCardDefinition, messagingTwowayDefinition, messagingSystemDefinition, userManagementDefinition }\n\nexport default interactReducers\n","import { combineReducers } from 'redux';\nimport interactReducers from './interactCCbReducers';\nimport { customccbAuthenticationDefinition } from '@myie/interact-ccb-authentication';\nimport { customccbOrganisationDefinition } from '@myie/interact-ccb-organisation';\nimport { customccbSavingsServicingDefinition } from '@myie/interact-ccb-savings-servicing';\n\nconst includeCustomccbReducers = {\n ...interactReducers,\n customccbAuthenticationDefinition,\n customccbOrganisationDefinition,\n customccbSavingsServicingDefinition,\n};\n\nconst appReducer = combineReducers({ ...includeCustomccbReducers });\n\nconst rootReducer = (state, action) => {\n if (action.type === 'USER_LOGOUT') {\n state = { cmsDefinition: state.cmsDefinition };\n }\n return appReducer(state, action);\n};\nexport default rootReducer;\n","import { Session } from '@myie/interact';\n\nconst NO_SESSION = 'no session';\nconst getSessionTicket = session => {\n try {\n if (session && session.ticket && session.ticket()) {\n return session.ticket();\n }\n } catch (error) {\n // assume no session\n }\n return NO_SESSION;\n};\n\nconst secureFetch = previousFetch => {\n return (url, options) => {\n const savedSession = getSessionTicket(Session);\n\n try {\n return Promise.resolve(\n previousFetch(url, options).then(response => {\n const currentSession = getSessionTicket(Session);\n if (savedSession === NO_SESSION || savedSession === currentSession) {\n return Promise.resolve(response);\n } else {\n return Promise.resolve({});\n }\n }),\n );\n } catch (err) {\n return Promise.reject(err);\n }\n };\n};\n\nexport default secureFetch;\n","import React, { Component } from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\n\nclass DefaultSidebar extends Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default DefaultSidebar;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Content, Markdown } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nimport { CONTACTS } from '@myie/interact-local-dom';\nclass NoDestinations extends React.Component {\n back = e => {\n const { finishTwoFactor } = this.props;\n e.preventDefault();\n finishTwoFactor();\n };\n\n render() {\n return (\n <>\n \n \n\n $[phone] so that we can help.`}\n />\n\n
    \n \n \n \n
    \n \n );\n }\n}\n\nNoDestinations.propTypes = {\n error: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n resetChallenge: PropTypes.any,\n resetDestinations: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(NoDestinations);\n","export const returnPath = origin => {\n switch (origin) {\n case 'editUserDetails':\n return '/personal-details/edit';\n case 'editSecurityDetails':\n return '/details/index';\n case 'transferIntoNewAccount':\n return '/transfer-to-another/create/moveMoney';\n case 'accountsList':\n return '/accounts/list';\n case 'EditnominatedAccountDetails':\n case 'nominatedAccountDetails':\n return '/nominated-account-for-withdrawals';\n default:\n return '';\n }\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Validate, Session } from '@myie/interact';\nimport { connect } from 'react-redux';\nimport { Button } from 'reactstrap';\nimport { Radio, RadioGroup, Content, Markdown } from '@myie/interact-dom';\nimport { stateUtility } from '../shared';\nimport { CONTACTS } from '@myie/interact-local-dom';\nimport { TwoFactor } from '@myie/interact';\nimport { mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Link, withRouter } from 'react-router-dom';\n//import _ from 'lodash';\nimport NoDestinations from './NoDestinations';\nimport { returnPath } from './ReturnPages';\nclass Destinations extends React.Component {\n constructor(props) {\n super(props);\n this.state = this.initiateState(props);\n }\n\n initiateState = props => {\n const { setDestination, page, setResend } = props;\n\n const storage = stateUtility.getPageState();\n const storageName =\n storage && storage.global && storage.global.storage\n ? storage.global.storage\n : '';\n\n let stateData = stateUtility.getComponentState(storageName);\n if (\n stateData &&\n stateData.url &&\n stateData.url.twoFa &&\n stateData.url.twoFa === 'active'\n ) {\n if (stateData.destination) {\n setDestination(stateData.destination);\n }\n if (page === 'resend') {\n setResend();\n }\n }\n return {\n storageName,\n form: {\n destination: {\n rules: {\n required: true,\n },\n },\n },\n disabled: false,\n };\n };\n\n componentDidMount() {\n const { getDestinations, destinations } = this.props;\n if (!destinations || !destinations.Destinations) {\n getDestinations({\n ChallengeKey: TwoFactor.getKey(),\n });\n }\n }\n\n componentWillUnmount() {\n const { resetDestinations } = this.props;\n resetDestinations();\n }\n\n continue = e => {\n e.preventDefault();\n this.setState({ disabled: true });\n const {\n sendChallenge,\n setDestination,\n page,\n setResend,\n history,\n } = this.props;\n\n let { form } = this.state;\n form = Validate.form(form);\n this.setState({\n ...this.state,\n form,\n });\n if (!form.approved) {\n this.setState({ disabled: false });\n return;\n }\n if (page === 'resend') {\n setResend();\n }\n const selectedDestination = form.destination.value;\n setDestination(selectedDestination);\n const request = {\n Destination: selectedDestination,\n ChallengeKey: TwoFactor.getKey(),\n };\n sendChallenge(request);\n this.setState({ disabled: false });\n const storage = stateUtility.getPageState();\n\n let stateData = {\n destination: selectedDestination,\n twoFapage: page,\n destinationReq: request,\n url: {\n twoFa: 'active',\n twoFaDestination: 'active',\n },\n };\n\n if (storage && storage.global && storage.global.storage) {\n let page = storage[storage.global.storage];\n if (page && page.url && page.url.pageStage) {\n stateData.url.pageStage = page.url.pageStage;\n }\n }\n\n stateUtility.directlyUpdateUrl(\n stateData,\n storage && storage.global && storage.global.storage\n ? storage.global.storage\n : '',\n history,\n );\n };\n\n cancel = () => {\n if (localStorage.getItem('firstLogin')) {\n window.location.href = CONTACTS.externalHomeURL;\n return null;\n }\n\n const { finishTwoFactor, history } = this.props;\n const { storageName } = this.state;\n const returnTo = returnPath(storageName);\n finishTwoFactor({});\n if (Session.isAuthenticated() && returnTo) {\n stateUtility.resetComponentState(storageName);\n history.push(returnTo);\n }\n };\n\n onChange = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n isDestinationValid = number => {\n return /^\\d+$/.test(number.substring(number.length - 3));\n };\n\n getErrorMessage = () => {\n const { form } = this.state;\n\n let message = null;\n if (form.destination.state && Validate.isInvalid(form.destination.state)) {\n message = (\n \n \n \n );\n }\n return message;\n };\n\n render() {\n const { destinations, error, page, mobNumberNotFound } = this.props;\n const { form } = this.state;\n const numbers = [];\n if (error) {\n return ;\n }\n if (!destinations) {\n return (\n

    \n \n

    \n );\n }\n if (\n mobNumberNotFound ||\n !destinations.Destinations ||\n destinations.Destinations.length === 0\n ) {\n return ;\n }\n destinations.Destinations.forEach((d, i) => {\n if (this.isDestinationValid(d)) {\n numbers.push(\n ,\n );\n }\n });\n\n return (\n \n
    \n \n {numbers}\n {this.getErrorMessage()}\n \n\n $[email] or on $[phone].`}\n />\n {page === 'activate' ? (\n \n
    \n \n \n \n \n \n \n {Session.isAuthenticated() ? (\n \n \n \n ) : (\n \n \n \n )}\n
    \n
    \n ) : (\n ''\n )}\n \n
    \n );\n }\n}\n\nDestinations.propTypes = {\n destinations: PropTypes.any,\n history: PropTypes.any,\n error: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n getDestinations: PropTypes.any,\n resetDestinations: PropTypes.any,\n sendChallenge: PropTypes.any,\n page: PropTypes.any,\n mobNumberNotFound: PropTypes.any,\n setMobNumberNotFound: PropTypes.any,\n setDestination: PropTypes.func,\n setResend: PropTypes.any,\n resetActivation: PropTypes.func,\n location: PropTypes.any,\n pathname: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { twoFactorDefinition, customUserManagementDefinition } = state;\n return {\n ...twoFactorDefinition,\n ...customUserManagementDefinition,\n };\n};\n\nexport default withRouter(\n connect(\n mapStateToProps,\n { ...mapDispatchToProps },\n )(Destinations),\n);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { BreadcrumbItem } from 'reactstrap';\nimport { Validate } from '@myie/interact';\nimport { connect } from 'react-redux';\nimport { Content, AppMeta, Markdown } from '@myie/interact-dom';\nimport { TwoFactor } from '@myie/interact';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { CONTACTS } from '@myie/interact-local-dom';\nimport NoDestinations from './NoDestinations';\nimport Destinations from './Destinations';\n\nclass SelectDestination extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n mobNumberNotFound: false,\n };\n }\n\n componentDidMount() {\n const { getDestinations } = this.props;\n getDestinations({\n ChallengeKey: TwoFactor.getKey(),\n });\n }\n\n componentWillUnmount() {\n const { resetDestinations } = this.props;\n resetDestinations();\n }\n\n setMobNumberNotFound = () => {\n this.setState({ ...this.state, mobNumberNotFound: true });\n };\n\n cancel = () => {\n const { finishTwoFactor } = this.props;\n finishTwoFactor({});\n };\n\n onChange = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n getErrorMessage = () => {\n const { form } = this.state;\n\n let message = null;\n if (form.destination.state && Validate.isInvalid(form.destination.state)) {\n message = (\n
    \n \n
    \n );\n }\n\n return message;\n };\n\n render() {\n const { destinations, error } = this.props;\n const { mobNumberNotFound } = this.state;\n\n if (error) {\n return ;\n }\n if (!destinations) {\n return (\n

    \n \n

    \n );\n }\n if (\n mobNumberNotFound ||\n !destinations.Destinations ||\n destinations.Destinations.length === 0\n ) {\n return ;\n }\n\n return (\n \n \n \n
    \n
      \n \n \n \n \n \n \n
    \n
    \n OTP that we will send to your mobile phone.`}\n />\n \n
    \n );\n }\n}\n\nSelectDestination.propTypes = {\n destinations: PropTypes.any,\n error: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n getDestinations: PropTypes.any,\n resetDestinations: PropTypes.any,\n sendChallenge: PropTypes.any,\n setDestination: PropTypes.func,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(SelectDestination);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Button, Alert } from 'reactstrap';\nimport { Content, AppMeta } from '@myie/interact-dom';\nimport { CONTACTS } from '@myie/interact-local-dom';\n\nclass Failed extends React.Component {\n retry = e => {\n const { retry } = this.props;\n e.preventDefault();\n retry();\n };\n\n render() {\n return (\n <>\n \n \n \n \n \n
    \n \n
    \n \n );\n }\n}\n\nFailed.propTypes = {\n finishTwoFactor: PropTypes.any,\n resetChallenge: PropTypes.any,\n resetDestinations: PropTypes.any,\n retry: PropTypes.func,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Failed);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Content, Markdown } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nclass ExpiredCode extends React.Component {\n cancel = e => {\n const { finishTwoFactor } = this.props;\n e.preventDefault();\n finishTwoFactor();\n };\n\n render() {\n return (\n <>\n \n OTP you entered has expired. Please start the session again by clicking the button below.`}\n />\n
    \n \n \n \n
    \n \n );\n }\n}\n\nExpiredCode.propTypes = {\n error: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n reSet: PropTypes.any,\n failed: PropTypes.any,\n challenge: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ExpiredCode);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Content, Markdown } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\n\nclass ExpiredChallenge extends React.Component {\n render() {\n return (\n <>\n \n OTP you entered has expired. Please start the session again by clicking the button below.`}\n />\n
    \n \n \n \n
    \n \n );\n }\n}\n\nExpiredChallenge.propTypes = {\n error: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n resetChallenge: PropTypes.any,\n resetDestinations: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ExpiredChallenge);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Alert } from 'reactstrap';\nimport { Content, Markdown } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\nimport { CONTACTS } from '@myie/interact-local-dom';\n\nclass ExceededAttempts extends React.Component {\n goBackHome = e => {\n const { finishTwoFactor } = this.props;\n e.preventDefault();\n finishTwoFactor();\n };\n\n render() {\n return (\n <>\n \n \n OTP too many times.\n \\nFor security reasons we have cancelled your request.`}\n />\n $[phone] so we can help you.`}\n />\n \n
    \n \n \n \n
    \n \n );\n }\n}\n\nExceededAttempts.propTypes = {\n finishTwoFactor: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ExceededAttempts);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Content } from '@myie/interact-dom';\nimport { Button } from 'reactstrap';\n\nclass Error extends React.Component {\n cancel = e => {\n const { finishTwoFactor } = this.props;\n e.preventDefault();\n finishTwoFactor();\n };\n\n render() {\n const { status } = this.props;\n return (\n
    \n \n
    \n \n
    \n
    \n );\n }\n}\n\nError.propTypes = {\n finishTwoFactor: PropTypes.any,\n status: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Error);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { TwoFactor } from '@myie/interact';\nimport { Validate, Session } from '@myie/interact';\nimport { Alert, Button } from 'reactstrap';\nimport { Text, Content, Markdown } from '@myie/interact-dom';\nimport { stateUtility, FormErrorList } from '../shared';\nimport { connect } from 'react-redux';\nimport { Link, withRouter } from 'react-router-dom';\nimport { mapDispatchToProps } from '@myie/interact-two-factor';\nimport { returnPath } from './ReturnPages';\nimport { RULES } from '../shared/constants/rules';\nimport { CONTACTS } from '@myie/interact-local-dom';\nclass CodeForm extends React.Component {\n constructor(props) {\n super(props);\n const storage = stateUtility.getPageState();\n const storageName =\n storage && storage.global && storage.global.storage\n ? storage.global.storage\n : '';\n this.state = {\n storageName,\n count: 0,\n form: {\n code: {\n rules: {\n title: 'Code',\n stop: true,\n required: {\n message: 'Please enter your One Time Passcode.',\n },\n format: {\n regex: RULES.activationCode2,\n message: 'Please enter a valid One Time Passcode.',\n },\n },\n },\n },\n };\n }\n\n getInitialState = () => {\n let state = {\n code: {\n rules: {\n title: 'Code',\n stop: true,\n required: {\n message: 'Please enter your One Time Passcode.',\n },\n format: {\n regex: RULES.activationCode2,\n message: 'Please enter a valid One Time Passcode.',\n },\n },\n },\n };\n\n return state;\n };\n\n onChange = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n removeCode = () => {\n let { form } = this.state;\n form.code.value = '';\n form.code.state.dirty = false;\n form.code.state.approval = {};\n this.setState({ ...this.state, form });\n };\n\n sendAnothercode = () => {\n const {\n sendChallenge,\n selectedDestination,\n setCodeResendStatus,\n } = this.props;\n const initialFormState = this.getInitialState();\n setCodeResendStatus(true);\n const request = {\n Destination: selectedDestination,\n ChallengeKey: TwoFactor.getKey(),\n };\n sendChallenge(request);\n this.setState({ ...this.state, form: initialFormState });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n let { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n cancel = () => {\n if (localStorage.getItem('firstLogin')) {\n window.location.href = CONTACTS.externalHomeURL;\n return null;\n }\n\n const { finishTwoFactor, history } = this.props;\n const { storageName } = this.state;\n const returnTo = returnPath(storageName);\n finishTwoFactor({});\n if (Session.isAuthenticated() && returnTo) {\n stateUtility.resetComponentState(storageName);\n history.push(returnTo);\n }\n };\n\n continue = e => {\n e.preventDefault();\n const { addCount, history } = this.props;\n let { form } = this.state;\n form = Validate.form(form);\n this.setState({\n ...this.state,\n form,\n });\n\n if (!form.approved) {\n return;\n }\n TwoFactor.setStatus('');\n addCount();\n TwoFactor.replay(form.code.value);\n const storage = stateUtility.getPageState();\n\n let stateData = {\n url: { twoFaStatus: 'finished' },\n };\n if (storage && storage.global && storage.global.storage) {\n let page = storage[storage.global.storage];\n if (page && page.url && page.url.pageStage) {\n stateData.url.pageStage = page.url.pageStage;\n }\n }\n\n stateUtility.directlyUpdateUrl(\n stateData,\n storage && storage.global && storage.global.storage\n ? storage.global.storage\n : '',\n history,\n );\n stateUtility.setPageState(\n storage && storage.global && storage.global.storage\n ? storage.global.storage\n : '',\n 'twoFaStatus',\n 'finished',\n );\n this.removeCode();\n };\n\n modfiyDestination = destination => {\n return destination.substring(destination.length - 3).toString();\n };\n\n render() {\n const { form } = this.state;\n const { failed, selectedDestination, count, isFetching } = this.props;\n return (\n
    \n {count === 1 && failed ? (\n \n \n \n ) : (\n ''\n )}\n {failed && count !== 1 ? (\n \n OTP. Please check and try again.\"\n />\n \n ) : (\n ''\n )}\n \n\n
    \n Please enter the OTP we have sent to the mobile phone number\n ending $[destination].`}\n />\n }\n id=\"otp-code\"\n autoFocus\n field=\"code\"\n validation={form.code}\n onChange={this.onChange}\n onBlur={this.onBlur}\n maxLength={'6'}\n />\n
    \n \n

    \n \n this.sendAnothercode(0)}\n className=\"btn btn-link\"\n type={'button'}\n disabled={isFetching}\n >\n \n \n

    \n
    \n
    \n \n {Session.isAuthenticated() ? (\n \n \n \n ) : (\n \n \n \n )}\n
    \n \n
    \n );\n }\n}\n\nCodeForm.propTypes = {\n failed: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n sendChallenge: PropTypes.any,\n count: PropTypes.any,\n selectedDestination: PropTypes.string,\n retry: PropTypes.func,\n setCodeResendStatus: PropTypes.func,\n setRequestCount: PropTypes.any,\n resetActivation: PropTypes.func,\n history: PropTypes.any,\n addCount: PropTypes.func,\n location: PropTypes.any,\n pathname: PropTypes.any,\n isFetching: PropTypes.bool,\n};\n\nconst mapStateToProps = state => {\n const { twoFactorDefinition, customUserManagementDefinition } = state;\n return {\n ...twoFactorDefinition,\n ...customUserManagementDefinition,\n };\n};\n\nexport default withRouter(\n connect(\n mapStateToProps,\n { ...mapDispatchToProps },\n )(CodeForm),\n);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { BreadcrumbItem } from 'reactstrap';\nimport { Content, AppMeta } from '@myie/interact-dom';\nimport { connect } from 'react-redux';\nimport { mapDispatchToProps } from '@myie/interact-two-factor';\nimport { CONTACTS } from '@myie/interact-local-dom';\nimport CodeForm from './CodeForm';\n\nclass Code extends React.Component {\n render() {\n const { setCodeResendStatus, addCount, count } = this.props;\n return (\n
    \n \n \n
    \n
      \n \n \n \n \n \n \n
    \n
    \n \n
    \n );\n }\n}\n\nCode.propTypes = {\n failed: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n sendChallenge: PropTypes.any,\n selectedDestination: PropTypes.string,\n retry: PropTypes.func,\n setCodeResendStatus: PropTypes.func,\n reSet: PropTypes.any,\n addCount: PropTypes.any,\n count: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { twoFactorDefinition, custombrandAuthenticationDefinition } = state;\n return {\n ...twoFactorDefinition,\n ...custombrandAuthenticationDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(Code);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Content, Markdown } from '@myie/interact-dom';\nimport { Link } from 'react-router-dom';\n\nclass ExceededRequests extends React.Component {\n retry = e => {\n const { resetDestinations, resetChallenge } = this.props;\n e.preventDefault();\n resetDestinations();\n resetChallenge();\n };\n\n cancel = e => {\n const { finishTwoFactor } = this.props;\n e.preventDefault();\n finishTwoFactor();\n };\n\n render() {\n return (\n <>\n \n OTP requests. For security reasons please wait for 24 hours before you try again.`}\n />\n
    \n \n \n \n
    \n \n );\n }\n}\n\nExceededRequests.propTypes = {\n finishTwoFactor: PropTypes.any,\n resetChallenge: PropTypes.any,\n resetDestinations: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(ExceededRequests);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Validate } from '@myie/interact';\nimport { connect } from 'react-redux';\nimport { Button } from 'reactstrap';\nimport { Radio, RadioGroup, Content } from '@myie/interact-dom';\nimport { TwoFactor } from '@myie/interact';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { mapDispatchToProps as mapDispatchToProps_auth } from '@myie/interact-authentication';\nimport { Link } from 'react-router-dom';\nimport NoDestinations from './NoDestinations';\n\nclass DestinationAuth extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: {\n destination: {\n rules: {\n required: true,\n },\n },\n },\n disabled: false,\n };\n }\n\n componentDidMount() {\n const { getDestinations, destinations } = this.props;\n if (!destinations || !destinations.Destinations) {\n getDestinations({\n ChallengeKey: TwoFactor.getKey(),\n });\n }\n }\n\n componentWillUnmount() {\n const { resetDestinations } = this.props;\n resetDestinations();\n }\n\n continue = e => {\n e.preventDefault();\n this.setState({ disabled: true });\n const { sendChallenge, setDestination, page, setResend } = this.props;\n if (page === 'resend') {\n setResend();\n }\n var { form } = this.state;\n form = Validate.form(form);\n this.setState({\n ...this.state,\n form,\n });\n if (!form.approved) {\n this.setState({ disabled: false });\n return;\n }\n const selectedDestination = form.destination.value;\n setDestination(selectedDestination);\n const request = {\n Destination: selectedDestination,\n ChallengeKey: TwoFactor.getKey(),\n };\n sendChallenge(request);\n this.setState({ disabled: false });\n };\n\n cancel = () => {\n const { finishTwoFactor } = this.props;\n finishTwoFactor({});\n };\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n getErrorMessage = () => {\n const { form } = this.state;\n\n let message = null;\n if (form.destination.state && Validate.isInvalid(form.destination.state)) {\n message = (\n \n );\n }\n\n return message;\n };\n\n render() {\n const { destinations, error, page, mobNumberNotFound } = this.props;\n const { form } = this.state;\n const numbers = [];\n if (error) {\n return ;\n }\n if (!destinations) {\n return ;\n }\n if (\n mobNumberNotFound ||\n !destinations.Destinations ||\n destinations.Destinations.length === 0\n ) {\n return ;\n }\n destinations.Destinations.forEach((d, i) => {\n if (d.includes('@')) {\n numbers.push(\n ,\n );\n } else {\n numbers.push(\n ,\n );\n }\n });\n\n return (\n <>\n
    \n \n {numbers}\n \n {this.getErrorMessage()}\n {page === 'activate' ? (\n <>\n
    \n \n \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n {page === 'resend' ? (\n <>\n
    \n \n \n \n \n
    \n \n ) : (\n ''\n )}\n \n \n );\n }\n}\n\nDestinationAuth.propTypes = {\n destinations: PropTypes.any,\n error: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n getDestinations: PropTypes.any,\n resetDestinations: PropTypes.any,\n sendChallenge: PropTypes.any,\n page: PropTypes.any,\n mobNumberNotFound: PropTypes.any,\n setMobNumberNotFound: PropTypes.any,\n setDestination: PropTypes.func,\n setResend: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapDispatchToProps_auth,\n },\n)(DestinationAuth);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Validate } from '@myie/interact';\nimport { connect } from 'react-redux';\nimport { Content, ContactNumber, AppMeta } from '@myie/interact-dom';\nimport { TwoFactor } from '@myie/interact';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport NoDestinations from './NoDestinations';\nimport DestinationAuth from './DestinationAuth';\nimport { CONTACTS } from '@myie/interact-local-dom';\nclass SelectDestinationAuth extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n mobNumberNotFound: false,\n };\n }\n\n componentDidMount() {\n const { getDestinations } = this.props;\n getDestinations({\n ChallengeKey: TwoFactor.getKey(),\n });\n }\n\n componentWillUnmount() {\n const { resetDestinations } = this.props;\n resetDestinations();\n }\n\n setMobNumberNotFound = () => {\n this.setState({ ...this.state, mobNumberNotFound: true });\n };\n\n cancel = () => {\n const { finishTwoFactor } = this.props;\n finishTwoFactor({});\n };\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n getErrorMessage = () => {\n const { form } = this.state;\n\n let message = null;\n if (form.destination.state && Validate.isInvalid(form.destination.state)) {\n message = (\n \n );\n }\n\n return message;\n };\n\n render() {\n const { destinations, error } = this.props;\n const { mobNumberNotFound } = this.state;\n\n if (error) {\n return ;\n }\n if (!destinations) {\n return ;\n }\n if (\n mobNumberNotFound ||\n !destinations.Destinations ||\n destinations.Destinations.length === 0\n ) {\n return ;\n }\n\n return (\n <>\n \n \n

    \n \n \n \n

    \n\n \n \n );\n }\n}\n\nSelectDestinationAuth.propTypes = {\n destinations: PropTypes.any,\n error: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n getDestinations: PropTypes.any,\n resetDestinations: PropTypes.any,\n sendChallenge: PropTypes.any,\n setDestination: PropTypes.func,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(SelectDestinationAuth);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { TwoFactor } from '@myie/interact';\nimport { Validate } from '@myie/interact';\nimport { Row, Col, Alert, Button } from 'reactstrap';\nimport { Text, Content } from '@myie/interact-dom';\nimport { connect } from 'react-redux';\nimport { Link } from 'react-router-dom';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\n\nclass CodeFormAuth extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n form: {\n code: {\n rules: {\n title: 'Code',\n stop: true,\n required: {\n message: 'Please enter your one time passcode',\n },\n format: {\n regex: /^.{6}$/,\n message: 'Please enter a valid one time passcode',\n },\n },\n },\n },\n };\n }\n\n onChange = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form);\n this.setState({ ...this.state, form });\n };\n\n removeCode = () => {\n var { form } = this.state;\n form.code.value = '';\n form.code.state.dirty = false;\n form.code.state.approval = {};\n this.setState({ ...this.state, form });\n };\n\n onBlur = e => {\n const { name, value } = e.target;\n var { form } = this.state;\n form = Validate.input(name, value, form, true);\n this.setState({ ...this.state, form });\n };\n\n continue = e => {\n e.preventDefault();\n var { form } = this.state;\n form = Validate.form(form);\n this.setState({\n ...this.state,\n form,\n });\n if (!form.approved) {\n return;\n }\n TwoFactor.setStatus('');\n TwoFactor.replay(form.code.value);\n this.removeCode();\n };\n\n render() {\n const { form } = this.state;\n const { failed } = this.props;\n return (\n
    \n {failed && (\n \n \n \n )}\n
    \n \n \n \n \n \n\n
    \n \n \n \n \n
    \n
    \n
    \n );\n }\n}\n\nCodeFormAuth.propTypes = {\n failed: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n sendChallenge: PropTypes.any,\n selectedDestination: PropTypes.string,\n retry: PropTypes.func,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(CodeFormAuth);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Content } from '@myie/interact-dom';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport CodeFormAuth from './CodeFormAuth';\n\nclass CodeAuth extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n return (\n
    \n \n \n
    \n );\n }\n}\n\nCodeAuth.propTypes = {\n failed: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n sendChallenge: PropTypes.any,\n selectedDestination: PropTypes.string,\n retry: PropTypes.func,\n reSet: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(CodeAuth);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Session } from '@myie/interact';\nimport { mapDispatchToProps } from '@myie/interact-two-factor';\nimport SelectDestination from './SelectDestination';\nimport Failed from './Failed';\nimport ExpiredCode from './ExpiredCode';\nimport ExpiredChallenge from './ExpiredChallenge';\nimport ExceededAttempts from './ExceededAttempts';\nimport Error from './Error';\nimport Code from './Code';\nimport ExceededRequests from './ExceededRequests';\nimport { mapDispatchToProps as mapDispatchToProps_auth } from '@myie/interact-authentication';\nimport SelectForgotttenDestination from './SelectDestinationAuth';\nimport CodeAuth from './CodeAuth';\n\nclass TwoFactorFlow extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n selectedDestination: null,\n newCodeRequested: false,\n localStatus: false,\n count: 0,\n isForgottenPasswordDetails: false,\n };\n this.reSetTwoFactor();\n }\n\n static getDerivedStateFromProps = nextProps => {\n const { status } = nextProps;\n\n if (status === 'FAILED') {\n return {\n localStatus: 'FAILED',\n };\n }\n\n return null;\n };\n\n componentDidMount() {\n const { forgottenPasswordDetails, resetForgottenPassword } = this.props;\n if (forgottenPasswordDetails) {\n this.setState({ ...this.state, isForgottenPasswordDetails: true }, () => {\n resetForgottenPassword();\n });\n }\n }\n\n addCount = () => {\n let { count } = this.state;\n const { status } = this.props;\n if (status !== 'FAILED') {\n return {\n count: 1,\n };\n } else {\n this.setState({\n ...this.state,\n count: count + 1,\n });\n }\n };\n\n setDestination = selectedDestination => {\n this.setState({ ...this.state, selectedDestination });\n };\n\n setCodeResendStatus = newCodeRequested => {\n this.setState({ ...this.state, newCodeRequested });\n };\n reSetTwoFactor = () => {\n const { resetDestinations, resetChallenge } = this.props;\n resetDestinations();\n resetChallenge();\n };\n\n reSet = () => {\n this.setState({ ...this.state, selectedDestination: null });\n this.reSetTwoFactor();\n };\n\n render() {\n const { status, challenge = {} } = this.props;\n const {\n selectedDestination,\n newCodeRequested,\n localStatus,\n time,\n count,\n addCounter,\n } = this.state;\n const isAuthenticated = Session.isAuthenticated();\n\n if (localStatus === 'FAILED' && status !== 'EXCEEDED') {\n if (this.state.isForgottenPasswordDetails) {\n return (\n \n );\n } else {\n return (\n \n );\n }\n }\n switch (status) {\n case 'EXPIRED_CODE':\n return (\n \n );\n case 'EXPIRED_CHALLENGE':\n return (\n \n );\n case 'EXCEEDED':\n return ;\n default:\n }\n if (challenge) {\n switch (challenge.ResponseStatus) {\n case 'Success':\n if (this.state.isForgottenPasswordDetails) {\n return (\n \n );\n } else {\n return (\n \n );\n }\n case 'Failed':\n return ;\n case 'ExceededMaximumActivationCodeRequests':\n return ;\n default:\n }\n }\n if (!newCodeRequested) {\n switch (status) {\n case 'ISSUED':\n if (this.state.isForgottenPasswordDetails) {\n return (\n \n );\n } else {\n return ;\n }\n default:\n return ;\n }\n } else {\n if (this.state.isForgottenPasswordDetails) {\n return (\n \n );\n } else {\n return (\n \n );\n }\n }\n }\n}\n\nTwoFactorFlow.propTypes = {\n challenge: PropTypes.object,\n destinations: PropTypes.any,\n resetChallenge: PropTypes.any,\n resetDestinations: PropTypes.any,\n status: PropTypes.any,\n forgottenPasswordDetails: PropTypes.any,\n resetForgottenPassword: PropTypes.any,\n};\n\nconst mapStateToProps = state => {\n const { twoFactorDefinition, authenticationDefinition } = state;\n return {\n ...twoFactorDefinition,\n ...authenticationDefinition,\n };\n};\n\nexport default connect(\n mapStateToProps,\n {\n ...mapDispatchToProps,\n ...mapDispatchToProps_auth,\n },\n)(TwoFactorFlow);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { Dialog, Content } from '@myie/interact-dom';\nimport TwoFactorFlow from './TwoFactorFlow';\n\nclass TwoFactorModal extends React.Component {\n render() {\n const { inProgress, children } = this.props;\n const title = (\n \n );\n return (\n \n {inProgress ? (\n \n \n \n ) : null}\n {children}\n \n );\n }\n}\n\nTwoFactorModal.propTypes = {\n children: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n inProgress: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(TwoFactorModal);\n","import React from 'react';\nimport { HelpContactSidebar } from '@myie/interact-dom';\nimport { CONTACTS } from '@myie/interact-local-dom';\n\nclass TwoFactorSideBar extends React.Component {\n render() {\n return (\n \n );\n }\n}\n\nexport default TwoFactorSideBar;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport TwoFactorFlow from './TwoFactorFlow';\nimport { connect } from 'react-redux';\nimport { mapStateToProps, mapDispatchToProps } from '@myie/interact-two-factor';\nimport { withRouter } from 'react-router-dom';\nimport TwoFactorSidebar from './TwoFactorSidebar';\n\nclass TwoFactorPages extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n location: '',\n };\n }\n componentDidMount() {\n this.updateLocation();\n }\n\n componentDidUpdate() {\n this.updateLocation();\n }\n\n updateLocation = () => {\n this.unlisten = this.props.history.listen(location => {\n this.event = { eventupdate: location, test: 'test' };\n });\n const location = this.props.location;\n if (location !== this.state.location) {\n this.setState({ location });\n }\n };\n\n render() {\n const { inProgress, children } = this.props;\n //TwoFactorFlow is displayed overlapping the main content. So it's categorized as a dialog rather than the page content in terms of accessibility.\n return (\n \n {inProgress ? (\n
    \n
    \n \n
    \n \n
    \n ) : null}\n \n {children}\n \n
    \n );\n }\n}\n\nTwoFactorPages.propTypes = {\n children: PropTypes.any,\n finishTwoFactor: PropTypes.any,\n inProgress: PropTypes.any,\n history: PropTypes.any,\n location: PropTypes.any,\n};\n\nexport default connect(\n mapStateToProps,\n mapDispatchToProps,\n)(withRouter(TwoFactorPages));\n","import TwoFactorSidebar from './TwoFactorSidebar';\n\nconst TwoFactorSidebars = [{ url: '2fa', Sidebar: TwoFactorSidebar }];\n\nexport default TwoFactorSidebars;\n","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\n\nimport { AccountsSidebars } from '@myie/interact-accounts-dom'\nimport { AuthenticationSidebars } from '@myie/interact-authentication-dom'\nimport { TwoFactorSidebars } from '@myie/interact-two-factor-dom'\nimport { MessagingTwowaySidebars } from '@myie/interact-messaging-twoway-dom'\n\n\nconst RegisteredSidebars = []\n\nAccountsSidebars.forEach(sb => {\n\tRegisteredSidebars.push(sb)\n}); \n\nAuthenticationSidebars.forEach(sb => {\n\tRegisteredSidebars.push(sb)\n}); \n\nTwoFactorSidebars.forEach(sb => {\n\tRegisteredSidebars.push(sb)\n}); \n\nMessagingTwowaySidebars.forEach(sb => {\n\tRegisteredSidebars.push(sb)\n}); \n\n\n\nexport default RegisteredSidebars\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport DefaultSidebar from './DefaultSidebar';\nimport RegisteredSidebars from './Registered';\nimport { TwoFactorSidebars } from '@myie/interact-two-factor-dom';\n\nTwoFactorSidebars.forEach(sb => {\n RegisteredSidebars.push(sb);\n});\n\nconst HasSidebar = props => {\n const pathname = props.location.pathname;\n let Sidebar = DefaultSidebar;\n\n RegisteredSidebars.forEach(sb => {\n if (pathname && pathname.startsWith(sb.url)) {\n Sidebar = sb.Sidebar;\n }\n });\n\n if (Sidebar) {\n return true;\n } else {\n return false;\n }\n};\n\nclass Sidebar extends Component {\n render() {\n const pathname = this.props.location.pathname;\n let Sidebar = DefaultSidebar;\n\n RegisteredSidebars.forEach(sb => {\n if (pathname && pathname.startsWith(sb.url)) {\n Sidebar = sb.Sidebar;\n }\n });\n\n if (Sidebar != null) {\n return ;\n } else {\n return null;\n }\n }\n}\n\nSidebar.propTypes = {\n location: PropTypes.any,\n};\n\nexport default Sidebar;\nexport { HasSidebar };\n","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\n\nimport { AccountsMenuItems } from '@myie/interact-accounts-dom'\nimport { ServicesMenuItems } from '@myie/interact-services-dom'\nimport { MessagingTwowayMenuItems } from '@myie/interact-messaging-twoway-dom'\nimport { SavingsServicingMenuItems } from '@myie/interact-savings-servicing-dom'\n\n\nconst RegisteredMenus = []\n\nAccountsMenuItems.forEach(sb => {\n\tRegisteredMenus.push(sb)\n}); \n\nServicesMenuItems.forEach(sb => {\n\tRegisteredMenus.push(sb)\n}); \n\nMessagingTwowayMenuItems.forEach(sb => {\n\tRegisteredMenus.push(sb)\n}); \n\nSavingsServicingMenuItems.forEach(sb => {\n\tRegisteredMenus.push(sb)\n}); \n\n\n\nexport default RegisteredMenus\n","import React, { Component } from 'react';\nimport {\n Navbar,\n Container,\n Collapse,\n Nav,\n NavItem,\n NavbarToggler,\n} from 'reactstrap';\nimport { Session } from '@myie/interact';\nimport RegisteredMenus from './Registered';\n\nclass Menu extends Component {\n constructor(props) {\n super(props);\n\n this.toggle = this.toggle.bind(this);\n this.state = {\n isOpen: false,\n };\n }\n\n isActive(route, exact) {\n if (exact) {\n return window.location.pathname === route;\n }\n var re = new RegExp(`^${route}[/]{0,1}`);\n return window.location.pathname.match(re) !== null;\n }\n\n toggle() {\n this.setState({\n ...this.state,\n isOpen: !this.state.isOpen,\n });\n }\n\n render() {\n // don't show menu if not logged in\n if (!Session.isAuthenticated()) {\n return <>;\n } else {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n );\n }\n }\n}\n\nexport default Menu;\n","import React from 'react';\nimport { Redirect } from 'react-router-dom';\nimport { Session } from '@myie/interact';\n\nconst Home = () => {\n return (\n <>\n {Session.isAuthenticated() ? (\n \n ) : (\n \n )}\n \n );\n};\n\nexport default Home;\n","import React from 'react';\nimport { Settings } from '@myie/interact';\nimport PropTypes from 'prop-types';\n\nclass SignIn extends React.Component {\n constructor(props) {\n super(props);\n const { state } = this.props.location;\n this.state = { referer: state && state.referer ? state.referer : null };\n }\n\n signinRedirect = () => {\n localStorage.setItem('redirectUri', this.state.referer);\n Settings.userManager.signinRedirect({});\n };\n\n render() {\n this.signinRedirect();\n return Loading...;\n }\n}\n\nSignIn.propTypes = {\n location: PropTypes.any,\n};\n\nexport default SignIn;\n","import * as React from 'react';\nimport { Settings } from '@myie/interact';\n\nclass SignOut extends React.Component {\n logout = () => {\n Settings.userManager.signoutRedirect({\n id_token_hint: localStorage.getItem('id_token'),\n });\n Settings.userManager.signoutRedirectCallback().then(() => {\n localStorage.clear();\n window.sessionStorage.clear();\n window.location.replace('/');\n });\n window.localStorage.clear();\n window.sessionStorage.clear();\n Settings.userManager.clearStaleState();\n };\n render() {\n this.logout();\n return loading;\n }\n}\n\nexport default SignOut;\n","import React from 'react';\nimport { Settings } from '@myie/interact';\n\nclass Callback extends React.Component {\n signinRedirectCallback = () => {\n Settings.userManager\n .signinRedirectCallback()\n .then(user => {\n this.user = user;\n //Session.set(user.id_token, user.profile);\n window.sessionStorage.setItem('mgr_id_token', user.id_token);\n window.sessionStorage.setItem('mgr_access_token', user.access_token);\n window.sessionStorage.setItem('mgr_refresh_token', user.refresh_token);\n\n this.navigateToScreen();\n })\n .catch(err => {\n //console.log(err);\n if (err.message === 'No state in response') {\n Settings.userManager.signinRedirect({}); //TODO: If the sign in process start from Oauth provider web site then getting state error then need to be call authorise again because of client secret\n }\n });\n };\n\n navigateToScreen = () => {\n const redirectUri = localStorage.getItem('redirectUri')\n ? localStorage.getItem('redirectUri')\n : '/';\n\n window.location.replace(redirectUri);\n };\n\n render() {\n this.signinRedirectCallback();\n return Loading...;\n }\n}\n\nexport default Callback;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { Session, Connection } from '@myie/interact';\nimport { Route, Redirect, withRouter } from 'react-router-dom';\nimport { sessionTimer } from '@myie/interact-dom';\nimport { mapDispatchToProps } from '@myie/interact-shared';\nimport { mapDispatchToProps as mapDispatchToProps2FA } from '@myie/interact-two-factor';\n\nclass PrivateRoute extends React.Component {\n constructor(props) {\n super(props);\n const { location } = props;\n this.state = { pathname: location.pathname };\n }\n\n componentWillUnmount() {}\n\n componentDidMount() {\n if (Session.isAuthenticated()) {\n sessionTimer(this.props, true);\n }\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n if (\n Session.isAuthenticated() &&\n prevState.pathname !== nextProps.location.pathname &&\n nextProps.computedMatch.url === nextProps.location.pathname\n ) {\n const lastRequestTime = new Date().getTime();\n window.sessionStorage.setItem('lastRequestTime', lastRequestTime);\n fetch(Connection.baseUrl('utility') + `v1.0/ping`, {\n method: 'get',\n headers: Connection.headers(),\n });\n return { ...prevState, pathname: nextProps.location.pathname };\n }\n return null;\n }\n\n render() {\n const { component: Component, render, ...rest } = this.props;\n if (Session.isAuthenticated()) {\n if (render) {\n return ;\n } else {\n return } />;\n }\n }\n\n return (\n (\n \n )}\n />\n );\n }\n}\n\nPrivateRoute.propTypes = {\n Component: PropTypes.any,\n component: PropTypes.any,\n computedMatch: PropTypes.any,\n location: PropTypes.any,\n render: PropTypes.any,\n};\n\nexport default withRouter(\n connect(\n null,\n { ...mapDispatchToProps2FA, ...mapDispatchToProps },\n )(PrivateRoute),\n);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { Settings } from '@myie/interact';\n\nclass SignOutCallback extends React.Component {\n signoutRedirectCallback = () => {\n Settings.userManager.signoutRedirectCallback();\n };\n render() {\n this.signoutRedirectCallback();\n return loading;\n }\n}\n\nSignOutCallback.propTypes = {\n userManager: PropTypes.any,\n};\n\nexport default SignOutCallback;\n","import React from 'react';\nimport { Route } from 'react-router-dom';\n\nimport {\n SignOut,\n Callback,\n SignOutCallback,\n SignIn,\n} from '@myie/interact-manager-dom';\n\nconst Routes = [\n ,\n ,\n ,\n ,\n];\n\nexport default Routes;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Session, Settings } from '@myie/interact';\nimport { Switch, Route, withRouter } from 'react-router-dom';\nimport {\n Switch as MessageSwitch,\n Content,\n Markdown,\n NoMatch,\n NetworkError,\n GoogleTagManager,\n TimeOutModal,\n AvailableRoutes,\n AuthButton,\n Interceptor,\n BankHolidays,\n} from '@myie/interact-dom';\nimport { Sidebar, HasSidebar } from '@myie/interact-widget-sidebar-dom';\nimport { Media, Container, Row, Col } from 'reactstrap';\nimport { Menu } from '@myie/interact-widget-menu-dom';\nimport Home from './Home';\nimport moment from 'moment';\nimport { AppMeta, ScrollToTop } from '@myie/interact-dom';\nimport { TwoFactorPages } from '@myie/interact-two-factor-dom';\nimport { HelmetProvider } from 'react-helmet-async';\nimport { Routes as cmuRoutes } from '@myie/interact-manager-dom';\n\nclass Connect extends Component {\n constructor(props) {\n super(props);\n\n this.state = {\n location: '',\n };\n }\n\n componentDidMount() {\n this.updateLocation();\n }\n\n componentDidUpdate() {\n this.updateLocation();\n }\n\n updateLocation = () => {\n this.unlisten = this.props.history.listen(location => {\n this.event = { eventupdate: location, test: 'test' };\n });\n const location = this.props.location;\n if (location !== this.state.location) {\n this.setState({ location });\n }\n };\n\n render() {\n return (\n \n \n\n \n
    \n
    \n \n
    \n \n \n
    \n
    \n \n {Session.isAuthenticated() ? (\n \n \n \n \n \n ) : null}\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 {AvailableRoutes}\n {cmuRoutes}\n \n \n \n \n \n \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n
    \n
    \n {\n return moment().format('YYYY');\n },\n },\n }}\n id=\"connect-version\"\n markdown={`Cambridge & Counties Bank Ltd is authorised by the Prudential Regulation Authority and regulated by the Financial Conduct Authority and the Prudential Regulation Authority under firm registration number 579415. Our authorisation can be checked at the Financial Services Register at [www.fca.org.uk](https://www.fca.org.uk).\n \\n Cambridge & Counties Bank Ltd Registered Office: Charnwood Court, 5b New Walk, Leicester England, LE1 6TE. Registered in England and Wales No. 07972522.\n \\n VAT Registration Number GB 208354420.\n \\n © Cambridge & Counties Bank Limited\n `}\n />\n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n );\n }\n}\n\nConnect.propTypes = {\n history: PropTypes.any,\n location: PropTypes.any,\n};\n\nexport default withRouter(Connect);\n","import React, { Component } from 'react';\nimport { contentContainer } from '@myie/interact-dom';\nimport { Connect } from '@myie/interact-connect-dom';\nimport { withRouter } from 'react-router-dom';\n\nclass App extends Component {\n render() {\n return (\n
    \n \n
    \n );\n }\n}\n\nexport default withRouter(contentContainer(App));\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' }\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister();\n });\n }\n}\n","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\n\nimport Config from './config.env.js';\n\nexport default Config;","/* eslint-disable no-mixed-spaces-and-tabs, prettier/prettier */\nimport {\n Session,\n Connection,\n Settings,\n TwoFactor,\n Utility,\n} from '@myie/interact';\nimport uuid from 'uuid';\nimport { createUserManager } from 'redux-oidc';\n\n// set global local to current browser language\n\nconst Config = async function() {\n // update with google tag manager id\n Settings.gtmId = 'GTM-53BH7TB';\n Settings.ticketExpiry = 20;\n Settings.sessionExpiry = 20;\n // using a common root as default\n let root = 'https://ccb-qa-app.ccbank-dev.co.uk';\n let site = `${window.location.protocol}//${window.location.hostname}${\n window.location.hostname.toLowerCase() !== 'localhost'\n ? ''\n : ':' + window.location.port\n }`;\n\n const client_id = '';\n const client_secret = '';\n\n const REACT_APP_AUTH_URL = 'https://auth.ccbank-dev.co.uk';\n const IDENTITY_ISSUER_URL = 'https://cognito-idp.eu-west-2.amazonaws.com/eu-west-2_P7V3VUMUD';\n\n let cms = \"https://qa-content.ccbank-dev.co.uk\";\n let auth_url = REACT_APP_AUTH_URL;\n let identity_url = IDENTITY_ISSUER_URL;\n\n // Check which environment\n let envname = window.location.hostname;\n let env = '.prod';\n \n if (envname.includes('.qa.cam')) {\n env = '.qanew';\n } else if (envname.includes('.uat.cam')) {\n env = '.uatnew';\n }\n\n if (envname.includes('editor')) {\n env = '-cmu' + env;\n }\n \n let response = await fetch('/DeploymentConfig/config' + env + '.json'); // fetch file from website location, fixed random name\n \n if (response) {\n try {\n const configuration = await response.json(); // extract json\n cms = configuration.cms || cms;\n root = configuration.root || root;\n auth_url = configuration.auth_url || auth_url;\n identity_url = configuration.identity_url || identity_url;\n Settings.gtmId = configuration.gtmId || Settings.gtmId;\n Settings.ticketExpiry =\n configuration.ticketExpiry || Settings.ticketExpiry;\n Settings.sessionExpiry =\n configuration.sessionExpiry || Settings.sessionExpiry;\n Settings.client_id =\n configuration.client_id || client_id;\n Settings.client_secret =\n configuration.client_secret || client_secret;\n } catch (e) {\n //Ignore error but fetch another filename to indicate error to the observant user!\n response = await fetch('/static/no-config-error.txt');\n }\n }\n\n const IDENTITY_CONFIG = {\n authority: auth_url,\n client_id: Settings.client_id,\n redirect_uri: `${site}/signin-oidc`,\n silent_redirect_uri: `${site}/silentrenew`,\n post_logout_redirect_uri: `${site}/logout/callback`,\n audience: '',\n response_type: 'code', //\"id_token token\",\n automaticSilentRenew: false,\n loadUserInfo: false,\n scope: 'openid profile email aws.cognito.signin.user.admin',\n acr_values: 'Level3',\n ui_locales: 'nb',\n filterProtocolClaims: false,\n revokeAccessTokenOnSignout: false,\n userInfoJwtIssuer: 'RS256',\n client_secret: Settings.client_secret,\n metadata: {\n issuer: identity_url,\n jwks_uri: identity_url + '/.well-known/jwks.json',\n authorization_endpoint: auth_url + '/oauth2/authorize',\n token_endpoint: auth_url + '/oauth2/token',\n userinfo_endpoint: auth_url + '/oauth2/userInfo',\n end_session_endpoint:\n auth_url +\n `/logout?client_id=${Settings.client_id}&redirect_uri=${site}/signin-oidc&response_type=code`,\n check_session_iframe: auth_url + '/connect/checksession',\n revocation_endpoint: auth_url + '/connect/revocation',\n introspection_endpoint: auth_url + '/connect/introspect',\n },\n };\n \n Settings.userManager = createUserManager(\n IDENTITY_CONFIG,\n () => true,\n false,\n '/callback',\n );\n\n // using common set of services\n\n Settings.cmsAvailable = true;\n\n Connection.config(\n {\n cmscontent: `${cms}/content/`,\n utility: `${root}/utility/`,\n accounts: `${root}/accounts/`,\n movemoney: `${root}/movemoney/`,\n usermanagement: `${root}/usermanagement/`,\n webauthentication: `${root}/webauthentication/`,\n cardservicing: `${root}/cardservicing/`,\n paybycard: `${root}/paybycard/`,\n loanservicing: `${root}/loanservicing/`,\n '2fa': `${root}/2fa/`,\n alerts: `${root}/alerts/`,\n messaging: `${root}/messaging/`,\n customccb: `${root}/customccb/`,\n },\n {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n 'x-brand-code': 'ccb',\n 'x-channel-type': 'WEB',\n 'x-device-type': 'WEB',\n 'x-client-version': '5.2',\n 'x-device-language': 'en-gb',\n 'x-request-id': function() {\n return uuid.v4();\n },\n 'x-session-ticket': function() {\n return Session.ticket();\n },\n 'x-challenge-key': function() {\n var key = TwoFactor.getKey();\n var value = TwoFactor.getValue();\n if (key && value) {\n return key;\n }\n return null;\n },\n 'x-challenge-code': function() {\n var key = TwoFactor.getKey();\n var value = TwoFactor.getValue();\n if (key && value) {\n return value;\n }\n return null;\n },\n },\n );\n\n Connection.cmuHeaders = function() {\n return {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n authorization: window.sessionStorage.getItem('mgr_access_token')\n ? window.sessionStorage.getItem('mgr_access_token')\n : null,\n };\n };\n\n Session.config(\n function(ticket, customer) {\n if (!ticket || !customer) {\n window.sessionStorage.removeItem('ticket');\n } else {\n window.sessionStorage.setItem(\n 'ticket',\n Utility.hexEncode(JSON.stringify({ ticket, customer })),\n );\n }\n },\n function() {\n const ticket = window.sessionStorage.getItem('ticket');\n if (ticket) {\n return JSON.parse(Utility.hexDecode(ticket)).customer;\n }\n return null;\n },\n function() {\n const ticket = window.sessionStorage.getItem('ticket');\n if (ticket) {\n return JSON.parse(Utility.hexDecode(ticket)).ticket;\n }\n return null;\n },\n );\n};\n\nexport default Config;","import 'react-app-polyfill/ie11';\nimport 'react-app-polyfill/stable';\nimport React from 'react';\nimport { render } from 'react-dom';\nimport { BrowserRouter as Router } from 'react-router-dom';\nimport { createStore, applyMiddleware, compose } from 'redux';\nimport { Provider } from 'react-redux';\nimport thunk from 'redux-thunk';\nimport { createLogger } from 'redux-logger';\nimport reducer from './reducers';\nimport { Settings } from '@myie/interact';\nimport secureFetch from './lib/secure-fetch/secureFetch';\nimport App from './App';\n//import registerServiceWorker from './registerServiceWorker';\nimport * as serviceWorker from './serviceWorker';\nimport './styling.css';\nimport { loadUser, OidcProvider } from 'redux-oidc';\n\n// apply configuration\nimport Config from './config.js';\n\n// Wrap global fetch function with a check to ensure the original\n// session is the same when the response returns.\n// eslint-disable-next-line no-global-assign\nfetch = secureFetch(fetch);\n\nconst middleware = [thunk];\nif (process.env.NODE_ENV === 'notset') {\n // Set to development to enable logging in dev\n middleware.push(createLogger());\n}\n\nconst composeEnhancers =\n typeof window === 'object' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__\n ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({\n // Specify extension’s options like name, actionsBlacklist, actionsCreators, serialize...\n })\n : compose;\n\nconst enhancer = composeEnhancers(\n applyMiddleware(...middleware),\n // other store enhancers if any\n);\n\n(async () => {\n await Config();\n const store = createStore(reducer, enhancer);\n loadUser(store, Settings.userManager);\n render(\n \n \n \n \n \n \n ,\n document.getElementById('root'),\n );\n})();\n\n//registerServiceWorker();\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: http://bit.ly/CRA-PWA\nserviceWorker.unregister();\n","import {\n ORGANISATION_REQUEST,\n ORGANISATION_PROGRESS,\n ORGANISATION_SUCCESS,\n ORGANISATION_FAILURE,\n} from '../actions/organisationTypes';\nimport { uniqBy } from 'lodash';\n\nconst ccbOrganisationDefinition = (state = {}, action) => {\n switch (action.type) {\n case ORGANISATION_SUCCESS:\n return {\n ...state,\n organisation: action.organisation,\n isFetching: action.isFetching,\n };\n case ORGANISATION_PROGRESS: {\n let allDetails = uniqBy(\n [...state.organisation.details, { ...action.detail }],\n 'CustomerId',\n );\n return {\n ...state,\n organisation: {\n ...state.organisation,\n details: allDetails,\n },\n isFetching: action.isFetching,\n };\n }\n case ORGANISATION_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case ORGANISATION_REQUEST:\n default:\n return state;\n }\n};\n\nexport default ccbOrganisationDefinition;\n","// start fetch process - get list of \"customers\" for person\nexport const ORGANISATION_REQUEST = 'ORGANISATION_REQUEST';\n\n// get details of a \"customer\"\nexport const ORGANISATION_PROGRESS = 'ORGANISATION_PROGRESS';\n\n// show details of each customer on list\nexport const ORGANISATION_SUCCESS = 'ORGANISATION_SUCCESS';\n\n// we failed to fetch list or we failed to fetch details - show error\nexport const ORGANISATION_FAILURE = 'ORGANISATION_FAILURE';\n\n// clear the organisation details - how is this different from ORGANISATION_REQUEST?\nexport const RESET_ORGANISATION = 'RESET_ORGANISATION';\n\n//Reset organisation details\nexport const RESET_ORGANISATION_DETAILS = 'RESET_ORGANISATION_DETAILS';\n\n//Get Organisation details\nexport const ORGANISATION_DETAILS_REQUEST = 'ORGANISATION_DETAILS_REQUEST';\n","import ccbOrganisationDefinition from './reducers/organisationDefinition';\n\nconst customccbOrganisationDefinition = (state = {}, action) => {\n var newState = state;\n newState = ccbOrganisationDefinition(newState, action);\n\n return newState;\n};\n\nexport default customccbOrganisationDefinition;\n","const mapStateToProps = state => {\n const { customccbOrganisationDefinition = {} } = state;\n const {\n organisation,\n error = null,\n isFetching,\n } = customccbOrganisationDefinition;\n // const newOrg = {\n // ...organisation,\n // login: state.authenticationDefinition.login,\n // };\n return {\n organisation,\n error,\n isFetching,\n };\n};\n\nexport default mapStateToProps;\n","import { Connection } from '@myie/interact';\n\nimport {\n ORGANISATION_REQUEST,\n ORGANISATION_DETAILS_REQUEST,\n ORGANISATION_PROGRESS,\n ORGANISATION_SUCCESS,\n ORGANISATION_FAILURE,\n} from './organisationTypes';\n\nexport const organisationRequest = () => ({\n type: ORGANISATION_REQUEST,\n organisation: { state: 'REQUEST', codes: [], details: [], detail: {} },\n isFetching: true,\n error: null,\n});\n\nexport const organisationDetailsRequest = () => ({\n type: ORGANISATION_DETAILS_REQUEST,\n organisation: { state: 'REQUEST', details: [], codes: [], detail: {} },\n isFetching: true,\n error: null,\n});\n\nexport const organisationFailed = error => ({\n type: ORGANISATION_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const organisationDetailsReceive = json => ({\n type: ORGANISATION_PROGRESS,\n detail: json,\n isFetching: false,\n error: null,\n});\n\nexport const organisationReceive = json => ({\n type: ORGANISATION_SUCCESS,\n organisation: {\n codes: [...json.CustomerCollection.Customers],\n details: [],\n },\n isFetching: false,\n error: null,\n});\n\nexport const organisationfetch = request => dispatch => {\n //console.log('In organisationfetch ' + JSON.stringify(request));\n dispatch(organisationRequest());\n\n return fetch(Connection.baseUrl('customccb') + `v1.0/getcustomersforperson`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(organisationReceive(json)))\n .catch(error => dispatch(organisationFailed(error)));\n};\n\nexport const organisationDetailsFetch = request => dispatch => {\n //console.log('In organisationDetailsFetch ' + JSON.stringify(request));\n dispatch(organisationDetailsRequest());\n return fetch(Connection.baseUrl('customccb') + `v1.0/getcustomer`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json =>\n dispatch(\n organisationDetailsReceive({\n ...json.Customer,\n CustomerId: request.CustomerId,\n }),\n ),\n )\n .catch(error => dispatch(organisationFailed(error)));\n};\n","import * as organisationActions from './actions/organisationActions';\n\nconst mapDispatchToProps = {\n ...organisationActions,\n};\n\nexport default mapDispatchToProps;\n","import customccbOrganisationDefinition from './reducer';\nimport mapStateToProps from './mapStateToProps';\nimport mapDispatchToProps from './mapDispatchToProps';\n\nexport { customccbOrganisationDefinition, mapStateToProps, mapDispatchToProps };\n","import {\n INTERESTHISTORY_REQUEST,\n INTERESTHISTORY_SUCCESS,\n INTERESTHISTORY_FAILURE,\n RESET_INTERESTHISTORY,\n} from '../actions/interestRateTypes';\nimport update from 'immutability-helper';\n\nconst ccbInterestRateDefinition = (state = {}, action) => {\n let oldAccounts;\n let index;\n let account;\n switch (action.type) {\n case RESET_INTERESTHISTORY:\n return {\n ...state,\n interestHistory: {},\n };\n case INTERESTHISTORY_SUCCESS: {\n oldAccounts = state.accounts;\n index = oldAccounts.Accounts.findIndex(\n x => x.AccountKey.Key === action.accountkey.Key,\n );\n account = oldAccounts.Accounts[index];\n const interestHistory = action.interestHistory;\n\n const accountWithDocuments = update(account, {\n interestHistory: { $set: interestHistory },\n });\n const updatedAccounts = update(oldAccounts, {\n Accounts: { [index]: { $set: accountWithDocuments } },\n });\n return {\n ...state,\n accounts: updatedAccounts,\n isFetching: action.isFetching,\n };\n }\n case INTERESTHISTORY_FAILURE:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case INTERESTHISTORY_REQUEST:\n default:\n return state;\n }\n};\n\nexport default ccbInterestRateDefinition;\n","export const INTERESTHISTORY_REQUEST = 'INTERESTHISTORY_REQUEST';\nexport const INTERESTHISTORY_SUCCESS = 'INTERESTHISTORY_SUCCESS';\nexport const INTERESTHISTORY_FAILURE = 'INTERESTHISTORY_FAILURE';\nexport const RESET_INTERESTHISTORY = 'RESET_INTERESTHISTORY';\n","import {\n FETCH_DOCUMENTS_SUCCESS,\n FETCH_DOCUMENTS_FAILURE,\n FETCH_DOCUMENTS_REQUEST,\n RESET_DOCUMENT_DOWNLOAD,\n FETCH_DOCUMENT_DOWNLOAD_SUCCESS,\n FETCH_DOCUMENT_DOWNLOAD_FAILURE,\n FETCH_DOCUMENT_DOWNLOAD_REQUEST,\n} from '../actions/documentTypes';\nimport update from 'immutability-helper';\n\nconst ccbDocumentsDefinition = (state = {}, action) => {\n let oldAccounts;\n let index;\n let account;\n switch (action.type) {\n case RESET_DOCUMENT_DOWNLOAD:\n return {\n ...state,\n downloadedDocument: null,\n };\n case FETCH_DOCUMENTS_SUCCESS: {\n oldAccounts = state.accounts;\n index = oldAccounts.Accounts.findIndex(\n x => x.AccountKey.Key === action.accountkey.Key,\n );\n account = oldAccounts.Accounts[index];\n const documents = action.documents;\n\n const accountWithDocuments = update(account, {\n documents: { $set: documents },\n });\n const updatedAccounts = update(oldAccounts, {\n Accounts: { [index]: { $set: accountWithDocuments } },\n });\n return {\n ...state,\n accounts: updatedAccounts,\n isFetching: action.isFetching,\n };\n }\n\n case FETCH_DOCUMENTS_FAILURE:\n case FETCH_DOCUMENTS_REQUEST:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n case FETCH_DOCUMENT_DOWNLOAD_SUCCESS:\n return {\n ...state,\n downloadedDocument: {\n document: action.downloadedDocument,\n documentKey: action.documentKey,\n },\n isFetching: action.isFetching,\n };\n case FETCH_DOCUMENT_DOWNLOAD_FAILURE:\n case FETCH_DOCUMENT_DOWNLOAD_REQUEST:\n return {\n ...state,\n isFetching: action.isFetching,\n error: action.error,\n };\n default:\n return state;\n }\n};\n\nexport default ccbDocumentsDefinition;\n","export const SET_LIST_MODE = 'SET_LIST_MODE';\nexport const SET_STATUS_MODE = 'SET_STATUS_MODE';\n\nexport const FETCH_DOCUMENTS_SUCCESS = 'FETCH_DOCUMENTS_SUCCESS';\nexport const FETCH_DOCUMENTS_FAILURE = 'FETCH_DOCUMENTS_FAILURE';\nexport const FETCH_DOCUMENTS_REQUEST = 'FETCH_DOCUMENTS_REQUEST';\nexport const RESET_DOCUMENT_DOWNLOAD = 'RESET_DOCUMENT_DOWNLOAD';\nexport const FETCH_DOCUMENT_DOWNLOAD_SUCCESS =\n 'FETCH_DOCUMENT_DOWNLOAD_SUCCESS';\nexport const FETCH_DOCUMENT_DOWNLOAD_FAILURE =\n 'FETCH_DOCUMENT_DOWNLOAD_FAILURE';\nexport const FETCH_DOCUMENT_DOWNLOAD_REQUEST =\n 'FETCH_DOCUMENT_DOWNLOAD_REQUEST';\n","export const SAVE_MATURITY_ARRAY = 'SAVE_MATURITY_ARRAY';\n\nexport const saveMaturityMessageArray = maturityAlertVisibleArray => ({\n type: SAVE_MATURITY_ARRAY,\n maturityAlertVisibleArray: maturityAlertVisibleArray,\n});\n","import { SAVE_MATURITY_ARRAY } from '../actions/MaturityActions';\n\nconst maturityDefinition = (state = {}, action) => {\n switch (action.type) {\n case SAVE_MATURITY_ARRAY:\n return {\n ...state,\n maturityAlertVisibleArray: action.maturityAlertVisibleArray,\n };\n default:\n return state;\n }\n};\n\nexport default maturityDefinition;\n","import ccbInterestRateDefinition from './reducers/interestRateDefinition';\nimport ccbDocumentsDefinition from './reducers/documentsDefinition';\nimport maturityDefinition from './reducers/maturityDefinition';\n\nconst accountsDefinition = (state = {}, action) => {\n var newState = state;\n newState = ccbInterestRateDefinition(newState, action);\n newState = ccbDocumentsDefinition(newState, action);\n newState = maturityDefinition(newState, action);\n return newState;\n};\n\nexport default accountsDefinition;\n","import { Connection } from '@myie/interact';\n\nimport {\n INTERESTHISTORY_REQUEST,\n INTERESTHISTORY_SUCCESS,\n INTERESTHISTORY_FAILURE,\n RESET_INTERESTHISTORY,\n} from './interestRateTypes';\n\nexport const resetInterestHistory = () => ({\n type: RESET_INTERESTHISTORY,\n});\nexport const interestHistoryRequest = () => ({\n type: INTERESTHISTORY_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const interestHistoryFailed = error => ({\n type: INTERESTHISTORY_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const interestHistoryReceive = (json, accountkey) => ({\n type: INTERESTHISTORY_SUCCESS,\n interestHistory: json,\n accountkey: accountkey,\n isFetching: false,\n error: null,\n});\n\nexport const getInterestHistory = request => dispatch => {\n dispatch(interestHistoryRequest());\n return fetch(Connection.baseUrl('customccb') + `v1.0/getinteresthistory`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(interestHistoryReceive(json, request.AccountKey)))\n .catch(error => dispatch(interestHistoryFailed(error)));\n};\nexport const ccbShouldFetchInterestHistory = (state, request) => {\n if (!state.accounts || !state.accounts.Accounts) {\n return false;\n }\n const index = state.accounts.Accounts.findIndex(\n x => x.AccountKey.Key === request.AccountKey.Key,\n );\n if (index === -1) {\n return false;\n }\n if (!state.accounts.Accounts[index].InterestHistory) {\n return true;\n }\n\n return false;\n};\n\nexport const getInterestHistoryIfNeeded = request => (dispatch, getState) => {\n if (ccbShouldFetchInterestHistory(getState().accountsDefinition, request)) {\n return dispatch(getInterestHistory(request));\n }\n};\n","import { Connection } from '@myie/interact';\nimport {\n FETCH_DOCUMENTS_SUCCESS,\n FETCH_DOCUMENTS_FAILURE,\n FETCH_DOCUMENTS_REQUEST,\n RESET_DOCUMENT_DOWNLOAD,\n FETCH_DOCUMENT_DOWNLOAD_SUCCESS,\n FETCH_DOCUMENT_DOWNLOAD_FAILURE,\n FETCH_DOCUMENT_DOWNLOAD_REQUEST,\n} from './documentTypes';\n\nexport const ccbRequestDocuments = () => ({\n type: FETCH_DOCUMENTS_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const ccbFailedDocuments = error => ({\n type: FETCH_DOCUMENTS_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const ccbReceiveDocuments = (json, accountkey) => ({\n type: FETCH_DOCUMENTS_SUCCESS,\n documents: json,\n accountkey: accountkey,\n isFetching: false,\n error: null,\n});\n\nexport const ccbFetchDocuments = request => dispatch => {\n dispatch(ccbRequestDocuments());\n return fetch(Connection.baseUrl('accounts') + `v3.0/documents/getdocuments`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json => dispatch(ccbReceiveDocuments(json, request.AccountKey)))\n .catch(error => dispatch(ccbFailedDocuments(error)));\n};\n\nexport const ccbShouldFetchDocuments = (state, request) => {\n if (!state.accounts || !state.accounts.Accounts) {\n return false;\n }\n const index = state.accounts.Accounts.findIndex(\n x => x.AccountKey.Key === request.AccountKey.Key,\n );\n if (index === -1) {\n return false;\n }\n if (!state.accounts.Accounts[index].documents) {\n return true;\n }\n\n return false;\n};\n\nexport const ccbFetchDocumentsIfNeeded = request => (dispatch, getState) => {\n if (ccbShouldFetchDocuments(getState().accountsDefinition, request)) {\n return dispatch(ccbFetchDocuments(request));\n }\n};\n\nexport const ccbRequestDocumentDownload = () => ({\n type: FETCH_DOCUMENT_DOWNLOAD_REQUEST,\n isFetching: true,\n error: null,\n});\n\nexport const ccbFailedDocumentDownload = error => ({\n type: FETCH_DOCUMENT_DOWNLOAD_FAILURE,\n isFetching: false,\n error: error.message,\n});\n\nexport const ccbReceiveDocumentDownload = (json, documentKey) => ({\n type: FETCH_DOCUMENT_DOWNLOAD_SUCCESS,\n downloadedDocument: json,\n documentKey: documentKey,\n isFetching: false,\n error: null,\n});\n\nexport const ccbFetchDocumentDownload = request => dispatch => {\n dispatch(ccbRequestDocumentDownload());\n return fetch(Connection.baseUrl('accounts') + `v3.0/documents/getdocument`, {\n method: 'post',\n headers: Connection.headers(),\n body: JSON.stringify(request),\n })\n .then(response => Connection.errored(response))\n .then(response => response.json())\n .then(json =>\n dispatch(ccbReceiveDocumentDownload(json, request.DocumentKey)),\n )\n .catch(error => dispatch(ccbFailedDocumentDownload(error)));\n};\n\nexport const ccbResetDocumentDownload = () => ({\n type: RESET_DOCUMENT_DOWNLOAD,\n});\n","import * as interestRateActions from './actions/interestRateActions';\nimport * as ccbDocumentActions from './actions/documentActions';\nimport * as MaturityActions from './actions/MaturityActions';\n\nconst mapDispatchToProps = {\n ...interestRateActions,\n ...ccbDocumentActions,\n ...MaturityActions,\n};\n\nexport default mapDispatchToProps;\n","import customccbAccountsDefinition from './reducer';\nimport mapStateToProps from './mapStateToProps';\nimport mapDispatchToProps from './mapDispatchToProps';\n\nexport { customccbAccountsDefinition, mapStateToProps, mapDispatchToProps };\n"],"sourceRoot":""}