{"version":3,"sources":["assets/img/ico-quick-pay.png","assets/img/ico-register.png","assets/img/ico-faq.png","assets/img/header-bg-hero.png","utils/history.js","assets/jss/xrs.js","assets/jss/xrs/components/buttonStyle.js","components/CustomButtons/Button.js","utils/context.js","assets/jss/xrs/views/landingPageStyle.js","store/actions/action_types.js","store/actions/actions.js","store/redux/redux-actions/redux_action_types.js","store/redux/redux-actions/redux_actions.js","components/Header/AccountItem.js","assets/jss/xrs/views/changePasswordOrPinStyle.js","assets/jss/xrs/components/cardStyle.js","components/Card/Card.js","assets/jss/xrs/components/cardBodyStyle.js","components/Card/CardBody.js","assets/jss/xrs/components/parallaxStyle.js","components/Parallax/Parallax.js","assets/jss/xrs/components/customInputStyle.js","components/CustomInput/CustomInput.js","components/Grid/GridContainer.js","components/Grid/GridItem.js","utils/XRSAPIs.js","assets/jss/xrs/imagesStyles.js","assets/jss/xrs/views/sectionsSections/blueHeaderSectionStyle.js","assets/jss/xrs/components/tableStyle.js","components/Table/Table.js","views/SectionsPage/Sections/BlueHeaderSection.js","utils/apiErrorHandler.js","views/ChangePassworOrPin/ChangePasswordOrPin.js","components/Header/IntercomComponent.js","components/Header/HeaderLoggedIN.js","assets/jss/xrs/components/customDropdownStyle.js","components/CustomDropdown/CustomDropdown.js","assets/jss/xrs/tooltipsStyle.js","assets/jss/xrs/components/headerLinksStyle.js","components/Header/HeaderLinksUser.js","views/SectionsPage/Sections/HeaderSectionLoggedID.js","assets/jss/xrs/views/sectionsSections/welcomeSectionStyle.js","views/SectionsPage/Sections/WellcomeSection.js","views/WellcomePage/WellcomePage.js","assets/jss/xrs/views/documentsPageStyle.js","views/SectionsPage/Sections/DocumentSection.js","views/DocumentsPage/DocumentsPage.js","assets/jss/xrs/views/sectionsSections/viewAccountSectionStyle.js","views/SectionsPage/Sections/ViewAccountSection.js","views/ViewAccountPage/ViewAccountPage.js","assets/jss/xrs/views/createPaymentPlanPageStyle.js","views/SectionsPage/Sections/PayNowSection.js","views/SectionsPage/Sections/WizardSection.js","views/CreatePaymentPage/CreatePaymentPlanPage.js","assets/jss/xrs/components/footerStyle.js","components/Footer/Footer.js","views/SectionsPage/Sections/FooterSection.js","assets/jss/xrs/components/headerStyle.js","components/Header/Header.js","components/Header/HeaderLinksNoUser.js","views/SectionsPage/Sections/HeaderSection.js","views/SectionsPage/Sections/LinksSection.js","views/LandingPage/LandingPage.js","views/LandingPage/LandingPageCreateUser.js","assets/jss/xrs/components/typographyStyle.js","components/Typography/Success.js","assets/jss/xrs/components/fabCameraStyle.js","components/Fab/FabOpenedCamera.js","components/camera/Camera.js","views/QuickPayPage/QuickPayPage.js","assets/jss/xrs/views/quickPaymentStyle.js","views/QuickPayPage/QuickPayPaymentStatus.js","views/PayNowPage/PayNowPaymentStatus.js","views/PayNowPage/PayNowPage.js","assets/jss/xrs/views/sectionsSections/viewOfferSectionsStyle.js","views/SectionsPage/Sections/ViewOfferSection.js","views/ViewOfferPage/ViewOfferPage.js","assets/jss/xrs/components/accordionStyle.js","components/Accordion/Accordion.js","views/FaqPage/FaqPage.js","assets/jss/xrs/views/budgetPageStyle.js","assets/jss/xrs/views/sectionsSections/budgetSectionStyle.js","assets/jss/xrs/views/incomeBudgetFieldsStyle.js","views/BudgetPage/IncomeBudgetFields.js","views/SectionsPage/Sections/BudgetSection.js","components/PdfViewer/PdfViewer.js","assets/jss/xrs/components/fabStyle.js","components/Fab/FabViewDocument.js","views/BudgetPage/BudgetPage.js","views/SectionsPage/Sections/RequestCallBackSection.js","views/RequestCallBackPage/RequestCallBackPageLoggendIn.js","assets/jss/xrs/views/changePasswordOrPinPageStyle.js","views/ChangePassworOrPin/ChangePasswordOrPinPage.js","assets/jss/xrs/views/faqPageLoginStyle.js","assets/jss/xrs/views/sectionsSections/faqSectionStyle.js","views/SectionsPage/Sections/FaqSection.js","views/FaqPageLogin/FaqPageLogin.js","views/IframePage/IframePage.js","views/SectionsPage/Sections/MessagesSection.js","views/MessagesPage/MessagesPage.js","routes.js","store/reducers/accounts_reducer.js","store/reducers/menu_reducer.js","store/reducers/auth_reducer.js","store/reducers/callbacks_reducer.js","store/reducers/customer_reducer.js","store/reducers/drawer_reducer.js","store/reducers/form_reducer.js","store/reducers/offer_reducer.js","store/reducers/plain_reducer.js","store/reducers/selectedAccounts_reducer.js","store/reducers/site_reducer.js","store/reducers/timeout_reducer.js","assets/jss/xrs/views/componentsSections/notificationsStyles.js","store/redux/redux-reducers/apiCalls_reducer.js","store/redux/redux-reducers/getSiteDetailsReducer.js","store/redux/redux-reducers/html_reducer.js","store/redux/redux-reducers/camera_reducer.js","store/redux/redux-reducers/documents_reducer.js","store/redux/redux-reducers/index.js","store/redux/createReduxStore.js","utils/auth.js","components/Fab/Fab.js","context_state_config.js","App.js","index.js"],"names":["module","exports","createBrowserHistory","hexToRgb","input","replace","test","length","Error","first","second","last","toUpperCase","parseInt","document","documentElement","style","setProperty","textVariables","primaryColor","primaryDarkColor","secondaryColor","warningColor","dangerColor","successColor","infoColor","roseColor","grayColor","transition","container","paddingRight","paddingLeft","marginRight","marginLeft","width","maxWidth","defaultFont","fontFamily","fontWeight","lineHeight","boxShadow","primaryBoxShadow","infoBoxShadow","successBoxShadow","warningBoxShadow","dangerBoxShadow","roseBoxShadow","title","color","background","margin","paddingTop","borderTop","height","textDecoration","marginTop","marginBottom","minHeight","main","position","padding","zIndex","mainRaised","borderRadius","mlAuto","btnLink","backgroundColor","boxShdow","buttonStyle","button","minWidth","border","fontSize","textTransform","letterSpacing","willChange","textAlign","whiteSpace","verticalAlign","touchAction","cursor","display","top","transform","left","fullWidth","primary","secondary","info","success","warning","danger","rose","white","twitter","facebook","google","linkedin","pinterest","youtube","tumblr","github","behance","dribbble","reddit","instagram","simple","transparent","disabled","opacity","pointerEvents","lg","sm","round","block","link","justIcon","fileButton","useStyles","makeStyles","styles","RegularButton","React","forwardRef","props","ref","children","size","className","rest","classes","btnClasses","classNames","Button","Context","createContext","landingPageStyle","RightAlign","CenterAlign","LinkHome","middle","middleInput","middleright","centerText","digitText","wordBreak","BoldText","iFrameTop","centerTextBlue","textLabel","centerTextTitle","centerTextSubTitle","whiteText","centerOnlyText","centerButton","cardRadius","paddingBottom","control","controlWhite","footerParagraph","footerTitle","whiteTextField","paper","paperLeft","subtitle","linkButton","login","hide","inlineBlock","shieldText","alignItems","list","float","right","icon","headerLoggedInColor","bodyLoggedIn","FAILURE","set_Customer","customer","type","payload","set_Callbacks","callbacks","set_Site","site","set_Drawer","state","set_selectedAccount","set_Offer","offer","set_Accounts","accounts","set_Registration_method","set_num_accounts","text","set_menu","menu","set_startoveralltimeout","time","API_ACTION_TYPES","GET_SITE_DETAILS_ACTION_TYPES","DOCUMENTS_ACTION_TYPES","HTML_ACTION_TYPES","CAMERA_ACTION_TYPES","apiActions","loading","error","clear","code","getSiteDetailsActions","logo","footerImage","currency","paymentProvider","devNum","convenienceFee","uploadImagesToBudget","setDrawerState","htmlActions","termsQuickPay","ReactHtmlParser","termsPlan","termsDiscount","viewOfferText","createPlanText","createPlantoc","createBudgetText","viewAccountText","setBurgerAnimation","cameraActions","openCamera","setCapturedImage","addCapturedImage","deleteDocument","resetDocuments","documentsActions","openDocumet","viewDocumet","theme","root","appBar","transitions","create","easing","sharp","duration","leavingScreen","appBarShift","easeOut","enteringScreen","menuButton","spacing","drawer","flexShrink","drawerPaper","drawerHeader","mixins","toolbar","justifyContent","textCenter","textCenterAccNum","content","flexGrow","contentShift","AccountItem","page","useTheme","dispatch","account","useContext","useDispatch","onClick","ACTIONS","createplantext","history","push","accountnumber","balancedesc","Icon","drawerWidth","isMobile","changePasswordOrPinStyle","instructions","whiteInfo","whiteInfoMiddle","whiteRight","blueTitle","blueText","Title","Wellcome","BoxFull","Middle","blueTextMiddle","rightValues","cardStyle","card","flexDirection","wordWrap","cardPlain","cardProfile","cardBlog","cardRaised","cardBackground","backgroundPosition","backgroundSize","whiteColor","cardPricing","listStyle","borderBottom","cardPricingColor","borderColor","cardProduct","Card","plain","profile","blog","raised","pricing","product","testimonial","cardClasses","undefined","cardBodyStyle","cardBody","flex","WebkitBoxFlex","cardBodyBackground","cardBodyPlain","cardBodyFormHorizontal","cardSignup","cardBodyColor","CardBody","formHorizontal","signup","cardBodyClasses","parallaxStyle","parallax","maxHeight","overflow","filter","darkColor","small","Parallax","image","parallaxClasses","customInputStyle","underline","borderBottomColor","borderBottomWidth","underlineError","underlineSuccess","helperTextRoot","labelRoot","labelRootWhite","labelRootError","labelRootSuccess","feedback","bottom","formControl","whiteUnderline","fieldSet","borderStyle","whiteInput","CustomInput","formControlClasses","useSelector","GetSiteDetailsReducer","formControlProps","id","helperText","label","labelProps","inputProps","showCurrency","inputRootCustomClasses","multiline","reg","labelClasses","underlineClasses","rootClasses","inputClasses","FormControl","placeholder","InputLabel","shrink","htmlFor","Hidden","mdUp","smDown","Input","rows","startAdornment","InputAdornment","mind","variant","FormHelperText","grid","GridContainer","Grid","defaultProps","GridItem","item","api","GetSiteDetatilsAPIUrl","GetVerifyAPIUrl","GetWebOffersAPIUrl","GetWebOffersCardAPIUrl","GetReturnAPIUrl","GetWelcomeDetails","changePassword","changePin","CreateOfferRequestTabaPay","SetWebOfferTabaPay","imagesStyles","imgFluid","imgRounded","imgRoundedCircle","imgRaised","imgGallery","imgCardTop","borderTopLeftRadius","borderTopRightRadius","imgCardBottom","borderBottomLeftRadius","borderBottomRightRadius","imgCard","imgCardOverlay","blueHeaderSectionStyle","whiteCenter","CardStyle","tableStyle","gray","table","borderSpacing","borderCollapse","tableShoppingHead","tableCell","tableHeadCell","borderTopWidth","tableCellTotal","tableCellAmount","tableResponsive","overflowX","tableStripedRow","tableRowHover","warningRow","dangerRow","successRow","infoRow","BlueHeaderSection","useState","ballance","setBallance","sessionStorage","getItem","phone","setPhone","stateSite","SiteReducer","stateSelectedAccount","SelectedAccountsReducer","deptphonenumber","numOfAccounts","AccountsReducer","stateCustomer","CustomerReducer","useEffect","totalbalance","balance","phonenumber","xs","md","value","displayType","fixedDecimalScale","thousandSeparator","decimalScale","prefix","clientname","href","ApiErrorHandler","from","context","message","MESSAGE","statusText","responseText","parsedError","JSON","parse","error_description","errors","forEach","element","status","stateInfoDialog","SliderSettings","infinite","arrows","touchMove","centerMode","variableWidth","dots","initialSlide","slidesToShow","responsive","breakpoint","settings","slidesToScroll","ChangePasswordAndPin","Set","skipped","setSkipped","topNav","setTopNav","steps","step","setStep","cReference","setReference","cMobileNumber","setMobileNumber","cEmail","setcEmail","cDateOfBirth","setDateOfBirth","CredentialToReset","setCredentialToReset","OldPassword","setOldPassword","NewPassword","setNewPassword","ConfirmPassword","setConfirmPassword","SecurityCode","setSecurityCode","registrationType","registrationMethod","cred","m","cumobilephone","r","custnumber","d","cudob","token","handleBack","newSkipped","has","isStepSkipped","values","delete","prevActiveStep","slickPrev","slider","key","justify","form","name","onSubmit","event","data","preventDefault","stringify","Reference","MobileNumber","DateOfBirth","fetch","method","headers","Authorization","body","then","res","json","slickNext","catch","description","required","onChange","e","target","minwidth","url","URLS","email","OldPIN","NewPIN","ConfirmPIN","autoComplete","pattern","IntercomComponent","user","user_id","setValue","visible","setVisible","authKey","chatvisible","appID","to","animationName","animationDuration","animationDelay","menuLogo","DisplayY","DisplayN","drawerPass","standardButton","accountButton","notificationButton","username","Right","useStyles2","HeaderLoggedIN","classes2","drawers","updateDrawers","setAccounts","logoimageurl","ApiCallsReducer","menuAnimation","setMenuAnimation","stateAccounts","stateMenu","MenuReducer","buttons","setButtons","useBeforeunload","handleLogOut","useRef","handler","listener","current","contains","addEventListener","removeEventListener","useOnClickOutside","resetDrawerState","tmpbuttons","accountMenus","find","x","recNo","recno","menuButtons","activeAccounts","planinplace","setPlanText","contextDrawers","open","openSecond","openThird","lastOpenedDrawer","stateTwo","stateThree","stateOne","arr","Object","keys","dispatchDrawer","dispatchDrawerTwo","dispatchDrawerThree","dispatchDrawerOne","handleDrawerOpen","handleFirtstDrawerOpen","handleSecondDrawerOpen","handleThirdDrawerOpen","fromBackButton","authObj","logout","handleChangePassword","handleChangePin","handlereadMessages","anchorEl","setAnchorEl","handleMenu","currentTarget","handleClose","openp","Boolean","budgetPageButton","buttonName","budgetPageButtonclassName","buttonVisible","CssBaseline","AppBar","elevation","LinearProgress","Toolbar","IconButton","aria-label","edge","clsx","src","alt","unreadmessages","aria-controls","aria-haspopup","Badge","badgeContent","anchorOrigin","vertical","horizontal","cufname","culname","toLowerCase","keepMounted","transformOrigin","onClose","MenuItem","Drawer","anchor","component","Link","renderButton","map","index","path","textClass","buttonText","customDropdownStyle","popperClose","pooperNav","breakpoints","down","manager","innerManager","dropdown","backgroundClip","menuList","pooperResponsive","dropdownItem","darkHover","primaryHover","infoHover","successHover","warningHover","dangerHover","roseHover","dropdownItemRTL","dropdownDividerItem","buttonIcon","caret","borderRight","borderLeft","caretActive","caretDropup","caretRTL","dropdownHeader","noLiPadding","tooltipsStyle","tooltip","fontStyle","textShadow","wordSpacing","lineBreak","headerLinksStyle","up","WebkitBoxAlign","MsFlexAlign","WebkitBoxOrient","WebkitBoxDirection","MsFlexDirection","listItem","listItemText","navLink","navLinkJustIcon","navButton","notificationNavLink","registerNavLink","navLinkActive","icons","dropdownIcons","socialIcons","dropdownLink","img","marginRight5","collapse","MsFlexPreferredSize","flexBasis","HeaderLinks","dropdownHoverColor","ListItem","hoverColor","HeaderSectionLoggedID","brand","links","relative","changeColorOnScroll","welcomeSectionStyle","RightText","tableWrapper","tableWrapperMobile","accountRow","groupRow","totalRow","columns","align","format","toFixed","WellcomeSection","window","scrollTo","scrollTop","rowdata","setRowdata","setSite","selectedAccount","response","isAuthenticatedUser","dataRows","i","orgname","arrearsamount","Id","ReadContext","welcomE1","Table","TableHead","TableRow","column","TableCell","TableBody","row","welcomE2","deptofficehours","deptaddress","deptemail","LandingPage","stateDrawer","documentsPageStyle","baseStyle","borderWidth","outline","activeStyle","acceptStyle","rejectStyle","DocumentSection","setText","uploadedDocument","txt","useDropzone","maxFiles","accept","onDrop","acceptedFiles","docs","assign","preview","URL","createObjectURL","itemId","getRootProps","fileRejections","getInputProps","isDragActive","isDragAccept","isDragReject","useMemo","DocumentsPage","CameraReducer","viewAccountSectionStyle","overflowY","fullRow","ViewAccountSection","grouprowdata","setGroupRowdata","total","setTotal","setAccount","HtmlReducer","fnmoment","locale","navigator","language","getdata","newDate","Date","ITEMCODE","itemcode","RECNO","STARTDATE","ENDDATE","Paydate","Description","Amount","amount","paydate","transactionid","groupedItems","groupArray","viewacccounttext","stickyHeader","Math","sign","colSpan","date","index2","ViewAccountPage","createPaymentPlanPageStyle","eventListenerCopy","Hide","cardNOBORDER","radioAlign","PayNowSection","loadingButon","setloadingButon","usesconveniencefee","setUsesconveniencefee","paymentgatewayurl","setPaymentgatewayurl","note","setNote","ifamevisible","setIfamevisible","setSitename","setCompanyname","setAboutus","setAddress","setOfficehours","setPhonenumber","setEmail","screenshot","setScreenstate","showQuickPay","setShowQuickPay","termsClicked","setTermsCliked","setTermsApiText","termsText","setTermsText","cardref","setCardref","setCufphone","paymentDate","setPaymentDate","minPayment","setMinPayment","stateOffer","OfferReducer","setAmmount","quickPayAPIData","setquickPayAPIData","tabaPayMessage","today","source","RealexHpp","script","createElement","async","appendChild","footerimageurl","sitecurrency","uploadimagestobudget","conveniencefee","sitename","companyname","aboutus","officehours","address","getMenu","termsquickpay","paynowmin","cuphone","removeChild","formik","useFormik","initialValues","setImageBase64","RedirectResponse","RedirecURL","RelalexInit","oneMonth","setHppUrl","embedded","init","iframe","getElementById","slice","asData","split","quickPayData","NOTE","LASTDIGITS","EXPIRATIONDATE","CARDTOKEN","ok","REDIRECTURL","data1","termsplan","termsdiscount","viewoffertext","createplantoc","createbudgettext","setItem","callbackReasons","handlePayDateChange","html2canvas","canvas","newScreenshot","toDataURL","screen","iremcode","ItemRecno","ItemCode","PAYMENTAMOUNT","ScreenShot","CURRENCYSYMBOL","PAYERREF","cardpayerref","CARDREF","AUTHCODE","RESULTCODE","AMOUNT","PASSREF","submitFormPayNow","Number","postfreq","frequency","OFFERID","WOOFFERID","DOWNPAYMENT","downpayment","REMAINGBAL","balanceToPay","startdate","FREQUENCY","FINALDATE","endDate","FINALAMOUNT","APPLYDISCOUNT","DISCOUNTOPTIONNUMBER","SCREENSHOT","submitFormPaymentPlan","end","dateSetlementOffer","utc","local","add","TERM","OFFERACCEPTEDDECLINED","OFFERDECLINEDREASON","submitFormViewOffer","handleChange","Collapse","in","showdate","paynowtext","handleSubmit","enabled","min","views","MAXPAYDATE","max","maxLength","FormControlLabel","Checkbox","Radio","checked","cardastdigits","RadioGroup","paragraph","redText","blackText","rightRed","rightBlack","WizzardSection","setDuration","setDownpayment","paymentAmount","setPaymentAmount","weekly","biweekly","montly","freqValues","setfreqValues","setEndDate","setFrequency","planInterestapi","planInterest","setplanInterest","setBalanceToPay","paymentVisible","setPaymentVisible","textMessage","setTextMessage","payNowSectionMessage","setPayNowSectionMessage","paymentType","setpaymentType","newValue","plantype","ammount","parseFloat","WOOFFER1MINPAY","abs","toString","dur","isStepOptional","PMT","ir","np","pv","fv","pmt","pvif","pow","handleCalculation","endDatePar","durationPar","downpaymentPar","frequencyPar","rate","setbalanceToPay","principal","rates","interestrate","floor","montdur","formatPaymentAmount","handleText","paymentAmountFormatted","paymentFrequencyFormatted","formatPaymentFrequency","plannowmin","handleDownPaymentChange","planmaxduration","planminpayment","handleDurationChange","handleFreqChange","isNaN","planmaxstart","prevSkipped","forms","checkValidity","footerStyle","rightLinks","footer","big","a","dark","iconSocial","btnTwitter","btnDribbble","btnInstagram","footerBrand","pullCenter","clearFix","Footer","themeType","footerClasses","FooterSection","footerImageUrl","AboutUs","Address","WorkingHours","PhoneNumber","Email","headerStyle","flexFlow","absolute","fixed","flexWrap","appResponsive","appResponsiveRight","transitionProperty","transitionDuration","transitionTimingFunction","visibility","hidden","closeButtonDrawer","Header","mobileOpen","setMobileOpen","headerColorChange","handleDrawerToggle","pageYOffset","getElementsByTagName","classList","remove","appBarClasses","implementation","defaultProp","headerSection","LinksSection","direction","require","firstDigitName","setfirstDigitName","secondDigitName","setsecondDigitName","thirdDigitName","setthirdDigitName","firstDigitValue","setfirstDigitValue","secondDigitValue","setsecondDigitValue","thirdDigitValue","setthirdDigitValue","setRegistrationType","selectedregistrationType","setselectedRegistrationType","NotFound","setNotFound","registerValues","setRegisterValues","setResetValues","retruevedUser","setretruevedUser","mainscreen","setMainScreen","verifyPin","setVerifyPin","registerscreen","setRegisterScreen","resetPinscreen","setResetPinscreen","setPaymentResult","alertOpen","setAlertOpen","alertText","setAlertText","errorMessage","customerCaption","setcustomerCaption","search","location","indexOf","getPINDigits","paymentprovider","registrationtype","custcaption","sessiontimeout","overalltimeout","dispatchIntercomKey","chatauth","loginClick","xhr","XMLHttpRequest","setRequestHeader","onreadystatechange","readyState","digit","third","displayDigits","alert","send","registerForm","customernumber","regusername","dob","pass","passconfirm","UserName","Password","EmailAddress","submitRegisterForm","resetcustomernumber","resetphone","resetdob","submitResetForm","registrationmethod","multiplenum","includes","num","targetURL","Logon","firstPosition","secondPosition","thirdPosition","hash","formValues","grant_type","password","validatePIN","client_id","firstValue","secondValue","thirdValue","pairs","encodeURIComponent","timeoutDate","access_token","refresh_token","expires_in_seconds","expires_in","setSeconds","getSeconds","ResetPins","postValues","join","LoginForm","focusUsername","querySelector","focusPass","focusFirst","focusSecond","focusThird","focusButton","activeElement","focus","verifyPinForm","pinnum","record","pin","verifyData","userName","emailComfirmed","emailConfirmed","emailAddress","reference","customerRecordNo","phoneConfirmed","mobileNumber","dateOfBirth","xhrtoken","valuesPost","entries","getPinVerification","OldPin","NewPin","Dialog","aria-labelledby","aria-describedby","DialogTitle","DialogContent","DialogContentText","DialogActions","xl","ml-xl-auto","maxlength","minlength","inputMode","defaultValue","registrationTypeprop","labelPlacement","LandingPageCreateUser","typographyStyle","defaultFontStyle","defaultHeaderMargins","quote","quoteText","quoteAuthor","mutedText","primaryText","infoText","successText","warningText","dangerText","roseText","smallText","fabStyle","fabCameraContainer","fabReturnContainer","fabChangeCameraContainer","fabIconHolder","fab","fabReturn","fabLike","fabDislike","FabOpenedCamera","changeCamera","capturePicture","openFrom","capturedImage","documents","confirmedImages","numberOfCameras","setNumberOfCameras","closeFullscreen","exitFullscreen","webkitExitFullscreen","msExitFullscreen","mediaDevices","getUserMedia","video","enumerateDevices","devices","kind","blob","Blob","exists","videoConstraints","facingMode","useWindowSize","windowSize","setWindowSize","handleResize","innerWidth","innerHeight","CustomCamera","webcamRef","setChangeCamera","ratio","capture","useCallback","imageSrc","getScreenshot","audio","screenshotFormat","aspectRatio","QuickPayPage","disableButton","setdisableButton","useSSN","setSSN","minimumPayAmount","setMinimumPayAmount","minimumDob","setMinimumDob","maximumDob","setMaximumDob","quickPayText","setQuickPayText","termsApiText","quickpaytext","quickpayusessn","minquickpay","maxdate","referencenum","SSN","submitForm","ssn","err","tabindex","quickPaymentStyle","blue","green","blueBox","DiscountBlue","DiscountGreen","DiscountItem","Border","DiscountItemRed","AmmountItemRed","Radiusradius","AmmountItem","footerRed","textButton","box","useStyles1","QuickPayPaymentStatus","authcode","setAuthcode","setMessage","setResultCode","setPassref","paymentstatustext","setpaymentstatustext","vissibleSucc","setVissibleSucc","parsed","queryString","classes1","Paper","shown","PayNowPaymentStatus","passref","paymentStatusFrom","red","GreenTick","RedTick","PayNowPage","viewOfferSectionsStyle","ViewOfferSection","termsVisible","setTermsVisible","showDate","setShowDate","setoneMonth","refValues","setrefValues","setValues","termsChosen","WOOFFERMAXFIRSTPAYDATE","WOOFFER1MONTHS","WOOFFER1TOTALPAYABLE","WOOFFER1AMOUNT","WOOFFER2MONTHS","WOOFFER2TOTALPAYABLE","WOOFFER2MINPAY","WOOFFER2AMOUNT","WOOFFER3MONTHS","WOOFFER3TOTALPAYABLE","WOOFFER3MINPAY","WOOFFER3AMOUNT","WOOFFER1TEXT","WOOFFER1DISCOUNTPERCENT","WOOFFER1DISCOUNTVALUE","WOOFFER2TEXT","WOOFFER2DISCOUNTPERCENT","WOOFFER2DISCOUNTVALUE","WOOFFER3TEXT","WOOFFER3DISCOUNTPERCENT","WOOFFER3DISCOUNTVALUE","ViewOfferPage","accordionStyle","expansionPanel","expansionPanelExpanded","expansionPanelSummary","primaryExpansionPanelSummary","secondaryExpansionPanelSummary","warningExpansionPanelSummary","dangerExpansionPanelSummary","successExpansionPanelSummary","infoExpansionPanelSummary","roseExpansionPanelSummary","expansionPanelSummaryExpaned","primaryExpansionPanelSummaryExpaned","secondaryExpansionPanelSummaryExpaned","warningExpansionPanelSummaryExpaned","dangerExpansionPanelSummaryExpaned","successExpansionPanelSummaryExpaned","infoExpansionPanelSummaryExpaned","roseExpansionPanelSummaryExpaned","expansionPanelSummaryContent","expansionPanelSummaryExpandIcon","expansionPanelSummaryExpandIconExpanded","expansionPanelDetails","Accordion","active","setActive","single","setTimeout","collapses","activeColor","prop","ExpansionPanel","expanded","panel","newArray","splice","ExpansionPanelSummary","expandIcon","ExpansionPanelDetails","FaqPage","faqs","header","details","defaultExpanded","budgetPageStyle","budgetSectionStyle","showSummary","hideSummary","Summary","TitleTop","SubTitle","Money","MoneyGreen","Submited","MoneyRed","FinaliseMoney","Line","incomeBudgetFieldsStyle","IncomeBudgetFields","selectedvalue","selected","setSelected","setOpenDocumet","uploadedDocumet","setUploadedDocumet","cameraExist","setcameraExist","incomeId","expenseId","elem","openFullscreen","requestFullscreen","webkitRequestFullscreen","msRequestFullscreen","onhandleChange","Select","handleSelectedChange","canAttachFile","documentToShow","pdf","BudgetSection","showSuccess","setshowSuccess","incomesToDisplay","setincomesToDisplay","expensesToDisplay","setexpensesToDisplay","incomeMonthlyTotal","setIncomeMonthlyTotal","incomeYearlyTotal","setIncomeYearlyTotal","incomeWeeklyTotal","setIncomeWeeklyTotal","expenceMonthlyTotal","setExpenceMonthlyTotal","expenceYearlyTotal","setExpenceYearlyTotal","expenceWeeklyTotal","setExpenceWeeklyTotal","balanceMonthlyTotal","setBalanceMonthlyTotal","balanceYearlyTotal","setBalanceYearlyTotal","balanceWeeklyTotal","setBalanceWeeklyTotal","showpaymentplanbuttonafterbudgetsubmitted","setShowpaymentplanbuttonafterbudgetsubmitted","scroll","incomeslist","flat","expencelist","calculate","incomes","expences","cincomeMonthlyTotal","cincomeYearlyTotal","cincomeWeeklyTotal","cexpenceMonthlyTotal","cexpenceYearlyTotal","cexpenceWeeklyTotal","cbalanceMonthlyTotal","cbalanceYearlyTotal","cbalanceWeeklyTotal","formData","FormData","BudgetInformation","YearlyIncomeTotal","MonthlyIncomeTotal","WeeklyIncomeTotal","YearlyExpenditureTotal","MonthlyExpenditureTotal","WeeklyExpenditureTotal","YearlySavingsTotal","MonthlySavingsTotal","WeeklySavingsTotal","Incomes","Expenditures","append","IncomeName","incomeType","IncomeValue","IncomeFrequency","AttachedFileName","ExpenditureName","expenseType","ExpenditureValue","ExpenditureFrequency","IncomedataRows","ExpencedataRows","incomeCategory","incomeOrder","atachedFileName","createIncomeData","expenseCategory","expenseOrder","createExpenceData","groupedItemse","cat","handleInputChange","handleInputSelectedChange","handleInputExChange","handleInputExSelectedChange","class","browserHistory","PdfViewer","fabContainer","fabOptions","listStyleType","fabLabel","alignSelf","userSelect","FabViewDocument","viewDocument","BudgetPage","DocumentsReducer","documentToBeViewed","RequestCallBackSection","openTime","setopenTime","closeTime","setcloseTime","callbackReason","setCallbackReason","callbackDate","setCallBackDate","callbackDateMax","setCallBackDateMax","callbackTime","setCallBackTime","callbackphone","setCallbackphone","callbackDateTime","setCallbackDateTime","stateCallbacks","CallbacksReducer","closinghours","openinghours","maxcallbackdate","datetime","callBacklDate","DateOfCallBack","Note","PhoneType","handleCallBackDateChange","handleCallBackTimeChange","handlecallbackReasonChange","labelId","callbackid","callbackreason","handleCallBackPhoneChange","CardContent","RequestCallBackLoggedID","changePasswordOrPinPageStyle","faqPageLoginStyle","faqSectionStyle","FaqSection","FaqPageLogin","Iframecontainer","responsiveIframe","IframePage","iframeUrl","defaultTheme","createMuiTheme","getThemePaletteMode","palette","darken","lighten","MessagesSection","columnsDesktop","field","headerName","headerClassName","cellClassName","renderCell","params","HasAttachment","columnsMobile","selectedRow","setSelectedRow","getSiteDetails","ReceivedAt","showDetails","setShowDetails","onRowEvent","URLSearchParams","MessageId","onRowClick","getRowClassName","getValue","getRowId","density","autoHeight","pageSize","CustomerRecNo","Body","MimeType","Attachment","download","click","revokeObjectURL","MessagesPage","PrivateRoute","Component","auth","render","pathname","Routes","utils","MomentUtils","authState","WellcomePage","CreatePayment","faq","RequestCallBackPage","initialState","action","ACTION_TYPES","is_authenticated","AuthReducer","DrawerReducer","user_textChange","user_textSubmit","FormReducer","stateprop1","stateprop2","Reducer1","sessionTimeout","overallTimeout","startOverallTimeout","burgerButtonAnimation","appReducer","combineReducers","TimeOutReducer","rootReducer","store","createStore","applyMiddleware","thunkMiddleware","Auth","userProfile","makeFormEncoder","getBearerToken","this","RefreshToken","handleAuth","auth0","parseHash","authResult","accessToken","idToken","expiresAt","expiresIn","getTime","getProfile","getAccessToken","client","userInfo","removeItem","isAuthenticated","now","checkToken","enteredPIN","verifydata","isUserAuthenticated","ContextState","IdleOpen","setIdleOpen","InfoOpen","setInfoOpen","FabOpen","setFabOpen","InfoTitle","setInfoTitle","InfoText","setInfoText","InforedirectUrl","setInforedirectUrl","tokenInterval","setTokenInterval","clearInterval","tokenTimeout","interval","setInterval","TokenTimer","planText","useReducer","drawerReducer","drawerReducerOne","drawerReducerTwo","drawerReducerThree","handleDispatchDrawer","handleDispatchDrawerOne","handleDispatchDrawerTwo","handleDispatchDrawerThree","offerReducer","dispatchOfferReducer","menuReducer","dispatchMenuReducer","handleDispatchOffer","customerReducer","dispatchCustomerReducer","handleDispatchCustomer","accountsReducer","dispatchAccountsReducer","selectAccountReducer","dispatchsSlectAccountReducer","handleDispatchSite","dispatchSiteReducer","siteReducer","handleDispatchCallbacks","dispatchCallbacksReducer","callbacksReducer","numAccounts","setNumAccounts","handleDispatchAccounts","handleMenuReducer","stateReducer1","dispatchReducer1","handleDispatchFalse","stateAuthReducer","dispatchAuthReducer","stateFormReducer","dispatchFormReducer","handleIdleOpen","selectedValue","IntercomKey","setIntercomKey","IntercomVisible","setIntercomVisible","Provider","stateProp1","stateProp2","dispatchContextTrue","dispatchContextFalse","handleIntercomKey","statePlanText","setstatePlanText","redirectUrl","OpenInfoDialog","dispatchSelectAccountReducer","handleDispatchSelectAccountReducer","stateNumAcctions","useContextChangeState","useContextSubmitState","useContextSubmit","persist","handleFormSubmit","useContextChange","handleFormChange","profileState","handleUserLogin","handleUserLogout","handleUserAddProfile","handleAddProfile","handleUserRemoveProfile","handleAuthentication","loggedID","IdleDialog","timeoutvalue","InfoDialog","redirect","handleInfoClose","onActive","onIdle","onAction","debounce","timeout","setAutoLogout","disableBackdropClick","intervalDelay","precision","onComplete","renderer","minutes","seconds","autoFocus","performance","navigation","App","trackingCode","settrackingCode","trackingCodeInit","settrackingCodeInit","trackingcode","ReactGA","initialize","unlisten","listen","pageview","ReactDOM"],"mappings":"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GAC3Be,UACE,0BACArC,EAASsB,EAAU,IACnB,gCACAtB,ED0FW,QCzFX,iCACAA,EAASsB,EAAU,IACnB,WAGNgE,QAAS,CACPvB,gBAAiB1C,EAAa,GAC9BgB,UACE,oBACArC,EAASqB,EAAa,IACtB,gCACArB,EAASqB,EAAa,IACtB,4BACArB,EAASqB,EAAa,IACtB,UACF,kBAAmB,CACjB0C,gBAAiB1C,EAAa,GAC9BgB,UACE,0BACArC,EAASqB,EAAa,IACtB,gCACArB,EDoEW,QCnEX,iCACAA,EAASqB,EAAa,IACtB,WAGNkE,QAAS,CACPxB,gBAAiB5C,EAAa,GAC9BkB,UACE,oBACArC,EAASmB,EAAa,IACtB,gCACAnB,EAASmB,EAAa,IACtB,4BACAnB,EAASmB,EAAa,IACtB,UACF,kBAAmB,CACjB4C,gBAAiB5C,EAAa,GAC9BkB,UACE,0BACArC,EAASmB,EAAa,IACtB,gCACAnB,ED8CW,QC7CX,iCACAA,EAASmB,EAAa,IACtB,WAGNqE,OAAQ,CACNzB,gBAAiB3C,EAAY,GAC7BiB,UACE,oBACArC,EAASoB,EAAY,IACrB,gCACApB,EAASoB,EAAY,IACrB,4BACApB,EAASoB,EAAY,IACrB,UACF,kBAAmB,CACjB2C,gBAAiB3C,EAAY,GAC7BiB,UACE,0BACArC,EAASoB,EAAY,IACrB,gCACApB,EDwBW,QCvBX,iCACAA,EAASoB,EAAY,IACrB,WAGNqE,KAAM,CACJ1B,gBAAiBxC,EAAU,GAC3Bc,UACE,oBACArC,EAASuB,EAAU,IACnB,gCACAvB,EAASuB,EAAU,IACnB,4BACAvB,EAASuB,EAAU,IACnB,UACF,kBAAmB,CACjBwC,gBAAiBxC,EAAU,GAC3Bc,UACE,0BACArC,EAASuB,EAAU,IACnB,gCACAvB,EDEW,QCDX,iCACAA,EAASuB,EAAU,IACnB,WAGNmE,MAAO,CACL,oBAAqB,CACnB3B,gBDPa,OCQblB,MAAOrB,EAAU,KAGrBmE,QAAS,CACP5B,gBDViB,UCWjBlB,MDbe,OCcfR,UACE,oBACArC,EDde,WCef,gCACAA,EDhBe,WCiBf,4BACAA,EDlBe,WCmBf,UACF,4BAA6B,CAC3B+D,gBDrBe,UCsBflB,MDxBa,OCyBbR,UACE,0BACArC,EDzBa,WC0Bb,gCACAA,ED5BW,QC6BX,iCACAA,ED7Ba,WC8Bb,WAGN4F,SAAU,CACR7B,gBDjCkB,UCkClBlB,MDrCe,OCsCfR,UACE,oBACArC,EDrCgB,WCsChB,gCACAA,EDvCgB,WCwChB,4BACAA,EDzCgB,WC0ChB,UACF,kBAAmB,CACjB+D,gBD5CgB,UC6ChBlB,MDhDa,OCiDbR,UACE,0BACArC,EDhDc,WCiDd,gCACAA,EDpDW,QCqDX,iCACAA,EDpDc,WCqDd,WAGN6F,OAAQ,CACN9B,gBDxDgB,UCyDhBlB,MD7De,OC8DfR,UACE,oBACArC,ED5Dc,WC6Dd,gCACAA,ED9Dc,WC+Dd,4BACAA,EDhEc,WCiEd,UACF,kBAAmB,CACjB+D,gBDnEc,UCoEdlB,MDxEa,OCyEbR,UACE,0BACArC,EDvEY,WCwEZ,gCACAA,ED5EW,QC6EX,iCACAA,ED3EY,WC4EZ,WAGN8F,SAAU,CACR/B,gBD/EkB,UCgFlBlB,MDrFe,OCsFfR,UACE,oBACArC,EDnFgB,WCoFhB,gCACAA,EDrFgB,WCsFhB,4BACAA,EDvFgB,WCwFhB,UACF,kBAAmB,CACjB+D,gBD1FgB,UC2FhBlB,MDhGa,OCiGbR,UACE,0BACArC,ED9Fc,WC+Fd,gCACAA,EDpGW,QCqGX,iCACAA,EDlGc,WCmGd,WAGN+F,UAAW,CACThC,gBDtGmB,UCuGnBlB,MD7Ge,OC8GfR,UACE,oBACArC,ED1GiB,WC2GjB,gCACAA,ED5GiB,WC6GjB,4BACAA,ED9GiB,WC+GjB,UACF,kBAAmB,CACjB+D,gBDjHiB,UCkHjBlB,MDxHa,OCyHbR,UACE,0BACArC,EDrHe,WCsHf,gCACAA,ED5HW,QC6HX,iCACAA,EDzHe,WC0Hf,WAGNgG,QAAS,CACPjC,gBD7HiB,UC8HjBlB,MDrIe,OCsIfR,UACE,oBACArC,EDjIe,WCkIf,gCACAA,EDnIe,WCoIf,4BACAA,EDrIe,WCsIf,UACF,kBAAmB,CACjB+D,gBDxIe,UCyIflB,MDhJa,OCiJbR,UA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","file":"static/js/main.de9a56da.chunk.js","sourcesContent":["module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAEg0lEQVRogeWaa4hVVRTHf6OWMzXkpQdBJmlZ9oLmU0XM1JSVRUWRlZAUam/oYU8Swl72ID+kpESRBNEEWkHQVFhBD6GgPmRPmspKUIKUMkzTHrNiD/8Tu7P3uXPuPefMvdEPNufMWnvv2Wuvtfde55yLmRUtXWa21My2WjVsNLPbzKwjNs4RYQE6gNeAWcAHwIfAn0U6TDEROA04AlgOLAxqxKxqoMzSnK8swZNZZU8zW2tmw2Y2LV1nXGBRY/Sp9tISZz3N78AyefvEtLKoAd26bgs05fKbeptYtgEtZ0JJA1gH/BVIy6M7q6e0AecAewS1sjlMml9K3n1ykzZgAJjURD/nVrwO+oG3AmnEALSfPxRI41yhwbeMmAE/AC8BM4Auyb5TmMRmJuEAYDIw5O0alVNvF1oNfKRyaqANmau6MwJNhcQ84LMBWAF8GmhC3gFuBjYHmhYZsB3YpFMwD87YnzNCrTLqhVBfgwt0gdbK0YGmQup5oAz2B64D9ivY18G6Xgr06N5tFM86A972KroTrzclq8f0OjrH48BFgbR5zlBJuNwZcAqwVYvvMylqOf9FkFylOFx99gWa4riz6tokhAaiDwuj4xb4TaPU2heYF0iLM7LWYqnE3rq/y/MImu2ZwMmKSZf7HJdjGAcBjwbSkoglc86AHV4YuZ3qGuBu4EDJ/tA1T+L3FTAnkBbndreoY7vQK8AFut8LeAE4G/geuB4YBDbqCekJ4Kqgh3/T5e0cZeJSl8ADD2ugaIBrNPgngRuB3dItBn4CduYY0BTg6UBaEjEDEuYrpFYphHwWyND1OYbhTugrA2lxXDTMjoWQYzxwr7bWGzz5xcBKue8Q4KSgZcivDZwrjTAS5lmpRK92muVeauwedJ7R34/JkO1ByzEmywPJzL7qyZxBncBzwCLJhlMeahsDJuv6rSf7UuVO5TfDWuh5mZZ6XP1G4TUa0xXSQ+qj20/vswzYpWunF0LurcPpwK3AoQq/mUHLbNxhdr6ndQ9JedbGUzqTetRHv5/qZBmwSdejgPd077zyAPAycItkbk1cFrSOsyq1mJ0H8rDCy7lcH2v9NlkGvK7rbM+ALZrxuQqlcTlz//GasXUqPnmSxjd1rXnta/8YpZezyyIvVt83s51mNsWTHWlmq81sl5ltM7MNal8zs4W67/HqP1/RK/eEzVkecNwBvAu8qHjdoZmfo0MsOcjqZaNusX9S0gONi4Y3gC8kG3mgSXtg0MyWeDO4WPr1ZnaMJz/TzHrVrp4Hyir96nteur+0B3qVjfZokd2nHelB4GO9LxqUrkMfHlpKLIT6vXdBbtd4RBnq/cB5cmXbkDZgkbdl+dvc58CFOoiO15bqzoVL2uXV4j7AVH3v8nVTgxbwtQqpN3YD8thQ0KJCEgPmqxRhi8qYMkFpc7OcBZww1oP2cQbcE0jzU5MBgxV/4Mg8sWO7UDNMapdPTM3S105faMrmWGBJjj6vBn4MpKNQ1IDkgaRWxwO11JecLDoz5HhfinYHmv/6Tw3+9z/2aO3Pbcz4G73UfsklkkdCAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAFIUlEQVRogdVae4hWRRT/7UNdbZe2WjbXUsvVMqJCTSPo5RZCsGlF0QNi0aggivKPsgdkRZGSQaZR+VfRO0l7QGwSuwYlFFGGRkGtGm6tK5lfj3V97i+m/d119s7c+33ffaz4g8O938w5Z+bcmXPmzMxXQRIjhEoAcwFcA+ASAFMBnBhq+hCAHQC+A7ABwPsACrHdMwbkTJUkF5L8hcNxhGQhRP0hHvP7BZKNUX10CjKmM0lusjq0leQDJGeSHONpy8yISSRvIbmO5GHJ7SV5s4c/VwMuJrlHHegiea066OONomaSa60P8HRYR5RgWppF8m81+i7J2pT6biO53zIiVwMaSHarsVcSfPUoarGMGJpOUcxp6E01soFkVRE9Y0neSPJ+kgtIjvbwhEci8InGPAyYpQbM9Gny1Ns0h2RPKOqYSDXdw2tT4BMr8zDgbSlf6qmzqZ5kr3g3klxGcrN+/1xkJJoVnUyIrfcxJKVaKT0oP4jTc6c62275yGjLiFaPjE3rxXd7pbOyJcelAGoAdAL4o4iWyXquN2up3g8C+FTvUx2J4VirX/OqnarkmCnJL0vQ8BKAvQDessqqAFyh952OxHB8oV8zfMOTlNaEQ1wZNI9kp+RNCB5XRLYimK5ZjkCNnvudmnhcDeATcfQCuB7AvliJwWl3wCSDWfrAYT2rnJp4XKTa1wCcDeDrWO6jGAXgSJYG/K7nGU5NadgM4K8SeRsAjAOwKzyFTtAQXgZgojUt4mCc9lEAP4hndgyvDwMqO+Spi8KFKt9qO0arZ2UsBbslP95a5n2pchSdTvIxkidH1PvoRbX1YLAjuxXAGwAqAHTo/ScA/RFfwMYukcFGAJcDWAjgVYczG9QC+A1AHYBp0AZinyy612NtOXSdldPUlCh3HsnXSU721PnoSbXxcZALrVLBGg9zuWS2j19J34oSZReL/yZPXZhmkDyg7ej5gQHbpGCaRyAJXWDl7W0lyFcriy22bzC+skN6nwnKocyuzyOQhtrUkPlSd2egb7r1oc0+Y1RQZ6ym4m+95WKNACYkdLkftUreA2CVyt4DcJ/l7OWiC8AUAJ/rWOafIXlZVQhZ/GuCcBpgpaVngcIqFShWk5wtX/F96YAmkDzN+l2QDmefEDUCj1uZYTkw6cQKAO2WTBOA5QrVQZph2tsCYI91cGVW1lMANCvdNiG8VWG9oEOwCqcvESOQB00h+RTJ750xc/GnNWot1gg4/YoagbwxuAgNftXgeLFfX7pbC9UyAEtUbhK3at8IHCsDSkVgxFB/w3JR+4HPrIQpK5hd2MMeXQ0xW9CH9FyiLaeDKAPgOTlOg4EI2bsAvKxNTbtTe9SI7qhsNcqAq5ySfNAkreOLaF/tlAhZbmiOCY57A6Km0NL/jyzSYTuAxQDGyIHNjcs7I2XAIgCTnNLy0KfoYfKqNm1ERsyAOQDOcUrLQ5dC304tWruz7rxtQNgXekVZYVuEnjo9E980mo73SFGxUJYHzpXOnjQGdOj9Dqc2X5iss0UneZsSt6QbwwEdi1/py/hyoJNIfqMM8/k0+oOXJ6TMGPGcNs9jfQIpyFw3TSS5iOR2tWeuXeuyMMBkpY9Y97JxMKP1rOTMbcm/MbxxMDczp/o6VQ6F/2pwlhKsuKPFOvnOciVgndqJ9TmcwzGgyLZF9wIfpok+tg+US/M11Qw69PxghHzHoSS50EcAblB6O9epHWEkTeZsI6BjlOPKAIPACLNn/TbDPpUOAP8BuRcyNk+ZJv4AAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"static/media/header-bg-hero.656d635b.png\";","import { createBrowserHistory } from \"history\";\r\n\r\nexport default createBrowserHistory();\r\n","const hexToRgb = (input) => {\r\n input = input + \"\";\r\n input = input.replace(\"#\", \"\");\r\n let hexRegex = /[0-9A-Fa-f]/g;\r\n if (!hexRegex.test(input) || (input.length !== 3 && input.length !== 6)) {\r\n throw new Error(\"input is not a valid hex color.\");\r\n }\r\n if (input.length === 3) {\r\n let first = input[0];\r\n let second = input[1];\r\n let last = input[2];\r\n input = first + first + second + second + last + last;\r\n }\r\n input = input.toUpperCase(input);\r\n let first = input[0] + input[1];\r\n let second = input[2] + input[3];\r\n let last = input[4] + input[5];\r\n return (\r\n parseInt(first, 16) +\r\n \", \" +\r\n parseInt(second, 16) +\r\n \", \" +\r\n parseInt(last, 16)\r\n );\r\n};\r\n\r\n// ##############################\r\n// // // Variables - Styles that are used on more than one component\r\n// #############################\r\n\r\nconst drawerWidth = 260;\r\n//Deelopment\r\n\r\n// const unatorizedFooterLightColor = \"#FFF\";\r\n\r\n// const unatorizedFooterDarkColor = \"#444\";\r\n\r\n// const UnautorizedBodyBackground = \"white\";\r\n\r\n// const MenuItemsTextColor = \"black\";\r\n\r\n// const MenuFontFamily = `\"Rubik\", \"Helvetica\", sans-serif\"`;\r\n\r\n// const UnutorizedMenuColor = \"white\";\r\n\r\n// const primaryBackground = \"#f1c232\";\r\n\r\n// const primaryHover = \"#ffd966\";\r\n\r\n// const primaryBorderColor = \"#ffd966\";\r\n\r\n// const primarylayoutleftColor = \"#711471\";\r\n\r\n// const primarylayoutRightColor = \"#611461\";\r\n\r\n// const primaryDarklayoutLeftColor = \"#711471\";\r\n\r\n// const primaryDarklayoutRightColor = \"#430b43\";\r\n\r\n// const paralaxBackground = \"black\";\r\n\r\n// const autorizedPageHeaderFontFamily = `\"Rubik\", \"Helvetica\", sans-serif\"`;\r\n\r\n// const autorizedPageHeaderTextSize = \"17px\";\r\n// const MenuFontSize = \"17px\";\r\n\r\n// const autorizedPageHeaderTextColor = \"white\";\r\n\r\n// const autorizedPageHeaderBackgroundColor = \"#711471\";\r\n\r\n// const autorizedCardBackground = \"white\";\r\n\r\n// const autorizedBodyBackground = \"lightgrey\";\r\n\r\n// const AuthorizedMenuColor = \"white\";\r\n// const primaryTextColor = \"#711471\";\r\n\r\n// const UploadDocumentsURL = null;\r\n\r\n// const primaryTextColorActive = \"#711471\";\r\n\r\n// //textVariables\r\n// const HeaderTotal = \"Total Balance\";\r\n\r\n// const MainGridHeading1 = \"Description\";\r\n// const MainGridHeading2 = \"Account #\";\r\n// const MainGridHeading3 = \"Balance\";\r\n// const MainGridHeading4 = \"Arrears\";\r\n// const RighthandDetails1 = \"Account Number\";\r\n// const RighthandDetails2 = \"Opening Hours\";\r\n// const mobileNumberText = \"Mobile number\";\r\n// const socialSecurityNumberText = \"NIN\";\r\n\r\n// production;\r\n// {\r\nconst UploadDocumentsURL = `https://uploads.xrscollector.com/`;\r\n\r\nconst autorizedPageHeaderFontFamily = `\"Rubik\", \"Helvetica\", sans-serif\"`;\r\nconst autorizedPageHeaderTextSize = \"20px\";\r\nconst autorizedPageHeaderTextColor = \"white\";\r\nconst autorizedPageHeaderBackgroundColor =\r\n \"#C01431\";\r\nconst autorizedCardBackground = \"white\";\r\nconst autorizedBodyBackground = \"#f5f7f6\";\r\nconst AuthorizedMenuColor = \"white\";\r\nconst unatorizedFooterLightColor = \"#FFF\";\r\nconst unatorizedFooterDarkColor = \"#444\";\r\nconst UnautorizedBodyBackground = \"white\";\r\nconst MenuItemsTextColor = \"black\";\r\nconst MenuFontSize = \"17px\";\r\nconst MenuFontFamily = `\"Rubik\", \"Helvetica\", sans-serif\"`;\r\nconst paralaxBackground = \"black\";\r\nconst UnutorizedMenuColor = \"white\";\r\nconst primaryBackground = \"#C01431\";\r\nconst primaryHover = \"#88082D\";\r\nconst primaryBorderColor = \"#88082D\";\r\nconst primarylayoutleftColor = \"#C01431\";\r\nconst primarylayoutRightColor = \"#88082D\";\r\nconst primaryDarklayoutLeftColor = \"#88082D\";\r\nconst primaryDarklayoutRightColor = \"#88082D\";\r\nconst primaryTextColor = \"#C01431\";\r\nconst primaryTextColorActive = \"#88082D\";\r\n\r\n//textVariables\r\nconst HeaderTotal = \"#000000\";\r\n\r\nconst MainGridHeading1 = \"Description\";\r\nconst MainGridHeading2 = \"Member #\";\r\nconst MainGridHeading3 = \"Balance\";\r\nconst MainGridHeading4 = \"Arrears\";\r\nconst RighthandDetails1 = \"Member Number\";\r\nconst RighthandDetails2 = \"Member Solution Contact Hours\";\r\nconst mobileNumberText = \"Mobile number\";\r\nconst socialSecurityNumberText = \"SSN\";\r\n\r\ndocument.documentElement.style.setProperty(\r\n \"--primary-background\",\r\n primarylayoutRightColor\r\n);\r\ndocument.documentElement.style.setProperty(\r\n \"--primary-border-color\",\r\n primarylayoutleftColor\r\n);\r\n\r\nconst textVariables = [\r\n HeaderTotal,\r\n MainGridHeading1,\r\n MainGridHeading2,\r\n MainGridHeading3,\r\n MainGridHeading4,\r\n RighthandDetails1,\r\n RighthandDetails2,\r\n mobileNumberText,\r\n socialSecurityNumberText,\r\n];\r\nconst primaryColor = [\r\n primaryBorderColor,\r\n primaryBackground,\r\n primaryHover,\r\n paralaxBackground,\r\n primarylayoutleftColor,\r\n primarylayoutRightColor,\r\n UnutorizedMenuColor,\r\n AuthorizedMenuColor,\r\n MenuFontFamily,\r\n MenuFontSize,\r\n MenuItemsTextColor,\r\n UnautorizedBodyBackground,\r\n unatorizedFooterDarkColor,\r\n unatorizedFooterLightColor,\r\n autorizedBodyBackground,\r\n autorizedPageHeaderBackgroundColor,\r\n autorizedPageHeaderTextColor,\r\n autorizedPageHeaderFontFamily,\r\n autorizedPageHeaderTextSize,\r\n autorizedCardBackground,\r\n primaryTextColor,\r\n primaryTextColorActive,\r\n];\r\nconst primaryDarkColor = [\r\n \"#005380\",\r\n \"#005380\",\r\n \"#005380\",\r\n \"#005380\",\r\n primaryDarklayoutLeftColor,\r\n primaryDarklayoutRightColor,\r\n];\r\nconst secondaryColor = [\"#fafafa\"];\r\nconst warningColor = [\r\n \"#ff9800\",\r\n \"#ffa726\",\r\n \"#fb8c00\",\r\n \"#ffa21a\",\r\n \"#fcf8e3\",\r\n \"#faf2cc\",\r\n \"#ffe0b2\",\r\n \"#ffb74d\",\r\n];\r\nconst dangerColor = [\r\n \"#f44336\",\r\n \"#ef5350\",\r\n \"#e53935\",\r\n \"#f55a4e\",\r\n \"#f2dede\",\r\n \"#ebcccc\",\r\n \"ef9a9a\",\r\n \"#ef5350\",\r\n];\r\nconst successColor = [\r\n \"#4caf50\",\r\n \"#66bb6a\",\r\n \"#43a047\",\r\n \"#5cb860\",\r\n \"#dff0d8\",\r\n \"#d0e9c6\",\r\n \"#a5d6a7\",\r\n \"#66bb6a\",\r\n];\r\nconst infoColor = [\r\n \"#00acc1\",\r\n \"#26c6da\",\r\n \"#00acc1\",\r\n \"#00d3ee\",\r\n \"#d9edf7\",\r\n \"#c4e3f3\",\r\n \"#b2ebf2\",\r\n \"#4dd0e1\",\r\n];\r\nconst roseColor = [\"#e91e63\", \"#ec407a\", \"#d81b60\", \"#f8bbd0\", \"#f06292\"];\r\nconst grayColor = [\r\n \"#999\",\r\n \"#3C4858\",\r\n \"#eee\",\r\n \"#343434\",\r\n \"#585858\",\r\n \"#232323\",\r\n \"#ddd\",\r\n \"#6c757d\",\r\n \"#333\",\r\n \"#212121\",\r\n \"#777\",\r\n \"#D2D2D2\",\r\n \"#AAA\",\r\n \"#495057\",\r\n \"#e5e5e5\",\r\n \"#555\",\r\n \"#f9f9f9\",\r\n \"#ccc\",\r\n \"#444\",\r\n \"#f2f2f2\",\r\n \"#89229b\",\r\n \"#c0c1c2\",\r\n \"#9a9a9a\",\r\n \"#f5f5f5\",\r\n \"#505050\",\r\n \"#1f1f1f\",\r\n];\r\n\r\nconst whiteColor = \"#FFF\";\r\nconst blackColor = \"#000\";\r\nconst twitterColor = \"#55acee\";\r\nconst facebookColor = \"#3b5998\";\r\nconst googleColor = \"#dd4b39\";\r\nconst linkedinColor = \"#828fa2\";\r\nconst pinterestColor = \"#cc2127\";\r\nconst youtubeColor = \"#e52d27\";\r\nconst tumblrColor = \"#35465c\";\r\nconst behanceColor = \"#1769ff\";\r\nconst dribbbleColor = \"#ea4c89\";\r\nconst redditColor = \"#ff4500\";\r\nconst instagramColor = \"#125688\";\r\n\r\nconst transition = {\r\n transition: \"all 0.33s cubic-bezier(0.685, 0.0473, 0.346, 1)\",\r\n};\r\n\r\nconst containerFluid = {\r\n paddingRight: \"10px\",\r\n paddingLeft: \"10px\",\r\n marginRight: \"auto\",\r\n marginLeft: \"auto\",\r\n width: \"100%\",\r\n};\r\nconst blackColorText = {\r\n color: { blackColor },\r\n};\r\nconst container = {\r\n ...containerFluid,\r\n \"@media (min-width: 576px)\": {\r\n maxWidth: \"540px\",\r\n },\r\n \"@media (min-width: 768px)\": {\r\n maxWidth: \"720px\",\r\n },\r\n \"@media (min-width: 992px)\": {\r\n maxWidth: \"960px\",\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n maxWidth: \"1140px\",\r\n },\r\n};\r\n\r\nconst card = {\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n width: \"100%\",\r\n margin: \"25px 0\",\r\n boxShadow: \"0 1px 4px 0 rgba(\" + hexToRgb(blackColor) + \", 0.14)\",\r\n borderRadius: \"3px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n background: whiteColor,\r\n};\r\n\r\nconst defaultFont = {\r\n fontFamily: '\"Rubik\", \"Helvetica\", sans-serif',\r\n fontWeight: \"300\",\r\n lineHeight: \"1.5em\",\r\n};\r\n\r\nconst boxShadow = {\r\n boxShadow:\r\n \"0 10px 30px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.42), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n};\r\nconst primaryBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst infoBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst successBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst warningBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst dangerBoxShadow = {\r\n boxShadow:\r\n \"0 12px 20px -10px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.28), 0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 8px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2)\",\r\n};\r\nconst roseBoxShadow = {\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.4)\",\r\n};\r\n\r\nconst warningCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + warningColor[1] + \", \" + warningColor[2] + \")\",\r\n ...warningBoxShadow,\r\n};\r\nconst successCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + successColor[1] + \", \" + successColor[2] + \")\",\r\n ...successBoxShadow,\r\n};\r\nconst dangerCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + dangerColor[1] + \", \" + dangerColor[2] + \")\",\r\n ...dangerBoxShadow,\r\n};\r\nconst infoCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + infoColor[1] + \", \" + infoColor[2] + \")\",\r\n ...infoBoxShadow,\r\n};\r\nconst primaryCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + primaryColor[1] + \", \" + primaryColor[2] + \")\",\r\n ...primaryBoxShadow,\r\n};\r\nconst roseCardHeader = {\r\n color: whiteColor,\r\n background:\r\n \"linear-gradient(60deg, \" + roseColor[1] + \", \" + roseColor[2] + \")\",\r\n ...roseBoxShadow,\r\n};\r\nconst cardActions = {\r\n margin: \"0 20px 10px\",\r\n paddingTop: \"10px\",\r\n borderTop: \"1px solid \" + grayColor[2],\r\n height: \"auto\",\r\n ...defaultFont,\r\n};\r\n\r\nconst cardHeader = {\r\n margin: \"-30px 15px 0\",\r\n borderRadius: \"3px\",\r\n padding: \"15px\",\r\n};\r\n\r\nconst defaultBoxShadow = {\r\n border: \"0\",\r\n borderRadius: \"3px\",\r\n boxShadow:\r\n \"0 10px 20px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.42), 0 3px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n padding: \"10px 0\",\r\n transition: \"all 150ms ease 0s\",\r\n};\r\n\r\nconst title = {\r\n color: grayColor[1],\r\n textDecoration: \"none\",\r\n fontWeight: \"400\",\r\n marginTop: \"30px\",\r\n marginBottom: \"25px\",\r\n minHeight: \"32px\",\r\n fontFamily: `\"Arial\"`,\r\n};\r\n\r\nconst cardTitle = {\r\n \"&, & a\": {\r\n ...title,\r\n marginTop: \".625rem\",\r\n marginBottom: \"0.75rem\",\r\n minHeight: \"auto\",\r\n },\r\n};\r\n\r\nconst cardLink = {\r\n \"& + $cardLink\": {\r\n marginLeft: \"1.25rem\",\r\n },\r\n};\r\n\r\nconst cardSubtitle = {\r\n marginBottom: \"0\",\r\n marginTop: \"-.375rem\",\r\n};\r\n\r\nconst mainresposive = {\r\n background: grayColor,\r\n};\r\n\r\nconst main = {\r\n background: whiteColor,\r\n position: \"relative\",\r\n padding: 50,\r\n zIndex: \"3\",\r\n};\r\n\r\nconst mainbuttons = {\r\n background: whiteColor,\r\n position: \"relative\",\r\n padding: 10,\r\n zIndex: \"3\",\r\n};\r\n\r\nconst mainRaised = {\r\n \"@media (max-width: 576px)\": {\r\n marginTop: \"0px\",\r\n },\r\n \"@media (max-width: 830px)\": {\r\n marginLeft: \"0x\",\r\n marginRight: \"0px\",\r\n },\r\n margin: \"0px 0px 0px\",\r\n borderRadius: \"0px\",\r\n boxShadow:\r\n \"0 16px 24px 2px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 6px 30px 5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n};\r\n\r\nconst section = {\r\n backgroundPosition: \"50%\",\r\n backgroundSize: \"cover\",\r\n};\r\n\r\nconst sectionDark = {\r\n backgroundColor: grayColor[3],\r\n background:\r\n \"radial-gradient(ellipse at center,\" +\r\n grayColor[4] +\r\n \" 0,\" +\r\n grayColor[5] +\r\n \" 100%)\",\r\n};\r\n\r\nconst sectionDescription = {\r\n marginTop: \"130px\",\r\n};\r\n\r\nconst description = {\r\n color: grayColor[0],\r\n};\r\n\r\nconst mlAuto = {\r\n marginLeft: \"auto\",\r\n};\r\n\r\nconst mrAuto = {\r\n marginRight: \"auto\",\r\n};\r\n\r\nconst btnLink = {\r\n backgroundColor: \"transparent\",\r\n boxShdow: \"none\",\r\n marginTop: \"5px\",\r\n marginBottom: \"5px\",\r\n};\r\nconst coloredShadow = {\r\n // some jss/css to make the cards look a bit better on Internet Explorer\r\n \"@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)\": {\r\n display: \"none !important\",\r\n },\r\n transform: \"scale(0.94)\",\r\n top: \"12px\",\r\n filter: \"blur(12px)\",\r\n position: \"absolute\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n backgroundSize: \"cover\",\r\n zIndex: \"-1\",\r\n transition: \"opacity .45s\",\r\n opacity: \"0\",\r\n};\r\n\r\nexport {\r\n //variables\r\n textVariables,\r\n UploadDocumentsURL,\r\n drawerWidth,\r\n transition,\r\n mainbuttons,\r\n container,\r\n containerFluid,\r\n boxShadow,\r\n card,\r\n defaultFont,\r\n primaryColor,\r\n primaryDarkColor,\r\n secondaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n whiteColor,\r\n blackColor,\r\n twitterColor,\r\n facebookColor,\r\n googleColor,\r\n linkedinColor,\r\n pinterestColor,\r\n youtubeColor,\r\n tumblrColor,\r\n behanceColor,\r\n dribbbleColor,\r\n redditColor,\r\n instagramColor,\r\n primaryBoxShadow,\r\n infoBoxShadow,\r\n successBoxShadow,\r\n warningBoxShadow,\r\n dangerBoxShadow,\r\n roseBoxShadow,\r\n warningCardHeader,\r\n successCardHeader,\r\n dangerCardHeader,\r\n infoCardHeader,\r\n primaryCardHeader,\r\n roseCardHeader,\r\n cardActions,\r\n cardHeader,\r\n defaultBoxShadow,\r\n blackColorText,\r\n title,\r\n cardTitle,\r\n description,\r\n cardLink,\r\n cardSubtitle,\r\n main,\r\n mainRaised,\r\n mainresposive,\r\n section,\r\n sectionDark,\r\n sectionDescription,\r\n mlAuto,\r\n mrAuto,\r\n btnLink,\r\n coloredShadow,\r\n hexToRgb,\r\n};\r\n","import {\r\n grayColor,\r\n roseColor,\r\n primaryColor,\r\n secondaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n blackColor,\r\n whiteColor,\r\n twitterColor,\r\n facebookColor,\r\n googleColor,\r\n linkedinColor,\r\n pinterestColor,\r\n youtubeColor,\r\n tumblrColor,\r\n behanceColor,\r\n dribbbleColor,\r\n redditColor,\r\n instagramColor,\r\n hexToRgb\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst buttonStyle = {\r\n button: {\r\n minHeight: \"auto\",\r\n minWidth: \"auto\",\r\n backgroundColor: grayColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.12)\",\r\n border: \"none\",\r\n borderRadius: \"3px\",\r\n position: \"relative\",\r\n padding: \"15px 15px\",\r\n margin: \".3125rem 1px\",\r\n fontSize: \"14px\",\r\n fontWeight: \"400\",\r\n textTransform: \"uppercase\",\r\n letterSpacing: \"0\",\r\n willChange: \"box-shadow, transform\",\r\n transition:\r\n \"box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1)\",\r\n lineHeight: \"1.42857143\",\r\n textAlign: \"center\",\r\n whiteSpace: \"nowrap\",\r\n verticalAlign: \"middle\",\r\n touchAction: \"manipulation\",\r\n cursor: \"pointer\",\r\n \"&:hover,&:focus\": {\r\n color: whiteColor,\r\n backgroundColor: grayColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[0]) +\r\n \", 0.2)\"\r\n },\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n position: \"relative\",\r\n display: \"inline-block\",\r\n top: \"0\",\r\n marginTop: \"-1em\",\r\n marginBottom: \"-1em\",\r\n fontSize: \"1.1rem\",\r\n marginRight: \"4px\",\r\n verticalAlign: \"middle\"\r\n },\r\n \"& svg\": {\r\n position: \"relative\",\r\n display: \"inline-block\",\r\n top: \"0\",\r\n width: \"18px\",\r\n height: \"18px\",\r\n marginRight: \"4px\",\r\n verticalAlign: \"middle\"\r\n },\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n marginTop: \"0px\",\r\n marginRight: \"0px\",\r\n position: \"absolute\",\r\n width: \"100%\",\r\n transform: \"none\",\r\n left: \"0px\",\r\n top: \"0px\",\r\n height: \"100%\",\r\n lineHeight: \"41px\",\r\n fontSize: \"20px\"\r\n }\r\n }\r\n },\r\n\r\n fullWidth: {\r\n width: \"100%\"\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[1],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[2],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(primaryColor[2]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(primaryColor[2]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n secondary: {\r\n color: \"rgba(\" + hexToRgb(blackColor) + \",.87)\",\r\n backgroundColor: secondaryColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.12)\",\r\n \"&:hover,&:focus\": {\r\n boxShdow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.42), 0 4px 23px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \",.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(secondaryColor[0]) +\r\n \",.2)\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \",.87)\",\r\n backgroundColor: grayColor[19]\r\n }\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: infoColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: successColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: warningColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dangerColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: roseColor[0],\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n white: {\r\n \"&,&:focus,&:hover\": {\r\n backgroundColor: whiteColor,\r\n color: grayColor[0]\r\n }\r\n },\r\n twitter: {\r\n backgroundColor: twitterColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus,&:visited\": {\r\n backgroundColor: twitterColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(twitterColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n facebook: {\r\n backgroundColor: facebookColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: facebookColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(facebookColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n google: {\r\n backgroundColor: googleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: googleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(googleColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n linkedin: {\r\n backgroundColor: linkedinColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: linkedinColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(linkedinColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n pinterest: {\r\n backgroundColor: pinterestColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: pinterestColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(pinterestColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n youtube: {\r\n backgroundColor: youtubeColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: youtubeColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(youtubeColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n tumblr: {\r\n backgroundColor: tumblrColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: tumblrColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(tumblrColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n github: {\r\n backgroundColor: grayColor[8],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: grayColor[8],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[8]) +\r\n \", 0.2)\"\r\n }\r\n },\r\n behance: {\r\n backgroundColor: behanceColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: behanceColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(behanceColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n dribbble: {\r\n backgroundColor: dribbbleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dribbbleColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(dribbbleColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n reddit: {\r\n backgroundColor: redditColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: redditColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(redditColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n instagram: {\r\n backgroundColor: instagramColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.12)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: instagramColor,\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(instagramColor) +\r\n \", 0.2)\"\r\n }\r\n },\r\n simple: {\r\n \"&,&:focus,&:hover\": {\r\n color: whiteColor,\r\n background: \"transparent\",\r\n boxShadow: \"none\"\r\n },\r\n \"&$primary\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: primaryColor[0]\r\n }\r\n },\r\n \"&$info\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: infoColor[0]\r\n }\r\n },\r\n \"&$success\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: successColor[0]\r\n }\r\n },\r\n \"&$warning\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: warningColor[0]\r\n }\r\n },\r\n \"&$rose\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: roseColor[0]\r\n }\r\n },\r\n \"&$danger\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: dangerColor[0]\r\n }\r\n },\r\n \"&$twitter\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: twitterColor\r\n }\r\n },\r\n \"&$facebook\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: facebookColor\r\n }\r\n },\r\n \"&$google\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: googleColor\r\n }\r\n },\r\n \"&$linkedin\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: linkedinColor\r\n }\r\n },\r\n \"&$pinterest\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: pinterestColor\r\n }\r\n },\r\n \"&$youtube\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: youtubeColor\r\n }\r\n },\r\n \"&$tumblr\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: tumblrColor\r\n }\r\n },\r\n \"&$github\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: grayColor[8]\r\n }\r\n },\r\n \"&$behance\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: behanceColor\r\n }\r\n },\r\n \"&$dribbble\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: dribbbleColor\r\n }\r\n },\r\n \"&$reddit\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: redditColor\r\n }\r\n },\r\n \"&$instagram\": {\r\n \"&,&:focus,&:hover,&:visited\": {\r\n color: instagramColor\r\n }\r\n }\r\n },\r\n transparent: {\r\n \"&,&:focus,&:hover\": {\r\n color: \"inherit\",\r\n background: \"transparent\",\r\n boxShadow: \"none\"\r\n }\r\n },\r\n disabled: {\r\n opacity: \"0.65\",\r\n pointerEvents: \"none\"\r\n },\r\n lg: {\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginTop: \"-4px\"\r\n }\r\n },\r\n padding: \"1.125rem 2.25rem\",\r\n fontSize: \"0.875rem\",\r\n lineHeight: \"1.333333\",\r\n borderRadius: \"0.2rem\"\r\n },\r\n sm: {\r\n \"&$justIcon\": {\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginTop: \"1px\"\r\n }\r\n },\r\n padding: \"0.40625rem 1.25rem\",\r\n fontSize: \"0.6875rem\",\r\n lineHeight: \"1.5\",\r\n borderRadius: \"0.2rem\"\r\n },\r\n round: {\r\n borderRadius: \"25px\"\r\n },\r\n block: {\r\n width: \"100% !important\"\r\n },\r\n link: {\r\n \"&,&:hover,&:focus\": {\r\n backgroundColor: \"transparent\",\r\n color: grayColor[0],\r\n boxShadow: \"none\"\r\n }\r\n },\r\n justIcon: {\r\n paddingLeft: \"12px\",\r\n paddingRight: \"12px\",\r\n fontSize: \"20px\",\r\n height: \"41px\",\r\n minWidth: \"41px\",\r\n width: \"41px\",\r\n \"& .fab,& .fas,& .far,& .fal,& svg,& .material-icons\": {\r\n marginRight: \"0px\"\r\n },\r\n \"&$lg\": {\r\n height: \"57px\",\r\n minWidth: \"57px\",\r\n width: \"57px\",\r\n lineHeight: \"56px\",\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n fontSize: \"32px\",\r\n lineHeight: \"56px\"\r\n },\r\n \"& svg\": {\r\n width: \"32px\",\r\n height: \"32px\"\r\n }\r\n },\r\n \"&$sm\": {\r\n height: \"30px\",\r\n minWidth: \"30px\",\r\n width: \"30px\",\r\n \"& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n fontSize: \"17px\",\r\n lineHeight: \"29px\"\r\n },\r\n \"& svg\": {\r\n width: \"17px\",\r\n height: \"17px\"\r\n }\r\n }\r\n },\r\n fileButton: {\r\n // display: \"inline-block\"\r\n }\r\n};\r\n\r\nexport default buttonStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Button from \"@material-ui/core/Button\";\r\n\r\nimport styles from \"assets/jss/xrs/components/buttonStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nconst RegularButton = React.forwardRef((props, ref) => {\r\n const {\r\n color,\r\n round,\r\n children,\r\n fullWidth,\r\n disabled,\r\n simple,\r\n size,\r\n block,\r\n link,\r\n justIcon,\r\n fileButton,\r\n className,\r\n ...rest\r\n } = props;\r\n const classes = useStyles();\r\n const btnClasses = classNames({\r\n [classes.button]: true,\r\n [classes[size]]: size,\r\n [classes[color]]: color,\r\n [classes.round]: round,\r\n [classes.fullWidth]: fullWidth,\r\n [classes.disabled]: disabled,\r\n [classes.simple]: simple,\r\n [classes.block]: block,\r\n [classes.link]: link,\r\n [classes.justIcon]: justIcon,\r\n [classes.fileButton]: fileButton,\r\n [className]: className\r\n });\r\n return (\r\n \r\n );\r\n});\r\n\r\nRegularButton.propTypes = {\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"secondary\",\r\n \"info\",\r\n \"dark\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\",\r\n \"white\",\r\n \"twitter\",\r\n \"facebook\",\r\n \"google\",\r\n \"linkedin\",\r\n \"pinterest\",\r\n \"youtube\",\r\n \"tumblr\",\r\n \"github\",\r\n \"behance\",\r\n \"dribbble\",\r\n \"reddit\",\r\n \"instagram\",\r\n \"transparent\"\r\n ]),\r\n size: PropTypes.oneOf([\"sm\", \"lg\"]),\r\n simple: PropTypes.bool,\r\n round: PropTypes.bool,\r\n fullWidth: PropTypes.bool,\r\n disabled: PropTypes.bool,\r\n block: PropTypes.bool,\r\n link: PropTypes.bool,\r\n justIcon: PropTypes.bool,\r\n fileButton: PropTypes.bool,\r\n children: PropTypes.node,\r\n className: PropTypes.string\r\n};\r\n\r\nexport default RegularButton;\r\n","import React from \"react\";\r\n\r\nconst Context = React.createContext();\r\n\r\nexport default Context;\r\n","import {\r\n container,\r\n title,\r\n main,\r\n whiteColor,\r\n mainRaised,\r\n} from \"assets/jss/xrs.js\";\r\nimport { blackColor, primaryColor } from \"assets/jss/xrs\";\r\nimport { fontStyle } from \"@material-ui/system\";\r\n\r\nconst landingPageStyle = {\r\n container: {\r\n color: blackColor,\r\n ...container,\r\n zIndex: \"2\",\r\n },\r\n RightAlign: {\r\n textAlign: \"right\",\r\n position: \"right\",\r\n },\r\n CenterAlign: {\r\n textAlign: \"center\",\r\n position: \"ricenterght\",\r\n },\r\n LinkHome: {\r\n color: whiteColor,\r\n textDecoration: \"underline\",\r\n },\r\n middle: {\r\n \"@media (min-width: 576px)\": {\r\n paddingLeft: 10,\r\n },\r\n \"@media (min-width: 768px)\": {\r\n paddingLeft: 30,\r\n },\r\n \"@media (min-width: 992px)\": {\r\n paddingLeft: 50,\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n paddingLeft: 120,\r\n },\r\n },\r\n middleInput: {\r\n \"@media (min-width: 576px)\": {\r\n paddingLeft: 10,\r\n paddingRight: 10,\r\n },\r\n \"@media (min-width: 768px)\": {\r\n paddingLeft: 30,\r\n paddingRight: 30,\r\n },\r\n \"@media (min-width: 992px)\": {\r\n paddingLeft: 50,\r\n paddingRight: 50,\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n paddingLeft: 120,\r\n paddingRight: 120,\r\n },\r\n },\r\n middleright: {\r\n paddingLeft: 20,\r\n },\r\n centerText: {\r\n textAlign: \"center\",\r\n fontWeight: 400,\r\n fontSize: 14,\r\n },\r\n digitText: {\r\n \"@media (min-width: 300px)\": {\r\n textAlign: \"center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 400px)\": {\r\n textAlign: \"center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 576px)\": {\r\n textAlign: \"center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 768px)\": {\r\n textAlign: \"center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 992px)\": {\r\n textAlign: \"center\",\r\n textAlign: \"-webkit-center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n textAlign: \"center\",\r\n textAlign: \"-webkit-center\",\r\n wordBreak: \"break-word\",\r\n fontSize: 14,\r\n },\r\n },\r\n BoldText: {\r\n fontWeight: 400,\r\n },\r\n iFrameTop: {\r\n marginTop: 30,\r\n borderRadius: 3,\r\n border: 0,\r\n backgroundColor: \"white\",\r\n },\r\n centerTextBlue: {\r\n textAlign: \"center\",\r\n fontWeight: 400,\r\n fontSize: 18,\r\n color: \"rgba(0, 105, 162, 1)\",\r\n },\r\n textLabel: {\r\n fontWeight: 600,\r\n },\r\n centerTextTitle: {\r\n textAlign: \"center\",\r\n fontWeight: 400,\r\n fontSize: 30,\r\n },\r\n centerTextSubTitle: {\r\n textAlign: \"center\",\r\n fontWeight: 400,\r\n fontSize: 16,\r\n opacity: 0.5,\r\n },\r\n whiteText: {\r\n fontWeight: 400,\r\n fontSize: 14,\r\n color: whiteColor,\r\n },\r\n centerOnlyText: {\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 32,\r\n },\r\n centerButton: {\r\n textAlign: \"center\",\r\n fontSize: 16,\r\n fontFamily: '\"Rubik\", \"Helvetica\", sans-serif',\r\n fontWeight: \"400\",\r\n lineHeight: \"1.5em\",\r\n },\r\n\r\n cardRadius: {\r\n borderRadius: 4,\r\n margin: 0,\r\n padding: \"1px\",\r\n paddingBottom: \"1px !important\",\r\n },\r\n control: {\r\n margin: 5,\r\n },\r\n controlWhite: {\r\n margin: 0,\r\n height: 40,\r\n borderRadius: 2,\r\n backgroundColor: whiteColor,\r\n color: \"blackColor\",\r\n },\r\n footerParagraph: {\r\n fontSize: 14,\r\n color: \"#fff\",\r\n fontWeight: 400,\r\n },\r\n footerTitle: {\r\n fontSize: 26,\r\n color: \"#fff\",\r\n fontWeight: 400,\r\n },\r\n whiteTextField: {\r\n backgroundColor: \"white\",\r\n },\r\n paper: {\r\n textAlign: \"center\",\r\n backgroundColor: \"yellow\",\r\n },\r\n paperLeft: {\r\n textAlign: \"Left\",\r\n },\r\n title: {\r\n ...title,\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n marginTop: \"0px\",\r\n minHeight: \"32px\",\r\n color: whiteColor,\r\n textDecoration: \"none\",\r\n },\r\n subtitle: {\r\n fontSize: \"1.313rem\",\r\n maxWidth: \"500px\",\r\n margin: \"10px auto 0\",\r\n },\r\n main: {\r\n ...main,\r\n backgroundColor: primaryColor[11],\r\n },\r\n linkButton: {\r\n padding: \"30px 30px\",\r\n },\r\n mainRaised: {\r\n ...mainRaised,\r\n },\r\n\r\n login: {\r\n backgroundColor: \"transparent\",\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n block: {\r\n color: \"inherit\",\r\n padding: \"0.9375rem\",\r\n fontWeight: \"500\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n borderRadius: \"3px\",\r\n textDecoration: \"none\",\r\n position: \"relative\",\r\n display: \"block\",\r\n },\r\n inlineBlock: {\r\n display: \"inline-block\",\r\n padding: \"0px\",\r\n width: \"auto\",\r\n },\r\n shieldText: {\r\n \"@media (min-width: 300px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 16,\r\n fontWeight: 400,\r\n\r\n display: \"inline-flex\",\r\n alignItems: \"center\",\r\n },\r\n \"@media (min-width: 400px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 18,\r\n fontWeight: 400,\r\n\r\n display: \"inline-flex\",\r\n alignItems: \"center\",\r\n },\r\n \"@media (min-width: 576px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 20,\r\n fontWeight: 400,\r\n\r\n display: \"inline-flex\",\r\n alignItems: \"center\",\r\n },\r\n \"@media (min-width: 768px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 20,\r\n fontWeight: 400,\r\n },\r\n \"@media (min-width: 992px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 20,\r\n fontWeight: 400,\r\n paddingTop: 7,\r\n },\r\n \"@media (min-width: 1200px)\": {\r\n wordBreak: \"break-word\",\r\n fontSize: 20,\r\n fontWeight: 400,\r\n paddingTop: 7,\r\n },\r\n },\r\n list: {\r\n marginBottom: \"0\",\r\n padding: \"0\",\r\n marginTop: \"0\",\r\n },\r\n left: {\r\n float: \"left!important\",\r\n display: \"block\",\r\n },\r\n right: {\r\n padding: \"15px 0\",\r\n margin: \"0\",\r\n float: \"right\",\r\n },\r\n icon: {\r\n width: \"18px\",\r\n height: \"18px\",\r\n top: \"3px\",\r\n position: \"relative\",\r\n },\r\n headerLoggedInColor: {\r\n backgroundColor: primaryColor[7],\r\n },\r\n bodyLoggedIn: {\r\n backgroundColor: primaryColor[14],\r\n },\r\n};\r\n\r\nexport default landingPageStyle;\r\n","export const SUCCESS = \"SUCCESS\";\r\nexport const IFRAME_URL = \"IFRAME_URL\";\r\n\r\nexport const FAILURE = \"FAILURE\";\r\n\r\nexport const LOGIN_SUCCESS = \"LOGIN_SUCCESS\";\r\n\r\nexport const LOGIN_FAILURE = \"LOGIN_FAILURE\";\r\n\r\nexport const ADD_PROFILE = \"ADD_PROFILE\";\r\n\r\nexport const REMOVE_PROFILE = \"REMOVE_PROFILE\";\r\n\r\nexport const USER_INPUT_CHANGE = \"USER_INPUT_CHANGE\";\r\n\r\nexport const USER_INPUT_SUBMIT = \"USER_INPUT_SUBMIT\";\r\n\r\nexport const SET_CUSTOMER = \"SET_CUSTOMER\";\r\n\r\nexport const SET_ACCOUNTS = \"SET_ACCOUNTS\";\r\n\r\nexport const REGISTRTION_METHOD = \"REGISTRTION_METHOD\";\r\n\r\nexport const SET_CALLBACKS = \"SET_CALLBACKS\";\r\n\r\nexport const SET_SITE = \"SET_SITE\";\r\n\r\nexport const SET_OFFER = \"SET_OFFER\";\r\n\r\nexport const SET_MENU = \"SET_MENU\";\r\n\r\nexport const SET_DRAWER = \"SET_DRAWER\";\r\n\r\nexport const SET_DRAWER1 = \"SET_DRAWER1\";\r\n\r\nexport const SET_DRAWER2 = \"SET_DRAWER2\";\r\n\r\nexport const SET_DRAWER3 = \"SET_DRAWER3\";\r\n\r\nexport const SET_NUMACCOUNTS = \"SET_NUMACCOUNTS\";\r\n\r\nexport const SET_SELECTEDACCOUNT = \"SET_SELECTEDACCOUNT\";\r\n\r\nexport const SET_SESSIONTIMEOUT = \"SET_SESSIONTIMEOUT\";\r\n\r\nexport const SET_OVERALLTIMEOUT = \"SET_OVERALLTIMEOUT\";\r\n\r\nexport const SET_STARTOVERALLTIMEOUT = \"SET_STARTOVERALLTIMEOUT\";\r\n\r\nexport const PAYMENT_STATUS_FORM = \"PAYMENT_STATUS_FORM\";\r\n","import * as ACTION_TYPES from \"./action_types\";\r\n\r\nexport const SUCCESS = {\r\n type: ACTION_TYPES.SUCCESS,\r\n};\r\n\r\nexport const FAILURE = {\r\n type: ACTION_TYPES.FAILURE,\r\n};\r\n\r\nexport const success = () => {\r\n return {\r\n type: ACTION_TYPES.SUCCESS,\r\n };\r\n};\r\n\r\nexport const failure = () => {\r\n return {\r\n type: ACTION_TYPES.FAILURE,\r\n };\r\n};\r\n\r\nexport const login_success = () => {\r\n return {\r\n type: ACTION_TYPES.LOGIN_SUCCESS,\r\n };\r\n};\r\n\r\nexport const login_failure = () => {\r\n return {\r\n type: ACTION_TYPES.LOGIN_FAILURE,\r\n };\r\n};\r\n\r\nexport const add_profile = (profile) => {\r\n return {\r\n type: ACTION_TYPES.ADD_PROFILE,\r\n payload: profile,\r\n };\r\n};\r\n\r\nexport const set_Customer = (customer) => {\r\n return {\r\n type: ACTION_TYPES.SET_CUSTOMER,\r\n payload: customer,\r\n };\r\n};\r\n\r\nexport const set_Callbacks = (callbacks) => {\r\n return {\r\n type: ACTION_TYPES.SET_CALLBACKS,\r\n payload: callbacks,\r\n };\r\n};\r\n\r\nexport const set_Site = (site) => {\r\n return {\r\n type: ACTION_TYPES.SET_SITE,\r\n payload: site,\r\n };\r\n};\r\n\r\nexport const set_Drawer = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_DRAWER,\r\n payload: state,\r\n };\r\n};\r\nexport const set_Drawer1 = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_DRAWER,\r\n payload: state,\r\n num: 1,\r\n };\r\n};\r\nexport const set_Drawer2 = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_DRAWER,\r\n payload: state,\r\n num: 2,\r\n };\r\n};\r\nexport const set_selectedAccount = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_SELECTEDACCOUNT,\r\n payload: state,\r\n };\r\n};\r\nexport const set_Drawer3 = (state) => {\r\n return {\r\n type: ACTION_TYPES.SET_DRAWER,\r\n payload: state,\r\n num: 3,\r\n };\r\n};\r\n\r\nexport const set_Offer = (offer) => {\r\n return {\r\n type: ACTION_TYPES.SET_OFFER,\r\n payload: offer,\r\n };\r\n};\r\n\r\nexport const set_Accounts = (accounts) => {\r\n return {\r\n type: ACTION_TYPES.SET_ACCOUNTS,\r\n payload: accounts,\r\n };\r\n};\r\nexport const set_Registration_method = (payload) => {\r\n return {\r\n type: ACTION_TYPES.REGISTRTION_METHOD,\r\n payload: payload,\r\n };\r\n};\r\n\r\nexport const remove_profile = () => {\r\n return {\r\n type: ACTION_TYPES.REMOVE_PROFILE,\r\n };\r\n};\r\n\r\nexport const user_input_change = (text) => {\r\n return {\r\n type: ACTION_TYPES.USER_INPUT_CHANGE,\r\n payload: text,\r\n };\r\n};\r\n\r\nexport const user_input_submit = (text) => {\r\n return {\r\n type: ACTION_TYPES.USER_INPUT_SUBMIT,\r\n payload: text,\r\n };\r\n};\r\nexport const set_num_accounts = (text) => {\r\n return {\r\n type: ACTION_TYPES.SET_NUMACCOUNTS,\r\n payload: text,\r\n };\r\n};\r\nexport const set_menu = (menu) => {\r\n return {\r\n type: ACTION_TYPES.SET_MENU,\r\n payload: menu,\r\n };\r\n};\r\nexport const set_sessiontimeout = (time) => {\r\n return {\r\n type: ACTION_TYPES.SET_SESSIONTIMEOUT,\r\n payload: time,\r\n };\r\n};\r\nexport const set_overalltimeout = (time) => {\r\n return {\r\n type: ACTION_TYPES.SET_OVERALLTIMEOUT,\r\n payload: time,\r\n };\r\n};\r\nexport const set_startoveralltimeout = (time) => {\r\n return {\r\n type: ACTION_TYPES.SET_STARTOVERALLTIMEOUT,\r\n payload: time,\r\n };\r\n};\r\nexport const set_iframeUrl = (url) => {\r\n return {\r\n type: ACTION_TYPES.IFRAME_URL,\r\n payload: url,\r\n };\r\n};\r\nexport const set_PaymentStatusFrom = (status) => {\r\n return {\r\n type: ACTION_TYPES.PAYMENT_STATUS_FORM,\r\n payload: status,\r\n };\r\n};\r\n","export const API_ACTION_TYPES = {\r\n ERROR: \"ERROR\",\r\n LOADING: \"LOADING\",\r\n ERROR_MESSAGE: \"ERROR_MESSAGE\",\r\n CLEAR: \"CLEAR\",\r\n CODE: \"CODE\",\r\n};\r\n\r\nexport const GET_SITE_DETAILS_ACTION_TYPES = {\r\n UPLOAD_IMAGE_TO_BUDGET: \"UPLOAD_IMAGE_TO_BUDGET\",\r\n CONVENIENCE_FEE: \"CONVENIENCE_FEE\",\r\n DEPT_NUM: \"DEPT_NUM\",\r\n LOGO: \"LOGO\",\r\n FOOTER_IMAGE: \"FOOTER_IMAGE\",\r\n TERMS_QUICK_PAY: \"TERMS_QUICK_PAY\",\r\n TERMS_PLAN: \"TERMS_PLAN\",\r\n TERMS_DISCOUNT: \"TERMS_DISCOUNT\",\r\n CURRENCY: \"CURRENCY\",\r\n PAYMENT_PROVIDER: \"PAYMENT_PROVIDER\",\r\n DRAWER_STATE: \"DRAWER_STATE\",\r\n};\r\nexport const DOCUMENTS_ACTION_TYPES = {\r\n OPEN: \"OPEN\",\r\n DOCUMENT_TO_BE_VIEWED: \"DOCUMENT_TO_BE_VIEWED\",\r\n};\r\n\r\nexport const HTML_ACTION_TYPES = {\r\n TERMS_QUICK_PAY: \"TERMS_QUICK_PAY\",\r\n TERMS_PLAN: \"TERMS_PLAN\",\r\n TERMS_DISCOUNT: \"TERMS_DISCOUNT\",\r\n\r\n VIEW_OFFER_TEXT: \"VIEW_OFFER_TEXT\",\r\n CREATE_PLAN_TEXT: \"CREATE_PLAN_TEXT\",\r\n CREATE_PLANTOC: \"CREATE_PLANTOC\",\r\n CREATE_BUDGET_TEXT: \"CREATE_BUDGET_TEXT\",\r\n VIEW_ACCOUNT_TEXT: \"VIEW_ACCOUNT_TEXT\",\r\n\r\n BURGER_BUTTON_ANIMATION: \"BURGER_BUTTON_ANIMATION\",\r\n};\r\nexport const CAMERA_ACTION_TYPES = {\r\n OPEN_CAMERA: \"OPEN_CAMERA\",\r\n SET_IMAGE: \"SET_IMAGE\",\r\n ADD_CONFIRMED_IMAGE: \"ADD_CONFIRMED_IMAGE\",\r\n REMOVE_CONFIRMED_IMAGE: \"REMOVE_CONFIRMED_IMAGE\",\r\n RESET_CONFIRMET_IMAGES: \"RESET_CONFIRMET_IMAGES\",\r\n};\r\nexport const RESET_STORE = \"RESET_STORE\";\r\n","import {\r\n API_ACTION_TYPES,\r\n GET_SITE_DETAILS_ACTION_TYPES,\r\n HTML_ACTION_TYPES,\r\n CAMERA_ACTION_TYPES,\r\n DOCUMENTS_ACTION_TYPES,\r\n RESET_STORE,\r\n} from \"./redux_action_types\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\n\r\nexport const apiActions = {\r\n loading,\r\n error,\r\n clear,\r\n code,\r\n};\r\n\r\nfunction loading(payload) {\r\n return { type: API_ACTION_TYPES.LOADING, payload };\r\n}\r\n\r\nfunction code(payload) {\r\n return { type: API_ACTION_TYPES.CODE, payload };\r\n}\r\n\r\nfunction error(payload) {\r\n return { type: API_ACTION_TYPES.ERROR, payload };\r\n}\r\n\r\nfunction clear() {\r\n return { type: API_ACTION_TYPES.CLEAR };\r\n}\r\n\r\nexport const getSiteDetailsActions = {\r\n logo,\r\n footerImage,\r\n currency,\r\n paymentProvider,\r\n devNum,\r\n convenienceFee,\r\n uploadImagesToBudget,\r\n setDrawerState,\r\n};\r\n\r\nfunction currency(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.CURRENCY, payload };\r\n}\r\nfunction logo(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.LOGO, payload };\r\n}\r\nfunction footerImage(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.FOOTER_IMAGE, payload };\r\n}\r\nfunction devNum(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.DEPT_NUM, payload };\r\n}\r\nfunction convenienceFee(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.CONVENIENCE_FEE, payload };\r\n}\r\nfunction uploadImagesToBudget(payload) {\r\n return {\r\n type: GET_SITE_DETAILS_ACTION_TYPES.UPLOAD_IMAGE_TO_BUDGET,\r\n payload,\r\n };\r\n}\r\n\r\nfunction paymentProvider(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.PAYMENT_PROVIDER, payload };\r\n}\r\nfunction setDrawerState(payload) {\r\n return { type: GET_SITE_DETAILS_ACTION_TYPES.DRAWER_STATE, payload };\r\n}\r\n\r\nexport const htmlActions = {\r\n termsQuickPay,\r\n termsPlan,\r\n termsDiscount,\r\n viewOfferText,\r\n createPlanText,\r\n createPlantoc,\r\n createBudgetText,\r\n viewAccountText,\r\n setBurgerAnimation,\r\n};\r\nfunction termsDiscount(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.TERMS_DISCOUNT, payload };\r\n}\r\nfunction termsQuickPay(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.TERMS_QUICK_PAY, payload };\r\n}\r\nfunction termsPlan(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.TERMS_PLAN, payload };\r\n}\r\nfunction viewOfferText(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.VIEW_OFFER_TEXT, payload };\r\n}\r\nfunction createPlanText(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.CREATE_PLAN_TEXT, payload };\r\n}\r\nfunction createPlantoc(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.CREATE_PLANTOC, payload };\r\n}\r\nfunction createBudgetText(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.CREATE_BUDGET_TEXT, payload };\r\n}\r\nfunction viewAccountText(payload) {\r\n payload = ReactHtmlParser(payload);\r\n return { type: HTML_ACTION_TYPES.VIEW_ACCOUNT_TEXT, payload };\r\n}\r\n\r\nfunction setBurgerAnimation(payload) {\r\n return { type: HTML_ACTION_TYPES.BURGER_BUTTON_ANIMATION, payload };\r\n}\r\n//Camera Actions\r\nexport const cameraActions = {\r\n openCamera,\r\n setCapturedImage,\r\n addCapturedImage,\r\n deleteDocument,\r\n resetDocuments,\r\n};\r\nfunction openCamera(payload) {\r\n return { type: CAMERA_ACTION_TYPES.OPEN_CAMERA, payload };\r\n}\r\nfunction setCapturedImage(payload) {\r\n return { type: CAMERA_ACTION_TYPES.SET_IMAGE, payload };\r\n}\r\nfunction addCapturedImage(payload) {\r\n return { type: CAMERA_ACTION_TYPES.ADD_CONFIRMED_IMAGE, payload };\r\n}\r\nfunction deleteDocument(payload) {\r\n return { type: CAMERA_ACTION_TYPES.REMOVE_CONFIRMED_IMAGE, payload };\r\n}\r\nfunction resetDocuments() {\r\n return { type: CAMERA_ACTION_TYPES.RESET_CONFIRMET_IMAGES };\r\n}\r\n\r\nexport const documentsActions = {\r\n openDocumet,\r\n viewDocumet,\r\n};\r\n\r\nfunction viewDocumet(payload) {\r\n return { type: DOCUMENTS_ACTION_TYPES.DOCUMENT_TO_BE_VIEWED, payload };\r\n}\r\nfunction openDocumet(payload) {\r\n return { type: DOCUMENTS_ACTION_TYPES.OPEN, payload };\r\n}\r\n\r\n// to reset the state of redux store\r\nexport const resetStore = () => {\r\n return {\r\n type: RESET_STORE,\r\n };\r\n};\r\n","import Icon from \"@material-ui/core/Icon\";\r\nimport { makeStyles, useTheme } from \"@material-ui/core/styles\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport React, { useContext } from \"react\";\r\nimport Context from \"../../utils/context\";\r\nimport history from \"../../utils/history\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\n\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport { htmlActions } from \"store/redux/redux-actions/redux_actions\";\r\n\r\nconst drawerWidth = 150;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: \"flex\",\r\n },\r\n appBar: {\r\n border: \"none\",\r\n transition: theme.transitions.create([\"margin\", \"width\"], {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n },\r\n appBarShift: {\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n marginLeft: drawerWidth,\r\n transition: theme.transitions.create([\"margin\", \"width\"], {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n },\r\n menuButton: {\r\n marginLeft: theme.spacing(1.5),\r\n marginRight: theme.spacing(3),\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n drawer: {\r\n width: drawerWidth,\r\n flexShrink: 0,\r\n border: \"none\",\r\n },\r\n drawerPaper: {\r\n width: drawerWidth,\r\n top: 60,\r\n border: 0,\r\n paddingTop: 30,\r\n },\r\n linkButton: {\r\n padding: \"25px 25px\",\r\n width: 35,\r\n textAlign: \"center\",\r\n },\r\n drawerHeader: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: theme.spacing(0, 1),\r\n ...theme.mixins.toolbar,\r\n justifyContent: \"flex-end\",\r\n },\r\n textCenter: {\r\n textAlign: \"center\",\r\n fontSize: 13,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n marginBottom: 0,\r\n },\r\n textCenterAccNum: {\r\n textAlign: \"center\",\r\n fontSize: 11,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n },\r\n content: {\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: -drawerWidth,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n}));\r\n\r\nexport default function AccountItem(props) {\r\n const classes = useStyles();\r\n const theme = useTheme();\r\n const page = props.page;\r\n const account = props.account;\r\n const context = useContext(Context);\r\n const dispatch = useDispatch();\r\n\r\n const onClickHandler = () => {\r\n dispatch(ACTIONS.set_selectedAccount(props.account));\r\n props.onClick();\r\n dispatch(htmlActions.createPlanText(props.account.createplantext));\r\n history.push(`/viewAccount?acc=` + props.account.accountnumber);\r\n };\r\n return (\r\n
\r\n \r\n \r\n \r\n\r\n

{props.account.balancedesc}

\r\n\r\n

\r\n {props.account.accountnumber}\r\n

\r\n
\r\n );\r\n}\r\n","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 0;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst changePasswordOrPinStyle = (theme) => ({\r\n root: {\r\n width: \"100%\",\r\n margin: 0,\r\n padding: 0,\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n content: {\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 30,\r\n },\r\n whiteInfo: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n paddingTop: 10,\r\n },\r\n whiteInfoMiddle: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n paddingLeft: 0,\r\n paddingRight: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n blueTextMiddle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n});\r\n\r\nexport default changePasswordOrPinStyle;\r\n","import {\r\n blackColor,\r\n whiteColor,\r\n grayColor,\r\n roseColor,\r\n primaryColor,\r\n successColor,\r\n dangerColor,\r\n warningColor,\r\n infoColor,\r\n hexToRgb\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst cardStyle = {\r\n card: {\r\n border: \"0\",\r\n marginBottom: \"30px\",\r\n marginTop: \"30px\",\r\n borderRadius: \"6px\",\r\n color: \"rgba(\" + hexToRgb(blackColor) + \", 0.87)\",\r\n background: whiteColor,\r\n width: \"100%\",\r\n boxShadow:\r\n \"0 2px 2px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 3px 1px -2px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2), 0 1px 5px 0 rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12)\",\r\n position: \"relative\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n minWidth: \"0\",\r\n wordWrap: \"break-word\",\r\n fontSize: \".875rem\",\r\n // some jss/css to make the cards look a bit better on Internet Explorer\r\n \"@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)\": {\r\n display: \"inline-block !important\"\r\n }\r\n },\r\n cardPlain: {\r\n background: \"transparent\",\r\n boxShadow: \"none\"\r\n },\r\n cardProfile: {\r\n marginTop: \"30px\",\r\n textAlign: \"center\"\r\n },\r\n cardBlog: {\r\n marginTop: \"60px\"\r\n },\r\n cardRaised: {\r\n boxShadow:\r\n \"0 16px 38px -12px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.56), 0 4px 25px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\"\r\n },\r\n cardBackground: {\r\n backgroundPosition: \"50%\",\r\n backgroundSize: \"cover\",\r\n textAlign: \"center\",\r\n color: whiteColor,\r\n \"& h3\": {\r\n color: whiteColor + \" !important\"\r\n },\r\n \"& p\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \",0.7)!important\"\r\n },\r\n \"&:after\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: '\"\"',\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.56)\",\r\n borderRadius: \"6px\"\r\n },\r\n \"& small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.7) !important\"\r\n }\r\n },\r\n cardPricing: {\r\n textAlign: \"center\",\r\n \"&:after\": {\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.7) !important\"\r\n },\r\n \"& ul\": {\r\n listStyle: \"none\",\r\n padding: 0,\r\n maxWidth: \"240px\",\r\n margin: \"10px auto\"\r\n },\r\n \"& ul li\": {\r\n color: grayColor[0],\r\n textAlign: \"center\",\r\n padding: \"12px 0px\",\r\n borderBottom: \"1px solid rgba(\" + hexToRgb(grayColor[0]) + \",0.3)\"\r\n },\r\n \"& ul li:last-child\": {\r\n border: 0\r\n },\r\n \"& ul li b\": {\r\n color: grayColor[1]\r\n },\r\n \"& h1\": {\r\n marginTop: \"30px\"\r\n },\r\n \"& h1 small\": {\r\n display: \"inline-flex\",\r\n height: 0,\r\n fontSize: \"18px\"\r\n },\r\n \"& h1 small:first-child\": {\r\n position: \"relative\",\r\n top: \"-17px\",\r\n fontSize: \"26px\"\r\n },\r\n \"& ul li svg,& ul li .fab,& ul li .fas,& ul li .far,& ul li .fal,& ul li .material-icons\": {\r\n position: \"relative\",\r\n top: \"7px\"\r\n }\r\n },\r\n cardPricingColor: {\r\n \"& ul li\": {\r\n color: whiteColor,\r\n borderColor: \"rgba(\" + hexToRgb(whiteColor) + \",0.3)\",\r\n \"& b, & svg,& .fab,& .fas,& .far,& .fal,& .material-icons\": {\r\n color: whiteColor,\r\n fontWeight: \"700\"\r\n }\r\n }\r\n },\r\n cardProduct: {\r\n marginTop: \"30px\"\r\n },\r\n primary: {\r\n background:\r\n \"linear-gradient(60deg,\" + primaryColor[1] + \", \" + primaryColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n info: {\r\n background:\r\n \"linear-gradient(60deg,\" + infoColor[1] + \",\" + infoColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n success: {\r\n background:\r\n \"linear-gradient(60deg,\" + successColor[1] + \",\" + successColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n warning: {\r\n background:\r\n \"linear-gradient(60deg,\" + warningColor[1] + \",\" + warningColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n danger: {\r\n background:\r\n \"linear-gradient(60deg,\" + dangerColor[1] + \",\" + dangerColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n },\r\n rose: {\r\n background:\r\n \"linear-gradient(60deg,\" + roseColor[1] + \",\" + roseColor[2] + \")\",\r\n \"& h1 small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n },\r\n color: whiteColor\r\n }\r\n};\r\n\r\nexport default cardStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/cardStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Card(props) {\r\n const {\r\n className,\r\n children,\r\n plain,\r\n profile,\r\n blog,\r\n raised,\r\n background,\r\n pricing,\r\n color,\r\n product,\r\n testimonial,\r\n ...rest\r\n } = props;\r\n const classes = useStyles();\r\n const cardClasses = classNames({\r\n [classes.card]: true,\r\n [classes.cardPlain]: plain,\r\n [classes.cardProfile]: profile || testimonial,\r\n [classes.cardBlog]: blog,\r\n [classes.cardRaised]: raised,\r\n [classes.cardBackground]: background,\r\n [classes.cardPricingColor]:\r\n (pricing && color !== undefined) || (pricing && background !== undefined),\r\n [classes[color]]: color,\r\n [classes.cardPricing]: pricing,\r\n [classes.cardProduct]: product,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCard.propTypes = {\r\n className: PropTypes.string,\r\n plain: PropTypes.bool,\r\n profile: PropTypes.bool,\r\n blog: PropTypes.bool,\r\n raised: PropTypes.bool,\r\n background: PropTypes.bool,\r\n pricing: PropTypes.bool,\r\n testimonial: PropTypes.bool,\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\"\r\n ]),\r\n product: PropTypes.bool,\r\n children: PropTypes.node\r\n};\r\n","import { whiteColor, hexToRgb } from \"assets/jss/xrs.js\";\r\n\r\nconst cardBodyStyle = {\r\n cardBody: {\r\n padding: \"0.9375rem 1.875rem\",\r\n flex: \"1 1 auto\",\r\n WebkitBoxFlex: \"1\"\r\n },\r\n cardBodyBackground: {\r\n position: \"relative\",\r\n zIndex: \"2\",\r\n minHeight: \"280px\",\r\n paddingTop: \"40px\",\r\n paddingBottom: \"40px\",\r\n maxWidth: \"440px\",\r\n margin: \"0 auto\"\r\n },\r\n cardBodyPlain: {\r\n paddingLeft: \"5px\",\r\n paddingRight: \"5px\"\r\n },\r\n cardBodyFormHorizontal: {\r\n paddingLeft: \"15px\",\r\n paddingRight: \"15px\",\r\n \"& form\": {\r\n margin: \"0\"\r\n }\r\n },\r\n cardPricing: {\r\n padding: \"15px!important\",\r\n margin: \"0px!important\"\r\n },\r\n cardSignup: {\r\n padding: \"0px 30px 0px 30px\"\r\n },\r\n cardBodyColor: {\r\n borderRadius: \"6px\",\r\n \"& h1,& h2,& h3\": {\r\n \"& small\": {\r\n color: \"rgba(\" + hexToRgb(whiteColor) + \", 0.8)\"\r\n }\r\n }\r\n }\r\n};\r\n\r\nexport default cardBodyStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// @material-ui/icons\r\n\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/cardBodyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CardBody(props) {\r\n const {\r\n className,\r\n children,\r\n background,\r\n plain,\r\n formHorizontal,\r\n pricing,\r\n signup,\r\n color,\r\n ...rest\r\n } = props;\r\n const classes = useStyles();\r\n const cardBodyClasses = classNames({\r\n [classes.cardBody]: true,\r\n [classes.cardBodyBackground]: background,\r\n [classes.cardBodyPlain]: plain,\r\n [classes.cardBodyFormHorizontal]: formHorizontal,\r\n [classes.cardPricing]: pricing,\r\n [classes.cardSignup]: signup,\r\n [classes.cardBodyColor]: color,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nCardBody.propTypes = {\r\n className: PropTypes.string,\r\n background: PropTypes.bool,\r\n plain: PropTypes.bool,\r\n formHorizontal: PropTypes.bool,\r\n pricing: PropTypes.bool,\r\n signup: PropTypes.bool,\r\n color: PropTypes.bool,\r\n children: PropTypes.node\r\n};\r\n","import {\r\n blackColor,\r\n primaryColor,\r\n primaryDarkColor,\r\n roseColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n hexToRgb\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst parallaxStyle = {\r\n parallax: {\r\n minHeight: \"600px\",\r\n maxHeight: \"1600px\",\r\n overflow: \"hidden\",\r\n position: \"relative\",\r\n backgroundPosition: \"50%\",\r\n backgroundSize: \"cover\",\r\n margin: \"0\",\r\n padding: \"0\",\r\n border: \"0\",\r\n display: \"flex\",\r\n alignItems: \"center\"\r\n },\r\n filter: {},\r\n primaryColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(primaryColor[4]) + \", 1)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(primaryColor[4]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(primaryColor[5]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n primaryDarkColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(primaryDarkColor[4]) + \", 1)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(primaryDarkColor[4]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(primaryDarkColor[5]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n roseColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(roseColor[3]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(roseColor[4]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n darkColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n infoColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(infoColor[6]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(infoColor[7]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n successColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(successColor[6]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(successColor[7]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n warningColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(warningColor[6]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(warningColor[7]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n dangerColor: {\r\n \"&:before\": {\r\n background: \"rgba(\" + hexToRgb(blackColor) + \", 0.5)\"\r\n },\r\n \"&:after\": {\r\n background:\r\n \"linear-gradient(60deg,rgba(\" +\r\n hexToRgb(dangerColor[6]) +\r\n \",.56),rgba(\" +\r\n hexToRgb(dangerColor[7]) +\r\n \",.95))\"\r\n },\r\n \"&:after,&:before\": {\r\n position: \"absolute\",\r\n zIndex: \"1\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n display: \"block\",\r\n left: \"0\",\r\n top: \"0\",\r\n content: \"''\"\r\n }\r\n },\r\n small: {\r\n height: \"65vh\",\r\n minHeight: \"65vh\",\r\n maxHeight: \"650px\"\r\n }\r\n};\r\n\r\nexport default parallaxStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/parallaxStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Parallax(props) {\r\n const { filter, className, children, style, image, small } = props;\r\n const classes = useStyles();\r\n const parallaxClasses = classNames({\r\n [classes.parallax]: true,\r\n [classes[filter + \"Color\"]]: filter !== undefined,\r\n [classes.small]: small,\r\n [className]: className !== undefined\r\n });\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nParallax.propTypes = {\r\n className: PropTypes.string,\r\n filter: PropTypes.oneOf([\r\n \"primary\",\r\n \"primaryDark\",\r\n \"rose\",\r\n \"dark\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\"\r\n ]),\r\n children: PropTypes.node,\r\n style: PropTypes.string,\r\n image: PropTypes.string,\r\n small: PropTypes.bool\r\n};\r\n","import {\r\n primaryColor,\r\n dangerColor,\r\n successColor,\r\n whiteColor,\r\n grayColor,\r\n defaultFont,\r\n blackColor,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst customInputStyle = {\r\n disabled: {\r\n \"&:before\": {\r\n backgroundColor: \"white\",\r\n },\r\n },\r\n underline: {\r\n \"&:hover:not($disabled):before,&:before\": {\r\n borderBottomColor: primaryColor[0] + \" !important\",\r\n borderBottomWidth: \"1px !important\",\r\n },\r\n \"&:after\": {\r\n borderBottomColor: primaryColor[0],\r\n },\r\n },\r\n underlineError: {\r\n \"&:after\": {\r\n borderBottomColor: dangerColor[0],\r\n },\r\n },\r\n underlineSuccess: {\r\n \"&:after\": {\r\n borderBottomColor: successColor[0],\r\n },\r\n },\r\n helperTextRoot: {\r\n ...defaultFont,\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n color: \"rgba(0, 0, 0, 0.87)\",\r\n fontSize: \"13.4px\",\r\n marginTop: \"8px\" + \" !important\",\r\n width: \"360px\",\r\n lineHeight: \"0\",\r\n fontWeight: 300,\r\n zIndex: 1000,\r\n padding: 5,\r\n letterSpacing: \"unset\",\r\n },\r\n labelRoot: {\r\n ...defaultFont,\r\n color: \"rgba(0, 0, 0, 0.87)\",\r\n fontFamily: '\"Roboto\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontSize: \"18px\",\r\n width: \"400px\",\r\n lineHeight: \"0\",\r\n fontWeight: 300,\r\n\r\n zIndex: 1000,\r\n padding: 5,\r\n letterSpacing: \"unset\",\r\n position: \"relative\",\r\n },\r\n labelRootWhite: {\r\n ...defaultFont,\r\n color: whiteColor + \" !important\",\r\n fontSize: \"18px\",\r\n position: \"relative\",\r\n\r\n width: \"400px\",\r\n lineHeight: \"0\",\r\n zIndex: 1000,\r\n padding: 5,\r\n letterSpacing: \"unset\",\r\n },\r\n labelRootError: {\r\n color: dangerColor[0] + \" !important\",\r\n },\r\n labelRootSuccess: {\r\n color: successColor[0] + \" !important\",\r\n },\r\n feedback: {\r\n position: \"absolute\",\r\n bottom: \"4px\",\r\n right: \"0\",\r\n zIndex: \"2\",\r\n display: \"block\",\r\n width: \"24px\",\r\n height: \"24px\",\r\n textAlign: \"center\",\r\n pointerEvents: \"none\",\r\n },\r\n formControl: {\r\n margin: \"0 0 17px 0\",\r\n paddingTop: \"0px\",\r\n position: \"relative\",\r\n \"& svg,& .fab,& .far,& .fal,& .fas,& .material-icons\": {\r\n color: grayColor[13],\r\n },\r\n },\r\n whiteUnderline: {\r\n \"&:hover:not($disabled):before,&:before\": {\r\n borderBottomColor: whiteColor,\r\n },\r\n \"&:after\": {\r\n borderBottomColor: whiteColor,\r\n },\r\n },\r\n input: {\r\n color: grayColor[13],\r\n // borderRadius: 3,\r\n // border: 1,\r\n padding: 10,\r\n\r\n // borderBottomColor: whiteColor,\r\n // borderColor: primaryColor[0],\r\n // borderStyle: \"solid\",\r\n height: \"unset\",\r\n \"&,&::placeholder\": {\r\n fontSize: \"16px\",\r\n fontFamily: '\"Rubik\", \"Helvetica\", \"Arial\", sans-serif',\r\n fontWeight: \"500\",\r\n color: blackColor,\r\n lineHeight: \"1.42857\",\r\n opacity: \"1\",\r\n },\r\n \"&::placeholder\": {\r\n color: grayColor[12],\r\n opacity: \"0.2\",\r\n },\r\n },\r\n\r\n fieldSet: {\r\n borderRadius: 3,\r\n border: 1,\r\n backgroundColor: \"#f5f9ff\",\r\n margin: 0 + \" !important\",\r\n borderColor: primaryColor[0],\r\n borderStyle: \"solid\",\r\n },\r\n currency: {\r\n paddingLeft: 10,\r\n },\r\n\r\n whiteInput: {\r\n \"&,&::placeholder\": {\r\n opacity: \"1\",\r\n },\r\n \"&::placeholder\": {\r\n color: whiteColor,\r\n opacity: \"0.5\",\r\n },\r\n },\r\n};\r\n\r\nexport default customInputStyle;\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Input from \"@material-ui/core/Input\";\r\n// @material-ui/icons\r\nimport Clear from \"@material-ui/icons/Clear\";\r\nimport Check from \"@material-ui/icons/Check\";\r\n\r\n// core components\r\n\r\nimport styles from \"assets/jss/xrs/components/customInputStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomInput(props) {\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const {\r\n formControlProps,\r\n id,\r\n helperText,\r\n label,\r\n labelProps,\r\n inputProps,\r\n error,\r\n white,\r\n showCurrency,\r\n inputRootCustomClasses,\r\n success,\r\n multiline,\r\n reg,\r\n } = props;\r\n const classes = useStyles();\r\n const labelClasses = classNames({\r\n [\" \" + classes.labelRootError]: error,\r\n [\" \" + classes.labelRootSuccess]: success && !error,\r\n });\r\n const underlineClasses = classNames({\r\n [classes.underlineError]: error,\r\n [classes.underlineSuccess]: success && !error,\r\n [classes.underline]: true,\r\n [classes.whiteUnderline]: white,\r\n });\r\n const rootClasses = classNames({\r\n [classes.fieldSet]: true,\r\n });\r\n const inputClasses = classNames({\r\n [classes.input]: true,\r\n [classes.whiteInput]: white,\r\n });\r\n\r\n var formControlClasses;\r\n if (formControlProps !== undefined) {\r\n formControlClasses = classNames(\r\n formControlProps.className,\r\n classes.formControl\r\n );\r\n } else {\r\n formControlClasses = classes.formControl;\r\n }\r\n return (\r\n \r\n {inputProps.placeholder !== undefined || label !== undefined ? (\r\n \r\n \r\n {label !== undefined ? label : inputProps.placeholder}\r\n \r\n \r\n {inputProps.placeholder !== undefined\r\n ? inputProps.placeholder\r\n : label !== undefined\r\n ? label\r\n : null}\r\n \r\n \r\n ) : null}\r\n \r\n {currency}\r\n \r\n ) : (\r\n false\r\n )\r\n }\r\n mind=\"ters\"\r\n variant=\"outlined\"\r\n ref={reg}\r\n inputProps={{ ...inputProps }}\r\n />\r\n {helperText !== undefined ? (\r\n \r\n \r\n {helperText}\r\n \r\n \r\n ) : null}\r\n {error ? (\r\n \r\n ) : success ? (\r\n \r\n ) : null}\r\n \r\n );\r\n}\r\n\r\nCustomInput.propTypes = {\r\n label: PropTypes.string,\r\n helperText: PropTypes.string,\r\n labelText: PropTypes.node,\r\n labelProps: PropTypes.object,\r\n id: PropTypes.string,\r\n inputProps: PropTypes.object,\r\n formControlProps: PropTypes.object,\r\n showCurrency: PropTypes.bool,\r\n inputRootCustomClasses: PropTypes.string,\r\n error: PropTypes.bool,\r\n success: PropTypes.bool,\r\n white: PropTypes.bool,\r\n reg: PropTypes.object,\r\n multiline: PropTypes.bool,\r\n};\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = {\r\n grid: {\r\n marginRight: \"-15px\",\r\n marginLeft: \"-15px\",\r\n width: \"auto\"\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function GridContainer(props) {\r\n const { children, className, ...rest } = props;\r\n const classes = useStyles();\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nGridContainer.defaultProps = {\r\n className: \"\"\r\n};\r\n\r\nGridContainer.propTypes = {\r\n children: PropTypes.node,\r\n className: PropTypes.string\r\n};\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = {\r\n grid: {\r\n position: \"relative\",\r\n width: \"100%\",\r\n minHeight: \"1px\",\r\n paddingRight: \"15px\",\r\n paddingLeft: \"15px\"\r\n /* flexBasis: \"auto\" */\r\n }\r\n};\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function GridItem(props) {\r\n const { children, className, ...rest } = props;\r\n const classes = useStyles();\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nGridItem.defaultProps = {\r\n className: \"\"\r\n};\r\n\r\nGridItem.propTypes = {\r\n children: PropTypes.node,\r\n className: PropTypes.string\r\n};\r\n","// const api = \"https://endpoint.xrscollector.com\";\r\n// const api = \"https://api.xrscollector.com/ManchesterCUUAT\";\r\nconst api = \"https://api.xrscollector.com/cssp\";\r\n\r\nexport const AuthenticationAPIUrl = api + \"/oauth/token\";\r\nexport const GetOfferAPIUrl = api + \"/api/WebOffers/ReturnWebOffer\";\r\nexport const GetSiteDetatilsAPIUrl = api + \"/api/getSiteDetails\";\r\nexport const GetcreateUserAPIUrl = api + \"/api/auth/create\";\r\nexport const GetcreateUserViaEmailAPIUrl = api + \"/api/auth/createViaEmail\";\r\n\r\nexport const GetCreateBusinesUserAPIUrl = api + \"/api/auth/createbusiness\";\r\nexport const GetCreatePersonalUserAPIUrl = api + \"/api/auth/createpersonal\";\r\n\r\nexport const GetRecreateUserAPIUrl = api + \"/api/auth/recreate\";\r\nexport const GetRecreateUserViaEmailAPIUrl = api + \"/api/auth/recreateViaEmail\";\r\n\r\nexport const GetReCreateBusinesUserAPIUrl = api + \"/api/auth/recreatebusiness\";\r\nexport const GetReCreatePersonalUserAPIUrl = api + \"/api/auth/recreatepersonal\";\r\n\r\nexport const GetPINDigitsAPIUrl = api + \"/api/auth/PINDigit\";\r\nexport const GetTokenURLAPI = api + \"/oauth/token\";\r\nexport const GetVerifyAPIUrl = api + \"/api/auth/verify\";\r\nexport const GetVerifyByEmailAPIUrl = api + \"/api/auth/verifybyemail\";\r\n\r\nexport const GetQuickPayAPIUrl = api + \"/api/QuickPay\";\r\nexport const GetQuickPaySSNAPIUrl = api + \"/api/QuickPaySSN\";\r\nexport const QuickPayPersonal = api + \"/api/QuickPayPersonal\";\r\nexport const QuickPayBusiness = api + \"/api/QuickPayBusiness\";\r\n\r\nexport const GetWebOffersAPIUrl = api + \"/Api/WebOffers/SetWebOffer\";\r\nexport const GetWebOffersCardAPIUrl =\r\n api + \"/Api/WebOfferUseExistingCard/SetWebOffer\";\r\nexport const GetReturnAPIUrl = api + \"/api/WebOffers/ReturnWebOffer\";\r\nexport const GetTransactionsAPIURL = api + \"/Api/accounts/GetTransactions\";\r\nexport const GetCardPaymentAPIURL = api + \"/Api/WebOffers/CardPayment\";\r\n\r\nexport const GetRelexPostBackAPIURL = api + \"/api/HppResponse/RealexResult\";\r\nexport const GetRealexPayURLAPI = \"https://pay.sandbox.realexpayments.com/pay\";\r\n\r\nexport const GetWelcomeDetails = api + \"/Api/WelcomeDetail/GetWelcomeDetails\";\r\nexport const GetReset = api + \"/api/auth/SendResetCredentialCode\";\r\nexport const GetBugetColumns = api + \"/Api/Budgets/getBudgetColumns\";\r\nexport const CreateBudget = api + \"/Api/Budgets/CreateBudget\";\r\nexport const CreateBudgetAndAttachDocuments =\r\n api + \"/Api/Budgets/CreateBudgetAndAttachDocuments\";\r\n\r\nexport const OnePaymentURLSettlementOfferNoCard =\r\n api + \"/Api/WebOffers/SettlementOffer\";\r\nexport const OnePaymentPayNowURLWebOfferUseExistingCard =\r\n api + \"/Api/WebOfferUseExistingCard/SettlementOffer\";\r\nexport const OnePaymentWebOfferResponseNoCard =\r\n api + \"/Api/HppCreateCard/RealexSettlementResult\";\r\n\r\nexport const PayNowURLNoCard = api + \"/Api/WebOffers/CardPayment\";\r\nexport const PayNowURLCard = api + \"/Api/CardPayments/UseExistingCard\";\r\nexport const PayNowResponseNoCard =\r\n api + \"/Api/HppCreateCardPayNow/RealexResult\";\r\nexport const WebOfferResponseNoCard = api + \"/Api/HppCreateCard/RealexResult\";\r\n\r\nexport const SaveCallBack = api + \"/Api/Callback/CreateCallBackLoggedOn\";\r\n\r\nexport const changePassword = api + \"/api/auth/ChangePassword\";\r\nexport const ChangeBusinessPassword = api + \"/api/auth/ChangeBusinessPassword\";\r\nexport const ChangePersonalPassword = api + \"/api/auth/ChangePersonalPassword\";\r\n\r\nexport const changePin = api + \"/api/auth/ChangePIN\";\r\nexport const ChangePersonalPIN = api + \"/api/auth/ChangePersonalPIN\";\r\nexport const ChangeBusinessPIN = api + \"/api/auth/ChangeBusinessPIN\";\r\n\r\nexport const sendCode = api + \"/api/auth/sendcode\";\r\n\r\nexport const ErrorRedirectURL = api + \"/Api/HppCreateCard/RealexResult\";\r\n\r\nexport const GetWelcomeNavigation =\r\n api + \"/Api/WelcomeDetail/getWelcomeNavigation\";\r\n\r\nexport const GetUserMessages = api + \"/Api/Messages/GetUserMessages\";\r\nexport const GetUserMessageDetails =\r\n api + \"/Api/Messages/GetUserMessageDetails?\";\r\n//TabaPay\r\nexport const QuickPayResultTabaPay = api + \"/Api/SSOResponse/QuickPayResult\";\r\n\r\nexport const CreateCardRequestTabaPay =\r\n api + \"/Api/SSORequest/CreateCardRequest\";\r\nexport const PayNowAndSaveCardResultTabaPay =\r\n api + \"/Api/SSOResponse/PayNowAndSaveCardResult\";\r\nexport const UseExistingCardTabaPay =\r\n api + \"/Api/SSOCardPayments/UseExistingCard\";\r\n\r\nexport const CreateOfferRequestTabaPay =\r\n api + \"/Api/SSORequest/CreateOfferRequest\";\r\nexport const SaveOfferResultTabaPay = api + \"/Api/SSOResponse/SaveOfferResult\";\r\nexport const SetWebOfferTabaPay = api + \"/Api/SSOCardPayments/SetWebOffer\";\r\n\r\nexport const CreateSettlementOfferRequestTabaPay =\r\n api + \"/Api/SSORequest/CreateSettlementOfferRequest\";\r\nexport const SaveSettlementOfferResultabaPay =\r\n api + \"/Api/SSOResponse/SaveSettlementOfferResult\";\r\nexport const SetWebSettlementOfferTabaPay =\r\n api + \"/Api/SSOCardPayments/SetWebSettlementOffer\";\r\n","import { blackColor, hexToRgb } from \"assets/jss/xrs.js\";\r\n\r\nconst imagesStyles = {\r\n imgFluid: {\r\n maxWidth: \"100%\",\r\n height: \"auto\",\r\n },\r\n imgRounded: {\r\n borderRadius: \"6px !important\",\r\n },\r\n imgRoundedCircle: {\r\n borderRadius: \"50% !important\",\r\n },\r\n imgRaised: {\r\n boxShadow:\r\n \"0 5px 15px -8px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.24), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n },\r\n imgGallery: {\r\n width: \"100%\",\r\n marginBottom: \"2.142rem\",\r\n },\r\n imgCardTop: {\r\n width: \"100%\",\r\n borderTopLeftRadius: \"calc(.25rem - 1px)\",\r\n borderTopRightRadius: \"calc(.25rem - 1px)\",\r\n },\r\n imgCardBottom: {\r\n width: \"100%\",\r\n borderBottomLeftRadius: \"calc(.25rem - 1px)\",\r\n borderBottomRightRadius: \"calc(.25rem - 1px)\",\r\n },\r\n imgCard: {\r\n width: \"100%\",\r\n borderRadius: \"calc(.25rem - 1px)\",\r\n },\r\n imgCardOverlay: {\r\n position: \"absolute\",\r\n top: \"0\",\r\n right: \"0\",\r\n bottom: \"0\",\r\n left: \"0\",\r\n padding: \"1.25rem\",\r\n },\r\n};\r\n\r\nexport default imagesStyles;\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nconst blueHeaderSectionStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: primaryColor[16],\r\n fontWeight: 500,\r\n paddingLeft: 10,\r\n fontFamily: primaryColor[17],\r\n fontSize: primaryColor[18],\r\n\r\n paddingTop: 5,\r\n },\r\n whiteCenter: {\r\n color: primaryColor[16],\r\n fontFamily: primaryColor[17],\r\n fontSize: primaryColor[18],\r\n fontWeight: 500,\r\n textAlign: \"center\",\r\n paddingRight: 10,\r\n paddingTop: 5,\r\n \"@media (max-width: 600px)\": {\r\n textAlign: \"left\",\r\n paddingLeft: 10,\r\n },\r\n },\r\n whiteRight: {\r\n color: primaryColor[16],\r\n fontFamily: primaryColor[17],\r\n fontSize: primaryColor[18],\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n paddingRight: 10,\r\n paddingTop: 5,\r\n \"@media (max-width: 600px)\": {\r\n textAlign: \"left\",\r\n\r\n paddingLeft: 10,\r\n },\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 40,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n CardStyle: {\r\n backgroundColor: primaryColor[15],\r\n padding: \"3px\",\r\n },\r\n};\r\n\r\nexport default blueHeaderSectionStyle;\r\n","import {\r\n warningColor,\r\n primaryColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n defaultFont\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst tableStyle = {\r\n warning: {\r\n color: warningColor[0]\r\n },\r\n primary: {\r\n color: primaryColor[0]\r\n },\r\n danger: {\r\n color: dangerColor[0]\r\n },\r\n success: {\r\n color: successColor[0]\r\n },\r\n info: {\r\n color: infoColor[0]\r\n },\r\n rose: {\r\n color: roseColor[0]\r\n },\r\n gray: {\r\n color: grayColor[0]\r\n },\r\n right: {\r\n textAlign: \"right\"\r\n },\r\n table: {\r\n marginBottom: \"0\",\r\n width: \"100%\",\r\n maxWidth: \"100%\",\r\n backgroundColor: \"transparent\",\r\n borderSpacing: \"0\",\r\n borderCollapse: \"collapse\",\r\n overflow: \"auto\",\r\n \"& > tbody > tr, & > thead > tr\": {\r\n height: \"auto\"\r\n }\r\n },\r\n tableShoppingHead: {\r\n fontSize: \"0.75em !important\",\r\n textTransform: \"uppercase !important\"\r\n },\r\n tableCell: {\r\n ...defaultFont,\r\n lineHeight: \"1.5em\",\r\n padding: \"12px 8px!important\",\r\n verticalAlign: \"middle\",\r\n fontSize: \"0.875rem\",\r\n borderBottom: \"none\",\r\n borderTop: \"1px solid \" + grayColor[6],\r\n position: \"relative\",\r\n color: grayColor[1]\r\n },\r\n tableHeadCell: {\r\n fontSize: \"1.063rem\",\r\n borderBottomWidth: \"1px\",\r\n fontWeight: \"300\",\r\n color: grayColor[15],\r\n borderTopWidth: \"0 !important\"\r\n },\r\n tableCellTotal: {\r\n fontWeight: \"500\",\r\n fontSize: \"1.0625rem\",\r\n paddingTop: \"20px\",\r\n textAlign: \"right\"\r\n },\r\n tableCellAmount: {\r\n fontSize: \"26px\",\r\n fontWeight: \"300\",\r\n marginTop: \"5px\",\r\n textAlign: \"right\"\r\n },\r\n tableResponsive: {\r\n minHeight: \"0.1%\",\r\n overflowX: \"auto\"\r\n },\r\n tableStripedRow: {\r\n backgroundColor: grayColor[16]\r\n },\r\n tableRowHover: {\r\n \"&:hover\": {\r\n backgroundColor: grayColor[23]\r\n }\r\n },\r\n warningRow: {\r\n backgroundColor: warningColor[4],\r\n \"&:hover\": {\r\n backgroundColor: warningColor[5]\r\n }\r\n },\r\n dangerRow: {\r\n backgroundColor: dangerColor[4],\r\n \"&:hover\": {\r\n backgroundColor: dangerColor[5]\r\n }\r\n },\r\n successRow: {\r\n backgroundColor: successColor[4],\r\n \"&:hover\": {\r\n backgroundColor: successColor[5]\r\n }\r\n },\r\n infoRow: {\r\n backgroundColor: infoColor[4],\r\n \"&:hover\": {\r\n backgroundColor: infoColor[5]\r\n }\r\n }\r\n};\r\n\r\nexport default tableStyle;\r\n","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\n\r\nimport styles from \"assets/jss/xrs/components/tableStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomTable(props) {\r\n const {\r\n tableHead,\r\n tableData,\r\n tableHeaderColor,\r\n hover,\r\n colorsColls,\r\n coloredColls,\r\n customCellClasses,\r\n customClassesForCells,\r\n striped,\r\n tableShopping,\r\n customHeadCellClasses,\r\n customHeadClassesForCells\r\n } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n {tableHead !== undefined ? (\r\n \r\n \r\n {tableHead.map((prop, key) => {\r\n const tableCellClasses =\r\n classes.tableHeadCell +\r\n \" \" +\r\n classes.tableCell +\r\n \" \" +\r\n cx({\r\n [customHeadCellClasses[\r\n customHeadClassesForCells.indexOf(key)\r\n ]]: customHeadClassesForCells.indexOf(key) !== -1,\r\n [classes.tableShoppingHead]: tableShopping\r\n });\r\n return (\r\n \r\n {prop}\r\n \r\n );\r\n })}\r\n \r\n \r\n ) : null}\r\n \r\n {tableData.map((prop, key) => {\r\n var rowColor = \"\";\r\n var rowColored = false;\r\n if (prop.color !== undefined) {\r\n rowColor = prop.color;\r\n rowColored = true;\r\n prop = prop.data;\r\n }\r\n const tableRowClasses = cx({\r\n [classes.tableRowHover]: hover,\r\n [classes[rowColor + \"Row\"]]: rowColored,\r\n [classes.tableStripedRow]: striped && key % 2 === 0\r\n });\r\n if (prop.total) {\r\n return (\r\n \r\n \r\n \r\n Total\r\n \r\n \r\n {prop.amount}\r\n \r\n {tableHead.length - (prop.colspan - 0 + 2) > 0 ? (\r\n \r\n ) : null}\r\n \r\n );\r\n }\r\n if (prop.purchase) {\r\n return (\r\n \r\n \r\n \r\n Total\r\n \r\n \r\n {prop.amount}\r\n \r\n \r\n {prop.col.text}\r\n \r\n \r\n );\r\n }\r\n return (\r\n \r\n {prop.map((prop, key) => {\r\n const tableCellClasses =\r\n classes.tableCell +\r\n \" \" +\r\n cx({\r\n [classes[colorsColls[coloredColls.indexOf(key)]]]:\r\n coloredColls.indexOf(key) !== -1,\r\n [customCellClasses[customClassesForCells.indexOf(key)]]:\r\n customClassesForCells.indexOf(key) !== -1\r\n });\r\n return (\r\n \r\n {prop}\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\nCustomTable.defaultProps = {\r\n tableHeaderColor: \"gray\",\r\n hover: false,\r\n colorsColls: [],\r\n coloredColls: [],\r\n striped: false,\r\n customCellClasses: [],\r\n customClassesForCells: [],\r\n customHeadCellClasses: [],\r\n customHeadClassesForCells: []\r\n};\r\n\r\nCustomTable.propTypes = {\r\n tableHeaderColor: PropTypes.oneOf([\r\n \"warning\",\r\n \"primary\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\",\r\n \"gray\"\r\n ]),\r\n tableHead: PropTypes.arrayOf(PropTypes.string),\r\n // Of(PropTypes.arrayOf(PropTypes.node)) || Of(PropTypes.object),\r\n tableData: PropTypes.array,\r\n hover: PropTypes.bool,\r\n coloredColls: PropTypes.arrayOf(PropTypes.number),\r\n // Of([\"warning\",\"primary\",\"danger\",\"success\",\"info\",\"rose\",\"gray\"]) - colorsColls\r\n colorsColls: PropTypes.array,\r\n customCellClasses: PropTypes.arrayOf(PropTypes.string),\r\n customClassesForCells: PropTypes.arrayOf(PropTypes.number),\r\n customHeadCellClasses: PropTypes.arrayOf(PropTypes.string),\r\n customHeadClassesForCells: PropTypes.arrayOf(PropTypes.number),\r\n striped: PropTypes.bool,\r\n // this will cause some changes in font\r\n tableShopping: PropTypes.bool\r\n};\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport blueHeaderSectionStyle from \"assets/jss/xrs/views/sectionsSections/blueHeaderSectionStyle\";\r\nimport Context from \"../../../utils/context\";\r\nimport Table from \"components/Table/Table.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\n\r\nconst useStyles = makeStyles(blueHeaderSectionStyle);\r\nexport default function BlueHeaderSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [ballance, setBallance] = React.useState(0);\r\n const [site, setSite] = React.useState(\"\");\r\n const token = sessionStorage.getItem(\"access_token\");\r\n const [phone, setPhone] = React.useState(\"\");\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const deptphonenumber = useSelector(\r\n (state) => state.GetSiteDetailsReducer.deptphonenumber\r\n );\r\n const numOfAccounts = useSelector(\r\n (state) => state.AccountsReducer.numOfAccounts\r\n );\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n\r\n React.useEffect(() => {\r\n if (stateSelectedAccount == \"NoAccount\") {\r\n setBallance(stateCustomer.totalbalance);\r\n } else {\r\n setBallance(stateSelectedAccount.balance);\r\n }\r\n\r\n if (deptphonenumber != \"\") {\r\n setPhone(deptphonenumber);\r\n } else {\r\n setPhone(stateSite.phonenumber);\r\n }\r\n }, [stateSelectedAccount]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n

\r\n {\" \"}\r\n {numOfAccounts > 1 && stateSelectedAccount != \"NoAccount\"\r\n ? \"Balance: \"\r\n : \"Total Balance: \"}\r\n \r\n

\r\n
\r\n\r\n \r\n {numOfAccounts > 1 && stateSelectedAccount != \"NoAccount\" ? (\r\n

\r\n {\" \" +\r\n stateSelectedAccount.clientname +\r\n \": \" +\r\n stateSelectedAccount.accountnumber}\r\n

\r\n ) : null}\r\n
\r\n \r\n

\r\n Call us now:\r\n {isMobile ? (\r\n \r\n {phone}\r\n \r\n ) : (\r\n {phone}\r\n )}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport Context from \"./context\";\r\nimport * as ACTIONS from \"../store/actions/actions\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nexport const ApiErrorHandler = (from, error, context) => {\r\n let message = \"\";\r\n if (error.message != undefined) {\r\n message = error.message;\r\n }\r\n if (error.MESSAGE != undefined) {\r\n message = error.MESSAGE;\r\n }\r\n\r\n if (error.statusText != undefined) {\r\n message = error.statusText;\r\n }\r\n\r\n if (error.responseText != undefined) {\r\n let parsedError = JSON.parse(error.responseText);\r\n if (parsedError.message != undefined) {\r\n message = parsedError.message;\r\n }\r\n\r\n if (parsedError.error_description != undefined) {\r\n message = parsedError.error_description;\r\n }\r\n if (parsedError.errors != undefined) {\r\n var errors = parsedError.errors;\r\n message = \"\";\r\n errors.forEach((element) => (message += element + \"\\n\"));\r\n }\r\n }\r\n\r\n switch (error.status) {\r\n case 401 || 403:\r\n message =\r\n \"You have been logged out of this session. Please close and restart the browser to log in again\";\r\n context.stateInfoDialog(from, message, \"/landing-page\");\r\n break;\r\n\r\n default:\r\n context.stateInfoDialog(from, message);\r\n break;\r\n }\r\n};\r\n","import { Collapse } from \"@material-ui/core\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport changePasswordOrPinStyle from \"../../assets/jss/xrs/views/changePasswordOrPinStyle\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport fnmoment from \"moment\";\r\nimport React, { useContext } from \"react\";\r\nimport Moment from \"react-moment\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"utils/context\";\r\nimport * as URLS from \"utils/XRSAPIs\";\r\nimport history from \"utils/history\";\r\nimport Slider from \"react-slick\";\r\nimport BlueHeader from \"../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport clsx from \"clsx\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs\";\r\n\r\nlet drawerWidth = 0;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst useStyles = makeStyles(changePasswordOrPinStyle);\r\n\r\nfunction getSteps() {\r\n return [\"Instructions\", \"Payments\", \"Summary\"];\r\n}\r\n\r\nconst SliderSettings = {\r\n infinite: false,\r\n arrows: false,\r\n touchMove: false,\r\n\r\n centerMode: false,\r\n variableWidth: false,\r\n dots: false,\r\n initialSlide: 0,\r\n slidesToShow: 3,\r\n responsive: [\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n dots: false,\r\n },\r\n },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 1,\r\n initialSlide: 1,\r\n },\r\n },\r\n {\r\n breakpoint: 480,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n ],\r\n};\r\n\r\nexport default function ChangePasswordAndPin(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [skipped, setSkipped] = React.useState(new Set());\r\n const [topNav, setTopNav] = React.useState(null);\r\n const steps = getSteps();\r\n const [step, setStep] = React.useState(0);\r\n\r\n const [cReference, setReference] = React.useState(\"\");\r\n const [cMobileNumber, setMobileNumber] = React.useState(\"\");\r\n const [cEmail, setcEmail] = React.useState(\"\");\r\n\r\n const [cDateOfBirth, setDateOfBirth] = React.useState(\"\");\r\n const [CredentialToReset, setCredentialToReset] = React.useState(\"Password\");\r\n\r\n const [OldPassword, setOldPassword] = React.useState(\"\");\r\n const [NewPassword, setNewPassword] = React.useState(\"\");\r\n const [ConfirmPassword, setConfirmPassword] = React.useState(\"\");\r\n const [SecurityCode, setSecurityCode] = React.useState(\"\");\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const registrationType = useSelector(\r\n (state) => state.AccountsReducer.registrationMethod\r\n );\r\n\r\n const isStepOptional = (step) => {\r\n return step === 9;\r\n };\r\n const isStepSkipped = (step) => {\r\n return skipped.has(step);\r\n };\r\n\r\n const handleChange = (newValue) => {\r\n setStep(newValue);\r\n };\r\n function getSteps() {\r\n return [\"Instructions\", \"Payments\", \"Summary\"];\r\n }\r\n\r\n React.useEffect(() => {\r\n setCredentialToReset(props.cred);\r\n var m = stateCustomer.cumobilephone;\r\n setMobileNumber(m);\r\n var r = stateCustomer.custnumber;\r\n setReference(r);\r\n var d = stateCustomer.cudob;\r\n setDateOfBirth(d);\r\n setStep(0);\r\n }, []);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const submitPinFormEvent = (event) => {\r\n event.preventDefault();\r\n if (ConfirmPassword != NewPassword) {\r\n context.stateInfoDialog(\r\n \"Change pin\",\r\n \"New Pin and Confirm pin do not match!\"\r\n );\r\n return;\r\n }\r\n var data;\r\n data = JSON.stringify({\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n DateOfBirth: cDateOfBirth,\r\n CredentialToReset: CredentialToReset,\r\n });\r\n\r\n fetch(URLS.sendCode, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Change Password\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n topNav.slickNext();\r\n }, [])\r\n\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Change Password\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const submitChangePassFormEvent = (event) => {\r\n event.preventDefault();\r\n if (ConfirmPassword != NewPassword) {\r\n context.stateInfoDialog(\r\n \"Change password\",\r\n \"New password and confirm password do not match!\"\r\n );\r\n return;\r\n }\r\n var data;\r\n var url =\r\n CredentialToReset == \"password\" ? URLS.changePassword : URLS.changePin;\r\n if (CredentialToReset == \"password\") {\r\n if (registrationType == \"email\") {\r\n var url = URLS.ChangeBusinessPassword;\r\n\r\n data = JSON.stringify({\r\n OldPassword: OldPassword,\r\n NewPassword: NewPassword,\r\n ConfirmPassword: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n email: cEmail,\r\n CredentialToReset: \"Password\",\r\n });\r\n } else if (registrationType == \"phone\") {\r\n var url = URLS.ChangePersonalPassword;\r\n\r\n data = JSON.stringify({\r\n OldPassword: OldPassword,\r\n NewPassword: NewPassword,\r\n ConfirmPassword: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n CredentialToReset: \"Password\",\r\n });\r\n } else {\r\n var url = URLS.changePassword;\r\n data = JSON.stringify({\r\n OldPassword: OldPassword,\r\n NewPassword: NewPassword,\r\n ConfirmPassword: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n DateOfBirth: cDateOfBirth,\r\n CredentialToReset: \"Password\",\r\n });\r\n }\r\n } else {\r\n if (registrationType == \"email\") {\r\n var url = URLS.ChangeBusinessPIN;\r\n\r\n data = JSON.stringify({\r\n OldPIN: OldPassword,\r\n NewPIN: NewPassword,\r\n ConfirmPIN: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n email: cEmail,\r\n CredentialToReset: \"Password\",\r\n });\r\n } else if (registrationType == \"phone\") {\r\n var url = URLS.ChangePersonalPIN;\r\n\r\n data = JSON.stringify({\r\n OldPIN: OldPassword,\r\n NewPIN: NewPassword,\r\n ConfirmPIN: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n CredentialToReset: \"Password\",\r\n });\r\n } else {\r\n var url = URLS.changePin;\r\n\r\n data = JSON.stringify({\r\n OldPIN: OldPassword,\r\n NewPIN: NewPassword,\r\n ConfirmPIN: ConfirmPassword,\r\n SecurityCode: SecurityCode,\r\n Reference: cReference,\r\n MobileNumber: cMobileNumber,\r\n DateOfBirth: cDateOfBirth,\r\n CredentialToReset: \"Password\",\r\n });\r\n }\r\n }\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Change Password\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n topNav.slickNext();\r\n }, [])\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Change Password\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const handleFinish = () => {};\r\n\r\n async function handleErrors(response) {\r\n // ;\r\n if (!response.ok) {\r\n var data = await response.json();\r\n throw Error(data.message);\r\n }\r\n\r\n if (response.status == 401) {\r\n context.authObj.logout();\r\n }\r\n\r\n return response;\r\n }\r\n const handleBack = () => {\r\n let newSkipped = skipped;\r\n if (isStepSkipped(step)) {\r\n newSkipped = new Set(newSkipped.values());\r\n newSkipped.delete(step);\r\n }\r\n setStep((prevActiveStep) => prevActiveStep - 1);\r\n setSkipped(newSkipped);\r\n topNav.slickPrev();\r\n };\r\n\r\n return (\r\n
\r\n \r\n\r\n \r\n \r\n {\r\n setTopNav(slider);\r\n }}\r\n {...SliderSettings}\r\n >\r\n
\r\n
\r\n Verify User\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Change {CredentialToReset == \"password\" ? \"Password\" : \"Pin\"}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Confirmation\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

Verify by SMS

\r\n\r\n {\r\n setReference(e.target.value);\r\n },\r\n }}\r\n />\r\n {registrationType == \"phone\" ? (\r\n {\r\n setMobileNumber(e.target.value);\r\n },\r\n }}\r\n />\r\n ) : registrationType == \"email\" ? (\r\n {\r\n setcEmail(e.target.value);\r\n },\r\n }}\r\n />\r\n ) : (\r\n <>\r\n {\r\n setMobileNumber(e.target.value);\r\n },\r\n }}\r\n />\r\n {\r\n setDateOfBirth(e.target.value);\r\n },\r\n }}\r\n />\r\n \r\n )}\r\n\r\n
\r\n
\r\n \r\n Back\r\n \r\n \r\n {step === steps.length - 1 ? \"Finish\" : \"Next\"}\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\n

\r\n A once off token has been sent to your Mobile. Please\r\n provide{\" \"}\r\n {CredentialToReset == \"password\" ? \"password\" : \"pin\"} and\r\n once off token details below\r\n

\r\n\r\n {\r\n setOldPassword(e.target.value);\r\n },\r\n }}\r\n />\r\n {\r\n setNewPassword(e.target.value);\r\n },\r\n }}\r\n />\r\n {\r\n setConfirmPassword(e.target.value);\r\n },\r\n }}\r\n />\r\n {\r\n setSecurityCode(e.target.value);\r\n },\r\n }}\r\n />\r\n
\r\n
\r\n \r\n Back\r\n \r\n \r\n {step === steps.length - 1 ? \"Finish\" : \"Next\"}\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 You have successfully changed your{\" \"}\r\n {CredentialToReset == \"password\" ? \"password\" : \"pin\"}\r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","/* eslint-disable react/prop-types */\r\nimport { datePickerDefaultProps } from '@material-ui/pickers/constants/prop-types';\r\nimport React from 'react';\r\nimport Intercom from 'react-intercom';\r\n\r\nexport default function IntercomComponent(props) {\r\n\r\n const user = {\r\n user_id: props.id,\r\n email: props.email,\r\n name: props.name\r\n };\r\n const [value, setValue] = React.useState(\"\");\r\n const [visible, setVisible] = React.useState(false);\r\n React.useEffect(() => {\r\n setValue(props.authKey);\r\n setVisible(props.chatvisible);\r\n },[props.chatvisible])\r\n\r\n if (visible)\r\n {\r\n return (\r\n \r\n )\r\n }else\r\n {\r\n return (\"\")\r\n }\r\n}","import { Link } from \"react-router-dom\";\r\nimport {\r\n primaryDarkColor,\r\n secondaryColor,\r\n blackColor,\r\n hexToRgb,\r\n primaryColor,\r\n} from \"assets/jss/xrs.js\";\r\nimport clsx from \"clsx\";\r\nimport { makeStyles, useTheme } from \"@material-ui/core/styles\";\r\nimport Badge from \"@material-ui/core/Badge\";\r\nimport MailIcon from \"@material-ui/icons/Mail\";\r\nimport Drawer from \"@material-ui/core/Drawer\";\r\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\r\nimport AppBar from \"@material-ui/core/AppBar\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport MenuIcon from \"@material-ui/icons/Menu\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Menu from \"@material-ui/core/Menu\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport React, { useContext, useRef } from \"react\";\r\nimport Context from \"../../utils/context\";\r\nimport AccountItem from \"./AccountItem.js\";\r\nimport ChangePasswordAndPin from \"../../views/ChangePassworOrPin/ChangePasswordOrPin.js\";\r\nimport AccountCircle from \"@material-ui/icons/AccountBox\";\r\n\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport CustomTextField from \"components/CustomInput/CustomInput\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport { useFormik, Formik } from \"formik\";\r\nimport history from \"../../utils/history\";\r\nimport IntercomComponent from \"./IntercomComponent.js\";\r\nimport classNames from \"classnames\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { useBeforeunload } from \"react-beforeunload\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\n\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nimport { getSiteDetailsActions } from \"store/redux/redux-actions/redux_actions\";\r\n\r\nconst drawerWidth = 150;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: \"flex\",\r\n },\r\n \"@keyframes burgerTransition\": {\r\n marginLeft: theme.spacing(1.5),\r\n marginRight: theme.spacing(3),\r\n from: {\r\n color: primaryDarkColor[0],\r\n width: 50,\r\n height: 50,\r\n boxShadow:\r\n \"0 14px 26px -12px rgba(\" +\r\n hexToRgb(primaryDarkColor[0]) +\r\n \", 0.42), 0 4px 23px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 8px 10px -5px rgba(\" +\r\n hexToRgb(primaryDarkColor[0]) +\r\n \", 0.2)\",\r\n },\r\n to: { color: \"black\", width: 22, height: 22, boxShadow: \"none\" },\r\n },\r\n menuButton: {\r\n animationName: \"$burgerTransition\",\r\n animationDuration: \"1s\",\r\n animationDelay: \"0s\",\r\n marginLeft: theme.spacing(1.5),\r\n marginRight: theme.spacing(3),\r\n },\r\n menuLogo: {\r\n marginLeft: theme.spacing(1.5),\r\n marginRight: theme.spacing(3),\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n drawer: {\r\n width: drawerWidth,\r\n flexShrink: 0,\r\n border: \"none\",\r\n },\r\n DisplayY: {\r\n textAlign: \"center\",\r\n fontSize: 13,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n },\r\n DisplayN: {\r\n textAlign: \"center\",\r\n fontSize: 13,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n display: \"none\",\r\n },\r\n drawerPass: {\r\n width: drawerWidth,\r\n flexShrink: 0,\r\n border: \"none\",\r\n },\r\n\r\n standardButton: {\r\n backgroundColor: primaryColor[7],\r\n color: \"black\",\r\n margin: \"8px 0\",\r\n border: \"none\",\r\n cursor: \"pointer\",\r\n opacity: \"1\",\r\n borderRadius: 0,\r\n width: 10,\r\n zIndex: 999999,\r\n },\r\n accountButton: {\r\n cursor: \"pointer\",\r\n opacity: \"1\",\r\n borderRadius: 0,\r\n zIndex: 999999,\r\n },\r\n notificationButton: {\r\n cursor: \"pointer\",\r\n opacity: \"1\",\r\n borderRadius: 0,\r\n width: 50,\r\n zIndex: 999999,\r\n },\r\n drawerPaper: {\r\n height: \"-webkit-fill-available\",\r\n zIndex: 1,\r\n width: drawerWidth,\r\n top: 56,\r\n border: 0,\r\n paddingTop: 30,\r\n backgroundColor: primaryColor[7],\r\n },\r\n linkButton: {\r\n padding: \"25px 25px\",\r\n width: 35,\r\n textAlign: \"center\",\r\n },\r\n drawerHeader: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: theme.spacing(0, 1),\r\n ...theme.mixins.toolbar,\r\n justifyContent: \"flex-end\",\r\n },\r\n title: {\r\n textAlign: \"center\",\r\n fontSize: 19,\r\n fontWeight: 400,\r\n marginTop: 40,\r\n color: \"white\",\r\n },\r\n textCenter: {\r\n textAlign: \"center\",\r\n fontSize: 13,\r\n fontWeight: 400,\r\n marginTop: 1,\r\n },\r\n content: {\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: -drawerWidth,\r\n },\r\n username: {\r\n fontSize: 14,\r\n width: \"fit-content\",\r\n textTransform: \"capitalize\",\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n Right: {\r\n marginLeft: \"auto\",\r\n marginRight: 20,\r\n textAlign: \"right\",\r\n },\r\n}));\r\n\r\nconst useStyles2 = makeStyles(landingPageStyle);\r\nexport default function HeaderLoggedIN(props) {\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n\r\n const drawers = useSelector((state) => state.GetSiteDetailsReducer.drawers);\r\n\r\n // const [drawers, setDrawers] = React.useState({\r\n // open: false,\r\n // openSecond: false,\r\n // openThird: false,\r\n // lastOpenedDrawer: null, // add a new state variable to store the last opened drawer\r\n // });\r\n\r\n const updateDrawers = (values) => {\r\n dispatch(getSiteDetailsActions.setDrawerState(values));\r\n // setDrawers((prevState) => ({ ...prevState, ...values }));\r\n };\r\n\r\n const [accounts, setAccounts] = React.useState([]);\r\n const dispatch = useDispatch();\r\n const logo = useSelector((state) => state.GetSiteDetailsReducer.logoimageurl);\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const [menuAnimation, setMenuAnimation] = React.useState(false);\r\n React.useEffect(() => {\r\n setMenuAnimation(true);\r\n }, []);\r\n\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const stateMenu = useSelector((state) => state.MenuReducer.menu);\r\n const numOfAccounts = useSelector(\r\n (state) => state.AccountsReducer.numOfAccounts\r\n );\r\n const [buttons, setButtons] = React.useState([]);\r\n const page = props.page;\r\n\r\n useBeforeunload(() => {\r\n handleLogOut();\r\n });\r\n const ref = useRef();\r\n useOnClickOutside(ref, () => {\r\n resetDrawerState();\r\n });\r\n\r\n React.useEffect(() => {\r\n if (stateMenu != null && stateMenu != \"no items\") {\r\n var tmpbuttons = stateMenu.accountMenus.find(\r\n (x) => x.recNo == stateSelectedAccount.recno\r\n );\r\n if (tmpbuttons != null) {\r\n setButtons(tmpbuttons.menuButtons);\r\n } else {\r\n setButtons([]);\r\n }\r\n }\r\n }, [stateSelectedAccount]);\r\n\r\n React.useEffect(() => {\r\n if (stateSelectedAccount == \"NoAccount\") {\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n if (data.activeAccounts.length == 1) {\r\n if (data.activeAccounts[0].planinplace == \"Y\") {\r\n setPlanText(\"Amend\");\r\n } else {\r\n setPlanText(\"Create\");\r\n }\r\n }\r\n })\r\n\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", error, context);\r\n }\r\n });\r\n } else {\r\n if (stateSelectedAccount.planinplace == \"Y\") {\r\n setPlanText(\"Amend\");\r\n } else {\r\n setPlanText(\"Create\");\r\n }\r\n }\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n let contextDrawers = {\r\n open: false,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: \"drawerOne\", // set the last opened drawer to drawerOne when opening\r\n };\r\n // if (isMobile) {\r\n // } else {\r\n if (!context.stateTwo) {\r\n contextDrawers.openSecond = false;\r\n } else {\r\n contextDrawers.openSecond = context.stateTwo;\r\n contextDrawers.lastOpenedDrawer = \"drawerTwo\";\r\n }\r\n if (!context.stateThree) {\r\n contextDrawers.openThird = false;\r\n } else {\r\n contextDrawers.openThird = context.stateThree;\r\n contextDrawers.lastOpenedDrawer = \"drawerTree\";\r\n }\r\n if (!context.stateOne) {\r\n contextDrawers.open = true;\r\n } else {\r\n contextDrawers.open = context.stateOne;\r\n contextDrawers.lastOpenedDrawer = \"drawerOne\";\r\n }\r\n // }\r\n updateDrawers(contextDrawers);\r\n var arr = [];\r\n\r\n if (stateAccounts == \"NoAccount\") {\r\n Object.keys(stateAccounts).forEach(function(key) {\r\n arr.push(stateAccounts[key]);\r\n });\r\n setAccounts(arr);\r\n } else {\r\n arr = Object.values(stateAccounts);\r\n setAccounts(arr);\r\n }\r\n }, []);\r\n const resetDrawerState = () => {\r\n updateDrawers({\r\n open: false,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: drawers.lastOpenedDrawer, // set the last opened drawer to drawerOne when opening\r\n });\r\n context.dispatchDrawer(false);\r\n\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(false);\r\n };\r\n const handleDrawerOpen = () => {\r\n if (drawers.open || drawers.openSecond || drawers.openThird) {\r\n resetDrawerState();\r\n } else {\r\n context.dispatchDrawer(true);\r\n debugger;\r\n if (drawers.lastOpenedDrawer === \"drawerOne\" || numOfAccounts == 1) {\r\n handleFirtstDrawerOpen();\r\n } else if (drawers.lastOpenedDrawer === \"drawerTwo\") {\r\n handleSecondDrawerOpen();\r\n } else if (drawers.lastOpenedDrawer === \"drawerTree\") {\r\n handleThirdDrawerOpen();\r\n }\r\n }\r\n };\r\n const handleFirtstDrawerOpen = (fromBackButton = false) => {\r\n debugger;\r\n if (numOfAccounts > 1) {\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n } else {\r\n dispatch(ACTIONS.set_selectedAccount(accounts[0]));\r\n }\r\n\r\n updateDrawers({\r\n open: true,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: \"drawerOne\", // set the last opened drawer to drawerOne when opening\r\n });\r\n context.dispatchDrawer(true);\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(true);\r\n if (numOfAccounts > 1 && fromBackButton) {\r\n history.push(`/welcome`);\r\n }\r\n };\r\n const handleSecondDrawerOpen = () => {\r\n var arr = Object.values(stateAccounts);\r\n setAccounts(arr);\r\n\r\n updateDrawers({\r\n open: false,\r\n openSecond: true,\r\n openThird: false,\r\n lastOpenedDrawer: \"drawerTwo\", // set the last opened drawer to drawerTwo when opening\r\n });\r\n context.dispatchDrawer(true);\r\n\r\n context.dispatchDrawerTwo(true);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(false);\r\n if (stateSelectedAccount == \"NoAccount\") {\r\n dispatch(ACTIONS.set_selectedAccount(accounts[0]));\r\n\r\n history.push(`/viewAccount`);\r\n }\r\n };\r\n const handleThirdDrawerOpen = (e) => {\r\n updateDrawers({\r\n open: false,\r\n openSecond: false,\r\n openThird: true,\r\n lastOpenedDrawer: \"drawerTree\", // set the last opened drawer to drawerTwo when opening\r\n });\r\n context.dispatchDrawer(true);\r\n\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(true);\r\n context.dispatchDrawerOne(false);\r\n };\r\n\r\n const handlebacktosecond = () => {\r\n updateDrawers({\r\n openThird: false,\r\n openSecond: true,\r\n open: false,\r\n lastOpenedDrawer: \"drawerTwo\", // set the last opened drawer to drawerTwo when going back\r\n });\r\n context.dispatchDrawerTwo(true);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(false);\r\n };\r\n\r\n const handleLogOut = () => {\r\n context.authObj.logout();\r\n };\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const handleChangePassword = () => {\r\n history.push(\"/changePassword\");\r\n };\r\n const handleChangePin = () => {\r\n history.push(\"/changePin\");\r\n };\r\n const handlereadMessages = () => {\r\n history.push(\"/messages\");\r\n };\r\n\r\n const context = useContext(Context);\r\n\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const handleMenu = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const [planText, setPlanText] = React.useState(\"\");\r\n const openp = Boolean(anchorEl);\r\n const budgetPageButton = buttons.find((x) => x.buttonName === \"budgetPage\");\r\n\r\n const budgetPageButtonisVisible =\r\n budgetPageButton && budgetPageButton.buttonVisible === \"Y\";\r\n\r\n const budgetPageButtonclassName = budgetPageButtonisVisible\r\n ? classes.DisplayY\r\n : classes.DisplayN;\r\n\r\n if (numOfAccounts == 1) {\r\n return (\r\n \r\n \r\n\r\n \r\n {loading == true ? : null}\r\n\r\n \r\n \r\n \r\n \r\n\r\n {logo === \"\" ? null : (\r\n \r\n )}\r\n\r\n
\r\n {stateCustomer.unreadmessages == 0 ? null : (\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 {stateCustomer.cufname\r\n ? stateCustomer.cufname\r\n : stateCustomer.culname.toLowerCase()}\r\n \r\n \r\n\r\n \r\n {/* \r\n Messages ({stateCustomer.unreadmessages}){\" \"}\r\n */}\r\n Log Out\r\n \r\n Change Password\r\n \r\n Change Pin\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

Welcome

\r\n {buttons.length === 0 ? null : (\r\n <>\r\n {\" \"}\r\n {renderButton(\r\n \"viewOffer\",\r\n \"/viewoffer\",\r\n \"fa fa-suitcase\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"createPayment\",\r\n \"/createPayment\",\r\n \"fa fa-credit-card\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"payNow\",\r\n \"/payNow\",\r\n \"fa fa-credit-card-alt\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"viewAccount\",\r\n \"/viewAccount\",\r\n \"fa fa-user-circle-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"budgetPage\",\r\n \"/budgetPage\",\r\n \"fa fa-handshake-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"faq\",\r\n \"/faq\",\r\n \"fa fa-question-circle-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"requestcallback-page\",\r\n \"/requestcallback-page\",\r\n \"fa fa-phone\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n \r\n )}\r\n \r\n \r\n );\r\n } else if (numOfAccounts > 1) {\r\n return (\r\n
\r\n \r\n \r\n {loading == true ? : null}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n {logo === \"\" ? null : (\r\n \r\n )}\r\n
\r\n {stateCustomer.unreadmessages == 0 ? null : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {\" \"}\r\n {stateCustomer.cufname\r\n ? stateCustomer.cufname\r\n : stateCustomer.culname.toLowerCase()}\r\n \r\n \r\n \r\n Log Out\r\n \r\n Change Password\r\n \r\n Change Pin\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

Welcome

\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n

Accounts ({numOfAccounts})

\r\n\r\n
\r\n \r\n \r\n \r\n

Buget Planner

\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n

Faq

\r\n \r\n \r\n {accounts.map((account, index) => (\r\n \r\n ))}\r\n\r\n
\r\n handleFirtstDrawerOpen(true)}\r\n className={classes.linkButton}\r\n color={page == \"back\" ? \"primary\" : \"linkedin\"}\r\n >\r\n \r\n \r\n
\r\n\r\n

back

\r\n \r\n \r\n {buttons.length === 0 ? null : (\r\n <>\r\n {\" \"}\r\n {renderButton(\r\n \"viewOffer\",\r\n \"/viewoffer\",\r\n \"fa fa-suitcase\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"createPayment\",\r\n \"/createPayment\",\r\n \"fa fa-credit-card\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"payNow\",\r\n \"/payNow\",\r\n \"fa fa-credit-card-alt\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"viewAccount\",\r\n \"/viewAccount\",\r\n \"fa fa-user-circle-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"budgetPage\",\r\n \"/budgetPage\",\r\n \"fa fa-handshake-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"faq\",\r\n \"/faq\",\r\n \"fa fa-question-circle-o\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n {renderButton(\r\n \"requestcallback-page\",\r\n \"/requestcallback-page\",\r\n \"fa fa-phone\",\r\n buttons,\r\n classes,\r\n page\r\n )}\r\n \r\n )}\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n

back

\r\n \r\n
\r\n );\r\n } else if (numOfAccounts == 0) {\r\n return \"loading...\";\r\n }\r\n}\r\n\r\nfunction useOnClickOutside(ref, handler) {\r\n React.useEffect(() => {\r\n if (isMobile) {\r\n const listener = (event) => {\r\n // Do nothing if clicking ref's element or descendent elements\r\n if (!ref.current || ref.current.contains(event.target)) {\r\n return;\r\n }\r\n handler(event);\r\n };\r\n document.addEventListener(\"mousedown\", listener);\r\n document.addEventListener(\"touchstart\", listener);\r\n return () => {\r\n document.removeEventListener(\"mousedown\", listener);\r\n document.removeEventListener(\"touchstart\", listener);\r\n };\r\n\r\n // Add ref and handler to effect dependencies\r\n // It's worth noting that because passed in handler is a new ...\r\n // ... function on every render that will cause this effect ...\r\n // ... callback/cleanup to run every render. It's not a big deal ...\r\n // ... but to optimize you can wrap handler in useCallback before ...\r\n // ... passing it into this hook.\r\n }\r\n }, [ref, handler]);\r\n}\r\n\r\nfunction renderButton(name, path, icon, buttons, classes, page) {\r\n const button = buttons.find((x) => x.buttonName === name);\r\n // console.log(button.buttonName);\r\n // console.log(button.buttonVisible);\r\n\r\n if (!button || button.buttonVisible !== \"Y\") {\r\n return null;\r\n }\r\n return (\r\n <>\r\n
\r\n \r\n \r\n \r\n
\r\n

{button.buttonText}

\r\n \r\n );\r\n}\r\n\r\nfunction textClass(button) {\r\n return button.buttonVisible === \"Y\" ? \"DisplayY\" : \"DisplayN\";\r\n}\r\n","import {\r\n defaultFont,\r\n primaryColor,\r\n primaryBoxShadow,\r\n infoColor,\r\n infoBoxShadow,\r\n successColor,\r\n successBoxShadow,\r\n warningColor,\r\n warningBoxShadow,\r\n dangerColor,\r\n dangerBoxShadow,\r\n roseColor,\r\n roseBoxShadow,\r\n blackColor,\r\n whiteColor,\r\n grayColor,\r\n hexToRgb,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst customDropdownStyle = (theme) => ({\r\n popperClose: {\r\n pointerEvents: \"none\",\r\n display: \"none !important\",\r\n },\r\n pooperNav: {\r\n [theme.breakpoints.down(\"sm\")]: {\r\n position: \"static !important\",\r\n left: \"unset !important\",\r\n top: \"unset !important\",\r\n transform: \"none !important\",\r\n willChange: \"none !important\",\r\n \"& > div\": {\r\n boxShadow: \"none !important\",\r\n marginLeft: \"1.5rem\",\r\n marginRight: \"1.5rem\",\r\n transition: \"none !important\",\r\n marginTop: \"0px !important\",\r\n marginBottom: \"5px !important\",\r\n padding: \"0px !important\",\r\n },\r\n },\r\n },\r\n manager: {\r\n \"& > div > button:first-child > span:first-child, & > div > a:first-child > span:first-child\": {\r\n width: \"100%\",\r\n },\r\n },\r\n innerManager: {\r\n display: \"block\",\r\n \"& > div > button,& > div > a\": {\r\n margin: \"0px !important\",\r\n color: \"inherit !important\",\r\n padding: \"10px 20px !important\",\r\n \"& > span:first-child\": {\r\n width: \"100%\",\r\n justifyContent: \"flex-start\",\r\n },\r\n },\r\n },\r\n target: {\r\n \"& > button:first-child > span:first-child, & > a:first-child > span:first-child\": {\r\n display: \"inline-block\",\r\n },\r\n \"& $caret\": {\r\n marginLeft: \"0px\",\r\n },\r\n },\r\n dropdown: {\r\n borderRadius: \"3px\",\r\n border: \"0\",\r\n boxShadow: \"0 2px 5px 0 rgba(\" + hexToRgb(blackColor) + \", 0.26)\",\r\n top: \"100%\",\r\n zIndex: \"1000\",\r\n minWidth: \"160px\",\r\n padding: \"5px 0\",\r\n margin: \"2px 0 0\",\r\n fontSize: \"14px\",\r\n textAlign: \"left\",\r\n listStyle: \"none\",\r\n backgroundColor: whiteColor,\r\n backgroundClip: \"padding-box\",\r\n },\r\n menuList: {\r\n padding: \"0\",\r\n },\r\n pooperResponsive: {\r\n zIndex: \"1200\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n zIndex: \"1640\",\r\n position: \"static\",\r\n float: \"none\",\r\n width: \"auto\",\r\n marginTop: \"0\",\r\n backgroundColor: \"transparent\",\r\n border: \"0\",\r\n boxShadow: \"none\",\r\n color: \"black\",\r\n },\r\n },\r\n dropdownItem: {\r\n ...defaultFont,\r\n fontSize: \"13px\",\r\n padding: \"10px 20px\",\r\n margin: \"0 5px\",\r\n borderRadius: \"2px\",\r\n position: \"relative\",\r\n transition: \"all 150ms linear\",\r\n display: \"block\",\r\n clear: \"both\",\r\n fontWeight: \"400\",\r\n height: \"100%\",\r\n color: grayColor[8],\r\n whiteSpace: \"nowrap\",\r\n minHeight: \"unset\",\r\n },\r\n darkHover: {\r\n \"&:hover\": {\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(grayColor[9]) +\r\n \", 0.4)\",\r\n backgroundColor: grayColor[9],\r\n color: whiteColor,\r\n },\r\n },\r\n primaryHover: {\r\n \"&:hover\": {\r\n backgroundColor: primaryColor[0],\r\n color: whiteColor,\r\n ...primaryBoxShadow,\r\n },\r\n },\r\n infoHover: {\r\n \"&:hover\": {\r\n backgroundColor: infoColor[0],\r\n color: whiteColor,\r\n ...infoBoxShadow,\r\n },\r\n },\r\n successHover: {\r\n \"&:hover\": {\r\n backgroundColor: successColor[0],\r\n color: whiteColor,\r\n ...successBoxShadow,\r\n },\r\n },\r\n warningHover: {\r\n \"&:hover\": {\r\n backgroundColor: warningColor[0],\r\n color: whiteColor,\r\n ...warningBoxShadow,\r\n },\r\n },\r\n dangerHover: {\r\n \"&:hover\": {\r\n backgroundColor: dangerColor[0],\r\n color: whiteColor,\r\n ...dangerBoxShadow,\r\n },\r\n },\r\n roseHover: {\r\n \"&:hover\": {\r\n backgroundColor: roseColor[0],\r\n color: whiteColor,\r\n ...roseBoxShadow,\r\n },\r\n },\r\n dropdownItemRTL: {\r\n textAlign: \"right\",\r\n },\r\n dropdownDividerItem: {\r\n margin: \"5px 0\",\r\n backgroundColor: \"rgba(\" + hexToRgb(blackColor) + \", 0.12)\",\r\n height: \"1px\",\r\n overflow: \"hidden\",\r\n },\r\n buttonIcon: {\r\n width: \"20px\",\r\n height: \"20px\",\r\n },\r\n caret: {\r\n transition: \"all 150ms ease-in\",\r\n display: \"inline-block\",\r\n width: \"0\",\r\n height: \"0\",\r\n marginLeft: \"4px\",\r\n verticalAlign: \"middle\",\r\n borderTop: \"4px solid\",\r\n borderRight: \"4px solid transparent\",\r\n borderLeft: \"4px solid transparent\",\r\n },\r\n caretActive: {\r\n transform: \"rotate(180deg)\",\r\n },\r\n caretDropup: {\r\n transform: \"rotate(180deg)\",\r\n },\r\n caretRTL: {\r\n marginRight: \"4px\",\r\n },\r\n dropdownHeader: {\r\n display: \"block\",\r\n padding: \"0.1875rem 1.25rem\",\r\n fontSize: \"0.75rem\",\r\n lineHeight: \"1.428571\",\r\n color: grayColor[10],\r\n whiteSpace: \"nowrap\",\r\n fontWeight: \"inherit\",\r\n marginTop: \"10px\",\r\n minHeight: \"24px\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: \"transparent\",\r\n cursor: \"auto\",\r\n },\r\n },\r\n noLiPadding: {\r\n padding: \"0\",\r\n },\r\n});\r\n\r\nexport default customDropdownStyle;\r\n","import React from \"react\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport MenuList from \"@material-ui/core/MenuList\";\r\nimport ClickAwayListener from \"@material-ui/core/ClickAwayListener\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport Grow from \"@material-ui/core/Grow\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport Popper from \"@material-ui/core/Popper\";\r\n// core components\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/xrs/components/customDropdownStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function CustomDropdown(props) {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n\r\n const handleClick = event => {\r\n if (anchorEl && anchorEl.contains(event.target)) {\r\n setAnchorEl(null);\r\n } else {\r\n setAnchorEl(event.currentTarget);\r\n }\r\n };\r\n const handleClose = event => {\r\n if (anchorEl.contains(event.target)) {\r\n return;\r\n }\r\n setAnchorEl(null);\r\n };\r\n const handleCloseMenu = param => {\r\n setAnchorEl(null);\r\n if (props && props.onClick) {\r\n props.onClick(param);\r\n }\r\n };\r\n const {\r\n buttonText,\r\n buttonIcon,\r\n dropdownList,\r\n buttonProps,\r\n dropup,\r\n dropdownHeader,\r\n caret,\r\n hoverColor,\r\n dropPlacement,\r\n rtlActive,\r\n noLiPadding,\r\n innerDropDown,\r\n navDropdown\r\n } = props;\r\n const classes = useStyles();\r\n const caretClasses = classNames({\r\n [classes.caret]: true,\r\n [classes.caretDropup]: dropup && !anchorEl,\r\n [classes.caretActive]: Boolean(anchorEl) && !dropup,\r\n [classes.caretRTL]: rtlActive\r\n });\r\n const dropdownItem = classNames({\r\n [classes.dropdownItem]: true,\r\n [classes[hoverColor + \"Hover\"]]: true,\r\n [classes.noLiPadding]: noLiPadding,\r\n [classes.dropdownItemRTL]: rtlActive\r\n });\r\n const dropDownMenu = (\r\n \r\n {dropdownHeader !== undefined ? (\r\n handleCloseMenu(dropdownHeader)}\r\n className={classes.dropdownHeader}\r\n >\r\n {dropdownHeader}\r\n \r\n ) : null}\r\n {dropdownList.map((prop, key) => {\r\n if (prop.divider) {\r\n return (\r\n handleCloseMenu(\"divider\")}\r\n className={classes.dropdownDividerItem}\r\n />\r\n );\r\n } else if (\r\n prop.props !== undefined &&\r\n prop.props[\"data-ref\"] === \"multi\"\r\n ) {\r\n return (\r\n \r\n {prop}\r\n \r\n );\r\n }\r\n return (\r\n handleCloseMenu(prop)}\r\n className={dropdownItem}\r\n >\r\n {prop}\r\n \r\n );\r\n })}\r\n \r\n );\r\n return (\r\n
\r\n
\r\n \r\n {buttonIcon !== undefined ? (\r\n \r\n ) : null}\r\n {buttonText !== undefined ? buttonText : null}\r\n {caret ? : null}\r\n \r\n
\r\n \r\n {() => (\r\n \r\n \r\n {innerDropDown ? (\r\n dropDownMenu\r\n ) : (\r\n \r\n {dropDownMenu}\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n\r\nCustomDropdown.defaultProps = {\r\n caret: true,\r\n dropup: false,\r\n hoverColor: \"primary\"\r\n};\r\n\r\nCustomDropdown.propTypes = {\r\n hoverColor: PropTypes.oneOf([\r\n \"dark\",\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\"\r\n ]),\r\n buttonText: PropTypes.node,\r\n buttonIcon: PropTypes.object,\r\n dropdownList: PropTypes.array,\r\n buttonProps: PropTypes.object,\r\n dropup: PropTypes.bool,\r\n dropdownHeader: PropTypes.node,\r\n rtlActive: PropTypes.bool,\r\n caret: PropTypes.bool,\r\n dropPlacement: PropTypes.oneOf([\r\n \"bottom\",\r\n \"top\",\r\n \"right\",\r\n \"left\",\r\n \"bottom-start\",\r\n \"bottom-end\",\r\n \"top-start\",\r\n \"top-end\",\r\n \"right-start\",\r\n \"right-end\",\r\n \"left-start\",\r\n \"left-end\"\r\n ]),\r\n noLiPadding: PropTypes.bool,\r\n innerDropDown: PropTypes.bool,\r\n navDropdown: PropTypes.bool,\r\n // This is a function that returns the clicked menu item\r\n onClick: PropTypes.func\r\n};\r\n","import { whiteColor, blackColor, grayColor, hexToRgb } from \"assets/jss/xrs.js\";\r\n\r\nconst tooltipsStyle = {\r\n tooltip: {\r\n padding: \"10px 15px\",\r\n minWidth: \"130px\",\r\n color: whiteColor,\r\n lineHeight: \"1.7em\",\r\n background: \"rgba(\" + hexToRgb(grayColor[15]) + \",0.9)\",\r\n border: \"none\",\r\n borderRadius: \"3px\",\r\n boxShadow:\r\n \"0 8px 10px 1px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 3px 14px 2px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 5px 5px -3px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.2)\",\r\n maxWidth: \"200px\",\r\n textAlign: \"center\",\r\n fontFamily: '\"Helvetica Neue\",Helvetica,Arial,sans-serif',\r\n fontSize: \"0.875em\",\r\n fontStyle: \"normal\",\r\n fontWeight: \"400\",\r\n textShadow: \"none\",\r\n textTransform: \"none\",\r\n letterSpacing: \"normal\",\r\n wordBreak: \"normal\",\r\n wordSpacing: \"normal\",\r\n wordWrap: \"normal\",\r\n whiteSpace: \"normal\",\r\n lineBreak: \"auto\"\r\n }\r\n};\r\n\r\nexport default tooltipsStyle;\r\n","import {\r\n grayColor,\r\n whiteColor,\r\n mlAuto,\r\n hexToRgb,\r\n primaryColor,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nimport tooltip from \"assets/jss/xrs/tooltipsStyle.js\";\r\n\r\nconst headerLinksStyle = (theme) => ({\r\n list: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n WebkitBoxAlign: \"center\",\r\n MsFlexAlign: \"center\",\r\n alignItems: \"center\",\r\n WebkitBoxOrient: \"horizontal\",\r\n WebkitBoxDirection: \"normal\",\r\n MsFlexDirection: \"row\",\r\n flexDirection: \"row\",\r\n },\r\n [theme.breakpoints.down(\"sm\")]: {\r\n display: \"block\",\r\n },\r\n marginTop: \"0px\",\r\n display: \"flex\",\r\n paddingLeft: \"0\",\r\n marginBottom: \"0\",\r\n listStyle: \"none\",\r\n padding: \"0\",\r\n },\r\n listItem: {\r\n float: \"left\",\r\n color: \"inherit\",\r\n position: \"relative\",\r\n display: \"block\",\r\n width: \"auto\",\r\n margin: \"0\",\r\n padding: \"0\",\r\n fontFamily: primaryColor[8],\r\n fontSize: primaryColor[9],\r\n [theme.breakpoints.down(\"sm\")]: {\r\n \"& ul\": {\r\n maxHeight: \"400px\",\r\n overflow: \"scroll\",\r\n },\r\n width: \"100%\",\r\n \"&:not(:last-child)\": {\r\n \"&:after\": {\r\n width: \"calc(100% - 30px)\",\r\n content: '\"\"',\r\n display: \"block\",\r\n height: \"1px\",\r\n marginLeft: \"15px\",\r\n backgroundColor: grayColor[14],\r\n },\r\n },\r\n },\r\n },\r\n listItemText: {\r\n padding: \"0 !important\",\r\n },\r\n navLink: {\r\n color: \"inherit\",\r\n position: \"relative\",\r\n padding: \"0.9375rem\",\r\n fontWeight: \"500\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n lineHeight: \"20px\",\r\n textDecoration: \"none\",\r\n margin: \"0px\",\r\n display: \"inline-flex\",\r\n \"&:hover,&:focus\": {\r\n color: \"inherit\",\r\n },\r\n \"& .fab,& .far,& .fal,& .fas,& .material-icons\": {\r\n position: \"relative\",\r\n top: \"2px\",\r\n marginTop: \"-4px\",\r\n marginRight: \"4px\",\r\n marginBottom: \"0px\",\r\n fontSize: \"1.25rem\",\r\n },\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: \"calc(100% - 30px)\",\r\n marginLeft: \"15px\",\r\n marginBottom: \"8px\",\r\n marginTop: \"8px\",\r\n textAlign: \"left\",\r\n \"& > span:first-child\": {\r\n justifyContent: \"flex-start\",\r\n },\r\n },\r\n \"& svg\": {\r\n marginRight: \"3px\",\r\n width: \"20px\",\r\n height: \"20px\",\r\n },\r\n },\r\n navLinkJustIcon: {\r\n \"& .fab,& .far,& .fal,& .fas,& .material-icons\": {\r\n marginRight: \"0px\",\r\n },\r\n \"& svg\": {\r\n marginRight: \"0px\",\r\n },\r\n },\r\n navButton: {\r\n position: \"relative\",\r\n fontWeight: \"400\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n lineHeight: \"20px\",\r\n textDecoration: \"none\",\r\n margin: \"0px\",\r\n display: \"inline-flex\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n width: \"calc(100% - 30px)\",\r\n marginLeft: \"15px\",\r\n marginBottom: \"5px\",\r\n marginTop: \"5px\",\r\n textAlign: \"left\",\r\n \"& > span:first-child\": {\r\n justifyContent: \"flex-start\",\r\n },\r\n },\r\n \"& $icons\": {\r\n marginRight: \"3px\",\r\n },\r\n },\r\n notificationNavLink: {\r\n color: \"inherit\",\r\n padding: \"0.9375rem\",\r\n fontWeight: \"400\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n lineHeight: \"20px\",\r\n textDecoration: \"none\",\r\n margin: \"0px\",\r\n display: \"inline-flex\",\r\n },\r\n registerNavLink: {\r\n position: \"relative\",\r\n fontWeight: \"400\",\r\n fontSize: \"12px\",\r\n textTransform: \"uppercase\",\r\n lineHeight: \"20px\",\r\n textDecoration: \"none\",\r\n margin: \"0px\",\r\n display: \"inline-flex\",\r\n },\r\n navLinkActive: {\r\n \"&, &:hover, &:focus,&:active \": {\r\n color: \"inherit\",\r\n backgroundColor: \"rgba(\" + hexToRgb(whiteColor) + \", 0.1)\",\r\n },\r\n },\r\n icons: {\r\n width: \"20px\",\r\n height: \"20px\",\r\n marginRight: \"14px\",\r\n },\r\n dropdownIcons: {\r\n width: \"24px\",\r\n height: \"24px\",\r\n marginRight: \"14px\",\r\n opacity: \"0.5\",\r\n marginTop: \"-4px\",\r\n top: \"1px\",\r\n verticalAlign: \"middle\",\r\n fontSize: \"24px\",\r\n position: \"relative\",\r\n },\r\n socialIcons: {\r\n position: \"relative\",\r\n fontSize: \"1.25rem\",\r\n maxWidth: \"24px\",\r\n },\r\n dropdownLink: {\r\n \"&,&:hover,&:focus\": {\r\n color: primaryColor[10],\r\n textDecoration: \"none\",\r\n fontWeight: 400,\r\n display: \"flex\",\r\n padding: \"0.75rem 1.25rem 0.75rem 0.75rem\",\r\n },\r\n },\r\n img: {\r\n paddingLeft: \"10px\",\r\n },\r\n ...tooltip,\r\n marginRight5: {\r\n marginRight: \"5px\",\r\n },\r\n collapse: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n display: \"flex !important\",\r\n MsFlexPreferredSize: \"auto\",\r\n flexBasis: \"auto\",\r\n },\r\n WebkitBoxFlex: \"1\",\r\n MsFlexPositive: \"1\",\r\n flexGrow: \"1\",\r\n WebkitBoxAlign: \"center\",\r\n MsFlexAlign: \"center\",\r\n alignItems: \"center\",\r\n },\r\n mlAuto,\r\n});\r\n\r\nexport default headerLinksStyle;\r\n","/* eslint-disable */\r\nimport React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// react components for routing our app without refresh\r\nimport { Link } from \"react-router-dom\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// @material-ui/icons\r\nimport Apps from \"@material-ui/icons/Apps\";\r\nimport ShoppingCart from \"@material-ui/icons/ShoppingCart\";\r\nimport ViewDay from \"@material-ui/icons/ViewDay\";\r\nimport Dns from \"@material-ui/icons/Dns\";\r\nimport Build from \"@material-ui/icons/Build\";\r\nimport ListIcon from \"@material-ui/icons/List\";\r\nimport People from \"@material-ui/icons/People\";\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport MonetizationOn from \"@material-ui/icons/MonetizationOn\";\r\nimport Chat from \"@material-ui/icons/Chat\";\r\nimport Call from \"@material-ui/icons/Call\";\r\nimport ViewCarousel from \"@material-ui/icons/ViewCarousel\";\r\nimport Home from \"@material-ui/icons/Home\";\r\nimport ArtTrack from \"@material-ui/icons/ArtTrack\";\r\nimport ViewQuilt from \"@material-ui/icons/ViewQuilt\";\r\nimport LocationOn from \"@material-ui/icons/LocationOn\";\r\nimport Fingerprint from \"@material-ui/icons/Fingerprint\";\r\nimport AttachMoney from \"@material-ui/icons/AttachMoney\";\r\nimport Store from \"@material-ui/icons/Store\";\r\nimport AccountCircle from \"@material-ui/icons/AccountCircle\";\r\nimport PersonAdd from \"@material-ui/icons/PersonAdd\";\r\nimport Layers from \"@material-ui/icons/Layers\";\r\nimport ShoppingBasket from \"@material-ui/icons/ShoppingBasket\";\r\nimport LineStyle from \"@material-ui/icons/LineStyle\";\r\nimport Error from \"@material-ui/icons/Error\";\r\n\r\n// core components\r\nimport CustomDropdown from \"components/CustomDropdown/CustomDropdown.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/xrs/components/headerLinksStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function HeaderLinks(props) {\r\n const easeInOutQuad = (t, b, c, d) => {\r\n t /= d / 2;\r\n if (t < 1) return (c / 2) * t * t + b;\r\n t--;\r\n return (-c / 2) * (t * (t - 2) - 1) + b;\r\n };\r\n\r\n const smoothScroll = (e, target) => {\r\n if (window.location.pathname === \"/sections\") {\r\n var isMobile = navigator.userAgent.match(\r\n /(iPad)|(iPhone)|(iPod)|(android)|(webOS)/i\r\n );\r\n if (isMobile) {\r\n // if we are on mobile device the scroll into view will be managed by the browser\r\n } else {\r\n e.preventDefault();\r\n var targetScroll = document.getElementById(target);\r\n scrollGo(document.documentElement, targetScroll.offsetTop, 1250);\r\n }\r\n }\r\n };\r\n const scrollGo = (element, to, duration) => {\r\n var start = element.scrollTop,\r\n change = to - start,\r\n currentTime = 0,\r\n increment = 20;\r\n\r\n var animateScroll = function() {\r\n currentTime += increment;\r\n var val = easeInOutQuad(currentTime, start, change, duration);\r\n element.scrollTop = val;\r\n if (currentTime < duration) {\r\n setTimeout(animateScroll, increment);\r\n }\r\n };\r\n animateScroll();\r\n };\r\n var onClickSections = {};\r\n\r\n const { dropdownHoverColor } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n Welcome\r\n \r\n \r\n \r\n \r\n Accounts\r\n \r\n \r\n \r\n \r\n Budget Planer\r\n \r\n \r\n \r\n \r\n Request Call Back\r\n \r\n \r\n \r\n \r\n FAQ\r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nHeaderLinks.defaultProps = {\r\n hoverColor: \"primary\",\r\n};\r\n\r\nHeaderLinks.propTypes = {\r\n dropdownHoverColor: PropTypes.oneOf([\r\n \"dark\",\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\",\r\n ]),\r\n};\r\n","/*eslint-disable*/ import React from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport HeaderLoggedIN from \"components/Header/HeaderLoggedIN.js\";\r\nimport HeaderLinks from \"components/Header/HeaderLinksUser\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function HeaderSectionLoggedID(props) {\r\n const page = props.page;\r\n document.title = props.title;\r\n const classes = useStyles();\r\n return (\r\n
\r\n }\r\n relative\r\n changeColorOnScroll={{\r\n height: 0,\r\n color: \"white\",\r\n }}\r\n />\r\n
\r\n );\r\n}\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst welcomeSectionStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: primaryColor[20],\r\n fontWeight: 400,\r\n marginBottom: 0,\r\n },\r\n RightText: {\r\n marginBottom: 5,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n tableWrapper: {\r\n maxHeight: 270,\r\n overflow: \"auto\",\r\n maxWidth: 600,\r\n },\r\n tableWrapperMobile: {\r\n maxHeight: 270,\r\n overflow: \"auto\",\r\n maxWidth: 400,\r\n marginTop: 10,\r\n marginBottom: 0,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n accountRow: {\r\n paddingRight: 15,\r\n marginLeft: 15,\r\n marginRight: -15,\r\n paddingTop: 3,\r\n paddingBottom: 3,\r\n },\r\n groupRow: {\r\n backgroundColor: \"#D3F3F3\",\r\n width: \"100%\",\r\n marginLeft: 30,\r\n marginRight: 0,\r\n borderBottom: \"1px solid\",\r\n borderColor: \"black\",\r\n fontWeight: 600,\r\n paddingLeft: 0,\r\n },\r\n totalRow: {\r\n paddingRight: 0,\r\n marginLeft: 0,\r\n marginRight: 15,\r\n fontWeight: 600,\r\n },\r\n};\r\n\r\nexport default welcomeSectionStyle;\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport welcomeSectionStyle from \"assets/jss/xrs/views/sectionsSections/welcomeSectionStyle\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Moment from \"react-moment\";\r\nimport { isClassExpression } from \"typescript\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst columns = [\r\n { id: textVariables[1], label: textVariables[1], minWidth: 50 },\r\n { id: textVariables[2], label: textVariables[2], minWidth: 50 },\r\n {\r\n id: textVariables[3],\r\n label: textVariables[3],\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n {\r\n id: textVariables[4],\r\n label: textVariables[4],\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n];\r\n\r\nconst MobileColumns = [\r\n { id: \"Account #\", label: \"Account #\", minWidth: 50 },\r\n {\r\n id: \"Balance\",\r\n label: \"Balance\",\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n {\r\n id: \"Arrears\",\r\n label: \"Arrears\",\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n];\r\n\r\nconst useStyles = makeStyles(welcomeSectionStyle);\r\nexport default function WellcomeSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const createData = (orgname, accountnumber, balance, arrearsamount, Id) => {\r\n return { Id, orgname, accountnumber, balance, arrearsamount };\r\n };\r\n const dispatch = useDispatch();\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n const [render, setRender] = React.useState(0);\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [site, setSite] = React.useState(\"\");\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const selectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n\r\n const ReadContext = (accounts) => {\r\n const dataRows = [];\r\n var data = accounts;\r\n if (data != \"NoAccounts\") {\r\n var i = 1;\r\n data.forEach((item) => {\r\n dataRows.push(\r\n createData(\r\n item.orgname,\r\n item.accountnumber,\r\n item.balance,\r\n item.arrearsamount,\r\n i\r\n )\r\n );\r\n i++;\r\n });\r\n setRowdata(dataRows);\r\n }\r\n };\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(ACTIONS.set_Site(response));\r\n\r\n setSite(response);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get SiteDetatils\", error, context);\r\n }\r\n });\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (!context.authObj.isAuthenticatedUser()) {\r\n context.authObj.logout();\r\n } else {\r\n setBallance(stateCustomer.totalbalance);\r\n ReadContext(stateAccounts);\r\n }\r\n }, [ballance]);\r\n const [ballance, setBallance] = React.useState(0);\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {ReactHtmlParser(stateCustomer.welcomE1)}\r\n \r\n
\r\n \r\n \r\n \r\n {columns.map((column) => (\r\n \r\n {column.label}\r\n \r\n ))}\r\n \r\n \r\n \r\n {rowdata.map((row) => (\r\n \r\n {row.orgname}\r\n \r\n {row.accountnumber}\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\n \r\n {rowdata.map(function(row, index) {\r\n return (\r\n \r\n \r\n {row.orgname} ({row.accountnumber})\r\n
\r\n \r\n \r\n \r\n \r\n Arrears\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n })}\r\n \r\n \r\n\r\n {ReactHtmlParser(stateCustomer.welcomE2)}\r\n \r\n \r\n
{textVariables[5]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.accountnumber\r\n : stateCustomer.custnumber}\r\n

\r\n
{textVariables[6]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptofficehours\r\n : stateAccounts[0].deptofficehours}\r\n

\r\n
Address
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptaddress\r\n : stateAccounts[0].deptaddress}\r\n

\r\n
Phone
\r\n

\r\n {\" \"}\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptphonenumber\r\n : stateAccounts[0].deptphonenumber}\r\n

\r\n
Email
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptemail\r\n : stateAccounts[0].deptemail}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport WellcomeSection from \"../SectionsPage/Sections/WellcomeSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function LandingPage(props) {\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\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","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst documentsPageStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default documentsPageStyle;\r\n","import React, { useContext, useMemo } from \"react\";\r\nimport {\r\n primaryColor,\r\n primaryDarkColor,\r\n successColor,\r\n dangerColor,\r\n primaryBoxShadow,\r\n} from \"assets/jss/xrs.js\";\r\nimport { cameraActions } from \"../../../store/redux/redux-actions/redux_actions\";\r\nimport { useDropzone } from \"react-dropzone\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst baseStyle = {\r\n flex: 1,\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n alignItems: \"center\",\r\n padding: \"10px\",\r\n marginBottom: \"17px\",\r\n borderWidth: 2,\r\n borderRadius: 2,\r\n borderColor: primaryDarkColor[3],\r\n borderStyle: \"dashed\",\r\n backgroundColor: primaryDarkColor[3],\r\n color: \"white\",\r\n outline: \"none\",\r\n cursor: \"pointer\",\r\n transition: \"color .24s ease-in-out\",\r\n};\r\n\r\nconst activeStyle = {\r\n borderColor: primaryColor[0],\r\n color: primaryColor[0],\r\n};\r\n\r\nconst acceptStyle = {\r\n borderColor: successColor[0],\r\n color: successColor[0],\r\n};\r\n\r\nconst rejectStyle = {\r\n color: dangerColor[0],\r\n borderColor: dangerColor[0],\r\n};\r\n\r\nexport default function DocumentSection(props) {\r\n const [text, setText] = React.useState(\r\n isMobile\r\n ? \"Tap to upload\"\r\n : \"Drag 'n' drop some files here, or click to select files\"\r\n );\r\n\r\n React.useEffect(() => {\r\n if (props.uploadedDocument != \"\") {\r\n let txt = \"Uploaded documents: \";\r\n\r\n if (props.uploadedDocument.name !== undefined) {\r\n txt = txt + props.uploadedDocument.name;\r\n }\r\n //from documents\r\n else {\r\n txt = txt + props.uploadedDocument.document.name;\r\n }\r\n\r\n setText(txt);\r\n } else {\r\n setText(\r\n isMobile\r\n ? \"Tap to upload\"\r\n : \"Drag 'n' drop some files here, or click to select file\"\r\n );\r\n }\r\n }, [props]);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const {\r\n acceptedFiles,\r\n fileRejections,\r\n getRootProps,\r\n getInputProps,\r\n isDragActive,\r\n isDragAccept,\r\n isDragReject,\r\n } = useDropzone({\r\n maxFiles: 1,\r\n accept: \".pdf, image/jpeg, image/png\",\r\n onDrop: (acceptedFiles) => {\r\n // window.open(URL.createObjectURL(acceptedFiles[0]));\r\n if (acceptedFiles[0]) {\r\n let docs = Object.assign(acceptedFiles[0], {\r\n preview: URL.createObjectURL(acceptedFiles[0]),\r\n });\r\n\r\n let document = {\r\n from: props.item.from,\r\n itemId: props.item.itemId,\r\n document: docs,\r\n };\r\n if (props.uploadedDocument != \"\") {\r\n dispatch(cameraActions.deleteDocument(props.uploadedDocument));\r\n }\r\n dispatch(cameraActions.addCapturedImage(document));\r\n }\r\n },\r\n });\r\n\r\n const style = useMemo(\r\n () => ({\r\n ...baseStyle,\r\n ...(isDragActive ? activeStyle : {}),\r\n ...(isDragAccept ? acceptStyle : {}),\r\n ...(isDragReject ? rejectStyle : {}),\r\n ...(props.uploadedDocument != \"\" ? acceptStyle : {}),\r\n }),\r\n [isDragActive, isDragReject, props.uploadedDocument]\r\n );\r\n\r\n return (\r\n
\r\n \r\n

{text}

\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport documentsPageStyle from \"../../assets/jss/xrs/views/documentsPageStyle\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport DocumentSection from \"../SectionsPage/Sections/DocumentSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(documentsPageStyle);\r\n\r\nexport default function DocumentsPage(props) {\r\n const context = useContext(Context);\r\n const openCamera = useSelector((state) => state.CameraReducer.open);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n if (openCamera) {\r\n return ;\r\n }\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","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst viewAccountSectionStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 60,\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: primaryColor[20],\r\n fontWeight: 400,\r\n marginBottom: 0,\r\n },\r\n RightText: {\r\n marginBottom: 5,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n tableWrapper: {\r\n maxHeight: 270,\r\n overflow: \"auto\",\r\n },\r\n tableWrapperMobile: {\r\n overflowX: \"hidden\",\r\n overflowY: \"scroll\",\r\n maxHeight: 270,\r\n marginLeft: 0,\r\n marginRight: 0,\r\n marginBottom: 10,\r\n },\r\n fullRow: {\r\n width: \"100%\",\r\n },\r\n accountRow: {\r\n paddingRight: 0,\r\n marginLeft: 0,\r\n marginRight: 0,\r\n },\r\n\r\n groupRow: {\r\n backgroundColor: \"#D3F3F3\",\r\n width: \"100%\",\r\n marginLeft: 0,\r\n marginRight: 0,\r\n borderBottom: \"1px solid\",\r\n borderColor: \"gray\",\r\n },\r\n totalRow: {\r\n paddingRight: 0,\r\n marginLeft: 0,\r\n marginRight: 15,\r\n fontWeight: 600,\r\n },\r\n};\r\n\r\nexport default viewAccountSectionStyle;\r\n","import { makeStyles } from \"@material-ui/core/styles\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\nimport viewAccountSectionStyle from \"assets/jss/xrs/views/sectionsSections/viewAccountSectionStyle\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport * as ACTIONS from \"store/actions/actions\";\r\n\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport React, { useContext } from \"react\";\r\nimport Moment from \"react-moment\";\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport groupArray from \"group-array\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n cameraActions,\r\n} from \"../../../store/redux/redux-actions/redux_actions\";\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nimport { BorderBottom, BorderColor } from \"@material-ui/icons\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst useStyles = makeStyles(viewAccountSectionStyle);\r\nexport default function ViewAccountSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [site, setSite] = React.useState(\"\");\r\n const [page, setPage] = React.useState(1);\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [grouprowdata, setGroupRowdata] = React.useState([]);\r\n const [total, setTotal] = React.useState(0);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const selectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n const dispatch = useDispatch();\r\n\r\n const [account, setAccount] = React.useState([]);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const viewAccountText = useSelector(\r\n (state) => state.HtmlReducer.viewAccountText\r\n );\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n\r\n const createData = (Paydate, Description, Amount, Id) => {\r\n return { Id, Paydate, Description, Amount };\r\n };\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n React.useEffect(() => {\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n setSite(stateSite);\r\n setAccount(stateSelectedAccount);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n var getdata;\r\n var newDate = new Date();\r\n getdata = JSON.stringify({\r\n ITEMCODE: stateSelectedAccount.itemcode,\r\n RECNO: stateSelectedAccount.recno,\r\n STARTDATE: \"2020-01-01\",\r\n ENDDATE: newDate,\r\n });\r\n fetch(URLS.GetTransactionsAPIURL, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: getdata,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Transactions\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then(\r\n (data) => {\r\n const dataRows = [];\r\n var tmptotal = 0;\r\n data.forEach((item, i) => {\r\n tmptotal += item.amount;\r\n dataRows.push(\r\n createData(\r\n fnmoment(item.paydate).format(\"L\"),\r\n item.description,\r\n item.amount,\r\n item.transactionid\r\n )\r\n );\r\n });\r\n setRowdata(dataRows);\r\n\r\n if (stateSelectedAccount == \"NoAccount\") {\r\n setTotal(stateCustomer.totalbalance);\r\n } else {\r\n setTotal(stateSelectedAccount.balance);\r\n }\r\n\r\n var groupedItems = groupArray(dataRows, \"Paydate\");\r\n setGroupRowdata(groupedItems);\r\n },\r\n [page]\r\n )\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Transactions\", error, context);\r\n }\r\n });\r\n // getMenu();\r\n }, [stateSelectedAccount]);\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n const columns = [\r\n { id: \"Paydate\", label: \"Date\", minWidth: 50 },\r\n { id: \"Description\", label: \"Description\", minWidth: 50 },\r\n {\r\n id: \"Ammount\",\r\n label: \"Amount\",\r\n minWidth: 50,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n ];\r\n const MobileColumns = [\r\n {\r\n id: \"Description\",\r\n label: \"Description\",\r\n minWidth: 10,\r\n align: \"left\",\r\n paddingLeft: \"0\",\r\n },\r\n {\r\n id: \"Ammount\",\r\n label: \"Amount\",\r\n minWidth: 50,\r\n align: \"right\",\r\n paddingLeft: \"10\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n ];\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
{ReactHtmlParser(selectedAccount.viewacccounttext)}
\r\n {}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {columns.map((column) => (\r\n \r\n {column.label}\r\n \r\n ))}\r\n \r\n \r\n \r\n {rowdata.map((row) => (\r\n \r\n {row.Paydate}\r\n \r\n {row.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
\r\n
\r\n
\r\n \r\n \r\n {MobileColumns.map((column) => (\r\n \r\n {column.label}\r\n
\r\n ))}\r\n {Object.keys(grouprowdata).map(function(date, index) {\r\n return (\r\n \r\n \r\n {date}\r\n
\r\n {grouprowdata[date].map(function(row, index2) {\r\n return (\r\n \r\n \r\n {row.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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{textVariables[5]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.accountnumber\r\n : stateCustomer.custnumber}\r\n

\r\n
{textVariables[6]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptofficehours\r\n : stateAccounts[0].deptofficehours}\r\n

\r\n
Address
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptaddress\r\n : stateAccounts[0].deptaddress}\r\n

\r\n
Phone
\r\n

\r\n {\" \"}\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptphonenumber\r\n : stateAccounts[0].deptphonenumber}\r\n

\r\n
Email
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptemail\r\n : stateAccounts[0].deptemail}\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport ViewAccountSection from \"../SectionsPage/Sections/ViewAccountSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport clsx from \"clsx\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles = makeStyles(landingPageStyle);\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function ViewAccountPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\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","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst createPaymentPlanPageStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default createPaymentPlanPageStyle;\r\n","import React, { useContext } from \"react\";\r\nimport history from \"../../../utils/history\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"store/redux/redux-actions/redux_actions\";\r\nimport * as ACTIONS from \"store/actions/actions\";\r\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\n\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport { useFormik } from \"formik\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\n\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\n\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport Iframe from \"react-iframe\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport clsx from \"clsx\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport ReactHtmlParser, {\r\n processNodes,\r\n convertNodeToElement,\r\n htmlparser2,\r\n} from \"react-html-parser\";\r\n\r\nimport html2canvas from \"html2canvas\";\r\nimport Context from \"../../..//utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\nimport { el } from \"date-fns/locale\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n// const useStyles2 = makeStyles((theme) => ({\r\n// content: {\r\n// paddingTop: 60,\r\n// paddingBottom: 38,\r\n// flexGrow: 1,\r\n// padding: theme.spacing(3),\r\n// transition: theme.transitions.create(\"margin\", {\r\n// easing: theme.transitions.easing.sharp,\r\n// duration: theme.transitions.duration.leavingScreen,\r\n// }),\r\n// marginLeft: 0,\r\n// },\r\n// contentShift: {\r\n// transition: theme.transitions.create(\"margin\", {\r\n// easing: theme.transitions.easing.easeOut,\r\n// duration: theme.transitions.duration.enteringScreen,\r\n// }),\r\n// marginLeft: drawerWidth,\r\n// },\r\n// }));\r\nlet eventListenerCopy = null;\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: \"100%\",\r\n },\r\n Hide: {\r\n display: \"none\",\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 60,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n cardNOBORDER: {\r\n border: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n radioAlign: {\r\n marginLeft: \"-10px\",\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n },\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n}));\r\nconst useStyles2 = makeStyles(landingPageStyle);\r\n\r\nexport default function PayNowSection(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const dispatch = useDispatch();\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const [loadingButon, setloadingButon] = React.useState(false);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const convenienceFee = useSelector(\r\n (state) => state.GetSiteDetailsReducer.convenienceFee\r\n );\r\n\r\n const termsQuickPay = useSelector((state) => state.HtmlReducer.termsQuickPay);\r\n const termsPlan = useSelector((state) => state.HtmlReducer.termsPlan);\r\n const termsDiscount = useSelector((state) => state.HtmlReducer.termsDiscount);\r\n const [usesconveniencefee, setUsesconveniencefee] = React.useState(false);\r\n\r\n const [paymentgatewayurl, setPaymentgatewayurl] = React.useState(\"\");\r\n\r\n const [note, setNote] = React.useState(\"\");\r\n\r\n const classes2 = useStyles2();\r\n const context = useContext(Context);\r\n const [page, setPage] = React.useState(1);\r\n const [ifamevisible, setIfamevisible] = React.useState(false);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [selectedDate, handleDateChange] = React.useState(new Date());\r\n const [screenstate, setScreenstate] = React.useState({ screenshot: \"\" });\r\n const [showQuickPay, setShowQuickPay] = React.useState(true);\r\n const [termsClicked, setTermsCliked] = React.useState(false);\r\n const [termsApiText, setTermsApiText] = React.useState(\"\");\r\n const [termsText, setTermsText] = React.useState(\"\");\r\n const [cardref, setCardref] = React.useState(\"\");\r\n const [cufphone, setCufphone] = React.useState(\"\");\r\n const [paymentDate, setPaymentDate] = React.useState(\"\");\r\n const [minPayment, setMinPayment] = React.useState(1);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const stateOffer = useSelector((state) => state.OfferReducer.offer);\r\n\r\n const [value, setValue] = React.useState(\"new\");\r\n\r\n const [amount, setAmmount] = React.useState(\"\");\r\n\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n\r\n const paymentProvider = useSelector(\r\n (state) => state.GetSiteDetailsReducer.paymentProvider\r\n );\r\n\r\n const ChangeNote = (event) => {\r\n setNote(event.target.value);\r\n };\r\n const HideIframe = () => {\r\n setIfamevisible(false);\r\n };\r\n const ShowIframe = () => {\r\n setIfamevisible(true);\r\n };\r\n const handleTermsMobile = () => {\r\n setShowQuickPay(false);\r\n };\r\n const [quickPayAPIData, setquickPayAPIData] = React.useState(undefined);\r\n\r\n React.useEffect(() => {\r\n if (quickPayAPIData) {\r\n window.addEventListener(\"message\", tabaPayMessage, false);\r\n }\r\n return () => {\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n };\r\n }, [quickPayAPIData]);\r\n React.useEffect(() => {\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n let today = fnmoment().format(\"YYYY-MM-DD\");\r\n setPaymentDate(today);\r\n dispatch(ACTIONS.set_PaymentStatusFrom(props.source === \"PayNow\"));\r\n }, []);\r\n React.useEffect(() => {\r\n window.RealexHpp = null;\r\n\r\n const script = document.createElement(\"script\");\r\n script.src = \"rxp-js.js\";\r\n script.async = true;\r\n document.body.appendChild(script);\r\n\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n getMenu();\r\n setTermsApiText(response.termsquickpay);\r\n setCardref(stateCustomer.cardref);\r\n stateCustomer.cardref ? setValue(\"card\") : setValue(\"new\");\r\n setMinPayment(stateCustomer.paynowmin);\r\n setUsesconveniencefee(response.usesconveniencefee);\r\n setPaymentgatewayurl(response.paymentgatewayurl);\r\n\r\n setCufphone(stateCustomer.cuphone);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n return () => {\r\n dispatch(apiActions.clear());\r\n\r\n document.body.removeChild(script);\r\n window.RealexHpp = null;\r\n if (eventListenerCopy != null) {\r\n window.removeEventListener(\"message\", eventListenerCopy, false);\r\n }\r\n };\r\n }, []);\r\n const formik = useFormik({\r\n initialValues: {\r\n amount: value,\r\n },\r\n onSubmit: (values) => {\r\n if (!isMobile) {\r\n dispatch(apiActions.loading(true));\r\n setImageBase64();\r\n }\r\n\r\n if (isMobile) {\r\n if (termsClicked) {\r\n dispatch(apiActions.loading(true));\r\n setImageBase64();\r\n } else {\r\n setShowQuickPay(false);\r\n }\r\n }\r\n },\r\n });\r\n\r\n const RedirectResponse = (RedirecURL) => {\r\n getMenu();\r\n\r\n history.push(RedirecURL);\r\n };\r\n const RelalexInit = (values) => {\r\n var url = URLS.PayNowResponseNoCard;\r\n // ;\r\n if (props.source == \"CreatePaymentPlan\" || props.source == \"ViewOffer\") {\r\n url = URLS.WebOfferResponseNoCard;\r\n }\r\n if (props.oneMonth) {\r\n url = URLS.OnePaymentWebOfferResponseNoCard;\r\n }\r\n\r\n window.RealexHpp.setHppUrl(paymentgatewayurl);\r\n eventListenerCopy = window.RealexHpp.embedded.init(\r\n \"payButtonId\",\r\n \"paymentIframeID\",\r\n url,\r\n values,\r\n RedirectResponse\r\n );\r\n };\r\n const HandleTermsClicked = (e) => {\r\n if (e.target.checked) {\r\n setTermsText(\"I agree \");\r\n } else {\r\n setTermsText(\"I don't agree \");\r\n }\r\n setTermsCliked(e.target.checked);\r\n setShowQuickPay(true);\r\n };\r\n const submitFormPayNow = (values, screen) => {\r\n const token = sessionStorage.getItem(\"access_token\");\r\n setloadingButon(true);\r\n var url;\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateCardRequestTabaPay;\r\n } else {\r\n url = URLS.PayNowURLNoCard;\r\n }\r\n var Amount = values;\r\n\r\n var data;\r\n var iremcode = stateSelectedAccount.itemcode;\r\n var recno = stateSelectedAccount.recno;\r\n var cardref = stateCustomer.cardref;\r\n if (value == \"card\") {\r\n data = {\r\n ItemRecno: recno,\r\n ItemCode: iremcode,\r\n PAYMENTAMOUNT: Amount,\r\n ScreenShot: screen,\r\n CURRENCYSYMBOL: \"EUR\",\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: cardref,\r\n };\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.UseExistingCardTabaPay;\r\n if (usesconveniencefee) {\r\n data.NOTE = note;\r\n }\r\n } else {\r\n url = URLS.PayNowURLCard;\r\n }\r\n data = JSON.stringify(data);\r\n } else {\r\n data = JSON.stringify({\r\n ItemRecno: recno,\r\n ItemCode: iremcode,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n }\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n return res.json();\r\n })\r\n .then(\r\n (data) => {\r\n dispatch(apiActions.loading(false));\r\n if (\r\n (data.MESSAGE != undefined || data.message != undefined) &&\r\n data.AUTHCODE == null\r\n ) {\r\n setloadingButon(false);\r\n ApiErrorHandler(\"Pay Now\", data, context);\r\n } else {\r\n if (value == \"card\") {\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n setquickPayAPIData(data);\r\n } else {\r\n RelalexInit(data);\r\n }\r\n if (isMobile) {\r\n setShowQuickPay(false);\r\n }\r\n setIfamevisible(true);\r\n }\r\n }\r\n },\r\n [page]\r\n )\r\n .catch((error) => {\r\n dispatch(apiActions.loading(false));\r\n setloadingButon(false);\r\n if (error.AUTHCODE) {\r\n if (error.message == \"\") {\r\n } else {\r\n if (stateCustomer.cardref) {\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n }\r\n }\r\n\r\n ApiErrorHandler(\"Pay Now \", error, context);\r\n }\r\n });\r\n };\r\n var tabaPayMessage = function(event) {\r\n //Check if it is from TabaPay\r\n let iframe = document.getElementById(\"SSO\");\r\n\r\n if (typeof event.data === \"string\") {\r\n if (event.data != \"Close\") {\r\n if (event.data.slice(0, 7) == \"Error: \") {\r\n // Error\r\n } else {\r\n var asData = event.data.split(\"|\");\r\n if (asData.length == 3) {\r\n let quickPayData = quickPayAPIData;\r\n let url;\r\n\r\n if (\r\n props.source == \"CreatePaymentPlan\" ||\r\n props.source == \"ViewOffer\"\r\n ) {\r\n url = URLS.SaveOfferResultTabaPay;\r\n\r\n if (props.oneMonth || props.source == \"ViewOffer\") {\r\n url = URLS.SaveSettlementOfferResultabaPay;\r\n }\r\n }\r\n if (props.source == \"PayNow\") {\r\n url = URLS.PayNowAndSaveCardResultTabaPay;\r\n if (usesconveniencefee) {\r\n quickPayData.NOTE = note;\r\n }\r\n }\r\n\r\n quickPayData.LASTDIGITS = asData[0];\r\n quickPayData.EXPIRATIONDATE = asData[1];\r\n quickPayData.CARDTOKEN = asData[2];\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: JSON.stringify(quickPayData),\r\n })\r\n .then((res) => {\r\n if (res.ok) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Pay now\", data, context);\r\n });\r\n setIfamevisible(false);\r\n setloadingButon(false);\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n iframe.src = iframe.src;\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n history.push(response.REDIRECTURL);\r\n })\r\n .catch((error) => {\r\n // if (error.message == \"\") {\r\n // ;\r\n // } else {\r\n // ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n // }\r\n });\r\n } else {\r\n // Data Error\r\n }\r\n }\r\n } else {\r\n setIfamevisible(false);\r\n setloadingButon(false);\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n iframe.src = iframe.src;\r\n }\r\n }\r\n };\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n const submitFormPaymentPlan = (values, screen) => {\r\n dispatch(apiActions.loading(true));\r\n setloadingButon(true);\r\n debugger;\r\n var url;\r\n const token = sessionStorage.getItem(\"access_token\");\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateOfferRequestTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersAPIUrl;\r\n }\r\n\r\n var cardref = stateCustomer.cardref;\r\n var postfreq =\r\n values.frequency == \"Week\"\r\n ? \"Weekly\"\r\n : values.frequency == \"FORT\"\r\n ? \"FORT\"\r\n : \"Monthly\";\r\n\r\n var data;\r\n if (value == \"card\") {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.SetWebOfferTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersCardAPIUrl;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: stateOffer.WOOFFERID,\r\n DOWNPAYMENT: values.downpayment,\r\n REMAINGBAL: values.balanceToPay,\r\n STARTDATE: values.startdate,\r\n FREQUENCY: postfreq,\r\n AMOUNT: Number(values.amount).toFixed(2),\r\n FINALDATE: values.endDate,\r\n FINALAMOUNT: Number(values.amount).toFixed(2),\r\n APPLYDISCOUNT: \"N\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: screen,\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: cardref,\r\n });\r\n } else {\r\n data = JSON.stringify({\r\n OFFERID: stateOffer.WOOFFERID,\r\n DOWNPAYMENT: values.downpayment,\r\n REMAINGBAL: values.balanceToPay,\r\n STARTDATE: values.startdate,\r\n FREQUENCY: postfreq,\r\n AMOUNT: Number(values.amount).toFixed(2),\r\n FINALDATE: values.endDate,\r\n FINALAMOUNT: Number(values.amount).toFixed(2),\r\n APPLYDISCOUNT: \"N\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: screen,\r\n });\r\n }\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n dispatch(apiActions.loading(false));\r\n\r\n return res.json();\r\n })\r\n .then((data) => {\r\n if (\r\n (data.MESSAGE != undefined || data.message != undefined) &&\r\n data.AUTHCODE == null\r\n ) {\r\n ApiErrorHandler(\"Payment Plan\", data, context);\r\n } else {\r\n getMenu();\r\n if (value == \"card\") {\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n setquickPayAPIData(data);\r\n } else {\r\n RelalexInit(data);\r\n }\r\n if (isMobile) {\r\n setShowQuickPay(false);\r\n }\r\n setIfamevisible(true);\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n dispatch(apiActions.loading(false));\r\n\r\n ApiErrorHandler(\"Payment Plan\", error, context);\r\n }\r\n });\r\n };\r\n const submitFormViewOffer = (values, screen) => {\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n var url;\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateOfferRequestTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersAPIUrl;\r\n }\r\n dispatch(apiActions.loading(true));\r\n setloadingButon(true);\r\n var data;\r\n var end = paymentDate;\r\n var dateSetlementOffer = fnmoment\r\n .utc(fnmoment.utc().format())\r\n .local()\r\n .format();\r\n end = fnmoment(end)\r\n .add(values.TERM * 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n if (value == \"card\") {\r\n if (props.oneMonth) {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.SetWebSettlementOfferTabaPay;\r\n } else {\r\n url = URLS.OnePaymentPayNowURLWebOfferUseExistingCard;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: values.OFFERID,\r\n DOWNPAYMENT: values.DOWNPAYMENT,\r\n REMAINGBAL: values.REMAINGBAL,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: dateSetlementOffer,\r\n FREQUENCY: \"ONCEOFF\",\r\n AMOUNT: Number(values.AMOUNT).toFixed(2),\r\n FINALDATE: dateSetlementOffer,\r\n FINALAMOUNT: Number(values.FINALAMOUNT).toFixed(2),\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: values.DISCOUNTOPTIONNUMBER,\r\n SCREENSHOT: screen,\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: stateCustomer.cardref,\r\n });\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.SetWebOfferTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersCardAPIUrl;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: values.OFFERID,\r\n DOWNPAYMENT: values.DOWNPAYMENT,\r\n REMAINGBAL: values.REMAINGBAL,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: paymentDate,\r\n FREQUENCY: values.FREQUENCY,\r\n AMOUNT: Number(values.AMOUNT).toFixed(2),\r\n FINALDATE: end,\r\n FINALAMOUNT: Number(values.FINALAMOUNT).toFixed(2),\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: values.DISCOUNTOPTIONNUMBER,\r\n SCREENSHOT: screen,\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: stateCustomer.cardref,\r\n });\r\n }\r\n } else {\r\n if (props.oneMonth) {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateSettlementOfferRequestTabaPay;\r\n } else {\r\n url = URLS.OnePaymentURLSettlementOfferNoCard;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: values.OFFERID,\r\n DOWNPAYMENT: values.DOWNPAYMENT,\r\n REMAINGBAL: values.REMAINGBAL,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: dateSetlementOffer,\r\n FREQUENCY: \"ONCEOFF\",\r\n AMOUNT: Number(values.AMOUNT).toFixed(2),\r\n FINALDATE: dateSetlementOffer,\r\n FINALAMOUNT: Number(values.FINALAMOUNT).toFixed(2),\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: values.DISCOUNTOPTIONNUMBER,\r\n SCREENSHOT: screen,\r\n });\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n url = URLS.CreateOfferRequestTabaPay;\r\n } else {\r\n url = URLS.GetWebOffersCardAPIUrl;\r\n }\r\n data = JSON.stringify({\r\n OFFERID: values.OFFERID,\r\n DOWNPAYMENT: values.DOWNPAYMENT,\r\n REMAINGBAL: values.REMAINGBAL,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: paymentDate,\r\n FREQUENCY: values.FREQUENCY,\r\n AMOUNT: Number(values.AMOUNT).toFixed(2),\r\n FINALDATE: end,\r\n FINALAMOUNT: Number(values.FINALAMOUNT).toFixed(2),\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: values.DISCOUNTOPTIONNUMBER,\r\n SCREENSHOT: screen,\r\n });\r\n }\r\n }\r\n\r\n fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: data,\r\n })\r\n .then((res) => {\r\n dispatch(apiActions.loading(false));\r\n\r\n return res.json();\r\n })\r\n .then((data) => {\r\n if (\r\n (data.MESSAGE != undefined || data.message != undefined) &&\r\n data.AUTHCODE == null\r\n ) {\r\n ApiErrorHandler(\"Offer Plan\", data, context);\r\n } else {\r\n if (value == \"card\") {\r\n getMenu();\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n } else {\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n setquickPayAPIData(data);\r\n } else {\r\n RelalexInit(data);\r\n }\r\n if (isMobile) {\r\n setShowQuickPay(false);\r\n }\r\n setIfamevisible(true);\r\n }\r\n }\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Offer Plan\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const handlePayDateChange = (e) => {\r\n if (e.target.value == \"\") {\r\n setPaymentDate(\"0.00\");\r\n } else {\r\n setPaymentDate(e.target.value);\r\n }\r\n };\r\n\r\n const setImageBase64 = () => {\r\n html2canvas(document.getElementById(\"screen\"), {\r\n width: 800,\r\n height: 600,\r\n }).then(function(canvas) {\r\n const newScreenshot = canvas.toDataURL(\"image/png\");\r\n setScreenstate({ newScreenshot });\r\n if (props.source == \"PayNow\") {\r\n submitFormPayNow(\r\n convenienceFee == 0\r\n ? amount\r\n : (Number(amount) + convenienceFee).toFixed(2),\r\n newScreenshot\r\n );\r\n } else if (props.source == \"CreatePaymentPlan\") {\r\n submitFormPaymentPlan(props.value, newScreenshot);\r\n } else if (props.source == \"ViewOffer\") {\r\n submitFormViewOffer(props.value, newScreenshot);\r\n }\r\n });\r\n };\r\n\r\n const handleChange = (event) => {\r\n setValue(event.target.value);\r\n };\r\n\r\n const handleChangeAmmount = (event) => {\r\n setAmmount(event.target.value);\r\n };\r\n\r\n const classes = useStyles();\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 {props.source != \"PayNow\" ? (\r\n

Payment

\r\n ) : (\r\n

Pay Now

\r\n )}\r\n\r\n {props.message ? (\r\n \r\n {props.message}\r\n {props.showdate\r\n ? paymentDate\r\n ? \" \" + fnmoment(paymentDate).format(\"L\")\r\n : \"\"\r\n : null}\r\n
\r\n ) : (\r\n ReactHtmlParser(stateSelectedAccount.paynowtext)\r\n )}\r\n\r\n \r\n {props.enabled == \"true\" ? (\r\n \r\n ) : null}\r\n {convenienceFee == 0 ||\r\n props.enabled != \"true\" ? null : (\r\n \r\n \r\n Debit amount is{\" \"}\r\n \r\n \r\n {currency + \" \"}{\" \"}\r\n {amount != \"\"\r\n ? (Number(amount) + convenienceFee).toFixed(\r\n 2\r\n )\r\n : 0}\r\n \r\n
\r\n )}\r\n {props.showdate ? (\r\n {\r\n handlePayDateChange(e);\r\n },\r\n pattern: \"d{4}-d{2}-d{2}\",\r\n name: \"paydate\",\r\n value: paymentDate,\r\n }\r\n : {\r\n type: \"date\",\r\n required: \"required\",\r\n min: fnmoment().format(\"YYYY-MM-DD\"),\r\n onChange: (e) => {\r\n handlePayDateChange(e);\r\n },\r\n pattern: \"d{4}-d{2}-d{2}\",\r\n name: \"paydate\",\r\n value: paymentDate,\r\n }\r\n }\r\n className={classes.control}\r\n >\r\n ) : null}\r\n {usesconveniencefee ? (\r\n {\r\n ChangeNote(e);\r\n },\r\n }}\r\n className={classes.control}\r\n >\r\n ) : null}\r\n \r\n \r\n }\r\n label=\"I agree with the Terms and Conditions\"\r\n />\r\n \r\n \r\n \r\n {\" \"}\r\n {termsText}\r\n {termsText == \"\" ? \"\" : \"with the\"} Terms and\r\n Conditions {termsText == \"\" ? \"Apply\" : \"\"}\r\n \r\n \r\n\r\n {cardref ? (\r\n
\r\n \r\n \r\n Use existing {stateCustomer.cardastdigits}{\" \"}\r\n \r\n Use New Card{\" \"}\r\n \r\n \r\n {/* \r\n Use existing {stateCustomer.cardastdigits}\r\n
\r\n \r\n Use New Card{\" \"} */}\r\n \r\n \r\n }\r\n label={\r\n \"Use existing \" +\r\n stateCustomer.cardastdigits\r\n }\r\n />\r\n \r\n }\r\n label=\"Use New Card\"\r\n />\r\n \r\n
\r\n
\r\n ) : (\r\n \"\"\r\n )}\r\n\r\n
\r\n \r\n Proceed to pay\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n\r\n {props.source === \"PayNow\"\r\n ? termsQuickPay\r\n : props.source === \"CreatePaymentPlan\"\r\n ? termsPlan\r\n : props.source === \"ViewOffer\"\r\n ? termsDiscount\r\n : termsQuickPay}\r\n
\r\n
\r\n \r\n \r\n

\r\n\r\n {props.source === \"PayNow\"\r\n ? termsQuickPay\r\n : props.source === \"CreatePaymentPlan\"\r\n ? termsPlan\r\n : props.source === \"ViewOffer\"\r\n ? termsDiscount\r\n : null}\r\n\r\n \r\n \r\n \r\n }\r\n label=\"I agree with the Terms and Conditions\"\r\n />\r\n \r\n \r\n
\r\n
\r\n \r\n {paymentProvider.toUpperCase() == \"TABAPAY\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n REALEX NOW\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","import { Collapse, Divider, Hidden } from \"@material-ui/core\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport Radio from \"@material-ui/core/Radio\";\r\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\nimport React, { useContext } from \"react\";\r\nimport Moment from \"react-moment\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport Paynow from \"../../SectionsPage/Sections/PayNowSection.js\";\r\nimport history from \"./../../../utils/history\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport Slider from \"react-slick\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\n\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: \"100%\",\r\n margin: 0,\r\n padding: 0,\r\n },\r\n paragraph: {\r\n marginTop: \"27px !important\",\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 30,\r\n },\r\n whiteInfo: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n paddingTop: 10,\r\n },\r\n whiteInfoMiddle: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n redText: {\r\n color: \"red\",\r\n fontWeight: 300,\r\n },\r\n blackText: {\r\n color: \"black\",\r\n fontWeight: 500,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n paddingLeft: 0,\r\n paddingRight: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n blueTextMiddle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n rightRed: {\r\n textAlign: \"right\",\r\n color: \"red\",\r\n fontWeight: 300,\r\n },\r\n rightBlack: {\r\n textAlign: \"right\",\r\n color: \"black\",\r\n\r\n fontWeight: 500,\r\n },\r\n}));\r\n\r\nfunction getSteps() {\r\n return [\"Instructions\", \"Payments\", \"Summary\"];\r\n}\r\n\r\nconst SliderSettings = {\r\n infinite: false,\r\n touchMove: false,\r\n arrows: false,\r\n centerMode: false,\r\n variableWidth: false,\r\n dots: false,\r\n initialSlide: 0,\r\n slidesToShow: 3,\r\n responsive: [\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n dots: false,\r\n },\r\n },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 1,\r\n initialSlide: 1,\r\n },\r\n },\r\n {\r\n breakpoint: 480,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n ],\r\n};\r\n\r\nexport default function WizzardSection() {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const dispatch = useDispatch();\r\n\r\n const createPlanText = useSelector(\r\n (state) => state.HtmlReducer.createPlanText\r\n );\r\n const createPlantoc = useSelector((state) => state.HtmlReducer.createPlantoc);\r\n\r\n const [site, setSite] = React.useState();\r\n const [topNav, setTopNav] = React.useState(null);\r\n const [duration, setDuration] = React.useState(\"\");\r\n const [downpayment, setDownpayment] = React.useState();\r\n const [paymentDate, setPaymentDate] = React.useState(0);\r\n const [paymentAmount, setPaymentAmount] = React.useState(\"0\");\r\n\r\n const [freqValues, setfreqValues] = React.useState({\r\n weekly: 0,\r\n biweekly: 0,\r\n montly: 0,\r\n });\r\n\r\n const [endDate, setEndDate] = React.useState(\"\");\r\n const [frequency, setFrequency] = React.useState(\"week\");\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const stateOffer = useSelector((state) => state.OfferReducer.offer);\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const planInterestapi = useSelector(\r\n (state) => state.AccountsReducer.planInterest\r\n );\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const [planInterest, setplanInterest] = React.useState(0);\r\n const [balanceToPay, setBalanceToPay] = React.useState(0);\r\n\r\n const [latestStartDate, setLatestStartDate] = React.useState(\"\");\r\n\r\n const [paymentVisible, setPaymentVisible] = React.useState(false);\r\n\r\n const [textMessage, setTextMessage] = React.useState(\"\");\r\n const [payNowSectionMessage, setPayNowSectionMessage] = React.useState(\"\");\r\n const convenienceFee = useSelector(\r\n (state) => state.GetSiteDetailsReducer.convenienceFee\r\n );\r\n const [skipped, setSkipped] = React.useState(new Set());\r\n const steps = getSteps();\r\n\r\n const [step, setStep] = React.useState(0);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const [paymentType, setpaymentType] = React.useState(null);\r\n\r\n const handleChange = (newValue) => {\r\n setStep(newValue);\r\n };\r\n\r\n React.useEffect(() => {\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n setplanInterest(planInterestapi);\r\n setpaymentType(stateSelectedAccount.plantype);\r\n\r\n setSite(stateSite);\r\n }, []);\r\n const token = sessionStorage.getItem(\"access_token\");\r\n React.useEffect(() => {\r\n var account;\r\n var newDate = new Date();\r\n account = JSON.stringify({\r\n ITEMCODE: stateSelectedAccount.itemcode,\r\n RECNO: stateSelectedAccount.recno,\r\n STARTDATE: newDate,\r\n ENDDATE: newDate,\r\n });\r\n\r\n fetch(URLS.GetReturnAPIUrl, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: account,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Return API\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(ACTIONS.set_Offer(data));\r\n\r\n // setDownpayment(stateSelectedAccount.plannowmin);\r\n\r\n var ammount =\r\n (Number.parseFloat(stateSelectedAccount.balance) -\r\n Number.parseFloat(data.WOOFFER1MINPAY)) /\r\n (duration === 0 ? 1 : duration);\r\n setPaymentAmount(Math.abs(ammount.toFixed(2).toString()));\r\n if (stateSelectedAccount.plantype == \"MONTHLY\") {\r\n setFrequency(\"Month\");\r\n } else {\r\n setFrequency(\"Week\");\r\n }\r\n }, [])\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Return API\", error, context);\r\n }\r\n });\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n setPaymentDate(fnmoment(fnmoment()).format(\"YYYY-MM-DD\"));\r\n var dur = duration == \"\" ? 1 : duration;\r\n\r\n var end = fnmoment(fnmoment()).format(\"YYYY-MM-DD\");\r\n if (frequency == \"Week\") {\r\n end = fnmoment(end)\r\n .add(7 * dur * (52 / 12) - 7, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n }\r\n //Bi weekly\r\n else if (frequency == \"FORT\") {\r\n end = fnmoment(end)\r\n .add(14 * dur * (26 / 12) - 14, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n } else {\r\n end = fnmoment(end)\r\n .add(dur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n }\r\n setEndDate(end);\r\n }, []);\r\n\r\n const isStepOptional = (step) => {\r\n return step === 9;\r\n };\r\n\r\n const submitForm = (screen) => {\r\n const xhr = new XMLHttpRequest();\r\n var url = URLS.GetWebOffersAPIUrl;\r\n var end = paymentDate;\r\n if (frequency == \"Week\") {\r\n end = fnmoment(end).add(7 * (duration - 1), \"Days\");\r\n } else {\r\n end = fnmoment(end).add((duration - 1) * 1, \"M\");\r\n }\r\n\r\n var cardref = stateCustomer.cardref;\r\n\r\n var data;\r\n if (cardref) {\r\n url = URLS.GetWebOffersCardAPIUrl;\r\n data = JSON.stringify({\r\n OFFERID: stateOffer.WOOFFERID,\r\n DOWNPAYMENT: downpayment,\r\n REMAINGBAL: 1,\r\n STARTDATE: paymentDate,\r\n FREQUENCY: frequency,\r\n AMOUNT: (\r\n (stateAccounts[0].balance - downpayment) /\r\n (duration == 0 ? 1 : duration)\r\n )\r\n .toFixed(2)\r\n .toString(),\r\n FINALDATE: end,\r\n FINALAMOUNT: (\r\n (stateAccounts[0].balance - downpayment) /\r\n (duration == 0 ? 1 : duration)\r\n )\r\n .toFixed(2)\r\n .toString(),\r\n APPLYDISCOUNT: \"N\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: screen,\r\n PAYERREF: stateCustomer.cardpayerref,\r\n CARDREF: cardref,\r\n });\r\n } else {\r\n data = JSON.stringify({\r\n OFFERID: stateOffer.WOOFFERID,\r\n DOWNPAYMENT: downpayment,\r\n REMAINGBAL: 1,\r\n STARTDATE: paymentDate,\r\n FREQUENCY: frequency,\r\n AMOUNT: (\r\n (stateAccounts[0].balance - downpayment) /\r\n (duration == 0 ? 1 : duration)\r\n )\r\n .toFixed(2)\r\n .toString(),\r\n FINALDATE: end,\r\n FINALAMOUNT: (\r\n (stateAccounts[0].balance - downpayment) /\r\n (duration == 0 ? 1 : duration)\r\n )\r\n .toFixed(2)\r\n .toString(),\r\n APPLYDISCOUNT: \"N\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: screen,\r\n });\r\n }\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n xhr.setRequestHeader(\"Authorization\", \"Bearer \" + token);\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n switch (xhr.status) {\r\n case 200:\r\n if (stateCustomer.cardref) {\r\n var data = JSON.parse(xhr.responseText);\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n } else {\r\n var json = JSON.parse(xhr.responseText);\r\n RelalexInit(json);\r\n }\r\n\r\n //setIfamevisible(true);\r\n break;\r\n case 401:\r\n context.authObj.logout();\r\n case 404:\r\n alert(\"Opps Unexpected... \" + xhr.responseText);\r\n break;\r\n case 400:\r\n var data = JSON.parse(xhr.responseText);\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n break;\r\n case 500:\r\n var data = JSON.parse(xhr.responseText);\r\n history.push(\r\n \"/paynow-paymentstatus?AUTHCODE=\" +\r\n data.AUTHCODE +\r\n \"&MESSAGE=\" +\r\n data.MESSAGE +\r\n \"&RESULTCODE=\" +\r\n data.RESULTCODE +\r\n \"&AMOUNT=\" +\r\n data.AMOUNT +\r\n \"&PASSREF=\" +\r\n data.PASSREF\r\n );\r\n break;\r\n default:\r\n alert(\"Opps Unexpected... \" + xhr.responseText);\r\n }\r\n }\r\n };\r\n try {\r\n xhr.send(data);\r\n } catch (err) {\r\n alert(err.description);\r\n }\r\n };\r\n\r\n const RelalexInit = (values) => {\r\n window.RealexHpp.setHppUrl(URLS.GetRealexPayURLAPI);\r\n window.RealexHpp.embedded.init(\r\n \"payButtonId\",\r\n \"paymentIframeID\",\r\n URLS.WebOfferResponseNoCard,\r\n values\r\n );\r\n };\r\n\r\n const isStepSkipped = (step) => {\r\n return skipped.has(step);\r\n };\r\n\r\n const PMT = (ir, np, pv, fv, type) => {\r\n /*\r\n * ir - interest rate per month\r\n * np - number of periods (months)\r\n * pv - present value\r\n * fv - future value\r\n * type - when the payments are due:\r\n * 0: end of the period, e.g. end of month (default)\r\n * 1: beginning of period\r\n */\r\n var pmt, pvif;\r\n\r\n fv || (fv = 0);\r\n type || (type = 0);\r\n\r\n if (ir === 0) return -(pv + fv) / np;\r\n\r\n pvif = Math.pow(1 + ir, np);\r\n pmt = (-ir * (pv * pvif + fv)) / (pvif - 1);\r\n\r\n if (type === 1) pmt /= 1 + ir;\r\n pmt = pmt * -1;\r\n return pmt.toFixed(2);\r\n };\r\n const handleCalculation = (\r\n endDatePar,\r\n durationPar,\r\n downpaymentPar,\r\n frequencyPar\r\n ) => {\r\n debugger;\r\n let rate;\r\n var end = endDatePar;\r\n let principal = stateSelectedAccount.balance - downpaymentPar;\r\n let dur;\r\n let rates = {\r\n weekly: stateSelectedAccount.interestrate / 52 / 100,\r\n biweekly: stateSelectedAccount.interestrate / 26 / 100,\r\n montly: stateSelectedAccount.interestrate / 12 / 100,\r\n };\r\n let freqValues = {\r\n weekly: Math.abs(\r\n (\r\n Number.parseFloat(\r\n (\r\n PMT(rates.weekly, Math.floor(durationPar * 4.34), principal) *\r\n Math.floor(durationPar * 4.34)\r\n ).toFixed(2)\r\n ) / Math.floor(durationPar * 4.34)\r\n )\r\n .toFixed(2)\r\n .toString()\r\n ),\r\n biweekly: Math.abs(\r\n (\r\n Number.parseFloat(\r\n (\r\n PMT(rates.biweekly, Math.floor(durationPar * 2.17), principal) *\r\n Math.floor(durationPar * 2.17)\r\n ).toFixed(2)\r\n ) / Math.floor(durationPar * 2.17)\r\n )\r\n .toFixed(2)\r\n .toString()\r\n ),\r\n montly: Math.abs(\r\n (\r\n Number.parseFloat(\r\n PMT(rates.montly, durationPar, principal) * durationPar\r\n ) / durationPar\r\n ).toFixed(2)\r\n ),\r\n };\r\n if (paymentType == \"MONTHLY\" || paymentType == \"MINPAYMENT\") {\r\n if (frequencyPar == \"Week\") {\r\n let montdur = (((principal / Number(durationPar)) * 12) / 52).toFixed(\r\n 0\r\n );\r\n end = fnmoment(end)\r\n .add(montdur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n } else if (frequencyPar == \"FORT\") {\r\n let montdur = (((principal / Number(durationPar)) * 12) / 26).toFixed(\r\n 0\r\n );\r\n end = fnmoment(end)\r\n .add(montdur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n } else {\r\n let montdur = (principal / Number(durationPar)).toFixed(0);\r\n end = fnmoment(end)\r\n .add(montdur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n }\r\n } else {\r\n if (frequencyPar == \"Week\") {\r\n dur = Math.floor(durationPar * 4.34);\r\n rate = rates.weekly;\r\n end = fnmoment(end)\r\n .add(7 * dur - 7, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n } else if (frequencyPar == \"FORT\") {\r\n dur = Math.floor(durationPar * 2.17);\r\n rate = rates.biweekly;\r\n end = fnmoment(end)\r\n .add(14 * dur * (26 / 12) - 14, \"Days\")\r\n .format(\"YYYY-MM-DD\");\r\n } else {\r\n dur = durationPar;\r\n rate = rates.montly;\r\n end = fnmoment(end)\r\n .add(dur - 1, \"M\")\r\n .format(\"YYYY-MM-DD\");\r\n }\r\n }\r\n let ammount;\r\n let setbalanceToPay;\r\n if (stateSelectedAccount.interestrate > 0 && paymentType == \"STANDARD\") {\r\n let payment = PMT(rate, dur, principal);\r\n setbalanceToPay = (payment * dur).toFixed(2);\r\n setBalanceToPay(setbalanceToPay);\r\n setplanInterest(setbalanceToPay - principal);\r\n ammount =\r\n Number.parseFloat(setbalanceToPay) / (durationPar == 0 ? 1 : dur);\r\n } else {\r\n setbalanceToPay = principal;\r\n setBalanceToPay(principal);\r\n ammount = Number.parseFloat(principal) / (durationPar == 0 ? 1 : dur);\r\n }\r\n\r\n ammount = paymentType !== \"STANDARD\" ? durationPar : ammount;\r\n setPaymentAmount(\r\n Math.abs(\r\n ammount !== \"\"\r\n ? Number(ammount)\r\n .toFixed(2)\r\n .toString()\r\n : ammount\r\n )\r\n );\r\n setfreqValues(freqValues);\r\n setEndDate(end);\r\n };\r\n\r\n const handleDurationChange = (e) => {\r\n setDuration(e.target.value);\r\n handleCalculation(paymentDate, e.target.value, downpayment, frequency);\r\n };\r\n\r\n const handleFreqChange = (e) => {\r\n setFrequency(e.target.value);\r\n\r\n handleCalculation(paymentDate, duration, downpayment, e.target.value);\r\n };\r\n const handleDownPaymentChange = (e) => {\r\n if (\r\n e.target.value > stateSelectedAccount.balance &&\r\n paymentType == \"STANDARD\" &&\r\n (stateSelectedAccount.clientname != \"RATES\" &&\r\n stateSelectedAccount.clientname != \"RENTS\")\r\n ) {\r\n e.target.value = stateSelectedAccount.balance;\r\n }\r\n\r\n var value = e.target.value;\r\n setDownpayment(value);\r\n var dur = duration == \"\" ? 1 : duration;\r\n handleCalculation(paymentDate, dur, value, frequency);\r\n };\r\n\r\n const handlePayDateChange = (e) => {\r\n setPaymentDate(e.target.value);\r\n\r\n handleCalculation(e.target.value, duration, downpayment, frequency);\r\n };\r\n\r\n const submitFormEvent = (event) => {\r\n event.preventDefault();\r\n };\r\n\r\n const handleNext = () => {\r\n let newSkipped = skipped;\r\n if (isStepSkipped(step)) {\r\n newSkipped = new Set(newSkipped.values());\r\n newSkipped.delete(step);\r\n }\r\n if (step == 1) {\r\n handleText();\r\n if (document.forms[0].checkValidity()) {\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n setSkipped(newSkipped);\r\n topNav.slickNext();\r\n }\r\n } else {\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n setSkipped(newSkipped);\r\n topNav.slickNext();\r\n }\r\n };\r\n\r\n const values = {\r\n downpayment:\r\n convenienceFee != 0 ? Number(downpayment) + convenienceFee : downpayment,\r\n frequency: frequency,\r\n duration: duration,\r\n startdate: paymentDate,\r\n balanceToPay: balanceToPay,\r\n amount:\r\n convenienceFee != 0 ? paymentAmount + convenienceFee : paymentAmount,\r\n endDate: endDate,\r\n };\r\n\r\n const formatPaymentAmount = (amount) => {\r\n return Number.parseFloat(amount).toFixed(\"2\");\r\n };\r\n\r\n const formatPaymentFrequency = (frequency) => {\r\n switch (frequency) {\r\n case \"Month\":\r\n return \"monthly\";\r\n case \"FORT\":\r\n return \"bi weekly\";\r\n default:\r\n return \"weekly\";\r\n }\r\n };\r\n\r\n const handleText = () => {\r\n const paymentAmountFormatted = formatPaymentAmount(\r\n paymentType !== \"STANDARD\"\r\n ? convenienceFee != 0\r\n ? Number(duration) + convenienceFee\r\n : duration\r\n : convenienceFee != 0\r\n ? paymentAmount + convenienceFee\r\n : paymentAmount\r\n );\r\n const paymentFrequencyFormatted = `recurring ${formatPaymentFrequency(\r\n frequency\r\n )} payments of \r\n $${paymentAmountFormatted}`;\r\n\r\n const payNowSectionMessage = `I agree to pay ${\r\n site.companyname\r\n } ${currency}${formatPaymentAmount(\r\n convenienceFee != 0\r\n ? Number.parseFloat(Number(downpayment) + convenienceFee)\r\n : Number.parseFloat(downpayment)\r\n )} from my card now, followed by ${paymentFrequencyFormatted} starting on ${fnmoment(\r\n paymentDate\r\n ).format(\"L\")}`;\r\n\r\n const textMessage = (\r\n
\r\n
\r\n {`I agree to pay ${site.companyname} ${currency}${formatPaymentAmount(\r\n convenienceFee != 0\r\n ? Number.parseFloat(Number(downpayment) + convenienceFee)\r\n : Number.parseFloat(downpayment)\r\n )} from my card now, followed by `}\r\n
\r\n\r\n \r\n\r\n
\r\n {` starting on ${fnmoment(paymentDate).format(\"L\")}`}\r\n
\r\n
\r\n );\r\n\r\n setPayNowSectionMessage(payNowSectionMessage);\r\n setTextMessage(textMessage);\r\n };\r\n\r\n const handleFinish = () => {\r\n setPaymentVisible(true);\r\n };\r\n\r\n const handleBack = () => {\r\n let newSkipped = skipped;\r\n if (isStepSkipped(step)) {\r\n newSkipped = new Set(newSkipped.values());\r\n newSkipped.delete(step);\r\n }\r\n setStep((prevActiveStep) => prevActiveStep - 1);\r\n setSkipped(newSkipped);\r\n topNav.slickPrev();\r\n };\r\n\r\n const handleSkip = () => {\r\n if (!isStepOptional(step)) {\r\n // You probably want to guard against something like this,\r\n // it should never occur unless someone's actively trying to break something.\r\n throw new Error(\"You can't skip a step that isn't optional.\");\r\n }\r\n\r\n setStep((prevActiveStep) => prevActiveStep + 1);\r\n setSkipped((prevSkipped) => {\r\n const newSkipped = new Set(prevSkipped.values());\r\n newSkipped.add(step);\r\n return newSkipped;\r\n });\r\n };\r\n\r\n const handleReset = () => {\r\n setStep(0);\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {\r\n setTopNav(slider);\r\n }}\r\n {...SliderSettings}\r\n >\r\n
\r\n
\r\n handleChange(0)}>Instructions\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 handleChange(1)}>Payments\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 Summary\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
{createPlanText}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n

Initial Payment

\r\n
\r\n \r\n \r\n

\r\n I would like my initial payment to be\r\n

\r\n
\r\n
\r\n \r\n {\r\n handleDownPaymentChange(e);\r\n },\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n \r\n

\r\n Minimum Amount{\" \"}\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n {paymentType == \"STANDARD\"\r\n ? \"Duration\"\r\n : \"Recurring amount\"}\r\n

\r\n
\r\n \r\n \r\n

\r\n {paymentType == \"STANDARD\"\r\n ? \"I would like to pay balance over a period of \" +\r\n duration +\r\n (Number(duration) === 1\r\n ? \" month\"\r\n : \" months\")\r\n : \"I would like my recurring amount to be\"}\r\n

\r\n
\r\n
\r\n \r\n {\r\n handleDurationChange(e);\r\n },\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n \r\n

\r\n {paymentType == \"STANDARD\"\r\n ? `Maximum Term ${stateSelectedAccount.planmaxduration} months`\r\n : `Minimum Payment Amount ${currency}${\r\n paymentType == \"MONTHLY\"\r\n ? stateSelectedAccount.planminpayment\r\n : paymentType == \"STANDARD\"\r\n ? 1\r\n : frequency == \"Week\"\r\n ? stateSelectedAccount.planminpayment\r\n : frequency == \"Month\"\r\n ? (\r\n (stateSelectedAccount.planminpayment *\r\n 52) /\r\n 12\r\n ).toFixed(2)\r\n : (\r\n stateSelectedAccount.planminpayment *\r\n 2\r\n ).toFixed(2)\r\n }`}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n

Frequency

\r\n
\r\n \r\n

\r\n I would like my recurring payments to occur every\r\n

\r\n
\r\n \r\n {\r\n handleFreqChange(e);\r\n }}\r\n >\r\n \r\n {paymentType == \"MONTHLY\" ? null : (\r\n <>\r\n \r\n \r\n }\r\n label={\r\n paymentType == \"MONTHLY\" ||\r\n paymentType == \"MINPAYMENT\"\r\n ? \"Weekly Payments\"\r\n : `Weekly Payments ${\r\n isNaN(freqValues.weekly) ||\r\n freqValues.weekly === 0\r\n ? \"\"\r\n : \"of \" +\r\n currency +\r\n freqValues.weekly.toFixed(2)\r\n } ${\r\n convenienceFee != 0\r\n ? `+ ${currency +\r\n convenienceFee} fee`\r\n : \"\"\r\n } `\r\n }\r\n />\r\n \r\n \r\n \r\n }\r\n label={\r\n paymentType == \"MONTHLY\" ||\r\n paymentType == \"MINPAYMENT\"\r\n ? \"Bi Weekly Payments\"\r\n : `Bi Weekly Payments ${\r\n isNaN(freqValues.biweekly) ||\r\n freqValues.biweekly === 0\r\n ? \"\"\r\n : \"of \" +\r\n currency +\r\n freqValues.biweekly.toFixed(2)\r\n } ${\r\n convenienceFee != 0\r\n ? `+ ${currency +\r\n convenienceFee} fee`\r\n : \"\"\r\n }`\r\n }\r\n />\r\n \r\n \r\n )}\r\n \r\n \r\n }\r\n label={\r\n paymentType == \"MONTHLY\" ||\r\n paymentType == \"MINPAYMENT\"\r\n ? \"Monthly Payments\"\r\n : `Monthly Payments ${\r\n isNaN(freqValues.montly) ||\r\n freqValues.montly === 0\r\n ? \"\"\r\n : \"of \" +\r\n currency +\r\n freqValues.montly.toFixed(2)\r\n } ${\r\n convenienceFee != 0\r\n ? `+ ${currency +\r\n convenienceFee} fee`\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\n

Payment Date

\r\n
\r\n
\r\n\r\n \r\n \r\n

Payment Date

\r\n
\r\n \r\n

\r\n I would like my recurring payments to start on\r\n

\r\n
\r\n
\r\n \r\n {\r\n handlePayDateChange(e);\r\n },\r\n format: \"DD-MM-YYYY\",\r\n value: paymentDate,\r\n name: \"paydate\",\r\n min: fnmoment().format(\"YYYY-MM-DD\"),\r\n max: fnmoment()\r\n .add(stateSelectedAccount.planmaxstart, \"days\")\r\n .format(\"YYYY-MM-DD\"),\r\n }}\r\n className={classes.control}\r\n >\r\n \r\n \r\n \r\n

\r\n Latest Start Date:{\" \"}\r\n {fnmoment()\r\n .add(stateSelectedAccount.planmaxstart, \"days\")\r\n .format(\"L\")}\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 Summary\r\n \r\n \r\n \r\n

\r\n {paymentType == \"STANDARD\"\r\n ? \"Total Balance\"\r\n : \"Current Balance\"}\r\n

\r\n
\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n {convenienceFee == 0 ? (\r\n <>\r\n {\" \"}\r\n \r\n

\r\n Initial Payment\r\n

\r\n
\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n ) : null}\r\n\r\n <>\r\n {\" \"}\r\n \r\n

\r\n {stateSelectedAccount.interestrate > 0\r\n ? \"Balance after Initial Payment\"\r\n : \"Balance to Pay\"}\r\n

\r\n
\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n\r\n {stateSelectedAccount.interestrate > 0 &&\r\n paymentType != \"MONTHLY\" ? (\r\n \r\n

\r\n Forecast Interest\r\n

\r\n
\r\n ) : null}\r\n {stateSelectedAccount.interestrate > 0 &&\r\n paymentType != \"MONTHLY\" ? (\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n ) : null}\r\n {paymentType == \"STANDARD\" &&\r\n stateSelectedAccount.interestrate != 0 ? (\r\n <>\r\n \r\n

\r\n Schedule Balance\r\n

\r\n
\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n ) : null}\r\n
\r\n
\r\n \r\n \r\n Schedule Details\r\n \r\n \r\n {paymentType == \"STANDARD\" ? (\r\n <>\r\n {\" \"}\r\n \r\n

Term

\r\n
\r\n \r\n

\r\n {`${duration} months`}\r\n

\r\n
\r\n \r\n ) : null}\r\n\r\n \r\n

Start Date

\r\n
\r\n \r\n

\r\n {fnmoment(paymentDate).format(\"L\")}\r\n

\r\n
\r\n \r\n

\r\n Payment Frequency\r\n

\r\n
\r\n \r\n

\r\n {frequency == \"Week\"\r\n ? \"Weekly\"\r\n : frequency == \"FORT\"\r\n ? \"Bi Weekly\"\r\n : \"Monthly\"}\r\n

\r\n
\r\n {convenienceFee == 0 ? (\r\n <>\r\n {\" \"}\r\n \r\n

\r\n Payment Amount\r\n

\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n \r\n ) : null}\r\n\r\n {paymentType == \"STANDARD\" ? (\r\n <>\r\n {\" \"}\r\n \r\n

End Date

\r\n
\r\n \r\n

\r\n {fnmoment(endDate).format(\"L\")}\r\n

\r\n
\r\n \r\n ) : null}\r\n
\r\n
\r\n {convenienceFee != 0 ? (\r\n <>\r\n {\" \"}\r\n \r\n
\r\n\r\n \r\n \r\n

\r\n Initial Payment\r\n

\r\n
\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n

Fee

\r\n
\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n

Initial Debit

\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\n Payment Amount\r\n

\r\n
\r\n \r\n

\r\n \r\n

\r\n
\r\n \r\n

Fee

\r\n
\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n \r\n

\r\n Recurring Debit\r\n

\r\n
\r\n \r\n

\r\n {\" \"}\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n ) : null}\r\n
\r\n\r\n \r\n \r\n

{textMessage}

\r\n
\r\n
\r\n \r\n \r\n
\r\n {createPlantoc}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n {step === steps.length ? (\r\n
\r\n \r\n
\r\n ) : (\r\n
\r\n
\r\n \r\n Back\r\n \r\n {isStepOptional(step) && (\r\n \r\n Skip\r\n \r\n )}\r\n\r\n \r\n {step === steps.length - 1 ? \"Finish\" : \"Next\"}\r\n \r\n
\r\n
\r\n )}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {paymentVisible ? (\r\n \r\n ) : null}\r\n \r\n \r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport createPaymentPlanPageStyle from \"../../assets/jss/xrs/views/createPaymentPlanPageStyle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport WizardSection from \"../SectionsPage/Sections/WizardSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(createPaymentPlanPageStyle);\r\nexport default function LandingPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n const classes2 = useStyles2();\r\n const classes = useStyles();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n // can be removed dev only\r\n\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","import {\r\n container,\r\n primaryColor,\r\n whiteColor,\r\n btnLink,\r\n grayColor,\r\n twitterColor,\r\n dribbbleColor,\r\n instagramColor,\r\n hexToRgb,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst footerStyle = {\r\n left: {\r\n float: \"left!important\",\r\n display: \"block\",\r\n },\r\n right: {\r\n padding: \"15px 0\",\r\n margin: \"0\",\r\n float: \"right\",\r\n },\r\n rightLinks: {\r\n float: \"right!important\",\r\n \"& ul\": {\r\n marginBottom: 0,\r\n marginTop: 10,\r\n padding: 0,\r\n listStyle: \"none\",\r\n height: 38,\r\n \"& li\": {\r\n display: \"inline-block\",\r\n },\r\n },\r\n \"& i\": {\r\n fontSize: \"20px\",\r\n },\r\n },\r\n footer: {\r\n padding: \"0.9375rem 0\",\r\n textAlign: \"center\",\r\n display: \"flex\",\r\n zIndex: \"2\",\r\n position: \"relative\",\r\n \"& ul\": {\r\n marginBottom: \"0\",\r\n padding: 0,\r\n listStyle: \"none\",\r\n },\r\n },\r\n big: {\r\n padding: \"1.875rem 0\",\r\n \"& h5, & h4\": {\r\n fontWeight: 700,\r\n fontFamily: \"Rubik ,serif\",\r\n marginBottom: \"15px\",\r\n },\r\n \"& p\": {\r\n color: grayColor[0],\r\n },\r\n },\r\n content: {\r\n textAlign: \"left\",\r\n },\r\n a: {\r\n color: primaryColor[0],\r\n textDecoration: \"none\",\r\n backgroundColor: \"transparent\",\r\n },\r\n dark: {\r\n background: primaryColor[12],\r\n backgroundSize: \"550% 450%\",\r\n color: whiteColor,\r\n \"& p\": {\r\n color: \"#fff\",\r\n fontSize: 14,\r\n },\r\n \"& i\": {\r\n color: whiteColor,\r\n },\r\n \"& a\": {\r\n color: whiteColor,\r\n opacity: \".86\",\r\n \"&:visited\": {\r\n color: whiteColor,\r\n },\r\n \"&:focus, &:hover\": {\r\n opacity: 1,\r\n },\r\n },\r\n \"& hr\": {\r\n borderColor: \"rgba(\" + hexToRgb(whiteColor) + \",0.2)\",\r\n },\r\n \"& $btnTwitter, & $btnDribbble, & $btnInstagram\": {\r\n color: whiteColor,\r\n },\r\n },\r\n white: {\r\n background: primaryColor[13],\r\n color: grayColor[1],\r\n textDecoration: \"none\",\r\n \"& a\": {\r\n \"&:visited\": {\r\n color: grayColor[1],\r\n },\r\n \"&:hover, &:focus\": {\r\n color: grayColor[20],\r\n },\r\n },\r\n },\r\n container,\r\n list: {\r\n marginBottom: \"0\",\r\n padding: \"0\",\r\n marginTop: \"0\",\r\n },\r\n inlineBlock: {\r\n display: \"inline-block\",\r\n padding: \"0px\",\r\n width: \"auto\",\r\n },\r\n icon: {\r\n width: \"18px\",\r\n height: \"18px\",\r\n position: \"relative\",\r\n top: \"3px\",\r\n },\r\n iconSocial: {\r\n width: \"41px\",\r\n height: \"41px\",\r\n fontSize: \"24px\",\r\n minWidth: \"41px\",\r\n padding: 0,\r\n overflow: \"hidden\",\r\n position: \"relative\",\r\n },\r\n btnTwitter: {\r\n ...btnLink,\r\n color: twitterColor,\r\n },\r\n btnDribbble: {\r\n ...btnLink,\r\n color: dribbbleColor,\r\n },\r\n btnInstagram: {\r\n ...btnLink,\r\n color: instagramColor,\r\n },\r\n footerBrand: {\r\n height: \"50px\",\r\n padding: \"15px 15px\",\r\n fontSize: \"18px\",\r\n lineHeight: \"50px\",\r\n marginLeft: \"-15px\",\r\n color: grayColor[1],\r\n textDecoration: \"none\",\r\n fontWeight: 700,\r\n fontFamily: \"Rubik,serif\",\r\n },\r\n pullCenter: {\r\n display: \"inline-block\",\r\n float: \"none\",\r\n },\r\n clearFix: {\r\n clear: \"both\",\r\n },\r\n};\r\nexport default footerStyle;\r\n","/* eslint-disable */\r\nimport React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\n// @material-ui/icons\r\nimport Favorite from \"@material-ui/icons/Favorite\";\r\n\r\nimport styles from \"assets/jss/xrs/components/footerStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Footer(props) {\r\n const { children, content, theme, big, className } = props;\r\n const classes = useStyles();\r\n const themeType =\r\n theme === \"transparent\" || theme == undefined ? false : true;\r\n const footerClasses = classNames({\r\n [classes.footer]: true,\r\n [classes[theme]]: themeType,\r\n [classes.big]: big || children !== undefined,\r\n [className]: className !== undefined\r\n });\r\n const aClasses = classNames({\r\n [classes.a]: true\r\n });\r\n\r\n return (\r\n
\r\n
\r\n {children !== undefined ? (\r\n
\r\n
{children}
\r\n
\r\n
\r\n ) : (\r\n \" \"\r\n )}\r\n {content}\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nFooter.propTypes = {\r\n theme: PropTypes.oneOf([\"dark\", \"white\", \"transparent\"]),\r\n big: PropTypes.bool,\r\n content: PropTypes.node.isRequired\r\n};\r\n","/*eslint-disable*/ import React from \"react\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Footer from \"components/Footer/Footer.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport { useSelector } from \"react-redux\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function FooterSection(props) {\r\n const classes = useStyles();\r\n const footerImage = useSelector(\r\n (state) => state.GetSiteDetailsReducer.footerImageUrl\r\n );\r\n\r\n return (\r\n
\r\n \r\n \r\n

\r\n About {ReactHtmlParser(props.companyname)}\r\n

\r\n

\r\n {ReactHtmlParser(props.AboutUs)}\r\n

\r\n
\r\n \r\n

{props.companyname}

\r\n

{props.Address}

\r\n

{props.WorkingHours}

\r\n

\r\n Phone: {props.PhoneNumber}\r\n

\r\n

E-Mail: {props.Email}

\r\n
\r\n \r\n

\r\n

\r\n {footerImage === \"\" ? null : (\r\n \"...\"\r\n )}\r\n
\r\n \r\n }\r\n />\r\n
\r\n );\r\n}\r\n","import {\r\n container,\r\n defaultFont,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n roseColor,\r\n transition,\r\n boxShadow,\r\n drawerWidth,\r\n blackColor,\r\n whiteColor,\r\n grayColor,\r\n hexToRgb,\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst headerStyle = (theme) => ({\r\n appBar: {\r\n display: \"flex\",\r\n border: \"0\",\r\n borderRadius: \"3px\",\r\n padding: \"0.625rem 0\",\r\n marginBottom: \"0px\",\r\n color: grayColor[15],\r\n width: \"100%\",\r\n backgroundColor: primaryColor[6],\r\n boxShadow:\r\n \"0 4px 18px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.15)\",\r\n transition: \"all 150ms ease 0s\",\r\n alignItems: \"center\",\r\n flexFlow: \"row nowrap\",\r\n justifyContent: \"flex-start\",\r\n position: \"relative\",\r\n zIndex: 100,\r\n },\r\n absolute: {\r\n position: \"absolute\",\r\n top: \"auto\",\r\n },\r\n fixed: {\r\n position: \"fixed\",\r\n },\r\n container: {\r\n ...container,\r\n minHeight: \"60px\",\r\n alignItems: \"center\",\r\n justifyContent: \"space-between\",\r\n display: \"flex\",\r\n flexWrap: \"nowrap\",\r\n },\r\n title: {\r\n letterSpacing: \"unset\",\r\n \"&,& a\": {\r\n ...defaultFont,\r\n minWidth: \"unset\",\r\n lineHeight: \"30px\",\r\n fontSize: \"18px\",\r\n borderRadius: \"3px\",\r\n textTransform: \"none\",\r\n whiteSpace: \"nowrap\",\r\n color: \"inherit\",\r\n \"&:hover,&:focus\": {\r\n color: \"inherit\",\r\n background: \"transparent\",\r\n },\r\n },\r\n },\r\n appResponsive: {\r\n margin: \"20px 10px\",\r\n marginTop: \"0px\",\r\n },\r\n appResponsiveRight: {\r\n float: \"right\",\r\n },\r\n primary: {\r\n backgroundColor: primaryColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(primaryColor[0]) +\r\n \", 0.46)\",\r\n },\r\n info: {\r\n backgroundColor: infoColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(infoColor[0]) +\r\n \", 0.46)\",\r\n },\r\n success: {\r\n backgroundColor: successColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(successColor[0]) +\r\n \", 0.46)\",\r\n },\r\n warning: {\r\n backgroundColor: warningColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(warningColor[0]) +\r\n \", 0.46)\",\r\n },\r\n danger: {\r\n backgroundColor: dangerColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(dangerColor[0]) +\r\n \", 0.46)\",\r\n },\r\n rose: {\r\n backgroundColor: roseColor[0],\r\n color: whiteColor,\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(roseColor[0]) +\r\n \", 0.46)\",\r\n },\r\n transparent: {\r\n backgroundColor: \"transparent !important\",\r\n boxShadow: \"none\",\r\n paddingTop: \"25px\",\r\n color: whiteColor,\r\n },\r\n dark: {\r\n color: whiteColor,\r\n backgroundColor: grayColor[9] + \" !important\",\r\n boxShadow:\r\n \"0 4px 20px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.14), 0 7px 12px -5px rgba(\" +\r\n hexToRgb(grayColor[9]) +\r\n \", 0.46)\",\r\n },\r\n white: {\r\n border: \"0\",\r\n padding: \"0.625rem 0\",\r\n marginBottom: \"0px\",\r\n color: grayColor[15],\r\n backgroundColor: whiteColor + \" !important\",\r\n boxShadow:\r\n \"0 4px 18px 0px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.12), 0 7px 10px -5px rgba(\" +\r\n hexToRgb(blackColor) +\r\n \", 0.15)\",\r\n },\r\n drawerPaper: {\r\n border: \"none\",\r\n bottom: \"0\",\r\n transitionProperty: \"top, bottom, width\",\r\n transitionDuration: \".2s, .2s, .35s\",\r\n transitionTimingFunction: \"linear, linear, ease\",\r\n width: drawerWidth,\r\n ...boxShadow,\r\n position: \"fixed\",\r\n display: \"block\",\r\n top: \"0\",\r\n height: \"100vh\",\r\n right: \"0\",\r\n left: \"auto\",\r\n visibility: \"visible\",\r\n overflowY: \"visible\",\r\n borderTop: \"none\",\r\n textAlign: \"left\",\r\n paddingRight: \"0px\",\r\n paddingLeft: \"0\",\r\n ...transition,\r\n },\r\n hidden: {},\r\n collapse: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n display: \"flex !important\",\r\n MsFlexPreferredSize: \"auto\",\r\n flexBasis: \"auto\",\r\n },\r\n WebkitBoxFlex: \"1\",\r\n MsFlexPositive: \"1\",\r\n flexGrow: \"1\",\r\n WebkitBoxAlign: \"center\",\r\n MsFlexAlign: \"center\",\r\n alignItems: \"center\",\r\n },\r\n closeButtonDrawer: {\r\n position: \"absolute\",\r\n right: \"8px\",\r\n top: \"9px\",\r\n zIndex: \"1\",\r\n },\r\n});\r\n\r\nexport default headerStyle;\r\n","import AppBar from \"@material-ui/core/AppBar\";\r\nimport Drawer from \"@material-ui/core/Drawer\";\r\nimport Hidden from \"@material-ui/core/Hidden\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport Close from \"@material-ui/icons/Close\";\r\n// @material-ui/icons\r\nimport Menu from \"@material-ui/icons/Menu\";\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/headerStyle.js\";\r\n// nodejs library that concatenates classes\r\nimport classNames from \"classnames\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\nimport React from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { useSelector } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Header(props) {\r\n const [mobileOpen, setMobileOpen] = React.useState(false);\r\n const classes = useStyles();\r\n const logo = useSelector((state) => state.GetSiteDetailsReducer.logoimageurl);\r\n\r\n React.useEffect(() => {\r\n if (props.changeColorOnScroll) {\r\n window.addEventListener(\"scroll\", headerColorChange);\r\n }\r\n return function cleanup() {\r\n if (props.changeColorOnScroll) {\r\n window.removeEventListener(\"scroll\", headerColorChange);\r\n }\r\n };\r\n });\r\n const handleDrawerToggle = () => {\r\n setMobileOpen(!mobileOpen);\r\n };\r\n const headerColorChange = () => {\r\n const { color, changeColorOnScroll } = props;\r\n\r\n const windowsScrollTop = window.pageYOffset;\r\n if (windowsScrollTop > changeColorOnScroll.height) {\r\n document.body\r\n .getElementsByTagName(\"header\")[0]\r\n .classList.remove(classes[color]);\r\n document.body\r\n .getElementsByTagName(\"header\")[0]\r\n .classList.add(classes[changeColorOnScroll.color]);\r\n } else {\r\n document.body\r\n .getElementsByTagName(\"header\")[0]\r\n .classList.add(classes[color]);\r\n document.body\r\n .getElementsByTagName(\"header\")[0]\r\n .classList.remove(classes[changeColorOnScroll.color]);\r\n }\r\n };\r\n const { color, links, fixed, absolute } = props;\r\n const appBarClasses = classNames({\r\n [classes.appBar]: true,\r\n [classes[color]]: \"white\",\r\n [classes.absolute]: absolute,\r\n [classes.fixed]: fixed,\r\n [classes.border]: 0,\r\n });\r\n return (\r\n \r\n \r\n \r\n \r\n {logo === \"\" ? null : (\r\n \"...\"\r\n )}\r\n \r\n \r\n \r\n \r\n {links}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {logo === \"\" ? null : (\r\n \"...\"\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{links}
\r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nHeader.defaultProp = {\r\n color: \"white\",\r\n};\r\n\r\nHeader.propTypes = {\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"transparent\",\r\n \"white\",\r\n \"rose\",\r\n \"dark\",\r\n ]),\r\n links: PropTypes.node,\r\n brand: PropTypes.string,\r\n fixed: PropTypes.bool,\r\n absolute: PropTypes.bool,\r\n // this will cause the sidebar to change the color from\r\n // props.color (see above) to changeColorOnScroll.color\r\n // when the window.pageYOffset is heigher or equal to\r\n // changeColorOnScroll.height and then when it is smaller than\r\n // changeColorOnScroll.height change it back to\r\n // props.color (see above)\r\n changeColorOnScroll: PropTypes.shape({\r\n height: PropTypes.number.isRequired,\r\n color: PropTypes.oneOf([\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"transparent\",\r\n \"white\",\r\n \"rose\",\r\n \"dark\",\r\n ]).isRequired,\r\n }),\r\n};\r\n","/* eslint-disable */\r\nimport React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// react components for routing our app without refresh\r\nimport { Link } from \"react-router-dom\";\r\n\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\n\r\n// @material-ui/icons\r\nimport Apps from \"@material-ui/icons/Apps\";\r\nimport ShoppingCart from \"@material-ui/icons/ShoppingCart\";\r\nimport ViewDay from \"@material-ui/icons/ViewDay\";\r\nimport Dns from \"@material-ui/icons/Dns\";\r\nimport Build from \"@material-ui/icons/Build\";\r\nimport ListIcon from \"@material-ui/icons/List\";\r\nimport People from \"@material-ui/icons/People\";\r\nimport Assignment from \"@material-ui/icons/Assignment\";\r\nimport MonetizationOn from \"@material-ui/icons/MonetizationOn\";\r\nimport Chat from \"@material-ui/icons/Chat\";\r\nimport Call from \"@material-ui/icons/Call\";\r\nimport ViewCarousel from \"@material-ui/icons/ViewCarousel\";\r\nimport Home from \"@material-ui/icons/Home\";\r\nimport ArtTrack from \"@material-ui/icons/ArtTrack\";\r\nimport ViewQuilt from \"@material-ui/icons/ViewQuilt\";\r\nimport LocationOn from \"@material-ui/icons/LocationOn\";\r\nimport Fingerprint from \"@material-ui/icons/Fingerprint\";\r\nimport AttachMoney from \"@material-ui/icons/AttachMoney\";\r\nimport Store from \"@material-ui/icons/Store\";\r\nimport AccountCircle from \"@material-ui/icons/AccountCircle\";\r\nimport PersonAdd from \"@material-ui/icons/PersonAdd\";\r\nimport Layers from \"@material-ui/icons/Layers\";\r\nimport ShoppingBasket from \"@material-ui/icons/ShoppingBasket\";\r\nimport LineStyle from \"@material-ui/icons/LineStyle\";\r\nimport Error from \"@material-ui/icons/Error\";\r\n\r\n// core components\r\nimport CustomDropdown from \"components/CustomDropdown/CustomDropdown.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\n\r\nimport styles from \"assets/jss/xrs/components/headerLinksStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function HeaderLinks(props) {\r\n const easeInOutQuad = (t, b, c, d) => {\r\n t /= d / 2;\r\n if (t < 1) return (c / 2) * t * t + b;\r\n t--;\r\n return (-c / 2) * (t * (t - 2) - 1) + b;\r\n };\r\n\r\n const smoothScroll = (e, target) => {\r\n if (window.location.pathname === \"/sections\") {\r\n var isMobile = navigator.userAgent.match(\r\n /(iPad)|(iPhone)|(iPod)|(android)|(webOS)/i\r\n );\r\n if (isMobile) {\r\n // if we are on mobile device the scroll into view will be managed by the browser\r\n } else {\r\n e.preventDefault();\r\n var targetScroll = document.getElementById(target);\r\n scrollGo(document.documentElement, targetScroll.offsetTop, 1250);\r\n }\r\n }\r\n };\r\n const scrollGo = (element, to, duration) => {\r\n var start = element.scrollTop,\r\n change = to - start,\r\n currentTime = 0,\r\n increment = 20;\r\n\r\n var animateScroll = function() {\r\n currentTime += increment;\r\n var val = easeInOutQuad(currentTime, start, change, duration);\r\n element.scrollTop = val;\r\n if (currentTime < duration) {\r\n setTimeout(animateScroll, increment);\r\n }\r\n };\r\n animateScroll();\r\n };\r\n var onClickSections = {};\r\n\r\n const { dropdownHoverColor } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n \r\n \r\n Home\r\n \r\n \r\n \r\n \r\n Register\r\n \r\n \r\n \r\n \r\n Quick Pay\r\n \r\n \r\n \r\n \r\n Frequently Asked Questions\r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nHeaderLinks.defaultProps = {\r\n hoverColor: \"primary\"\r\n};\r\n\r\nHeaderLinks.propTypes = {\r\n dropdownHoverColor: PropTypes.oneOf([\r\n \"dark\",\r\n \"primary\",\r\n \"info\",\r\n \"success\",\r\n \"warning\",\r\n \"danger\",\r\n \"rose\"\r\n ])\r\n};\r\n","/*eslint-disable*/ import React from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Header from \"components/Header/Header.js\";\r\nimport HeaderLinks from \"components/Header/HeaderLinksNoUser\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport { primaryColor } from \"assets/jss/xrs\";\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function headerSection(props) {\r\n document.title = props.title;\r\n const classes = useStyles();\r\n return (\r\n
\r\n }\r\n relative\r\n changeColorOnScroll={{\r\n height: 0,\r\n color: [primaryColor[6]],\r\n }}\r\n />\r\n
\r\n );\r\n}\r\n","/*eslint-disable*/ import React from \"react\";\r\nimport classNames from \"classnames\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { Link } from \"react-router-dom\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function LinksSection({ ...rest }) {\r\n const classes = useStyles();\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n

Quick Pay

\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n

Register

\r\n
\r\n\r\n \r\n \r\n \r\n \r\n

\r\n Frequently Asked Questions\r\n

\r\n
\r\n \r\n
\r\n \r\n );\r\n}\r\n","import { Collapse } from \"@material-ui/core\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport classNames from \"classnames\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomTextField from \"components/CustomInput/CustomInput\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport { useFormik } from \"formik\";\r\nimport React, { useContext } from \"react\";\r\nimport { API_ACTION_TYPES } from \"store/redux/redux-actions/redux_action_types\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport {\r\n Radio,\r\n RadioGroup,\r\n FormControlLabel,\r\n FormControl,\r\n FormLabel,\r\n} from \"@material-ui/core\";\r\n\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\n\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nimport Context from \"../../utils/context\";\r\nimport history from \"../../utils/history\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport FooterSection from \"../../views/SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../../views/SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../../views/SectionsPage/Sections/LinksSection.js\";\r\nimport { string } from \"prop-types\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function LandingPage(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [page, setPage] = React.useState(1);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n\r\n const [firstDigitName, setfirstDigitName] = React.useState(\"\");\r\n const [secondDigitName, setsecondDigitName] = React.useState(\"\");\r\n const [thirdDigitName, setthirdDigitName] = React.useState(\"\");\r\n const [firstDigitValue, setfirstDigitValue] = React.useState(\"\");\r\n const [secondDigitValue, setsecondDigitValue] = React.useState(\"\");\r\n const [thirdDigitValue, setthirdDigitValue] = React.useState(\"\");\r\n const [registrationType, setRegistrationType] = React.useState(\"both\");\r\n const [\r\n selectedregistrationType,\r\n setselectedRegistrationType,\r\n ] = React.useState(null);\r\n const [NotFound, setNotFound] = React.useState(false);\r\n const [registerValues, setRegisterValues] = React.useState(\"\");\r\n const [resetValues, setResetValues] = React.useState(\"\");\r\n const [retruevedUser, setretruevedUser] = React.useState(\"\");\r\n\r\n const [mainscreen, setMainScreen] = React.useState(true);\r\n const [verifyPin, setVerifyPin] = React.useState(false);\r\n const [registerscreen, setRegisterScreen] = React.useState(false);\r\n const [resetPinscreen, setResetPinscreen] = React.useState(false);\r\n const [changePinscreen, setChangePinscreen] = React.useState(false);\r\n const [paymentResult, setPaymentResult] = React.useState(\"\");\r\n const [alertOpen, setAlertOpen] = React.useState(false);\r\n const [alertText, setAlertText] = React.useState(\"None\");\r\n\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const errorMessage = useSelector(\r\n (state) => state.ApiCallsReducer.errorMessage\r\n );\r\n const error = useSelector((state) => state.ApiCallsReducer.error);\r\n const dispatch = useDispatch();\r\n\r\n const [customerCaption, setcustomerCaption] = React.useState(\"\");\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n let search = window.location.search;\r\n dispatch(ACTIONS.set_Customer(\"NoCoutomer\"));\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(true);\r\n context.dispatchDrawer(\"NoDrawer\");\r\n\r\n if (search.indexOf(\"Success\") !== -1) {\r\n setPaymentResult(\"Success\");\r\n setAlertText(\"Success\");\r\n setAlertOpen(true);\r\n }\r\n if (search.indexOf(\"Failure\") !== -1) {\r\n setPaymentResult(\"Failure\");\r\n setAlertText(\"Failure\");\r\n setAlertOpen(true);\r\n }\r\n }, []);\r\n\r\n const makeFormEncoder = (hash) => {\r\n return function(key) {\r\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(hash[key]);\r\n };\r\n };\r\n\r\n React.useEffect(() => {\r\n dispatch(apiActions.clear());\r\n dispatch(apiActions.loading(true));\r\n\r\n dispatch(ACTIONS.set_Customer(\"NoCoutomer\"));\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n\r\n if (props.create == \"true\") {\r\n setMainScreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n }\r\n getPINDigits();\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(\r\n getSiteDetailsActions.paymentProvider(response.paymentprovider)\r\n );\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n let type = response.registrationtype\r\n ? response.registrationtype.toLowerCase()\r\n : null;\r\n setselectedRegistrationType(\r\n type == \"both\" ? \"personal\" : type == \"bothdob\" ? \"mobile\" : type\r\n );\r\n setRegistrationType(type);\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setcustomerCaption(response.custcaption);\r\n dispatch(ACTIONS.set_Site(response));\r\n\r\n dispatch(ACTIONS.set_sessiontimeout(response.sessiontimeout));\r\n dispatch(ACTIONS.set_overalltimeout(response.overalltimeout));\r\n\r\n context.dispatchIntercomKey(\r\n response.chatauth,\r\n response.chatvisible == \"Y\" ? true : false\r\n );\r\n\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n dispatch(apiActions.loading(false));\r\n dispatch(apiActions.error(error.toString()));\r\n });\r\n }, [page]);\r\n\r\n const handleClose = () => {\r\n setAlertOpen(false);\r\n };\r\n const changeRegisterType = (e, registrationTypeprop) => {\r\n setselectedRegistrationType(registrationTypeprop);\r\n };\r\n\r\n const registerClick = () => {\r\n setMainScreen(false);\r\n setResetPinscreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n\r\n const ResetPinAndPasswordClick = () => {\r\n setResetPinscreen(true);\r\n setMainScreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n const loginClick = () => {\r\n setMainScreen(true);\r\n setRegisterScreen(false);\r\n setResetPinscreen(false);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n const submitRegisterForm = (values) => {\r\n var xhr = new XMLHttpRequest();\r\n var data;\r\n var url;\r\n if (\r\n selectedregistrationType == null ||\r\n selectedregistrationType == \"mobile\"\r\n ) {\r\n url = URLS.GetcreateUserAPIUrl;\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n MobileNumber: values.phone,\r\n DateOfBirth: values.dob,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n if (resetPinscreen) {\r\n url = URLS.GetRecreateUserAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"email\") {\r\n url = URLS.GetcreateUserViaEmailAPIUrl;\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n Email: values.email,\r\n DateOfBirth: values.dob,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n if (resetPinscreen) {\r\n url = URLS.GetRecreateUserViaEmailAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"business\") {\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n Email: values.email,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n url = URLS.GetCreateBusinesUserAPIUrl;\r\n if (resetPinscreen) {\r\n url = URLS.GetReCreateBusinesUserAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"personal\") {\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n EmailAddress: values.email,\r\n MobileNumber: values.phone,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n url = URLS.GetCreatePersonalUserAPIUrl;\r\n if (resetPinscreen) {\r\n url = URLS.GetReCreatePersonalUserAPIUrl;\r\n }\r\n }\r\n\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n const json = JSON.parse(xhr.responseText);\r\n dispatch(apiActions.loading(false));\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n setretruevedUser(json);\r\n setMainScreen(false);\r\n setRegisterScreen(false);\r\n setVerifyPin(true);\r\n setNotFound(false);\r\n\r\n // case 404:\r\n // var message = \"User not found!\";\r\n // context.stateInfoDialog(\"Register\", message);\r\n // break;\r\n // case 400:\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n\r\n // context.stateInfoDialog(\"Register\", message);\r\n // break;\r\n // case 500:\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n // context.stateInfoDialog(\"Register\", message);\r\n\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n\r\n ApiErrorHandler(\"Create Account\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(data);\r\n };\r\n const submitResetForm = (values) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetReset;\r\n\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n var data;\r\n data = JSON.stringify({\r\n Reference: values.resetcustomernumber,\r\n MobileNumber: values.resetphone,\r\n DateOfBirth: values.resetdob,\r\n CredentialToReset: \"Password\",\r\n });\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n setMainScreen(false);\r\n setRegisterScreen(false);\r\n setResetPinscreen(false);\r\n setVerifyPin(true);\r\n setNotFound(false);\r\n dispatch(apiActions.loading(false));\r\n\r\n // break;\r\n // case 404:\r\n // setNotFound(true);\r\n // setMainScreen(false);\r\n // setRegisterScreen(false);\r\n // setResetPinscreen(false);\r\n // setVerifyPin(false);\r\n // break;\r\n // case 400:\r\n // alert(JSON.parse(xhr.responseText));\r\n // break;\r\n // case 500:\r\n // alert(JSON.parse(xhr.responseText));\r\n // break;\r\n // default:\r\n // break;\r\n // }\r\n } else {\r\n ApiErrorHandler(\"Reset\", xhr, context);\r\n dispatch(apiActions.loading(false));\r\n }\r\n }\r\n };\r\n\r\n xhr.send(data);\r\n };\r\n const displayDigits = (data) => {\r\n var first = data[0];\r\n setfirstDigitName(first.description);\r\n setfirstDigitValue(first.digit);\r\n var second = data[1];\r\n setsecondDigitName(second.description);\r\n setsecondDigitValue(second.digit);\r\n var third = data[2];\r\n setthirdDigitName(third.description);\r\n setthirdDigitValue(third.digit);\r\n };\r\n const getPINDigits = () => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetPINDigitsAPIUrl;\r\n xhr.open(\"GET\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n if (json !== null) {\r\n displayDigits(json);\r\n } else {\r\n alert(json);\r\n }\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\"Retrieve pin digits\", xhr.responseText);\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\"Retrieve pin digits\", xhr.responseText);\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Get PIN Digits\", xhr, context);\r\n dispatch(apiActions.loading(false));\r\n }\r\n }\r\n };\r\n\r\n xhr.send();\r\n };\r\n const registerForm = useFormik({\r\n initialValues: {\r\n customernumber: \"\",\r\n regusername: \"\",\r\n phone: \"\",\r\n dob: \"\",\r\n pass: \"\",\r\n passconfirm: \"\",\r\n },\r\n onSubmit: (values) => {\r\n dispatch(apiActions.loading(true));\r\n\r\n if (values.pass != values.passconfirm) {\r\n dispatch(apiActions.loading(false));\r\n\r\n context.stateInfoDialog(\r\n \"Create Account\",\r\n \"Passwords and Confirm password do not match!\"\r\n );\r\n return;\r\n }\r\n setRegisterValues(values);\r\n submitRegisterForm(values);\r\n },\r\n });\r\n const resetForm = useFormik({\r\n initialValues: {\r\n resetcustomernumber: \"\",\r\n resetphone: \"\",\r\n resetdob: \"\",\r\n },\r\n onSubmit: (values) => {\r\n setResetValues(values);\r\n submitResetForm(values);\r\n },\r\n });\r\n\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n dispatch(\r\n ACTIONS.set_Registration_method(\r\n data.customer.registrationmethod == null\r\n ? data.customer.registrationmethod\r\n : data.customer.registrationmethod.toLowerCase()\r\n )\r\n );\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n\r\n let multiplenum = data.activeAccounts[0].deptphonenumber.includes(\r\n \";\"\r\n );\r\n let num = data.activeAccounts[0].deptphonenumber;\r\n if (multiplenum) {\r\n let splited = data.activeAccounts[0].deptphonenumber.split(\";\");\r\n num = splited[0];\r\n }\r\n dispatch(getSiteDetailsActions.devNum(num));\r\n\r\n dispatch(apiActions.clear());\r\n\r\n history.replace(data1.targetURL);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const Logon = (values, firstPosition, secondPosition, thirdPosition) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetTokenURLAPI;\r\n\r\n dispatch(apiActions.loading(true));\r\n\r\n var formValues = {\r\n grant_type: \"password\",\r\n username: values.username,\r\n password: values.password,\r\n validatePIN: \"true\",\r\n client_id: \"PaymentPortal\",\r\n firstValue: values.firstValue,\r\n firstPosition: firstPosition,\r\n secondValue: values.secondValue,\r\n secondPosition: secondPosition,\r\n thirdValue: values.thirdValue,\r\n thirdPosition: thirdPosition,\r\n };\r\n\r\n const pairs = Object.keys(formValues).map(makeFormEncoder(formValues));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"user\", values.username);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"expiresInSeconds\", expires_in_seconds);\r\n\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n dispatch(apiActions.loading(false));\r\n dispatch(ACTIONS.set_startoveralltimeout(true));\r\n getMenu();\r\n\r\n // break;\r\n // case 404:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // case 400:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // case 500:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Sign in\", xhr, context);\r\n let parsedError = JSON.parse(xhr.responseText);\r\n if (\r\n parsedError.error_description === \"User did not enter correct PIN\"\r\n ) {\r\n ResetPins();\r\n }\r\n dispatch(apiActions.loading(false));\r\n }\r\n }\r\n };\r\n\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n const getPinVerification = (values, record, pin) => {\r\n var xhr = new XMLHttpRequest();\r\n var url =\r\n selectedregistrationType == null || selectedregistrationType == \"personal\"\r\n ? URLS.GetVerifyAPIUrl\r\n : URLS.GetVerifyByEmailAPIUrl;\r\n let verifyData = {};\r\n if (selectedregistrationType == \"business\") {\r\n verifyData.id = record.id;\r\n verifyData.userName = values.regusername;\r\n verifyData.emailComfirmed = record.emailConfirmed;\r\n verifyData.emailAddress = record.emailAddress;\r\n verifyData.reference = values.customernumber;\r\n verifyData.customerRecordNo = record.customerRecordNo;\r\n verifyData.pin = pin;\r\n } else {\r\n verifyData.id = record.id;\r\n verifyData.userName = values.regusername;\r\n verifyData.phoneConfirmed = record.phoneConfirmed;\r\n verifyData.mobileNumber = values.phone;\r\n\r\n verifyData.dateOfBirth = values.dob;\r\n\r\n verifyData.reference = values.customernumber;\r\n verifyData.customerRecordNo = record.customerRecordNo;\r\n verifyData.pin = pin;\r\n }\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n setMainScreen(true);\r\n setRegisterScreen(false);\r\n setVerifyPin(false);\r\n\r\n var xhrtoken = new XMLHttpRequest();\r\n var urltoken = URLS.GetTokenURLAPI;\r\n\r\n var valuesPost = {\r\n grant_type: \"password\",\r\n username: values.regusername,\r\n password: values.pass,\r\n validatePIN: \"false\",\r\n client_id: \"PaymentPortal\",\r\n };\r\n // eslint-disable-next-line no-case-declarations\r\n const pairs = Object.entries(valuesPost)\r\n .map(\r\n ([key, value]) =>\r\n `${encodeURIComponent(key)}=${encodeURIComponent(value)}`\r\n )\r\n .join(\"&\");\r\n\r\n xhrtoken.open(\"POST\", urltoken, true);\r\n xhrtoken.setRequestHeader(\r\n \"Content-Type\",\r\n \"application/x-www-form-urlencoded\"\r\n );\r\n xhrtoken.onreadystatechange = function() {\r\n if (xhrtoken.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhrtoken.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(\r\n timeoutDate.getSeconds() + expires_in_seconds\r\n );\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n\r\n getMenu();\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhrtoken.responseText).error_description\r\n // );\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\"Login\", xhrtoken.responseText);\r\n\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Sign in\", xhr, context);\r\n }\r\n }\r\n };\r\n xhrtoken.send(pairs);\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\r\n // \"Verify Pin\",\r\n // JSON.parse(xhr.responseText).message\r\n // );\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\r\n // \"Verify Pin\",\r\n // JSON.parse(xhr.responseText).message\r\n // );\r\n // break;\r\n } else {\r\n ApiErrorHandler(\" Verify PIN\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(JSON.stringify(verifyData));\r\n };\r\n\r\n const LoginForm = useFormik({\r\n initialValues: {\r\n username: \"\",\r\n password: \"\",\r\n firstValue: \"\",\r\n secondValue: \"\",\r\n thirdValue: \"\",\r\n },\r\n\r\n onSubmit: (values) => {\r\n Logon(values, firstDigitValue, secondDigitValue, thirdDigitValue);\r\n },\r\n });\r\n const ResetPins = () => {\r\n LoginForm.values.firstValue = \"\";\r\n LoginForm.values.secondValue = \"\";\r\n LoginForm.values.thirdValue = \"\";\r\n };\r\n const focusUsername = document.querySelector(`input[id=username]`);\r\n const focusPass = document.querySelector(`input[id=pass]`);\r\n\r\n const focusFirst = document.querySelector(`input[id=firstValue]`);\r\n const focusSecond = document.querySelector(`input[id=secondValue]`);\r\n const focusThird = document.querySelector(`input[id=thirdValue]`);\r\n const focusButton = document.querySelector(`button[id=signIn]`);\r\n\r\n React.useEffect(() => {\r\n if (\r\n document.activeElement !== focusUsername &&\r\n document.activeElement !== focusPass\r\n ) {\r\n if (\r\n LoginForm.values.firstValue.length !== 1 &&\r\n (LoginForm.values.secondValue.length === 1 ||\r\n LoginForm.values.thirdValue.length === 1)\r\n ) {\r\n focusFirst.focus();\r\n }\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length !== 1\r\n ) {\r\n focusSecond.focus();\r\n }\r\n\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length === 1 &&\r\n LoginForm.values.thirdValue.length !== 1\r\n ) {\r\n focusThird.focus();\r\n }\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length === 1 &&\r\n LoginForm.values.thirdValue.length === 1\r\n ) {\r\n var isFocused =\r\n document.activeElement === focusSecond ||\r\n document.activeElement === focusFirst ||\r\n document.activeElement === focusThird;\r\n if (isFocused) {\r\n focusButton.focus();\r\n }\r\n }\r\n }\r\n }, [LoginForm.values]);\r\n\r\n const verifyPinForm = useFormik({\r\n initialValues: {\r\n pinnum: \"\",\r\n },\r\n onSubmit: (values) => {\r\n getPinVerification(registerValues, retruevedUser, values.pinnum);\r\n },\r\n });\r\n const changePinForm = useFormik({\r\n initialValues: {\r\n OldPin: \"\",\r\n NewPin: \"\",\r\n ConfirmPIN: \"\",\r\n SecurityCode: \"\",\r\n Reference: \"\",\r\n MobileNumber: \"\",\r\n DateOfBirth: \"\",\r\n },\r\n onSubmit: (values) => {},\r\n });\r\n\r\n return (\r\n
\r\n \r\n Information\r\n \r\n \r\n {alertText}\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\n \r\n

\r\n verified_user Make a payment towards your\r\n account\r\n

\r\n

\r\n verified_user View your account online\r\n

\r\n

\r\n verified_user Choose your own payment plans\r\n

\r\n\r\n

\r\n verified_user Talk to us, we can help!\r\n

\r\n
\r\n \r\n \r\n

\r\n \r\n \r\n \r\n \r\n

\r\n {firstDigitName} DIGIT OF PIN\r\n

\r\n \r\n
\r\n \r\n

\r\n {secondDigitName} DIGIT OF PIN\r\n

\r\n \r\n
\r\n \r\n

\r\n {thirdDigitName} DIGIT OF PIN\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n SIGN IN\r\n \r\n
\r\n\r\n
\r\n {\"Don’t have account? Sign up\"}{\" \"}\r\n registerClick(null)}\r\n className={classes.LinkHome}\r\n color=\"inherit\"\r\n >\r\n {\" \"}\r\n here.\r\n \r\n
\r\n
\r\n ResetPinAndPasswordClick()}\r\n className={classes.LinkHome}\r\n color=\"inherit\"\r\n >\r\n {\" \"}\r\n Forgotten Password/Username\r\n \r\n
\r\n
\r\n {\"Can't Sign in? Call \" + phonenumber}\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\n \r\n \r\n \r\n \r\n

\r\n

\r\n {resetPinscreen\r\n ? \"Forgotten Password/Username\"\r\n : \"Create Account\"}{\" \"}\r\n

\r\n

\r\n Fill in the form below to get instant access.\r\n

\r\n {registrationType == \"both\" ||\r\n registrationType == \"bothdob\" ? (\r\n \r\n \r\n {\" \"}\r\n }\r\n label={\r\n registrationType == \"bothdob\"\r\n ? \"Mobile Phone\"\r\n : \"Personal\"\r\n }\r\n labelPlacement=\"top\"\r\n />\r\n }\r\n label={\r\n registrationType == \"bothdob\"\r\n ? \"Email\"\r\n : \"Business\"\r\n }\r\n labelPlacement=\"top\"\r\n />{\" \"}\r\n \r\n \r\n ) : null}\r\n\r\n \r\n {registrationType == \"bothdob\" ? (\r\n selectedregistrationType == \"mobile\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : selectedregistrationType == \"email\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : null\r\n ) : selectedregistrationType == \"business\" ? (\r\n \r\n ) : selectedregistrationType == null ? (\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\n
\r\n \r\n Back to login\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\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n

Verify Pin

\r\n

\r\n Please enter the PIN number you received via{\" \"}\r\n {selectedregistrationType == null ||\r\n selectedregistrationType == \"personal\"\r\n ? \"SMS\"\r\n : \"email\"}\r\n

\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Back to login\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\n \r\n \r\n \r\n \r\n \r\n

The user is not Not Found

\r\n \r\n Back to login\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\n}\r\n","import { Collapse } from \"@material-ui/core\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport classNames from \"classnames\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport CustomTextField from \"components/CustomInput/CustomInput\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport { useFormik } from \"formik\";\r\nimport React, { useContext } from \"react\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\n\r\nimport Context from \"../../utils/context\";\r\nimport history from \"../../utils/history\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport FooterSection from \"../../views/SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../../views/SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../../views/SectionsPage/Sections/LinksSection.js\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport {\r\n Radio,\r\n RadioGroup,\r\n FormControlLabel,\r\n FormControl,\r\n FormLabel,\r\n} from \"@material-ui/core\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function LandingPageCreateUser(props) {\r\n const dispatch = useDispatch();\r\n\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [page, setPage] = React.useState(1);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [registrationType, setRegistrationType] = React.useState(\"both\");\r\n const [\r\n selectedregistrationType,\r\n setselectedRegistrationType,\r\n ] = React.useState(null);\r\n\r\n const [firstDigitName, setfirstDigitName] = React.useState(\"\");\r\n const [secondDigitName, setsecondDigitName] = React.useState(\"\");\r\n const [thirdDigitName, setthirdDigitName] = React.useState(\"\");\r\n const [firstDigitValue, setfirstDigitValue] = React.useState(\"\");\r\n const [secondDigitValue, setsecondDigitValue] = React.useState(\"\");\r\n const [thirdDigitValue, setthirdDigitValue] = React.useState(\"\");\r\n\r\n const [NotFound, setNotFound] = React.useState(false);\r\n const [registerValues, setRegisterValues] = React.useState(\"\");\r\n const [resetValues, setResetValues] = React.useState(\"\");\r\n const [retruevedUser, setretruevedUser] = React.useState(\"\");\r\n\r\n const [errorMessage, setErrorMessage] = React.useState(\"\");\r\n const [mainscreen, setMainScreen] = React.useState(false);\r\n const [verifyPin, setVerifyPin] = React.useState(false);\r\n const [registerscreen, setRegisterScreen] = React.useState(true);\r\n const [resetPinscreen, setResetPinscreen] = React.useState(false);\r\n const [changePinscreen, setChangePinscreen] = React.useState(false);\r\n const [paymentResult, setPaymentResult] = React.useState(\"\");\r\n const [alertOpen, setAlertOpen] = React.useState(false);\r\n const [alertText, setAlertText] = React.useState(\"None\");\r\n\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n\r\n const [customerCaption, setcustomerCaption] = React.useState(\"\");\r\n\r\n const ResetPins = () => {\r\n LoginForm.values.firstValue = \"\";\r\n LoginForm.values.secondValue = \"\";\r\n LoginForm.values.thirdValue = \"\";\r\n };\r\n const focusUsername = document.querySelector(`input[id=username]`);\r\n const focusPass = document.querySelector(`input[id=pass]`);\r\n\r\n const focusFirst = document.querySelector(`input[id=firstValue]`);\r\n const focusSecond = document.querySelector(`input[id=secondValue]`);\r\n const focusThird = document.querySelector(`input[id=thirdValue]`);\r\n const focusButton = document.querySelector(`button[id=signIn]`);\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n let search = window.location.search;\r\n dispatch(ACTIONS.set_Customer(\"NoCoutomer\"));\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n context.dispatchDrawerTwo(false);\r\n context.dispatchDrawerThree(false);\r\n context.dispatchDrawerOne(true);\r\n context.dispatchDrawer(\"NoDrawer\");\r\n\r\n if (search.indexOf(\"Success\") !== -1) {\r\n setPaymentResult(\"Success\");\r\n setAlertText(\"Success\");\r\n setAlertOpen(true);\r\n }\r\n if (search.indexOf(\"Failure\") !== -1) {\r\n setPaymentResult(\"Failure\");\r\n setAlertText(\"Failure\");\r\n setAlertOpen(true);\r\n }\r\n }, []);\r\n\r\n const makeFormEncoder = (hash) => {\r\n return function(key) {\r\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(hash[key]);\r\n };\r\n };\r\n\r\n React.useEffect(() => {\r\n dispatch(ACTIONS.set_Customer(\"NoCoutomer\"));\r\n\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n\r\n if (props.create == \"true\") {\r\n setMainScreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n }\r\n getPINDigits();\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n //Set site details\r\n dispatch(\r\n getSiteDetailsActions.paymentProvider(response.paymentprovider)\r\n );\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n\r\n let type = response.registrationtype\r\n ? response.registrationtype.toLowerCase()\r\n : null;\r\n setselectedRegistrationType(\r\n type == \"both\" ? \"personal\" : type == \"bothdob\" ? \"mobile\" : type\r\n );\r\n setRegistrationType(type);\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setcustomerCaption(response.custcaption);\r\n dispatch(ACTIONS.set_Site(response));\r\n context.dispatchIntercomKey(\r\n response.chatauth,\r\n response.chatvisible == \"Y\" ? true : false\r\n );\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, [page]);\r\n\r\n const handleClose = () => {\r\n setAlertOpen(false);\r\n };\r\n const changeRegisterType = (e, registrationTypeprop) => {\r\n setselectedRegistrationType(registrationTypeprop);\r\n };\r\n const registerClick = () => {\r\n setMainScreen(false);\r\n setResetPinscreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n\r\n const ResetPinAndPasswordClick = () => {\r\n setResetPinscreen(true);\r\n setMainScreen(false);\r\n setRegisterScreen(true);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n const loginClick = () => {\r\n setMainScreen(true);\r\n setRegisterScreen(false);\r\n setResetPinscreen(false);\r\n setVerifyPin(false);\r\n setNotFound(false);\r\n };\r\n const submitRegisterForm = (values) => {\r\n var xhr = new XMLHttpRequest();\r\n var data;\r\n var url;\r\n if (\r\n selectedregistrationType == null ||\r\n selectedregistrationType == \"mobile\"\r\n ) {\r\n url = URLS.GetcreateUserAPIUrl;\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n MobileNumber: values.phone,\r\n DateOfBirth: values.dob,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n if (resetPinscreen) {\r\n url = URLS.GetRecreateUserAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"email\") {\r\n url = URLS.GetcreateUserViaEmailAPIUrl;\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n Email: values.email,\r\n DateOfBirth: values.dob,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n if (resetPinscreen) {\r\n url = URLS.GetRecreateUserViaEmailAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"business\") {\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n Email: values.email,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n url = URLS.GetCreateBusinesUserAPIUrl;\r\n if (resetPinscreen) {\r\n url = URLS.GetReCreateBusinesUserAPIUrl;\r\n }\r\n } else if (selectedregistrationType == \"personal\") {\r\n data = JSON.stringify({\r\n UserName: values.regusername,\r\n Reference: values.customernumber,\r\n EmailAddress: values.email,\r\n MobileNumber: values.phone,\r\n Password: values.pass,\r\n ConfirmPassword: values.passconfirm,\r\n });\r\n url = URLS.GetCreatePersonalUserAPIUrl;\r\n if (resetPinscreen) {\r\n url = URLS.GetReCreatePersonalUserAPIUrl;\r\n }\r\n }\r\n\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n dispatch(apiActions.loading(false));\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n setretruevedUser(json);\r\n setMainScreen(false);\r\n setRegisterScreen(false);\r\n setVerifyPin(true);\r\n setNotFound(false);\r\n // break;\r\n // case 404:\r\n // var message = \"User not found!\";\r\n // context.stateInfoDialog(\"Register\", message);\r\n // break;\r\n // case 400:\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n\r\n // context.stateInfoDialog(\"Register\", message);\r\n // break;\r\n // case 500:\r\n // var errors = JSON.parse(xhr.responseText).errors;\r\n // var message = \"\";\r\n // context.stateInfoDialog(\"Register\", message);\r\n // errors.forEach((element) => (message += element + \"\\n\"));\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Create Account\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(data);\r\n };\r\n const submitResetForm = (values) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetReset;\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n var data;\r\n data = JSON.stringify({\r\n Reference: values.resetcustomernumber,\r\n MobileNumber: values.resetphone,\r\n DateOfBirth: values.resetdob,\r\n CredentialToReset: \"Password\",\r\n });\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n setMainScreen(false);\r\n setRegisterScreen(false);\r\n setResetPinscreen(false);\r\n setVerifyPin(true);\r\n setNotFound(false);\r\n // break;\r\n // case 404:\r\n // setNotFound(true);\r\n // setMainScreen(false);\r\n // setRegisterScreen(false);\r\n // setResetPinscreen(false);\r\n // setVerifyPin(false);\r\n // break;\r\n // case 400:\r\n // alert(JSON.parse(xhr.responseText));\r\n // break;\r\n // case 500:\r\n // alert(JSON.parse(xhr.responseText));\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Reset\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(data);\r\n };\r\n const displayDigits = (data) => {\r\n var first = data[0];\r\n setfirstDigitName(first.description);\r\n setfirstDigitValue(first.digit);\r\n var second = data[1];\r\n setsecondDigitName(second.description);\r\n setsecondDigitValue(second.digit);\r\n var third = data[2];\r\n setthirdDigitName(third.description);\r\n setthirdDigitValue(third.digit);\r\n };\r\n const getPINDigits = () => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetPINDigitsAPIUrl;\r\n xhr.open(\"GET\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n const json = JSON.parse(xhr.responseText);\r\n\r\n if (json !== null) {\r\n displayDigits(json);\r\n } else {\r\n alert(json);\r\n }\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\"Retrieve pin digits\", xhr.responseText);\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\"Retrieve pin digits\", xhr.responseText);\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Retrieve pin digits\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send();\r\n };\r\n const registerForm = useFormik({\r\n initialValues: {\r\n customernumber: \"\",\r\n email: \"\",\r\n regusername: \"\",\r\n phone: \"\",\r\n dob: \"\",\r\n pass: \"\",\r\n passconfirm: \"\",\r\n },\r\n onSubmit: (values) => {\r\n dispatch(apiActions.loading(true));\r\n\r\n if (values.pass != values.passconfirm) {\r\n context.stateInfoDialog(\r\n \"Create Account\",\r\n \"Passwords and Confirm password do not match!\"\r\n );\r\n return;\r\n }\r\n setRegisterValues(values);\r\n submitRegisterForm(values);\r\n },\r\n });\r\n const resetForm = useFormik({\r\n initialValues: {\r\n resetcustomernumber: \"\",\r\n resetphone: \"\",\r\n resetdob: \"\",\r\n },\r\n onSubmit: (values) => {\r\n setResetValues(values);\r\n submitResetForm(values);\r\n },\r\n });\r\n\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n dispatch(\r\n ACTIONS.set_Registration_method(\r\n data.customer.registrationmethod == null\r\n ? data.customer.registrationmethod\r\n : data.customer.registrationmethod.toLowerCase()\r\n )\r\n );\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n history.replace(data1.targetURL);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const Logon = (values, firstPosition, secondPosition, thirdPosition) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetTokenURLAPI;\r\n dispatch(apiActions.loading(true));\r\n var formValues = {\r\n grant_type: \"password\",\r\n username: values.username,\r\n password: values.password,\r\n validatePIN: \"true\",\r\n client_id: \"PaymentPortal\",\r\n firstValue: values.firstValue,\r\n firstPosition: firstPosition,\r\n secondValue: values.secondValue,\r\n secondPosition: secondPosition,\r\n thirdValue: values.thirdValue,\r\n thirdPosition: thirdPosition,\r\n };\r\n\r\n const pairs = Object.keys(formValues).map(makeFormEncoder(formValues));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"user\", values.username);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n\r\n getMenu();\r\n\r\n // break;\r\n // case 404:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // case 400:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // case 500:\r\n // dispatch(\r\n // apiActions.error(JSON.parse(xhr.responseText).error_description)\r\n // );\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhr.responseText).error_description\r\n // );\r\n // break;\r\n // default:\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Sign in\", xhr, context);\r\n let parsedError = JSON.parse(xhr.responseText);\r\n if (\r\n parsedError.error_description === \"User did not enter correct PIN\"\r\n ) {\r\n ResetPins();\r\n }\r\n }\r\n }\r\n };\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n const getPinVerification = (values, record, pin) => {\r\n var xhr = new XMLHttpRequest();\r\n var url =\r\n selectedregistrationType == null || selectedregistrationType == \"personal\"\r\n ? URLS.GetVerifyAPIUrl\r\n : URLS.GetVerifyByEmailAPIUrl;\r\n let verifyData = {};\r\n if (selectedregistrationType == \"business\") {\r\n verifyData.id = record.id;\r\n verifyData.userName = values.regusername;\r\n verifyData.emailComfirmed = record.emailConfirmed;\r\n verifyData.emailAddress = record.emailAddress;\r\n verifyData.reference = values.customernumber;\r\n verifyData.customerRecordNo = record.customerRecordNo;\r\n verifyData.pin = pin;\r\n } else {\r\n verifyData.id = record.id;\r\n verifyData.userName = values.regusername;\r\n verifyData.phoneConfirmed = record.phoneConfirmed;\r\n verifyData.mobileNumber = values.phone;\r\n\r\n verifyData.dateOfBirth = values.dob;\r\n\r\n verifyData.reference = values.customernumber;\r\n verifyData.customerRecordNo = record.customerRecordNo;\r\n verifyData.pin = pin;\r\n }\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n setMainScreen(true);\r\n setRegisterScreen(false);\r\n setVerifyPin(false);\r\n\r\n var xhrtoken = new XMLHttpRequest();\r\n var urltoken = URLS.GetTokenURLAPI;\r\n\r\n var valuesPost = {\r\n grant_type: \"password\",\r\n username: values.regusername,\r\n password: values.pass,\r\n validatePIN: \"false\",\r\n client_id: \"PaymentPortal\",\r\n };\r\n // eslint-disable-next-line no-case-declarations\r\n const pairs = Object.entries(valuesPost)\r\n .map(\r\n ([key, value]) =>\r\n `${encodeURIComponent(key)}=${encodeURIComponent(value)}`\r\n )\r\n .join(\"&\");\r\n\r\n xhrtoken.open(\"POST\", urltoken, true);\r\n xhrtoken.setRequestHeader(\r\n \"Content-Type\",\r\n \"application/x-www-form-urlencoded\"\r\n );\r\n xhrtoken.onreadystatechange = function() {\r\n if (xhrtoken.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhrtoken.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(\r\n timeoutDate.getSeconds() + expires_in_seconds\r\n );\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n\r\n getMenu();\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\r\n // \"Login\",\r\n // JSON.parse(xhrtoken.responseText).error_description\r\n // );\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\"Login\", xhrtoken.responseText);\r\n\r\n // break;\r\n } else {\r\n ApiErrorHandler(\"Sign in\", xhr, context);\r\n }\r\n }\r\n };\r\n xhrtoken.send(pairs);\r\n // break;\r\n // case 404:\r\n // context.stateInfoDialog(\r\n // \"Verify Pin\",\r\n // JSON.parse(xhr.responseText).message\r\n // );\r\n // break;\r\n // default:\r\n // context.stateInfoDialog(\r\n // \"Verify Pin\",\r\n // JSON.parse(xhr.responseText).message\r\n // );\r\n // break;\r\n } else {\r\n ApiErrorHandler(\" Verify PIN\", xhr, context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(JSON.stringify(verifyData));\r\n };\r\n\r\n const LoginForm = useFormik({\r\n initialValues: {\r\n username: \"\",\r\n password: \"\",\r\n firstValue: \"\",\r\n secondValue: \"\",\r\n thirdValue: \"\",\r\n },\r\n onSubmit: (values) => {\r\n Logon(values, firstDigitValue, secondDigitValue, thirdDigitValue);\r\n },\r\n });\r\n React.useEffect(() => {\r\n if (\r\n document.activeElement !== focusUsername &&\r\n document.activeElement !== focusPass\r\n ) {\r\n if (\r\n LoginForm.values.firstValue.length !== 1 &&\r\n (LoginForm.values.secondValue.length === 1 ||\r\n LoginForm.values.thirdValue.length === 1)\r\n ) {\r\n focusFirst.focus();\r\n }\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length !== 1\r\n ) {\r\n focusSecond.focus();\r\n }\r\n\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length === 1 &&\r\n LoginForm.values.thirdValue.length !== 1\r\n ) {\r\n focusThird.focus();\r\n }\r\n if (\r\n LoginForm.values.firstValue.length === 1 &&\r\n LoginForm.values.secondValue.length === 1 &&\r\n LoginForm.values.thirdValue.length === 1\r\n ) {\r\n var isFocused =\r\n document.activeElement === focusSecond ||\r\n document.activeElement === focusFirst ||\r\n document.activeElement === focusThird;\r\n if (isFocused) {\r\n focusButton.focus();\r\n }\r\n }\r\n }\r\n }, [LoginForm.values]);\r\n const verifyPinForm = useFormik({\r\n initialValues: {\r\n pinnum: \"\",\r\n },\r\n onSubmit: (values) => {\r\n getPinVerification(registerValues, retruevedUser, values.pinnum);\r\n },\r\n });\r\n const changePinForm = useFormik({\r\n initialValues: {\r\n OldPin: \"\",\r\n NewPin: \"\",\r\n ConfirmPIN: \"\",\r\n SecurityCode: \"\",\r\n Reference: \"\",\r\n MobileNumber: \"\",\r\n DateOfBirth: \"\",\r\n },\r\n onSubmit: (values) => {},\r\n });\r\n\r\n return (\r\n
\r\n \r\n Information\r\n \r\n \r\n {alertText}\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\n \r\n

\r\n verified_user Make a payment towards your\r\n account{\" \"}\r\n

\r\n

\r\n verified_user View your account online\r\n

\r\n\r\n

\r\n verified_user Choose your own payment plans\r\n

\r\n\r\n

\r\n verified_user Talk to us, we can help!\r\n

\r\n
\r\n \r\n \r\n

\r\n \r\n \r\n \r\n \r\n

\r\n {firstDigitName} DIGIT OF PIN\r\n

\r\n \r\n
\r\n \r\n

\r\n {secondDigitName} DIGIT OF PIN\r\n

\r\n \r\n
\r\n \r\n

\r\n {thirdDigitName} DIGIT OF PIN\r\n

\r\n \r\n
\r\n
\r\n
\r\n \r\n SIGN IN\r\n \r\n
\r\n\r\n
\r\n {\"Don’t have account? Sign up\"}{\" \"}\r\n registerClick(null)}\r\n className={classes.LinkHome}\r\n color=\"inherit\"\r\n >\r\n {\" \"}\r\n here.\r\n \r\n
\r\n
\r\n ResetPinAndPasswordClick(null)}\r\n className={classes.LinkHome}\r\n color=\"inherit\"\r\n >\r\n {\" \"}\r\n Forgotten Password/Username\r\n \r\n
\r\n
\r\n {\"Can't Sign in? Call \" + phonenumber}\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\n \r\n \r\n \r\n \r\n

\r\n

\r\n {resetPinscreen\r\n ? \"Forgotten Password/Username\"\r\n : \"Create Account\"}{\" \"}\r\n

\r\n

\r\n Fill in the form below to get instant access.\r\n

\r\n {registrationType == \"both\" ||\r\n registrationType == \"bothdob\" ? (\r\n \r\n \r\n {\" \"}\r\n }\r\n label={\r\n registrationType == \"bothdob\"\r\n ? \"Mobile Phone\"\r\n : \"Personal\"\r\n }\r\n labelPlacement=\"top\"\r\n />\r\n }\r\n label={\r\n registrationType == \"bothdob\"\r\n ? \"Email\"\r\n : \"Business\"\r\n }\r\n labelPlacement=\"top\"\r\n />{\" \"}\r\n \r\n \r\n ) : null}\r\n \r\n {registrationType == \"bothdob\" ? (\r\n selectedregistrationType == \"mobile\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : selectedregistrationType == \"email\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : null\r\n ) : selectedregistrationType == \"business\" ? (\r\n \r\n ) : selectedregistrationType == null ? (\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\n
\r\n
\r\n \r\n Back to login\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\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n

Verify Pin

\r\n

\r\n Please enter the PIN number you received via{\" \"}\r\n {selectedregistrationType == null ||\r\n selectedregistrationType == \"personal\"\r\n ? \"SMS\"\r\n : \"email\"}\r\n

\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Back to login\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\n \r\n \r\n \r\n \r\n \r\n

The user is not Not Found

\r\n \r\n Back to login\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\n}\r\n","import {\r\n defaultFont,\r\n primaryColor,\r\n infoColor,\r\n successColor,\r\n warningColor,\r\n dangerColor,\r\n roseColor,\r\n grayColor\r\n} from \"assets/jss/xrs.js\";\r\n\r\nconst typographyStyle = {\r\n defaultFontStyle: {\r\n ...defaultFont,\r\n fontSize: \"14px\"\r\n },\r\n defaultHeaderMargins: {\r\n marginTop: \"20px\",\r\n marginBottom: \"10px\"\r\n },\r\n quote: {\r\n padding: \"10px 20px\",\r\n margin: \"0 0 20px\",\r\n fontSize: \"1.25rem\",\r\n borderLeft: \"5px solid \" + grayColor[2]\r\n },\r\n quoteText: {\r\n margin: \"0 0 10px\",\r\n fontStyle: \"italic\"\r\n },\r\n quoteAuthor: {\r\n display: \"block\",\r\n fontSize: \"80%\",\r\n lineHeight: \"1.42857143\",\r\n color: grayColor[10]\r\n },\r\n mutedText: {\r\n \"&, & *\": {\r\n color: grayColor[7],\r\n display: \"inline-block\"\r\n }\r\n },\r\n primaryText: {\r\n \"&, & *\": {\r\n color: primaryColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n infoText: {\r\n \"&, & *\": {\r\n color: infoColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n successText: {\r\n \"&, & *\": {\r\n color: successColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n warningText: {\r\n \"&, & *\": {\r\n color: warningColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n dangerText: {\r\n \"&, & *\": {\r\n color: dangerColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n roseText: {\r\n \"&, & *\": {\r\n color: roseColor[0],\r\n display: \"inline-block\"\r\n }\r\n },\r\n smallText: {\r\n fontSize: \"65%\",\r\n fontWeight: \"400\",\r\n lineHeight: \"1\",\r\n color: grayColor[10]\r\n }\r\n};\r\n\r\nexport default typographyStyle;\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n// core components\r\nimport styles from \"assets/jss/xrs/components/typographyStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Success(props) {\r\n const { children } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n}\r\n\r\nSuccess.propTypes = {\r\n children: PropTypes.node\r\n};\r\n","import {\r\n primaryColor,\r\n primaryDarkColor,\r\n successColor,\r\n dangerColor,\r\n primaryBoxShadow,\r\n} from \"assets/jss/xrs.js\";\r\nconst fabStyle = {\r\n fabCameraContainer: {\r\n position: \"fixed\",\r\n bottom: \"50px\",\r\n left: \"50%\",\r\n marginLeft: \"-40px\",\r\n zIndex: \"999\",\r\n cursor: \"pointer\",\r\n },\r\n fabReturnContainer: {\r\n position: \"fixed\",\r\n bottom: \"50px\",\r\n marginLeft: \"-30px\",\r\n\r\n left: \"30%\",\r\n zIndex: \"999\",\r\n cursor: \"pointer\",\r\n },\r\n fabChangeCameraContainer: {\r\n position: \"fixed\",\r\n bottom: \"50px\",\r\n left: \"70%\",\r\n marginLeft: \"-30px\",\r\n\r\n zIndex: \"999\",\r\n cursor: \"pointer\",\r\n },\r\n fabIconHolder: {\r\n width: \"50px\",\r\n height: \"50px\",\r\n borderRadius: \"100%\",\r\n background: \"#016fb9\",\r\n boxShadow: \"0 6px 20px rgba(0,0,0,0.2)\",\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n ...primaryBoxShadow,\r\n },\r\n \"& i\": {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n height: \"100%\",\r\n fontStyle: \"25px\",\r\n color: \"#ffffff\",\r\n },\r\n },\r\n fab: {\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n },\r\n width: \"80px\",\r\n height: \"80px\",\r\n backgroundColor: primaryDarkColor[0],\r\n },\r\n fabReturn: {\r\n \"&:hover,&:focus\": {\r\n backgroundColor: primaryColor[0],\r\n },\r\n width: \"60px\",\r\n height: \"60px\",\r\n backgroundColor: primaryDarkColor[0],\r\n },\r\n fabLike: {\r\n \"&:hover,&:focus\": {\r\n backgroundColor: successColor[5],\r\n ...primaryBoxShadow,\r\n },\r\n width: \"60px\",\r\n height: \"60px\",\r\n backgroundColor: successColor[0],\r\n },\r\n fabDislike: {\r\n \"&:hover,&:focus\": {\r\n backgroundColor: dangerColor[5],\r\n ...primaryBoxShadow,\r\n },\r\n width: \"60px\",\r\n height: \"60px\",\r\n backgroundColor: dangerColor[0],\r\n },\r\n};\r\nexport default fabStyle;\r\n","import React from \"react\";\r\nimport styles from \"assets/jss/xrs/components/fabCameraStyle.js\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport CommentOutlinedIcon from \"@material-ui/icons/CommentOutlined\";\r\nimport InsertDriveFileOutlinedIcon from \"@material-ui/icons/InsertDriveFileOutlined\";\r\nimport CameraAltIcon from \"@material-ui/icons/CameraAlt\";\r\nimport FlipToFrontIcon from \"@material-ui/icons/FlipToFront\";\r\nimport KeyboardReturnIcon from \"@material-ui/icons/KeyboardReturn\";\r\nimport DoneIcon from \"@material-ui/icons/Done\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nimport { cameraActions } from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { isMobile } from \"react-device-detect\";\r\nconst useStyles = makeStyles(styles);\r\nexport default function FabOpenedCamera({ changeCamera, capturePicture }) {\r\n const classes = useStyles();\r\n const openCamera = useSelector((state) => state.CameraReducer.openFrom);\r\n const image = useSelector((state) => state.CameraReducer.capturedImage);\r\n const documents = useSelector((state) => state.CameraReducer.confirmedImages);\r\n const uploadimagestobudget = useSelector(\r\n (state) => state.GetSiteDetailsReducer.uploadimagestobudget\r\n );\r\n const [numberOfCameras, setNumberOfCameras] = React.useState(0);\r\n function closeFullscreen() {\r\n if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n } else if (document.webkitExitFullscreen) {\r\n /* Safari */\r\n document.webkitExitFullscreen();\r\n } else if (document.msExitFullscreen) {\r\n /* IE11 */\r\n document.msExitFullscreen();\r\n }\r\n }\r\n React.useEffect(() => {\r\n if (uploadimagestobudget && isMobile) {\r\n navigator.mediaDevices.getUserMedia({ video: true });\r\n navigator.mediaDevices.enumerateDevices().then((devices) => {\r\n var amount = 0;\r\n devices.map((item) => {\r\n if (item.kind === \"videoinput\") {\r\n amount++;\r\n }\r\n });\r\n\r\n setNumberOfCameras(amount);\r\n });\r\n }\r\n }, []);\r\n\r\n const dispatch = useDispatch();\r\n if (openCamera === \"\" ? false : true) {\r\n if (image === \"\") {\r\n return (\r\n <>\r\n {\r\n capturePicture();\r\n }}\r\n className={classes.fabCameraContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {\r\n dispatch(cameraActions.openCamera(\"\"));\r\n closeFullscreen();\r\n }}\r\n className={classes.fabReturnContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {numberOfCameras > 1 ? (\r\n {\r\n changeCamera();\r\n }}\r\n className={classes.fabChangeCameraContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n ) : null}\r\n \r\n );\r\n } else {\r\n return (\r\n <>\r\n {\r\n var blob = new Blob([image], { type: \"image/jpeg\" });\r\n let document = {\r\n from: openCamera.from,\r\n itemId: openCamera.itemId,\r\n document: blob,\r\n preview: image,\r\n name: openCamera.name + \" - Picture\",\r\n };\r\n let exists = documents.find(\r\n (element) =>\r\n element.from == openCamera.from &&\r\n element.itemId == openCamera.itemId\r\n );\r\n if (exists) {\r\n dispatch(cameraActions.deleteDocument(exists));\r\n }\r\n dispatch(cameraActions.addCapturedImage(document));\r\n dispatch(cameraActions.openCamera(\"\"));\r\n dispatch(cameraActions.setCapturedImage(\"\"));\r\n closeFullscreen();\r\n }}\r\n className={classes.fabReturnContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n {\r\n dispatch(cameraActions.setCapturedImage(\"\"));\r\n }}\r\n className={classes.fabChangeCameraContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n } else return null;\r\n}\r\n","import React from \"react\";\r\nimport Webcam from \"react-webcam\";\r\nimport FabOpenedCamera from \"components/Fab/FabOpenedCamera.js\";\r\nimport { cameraActions } from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nconst videoConstraints = {\r\n facingMode: \"environment\",\r\n};\r\n\r\nconst CustomCamera = () => {\r\n const webcamRef = React.useRef(null);\r\n const image = useSelector((state) => state.CameraReducer.capturedImage);\r\n const dispatch = useDispatch();\r\n const [changeCamera, setChangeCamera] = React.useState(false);\r\n const size = useWindowSize();\r\n\r\n const isLandscape = size.height <= size.width;\r\n const ratio = isLandscape\r\n ? size.width / size.height\r\n : size.width / size.height;\r\n\r\n const capture = React.useCallback(() => {\r\n const imageSrc = webcamRef.current.getScreenshot();\r\n dispatch(cameraActions.setCapturedImage(imageSrc));\r\n }, [webcamRef]);\r\n const switchCamera = () => {\r\n setChangeCamera(!changeCamera);\r\n\r\n if (!changeCamera === true) {\r\n videoConstraints.facingMode = \"user\";\r\n } else {\r\n videoConstraints.facingMode = \"environment\";\r\n }\r\n };\r\n return (\r\n <>\r\n {image === \"\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n \r\n );\r\n};\r\n\r\nexport function useWindowSize() {\r\n // Initialize state with undefined width/height so server and client renders match\r\n // Learn more here: https://joshwcomeau.com/react/the-perils-of-rehydration/\r\n const [windowSize, setWindowSize] = React.useState({\r\n width: undefined,\r\n height: undefined,\r\n });\r\n React.useEffect(() => {\r\n // Handler to call on window resize\r\n function handleResize() {\r\n // Set window width/height to state\r\n setWindowSize({\r\n width: window.innerWidth,\r\n height: window.innerHeight,\r\n });\r\n }\r\n // Add event listener\r\n window.addEventListener(\"resize\", handleResize);\r\n // Call handler right away so state gets updated with initial window size\r\n handleResize();\r\n // Remove event listener on cleanup\r\n return () => window.removeEventListener(\"resize\", handleResize);\r\n }, [window.innerWidth]);\r\n return windowSize;\r\n}\r\n\r\nexport default CustomCamera;\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport { useFormik } from \"formik\";\r\nimport history from \"../../utils/history\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport FooterSection from \"../../views/SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../../views/SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../../views/SectionsPage/Sections/LinksSection.js\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport Iframe from \"react-iframe\";\r\nimport fnmoment from \"moment\";\r\nimport Context from \"../../utils/context\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport {\r\n Radio,\r\n RadioGroup,\r\n FormControlLabel,\r\n FormControl,\r\n FormLabel,\r\n} from \"@material-ui/core\";\r\n\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\n\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\nimport Fade from \"@material-ui/core/Fade\";\r\n\r\nimport Link from \"@material-ui/core/Link\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport ReactHtmlParser, {\r\n processNodes,\r\n convertNodeToElement,\r\n htmlparser2,\r\n} from \"react-html-parser\";\r\n\r\nimport {\r\n BrowserView,\r\n MobileView,\r\n isBrowser,\r\n isMobile,\r\n} from \"react-device-detect\";\r\n\r\nimport { Collapse } from \"@material-ui/core\";\r\n\r\nimport html2canvas from \"html2canvas\";\r\nimport Success from \"components/Typography/Success\";\r\nimport { useWindowSize } from \"components/camera/Camera\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet eventListenerCopy = null;\r\nexport default function QuickPayPage() {\r\n const dispatch = useDispatch();\r\n\r\n const [page, setPage] = React.useState(1);\r\n const [disableButton, setdisableButton] = React.useState(false);\r\n\r\n const [ifamevisible, setIfamevisible] = React.useState(false);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n\r\n const [email, setEmail] = React.useState(\"\");\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const paymentProvider = useSelector(\r\n (state) => state.GetSiteDetailsReducer.paymentProvider\r\n );\r\n const convenienceFee = useSelector(\r\n (state) => state.GetSiteDetailsReducer.convenienceFee\r\n );\r\n const [registrationType, setRegistrationType] = React.useState(\"both\");\r\n const [\r\n selectedregistrationType,\r\n setselectedRegistrationType,\r\n ] = React.useState(null);\r\n\r\n const [useSSN, setSSN] = React.useState(false);\r\n\r\n const context = useContext(Context);\r\n\r\n const [minimumPayAmount, setMinimumPayAmount] = React.useState(\"\");\r\n const [minimumDob, setMinimumDob] = React.useState(\"\");\r\n const [maximumDob, setMaximumDob] = React.useState(\"\");\r\n\r\n const [alertOpen, setAlertOpen] = React.useState(false);\r\n const [alertText, setAlertText] = React.useState(false);\r\n const [quickPayText, setQuickPayText] = React.useState(\"\");\r\n const [paymentgatewayurl, setPaymentgatewayurl] = React.useState(\"\");\r\n\r\n const [showQuickPay, setShowQuickPay] = React.useState(true);\r\n const [termsClicked, setTermsCliked] = React.useState(false);\r\n const [termsText, setTermsText] = React.useState(\"\");\r\n const [termsApiText, setTermsApiText] = React.useState(\"\");\r\n const [selectedDate, setSelectedDate] = React.useState(\"Test\");\r\n const [screenTake, setScreenTakte] = React.useState(\"date\");\r\n const [screenstate, setScreenstate] = React.useState({ screenshot: \"\" });\r\n const [customerCaption, setcustomerCaption] = React.useState(\"\");\r\n const [quickPayAPIData, setquickPayAPIData] = React.useState(undefined);\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n }, []);\r\n React.useEffect(() => {\r\n if (quickPayAPIData) {\r\n window.addEventListener(\"message\", tabaPayMessage, false);\r\n }\r\n return () => {\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n };\r\n }, [quickPayAPIData]);\r\n\r\n const HideIframe = () => {\r\n setIfamevisible(false);\r\n };\r\n const ShowIframe = () => {\r\n setIfamevisible(true);\r\n };\r\n const handleTermsMobile = () => {\r\n setShowQuickPay(false);\r\n };\r\n const HandleTermsClicked = (e) => {\r\n if (e.target.checked) {\r\n setTermsText(\"I agree with the \");\r\n }\r\n setTermsCliked(e.target.checked);\r\n setShowQuickPay(true);\r\n };\r\n const changeRegisterType = (e, registrationTypeprop) => {\r\n setselectedRegistrationType(registrationTypeprop);\r\n };\r\n React.useEffect(() => {\r\n window.RealexHpp = null;\r\n\r\n const script = document.createElement(\"script\");\r\n script.src = \"rxp-js.js\";\r\n script.async = true;\r\n document.body.appendChild(script);\r\n dispatch(ACTIONS.set_Customer(\"NoCustomer\"));\r\n\r\n dispatch(ACTIONS.set_Accounts(\"NoAccount\"));\r\n dispatch(ACTIONS.set_selectedAccount(\"NoAccount\"));\r\n\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n\r\n let type = response.registrationtype\r\n ? response.registrationtype.toLowerCase()\r\n : null;\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n setQuickPayText(response.quickpaytext);\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n setselectedRegistrationType(\r\n type == \"both\" ? \"personal\" : type == \"bothdob\" ? null : type\r\n );\r\n setRegistrationType(type);\r\n setPaymentgatewayurl(response.paymentgatewayurl);\r\n setSSN(response.quickpayusessn);\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setMinimumPayAmount(response.minquickpay);\r\n setTermsApiText(response.termsquickpay);\r\n var date = fnmoment(new Date()).add(-110, \"years\");\r\n var maxdate = fnmoment(new Date()).add(-16, \"years\");\r\n setcustomerCaption(response.custcaption);\r\n setMinimumDob(fnmoment(date).format(\"YYYY-MM-DD\"));\r\n setMaximumDob(fnmoment(maxdate).format(\"YYYY-MM-DD\"));\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n return () => {\r\n document.body.removeChild(script);\r\n window.RealexHpp = null;\r\n if (eventListenerCopy != null) {\r\n window.removeEventListener(\"message\", eventListenerCopy, false);\r\n }\r\n };\r\n }, []);\r\n const formik = useFormik({\r\n initialValues: {\r\n referencenum: \"\",\r\n phone: \"\",\r\n dob: \"\",\r\n email: \"\",\r\n amount: 0,\r\n SSN: \"\",\r\n },\r\n onSubmit: (values) => {\r\n if (isMobile) {\r\n if (termsClicked) {\r\n setdisableButton(true);\r\n\r\n setImageBase64(values);\r\n } else {\r\n setShowQuickPay(false);\r\n }\r\n } else {\r\n setdisableButton(true);\r\n\r\n setImageBase64(values);\r\n }\r\n },\r\n });\r\n\r\n const displayMessage = (evt) => {\r\n //alert(\"I got \" + evt.data + \" from \" + evt.origin);\r\n };\r\n const RedirectResponse = (RedirecURL) => {\r\n history.push(RedirecURL);\r\n };\r\n const RelalexInit = (values) => {\r\n window.RealexHpp.setHppUrl(paymentgatewayurl);\r\n eventListenerCopy = window.RealexHpp.embedded.init(\r\n \"payButtonId\",\r\n \"paymentIframeID\",\r\n URLS.GetRelexPostBackAPIURL,\r\n values,\r\n RedirectResponse\r\n );\r\n\r\n //window.RealexHpp.lightbox.init(\"payButtonId\", \"http://api.xrs.ie/XRSPaymentPortal/api/HppResponse/RealexResult\", values);\r\n };\r\n\r\n const submitForm = (values, screen) => {\r\n const xhr = new XMLHttpRequest();\r\n var data;\r\n var Reference = values.referencenum;\r\n var MobileNumber = values.phone;\r\n var DateOfBirth = values.dob;\r\n var Email = values.email;\r\n const ssn = values.SSN;\r\n\r\n var Amount = values.amount + convenienceFee;\r\n var url =\r\n selectedregistrationType == null\r\n ? URLS.GetQuickPayAPIUrl\r\n : selectedregistrationType == \"personal\"\r\n ? URLS.QuickPayPersonal\r\n : URLS.QuickPayBusiness;\r\n if (useSSN == \"Y\") {\r\n url = URLS.GetQuickPaySSNAPIUrl;\r\n data = JSON.stringify({\r\n Reference: Reference,\r\n SSN: ssn,\r\n DateOfBirth: DateOfBirth,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n } else {\r\n if (selectedregistrationType == null) {\r\n data = JSON.stringify({\r\n Reference: Reference,\r\n MobileNumber: MobileNumber,\r\n DateOfBirth: DateOfBirth,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n } else if (selectedregistrationType == \"personal\") {\r\n data = JSON.stringify({\r\n Reference: Reference,\r\n MobileNumber: MobileNumber,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n } else {\r\n data = JSON.stringify({\r\n Reference: Reference,\r\n emailAddress: Email,\r\n Amount: Amount,\r\n ScreenShot: screen,\r\n });\r\n }\r\n }\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n\r\n dispatch(apiActions.loading(true));\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n dispatch(apiActions.loading(false));\r\n\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n\r\n if (paymentProvider.toUpperCase() == \"TABAPAY\") {\r\n setquickPayAPIData(json);\r\n } else {\r\n RelalexInit(json);\r\n }\r\n if (isMobile) {\r\n setShowQuickPay(false);\r\n }\r\n setIfamevisible(true);\r\n window.scrollTo(0, 0);\r\n } else {\r\n setdisableButton(false);\r\n\r\n ApiErrorHandler(\"Quick Pay\", xhr, context);\r\n }\r\n }\r\n };\r\n try {\r\n xhr.send(data);\r\n } catch (err) {\r\n dispatch(apiActions.loading(false));\r\n\r\n ApiErrorHandler(\"Quick Pay\", err, context);\r\n }\r\n };\r\n var tabaPayMessage = function(event) {\r\n //Check if it is from TabaPay\r\n let iframe = document.getElementById(\"SSO\");\r\n\r\n if (typeof event.data === \"string\") {\r\n if (event.data != \"Close\") {\r\n if (event.data.slice(0, 7) == \"Error: \") {\r\n // Error\r\n } else {\r\n var asData = event.data.split(\"|\");\r\n if (asData.length == 3) {\r\n let quickPayData = quickPayAPIData;\r\n quickPayData.LASTDIGITS = asData[0];\r\n quickPayData.EXPIRATIONDATE = asData[1];\r\n quickPayData.CARDTOKEN = asData[2];\r\n fetch(URLS.QuickPayResultTabaPay, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n },\r\n body: JSON.stringify(quickPayData),\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n setdisableButton(false);\r\n\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Quick Pay\", data, context);\r\n });\r\n if (res.status == 410) {\r\n iframe.src = iframe.src;\r\n formik.handleSubmit();\r\n }\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n history.push(response.REDIRECTURL);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Quick Pay\", error, context);\r\n }\r\n });\r\n } else {\r\n // Data Error\r\n }\r\n }\r\n } else {\r\n setIfamevisible(false);\r\n setdisableButton(false);\r\n window.removeEventListener(\"message\", tabaPayMessage);\r\n iframe.src = iframe.src;\r\n }\r\n }\r\n };\r\n const setImageBase64 = (values) => {\r\n html2canvas(document.querySelector(\"#screen\"), {\r\n width: 800,\r\n backgroundColor: \"#ffffff\",\r\n height: 600,\r\n }).then((canvas) => {\r\n const newScreenshot = canvas.toDataURL(\"image/png\");\r\n //document.getElementById(\"screen\").appendChild(canvas);\r\n setScreenstate({ newScreenshot });\r\n submitForm(values, newScreenshot);\r\n });\r\n };\r\n const handleClickOpen = () => {\r\n setAlertOpen(true);\r\n };\r\n\r\n const handleClose = () => {\r\n setAlertOpen(false);\r\n };\r\n const classes = useStyles();\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

Pay Now

\r\n {quickPayText != \"\" ? (\r\n ReactHtmlParser(quickPayText)\r\n ) : (\r\n <>\r\n {\" \"}\r\n

Fill in the form with your account details.

\r\n

\r\n You will then be redirected to a secure payment\r\n page to complete the payment.\r\n

\r\n \r\n )}\r\n\r\n {registrationType == \"both\" ? (\r\n \r\n \r\n {\" \"}\r\n }\r\n label=\"Personal\"\r\n labelPlacement=\"top\"\r\n />\r\n }\r\n label=\"Business\"\r\n labelPlacement=\"top\"\r\n />{\" \"}\r\n \r\n \r\n ) : null}\r\n \r\n {useSSN != \"Y\" ? (\r\n \r\n ) : null}\r\n\r\n {useSSN == \"Y\" ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : selectedregistrationType == \"business\" ? (\r\n \r\n ) : selectedregistrationType == null ? (\r\n <>\r\n {\" \"}\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n {convenienceFee == 0 ? null : (\r\n
\r\n \r\n Debit amount is{\" \"}\r\n \r\n \r\n {currency + \" \"}\r\n {formik.values.amount\r\n ? formik.values.amount + convenienceFee\r\n : 0}\r\n \r\n
\r\n )}\r\n \r\n \r\n }\r\n label=\"I agree with the Terms and Conditions\"\r\n />\r\n \r\n \r\n \r\n {\" \"}\r\n {termsText} Terms and Conditions\r\n \r\n \r\n
\r\n \r\n PAY NOW\r\n \r\n \r\n REALEX NOW\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 {ReactHtmlParser(termsApiText)}\r\n
\r\n
\r\n \r\n \r\n

\r\n {ReactHtmlParser(termsApiText)}\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n \r\n
\r\n
\r\n \r\n {paymentProvider.toUpperCase() == \"TABAPAY\" ? (\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\n
\r\n );\r\n}\r\n","const quickPaymentStyle = {\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n visible: {\r\n display: \"box\",\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n Title: {\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n blue: {\r\n backgroundColor: \"#0065a4\",\r\n borderRadius: 0,\r\n color: \"#ffffff\",\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 18,\r\n },\r\n green: {\r\n backgroundColor: \"#ffffff;\",\r\n borderRadius: 0,\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 19,\r\n paddingTop: 30,\r\n color: \"#0065a4\",\r\n },\r\n blueBox: {\r\n paddingLeft: 50,\r\n paddingRight: 50,\r\n paddingBottom: 10,\r\n borderRadius: 4,\r\n },\r\n DiscountBlue: {\r\n color: \"#0065a4\",\r\n textAlign: \"center\",\r\n paddingTop: 10,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountGreen: {\r\n color: \"#4caf50\",\r\n textAlign: \"center\",\r\n padding: 25,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 16,\r\n backgroundColor: \"#e6f2e6\",\r\n Border: \"none\",\r\n borderRadius: 4,\r\n },\r\n DiscountItemRed: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 16,\r\n backgroundColor: \"#ffe5e5\",\r\n Border: \"none\",\r\n borderRadius: 4,\r\n },\r\n AmmountItemRed: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 40,\r\n backgroundColor: \"#ffe5e5\",\r\n Border: \"none\",\r\n Radiusradius: 4,\r\n },\r\n AmmountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 40,\r\n backgroundColor: \"#e6f2e6\",\r\n Border: \"none\",\r\n Radiusradius: 4,\r\n },\r\n footer: {\r\n backgroundColor: \"#4caf50\",\r\n fontSize: 16,\r\n padding: 14,\r\n color: \"#fff\",\r\n borderRadius: 4,\r\n textAlign: \"center\",\r\n },\r\n footerRed: {\r\n backgroundColor: \"#990000\",\r\n fontSize: 16,\r\n padding: 14,\r\n color: \"#fff\",\r\n borderRadius: 4,\r\n textAlign: \"center\",\r\n },\r\n hidden: {\r\n display: \"none\",\r\n },\r\n textButton: {\r\n textTransform: \"none\",\r\n width: \"100%\",\r\n },\r\n box: {\r\n paddingLeft: 20,\r\n paddingRight: 20,\r\n backgroundColor: \"white\",\r\n },\r\n middle: {\r\n width: \"500px\",\r\n },\r\n};\r\n\r\nexport default quickPaymentStyle;\r\n","import classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport quickPaymentStyle from \"../../assets/jss/xrs/views/quickPaymentStyle\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport { useFormik } from \"formik\";\r\nimport { getSiteDetailsActions } from \"store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\n\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport FooterSection from \"../SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../SectionsPage/Sections/LinksSection.js\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport Iframe from \"react-iframe\";\r\nimport fnmoment from \"moment\";\r\nimport queryString from \"query-string\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport CheckBoxIcon from \"@material-ui/icons/CheckBox\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport React, { useContext } from \"react\";\r\nimport Context from \"../../utils/context\";\r\n\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogContentText from \"@material-ui/core/DialogContentText\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\nimport Fade from \"@material-ui/core/Fade\";\r\n\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { set } from \"date-fns\";\r\nimport { Hidden } from \"@material-ui/core\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nconst useStyles1 = makeStyles(quickPaymentStyle);\r\nexport default function QuickPayPaymentStatus(props) {\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const [page, setPage] = React.useState(1);\r\n const [ifamevisible, setIfamevisible] = React.useState(false);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [authcode, setAuthcode] = React.useState(\"\");\r\n const [message, setMessage] = React.useState(\"\");\r\n const [resultcode, setResultCode] = React.useState(\"\");\r\n const [ammount, setAmmount] = React.useState(\"\");\r\n const [passref, setPassref] = React.useState(\"\");\r\n const dispatch = useDispatch();\r\n const context = useContext(Context);\r\n const [paymentstatustext, setpaymentstatustext] = React.useState(\"\");\r\n\r\n const [vissibleSucc, setVissibleSucc] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n }, []);\r\n React.useEffect(() => {\r\n const parsed = queryString.parse(props.location.search);\r\n setAmmount(parsed.AMOUNT);\r\n setMessage(parsed.MESSAGE);\r\n setAuthcode(parsed.AUTHCODE);\r\n setPassref(parsed.PASSREF);\r\n setResultCode(parsed.RESULTCODE);\r\n\r\n if (parsed.RESULTCODE == \"00\") {\r\n setVissibleSucc(true);\r\n } else {\r\n setVissibleSucc(false);\r\n }\r\n\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setpaymentstatustext(response.paymentstatustext);\r\n\r\n var date = fnmoment(new Date()).add(-110, \"years\");\r\n var maxdate = fnmoment(new Date()).add(-16, \"years\");\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, [page]);\r\n\r\n const classes = useStyles();\r\n const classes1 = useStyles1();\r\n\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 {message}\r\n \r\n \r\n

\r\n Thank you for your payment of:\r\n

\r\n

\r\n \r\n

\r\n\r\n

\r\n Your Auth Code is:\r\n

\r\n

{authcode}

\r\n\r\n

\r\n Your account has been updated to reflect this\r\n transaction.\r\n

\r\n
\r\n \r\n \r\n \r\n {message}\r\n \r\n \r\n

\r\n Your payment of:\r\n

\r\n

\r\n {currency + \" \" + ammount}\r\n

\r\n\r\n

\r\n Your payment has not been taken!.\r\n

\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n {message}\r\n \r\n \r\n

\r\n Thank you for your payment of:\r\n

\r\n

\r\n \r\n

\r\n\r\n

\r\n Your Auth Code is:\r\n

\r\n

{authcode}

\r\n\r\n

\r\n Your account has been updated to reflect this\r\n transaction.\r\n

\r\n
\r\n \r\n \r\n \r\n {message}\r\n \r\n \r\n

\r\n Your payment of:\r\n

\r\n

\r\n {currency + \" \" + ammount}\r\n

\r\n\r\n

\r\n Your payment has not been taken!.\r\n

\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Did you know?\r\n \r\n \r\n {ReactHtmlParser(paymentstatustext)}\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","import Paper from \"@material-ui/core/Paper\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport DoneOutlineIcon from \"@material-ui/icons/DoneOutline\";\r\nimport clsx from \"clsx\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport queryString from \"query-string\";\r\nimport React, { useContext } from \"react\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"../../utils/context\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport BlueHeader from \"../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\n\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Hidden } from \"@material-ui/core\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: \"100%\",\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 60,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n cardNOBORDER: {\r\n border: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n },\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n}));\r\nexport default function PayNowPaymentStatus(props) {\r\n const dispatch = useDispatch();\r\n\r\n const [authcode, setAuthcode] = React.useState(\"\");\r\n const [message, setMessage] = React.useState(\"\");\r\n //const [resultcode, setResultCode] = React.useState(\"\");\r\n const [ammount, setAmmount] = React.useState(\"\");\r\n const [passref, setPassref] = React.useState(\"0000000000\");\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const [vissibleSucc, setVissibleSucc] = React.useState(false);\r\n const context = useContext(Context);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const paymentStatusFrom = useSelector(\r\n (state) => state.SiteReducer.paymentStatusFrom\r\n );\r\n const [paymentstatustext, setpaymentstatustext] = React.useState(\"\");\r\n\r\n const style = {\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n visible: {\r\n display: \"box\",\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n Title: {\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n blue: {\r\n backgroundColor: \"#0065a4\",\r\n borderRadius: 0,\r\n color: \"#ffffff\",\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 18,\r\n },\r\n green: {\r\n backgroundColor: \"#ffffff;\",\r\n borderRadius: 0,\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 19,\r\n paddingTop: 30,\r\n color: \"#0065a4\",\r\n },\r\n red: {\r\n backgroundColor: \"#ffffff;\",\r\n borderRadius: 0,\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 19,\r\n paddingTop: 30,\r\n color: \"#ff0000\",\r\n },\r\n blueBox: {\r\n paddingLeft: 50,\r\n paddingRight: 50,\r\n paddingBottom: 10,\r\n borderRadius: 4,\r\n },\r\n DiscountBlue: {\r\n color: \"#0065a4\",\r\n textAlign: \"center\",\r\n paddingTop: 10,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountGreen: {\r\n color: \"#4caf50\",\r\n textAlign: \"center\",\r\n padding: 25,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 16,\r\n backgroundColor: \"#e6f2e6\",\r\n Border: \"none\",\r\n borderRadius: 4,\r\n },\r\n GreenTick: {\r\n color: \"#4caf50\",\r\n },\r\n RedTick: {\r\n color: \"#990000\",\r\n },\r\n\r\n DiscountItemRed: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 16,\r\n backgroundColor: \"#ffe5e5\",\r\n Border: \"none\",\r\n borderRadius: 4,\r\n },\r\n AmmountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 40,\r\n backgroundColor: \"#e6f2e6\",\r\n Border: \"none\",\r\n Radiusradius: 4,\r\n },\r\n AmmountItemRed: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 40,\r\n backgroundColor: \"#ffe5e5\",\r\n Border: \"none\",\r\n Radiusradius: 4,\r\n },\r\n footer: {\r\n backgroundColor: \"#4caf50\",\r\n fontSize: 16,\r\n padding: 14,\r\n color: \"#fff\",\r\n borderRadius: 4,\r\n textAlign: \"center\",\r\n },\r\n footerRed: {\r\n backgroundColor: \"#990000\",\r\n fontSize: 16,\r\n padding: 14,\r\n color: \"#fff\",\r\n borderRadius: 4,\r\n textAlign: \"center\",\r\n },\r\n hidden: {\r\n display: \"none\",\r\n },\r\n textButton: {\r\n textTransform: \"none\",\r\n width: \"100%\",\r\n },\r\n box: {\r\n paddingLeft: 20,\r\n paddingRight: 20,\r\n backgroundColor: \"white\",\r\n },\r\n middle: {\r\n width: \"500px\",\r\n },\r\n };\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n }, []);\r\n React.useEffect(() => {\r\n const parsed = queryString.parse(props.location.search);\r\n\r\n setAmmount(parsed.AMOUNT);\r\n setMessage(parsed.MESSAGE);\r\n\r\n setAuthcode(parsed.AUTHCODE);\r\n // setPassref(parsed.PASSREF);\r\n // setResultCode(parsed.RESULTCODE);\r\n if (parsed.RESULTCODE == \"00\") {\r\n setVissibleSucc(true);\r\n } else {\r\n setVissibleSucc(false);\r\n }\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then(\r\n (data) => {\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n if (data.customer.cardastdigits == null) {\r\n setPassref(\"000000\");\r\n } else {\r\n setPassref(data.customer.cardastdigits);\r\n }\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(data.activeAccounts[0].viewacccounttext)\r\n );\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n data.activeAccounts.map((account, index) => {\r\n if (stateSelectedAccount.recno == account.recno) {\r\n dispatch(ACTIONS.set_selectedAccount(account));\r\n }\r\n });\r\n },\r\n [0]\r\n )\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", error, context);\r\n }\r\n });\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n setpaymentstatustext(response.paymentstatustext);\r\n });\r\n }, []);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const useStyles1 = makeStyles(style);\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const classes1 = useStyles1();\r\n\r\n const [termsApiText, setTermsApiText] = React.useState(\"\");\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\n \r\n SUCCESS{\" \"}\r\n \r\n \r\n \r\n

\r\n Thank you for your payment of:\r\n

\r\n

\r\n \r\n

\r\n

Payment method:

\r\n\r\n

\r\n Card ending in **\r\n {passref != null ? passref.slice(-2) : \"\"}\r\n

\r\n\r\n

\r\n Your Auth Code is:\r\n

\r\n

{authcode}

\r\n\r\n

\r\n Your account has been updated to reflect this\r\n transaction.\r\n

\r\n
\r\n \r\n \r\n \r\n {\" \"}\r\n {message}\r\n \r\n \r\n

\r\n Your payment of:\r\n

\r\n

\r\n \r\n

\r\n\r\n

\r\n Your payment has not been taken!.\r\n

\r\n
\r\n \r\n
\r\n \r\n {paymentStatusFrom ? (\r\n \r\n \r\n Did you know?\r\n \r\n \r\n

\r\n {ReactHtmlParser(paymentstatustext)}\r\n

\r\n
\r\n ``\r\n \r\n ) : null}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport history from \"../../utils/history\";\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { useFormik } from \"formik\";\r\n\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport Iframe from \"react-iframe\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport clsx from \"clsx\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport ReactHtmlParser, {\r\n processNodes,\r\n convertNodeToElement,\r\n htmlparser2,\r\n} from \"react-html-parser\";\r\n\r\nimport PayNow from \"../SectionsPage/Sections/PayNowSection.js\";\r\n\r\nimport html2canvas from \"html2canvas\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport BlueHeader from \"../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { el } from \"date-fns/locale\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function PayNowPage(props) {\r\n const classes2 = useStyles2();\r\n const context = useContext(Context);\r\n const [page, setPage] = React.useState(1);\r\n\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","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst viewOfferSectionsStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n visible: {\r\n display: \"box\",\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: primaryColor[20],\r\n fontWeight: 400,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n blue: {\r\n backgroundColor: \"#0065a4\",\r\n borderRadius: 0,\r\n color: \"#ffffff\",\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 18,\r\n },\r\n green: {\r\n backgroundColor: \"#4caf50;\",\r\n borderRadius: 0,\r\n color: \"#ffffff\",\r\n padding: 10,\r\n textAlign: \"center\",\r\n fontWeight: 500,\r\n fontSize: 18,\r\n },\r\n blueBox: {\r\n borderRadius: 0,\r\n margin: 10,\r\n },\r\n DiscountBlue: {\r\n color: \"#0065a4\",\r\n textAlign: \"center\",\r\n padding: 25,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountGreen: {\r\n color: \"#4caf50\",\r\n textAlign: \"center\",\r\n padding: 25,\r\n fontWeight: 500,\r\n fontSize: 16,\r\n },\r\n DiscountItem: {\r\n textAlign: \"center\",\r\n padding: 14,\r\n fontWeight: 500,\r\n margin: 1,\r\n fontSize: 14,\r\n backgroundColor: \"#f2f7fa\",\r\n Border: \"none\",\r\n },\r\n textButton: {\r\n textTransform: \"none\",\r\n width: \"100%\",\r\n },\r\n box: {\r\n paddingLeft: 20,\r\n paddingRight: 20,\r\n backgroundColor: \"white\",\r\n },\r\n};\r\n\r\nexport default viewOfferSectionsStyle;\r\n","import { Collapse } from \"@material-ui/core\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport viewOfferSectionsStyle from \"assets/jss/xrs/views/sectionsSections/viewOfferSectionsStyle\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport React, { useContext } from \"react\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Context from \"../../../utils/context\";\r\nimport Paynow from \"../../SectionsPage/Sections/PayNowSection.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst useStyles = makeStyles(viewOfferSectionsStyle);\r\nexport default function ViewOfferSection(props) {\r\n const viewOfferText = useSelector((state) => state.HtmlReducer.viewOfferText);\r\n\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [site, setSite] = React.useState(\"\");\r\n const [page, setPage] = React.useState(1);\r\n const [termsVisible, setTermsVisible] = React.useState(false);\r\n const [width, setWidth] = React.useState(0);\r\n const [message, setMessage] = React.useState(\"\");\r\n const [showDate, setShowDate] = React.useState(true);\r\n const [oneMonth, setoneMonth] = React.useState(false);\r\n\r\n const [paymentDate, setPaymentDate] = React.useState(\"\");\r\n const [screenstate, setScreenstate] = React.useState({ screenshot: \"\" });\r\n const [showQuickPay, setShowQuickPay] = React.useState(true);\r\n const [ifamevisible, setIfamevisible] = React.useState(false);\r\n const [value, setValue] = React.useState(\"card\");\r\n const stateOffer = useSelector((state) => state.OfferReducer.offer);\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n\r\n const [refValues, setrefValues] = React.useState([]);\r\n\r\n const handleChange = (event) => {\r\n setValue(event.target.value);\r\n };\r\n\r\n const values = {\r\n OFFERID: 0,\r\n DOWNPAYMENT: 0,\r\n REMAINGBAL: 1,\r\n OFFERACCEPTEDDECLINED: \"A\",\r\n OFFERDECLINEDREASON: \"OK\",\r\n STARTDATE: \"\",\r\n FREQUENCY: \"MONTHLY\",\r\n TERM: 1,\r\n AMOUNT: 0,\r\n FINALDATE: \"\",\r\n FINALAMOUNT: 0,\r\n APPLYDISCOUNT: \"Y\",\r\n DISCOUNTOPTIONNUMBER: \"0\",\r\n SCREENSHOT: \"\",\r\n PAYERREF: \"\",\r\n CARDREF: \"\",\r\n MAXPAYDATE: \"\",\r\n };\r\n\r\n const setValues = (termsChosen) => {\r\n values.MAXPAYDATE = stateOffer.WOOFFERMAXFIRSTPAYDATE;\r\n if (termsChosen == 1) {\r\n values.REMAINGBAL =\r\n stateOffer.WOOFFER1MONTHS === 1 ? 0 : stateOffer.WOOFFER1TOTALPAYABLE;\r\n values.OFFERID = stateOffer.WOOFFERID;\r\n values.DOWNPAYMENT = stateOffer.WOOFFER1MINPAY;\r\n //values.FREQUENCY =stateOffer.WOOFFER1MONTHS;\r\n values.AMOUNT = stateOffer.WOOFFER1AMOUNT;\r\n values.FINALDATE = \"\";\r\n values.FINALAMOUNT = 0;\r\n values.DISCOUNTOPTIONNUMBER = 1;\r\n values.TERM = stateOffer.WOOFFER1MONTHS;\r\n if (stateOffer.WOOFFER1MONTHS === 1) {\r\n setoneMonth(true);\r\n }\r\n } else if (termsChosen == 2) {\r\n values.REMAINGBAL =\r\n stateOffer.WOOFFER2MONTHS === 1 ? 0 : stateOffer.WOOFFER2TOTALPAYABLE;\r\n values.TERM = stateOffer.WOOFFER2MONTHS;\r\n\r\n values.OFFERID = stateOffer.WOOFFERID;\r\n values.DOWNPAYMENT = stateOffer.WOOFFER2MINPAY;\r\n // values.FREQUENCY =stateOffer.WOOFFER2MONTHS;\r\n values.AMOUNT =\r\n stateOffer.WOOFFER2MONTHS === 1 ? 0 : stateOffer.WOOFFER2AMOUNT;\r\n values.FINALDATE = \"\";\r\n values.FINALAMOUNT = 0;\r\n values.DISCOUNTOPTIONNUMBER = 2;\r\n if (stateOffer.WOOFFER2MONTHS === 1) {\r\n setoneMonth(true);\r\n }\r\n } else if (termsChosen == 3) {\r\n values.REMAINGBAL =\r\n stateOffer.WOOFFER3MONTHS === 1 ? 0 : stateOffer.WOOFFER3TOTALPAYABLE;\r\n values.TERM = stateOffer.WOOFFER3MONTHS;\r\n\r\n values.OFFERID = stateOffer.WOOFFERID;\r\n values.DOWNPAYMENT =\r\n stateOffer.WOOFFER3MONTHS === 1\r\n ? stateOffer.WOOFFER3MINPAY\r\n : stateOffer.WOOFFER3AMOUNT; // values.FREQUENCY =stateOffer.WOOFFER3MONTHS;\r\n values.AMOUNT =\r\n stateOffer.WOOFFER3MONTHS === 1 ? 0 : stateOffer.WOOFFER3AMOUNT;\r\n values.FINALDATE = \"\";\r\n values.FINALAMOUNT = 0;\r\n values.DISCOUNTOPTIONNUMBER = 3;\r\n if (stateOffer.WOOFFER3MONTHS === 1) {\r\n setoneMonth(true);\r\n }\r\n }\r\n };\r\n\r\n function handleClickOffer1(e) {\r\n setValues(1);\r\n setrefValues(values);\r\n if (stateOffer.WOOFFER1MONTHS === 1) {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER1MINPAY).toFixed(\"2\") +\r\n \" from my card now \";\r\n setMessage(text);\r\n setShowDate(false);\r\n setTermsVisible(true);\r\n } else {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER1MINPAY).toFixed(\"2\") +\r\n \" from my card now, followed by \" +\r\n stateOffer.WOOFFER1MONTHS +\r\n \" recurring monthly payments of \" +\r\n currency +\r\n stateOffer.WOOFFER1AMOUNT +\r\n \" and starting on \";\r\n setMessage(text);\r\n setTermsVisible(true);\r\n }\r\n }\r\n function handleClickOffer2(e) {\r\n setValues(2);\r\n setrefValues(values);\r\n\r\n if (stateOffer.WOOFFER2MONTHS === 1) {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER2MINPAY).toFixed(\"2\") +\r\n \" from my card now \";\r\n setMessage(text);\r\n setShowDate(false);\r\n\r\n setTermsVisible(true);\r\n } else {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER2MINPAY).toFixed(\"2\") +\r\n \" from my card now, followed by \" +\r\n stateOffer.WOOFFER2MONTHS +\r\n \" recurring monthly payments of \" +\r\n currency +\r\n stateOffer.WOOFFER2AMOUNT +\r\n \" and starting on \";\r\n setMessage(text);\r\n setTermsVisible(true);\r\n }\r\n }\r\n function handleClickOffer3(e) {\r\n setValues(3);\r\n setrefValues(values);\r\n\r\n if (stateOffer.WOOFFER3MONTHS === 1) {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER3MINPAY).toFixed(\"2\") +\r\n \" from my card now \";\r\n setMessage(text);\r\n setShowDate(false);\r\n\r\n setTermsVisible(true);\r\n } else {\r\n var text =\r\n \"I agree to pay \" +\r\n site.companyname +\r\n \" \" +\r\n currency +\r\n Number.parseFloat(stateOffer.WOOFFER3MINPAY).toFixed(\"2\") +\r\n \" from my card now, followed by \" +\r\n stateOffer.WOOFFER3MONTHS +\r\n \" recurring monthly payments of \" +\r\n currency +\r\n stateOffer.WOOFFER3AMOUNT +\r\n \" and starting on \";\r\n setMessage(text);\r\n setTermsVisible(true);\r\n }\r\n }\r\n function handleBackToOffers(e) {\r\n setTermsVisible(false);\r\n }\r\n const handlePayDateChange = (e) => {\r\n setPaymentDate(e.target.value);\r\n };\r\n\r\n React.useEffect(() => {\r\n setSite(stateSite);\r\n }, []);\r\n return (\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {viewOfferText}\r\n \r\n {stateOffer.WOOFFER1MONTHS === 0 ? null : (\r\n \r\n \r\n \r\n {stateOffer.WOOFFER1TEXT}\r\n \r\n \r\n

\r\n {stateOffer.WOOFFER1DISCOUNTPERCENT + \" % Discount\"}\r\n

\r\n

\r\n Total To Pay:\r\n \r\n

\r\n\r\n

\r\n Discount Value:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER1MONTHS === 1\r\n ? \"One payment\"\r\n : \"Term: \" + stateOffer.WOOFFER1MONTHS + \" Months\"}\r\n

\r\n\r\n

\r\n Down Payment:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER1MONTHS === 1\r\n ? \"Recurring Amount:\"\r\n : \"Payment Amount:\"}\r\n \r\n

\r\n
\r\n \r\n \r\n Proceed!\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n )}\r\n {stateOffer.WOOFFER2MONTHS === 0 ? null : (\r\n \r\n \r\n \r\n {stateOffer.WOOFFER2TEXT}\r\n \r\n \r\n

\r\n {stateOffer.WOOFFER2DISCOUNTPERCENT + \" % Discount\"}\r\n

\r\n

\r\n Total To Pay:\r\n \r\n

\r\n\r\n

\r\n Discount Value:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER2MONTHS === 1\r\n ? \"One payment\"\r\n : \"Term: \" + stateOffer.WOOFFER2MONTHS + \" Months\"}\r\n

\r\n\r\n

\r\n Down Payment:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER2MONTHS === 1\r\n ? \"Recurring Amount:\"\r\n : \"Payment Amount:\"}\r\n \r\n

\r\n
\r\n \r\n \r\n Proceed!\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n )}\r\n {stateOffer.WOOFFER3MONTHS === 0 ? null : (\r\n \r\n \r\n \r\n {stateOffer.WOOFFER3TEXT}\r\n \r\n \r\n

\r\n {stateOffer.WOOFFER3DISCOUNTPERCENT + \" % Discount\"}\r\n

\r\n

\r\n Total To Pay:\r\n \r\n

\r\n\r\n

\r\n Discount Value:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER3MONTHS === 1\r\n ? \"One payment\"\r\n : \"Term: \" + stateOffer.WOOFFER3MONTHS + \" Months\"}\r\n

\r\n\r\n

\r\n Down Payment:\r\n \r\n

\r\n\r\n

\r\n {stateOffer.WOOFFER3MONTHS === 1\r\n ? \"Recurring Amount:\"\r\n : \"Payment Amount:\"}{\" \"}\r\n \r\n

\r\n
\r\n \r\n \r\n Proceed!\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 {termsVisible ? (\r\n \r\n ) : null}\r\n \r\n
\r\n );\r\n}\r\n","import { makeStyles } from \"@material-ui/core/styles\";\r\nimport clsx from \"clsx\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport React, { useContext } from \"react\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport Context from \"../../utils/context\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport ViewOfferSection from \"../SectionsPage/Sections/ViewOfferSection.js\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\nexport default function ViewOfferPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const dispatch = useDispatch();\r\n\r\n const context = useContext(Context);\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n const stateSelectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n React.useEffect(() => {\r\n var account;\r\n var newDate = new Date();\r\n account = JSON.stringify({\r\n ITEMCODE: stateSelectedAccount.itemcode,\r\n RECNO: stateSelectedAccount.recno,\r\n STARTDATE: newDate,\r\n ENDDATE: newDate,\r\n });\r\n\r\n fetch(URLS.GetReturnAPIUrl, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: account,\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Return API\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n\r\n .then((data) => {\r\n dispatch(ACTIONS.set_Offer(data));\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Return API\", error, context);\r\n }\r\n });\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(data.activeAccounts[0].createbudgettext)\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(data.activeAccounts[0].viewacccounttext)\r\n );\r\n\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Welcome Details\", error, context);\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 \r\n \r\n \r\n
\r\n );\r\n}\r\n","import {\r\n primaryColor,\r\n secondaryColor,\r\n warningColor,\r\n dangerColor,\r\n successColor,\r\n infoColor,\r\n roseColor,\r\n grayColor,\r\n} from \"assets/jss/xrs.js\";\r\nimport { whiteColor } from \"assets/jss/xrs\";\r\n\r\nconst accordionStyle = (theme) => ({\r\n root: {\r\n flexGrow: 1,\r\n marginBottom: \"20px\",\r\n },\r\n expansionPanel: {\r\n boxShadow: \"none\",\r\n \"&:before\": {\r\n display: \"none !important\",\r\n },\r\n },\r\n expansionPanelExpanded: {\r\n margin: \"0 !important\",\r\n },\r\n expansionPanelSummary: {\r\n minHeight: \"auto !important\",\r\n backgroundColor: whiteColor,\r\n borderBottom: \"1px solid \" + grayColor[6],\r\n padding: \"15px 10px 5px 20px\",\r\n borderTopLeftRadius: \"3px\",\r\n borderTopRightRadius: \"3px\",\r\n color: primaryColor[1],\r\n },\r\n primaryExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: primaryColor[1],\r\n },\r\n },\r\n secondaryExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: primaryColor[1],\r\n },\r\n },\r\n warningExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: warningColor[0],\r\n },\r\n },\r\n dangerExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: dangerColor[0],\r\n },\r\n },\r\n successExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: successColor[0],\r\n },\r\n },\r\n infoExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: infoColor[0],\r\n },\r\n },\r\n roseExpansionPanelSummary: {\r\n \"&:hover\": {\r\n color: roseColor[0],\r\n },\r\n },\r\n expansionPanelSummaryExpaned: {\r\n \"& $expansionPanelSummaryExpandIcon\": {\r\n [theme.breakpoints.up(\"md\")]: {\r\n top: \"auto !important\",\r\n },\r\n transform: \"rotate(180deg)\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n top: \"10px !important\",\r\n },\r\n // some jss/css to make the cards look a bit better on Internet Explorer\r\n \"@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)\": {\r\n display: \"inline-block !important\",\r\n top: \"10px !important\",\r\n },\r\n },\r\n },\r\n primaryExpansionPanelSummaryExpaned: {\r\n color: primaryColor[21],\r\n },\r\n secondaryExpansionPanelSummaryExpaned: {\r\n color: secondaryColor[0],\r\n },\r\n warningExpansionPanelSummaryExpaned: {\r\n color: warningColor[0],\r\n },\r\n dangerExpansionPanelSummaryExpaned: {\r\n color: dangerColor[0],\r\n },\r\n successExpansionPanelSummaryExpaned: {\r\n color: successColor[0],\r\n },\r\n infoExpansionPanelSummaryExpaned: {\r\n color: infoColor[0],\r\n },\r\n roseExpansionPanelSummaryExpaned: {\r\n color: roseColor[0],\r\n },\r\n expansionPanelSummaryContent: {\r\n margin: \"0 !important\",\r\n },\r\n expansionPanelSummaryExpandIcon: {\r\n [theme.breakpoints.up(\"md\")]: {\r\n top: \"auto !important\",\r\n },\r\n transform: \"rotate(0deg)\",\r\n color: \"inherit\",\r\n right: \"10px\",\r\n position: \"absolute\",\r\n [theme.breakpoints.down(\"sm\")]: {\r\n top: \"10px !important\",\r\n },\r\n // some jss/css to make the cards look a bit better on Internet Explorer\r\n \"@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)\": {\r\n display: \"inline-block !important\",\r\n },\r\n },\r\n expansionPanelSummaryExpandIconExpanded: {},\r\n title: {\r\n width: \"90%\",\r\n fontSize: \"15px\",\r\n fontWeight: \"bolder\",\r\n marginTop: \"0\",\r\n marginBottom: \"0\",\r\n color: \"inherit\",\r\n },\r\n expansionPanelDetails: {\r\n display: \"block\",\r\n padding: \"15px 0px 5px 10px\",\r\n fontSize: \".875rem\",\r\n },\r\n});\r\n\r\nexport default accordionStyle;\r\n","import React from \"react\";\r\n// nodejs library to set properties for components\r\nimport PropTypes from \"prop-types\";\r\n// @material-ui/core components\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport ExpansionPanel from \"@material-ui/core/ExpansionPanel\";\r\nimport ExpansionPanelSummary from \"@material-ui/core/ExpansionPanelSummary\";\r\nimport ExpansionPanelDetails from \"@material-ui/core/ExpansionPanelDetails\";\r\n\r\n// @material-ui/icons\r\nimport ExpandMore from \"@material-ui/icons/ExpandMore\";\r\n\r\nimport styles from \"assets/jss/xrs/components/accordionStyle.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\n\r\nexport default function Accordion(props) {\r\n const [active, setActive] = React.useState(\r\n props.active.length === undefined ? [props.active] : props.active\r\n );\r\n const [single] = React.useState(\r\n props.active.length === undefined ? true : false\r\n );\r\n\r\n React.useEffect(() => {\r\n setTimeout(() => {\r\n setActive([0]);\r\n }, 500);\r\n }, []);\r\n\r\n const handleChange = (panel) => () => {\r\n let newArray;\r\n if (single) {\r\n if (active[0] === panel) {\r\n newArray = [];\r\n } else {\r\n newArray = [panel];\r\n }\r\n } else {\r\n if (active.indexOf(panel) === -1) {\r\n newArray = [...active, panel];\r\n } else {\r\n newArray = [...active];\r\n newArray.splice(active.indexOf(panel), 1);\r\n }\r\n }\r\n setActive(newArray);\r\n };\r\n const { collapses, activeColor } = props;\r\n const classes = useStyles();\r\n return (\r\n
\r\n {collapses.map((prop, key) => {\r\n return (\r\n \r\n }\r\n classes={{\r\n root: `${classes.expansionPanelSummary} ${\r\n classes[activeColor + \"ExpansionPanelSummary\"]\r\n }`,\r\n expanded: `${classes.expansionPanelSummaryExpaned} ${\r\n classes[activeColor + \"ExpansionPanelSummaryExpaned\"]\r\n }`,\r\n content: classes.expansionPanelSummaryContent,\r\n expandIcon: classes.expansionPanelSummaryExpandIcon,\r\n }}\r\n >\r\n

{prop.title}

\r\n \r\n \r\n {prop.content}\r\n \r\n \r\n );\r\n })}\r\n
\r\n );\r\n}\r\n\r\nAccordion.defaultProps = {\r\n active: -1,\r\n activeColor: \"primary\",\r\n};\r\n\r\nAccordion.propTypes = {\r\n // index of the default active collapse\r\n active: PropTypes.oneOfType([\r\n PropTypes.number,\r\n PropTypes.arrayOf(PropTypes.number),\r\n ]),\r\n collapses: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n title: PropTypes.string,\r\n content: PropTypes.node,\r\n })\r\n ).isRequired,\r\n activeColor: PropTypes.oneOf([\r\n \"primary\",\r\n \"secondary\",\r\n \"warning\",\r\n \"danger\",\r\n \"success\",\r\n \"info\",\r\n \"rose\",\r\n ]),\r\n};\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport FooterSection from \"../SectionsPage/Sections/FooterSection.js\";\r\nimport HeaderSection from \"../SectionsPage/Sections/HeaderSection.js\";\r\nimport LinkSection from \"../SectionsPage/Sections/LinksSection.js\";\r\nimport Accordion from \"components/Accordion/Accordion.js\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport Context from \"../../utils/context\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport { getSiteDetailsActions } from \"../../store/redux/redux-actions/redux_actions\";\r\nimport * as ACTIONS from \"../../store/actions/actions\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\n\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\n\r\nexport default function FaqPage() {\r\n const context = useContext(Context);\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n });\r\n const dispatch = useDispatch();\r\n const [page, setPage] = React.useState(1);\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n\r\n const createData = (title, content) => {\r\n return { title, content };\r\n };\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [site, setSite] = React.useState(\"\");\r\n\r\n const ReadContext = () => {\r\n const dataRows = [];\r\n var data = stateSite.faqs;\r\n if (data != \"NoAccounts\") {\r\n var i = 1;\r\n data.forEach((item) => {\r\n dataRows.push(\r\n createData(\r\n ReactHtmlParser(item.header),\r\n ReactHtmlParser(item.details)\r\n )\r\n );\r\n i++;\r\n setRowdata(dataRows);\r\n });\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n\r\n dispatch(ACTIONS.set_Site(response));\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n\r\n setTimeout(() => {\r\n setSite(stateSite);\r\n ReadContext();\r\n }, 100);\r\n })\r\n\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, [page]);\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n

Frequently Asked Questions

\r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n
\r\n );\r\n}\r\n","import { isMobile } from \"react-device-detect\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst budgetPageStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default budgetPageStyle;\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst budgetSectionStyle = {\r\n ...imagesStyles,\r\n showSummary: {\r\n display: \"visible\",\r\n },\r\n hideSummary: {\r\n display: \"none\",\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n container: {\r\n padding: 40,\r\n },\r\n button: {\r\n textAlign: \"center\",\r\n },\r\n linkButton: {\r\n paddingLeft: \"5px\",\r\n paddingRight: \"5px\",\r\n\r\n display: \"inline\",\r\n width: 15,\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n Summary: {\r\n color: primaryColor[20],\r\n margin: 0,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n margin: 0,\r\n },\r\n TitleTop: {\r\n fontWeight: 500,\r\n margin: 0,\r\n textAlign: \"right\",\r\n },\r\n SubTitle: {\r\n fontWeight: 400,\r\n paddingTop: 0,\r\n margin: 0,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n Money: {\r\n textAlign: \"right\",\r\n },\r\n MoneyGreen: {\r\n textAlign: \"right\",\r\n color: \"#4BB543\",\r\n },\r\n Submited: {\r\n textAlign: \"left\",\r\n color: \"#4BB543\",\r\n fontSize: \"20px\",\r\n },\r\n MoneyRed: {\r\n textAlign: \"right\",\r\n color: \"#ff0033\",\r\n },\r\n FinaliseMoney: {\r\n textAlign: \"right\",\r\n },\r\n Line: {\r\n textAlign: \"right\",\r\n marginBottom: 5,\r\n marginTop: 5,\r\n },\r\n};\r\n\r\nexport default budgetSectionStyle;\r\n","import { primaryColor } from \"assets/jss/xrs.js\";\r\nconst incomeBudgetFieldsStyle = (theme) => ({\r\n controlWhite: {\r\n margin: 0,\r\n height: 40,\r\n borderRadius: 2,\r\n borderStyle: \"solid\",\r\n paddingLeft: 10,\r\n backgroundColor: \"#f5f9ff\",\r\n color: \"black\",\r\n borderColor: primaryColor[0],\r\n border: 1,\r\n },\r\n root: {\r\n width: \"100%\",\r\n margin: 0,\r\n padding: 0,\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 30,\r\n },\r\n whiteInfo: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n paddingTop: 10,\r\n },\r\n whiteInfoMiddle: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n paddingLeft: 100,\r\n paddingRight: 100,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n});\r\n\r\nexport default incomeBudgetFieldsStyle;\r\n","import MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport incomeBudgetFieldsStyle from \"../../assets/jss/xrs/views/incomeBudgetFieldsStyle\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport React from \"react\";\r\nimport TextField from \"../../components/CustomInput/CustomInput.js\";\r\nimport AttachFileIcon from \"@material-ui/icons/AttachFile\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport DocumentSection from \"../SectionsPage/Sections/DocumentSection.js\";\r\nimport PhotoCameraIcon from \"@material-ui/icons/PhotoCamera\";\r\nimport VisibilityIcon from \"@material-ui/icons/Visibility\";\r\nimport DeleteIcon from \"@material-ui/icons/Delete\";\r\n\r\nimport {\r\n cameraActions,\r\n documentsActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { element } from \"prop-types\";\r\nlet disabledCamera = !isMobile;\r\n\r\nconst useStyles = makeStyles(incomeBudgetFieldsStyle);\r\nexport default function IncomeBudgetFields(props) {\r\n const classes = useStyles();\r\n const [selected, setSelected] = React.useState(props.selectedvalue);\r\n const [value, setValue] = React.useState(props.value);\r\n // const openDocumet = useSelector((state) => state.DocumentsReducer.open);\r\n const [openDocumet, setOpenDocumet] = React.useState(false);\r\n\r\n // const uploadedExpenses = useSelector(\r\n // (state) => state.DocumentsReducer.uploadedExpenses\r\n // );\r\n // const uploadedIncomes = useSelector(\r\n // (state) => state.DocumentsReducer.uploadedIncomes\r\n // );\r\n const documents = useSelector((state) => state.CameraReducer.confirmedImages);\r\n const [uploadedDocumet, setUploadedDocumet] = React.useState(\"\");\r\n const [cameraExist, setcameraExist] = React.useState(false);\r\n const dispatch = useDispatch();\r\n const uploadimagestobudget = useSelector(\r\n (state) => state.GetSiteDetailsReducer.uploadimagestobudget\r\n );\r\n React.useEffect(() => {\r\n if (uploadimagestobudget && isMobile) {\r\n navigator.mediaDevices.getUserMedia({ video: true });\r\n navigator.mediaDevices.enumerateDevices().then((devices) => {\r\n var amount = 0;\r\n devices.map((item) => {\r\n if (item.kind === \"videoinput\") {\r\n amount++;\r\n }\r\n });\r\n if (amount > 0) {\r\n setcameraExist(false);\r\n } else {\r\n setcameraExist(true);\r\n }\r\n });\r\n }\r\n }, []);\r\n React.useEffect(() => {\r\n if (documents.length > 0) {\r\n if (props.incomeId) {\r\n let exists = documents.find(\r\n (element) =>\r\n element.from == props.from && element.itemId == props.incomeId\r\n );\r\n\r\n if (exists) {\r\n setUploadedDocumet(exists);\r\n // setOpenDocumet(!openDocumet);\r\n } else {\r\n setUploadedDocumet(\"\");\r\n }\r\n }\r\n if (props.expenseId) {\r\n let exists = documents.find(\r\n (element) =>\r\n element.from == props.from && element.itemId == props.expenseId\r\n );\r\n\r\n if (exists) {\r\n setUploadedDocumet(exists);\r\n // setOpenDocumet(!openDocumet);\r\n } else {\r\n setUploadedDocumet(\"\");\r\n }\r\n }\r\n } else {\r\n setUploadedDocumet(\"\");\r\n }\r\n }, [documents]);\r\n\r\n const handleEvent = (event) => {\r\n if (event.target.value < 0) {\r\n setValue(0);\r\n } else {\r\n setValue(event.target.value);\r\n }\r\n props.onhandleChange(event);\r\n };\r\n const selectedhandleEvent = (event) => {\r\n setSelected(event.target.value);\r\n props.handleSelectedChange(event);\r\n };\r\n const onClick = () => {\r\n setOpenDocumet(!openDocumet);\r\n };\r\n var elem = document.documentElement;\r\n\r\n function openFullscreen() {\r\n if (elem.requestFullscreen) {\r\n elem.requestFullscreen();\r\n } else if (elem.webkitRequestFullscreen) {\r\n /* Safari */\r\n elem.webkitRequestFullscreen();\r\n } else if (elem.msRequestFullscreen) {\r\n /* IE11 */\r\n elem.msRequestFullscreen();\r\n }\r\n }\r\n const onOpenCamera = () => {\r\n openFullscreen();\r\n\r\n dispatch(\r\n cameraActions.openCamera({\r\n from: props.from,\r\n name: props.name,\r\n itemId:\r\n props.expenseId !== undefined ? props.expenseId : props.incomeId,\r\n })\r\n );\r\n };\r\n const onViewDocument = () => {\r\n let documentToShow;\r\n let pdf;\r\n if (uploadedDocumet.name === undefined) {\r\n pdf = true;\r\n documentToShow = uploadedDocumet.document.preview;\r\n } else {\r\n pdf = false;\r\n\r\n documentToShow = uploadedDocumet.preview;\r\n }\r\n if (pdf && isMobile) {\r\n window.open(documentToShow, \"_blank\");\r\n } else {\r\n dispatch(documentsActions.viewDocumet(uploadedDocumet));\r\n openFullscreen();\r\n }\r\n };\r\n const onDeleteDocument = () => {\r\n dispatch(cameraActions.deleteDocument(uploadedDocumet));\r\n setUploadedDocumet(\"\");\r\n };\r\n return (\r\n
\r\n \r\n \r\n \r\n

{props.name}

\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n {isMobile ? (\r\n \r\n ) : null}\r\n {isMobile ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : null}\r\n \r\n \r\n \r\n \r\n \r\n {!isMobile ? (\r\n \r\n ) : null}\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n

{props.name}

\r\n
\r\n\r\n \r\n {\r\n handleEvent(e);\r\n },\r\n }}\r\n formControlProps={{\r\n fullWidth: true,\r\n }}\r\n />\r\n \r\n \r\n {\r\n selectedhandleEvent(e);\r\n }}\r\n value={selected}\r\n fullWidth\r\n id=\"demo-customized-select\"\r\n >\r\n Monthly\r\n Weekly\r\n \r\n \r\n \r\n {props.canAttachFile && uploadedDocumet == \"\" ? (\r\n \r\n \r\n \r\n ) : uploadedDocumet != \"\" ? (\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\n \r\n \r\n \r\n ) : null}\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles, withStyles } from \"@material-ui/core/styles\";\r\nimport budgetSectionStyle from \"assets/jss/xrs/views/sectionsSections/budgetSectionStyle\";\r\nimport Context from \"../../../utils/context\";\r\nimport { primaryColor } from \"assets/jss/xrs\";\r\nimport { UploadDocumentsURL } from \"../../../assets/jss/xrs\";\r\nimport \"./app.scss\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n htmlActions,\r\n cameraActions,\r\n} from \"../../../store/redux/redux-actions/redux_actions\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport IncomeBudgetFields from \"../../BudgetPage/IncomeBudgetFields.js\";\r\nimport groupArray from \"group-array\";\r\nimport NavigateNext from \"@material-ui/icons/NavigateNext\";\r\nimport browserHistory from \"../../../utils/history\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport history from \"../../../utils/history\";\r\n\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport { element } from \"prop-types\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport AlertDialog from \"./Dialog.js\";\r\nimport Icon from \"@material-ui/core/Icon\";\r\nimport Slider from \"react-slick\";\r\nimport { Hidden } from \"@material-ui/core\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\n\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nconst SliderSettings = {\r\n infinite: false,\r\n arrows: false,\r\n centerMode: false,\r\n touchMove: false,\r\n\r\n variableWidth: false,\r\n dots: false,\r\n initialSlide: 0,\r\n slidesToShow: 5,\r\n responsive: [\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n dots: false,\r\n },\r\n },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 1,\r\n initialSlide: 1,\r\n },\r\n },\r\n {\r\n breakpoint: 480,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n ],\r\n};\r\nconst useStyles = makeStyles(budgetSectionStyle);\r\nexport default function BudgetSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const [step, setStep] = React.useState(0);\r\n\r\n const [topNav, setTopNav] = React.useState(null);\r\n const [showSuccess, setshowSuccess] = React.useState(false);\r\n\r\n const dispatch = useDispatch();\r\n const documents = useSelector((state) => state.CameraReducer.confirmedImages);\r\n\r\n const [incomesToDisplay, setincomesToDisplay] = React.useState([]);\r\n const [expensesToDisplay, setexpensesToDisplay] = React.useState([]);\r\n\r\n const [incomeMonthlyTotal, setIncomeMonthlyTotal] = React.useState(0.0);\r\n const [incomeYearlyTotal, setIncomeYearlyTotal] = React.useState(0.0);\r\n const [incomeWeeklyTotal, setIncomeWeeklyTotal] = React.useState(0.0);\r\n\r\n const [expenceMonthlyTotal, setExpenceMonthlyTotal] = React.useState(0.0);\r\n const [expenceYearlyTotal, setExpenceYearlyTotal] = React.useState(0.0);\r\n const [expenceWeeklyTotal, setExpenceWeeklyTotal] = React.useState(0.0);\r\n\r\n const [balanceMonthlyTotal, setBalanceMonthlyTotal] = React.useState(0.0);\r\n const [balanceYearlyTotal, setBalanceYearlyTotal] = React.useState(0.0);\r\n const [balanceWeeklyTotal, setBalanceWeeklyTotal] = React.useState(0.0);\r\n\r\n const [\r\n showpaymentplanbuttonafterbudgetsubmitted,\r\n setShowpaymentplanbuttonafterbudgetsubmitted,\r\n ] = React.useState(false);\r\n\r\n const createBudgetText = useSelector(\r\n (state) => state.HtmlReducer.createBudgetText\r\n );\r\n const currency = useSelector((state) => state.GetSiteDetailsReducer.currency);\r\n const uploadimagestobudget = useSelector(\r\n (state) => state.GetSiteDetailsReducer.uploadimagestobudget\r\n );\r\n\r\n const [value, setValue] = React.useState(0);\r\n const callPaymentPlan = () => {\r\n browserHistory.push(\"/createPayment\");\r\n };\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n setShowpaymentplanbuttonafterbudgetsubmitted(\r\n response.showpaymentplanbuttonafterbudgetsubmitted\r\n );\r\n });\r\n }, []);\r\n\r\n const handleChange = (newValue) => {\r\n if (newValue == 4) {\r\n submitForm();\r\n } else {\r\n if (step < newValue) {\r\n topNav.slickNext();\r\n } else if (newValue < 4) {\r\n topNav.slickPrev();\r\n }\r\n setStep(newValue);\r\n window.scroll(0, 0);\r\n }\r\n\r\n let incomeslist = Object.values(incomesToDisplay).flat();\r\n let expencelist = Object.values(expensesToDisplay).flat();\r\n calculate(incomeslist, expencelist);\r\n };\r\n\r\n const calculate = (incomes, expences) => {\r\n let cincomeMonthlyTotal = 0;\r\n let cincomeYearlyTotal = 0;\r\n let cincomeWeeklyTotal = 0;\r\n incomes.forEach(function(element) {\r\n if (element.selectedvalue == \"Monthly\") {\r\n cincomeMonthlyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n cincomeYearlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) * 12;\r\n cincomeWeeklyTotal +=\r\n (parseInt(element.value == \"\" ? \"0.00\" : element.value) * 12) / 52;\r\n } else if (element.selectedvalue == \"Weekly\") {\r\n cincomeMonthlyTotal +=\r\n (parseInt(element.value == \"\" ? \"0.00\" : element.value) * 52) / 12;\r\n cincomeYearlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) * 52;\r\n cincomeWeeklyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n } else if (element.selectedvalue == \"Yearly\") {\r\n cincomeMonthlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) / 12;\r\n cincomeYearlyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n cincomeWeeklyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) / 52;\r\n }\r\n });\r\n let cexpenceMonthlyTotal = 0;\r\n let cexpenceYearlyTotal = 0;\r\n let cexpenceWeeklyTotal = 0;\r\n\r\n expences.forEach(function(element) {\r\n if (element.selectedvalue == \"Monthly\") {\r\n cexpenceMonthlyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n cexpenceYearlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) * 12;\r\n cexpenceWeeklyTotal +=\r\n (parseInt(element.value == \"\" ? \"0.00\" : element.value) * 12) / 52;\r\n } else if (element.selectedvalue == \"Weekly\") {\r\n cexpenceMonthlyTotal +=\r\n (parseInt(element.value == \"\" ? \"0.00\" : element.value) * 52) / 12;\r\n cexpenceYearlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) * 52;\r\n cexpenceWeeklyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n } else if (element.selectedvalue == \"Yearly\") {\r\n cexpenceMonthlyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) / 12;\r\n cexpenceYearlyTotal += parseInt(\r\n element.value == \"\" ? \"0.00\" : element.value\r\n );\r\n cexpenceWeeklyTotal +=\r\n parseInt(element.value == \"\" ? \"0.00\" : element.value) / 52;\r\n }\r\n });\r\n\r\n var cbalanceMonthlyTotal = cincomeMonthlyTotal - cexpenceMonthlyTotal;\r\n var cbalanceYearlyTotal = cincomeYearlyTotal - cexpenceYearlyTotal;\r\n var cbalanceWeeklyTotal = cincomeWeeklyTotal - cexpenceWeeklyTotal;\r\n\r\n setIncomeMonthlyTotal(cincomeMonthlyTotal);\r\n setIncomeYearlyTotal(cincomeYearlyTotal);\r\n setIncomeWeeklyTotal(cincomeWeeklyTotal);\r\n\r\n setExpenceMonthlyTotal(cexpenceMonthlyTotal);\r\n setExpenceYearlyTotal(cexpenceYearlyTotal);\r\n setExpenceWeeklyTotal(cexpenceWeeklyTotal);\r\n\r\n setBalanceMonthlyTotal(cbalanceMonthlyTotal);\r\n setBalanceYearlyTotal(cbalanceYearlyTotal);\r\n setBalanceWeeklyTotal(cbalanceWeeklyTotal);\r\n };\r\n const submitForm = () => {\r\n let incomeslist = Object.values(incomesToDisplay).flat();\r\n let expencelist = Object.values(expensesToDisplay).flat();\r\n var formData = new FormData();\r\n var data = {\r\n BudgetInformation: {\r\n YearlyIncomeTotal: incomeYearlyTotal.toFixed(2).toString(),\r\n MonthlyIncomeTotal: incomeMonthlyTotal.toFixed(2).toString(),\r\n WeeklyIncomeTotal: incomeWeeklyTotal.toFixed(2).toString(),\r\n YearlyExpenditureTotal: expenceYearlyTotal.toFixed(2).toString(),\r\n MonthlyExpenditureTotal: expenceMonthlyTotal.toFixed(2).toString(),\r\n WeeklyExpenditureTotal: expenceWeeklyTotal.toFixed(2).toString(),\r\n YearlySavingsTotal: balanceYearlyTotal.toFixed(2).toString(),\r\n MonthlySavingsTotal: balanceMonthlyTotal.toFixed(2).toString(),\r\n WeeklySavingsTotal: balanceWeeklyTotal.toFixed(2).toString(),\r\n Incomes: [],\r\n Expenditures: [],\r\n },\r\n };\r\n for (var i in incomeslist) {\r\n var item = incomeslist[i];\r\n\r\n let exists = documents.find(\r\n (x) => x.from == \"income\" && x.itemId == item.incomeId\r\n );\r\n\r\n if (exists) {\r\n formData.append(\r\n exists.name ? exists.name : exists.document.name,\r\n exists.document\r\n );\r\n }\r\n\r\n data.BudgetInformation.Incomes.push({\r\n IncomeName: item.incomeType,\r\n IncomeValue:\r\n item.value.toString() == \"\" ? \"0.00\" : item.value.toString(),\r\n IncomeFrequency: item.selectedvalue,\r\n AttachedFileName:\r\n exists === undefined\r\n ? \"\"\r\n : exists.name\r\n ? exists.name\r\n : exists.document.name,\r\n });\r\n }\r\n\r\n for (var i in expencelist) {\r\n var item = expencelist[i];\r\n let exists = documents.find(\r\n (x) => x.from == \"expense\" && x.itemId == item.expenseId\r\n );\r\n if (exists) {\r\n formData.append(\r\n exists.name ? exists.name : exists.document.name,\r\n exists.document\r\n );\r\n }\r\n\r\n data.BudgetInformation.Expenditures.push({\r\n ExpenditureName: item.expenseType,\r\n ExpenditureValue:\r\n item.value.toString() == \"\" ? \"0.00\" : item.value.toString(),\r\n ExpenditureFrequency: item.selectedvalue,\r\n AttachedFileName:\r\n exists === undefined\r\n ? \"\"\r\n : exists.name\r\n ? exists.name\r\n : exists.document.name,\r\n });\r\n }\r\n\r\n formData.append(\"BudgetInformation\", JSON.stringify(data));\r\n fetch(\r\n uploadimagestobudget\r\n ? UploadDocumentsURL\r\n : URLS.CreateBudgetAndAttachDocuments,\r\n {\r\n method: \"POST\",\r\n headers: {\r\n // \"Content-Type\": \"multipart/form-data\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n body: formData,\r\n // body: JSON.stringify(data),\r\n }\r\n )\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Create Budget\", data, context);\r\n });\r\n setStep(1);\r\n\r\n throw Error(\"\");\r\n }\r\n })\r\n\r\n .then((data) => {\r\n setshowSuccess(true);\r\n dispatch(cameraActions.resetDocuments());\r\n getMenu();\r\n\r\n topNav.slickNext();\r\n\r\n setStep(4);\r\n window.scroll(0, 0);\r\n }, [])\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Create Budget\", error, context);\r\n }\r\n });\r\n };\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n };\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const createIncomeData = (\r\n incomeCategory,\r\n incomeOrder,\r\n incomeType,\r\n canAttachFile,\r\n incomeId,\r\n\r\n value,\r\n selectedvalue,\r\n atachedFileName\r\n ) => {\r\n return {\r\n incomeCategory,\r\n incomeOrder,\r\n incomeType,\r\n value,\r\n incomeId,\r\n selectedvalue,\r\n canAttachFile,\r\n atachedFileName,\r\n };\r\n };\r\n const createExpenceData = (\r\n expenseCategory,\r\n expenseOrder,\r\n expenseType,\r\n canAttachFile,\r\n expenseId,\r\n value,\r\n selectedvalue,\r\n atachedFileName\r\n ) => {\r\n return {\r\n expenseCategory,\r\n expenseOrder,\r\n expenseType,\r\n expenseId,\r\n value,\r\n selectedvalue,\r\n canAttachFile,\r\n atachedFileName,\r\n };\r\n };\r\n\r\n React.useEffect(() => {\r\n //window.initSlick();\r\n fetch(URLS.GetBugetColumns, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Buget Columns\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n const IncomedataRows = [];\r\n const ExpencedataRows = [];\r\n\r\n data.incomesToDisplay.forEach((item) => {\r\n IncomedataRows.push(\r\n createIncomeData(\r\n item.incomeCategory,\r\n item.incomeOrder,\r\n item.incomeType,\r\n item.canAttachFile,\r\n item.incomeId,\r\n\r\n \"\",\r\n \"Monthly\",\r\n \"\"\r\n )\r\n );\r\n });\r\n\r\n data.expensesToDisplay.forEach((item) => {\r\n ExpencedataRows.push(\r\n createExpenceData(\r\n item.expenseCategory,\r\n item.expenseOrder,\r\n item.expenseType,\r\n item.canAttachFile,\r\n item.expenseId,\r\n \"\",\r\n \"Monthly\",\r\n \"\"\r\n )\r\n );\r\n });\r\n\r\n var groupedItems = groupArray(IncomedataRows, \"incomeCategory\");\r\n var groupedItemse = groupArray(ExpencedataRows, \"expenseCategory\");\r\n\r\n setincomesToDisplay(groupedItems);\r\n setexpensesToDisplay(groupedItemse);\r\n }, [])\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Buget Columns\", error, context);\r\n }\r\n });\r\n }, []);\r\n\r\n function handleInputChange(event, index, cat) {\r\n incomesToDisplay[cat][index].value = event.target.value;\r\n setincomesToDisplay(incomesToDisplay);\r\n }\r\n function handleInputSelectedChange(event, index, cat) {\r\n incomesToDisplay[cat][index].selectedvalue = event.target.value;\r\n setincomesToDisplay(incomesToDisplay);\r\n }\r\n\r\n function handleInputExSelectedChange(event, index, cat) {\r\n expensesToDisplay[cat][index].selectedvalue = event.target.value;\r\n setexpensesToDisplay(expensesToDisplay);\r\n }\r\n\r\n function handleInputExChange(event, index, cat) {\r\n expensesToDisplay[cat][index].value = event.target.value;\r\n setexpensesToDisplay(expensesToDisplay);\r\n }\r\n\r\n return (\r\n
\r\n \r\n\r\n \r\n \r\n {\r\n setTopNav(slider);\r\n }}\r\n {...SliderSettings}\r\n >\r\n
\r\n
\r\n handleChange(0)}>Instructions\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 handleChange(1)}>Incomes\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 handleChange(2)}>Expenditure\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 handleChange(3)}>Finalise\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 handleChange(4)}>Summary\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n {createBudgetText}\r\n
\r\n {\r\n handleChange(1);\r\n }}\r\n color=\"primary\"\r\n icon={}\r\n classNames={classes.button}\r\n >\r\n Next\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n {\r\n event.preventDefault();\r\n if (event.target.checkValidity()) {\r\n handleChange(2);\r\n }\r\n }}\r\n className=\"center-container-940\"\r\n >\r\n

Enter your incomes in the area below

\r\n\r\n {Object.keys(incomesToDisplay).map(function(cat, index) {\r\n return (\r\n
\r\n

{cat}

\r\n {incomesToDisplay[cat].map(function(item, index2) {\r\n return (\r\n \r\n handleInputChange(e, index2, cat)\r\n }\r\n handleSelectedChange={(e) =>\r\n handleInputSelectedChange(e, index2, cat)\r\n }\r\n value={item.value}\r\n selectedvalue={item.selectedvalue}\r\n >\r\n );\r\n })}\r\n
\r\n );\r\n })}\r\n
\r\n handleChange(0)}\r\n color=\"primary\"\r\n icon={}\r\n className={classes.button}\r\n >\r\n Back\r\n \r\n }\r\n className={classes.button}\r\n >\r\n Next\r\n \r\n
\r\n \r\n \r\n\r\n \r\n {\r\n event.preventDefault();\r\n if (event.target.checkValidity()) {\r\n handleChange(3);\r\n }\r\n }}\r\n className=\"center-container-940\"\r\n >\r\n

Expenditure

\r\n\r\n {Object.keys(expensesToDisplay).map(function(cat, index) {\r\n return (\r\n
\r\n

{cat}

\r\n\r\n {expensesToDisplay[cat].map(function(item, index2) {\r\n return (\r\n \r\n handleInputExChange(e, index2, cat)\r\n }\r\n handleSelectedChange={(e) =>\r\n handleInputExSelectedChange(e, index2, cat)\r\n }\r\n selectedvalue={item.selectedvalue}\r\n >\r\n );\r\n })}\r\n
\r\n );\r\n })}\r\n
\r\n handleChange(1)}\r\n color=\"primary\"\r\n icon={}\r\n className={classes.button}\r\n >\r\n Back\r\n \r\n }\r\n className={classes.button}\r\n >\r\n Next\r\n \r\n
\r\n \r\n \r\n\r\n \r\n
\r\n

Finalise Budget

\r\n
\r\n \r\n \r\n \r\n

\r\n\r\n \r\n \r\n Income Totals\r\n \r\n \r\n \r\n \r\n Expenditure Totals\r\n \r\n \r\n \r\n \r\n Your available money\r\n \r\n \r\n
\r\n \r\n

Yearly

\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 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Monthly

\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 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Weekly

\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 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\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

Income Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Expenditure Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Your available Money

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\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

Income Totals

\r\n {Object.keys(incomesToDisplay).map(function(cat, index) {\r\n return (\r\n
\r\n

{cat}

\r\n {incomesToDisplay[cat].map(function(item, index2) {\r\n return (\r\n
\r\n \r\n \r\n \r\n {item.incomeType}\r\n \r\n \r\n \r\n \r\n {item.selectedvalue}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {item.selectedvalue}\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\n\r\n \r\n

Expense Totals

\r\n {Object.keys(expensesToDisplay).map(function(cat, index) {\r\n return (\r\n
\r\n

{cat}

\r\n\r\n {expensesToDisplay[cat].map(function(item, index2) {\r\n return (\r\n
\r\n \r\n \r\n \r\n {\" \"}\r\n {item.expenseType}\r\n \r\n \r\n \r\n \r\n {item.selectedvalue}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {item.selectedvalue}\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\n
\r\n
\r\n
\r\n

\r\n Finalising the budget will save the details on our system. If\r\n you are unsure that the details are correct, please go back and\r\n amend before finalising\r\n

\r\n
\r\n handleChange(2)}\r\n color=\"primary\"\r\n icon={}\r\n className={classes.button}\r\n >\r\n Back\r\n \r\n handleChange(4)}\r\n color=\"primary\"\r\n icon={}\r\n className={classes.button}\r\n >\r\n Next\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n

Summary

\r\n \r\n \r\n \r\n

Income Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Expenditure Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Your available Money

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\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

Income Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Expenditure Totals

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n

Your available Money

\r\n
\r\n \r\n \r\n Yearly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Monthly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n Weekly\r\n \r\n 0\r\n ? classes.MoneyGreen\r\n : balanceMonthlyTotal < 0\r\n ? classes.MoneyRed\r\n : classes.Money\r\n }\r\n >\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {showSuccess ? (\r\n
    \r\n {\" \"}\r\n
  • \r\n {\" \"}\r\n

    \r\n Your budget has been submitted\r\n

    \r\n
  • \r\n
\r\n ) : null}\r\n\r\n 0 &&\r\n showpaymentplanbuttonafterbudgetsubmitted\r\n ? classes.showSummary\r\n : classes.hideSummary\r\n }\r\n >\r\n

\r\n Please proceed to Create a Payment Plan by clicking on\r\n

\r\n \r\n
\r\n button{\" \"}\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React, { useState } from \"react\";\r\nimport { useWindowSize } from \"components/camera/Camera\";\r\nimport { isMobile } from \"react-device-detect\";\r\n\r\nexport default function PdfViewer({ pdf, documentToShow }) {\r\n const size = useWindowSize();\r\n\r\n React.useEffect(() => {\r\n if (pdf && isMobile) {\r\n window.open(documentToShow, \"_blank\");\r\n }\r\n }, [pdf]);\r\n if (pdf) {\r\n return (\r\n \r\n );\r\n } else {\r\n return ;\r\n }\r\n}\r\n","// import { GpsFixed } from \"@material-ui/icons\";\r\nimport {\r\n primaryColor,\r\n primaryDarkColor,\r\n successColor,\r\n dangerColor,\r\n primaryBoxShadow,\r\n} from \"assets/jss/xrs.js\";\r\nconst fabStyle = {\r\n fabContainer: {\r\n position: \"fixed\",\r\n bottom: \"50px\",\r\n right: \"50px\",\r\n zIndex: \"999\",\r\n cursor: \"pointer\",\r\n \"&:hover,&:focus\": {\r\n \"& $fabOptions\": {\r\n opacity: 1,\r\n transform: \"scale(1)\",\r\n },\r\n },\r\n },\r\n fabOptions: {\r\n listStyleType: \"none\",\r\n margin: \"0\",\r\n position: \"absolute\",\r\n bottom: \"70px\",\r\n right: \"0\",\r\n opacity: 0,\r\n transition: \"all 0.3s ease\",\r\n transform: \"scale(0)\",\r\n transformOrigin: \"85% bottom\",\r\n \"&:hover,&:focus\": {\r\n opacity: 1,\r\n transform: \"scale(1)\",\r\n },\r\n \"& li\": {\r\n display: \"flex\",\r\n\r\n justifyContent: \"flex-end\",\r\n padding: \"5px\",\r\n },\r\n },\r\n fabIconHolder: {\r\n width: \"50px\",\r\n height: \"50px\",\r\n borderRadius: \"100%\",\r\n background: primaryDarkColor[0],\r\n boxShadow: \"0 6px 20px rgba(0,0,0,0.2)\",\r\n \"&:hover,&:focus\": {\r\n background: primaryColor[0],\r\n ...primaryBoxShadow,\r\n },\r\n \"& i\": {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n height: \"100%\",\r\n fontStyle: \"25px\",\r\n color: \"#ffffff\",\r\n },\r\n },\r\n fab: {\r\n \"&:hover,&:focus\": {\r\n background: primaryColor[0],\r\n ...primaryBoxShadow,\r\n },\r\n width: \"60px\",\r\n height: \"60px\",\r\n backgroundColor: primaryDarkColor[0],\r\n },\r\n\r\n fabLabel: {\r\n padding: \"2px 5px\",\r\n alignSelf: \"center\",\r\n userSelect: \"none\",\r\n whiteSpace: \"nowrap\",\r\n borderRadius: \"3px\",\r\n fontSize: \"16px\",\r\n background: \"#666666\",\r\n color: \"#ffffff\",\r\n boxShadow: \"0 6px 20px rgba(0,0,0,0.2)\",\r\n marginRight: \"10px\",\r\n },\r\n};\r\nexport default fabStyle;\r\n","import React from \"react\";\r\nimport styles from \"assets/jss/xrs/components/fabStyle.js\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\n\r\nimport CameraAltIcon from \"@material-ui/icons/CameraAlt\";\r\nimport {\r\n cameraActions,\r\n documentsActions,\r\n} from \"../../store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nconst useStyles = makeStyles(styles);\r\nexport default function FabViewDocument(props) {\r\n const classes = useStyles();\r\n\r\n const dispatch = useDispatch();\r\n function closeFullscreen() {\r\n if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n } else if (document.webkitExitFullscreen) {\r\n /* Safari */\r\n document.webkitExitFullscreen();\r\n } else if (document.msExitFullscreen) {\r\n /* IE11 */\r\n document.msExitFullscreen();\r\n }\r\n }\r\n if (props.viewDocument !== \"\") {\r\n return (\r\n {\r\n dispatch(documentsActions.viewDocumet(\"\"));\r\n closeFullscreen();\r\n }}\r\n className={classes.fabContainer}\r\n >\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n );\r\n } else return null;\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport budgetPageStyle from \"../../assets/jss/xrs/views/budgetPageStyle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport BudgetSection from \"../SectionsPage/Sections/BudgetSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport CustomCamera from \"components/camera/Camera\";\r\nimport PdfViewer from \"components/PdfViewer/PdfViewer\";\r\nimport FabViewDocument from \"components/Fab/FabViewDocument\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(budgetPageStyle);\r\n\r\nexport default function BudgetPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n const viewDocument = useSelector(\r\n (state) => state.DocumentsReducer.documentToBeViewed\r\n );\r\n const context = useContext(Context);\r\n const open = useSelector((state) => state.CameraReducer.openFrom);\r\n const uploadimagestobudget = useSelector(\r\n (state) => state.GetSiteDetailsReducer.uploadimagestobudget\r\n );\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\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 {open === \"\" || !isMobile || !uploadimagestobudget ? null : (\r\n \r\n )}\r\n \r\n \r\n {viewDocument === \"\" ? null : (\r\n <>\r\n {\" \"}\r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport CustomTextField from \"components/CustomInput/CustomInput\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport Context from \"../../../utils/context\";\r\nimport Datetime from \"react-datetime\";\r\n// @material-ui/core components\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport Select from \"@material-ui/core/Select\";\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\nimport CardContent from \"@material-ui/core/CardContent\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport BlueHeader from \"../../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport {\r\n apiActions,\r\n getSiteDetailsActions,\r\n} from \"store/redux/redux-actions/redux_actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: \"100%\",\r\n margin: 0,\r\n padding: 0,\r\n },\r\n button: {\r\n marginRight: theme.spacing(1),\r\n padding: 13,\r\n },\r\n hide: {\r\n display: \"none\",\r\n },\r\n instructions: {\r\n marginTop: theme.spacing(1),\r\n marginBottom: theme.spacing(1),\r\n },\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 30,\r\n },\r\n whiteInfo: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n paddingTop: 10,\r\n },\r\n whiteInfoMiddle: {\r\n color: \"white\",\r\n fontWeight: 400,\r\n paddingLeft: 0,\r\n\r\n textAlign: \"center\",\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n },\r\n blueText: {\r\n color: \"#0065a4\",\r\n fontWeight: 300,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n BoxFull: {\r\n width: \"100%\",\r\n paddingLeft: 0,\r\n paddingRight: 0,\r\n },\r\n Middle: {\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n blueTextMiddle: {\r\n color: \"#0065a4\",\r\n fontWeight: 400,\r\n justifyContent: \"center\",\r\n width: \"100%\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n border: 0,\r\n },\r\n controlWhite: {\r\n margin: 0,\r\n height: 40,\r\n borderRadius: 2,\r\n backgroundColor: \"#f5f9ff\",\r\n color: \"#0088cc\",\r\n borderColor: \"#0088cc\",\r\n border: 1,\r\n },\r\n rightValues: {\r\n textAlign: \"right\",\r\n fontWeight: 300,\r\n },\r\n}));\r\n\r\nexport default function RequestCallBackSection() {\r\n const classes = useStyles();\r\n const [page, setPage] = React.useState(1);\r\n const context = useContext(Context);\r\n const dispatch = useDispatch();\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n\r\n const [sitename, setSitename] = React.useState(\"\");\r\n const [companyname, setCompanyname] = React.useState(\"\");\r\n const [aboutus, setAboutus] = React.useState(\"\");\r\n const [address, setAddress] = React.useState(\"\");\r\n const [officehours, setOfficehours] = React.useState(\"\");\r\n const [phonenumber, setPhonenumber] = React.useState(\"\");\r\n const [email, setEmail] = React.useState(\"\");\r\n const [openTime, setopenTime] = React.useState(\"\");\r\n const [closeTime, setcloseTime] = React.useState(\"\");\r\n\r\n const [callbackReason, setCallbackReason] = React.useState(\"\");\r\n const [callbackDate, setCallBackDate] = React.useState(\"\");\r\n const [callbackDateMax, setCallBackDateMax] = React.useState(\"\");\r\n const [callbackTime, setCallBackTime] = React.useState(\"\");\r\n const [callbackphone, setCallbackphone] = React.useState(\"\");\r\n const [callbackDateTime, setCallbackDateTime] = React.useState(\"None\");\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const stateCallbacks = useSelector(\r\n (state) => state.CallbacksReducer.callbacks\r\n );\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Welcome Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(getSiteDetailsActions.logo(response.logoimageurl));\r\n dispatch(getSiteDetailsActions.footerImage(response.footerimageurl));\r\n dispatch(getSiteDetailsActions.currency(response.sitecurrency));\r\n dispatch(\r\n getSiteDetailsActions.uploadImagesToBudget(\r\n response.uploadimagestobudget\r\n )\r\n );\r\n if (response.usesconveniencefee) {\r\n dispatch(\r\n getSiteDetailsActions.convenienceFee(response.conveniencefee)\r\n );\r\n }\r\n setSitename(response.sitename);\r\n setCompanyname(response.companyname);\r\n setAboutus(response.aboutus);\r\n\r\n setOfficehours(response.officehours);\r\n setPhonenumber(response.phonenumber);\r\n setAddress(response.address);\r\n setEmail(response.email);\r\n setcloseTime(response.closinghours);\r\n setopenTime(response.openinghours);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, []);\r\n const handlecallbackReasonChange = (e) => {\r\n setCallbackReason(e.target.value);\r\n };\r\n\r\n const handleCallBackDateChange = (e) => {\r\n var d = fnmoment(e.target.value);\r\n\r\n setCallBackDate(d.format(\"YYYY-MM-DD\"));\r\n var date = d.format(\"L\");\r\n var time = callbackTime;\r\n var datetime = date + \" \" + time;\r\n setCallbackDateTime(datetime);\r\n };\r\n const handleCallBackTimeChange = (e) => {\r\n setCallBackTime(e.target.value);\r\n\r\n var date = callbackDate;\r\n var time = e.target.value;\r\n var datetime = date + \" \" + time;\r\n setCallbackDateTime(datetime);\r\n };\r\n const handleCallBackPhoneChange = (e) => {\r\n setCallbackphone(e.target.value);\r\n };\r\n const token = sessionStorage.getItem(\"access_token\");\r\n const submitForm = (event) => {\r\n event.preventDefault();\r\n if (document.forms[0].checkValidity()) {\r\n const xhr = new XMLHttpRequest();\r\n var url = URLS.SaveCallBack;\r\n\r\n dispatch(apiActions.loading(true));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n xhr.setRequestHeader(\"Authorization\", \"Bearer \" + token);\r\n\r\n var date = callbackDate;\r\n var time = callbackTime;\r\n var datetime = date + \" \" + time;\r\n var callBacklDate = fnmoment(datetime).format(\"YYYY-MM-DD HH:mm:ss \");\r\n var data = JSON.stringify({\r\n DateOfCallBack: callBacklDate,\r\n Note: callbackReason,\r\n PhoneNumber: callbackphone,\r\n PhoneType: \"Home\",\r\n });\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n context.stateInfoDialog(\r\n \"Callback Information\",\r\n JSON.parse(xhr.responseText).message,\r\n \"/welcome\"\r\n );\r\n //setIfamevisible(true);\r\n } else {\r\n ApiErrorHandler(\"Save Call Back\", xhr, context);\r\n }\r\n }\r\n };\r\n try {\r\n xhr.send(data);\r\n } catch (err) {\r\n ApiErrorHandler(\"Save Call Back\", err, context);\r\n }\r\n }\r\n };\r\n React.useEffect(() => {\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n }, []);\r\n React.useEffect(() => {\r\n setCallbackphone(stateCustomer.cumobilephone);\r\n setCallBackDate(fnmoment().format(\"YYYY-MM-DD\"));\r\n setCallbackDateTime(fnmoment().format(\"L\"));\r\n\r\n var today = fnmoment()\r\n .add(stateCustomer.maxcallbackdate, \"days\")\r\n .format(\"YYYY-MM-DD\");\r\n setCallBackDateMax(today);\r\n return () => {\r\n dispatch(apiActions.clear());\r\n };\r\n }, []);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
Choose a call back date
\r\n
\r\n \r\n {\r\n handleCallBackDateChange(e);\r\n },\r\n name: \"callbackDate\",\r\n // min: fnmoment(fnmoment()).format(\"YYYY-MM-DD\"),\r\n max: callbackDateMax,\r\n }}\r\n className={classes.control}\r\n >\r\n \r\n \r\n
Choose a call back time
\r\n
\r\n \r\n {\r\n handleCallBackTimeChange(e);\r\n },\r\n }}\r\n />\r\n \r\n \r\n
Choose call back reason
\r\n
\r\n \r\n {\r\n handlecallbackReasonChange(e);\r\n }}\r\n fullWidth\r\n required\r\n inputProps={{\r\n required: \"required\",\r\n }}\r\n labelId=\"demo-customized-select-label\"\r\n id=\"demo-customized-select\"\r\n value={callbackReason}\r\n >\r\n {stateCallbacks.map(function(res, index) {\r\n return (\r\n \r\n {res.callbackreason}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n
Enter a phone number
\r\n
\r\n \r\n {\r\n handleCallBackPhoneChange(e);\r\n },\r\n }}\r\n />{\" \"}\r\n \r\n \r\n
\r\n \r\n \r\n

\r\n Selected date and time\r\n

\r\n

\r\n {callbackDateTime}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Request Call\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n\r\n

How it works

\r\n\r\n

We are happy to give you a call whenever it suits you!

\r\n

We will try our best to call you at your requested time

\r\n

Using our handy form, follow these steps:

\r\n\r\n
    \r\n
  1. Select a date for the call.
  2. \r\n
  3. Select a time for the call that suits you.
  4. \r\n
  5. Enter phone number
  6. \r\n
  7. Choose a reason for the call.
  8. \r\n
  9. Finally, click Request Call.
  10. \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport RequestCallbackSection from \"../SectionsPage/Sections/RequestCallBackSection.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function RequestCallBackLoggedID(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\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","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst changePasswordOrPinPageStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default changePasswordOrPinPageStyle;\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport changePasswordOrPinPageStyle from \"../../assets/jss/xrs/views/changePasswordOrPinPageStyle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport ChangePasswordSection from \"./ChangePasswordOrPin.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(changePasswordOrPinPageStyle);\r\n\r\nexport default function BudgetPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\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","import { isMobile } from \"react-device-detect\";\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\n\r\nconst faqPageLoginStyle = (theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n});\r\n\r\nexport default faqPageLoginStyle;\r\n","import imagesStyles from \"../../imagesStyles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst faqSectionStyle = {\r\n ...imagesStyles,\r\n white: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n paddingLeft: 20,\r\n },\r\n whiteRight: {\r\n color: \"white\",\r\n fontWeight: 500,\r\n textAlign: \"right\",\r\n },\r\n blueTitle: {\r\n color: primaryColor[20],\r\n fontWeight: 400,\r\n marginBottom: 0,\r\n },\r\n RightText: {\r\n marginBottom: 5,\r\n },\r\n Title: {\r\n fontWeight: 500,\r\n paddingTop: 30,\r\n },\r\n tableWrapper: {\r\n maxHeight: 270,\r\n overflow: \"auto\",\r\n },\r\n Wellcome: {\r\n fontWeight: 500,\r\n },\r\n};\r\nexport default faqSectionStyle;\r\n","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport faqSectionStyle from \"assets/jss/xrs/views/sectionsSections/faqSectionStyle\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport Table from \"@material-ui/core/Table\";\r\nimport TableBody from \"@material-ui/core/TableBody\";\r\nimport TableCell from \"@material-ui/core/TableCell\";\r\nimport TableHead from \"@material-ui/core/TableHead\";\r\nimport TableRow from \"@material-ui/core/TableRow\";\r\nimport NumberFormat from \"react-number-format\";\r\nimport Moment from \"react-moment\";\r\nimport Accordion from \"components/Accordion/Accordion.js\";\r\nimport { textVariables } from \"assets/jss/xrs\";\r\n\r\nconst columns = [\r\n { id: \"Description\", label: \"Description\", minWidth: 100 },\r\n { id: \"Account #\", label: \"Account #\", minWidth: 170 },\r\n {\r\n id: \"Balance\",\r\n label: \"Balance\",\r\n minWidth: 100,\r\n align: \"right\",\r\n format: (value) => value.toFixed(2),\r\n },\r\n];\r\n\r\nconst useStyles = makeStyles(faqSectionStyle);\r\nexport default function FaqSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const createData = (title, content) => {\r\n return { title, content };\r\n };\r\n const dispatch = useDispatch();\r\n const selectedAccount = useSelector(\r\n (state) => state.SelectedAccountsReducer.account\r\n );\r\n const stateAccounts = useSelector((state) => state.AccountsReducer.accounts);\r\n\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [site, setSite] = React.useState(\"\");\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const ReadContext = () => {\r\n setSite(stateSite);\r\n const dataRows = [];\r\n var data = stateSite.faqs;\r\n if (data != \"NoAccounts\") {\r\n var i = 1;\r\n data.forEach((item) => {\r\n dataRows.push(\r\n createData(\r\n ReactHtmlParser(item.header),\r\n ReactHtmlParser(item.details)\r\n )\r\n );\r\n i++;\r\n setRowdata(dataRows);\r\n });\r\n }\r\n };\r\n React.useEffect(() => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(ACTIONS.set_Site(response));\r\n\r\n ReadContext();\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n }, []);\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Frequently Asked Questions

\r\n \r\n
\r\n
\r\n \r\n
{textVariables[5]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.accountnumber\r\n : stateCustomer.custnumber}\r\n

\r\n
{textVariables[6]}
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptofficehours\r\n : stateAccounts[0].deptofficehours}\r\n

\r\n
Address
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptaddress\r\n : stateAccounts[0].deptaddress}\r\n

\r\n
Phone
\r\n

\r\n {\" \"}\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptphonenumber\r\n : stateAccounts[0].deptphonenumber}\r\n

\r\n
Email
\r\n

\r\n {selectedAccount !== \"NoAccount\"\r\n ? selectedAccount.deptemail\r\n : stateAccounts[0].deptemail}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport faqPageLoginStyle from \"../../assets/jss/xrs/views/faqPageLoginStyle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport FaqSection from \"../SectionsPage/Sections/FaqSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles(faqPageLoginStyle);\r\n\r\nexport default function FaqPageLogin(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n\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","import React, { useContext } from \"react\";\r\nimport history from \"../../utils/history\";\r\nimport classNames from \"classnames\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Iframe from \"react-iframe\";\r\n\r\nimport { useFormik } from \"formik\";\r\n\r\nimport TextField from \"components/CustomInput/CustomInput.js\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport clsx from \"clsx\";\r\nimport Link from \"@material-ui/core/Link\";\r\nimport ReactHtmlParser, {\r\n processNodes,\r\n convertNodeToElement,\r\n htmlparser2,\r\n} from \"react-html-parser\";\r\n\r\nimport PayNow from \"../SectionsPage/Sections/PayNowSection.js\";\r\n\r\nimport html2canvas from \"html2canvas\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport BlueHeader from \"../SectionsPage/Sections/BlueHeaderSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport { el } from \"date-fns/locale\";\r\n\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n Iframecontainer: {\r\n position: \"relative\",\r\n overflow: \"hidden\",\r\n width: \"100%\",\r\n paddingTop: \"56.25%\" /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */,\r\n },\r\n\r\n /* Then style the iframe to fit in the container div with full height and width */\r\n responsiveIframe: {\r\n position: \"absolute\",\r\n top: 0,\r\n left: 0,\r\n bottom: 0,\r\n right: 0,\r\n width: \"100%\",\r\n height: \"100%\",\r\n },\r\n}));\r\n\r\nexport default function IframePage(props) {\r\n const classes2 = useStyles2();\r\n const context = useContext(Context);\r\n const [page, setPage] = React.useState(1);\r\n const url = useSelector((state) => state.SiteReducer.iframeUrl);\r\n\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","import Card from \"components/Card/Card.js\";\r\nimport CardBody from \"components/Card/CardBody.js\";\r\nimport Button from \"components/CustomButtons/Button.js\";\r\nimport React, { useContext } from \"react\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport fnmoment from \"moment/min/moment-with-locales\";\r\nimport AttachFileIcon from \"@material-ui/icons/AttachFile\";\r\nimport Context from \"../../../utils/context\";\r\nimport * as URLS from \"../../../utils/XRSAPIs\";\r\nimport * as ACTIONS from \"../../../store/actions/actions\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport BlueHeader from \"./BlueHeaderSection.js\";\r\nimport ReactHtmlParser from \"react-html-parser\";\r\nimport Parallax from \"components/Parallax/Parallax.js\";\r\nimport { Collapse } from \"@material-ui/core\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport {\r\n cameraActions,\r\n documentsActions,\r\n htmlActions,\r\n apiActions,\r\n} from \"../../../store/redux/redux-actions/redux_actions\";\r\nimport history from \"../../../utils/history\";\r\n\r\nimport { DataGrid, getThemePaletteMode } from \"@material-ui/data-grid\";\r\nimport { createMuiTheme, darken, lighten } from \"@material-ui/core/styles\";\r\n\r\nimport ReplayRoundedIcon from \"@material-ui/icons/ReplayRounded\";\r\n\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport Toolbar from \"@material-ui/core/Toolbar\";\r\nimport AppBar from \"@material-ui/core/AppBar\";\r\nimport PdfViewer from \"components/PdfViewer/PdfViewer\";\r\n\r\nconst defaultTheme = createMuiTheme();\r\nconst useStyles = makeStyles(\r\n (theme) => {\r\n const getBackgroundColor = (color) =>\r\n getThemePaletteMode(theme.palette) === \"dark\"\r\n ? darken(color, 0.6)\r\n : lighten(color, 0.6);\r\n\r\n const getHoverBackgroundColor = (color) =>\r\n getThemePaletteMode(theme.palette) === \"dark\"\r\n ? darken(color, 0.5)\r\n : lighten(color, 0.5);\r\n\r\n return {\r\n root: {\r\n \"& .rowStyle--READ\": {\r\n fontWeight: 400,\r\n \"&:hover\": {},\r\n },\r\n \"& .rowStyle--UNREAD\": {\r\n fontWeight: 700,\r\n backgroundColor: getBackgroundColor(\"#BEBEBE\"),\r\n \"&:hover\": {},\r\n },\r\n \"& .headerStyle\": {\r\n border: \"none\",\r\n },\r\n \"& .cellStyle\": {\r\n borderStyle: \"none\",\r\n },\r\n },\r\n };\r\n },\r\n { defaultTheme }\r\n);\r\n\r\nexport default function MessagesSection(props) {\r\n const context = useContext(Context);\r\n const classes = useStyles();\r\n const createData = (title, content) => {\r\n return { title, content };\r\n };\r\n const dispatch = useDispatch();\r\n\r\n const columnsDesktop = [\r\n {\r\n field: \"Status\",\r\n headerName: \"Status\",\r\n width: 130,\r\n hide: true,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n {\r\n field: \"ReceivedAt\",\r\n headerName: \"Date/Time\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n //{\r\n // field: 'CustomerRecNo', headerName: 'First name', width: 130 },\r\n {\r\n field: \"Reference\",\r\n headerName: \"Ref\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n {\r\n field: \"Account\",\r\n headerName: \"Account\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n // {\r\n // field: \"Type\",\r\n // headerName: \"Type\",\r\n // flex: 1,\r\n // headerClassName: \"headerStyle\",\r\n // cellClassName: \"cellStyle\",\r\n // },\r\n {\r\n field: \"HasAttachment\",\r\n headerName: \"Attachment\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n renderCell: (params) => {\r\n return (\r\n \r\n {\r\n (params.row.HasAttachment = params.row.HasAttachment ? (\r\n \r\n ) : null)\r\n }\r\n \r\n );\r\n },\r\n },\r\n ];\r\n const columnsMobile = [\r\n {\r\n field: \"ReceivedAt\",\r\n headerName: \"Date/Time\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n {\r\n field: \"Reference\",\r\n headerName: \"Ref\",\r\n flex: 1,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n },\r\n // {\r\n // field: \"CustomerRecNo\",\r\n // headerName: \"First name\",\r\n // width: 130,\r\n // },\r\n\r\n // {\r\n // field: \"Type\",\r\n // headerName: \"Type\",\r\n // flex: 1,\r\n // headerClassName: \"headerStyle\",\r\n // cellClassName: \"cellStyle\",\r\n // },\r\n {\r\n field: \"HasAttachment\",\r\n headerName: \"Attachment\",\r\n flex: 0.3,\r\n headerClassName: \"headerStyle\",\r\n cellClassName: \"cellStyle\",\r\n renderCell: (params) => {\r\n return (\r\n \r\n {\r\n (params.row.HasAttachment = params.row.HasAttachment ? (\r\n \r\n ) : null)\r\n }\r\n \r\n );\r\n },\r\n },\r\n ];\r\n\r\n const token = sessionStorage.getItem(\"access_token\");\r\n\r\n const [rowdata, setRowdata] = React.useState([]);\r\n const [selectedRow, setSelectedRow] = React.useState(null);\r\n\r\n const [site, setSite] = React.useState(\"\");\r\n const stateSite = useSelector((state) => state.SiteReducer.site);\r\n const stateCustomer = useSelector((state) => state.CustomerReducer.customer);\r\n const ReadContext = () => {\r\n setSite(stateSite);\r\n const dataRows = [];\r\n var data = stateSite.faqs;\r\n if (data != \"NoAccounts\") {\r\n var i = 1;\r\n data.forEach((item) => {\r\n dataRows.push(\r\n createData(\r\n ReactHtmlParser(item.header),\r\n ReactHtmlParser(item.details)\r\n )\r\n );\r\n i++;\r\n });\r\n }\r\n };\r\n const getMenu = () => {\r\n var url = URLS.GetWelcomeNavigation;\r\n var token = sessionStorage.getItem(\"access_token\");\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Welcome Navigation\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data1) => {\r\n dispatch(ACTIONS.set_menu(data1));\r\n\r\n fetch(URLS.GetWelcomeDetails, {\r\n method: \"GET\",\r\n headers: { Authorization: \"Bearer \" + token },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", res, context);\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((data) => {\r\n dispatch(htmlActions.termsQuickPay(data.customer.termsquickpay));\r\n dispatch(htmlActions.termsPlan(data.customer.termsplan));\r\n dispatch(htmlActions.termsDiscount(data.customer.termsdiscount));\r\n\r\n dispatch(\r\n htmlActions.viewOfferText(data.activeAccounts[0].viewoffertext)\r\n );\r\n dispatch(\r\n htmlActions.createPlanText(data.activeAccounts[0].createplantext)\r\n );\r\n dispatch(\r\n htmlActions.createPlantoc(data.activeAccounts[0].createplantoc)\r\n );\r\n dispatch(\r\n htmlActions.createBudgetText(\r\n data.activeAccounts[0].createbudgettext\r\n )\r\n );\r\n dispatch(\r\n htmlActions.viewAccountText(\r\n data.activeAccounts[0].viewacccounttext\r\n )\r\n );\r\n dispatch(ACTIONS.set_Customer(data.customer));\r\n\r\n sessionStorage.setItem(\"user\", data.customer.cufname);\r\n\r\n dispatch(ACTIONS.set_Accounts(data.activeAccounts));\r\n\r\n dispatch(ACTIONS.set_Callbacks(data.callbackReasons));\r\n dispatch(ACTIONS.set_num_accounts(data.activeAccounts.length));\r\n if (data.activeAccounts.length == 1) {\r\n dispatch(ACTIONS.set_selectedAccount(data.activeAccounts[0]));\r\n }\r\n dispatch(apiActions.clear());\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Details\", error, context);\r\n }\r\n });\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Welcome Navigation\", error, context);\r\n }\r\n });\r\n getSiteDetails();\r\n };\r\n const getSiteDetails = () => {\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n dispatch(ACTIONS.set_Site(response));\r\n\r\n ReadContext();\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n fetch(URLS.GetUserMessages, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Messages\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n let rows = response.map((x) => {\r\n x.ReceivedAt = fnmoment(x.ReceivedAt).format(\"L HH:MM\");\r\n\r\n return x;\r\n });\r\n setRowdata(rows);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Site Detatils\", error, context);\r\n }\r\n });\r\n };\r\n React.useEffect(() => {\r\n getSiteDetails();\r\n fnmoment.locale(window.navigator.language.toLowerCase());\r\n }, []);\r\n const [showDetails, setShowDetails] = React.useState(false);\r\n const onRowEvent = (row) => {\r\n fetch(\r\n URLS.GetUserMessageDetails +\r\n new URLSearchParams({\r\n MessageId: row.id,\r\n }),\r\n {\r\n method: \"GET\",\r\n\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"Bearer \" + token,\r\n },\r\n }\r\n )\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n ApiErrorHandler(\"Get Message Details\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n setSelectedRow(response);\r\n })\r\n .catch((error) => {\r\n if (error.message == \"\") {\r\n } else {\r\n ApiErrorHandler(\"Get Message Details\", error, context);\r\n }\r\n });\r\n getMenu();\r\n setShowDetails(true);\r\n };\r\n const handleBack = () => {\r\n setShowDetails(false);\r\n };\r\n const handleView = () => {\r\n let pdf = selectedRow.MimeType == \"PDF\" ? true : false;\r\n if (pdf && isMobile) {\r\n window.open(selectedRow.Attachment, \"_blank\");\r\n }\r\n if (!pdf) {\r\n const url = window.URL.createObjectURL(selectedRow.Attachment);\r\n const a = document.createElement(\"a\");\r\n a.style.display = \"none\";\r\n a.href = url;\r\n // the filename you want\r\n a.download = \"todo-1.json\";\r\n document.body.appendChild(a);\r\n a.click();\r\n window.URL.revokeObjectURL(url);\r\n alert(\"your file has downloaded!\"); // or you know, something with better UX...\r\n } else {\r\n dispatch(\r\n documentsActions.viewDocumet({\r\n preview: selectedRow.Attachment,\r\n pdf: pdf,\r\n })\r\n );\r\n openFullscreen();\r\n }\r\n };\r\n var elem = document.documentElement;\r\n\r\n function openFullscreen() {\r\n if (elem.requestFullscreen) {\r\n elem.requestFullscreen();\r\n } else if (elem.webkitRequestFullscreen) {\r\n /* Safari */\r\n elem.webkitRequestFullscreen();\r\n } else if (elem.msRequestFullscreen) {\r\n /* IE11 */\r\n elem.msRequestFullscreen();\r\n }\r\n }\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Message inbox\r\n \r\n onRowEvent(row)}\r\n // getRowClassName={(params) => {\r\n // ;\r\n // let tet = `rowStyle--${\r\n // params.row.Status == \"READ\" ? \".Mui-selected\" : null\r\n // }`;\r\n\r\n // return \".Mui-selected\";\r\n // }}\r\n getRowClassName={(params) =>\r\n `rowStyle--${params.getValue(\r\n params.row.MessageId,\r\n \"Status\"\r\n )}`\r\n }\r\n getRowId={(row) => row.MessageId}\r\n density=\"compact\"\r\n autoHeight=\"true\"\r\n rows={rowdata}\r\n columns={isMobile ? columnsMobile : columnsDesktop}\r\n pageSize={10}\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {selectedRow !== null ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\" \"}\r\n {selectedRow.Reference}, account number:\r\n {selectedRow.CustomerRecNo}\r\n \r\n \r\n \r\n \r\n \r\n {fnmoment(selectedRow.ReceivedAt).format(\r\n \"L HH:MM\"\r\n )}\r\n

\r\n
\r\n
\r\n \r\n \r\n

{selectedRow.Body}

\r\n
\r\n {selectedRow.HasAttachment ? (\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\n ) : null}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\nimport classNames from \"classnames\";\r\n\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport landingPageStyle from \"assets/jss/xrs/views/landingPageStyle.js\";\r\nimport HeaderSectionLoggedID from \"../SectionsPage/Sections/HeaderSectionLoggedID.js\";\r\nimport FaqSection from \"../SectionsPage/Sections/FaqSection.js\";\r\nimport Context from \"../../utils/context\";\r\nimport GridContainer from \"components/Grid/GridContainer.js\";\r\nimport GridItem from \"components/Grid/GridItem.js\";\r\nimport MessagesSection from \"../SectionsPage/Sections/MessagesSection.js\";\r\nimport clsx from \"clsx\";\r\nimport * as URLS from \"../../utils/XRSAPIs\";\r\nimport { isMobile } from \"react-device-detect\";\r\nimport PdfViewer from \"components/PdfViewer/PdfViewer\";\r\nimport FabViewDocument from \"components/Fab/FabViewDocument\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\n\r\nimport { Collapse } from \"@material-ui/core\";\r\nconst useStyles = makeStyles(landingPageStyle);\r\nlet drawerWidth = 150;\r\nif (isMobile) {\r\n drawerWidth = 0;\r\n}\r\nconst useStyles2 = makeStyles((theme) => ({\r\n content: {\r\n paddingTop: 60,\r\n paddingBottom: 38,\r\n flexGrow: 1,\r\n padding: theme.spacing(3),\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n marginLeft: 0,\r\n },\r\n contentShift: {\r\n transition: theme.transitions.create(\"margin\", {\r\n easing: theme.transitions.easing.easeOut,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n marginLeft: drawerWidth,\r\n },\r\n}));\r\n\r\nexport default function MessagesPage(props) {\r\n React.useEffect(() => {\r\n window.scrollTo(0, 0);\r\n document.body.scrollTop = 0;\r\n }, []);\r\n\r\n const context = useContext(Context);\r\n\r\n const classes = useStyles();\r\n const classes2 = useStyles2();\r\n const [page, setPage] = React.useState(1);\r\n const viewDocument = useSelector(\r\n (state) => state.DocumentsReducer.documentToBeViewed\r\n );\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 {viewDocument === \"\" ? null : (\r\n <>\r\n {\" \"}\r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext } from \"react\";\r\n\r\nimport history from \"./utils/history\";\r\nimport Context from \"./utils/context\";\r\nimport MomentUtils from \"@date-io/moment\";\r\n\r\nimport { Router, Route, Switch, Redirect } from \"react-router\";\r\n\r\nimport \"assets/scss/xrs.scss\";\r\n// pages for this product\r\nimport WellcomePage from \"views/WellcomePage/WellcomePage.js\";\r\nimport DocumentsPage from \"views/DocumentsPage/DocumentsPage.js\";\r\n\r\nimport ViewAccountPage from \"views/ViewAccountPage/ViewAccountPage.js\";\r\nimport CreatePayment from \"views/CreatePaymentPage/CreatePaymentPlanPage.js\";\r\nimport LandingPage from \"views/LandingPage/LandingPage.js\";\r\nimport LandingPageCreateUser from \"views/LandingPage/LandingPageCreateUser.js\";\r\nimport QuickPayPage from \"views/QuickPayPage/QuickPayPage.js\";\r\nimport QuickPayPaymentStatus from \"views/QuickPayPage/QuickPayPaymentStatus.js\";\r\nimport PayNowPaymentStatus from \"views/PayNowPage/PayNowPaymentStatus.js\";\r\nimport PayNowPage from \"views/PayNowPage/PayNowPage.js\";\r\nimport ViewOfferPage from \"views/ViewOfferPage/ViewOfferPage.js\";\r\nimport FaqPage from \"views/FaqPage/FaqPage.js\";\r\nimport BudgetPage from \"views/BudgetPage/BudgetPage.js\";\r\nimport RequestCallBackPage from \"views/RequestCallBackPage/RequestCallBackPageLoggendIn.js\";\r\nimport ChangePassword from \"views/ChangePassworOrPin/ChangePasswordOrPinPage.js\";\r\nimport faq from \"views/FaqPageLogin/FaqPageLogin.js\";\r\nimport IframePage from \"views/IframePage/IframePage\";\r\n\r\nimport MessagesPage from \"views/MessagesPage/MessagesPage.js\";\r\n\r\nimport { MuiPickersUtilsProvider } from \"@material-ui/pickers\";\r\nimport { changePassword } from \"utils/XRSAPIs\";\r\n\r\nconst PrivateRoute = ({ component: Component, auth }) => (\r\n \r\n auth === true ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n />\r\n);\r\n\r\nconst Routes = () => {\r\n const context = useContext(Context);\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\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\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 Routes;\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n accounts: \"NoAccounts\",\r\n numOfAccounts: 0,\r\n registrationMethod: null,\r\n};\r\n\r\nexport const AccountsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_ACCOUNTS:\r\n return {\r\n ...state,\r\n accounts: action.payload,\r\n };\r\n case ACTION_TYPES.REGISTRTION_METHOD:\r\n return {\r\n ...state,\r\n registrationMethod: action.payload,\r\n };\r\n case ACTION_TYPES.SET_NUMACCOUNTS:\r\n return {\r\n ...state,\r\n numOfAccounts: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n accounts: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n menu: \"no items\",\r\n};\r\n\r\nexport const MenuReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_MENU:\r\n return {\r\n ...state,\r\n menu: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n menu: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types.js\";\r\n\r\nexport const initialState = {\r\n is_authenticated: false,\r\n profile: null\r\n};\r\n\r\nexport const AuthReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.LOGIN_SUCCESS:\r\n return {\r\n ...state,\r\n is_authenticated: true\r\n };\r\n case ACTION_TYPES.LOGIN_FAILURE:\r\n return {\r\n ...state,\r\n is_authenticated: false\r\n };\r\n case ACTION_TYPES.ADD_PROFILE:\r\n return {\r\n ...state,\r\n profile: action.payload\r\n };\r\n case ACTION_TYPES.REMOVE_PROFILE:\r\n return {\r\n ...state,\r\n profile: null\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n callbacks: \"NoCustomer\",\r\n};\r\n\r\nexport const CallbacksReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_CALLBACKS:\r\n return {\r\n ...state,\r\n callbacks: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n callbacks: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n customer: \"NoCustomer\",\r\n};\r\n\r\nexport const CustomerReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_CUSTOMER:\r\n return {\r\n ...state,\r\n customer: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n customer: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n drawer: true,\r\n num: 1,\r\n};\r\n\r\nexport const DrawerReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_DRAWER:\r\n return {\r\n ...state,\r\n drawer: action.payload,\r\n num: action.num,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n drawer: \"FAILURE\",\r\n num: 0,\r\n };\r\n default:\r\n throw new Error();\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n user_textChange: \"\",\r\n user_textSubmit: \"\",\r\n};\r\n\r\nexport const FormReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.USER_INPUT_CHANGE:\r\n return {\r\n ...state,\r\n user_textChange: action.payload,\r\n };\r\n case ACTION_TYPES.USER_INPUT_SUBMIT:\r\n return {\r\n ...state,\r\n user_textSubmit: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n offer: \"NoOffer\",\r\n};\r\n\r\nexport const OfferReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_OFFER:\r\n return {\r\n ...state,\r\n offer: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n offer: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n stateprop1: false,\r\n stateprop2: false,\r\n};\r\n\r\nexport const Reducer1 = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SUCCESS:\r\n return {\r\n ...state,\r\n stateprop1: true,\r\n stateprop2: true,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n stateprop1: false,\r\n stateprop2: false,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n account: \"NoAccount\",\r\n};\r\n\r\nexport const SelectedAccountsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_SELECTEDACCOUNT:\r\n return {\r\n ...state,\r\n account: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n account: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n site: \"NoSite\",\r\n iframeUrl: \"\",\r\n paymentStatusFrom: \"\",\r\n};\r\n\r\nexport const SiteReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_SITE:\r\n return {\r\n ...state,\r\n site: action.payload,\r\n };\r\n case ACTION_TYPES.PAYMENT_STATUS_FORM:\r\n return {\r\n ...state,\r\n paymentStatusFrom: action.payload,\r\n };\r\n case ACTION_TYPES.IFRAME_URL:\r\n return {\r\n ...state,\r\n iframeUrl: action.payload,\r\n };\r\n case ACTION_TYPES.FAILURE:\r\n return {\r\n ...state,\r\n site: \"FAILURE\",\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import * as ACTION_TYPES from \"../actions/action_types\";\r\n\r\nexport const initialState = {\r\n sessionTimeout: 150000,\r\n overallTimeout: 0,\r\n startOverallTimeout: false,\r\n};\r\n\r\nexport const TimeOutReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case ACTION_TYPES.SET_SESSIONTIMEOUT:\r\n return {\r\n ...state,\r\n sessionTimeout: action.payload,\r\n };\r\n case ACTION_TYPES.SET_OVERALLTIMEOUT:\r\n return {\r\n ...state,\r\n overallTimeout: action.payload,\r\n };\r\n case ACTION_TYPES.SET_STARTOVERALLTIMEOUT:\r\n return {\r\n ...state,\r\n startOverallTimeout: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { container, title, whiteColor, section } from \"assets/jss/xrs.js\";\r\n\r\nconst notificationsStyles = {\r\n section: {\r\n backgroundColor: whiteColor,\r\n display: \"block\",\r\n width: \"100%\",\r\n position: \"relative\",\r\n padding: \"70px 0\",\r\n ...section\r\n },\r\n title: {\r\n ...title,\r\n marginTop: \"30px\",\r\n minHeight: \"32px\",\r\n textDecoration: \"none\"\r\n },\r\n space70: {\r\n height: \"70px\",\r\n display: \"block\"\r\n },\r\n container\r\n};\r\n\r\nexport default notificationsStyles;\r\n","import { API_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n error: false,\r\n errorMessage: \"\",\r\n loading: false,\r\n code: 0,\r\n};\r\n\r\nexport const ApiCallsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case API_ACTION_TYPES.ERROR:\r\n return {\r\n ...state,\r\n errorMessage: action.payload,\r\n error: true,\r\n loading: false,\r\n };\r\n case API_ACTION_TYPES.LOADING:\r\n return {\r\n ...state,\r\n loading: action.payload,\r\n };\r\n case API_ACTION_TYPES.CODE:\r\n return {\r\n ...state,\r\n code: action.payload,\r\n };\r\n case API_ACTION_TYPES.CLEAR:\r\n return {\r\n ...state,\r\n loading: false,\r\n errorMessage: \"\",\r\n error: false,\r\n code: 0,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { GET_SITE_DETAILS_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n logoimageurl: \"\",\r\n footerImageUrl: \"\",\r\n currency: \"\",\r\n paymentProvider: \"\",\r\n deptphonenumber: \"\",\r\n uploadimagestobudget: false,\r\n convenienceFee: 0,\r\n drawers: {\r\n open: false,\r\n openSecond: false,\r\n openThird: false,\r\n lastOpenedDrawer: null, // add a new state variable to store the last opened drawer\r\n },\r\n};\r\n\r\nexport const GetSiteDetailsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case GET_SITE_DETAILS_ACTION_TYPES.CONVENIENCE_FEE:\r\n return {\r\n ...state,\r\n convenienceFee: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.UPLOAD_IMAGE_TO_BUDGET:\r\n return {\r\n ...state,\r\n uploadimagestobudget: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.LOGO:\r\n return {\r\n ...state,\r\n logoimageurl: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.DEPT_NUM:\r\n return {\r\n ...state,\r\n deptphonenumber: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.FOOTER_IMAGE:\r\n return {\r\n ...state,\r\n footerImageUrl: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.CURRENCY:\r\n return {\r\n ...state,\r\n currency: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.PAYMENT_PROVIDER:\r\n return {\r\n ...state,\r\n paymentProvider: action.payload,\r\n };\r\n case GET_SITE_DETAILS_ACTION_TYPES.DRAWER_STATE:\r\n return {\r\n ...state,\r\n drawers: action.payload,\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { HTML_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n termsQuickPay: \"\",\r\n termsPlan: \"\",\r\n termsDiscount: \"\",\r\n\r\n viewOfferText: \"\",\r\n createPlanText: \"\",\r\n createPlantoc: \"\",\r\n createBudgetText: \"\",\r\n viewAccountText: \"\",\r\n\r\n burgerButtonAnimation: true,\r\n};\r\n\r\nexport const HtmlReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case HTML_ACTION_TYPES.TERMS_QUICK_PAY:\r\n return {\r\n ...state,\r\n termsQuickPay: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.TERMS_PLAN:\r\n return {\r\n ...state,\r\n termsPlan: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.TERMS_DISCOUNT:\r\n return {\r\n ...state,\r\n termsDiscount: action.payload,\r\n };\r\n\r\n case HTML_ACTION_TYPES.VIEW_OFFER_TEXT:\r\n return {\r\n ...state,\r\n viewOfferText: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.CREATE_PLAN_TEXT:\r\n return {\r\n ...state,\r\n createPlanText: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.CREATE_PLANTOC:\r\n return {\r\n ...state,\r\n createPlantoc: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.CREATE_BUDGET_TEXT:\r\n return {\r\n ...state,\r\n createBudgetText: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.VIEW_ACCOUNT_TEXT:\r\n return {\r\n ...state,\r\n viewAccountText: action.payload,\r\n };\r\n case HTML_ACTION_TYPES.BURGER_BUTTON_ANIMATION:\r\n return {\r\n ...state,\r\n burgerButtonAnimation: action.payload,\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { CAMERA_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n openFrom: \"\",\r\n capturedImage: \"\",\r\n confirmedImages: [],\r\n};\r\n\r\nexport const CameraReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case CAMERA_ACTION_TYPES.OPEN_CAMERA:\r\n return {\r\n ...state,\r\n openFrom: action.payload,\r\n };\r\n case CAMERA_ACTION_TYPES.SET_IMAGE:\r\n return {\r\n ...state,\r\n capturedImage: action.payload,\r\n };\r\n case CAMERA_ACTION_TYPES.REMOVE_CONFIRMED_IMAGE:\r\n return {\r\n ...state,\r\n confirmedImages: state.confirmedImages.filter(\r\n (item) =>\r\n item.itemId !== action.payload.itemId &&\r\n item.from === action.payload.from\r\n ),\r\n };\r\n case CAMERA_ACTION_TYPES.ADD_CONFIRMED_IMAGE:\r\n return {\r\n ...state,\r\n confirmedImages: [...state.confirmedImages, action.payload],\r\n };\r\n case CAMERA_ACTION_TYPES.RESET_CONFIRMET_IMAGES:\r\n return {\r\n ...state,\r\n confirmedImages: [],\r\n };\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { DOCUMENTS_ACTION_TYPES } from \"../redux-actions/redux_action_types\";\r\n\r\nexport const initialState = {\r\n open: false,\r\n documentToBeViewed: \"\",\r\n};\r\n\r\nexport const DocumentsReducer = (state = initialState, action) => {\r\n switch (action.type) {\r\n case DOCUMENTS_ACTION_TYPES.OPEN:\r\n return {\r\n ...state,\r\n open: action.payload,\r\n };\r\n case DOCUMENTS_ACTION_TYPES.DOCUMENT_TO_BE_VIEWED:\r\n return {\r\n ...state,\r\n documentToBeViewed: action.payload,\r\n };\r\n\r\n default:\r\n return state;\r\n }\r\n};\r\n","import { combineReducers } from \"redux\";\r\nimport { ApiCallsReducer } from \"./apiCalls_reducer\";\r\nimport { GetSiteDetailsReducer } from \"./getSiteDetailsReducer\";\r\nimport { HtmlReducer } from \"./html_reducer\";\r\nimport { TimeOutReducer } from \"../../reducers/timeout_reducer\";\r\nimport { SiteReducer } from \"../../reducers/site_reducer\";\r\nimport { SelectedAccountsReducer } from \"../../reducers/selectedAccounts_reducer\";\r\nimport { Reducer1 } from \"../../reducers/plain_reducer\";\r\nimport { OfferReducer } from \"../../reducers/offer_reducer\";\r\nimport { MenuReducer } from \"../../reducers/menu_reducer\";\r\nimport { FormReducer } from \"../../reducers/form_reducer\";\r\nimport { DrawerReducer } from \"../../reducers/drawer_reducer\";\r\nimport { CustomerReducer } from \"../../reducers/customer_reducer\";\r\nimport { CallbacksReducer } from \"../../reducers/callbacks_reducer\";\r\nimport { AuthReducer } from \"../../reducers/auth_reducer\";\r\nimport { AccountsReducer } from \"../../reducers/accounts_reducer\";\r\nimport { CameraReducer } from \"../redux-reducers/camera_reducer\";\r\nimport { DocumentsReducer } from \"../redux-reducers/documents_reducer\";\r\nimport { RESET_STORE } from \"../redux-actions/redux_action_types\";\r\n\r\nconst appReducer = combineReducers({\r\n ApiCallsReducer,\r\n GetSiteDetailsReducer,\r\n HtmlReducer,\r\n TimeOutReducer,\r\n SiteReducer,\r\n SelectedAccountsReducer,\r\n Reducer1,\r\n OfferReducer,\r\n MenuReducer,\r\n FormReducer,\r\n CustomerReducer,\r\n CallbacksReducer,\r\n AuthReducer,\r\n AccountsReducer,\r\n CameraReducer,\r\n DocumentsReducer,\r\n});\r\nconst rootReducer = (state, action) => {\r\n if (action.type === RESET_STORE) {\r\n state = undefined;\r\n }\r\n return appReducer(state, action);\r\n};\r\nexport default rootReducer;\r\n","import { createStore, applyMiddleware } from \"redux\";\r\nimport thunkMiddleware from \"redux-thunk\";\r\nimport rootReducer from \"./redux-reducers\";\r\n\r\nexport const store = createStore(rootReducer, applyMiddleware(thunkMiddleware));\r\n","import history from \"./history\";\r\nimport React, { useContext } from \"react\";\r\nimport * as URLS from \"./XRSAPIs\";\r\nimport Moment from \"react-moment\";\r\nimport notificationsStyles from \"assets/jss/xrs/views/componentsSections/notificationsStyles\";\r\nimport Context from \"./context\";\r\nimport { ApiErrorHandler } from \"utils/apiErrorHandler\";\r\nimport { store } from \"../store/redux/createReduxStore\";\r\nimport { resetStore } from \"../store/redux/redux-actions/redux_actions\";\r\n\r\nexport default class Auth {\r\n userProfile = {};\r\n static context = Context;\r\n\r\n makeFormEncoder = (hash) => {\r\n return function(key) {\r\n return encodeURIComponent(key) + \"=\" + encodeURIComponent(hash[key]);\r\n };\r\n };\r\n\r\n getBearerToken = (username, password) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.AuthenticationAPIUrl;\r\n\r\n var values = {\r\n grant_type: \"password\",\r\n username: username,\r\n password: password,\r\n validatePIN: \"false\",\r\n client_id: \"PaymentPortal\",\r\n };\r\n const pairs = Object.keys(values).map(this.makeFormEncoder(values));\r\n\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n Logon = (values, firstPosition, secondPosition, thirdPosition) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetTokenURLAPI;\r\n\r\n var formValues = {\r\n grant_type: \"password\",\r\n username: values.username,\r\n password: values.password,\r\n validatePIN: \"true\",\r\n client_id: \"PaymentPortal\",\r\n firstValue: values.firstValue,\r\n firstPosition: firstPosition,\r\n secondValue: values.secondValue,\r\n secondPosition: secondPosition,\r\n thirdValue: values.thirdValue,\r\n thirdPosition: thirdPosition,\r\n };\r\n\r\n const pairs = Object.keys(formValues).map(this.makeFormEncoder(formValues));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n\r\n history.push(`/welcome`);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n RefreshToken = () => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetTokenURLAPI;\r\n let refresh_token = sessionStorage.getItem(\"refresh_token\");\r\n var formValues = {\r\n grant_type: \"refresh_token\",\r\n client_id: \"PaymentPortal\",\r\n refresh_token: refresh_token,\r\n };\r\n const pairs = Object.keys(formValues).map(this.makeFormEncoder(formValues));\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/x-www-form-urlencoded\");\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhr.responseText);\r\n var access_token = json.access_token;\r\n var refresh_token = json.refresh_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(timeoutDate.getSeconds() + expires_in_seconds);\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n sessionStorage.setItem(\"refresh_token\", refresh_token);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n var postValues = pairs.join(\"&\");\r\n xhr.send(postValues);\r\n };\r\n\r\n handleAuth = () => {\r\n this.auth0.parseHash((err, authResult) => {\r\n if (authResult) {\r\n sessionStorage.setItem(\"access_token\", authResult.accessToken);\r\n sessionStorage.setItem(\"id_token\", authResult.idToken);\r\n\r\n let expiresAt = JSON.stringify(\r\n authResult.expiresIn * 1000 + new Date().getTime()\r\n );\r\n sessionStorage.setItem(\"expiresAt\", expiresAt);\r\n\r\n this.getProfile();\r\n setTimeout(() => {\r\n history.replace(\"/authcheck\");\r\n }, 600);\r\n } else {\r\n }\r\n });\r\n };\r\n\r\n getAccessToken = () => {\r\n if (sessionStorage.getItem(\"access_token\")) {\r\n const accessToken = sessionStorage.getItem(\"access_token\");\r\n return accessToken;\r\n } else {\r\n return null;\r\n }\r\n };\r\n\r\n getProfile = () => {\r\n let accessToken = this.getAccessToken();\r\n if (accessToken) {\r\n this.auth0.client.userInfo(accessToken, (err, profile) => {\r\n if (profile) {\r\n this.userProfile = { profile };\r\n }\r\n });\r\n }\r\n };\r\n\r\n logout = () => {\r\n sessionStorage.removeItem(\"access_token\");\r\n\r\n //sessionStorage.removeItem(\"id_token\");\r\n sessionStorage.removeItem(\"expiresAt\");\r\n sessionStorage.removeItem(\"refresh_token\");\r\n sessionStorage.removeItem(\"user\");\r\n // ;\r\n store.dispatch(resetStore());\r\n history.replace(\"/landing-page\");\r\n // history.push(\"/landing-page\");\r\n };\r\n\r\n isAuthenticated = () => {\r\n let expiresAt = JSON.parse(sessionStorage.getItem(\"expiresAt\"));\r\n\r\n return new Date().getTime() < expiresAt;\r\n };\r\n\r\n isAuthenticatedUser = () => {\r\n let expiresAt = new Date(sessionStorage.getItem(\"expiresAt\"));\r\n let now = new Date();\r\n now.setSeconds(now.getSeconds());\r\n if (now.getTime() < expiresAt.getTime()) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n };\r\n\r\n checkToken = () => {\r\n let expiresAt = new Date(sessionStorage.getItem(\"expiresAt\"));\r\n let now = new Date();\r\n now.setSeconds(now.getSeconds() + 10);\r\n if (now.getTime() < expiresAt.getTime()) {\r\n } else {\r\n this.RefreshToken();\r\n }\r\n };\r\n\r\n getPinVerification = (values, record, pin) => {\r\n var xhr = new XMLHttpRequest();\r\n var url = URLS.GetVerifyAPIUrl;\r\n var id = record.id;\r\n var userName = values.regusername;\r\n var password = values.pass;\r\n var phoneConfirmed = record.phoneConfirmed;\r\n var reference = values.customernumber;\r\n var dateOfBirth = values.dob;\r\n var mobileNumber = values.phone;\r\n var customerRecordNo = record.customerRecordNo;\r\n var enteredPIN = pin;\r\n xhr.open(\"POST\", url, true);\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n var verifydata = JSON.stringify({\r\n id: id,\r\n userName: userName,\r\n phoneConfirmed: phoneConfirmed,\r\n reference: reference,\r\n dateOfBirth: dateOfBirth,\r\n mobileNumber: mobileNumber,\r\n customerRecordNo: customerRecordNo,\r\n pin: enteredPIN,\r\n });\r\n\r\n xhr.onreadystatechange = function() {\r\n if (xhr.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var xhrtoken = new XMLHttpRequest();\r\n var urltoken = URLS.GetTokenURLAPI;\r\n\r\n var values = {\r\n grant_type: \"password\",\r\n username: userName,\r\n password: password,\r\n validatePIN: \"false\",\r\n client_id: \"PaymentPortal\",\r\n };\r\n // eslint-disable-next-line no-case-declarations\r\n const pairs = Object.entries(values)\r\n .map(\r\n ([key, value]) =>\r\n `${encodeURIComponent(key)}=${encodeURIComponent(value)}`\r\n )\r\n .join(\"&\");\r\n\r\n xhrtoken.open(\"POST\", urltoken, true);\r\n xhrtoken.setRequestHeader(\r\n \"Content-Type\",\r\n \"application/x-www-form-urlencoded\"\r\n );\r\n\r\n xhrtoken.onreadystatechange = function() {\r\n if (xhrtoken.readyState === 4) {\r\n if (xhr.status == 200 || xhr.status == 201) {\r\n var json = JSON.parse(xhrtoken.responseText);\r\n var access_token = json.access_token;\r\n var expires_in_seconds = json.expires_in;\r\n var timeoutDate;\r\n timeoutDate = new Date();\r\n timeoutDate.setSeconds(\r\n timeoutDate.getSeconds() + expires_in_seconds\r\n );\r\n sessionStorage.setItem(\"expiresAt\", timeoutDate);\r\n sessionStorage.setItem(\"access_token\", access_token);\r\n this.isUserAuthenticated = true;\r\n this.token = access_token;\r\n history.push(`/welcome`);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n\r\n xhrtoken.send(pairs);\r\n } else {\r\n ApiErrorHandler(\"Authentication\", xhr, this.context);\r\n }\r\n }\r\n };\r\n\r\n xhr.send(verifydata);\r\n };\r\n}\r\n","import React from \"react\";\r\nimport styles from \"assets/jss/xrs/components/fabStyle.js\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport CommentOutlinedIcon from \"@material-ui/icons/CommentOutlined\";\r\nimport InsertDriveFileOutlinedIcon from \"@material-ui/icons/InsertDriveFileOutlined\";\r\nimport AddOutlinedIcon from \"@material-ui/icons/AddOutlined\";\r\nimport history from \"utils/history.js\";\r\n\r\nconst useStyles = makeStyles(styles);\r\nexport default function Fab(props) {\r\n const [openFab, setopenFab] = React.useState(false);\r\n\r\n const classes = useStyles();\r\n\r\n if (props.open == true) {\r\n return (\r\n
\r\n setopenFab(!openFab)}\r\n className={classes.fab + \" \" + classes.fabIconHolder}\r\n >\r\n \r\n \r\n \r\n
\r\n\r\n \r\n
  • history.push(\"/documents\")}>\r\n Documents\r\n
    \r\n \r\n \r\n \r\n
    \r\n
  • \r\n
  • \r\n Chat\r\n
    \r\n \r\n \r\n \r\n
    \r\n
  • \r\n \r\n \r\n );\r\n } else {\r\n return
    ;\r\n }\r\n}\r\n","/* eslint-disable react/prop-types */\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport Button from \"components/CustomButtons/Button\";\r\nimport React, { useEffect, useReducer } from \"react\";\r\nimport IdleTimer from \"react-idle-timer\";\r\nimport Routes from \"./routes\";\r\nimport * as ACTIONS from \"./store/actions/actions\";\r\nimport { htmlActions } from \"./store/redux/redux-actions/redux_actions\";\r\n\r\nimport * as AccountsReducer from \"./store/reducers/accounts_reducer.js\";\r\nimport * as MenuReducer from \"./store/reducers/menu_reducer.js\";\r\nimport * as AuthReducer from \"./store/reducers/auth_reducer\";\r\nimport * as CallbacksReducer from \"./store/reducers/callbacks_reducer.js\";\r\nimport * as CustomerReducer from \"./store/reducers/customer_reducer.js\";\r\nimport * as DrawerReducer from \"./store/reducers/drawer_reducer\";\r\nimport * as FormReducer from \"./store/reducers/form_reducer\";\r\nimport * as OfferReducer from \"./store/reducers/offer_reducer.js\";\r\nimport * as Reducer1 from \"./store/reducers/plain_reducer\";\r\nimport * as SelectedAccountsReducer from \"./store/reducers/selectedAccounts_reducer.js\";\r\nimport * as SiteReducer from \"./store/reducers/site_reducer.js\";\r\nimport * as TimeOutReducer from \"./store/reducers/timeout_reducer.js\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport Timer from \"react-compound-timer\";\r\nimport { useInterval } from \"react-interval-hook\";\r\nimport Auth from \"./utils/auth\";\r\nimport history from \"./utils/history\";\r\nimport Context from \"./utils/context\";\r\nimport Fab from \"./components/Fab/Fab\";\r\n\r\nimport Countdown from \"react-countdown\";\r\nimport IntercomComponent from \"./components/Header/IntercomComponent.js\";\r\nimport { set } from \"date-fns/fp\";\r\nimport LinearProgress from \"@material-ui/core/LinearProgress\";\r\n\r\nconst auth = new Auth();\r\n\r\nconst ContextState = () => {\r\n const [IdleOpen, setIdleOpen] = React.useState(false);\r\n\r\n const [enableTimer, setEnableTimer] = React.useState(false);\r\n const dispatch = useDispatch();\r\n\r\n const [InfoOpen, setInfoOpen] = React.useState(false);\r\n const [FabOpen, setFabOpen] = React.useState(false);\r\n const openCamera = useSelector((state) => state.CameraReducer.open);\r\n\r\n const [InfoTitle, setInfoTitle] = React.useState(false);\r\n const [InfoText, setInfoText] = React.useState(false);\r\n const [InforedirectUrl, setInforedirectUrl] = React.useState(\"\");\r\n const loading = useSelector((state) => state.ApiCallsReducer.loading);\r\n const sessionTimeout = useSelector(\r\n (state) => state.TimeOutReducer.sessionTimeout\r\n );\r\n const overallTimeout = useSelector(\r\n (state) => state.TimeOutReducer.overallTimeout\r\n );\r\n const startOverallTimeout = useSelector(\r\n (state) => state.TimeOutReducer.startOverallTimeout\r\n );\r\n const TokenTimer = () => {\r\n if (tokenInterval != \"\") {\r\n clearInterval(tokenInterval);\r\n }\r\n let tokenTimeout = sessionStorage.getItem(\"expiresInSeconds\") * 1000;\r\n\r\n var interval = setInterval(() => {\r\n auth.checkToken();\r\n\r\n dispatch(ACTIONS.set_startoveralltimeout(true));\r\n }, tokenTimeout - sessionTimeout);\r\n setTokenInterval(interval);\r\n };\r\n const [tokenInterval, setTokenInterval] = React.useState(\"\");\r\n\r\n React.useEffect(() => {\r\n if (auth.isAuthenticatedUser()) {\r\n if (openCamera) {\r\n setFabOpen(false);\r\n } else {\r\n if (!FabOpen) {\r\n setFabOpen(true);\r\n }\r\n }\r\n setTimeout(() => {\r\n dispatch(htmlActions.setBurgerAnimation(false));\r\n }, 3000);\r\n } else {\r\n setFabOpen(false);\r\n }\r\n }, [openCamera, auth.isAuthenticatedUser()]);\r\n React.useEffect(() => {\r\n if (startOverallTimeout) {\r\n clearInterval(tokenInterval);\r\n TokenTimer();\r\n dispatch(ACTIONS.set_startoveralltimeout(false));\r\n }\r\n return () => {\r\n clearInterval(tokenInterval);\r\n };\r\n }, [startOverallTimeout]);\r\n const [planText, setPlanText] = React.useState(\"\");\r\n\r\n const [drawerReducer, dispatchDrawer] = useReducer(\r\n DrawerReducer.DrawerReducer,\r\n DrawerReducer.initialState\r\n );\r\n\r\n const [drawerReducerOne, dispatchDrawerOne] = useReducer(\r\n DrawerReducer.DrawerReducer,\r\n DrawerReducer.initialState\r\n );\r\n const [drawerReducerTwo, dispatchDrawerTwo] = useReducer(\r\n DrawerReducer.DrawerReducer,\r\n DrawerReducer.initialState\r\n );\r\n const [drawerReducerThree, dispatchDrawerThree] = useReducer(\r\n DrawerReducer.DrawerReducer,\r\n DrawerReducer.initialState\r\n );\r\n\r\n const handleDispatchDrawer = (offer) => {\r\n dispatchDrawer(ACTIONS.set_Drawer(offer));\r\n };\r\n const handleDispatchDrawerOne = (offer) => {\r\n dispatchDrawerOne(ACTIONS.set_Drawer(offer));\r\n };\r\n const handleDispatchDrawerTwo = (offer) => {\r\n dispatchDrawerTwo(ACTIONS.set_Drawer(offer));\r\n };\r\n const handleDispatchDrawerThree = (offer) => {\r\n dispatchDrawerThree(ACTIONS.set_Drawer(offer));\r\n };\r\n\r\n const [offerReducer, dispatchOfferReducer] = useReducer(\r\n OfferReducer.OfferReducer,\r\n OfferReducer.initialState\r\n );\r\n\r\n const [menuReducer, dispatchMenuReducer] = useReducer(\r\n MenuReducer.MenuReducer,\r\n MenuReducer.initialState\r\n );\r\n\r\n const handleDispatchOffer = (offer) => {\r\n dispatchOfferReducer(ACTIONS.set_Offer(offer));\r\n };\r\n\r\n const [customerReducer, dispatchCustomerReducer] = useReducer(\r\n CustomerReducer.CustomerReducer,\r\n CustomerReducer.initialState\r\n );\r\n\r\n const handleDispatchCustomer = (customer) => {\r\n dispatchCustomerReducer(ACTIONS.set_Customer(customer));\r\n };\r\n\r\n const [accountsReducer, dispatchAccountsReducer] = useReducer(\r\n AccountsReducer.AccountsReducer,\r\n AccountsReducer.initialState\r\n );\r\n\r\n const [selectAccountReducer, dispatchsSlectAccountReducer] = useReducer(\r\n SelectedAccountsReducer.SelectedAccountsReducer,\r\n SelectedAccountsReducer.initialState\r\n );\r\n const handleDispatchSelectAccountReducer = (account) => {\r\n dispatchsSlectAccountReducer(ACTIONS.set_selectedAccount(account));\r\n };\r\n\r\n const handleDispatchSite = (site) => {\r\n dispatchSiteReducer(ACTIONS.set_Site(site));\r\n };\r\n\r\n const [siteReducer, dispatchSiteReducer] = useReducer(\r\n SiteReducer.SiteReducer,\r\n SiteReducer.initialState\r\n );\r\n\r\n const handleDispatchCallbacks = (callbacks) => {\r\n dispatchCallbacksReducer(ACTIONS.set_Callbacks(callbacks));\r\n };\r\n\r\n const [callbacksReducer, dispatchCallbacksReducer] = useReducer(\r\n CallbacksReducer.CallbacksReducer,\r\n CallbacksReducer.initialState\r\n );\r\n\r\n const [numAccounts, setNumAccounts] = React.useState(1);\r\n\r\n const handleDispatchAccounts = (accounts) => {\r\n setNumAccounts(accounts.length);\r\n dispatchAccountsReducer(ACTIONS.set_Accounts(accounts));\r\n };\r\n\r\n const handleMenuReducer = (menu) => {\r\n dispatchMenuReducer(ACTIONS.set_menu(menu));\r\n };\r\n\r\n const [stateReducer1, dispatchReducer1] = useReducer(\r\n Reducer1.Reducer1,\r\n Reducer1.initialState\r\n );\r\n\r\n const handleDispatchTrue = () => {\r\n // dispatchReducer1(type: \"SUCCESS\")\r\n // dispatchReducer1(ACTIONS.SUCCESS)\r\n dispatchReducer1(ACTIONS.success());\r\n };\r\n\r\n const handleDispatchFalse = () => {\r\n // dispatchReducer1(type: \"FAILURE\")\r\n // dispatchReducer1(ACTIONS.FAILURE)\r\n dispatchReducer1(ACTIONS.failure());\r\n };\r\n\r\n /*\r\n Auth Reducer\r\n */\r\n const [stateAuthReducer, dispatchAuthReducer] = useReducer(\r\n AuthReducer.AuthReducer,\r\n AuthReducer.initialState\r\n );\r\n\r\n const handleLogin = () => {\r\n dispatchAuthReducer(ACTIONS.login_success());\r\n };\r\n\r\n const handleLogout = () => {\r\n dispatchAuthReducer(ACTIONS.login_failure());\r\n };\r\n\r\n const handleAddProfile = (profile) => {\r\n dispatchAuthReducer(ACTIONS.add_profile(profile));\r\n };\r\n\r\n const handleRemoveProfile = () => {\r\n dispatchAuthReducer(ACTIONS.remove_profile());\r\n };\r\n\r\n /*\r\n Form Reducer\r\n */\r\n\r\n const [stateFormReducer, dispatchFormReducer] = useReducer(\r\n FormReducer.FormReducer,\r\n FormReducer.initialState\r\n );\r\n\r\n const handleFormChange = (event) => {\r\n dispatchFormReducer(ACTIONS.user_input_change(event.target.value));\r\n };\r\n\r\n const OpenInfoDialog = (title, text, redirectUrl) => {\r\n setInfoOpen(true);\r\n setInfoTitle(title);\r\n setInfoText(text);\r\n if (redirectUrl != null) {\r\n setInforedirectUrl(redirectUrl);\r\n }\r\n //auth.logout();\r\n };\r\n\r\n const handleFormSubmit = (event) => {\r\n event.preventDefault();\r\n event.persist();\r\n dispatchFormReducer(\r\n ACTIONS.user_input_submit(event.target.useContext.value)\r\n );\r\n };\r\n\r\n //Handle authentication from callback\r\n const handleAuthentication = (props) => {\r\n if (props.location.hash) {\r\n auth.handleAuth();\r\n }\r\n };\r\n\r\n const onAction = (e) => {\r\n if (auth.isAuthenticatedUser()) {\r\n auth.checkToken();\r\n } else {\r\n // setFabOpen(false);\r\n }\r\n };\r\n\r\n const onActive = (e) => {};\r\n\r\n const onIdle = (e) => {\r\n if (auth.isAuthenticatedUser()) {\r\n handleIdleOpen(true);\r\n }\r\n };\r\n\r\n const handleIdleOpen = () => {\r\n setInfoOpen(false);\r\n\r\n setIdleOpen(true);\r\n };\r\n\r\n const handleClose = (value) => {\r\n if (value === 1) {\r\n auth.checkToken();\r\n } else {\r\n auth.logout();\r\n }\r\n setIdleOpen(false);\r\n };\r\n const handleInfoClose = (value, redirect) => {\r\n setInfoOpen(false);\r\n if (redirect != \"\") {\r\n history.push(redirect);\r\n }\r\n };\r\n\r\n const handleIntercomKey = (value, visible) => {\r\n setIntercomKey(value);\r\n setIntercomVisible(visible);\r\n };\r\n\r\n const [selectedValue, setSelectedValue] = React.useState(0);\r\n\r\n const [IntercomKey, setIntercomKey] = React.useState(\"\");\r\n const [IntercomVisible, setIntercomVisible] = React.useState(false);\r\n\r\n // const handleDispatchSessionTimeout = (timeout) => {\r\n // dispatchSessionTimeout(ACTIONS.set_sessiontimeout(timeout));\r\n // };\r\n // const handleDispatchOverallTimeout = (timeout) => {\r\n // dispatchOverallTimeout(ACTIONS.set_overalltimeout(timeout));\r\n // };\r\n\r\n // const [sessionTimeout, dispatchSessionTimeout] = useReducer(\r\n // TimeOutReducer.TimeOutReducer,\r\n // TimeOutReducer.initialState.sessionTimeout\r\n // );\r\n // const [overallTimeout, dispatchOverallTimeout] = useReducer(\r\n // TimeOutReducer.TimeOutReducer,\r\n // TimeOutReducer.initialState.overallTimeout\r\n // );\r\n\r\n return (\r\n
    \r\n {loading == true ? : null}\r\n\r\n handleDispatchTrue(),\r\n dispatchContextFalse: () => handleDispatchFalse(),\r\n\r\n stateDrawer: drawerReducer.drawer,\r\n dispatchDrawer: (state) => handleDispatchDrawer(state),\r\n dispatchDrawerOne: (state) => handleDispatchDrawerOne(state),\r\n dispatchDrawerTwo: (state) => handleDispatchDrawerTwo(state),\r\n dispatchDrawerThree: (state) => handleDispatchDrawerThree(state),\r\n\r\n dispatchIntercomKey: (key, visible) =>\r\n handleIntercomKey(key, visible),\r\n\r\n stateOne: drawerReducerOne.drawer,\r\n stateTwo: drawerReducerTwo.drawer,\r\n stateThree: drawerReducerThree.drawer,\r\n\r\n statePlanText: planText,\r\n setstatePlanText: (value) => setPlanText(value),\r\n\r\n stateCallbacks: callbacksReducer.callbacks,\r\n dispatchCallbacksReducer: (callbacks) =>\r\n handleDispatchCallbacks(callbacks),\r\n\r\n stateInfoDialog: (title, value, redirectUrl) =>\r\n OpenInfoDialog(title, value, redirectUrl),\r\n\r\n stateSelectedAccount: selectAccountReducer.account,\r\n dispatchSelectAccountReducer: (account) =>\r\n handleDispatchSelectAccountReducer(account),\r\n\r\n stateCustomer: customerReducer.customer,\r\n dispatchCustomerReducer: (customer) =>\r\n handleDispatchCustomer(customer),\r\n\r\n dispatchMenuReducer: (menu) => handleMenuReducer(menu),\r\n\r\n stateMenu: menuReducer.menu,\r\n\r\n stateAccounts: accountsReducer.accounts,\r\n stateNumAcctions: numAccounts,\r\n dispatchAccountsReducer: (accounts) =>\r\n handleDispatchAccounts(accounts),\r\n\r\n stateSite: siteReducer.site,\r\n dispatchSiteReducer: (site) => handleDispatchSite(site),\r\n\r\n // stateSessionTimeout: sessionTimeout.sessionTimeout,\r\n // dispatchSessionTimeoutReducer: (time) =>\r\n // handleDispatchSessionTimeout(time),\r\n\r\n // stateOverallTimeout: overallTimeout.overallTimeout,\r\n // dispatchOverallTimeoutReducer: (time) =>\r\n // handleDispatchOverallTimeout(time),\r\n\r\n stateOffer: offerReducer.offer,\r\n dispatchOfferReducer: (offer) => handleDispatchOffer(offer),\r\n //Form Reducer\r\n useContextChangeState: stateFormReducer.user_textChange,\r\n useContextSubmitState: stateFormReducer.user_textSubmit,\r\n useContextSubmit: (event) => handleFormSubmit(event),\r\n useContextChange: (event) => handleFormChange(event),\r\n\r\n //Auth Reducer\r\n authState: stateAuthReducer.is_authenticated,\r\n profileState: stateAuthReducer.profile,\r\n handleUserLogin: () => handleLogin(),\r\n handleUserLogout: () => handleLogout(),\r\n handleUserAddProfile: (profile) => handleAddProfile(profile),\r\n handleUserRemoveProfile: () => handleRemoveProfile(),\r\n\r\n //Handle auth\r\n handleAuth: (props) => handleAuthentication(props),\r\n authObj: auth,\r\n }}\r\n >\r\n \r\n\r\n \r\n\r\n handleClose(e)}\r\n />\r\n handleInfoClose(e, redirect)}\r\n />\r\n\r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default ContextState;\r\n\r\nconst useStyles = makeStyles({\r\n button: {\r\n textAlign: \"center\",\r\n },\r\n});\r\n\r\nif (window.performance) {\r\n if (performance.navigation.type == 1) {\r\n auth.logout();\r\n }\r\n}\r\n\r\nfunction IdleDialog(props) {\r\n const classes = useStyles();\r\n const { onClose, selectedValue, open } = props;\r\n const [left, setLeft] = React.useState(0);\r\n const { value, setValue } = React.useState(0);\r\n const calculateLeft = (from) => {\r\n return from - left;\r\n };\r\n const [autoLogout, setAutoLogout] = React.useState(60);\r\n const [display, setDisplay] = React.useState(60);\r\n const handleClose = (e) => {\r\n onClose(e);\r\n setAutoLogout(0);\r\n };\r\n const handleListItemClick = (value) => {\r\n onClose(value);\r\n };\r\n\r\n return (\r\n \r\n Session Expiry\r\n \r\n You will be logged out due to inactivity on this session. If you wish\r\n keep the session open, click Yes immediately. Do you wish to continue?\r\n (Yes or No)\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction InfoDialog(props) {\r\n const classes = useStyles();\r\n const { onClose, open, title, text, redirectUrl } = props;\r\n const { value, setValue } = React.useState(0);\r\n const handleClose = (e) => {\r\n onClose(e, redirectUrl);\r\n };\r\n\r\n const handleListItemClick = (value) => {\r\n onClose(value, redirectUrl);\r\n };\r\n\r\n return (\r\n \r\n {title}\r\n {text}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport history from \"./utils/history\";\r\n\r\nimport ContextState from \"./context_state_config\";\r\nimport { primaryColor } from \"assets/jss/xrs.js\";\r\nimport ReactGA from \"react-ga\";\r\nimport * as URLS from \"./utils/XRSAPIs\";\r\n\r\nimport { Provider } from \"react-redux\";\r\nimport { store } from \"./store/redux/createReduxStore\";\r\n\r\nconst App = () => {\r\n const [trackingCode, settrackingCode] = React.useState(null);\r\n const [trackingCodeInit, settrackingCodeInit] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n document.body.style.backgroundColor = primaryColor[14];\r\n\r\n fetch(URLS.GetSiteDetatilsAPIUrl, {\r\n method: \"GET\",\r\n })\r\n .then((res) => {\r\n if (res.status == 200 || res.status == 201) {\r\n return res.json();\r\n } else {\r\n res.json().then((data) => {\r\n // ApiErrorHandler(\"Get Site Detatils\", data, context);\r\n });\r\n throw Error(\"\");\r\n }\r\n })\r\n .then((response) => {\r\n settrackingCode(response.trackingcode);\r\n })\r\n .catch((error) => {});\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (trackingCode) {\r\n ReactGA.initialize(trackingCode);\r\n settrackingCodeInit(true);\r\n }\r\n }, [trackingCode]);\r\n\r\n React.useEffect(() => {\r\n if (trackingCodeInit) {\r\n const unlisten = history.listen((location) => {\r\n ReactGA.pageview(location.pathname);\r\n });\r\n return () => {\r\n unlisten();\r\n };\r\n }\r\n }, [history]);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default App;\r\n","import React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\n\r\nimport App from \"./App\";\r\n\r\nReactDOM.render(, document.getElementById(\"root\"));\r\n"],"sourceRoot":""}