{"version":3,"sources":["components/utils/debounce.ts","services/storageHelper.ts","Context/AuthContext.js","config/domain.ts","components/utils/eventEmitter.ts","services/clevertapService.ts","assets/images/white-labelled-solution.svg","assets/images/non-interface-apis.svg","assets/images/software-dev-kits.svg","assets/images/smallcase-partner.svg","assets/images/stratzy-partner.svg","assets/images/5nance-partner.svg","assets/images/pivot-trading-partner.svg","assets/images/quantsapp-partner.svg","Containers/Constants/commenFeatures.ts","services/login/loginService.ts","services/sessionTimeout.ts","services/apiService.ts","config/login/loginURLConfig.ts","services/login/loginApiService.ts","services/indentifyDevice.ts","components/login/generic/loginPopup.tsx","components/login/generic/loginErrMsg.tsx","components/utils/validation.ts","components/utils/regex.ts","components/generic/inputField.tsx","components/generic/edButton.tsx","components/VendorComponents/VendorLogin/Forms/LoginForm.tsx","assets/new_images/nuvama-logo.svg","components/VendorComponents/VendorLogin/LoginScreen/LoginScreen.tsx","services/encription/encriptionServices.ts","Containers/Routes/constents.ts","services/encription/encryption.js","Containers/Client/Login/loginConstants.ts","config/MyApp/myAppsURLConfig.ts","services/MyApps/myAppServise.js","Containers/vendor/Login/VendorLoginCtrl.tsx","components/VendorComponents/VendorLogin/Forms/ForgotPasswordForm.tsx","components/VendorComponents/VendorLogin/LoginScreen/ForgotPassword.tsx","Containers/vendor/Login/VendorForgetPassword.tsx","components/generic/confirmPassword.tsx","components/VendorComponents/VendorLogin/Forms/SetPasswordForm.tsx","components/VendorComponents/VendorLogin/LoginScreen/SetPassword.tsx","Containers/vendor/Login/VendorSetPassword.tsx","services/genralServise.ts","components/login/generic/loginFormBtmTxt.tsx","components/login/generic/yobInputField.tsx","components/login/forms/loginIdForm.tsx","components/login/loginScreen/loginIdScreen.tsx","components/generic/radioButton.tsx","components/login/forms/passwordForm.tsx","components/login/loginScreen/passwordScreen.tsx","components/login/loginScreen/yobScreen.tsx","components/login/generic/loginStatus.tsx","components/login/loginScreen/loginStatusScreen.tsx","components/generic/autocomplete.tsx","components/login/forms/leadForm.tsx","components/login/loginScreen/leadFormScreen.tsx","components/generic/loader.tsx","components/login/loginScreen/loginLoaderScreen.tsx","components/login/loginScreen/loginWithApi.tsx","assets/images/defaultAppIcon.svg","components/login/loginScreen/yobWithApi.tsx","components/login/loginScreen/passwordWithApi.tsx","components/utils/countDown.ts","components/login/forms/otpForm.tsx","components/login/loginScreen/otpScreen.tsx","components/login/loginScreen/otpWithApi.tsx","components/login/forms/etotpPasswordForm.tsx","components/login/loginScreen/etotpScreen.tsx","components/login/loginScreen/etotpWithApi.tsx","Containers/Client/Login/loginCtrl.tsx","components/types/components/login/loginTypes.ts","components/login/forms/forgotLoginIdForm.tsx","components/login/loginScreen/forgotLoginIdScreen.tsx","components/login/forms/forgotPasswordForm.tsx","components/login/forms/resetPassword.tsx","components/login/forms/resetOtpPassword.tsx","components/login/loginScreen/forgotPasswordScreen.tsx","components/login/forms/unblockAccForm.tsx","components/login/loginScreen/unblockAccScreen.tsx","components/login/loginScreen/loginHelp.tsx","Containers/Routes/Login/LoginRoutes.js","Containers/ScrollToTop/index.js","Containers/Common/Header/HeaderAuth.js","Containers/Common/Header/HeaderUnauth.js","Containers/Common/Header/HeaderUnTnc.js","Containers/Common/Header/index.js","Containers/Layout/VendorPrivateRoute.js","Containers/Layout/HeaderLayoutRoute.js","assets/images/graphQuery.svg","components/VendorComponents/DashBoard/generic/ChartTocDropdown.tsx","components/VendorComponents/DashBoard/generic/ColoumnsHeader.tsx","components/utils/dateCalculater.js","assets/images/win_one.svg","assets/images/win_two.svg","assets/images/win_three.svg","assets/images/win_four.svg","assets/images/win_five.svg","assets/images/rupee_currency.svg","components/VendorComponents/DashBoard/utlits.ts","components/VendorComponents/DashBoard/generic/NoDataFound.tsx","components/VendorComponents/DashBoard/Graphs/LTStatisticsGraph/LSAreaChart.tsx","components/VendorComponents/DashBoard/Graphs/LTStatisticsGraph/LSStackColChart.tsx","components/VendorComponents/DashBoard/Graphs/LTStatisticsGraph/LSColLineChart.tsx","components/VendorComponents/DashBoard/Graphs/LTStatisticsGraph/LSPaiChart.tsx","Containers/vendor/DashBoard/DBCosntants.ts","components/VendorComponents/DashBoard/DBSections/LT_Statistics.tsx","assets/images/equity_db_icon.svg","assets/images/commodity_db_icon.svg","assets/images/currency_db_icon.svg","assets/images/derivatives_db_icon.svg","components/VendorComponents/DashBoard/Graphs/V_StatisticsGraph/VS_BarChart.tsx","components/VendorComponents/DashBoard/Graphs/V_StatisticsGraph/VS_HeatMapChart.tsx","components/VendorComponents/DashBoard/Graphs/V_StatisticsGraph/VS_TopLeader.tsx","components/VendorComponents/DashBoard/Graphs/V_StatisticsGraph/VS_TopSales.tsx","components/VendorComponents/DashBoard/DBSections/Vol_Statistics.tsx","components/VendorComponents/DashBoard/Graphs/Other_statistics/OS_LineChart.tsx","components/VendorComponents/DashBoard/Graphs/Other_statistics/OS_UserDetails.tsx","components/VendorComponents/DashBoard/DBSections/Oth_Statistics.tsx","components/VendorComponents/DashBoard/DBComponent.tsx","assets/images/db_mail_icon.svg","assets/images/db_phone_icon.svg","components/VendorComponents/DashBoard/VendorCalander.tsx","components/CommonCompnents/ErrorMsg.js","config/socialsLinks.ts","Containers/vendor/DashBoard/Dashboard.tsx","Containers/vendor/MySubscriptions/subscriptionsConstent.ts","components/VendorComponents/MySubscriptions/SubscriptionsList.tsx","components/generic/dragAndDrop.tsx","components/utils/formValidate.js","components/VendorComponents/MySubscriptions/SubscriptionForm.tsx","assets/images/create.svg","components/CommonCompnents/CreateAppBtn.tsx","assets/images/welcome-api-connect.png","components/CommonCompnents/NoAppComponent.tsx","Containers/vendor/MySubscriptions/index.tsx","components/CommonCompnents/Home/OfferSection.tsx","components/CommonCompnents/Home/GetAccess.tsx","assets/images/facebook.svg","assets/images/linkedin.svg","assets/images/instagram.svg","assets/images/twitter.svg","Containers/Common/Footer/index.js","Containers/vendor/Signup/signupConstensts.ts","config/signup/signupConfig.js","services/Signup/SignupApiServices.js","Containers/vendor/Signup/ReqACall.tsx","assets/images/nuvama-white-logo.svg","components/VendorComponents/VendorSignup/VendorSignup.tsx","Containers/vendor/Signup/Signup.tsx","Containers/Routes/VendorRoutes/VendorRoutes.tsx","assets/images/ArticleThumbnail.svg","components/CommonCompnents/resourcePage/Article.js","components/CommonCompnents/resourcePage/VideoBanner.js","components/CommonCompnents/resourcePage/Video.js","assets/images/trading-control.svg","assets/images/offerings.svg","assets/images/python.svg","assets/images/node.svg","assets/images/java.svg","config/faqs&Resourse/faqsConfig.js","services/Faqs&Resourse/faqsServices.js","services/Faqs&Resourse/resource.js","Containers/Common/Home/index.js","assets/images/right-arrow.svg","assets/images/FinTech.svg","assets/images/Individual.svg","components/ClientComponents/Signup/SignupForm.js","Containers/Client/Signup/constent.js","Containers/Client/Signup/index.js","assets/images/nuvama-icon.png","components/CommonCompnents/Tnc.js","Containers/Common/TncPage/index.js","components/CommonCompnents/Support/Search.js","components/CommonCompnents/Support/SideBar.js","assets/images/supportChatQIcon.svg","assets/images/supportChatCrossIcon.svg","assets/images/supportChatIcon.svg","assets/images/supportChatDownIcon.svg","components/CommonCompnents/Support/Faqs.js","Containers/Common/Support/index.js","assets/images/articleImgOne.png","components/CommonCompnents/resourcePage/SearchBtnGroup.js","components/CommonCompnents/resourcePage/ArticleBanner.js","Containers/Common/Resouces/ArticlePage.js","Containers/Common/Resouces/ArticleDetails/ArticleDetails.js","Containers/Common/Resouces/VideoPage.js","Containers/Common/Resouces/VideoDetails/VideoDetail.js","Containers/Common/Resouces/index.js","Containers/Common/Resouces/SearchResult.js","assets/images/TotpIcon.png","components/generic/confirmPopup.tsx","assets/images/greenTick.png","Containers/Common/ExternalTOTP/enableFlow.tsx","services/ExternalTOTP/etotpApiService.ts","Containers/Common/ExternalTOTP/disableFlow.tsx","Containers/Common/ExternalTOTP/index.js","Containers/Routes/CommonRoutes/CommonRoutes.tsx","Containers/Layout/PrivateRoute.js","Containers/Client/MyApp/myAppConstents.ts","components/ClientComponents/MyApp/AppForm.js","components/ClientComponents/MyApp/MyAppsComponent.js","assets/images/delete-api-app.svg","components/ClientComponents/MyApp/DeleteModal.js","components/ClientComponents/Analytics/GraphChart.js","components/ClientComponents/Analytics/Calander.js","components/ClientComponents/Analytics/StockBarChart.js","components/ClientComponents/Analytics/generic/genericTypes.js","components/ClientComponents/Analytics/HorizontalChart.js","components/ClientComponents/Analytics/index.js","Containers/Client/MyApp/index.js","Containers/Routes/ClientRoutes/ClientRoutes.tsx","Containers/Routes/index.js","Containers/App/index.js","index.js"],"names":["debounceTimer","debounce","func","delay","context","this","args","arguments","clearTimeout","global","setTimeout","apply","storage","MyAuthContext","React","createContext","config","root","jmw","jmw_content","key_clock_vendor","jmw_client_docs","jmw_partner_docs","jmw_order_trade_docs","jmw_login","python_language","node_language","c_language","java_language","appId","cleverTapId","taskLead","appIdKey","rootUrl","openNewAcc","configURL","appidkey","appid","urlConfig","session","window","sessionStorage","local","localStorage","cookie","document","appInfo","JWT","bStrg","key","parsedToken","jwt_token","ee","EventEmitter","ClevertapService","getIdentity","cleverTapObject","accName","uniqueId","accTyp","decode","LoginService","getAccData","accCode","prefAccTyp","eqAccID","coAccID","eqAccName","coAccName","getClevertapItem","value","getItem","JSON","parse","undefined","Date","split","setClevertapItem","obj","clevertapData","setItem","stringify","removeClevertapItem","forEach","k","saveClevertapData","clevertap","getCleverTapID","login","cleverTapDetails","prfId","lastLoginDetails","showClevertapNotification","notifications","push","titleText","bodyText","okButtonText","rejectButtonText","okButtonColor","askAgainTimeInSeconds","serviceWorkerPath","process","data","event","EventName","onUserLogin","console","log","constants","removeServerErrors","setServerErrors","timing","LoginKeys","keyClockclient","clientID","clientName","scope","passwordHints","checkLength","sameAsLoginId","NoSpace","upLowCase","alpNumSpcl","splNotAllow","DateFormat","date","format","moment","addTolocalStorage","name","val","getTolocalStorage","result","removeTolocalStorage","removeItem","Offers","title","description","image","whiteLabelledSolution","nonInterfaceApis","softwareDevKits","OfferTitle","GetAccecssTitle","GetAccessHome","heading","sub_heading","GetAccessSignup","PartnersDetails","icon","SmallCaseIcon","StratzyIcon","FiveNanceIcon","PivotTradingIcon","QuantsappIcon","errorsMsg","accData","temp","userID","accs","uid","mtf","sts","adhrEQ","stat","brkCode","eqBrk","adhrCOM","coBrk","eqRmRt","wtspCnsnt","_jwtToken","token","pToken","_pToken","jwtToken","preLoginData","pwd","authorization","removeAccData","lgnSrc","emit","fromUrl","reUrl","invtypeobj","popupName","params","vendorDetails","hideCross","isLoggedIn","isVendorLoggedIn","getPreLoginData","setPreLoginData","vendorLogout","saveDataInLocalStorage","cleverTapRegistration","clevertapService","lastcleverTapDetails","pushOnUserLogin","Site","Name","Identity","AccountType","profileID","getUserID","setAccData","logout","parseQuery","queryString","substring","reduce","acc","element","pair","decodeURIComponent","handleSessionTimeout","newResp","res","status","response","infoID","location","href","ASaveQueryData","getToken","apiService","req","callback","abortController","a","Abort_Controller","AbortController","method","headers","authType","auth_token","access_token","SPK","CPK","SEPRK","search","api_key","Source","sourcetoken","SourceToken","body","signal","fetch","url","resp","json","then","catch","error","errMsg","loginURLConfig","CommKambala","accounts","URLConfig","loginHelp","account","consent","submitConsent","merge","raterm","commAccOpen","adhoc","vendor_login","vendor_forget_password","vendor_reset_password","openAccount","getServerKey","etotpBaseUrl","AGetValidateUserId","userId","logo","AValidatePassword","ff","ip","vndSrc","ATotpLogin","totp","loginFlow","pL","A2FaLogin","otp","twoFactor","appData","vendor","AForgotPasswordOTP","loginId","AValidateOTP","AClientResetPassword","nePwd","password","coPwd","confirmPassword","AClientKamResetPassword","AGetCities","srchstr","ACommAccOpenPre","DeviceContext","isMobile","offsetWidth","isTablet","isDesktop","LoginPopup","props","className","overlayClass","leftHeaderContent","centerHeaderContent","onClose","onClick","children","LoginErrMsg","isValidRegex","regex","test","integerExp","alphabetExp","alphaNumExp","UserIdExp","emailRegex","betweenNChars","min","max","RegExp","pan","phoneNo","ValidateIPaddress","notAllowedSplExp","lowerUpperCase","anumNSplCase","noSpaceCase","checkPasswordStranth","email","list","InputField","defaultValue","setValue","focusClass","setFocusClass","isRequired","required","isLessThanMin","isNaN","Error","grtrThanEqTo","isGrtrThanMax","lessThanEqTo","isValidPattern","pattern","errorText","prefix","onChange","e","resolvedValue","type","target","integer","isValidInteger","float","isValidFloat","alphanum","isValidAlphaNum","maxLength","length","isValidMaxLength","newValue","placeholder","onFocus","onBlur","errorObj","getValue","id","autoComplete","autoFocus","suffix","helpText","helpTextColor","EdButton","btnOrActionClass","btnTyp","slim","disabled","LoginForm","useState","username","loginFormErr","setLoginFormErr","showPassword","setShowPassword","useEffect","errorMsg","onRemoveError","loginForm","onSubmit","preventDefault","htmlFor","userName","setLoginForm","disableForm","Object","values","some","to","LoginScreen","src","NuvamaLogo","alt","RoutesUrl","rsaAoepKeyPair","exportRsaPublicKey","ELoginScreenState","ELoginPopupState","hashingFeatures","inputBytes","TextEncoder","encode","crypto","subtle","digest","hashBytes","hax","buffer","Array","prototype","map","call","Uint8Array","x","toString","slice","join","ab2str","buf","String","fromCharCode","getMessageForEncryption","message","getArrayBuffer","str","ArrayBuffer","bufView","i","strLen","charCodeAt","str2ab","atob","generateRsaKey","generateKey","modulusLength","publicExponent","hash","exportRsaCryptoKey","publicKey","exportKey","exported","exportedAsString","exportedAsBase64","btoa","importRsaKey","publicKeyArrBuffer","importKey","cryptoKeyObj","rsaEncryptMessage","encoded","encrypt","rsaCipheredtext","rsaDecryptMessage","privateKey","encryptedArrayBuffer","decrypt","decrypted","dec","TextDecoder","decryptedMessage","generateAesKey","aesGcmSecretKey","exportAesCryptoKey","exportedKeyBuffer","importAesKey","rawKey","aesEncryptMessage","iv","getRandomValues","ivString","ivBase64","aesCipheredtext","aesEncryptObject","aesCipheredText","aesDecryptMessage","encryption","importedRsaCryptoKeyObj","aesGcmKey","exportAesSecretKey","headerPayload","reqId","now","clientSymmetric","clientIv","cipheredheaderPayload","header","reqObj","encryptedRequest","decryption","CEPRK","rsaDecrytedText","rsaDecrytedobj","symmetricSecret","importedAesCryptoKeyObj","responseIV","aesDecrytedText","decrytedText","myAppsUrlConfig","myApps","appIcon","mySubscription","downloadReports","createApp","editApp","vendorGetAllApps","vendorCreateApp","vendorModifyApp","vendorDashboard","frmDt","toDt","apiKey","rpTyp","VendorLoginCtrl","loginCtrl","setLoginCtrl","history","useHistory","myAuthContext","useContext","submitLoginForm","getServerTokenRes","get","hashPassword","jsonData","user","client","encrypedForm","submitLoginFormRes","mySubAppsRes","appNm","callOnLoad","getldId","errorMessage","decryptedData","leadID","isAuthFunction","removeError","ForgotPasswordForm","userNameErr","setUserNameErr","setEmail","ForgotPassword","VendorForgetPassword","submitForgotPassword","submitForgotPasswordRes","ConfirmPassword","form","setError","showPasswordHint","index","includes","SetPasswordForm","setPasswordFormErr","setSetPasswordFormErr","setShowPasswordHint","getStrength","listOfStr","resetForm","SetPassword","VendorSetPassword","resetPasswordCtrl","setResetPasswordCtrl","submitSetPasswordForm","emailId","newPassword","submitSetPasswordFormRes","urls","accRedircet","indexOf","fnBrowserDetect","userAgent","navigator","match","getDevice","EKeyCodes","LoginFormBtmTxt","LoginIdForm","setUserName","LoginIdScreen","RadioButton","moduleName","checked","selected","display","PasswordForm","accTypesObject","selectedAcc","setSelectedAcc","setPassword","onSelectAcc","accType","onEditLoginId","PasswordScreen","YobInputField","size","fill","firstInputBox","getElementById","focus","_","v","valueCopy","handleChange","onKeyUp","keyCode","BACKSPACE","LEFT_ARROW","previousElementSibling","RIGHT_ARROW","nextElementSibling","goToNext","handleKeyUp","YobScreen","yob","setYob","LoginStatus","color","subTitle","btnValue","onButtonClick","linkTxt","link","onLinkClick","LoginStatusScreen","popupState","LOGINID_SENT","EMAIL_SENT","PASSWORD_UPDATE","OPEN_ACC_SUCC","Autocomplete","show","setShowDropdown","handleInputChange","showDropdown","dropdownList","d","dropdownData","replace","w","c","toUpperCase","onOptionSelect","dangerouslySetInnerHTML","__html","inputClassName","noDataMsg","LeadForm","nm","eml","phNo","city","state","setValues","errors","setErrors","cities","setCities","getCitiesRes","ctyLst","every","LeadFormScreen","Loader","from","keys","LoginLoaderScreen","LoginWithApi","YobWithAPi","securityImgObj","appUrl","DefaultAppIcon","PasswordWithApi","countDown","sec","cb","OtpForm","setOtp","timer","setTimer","intervalId","setInterval","clearInterval","onTimerClose","containerClass","otpTitle","onChangeFunc","redirect","redirectText","showResend","ResendFunction","OtpScreen","showSwitch","setShowSwitch","etotpSwitch","setEtotpSwitch","checkLoginFlow","onSwitchLoginFlow","OtpWithAPi","EtotpForm","setTotp","etotpEnabled","setEtotpEnabled","setLoginFlow","enableSms","setEnableSms","totpSetting","eqEtotpEnabled","coEtotpEnabled","otpFlowWaitTime","totSeconds","Math","floor","EtotpScreen","EtotpWithApi","accTypes","LoginCtrl","screenState","LOGIN_ID","afterHandleQueryString","changeScreenState","LOGIN_WITH_API_KEY","openLogin","optState","getValidateUserId","setFocus","PASSWORD","YOB","OTP","setState","changePopupState","showUserIdScreen","switchLoginFlow","flow","ETOTP","switchApiKeyLoginFlow","PASSWORD_WITH_API_KEY","ETOTP_WITH_API_KEY","getValidateUserIdRes","appKeyDetails","validatePassword","userid","validatePasswordRes","OTP_WITH_API_KEY","YOB_WITH_API_KEY","verifyAnswers","ans","verifyAnswersRes","quickLogin","meta","LoginType","Platform","InitiationScreen","InitiationElement","pushEvent","submitLeadForm","submitLeadFormRes","popupMessage","msg","accDataTemp","prevScreen","closePopup","on","postLogout","isAccDataUrl","mndtryLoginCnsts","filter","getCen","LOADING","LEAD_FORM","getScreen","getPopup","contextType","ForgotPasswordScreenEnum","ForgotLoginIdForm","mobile","setErrorMsg","submitted","setSubmitted","forgotLoginIdRes","onSuccess","errCd","typ","mode","ForgotLoginIdScreen","AForgotPasswordRes","COMMODITY_STATUS_SCREEN","errorHandler","AForgotPasswordOTPRes","RESET_OTP_PASSWORD","RESET_PASSWORD","commBtnValue","getButtonValue","AForgotPassword","ResetPassword","ResetOtpPassword","ForgotPasswordScreen","FORGOT_PASSWORD","attempts","onForgetFormSubmit","onSubmitOTPForm","payload","onSubmitOTPFormRes","clientResetPasswordApi","clientResetPasswordRes","clientKamResetPasswordApi","EQUITY_STATUS_SCREEN","OTP_SCREEN","UnblockAccountForm","apiRes","AUnblockAccount","UnblockAccount","path","LoginHelp","LoginRoutes","exact","component","VendorSetPasswordState","UnblockAccountScreen","ScrollToTop","pathname","useLocation","scrollTo","HeaderAuth","isNavbar","showNavbar","isVendor","setIsVendor","isVAndor","etotpFlow","checkVandorAuth","activeClassName","rel","open","HeaderUnauth","HeaderUnTnc","Header","setIsNavbar","loginService","isAuth","tncAccepted","VendorPrivateRoute","Component","rest","auth","render","HeaderLayout","HeaderLayoutRoute","matchProps","ChartTocDropdown","dropDownOption","setDropDownOption","setSearch","isDropdownOpen","setIsDropdownOpen","wrapperRef","useRef","optionSelected","onSelect","selectedOption","dropdownOptions","find","option","selectedValue","options","opt","handleClickOutside","current","contains","addEventListener","removeEventListener","ref","showPrimary","primary","showClose","ColoumnsHeader","showGraphQuery","setShowGraphQuery","showSEBIRules","setShowSEBIRules","graphQuery","disableMenu","isDownload","handleDownloadBtn","isMidleBorder","hints","isDropdown","dropdownValue","setDropdownValue","isSearchable","convertFormater","calanderDateFormater","numDifferentiation","abs","toFixed","addDays","startDate","day","add","toDate","getDiffBtnDates","start","end","EndDate","duration","diff","asWeeks","CompareDate","orderDate","tradeDate","according","dateOne","dateTwo","DropdownOptions","OrderTradeStates","Segments","weeklyDataValue","ranges","Today","toLocaleString","last_7_days","subtract","last_30_days","this_month","startOf","last_month","endOf","handleTickInterval","dataLength","VolumeStateOptions","VolumeSegmentsOptions","convertRS","fix","TopLeadersImg","win_one","win_two","win_three","win_four","win_five","NoDataFound","LSAreaGraph","defaultOptionsColor","Highcharts","colors","defaultColor","setDisableMenu","category","tickInterval","loginHit","setLoginHit","setUpChart","loginData","firstDate","lastDate","totalWeeks","getNtHitsPrDay","seventhDay","customData","totalVal","j","parseInt","getTickInterval","api","chart","height","marginBottom","credits","enabled","legend","xAxis","allowDecimals","margin","crosshair","categories","tickPixelInterval","labels","formatter","splitVal","yAxis","padding","tooltip","tooltipVal","series","y","borderWidth","backgroundColor","borderRadius","plotOptions","fillColor","linearGradient","stops","setOpacity","area","marker","symbol","radius","states","hover","showInLegend","highcharts","LSStackCol","orders","trades","orderTradeData","setOrderTradeData","sortedOrdsPrDay","setSortedOrdsPrDay","sortedTrdsPrDay","setSortedTrdsPrDay","getOrderData","getTradeData","orderData","tradeData","customOrderData","customTradeData","sumOfOrder","sumOfTrade","ord","trd","sort","cat","getTrade","sortTrd","getOrder","sortOrd","uniqueOrdData","uniqueTradeData","symbolRadius","itemMarginTop","itemMarginBottom","reversedStacks","points","shared","borderColor","column","stacking","dataLabels","LSColLineChart","OTR","sortedOrdTrdRatio","setSortedOrdTrdRatio","getOrdTrdRatio","ordTrdRatioData","customOrdTrdRatio","sumOfRatio","parseFloat","OTRData","otr","getOTR","sortOtr","uniqueOrdTrdData","zoomType","opposite","valueSuffix","LSPaiChart","order","trade","ratio","ordTrdRatio","setOrdTrdRatio","orderTradeRatioData","ordsExcWise","trdsExcWise","ntOrdTrdRtoExchWiseCht","orderExchWise","tradeExchWise","tarde","ratioExchWise","ordtrdRatio","plotBackgroundColor","plotBorderWidth","plotShadow","verticalAlign","horizontalAlign","floating","text","style","font","point","accessibility","pie","allowPointSelect","cursor","innerSize","sortingMethod","b","valueOf","DownloadReportsTypes","isDacimal","Number","isInteger","LTStatistics","setLoginData","setUniqueOrdData","setUniqueTradeData","setUniqueOrdTrdData","downloadDbReports","dbData","lgnChrt","unqClntOrdCht","unqClntTrdCht","ordTradeRtoCht","LSAreaChart","LSStackColChart","require","VSBarChart","ordVolState","setOrdVolState","Icons","Cash","Equity","Derivatives","Currency","Commodity","rowStateData","getDataFlow","ordVol","handelOrdVolState","useHTML","lineColor","startOnTick","left","gridLineColor","bar","borderRadiusTopLeft","borderRadiusTopRight","pointWidth","align","width","fontSize","inside","Treemap","Heatmap","VS_HeatMapChart","segmentDropdownValue","setSegmentDropdownValue","heatmapData","setHeatmapData","sortedData","colorValue","rowHeatmapData","segmentwiseData","segData","seg","vol","colorAxis","minColor","maxColor","endOnTick","textOutline","layoutAlgorithm","VS_TopLeader","topLeaders","setTopLeaders","ldrsDropdownOptions","arrangLdrsData","ldrsData","acCd","img","leadersdropdownValue","setLeadersdropdownValue","leader","Total","VS_TopSales","topSales","setTopSales","topSls","topSalesSegwise","rupee_currency","VolStatistics","setRowHeatmapData","setRowStateData","ordVolHtMap","ordVolStats","trdVolHtMap","trdVolStats","getTopLdrsSegwise","volumeLdrsSegWise","sortBsdOn","leadrs","OS_LineChart","apiHit","setApiHit","sortedApiHit","ntApiHitCountCht","label","connectorAllowed","OS_UserDetails","phone","totalAcptConsn","totalDeclineConsn","netApiCount","userDetails","setUserDetails","myInfo","phn","clntAcptCnsnt","clntDecCnsnt","Oth_Statistics","DBComponent","VendorCalander","showCalander","setShowCalander","dateRange","setdDateRange","innerWidth","windowWidth","handelCalanderBtn","setDate","isCalander","next2Label","prev2Label","maxDate","showDoubleView","formatMonthYear","locale","month","year","selectRange","showFixedNumberOfWeeks","formatShortWeekday","getDay","setIsCalander","ErrorMsg","isServerErr","failedRes","limitExceeded","successRes","socialLinks","facebook","linkedin","instagram","twitter","apiConnectMail","supportEmail","complianceOfficer","Dashboard","setDBData","appName","setIsServerErr","removeIsServerErrors","downloadDbReportsRes","getDBDataRes","ros","getDBData","defaultAppIcon","ntClntLgn","unqClntLgn","unqClntLgnPr","unqClntOrd","unqClntTrd","unqClnTrdPr","ntOrd","ntTrds","ordTrdConvPr","ntFlTrds","items","currentClassName","componentTag","offset","dbMailIcon","dbPhoneIcon","APITypes","getAppIcon","readerIcon","reader","FileReader","readAsDataURL","onload","TITLE","SubscriptionFromValue","rdUrl","SubscriptionFromError","SubscriptionsList","isCopied","copiedItem","copyItem","setCopyItem","showApiModal","setApiModal","showApiBox","clickToCopy","item","app","clipboard","writeText","subscribedApps","flLnk","secKey","handelSubscriptionModal","DragAndDrop","useDropzone","acceptedFiles","getRootProps","getInputProps","hidden","appNameValidate","redircetUrlValidate","validateAppIcon","fileSize","SubscriptionForm","imgPicker","setImgPicker","enableAssist","setEnableAssist","ipCountHandler","count","ipCount","subscriptionFrom","splice","subscriptionFromErr","setIpCount","IPFieldCreater","onChangeFormVal","setSubscriptionFromErr","isValid","submitForm","rdUrlValidate","ipErr","ldId","submitFromHandler","validateIcon","iconView","URL","createObjectURL","isSubFrom","isOpen","checkUrl","CreateAppBtn","titlel","appFormHandler","NoAppComponent","apiConnect","MySubscriptions","setUserId","mySubApps","setMySubApps","isLoader","setIsLoader","setIsSubForm","setSubscriptionFrom","submitCreateAppRes","getBaseIcon","flCntnt","flNm","vendNm","getIPs","ipData","getEditableData","OfferSection","offer","GetAccess","GetAccessData","getAcc","Footer","facebookImg","linkedInImg","instagramImg","twitterImg","ReqACallForm","cpNm","ReqACallFormErr","signupConfig","vendor_req_a_call","vendor_signup","signFormSubmit","ReqACall","signupFormVal","setSignupFormVal","signupErr","setSignupErr","signupModal","setSignupModal","showSignUpModal","submitSignupFormRes","submitSignupForm","onChangeSignupForm","handleACBlur","partner","VendorSignup","signupForm","setSignupFormErr","signupFormErr","setSignupForm","Signup","getQueryParams","getMailId","getLeadId","getName","NuvamaWhiteLogo","VendorRoutes","Article","article","ArticleThumbnail","resourceId","VideoBanner","video","frameborder","allowfullscreen","allow","VideosPage","faqsAndResourceConfig","getFaqs","getFaqsById","getFaqsBySeacrh","resource","faqsConfig","getResoucesContent","Home","authContext","faqData","faqId","faqs","setFaqs","articles","videos","resouces","setResouces","submitedBy","isSuccess","isRejected","compName","getFaqsRes","commData","minData","maxData","clntFaq","qa","Body","em","mob","mod","rtg","cmmt","dev","pg","ptf","imgs","brw","accode","getResoucesRes","pageDate","pageLimit","tag","controlTrade","python","java","node","learnTrade","ishighlighted","Video","class","faq","role","question","answer","for","SignupForm","show_modal_Fun","clientCode","setClientCode","ModalOpenFor","SIGNUPFORM","SIGNUPFORMERR","openFor","signUpModal","setSignUpModal","show_modal","Individual","RightArrow","FinTech","clCode","onClear","Tnc","updateTncStatus","postTncStatus","tncStatus","NuvamaIcon","TncPage","setTncStatus","setIsError","isAuthContext","apiError","setApiError","postTncStatusRes","cnsntNm","usrId","consents","SubmitTnc","Search","setSearchVal","searchVal","searchFaqData","updateFaqBySearch","emtAnswer","SideBar","faqsData","showSidebarMenu","isSidebarManu","tabId","isPartners","isIndividuals","tabList","tabName","vndFaq","Faqs","contactView","setContactView","getWidth","faq_contactBox","querySelector","showContectDetails","supportChatDownIcon","supportChatIcon","supportChatCrossIcon","supportChatQIcon","Support","setFaqsData","setIsSideBarManu","setfaqs","setSearchFaqData","getFaqsDataByIdRes","getFaqsDataById","tabid","getFaqsDataBySearchRes","onclick","modal","isSearchForm","childNodes","showSerachForm","getFaqsBySearch","searchStr","SearchBtnGroup","ArticleBanner","headTitle","ArticlePage","customResouces","setCustomResouces","loadMore","setLoadMore","goBack","highlight","articleImgOne","ArticleDetailOne","setArticle","getArticleById","imagepath","articalId","emtDescription","Videos","VideoDetail","getVideoById","Resouces","SearchResult","useParams","ConfirmPopup","imageSrc","imgAlt","heading2","subHeading","buttonSecondary","OnclickBtnS","buttonSecondaryValue","buttonPrimary","OnclickBtnP","buttonPrimaryValue","EnableFlow","validateSKError","setValidateSKError","imgUrl","setImgUrl","setAccTyp","showSecKey","setShowSecKey","needHelp","setNeedHelp","secretKey","setSecretKey","oldPwd","setOldPwd","showConfirmpopup","setShowConfirmpopup","showDonepopup","setShowDonepopup","QRcodePage","setQRcodePAge","acntTyp","generateSecretkeyRes","secretKeyQR","validateSecretkeyRes","EtotpIcon","acTyp","etotp","GreenTick","DisableFlow","otpScreen","setOtpScreen","confirmationPopup","setConfirmationPopup","finalPopup","setFinalPopup","disableTotp","setDisableTotp","validatePwdRes","generateOtp","etotpSendOtp","generateOtpRes","disableEtotpFlowRes","dontProceed","ExternalTOTP","totpFlow","setTotpFlow","totpCode","CommonRoutes","ArticleDetails","VideoPage","PrivateRoute","isLogin","isTncAccepted","MYAPP_TITLE","AppForm","fillCreateAppForm","createAppModal","submitCreateAppForm","createAppModalData","removeImage","updateCreateAppModalVal","setCreateAppModalData","editAppSubmit","createFormError","setCreateFormError","submutBtnHandler","validateAppName","validateRedirectUri","redirectUri","appImage","imgView","MyAppsComponent","setWindowWidth","appsData","showDeleteModal","showAnalyticsModal","isShow","isId","showAdditionalFeatures","setShowAdditionalFeatures","showExistingFunction","hitEditBtn","createAppBtnHandler","actApps","alwdActApps","ntApps","apps","DeleteModal","deleteAppModal","deleteApp","setAppData","deleteApiApp","GraphChart","anltcs","sortAnltcs","setSortAnltcs","graphView","setGraphView","heandelGraphView","view","catagry","ntHitsPrDay","AppCalander","isCalendar","updateToday","today","applyData","setApplyData","showNeighboringMonth","StockBarChart","getGraphView","ordr","SBCData","setSBCData","ordrData","trad","ordsPrDay","trdsPrDay","sortedOrder","sortedTrade","gridLineWidth","crosshairs","pointPadding","pbColors","progress_bar","price","percent","HorizontalChart","horizontalCharts","HCData","setHCData","demoData","getDta","isDataGrater","reverseData","reverse","spacingRight","marginRight","groupPadding","lineWidth","minorGridLineWidth","minorTickLength","tickLength","tickWidth","minPadding","maxPadding","Analytics","analyticsAppModal","setIsCalendar","setToday","setAnltcs","setHorizontalCharts","ordVolData","setOrdVolData","openCalendarHandler","getAnalyticsDataRes","getHorizontalData","progressData","ordVolPr","ordTrdRto","getAnalytics","dataFrom","analyticsData","getAnalyticsData","ntApiCnt","ordCnt","ntOrdTrdRto","MyApp","noAppStatus","setNoAppStatus","setAppsData","setCreateAppModal","setdeleteAppModal","setAnalyticsAppModal","myAppsRes","getMyApps","getAllApps","deleteAppsRes","createAppRes","editAppRes","onPageLoad","validateName","baseImgUrl","onerror","oldAppNm","newAppNm","accId","source","ClientRoutes","Routes","isAuthVal","tncVal","setCheckAuth","checkAuth","getTncDataRes","loginConsents","consn","getTncData","getTncConsent","isClient","tncFromLs","Provider","basename","App","privacy","optOut","useIP","wzrk","createElement","async","s","getElementsByTagName","parentNode","insertBefore","ReactDOM","StrictMode"],"mappings":"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","file":"static/js/main.7e5ba6cc.chunk.js","sourcesContent":["let debounceTimer: NodeJS.Timer;\nexport default function debounce(func: Function, delay: number) {\n\treturn function (this: any) {\n\t\tlet context = this;\n\t\tlet args = arguments;\n\n\t\tdebounceTimer && clearTimeout(debounceTimer);\n\n\t\tdebounceTimer = global.setTimeout(() => {\n\t\t\tfunc.apply(context, args);\n\t\t}, delay);\n\n\t\treturn debounceTimer;\n\t};\n}\n","import JWT from \"jwt-decode\";\nimport { jwtToken } from \"../components/types/genericTypes\";\nimport urlConfig from \"../config/domain\";\ninterface sType {\n\t[sType: string]: any; //indexer\n}\nlet storage: sType;\n//stores all types of browser storage data onto these local variable\nstorage = {\n\tsession: window.sessionStorage,\n\tlocal: window.localStorage,\n\tcookie: document.cookie,\n\tappInfo: JWT(urlConfig.appidkey)\n};\n//helps in fetching key based values which are stored in storage local\nconst bStrg = (key: string) => {\n\treturn storage[key];\n};\n//help is creating new storage other than built in browser storage\nexport const setbStrg = (key: string, val: any) => {\n\tstorage[key] = val;\n};\n//provides the parsed JWT token info on access\nexport const parsedToken = (): jwtToken | null => {\n\tlet parToken: jwtToken | null = bStrg(\"local\").jwt_token ? JWT(bStrg(\"local\").jwt_token) : null;\n\treturn parToken;\n};\nparsedToken();\n\nexport default bStrg;\n","import React from \"react\";\n\nexport const MyAuthContext = React.createContext();\n","import { IDomain } from \"../components/types/genericTypes\";\n// const root = \"https://emtuat.edelweiss.in/edelmw-login-uat/login\",\n\nconst dev: IDomain = {\n root: \"http://localhost:3000\",\n key_clock_vendor: \"https://authuat.nuvamawealth.com/dev/app-auth/\",\n jmw_client_docs: \"https://vamauat.nuvamawealth.com/library-documentation/\",\n jmw_partner_docs: \"https://vamauat.nuvamawealth.com/partner-documentation/\",\n jmw_order_trade_docs:\n \"https://www.hypersync.in/hs_interactive_fintech_feeds/\",\n jmw: \"https://nmwuat1.nuvamawealth.com/\",\n jmw_content: \"edelmw-content-uat/content/\",\n jmw_login: \"edelmw-login-uat/login/\",\n python_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Python_APIConnect/APIConnect-2.0.3.tar.gz\",\n c_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Cs_APIConnect/CSharp_Lib_V_2.0.2.zip\",\n\n java_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Java_APIConnect/Java_Lib_V_2.0.1.zip\",\n\n node_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Node_APIConnect/api_connect_nodejs-2.0.3.tgz\",\n appId: \"9e5481c0130b8bba8190e52bdc5038ba\",\n cleverTapId: \"TEST-6Z6-556-W55Z\",\n taskLead: \"https://nmwuat1.nuvamawealth.com/\",\n appIdKey:\n \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHAiOjEsImZmIjoiVyIsImJkIjoid2ViLXBjIiwibmJmIjoxNTkwOTg1Njg1LCJzcmMiOiJlbXRtdyIsImF2IjoiMS4wLjAuNCIsImFwcGlkIjoiNjYzMDUxY2ZiYWM3ZDY5OWExYzU5Yjk2MDQ4YjUwZTciLCJpc3MiOiJlbXQiLCJleHAiOjE2MjI1MjE5ODUsImlhdCI6MTU5MDk4NTk4NX0.6jabTWX6dFXyX4RNAcD1kggLZIyv33Xeauxe00Z4-38\",\n rootUrl: \"https://vamauat.nuvamawealth.com/\",\n openNewAcc: \"https://onboardinguat.nuvamawealth.com/\",\n};\n\nconst uat: IDomain = {\n root: \"https://vamauat.nuvamawealth.com\" + process.env.PUBLIC_URL,\n jmw: \"https://nmwuat1.nuvamawealth.com/\",\n jmw_client_docs: \"https://vamauat.nuvamawealth.com/library-documentation\",\n jmw_partner_docs: \"https://vamauat.nuvamawealth.com/partner-documentation/\",\n key_clock_vendor: \"https://authuat.nuvamawealth.com/dev/app-auth/\",\n jmw_order_trade_docs:\n \"https://www.hypersync.in/hs_interactive_fintech_feeds/\",\n jmw_content: \"edelmw-content-uat/content/\",\n python_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Python_APIConnect/APIConnect-2.0.3.tar.gz\",\n c_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Cs_APIConnect/CSharp_Lib_V_2.0.2.zip\",\n\n java_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Java_APIConnect/Java_Lib_V_2.0.1.zip\",\n\n node_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Node_APIConnect/api_connect_nodejs-2.0.3.tgz\",\n jmw_login: \"edelmw-login-uat/login/\",\n appId: \"562dbc488cb09c8a8f27222c7954bc12\",\n taskLead: \"https://nmwuat1.nuvamawealth.com/\",\n cleverTapId: \"6K9-KW7-745Z\",\n appIdKey:\n \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHAiOjEsImZmIjoiVyIsImJkIjoid2ViLXBjIiwibmJmIjoxNTkwOTg1Njg1LCJzcmMiOiJlbXRtdyIsImF2IjoiMS4wLjAuNCIsImFwcGlkIjoiNjYzMDUxY2ZiYWM3ZDY5OWExYzU5Yjk2MDQ4YjUwZTciLCJpc3MiOiJlbXQiLCJleHAiOjE2MjI1MjE5ODUsImlhdCI6MTU5MDk4NTk4NX0.6jabTWX6dFXyX4RNAcD1kggLZIyv33Xeauxe00Z4-38\",\n rootUrl: \"https://vamauat.nuvamawealth.com/\",\n openNewAcc: \"https://onboardinguat.nuvamawealth.com/\",\n};\n\nconst cug: IDomain = {\n root: \"https://vamacug.nuvamawealth.com\" + process.env.PUBLIC_URL,\n jmw: \"https://nd.nuvamawealth.com/\",\n key_clock_vendor: \"https://auth.nuvamawealth.com/cug/app-auth/\",\n jmw_client_docs: \"https://vamacug.nuvamawealth.com/library-documentation\",\n jmw_partner_docs: \"https://vamacug.nuvamawealth.com/partner-documentation\",\n jmw_order_trade_docs:\n \"https://www.hypersync.in/hs_interactive_fintech_feeds/\",\n jmw_content: \"edelmw-content-cug/content/\",\n jmw_login: \"edelmw-login-cug/login/\",\n python_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Python_APIConnect_cug/APIConnect-2.0.0.tar.gz\",\n c_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Cs_APIConnect_cug/CSharp_Lib_V_2.0.0.zip\",\n\n java_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Java_APIConnect_cug/Java_Lib_V_2_0_0.zip\",\n node_language:\n \"https://nmwuat1.nuvamawealth.com/exe/app/Node_APIConnect_cug/api_connect_nodejs-2.0.0.tgz\",\n\n appId: \"562dbc488cb09c8a8f27222c7954bc12\",\n cleverTapId: \"6K9-KW7-745Z\",\n taskLead: \"https://nd.nuvamawealth.com/\",\n appIdKey:\n \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHAiOjEsImZmIjoiVyIsImJkIjoid2ViLXBjIiwibmJmIjoxNTc5MjQxODMyLCJzcmMiOiJlbXRtdyIsImF2IjoiMS4wLjAuNCIsImFwcGlkIjoiNGZlNjhiNzUzNjc4NGUzNDA3YzNlY2YxOWJlN2M0YWQiLCJpc3MiOiJlbXQiLCJleHAiOjE2MTA3NzgxMzIsImlhdCI6MTU3OTI0MjEzMn0.IR-PKf1Jjr69bsERFmMeuZrZ2RafBDiTGgKA6Ygofdo\",\n rootUrl: \"https://www.nuvamawealth.com/\",\n openNewAcc: \"https://onboarding.nuvamawealth.com/\",\n};\n\nconst prod: IDomain = {\n root: \"https://www.nuvamawealth.com\" + process.env.PUBLIC_URL,\n jmw: \"https://nw.nuvamawealth.com/\",\n jmw_content: \"edelmw-content/content/\",\n key_clock_vendor: \"https://auth.nuvamawealth.com/app-auth/\",\n jmw_client_docs: \"https://www.nuvamawealth.com/library-documentation\",\n jmw_partner_docs: \"https://www.nuvamawealth.com/partner-documentation\",\n jmw_order_trade_docs:\n \"https://www.hypersync.in/hs_interactive_fintech_feeds/\",\n jmw_login: \"edelmw-login/login/\",\n python_language: \"https://pypi.org/project/APIConnect\",\n node_language: \"https://www.npmjs.com/package/api_connect_nodejs\",\n c_language: \"https://www.nuvamawealth.com/ewwebimages/webfiles/download/Cs_APIConnect/CSharp_Lib_V_2.0.4.zip\",\n java_language: \"https://www.nuvamawealth.com/ewwebimages/webfiles/download/Java_APIConnect/Java_Lib_V_2.0.7.zip\",\n appId: \"4fe68b7536784e3407c3ecf19be7c4ad\",\n cleverTapId: \"6K9-KW7-745Z\",\n taskLead: \"https://nw.nuvamawealth.com/\",\n appIdKey:\n \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHAiOjEsImZmIjoiVyIsImJkIjoid2ViLXBjIiwibmJmIjoxNTc5MjQxODMyLCJzcmMiOiJlbXRtdyIsImF2IjoiMS4wLjAuNCIsImFwcGlkIjoiNGZlNjhiNzUzNjc4NGUzNDA3YzNlY2YxOWJlN2M0YWQiLCJpc3MiOiJlbXQiLCJleHAiOjE2MTA3NzgxMzIsImlhdCI6MTU3OTI0MjEzMn0.IR-PKf1Jjr69bsERFmMeuZrZ2RafBDiTGgKA6Ygofdo\",\n rootUrl: \"https://www.nuvamawealth.com/\",\n openNewAcc: \"https://onboarding.nuvamawealth.com/\",\n};\n\nexport const config: IDomain =\n process.env.REACT_APP_ENV === \"production\"\n ? prod\n : process.env.REACT_APP_ENV === \"uat\"\n ? uat\n : dev;\n\nconst configURL = {\n root: config.root,\n appidkey: config.appIdKey,\n appid: config.appId,\n rootUrl: config.rootUrl,\n jmw: config.jmw,\n key_clock_vendor: config.key_clock_vendor,\n jmw_client_docs: config.jmw_client_docs,\n jmw_partner_docs: config.jmw_partner_docs,\n jmw_order_trade_docs: config.jmw_order_trade_docs,\n jmw_content: config.jmw_content,\n jmw_login: config.jmw_login,\n python_language: config.python_language,\n c_language: config.c_language,\n java_language: config.java_language,\n node_language: config.node_language,\n taskLead: config.taskLead,\n};\n\nconst urlConfig = {\n // Add common config values here\n ...configURL,\n};\n\nexport default urlConfig;\n","import { EventEmitter } from \"events\";\n\nconst ee = new EventEmitter();\n\nexport default ee;\n","// import { indexer, RequireOnlyOne, RequireAtLeastOne } from \"../types/genericTypes\";\nimport { indexer, RequireOnlyOne, RequireAtLeastOne } from \"../components/types/genericTypes\";\nimport LoginService, { getAccData } from \"./login/loginService\";\n\ndeclare let clevertap: ClevertapType;\n\nexport interface ClevertapType {\n\tevent: Array;\n\tprofile: Array;\n\taccount: Array;\n\tonUserLogin: Array;\n\tnotifications: Array;\n\tprivacy: Array>;\n\tgetCleverTapID: () => string;\n}\n\nexport interface ClevertapEvent {\n\t[x: string]: any;\n\tEventName: string;\n}\n\nexport interface ClevertapAccount {\n\tid: string;\n}\n\nexport interface ClevertapUserProfile {\n\tSite: {\n\t\tName?: string;\n\t\tIdentity?: string | number;\n\t\tEmail?: string;\n\t\tPhone?: string;\n\t\tGender?: \"M\" | \"F\";\n\t\tDOB?: Date;\n\t\tAccountType?: string;\n\t\tprofileID?: string;\n\t\t\"MSG-email\"?: boolean;\n\t\t\"MSG-push\"?: boolean;\n\t\t\"MSG-sms\"?: boolean;\n\t\t\"MSG-whatsapp\"?: boolean;\n\t};\n}\n\nexport interface CleverTapNotification {\n\ttitleText: string;\n\tbodyText: string;\n\tokButtonText: string;\n\trejectButtonText: string;\n\tokButtonColor: string;\n\taskAgainTimeInSeconds: number;\n\tserviceWorkerPath: string;\n}\n\nexport interface ClevertapProfile {\n\toptout: boolean;\n\tuseIP: boolean;\n}\n\nexport class ClevertapService {\n\tpushEvent(data: ClevertapEvent) {\n\t\tclevertap.event.push(data.EventName, data);\n\t}\n\n\t// Input: Identity or Email is required. All others are optional\n\tpushOnUserLogin(data: { Site: RequireAtLeastOne }) {\n\t\tclevertap.onUserLogin.push(data);\n\t}\n\n\tpushNotifications(data: CleverTapNotification) {\n\t\tclevertap.notifications.push(data);\n\t}\n\n\tgetCleverTapID() {\n\t\tconsole.log(\"getCleverTapID Fun Hit\")\n\t\treturn clevertap.getCleverTapID();\n\t}\n\n\tgetIdentity = () => {\n\t\tconst cleverTapObject = { accName: \"\", uniqueId: \"\", accTyp: \"\" };\n\t\tconst decode = LoginService.getAccData();\n\n\t\tlet accCode = \"\";\n\t\tif (decode.accTyp === \"COMEQ\") {\n\t\t\taccCode = decode.prefAccTyp === \"EQ\" ? decode.eqAccID : decode.coAccID;\n\t\t\tcleverTapObject.accName = decode.prefAccTyp === \"EQ\" ? decode.eqAccName : decode.coAccName;\n\t\t\tcleverTapObject.accTyp = decode.prefAccTyp;\n\t\t} else {\n\t\t\taccCode = decode.accTyp === \"EQ\" ? decode.eqAccID : decode.coAccID;\n\t\t\tcleverTapObject.accName = decode.accTyp === \"EQ\" ? decode.eqAccName : decode.coAccName;\n\t\t\tcleverTapObject.accTyp = decode.accTyp;\n\t\t}\n\t\tcleverTapObject.uniqueId = accCode + \"-\" + cleverTapObject.accTyp;\n\t\treturn cleverTapObject;\n\t};\n\n\tgetClevertapItem = (key: string) => {\n\t\tconst value = localStorage.getItem(\"clevertap\") ? JSON.parse(localStorage.getItem(\"clevertap\")!)[key] : undefined;\n\n\t\t// check if value is present and it is not expired\n\t\tif (value && new Date(value.split(\";\")[1]) > new Date()) {\n\t\t\treturn value.split(\";\")[0];\n\t\t}\n\t\treturn undefined;\n\t};\n\n\tsetClevertapItem = (obj: indexer) => {\n\t\tlet clevertapData = localStorage.getItem(\"clevertap\");\n\t\tclevertapData = clevertapData ? { ...JSON.parse(clevertapData), ...obj } : obj;\n\t\tlocalStorage.setItem(\"clevertap\", JSON.stringify(clevertapData));\n\t};\n\n\t// key - can be string if only one element needs to be deleted otherwise it is array\n\tremoveClevertapItem = (key: string | Array) => {\n\t\tconst clevertapData = localStorage.getItem(\"clevertap\") ? JSON.parse(localStorage.getItem(\"clevertap\")!) : {};\n\t\tif (typeof key === \"string\") {\n\t\t\tdelete clevertapData[key];\n\t\t} else {\n\t\t\tkey.forEach((k) => {\n\t\t\t\tdelete clevertapData[k];\n\t\t\t});\n\t\t}\n\t\tlocalStorage.setItem(\"clevertap\", JSON.stringify(clevertapData));\n\t};\n\n\tsaveClevertapData = () => {\n\t\tconst cleverTapObject = this.getIdentity();\n\t\tconst cleverTapId = clevertap.getCleverTapID();\n\t\tconst login = getAccData();\n\t\tthis.setClevertapItem({\n\t\t\t\tcleverTapDetails: login.prfId + \",\" + cleverTapId + \";expires=Tue, 19 Jan 2025 12:00:00 GMT\",\n\t\t\t\tlastLoginDetails: login.prfId + \",\" + cleverTapId + \",\" + cleverTapObject.accName + \",\" + cleverTapObject.uniqueId + \",\" + cleverTapObject.accTyp + \",\" + login.accTyp + \";expires=Tue, 19 Jan 2025 12:00:00 GMT\"\n\t\t});\n}\n\n\tshowClevertapNotification = () => {\n\t\tsetTimeout(() => {\n\t\t\tclevertap.notifications.push({\n\t\t\t\ttitleText: \"Would you like to receive Push Notifications?\",\n\t\t\t\tbodyText: \"We promise to only send you relevant content and give you updates on your transactions\",\n\t\t\t\tokButtonText: \"Sign me up!\",\n\t\t\t\trejectButtonText: \"No thanks\",\n\t\t\t\tokButtonColor: \"#f28046\",\n\t\t\t\taskAgainTimeInSeconds: 604800,\n\t\t\t\tserviceWorkerPath: process.env.PUBLIC_URL + \"/serviceworker.js\"\n\t\t\t});\n\t\t}, 10000);\n\t};\n}\n","export default __webpack_public_path__ + \"static/media/white-labelled-solution.ca5470f9.svg\";","export default __webpack_public_path__ + \"static/media/non-interface-apis.aeaa4c9a.svg\";","export default __webpack_public_path__ + \"static/media/software-dev-kits.ce2bbfae.svg\";","export default __webpack_public_path__ + \"static/media/smallcase-partner.8b6b3213.svg\";","export default __webpack_public_path__ + \"static/media/stratzy-partner.7af3665b.svg\";","export default __webpack_public_path__ + \"static/media/5nance-partner.56ae103f.svg\";","export default __webpack_public_path__ + \"static/media/pivot-trading-partner.6c02dc41.svg\";","export default __webpack_public_path__ + \"static/media/quantsapp-partner.052eac95.svg\";","import whiteLabelledSolution from \"../../assets/images/white-labelled-solution.svg\";\nimport nonInterfaceApis from \"../../assets/images/non-interface-apis.svg\";\nimport softwareDevKits from \"../../assets/images/software-dev-kits.svg\";\nimport SmallCaseIcon from \"../../assets/images/smallcase-partner.svg\";\nimport StratzyIcon from \"../../assets/images/stratzy-partner.svg\";\nimport FiveNanceIcon from \"../../assets/images/5nance-partner.svg\";\nimport PivotTradingIcon from \"../../assets/images/pivot-trading-partner.svg\";\nimport QuantsappIcon from \"../../assets/images/quantsapp-partner.svg\";\n\nimport moment from \"moment\";\n\ninterface CommenConstants {\n ErrorTimeout: number;\n LoadArticle: number;\n LoadVideo: number;\n MinFaqs: number;\n MaxFaqs: number;\n Video: number;\n Article: number;\n resourceDateFormat: string;\n DateFormatWithTime: string;\n}\n\nexport const constants: CommenConstants = {\n ErrorTimeout: 7000,\n Video: 3,\n Article: 4,\n MinFaqs: 0,\n MaxFaqs: 4,\n LoadArticle: 4,\n LoadVideo: 2,\n resourceDateFormat: \"DD MMM YYYY\",\n DateFormatWithTime: \"DD MMM YYYY , hh : mm A\",\n};\n\nexport const ResourceObject = {\n pageDate: \"\",\n pageLimit: 0,\n tag: [],\n};\n\nexport const removeServerErrors = (\n setServerErrors: CallableFunction,\n timing: number\n) => {\n setTimeout(() => {\n setServerErrors();\n }, timing);\n};\n\nexport const LoginKeys = {\n Vendor: \"vendor\",\n Client: \"client\",\n AccessToken: \"access_token\",\n};\n\nexport const keyClockclient = {\n clientID: \"vendor_partner\",\n clientName: \"\",\n scope: \"\",\n};\n\nexport const passwordHints = {\n checkLength: \"Password length should be between 6-12 characters\",\n sameAsLoginId: \"Your Login ID & Password should not be the same\",\n NoSpace: \"No spaces allowed between characters\",\n upLowCase: \"At least one upper and one lower case character\",\n alpNumSpcl: \"At least one alphanumeric/special character\",\n splNotAllow: `Special characters not allowed are\n ${`( ) > < ? , % - + : ; [ ] { } | ~ ${\"`\"} ^ _ “ / ₹`}`,\n};\n\nexport const DateFormat = (date: Date, format: string) => {\n console.log(\"date\", date);\n return moment(date).format(format);\n};\n\nexport const slicedData = (commData: [], minData: number, maxData: number) => {\n return commData.slice(minData, maxData);\n};\n\nexport const addTolocalStorage = (name: string, val: string | boolean) => {\n localStorage.setItem(name, JSON.stringify(val));\n};\n\nexport const getTolocalStorage = (name: string) => {\n let result = localStorage.getItem(name);\n return result ? JSON.parse(result) : \"\";\n};\n\nexport const removeTolocalStorage = (name: string) => {\n localStorage.removeItem(name);\n};\n\nexport const Offers = [\n {\n title: \"White labelled solution\",\n description:\n \"Integrate transaction capability on your web and mobile application with trade button. Build your full-fledged investment platform using our APIs and have us deal with the operational and regulatory details.\",\n image: whiteLabelledSolution,\n },\n {\n title: \"Non Interface APIs\",\n description:\n \"Manage the entire order placement and tracking experience at your end using our non-interfac APIs. Access available to callbacks and end of day recon APIs as well.\",\n image: nonInterfaceApis,\n },\n {\n title: \"Software Dev Kits (SDKs)\",\n description:\n \"SDKs are available for both Android and iOS for quick integration into your mobile App. Native SDKs are under development.\",\n image: softwareDevKits,\n },\n];\n\nexport const OfferTitle = {\n HOME_TITLE: \"Startup & Fintech Offerings\",\n SIGNUP_TITLE: \"Our Offerings\",\n};\n\nexport const GetAccecssTitle = {\n HOME_TITLE: \"Get Free Access to Nuvama API Connect which includes\",\n SIGNUP_TITLE: \"Get exclusive access to our advance APIs for FREE\",\n};\n\nexport const GetAccessHome = [\n { heading: \"Robust APIs built to handle trading at scale\" },\n { heading: \"Access live market feeds through WebSocket stream\" },\n { heading: \"Secure connection via \", sub_heading: \"OAuth\" },\n {\n heading:\n \"View trades, place orders and access your account securely in real time\",\n },\n {\n heading:\n \"Analyze your trading behavior on APIs using our intuitive dashboard\",\n },\n {\n heading: \"Access to quality\",\n sub_heading: \"customer support\",\n },\n];\nexport const GetAccessSignup = [\n { heading: \"Robust APIs built to handle trading at scale\" },\n { heading: \"Secure connection via \", sub_heading: \"OAuth\" },\n { heading: \"Trade execution with high reliability and speed\" },\n {\n heading: \"View trades and place orders securely in real time\",\n },\n {\n heading: \"Access live market feeds through WebSocket stream\",\n },\n {\n heading:\n \"Analyze your trading behaviour on APIs using our intuitive dashboard\",\n },\n];\n\nexport const PartnersDetails = [\n { name: \"SmallCase\", icon: SmallCaseIcon },\n { name: \"Stratzy\", icon: StratzyIcon },\n { name: \"5Nance\", icon: FiveNanceIcon },\n { name: \"Pivot-Trading\", icon: PivotTradingIcon },\n { name: \"Quantsapp\", icon: QuantsappIcon },\n];\n\nexport const errorsMsg = {\n commonError: \"Something went wrong, Please try again later\",\n};\n","import { ELoginScreenState } from \"../../Containers/Client/Login/loginConstants\";\nimport ee from \"../../components/utils/eventEmitter\";\nimport {\n ILoginObjType,\n IVendorLogin,\n} from \"../../components/types/components/login/loginTypes\";\nimport {\n indexer,\n jwtToken as IjwtToken,\n TAccData,\n TAccDataRes,\n} from \"../../components/types/genericTypes\";\nimport JWT from \"jwt-decode\";\nimport { ClevertapService } from \"../clevertapService\";\nimport { removeTolocalStorage } from \"../../Containers/Constants/commenFeatures\";\n\nexport default class LoginService {\n private static preLoginData: ILoginObjType = {\n userID: \"\",\n accTyp: \"\",\n pwd: \"\",\n };\n private static accData?: TAccData; // data object after login\n private static _jwtToken: string;\n private static _pToken: IjwtToken | null = null;\n static authorization: string;\n static fromUrl?: string; // url from where login was initiated\n static reUrl?: string; // url to redirect after login\n static invtypeobj?: Array | indexer; // object to be used in toc after login\n static popupName?: string; // screen state to be shown\n static params?: string; // if any query string needs to be added in reUrl, pass in the form of JSON.stringify\n static vendorDetails?: IVendorLogin; // object when logged in through vendor\n static hideCross = false; // set to true if cross needs to be hidden\n static lgnSrc: string = \"\";\n\n static isLoggedIn = () => {\n // check LoginService also because localstorage.setItem is async function\n // jwt_token might not be set in local storage\n let state: boolean =\n localStorage.getItem(\"jwt_token\") || LoginService.jwtToken ? true : false;\n\n return state;\n };\n static isVendorLoggedIn = () => {\n // access_token might not be set in local storage\n let state: boolean = localStorage.getItem(\"access_token\") ? true : false;\n return state;\n };\n\n static getPreLoginData = (key: keyof ILoginObjType) => {\n return LoginService.preLoginData[key];\n };\n\n static setPreLoginData = (obj: { [key in keyof ILoginObjType]?: any }) => {\n LoginService.preLoginData = { ...LoginService.preLoginData, ...obj };\n localStorage.setItem(\"accntTyp\", LoginService.preLoginData.accTyp);\n };\n\n static getUserID() {\n return localStorage.getItem(\"user_id\");\n }\n\n static getAccData(key?: keyof TAccData) {\n if (LoginService.accData) {\n if (key) {\n return LoginService.accData[key];\n } else {\n return LoginService.accData;\n }\n } else if (localStorage.getItem(\"acc_data\")) {\n if (key) {\n return JSON.parse(localStorage.getItem(\"acc_data\")!)[key];\n } else {\n return JSON.parse(localStorage.getItem(\"acc_data\")!);\n }\n }\n }\n\n static setAccData(data: TAccDataRes) {\n const temp: TAccData = {\n ...data,\n userID: data.accs.uid,\n mtf: data.mtf ? data.mtf.sts : \"\",\n adhrEQ: { stat: data.adhrEQ, brkCode: data.accs.eqBrk },\n adhrCOM: { stat: data.adhrCOM, brkCode: data.accs.coBrk },\n coAccID: data.accs.coAccID,\n eqAccID: data.accs.eqAccID,\n eqRmRt: data.accs.eqRmRt,\n eqAccName: data.accs.eqAccName,\n coAccName: data.accs.coAccName,\n prfId: data.accs.prfId,\n wtspCnsnt: data.accs.wtspCnsnt,\n };\n LoginService.accData = temp;\n }\n\n static removeAccData() {\n LoginService.accData = undefined;\n }\n\n static set jwtToken(token: string) {\n LoginService._jwtToken = token;\n LoginService.pToken = token ? JWT(token) : null;\n }\n\n static get jwtToken() {\n return localStorage.getItem(\"jwt_token\") || this._jwtToken;\n }\n\n static set pToken(token: IjwtToken | null) {\n LoginService._pToken = token;\n }\n\n static get pToken() {\n if (!LoginService._pToken) {\n // if _ptoken is not present in login service then fetch from local storage and parse it\n LoginService._pToken = LoginService.jwtToken\n ? JWT(LoginService.jwtToken)\n : null;\n }\n\n return LoginService._pToken;\n }\n\n static logout() {\n // Reset all variables in this Service\n LoginService.preLoginData = { userID: \"\", accTyp: \"\", pwd: \"\" };\n LoginService._jwtToken = \"\";\n LoginService.authorization = \"\";\n\n // remove keys from local storage\n localStorage.removeItem(\"acc_data\");\n localStorage.removeItem(\"jwt_token\");\n localStorage.removeItem(\"user_id\");\n localStorage.removeItem(\"appidkey\");\n localStorage.removeItem(\"nesttrader\");\n localStorage.removeItem(\"lgnSrc\");\n localStorage.removeItem(\"accntTyp\");\n localStorage.removeItem(\"LoginFlow\");\n\n LoginService.removeAccData();\n if (LoginService.lgnSrc === \"iphone\") {\n // TODO\n // window.webkit.messageHandlers.onSessionExpired.postMessage({ \"status\": \"ok\" });\n } else if (LoginService.lgnSrc === \"X\") {\n // TODO\n }\n ee.emit(\"logout\");\n }\n\n static vendorLogout = () => {\n removeTolocalStorage(\"loginAs\");\n removeTolocalStorage(\"access_token\");\n removeTolocalStorage(\"tncAccepted\");\n removeTolocalStorage(\"appNm\");\n removeTolocalStorage(\"ldID\");\n };\n\n static saveDataInLocalStorage = () => {\n localStorage.setItem(\"acc_data\", JSON.stringify(getAccData()));\n LoginService.jwtToken &&\n localStorage.setItem(\"jwt_token\", LoginService.jwtToken);\n localStorage.setItem(\"user_id\", getAccData(\"userID\"));\n ee.emit(\"loginsuccess\", {});\n };\n\n static cleverTapRegistration = () => {\n var clevertapService = new ClevertapService();\n var cleverTapObject = clevertapService.getIdentity();\n var lastcleverTapDetails =\n clevertapService.getClevertapItem(\"cleverTapDetails\");\n var cleverTapDetails =\n LoginService.getAccData(\"prfId\") +\n \",\" +\n clevertapService.getCleverTapID();\n\n if (!lastcleverTapDetails || cleverTapDetails !== lastcleverTapDetails) {\n //If registered for the first time\n clevertapService.pushOnUserLogin({\n Site: {\n Name: cleverTapObject.accName, // String\n Identity: cleverTapObject.uniqueId, // It shoulb be accountcode+\"-\"+accounttype\n AccountType: LoginService.getAccData(\"accTyp\"), // It shoulb be account type\n profileID: LoginService.getAccData(\"prfId\"), //This should be profileID from the login response\n },\n });\n clevertapService.showClevertapNotification();\n }\n };\n}\n\n// Add functions here so that they can be easily accessed from any file\nexport const {\n isLoggedIn,\n isVendorLoggedIn,\n getPreLoginData,\n setPreLoginData,\n getUserID,\n getAccData,\n setAccData,\n removeAccData,\n jwtToken,\n logout,\n vendorLogout,\n saveDataInLocalStorage,\n cleverTapRegistration,\n} = LoginService;\n\n/* ******************\n * UTILITY FUNCTIONS *\n ****************** */\n\n/**\n * Parses query string and returns it in the form of object\n * @param queryString String to be parsed. Should contain '?'\n */\nexport function parseQuery(queryString: string) {\n var query = queryString.substring(1);\n var vars = query.split(\"&\");\n\n return vars.reduce((acc: indexer, element: string) => {\n var pair: Array = element.split(\"=\");\n acc[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);\n return acc;\n }, {});\n}\n\n/**\n * This function converts an object into query string and returns a string without \"?\"\n * @param obj object to be converted to query string\n */\nexport function stringifyQuery(obj: any) {\n let str = [];\n for (let p in obj)\n if (p && obj.hasOwnProperty(p) && obj[p] !== undefined) {\n str.push(encodeURIComponent(p) + \"=\" + encodeURIComponent(obj[p]));\n }\n return str.join(\"&\");\n}\n\nexport function changeScreen(screenState: ELoginScreenState) {\n ee.emit(\"changeLoginScreen\", screenState);\n}\n\nexport function setUrlObj(item: IVendorLogin) {\n switch (item.ottype) {\n case \"placeorder\":\n LoginService.reUrl = \"/placeorder\";\n break;\n\n case \"order-status\":\n LoginService.reUrl = \"/orderbook/eq/equity/today\";\n LoginService.reUrl += item.sTab || \"\";\n break;\n\n case \"my-positions\":\n LoginService.reUrl = \"/position\";\n break;\n\n case \"see-margin\":\n LoginService.reUrl = \"/limits/equity\";\n break;\n\n case \"fund-transfer\":\n LoginService.reUrl = \"/fund-transfer/add-funds\";\n // tocUrlObj.status = item.status;\n break;\n\n case \"see-holdings\":\n LoginService.reUrl = \"/holding/equity/usable\";\n break;\n\n case \"margin-files\":\n LoginService.reUrl = \"/marginfiles/intraday/equity\";\n break;\n\n default:\n LoginService.reUrl = \"/placeorder\";\n }\n\n if (LoginService.reUrl === \"/placeorder\") {\n if (item.data) {\n LoginService.invtypeobj = item.data;\n\n if (item.isbasket) {\n // TODO\n } else {\n createPlaceOrderUrl(item.data[0]);\n }\n }\n }\n}\n\nexport function createPlaceOrderUrl(data: any) {\n const aTyp = checkATyp(data);\n\n LoginService.reUrl += \"/\" + aTyp + \"/\";\n\n if (aTyp === \"comm\" || aTyp === \"curr\" || aTyp === \"fno\") {\n LoginService.reUrl += futOpt(data.symbol) + \"/\";\n }\n\n if (aTyp === \"mf\") {\n LoginService.reUrl += data.isin + \"-\" + data.scode;\n } else if (data.snse) {\n LoginService.reUrl += data.snse;\n } else if (data.sbse) {\n LoginService.reUrl += data.sbse;\n }\n}\n\n// check aType\nexport function checkATyp(item: indexer) {\n let temp;\n let exc = null;\n\n if (item.snse) {\n temp = item.snse.split(\"_\");\n } else if (item.sbse) {\n temp = item.sbse.split(\"_\");\n }\n\n if (temp) {\n exc = temp[temp.length - 1];\n }\n\n if (exc === \"CDS\") {\n return \"curr\";\n } else if (exc === \"MCX\" || exc === \"NCDEX\") {\n return \"comm\";\n }\n\n if (item.aTyp) {\n return item.aTyp as string;\n } else {\n return \"\";\n }\n}\n\nfunction futOpt(str: string) {\n if (str.slice(-2) === \"CE\" || str.slice(-2) === \"PE\") {\n return \"/option\";\n } else {\n return \"/future\";\n }\n}\n","import {\n isLoggedIn,\n isVendorLoggedIn,\n logout,\n vendorLogout,\n} from \"./login/loginService\";\nimport { ASaveQueryData } from \"./login/loginApiService\";\nimport { config } from \"../config/domain\";\n\nexport function handleSessionTimeout(newResp: Response, res: any) {\n if (\n newResp.status === 403 ||\n (newResp.status === 401 && (isLoggedIn() || isVendorLoggedIn())) ||\n (newResp.status === 200 &&\n res.response &&\n res.response.infoID === \"EPS0008\")\n ) {\n logout();\n vendorLogout();\n\n if (sessionStorage.getItem(\"source\")) {\n sessionStorage.removeItem(\"source\");\n sessionStorage.removeItem(\"sourceToken\");\n }\n\n let queryString;\n window.location.href = config.root;\n ASaveQueryData(getToken, JSON.stringify(queryString));\n }\n}\n\nfunction getToken(res: any) {\n if (res.data) {\n window.location.href =\n process.env.PUBLIC_URL + \"/login?token=\" + res.data.token;\n }\n}\n","import bStrg, { parsedToken } from \"./storageHelper\";\nimport LoginService, { parseQuery } from \"./login/loginService\";\nimport { handleSessionTimeout } from \"./sessionTimeout\";\nimport { getTolocalStorage } from \"../Containers/Constants/commenFeatures\";\n\ninterface callReq {\n url: string;\n method: string;\n body?: {};\n authType?:\n | \"bearer\"\n | \"authtoken\"\n | \"noToken\"\n | \"access_token\"\n | \"SPK\"\n | \"encryption\";\n appidkey?: string;\n appid?: string;\n source?: string;\n headers?: any;\n sourcetoken?: string;\n abortControllerRef?: any;\n}\nexport const apiService = async (\n req: callReq,\n callback: CallableFunction,\n abortController?: CallableFunction\n) => {\n const Abort_Controller = new AbortController();\n let pToken: any = parsedToken();\n var params: any = {\n method: req.method,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n };\n if (req.authType) {\n switch (req.authType) {\n case \"bearer\":\n params.headers.authorization = LoginService.jwtToken\n ? `Bearer ${LoginService.jwtToken}`\n : `Bearer ${bStrg(\"local\").jwt_token}`;\n break;\n case \"authtoken\":\n params.headers.authorization =\n LoginService.authorization || (pToken ? pToken.auth_token : \"\");\n break;\n\n case \"access_token\":\n params.headers.access_token = await getTolocalStorage(\"access_token\");\n break;\n case \"SPK\":\n params.headers.SPK = \"serverPublicKey\";\n break;\n case \"encryption\":\n params.headers.CPK = req.headers ? req.headers.CPK : \"\";\n params.headers.SEPRK = req.headers ? req.headers.SEPRK : \"\";\n break;\n default:\n break;\n }\n }\n if (req.appidkey) {\n params.headers[\"appidkey\"] = req.appidkey;\n }\n if (req.appid) {\n params.headers[\"appid\"] = req.appidkey;\n }\n\n if (window.location.search) {\n const queryString = parseQuery(window.location.search);\n if (queryString.api_key) {\n params.headers.Source = sessionStorage.getItem(\"source\");\n let sourcetoken = sessionStorage.getItem(\"sourceToken\");\n if (sourcetoken !== null || sourcetoken !== undefined) {\n params.headers.SourceToken = sourcetoken;\n }\n }\n }\n\n if (\n req.method === \"POST\" ||\n req.method === \"PUT\" ||\n req.method === \"DELETE\"\n ) {\n params[\"body\"] = JSON.stringify(req.body);\n }\n //Cancelling Fetch Requests\n if (abortController) {\n abortController(Abort_Controller);\n params.signal = Abort_Controller.signal;\n }\n try {\n const resp = await fetch(req.url, params);\n const newResp = await resp;\n\n newResp\n .json()\n .then((res) => {\n handleSessionTimeout(newResp, res);\n callback(res, newResp);\n })\n .catch((res) => {\n handleSessionTimeout(newResp, res);\n callback(undefined, newResp);\n });\n } catch (err) {\n // all errors will be captured here for anything in the try block\n callback &&\n callback({\n error: \"500\",\n errMsg: err || \"something went wrong please try again later\",\n });\n }\n};\n","import * as URLConfig from \"../domain\";\n\nconst config = URLConfig.config;\nconst loginURLConfig = {\n CommKambala: true,\n accounts: config.jmw + config.jmw_login + \"accounts/\",\n loginHelp: config.jmw + config.jmw_login + \"loginhelp/\",\n account: config.jmw + config.jmw_login + \"account/\",\n consent: config.jmw + config.jmw_login + \"consent/\",\n submitConsent: config.jmw + config.jmw_login + \"loginconsent/\",\n merge: config.jmw + config.jmw_login + \"merge/\",\n raterm: config.jmw + config.jmw_login + \"raterm/\",\n commAccOpen: config.jmw + config.jmw_login + \"commodity/openaccount/\",\n adhoc: config.jmw + config.jmw_content + \"adhoc/\",\n\n // Vendor login\n vendor_login: config.key_clock_vendor + \"auth/vendor/token\",\n vendor_forget_password:\n config.key_clock_vendor + \"vendor/users/forgot-password\",\n vendor_reset_password:\n config.key_clock_vendor + \"vendor/users/reset-password\",\n openAccount: config.openNewAcc,\n getServerKey: config.key_clock_vendor + \"keys/server-public-key\",\n\n // E-TOTP base url|\n etotpBaseUrl: config.jmw + config.jmw_login + \"etotp/\"\n};\n\nexport default loginURLConfig;\n","import { apiService } from \"../apiService\";\nimport urlConfig from \"../../config/domain\";\nimport { ILeadFormFields } from \"../../components/login/forms/leadForm\";\nimport loginURLConfig from \"../../config/login/loginURLConfig\";\n\nexport const AGetValidateUserId = (// export const AGetSecurityImage = (\n callback: CallableFunction,\n userId: string,\n logo: boolean\n) => {\n apiService(\n {\n url: loginURLConfig.account + \"validateuser/\" + userId + \"?ff=W&logo=\" + logo,// url: loginURLConfig.accounts + userId + \"/image?ff=W&logo=\" + logo,\n method: \"GET\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n },\n callback\n );\n};\n\nexport const AValidatePassword = (// export const A2faQuestions = (\n callback: CallableFunction,\n userId: string,\n accTyp: string,\n pwd: string\n) => {\n apiService(\n {\n url: loginURLConfig.account + \"validatepassword/\" + userId,// url: loginURLConfig.accounts + userId + \"/2faquestions\",\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body: { \n pwd, \n accTyp, \n ff: \"W\", \n ip: \"\", \n vndSrc: \"API\" \n },\n },\n callback\n );\n};\n\nexport const ATotpLogin = (\n callback: CallableFunction,\n userId: string,\n accTyp: string,\n pwd: string,\n totp: string,\n loginFlow: string,\n) => {\n apiService(\n {\n url: loginURLConfig.account + userId + \"/totplogin\" ,\n\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body: { pwd, accTyp, totp, ip:\"\", loginFlow, pL: true},\n },\n callback\n );\n};\n\nexport const A2FaLogin = ( //export const AVerifyAnswers = (\n callback: CallableFunction,\n userId: string,\n accTyp: string,\n pwd: string,\n otp: string\n) => {\n apiService(\n {\n url: loginURLConfig.account + \"2falogin/\" + userId,// url: loginURLConfig.accounts + userId + \"/verifyanswers/v2\",\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body: {\n pwd: pwd,\n twoFactor: otp,\n accTyp,\n pL: true,\n appData: { vendor: sessionStorage.getItem(\"source\") || undefined },\n vndSrc: \"API\",\n },\n },\n callback\n );\n};\n\nexport const getTncConsent = (callback: CallableFunction, userId: string) => {\n apiService(\n {\n url:\n loginURLConfig.consent +\n \"loginconsent/\" +\n userId +\n \"?consentName=APIConsent\",\n method: \"GET\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n // body: { ip: \"\", consents: [{ cnsntNm:body.cnsntNm, sts:body.sts }], }\n },\n callback\n );\n};\nexport const SubmitTnc = (\n callback: CallableFunction,\n usrId: string,\n body: any\n) => {\n apiService(\n {\n url: loginURLConfig.consent + \"loginconsent/\" + usrId,\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body: { ip: \"\", consents: [{ cnsntNm: body.cnsntNm, sts: body.sts }] },\n },\n callback\n );\n};\n\nexport const AForgotLoginId = (callback: CallableFunction, body: any) => {\n apiService(\n {\n url: loginURLConfig.CommKambala?(loginURLConfig.loginHelp + \"forgotuserid\"):(loginURLConfig.accounts + \"forgotuserid\"),\n method: loginURLConfig.CommKambala ? \"POST\" : \"PUT\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\n\nexport const AForgotPassword = (\n callback: CallableFunction,\n { loginId, ...body }: any\n) => {\n apiService(\n {\n url: loginURLConfig.accounts + loginId + \"/resetpassword\",\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\n\nexport const AForgotPasswordOTP = (\n callback: CallableFunction,\n { loginId, ...body }: any\n) => {\n apiService(\n {\n url: loginURLConfig.loginHelp + \"otp/\" + loginId,\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\nexport const AValidateOTP = (\n callback: CallableFunction,\n { loginId, ...body }: any\n) => {\n apiService(\n {\n url: loginURLConfig.accounts + loginId + \"/forgotpassword/validateotp\",\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\nexport const AClientResetPassword = (\n callback: CallableFunction,\n { loginId, ...body }: any\n) => {\n apiService(\n {\n url: loginURLConfig.accounts + loginId + \"/setpassword\",\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body: {\n nePwd: body.password,\n coPwd: body.confirmPassword,\n accTyp: \"EQ\",\n },\n },\n callback\n );\n};\n\nexport const AClientKamResetPassword = (\n callback: CallableFunction,\n { loginId, ...body }: any,\n accTyp: string,\n) => {\n apiService(\n {\n url: loginURLConfig.loginHelp + \"setpassword/\" + loginId,\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body: {\n nePwd: body.password,\n coPwd: body.confirmPassword,\n otp: body.otp,\n accTyp,\n },\n },\n callback\n );\n};\n\nexport const AUnblockAccount = (\n callback: CallableFunction,\n { loginId, ...body }: any\n) => {\n apiService(\n {\n url: loginURLConfig.CommKambala ? loginURLConfig.loginHelp + \"unblockuser/\" + loginId : loginURLConfig.accounts + loginId + \"/unblockuser\",\n method: loginURLConfig.CommKambala ? \"POST\" : \"PUT\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\n\nexport const AForgotYob = (\n callback: CallableFunction,\n { loginId, ...body }: any\n) => {\n apiService(\n {\n url: loginURLConfig.accounts + loginId + \"/yob\",\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\n\nexport const AGetCities = (callback: CallableFunction, srchstr: string) => {\n apiService(\n {\n url: loginURLConfig.commAccOpen + \"location?srchstr=\" + srchstr,\n method: \"GET\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n },\n callback\n );\n};\n\nexport const ACommAccOpenPre = (\n callback: CallableFunction,\n body: ILeadFormFields\n) => {\n apiService(\n {\n url: loginURLConfig.commAccOpen + \"prelogin\",\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\n\nexport const ASaveQueryData = (callback: CallableFunction, value: any) => {\n apiService(\n {\n url: loginURLConfig.adhoc + \"save/data\",\n method: \"POST\",\n appidkey: urlConfig.appidkey,\n body: { value: JSON.stringify(value) },\n },\n callback\n );\n};\n\n// Vendor Api call\n\nexport const vendorLogin = (\n callback: CallableFunction,\n value: any,\n headers: any\n) => {\n apiService(\n {\n url: loginURLConfig.vendor_login,\n method: \"POST\",\n authType: \"encryption\",\n appidkey: urlConfig.appidkey,\n body: value,\n headers,\n },\n callback\n );\n};\nexport const vendorForgotPassword = (\n callback: CallableFunction,\n body: any,\n headers: any\n) => {\n apiService(\n {\n url: loginURLConfig.vendor_forget_password,\n method: \"POST\",\n appidkey: urlConfig.appidkey,\n authType: \"encryption\",\n headers: headers,\n body: body,\n },\n callback\n );\n};\n\nexport const vendorResetPassword = (\n callback: CallableFunction,\n body: any,\n headers: any\n) => {\n apiService(\n {\n url: loginURLConfig.vendor_reset_password,\n method: \"PUT\",\n appidkey: urlConfig.appidkey,\n authType: \"encryption\",\n headers: headers,\n body: body,\n },\n callback\n );\n};\n","import { Idevice } from \"../components/types/device\";\n\nconst DeviceContext = (): Idevice => {\n\tlet device: Idevice = {};\n\tconst updateDevice = () => {\n\t\tdevice = {\n\t\t\tisMobile: document.body.offsetWidth <= 767 ? true : false,\n\t\t\tisTablet: document.body.offsetWidth > 767 && document.body.offsetWidth <= 1024 ? true : false,\n\t\t\tisDesktop: document.body.offsetWidth > 1024 ? true : false\n\t\t};\n\t};\n\tupdateDevice();\n\n\treturn device;\n};\n\nexport default DeviceContext;\n","import * as React from \"react\";\nimport \"../../../assets/scss/Login/login/generic/loginPopup.scss\";\n\nexport interface ILoginPopupProps {\n className?: string; // extra classname if required\n leftHeaderContent?: React.ReactChild; // text/element to show on the left side in the header\n centerHeaderContent?: React.ReactChild; // text/element to show in center in the header\n overlayClass?: string; // style object for popup\n hideVersion?: boolean; // if this is true, then don't show version number\n onClose?: () => void; // if this function is present, then only show cross icon\n}\n\nconst LoginPopup: React.FC = (props) => {\n return (\n
\n
\n {/* Header */}\n
\n
{props.leftHeaderContent}
\n
{props.centerHeaderContent}
\n
\n {props.onClose && (\n \n )}\n
\n
\n\n {/* Main content */}\n {props.children}\n
\n
\n );\n};\n\nexport default LoginPopup;\n","import * as React from \"react\";\nimport \"../../../assets/scss/Login/login/generic/loginErrMsg.scss\";\n\nexport interface ILoginErrMsgProps {\n className?: string; // extra classname(s) if necessary\n}\n\nconst LoginErrMsg: React.FC = (props) => {\n return (\n

\n {props.children}\n

\n );\n};\n\nexport default LoginErrMsg;\n","// ALL FUNCTIONS RETURN\n// VALID - NULL\n// INVALID - ERROR STRING\n\n/**\nimport { integerExp } from './regex';\n * @param value The numerical value that needs to be checked for integer\n * @returns return null if VALID; error message if INVALID\n */\nexport function isValidRegex(value: string, regex: RegExp): string | null {\n\treturn regex.test(value) ? null : \"value is not integer\";\n}\n\n/**\n * @param value The value that is required\n * @returns return null if value is present; error message if value is blank\n */\n export function required(value: any): string | null {\n\treturn value === undefined || value === null || value === \"\" ? \"value is required\" : null;\n}\n\n/**\n * @param value The value that is to be validated\n * @param min Value should be less than this number\n * @returns return null if value is not present or if value is >= min; error message if value < min\n */\n export function grtrThanEqTo(value: number, min: number): string | null {\n\treturn value === undefined || value === null || value >= min ? null : \"value should be greater\";\n}\n\n/**\n * @param value The value that is to be validated\n * @param max Value should be greater than this number\n * @returns return null if value is not present or if value is <= max; error message if value > max\n */\n export function lessThanEqTo(value: number, max: number): string | null {\n\treturn value === undefined || value === null || value <= max ? null : \"value should be smaller\";\n}","import { passwordHints } from \"../../Containers/Constants/commenFeatures\";\n\n/**\n * This regex checks for integers.\n *\n * - Tests true for literals like - `\"\", \"2\", \"32434325435\"`\n * - Tests false for literals like - `\"a\", \"12as\", \"as23\", \"123.13\"`\n */\nexport const integerExp = /^\\d*$/;\n\n/**\n * This regex checks for alphabets.\n *\n * - Tests true for literals like - `\"\", \"a\", \"vfsgreftgr\"`\n * - Tests false for literals like - `\"1\", \"12as\", \"as23\", \"s$ajkd\"`\n */\nexport const alphabetExp = /^[a-zA-Z ]*$/;\n\n/**\n * This regex checks for alphanumeric characters.\n *\n * - Tests true for literals like - `\"\", \"asd\", \"ASD\", \"123\"`\n * - Tests false for literals like - `\"_\", \"-\", \"$\", \".\", \" \", [any other non-alphanumeric character]`\n */\nexport const alphaNumExp = /^[a-zA-Z0-9]*$/;\n\n/**\n * This regex checks for alphanumeric and _characters.\n *\n * - Tests true for literals like - `\"\", \"asd\", \"ASD\", \"123\", \"A123_v\"`\n * - Tests false for literals like - `\"-\", \"$\", \".\", \" \", [any other non-alphanumeric character and _]`\n */\nexport const UserIdExp = /^[a-zA-Z0-9_]*$/;\n\n/**\n * This regex checks for emails.\n *\n * - Tests true for literals like - `\"\", \"asd\", \"ASD\", \"123\"`\n * - Tests false for literals like - `\"_\", \"-\", \"$\", \".\", \" \", [any other non-alphanumeric character]`\n */\nexport const emailRegex =\n /^[-_a-zA-Z0-9]+(\\.[_a-zA-Z0-9]+)*@[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*(\\.[a-zA-Z]{2,4})$/;\n\n/**\n * This regex checks if given string's length is between min and max characters.\n *\n * @param min min number of characters\n * @param max (optional) max number of characters. If not present then considered as infinity\n * @returns RegExp for checking if given string's length is between min and max characters\n */\nexport function betweenNChars(min: number, max?: number) {\n return new RegExp(\"^.{\" + min + \",\" + (max || \"\") + \"}\");\n}\n\n/**\n * This regex checks if the string is a valid pan\n */\nexport const pan = /^[a-zA-Z]{5}[\\d]{4}[a-zA-Z]{1}$/;\n\n/**\n * This regex checks if the string is a valid phone/mobile number\n */\nexport const phoneNo = /^[6789]\\d{9}$/;\n\n// This regex checks if the string is a valid Ip address\n\nexport const ValidateIPaddress =\n /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;\n\n/**\n * This regex checks if the string is a strong password\n */\n\nexport const notAllowedSplExp = /^[^()<>?%+:;{}[\\]\\\\|~`^\\-‘\",./₹]*$/;\nconst lowerUpperCase = new RegExp(\"(?=.*[a-z])(?=.*[A-Z])\");\nconst anumNSplCase = new RegExp(\"(?=.*[a-zA-Z])(?=.*[0-9])(?=.*[!@#$&])\");\nconst noSpaceCase = /^\\S*$/;\n\nexport function checkPasswordStranth(\n min: number,\n max: number,\n val: string,\n email?: string\n) {\n const list = JSON.parse(JSON.stringify(passwordHints));\n const checkLength = betweenNChars(min, max);\n\n checkLength.test(val)\n ? (list.checkLength = \"\")\n : (list.checkLength = passwordHints.checkLength);\n\n email !== val\n ? (list.sameAsLoginId = \"\")\n : (list.sameAsLoginId = passwordHints.sameAsLoginId);\n\n noSpaceCase.test(val)\n ? (list.NoSpace = \"\")\n : (list.NoSpace = passwordHints.NoSpace);\n\n lowerUpperCase.test(val)\n ? (list.upLowCase = \"\")\n : (list.upLowCase = passwordHints.upLowCase);\n\n anumNSplCase.test(val)\n ? (list.alpNumSpcl = \"\")\n : (list.alpNumSpcl = passwordHints.alpNumSpcl);\n\n notAllowedSplExp.test(val)\n ? (list.splNotAllow = \"\")\n : (list.splNotAllow = passwordHints.splNotAllow);\n\n return list;\n}\n","import * as React from \"react\";\nimport \"../../assets/scss/generic/inputField.scss\";\nimport { indexer } from \"../types/genericTypes\";\nimport {\n required,\n isValidRegex,\n grtrThanEqTo,\n lessThanEqTo,\n} from \"../utils/validation\";\nimport { integerExp, alphaNumExp } from \"../utils/regex\";\n\nexport interface IInputFieldProps {\n defaultValue?: string; // The defaultValue in input field (pass only if required)\n placeholder?: string; // placeholder\n prefix?: React.ReactChild; // text/element to show before the input field\n suffix?: React.ReactChild; // text/element to show after the input field\n helpText?: string; // help text\n helpTextColor?: \"grey\" | \"blue\"; // the color of help text, takes gray as default\n errorText?: string | null; // error text\n required?: boolean; // true if is required\n integer?: boolean; // true if only integer can be entered\n alphanum?: boolean; // true if only alphanumeric can be entered\n float?: RegExp; // number of digits after decimal\n min?: number; // minimum number\n max?: number; // maximum number\n className?: string; // extra classname if needed for module specific style\n type?: string; // type of input\n maxLength?: number; // if there is a max length for the input\n pattern?: RegExp; // validate any regExp\n id?: string;\n getValue?: boolean; // To get value on onBlur function\n autoComplete?: \"on\" | \"off\"; // used for switching on/off autocomplete\n onChange: (value: string) => string | void; // function to be called on change. Return string if value needs to be changed from outside\n onBlur: (error: indexer) => void; // function to be called on blur, all errors will be available in error object\n autoFocus?: boolean; // true if\n}\n\nconst InputField: React.FC = (props) => {\n // sets the default value of input if present\n // value: value of the input (type = string)\n // setValue: function to set value\n const [value, setValue] = React.useState(props.defaultValue || \"\");\n\n // if default value is updated from outside, change it inside also\n React.useEffect(() => {\n if (props.defaultValue !== undefined && value !== props.defaultValue) {\n setValue(props.defaultValue);\n }\n }, [props.defaultValue]);\n\n // when focussed, this helps to colour the border of input_field_cont\n const [focusClass, setFocusClass] = React.useState(\"\");\n\n /**\n * @param value The string that needs to be checked for integer\n * @returns If integer need not be checked, then return true.\n * - If integer needs to be checked, then\n * - If value is valid integer, then return true; otherwise, return false\n */\n function isValidInteger(value: string): boolean {\n return (\n !props.integer || (props.integer && !isValidRegex(value, integerExp))\n );\n }\n\n /**\n * @param value The string that needs to be checked for float\n * @returns If float need not be checked, then return true.\n * - If float needs to be checked, then\n * - if value is valid float, then return true; otherwise, return false\n */\n function isValidFloat(value: string): boolean {\n return !props.float || (props.float && !isValidRegex(value, props.float));\n }\n\n /**\n * @param value The string that needs to be checked for alphanumeric characters\n * @returns If alphanum need not be checked, then return true.\n * - If alphanum needs to be checked, then\n * - if value is valid alphanum, then return true; otherwise, return false\n */\n function isValidAlphaNum(value: string): boolean {\n return (\n !props.alphanum || (props.alphanum && !isValidRegex(value, alphaNumExp))\n );\n }\n\n /**\n * @param value The string that needs to be checked for maxlength\n * @returns If maxlength need not be checked, then return true.\n * - If maxlength needs to be checked, then\n * - if value has less characters than maxlength, then return true; otherwise, return false\n */\n function isValidMaxLength(value: string): boolean {\n return props.maxLength === undefined || value.length <= props.maxLength;\n }\n\n /**\n * @param value The value that is required\n * @returns If required need not be checked, then return true.\n * - If required needs to be checked, return true if value is not present; false if value is present\n */\n function isRequired(value: any): boolean {\n return !props.required || (props.required && !!required(value));\n }\n\n /**\n * @param value The value that is to be validated\n * @returns If min need not be checked, then return true.\n * - If min needs to be checked,\n * - throw error if value is string\n * - return true if value < min; false if value >= min\n */\n function isLessThanMin(value: string): boolean {\n if (props.min === undefined) {\n return true;\n }\n if (isNaN(+value)) {\n throw Error(\"Can't validate non-numerical value for min\");\n }\n return !!grtrThanEqTo(+value, props.min);\n }\n\n /**\n * @param value The value that is to be validated\n * @returns If max need not be checked, then return true.\n * - If max needs to be checked,\n * - throw error if value is string\n * - return true if value > max; false if value <= min\n */\n function isGrtrThanMax(value: string): boolean {\n if (props.max === undefined) {\n return true;\n }\n if (isNaN(+value)) {\n throw Error(\"Can't validate non-numerical value for max\");\n }\n return !!lessThanEqTo(+value, props.max);\n }\n\n /**\n * @param value The string that needs to be checked for the pattern\n * @returns If pattern need not be checked, then return true.\n * - If pattern needs to be checked, then\n * - if value is valid pattern, then return true; otherwise, return false\n */\n function isValidPattern(value: string): boolean {\n return (\n !props.pattern || (props.pattern && !isValidRegex(value, props.pattern))\n );\n }\n\n /**\n * This function runs on blur.\n * This removes the focus class on input_field_cont and removes commas.\n * This function calls the onBlur callback function with all the errors.\n */\n function handleBlur() {\n setFocusClass(\"\");\n\n let errorObj: indexer = {};\n\n if (props.required) {\n errorObj = { ...errorObj, required: isRequired(value) }; // set isRequired error\n }\n if (props.min) {\n errorObj = { ...errorObj, min: isLessThanMin(value) }; // set error for min\n }\n if (props.max) {\n errorObj = { ...errorObj, max: isGrtrThanMax(value) }; // set error for max\n }\n if (props.pattern) {\n errorObj = { ...errorObj, pattern: isValidPattern(value) }; // set error for pattern\n }\n if (props.getValue) {\n errorObj = { ...errorObj, value: value }; // set error for pattern\n }\n props.onBlur(errorObj);\n }\n\n /**\n * Checks for all the validations and then changes value accordingly\n * @param e The input event\n */\n function handleChange(e: React.FocusEvent) {\n let resolvedValue: string;\n if (props.type === \"nonChangeable\" && props.defaultValue !== undefined) {\n setValue(props.defaultValue);\n } else {\n if (\n (e.target.value || e.target.value === \"\" || e.target.value === \"0\") &&\n isValidInteger(e.target.value) &&\n isValidFloat(e.target.value) &&\n isValidAlphaNum(e.target.value) &&\n isValidMaxLength(e.target.value)\n ) {\n // if value needs to be changed then process the new value\n resolvedValue = e.target.value;\n } else {\n // otherwise process the previous state\n resolvedValue = value;\n }\n const newValue = props.onChange(resolvedValue || \"\"); // call onchange callback\n\n if (newValue !== undefined) {\n setValue(newValue); // set the new value\n } else {\n setValue(resolvedValue || \"\"); // set the new value\n }\n }\n }\n\n return (\n
\n \n {props.prefix &&
{props.prefix}
}\n setFocusClass(\" focus\")}\n onBlur={handleBlur}\n type={props.type}\n id={props.id}\n autoComplete={props.autoComplete}\n autoFocus={props.autoFocus}\n />\n {props.suffix &&
{props.suffix}
}\n
\n {props.errorText &&

{props.errorText}

}\n {props.helpText && (\n

\n {props.helpText}\n

\n )}\n \n );\n};\n\nexport default InputField;\n","import React from \"react\";\nimport { Link } from \"react-router-dom\";\nimport \"../../assets/scss/generic/edButton.scss\";\n\nexport interface IBtnProps {\n\tvalue: string | React.ReactElement;\n\t// value - display text of the button, react components can also be passed if required\n\ttype?: \"button\" | \"submit\" | \"reset\"; // the three types of button\n\tbtnTyp: \"primary\" | \"secondary\" | \"link\" | \"blue-link\"; // color of the button\n\tslim?: boolean; // pass this prop if button is slim\n\tdisabled?: boolean; // if disabled then pass true\n\tclassName?: string; // optional className if additional CSS needs to be provided\n}\nexport interface IEdButtonProps extends IBtnProps {\n\tonClick?: (event: React.MouseEvent) => void; // the function to be called onClick\n}\n\ninterface IEdLinkButtonProps extends IBtnProps {\n\tLinkHref: string;\n}\n\nconst EdButton: React.FC = (props: IEdButtonProps) => {\n\t// Checks if button or action\n\tconst btnOrActionClass = props.btnTyp === \"primary\" || props.btnTyp === \"secondary\" ? \"button\" : \"action\";\n\n\treturn (\n\t\t\n\t\t\t{props.value}\n\t\t\n\t);\n};\n\nexport const EdLinkButton: React.FC = (props: IEdLinkButtonProps) => {\n\t// Checks if button or action\n\tconst btnOrActionClass = props.btnTyp === \"primary\" || props.btnTyp === \"secondary\" ? \"button\" : \"action\";\n\n\treturn (\n\t\t\n\t\t\t{props.value}\n\t\t\n\t);\n};\n\nexport const EdALinkButton: React.FC = (props: IEdLinkButtonProps) => {\n\t// Checks if button or action\n\tconst btnOrActionClass = props.btnTyp === \"primary\" || props.btnTyp === \"secondary\" ? \"button\" : \"action\";\n\n\treturn (\n\t\t\n\t\t\t{props.value}\n\t\t\n\t);\n};\n\nexport default EdButton;\n","import React, { useEffect } from \"react\";\nimport LoginErrMsg from \"../../../login/generic/loginErrMsg\";\nimport InputField from \"../../../generic/inputField\";\nimport EdButton from \"../../../generic/edButton\";\nimport { Link } from \"react-router-dom\";\nimport { emailRegex } from \"../../../utils/regex\";\n\nexport interface VendorLoginFormProps {\n disableForm: boolean; // used to disable/enable form from parent\n errorMsg?: string; // error message that came from api\n onSubmit: () => void; // function to be called on submit\n onRemoveError: () => void; // removes the errorMsg\n loginForm: any;\n setLoginForm: (val: string) => void; //\n}\n\nconst LoginForm: React.FC = (props) => {\n const [loginFormErr, setLoginFormErr] = React.useState({\n username: \"\",\n password: \"\",\n });\n const [showPassword, setShowPassword] = React.useState(false);\n\n const handleSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n props.onSubmit();\n };\n\n useEffect(() => {\n if (props.errorMsg) {\n props.onRemoveError();\n }\n }, [props.loginForm]);\n\n return (\n
\n
\n \n \n props.setLoginForm({ ...props.loginForm, userName: username })\n }\n onBlur={(error) => {\n setLoginFormErr({\n ...loginFormErr,\n username: error.pattern ? \"\" : \"Please enter a valid email\",\n });\n }}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: example@email.com\"\n autoComplete=\"off\"\n />\n\n \n \n props.setLoginForm({ ...props.loginForm, password: password })\n }\n onBlur={() => {}}\n className=\"login_inp mg-b40 focus\"\n placeholder=\"Eg:5678987\"\n // autoFocus={props.autoFocus}\n suffix={\n setShowPassword(!showPassword)}\n />\n }\n />\n\n {/* Show error if any */}\n {props.errorMsg && (\n {props.errorMsg}\n )}\n\n {/* Disable button if username or password is blank or form is disabled from outside */}\n error) ||\n Object.values(props.loginForm).some((value) => !value)\n }\n />\n \n\n
\n

\n \n Forgot Password?\n \n

\n
\n
\n );\n};\n\nexport default LoginForm;\n","export default __webpack_public_path__ + \"static/media/nuvama-logo.3880196d.svg\";","import React from \"react\";\nimport DeviceContext from \"../../../../services/indentifyDevice\";\nimport LoginPopup from \"../../../login/generic/loginPopup\";\nimport LoginForm, { VendorLoginFormProps } from \"../Forms/LoginForm\";\nimport NuvamaLogo from \"../../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface VendorLoginScreenProps extends VendorLoginFormProps {\n onClose?: () => void;\n}\n\nconst LoginScreen: React.FC = (props) => {\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_scrn\"\n >\n \n \n );\n};\n\nexport default LoginScreen;\n","import { apiService } from \"../apiService\";\nimport loginURLConfig from \"../../config/login/loginURLConfig\";\n\nexport const getServerKey = (callback: CallableFunction) => {\n apiService(\n {\n url: loginURLConfig.getServerKey,\n method: \"GET\",\n authType: \"SPK\",\n },\n callback\n );\n};\n","export const RoutesUrl = {\n // common routes\n Signup: \"/signup\",\n Home: \"/\",\n Support: \"/support\",\n Article: \"/articles\",\n Videos: \"/videos\",\n Resouces: \"/resources\",\n Etotp: \"/external-totp\",\n ResoucesSearch: \"/resources/:search\",\n TermsAndConditions: \"/terms-conditions\",\n\n // Login Urls for vendor\n VendorLogin: \"/vendor/login\",\n VendorForgetPassword: \"/vendor/forgot-password\",\n VendorSetPassword: \"/vendor/set-password\",\n\n // Login Url for client\n ClientLogin: \"/login\",\n LoginHelp: \"/login/help\",\n ClientForgotLoginId: \"/login/forgot-loginid\",\n ClientForgotPassword: \"/login/forgot-password\",\n ClientUnblockAccount: \"/login/unblock-account\",\n ClientForgotYOB: \"/login/forgot-yob\",\n\n // Client Urls\n MyApps: \"/my-apps\",\n\n // Vendor urls\n VendorDashboard: \"/vendor/dashboard\",\n VendorMyApps: \"/vendor/my-apps\",\n VendorReqACall: \"/vendor/request-a-call\",\n VendorSignup: \"/vendor-signup\",\n};\n","// Encryption involves two layers. AES-GCM encryption with Symmetic secret key for encrypting the payload & RSA-OAEP with public-private key pairs (a.k.a Assymetric) for encrypting the symmetric key. RSA encryption has size constraints that prevents the use of RSA for a large payload encryption. Hence RSA will be used for encrypting only three items, 1) AES symmetric key, 2) AES iv, 3) one UUID\n\nfunction buf2hex(buffer) {\n // buffer is an ArrayBuffer\n return Array.prototype.map\n .call(new Uint8Array(buffer), (x) => (\"00\" + x.toString(16)).slice(-2))\n .join(\"\");\n}\n\n// from https://stackoverflow.com/a/11562550/9014097\nfunction buf2Base64(buffer) {\n return btoa(String.fromCharCode.apply(null, new Uint8Array(buffer)));\n}\n\nexport const hashingFeatures = async (val) => {\n console.log(\"val\", val);\n const inputBytes = new TextEncoder().encode(val);\n const hashBytes = await window.crypto.subtle.digest(\"SHA-256\", inputBytes);\n const hax = JSON.stringify(buf2hex(hashBytes));\n return hax;\n};\n\n// Convert an ArrayBuffer into a string from https://developers.google.com/web/updates/2012/06/How-to-convert-ArrayBuffer-to-and-from-String\nconst ab2str = (buf) => {\n return String.fromCharCode.apply(null, new Uint8Array(buf));\n};\n\n// Convert a string into an ArrayBuffer from https://developers.google.com/web/updates/2012/06/How-to-convert-ArrayBuffer-to-and-from-String\nconst str2ab = (str) => {\n const buf = new ArrayBuffer(str.length);\n const bufView = new Uint8Array(buf);\n for (let i = 0, strLen = str.length; i < strLen; i++) {\n bufView[i] = str.charCodeAt(i);\n }\n return buf;\n};\n\n// Encode string into a form we can use for the encrypt operation.\nconst getMessageForEncryption = (message) => {\n let enc = new TextEncoder();\n return enc.encode(message);\n};\n\n// Convert base64 string into an Array buffer\nconst getArrayBuffer = (message) => {\n // base64 decode the string to get the binary data\n const binaryDerString = window.atob(message);\n // convert from a binary string to an ArrayBuffer\n const genArrayBuffer = str2ab(binaryDerString);\n return genArrayBuffer;\n};\n\n// Generate RSA key pair\nexport const generateRsaKey = async () => {\n const rsaAoepKeyPair = await window.crypto.subtle.generateKey(\n {\n name: \"RSA-OAEP\",\n modulusLength: 2048,\n publicExponent: new Uint8Array([1, 0, 1]),\n hash: \"SHA-256\",\n },\n true,\n [\"encrypt\", \"decrypt\"]\n );\n return rsaAoepKeyPair;\n};\n\n// Export the RSA public key for sharing.\nexport const exportRsaCryptoKey = async (publicKey) => {\n const exported = await window.crypto.subtle.exportKey(\"spki\", publicKey);\n const exportedAsString = ab2str(exported);\n const exportedAsBase64 = window.btoa(exportedAsString);\n return exportedAsBase64;\n};\n\n// Use base64 string to import RSA crypto Key Object\nexport const importRsaKey = async (publicKey) => {\n const publicKeyArrBuffer = getArrayBuffer(publicKey);\n const cryptoKeyObj = await window.crypto.subtle.importKey(\n \"spki\",\n publicKeyArrBuffer,\n {\n name: \"RSA-OAEP\",\n hash: \"SHA-256\",\n },\n true,\n [\"encrypt\"]\n );\n return cryptoKeyObj;\n};\n\n// Get the message, encoded it & encrypt using RSA-OAEP method\nexport const rsaEncryptMessage = async (publicKey, message) => {\n let encoded = getMessageForEncryption(message);\n const rsaCipheredtext = await window.crypto.subtle.encrypt(\n {\n name: \"RSA-OAEP\",\n },\n publicKey,\n encoded\n );\n const exportedAsString = ab2str(rsaCipheredtext);\n const exportedAsBase64 = window.btoa(exportedAsString);\n return exportedAsBase64;\n};\n\n// Get the RSA-OAEP encrypted text, convert to array buffer & decrypt it\nexport const rsaDecryptMessage = async (privateKey, message) => {\n const encryptedArrayBuffer = getArrayBuffer(message);\n const decrypted = await window.crypto.subtle.decrypt(\n {\n name: \"RSA-OAEP\",\n },\n privateKey,\n encryptedArrayBuffer\n );\n const dec = new TextDecoder();\n const decryptedMessage = dec.decode(decrypted);\n return decryptedMessage;\n};\n\n// Generate AES-GCM secret key\nexport const generateAesKey = async () => {\n const aesGcmSecretKey = await window.crypto.subtle.generateKey(\n {\n name: \"AES-GCM\",\n length: 256,\n },\n true,\n [\"encrypt\", \"decrypt\"]\n );\n return aesGcmSecretKey;\n};\n\n// Export the AES-GCM secret key for sharing.\nexport const exportAesCryptoKey = async (key) => {\n const exported = await window.crypto.subtle.exportKey(\"raw\", key);\n const exportedKeyBuffer = new Uint8Array(exported);\n const exportedAsString = ab2str(exportedKeyBuffer);\n const exportedAsBase64 = window.btoa(exportedAsString);\n return exportedAsBase64;\n};\n\n// Use base64 string to import AES secret Key\nexport const importAesKey = async (key) => {\n const rawKey = getArrayBuffer(key);\n const cryptoKeyObj = await window.crypto.subtle.importKey(\n \"raw\",\n rawKey,\n \"AES-GCM\",\n true,\n [\"encrypt\", \"decrypt\"]\n );\n return cryptoKeyObj;\n};\n\n// Get the message, encoded it & encrypt using AES-GCM method\nexport const aesEncryptMessage = async (key, message) => {\n let encoded = getMessageForEncryption(message);\n // iv will be needed for decryption\n const iv = window.crypto.getRandomValues(new Uint8Array(12));\n const ivString = ab2str(iv);\n const ivBase64 = window.btoa(ivString);\n const aesCipheredtext = await window.crypto.subtle.encrypt(\n {\n name: \"AES-GCM\",\n iv: iv,\n },\n key,\n encoded\n );\n const exportedAsString = ab2str(aesCipheredtext);\n const exportedAsBase64 = window.btoa(exportedAsString);\n const aesEncryptObject = {\n aesCipheredText: exportedAsBase64,\n ivBase64,\n };\n return aesEncryptObject;\n};\n\n// Get the AES-GCM encrypted text, convert to array buffer & decrypt it\nexport const aesDecryptMessage = async (key, ivBase64, message) => {\n const encryptedArrayBuffer = getArrayBuffer(message);\n const iv = getArrayBuffer(ivBase64);\n const decrypted = await window.crypto.subtle.decrypt(\n {\n name: \"AES-GCM\",\n iv: iv,\n },\n key,\n encryptedArrayBuffer\n );\n const dec = new TextDecoder();\n const decryptedMessage = dec.decode(decrypted);\n return decryptedMessage;\n};\n\nlet rsaAoepKeyPair;\nlet exportRsaPublicKey;\n\nexport const encryption = async (SPK, data) => {\n window.sessionStorage.setItem(\"serverPublicKey\", SPK);\n const importedRsaCryptoKeyObj = await importRsaKey(SPK);\n const aesGcmKey = await generateAesKey();\n const exportAesSecretKey = await exportAesCryptoKey(aesGcmKey);\n const { aesCipheredText, ivBase64 } = await aesEncryptMessage(\n aesGcmKey,\n data\n );\n const headerPayload = {\n reqId: Date.now(),\n clientSymmetric: exportAesSecretKey,\n clientIv: ivBase64,\n };\n const cipheredheaderPayload = await rsaEncryptMessage(\n importedRsaCryptoKeyObj,\n JSON.stringify(headerPayload)\n );\n rsaAoepKeyPair = await generateRsaKey();\n exportRsaPublicKey = await exportRsaCryptoKey(rsaAoepKeyPair.publicKey);\n window.sessionStorage.setItem(\"clientPublicKey\", exportRsaPublicKey);\n const header = {\n SEPRK: cipheredheaderPayload,\n CPK: exportRsaPublicKey,\n };\n\n const reqObj = {\n encryptedRequest: aesCipheredText,\n };\n\n return { header, reqObj };\n};\n\nexport const decryption = async (CEPRK, response) => {\n const rsaDecrytedText = await rsaDecryptMessage(\n rsaAoepKeyPair.privateKey,\n CEPRK\n );\n const rsaDecrytedobj = JSON.parse(rsaDecrytedText);\n const importedAesCryptoKeyObj = await importAesKey(\n rsaDecrytedobj.symmetricSecret\n );\n const aesDecrytedText = await aesDecryptMessage(\n importedAesCryptoKeyObj,\n rsaDecrytedobj.responseIV,\n response\n );\n const decrytedText = JSON.parse(aesDecrytedText);\n return decrytedText;\n};\n","export enum ELoginScreenState {\n LOADING = 1,\n LOGIN_ID,\n PASSWORD,\n YOB,\n ETOTP,\n OTP,\n ACC_OPENING,\n LEAD_FORM,\n LOGIN_WITH_API_KEY,\n PASSWORD_WITH_API_KEY,\n ETOTP_WITH_API_KEY,\n YOB_WITH_API_KEY,\n OTP_WITH_API_KEY,\n}\n\nexport enum ELoginPopupState {\n LOGINID_SENT = 1,\n EMAIL_SENT,\n PASSWORD_UPDATE,\n OPEN_ACC_SUCC,\n}\n\nexport const urls = {\n login: \"/login\",\n};\n","import * as URLConfig from \"../domain\";\n\nconst config = URLConfig.config;\n\nconst myAppsUrlConfig = {\n myApps: config.jmw + config.jmw_login + \"myapps/\",\n appIcon: config.rootUrl + \"EWWebImages/WebImages/\",\n // Vendor's config\n mySubscription: config.jmw + config.jmw_content + \"mysubscription/\",\n downloadReports:\n config.jmw +\n config.jmw_content +\n \"mysubscription/analytics/report/download\",\n};\n\nexport default myAppsUrlConfig;\n","import { apiService } from \"../apiService\";\nimport urlConfig from \"../../config/domain\";\nimport myAppsUrlConfig from \"../../config/MyApp/myAppsURLConfig\";\n\nexport const getAllApps = (callback, userId) => {\n console.log(\"getAllApps\", userId);\n apiService(\n {\n url: myAppsUrlConfig.myApps + userId,\n method: \"GET\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n },\n callback\n );\n};\n\nexport const deleteApp = (callback, app) => {\n const url = myAppsUrlConfig.deleteApp + app.accId + app.appNm;\n console.log(url);\n apiService(\n {\n url: myAppsUrlConfig.myApps + app.accId + \"?appNm=\" + app.appNm,\n method: \"DELETE\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n source: sessionStorage.getItem(\"source\") || undefined,\n sourcetoken: sessionStorage.getItem(\"sourceToken\") || undefined,\n },\n callback\n );\n};\nexport const createApp = (callback, userId, body) => {\n apiService(\n {\n url: myAppsUrlConfig.myApps + userId,\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\n\nexport const editApp = (callback, userId, body) => {\n apiService(\n {\n url: myAppsUrlConfig.myApps + userId,\n method: \"PUT\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\n\nexport const getAnalyticsData = (callback, userId, body) => {\n apiService(\n {\n url:\n myAppsUrlConfig.myApps +\n \"edelapi/clientanalytics/\" +\n userId +\n `?frmDt=${body.frmDt}&toDt=${body.toDt}&src=${body.api_key}`,\n method: \"GET\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n },\n callback\n );\n};\n\n// Vendor's api functions\nexport const vendorGetAllApps = (callback, userId) => {\n apiService(\n {\n url: myAppsUrlConfig.mySubscription + userId,\n method: \"GET\",\n authType: \"access_token\",\n appidkey: urlConfig.appidkey,\n },\n callback\n );\n};\n\nexport const vendorCreateApp = (callback, userId, body) => {\n apiService(\n {\n url: myAppsUrlConfig.mySubscription + userId,\n method: \"POST\",\n authType: \"access_token\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\nexport const vendorModifyApp = (callback, userId, body, access_token) => {\n apiService(\n {\n url: myAppsUrlConfig.mySubscription + userId,\n method: \"PUT\",\n authType: \"access_token\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\nexport const vendorDashboard = (callback, url) => {\n apiService(\n {\n url: `${myAppsUrlConfig.mySubscription}analytics/${url.userId}?frmDt=${url.frmDt}&toDt=${url.toDt}`,\n method: \"GET\",\n authType: \"access_token\",\n appidkey: urlConfig.appidkey,\n body: {},\n },\n callback\n );\n};\nexport const downloadReports = (callback, url) => {\n apiService(\n {\n url: `${myAppsUrlConfig.downloadReports}?frmDt=${url.frmDt}&toDt=${url.toDt}&apiKey=${url.apiKey}&rpTyp=${url.rpTyp}`,\n method: \"GET\",\n authType: \"access_token\",\n appidkey: urlConfig.appidkey,\n body: {},\n },\n callback\n );\n};\n","import React, { useContext, useState } from \"react\";\nimport { useHistory } from \"react-router-dom\";\n// import DeviceContext from \"../../../services/indentifyDevice\";\nimport LoginScreen from \"../../../components/VendorComponents/VendorLogin/LoginScreen/LoginScreen\";\nimport { MyAuthContext } from \"../../../Context/AuthContext\";\nimport { vendorLogin } from \"../../../services/login/loginApiService\";\nimport { getServerKey } from \"../../../services/encription/encriptionServices\";\nimport LoginService from \"../../../services/login/loginService\";\nimport {\n addTolocalStorage,\n getTolocalStorage,\n keyClockclient,\n} from \"../../Constants/commenFeatures\";\nimport { RoutesUrl } from \"../../Routes/constents\";\nimport {\n encryption,\n decryption,\n hashingFeatures,\n} from \"../../../services/encription/encryption\";\nimport { vendorGetAllApps } from \"../../../services/MyApps/myAppServise\";\n\nexport interface VendorLoginCtrlState {\n disableForm: boolean;\n errorMsg?: string;\n // popupMessage?: string;\n}\n\nconst VendorLoginCtrl: React.FC = (props) => {\n // login starts with LOGIN screen\n const [loginCtrl, setLoginCtrl] = React.useState({\n disableForm: false,\n errorMsg: undefined,\n });\n\n const [loginForm, setLoginForm] = useState({\n userName: \"\",\n password: \"\",\n });\n\n const history = useHistory();\n\n const myAuthContext = useContext(MyAuthContext);\n\n const submitLoginForm = async () => {\n await getServerKey(getServerTokenRes);\n // console.log(\"hash\", hash);\n };\n\n const getServerTokenRes = async (res: any, newResp: any) => {\n var SPK = newResp.headers.get(\"SPK\");\n if (res && res.error) {\n setLoginCtrl({\n disableForm: true,\n errorMsg: \"Something went wrong, Please try again later\",\n });\n } else {\n const hashPassword = await hashingFeatures(loginForm.password);\n let jsonData = JSON.stringify({\n user: {\n userName: loginForm.userName,\n password: hashPassword,\n },\n client: keyClockclient,\n });\n // Here we are encrypt the data\n let encrypedForm = await encryption(SPK, jsonData);\n vendorLogin(submitLoginFormRes, encrypedForm.reqObj, encrypedForm.header);\n }\n };\n\n const mySubAppsRes = (res: any) => {\n if (res && res.data) {\n addTolocalStorage(\"apiKey\", res.data.apiKey);\n addTolocalStorage(\"appNm\", res.data.appNm);\n history.push(RoutesUrl.VendorDashboard);\n } else {\n history.push(RoutesUrl.VendorMyApps);\n }\n };\n\n const callOnLoad = async () => {\n let getldId = await getTolocalStorage(\"ldID\");\n if (getldId !== undefined && getldId) {\n vendorGetAllApps(mySubAppsRes, getldId);\n }\n };\n\n const submitLoginFormRes = async (res: any, newResp: any) => {\n if (!res || res.error) {\n setLoginCtrl({\n disableForm: true,\n errorMsg: res.error.errorMessage,\n });\n } else if (res && res.response) {\n let CEPRK = newResp.headers.get(\"CEPRK\");\n\n // After getting response we need to decrypt the response\n let decryptedData = await decryption(CEPRK, res.response);\n // after getting decrypted Data\n LoginService.logout();\n await addTolocalStorage(\"loginAs\", \"vendor\");\n await addTolocalStorage(\"ldID\", decryptedData.data.leadID);\n await addTolocalStorage(\n \"access_token\",\n decryptedData.data.token.access_token\n );\n await addTolocalStorage(\"tncAccepted\", true);\n myAuthContext.isAuthFunction(true, true);\n callOnLoad();\n } else {\n setLoginCtrl({\n disableForm: true,\n errorMsg: \"Request failed\",\n });\n }\n };\n\n const onClose = () => {\n history.push(RoutesUrl.Home);\n };\n\n const removeError = () => {\n setLoginCtrl({\n disableForm: false,\n errorMsg: undefined,\n });\n };\n\n const getScreen = () => {\n return (\n
\n \n
\n );\n };\n\n return
{getScreen()}
;\n};\n\nexport default VendorLoginCtrl;\n","import React, { useEffect, useState } from \"react\";\nimport LoginErrMsg from \"../../../login/generic/loginErrMsg\";\nimport InputField from \"../../../generic/inputField\";\nimport EdButton from \"../../../generic/edButton\";\nimport { emailRegex } from \"../../../utils/regex\";\nimport { useHistory } from \"react-router-dom\";\nimport { RoutesUrl } from \"../../../../Containers/Routes/constents\";\n\nexport interface VForgotPasswordFormProps {\n disableForm: boolean; // used to disable/enable form from parent\n errorMsg?: string; // error message that came from api\n email: string; // email address\n setEmail: (val: string) => void; // set email address\n onSubmit: () => void; // function to be called on submit\n onRemoveError: () => void; // removes the errorMsg\n}\n\nconst ForgotPasswordForm: React.FC = (props) => {\n const [userNameErr, setUserNameErr] = useState(\"\");\n const history = useHistory();\n\n const handleSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n props.onSubmit();\n };\n\n useEffect(() => {\n if (props.errorMsg) {\n props.onRemoveError();\n }\n }, [props.email]);\n\n return (\n
\n
\n
\n

Forgot Password

\n

\n Please enter you registered email and we will send you the OTP and\n instruction to reset password\n

\n
\n \n props.setEmail(value)}\n onBlur={(error) => {\n setUserNameErr(error.pattern ? \"\" : \"Please enter a valid email\");\n }}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: example@email.com\"\n autoComplete=\"off\"\n errorText={userNameErr}\n />\n\n {/* Show error if any */}\n {props.errorMsg && (\n {props.errorMsg}\n )}\n\n {/* Disable button if username or password is blank or form is disabled from outside */}\n \n \n\n
\n

\n Landed Here by mistake?{\" \"}\n history.push(RoutesUrl.VendorLogin)}\n />\n

\n
\n
\n );\n};\n\nexport default ForgotPasswordForm;\n","import React from \"react\";\nimport DeviceContext from \"../../../../services/indentifyDevice\";\nimport LoginPopup from \"../../../login/generic/loginPopup\";\nimport ForgotPasswordForm, {\n VForgotPasswordFormProps,\n} from \"../Forms/ForgotPasswordForm\";\nimport NuvamaLogo from \"../../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface VForgotPasswordScreenProps extends VForgotPasswordFormProps {\n onClose?: () => void;\n}\nconst ForgotPassword: React.FC = (props) => {\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_scrn\"\n >\n \n \n );\n};\n\nexport default ForgotPassword;\n","import React from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport ForgotPassword from \"../../../components/VendorComponents/VendorLogin/LoginScreen/ForgotPassword\";\nimport { getServerKey } from \"../../../services/encription/encriptionServices\";\nimport {\n decryption,\n encryption,\n} from \"../../../services/encription/encryption\";\nimport { vendorForgotPassword } from \"../../../services/login/loginApiService\";\nimport { keyClockclient } from \"../../Constants/commenFeatures\";\nimport { RoutesUrl } from \"../../Routes/constents\";\n\nexport interface VendorForgetPasswordState {\n disableForm: boolean;\n errorMsg?: string;\n popupMessage?: string;\n}\n\nconst VendorForgetPassword: React.FC = () => {\n // login starts with LOGIN screen\n const [loginCtrl, setLoginCtrl] = React.useState({\n disableForm: false,\n errorMsg: undefined,\n });\n const [email, setEmail] = React.useState(\"\");\n\n const history = useHistory();\n\n const submitForgotPassword = async () => {\n localStorage.setItem(\"email\", email);\n await getServerKey(getServerTokenRes);\n };\n\n const getServerTokenRes = async (res: any, newResp: any) => {\n var SPK = newResp.headers.get(\"SPK\");\n if (res && res.error) {\n setLoginCtrl({\n disableForm: true,\n errorMsg: \"Something went wrong, Please try again later\",\n });\n } else {\n let jsonData = JSON.stringify({\n email: email,\n client: keyClockclient,\n });\n // Here we are encrypt the data\n let encrypedForm = await encryption(SPK, jsonData);\n\n vendorForgotPassword(\n submitForgotPasswordRes,\n encrypedForm.reqObj,\n encrypedForm.header\n );\n }\n };\n const submitForgotPasswordRes = async (res: any, newResp: any) => {\n if (res && res.error) {\n setLoginCtrl({\n disableForm: true,\n errorMsg: res.error.errorMessage,\n });\n } else if (res && res.response) {\n let CEPRK = newResp.headers.get(\"CEPRK\");\n\n let decryptedData = await decryption(CEPRK, res.response);\n console.log(\"decryptedData\", decryptedData);\n if (decryptedData && decryptedData.status) {\n history.push(RoutesUrl.VendorSetPassword);\n }\n } else {\n setLoginCtrl({\n disableForm: true,\n errorMsg: \"Request failed\",\n });\n }\n };\n\n const onClose = () => {\n history.push(RoutesUrl.Home);\n };\n\n const removeError = () => {\n setLoginCtrl({\n disableForm: false,\n errorMsg: undefined,\n });\n };\n\n const getScreen = () => {\n return (\n
\n \n
\n );\n };\n\n return
{getScreen()}
;\n};\n\nexport default VendorForgetPassword;\n","import React from \"react\";\nimport InputField from \"./inputField\";\nimport { SIGNUP_FORM } from \"../../Containers/vendor/Signup/signupConstensts\";\n\ninterface IconfirmPasswordProps {\n form: SIGNUP_FORM | any;\n error: SIGNUP_FORM | any;\n showPasswordHint: Array;\n onChange: (value: SIGNUP_FORM | any) => void;\n setError: (value: SIGNUP_FORM | any) => void;\n}\n\nconst ConfirmPassword: React.FC = (props) => {\n const [showPassword, setShowPassword] = React.useState({\n password: false,\n confirmPassword: false,\n });\n\n return (\n <>\n \n {\n props.onChange({ ...props.form, password });\n }}\n onBlur={(error) => {\n props.setError({\n ...props.error,\n password:\n props.showPasswordHint && props.showPasswordHint?.length > 0\n ? \"Please follow the given list below to make a strong password\"\n : \"\",\n confirmPassword: props.form.confirmPassword\n ? error.value === props.form.confirmPassword\n ? \"\"\n : \"Password and confirm-password are not same\"\n : \"\",\n });\n }}\n className=\"login_inp focus\"\n // errorText={props.signupFormErr.password}\n suffix={\n \n setShowPassword({\n ...showPassword,\n password: !showPassword.password,\n })\n }\n />\n }\n />\n
    \n {props.showPasswordHint &&\n props.showPasswordHint.map((list: string, index: number) => {\n return list && list.includes(\"(\") ? (\n
  • \n {list.split(\"(\")[0]}\n

    {\"(\" + list.split(\"(\")[1]}

    \n
  • \n ) : (\n
  • {list}
  • \n );\n })}\n
\n \n {\n props.onChange({ ...props.form, confirmPassword });\n }}\n onBlur={(error) => {\n props.setError({\n ...props.error,\n confirmPassword:\n error.value === props.form.password\n ? \"\"\n : \"Password and confirm-password are not same\",\n });\n }}\n className=\"login_inp mg-b30 focus\"\n errorText={props.error.confirmPassword}\n suffix={\n \n setShowPassword({\n ...showPassword,\n confirmPassword: !showPassword.confirmPassword,\n })\n }\n />\n }\n />\n \n );\n};\n\nexport default ConfirmPassword;\n","import React, { useEffect } from \"react\";\nimport LoginErrMsg from \"../../../login/generic/loginErrMsg\";\nimport InputField from \"../../../generic/inputField\";\nimport EdButton from \"../../../generic/edButton\";\nimport { betweenNChars, checkPasswordStranth } from \"../../../utils/regex\";\nimport ConfirmPassword from \"../../../generic/confirmPassword\";\nimport { passwordHints } from \"../../../../Containers/Constants/commenFeatures\";\n\nexport interface VSetPasswordFormProps {\n disableForm: boolean; // used to disable/enable form from parent\n errorMsg?: string; // error message that came from api\n resetForm: any; // reset password form\n onChange: (value: string) => void; // reset password form\n onSubmit: () => void; // function to be called on submit\n onRemoveError: () => void; // removes the errorMsg\n}\nconst SetPasswordForm: React.FC = (props) => {\n const [setPasswordFormErr, setSetPasswordFormErr] = React.useState({\n otp: \"\",\n password: \"\",\n confirmPassword: \"\",\n });\n\n // const [showPassword, setShowPassword] = React.useState({\n // password: false,\n // confirmPassword: false,\n // });\n const [showPasswordHint, setShowPasswordHint] = React.useState>(\n []\n );\n\n const handleSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n props.onSubmit();\n };\n\n useEffect(() => {\n let listOfStr: Array = [];\n let getStrength;\n if (props.resetForm.password.length === 0) {\n getStrength = passwordHints;\n } else {\n getStrength = checkPasswordStranth(\n 6,\n 12,\n props.resetForm.password,\n props.resetForm.email\n );\n }\n for (let list in getStrength) {\n if (getStrength[list] !== \"\") {\n listOfStr.push(getStrength[list]);\n }\n }\n\n setShowPasswordHint(listOfStr);\n }, [props.resetForm.password]);\n\n useEffect(() => {\n if (showPasswordHint.length === 0 || !props.resetForm.password) {\n setSetPasswordFormErr({\n ...setPasswordFormErr,\n password: \"\",\n });\n }\n }, [showPasswordHint]);\n\n useEffect(() => {\n if (props.errorMsg) {\n props.onRemoveError();\n }\n }, [props.resetForm]);\n\n return (\n
\n
\n
\n

Reset Password

\n

Please enter the details to reset password

\n
\n \n props.onChange({ ...props.resetForm, otp })}\n onBlur={(error) =>\n setSetPasswordFormErr({\n ...setPasswordFormErr,\n otp: error.pattern ? \"\" : \"Please enter a valid otp\",\n })\n }\n className=\"login_inp mg-b40\"\n placeholder=\"Eg:5678987\"\n errorText={setPasswordFormErr.otp}\n maxLength={6}\n autoComplete=\"off\"\n />\n \n {/* \n \n props.onChange({ ...props.resetForm, password })\n }\n onBlur={() => {}}\n className=\"login_inp focus\"\n placeholder=\"Eg:5678987\"\n errorText={setPasswordFormErr.password}\n suffix={\n \n setShowPassword({\n ...showPassword,\n password: !showPassword.password,\n })\n }\n />\n }\n />\n\n
    \n
  • Password length should be between 6-12 characters
  • \n
  • At least one alphanumeric/special character
  • \n
  • \n Special characters not allowed are\n

    \n {`( ) > < ?`} , % - + : ; [ ] {} | ~ ` ^ _ “ / ₹\n

    \n
  • \n
\n \n \n props.onChange({ ...props.resetForm, confirmPassword })\n }\n onBlur={(error) => {\n console.log(error);\n setSetPasswordFormErr({\n ...setPasswordFormErr,\n confirmPassword:\n error.value === props.resetForm.password\n ? \"\"\n : \"Password and confirm password are not match\",\n });\n }}\n className=\"login_inp mg-b40 focus\"\n placeholder=\"Eg:5678987\"\n errorText={setPasswordFormErr.confirmPassword}\n suffix={\n \n setShowPassword({\n ...showPassword,\n confirmPassword: !showPassword.confirmPassword,\n })\n }\n />\n }\n /> */}\n\n {/* Show error if any */}\n {props.errorMsg && (\n {props.errorMsg}\n )}\n\n {/* Disable button if username or password is blank or form is disabled from outside */}\n error) ||\n Object.values(props.resetForm).some((value) => !value)\n }\n />\n \n
\n );\n};\n\nexport default SetPasswordForm;\n","import React from \"react\";\nimport DeviceContext from \"../../../../services/indentifyDevice\";\nimport LoginPopup from \"../../../login/generic/loginPopup\";\nimport NuvamaLogo from \"../../../../assets/new_images/nuvama-logo.svg\";\n\nimport SetPasswordForm, {\n VSetPasswordFormProps,\n} from \"../Forms/SetPasswordForm\";\n\nexport interface VSetPasswordScreenProps extends VSetPasswordFormProps {\n onClose?: () => void;\n}\n\nconst SetPassword: React.FC = (props) => {\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_scrn\"\n >\n \n \n );\n};\n\nexport default SetPassword;\n","import React from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport SetPassword from \"../../../components/VendorComponents/VendorLogin/LoginScreen/SetPassword\";\nimport { getServerKey } from \"../../../services/encription/encriptionServices\";\nimport {\n decryption,\n encryption,\n hashingFeatures,\n} from \"../../../services/encription/encryption\";\nimport { vendorResetPassword } from \"../../../services/login/loginApiService\";\nimport { keyClockclient } from \"../../Constants/commenFeatures\";\nimport { RoutesUrl } from \"../../Routes/constents\";\n\nexport interface VendorSetPasswordState {\n disableForm: boolean;\n errorMsg?: string;\n popupMessage?: string;\n}\n\nconst VendorSetPassword: React.FC = () => {\n // login starts with LOGIN screen\n const [loginCtrl, setLoginCtrl] = React.useState({\n disableForm: false,\n errorMsg: undefined,\n });\n\n const [resetPasswordCtrl, setResetPasswordCtrl] = React.useState({\n otp: \"\",\n password: \"\",\n confirmPassword: \"\",\n });\n\n const history = useHistory();\n\n const submitSetPasswordForm = async () => {\n await getServerKey(getServerTokenRes);\n };\n\n const getServerTokenRes = async (res: any, newResp: any) => {\n var SPK = newResp.headers.get(\"SPK\");\n\n if (res && res.error) {\n setLoginCtrl({\n disableForm: true,\n errorMsg: \"Something went wrong, Please try again later\",\n });\n } else {\n const hashPassword = await hashingFeatures(resetPasswordCtrl.password);\n let jsonData = JSON.stringify({\n otp: resetPasswordCtrl.otp,\n emailId: localStorage.getItem(\"email\"),\n newPassword: hashPassword,\n client: keyClockclient,\n });\n // Here we are encrypt the data\n let encrypedForm = await encryption(SPK, jsonData);\n vendorResetPassword(\n submitSetPasswordFormRes,\n encrypedForm.reqObj,\n encrypedForm.header\n );\n }\n };\n\n const submitSetPasswordFormRes = async (res: any, newResp: any) => {\n if (res && res.error) {\n setLoginCtrl({\n disableForm: true,\n errorMsg: res.error.errorMessage,\n });\n } else if (res && res.response) {\n let CEPRK = newResp.headers.get(\"CEPRK\");\n\n // After getting response we need to decrypt the response\n let decryptedData = await decryption(CEPRK, res.response);\n console.log(\"decryptedData\", decryptedData);\n\n if (decryptedData && decryptedData.status) {\n history.push(RoutesUrl.VendorLogin);\n }\n } else {\n setLoginCtrl({\n disableForm: true,\n errorMsg: \"Request failed\",\n });\n }\n };\n\n const onClose = () => {\n history.push(RoutesUrl.Home);\n };\n\n const removeError = () => {\n setLoginCtrl({\n disableForm: false,\n errorMsg: undefined,\n });\n };\n\n const getScreen = () => {\n return (\n
\n \n
\n );\n };\n\n return
{getScreen()}
;\n};\n\nexport default VendorSetPassword;\n","export function accRedircet(url: string) {\n if (url.indexOf(\"http://\") === 0 || url.indexOf(\"https://\") === 0) {\n // If url is absolute\n\n window.location.href = url;\n }\n}\n\nexport function fnBrowserDetect() {\n let userAgent = navigator.userAgent;\n let browserName;\n\n if (userAgent.match(/chrome|chromium|crios/i)) {\n browserName = \"chrome\";\n } else if (userAgent.match(/firefox|fxios/i)) {\n browserName = \"firefox\";\n } else if (userAgent.match(/safari/i)) {\n browserName = \"safari\";\n } else if (userAgent.match(/opr\\//i)) {\n browserName = \"opera\";\n } else if (userAgent.match(/edg/i)) {\n browserName = \"edge\";\n } else {\n browserName = \"No browser detection\";\n }\n return browserName;\n}\n\nexport function getDevice() {\n let device;\n const updateDevice = () => {\n // let isMobile = document.body.offsetWidth <= 767 ? true : false;\n // let isTablet = document.body.offsetWidth > 767 && document.body.offsetWidth <= 1024 ? true : false;\n // let isDesktop = document.body.offsetWidth > 1024 ? true : false;\n if (document.body.offsetWidth <= 767 ? true : false) {\n device = \"Mobile\";\n } else if (\n document.body.offsetWidth > 767 && document.body.offsetWidth <= 1024\n ? true\n : false\n ) {\n device = \"Tablet\";\n } else {\n device = \"Desktop\";\n }\n };\n updateDevice();\n\n return device;\n}\n","// bottom text to be shown on some screens\n// contains login help and account creation link\n\n// This file is the common bottom text for some screens\n\nimport * as React from \"react\";\nimport { Link } from \"react-router-dom\";\nimport \"../../../assets/scss/Login/login/generic/loginFormBtmTxt.scss\";\nimport EdButton from \"./../../generic/edButton\";\n\nimport { accRedircet } from \"../../../services/genralServise\";\nimport { config } from \"../../../config/domain\";\n\nexport interface ILoginFormBtmTxtProps {}\n\nconst LoginFormBtmTxt: React.FC = () => {\n return (\n
\n

\n \n Login Help?\n \n

\n

\n New User?{\" \"}\n accRedircet(config.openNewAcc)}\n />\n

\n
\n );\n};\n\nexport default LoginFormBtmTxt;\n","import * as React from \"react\";\nimport \"../../../assets/scss/Login/login/generic/yobInputField.scss\";\nimport { integerExp } from \"../../utils/regex\";\n\nexport interface IYobInputFieldProps {\n autoFocus?: boolean;\n placeholder?: string;\n onChange: (value: string) => void;\n defaultValue?: string;\n type?: string;\n id?: string;\n disabled?: boolean;\n size?: number;\n}\n\nenum EKeyCodes {\n BACKSPACE = 8,\n LEFT_ARROW = 37,\n RIGHT_ARROW = 39,\n}\n\nconst YobInputField: React.FC = (props) => {\n // stores the value of each input in array\n const [value, setValue] = React.useState(new Array(props.size ? props.size: 4).fill(\"\"));\n\n // when focussed, this helps to colour the border of input_field_cont\n const [focusClass, setFocusClass] = React.useState(\"\");\n\n function handleChange(v: string, i: number) {\n if (integerExp.test(v)) {\n const valueCopy = [...value];\n valueCopy[i] = v;\n\n setValue(valueCopy);\n props.onChange(valueCopy.join(\"\"));\n }\n }\n\n // go to the previous input\n function goToPrevious(event: React.KeyboardEvent) {\n if(event.target.previousElementSibling){\n event.target.previousElementSibling.focus();\n }\n // const form = (event.target as HTMLInputElement).form;\n // const index = Array.prototype.indexOf.call(form, event.target);\n // const prevInp = form?.elements[\n // index > 0 ? index - 1 : index\n // ] as HTMLInputElement;\n // prevInp.focus();\n }\n\n // go to next input\n function goToNext(event: React.KeyboardEvent) {\n if(event.target.nextElementSibling){\n event.target.nextElementSibling.focus();\n }\n // const form = (event.target as HTMLInputElement).form;\n // const index = Array.prototype.indexOf.call(form, event.target);\n // const nextInp = form?.elements[\n // index < value.length - 1 ? index + 1 : index\n // ] as HTMLInputElement;\n // nextInp.focus();\n }\n\n function handleKeyUp(e: React.KeyboardEvent) {\n if (\n e.keyCode === EKeyCodes.BACKSPACE ||\n e.keyCode === EKeyCodes.LEFT_ARROW\n ) {\n // if backspace or left arrow is pressed\n goToPrevious(e);\n } else if (\n (e.keyCode >= 48 && e.keyCode <= 57) ||\n e.keyCode === EKeyCodes.RIGHT_ARROW\n ) {\n // if number key or right arrow is pressed\n goToNext(e);\n }\n }\n React.useEffect(() => {\n if (props.defaultValue === \"\") {\n setValue(new Array(props.size ? props.size: 4).fill(\"\"));\n let firstInputBox = document.getElementById(\"otp-0\");\n if((props.autoFocus && props.autoFocus==true))\n firstInputBox?.focus();\n }\n }, [props.defaultValue]);\n\n return (\n
\n {value.map((_, i) => (\n handleChange(e.target.value, i)}\n onFocus={() => setFocusClass(\" focus\")}\n onBlur={() => setFocusClass(\" \")}\n className={\"yob_inp mg-b10\" + focusClass + \" \" +props.id}\n type={props.type ? props.type : \"password\"}\n min={0}\n max={9}\n maxLength={1}\n onKeyUp={(e) => handleKeyUp(e)}\n id={props.id ? props.id + i : \"yob-\" + i}\n autoFocus={false}\n disabled={props.disabled}\n />\n ))}\n
\n );\n};\n\nexport default YobInputField;\n","import * as React from \"react\";\nimport InputField from \"../../generic/inputField\";\nimport EdButton from \"../../generic/edButton\";\nimport LoginFormBtmTxt from \"../generic/loginFormBtmTxt\";\nimport \"../../../assets/scss/Login/login/forms/loginIdForm.scss\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport { UserIdExp } from \"../../utils/regex\";\n\nexport interface ILoginIdFormProps {\n disableForm: boolean; // used to disable/enable form from parent\n userName?: string; // default username for the field\n errorMsg?: string; // error message that came from api\n onSubmit: (userName: string) => void; // function to be called on submit\n onRemoveError: () => void; // removes the errorMsg\n}\n\nconst LoginIdForm: React.FC = (props) => {\n // stores the userName entered by the user\n const [userName, setUserName] = React.useState(props.userName || \"\");\n\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault();\n props.onSubmit(userName);\n }\n\n function onSetUserName(value: string) {\n // if errorMsg is present, then remove it\n if (props.errorMsg) {\n props.onRemoveError();\n }\n\n if (UserIdExp.test(value)) {\n setUserName(value);\n return value;\n } else {\n setUserName(userName);\n return userName;\n }\n }\n\n return (\n
\n
\n \n {}}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg:5678987\"\n maxLength={24}\n autoComplete=\"off\"\n />\n\n {/* Show error if any */}\n {props.errorMsg && (\n {props.errorMsg}\n )}\n\n {/* Disable button if username is blank or form is disabled from outside */}\n \n \n\n \n
\n );\n};\n\nexport default LoginIdForm;\n","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport LoginIdForm, { ILoginIdFormProps } from \"../forms/loginIdForm\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface ILoginIdScreenProps extends ILoginIdFormProps {\n onClose?: () => void;\n}\n\nconst LoginIdScreen: React.FC = (props) => {\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_scrn\"\n >\n \n \n );\n};\n\nexport default LoginIdScreen;\n","import React from \"react\";\nimport \"../../assets/scss/generic/radioButton.scss\";\nimport { IListObj } from \"../types/genericTypes\";\n\nexport interface RadioButtonProps {\n list: IListObj; //list of all options in radio btn\n name: string;\n selected?: number | string; // selected value\n onChange: (event: React.ChangeEvent) => void; // function to be called on change\n disabled?: boolean;\n moduleName?:\n | \"orderBook\"\n | \"orderPlacement\"\n | \"fundTransfer\"\n | \"subscriptionFrom_radio\"; // takes orderBook as default\n}\n\nconst RadioButton: React.FC = (props) => {\n const moduleName = props.moduleName ? props.moduleName : \"orderBook\";\n\n return (\n \n );\n};\n\nexport default RadioButton;\n","import * as React from \"react\";\nimport EdButton from \"../../generic/edButton\";\nimport LoginFormBtmTxt from \"../generic/loginFormBtmTxt\";\nimport RadioButton from \"../../generic/radioButton\";\nimport InputField from \"../../generic/inputField\";\nimport LoginSecureImg from \"../generic/loginSecureImg\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport \"../../../assets/scss/Login/login/forms/passwordForm.scss\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\n\nexport interface IPasswordFormProps {\n loginId: string; // login id that was entered by the user in loginIdForm\n accTypesObject?: Array; // security image object that comes from api\n disableForm: boolean; // used to disable/enable form from parent\n errorMsg?: string; // error message that came from api\n onEditLoginId: () => void; // when user clicks on edit icon\n onSubmit: (pwd: string, accTyp: string) => void; // function to be called on submit\n onRemoveError: () => void; // removes the errorMsg\n autoFocus?: boolean;\n}\n\n// Form fields\nexport interface IPasswordFormState {\n selectedAcc?: \"EQ\" | \"CO\";\n showPassword: boolean;\n secureImgChecked: boolean;\n}\n\nconst PasswordForm: React.FC = (props) => {\n const [selectedAcc, setSelectedAcc] = React.useState<\"EQ\" | \"CO\" | undefined>(\n props.accTypesObject ? props.accTypesObject[0] : \"EQ\"\n );\n const [showPassword, setShowPassword] = React.useState(false);\n const [password, setPassword] = React.useState(\"\");\n \n function handleSubmit(e: React.FormEvent) {\n e.preventDefault();\n props.onSubmit(password, selectedAcc as string);\n }\n\n function onSelectAcc(accType: \"EQ\" | \"CO\" | undefined) {\n setSelectedAcc(accType);\n setShowPassword(false);\n setPassword(\"\");\n }\n\n // if any field in the below mentioned array is edited && if errorMsg exists, then remove the errorMsg\n React.useEffect(\n (...a) => {\n if (props.errorMsg) {\n props.onRemoveError();\n }\n },\n [password, selectedAcc]\n );\n\n React.useEffect(() => {\n if (props.accTypesObject && props.accTypesObject.length === 1) {\n setSelectedAcc(props.accTypesObject[0]);\n }\n console.log(\"props.accTypesObject\", props.accTypesObject);\n }, [props.accTypesObject]);\n\n return (\n
\n
\n \n

\n {props.loginId}{\" \"}\n \n

\n\n {/* If there are two security images then the same account name is in both type of accounts */}\n {props.accTypesObject && props.accTypesObject.length > 1 && (\n
\n

\n Your current login ID is same in equity & commodity\n

\n

Select the account to login

\n
    \n
  • \n onSelectAcc(\"EQ\")}\n />\n onSelectAcc(\"CO\")}\n />\n
  • \n
\n
\n )}\n\n \n {}}\n className=\"login_inp mg-b40 focus\"\n placeholder=\"Eg:5678987\"\n autoFocus={props.autoFocus}\n suffix={\n setShowPassword(!showPassword)}\n />\n }\n />\n\n {/* Show error if any */}\n {props.errorMsg && (\n {props.errorMsg}\n )}\n\n \n \n\n \n
\n );\n};\n\nexport default PasswordForm;","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport PasswordForm from \"../forms/passwordForm\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport { IPasswordFormProps } from \"../forms/passwordForm\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface IPasswordScreenProps extends IPasswordFormProps {\n onClose?: () => void;\n}\n\nconst PasswordScreen: React.FC = (props) => {\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_scrn\"\n >\n \n \n );\n};\n\nexport default PasswordScreen;\n","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport LoginFormBtmTxt from \"../generic/loginFormBtmTxt\";\nimport EdButton from \"../../generic/edButton\";\nimport YobInputField from \"../generic/yobInputField\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport \"../../../assets/scss/Login/login/loginScreen/yobScreen.scss\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface IYobScreenProps {\n disableForm: boolean;\n errorMsg?: string;\n onSubmit: (yob: string) => void;\n onClose?: () => void;\n onRemoveError: () => void; // removes the errorMsg\n}\n\nconst YobScreen: React.FC = (props) => {\n const [yob, setYob] = React.useState(\"\");\n\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault();\n props.onSubmit(yob);\n }\n\n React.useEffect(() => {\n if (props.errorMsg) {\n props.onRemoveError();\n }\n }, [yob]);\n\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_scrn\"\n >\n
\n
\n \n\n \n

\n * For HUF/corporate, enter your year of incorporation/ registration.\n

\n\n {props.errorMsg && (\n {props.errorMsg}\n )}\n\n \n \n\n \n
\n \n );\n};\n\nexport default YobScreen;\n","// Common file all the status\n\nimport * as React from \"react\";\nimport EdButton from \"./../../generic/edButton\";\nimport { Link } from \"react-router-dom\";\nimport \"../../../assets/scss/Login/login/generic/loginStatus.scss\";\n\nexport interface LoginStatusProps {\n\ttitle?: string;\n\tsubTitle?: string;\n\tmessage?: React.ReactChild;\n\ticon: string; // icon in the circle\n\tcolor: \"blue\" | \"red\" | \"green\"; // color of circle\n\tbtnValue?: any; // value in the blue button. If present, then only blue button will show\n\tonButtonClick?: (event: React.MouseEvent) => void; // function to be called on blue button click\n\tlinkTxt?: string; // show link/link-button only if this is present\n\tlink?: string; // if this is present then show link otherwise show link-button\n\tonLinkClick?: (event: React.MouseEvent) => void; // function to be called on link button click\n\tclassName?: string; // extra class\n}\n\nconst LoginStatus: React.FC = (props) => {\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t{/* Circle */}\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t
\n\n\t\t\t\t{props.title &&

{props.title}

}\n\t\t\t\t{props.subTitle &&

{props.subTitle}

}\n\t\t\t\t{props.message &&

{props.message}

}\n\n\t\t\t\t{/* Show blue button if btnValue is present */}\n\t\t\t\t{props.btnValue && (\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t)}\n\n\t\t\t\t{/* Show link button only if linkText is present */}\n\t\t\t\t{/* If link is present then make it link otherwise make it make button */}\n\t\t\t\t{props.linkTxt &&\n\t\t\t\t\t(props.link ? (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{props.linkTxt}\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\n\t\t\t\t\t))}\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport default LoginStatus;\n","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\n// import DeviceContext from \"../../components/service/indentifyDevice\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\n\nimport {\n ELoginPopupState,\n urls,\n} from \"../../../Containers/Client/Login/loginConstants\";\nimport LoginStatus from \"../generic/loginStatus\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface ILoginStatusScreenProps {\n popupState: ELoginPopupState;\n message?: string;\n onLinkClick?: () => void;\n onButtonClick?: () => void;\n onClose?: () => void;\n title?: string;\n}\n\nconst LoginStatusScreen: React.FC = (props) => {\n let status = <>;\n\n switch (props.popupState) {\n case ELoginPopupState.LOGINID_SENT:\n status = (\n \n );\n break;\n\n case ELoginPopupState.EMAIL_SENT:\n status = (\n \n );\n break;\n case ELoginPopupState.PASSWORD_UPDATE:\n status = (\n \n );\n break;\n\n case ELoginPopupState.OPEN_ACC_SUCC:\n status = (\n \n );\n break;\n }\n\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_sts\"\n >\n {status}\n \n );\n};\n\nexport default LoginStatusScreen;\n","import * as React from \"react\";\nimport { IListObj } from \"../types/genericTypes\";\nimport \"../../assets/scss/generic/autocomplete.scss\";\n\nexport interface IAutocompleteProps {\n name: string; // name of the input field\n className?: string; // extra classname for container if required\n data: Array | null; // dropdown array\n noDataMsg: string; // msg to show when data does not exist in dropdown array\n inputClassName?: string; // extra classname for input field\n errorText?: string; // red error text\n prefix?: React.ReactChild; // text/element to show before the input field\n suffix?: React.ReactChild; // text/element to show after the input field\n placeholder?: string; // placeholder\n helpText?: string;\n defaultValue?: string; // help text\n helpTextColor?: \"grey\" | \"blue\"; // the color of help text, takes gray as default\n onOptionSelect: (data: IListObj) => void; // function to implement on input select\n onChange: (value: string) => void; // function to be called on change\n onBlur?: (value: string) => void; // function to be called on blur\n}\n\nconst Autocomplete: React.FC = (props) => {\n const [show, setShowDropdown] = React.useState(false);\n // sets the default value of input if present\n // value: value of the input (type = string)\n // setValue: function to set value\n const [value, setValue] = React.useState(\n \"\"\n // props.defaultValue ? props.defaultValue : \"\"\n );\n\n // when focussed, this helps to colour the border of input_field_cont\n const [focusClass, setFocusClass] = React.useState(\"\");\n\n function showDropdown(value: string) {\n value ? setShowDropdown(true) : setShowDropdown(false);\n }\n\n function handleBlur() {\n hideDropDown();\n props.onBlur && props.onBlur(value);\n setFocusClass(\"\");\n }\n\n function hideDropDown() {\n setTimeout(() => setShowDropdown(false), 300);\n }\n\n function handleInputChange(value: string) {\n showDropdown(value);\n setValue(value);\n return props.onChange(value);\n }\n\n function onOptionSelect(d: IListObj) {\n setShowDropdown(false);\n setValue(d.display);\n return props.onOptionSelect(d);\n }\n\n const dropdownList = props.data\n ? props.data.map((d) => {\n const capitalData = d.display.replace(/\\w\\S*/g, (w) =>\n w.replace(/^\\w/, (c) => c.toUpperCase())\n );\n\n const dropdownData = capitalData.replace(\n new RegExp(value, \"i\"),\n \"$&\"\n );\n\n return (\n onOptionSelect(d)}\n >\n
\n \n
\n \n );\n })\n : null;\n\n React.useEffect(() => {\n if (props.defaultValue === \"\") {\n setValue(\"\");\n }\n }, [props.defaultValue]);\n\n return (\n
\n
\n \n {props.prefix &&
{props.prefix}
}\n handleInputChange(e.target.value)}\n placeholder={props.placeholder}\n className=\"input_field\"\n onFocus={() => setFocusClass(\" focus\")}\n onBlur={handleBlur}\n autoComplete=\"off\"\n />\n {props.suffix &&
{props.suffix}
}\n
\n {props.errorText &&

{props.errorText}

}\n {props.helpText && (\n

\n {props.helpText}\n

\n )}\n
\n
    \n {dropdownList !== null &&\n (dropdownList.length ? (\n dropdownList\n ) : (\n
  • {props.noDataMsg}
  • \n ))}\n
\n \n );\n};\n\nexport default Autocomplete;\n","import * as React from \"react\";\nimport EdButton from \"../../generic/edButton\";\nimport InputField from \"../../generic/inputField\";\nimport \"../../../assets/scss/Login/login/forms/leadForm.scss\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport {\n emailRegex,\n betweenNChars,\n phoneNo,\n alphabetExp,\n integerExp,\n} from \"../../utils/regex\";\nimport Autocomplete from \"../../generic/autocomplete\";\nimport debounce from \"../../utils/debounce\";\nimport { AGetCities } from \"../../../services/login/loginApiService\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\n\nexport interface ILeadFormProps {\n errorMsg?: string; // used to show error message if any\n disableForm: boolean; // used to disable form from parent\n onSubmit: (values: ILeadFormFields) => void; // function to be called on submit\n onRemoveError: () => void; // removes the errorMsg\n}\n\nexport interface ILeadFormFields {\n nm: string;\n eml: string;\n phNo: string;\n city: string;\n state: string;\n}\n\nconst LeadForm: React.FC = (props) => {\n // used to store the entered values in form\n const [values, setValues] = React.useState({\n nm: \"\",\n eml: \"\",\n phNo: \"\",\n city: \"\",\n state: \"\",\n });\n\n // used to store the field wise errors\n const [errors, setErrors] = React.useState<{\n [key in keyof ILeadFormFields]?: string;\n }>({\n nm: undefined,\n eml: undefined,\n phNo: undefined,\n city: undefined,\n });\n\n // cities list\n const [cities, setCities] = React.useState | null>(null);\n\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault();\n props.onSubmit(values);\n }\n\n function onChange(key: keyof ILeadFormFields, value: string) {\n // onchange of any field remove both type of errors\n if (key === \"city\") {\n // separate city and state (state is blank string if not present in the value)\n const [city, state = \"\"] = value.split(\";\");\n setValues({ ...values, city, state });\n\n // if city length is greater than 2, then call the api with debounce of 300ms\n if (city.length > 2) {\n debounce(() => getCities(value), 300)();\n }\n } else {\n if (\n (key === \"nm\" && !alphabetExp.test(value)) ||\n (key === \"phNo\" && !integerExp.test(value))\n ) {\n value = values[key];\n }\n setValues({ ...values, [key]: value });\n }\n setErrors({ ...errors, [key]: \"\" });\n props.onRemoveError();\n\n return value;\n }\n\n function getCities(srchStr: string) {\n AGetCities(getCitiesRes, srchStr);\n }\n\n function getCitiesRes(res: any) {\n if (res.data && res.data.ctyLst) {\n setCities(res.data.ctyLst);\n }\n }\n\n function handleACBlur(value: string) {\n if (value.split(\";\").length !== 2) {\n setErrors({ ...errors, city: \"Please select a city from dropdown\" });\n }\n }\n\n return (\n
\n \n onChange(\"nm\", value)}\n onBlur={(error) =>\n setErrors({\n ...errors,\n nm: error.pattern ? \"\" : \"Name should be atleast 3 characters\",\n })\n }\n className=\"login_inp mg-b40\"\n placeholder=\"Eg:Rajesh Patel\"\n pattern={betweenNChars(3)}\n errorText={errors.nm}\n />\n\n \n onChange(\"eml\", value)}\n onBlur={(error) =>\n setErrors({ ...errors, eml: error.pattern ? \"\" : \"Invalid Email\" })\n }\n className=\"login_inp mg-b40\"\n placeholder=\"Eg:rajeshpatel@gmail.com\"\n errorText={errors.eml}\n />\n\n \n
\n +91\n onChange(\"phNo\", value)}\n onBlur={(error) =>\n setErrors({\n ...errors,\n phNo: error.pattern ? \"\" : \"Invalid Phone Number\",\n })\n }\n className=\"login_inp mg-b30\"\n placeholder=\"Eg: 9809807765\"\n errorText={errors.phNo}\n />\n
\n\n \n {/* We have to store state also along with city because state is required in api request.\n\t\t\t\t\tIndex of cities is not stored in value because it may change when user clicks on a city (api is called again)\n\t\t\t\t\tThat is why both city and state are stored in value\n\t\t\t\t\tThis also helps to check if the value in input is typed by the user or selected from the dropdown */}\n ({\n value: city.city + \";\" + city.state,\n display: city.city,\n }))\n : null\n }\n onOptionSelect={(value) => onChange(\"city\", value.value as string)}\n noDataMsg=\"City with similar name not found\"\n onChange={(value) => onChange(\"city\", value)}\n inputClassName=\"login_inp mg-b40\"\n placeholder=\"Eg:Mumbai\"\n onBlur={handleACBlur}\n name=\"city\"\n className=\"city\"\n />\n\n {/* Show error if any */}\n {props.errorMsg && (\n {props.errorMsg}\n )}\n\n error) ||\n Object.values(values).some((value) => !value) ||\n props.disableForm\n }\n />\n \n );\n};\n\nexport default LeadForm;\n","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport LeadForm, { ILeadFormProps } from \"../forms/leadForm\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport \"../../../assets/scss/Login/login/forms/leadForm.scss\";\n// import NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface ILeadFormScreenProps extends ILeadFormProps {\n onClose?: () => void;\n}\n\nconst LeadFormScreen: React.FC = ({\n onClose,\n ...props\n}) => {\n return (\n \n \"nuvama-logo\"\n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n // \n \"nuvama-logo\"\n ) : undefined\n }\n onClose={onClose}\n className=\"login_scrn\"\n >\n
\n
\n

\n We Shell get in touch with you to get started\n

\n

Quick,Fast and Simple

\n
\n\n \n
\n \n );\n};\n\nexport default LeadFormScreen;\n","import React, { ReactNode } from \"react\";\nimport \"../../assets/scss/generic/loader.scss\";\n\nexport interface ILoaderProps {\n color?: string;\n size: number;\n}\n\nexport const SLoader = (size: number, color: string): ReactNode => {\n return (\n
\n \n
\n );\n};\n\nconst Loader: React.FC = (props: ILoaderProps) => {\n let color = props.color || \"blue\";\n // let size = props.size || \"24\"\n return (\n
\n {Array.from(Array(12).keys(), (_, i) => (\n
\n ))}\n
\n );\n};\n\nexport default Loader;\n","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\n// import DeviceContext from \"../../components/service/indentifyDevice\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\n\nimport Loader from \"../../generic/loader\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginLoaderScreen.scss\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface ILoginLoaderScreenProps {}\n\nconst LoginLoaderScreen: React.FC = (props) => {\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \n ) : undefined\n }\n className=\"change_pw_scrn\"\n >\n
\n \n
\n \n );\n};\n\nexport default LoginLoaderScreen;\n","import * as React from \"react\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport LoginIdForm, { ILoginIdFormProps } from \"../forms/loginIdForm\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface ILoginIdScreenProps extends ILoginIdFormProps {\n onClose?: () => void;\n}\n\nconst LoginWithApi: React.FC = (props) => {\n return (\n
\n
\n
\n \n \"nuvama-logo\"\n \n \n \n \n
\n
\n \n
\n
\n
\n );\n};\n\nexport default LoginWithApi;\n","export default __webpack_public_path__ + \"static/media/defaultAppIcon.d9e66cb6.svg\";","import * as React from \"react\";\nimport LoginFormBtmTxt from \"../generic/loginFormBtmTxt\";\nimport EdButton from \"../../generic/edButton\";\nimport YobInputField from \"../generic/yobInputField\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport \"../../../assets/scss/Login/login/loginScreen/yobScreen.scss\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport appUrl from \"../../../config/MyApp/myAppsURLConfig\";\nimport DefaultAppIcon from \"../../../assets/images/defaultAppIcon.svg\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface IYobScreenProps {\n disableForm: boolean;\n errorMsg?: string;\n securityImgObj: any;\n onSubmit: (yob: string) => void;\n onClose?: () => void;\n onRemoveError: () => void; // removes the errorMsg\n}\n\nconst YobWithAPi: React.FC = (props) => {\n const [yob, setYob] = React.useState(\"\");\n\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault();\n props.onSubmit(yob);\n }\n\n React.useEffect(() => {\n if (props.errorMsg) {\n props.onRemoveError();\n }\n }, [yob]);\n\n return (\n
\n
\n
\n \n \"nuvama-logo\"\n \n \n \n \n
\n
\n
\n \n

{props.securityImgObj.appNm}

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

\n * For HUF/corporate, enter your year of incorporation/\n registration.\n

\n\n {props.errorMsg && (\n {props.errorMsg}\n )}\n\n \n \n\n \n
\n
\n
\n
\n );\n};\n\nexport default YobWithAPi;\n","import * as React from \"react\";\nimport PasswordForm from \"../forms/passwordForm\";\nimport appUrl from \"../../../config/MyApp/myAppsURLConfig\";\nimport DefaultAppIcon from \"../../../assets/images/defaultAppIcon.svg\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport { IPasswordFormProps } from \"../forms/passwordForm\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface IPasswordScreenProps extends IPasswordFormProps {\n onClose?: () => void;\n securityImgObj: any;\n}\n\nconst PasswordWithApi: React.FC = (props) => {\n return (\n
\n
\n
\n \n \"nuvama-logo\"\n \n \n \n \n
\n\n
\n
\n \n

{props.securityImgObj.appNm}

\n
\n \n
\n
\n
\n );\n};\n\nexport default PasswordWithApi;\n","export function countDown(min: number, sec: number, cb: Function) {\n if (sec === 0 && min !== 0) {\n return cb({ min: min - 1, sec: 59 });\n } else if (sec > 0) {\n if (sec > 10) {\n return cb({ min: min, sec: sec - 1 });\n } else {\n return cb({ min: min, sec: sec - 1 });\n }\n }\n}\n","import * as React from \"react\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport \"../../../assets/scss/Login/login/forms/passwordForm.scss\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport { countDown } from \"../../utils/countDown\";\nimport YobInputField from \"../generic/yobInputField\";\nimport { Link } from \"react-router-dom\";\n\nexport interface IOtpFormProps {\n errorMsg?: string;\n onSubmit: (yob: string) => void;\n onClose?: () => void;\n onRemoveError: () => void; // removes the errorMsg\n autoFocus?: boolean;\n onTimerClose: () => void;\n disableForm?: boolean;\n redirect?: string;\n redirectText?: string;\n otpTitle?: string;\n containerClass?: string;\n showResend?: boolean;\n onChangeFunc?: (otp: string) => void;\n ResendFunction?:() => void;\n}\n\nconst OtpForm: React.FC = (props) => {\n const [otp, setOtp] = React.useState(\"\");\n const [timer, setTimer] = React.useState({\n min: 4,\n sec: 59,\n });\n\n function onChangeHandler(value: string) {\n setOtp(value);\n props.onChangeFunc && props.onChangeFunc(value);\n if (props.errorMsg) {\n props.onRemoveError();\n }\n }\n\n function handleResendOtp(){\n props.onRemoveError();\n props.ResendFunction && props.ResendFunction();\n setTimer({ min: 4, sec: 59, })\n }\n\n function handleSubmit() {\n props.onSubmit(otp);\n }\n\n React.useEffect(() => {\n if (otp.length === 4) {\n handleSubmit();\n }\n }, [otp]);\n\n React.useEffect(() => {\n if (props.errorMsg) {\n setOtp(\"\");\n }\n }, [props.errorMsg]);\n\n React.useEffect(() => {\n let intervalId = setInterval(function () {\n countDown(timer.min, timer.sec, setTimer);\n }, 1000);\n\n if (timer.min === 0 && timer.sec === 0) {\n clearInterval(intervalId);\n props.onTimerClose();\n }\n return () => {\n clearInterval(intervalId);\n };\n });\n\n return (\n
\n
\n \n\n \n

\n\n {props.errorMsg && (\n \n {props.errorMsg}\n {props.redirect && (\n
\n {props.redirectText}\n
\n )}\n
\n )}\n { props.showResend && timer.min === 0 && timer.sec === 0 && (\n \n )}\n {!props.disableForm && (timer.min !== 0 || timer.sec !== 0 ) && (\n
\n 0{timer.min}\n :\n {timer.sec > 9 ? timer.sec : \"0\" + timer.sec}\n
\n )}\n \n
\n );\n};\n\nexport default OtpForm;\n","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport OtpForm from \"../forms/otpForm\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport { IOtpFormProps } from \"../forms/otpForm\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\nimport EdButton from \"../../generic/edButton\";\nimport { useEffect } from \"react\";\nimport { getTolocalStorage } from \"../../../Containers/Constants/commenFeatures\";\n\nexport interface IOtpScreenProps extends IOtpFormProps {\n onClose?: () => void;\n onSwitchLoginFlow:(flow: string) => void;\n}\n\nconst OtpScreen: React.FC = (props) => {\n const [showSwitch, setShowSwitch] = React.useState(false);\n const [etotpSwitch, setEtotpSwitch] = React.useState(false);\n useEffect(() => {\n async function checkLoginFlow() {\n const loginFlow = await getTolocalStorage(\"LoginFlow\");\n if (loginFlow === \"OTP\" || loginFlow === \"TOTP\") {\n setEtotpSwitch(false);\n } else if (loginFlow === \"ETOTP\" || loginFlow === \"BOTH\"){\n setEtotpSwitch(true);\n }\n }\n checkLoginFlow();\n }, []);\n \n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_scrn\"\n >\n \n {etotpSwitch && (\n <>\n \n
\n {showSwitch && props.onSwitchLoginFlow(\"ETOTP\")}\n />}\n
\n )}\n \n );\n};\n\nexport default OtpScreen;\n","import * as React from \"react\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport \"../../../assets/scss/Login/login/loginScreen/yobScreen.scss\";\nimport appUrl from \"../../../config/MyApp/myAppsURLConfig\";\nimport DefaultAppIcon from \"../../../assets/images/defaultAppIcon.svg\";\nimport OtpForm, { IOtpFormProps } from \"../forms/otpForm\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\nimport EdButton from \"../../generic/edButton\";\nimport { useEffect } from \"react\";\nimport { getTolocalStorage } from \"../../../Containers/Constants/commenFeatures\";\n\nexport interface IOtpScreenProps extends IOtpFormProps {\n securityImgObj: any;\n onSwitchLoginFlow:(flow: string) => void;\n}\n\nconst OtpWithAPi: React.FC = (props) => {\n const [showSwitch, setShowSwitch] = React.useState(false);\n const [etotpSwitch, setEtotpSwitch] = React.useState(false);\n useEffect(() => {\n async function checkLoginFlow() {\n const loginFlow = await getTolocalStorage(\"LoginFlow\");\n if (loginFlow === \"OTP\" || loginFlow === \"TOTP\") {\n setEtotpSwitch(false);\n } else {\n setEtotpSwitch(true);\n }\n }\n checkLoginFlow();\n }, []);\n return (\n
\n
\n
\n \n \"nuvama-logo\"\n \n\n \n \n \n
\n
\n
\n \n

{props.securityImgObj.appNm}

\n
\n
\n \n {etotpSwitch && (\n <>\n \n
\n {showSwitch && props.onSwitchLoginFlow(\"ETOTP\")}\n />}\n
\n )}\n
\n
\n
\n
\n );\n};\n\nexport default OtpWithAPi;\n","import * as React from \"react\";\nimport \"../../../assets/scss/components/externalTotp.scss\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport \"../../../assets/scss/Login/login/forms/passwordForm.scss\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport YobInputField from \"../generic/yobInputField\";\nimport RadioButton from \"../../generic/radioButton\";\nimport InputField from \"../../generic/inputField\";\nimport EdButton from \"../../generic/edButton\";\nimport { useState } from \"react\";\nimport LoginFormBtmTxt from \"../generic/loginFormBtmTxt\";\nimport { countDown } from \"../../utils/countDown\";\n\nexport interface ITotpFormProps{\n loginId: string; // login id that was entered by the user in loginIdForm\n securityImgObj?: Array; // security image object that comes from api\n disableForm: boolean; // used to disable/enable form from parent\n errorMsg?: string; // error message that came from api\n onEditLoginId: () => void; // when user clicks on edit icon\n onRemoveError: () => void; // removes the errorMsg\n onSubmit: (pwd: string, accTyp: string, totp:string, loginFlow:string) => void; // function to be called on submit\n autoFocus?: boolean;\n totpSetting: ITotpLoginProps;\n onSwitchLoginFlow:(flow: string) => void; // function to switch to OTP Flow\n}\nexport interface ITotpLoginProps{\n eqEtotpEnabled: boolean;\n coEtotpEnabled: boolean;\n otpFlowWaitTime: number;\n}\nconst EtotpForm: React.FC = (props) => {\n const [totp, setTotp] = useState(\"\");\n const [timer, setTimer] = React.useState({\n min: 0,\n sec: 30,\n });\n const [etotpEnabled, setEtotpEnabled] = useState(false);\n const [loginFlow, setLoginFlow] = useState(\"ETOTP\");\n const [showPassword, setShowPassword] = useState(false);\n const [password, setPassword] = useState(\"\");\n const [enableSms, setEnableSms] = useState(false);\n const [selectedAcc, setSelectedAcc] = useState<\"EQ\" | \"CO\" | undefined>(\n props.securityImgObj ? props.securityImgObj[0] : \"EQ\"\n );\n \n function onChangeHandler(value: string) {\n setTotp(value);\n if (props.errorMsg) {\n props.onRemoveError();\n }\n }\n React.useEffect(() => {\n if(enableSms){\n let intervalId = setInterval(function () {\n countDown(timer.min, timer.sec, setTimer);\n }, 1000); \n if (timer.min === 0 && timer.sec === 0) {\n props.onSwitchLoginFlow(\"OTP\");\n clearInterval(intervalId);\n }\n return () => {\n clearInterval(intervalId);\n };\n } \n });\n\n // function loginFlowChangeHandler() {\n // if(selectedAcc == \"EQ\")\n // setEtotpEnabled(props.totpSetting.eqEtotpEnabled);\n // else\n // setEtotpEnabled(props.totpSetting.coEtotpEnabled);\n // }\n function onSelectAcc(accType: \"EQ\" | \"CO\" | undefined) {\n setSelectedAcc(accType);\n setShowPassword(false);\n setPassword(\"\");\n if(accType == \"EQ\")\n setEtotpEnabled(props.totpSetting.eqEtotpEnabled);\n else\n setEtotpEnabled(props.totpSetting.coEtotpEnabled);\n }\n function handleSubmit(e: React.FormEvent) {\n e.preventDefault();\n if(totp && password)\n props.onSubmit(password, selectedAcc as string, totp, loginFlow);\n }\n React.useEffect(() => {\n if(props.totpSetting.otpFlowWaitTime){\n var totSeconds = props.totpSetting.otpFlowWaitTime;\n var min = Math.floor(totSeconds / 60);\n var sec = Math.floor(totSeconds % 60);\n setTimer({min: min, sec: sec});\n }\n if(selectedAcc == \"EQ\")\n setEtotpEnabled(props.totpSetting.eqEtotpEnabled);\n else\n setEtotpEnabled(props.totpSetting.coEtotpEnabled);\n }, []);\n\n React.useEffect(() => {\n if (props.errorMsg) {\n setTotp(\"\");\n }\n }, [props.errorMsg]);\n\n return (\n
\n
\n \n

\n {props.loginId}{\" \"}\n \n

\n {props.securityImgObj && props.securityImgObj.length > 1 && (\n
\n

\n Your current login ID is same in equity & commodity\n

\n

Select the account to login

\n
    \n
  • \n onSelectAcc(\"EQ\")}\n />\n onSelectAcc(\"CO\")}\n />\n
  • \n
\n
\n )}\n\n \n {}}\n className=\"login_inp mg-b40 focus\"\n placeholder=\"Eg:Abc@123\"\n autoFocus={props.autoFocus}\n suffix={\n setShowPassword(!showPassword)}\n />\n }\n />\n \n

\n {/* {setLoginFlow(\"TOTP\");}}>App Code */}\n {setLoginFlow(\"ETOTP\");}}>External TOTP\n

\n {\n loginFlow === \"ETOTP\" ? (\n !etotpEnabled ? (\n
\n ) : (\n
\n \n
\n )\n ) : (\n
\n \n
\n )\n }\n {((etotpEnabled && loginFlow ==\"ETOTP\") || loginFlow ==\"TOTP\") && (\n \n )} \n {props.errorMsg && (\n {props.errorMsg}\n )}\n {((etotpEnabled && loginFlow ==\"ETOTP\") || loginFlow ==\"TOTP\") && (\n \n )}\n {!enableSms ? \n (\n {setEnableSms(true)}}>Unable to use External TOTP?\n ):(\n Re-directing in...0{timer.min}:{timer.sec > 9 ? timer.sec : \"0\" + timer.sec} \n )}\n {/* {(timer.min !== 0 || timer.sec !== 0 ) && (\n \n )} */}\n

\n \n \n
\n );\n};\n\nexport default EtotpForm;","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\nimport EtotpForm, { ITotpFormProps } from \"../forms/etotpPasswordForm\";\n\nexport interface IEtotpScreenProps extends ITotpFormProps {\n onClose?: () => void;\n}\n\nconst EtotpScreen: React.FC = (props) => {\n return (\n \n ) : undefined\n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={props.onClose}\n className=\"login_scrn\"\n >\n \n \n );\n};\n\nexport default EtotpScreen;\n","import * as React from \"react\";\nimport appUrl from \"../../../config/MyApp/myAppsURLConfig\";\nimport DefaultAppIcon from \"../../../assets/images/defaultAppIcon.svg\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\nimport EtotpForm, { ITotpFormProps } from \"../forms/etotpPasswordForm\";\n\nexport interface IEtotpWithApiProps extends ITotpFormProps{\n onClose?: () => void;\n securityImgObj: any;\n}\n\nconst EtotpWithApi: React.FC = (props) => {\n return (\n
\n
\n
\n \n \"nuvama-logo\"\n \n \n \n \n
\n\n
\n
\n \n

{props.securityImgObj.appNm}

\n
\n \n
\n
\n
\n );\n};\n\nexport default EtotpWithApi;\n","import * as React from \"react\";\nimport { ELoginScreenState, ELoginPopupState } from \"./loginConstants\";\nimport LoginIdScreen from \"../../../components/login/loginScreen/loginIdScreen\";\nimport ee from \"../../../components/utils/eventEmitter\";\nimport {\n AGetValidateUserId,\n ATotpLogin,\n A2FaLogin,\n AValidatePassword,\n ACommAccOpenPre,\n} from \"../../../services/login/loginApiService\";\nimport PasswordScreen from \"../../../components/login/loginScreen/passwordScreen\";\nimport YobScreen from \"../../../components/login/loginScreen/yobScreen\";\nimport LoginService, {\n getPreLoginData,\n setPreLoginData,\n getUserID,\n setAccData,\n getAccData,\n parseQuery,\n logout,\n saveDataInLocalStorage,\n isLoggedIn,\n} from \"../../../services/login/loginService\";\nimport urlConfig, { config } from \"../../../config/domain\";\nimport LoginStatusScreen from \"../../../components/login/loginScreen/loginStatusScreen\";\nimport LeadFormScreen from \"../../../components/login/loginScreen/leadFormScreen\";\nimport { ILeadFormFields } from \"../../../components/login/forms/leadForm\";\nimport { ClevertapService } from \"../../../services/clevertapService\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\n\nimport { RouteChildrenProps } from \"react-router-dom\";\nimport LoginLoaderScreen from \"../../../components/login/loginScreen/loginLoaderScreen\";\nimport { MyAuthContext } from \"../../../Context/AuthContext\";\nimport { accRedircet } from \"../../../services/genralServise\";\nimport LoginWithApi from \"../../../components/login/loginScreen/loginWithApi\";\nimport YobWithAPi from \"../../../components/login/loginScreen/yobWithApi\";\nimport PasswordWithApi from \"../../../components/login/loginScreen/passwordWithApi\";\nimport OtpScreen from \"../../../components/login/loginScreen/otpScreen\";\nimport { RoutesUrl } from \"../../Routes/constents\";\nimport OtpWithAPi from \"../../../components/login/loginScreen/otpWithApi\";\nimport EtotpScreen from \"../../../components/login/loginScreen/etotpScreen\";\nimport EtotpWithApi from \"../../../components/login/loginScreen/etotpWithApi\";\nimport { ITotpLoginProps } from \"../../../components/login/forms/etotpPasswordForm\";\nimport { addTolocalStorage } from \"../../Constants/commenFeatures\";\n\nexport interface ILoginCtrlProps {}\n\nexport interface ILoginCtrlState {\n screenState: ELoginScreenState;\n popupState?: ELoginPopupState; // if undefined then popup is closed otherwise open in corresponding state\n disableForm: boolean;\n accTypes?: Array;\n totpSetting?: ITotpLoginProps;\n errorMsg?: string;\n popupMessage?: string;\n appKeyDetails?:string;\n // myAuthContext?: any;\n}\n\nclass LoginCtrl extends React.Component<\n ILoginCtrlProps & RouteChildrenProps,\n ILoginCtrlState\n> {\n // login starts with LOGIN_ID screen\n state: ILoginCtrlState = {\n screenState: ELoginScreenState.LOGIN_ID,\n disableForm: false,\n };\n clevertapService = new ClevertapService();\n static contextType = MyAuthContext;\n\n componentDidMount() {\n // this.setState({myAuthContext:this.context})\n // console.log(\"this.contextType\", isAuthContext)\n\n ee.on(\"changeLoginScreen\", this.changeScreenState);\n ee.on(\"logout\", () => this.postLogout());\n\n // If there is a query string in url, then read the values and store in Login Service\n if (window.location.search) {\n const queryString = parseQuery(window.location.search);\n if (queryString.api_key) {\n // PYTHON LIBRARY\n logout();\n // LoginService.hideCross = true;\n } else {\n accRedircet(config.root + \"/login\");\n }\n }\n }\n\n postLogout() {\n const queryString = parseQuery(window.location.search);\n sessionStorage.setItem(\"source\", queryString.api_key);\n this.afterHandleQueryString();\n }\n\n afterHandleQueryString = async () => {\n // if user is logged in then redirect\n // if popupName is present then show popup\n // otherwise continue with normal login flow\n if (isLoggedIn() && !LoginService.popupName) {\n this.onClose();\n return;\n } else if (window.location.search) {\n const queryString = parseQuery(window.location.search);\n if (queryString.api_key) {\n this.changeScreenState(ELoginScreenState.LOGIN_WITH_API_KEY);\n }\n } else {\n this.openLogin();\n }\n };\n\n openLogin = () => {\n this.changeScreenState(ELoginScreenState.LOGIN_ID);\n };\n\n // optState is optional state that needs to be set along with screenState\n changeScreenState = (\n screenState: ELoginScreenState,\n optState?: { [key in keyof ILoginCtrlState]?: any }\n ) => {\n // if anything needs to be done specifically for a screen then only write the case\n switch (screenState) {\n case ELoginScreenState.LOGIN_ID:\n const userID = getUserID();\n setPreLoginData({ userID });\n\n if (userID) {\n this.getValidateUserId(userID);\n } else {\n this.setFocus(\"userID\");\n }\n break;\n\n case ELoginScreenState.PASSWORD:\n this.setFocus(\"password\");\n break;\n\n case ELoginScreenState.YOB:\n this.setFocus(\"yob-0\");\n break;\n case ELoginScreenState.OTP:\n this.setFocus(\"otp\");\n break;\n }\n\n // setstate is common for all screens\n this.setState({\n screenState,\n disableForm: false,\n errorMsg: undefined,\n ...optState,\n });\n };\n\n changePopupState = (popupState?: ELoginPopupState, optState?: any) => {\n this.setState({ popupState, ...optState });\n };\n\n //Set Focus\n setFocus = (id: string) => {\n setTimeout(function () {\n (document as Document).getElementById(id)?.focus();\n }, 150);\n };\n\n // this function is called after clicking on edit userid button on password screen\n showUserIdScreen = () => {\n this.onTimerClose();\n this.setState({\n disableForm: false,\n errorMsg: undefined,\n });\n };\n\n switchLoginFlow = (flow: string) => {\n this.setState({\n disableForm: false,\n errorMsg: undefined,\n });\n if (flow === \"OTP\") {\n this.changeScreenState(ELoginScreenState.PASSWORD);\n } else if (flow === \"ETOTP\"){\n this.changeScreenState(ELoginScreenState.ETOTP);\n }\n };\n\n switchApiKeyLoginFlow = (flow: string) => {\n this.setState({\n disableForm: false,\n errorMsg: undefined,\n });\n if (flow === \"OTP\") {\n this.changeScreenState(ELoginScreenState.PASSWORD_WITH_API_KEY);\n } else if (flow === \"ETOTP\"){\n this.changeScreenState(ELoginScreenState.ETOTP_WITH_API_KEY);\n }\n };\n\n // this function is called to remove error msg\n removeError = () => {\n this.setState({ errorMsg: undefined, disableForm: false });\n };\n\n // Called when user clicks on preceed on userid screen\n // used to get security image list\n getValidateUserId = (userID: string) => {\n this.setState({ disableForm: true });\n setPreLoginData({ userID: userID.toUpperCase() });\n if (window.location.search) {\n const queryString = parseQuery(window.location.search);\n if (queryString.api_key) {\n AGetValidateUserId(this.getValidateUserIdRes, userID.toUpperCase(), true);\n }\n } else {\n AGetValidateUserId(this.getValidateUserIdRes, userID.toUpperCase(), false);\n }\n };\n\n // response of security image list\n getValidateUserIdRes = (res: any) => {\n if (res.data && res.data.sts && res.data.loginFlow) {\n addTolocalStorage(\"LoginFlow\", res.data.loginFlow);\n if (window.location.search) {\n const queryString = parseQuery(window.location.search);\n if (queryString.api_key) {\n if(res.data.loginFlow == \"ETOTP\"||res.data.loginFlow == \"BOTH\"){\n this.changeScreenState(ELoginScreenState.ETOTP_WITH_API_KEY, {\n accTypes: res.data.accTypes,\n appKeyDetails: res.data,\n totpSetting: res.data.totpSetting\n });\n } else if(res.data.loginFlow == \"TOTP\"||res.data.loginFlow == \"OTP\"){\n this.changeScreenState(ELoginScreenState.PASSWORD_WITH_API_KEY, {\n accTypes: res.data.accTypes,\n appKeyDetails: res.data,\n });\n }\n }\n } else {\n if(res.data.loginFlow == \"ETOTP\"||res.data.loginFlow == \"BOTH\"){\n this.changeScreenState(ELoginScreenState.ETOTP, {\n accTypes: res.data.accTypes,\n totpSetting: res.data.totpSetting\n });\n } else if(res.data.loginFlow == \"TOTP\"||res.data.loginFlow == \"OTP\"){\n this.changeScreenState(ELoginScreenState.PASSWORD, {\n accTypes: res.data.accTypes,\n });\n }\n }\n } else {\n this.setState({ errorMsg: res.error.errMsg, disableForm: false });\n }\n };\n\n // called first when user clicks on proceed on password screen\n // used to validate the combination of userid and password\n validatePassword = (pwd: string, accTyp: string) => {\n this.setState({ disableForm: true });\n setPreLoginData({ accTyp, pwd });\n let userid = getPreLoginData(\"userID\") || parseQuery(window.location.search).api_key;\n AValidatePassword(this.validatePasswordRes, userid, accTyp, pwd);\n };\n\n // response of 2faquestions\n validatePasswordRes = (res: any) => {\n if (res.data && res.data.sts == true) {\n if (window.location.search) {\n const queryString = parseQuery(window.location.search);\n if (queryString.api_key) {\n // PYTHON LIBRARY\n if (res.data?.loginFlow === \"OTP\") {\n this.changeScreenState(ELoginScreenState.OTP_WITH_API_KEY);\n } else {\n this.changeScreenState(ELoginScreenState.YOB_WITH_API_KEY);\n }\n }\n } else {\n if (res.data?.loginFlow === \"OTP\") {\n this.changeScreenState(ELoginScreenState.OTP);\n } else {\n this.changeScreenState(ELoginScreenState.YOB);\n }\n }\n } else {\n this.setState({ errorMsg: res.error.errMsg, disableForm: false });\n }\n };\n\n // used to verify yob\n verifyAnswers = (ans: string) => {\n if (this.state.screenState == ELoginScreenState.YOB) {\n this.setState({ disableForm: true });\n }\n // pass vendor details if vendor is availables\n\n A2FaLogin(\n this.verifyAnswersRes,\n getPreLoginData(\"userID\"),\n getPreLoginData(\"accTyp\"),\n getPreLoginData(\"pwd\"),\n ans\n );\n };\n\n quickLogin = (pwd: string, accTyp: string, totp: string, loginFlow: string) => {\n this.setState({ disableForm: true });\n setPreLoginData({ accTyp, pwd });\n let userid = getPreLoginData(\"userID\") || parseQuery(window.location.search).api_key;\n ATotpLogin(this.verifyAnswersRes , userid, accTyp, pwd, totp, loginFlow);\n };\n\n verifyAnswersRes = (res: any, meta: Response) => {\n try {\n if (res) {\n if (res.data && res.data.sts !== \"INVALID_ANSWERS\") {\n // set all data in dataservice\n setAccData(res.data);\n\n // cleverTapRegistration();\n\n if (meta.headers.get(\"appidkey\")) {\n urlConfig.appidkey = meta.headers.get(\"appidkey\") as string;\n }\n LoginService.authorization = meta.headers.get(\n \"authorization\"\n ) as string;\n LoginService.jwtToken = (meta.headers.get(\"ewjwt\") as string).split(\n \" \"\n )[1];\n saveDataInLocalStorage();\n this.onClose();\n } else {\n if (res.error && res.error.errMsg.includes(\"Account Blocked\")) {\n this.setState({\n errorMsg: res.error.errMsg,\n disableForm: true,\n });\n } else {\n this.setState({\n errorMsg:\n (res.data && res.data.sts) || (res.error && res.error.errMsg),\n disableForm: false,\n });\n }\n }\n\n var data = {\n LoginType: \"Traditional\",\n EventName: \"Login Successful\",\n Platform: DeviceContext().isMobile\n ? \"Website_Mobile\"\n : \"Website_Desktop\",\n InitiationScreen: \"Login\",\n InitiationElement: \"Continue\",\n };\n\n this.clevertapService.pushEvent(data);\n }\n } catch (error) {\n console.log(\"Error inside the catch block\", error);\n }\n };\n\n submitLeadForm = (values: ILeadFormFields) => {\n this.setState({ disableForm: true });\n ACommAccOpenPre(this.submitLeadFormRes, values);\n };\n\n submitLeadFormRes = (res: any) => {\n if (res.data) {\n this.changePopupState(ELoginPopupState.OPEN_ACC_SUCC, {\n popupMessage: res.data.msg,\n });\n } else {\n this.setState({ errorMsg: res.error.errMsg, disableForm: false });\n }\n };\n\n onClose = () => {\n const accData = getAccData();\n const { url: _, ...accDataTemp } = accData;\n localStorage.setItem(\"acc_data\", JSON.stringify(accDataTemp));\n this.redirect(accData);\n\n // accData.url + \"?request_id=\" + accData.reqId\n };\n onTimerClose = () => {\n if (window.location.search) {\n const queryString = parseQuery(window.location.search);\n if (queryString.api_key) {\n this.changeScreenState(ELoginScreenState.LOGIN_WITH_API_KEY);\n }\n } else {\n this.changeScreenState(ELoginScreenState.LOGIN_ID);\n }\n };\n\n redirect(accData: any) {\n const isApikey = window.location.href.includes(\"api_key\");\n if (isApikey) {\n let isAccDataUrl = accData.url || \"http://127.0.0.1\";\n if (isAccDataUrl.includes(\"?\")) {\n let url = isAccDataUrl + \"&request_id=\" + accData.reqId;\n return (window.location.href = url);\n } else {\n let url = isAccDataUrl + \"?request_id=\" + accData.reqId;\n return (window.location.href = url);\n }\n }\n\n if (accData.mndtryLoginCnsts && accData.mndtryLoginCnsts.length > 0) {\n let isTncAccepted = accData.mndtryLoginCnsts.filter((getCen: any) => {\n return getCen.name === \"APIConsent\";\n });\n if (isTncAccepted.length > 0) {\n this.context.isAuthFunction(true, false);\n localStorage.setItem(\"tncAccepted\", \"false\");\n // this.props.history.push(\"terms-conditions\");\n accRedircet(config.root + RoutesUrl.TermsAndConditions);\n }\n } else {\n localStorage.setItem(\"tncAccepted\", \"true\");\n this.context.isAuthFunction(true, true);\n accRedircet(config.root + RoutesUrl.MyApps);\n }\n\n // if (url.indexOf(\"http://\") === 0 || url.indexOf(\"https://\") === 0) {\n // \t// If url is absolute\n // \twindow.location.href = url;\n // } else {\n // if url is relative\n // }\n }\n\n prevScreen = () => {\n this.props.history.push(\"/\");\n };\n\n closePopup = () => {\n this.changePopupState(undefined, {\n popupMessage: undefined,\n screenState: ELoginScreenState.LOGIN_ID,\n });\n };\n\n getScreen() {\n switch (this.state.screenState) {\n case ELoginScreenState.LOADING:\n return ;\n\n case ELoginScreenState.LOGIN_ID:\n return (\n \n );\n\n case ELoginScreenState.PASSWORD:\n return (\n \n );\n case ELoginScreenState.ETOTP:\n return (\n \n );\n case ELoginScreenState.YOB:\n return (\n \n );\n case ELoginScreenState.OTP:\n return (\n \n );\n case ELoginScreenState.LOGIN_WITH_API_KEY:\n return (\n \n );\n case ELoginScreenState.PASSWORD_WITH_API_KEY:\n return (\n \n );\n case ELoginScreenState.ETOTP_WITH_API_KEY:\n return (\n \n );\n case ELoginScreenState.YOB_WITH_API_KEY:\n return (\n \n );\n case ELoginScreenState.OTP_WITH_API_KEY:\n return (\n \n );\n\n case ELoginScreenState.LEAD_FORM:\n return (\n this.changeScreenState(ELoginScreenState.LOGIN_ID)\n }\n />\n );\n\n default:\n return <>;\n }\n }\n\n getPopup() {\n switch (this.state.popupState) {\n case ELoginPopupState.LOGINID_SENT:\n return (\n \n this.changePopupState(undefined, {\n popupMessage: undefined,\n })\n }\n onClose={this.closePopup}\n />\n );\n\n case ELoginPopupState.OPEN_ACC_SUCC:\n return (\n \n );\n\n case ELoginPopupState.EMAIL_SENT:\n return (\n \n );\n\n default:\n return undefined;\n }\n }\n\n render() {\n return (\n <>\n {this.getScreen()} {this.getPopup()}\n \n );\n }\n}\n\nexport default LoginCtrl;\n","export interface ILoginObjType {\n userID: string;\n accTyp: string;\n pwd: string;\n}\n\nexport interface IVendorLogin {\n ottype: string;\n vsource: string;\n sourcetoken: string;\n isbasket?: string;\n data?: any;\n sTab?: string;\n}\n\nexport enum ForgotPasswordScreenEnum {\n FORGOT_PASSWORD,\n OTP_SCREEN,\n RESET_OTP_PASSWORD,\n RESET_PASSWORD,\n EQUITY_STATUS_SCREEN,\n COMMODITY_STATUS_SCREEN,\n}\n","import * as React from \"react\";\nimport InputField from \"../../generic/inputField\";\nimport { emailRegex, pan, phoneNo, alphaNumExp, integerExp } from \"../../utils/regex\";\nimport EdButton from \"../../generic/edButton\";\nimport RadioButton from \"../../generic/radioButton\";\nimport \"../../../assets/scss/Login/login/forms/forgotLoginIdForm.scss\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport { IListObj } from \"../../types/genericTypes\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport { AForgotLoginId } from \"../../../services/login/loginApiService\";\nimport loginURLConfig from \"../../../config/login/loginURLConfig\";\n\nexport interface IForgotLoginIdFormProps {\n\tonSuccess: (msg: string) => void; // function to be called on the success of called apis\n}\n\n// form fields\nexport interface IForgotLoginIdFields {\n\tpan: string;\n\temail: string;\n\tmobile: string;\n\taccTyp: string;\n}\n\nconst ForgotLoginIdForm: React.FC = (props) => {\n\t// used to store the entered values in form\n\tconst [values, setValues] = React.useState({ pan: \"\", email: \"\", mobile: \"\", accTyp: \"EQ\" });\n\n\t// used to store the field wise errors\n\tconst [errors, setErrors] = React.useState<{ [key in keyof IForgotLoginIdFields]?: string }>({\n\t\tpan: undefined,\n\t\temail: undefined,\n\t\tmobile: undefined\n\t});\n\n\t// used to store the error message that comes from api\n\tconst [errorMsg, setErrorMsg] = React.useState(\"\");\n\n\t// used to store if the form is submitted or not\n\tconst [submitted, setSubmitted] = React.useState(false);\n\n\tconst accTyp: Array = [\n\t\t{ value: \"EQ\", display: \"Equity\" },\n\t\t{ value: \"CO\", display: \"Commodity\" }\n\t];\n\n\tfunction handleSubmit(e: React.MouseEvent) {\n\t\te.preventDefault();\n\t\tsetSubmitted(true);\n\t\tAForgotLoginId(forgotLoginIdRes, { ...values, mode: \"BOTH\" });\n\t}\n\n\tfunction forgotLoginIdRes(res: any) {\n\t\tif (res.data) {\n\t\t\t// if success, then call the onSuccess function in prop\n\t\t\tprops.onSuccess(res.data.msg);\n\t\t} else if (res.error) {\n\t\t\t// else enable form again\n\t\t\tsetSubmitted(false);\n\n\t\t\tif (res.error.errCd === \"ELGH0001\") {\n\t\t\t\t// show account type radio\n\t\t\t\tsetValues({ ...values, accTyp: \"EQ\" });\n\t\t\t} else {\n\t\t\t\t// hide account type radio and error msg block\n\t\t\t\t// const { pan, email, mobile, accTyp } = values;\n\t\t\t\t// setValues({ pan, email, mobile, accTyp });\n\t\t\t\tsetErrorMsg(res.error.errMsg);\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction onChange(key: keyof IForgotLoginIdFields, value: string) {\n\t\t// onchange of any field remove both type of errors\n\t\tif ((key === \"pan\" && !alphaNumExp.test(value)) || (key === \"mobile\" && !integerExp.test(value))) {\n\t\t\tvalue = values[key];\n\t\t}\n\t\tif(key ==\"accTyp\"){\n\t\t\tsetErrors({...errors, pan: \"\", email: \"\", mobile: \"\"});\n\t\t\tsetValues({ pan: \"\", email: \"\", mobile: \"\", accTyp: value});\n\t\t}else{ \n\t\t\tsetErrors({ ...errors, [key]: \"\" });\n\t\t\tsetValues({ ...values, [key]: value });\n\t\t}\n\t\tsetErrorMsg(\"\");\n\t\treturn value;\n\t}\n\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t

Account type

\n\t\t\t\t
    \n\t\t\t\t
  • \n\t\t\t\t\t{accTyp.map((typ) => (\n\t\t\t\t\t onChange(\"accTyp\", typ.value as string)}\n\t\t\t\t\t/>\n\t\t\t\t\t))}\n\t\t\t\t
  • \n\t\t\t\t
\n\t\t\t
\n\t\t\t\n\t\t\t onChange(\"pan\", pan)}\n\t\t\t\tonBlur={(error) => setErrors({ ...errors, pan: error.pattern ? \"\" : \"Please enter a valid PAN\" })}\n\t\t\t\tclassName=\"login_inp mg-b40\"\n\t\t\t\tplaceholder=\"Eg: JUKL5678987\"\n\t\t\t\thelpTextColor=\"blue\"\n\t\t\t\trequired\n\t\t\t\tpattern={pan}\n\t\t\t\terrorText={errors.pan}\n\t\t\t\tmaxLength={10}\n\t\t\t/>\n\n\t\t\t{(values.accTyp ==\"EQ\" || !loginURLConfig.CommKambala) && (\n\t\t\t\t<>\n\t\t\t\t\n\t\t\t\t onChange(\"email\", email)}\n\t\t\t\t\tonBlur={(error) => setErrors({ ...errors, email: error.pattern ? \"\" : \"Please enter a valid email address\" })}\n\t\t\t\t\tclassName=\"login_inp mg-b40\"\n\t\t\t\t\tplaceholder=\"Eg: sarveshpali@gmail.com\"\n\t\t\t\t\terrorText={errors.email}\n\t\t\t\t/>\n\t\t\t\t\n\t\t\t)}\n\n\t\t\t\n\t\t\t
\n\t\t\t\t+91\n\t\t\t\t onChange(\"mobile\", mobile)}\n\t\t\t\t\tonBlur={(error) => setErrors({ ...errors, mobile: error.pattern ? \"\" : \"Please enter a valid phone number\" })}\n\t\t\t\t\tclassName=\"login_inp mg-b40\"\n\t\t\t\t\tplaceholder=\"Eg: 9809807765\"\n\t\t\t\t\tpattern={phoneNo}\n\t\t\t\t\terrorText={errors.mobile}\n\t\t\t\t\tmaxLength={10}\n\t\t\t\t/>\n\t\t\t
\n\n\t\t\t{/* This select account type block will only show if \"ELGH0001\" error comes in response to api */}\n\t\t\t{/* {values.accTyp && (\n\t\t\t\t
\n\t\t\t\t\t

Select Account type to retrieve Login ID:

\n\t\t\t\t\t
    \n\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t{accTyp.map((typ) => (\n\t\t\t\t\t\t\t\t onChange(\"accTyp\", typ.value as string)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t
  • \n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t)} */}\n\n\t\t\t{/* Show error if any */}\n\t\t\t{errorMsg && {errorMsg}}\n\n\t\t\t error) || \n\t\t\t\t\t((values.accTyp ==\"EQ\"|| !loginURLConfig.CommKambala) ? (Object.values(values).some((value) => !value)) : (!values.mobile || !values.pan)) || submitted}\n\t\t\t\tonClick={handleSubmit}\n\t\t\t/>\n\t\t\n\t);\n};\n\nexport default ForgotLoginIdForm;\n","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport ForgotLoginIdForm from \"../forms/forgotLoginIdForm\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport { ELoginPopupState } from \"../../../Containers/Client/Login/loginConstants\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport { Link, RouteChildrenProps } from \"react-router-dom\";\nimport LoginStatusScreen from \"./loginStatusScreen\";\nimport LoginService from \"../../../services/login/loginService\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface IForgotLoginIdScreenProps {}\n\nexport interface IForgotLoginIdScreenState {\n popupMessage: string;\n}\n\nclass ForgotLoginIdScreen extends React.Component<\n IForgotLoginIdScreenProps & RouteChildrenProps,\n IForgotLoginIdScreenState\n> {\n state = { popupMessage: \"\" };\n\n onClose = () => {\n this.props.history.push(\"/login/help\");\n };\n\n render() {\n return (\n <>\n \n \n Back\n \n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : (\n

Forgot Login ID

\n )\n }\n // don't show close button in vendor login\n onClose={LoginService.hideCross ? undefined : this.onClose}\n className=\"login_scrn frgt_id_form \"\n >\n {DeviceContext().isDesktop && (\n
\n

Forgot Login ID

\n
\n )}\n\n this.setState({ popupMessage })}\n />\n \n {this.state.popupMessage && (\n \n )}\n \n );\n }\n}\n\nexport default ForgotLoginIdScreen;\n","// This form is used in all login help options other than \"forgot login Id\"\n\nimport * as React from \"react\";\nimport InputField from \"../../generic/inputField\";\nimport { emailRegex, pan, alphaNumExp } from \"../../utils/regex\";\nimport EdButton from \"../../generic/edButton\";\nimport RadioButton from \"../../generic/radioButton\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport \"../../../assets/scss/Login/login/forms/forgotLoginIdForm.scss\";\n\nimport { IListObj } from \"../../types/genericTypes\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport loginURLConfig from \"../../../config/login/loginURLConfig\";\nimport {\n AForgotPassword,\n AForgotPasswordOTP,\n} from \"../../../services/login/loginApiService\";\nimport { ForgotPasswordScreenEnum } from \"../../types/components/login/loginTypes\";\nimport { setPreLoginData } from \"../../../services/login/loginService\";\n\nexport interface IForgotPasswordFormProps {\n onSuccess: (\n msg: string,\n status: ForgotPasswordScreenEnum,\n loginId: string\n ) => void; // function to be called on the success of called apis\n}\n\n// form fields\nexport interface IForgotPasswordFields {\n pan: string;\n email?: string;\n loginId: string;\n accTyp: string;\n}\n\nconst ForgotPasswordForm: React.FC = (props) => {\n // used to store the entered values in form\n const [values, setValues] = React.useState({\n pan: \"\",\n loginId: \"\",\n accTyp: \"EQ\",\n });\n\n // used to store the field wise errors\n const [errors, setErrors] = React.useState<{\n [key in keyof IForgotPasswordFields]?: string;\n }>({\n pan: undefined,\n email: undefined,\n loginId: undefined,\n });\n\n // used to store the error message that comes from api\n const [errorMsg, setErrorMsg] = React.useState(\"\");\n\n // used to store if the form is submitted or not\n const [submitted, setSubmitted] = React.useState(false);\n\n // to check the route\n\n const accTyp: Array = [\n { value: \"EQ\", display: \"Equity\" },\n { value: \"CO\", display: \"Commodity\" },\n ];\n\n function handleSubmit(e: React.MouseEvent) {\n e.preventDefault();\n setSubmitted(true);\n setPreLoginData({ accTyp:values.accTyp});\n if (values.accTyp == \"CO\") {\n if(loginURLConfig.CommKambala == true)\n AForgotPasswordOTP(AForgotPasswordOTPRes, values);\n else\n AForgotPassword(AForgotPasswordRes, values); \n } else {\n AForgotPasswordOTP(AForgotPasswordOTPRes, values);\n }\n }\n\n function AForgotPasswordRes(res: any) {\n if (res.data) {\n props.onSuccess(\n res.data.msg,\n ForgotPasswordScreenEnum.COMMODITY_STATUS_SCREEN,\n values.loginId\n );\n } else if (res.error) {\n // else enable form again\n errorHandler(res.error);\n }\n }\n function AForgotPasswordOTPRes(res: any) {\n if (res.data) {\n if (loginURLConfig.CommKambala == true) \n props.onSuccess(\"\", ForgotPasswordScreenEnum.RESET_OTP_PASSWORD, values.loginId);\n else\n props.onSuccess(\"\", ForgotPasswordScreenEnum.RESET_PASSWORD, values.loginId);\n } else if (res.error) {\n // else enable form again\n errorHandler(res.error);\n }\n }\n\n function errorHandler(error: any) {\n if (error.errCd === \"ELGH0001\") {\n // show account type radio\n setValues({ ...values, accTyp: \"EQ\" });\n } else {\n setErrorMsg(error.errMsg);\n }\n }\n\n function onChange(key: keyof IForgotPasswordFields, value: string) {\n if ((key === \"loginId\" || key === \"pan\") && !alphaNumExp.test(value)) {\n value = values[key];\n }\n if (key == \"accTyp\" && value === \"EQ\") {\n delete values.email;\n } else if (key == \"accTyp\" && value === \"CO\") {\n loginURLConfig.CommKambala ? (delete values.email) : (values.email = \"\");\n }\n // onchange of any field remove both type of errors\n setValues({ ...values, [key]: value });\n setErrors({ ...errors, [key]: \"\" });\n setErrorMsg(\"\");\n setSubmitted(false);\n\n // return value to be cahnged inside the input field\n return value;\n }\n function getButtonValue() {\n let commBtnValue; \n loginURLConfig.CommKambala ? (commBtnValue= \"Send OTP\") : (commBtnValue= \"Send new password to my email\");\n switch (values.accTyp) {\n case accTyp[0].value:\n return \"Send OTP\";\n case accTyp[1].value:\n return commBtnValue;\n default:\n return \"Proceed\";\n }\n }\n return (\n
\n
\n

Account type

\n
    \n
  • \n {accTyp.map((typ) => (\n onChange(\"accTyp\", typ.value as string)}\n />\n ))}\n
  • \n
\n
\n \n onChange(\"loginId\", loginId)}\n onBlur={(error) => {\n setErrors({\n ...errors,\n loginId: error.required ? \"Field is required\" : \"\",\n });\n }}\n maxLength={24}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg:5678987\"\n required\n errorText={errors.loginId}\n />\n {values.accTyp === accTyp[1].value && !loginURLConfig.CommKambala && (\n <>\n \n onChange(\"email\", email)}\n onBlur={(error) =>\n setErrors({\n ...errors,\n email: error.pattern\n ? \"\"\n : \"Please enter a valid email address\",\n })\n }\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: sarveshpali@gmail.com\"\n errorText={errors.email}\n />\n \n )}\n\n \n onChange(\"pan\", pan)}\n onBlur={(error) =>\n setErrors({\n ...errors,\n pan: error.pattern ? \"\" : \"Please enter a valid PAN\",\n })\n }\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: JUKL5678987\"\n helpTextColor=\"blue\"\n required\n pattern={pan}\n errorText={errors.pan}\n maxLength={10}\n />\n\n {/* Show error if any */}\n {errorMsg && {errorMsg}}\n\n error) ||\n Object.values(values).some((value) => !value) ||\n submitted\n }\n onClick={handleSubmit}\n />\n \n );\n};\n\nexport default ForgotPasswordForm;","// This form is used in all login help options other than \"forgot login Id\"\n\nimport * as React from \"react\";\nimport { checkPasswordStranth } from \"../../utils/regex\";\nimport EdButton from \"../../generic/edButton\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport \"../../../assets/scss/Login/login/forms/forgotLoginIdForm.scss\";\n\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport ConfirmPassword from \"../../generic/confirmPassword\";\nimport { passwordHints } from \"../../../Containers/Constants/commenFeatures\";\n\nexport interface IResetPasswordFormProps {\n onSuccess: (values: IResetPasswordFields) => void; // function to be called on the success of called apis\n errors: string;\n onRemoveError: () => void; // removes the errorMsg\n}\n\n// form fields\nexport interface IResetPasswordFields {\n password: string;\n confirmPassword: string;\n}\n\nconst ResetPassword: React.FC = (props) => {\n const [showPasswordHint, setShowPasswordHint] = React.useState>(\n []\n );\n // used to store the entered values in form\n const [values, setValues] = React.useState({\n password: \"\",\n confirmPassword: \"\",\n });\n\n // used to store the field wise errors\n const [errors, setErrors] = React.useState<{\n [key in keyof IResetPasswordFields]?: string;\n }>({\n password: undefined,\n confirmPassword: undefined,\n });\n\n // used to store if the form is submitted or not\n const [submitted, setSubmitted] = React.useState(false);\n\n function handleSubmit(e: React.MouseEvent) {\n e.preventDefault();\n setSubmitted(true);\n props.onSuccess(values);\n }\n\n React.useEffect(() => {\n let listOfStr: Array = [];\n let getStrength;\n if (values.password.length === 0) {\n getStrength = passwordHints;\n } else {\n getStrength = checkPasswordStranth(6, 12, values.password);\n }\n for (let list in getStrength) {\n if (getStrength[list] !== \"\") {\n listOfStr.push(getStrength[list]);\n }\n }\n\n setShowPasswordHint(listOfStr);\n }, [values.password]);\n\n React.useEffect(() => {\n if (showPasswordHint.length === 0 || !values.password) {\n setErrors({\n ...errors,\n password: \"\",\n });\n }\n }, [showPasswordHint]);\n\n React.useEffect(() => {\n if (values) {\n props.onRemoveError();\n }\n }, [values]);\n\n return (\n
\n
\n \n {props.errors ? (\n {props.errors}\n ) : (\n
\n )}\n\n error) ||\n Object.values(values).some((value) => !value) ||\n submitted\n }\n onClick={handleSubmit}\n />\n \n
\n );\n};\n\nexport default ResetPassword;\n","// This form is used in all login help options other than \"forgot login Id\"\n\nimport * as React from \"react\";\nimport { checkPasswordStranth } from \"../../utils/regex\";\nimport EdButton from \"../../generic/edButton\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport \"../../../assets/scss/Login/login/forms/forgotLoginIdForm.scss\";\n\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport ConfirmPassword from \"../../generic/confirmPassword\";\nimport { passwordHints } from \"../../../Containers/Constants/commenFeatures\";\nimport OtpForm from \"./otpForm\";\n\nexport interface IResetOtpPasswordFormProps {\n onSuccess: (values: IResetPasswordFields, otp:string) => void; // function to be called on the success of called apis\n errorMsg: string;\n disableForm: boolean;\n onTimerClose: () => void;\n onRemoveError: () => void; // removes the errorMsg\n}\n\n// form fields\nexport interface IResetPasswordFields {\n password: string;\n confirmPassword: string;\n}\n\nconst ResetOtpPassword: React.FC = (props) => {\n const [showPasswordHint, setShowPasswordHint] = React.useState>(\n []\n );\n // used to store the entered values in form\n const [values, setValues] = React.useState({\n password: \"\",\n confirmPassword: \"\",\n });\n const [otp, setOtp] = React.useState(\"\");\n // used to store the field wise errors\n const [errors, setErrors] = React.useState<{\n [key in keyof IResetPasswordFields]?: string;\n }>({\n password: undefined,\n confirmPassword: undefined,\n });\n\n // used to store if the form is submitted or not\n const [submitted, setSubmitted] = React.useState(false);\n\n function handleSubmit(e: React.MouseEvent) {\n e.preventDefault();\n setSubmitted(true);\n props.onSuccess(values,otp);\n }\n\n React.useEffect(() => {\n let listOfStr: Array = [];\n let getStrength;\n if (values.password.length === 0) {\n getStrength = passwordHints;\n } else {\n getStrength = checkPasswordStranth(6, 12, values.password);\n }\n for (let list in getStrength) {\n if (getStrength[list] !== \"\") {\n listOfStr.push(getStrength[list]);\n }\n }\n\n setShowPasswordHint(listOfStr);\n }, [values.password]);\n\n React.useEffect(() => {\n if (showPasswordHint.length === 0 || !values.password) {\n setErrors({\n ...errors,\n password: \"\",\n });\n }\n }, [showPasswordHint]);\n\n React.useEffect(() => {\n if (values) {\n props.onRemoveError();\n }\n }, [values]);\n\n return (\n
\n
\n \n \n error) ||\n Object.values(values).some((value) => !value) ||\n otp.length != 4 ||\n submitted\n }\n onClick={handleSubmit}\n />\n \n
\n );\n};\n\nexport default ResetOtpPassword;","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport { ELoginPopupState } from \"../../../Containers/Client/Login/loginConstants\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport { Link, RouteChildrenProps } from \"react-router-dom\";\nimport LoginStatusScreen from \"./loginStatusScreen\";\nimport LoginService, { getPreLoginData } from \"../../../services/login/loginService\";\nimport ForgotPasswordForm from \"../forms/forgotPasswordForm\";\nimport { ForgotPasswordScreenEnum } from \"../../types/components/login/loginTypes\";\nimport OtpForm from \"../forms/otpForm\";\nimport {\n AClientResetPassword,\n AClientKamResetPassword,\n AValidateOTP,\n} from \"../../../services/login/loginApiService\";\nimport ResetPassword from \"../forms/resetPassword\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\nimport ResetOtpPassword from \"../forms/resetOtpPassword\";\n\nexport interface IForgotPasswordScreenProps {}\n\nexport interface IForgotPasswordScreenState {\n popupMessage: string;\n screenState: ForgotPasswordScreenEnum;\n errorMsg?: string;\n attempts: number;\n loginId: string;\n disableForm: boolean;\n}\n\nclass ForgotPasswordScreen extends React.Component<\n IForgotPasswordScreenProps & RouteChildrenProps,\n IForgotPasswordScreenState\n> {\n state = {\n popupMessage: \"\",\n screenState: ForgotPasswordScreenEnum.FORGOT_PASSWORD,\n errorMsg: \"\",\n attempts: 3,\n loginId: \"\",\n disableForm: false,\n };\n\n onClose = () => {\n this.props.history.push(\"/login/help\");\n };\n\n onForgetFormSubmit = (\n popupMessage: string,\n screenState: ForgotPasswordScreenEnum,\n loginId: string = this.state.loginId\n ) => {\n this.setState({\n ...this.state,\n errorMsg: \"\",\n popupMessage,\n screenState,\n loginId,\n });\n };\n\n onSubmitOTPForm = (otp: string) => {\n let payload = {\n loginId: this.state.loginId,\n accTyp: \"EQ\",\n otp: otp,\n };\n AValidateOTP(this.onSubmitOTPFormRes, payload);\n // this.onSubmitOTPFormRes(payload);\n };\n\n onSubmitOTPFormRes = (res: any) => {\n console.log(res);\n if (res.data && res?.data) {\n this.setState({\n ...this.state,\n errorMsg: \"\",\n screenState: ForgotPasswordScreenEnum.RESET_PASSWORD,\n });\n } else if (res.error) {\n if (this.state.attempts <= 1) {\n this.setState({\n ...this.state,\n errorMsg: \"You have exceeded the maximum number of attempts\",\n attempts: 0,\n disableForm: true,\n });\n } else {\n this.setState({\n ...this.state,\n errorMsg: res.error.errMsg,\n attempts: this.state.attempts - 1,\n });\n }\n }\n };\n\n clientResetPasswordApi = (form: any) => {\n let payload = {\n loginId: this.state.loginId,\n ...form,\n };\n AClientResetPassword(this.clientResetPasswordRes, payload);\n };\n clientKamResetPasswordApi = (form: any, otp:string) => {\n let payload = {\n loginId: this.state.loginId,\n ...form,\n otp\n };\n AClientKamResetPassword(this.clientResetPasswordRes, payload,getPreLoginData(\"accTyp\"));\n };\n\n clientResetPasswordRes = (res: any) => {\n if (res.data) {\n this.setState({\n ...this.state,\n errorMsg: \"\",\n popupMessage: \"Password updated successfully\",\n screenState: ForgotPasswordScreenEnum.EQUITY_STATUS_SCREEN,\n });\n } else if (res.error) {\n this.setState({\n ...this.state,\n errorMsg: res.error.errMsg,\n });\n }\n };\n\n removeError = () => {\n this.setState({\n ...this.state,\n errorMsg: \"\",\n });\n };\n\n getScreen = () => {\n switch (this.state.screenState) {\n case ForgotPasswordScreenEnum.FORGOT_PASSWORD:\n return ;\n case ForgotPasswordScreenEnum.OTP_SCREEN:\n return (\n \n this.setState({\n ...this.state,\n screenState: ForgotPasswordScreenEnum.FORGOT_PASSWORD,\n })\n }\n />\n );\n case ForgotPasswordScreenEnum.RESET_OTP_PASSWORD:\n return (\n \n this.setState({\n ...this.state,\n screenState: ForgotPasswordScreenEnum.FORGOT_PASSWORD,\n })\n }\n />\n );\n case ForgotPasswordScreenEnum.RESET_PASSWORD:\n return (\n \n );\n case ForgotPasswordScreenEnum.EQUITY_STATUS_SCREEN:\n return (\n \n );\n case ForgotPasswordScreenEnum.COMMODITY_STATUS_SCREEN:\n return (\n \n );\n default:\n return <>;\n }\n };\n\n render() {\n return (\n <>\n \n \n Back\n \n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : (\n

Forgot Password

\n )\n }\n // don't show close button in vendor login\n onClose={LoginService.hideCross ? undefined : this.onClose}\n className=\"login_scrn frgt_id_form\"\n >\n {DeviceContext().isDesktop && (\n
\n

Forgot Password

\n
\n )}\n {this.getScreen()}\n \n \n );\n }\n}\n\nexport default ForgotPasswordScreen;","// This form is used in all login help options other than \"forgot login Id\"\n\nimport * as React from \"react\";\nimport InputField from \"../../generic/inputField\";\nimport { emailRegex, pan, alphaNumExp } from \"../../utils/regex\";\nimport EdButton from \"../../generic/edButton\";\nimport RadioButton from \"../../generic/radioButton\";\nimport \"../../../assets/scss/Login/login/generic/loginInput.scss\";\nimport \"../../../assets/scss/Login/login/forms/forgotLoginIdForm.scss\";\n\nimport { IListObj } from \"../../types/genericTypes\";\nimport LoginErrMsg from \"../generic/loginErrMsg\";\nimport { AUnblockAccount } from \"../../../services/login/loginApiService\";\nimport loginURLConfig from \"../../../config/login/loginURLConfig\";\n\nexport interface IUnblockAccountFormProps {\n onSuccess: (msg: string) => void; // function to be called on the success of called apis\n}\n\n// form fields\nexport interface IUnblockAccountFormFields {\n pan: string;\n email: string;\n loginId: string;\n accTyp?: string;\n}\n\nconst UnblockAccountForm: React.FC = (props) => {\n // used to store the entered values in form\n const [values, setValues] = React.useState( {pan: \"\", email: \"\", loginId: \"\", accTyp: \"EQ\"} );\n\n // used to store the field wise errors\n const [errors, setErrors] = React.useState<{\n [key in keyof IUnblockAccountFormFields]?: string;\n }>({\n pan: undefined,\n email: undefined,\n loginId: undefined,\n });\n\n // used to store the error message that comes from api\n const [errorMsg, setErrorMsg] = React.useState(\"\");\n\n // used to store if the form is submitted or not\n const [submitted, setSubmitted] = React.useState(false);\n\n // to check the route\n\n const accTyp: Array = [\n { value: \"EQ\", display: \"Equity\" },\n { value: \"CO\", display: \"Commodity\" },\n ];\n\n function handleSubmit(e: React.MouseEvent) {\n e.preventDefault();\n setSubmitted(true);\n AUnblockAccount(apiRes, values);\n }\n\n function apiRes(res: any) {\n if (res.data) {\n // if success, then call the onSuccess function in prop\n props.onSuccess(res.data.msg);\n } else if (res.error) {\n // else enable form again\n\n if (res.error.errCd === \"ELGH0001\") {\n setSubmitted(false);\n // show account type radio\n setValues({ ...values, accTyp: \"EQ\" });\n } else {\n // hide account type radio and error msg block\n // const { pan, email, loginId, accTyp } = values;\n // setValues({ pan, email, loginId, accTyp });\n setErrorMsg(res.error.errMsg);\n }\n }\n }\n\n function onChange(key: keyof IUnblockAccountFormFields, value: string) {\n if ((key === \"loginId\" || key === \"pan\") && !alphaNumExp.test(value)) {\n value = values[key];\n }\n if(key ==\"accTyp\"){\n\t\t\tsetErrors({...errors, pan: \"\", email: \"\", loginId: \"\"});\n\t\t\tsetValues({ pan: \"\", email: \"\", loginId: \"\", accTyp: value});\n\t\t}else{ \n\t\t\tsetErrors({ ...errors, [key]: \"\" });\n\t\t\tsetValues({ ...values, [key]: value });\n\t\t}\n // onchange of any field remove both type of errors\n setErrorMsg(\"\");\n setSubmitted(false);\n return value;\n }\n\n return (\n
\n
\n

Select Account type :

\n
    \n
  • \n {accTyp.map((typ) => (\n onChange(\"accTyp\", typ.value as string)}\n />\n ))}\n
  • \n
\n
\n\n \n onChange(\"loginId\", loginId)}\n onBlur={(error) => {\n setErrors({\n ...errors,\n loginId: error.required ? \"Field is required\" : \"\",\n });\n }}\n maxLength={24}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg:5678987\"\n required\n errorText={errors.loginId}\n />\n {(values.accTyp ==\"EQ\" || !loginURLConfig.CommKambala) && (<>\n \n onChange(\"email\", email)}\n onBlur={(error) =>\n setErrors({\n ...errors,\n email: error.pattern ? \"\" : \"Please enter a valid email address\",\n })\n }\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: sarveshpali@gmail.com\"\n errorText={errors.email}\n />\n )}\n\n \n onChange(\"pan\", pan)}\n onBlur={(error) =>\n setErrors({\n ...errors,\n pan: error.pattern ? \"\" : \"Please enter a valid PAN\",\n })\n }\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: JUKL5678987\"\n helpTextColor=\"blue\"\n required\n pattern={pan}\n errorText={errors.pan}\n maxLength={10}\n />\n\n {/* This select account type block will only show if \"ELGH0001\" error comes in response to api */}\n {/* {values.accTyp && !loginURLConfig.CommKambala &&(\n
\n

Select Account type :

\n
    \n
  • \n {accTyp.map((typ) => (\n onChange(\"accTyp\", typ.value as string)}\n />\n ))}\n
  • \n
\n
\n )} */}\n\n {/* Show error if any */}\n {errorMsg && {errorMsg}}\n\n error) ||\n ((values.accTyp ==\"EQ\"|| !loginURLConfig.CommKambala) ? (Object.values(values).some((value) => !value)) : (!values.loginId || !values.pan)) ||\n submitted \n }\n onClick={handleSubmit}\n />\n \n );\n};\n\nexport default UnblockAccountForm;","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport { ELoginPopupState } from \"../../../Containers/Client/Login/loginConstants\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginScreen.scss\";\nimport { Link, RouteChildrenProps } from \"react-router-dom\";\nimport LoginStatusScreen from \"./loginStatusScreen\";\nimport LoginService from \"../../../services/login/loginService\";\nimport UnblockAccountForm from \"../forms/unblockAccForm\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface IForgotScreenProps {}\n\nexport interface IForgotScreenState {\n popupMessage: string;\n}\n\nclass UnblockAccount extends React.Component<\n IForgotScreenProps & RouteChildrenProps,\n IForgotScreenState\n> {\n state = { popupMessage: \"\" };\n\n get routeParam() {\n return this.props.match!.path.split(\"/\")[2];\n }\n\n onClose = () => {\n this.props.history.push(\"/login/help\");\n };\n\n render() {\n return (\n <>\n \n \n Back\n \n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : (\n

Unblock Account

\n )\n }\n // don't show close button in vendor login\n onClose={LoginService.hideCross ? undefined : this.onClose}\n className=\"login_scrn frgt_id_form\"\n >\n {DeviceContext().isDesktop && (\n
\n

Unblock Account

\n
\n )}\n\n this.setState({ popupMessage })}\n />\n \n {this.state.popupMessage && (\n \n )}\n \n );\n }\n}\n\nexport default UnblockAccount;\n","import * as React from \"react\";\nimport LoginPopup from \"../generic/loginPopup\";\nimport { Link, RouteChildrenProps } from \"react-router-dom\";\nimport \"../../../assets/scss/Login/login/loginScreen/loginHelp.scss\";\nimport DeviceContext from \"../../../services/indentifyDevice\";\nimport { urls } from \"../../../Containers/Client/Login/loginConstants\";\nimport LoginService from \"../../../services/login/loginService\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nexport interface ILoginHelpProps {}\n\nconst LoginHelp: React.FC = (props) => {\n function onClose() {\n redirect(urls.login);\n }\n\n function redirect(url: string) {\n if (url.indexOf(\"http://\") === 0 || url.indexOf(\"https://\") === 0) {\n // If url is absolute\n window.location.href = url;\n } else {\n // if url is relative\n props.history.push(url);\n }\n }\n\n return (\n \n \n Back\n \n }\n centerHeaderContent={\n DeviceContext().isDesktop ? (\n \"nuvama-logo\"\n ) : undefined\n }\n onClose={LoginService.hideCross ? undefined : onClose}\n className=\"login_help_ppup\"\n >\n
\n
\n \n \n Forgot login ID\n \n \n \n \n Forgot password\n \n \n \n \n Unblock account\n \n \n {/* \n \n Get your YOB\n \n */}\n
\n
\n \n );\n};\n\nexport default LoginHelp;\n","import { Route, Switch } from \"react-router-dom\";\nimport VendorLoginCtrl from \"../../vendor/Login/VendorLoginCtrl\";\nimport VendorForgetPassword from \"../../vendor/Login/VendorForgetPassword\";\nimport VendorSetPasswordState from \"../../vendor/Login/VendorSetPassword\";\nimport LoginCtrl from \"../../Client/Login/loginCtrl\";\nimport ForgotLoginIdScreen from \"../../../components/login/loginScreen/forgotLoginIdScreen\";\nimport ForgotPasswordScreen from \"../../../components/login/loginScreen/forgotPasswordScreen\";\nimport UnblockAccountScreen from \"../../../components/login/loginScreen/unblockAccScreen\";\nimport LoginHelp from \"../../../components/login/loginScreen/loginHelp\";\nimport { RoutesUrl } from \"../constents\";\n\nconst LoginRoutes = () => {\n return (\n \n \n \n \n \n \n \n \n \n {/* */}\n \n );\n};\nexport default LoginRoutes;\n","import { useEffect } from \"react\";\nimport { useLocation } from \"react-router-dom\";\n\nexport default function ScrollToTop() {\n const { pathname } = useLocation();\n\n useEffect(() => {\n window.scrollTo(0, 0);\n }, [pathname]);\n\n return null;\n}\n","import React, { useState, useEffect } from \"react\";\nimport config from \"../../../config/domain\";\nimport { NavLink, Link } from \"react-router-dom\";\nimport { RoutesUrl } from \"../../Routes/constents\";\nimport { getTolocalStorage } from \"../../Constants/commenFeatures\";\nimport LoginService from \"../../../services/login/loginService\";\n\nconst HeaderAuth = ({ logout, isNavbar, showNavbar }) => {\n const [isVendor, setIsVendor] = useState();\n const [etotpEnabled, setEtotpEnabled] = useState(false);\n\n useEffect(() => {\n async function checkVandorAuth() {\n const isVAndor = await getTolocalStorage(\"loginAs\");\n if (isVAndor === \"vendor\") {\n setIsVendor(true);\n } else {\n setIsVendor(false);\n }\n const etotpFlow = LoginService.getAccData(\"accs\").etotpSwitch;\n setEtotpEnabled(etotpFlow);\n }\n checkVandorAuth();\n }, []);\n\n return (\n
\n
\n
\n
    \n {isVendor ? (\n <>\n
  • \n \n DashBoard\n \n
  • \n
  • \n \n My Apps\n \n
  • \n \n ) : (\n
  • \n \n My Apps\n \n
  • \n )}\n {etotpEnabled && (
  • \n \n TOTP\n \n
  • )}\n
  • \n Documentation\n
      \n
    • \n \n Client Documentation\n \n
    • \n
    • \n \n Partner Documentation\n \n
    • \n {/* {isVendor ? (\n
    • \n \n Order/Trade Update Streaming\n \n
    • \n ) : null} */}\n
    \n
  • \n
  • \n \n Resources\n \n
  • \n
  • \n \n Support\n \n
  • \n
  • \n \n {\" \"}\n Logout\n \n
  • \n
\n
\n
\n\n
    \n {isVendor ? (\n <>\n
  • \n \n Dashboard\n \n
  • \n
  • \n \n My Apps\n \n
  • \n \n ) : (\n
  • \n \n My Apps\n \n
  • \n )}\n {etotpEnabled && (
  • \n \n TOTP\n \n
  • )}\n
  • \n Documentation\n
      \n
    • \n window.open(config.jmw_client_docs)}\n >\n Client Documentation\n \n
    • \n
    • \n window.open(config.jmw_partner_docs)}\n >\n Partner Documentation\n \n
    • \n {/* {isVendor ? (\n
    • \n \n Order/Trade Update Streaming\n \n
    • \n ) : null} */}\n
    \n
  • \n
  • \n \n Resources\n \n
  • \n
  • \n \n Support\n \n
  • \n
  • \n \n \n Logout\n \n
  • \n
\n
\n );\n};\n\nexport default HeaderAuth;\n","import React, { useState, useEffect } from \"react\";\nimport config from \"../../../config/domain\";\n\nimport { NavLink } from \"react-router-dom\";\nimport { RoutesUrl } from \"../../Routes/constents\";\n// exact activeClassName=\"active\"\n\nconst HeaderUnauth = ({ isNavbar, showNavbar }) => {\n return (\n
\n
\n
\n
    \n
  • \n Documentation\n
      \n
    • \n \n Client Documentation\n \n
    • \n
    • \n \n Partner Documentation\n \n
    • \n
    \n
  • \n
  • \n \n Resources\n \n
  • \n
  • \n \n Support\n \n
  • \n
\n
\n
\n\n
    \n
  • \n {/* href=\"https://ewuat.edelbusiness.in/library-documentation/\" */}\n Documentation\n \n
  • \n
  • \n \n Resources\n \n
  • \n
  • \n \n Support\n \n
  • \n
  • \n \n Sign-up\n \n
  • \n
  • \n \n Login\n \n
      \n
    • \n Client Login\n
    • \n
    • \n Partner Login\n
    • \n
    \n
  • \n
\n
\n );\n};\n\nexport default HeaderUnauth;\n","import React from \"react\";\nimport config from \"../../../config/domain\";\n\nimport { Link, NavLink } from \"react-router-dom\";\nimport { RoutesUrl } from \"../../Routes/constents\";\n\nconst HeaderUnTnc = ({ logout, isNavbar, showNavbar }) => {\n return (\n <>\n
\n
\n
\n \n
\n
\n
    \n
  • \n Documentation\n
      \n
    • \n \n Client Documentation\n \n
    • \n
    • \n \n Partner Documentation\n \n
    • \n
    \n
  • \n
  • \n \n Resources\n \n
  • \n
  • \n \n Support\n \n
  • \n\n
  • \n \n Get Started\n \n
  • \n
  • \n \n \n Logout\n \n
  • \n
\n
\n \n );\n};\n\nexport default HeaderUnTnc;\n","import React, { useState, useContext } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport loginService from \"../../../services/login/loginService\";\nimport HeaderAuth from \"./HeaderAuth\";\nimport HeaderUnauth from \"./HeaderUnauth\";\nimport HeaderUnTnc from \"./HeaderUnTnc\";\nimport \"../../../assets/scss/components/header.scss\";\nimport { MyAuthContext } from \"../../../Context/AuthContext\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\nimport { getTolocalStorage } from \"../../Constants/commenFeatures\";\nimport { accRedircet } from \"../../../services/genralServise\";\nimport { config } from \"../../../config/domain\";\n\nconst Header = (props) => {\n let myAuthContext = useContext(MyAuthContext);\n const [isNavbar, setIsNavbar] = useState(false);\n\n const showNavbar = async () => {\n await setIsNavbar(!isNavbar);\n };\n\n const logout = () => {\n let loginAs = getTolocalStorage(\"loginAs\");\n if (loginAs === \"vendor\") {\n loginService.vendorLogout();\n } else {\n loginService.logout();\n }\n myAuthContext.isAuthFunction(false, false);\n accRedircet(config.root);\n };\n\n const gettingHeader = () => {\n if (myAuthContext && myAuthContext.isAuth && myAuthContext.tncAccepted) {\n return (\n \n );\n } else if (\n myAuthContext &&\n myAuthContext.isAuth &&\n !myAuthContext.tncAccepted\n ) {\n return (\n \n );\n } else {\n return ;\n }\n };\n\n return (\n
\n
\n
\n \n
\n
\n {props.children}\n
\n );\n};\n\nexport default Header;\n","import { Route, Redirect } from \"react-router-dom\";\nimport { useState } from \"react\";\nimport Header from \"../Common/Header/\";\nimport { RoutesUrl } from \"../Routes/constents\";\nimport { getTolocalStorage, LoginKeys } from \"../Constants/commenFeatures\";\n\nfunction VendorPrivateRoute({ component: Component, ...rest }) {\n const [auth, setAuth] = useState(\n getTolocalStorage(LoginKeys.AccessToken) ? true : false\n );\n\n return (\n {\n if (!auth) {\n // not logged in so redirect to login page with the return url\n return (\n \n );\n } else {\n return
{}
;\n }\n }}\n />\n );\n}\n\nexport default VendorPrivateRoute;\n","import React from \"react\";\nimport { Route } from \"react-router\";\nimport Header from \"../Common/Header\";\n\nconst HeaderLayout = ({ children }) => {\n return (\n
\n
{children}
\n
\n );\n};\n\nconst HeaderLayoutRoute = ({ component: Component, ...rest }) => {\n return (\n (\n \n \n \n )}\n />\n );\n};\n\nexport default HeaderLayoutRoute;\n","export default __webpack_public_path__ + \"static/media/graphQuery.db94de5f.svg\";","import React, { useEffect, useState } from \"react\";\n// import \"../../assets/scss/generic/tocDropdown.scss\";\nimport { IListObj } from \"../../../types/genericTypes\";\n\nexport interface IChartTocDropdownProps {\n selectedValue?: number | string; // default selected value\n dropdownOptions: Array; // list of all options in dropdown\n onSelect: (id: string | number) => void; // the function to be called onSelect\n showPrimary?: boolean; // true if need to show star, otherwise false\n showClose?: boolean; // true if need to show close button, otherwise false\n disabled?: boolean; //disable the dropdown\n isSearchable: boolean; // for searchable dropdown list\n}\n\nconst ChartTocDropdown: React.FC = (\n props: IChartTocDropdownProps\n) => {\n /**\n * state and function for isDropdownOpen\n * selectedValue type is boolean\n * setSelectedValue(boolean)\n */\n const [dropDownOption, setDropDownOption] = useState>();\n const [search, setSearch] = useState();\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const wrapperRef = React.useRef(null);\n /**\n * called when user selects an option\n * @param id id of the selected option\n * @returns onSelect prop passed from parent\n */\n function optionSelected(id: string | number) {\n setIsDropdownOpen(false);\n return props.onSelect(id);\n }\n\n // function handleChange(e: any) {\n // setSearch(e.target.value);\n // const list = props.dropdownOptions.filter((opt) => {\n // if (opt.display.toLowerCase().includes(e.target.value.toLowerCase()))\n // return opt;\n // });\n // setIsDropdownOpen(true);\n // setDropDownOption(list);\n // }\n // Find the selected object\n const selectedOption = props.dropdownOptions.find(\n (option) => props.selectedValue === option.value\n );\n useEffect(() => {\n const selectedOption = props.dropdownOptions.find(\n (option) => props.selectedValue === option.value\n );\n setSearch(selectedOption?.display);\n const options = props.dropdownOptions.filter(\n (opt) => props.selectedValue !== opt.value\n );\n setDropDownOption(options);\n }, [props.selectedValue, props.dropdownOptions]);\n\n useEffect(() => {\n /**\n *if clicked on outside of element\n */\n function handleClickOutside(event: any) {\n if (wrapperRef.current && !wrapperRef.current.contains(event.target)) {\n setIsDropdownOpen(false);\n }\n }\n // Bind the event listener\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => {\n // Unbind the event listener on clean up\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, []);\n\n return (\n
\n {\n e.preventDefault();\n !(e as any).target.className.includes(\"edel-icon-close\") &&\n setIsDropdownOpen(true);\n }}\n disabled={props.disabled}\n type={\"button\"}\n >\n {/* show the value of selectedValue */}\n \n {selectedOption?.display}\n {/* Show star only if primary is to be shown and first option is selected */}\n {props.showPrimary && selectedOption?.primary && (\n \n )}\n \n {props.showClose && props.selectedValue ? (\n optionSelected(\"\")} />\n ) : (\n \n )}\n \n\n {/* when dropdown is open show overlay and content */}\n {isDropdownOpen && (\n <>\n {/* Overlay covers the whole screen. When overlay is clicked, close the dropdown. */}\n setIsDropdownOpen(false)}\n />\n\n {/* Dropdown list */}\n
    \n {dropDownOption &&\n dropDownOption.length > 0 &&\n dropDownOption.map((option, index) => (\n optionSelected(option.value)}\n >\n {option.display}\n {/*
    \n
    \n show tick only if this option is selected\n \n {option.value === props.selectedValue && (\n \n )}\n \n \n
    \n {option.primary && props.showPrimary && (\n
    \n \n
    \n )}\n
    */}\n \n ))}\n
\n \n )}\n
\n );\n};\n\nexport default ChartTocDropdown;\n","import React, { useState, useEffect } from \"react\";\nimport graphQuery from \"../../../../assets/images/graphQuery.svg\";\nimport \"../../../../assets/scss/vendor_scss/generic.scss\";\nimport ChartTocDropdown from \"./ChartTocDropdown\";\n\nexport interface IColoumnsHeaderProps {\n title: string;\n subTitle?: string;\n isDownload?: string | boolean;\n isDropdown?: boolean;\n dropdownOptions?: any;\n dropdownValue?: string | number;\n setDropdownValue?: any;\n isMidleBorder?: boolean;\n disableMenu?: boolean;\n handleDownloadBtn?: () => void;\n hints?: string;\n}\nconst ColoumnsHeader: React.FC = (props) => {\n const [showGraphQuery, setShowGraphQuery] = useState(false);\n const [showSEBIRules, setShowSEBIRules] = useState(false);\n\n const wrapperRef = React.useRef(null);\n\n const onChange = (val: string) => {\n props.setDropdownValue(val);\n };\n\n useEffect(() => {\n /**\n *if clicked on outside of element\n */\n function handleClickOutside(event: any) {\n if (wrapperRef.current && !wrapperRef.current?.contains(event.target)) {\n setShowSEBIRules(false);\n setShowGraphQuery(false);\n }\n }\n // Bind the event listener\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => {\n // Unbind the event listener on clean up\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, []);\n\n return (\n
\n
\n

{props.title}

\n setShowGraphQuery(true)}\n />\n \n
\n \n

Day wise Earning data for the specific time frame.

\n
\n \n setShowGraphQuery(false)}\n >
\n \n
\n
\n
\n {!props.disableMenu && (\n
\n
\n

setShowSEBIRules(true)}>\n {props.subTitle && props.subTitle}\n

\n
\n
\n
\n

SEBI Rules /Penalty clause of OTR

\n \n setShowSEBIRules(false)}\n >
\n \n
\n
\n

Daily Algo Orders to Trade Ratio

\n

Charges

\n
\n
\n

Less then 50

\n

Nill

\n
\n
\n

50 to Less then 250

\n

2 paise

\n
\n
\n

250 to Less then 500

\n

10 paise

\n
\n
\n

500 to Less then 1000

\n

15 paise

\n
\n
\n

1000 to Less then 2000

\n

20 paise

\n
\n
\n

2000 or more then 2000

\n

25 paise

\n
\n
\n

\n if the ratio is 2000 or more on three occasions in the\n previous thirty trading days (on rolling basis), the\n concerned member shall not be permitted to place any orders\n for the first 15 minutes on the next trading day as a\n cooling off action.\n

\n
\n
\n
\n
\n {props.isDownload && (\n

\n \n

\n )}\n\n {props.isMidleBorder && }\n {props.hints && {props.hints}}\n {props.isDropdown && (\n {\n onChange(val);\n }}\n isSearchable={false}\n />\n )}\n
\n )}\n \n );\n};\n\nexport default ColoumnsHeader;\n","import moment from \"moment\";\n\nexport const convertFormater = (val) => {\n return moment(val).format(\"YYYY-MM-DD\");\n};\n\nexport const calanderDateFormater = (val) => {\n return moment(val).format(\"DD MMM 'YY\");\n};\n\nexport const numDifferentiation = (value) => {\n var val = Math.abs(value);\n if (val >= 10000000) {\n val = (val / 10000000).toFixed(2) + \" Cr\";\n } else if (val >= 100000) {\n val = (val / 100000).toFixed(2) + \" L\";\n } else if (val >= 1000) {\n val = (val / 1000).toFixed(2) + \" K\";\n }\n return val;\n};\n\nexport const addDays = (startDate, day) => {\n let addDays = moment(startDate, \"YYYY-MM-DD\").add(day, \"days\").toDate();\n // let formated = moment(addDays).format(\"DD-MM-YYYY\");\n return addDays;\n};\n\nexport const getDiffBtnDates = (start, end) => {\n var startDate = moment(start, \"YYYY-MM-DD\");\n var EndDate = moment(end, \"YYYY-MM-DD\");\n let dateDiff = moment.duration(EndDate.diff(startDate)).asWeeks();\n return dateDiff;\n};\n\nexport const CompareDate = (orderDate, tradeDate, according) => {\n //Note: 00 is month i.e. January\n var dateOne = new Date(orderDate); //Year, Month, Date\n var dateTwo = new Date(tradeDate); //Year, Month, Date\n if (according === \"smallerDate\") {\n if (dateOne > dateTwo) {\n // alert(dateTwo);\n return dateTwo;\n } else {\n // alert(dateOne);\n return dateOne;\n }\n } else {\n if (dateTwo > dateOne) {\n return dateTwo;\n } else {\n return dateOne;\n }\n }\n};\n\nexport const formatWeekDay = (day) => {\n console.log(day);\n};\n","export default __webpack_public_path__ + \"static/media/win_one.f6700ba1.svg\";","export default __webpack_public_path__ + \"static/media/win_two.9c70bbce.svg\";","export default __webpack_public_path__ + \"static/media/win_three.02820b30.svg\";","export default __webpack_public_path__ + \"static/media/win_four.70803e21.svg\";","export default __webpack_public_path__ + \"static/media/win_five.6ddaf6c4.svg\";","export default __webpack_public_path__ + \"static/media/rupee_currency.e41eea83.svg\";","import win_one from \"../../../assets/images/win_one.svg\";\nimport win_two from \"../../../assets/images/win_two.svg\";\nimport win_three from \"../../../assets/images/win_three.svg\";\nimport win_four from \"../../../assets/images/win_four.svg\";\nimport win_five from \"../../../assets/images/win_five.svg\";\nimport rupee_currency from \"../../../assets/images/rupee_currency.svg\";\nimport { IListObj } from \"../../types/genericTypes\";\nimport moment from \"moment\";\n\nexport const DropdownOptions: Array = [\n { display: \"NSE\", value: \"NSE\" },\n { display: \"CDS\", value: \"CDS\" },\n { display: \"BSE\", value: \"BSE\" },\n { display: \"NFO\", value: \"NFO\" },\n];\n\nexport const OrderTradeStates = {\n ORDER: \"Order\",\n TRADE: \"Trade\",\n};\n\nexport const Segments = {\n Total: \"Total\",\n Currency: \"Currency\",\n Derivatives: \"Derivatives\",\n Cash: \"Cash\",\n};\n\nexport const weeklyDataValue = 14;\n\nexport const ranges = {\n Today: [moment().toLocaleString(), moment().toLocaleString()],\n last_7_days: [\n moment().subtract(6, \"days\").toLocaleString(),\n moment().toLocaleString(),\n ],\n last_30_days: [\n moment().subtract(29, \"days\").toLocaleString(),\n moment().toLocaleString(),\n ],\n this_month: [\n moment().startOf(\"month\").toLocaleString(),\n moment().toLocaleString(),\n ],\n last_month: [\n moment().subtract(1, \"month\").startOf(\"month\").toLocaleString(),\n moment().subtract(1, \"month\").endOf(\"month\").toLocaleString(),\n ],\n};\n\nexport const handleTickInterval = (dataLength: number) => {\n if (dataLength <= 4) {\n return 0;\n } else if (dataLength <= 8) {\n return 2;\n } else if (dataLength <= 12) {\n return 3;\n } else if (dataLength <= 16) {\n return 4;\n }\n};\n\nexport const VolumeStateOptions: Array = [\n { display: OrderTradeStates.ORDER, value: OrderTradeStates.ORDER },\n { display: OrderTradeStates.TRADE, value: OrderTradeStates.TRADE },\n];\n\nexport const VolumeSegmentsOptions: Array = [\n { display: Segments.Currency, value: Segments.Currency },\n { display: Segments.Derivatives, value: Segments.Derivatives },\n { display: Segments.Cash, value: Segments.Cash },\n];\n\nexport const convertRS = (val: number, fix: number) => {\n let result: string | number = val;\n if (val >= 10000000) {\n result = (val / 10000000).toFixed(fix) + \"Cr\";\n } else if (val >= 100000) {\n result = (val / 100000).toFixed(fix) + \"L\";\n console.log(result);\n } else if (val >= 1000) {\n result = (val / 1000).toFixed(fix) + \"K\";\n }\n return result;\n};\n\nexport interface DateType {\n frmDt: Date;\n toDt: Date;\n}\n\nexport const TopLeadersImg = [win_one, win_two, win_three, win_four, win_five];\n\nexport const TopSales = [\n {\n img: rupee_currency,\n total: \"10000\",\n date: \"26 Oct 2021\",\n },\n {\n img: rupee_currency,\n total: \"8000\",\n date: \"26 Oct 2021\",\n },\n {\n img: rupee_currency,\n total: \"7400\",\n date: \"18 Oct 2021\",\n },\n {\n img: rupee_currency,\n total: \"5000\",\n date: \" 17 Oct 2021\",\n },\n {\n img: win_one,\n total: \"1000\",\n date: \"15 Oct 2021\",\n },\n];\n","import React from \"react\";\n\nconst NoDataFound: React.FC = () => {\n return (\n
\n

No Data Found

\n
\n );\n};\n\nexport default NoDataFound;\n","import React, { useState, useEffect } from \"react\";\nimport * as Highcharts from \"highcharts/highstock\";\nimport HighchartsReact from \"highcharts-react-official\";\nimport moment from \"moment\";\nimport ColoumnsHeader from \"../../generic/ColoumnsHeader\";\nimport { DBStatistics } from \"../../../../../Containers/vendor/DashBoard/DBCosntants\";\nimport { addDays, getDiffBtnDates } from \"../../../../utils/dateCalculater\";\nimport { convertRS, handleTickInterval, weeklyDataValue } from \"../../utlits\";\nimport NoDataFound from \"../../generic/NoDataFound\";\n\nexport interface ILSAreaGraphProps {\n loginData: Array;\n handleDownloadBtn: () => void;\n}\n\nconst LSAreaGraph: React.FC = (props) => {\n const defaultOptionsColor = Highcharts.getOptions().colors;\n const defaultColor = Highcharts.Color;\n const [disableMenu, setDisableMenu] = useState(false);\n const [loginHit, setLoginHit] = useState({\n category: [],\n data: [],\n tickInterval: 0,\n });\n\n const setUpChart = async (loginData: any) => {\n if (loginData.length > weeklyDataValue) {\n let firstDate = loginData ? loginData[0].key : \"\";\n let lastDate = loginData ? loginData[loginData.length - 1].key : \"\";\n let totalWeeks = await getDiffBtnDates(firstDate, lastDate);\n if (totalWeeks % 1 !== 0) {\n totalWeeks = Math.floor(totalWeeks) + 1;\n }\n // Set TickInterval function ;\n\n let key: Array = [];\n let value: any = [];\n let getNtHitsPrDay = [...loginData];\n\n let dateOne = firstDate;\n for (let i = 0; i <= totalWeeks; i++) {\n // Get first Date and adding seven days of getNtHitsPrDay array\n let seventhDay = await addDays(dateOne, 6);\n\n // eslint-disable-next-line no-loop-func\n let customData = getNtHitsPrDay.filter((date: any) => {\n return (\n date.key >= moment(dateOne).format(\"YYYY-MM-DD\") &&\n date.key <= moment(seventhDay).format(\"YYYY-MM-DD\")\n );\n });\n\n if (customData.length > 0) {\n let totalVal: any = 0;\n for (let j = 0; j < customData.length; j++) {\n totalVal += parseInt(customData[j].val);\n }\n value.push([\n `${moment(dateOne).format(\"YYYY-MM-DD\")} to ${moment(\n seventhDay\n ).format(\"YYYY-MM-DD\")}`,\n parseInt(totalVal),\n ]);\n } else {\n if (moment(dateOne).format(\"YYYY-MM-DD\") <= lastDate) {\n value.push(0);\n }\n }\n if (moment(dateOne).format(\"YYYY-MM-DD\") <= lastDate) {\n if (lastDate < moment(seventhDay).format(\"YYYY-MM-DD\")) {\n key.push(`${moment(dateOne).format(\"YYYY-MM-DD\")} to ${lastDate}`);\n } else {\n key.push(\n `${moment(dateOne).format(\"YYYY-MM-DD\")} to ${moment(\n seventhDay\n ).format(\"YYYY-MM-DD\")}`\n );\n }\n }\n dateOne = await addDays(seventhDay, 1);\n }\n\n let getTickInterval = await handleTickInterval(key.length);\n\n if (key.length > 0 || value.length > 0) {\n setLoginHit({\n category: key,\n data: value,\n tickInterval: getTickInterval,\n });\n }\n } else {\n let key: any = [];\n let value: any = [];\n loginData.forEach((api: any) => {\n key.push(api.key);\n value.push(parseInt(api.val));\n });\n let getTickInterval = await handleTickInterval(key.length);\n\n if (key.length > 0 || value.length > 0) {\n setLoginHit({\n tickInterval: getTickInterval,\n category: key,\n data: value,\n });\n }\n }\n };\n\n useEffect(() => {\n if (props.loginData.length > 0) {\n setDisableMenu(false);\n setUpChart(props.loginData);\n } else {\n setDisableMenu(true);\n setLoginHit({\n category: [],\n data: [],\n });\n }\n }, [props.loginData]);\n\n const options = {\n chart: {\n type: \"area\",\n height: \"300px\",\n marginBottom: 55,\n },\n\n title: \"\",\n credits: {\n enabled: false,\n },\n legend: false,\n\n xAxis: {\n allowDecimals: false,\n margin: \"0\",\n crosshair: true,\n categories: loginHit.category,\n tickInterval: loginHit.tickInterval,\n tickPixelInterval: 300,\n labels: {\n formatter: function (this: any): any {\n if (this.value.includes(\"to\")) {\n let splitVal = this.value.split(\"to\");\n return `${moment(splitVal[0]).format(\"DD MMM 'YY\")} - ${moment(\n splitVal[1]\n ).format(\"DD MMM 'YY\")}`;\n } else {\n return moment(this.value).format(\"DD MMM 'YY\"); // clean, unformatted number for year\n } // clean, unformatted number for year\n },\n },\n },\n yAxis: {\n title: \"\",\n margin: \"0\",\n\n padding: \"0\",\n labels: {\n formatter: function (this: any): any {\n let val = convertRS(this.value, 0);\n return val;\n },\n },\n },\n tooltip: {\n formatter: function (this: any): string {\n let tooltipVal = \"\";\n if (this.x.includes(\"to\")) {\n let splitVal = this.x.split(\"to\");\n tooltipVal = `${moment(splitVal[0]).format(\"DD MMM 'YY\")} - ${moment(\n splitVal[1]\n ).format(\"DD MMM 'YY\")}`;\n } else {\n tooltipVal = moment(this.x).format(\"DD MMM 'YY\");\n }\n return `

${tooltipVal}


${this.series.name} : ${this.y}`;\n },\n borderWidth: 0,\n backgroundColor: \"#fff\",\n borderRadius: 4,\n },\n plotOptions: {\n series: {\n color: \"#1c9ad6\",\n fillColor: {\n linearGradient: [1, 2, 2, 210],\n stops: [\n [0, defaultOptionsColor ? defaultOptionsColor[0] : \"\"],\n [\n 1,\n new defaultColor(\n defaultOptionsColor ? defaultOptionsColor[0] : \"\"\n )\n .setOpacity(0)\n .get(\"rgba\"),\n ],\n ],\n },\n },\n\n area: {\n marker: {\n enabled: true,\n symbol: \"circle\",\n radius: 2,\n states: {\n hover: {\n enabled: true,\n },\n },\n },\n },\n },\n series: [\n {\n showInLegend: false,\n name: \"Login Statistics\",\n\n data: loginHit.data ? loginHit.data : [],\n },\n ],\n };\n\n return (\n <>\n \n {/*
*/}\n {props.loginData && props.loginData.length > 0 ? (\n \n ) : (\n \n )}\n {/*
*/}\n \n );\n};\n\nexport default LSAreaGraph;\n","import React, { useEffect, useState } from \"react\";\nimport * as Highcharts from \"highcharts/highstock\";\nimport HighchartsReact from \"highcharts-react-official\";\nimport moment from \"moment\";\n// import graphQuery from \"../../../../../assets/images/graphQuery.svg\";\nimport ColoumnsHeader from \"../../generic/ColoumnsHeader\";\nimport { DBStatistics } from \"../../../../../Containers/vendor/DashBoard/DBCosntants\";\nimport { convertRS, handleTickInterval, weeklyDataValue } from \"../../utlits\";\nimport {\n addDays,\n CompareDate,\n getDiffBtnDates,\n} from \"../../../../utils/dateCalculater\";\nimport NoDataFound from \"../../generic/NoDataFound\";\n\nexport interface ILSStackColProps {\n uniqueOrdData: Array;\n uniqueTradeData: any;\n handleDownloadBtn: () => void;\n}\n\nconst LSStackCol: React.FC = (props) => {\n const [disableMenu, setDisableMenu] = useState(false);\n\n const [orderTradeData, setOrderTradeData] = useState({\n category: [],\n orders: [],\n trades: [],\n tickInterval: 0,\n });\n\n const [sortedOrdsPrDay, setSortedOrdsPrDay] = useState>(\n []\n );\n const [sortedTrdsPrDay, setSortedTrdsPrDay] = useState>(\n []\n );\n\n const setUpChart = async () => {\n if (\n sortedTrdsPrDay.length > weeklyDataValue ||\n sortedOrdsPrDay.length > weeklyDataValue\n ) {\n let firstDate =\n sortedOrdsPrDay && sortedTrdsPrDay\n ? CompareDate(\n sortedOrdsPrDay[0].key,\n sortedTrdsPrDay[0].key,\n \"smallerDate\"\n )\n : \"\";\n\n let lastDate =\n sortedOrdsPrDay && sortedTrdsPrDay\n ? CompareDate(\n sortedOrdsPrDay[sortedOrdsPrDay.length - 1].key,\n sortedTrdsPrDay[sortedTrdsPrDay.length - 1].key,\n \"biggerDate\"\n )\n : \"\";\n\n let totalWeeks = await getDiffBtnDates(firstDate, lastDate);\n if (totalWeeks % 1 !== 0) {\n totalWeeks = Math.floor(totalWeeks) + 1;\n }\n // let getTickInterval = await handleTickInterval(totalWeeks);\n let getOrderData = [...sortedOrdsPrDay];\n let getTradeData = [...sortedTrdsPrDay];\n\n let category = [];\n let orderData = [];\n let tradeData = [];\n\n let dateOne = firstDate;\n for (let i = 0; i <= totalWeeks; i++) {\n let seventhDay = await addDays(dateOne, 6);\n\n // eslint-disable-next-line no-loop-func\n let customOrderData = getOrderData.filter((date: any) => {\n return (\n date.key >= moment(dateOne).format(\"YYYY-MM-DD\") &&\n date.key <= moment(seventhDay).format(\"YYYY-MM-DD\")\n );\n });\n\n // eslint-disable-next-line no-loop-func\n let customTradeData = getTradeData.filter((date: any) => {\n return (\n date.key >= moment(dateOne).format(\"YYYY-MM-DD\") &&\n date.key <= moment(seventhDay).format(\"YYYY-MM-DD\")\n );\n });\n\n if (customOrderData.length > 0) {\n let sumOfOrder = 0;\n for (let i = 0; i < customOrderData.length; i++) {\n sumOfOrder += parseInt(customOrderData[i].val);\n }\n\n orderData.push(sumOfOrder);\n } else {\n if (dateOne <= lastDate) {\n orderData.push(0);\n }\n }\n\n if (customTradeData.length > 0) {\n let sumOfTrade = 0;\n for (let i = 0; i < customTradeData.length; i++) {\n sumOfTrade += parseInt(customTradeData[i].val);\n }\n tradeData.push(sumOfTrade);\n } else {\n if (dateOne <= lastDate) {\n tradeData.push(0);\n }\n }\n\n if (dateOne <= lastDate) {\n if (lastDate < seventhDay) {\n category.push(\n `${moment(dateOne).format(\"YYYY-MM-DD\")} to ${moment(\n lastDate\n ).format(\"YYYY-MM-DD\")}`\n );\n } else {\n category.push(\n `${moment(dateOne).format(\"YYYY-MM-DD\")} to ${moment(\n seventhDay\n ).format(\"YYYY-MM-DD\")}`\n );\n }\n }\n\n dateOne = await addDays(seventhDay, 1);\n }\n let getTickInterval = await handleTickInterval(category.length);\n\n if (category.length > 0 || orderData.length > 0 || tradeData.length > 0) {\n setOrderTradeData({\n category: [...category],\n orders: [...orderData],\n trades: [...tradeData],\n tickInterval: getTickInterval,\n });\n }\n } else {\n let category: any = [];\n let orderData: any = [];\n let tradeData: any = [];\n\n // adding date in catagry of both sortedOrdsPrDay and sortedTrdsPrDay\n sortedOrdsPrDay.forEach((ord: any) => {\n category.push(ord.key);\n });\n sortedTrdsPrDay.forEach((trd: any) => {\n if (!category.includes(trd.key)) {\n category.push(trd.key);\n }\n });\n\n category.sort();\n\n // checking if data available for catagry's date then add data otherwise add 0\n if (category.length > 0) {\n category.forEach((cat: any) => {\n if (sortedTrdsPrDay.some((trd: any) => trd.key === cat)) {\n let getTrade = sortedTrdsPrDay.filter((sortTrd: any) => {\n return sortTrd.key === cat;\n });\n tradeData.push(parseInt(getTrade[0].val));\n } else {\n tradeData.push(0);\n }\n\n if (sortedOrdsPrDay.some((ord: any) => ord.key === cat)) {\n let getOrder = sortedOrdsPrDay.filter((sortOrd: any) => {\n return sortOrd.key === cat;\n });\n orderData.push(parseInt(getOrder[0].val));\n } else {\n orderData.push(0);\n }\n });\n }\n let getTickInterval = await handleTickInterval(category.length);\n\n if (category.length > 0 || orderData.length > 0 || tradeData.length > 0) {\n setOrderTradeData({\n category: [...category],\n orders: [...orderData],\n trades: [...tradeData],\n tickInterval: getTickInterval,\n });\n }\n }\n };\n\n useEffect(() => {\n if (props.uniqueOrdData.length > 0 || props.uniqueTradeData.length > 0) {\n setDisableMenu(false);\n setSortedOrdsPrDay(props.uniqueOrdData);\n setSortedTrdsPrDay(props.uniqueTradeData);\n } else {\n setDisableMenu(true);\n setSortedOrdsPrDay([]);\n setSortedTrdsPrDay([]);\n setOrderTradeData({\n category: [],\n orders: [],\n trades: [],\n });\n }\n }, [props.uniqueOrdData, props.uniqueTradeData]);\n\n useEffect(() => {\n if (\n (sortedOrdsPrDay && sortedOrdsPrDay.length > 0) ||\n (sortedTrdsPrDay && sortedTrdsPrDay.length > 0)\n ) {\n setUpChart();\n }\n }, [sortedOrdsPrDay, sortedTrdsPrDay]);\n\n const options = {\n chart: {\n type: \"column\",\n height: \"300px\",\n },\n title: \"\",\n credits: {\n enabled: false,\n },\n xAxis: {\n categories: orderTradeData.category,\n crosshair: true,\n tickInterval: orderTradeData.tickInterval,\n tickPixelInterval: 100,\n labels: {\n formatter: function (this: any): any {\n if (this.value.includes(\"to\")) {\n let splitVal = this.value.split(\"to\");\n return `${moment(splitVal[0]).format(\"DD MMM 'YY\")} - ${moment(\n splitVal[1]\n ).format(\"DD MMM 'YY\")}`;\n } else {\n return moment(this.value).format(\"DD MMM 'YY\"); // clean, unformatted number for year\n } // clean, unformatted number for year\n },\n },\n },\n legend: {\n symbolRadius: 2,\n itemMarginTop: 0,\n itemMarginBottom: -20,\n },\n colors: [\"#1c9ad6\", \"#f7943e\"],\n yAxis: {\n title: \"\",\n margin: \"0\",\n padding: \"0\",\n labels: {\n formatter: function (this: any): any {\n let val = convertRS(this.value, 0);\n return val;\n },\n },\n reversedStacks: false,\n },\n\n tooltip: {\n formatter: function (this: any): any {\n let tooltipVal = \"\";\n if (this.points[0]?.x.includes(\"to\")) {\n let splitVal = this.points[0].x.split(\"to\");\n tooltipVal = `${moment(splitVal[0]).format(\"DD MMM 'YY\")} - ${moment(\n splitVal[1]\n ).format(\"DD MMM 'YY\")}`;\n } else {\n tooltipVal = moment(this.points[0].x).format(\"DD MMM 'YY\");\n }\n return `

${tooltipVal}

\n
Client Orders : ${\n this.points[0].y\n }
Client Trades : ${this.points[1] ? this.points[1].y : 0}`;\n },\n shared: true,\n backgroundColor: \"white\",\n borderColor: \"white\",\n borderRadius: 10,\n borderWidth: 0,\n padding: 10,\n },\n plotOptions: {\n column: {\n stacking: \"normal\",\n dataLabels: {\n enabled: false,\n },\n },\n },\n series: [\n {\n name: \"Client Orders\",\n data: orderTradeData.orders,\n },\n {\n name: \"Client Trades\",\n data: orderTradeData.trades,\n },\n ],\n };\n\n return (\n <>\n \n {disableMenu ? (\n \n ) : (\n \n )}\n \n );\n};\n\nexport default LSStackCol;\n","import React, { useState, useEffect } from \"react\";\nimport * as Highcharts from \"highcharts/highstock\";\nimport HighchartsReact from \"highcharts-react-official\";\nimport moment from \"moment\";\nimport ColoumnsHeader from \"../../generic/ColoumnsHeader\";\nimport { DBStatistics } from \"../../../../../Containers/vendor/DashBoard/DBCosntants\";\nimport {\n addDays,\n CompareDate,\n getDiffBtnDates,\n} from \"../../../../utils/dateCalculater\";\nimport { convertRS, handleTickInterval, weeklyDataValue } from \"../../utlits\";\nimport NoDataFound from \"../../generic/NoDataFound\";\n\nexport interface ILSColLineChartProps {\n uniqueOrdData: Array;\n uniqueTradeData: Array;\n uniqueOrdTrdData: Array;\n}\n\nconst LSColLineChart: React.FC = (props) => {\n const [orderTradeData, setOrderTradeData] = useState({\n category: [],\n orders: [],\n trades: [],\n OTR: [],\n tickInterval: 0,\n });\n\n const [sortedOrdsPrDay, setSortedOrdsPrDay] = useState>([]);\n const [sortedTrdsPrDay, setSortedTrdsPrDay] = useState>([]);\n const [sortedOrdTrdRatio, setSortedOrdTrdRatio] = useState>([]);\n\n const [disableMenu, setDisableMenu] = useState(false);\n\n const setUpChart = async () => {\n if (\n sortedTrdsPrDay.length > weeklyDataValue ||\n sortedOrdsPrDay.length > weeklyDataValue ||\n sortedOrdTrdRatio.length > weeklyDataValue\n ) {\n let firstDate =\n sortedOrdsPrDay && sortedTrdsPrDay\n ? CompareDate(\n sortedOrdsPrDay[0].key,\n sortedTrdsPrDay[0].key,\n \"smallerDate\"\n )\n : \"\";\n\n let lastDate =\n sortedOrdsPrDay && sortedTrdsPrDay\n ? CompareDate(\n sortedOrdsPrDay[sortedOrdsPrDay.length - 1].key,\n sortedTrdsPrDay[sortedTrdsPrDay.length - 1].key,\n \"biggerDate\"\n )\n : \"\";\n\n let totalWeeks = await getDiffBtnDates(firstDate, lastDate);\n if (totalWeeks % 1 !== 0) {\n totalWeeks = Math.floor(totalWeeks) + 1;\n }\n let getOrderData = [...sortedOrdsPrDay];\n let getTradeData = [...sortedTrdsPrDay];\n let getOrdTrdRatio = [...sortedOrdTrdRatio];\n\n let category = [];\n let orderData = [];\n let tradeData = [];\n let ordTrdRatioData = [];\n\n let dateOne = firstDate;\n for (let i = 0; i <= totalWeeks; i++) {\n let seventhDay = await addDays(dateOne, 6);\n\n // eslint-disable-next-line no-loop-func\n let customOrderData = getOrderData.filter((date: any) => {\n return (\n date.key >= moment(dateOne).format(\"YYYY-MM-DD\") &&\n date.key <= moment(seventhDay).format(\"YYYY-MM-DD\")\n );\n });\n\n // eslint-disable-next-line no-loop-func\n let customTradeData = getTradeData.filter((date: any) => {\n return (\n date.key >= moment(dateOne).format(\"YYYY-MM-DD\") &&\n date.key <= moment(seventhDay).format(\"YYYY-MM-DD\")\n );\n });\n // eslint-disable-next-line no-loop-func\n let customOrdTrdRatio = getOrdTrdRatio.filter((date: any) => {\n return (\n date.key >= moment(dateOne).format(\"YYYY-MM-DD\") &&\n date.key <= moment(seventhDay).format(\"YYYY-MM-DD\")\n );\n });\n if (customOrderData.length > 0) {\n let sumOfOrder = 0;\n for (let i = 0; i < customOrderData.length; i++) {\n sumOfOrder += parseInt(customOrderData[i].val);\n }\n\n orderData.push(sumOfOrder);\n } else {\n if (dateOne <= lastDate) {\n orderData.push(0);\n }\n }\n\n if (customTradeData.length > 0) {\n let sumOfTrade = 0;\n for (let i = 0; i < customTradeData.length; i++) {\n sumOfTrade += parseInt(customTradeData[i].val);\n }\n tradeData.push(sumOfTrade);\n } else {\n if (dateOne <= lastDate) {\n tradeData.push(0);\n }\n }\n if (customOrdTrdRatio.length > 0) {\n let sumOfRatio = 0;\n for (let i = 0; i < customOrdTrdRatio.length; i++) {\n sumOfRatio += parseFloat(customOrdTrdRatio[i].val.split(\".\")[1]);\n // parseFloat(getOTR[0].val.split(\".\")[1]\n }\n ordTrdRatioData.push(sumOfRatio);\n } else {\n if (dateOne <= lastDate) {\n ordTrdRatioData.push(0);\n }\n }\n if (dateOne <= lastDate) {\n if (lastDate < seventhDay) {\n category.push(\n `${moment(dateOne).format(\"YYYY-MM-DD\")} to ${moment(\n lastDate\n ).format(\"YYYY-MM-DD\")}`\n );\n } else {\n category.push(\n `${moment(dateOne).format(\"YYYY-MM-DD\")} to ${moment(\n seventhDay\n ).format(\"YYYY-MM-DD\")}`\n );\n }\n }\n\n dateOne = await addDays(seventhDay, 1);\n }\n let getTickInterval = await handleTickInterval(category.length);\n\n if (\n category.length > 0 ||\n orderData.length > 0 ||\n tradeData.length > 0 ||\n ordTrdRatioData.length > 0\n ) {\n setOrderTradeData({\n category: [...category],\n orders: [...orderData],\n trades: [...tradeData],\n OTR: [...ordTrdRatioData],\n tickInterval: getTickInterval,\n });\n }\n } else {\n let category: any = [];\n let orderData: any = [];\n let tradeData: any = [];\n let OTRData: any = [];\n\n // adding date in catagry of both sortedOrdsPrDay and sortedTrdsPrDay\n sortedOrdsPrDay.forEach((ord: any) => {\n category.push(ord.key);\n });\n\n sortedTrdsPrDay.forEach((trd: any) => {\n if (!category.includes(trd.key)) {\n category.push(trd.key);\n }\n });\n\n sortedOrdTrdRatio.forEach((trd: any) => {\n if (!category.includes(trd.key)) {\n category.push(trd.key);\n }\n });\n\n category.sort();\n\n // checking if data available for catagry's date then add data otherwise add 0\n if (category.length > 0) {\n category.forEach((cat: any) => {\n if (sortedTrdsPrDay.some((trd: any) => trd.key === cat)) {\n let getTrade = sortedTrdsPrDay.filter((sortTrd: any) => {\n return sortTrd.key === cat;\n });\n tradeData.push(parseInt(getTrade[0].val));\n } else {\n tradeData.push(0);\n }\n\n if (sortedOrdsPrDay.some((ord: any) => ord.key === cat)) {\n let getOrder = sortedOrdsPrDay.filter((sortOrd: any) => {\n return sortOrd.key === cat;\n });\n orderData.push(parseInt(getOrder[0].val));\n } else {\n orderData.push(0);\n }\n\n if (sortedOrdTrdRatio.some((otr: any) => otr.key === cat)) {\n let getOTR = sortedOrdTrdRatio.filter((sortOtr: any) => {\n return sortOtr.key === cat;\n });\n OTRData.push(parseFloat(getOTR[0].val.split(\".\")[1]));\n } else {\n OTRData.push(0);\n }\n });\n }\n let getTickInterval = await handleTickInterval(category.length);\n\n if (\n category.length > 0 ||\n orderData.length > 0 ||\n tradeData.length > 0 ||\n OTRData.length > 0\n ) {\n setOrderTradeData({\n category: [...category],\n orders: [...orderData],\n trades: [...tradeData],\n OTR: [...OTRData],\n tickInterval: getTickInterval,\n });\n }\n }\n };\n\n useEffect(() => {\n if (\n props.uniqueOrdData.length > 0 ||\n props.uniqueTradeData.length > 0 ||\n props.uniqueOrdTrdData.length > 0\n ) {\n setDisableMenu(false);\n setSortedOrdsPrDay(props.uniqueOrdData);\n setSortedTrdsPrDay(props.uniqueTradeData);\n setSortedOrdTrdRatio(props.uniqueOrdTrdData);\n } else {\n setDisableMenu(true);\n setSortedOrdsPrDay([]);\n setSortedTrdsPrDay([]);\n setSortedOrdTrdRatio([]);\n setOrderTradeData({\n category: [],\n orders: [],\n trades: [],\n OTR: [],\n });\n }\n }, [props.uniqueOrdData, props.uniqueTradeData, props.uniqueOrdTrdData]);\n\n useEffect(() => {\n if (\n (sortedOrdsPrDay && sortedOrdsPrDay.length > 0) ||\n (sortedTrdsPrDay && sortedTrdsPrDay.length > 0) ||\n (sortedOrdTrdRatio && sortedOrdTrdRatio.length > 0)\n ) {\n setUpChart();\n }\n }, [sortedOrdsPrDay, sortedTrdsPrDay, sortedOrdTrdRatio]);\n\n console.log(\"orderTradeData.category\", orderTradeData.category);\n\n const options = {\n chart: {\n zoomType: \"xy\",\n height: \"300px\",\n },\n title: \"\",\n credits: {\n enabled: false,\n },\n colors: [\"#1c9ad6\", \"#f7943e\", \"#8ebeff\"],\n xAxis: [\n {\n categories: orderTradeData.category,\n crosshair: true,\n tickInterval: orderTradeData.tickInterval,\n labels: {\n formatter: function (this: any): any {\n if (this.value.includes(\"to\")) {\n let splitVal = this.value.split(\"to\");\n return `${moment(splitVal[0]).format(\"DD MMM 'YY\")} - ${moment(\n splitVal[1]\n ).format(\"DD MMM 'YY\")}`;\n } else {\n return moment(this.value).format(\"DD MMM 'YY\"); // clean, unformatted number for year\n } // clean, unformatted number for year\n },\n },\n },\n ],\n yAxis: [\n {\n // Primary yAxis\n title: null,\n margin: \"0\",\n padding: \"0\",\n labels: {\n formatter: function (this: any): any {\n let val = convertRS(this.value, 0);\n return val;\n },\n },\n },\n {\n // Secondary yAxis\n title: null,\n labels: {\n format: \"{value}\",\n },\n opposite: true,\n },\n ],\n tooltip: {\n shared: true,\n formatter: function (this: any): any {\n let tooltipVal = \"\";\n if (this.points[0].x.includes(\"to\")) {\n let splitVal = this.points[0].x.split(\"to\");\n tooltipVal = `${moment(splitVal[0]).format(\"DD MMM 'YY\")} - ${moment(\n splitVal[1]\n ).format(\"DD MMM 'YY\")}`;\n } else {\n tooltipVal = moment(this.points[0].x).format(\"DD MMM 'YY\");\n }\n return `

${tooltipVal}

\n
Client Orders : ${\n this.points[0].y\n }
Client Trades : ${\n this.points[1] ? this.points[1].y : 0\n }
OTR : ${this.points[2] ? this.points[2].y : 0} %`;\n },\n backgroundColor: \"white\",\n borderColor: \"white\",\n borderRadius: 10,\n borderWidth: 0,\n padding: 10,\n },\n legend: {\n symbolRadius: 2,\n itemMarginTop: 0,\n itemMarginBottom: -20,\n },\n series: [\n {\n name: \"Orders\",\n type: \"column\",\n data: orderTradeData.orders ? orderTradeData.orders : [],\n },\n {\n name: \"Trades\",\n type: \"column\",\n // yAxis: 1,\n data: orderTradeData.trades ? orderTradeData.trades : [],\n },\n {\n name: \"OTR\",\n type: \"spline\",\n yAxis: 1,\n data: orderTradeData.OTR ? orderTradeData.OTR : [],\n tooltip: {\n valueSuffix: \" %\",\n },\n },\n ],\n };\n return (\n <>\n \n {disableMenu ? (\n \n ) : (\n \n )}\n \n );\n};\n\nexport default LSColLineChart;\n","import React, { useEffect, useState } from \"react\";\nimport * as Highcharts from \"highcharts/highstock\";\nimport HighchartsReact from \"highcharts-react-official\";\nimport ColoumnsHeader from \"../../generic/ColoumnsHeader\";\nimport { convertRS, DropdownOptions } from \"../../utlits\";\nimport NoDataFound from \"../../generic/NoDataFound\";\n\nexport interface ILSPaiChartProps {\n orderTradeRatioData: any;\n}\n\nconst LSPaiChart: React.FC = (props) => {\n const [dropdownValue, setDropdownValue] = useState(\"NSE\");\n const [ordTrdRatio, setOrdTrdRatio] = useState({\n order: \"\",\n trade: \"\",\n ratio: \"\",\n });\n\n const [disableMenu, setDisableMenu] = useState(false);\n\n useEffect(() => {\n if (\n props.orderTradeRatioData &&\n (props.orderTradeRatioData.ordsExcWise ||\n props.orderTradeRatioData.trdsExcWise ||\n props.orderTradeRatioData.ntOrdTrdRtoExchWiseCht)\n ) {\n setDisableMenu(false);\n let orderExchWise = props.orderTradeRatioData.ordsExcWise.filter(\n (order: any) => {\n return order.key === dropdownValue;\n }\n );\n let tradeExchWise = props.orderTradeRatioData.trdsExcWise.filter(\n (tarde: any) => {\n return tarde.key === dropdownValue;\n }\n );\n let ratioExchWise =\n props.orderTradeRatioData.ntOrdTrdRtoExchWiseCht.filter(\n (ordtrdRatio: any) => {\n return ordtrdRatio.key === dropdownValue;\n }\n );\n\n setOrdTrdRatio({\n order: parseInt(orderExchWise[0]?.val),\n trade: parseInt(tradeExchWise[0]?.val),\n ratio: parseInt(ratioExchWise[0]?.val),\n });\n } else {\n setDisableMenu(true);\n\n setOrdTrdRatio({\n order: 0,\n trade: 0,\n ratio: 0,\n });\n }\n }, [props.orderTradeRatioData, dropdownValue]);\n\n const options = {\n chart: {\n plotBackgroundColor: null,\n plotBorderWidth: null,\n plotShadow: false,\n type: \"pie\",\n height: \"300px\",\n reversedStacks: false,\n },\n credits: {\n enabled: false,\n },\n title: {\n verticalAlign: \"middle\",\n horizontalAlign: \"middle\",\n floating: false,\n text: `${ordTrdRatio.ratio ? ordTrdRatio.ratio : 0}
Ratio`,\n y: 0,\n style: {\n color: \"#707070\",\n font: 'bold 20px \"RobotoRegular\", Verdana, sans-serif',\n },\n },\n legend: {\n symbolRadius: 2,\n itemMarginTop: 0,\n itemMarginBottom: -20,\n },\n colors: [\"#1c9ad6\", \"#f7943e\"],\n yAxis: {\n min: 0,\n title: \"\",\n },\n tooltip: {\n formatter: function (this: any): any {\n return `

${this.point.title}


${this.point.name} : ${convertRS(this.y, 2)}
`;\n },\n backgroundColor: \"white\",\n borderColor: \"white\",\n borderRadius: 10,\n borderWidth: 0,\n padding: 10,\n },\n accessibility: {\n point: {\n valueSuffix: \"%\",\n },\n },\n plotOptions: {\n pie: {\n allowPointSelect: false,\n cursor: \"pointer\",\n dataLabels: {\n enabled: false,\n format: \"{point.name}: {point.percentage:.1f} %\",\n },\n showInLegend: true,\n },\n },\n series: [\n {\n innerSize: \"90%\",\n data: [\n {\n title: dropdownValue,\n name: \"Orders\",\n y: ordTrdRatio.order ? ordTrdRatio.order : 0,\n },\n {\n title: dropdownValue,\n name: \"Trades\",\n y: ordTrdRatio.trade ? ordTrdRatio.trade : 0,\n },\n ],\n },\n ],\n };\n return (\n <>\n \n {disableMenu ? (\n \n ) : (\n \n )}\n \n );\n};\n\nexport default LSPaiChart;\n","export const ActivityData = [{}];\n\nexport const sortingMethod = (val: any) => {\n let sortedVal = val.sort((a: any, b: any) => {\n return new Date(a.key).valueOf() - new Date(b.key).valueOf();\n });\n return sortedVal;\n};\n\nexport const DownloadReportsTypes = {\n Login: \"LOGIN\",\n Order: \"ORDER\",\n Trade: \"TRADE\",\n All: \"ALL\",\n};\n\nexport interface DBStatistics {\n key: string;\n val: string;\n}\nexport const DashboardViewOptios = {\n Weekly: \"weekly\",\n Daily: \"daily\",\n};\n\nexport const isDacimal = (value: string) => {\n if (value !== undefined && value !== null && value !== \"\") {\n let result = parseFloat(value);\n if (!Number.isInteger(result) && result > 0 && value !== undefined) {\n return result.toFixed(2);\n } else {\n return result;\n }\n } else {\n return 0;\n }\n};\n\n// Details :\n\n// @ApiModelProperty(\"Vendor name\")\n// private String vndNm;\n// @ApiModelProperty(\"Status\")\n// private String sts;\n// @ApiModelProperty(\"Reason of suspension\")\n// private String ros;\n// @ApiModelProperty(\"Total Client Login\")\n// private String ntClntLgn;\n// @ApiModelProperty(\"Unique client login\")\n// private String unqClntLgn;\n// @ApiModelProperty(\"Unique client login percent\")\n// private String unqClntLgnPr;\n// @ApiModelProperty(\"Clients Accepted Consent\")\n// private String clntAcptCnsnt;\n// @ApiModelProperty(\"Clients Declined Consent\")\n// private String clntDecCnsnt;\n// @ApiModelProperty(\"Unique client ordered\")\n// private String unqClntOrd;\n// @ApiModelProperty(\"Unique client traded\")\n// private String unqClntTrd;\n// @ApiModelProperty(\"Unique client Trade percent\")\n// private String unqClnTrdPr;\n// @ApiModelProperty(\"Total orders Placed\")\n// private String ntOrd;\n// @ApiModelProperty(\"Total executed orders\")\n// private String ntTrds;\n// @ApiModelProperty(\"Total number of trade packets (including partial trades)\")\n// private String ntFlTrds;\n// @ApiModelProperty(\"Login count vs date\")\n// private List lgnChrt;\n// @ApiModelProperty(\"Unique client Order vs date\")\n// private List unqClntOrdCht;\n// @ApiModelProperty(\"Unique client Trade vs date\")\n// private List unqClntTrdCht;\n// @ApiModelProperty(\"Order count exchange wise\")\n// private List ordsExcWise;\n// @ApiModelProperty(\"Trade count exchange wise\")\n// private List trdsExcWise;\n// @ApiModelProperty(\"Order to Trade Ratio vs date\")\n// private List ordTradeRtoCht;\n// @ApiModelProperty(\"Total Order to Trade Ratio vs Exchange\")\n// private List ntOrdTrdRtoExchWiseCht;\n// @ApiModelProperty(\"Top Sales Date vs Total for trade only Segment wise\")\n// private List topSls;\n// @ApiModelProperty(\"Order Volume Stats segment wise\")\n// private List ordVolStats;\n// @ApiModelProperty(\"Trade Volume Stats segment wise\")\n// private List trdVolStats;\n// @ApiModelProperty(\"Order Volume Heat map Segment wise \")\n// private List ordVolHtMap;\n// @ApiModelProperty(\"Trade Volume Heat map Segment wise\")\n// private List trdVolHtMap;\n// @ApiModelProperty(\"Top Order Volume Leaders\")\n// private List topOrdVolLdrsSegWise;\n// @ApiModelProperty(\"Top Trade Volume Leaders\")\n// private List topTrdVolLdrsSegWise;\n// @ApiModelProperty(\"Net APi Hit count \")\n// private List ntApiHitCountCht;\n// @ApiModelProperty(\"Earnings segment wise \")\n// private List erngsSegWise;\n// @ApiModelProperty(\"Earnings chart \")\n// private List erngsCht;\n// @ApiModelProperty(\"My Info\")\n// private VendorSubscriptionMyInfoObject myInfo;\n","import React, { useState, useEffect } from \"react\";\nimport LSAreaChart from \"../Graphs/LTStatisticsGraph/LSAreaChart\";\nimport LSStackColChart from \"../Graphs/LTStatisticsGraph/LSStackColChart\";\nimport LSColLineChart from \"../Graphs/LTStatisticsGraph/LSColLineChart\";\nimport LSPaiChart from \"../Graphs/LTStatisticsGraph/LSPaiChart\";\nimport {\n DBStatistics,\n DownloadReportsTypes,\n sortingMethod,\n} from \"../../../../Containers/vendor/DashBoard/DBCosntants\";\n\nexport interface ILTStatisticsProps {\n dbData: any;\n downloadDbReports: (rpTyp: string) => void;\n}\n\nconst LTStatistics: React.FC = (props) => {\n const [loginData, setLoginData] = useState>([]);\n const [uniqueOrdData, setUniqueOrdData] = useState>([]);\n const [uniqueTradeData, setUniqueTradeData] = useState>(\n []\n );\n const [uniqueOrdTrdData, setUniqueOrdTrdData] = useState>(\n []\n );\n\n const handleDownloadBtn = () => {\n let rpTyp = DownloadReportsTypes.Login;\n props.downloadDbReports(rpTyp);\n };\n\n useEffect(() => {\n if (props.dbData && props.dbData.lgnChrt) {\n setLoginData(sortingMethod(props.dbData.lgnChrt));\n } else {\n setLoginData([]);\n }\n if (\n props.dbData &&\n (props.dbData.unqClntOrdCht ||\n props.dbData.unqClntTrdCht ||\n props.dbData.ordTradeRtoCht)\n ) {\n setUniqueOrdData(sortingMethod(props.dbData.unqClntOrdCht));\n setUniqueTradeData(sortingMethod(props.dbData.unqClntTrdCht));\n setUniqueOrdTrdData(sortingMethod(props.dbData.ordTradeRtoCht));\n } else {\n setUniqueOrdData([]);\n setUniqueTradeData([]);\n setUniqueOrdTrdData([]);\n }\n }, [props.dbData]);\n\n return (\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n );\n};\n\nexport default LTStatistics;\n","export default __webpack_public_path__ + \"static/media/equity_db_icon.f53c0d68.svg\";","export default __webpack_public_path__ + \"static/media/commodity_db_icon.384e90e4.svg\";","export default __webpack_public_path__ + \"static/media/currency_db_icon.7691aa37.svg\";","export default __webpack_public_path__ + \"static/media/derivatives_db_icon.25619c7a.svg\";","import React, { useEffect, useState } from \"react\";\nimport * as Highcharts from \"highcharts/highstock\";\nimport HighchartsReact from \"highcharts-react-official\";\nimport Equity from \"../../../../../assets/images/equity_db_icon.svg\";\nimport Commodity from \"../../../../../assets/images/commodity_db_icon.svg\";\nimport Currency from \"../../../../../assets/images/currency_db_icon.svg\";\nimport Derivatives from \"../../../../../assets/images/derivatives_db_icon.svg\";\nimport ColoumnsHeader from \"../../generic/ColoumnsHeader\";\nimport { convertRS, VolumeStateOptions } from \"../../utlits\";\nimport NoDataFound from \"../../generic/NoDataFound\";\n\nconst borderRadius = require(\"highcharts-border-radius\");\nborderRadius(Highcharts);\n\nexport interface IVSBarChartProps {\n rowStateData: any;\n dropdownValue: string | number;\n setDropdownValue: (value: string | number) => void;\n}\n\nconst VSBarChart: React.FC = (props) => {\n let HandelGraph = (value: any) => {\n return ``;\n };\n\n const [ordVolState, setOrdVolState] = useState([]);\n const [disableMenu, setDisableMenu] = useState(false);\n\n const Icons: any = {\n Cash: Equity,\n Derivatives: Derivatives,\n Currency: Currency,\n Commodity: Commodity,\n };\n\n const handelOrdVolState = (data: any) => {\n let getDataFlow = data.map((ordVol: any) => {\n return {\n heading: ordVol.key === \"Cash\" ? \"Equity\" : ordVol.key,\n name: HandelGraph(Icons[ordVol.key]),\n y: parseInt(ordVol.val),\n };\n });\n setOrdVolState(getDataFlow);\n };\n\n useEffect(() => {\n if (props.rowStateData.length > 0) {\n setDisableMenu(false);\n handelOrdVolState(props.rowStateData);\n } else {\n setDisableMenu(true);\n setOrdVolState([]);\n }\n }, [props.rowStateData]);\n\n let options = {\n chart: {\n type: \"bar\",\n height: \"300px\",\n reversedStacks: false,\n },\n legend: \"\",\n credits: {\n enabled: false,\n },\n title: \"\",\n // exporting: {\n // allowHTML: true,\n // },\n xAxis: {\n type: \"category\",\n labels: {\n useHTML: true,\n },\n title: \"\",\n lineColor: \"transparent\",\n },\n yAxis: {\n startOnTick: true,\n reversedStacks: false,\n title: null,\n left: 52,\n labels: {\n enabled: false,\n },\n\n gridLineColor: \"transparent\",\n },\n tooltip: {\n enabled: false,\n },\n plotOptions: {\n bar: {\n color: \"#1c9ad60d\",\n padding: \"20px\",\n borderRadiusTopLeft: 20,\n borderRadiusTopRight: 20,\n pointWidth: 40,\n dataLabels: {\n useHTML: true,\n align: \"left\",\n color: \"black\",\n width: \"100%\",\n style: {\n fontSize: \"16px\",\n padding: 0,\n },\n verticalAlign: \"middle\",\n enabled: true,\n inside: true,\n formatter: function (this: any): any {\n let result: any = convertRS(this.y, 2);\n return `

${result}

${this.point.heading}

`;\n },\n },\n },\n },\n\n series: [\n {\n data: ordVolState.map((state: any) => {\n return state;\n }),\n },\n ],\n };\n\n return (\n <>\n \n {disableMenu ? (\n \n ) : (\n \n )}\n \n );\n};\n\nexport default VSBarChart;\n","import React, { useState, useEffect } from \"react\";\nimport * as Highcharts from \"highcharts\";\nimport HighchartsReact from \"highcharts-react-official\";\nimport moment from \"moment\";\nimport Treemap from \"highcharts/modules/treemap\";\nimport Heatmap from \"highcharts/modules/heatmap\";\nimport ColoumnsHeader from \"../../generic/ColoumnsHeader\";\nimport { Segments, VolumeSegmentsOptions, weeklyDataValue } from \"../../utlits\";\nimport { sortingMethod } from \"../../../../../Containers/vendor/DashBoard/DBCosntants\";\nimport { addDays, getDiffBtnDates } from \"../../../../utils/dateCalculater\";\nimport NoDataFound from \"../../generic/NoDataFound\";\nTreemap(Highcharts);\nHeatmap(Highcharts);\n\nexport interface IVS_HeatMapChartProps {\n rowHeatmapData: any;\n handleDownloadBtn: () => void;\n}\n\nconst VS_HeatMapChart: React.FC = (props) => {\n const [segmentDropdownValue, setSegmentDropdownValue] =\n React.useState(Segments.Currency);\n\n const [heatmapData, setHeatmapData] = useState([]);\n const [disableMenu, setDisableMenu] = useState(false);\n\n const setUpChart = async (sortedData: any) => {\n if (sortedData.length > weeklyDataValue) {\n let firstDate = sortedData ? sortedData[0].key : \"\";\n let lastDate = sortedData ? sortedData[sortedData.length - 1].key : \"\";\n let totalWeeks = await getDiffBtnDates(firstDate, lastDate);\n if (totalWeeks % 1 !== 0) {\n totalWeeks = Math.floor(totalWeeks) + 1;\n }\n\n let value: Array = [];\n let getNtHitsPrDay = [...sortedData];\n\n let dateOne = firstDate;\n for (let i = 0; i <= totalWeeks; i++) {\n // Get first Date and adding seven days of getNtHitsPrDay array\n let seventhDay = await addDays(dateOne, 6);\n\n // eslint-disable-next-line no-loop-func\n let customData = getNtHitsPrDay.filter((date: any) => {\n return (\n date.key >= moment(dateOne).format(\"YYYY-MM-DD\") &&\n date.key <= moment(seventhDay).format(\"YYYY-MM-DD\")\n );\n });\n\n if (customData.length > 0) {\n let totalVal: any = 0;\n for (let j = 0; j < customData.length; j++) {\n totalVal += parseInt(customData[j].val);\n }\n if (lastDate < moment(seventhDay).format(\"YYYY-MM-DD\")) {\n value.push({\n name: `${moment(dateOne).format(\"DD MMM\")} - ${moment(\n lastDate\n ).format(\"DD MMM\")}`,\n value: parseInt(totalVal),\n colorValue: parseInt(totalVal),\n });\n } else {\n value.push({\n name: `${moment(dateOne).format(\"DD MMM\")} - ${moment(\n seventhDay\n ).format(\"DD MMM\")}`,\n value: parseInt(totalVal),\n colorValue: parseInt(totalVal),\n });\n }\n } else {\n if (lastDate < moment(seventhDay).format(\"YYYY-MM-DD\")) {\n value.push({\n name: `${moment(dateOne).format(\"DD MMM\")} - ${moment(\n lastDate\n ).format(\"DD MMM\")}`,\n value: 0,\n colorValue: 0,\n });\n } else {\n value.push({\n name: `${moment(dateOne).format(\"DD MMM\")} - ${moment(\n seventhDay\n ).format(\"DD MMM\")}`,\n value: 0,\n colorValue: 0,\n });\n }\n }\n\n dateOne = await addDays(seventhDay, 1);\n }\n\n if (value.length > 0) {\n setHeatmapData([...value]);\n }\n } else {\n let value: any = [];\n sortedData.forEach((api: any) => {\n value.push({\n name: moment(api.key).format(\"DD MMM\"),\n value: parseInt(api.val),\n colorValue: parseInt(api.val),\n });\n });\n if (value.length > 0) {\n setHeatmapData([...value]);\n }\n }\n };\n\n useEffect(() => {\n console.log(\"props.rowHeatmapData\", props.rowHeatmapData);\n if (props.rowHeatmapData.length > 0) {\n setDisableMenu(false);\n let segmentwiseData = props.rowHeatmapData.filter((segData: any) => {\n return segData.seg === segmentDropdownValue;\n });\n if (segmentwiseData.length > 0) {\n let sortedData = sortingMethod(segmentwiseData[0]?.vol);\n setUpChart(sortedData);\n }\n } else {\n setDisableMenu(true);\n setHeatmapData([]);\n }\n }, [props.rowHeatmapData, segmentDropdownValue]);\n\n const options = {\n chart: {\n type: \"treemap\",\n height: \"300px\",\n },\n title: \"\",\n credits: {\n enabled: false,\n },\n legend: false,\n colorAxis: {\n minColor: \"#d9e9ff\",\n maxColor: \"#001f4a\",\n startOnTick: false,\n endOnTick: false,\n },\n plotOptions: {\n series: {\n dataLabels: {\n enabled: true,\n type: \"dateTime\",\n format: \"{point.value},{point.name}\",\n // formatter: function (this: any): any {\n // console.log(\"this.point\", this.point);\n // return `
${this.point.value}, ${this.point.name}
`;\n // },\n color: \"white\",\n verticalAlign: \"top\",\n style: {\n textOutline: false,\n },\n },\n },\n },\n\n series: [\n {\n layoutAlgorithm: \"squarified\",\n data: heatmapData ? heatmapData : [],\n reversedStacks: true,\n },\n ],\n };\n return (\n <>\n \n {disableMenu ? (\n \n ) : (\n
\n \n
\n )}\n \n );\n};\n\nexport default VS_HeatMapChart;\n","import React, { useEffect, useState } from \"react\";\nimport { isDacimal } from \"../../../../../Containers/vendor/DashBoard/DBCosntants\";\nimport { IListObj } from \"../../../../types/genericTypes\";\nimport ColoumnsHeader from \"../../generic/ColoumnsHeader\";\nimport NoDataFound from \"../../generic/NoDataFound\";\nimport { VolumeSegmentsOptions, TopLeadersImg } from \"../../utlits\";\nexport interface IVS_TopLeaderProps {\n topLeaders: any;\n leadersdropdownValue: string;\n setLeadersdropdownValue: (val: string) => void;\n}\n\nconst VS_TopLeader: React.FC = (props) => {\n const [topLeaders, setTopLeaders] = useState([]);\n const [ldrsDropdownOptions, setLdrsDropdownOptions] = useState<\n Array\n >([{ display: \"Total\", value: \"Total\" }, ...VolumeSegmentsOptions]);\n\n const [disableMenu, setDisableMenu] = useState(false);\n\n useEffect(() => {\n if (props.topLeaders.length > 0) {\n setDisableMenu(false);\n let arrangLdrsData: any = [];\n props.topLeaders.forEach((value: any, i: number) => {\n let ldrsData: any = {};\n ldrsData.acCd = value.acCd;\n ldrsData.img = TopLeadersImg[i];\n value.vol.forEach((vol: any) => {\n ldrsData[vol.key] = vol.val;\n });\n arrangLdrsData.push(ldrsData);\n });\n if (arrangLdrsData.length > 0) {\n setTopLeaders([...arrangLdrsData]);\n }\n } else {\n setDisableMenu(true);\n setTopLeaders([]);\n }\n }, [props.topLeaders]);\n\n return (\n
\n \n {disableMenu ? (\n \n ) : (\n <>\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n {topLeaders &&\n topLeaders.map((leader: any, i: string) => {\n return (\n \n \n \n \n \n \n {/* */}\n \n );\n })}\n \n
AccountTotalCashDerivativesCurrencyCommodity
\n {leader.img}\n {leader.acCd}\n \n \n {isDacimal(leader.Total)}\n {isDacimal(leader.Cash)}{isDacimal(leader.Derivatives)}{isDacimal(leader.Currency)}{leader.Commodity}
\n \n \n \n \n \n \n \n {/* */}\n {/* \n \n */}\n \n \n \n {topLeaders &&\n topLeaders.map((leader: any, i: number) => {\n return (\n \n \n \n \n \n \n );\n })}\n \n
Account/TotalCashDerivativesCurrencyCommodityDeriva..CurrencyComm.
\n {leader.img}\n \n

{leader.acCd}

\n

\n \n {isDacimal(leader.Total)}\n

\n
\n
{isDacimal(leader.Cash)}{isDacimal(leader.Derivatives)}{isDacimal(leader.Currency)}
\n \n )}\n
\n );\n};\n\nexport default VS_TopLeader;\n","import React, { useEffect, useState } from \"react\";\nimport ChartTocDropdown from \"../../generic/ChartTocDropdown\";\nimport { VolumeSegmentsOptions } from \"../../utlits\";\nimport graphQuery from \"../../../../../assets/images/graphQuery.svg\";\nimport rupee_currency from \"../../../../../assets/images/rupee_currency.svg\";\nimport NoDataFound from \"../../generic/NoDataFound\";\n\nexport interface IVS_TopSalesProps {\n dbData: any;\n}\n\nconst VS_TopSales: React.FC = (props) => {\n const [dropdownValue, setDropdownValue] = React.useState(\n VolumeSegmentsOptions[0].value\n );\n\n const [topSales, setTopSales] = useState([]);\n const [disableMenu, setDisableMenu] = useState(false);\n const [showGraphQuery, setShowGraphQuery] = useState(false);\n const wrapperRef = React.useRef(null);\n\n useEffect(() => {\n if (props.dbData && props.dbData.topSls) {\n let topSalesSegwise = props.dbData.topSls.filter((topSales: any) => {\n return topSales.seg === dropdownValue;\n });\n if (topSalesSegwise.length > 0) {\n setDisableMenu(false);\n setTopSales(topSalesSegwise[0].vol);\n }\n } else {\n setDisableMenu(true);\n setTopSales([]);\n }\n }, [props.dbData, dropdownValue]);\n\n useEffect(() => {\n /**\n *if clicked on outside of element\n */\n function handleClickOutside(event: any) {\n if (wrapperRef.current && !wrapperRef.current?.contains(event.target)) {\n setShowGraphQuery(false);\n }\n }\n // Bind the event listener\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => {\n // Unbind the event listener on clean up\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, []);\n\n return (\n
\n
\n
\n

Top Sales

\n setShowGraphQuery(true)}\n />\n \n
\n \n

Day wise Earning data for the specific time frame.

\n
\n \n setShowGraphQuery(false)}\n >
\n \n
\n
\n
\n {!disableMenu && (\n
\n {\n setDropdownValue(val);\n }}\n isSearchable={false}\n />\n All Values in CR.\n
\n )}\n
\n {disableMenu ? (\n \n ) : (\n \n \n \n \n \n \n \n \n {topSales &&\n topSales.map((leader: any, i: number) => {\n return (\n \n \n \n \n );\n })}\n \n
DateTotal
\n {rupee_currency}\n {leader.key}\n \n \n {leader.val}\n
\n )}\n \n );\n};\n\nexport default VS_TopSales;\n","import React, { useState, useEffect } from \"react\";\nimport VSBarChart from \"../Graphs/V_StatisticsGraph/VS_BarChart\";\nimport VSHeatMapChart from \"../Graphs/V_StatisticsGraph/VS_HeatMapChart\";\nimport VSTopLeader from \"../Graphs/V_StatisticsGraph/VS_TopLeader\";\nimport VSTopSales from \"../Graphs/V_StatisticsGraph/VS_TopSales\";\nimport { OrderTradeStates, VolumeStateOptions } from \"../utlits\";\nimport { DownloadReportsTypes } from \"../../../../Containers/vendor/DashBoard/DBCosntants\";\n\nexport interface IVolStatisticsProps {\n dbData: any;\n downloadDbReports: (rpTyp: string) => void;\n}\n\nconst VolStatistics: React.FC = (props) => {\n const [dropdownValue, setDropdownValue] = useState(\n VolumeStateOptions[0].value\n );\n const [leadersdropdownValue, setLeadersdropdownValue] =\n React.useState(\"Total\");\n\n const [rowHeatmapData, setRowHeatmapData] = useState([]);\n const [rowStateData, setRowStateData] = useState([]);\n const [topLeaders, setTopLeaders] = useState([]);\n\n const handleDownloadBtn = () => {\n let rpTyp =\n dropdownValue === OrderTradeStates.ORDER\n ? DownloadReportsTypes.Order\n : DownloadReportsTypes.Trade;\n props.downloadDbReports(rpTyp);\n };\n\n useEffect(() => {\n if (props.dbData && dropdownValue) {\n if (\n dropdownValue === OrderTradeStates.ORDER &&\n (props.dbData.ordVolHtMap || props.dbData.ordVolStats)\n ) {\n setRowStateData(props.dbData.ordVolStats);\n setRowHeatmapData(props.dbData.ordVolHtMap);\n } else if (\n dropdownValue === OrderTradeStates.TRADE &&\n (props.dbData.trdVolHtMap || props.dbData.trdVolStats)\n ) {\n setRowStateData(props.dbData.trdVolStats);\n setRowHeatmapData(props.dbData.trdVolHtMap);\n }\n } else {\n setRowStateData([]);\n setRowHeatmapData([]);\n }\n }, [props.dbData, dropdownValue]);\n\n useEffect(() => {\n if (props.dbData && leadersdropdownValue) {\n let getTopLdrsSegwise = props.dbData.volumeLdrsSegWise.filter(\n (leader: any) => {\n return leadersdropdownValue === leader.sortBsdOn;\n }\n );\n if (getTopLdrsSegwise.length > 0) {\n setTopLeaders(getTopLdrsSegwise[0].leadrs);\n }\n } else {\n setTopLeaders([]);\n }\n }, [props.dbData, leadersdropdownValue]);\n\n return (\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n );\n};\n\nexport default VolStatistics;\n","import React, { useState, useEffect } from \"react\";\nimport * as Highcharts from \"highcharts\";\nimport HighchartsReact from \"highcharts-react-official\";\nimport moment from \"moment\";\nimport ColoumnsHeader from \"../../generic/ColoumnsHeader\";\nimport { sortingMethod } from \"../../../../../Containers/vendor/DashBoard/DBCosntants\";\nimport { addDays, getDiffBtnDates } from \"../../../../utils/dateCalculater\";\nimport { convertRS, handleTickInterval, weeklyDataValue } from \"../../utlits\";\nimport NoDataFound from \"../../generic/NoDataFound\";\n\nexport interface IOS_LineChartProps {\n dbData: any;\n}\n\nconst OS_LineChart: React.FC = (props) => {\n const [apiHit, setApiHit] = useState({\n category: [],\n data: [],\n tickInterval: 0,\n });\n\n const [disableMenu, setDisableMenu] = useState(false);\n\n const setUpChart = async (sortedApiHit: any) => {\n if (sortedApiHit.length > weeklyDataValue) {\n let firstDate = sortedApiHit ? sortedApiHit[0].key : \"\";\n let lastDate = sortedApiHit\n ? sortedApiHit[sortedApiHit.length - 1].key\n : \"\";\n let totalWeeks = await getDiffBtnDates(firstDate, lastDate);\n if (totalWeeks % 1 !== 0) {\n totalWeeks = Math.floor(totalWeeks) + 1;\n }\n let key: Array = [];\n let value: Array = [];\n let getNtHitsPrDay = [...sortedApiHit];\n\n let dateOne = firstDate;\n for (let i = 0; i <= totalWeeks; i++) {\n // Get first Date and adding seven days of getNtHitsPrDay array\n let seventhDay = await addDays(dateOne, 6);\n\n // eslint-disable-next-line no-loop-func\n let customData = getNtHitsPrDay.filter((date: any) => {\n return (\n date.key >= moment(dateOne).format(\"YYYY-MM-DD\") &&\n date.key <= moment(seventhDay).format(\"YYYY-MM-DD\")\n );\n });\n\n if (customData.length > 0) {\n let totalVal: any = 0;\n for (let j = 0; j < customData.length; j++) {\n totalVal += parseInt(customData[j].val);\n }\n value.push(parseInt(totalVal));\n } else {\n if (moment(dateOne).format(\"YYYY-MM-DD\") <= lastDate) {\n value.push(0);\n }\n }\n if (moment(dateOne).format(\"YYYY-MM-DD\") <= lastDate) {\n if (lastDate < moment(seventhDay).format(\"YYYY-MM-DD\")) {\n key.push(`${moment(dateOne).format(\"YYYY-MM-DD\")} to ${lastDate}`);\n } else {\n key.push(\n `${moment(dateOne).format(\"YYYY-MM-DD\")} to ${moment(\n seventhDay\n ).format(\"YYYY-MM-DD\")}`\n );\n }\n }\n dateOne = await addDays(seventhDay, 1);\n }\n let getTickInterval = await handleTickInterval(key.length);\n\n if (key.length > 0 || value.length > 0) {\n setApiHit({\n category: key,\n data: value,\n tickInterval: getTickInterval,\n });\n }\n } else {\n let key: any = [];\n let value: any = [];\n sortedApiHit.forEach((api: any) => {\n key.push(api.key);\n value.push(parseInt(api.val));\n });\n let getTickInterval = await handleTickInterval(key.length);\n\n if (key.length > 0 || value.length > 0) {\n setApiHit({\n category: key,\n data: value,\n tickInterval: getTickInterval,\n });\n }\n }\n };\n\n useEffect(() => {\n if (props.dbData && props.dbData.ntApiHitCountCht.length > 0) {\n setDisableMenu(false);\n let sortedApiHit = sortingMethod(props.dbData.ntApiHitCountCht);\n setUpChart(sortedApiHit);\n } else {\n setDisableMenu(true);\n setApiHit({ category: [], data: [], tickInterval: 0 });\n }\n }, [props.dbData]);\n\n const options = {\n chart: {\n height: \"250px\",\n type: \"line\",\n },\n title: \"\",\n credits: {\n enabled: false,\n },\n legend: false,\n yAxis: {\n title: \"\",\n margin: \"0\",\n padding: \"0\",\n labels: {\n formatter: function (this: any): any {\n let val = convertRS(this.value, 0);\n return val;\n },\n },\n },\n\n xAxis: {\n categories: apiHit.category,\n crosshair: true,\n tickInterval: apiHit.tickInterval,\n tickPixelInterval: 100,\n labels: {\n formatter: function (this: any): any {\n if (this.value.includes(\"to\")) {\n let splitVal = this.value.split(\"to\");\n return `${moment(splitVal[0]).format(\"DD MMM 'YY\")} - ${moment(\n splitVal[1]\n ).format(\"DD MMM 'YY\")}`;\n } else {\n this.value = moment(this.value).format(\"DD MMM 'YY\");\n return moment(this.value).format(\"DD MMM 'YY\"); // clean, unformatted number for year\n } // clean, unformatted number for year\n },\n },\n },\n\n tooltip: {\n formatter: function (this: any): string {\n let tooltipVal = \"\";\n\n if (this.x.includes(\"to\")) {\n let splitVal = this.x.split(\"to\");\n tooltipVal = `${moment(splitVal[0]).format(\"DD MMM 'YY\")} - ${moment(\n splitVal[1]\n ).format(\"DD MMM 'YY\")}`;\n } else {\n tooltipVal = moment(this.x).format(\"DD MMM 'YY\");\n }\n return `

${tooltipVal}


${this.series.name} : ${this.y}`;\n },\n borderWidth: 0,\n backgroundColor: \"#fff\",\n borderRadius: 4,\n },\n\n plotOptions: {\n series: {\n color: \"#1c9ad6\",\n label: {\n connectorAllowed: false,\n },\n },\n },\n\n series: [\n {\n name: \"API Hits\",\n data: apiHit.data ? apiHit.data : [],\n },\n ],\n };\n return (\n <>\n \n {disableMenu ? (\n \n ) : (\n \n )}\n \n );\n};\n\nexport default OS_LineChart;\n","import React, { useEffect, useState } from \"react\";\nimport { convertRS } from \"../../utlits\";\n\nexport interface IOS_UserDetailsProps {\n dbData: any;\n}\n\nconst OS_UserDetails: React.FC = (props) => {\n const [userDetails, setUserDetails] = useState({\n email: \"\",\n phone: \"\",\n totalAcptConsn: \"\",\n totalDeclineConsn: \"\",\n netApiCount: \"\",\n });\n\n useEffect(() => {\n if (props.dbData && props.dbData.myInfo) {\n setUserDetails({\n ...userDetails,\n email: props.dbData.myInfo.email,\n phone: props.dbData.myInfo.phn,\n totalAcptConsn: props.dbData.clntAcptCnsnt,\n totalDeclineConsn: props.dbData.clntDecCnsnt,\n netApiCount: props.dbData.netApiCount\n ? convertRS(props.dbData.netApiCount, 2)\n : 0,\n });\n } else {\n setUserDetails({\n email: \"\",\n phone: \"\",\n totalAcptConsn: 0,\n totalDeclineConsn: 0,\n netApiCount: 0,\n });\n }\n }, [props.dbData]);\n\n return (\n
\n
\n
\n

Total API Requests

\n
{userDetails.netApiCount}
\n
\n
\n

Users Accepted Consent

\n
{userDetails.totalAcptConsn}
\n
\n
\n

User Denied Consent

\n
{userDetails.totalDeclineConsn}
\n
\n
\n
\n

My Information

\n
\n

{userDetails.email}

\n

{userDetails.phone}

\n
\n
\n
\n );\n};\n\nexport default OS_UserDetails;\n","import React from \"react\";\nimport OSLineChart from \"../Graphs/Other_statistics/OS_LineChart\";\nimport OSUserDetails from \"../Graphs/Other_statistics/OS_UserDetails\";\nexport interface IOth_StatisticsProps {\n dbData: any;\n}\nconst Oth_Statistics: React.FC = (props) => {\n return (\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n );\n};\n\nexport default Oth_Statistics;\n","import React from \"react\";\nimport LTStatistics from \"./DBSections/LT_Statistics\";\nimport VolStatistics from \"./DBSections/Vol_Statistics\";\nimport OthStatistics from \"./DBSections/Oth_Statistics\";\n\nexport interface IDBComponentProps {\n dbData: any;\n downloadDbReports: (rpTyp: string) => void;\n}\n\nconst DBComponent: React.FC = (props) => {\n return (\n
\n {/* Login Vs Trading Statistics */}\n
\n

Login Vs Trading Statistics

\n \n
\n
\n

Volume Statistics

\n \n
\n
\n

Other Statistics

\n \n
\n
\n );\n};\n\nexport default DBComponent;\n","export default __webpack_public_path__ + \"static/media/db_mail_icon.853be7a0.svg\";","export default __webpack_public_path__ + \"static/media/db_phone_icon.1c9f2a72.svg\";","import React from \"react\";\nimport \"../../../assets/scss/vendor_scss/calander.scss\";\nimport Calendar from \"react-calendar\";\nimport \"react-calendar/dist/Calendar.css\";\nimport { calanderDateFormater } from \"../../utils/dateCalculater\";\nimport { DateType, ranges } from \"./utlits\";\n\nexport interface IVendorCalanderProps {\n isCalander: boolean;\n date: DateType;\n setDate: (frmDt: Date, toDt: Date) => void;\n setIsCalander: (value: boolean) => void;\n}\n\nconst VendorCalander: React.FC = (props) => {\n const [showCalander, setShowCalander] = React.useState(false);\n const [dateRange, setdDateRange] = React.useState();\n const [windowWidth, setWindowWidth] = React.useState(window.innerWidth);\n console.log(\"dateRange\", dateRange);\n const heandelApplyBtn = () => {\n if (dateRange) {\n handelCalanderBtn(dateRange);\n setShowCalander(false);\n }\n };\n const handelCalanderBtn = (val: any) => {\n props.setDate(val[0], val[1]);\n };\n\n return (\n
\n {props.isCalander && (\n
\n
    \n {\n const getDate = ranges[\"last_7_days\"];\n handelCalanderBtn(getDate);\n }}\n >\n Last 7 Days\n \n {\n const getDate = ranges[\"last_30_days\"];\n handelCalanderBtn(getDate);\n }}\n >\n Last 30 Days\n \n {\n const getDate = ranges[\"this_month\"];\n handelCalanderBtn(getDate);\n }}\n >\n This Month\n \n {\n const getDate = ranges[\"last_month\"];\n handelCalanderBtn(getDate);\n }}\n >\n Last Month\n \n
  • setShowCalander(true)}>Custom Range
  • \n
\n {showCalander && (\n
\n 700 ? true : false}\n formatMonthYear={(locale, date) =>\n date.toLocaleString(locale, {\n month: \"short\",\n year: \"2-digit\",\n })\n }\n onChange={(value: any, e: any) => setdDateRange(value)}\n selectRange={true}\n showFixedNumberOfWeeks={true}\n // showNeighboringMonth={true}\n formatShortWeekday={(locale, value) =>\n [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"][value.getDay()]\n }\n />\n
\n \n {calanderDateFormater(props.date.frmDt)} -{\" \"}\n {calanderDateFormater(props.date.toDt)}\n \n
\n {\n setShowCalander(!showCalander);\n props.setIsCalander(!props.isCalander);\n }}\n >\n Cancel\n \n heandelApplyBtn()}\n className=\"text_btn pointer\"\n >\n Apply\n \n
\n
\n
\n )}\n
\n )}\n
\n );\n};\n\nexport default VendorCalander;\n","import React from \"react\";\n\nconst ErrorMsg = ({ isServerErr }) => {\n return (\n
\n
\n {isServerErr.failedRes !== \"\" && isServerErr.failedRes !== undefined && (\n
\n

{isServerErr.failedRes}

\n
\n )}\n {isServerErr.limitExceeded !== \"\" &&\n isServerErr.limitExceeded !== undefined && (\n
\n

{isServerErr.limitExceeded}

\n
\n )}\n {isServerErr.successRes !== \"\" && isServerErr.successRes !== undefined && (\n
\n

{isServerErr.successRes}

\n
\n )}\n
\n
\n );\n};\n\nexport default ErrorMsg;\n","const socialLinks = {\n facebook: \"https://www.facebook.com/EWMIsNowNuvamaWealth\",\n linkedin: \"https://www.linkedin.com/company/edelweiss-wealth-management/\",\n instagram: \"https://www.instagram.com/EWMisnownuvamawealth/\",\n twitter: \"https://twitter.com/EWMIsNuvamaWlth\",\n apiConnectMail: \"APIconnect@nuvama.com\",\n supportEmail: \"APIsupport@nuvama.com\",\n complianceOfficer: \"complianceofficer.nwil@nuvama.com\",\n};\n\nexport default socialLinks;\n","import React, { useEffect, useState } from \"react\";\nimport moment from \"moment\";\nimport Scrollspy from \"react-scrollspy\";\nimport DBComponent from \"../../../components/VendorComponents/DashBoard/DBComponent\";\nimport \"../../../assets/scss/vendor_scss/dashboard.scss\";\nimport defaultAppIcon from \"../../../assets/images/defaultAppIcon.svg\";\nimport dbMailIcon from \"../../../assets/images/db_mail_icon.svg\";\nimport dbPhoneIcon from \"../../../assets/images/db_phone_icon.svg\";\nimport { calanderDateFormater } from \"../../../components/utils/dateCalculater\";\nimport VendorCalander from \"../../../components/VendorComponents/DashBoard/VendorCalander\";\nimport { DateType } from \"../../../components/VendorComponents/DashBoard/utlits\";\nimport { DownloadReportsTypes, isDacimal } from \"./DBCosntants\";\nimport {\n downloadReports,\n vendorDashboard,\n} from \"../../../services/MyApps/myAppServise\";\nimport ErrorMsg from \"../../../components/CommonCompnents/ErrorMsg\";\nimport { accRedircet } from \"../../../services/genralServise\";\nimport {\n constants,\n errorsMsg,\n getTolocalStorage,\n removeServerErrors,\n} from \"../../Constants/commenFeatures\";\nimport socialLinks from \"../../../config/socialsLinks\";\n\nexport interface IDeshboardProps {}\n\nconst Dashboard: React.FC = () => {\n const [isCalander, setIsCalander] = useState(false);\n const [dbData, setDBData] = useState();\n const [date, setDate] = useState({\n frmDt: new Date(),\n toDt: new Date(),\n });\n\n const [appName, setAppName] = useState(getTolocalStorage(\"appNm\"));\n\n const [isServerErr, setIsServerErr] = useState({\n successRes: \"\",\n failedRes: \"\",\n limitExceeded: \"\",\n });\n\n const hendelSetDates = (frmDt: Date, toDt: Date) => {\n setDate({\n frmDt: frmDt,\n toDt: toDt,\n });\n setIsCalander(false);\n };\n\n const removeIsServerErrors = () => {\n setIsServerErr({\n successRes: \"\",\n failedRes: \"\",\n limitExceeded: \"\",\n });\n };\n\n const downloadDbReportsRes = (res: any) => {\n if (res && res.data) {\n accRedircet(res.data.url);\n } else if (res && res.error) {\n setIsServerErr({\n successRes: \"\",\n failedRes: res.error.errMsg || errorsMsg.commonError,\n limitExceeded: \"\",\n });\n }\n removeServerErrors(removeIsServerErrors, constants.ErrorTimeout);\n };\n\n const downloadDbReports = async (rpTyp: string) => {\n const url = {\n frmDt: moment(date.frmDt).format(\"yyyy-MM-DD\"),\n toDt: moment(date.toDt).format(\"yyyy-MM-DD\"),\n apiKey: await getTolocalStorage(\"apiKey\"),\n rpTyp,\n };\n downloadReports(downloadDbReportsRes, url);\n };\n\n const getDBDataRes = (res: any) => {\n if (res && res.data) {\n setDBData(res.data);\n if (res.data.ros !== \"\") {\n setIsServerErr({\n successRes: \"\",\n failedRes: res.data.ros || errorsMsg.commonError,\n limitExceeded: \"\",\n });\n }\n } else if (res && res.error) {\n setIsServerErr({\n successRes: \"\",\n failedRes: res.error.errMsg || errorsMsg.commonError,\n limitExceeded: \"\",\n });\n }\n };\n\n const getDBData = async () => {\n setIsServerErr({\n successRes: \"\",\n failedRes: \"\",\n limitExceeded: \"\",\n });\n setDBData(\"\");\n const url = {\n userId: await getTolocalStorage(\"ldID\"),\n frmDt: moment(date.frmDt).format(\"yyyy-MM-DD\"),\n toDt: moment(date.toDt).format(\"yyyy-MM-DD\"),\n };\n vendorDashboard(getDBDataRes, url);\n };\n\n useEffect(() => {\n getDBData();\n }, [date]);\n\n return (\n
\n
\n
\n {/* DashBoard Header Start */}\n
\n
\n \"defaultAppIcon\"\n

{appName}

\n
\n
\n

setIsCalander(!isCalander)}>\n {\" \"}\n {calanderDateFormater(date.frmDt)} -{\" \"}\n {calanderDateFormater(date.toDt)}\n

\n \n\n

\n downloadDbReports(DownloadReportsTypes.All)}\n >\n Download\n \n

\n
\n
\n {/* DashBoard Header End */}\n \n {/* User Activity Data Start */}\n
\n
\n
\n

Total Clients Logins

\n

{dbData ? isDacimal(dbData.ntClntLgn) : 0}

\n

Unique Clients Logins

\n

\n {dbData ? isDacimal(dbData.unqClntLgn) : 0}{\" \"}\n ({dbData ? dbData.unqClntLgnPr : \"0%\"})\n

\n
\n
\n

Accepted Consent

\n

{dbData ? isDacimal(dbData.clntAcptCnsnt) : 0}

\n

Denied Consent

\n

{dbData ? isDacimal(dbData.clntDecCnsnt) : 0}

\n
\n
\n
\n
\n

Unique Client Ordered

\n

{dbData ? isDacimal(dbData.unqClntOrd) : 0}

\n

Unique Clients Traded

\n

\n {dbData ? isDacimal(dbData.unqClntTrd) : 0}{\" \"}\n ({dbData ? dbData.unqClnTrdPr : \"0%\"})\n

\n
\n
\n
\n
\n

Total Orders Placed

\n

{dbData ? isDacimal(dbData.ntOrd) : 0}

\n

Total Orders Executed

\n

\n {dbData ? isDacimal(dbData.ntTrds) : 0}{\" \"}\n ({dbData ? dbData.ordTrdConvPr : \"0%\"})\n

\n
\n
\n

Total Trades

\n

{dbData ? isDacimal(dbData.ntFlTrds) : 0}

\n
\n
\n {/*
\n

My Earnings

\n

\n 1.9 Cr\n

\n
*/}\n
\n\n
\n \n {/*
\n

My Earnings

\n
*/}\n \n \n \n \n
\n
\n
\n
\n \n
\n\n
\n
\n

Get in touch

\n \n
\n {dbPhoneIcon}\n

022 -122345567

\n
\n
\n
\n
\n );\n};\n\nexport default Dashboard;\n","import { IListObj } from \"../../../components/types/genericTypes\";\n\nexport const APITypes: Array = [\n { value: \"AV\", display: \"REST API\" },\n { value: \"V\", display: \"Publisher API\" },\n];\n\nexport interface SubscriptionFrom {\n appNm: string;\n rdUrl: string;\n appIcon?: any;\n iconView?: any;\n type: string | number;\n ip: any;\n}\n\nexport const getAppIcon = (appIcon: any, readerIcon: (val: string) => void) => {\n let reader = new FileReader();\n reader.readAsDataURL(appIcon);\n reader.onload = async (reader: any) => {\n readerIcon(await reader.target.result.split(\",\")[1]);\n };\n};\n\nexport const TITLE = {\n EDIT: \"Edit Subscription\",\n CREATE: \"Create Subscription\",\n};\n\nexport interface SubscriptionFromErr {\n appNm: string | undefined;\n rdUrl: string | undefined;\n ip: any;\n type: string | undefined;\n appIcon?: string | undefined;\n}\n\nexport const SubscriptionFromValue: SubscriptionFrom = {\n appNm: \"\",\n rdUrl: \"https://127.0.0.1/\",\n ip: [\"\"],\n type: APITypes[0].value,\n};\n\nexport const SubscriptionFromError: SubscriptionFromErr = {\n appNm: \"\",\n rdUrl: \"\",\n type: \"\",\n ip: [\"\"],\n appIcon: \"\",\n};\n","import React, { useEffect, useState } from \"react\";\nimport appUrl from \"../../../config/MyApp/myAppsURLConfig\";\nimport DefaultAppIcon from \"../../../assets/images/defaultAppIcon.svg\";\nimport { TITLE } from \"../../../Containers/vendor/MySubscriptions/subscriptionsConstent\";\n\nexport interface ISubscriptionsListProps {\n subscribedApps: any;\n\n handelSubscriptionModal: (\n isoprn: boolean,\n title: string,\n appData: any\n ) => void;\n}\n\nconst SubscriptionsList: React.FC = (props) => {\n const [copyItem, setCopyItem] = useState({\n isCopied: false,\n appNm: \"\",\n copiedItem: \"\",\n });\n const [showApiModal, setApiModal] = useState(\"\");\n\n const showApiBox = (val: any) => {\n if (window.innerWidth <= 760) {\n setApiModal(val);\n console.log(showApiModal);\n } else {\n setApiModal(\"\");\n }\n };\n\n const clickToCopy = (e: any, value: string, item: string, app: string) => {\n e.preventDefault();\n setCopyItem({\n isCopied: true,\n appNm: app,\n copiedItem: item,\n });\n navigator.clipboard.writeText(value);\n };\n\n useEffect(() => {\n if (copyItem.isCopied) {\n setTimeout(() => {\n setCopyItem({\n isCopied: false,\n appNm: \"\",\n copiedItem: \"\",\n });\n }, 1000);\n }\n }, [copyItem]);\n return (\n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n
\n

Name

\n
\n

API Key

\n
\n

API Secret Key

\n
\n

AppID Key

\n
\n showApiBox(props.subscribedApps)}\n >\n \n

{props.subscribedApps.appNm}

\n \n
\n
\n {props.subscribedApps.apiKey}\n {\n clickToCopy(\n e,\n props.subscribedApps.apiKey,\n \"Api Key\",\n props.subscribedApps.appNm\n );\n }}\n >\n
\n
\n \n clickToCopy(\n e,\n props.subscribedApps.secKey,\n \"Secret Key\",\n props.subscribedApps.appNm\n )\n }\n >\n Click here to copy\n \n \n \n clickToCopy(\n e,\n props.subscribedApps.appIdKey,\n \"AppID Key\",\n props.subscribedApps.appNm\n )\n }\n >\n Click here to copy\n \n \n \n props.handelSubscriptionModal(\n true,\n TITLE.EDIT,\n props.subscribedApps\n )\n }\n >\n Edit\n

\n
\n
\n
\n\n
\n {/* */}\n
\n
\n\n {copyItem.isCopied && (\n
\n
\n

{`\"${copyItem.appNm}\" App ${copyItem.copiedItem} Copied`}

\n
\n
\n )}\n\n {showApiModal !== \"\" && (\n
\n
\n
\n {\n showApiBox(\"\");\n }}\n >\n
\n
\n \n \n \n \n \n \n \n
\n
\n \n {showApiModal.appNm}\n
\n
\n \n
\n
\n\n
\n
\n
\n Api Key\n

{showApiModal.apiKey}

\n
\n {\n clickToCopy(\n e,\n showApiModal.apiKey,\n \"Api Key\",\n showApiModal.appNm\n );\n }}\n >\n Copy\n \n
\n
\n
\n App Secret Key\n

\n ● ● ● ● ● ●\n ● ●\n

\n
\n {\n clickToCopy(\n e,\n showApiModal.secKey,\n \"Secret Key\",\n showApiModal.appNm\n );\n }}\n >\n Copy\n \n
\n
\n
\n AppID Key\n

\n ● ● ● ● ● ●\n ● ●\n

\n
\n {\n clickToCopy(\n e,\n showApiModal.appid,\n \"AppID Key\",\n showApiModal.appNm\n );\n }}\n >\n Copy\n \n
\n
\n
\n
\n )}\n
\n );\n};\n\nexport default SubscriptionsList;\n","import React, { useEffect } from \"react\";\nimport { useDropzone } from \"react-dropzone\";\n\nexport interface IDragAndDropProps {\n onChange: (img: any) => void;\n}\n\nconst DragAndDrop: React.FC = (props) => {\n let { acceptedFiles, getRootProps, getInputProps } = useDropzone();\n\n useEffect(() => {\n if (acceptedFiles.length > 0) {\n props.onChange(acceptedFiles);\n }\n }, [acceptedFiles]);\n\n return (\n
\n
\n );\n};\n\nexport default DragAndDrop;\n","export const appNameValidate = (value) => {\n if (value === \"\" || value === undefined || value === null) {\n return \"App name is required.\";\n } else if (value.length > 50) {\n return \"Maximum 50 characters allowed in App name.\";\n } else {\n return true;\n }\n};\n\nexport const redircetUrlValidate = (value) => {\n if (value === \"\" || value === undefined || value === null) {\n return \"Redirect url is required.\";\n } else if (value.indexOf(\"http://\") && value.indexOf(\"https://\")) {\n return \"Please enter a valid Redirect URL.\";\n } else {\n return true;\n }\n};\n\nexport const validateAppIcon = (value) => {\n const fileSize = value.size / 1024 / 1024;\n let allowedExtension = [\"jpeg\", \"jpg\", \"png\", \"svg\", \"svg+xml\"];\n let type = value.type.split(\"/\")[1];\n\n if (allowedExtension.includes(type) === false) {\n return \"Only PNG, JPEG, JPG, SVG image are allowed.\";\n } else if (fileSize > 5) {\n return \"Image size should be less than 5 MB\";\n } else {\n return true;\n }\n};\n","import React, { useState, useEffect } from \"react\";\nimport {\n APITypes,\n SubscriptionFrom,\n SubscriptionFromErr,\n TITLE,\n} from \"../../../Containers/vendor/MySubscriptions/subscriptionsConstent\";\nimport DragAndDrop from \"../../generic/dragAndDrop\";\nimport InputField from \"../../generic/inputField\";\nimport RadioButton from \"../../generic/radioButton\";\nimport { IListObj } from \"../../types/genericTypes\";\nimport { redircetUrlValidate, validateAppIcon } from \"../../utils/formValidate\";\nimport { betweenNChars, ValidateIPaddress } from \"../../utils/regex\";\n\nexport interface ISubscriptionFormProps {\n isSubFrom: any;\n APITypes: Array;\n subscriptionFrom: SubscriptionFrom;\n subscriptionFromErr: SubscriptionFromErr;\n ipCount: number;\n setIpCount: (ipCount: number) => void;\n setSubscriptionFromErr: (value: any) => void;\n onChangeFormVal: (value: any) => void;\n submitFromHandler: () => void;\n handelSubscriptionModal: (\n isOpen: boolean,\n title: string,\n appData: any\n ) => void;\n}\n\nconst SubscriptionForm: React.FC = (props) => {\n const [imgPicker, setImgPicker] = useState(\"\");\n const [enableAssist, setEnableAssist] = useState(false);\n // const [ipCountArray, setIpCount] = useState([]);\n\n const removeImage = () => {\n delete props.subscriptionFrom.appIcon;\n delete props.subscriptionFrom.iconView;\n props.onChangeFormVal({\n ...props.subscriptionFrom,\n });\n };\n\n const ipCountHandler = async (key: number, count: number) => {\n if (count < props.ipCount) {\n props.subscriptionFrom.ip.splice(key, 1);\n props.subscriptionFromErr.ip.splice(key, 1);\n } else if (count > props.ipCount) {\n props.subscriptionFrom.ip.splice(key + 1, 0, \"\");\n props.subscriptionFromErr.ip.splice(key + 1, 0, \"\");\n }\n await props.setIpCount(count);\n IPFieldCreater();\n props.onChangeFormVal(props.subscriptionFrom);\n props.setSubscriptionFromErr(props.subscriptionFromErr);\n };\n\n const IPFieldCreater = () => {\n return props.subscriptionFrom.ip.map((ip: any, i: number) => {\n if (i === 0) {\n return (\n
\n
\n \n
\n
\n {\n props.subscriptionFrom.ip[i] = val;\n props.onChangeFormVal({\n ...props.subscriptionFrom,\n ip: [...props.subscriptionFrom.ip],\n });\n }}\n onBlur={(error) => {\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n ip: [\n error.value\n ? ValidateIPaddress.test(error.value)\n ? (props.subscriptionFromErr.ip[i] = \"\")\n : (props.subscriptionFromErr.ip[i] =\n \"Please enter a valid ip address\")\n : (props.subscriptionFromErr.ip[i] = \"\"),\n ],\n });\n }}\n className=\"subs_input w_60\"\n autoComplete=\"off\"\n errorText={props.subscriptionFromErr.ip[i]}\n />\n\n
\n
\n ipCountHandler(i, props.ipCount + 1)}\n >\n Add\n \n
\n
\n
\n
\n );\n } else {\n return (\n
\n
\n
\n {\n props.subscriptionFrom.ip[i] = val;\n props.onChangeFormVal({\n ...props.subscriptionFrom,\n ip: [...props.subscriptionFrom.ip],\n });\n }}\n onBlur={(error) => {\n let isValid = !ValidateIPaddress.test(error.value)\n ? \"Please enter a valid ip address or you can delete field\"\n : \"\";\n props.subscriptionFromErr.ip[i] = isValid;\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n ip: [...props.subscriptionFromErr.ip],\n });\n }}\n className=\"subs_input w_60\"\n errorText={props.subscriptionFromErr.ip[i]}\n autoComplete=\"off\"\n />\n\n
\n
\n ipCountHandler(i, props.ipCount + 1)}\n >\n Add\n \n
\n {props.ipCount > 1 && (\n
\n ipCountHandler(i, props.ipCount - 1)}\n >\n Delete\n \n
\n )}\n
\n
\n
\n );\n }\n });\n };\n\n const submitForm = () => {\n // props.submitFromHandler\n let rdUrlValidate = redircetUrlValidate(props.subscriptionFrom.rdUrl);\n if (\n props.subscriptionFrom.appNm.length > 50 ||\n props.subscriptionFrom.appNm.length < 4\n ) {\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n appNm: \"App name must have minimum 4 and maximum 50 characters\",\n });\n } else if (\n props.subscriptionFrom.ip.length > 1 &&\n props.subscriptionFrom.ip.includes(\"\")\n ) {\n let ipErr = [];\n for (let i = 0; i < props.subscriptionFrom.ip.length; i++) {\n if (props.subscriptionFrom.ip[i] === \"\") {\n ipErr.push(\"Ip address is required or you can delete\");\n } else {\n ipErr.push(\"\");\n }\n }\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n ip: ipErr,\n });\n } else if (rdUrlValidate !== true) {\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n rdUrl: rdUrlValidate,\n });\n } else if (\n props.subscriptionFrom.type === \"\" ||\n props.subscriptionFrom.type === undefined\n ) {\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n ldId: \"Please select API type\",\n });\n } else {\n console.log(\"else hit\");\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n ip: [],\n });\n props.submitFromHandler();\n }\n };\n\n useEffect(() => {\n if (imgPicker.length > 0) {\n let validateIcon = validateAppIcon(imgPicker[0]);\n if (validateIcon === true) {\n props.onChangeFormVal({\n ...props.subscriptionFrom,\n appIcon: imgPicker[0],\n iconView: URL.createObjectURL(imgPicker[0]),\n });\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n appIcon: \"\",\n });\n } else {\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n appIcon: validateIcon,\n });\n }\n }\n }, [imgPicker]);\n\n return (\n
\n
\n
\n
\n
\n

{props.isSubFrom.title}

\n
\n
\n
\n
\n \n
\n
\n {\n props.onChangeFormVal({\n ...props.subscriptionFrom,\n appNm: val,\n });\n }}\n onBlur={(error) => {\n let appNm = \"\";\n if (error.required) appNm = \"App name is required\";\n if (!error.pattern) {\n appNm =\n \"App name must have minimum 4 and maximum 50 characters\";\n }\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n appNm: appNm,\n });\n }}\n className=\"subs_input \"\n errorText={props.subscriptionFromErr.appNm}\n autoComplete=\"off\"\n suffix={`${props.subscriptionFrom.appNm.length} / 50`}\n />\n
\n
\n
\n
\n {/* */}\n
\n
\n

\n Please select a name which represents your company, as this\n name will be used for all future communications and to will\n be visible to the clients\n

\n
\n
\n {IPFieldCreater()}\n
\n
\n
\n \n setEnableAssist(true)}\n >\n Enable Assist\n \n
\n
\n
\n {\n props.onChangeFormVal({\n ...props.subscriptionFrom,\n rdUrl,\n });\n }}\n onBlur={(error) => {\n let rdUrl = \"\";\n if (error.required) rdUrl = \"Redirect url is required\";\n if (error.value.length > 0) {\n let checkUrl = redircetUrlValidate(error.value);\n if (checkUrl !== true) {\n rdUrl = checkUrl;\n }\n }\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n rdUrl: rdUrl,\n });\n }}\n className=\"subs_input \"\n placeholder=\"Eg:5678987\"\n errorText={props.subscriptionFromErr.rdUrl}\n autoComplete=\"off\"\n />\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n {props.APITypes.map((type, i) => {\n return (\n {\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n type: \"\",\n });\n if (e.target.value !== APITypes[0].value) {\n props.setSubscriptionFromErr({\n ...props.subscriptionFromErr,\n rdUrl: \"\",\n });\n }\n props.onChangeFormVal({\n ...props.subscriptionFrom,\n [e.target.name]: e.target.value,\n });\n }}\n moduleName={\"subscriptionFrom_radio\"}\n />\n );\n })}\n
\n\n
\n {props.subscriptionFromErr.type !== \"\" && (\n \n {props.subscriptionFromErr.type}\n \n )}\n
\n
\n
\n\n
\n
\n \n (Optional)\n
\n
\n {props.subscriptionFrom && props.subscriptionFrom.iconView ? (\n
\n
\n \n \n {props.subscriptionFrom.appIcon.name}\n \n
\n
\n \n Remove\n \n \n
\n
\n ) : (\n \n )}\n {props.subscriptionFromErr.appIcon !== \"\" && (\n \n {props.subscriptionFromErr.appIcon}\n \n )}\n
\n {/*
*/}\n {/*
\n

An amount of ₹2,000 will be charged to activate this app

\n
*/}\n
\n
\n props.handelSubscriptionModal(false, \"\", \"\")}\n className=\"custom-btn border-btn w-30\"\n >\n Cancel\n \n \n {props.isSubFrom.title === TITLE.CREATE ? \"Create\" : \"Save\"}\n \n
\n
\n
\n props.handelSubscriptionModal(false, \"\", \"\")}\n className=\"custom-btn border-btn \"\n >\n Cancel\n \n \n {props.isSubFrom.title === TITLE.CREATE ? \"Create\" : \"Save\"}\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n

Redirect URL

\n setEnableAssist(false)}>\n {\" \"}\n \n \n
\n
\n

\n Register a redirect_url with us when you create an App for\n redirection after client login. e.g.{\" \"}\n \n {\" \"}\n https://yoursite.com/edel-redirect.\n {\" \"}\n

\n
\n
\n
\n
\n
\n \n );\n};\n\nexport default SubscriptionForm;\n","export default __webpack_public_path__ + \"static/media/create.b152e598.svg\";","import React from \"react\";\nimport createApp from \"../../assets/images/create.svg\";\nexport interface ICreateAppBtnProps {\n appFormHandler: (isOpen: boolean, title: string, appData: any) => void;\n title: string;\n}\nconst CreateAppBtn: React.FC = (props) => {\n const hitCreateBtn = () => {\n let isOpen = true;\n let titlel = props.title;\n let appData = \"\";\n props.appFormHandler(isOpen, titlel, appData);\n };\n\n return (\n
\n \n
\n );\n};\n\nexport default CreateAppBtn;\n","export default __webpack_public_path__ + \"static/media/welcome-api-connect.436de28d.png\";","import React from \"react\";\nimport CreateAppBtn, { ICreateAppBtnProps } from \"./CreateAppBtn\";\nimport apiConnect from \"../../assets/images/welcome-api-connect.png\";\nexport interface INoAppComponentProps extends ICreateAppBtnProps {}\n\nconst NoAppComponent: React.FC = (props) => {\n return (\n
\n
\n \n

Welcome to Nuvama Api Connect

\n

Your Free subscription for Nuvama Api Connect is

\n

started. Start your journey by creating your first App

\n
\n \n
\n
\n
\n );\n};\n\nexport default NoAppComponent;\n","import React, { useEffect, useState } from \"react\";\nimport \"../../../assets/scss/components/myApp.scss\";\nimport \"../../../assets/scss/vendor_scss/MySubscriptions.scss\";\nimport appUrl from \"../../../config/MyApp/myAppsURLConfig\";\n\nimport SubscriptionsList from \"../../../components/VendorComponents/MySubscriptions/SubscriptionsList\";\nimport SubscriptionForm from \"../../../components/VendorComponents/MySubscriptions/SubscriptionForm\";\nimport Loader from \"../../../components/generic/loader\";\nimport NoAppComponent from \"../../../components/CommonCompnents/NoAppComponent\";\nimport ErrorMsg from \"../../../components/CommonCompnents/ErrorMsg\";\nimport {\n addTolocalStorage,\n constants,\n errorsMsg,\n getTolocalStorage,\n removeServerErrors,\n} from \"../../Constants/commenFeatures\";\nimport {\n APITypes,\n SubscriptionFrom,\n SubscriptionFromError,\n SubscriptionFromValue,\n TITLE,\n getAppIcon,\n} from \"./subscriptionsConstent\";\nimport {\n vendorCreateApp,\n vendorGetAllApps,\n vendorModifyApp,\n} from \"../../../services/MyApps/myAppServise\";\n\nexport interface IMySubscriptionsProps {}\n\nconst MySubscriptions: React.FC = () => {\n const [userId, setUserId] = useState();\n const [mySubApps, setMySubApps] = useState(null);\n const [isLoader, setIsLoader] = useState(true);\n const [isServerErr, setIsServerErr] = useState({\n successRes: \"\",\n failedRes: \"\",\n limitExceeded: \"\",\n });\n const [isSubFrom, setIsSubForm] = useState({\n isOpen: false,\n title: \"\",\n appData: \"\",\n });\n const [subscriptionFrom, setSubscriptionFrom] = useState(\n JSON.parse(JSON.stringify(SubscriptionFromValue))\n );\n\n const [subscriptionFromErr, setSubscriptionFromErr] = useState(\n JSON.parse(JSON.stringify(SubscriptionFromError))\n );\n\n const [ipCount, setIpCount] = useState(1);\n\n const handelSubscriptionModal = (\n isOpen: boolean,\n title: string,\n appData: any\n ) => {\n setIsSubForm({\n isOpen: isOpen,\n title: title,\n appData: appData,\n });\n setSubscriptionFrom(JSON.parse(JSON.stringify(SubscriptionFromValue)));\n setSubscriptionFromErr(JSON.parse(JSON.stringify(SubscriptionFromError)));\n };\n\n const mySubAppsRes = (res: any) => {\n if (res && res.data) {\n setMySubApps(res.data);\n addTolocalStorage(\"apiKey\", res.data.apiKey);\n addTolocalStorage(\"appNm\", res.data.appNm);\n } else if (res && res.error) {\n setMySubApps(\"\");\n setIsServerErr({\n successRes: \"\",\n failedRes: res.error.errMsg || errorsMsg.commonError,\n limitExceeded: \"\",\n });\n } else {\n setIsServerErr({\n successRes: \"\",\n failedRes: errorsMsg.commonError,\n limitExceeded: \"\",\n });\n }\n setIsLoader(false);\n };\n\n const submitCreateAppRes = (res: any) => {\n setSubscriptionFrom(SubscriptionFromValue);\n if (res && res.error) {\n setIsLoader(false);\n setIsServerErr({\n ...isServerErr,\n failedRes: res.error.errMsg || errorsMsg.commonError,\n });\n } else if (res && res.data) {\n vendorGetAllApps(mySubAppsRes, userId);\n setIsServerErr({\n ...isServerErr,\n successRes: res.data.msg,\n });\n } else {\n setIsServerErr({\n ...isServerErr,\n failedRes: errorsMsg.commonError,\n });\n }\n };\n\n const submitFromHandler = async () => {\n handelSubscriptionModal(false, \"\", \"\");\n if (isSubFrom.title === TITLE.CREATE) {\n const body: any = {\n appNm: subscriptionFrom.appNm,\n rdUrl: window.btoa(subscriptionFrom.rdUrl),\n type: subscriptionFrom.type,\n ldId: userId,\n };\n if (!subscriptionFrom.ip.includes(\"\")) {\n body.ip = subscriptionFrom.ip.map((ip: any) => {\n return window.btoa(ip);\n });\n }\n if (subscriptionFrom.appIcon && subscriptionFrom.appIcon !== \"\") {\n let getBaseIcon = (value: string) => {\n body.flCntnt = value;\n body.flNm = subscriptionFrom.appIcon.name;\n vendorCreateApp(submitCreateAppRes, userId, body);\n };\n await getAppIcon(subscriptionFrom.appIcon, getBaseIcon);\n } else {\n vendorCreateApp(submitCreateAppRes, userId, body);\n }\n } else {\n const body: any = {\n apiKey: isSubFrom.appData.apiKey,\n vendNm: subscriptionFrom.appNm,\n rdUrl: window.btoa(subscriptionFrom.rdUrl),\n type: subscriptionFrom.type,\n };\n if (!subscriptionFrom.ip.includes(\"\")) {\n body.ip = subscriptionFrom.ip.map((ip: any) => {\n return window.btoa(ip);\n });\n }\n if (subscriptionFrom.appIcon && subscriptionFrom.appIcon !== \"\") {\n let getBaseIcon = (value: string) => {\n body.flCntnt = value;\n body.flNm = subscriptionFrom.appIcon.name;\n vendorModifyApp(submitCreateAppRes, userId, body);\n };\n await getAppIcon(subscriptionFrom.appIcon, getBaseIcon);\n } else {\n vendorModifyApp(submitCreateAppRes, userId, body);\n }\n }\n };\n\n const removeIsServerErrors = () => {\n setIsServerErr({\n successRes: \"\",\n failedRes: \"\",\n limitExceeded: \"\",\n });\n };\n\n useEffect(() => {\n async function callOnLoad() {\n let getldId = await getTolocalStorage(\"ldID\");\n if (getldId !== undefined && getldId) {\n await setUserId(getldId);\n vendorGetAllApps(mySubAppsRes, getldId);\n }\n }\n callOnLoad();\n }, []);\n\n useEffect(() => {\n if (\n isServerErr.successRes !== \"\" ||\n isServerErr.failedRes !== \"\" ||\n isServerErr.limitExceeded !== \"\"\n ) {\n removeServerErrors(removeIsServerErrors, constants.ErrorTimeout);\n }\n }, [isServerErr]);\n\n useEffect(() => {\n async function getEditableData() {\n if (isSubFrom.title === TITLE.EDIT) {\n let getIPs = [];\n if (isSubFrom.appData.ip && isSubFrom.appData.ip.length > 0) {\n let ipData = isSubFrom.appData.ip.split(\",\");\n await setIpCount(ipData.length);\n for (let i = 1; i <= ipData.length; i++) {\n getIPs.push(ipData[i - 1]);\n }\n }\n\n setSubscriptionFrom({\n ip: getIPs,\n appNm: isSubFrom.appData.appNm ? isSubFrom.appData.appNm : \"\",\n rdUrl: isSubFrom.appData.rdUrl ? isSubFrom.appData.rdUrl : \"\",\n appIcon: \"\",\n iconView: isSubFrom.appData.flLnk\n ? appUrl.appIcon + isSubFrom.appData.flLnk\n : \"\",\n type: isSubFrom.appData.type ? isSubFrom.appData.type : \"\",\n });\n } else {\n setSubscriptionFrom(JSON.parse(JSON.stringify(SubscriptionFromValue)));\n }\n }\n getEditableData();\n }, [isSubFrom.appData]);\n\n return (\n
\n {isLoader ? (\n
\n \n
\n ) : (\n
\n \n
\n
\n {mySubApps ? (\n \n ) : (\n \n )}\n
\n
\n
\n )}\n\n {/* Create App Modal */}\n \n
\n );\n};\n\nexport default MySubscriptions;\n","import React from \"react\";\nexport interface IOfferSectionProps {\n title: string;\n Offers: any;\n}\n\nconst OfferSection: React.FC = (props) => {\n return (\n
\n
\n

{props.title}

\n
\n
\n
    \n {props.Offers.map((offer: any, i: number) => {\n return (\n
  • \n
    \n
    \n \"White\n
    \n
    \n
    {offer.title}
    \n

    {offer.description}

    \n
    \n
    \n
  • \n );\n })}\n
\n
\n
\n );\n};\n\nexport default OfferSection;\n","import React from \"react\";\n\nexport interface VGetAccessProps {\n title: string;\n GetAccessData: any;\n}\n\nconst GetAccess: React.FC = (props) => {\n return (\n
\n
\n
\n

{props.title}

\n
\n {props.GetAccessData.map((getAcc: any, i: number) => {\n return (\n
\n
\n
\n \n
\n
\n

{getAcc.heading}

\n {getAcc.sub_heading ?

{getAcc.sub_heading}

: null}\n
\n
\n
\n );\n })}\n
\n\n
\n

*Offer valid for limited time

\n
\n
\n
\n
\n );\n};\n\nexport default GetAccess;\n","export default __webpack_public_path__ + \"static/media/facebook.8b3fa46f.svg\";","export default __webpack_public_path__ + \"static/media/linkedin.ba456a06.svg\";","export default __webpack_public_path__ + \"static/media/instagram.724e53a9.svg\";","export default __webpack_public_path__ + \"static/media/twitter.9d3398fe.svg\";","import React from \"react\";\nimport { Link } from \"react-router-dom\";\nimport facebookImg from \"../../../assets/images/facebook.svg\";\nimport linkedInImg from \"../../../assets/images/linkedin.svg\";\nimport instagramImg from \"../../../assets/images/instagram.svg\";\nimport twitterImg from \"../../../assets/images/twitter.svg\";\nimport urlConfig, { config } from \"../../../config/domain\";\nimport socialLinks from \"../../../config/socialsLinks\";\n\nconst Footer = () => {\n return (\n
\n
\n
\n
\n
    \n
  • \n \n Documentation\n \n
  • \n
  • \n Support\n
  • \n
\n
\n
\n \n
\n
\n
\n

Nuvama Wealth and Investment Limited (NWIL)

\n
\n

\n Broking services offered by Nuvama Wealth and Investment Limited\n (NWIL), formerly known as Edelweiss Broking Limited, is a 100%\n subsidiary of Nuvama Wealth Management Limited (formerly known as\n Edelweiss Securities Limited). Registered office of NWIL is at 201\n to 203, Zodiac Plaza, Xavier College Road, Off C G Road,\n Ahmedabad, Gujarat - 380009. Contact: (079) 40019900. Corporate\n Office address is Eight Floor 801 to 804, Inspire BKC G Block, \n BKC Main Road, Bandra Kurla Complex, Bandra East, Mumbai -\n 400051. It is a Member of National Stock Exchange of India Ltd\n (Member Code: 13116), BSE Ltd (Member Code :3261), Multi Commodity\n Exchange of India Limited (Member Code :56520), Metropolitan Stock\n Exchange (Member Code :86100) and National Commodity and\n Derivatives Exchange Limited (Member Code :01279) and having SEBI\n registration no. INZ000005231. Depository Participant SEBI\n Registration No.: IN-DP-656-2021 with NSDL having DP ID: IN302201\n & IN303719 and with CDSL having DP ID: 12032300. Research services\n are offered by NWIL under SEBI Registration No. INH000011103. Name\n of the Compliance officer: Mr. Srijith Menon, E-mail address:{\" \"}\n \n {socialLinks.complianceOfficer}.\n {\" \"}\n Investments in securities market are subject to market risks, read\n all the related documents carefully before investing.\n \n Terms and Conditions for API\n \n

\n

\n Nuvamawealth.com (TOC) Ver. 2.0.2\n

\n
\n
\n
\n
\n );\n};\n\nexport default Footer;\n","interface REQ_A_CALL_ERR {\n name: string | undefined;\n email: string | undefined;\n phn: string | undefined;\n city: string | undefined;\n cpNm: string | undefined;\n}\n\ninterface REQ_A_CALL {\n name: string;\n email: string;\n phn: string;\n city: any;\n state: string;\n cpNm: string;\n}\n\nexport const ReqACallForm: REQ_A_CALL = {\n name: \"\",\n email: \"\",\n phn: \"\",\n city: \"\",\n state: \"\",\n cpNm: \"\",\n};\nexport const ReqACallFormErr: REQ_A_CALL_ERR = {\n name: undefined,\n email: undefined,\n phn: undefined,\n city: undefined,\n cpNm: undefined,\n};\n\nexport interface SIGNUP_FORM {\n email: string;\n password: string;\n confirmPassword: string;\n}\n","import * as URLConfig from \"../domain\";\n\nconst config = URLConfig.config;\n\nconst signupConfig = {\n taskLead: config.taskLead + config.jmw_content + \"feedback/submit\",\n vendor_req_a_call:\n config.jmw + config.jmw_content + \"mysubscription/register\",\n vendor_signup: config.key_clock_vendor + \"vendor/users\",\n openAccount: config.openNewAcc,\n};\n\nexport default signupConfig;\n","import signupConfig from \"../../config/signup/signupConfig\";\nimport { apiService } from \"../apiService\";\nimport urlConfig from \"../../config/domain\";\n\nexport const signFormSubmit = (callback, body) => {\n apiService(\n {\n url: signupConfig.taskLead,\n method: \"POST\",\n appidkey: urlConfig.appidkey,\n body,\n },\n callback\n );\n};\n\nexport const vendorSignFormSubmit = (callback, body, headers) => {\n apiService(\n {\n url: signupConfig.vendor_signup,\n method: \"POST\",\n authType: \"encryption\",\n headers: headers,\n appidkey: urlConfig.appidkey,\n appid: urlConfig.appId,\n body,\n },\n callback\n );\n};\n\nexport const vendorReqACall = (callback, body) => {\n apiService(\n {\n url: signupConfig.vendor_req_a_call,\n method: \"POST\",\n authType: \"authtoken\",\n appidkey: urlConfig.appidkey,\n appid: urlConfig.appId,\n body,\n },\n callback\n );\n};\n","import React, { useEffect, useState } from \"react\";\nimport OfferSection from \"../../../components/CommonCompnents/Home/OfferSection\";\nimport {\n constants,\n errorsMsg,\n GetAccecssTitle,\n GetAccessSignup,\n Offers,\n OfferTitle,\n PartnersDetails,\n removeServerErrors,\n} from \"../../Constants/commenFeatures\";\nimport \"../../../assets/scss/components/home.scss\";\nimport \"../../../assets/scss/vendor_scss/signup.scss\";\nimport GetAccess from \"../../../components/CommonCompnents/Home/GetAccess\";\nimport Footer from \"../../Common/Footer\";\nimport EdButton from \"../../../components/generic/edButton\";\nimport InputField from \"../../../components/generic/inputField\";\nimport { ReqACallForm, ReqACallFormErr } from \"./signupConstensts\";\nimport Autocomplete from \"../../../components/generic/autocomplete\";\nimport debounce from \"../../../components/utils/debounce\";\nimport {\n alphabetExp,\n betweenNChars,\n emailRegex,\n integerExp,\n phoneNo,\n} from \"../../../components/utils/regex\";\nimport { AGetCities } from \"../../../services/login/loginApiService\";\nimport { vendorReqACall } from \"../../../services/Signup/SignupApiServices\";\nimport ErrorMsg from \"../../../components/CommonCompnents/ErrorMsg\";\nimport NuvamaLogo from \"../../../assets/new_images/nuvama-logo.svg\";\n\nconst ReqACall: React.FC = () => {\n const [signupFormVal, setSignupFormVal] = useState(ReqACallForm);\n const [signupErr, setSignupErr] = useState(ReqACallFormErr);\n const [cities, setCities] = useState(null);\n const [signupModal, setSignupModal] = useState(false);\n\n const [isServerErr, setIsServerErr] = useState({\n successRes: \"\",\n failedRes: \"\",\n limitExceeded: \"\",\n });\n\n const showSignUpModal = (val: boolean) => {\n setSignupModal(val);\n };\n\n const submitSignupFormRes = (res: any) => {\n showSignUpModal(false);\n window.scrollTo(0, 0);\n if (res && res.data) {\n setSignupFormVal(ReqACallForm);\n setIsServerErr({\n successRes: res.data.msg,\n failedRes: \"\",\n limitExceeded: \"\",\n });\n } else if (res && res.error) {\n setIsServerErr({\n successRes: \"\",\n failedRes: res.error.errMsg || errorsMsg.commonError,\n limitExceeded: \"\",\n });\n }\n };\n\n const submitSignupForm = (e: any) => {\n e.preventDefault();\n vendorReqACall(submitSignupFormRes, signupFormVal);\n };\n\n function onChangeSignupForm(key: string, value: string) {\n // onchange of any field remove both type of errors\n if (key === \"city\") {\n // separate city and state (state is blank string if not present in the value)\n const [city, state = \"\"] = value.split(\";\");\n setSignupFormVal({\n ...signupFormVal,\n city: city.replace(/\\w\\S*/g, (w) =>\n w.replace(/^\\w/, (c) => c.toUpperCase())\n ),\n state: state.replace(/\\w\\S*/g, (w) =>\n w.replace(/^\\w/, (c) => c.toUpperCase())\n ),\n });\n\n // if city length is greater than 2, then call the api with debounce of 300ms\n if (city.length > 2) {\n debounce(() => getCities(value), 300)();\n }\n } else {\n if (\n (key === \"name\" && !alphabetExp.test(value)) ||\n (key === \"phn\" && !integerExp.test(value))\n ) {\n value = signupFormVal[key];\n }\n setSignupFormVal({ ...signupFormVal, [key]: value });\n }\n setSignupErr({ ...signupErr, [key]: \"\" });\n return value;\n }\n\n function getCities(srchStr: string) {\n AGetCities(getCitiesRes, srchStr);\n }\n\n function getCitiesRes(res: any) {\n if (res.data && res.data.ctyLst) {\n setCities(res.data.ctyLst);\n }\n }\n\n function handleACBlur(value: any) {\n if (!value) {\n setSignupErr({\n ...signupErr,\n city: \"Please enter atleast 3 characters of city name\",\n });\n } else if (value.split(\";\").length !== 2) {\n setSignupErr({\n ...signupErr,\n city: \"Please enter a valid city name\",\n });\n }\n }\n\n const removeIsServerErrors = () => {\n setIsServerErr({\n successRes: \"\",\n failedRes: \"\",\n limitExceeded: \"\",\n });\n };\n useEffect(() => {\n if (\n isServerErr.successRes !== \"\" ||\n isServerErr.failedRes !== \"\" ||\n isServerErr.limitExceeded !== \"\"\n ) {\n removeServerErrors(removeIsServerErrors, constants.ErrorTimeout);\n }\n }, [isServerErr]);\n return (\n
\n \n
\n
\n
\n
\n
\n

Build, Integrate & Trade with our restful APIs

\n

\n For Start-up | Fintect | Market Analyst | Algo\n Platform providers | Tech Giants\n

\n showSignUpModal(true)}\n >\n Request a Call\n \n
\n
\n
\n
\n

Get customised high revenue

\n
submitSignupForm(e)}>\n \n onChangeSignupForm(\"name\", value)}\n onBlur={(error: any) =>\n setSignupErr({\n ...signupErr,\n name: error.pattern\n ? \"\"\n : \"Please enter at least 3 character\",\n })\n }\n defaultValue={signupFormVal.name}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: Name Surname\"\n errorText={signupErr.name}\n />\n\n \n onChangeSignupForm(\"email\", value)}\n onBlur={(error) =>\n setSignupErr({\n ...signupErr,\n email: error.pattern ? \"\" : \"Please enter a valid email id\",\n })\n }\n defaultValue={signupFormVal.email}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: example@email.com\"\n errorText={signupErr.email}\n />\n\n \n
\n +91\n onChangeSignupForm(\"phn\", value)}\n onBlur={(error) =>\n setSignupErr({\n ...signupErr,\n phn: error.pattern\n ? \"\"\n : \"Please enter a valid phone number\",\n })\n }\n defaultValue={signupFormVal.phn}\n className=\"login_inp mg-b30\"\n placeholder=\"Eg: 980908XXXX\"\n errorText={signupErr.phn}\n />\n
\n\n \n {/* We have to store state also along with city because state is required in api request.\n\t\t\t\t\tIndex of cities is not stored in value because it may change when user clicks on a city (api is called again)\n\t\t\t\t\tThat is why both city and state are stored in value\n\t\t\t\t\tThis also helps to check if the value in input is typed by the user or selected from the dropdown */}\n ({\n value: city.city + \";\" + city.state,\n display: city.city,\n }))\n : null\n }\n onOptionSelect={(value: any) =>\n onChangeSignupForm(\"city\", value.value)\n }\n noDataMsg=\"City with similar name not found\"\n onChange={(value: any) => onChangeSignupForm(\"city\", value)}\n inputClassName=\"login_inp mg-b40\"\n placeholder=\"Eg: Mumbai\"\n onBlur={handleACBlur}\n name=\"city\"\n defaultValue={signupFormVal.city}\n className=\"city\"\n errorText={signupErr.city}\n />\n \n onChangeSignupForm(\"cpNm\", value)}\n onBlur={(error) =>\n setSignupErr({\n ...signupErr,\n cpNm: error.pattern\n ? \"\"\n : \"Please enter at least 3 character\",\n })\n }\n defaultValue={signupFormVal.cpNm}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: Example Pvt. Ltd.\"\n errorText={signupErr.cpNm}\n />\n\n error) ||\n Object.values(signupFormVal).some((value) => !value)\n }\n />\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

Our Partners

\n
\n {PartnersDetails.map((partner: any, i: number) => {\n return (\n
\n {partner.icon ? (\n \n ) : null}\n
\n );\n })}\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n showSignUpModal(false)}>\n \n \n
\n
\n \n \"nuvama-logo\"\n \n showSignUpModal(false)}>\n \n \n
\n

Get customised high revenue sharing plan with our APIs

\n
\n
submitSignupForm(e)}>\n \n onChangeSignupForm(\"name\", value)}\n onBlur={(error: any) =>\n setSignupErr({\n ...signupErr,\n name: error.pattern\n ? \"\"\n : \"Please enter at least 3 character\",\n })\n }\n defaultValue={signupFormVal.name}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: Name Surname\"\n errorText={signupErr.name}\n />\n\n \n onChangeSignupForm(\"email\", value)}\n onBlur={(error: any) =>\n setSignupErr({\n ...signupErr,\n email: error.pattern ? \"\" : \"Please enter a valid email id\",\n })\n }\n defaultValue={signupFormVal.email}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: example@email.com\"\n errorText={signupErr.email}\n />\n\n \n
\n +91\n onChangeSignupForm(\"phn\", value)}\n onBlur={(error: any) =>\n setSignupErr({\n ...signupErr,\n phn: error.pattern\n ? \"\"\n : \"Please enter a valid phone number\",\n })\n }\n defaultValue={signupFormVal.phn}\n className=\"login_inp mg-b30\"\n placeholder=\"Eg: 980908XXXX\"\n errorText={signupErr.phn}\n />\n
\n\n \n {/* We have to store state also along with city because state is required in api request.\n\t\t\t\t\tIndex of cities is not stored in value because it may change when user clicks on a city (api is called again)\n\t\t\t\t\tThat is why both city and state are stored in value\n\t\t\t\t\tThis also helps to check if the value in input is typed by the user or selected from the dropdown */}\n ({\n value: city.city + \";\" + city.state,\n display: city.city,\n }))\n : null\n }\n onOptionSelect={(value: any) =>\n onChangeSignupForm(\"city\", value.value)\n }\n noDataMsg=\"City with similar name not found\"\n onChange={(value) => onChangeSignupForm(\"city\", value)}\n inputClassName=\"login_inp mg-b40\"\n placeholder=\"Eg: Mumbai\"\n onBlur={handleACBlur}\n name=\"city\"\n defaultValue={signupFormVal.city}\n className=\"city\"\n errorText={signupErr.city}\n />\n \n onChangeSignupForm(\"cpNm\", value)}\n onBlur={(error) =>\n setSignupErr({\n ...signupErr,\n cpNm: error.pattern\n ? \"\"\n : \"Please enter at least 3 character\",\n })\n }\n defaultValue={signupFormVal.cpNm}\n className=\"login_inp mg-b40\"\n placeholder=\"Eg: Example Pvt. Ltd.\"\n errorText={signupErr.cpNm}\n />\n\n error) ||\n Object.values(signupFormVal).some((value) => !value)\n }\n />\n \n\n
\n submitSignupForm(e)}\n disabled={\n Object.values(signupErr).some((error) => error) ||\n Object.values(signupFormVal).some((value) => !value)\n }\n />\n
\n
\n
\n
\n